R EVUE DE STATISTIQUE APPLIQUÉE
M AURICE R OUX
Notes sur l’arbre de longueur minima
Revue de statistique appliquée, tome 23, n
o2 (1975), p. 29-35
<http://www.numdam.org/item?id=RSA_1975__23_2_29_0>
© Société française de statistique, 1975, tous droits réservés.
L’accès aux archives de la revue « Revue de statistique appliquée » (http://www.
sfds.asso.fr/publicat/rsa.htm) implique l’accord avec les conditions générales d’uti- lisation (http://www.numdam.org/conditions). Toute utilisation commerciale ou im- pression systématique est constitutive d’une infraction pénale. Toute copie ou im- pression de ce fichier doit contenir la présente mention de copyright.
Article numérisé dans le cadre du programme
NOTES SUR L’ARBRE DE LONGUEUR MINIMA(1)
Maurice
ROUX
Laboratoire de
statistique -
Université Paris 6Etant donné un ensemble fini S à n éléments
qu’on
peut supposerrepré-
sentatifsd’objets naturels,
et leurs distancesmutuelles,
senséesquantifier
lesdissemblances entre ces
objets,
l’arbre delongueur
minima(en abrégé : a.l.m.)
sur S constitue une schématisation des liaisons entre les éléments de
S,
en cequ’il
fournit une ossature dugraphe complet
valué Aayant
pour arêtes lesn (n - 1 )/2 segments
distincts d’extrêmités lespoints
de S et delongueurs
lesdistances données entre ces extrêmités.
Toujours
en termes de théorie desgraphes (Cf. Berge, 1963)
ils’agit
d’un arbre sur S(i.e.
ungraphe
connexe et sanscycle), ayant
lespoints
deS pour
sommets,
tel que la somme deslongueurs
de ses arêtes soit minimale.On démontre que, si toutes les distances interindividuelles sur S sont
distinctes,
ce que nous supposerons
désormais,
alors cet arbre estunique.
Kruskal ainsi que Prim ontpublié
unalgorithme
trèssimple
pour construire cet arbre.L’objet
de ces notes est
d’exposer
un autrealgorithme
à butidentique,
mais évitant le tri des distances. Une telleopération
est en effet couteuse entemps
de calculet encombrante pour la mémoire de notre auxiliaire
indispensable :
l’ordinateur.Nous poserons d’abord
quelques
définitionsqui
nouspermettront
de fixernos notations et de démontrer les
propriétés susceptibles
dejustifier
notrealgorithme
que nous exposerons ensuite.Le
principe
de cetalgorithme
avait été énoncéparmi
six autres par P. Rosensthiel(1966),
sousl’appellation
Kruskal-I dans ledésordre ;
cetauteur
soulignait
d’ailleursjudicieusement
que c’est le mode de lecture des données(c.
à d.des
arêtes et de leurslongueurs) qui
donnel’avantage
à telou tel de ces
algorithmes.
I. -
DEFINITIONS,
NOTATIONS ET PREMIERES PROPRIETES DE l’a.l.m.Dans tout ce
qui
suit onappelle
S l’ensemble fini desobjets étudiés,
ou ensemble des sommets, et d la distance sur S. On pose Cardinal
(S)
= Card(S)
= n. Ondésigne
par[p]
l’ensemble des entiers naturels de 0 à p inclusive- ment, etpar pi l’ensemble
des entiers de 1 à p inclusivement.---.
(1) Article remis le 12/6/73, révisé le 15/11/74.
Définition 1
(Arête) :
onappelle
arête un sous-ensemble de S à deuxéléments,
ses extrêmités. Onappelle
A l’ensemble de toutes les arêtes deS ;
Card(A)
=n (n - 1 )/2.
Définition 2
(Longueur
d’unearête) :
onappelle longueur
d’une arêtea
= { s , s’}
la valeurd (a)
=d (s , s’) .
Définition 3
(Polygone) :
onappelle polygone
G un ensembled’arêtes,
c. à. d. un sous-ensemble de A. Le support de G sera la réunion des arêtes de
G,
c. à. d. l’ensemble des sommets de Squi
sont extrêmités d’au moinsune arête de G. On pourra
parler
depolygone
G sur S ou dansS,
suivantque le support de G est S ou un sous-ensemble de S distinct de S lui-même.
A, qui
est l’ensemble de toutes les arêtespossibles
sur S est aussiappelé poly-
gone
complet
sur S. PourBerge
ungraphe
est laconjonction
d’unpolygone
et de son
support.
Définition 4
(Adjacent) :
Deux arêtes sont ditesadjacentes
si elles ontune extrêmité commune. Soit R C S et G un
polygone
dans(ou sur)
S.Un élément s E S est dit
adjacent
à R si s E R et si s est extrêmité d’unearête de G dont l’autre extrêmité est élément de R. En
particulier,
si R estréduit à un seul élément r, on dira que r et s sont
adjacents
dans Gsi{r, s}6
G.Définition 5
(Degré) :
ledegré
d’un sommet s, élément dusupport
d’unpolygone
G sur ou dans S est le nombre d’arêtes de Gqui
contiennent s. Un sommet est ditpendant
s’il est dedegré égal
à un.Définition 6
(Chaîne) :
une chaîne C est unpolygone
dans S dont les som-mets qui
forment son support peuvent être ordonnés en une suite(sa’
Sl, ... ,sp )
telle que :
On dit que C
joint
so àsp
ouqu’elle
relie ces deuxéléments;
on dit aussique so et
sp
sont les extrêmités de C.Un
cycle
est une chaîne où la condition 2 ci-dessus vaut pour tous lespoints
de son
support exceptés
so etsp qui
sont confondus.Définition 7
(Connexe) :
unpolygone
G de S est dit connexesi,
pour touts et tout
s’
du support de G il existe une chaîne incluse dans G dont les extrê- mités sont s ets’.
Définition 8
(Arbre) :
un arbre est unpolygone
connexequi
ne contientpas de boucle.
On démontre les théorèmes suivants
(Cf. Berge, 1963) :
Théorème 1 : soit G un
polygone
surS,
Card(S)
= n ; lespropriétés
sui-vantes sont
équivalents :
1)
G est connexe et sanscycle.
2)
G est sanscycle
etpossède
n - 1 arêtes.3)
G est connexe etpossède
n - 1 arêtes.4)
G est sanscycle
et enajoutant
une arête entre deux sommets non-adjacents
on crée uncycle (et
unseul).
5)
G est connexe et ensupprimant
une arêtequelconque
il n’estplus
connexe.
6)
Toutcouple
de sommets est relié par une chaîne et une seule.Théorème 2 : un arbre
possède
au moins deux sommetspendants
Théorème 3 : si p est le cardinal dusupport
d’un arbre T alorsCard (T)
= p - 1(i.e.
Tpossède
p - 1arêtes).
Définition 9
(longueur
etlargeur) :
onappelle longueur
d’unpolygone
la somme des
longueurs
de toutes sesarêtes ;
salargeur
sera lalongueur
deson arête la
plus longue.
On remarquera que la
largeur (en arbrégé : larg.)
d’unpolygone
est engénéral
inférieure au diamètre de sonsupport.
Ces deux valeurs coïncident si lepolygone
contient l’arête laplus longue ayant
pour extrêmités despoints
de ce
support.
On remarquera, en outre, que, pour lepolygone
réduit à unearête, longueur
etlargeur
sontidentiques.
Si G et
G’
sont deuxpolygones
dansS,
alors :1) Larg (G
UG’) =
max(Larg (G), Larg (G’ ) )
2)
si G nGaz = ~,
on aLongueur (G
UG’)
=Longueur (G)
+Longueur (G’).
II. - AUTRES PROPRIETES DE l’a.l.m.
Nous donnons sous ce titre trois
propositions permettant
de valider notre construction del’a.l.m.
Les deuxpremières
sont connues(Cf.
parexemple
Kalaba ouBerge),
tandis que la troisième est démontrée dans le cadreaxiomatique
des matroïdes(Rosensthiel,
in Journal of combinatorialtheory,
souspresse).
Proposition
1 : soit T a.l.m. sur S. Alors toutepartie
connexeT’
de Test a.l.m. sur son
support.
S’il n’en était pas ainsi il existerait
T"
a.l.m. surSupport (T’)
et dans cecas l’arbre
(T - T’)
UT"
serait delongueur
strictement inférieure àLongueur (T)
ce
qui
estimpossible.
Proposition
3 : supposons que lepolygone
réduit à l’arête{s , s’} représente
la chaîne de A de
largeur
minima(nous
dirons désormais : la chaîneminimale) joignant
s às’,
alors{s , s’}
est élément de l’a.l.m. T sur S(il
existe au moinsune telle arête : l’arête de A de
longueur minima).
Supposons
que cetteproposition
soitfausse ;
il existe alors dans Tune chaîne C de
support {co’
cl , ... ,cp }
avec Co = s etcp - s’.
Soit{Ci’ Ci+ 1}
leplus long
maillon de cette chaîne :d (ci , c;+ 1 )
> d(s , s’ )
parhypothèse ;
on obtiendrait donc un arbre delongueur
strictementplus petite
en
remplaçant l’arête {Ci’ Ci + 1} par {s , s’ } .
On vérifie en effet que lepolygone
ainsi obtenu est sans
cycle
et connexe(la suppression
de{ci , ci+1 }
"discon - necte" lepolygone,
s étant dans l’une desparties
connexes,s’
dansl’autre ;
l’adjonction
de{s , s’}
redonne unpolygone
connexe sans introduire decycle).
Lemme : soit T a.l.m. sur S et s C S un sommet
pendant ;
alors pour tout t élément de S différant de s, etquelle
que soit l’arête a deCet,
chaîne de Treliant sàt, on ad(s,t)d(a).
Supposons qu’il
existe a ECst
delongueur
strictementsupérieure
àd (s , t).
Supprimons
a deT ;
on obtient ainsi deuxparties
connexes,l’une
contenant sl’autre t.
Adjoignons
à cepolygone
l’arête{s , t},
on reconstitue de cettefaçon
un arbre
(Théorème 1,
no6)
delongueur
strictementplus petite
que celle deT,
ce
qui
estimpossible.
Proposition
3 :(Réciproque
de laproposition 2) si{r,s}
est élément de l’a.l.m. T surS, alors { r , s}
est la chaîne de Aayant
lalargeur
laplus petite
etjoignant
r à s.Nous allons démontrer que
{r , s } est
minimale et comme nous avons sup-posé, depuis
ledébut,
que toutes les distances sur S sont distinctes laproposition
en résultera. Cette
proposition
est évidemment vraie si Card(S)
= 2. On rai-sonne donc par récurrence sur le cardinal de
Sp support
de l’arbreTp C T
contenant
{r , s} ;
on poseSp = {r,s,tl
...tp}, Sp+l
1 =Sp U{tp+i}
oùtp +
1 est un élément de Sadjacent
àSp
dansT ; l’hypothèse
de récurrence est que laproposition
3 est vraie sur tout sous-ensemble deSp,
ycompris Sp
lui-même,
on veut démontrerqu’elle
est encore vraie pourSp+ 1. Supposons
quecela ne soit pas ; ceci
signifie
quel’apparition
detp+ 1,
que nous noterons t dans lasuite,
faitqu’il
existe une chaîneminimale, C’, passant
par t etjoignant
r et s. Soit ar =
{r’ , t}
et as ={s’ , t}les
deux arêtes de cette chaîne issues de t Posons queTut)
est lapartie
connexe de T -{r , s}
contenant r. On supposeque
r’ E Support (tzar»
ets’E Support (T(s)p) ;
s’il n’en était pas ainsi(Cf.
fi-gures)
alors un autre élément de la chaîneC’ (différent
de ar et deas)
feraitle lien entre
Tzar)
etT(s)p,
dont lalongueur
seraitsupérieure
à cellede{r,s}
et
C’
ne serait pas minimale.Dans ces conditions
appelons Crr, (resp. Css’)
la chaîne deTzar) (resp.
Tus»
pjoignant
r àr’ (resp.
s às)
etCrr,
,lapartie
deC’ joignant
r àr’ C C’
joint
s às’) ;
dansTp l’hypothèse
de récurrences’applique,
doncCrr’
est mini-male,
entre r etr’,
sursp,
de mêmeCas’
estminimale,
entre s et s’ surSp .
Il en résulte que
Larg (Crr’)
--Larg (C;r’)
etLarg (Css’)
--Larg (C’
Onaura donc encore une chaîne minimale en
remplaçant C’
par la chaîne : C =Crr’
U ar U as UCss
dont chacune des
parties
est delargeur plus petite
que celle desparties
homo-logues
deC’.
Or t est sommet
pendant
deTp +
1 C T desupport Sp +
1 donc l’une oul’autre des deux arêtes ar et as
(ou
lesdeux) n’appartient
pas à l’a.l.m. etd’après
le lemme l’une ou l’autre estplus longue
que{ r , s}.
Il s’ensuit queLarg (C) > Larg ((r , s})
et que ni C niC’
ne sont minimales surSp +
1 cequi
achève la démonstration.
Algorithme proposé :
notrealgorithme procède
par modificiation progres- sive d’un arbre initialTi
1 arbitraire. Onpeut
choisir celui-cisimplement
de làfaçon
suivante(mais
tout autre choix estpossible) :
chacune des n - 1 arêtes est formée d’un élément deS,
de numérocompris
entre 2 et n, l’autre extrêmité étant le numéro 1. Onenregistre soigneusement
leslongueurs
de ces arêtes.Cas où r’ et s’ sont éléments de
T(s)p
On considère successivement tous les
points
i de S autres que lepremier
et le dernier. Pour chacun d’eux on examine les distances
d (i , j )
avec les autrespoints j
de S non encoreconsidérés ;
si la donnée est un tableaurectangulaire
dedescription objets
xvariables,
onpeut
calculer ces distances à ce momentprécis.
On compare alorsd (i , j)
à lalargeur
de la chaîneCij joignant
ià j
dansl’arbre actuel
Tk ;
si celle-ci estplus petite
que celle-là alorsTk+
1 =Tk -sinon
on enlève de
Tk
laplus longue
arête deCij
que l’onremplace par{i j}
pour ob-tenir
Tk+1. Lorsque
la dernière arête a étéenvisagée (arête
de rang(n -1 ) (n - 2)/2
=n (n - 1 )/2 - (n - 1),
car nous nedécomptons
pas les n - 1 arêtes deTl)
l’arbre obtenu est l’a. l.m. cherché.En
effet,
supposonsqu’on
obtienne une arêten’appartenant
pas à l’a.l.m.alors
celui-ci,
pour être connexe, contient unsegment qui
n’est pas dans l’arbre obtenu. Mais cette arête a étéenvisagée
au cours del’algorithme,
comme toutesles autres, et
puisqu’elle
n’a pas été conservée c’estqu’on
a trouvé une chaînede
largeur
strictementplus petite
que la chaîne réduite à cette arête etjoignant
ses
extrêmités,
cequi
contredit laproposition
3.L’intérêt de cette
technique
nousparaît
être depouvoir traiter,
en untemps
de calcul très intéressant de gros ensembles de données. Une fois leproblème
ainsi débroussaillé on peut, parexemple,
faire desanalyses
factoriellessur des
parties
de l’a.l.m. ou sur les individusjugés représentatifs,
les autres étantplacés
en "élémentssupplémentaires" (Cf. Benzécri, 1973),
pour affiner les résultats. Flament s’est intéressé à l’étude des chaînes del’a.l.m.,
enparticulier
à cellesqui
ont un cardinal maximal. Pour notrepart
nous avons pu constatersur des
exemples
dephytosociologie (Cf.
Benzecri[Alpes II]
TIC no3) qu’une
telle chaîne est
fréquemment unique
etcorrespond grossièrement
aupremier
axe d’une
analyse
factorielle descorrespondances.
Bien
entendu, lorsque
nous avonsrédigé
cesnotes,
nousn’ignorions
pas les travaux deRoger
etCarpenter
sur la construction cumulative del’a.l.m. ;
néanmoins comme nous avions mis au
point
notre méthode defaçon indépen-
dante et
qu’elle
est radicalementdifférente,
bien queprésentant
vraisembla- blement les mêmesavantages,
nous avons cru utile de lapublier
d’autantplus
que nous proposons un programme de calcul
accompagné
d’un sous-programme de tracé de l’arbre surimprimante rapide,
cequi
à notre connaissance estoriginal.
Ce sous programme est du à C. Désarménien de l’I.R.I.A.
(Domaine
deVoluceau,
78. -Rocquencourt).
BIBLIOGRAPHIE
BENZECRI J.P. et coll. -
Leçons
surl’analyse
des données.Dunod, Paris, 1973.
BERGE C. - Théorie des
graphes
et sesapplications. Dunod, Paris,
1963.BERGE C. -
Graphes
ethypergraphes. Dunod, Paris,
1970.DREYFUS S.E. - An
appraisal
of some shortestpath algorithms. Operations
Research Vol.
17,
no3,
pp.395-412,
1969.FLAMENT C. - Théorie des
graphes
et structures sociales.Gauthiers-Villars, Paris,
1965.GOWER J.C. and ROSS G.J.S. - Minimum
spanning
trees andsingle linkage
cluster
analysis. A pplied Statistics, 18,
pp.54-64,
1969.KRUSKAL J.B. - On the shortest
spanning
subtree of agraph
and thetravelling
salesman
problem.
Proc. Amer. Math. Soc.7,
pp.48-50,
1956.PRIM R.C. - Shortest connexion network and some
generalizations.
BellSyst.
Techn. J. pp.
1389-1401,
1957.ROGER J.H. and CARPENTER R.G. - The cumulative construction of mi- nimum
spanning
trees.Applied Statistics,
vol.20,
no2,
pp.192-194,
1971.ZAHN C.T. -
Graph-theoretical
methods fordetecting
anddescribing gestalt
clusters IEEE Trans. on
computers,
vol.20,
no1,
1971.ROSENSTHIEL P. - L’arbre minimum d’un
graphe.
In "Théorie desgraphes", proceedings
of the internationalsymposium, Rome,
1966. Ed.Dunod,
Paris 1967.
KALABA R. -