Extending the JADE Agent Behavior Model for More Flexibility and Control

Martin Griss, Steven P. Fonseca, Dick Cowan, Robert R. Kessler · 2001

A key component of effective multi-agent systems (MAS) software development is a set of models, technologies and tools that make it more effective to flexibly and precisely specify and implement agent-to-agent conversations, standardized protocols, and corresponding agent behaviors. In this technical report, we provide a background and motivation for a substantial extension/revision to the JADE agent behavior mode, which we call HP SmartAgent. These capabilities allow for more flexible and precise control of agent activities and conversations. Previous experience with systems built using both the ZEUS and the JADE agent toolkits have highlighted the need for this capability. In JADE, each behavior is a largely independent “pseudo-thread.” Behaviors are scheduled in round robin fashion; all are woken up on the arrival of a message or timeout, and several behaviors that match the incoming message have an equal chance of execution. One is selected randomly and run until control is relinquished. The message is eventually consumed and the remaining active behaviors are put back to sleep. In our new model, JADE behaviors are decomposed into distinct activities. A new set of classes enables programming activities as state machines. Dispatchers and controllers handle message routing and activity execution. The controller maintains a chain of dispatchers. Incoming events are passed to the top dispatcher of this chain. Dispatchers perform matching on the incoming event. In SmartAgent, we extend and unify the notion of events to include messages, timers and system events allowing for activity activation based on richer event patterns. If the event is handled, all of the activities under control of the dispatcher are executed with the event serving as input. Upon completion, dispatchers are responsible for deciding if the event should be forwarded along the chain. The dispatcher chain can be ordered using a hierarchical state machine (HSM) based on the UML statechart model or using a simple sequential ordering. All of these SmartAgent features allow more precise control and sequencing of behaviors while retaining and enhancing the flexibility of the JADE behavior model. Furthermore, SmartAgent provides a flexible way for defining shared default and exception handling.

Read the paper · More papers on PaperTik