Multi-Agent Oriented Programming
Table of Contents
This page aims at giving a tutorial on Multi-Agent Oriented Programming using the JaCaMo Platform as a practical platform for illustrating the method, the concepts used when ones wants to develop a multi-agent application.
In our vision, MAOP consists in a composition of Agent Oriented Programming (AOP), Environment Oriented Programming (EOP), Interaction Oriented Programming (IOP) and Organization Oriented Programming (OOP).
The JaCaMo plaftform consists in an integration of the Jason Agent Programming Language, Cartago environment programming platform and MOISE organization programming platform.
Throughout this tutorial, you will learn:
- how to take a multi-agent oriented programming (MAOP) approach for developing decentralized and open systems.
- how to use the JaCaMo platform for programming such systems.
Learning MAOP and each dimension (A,E,I,O)
Below is a set of lectures (slides can be downloaded) explaining the global view on Multi-Agent Oriented Programming and each of the dimension supporting such an approach. Each of the specific programming approach is complemented by practical information related to the JaCaMo Platform.
Downloading the JaCaMo Platform
- Install JaCaMo (this Java-based platform can be dowloaded for now, as a packaging of the Jason, CArtAgO and MOISE platforms, on the jacamo website)
- Let's not that this distribution has all the documentations of the three integrated platforms
Configuring the JaCaMo Platform
- Once downloaded, unpack the platform in any directory of your machine
- Execute the configuration process as described in the README.txt of the distribution (take care of realizing this step before installing the JaCaMo plugin in Eclipse)
Installing and configuring JaCaMo Eclipse Plugin
- You can use and program a JaCaMo application using the Jacamo IDE plugin within Eclipse that you can download from (Eclipse Juno/Kepler):http://jason.sourceforge.net/eclipseplugin/juno/ or (Eclipse Indigo): http://jason.sourceforge.net/eclipseplugin/
- Execute the process described here from Step 4 to the end (don't execute the steps before since you already have configured JaCaMo and Jason)
- Note: even if this process refers to Jason, the plugin is usable for JaCaMo !
Configuring your environment for the Tutorial
- Run the Eclipse IDE
- Create a workspace mytutorial (in the sequel, MAOP will be used to refer to this workspace)
- For each application that you will develop in this tutorial, create a project MyProject using the plugin that you installed in Eclipse IDE.
Practical Resources for MAOP
The (packaging of the Jason, CArtAgO, Moise distributions), the complete Jason distribution (including documentation) - explored later in the AOP section -, the complete CArtAgO distribution (including documentation) - explored later in the EOP section - and the complete Moise distribution (including documentation) - explored later in the OOP section -. The API and documentations can be accessed here:
- The Jason (Java-based interpreter for an exended version of AgentSpeak) can be dowloaded from: http://sourceforge.net/projects/jason/.
- You can download and install the Jason distribution in the MAOP directory to have the complete distribution with examples, documentation and tutorial.
- Jason Documentations