Real Life Information
Multi-agent systems consist of agents and their environment. Typically multi-agent systems research refers to software agents. However, the agents in a multi-agent system could equally well be robots, humans or human teams. A multi-agent system may contain combined human-agent teams.
Each agent in a multi agent system has the following traits:
- Decentralized: there is not a designated agent whose job is to control the other agents. Multi Agent Systems have no government, only members.
- Autonomy: the agents are mostly independent from eachother, as in if one fails, the others don't have an issue, or no agent needs to contact another agent to do a round of tasks.
- Localized: No agent has full access to the system. Everyone can only access their own data, and designated shared data. This is like a neighborhood, where everyone has their own housekeys, instead of everyone having access to everyone's house.
Many Multi Agent Systems are self-organizing. Each agent needs to follow a single communication standard for interacting with other agents.
Multi Agent Systems are usually used in environments where having a single program perform each task just isn't feasible, or would be cumbersome. Common uses are:
- Distributed Computing
- Distributed Robotics
- Sociology and Biology related simulations
- Fault Tolerance
- Coordinated Defensive Systems, such as the Strategic Defense Initiative (also known as Star Wars)
- Complex Graphics
- Geographical data processing
Multi Agent Systems have been around long enough that entire languages have been developed for them, such as AgentSpeak.
Examples of Multi Agent Programs in Code Lyoko
- Project Carthage: According to Franz Hopper's diary, Project Carthage did some work with Multi Agent Systems.
- X.A.N.A.: X.A.N.A. was programmed in the late 1980s/ early 1990s, making him a little earlier than real life multi agent systems. X.A.N.A. combines the multi agent concept with more sophisticated AI.
- X.A.N.A. Destruction Program: This program combined the multi agent concept with malware, destroying a multi agent system with a multi agent system.
Note: the Marabounta (monster) was called a multi agent system in Code Lyoko. This was not a true Multi Agent system, since there was a designated controller. It does follow the Agent Based Model, but it's not a true multi agent system.