ARTIFICIAL INTELLIGENCE

Size: px
Start display at page:

Download "ARTIFICIAL INTELLIGENCE"

Transcription

1 3010 ARTIFICIAL INTELLIGENCE Lecture 4 Iterative Deepening A* Masashi Shimbo

2 Depth-first search Recursive implementation Depth-first search can be implemented in a recursive fashion 2 / 44

3 Depth-first search vanilla depth-first search, recursive implementation 1 function DFS(v) Input Output : node v to start depth-first search : a goal node, if found, or failure 2 if IsGoal(v) then return v # if a goal is found, return it 3 foreach u Succ(v) do 4 Parent[u] v # memorize parent of u 5 result DFS(u) # traverse u 6 if result failure then return result 7 remove Parent[u] from memory # no goal below u; so forget u 8 return failure 3 / 44

4 IDA*: Iterative Deepening A* 4 / 44

5 A*: problem with memory consumption A*, if guided by a good heuristic, focuses search towards goals. It can generate fewer nodes than Dijkstra s algorithm. But memory consumption may still be huge since A* keeps all generated nodes on memory. (E.g., 24-puzzles with the Manhattan heuristic) 5 / 44

6 Heuristic search + Iterative deepening depth-first search 6 / 44

7 IDA*: Iterative-Deepening A* A memory-efficient heuristic search method A heuristic version of iterative deepening depth-first search 7 / 44

8 Iterative deepening depth-first search for trees Depth-first search might not terminate in an infinte state space. Iterative deepening depth-first search overcomes this difficulty by introducing a cutoff depth θ to depth-first search backtrack immediately if the node depth exceeds θ; successively running depth-first searches with increasing cutoff depth θ = 1, 2,... 8 / 44

9 Iterative deepening depth-first search initial state goal state unbounded path 9 / 44

10 Iterative deepening depth-first search initial state Cutoff depth = 1 No goal states with depth less than or equal to 1 epth-first search fails. goal state unbounded path 10 / 44

11 Iterative deepening depth-first search initial state Cutoff depth = 2 No goal states with depth less than or equal to 2 epth-first search fails. goal state unbounded path 11 / 44

12 Iterative deepening depth-first search initial state Cutoff depth = 3 A goal state exists at depth 3. epth-first search succeeds. goal state unbounded path 12 / 44

13 Depth-first search vanilla depth-first search, recursive implementation 1 function DFS(v) Input Output : node v to start depth-first search : a goal node, if found, or failure 2 if IsGoal(v) then return v # if a goal is found, return it 3 foreach u Succ(v) do 4 Parent[u] v # memorize parent of u 5 result DFS(u) # traverse u 6 if result failure then return result 7 remove Parent[u] from memory # no goal below u; so forget u 8 return failure 13 / 44

14 Depth-first search depth-bounded version for iterative deepening 1 function DFS(v, θ) Input Output : node v to start depth-first search : cut-off depth θ : a goal node, if found, or failure 2 if IsGoal(v) then return v # if a goal is found, return it 3 foreach u Succ(v) do 4 if Depth[v] + 1 θ then # if the depth of u does not exceed cutoff θ 5 Depth[u] Depth[v] + 1 # memorize depth of v 6 Parent[u] v # memorize parent of u 7 result DFS(u) # traverse u 8 if result failure then return result 9 remove Parent[u] and Depth[u] from memory 10 return failure # no goal below u; so no need to keep information about u 14 / 44

15 Iterative deepening depth-first search main controller Calls the depth-bounded DFS function repeatedly until a goal is found, gradually increasing the cutoff depth θ. Input Output : initial state s : a goal node, if found 1 θ 0 2 Depth[s] 0 3 loop do 4 result DFS(s, θ) 5 if result failure then return result 6 θ θ / 44

16 Designing heuristic depth-first search applicable to general state spaces How do we deal with cycles/multiple paths to a node? How do we take costs into account? How do we use heuristic functions with depth-first search? 16 / 44

17 Designing heuristic depth-first search applicable to general state spaces How do we deal with cycles/multiple paths to a node? How do we take costs into account? How do we use heuristic functions with depth-first search? 17 / 44

18 s s a d c b a d t a c b t If there is a cycle in the state space, the corresponding search tree may be infinite and vanilla depth-first search may not terminate. s a b c a b c a 18 / 44

19 Cyclic path elimination In depth-first search, easiest way to eliminate cyclic paths is to maintain the list of nodes in the current path (from the initial node). Do not follow a path if it is found to be cyclic. s a b c a b c a And/or use iterative deepening depth-first search. 19 / 44

20 Avoid depth-first search/ida* if the state-space graph contains a lot of paths to the same nodes Why? Depth-first search/ida* may perform poorly Even with the cycle elimination technique, if there are multiple paths from s to a node, the node may be visited repeatedly. Revisiting unavoidable unless all generated nodes are kept on memory just like Dijkstra/A* In essence: With depth-first search, we are trading off space with runnning time 20 / 44

21 Designing heuristic depth-first search applicable to general state spaces How do we deal with cycles/multiple paths to a node? How do we take edge costs into account? How do we use heuristic functions with depth-first search? 21 / 44

22 Designing heuristic depth-first search applicable to general state spaces How do we deal with cycles/multiple paths to a node? How do we take edge costs into account? How do we use heuristic functions with depth-first search? 22 / 44

23 Incorporating edge costs into iterative deepening depth-first search Use cutoff costs in place of cutoff depths. 23 / 44

24 Incorporating edge costs into iterative deepening depth-first search Use cutoff costs in place of cutoff depths. Issue: In iterative deepening depth-first search, cutoff depth θ is increased by one after each unsuccessful depth-bounded DFS. If θ represents a cutoff cost, what increment should be added after each iteration? 24 / 44

25 Iterative deepening depth-first search using depth-bounded DFS Input Output : initial node s : a goal node, if found 1 θ 0 2 Depth[s] 0 3 loop do 4 result DFS(s, θ) 5 if result failure then return result 6 θ θ / 44

26 Iterative deepening depth-first search using cost-bounded DFS Input Output : initial node s : a goal node, if found 1 θ 0 2 g[s] 0 3 loop do 4 result DFS(s, θ) 5 if result failure then return result 6 θ θ / 44

27 Iterative deepening depth-first search using cost-bounded DFS Input Output : initial node s : a goal node, if found 1 θ 0 2 g[s] 0 3 loop do 4 result DFS(s, θ) 5 if result failure then return result 6 θ θ +? 27 / 44

28 What increment should be added to the cutoff cost? Solution: When the g-value of a generated node exceeds the current cutoff θ, search is cut off at the node (just as before). Among these cutoff nodes at which g > θ, find the minimum g-value. Use the minimum value as the cutoff for the next iteration. 28 / 44

29 Function DFS depth-bounded version 1 function DFS(v, θ) Input Output 2 if IsGoal(v) then return v 3 foreach u Succ(v) do 4 d Depth[v] + 1 : v = node to start depth-first search : θ = cut-off depth : goal node, if found, or failure 5 if d θ then # if the depth of v does not exceed cutoff θ 6 Parent[u] v; Depth[u] d # memorize the parent and depth of u 7 result DFS(u, θ) # traverse u 8 if result failure then return result # if a goal is found, return it 9 remove Parent[u] and Depth[u] from memory 10 return failure 29 / 44

30 Function DFS cost-bounded version 1 function DFS(v, θ) Input Output 2 if IsGoal(v) then return v 3 foreach u Succ(v) do 4 d g[v] + c(v, u) : v = node to start depth-first search : θ = cut-off cost : goal node, if found, or failure 5 if d θ then # if the g-value of v does not exceed cutoff θ 6 Parent[u] v; g[u] d # memorize the parent and g-value of u 7 result DFS(u, θ) # traverse u 8 if result failure then return result # if a goal is found, return it 9 remove Parent[u] and g[u] from memory 10 return failure change Depth to g 30 / 44

31 Function DFS cost-bounded version 1 function DFS(v, θ, θ next ) Input Output 2 if IsGoal(v) then return v 3 foreach u Succ(v) do 4 d g[v] + c(v, u) : v = node to start depth-first search : θ = cut-off cost : θ next = best g-value among cutoff nodes found so far : a pair result, θ next where : result = goal node, if found, or failure : θ next = updated best g-value among cutoff nodes 5 if d θ then # if the depth of v does not exceed cutoff θ 6 Parent[u] v; g[u] d # memorize the parent and g-value of u 7 result, θ next DFS(u, θ, θ next ) # traverse u 8 if result failure then return result, nil # if a goal is found, return it 9 remove Parent[u] and g[u] from memory 10 else if d < θ next then θ next g[u] # maintain least g-value among cutoff nodes 11 return failure, θ next change Depth to g changes to compute θ next 31 / 44

32 Iterative deepening depth-first search original version not taking costs into account Input Output : initial state s : a goal node, if found 1 θ 0 2 Depth[s] 0 3 loop do 4 result DFS(s, θ) 5 if result failure then return result 6 θ θ / 44

33 Iterative deepening depth-first search cost-sensitive version Input Output : initial state s : a goal node, if found 1 θ 0 2 g[s] 0 3 loop do 4 result, θ next DFS(s, θ, ) 5 if result failure then return result 6 θ θ next 33 / 44

34 Cost-sensitive iterative deepening depth-first search is complete and admissible 34 / 44

35 Designing heuristic depth-first search applicable to general state spaces How do we deal with cycles/multiple paths to a node? How do we take edge costs into account? How do we use heuristic functions with depth-first search? 35 / 44

36 Designing heuristic depth-first search applicable to general state spaces How do we deal with cycles/multiple paths to a node? How do we take edge costs into account? How do we use heuristic functions with depth-first search? 36 / 44

37 IDA*: iterative deepening search with heuristic functions Cutoff θ now limits f [v] = g[v] + h(v) instead of g[v] 37 / 44

38 Function DFS cost-bounded version 1 function DFS(v, θ, θ next ) Input Output 2 if IsGoal(v) then return v 3 foreach u Succ(v) do : v = node to start depth-first search : θ = cut-off cost : θ next = best g-value among cutoff nodes so far : a pair result, θ next where : result = goal node, if found, or failure : θ next = best g-value among cutoff nodes 4 d g[v] + c(v, u); # compute g[u] 5 if d θ then # if d does not exceed cutoff 6 Parent[u] v; g[u] d # memorize the parent and g-value of u 7 result, θ next DFS(u, θ, θ next ) # traverse u 8 if result failure then return result, nil # if a goal is found, return it 9 remove Parent[u] and g[u] from memory 10 else if d < θ next then θ next d # maintain least g-value among cutoff nodes 11 return failure, θ next 38 / 44

39 Function DFS cost-bounded version 1 function DFS(v, θ, θ next ) Input Output 2 if IsGoal(v) then return v 3 foreach u Succ(v) do : v = node to start depth-first search : θ = cut-off cost : θ next = best f -value among cutoff nodes so far : a pair result, θ next where : result = goal node, if found, or failure : θ next = best f -value among cutoff nodes 4 d g[v] + c(v, u); f d + h(u) # compute g[u] and f [u] 5 if f θ then # if f [u] does not exceed cutoff 6 Parent[u] v; g[u] d # memorize the parent and g-value of u 7 result, θ next DFS(u, θ, θ next ) # traverse u 8 if result failure then return result, nil # if a goal is found, return it 9 remove Parent[u] and g[u] from memory 10 else if f < θ next then θ next f # maintain least f -value among cutoff nodes 11 return failure, θ next 39 / 44

40 Iterative deepening depth-first search main controller Input Output : initial state s : a goal node, if found 1 θ 0 2 g[s] 0 3 loop do 4 result, θ next DFS(s, θ, ) 5 if result failure then return result 6 θ θ next 40 / 44

41 Iterative deepening A* main controller Input Output : initial state s : a goal node, if found 1 θ h(s) # in IDA*, θ bounds f, not g 2 g[s] 0 3 loop do 4 result, θ next DFS(s, θ, ) 5 if result failure then return result 6 θ θ next 41 / 44

42 IDA* is complete and admissible provided that h is admissible Benign memory footprint (required amount of memory linear in the depth of goals) 42 / 44

43 Search strategies Uninformed search Uninformed search Heuristic search Edge costs Breadth-first family Depth-first family Identical Breadth-first search (Iterative deepening) depth-first search Non-identical Dijkstra s algorithm IDA* with h = 0 Non-identical A* IDA* 43 / 44

44 Two heuristic (informed) search strategies A* IDA* severe memory requirement keeps all generated nodes benign memory footprint might be a good choice for huge graphs but inefficient in a graph in which many paths to nodes exists (lattice, etc.) 44 / 44

Search : Lecture 2. September 9, 2003

Search : Lecture 2. September 9, 2003 Search 6.825: Lecture 2 September 9, 2003 1 Problem-Solving Problems When your environment can be effectively modeled as having discrete states and actions deterministic, known world dynamics known initial

More information

Learning Objectives. c D. Poole and A. Mackworth 2010 Artificial Intelligence, Lecture 3.5, Page 1

Learning Objectives. c D. Poole and A. Mackworth 2010 Artificial Intelligence, Lecture 3.5, Page 1 Learning Objectives At the end of the class you should be able to: justify why depth-bounded search is useful demonstrate how iterative-deepening works for a particular problem demonstrate how depth-first

More information

Search in State-Spaces 16/9 2014

Search in State-Spaces 16/9 2014 Search in State-Spaces 16/9 2014 NB: Oblig 1 (mandatory assignment 1) has been availible for some time at the INF4130 home page Deadline is Friday, September 25 The topics of the day: Backtracking (Ch.

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

Class Overview. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 2: Search. Problem Solving Agents

Class Overview. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 2: Search. Problem Solving Agents Class Overview COMP 3501 / COMP 4704-4 Lecture 2: Search Prof. 1 2 Problem Solving Agents Problem Solving Agents: Assumptions Requires a goal Assume world is: Requires actions Observable What actions?

More information

Class Overview. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 2. Problem Solving Agents. Problem Solving Agents: Assumptions

Class Overview. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 2. Problem Solving Agents. Problem Solving Agents: Assumptions Class Overview COMP 3501 / COMP 4704-4 Lecture 2 Prof. JGH 318 Problem Solving Agents Problem Solving Agents: Assumptions Requires a goal Assume world is: Requires actions Observable What actions? Discrete

More information

Uninformed Search Methods

Uninformed Search Methods Uninformed Search Methods Search Algorithms Uninformed Blind search Breadth-first uniform first depth-first Iterative deepening depth-first Bidirectional Branch and Bound Informed Heuristic search Greedy

More information

Lecture 4: Search 3. Victor R. Lesser. CMPSCI 683 Fall 2010

Lecture 4: Search 3. Victor R. Lesser. CMPSCI 683 Fall 2010 Lecture 4: Search 3 Victor R. Lesser CMPSCI 683 Fall 2010 First Homework 1 st Programming Assignment 2 separate parts (homeworks) First part due on (9/27) at 5pm Second part due on 10/13 at 5pm Send homework

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Informed Search and Exploration Chapter 4 (4.1 4.2) A General Search algorithm: Chapter 3: Search Strategies Task : Find a sequence of actions leading from the initial state to

More information

CS 520: Introduction to Artificial Intelligence. Lectures on Search

CS 520: Introduction to Artificial Intelligence. Lectures on Search CS 520: Introduction to Artificial Intelligence Prof. Louis Steinberg Lecture : uninformed search uninformed search Review Lectures on Search Formulation of search problems. State Spaces Uninformed (blind)

More information

Heuristic Search INTRODUCTION TO ARTIFICIAL INTELLIGENCE BIL 472 SADI EVREN SEKER

Heuristic Search INTRODUCTION TO ARTIFICIAL INTELLIGENCE BIL 472 SADI EVREN SEKER Heuristic Search INTRODUCTION TO ARTIFICIAL INTELLIGENCE BIL 7 SADI EVREN SEKER Review of Search - BFS Review of Search - DFS Review of Search - IDDFS DFS Remembering: IDDFS(root, A, B, goal) D, F, E,

More information

Outline. Best-first search

Outline. Best-first search Outline Best-first search Greedy best-first search A* search Heuristics Admissible Heuristics Graph Search Consistent Heuristics Local search algorithms Hill-climbing search Beam search Simulated annealing

More information

CS 4700: Artificial Intelligence

CS 4700: Artificial Intelligence CS 4700: Foundations of Artificial Intelligence Fall 2017 Instructor: Prof. Haym Hirsh Lecture 7 Extra Credit Opportunity: Lecture Today 4:15pm Gates G01 Learning to See Without a Teacher Phillip Isola

More information

CS 380: Artificial Intelligence Lecture #4

CS 380: Artificial Intelligence Lecture #4 CS 380: Artificial Intelligence Lecture #4 William Regli Material Chapter 4 Section 1-3 1 Outline Best-first search Greedy best-first search A * search Heuristics Local search algorithms Hill-climbing

More information

Search Algorithms. Uninformed Blind search. Informed Heuristic search. Important concepts:

Search Algorithms. Uninformed Blind search. Informed Heuristic search. Important concepts: Uninformed Search Search Algorithms Uninformed Blind search Breadth-first uniform first depth-first Iterative deepening depth-first Bidirectional Branch and Bound Informed Heuristic search Greedy search,

More information

TIE Graph algorithms

TIE Graph algorithms TIE-20106 1 1 Graph algorithms This chapter discusses the data structure that is a collection of points (called nodes or vertices) and connections between them (called edges or arcs) a graph. The common

More information

CS 416, Artificial Intelligence Midterm Examination Fall 2004

CS 416, Artificial Intelligence Midterm Examination Fall 2004 CS 416, Artificial Intelligence Midterm Examination Fall 2004 Name: This is a closed book, closed note exam. All questions and subquestions are equally weighted. Introductory Material 1) True or False:

More information

Informed State Space Search B4B36ZUI, LS 2018

Informed State Space Search B4B36ZUI, LS 2018 Informed State Space Search B4B36ZUI, LS 2018 Branislav Bošanský, Martin Schaefer, David Fiedler, Jaromír Janisch {name.surname}@agents.fel.cvut.cz Artificial Intelligence Center, Czech Technical University

More information

Informed search methods

Informed search methods CS 2710 Foundations of AI Lecture 5 Informed search methods Milos Hauskrecht milos@pitt.edu 5329 Sennott Square Announcements Homework assignment 2 is out Due on Tuesday, September 19, 2017 before the

More information

Problem Solving & Heuristic Search

Problem Solving & Heuristic Search 190.08 Artificial 2016-Spring Problem Solving & Heuristic Search Byoung-Tak Zhang School of Computer Science and Engineering Seoul National University 190.08 Artificial (2016-Spring) http://www.cs.duke.edu/courses/fall08/cps270/

More information

Informed Search. Xiaojin Zhu Computer Sciences Department University of Wisconsin, Madison

Informed Search. Xiaojin Zhu Computer Sciences Department University of Wisconsin, Madison Informed Search Xiaojin Zhu jerryzhu@cs.wisc.edu Computer Sciences Department University of Wisconsin, Madison [Based on slides from Andrew Moore http://www.cs.cmu.edu/~awm/tutorials ] slide 1 Main messages

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

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

Searching with Partial Information

Searching with Partial Information Searching with Partial Information Above we (unrealistically) assumed that the environment is fully observable and deterministic Moreover, we assumed that the agent knows what the effects of each action

More information

CS 730/730W/830: Intro AI

CS 730/730W/830: Intro AI CS 730/730W/830: Intro AI 1 handout: slides asst 1 milestone was due Wheeler Ruml (UNH) Lecture 4, CS 730 1 / 19 EOLQs Wheeler Ruml (UNH) Lecture 4, CS 730 2 / 19 Comparison Heuristics Search Algorithms

More information

Announcements. Today s Menu

Announcements. Today s Menu Announcements 1 Today s Menu Finish up (Chapter 9) IDA, IDA* & RBFS Search Efficiency 2 Related Algorithms Bi-Directional Search > Breadth-First may expand less nodes bidirectionally than unidirectionally

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Dr. Malek Mouhoub Department of Computer Science University of Regina Fall 2005 Malek Mouhoub, CS820 Fall 2005 1 3. State-Space Search 3. State-Space Search Graph Theory Uninformed

More information

TIE Graph algorithms

TIE Graph algorithms TIE-20106 239 11 Graph algorithms This chapter discusses the data structure that is a collection of points (called nodes or vertices) and connections between them (called edges or arcs) a graph. The common

More information

Outline. Best-first search

Outline. Best-first search Outline Best-first search Greedy best-first search A* search Heuristics Local search algorithms Hill-climbing search Beam search Simulated annealing search Genetic algorithms Constraint Satisfaction Problems

More information

Advanced A* Improvements

Advanced A* Improvements Advanced A* Improvements 1 Iterative Deepening A* (IDA*) Idea: Reduce memory requirement of A* by applying cutoff on values of f Consistent heuristic function h Algorithm IDA*: 1. Initialize cutoff to

More information

Route planning / Search Movement Group behavior Decision making

Route planning / Search Movement Group behavior Decision making Game AI Where is the AI Route planning / Search Movement Group behavior Decision making General Search Algorithm Design Keep a pair of set of states: One, the set of states to explore, called the open

More information

ARTIFICIAL INTELLIGENCE LECTURE 3. Ph. D. Lect. Horia Popa Andreescu rd year, semester 5

ARTIFICIAL INTELLIGENCE LECTURE 3. Ph. D. Lect. Horia Popa Andreescu rd year, semester 5 ARTIFICIAL INTELLIGENCE LECTURE 3 Ph. D. Lect. Horia Popa Andreescu 2012-2013 3 rd year, semester 5 The slides for this lecture are based (partially) on chapter 4 of the Stuart Russel Lecture Notes [R,

More information

The wolf sheep cabbage problem. Search. Terminology. Solution. Finite state acceptor / state space

The wolf sheep cabbage problem. Search. Terminology. Solution. Finite state acceptor / state space Search The wolf sheep cabbage problem What is search? Terminology: search space, strategy Modelling Uninformed search (not intelligent ) Breadth first Depth first, some variations omplexity space and time

More information

Solving Problems by Searching. Artificial Intelligence Santa Clara University 2016

Solving Problems by Searching. Artificial Intelligence Santa Clara University 2016 Solving Problems by Searching Artificial Intelligence Santa Clara University 2016 Problem Solving Agents Problem Solving Agents Use atomic representation of states Planning agents Use factored or structured

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

Chapter 2 Classical algorithms in Search and Relaxation

Chapter 2 Classical algorithms in Search and Relaxation Chapter 2 Classical algorithms in Search and Relaxation Chapter 2 overviews topics on the typical problems, data structures, and algorithms for inference in hierarchical and flat representations. Part

More information

Efficient memory-bounded search methods

Efficient memory-bounded search methods Efficient memory-bounded search methods Mikhail Simin Arjang Fahim CSCE 580: Artificial Intelligence Fall 2011 Dr. Marco Voltorta Outline of The Presentation Motivations and Objectives Background - BFS

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence CSC348 Unit 3: Problem Solving and Search Syedur Rahman Lecturer, CSE Department North South University syedur.rahman@wolfson.oxon.org Artificial Intelligence: Lecture Notes The

More information

Informed Search (Ch )

Informed Search (Ch ) Informed Search (Ch. 3.5-3.6) Informed search In uninformed search, we only had the node information (parent, children, cost of actions) Now we will assume there is some additional information, we will

More information

Problem Solving and Search

Problem Solving and Search Artificial Intelligence Problem Solving and Search Dae-Won Kim School of Computer Science & Engineering Chung-Ang University Outline Problem-solving agents Problem types Problem formulation Example problems

More information

Uniformed Search (cont.)

Uniformed Search (cont.) Uniformed Search (cont.) Computer Science cpsc322, Lecture 6 (Textbook finish 3.5) Sept, 16, 2013 CPSC 322, Lecture 6 Slide 1 Lecture Overview Recap DFS vs BFS Uninformed Iterative Deepening (IDS) Search

More information

Informed Search Algorithms

Informed Search Algorithms Informed Search Algorithms CITS3001 Algorithms, Agents and Artificial Intelligence Tim French School of Computer Science and Software Engineering The University of Western Australia 2017, Semester 2 Introduction

More information

Search. CS 3793/5233 Artificial Intelligence Search 1

Search. CS 3793/5233 Artificial Intelligence Search 1 CS 3793/5233 Artificial Intelligence 1 Basics Basics State-Space Problem Directed Graphs Generic Algorithm Examples Uninformed is finding a sequence of actions that achieve a goal from an initial state.

More information

CS 520: Introduction to Artificial Intelligence. Review

CS 520: Introduction to Artificial Intelligence. Review CS 520: Introduction to Artificial Intelligence Prof. Louis Steinberg Lecture 2: state spaces uninformed search 1 What is AI? A set of goals Review build an artificial intelligence useful subgoals A class

More information

COMP9414: Artificial Intelligence Informed Search

COMP9414: Artificial Intelligence Informed Search COMP9, Wednesday March, 00 Informed Search COMP9: Artificial Intelligence Informed Search Wayne Wobcke Room J- wobcke@cse.unsw.edu.au Based on slides by Maurice Pagnucco Overview Heuristics Informed Search

More information

Planning Techniques for Robotics Search Algorithms: Multi-goal A*, IDA*

Planning Techniques for Robotics Search Algorithms: Multi-goal A*, IDA* 6-350 Planning Techniques for Robotics Search Algorithms: Multi-goal A*, IDA* Maxim Likhachev Robotics Institute Agenda A* with multiple goals Iterative Deepening A* (IDA*) 2 Support for Multiple Goal

More information

Heuristic Search. CPSC 470/570 Artificial Intelligence Brian Scassellati

Heuristic Search. CPSC 470/570 Artificial Intelligence Brian Scassellati Heuristic Search CPSC 470/570 Artificial Intelligence Brian Scassellati Goal Formulation 200 Denver 300 200 200 Chicago 150 200 Boston 50 1200 210 75 320 255 Key West New York Well-defined function that

More information

Basic Search Algorithms

Basic Search Algorithms Basic Search Algorithms Tsan-sheng Hsu tshsu@iis.sinica.edu.tw http://www.iis.sinica.edu.tw/~tshsu 1 Abstract The complexities of various search algorithms are considered in terms of time, space, and cost

More information

Informed Search. CS 486/686: Introduction to Artificial Intelligence Fall 2013

Informed Search. CS 486/686: Introduction to Artificial Intelligence Fall 2013 Informed Search CS 486/686: Introduction to Artificial Intelligence Fall 2013 1 Outline Using knowledge Heuristics Bestfirst search Greedy bestfirst search A* search Variations of A* Back to heuristics

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

Graph Traversal CSCI Algorithms I. Andrew Rosenberg

Graph Traversal CSCI Algorithms I. Andrew Rosenberg Graph Traversal CSCI 700 - Algorithms I Andrew Rosenberg Last Time Introduced Graphs Today Traversing a Graph A shortest path algorithm Example Graph We will use this graph as an example throughout today

More information

Uninformed Search. Day 1 & 2 of Search. Russel & Norvig Chap. 3. Material in part from

Uninformed Search. Day 1 & 2 of Search. Russel & Norvig Chap. 3. Material in part from Uninformed Day & 2 of Russel & Norvig Chap. 3 Material in part from http://www.cs.cmu.edu/~awm/tutorials Examples of problems? The Oak Tree Informed versus Uninformed Heuristic versus Blind A Problem a

More information

Search EECS 348 Intro to Artificial Intelligence

Search EECS 348 Intro to Artificial Intelligence Search EECS 348 Intro to Artificial Intelligence (slides from Oren Etzioni, based on Stuart Russell, Dan Weld, Henry Kautz, and others) What is Search? Search is a class of techniques for systematically

More information

Search EECS 395/495 Intro to Artificial Intelligence

Search EECS 395/495 Intro to Artificial Intelligence Search EECS 395/495 Intro to Artificial Intelligence Doug Downey (slides from Oren Etzioni, based on Stuart Russell, Dan Weld, Henry Kautz, and others) What is Search? Search is a class of techniques for

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

COMP9414: Artificial Intelligence Informed Search

COMP9414: Artificial Intelligence Informed Search COMP9, Monday 9 March, 0 Informed Search COMP9: Artificial Intelligence Informed Search Wayne Wobcke Room J- wobcke@cse.unsw.edu.au Based on slides by Maurice Pagnucco Overview Heuristics Informed Search

More information

mywbut.com Informed Search Strategies-II

mywbut.com Informed Search Strategies-II Informed Search Strategies-II 1 3.3 Iterative-Deepening A* 3.3.1 IDA* Algorithm Iterative deepening A* or IDA* is similar to iterative-deepening depth-first, but with the following modifications: The depth

More information

CS:4420 Artificial Intelligence

CS:4420 Artificial Intelligence CS:4420 Artificial Intelligence Spring 2018 Informed Search Cesare Tinelli The University of Iowa Copyright 2004 18, Cesare Tinelli and Stuart Russell a a These notes were originally developed by Stuart

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

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

Chapter 11 Search Algorithms for Discrete Optimization Problems

Chapter 11 Search Algorithms for Discrete Optimization Problems Chapter Search Algorithms for Discrete Optimization Problems (Selected slides) A. Grama, A. Gupta, G. Karypis, and V. Kumar To accompany the text Introduction to Parallel Computing, Addison Wesley, 2003.

More information

Informed Search CS457 David Kauchak Fall 2011

Informed Search CS457 David Kauchak Fall 2011 Admin Informed Search CS57 David Kauchak Fall 011 Some material used from : Sara Owsley Sood and others Q3 mean: 6. median: 7 Final projects proposals looked pretty good start working plan out exactly

More information

Uninformed Search. Reading: Chapter 4 (Tuesday, 2/5) HW#1 due next Tuesday

Uninformed Search. Reading: Chapter 4 (Tuesday, 2/5) HW#1 due next Tuesday Uninformed Search Reading: Chapter 4 (Tuesday, 2/5) HW#1 due next Tuesday 1 Uninformed Search through the space of possible solutions Use no knowledge about which path is likely to be best Exception: uniform

More information

Lecture 14: March 9, 2015

Lecture 14: March 9, 2015 324: tate-space, F, F, Uninformed earch. pring 2015 Lecture 14: March 9, 2015 Lecturer: K.R. howdhary : Professor of (VF) isclaimer: These notes have not been subjected to the usual scrutiny reserved for

More information

ARTIFICIAL INTELLIGENCE. Informed search

ARTIFICIAL INTELLIGENCE. Informed search INFOB2KI 2017-2018 Utrecht University The Netherlands ARTIFICIAL INTELLIGENCE Informed search Lecturer: Silja Renooij These slides are part of the INFOB2KI Course Notes available from www.cs.uu.nl/docs/vakken/b2ki/schema.html

More information

3 SOLVING PROBLEMS BY SEARCHING

3 SOLVING PROBLEMS BY SEARCHING 48 3 SOLVING PROBLEMS BY SEARCHING A goal-based agent aims at solving problems by performing actions that lead to desirable states Let us first consider the uninformed situation in which the agent is not

More information

UNINFORMED SEARCH. What to do if teammates drop? Still have 3 or more? No problem keep going. Have two or fewer and want to be merged?

UNINFORMED SEARCH. What to do if teammates drop? Still have 3 or more? No problem keep going. Have two or fewer and want to be merged? UNINFORMED SEARCH EECS492 January 14, 2010 Administrative What to do if teammates drop? Still have 3 or more? No problem keep going. Have two or fewer and want to be merged? We ll do what we can. Submitting

More information

Artificial Intelligence p.1/49. n-queens. Artificial Intelligence p.2/49. Initial state: the empty board or a board with n random

Artificial Intelligence p.1/49. n-queens. Artificial Intelligence p.2/49. Initial state: the empty board or a board with n random Example: n-queens Put n queens on an n n board with no two queens on the same row, column, or diagonal A search problem! State space: the board with 0 to n queens Initial state: the empty board or a board

More information

Chapter S:II (continued)

Chapter S:II (continued) Chapter S:II (continued) II. Basic Search Algorithms Systematic Search Graph Basics State Space Search Depth-First Search Backtracking Breadth-First Search Uniform-Cost Search S:II-60 Basic Search Algorithms

More information

This lecture. Lecture 6: Search 5. Other Time and Space Variations of A* Victor R. Lesser. RBFS - Recursive Best-First Search Algorithm

This lecture. Lecture 6: Search 5. Other Time and Space Variations of A* Victor R. Lesser. RBFS - Recursive Best-First Search Algorithm Lecture 6: Search 5 Victor R. Lesser CMPSCI 683 Fall 2010 This lecture Other Time and Space Variations of A* Finish off RBFS SMA* Anytime A* RTA* (maybe if have time) RBFS - Recursive Best-First Search

More information

Introduction to Computer Science and Programming for Astronomers

Introduction to Computer Science and Programming for Astronomers Introduction to Computer Science and Programming for Astronomers Lecture 9. István Szapudi Institute for Astronomy University of Hawaii March 21, 2018 Outline Reminder 1 Reminder 2 3 Reminder We have demonstrated

More information

Chapter S:IV. IV. Informed Search

Chapter S:IV. IV. Informed Search Chapter S:IV IV. Informed Search Best-First Search Best-First Search for State-Space Graphs Cost Functions for State-Space Graphs Evaluation of State-Space Graphs Algorithm A* BF* Variants Hybrid Strategies

More information

Lecture 5: Search Algorithms for Discrete Optimization Problems

Lecture 5: Search Algorithms for Discrete Optimization Problems Lecture 5: Search Algorithms for Discrete Optimization Problems Definitions Discrete optimization problem (DOP): tuple (S, f), S finite set of feasible solutions, f : S R, cost function. Objective: find

More information

Chapter S:II (continued)

Chapter S:II (continued) Chapter S:II (continued) II. Basic Search Algorithms Systematic Search Graph Theory Basics State Space Search Depth-First Search Backtracking Breadth-First Search Uniform-Cost Search AND-OR Graph Basics

More information

Algorithms and Complexity

Algorithms and Complexity Algorithms and Complexity What is the course about? How to solve problems in an algorithmic way. Three examples: 1. Sorting of numbers Can be solved easily. But it can be solved more efficiently. 2. Shortest

More information

Problem Solving Agents

Problem Solving Agents Problem Solving Agents Well-defined Problems Solutions (as a sequence of actions). Examples Search Trees Uninformed Search Algorithms Well-defined Problems 1. State Space, S An Initial State, s 0 S. A

More information

Search Algorithms for Discrete Optimization Problems

Search Algorithms for Discrete Optimization Problems Search Algorithms for Discrete Optimization Problems Ananth Grama, Anshul Gupta, George Karypis, and Vipin Kumar To accompany the text ``Introduction to Parallel Computing'', Addison Wesley, 2003. Topic

More information

Artificial Intelligence Informed search. Peter Antal

Artificial Intelligence Informed search. Peter Antal Artificial Intelligence Informed search Peter Antal antal@mit.bme.hu 1 Informed = use problem-specific knowledge Which search strategies? Best-first search and its variants Heuristic functions? How to

More information

INF 4130 Exercise set 4, 15th Sept 2015 w/ solutions

INF 4130 Exercise set 4, 15th Sept 2015 w/ solutions INF 4130 Exercise set 4, 15th Sept 2015 w/ solutions Exercise 1 List the order in which we extract the nodes from the Live Set queue when we do a breadth first search of the following graph (tree) with

More information

Last time: Problem-Solving

Last time: Problem-Solving Last time: Problem-Solving Problem solving: Goal formulation Problem formulation (states, operators) Search for solution Problem formulation: Initial state??? 1 Last time: Problem-Solving Problem types:

More information

Improving the Efficiency of Depth-First Search by Cycle Elimination

Improving the Efficiency of Depth-First Search by Cycle Elimination Improving the Efficiency of Depth-First Search by Cycle Elimination John F. Dillenburg and Peter C. Nelson * Department of Electrical Engineering and Computer Science (M/C 154) University of Illinois Chicago,

More information

Lecture 2: Fun with Search. Rachel Greenstadt CS 510, October 5, 2017

Lecture 2: Fun with Search. Rachel Greenstadt CS 510, October 5, 2017 Lecture 2: Fun with Search Rachel Greenstadt CS 510, October 5, 2017 Reminder! Project pre-proposals due tonight Overview Uninformed search BFS, DFS, Uniform-Cost, Graph-Search Informed search Heuristics,

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

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

Informed Search. CMU Snake Robot. Administrative. Uninformed search strategies. Assignment 1 was due before class how d it go?

Informed Search. CMU Snake Robot. Administrative. Uninformed search strategies. Assignment 1 was due before class how d it go? Informed Search S151 David Kauchak Fall 2010 MU Snake Robot http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/web/people/biorobotics/projects/ modsnake/index.html Some material borrowed from : Sara Owsley Sood

More information

CS510 \ Lecture Ariel Stolerman

CS510 \ Lecture Ariel Stolerman CS510 \ Lecture02 2012-10-03 1 Ariel Stolerman Midterm Evan will email about that after the lecture, at least 2 lectures from now. The exam will be given in a regular PDF (not an online form). We will

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

Graphs - II CS 2110, Spring 2016

Graphs - II CS 2110, Spring 2016 Graphs - II CS, Spring Where did David leave that book? http://www.geahvet.com Where did David leave that book? Where did David leave that book? http://www.geahvet.com Go as far down a path as possible

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Search Marc Toussaint University of Stuttgart Winter 2015/16 (slides based on Stuart Russell s AI course) Outline Problem formulation & examples Basic search algorithms 2/100 Example:

More information

An Appropriate Search Algorithm for Finding Grid Resources

An Appropriate Search Algorithm for Finding Grid Resources An Appropriate Search Algorithm for Finding Grid Resources Olusegun O. A. 1, Babatunde A. N. 2, Omotehinwa T. O. 3,Aremu D. R. 4, Balogun B. F. 5 1,4 Department of Computer Science University of Ilorin,

More information

Today s s lecture. Lecture 3: Search - 2. Problem Solving by Search. Agent vs. Conventional AI View. Victor R. Lesser. CMPSCI 683 Fall 2004

Today s s lecture. Lecture 3: Search - 2. Problem Solving by Search. Agent vs. Conventional AI View. Victor R. Lesser. CMPSCI 683 Fall 2004 Today s s lecture Search and Agents Material at the end of last lecture Lecture 3: Search - 2 Victor R. Lesser CMPSCI 683 Fall 2004 Continuation of Simple Search The use of background knowledge to accelerate

More information

Lecture 3 of 42. Lecture 3 of 42

Lecture 3 of 42. Lecture 3 of 42 Search Problems Discussion: Term Projects 3 of 5 William H. Hsu Department of Computing and Information Sciences, KSU KSOL course page: http://snipurl.com/v9v3 Course web site: http://www.kddresearch.org/courses/cis730

More information

Intelligent Agents. Foundations of Artificial Intelligence. Problem-Solving as Search. A Simple Reflex Agent. Agent with Model and Internal State

Intelligent Agents. Foundations of Artificial Intelligence. Problem-Solving as Search. A Simple Reflex Agent. Agent with Model and Internal State Intelligent s Foundations of Artificial Intelligence Problem-Solving as Search S7 Fall 007 Thorsten Joachims : Anything that can be viewed as perceiving its environment through sensors and acting upon

More information

Basic Search Algorithms

Basic Search Algorithms Basic Search Algorithms Tsan-sheng Hsu tshsu@iis.sinica.edu.tw http://www.iis.sinica.edu.tw/~tshsu 1 Abstract The complexities of various search algorithms are considered in terms of time, space, and cost

More information

CMPSCI 250: Introduction to Computation. Lecture #24: General Search, DFS, and BFS David Mix Barrington 24 March 2014

CMPSCI 250: Introduction to Computation. Lecture #24: General Search, DFS, and BFS David Mix Barrington 24 March 2014 CMPSCI 250: Introduction to Computation Lecture #24: General Search, DFS, and BFS David Mix Barrington 24 March 2014 General Search, DFS, and BFS Four Examples of Search Problems State Spaces, Search,

More information

Solving Problems by Searching

Solving Problems by Searching Solving Problems by Searching Berlin Chen 2004 Reference: 1. S. Russell and P. Norvig. Artificial Intelligence: A Modern Approach. Chapter 3 1 Introduction Problem-Solving Agents vs. Reflex Agents Problem-solving

More information

Problem solving as Search (summary)

Problem solving as Search (summary) Problem solving as Search (summary) References Russell and Norvig, Artificial Intelligence: A modern approach, 2nd ed. Prentice Hall, 2003 (chapter 3) Nilsson, Artificial intelligence: A New synthesis.

More information

Topic 1 Uninformed Search

Topic 1 Uninformed Search Topic 1 Uninformed Search [George F Luger. 2008. Artificial Intelligence Structures and Strategies for Complex Problem Solving. 6 th Ed. Pearson. ISBN: 0321545893.] 1 Contents 1. Depth-First Search (DFS)

More information

DIT411/TIN175, Artificial Intelligence. Peter Ljunglöf. 23 January, 2018

DIT411/TIN175, Artificial Intelligence. Peter Ljunglöf. 23 January, 2018 DIT411/TIN175, Artificial Intelligence Chapters 3 4: More search algorithms CHAPTERS 3 4: MORE SEARCH ALGORITHMS DIT411/TIN175, Artificial Intelligence Peter Ljunglöf 23 January, 2018 1 TABLE OF CONTENTS

More information

Informed Search and Exploration

Informed Search and Exploration Ch. 03 p.1/47 Informed Search and Exploration Sections 3.5 and 3.6 Ch. 03 p.2/47 Outline Best-first search A search Heuristics, pattern databases IDA search (Recursive Best-First Search (RBFS), MA and

More information