Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension...

27
1 Géométrie Algorithmique Plan du cours Introduction Arrangements dans le plan Triangulation de polygones Diagrammes de Voronoï Triangulation de Delaunay Recherche/localisation Arbres de partition binaire

Transcript of Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension...

Page 1: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

1

Géométrie Algorithmique

Plan du cours

Introduction

Arrangements dans le plan

Triangulation de polygones

Diagrammes de Voronoï

Triangulation de Delaunay

Recherche/localisation

Arbres de partition binaire

Page 2: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

2

Géométrie Algorithmique

Diagrammes de Voronoï

Diagrammes de Voronoï ou Tessellation de Dirichlet

En dimension 2 / 3Johann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850.

Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908

G.F. Voronoï (1908). "Nouvelles applications des paramètres continus à la théorie des formes quadratiques". Journal für die reine und angewandte Mathematik 134: 198–287.

Page 3: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

3

Géométrie Algorithmique

Diagrammes de Voronoï

Soit P={ p0, p

1, … , p

n-1 } un ensemble de points du plan

Le diagramme de Voronoi Vor(P) est une décomposition du plan en n cellules V( p

i ).

À l'intérieur de la cellule V( pi ), le point le plus proche

appartenant à P est le point pi .

On s'intéresse ici à la distance euclidienne entre deux points :

Un point q est dans la cellule correspondant au point p

i ssi

Dist p , q= p x−q x2 p y−q y

2

Dist q , piDist q , p j ∀ p j∈P , j≠i

Page 4: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

4

Géométrie Algorithmique

Diagrammes de Voronoï

Structure du diagramme de Voronoï Le bisecteur d'une paire de point p et q délimite le plan en deux demi

plans Soit h(p,q) le demi plan ouvert contenant p On a alors

et

V( pi) est l'intersection de n-1 demi-plans, une région polygonale ouverte

éventuellement non bornée, limitée par au plus n-1 arêtes et n-1 sommets. Celle ci est nécessairement convexe.

p

q

r∈h p , q ssi Dist r , pDist r , q

h(p,q)

V pi= ∩j≠i h pi , p j

v(pi)

Vor(P) est

a) soit un ensemble délimité par n-1 droites parallèles

b) soit un ensemble connecté de segments et/ou de demi-droites.

Page 5: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

5

Géométrie Algorithmique

Diagrammes de Voronoï

Démonstration Cas a) évident Cas b) : Considérer qu'une arête a délimitant

deux cellules V(pi) et V(p

j) est une droite : elle

sépare le plan en deux parties. Soit un troisième point p

k non colinéaire avec p

ip

j :

nécessairement l'arête a' délimitant V(pj) et

V(pk) n'est pas parallèle à a ; et donc

l'intersecte. La partie de a qui est dans h(pk,p

j)

ne peut être à la frontière de V(pj) ; car elle est

plus proche de pk que de p

j .

Donc les arêtes du diagramme sont soit des demi-droites, soit des segments de droite

n-1 droites parallèles

pi

pj

pk

a

a'

Page 6: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

6

Géométrie Algorithmique

Diagrammes de Voronoï

Reste à prouver que le diagramme de Voronoi forme un graphe connecté.

Admettons que ce n'est pas le cas. Alors au moins une cellule de Voronoï séparerait le plan en deux parties. Comme les cellules de Voronoï sont convexes, ses frontières sont nécessairement des droites « complètes », une contradiction avec ce qui précède.

Page 7: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

7

Géométrie Algorithmique

Diagrammes de Voronoï

Complexité du diagramme de VoronoïQuel est le nombre de cellules, d'arêtes, de sommets ?

Il y a n sites dans P ; et au pire, une cellule peut avoir n-1 arrêtes et sommets. En tout, la complexité de Vor(P) pourrait être quadratique. En fait, ce n'est pas le cas:

Formule d'Euler pour un graphe plan (y compris la face « infinie ») : s – a + f = 2Ici, on considère un sommet supplémentaire à l'infini ; on a doncn

s +1 – n

a + n = 2 → 2n

s – 2n

a + 2n = 2

Chaque arrête a deux sommets ; la somme des degrés de chaque sommet donne le doubledu nombre d'arêtes. En outre, le degréest au minimum de 3.

s

2 na≥3n s12ns−3ns12 n≥2 ns≤2n−5

2n−51−nan≥2 na≤3n−6

Page 8: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

8

Géométrie Algorithmique

Diagrammes de Voronoï

Le nombre de bissectrices est quadratique, mais seules une partie (nombre linéaire en fonction de n) fait effectivement partie du diagramme de Voronoï.

Lesquelles ?

On définit CP(q) comme étant le plus grand cercle de centre q et ne

contenant aucun des points pi de P dans son intérieur. Il possède au

moins un point de P sur son pourtour.

Alors :

Un point q est un sommet de Vor(P) ssi CP(q) possède au moins trois

points de P sur son pourtour. Une bissectrice des points p

i et p

j existe sous forme d'une arrête dans

Vor(P) ssi il y a un point q sur celle-ci tel que CP(q) possède p

i et p

j sur

son pourtour mais aucun autre point de P. q

CP(q)

Page 9: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

9

Géométrie Algorithmique

Diagrammes de Voronoï

Démonstration 3 points ou plus sur le bord → Centre du cercle

est un sommet 2 sommets → Centre du cercle sur une arête du

DDV 1 seul sommet → Centre situé dans une cellule

de Voronoï

Page 10: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

10

Géométrie Algorithmique

Diagrammes de Voronoï

Calcul du diagramme de voronoï Pour chaque cellule V(p

i), calculer l'intersection des demi-plans

h(pi,p

j) avec j≠i en utilisant l'algorithme du cours n°2 (arrangements

dans le plan)

Complexité : en nlog n pour chaque cellule (on ne sait pas à l'avance quelles intersections vont effectivement intervenir dans la forme finale de la cellule)

Il y a n cellules → n²log n en tout. Alors que la complexité de la décomposition est en O(n)...

Peut on faire mieux → oui ! Optimum : Ω(nlog n) Cf suite du cours.

Page 11: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

11

Géométrie Algorithmique

Triangulation de Delaunay

Page 12: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

12

Géométrie Algorithmique

Triangulation de Delaunay

Boris Nicolaïevich Delaunay (Delone)(1890 - 1980)

Fut un étudiant de Voronoï Développe une étude théorique des

triangulation portant son nomdans les années 1930

B. Delaunay: Sur la sphère vide, Izvestia Akademii Nauk SSSR, Otdelenie Matematicheskikh i Estestvennykh Nauk, 7:793–800, 1934

Page 13: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

13

Géométrie Algorithmique

Triangulation de Delaunay

Problématique de l'interpolation

À droite, l'interpolation est faite sur des échantillons éloignés (géométriquement parlant)

Il existe donc des triangulations « meilleures » que d'autres. La triangulation de Delaunay est une triangulation parmi d'autres, elle possède des caractéristiques intéressantes (justement lorsque la triangulation sert de base pour l'interpolation )

3

0

1

5

2

1

7

8

80

79

91

8975

85

90 (valeur raisonnable)

3

0

1

5

2

1

7

8

80

79

91

8975

85

3 (manifestement faux)

Page 14: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

14

Géométrie Algorithmique

Triangulation de Delaunay

Caractéristiques d'une triangulation Soit P un ensemble de sommets {p

0 … p

n-1}, non tous colinéaires

On note par S une subdivision maximale du plan telle que aucune nouvelle arête ne peut relier deux sommets sans intersecter une arête existante dans S.

Une triangulation de P est précisément cette subdivision S pour laquelle les sommets de la subdivision sont ceux de P.

Les cellules sont bien triangulaires, car on a vu que tout polygone peut être triangulé avec un nombre constant de triangles.

Complexité de la triangulation (toute triangulation)

Soit k le nombre de points de P situés sur l'enveloppe convexe de P. Alors toute triangulation de P a 2n–k–2 triangles, et 3n–k–3 arêtes.

Page 15: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

15

Géométrie Algorithmique

Triangulation de Delaunay

Caractéristiques d'une triangulation Soit k le nombre de points de P situés sur l'enveloppe convexe de P.

Alors toute triangulation de P a 2n–k–2 triangles, et 3n–k–3 arêtes. Preuve : Soit m le nombre de triangles. Dans le graphe plan, on a

donc nf=m+1 faces en comptant la face infinie. Chaque triangle a

trois arêtes, et la face infinie en a k. Chaque arête est incidente à exactement deux faces (y compris la face infinie)

Le nombre total d'arêtes est donc na=(3m+k)/2

La formule d'Euler doit être vérifiée (il s'agit d'un graphe plan)

n–na+n

f= 2

En remplaçant na,et n

f on trouve m=2n–k–2 et donc n

a=3n–k–3 .

Bornes valables en 2D. En 3D, ces bornes sont quadratiques.

Page 16: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

16

Géométrie Algorithmique

Triangulation de Delaunay

Caractéristiques d'une triangulation Cas 3D : bornes quadratiques

En tout il y a 2n sommets, et (n–1)² cellules (tétraèdres)

n sommets

n sommets

Page 17: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

17

Géométrie Algorithmique

Triangulation de Delaunay

Caractéristiques d'une triangulation Soit T la triangulation, supposons qu'elle est formée de m triangles

Considérons les 3m angles aux sommets des triangles de T classés par ordre croissant.

Soit 0,

1,... ,

3m-1 la séquence d'angles. On a ici

i ≤

j pour i < j.

On note A(T) le vecteur des angles dans cet ordre. Soit T' une autre triangulation de P (donc avec autant de triangles),

et soit A(T') son vecteur des angles.

On dit que A(T) > A(T') (plus grand lexicographiquement) si :

j=

j' pour j < i < 3m, et

i >

i'.

Une triangulation T est dite angulairement optimale si pour toute autre triangulation T' on a A(T) ≥ A(T')

Page 18: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

18

Géométrie Algorithmique

Triangulation de Delaunay

Théorème de Thalès (l'autre ...) Soit une ligne l intersectant un cercle en deux

points a et b. Soient r un point intérieur au cercle, p et q deux points sur le cercle et s un point extérieur

Alors Preuve : par la construction du lieu des points q tels que

(cercle)

Ca

b

s

r

q

p

l

arbapb=aqbasb

aqb=cte

Page 19: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

19

Géométrie Algorithmique

Triangulation de Delaunay

Retournement d'arête Considérons une arête a = p

ip

j d'une triangulation T de P. Si cette

arête est interne , alors elle est voisine de deux triangles pip

jp

k et

pjp

ip

l . Si ces triangles forment un polygone convexe ; alors on peut

obtenir une nouvelle triangulation T' en retournant l'arête a. La seule différence dans le vecteur angle est que les six angles

0 ....

6 de A(T) sont remplacés par

0' ....

6' de A(T').

On appelle a = pip

j une arête illégale si

En d'autre termes, une arête est illégale si on peut améliorer l'angle minimal en effectuant un retournement d'arête.

pi

pj

pk

pl

a1

2

3

4

5

6

pi

pj

pk

pl

a'

1'

2'

3'

4'

5'

6'

mini≤i≤6

i mini≤i≤6

i '

Page 20: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

20

Géométrie Algorithmique

Triangulation de Delaunay

Retournement d'arête. Soit T une triangulation avec une arête illégale a. Soit T' la

triangulation obtenue en retournant l'arête a. Alors A(T') ≥ A(T) En fait il n'est pas nécessaire de calculer tous les 12 angles pour

vérifier qu'une arête est illégale, grâce au second théorème de Thalès. Soit une arête p

ip

j incidente aux triangles p

ip

jp

k et p

ip

jp

l , et C

le cercle passant par pip

jp

k. L'arête p

ipj est illégale si p

l est à

l'intérieur du cercle C. De plus, si pi, p

j , p

k et p

l forment

un quadrilatère convexe, et ne sont pas situés sur un même cercle, alors seulement une des deux arêtes p

ip

j ou p

kp

l est illégale.

pi

pj

pk

pl

a

C

Page 21: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

21

Géométrie Algorithmique

Triangulation de Delaunay

Triangulation légale C'est une triangulation pour laquelle toutes les arêtes sont légales. L'algorithme pour obtenir une telle triangulation légale à partir de

n'importe quelle triangulation est le suivant :

Cette triangulation existe car il est toujours possible d'inverser une arête non légale pour la rendre légale (et améliorer A(T) au passage). Chaque inversion d'arête améliore A(T) ; donc on n'obtient jamais deux fois la même triangulation (pas de cycles), et le nombre de triangulations possibles, bien que très élevé , est fini.

TriangulationLegale(T)En entrée : une triangulation quelconque T de PEn sortie : une triangulation légale de P { Tant que T contient une arête illégale p

ip

j

{ Soit p

ip

jp

k et p

jp

ip

l les deux triangles adjacents à p

ip

j

supprimer pip

j et ajouter p

kp

l

} Renvoyer T.}

Page 22: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

22

Géométrie Algorithmique

Triangulation de Delaunay

Graphe de Delaunay Soit G le graphe dual du diagramme de Voronoï Vor(P)

Les sommets de G sont les cellules de Vor(P) ; les cellules de G sont les sommets de Vor(P) . Un arc relie deux sommets de G si les deux cellules correspondantes partagent une arête de Vor(P).

Soit DG le graphe de Delaunay, soit G pour lequel la position des sommets est fixée par la position des points de P. Les arêtes sont des segments de droite reliant ces points.

G

Vor(P)

DG

Vor(P)

Page 23: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

23

Géométrie Algorithmique

Triangulation de Delaunay

Propriétés du graphe de Delaunay Si P est un ensemble de points du plan, alors il s'agit d'un graphe

plan – i.e. aucune des arêtes n'en intersecte une autre.

Preuve : à partir des propriétés des sommets et des arêtes de Vor(P) :

Une bissectrice des points pi et p

j existe sous forme d'une arête dans

Vor(P) ssi il y a un point q sur celle-ci tel que CP(q) possède p

i et p

j sur

son pourtour mais aucun autre point de P.

Dans le cas du graphe de Delaunay, on peut reformuler

Une arête pip

j fait partie de DG(P) ssi il existe un cercle passant par p

i et

pj et ne contenant aucun autre point p

k de P

Il est donc évident que deux arêtes de DG(P) nes'intersectent pas car dans le cas contraire,au moins un des points (sur 4) est situé dans le cercle passant par p

ip

j.

q

CP(q)

Vor(P)

pi

pj

Page 24: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

24

Géométrie Algorithmique

Triangulation de Delaunay

Propriétés du graphe de DelaunayReformulation des propriétés de Vor(P)

Trois points pi, p

j, p

k de P sont sommets d'une même cellule de DG(P) si

le cercle passant par pi,p

j,p

k ne contient aucun autre point de P

Deux points pi,p

j de P forment une arête de DG(P) si et seulement si il

existe un cercle passant par pi et p

j tel que son intérieur ne contient pas

d'autre point de P

Ceci implique le critère de Delaunay (sous réserve de la généralité des positions des p

i) :

T est une triangulation de Delaunay de P ssi le cercle circonscrit de tout triangle de T ne contient aucun autre point de P en son intérieur.

Page 25: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

25

Géométrie Algorithmique

Triangulation de Delaunay

Propriétés du graphe de Delaunay Question des configurations non générales de p

i (k points

cocycliques) Un sommet du DDV est de valence k Le graphe de Delaunay contient des faces à k cotés (convexes!). On peut trianguler ces cellules arbitrairement (tous les points étant

cocycliques, tous les triangles créés respecteront le critère de Delaunay)

En définitive, on appelle triangulation de Delaunay toute triangulation vérifiant le critère de Delaunay (dit de la sphère vide)- celle ci n'est pas nécessairement unique.

Vor(P)

s

Page 26: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

26

Géométrie Algorithmique

Triangulation de Delaunay

Propriétés de la triangulation de Delaunay Une triangulation T de P est légale si et seulement si c'est une

triangulation de Delaunay

Preuve : il est évident qu'une triangulation de Delaunay est légale (cf p 20). Toute triangulation légale est elle de Delaunay ?

Oui - preuve par contradiction

Supposons que T soit une triangulation légale, mais non Delaunay. Alors elle contient un triangle p

ip

jp

k dont le cercle circonscrit contient un

autre point pl de la triangulation. On choisit ici le triangle et le point tels

que l'angle est maximal.

Soit e l'arrête telle que plp

jp

i n'intersecte pas p

ip

jp

k, et elle appartient à T,

donc elle est légale. pm n'est donc pas dans le cercle circonscrit à

pip

jp

k .Le cercle circonscrit à p

mp

jp

i contient p

l car il contient l'arc du

cercle circonscrit à pip

jp

k situé du même côté de e que p

l. Posons que

pip

m soit l'arête a telle que p

mp

jp

i n'intersecte pas p

lp

mp

i. Alors

par le second théorème de Thalès. Ceci contredit le choix de pl, donc p

l

n'existe pas : nécessairement la triangulation est de Delaunay.

pl

pj

pk p

i

pm

e

a p i p l pm> pi p l p j

p i p l p j

Page 27: Plan du cours - uliege.beJohann Peter Gustav Lejeune Dirichlet (1805-1859) ~ 1850. Dimension quelconque : Georgy Feodosevich Voronoy (1868-1908) ~ 1908 G.F. Voronoï (1908). "Nouvelles

27

Géométrie Algorithmique

Triangulation de Delaunay

Propriétés de la triangulation de Delaunay

Une triangulation de Delaunay de P est angulairement optimale , i.e. elle maximise l'angle minimum parmi toutes les triangulations de P . Toute triangulation angulairement optimale de P est une triangulation de Delaunay de P.