How are things going? Core AI Problem Mobile robot path planning: identifying a trajectory that, when executed, will enable the robot to reach the goal.

Slides:



Advertisements
Similar presentations
Artificial Intelligent
Advertisements

Solving problems by searching Chapter 3. Outline Problem-solving agents Problem types Problem formulation Example problems Basic search algorithms.
Additional Topics ARTIFICIAL INTELLIGENCE
Review: Search problem formulation
Uninformed search strategies
1 Lecture 3 Uninformed Search. 2 Uninformed search strategies Uninformed: While searching you have no clue whether one non-goal state is better than any.
Uninformed (also called blind) search algorithms) This Lecture Chapter Next Lecture Chapter (Please read lecture topic material before.
CS 480 Lec 3 Sept 11, 09 Goals: Chapter 3 (uninformed search) project # 1 and # 2 Chapter 4 (heuristic search)
Blind Search1 Solving problems by searching Chapter 3.
Search Strategies Reading: Russell’s Chapter 3 1.
May 12, 2013Problem Solving - Search Symbolic AI: Problem Solving E. Trentin, DIISM.
1 Chapter 3 Solving Problems by Searching. 2 Outline Problem-solving agentsProblem-solving agents Problem typesProblem types Problem formulationProblem.
Solving Problem by Searching Chapter 3. Outline Problem-solving agents Problem formulation Example problems Basic search algorithms – blind search Heuristic.
1 Lecture 3 Uninformed Search. 2 Uninformed search strategies Uninformed: While searching you have no clue whether one non-goal state is better than any.
1 Lecture 3: 18/4/1435 Uninformed search strategies Lecturer/ Kawther Abas 363CS – Artificial Intelligence.
Touring problems Start from Arad, visit each city at least once. What is the state-space formulation? Start from Arad, visit each city exactly once. What.
Artificial Intelligence for Games Uninformed search Patrick Olivier
EIE426-AICV 1 Blind and Informed Search Methods Filename: eie426-search-methods-0809.ppt.
Artificial Intelligence (CS 461D)
Search Strategies CPS4801. Uninformed Search Strategies Uninformed search strategies use only the information available in the problem definition Breadth-first.
UNINFORMED SEARCH Problem - solving agents Example : Romania  On holiday in Romania ; currently in Arad.  Flight leaves tomorrow from Bucharest.
14 Jan 2004CS Blind Search1 Solving problems by searching Chapter 3.
An Introduction to Artificial Intelligence Lecture 3: Solving Problems by Sorting Ramin Halavati In which we look at how an agent.
CS 380: Artificial Intelligence Lecture #3 William Regli.
Review: Search problem formulation
Searching the search space graph
Artificial Intelligence Chapter 3: Solving Problems by Searching
1 Lecture 3 Uninformed Search. 2 Complexity Recap (app.A) We often want to characterize algorithms independent of their implementation. “This algorithm.
CS 188: Artificial Intelligence Spring 2006 Lecture 2: Queue-Based Search 8/31/2006 Dan Klein – UC Berkeley Many slides over the course adapted from either.
Announcements Project 0: Python Tutorial
Solving problems by searching
1 Lecture 3 Uninformed Search
CS 188: Artificial Intelligence Fall 2009 Lecture 2: Queue-Based Search 9/1/2009 Dan Klein – UC Berkeley Multiple slides from Stuart Russell, Andrew Moore.
Lecture 3 Uninformed Search.
Review: Search problem formulation Initial state Actions Transition model Goal state (or goal test) Path cost What is the optimal solution? What is the.
Problem Solving and Search Andrea Danyluk September 11, 2013.
Lab 3 How’d it go?.
CSE 511a: Artificial Intelligence Spring 2012
Class material vs. Lab material – Lab 2, 3 vs. 4,5, 6 BeagleBoard / TI / Digilent GoPro.
Search Tamara Berg CS 560 Artificial Intelligence Many slides throughout the course adapted from Dan Klein, Stuart Russell, Andrew Moore, Svetlana Lazebnik,
Artificial Intelligence
AI in game (II) 권태경 Fall, outline Problem-solving agent Search.
For Friday Finish reading chapter 4 Homework: –Lisp handout 4.
For Monday Read chapter 4, section 1 No homework..
Search with Costs and Heuristic Search 1 CPSC 322 – Search 3 January 17, 2011 Textbook §3.5.3, Taught by: Mike Chiang.
Review: Tree search Initialize the frontier using the starting state While the frontier is not empty – Choose a frontier node to expand according to search.
Lecture 3: Uninformed Search
yG7s#t=15 yG7s#t=15.
An Introduction to Artificial Intelligence Lecture 3: Solving Problems by Sorting Ramin Halavati In which we look at how an agent.
Advanced Artificial Intelligence Lecture 2: Search.
SOLVING PROBLEMS BY SEARCHING Chapter 3 August 2008 Blind Search 1.
A General Introduction to Artificial Intelligence.
Computer Science CPSC 322 Lecture 6 Iterative Deepening and Search with Costs (Ch: 3.7.3, 3.5.3)
Solving problems by searching 1. Outline Problem formulation Example problems Basic search algorithms 2.
Uninformed search strategies A search strategy is defined by picking the order of node expansion Uninformed search strategies use only the information.
Problem Solving as Search. Problem Types Deterministic, fully observable  single-state problem Non-observable  conformant problem Nondeterministic and/or.
CS 343H: Artificial Intelligence
AI Adjacent Fields  Philosophy:  Logic, methods of reasoning  Mind as physical system  Foundations of learning, language, rationality  Mathematics.
Chapter 3 Solving problems by searching. Search We will consider the problem of designing goal-based agents in observable, deterministic, discrete, known.
Artificial Intelligence Search Instructors: David Suter and Qince Li Course Harbin Institute of Technology [Many slides adapted from those.
Artificial Intelligence Solving problems by searching.
Chapter 3.5 Heuristic Search. Learning Objectives Heuristic search strategies –Best-first search –A* algorithm Heuristic functions.
Schedule for next 2 weeks
Motion Planning for a Point Robot (2/2)
CS 188: Artificial Intelligence Spring 2007
CS 188: Artificial Intelligence Fall 2008
Lecture 1B: Search.
Artificial Intelligence
Searching for Solutions
Presentation transcript:

How are things going?

Core AI Problem Mobile robot path planning: identifying a trajectory that, when executed, will enable the robot to reach the goal location Representation – State (state space) – Actions (operators) – Initial and goal states Plan: – Sequence of actions/states that achieve desired goal state.

4) Finding shortest path?

General Tree Search Important ideas: – Fringe – Expansion – Exploration strategy Main question: which fringe nodes to explore?

Review: Depth First Search S a b d p a c e p h f r q qc G a q e p h f r q qc G a S G d b p q c e h a f r q p h f d b a c e r Strategy: expand deepest node first Implementation: Fringe is a LIFO stack

Depth-first search Expand deepest unexpanded node Implementation: – fringe = LIFO queue, i.e., put successors at front (i.e. a stack)

Depth-first search DEMOS

Review: Breadth First Search S a b d p a c e p h f r q qc G a q e p h f r q qc G a S G d b p q c e h a f r Search Tiers Strategy: expand shallowest node first Implementation: Fringe is a FIFO queue

Breadth-first search Expand shallowest unexpanded node Implementation: – Fringe is a FIFO queue, i.e., new successors go at end DEMOS

DFS Infinite paths make DFS incomplete… How can we fix this? AlgorithmCompleteOptimalTimeSpace DFS Depth First Search NN O(B LMAX )O(LMAX) START GOAL a b NNInfinite

DFS With cycle checking, DFS is complete.* AlgorithmCompleteOptimalTimeSpace DFS w/ Path Checking YN O(b m+1 )O(bm) … b 1 node b nodes b 2 nodes b m nodes m tiers * Or with graph search version of DFS

BFS When is BFS optimal? AlgorithmCompleteOptimalTimeSpace DFS w/ Path Checking BFS YN O(b m+1 )O(bm) … b 1 node b nodes b 2 nodes b m nodes s tiers YN* O(b s+1 )O(b s ) b s nodes

In this problem the start state is S, and the goal state is G. IGNORE the heuristic estimate, h, and the transition costs next to the edges. Assume that ordering is defined by, and ties are always broken by, choosing the state that comes first alphabetically. 1.What is the order of states expanded using Depth First Search? Assume DFS terminates as soon as it reaches G. 2.What is the order of states expanded using Breadth First Search? Assume BFS terminates as soon as it reaches G.

Iterative Deepening Iterative deepening uses DFS as a subroutine: 1.Do a DFS which only searches for paths of length 1 or less. 2.If “1” failed, do a DFS which only searches paths of length 2 or less. 3.If “2” failed, do a DFS which only searches paths of length 3 or less. ….and so on. AlgorithmCompleteOptimalTimeSpace DFS w/ Path Checking BFS ID YN O(b m+1 )O(bm) YN* O(b s+1 )O(b s ) YN* O(b s+1 )O(bs) … b

5) Finding shortest path with costs

Costs on Actions Notice that BFS finds the shortest path in terms of number of transitions. It does not find the least-cost path. We will quickly cover an algorithm which does find the least-cost path. START GOAL d b p q c e h a f r

Uniform Cost Search S a b d p a c e p h f r q qc G a q e p h f r q qc G a Expand cheapest node first: Fringe is a priority queue S G d b p q c e h a f r Cost contours 2

Uniform-cost search For graphs with actions of different cost – Equivalent to breadth-first if step costs all equal Expand least “total cost” unexpanded node Implementation: – fringe = queue sorted by path cost g(n), from smallest to largest (i.e. a priority queue)

Uniform Cost Issues Remember: explores increasing cost contours The good: UCS is complete and optimal! The bad: – Explores options in every “direction” – No information about goal location Start Goal … c  3 c  2 c  1 DEMOS

In this problem the start state is S, and the goal state is G. The transition costs are next to the edges. IGNORE the heuristic estimate, h. Assume that ordering is defined by, and ties are always broken by, choosing the state that comes first alphabetically. 3.What is the order of states expanded using Uniform Cost Search? Assume algorithm terminates when reaches G.

Breather O Fortuna 6Q8 6Q8

Informed Search goal start Uninformed searchInformed search

Search Heuristics  Any estimate of how close a state is to a goal  Designed for a particular search problem  Examples: Manhattan distance, Euclidean distance

Best-First Search A* Heuristics – Admissible – Quick to compute – Inadmissible

Where are we? Uninformed Graph Search “Real World” to Graphs Informed Graph Search

Configuration Space (C-Space) Configuration Space: the space of all possible robot configurations. – Data structure that allows us to represent occupied and free space in the environment

Configuration Space For a point robot moving in 2-D plane, C-space is q goal q init C C free C obs Point robot (no constraints)

Example Workspace

Back to Path Planning… Typical simplifying assumptions for indoor mobile robots: – 2 DOF for representation – robot is round, so that orientation doesn’t matter – robot is holonomic, can move in any direction

Back to Path Planning…  How is a plan represented?  How is a plan computed?  What does the plan achieve?  How do we evaluate a plan’s quality? Fundamental Questions start goal

Occupancy Grid start goal

Occupancy Grid, accounting for C-Space start goal

Occupancy Grid, accounting for C-Space start goal Slightly larger grid size can make the goal unreachable. Problem if grid is “too small”?

Big Picture Occupancy grids perform exhaustive search across the state space. – Represent and evaluate a far greater number of world states than the robot would actually need to traverse What can we do differently?

Roadmap Algorithms

Shortest Path between Two Points

Shortest Path with Obstacles

Sweep Algorithms

Visibility Graph

Visibility Graphs Shortest path but… – Stays as close as possible to the obstacles – Deviations from path can lead to collisions – Requires polygonal obstacles

Other Alternatives… What if we care more about keeping our robot safe than about optimality? The other extreme: stay away from obstacles as far as possible.

Voronoi Diagram Control easy: stay equidistant away from closest obstacles But… what if are too far away to see object?

Voronoi Diagrams Difficult to compute in higher dimensions Staying away from obstacles is not necessarily the best heuristic – Can lead to paths that are much too conservative – Can be unstable: small changes in obstacle configuration can lead to large changes in the diagram Fortune’s Algorithm