Title: Experience with TaskAllocation Coordination Primitive for Building Survivable MultiAgent Systems
1Experience with Task-Allocation Coordination
Primitive for BuildingSurvivable Multi-Agent
Systems
- IEEE KIMAS 2007
- Sarah Siracuse, Ray Tomlinson, Todd Wright, John
Zinky
- BBN Technologies
- May 1, 2007
2Outline
- Survivable Complex Distributed Application
- Characteristics of Logistics Planning and
Stresses
- Cougaar Reference Model
- Task-Allocation Coordination
- Reconciliation Procedure
- Future Directions
3Survivable Complex Distributed Application
4Characteristics of Logistics Planning
The UltraLog logistics planning application
decomposes the planning process into many
lower-level tasks, which are allocated to remote
agents to perform.
Multiple task decomposition with
allocation amongst peers
- System Characteristics
- Non-determinism
- Parallel Asynchronous tasking
- Intrinsic Redundancy
- Rescind and/or Rollback of previous results
- React to changing situation
5Fault ModelInformation System Stresses
Insertion of Rogue PlugIn
Insertion of Rogue Agent
Unauthorized User
Insertion of Corrupt Data
Loss of Agent
- Stresses
- Information Warfare
- Directed Enemy Attacks
- Wartime Loads
- MRC size engagement
- Infrastructure Damage
- 45 Infrastructure Loss
Attempt to Read or Corrupt Messages
Loss of Comms
Loss of Node
6Defenses Against Stresses
Certificate Authority
Signed JAR Files
Dynamic execution policies based on Threatcon l
ocal conditions
Correlation and Verification
User Authentication
Information Pedigree
Adaptivity engines at all levels
Message Encryption
OWL Service Directories
Persistence
- Defenses
- Security
- Scalability
- Robustness
Running Redundancy
Fault Tolerance
Rehydration
Adaptive Comms
Variable Fidelity Processing
Chaos Detection
7Coordination Pattern Enables SurvivabilitySepara
tion of Application from Environment
Agents provide Application Behavior using
Task Decomposition and Allocation Pattern
Environment provides Systemic Adaptation of
Task Allocation Coordination Agents and Environm
ent can be independently developed, tested, and
configured, but operated together
Task Allocation Coordination
Behavior
Behavior
Agent
Agent
BB
BB
Network
8Task Allocation Decomposition
9Task Allocation Characteristics
Provider
Requester
Expander
Allocator
Blackboard
Blackboard
T
T
Task
A
predictor
T
Allocation
A
A
Assessor
Asynchronous Non-deterministic Rescind past deci
sions
Inherent Redundancy Lazy Persistence
10Reconciliation Procedure
Provider
Requester
Expander
Allocator
Blackboard
Blackboard
T
T
Task
A
predictor
T
Allocation
A
A
Assessor
1. Rehydrate node from persistence
2. Detect restart 3. Resend state of your objects
4. Request state of received objects
5. Recalculate changes 6. Rescind conflicts Syst
em is in correct state, but potentially different
state
11Conclusions
- Ultralog was an existence proof that complex
distributed applications could be made
survivable.
- The application business logic is encoded in the
agent society, while system issues are handled by
the agent environment.
- The Task-Allocation coordination pattern fits
naturally with the logistic application, and is
capable of being made survivable and efficient.
- Other coordination patterns, such as relays, can
be used to make other types of agent interactions
survivable.
12Open Systems Research Problems
- Adaptive Knowledge Sharing
- How to automatically and efficiently translate
knowledge betweens heterogeneous agents?
- How can we merge domain ontologies and system
constraints ontologies?
- Coordination
- How do we make coordination first class?
- How to formally specify coordination, in order to
reason about at runtime?
- High-level agent Programming Abstraction
- How to give agents richer and domain-customized
programming support?
- Societies Composition
- How to merge multiple societies to perform a
higher level task?
- How to partition societies into federations to
reduce complexity?
- Reuse
- How to define and create libraries of reusable
coordinations?
- What common set of services to standardize in
order to simplify agent implementation?
- Which reusable generic set of agents to offer for
specific services?
13Open Source Cougaar
- Release 12.2 in March 12, 2007
- 2000 downloads 12.0 release
- 30 downloads rel 12.2 (1 week)
- 46 active hosted projects
- (10 BBN)
- 1400 active users
www.cougaar.org