The design of Loom has taken many forms in our pursuit of a reusable engine for rapid AI development. We have finally settled on a design concept and some implementation details and we are going to start working away on the new version (always available via CVS) The design is based on a learning agent presented in Artificial Intelligence A Modern Approach second edition pg 526. Fig 18.1 shown below.
In this model any agent could be modeled. The way loom allows this is by defining a common interface for each of the componenets in the agent: critic, learning element, etc. and allowing the user to interchange these components to create whatever agent they may need. In the next section we give a couple of examples of how extensible and diverse this design is. This is the first step in creating the AI system, but a system has more than 1 agent so we need more then just a model for an agent.
So the loom system needs to extend the agent slightly. We do this by supplying all agents automatically with a special perceptor and a special effector called listen and talk. The listen perceptor listens for anything that another agent may have sent him, and the talk effector simply sends out information to another agent.