2010 by Elbit Systems | Elbit Systems Proprietary ADAPT:
Abstraction Hierarchies to Succinctly Model Teamwork Meirav Hadad
1, Avi Rosenfeld 2 2 Department of Industrial Engineering,
Jerusalem College of Technology, Jerusalem, Israel 1 Research
Division, Elbit Systems Ltd, Rosh Ha'Ayin 48091, Israel
[email protected], [email protected]
Slide 2
2010 by Elbit Systems | Elbit Systems Proprietary Modeling the
Simulators Teamwork How to Model Teamwork? SharedPlans Steam Taems
Teamcore Bite Limitations of Previous Approaches: Often unclear how
to create formal rules How can we encode the experts knowledge In
previous approaches all rules needed to be defined in advance Very
limiting, especially when dynamics must be considered
Slide 3
2010 by Elbit Systems | Elbit Systems Proprietary Issues
Specific to Simulation Simulator often has relatively limited
resources What is the size of the model? What is the memory amount
needed per agent? How fast is the processing time? Real time
required! Our goal is to simulate hundreds of agents
Slide 4
2010 by Elbit Systems | Elbit Systems Proprietary 4 12 3
Teamwork Example 4
Slide 5
2010 by Elbit Systems | Elbit Systems Proprietary Autonomous
Dynamic Agent Planning for Teamwork Creates two Hierarchical
Planners a group and task planner Uses abstract search techniques
to generally define hierarchies Only during run time are the exact
constraints addressed (elaboration ) 5 Our Solution: ADAPT
Slide 6
2010 by Elbit Systems | Elbit Systems Proprietary 1 2 4 3
Slide 7
ADAPT: What is Novel? ADAPT is an A.I. Teamwork Engine Uses 3
steps Branching Step (very big number of states) Refinement Step
(add the constraints) Pruning Step (very small model) 7
Slide 8
2010 by Elbit Systems | Elbit Systems Proprietary Branching
Step Identifies possible methods for expanding partial plan Get all
the possible methods from library of task methods and group methods
Example of possible task methods for air attack Option 1 Option
2
Slide 9
2010 by Elbit Systems | Elbit Systems Proprietary Refinement
Step Adding information based on constraints (DCOP) 1. Receive the
set of the all possible task methods 2. Receive the set of the all
possible group methods 3. Match the group methods to the task
methods: 1. make intersection between the constraints of task and
group methods 2. match the sub-tasks constraints of to sub-groups,
create sub- constraint vector c 1, c 2, , c n for each matching 4.
Each group member checks its matching level for each sub-
constraint vector and put its matching grade at each method
Slide 10
2010 by Elbit Systems | Elbit Systems Proprietary Refinement
Step
Slide 11
2010 by Elbit Systems | Elbit Systems Proprietary Pruning Step
Remove Unpromising Candidates 1. Assignment and Matching Tables are
built for each method and each method is graded according to the
Task Assignment algorithm 2. The method with the greatest
assignment grade is selected to be elaborated 3. If successful,
association is done
Slide 12
2010 by Elbit Systems | Elbit Systems Proprietary Pruning
Step
Slide 13
2010 by Elbit Systems | Elbit Systems Proprietary A High Level
Overview of the Simulator 13 Group KB Editor Task KB Editor Real
Time Control Group DB Task DB
Slide 14
2010 by Elbit Systems | Elbit Systems Proprietary World State
AI Engine Cooperation Level Decision Maker Association Task Planner
Group Planner Constraints Task Plan Constraints Group plan Group KB
Task KB Real Time Control Failures Handler Perception Action
Re-planning\ Reassignment recommendation General Description of an
ADAPT Agent
Slide 15
2010 by Elbit Systems | Elbit Systems Proprietary Teamwork
State Results BITEADAPT MaxADAPT Average # of
AgentsTaskGroupTaskGroupTaskGroup 55611844537.13.67
862414653839.656.29 1282940068856.866.17
Slide 16
2010 by Elbit Systems | Elbit Systems Proprietary Actual Run
Times
Slide 17
2010 by Elbit Systems | Elbit Systems Proprietary ADAPT =
teamwork into group and task planners Uses abstract search to build
model incrementally Large savings in teamwork model size Example
how ADAPT used in a realistic simulation domain How can ADAPT be
used in other domains? Are the savings dependent on domain
specifics? 17 Conclusion and Future Work