Partial Order Planning 1 Brian C. Williams 16.412J/6.834J Sept 16 th, 2002 Slides with help from: Dan Weld Stuart Russell & Peter Norvig.

Slides:



Advertisements
Similar presentations
Language for planning problems
Advertisements

Chapter 5 Plan-Space Planning.
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 via Plan-space search COMP3431 Malcolm Ryan.
Plan Generation & Causal-Link Planning 1 José Luis Ambite.
Computing & Information Sciences Kansas State University Lecture 20 of 42 CIS 530 / 730 Artificial Intelligence Lecture 20 of 42 Introduction to Classical.
Chapter 4 - Planning 4.1 State Space Planning 4.2 Partial Order Planning 4.3Planning in the Real World Part II: Methods of AI.
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 II S. Russell and P. Norvig Artificial Intelligence: A Modern Approach Chapter 11: Planning.
Planning Search vs. planning STRIPS operators Partial-order planning.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Planning Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 11.
CS 460, Session 20 1 Planning Search vs. planning STRIPS operators Partial-order planning.
Artificial Intelligence Chapter 11: Planning
Planning CSE 473. © Daniel S. Weld Topics Agency Problem Spaces Search Knowledge Representation Reinforcement Learning InferencePlanning Supervised.
CS 561, Session Planning Search vs. planning STRIPS operators Partial-order planning.
1 Approaches to Agent Control zAgent senses world, acts to affect world zReactive Control ySet of situation-action rules yE.g. x1) if dog-is-behind-me.
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 Logistics z1 Handout yCopies of my slides zReading yRecent Advances in AI Planning, sections 1-2.
1 Planning Chapters 11 and 12 Thanks: Professor Dan Weld, University of Washington.
Dynamic Bayesian Networks CSE 473. © Daniel S. Weld Topics Agency Problem Spaces Search Knowledge Representation Reinforcement Learning InferencePlanningLearning.
Planning II CSE 573. © Daniel S. Weld 2 Logistics Reading for Wed Ch 18 thru 18.3 Office Hours No Office Hour Today.
Planning Department of Computer Science & Engineering Indian Institute of Technology Kharagpur.
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.
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.
April 3, 2006AI: Chapter 11: Planning1 Artificial Intelligence Chapter 11: Planning Michael Scherger Department of Computer Science Kent State University.
CS.462 Artificial Intelligence SOMCHAI THANGSATHITYANGKUL Lecture 07 : Planning.
For Friday Finish Chapter 18 Homework: –Chapter 18, exercises 1-2.
Computing & Information Sciences Kansas State University Wednesday, 15 Oct 2008CIS 530 / 730: Artificial Intelligence Lecture 20 of 42 Wednesday, 15 October.
For Monday Read chapter 12, sections 1-2 Homework: –Chapter 10, exercise 3.
Planning, Executing, Sensing, and Replanning for Information Gathering Presented by Hector Gonzalez (Based on slides from Craig Knoblock and L. Joskowicz)
For Friday Finish chapter 10 No homework. Program 2 Any questions?
For Friday No reading Homework: –Chapter 11, exercise 4.
Planning (Chapter 10)
Lecture 3-1CS251: Intro to AI/Lisp II Planning to Learn, Learning to Plan.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
AI Lecture 17 Planning Noémie Elhadad (substituting for Prof. McKeown)
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.
Introduction to Artificial Intelligence Class 1 Planning & Search Henry Kautz Winter 2007.
© Daniel S. Weld 1 Logistics PS3 Project Additional problem Reading Planning & CSP for “today” SAT plan paper review for Wed.
Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)
1 CMSC 471 Fall 2004 Class #21 – Thursday, November 11.
Planning I: Total Order Planners Sections
April 3, 2006AI: Chapter 11: Planning1 Artificial Intelligence Chapter 11: Planning.
Consider the task get milk, bananas, and a cordless drill.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
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.
Planning (Chapter 10) Slides by Svetlana Lazebnik, 9/2016 with modifications by Mark Hasegawa-Johnson, 9/2017
For Wednesday Read Chapter 18, sections 1-3 Homework:
Planning (Chapter 10)
Planning Search vs. planning STRIPS operators Partial-order planning
Dana S. Nau University of Maryland 3:10 AM September 12, 2018
Planning (Chapter 10)
Dana S. Nau University of Maryland 1:50 AM September 14, 2018
Consider the task get milk, bananas, and a cordless drill
Planning Search vs. planning STRIPS operators Partial-order planning
Planning Search vs. planning STRIPS operators Partial-order planning
AI Planning.
Planning José Luis Ambite.
Graph-based Planning Slides based on material from: Prof. Maria Fox
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.
Course Outline Advanced Introduction Expert Systems Topics Problem
Class #20 – Wednesday, November 5
Graph-based Planning Slides based on material from: Prof. Maria Fox
Presentation transcript:

Partial Order Planning 1 Brian C. Williams J/6.834J Sept 16 th, 2002 Slides with help from: Dan Weld Stuart Russell & Peter Norvig

Self Repairing Explorers

Monitors Autonomous Agents Command dispatch Fault protection Attitude control Mission Goal Scenario Self-commandingSelf-diagnosingSelf-repairing RECOVERY PLANNING EXECUTION Commanded at: Mission level Engineering level

Readings for Today’s Lecture Partial Order Planning AIMA Chapter 11 Execution and Conditional Planning AIMA Chapter 13 * AIMA = “Artificial Intelligence: A Modern Approach,” by Russell and Norvig. Optional Reading: Weld “Introduction to Least Commitment Planning,” AI Magazine. (To be posted on the class web site)

Planning with Atomic Time Operator-based planning as search Declarative encoding of states and operators Partial order planning –Planning problem –Partial order planning algorithm

Operator-based Planning Problem Input –Set of world states –Action operators Fn: world-state  world-state –Initial state of world –Goal partial state (set of world states) Output –Sequence of actions What assumptions are implied? Atomic time. Agent is omniscient (no sensing necessary). Agent is sole cause of change. Actions have deterministic effects. No indirect effects.  STRIPS Assumptions a a a north11 north12 W0W0 W2W2 W1W1

Operator-based Planning as Search A C B Initial State C B A Goal State 1) Forward-Chaining State-Space Search What problems arise?

What Are Alternative Strategies? A C B Initial State C B A Goal State Need more declarative description of operators and state Are these strategies supported by our current representation?

Planning as Search 2) Backward-Chaining (goal-directed search) Many Goal States Where do we start? Initial State is completely defined A C B D E DC B A E D C B A E C B A E * * * D Search partial worlds (partial assignment) Subgoals weakly interact: Maintain goal/subgoal decomposition Order action sequences only where needed (partial orders)  How do we represent the search state?

Plan-Space Search How do we represent plans? How do we test if a plan is a solution? How do we generate a plan? pick-from-table(C) pick-from-table(B) pick-from-table(C) put-on(C,B) Idea: Each state is a partial plan

Partial Order Planning Plan from goals, back to initial state Search through partial plans Representation: –Operators given in declarative representation, rather than black box functions. –Plans represent only relevant commitments (e.g., relevant ordering of operators, not total ordering)

Planning with Atomic Time Operator-based planning as search Declarative encoding of state and operators Partial order planning –Planning problem –Partial order planning algorithm

STRIPS Representation: Encode world states as conjunctions of literals a a north11 W0W0 W1W1 Propositions True/False Statements (block a) Literals Proposition or its negation (not (block a) ) Conjunction And of literals (And (block a) (block b) (block c) (on-table a) …) A World state is a conjunction with every proposition appearing exactly once. A Partial state is a conjunction with every proposition appearing at most once. What is missing from this logic?

STRIPS Operator Representation Effects specify how to change the set of propositions. a a north11 W0W0 W1W1 Initial state: ((block a) (block b) (block c) (on-table a) (on-table b) (clear a) (clear b) (clear c) (arm-empty)) goal (partial state): ((on a b) (on b c))) Available actions Strips operators precond: (and (agent-at 1 1) (agent-facing north)) effect: (and (agent-at 1 2) (not (agent-at 1 1))) North11

(Parameterized) Operator Schemata (:operator pick-up :parameters ((block ?ob1)) :precondition (and (clear ?ob1) (on-table ?ob1) (arm-empty)) :effect (and (not (clear ?ob1)) (not (on-table ?ob1)) (not (arm-empty)) (holding ?ob1))) Instead of defining: pickup-A and pickup-B and … Define a schema: Note: strips doesn’t allow derived effects; you must be complete! } ?var denotes a free variable

Planning with Atomic Time Operator-based planning as search Declarative encoding of state and operators Partial order planning –Planning problem –Partial order planning algorithm

Given Initial and Goal State Have(Milk) At(Home) Have(Ban.) Have(Drill) Finish Start At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) Initial and Goal states are encoded as operators, Why? Don’t need to introduce (partial) states as separate objects. Keeps theory minimal.

Given Plan Operators Go(HWS) Go(Home) Buy(Drill) Buy(Milk) Buy(Ban.)Go(SM) At(SM), Sells(SM,Milk)At(SM) At(SM), Sells(SM,Ban.) At(Home) At(HWS) At(HWS) Sells(HWS,Drill) At(HWS) Have(Milk) Have(Drill) Have(Ban) At(Home) At(HWS) At(SM) What is a solution?

Start Finish Have(Milk) At(Home) Have(Ban.) Have(Drill) Buy(Milk) At(SM), Sells(SM,Milk) Buy(Ban.) At(SM), Sells(SM,Ban.) Buy(Drill) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) Partial Order Plan

Start Finish Buy(Drill) Buy(Milk)Buy(Ban.) Have(Milk) At(Home) Have(Ban.) Have(Drill) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) Partial Order Plan

Start Finish Buy(Drill) Buy(Milk)Buy(Ban.) Have(Milk) At(Home) Have(Ban.) Have(Drill) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.) At(HWS) Sells(HWS,Drill) Go(Home) At(HWS) Go(SM) At(SM) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) Partial Order Plan

Start Go(Home) Finish Buy(Drill) Buy(Milk)Buy(Ban.) Go(SM) Have(Milk) At(Home) Have(Ban.) Have(Drill) At(SM), Sells(SM,Milk) At(SM) At(SM), Sells(SM,Ban.) At(HWS) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) Go(HWS) At(Home) Partial Order Plan

Start Go(HWS) Go(Home) Finish Buy(Drill) Buy(Milk)Buy(Ban.) Go(SM) Have(Milk) At(Home) Have(Ban.) Have(Drill) At(SM), Sells(SM,Milk) At(SM) At(SM), Sells(SM,Ban.) At(Home) At(HWS) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) Partial Order Plan

Why is an ordering needed? Go(Home) Buy(Milk) Go(SM) At(Home) At(SM) At(HWS)

Why is an ordering needed? Go(Home) Go(SM) At(Home) At(SM) At(HWS) Buy(Milk) At(SM) Suppose the other order is allowed, what happens? “Threatened Precondition”

Why is an ordering needed? Go(Home) Go(SM) At(Home) At(SM) At(HWS) Buy(Milk) At(SM) Suppose the other order is allowed, what happens? Link indicates protected time interval.

Ordering Resolves Threat Go(Home) Buy(Milk) Go(SM) At(Home) At(SM) At(HWS)

A Solution: Complete and Consistent Plan Complete Plan Consistent Plan IFF every precondition of every step is achieved A step’s precondition is achieved iff its the effect of a preceding step, no possibly intervening step undoes it. IFF there is no contradiction in the ordering constraints (I.e., never s i < s j and s j < s i.) Start Go(HWS) Go(Home) Finish Buy(Drill) Buy(Milk)Buy(Ban.) Go(SM) Have(Milk) At(Home) Have(Ban.) Have(Drill) At(SM), Sells(SM,Milk) At(SM) At(SM), Sells(SM,Ban.) At(Home) At(HWS) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.)

Planning with Atomic Time Operator-based planning as search Declarative encoding of state and operators Partial order planning –Planning problem –Partial order planning algorithm

POP(, agenda, actions), A partial plan to expand Agenda: A queue of open conditions still to be satisfied: Actions: A set of actions that may be introduced to meet needs. a add : an action that produces the needed condition p for a need A threat : an action that might threaten a causal link from a producer to a consumer

POP(, agenda, actions) 1.Termination: If agenda is empty, return plan. 2.Goal Selection: select and remove open condition from agenda. 3.Action Selection: Choose new or existing action a add that can precede a need and whose effects include p. Link and order actions. 4.Update Agenda: If a add is new, add its preconditions to agenda. 5.Threat Detection: For every action a threat that might threaten some causal link from a produce to a consume, choose a consistent ordering: a)Demotion: Add a threat < a produce b)Promotion: Add a consume < a threat 6.Recurse: on modified plan and agenda Choose is nondeterministic Select is deterministic

To remove threats… Go(Home) Go(SM) At(Home) At(SM) At(HWS) Buy(Milk) At(SM) promote the threat…

To remove threats… Go(Home) Go(SM) At(Home) At(SM) At(HWS) Buy(Milk) At(SM) promote the threat…demote the threat…

Go(SM) At(HWS) But only allow demotion/promotion if schedulable consistent = loop free no action precedes initial state To remove threats… promote the threat…demote the threat… Buy(Milk) At(SM) Buy(Milk) At(SM) Go(Home) At(Home) At(SM)

Start Finish Have(Drill) Have(Milk) Have(Ban.) at(Home) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.)

Start Finish Have(Drill) Have(Milk) Have(Ban.) at(Home) Buy(Drill) At(HWS) Sells(HWS,Drill) Buy(Ban.) At(SM), Sells(SM,Ban.) Buy(Milk) At(SM), Sells(SM,Milk) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.)

Start Finish Buy(Drill)Buy(Milk)Buy(Ban.) Have(Drill) Have(Milk) Have(Ban.) at(Home) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.)At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.)

Start Finish Buy(Drill)Buy(Milk)Buy(Ban.) Have(Drill) Have(Milk) Have(Ban.) at(Home) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.)At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) Go(HWS) At(x) Go(SM) At(x)

Start Go(HWS) Finish Buy(Drill)Buy(Milk)Buy(Ban.) Go(SM) Have(Drill) Have(Milk) Have(Ban.) at(Home) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.) At(Home) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) At(Home)

Start Go(HWS) Finish Buy(Drill)Buy(Milk)Buy(Ban.) Go(SM) Have(Drill) Have(Milk) Have(Ban.) at(Home) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.) At(Home) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) At(Home)

Start Go(HWS) Finish Buy(Drill)Buy(Milk)Buy(Ban.) Go(SM) Have(Drill) Have(Milk) Have(Ban.) at(Home) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.) At(Home) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) At(Home)

Start Go(HWS) Finish Buy(Drill)Buy(Milk)Buy(Ban.) Go(SM) Have(Drill) Have(Milk) Have(Ban.) at(Home) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.) At(Home) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) At(x) Go(Home) At(SM)

Start Finish Buy(Drill)Buy(Milk)Buy(Ban.) Have(Drill) Have(Milk) Have(Ban.) at(Home) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.)At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) Go(HWS) At(x) Go(SM) At(x)

Start Go(HWS) Finish Buy(Drill)Buy(Milk)Buy(Ban.) Go(SM) Have(Drill) Have(Milk) Have(Ban.) at(Home) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.) At(Home) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) At(Home)

Start Go(HWS) Finish Buy(Drill)Buy(Milk)Buy(Ban.) Go(SM) Have(Drill) Have(Milk) Have(Ban.) at(Home) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.) At(Home) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) At(Home)

Start Go(HWS) Finish Buy(Drill)Buy(Milk)Buy(Ban.) Go(SM) Have(Drill) Have(Milk) Have(Ban.) at(Home) At(SM), Sells(SM,Milk)At(SM), Sells(SM,Ban.) At(Home) At(HWS) Sells(HWS,Drill) At(Home) Sells(HWS,Drill) Sells(SM,Milk) Sells(SM,Ban.) At(x) Go(Home) At(SM)

Monitors Autonomous Agents: What is missing? Command dispatch Fault protection Attitude control Mission Goal Scenario Self-commandingSelf-diagnosingSelf-repairing RECOVERY PLANNING EXECUTION

Many Action Representations: (Many Studied In This Course) TractableExpressive STRIPS MDPs POMDPs Situation Calculus SADL ADL, UWL Probabilistic Concurrent Constraint Automata Hierarchical Hybrid Constraint Automata DS1 DDL TPNs