1 / 60

Multi-agent Systems, Communication and Coordination

Multi-agent Systems, Communication and Coordination. Multi-Agent Systems Course. Koen Hindriks Delft University of Technology, The Netherlands. Goal So Far. mental states (beliefs, goals) mental state conditions & macros action specifications, built-in actions action rules

Download Presentation

Multi-agent Systems, Communication and Coordination

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Multi-agent Systems, Communication and Coordination Multi-Agent Systems Course Koen Hindriks Delft University of Technology, The Netherlands

  2. Goal So Far • mental states (beliefs, goals) • mental state conditions & macros • action specifications, built-in actions • action rules • environment & perception • modules

  3. Outline (today) • Intro Multi-Agent Systems (MAS) • Coordination in MAS • Specifying a MAS in Goal • Communication in Goal

  4. Multi-Agent Systems (MAS)

  5. Multi-Agent System Intersecting spheres of influence of multiple agents acting in an environment A1 A3 A2 A4 Agents Environment • Intersecting spheres: • Action perspective: may interfere, change same parts of environment • Perception perspective: agents may have different views on environment

  6. Multi-Agent System Various approaches to coordinate activity of multiple agents A1 A3 A2 Agents A4 Environment • Various coordination techniques have been proposed, main ideas: • Communication protocols impose structure on agent communication • Add organization structure on top of multi-agent system Note: Without explicit agent communication still implicit communication possible via environment if perception spheres overlap

  7. Multi-Agent System Not all agents need to be ‘connected’ to the environment A3 A1 A2 A4 Agents Environment

  8. Kinds of multi-agent systems • Cooperative versus competitive • Agents have a common goal of solving a problem together or compete for resources. • Homogeneous versus heterogeneous • All agents have the same abilities and decision logic, or agents have different abilities. • Interaction protocols • Which agents can talk to which other agents? • Organizational structure • Agents may be organized in various ways (with a leader, or not, different roles, etc.)

  9. Example – Search and Rescue • Search & Rescue • Unknown environment (map may be unreliable or absent) • Search for victims • Providing aid to victims • Aim to minimize time to provide aid to all victims.

  10. Example – Package Delivery • Package delivery • Known environment (map) • Initial and target location of packages known • Aim to minimize delivery time of all packages.

  11. Advantages of MAS • Complete tasks quicker through shared effort. • Achieve tasks otherwise not possible. A MAS provides solutions in situations where action is spatially and temporally distributed. • A MAS can be distributed over machines across a network. • A decentralized MAS does not suffer from the "single point of failure" problem.

  12. Cooperation & Coordination Maaike Harbers,

  13. Examples of Cooperation http://cacm.acm.org/news/98755-how-football-playing-robots-have-the-future-of-ai-at-their-feet/fulltext Maaike Harbers,

  14. Cooperation Challenges • Cooperation yields more effective (e.g., quicker) solutions to a problem… • But… • Avoid duplication of effort. • Avoid interference, i.e. harmful interactions. • Avoid communication overhead, i.e., need to share information with as few messages as possible. • Need to synchronize behaviors. • Coordination needed to address challenges

  15. What is coordination?

  16. Coordination problems • Without coordination, what would happen here? • What is the problem: duplication of effort, interference, communication overhead, synchronization?

  17. Coordination problems http://www.wired.com/gadgetlab/2010/06/dance-dance-revolution-20-robots-think-they-can-dance/ • And what would • happen here? • What is the problem: duplication of effort, interference, communication overhead, synchronization?

  18. Coordination problems • And what would • happen here? • What is the problem: duplication of effort, interference, communication overhead, synchronization?

  19. Coordination problems Player A/ Player B Defect Cooperate Defect 2 , 2 5, 0 Cooperate 0 , 5 3 , 3 • And what would • happen here? • What is the problem: duplication of effort, interference, communication overhead, synchronization? Prisoner's dilemma Two persons are being questioned in separate rooms by the police. Each of them can either admit to a crime (defect) or not (cooperate). Outcomes for actors A and B depend on the combination of A's and B's action.

  20. Need to be smart • And what would • happen here? • What is the problem: duplication of effort, interference, communication overhead, synchronization? The wise men problem A king wishing to know which of his three wise men is the wisest, paints a white spot on each of their foreheads, tells them at least one spot is white, and asks each to determine the color of his spot. …

  21. Types of coordination • Implicit coordination e.g., flocking behavior • Explicit coordination exchange of messages

  22. Aspects of joint activity Coordinating behavior makes multiple agents act like a team, they perform a joint activity. Klein, G., Feltovich, P., Bradshaw, J. M., & Woods, D. D. (2005). Common ground and coordination in joint activity. Organizational Simulation. W. B. Rouse and K. R. Boff. New York City, NY, John Wiley.

  23. A. Criteria: example • Making an assignment together • No intention – no assignment or two assignment • No interdepencence – each making one half of the assignment without seeing the other half

  24. B. Requirements for joint activity • Interpredictability • Need to be able to accurately predict what others will do • Not just actions, but the coordination itself • Common ground • Pertinent mutual knowledge, beliefs, and assumptions about others’ skills and capabilities • Joint activity is guided by signaling and coordination devices • Directability • Capacity for modifying the actions of the other parties as conditions and priorities change • Responsiveness of each participant to the influence of the others

  25. B. Requirements: example Football team • Interpredictability – predict where team members will be on the field and who will be available • Common ground – who is keeper, who defends, who attacks • Directability –keeper tells others where to stand during a corner

  26. C. Choreography of joint activity • Three phases (functional breakdown) • coordinating tasks is coordinating subtasks • subtasks have an entry, body and exit phase • Signaling transitions • within and between phases • Coordination devices • serve to increase interpredictability • examples are organizational structure, convention, communication protocol

  27. C. Choreography: example • Traffic • Three phase actions • entering a road • being on the road • leaving a road • Signaling transitions • turn signal • Coordination devices • organizational structure, convention, communication protocol • to discuss…

  28. Coordination structures

  29. Organizational structure adapted from Bradshaw et al.

  30. Organizational structure in BW4T • Notion of ‘role’ is central • Possible roles in BW4T? • searcher • deliverer • manager

  31. Notion of ‘role’ is central organization goals agent goals determine agent roles determine agent roles performed by agents performed within society Organizational perspective Agent perspective

  32. Conventions Coordination by convention solution

  33. Conventions in BW4T • A group of agents • Each agent is able to solve the BW4T task individually • Agents do not take into account that there are other agents • What happens?

  34. Example of conventions in BW4T • Do not enter rooms that are occupied • If you know about a block that can be delivered, deliver that block • If someone intends to deliver a particular block, do not try to deliver that block as well

  35. Conventions in organizational structure If a searcher finds a block, it must report that to the manager adapted from Bradshaw et al.

  36. Communication in BW4T • A group of agents • Each agent is able to solve the BW4T task individually • Agents take into account that there are other agents • Agents do not communicate • What happens?

  37. Implicit coordination in BW4T • And what would • happen here? • Robots do NOT communicate. How do they choose a room? Room 1 Room 2 Robot 2 Robot 1

  38. Specifying a MAS

  39. MAS Specification In Goal, a .mas file is a recipe for launching a multi-agent system, specifying: • which environment will be launched, • how many agents will be launched, • the agent names for agent processes • which agents are connected to environment • which .goal file(s) is (are) used to create an agent.

  40. MAS Specification A .mas file is a recipe for launching a MAS: • which environment will be launched • environment started by jar file, • some of which may be initialized using the init command (check out environment doc). environment{ env = "blocksworld.jar". init = [configuration="bwconfigEx1.txt"]. }

  41. MAS Specification A .mas file is a recipe for launching a MAS: • which agent files will be used • agent file defines a possible agent type. agentfiles { "coffeemaker.goal". "coffeegrinder.goal". }

  42. MAS Specification A .mas file is a recipe for launching a MAS: • which agent processes will be created • a launch policy specifies when, which and how many agent processes will be created. • launch maker:coffeemaker. launches one agent process called maker using the agent file referenced by coffeemaker (coffeemaker.goal). • does not connect agent to an environment. launchpolicy { launch maker:coffeemaker. launch grinder:coffeegrinder. }

  43. MAS Specification A .mas file is a recipe for launching a MAS: • which agent processes will be created • a conditionallaunch rule is triggered by the environment: whenever a controllable entity becomes available in the environment, an event is generated. • the agent created by the launch part of the rule is connected to that entity. launchpolicy { when entity@env do launch elevator : file1. }

  44. MAS Specification A .mas file is a recipe for launching a MAS: • additional checks in launch rule • this launch rule can only be applied if there is an available entity of type car, and the rule can be applied at most 3 times. Remark: launch rules are applied in linear order. launchpolicy { when [type=car,max=3]@env do launch elevator:file1. }

  45. MAS Specification: Example A .mas file is a recipe for launching a MAS: • environment section may be empty, in that case mas is run without an environment. • agentfiles and launchpolicy must be non-empty. agentfiles { "coffeemaker.goal". "coffeegrinder.goal". } launchpolicy { launch maker:coffeemaker. launch grinder:coffeegrinder. }

  46. Agent Identity and Other Agents How does an agent know it is not alone? • The names of all agents generated by Goal are inserted in the belief base of all other agents. • For example, agent(tarzan) is inserted in the belief base of agent jane when tarzan is created. How is an agent able to differentiate itself from other agents? I.e. how does agent jane know she is not tarzan? • Upon creation, the fact me(<name>)where name is the agent’s name is inserted in the belief base of that agent.

  47. Communication in Goal

  48. Communication: Primitives • Communication primitives: • send(<recipients>, <content>) • sendonce(<recipients>, <content>) • Example: Tarzan sends Jane a message: • send(jane, meeting(date(1,2,2010), time(12,0), duration(1,0), [jane, tarzan]))

  49. GOAL Agent Architecture • The basis of communication in GOAL is a simple mailbox semantics. Agent message Beliefs Process message action Action Rules percept Process percepts Goals Environment Real or simulated world of events

  50. Communication: Semantics Action: send(<recipients>, <content>) • ground send action can always be performed, i.e. precondition is true, • assume agent sender sends message to recipients • then GOAL puts sent(<recipients>, <content>) in the mailbox of sender, • agents that receive message put received(sender, <content>) in their mailbox. NB: keep in mind it may take some time before agent b receives the message.

More Related