Tuesday, October 13, 2009

Social artificial intelligence

Answer me, you, reader: is social intelligence a design pattern for artificial intelligence ? It is a simple thinking this one coming from me but, looking at human society, it seems a spontaneous association to use rules automatically establised between humans, the simplest among them, to rule animed pieces of abstracted information. it seems sometimes that given a model, to obtain more from that model, you have to put in the model more complexity, or make the model capable of more complexity. I 've been speaking for a while about active pieces of information, "behaving" like bees of a beehive, linking each others to build structured "experiences" as a part of their artificial life, to make a knowledge base. The rules that rule these infomation-bees are the basic rules of a society of individuals. Competition, physiological needs, natural selection, mutations, adherence to enviroment' changing, are the drivers to move a society into non a static group. It makes me smile, that is generally good as a consequence, but it is like to steal honey from the beehive, if we steal the decisions taken by the swarm of composable information units, while this swarm does its best to survive in a virtualized world made by a virtual machine, acting as an hardware abstraction layer to sensors and actuators.

Monday, October 05, 2009

The behavioural engine pattern

I'd like to outline that I consider the approach of developing a behavioural engine as an intra application integration pattern:

1 to encapsulate the part of the application in charge of defining what the application itself should do in a defined, restricted, non entire application pervasive scope of objects

2 to create as a conseguence of point 1, an interface between the behavioural engine and the auxiliary objects using or being used by the behavioural engine itself. In the economy of the application, these classes not being part of the engine can be grouped up in a so called "shell"

Example of this is Linux: a kernel and a shell to allow the user to invoke kernel functionalities via pre defined paths.