Lecture 1 Discrete Geometric Structures Jean-Daniel Boissonnat Winter School on Computational Geometry and Topology University of Nice Sophia Antipolis January 23-27, 2017 Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 1 / 47
Outline 1 Convex Polytopes 2 Voronoi diagrams and Delaunay triangulations 3 Weighted Voronoi diagrams 4 Union of balls 5 Discrete metric spaces Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 2 / 47
Convex Polytopes Two ways of defining convex polytopes Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 3 / 47
Intersection of n half-planes Input : n half-planes H i : a i x + b i y + c i 0, i = 1,..., n Output : the convex polygon (possibly empty) H = n i=1 H i Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 4 / 47
Convex hull of n points Input : n points p 1,..., p n in R 2 Output : the convex polygon conv(p ) = n i λ ip i λ i 0 n i λ i = 1 Equivalently, conv(p ) is the intersection of the halfplanes that are bounded by lines passing through 2 points of P contain all the points of P Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 5 / 47
Space of lines and duality Duality point/line (non vertical) line h = {(x, y) : y = ax b} dual point h = (a, b) point p = (a, b) dual line p = {(x, y) : y = ax b}. The mapping is an involution and is thus bijective : h = h and p = p preserves incidences : p = (x, y) h y = ax b b = xa y h p. preserves inclusions p h + h p + (h + = {(x, y) : y > ax b)} Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 6 / 47
Intersections of halfplanes and convex hulls Let h 1,..., h n be n lines and let H = h + i h 3 h 1 h 2 * s h 3 h 2 h 1 A vertex s of H is the intersection point of two lines h i and h j lying above all other lines h k, k i, j = s = (h i h j ) s is a line supporting conv ({h i }) From a computational point of view, the two problems are equivalent Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 7 / 47
Facial structure of a polytope Convex polytopes and duality can be defined in very much the same in any fixed dimension Supporting hyperplane h : H P P on one side of h Faces : P h, h supp. hyp. Dimension of a face : the dim. of its affine hull Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 8 / 47
General position Points in general position P is in general position iff no subset of k + 2 points lie in a k-flat any k-face is the convex hull of k + 1 point of P, i.e. a k-simplex conv(p ) is called a simplicial polytope Hyperplanes in general position H is in general position iff the intersection of any subset of d k hyperplanes intersect in a k-flat any k-face is the intersection of d k hyperplanes H is called a simple polytope Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 9 / 47
1 Convex Polytopes 2 Voronoi diagrams and Delaunay triangulations 3 Weighted Voronoi diagrams 4 Union of balls 5 Discrete metric spaces Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 10 / 47
Voronoi diagrams in nature Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 11 / 47
The solar system (Descartes) Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 12 / 47
Growth of merystem Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 13 / 47
Euclidean Voronoi diagrams Voronoi cell V (p i ) = {x : x p i x p j, j} Voronoi diagram (P ) = { collection of all cells V (p i ), p i P } Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 14 / 47
Voronoi diagrams and convex polyhedra Convex Polyhedron The intersection of a finite collection of half-spaces : V = i I h+ i Each Voronoi cell is a convex polyhedron The Voronoi diagram has the structure of a cell complex: two cells either do not intersect or intersect in a common face The Voronoi diagram of P is the projection of a convex polyhedron of R d+1 Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 15 / 47
Voronoi diagrams and convex polyhedra Vor(p 1,..., p n) is the minimization diagram of the n functions δ i(x) = (x p i) 2 arg min(δ i) = arg max(h i) where h pi (x) = 2 p i x p 2 i p i z = (x p i ) 2 The minimization diagram of the δ i is also the maximization diagram of the affine functions h pi (x) The faces of Vor(P ) are the projections of the faces of V(P ) = i h+ p i h + p i = {x : x d+1 > 2p i x p 2 i } Note! the graph of h pi (x) is the hyperplane tangent to Q : x d+1 = x 2 at (x, x 2 ) Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 16 / 47
Voronoi diagrams and convex polyhedra Lifting map The faces of Vor(P ) are the projection of the faces of the polytope V(P ) = i h+ p i where h pi is the hyperplane tangent to paraboloid Q at the lifted point (p i, p 2 i ) Corollaries The size of Vor(P) is the same as the size of V(P ) Computing Vor(P) reduces to computing V(P ) Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 17 / 47
Voronoi diagram and Delaunay complex Finite set of points P R d The Delaunay complex is the nerve of the Voronoi diagram It is not always embedded in R d Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 18 / 47
Empty circumballs An (open) d-ball B circumscribing a simplex σ P is called empty if 1 vert(σ) B 2 B P = Del(P) is the collection of simplices admitting an empty circumball Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 19 / 47
Point sets in general position wrt spheres P = {p 1, p 2... p n } is said to be in general position wrt spheres if d + 2 points of P lying on a same (d 1)-sphere Theorem [Delaunay 1936] If P is in general position wrt spheres, Del(P ) has a natural realization in R d called the Delaunay triangulation of P. Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 20 / 47
Proof of Delaunay s theorem 1 h(σ) P Linearization S(x) = x 2 2c x + s, s = c 2 r 2 σ { z < 2c x s (h S(x) < 0 S ) z = x 2 (P) ˆx = (x, x 2 ) h S Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 21 / 47
Proof of Delaunay s theorem 2 Proof of Delaunay s th. P general position wrt spheres ˆP in general position σ a simplex, S σ its circumscribing sphere σ Del(P ) S σ empty i, ˆp i h + S σ ˆσ is a face of conv ( ˆP ) Del(P ) = proj(conv ( ˆP )) Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 22 / 47
VD and DT in the space of spheres h pi : x d+1 = 2p i x p 2 i ˆp i = (p i, p 2 i ) = h p i V(P ) = h + p 1... h + p n Voronoi Diagram of P duality D(P ) = conv ({ˆp 1,..., ˆp n }) Delaunay Complex of P nerve Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 23 / 47
Voronoi diagrams, Delaunay triangulations and polytopes If P is in general position wrt spheres : V(P ) = h + p 1... h + p n duality D(P ) = conv ({ˆp 1,..., ˆp n }) Voronoi Diagram of P nerve Delaunay Complex of P Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 24 / 47
1 Convex Polytopes 2 Voronoi diagrams and Delaunay triangulations 3 Weighted Voronoi diagrams 4 Union of balls 5 Discrete metric spaces Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 25 / 47
Foams, molecules and weighted Voronoi diagrams Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 26 / 47
Weighted Voronoi (or Power or Laguerre) Diagrams Sites : n balls B = {b i (p i, r i ), i = 1,... n} Power distance: π(x, b i ) = (x p i ) 2 r 2 i It is not a distance Power Diagram: Vor(B) One cell V (b i ) for each site V (b i ) = {x : π(x, b i ) π(x, b j ). j i} Each cell is a convex polyhedron V (b i ) may be empty p i may not belong to V (b i ) Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 27 / 47
Power diagrams are maximization diagrams Cell of b i in the weighed Voronoi diagram Vor(B) P h(σ) V (b i ) = {x R d : π(x, b i ) π(x, b j ). j i} = {x R d : 2p i x s i = max j [1,...n] {2p j x s j }} σ Vor(B) is the maximization diagram of the set of affine functions {h i (x) = 2p i x s i, i = 1,..., n} Geometrically : the vertical projection of P h i is the ball b i Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 28 / 47
Weighted Delaunay triangulations B = {b i (p i, r i )} a set of balls Del(B) = nerve of Vor(B) Let B τ = {b i (p i, r i ), i = 0,... k}} B : B τ Del(B) b i B τ V (b i ) Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 29 / 47
Weighted VD and DT in the space of spheres h bi : x d+1 = 2p i x p 2 i + r2 i φ(b i ) = (p i, p 2 i r2 i ) = h b i V(B) = h + b 1... h + b n Voronoi Diagram of B duality D(B) = conv ({φ(b 1 ),..., φ(b n )}) Delaunay Complex of B nerve Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 30 / 47
1 Convex Polytopes 2 Voronoi diagrams and Delaunay triangulations 3 Weighted Voronoi diagrams 4 Union of balls 5 Discrete metric spaces Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 31 / 47
Union of balls What is the combinatorial complexity of the boundary of the union U of n balls of R d? Compare with the complexity of the arrangement of the bounding hyperspheres How can we compute U? What is the image of U in the space of spheres? Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 32 / 47
Weighted Voronoi Diagram σ i (x) = (x p i ) 2 r 2 i Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 33 / 47
Restriction of Del(B) to U = b B b U = b B b V (b) and U b = V (b) b. The nerve of C is the restriction of Del(B) to U, i.e. the subcomplex Del U (B) of Del(B) whose faces have a circumcenter in U b, b V (b) is convex and thus contractible C = {b V (b), b B} is a good cover of U The nerve of C is a deformation retract of U homotopy equivalent (Nerve theorem) Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 34 / 47
Interfaces between proteins [Cazals & Janin 2006] Interface antigen-antibody Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 35 / 47
Fonctions distance et modèles de croissance Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 36 / 47
Möbius Diagrams W i = (p i, λ i, µ i ) δ M (x, W i ) = λ i x p i 2 µ i bisectors are hyperspheres (hyperplanes or ) Mob(W i ) = {x, δ(x, σ i ) δ(x, σ j )} Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 37 / 47
Linearization Lemma We can associate to each weighted point W i a hypersphere Σ i of R d+1 so that the faces of the Möbius diagram of the W i are obtained by 1 computing the Laguerre Diagram of the Σ i 2 intersecting this diagram with the paraboloid P 3 projecting vertically the faces of this intersection onto R d Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 38 / 47
Proof λ i (x p i ) 2 µ i λ j (x p j ) 2 µ j (x λ i p i ) 2 + (x 2 + λ i 2 )2 λ 2 i p2 i λ2 i 4 + λ i p 2 i µ i (x λ j p j ) 2 + (x 2 + λ j 2 )2 λ 2 j p2 j λ2 j 4 + λ jp 2 j µ j (X C i ) 2 ρ 2 i (X C j) 2 ρ 2 j where X = (x, x 2 ) R d+1, C i = (λ i p i, λ i 2 ) Rd+1 and ρ 2 i = λ2 i p2 i + λ2 i 4 λ i p 2 i + µ i The Möbius diagram of the doubly weighted points W i is the projection onto R d of the restriction to the paraboloid Q of the Laguerre diagram of the Σ i = B(C i, ρ i ) Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 39 / 47
1 Convex Polytopes 2 Voronoi diagrams and Delaunay triangulations 3 Weighted Voronoi diagrams 4 Union of balls 5 Discrete metric spaces Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 40 / 47
Discrete metric spaces : Witness Complex [de Silva] The Witness Complex L a finite set of points (landmarks) vertices of the complex Wit(L, W ) W a dense sample (witnesses) pseudo circumcenters w Definition 2 Wit(L, W ) () 8 apple 9w 2 W with d(w, p) apple d(w, q) 8p 2 8q 2 L \ Let σ be a (abstract) simplex L : Landmarks with vertices (black dots); in L, theand vertices let of wthe W complex. We say that w is a witness of σw if: Witnesses (blue dots) w p w q p σ and q L \ σ R. Dyer (INRIA) Del(L, M) =Wit(L, W ) Assisi, EuroCG 2012 2 / 10 The witness complex Wit(L, W ) is the complex consisting of all simplexes σ such that for any simplex τ σ, τ has a witness in W Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 41 / 47
Easy consequences of the definition The witness complex can be defined for any metric space and, in particular, for discrete metric spaces If W W, then Wit(L, W ) Wit(L, W ) Del(L) Wit(L, R d ) Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 42 / 47
Identity of Del Ω (L) and Wit(L, R d ) [de Silva 2008] Theorem : Wit(L, W ) Wit(L, R d ) = Del(L) Remarks Faces of all dimensions have to be witnessed Wit(L, W ) is embedded in R d if L is in general position wrt spheres Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 43 / 47
Proof of de Silva s theorem τ = [p 0,..., p k ] is a k-simplex of Wit(L) witnessed by a ball B τ (i.e. B τ L = τ) We prove that τ Del(L) by induction on k Clearly true for k = 0 Hyp. : true for k k 1 B := B τ B σ σ := B τ, l := σ // σ Del(L) by the hyp. c B τ while l + 1 = dim σ < k do σ w τ B the ball centered on [cw] s.t. - σ B, - B witnesses τ - B τ = l + 1 (B witnesses τ) (τ B) τ Del(L) Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 44 / 47
Case of sampled domains : Wit(L, W ) Del(L) W a finite set of points Ω R d Wit(L, W ) Del(L), even if W is a dense sample of Ω a b Vor(a, b) [ab] Wit(L, W ) p W, Vor 2 (a, b) W Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 45 / 47
Relaxed witness complex Alpha-witness Let σ be a simplex with vertices in L. We say that a point w W is an α-witness of σ if w p w q + α p σ and q L \ σ Alpha-relaxed witness complex The α-relaxed witness complex Wit α (L, W ) is the maximal simplicial complex with vertex set L whose simplices have an α-witness in W Wit 0 (L, W ) = Wit(L, W ) Filtration : α β Wit α (L, W ) Wit β (L, W ) Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 46 / 47
Interleaving complexes Lemma Assume that W is ε-dense in Ω and let α 2ε. Then Wit(L, W ) Del Ω (L) Wit α (L, W ) Proof σ : a d-simplex of Del(L), c σ its circumcenter W ε-dense in Ω w W s.t. c σ w ε For any p σ and q L \ σ, we then have p σ and q L \ σ w p c σ p + c σ w c σ q + c σ w w q + 2 c σ w w q + 2ε Computational Geometry and Topology Discrete Geometric Structures J-D. Boissonnat 47 / 47