Distributed artificial intelligence

From Wikipedia, the free encyclopedia

Distributed Artificial Intelligence (DAI) also called Decentralized Artificial Intelligence[1] is a subfield of artificial intelligence research dedicated to the development of distributed solutions for problems. DAI is closely related to and a predecessor of the field of multi-agent systems.

Multi-agent systems and distributed problem solving are the two main DAI approaches. There are numerous applications and tools.

Definition[edit]

Distributed Artificial Intelligence (DAI) is an approach to solving complex learning, planning, and decision-making problems. It is embarrassingly parallel, thus able to exploit large scale computation and spatial distribution of computing resources. These properties allow it to solve problems that require the processing of very large data sets. DAI systems consist of autonomous learning processing nodes (agents), that are distributed, often at a very large scale. DAI nodes can act independently, and partial solutions are integrated by communication between nodes, often asynchronously. By virtue of their scale, DAI systems are robust and elastic, and by necessity, loosely coupled. Furthermore, DAI systems are built to be adaptive to changes in the problem definition or underlying data sets due to the scale and difficulty in redeployment.

DAI systems do not require all the relevant data to be aggregated in a single location, in contrast to monolithic or centralized Artificial Intelligence systems which have tightly coupled and geographically close processing nodes. Therefore, DAI systems often operate on sub-samples or hashed impressions of very large datasets. In addition, the source dataset may change or be updated during the course of the execution of a DAI system.

Development[edit]

In 1975 distributed artificial intelligence emerged as a subfield of artificial intelligence that dealt with interactions of intelligent agents.[2] Distributed artificial intelligence systems were conceived as a group of intelligent entities, called agents, that interacted by cooperation, by coexistence or by competition. DAI is categorized into multi-agent systems and distributed problem solving.[3] In multi-agent systems the main focus is how agents coordinate their knowledge and activities. For distributed problem solving the major focus is how the problem is decomposed and the solutions are synthesized.

Goals[edit]

The objectives of Distributed Artificial Intelligence are to solve the reasoning, planning, learning and perception problems of artificial intelligence, especially if they require large data, by distributing the problem to autonomous processing nodes (agents). To reach the objective, DAI requires:

  • A distributed system with robust and elastic computation on unreliable and failing resources that are loosely coupled
  • Coordination of the actions and communication of the nodes
  • Subsamples of large data sets and online machine learning

There are many reasons for wanting to distribute intelligence or cope with multi-agent systems. Mainstream problems in DAI research include the following:

  • Parallel problem solving: mainly deals with how classic artificial intelligence concepts can be modified, so that multiprocessor systems and clusters of computers can be used to speed up calculation.
  • Distributed problem solving (DPS): the concept of agent, autonomous entities that can communicate with each other, was developed to serve as an abstraction for developing DPS systems. See below for further details.
  • Multi-Agent Based Simulation (MABS): a branch of DAI that builds the foundation for simulations that need to analyze not only phenomena at macro level but also at micro level, as it is in many social simulation scenarios.

Approaches[edit]

Two types of DAI has emerged:

  • In Multi-agent systems agents coordinate their knowledge and activities and reason about the processes of coordination. Agents are physical or virtual entities that can act, perceive its environment and communicate with other agents. The agent is autonomous and has skills to achieve goals. The agents change the state of their environment by their actions. There are a number of different coordination techniques.[4]
  • In distributed problem solving the work is divided among nodes and the knowledge is shared. The main concerns are task decomposition and synthesis of the knowledge and solutions.

DAI can apply a bottom-up approach to AI, similar to the subsumption architecture as well as the traditional top-down approach of AI. In addition, DAI can also be a vehicle for emergence.

Challenges[edit]

The challenges in Distributed AI are:

  1. How to carry out communication and interaction of agents and which communication language or protocols should be used.
  2. How to ensure the coherency of agents.
  3. How to synthesise the results among 'intelligent agents' group by formulation, description, decomposition and allocation.

Applications and tools[edit]

Areas where DAI have been applied are:

DAI integration in tools has included:

  • ECStar is a distributed rule-based learning system.[7]

Agents[edit]

Systems: Agents and multi-agents[edit]

Notion of Agents: Agents can be described as distinct entities with standard boundaries and interfaces designed for problem solving.

Notion of Multi-Agents: Multi-Agent system is defined as a network of agents which are loosely coupled working as a single entity like society for problem solving that an individual agent cannot solve.

Software agents[edit]

The key concept used in DPS and MABS is the abstraction called software agents. An agent is a virtual (or physical) autonomous entity that has an understanding of its environment and acts upon it. An agent is usually able to communicate with other agents in the same system to achieve a common goal, that one agent alone could not achieve. This communication system uses an agent communication language.

A first classification that is useful is to divide agents into:

  • reactive agent – A reactive agent is not much more than an automaton that receives input, processes it and produces an output.
  • deliberative agent – A deliberative agent in contrast should have an internal view of its environment and is able to follow its own plans.
  • hybrid agent – A hybrid agent is a mixture of reactive and deliberative, that follows its own plans, but also sometimes directly reacts to external events without deliberation.

Well-recognized agent architectures that describe how an agent is internally structured are:

  • ASMO (emergence of distributed modules)
  • BDI (Believe Desire Intention, a general architecture that describes how plans are made)
  • InterRAP (A three-layer architecture, with a reactive, a deliberative and a social layer)
  • PECS (Physics, Emotion, Cognition, Social, describes how those four parts influences the agents behavior).
  • Soar (a rule-based approach)

See also[edit]

  • Collective intelligence – Group intelligence that emerges from collective efforts
  • Federated learning – Decentralized machine learning
  • Simulated reality – Hypothesis that reality could be a computer simulation
  • Swarm Intelligence – Collective behavior of decentralized, self-organized systems

References[edit]

  1. ^ Demazeau, Yves, and J-P. Müller, eds. Decentralized Ai. Vol. 2. Elsevier, 1990.
  2. ^ Chaib-Draa, Brahim; Moulin, B.; Mandiau, R.; Millot, P. (1992). "Trends in distributed artificial intelligence". Artificial Intelligence Review. 6 (1): 35–66. doi:10.1007/BF00155579. S2CID 15730245.
  3. ^ Bond, Alan H.; Gasser, Les, eds. (1988). Readings in distributed artificial intelligence. San Mateo, California: Morgan Kaufmann Publishers. ISBN 9781483214443.
  4. ^ Jennings, Nick (1996). "Coordination Techniques for Distributed Artificial Intelligence" (PDF). In Gregory M. P. O'Hare; N. R. Jennings (eds.). Foundations of Distributed Artificial Intelligence. New York: Wiley. pp. 187−210. ISBN 978-0-471-00675-6. Archived from the original on 1 November 2018.
  5. ^ Anita Raja; Linda Xie; Ivan Howitt; Shanjun Cheng. "WLAN Resource Management using Distributed Constraint Optimization". UNC Charlotte: Department of Computer Science. Project sponsor: NSF. CS Research: Past projects – Project summary. Archived from the original on 2015-05-12. UNC Charlotte College of Computing and Informatics
  6. ^ Catterson, Victoria M.; Davidson, Euan M.; McArthur, Stephen D. J. (2012-03-01). "Practical applications of multi-agent systems in electric power systems" (PDF). European Transactions on Electrical Power. 22 (2): 235–252. doi:10.1002/etep.619. ISSN 1546-3109.
  7. ^ "Anyscale Learning For All | alfagroup". alfagroup.csail.mit.edu.

Further reading[edit]

  • Hewitt, Carl; and Jeff Inman (November/December 1991). "DAI Betwixt and Between: From 'Intelligent Agents' to Open Systems Science" IEEE Transactions on Systems, Man, and Cybernetics. Volume: 21 Issue: 6, pps. 1409–1419. ISSN 0018-9472
  • Grace, David; Zhang, Honggang (August 2012). Cognitive Communications: Distributed Artificial Intelligence(DAI), Regulatory Policy and Economics, Implementation. John Wiley & Sons Press. ISBN 978-1-119-95150-6
  • Shoham, Yoav; Leyton-Brown, Kevin (2009). Multiagent Systems: Algorithmic, Game-Theoretic, and Logical Foundations. New York: Cambridge University Press. ISBN 978-0-521-89943-7.
  • Sun, Ron, (2005). Cognition and Multi-Agent Interaction. New York: Cambridge University Press. ISBN 978-0-521-83964-8
  • Trentesaux, Damien; Philippe, Pesin; Tahon, Christian (2000). "Distributed artificial intelligence for FMS scheduling, control and design support". Journal of Intelligent Manufacturing. 11 (6): 573–589. doi:10.1023/A:1026556507109. S2CID 36570655.
  • Vlassis, Nikos (2007). A Concise Introduction to Multiagent Systems and Distributed Artificial Intelligence. San Rafael, CA: Morgan & Claypool Publishers. ISBN 978-1-59829-526-9.