GOLEM is an agent platform that can be used to create practical multi-agent system applications. The platform allows a system developer to construct an application by deploying three main entities:

  • Agents – active entities involved in physical and social interactions inside the environment;
  • Objects – are passive resources that agents can interact with;
  • Containers – are a portion of the environment that situate agents and objects by mediating their interactions.

An important novelty of  GOLEM is that it allows software agents and the environment in which they are situated to be specified symbolically using declarative and logic-based theories. This makes the deployment of a specific kind of cognitive agents easier as the act of perceiving the environment amounts to importing parts of a logical theory, while performing an action in the environment involves implementing a transaction over a distributed and complex logical structure that evolves over time.

The platform was implemented as part of Stefano Bromuri‘s PhD.