Joseph B. Mueller, Derek M. Surka, and Joy J. Lin, Princeton Satellite Systems, USA
ObjectAgent is an agent-based, message-passing software architecture that utilizes natural language processing to provide autonomous control to complex systems. As a form of distributed programming, the architecture relies on agents sharing information in order to accomplish various tasks. Because this architecture is both flexible and reconfigurable, it is a natural platform for implementing artificial intelligence techniques. Crucial to the success of such a system is its ability to detect and recover from faults, and to monitor its internal health. A layer of software has been added to ObjectAgent which enables the user to create families of agents, quickly define their health monitoring characteristics, and easily implement error detection and recovery algorithms. The result is a layer of error handling and health monitoring that runs seamlessly in the background.