4/29: Conditional Planning  No Final. Instead we will have a last homework  Midterm to be returned Thursday; Homework reached Hanoi  Extra class on.

Slides:



Advertisements
Similar presentations
Automated Theorem Proving Lecture 1. Program verification is undecidable! Given program P and specification S, does P satisfy S?
Advertisements

Modeling issues Book: chapters 4.12, 5.4, 8.4, 10.1.
Heuristic Search techniques
Language for planning problems
Problems and Their Classes
Planning with Non-Deterministic Uncertainty (Where failure is not an option) R&N: Chap. 12, Sect (+ Chap. 10, Sect 10.7)
Planning Module THREE: Planning, Production Systems,Expert Systems, Uncertainty Dr M M Awais.
Constraint Based Reasoning over Mutex Relations in Graphplan Algorithm Pavel Surynek Charles University, Prague Czech Republic.
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.
1 CMSC 471 Fall 2002 Class #6 – Wednesday, September 18.
JAYASRI JETTI CHINMAYA KRISHNA SURYADEVARA
Friday: 2-3:15pm BY 510 make-up class Today: 1. Online search 2. Planning in Belief-space.
1 Graphplan José Luis Ambite * [* based in part on slides by Jim Blythe and Dan Weld]
Stanford University CS243 Winter 2006 Wei Li 1 Register Allocation.
Situation Calculus for Action Descriptions We talked about STRIPS representations for actions. Another common representation is called the Situation Calculus.
Department of Computer Science & Engineering
1 Temporal Claims A temporal claim is defined in Promela by the syntax: never { … body … } never is a keyword, like proctype. The body is the same as for.
For Monday Finish chapter 12 Homework: –Chapter 13, exercises 8 and 15.
Best-First Search: Agendas
Complexity 11-1 Complexity Andrei Bulatov Space Complexity.
11/22: Conditional Planning & Replanning Current Standings sent Semester project report due 11/30 Homework 4 will be due before the last class Next class:
Beyond Classical Search Non-Deterministic Actions  Transition model – Result(s,a) is no longer a singleton  Plans have to be “contingent”  Suck; if.
Partial Observability (State Uncertainty)  Assume non-determinism  Atomic model (for belief states and sensing actions)  Factored model (Progression/Regression)
9/14: Belief Search Heuristics Today: Planning graph heuristics for belief search Wed: MDPs.
Planning Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 11.
3/25  Monday 3/31 st 11:30AM BYENG 210 Talk by Dana Nau Planning for Interactions among Autonomous Agents.
CPSC 322, Lecture 12Slide 1 CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12 (Textbook Chpt ) January, 29, 2010.
CS 536 Spring Global Optimizations Lecture 23.
3/27 Next big topic: Decision Theoretic Planning..
4/25/08Prof. Hilfinger CS164 Lecture 371 Global Optimization Lecture 37 (From notes by R. Bodik & G. Necula)
Handling non-determinism and incompleteness. Problems, Solutions, Success Measures: 3 orthogonal dimensions  Incompleteness in the initial state  Un.
Handling non-determinism and incompleteness
24-Jun-15 Pruning. 2 Exponential growth How many leaves are there in a complete binary tree of depth N? This is easy to demonstrate: Count “going left”
Search in the semantic domain. Some definitions atomic formula: smallest formula possible (no sub- formulas) literal: atomic formula or negation of an.
Last time Proof-system search ( ` ) Interpretation search ( ² ) Quantifiers Equality Decision procedures Induction Cross-cutting aspectsMain search strategy.
Prof. Fateman CS 164 Lecture 221 Global Optimization Lecture 22.
Chapter 11: Limitations of Algorithmic Power
Review: forward E { P } { P && E } TF { P && ! E } { P 1 } { P 2 } { P 1 || P 2 } x = E { P } { \exists … }
9/23. Announcements Homework 1 returned today (Avg 27.8; highest 37) –Homework 2 due Thursday Homework 3 socket to open today Project 1 due Tuesday –A.
CHAPTER 10 Recursion. 2 Recursive Thinking Recursion is a programming technique in which a method can call itself to solve a problem A recursive definition.
Flavio Lerda 1 LTL Model Checking Flavio Lerda. 2 LTL Model Checking LTL –Subset of CTL* of the form: A f where f is a path formula LTL model checking.
Prof. Bodik CS 164 Lecture 16, Fall Global Optimization Lecture 16.
Software Testing Sudipto Ghosh CS 406 Fall 99 November 9, 1999.
Classical Planning Chapter 10.
Planning with Non-Deterministic Uncertainty. Recap Uncertainty is inherent in systems that act in the real world Last lecture: reacting to unmodeled disturbances.
1 Automatic Refinement and Vacuity Detection for Symbolic Trajectory Evaluation Orna Grumberg Technion Haifa, Israel Joint work with Rachel Tzoref.
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
Current Assignments Homework 2 is available and is due in three days (June 19th). Project 1 due in 6 days (June 23 rd ) Write a binomial root solver using.
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
AI Lecture 17 Planning Noémie Elhadad (substituting for Prof. McKeown)
Problem Reduction So far we have considered search strategies for OR graph. In OR graph, several arcs indicate a variety of ways in which the original.
Intro to Planning Or, how to represent the planning problem in logic.
Recursion A recursive definition is one which uses the word or concept being defined in the definition itself Example: “A computer is a machine.
1 CMSC 471 Fall 2004 Class #21 – Thursday, November 11.
1 CSE 326: Data Structures: Graphs Lecture 24: Friday, March 7 th, 2003.
Solving the Logic Satisfiability problem Solving the Logic Satisfiability problem Jesus De Loera.
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
NPC.
Solving problems by searching A I C h a p t e r 3.
Model Checking Lecture 2. Model-Checking Problem I |= S System modelSystem property.
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Problem Reduction -AND-OR Graph -AO* Search CSE 402 K3R23/K3R20.
Coding Concepts (Basics)
Class #20 – Wednesday, November 5
NP-Complete Problems.
BEST FIRST SEARCH -OR Graph -A* Search -Agenda Search CSE 402
Pendulum Swings in AI Top-down vs. Bottom-up
Presentation transcript:

4/29: Conditional Planning  No Final. Instead we will have a last homework  Midterm to be returned Thursday; Homework reached Hanoi  Extra class on Thursday?

Conformant Heuristics

Sensing: General observations  Sensing can be thought in terms of  Speicific state variables whose values can be found  OR sensing actions that evaluate truth of some boolean formula over the state variables.  Sense(p) ; Sense(pV(q&r))  A general action may have both causative effects and sensing effects  Sensing effect changes the agent’s knowledge, and not the world  Causative effect changes the world (and may give certain knowledge to the agent)  A pure sensing action only has sensing effects; a pure causative action only has causative effects.  When applied to a belief state, the sensing effects of an action wind up reducing the cardinality of that belief state  basically by removing all states that are not consistent with the sensed effects  Sensing actions introduce branches into the plans  If you apply Sense-A? to a belief state B, you get a partition of B: B A and B ~A  You will have to make a plan for both the branches. And/Or search in the space of belief states

First we will see a model where observability is in terms of state variables Next we shall see a model where observability can be in terms of formulas [Bonet&Geffner]

Modeling observability in terms of observation actions that give values of single state variables If a state variable p Is in B, then there is some action A p that Can sense whether p is true or false

A Simple Progression Algorithm in the presence of pure sensing actions  Call the procedure Plan(B I,G,nil) where  Procedure Plan(B,G,P)  If G is satisfied in all states of B, then return P  Non-deterministically choose:  I. Non-deterministically choose a causative action a that is applicable in B.  Return Plan(a(B),G,P+a)  II. Non-deterministically choose a sensing action s that senses a formula f (could be a single state variable)  Let p’ = Plan(B f,G,nil); p’’=Plan(B ~f,G,nil)  /*B f is the set of states of B in which f is true */  Return P+(s?:p’;p’’) If we always pick I and never do II then we will produce conformant Plans (if we succeed).

Remarks on the progression with sensing actions  Progression is implicitly finding an AND subtree of an AND/OR Graph  If we look for AND subgraphs, we can represent looping plans.  The amount of sensing done in the eventual solution plan is controlled by how often we pick step I vs. step II (if we always pick I, we get conformant solutions).  Progression is as clue-less as to whether to do sensing and which sensing to do, as it is about which causative action to apply  Need heuristic support

Geffner’s model

5/1: Conditional Planning (contd) Midterms returned Monty Python on Conformant Planning Next class * REQUIRED READING* assigned Can we meet sometime on Monday (instead of reading class?)

Very simple Example A1 p=>r,~p A2 ~p=>r,p A3 r=>g O5 observe(p) Problem: Init: don’t know p Goal: g Plan: O5:p?[A1  A3][A2  A3] O5:p? A1 A3 A2 A3 Y N

nuPDDL—not yet a standard…  define (domain d)... (:predicates (P1) (P2) (P3) (P4) (P5) (P6))...)  (define (problem p).... (:init (and (P1) (oneof (and (P2) (P3)) (P4)) (unknown (P5))))....)  define (problem p).... (:effect (and (P1) (oneof (and (P2) (P3)) (P4)) (unknown (P5))))....)  (:observation wall_north - boolean :parameters () (iff (= wall_north 1) (or (= (robot_y) north) (= (robot_x) west))))  ;.... (:observation wall_east - boolean :parameters () (imply (= wall_east 0) (= (robot_x) west)) (imply (= wall_east 1) (true))  :weakgoal : it is required that the plan may reach the goal.  :stronggoal : it is required that every execution of the plan reaches the goal.  :strongcyclicgoal : it is required that every execution of the plan either reaches the goal, or at least always has a chance to do it  :postronggoal : it is required that every execution of the plan reaches the goal, using only the observations described in the domain  :conformantgoal : it is required that every execution of the plan reaches the goal, without ever observing  :ctlgoal : it is required that the CTL formula expressed as a goal is satisfied throughout every possible execution of the plan. Some examples of typical extended goals follow:  Do Reach p (``strong goal''): (af p)  Try Reach p (``weak goal''): (ef p)  Keep Trying Reach p (``strong cyclic goal''): (aw (ef p) p)

A Simple Progression Algorithm in the presence of pure sensing actions  Call the procedure Plan(B I,G,nil) where  Procedure Plan(B,G,P)  If B is a subset of B G (or any B’ in P that is marked “solved”) return P (propagate “solve” marking upwards)  Non-deterministically choose:  I. Non-deterministically choose a causative action a that is applicable in B.  Return Plan(a(B),G,P+a)  II. Non-deterministically choose a sensing action s that senses a formula f (could be a single state variable)  Let p’ = Plan(B f,G,nil); p’’=Plan(B ~f,G,nil)  /*B f is the set of states of B in which f is true */  Return P+(s?:p’;p’’) If we always pick I and never do II then we will produce conformant Plans (if we succeed).

Remarks on the progression with sensing actions  Progression is implicitly finding an AND subgraph of an AND/OR Graph  The amount of sensing done in the eventual solution plan is controlled by how often we pick step I vs. step II (if we always pick I, we get conformant solutions).  Progression is as clue-less as to whether to do sensing and which sensing to do, as it is about which causative action to apply  Need heuristic support

Cost models of conditional plans  The execution cost of a conditional plan is Cost of O5 + [Prob(p=T)* {cost of A1 + A3} + Prob(p=F)*{cost of A2 +A3} ]  Can take max(cost A1+A3; cost A2+A3 )  The planning cost of a conditional plan is however is proportional to the total size of the plan (num actions) O5:p? A1 A3 A2 Y N O5:p? A1 A2 Y N Need to estimate cost of leaf belief states

Similar processing can be done for regression (PO planning is nothing but least-committed regression planning)

Sensing: General observations  Sensing can be thought in terms of  Speicific state variables whose values can be found  OR sensing actions (with preconditions and causative effects) that evaluate truth of some boolean formula over the state variables.  Sense(p) ; Sense(pV(q&r))  A general action may have both causative effects and sensing effects  Sensing effect changes the agent’s knowledge, and not the world  Causative effect changes the world (and may give certain knowledge to the agent)  A pure sensing action only has sensing effects; a pure causative action only has causative effects.  The recent work on conditional planning has considered mostly simplistic sensing actions that have no preconditions and only have pure sensing effects.  When applied to a belief state, the sensing effects of an action wind up reducing the cardinality of that belief state  basically by removing all states that are not consistent with the sensed effects  Sensing actions introduce branches into the plans  If you apply Sense-A? to a belief state B, you get a partition of B: B A and B ~A  You will have to make a plan for both the branches. And/Or search in the space of belief states

Sensing: More things under the mat  Sensing extends the notion of goals too.  Check if Rao is awake vs. Wake up Rao  Presents some tricky issues in terms of goal satisfaction…!  Handling quantified effects and preconditions in the presence of sensing actions  Rm* can satisfy the effect forall files remove(file); without KNOWING what are the files in the directory!  Sensing actions can have preconditions (as well as other causative effects)  The problem of OVER-SENSING (Sort of like the initial driver; also Sphexishness) [XII/Puccini project]  Handling over-sensing using local-closedworld assumptions  Listing a file doesn’t destroy your knowledge about the size of a file; but compressing it does. If you don’t recognize it, you will always be checking the size of the file after each and every action  A general action may have both causative effects and sensing effects  Sensing effect changes the agent’s knowledge, and not the world  Causative effect changes the world (and may give certain knowledge to the agent)  A pure sensing action only has sensing effects; a pure causative action only has causative effects.  The recent work on conditional planning has considered mostly simplistic sensing actions that have no preconditions and only have pure sensing effects.  Sensing has cost!

Sensing: Limited Contingency planning  In many real-world scenarios, having a plan that works in all contingencies is too hard  An idea is to make a plan for some of the contingencies; and monitor/Replan as necessary.  Qn: What contingencies should we plan for?  The ones that are most likely to occur…(need likelihoods)  Qn: What do we do if an unexpected contingency arises?  Monitor (the observable parts of the world)  When it goes out of expected world, replan starting from that state.

“Triangle Tables”

NOT used beyond this point