AIMS is a simulation framework for agent interaction models. It is a design-aid tool for studies of interaction models, which provides exploratory interactive experimentation to its users.

Interaction model designers often face a large design-related decision space so our objective was to provide early feedback to reduce the decision space and improve the quality of design choices. In order to meet these objectives, the framework provides concurrent simulation of multiple agent teams, interactive control over the course of experiments, effective visualization of the agent and environment, and distributed simulation in a cluster.

This was the subject of my MSc thesis that I did at the University of Northern British Colubmia, advised by Dr. Jernej Polajnar and Dr. Desanka Polajnar. Denish Mumbaiwala also helped us to develop a user-friendly GUI for the framework.


AIMS has an open architecture. It is extendible for studies of different aspects of agent teamwork, supports effective use of external resources, and is independent from a specific knowledge domain.

AIMS consists of loosely coupled components that have orthogonal functionalities and can be developed independently. The incorporation of a new MAS model into the simulator has little effect on other components, as long as its design complies with some general interfacing assumptions. At the top-level, the simulator consists of: the front end, the simulation engine, the service components, and the MAS model(s)

Tha agents in AIMS are driven by their interaction models. Therefore, the interaction processor is a key component of our agent architecture. Its internal structure depends on the type of interaction models that it is designed to support. The current version emphasizes agent interaction protocols (AIPs) that rely on message passing. It contains the specification of an AIP in the form of a finite state machine (FSM), and an FSM executor that runs the protocol. The message handler allows the agent to create and exchange messages through the communication module.

The reasoner allows the agent to deliberate about its current situation and make decisions. It initiates actions in the microworld and communications with other agents. Optionally, it can use an external reasoning engine through a suitable adaptor. During each cycle, the agent reasons based on it's perceptions, both the local and contextual believs, and the interactions that are determined by its model.

A Microworld for Studying Teamwork

In order to investigate the issues that arise in designing direct help models, we have developed a microwold within the AIMS platform for our studies of helpful behavior in agent teams. The microworld model is inspired by the colored trails game, but is developed independently by our group.

Interactive Simulation Demo


AIMS is implemented in Java and its source code is available at its Github repository.


AIMS has been used in a number of studies on agent interaction models:

J. Polajnar, M. Malek Akhlagh, N. Nalbandyan, D. Mumbaiwala and D. Polajnar, "Decentralized reactive adjustment of agent teamwork organization to changing environment," 2014 IEEE International Conference on Systems, Man, and Cybernetics (SMC), San Diego, CA, 2014, pp. 1438-1443.

M. Malek Akhlagh and J. Polajnar, “Distributed Deliberation on Direct Help in Agent Teamwork,” in Multi-Agent Systems: 12th European Conference, EUMAS 2014, Revised Selected Papers, 2015, pp. 128–143.

N. Nalbandyan, J. Polajnar, D. Mumbaiwala, D. Polajnar and O. Alemi, "Requester vs. Helper-Initiated Protocols for Mutual Assistance in Agent Teamwork," 2013 IEEE International Conference on Systems, Man, and Cybernetics, Manchester, 2013, pp. 2741-2746.

J. Polajnar, N. Nalbandyan, O. Alemi and D. Polajnar, "An Interaction Protocol for Mutual Assistance in Agent Teamwork," Complex, Intelligent and Software Intensive Systems (CISIS), 2012 Sixth International Conference on, Palermo, 2012, pp. 6-11.

B.Dalvandi. A model of empathy for agent teamwork. Masters thesis, University of Northern British Columbia, 2012.