Planar Convex Hull 2013 / 5 / 9 Group 4 Sungheon Park Jeongho Son CS504 Presentation [CS504 Presentation]

Slides:



Advertisements
Similar presentations
Why Graham-Scan Needs to Sort Vertices Before Scanning
Advertisements

Computational Geometry - Part II Mohammed Nadeem Ahmed Raghavendra Kyatham.
2/9/06CS 3343 Analysis of Algorithms1 Convex Hull  Given a set of pins on a pinboard  And a rubber band around them  How does the rubber band look when.
Chan’s Algorithm It is Jarvis’s march applied to big blobs of points.
Jarvis March Graham Scan Chan’s Algorithm
Chan’s algorithm CS504 Presentation.
1/13/15CMPS 3130/6130: Computational Geometry1 CMPS 3130/6130: Computational Geometry Spring 2015 Convex Hulls Carola Wenk.
algorithms and data structures
CS16: Introduction to Data Structures & Algorithms
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.
The Divide-and-Conquer Strategy
Convex Hulls in Two Dimensions Definitions Basic algorithms Gift Wrapping (algorithm of Jarvis ) Graham scan Divide and conquer Convex Hull for line intersections.
CS4413 Divide-and-Conquer
The Divide-and-Conquer Strategy
Convex Hulls May Shmuel Wimer Bar Ilan Univ., Eng. Faculty Technion, EE Faculty.
Advanced Topics in Algorithms and Data Structures Lecture 7.1, page 1 An overview of lecture 7 An optimal parallel algorithm for the 2D convex hull problem,
Convex Sets & Concave Sets A planar region R is called convex if and only if for any pair of points p, q in R, the line segment pq lies completely in R.
Andrew's Monotone Chain Convex Hull Algorithm. Andrew's Monotone Chain Scan A left-to-right variant of Graham's scan Discovered by Andrew in 1979 Using.
1 Convex Hull in Two Dimensions Jyun-Ming Chen Refs: deBerg et al. (Chap. 1) O’Rourke (Chap. 3)
Computational Geometry
Design and Analysis of Algorithms – Chapter 51 Divide and Conquer (III)* Dr. Ying Lu RAIK 283: Data Structures & Algorithms *slides referred.
Convex Hull Problem Presented By Erion Lin. Outline Convex Hull Problem Voronoi Diagram Fermat Point.
Polygons and the convex hull Prof. Noah Snavely CS1114
Advanced Algorithm Design and Analysis (Lecture 10) SW5 fall 2004 Simonas Šaltenis E1-215b
Computational Geometry for the Tablet PC
Informal Definition : Let S is set of nails sticking out from a board. the convex hull can be visualized as the shape formed by a tight rubber band that.
1 Today’s Material Computational Geometry Problems –Closest Pair Problem –Convex Hull Jarvis’s March, Graham’s scan –Farthest Point Problem.
5/17/2015 1:32 AMConvex Hull1 obstacle start end.
What does that mean? To get the taste we will just look only at some sample problems... [Adapted from S.Suri]
ADA: 16. CG Topics1 Objective o an examination of four important CG topics o just a taster of a very large research area Algorithm Design and Analysis.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 Lecture 3 Chapter 3: 2D Convex Hulls Friday,
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 Chapter 4: 3D Convex Hulls Friday, 2/9/07.
Computational Geometry Overview from Cormen, et al. Chapter 33
5 - 1 § 5 The Divide-and-Conquer Strategy e.g. find the maximum of a set S of n numbers.
Convex Hull Computation ● Applications of Convex Hull Computation ● Definitions ● Basic Math Functions ● Algorithms Algorithm Speed Discovered By Brute.
Convex Hull ● Jarvis' March O(hn) – Find lowest point O(n) – Repeatedly Find next least-counterclockwise point O(hn) ● Grahm's Scan O(n log n) – Find lowest.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 4: 3D Convex Hulls Monday, 2/23/04.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2001 Lecture 2 Chapter 2: Polygon Partitioning.
Advanced Algorithm Design and Analysis (Lecture 9) SW5 fall 2004 Simonas Šaltenis E1-215b
CSE53111 Computational Geometry TOPICS q Preliminaries q Point in a Polygon q Polygon Construction q Convex Hulls Further Reading.
Convex Hull. What is the Convex Hull? Imagine a set of points on a board with a nail hammered into each point. Now stretch a rubber band over all the.
MA/CSSE 473 Day 17 Divide-and-conquer Convex Hull Strassen's Algorithm: Matrix Multiplication.
Computational Geometry (35/33) Line Segments and cross-product Segment intersection and Sweep Line Convex Hull and Graham’s Scan, Jarvis’s march Divide-and-Conquer.
5 -1 Chapter 5 The Divide-and-Conquer Strategy A simple example finding the maximum of a set S of n numbers.
Computational Geometry Course Summary (First Half) Spring 2008 Pay special attention to: algorithm details (able to explain correctness and carry out a.
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.
Computational Geometry 2D Convex Hulls Joseph S. B. Mitchell Stony Brook University Chapter 2: Devadoss-O’Rourke.
Fundamental Data Structures and Algorithms Klaus Sutner April 27, 2004 Computational Geometry.
Fundamental Data Structures and Algorithms Margaret Reid-Miller 27 April 2004 Computational Geometry.
Convex Hull. University of Manchester biologists used lasers to measure the minimum amount of skin required to wrap around the skeletons of modern-day.
Kansas State University Department of Computing and Information Sciences Friday, July 13, 2001 Mantena V. Raju Department of Computing and Information.
Course Review Fundamental Structures of Computer Science Margaret Reid-Miller 29 April 2004.
Computational Geometry 2D Convex Hulls
COMPUTATIONAL GEOMETRY AND MATRIX MULTIPLICATION Mohammed Zeeshan Farooqui Minhaj Uddin.
Convex Hull 2012/10/23. Convex vs. Concave A polygon P is convex if for every pair of points x and y in P, the line xy is also in P; otherwise, it is.
Robert Pless, CS 546: Computational Geometry Lecture #3 Last time Several convex hull algorithms. Lower bound of O(n log n) –O(n log h) for output sensitive.
Convex hulls in 3D Maciej Kot. Finding convex hull Given a set of points, find a convex hull that contains all of them and is minimal.
Convex Hulls Guo Qi, Chen Zhenghai, Wang Guanhua, Shen Shiqi, Himeshi De Silva.
Andrew's Monotone Chain Convex Hull Algorithm
Convex Hull R.L. Graham’s Algorithm Computer Graphics.
Convex Hull.
Convex Hull obstacle start end 11/21/2018 4:05 AM Convex Hull
Convex Sets & Concave Sets
Convex Hull 1/1/ :28 AM Convex Hull obstacle start end.
CHAPTER 33 Computational Geometry
CMPS 3130/6130: Computational Geometry Spring 2017
Convex Hulls Given a set of points (x1,y1),(x2,y2),…,(xn,yn), the convex hull is the smallest convex polygon containing all the points.
CMPS 3120: Computational Geometry Spring 2013
Convex Hull obstacle start end 4/30/2019 5:21 PM Convex Hull
Convex Hull - most ubiquitous structure in computational geometry
Presentation transcript:

Planar Convex Hull 2013 / 5 / 9 Group 4 Sungheon Park Jeongho Son CS504 Presentation [CS504 Presentation]

Contents CS504 Presentation Definition of convex hull Bruteforce algorithm Graham’s scan Divide and conquer Quickhull Jarvis’ method

What is convex hull? CS504 Presentation Let S be a set of points in the plane. Intuition: Imagine the points of S as being pegs; the convex hull of S is the shape of a rubber-band stretched around the pegs.

What is convex hull? CS504 Presentation

Applications of convex hull CS504 Presentation computer visualization, ray tracing path finding Geographical Information Systems (GIS) Visual pattern matching

Orientation test CS504 Presentation

Graham’s Scan CS504 Presentation

Graham’s Scan CS504 Presentation

Graham’s Scan CS504 Presentation

Original Graham’s scan CS504 Presentation Initially, points are sorted in increasing angular value If the point is not convex (concave), it removes the current point from the perimeter list

Divide-and-Conquer CS504 Presentation

Divide-and-Conquer CS504 Presentation

Quickhull CS504 Presentation

Quickhull CS504 Presentation

Quickhull CS504 Presentation

Jarvis’s March CS504 Presentation Build the hull using “gift wrapping” process

Jarvis’s March CS504 Presentation

Jarvis’s March CS504 Presentation

Applet CS504 Presentation Java applet – hull.htmlhttp:// hull.html – pr09/cos226/demo/ah/JarvisMarch.htmlhttp:// pr09/cos226/demo/ah/JarvisMarch.html

CS504 Presentation Chan’s algorithm Jeongho Son

Planar Convex Hull CS504 Presentation

Chan’s Algorithm CS504 Presentation

Chan’s Algorithm CS504 Presentation

Chan’s Algorithm CS504 Presentation Stage 1 n = 32 Set m = 8

Chan’s Algorithm CS504 Presentation Stage 1 n = 32 Set m = 8 r = 4

Chan’s Algorithm CS504 Presentation

Chan’s Algorithm CS504 Presentation Stage 2 (After Stage 1) m = 8 r = 4

Chan’s Algorithm CS504 Presentation Stage 2 Using Graham’s Scan

Chan’s Algorithm CS504 Presentation Stage3 : Jarvis’s March How to merge these r hulls into a single hull? IDEA : treat each hull as a “fat point” and run Jarvis’s March! # of iteration is at most m –to guarantee the time complexity O(nlogh)

Chan’s Algorithm CS504 Presentation (-inf,0) -> lowest pt lowest pt

Chan’s Algorithm CS504 Presentation Find the point that maximize the angle in each hull lowest pt 1

Chan’s Algorithm CS504 Presentation Find the point that maximize the angle in each hull lowest pt 1 2

Chan’s Algorithm CS504 Presentation Find the point that maximize the angle in each hull lowest pt 1 2 3

Chan’s Algorithm CS504 Presentation

Chan’s Algorithm CS504 Presentation FAIL EXAMPLE – too small value m m = 4 4 iteration

Chan’s Algorithm CS504 Presentation In 4(a), how to find such points?

Chan’s Algorithm CS504 Presentation Find the point that maximize the angle in each hull lowest pt 1

Chan’s Algorithm CS504 Presentation Find the point that maximize the angle in a hull

Chan’s Algorithm CS504 Presentation

Chan’s Algorithm CS504 Presentation

Chan’s Algorithm CS504 Presentation

Chan’s Algorithm CS504 Presentation

Chan’s Algorithm CS504 Presentation

Chan’s Algorithm CS504 Presentation

Lower bound for convex hull CS504 Presentation n points in the x-axis

Lower bound for convex hull CS504 Presentation lifting up to 2D plane

Lower bound for convex hull CS504 Presentation lower convex hull

Quiz CS504 Presentation

Quiz CS504 Presentation

Summary CS504 Presentation Finding the convex hull of a set of points is an important problem that is often part of a larger problem Many different algorithms –Graham’s Scan –Quickhull –Divide-and-Conquer –Jarvis’s March –Chan’s algorithm

Q&A CS504 Presentation Any question?