CMU-Q Lecture 6: Planning Graph GRAPHPLAN. Teacher: Gianni A. Di Caro

Size: px
Start display at page:

Download "CMU-Q Lecture 6: Planning Graph GRAPHPLAN. Teacher: Gianni A. Di Caro"

Transcription

1 CMU-Q Lecture 6: Planning Graph GRAPHPLAN Teacher: Gianni A. Di Caro

2 PLANNING GRAPHS Graph-based data structure representing a polynomial-size/time approximation of the exponential search tree Can be used to automatically produce good heuristic estimates (for A*) Can be used to search for a solution using the GRAPHPLAN algorithm 2

3 PLANNING GRAPHS No-Op Persistent action) Level S 2 Level O 2 Leveled graph: vertices organized into levels/stages, with edges only between levels Condition Precondition Operation Postcondition Two types of vertices on alternating levels: o Conditions o Operations Two types of edges: Precondition: from condition to operation Postcondition: from operation to condition 3

4 GENERIC PLANNING GRAPH Condition S 0 contains all the conditions that hold in initial state 4

5 GENERIC PLANNING GRAPH: OPERATION LEVEL Level S 0 Level O 0 Precondition Condition Add operation to level O i if its preconditions appear in level S i 5

6 GENERIC PLANNING GRAPH: CONDITION LEVEL Precondition Level S 1 No-Op Condition (Persistent action) Add condition to level S i if it is the postcondition of an operation (it is in ADD or DELETE lists) in level O i 1 Add p if in ADD list Add p if in DEL list Keep a previous condition (persistence, no-op action) 6

7 CONDITIONS MONOTONICALLY INCREASE p No-Op O 1 p p No-Op O 1 No-Op p p O 2 q No-Op q No-Op q r No-Op r No-Op r #Conditions (always carried forward by no-ops) 7

8 GENERIC PLANNING GRAPH No-Op (Persistent action) Level S 2 Level O 2 Condition Precondition Operation Postcondition Repeat 8

9 GENERIC PLANNING GRAPH Idea: S i contains all conditions that could hold at stage i (of the real plan) based on past actions; O i contains all operations that could have their preconditions satisfied at stage i (of the real plan) No ordering among the operations is assumed at each stage, they could be executed in parallel The level j at which a condition first appears is an estimate of how difficult is to achieve that condition It can optimistically estimate how many steps it takes to reach a goal g (or sub-goal g i ) from the initial state admissible heuristic! 9

10 OPERATIONS MONOTONICALLY INCREASE p No-Op O 1 p p No-Op O 1 No-Op p p O 2 q No-Op q No-Op q r No-Op r No-Op r #Operations (as a result of conditions monotonic increase, that keep previous preconditions hold and set new preconditions true) 10

11 MUTUAL EXCLUSION LINKS As it is the graph would be too optimistic! The graph data structure also records conflicts between actions or conditions: two operations or conditions are mutually exclusive (mutex) if no valid plan can contain both at the same time A bit more formally: o Two operations are mutex if either their preconditions or postconditions are mutex (inconsistent effects, competing needs, interference) o Two conditions are mutex if one is the negation of the other, or all action pairs that achieve them are mutex (inconsistent support) 11

12 A RUNNING EXAMPLE Have cake and eat cake too problem 12

13 A RUNNING EXAMPLE Only Eat(Cake) is applicable 13

14 A RUNNING EXAMPLE 14

15 MUTEX CASES Inconsistent postconditions (for two operations): the effect of one operation negates the effect of the other Note: no-hop = persistence precondition = condition itself Inconsistent Postconditions B B Inconsistent postconditions Eat(Cake) and no-op Have(Cake) Eaten(Cake) and Eat(Cake) Inconsistent postconditions 15

16 MUTEX CASES Interference (between two operations): a postcondition of one operation negates a precondition of other B B Interference Eat(Cake) and no-op Eaten(Cake) Interference Eat(Cake) and no-op Have(Cake) 16

17 MUTEX CASES Interference Inconsistent postconditions Negation of each other Interference Inconsistent post 17

18 MUTEX CASES Competing needs (for two ops): a precondition of one operation is mutex with a precondition of the other because: o they are the negate of each other, or o they have inconsistent support Bake(Cake) [PRE: Have(Cake)] and Eat(Cake) [PRE: not Have(Cake)] Mutually negated no-op actions B B Competing Needs Competing needs (negation) Competing needs (negation) 18

19 MUTEX CASES Inconsistent support (for two conditions): each possible pair of operations that achieve the two conditions is mutex. B Have(Cake) and Eaten(Cake), are mutex in S 1 but not in S 2 because they can be achieved by Bake(Cake) Inconsistent and Eaten(Cake) Support Inconsistent support No inconsistent support: Bake(Cake) + no-op Eaten(Cake) C 19

20 A CONSTRUCTIVE PROCESS, NO CHOICES The process of constructing the planning graph does not require to choose among the actions No combinatorial search is involved! At each O level, identify applicable actions, including the persistent ones At each S level identify all conditions that could result from the actions at the previous level Check for mutexes and add mutex link relations Check for level-off 20

21 #MUTEXES MONOTONICALLY DECREASE Intuitive proof: o If two operations or conditions are a mutex at a given level, they will be also mutex for all previous levels (because of less conditions or actions to use to possibly avoid their conflicts) o At each level we should also think of all operations that cannot be executed and all actions that do not hold: these are in mutex with everything o By adding them over time the total # of mutexs decreases 21

22 CONDITION MUTEX RELATIONSHIPS MONOTONICALLY DECREASE p No-Op p O 1 q No-Op q r No-Op r #Conditions mutex (new operations appear that can resolve inconsistent support conflicts) 22

23 OPERATION MUTEXES MONOTONICALLY DECREASE Proof idea: o Different behavior for the different types of mutexes o Inconsistent postconditions and interference mutex are properties of the operations themselves hold at every level, we can t remove them o Competing needs depend on conditions at level S i : if two conditions are mutex because they are the negation of each other, then the mutex will hold at every level and so for the operations. Instead, if the conditions are mutex because of inconsistent support, by induction the monotonic increasing in #operations monotonically implies decrease in #mutexes 23

24 LEVELING OFF As a corollary of the previous properties, we see that the planning graph levels off o Consecutive levels become identical Proof: o Limit in the # of construction steps o Upper bound on #operations and #conditions based on problem definition o Lower bound of 0 on #mutexes 24

25 PLANNING GRAPH COMPLEXITY The graph is polynomial in the size of the planning problem P(L,A) (literals, actions) oeach S i has at most L nodes and L 2 mutex links oeach O i has at most A+L nodes, (A+L) 2 mutex links, and 2(AL+L) pre- and post-condition links oa graph with n levels has a size of O(n(A+L) 2 ) o The time to build the graph has the same complexity 25

26 PLANNING GRAPH RELAXED PROBLEM The relaxed problem provides an optimistic estimate of the number of steps to reach each sub-goal g i Heuristics! Level cost of sub-goal (literal) g i = level where g i first appears Level cost for g is an admissible heuristic estimate but it can be quite bad because level number of actions If any sub-goals g i fail to appear in the final level of the graph The problem is unsolvable ( LB) If all sub-goals appear Possibly there is a plan that achieves g, conditional that no mutexes exist 26

27 HEURISTICS FROM PLANNING GRAPHS To estimate the cost of a conjunction of sub-goals for using it as a heuristic in informed search: o Max level: max{level cost of any sub-goal} (clearly admissible) o Level sum: sum of level costs for all sub-goals o Set level: level at which all sub-goals appear without any pair of them being mutex Which is admissible? 1. Level sum 2. Set level 3. Both 4. Neither 27

28 THE GRAPHPLAN ALGORITHM 1. Grow the planning graph until all sub-goals are reachable (appear as conditions) and not mutex (If planning graph levels off first Fail) 2. Call EXTRACT-SOLUTION() on current planning graph (regression backward) 3. If none found, EXPAND-GRAPH by adding another one level to the planning graph and try again to extract the solution, starting backward from the new last level (new actions have been added and therefore they can be used for the regression) 28

29 THE GRAPHPLAN ALGORITHM function GRAPHPLAN(problem) return solution or failure graph INITIAL-PLANNING-GRAPH (problem) goals CONJUNCTS(problem.GOAL) nogoods an empty hash table for t = 0 to do if goals all non-mutex in S t of graph then solution EXTRACT-SOLUTION (graph, goals, NUMLEVELS(graph ), nogoods) if solution failure then return solution if graph and nogoods have both leveled off then return failure graph EXPAND-GRAPH (graph, problem) 29

30 THE GRAPHPLAN ALGORITHM function GRAPHPLAN(problem) return solution or failure graph INITIAL-PLANNING-GRAPH (problem) goals CONJUNCTS(problem.GOAL) nogoods an empty hash table for t = 0 to do if goals all non-mutex in S t of graph then solution EXTRACT-SOLUTION (graph, goals, NUMLEVELS(graph ), nogoods) if solution failure then return solution if graph and nogoods have both leveled off then return failure graph EXPAND-GRAPH (graph, problem) Each time EXTRACT-SOLUTION() fails to find a solution for a subset of goals at a given level, pair (level, subgoals) is stored in a map (hash table) as a new nogood entry During a search, if the same pair is being tried out again, the search can be aborted right away without searching again When a call to EXTRACT-SOLUTION() fails to find a solution, there must be at least one subset of goals that were no achievable, and marked as nogood. The hope is that by expanding the graph, in the next run, there ll be fewer nogoods If same nogood pairs are generated during the search, nogoods have leveled off 30

31 EXTRACT-SOLUTION Backward search where each state corresponds to an S level of the planning graph and a set of unsatisfied sub-goals Initial state is the last level of the planning graph, along with the goals of the planning problem Actions available at level S i are to select any conflict-free subset of operations in A i 1 whose effects cover the goals in the state Resulting state has level S i 1 and its goals are the preconditions for selected actions Goal is to reach a state at level S 0 31

32 EXTRACT-SOLUTION ILLUSTRATED Blue circles are sub-goals Different options to achieve sub-goals in terms of operations Plan: [2 ops] + [1 op] Plan: [1 op] + [2 ops] 32

33 EXTRACT-SOLUTION IN PRACTICE 1. If the current planning graph has n levels, start from the last state level n (set i = n), that includes all sub-goals not in mutex 2. At A i 1 list all minimal subsets of actions not in mutex that cover all sub-goals in S i 3. Select one of the subsets based on some criterion / heuristic 4. The preconditions of the actions in the selected subset define the new search state as a subset of the conditions in S i 1 5. Iterate 2-4 until the initial state is reached Output the solution path 6. If at any A i 1 regression fails because its not possible to cover the sub-goals in S i with a subset of actions not in mutex with each other, backtrack to the last action level with untried action subsets and try out a different subset (as in depth-first) 7. In case of repeated failures, the search will eventually move back to A n 1 where, again, a different subset can be tried out, if no subsets are remaining, the extract-solution() function fails S 2 : A 1 Subset 1 S 2 : A 1 Subset 2 It is useless to try out multiple times the same action at the same level (hash function to check) The outlined process proceeds as a depth-first, meaning that it can find a solution but not necessarily the optimal one (the one with minimal number of actions) Optimal search is needed, with the transition costs being defined by the number of actions in each subset 33

34 HEURISTICS FOR BACKWARD SEARCH EXTRACT-SOLUTION is still a difficult search problem, and the search space can be exponential in the worst-case! Heuristic should be used How to choose among the actions? One general approach: Greedy, based on the level cost of the literals in the set of sub-goals o Pick first the sub-goal with the highest level cost o Prefer actions with easier preconditions to achieve the selected sub-goal o Easier preconditions = Sum (or max) of the level costs of its preconditions is smallest 34

35 FLAT TIRE PROBLEM Not a safe neighborhood, they will steal the good tire from trunk! Russel and Norvig, Example: The spare tire problem 35

36 BACKWARD SEARCH goals actions states (conditions) 36

37 BACKWARD SEARCH, STEPS EXPLAINED Starting from S 0, that does not include the goal s literals, EXPAND-GRAPH is called twice. The literals from the goal are then present in the S 2, and EXPAND-SOLUTION is called Backward search starts at state S 2 with goal At(Spare, Axle) The only action choice for achieving the goal is PutOn(Spare, Axle) The regression brings to a search state S 1 with goals At(Spare,Ground), At(Flat,Axle) At(Spare,Ground) can only be achieved by Remove(Spare,Trunk) At(Flat,Axle) achieved either by Remove(Flat,Axle) or LeaveOvernight() LeaveOvernight() is mutex with Remove(Spare, Trunk) because of interference choose Remove(Spare, Trunk) and Remove(Flat, Axle) New search state at S 0 with the goals At(Spare,Trunk), At(Flat,Axle), that are both in the initial conditions Solution found! Plan: Remove(Spare, Trunk) and Remove(Flat, Axle) in level A 0, PutOn(Spare, Axle) in A 1. 37

38 GRAPHPLAN PROPERTIES Observation: The size of the t-level planning graph and the time to create it are polynomial in t, #operations, #conditions Theorem: GRAPHPLAN returns a plan if one exists, and returns failure if one does not exists The time to find the optimal plan by EXTRACT-SOLUTION can still be exponential in the worst-case (which is consistent with the fact that planning is PSPACE-complete) If only one feasible solution is to be found, then backward search can stop at the first feasible plan, if found The solution is in the form of a partially ordered plan: if at stage t the plan includes n actions, then they can be executed in any desired order, since they are not in conflict with each other 38

39 SUMMARY ON THE USE OF PLANNING GRAPHS Data structure: Polynomial-time construction providing a relaxed representation of the planning search tree GRAPHPLAN: to return a plan if one exists, or return failure if one does not exists. The solution is in the form of a partially ordered plan Extract domain-independent heuristics: e.g., Set level for A* Fast-forwarding planner: 1. consider a relaxed version of the original problem (e.g., by removing action preconditions) 2. solve the relaxed version using GRAPHPLAN 3. Use the length/cost of the solution provided by GRAPHPLAN as a heuristic value for A 39

40 SUMMARY ON CLASSICAL (AUTOMATED) PLANNING Concepts: o Planning, Propositional Logic representation (STRIPS, PDDL) o Problems with finding effective admissible heuristics o Planning graphs o Set level heuristic o P-SPACE complexity Algorithms: o GRAPHPLAN (BACKWARD SEARCH ON PLANNING GRAPH) o PLANNING GRAPHS + A* o FAST-FORWARDING PLANNERS o FORWARD, BACKWARD SEARCH Big ideas: o Planning is search, but admits domain-independent heuristics 40

Planning. Introduction

Planning. Introduction Planning Introduction Planning vs. Problem-Solving Representation in Planning Systems Situation Calculus The Frame Problem STRIPS representation language Blocks World Planning with State-Space Search Progression

More information

INF Kunstig intelligens. Agents That Plan. Roar Fjellheim. INF5390-AI-06 Agents That Plan 1

INF Kunstig intelligens. Agents That Plan. Roar Fjellheim. INF5390-AI-06 Agents That Plan 1 INF5390 - Kunstig intelligens Agents That Plan Roar Fjellheim INF5390-AI-06 Agents That Plan 1 Outline Planning agents Plan representation State-space search Planning graphs GRAPHPLAN algorithm Partial-order

More information

Classical Planning. CS 486/686: Introduction to Artificial Intelligence Winter 2016

Classical Planning. CS 486/686: Introduction to Artificial Intelligence Winter 2016 Classical Planning CS 486/686: Introduction to Artificial Intelligence Winter 2016 1 Classical Planning A plan is a collection of actions for performing some task (reaching some goal) If we have a robot

More information

Planning. Planning. What is Planning. Why not standard search?

Planning. Planning. What is Planning. Why not standard search? Based on slides prepared by Tom Lenaerts SWITCH, Vlaams Interuniversitair Instituut voor Biotechnologie Modifications by Jacek.Malec@cs.lth.se Original slides can be found at http://aima.cs.berkeley.edu

More information

Set 9: Planning Classical Planning Systems. ICS 271 Fall 2013

Set 9: Planning Classical Planning Systems. ICS 271 Fall 2013 Set 9: Planning Classical Planning Systems ICS 271 Fall 2013 Outline: Planning Classical Planning: Situation calculus PDDL: Planning domain definition language STRIPS Planning Planning graphs Readings:

More information

Planning. Why not standard search? What is Planning. Planning language. Planning 1. Difficulty of real world problems

Planning. Why not standard search? What is Planning. Planning language. Planning 1. Difficulty of real world problems Planning Based on slides prepared by Tom Lenaerts SWITCH, Vlaams Interuniversitair Instituut voor Biotechnologie Modifications by Jacek.Malec@cs.lth.se Original slides can be found at http://aima.cs.berkeley.edu

More information

AI Planning. Introduction to Artificial Intelligence! CSCE476/876, Spring 2012:! Send questions to Piazza!

AI Planning. Introduction to Artificial Intelligence! CSCE476/876, Spring 2012:!  Send questions to Piazza! AI! CSCE476/876, Spring 2012:! www.cse.unl.edu/~choueiry/s12-476-876/! Send questions to Piazza! Berthe Y. Choueiry (Shu-we-ri)! Avery Hall, Room 360! Tel: +1(402)472-5444! 1 Reading! Required reading!

More information

Artificial Intelligence 1: planning

Artificial Intelligence 1: planning Artificial Intelligence 1: planning Lecturer: Tom Lenaerts Institut de Recherches Interdisciplinaires et de Développements en Intelligence Artificielle (IRIDIA) Université Libre de Bruxelles Planning The

More information

Planning. What is Planning. Why not standard search? Planning 1

Planning. What is Planning. Why not standard search? Planning 1 Planning Based on slides prepared by Tom Lenaerts SWITCH, Vlaams Interuniversitair Instituut voor Biotechnologie Modifications by Jacek.Malec@cs.lth.se Original slides can be found at http://aima.cs.berkeley.edu

More information

Planning. Artificial Intelligence 1: Planning. What is Planning. General language features. Planning language. Difficulty of real world problems

Planning. Artificial Intelligence 1: Planning. What is Planning. General language features. Planning language. Difficulty of real world problems Planning Artificial Intelligence 1: Planning Lecturer: Tom Lenaerts SWITCH, Vlaams Interuniversitair Instituut voor Biotechnologie The Planning problem Planning with State-space search Partial-order planning

More information

Vorlesung Grundlagen der Künstlichen Intelligenz

Vorlesung Grundlagen der Künstlichen Intelligenz Vorlesung Grundlagen der Künstlichen Intelligenz Reinhard Lafrenz / Prof. A. Knoll Robotics and Embedded Systems Department of Informatics I6 Technische Universität München www6.in.tum.de lafrenz@in.tum.de

More information

1: planning. Lecturer: Tom Lenaerts

1: planning. Lecturer: Tom Lenaerts Artificial Intelligence 1: planning Lecturer: Tom Lenaerts Institut de Recherches Interdisciplinaires et de Développements en Intelligence Artificielle (IRIDIA) Université Libre de Bruxelles Planning The

More information

Set 9: Planning Classical Planning Systems. ICS 271 Fall 2014

Set 9: Planning Classical Planning Systems. ICS 271 Fall 2014 Set 9: Planning Classical Planning Systems ICS 271 Fall 2014 Planning environments Classical Planning: Outline: Planning Situation calculus PDDL: Planning domain definition language STRIPS Planning Planning

More information

Where are we? Informatics 2D Reasoning and Agents Semester 2, Planning with state-space search. Planning with state-space search

Where are we? Informatics 2D Reasoning and Agents Semester 2, Planning with state-space search. Planning with state-space search Informatics 2D Reasoning and Agents Semester 2, 2018 2019 Alex Lascarides alex@inf.ed.ac.uk Where are we? Last time... we defined the planning problem discussed problem with using search and logic in planning

More information

Planning Graphs and Graphplan

Planning Graphs and Graphplan Sec. 11.4 p.1/20 Planning Graphs and Graphplan Section 11.4 Sec. 11.4 p.2/20 Outline The planning graph Planning graph example The graphplan algorithm Using planning graphs for heuristics Additional reference

More information

Principles of AI Planning. Principles of AI Planning. 7.1 How to obtain a heuristic. 7.2 Relaxed planning tasks. 7.1 How to obtain a heuristic

Principles of AI Planning. Principles of AI Planning. 7.1 How to obtain a heuristic. 7.2 Relaxed planning tasks. 7.1 How to obtain a heuristic Principles of AI Planning June 8th, 2010 7. Planning as search: relaxed planning tasks Principles of AI Planning 7. Planning as search: relaxed planning tasks Malte Helmert and Bernhard Nebel 7.1 How to

More information

Intelligent Agents. Planning Graphs - The Graph Plan Algorithm. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University

Intelligent Agents. Planning Graphs - The Graph Plan Algorithm. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University Intelligent Agents Planning Graphs - The Graph Plan Algorithm Ute Schmid Cognitive Systems, Applied Computer Science, Bamberg University last change: July 9, 2015 U. Schmid (CogSys) Intelligent Agents

More information

Acknowledgements. Outline

Acknowledgements. Outline Acknowledgements Heuristic Search for Planning Sheila McIlraith University of Toronto Fall 2010 Many of the slides used in today s lecture are modifications of slides developed by Malte Helmert, Bernhard

More information

Heuristic Search for Planning

Heuristic Search for Planning Heuristic Search for Planning Sheila McIlraith University of Toronto Fall 2010 S. McIlraith Heuristic Search for Planning 1 / 50 Acknowledgements Many of the slides used in today s lecture are modifications

More information

Chapter 6 Planning-Graph Techniques

Chapter 6 Planning-Graph Techniques Lecture slides for Automated Planning: Theory and Practice Chapter 6 Planning-Graph Techniques Dana S. Nau CMSC 722, AI Planning University of Maryland, Spring 2008 1 Motivation A big source of inefficiency

More information

Planning as Search. Progression. Partial-Order causal link: UCPOP. Node. World State. Partial Plans World States. Regress Action.

Planning as Search. Progression. Partial-Order causal link: UCPOP. Node. World State. Partial Plans World States. Regress Action. Planning as Search State Space Plan Space Algorihtm Progression Regression Partial-Order causal link: UCPOP Node World State Set of Partial Plans World States Edge Apply Action If prec satisfied, Add adds,

More information

Activity Planning and Execution I: Operator-based Planning and Plan Graphs. Assignments

Activity Planning and Execution I: Operator-based Planning and Plan Graphs. Assignments Activity Planning and Execution I: Operator-based Planning and Plan Graphs Slides draw upon material from: Prof. Maria Fox, Univ Strathclyde Brian C. Williams 16.410-13 October 4 th, 2010 Assignments Remember:

More information

Plan Generation Classical Planning

Plan Generation Classical Planning Plan Generation Classical Planning Manuela Veloso Carnegie Mellon University School of Computer Science 15-887 Planning, Execution, and Learning Fall 2016 Outline What is a State and Goal What is an Action

More information

CSC2542 Planning-Graph Techniques

CSC2542 Planning-Graph Techniques 1 Administrative Announcements Discussion of tutorial time Email me to set up a time to meet to discuss your project in the next week. Fridays are best CSC2542 Planning-Graph Techniques Sheila McIlraith

More information

3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times 3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

More information

Question II. A) Because there will be additional actions supporting such conditions (at least Noops), relaxing the mutex propagation.

Question II. A) Because there will be additional actions supporting such conditions (at least Noops), relaxing the mutex propagation. Homework III Solutions uestion I A) Optimal parallel plan: B) Graphplan plan:. No step optimal C) e can change the action interference definition such that two actions and are interfering if their interacting

More information

CMU-Q Lecture 2: Search problems Uninformed search. Teacher: Gianni A. Di Caro

CMU-Q Lecture 2: Search problems Uninformed search. Teacher: Gianni A. Di Caro CMU-Q 15-381 Lecture 2: Search problems Uninformed search Teacher: Gianni A. Di Caro RECAP: ACT RATIONALLY Think like people Think rationally Agent Sensors? Actuators Percepts Actions Environment Act like

More information

Informed Search Methods

Informed Search Methods Informed Search Methods How can we improve searching strategy by using intelligence? Map example: Heuristic: Expand those nodes closest in as the crow flies distance to goal 8-puzzle: Heuristic: Expand

More information

Informed Search. CS 486/686 University of Waterloo May 10. cs486/686 Lecture Slides 2005 (c) K. Larson and P. Poupart

Informed Search. CS 486/686 University of Waterloo May 10. cs486/686 Lecture Slides 2005 (c) K. Larson and P. Poupart Informed Search CS 486/686 University of Waterloo May 0 Outline Using knowledge Heuristics Best-first search Greedy best-first search A* search Other variations of A* Back to heuristics 2 Recall from last

More information

Dipartimento di Elettronica Informazione e Bioingegneria. Cognitive Robotics. SATplan. Act1. Pre1. Fact. G. Gini Act2

Dipartimento di Elettronica Informazione e Bioingegneria. Cognitive Robotics. SATplan. Act1. Pre1. Fact. G. Gini Act2 Dipartimento di Elettronica Informazione e Bioingegneria Cognitive Robotics SATplan Pre1 Pre2 @ 2015 Act1 Act2 Fact why SAT (satisfability)? 2 Classical planning has been observed as a form of logical

More information

CPS 170: Artificial Intelligence Search

CPS 170: Artificial Intelligence   Search CPS 170: Artificial Intelligence http://www.cs.duke.edu/courses/spring09/cps170/ Search Instructor: Vincent Conitzer Search We have some actions that can change the state of the world Change resulting

More information

CS 5100: Founda.ons of Ar.ficial Intelligence

CS 5100: Founda.ons of Ar.ficial Intelligence CS 5100: Founda.ons of Ar.ficial Intelligence AI Planning Prof. Amy Sliva October 13, 2011 Outline Review A* Search AI Planning State space search Planning graphs Situation calculus Best- first search

More information

Creating Admissible Heuristic Functions: The General Relaxation Principle and Delete Relaxation

Creating Admissible Heuristic Functions: The General Relaxation Principle and Delete Relaxation Creating Admissible Heuristic Functions: The General Relaxation Principle and Delete Relaxation Relaxed Planning Problems 74 A classical planning problem P has a set of solutions Solutions(P) = { π : π

More information

11.1 Facility Location

11.1 Facility Location CS787: Advanced Algorithms Scribe: Amanda Burton, Leah Kluegel Lecturer: Shuchi Chawla Topic: Facility Location ctd., Linear Programming Date: October 8, 2007 Today we conclude the discussion of local

More information

Introduction to Linear-Time Temporal Logic. CSE 814 Introduction to LTL

Introduction to Linear-Time Temporal Logic. CSE 814 Introduction to LTL Introduction to Linear-Time Temporal Logic CSE 814 Introduction to LTL 1 Outline Motivation for TL in general Types of properties to be expressed in TL Structures on which LTL formulas are evaluated Syntax

More information

15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015

15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015 15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015 While we have good algorithms for many optimization problems, the previous lecture showed that many

More information

CS 331: Artificial Intelligence Informed Search. Informed Search

CS 331: Artificial Intelligence Informed Search. Informed Search CS 331: Artificial Intelligence Informed Search 1 Informed Search How can we make search smarter? Use problem-specific knowledge beyond the definition of the problem itself Specifically, incorporate knowledge

More information

CS 331: Artificial Intelligence Informed Search. Informed Search

CS 331: Artificial Intelligence Informed Search. Informed Search CS 331: Artificial Intelligence Informed Search 1 Informed Search How can we make search smarter? Use problem-specific knowledge beyond the definition of the problem itself Specifically, incorporate knowledge

More information

15-780: Graduate AI Homework Assignment #2 Solutions

15-780: Graduate AI Homework Assignment #2 Solutions 15-780: Graduate AI Homework Assignment #2 Solutions Out: February 12, 2015 Due: February 25, 2015 Collaboration Policy: You may discuss the problems with others, but you must write all code and your writeup

More information

Greedy Algorithms 1. For large values of d, brute force search is not feasible because there are 2 d

Greedy Algorithms 1. For large values of d, brute force search is not feasible because there are 2 d Greedy Algorithms 1 Simple Knapsack Problem Greedy Algorithms form an important class of algorithmic techniques. We illustrate the idea by applying it to a simplified version of the Knapsack Problem. Informally,

More information

Planning. CPS 570 Ron Parr. Some Actual Planning Applications. Used to fulfill mission objectives in Nasa s Deep Space One (Remote Agent)

Planning. CPS 570 Ron Parr. Some Actual Planning Applications. Used to fulfill mission objectives in Nasa s Deep Space One (Remote Agent) Planning CPS 570 Ron Parr Some Actual Planning Applications Used to fulfill mission objectives in Nasa s Deep Space One (Remote Agent) Particularly important for space operations due to latency Also used

More information

Planning Graph Analysis* Fast Planning Through

Planning Graph Analysis* Fast Planning Through Fast Planning Through Avnm L Blum School of Computer Science Carnegie Mellon University Pittsburgh PA 15213-3891 avnm@cs emu edu Planning Graph Analysis* Merrick L Furst School of Computer Science Carnegie

More information

Principles of Autonomy and Decision Making

Principles of Autonomy and Decision Making Massachusetts Institute of Technology 16.410-13 Principles of Autonomy and Decision Making Problem Set #6 (distributed 10/22/04). Paper solutions are due no later than 5pm on Friday, 10/29/04. Please give

More information

Informed search strategies (Section ) Source: Fotolia

Informed search strategies (Section ) Source: Fotolia Informed search strategies (Section 3.5-3.6) Source: Fotolia Review: Tree search Initialize the frontier using the starting state While the frontier is not empty Choose a frontier node to expand according

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Tuomas Sandholm Carnegie Mellon University Computer Science Department [Read Chapter 6 of Russell & Norvig] Constraint satisfaction problems (CSPs) Standard search problem:

More information

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 9.1 Linear Programming Suppose we are trying to approximate a minimization

More information

Combinatorial Optimization

Combinatorial Optimization Combinatorial Optimization Frank de Zeeuw EPFL 2012 Today Introduction Graph problems - What combinatorial things will we be optimizing? Algorithms - What kind of solution are we looking for? Linear Programming

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Lecturer 7 - Planning Lecturer: Truong Tuan Anh HCMUT - CSE 1 Outline Planning problem State-space search Partial-order planning Planning graphs Planning with propositional logic

More information

An Evaluation of Blackbox Graph Planning

An Evaluation of Blackbox Graph Planning An Evaluation of Blackbox Graph Planning John Duchi, James Connor, and Bruce Lo jduchi@stanford.edu, jconnor@stanford.edu, brucelo@cs.stanford.edu, I. Introduction Stanford University CS227: Assignment

More information

val(y, I) α (9.0.2) α (9.0.3)

val(y, I) α (9.0.2) α (9.0.3) CS787: Advanced Algorithms Lecture 9: Approximation Algorithms In this lecture we will discuss some NP-complete optimization problems and give algorithms for solving them that produce a nearly optimal,

More information

Distributed minimum spanning tree problem

Distributed minimum spanning tree problem Distributed minimum spanning tree problem Juho-Kustaa Kangas 24th November 2012 Abstract Given a connected weighted undirected graph, the minimum spanning tree problem asks for a spanning subtree with

More information

Greedy Algorithms 1 {K(S) K(S) C} For large values of d, brute force search is not feasible because there are 2 d {1,..., d}.

Greedy Algorithms 1 {K(S) K(S) C} For large values of d, brute force search is not feasible because there are 2 d {1,..., d}. Greedy Algorithms 1 Simple Knapsack Problem Greedy Algorithms form an important class of algorithmic techniques. We illustrate the idea by applying it to a simplified version of the Knapsack Problem. Informally,

More information

1 Definition of Reduction

1 Definition of Reduction 1 Definition of Reduction Problem A is reducible, or more technically Turing reducible, to problem B, denoted A B if there a main program M to solve problem A that lacks only a procedure to solve problem

More information

A.I.: Informed Search Algorithms. Chapter III: Part Deux

A.I.: Informed Search Algorithms. Chapter III: Part Deux A.I.: Informed Search Algorithms Chapter III: Part Deux Best-first search Greedy best-first search A * search Heuristics Outline Overview Informed Search: uses problem-specific knowledge. General approach:

More information

Ad hoc and Sensor Networks Topology control

Ad hoc and Sensor Networks Topology control Ad hoc and Sensor Networks Topology control Goals of this chapter Networks can be too dense too many nodes in close (radio) vicinity This chapter looks at methods to deal with such networks by Reducing/controlling

More information

EECS 219C: Formal Methods Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Formal Methods Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Formal Methods Boolean Satisfiability Solving Sanjit A. Seshia EECS, UC Berkeley The Boolean Satisfiability Problem (SAT) Given: A Boolean formula F(x 1, x 2, x 3,, x n ) Can F evaluate to 1

More information

Example: Map coloring

Example: Map coloring Today s s lecture Local Search Lecture 7: Search - 6 Heuristic Repair CSP and 3-SAT Solving CSPs using Systematic Search. Victor Lesser CMPSCI 683 Fall 2004 The relationship between problem structure and

More information

4.1 Review - the DPLL procedure

4.1 Review - the DPLL procedure Applied Logic Lecture 4: Efficient SAT solving CS 4860 Spring 2009 Thursday, January 29, 2009 The main purpose of these notes is to help me organize the material that I used to teach today s lecture. They

More information

36.1 Relaxed Planning Graphs

36.1 Relaxed Planning Graphs Foundations of Artificial Intelligence ay 9, 26 6. Automated Planning: Delete Relaxation Heuristics Foundations of Artificial Intelligence 6. Automated Planning: Delete Relaxation Heuristics artin Wehrle

More information

Informed Search A* Algorithm

Informed Search A* Algorithm Informed Search A* Algorithm CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2018 Soleymani Artificial Intelligence: A Modern Approach, Chapter 3 Most slides have

More information

Heuris'c Search. Reading note: Chapter 4 covers heuristic search.

Heuris'c Search. Reading note: Chapter 4 covers heuristic search. Heuris'c Search Reading note: Chapter 4 covers heuristic search. Credits: Slides in this deck are drawn from or inspired by a multitude of sources including: Shaul Markovitch Jurgen Strum Sheila McIlraith

More information

Informed search algorithms. Chapter 3 (Based on Slides by Stuart Russell, Dan Klein, Richard Korf, Subbarao Kambhampati, and UW-AI faculty)

Informed search algorithms. Chapter 3 (Based on Slides by Stuart Russell, Dan Klein, Richard Korf, Subbarao Kambhampati, and UW-AI faculty) Informed search algorithms Chapter 3 (Based on Slides by Stuart Russell, Dan Klein, Richard Korf, Subbarao Kambhampati, and UW-AI faculty) Intuition, like the rays of the sun, acts only in an inflexibly

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can

More information

Lecture 2. 1 Introduction. 2 The Set Cover Problem. COMPSCI 632: Approximation Algorithms August 30, 2017

Lecture 2. 1 Introduction. 2 The Set Cover Problem. COMPSCI 632: Approximation Algorithms August 30, 2017 COMPSCI 632: Approximation Algorithms August 30, 2017 Lecturer: Debmalya Panigrahi Lecture 2 Scribe: Nat Kell 1 Introduction In this lecture, we examine a variety of problems for which we give greedy approximation

More information

Planning: STRIPS and POP planners

Planning: STRIPS and POP planners S 57 Introduction to I Lecture 8 Planning: STRIPS and POP planners Milos Hauskrecht milos@cs.pitt.edu 5329 Sennott Square Representation of actions, situations, events Propositional and first order logic

More information

Sankalchand Patel College of Engineering - Visnagar Department of Computer Engineering and Information Technology. Assignment

Sankalchand Patel College of Engineering - Visnagar Department of Computer Engineering and Information Technology. Assignment Class: V - CE Sankalchand Patel College of Engineering - Visnagar Department of Computer Engineering and Information Technology Sub: Design and Analysis of Algorithms Analysis of Algorithm: Assignment

More information

Greedy Algorithms. Algorithms

Greedy Algorithms. Algorithms Greedy Algorithms Algorithms Greedy Algorithms Many algorithms run from stage to stage At each stage, they make a decision based on the information available A Greedy algorithm makes decisions At each

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence CSC348 Unit 4: Reasoning, change and planning Syedur Rahman Lecturer, CSE Department North South University syedur.rahman@wolfson.oxon.org Artificial Intelligence: Lecture Notes

More information

Maximal Independent Set

Maximal Independent Set Chapter 0 Maximal Independent Set In this chapter we present a highlight of this course, a fast maximal independent set (MIS) algorithm. The algorithm is the first randomized algorithm that we study in

More information

CS 188: Artificial Intelligence Fall 2008

CS 188: Artificial Intelligence Fall 2008 CS 188: Artificial Intelligence Fall 2008 Lecture 4: CSPs 9/9/2008 Dan Klein UC Berkeley Many slides over the course adapted from either Stuart Russell or Andrew Moore 1 1 Announcements Grading questions:

More information

Announcements. CS 188: Artificial Intelligence Fall Large Scale: Problems with A* What is Search For? Example: N-Queens

Announcements. CS 188: Artificial Intelligence Fall Large Scale: Problems with A* What is Search For? Example: N-Queens CS 188: Artificial Intelligence Fall 2008 Announcements Grading questions: don t panic, talk to us Newsgroup: check it out Lecture 4: CSPs 9/9/2008 Dan Klein UC Berkeley Many slides over the course adapted

More information

Planning and Optimization

Planning and Optimization Planning and Optimization F3. Post-hoc Optimization & Operator Counting Malte Helmert and Gabriele Röger Universität Basel December 6, 2017 Post-hoc Optimization Heuristic Content of this Course: Heuristic

More information

Optimal Crane Scheduling

Optimal Crane Scheduling Optimal Crane Scheduling IonuŃ Aron Iiro Harjunkoski John Hooker Latife Genç Kaya March 2007 1 Problem Schedule 2 cranes to transfer material between locations in a manufacturing plant. For example, copper

More information

CMU-Q Lecture 8: Optimization I: Optimization for CSP Local Search. Teacher: Gianni A. Di Caro

CMU-Q Lecture 8: Optimization I: Optimization for CSP Local Search. Teacher: Gianni A. Di Caro CMU-Q 15-381 Lecture 8: Optimization I: Optimization for CSP Local Search Teacher: Gianni A. Di Caro LOCAL SEARCH FOR CSP Real-life CSPs can be very large and hard to solve Methods so far: construct a

More information

An Introduction to Chromatic Polynomials

An Introduction to Chromatic Polynomials An Introduction to Chromatic Polynomials Julie Zhang May 17, 2018 Abstract This paper will provide an introduction to chromatic polynomials. We will first define chromatic polynomials and related terms,

More information

Notes for Lecture 24

Notes for Lecture 24 U.C. Berkeley CS170: Intro to CS Theory Handout N24 Professor Luca Trevisan December 4, 2001 Notes for Lecture 24 1 Some NP-complete Numerical Problems 1.1 Subset Sum The Subset Sum problem is defined

More information

Intelligent Agents. State-Space Planning. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University. last change: 14.

Intelligent Agents. State-Space Planning. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University. last change: 14. Intelligent Agents State-Space Planning Ute Schmid Cognitive Systems, Applied Computer Science, Bamberg University last change: 14. April 2016 U. Schmid (CogSys) Intelligent Agents last change: 14. April

More information

Informed (Heuristic) Search. Idea: be smart about what paths to try.

Informed (Heuristic) Search. Idea: be smart about what paths to try. Informed (Heuristic) Search Idea: be smart about what paths to try. 1 Blind Search vs. Informed Search What s the difference? How do we formally specify this? A node is selected for expansion based on

More information

Greedy algorithms is another useful way for solving optimization problems.

Greedy algorithms is another useful way for solving optimization problems. Greedy Algorithms Greedy algorithms is another useful way for solving optimization problems. Optimization Problems For the given input, we are seeking solutions that must satisfy certain conditions. These

More information

Massively Parallel Seesaw Search for MAX-SAT

Massively Parallel Seesaw Search for MAX-SAT Massively Parallel Seesaw Search for MAX-SAT Harshad Paradkar Rochester Institute of Technology hp7212@rit.edu Prof. Alan Kaminsky (Advisor) Rochester Institute of Technology ark@cs.rit.edu Abstract The

More information

Lecture 14: Lower Bounds for Tree Resolution

Lecture 14: Lower Bounds for Tree Resolution IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Advanced Course on Computational Complexity Lecture 14: Lower Bounds for Tree Resolution David Mix Barrington and Alexis Maciel August

More information

CMU-Q Lecture 4: Path Planning. Teacher: Gianni A. Di Caro

CMU-Q Lecture 4: Path Planning. Teacher: Gianni A. Di Caro CMU-Q 15-381 Lecture 4: Path Planning Teacher: Gianni A. Di Caro APPLICATION: MOTION PLANNING Path planning: computing a continuous sequence ( a path ) of configurations (states) between an initial configuration

More information

Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret

Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret Greedy Algorithms (continued) The best known application where the greedy algorithm is optimal is surely

More information

4 INFORMED SEARCH AND EXPLORATION. 4.1 Heuristic Search Strategies

4 INFORMED SEARCH AND EXPLORATION. 4.1 Heuristic Search Strategies 55 4 INFORMED SEARCH AND EXPLORATION We now consider informed search that uses problem-specific knowledge beyond the definition of the problem itself This information helps to find solutions more efficiently

More information

Introduction to Graphs. CS2110, Spring 2011 Cornell University

Introduction to Graphs. CS2110, Spring 2011 Cornell University Introduction to Graphs CS2110, Spring 2011 Cornell University A graph is a data structure for representing relationships. Each graph is a set of nodes connected by edges. Synonym Graph Hostile Slick Icy

More information

Lecture 4: Informed/Heuristic Search

Lecture 4: Informed/Heuristic Search Lecture 4: Informed/Heuristic Search Outline Limitations of uninformed search methods Informed (or heuristic) search uses problem-specific heuristics to improve efficiency Best-first A* RBFS SMA* Techniques

More information

Copyright 2000, Kevin Wayne 1

Copyright 2000, Kevin Wayne 1 Guessing Game: NP-Complete? 1. LONGEST-PATH: Given a graph G = (V, E), does there exists a simple path of length at least k edges? YES. SHORTEST-PATH: Given a graph G = (V, E), does there exists a simple

More information

Software tools for Classical Planning Artificial Intelligence Qatar Fall 2018 Sep 20, 2018

Software tools for Classical Planning Artificial Intelligence Qatar Fall 2018 Sep 20, 2018 Sep 20, 2018 Contact: Eduardo Feo-Flushing CONTENTS 1 Quick Start 1 1.1 Planning Problem Representation.................................... 1 1.2 The Planning Graph...........................................

More information

ITCS 6150 Intelligent Systems. Lecture 5 Informed Searches

ITCS 6150 Intelligent Systems. Lecture 5 Informed Searches ITCS 6150 Intelligent Systems Lecture 5 Informed Searches Informed Searches We are informed (in some way) about future states and future paths We use this information to make better decisions about which

More information

Heuristic Search. Heuristic Search. Heuristic Search. CSE 3401: Intro to AI & LP Informed Search

Heuristic Search. Heuristic Search. Heuristic Search. CSE 3401: Intro to AI & LP Informed Search CSE 3401: Intro to AI & LP Informed Search Heuristic Search. Required Readings: Chapter 3, Sections 5 and 6, and Chapter 4, Section 1. In uninformed search, we don t try to evaluate which of the nodes

More information

Framework for Design of Dynamic Programming Algorithms

Framework for Design of Dynamic Programming Algorithms CSE 441T/541T Advanced Algorithms September 22, 2010 Framework for Design of Dynamic Programming Algorithms Dynamic programming algorithms for combinatorial optimization generalize the strategy we studied

More information

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving Sanjit A. Seshia EECS, UC Berkeley Project Proposals Due Friday, February 13 on bcourses Will discuss project topics on Monday Instructions

More information

Coverage Approximation Algorithms

Coverage Approximation Algorithms DATA MINING LECTURE 12 Coverage Approximation Algorithms Example Promotion campaign on a social network We have a social network as a graph. People are more likely to buy a product if they have a friend

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Search and Lookahead Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 4/6, 2012 Nebel, Hué and Wölfl (Universität Freiburg) Constraint

More information

Lecture 7: Asymmetric K-Center

Lecture 7: Asymmetric K-Center Advanced Approximation Algorithms (CMU 18-854B, Spring 008) Lecture 7: Asymmetric K-Center February 5, 007 Lecturer: Anupam Gupta Scribe: Jeremiah Blocki In this lecture, we will consider the K-center

More information

ICS 606. Intelligent Autonomous Agents 1

ICS 606. Intelligent Autonomous Agents 1 Intelligent utonomous gents ICS 606 / EE 606 Fall 2011 Nancy E. Reed nreed@hawaii.edu Lecture #4 Practical Reasoning gents Intentions Planning Means-ends reasoning The blocks world References Wooldridge

More information

Heuristic (Informed) Search

Heuristic (Informed) Search Heuristic (Informed) Search (Where we try to choose smartly) R&N: Chap., Sect..1 3 1 Search Algorithm #2 SEARCH#2 1. INSERT(initial-node,Open-List) 2. Repeat: a. If empty(open-list) then return failure

More information

Subset sum problem and dynamic programming

Subset sum problem and dynamic programming Lecture Notes: Dynamic programming We will discuss the subset sum problem (introduced last time), and introduce the main idea of dynamic programming. We illustrate it further using a variant of the so-called

More information

Absorbing Random walks Coverage

Absorbing Random walks Coverage DATA MINING LECTURE 3 Absorbing Random walks Coverage Random Walks on Graphs Random walk: Start from a node chosen uniformly at random with probability. n Pick one of the outgoing edges uniformly at random

More information

CPS 270: Artificial Intelligence Planning

CPS 270: Artificial Intelligence   Planning CPS 270: Artificial Intelligence http://www.cs.duke.edu/courses/fall08/cps270/ Planning Instructor: Vincent Conitzer Planning We studied how to take actions in the world (search) We studied how to represent

More information