Lab 3 How’d it go?.

Slides:



Advertisements
Similar presentations
Review: Search problem formulation
Advertisements

Uninformed search strategies
Informed search algorithms
Greedy best-first search Use the heuristic function to rank the nodes Search strategy –Expand node with lowest h-value Greedily trying to find the least-cost.
Problem Solving by Searching Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 3 Spring 2007.
Sensor Based Planners Bug algorithms.
Solving Problem by Searching
1 Heuristic Search Chapter 4. 2 Outline Heuristic function Greedy Best-first search Admissible heuristic and A* Properties of A* Algorithm IDA*
Problem Solving Agents A problem solving agent is one which decides what actions and states to consider in completing a goal Examples: Finding the shortest.
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.
Solving Problems by Searching Currently at Chapter 3 in the book Will finish today/Monday, Chapter 4 next.
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.
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.
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.
CS 380: Artificial Intelligence Lecture #3 William Regli.
Review: Search problem formulation
UnInformed Search What to do when you don’t know anything.
MAE 552 – Heuristic Optimization Lecture 27 April 3, 2002
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.
Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.
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.
Dijkstra’s Algorithm and Heuristic Graph Search David Johnson.
Review: Search problem formulation Initial state Actions Transition model Goal state (or goal test) Path cost What is the optimal solution? What is the.
1 Problem Solving and Searching CS 171/271 (Chapter 3) Some text and images in these slides were drawn from Russel & Norvig’s published material.
Problem Solving and Search Andrea Danyluk September 11, 2013.
Graphs II Robin Burke GAM 376. Admin Skip the Lua topic.
CSE 511a: Artificial Intelligence Spring 2012
© Manfred Huber Autonomous Robots Robot Path Planning.
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.
CHAPTER 4: INFORMED SEARCH & EXPLORATION Prepared by: Ece UYKUR.
State-Space Searches. 2 State spaces A state space consists of A (possibly infinite) set of states The start state represents the initial problem Each.
Informed search strategies Idea: give the algorithm “hints” about the desirability of different states – Use an evaluation function to rank nodes and select.
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.
Search CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
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)
Robotics Club: 5:30 this evening
Uninformed search strategies A search strategy is defined by picking the order of node expansion Uninformed search strategies use only the information.
CS 343H: Artificial Intelligence
3.5 Informed (Heuristic) Searches This section show how an informed search strategy can find solution more efficiently than uninformed strategy. Best-first.
Artificial Intelligence Lecture No. 8 Dr. Asad Ali Safi ​ Assistant Professor, Department of Computer Science, COMSATS Institute of Information Technology.
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.
Review: Tree search Initialize the frontier using the starting state
Schedule for next 2 weeks
Uninformed Search Strategies
HW #1 Due 29/9/2008 Write Java Applet to solve Goats and Cabbage “Missionaries and cannibals” problem with the following search algorithms: Breadth first.
Motion Planning for a Point Robot (2/2)
CS 188: Artificial Intelligence Spring 2007
CS 188: Artificial Intelligence Fall 2008
Lecture 1B: Search.
EA C461 – Artificial Intelligence
Planning.
Presentation transcript:

Lab 3 How’d it go?

http://bgr.com/2014/09/29/mario-kart-oculus-rift-video/

Occupancy Grid start goal

4) Finding shortest path?

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

5) Finding shortest path with costs

Costs on Actions START GOAL d b p q c e h a f r 2 9 8 1 3 4 15 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.

Uniform Cost Search S G 2 Expand cheapest node first: b p q c e h a f r 2 Expand cheapest node first: Fringe is a priority queue 1 8 2 2 3 9 1 8 1 1 15 S a b d p c e h f r q G 9 1 3 4 5 17 11 16 11 Cost contours 6 13 7 8 11 10

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 … c  1 c  2 c  3 cd /Users/taylorm/Documents/pacman/published/demos python pacman.py -l contoursMaze -p SearchAgent -a fn=ucs --frameTime -1 python pacman.py -p SearchAgent -a fn=ucs -l smallMaze --frameTime -1 Start Goal DEMOS

In this problem the start state is S, and the goal state is G 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. What is the order of states expanded using Uniform Cost Search? Assume algorithm terminates when reaches G.  SABCDEFG

Informed Search start goal Uninformed search Informed 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 10 5 11.2

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 General idea: Avoid searching the entire state space Pre-compute a (hopefully) small graph (roadmap) such that staying on the “roads” will avoid obstacles Find a path from 𝑞𝑠𝑡𝑎𝑟𝑡 to the closest point on the roadmap, and then use the roadmap to find a path to 𝑞𝑔𝑜𝑎𝑙

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 is easy:

Voronoi Diagram Control is easy: stay equidistant away from closest obstacles

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

Exact Cell Decomposition How would this be used?

Exact Cell Decomposition Identify adjacent cells

Exact Cell Decomposition Plan over this graph How can we improve the path?

Example of Adaptive Decomposition Quadtrees

Example of Adaptive Decomposition Quadtrees Each internal node has 4 children Recursively sub-divide space into quadrants

Exact vs. fixed vs. adaptive Pros and Cons?

Considerations Difficulty in constructing map Computational complexity Planning over map Constructing map Map Accuracy Memory Needed

Kinematics Navigation Maps Localization Map building Move were you want to go Navigation Given a Map, and Path planning: Decide where you want to go, and then use Kinematics Maps Representation: Turn the real world into a map I can plan over Localization Given a map, how do I know where I am? Map building Oh man, how do I construct a map? Well, it probably depends on where I am and how I move….

How to navigate between A and B? Two components to this task: Navigation without hitting obstacles Detection of goal location Possible by following always the left wall How to detect that the goal is reached? “behavior based navigation” It can work in some environments but not in all

How to navigate between A and B? Map based navigation relies on a map Assuming that the map is known, at every time step the robot has to localize itself in the map. How? If we know the start position, we can use wheel odometry or dead reckoning.

Odometry and Mapping Create a map as the robot is exploring the environment. If we assume that our odometry is perfect, could get something like this: Can’t trust odometry so we must localize as we’re mapping.

Challenges Effector noise / Odometry Error Sensor noise Distance movement estimation Turn error: turning estimation Drift Error: difference in error of wheels Sensor noise False positive readings, false negative readings, noisy readings Sensor aliasing Multiple locations appear the same to the sensors

Simple error model from kinematics

but now add in turning…

and this leads to things like (Dieter Fox @ CMU)