Planning III Introduction to Artificial Intelligence CS440/ECE448 Lecture 16.

Slides:



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

10.1 Trading Strategies Involving Options Chapter 10.
Practical Planning: Scheduling and Hierarchical Task Networks Chapter CS 63 Adapted from slides by Tim Finin and Marie desJardins.
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.
Artificial Intelligence 2005/06 Partial Order 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,
Computer Science CPSC 322 Lecture 3 AI Applications.
Planning  We have done a sort of planning already  Consider the “search” applied to general problem solving  The sequence of moves with the “Jugs” was.
Adders Module M8.1 Section 6.2. Adders Half Adder Full Adder TTL Adder.
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.
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 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
CS 561, Session Planning Search vs. planning STRIPS operators Partial-order planning.
Planning Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 11.
Planning Department of Computer Science & Engineering Indian Institute of Technology Kharagpur.
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.
April 3, 2006AI: Chapter 11: Planning1 Artificial Intelligence Chapter 11: Planning Michael Scherger Department of Computer Science Kent State University.
22/11/04 AIPP Lecture 16: More Planning and Operators1 More Planning Artificial Intelligence Programming in Prolog.
CS.462 Artificial Intelligence SOMCHAI THANGSATHITYANGKUL Lecture 07 : Planning.
Planning, page 1 CSI 4106, Winter 2005 Planning Points Elements of a planning problem Planning as resolution Conditional plans Actions as preconditions.
Computing & Information Sciences Kansas State University Wednesday, 15 Oct 2008CIS 530 / 730: Artificial Intelligence Lecture 20 of 42 Wednesday, 15 October.
Kansas State University Department of Computing and Information Sciences CIS 730: Introduction to Artificial Intelligence Lecture 21 of 41 Wednesday, 08.
Partial Ordering Planning Lecture Module 10. Partial Ordering Any planning algorithm that can place two actions into a plan without specifying which comes.
Computing & Information Sciences Kansas State University Lecture 21 of 42 CIS 530 / 730 Artificial Intelligence Lecture 21 of 42 Planning: Graph Planning.
For Friday Finish chapter 10 No homework. Program 2 Any questions?
For Friday No reading Homework: –Chapter 11, exercise 4.
Lecture 3-1CS251: Intro to AI/Lisp II Planning to Learn, Learning to Plan.
Automated Planning and Decision Making Prof. Ronen Brafman Automated Planning and Decision Making Partial Order Planning Based on slides by: Carmel.
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:
Introduction to Artificial Intelligence Class 1 Planning & Search Henry Kautz Winter 2007.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Computing & Information Sciences Kansas State University Monday, 23 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 25 of 42 Monday, 23 October.
Computing & Information Sciences Kansas State University Friday, 20 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 24 of 42 Friday, 20 October.
April 3, 2006AI: Chapter 11: Planning1 Artificial Intelligence Chapter 11: Planning.
Planning in FOL Systems sequences of actions to achieve goals.
Artificial Intelligence 2004 Planning: Situation Calculus Review STRIPS POP Hierarchical Planning Situation Calculus (John McCarthy) situations.
ADVANCED PLANNING TECHNIQUES Dr. Adam Anthony Lecture 22.
Computing & Information Sciences Kansas State University Monday, 09 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 19 of 42 Monday, 09 October.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Complexity of STRIPS SHAKEY the Robot October 8, 2003.
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.
For Wednesday Read Chapter 18, sections 1-3 Homework:
02/09/98 Planning Note on first item: will tend to put administrative matters first on the slide just for quick reference. Organization: look at the.
Planning Search vs. planning STRIPS operators Partial-order planning
Review for the Midterm Exam
Planning Search vs. planning STRIPS operators Partial-order planning
Planning Search vs. planning STRIPS operators Partial-order planning
Planning José Luis Ambite.
Course Outline Advanced Introduction Expert Systems Topics Problem
Causal-link planning 2 Jim Blythe.
Creating a Multiplication Square
Presentation transcript:

Planning III Introduction to Artificial Intelligence CS440/ECE448 Lecture 16

Mid-Term Mean: 71% Median:70% Max: 96% Min: 41%

Last lecture STRIPS planningSTRIPS planning Partial order planningPartial order planning This lecture More partial order planning Planning in the real world Extensions Reasoning in the presence of uncertainty Reading Reading Chapters 11, 12, 13

The Initial Plan A plan with two steps (STRIPS operators): Start Step: –Preconditions: None – Effect: Add all propositions that are initially true Finish Step: –Precondition: Goal state –Effects: None Steps: { Start, Finish} Orderings: { Start < Finish } Bindings: { } Links: { }

A Partial Order Planning Algorithm A partial order regression planner that searches through plan space.

POP Algorithm Continued

Example: Blocks World Operators Symbols: Table, A, B, C Predicates: On (x, y), Cl(x) A B C

Example: Simple Blocks World Symbols: A, B, C, Table Predicates: ON(x,y) – Object x is on top of object y CL(x) – x doesnt have anything on top Start State On(A, Table) On(B, Table) ON(C,Table) Cl(A) Cl(B) Cl(C) Goal State ON(B, A) On(C, B) AB C A B C

Example: Simple Blocks World On(A, Table) On(B, Table) ON(C,Table) Cl(A) Cl(B) Cl(C) ON(B, A) On(C, B) AB C A B C Start Finish Steps: { Start, Finish,} Orderings: { Start < Finish } Links: {}

Example: Simple Blocks World On(A, Table) On(B, Table) ON(C,Table) Cl(A) Cl(B) Cl(C) ON(B, A) On(C, B) AB C A B C Start Finish Steps: { Start, Finish, S1} Orderings: { Start < Finish, Start < S1, S1 < Finish} Links: {S1-c0->Finish} S1: PutOn(B,A) ~On(B,Table) ~Cl (A) Cl (Table), On(B,A) On(B,Table) Cl(A) Cl(B)

Example: Simple Blocks World On(A, Table) On(B, Table) ON(C,Table) Cl(A) Cl(B) Cl(C) ON(B, A) On(C, B) AB C A B C Start Finish Steps: { Start, Finish, S1} Orderings: { Start < Finish, Start < S1, S1 < Finish} Links: {S1-c0->Finish Start –c1->S1} S1: PutOn(B,A) ~On(B,Table) ~Cl (A) Cl (Table), On(B,A) On(B,Table) Cl(A) Cl(B)

Example: Simple Blocks World On(A, Table) On(B, Table) ON(C,Table) Cl(A) Cl(B) Cl(C) ON(B, A) On(C, B) AB C A B C Start Finish Steps: { Start, Finish, S1} Orderings: { Start < Finish, Start < S1, S1 < Finish} Links: {S1-c0->Finish Start –c1->S1 Start –c2->S1 } S1: PutOn(B,A) ~On(B,Table) ~Cl (A) Cl (Table), On(B,A) On(B,Table) Cl(A) Cl(B)

Example: Simple Blocks World On(A, Table) On(B, Table) ON(C,Table) Cl(A) Cl(B) Cl(C) ON(B, A) On(C, B) AB C A B C Start Finish Steps: { Start, Finish, S1} Orderings: { Start < Finish, Start < S1, S1 < Finish} Links: {S1-c0->Finish Start –c1->S1 Start –c2->S1 Start –c3->S1} S1: PutOn(B,A) ~On(B,Table) ~Cl (A) Cl (Table), On(B,A) On(B,Table) Cl(A) Cl(B)

Example: Simple Blocks World On(A, Table) On(B, Table) ON(C,Table) Cl(A) Cl(B) Cl(C) ON(B, A) On(C, B) AB C A B C Start Finish Steps: { Start, Finish, S1, S2 } Orderings: { Start < Finish, Start < S1, S1 < Finish, Start < S2, S2 < Finish} Links: {S1-c0->Finish Start –c1->S1 Start –c2->S1 Start –c3->S1 S2 –c2->Finish Start –c1->S2 …} S1: PutOn(B,A) ~On(B,Table) ~Cl (A) Cl (Table), On(B,A) On(B,Table) Cl(A) Cl(B) S2: PutOn(C,B) ~On(C,Table) ~Cl (B) Cl (Table), On(C,B) On(C,Table) Cl(C) Cl(B)

Example: Simple Blocks World On(A, Table) On(B, Table) ON(C,Table) Cl(A) Cl(B) Cl(C) ON(B, A) On(C, B) AB C A B C Start Finish Steps: { Start, Finish, S1, S2 } Orderings: { Start < Finish, Start < S1, S1 < Finish, Start < S2, S2 < Finish, S1 < S2} Links: {S1-c0->Finish Start –c1->S1 Start –c2->S1 Start – c3->S1 S2 –c2->Finish Start –c1->S2 …} S1: PutOn(B,A) ~On(B,Table) ~Cl (A) Cl (Table), On(B,A) On(B,Table) Cl(A) Cl(B) S2: PutOn(C,B) ~On(C,Table) ~Cl (B) Cl (Table), On(C,B) On(C,Table) Cl(C) Cl(B)

A Partial Order Planning Algorithm A partial order regression planner that searches through plan space.

Clobbering and promotion/demotion A clobberer is a potentially intervening step that destroys the condition achieved by a causal link. Consider two steps of plan with goal: Go(HWS) Buy(Drill) At(HWS) Finish At(Home) Go(Home) At(Home) To meet precondition of goal, add step Go(Home). But, this threatens (clobbers) precondition of Buy(Drill). Options to protect Buy(Drill): 1.Demotion: put before Go(HWS). 2. Promotion: put after Buy(Drill).

POP Algorithm Continued

Example: Blocks World Symbols: A, B, C, Table Predicates: ON(x,y) – Object x is on top of object y CL(x) – x doesnt have anything on top Start State ON(C,A) On(A, Table) On(B, Table) Cl(B) Cl(C) Goal State ON(A,B) On(B, C)

Example: Blocks World Operators

Initial and Final conditions Steps: { Start, Finish,} Orderings: { Start < Finish } Steps: { Start, Finish,} Orderings: { Start < Finish }

Insert operation to achieve goal precondition Steps: { Start, Finish,S1} Orderings: { Start < Finish, Start<S1,S1< Finish} Steps: { Start, Finish,S1} Orderings: { Start < Finish, Start<S1,S1< Finish} S1 Solid lines denote causal links

PutOn(A,B) is a threat to PutOn(B,C) Solid lines denote causal links Steps: { Start, Finish,S1, S2 } Orderings: { Start < Finish, Start<S1,S1< Finish, Start<S2, S2<Finish, S1<S2} Steps: { Start, Finish,S1, S2 } Orderings: { Start < Finish, Start<S1,S1< Finish, Start<S2, S2<Finish, S1<S2} S1 S2

PutOnTable(C) meets precondition but must be in right order Steps: { Start, Finish,S1, S2, S3} Orderings: { Start < Finish, Start<S1,S1< Finish, Start<S2, S2<Finish, S1<S2, Start<S3, S3<Finish, S3<S2, S3<S1} Steps: { Start, Finish,S1, S2, S3} Orderings: { Start < Finish, Start<S1,S1< Finish, Start<S2, S2<Finish, S1<S2, Start<S3, S3<Finish, S3<S2, S3<S1} S1 S2 S3

Why is called the Sussman Anomaly? Goal Cond1 Cond2 Subplan A Subplan BSub-subplan AASub-subplan AB In older planners, each subplan would be completely executed before the other subplan would be executed, for example: Subplan B, [Sub-subplan AA, Sub-subplan AB, Subplan A] Sussman Anomaly cannot be solved using this type of plan – must be interleaved.

POP Summary POP is: –Sound, –Complete (assuming breadth first or iterative deepening search).

The real world: Things go wrong Incomplete information – Unknown preconditions, e.g., Is the spare actually intact? – Disjunctive effects, e.g., Inflating a tire with a pump may cause the tire to inflate or a slow hiss or the tire may burst or … Incorrect information –Current state incorrect, e.g., spare NOT intact. –Missing/incorrect postconditions (effects) in operators. Qualification problem: –can never finish listing all the required preconditions and possible conditional outcomes of actions. Consider a plan for changing a tire after getting a flat using operators of RemoveTire(x), PutOnTire(x), InflateTire(x)

Solutions Conditional planning –Plan to obtain information (observation actions). –Subplan for each contingency, e.g., [Check(Tire1), [IF Intact(Tire1) THEN [Inflate(Tire1)] ELSE [CallAAA] ] –Expensive because it plans for many unlikely cases. Monitoring/Replanning –Assume normal states, outcomes. –Check progress during execution, replan if necessary. –Unanticipated outcomes may lead to failure (e.g., no AAA card). In general, some monitoring is unavoidable.

Preconditions for Remaining Plan

Replanning Simplest: on failure, replan from scratch. Better: plan to get back on track by reconnecting to best continuation. Generates ``loop until done'' behavior with no explicit loop.

Some Extensions to POP (Chapter 12 Lite) More expressive representation: –Disjunctive and negated goals (and subgoals/preconditions). –Conditional effects reduce number of operators. More general temporal constraints: –In POP/STRIPS actions take one time unit. –Operators can take varying time periods. Resources, costs, value, etc. Hierarchical planning for efficiency: –ABSTRIPS. –Decompose abstract operator into multiple simple operators.

Hierarchical Decomposition into a Partial-Order Plan

Uncertainty Let action A t = leave for airport t minutes before flight from Ohare Will A t get me there on time? Problems: 1.Partial observability (road state, other drivers' plans, etc.). 2.Noisy sensors (traffic reports). 3.Uncertainty in action outcomes (flat tire, etc.). 4.Immense complexity of modelling and predicting traffic. Hence a purely logical approach either: 1) risks falsehood: A 135 will get me there on time, or 2) leads to conclusions that are too weak for decision making: A 13 5 will get me there on time if there's no accident on I-57 and it doesn't rain and my tires remain intact, etc., etc. ( A 1440 might reasonably be said to get me there on time but I'd have to stay overnight in the airport …)

Methods for handling uncertainty Default or nonmonotonic logic: Assume my car does not have a flat tire. Assume A 125 works unless contradicted by evidence. Issues: What assumptions are reasonable? How to handle contradiction? Rules with fudge factors: A get there on time. Sprinkler 0.99 WetGrass. WetGrass 0.7 Rain. Issues: Problems with combination, e.g., Sprinkler causes Rain?? Probability theory Given the available evidence, A 135 will get me there on time with probability (Fuzzy logic handles degree of truth NOT uncertainty e.g., WetGrass is true to degree 0.2)

Fuzzy Logic in Real World

Probability Probabilistic assertions summarize effects of Ignorance: lack of relevant facts, initial conditions, etc. Laziness: failure to enumerate exceptions, qualifications, etc. Subjective or Bayesian probability: Probabilities relate propositions to one's own state of knowledge e.g., P(A 135 | no reported accidents) = 0.06 These are NOT assertions about the world, but represent belief about the whether the assertion is true. Probabilities of propositions change with new evidence: e.g., P(A 135 | no reported accidents, 5 a.m.) = 0.15 (Analogous to logical entailment status; i.e., does KB |= )

Making decisions under uncertainty Suppose I believe the following: P(A 135 gets me there on time |...) = 0.04 P(A 180 gets me there on time |...) = 0.70 P(A 240 gets me there on time |...) = 0.95 P(A 1440 gets me there on time |...) = Which action to choose? Depends on my preferences for missing flight vs. airport cuisine, etc. Utility theory is used to represent and infer preferences Decision theory = utility theory + probability theory

Unconditional Probability Let A be a proposition, P(A) denotes the unconditional probability that A is true. Example: if Male denotes the proposition that a particular person is male, then P(Male)=0.5 means that without any other information, the probability of that person being male is 0.5 (a 50% chance). Alternatively, if a population is sampled, then 50% of the people will be male. Of course, with additional information (e.g. that the person is a CS440 student), the posterior probability will likely be different.