SEARCH TREE. Generating the children of a node

Similar documents
SEARCH SEARCH TREE. Node: State in state tree. Root node: Top of state tree

Princess Nora University Faculty of Computer & Information Systems ARTIFICIAL INTELLIGENCE (CS 370D) Computer Science Department

Uninformed search methods II.

Problem Solving Agents

Better Search Improved Uninformed Search CIS 32

Uninformed search methods II.

Solving Problems by Searching chap3 1. Problem-Solving Agents

Problem Solving as Search - I

Uninformed Search Strategies

CSE 3401: Intro to AI & LP Uninformed Search II

COMP9414: Artificial Intelligence Uninformed Search

Uninformed Search (Ch )

Uninformed search methods

CENG 466 Artificial Intelligence. Lecture 4 Solving Problems by Searching (II)

Uninformed search methods

Artificial Intelligence. Uninformed Search Strategies

Uninformed search strategies

Uninformed Search (Ch )

Search I. Tuomas Sandholm Carnegie Mellon University Computer Science Department. [Read Russell & Norvig Chapter 3]

COMP219: Artificial Intelligence. Lecture 8: Combining Search Strategies and Speeding Up

Overview. Depth Limited Search. Depth Limited Search. COMP219: Artificial Intelligence. Lecture 8: Combining Search Strategies and Speeding Up

CSE 3402: Intro to Artificial Intelligence Uninformed Search II

Representation. Representation. Representation. Representation. 8 puzzle.

CS 4649/7649 Robot Intelligence: Planning

6.034 Artificial Intelligence

Introduction. AI and Searching. Simple Example. Simple Example. Now a Bit Harder. From Hammersmith to King s Cross

Real World Search Problems. CS 331: Artificial Intelligence Uninformed Search. Simpler Search Problems. Example: Oregon. Search Problem Formulation

Transposition Table, History Heuristic, and other Search Enhancements

CSC384: Introduction to Artificial Intelligence. Search

G53CLP Constraint Logic Programming

Spider Search: An Efficient and Non-Frontier-Based Real-Time Search Algorithm

Depth-bounded Discrepancy Search

/435 Artificial Intelligence Fall 2015

Planning and Acting in Partially Observable Stochastic Domains

CS472 Foundations of Artificial Intelligence. Final Exam December 19, :30pm

CT PET-2018 Part - B Phd COMPUTER APPLICATION Sample Question Paper

Decision Trees. an Introduction

Neural Nets Using Backpropagation. Chris Marriott Ryan Shirley CJ Baker Thomas Tannahill

Problem-Solving: A* and Beyond. CSCI 3202, Fall 2010

1.1 The size of the search space Modeling the problem Change over time Constraints... 21

Robust Task Execution: Procedural and Model-based. Outline. Desiderata: Robust Task-level Execution

Heap Sort. Lecture 35. Robb T. Koether. Hampden-Sydney College. Mon, Apr 25, 2016

SIDDHARTH INSTITUTE OF ENGINEERING & TECHNOLOGY :: PUTTUR (AUTONOMOUS) Siddharth Nagar, Narayanavanam Road QUESTION BANK (DESCRIPTIVE)

Advanced Search Hill climbing

Aryeh Rappaport Avinoam Meir. Schedule automation

CMPUT680 - Winter 2001

The system design must obey these constraints. The system is to have the minimum cost (capital plus operating) while meeting the constraints.

CS Lecture 5. Vidroha debroy. Material adapted courtesy of Prof. Xiangnan Kong and Prof. Carolina Ruiz at Worcester Polytechnic Institute

Decision Trees. Nicholas Ruozzi University of Texas at Dallas. Based on the slides of Vibhav Gogate and David Sontag

CENTRAL ILLINOIS ELITE VOLLEYBALL CLUB 1425 KELSEY ST. WASHINGTON, IL PH. (309) January 27th, 2019: Dear Parents and Athletes:

Optimization and Search. Jim Tørresen Optimization and Search

CS 4649/7649 Robot Intelligence: Planning

A new Decomposition Algorithm for Multistage Stochastic Programs with Endogenous Uncertainties

Evacuation Time Minimization Model using Traffic Simulation and GIS Technology

Algorithms and Data Structures

Simplicity to Control Complexity. Based on Slides by Professor Lui Sha

6/16/2010 DAG Execu>on Model, Work and Depth 1 DAG EXECUTION MODEL, WORK AND DEPTH

Dispatching Universität Karlsruhe, System Architecture Group

Planning. CS 510: Intro to AI October 19 th 2017

CENTRAL ILLINOIS ELITE VOLLEYBALL CLUB 1425 KELSEY ST. WASHINGTON, IL PH. (309) FEBRUARY 21st, 2018: Dear Parents and Athletes:

A Proof-Producing CSP Solver 1

Exercise 11: Solution - Decision tree

Innovative and Robust Design. With Full Extension of Offshore Engineering and Design Experiences.

A SEMI-PRESSURE-DRIVEN APPROACH TO RELIABILITY ASSESSMENT OF WATER DISTRIBUTION NETWORKS

DESIGN AND ANALYSIS OF ALGORITHMS (DAA 2017)

Methods for the Anisotropic Wavelet Packet Transform

Tokyo: Simulating Hyperpath-Based Vehicle Navigations and its Impact on Travel Time Reliability

Efficient Gait Generation using Reinforcement Learning

Running the Table: An AI for Computer Billiards

Lesson 14: Games of Chance and Expected Value

Incremental ARA*: An Anytime Incremental Search Algorithm For Moving Target Search. University of Southern California Singapore Management University

Critical Systems Validation

Chapter 4 (sort of): How Universal Are Turing Machines? CS105: Great Insights in Computer Science

Inverting a Batting Average - an Application of Continued Fractions (Preliminary Version)

A IMPROVED VOGEL S APPROXIMATIO METHOD FOR THE TRA SPORTATIO PROBLEM. Serdar Korukoğlu 1 and Serkan Ballı 2.

Solving MINLPs with BARON. Mustafa Kılınç & Nick Sahinidis Department of Chemical Engineering Carnegie Mellon University

FIRE PROTECTION. In fact, hydraulic modeling allows for infinite what if scenarios including:

CS 4649/7649 Robot Intelligence: Planning

Prof. Brian C. Williams February 23 rd, /6.834 Cognitive Robotics. based on [Kim,Williams & Abramson, IJCAI01] Outline

CSC242: Intro to AI. Lecture 21

Improved Real-time Monitoring and Control of Water Supply Networks by Use of Graph Decomposition

CS 4649/7649 Robot Intelligence: Planning

ENHANCED PARKWAY STUDY: PHASE 2 CONTINUOUS FLOW INTERSECTIONS. Final Report

PREAMBLE. Why the Informatics Olympiad in Team were born

Application of Dijkstra s Algorithm in the Evacuation System Utilizing Exit Signs

Percymon: A Pokemon Showdown Artifical Intelligence

The Usage of Propeller Tunnels For Higher Efficiency and Lower Vibration. M. Burak Şamşul

Multilane Roundabouts

Modelling Today for the Future. Advanced Modelling Control Techniques

x 2 = (60 m) 2 + (60 m) 2 x 2 = 3600 m m 2 x = m

SIMULATION OF ENTRAPMENTS IN LCM PROCESSES

Operational Comparison of Transit Signal Priority Strategies

Bulgarian Olympiad in Informatics: Excellence over a Long Period of Time

Numerical Study of the Wind Waves Effect on Air-sea Fluxes in the Yellow Sea during the Cold Wave Events

If you need to reinstall FastBreak Pro you will need to do a complete reinstallation and then install the update.

Traffic circles. February 9, 2009

(d) Give a formal definition of a strategy in an extensive form game.

Three New Methods to Find Initial Basic Feasible. Solution of Transportation Problems

COMP 406 Lecture 05. Artificial. Fiona Yan Liu Department of Computing The Hong Kong Polytechnic University

Module 3 Developing Timing Plans for Efficient Intersection Operations During Moderate Traffic Volume Conditions

Transcription:

SEARCH TREE Node: State in state tree Root node: Top of state tree Children: Nodes that can be reached from a given node in 1 step (1 operator) Expanding: Generating the children of a node Open: Closed: Queue: Node not yet expanded Node after expansion Ordered list of open nodes

SEARCH BLIND SEARCH: Systematic Search Depth 1st: Continue along current path looking for goal Breadth 1st: Expand all nodes at current level before progressing to next level Depth limited Search: Depth-1st + depth-limit Iterative Deepening Search: limit=0,limit=1,... USING COST: g(n)=cost from start to n Uniform-Cost Search (= Branch-and-bound): Select node n with best g(n). USING HEURISTIC: h(n)=estimate cost to a goal Greedy Search: Select node n with best h(n) A*: Select node n with best f(n) = g(n) + h(n) IDA*: A* + f-cost limit. Hill-Climbing: Depth-1st exploring best h(n) first Simulated Annealing: Hill-Climbing + RandomWalk Beam Search: Breadth-1st keeping only m nodes with best h(n) s per level

DEPTH 1st SEARCH 1. Put start state onto queue 2. If queue is empty then fail 3. If head of queue is goal then succeed 4. Else remove head of queue, expand it, place children in front of queue 5. Recurse to 2

DEPTH 1st (cont.) When to use Depth limited or known beforehand All solutions at same depth Any solution will do Possibly fast When to avoid Large or infinite subtrees Prefer shallow solution

BREADTH 1st SEARCH 1. Put start state onto queue 2. If queue is empty then fail 3. If head of queue is goal then succeed 4. Else remove head of queue, expand it, place children at end of queue 5. Recurse to 2

BREADTH 1st (Cont.) When to use Large or infinite search tree Solution depth unknown Prefer shallow solution When to avoid Very wide trees Generally slow May need a lot of space

MODIFICATIONS TO DEPTH/BREADTH 1ST Depth limited Search: Limit the total depth of the depth 1st search. Iterative Deepening Search: Repeat depth limited search with limit 0, 1, 2, 3,... until a solution is found. Bidirectional Search: Simultaneously search forward from initial state and backward from goal state until both paths meet.

UNIFORM COST SEARCH (= BRANCH AND BOUND) 1. Put start state onto queue 2. If queue is empty then fail 3. If head of queue is goal then succeed 4. Else remove head of queue, expand it, place in queue, and sort entire queue with least cost-so-far nodes in front 5. Recurse to 2

UNIFORM COST SEARCH SUMMARY Advantages Optimal (when costs are non negative) Complete Disadvantages Can be inefficient When to use Desire best solution Keep track of cost so far When to avoid May not work with negative costs May be overly conservative Any solution will do Potential improvement Dynamic Programming

UNIFORM COST SEARCH + DYNAMIC PROG. 1. Put start state onto queue 2. If queue is empty then fail 3. If head of queue is goal then succeed 4. Else remove head of queue, expand it, place in queue, remove redundant paths: Paths that reach the same node as other paths but are more expensive, and sort entire queue with least cost-so-far nodes in front 5. Recurse to 2

GREEDY SEARCH (= called BEST 1st SEARCH in other textbooks) 1. Put start state onto queue 2. If queue is empty then fail 3. If head of queue is goal then succeed 4. Else remove head of queue, expand it, place in queue, and sort entire queue with least estimated-costto-goal nodes in front 5. Recurse to 2

GREEDY SEARCH SUMMARY Advantages Can be very efficient Paths found are likely to be short Disadvantages Neither optimal nor complete When to use Desire short solution When to avoid When an optimal solution is required

A 1. Put start state onto queue 2. If queue is empty then fail 3. If head of queue is goal then succeed 4. Else remove head of queue, expand it, place in queue, and sort entire queue with least cost-so-far + estimated-cost-remaining nodes in front 5. If multiple paths reach a common goal, keep only lowest cost-so-far path 6. Recurse to 2 f(node) = g(node) + h(node), where f(node) = estimated total cost g(node) = cost-so-far to node h(node) = estimated-cost-remaining (heuristic). Properties of h: Lower bound ( actual cost) Nonnegative

A SUMMARY Advantages Complete Optimal, when h is an underestimate Optimally efficient among all optimal search algorithms Disadvantages Very high space complexity When to use Desire best solution Keep track of cost so far Heuristic information available When to avoid No good heuristics available

HILL CLIMBING SEARCH version 1: with backtracking 1. Put start state onto queue 2. If queue is empty then fail 3. If head of queue is goal then succeed 4. Else remove head of queue, expand it, place children sorted by h(n) in front of queue 5. Recurse to 2

HILL CLIMBING SEARCH version 2: without backtracking arguably this is the most common version of hill climbing 1. Put start state onto queue 2. If queue is empty then fail 3. If head of queue is goal then succeed 4. Else remove head of queue, expand it, sort the children by h(n), and place only the child with the best h(n) in (front of) queue 5. Recurse to 2

HILL CLIMBING SUMMARY Advantages Complete if backtracking is allowed (like in Winston s book) and the graph is finite Disadvantages Not optimal Not complete if backtracking is not allowed When to use Depth limited or known beforehand All solutions at same depth Desire good solution Reliable estimate of remaining distance to goal Fast if good estimate When to avoid If optimal solution is required Large or infinite subtrees No good estimate Difficult terrain

BEAM SEARCH 1. Put start state onto queue 2. If queue is empty then fail 3. If head of queue is goal then succeed 4. Else remove head of queue, expand it, place children at end of queue 5. If finishing a level, keep only w best nodes in queue 6. Recurse to 2

BEAM SEARCH SUMMARY Advantages Saves space Disadvantages Neither optimal nor complete When to use Large or infinite search tree Solution depth unknown Prefer shallow solution Possibly fast No more than wb nodes stored When to avoid Can t tell which solutions to prune Prefer conservative

SEARCH STRATEGIES - Completeness; Optimality; and Time and Space Complexity Search Complete? Optimal? Time Space Depth-1st N N b d bd Breadth-1st Y Y* b s b s Depth-limited N N b l bl Iter. deepening Y Y* b s bs Branch-&-bound Y Y b s b s Greedy N N b d b d A* Y Y exp exp Hill-climbing N N dep dep Beam N N ms 2m (adapted from Russell & Norvig s book) Y*: Yes, IF cost of a path is equal to its length. Otherwise No. b: branching factor s: depth of the solution d: maximum depth of the search tree l: depth limit m: beam size exp: exponential depending on heuristic h dep: depends on heuristic h

SEARCH STRATEGIES Summary Depth 1st: goal Continue along current path looking for Breadth 1st: Expand all nodes at current level before progressing to next level Hill Climbing: Like depth 1st, but explore most promising children first (if allowing backtracking) or just the most promising child only (if not allowing backtracking) Like breadth 1st, but prune unpromising chil- Beam: dren Greedy: Uniform: reached A : Expand best open node regardless of its depth Expand the least-cost-so-far node until goal Like uniform search, but with heuristic information