acknowledgements
play

Acknowledgements Many of the slides used in todays lecture are - PowerPoint PPT Presentation

Acknowledgements Many of the slides used in todays lecture are modifications of Search Algorithms for Planning slides developed by Malte Helmert, Bernhard Nebel, and Jussi Rintanen. Sheila McIlraith Some material comes from papers by Daniel


  1. Acknowledgements Many of the slides used in today’s lecture are modifications of Search Algorithms for Planning slides developed by Malte Helmert, Bernhard Nebel, and Jussi Rintanen. Sheila McIlraith Some material comes from papers by Daniel Bryce and Rao Kambhampati. University of Toronto I would like to gratefully acknowledge the contributions of these Fall 2010 researchers, and thank them for generously permitting me to use aspects of their presentation material. S. McIlraith Search Algorithms 1 / 50 S. McIlraith Search Algorithms 2 / 50 Outline Selecting the Right Planning Approach 1 Introduction to search algorithms for planning Search nodes & search states Choices to make: Search for planning Common procedures for search algorithms 1 search direction: progression/regression/both 2 search space representation: states/sets of states 2 Uninformed search algorithms 3 search algorithm: uninformed/heuristic; systematic/local � this week and next 3 Heuristic search algorithms 4 search control: heuristics, pruning techniques Heuristics: definition and properties Systematic heuristic search algorithms Heuristic local search algorithms S. McIlraith Search Algorithms 3 / 50 S. McIlraith Search Algorithms 4 / 50

  2. Search Search states vs. search nodes In search, one distinguishes: search states s � states (vertices) of the transition system search nodes σ � search states plus information on Search algorithms are used to find solutions (plans) for where/when/how they are encountered during search transition systems in general, not just for planning tasks. What is in a search node? Planning is one application of search among many. Different search algorithms store different information in a search Today, we describe some popular and/or representative search node σ , but typical information includes: algorithms, and (the basics of) how they apply to planning. Most of the search material is covered in the textbook: state ( σ ) : associated search state Russell & Norvig: AI a Modern Approach, if you wish a parent ( σ ) : pointer to search node from which σ is reached further reference. action ( σ ) : an action/operator leading from state ( parent ( σ )) to state ( σ ) g ( σ ) : cost of σ (length of path from the root node) For the root node, parent ( σ ) and action ( σ ) are undefined. S. McIlraith Search Algorithms 5 / 50 S. McIlraith Search Algorithms 6 / 50 Search states vs. planning states Required ingredients for search Search states � = (planning) states: A general search algorithm can be applied to any transition system for which we can define the following three operations: Search states don’t have to correspond to states in the planning sense. progression: search states ≈ (planning) states init () : generate the initial state regression: search states ≈ sets of states (formulae) is-goal ( s ) : test if a given state is a goal state Search algorithms for planning where search states are succ ( s ) : generate the set of successor states of state s , along planning states are called state-space search algorithms. with the operators through which they are reached Strictly speaking, regression is not an example of state-space (represented as pairs � o, s ′ � of operators and states) search, although the term is often used loosely. However, we will put the emphasis on progression, which is Together, these three functions form a search space (a very similar almost always state-space search. notion to a transition system). S. McIlraith Search Algorithms 7 / 50 S. McIlraith Search Algorithms 8 / 50

  3. Outline Search for planning: progression Let Π = � A, I, O, G � be a planning task. 1 Introduction to search algorithms for planning Search space for progression search Search nodes & search states states: all states of Π (assignments to A ) Search for planning Common procedures for search algorithms init () = I succ ( s ) = {� o, s ′ � | o ∈ O, s ′ = app o ( s ) } 2 Uninformed search algorithms � true if s | = G is-goal ( s ) = otherwise false 3 Heuristic search algorithms Heuristics: definition and properties where app o ( s ) refers to the state resulting from applying operator Systematic heuristic search algorithms o in state s . Heuristic local search algorithms * Note the unfortunate choice of A to denote the set of atomic propositions, rather than the set of actions. S. McIlraith Search Algorithms 9 / 50 S. McIlraith Search Algorithms 10 / 50 Search for planning: regression Classification of search algorithms Let � A, I, O, G � be a planning task. uninformed search vs. heuristic search: Search space for regression search uninformed search algorithms only use the basic ingredients for general search algorithms states: all formulae over A heuristic search algorithms additionally use heuristic functions init () = G succ ( φ ) = {� o, φ ′ � | o ∈ O, φ ′ = regr o ( φ ) , φ ′ is satisfiable } which estimate how close a node is to the goal (modified if splitting is used) systematic search vs. local search: � true if I | = φ systematic algorithms consider a large number of search nodes is-goal ( φ ) = otherwise simultaneously false local search algorithms work with one (or a few) candidate where regr o ( φ ) refers to the formula resulting from regressing φ solutions (search nodes) at a time over operator o . not a black-and-white distinction; there are crossbreeds (e. g., Recall that when regressing the search node is only a partial state, enforced hill-climbing) often compactly represented by a formula, e.g. φ . S. McIlraith Search Algorithms 11 / 50 S. McIlraith Search Algorithms 12 / 50

  4. Classification: what works where in planning? Outline uninformed vs. heuristic search: 1 Introduction to search algorithms for planning For satisficing planning, heuristic search vastly outperforms Search nodes & search states uninformed algorithms on most domains. Search for planning Common procedures for search algorithms For optimal planning, the difference is less pronounced. An efficiently implemented uninformed algorithm is not easy to beat in most domains. 2 Uninformed search algorithms systematic search vs. local search: 3 Heuristic search algorithms For satisficing planning, the most successful algorithms are Heuristics: definition and properties somewhere between the two extremes. Systematic heuristic search algorithms For optimal planning, systematic algorithms are required. Heuristic local search algorithms S. McIlraith Search Algorithms 13 / 50 S. McIlraith Search Algorithms 14 / 50 Common procedures for search algorithms Procedure make-root-node make-root-node: Create a search node without parent. Before we describe the different search algorithms, we introduce Procedure make-root-node three procedures used by all of them: def make-root-node( s ): make-root-node: Create a search node without parent. σ := new node make-node: Create a search node for a state generated as the state ( σ ) := s successor of another state. parent ( σ ) := undefined extract-solution: Extract a solution from a search node action ( σ ) := undefined representing a goal state. g ( σ ) := 0 return σ S. McIlraith Search Algorithms 15 / 50 S. McIlraith Search Algorithms 16 / 50

  5. Procedure make-node Procedure extract-solution make-node: Create a search node for a state generated as the extract-solution: Extract a solution from a search node successor of another state. representing a goal state. Procedure make-node Procedure extract-solution def make-node( σ , o , s ): def extract-solution( σ ): σ ′ := new node solution := new list state ( σ ′ ) := s while parent ( σ ) is defined: parent ( σ ′ ) := σ solution . push-front ( action ( σ )) action ( σ ′ ) := o σ := parent ( σ ) g ( σ ′ ) := g ( σ ) + 1 return solution return σ ′ S. McIlraith Search Algorithms 17 / 50 S. McIlraith Search Algorithms 18 / 50 Uninformed search algorithms Outline Uninformed algorithms are less relevant for planning than heuristic ones, so we keep their discussion brief. 1 Introduction to search algorithms for planning Search nodes & search states Uninformed algorithms are mostly interesting to us because Search for planning we can compare and contrast them to related heuristic search Common procedures for search algorithms algorithms. 2 Uninformed search algorithms Popular uninformed systematic search algorithms: breadth-first search 3 Heuristic search algorithms depth-first search Heuristics: definition and properties iterated depth-first search Systematic heuristic search algorithms Heuristic local search algorithms Popular uninformed local search algorithms: random walk S. McIlraith Search Algorithms 19 / 50 S. McIlraith Search Algorithms 20 / 50

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend