Computational Geometry, WS 2007/08 Lecture 17 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für Angewandte Wissenschaften.

Slides:



Advertisements
Similar presentations
Order-k Voronoi Diagram in the Plane
Advertisements

Linear Programming Computational Geometry, WS 2006/07 Lecture 5, Part I Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
Parallel List Ranking Advanced Algorithms & Data Structures Lecture Theme 17 Prof. Dr. Th. Ottmann Summer Semester 2006.
Reactive and Potential Field Planners
1 SOFSEM 2007 Weighted Nearest Neighbor Algorithms for the Graph Exploration Problem on Cycles Eiji Miyano Kyushu Institute of Technology, Japan Joint.
Line Segment Intersection Computational Geometry, WS 2007/08 Lecture 3 – Supplementary Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut.
Introduction to Computational Geometry Computational Geometry, WS 2007/08 Lecture 1 – Part I Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut.
Sensor Based Planners Bug algorithms.
Congestion Games with Player- Specific Payoff Functions Igal Milchtaich, Department of Mathematics, The Hebrew University of Jerusalem, 1993 Presentation.
April Bug Algorithms Shmuel Wimer Bar Ilan Univ., School of Engineering.
CPSC 322, Lecture 5Slide 1 Uninformed Search Computer Science cpsc322, Lecture 5 (Textbook Chpt 3.4) January, 14, 2009.
The Angel Wins!! SASMS, Nov 13, 2006 David Rhee. 1. Conway’s Angel Problem An angel of power p and a devil plays a game on a infinitely big chessboard.
Convex Hulls Computational Geometry, WS 2007/08 Lecture 2 – Supplementary Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
A Randomized Gathering Algorithm for Multiple Robots with Limited Sensing Capabilities Noam Gordon Israel A. Wagner Alfred M. Bruckstein Technion – Israel.
Convex Hulls Computational Geometry, WS 2006/07 Lecture 2 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für.
Klee’s Measure Problem Computational Geometry, WS 2007/08 Group Work Prof. Dr. Thomas Ottmann Khaireel A. Mohamed Algorithmen & Datenstrukturen, Institut.
Linear Programming Computational Geometry, WS 2006/07 Lecture 5, Part IV Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
Orthogonal Range Searching Computational Geometry, WS 2006/07 Lecture 13 – Part II Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für.
Delaunay Triangulation Computational Geometry, WS 2006/07 Lecture 11 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Line Segment Intersection Computational Geometry, WS 2007/08 Lecture 3 – Part I Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
The Lower Envelope: The Pointwise Minimum of a Set of Functions Computational Geometry, WS 2006/07 Lecture 4 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen,
Special Cases of the Hidden Line Elimination Problem Computational Geometry, WS 2007/08 Lecture 16 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen,
Voronoi Diagrams Computational Geometry, WS 2006/07 Lecture 10 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Duality and Arrangements Computational Geometry, WS 2007/08 Lecture 6 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Introduction to Computational Geometry Computational Geometry, WS 2007/08 Lecture 1 – Part II Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut.
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)
Orthogonal Range Searching Computational Geometry, WS 2006/07 Lecture 13 – Part III Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für.
Persistent Data Structures Computational Geometry, WS 2007/08 Lecture 12 Prof. Dr. Thomas Ottmann Khaireel A. Mohamed Algorithmen & Datenstrukturen, Institut.
Linear Programming Computational Geometry, WS 2007/08 Lecture 7 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
1 Introduction to Computability Theory Lecture4: Non Regular Languages Prof. Amos Israeli.
Geometric Data Structures Computational Geometry, WS 2007/08 Lecture 13 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
Hidden-Line Elimination Computational Geometry, WS 2006/07 Lecture 14 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Linear Programming Computational Geometry, WS 2007/08 Lecture 7, Part II Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
Point Location Computational Geometry, WS 2007/08 Lecture 5 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für.
Optimization Methods One-Dimensional Unconstrained Optimization
Closest Pair of Points Computational Geometry, WS 2006/07 Lecture 9, Part II Prof. Dr. Thomas Ottmann Khaireel A. Mohamed Algorithmen & Datenstrukturen,
The k-server Problem Study Group: Randomized Algorithm Presented by Ray Lam August 16, 2003.
Polygon Triangulation Computational Geometry, WS 2007/08 Lecture 9 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Christian Schindelhauer Search Algorithms Winter Semester 2004/ Jan.
Linear Programming Computational Geometry, WS 2006/07 Lecture 5, Part III Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
Robot Motion Planning Bug 2 Probabilistic Roadmaps Bug 2 Probabilistic Roadmaps.
Orthogonal Range Searching Computational Geometry, WS 2006/07 Lecture 13 - Part I Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für.
Polygon Triangulation Computational Geometry, WS 2006/07 Lecture 8, Part 2 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
Linear Programming Computational Geometry, WS 2006/07 Lecture 5, Part II Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
Line Segment Intersection Computational Geometry, WS 2006/07 Lecture 3 – Part II Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
Solving problems by searching
Art Gallery Theorem Computational Geometry, WS 2006/07 Lecture 8, Part 1 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
Duality and Arrangements Computational Geometry, WS 2006/07 Lecture 7 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Line Segment Intersection Computational Geometry, WS 2006/07 Lecture 3 – Part I Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
Optimization Methods One-Dimensional Unconstrained Optimization
Induction and recursion
Comment reconstruire le graphe de visibilité d’un polygone? (Reconstructing visibility graphs of polygons) Jérémie Chalopin, Shantanu Das LIF, Aix-Marseille.
1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Christian Schindelhauer Search Algorithms Winter Semester 2004/ Jan.
Approximation algorithms for TSP with neighborhoods in the plane R 郭秉鈞 R 林傳健.
Line Segment Intersection Computational Geometry, WS 2006/07 Lecture 3 – Part III Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für.
Navigation & Motion Planning Cell Decomposition Skeletonization Bounded Error Planning (Fine-motion Planning) Landmark-based Planning Online Algorithms.
1 Energy-Efficient Mobile Robot Exploration Yongguo Mei, Yung-Hsiang Lu Purdue University ICRA06.
The bin packing problem. For n objects with sizes s 1, …, s n where 0 < s i ≤1, find the smallest number of bins with capacity one, such that n objects.
A* optimality proof, cycle checking CPSC 322 – Search 5 Textbook § 3.6 and January 21, 2011 Taught by Mike Chiang.
CPSC 322, Lecture 5Slide 1 Uninformed Search Computer Science cpsc322, Lecture 5 (Textbook Chpt 3.5) Sept, 13, 2013.
Chapter 3 Solving problems by searching. Search We will consider the problem of designing goal-based agents in observable, deterministic, discrete, known.
PROBABILITY AND COMPUTING RANDOMIZED ALGORITHMS AND PROBABILISTIC ANALYSIS CHAPTER 1 IWAMA and ITO Lab. M1 Sakaidani Hikaru 1.
ECE 448 Lecture 4: Search Intro
Day 29 Bug Algorithms 12/7/2018.
Day 29 Bug Algorithms 12/8/2018.
Trevor Brown DC 2338, Office hour M3-4pm
Compact routing schemes with improved stretch
Advanced Algorithms Analysis and Design
Motion Planning for a Point Robot (1/2)
Presentation transcript:

Computational Geometry, WS 2007/08 Lecture 17 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für Angewandte Wissenschaften Albert-Ludwigs-Universität Freiburg Competitive Algorithms

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann2 Motion planning How to escape from a maze Finding a target in an unknown environment Competitive strategies –Example: Online-Bin-Packing –Example: Searching a hole in a wall

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann3 Searching an unknown polygonal maze Given: A point-shaped robot with touch sensor and angle counter which is able to move straight forward and follow a wall. A maze (set of polygons). Task: Leave the maze (Find a way out of the maze, if there is one!)

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann4 First approach: Always along the wall Choose an arbitrary direction ω; repeat move in direction ω until robot hits a wall; repeat follow the wall until robot is outside the maze Assumption (w.l.o.g.): Whenever the robot hits a wall it turns right and follows along the wall in such a way that the wall is always to its left.

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann5 A positive example

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann6 A negative example

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann7 Second approach Choose an arbitrary direction ω; set angle-counter = 0; repeat move in direction ω until robot hits a wall; repeat follow the wall and adapt angel-counter until angel-counter == 0 (mod 2π) until robot is outside the maze Changing angel-counter values: left-turn: positiv right-turn: negativ

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann8 Example 1

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann9 Example 2

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann10 Third approach: The Pledge Algorithm set angle-counter ω = 0; repeat move in direction ω in the free space until robot hits a wall; repeat follow the wall in counter-clockwise direction; count the overall turning angle in ω until angel-counter ω == 0; until robot is outside the maze Angel-counter values: left-turn: positiv right-turn: negativ

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann11 Correctness of the Pledge Algorithmus Theorem: The Pledge algorithmus finds a way out of in any maze from an arbitrary start position inside the maze, if there is a path out of the maze. Lemma 1: The angel-counter ω never becomes positive Proof 1: Initially, ω = 0; if the robot hits a wall, ω becomes (more) negativ; whenever ω = 0, the robot leaves the wall and moves straight to the next wall.

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann12 Correctness proof Claim: If the robot does not find a way out of the maze, there is no such path! Lemma 2: Assume that the robot does not find a way out of the maze. Then the pursued path consists of a finite initial part and a closed, infinitely often cyclically pursued tail. Let P be the infinitely often pursued path of the robot during its (unsuccessful) attempt to escape from the maze. Lemma 3: P cannot cross itself.

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann13 Correctness proof

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann14 Proof of the Theorem: Case 1: Robot walks along P in counter-clockwise direction. (Impossible, since angel never becomes positive.) Case 2: Robot walks along P in clockwise direction. Correctness proof

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann15 Task: Find a target in an unknown environment! Enhance the abilities of the robot: The robot always knows the global coordinates of its position The robot knows the global coordinates of the target point. Strategy Bug: The robot walks into the direction of the target untol he hits an obstacle. The he surrounds the obstaxcle once and percives the point on the boundary of the obstacle which is closest to the target. He returns to this point after completion of the surrounding and continues his way following the same strategy. Finding a target in an unknown environment

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann16 repeat walk into the direction of the target until obstacle-hit; A = currentPosition; (*on obstacle*) D = currentPosition; (*closest point in target direction on the boundary of the obstacle found so far*) repeat advance currentPosition along the obstacle; if currentPosition is closer to the target than D then D = currentPosition until currentPosition = A; Follow the shortest path along the obstacle to D until target-reached Strategy Bug

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann17 Example

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann18 Animations See the of Rolf Klein and his group, University of Bonn:

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann19 Properties of the strategie Bug The strategy always finds a path from a starting point s to a target point t if there is such a path. (See the proof in R. Klein´s book) The path obtained by the strategy bug can be árbitrarily longer than the shortest path from s to t.

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann20 Competitive strategies: Bin-Packing example Task: Given a sequence o 1, o 2, … of objects, all of size ≤ 1. Put all objects into bins of size 1 in such a way that the number of used bins is minimized. Next-fit-Strategy: Put the next object into the same bin as the previous one, if there is room enough; otherwise open a new bin. Next-fit-Strategie utilizes at most twice as many bins as would be necessary for´an optimal packing.

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann21 Definition of competitiveness Let  be a problem and S a strategy solving correctly any problem P in  with an amount  K S (P) of costs. Strategy S is called competitive with factor C, if there is a constant A such that for any sample P   the following holds: K S (P) ≤ C K opt (P) + A, where K opt (P) = costs of an optimal solution Next-fit is competitive with factor 2.

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann22 Given a robot with a contact sensor s.t. it can walk along a wall. Task: Find a hole in the wall that exists in an unknown direction and distance from a given start point of the robot. 1. Approach: Iteratively change the walking direction and increase the length of the covered distance incrementally by 1. Searching a hole in a wall

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann23 Doubling strategy 2. approach: Double the covered distance after each change of directions.

Computational Geometry, WS 2007/08 Prof. Dr. Thomas Ottmann24 Theorem 1: The doubling strategy is competitive with a factor 9. Theorem 2: Every competitive strategy for finding a point on a line must have a competitive factor of at least ≥ 9. The principle of exponentially increasing the search depth can be extendet to other and more than two search spaces. Theorem 3: This searching strategy for m halfsrays is competitive with factor (2  m m / (m -1) m-1 ) + 1 ≤ 2em +1 Here e = 2.718… is the Eulersche number. Properties of the doubling strategy