Slides of the Invited Talk at the CAEPIA Workshop on Planning, Scheduling and Temporal Reasoning...
-
Upload
molly-burke -
Category
Documents
-
view
214 -
download
1
Transcript of Slides of the Invited Talk at the CAEPIA Workshop on Planning, Scheduling and Temporal Reasoning...
Slides of the Invited Talk at theCAEPIA Workshop on
Planning, Scheduling and Temporal Reasoning(Held on November 11, 2003 by Alexander Nareyek)
Note that because the slides do not contain the verbal components of the talk, it might be hard or even misleading to
study the document if you did not attend the talk.
The demos are also not included. Most of them are part of the DragonBreath Engine, which can be downloaded at:
http://www.ai-center.com/projects/dragonbreath/
TitleAt the Intersection of Planning and Constraint Programming
AbstractGeneral frameworks for formulating and solving search problems, like constraint programming, integer linear programming or propositional satisfiability, provide
useful means to tackle planning problems. While usually not as efficient as specialized search techniques, general frameworks support a modular and flexible modeling, and readily available solvers already draw on a huge pool of research
on search. This talk will give an overview of related planning approaches, placing special emphasis on constraint programming.
BioAlexander Nareyek received his diploma and Ph.D. from the TU Berlin. Since
2002, he is on an Emmy Noether fellowship of the German Research Foundation (DFG), and is guest researcher at Carnegie Mellon University. His main research interests include the generation and execution of behavior plans for goal-driven
intelligent agents. He is also active in the application area of computer games and serves as chairperson of the IGDA's Artificial Intelligence Interface Standards
Committee (AIISC).
At the Intersection ofPlanning and Constraint
Programming
Alexander Nareyek
Carnegie Mellon University
5
0
1
Action Planning
Action Types: • Preconditions• State changes• (Operations)
Goals: • Satisfaction• Optimization
own.location == Bridge
own.location = River
jump()
own.location == Sauna
Maximize number ofjump() until 6pm
Extensions: • Temporal planning• Numerical values & Resources…• Real-time computation• Open world• Highly complex goals• Social interaction• Incomplete knowledge• External events• Dynamics
Efficiency Trade-Offs
FlexibilityExpressivenessEfficiency
Application-specificsolutions
Very general andmodular solutions
“Conventional” Planning Modal Logics
Propositional Satisfiability (SAT)
• Specifying a problem by a conjunctive normal form (a conjunction of disjunctions)
• Example:(A or ¬B or C) and (¬A or D)
• Many ways to represent a planning problem
• Example:At for every action A at time tFt for every fluent F at time t…
Propositional Satisfiability (SAT)
• Bad scaling behavior
• Very hard to express numerical relations
• Domain-specific knowledge is “compiled away”
Disadvantages:
Integer Linear Programming (ILP)
• Specifying a problem by linear inequalities and a linear combination to be minimized or maximized; additional integer constraints
• Example:4x + 3y ≤ 15 int(x) int(y) max(8x + 2y)
• Many ways to represent a planning problem
• Example:At for every action A at time tFt for every fluent F at time t…
Integer Linear Programming (ILP)
• Bad scaling behavior
• Better for problems with limited discreteness
• Domain-specific knowledge is “compiled away”
Disadvantages:
Constraint Programming (CP)
Let’s get hands-on:
DragonBreath Engine Demo
Constraint Programming (CP)
• Local search
• Refinement search
Solution concepts:
A,B,C [1,100]
A < BA + B = C
Propagation:Commitment:
A [1,100] B [2,100] C [3,100]C = 10A [1,8] B [2,9] C = 10A = 1A = 1 B = 9 C = 10
Constraint Programming (CP)
• Modeling/solving full planning by constraint programming
• Using CP technology for subproblems within conventional planning
Constraint Programming (CP)
Constraint posting during a regular planning process
CP Technology for Subproblems
Resource Energy, Energy [0,20]
Action MoveToDoor : Energy 2Action Recharge : Energy 20
Constraint Programming (CP)
Constraint posting during a regular planning process
CP Technology for Subproblems
Simple temporal problems (STPs)
A
B[2,5]
C[3,7]
[2,3] D[1,4]
Constraint Programming (CP)
Constraint posting during a regular planning process
CP Technology for Subproblems
• Passive test on satisfaction
• Limited interaction between CSP solvingand the actual planning process
Constraint Programming (CP)Handling Planning by CP
• Planning with maximal graphs
• Completely capturing planning within constraint programming
Constraint Programming (CP)Handling Planning by CP
Planning with maximal graphs
• All possible plans are included in the CSP (like SAT and ILP approaches)
• Many ways to represent a planning problem
• Example:Do[t] the action performed at time tAdd[‘holding_B’, 3] Do[3] in ADD[‘holding_B’] && Do[3] not in PRE[‘holding_B’]
Constraint Programming (CP)Handling Planning by CP
Completely capturing planning within CP
• Extension of the basic CP paradigm necessary
• Search for constraint graph as part of thesearch process
• Structural Constraint Satisfaction
Constraint Programming (CP)Structural Constraints
Non-Overlap
Sum
ActionTask
DurationStart
ActionTask
DurationStart
LessNonextensibleConventional
Constraint
ExtensibleConventional
Constraint
Variable
ExtensibleConventional
ConstraintExtensible
Object ConstraintExtensible
Object Constraint
Constraint Programming (CP)Structural Constraints
Constraint Programming (CP)Structural Constraints
The EXCALIBUR Agent’s Planning SystemThe Planning Model
The EXCALIBUR Agent’s Planning SystemThe CP Model
Action Resource Constraint
Resource Type
State Resource Constraint
Resource Type
moveAB Action Type Action
Task Constraint
BeginEndOperation
Action Task
Feet
moveAB 35 45
Resource Type
Location
TemporalReference
State
Precondition Task
35 @A
Resource Type
State Task
TemporalReference
Contribution
45 arrive@B
Resource Type
Constraint Programming (CP)The CP Model
Let’s get hands-on:
The EXCALIBUR Agent’s Planning System
Conclusions
For literature references:
Constraints and AI Planningby Alexander Nareyek, Robert Fourer, Eugene C. Freuder, Enrico Giunchiglia, Robert P. Goldman, Henry Kautz, Jussi Rintanen and Austin Tate
• We need efficient AND flexible technology: Constraint programming is great for this!
• For “pure” efficiency gain goals, study the technologies used in constraint programming!