5 How SIE Can Support Different Paradigms of Artificial Intelligence

The agent module is defined no further than the communication protocols through which an agent talks to devices in order to sense and react to its surroundings. Thus, flexibility is built into the foundation of the SIE structure, allowing support for any approach to the agent design. The classical approach to robotics and artificial intelligence is to construct an internal model of the world upon which we have our agents make decisions. All sensory inputs are gathered together and information conflicts are resolved to construct a consistent world view [9]. The advantage to this approach is that all information about the world is centralized and there is one single entity which is fed all the information and can therefore make the most complete and well-informed decision about how to react. This paradigm is very well supported by our integrated environment. The simplest implementation would be to have a single agent that requested from the administrator all the necessary devices to build a world model. The agent could then make calls to all the devices to request data, receive that data, construct a model of the world, and make a decision about how to behave.

Rodney Brooks, of the MIT Artificial Intelligence Laboratory, however, condemns this traditional approach because it is slow (computationally intensive to build a world model) and large (much memory is required to store the internal model). Brooks instead advocates a subsumption architecture wherein the decisions are not made by a single agent, but is distributed over an organized hierarchy of behavior modules that directly map perception to action [10]. These separate behavior modules do not directly communicate with each other in making decisions, but rather inhibit other modules when they are active. For example, there may be a behavior that tells a mobile robot to continuously move forward, but there may be another behavior that tells the robot to stop if there is an obstacle in its path. If, in our hierarchy, we defined that the stopping behavior inhibits the forward behavior, our robot will travel forward (the stopping behavior has no reason to be active, and therefore lies dormant and does not inhibit the forward behavior) until the robot encounters an obstacle. When an obstacle is encountered, the stopping behavior is made active, which inhibits the forward behavior - the robot comes to a stop. By defining a hierarchy of behaviors and by defining how these behaviors interact and inhibit each other, we can construct a system that does not need a central intelligence, but can behave based on a series of smaller intelligences. SIE can easily support this approach to designing intelligent agents by building a separate agent for each ``behavior module'' and having them access the needed devices through the administrator. Agents - in this case functioning as behavioral modules - can inhibit each other in the way Brooks prescribes using the SHELLEY_SOCKETS mini-library to produce direct inter-agent communication.

Next     Previous Contents