[* based in part on slides by Jim Blythe and Dan Weld]

Slides:



Advertisements
Similar presentations
Planning II: Partial Order Planning
Advertisements

Causal-link Planning II José Luis Ambite. 2 CS 541 Causal Link Planning II Planning as Search State SpacePlan Space AlgorithmProgression, Regression POP.
Constraint Based Reasoning over Mutex Relations in Graphplan Algorithm Pavel Surynek Charles University, Prague Czech Republic.
CLASSICAL PLANNING What is planning ?  Planning is an AI approach to control  It is deliberation about actions  Key ideas  We have a model of the.
Artificial Intelligence Constraint satisfaction problems Fall 2008 professor: Luigi Ceccaroni.
Finding Search Heuristics Henry Kautz. if State[node] is not in closed OR g[node] < g[LookUp(State[node],closed)] then A* Graph Search for Any Admissible.
1 Graphplan José Luis Ambite * [* based in part on slides by Jim Blythe and Dan Weld]
Plan Generation & Causal-Link Planning 1 José Luis Ambite.
1 Complexity of domain-independent planning José Luis Ambite.
Planning with Constraints Graphplan & SATplan Yongmei Shi.
Action Cook Prec: CleanHands Effects: Dinner Action Wrap Prec: Quiet Effects: Present Action Carry Prec: Effects: ~Garbage AND ~CleanHands Action Dolly.
Graph-based Planning Brian C. Williams Sept. 25 th & 30 th, J/6.834J.
Planning Graphs * Based on slides by Alan Fern, Berthe Choueiry and Sungwook Yoon.
For Monday Finish chapter 12 Homework: –Chapter 13, exercises 8 and 15.
Planning CSE 473 Chapters 10.3 and 11. © D. Weld, D. Fox 2 Planning Given a logical description of the initial situation, a logical description of the.
Fast Planning through Planning Graph Analysis By Jan Weber Jörg Mennicke.
AI – Week AI Planning – Plan Generation Algorithms: GraphPlan Lee McCluskey, room 2/09
Classical Planning via State-space search COMP3431 Malcolm Ryan.
Artificial Intelligence Chapter 11: Planning
Planning: Part 3 Planning Graphs COMP151 April 4, 2007.
Extending Graphplan to handle Resources Presenter: Pham Van Cuong Department of Computer Science New Mexico State University.
Planning II CSE 473. © Daniel S. Weld 2 Logistics Tournament! PS3 – later today Non programming exercises Programming component: (mini project) SPAM detection.
1 Planning Chapters 11 and 12 Thanks: Professor Dan Weld, University of Washington.
Classical Planning via State-space search COMP3431 Malcolm Ryan.
Planning II CSE 573. © Daniel S. Weld 2 Logistics Reading for Wed Ch 18 thru 18.3 Office Hours No Office Hour Today.
An Introduction to Artificial Intelligence CE Chapter 11 – Planning Ramin Halavati In which we see how an agent can take.
Classical Planning Chapter 10.
GraphPlan Alan Fern * * Based in part on slides by Daniel Weld and José Luis Ambite.
For Wednesday Read chapter 12, sections 3-5 Program 2 progress due.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Jonathon Doran. The Planning Domain A domain describes the objects, facts, and actions in the universe. We may have a box and a table in our universe.
Homework 1 ( Written Portion )  Max : 75  Min : 38  Avg : 57.6  Median : 58 (77%)
Midterm Review Prateek Tandon, John Dickerson. Basic Uninformed Search (Summary) b = branching factor d = depth of shallowest goal state m = depth of.
For Monday Read chapter 12, sections 1-2 Homework: –Chapter 10, exercise 3.
1 Chapter 16 Planning Methods. 2 Chapter 16 Contents (1) l STRIPS l STRIPS Implementation l Partial Order Planning l The Principle of Least Commitment.
Introduction to Planning Dr. Shazzad Hosain Department of EECS North South Universtiy
AI Lecture 17 Planning Noémie Elhadad (substituting for Prof. McKeown)
Graphplan/ SATPlan Chapter Some material adapted from slides by Jean-Claude Latombe / Lise Getoor.
Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)
Graphplan.
Robust Planning using Constraint Satisfaction Techniques Daniel Buettner and Berthe Y. Choueiry Constraint Systems Laboratory Department of Computer Science.
© Daniel S. Weld 1 Logistics Travel Wed class led by Mausam Week’s reading R&N ch17 Project meetings.
Graphplan: Fast Planning through Planning Graph Analysis Avrim Blum Merrick Furst Carnegie Mellon University.
Automated Planning and Decision Making Prof. Ronen Brafman Automated Planning and Decision Making Graphplan Based on slides by: Ambite, Blyth and.
Graphplan CSE 574 April 4, 2003 Dan Weld. Schedule BASICS Intro Graphplan SATplan State-space Refinement SPEEDUP EBL & DDB Heuristic Gen TEMPORAL Partial-O.
1 GraphPlan, Satplan and Markov Decision Processes Sungwook Yoon* * Based in part on slides by Alan Fern.
Heuristic Search Planners. 2 USC INFORMATION SCIENCES INSTITUTE Planning as heuristic search Use standard search techniques, e.g. A*, best-first, hill-climbing.
1 Chapter 6 Planning-Graph Techniques. 2 Motivation A big source of inefficiency in search algorithms is the branching factor  the number of children.
The Theory of NP-Completeness
An Introduction to Artificial Intelligence CE 40417
Planning as Satisfiability
Planning as Search State Space Plan Space Algorihtm Progression
Classical Planning via State-space search
Temporal Graphplan David E. Smith & Dan Weld.
Class #17 – Thursday, October 27
Planning José Luis Ambite.
Graph-based Planning Slides based on material from: Prof. Maria Fox
Graphplan/ SATPlan Chapter
Planning CSE 473 AIMA, 10.3 and 11.
Planning Problems On(C, A)‏ On(A, Table)‏ On(B, Table)‏ Clear(C)‏
Class #19 – Monday, November 3
Chapter 6 Planning-Graph Techniques
The Theory of NP-Completeness
Graphplan/ SATPlan Chapter
Graphplan/ SATPlan Chapter
GraphPlan Jim Blythe.
Instructor: Aaron Roth
An Introduction to Planning Graph
Graph-based Planning Slides based on material from: Prof. Maria Fox
Presentation transcript:

[* based in part on slides by Jim Blythe and Dan Weld] Graphplan José Luis Ambite* [* based in part on slides by Jim Blythe and Dan Weld]

Basic idea Construct a graph that encodes constraints on possible plans Use this “planning graph” to constrain search for a valid plan: If valid plan exists, it’s a subgraph of the planning graph Planning graph can be built for each problem in polynomial time

Problem handled by GraphPlan* Pure STRIPS operators: conjunctive preconditions no negated preconditions no conditional effects no universal effects Finds “shortest parallel plan” Sound, complete and will terminate with failure if there is no plan. *Version in [Blum& Furst IJCAI 95, AIJ 97], later extended to handle all these restrictions [Koehler et al 97]

Planning graph Directed, leveled graph 2 types of nodes: Proposition: P Action: A 3 types of edges (between levels) Precondition: P -> A Add: A -> P Delete: A -> P Proposition and action levels alternate Action level includes actions whose preconditions are satisfied in previous level plus no-op actions (to solve frame problem).

Rocket domain

Planning graph …

Constructing the planning graph Level P1: all literals from the initial state Add an action in level Ai if all its preconditions are present in level Pi Add a precondition in level Pi if it is the effect of some action in level Ai-1 (including no-ops) Maintain a set of exclusion relations to eliminate incompatible propositions and actions (thus reducing the graph size) P1 A1 P2 A2 … Pn-1 An-1 Pn

Mutual Exclusion relations Two actions (or literals) are mutually exclusive (mutex) at some stage if no valid plan could contain both. Two actions are mutex if: Interference: one clobbers others’ effect or precondition Competing needs: mutex preconditions Two propositions are mutex if: All ways of achieving them are mutex

Mutual Exclusion relations Inconsistent Effects Interference (prec-effect) Competing Needs Inconsistent Support

Dinner Date example Initial Conditions: (and (garbage) (cleanHands) (quiet)) Goal: (and (dinner) (present) (not (garbage)) Actions: Cook :precondition (cleanHands) :effect (dinner) Wrap :precondition (quiet) :effect (present) Carry :precondition :effect (and (not (garbage)) (not (cleanHands)) Dolly :precondition :effect (and (not (garbage)) (not (quiet)))

Dinner Date example

Dinner Date example

Propositions monotonically increase (always carried forward by no-ops) Observation 1 p ¬q ¬r p q ¬q ¬r p q ¬q r ¬r p q ¬q r ¬r A A A B B Propositions monotonically increase (always carried forward by no-ops)

Observation 2 Actions monotonically increase p ¬q ¬r p q ¬q ¬r p q ¬q

Observation 3 Proposition mutex relationships monotonically decrease p q r … p q r … p q r … A Proposition mutex relationships monotonically decrease

Observation 4 Action mutex relationships monotonically decrease A A A q … p q r s … p q r s … p q r s … B B B C C C Action mutex relationships monotonically decrease

Observation 5 Planning Graph ‘levels off’. After some time k all levels are identical Because it’s a finite space, the set of literals never decreases and mutexes don’t reappear.

Valid plan A valid plan is a planning graph where: Actions at the same level don’t interfere Each action’s preconditions are made true by the plan Goals are satisfied

GraphPlan algorithm Grow the planning graph (PG) until all goals are reachable and not mutex. (If PG levels off first, fail) Search the PG for a valid plan If non found, add a level to the PG and try again

Searching for a solution plan Backward chain on the planning graph Achieve goals level by level At level k, pick a subset of non-mutex actions to achieve current goals. Their preconditions become the goals for k-1 level. Build goal subset by picking each goal and choosing an action to add. Use one already selected if possible. Do forward checking on remaining goals (backtrack if can’t pick non-mutex action)

Plan Graph Search If goals are present & non-mutex: Choose action to achieve each goal Add preconditions to next goal set

Termination for unsolvable problems Graphplan records (memoizes) sets of unsolvable goals: U(i,t) = unsolvable goals at level i after stage t. More efficient: early backtracking Also provides necessary and sufficient conditions for termination: Assume plan graph levels off at level n, stage t > n If U(n, t-1) = U(n, t) then we know we’re in a loop and can terminate safely.

Dinner Date example Initial Conditions: (and (garbage) (cleanHands) (quiet)) Goal: (and (dinner) (present) (not (garbage)) Actions: Cook :precondition (cleanHands) :effect (dinner) Wrap :precondition (quiet) :effect (present) Carry :precondition :effect (and (not (garbage)) (not (cleanHands)) Dolly :precondition :effect (and (not (garbage)) (not (quiet)))

Dinner Date example

Dinner Date example

Dinner Date example

Planning Graph Example Rocket problem

Plan Graph creation is Polynomial Theorem 1: The size of the t-level PG and the time to create it are polynomial in t = number of levels n = number of objects m = number of operators p = propositions in the initial state Max nodes proposition level: O(p+mlnk) Max nodes action level: O(mnk) k = largest number of action parameters, constant!