1. Preamble

In this course on Multi-Agent Programming, the focus is on the practical programming of Multi-Agent Systems. It addresses approaches for developing complex systems and approaches for simulating such systems.

Dealing with the development of complex systems, this course presents one of the main lines of use of the multi-agent paradigm for developing complex systems: Multi-Agent Oriented Programming (MAOP) used for the integration of intelligent systems and development of socio-technical systems. Besides learning foundations and state of the art works done on this topic in the Multi-Agent domain, you will learn how to take a MAOP approach for developing Decentralized and Open AI systems.

2. Multi-Agent Oriented Programming

The Multi-Agent Oriented Programming approach consists in a composition of Agent models, Environment models and Organisation models, interacting all together. Each of these models are built by picking concepts in, respectively, the Agent, Environment or Organisation dimension. Using MAOP by privileging each of these dimensions may respectively lead to Agent Oriented Programming (AOP), Environment Oriented Programming (EOP) and Organization Oriented Programming (OOP).

We use the JaCaMo platform for the practical exercises that are presented in this course. This programming platform results from the integration of the Jason Agent Programming Language supporting the JaCaMo agent dimension, CArTaGo Environment Programming platform supporting the JaCaMo environment dimension and MOISE Organization programming platform supporting the JaCaMo organisation dimension.

2.2. Installing and Configuring the JaCaMo platform

  • get a release of the JaCaMo platform here

  • install the eclipse plugin as described here or configure your shell command as described here

  • more documentation:

2.3. Resources

2.3.1. Autonomous Agent and Multi-Agent System

  • Installing and Configuring the Multi-Agent Oriented Programming JaCaMo Platform

  • More documentation:

    • JaCaMo Project where you can find documentations on the JaCaMo platform composed of the Agent Programming Language (Jason), the Environment Programming Framework (Cartago) , the Organisation Specification Language (Moise), including:

    • JaCaMo Documentation and API descriptions

    • Some help on MAOP

3. Multi-Agent based simulation

  • Introduction to Multi-Agent Based Simulation

  • Simulation coupling

  • REPAST