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.

Slides:



Advertisements
Similar presentations
UNIT-3 PLANNING AI Planning Prepared by N. Sathish Kumar AP
Advertisements

REVIEW : Planning To make your thinking more concrete, use a real problem to ground your discussion. –Develop a plan for a person who is getting out of.
Language for planning problems
CSE391 – 2005 NLP 1 Planning The Planning problem Planning with State-space search.
Planning Module THREE: Planning, Production Systems,Expert Systems, Uncertainty Dr M M Awais.
Planning Module THREE: Planning, Production Systems,Expert Systems, Uncertainty Dr M M Awais.
Planning Chapter 11 Yet another popular formulation for AI – Logic-based language – One of the most structured formulations Can be translate into less.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
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.
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.
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.
Artificial Intelligence 2005/06
AI – Week AI Planning – Plan Generation Algorithms: GraphPlan Lee McCluskey, room 2/09
Classical Planning via State-space search COMP3431 Malcolm Ryan.
Planning Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 11.
Artificial Intelligence Chapter 11: Planning
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
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.
Handling non-determinism and incompleteness. Problems, Solutions, Success Measures: 3 orthogonal dimensions  Incompleteness in the initial state  Un.
Planning II CSE 473. © Daniel S. Weld 2 Logistics Tournament! PS3 – later today Non programming exercises Programming component: (mini project) SPAM detection.
Planning Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 11.
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.
For Wednesday Read chapter 12, sections 3-5 Program 2 progress due.
Feng Zhiyong Tianjin University Fall planning.
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.
April 3, 2006AI: Chapter 11: Planning1 Artificial Intelligence Chapter 11: Planning Michael Scherger Department of Computer Science Kent State University.
Homework 1 ( Written Portion )  Max : 75  Min : 38  Avg : 57.6  Median : 58 (77%)
CPS 270: Artificial Intelligence Planning Instructor: Vincent Conitzer.
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.
Automated Planning Dr. Héctor Muñoz-Avila. What is Planning? Classical Definition Domain Independent: symbolic descriptions of the problems and the domain.
Introduction to Planning Dr. Shazzad Hosain Department of EECS North South Universtiy
AI Lecture 17 Planning Noémie Elhadad (substituting for Prof. McKeown)
1/16 Planning Chapter 11- Part1 Author: Vali Derhami.
Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)
Graphplan.
© Daniel S. Weld 1 Logistics Travel Wed class led by Mausam Week’s reading R&N ch17 Project meetings.
Planning I: Total Order Planners Sections
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.
April 3, 2006AI: Chapter 11: Planning1 Artificial Intelligence Chapter 11: Planning.
Consider the task get milk, bananas, and a cordless drill.
Heuristic Search Planners. 2 USC INFORMATION SCIENCES INSTITUTE Planning as heuristic search Use standard search techniques, e.g. A*, best-first, hill-climbing.
CLASSICAL PLANNING. Outline  The challenges in planning with standard search algorithm  Representing Plans – the PDDL language  Planning as state -
1 Chapter 6 Planning-Graph Techniques. 2 Motivation A big source of inefficiency in search algorithms is the branching factor  the number of children.
An Introduction to Artificial Intelligence CE 40417
Classical Planning via State-space search
Consider the task get milk, bananas, and a cordless drill
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 573 A handful of GENERAL SEARCH TECHNIQUES lie at the heart of practically all work in AI We will encounter the SAME PRINCIPLES again and.
Planning Problems On(C, A)‏ On(A, Table)‏ On(B, Table)‏ Clear(C)‏
Class #19 – Monday, November 3
Chapter 6 Planning-Graph Techniques
Graphplan/ SATPlan Chapter
Graphplan/ SATPlan Chapter
GraphPlan Jim Blythe.
An Introduction to Planning Graph
Graph-based Planning Slides based on material from: Prof. Maria Fox
[* based in part on slides by Jim Blythe and Dan Weld]
Presentation transcript:

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 world  Model describes states and actions  Give the planner a goal and it outputs a plan  Aim for domain independence  Planning is search

Classical planning restrictions 1. S is finite 2. Environment is fully observable 3. Environment is deterministic 4. Environment is static ( no external events ) 5. S has a factored representation 6. Goals are restricted to reachability 7. Plans are ordered sequences of actions 8. Actions have no duration 9. Planning is done offline

Planning Languages  Languages must represent..  States  Goals  Actions  Languages must be  Expressive for ease of representation  Flexible for manipulation by algorithms 5 We will talk about Planning Domain Definition Language ( PDDL )

State Representation  A state is represented with a conjunction of positive literals  Using  Logical Propositions : Poor  Unknown  First order logic literals : At ( Plane 1, OMA )  At ( Plane 2, JFK )  Closed World Assumption  What is not stated are assumed false 6

Goal Representation  Goal is a partially specified state  A proposition satisfies a goal if it contains all the atoms of the goal and possibly others..  Example : Rich  Famous  Miserable satisfies the goal Rich  Famous 7

Representing Actions  Actions are described in terms of preconditions and effects.  Preconditions are predicates that must be true before the action can be applied.  Effects are predicates that are made true ( or false ) after the action has executed.  Sets of similar actions can be expressed as a schema. Example Action…

Applying an Action  Find a substitution list  for the variables using the current state description  Apply the substitution to the propositions in the effect list  Add the result to the current state description to generate the new state  Example :  Current state : At ( P 1, JFK )  At ( P 2, SFO )  Plane ( P 1)  Plane ( P 2)  Airport ( JFK )  Airport ( SFO )  It satisfies the precondition with  ={ p / P 1, from / JFK, to / SFO )  Thus the action Fly ( P 1, JFK, SFO ) is applicable  The new current state is : At ( P 1, SFO )  At ( P 2, SFO )  Plane ( P 1)  Plane ( P 2)  Airport ( JFK )  Airport ( SFO ) 9

Example : Air Cargo

Example : Spare Tire Problem 11

Example : Blocks World

Example : Blocks World 2

Planning through Search  Search the space of states connected by actions  Each action takes a single timestep  Use familiar algorithms  BFS  DFS  A *  …

Forward Search  Forward ( progression ) state - space search, starting in the initial state and using the problem ’ s actions to search forward for the goal state.

Backward Search  Backward ( regression ) state - space search : search starting at the goal state ( s ) and using the inverse of the actions to search backward for the initial state.

Relevant Actions  An action is relevant  In Progression planning, when its preconditions match a subset of the current state  In Regression planning, when its effects match a subset of the current goal state

Forward vs Backward

Planning Graph  A planning graph consists in a sequence of levels that correspond to time steps  Level 0 is the initial state  Each level contains a set of literals that could be true at this time step  Each level contains a set of actions that could be applied at this time step

Have Cake and Eat it Too Init ( Have ( Cake )) Goal ( Have ( Cake ) ∧ Eaten ( Cake )) Action ( Eat ( Cake ) PRECOND : Have ( Cake ) EFFECT : ¬ Have ( Cake ) ∧ Eaten ( Cake )) Action ( Bake ( Cake ) PRECOND : ¬ Have ( Cake ) EFFECT : Have ( Cake ))

Planning Graph  Level A 0 contains all the actions that could occur in state S 0.  Persistence actions ( small boxes ) represent the fact that one literal is not modified.  Mutual exclusions ( mutexes, gray lines ) represent conflicts between actions.  To go from level 0 to the level 1, you pick a set of non exclusives actions ( for instance, action Eat ( Cake ))  Level S 1 contains all the literals that could result from picking any subset of actions in A 0.  Mutexes represent conflicts between literals.

How to build the planning graph

Mutexes  A mutex between two actions indicates that it is impossible to perform these actions in parallel.  A mutex between two literals indicates that it is impossible to have these both literals true at this stage.

How to compute mutexes  Actions  Inconsistent effects : two actions that lead to inconsistent effects  Interference : an effect of the first action negates the precondition of the other action  Competing needs : a precondition of the first action is mutually exclusive with a precondition of the second action.  Literals  one literal is the negation of the other one  Inconsistency support : each pair of action achieving the two literals are mutually exclusive.

 Inconsistent effects : Eat ( Cake ) & noop of Have ( Cake ) disagree on effect Have ( Cake )  Interference : Eat ( Cake ) negates precondition of the noop of Have ( Cake )  Competing needs : Bake ( Cake ) & Eat ( Cake ): compete on Have ( Cake ) precondition

 In S 1, Have ( Cake ) & Eaten ( Cake ) are mutex  In S 2, they are not because Bake ( Cake ) & the noop of Eaten ( Cake ) are not mutex

Plan Graph Summary  Continue until two consecutive levels are identical.  Graph indicates which actions are not executable in parallel  Construction polynomial  No choice which action to take, only indicate which are forbidden to occur in parallel

Planning graph for heuristic search  Using the planning graph to estimate the number of actions to reach a goal  If a literal does not appear in the final level of the planning graph, then there is no plan that achieve this literal !  h = ∞

Heuristics  max - level : take the maximum level where any literal of the goal first appears  admissible  level - sum : take the sum of the levels where any literal of the goal first appears  not admissible, but generally efficient ( specially for independent subplans )  set - level : take the minimum level where all the literals of the goal appear and are free of mutex  admissible

Graphplan Algorithm  Extracts a plan directly from the plan graph G RAPH P LAN (problem) returns solution or failure graph  I NITIAL P LANNING G RAPH (problem) goals  G OALS [problem] loop do if goals all non-mutex in last level of graph then do solution  E XTRACT S OLUTION (graph,goals,L ENGTH (graph)) if solution  failure then return solution else if N O S OLUTION P OSSIBLE (graph) then return failure graph  E XPAND G RAPH (graph,problem)

Questions ?