Plan Generation & Causal-Link Planning 1 José Luis Ambite.

Slides:



Advertisements
Similar presentations
Planning.
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
Planning
Chapter 5 Plan-Space Planning.
1 Planning Chapter CMSC 471 Adapted from slides by Tim Finin and Marie desJardins. Some material adopted from notes by Andreas Geyer-Schulz,
Planning II: Partial Order Planning
Planning Module THREE: Planning, Production Systems,Expert Systems, Uncertainty Dr M M Awais.
Causal-link Planning II José Luis Ambite. 2 CS 541 Causal Link Planning II Planning as Search State SpacePlan Space AlgorithmProgression, Regression POP.
Planning Module THREE: Planning, Production Systems,Expert Systems, Uncertainty Dr M M Awais.
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.
PROBLEM SOLVING AND SEARCH
Classical Planning via Plan-space search COMP3431 Malcolm Ryan.
Situation Calculus for Action Descriptions We talked about STRIPS representations for actions. Another common representation is called the Situation Calculus.
Probabilistic Planning Jim Blythe November 6th. 2 CS 541 Probabilistic planning A slide from August 30th: Assumptions (until October..) Atomic time All.
Computing & Information Sciences Kansas State University Lecture 20 of 42 CIS 530 / 730 Artificial Intelligence Lecture 20 of 42 Introduction to Classical.
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.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Artificial Intelligence 2005/06
Planning Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 11.
Artificial Intelligence Chapter 11: Planning
Planning CSE 473. © Daniel S. Weld Topics Agency Problem Spaces Search Knowledge Representation Reinforcement Learning InferencePlanning Supervised.
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.
CS121 Heuristic Search Planning CSPs Adversarial Search Probabilistic Reasoning Probabilistic Belief Learning.
Automated Planning and HTNs Planning – A brief intro Planning – A brief intro Classical Planning – The STRIPS Language Classical Planning – The STRIPS.
1 Planning Chapters 11 and 12 Thanks: Professor Dan Weld, University of Washington.
Solving problems by searching
Planning II CSE 573. © Daniel S. Weld 2 Logistics Reading for Wed Ch 18 thru 18.3 Office Hours No Office Hour Today.
PLANNING Partial order regression planning Temporal representation 1 Deductive planning in Logic Temporal representation 2.
Classical Planning Chapter 10.
For Wednesday Read chapter 12, sections 3-5 Program 2 progress due.
1 Plan-Space Planning Dr. Héctor Muñoz-Avila Sources: Ch. 5 Appendix A Slides from Dana Nau’s lecture.
Chapter 6: Applying the PSSH. Cognitive Science  José Luis Bermúdez / Cambridge University Press 2010 Overview Explain why ID3 and SHAKEY both count.
1 07. The planning problem 2  Inputs: 1. A description of the world state 2. The goal state description 3. A set of actions  Output: A sequence of actions.
Planning (Chapter 10)
Midterm Review Prateek Tandon, John Dickerson. Basic Uninformed Search (Summary) b = branching factor d = depth of shallowest goal state m = depth of.
For Friday No reading Homework: –Chapter 11, exercise 4.
Automated Planning and Decision Making Prof. Ronen Brafman Automated Planning and Decision Making Partial Order Planning Based on slides by: Carmel.
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
Partial Order Planning 1 Brian C. Williams J/6.834J Sept 16 th, 2002 Slides with help from: Dan Weld Stuart Russell & Peter Norvig.
AI Lecture 17 Planning Noémie Elhadad (substituting for Prof. McKeown)
Goal-based Problem Solving Goal formation Based upon the current situation and performance measures. Result is moving into a desirable state (goal state).
Partial Order Plan Execution 1 Brian C. Williams J/6.834J Sept. 16 th, 2002 Slides with help from: Dan Weld Stuart Russell & Peter Norvig.
CSCI 4310 Lecture 2: Search. Search Techniques Search is Fundamental to Many AI Techniques.
Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Computing & Information Sciences Kansas State University Friday, 20 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 24 of 42 Friday, 20 October.
Planning I: Total Order Planners Sections
Computing & Information Sciences Kansas State University Wednesday, 04 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 17 of 42 Wednesday, 04 October.
Causal-link planning 1 Jim Blythe. 2 USC INFORMATION SCIENCES INSTITUTE Causal Link Planning The planning problem Inputs: 1. A description of the world.
CSE573 Autumn /11/98 Planning Administrative –PS3 due 2/23 –Midterm Friday Last time –regression planning algorithm –introduction to plan-space.
Computing & Information Sciences Kansas State University Friday, 13 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 21 of 42 Friday, 13 October.
Biointelligence Lab School of Computer Sci. & Eng. Seoul National University Artificial Intelligence Chapter 8 Uninformed Search.
Planning (Chapter 10) Slides by Svetlana Lazebnik, 9/2016 with modifications by Mark Hasegawa-Johnson, 9/2017
Classical Planning via State-space search
Introduction Contents Sungwook Yoon, Postdoctoral Research Associate
Planning (Chapter 10)
Class #17 – Thursday, October 27
AI Planning.
Planning José Luis Ambite.
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.
Class #19 – Monday, November 3
Causal-link planning 2 Jim Blythe.
CSE (c) S. Tanimoto, 2002 State-Space Search
Graphplan/ SATPlan Chapter
Graphplan/ SATPlan Chapter
CSE (c) S. Tanimoto, 2004 State-Space Search
Presentation transcript:

Plan Generation & Causal-Link Planning 1 José Luis Ambite

Review Frame problem: How to specify what does not change Qualification problem Hard to specify all preconditions Ramification problem Hard to specify all effects

Review Situation Calculus Successor state axioms: Broken(x, do(s,a))  [a = drop(x)  fragile(x, s)]   b[a=explode(b)  nextTo(b, x, s)]  broken(x,s)    a = repair(x) Preconditions axioms: Poss(pickup(r,x), s)  robot(r)   z  holding(z, x, s)  nextTo(r, x, s) Strips representation Means-ends analysis Networks of Actions (Noah)

Domain-Independent Planning Inputs: Domain Action Theory Problem Instance Description of (initial) state of the world Specification of desired goal behavior Output: sequence of actions that executed in initial state satisfy goal

“Classical Planning” Assumptions Atomic Time Instantaneous actions Deterministic Effects Omniscience Sole agent of change Goals of attainment

Example Problem Instance: “Sussman Anomaly” Initial State: (on-table A) (on C A) (on-table B) (clear B) (clear C) Goal: (on A B) (on B C) AB C A B C Initial State:Goal:

Example Problem Instance: “Sussman Anomaly” Initial State: (and (on-table A) (on C A) (on-table B) (clear B) (clear C)) Goal: (and (on A B) (on B C)) AB C A B C Initial State:Goal:

Action Representation: Propositional STRIPS Move-C-from-A-to-Table: preconditions: (on C A) (clear C) effects: add (on-table C) delete (on C A) add (clear A) Solution to frame problem: explicit effects are the only changes to the state.

Action Representation: Propositional STRIPS Move-C-from-A-to-Table: preconditions: (and (on C A) (clear C)) effects: (and (on-table C) (not (on C A)) (clear A)) Solution to frame problem: explicit effects are the only changes to the state.

Plan Generation: Search space of world states Planning as a (graph) search problem Nodes: world states Arcs: actions Solution: path from the initial state to one state that satisfies the goal Initial state is fully specified There are many goal states

Search Space: Blocks World

Progression: Forward search (I -> G) ProgWS(state, goals, actions, path) If state satisfies goals, then return path else a = choose(actions), s.t. preconditions(a) satisfied in state if no such a, then return failure else return ProgWS(apply(a, state), goals, actions, concatenate(path, a)) First call: ProgWS(IS, G, Actions, ())

Progression Example: Sussman Anomaly I: (on-table A) (on C A) (on-table B) (clear B) (clear C) G: (on A B) (on B C) P(I, G, BlocksWorldActions, ()) P(S1, G, BWA, (move-C-from-A-to-table)) P(S2, G, BWA, (move-C-from-A-to-table, move-B-from-table-to-C)) P(S3, G, BWA, (move-C-from-A-to-table, move-B-from-table-to-C, move-A-from-table-to-B)) G  S3 => Success! Non-Deterministic Choice!

Regression: Backward Search (I <- G) RegWS(init-state, current-goals, actions, path) If init-state satisfies current-goals, then return path else a =choose (actions), s.t. some effect of a satisfies one of current-goals If no such a, then return failure [unachievable*] If some effect of a contradicts some of current-goals, then return failure [inconsistent state] CG’ = current-goals – effects(a) + preconditions(a) If current-goals  CG’, then return failure [useless*] RegWS(init-state, CG’, actions, concatenate(a,path)) First call: RegWS(IS, G, Actions, ())

Regression Example: Sussman Anomaly I: (on-table A) (on C A) (on-table B) (clear B) (clear C) G: (on A B) (on B C) R(I, G, BlocksWorldActions, ()) R(I, ((clear A) (on-table A) (clear B) (on B C)), BWA, (move-A-from-table-to-B)) R(I, ((clear A) (on-table A) (clear B) (clear C), (on-table B)), BWA, (move-B-from-table-to-C, move-A-from-table-to-B)) R(I, ((on-table A) (clear B) (clear C) (on-table B) (on C A)), BWA, (move-C-from-A-to-table, move-B-from-table-to-C, move-A-from-table-to-B)) current-goals  I => Success! Non-Deterministic Choice!

Regression Example: Sussman Anomaly I: (on-table A) (on C A) (on-table B) (clear B) (clear C) G: (on A B) (on B C) P(I, G, BlocksWorldActions, ()) P(S1, G, BWA, (move-C-from-A-to-table)) P(S2, G, BWA, (move-C-from-A-to-table, move-B-from-table-to-C)) P(S3, G, BWA, (move-C-from-A-to-table, move-B-from-table-to-C, move-A-from-table-to-B)) G  S3 => Success! Non-Deterministic Choice!

Progression vs. Regression Both algorithms are: Sound: the result plan is valid Complete: if valid plan exists, they find one Non-deterministic choice => search! Brute force: DFS, BFS, Iterative Deepening,.., Heuristic: A*, IDA*, … Complexity: O(b n ) worst-case b = branching factor, n = |“choose”| Regression: often smaller b, focused by goals Progression: full state to compute heuristics

Total-Order vs Partial-Order Plans

Plan Generation: Search space of plans Partial-Order Planning (POP) Nodes are partial plans Arcs/Transitions are plan refinements Solution is a node (not a path). Principle of “Least commitment” e.g. do not commit to an order of actions until it is required

Partial Plan Representation Plan = (A, O, L), where A: set of actions in the plan O: temporal orderings between actions (a < b) L: causal links linking actions via a literal Causal Link: Action Ac (consumer) has precondition Q that is established in the plan by Ap (producer). move-a-from-b-to-table move-c-from-d-to-b ApAc Q (clear b)

Threats to causal links Step A t threatens link (A p, Q, A c ) if: 1. A t has (not Q) as an effect, and 2. A t could come between A p and A c, i.e. O  (A p < A t < A c ) is consistent What’s an example of an action that threatens the link example from the last slide?

Initial Plan For uniformity, represent initial state and goal with two special actions: A 0 : no preconditions, initial state as effects, must be the first step in the plan. A  : no effects goals as preconditions must be the last step in the plan.

POP algorithm POP((A, O, L), agenda, actions) If agenda = () then return (A, O, L) Pick (Q, a need ) from agenda a add = choose(actions) s.t. Q  effects(a add ) If no such action a add exists, fail. L’ := L  (a add, Q, a need ) ; O’ := O  (a add < a need ) agenda’ := agenda - (Q, a need ) If a add is new, then A := A  a add and  P  preconditions(a add ), add (P, a add ) to agenda’ For every action a t that threatens any causal link (a p, Q, a c ) in L’ choose to add a t < a p or a c < a t to O. If neither choice is consistent, fail. POP((A’, O’, L’), agenda, actions) Termination Action Selection Update goals Protect causal links - Demotion: a t < a p - Promotion: a c < a t Goal Selection

POP POP is sound and complete POP Plan is a solution if: All preconditions are supported (by causal links), i.e., no open conditions. No threats Consistent temporal ordering By construction, the POP algorithm reaches a solution plan

POP example: Sussman Anomaly Ainf (on A B)(on B C) A0 (on C A)(on-table A)(on-table B)(clear C)(clear B)

Work on open precondition (on B C) A0 (on C A)(on-table A)(on-table B)(clear C)(clear B) A1: move B from Table to C (on B C)-(on-table B)-(clear C) (clear B)(clear C)(on-table B) (on A B)(on B C) Ainf and (clear B)

Work on open precondition (on A B) (on A B)(on B C) A2: move A from Table to B (clear A)(clear B)(on-table A) (on A B)-(on-table A)-(clear B) A0 (on C A)(on-table A)(on-table B)(clear C)(clear B) A1: move B from Table to C (on B C)-(on-table B)-(clear C) (clear B)(clear C)(on-table B) Ainf

Protect causal links (on A B)(on B C) A2: move A from Table to B (clear A)(clear B)(on-table A) (on A B)-(on-table A)-(clear B) A0 (on C A)(on-table A)(on-table B)(clear C)(clear B) A1: move B from Table to C (on B C)-(on-table B)-(clear C) (clear B)(clear C)(on-table B) Ainf (A0, (clear B), A1) theatened by A2 --> Promotion

Work on open precondition (clear A) (on A B)(on B C) A2: move A from Table to B (clear A)(clear B)(on-table A) (on A B)-(on-table A)-(clear B) A3: move C from A to Table (clear C)(on C A) -(on C A)(on-table C)(clear A) A0 (on C A)(on-table A)(on-table B)(clear C)(clear B) A1: move B from Table to C (on B C)-(on-table B)-(clear C) (clear B)(clear C)(on-table B) Ainf and protect links

Final plan (on A B)(on B C) A2: move A from Table to B (clear A)(clear B)(on-table A) (on A B)-(on-table A)-(clear B) A3: move C from A to Table (clear C)(on C A) -(on C A)(on-table C)(clear A) A0 (on C A)(on-table A)(on-table B)(clear C)(clear B) A1: move B from Table to C (on B C)-(on-table B)-(clear C) (clear B)(clear C)(on-table B) Ainf

Plartial-Order Planning vs State-Space Planning Complexity: O(b n ) worst-case Non-deterministic choices (n): ProgWS, RegWS: n = |actions| POP: n = |preconditions| + |link protection| Generally an action has several preconditions Branching factor (b) POP has smaller b: No backtrack due to goal ordering Least commitment: no premature step ordering Does POP make the least possible amount of commitment?