An Introduction to Computational Geometry Joseph S. B. Mitchell Stony Brook University.

Slides:



Advertisements
Similar presentations
CSE 4101/5101 Prof. Andy Mirzaian Computational Geometry.
Advertisements

TEL-AVIV UNIVERSITY FACULTY OF EXACT SCIENCES SCHOOL OF MATHEMATICAL SCIENCES An Algorithm for the Computation of the Metric Average of Two Simple Polygons.
Fall Path Planning from text. Fall Outline Point Robot Translational Robot Rotational Robot.
Approximations of points and polygonal chains
Motion Planning for Point Robots CS 659 Kris Hauser.
Parallel Algorithms in Computational Geometry
Visibility Graph Team 10 NakWon Lee, Dongwoo Kim.
Motion Planning CS 6160, Spring 2010 By Gene Peterson 5/4/2010.
Visibility Graphs May Shmuel Wimer Bar-Ilan Univ., Eng. Faculty Technion, EE Faculty.
C o m p u t i n g C O N V E X H U L L S by Kok Lim Low 10 Nov 1998 COMP Presentation.
Convex Hulls in 3-space Jason C. Yang.
1st Meeting Industrial Geometry Computational Geometry ---- Some Basic Structures 1st IG-Meeting.
Visibility Computations: Finding the Shortest Route for Motion Planning COMP Presentation Eric D. Baker Tuesday 1 December 1998.
Computational Geometry -- Voronoi Diagram
17. Computational Geometry Chapter 7 Voronoi Diagrams.
Computational Geometry and Spatial Data Mining
1 Lecture 8: Voronoi Diagram Computational Geometry Prof. Dr. Th. Ottmann Voronoi Diagrams Definition Characteristics Size and Storage Construction Use.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2001 Lecture 4 Chapter 6: Arrangements Monday,
TU/e computational geometry introduction Mark de Berg.
Area 1: Algorithms Dan Halperin, School of Computer Science, Tel Aviv University.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2010 O’Rourke Chapter 8 Motion Planning.
CS 326A: Motion Planning Criticality-Based Motion Planning: Target Finding.
Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University.
Lecture 8 : Arrangements and Duality Computational Geometry Prof. Dr. Th. Ottmann 1 Duality and Arrangements Duality between lines and points Computing.
UNC Chapel Hill M. C. Lin Overview of Last Lecture About Final Course Project –presentation, demo, write-up More geometric data structures –Binary Space.
Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 O’Rourke Chapter 8 Motion Planning.
CS 326A: Motion Planning Basic Motion Planning for a Point Robot.
Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 4: 3D Convex Hulls Monday, 2/23/04.
1 University of Denver Department of Mathematics Department of Computer Science.
1 Single Robot Motion Planning Liang-Jun Zhang COMP Sep 22, 2008.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 O’Rourke Chapter 8 Motion Planning.
Robot Motion Planning Computational Geometry Lecture by Stephen A. Ehmann.
Stony Brook University
Visibility Graphs and Cell Decomposition By David Johnson.
4/21/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Motion Planning Carola Wenk.
ADA: 14. Intro to CG1 Objective o give a non-technical overview of Computational geometry, concentrating on its main application areas Algorithm.
Line Arrangement Chapter 6. Line Arrangement Problem: Given a set L of n lines in the plane, compute their arrangement which is a planar subdivision.
AMS 345/CSE 355 Computational Geometry Lecture 1: Introduction Joe Mitchell.
Computational Geometry Piyush Kumar (Lecture 10: Robot Motion Planning) Welcome to CIS5930.
C o m p u t i n g C O N V E X H U L L S. Presentation Outline 2D Convex Hulls –Definitions and Properties –Approaches: Brute Force Gift Wrapping QuickHull.
Path Planning for a Point Robot
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 8 Arrangements and Duality.
An Introduction to Computational Geometry Joseph S. B. Mitchell Stony Brook University.
TEL-AVIV UNIVERSITY RAYMOND AND BEVERLY SACKLER FACULTY OF EXACT SCIENCES SCHOOL OF MATHEMATICAL SCIENCES An Algorithm for the Computation of the Metric.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 8 Arrangements and Duality.
Arrangements and Duality Sanjay Sthapit Comp290 10/6/98.
UNC Chapel Hill M. C. Lin Introduction to Motion Planning Applications Overview of the Problem Basics – Planning for Point Robot –Visibility Graphs –Roadmap.
Institute of Information Science Academia Sinica 1 1 Introduction to Geomtric Computing D. T. Lee Institute of Information Science Academia Sinica October.
Arrangements and Duality Motivation: Ray-Tracing Fall 2001, Lecture 9 Presented by Darius Jazayeri 10/4/01.
Computational Geometry The systematic study of algorithms and data structures for geometric objects, with a focus on exact algorithms that are asymptotically.
An Introduction to Computational Geometry Joseph S. B. Mitchell Stony Brook University.
Computational Geometry 2D Convex Hulls
June, 2010 ICRAT Budapest, Hungary June, 2010 Presented by: Valentin Polishchuk, Ph.D. Throughput/Complexity Tradeoffs for Routing Traffic in the Presence.
Lecture 15 Computational Geometry Geometry sweeping Geometric preliminaries Some basics geometry algorithms.
Arrangements and Duality Supersampling in Ray Tracing.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2010 O’Rourke Chapter 6 with some material.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 9 Line Arrangements.
An Introduction to Computational Geometry: Arrangements and Duality Joseph S. B. Mitchell Stony Brook University Some images from [O’Rourke, Computational.
Honors Track: Competitive Programming & Problem Solving Seminar Topics Kevin Verbeek.
4/9/13CMPS 3120 Computational Geometry1 CMPS 3120: Computational Geometry Spring 2013 Motion Planning Carola Wenk.
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
Computational Geometry Piyush Kumar (Lecture 1: Introduction) Welcome to CIS5930.
An Introduction to Computational Geometry
VORONOI DIAGRAMS FOR PARALLEL HALFLINES IN 3D
Computing Shortest Path amid Pseudodisks
Advanced Data Structures & AlgoRithm
Computational Geometry
Planning.
Presentation transcript:

An Introduction to Computational Geometry Joseph S. B. Mitchell Stony Brook University

Mini-Course Info Joe Mitchell (Math 1-109) Joe Mitchell (Math 1-109) ( ) Recommended Texts: Recommended Texts: Computational Geometry, by Mark de Berg, Marc van Kreveld, Mark Overmars and Otfried Schwartzkopf (2 nd edition)Computational Geometry, by Mark de Berg, Marc van Kreveld, Mark Overmars and Otfried Schwartzkopf (2 nd edition) Computational Geometry in C, by Joe O’Rourke (2 nd Edition)Computational Geometry in C, by Joe O’Rourke (2 nd Edition) Surveys/Reference books: Surveys/Reference books: CRC Handbook of Discrete and Computational Geometry, editted by Goodman and O’Rourke (2 nd edition)CRC Handbook of Discrete and Computational Geometry, editted by Goodman and O’Rourke (2 nd edition) Handbook of Computational Geometry, editted by Sack and UrrutiaHandbook of Computational Geometry, editted by Sack and Urrutia

Sessions and Topics Session 1: Session 1: IntroductionIntroduction Convex Hulls in 2D, 3DConvex Hulls in 2D, 3D A variety of algorithmsA variety of algorithms Session 2: Session 2: Searching for intersections: Plane sweepSearching for intersections: Plane sweep Halfspace intersections, low-dimensional linear programming (LP)Halfspace intersections, low-dimensional linear programming (LP) Range SearchRange Search 3

Sessions and Topics Session 3: Session 3: TriangulationTriangulation Proximity: Voronoi/Delaunay diagramsProximity: Voronoi/Delaunay diagrams Point location searchPoint location search Session 4: Session 4: ArrangementsArrangements Duality and applicationsDuality and applications Visibility graphs, shortest pathsVisibility graphs, shortest paths 4

Sessions and Topics Session 5: Session 5: Spatial partitioning, optimization, load balancingSpatial partitioning, optimization, load balancing Binary Space PartitionsBinary Space Partitions Clustering trajectoriesClustering trajectories Session 6: Session 6: GeoSect: Overview and algorithmsGeoSect: Overview and algorithms 3D partitioning3D partitioning Flow-respecting partitioningFlow-respecting partitioning 5

Arrangements Given a set S of n lines in the plane Given a set S of n lines in the plane Arrangement, A(S), is the S-induced decomposition of the plane into cells (2- faces), edges (1-faces), and vertices (0-faces) Arrangement, A(S), is the S-induced decomposition of the plane into cells (2- faces), edges (1-faces), and vertices (0-faces) 6 L Zone(L)

Constructing A(S) Goal: Build a DCEL of the planar graph of vertices/edges of A(S) Goal: Build a DCEL of the planar graph of vertices/edges of A(S) Complexity: O(n 2 ) faces, edges, vertices Complexity: O(n 2 ) faces, edges, vertices Incremental construction: Incremental construction: Zone Theorem: The zone, Z(L), of line L has total complexity O(n)Zone Theorem: The zone, Z(L), of line L has total complexity O(n) Proof: InductionProof: Induction Add lines one by one; cost of adding line L i is O(i ), so total time is O(n 2 ) Add lines one by one; cost of adding line L i is O(i ), so total time is O(n 2 ) 7

More Arrangements Huge subfield: Combinatorics/algorithms Huge subfield: Combinatorics/algorithms Arrangements of Arrangements of Segments (Bentley-Ottmann sweep)Segments (Bentley-Ottmann sweep) CirclesCircles CurvesCurves Higher dimensions: SurfacesHigher dimensions: Surfaces Applications: Motion planning, optimization, Voronoi diagrams, pattern matching, fundamental to many algorithms Applications: Motion planning, optimization, Voronoi diagrams, pattern matching, fundamental to many algorithms Further motivation: Point-line duality Further motivation: Point-line duality 8

Duality Point p=(p x,p y ) and line L: y=mx+b in the “primal”  Line p*: y=p x x-p y and point L*=(m,-b) Point p=(p x,p y ) and line L: y=mx+b in the “primal”  Line p*: y=p x x-p y and point L*=(m,-b) 9 p q L r L* Key Property: p is above/on/below L iff L* is above/on/below p* q* P* r*

Duality A really nice demo (MIT) A really nice demo (MIT) Applet Applet Applet Another nice (simple) demo (Andrea) Another nice (simple) demo (Andrea) Applet Applet Applet 10

Applications of Duality Degeneracy testing: Any 3 collinear points? Degeneracy testing: Any 3 collinear points? Stabbing line segments Stabbing line segments Min-area triangle Min-area triangle Halfplane range search Halfplane range search Ham sandwich cuts Ham sandwich cuts Computing discrepancy Computing discrepancy Sorting points around each other point: visibility graphs Sorting points around each other point: visibility graphs 11

12 Geometric Shortest Paths Given: Given: (Outer) Polygon P(Outer) Polygon P Polygonal obstaclesPolygonal obstacles Points s and tPoints s and t Find: Find: shortest s-t pathshortest s-t path avoiding obstaclesavoiding obstacles Robotics motion planning Robotics motion planning

Application: Weather Avoidance 13

14 Basic Optimal Paths Visibility Graph BEST: Output-sensitive alg: O(|E|+n log n) Local optimality: taut string Naïve algorithm: O(n 3 ) Better algorithms: O(n 2 log n) sweep O(n 2 ) duality

Visibility Graphs Visibility Graph appletapplet Shows also the topological sweep of an arrangement, animated.

Example: Shortest Path in Simple Polygon Triangulate P Triangulate P Determine the “sleeve” defined by the triangles in a path in the dual tree, from start to goal Determine the “sleeve” defined by the triangles in a path in the dual tree, from start to goal WUSTL applet WUSTL appletapplet

Other Applets Rectilinear watchman, online appletapplet STIP online applet : search for a target in polygonapplet

18 Shortest Path Map Decomposition of the free space Shortest Paths go through same vertices same vertices Construct in time: O(n log n); size O(n)

19 Avoiding Hazardous Weather

20 Optimal Path Map: Control Law Fix s Vary t

21 Hazardous Weather Avoidance

22 Hazardous Weather Avoidance

23 Optimal Paths: Weighted Regions Different costs/nmi in different regions (e.g. weather intensity) Local optimality: Snell’s Law of Refraction Can also apply grid- based searching

24 Grid-Based Searches

25 Other Optimal Path Problems 3D shortest paths: NP-hard 3D shortest paths: NP-hard But good approximationsBut good approximations Turn constraints: Turn constraints: Min-# turns: Link distanceMin-# turns: Link distance Bounds on turn angles (radius of curvature)Bounds on turn angles (radius of curvature) “Thick” paths (for air lanes) “Thick” paths (for air lanes)

26 Turn-Constrained Weighted Costs: Weather Route Generator (WRG) DFW fix Departure space

Weather Avoidance Algorithms for En Route Aircraft 3 Flows Sector

Find maximum number of air lanes through the mincut Routing MaxFlow

Example: Robot Motion Planning applet Shows Minkowski sum, visibility graph, shortest path for a disk, triangle, etc.

Example: Robot Motion Planning applet Voronoi method of robot motion planning

Probabilistic Road Maps MovieMovie (Stanford)