(last modification March 2003)
The MadKit team is recruiting!! : if you want to help the development of MadKit in the following areas (see the list of some of our interest below) and even take in charge part of it, then email Jacques who is in charge of the coordination of the project.
If you already have developped tools and/or agents/organizations in MadKit and you want to see them being part of the MadKit distribution, then email Jacques to get how to do it. You must be aware that your software will be distributed with a GLP/LGPL licence.
The development environment of MadKit is still too simple. Designing a Java agent (it is a bit better with scripting agents) still requires a lot of work. You need to go into your preferred Java IDE tool (which could be a simple editor and shell commands or a big GUI IDE with windows everywhere), create an agent compile it, taking care of this &#$%@ classpath, jar it, put the jar in the autoload directory (for example), run MadKit and test your agents. I would like to have tools to help the development process and not leave MadKit each time.
It could be a good idea to help this process by integrating the java compiler to MadKit and agent classes and related jars when MadKit is running.
Building and updating tools to observe, analyze and report the behavior of MadKit
There are many tools which are missing in MadKit and that we would like to develop, and we would like to modify and improve some of the already available tools. Here are some of the missing tools:
- An agent that graphically view the messages between agents in a group, using an UML like sequence diagram.
- An improvement of org grapher, in order to do not show all agents and to be able to hide/show the groups and role the user want to see. It should also be possible to view messages between agents if the user want to see it.
- An agent which shows the different kernels that are connected and their respective internal organization. This may be part of an extension of the GroupObserver agent.
- Improve the small notepad/editors of MadKit in order to give them: syntax coloring, undo, wrap/unwrap mode, etc. It is sometimes very handy to have a simple tool to modify simple expression without having to resort to a big program such as jEdit.
A
library of agent architecture should be built: BDI, constraint based,
subsumption, neural network, etc.. should be made available to the
developer of multiagent systems.
This is an important development because having such a library would
ease the development of multiagent systems. This also would help the
teaching of multiagent systems by comparing several approaches on
a same problem.
For the moment (version 3.1) MadKit is not FIPA compliant. There is already an ACLMessage class which allows for the development of applications using ACL, but this is all. Even if I am not sure that FIPA standards, for the moment, are quite practical and efficient, it could be interesting to make FIPA agents communicate with MadKit agents. Why not consider MadKit as a good tool to develop AgentCities nodes...
We are working on FIPA compliance: the main idea is to have a subset (a group) of MadKit being FIPA compliant. These agents (FIPAagents) would be part of the FIPA group and have some ability to communicate directly with FIPA platforms such as FIPA-OS or JADE. We need people to help us to do this job!!
Anyway, I Hope FIPA will recognize that 1) multiagent systems should be immersed into organizations, 2) multiagent systems should rely on their own forces to develop distributed platforms and not being built on stacks of technologies (I don't see the reason why RMI/IIOP, etc.. which are based on synchronous communications, should be technology to make agent communicate by message passing!!). Maybe MadKit could make the people of FIPA change their mind and see the interest of "thin" agents evolving in organizations...