CoABS Grid Component: MultiLevel Coordination Agent Edmund H. Durfee (PI) Brad Clement, Pradeep Pappachan, and Jeff Cox (GSRAs) University of Michigan.

Slides:



Advertisements
Similar presentations
System Integration and Performance
Advertisements

Adopt Algorithm for Distributed Constraint Optimization
Some questions o What are the appropriate control philosophies for Complex Manufacturing systems? Why????Holonic Manufacturing system o Is Object -Oriented.
The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
Planning with Resources at Multiple Levels of Abstraction Brad Clement, Tony Barrett, Gregg Rabideau Artificial Intelligence Group Jet Propulsion Laboratory.
Describing Process Specifications and Structured Decisions Systems Analysis and Design, 7e Kendall & Kendall 9 © 2008 Pearson Prentice Hall.
GridRPC Sources / Credits: IRISA/IFSIC IRISA/INRIA Thierry Priol et. al papers.
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
Effective Coordination of Multiple Intelligent Agents for Command and Control The Robotics Institute Carnegie Mellon University PI: Katia Sycara
Software Architecture for DSD DSD Team. Overview What is software architecture and why is it so important? The role of architecture in determining system.
Copyright © Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved. Software Connectors.
GridFlow: Workflow Management for Grid Computing Kavita Shinde.
Agent Mediated Grid Services in e-Learning Chun Yan, Miao School of Computer Engineering Nanyang Technological University (NTU) Singapore April,
Software Connectors. Attach adapter to A Maintain multiple versions of A or B Make B multilingual Role and Challenge of Software Connectors Change A’s.
Performance of Coordinating Concurrent Hierarchical Planning Agents Using Summary Information Brad Clement and Ed Durfee University of Michigan Artificial.
Introduction and Overview “the grid” – a proposed distributed computing infrastructure for advanced science and engineering. Purpose: grid concept is motivated.
Redesigning the Organization with Information System
Extensible Scalable Monitoring for Clusters of Computers Eric Anderson U.C. Berkeley Summer 1997 NOW Retreat.
1 © Wolfgang Pelz UML2 UML Part Two. 2 © Wolfgang Pelz UML2 Chapters Four & Twelve Interaction Diagrams.
Opportunistic Optimization for Market-Based Multirobot Control M. Bernardine Dias and Anthony Stentz Presented by: Wenjin Zhou.
Object-Orientated Design Unit 3: Objects and Classes Jin Sa.
Chapter 7 design rules.
Software Architecture Quality. Outline Importance of assessing software architecture Better predict the quality of the system to be built How to improve.
SE-565 Software System Requirements More UML Diagrams.
The chapter will address the following questions:
Kendall & KendallCopyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 9 Kendall & Kendall Systems Analysis and Design, 9e Process Specifications.
What is Software Architecture?
LÊ QU Ố C HUY ID: QLU OUTLINE  What is data mining ?  Major issues in data mining 2.
Chapter 7 Requirement Modeling : Flow, Behaviour, Patterns And WebApps.
PMIT-6102 Advanced Database Systems
Designing and Evaluating Parallel Programs Anda Iamnitchi Federated Distributed Systems Fall 2006 Textbook (on line): Designing and Building Parallel Programs.
ARGONNE  CHICAGO Ian Foster Discussion Points l Maintaining the right balance between research and development l Maintaining focus vs. accepting broader.
Introduction: Databases and Database Users
CoAX Stand-alone Contributions DARPA Briefing - November 2000 Dartmouth College, UMichigan, MIT Sloan, Coalition Agents eXperiment (CoAX)
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
Chapter 3 Parallel Algorithm Design. Outline Task/channel model Task/channel model Algorithm design methodology Algorithm design methodology Case studies.
ANTs PI Meeting, Nov. 29, 2000W. Zhang, Washington University1 Flexible Methods for Multi-agent distributed resource Allocation by Exploiting Phase Transitions.
Describing Process Specifications and Structured Decisions Systems Analysis and Design, 7e Kendall & Kendall 9 © 2008 Pearson Prentice Hall.
Programming Models & Runtime Systems Breakout Report MICS PI Meeting, June 27, 2002.
A performance evaluation approach openModeller: A Framework for species distribution Modelling.
4.2.1 Programming Models Technology drivers – Node count, scale of parallelism within the node – Heterogeneity – Complex memory hierarchies – Failure rates.
Chapter 13 Architectural Design
The Deep Space Network Scheduling Problem Brad Clement, Mark Johnston Artificial Intelligence Group Jet Propulsion Laboratory California Institute of Technology.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Parallel dynamic batch loading in the M-tree Jakub Lokoč Department of Software Engineering Charles University in Prague, FMP.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
SOFTWARE DESIGN. INTRODUCTION There are 3 distinct types of activities in design 1.External design 2.Architectural design 3.Detailed design Architectural.
CS 484 Designing Parallel Algorithms Designing a parallel algorithm is not easy. There is no recipe or magical ingredient Except creativity We can benefit.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
Banaras Hindu University. A Course on Software Reuse by Design Patterns and Frameworks.
SM Sec.1 Dated 13/11/10 STRATEGY & STRUCTURE Group 3.
ANASOFT VIATUS. Challenges Supply chain optimization is necessary for achieving competitive price of final products Synchronization and utilization of.
Develop Schedule is the Process of analyzing activity sequences, durations, resource requirements, and schedule constraints to create the project schedule.
Intelligent Agents: Technology and Applications Unit Five: Collaboration and Task Allocation IST 597B Spring 2003 John Yen.
1.3 Operating system services An operating system provide services to programs and to the users of the program. It provides an environment for the execution.
Regression Testing with its types
TÆMS-based Execution Architectures
Parallel and Distributed Simulation Techniques
Database Performance Tuning and Query Optimization
Brad Clement and Ed Durfee Artificial Intelligence Laboratory
Brad Clement and Ed Durfee Artificial Intelligence Laboratory
CIS 488/588 Bruce R. Maxim UM-Dearborn
SAMANVITHA RAMAYANAM 18TH FEBRUARY 2010 CPE 691
Chapter 11 Database Performance Tuning and Query Optimization
Brad Clement and Ed Durfee University of Michigan
Multilevel Mission Coordination for Coalition Operations
Multidisciplinary Optimization
Presentation transcript:

CoABS Grid Component: MultiLevel Coordination Agent Edmund H. Durfee (PI) Brad Clement, Pradeep Pappachan, and Jeff Cox (GSRAs) University of Michigan August 2000

The Problem Networked execution infrastructure permits distributed, asynchronous initiation of tasks Tasks originating from different sources might impose conflicting conditions on resources, services, and states of the world Exactly which conditions matter might be decided during execution, and change dynamically Identifying which (often few) conditions require coordination (typically negotiation), when, and in what (temporal) combinations is non-trivial Negotiating over everything “just in case” can be wasteful, possibly myopic, and pose scaling difficulties

Manifestation in Coalitions Joint Mission/Exercise with objectives/ responsibilities distributed among multiple functional teams with their own human and computational agents Operational choices by a functional team can unintentionally (infrequently) affect what others should or even can ultimately do (e.g., friendly fire) Grid service to ensure that these interactions are efficiently predicted and effectively resolved Resulting joint plan should: –Support efficient (fast, parallel) execution –Preserve room for some local run-time improvisation –Avoid unnecessarily costly actions –Require realistic runtime messaging load

Example Coalition Scenario

Example Coalition Plan Libraries MOVE CARGO (C1,C2) LHQ ->AF AF -> DEST FLY C1->AF FLY C2->AF FLY C1->AF C1->PC2->F C1->P AF->RS RS->PAF->G G->F AF->GG->FAF->RS RS->P LOGISTICS CONSTRAINTS: 1. AF USAGE REQUIRES AF CLAIM 2. TD USAGE REQUIRES TD CLAIM

Example Coalition Plan Libraries FLY SORTIES (EHQ, E,C) SORTIE ESORTIE C SORTIE E OCCUPY EHQ MOVE B->DOCCUPY EHQ MOVE D->EHQ MOVE D->EMOVE E->EHQ MOVE TO P MOVE A->RSMOVE RS->P AIRFORCE ARMYDIV1 ARMYDIV2 CONSTRAINTS: 1. SORTIES REQUIRE AF CLAIM (AIRFORCE) 2. TD USAGE REQUIRES TD CLAIM (ARMYDIV1) 3. TRANSPORT OF TROOPS REQUIRES (ARMYDIV2) 3a. NO AIRFORCE ACTIVITY AT DEST 3b. ROAD FOR TRANSPORT USABLE

Example Coalition Coordination Given the initial situation, each of the functional teams is able to formulate a successful plan But each of the plans can affect conditions faced by other plans Some selections and timings of activities lead to failure on the parts of some plans (e.g., shipment moved by logistics blocks troop movements) Coordination invests appropriate effort to impose just enough constraints on timings and activities to ensure successful and efficient accomplishment Coordination spans: –Complete sequentialization (turntaking) among teams –Complex ballet of interleaved and overlapping activities

Main Solution Ideas Conditions to meet (on resource assignments, environmental parameters, etc.) are typically associated with plans that pursue tasks Plans can be represented hierarchically, where abstract levels summarize the (alternative) activities they encompass Abstract plan spaces can be searched more efficiently (top-down) to discover potential conflicts and to evaluate potential resolutions Choosing the right level for finding and resolving conflicts can balance coordination effort with the quality of concurrent activity and plan robustness

Top-Down Coordination Search temporal constraints blocked Agents model as little as they can about others Abstract resolutions obviate the need for deeper ones Abstract resolutions leave more room for improvisation Reasoning at abstract levels is supported by “summary information” from the deeper “and/or” plan tree Interleaved coordination and execution postpones choices until they must be made

Tradeoffs coordination levels crisper coordination lower cost more flexibility Flexibility matters in environments where “plan-then-execute” won’t work Coordination “crispness” matters when overall elapsed time is critical Cost matters when bandwidth/computation are slow, expensive, shared

MCA Component Capabilities: Prior to Planning/Coordination Analysis of an agent’s library of possible plans: Accepts a plan library (HTN, PRS,…) Generates “summary information” (pre, in, and post conditions that must or may hold) Generates a temporal constraint network (permissible temporal relations between primitive actions)

MCA Component Capabilities: During Planning/Coordination Detection/resolution of conflicts between plans: Accepts specific choices of plans from agents Works top-down to isolate potential conflicts Recommends constraints on agent choices (“or” branches) and on timing (synchronization messages) to eliminate conflicts Given more time, finds “crisper” solutions corresponding to more complicated (overlapping) temporal constraints

MCA Component Capabilities: During Execution Detection/resolution of conflicts between plans: Requests/accepts specific elaborations of plans at execution (allows postponement until needed) Works top-down by “blocking” potentially problematic abstract plan steps until details are worked out Plan synchronization is accomplished by the blocking and unblocking imposed by the MCA At the cost of increased centralization (among interacting agent clusters), maximizes runtime flexibility by adopting a least-commitment strategy

Demonstration MCA as applied to our example coalition scenario (not militarily generated yet) Emphasis on coordination among functional teams that could separately achieve goals MCA demonstrated with communication through files rather than Grid –MCA also up-and-running on Grid but… –Combination of C++ MCA, BBN’s proxy code, the Grid, and Linux is flaky Very simple visualization tools

Demonstration (1): Preplanning Four independently-planning team commanders: Logistics, AirForce, ArmyDivisions 1 and 2 form/hold plan libraries of alternative SOPs MCA advertises coordination service and is matched to agents who need coordination Team agents send libraries to MCA MCA sends each agent annotated SOPs containing summary information MCA updates its temporal constraint network capturing temporal relationships allowed between plans’ actions

Demonstration (2): Planning Agents, having objectives, each select an abstract plan (and thus hierarchy below) MCA receives agents’ plan choices MCA conducts top-down search, detecting potential conflicts and constructing candidate resolutions at increasingly detailed levels Selection of a resolution performed (possibly through interface to human commander) Chosen coordinated plan is executed

Demonstration (3): Execution Planning interleaved with execution Agents send top-level plans to MCA MCA permits some to proceed, blocks those which could cause interference, and can request plan elaborations (selected by agents) Elaborations can be returned after some execution, postponing choices (least-commit) Allows agents to avoid commitment to actions (e.g., choices of routes) that turn out to be undesirable as the situation unfolds

Conclusion MCA provides a service that will be of use to a subset of Grid users Emphasizes issues of control in ABS where activities are initiated from multiple sources Ongoing/future efforts include: –Developing quantitative coordination measures involving cost, flexibility, and crispness –Introducing metric (non-boolean) conditions –Extending to non-episodic coordination problems –Characterizing how different hierarchical plan structures impact coordination efficiency/quality –Caching coordination decisions for reuse –Formulating militarily-relevant test cases that examine potential coalition process improvements