• Aucun résultat trouvé

Algorithmique géométrique

N/A
N/A
Protected

Academic year: 2022

Partager "Algorithmique géométrique"

Copied!
50
0
0

Texte intégral

(1)

Algorithmique géométrique

M. Zvonkine

27 avril 2006

(2)

2

(3)

Table des matières

1 Introduction 5

1.1 Historique . . . 5

1.1.1 Apparition de la géométrie . . . 5

1.1.2 Construction à la régle et au compas . . . 5

1.2 problème modernes . . . 6

1.2.1 Enveloppe convexe . . . 6

1.2.2 Localisation de points . . . 6

1.2.3 Section d'un polytope . . . 6

1.2.4 Triangulation . . . 7

1.2.5 Diagramme de Voronoï . . . 7

1.2.6 Eliminaion de lignes invisibles. . . 7

1.3 Les cas particuliers . . . 7

2 Equation de la ligne droite, du plan, . . . 9

2.1 La ligne droite . . . 9

2.1.1 La nature de a, b. . . 9

2.1.2 Pour trouver c . . . 10

2.1.3 Commentaire . . . 10

2.2 Equation du plan . . . 10

2.3 Généralisation : équation de l'hyperplan . . . 11

2.4 Ligne droite dans R3 . . . 11

3 Barycentre 13 3.1 Le barycentre de deux points . . . 13

3.1.1 Dénition . . . 13

3.1.2 Régle du levier . . . 13

3.2 Le barycentre de n points . . . 14

3.2.1 Dénition . . . 14

3.2.2 Proposition . . . 14

3.2.3 Propriété de groupement . . . 14

3.2.4 Conséquences . . . 15

3.2.5 Barycentre et transformation anes . . . 16

4 Convexité 19 4.1 Ensemble convexe . . . 19

4.1.1 Denition . . . 19

4.1.2 Exemple 1 : demi-plan . . . 19

4.1.3 Exemple2 : disque . . . 19 3

(4)

4.1.4 Proposition . . . 20

4.2 Enveloppe convexe . . . 20

4.2.1 Dénition . . . 20

4.2.2 Algorithmes . . . 20

5 Polytopes 23 5.1 Dénitions. . . 23

5.1.1 Dénition . . . 23

5.1.2 Dénition équivalente . . . 23

5.1.3 Terminologie . . . 24

5.2 Représentation . . . 24

5.3 Formule d'Euler. . . 25

5.3.1 Constatations de Descartes(d=3) . . . 25

5.3.2 Théorème : Formule d'Euler. . . 25

5.4 Polytopes cycliques . . . 26

5.5 Transformation polaire et dualité de polytope . . . 28

5.5.1 Présentation de notre but . . . 28

5.5.2 Construction . . . 29

5.5.3 Construction de polytope en utilisant la formule . . . 32

5.6 Polytopes simplicial et simples . . . 32

5.6.1 Équations de Dehn-Sommerville . . . 33

6 Cartes 35 6.1 Dénitions. . . 35

6.2 Algorithme pour l'enveloppe convexe dansR3 . . . 40

7 Diagramme de Voronoï et Complexe de Delaunay 45 8 Annexes 49 8.1 Le produit vectoriel . . . 49

8.2 Paraboloïde . . . 49

(5)

Chapitre 1

Introduction

1.1 Historique

1.1.1 Apparition de la géométrie

chez les égyptiens

1.1.2 Construction à la régle et au compas

Opérations élémentaires

1. Tracer la droite passant par deux points donnés.

2. Tracer le cercle de centre et de rayon donnés.

3. Trouver l'intersection de deux lignes tracées.

4. Choisir un point arbitraire dans un domaine donné.

3 problèmes classiques

Quadrature du cercle : construire un carré dont l'aire est égale à celle du cercle donné

Trisection d'un angle : diviser un angle en trois parties égales Doublement du cube : construire√3

2

Au vingtième siécle, on a montré que tout ça est impossible.

Gauss : polygone régulier à 17 côtés.

5

(6)

6 CHAPITRE 1. INTRODUCTION

1.2 Quelques exemples de problémes modernes de la géométrie algorithmique

1.2.1 Enveloppe convexe

Instance : un nuage de points dansRd. On cherche leur enveloppe convexe (le plus petit ensemble convexe qui contient tous les points).

r r

r

r

r r r

r r

r r

XXX XXX

XX

XX XX

1.2.2 Localisation de points

Instance : un graphe planaire dessiné sur le plan, avec ses arêtes segments droits et un point.

On cherche la région du graphe à la- quelle appartient ce point.

r r r r

r

r r

r

r

r u

A A A A A A

@@

@@ l

l ll

, , ,,

H HH

HH H

Un cas très particulier Il y a un triangle est un point.

Ce point se trouve-t-il à l'intérieur ou à

l'extérieur ? P

PP B

B B B q

1.2.3 Section d'un polytope

Instance : un polytope et un plan qui coupe ce polytope

On cherche : leur intersection

A

@ A

@

A

(7)

1.3. LES CAS PARTICULIERS 7

1.2.4 Triangulation

Instance : un nuage de points

On cherche : une triangulation dont ces

points servent de sommets. q

q qq qq q qq

@

@ BB PPBB

H

1.2.5 Diagramme de Voronoï

Les points des segments sont équidis-

tants des points noirs qui les entourent. q

q q q

q q

q

A A A A A

A

1.2.6 Eliminaion de lignes invisibles

1.3 Les cas particuliers

Il y a une multitude de cas particuliers Localisation :

PP P B

B B B r

PP P B

B B B r

PP P B

B B B r

PP P B

B B B r

Intersection de deux segments

r rr HHr

r

r r

@

@@r r

r r

@@r r

r

@@r r

r r r

En cours : modéle irréaliste et idéaliste (Shub-Smale) R; +,−,×

On va essayer d'éviter la division

Eviter encore davantage les autres fonctions :a <√

b→a2< b Les opérations les plus contestées :<,>=

Exemple 1

q3

5 + 2− 3 q√

5−2 = 1

(8)

8 CHAPITRE 1. INTRODUCTION On peut deviner que

1 +√ 5 2

3

= 2 +√ 5

Exemple 2 1 10

3

q

eπ163−744 = 64031.99999999999999999999999999999999. . . Exemple 3

1 105

+∞

X

n=−∞

exp −n2

1010 !

6=π mais les premiers 42 milliards de chires sont corrects.

(9)

Chapitre 2

Equation de la ligne droite, du plan, . . .

2.1 La ligne droite

Une équation d'une ligne droite sur un plan est ax+by+c = 0. Atten- tion,kax+kby+kc= 0est la même ligne. Les coecients sont dénis à une proportionnalité près.

2.1.1 La nature de a, b

Tracer une ligne qui passe par deux points donnés (trouver son équation) A(x1, y1)

B(x2, y2)

ax1+by1+c= 0 ax2+by2+c= 0

soustraction (x2−x1)a+ (y2−y1)b= 0

−−→

AB= (x2−x1, y2−y1) r

r

(x1, y1) A

(x2, y2) B

Si on prend le vecteur~k= (a, b), on obtient que le produit scalaire~k·−−→ AB= a(x2−x1) +b(y2−y1) = 0

Conclusion :~kest orthogonal à−−→

AB, c'est à dire à la ligne recherchée.

a(x2−x1) +b(y2−y1) = 0 . Si on prend a =y2−y1 et b =−(x2−x1), l'équation est bien vériée.

ax+by+c= 0→(y2−y1)x−(x2−x1)y+c= 0 Il reste à déterminer c.

(y2−y1)x−(x2−x1)y=

x y

x2−x1 y2−y1

x y

x2−x1 y2−y1

+c= 0

9

(10)

10 CHAPITRE 2. EQUATION DE LA LIGNE DROITE, DU PLAN, . . .

2.1.2 Pour trouver c

x y

x2−x1 y2−y1

=constante(=−c) =

x1 y1 x2−x1 y2−y1

=

x1 y1 x2 y2

x y

x2−x1 y2−y1

x1 y1

x2 y2

= 0

2.1.3 Commentaire

r

r

r r

r1

B B B BB X

X(x, y)

A B

O −−→ AB

−−→OX= (x, y)

x y

x2−x1 y2−y1

=det(−−→

OX·−−→ AB)

= aire du parallélogramme

L'aire de tous les parallélogrammes ainsi obtenus est constante (en eet, la hauteur ne change pas).

2.2 Equation du plan

ax+by+cz+d= 0 A(x1, y1, z1)

B(x2, y2, z2) C(x3, y3, z3)

Tracer un plan qui passe parA,B etC. ax1+by1+cz1+d= 0

ax2+by2+cz2+d= 0 ax3+by3+cz3+d= 0

a(x2−x1) +b(y2−y1) +c(z2−z1) = 0 a(x3−x1) +b(y3−y1) +c(z3−z1) = 0

−−→

AB= (x2−x1, y2−y1, z2−z1)

−→AC = (x3−x1, y3−y1, z3−z1)

~k= (a, b, c)

-

6

A B

C

~k

~k·−−→ AB= 0

~k·−→

AC= 0

Donc ~k⊥−−→ AB

~k⊥−→

AC )

~k⊥plan On a −−→

AB,−→

AC, on cherche~ktel que~k⊥−−→ AB,−→

AC.

~k=−−→ AB×−→

AC (produit vectoriel)

(11)

2.3. GÉNÉRALISATION : ÉQUATION DE L'HYPERPLAN 11 Géométriquement, le vecteur~k est orthogonal au planΠ (qui passe parA,B, C).

ax+by+cz=

x y z

x2−x1 y2−y1 z2−z1

x3−x1 y3−y1 z3−z1

=constante=−d=

−d=

x1 y1 z1

x2−x1 y2−y1 z2−z1

x3−x1 y3−y1 z3−z1

=

x1 y1 z1

x2 y2 z2

x3 y3 z3

det(−→

OA,−−→ AB,−→

AC) =det(−→

OA,−−→ OB,−−→

OC)

Question à réexion : le déterminant est le volume du parallélépipède formé par ses vecteurs-lignes (ou colonnes)

Pourquoi le volume det(−→

OA,−−→ AB,−→

AC)reste constant ? Si les pointsA,B,C sont alignés alors :

(a) géométriquement, il y a une innité de solutions.

(b) algébriquement, on obtient−→

AC proportionnel à−→

AC et donc det(−→

OA,−−→ AB,−→

AC) = 0 =det(−→

OA,−−→ OB,−−→

OC) = 0

2.3 Généralisation : équation de l'hyperplan

Proposition

SoientnpointsA1, A2, . . . , An dans l'espaceRn Supposons que les vecteurs −−−→

A1A2, . . . ,−−−→

A1An soient linéairement indépen- dants.

Alors il existe un seul hyperplan de dimensionn−1qui passe par ces points et son équation est

det(−−→

OX,−−−→

A1A2, . . . ,−−−→

A1An=det(−−→

OA1,−−→

OA2, . . . ,−−→

OAn)

=det(−−→

OA1,−−−→

A1A2, . . . ,−−−→

A1An) Remarque : aucune division !

2.4 Ligne droite dans R

3

On ne peut pas l'exprimer par une équation linéaire : il en faut deux. Encore pire, on peut choisir ces deux équations de plusieurs manières diérentes.

Soient deux pointsAetB, nous voulons écrire deux équations de deux plans dont l'intersection est la ligne(AB).

Une stratégie possible :

1. Tracer un plan orthogonal au vecteur−−→

AB et qui passe parA. 2. Choisir deux vecteurs−→

AC et−−→

ADsur ce plan (non colinéaires).

3. Ecrire deux équations des plans ortogonaux à−→

AC et−−→

ADqui passent par A.

Une autre stratégie :

1. choisir deux pointsC etD.

2. tracer deux plans passant parA,B, Cet parA, B,D

(12)

12 CHAPITRE 2. EQUATION DE LA LIGNE DROITE, DU PLAN, . . . Une autre approche : représenter la ligne d'une manière paramétrique.

1ercas : O, A, B sont alignés (les vecteurs −→

OA et −−→

OB sont proportionnels) :

−−→OX =t−→

OA (t∈R)

2ecas :O,A,B ne sont pas alignés.

Proposition

Un pointX appartient à l ligne(AB)⇔

−−→OX=a−→

OA+b−−→

OB a+b= 1

=t−→

OA+ (1−t)−−→ OB Preuve

1.−−→

OX=a−→

OA+b−−→ OB

=−→

OA−(1−a)−→

OA+b−−→ OB

=−→

OA−b−→

OA+b−−→ OB

=−→

OA+b(−−→ OB−−→

OA)

=−→

OA+b−−→ AB

2.Soit X ∈ (AB) et donc −−→

AX=b−−→ AB alors−−→

OX=−→

OA+−−→

AX

=−→

OA+b−−→ AB

=−→

OA+b(−−→ OB−−→

OA)

=(1−b)−→

OA+b−−→ OB Le vecteur −−→

OX peut être toujours représenté sous la forme

−−→OX=a−→

OA+b−−→ OB

=−→

OA+b−−→

AB oùb∈Reta+b= 1

Si les points A,B ne sont pas alignés avecO, la première représentation est déterminée de manière unique.

X ∈[AB]⇔0≤a, b≤1

(13)

Chapitre 3

Barycentre : centre de masse : centroïde

3.1 Le barycentre de deux points

3.1.1 Dénition

Soient(A1, m1)et (A2, m2)deux points matériels.

Alors leur barycentre est un point matériel (M, m)tel que m=m1+m2

m−−→

OM =m1

−−→OA1+m2

−−→OA2

Autrement dit,

−−→OM = m1

m1+m2

−−→OA1+ m2

m1+m2

−−→OA2

Remarque :

m1

m1+m2 + m2

m1+m2 = 1

Si les deux masses sont positives alors le point M se trouve à l'intérieur du segment[AB]

3.1.2 Régle du levier

m1|A1M|=m2|A2M|

Preuve

−−−→A1M = m2

m1+m2

−−−→A1A2

m1

−−−→A1M = m1·m2

m1+m2

−−−→A1A2

m2−−−→

A2M = m2·m1

m1+m2

−−−→A2A1

13

(14)

14 CHAPITRE 3. BARYCENTRE

3.2 Le barycentre de n points

3.2.1 Dénition

Soient npoints matériels(A1, m1),(A2, m2), . . . ,(An, mn). Alors leut barycentre est un point matériel (M, m)tel que

m=

n

X

i=1

mi

m−−→

OM =

n

X

i=1

mi

−−→OAi

3.2.2 Proposition

Le barycentre ne dépend pas du choix de l'origine O.

Preuve

SoitO0 une autre origine. Alors m−−−→

O0M =m(−−→

O0O+−−→

OM) m1

−−−→O0A1+m2

−−−→O0A2+. . .+mn

−−−→O0An

= m1(−−→

O0O+−−→

OA1) +m2(−−→

O0O+−−→

OA2) +. . .+mn(−−→

O0O+−−→

OAn)

= m1

−−→O0O+m1

−−→OA1+m2

−−→O0O+m2

−−→OA2+. . .+mn

−−→O0O+mn

−−→OAn

= (m1+m2+. . .+mn)−−→

O0O+m1

−−→OA1+m2

−−→OA2+. . .+mn

−−→OAn

= m−−→

O0O+m−−→

OM

= m(−−→

O0O+−−→

OM)

= m−−−→ O0M

3.2.3 Propriété de groupement

Si on choisi un sous-ensemble des points matériels et si on le remplace par leur barycentre, alors le barycentre global de l'ensemble tout entier ne change pas. On veut regrouper les pointsA1, . . . , Ak

(m1

−−→OA1+. . .+mk

−−→OAk) +mk+1

−−−−→

OAk+1+. . .+mn

−−→OAn= ((m1+. . .+mk) + mk+1+. . .+mn)−−→

OM m1−−→

OA1+. . .+mk−−→

OAk = (m1+. . .+mk)−−−→ OM0 L'addition des vecteurs est associative !

(15)

3.2. LE BARYCENTRE DE N POINTS 15

3.2.4 Quelques conséquences géométrique de la propriété du groupement

Médianes d'un triangle

Théorème de Ceva

Soit un triangle ABC et les points A1, B1, C1 respectivement sur les seg- ments[BC], [CA],[AB]. Alors les segments AA1, BB1, CC1 se coupent dans un point si et seulement si

AC1 C1B ·BA1

A1C ·CB1 B1A = 1

Preuve

AC1

C1B=yx

BA1

A1C=Zy

CB1 B1A=xz



 y x·z

y·x z = 1

Théorème de Menalaüs

Les pointsA1,B1,C1 sont alignés si et seulement si

−−→AC1

−−→C1B ·

−−→BA1

−−→A1C ·

−−→CB1

−−→B1A =−1

(16)

16 CHAPITRE 3. BARYCENTRE

Tétraèdre

3.2.5 Barycentre et transformation anes

Théorème

Le barycentre est invariant par rapport aux transformations anes.

(17)

3.2. LE BARYCENTRE DE N POINTS 17 Transformation ane :X →Y tel que

−−→

OY =P−−→

OX+−−→

OB oùP est une transformation linéaire (une matrice) On envoie tous les vecteurs −−→

OAi vers les vecteurs −−→

OAi =P−−→

OAi où P est une opération linéaire (une matrive) ; les masses mi restent inchangées. Alors si(M, m)est le barycentre des points (A1, m1), . . . ,(An, mn)et (M0, m)est le barycentre des points(A01, m1), . . . ,(A0n, mn)on a−−−→

OM0=P−−→

OM Preuve

m1

−−−−−−−−−−−−−−−→

OA01+. . .+mn

−−→OA0n=m1·P·−−→

OA1+. . .+mn·P·−−→

OAn

=P·(m1−−→

OA1+. . .+mn−−→

OAn)par linéarité

=P·m·−−→

OM avecm=m1+. . .+mn

=m·P·−−→

OM

=m−−−→ OM0

Pour la translation, il existe une preuve similaire.

Transformations linéaires

rotation autour de l'origine dansR2

6

-

−→ 6 -

(diérent de l'homotétie car on ne change qu'une variable)

6

-

−→ 6 -

dansR3, rotation autour d'une droite, autour d'un axe.

dansR4, rotation autour d'un plan.

(18)
(19)

Chapitre 4

Convexité

4.1 Ensemble convexe

4.1.1 Denition

Un ensemble est convexe si avec chaque couple de points , il contient le segment dont les extrémités sont ces points.

Exemple d'un esemble non convexe

Les extrémités appartiennent à l'ensemble, le segment tout en- tier non

4.1.2 Exemple 1 : demi-plan

Un demi-plan est un ensemble convexe.

Soit un demi-plan ax+by+c≥0, et soient deux points de ce demi-plan : A(x1, y1)etB(x2, y2)

Soit un point C(x, y)appartenant au segment[AB].

On a alorsx=tx1+ (1−t)x2et y=ty1+ (1−t)y2 où0≤t≤1 Alors

ax+by+c=a(tx1+ (1−t)x2) +b(ty1+ (1−t)y2) +tc+ (1−t)c

=atx1+bty1+tc+a(1−t)x2+b(1−t)y2+ (1−t)c

=t(≥) + (1−t)(≥) ≥0

4.1.3 Exemple2 : disque

Le disque unité {(x, y) :x2+y2≤1}est convexe.

On a x21+y12≤1etx22+y22≤1 x=tx1+ (1−t)x2

19

(20)

20 CHAPITRE 4. CONVEXITÉ x=tx1+ (1−t)x2

x2+y2 =t2x21+ 2t(1−t)x1x2+ (1−t)2x22+t2y12+ 2t(1−t)y1y2+ (1−t)2y22

=t2(x21+y21) + 2t(1−t)(x1x2+y1y2) + (1−t)2(x22+y22)

≤t2+ 2t(1−t)(x1x2+y1y2) + (1−t)2

≤t2+ (1−t)2+ 2t(1−t)(inégalité de Cauchy :x1x2+y1y2≤p

x21+y12·p

x22+y22)

= (t+ (1−t))2= 1

4.1.4 Proposition

L'intersection d'une famille d'ensemble convexe est convexe.

Preuve

Soient des ensemblesX1, X2, . . .dont l'intersection X =\

i∈I

Xi

contient deux pointsA etB.

Ceci veut dire que tout ensembleXicontient AetB.

Alors tout ensembleXi contient le segment[AB](car il est convexe).

Alors leur intersection

X =\

i∈I

Xi

aussi contient[AB].

4.2 Enveloppe convexe

4.2.1 Dénition

Soit un ensembleA. L'ensemble convexe deA, notéeconv(A)est l'intersec- tion de tous les ensembles contenantA.

Forcément, c'est le plus petit (par inclusion) ensemble convexe contenantA. Exemple

Soient trois points A, B, C dansR2.

Le triangle (rempli) est intersection de 3 demi-plans.

Dans R3, on a un tétraédre.

4.2.2 Algorithmes

Enveloppe convexe d'un ensemble ni de points dans R2 : un algo- rithme incrémental

Soit un ensemble de pointsA1, A2, . . . , An∈R2

1. On trie les points selon leurs abcisses ; pour des abcisses égales, on les trie selon leur ordonnées. Complexité :Θ(nlogn)

La partie qui nous reste sera de complexité linéaire

(21)

4.2. ENVELOPPE CONVEXE 21 2. Supposons que nous avons déjà construitconv(A1, . . . , Ak).

Une liste circulaire doublement chaînée.Ak est le dernier point ajouté à l'enveloppe. Ak+1 est le point suivant dans l'ordre.

Le point Ak est visible depuis Ak+1.

On remplace dans la liste circulaire :Ak−→AkAk+1Ak.

3. On recule dans la listeAiAkAk+1 et on examine dans quel sens on tourne si on tourne à droite, on élimineAk de la liste :AiAkAk+1−→AiAk+1

4. On va en avant deAk+1

si on tourne à droite :Ak+1AkAj−→Ak+1Aj Preuve de la complexité

L'algorithme de construction de l'enveloppe convexe de points surR2 est de complexité O(nlogn) mais seule la partie de l'étape de tri posséde cette com- plexité, les étapes suivantes sont de complexité linéaire.

Coût amorti d'un point

Armation : on visite chaque point au plus deux fois la première fois quand on l'ajoute :O(1)

la deuxième fois quand on l'enléve (si on l'enléve) npoints⇒O(n)opérations.

Comment vérier si on tourne à gauhe ou à droite ?

q

A:q B

qC

qC0 det(−−→

AB,−−→

BC >0⇒on tourne à gauche det(−−→

AB,−−→

BC <0⇒on tourne à droite det(−−→

AB,−−→

BC= 0⇒les vecteurs sont colinéaires On a suite de points, on tourne à gauche : la ligne forme-t-elle un polygone convexe ?

Contre-exemple :

(22)

22 CHAPITRE 4. CONVEXITÉ Proposition

Aucun algorithme de l'enveloppe convexe ne peut avoir la compléxité meilleure queO(nlogn).

Preuve

Le problème de tri de nnombres réels se réduit au problème de l'enveloppe convexe enR2.

S'il existait un algorithme linéaire de l'enveloppe convexe alors il existerait aussi un algo linéaire pour le tri.

La réduction

Soientnnombres réelsx1, . . . , xn. On prendnpoints surR2:Ai= (xi, xi2).

A4→A3→A5→A1→A6→A1→A4 Si on trouveA5→A1→A6→A2→A4→ A3 → A5, il faut trouver le min et le max pour avoir dans le bon sens : c'est linéaire.

Liste des algo pour l'enveloppe convexe 1. Algorithme incrémental

2. Méthode de Graham

3. Méthode de Jarvis (paquet-cadeau) :O(nk)oùkest le nombre de sommets de l'enveloppe convexe

4. Méthode l'élagage et recherche :O(nlogk) 5. Diviser pour régner

6. Plusieurs algorithmes pour les situations spéciques ensemble aléatoire avec une distribution connue parcours d'un polygone non convexe :O(n) 7. Algos en ligne

(23)

Chapitre 5

Polytopes

5.1 Dénitions

Quels sont les objets que l'on cherche en construisant des enveloppes convexes ?

5.1.1 Dénition

Un polytope est une enveloppe convexe d'un ensemble ni de points dans Rd.

Anti-exemples

Exemples

5.1.2 Dénition équivalente

Un polytope est un ensemble borné qui est une intersection d'un nombre ni de demi-espaces.

23

(24)

24 CHAPITRE 5. POLYTOPES

5.1.3 Terminologie

1. Un polytope de dimensiondest un d-polytope.

2. un hyperplan support : un hyperplan dont l'intersection avec le polytope n'est pas vide et tel que le polytope se trouve entièrement dans un des demi-espaces formé par l'hyperplan.

L'hyperplan support touche le polytope.

3. Une face de polytope : l'intersection avec un hyperplan support (toute face est elle-même un polytope mais de dimension< d.

4. Faces propres :

face de dimension0 : sommet face de dimension1 : arête face de dimensiond−1 : facette 5. Parfois on ajoute deux faces impropres :

∅ de dimension−1

le polytope lui-même de dimensiond

5.2 Représentation

(25)

5.3. FORMULE D'EULER 25

5.3 Formule d'Euler

5.3.1 Constatations de Descartes(d=3)

8 sommets 12 arêtes 6 faces

8−12 + 6 = 2

4 sommets 6 arêtes 4 faces

4−6 + 4 = 2

6 sommets 10 arêtes 6 faces

6−10 + 6 = 2

10 sommets 15 arêtes 7 faces

10−15 + 7 = 2

Dodécaédre 20 sommets

30 arêtes 12 faces

20−30 + 12 = 2 On cherche à généraliser.

Pour la dimension 2 (polygone) : #(sommets) - #(arêtes) = 0 Pour d= 1(segment) : #(sommets)=2

Remarque : là nous n'avons compter que les faces propres. Si on compte aussi les faces impropres (∅ de dimension -1 et le polytope de dimensiond), on a toujours 0 :

d=3 : -1+8-12+6-1=0 d=2 : -1+n-n+1=0 d=1 : -1+2-1=0 d=0 : -1+1=0

5.3.2 Théorème : Formule d'Euler

Soit un polytopeP de dimensiondet soitnk(P)le nombre de faces deP de dimensionkaveck=−1,0,1, . . . , d(les deux faces impropres y compris). Alors

χ(P) =

d

X

k=−1

(−1)knk(P) = 0

(26)

26 CHAPITRE 5. POLYTOPES Preuve

Déjà démontré pourd= 0,1,2, et vériée pour quelques exemples en dimen- sion3.

Récursion sur d : Supposons la formule vraie pour les dimensions jusqu'à d−1.

Supposons que P possède n sommets, et plaçons P dans l'espace de telle manière que tous les sommets soient aux niveaux diérents par rapport à l'axe vertical

Traçons les hyperplans horizontaux :

H1 qui passe parA1

H2 qui passe entreA1 etA2

H3 qui passe parA2

. . .

H2n−1qui passe parAn

SoitPi=Hi∩P

P1 etP2n−1 : un point chacun

P2, . . . , P2n−2 sont des polytopes de dimensiond−1.

Considérons χ(P1), χ(P2), . . . , χ(P2n−1). Elles sont toutes égales à 0.

Calculons la sommeχ(P1)−χ(P2) +. . .+χ(P2n−1). 1. Combien de fois compte-t-on l'ensemble vide ? -1

2. Comment compte-t-on les sommets ? 1 fois chacun, avec le signe + 3. Pour une faceF deP de dimensionk >0

F ∩Hi sont des faces de dimensionk−1 ⇒un changement de signe : (−1)k →(−1k−1)

(−1)k →(−1)k−1(−1 + 1−1 + 1−. . .−1) = (−1)k+1.(−1) = (−1)k

5.4 Polytopes cycliques

On se demande combien peut avoir de faces un polytope.

Les algorithmes pour enveloppe convexe : Données : npoints dansRd 1. d= 2 :O(nlogn), et on ne peut faire mieux (réduction du tri) 2. d= 3 :O(nlogn)(astuce supplémentaire)

3. d≥4 :O(n(d+12 )) Théorème

En dimension d, il existe des polytopes ayantO(n(d2))faces.

Note

Les polytopes cycliques sont ceux qui ont le nombre maximum de faces.

(27)

5.4. POLYTOPES CYCLIQUES 27 Dénition

On dit quenpoints dansRdsont en position générale sid+ 1points de cet ensemble n'appartiennent jamais à un hyperplan de dimensionsd−1.

Autrement dit, s'il y ad+1pointsA0, . . . , Ad, alors lesdvecteurs−−−→

A0A1, . . . ,−−−→

A0Ad sont linéairement indépendants, ou biendet(−−−→

A0A1, . . . ,−−−→

A0Ad)6= 0 La numérotation des points n'entre pas en compte :

det(−−−→

A0A1,−−−→

A0A2,−−−→

A0A3)6= 0 det(−−−→

A1A0,−−−→

A1A2,−−−→

A1A3)=det(−−−−→

A0A1,−−−→

A1A0+−−−→

A0A2,−−−→

A1A0+−−−→

A0A3)

=det(−−−−→

A0A1,−−−−→

A0A1+−−−→

A0A2,−−−−→

A0A1+−−−→

A0A3)

=±det(−−−→

A0A1,−−−→

A0A2,−−−→

A0A3)6= 0

Considérons dansRd la courbe :x1=t, x2=t2, . . . , xd=td t∈R Proposition

npoints appartenant à cette courbe sont toujours en position générale Note

Les polytopes cycliques sont les enveloppes convexes des points comme ça.

Preuve

Soientd+ 1points : A0(t0, t02, . . . , t0d) A1(t1, t12, . . . , t1d) ...

Ad(td, td2, . . . , tdd)

1 t0 t02 · · · t0d

1 t1 t12 · · · t1d

... ... ... ... ...

1 td td2 · · · tdd

=

1 t0 t02 · · · t0d

0 t1−t0 t12−t02 · · · t1d−t0d

... ... ... ... ...

0 td−t0 td2−t02 · · · tdd−t0d

=

t1−t0 t12−t02 · · · t12−t02

... ... ... ...

td−t0 td2−t02 · · · td2−t02

Soientk points sur la courbe : A1= (t1, t12, . . . , t1d)

...

Ak = (tk, tk2, . . . , tkd)

On prend le polynômeP(t) = (t−t1)2×(t−t2)2× · · · ×(t−tk)2 k≤d2 P(t)≥0 ∀t

P(t) = 0 pour t=t1, . . . , tk

P(t)>0 pour t6=t1, . . . , tk

P(t) =a0+a1t+a2t2+· · ·+a2kt2k+ 0t2k+1+· · ·+ 0td

Considérons, dans Rd, l'hyperplanH ={X/a0+a1x1+· · ·+adxd= 0} et le demi-espaceH+={X/a0+a1x1+· · ·+adxd≥0}

Deux armations

La courbe M toute entière se trouve dans le demi-espaceH+

(28)

28 CHAPITRE 5. POLYTOPES Elle touche à l'hyperplan H uniquement dans les points A1, A2, . . . , Ak; tous les autres points se trouvent strictement à l'intérieur du demi-espace.

On prendnpoints quelconques sur la courbe (nest supposé être grand) ; et on considère un sous-ensemble quelconque de ces points de taillek≤ d2; alors le simplexe de dimensionk−1 formé par cesk points est une face de l'enveloppe convexe desnpoints.

Exemple

d= 4,k= 2, n= 1000

Toute paire de sommets (k = 2) forme une arête simplexe de dimension k−1 = 1.

dansR3 :nsommets→O(n)arêtes

dansR4 :nsommets→C2n =n(n−1)2 =O(n2)arêtes

Pour dplus grand : le nombre de faces de dimension 2 est borné parC3n =

n(n−1)(n−2)

616n3=O(n2)et cette borne est atteinte pour nos polytopes. Ainsi de suite . . .

Pourk≤d2, le nombre de faces de dimensionk−1peut atteindre le maximum Ckn= n(n−1)···(n−k+1)

k! 'k!1 =O(nk)(dxé,n→ ∞) Pour k=bd2c, on obtientO(nbd2c)

5.5 Transformation polaire et dualité de poly- tope

5.5.1 Présentation de notre but

Dimension 2

sommets→arêtes arêtes→sommets

(29)

5.5. TRANSFORMATION POLAIRE ET DUALITÉ DE POLYTOPE 29 dimension 3

8 sommets de degré 3→8 faces de degré 312 arêtes →12 arêtes

6 face de degré 3→6 sommets de degré 3

cube →octaédre octaédre →cube

5.5.2 Construction

Tout se passe dansRd. SoitA= (a1, . . . , ad) Dénition

Transformation polaire associe àAle demi-espace A0 ={X/A.X≤1} avec A.X=a1x1+a2x2+· · ·+adxd

Remarque 1

Si A= 0alors ce n'est plus un demi-espace, mais l'espace tout entier.

Remarque 2

La condition A.X≤1 est symétrique par rapport àAet X. Dénition

SoitA ⊆Rd un sous-ensemble deRd. Alors le transformé polaireA0 deAest

\

A∈A

{X/A.X≤1}= \

A∈A

A0={X/A.X≤1 ∀A∈ A}

(30)

30 CHAPITRE 5. POLYTOPES Remarque

Aest l'union de ces points.

A0 est l'intersection des demi-espaces correspondants Proposition

1. A ⊆ B ⇒ A0⊇ B0

2. Quel que soit A, A0 est toujours convexe (comme intersection des en- sembles convexes)

Exercice

Le transformé polaire d'une boule de rayon R avec le centre dans l'origine est la boule de rayon R1 avec le centre dans l'origine.

Lemme

1. SiAcontient l'origine dans son intérieur, alorsA0 est borné 2. SiAest borné,A0 contient l'origine dans son intérieur

3. SiAest borné et contient l'origine,A0 borné et contient l'origine Preuve

1.

2.

Désormais, nous considérons des ensembles bornés et contenant l'origine dans leur intérieur.

(31)

5.5. TRANSFORMATION POLAIRE ET DUALITÉ DE POLYTOPE 31 Théorème

Si Aest convexe, alors(A0)0 =A.

Preuve

1. Supposons A ∈ A. Alors ∀X ∈ A0 on a A.X ≤ 1 et par conséquent A∈T

X∈A0X0 (X est un point,X0 est un demi-espace).

X0={A/A.X≤1}. DoncA∈(A0)0 c'est à direA ⊆(A0)0

2. Supposons Z /∈ A. Comme A est convexe, on peut tracer un hyperplan H qui sépareZ et A; écrivons l'équation de H sous forme K.A = 1 (K coecients,Avariables).

Pour toutA∈ A, on a K.A≤1et KZ >1 K∈ A0

K∈ A0 et K.Z >1⇒Z0∈/(A0)0 A rééchir

Est-il vrai que (A0)0 =conv(A)

Théorème

Si P est un polytope,P0 aussi est un polytope.

Preuve

Prenons tout d'abord les sommets A1, A2, . . . , An de P. Par construction, P0⊆Tn

i=1A0i. Montrons qu'en fait c'est une égalité.

SoitX /∈P0, et donc il existeA∈P tel que AX >1. Mais

A=

n

X

i=1

αiAi, αi≥0,

n

X

i=1

αi= 1

Et donc pour au moins unAi, on doit avoirAiX >1. Parce que si jamais pour toutA, on a Ai≤1alors

A.X= (X

αiAi)X=X

αi(AiX)≤X αi= 1

Théorème

1. Il y a une bijection entre les faces de dimension k de P et les faces de dimensiond−k−1 deP0.

2. Cette bijection inverse la relation d'inclusion.

(32)

32 CHAPITRE 5. POLYTOPES

5.5.3 Construction de polytope en utilisant la formule

5.6 Polytopes simplicial et simples

Dénition

Polytope simplicial : toute face est un simplexe Dénition

Polytope simple : dual à un simplicial

(33)

5.6. POLYTOPES SIMPLICIAL ET SIMPLES 33 Une face (un simplexe) de dimension p−1 (il y a p sommets). Combien possède-t-telle de faces de dimensioni−1(isommets) ? :Cip

Une face de dimensionj = (d−1)−(p−1) = d−p. Elle appartient (sert comme face) à combien de faces de dimensionk= (d−1)−(i−1) =d−i? Le même nombreCip= Cd−id−j.

5.6.1 Équations de Dehn-Sommerville

(uniquement pour les polytopes simples) Raisonnement

Toute face d'un polytope est elle-même un polytope, mais de dimension inférieure. SoitF une face de dimension k; appliquons àF la formule d'Euler

k

X

j=−1

(−1)jnj(F) = 0

Prenons la somme sur toutes les faces de dimensionk. X

F dimk k

X

j=−1

(−1)jnj(F) =

k

X

j=−1

(−1)j X

F dimk

nj(F)

| {z }

#(toutes les faces de dimensionjde toutes les faces de dimensionk)

Si notre polytope est simple, chaque face de dimension j est comptée Cd−kd−j fois, sauf∅ (j=−1) qui est compté une fois pour chaqueF

−nk(P) +

k

X

j=0

(−1)jCd−kd−jnj(P) = 0

k

X

j=0

(−1)jCd−kd−jnj(P) =nk(P) k= 0,1, . . . , d Soitd= 3

k= 0:(−1)0C33n0(P) =n0(P) n0=n0

k= 1:C23n0−C22n1=n1 3n0−n1=n1

k= 2:C13n0+ C12n1+ C11n2=n2 3n0−2n1+n2=n2

k= 3:C03n0−C02n1+ C01n2−C00n3=n3 n0−n1+n2−n3=n3

En manipulant ces équations, on trouve : Équations de Dehn-Sommerville

n1= 3 2n0 n2= 1

2n0+ 2

(34)

34 CHAPITRE 5. POLYTOPES Exemples

L'octaédre est simplicial (toutes les faces sont des triangles). Donc le cube est simple. On a

n0= 8

n1= 32×8 = 12 n2= 12×8 + 2 = 6

L'isocaédre est simplicial. Donc le dodécaédre est simple. On a n0= 20

n1= 32×20 = 30 n2= 12×20 + 2 = 12

Reconnaître les polytopes simplicials ou simples En dimension 3

simplicial : toutes les faces sont des triangles simple : tous les sommets sont de degré 3 Application

Le nombre des faces pour les dimensiosn k <d2 est O(nb12c).

(35)

Chapitre 6

Cartes

6.1 Dénitions

Dénition

Une variété de dimensiondest un espace topologique tel que le voisinage de chaque point est homéomorphe à un voisinage de points dansRd.

Homéomorphisme

Une bijection dans les 2 sens.

Formellement

Pour chaque point on est capable de faire le plan de son voisinage.

Quasi-dénition

variété compacte : de taille nie (on peut faire un nombre ni de plans) Contre-exemple

Cylindre inni et non-compacte.

Question

Peut-on déterminer la forme de la surface de la Terre sans sortid dans l'es- pace ?

35

(36)

36 CHAPITRE 6. CARTES Dénition

Une variété est orientable si après un long voyage et le retour au point de départ les notions de gauche et droite ne changent pas, la notion de sens trigonometrique ne change pas.

Théorème de classication des variétés compactes orientables de di- mension 2

Il y a un seul paramètreg= 0,1,2, . . .qui s'appelle genre :

Sphère : genre 0

genre 1 g= 1

genre2 g= 2

Comment peut-on représenter une variété de dimension2 ?

Le tore

Résumé : identier les côtés opposés du carré.

(37)

6.1. DÉFINITIONS 37

Observation

Après avoir collé les côtés, ce qu'on obtient sur la surface c'est un graphe.

Un graphe tout seul ne sut pas.

(38)

38 CHAPITRE 6. CARTES Exemple

Un brin d'arête est un petit morceau qui sort d'un sommet : .

# brins = 2. # arêtes.

Dénition

Une carte est un graphe connexe (les boucles et arêtes multiples sont accep- tées) avec l'ordre circulaire des brins d'arêtes autour de chaque sommet précisé.

1. Etiqueter les brins d'arêtes 2. Ecrire la permutation :

α= (1,2)(3,4)(5,6)(7,8)(9,10)(11,12) Elle associe à chaque brin le brin opposé de la même arête (αcomme arête)

3. Ecrire la permutation : σ= (1,6,9,11)

| {z }

ordre trigo

(2,3)(4,5,7) (8)(10)(12)

| {z }

pas oblige

Les sommets sont les cycles de cette ermuta- tion (σcomme sommet)

4. Les faces sont représentées par la permutation ϕ=α−1σ−1

ϕ= (1,3,7,8,5)(2,11,12,9,10,6,4) Les cycles correspondent aux faces α=α−1. Alors pourquoi écrireα−1 dans la formule ? σαϕ = identité carσαα−1σ−1

plus facile à se rappeler.

Théorème (formule d'Euler)

#(sommets)−#(artes) + #(f aces) = 2−2goùgest le genre de la surface.

Exemples sphère g= 0→ s−a+f = 2

tore g= 1→ s−a+f = 0

pretzel g= 2→ s−a+f =−2 Modèle combinatoire de carte

3 permutationsσ, α,ϕtel que σαϕ=id

ϕ=α−1σ−1

(39)

6.1. DÉFINITIONS 39 les cycles de σreprésentent les sommets

les cycles de αreprésentent les arêtes les cycles de ϕreprésentent les faces

Les permutations agissent sur les brins d'arêtes 2 conditions

1. tous les cycles deαsont de longueur 2

2. en appliquant à 1 brinαetσon peut arriver à tout autre brin

Exemple

σ= (1,2,3)(4,5,6) α= (1,5)(2,6)(3,4)

ϕ=α−1σ−1= (1,4,2,5,3,6) K4

4 sommets 6 arêtes 4 faces 4-6+4=2 4 sommets 6 arêtes 2 faces 4-6+2=0 Pour un grapheKn, le genre minimum :d(n−3)(n−4)12 e Exercice 1 (faisable)

Dessiner le grae du cube sur le tore de telle manière que toutes les faces deviennent hexagonales.

cube habituel : 6 faces de degré 4 nouvelle carte : 4 faces de degré 6 s−a+f = 8−12 + 4 = 0sur le tore Exercice 2

Dessiner (cad calculer) le graphe d'icosaédre sur la surface de genre 4, de telle sorte que toutes les faces soient de degré 5.

⇒ Prendreσ et αpour l'icosaédre habituel ; laisser αtelle qu'elle, et rem- placerσparσ2

(40)

40 CHAPITRE 6. CARTES

Les automorphismes d'une carte sont des permutations qui comutent avec σ,α,ϕ.

6.2 Algorithme pour l'enveloppe convexe dans R

3

En dimension d, les algorithmes de l'enveloppe convexe sont de complexité O(nd+12 (en pier cas).

Avec 2 exceptions :

d=2 : O(nlogn)au lieu deO(n) d=3 : O(nlogn)au lieu deO(n2) 2 conditions

1. Les points sont en position générale.

2. les absices de tous les points sont distincts.

Méthode

diviser pour régner ou division-fusion

on divise l'ensemble de n points en 2 sous-ensembles de n/2 points qui sont à gauche et à droite d'un plan vertical

on applique récursicement la même méthode à chaque sous-ensemble on fait la fusion

t(n) = 2t(n/2) +f(n)oùf(n)est la complexité de la fusion.

Objectif

faire une fusion de 2 polytopesP1etP2(c'est-à-dire construireconv(P1∪P2)) enO(n1+n2)(ouO(n)). Alors on obtiendra que la complexité de l'algorithme serat(n) = 2t(n/2) +O(n)

serat(n) =O(nlogn)

Plusieurs étapes, chacunes intéressantes en soi.

Première étape

Soit un polytope convexe de dimension 3 ; construire sa projection surR2.

(41)

6.2. ALGORITHME POUR L'ENVELOPPE CONVEXE DANSR3 41

Idée naïve : projeter tous les sommets, puis trouver l'enveloppe convexe des projections

Hélas O(nlogn)au lieu deO(n).

N'oublions pas que les sommets sont triés selon leur coordonnéesx.

1. Trouver le sommet du polytope avecxmax

2. Regarder toues les voisins de Aet trouver les points B et C avec les angles minimaux par rapport à la verticale ; puis regarder les voisins deB et trouverD tel que l'angle par rapport à ABest minimal, et ainsi de suite

3. Complexité : au pire, on parcours 2 fois toutes les arêtes : O(n)

Question : Quel est le nombre maximum d'arêtes d'une carte planaire sans boucle ni arête multiple avecnsommets ?

Il faut faire en sorte que toutes les faces deviennent triangulaires. Alors s−a+f = 2

s=n a= 3f /2 n−32f+f = 2

n−12f = 2⇒f = 2n−4 a=32(2n−4) = 3n−6

amax= 3n−6 =O(n) fmax= 2n−4 =O(n)

(42)

42 CHAPITRE 6. CARTES Icosaèdre : 12 sommets, 30 arêtes : 30 = 3×12−6

Deuxième étape

Construction de l'enveloppe convexe en R2par division-fusion.

Nous avons 2 polytopes convexes enRd; il faut les fusionner.

1. Trouver le point le plus à droite du polytope de gauche et le point le plus à gauche du polytope de droite et les joindre

2. Pousser ce segment vers le haut, puis vers le bas

3. Enlever les sommets et les arêtes in- utiles

Remarque : La complexité de toutes les fusions ensemble est linéaire. En eet :

1. chaque arête est traitée au plus 2 fois.

Si on l'enlève, on n'y revient plus 2. le nombre total d'arêtes créées est li-

néaire car à chaque fusion on crée 2 nouvelles arêtes (bleues)

Le nombre total d'arêtes créées pendant toutes les étapes intermédiaire ≤2 fois le nombre de fusions

Troisième étape

En remontant une nouvelle arête de l'en- veloppe de 2 polygones, nous trouvons une nouvelle arête de l'enveloppe des polytopes

Et le plan vertical est le plan support qui passe par cette arête.

Méthode paquet-cadeau

On tourne le plan sup- port par rapport à la nou- velle arête

Le premier sommet trouvé est l'extrémité d'une nou- velle arête

On tourne H0 autour de la nouvelle arêteM E(l'axe de roation change !) et ainsi de suite . . .

Mais . . .qu'est ce que cela veut dire tourner le plan du point de vue algo- rithmique ?

(43)

6.2. ALGORITHME POUR L'ENVELOPPE CONVEXE DANSR3 43 Tourner veut dire parcourir tous les voisins deM et deAet trouver le plus proche (l'angle entreH et H0 est minimal)

Danger !

On trace un plan qui découpe le sommetM de tout le reste, et on dessine tout sur ce plan là. Les traces des plans deviennent lignes droites, les traces des novelles arêtes deviennent des points

Les pointsB,C,Dappartiennent au même polytope queM

Les pointsE, F, Gappartiennent à l'autre polytope

Les gagnants :E,F,G,D

Remarque très importante : les pointsB,C,Dsont des voisins du point M et ils sont traités en ordre circulaire ! ! !

Conclusion : on parcourt les voisins deM au plus deux fois.

(44)
(45)

Chapitre 7

Diagramme de Voronoï et Complexe de Delaunay

Dénitions

Soit un ensemble de points surR2: M={M1, M2, . . . , Mi} A chaque pointMi on associe une région

V(Mi) ={X:dist(X, Mi)≤dist(X, Mj)∀j6=i}

L'ensemble des régionsV(Mi),i= 1,2, . . . , n, c'est le diagramme de Voronoï Généralisations possibles

1. Rd au lieu deR2

2. d'autres métriques, par exemple : la métrique de Manhattan la métrique sur sphère

3. segments au lieu des points (mouvement à l'intérieur des batiments) Exemples (Essais de dessins)

2 points 3 points

45

(46)

46CHAPITRE 7. DIAGRAMME DE VORONOÏ ET COMPLEXE DE DELAUNAY Observation

Toute régionV(Mi)est une intersection den−1demi-plans formés par les médiatrices deMi et Mj,i6=j.

Par conséquent, V(Mi) est un polygone (ou polytope s'il s'agit de Rd) convexe mais pas strictement borné.

Applications possibles structure de cristaux structure de l'univers carapace d'une tortue mouvement de robots

problèmes algorithmiques comme recherche du plus proche voisin, . . .

Complexe de Delaunay

est le complexe dual de Voronoï, ou bien, s'il s'agir de R2, la carte duale formée de segments de lignes droites : on connecteMi etMj si et seulement si V(Mi)et V(Mj)ont une frontière commune qui n'est pas réduite à un point.

On fait quoi avec AB?

Dans la théorie des cartes, on aurait pris l'arête bleue.

Là, on pour le complexe de Delau- nay, on prend la verte.

(47)

47

Supposons qu'il n'y ait pas 4 points Mi sur le même cercle, alors il n'y a pas non plus 4 médiatrices se coupant dans le même points⇒le complexe de Delaunay est une triangulation

3 propriètés

1. Une triangulation avec les sommets M1, . . . , Mn est une triangulation de Delaunay si et seulement si chaque cercle circonscrit autour d'un triangle ne contient pas d'autres points de l'ensembleM

2. Granularité : soit un triangle et soit le plus petit cercle qui le contient SoitRle rayon maximal d'un tel cercle sur tout les triangles

Alors pour la triangulation de Delauney,Rest minimal

3. Finesse (seulement en dimension 2). Il y a mtriangles , soit3mangles : α1, α2, . . . , α3m. Alors pour le complexe de Delauney le verteur(α1, α2, . . . , α3m) est le plus grand en ordre lexicographique.

Idée d'algorithme

Un algorithme (non déterministe) qui provient de la propriété 3 : on considère 2 triangles voisins.

ne rien faire

Faire le ip si cela rend le plus petit des 6 angles plus grand

Comme ça, on augmente le rang de la triangulation en ordre lexicogra- phique

1. le nombre de triangles est ni 2. l'ordre lexicographique est total

Complexité : ? ? ?

(48)

48CHAPITRE 7. DIAGRAMME DE VORONOÏ ET COMPLEXE DE DELAUNAY Algorithme

1. Considérer dansR3 le paraboloïde de révolutionz=x2+y2

2. Relever tous les points Mi sur le paraboloïde : M(x, y)→ P(x, y, z) où z=x2+y2. On obtientP1, P2, . . . , Pn

C'est en O(n)avec une très petite constante 3. Ajouter un pointP0= (0,0, z0)avecz0 très grand

C'est en O(1)

4. Construire l'enveloppe convexe des pointsP0, P1, P2, . . . , Pn

C'est en O(nlogn)

5. projeter surR2 toutes les arêtes qui ne contiennent pasP0 C'est en O(n)

Complexe de Delauney enRd se réduit à l'enveloppe convexe enRd+1.

(49)

Chapitre 8

Annexes

8.1 Le produit vectoriel

Soient deux vecteurs~p= (p1, p2, p3)et~q= (q1, q2, q3) Comment écrire un vecteur~r orthogonal à~pet ~q?

~

r=~p×~q=

p2 p3 q2 q3

, −

p1 p3 q1 q3

,

p1 p2 q1 q2

Considérons le déterminant

u v w

p1 p2 p3

q1 q2 q3

=u·

p2 p3

q2 q3

−v·

p1 p3

q1 q3

+w·

p1 p2

q1 q2

= (u, v, w)·~r

Deux observations

1. Si on prend(u, v, w) =~p= (p1, p2, p3), le déterminant s'annule⇒ ~p⊥~r 2. Si on prend(u, v, w) =~q= (q1, q2, q3), le déterminant s'annule⇒ ~q⊥~r

8.2 Paraboloïde

Equation z = x2+y2. Fixons z = cte; alors x2+y2 = cte ⇒ un cercle

⇒donc il s'agit d'une gure de révolution. C'est quoi qui tourne ? Prenons par exempley= 0:z=x2 →parabole

49

(50)

50 CHAPITRE 8. ANNEXES

Références

Documents relatifs

Pour chaque question, une seule réponse est exacte.. Chaque réponse juste rapporte

Pour chaque question, une seule réponse est exacte.. Chaque réponse juste rapporte

On peut vérifier que les restes de la division euclidienne de 3008 par 137 et 143 sont respectivement égaux à 131 et 5 et que les quotients sont tous les deux égaux à 21.. Un

La droite h correspond à une fonction constante, donc au prix constant correspondant au tarif A ; c’est donc le tarif B qui est représenté par la droite ga. Exercice 8 : Le faré

Donnez, à l'aide d'une table similaire à celle fournie dans l'énoncé, le résultats de l'exécution en utilisant une politique qui ne fait aucun Wear Levelling.. Donnez, à l'aide

185 Pour le bloc 7 à nouveau, les plus anciens (D, E et F) sont non-libres et récents, donc on se place en 5 (qui est le suivant sur la liste, et qui est libre).. Restent donc 4 et

du rectangle ABCD par rapport au point I. c) Déterminer la valeur de l'aire du rectangle A’B’C’D’. Vous laisserez apparents les traits de construction. b) Préciser si les

La figure montre la méthode utilisée pour déterminer le volume d’un corps solide de forme quelconque. ………. 4 points) Exercice