Chapter 8. Tools

Table of Contents

DefaultAgents
SimpleAgentFrame
GUIAgent
LogDebugger
MobMaker
PDARunner
PDARunner Configuration
ProxyAgent
Services

To make developing an application with Mica easier a number of tools have been put together and included in the standard Mica distribution. These tools serve a variety of purposes from making agents easier to implement to enabling state of the blackboard to be examined and manipulated.

DefaultAgents

To make constructing agents a little easier two abstract implementations of the Agent interface are available.

The first, DefaultAgent is practically empty adding empty method bodies to many of the required methods. Any agent extending this class will have to implement its own init and handleNewMob methods.

The second abstract Agent implementation is DefaultAgent2. This class provides generic implementations of the interface functions.

DefaultAgent2's major differences to DefaultAgent are that it includes a constructor that can be used to ensure the agent has an AgentTransport that can be used for synchronous communications over the blackboard (see the section called “synchronizedWriteMob(Mob, long)”) and it maintains a TypeManager that is kept up to date with the blackboard.

The init method of DefaultAgent2 will connect the agent to the blackboard using a name supplied as an argument or else using the agent's class name.