Limited-knowledge path planning

Slides:



Advertisements
Similar presentations
Reactive and Potential Field Planners
Advertisements

Lecture 7: Potential Fields and Model Predictive Control
Traveling Salesperson Problem
ROBOT RENDEZVOUS: 3 OR MORE ROBOTS USING 1-DIMENSIONAL SEARCH !!!!!!! !
Sensor Based Planners Bug algorithms.
Challenges Close Shave Sprint, Spin, Sprint The Labyrinth
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.
How do albatrosses find their way?. Question Albatrosses usually breed on small islands and spend much time flying over open ocean in search for food.
Biology 272a: Comparative Animal Physiology Animal Navigation.
Dave Lattanzi’s RRT Algorithm. General Concept Use dictionaries for trees Create a randomized stack of nodes Iterate through stack “Extend” each tree.
Roadmap Methods How do I get there? Visibility Graph Voronoid Diagram.
Ramrod III Micro mouse. The Team  Andrew Igarashi – software  Kevin Li – hardware  Stephen Nakamura – hardware  Quang Ngu – software.
Tracking a moving object with real-time obstacle avoidance Chung-Hao Chen, Chang Cheng, David Page, Andreas Koschan and Mongi Abidi Imaging, Robotics and.
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)
Panos Trahanias: Autonomous Robot Navigation
City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York Robot Motion Planning.
Robot Motion Planning Bug 2 Probabilistic Roadmaps Bug 2 Probabilistic Roadmaps.
Panos Trahanias: Autonomous Robot Navigation PATH PLANNING.
The Power of Pheromones in Ant Foraging Christoph Lenzen Tsvetormira Radeva.
Motion Planning Howie CHoset.
Localisation & Navigation
Chapter 51 Animal Behavior. Migration Animals migrate in response to environmental stimuli, like changes in the day length, precipitation and temperature.
Migration Advanced Biology – Spring WARM UP Why do animals migrate? Do humans migrate? List some differences and similarities between why each species.
Lesson 10 The Fields of Accelerating Charges. Class 29 Today we will: learn about threads and stubs of accelerating point charges. learn that accelerating.
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.
Orientation Responses
Lesson 9-3 Example Solve. GEOMETRY The perimeter of a trapezoid is the sum of the length of its sides. One side length is 16 inches. One side length.
Navigation & Motion Planning Cell Decomposition Skeletonization Bounded Error Planning (Fine-motion Planning) Landmark-based Planning Online Algorithms.
Ricochet Robots Mitch Powell Daniel Tilgner. Abstract Ricochet robots is a board game created in Germany in A player is given 30 seconds to find.
Algorithm Complexity L. Grewe 1. Algorithm Efficiency There are often many approaches (algorithms) to solve a problem. How do we choose between them?
Limited-knowledge path planning
Goal Finding Robot using Fuzzy Logic and Approximate Q-Learning
+ Math Module 3 Distances. + Navigating If we want to navigate our robot we have two choices. We could sense and recognize some type of landmark to tell.
CPSC 322, Lecture 7Slide 1 Heuristic Search Computer Science cpsc322, Lecture 7 (Textbook Chpt 3.6) Sept, 20, 2013.
Animal and plant responses Homing and Migration (CB pg 216 – 222)
Computer Science cpsc322, Lecture 7
Genetic Algorithms.
Rapidly-Exploring Random Trees
Traveling Salesperson Problem
Dead Reckoning Competition
IOT POLY ENGINEERING I1-19 September 29, 2009
Applied Electricity and Magnetism
Chapter 17 Reflection and Refraction
Organisms Communicate
Random Testing.
Types of Algorithms.
Motion Planning for a Point Robot (2/2)
“Enter Group Name” Tyler Atkinson and Dylan Menchetti
Types of Algorithms.
Boustrophedon Cell Decomposition
HW2 EE 562.
EXAMPLE 5 Solve a multi-step problem NAVIGATION
Day 29 Bug Algorithms 12/7/2018.
Day 29 Bug Algorithms 12/8/2018.
ELECTRICAL CIRCUITS AND CONSTRUCTIONS An electrical circuit is a network consisting of a closed loop, giving a return path for the current 2.
Kate Straub, Julia Boothroyd, Sam Nordstrom and Anna Winter
Bug Algorithms.
Types of Algorithms.
Fundamental Problems in Mobile Robotics
State-Space Searches.
State-Space Searches.
Search.
7.1 Area of a Region Between Two Curves.
Search.
State-Space Searches.
Motion Planning for a Point Robot (1/2)
CS440/ECE 448 Lecture 4: Search Intro
Accelerators.
Presentation transcript:

Limited-knowledge path planning Path planning with limited knowledge known direction to goal otherwise local sensing walls/obstacles encoders - Insect-inspired “bug” algorithms “reasonable” world Goal 1) finitely many obstacles in any finite disc 2) a line will intersect an obstacle finitely many times Start

Not truly modeling bugs... Insects do use several cues for navigation: visual landmarks polarized light chemical sensing neither are the current bug-sized robots they’re not ears... Other animals use information from magnetic fields electric currents temperature bacteria migrating bobolink

Buginner Strategy Insect-inspired “bug” algorithms “Bug 0” algorithm known direction to goal otherwise only local sensing walls/obstacles encoders “Bug 0” algorithm 1) head toward goal 2) follow obstacles until you can head toward the goal again 3) continue assume a leftist robot OK ?

Counter-examples to Bug0 target target

Bug 1 Insect-inspired “bug” algorithms “Bug 1” algorithm known direction to goal otherwise only local sensing walls/obstacles encoders “Bug 1” algorithm 1) head toward goal

Bug 1 Insect-inspired “bug” algorithms “Bug 1” algorithm known direction to goal otherwise only local sensing walls/obstacles encoders “Bug 1” algorithm 1) head toward goal 2) if an obstacle is encountered, circumnavigate it and remember how close you get to the goal

Bug 1 Insect-inspired “bug” algorithms “Bug 1” algorithm known direction to goal otherwise only local sensing walls/obstacles encoders “Bug 1” algorithm 1) head toward goal 2) if an obstacle is encountered, circumnavigate it and remember how close you get to the goal 3) return to that closest point (by wall-following) and continue Vladimir Lumelsky & Alexander Stepanov Algorithmica 1987

What are bounds on the path length that the robot takes? Bug 1 analysis What are bounds on the path length that the robot takes? Distance Traveled Available Information: D = straight-line distance from start to goal Pi = perimeter of the i th obstacle Lower and upper bounds? Lower bound: P2 D Upper bound: P1

What are bounds on the path length that the robot takes? Bug 1 analysis What are bounds on the path length that the robot takes? Distance Traveled Available Information: D = straight-line distance from start to goal Pi = perimeter of the i th obstacle Lower and upper bounds? Lower bound: D P2 D Upper bound: P1

What are bounds on the path length that the robot takes? Bug 1 analysis What are bounds on the path length that the robot takes? Distance Traveled Available Information: D = straight-line distance from start to goal Pi = perimeter of the i th obstacle Lower and upper bounds? Lower bound: D P2 D Worst-case Lower bound: D +  Pi -  i Upper bound: D + 1.5  Pi P1 Sum over obstacles intersecting the S-line How good a bound? How good an algorithm?

Call the line from the starting point to the goal the s-line A better bug? Call the line from the starting point to the goal the s-line “Bug 2” algorithm

Call the line from the starting point to the goal the s-line A better bug? Call the line from the starting point to the goal the s-line “Bug 2” algorithm 1) head toward goal on the s-line

Call the line from the starting point to the goal the s-line A better bug? Call the line from the starting point to the goal the s-line “Bug 2” algorithm 1) head toward goal on the s-line 2) if an obstacle is in the way, follow it until encountering the s-line again.

A better bug? “Bug 2” algorithm 1) head toward goal on the s-line 2) if an obstacle is in the way, follow it until encountering the s-line again. 3) Leave the obstacle and continue toward the goal OK ?

A better bug? “Bug 2” algorithm 1) head toward goal on the s-line 2) if an obstacle is in the way, follow it until encountering the s-line again closer to the goal. 3) Leave the obstacle and continue toward the goal Start Goal OK ?

What are bounds on the path length that the robot takes? Bug 2 analysis What are bounds on the path length that the robot takes? Distance Traveled Available Information: D = straight-line distance from start to goal Start Pi = perimeter of the i th obstacle Lower and upper bounds? Lower bound: Upper bound: Goal

What are bounds on the path length that the robot takes? Bug 2 analysis What are bounds on the path length that the robot takes? Distance Traveled Available Information: D = straight-line distance from start to goal Start Pi = perimeter of the i th obstacle Ni = number of s-line intersections with the i th obstacle Lower and upper bounds? Lower bound: Upper bound: Goal

What are bounds on the path length that the robot takes? Bug 2 analysis What are bounds on the path length that the robot takes? Distance Traveled Available Information: D = straight-line distance from start to goal Start Pi = perimeter of the i th obstacle Ni = number of s-line intersections with the i th obstacle Lower and upper bounds? Lower bound: D Upper bound: Goal

What are bounds on the path length that the robot takes? Bug 2 analysis What are bounds on the path length that the robot takes? Distance Traveled Available Information: D = straight-line distance from start to goal Start Pi = perimeter of the i th obstacle Ni = number of s-line intersections with the i th obstacle Lower and upper bounds? Lower bound: D Upper bound: D + 0.5  Ni Pi i Goal

head-to-head comparison or thorax-to-thorax, perhaps What are worlds in which Bug 2 does better than Bug 1 (and vice versa) ? Bug 2 beats Bug 1 Bug 1 beats Bug 2

head-to-head comparison or thorax-to-thorax, perhaps What are worlds in which Bug 2 does better than Bug 1 (and vice versa) ? Bug 2 beats Bug 1 Bug 1 beats Bug 2 “zipper world”

Other bug-like algorithms The Pledge maze-solving algorithm 1) Go to a wall 2) Keep the wall on your right 3) Continue until out of the maze ############################################################################### # # ### # # # # # # # # # # # # # # # # ####### ##### ##### # ####### # # ### ### # ##### ##### # ### ##### # ### # # # # # # # # # # # # # # # # # # # # # # ##### # # # # # # ##### ##### # ### ### # # # ### ### ### ##### # ### ##### # # # # # # # # # # # # # # # # # # # ### ##### ### ##### ##### ### # ### # # # # ### ##### ### ##### # ##### ### # # # # # # # # # # # # # # # # # # # # # # ######### ##### # # # ########### ### ########### ### ##### ##### # # # ### # # # # # # # # # # # # # # # # # # # # # # # # ### ### ##### ####### ### # # ### # # # # ##### # # ##### # # # ### # # ##### # # # # # # # # # # # ### # # # # # # # # # ### # ### # ##### ### # ##### # # # ##### ##### ### ### ####### # ##### # ### # # # # # # # # # # # # # # # # # # # # # # # # # # # ########### ### ### ### ####### # # ### # ####### ### ##### ### ### ##### # # # # # # # # # # # # # # # # # # # ### ##### ##### # ####### # ### ####### ### # ### ####### ### ##### ### # # # # # # # # # # # # # # # # # # # # # # # # # ### ### ### # # # # ### # # # ### # ####### # # ####### # # # # # # ### # # # # # # # # # # # # # # # # # # # # # # # # ### ##### ####### # ##### # ##### ### ### # # # ### ##### ### # ### # # # # # # # # ### # # # # # # # # # # # # # mazes of unusual origin

Other bug-like algorithms The Pledge maze-solving algorithm 1) Go to a wall 2) Keep the wall on your right 3) Continue until out of the maze int a[1817];main(z,p,q,r){for(p=80;q+p-80;p=2*a[p]) for(z=9;z--;)q=3&(r=time(0)+r*57)/7,q=q?q-1?q-2?1-p%79?-1:0:p%79-77?1:0:p<1659?79:0:p>158?-79:0,q?!a[p+q*2]?a[p+=a[p+=q]=q]=q:0:0;for(;q++-1817;)printf(q%79?"%c":"%c\n"," #"[!a[q-1]]);} IOCCC random maze generator ############################################################################### # # ### # # # # # # # # # # # # # # # # ####### ##### ##### # ####### # # ### ### # ##### ##### # ### ##### # ### # # # # # # # # # # # # # # # # # # # # # # ##### # # # # # # ##### ##### # ### ### # # # ### ### ### ##### # ### ##### # # # # # # # # # # # # # # # # # # # ### ##### ### ##### ##### ### # ### # # # # ### ##### ### ##### # ##### ### # # # # # # # # # # # # # # # # # # # # # # ######### ##### # # # ########### ### ########### ### ##### ##### # # # ### # # # # # # # # # # # # # # # # # # # # # # # # ### ### ##### ####### ### # # ### # # # # ##### # # ##### # # # ### # # ##### # # # # # # # # # # # ### # # # # # # # # # ### # ### # ##### ### # ##### # # # ##### ##### ### ### ####### # ##### # ### # # # # # # # # # # # # # # # # # # # # # # # # # # # ########### ### ### ### ####### # # ### # ####### ### ##### ### ### ##### # # # # # # # # # # # # # # # # # # # ### ##### ##### # ####### # ### ####### ### # ### ####### ### ##### ### # # # # # # # # # # # # # # # # # # # # # # # # # ### ### ### # # # # ### # # # ### # ####### # # ####### # # # # # # ### # # # # # # # # # # # # # # # # # # # # # # # # ### ##### ####### # ##### # ##### ### ### # # # ### ##### ### # ### # # # # # # # # ### # # # # # # # # # # # # # discretized RRT mazes of unusual origin