AMS 345/CSE 355 Computational Geometry Lecture 1: Introduction Joe Mitchell.

Slides:



Advertisements
Similar presentations
In a previous lecture, this dictionary resulted after the first phase 1 pivot: X0 = X1 - 1 X2 + 1 X3 X4 = X1 + 3 X2 + 1 X
Advertisements

Approximations of points and polygonal chains
Advanced Topics in Algorithms and Data Structures Lecture 7.2, page 1 Merging two upper hulls Suppose, UH ( S 2 ) has s points given in an array according.
Motion Planning for Point Robots CS 659 Kris Hauser.
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
Computational Geometry II Brian Chen Rice University Computer Science.
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.
1st Meeting Industrial Geometry Computational Geometry ---- Some Basic Structures 1st IG-Meeting.
5/19/2015CS 2011 CS 201 – Data Structures and Discrete Mathematics I Syllabus Spring 2014.
Visibility Computations: Finding the Shortest Route for Motion Planning COMP Presentation Eric D. Baker Tuesday 1 December 1998.
Computational Geometry Piyush Kumar (Lecture 3: Convexity and Convex hulls) Welcome to CIS5930.
Computational Geometry and Spatial Data Mining
Jan Welcome to the Course of Advanced Algorithm Design (ACS-7101/3)
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Lecture 1 (Part 1) Introduction/Overview Tuesday, 9/4/01.
Introduction to Computational Geometry Computational Geometry, WS 2007/08 Lecture 1 – Part II Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut.
CS 232 Geometric Algorithms: Lecture 1 Shang-Hua Teng Department of Computer Science, Boston University.
Lection 1: Introduction Computational Geometry Prof.Dr.Th.Ottmann 1 History: Proof-based, algorithmic, axiomatic geometry, computational geometry today.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Lecture 1 (Part 1) Introduction/Overview Tuesday, 9/3/02.
CSIS-385: Analysis of Algorithms Dr. Eric Breimer.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Review Lecture Tuesday, 12/10/02.
Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University.
CS 232 Geometric Algorithms: Lecture 1 Shang-Hua Teng Department of Computer Science, Boston University.
UNC Chapel Hill M. C. Lin Overview of Last Lecture About Final Course Project –presentation, demo, write-up More geometric data structures –Binary Space.
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 Analysis of Algorithms Prof. Karen Daniels Fall, 2004 Lecture 1 (Part 1) Introduction/Overview Wednesday, 9/8/04.
1 University of Denver Department of Mathematics Department of Computer Science.
MATH 330: Ordinary Differential Equations Fall 2014.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Spring, 2002 Lecture 1 (Part 1) Introduction/Overview Tuesday, 1/29/02.
1 Single Robot Motion Planning Liang-Jun Zhang COMP Sep 22, 2008.
1 CPT S 223: Advanced Data Structures (section 01) Fall 2010 School of EECS Washington State University, Pullman MWF 10:10-11 Sloan 5.
The Art Gallery Problem
1 What is Computational Geometry Ref: Godfried T. Toussaint.
The Art Gallery Problem
CSE53111 Computational Geometry TOPICS q Preliminaries q Point in a Polygon q Polygon Construction q Convex Hulls Further Reading.
Visibility Graphs and Cell Decomposition By David Johnson.
An Introduction to Computational Geometry Joseph S. B. Mitchell Stony Brook University.
ADA: 14. Intro to CG1 Objective o give a non-technical overview of Computational geometry, concentrating on its main application areas Algorithm.
1 ESI 6417 Linear Programming and Network Optimization Fall 2003 Ravindra K. Ahuja 370 Weil Hall, Dept. of ISE
AMS 345/CSE 355 Computational Geometry
CS 103 Discrete Structures Lecture 01 Introduction to the Course
Computational Geometry The systematic study of algorithms and data structures for geometric objects, with a focus on exact algorithms that are asymptotically.
CST 229 Introduction to Grammars Dr. Sherry Yang Room 213 (503)
Path Planning for a Point Robot
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Spring, 2009 Lecture 1 (Part 1) Introduction/Overview Tuesday, 1/27/09.
Computing Inner and Outer Shape Approximations Joseph S.B. Mitchell Stony Brook University.
Kansas State University Department of Computing and Information Sciences Friday, July 13, 2001 Mantena V. Raju Department of Computing and Information.
Computational Geometry Piyush Kumar (Lecture 1: Introduction) Welcome to CIS5930.
Computational Geometry: Intersection Search Joseph S. B. Mitchell Stony Brook University.
An Introduction to Computational Geometry Joseph S. B. Mitchell Stony Brook University.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Review Lecture Tuesday, 12/11/01.
Principles of Imperative Computation Lecture 1 January 15 th, 2012.
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.
Computational Geometry Piyush Kumar (Lecture 1: Introduction) Welcome to CIS5930.
How do I get there? Roadmap Methods Visibility Graph Voronoid Diagram.
CSCE 121, Sec 200 Fall 2012 Prof. Jennifer L. Welch.
Lecture 1 (Part 1) Introduction/Overview Tuesday, 9/9/08
COMP 283 Discrete Structures
An Introduction to Computational Geometry
Query Processing in Databases Dr. M. Gavrilova
CS 201 – Data Structures and Discrete Mathematics I
CS 201 – Data Structures and Discrete Mathematics I
Computational Geometry (35/33)
Foundations II: Data Structures and Algorithms
AMS 345/CSE 355 Computational Geometry
Triangulation of a polygon
Computational Geometry Algorithms
CS 232 Geometric Algorithms: Lecture 1
Classic Motion Planning Methods
Presentation transcript:

AMS 345/CSE 355 Computational Geometry Lecture 1: Introduction Joe Mitchell

Course Info Joe Mitchell (Math 1-109) Joe Mitchell (Math 1-109) (2-8366) Texts: Texts: Discrete and Computational Geometry by Devadoss and O’RourkeDiscrete and Computational Geometry by Devadoss and O’Rourke Computational Geometry in C, by Joe O’Rourke (2 nd Edition)Computational Geometry in C, by Joe O’Rourke (2 nd Edition) Grades: 40% midterm+40% final+20% hw Grades: 40% midterm+40% final+20% hw Midterm: in class, tentatively Oct 17 Final: 5:30-6:45pm, Mon, Dec 11 Second-chance (optional): 6:45-8:00pm, Dec 11 Optional second-chance midterm: Replaces midterm score with 0.8x high + 0.2x low

Homeworks Approx 8 assignments Approx 8 assignments Tentatively due: 9/19, 9/26, 10/3, 10/10, 10/31, 11/7, 11/14, 11/21 Tentatively due: 9/19, 9/26, 10/3, 10/10, 10/31, 11/7, 11/14, 11/21 Submit HW on time Submit HW on time I drop the lowest hw scoreI drop the lowest hw score Each student is allowed ONE slightly late HW, as long as it is submitted before solutions posted (inform me by )Each student is allowed ONE slightly late HW, as long as it is submitted before solutions posted (inform me by ) HW will be called in, near the beginning of class; you will pass it forward; do not bring it to the front of the class (unless you arrive late and then bring it at the END of class, to minimize disruption) HW will be called in, near the beginning of class; you will pass it forward; do not bring it to the front of the class (unless you arrive late and then bring it at the END of class, to minimize disruption)

HW Policy You may discuss problems with other students in this class, but you must write up your hw completely on your own; if you do work with other student(s), you must declare this on the cover of your own hw, giving names of your collaborators. (Your writings must be independent: Do not look at another writeup, either of classmate or of anything you find on internet when writing your own solution. To do otherwise is a case of Academic Dishonesty and is subject to University policy through CASA You may discuss problems with other students in this class, but you must write up your hw completely on your own; if you do work with other student(s), you must declare this on the cover of your own hw, giving names of your collaborators. (Your writings must be independent: Do not look at another writeup, either of classmate or of anything you find on internet when writing your own solution. To do otherwise is a case of Academic Dishonesty and is subject to University policy through CASA

Teaching Assistants Phil Ammirato Phil Ammirato Office hours (in Harriman 010):Office hours (in Harriman 010): Tues, 4:00-5:00; Thurs, 10:00-11:00 Sixin Li Sixin Li Office hours (in Harriman 010):Office hours (in Harriman 010): Mon, 1:30-3:30

Background Geometry: vectors, dot/cross product Geometry: vectors, dot/cross product AMS301: Counting, graphs, recursion AMS301: Counting, graphs, recursion Permutations, combinationsPermutations, combinations Planar graphs, DFS, EulerPlanar graphs, DFS, Euler F(n) ≤ 2F(n/2) + Cn Solve: F(n)=O(n log n)F(n) ≤ 2F(n/2) + Cn Solve: F(n)=O(n log n) Algorithms: read/parse a C program, big- Oh notation Algorithms: read/parse a C program, big- Oh notation (O(n), O(n log n), O(n 2 ), O(n log n)) (O(n), O(n log n), O(n 2 ), O(n log n))

What is CG? The algorithmic and mathematical study of efficient methods to solve geometric problems The algorithmic and mathematical study of efficient methods to solve geometric problems

Example 1 Point-in-polygon test: Is point q inside simple polygon P? Point-in-polygon test: Is point q inside simple polygon P? P n-gon q Naïve: O(n) per test CG: O(log n) Applet: O’Rourke

Example 2 Segment intersection: Given n line segments in the plane, determine: Segment intersection: Given n line segments in the plane, determine: Does some pair intersect? (DETECT)Does some pair intersect? (DETECT) Compute all points of intersection (REPORT)Compute all points of intersection (REPORT) Naïve: O(n 2 ) CG: O(n log n) detect, O(k+n log n) report Applet:

Example 3 Post office problem: Voronoi diagrams Post office problem: Voronoi diagrams

Example 4 Triangulation of polygons Triangulation of polygons

Ear-Clipping Triangulation Ear-clipping applet Ear-clipping applet

Example 5 Sensor placement, “guarding” Sensor placement, “guarding”

The Problem Determine a small set of guards to see all of a given polygon P 5 guards suffice to cover P (what about 4 guards? 3?)

Vertex Guarding a Simple Polygon Vertex guarding applet Vertex guarding applet Vertex guarding applet Vertex guarding applet 11 yellow vertices 11 blue vertices 16 white vertices Place guards at yellow (or blue) vertices: at most n/3 vertex guards (here, n=38)

Mobile Robotic Guard Visit all visibility polygons Visit all visibility polygons Watchman Route Problem Subject to: stay inside polygonal domain P

Example 6 Shortest path for a mobile robot Shortest path for a mobile robot

Application: Weather Avoidance 18

19 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 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

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

23 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)

Convex Hull of Points Graham scan applet Graham scan applet Graham scan applet Graham scan applet Jarvis march applet Jarvis march applet Jarvis march applet Jarvis march applet

QuickCD: Collision Detection

The 2-Box Cover Problem Find “smallest” (tightest fitting) pair of bounding boxes Motivation:Motivation: Best outer approximation Best outer approximation Bounding volume hierarchies Bounding volume hierarchies

Bounding Volume Hierarchy BV-tree: Level 0 k-dops

BV-tree: Level 1 26-dops 14-dops 6-dops 18-dops

BV-tree: Level 2

BV-tree: Level 5

BV-tree: Level 8

Large Convex Inner Approx “Grow” k-dops from selected seed points: collision detection (QuickCD), response “Grow” k-dops from selected seed points: collision detection (QuickCD), response

Weather Avoidance Algorithms for En Route Aircraft 3 Flows Sector

Find maximum number of air lanes through the mincut Routing MaxFlow