Motion Planning for a Point Robot (1/2)

Slides:



Advertisements
Similar presentations
Heuristic Search techniques
Advertisements

Problem solving with graph search
Reactive and Potential Field Planners
AI Pathfinding Representing the Search Space
1 Motion and Manipulation Configuration Space. Outline Motion Planning Configuration Space and Free Space Free Space Structure and Complexity.
1 SOFSEM 2007 Weighted Nearest Neighbor Algorithms for the Graph Exploration Problem on Cycles Eiji Miyano Kyushu Institute of Technology, Japan Joint.
Traveling Salesperson Problem
Informed Search Methods How can we improve searching strategy by using intelligence? Map example: Heuristic: Expand those nodes closest in “as the crow.
Sensor Based Planners Bug algorithms.
Chapter 2 : Bug Algorithms Hyoekjae Kwon Sungmin Lee.
April Bug Algorithms Shmuel Wimer Bar Ilan Univ., School of Engineering.
Computational Geometry, WS 2007/08 Lecture 17 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für Angewandte Wissenschaften.
CSE 380 – Computer Game Programming Pathfinding AI
CSC 423 ARTIFICIAL INTELLIGENCE
Roadmap Methods How do I get there? Visibility Graph Voronoid Diagram.
1 Motion Planning Algorithms : BUG-family. 2 To plan a path  find a continuous trajectory leading from initial position of the automaton (a mobile robot)
Navigation and Motion Planning for Robots Speaker: Praveen Guddeti CSE 976, April 24, 2002.
Robot Motion Planning Bug 2 Probabilistic Roadmaps Bug 2 Probabilistic Roadmaps.
Backtracking.
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.
State-Space Searches.
Copyright R. Weber Search in Problem Solving Search in Problem Solving INFO 629 Dr. R. Weber.
Search: Heuristic &Optimal Artificial Intelligence CMSC January 16, 2003.
Problem Solving and Mazes
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.
HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Online Routing in Faulty Meshes with Sub-linear Comparative Time and Traffic.
Wandering Standpoint Algorithm. Wandering Standpoint Algorithm for local path planning Description: –Local path planning algorithm. Required: –Local distance.
Stefan Rührup 1 HEINZ NIXDORF INSTITUTE University of Paderborn, Germany Algorithms and Complexity Competitive Time and Traffic Analysis of Position-based.
COMP322/S2000/L281 Task Planning Three types of planning: l Gross Motion Planning concerns objects being moved from point A to point B without problems,
Artificial Intelligence
Navigation & Motion Planning Cell Decomposition Skeletonization Bounded Error Planning (Fine-motion Planning) Landmark-based Planning Online Algorithms.
Informed Search Reading: Chapter 4.5 HW #1 out today, due Sept 26th.
1 Energy-Efficient Mobile Robot Exploration Yongguo Mei, Yung-Hsiang Lu Purdue University ICRA06.
© The McGraw-Hill Companies, Inc., Chapter 12 On-Line Algorithms.
Limited-knowledge path planning
System Model: Physical Module Constraints: 1)A module must have a minimum of two adjacent free sides in order to move. 2) A module must have an adjacent.
11 -1 Chapter 12 On-Line Algorithms On-Line Algorithms On-line algorithms are used to solve on-line problems. The disk scheduling problem The requests.
Artificial Intelligence Lecture No. 8 Dr. Asad Ali Safi ​ Assistant Professor, Department of Computer Science, COMSATS Institute of Information Technology.
Course 3 Binary Image Binary Images have only two gray levels: “1” and “0”, i.e., black / white. —— save memory —— fast processing —— many features of.
Lecture 3: Uninformed Search
Limited-knowledge path planning
Linear Programming Many problems take the form of maximizing or minimizing an objective, given limited resources and competing constraints. specify the.
Traveling Salesperson Problem
Chapter 11 Motion.
CS b659: Intelligent Robotics
Schedule for next 2 weeks
Surviving Holes and Barriers in Geographic Data Reporting for
Haim Kaplan and Uri Zwick
Artificial Intelligence Problem solving by searching CSC 361
Chapter 11 Motion.
Motion Planning for a Point Robot (2/2)
“Enter Group Name” Tyler Atkinson and Dylan Menchetti
Motion Planning for Multiple Autonomous Vehicles
Chapter 3 Vectors.
HW2 EE 562.
Searching for Solutions
Day 29 Bug Algorithms 12/7/2018.
Agent-Centered Search
Day 29 Bug Algorithms 12/8/2018.
Chapter 3 Jeopardy Review
Bug Algorithms.
Chap 4: Searching Techniques
More advanced aspects of search
State-Space Searches.
State-Space Searches.
The Rich/Knight Implementation
CMSC 471 Fall 2011 Class #4 Tue 9/13/11 Uninformed Search
Reading: Chapter 4.5 HW#2 out today, due Oct 5th
State-Space Searches.
The Rich/Knight Implementation
Presentation transcript:

Motion Planning for a Point Robot (1/2)

Purposes Introduce simple algorithms with little geometric sophistication Present two extreme approaches: purely (sensor-based) reactive strategies and omniscient off-line planners Illustrate that motion planning requires predictive models

Problem free space Start Finish obstacle free path obstacle obstacle

Bug Algorithms Assumptions: The world is a two-dimensional plane The robot is modeled as a point The obstacles have bounded perimeters and are in finite number The robot has no prior knowledge of locations and shapes of the obstacles The robot senses perfectly its position (~GPS) and can measure traveled distance The robot’s touch sensor can perfectly detect contact with an obstacle, allowing the robot to track the contour of the obstacle The robot has small computational power and small amount of memory, but can compute the direction toward the goal from its current position, as well as the distance between two points Finish Start

Bug-0 Algorithm Bug-0 Repeat: Head toward the goal Start Finish Bug-0 Repeat: Head toward the goal If the goal is attained then stop If contact is made with an obstacle then follow the obstacle’s boundary (toward the left) until heading toward the goal is possible again.

Is Bug-0 Guaranteed to Work? No! Start Finish Start Finish

Bug-1 Algorithm Bug-1: Repeat: Head toward the goal If the goal is attained then stop If contact is made with an obstacle then circumnavigate the obstacle, identify the closest point Li to the goal in the obstacles’ boundary, and return to this point by the shortest path along the obstacle’s boundary L2 Finish L1 Start

Path Followed by Bug-1? Finish Bug-1: Repeat: Head toward the goal If the goal is attained then stop If contact is made with an obstacle then circumnavigate the obstacle, identify the closest point Li to the goal in the obstacles’ boundary, and return to this point by the shortest path along the obstacle’s boundary Start

Han Can Bug-1 Recognize that the goal is not reachable? Repeat: Head toward the goal If the goal is attained then stop If contact is made with an obstacle then circumnavigate the obstacle, identify the closest point Li to the goal in the obstacles’ boundary, and return to this point by the shortest path along the obstacle’s boundary If the direction from Li toward the goal points into the obstacle then the goal can’t be reached. Stop Finish Start

Distance Traveled T by Bug-1? Lower bound? T  D (where D is the straight-line distance from Start to Finish) Upper bound? T  D + 1.5SPi (where SPi is the sum of the perimeters of all the obstacles)

Distance Traveled T by Bug-1? Lower bound? T  D (where D is the straight-line distance from Start to Finish) Upper bound? T  D + 1.5SPi (where SPi is the sum of the perimeters of all the obstacles)

Distance Traveled T by Bug-1? Lower bound? T  D (where D is the straight-line distance from Start to Finish) Upper bound? T  D + 1.5SPi (where SPi is the sum of the perimeters of all the obstacles)

Bug-2 Algorithm Bug-2: Repeat: Head toward the goal along the goal-line If the goal is attained then stop If a hit point is reached then follow the obstacle’s boundary (toward the left) until the goal-line is crossed at a leave point closer to the goal than any previous hit point on the same side of the goal in the goal-line Finish leave point hit point goal-line Start

Path Followed by Bug-2? Bug-2: Repeat: Head toward the goal along the goal-line If the goal is attained then stop If a hit point is reached then follow the obstacle’s boundary (toward the left) until the goal-line is crossed at a leave point closer to the goal than any previous hit point on the same side of the goal in the goal-line Start Finish

Path Followed by Bug-2? Bug-2: Repeat: Head toward the goal along the goal-line If the goal is attained then stop If a hit point is reached then follow the obstacle’s boundary (toward the left) until the goal-line is crossed at a leave point closer to the goal than any previous hit point on the same side of the goal in the goal-line Start Finish

Path Followed by Bug-2? Bug-2: Repeat: Head toward the goal along the goal-line If the goal is attained then stop If a hit point is reached then follow the obstacle’s boundary (toward the left) until the goal-line is crossed at a leave point closer to the goal than any previous hit point on the same side of the goal in the goal-line Start Finish

Han Can Bug-2 Recognize that the goal is not reachable? Repeat: Head toward the goal along the goal-line If the goal is attained then stop If a hit point is reached then follow the obstacle’s boundary (toward the left) until the goal-line is crossed at a leave point closer to the goal than any previous hit point on the same side of the goal in the goal-line Finish Start

Distance Traveled T by Bug-2? Lower bound? T  D (where D is the straight-line distance from Start to Finish) Upper bound? T  D + SniPi (where Pi is the perimeter of obstacle i, ni is the number of hit points in obstacle i, and the sum S is taken over all the obstacles)

Distance Traveled T by Bug-2? Lower bound? T  D (where D is the straight-line distance from Start to Finish) Upper bound? T  D + 0.5SniPi (where the sum S is taken over all the obstacles intersected by the goal-line, Pi is the perimeter of intersected obstacle i, ni is the number of times the goal-line intersects obstacle i)

Worst Case for Bug-2? Start Finish Arbitrarily small maze

Which one --- Bug-1 or Bug-2 --- does better? Bug-2 does better than Bug-1 Bug-1 does better than Bug-2 Start Finish Finish Start

Variant of Bug-2 Bug-2’: Repeat: Head toward the goal along the goal-line If the goal is attained then stop If a hit point is reached then follow the obstacle’s boundary (toward the left) until the goal-line is crossed at a leave point that has not been visited yet Start Finish

Bug Extensions Add more sensing capabilities For example, add 360-dg range sensing

Planning requires models Bug algorithms don’t plan ahead. They are not really motion planners, but “reactive motion strategies” To plan its actions, a robot needs a (possibly imperfect) predictive model of the effects of its actions, so that it can choose among several possible combinations of actions

Notion of Competitive Ratio Bug algorithms are examples of online algorithms where a robot discovers its environment while moving The competitive ratio of an online algorithm A is the maximum over all possible environments of the ratio of the length of the path computed by A by the length of the path computed by an optimal offline algorithm B that is given a model of the environment What is the competitive ratio of Bug-1 and Bug-2 relative to an algorithm always computes the shortest path?

The Bridge-River Problem Problem: A lost hiker reaches a river. There is a bridge across the river, but it is not known how far away it is, or if it is upstream or downstream. The hiker is exhausted and wishes to find the bridge while minimizing path length. Solution: The optimal solution consists of moving alternatively in the upstream and downstream directions, exploring 1 distance unit downstream, then 2 units (from the original starting position) upstream, then 4 downstream, and continuing in powers of 2 until the bridge is found. What is the competitive ratio of this method?

The Bridge-River Problem Calculation of competitive ratio: Let us number the moves 1, 2, 3, ..., i, ... After move i the hiker stands 2i-1 units away from the starting position S, downstream if i is odd, and upstream otherwise. In the worst case, the bridge is at distance d = 2k-1 + e from S, for an arbitrarily small e > 0 and some k  1. In this case, the hiker does not find the bridge at move k, and must perform move k+1 and then a fraction of move k+1. Each unsuccessful move i = 1, 2, ..., k+1 leads the hiker to travel a round-trip distance of 22i-1. So, overall the hiker travels: The competitive ratio is bounded by 9. This bound is a tight. For any r < 9, there exists d such that the hiker travels more than r  d.