Sie sind auf Seite 1von 14

Chapitre 6

Enveloppes onvexes, Voronoi et


Delaunay

6.1

Cal uls d'enveloppes onvexes

De manire gnrale, on veut rsoudre

Problme 6.1 Soit S = {s1 , s2 , . . . , sn } n points de IRd , al uler le treillis des fa es de


Conv(S).
Le tri de

{x1 , x2 , . . . , xn } se rduit en temps linaire au al ul


n points du plan {(x1 , x21 ), (x2 , x22 ), . . . , (xn , x2n )} situs sur la

nombres

onvexe des
x2 }. On en dduit

de l'enveloppe
parabole

{y =

Lemme 6.2 Le problme du al ul d'enveloppes onvexes en dimension suprieure ou


gale 2 admet pour borne infrieure (n log n).

En utilisant le modle de l'arbre binaire de d ision algbrique pour l'analyse des algorithmes ( f. Preparata et Shamos, 1984, pp 101-104), on montre galement que la seule
sle tion des points extrmes de
frieure

6.1.1

Conv(S)

(sans leurs adja en es) admet pour borne in-

(n log n).
Algorithmes nafs

Par sle tion des points extrmes


s S est extrme il sut de
 vrier qu'il n'est ontenu dans
d-simplexes forms sur S \ s. Il y a n1
tels simplexes, e qui induit un
d+1

n1
d+2
algorithme en temps O(n
) = O(n ).
d+1
Pour vrier qu'un point
au un des

77

78

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

Par sle tion des fa ettes


Un sous-ensemble de

d points de S

engendre une fa ette si son enveloppe ane ne spare

pas les points de S (i.e. est support pour



n
n) = O(nd+1 ).
d

S ).

On en dduit un algorithme en temps

O(

Par propagation partir d'une fa ette


Dnition 6.3 L' angle

didre de deux demi-espa es est l'angle ompris entre 0 et


form par les normales aux hyperplans supports tournes vers l'extrieur.

P = Conv(S) et G une fa ette de F , i.e. une (d 2)-fa e de P .


Pour tout s S \ F soit Hs le demi-espa e bord par G et s et ontenant F . Alors le
demi-espa e support de la fa ette adja ente F le long de G est l'hyperplan Hs formant
un angle didre minimal ave le demi-espa e support de F .

Soit

une fa ette de

F et G, on peut don dterminer la fa ette adja ente en temps linaire.


En supposant P simpli ial (i.e. S en position gnrale) une fa ette de F est simplement
dtermine par un sous-ensemble de d1 des d sommets de F . Cela fournit un algorithme
en O(nh) - o h est le nombre de fa ettes de P - pour dterminer toutes les fa ettes et
Connaissant

leurs adja en es. D'aprs le thorme de la borne suprieure ela fournit un algorithme
O(nd/2+1 ).

en

Il reste trouver une premire fa ette : prendre le point

s0 S

de oordonnes mi-

s0 s1 formant un angle minimal ave


sa proje tion sur l'hyperplan H0 = {x1 = (s0 )1 }, puis le triangle s0 s1 s2 formant un
angle minimal ave sa proje tion sur l'hyperplan ontenant s0 s1 dans le fais eau dnit par H0 et l'hyperplan normal s0 s1 . De manire gnrale si on a dtermin une
k -fa e Fk = Conv({s0 , s1 , . . . , sk }) et un hyperplan support Hk de Fk on obtient Fk+1 =
Conv(Fk {sk+1}) en her hant sk+1 tel que Conv(Fk {sk+1 }) forme un angle minimal
ave sa proje tion sur Hk . Et on obtient Hk+1 - ontenant sk+1 - dans le fais eau dnit
par Hk et l'hyperplan normal sk sk+1 ontenant sk . Cette tape prend un temps O(dn)
d/2+1
et on obtient nalement un algorithme en O(n
) pour la onstru tion de toutes les
fa ettes. Notons que le treillis des fa es de P , T (P ), tant oatomique, la onnaissan e
des fa ettes de P dtermine entirement T (P ).
nimales pour l'ordre lexi ographique, puis l'arte

Noter que et algorithme ne n essite que des al uls de dterminants pour ordonner
selon des angles.

6.1.2

Cal ul en 2D

Mar he de Jarvis
En deux dimensions l'algorithme pr dent s'appelle la
O(n2 ).

algorithme en

mar he de Jarvis

et fournit un

79

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

balayage de Graham
Soit

un point intrieur

P = Conv(S)

et soit

s0

un point extrme de

S,

par exemple

le point de oordonnes minimales pour l'ordre lexi ographique. On onsidre l'ordre

si

y lique sur les sommets

de

dni par l'angle polaire des demi-droites

(en fait l'ordre lexi ographique sur la paire (angle, - distan e

o)). P

osi

ave

os0

est un sous-ordre

de et ordre y lique obtenu en tant r ursivement tous les points formant un angle
rexe ave leur su esseur et leur prd esseur. D'un point de vu algorithmique, il sut
de par ourir la liste ordonne des points partir de

so

et de supprimer le point ourant

tant qu'il est le sommet d'un angle rexe. Chaque sommet n'tant supprimer qu'un fois
au plus,

peut tre al ul en temps linaire partir de ette liste, e qui fournit un

algorithme en temps

O(n log n).

Diviser pour rgner


1. On divise les points de

en deux selon la mdiane de leurs abs isses en temps

O(n).

2. On al ule r ursivement les enveloppes onvexes ECG et ECD de haque moiti, et


on fait leur fusion en temps

O(n).

T (n) = O(n) + T (n/2) + T (n/2)


D'o

T (n) = O(n log n),

e qui est optimal.

La fusion de ECG et ECD s'obtient en re her hant leurs tangentes, ou

ponts, suprieure

et infrieure. Pour ela on part d'une arte joignant le sommet de ECG (ECD) le plus
droite (gau he) qui est visible par ECD (ECG) puis on mar he le long de ECD (ECG)
vers le haut et vers le bas pour ha un des deux ponts haut et bas jusqu' e que les
angles aux extrmits de haque pont ave les hanes orrespondantes de ECG et ECD
soient onvexes.

balayage
Le al ul de l'enveloppe onvexe de

points

S = Sn = {s1 , s2 , . . . , sn }

du plan peut se

faire l'aide d'un algorithme par balayage. Cet algorithme repose sur trois tapes.
1. On ommen e par trier les

n points si

selon une dire tion donne (par exemple l'axe

des abs isses. Si plusieurs points ont mme abs isse on utilise l'ordre lexi ographique
sur les ouples de oordonnes). On supposera par la suite que les indi es des points
orrespondent l'ordre roissant.
2. On initialise

Conv(S3 )

par le triangle

s1 s2 s3 ,

ou plus pr isment par les trois

premiers points non aligns, dans l'ordre ir ulaire dire t.

Conv(Si ) partir de Conv(Si1 ) et du point si .


Clairement (pourquoi ?) si 6 Conv(Si1 ). Conv(Si ) s'obtient en supprimant les artes
vues par si et en ajoutant deux artes issues de si et joignant les deux sommets aux
3. Itration : On onstruit

extrmits de la hane des artes supprimes.

80

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

Le ot de par ours des artes supprimes peut tre report ( harg) sur le ot de
ration de es artes puisque toute arte re n'est supprime qu'une fois au plus.
haque itration 2 artes sont rs don le ot total des itrations est linaire. En tenant
ompte du tri initial on obtient don un algorithme en

O(n log n).

algorithme dynamique
- Dynami Planar Convex Hull. G. S. Brodal and R. Ja ob. FOCS'02. pp 617 - 626.
Van ouver, Canada.
There exists a data stru ture for the fully dynami planar onvex hull problem supporting
INSERT and DELETE in amortized

O(log n)

time, and EXTREME POINT QUERY,

TANGENT QUERY and NEIGHBORING-POINT QUERY in

O(log n)

denotes the size of the stored set before th operation. The spa e usage is

6.1.3

time, where

O(n).

Cal ul en 3D

La taille d'une enveloppe onvexe de

n points en 3D est linaire. Cela rsulte dire tement

du thorme de la borne suprieure ou bien de la formule d'Euler :

nA+F =2

et

3F 2A = A 3n 6

et

F 2n 4.

Puisque le bord d'un polytope de dimension 3 est homomorphe une sphre on peut
reprsenter le treillis des fa es d'un tel polytope par une arte planaire (en fait sphrique). Dans e qui suit on supposera que les enveloppes onvexes sont reprsentes par
une arte planaire. Une autre possibilit, qui a l'avantage de se gnraliser en toute dimension, est de reprsenter une enveloppe onvexe par le treillis de ses fa es, 'est--dire
par le graphe d'in iden e de ses fa es : haque fa e est reprsente par un item qui pointe
sur ses fa ettes et ofa ettes.

balayage
Le al ul de l'enveloppe onvexe de

points

S = Sn = {s1 , s2 , . . . , sn }

3
de IR peut se

faire l'aide d'un algorithme par balayage. Cet algorithme repose sur trois tapes.
1. On ommen e par trier les

n points si

selon l'ordre lexi ographique sur leurs triplets

de oordonnes. On supposera par la suite que les indi es des points orrespondent
l'ordre roissant.
2. On initialise

Conv(S4 )

par le ttradre

s1 s2 s3 s4 , ou

plus pr isment par les quatre

premiers points non oplanaires, orient positivement.


3. Itration : On onstruit
Clairement (pourquoi ?)
artes vues par

si

bord des fa es de

Conv(Si )

partir de

Conv(Si1 )

si 6 Conv(Si1 ). Conv(Si )

et du point

s'obtient en supprimant les fa es et

et en ajoutant les fa es et artes du ne de sommet

Conv(Si1 )

si .

si

et joignant le

supprimes.

Le ot de par ours des fa es et artes supprimes peut tre report ( harg) sur le ot
de ration de es fa es et artes. haque itration

O(n)

fa es et artes peuvent tre

81

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

res don le ot total des itrations est quadratique. En tenant ompte du tri initial
2
on obtient un algorithme de omplexit O(n ).

Exer i e 6.4 Donnez un exemple de S pour lequel l'algorithme est un (n2 ).


Algorithme randomis in rmental
Il s'agit d'une version randomise de l'algorithme par balayage. On onsidre un ttradre
in lus dans

Conv(S), par exemple en prenant quatre points de S anement indpendants.


S in rmentalement dans un ordre alatoire. On note Sr l'ensemble

On ajoute les points de


des

premiers points insrs (plus les 4 points du ttradre initial) et on renumrote les

r -ime point soit sr .


 si sr Conv(Sr1 ), alors Conv(Sr ) = Conv(Sr1 ),
 sinon Conv(Sr ) s'obtient en supprimant les fa es et artes vues par sr et en ajoutant
les fa es et artes du ne de sommet sr tangent Conv(Sr1 ).
Pour savoir si sr Conv(Sr1 ) et quelles sont les fa es de Conv(Sr1 ) vues par sr on
maintient un graphe des onits entre les fa es de Conv(Sr1 ) et les points de S \ Sr1 :
haque fa e f pointe vers la liste S(f ) des points de S \ Sr1 qui la voit (i.e. qui ne sont
pas ontenus dans le demi-espa e support de f ) et haque point s de S \ Sr1 pointe
vers la liste F (s) des fa es de Conv(Sr1 ) qu'il voit. Le point sr Conv(Sr1 ) si et
seulement si F (sr ) est vide. Dans le as ontraire la mise jour du graphe des onits
s'obtient en supprimant sr et toutes les fa es (et leurs pointeurs) de F (sr ) et en ajoutant
toutes les fa es du ne de sr ainsi que leur liste de onits. Pour dterminer la liste des
onits d'une nouvelle fa e f in idente une arte d'horizon e (i.e. du bord du ne),
on remarque que tout point voyant f voyait au moins l'une des deux fa es f1 et f2 de
Conv(Sr1 ) in identes e. Il sut don de par ourir S(f1 ) et S(f2 ) pour en extraire
S(f ).
points de sorte que le

Analyse
Lemme 6.5 L'espran e du nombre de fa es res au ours de l'algorithme est linaire.
Preuve :

Le nombre de fa es res par l'insertion de

Conv(Sr ).

Or,

premiers sites,

sr dans
sur l'ensemble des permutations de S dont on a x l'ensemble Sr des r
haque site s Sr est le r -ime site sr ave la probabilit 1/r , d'o
E(dr |Sr ) =

sr

est gal au degr

dr

de

1
1X
d(s) (6(r + 4) 12) = O(1)
r sS
r
r

sSr d(s) vaut 2 fois le nombre d'artes de Conv(Sr ) et e dernier nombre


est major par 3(r + 4) 6 (voir le dbut de ette se tion). On en dduit de manire
En eet,

in onditionnelle

E(dr ) = O(1),

d'o le rsultat par linarit de l'espran e.

En dehors de la onstru tion des listes de onits des fa es res, et de leurs mises jour
lors des destru tions de fa es, le ot total de l'algorithme peut tre report sur le nombre
total de fa es res. En parti ulier haque fa e tant dtruite une fois au plus on peut

82

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

harger le ot des destru tions sur le ot des rations. Il reste don omptabiliser
le ot de onstru tion et mise jour des

S(f ).

Les mises jour orrespondent des

destru tions de onits rs lors de la ration de fa ettes. Puisque es onits ne peuvent


tre dtruits qu'une fois au plus, le ut total de es destru tions peut nouveau tre
report sur le ot des rations des listes de onits. Il reste nalement valuer le ot
de onstru tion des
d'une arte

S(f ).

Pour ela on dnit

f1

in idente aux deux fa es

et

S(e) = S(f1 ) S(f2 )

la liste de onits

f2 .
S(f ) est proportionnel la somme

e |S(e)|
pour toutes les artes d'horizon apparaissant au ours de l'algorithme. On veut don
D'aprs e qui pr de le ot de ration des
majorer l'espran e de ette somme.
Pour poursuivre l'analyse on dnit la

rgion asso ie un quadruplet de points (p, q, r, s)

p, q, r et ne ontenant pas s et du demir . Les points de S en onit ave une


rgion R sont par dnition les points ontenus dans ette zone. On note S(R) l'ensemble
de es points. On supposera pour simplier l'expos que les points de S sont en
omme l'union du demi-espa e ouvert bord par
espa e ouvert bord par

p, q, s

et ne ontenant pas

position gnrale.
haque arte

qps

e = pq

de

Conv(Sr1 )

sont les deux triangles in idents

formes sur les points de


l'instant

r 1)

Sr1

on peut asso ier la rgion

dans

Conv(Sr1 ).

(p, q, r, s)

pqr

et

R iproquement les rgions

et sans onit ave les points de

Sr1

sont pr isment obtenues partir des artes de

(les rgions

a tives

Conv(Sr1 )

omme

pr demment indiqu.
Si

est une arte d'horizon de

e.

Conv(S
P r1 ), alors S(e) est
e |S(e)|, il sut don

l'ensemble de onit de la

R |S(R)|, la
somme portant sur tous les rgions a tives au ours de l'algorithme. Par le lemme 11.8 des
rgion asso ie

Pour majorer

de majorer

algorithmes randomiss in rmentaux (voir se tion 11.3.1), l'espran e de ette somme


est majore par

n
X
r=1

Ar

42

nr
E(|Ar |)
r2
r . Dans le as prsent ette ensemble
E(|Ar |) 3(r + 4) 6. On en dduit

est l'ensemble des rgions a tives l'tape

orrespond aux artes de

Conv(Sr ), d'o
X
E(
|S(e)|) = O(n log n)
e

et par onsquent

Proposition 6.6 L'enveloppe onvexe de n points dans

algorithme randomis en temps moyen O(n log n).


6.2

IR

peut tre al ule par un

Diagramme de Voronoi

S = {s1 , s2 , . . . , sn } un ensemble de n points ou sites de IRd . Pour tout X S on


d
onsidre la rgion VX forme des points de IR gale distan e des sites de X et stri tement plus pro hes de X que de S \ X . Les VX sont des polydres (relativement ouverts),
Soit

83

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

ar interse tions de demi-espa es mdiateurs de ouples de sites, et partitionnent IR


(pourquoi ?). Cette partition est appele le

6.2.1

diagramme de Voronoi

de

S.

Lien ave les enveloppes suprieures

(x, xd+1 ) un point de IRd IR = IRd+1 . On onsidre dans IRd+1 le paraboloide


U = {xd+1 = |x|2 }. On relve haque site s de S en un point u(s) = (s, |s|2) sur U et on
note TU (s) l'hyperplan tangent U en u(s) de sorte que
TU (s) = {xd+1 = 2 < s, x > |s|2 }. Enn, on note HU (s) le demi-espa e bord par TU (s)
2
et tourn vers le haut : HU (s) = {xd+1 2 < s, x > |s| }.
On note

Lemme 6.7 Soit x IRd et s S un site, alors la distan e algbrique verti ale de TU (s)
u(x) vaut |x s|2 .

Preuve :

le projet verti al y de x (ou u(x)) sur TU (s) vrie


2
2
2
D'o (u(x) y)d+1 = |x| 2 < s, x > +|s| = |x s| .

yd+1 = 2 < s, x > |s|2 .


2

Proposition 6.8 Le diagramme de Voronoi de S est la proje tion verti ale sur
bord du polydre sS HU (s), enveloppe suprieure des TU (s).

IR

du

Dit autrement, les ellules du diagramme de Voronoi sont les proje tions des fa es de
l'enveloppe suprieure. Notons que les fa es (possiblement vides) de
isment de la forme

Preuve :

Soit

sX TU (s)

sS HU (s)

pour

X S.

sS HU (s)

sont pr-

X S.

x VX si , sj X, sk S \ X : |x si |2 = |x sj |2 < |x sk |2 .
Ce qui quivaut dire d'aprs le lemme pr dent que l'interse tion de la verti ale en
ave l'enveloppe suprieure des

TU (s)

est dans

sX TU (s).

C'est--dire que

est dans la

proje tion verti ale de la fa e de l'enveloppe suprieure, obtenue omme interse tion de

sX TU (s)

ave

sS HU (s).

Notons que ette proje tion est non dgnre puisqu'au un

HU (s) ne ontient la dire tion

verti ale.

Corollaire 6.9 Pour d x, lad omplexit totale en nombre de ellules du diagramme de
Voronoi de n sites est un O(n 2 ).
Preuve :

D'aprs le thorme de la borne suprieure (version duale) la omplexit d'une


d+1
2
interse tion de n demi-espa es en dimension d + 1 est O(n 2 ).
En dimension 3 ela donne en parti ulier une borne suprieure en

O(n2 ). Cette

borne est

2n points rpartis uniformment pour moitis sur deux droites non s antes
3
et non parallles de IR .

atteinte pour

1 Chaque

TU (s)

est support d'une fa ette de l'enveloppe suprieure ar ette dernire ontient une

demi-boule entre en

et borde par

tion 5.32), haque fa e de

TU (s).

Le treillis d'un polytope

tant oatomique (proposi-

est l'interse tion de fa ettes, i.e. l'interse tion ave

supports. On tend sans mal un polydre non-born.

de leurs hyperplans

84

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

6.2.2

Cal ul en 2D

D'aprs e qui pr de la taille du diagramme de Voronoi de

sites du plan est linaire.

Algorithme de Fortune
Intressant du point de vue historique ?

Diviser pour rgner


1. On divise les points de

en deux selon la mdiane de leurs abs isses en temps

O(n).

2. On al ul r ursivement le diagramme de Voronoi de haque moiti ainsi que l'enveloppe onvexe, et on fait la fusion (explique si dessous) en temps

O(n).

T (n) = O(n) + T (n/2) + T (n/2)


D'o

T (n) = O(n log n),

e qui est optimal.

V or(S) le diagramme de Voronoi de S et VX (S) la rgion de Voronoi asso ie


X S dans V or(S). On note galement G et D les moitis gau he et droite de S

On note

al ules l'tape 1. On pose enn

UG = {p | d(p, G) < d(p, D)}


I = {p | d(p, G) = d(p, D)}
UD = {p | d(p, G) > d(p, D)}

Lemme 6.10
V or(G) UG = V or(S) UG et V or(D) UD = V or(S) UD .
Preuve : pour la gau he :

X S : p VX (S) UG = X G
d'o

p VX (S) UG p VX (G) UG
2

Lemme 6.11 I est une hane (verti alement) monotone simple ompose des artes de

V or(S) du type V{g,d} (S) o g G et d D . Comme g est gau he de d et que V{g,d} (S)
est orthogonal la droite gd, V{g,d} (S) n'est pas horizontale et peut tre oriente vers le
haut de sorte que g (d) est sa gau he (droite).

85

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

p I . Par dnition il existe g G et d D tels que d(p, g) = d(p, d) =


d(p, S), don p V{g,d} (S). Soit une droite horizontale. On veut montrer que interse te
I en un unique point. Clairement, il existe un point x de susamment gau he tel que
d(x, G) < d(x, D) et il existe un point y de susamment droite tel que d(y, G) >
d(y, D). Don f (p) = d(p, G) d(p, D) hange de signe sur et s'annule n essairement,
fournissant ainsi un point q dans I . Soit C le er le de entre q et de rayon d(q, G) =
d(q, D). C est vide de points de S et toute droite h de sparation de G et D oupe C .
Supposons que h est droite de q . Clairement tout x droite de C est plus pro he
de d que de tout point gau he de h (et hors de C ), don f (x) > 0. Si q est le point le
plus gau he sur vriant f (q) = 0, 'est don le seul. Par onsquent | I| = 1.
2
Preuve : Soit

La fusion des enveloppes onvexes de

G et D

s'obtient l'aide des deux ponts haut et bas

omme d rit se tion 6.1.2. Les mdiatri es de es ponts supportent n essairement les

I . Notons g0 et d0 les sites extrmits du pont


suprieur. Pour al uler V or(S) partir de V or(G) et V or(D), et don pour al uler I , on
ommen e par la partie suprieure de la mdiatri e I0 de g0 et d0 qui est n essairement
ontenue dans V{g0 } (G) et dans V{d0 } (D). On par ourt en parallle le bord de es rgions
pour trouver le segment de leur bord qui interse te I0 le plus haut. Ce segment, que l'on
supposera border V{g0 } (G) est une rgion V{g0 ,g1 } (G). Le point i1 = V{g0 ,g1 } (G) I vrie
d(i1 , g0 ) = d(i1 , g1 ) = d(i1 , d0 ) = d(i1 , S). Don i1 est un sommet de I et le segment
suivant sur I ne peut tre que V{g1 ,d0 } (S). On poursuit sur e segment jusqu' interse ter
un segment de V{g1 } (G) ou V{d0 } (D). On itre e pro d jusqu' ren ontrer la mdiatri e
du pont infrieur. Le ot de onstru tion de I est de l'ordre de la taille totale des rgions
par ourues qui est elle mme majore par la somme des tailles de V or(G) et V or(D) et
segments (innis) suprieur et infrieur de

est don linaire.

6.2.3

Variantes du diagramme de Voronoi

Diagramme de puissan e.
rapport une sphre

S(c, r) de

Rappelons que par dnition la


entre

et de rayon

vaut

puissan e d'un point x par

|x c|2 r 2

et que l'ensemble

des points ayant mme puissan e relativement deux sphres de entres distin ts est
d
). tant donn un ensemble de sphres de IR , ou de manire

un hyperplan (dit

radi al

diagramme de puissan e

quivalente de points pondrs, le


de es sphres est la partition
d
de IR en rgions telle que dans haque rgion tout point ait une mme puissan e par
rapport un sous-ensemble xe de sphres et une puissan e plus grande par rapport
aux autres sphres. Comme pour le diagramme usuel, les rgions sont des polydres
(interse tions de demi-espa es bords par des hyperplans radi aux). De manire analogue
au diagramme de Voronoi usuel, un diagramme de puissan e s'obtient omme proje tion
de l'enveloppe suprieure d'hyperplans obtenus en translatant les hyperplans tangents aux
relevs des sites sur le paraboloide

( f. se tion 6.2.1). Certains sites peuvent ependant

avoir des rgions vides ontrairement au as du diagramme usuel.

Diagramme d'ordre k.

n sites de IRd et un entier k < n. On


asso ie haque k -set (sous-ensemble de taille k ) T S la ellule formes de l'ensemble
des points qui sont plus pro hes des sites de T que de S \ T , i.e. {x | t T, s S \ T :
Soit une famille

de

86

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

d(x, t) (.x, s). Les intrieurs relatifs des interse tions de es ellules onstituent une
d
partition de R appele diagramme de Voronoi d'ordre k . On montre aisment que 'est
la proje tion verti ale du k -ime niveau de l'arrangement des TU (s) ( f. se tion 6.2.1)
relativement la dire tion verti ale vers le bas : 'est l'ensemble des ellules de et
arrangement qui ont

k hyperplans au dessus d'elles (au sens large). Le diagramme d'ordre

k = n 1 s'appelle en ore le diagramme du voisin le plus loin. La ellule d'un site (i.e.
n 1 sites omplmentaires) est l'ensemble des entres des sphres ontenant tous les
autre sites. C'est en ore la proje tion verti ale de l'enveloppe infrieure des TU (s).

des

Autres diagrammes.

On peut en ore onsidrer des diagrammes de Voronoi pour

des distan es autres que la distan e Eu lidienne. On peut galement rempla er les sites
pon tuels par des objets plus varis omme des segments, des onvexes, des droites,
et . . .La littrature e sujet est sans n.

6.3

Triangulation de Delaunay

S = {s1 , s2 , . . . , sn } un ensemble de n points ou sites de IRd . On onsidre les X S


tels qu'il existe une boule ferme BX , ir ons rite X et vriant BX S = X . On pose
DX = Conv(X). Le diagramme de Delaunay de S est l'union des DX ainsi forms. Le
bord d'une boule BX omme i-dessus s'appelle une sphre de Delaunay.
Soit

6.3.1

Lien ave les enveloppes onvexes

Lemme 6.12 Soit X = {x1 , x2 , . . . , xd+1 } un ensemble de d + 1 points de IRd anement


indpendants. Alors, il existe une unique sphre S(X) ir ons rite es points et elle a
pour quation


2
2
2
|x|

x

1

Preuve :

. . . |xd+1 |
. . . xd+1
...
1



=0

En dveloppant e dterminant selon la premire olonne


on trouve une qua-

tion de la forme
points de

|x1 |
x1
1

|x|2 + h|xi + = 0

ave

x1 . . . xd+1

=
1 ...
1

non nul puisque les

sont anement indpendants. Cette quation est don elle d'une sphre.

Cette sphre est ir ons rite aux

xi

puisque e dterminant s'annule pour

x = xi ,

pour

tout i.

|x|2 + h|xi + = 0 et |x|2 + h |xi + = 0 sont les quations de deux

sphres ir ons rites X , alors h |xi + s'annule sur X e qui implique =

et = puisque X n'est ontenu dans au un hyperplan.


Par ailleurs, si

87

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

u(x) = (x, |x|2 ) de la se tion 6.2.1. Soit X = {x1 , x2 , . . . , xd+1 }


anement indpendant. On note H(X) l'unique hyperplan ontenant
u(X) = {u(x1 ), u(x2 ), . . . , u(xd+1 )}. On dduit du lemme pr dent que

On rappelle la notation

x S(X) u(x) H(X).


Plus pr isment si

Lemme 6.13

B(X)

est la boule ferme borde par

S(X)

on vrie que

x Int B(X) u(x) est en dessous de H(X)

et

x 6 B(X) u(x) est au dessus de H(X)

Corollaire 6.14 Soit X S . Il existe une boule ferme BX ir ons rite X et vriant
BX S = X si et seulement s'il existe un hyperplan HX de
dessus de HX et HX u(S) = u(X).

Preuve : Soit Y

IR

d+1

tel que u(S) est au

d+1 points de BX anement indpendants. D'aprs


e qui pr de on peut prendre HX = H(Y ).
Prendre d+1 points de HX U tels que leurs proje tions soit anement indpendantes
et poser BX = B(Y ).
2
Don

DX

un ensemble de

est une ellule de Delaunay si et seulement s'il existe un hyperplan non-verti al

au dessous de

Conv(u(X))

u(S)

et qui ontient pr isment

est une fa e de

le haut. En appelant

Conv(u(S))

u(X),

e qui quivaut en ore dire que

possdant un demi-espa e support tourn vers

enveloppe onvexe infrieure

la olle tion des fa es d'un polytope

qui possdent un demi-espa e support tourn vers le haut, on obtient nalement,

Proposition 6.15 Del(S) est la proje tion verti ale de l'enveloppe onvexe infrieure de

u(S). En parti ulier, Del(S) onstitue une subdivision polytopale2 de Conv(S).

Notons que ette proje tion est non-dgnre puisque haque fa e de l'enveloppe onvexe
infrieure est ontenue dans un hyperplan non-verti al.

totale en nombre de ellules du diagramme


Corollaire 6.16 Pour d x, la omplexit
d

de Delaunay de n sites est un O(n 2 ).

S est en position gnrale si d + 1 points quel onques de S sont anement


libres et si d + 2 points de S ne peuvent tre osphriques. En parti ulier, il passe une
unique sphre par d + 1 points quel onques de S .

On dira que

2 Une

subdivision polytopale d'un espa e est un omplexe polytopal dont et espa e est l'espa e total.

Un omplexe polytopal est une olle tion de polytopes telle que toute fa e d'un polytope est dans la
olle tion et telle que deux polytopes de la olle tion s'interse tent selon une fa e ommune (possiblement
vide).

88

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

Remarque 6.17 Si S est en position gnrale, les DX sont des simplexes. Dans e as
Del(S) est une triangulation de Conv(S).

Exer i e 6.18 Montrer que le lemme 6.12 reste valide si on suppose seulement

dim af f (X) = d 1 et qu'on autorise qu'une sphre soit dgnre en hyperplan.

Exer i e 6.19 Dmontrer le lemme 6.13.


En deux dimensions, la liste ordonne des angles des triangles de Delaunay est maximale
pour l'ordre lexi ographique sur toutes les triangulations de
Une arte est dite

lo alement de Delaunay

S.

si la sphre ir ons rite l'un de ses deux

triangles in idents ne ontient pas le troisime sommet de l'autre triangle in ident. Si une
arte n'est pas lo alement de Delaunay alors l'arte obtenue par

ip

est lo alement de

Delaunay.

Proposition 6.20 Une triangulation est de Delaunay si et seulement si toutes ses artes
sont lo alement de Delaunay.
6.3.2
Soit

Dualit entre les diagrammes de Delaunay et de Voronoi


d
un ensemble ni de points de IR .

Proposition 6.21 Pour tout X S , VX V or(S) DX Del(S).


Preuve : : Le entre de S(X) est plus pro he de X
=

: Tout point de

On note

VX

VX

est le entre d'une sphre de

l'adhren e de

dsigne l'union de

VX

VX .

Comme

VX

S \ X.
Delaunay de X .
que de

est un polytope (relativement ouvert),

2
VX

ave ses fa es.

Thorme 6.22 Il existe une dualit entre le diagramme de Voronoi et le diagramme de

Delaunay qui asso ie toute ellule VX de Voronoi la ellule DX de Delaunay de sorte


que
dim VX = i dim DX = d i
VX VY DY DX .

Preuve (bau he) :

u1 (x) = (x, |x|2 1). On note U1 = {xd+1 = |x|2 1} le


translat du paraboloide U par le ve teur (0, . . . , 0, 1). On note en ore TU1 (s) l'hyperplan
2
tangent U1 en u1 (s) et HU1 (s) = {xd+1 2 < s, x > |s| 1} le demi-espa e suprieur
bord par TU1 (s).
On pose

P (S) = sS HU1 (s). Clairement, la proposition 6.8 reste valide en remplaant U par
U1 . Les fa es de V or(S) sont don les proje tions verti ales des fa es de P (S) de la forme

Soit

89

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

FX = sX TU1 (s)

P (S), X S .

En tendant les propositions 5.39 (point 7) et 5.41

aux polydres non-borns, on a que

P (S) = Conv(v(S))
et la fa e duale de

FX

est

ave

v(s) = (

1
2s
,
)
|s|2 + 1 |s|2 + 1

Conv(v(X)).

2x
, 1 ) transforme u(s) en
(x, xd+1 ) 7 ( xd+1
+1 xd+1 +1
v(s). Les polydres Conv(u(X)) et Conv(v(X)) sont don ombinatoirement quivalents
et on on lut ave la proposition 6.15.
2
Par ailleurs la transformation proje tive

6.3.3

Algorithme randomis in rmental pour Delaunay

1. On ommen e par al uler un grand triangle ontenant


2. On al ul in rmentalement

Del(Sr )

Aprs avoir trouv le triangle

sr .

Si

sr

de

en insrant

Del(Sr )

sr

S.

dans

ontenant

sr

Del(Sr1 ).
on toile e triangle partir

est sur une arte alors on supprime ette arte et on toile le quadrilatre

restant partir

sr .

Les 3 (ou 4) artes in identes

sr

sont n essairement (lo alement)

de Delaunay : on peut trouver une sphre ir ons rite es artes et in luse dans la
sphre (initialement vide) de

Seules les artes de

peuvent ne plus tre lo alement

de Delaunay. On ippe les artes qui ne le seraient plus, e qui re autant d'artes
in identes

sr

et deux fois plus de nouveaux triangles. Les artes opposes

sr

dans

es nouveaux triangles peuvent ne plus tre lo alement de Delaunay et on ontinu ainsi


jusqu' e que toutes les artes soient lo alement de Delaunay. Le nombre de triangles
rs est

2dr 3

dr

est le degr de

An de lo aliser e a ement


qui ontient

sr

sr

dans

sr

dans

Del(Sr ).

Del(Sr1 )

 i.e. de trouver le triangle de

Del(Sr1 )

 on maintient une stru ture de re her he sous forme d'un DAG dont

les noeuds sont les triangles rs durant l'algorithme et les feuilles sont les triangles de
la triangulation ourante. Chaque triangle pointe vers les triangles qui le rempla ent et
l'interse tent. Le degr sortant maximal dans e DAG est don 3.
Le ot total de l'algorithme est proportionnel au nombre de triangles rs plus le nombre
de triangles dtruits plus la somme des longueurs des hemins de re her he dans le DAG.
Notons que le nombre de triangles dtruits est infrieur au nombre de triangles rs. Une
borne sur e nombre est donne par le lemme suivant.

Lemme 6.23 Le nombre moyen de triangles rs durant l'algorithme est major par

9n + 1.

Preuve :

On note

A(Sr )

le nombre de triangles de

le nombre de triangles rs l'tape


quel onque des points de

Sr

Del(Sr ). D'aprs e qui


2dr 3. Sr x, sr

est major par

de manire quiprobable don

E(|A(Sr ) \ A(Sr1 )| | Sr ) =

1X
(2d(s) 3)
r sS
r

pr de
est l'un

90

Gomtrie algorithmique. Mars 2009. Fran is Lazarus.

Del(Sr ) tant une triangulation sur r + 3 sommets borde par un triangle on a


|A(Sr )| = 3(r + 3) 6 = 3r + 3. Si on omet les 3 sommets du triangle initial qui

Or

ont degr deux au moins on obtient

d(s) 2|A(Sr )| 6 = 2(3r + 3) 6 = 6r.

sSr
Par onsquent le nombre moyen de triangles rs l'tape

est major par 9. Si on

tient ompte du triangle initial on peut on lure par le rsultat annon .

Il reste estimer la somme des longueurs des hemins de re her he dans le DAG. Le
hemin de re her he de

sr

visite tous les triangles rs avant l'tape

et ontenant

sr .

Chaque nud ayant au plus trois enfants, e i reprsente bien le ot de la re her he


un fa teur 3 prs. Si on ompte part le triangle ontenant

sr

dans

de la re her he est proportionnel 1 plus le nombre de triangles rs


l'tape

A(Sr1 ),

et

le ot

dtruits avant

r et ontenant sr . Ces triangles taient soient des triangles de Delaunay une tape

antrieure soit des triangles intermdiaires rs et dtruits durant une mme tape. Dans
e dernier as le triangle adja ent qui a servi au ip tait ee tivement un triangle de
Delaunay et son er le ir ons rit ontenait le triangle dtruit et don

sr .

On peut ainsi

reporter dans tous les as le ot de visite d'un triangle dans le DAG sur un triangle
de Delaunay dont le er le ir ons rit ontenait
distin ts pour
dit

en onit

sr .

sr .

Notons que es triangles sont tous

Un triangle de Delaunay dont le er le ir ons rit ontient un site est

ave e site. Le ot total de la re her he est don born par

(1 par site)

plus le nombre total de tous les onits entre des triangles de Delaunay rs (et dtruits)
au ours de l'algorithme et des sites insrs par la suite. Par le lemme 11.8, e nombre
est born en moyenne par

n
X
r=1

Comme

|A(Sr )| = O(r),

32

nr
E(|A(Sr )|).
r2

on en dduit que e ot moyen est un

O(n log n).

Proposition 6.24 La triangulation de Delaunay de n sites dans le plan peut tre al ule
par un algorithme randomis en temps moyen O(n log n).