Archive for February, 2014

Belief Desire Intention

Posted in Agent, Python RULES! on February 18, 2014 by asteriondaedalus

Now I did promise to focus on my Master’s work – my last subject in fact before the Dissertation – but doodling helps clear the head.

I have mused a bit about Jason the Agent Speak language and dabble in that to master the BDI concept.

Now the porting of Spade2 to my Android devices stalled a bit because my tablet got flogged at work.  However, the basic examples were running so I was more or less to move onto the BDI agents in Spade2.  Quite apart from the manual site going down (grrrrr), the BDI approach left me a little cold.

The reason I like Jason is because of Orientedness.  A term I invented (I know because the spell checker is set to American and they make up new words whimsically it would seem and the spell checker balked so I first … so there).

In any event, Orientedness.  Consider, UML.  First reaction is that it is Object Oriented. But that is misleading.  

Class diagrams are an expression of OO but are activity diagrams?  Are sequence diagrams?  Many of the diagrammatic styles actually are trying to express the things OO cannot (though some of the lexicon of OO infects them).

Consider event driven programming.  Is it OO?  No, Event driven paradigm certainly can be facilitated in OO languages but its Orientedness is something different to classes, methods, etc.  It is events (yes insert inversion of control and/or dependency injection if you must), and probably some temporal or state (or stateless) aspects.

Jason presents an Agent Oriented programming language where the Agent Orientedness is expressed in the syntax of the language.  Not to say you can’t do agent “stuff” in Java (JADE, JACK, Cougar, etc.) but, I guess the way to explain it, is that the Agent Orientedness expressed in Java based technologies is obfuscated.  Much the same way OO obfuscates the functional design/model (yes we want to argue for UML again but case tools don’t sit on that many desks, I mean how many of the trillion and one opensource projects out there have a case model as part of a release … no really don’t, or you’ll get my sequence diagrams and activity diagrams are the expression of the functional model that OO claims is an anti-pattern stance).

So, we were talking about the BDI model in spade2.  It sorta kinda reeks of the obfuscated approaches of JADE and JACK etc.

I came across two alternative approaches, one in process and one potentially to provide a server based solution.

In process candidate is Pyke.  This approach “cooks” python code from logic programming expressions that have a similar flavor to the why beliefs and desires are expressed in Jason.  It also has Plans (so-called).  So, a little side experiment between study sessions is look at using Pyke in place of the “native” BDI solution in spade2.  Now if it isn’t itself really BDI note you can code up a BDI model in Prolog which is a logic programming language – so if you need to be pedantic you might port the prolog BDI model to Pyke, for a laugh.

The other interesting approach is Fuxi.  Loosely, RDF based RETE rule engine but interesting.  The analogue here is the oro server.  Now first iteration would be to hook into an oro server, but down the track a full python port???

Telstra SUX

Posted in Sucky service Providers on February 13, 2014 by asteriondaedalus

So, finally, Internet access after 9 weeks.

How?  The replacement modem was replaced.

The serviceman didn’t check it out, walked away and left us we a dud.

The problem, you ring a help desk in Deli who don’t talk to the local Contractors who don’t talk to Telstra, not to mention the billing department in Phillipines who don’t talk to anyone.

So, you ring to get the thing fixed 17 times in the end.  Each time you are explaining an never ending story over to the other end of the phone.

Another contractor turns up, no idea what the problem is they’ve come to fix so you have to explain the never ending story.

You ring billing for compensation to have to explain the never ending story.

Promises of discounts lost or denied.

You end up paying for the new modem, your mental health worth more.


Last Master’s subject so back to no time to tinker.