Motion Planning. O Rourke, Chapter 8

Size: px
Start display at page:

Download "Motion Planning. O Rourke, Chapter 8"

Transcription

1 O Rourke, Chapter 8

2 Outline Translating a polygon Moving a ladder

3 Shortest Path (Point-to-Point) Goal: Given disjoint polygons in the plane, and given positions s and t, find the shortest path from s to t that avoids the polygons. t s

4 Any Path (Shape-to-Point) Goal: Given disjoint polygons in the plane, and given a shape S and a position t, determine if there is any path taking S to t avoiding the polygons. t S

5 Any Path (Shape-to-Point) Goal: Given disjoint polygons in the plane, and given a shape S and a position t, determine if there is any path taking S to t avoiding the polygons. Approach: Dilate the polygons by S t to transform this into a point-to-point problem. If s can reach t while avoiding the dilated polygons, S can reach t. s

6 Any Path (Shape-to-Point) Goal: Given Note disjoint that polygons in this case: in the plane, and given a shape SSand is symmetric. a position t, determine if there is any path taking s is Sthe to center t avoiding of S. the polygons. Approach: The traced out boundary self-intersects. Dilate the polygons by S t to transform this into a point-to-point problem. If s can reach t while avoiding the dilated polygons, S can reach t. s

7 Minkowski Sums Definition: Given two point-sets in the plane, A and B, the Minkowski Sum is the set of points: A B = {a + b a A and b B} Note: The sum depends on the choice of origin. A B B

8 Minkowski Sums Definition: Given a point-set A in the plane, its negation is the set of points: A = { a a A} A A

9 Claim: Given shapes A and B, the translation of A by τ intersects B if and only if τ B ( A). A B

10 Claim: Given shapes A and B, the translation of A by τ intersects B if and only if τ B ( A). A B

11 Claim: Given shapes A and B, the translation of A by τ intersects B if and only if τ B ( A). Proof: The translation of A by τ intersects B. a A, b B such that a + τ = b. a A, b B such that τ = b a. τ B ( A).

12

13 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) A A B

14 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b

15 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b a b + 1

16 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b b + 1 a

17 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b + 2 a b + 1

18 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b + 1 a b

19 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b + 2 b + 1 a

20 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b b + 1 a

21 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) a b + 1 b + 2

22 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b a b + 1

23 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b + 1 a b + 2

24 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b a b + 1

25 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b b + 1 a

26 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b + 2 a b + 1

27 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) a b + 1 b

28 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b + 2 b + 1 a

29 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b + 1 b a

30 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b + 1 a b + 2

31 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b a b + 1

32 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) b + 1 a b + 2

33 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 )

34 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b ) Note:» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) If A is convex, the for loop cycles around the polygon B once. Otherwise we can cycle as many times as there are different extremal vertices in A -- O( A ).

35 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b ) Note:» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) In the worst case, we can trace the next extremal vertex in O( A ) time. If A and B are convex, then in all these tracings of, we cycle around A once -- O 1 time.

36 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: Trace a along edge b, b + 1 a TraceNextLocalExtremum( b + 1 ) Complexity: If A and B convex: O( A + B ) Else if A convex: O( A B ) Else: O( A 2 B ) [I think.]

37 MinkowskiTrace( A, B ) Place A at a vertex of b B. for each a Extremal( b )» for b B: If A or BTrace is not aconvex, along edge to get b, the b + Minkowski 1 Sum, a TraceNextLocalExtremum( b + 1 ) we need to remove the internal polygons. We Complexity: can do this, e.g., by constructing a trapezoidalization, considering If A and B the convex: dual graph, O( A and + B ) using the windingnumber/parity-test to mark the external cells. Else if A convex: O( A B ) Linking the Else: O( A 2 dual cells that are external, we need to determine B ) [I if think.] s and t are in the same connected component.

38 Outline Translating a polygon Moving a ladder

39 Moving a Ladder Goal: Given a line segment at position s, a set of polygons P, and a target position t, determine if the ladder can be moved (translated and rotated) to t while avoiding the polygonal obstacles. t s

40 Moving a Ladder General Approach: Compute the Minkowski Sum of P with l. t s

41 Moving a Ladder General Approach: Compute the Minkowski Sum of P with the ladder. Do this for every rotation of the ladder. t s

42 Moving a Ladder General Approach: Compute the Minkowski Sum of P with the ladder. Do this for every rotation of the ladder. t s

43 Moving a Ladder General Approach: Compute the Minkowski Sum of P with the ladder. Do this for every rotation of the ladder. t s

44 Moving a Ladder General Approach: Compute the Minkowski Sum of P with the ladder. Do this for every rotation of the ladder. Stack into a 3D volume and test if there is a path from s to t, in the 3D space, t that avoids all the polygons. s

45 Moving a Ladder General Approach: Compute the Minkowski Sum of P with the ladder. There are infinitely many angles. Do this for every rotation of the ladder. The boundaries of the 3D sums are not planar. Stack into a 3D volume and test if there is a path from s to t, in the 3D space, t that avoids all the polygons. s

46 Moving a Ladder Implementation: Partition empty region into trapezoids: Base aligned with the ladder direction. Sides defined by the edges of the polygons. In general, as we rotate the ladder, the shape of the cells change but the topology of the partition (i.e. dual graph) does not. At discrete events, cells may be inserted, deleted, or merged.

47 Moving a Ladder Implementation: Partition empty region into trapezoids: Base aligned with the ladder direction. Sides defined by the edges of the polygons. These events can only occur when the rotated ladder aligns with a segment between two vertices of the polygons. Instead of trying all possible rotations, we only need to consider the O( P In general, as we rotate the ladder, the 2 ) cases. shape of the cells change but the topology of the partition (i.e. dual graph) does not. At discrete events, cells may be inserted, deleted, or merged.

48 Moving a Ladder a d f e b c

49 Moving a Ladder a d f e b c

50 Moving a Ladder (a, b) (a, d) (c, d) (e, b) (f, b) (c, b) (a, d) a (a, b) (e, b) e d f (f, b) b (c, d) c (c, b)

51 Moving a Ladder (a, b) (a, b) (a, d) (c, d) (e, b) (f, b) (a, d) (c, d) (e, b) (f, b) (c, b) (c, b) a (a, b) (e, b) d e b (a, d) (c, d) f (f, b) c (c, b)

52 Moving a Ladder (a, b) (a, b) (a, b) (a, d) (c, d) (e, b) (f, b) (a, d) (c, d) (e, b) (f, b) (a, d) (c, d) (e, b) (c, b) (c, b) (c, b) a (a, b) (e, b) (c, d) (a, d) d e f (c, b) b c

53 Moving a Ladder (a, b) (a, b) (a, b) (a, b) (a, d) (c, d) (e, b) (f, b) (a, d) (c, d) (e, b) (f, b) (a, d) (c, d) (e, b) (c, d) (e, b) (c, f) (c, b) (c, b) (c, b) (c, b) a (a, b) (e, b) d e b (c, d) f (c, b) (c, f) c

54 Moving a Ladder Approach: Set Θ = θ 0 = 0, θ 1,, θ n to be sorted angles, with θ i the angle of the i-th segment. For 0 i n:» Compute the Minkowski Sum of P with the rotation of the ladder by angle θ i + ε.» Compute the dual graph of the Minkowski Sum.» Link the i 1 -st and i-th dual graphs. Test if there is a path between the cells containing s and t (at θ = 0) in the linked graph.

CS 763 F16. Moving objects in space with obstacles/constraints.

CS 763 F16. Moving objects in space with obstacles/constraints. Moving objects in space with obstacles/constraints. Objects = robots, vehicles, jointed linkages (robot arm), tools (e.g. on automated assembly line), foldable/bendable objects. Objects need not be physical

More information

Lecture 11 Combinatorial Planning: In the Plane

Lecture 11 Combinatorial Planning: In the Plane CS 460/560 Introduction to Computational Robotics Fall 2017, Rutgers University Lecture 11 Combinatorial Planning: In the Plane Instructor: Jingjin Yu Outline Convex shapes, revisited Combinatorial planning

More information

Voronoi Diagrams and Delaunay Triangulations. O Rourke, Chapter 5

Voronoi Diagrams and Delaunay Triangulations. O Rourke, Chapter 5 Voronoi Diagrams and Delaunay Triangulations O Rourke, Chapter 5 Outline Preliminaries Properties and Applications Computing the Delaunay Triangulation Preliminaries Given a function f: R 2 R, the tangent

More information

Ma/CS 6b Class 11: Kuratowski and Coloring

Ma/CS 6b Class 11: Kuratowski and Coloring Ma/CS 6b Class 11: Kuratowski and Coloring By Adam Sheffer Kuratowski's Theorem Theorem. A graph is planar if and only if it does not have K 5 and K 3,3 as topological minors. We know that if a graph contains

More information

CS 2336 Discrete Mathematics

CS 2336 Discrete Mathematics CS 2336 Discrete Mathematics Lecture 15 Graphs: Planar Graphs 1 Outline What is a Planar Graph? Euler Planar Formula Platonic Solids Five Color Theorem Kuratowski s Theorem 2 What is a Planar Graph? Definition

More information

Planar convex hulls (I) Computational Geometry [csci 3250] Laura Toma Bowdoin College

Planar convex hulls (I) Computational Geometry [csci 3250] Laura Toma Bowdoin College Planar convex hulls (I) Computational Geometry [csci 3250] Laura Toma Bowdoin College Convex Hull Given a set P of points in 2D, their convex hull is the smallest convex polygon that contains all points

More information

Computational Geometry

Computational Geometry Casting a polyhedron CAD/CAM systems CAD/CAM systems allow you to design objects and test how they can be constructed Many objects are constructed used a mold Casting Casting A general question: Given

More information

Voronoi Diagrams in the Plane. Chapter 5 of O Rourke text Chapter 7 and 9 of course text

Voronoi Diagrams in the Plane. Chapter 5 of O Rourke text Chapter 7 and 9 of course text Voronoi Diagrams in the Plane Chapter 5 of O Rourke text Chapter 7 and 9 of course text Voronoi Diagrams As important as convex hulls Captures the neighborhood (proximity) information of geometric objects

More information

CS 532: 3D Computer Vision 14 th Set of Notes

CS 532: 3D Computer Vision 14 th Set of Notes 1 CS 532: 3D Computer Vision 14 th Set of Notes Instructor: Philippos Mordohai Webpage: www.cs.stevens.edu/~mordohai E-mail: Philippos.Mordohai@stevens.edu Office: Lieb 215 Lecture Outline Triangulating

More information

Computational Geometry

Computational Geometry Computational Geometry 600.658 Convexity A set S is convex if for any two points p, q S the line segment pq S. S p S q Not convex Convex? Convexity A set S is convex if it is the intersection of (possibly

More information

CS4733 Class Notes. 1 2-D Robot Motion Planning Algorithm Using Grown Obstacles

CS4733 Class Notes. 1 2-D Robot Motion Planning Algorithm Using Grown Obstacles CS4733 Class Notes 1 2-D Robot Motion Planning Algorithm Using Grown Obstacles Reference: An Algorithm for Planning Collision Free Paths Among Poyhedral Obstacles by T. Lozano-Perez and M. Wesley. This

More information

CS6100: Topics in Design and Analysis of Algorithms

CS6100: Topics in Design and Analysis of Algorithms CS6100: Topics in Design and Analysis of Algorithms Guarding and Triangulating Polygons John Augustine CS6100 (Even 2012): Guarding and Triangulating Polygons The Art Gallery Problem A simple polygon is

More information

Convex Hulls (3D) O Rourke, Chapter 4

Convex Hulls (3D) O Rourke, Chapter 4 Convex Hulls (3D) O Rourke, Chapter 4 Outline Polyhedra Polytopes Euler Characteristic (Oriented) Mesh Representation Polyhedra Definition: A polyhedron is a solid region in 3D space whose boundary is

More information

Chapter 6. Planar Orientations. 6.1 Numberings of Digraphs

Chapter 6. Planar Orientations. 6.1 Numberings of Digraphs Chapter 6 Planar Orientations In this chapter we will focus on algorithms and techniques used for drawing planar graphs. The algorithms we will use are based on numbering the vertices and orienting the

More information

Computational Geometry csci3250. Laura Toma. Bowdoin College

Computational Geometry csci3250. Laura Toma. Bowdoin College Computational Geometry csci3250 Laura Toma Bowdoin College Motion Planning Input: a robot R and a set of obstacles S = {O 1, O 2, } start position p start end position p end Find a path from start to end

More information

Computational Geometry

Computational Geometry Lecture 12: Lecture 12: Motivation: Terrains by interpolation To build a model of the terrain surface, we can start with a number of sample points where we know the height. Lecture 12: Motivation: Terrains

More information

Visibility Graph. How does a Mobile Robot get from A to B?

Visibility Graph. How does a Mobile Robot get from A to B? Robot Path Planning Things to Consider: Spatial reasoning/understanding: robots can have many dimensions in space, obstacles can be complicated Global Planning: Do we know the environment apriori? Online

More information

Polygon decomposition. Motivation: Art gallery problem

Polygon decomposition. Motivation: Art gallery problem CG Lecture 3 Polygon decomposition 1. Polygon triangulation Triangulation theory Monotone polygon triangulation 2. Polygon decomposition into monotone pieces 3. Trapezoidal decomposition 4. Convex decomposition

More information

Week 7 Convex Hulls in 3D

Week 7 Convex Hulls in 3D 1 Week 7 Convex Hulls in 3D 2 Polyhedra A polyhedron is the natural generalization of a 2D polygon to 3D 3 Closed Polyhedral Surface A closed polyhedral surface is a finite set of interior disjoint polygons

More information

Lecture notes: Object modeling

Lecture notes: Object modeling Lecture notes: Object modeling One of the classic problems in computer vision is to construct a model of an object from an image of the object. An object model has the following general principles: Compact

More information

The Graphs of Triangulations of Polygons

The Graphs of Triangulations of Polygons The Graphs of Triangulations of Polygons Matthew O Meara Research Experience for Undergraduates Summer 006 Basic Considerations Let Γ(n) be the graph with vertices being the labeled planar triangulation

More information

The Geometry of Carpentry and Joinery

The Geometry of Carpentry and Joinery The Geometry of Carpentry and Joinery Pat Morin and Jason Morrison School of Computer Science, Carleton University, 115 Colonel By Drive Ottawa, Ontario, CANADA K1S 5B6 Abstract In this paper we propose

More information

Advanced Algorithms Computational Geometry Prof. Karen Daniels. Spring, 2010

Advanced Algorithms Computational Geometry Prof. Karen Daniels. Spring, 2010 UMass Lowell Computer Science 91.504 Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2010 Lecture 3 O Rourke Chapter 3: 2D Convex Hulls Thursday, 2/18/10 Chapter 3 2D Convex Hulls

More information

Lesson 1. Unit 2 Practice Problems. Problem 2. Problem 1. Solution 1, 4, 5. Solution. Problem 3

Lesson 1. Unit 2 Practice Problems. Problem 2. Problem 1. Solution 1, 4, 5. Solution. Problem 3 Unit 2 Practice Problems Lesson 1 Problem 1 Rectangle measures 12 cm by 3 cm. Rectangle is a scaled copy of Rectangle. Select all of the measurement pairs that could be the dimensions of Rectangle. 1.

More information

ECE276B: Planning & Learning in Robotics Lecture 5: Configuration Space

ECE276B: Planning & Learning in Robotics Lecture 5: Configuration Space ECE276B: Planning & Learning in Robotics Lecture 5: Configuration Space Lecturer: Nikolay Atanasov: natanasov@ucsd.edu Teaching Assistants: Tianyu Wang: tiw161@eng.ucsd.edu Yongxi Lu: yol070@eng.ucsd.edu

More information

: Mesh Processing. Chapter 8

: Mesh Processing. Chapter 8 600.657: Mesh Processing Chapter 8 Handling Mesh Degeneracies [Botsch et al., Polygon Mesh Processing] Class of Approaches Geometric: Preserve the mesh where it s good. Volumetric: Can guarantee no self-intersection.

More information

Minkowski Sums. Dinesh Manocha Gokul Varadhan. UNC Chapel Hill. NUS CS 5247 David Hsu

Minkowski Sums. Dinesh Manocha Gokul Varadhan. UNC Chapel Hill. NUS CS 5247 David Hsu Minkowski Sums Dinesh Manocha Gokul Varadhan UNC Chapel Hill NUS CS 5247 David Hsu Last Lecture Configuration space workspace configuration space 2 Problem Configuration Space of a Translating Robot Input:

More information

Lecture 3: Art Gallery Problems and Polygon Triangulation

Lecture 3: Art Gallery Problems and Polygon Triangulation EECS 396/496: Computational Geometry Fall 2017 Lecture 3: Art Gallery Problems and Polygon Triangulation Lecturer: Huck Bennett In this lecture, we study the problem of guarding an art gallery (specified

More information

Motion Planning. Thanks to Piotr Indyk. Lecture 11: Motion Planning

Motion Planning. Thanks to Piotr Indyk. Lecture 11: Motion Planning Motion Planning Thanks to Piotr Indyk Piano Mover s Problem Given: A set of obstacles The initial position of a robot The final position of a robot Goal: find a path that Moves the robot from the initial

More information

Polygon Partitioning. Lecture03

Polygon Partitioning. Lecture03 1 Polygon Partitioning Lecture03 2 History of Triangulation Algorithms 3 Outline Monotone polygon Triangulation of monotone polygon Trapezoidal decomposition Decomposition in monotone mountain Convex decomposition

More information

Bellman s Escape Problem for Convex Polygons

Bellman s Escape Problem for Convex Polygons Bellman s Escape Problem for Convex Polygons Philip Gibbs philegibbs@gmail.com Abstract: Bellman s challenge to find the shortest path to escape from a forest of known shape is notoriously difficult. Apart

More information

Computational Geometry

Computational Geometry Motivation Motivation Polygons and visibility Visibility in polygons Triangulation Proof of the Art gallery theorem Two points in a simple polygon can see each other if their connecting line segment is

More information

Potential Function. Homework #3. Part I: Star Algorithm

Potential Function. Homework #3. Part I: Star Algorithm Homework #3 Potential Function Part I: Star Algorithm I have implemented the Star Algorithm to compute the 2-dimensional configuration space Q starting from the workspace W and the robot shape R. The obstacles

More information

How Do Computers Solve Geometric Problems? Sorelle Friedler, University of Maryland - College Park

How Do Computers Solve Geometric Problems? Sorelle Friedler, University of Maryland - College Park How Do Computers Solve Geometric Problems? Sorelle Friedler, University of Maryland - College Park http://www.cs.umd.edu/~sorelle Outline Introduction Algorithms Computational Geometry Art Museum Problem

More information

Discrete Motion Planning

Discrete Motion Planning RBE MOTION PLANNING Discrete Motion Planning Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering http://users.wpi.edu/~zli11 Announcement Homework 1 is out Due Date - Feb 1 Updated

More information

Differential Geometry: Circle Patterns (Part 1) [Discrete Conformal Mappinngs via Circle Patterns. Kharevych, Springborn and Schröder]

Differential Geometry: Circle Patterns (Part 1) [Discrete Conformal Mappinngs via Circle Patterns. Kharevych, Springborn and Schröder] Differential Geometry: Circle Patterns (Part 1) [Discrete Conformal Mappinngs via Circle Patterns. Kharevych, Springborn and Schröder] Preliminaries Recall: Given a smooth function f:r R, the function

More information

! Linear programming"! Duality "! Smallest enclosing disk"

! Linear programming! Duality ! Smallest enclosing disk ! Linear programming"! Duality "! Smallest enclosing disk" 14. 24.! Define:" " i types of foods (1!i!d).! " j types of vitamins (1!j!n)." " x i the amount of food of type i." " a ji the amount of vitamin

More information

Line segment intersection. Family of intersection problems

Line segment intersection. Family of intersection problems CG Lecture 2 Line segment intersection Intersecting two line segments Line sweep algorithm Convex polygon intersection Boolean operations on polygons Subdivision overlay algorithm 1 Family of intersection

More information

Computational Geometry

Computational Geometry Planar point location Point location Introduction Planar point location Strip-based structure Point location problem: Preprocess a planar subdivision such that for any query point q, the face of the subdivision

More information

References. Additional lecture notes for 2/18/02.

References. Additional lecture notes for 2/18/02. References Additional lecture notes for 2/18/02. I-COLLIDE: Interactive and Exact Collision Detection for Large-Scale Environments, by Cohen, Lin, Manocha & Ponamgi, Proc. of ACM Symposium on Interactive

More information

points are stationed arbitrarily close to one corner of the square ( n+1

points are stationed arbitrarily close to one corner of the square ( n+1 1 Intro We ve seen previously that we can construct networks based on the regular triangular, rectangular and hexagonal lattices where the total network length is linear in n and the R-statistic for the

More information

1/60. Geometric Algorithms. Lecture 1: Introduction. Convex Hulls

1/60. Geometric Algorithms. Lecture 1: Introduction. Convex Hulls 1/60 Geometric Algorithms Lecture 1: Introduction Convex Hulls Geometric algorithms scope 2/60 Geometry algorithms (practice): Study of geometric problems that arise in various applications and how algorithms

More information

Lesson Plan For Common Core 8 TRANSFORMATIONS OF THE PLANE

Lesson Plan For Common Core 8 TRANSFORMATIONS OF THE PLANE Lesson Plan For Common Core 8 TRANSFORMATIONS OF THE PLANE STANDARD: CCSS.MATH.CONTENT.HSG.CO.A.2 Represent transformations in the plane using, e.g., transparencies and geometry software; describe transformations

More information

6.854J / J Advanced Algorithms Fall 2008

6.854J / J Advanced Algorithms Fall 2008 MIT OpenCourseWare http://ocw.mit.edu 6.854J / 18.415J Advanced Algorithms Fall 2008 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.415/6.854 Advanced

More information

Other Voronoi/Delaunay Structures

Other Voronoi/Delaunay Structures Other Voronoi/Delaunay Structures Overview Alpha hulls (a subset of Delaunay graph) Extension of Voronoi Diagrams Convex Hull What is it good for? The bounding region of a point set Not so good for describing

More information

Points covered an odd number of times by translates

Points covered an odd number of times by translates Points covered an odd number of times by translates Rom Pinchasi August 5, 0 Abstract Let T be a fixed triangle and consider an odd number of translated copies of T in the plane. We show that the set of

More information

Sung-Eui Yoon ( 윤성의 )

Sung-Eui Yoon ( 윤성의 ) Path Planning for Point Robots Sung-Eui Yoon ( 윤성의 ) Course URL: http://sglab.kaist.ac.kr/~sungeui/mpa Class Objectives Motion planning framework Classic motion planning approaches 2 3 Configuration Space:

More information

Robotic Motion Planning: Cell Decompositions (with some discussion on coverage and pursuer/evader)

Robotic Motion Planning: Cell Decompositions (with some discussion on coverage and pursuer/evader) Robotic Motion Planning: Cell Decompositions (with some discussion on coverage and pursuer/evader) Robotics Institute 16-735 http://voronoi.sbp.ri.cmu.edu/~motion Howie Choset http://voronoi.sbp.ri.cmu.edu/~choset

More information

Invariant Measures of Convex Sets. Eitan Grinspun, Columbia University Peter Schröder, Caltech

Invariant Measures of Convex Sets. Eitan Grinspun, Columbia University Peter Schröder, Caltech Invariant Measures of Convex Sets Eitan Grinspun, Columbia University Peter Schröder, Caltech What will we measure? Subject to be measured, S an object living in n-dim space convex, compact subset of R

More information

Chapter 10 Polygons and Area

Chapter 10 Polygons and Area Geometry Concepts Chapter 10 Polygons and Area Name polygons according to sides and angles Find measures of interior angles Find measures of exterior angles Estimate and find areas of polygons Estimate

More information

Path Planning for Point Robots. NUS CS 5247 David Hsu

Path Planning for Point Robots. NUS CS 5247 David Hsu Path Planning for Point Robots NUS CS 5247 David Hsu Problem Input Robot represented as a point in the plane Obstacles represented as polygons Initial and goal positions Output A collision-free path between

More information

Revolve Vertices. Axis of revolution. Angle of revolution. Edge sense. Vertex to be revolved. Figure 2-47: Revolve Vertices operation

Revolve Vertices. Axis of revolution. Angle of revolution. Edge sense. Vertex to be revolved. Figure 2-47: Revolve Vertices operation Revolve Vertices The Revolve Vertices operation (edge create revolve command) creates circular arc edges or helixes by revolving existing real and/or non-real vertices about a specified axis. The command

More information

Quadrilaterals & Transformations Study Guide

Quadrilaterals & Transformations Study Guide s & Transformations Study Guide What do I need to know for the upcoming Summative Assessment? s Classifications and Properties of: o o Trapezoid o Kite o Parallelogram o Rhombus o Rectangle o Square The

More information

2D Object Definition (1/3)

2D Object Definition (1/3) 2D Object Definition (1/3) Lines and Polylines Lines drawn between ordered points to create more complex forms called polylines Same first and last point make closed polyline or polygon Can intersect itself

More information

CSE 5311 Notes 13: Computational Geometry

CSE 5311 Notes 13: Computational Geometry CSE 5311 Notes 13: Computational Geometry (Last updated 4/17/17 4:39 PM) SMALLEST ENCLOSING DISK See section 4.7 of de Berg ( http://dx.doi.org.ezproxy.uta.edu/10.1007/978-3-540-77974-2 ) Algorithm MINIDISC(P)

More information

Part IV. 2D Clipping

Part IV. 2D Clipping Part IV 2D Clipping The Liang-Barsky algorithm Boolean operations on polygons Outline The Liang-Barsky algorithm Boolean operations on polygons Clipping The goal of clipping is mainly to eliminate parts

More information

Cross-Parameterization and Compatible Remeshing of 3D Models

Cross-Parameterization and Compatible Remeshing of 3D Models Cross-Parameterization and Compatible Remeshing of 3D Models Vladislav Kraevoy Alla Sheffer University of British Columbia Authors Vladislav Kraevoy Ph.D. Student Alla Sheffer Assistant Professor Outline

More information

Robotic Motion Planning: Review C-Space and Start Potential Functions

Robotic Motion Planning: Review C-Space and Start Potential Functions Robotic Motion Planning: Review C-Space and Start Potential Functions Robotics Institute 16-735 http://www.cs.cmu.edu/~motionplanning Howie Choset http://www.cs.cmu.edu/~choset What if the robot is not

More information

Computational Geometry [csci 3250]

Computational Geometry [csci 3250] Computational Geometry [csci 3250] Laura Toma Bowdoin College Polygon Triangulation Polygon Triangulation The problem: Triangulate a given polygon. (output a set of diagonals that partition the polygon

More information

SAMPLING AND THE MOMENT TECHNIQUE. By Sveta Oksen

SAMPLING AND THE MOMENT TECHNIQUE. By Sveta Oksen SAMPLING AND THE MOMENT TECHNIQUE By Sveta Oksen Overview - Vertical decomposition - Construction - Running time analysis - The bounded moments theorem - General settings - The sampling model - The exponential

More information

Road Map Methods. Including material from Howie Choset / G.D. Hager S. Leonard

Road Map Methods. Including material from Howie Choset / G.D. Hager S. Leonard Road Map Methods Including material from Howie Choset The Basic Idea Capture the connectivity of Q free by a graph or network of paths. 16-735, Howie Choset, with significant copying from who loosely based

More information

CS133 Computational Geometry

CS133 Computational Geometry CS133 Computational Geometry Voronoi Diagram Delaunay Triangulation 5/17/2018 1 Nearest Neighbor Problem Given a set of points P and a query point q, find the closest point p P to q p, r P, dist p, q dist(r,

More information

Module 2 Test Study Guide. Type of Transformation (translation, reflection, rotation, or none-of-theabove). Be as specific as possible.

Module 2 Test Study Guide. Type of Transformation (translation, reflection, rotation, or none-of-theabove). Be as specific as possible. Module 2 Test Study Guide CONCEPTS TO KNOW: Transformation (types) Rigid v. Non-Rigid Motion Coordinate Notation Vector Terminology Pre-Image v. Image Vertex Prime Notation Equation of a Line Lines of

More information

High-Dimensional Computational Geometry. Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018

High-Dimensional Computational Geometry. Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018 High-Dimensional Computational Geometry Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018 Outline 3-D vector geometry High-D hyperplane intersections Convex hull & its extension to 3

More information

Course Guide (/8/teachers/teacher_course_guide.html) Print (/8/teachers/print_materials.html) LMS (/8

Course Guide (/8/teachers/teacher_course_guide.html) Print (/8/teachers/print_materials.html) LMS (/8 (http://openupresources.org)menu Close OUR Curriculum (http://openupresources.org) Professional Development (http://openupresources.org/illustrative-mathematics-professional-development) Implementation

More information

Trapezoidal Maps. Notes taken from CG lecture notes of Mount (pages 60 69) Course page has a copy

Trapezoidal Maps. Notes taken from CG lecture notes of Mount (pages 60 69) Course page has a copy Trapezoidal Maps Notes taken from CG lecture notes of Mount (pages 60 69) Course page has a copy Trapezoidal Maps S={s 1,s 2,..., s n } is the set of line segments segments don t intersect, but can touch

More information

Lesson 7.1. Angles of Polygons

Lesson 7.1. Angles of Polygons Lesson 7.1 Angles of Polygons Essential Question: How can I find the sum of the measures of the interior angles of a polygon? Polygon A plane figure made of three or more segments (sides). Each side intersects

More information

TRANSFORMATIONS AND CONGRUENCE

TRANSFORMATIONS AND CONGRUENCE 1 TRANSFORMATIONS AND CONGRUENCE LEARNING MAP INFORMATION STANDARDS 8.G.1 Verify experimentally the s, s, and s: 8.G.1.a Lines are taken to lines, and line segments to line segments of the same length.

More information

Search and Intersection. O Rourke, Chapter 7 de Berg et al., Chapter 11

Search and Intersection. O Rourke, Chapter 7 de Berg et al., Chapter 11 Search and Intersection O Rourke, Chapter 7 de Berg et al., Chapter 11 Announcements Assignment 3 web-page has been updated: Additional extra credit Hints for managing a dynamic half-edge representation

More information

layers in a raster model

layers in a raster model layers in a raster model Layer 1 Layer 2 layers in an vector-based model (1) Layer 2 Layer 1 layers in an vector-based model (2) raster versus vector data model Raster model Vector model Simple data structure

More information

The Farthest Point Delaunay Triangulation Minimizes Angles

The Farthest Point Delaunay Triangulation Minimizes Angles The Farthest Point Delaunay Triangulation Minimizes Angles David Eppstein Department of Information and Computer Science UC Irvine, CA 92717 November 20, 1990 Abstract We show that the planar dual to the

More information

An angle that has a measure less than a right angle.

An angle that has a measure less than a right angle. Unit 1 Study Strategies: Two-Dimensional Figures Lesson Vocab Word Definition Example Formed by two rays or line segments that have the same 1 Angle endpoint. The shared endpoint is called the vertex.

More information

Voronoi Diagram. Xiao-Ming Fu

Voronoi Diagram. Xiao-Ming Fu Voronoi Diagram Xiao-Ming Fu Outlines Introduction Post Office Problem Voronoi Diagram Duality: Delaunay triangulation Centroidal Voronoi tessellations (CVT) Definition Applications Algorithms Outlines

More information

Motion Planning 2D. Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo

Motion Planning 2D. Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo Motion Planning 2D Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo Tratto dai corsi: CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Prof. J.C. Latombe Stanford

More information

Geometry Chapter 8 Test Review

Geometry Chapter 8 Test Review Geometry Chapter 8 Test Review Short Answer 1. Find the sum of the measures of the interior angles of the indicated convex polygon. Decagon 2. Find the sum of the measures of the interior angles of the

More information

Lecture 12 March 4th

Lecture 12 March 4th Math 239: Discrete Mathematics for the Life Sciences Spring 2008 Lecture 12 March 4th Lecturer: Lior Pachter Scribe/ Editor: Wenjing Zheng/ Shaowei Lin 12.1 Alignment Polytopes Recall that the alignment

More information

Connected Components of Underlying Graphs of Halving Lines

Connected Components of Underlying Graphs of Halving Lines arxiv:1304.5658v1 [math.co] 20 Apr 2013 Connected Components of Underlying Graphs of Halving Lines Tanya Khovanova MIT November 5, 2018 Abstract Dai Yang MIT In this paper we discuss the connected components

More information

Collision handling: detection and response

Collision handling: detection and response Collision handling: detection and response Collision handling overview Detection Discrete collision detection Convex polygon intersection test General polygon intersection test Continuous collision detection

More information

Reconstructing Orthogonal Polyhedra from Putative Vertex Sets

Reconstructing Orthogonal Polyhedra from Putative Vertex Sets Reconstructing Orthogonal Polyhedra from Putative Vertex Sets Therese Biedl 1 and Burkay Genc 1 David R. Cheriton School of Computer Science, University of Waterloo, Waterloo ON N2L 3G1, Canada biedl@uwaterloo.ca,

More information

Generalizing Ham Sandwich Cuts to Equitable Subdivisions

Generalizing Ham Sandwich Cuts to Equitable Subdivisions Discrete Comput Geom 24:605 622 (2000) DOI: 10.1007/s004540010065 Discrete & Computational Geometry 2000 Springer-Verlag New York Inc. Generalizing Ham Sandwich Cuts to Equitable Subdivisions S. Bespamyatnikh,

More information

Prof. Gill Barequet. Center for Graphics and Geometric Computing, Technion. Dept. of Computer Science The Technion Haifa, Israel

Prof. Gill Barequet. Center for Graphics and Geometric Computing, Technion. Dept. of Computer Science The Technion Haifa, Israel Computational Geometry (CS 236719) http://www.cs.tufts.edu/~barequet/teaching/cg Chapter 1 Introduction 1 Copyright 2002-2009 2009 Prof. Gill Barequet Center for Graphics and Geometric Computing Dept.

More information

A Minimalist s Implementation of the 3-d Divide-and-Conquer Convex Hull Algorithm

A Minimalist s Implementation of the 3-d Divide-and-Conquer Convex Hull Algorithm A Minimalist s Implementation of the 3-d Divide-and-Conquer Convex Hull Algorithm Timothy M. Chan Presented by Dana K. Jansens Carleton University Simple Polygons Polygon = A consecutive set of vertices

More information

IN5520 Digital Image Analysis. Two old exams. Practical information for any written exam Exam 4300/9305, Fritz Albregtsen

IN5520 Digital Image Analysis. Two old exams. Practical information for any written exam Exam 4300/9305, Fritz Albregtsen IN5520 Digital Image Analysis Two old exams Practical information for any written exam Exam 4300/9305, 2016 Exam 4300/9305, 2017 Fritz Albregtsen 27.11.2018 F13 27.11.18 IN 5520 1 Practical information

More information

GSAC TALK: THE WORD PROBLEM. 1. The 8-8 Tessellation. Consider the following infinite tessellation of the open unit disc. Actually, we want to think

GSAC TALK: THE WORD PROBLEM. 1. The 8-8 Tessellation. Consider the following infinite tessellation of the open unit disc. Actually, we want to think GSAC TALK: THE WORD PROBLEM 1. The 8-8 Tessellation Consider the following infinite tessellation of the open unit disc. Actually, we want to think of the disc as a model for R 2 and we can do that using

More information

Upright-Quad Drawing of st-planar Learning Spaces David Eppstein

Upright-Quad Drawing of st-planar Learning Spaces David Eppstein Upright-Quad Drawing of st-planar Learning Spaces David Eppstein Computer Science Department Univ. of California, Irvine Design Principle for Specialized Graph Drawing Algorithms If you re designing algorithms

More information

CHAPTER 2 REVIEW COORDINATE GEOMETRY MATH Warm-Up: See Solved Homework questions. 2.2 Cartesian coordinate system

CHAPTER 2 REVIEW COORDINATE GEOMETRY MATH Warm-Up: See Solved Homework questions. 2.2 Cartesian coordinate system CHAPTER 2 REVIEW COORDINATE GEOMETRY MATH6 2.1 Warm-Up: See Solved Homework questions 2.2 Cartesian coordinate system Coordinate axes: Two perpendicular lines that intersect at the origin O on each line.

More information

Manipula0on Algorithms Mo0on Planning. Mo#on Planning I. Katharina Muelling (NREC, Carnegie Mellon University) 1

Manipula0on Algorithms Mo0on Planning. Mo#on Planning I. Katharina Muelling (NREC, Carnegie Mellon University) 1 16-843 Manipula0on Algorithms Mo0on Planning Mo#on Planning I Katharina Muelling (NREC, Carnegie Mellon University) 1 Configura0on Space Obstacles Star Algorithm Convex robot, transla#on C obs : convex

More information

Linear Programming. Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015

Linear Programming. Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 Linear Programming 2015 Goodrich and Tamassia 1 Formulating the Problem q The function

More information

Motivation: Art gallery problem. Polygon decomposition. Art gallery problem: upper bound. Art gallery problem: lower bound

Motivation: Art gallery problem. Polygon decomposition. Art gallery problem: upper bound. Art gallery problem: lower bound CG Lecture 3 Polygon decomposition 1. Polygon triangulation Triangulation theory Monotone polygon triangulation 2. Polygon decomposition into monotone pieces 3. Trapezoidal decomposition 4. Conex decomposition

More information

Thomas H. Cormen Charles E. Leiserson Ronald L. Rivest. Introduction to Algorithms

Thomas H. Cormen Charles E. Leiserson Ronald L. Rivest. Introduction to Algorithms Thomas H. Cormen Charles E. Leiserson Ronald L. Rivest Introduction to Algorithms Preface xiii 1 Introduction 1 1.1 Algorithms 1 1.2 Analyzing algorithms 6 1.3 Designing algorithms 1 1 1.4 Summary 1 6

More information

2009 HMMT Team Round. Writing proofs. Misha Lavrov. ARML Practice 3/2/2014

2009 HMMT Team Round. Writing proofs. Misha Lavrov. ARML Practice 3/2/2014 Writing proofs Misha Lavrov ARML Practice 3/2/2014 Warm-up / Review 1 (From my research) If x n = 2 1 x n 1 for n 2, solve for x n in terms of x 1. (For a more concrete problem, set x 1 = 2.) 2 (From this

More information

CMSC 754 Computational Geometry 1

CMSC 754 Computational Geometry 1 CMSC 754 Computational Geometry 1 David M. Mount Department of Computer Science University of Maryland Fall 2016 1 Copyright, David M. Mount, 2016, Dept. of Computer Science, University of Maryland, College

More information

Computational Geometry TOPICS Preliminaries Point in a Polygon Polygon Construction Convex Hulls

Computational Geometry TOPICS Preliminaries Point in a Polygon Polygon Construction Convex Hulls Computational Geometry TOPICS Preliminaries Point in a Polygon Polygon Construction Convex Hulls CSE5311 Kumar 1 Geometric Algorithms Geometric Algorithms find applications in such areas as Computer Graphics

More information

Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass

Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass University of California, Davis, USA http://www.cs.ucdavis.edu/~koehl/ims2017/ What is a shape? A shape is a 2-manifold with a Riemannian

More information

Geometric Modeling Mortenson Chapter 11. Complex Model Construction

Geometric Modeling Mortenson Chapter 11. Complex Model Construction Geometric Modeling 91.580.201 Mortenson Chapter 11 Complex Model Construction Topics Topology of Models Connectivity and other intrinsic properties Graph-Based Models Emphasize topological structure Boolean

More information

Voronoi Diagram and Convex Hull

Voronoi Diagram and Convex Hull Voronoi Diagram and Convex Hull The basic concept of Voronoi Diagram and Convex Hull along with their properties and applications are briefly explained in this chapter. A few common algorithms for generating

More information

APPLIED aspects of COMPUTATIONAL GEOMETRY. Dan Halperin School of Computer Science Tel Aviv University

APPLIED aspects of COMPUTATIONAL GEOMETRY. Dan Halperin School of Computer Science Tel Aviv University APPLIED aspects of COMPUTATIONAL GEOMETRY Introduction Dan Halperin School of Computer Science Tel Aviv University Lesson overview Background The main topics Course mechanics Additional topics 2 Background

More information

Advanced Algorithm Homework 4 Results and Solutions

Advanced Algorithm Homework 4 Results and Solutions Advanced Algorithm Homework 4 Results and Solutions ID 1 2 3 4 5 Av Ex 2554 6288 9919 10 6 10 10 9.5 8.9 10-1 4208 10 10 9 8.5 10 9.5 9 0996 10 10 10 10 10 10 10 8239 10 10 10 10 10 10 10 7388 8 8.5 9

More information

Acute Triangulations of Polygons

Acute Triangulations of Polygons Europ. J. Combinatorics (2002) 23, 45 55 doi:10.1006/eujc.2001.0531 Available online at http://www.idealibrary.com on Acute Triangulations of Polygons H. MAEHARA We prove that every n-gon can be triangulated

More information

Abstract We proved in this paper that 14 triangles are necessary to triangulate a square with every angle no more than 72, answering an unsolved probl

Abstract We proved in this paper that 14 triangles are necessary to triangulate a square with every angle no more than 72, answering an unsolved probl Acute Triangulation of Rectangles Yibin Zhang Hangzhou Foreign Languages School Xiaoyang Sun Hangzhou Foreign Languages School Zhiyuan Fan Hangzhou Xuejun High School 1 Advisor Dongbo Lu Hangzhou Foreign

More information