Slides of the Invited Talk at the CAEPIA Workshop on Planning, Scheduling and Temporal Reasoning...

Post on 26-Mar-2015

213 views 1 download

Tags:

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!