main menu:
  » home
  » introduction
  » indigolog overview
  » oaa overview
  » interface model
  » developing agents
  » simple example
  » advanced example
  » other interface models
  » implementation details
  » tips
  » links





These pages provide information on creating Open Agent Architecture agents using IndiGolog agent programming language.

IndiGolog is powerful agent programming language based on Situation Calculus.
It is a member of Golog family of languages. IndiGolog interpreter is implemented in Prolog.

IndiGolog supports complex agents that are:

  • able to do reasoning and planning
  • able to react to exogenous events
  • able to monitor plan execution and sense the environment
  • both reactive and proactive
  • written using very high-level language constructs
OAA is a multiagent system infrastructure that supports facilitated communications. OAA was developed at SRI International. The latest version supports agents written in Java, C/C++, Quintus Prolog, SICStus Prolog, Compaq's Web Language.

The interface presented here supports:

  • using IndiGolog agents in multiagent system developed with OAA
  • IndiGolog OAA agents that are both reactive and proactive
  • other agents written in any language supported by OAA
The interface is designed to support the integration of full-fledged IndiGolog agents in an OAA-based system without giving up any of the functionalities (data solvables, triggers, etc.) of such system.

The interface hides all of the low-level procedures that are used to communicate with the OAA system. OAA initialization is also hidden, leaving the IndiGolog programmer free to concentrate on the functionality of the agent.

  Legal Matters

The software and documentation available at this site are copyright (c) 1997-2001 Giuseppe De Giacomo, Yves Lesperance, Hector Levesque, Ray Reiter, University of Toronto, York University, and Communications and Information Technology Ontario.

All right are reserved. Use of this software is permitted for non-commercial research purposes, and it may be copied only for that use. All copies must include this copyright message. You may not redistribute it outside your institution without permission. If you are interested in a license for commercial use, contact Yves Lesperance at

This software and any documentation and/or information supplied with it is distributed on an as is basis. The copyright holders make no warranties, expressed or implied, including but not limited to implied warranties of merchantability and fitness for a particular purpose, regarding the documentation, functions or performance of such software, documentation and/or information.


© 2001 All Rights Reserved. See Legal Notice.