Planning Department of Computer Science & Engineering Indian Institute of Technology Kharagpur.

Slides:



Advertisements
Similar presentations
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.
Advertisements

Language for planning problems
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.
Chapter 4 - Planning 4.1 State Space Planning 4.2 Partial Order Planning 4.3Planning in the Real World Part II: Methods of AI.
Artificial Intelligence II S. Russell and P. Norvig Artificial Intelligence: A Modern Approach Chapter 11: Planning.
Planning Some material adapted from slides by Tim Finin,Jean-Claude Latombe, Lise Getoor, and Marie desJardins.
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.
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.
Planning Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 11.
Planning: Part 2 Partial Order Planning COMP151 April 2, 2007.
CS 460, Session 20 1 Planning Search vs. planning STRIPS operators Partial-order planning.
Artificial Intelligence Chapter 11: Planning
Planning Russell and Norvig: Chapter 11. Planning Agent environment agent ? sensors actuators A1A2A3.
Intro to AI Fall 2002 © L. Joskowicz 1 Introduction to Artificial Intelligence LECTURE 13: Advanced Planning Motivation: least commitment principle Partial-order.
1 Planning Adapted from Tim Finin, UMBC, Marie desJardins Some material adopted from notes by Andreas Geyer-Schulz and Chuck Dyer.
CS 561, Session Planning Search vs. planning STRIPS operators Partial-order planning.
Planning Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 11.
Automated Planning and HTNs Planning – A brief intro Planning – A brief intro Classical Planning – The STRIPS Language Classical Planning – The STRIPS.
For Wednesday Read chapter 12, sections 3-5 Program 2 progress due.
Course Overview  What is AI?  What are the Major Challenges?  What are the Main Techniques?  Where are we failing, and why?  Step back and look at.
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.
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)
1 Search vs. planning Situation calculus STRIPS operators Search vs. planning Situation calculus STRIPS operators.
For Friday Finish chapter 10 No homework. Program 2 Any questions?
For Friday No reading Homework: –Chapter 11, exercise 4.
1 Planning Chapter 10 Some material adopted from notes by Tim Finin, Marie desJardins Andreas Geyer-Schulz, and Chuck Dyer.
Planning (Chapter 10)
Lecture 3-1CS251: Intro to AI/Lisp II Planning to Learn, Learning to Plan.
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.
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)
1/16 Planning Chapter 11- Part1 Author: Vali Derhami.
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.
ADVANCED PLANNING TECHNIQUES Dr. Adam Anthony Lecture 22.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
1 Planning Chapter 10 Some material adopted from notes by Tim Finin, Marie desJardins Andreas Geyer-Schulz, and Chuck Dyer.
Planning Chapter 16.
Planning (Chapter 10) Slides by Svetlana Lazebnik, 9/2016 with modifications by Mark Hasegawa-Johnson, 9/2017
L9. Planning Agents L7_exAnswer and explanation Review
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
CMSC 471 Fall 2011 Class #16 Tuesday, October 25, 2011 Planning
Planning Search vs. planning STRIPS operators Partial-order planning
Planning CSE 473 AIMA, 10.3 and 11.
L11. Planning Agents and STRIPS
Planning Chapter
© James D. Skrentny from notes by C. Dyer, et. al.
Course Outline Advanced Introduction Expert Systems Topics Problem
Causal-link planning 2 Jim Blythe.
Class #15 / 16 – Tuesday, October 20 / Thursday, October 22
CMSC 471 Fall 2002 Class #20/21/23 – Wednesday, November 6 / Monday, November 11 / Monday, November 18.
Presentation transcript:

Planning Department of Computer Science & Engineering Indian Institute of Technology Kharagpur

CSE, IIT Kharagpur2 The Planning Problem Get a quart of milk and a bunch of bananas and a cordless drill Given: –Initial state: The agent is at home without milk, bananas, drill –Goal state: The agent is at home with milk, bananas, drill –States can be represented by predicates such as At(x), Have(y), Sells(x, y) –Actions: Go(y) : Agent goes to y – causes At(y) to be true Buy(z): Agent buys z – causes Have(z) to be true Steal(z): Agent steals z

CSE, IIT Kharagpur3 Planning versus Problem Solving Problems with using the problem solving techniques –Huge state space and large branching factor What do we do in planning? –Actions are represented by logical descriptions of preconditions and effects. This enables the planner to make direct connections between states and actions. –The planner is free to add actions to the plan wherever they are required, rather than in an incremental manner starting from the initial state. –Most parts of the world are independent of most other parts – hence dividing and conquer works well.

CSE, IIT Kharagpur4 Using Situation Calculus Initial state: At(Home, s0)   Have(Milk, s0)   Have(Bananas, s0)   Have(Drill, s0) Goal state:  s At(Home, s)  Have(Milk, s)  Have(Bananas, s)  Have(Drill, s) Operators:  a,s Have(Milk, Result(a,s))  [(a = Buy(Milk)  At(Supermarket,s)  (Have(Milk, s)  a  Drop(Milk))] Result(a,s) names the situation resulting from executing the action a in the situation s

CSE, IIT Kharagpur5 The STRIPS language To make planning practical we need to: –Restrict the language with which we define problems. With a restrictive language, there are fewer possible solutions to search through –Use a special-purpose algorithm called a planner rather than a general purpose theorem prover. STRIPS –STanford Research Institute Problem Solver –There are many more efficient planners today, but most of them use specification languages that are variants of the one used in STRIPS.

CSE, IIT Kharagpur6 Representation for states and goals States are represented by conjunctions of function-free ground literals At(Home)   Have(Milk)   Have(Bananas)   Have(Drill) Goals are also described by conjunctions of literals At(Home)  Have(Milk)  Have(Bananas)  Have(Drill) Goals can also contain variables At(x)  Sells(x, Milk) The above goal is being at a store that sells milk

CSE, IIT Kharagpur7 Representation for Actions Action description – serves as a name for a possible action Precondition – a conjunction of positive literals (why positive?) Effect – a conjunction of literals (positive or negative) –The original version had an add list and a delete list. Op(ACTION: Go(there), PRECOND:At(here)  Path(here, there), EFFECT:At(there)   At(here) )

CSE, IIT Kharagpur8 Representation for Plans A set of plan steps. Each step is one of the operators for the problem. A set of step ordering constraints. Each ordering constraint is of the form S i  S j, which means S i must occur sometime before S j. A set of variable binding constraints. Each variable constraint is of the form v = x, where v is a variable in some step, and x is either a constant or some other variable. A set of causal links. A causal link is written as S  c: S’ which means S achieves the precondition c for S’.

CSE, IIT Kharagpur9 Example Actions Op( ACTION: RightShoe, PRECOND: RightSockOn, EFFECT: RightShoeOn) Op( ACTION: RightSock, EFFECT: RightSockOn) Op( ACTION: LeftShoe, PRECOND: LeftSockOn, EFFECT: LeftShoeOn) Op( ACTION: LeftSock, EFFECT: LeftSockOn) Initial plan Plan(STEPS: { S1: Op(ACTION: start ), S2: Op(ACTION: finish, PRECOND: RightShoeOn  LeftShoeOn ) }, ORDERINGS: { S 1  S 2 }, BINDINGS: {}, LINKS: {})

CSE, IIT Kharagpur10 Partial Order Planning Initial state: Op( ACTION: Start, EFFECT: At(Home)  Sells(HWS, Drill)  Sells(SM, Milk)  Sells(SM, Banana) ) Goal state: Op( ACTION: Finish, PRECOND: At(Home)  Have(Milk)  Have(Bananas)  Have(Drill) ) Actions: Op( ACTION: Go(there), PRECOND: At(here), EFFECT: At(there)   At(here)) Op(ACTION: Buy(x), PRECOND: At(store)  Sells(store, x), EFFECT: Have(x))

CSE, IIT Kharagpur11 Partial Order Planning Algorithm Function POP( initial, goal, operators ) returns plan plan  Make-Minimal-Plan( initial, goal ) Loop do If Solution( plan ) then return plan S, c  Select-Subgoal( plan ) Choose-Operator( plan, operators, S, c ) Resolve-Threats( plan ) end Function Select-Subgoal( plan ) returns S, c pick a plan step S from STEPS( plan ) with a precondition that C has not been achieved return S, c

CSE, IIT Kharagpur12 POP Algorithm (Contd.) Procedure Choose-Operator( plan, operators, S, c ) choose a step S’ from operators or STEPS( plan ) that has c as an effect if there is no such step then fail add the causal link S’  c: S to LINKS( plan ) add the ordering constraint S’  S to ORDERINGS( plan ) if S’ is a newly added step from operators then add S’ to STEPS( plan ) add to Start  S’  Finish ORDERINGS( plan )

CSE, IIT Kharagpur13 POP Algorithm (Contd.) Procedure Resolve-Threats( plan ) for each S’’ that threatens a link S i  c: S j in LINKS( plan ) do choose either Promotion: Add S’’  S i to ORDERINGS( plan ) Demotion: Add S j  S’’ to ORDERINGS( plan ) if not Consistent( plan ) then fail end

CSE, IIT Kharagpur14 Partially instantiated operators So far we have not mentioned anything about binding constraints Should an operator that has the effect, say,  At(x), be considered a threat to the condition, At(Home) ? –Indeed it is a possible threat because x may be bound to Home Approaches for dealing with possible threats –Resolve now with an equality constraint Bind x to something that resolves the threat (say x = HWS) –Resolve now with an inequality constraint Extend the language of variable binding to allow x  Home –Resolve later Ignore possible threats. If x = Home is added later into the plan, then we will attempt to resolve the threat (by promotion or demotion)

CSE, IIT Kharagpur15 Support for partially instantiated operators Procedure Choose-Operator( plan, operators, S, c ) choose a step S’ from operators or STEPS( plan ) that has c’ as an effect such that u = UNIFY( c, c’, BINDINGS( plan )) if there is no such step then fail add u to BINDINGS( plan ) add the causal link S’  c: S to LINKS( plan ) add the ordering constraint S’  S to ORDERINGS( plan ) if S’ is a newly added step from operators then add S’ to STEPS( plan ) add to Start  S’  Finish ORDERINGS( plan )

CSE, IIT Kharagpur16 Support for partially instantiated operators Procedure Resolve-Threats( plan ) for each S i  c: S j in LINKS( plan ) do for each S’’ in STEPS( plan ) do for each c’ in EFFECTS( S’’) do if SUBST( BINDINGS(plan), c ) = SUBST( BINDINGS(plan),  c’ ) then choose either Promotion: Add S’’  S i to ORDERINGS( plan ) Demotion: Add S j  S’’ to ORDERINGS( plan ) if not Consistent( plan ) then fail end