Multi-Tier Communication Abstractions for Distributed Multi- Agent Systems Michael Thome [email protected]
Jan 19, 2016
Multi-Tier Communication Abstractions for Distributed
Multi-Agent Systems
Michael Thome [email protected]
1 Oct 2003 KIMAS03 2
Motivation
• Problem:– Applications naturally imply multiple levels of
interaction abstractions– Cramming multiple levels into a single
implementation protocol is inefficient– Optimal use of CPU versus Bandwidth is difficult
with a single solution
• Solution:– Parallel mechanisms tailored to different
abstractions– Coordinated, interacting mechanisms allow for
balanced resource use
1 Oct 2003 KIMAS03 3
Observations
An Agent as a model of a “real” entity:
Coarse-grain, asynchronous/loosely-coupled, addressable
An Agent as a model of a business logic element:
Fine-grain, tightly-coupled, anonymous
A model of interacting element sets:
Group semantics, group addressable, peering
1 Oct 2003 KIMAS03 4
The Cougaar Solution
• A Plugin is:– Atomic unit of business logic/opaque processing
• An Agent is:– A set of Plugins– An identity (name, address, db key, creds)– A common infrastructure
• A Community is:– A named, addressable group of agents– Maintained by another agent as a service
1 Oct 2003 KIMAS03 5
Technical approach
• Plugin– Tightly coupled, sequential, influence restricted to an agent– Implemented using shared memory, transactional
blackboard
• Agent– Agents generally are loosely-coupled, operate in parallel,
interacts as peer to other agents– Implemented using message passing
• Community– Partially-specified addressing, collective behavior– Group-level semantics and dialects– Implemented as an orthogonal application
1 Oct 2003 KIMAS03 6
Example: a Large Cougaar application
• Entities:– 40 CPUs– 589 Agents– 12465 Plugins (~50 classes)
• Interactions:– 670K agent-agent messages– 16M plugin-plugin interactions (~24i/m)
1 Oct 2003 KIMAS03 7
Example: an Agent network
1 Oct 2003 KIMAS03 8
Example: a Plugin network
1 Oct 2003 KIMAS03 9
Example: Communities of Agents
1 Oct 2003 KIMAS03 10
Conclusion
A hybrid of shared-memory blackboard interactions for tightly coupled members
and distributed message-passing interactions for loosely coupled
members is an effective and efficient solution for complex DMAS applications
1 Oct 2003 KIMAS03 11
For more information…
• BBN Technologies: http://www.bbn.com• Cougaar: http://www.cougaar.org• CougaarForge: http://cougaar.org• UltraLog: http://www.ultralog.net• Other KIMAS03 papers:
– An Infrastructure for Adaptive Control of Multiagent Systems, Kleinmann, et al
– Multi-resolutional Knowledge Representation for Logistics Systems using Prototypes,Properties and Behaviors, Berliner, et al
1 Oct 2003 KIMAS03 12
Backup slides
1 Oct 2003 KIMAS03 13
What’s a Cougaar?
• Primary Application– Military Logistics Planning and execution– Very deep, wide, and complex domain
• Cougaar– DMAS infrastructure tuned for app– Java, OSS, general purpose
• UltraLog– Making Cougaar Applications survivable– Robust, secure, Scalable… adaptively
1 Oct 2003 KIMAS03 14
Alternate Community view