Wednesday, July 15, 2009

Multi Agent system tools

Tool 2: Java based tool - MADKIT (part 01)

MadKit (http://www.madkit.org/) is a modular and scalable multi agent platform written in java and it is a free software based on the GPL/LGPL license. With MadKit we can define "Agents" and club agent to the "Groups" and assign "Roles" for a group. Agent and group communication based on peer to peer.

Madkit, which is written in Java, works in a distributed way accross machines (with different OS) without needing a central server. Communications and groups can be freely distributed and the distribution is performed transparently at the application level. Agents can be programmed in multiple language. For the moment Java, Scheme (Kawa) and Jess (a rule based language written in Java and based on the Clips system) are the first available programming languages. Other languages will be available in the future.

The madkit architecture is totally modular. The micro-kernel (less than 60k of compiled Java code) is extended by a set of various libraries of messages, probes and agents. System services and debugging tools are themselves provided as agents, making system extensions easy and simple to implement.The reduced size of the micro-kernel, combined with the principle of modular services managed by agents enable a range of multiple, scalable platforms and construction of libraries of specialized agent models.

As an example of its modularity, Madkit comes with tools for building simulations and artificial life applications using a specialized synchronous engine which allows for thousands of agents to work together on a single machine.

MadKit comes with an easy to use graphic box but, as agents are decoupled from their interface, it is easy to embed MadKit agents into a specific application.

No comments: