Distance and Collision Detection

Similar documents
Collision Detection. These slides are mainly from Ming Lin s course notes at UNC Chapel Hill

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

Combinatorial Geometry & Topology arising in Game Theory and Optimization

Convex Geometry arising in Optimization

Geometric Computations for Simulation

Collision and Proximity Queries

A Fast and Robust GJK Implementation for Collision Detection of Convex Objects

COMP331/557. Chapter 2: The Geometry of Linear Programming. (Bertsimas & Tsitsiklis, Chapter 2)

Critique for CS 448B: Topics in Modeling The Voronoi-clip Collision Detection Algorithm

However, this is not always true! For example, this fails if both A and B are closed and unbounded (find an example).

Collision Detection between Dynamic Rigid Objects and Static Displacement Mapped Surfaces in Computer Games

Chapter 4 Concepts from Geometry

Lecture 3: Convex sets

Collision Detection CS434. Daniel G. Aliaga Department of Computer Science Purdue University

PolyDepth: Real-Time Penetration Depth Computation Using Iterative Contact-Space Projection

COMPUTATIONAL GEOMETRY

Math 414 Lecture 2 Everyone have a laptop?

Convexity: an introduction

Lesson 05. Mid Phase. Collision Detection

A Survey on Techniques for Computing Penetration Depth.

ASIA MAHDI NASER ALZUBAIDI Computer Science Department, College of Science Karbala University Karbala, Iraq MAIS SAAD AL-SAOUD

Tracking Minimum Distances between Curved Objects with Parametric Surfaces in Real Time

Quadratic and cubic b-splines by generalizing higher-order voronoi diagrams

FACES OF CONVEX SETS

Lecture 2 Convex Sets

POLYHEDRAL GEOMETRY. Convex functions and sets. Mathematical Programming Niels Lauritzen Recall that a subset C R n is convex if

Geometric Computation: Introduction

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

A GJK-Based Algorithm for Constrained Least Squares

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

MATH 890 HOMEWORK 2 DAVID MEREDITH

Lecture 2. Topology of Sets in R n. August 27, 2008

Lecture 5: Simplicial Complex

Linear Programming. Linear Programming. Linear Programming. Example: Profit Maximization (1/4) Iris Hui-Ru Jiang Fall Linear programming

Modeling and Analysis of Hybrid Systems

Modeling and Analysis of Hybrid Systems

Closest Point Query Among The Union Of Convex Polytopes Using Rasterization Hardware

Pebble Sets in Convex Polygons

CAT(0)-spaces. Münster, June 22, 2004

Topology I Test 1 Solutions October 13, 2008

Contents. Preface... VII. Part I Classical Topics Revisited

Self-Collision Detection and Prevention for Humanoid Robots. Talk Overview

Lecture 1: September 6, 2001

maximize c, x subject to Ax b,

Real-time Continuous Collision Detection and Penetration Depth Computation

Computational Geometry

Week 8 Voronoi Diagrams

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

Gift Wrapping for Pretropisms

Basics of Combinatorial Topology

Computational Geometry. Algorithm Design (10) Computational Geometry. Convex Hull. Areas in Computational Geometry

Linear programming and duality theory

Lecture 2 - Introduction to Polytopes

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

Convex Hulls Surface Mapping onto a Sphere

1. CONVEX POLYGONS. Definition. A shape D in the plane is convex if every line drawn between two points in D is entirely inside D.

Algorithmic Semi-algebraic Geometry and its applications. Saugata Basu School of Mathematics & College of Computing Georgia Institute of Technology.

Chapter 14 Global Search Algorithms

Computational Geometry

Incremental Convex Minimization for Computing Collision Translations of Convex Polyhedra

Self-Collision Detection. Planning for Humanoid Robots. Digital Human Research Center. Talk Overview

Sets. De Morgan s laws. Mappings. Definition. Definition

Surface Mesh Generation

Approximate Algorithms for Touring a Sequence of Polygons

Voronoi Diagram and Convex Hull

AMS : Combinatorial Optimization Homework Problems - Week V

University of Florida CISE department Gator Engineering. Clustering Part 2

High-performance Penetration Depth Computation for Haptic Rendering

Numerical Optimization

Collision Detection Algorithms for Motion Planning

Linear Programming in Small Dimensions

Line segment intersection. Family of intersection problems

Voronoi Diagrams. A Voronoi diagram records everything one would ever want to know about proximity to a set of points

Planar Graphs. 1 Graphs and maps. 1.1 Planarity and duality

Six-Degree-of-Freedom Haptic Rendering Using Incremental and Localized Computations

An iterative, octree-based algorithm for distance computation between polyhedra with complex surfaces 1

be a polytope. has such a representation iff it contains the origin in its interior. For a generic, sort the inequalities so that

MA 323 Geometric Modelling Course Notes: Day 36 Subdivision Surfaces

Dynamic Collision Detection

Flavor of Computational Geometry. Convex Hull in 2D. Shireen Y. Elhabian Aly A. Farag University of Louisville

Euclidean Shortest Paths in Simple Cube Curves at a Glance

Lesson 7.1. Angles of Polygons

Fast Gilbert-Johnson-Keerthi Method for Collision Detection between Two 2D Convex Hull Polygons Based on Chan s and Divide_Conquer Algorithms

C&O 355 Lecture 16. N. Harvey

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

Edge unfolding Cut sets Source foldouts Proof and algorithm Complexity issues Aleksandrov unfolding? Unfolding polyhedra.

Lecture 15: The subspace topology, Closed sets

Computational Geometry

Outline. CGAL par l exemplel. Current Partners. The CGAL Project.

Algebraic Geometry of Segmentation and Tracking

We have set up our axioms to deal with the geometry of space but have not yet developed these ideas much. Let s redress that imbalance.

Reflection groups 4. Mike Davis. May 19, Sao Paulo

Voronoi Diagrams and Delaunay Triangulations. O Rourke, Chapter 5

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

Monotone Paths in Geometric Triangulations

A Simplex based Dimension Independent Approach for Convex Decomposition of Nonconvex polytopes

Polyhedral Computation Today s Topic: The Double Description Algorithm. Komei Fukuda Swiss Federal Institute of Technology Zurich October 29, 2010

An Introduction to Geometrical Probability

Lecture notes for Topology MMA100

Abstract. 1 Introduction. 2 Translational Penetration Depth

Transcription:

Distance and Collision Detection Efi Fogel efif@post.tau.ac.il School of computer science, Tel Aviv University Fall 2003/4 Motion Planning seminar 1/33

The Papers A Fast Procedure for Computing the Distance Between Complex Objects in Three-Dimensional Space Computing Minimum and Penetration Distances between Convex Polyhedra Fall 2003/4 Motion Planning seminar 2/33

About the Algorithms First came Barr, Gilbert, and Wolfe. For example, Finding the nearest point in a polytope by Wolfe, 1976. In 1988 appeared A Fast procedure for computing the distance between... known as GJK. S. Cameron enhanced GJK in Computing Minimum and Penetration Distances between.... and also described modifications to compute penetration distances Lin & Canny, A fast Algorithm for incremental distance calculation, 1991 Fall 2003/4 Motion Planning seminar 3/33

Introduction In many fields (e.g., Robotics, CAD, Graphics, etc) it is important to know whether two objects in 3D intersect or are in close proximity. Fall 2003/4 Motion Planning seminar 4/33

Minimum Translation Distance (Cameron) When two simulated objects interpenetrate, we may need to know how to extricate the system from this condition. is in contact with objects overlap objects do not overlap Fall 2003/4 Motion Planning seminar 5/33

The Approach Compute the distance between convex sets in -dimensional space Efficient when Terminate after a finite number of iterations Linear in the total number of vertices Practical Fall 2003/4 Motion Planning seminar 6/33

Handled Object Shapes and Representations Objects that are the union of convex polytopes and their spherical extensions Spherical extensions are valuable May be used to cover an object with a safety shell Economical representations Fall 2003/4 Motion Planning seminar 7/33

Preliminaries The affine hull of a set, denoted by the intersection of all affine subspaces of containing., is The convex hull of a set, denoted by, is the intersection of all convex sets in containing. Fall 2003/4 Motion Planning seminar 8/33

Convex and Affine hulls in Fall 2003/4 Motion Planning seminar 9/33

Caratheodory s theorem Theorem 1 Let. Then each point of convex combination of at most points of. For example, in the plane, is the union of all triangles with vertices at points of. is a Fall 2003/4 Motion Planning seminar 10/33

The nearest point to the origin, nearest point in to origin Fall 2003/4 Motion Planning seminar 11/33

Translational C-space Obstacle (Cameron) Recognized as Minkowski Sum Fall 2003/4 Motion Planning seminar 12/33

Witness Points and are the witness points - realize the minimum distance Each is a surface point on and resp. Witness points are not necessary unique is the -witness point (Cameron) A surface point on Fall 2003/4 Motion Planning seminar 13/33

Tracking The distance algorithm is called many times in time steps Make sense to use the witness points found at the last step Fall 2003/4 Motion Planning seminar 14/33

Algorithm Sketch Finding the nearest point to the origin An example in Fall 2003/4 Motion Planning seminar 15/33

Algorithm Sketch Finding the nearest point to the origin An example in Fall 2003/4 Motion Planning seminar 15/33

Algorithm Sketch Finding the nearest point to the origin An example in Fall 2003/4 Motion Planning seminar 15/33

Algorithm Sketch Finding the nearest point to the origin An example in Fall 2003/4 Motion Planning seminar 15/33

The algorithm (Cameron) Require: is a compact convex set in _ while _ do _ end while computes the initial points returns true if the simplex contains the witness point, and false otherwise. computes a neighboring _ simplex Fall 2003/4 Motion Planning seminar 16/33

Inner (dot) Product The projection of whose length is between and. onto the unit vector, is the vector times the cosine of the angle, Fall 2003/4 Motion Planning seminar 17/33

Notations the support function of,, the support vertex, any witness of, Fall 2003/4 Motion Planning seminar 18/33

Minkowski Sum Fall 2003/4 Motion Planning seminar 19/33

Theorem be compact and convex, and by: Theorem 1 Let define. Then: Suppose Fall 2003/4 Motion Planning seminar 20/33

Theoretical Algorithm is compact and convex, Require: then 1: 2: 3: if 4: has d 5: stop 6: end if, where elements or less and satisfies 8: goto step 2. 7: Fall 2003/4 Motion Planning seminar 21/33

Distance Subalgorithm -th iteration, Consider the We need to compute: Fall 2003/4 Motion Planning seminar 22/33

Distance Subalgorithm, D.W. Johnson The number of all possible subsets of is: For example, In 4 vertices, 6 open edges, 4 open faces, 1 open simplex. Fall 2003/4 Motion Planning seminar 23/33

Distance subalgorithm. simplex an ordering of the subsets of. Define in be the complement of Let :, and Define real numbers Fall 2003/4 Motion Planning seminar 24/33

Distance Subalgorithm = 1 = 1 = 1 = = = = = = = = = Fall 2003/4 Motion Planning seminar 25/33

Theorem Theorem 1 if and only if, and 1., and 2., and 3. 4. Fall 2003/4 Motion Planning seminar 26/33

Distance Subalgorithm Require:, and an ordering 1: 2: if, and then, and 3: Stop 4: end if 5: if then 6: Increment and proceed to step 2 7: end if 8: Stop and report failure Fall 2003/4 Motion Planning seminar 27/33

Robustness Issues How reliable is it in the presence of roundoff errors Errors do not accumulate! Each iteration is recomputed based on Fall 2003/4 Motion Planning seminar 28/33

Making the Main Algorithm Robust Translate the origin to a point on the line segment joining the centroids of and Helps when is small and the is large Replace the convergence criterion to: related to the number-type accuracy Fall 2003/4 Motion Planning seminar 29/33

Making the Sub-Algorithm Robust The condition in the distance subalgorithm is not satisfied for any May happen when is affinely dependent or nearly so in all 4 points are nearly coplanar Resort to a backup procedure: Require: a simplex Compute the distance to all candidates {Compute for Return the best } Fall 2003/4 Motion Planning seminar 30/33

Hill Climbing (Cameron) Expediting the computing of the support vertex Given new support direction, and previous support vertex compare with for every vertex connected to if is not the smallest then, such that is the smallest else return end if Fall 2003/4 Motion Planning seminar 31/33

Solving each Simplex Fall 2003/4 Motion Planning seminar 32/33

Estimating Penetration Distance TCSO TC-space origin Objects overlap Fall 2003/4 Motion Planning seminar 33/33