Skip to content
Harsha K edited this page Apr 27, 2017 · 2 revisions

Guide to Agent-based Simulation Platforms

Complex Systems consist of entities interacting in ways which produces intractable system behaviour or emergent emergent behaviour. This intractable nature of emergent behaviours makes it hard to study and model complex systems. One of the ways in which complex systems can be studied is to break the system down to its component subsystems. These component sub-systems are then modelled as a bottom-up simulation with the individual systems or agents interacting with each other to reproduce the system behaviour.

The key advantage of using an agent based system to represent a complex system is that individual subsystems' interactions can be observed in greater detail. The interactions and emergent behaviour expressed by the model is tractable and allows one to study complex systems in greater detail.

Broad parts of an Agent Based Simulation Platform

Agent Definition Mechanism

Agent based simulation frameworks provide a template for defining a wide variety of agent types. An agent of a particular type has a set of goals and can perform a set of defined actions. At any given point of time there may be different types of agents and any number of individual agents of the same or different type present in a system.

Agents can perform a set of actions, each of which will change the state of the system. The agents perform these actions in order to achieve their individual goals or objectives. The choice of the action depends on the type of agent defined, its constraints and incentives. Thus, by defining different goals for the agents and varying their actions and other parameters, different types of agents can be defined. The agent platform must enable the definition and creation of a number of agent types, and a large number of agents of each type.

Event Generator or System Driver

The event generator or system driver module generates signals at appropriate intervals to drive the entire system forward. The signals can either be clock signals generated at regular intervals or they can be generated after the system is in a certain state. All agents are aware of the signal once it is generated and react to it depending on their description.

Communication Layer

Messages represent the interactions among agents, which are responsible for the emergence of group behaviours. Other emergent behaviour may also be observed because of the communication between agents. The communication layer allows the agents to communicate with one another. This layer is also used to relay event signals to all the agents. The agents are free to define their own protocols for communication, or choose from existing ones. The function of the communication layer is only to transfer a message from one agent to one or more agents without interpreting the message content. This is a key requirement as this allows for enormous flexibility in the type of communication, and the platform chosen for defining the agents.

Visualisation or Output Module

The visualisation or the output module displays the result of the simulation using visual aids such as graphs and images. The visualisation helps us to understand the various interactions that are taking place among the agents. Graphs allow us to study the trends in system parameters during and after the simulation. Visualisations will also us to analyse the system in a bottom-up as well as top-down manner.

Some of the other agent framework capabilities include

  • An ontology framework
  • A Yellow page service to locate agents
  • Agent transportation capability to move agents between different frameworks
  • Logging and tracing agents and events

These capabilities although useful (and sometimes required) are either implemented using the above mentioned essential modules or developed as an extension. By keeping the essential modules flexible, the framework can be extended to include other services. The next section elaborates on the requirements and constraints placed on the agent frameworks for large scale simulations.