Multiagent AI system


A multi-agent system (M.A.S.) is a computerized system composed of multiple interacting intelligent agents within an environment. Multi-agent systems can be used to solve problems that are difficult or impossible for an individual agent or a monolithic system to solve. Intelligence may include some methodic, functional, procedural or algorithmic search, find and processing approach. Although there is considerable overlap, a multi-agent system is not always the same as an agent-based model (ABM). The goal of an ABM is to search for explanatory insight into the collective behavior of agents (which don't necessarily need to be "intelligent") obeying simple rules, typically in natural systems, rather than in solving specific practical or engineering problems. The terminology of ABM tends to be used more often in the sciences, and MAS in engineering and technology.[1] Topics where multi-agent systems research may deliver an appropriate approach include online trading,[2] disaster response,[3] and modelling social structures.[4]

Concept

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,[5] humans or human teams. A multi-agent system may contain combined human-agent teams.

Agents can be divided into different types:

  • Very simple like: passive agents[6] or agent without goals (like obstacle, apple or key in any simple simulation)
  • Active agents[6] with simple goals (like birds in flocking, or wolf–sheep in prey-predator model)
  • Or very complex agents (like cognitive agent, which has a lot of complex calculations)

Environment also can be divided into:

  • Virtual Environment
  • Discrete Environment
  • Continuous Environment

Agent environments can be organized according to various properties like: accessibility (depending on if it is possible to gather complete information about the environment), determinism (if an action performed in the environment causes a definite effect), dynamics (how many entities influence the environment in the moment), discreteness (whether the number of possible actions in the environment is finite), episodicity (whether agent actions in certain time periods influence other periods),[7] and dimensionality (whether spatial characteristics are important factors of the environment and the agent considers space in its decision making).[8] Agent actions in the environment are typically mediated via an appropriate middleware. This middleware offers a first-class design abstraction for multi-agent systems, providing means to govern resource access and agent coordination.[9]

Characteristics

The agents in a multi-agent system have several important characteristics:[10]

  • Autonomy: the agents are at least partially independent, self-aware, autonomous
  • Local views: no agent has a full global view of the system, or the system is too complex for an agent to make practical use of such knowledge
  • Decentralization: there is no designated controlling agent (or the system is effectively reduced to a monolithic system)[11]

Self-organization and self-steering

Multi-agent systems can manifest self-organization as well as self-steering and other control paradigms and related complex behaviors even when the individual strategies of all their agents are simple. When agents can share knowledge using any agreed language, within the constraints of the system's communication protocol, the approach may lead to a common improvement. Example languages are Knowledge Query Manipulation Language (KQML) or FIPA's Agent Communication Language (ACL).

Systems paradigms

Many M.A. systems are implemented in computer simulations, stepping the system through discrete "time steps". The MAS components communicate typically using a weighted request matrix, e.g.

 Speed-VERY_IMPORTANT: min=45 mph, 
 Path length-MEDIUM_IMPORTANCE: max=60 expectedMax=40, 
 Max-Weight-UNIMPORTANT 
 Contract Priority-REGULAR 

and a weighted response matrix, e.g.

 Speed-min:50 but only if weather sunny,  
 Path length:25 for sunny / 46 for rainy
 Contract Priority-REGULAR
 note - ambulance will override this priority and you'll have to wait

A challenge-response-contract scheme is common in MAS systems, where

 First a "Who can?" question is distributed.
 Only the relevant components respond: "I can, at this price".
 Finally, a contract is set up, usually in several more short communication steps between sides, 

also considering other components, evolving "contracts", and the restriction sets of the component algorithms.

Another paradigm commonly used with MAS systems is the pheromone, where components "leave" information for other components "next in line" or "in the vicinity". These "pheromones" may "evaporate" with time, that is their values may decrease (or increase) with time.

Properties

M.A. systems, also referred to as "self-organized systems", tend to find the best solution for their problems "without intervention". There is high similarity here to physical phenomena, such as energy minimizing, where physical objects tend to reach the lowest energy possible within the physically constrained world. For example: many of the cars entering a metropolis in the morning will be available for leaving that same metropolis in the evening.

The main feature which is achieved when developing multi-agent systems, if they work, is flexibility, since a multi-agent system can be added to, modified and reconstructed, without the need for detailed rewriting of the application. These systems also tend to be rapidly self-recovering and failure proof, usually due to the heavy redundancy of components and the self managed features, referred to above.

The study of multi-agent systems

The study of multi-agent systems is "concerned with the development and analysis of sophisticated AI problem-solving and control architectures for both single-agent and multiple-agent systems."[12] Topics of research in MAS include:

  • agent-oriented software engineering
  • beliefs, desires, and intentions (BDI)
  • cooperation and coordination
  • organization
  • communication
  • negotiation
  • distributed problem solving
  • multi-agent learning
  • scientific communities (e.g., on biological flocking, language evolution, and economics) [13][14]
  • dependability and fault-tolerance
  • robotics,[15] Multi-robot systems (MRS), Robotic clusters

Frameworks

While ad hoc multi-agent systems are often created from scratch by researchers and developers, some frameworks have arisen that implement common standards (such as the FIPA agent system platforms and communication languages). These frameworks save developers time and also aid in the standardization of MAS development. One such developmental framework for robotics is given in [16]

See Comparison of agent-based modeling software.

Applications in the real world

Multi-agent systems are applied in the real world to graphical applications such as computer games. Agent systems have been used in films.[17] They are also used for coordinated defence systems. Other applications include transportation, logistics,[18] graphics, GIS as well as in many other fields. It is widely being advocated for use in networking and mobile technologies, to achieve automatic and dynamic load balancing, high scalability, and self-healing networks.

See also

References

Further reading

  • The Journal of Autonomous Agents and Multi-Agent Systems (JAAMAS)
  • Whitestein Series in Software Agent Technologies and Autonomic Computing, published by Springer Science+Business Media Group

External links

  • Random Agent-Based Simulations by Borys Biletskyy – Random agent-base simulations for multi-robot system and Belousov-Zhabotinsky reaction. Java applets available.
  • framework for Multi-Agent Systems based on SmallTalk. Spatialized, it focuses on issues related to natural resource management and negotiation between stakeholders.
  • JaCaMo MAS Platform - An open-source platform for Multi-Agent Systems based on Jason, CArtAgO, and Moise.
  • Janus multiagent Platform – Holonic multiagent execution platform (free for non-commercial use).
  • Distributed Multi Agent Framework.
  • MadKit MadKit is a modular and scalable multiagent platform written in Java (GPL/LGPL licence) and built upon the AGR (Agent/Group/Role) organizational model: agents are situated in groups and play roles. MadKit allows high heterogeneity in agent architectures and communication languages, and various customizations.
  • Agent Factory Agent Factory is an open source collection of tools, platforms, and languages that support the development and deployment of Multi-Agent Systems.
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.