L.Galand
Laboratoired'InformatiquedeParis6(LIP6)
8rueduCapitaineS ott
75015Paris
lu ie.gal andlip6.fr
Résumé Dans etarti le nousnous intéressons à laversion
multi ri-tère du problème de plus ourt hemin dans un graphe. Après avoir
rappeléladénitionde meilleur ompromisàl'aide du ritèrepondéré
deT heby he[16℄,nousproposonsunalgorithmepourrésoudrele
pro-blème de re her he du hemin de meilleur ompromis (problème
NP-di ile). Notre appro he repose sur uneénumération e a e des plus
ourts hemins pour la somme pondérée des oûts en utilisant l'algo
-rithmed'Eppstein[4℄. Nous établissons un résultat demajoration
per-mettantdestopper etteénumérationlorsquel'optimalitédelasolution
trouvéeestgarantie.Desexpérimentationsnumériquesontétémenéeset
sontprésentéesdans etarti le, montrantl'e a itédenotreappro he.
Mots-Clefs. Optimisationmultiobje tif;Aideàladé ision;
Optimisa-tion ombinatoire;Graphes.
1 Introdu tion
Denombreuxproblèmes on retspeuventsemodéliser ommeunproblème
dere her hede heminoptimaldansungraphe,dansledomainedes
télé ommu-ni ations oudestransportsparexemple. Cesproblèmesonttraditionnellement
été étudiés en ne onsidérantqu'une seule fon tion obje tif à optimiser. Or il
existediversessituationsdanslesquelleslapriseen omptedeplusieursobje tifs
estné essaire.Lorsdelaplani ationdetrajetsparexemple,onpeut onsidérer
le temps detrajet, la distan e àpar ourir, le oût du trajetet laprati abilité
de la route. On est don amené à optimiser plusieurs obje tifs, qui n'ont pas
for ément de liens entre eux et qui peuvent même s'avérer oni tuels. A et
eet, lathéorie de ladé isiona fournide nombreuxmodèlessophistiqués
per-mettantdeguiderle hoixd'unesolutionparmiunensembleréduit enprenant
en ompte plusieurs ritères. Néanmoins, l'adoptionde es modèlespeut
om-plexiersingulièrementlare her hed'unesolutionpréféréelorsquel'espa edes
solutionsest denature ombinatoire. Plus pré isément i i,nous modélisonsles
préféren esentre les heminsàl'aidedelanormepondéréedeT heby he[16℄.
Lespréféren esinduitespar emodèleinvalidantlesappro hesusuellesde
oeuvredesstratégiesalgorithmiquesnouvellespourdéterminerlasolution
préfé-rée.C'est pré isément equenousproposonsdans etarti le.Danslapremière
partie de l'arti le, nous présentons formellement le problème et les di ultés
qu'il présente.Dans la deuxièmepartie, nousintroduisons notre algorithmeet
nous dé rivonsl'algorithme des
k
plus ourts hemins d'Eppstein [4℄ que nous utilisons. Enn, nousprésentonsdanslatroisième partie nosexpérimentationsnumériqueset lesrésultatsquenousavonsobtenus.
2 Problème de graphe multi ritère
2.1 Présentationdu problème
En optimisation multi ritère, il est souvent di ile de omparer les
solu-tions d'un problème entre elles.En eet, les diérents ritèrespris en ompte
peuvents'avérer oni tuels et,de e fait, une solution optimisant ha un des
ritères simultanément n'existe pasen général. Dans e ontexte, lanotion de
non-dominan e est ourammentutilisée,l'ensembledessolutionsnondominées
étantl'ensembledes solutionstelles qu'iln'existe pasd'autresolutionréalisant
une meilleure performan e sur un ritèresans réaliser une plus mauvaise
per-forman e sur au moins un autre ritère. De nombreux arti les portent sur la
re her he de l'ensemble des solutions non-dominées d'un problème de hemin
multi ritère(e.g.[7,2,6,10,15℄).Cependant,lare her hed'untelensembles'avère
parfoistropdéli ate.Eneet,Hansen[7℄montrequelenombredesolutions
non-dominéesd'unproblèmemulti ritèrede hemins roîtexponentiellementave le
nombredesommetsdugraphesur ertainesinstan es, equirendirréalisablele
al uldel'ensemblede essolutionspour esinstan es.Deplus,mêmelorsquela
tailledel'ensembledessolutionsnon-dominéesestraisonnable,unegrande
par-tiede essolutionssonttropdéséquilibréespourêtreintéressantesenpratique
pourledé ideur.
Fa eà esdiérentesdi ultés,desméthodesintera tivesontétéproposées
baséessur une intera tionave ledé ideur(e.g. [5,3℄). L'intera tion repose sur
l'alternan ed'unephasede al ul(générationd'unesolutionoptimaleàl'étape
ourante) et d'une phasede dialogue (ré olte de l'information préférentielle et
mise-à-jour du modèle). La rapidité de la phase de al ul étant ru iale pour
l'e a ité d'unetelle pro édure,nous nous on entrons dans et arti lesur la
re her hedire tedelasolutionlaplussatisfaisante,àl'étape ourante,pourle
dé ideur, 'est-à-dire elle réalisantlemeilleur ompromis entre les ritères(la
notionde meilleur ompromis étantrévisable à haque étape del'intera tion).
L'algorithmequenousprésentonsdéterminedon dire tementunetellesolution
sans her heràengendrerl'ensembledessolutionse a es.
2.2 Notations
Soit
V
= {1, . . . , n}
unensembleni denoeudsetE
⊆ V × V
unensemble ni d'ar s, on se donne un grapheG
= (V, E)
omportant une sour es
∈ V
et un puits
t
∈ V
. A haque aru
∈ E
, est asso ié un ve teur de fon tions oûtsàvaleursdansN
delaformec(u) = (c
1
(u), . . . , c
q
(u))
oùq
estlenombre de ritères duproblème. Un heminP
entre deux noeudss
ett
deV
est une séquen edenoeudsdébutantpars
et seterminantpart
,tellequedeuxnoeudsv
h
etv
h+1
qui se suivent dans la séquen e sont reliés par un ar deE
. Tout heminP
des
àt
est évaluéparleve teurc(P ) = (c
1
(P ), . . . , c
q
(P ))
enposantc
i
(P ) =
P
u∈P
c
i
(u)
pouri
= 1, . . . , q
. L'image d'un heminP
dans l'espa e des ritèresest unve teurp
= (p
1
, . . . , p
q
) ∈ N
q
tel que
c(P ) = p
. L'ensemble des hemins des
àt
réalisables dansG
(appelés aussi solutions) est notéP
. OnappelleX
l'ensembledesve teursreprésentantsles oûtsdes heminsdeP
dansl'espa edes ritères,etN D
l'ensembledesve teursnon-dominésdeX
(i.e.N D
= {p ∈ X
,∄p
′
∈ X
,p
′
≻ p}
oùp
′
≻ p
ssi(∀i = 1, . . . , q p
′
i
≤ p
i
) l'une des inégalitésétantstri te).Ons'intéressei iàlare her hed'un hemindemeilleur ompromisdansun
graphe
G
.Nousallonsvoirdanslase tionsuivante ommentdénirunefon tion permettantd'évaluerl'aptituded'unesolutionàréaliserunbon ompromisentreles ritères.
2.3 Solution de meilleur ompromis
Ilpeut paraîtrenatureld'envisagerdedénir lafon tion oût duproblème
ommelasommepondérée
s
1
ω
desperforman esdes ritères.Onaainsi:∀P ∈ P
,s
1
ω
(p) =
q
X
i=1
ω
i
p
i
où
ω
1
, . . . , ω
q
représententlespoidsattribuésauxq
ritères.EnremarquantqueP
q
i=1
ω
i
p
i
=
P
i=1
q
ω
i
P
u∈P
c
i
(u) =
P
i=1
q
P
u∈P
ω
i
c
i
(u) =
P
u∈P
P
q
i=1
ω
i
c
i
(u)
et enposant
∀u ∈ E
,c
1
ω
(u) =
P
q
i=1
ω
i
c
i
(u)
,laformuleseréé rit:s
1
ω
(p) =
X
u∈P
c
1
ω
(u)
Ainsipourtrouverlasolutionminimisant
s
1
ω
dansG
, ilsut de her herle plus ourt hemindansG
s alarisé(i.e.valuéparlafon tions alairec
1
ω
), equi nousramèneàunproblèmemono ritèrequel'onsaitrésoudreentempspolyno-miallorsque legraphe
G
est sans ir uitabsorbant.Cependant, ommenousle rappelonsdans l'exemplesuivant,unetelle appro hen'est passatisfaisante arellenepermetpasd'atteindretouteslessolutionsnon-dominées,etdon parfois,
elledemeilleur ompromis.
Exemple 1 Considéronsunensemble
X
omposédesve teursp
,p
′
et
p
′′
asso- iés aux hemins non-dominés
P
,P
′
etP
′′
telsquep
= (10, 4)
,p
′
= (9, 6)
etp
′′
= (3, 11)
. Nous allons déterminer pour quels ve teursω
= (ω
1
, ω
2
)
,p
,p
′
oup
′′
minimises
1
ω
. On a:s
1
ω
(p) = 10ω
1
+ 4ω
2
,s
1
ω
(p
′
) = 9ω
1
+ 6ω
2
ets
1
ω
(p
′′
) =
3ω
1
+ 11ω
2
. Ainsi :s
1
ω
(p) < s
1
ω
(p
′′
) ⇔ ω
1
< ω
2
,s
1
ω
(p) < s
1
ω
(p
′
) ⇔ ω
1
<
2ω
2
ets
1
ω
(p
′′
) < s
1
ω
(p
′
) ⇔ ω
2
<
6
5
ω
1
. Don ,dèsqueω
1
< ω
2
, leve teurminimisants
1
ω
est
p
, dès queω
2
< ω
1
, leve teur minimisants
1
ω
estp
′′
, etp
etp
′′
minimisent tous deuxs
1
ω
lorsqueω
1
= ω
2
. Le ve teurp
′
n'est don jamais trouvé, quelque
soitleve teur
ω
∈ R
2
.Pourtant, 'est eluiquireprésentelemeilleur ompromis
surlesdeux ritères.
Nous onsidéronsdon unautretypedefon tiond'évaluation
s
∞
ω
,dénissant le hemin de meilleur ompromis omme elui dont le ve teurde oûts est dedistan e minimum àunpointde référen e
r
∈ N
q
selonlanorme pondérée de
T heby he[16℄:
∀P ∈ P
,s
∞
ω
(p) =
max
i∈{1,···,q}
ω
i
|p
i
− r
i
|
Lanormepondéréede T heby heest trèssouventutiliséeauseindes
pro- édures intera tives[12,14℄, ar ellepermet d'explorerl'ensemble dessolutions
non-dominées, supportées (i.e. atteignables par une somme pondérée) ou non,
en faisant varier le ve teur de pondération. Le problèmeque nous traitons est
don lare her hed'un hemindemeilleur ompromisselon ette norme:
(P
ω
)
:min
P∈P
i∈{1,···,q}
max
ω
i
|p
i
− r
i
|
Cemodèleinduitimpli itementunpréordretotalsurl'ensembledes heminsde
P
puisqu'un heminP
est préféré(i.e.jugé ommeréalisantunmeilleur om-promis)àun heminP
′
ssi
s
∞
ω
(p) ≤ s
∞
ω
(p
′
)
Danslasuitedel'arti le,nousutilisons ommepointderéféren e
r
lepoint idéalid
déni par :∀i = 1, . . . , q
,id
i
= min
x∈N D
x
i
. Ce point onstitue la référen edonton voudraitserappeler ar il représente une solution tive quioptimisetousles ritèressimultanément.Notonsque,pourtout hemin
P
onap
i
≥ id
i
equipermetd'é rires
∞
ω
(p) = max
i∈{1,···,q}
ω
i
{p
i
−id
i
}
.Classiquement, lesve teursdepondérationsontdénispar:ω
i
=
α
i
|nad
i
− id
i
|
ave
∀i = 1, . . . , q
,nad
i
= max
x∈N D
x
i
où
α
i
représente lepoidsdu ritèrei
et1
|nad
i
−id
i
|
unfa teurde normalisation.
Ainsi,
s
∞
ω
(p)
représentei i ladistan enormalisée delavaleurdu heminP
au point idéal selonla norme pondérée de T heby he. La Figure 1illustre ettedénitiondansunespa ebi ritère.Leslignesenpointillésreprésententleslignes
de niveau et le point entouré représente la solution optimale
P
∗
, 'est-à-dire
elledontladistan eselonlanormepondéréedeT heby heaupointidéalest
minimale(
s
∞
Id
Nad
Fig.1.Solutiondemeilleur ompromisdansunespa ebi ritère
2.4 Complexité de la re her he d'une solution de meilleur
ompromis
Yu et Yang dans[17℄montrent queleproblème
(RDSP )
1qui peuts'é rire
ave nosnotations:
(RDSP ) min
P∈P
i∈{1,···,q}
max
{
X
u∈P
c
i
(u) − r
i
}
est un problème NP-Di ile. Or
(RDSP )
est un as parti ulier de notre pro-blème:(P
ω
) min
P∈P
i∈{1,···,q}
max
ω
i
{
X
u∈P
c
i
(u) − r
i
}
En eet, en hoisissant
ω
i
= ω
j
∀i, j ∈ {1, . . . , q}
on se ramène au problème(RDSP )
.(P
ω
)
estdon unproblèmeNP-Di ile.2.5 Violation du prin ipe d'optimalité
Ladi ulté prin ipale dela manipulation delafon tion
s
1
ω
pourdénirla notion de meilleur ompromis est qu'une appro he par programmationdyna-mique ne permet pasfor émentd'obtenir lasolution minimisant
s
∞
ω
. En eet, leprin ipedeBellman[1℄(tout sous- hemind'un heminoptimalest optimal)n'estpasrespe té, ommeleprouvel'exemplesuivant.
Exemple 2 On onsidèrei ilegraphedelaFigure2,représentantuneinstan e
proposéeparHansen[7℄.Dansuntelgraphe,lenombredesommetsest
n
= 2k+1
et le nombre de hemins est2
k
. Nous onsidérons dans et exemple le graphe
de Hansen pour 7 sommets (
n
= 7
dans la gure 2). Un hemin de meilleur ompromis sur e graphe est le heminP
1
=
<
1
,3
,5
,6
,7
> de valeur(4, 3)
. Or, lesous- hemin <1
,3
,5
>deP
1
qui apour valeur
p
= (0, 3)
représenteun moins bon ompromis que le hemin <1
,2
,3
,5
>qui a pour valeurp
′
= (1, 2)
,
1
(0, 2 )
0
(0, 2 )
1
(0, 2 )
k−1
(2 , 0)
0
(0, 0) (2 , 0)
1
(0, 0)
(2 , 0)
k−1
(0, 0)
1
3
5
2
4
n−2
n−1
n
Fig.2.Instan edeHansen[7℄
puisqu'en utilisant les ve teurs
id
,nad
etω
tels qu'ils ont été dénis dans le se tion 2.3 eten posantα
= (1, 1)
, on aid
= (0, 0)
,nad
= (7, 7)
etω
= (
1
7
,
1
7
)
, etdons
∞
ω
(p) =
3
7
>
2
7
= s
∞
ω
(p
′
)
.Onvoitdon àtravers etexemplequ'unsous- hemind'un heminoptimalselon
s
∞
ω
n'estpasfor émentoptimal.Laprogrammationdynamiquesembledon i i peu appropriée pour la re her he dire te du hemin de meilleur ompromis.Danslase tion suivante,nousproposonsunautretyped'appro hepermettant
derésoudreleproblème
(P
ω
)
.3 Algorithme proposé
3.1 Prin ipe
Nousavonsvupré édemmentque,d'unepart her heràminimiserlasomme
pondérée des oûts dans le but de trouver un hemin de meilleur ompromis
n'est pas satisfaisantet d'autrepart minimiser lanorme pondéréede
T heby- heestdi ile, arleprin iped'optimalitén'estpasvérié.Néanmoinsplutt
que minimiser
s
1
ω
, onpeut énumérer les hemins dansl'ordre roissantde leur évaluations
1
ω
, e qui permet d'atteindre tousles hemins réalisables (et don touslesnon-dominés) enexploitantungraphe s alaire(i.e. ungraphedontlesar ssontvaluésparuns alairede
R
).Dans etteoptique,nousétablissonsune propriété permettant de stopper ette énumération à partirdu moment où lagarantied'avoirengendréle heminoptimalde
(P
ω
)
estobtenue: Propriété 1∀x ∈ X, ∀y ∈ X, s
1
ω
(y) > s
1
ω
(¯
x) =⇒ s
∞
ω
(x) < s
∞
ω
(y)
oùpourtout
x
∈ X
,¯
x
désigne leve teuràvaleursdansR
+
telque:∀i = 1, . . . , q,
x
¯
i
= id
i
+
1
ω
i
s
∞
ω
(x)
(1) Preuve.Supposonsquel'onait
y
∈ X
etx
∈ X
,telsques
1
ω
(y) > s
1
ω
(¯
x)
i.e.q
X
i=1
ω
i
y
i
>
q
X
i=1
ω
i
x
¯
i
avex
¯
i
= id
i
+
1
ω
i
s
∞
ω
(x)
Onadon
q
X
i=1
ω
i
(y
i
− id
i
) > qs
∞
ω
(x)
. (2) Ors
∞
ω
(y) = max
i=1,...,q
ω
i
{y
i
− id
i
}
, donq
X
i=1
s
∞
ω
(y) ≥
q
X
i=1
ω
i
(y
i
− id
i
)
ainsi,d'après(3),qs
∞
ω
(y) =
q
X
i=1
s
∞
ω
(y) > qs
∞
ω
(x)
'est-à-dires
∞
ω
(y) > s
∞
ω
(x)
2
Cettepropriéténousassurequepourtous hemins
P, P
′
∈ P
telsques
1
ω
(p
′
) >
s
1
ω
(¯
p)
alorsP
′
représenteunmoins bon ompromisque
P
ausensdes
∞
ω
.Don , une fois untel heminP
′
engendré lorsde l'énumération roissante(selon
s
1
ω
) des hemins, on sait qu'il n'existe pas, parmi les hemins suivants, de heminreprésentantunmeilleur ompromisque
P
ausensdes
∞
ω
.L'algorithmequenousproposons onsistedon àénumérerles hemins
réa-lisablesdugraphe
G
dansl'ordre roissantselons
1
ω
.Cetteénumérations'arrête lorsqu'un heminP
′
devaluationp
′
telques
1
ω
(p
′
) > s
1
ω
(¯
p)
estengendré(oùp
¯
est lavaluationdéniepar(1)àpartirdelavaluationp
dumeilleur hemin ourantP
).En eet,lorsqu'un tel heminP
′
est engendré,
P
est for émentle meilleur heminselons
∞
ω
surl'ensembledes heminsdeP
.Dans[11℄, uneappro hesimilaire (énumérationordonnéedes heminsselon
lasommedes oûtsjusqu'àune ertaine onditiond'arrêt)aétéproposéepour
optimiseruneautrefon tiond'évaluationnonlinéaire,lanormeeu lidienne.
Ce-pendant,notreappro heestplusappropriéeàlare her hedu hemindemeilleur
ompromispuisque lanormeeu lidienne, ontrairementàlanormepondéréede
T heby he,nepermet pasd'atteindre touteslessolutionsnon-dominées[16℄.
L'algorithme 1 i-dessous résume l'appro he que nous proposons. An de
dé-terminer notre
k
-ième hemin, nous utilisons l'algorithme d'Eppstein [4℄ ar il permetdetrouverlesk
meilleurs heminsenO(m + n log n + k)
dansungraphe s alaire oùm
est le nombre d'ar s etn
le nombre de sommets. L'algorithme n'étant pas énon é pré isémentdans [4℄, nous en présentonsun énon é formeldanslapartie suivante.Lesdiérentesstru tureset notationsutiliséesdans[4℄
sontaussiprésentées. Néanmoinslajusti ation del'algorithme et l'utilisation
pré isedesstru turesdedonnées,détailléesdans[4℄,nesontpasrappeléesi i.
3.2 Algorithmedes k plus ourts hemins d'Eppstein
Le prin ipede et algorithmeest d'énumérer toutes lesdéviations duplus
ourt hemin allant d'un noeud
v
∈ V
au noeudt
pour tous les noeuds du graphe etde lessto kerdansuntas (arbrebinairedanslequel haquenoeudaune évaluation inférieure ouégale àtoussesdes endants) àl'aide desquelsles
heminsalternatifsauplus ourt hemin(déterminéaupréalable)sont onstruits
Algorit hme 1:Déterminationdu hemindemeilleur ompromis
Déterminerlepointidéal
id
etlepointnadirnad
P
1
←− arg min
P ∈P
s
1
ω
(p)
s
∗
←− s
∞
ω
(p
1
)
b
←− s
1
ω
(¯
p
1
)
P
∗
←− P
1
k
←− 2
tantques
1
ω
(p
k−1
) ≤ b
faireDéterminerle
k
-ièmemeilleur heminP
k
selon
s
1
ω
siiln'yaplusde heminsalors
Sortirdelabou le nSi si
s
∞
ω
(p
k
) < s
∞
ω
(p
∗
)
alorsb
←− s
1
ω
(¯
p
k
)
P
∗
←− P
k
s
∗
←− s
∞
ω
(p
∗
)
nSik
←− k + 1
nTq Sorties:P
∗
, heminoptimalausensde
s
∞
ω
Pour ela, on ommen e par déterminerle plus ourt hemin den'importe
quelsommetdugraphe
G
ausommetnalt
,àl'aidedel'algorithmedeDijkstra par exemple. On obtient ainsi l'arbores en e des plus ourts heminsT
. On onstruitensuitelegraphedesregretsR
, 'est-à-direlegraphedont haquear issu d'un noeudv
∈ V
exprime le regretδ
de ne pas prendre le plus ourt hemin dev
àt
. Supposons par exemple que pour aller d'un sommetu
à un sommetv
deG
, il existe deux hemins.Le premier hemin <u
,v
> aun oût de 5, et le se ond <u
,w
,v
> a un oût de 4. Un seul ar est issu deu
dans le graphe des regrets qui va versv
et a omme valeurδ
= 1 (= 5 - 4), qui exprime le regret de ne pas prendre le plus ourt hemin. Prendre le hemin<
u
,v
> au lieu du plus ourt (<u
,w
,v
>) àpartir deu
nous oûtera don 1 de plus que prendre le plus ourt hemin. Le graphe des regrets permet ainsid'exprimer tousles oûts supplémentairesquel'on alorsqu'onne prend pasle
heminleplus ourtàpartirden'importequelsommet.Unexempledegraphe
desregretsestdonnésurlaFigure3.Legraphededroite orrespondaugraphe
des regrets déterminé à partir du graphe de gau he. Les ar s en trait plein
du graphe de droite dénissent le graphe des regrets
R
, et eux en pointillés dénissentl'arbores en edesplus ourts heminsT
.UnefoisR
onstruit,l'idée est d'exploiter es regrets en ordre roissantan d'engendrerles heminsdansl'ordre roissant des oûts. On onstruit alors un tas
H
out
(v)
dont les noeuds sont les ar s issus du sommetv
dans le graphe des regrets, pour ha un des sommetsdeV
. Lavaleurasso iéeà ha unde es noeudsest elleduregretδ
. On onstruit ensuite un tas généralH
G
(v)
pour ha un des sommetsv
, dans lequellara ineestH
out
(v)
etlenoeudsuivantestH
out
(w)
oùw
estlesommet suivantv
dans le plus ourt hemin allant dev
àt
, autrement dit la tête de l'ar issu dev
dansT
estw
( e que l'on notew
= Suivant
T
(v)
). L'ensemble1
2
3
4
5
6
7
1
10
2
3
4
1
2
3
4
5
6
7
1
2
3
4
5
1
1
1
1
1
10
Fig.3.GrapheGetsongraphedesregrets
destas
H
G
(v)
pourtoutv
∈ E
dénitlastru tureD(G)
.Ainsi,touslesnoeuds deD(G)
sont les ar s deE
− T
que l'on appelle déviations.D(G)
représente l'ensemble des hemins des
àt
qui dièrentdeT
par seulement unar . C'est àpartirdelastru tureD(G)
quel'onpeut onstruirelesk
plus ourts hemins dansl'ordredes oûts roissantsenutilisantuneledeprioritéQ
.L'algorithme2présenteformellementl'algorithmedes
k
plus ourts hemins d'Eppstein. Dans et énon é,L(S
k
) =
P
(i,j)∈S
k
δ(i, j)
,h(v)
représente la dé-viation la moins oûteusedu plus ourt hemin dev
àt
etS
est unensemble dedéviations(i.e.d'ar sdeR
).Pour onstruireP
i
àpartirde
S
i
dans et
algo-rithmeilsutde ompléterlesar sde
S
i
par euxdu heminde
v
àt
dansT
oùv
estlatêtedudernierar deS
i
.L'étape1de etalgorithmepermetde umuler
lesdéviationspossibles.L'étape2permetdetraiterlesautresdéviationsàpartir
dusous- hemin allantde
s
àlaqueue dee
, 'est-à-dire elles qui onduirontà unplusmauvais heminque eluiquivientd'êtretrouvémaisàpartirdumêmesous- hemin.
La version de l'algorithme des
k
meilleurs hemins que nous utilisons est la version améliorée[9℄ de l'algorithme d'Eppstein. Dans ette version,les tasH
G
(v)
sont onstruits aufuret àmesuredeleur utilité( 'est-à-direlorsque le noeudv
intervientdansunedéviation), equipermetdelimiterles al ulsetla taille desinformationsàsto ker.3.3 Exemple
Dans ette partie, nous illustrons le déroulement de notre algorithme de
re her hed'un heminde meilleur ompromisàl'aided'un exemple.Legraphe
sur lequel nous travaillons est elui de gau he dans la Figure 4. Il s'agit de
déterminer le hemin de meilleur ompromis du sommet
a
au sommetg
. La première étape de l'algorithme est la détermination des points idéal et nadir.Algorit hme 2:Déterminationdes
k
plus ourts heminsdugraphes alaireG
Déterminerl'arbores en edesplus ourts heminsT
etlegraphedesregretsR
EndéduireP
1
Constru tion de
D(G)
: pour haquev
∈ V
faireConstruire
H
out
(v)
Insérer
H
out
(v)
dansH
G
(Suivant
T
(v))
pourformerH
G
(v)
nPrChQ
←− h(s)
(pluspetitedéviationpossibleàpartirdeP
1
)
pour
k
de 2àK
faire ExtraireS
k
l'ensemblededéviationsde
Q
ayantlapluspetiteévaluation EndéduireP
k
Etape 1:e
←−
dernièredéviationdeS
k
f
←− h(t
ête(e))
InsérerS
k
S{f }
dansQ
ave l'évaluationL(S
k
)
+δ(f )
Etape 2:pour haquedéviation
S
∞
ω
telque(e, f )
estunar dansD(G)
faire InsérerS
k
\e
S{f }
dansQ
ave l'évaluationL(S
k
) − δ(e) + δ(f )
nPrCh nPr Sorties:P
1
, P
2
, . . . , P
k
a
b
c
d
(5,3)
(2,6)
(6,10)
(10,4)
(4,4)
g
(2,4)
(4,2)
f
e
(1,3)
(2,3)
(2,4)
(8,6)
(2,5)
(5,3)
a
b
c
d
0,931
0,972
1,917
1,611
0,944
g
0,722
f
e
0,486
0,597
0,722
0,847
0,931
1,639
0,694
Fig.4.Graphebi ritèreetgraphes alaire orrespondant
point
nad
= (17, 19)
,obtenusàpartirdes hemins<a
,b
,c
,f
,g
>de oût(8, 19)
et<a
,d
,f
,g
>de oût(17, 11)
.Leve teurω
vautalors(1
9
,1
8
).Unefois esvaleurs déterminées,lesar sdugraphesontvaluésparlasommepondéréedes oûtsdeleurs ritères.Legraphes alaireobtenuestindiquésurladroitedelaFigure4.
Leplus ourt hemindans e graphes alaireestle hemin<
a
,b
,c
,f
,g
>dont le ve teur oût est(8, 19)
. C'est la solutionP
1
ave
s
∞
ω
(p
1
) = 1
. On a alors¯
p
1
= (8 + (9 × 1), 11 + (8 × 1)) = (17, 19)
.Ce inouspermetd'initialiserlaborneb
à17
9
+
19
8
= 4, 264
. On sait don que tout heminP
tel ques
1
ω
(p) > 4, 264
ne peut être optimal. On détermine ensuite le deuxième meilleur hemin
P
2
.
C'est le hemin <
a
,d
,f
,g
> de oût(17, 11)
aves
1
ω
(p
2
) = 3, 264 ≤ b
, la génération des solutions ontinue don .b
n'est pas modié puisques
∞
ω
(p
2
) =
1 = s
∞
Chemin
P
Chemin Coûtp s
ω
(p) s
∞
ω
(p) s
ω
(¯
p)
bP
1
<a
,b
,c
,f
,g
> (8,19) 3,264 1 4,2644,264P
2
<a
,d
,f
,g
> (17,11)3,264 1 4,2644,264P
3
<a
,d
,c
,f
,g
>(13,15)3,319 0,556 3,3753,375P
4
<a
,b
,c
,e
,g
>(13,16)3,444 0,625 3,5143,375Tab.1.Solutionsengendrées
hemins sont engendrés dansl'ordre roissantde
s
1
ω
et numérotés dansl'ordre deleurgénération.Comme
s
1
ω
(p
4
) > b
, au uneautre solutionne pourraaméliorer lameilleure solution ourante(P
3
)d'aprèslaPropriété1,etl'algorithmepeutdon s'arrêter.
En onséquen e, lasolution optimaleest ette meilleure solution ourante
P
3
.
Ainsi, en onstruisantuniquement4 hemins (dont 3non-dominés), le hemin
de meilleur ompromis a été trouvé, alors que e graphe ontient 17 hemins
diérents.
Cependant,soulignonsquedanslepiredes as,notrealgorithmeengendrera
l'ensemble des hemins dugraphe. Sur desgraphes omme euxproposéespar
Hansen[7℄(dontuneinstan eestreprésentéedanslaFigure2)parexemple,les
heminsonttouslamêmesommepondéréedes oûts. L'énumérationne
s'arrê-teradon qu'unefoistousles heminsengendrés.Lenombrede heminsdans e
typedegraphesestde
2
n
−1
2
oùn
estlenombredesommets.Ainsi,l'énumération detousles heminsave l'algorithmed'EppsteinsefaitenO(m + n log n + 2
n
2
)
. Ilexistedon desinstan espourlesquellesletempsdedéterminationdu heminde meilleur ompromis roît exponentiellement ave le nombrede sommetsdu
graphe.Notrealgorithmeserévèletoutefoistrèsperformantenmoyenne omme
nouslemontrelase tionsuivante.
4 Résultats expérimentaux
L'algorithme que nous proposons a été implémenté en C++ et des tests
onsistant àengendrer diérents graphes et observerla performan e de al ul
ontétéee tués surunpro esseurPentium4à2.5GHz.
4.1 Génération des graphes
Lestestsontétéee tuéssurdesgraphesengendrésàl'aidedetrois
généra-teurs:
Générateur 1: génération aléatoiredes graphes de la manièresuivante :
un sommet
i
est relié à un sommetj
par un ar(i, j)
pouri < j
ave une probabilité de0, 5
. De plus, les sommetsi
etj
ne peuvent pas être reliésparunar sij
− i >
n
2
oùn
estlenombredesommets.Celapermet d'éviterd'avoirdes heminsave trèspeud'ar spuisqu'ainsilessommetspro hes de
s
dansle graphene sont pasreliés parunar auxsommets pro hes det
danslegraphe.Générateur2:générateurRudy [8℄
Générateur3:générationdesgraphesproposésparHansen[7℄
Pour déterminerles oûts desar s (Générateur1et 2), nousavonsspé ié
unefon tionlinéairetelle quelaperforman edu ritère
i
detout aru
∈ E
estc
i
(u) = a
i
z
i
(u) + d
i
oùz
i
(u)
esttirée aléatoiremententre 1et 20,a
i
entre 1et 300etd
i
entre1et10000.Ainsi,onpeutespéreravoirdes ritèresdontle oût peutvarierdequelquesdizainesetd'autresdontle oûtpeutvarierdequelquesmilliers.
4.2 Performan esobtenues
Nous omparonsi ilesperforman esdenotre algorithmeà ellesd'une
ap-pro heendeuxphases onsistantdansunpremiertempsàengendrerl'ensemble
dessolutionsnon-dominéesàl'aidedel'algorithmeMOA*[13℄,puisdansun
se- ondtempsàre her herdans etensemble ellequiminimiselanormepondérée
deT heby he.Cetteappro heestdésignéeparI (appro heIndire te)tandis
quenotrealgorithmeestdésignépar"D"(appro heDire te)puisqu'ildétermine
dire tementlasolutiondemeilleur ompromis.
La Table 2 présente les résultats obtenus sur les graphes engendrés par le
Générateur 1 lorsque l'on fait varier le nombre de sommets et de ritères. Le
temps obtenu orrespondau temps moyenréalisé parles algorithmesexé utés
surune entained'instan esaléatoires.Letempsd'exé ution omprendletemps
de al uldupointidéalet eluidere her hedumeilleur ompromis.Lesymbole
−
signiequelasolutionn'étaittoujourspasdéterminéeauboutd'uneheure.#sommets 100 500 800 1000 1200 1500 1800 2000 2500 I(5 ritères) 34ms 11s 26s 80s 103s 211s 354s 406s 478s D(5 ritères) 3ms 59ms 153ms235ms336ms627ms769ms948ms 1,4s I(10 ritères) 1,72s 1397s 4808s - - - -D(10 ritères) 7ms 73ms 205ms327ms532ms 1s 1,2s 1,8s 2,7s I(20 ritères) 64,6s - - - -D(20 ritères)24ms146ms362ms612ms948ms 1,33s 2,30s 3,12s 4,30s I(40 ritères) 925s - - - -D(40 ritères)79ms847ms565ms666ms 1,07s 1,78s 2,91s 3,72s 6,64s
Tab.2.Résultatsobtenus(Générateur1)
LaTable3présentelesrésultatsobtenussurdesgraphesà5 ritères
engen-drésparleGénérateur2(Rudy)lorsquel'onfaitvarierlenombredesommetset
ladensité
d
(d
=
2m
n(n−1)
oùn
estlenombredesommetsetm
lenombred'ar s). Letempsobtenu orrespondautempsmoyenréaliséparlesalgorithmesexé utéssur une vingtaine d'instan esaléatoires. Ce temps omprend la détermination
dupointidéal.Cesdiérentsrésultatsexpérimentauxmontrentbienlarapidité
denotreappro hefa eà elle onsistantàengendreraupréalablel'ensembledes
#sommets 100 500 800 1000 1200 1500 1800 2000 2500 I(
d
=30%) 13ms 3,5s 17s 42,6s 132s 223s 238s 380s 539s D(d
=30%) 1ms 31ms 75ms 104ms154ms218ms321ms399ms620ms I(d
=60%) 57ms 27s 118s 193s 525s 666s - - -D(d
=60%) 5ms 56ms134ms184ms266ms386ms642ms803ms 1,3s I(d
=90%) 135ms 148s 326s 570s 647s - - - -D(d
=90%) 8ms 60ms210ms310ms426ms600ms 1,1s 1,3s 2,3sTab.3.Résultatsobtenus(Générateur2)
Tables2 et 3montrentque le temps d'exé ution de notre appro heaugmente
beau oupmoinsrapidementque euxdel'appro heI lorsquel'onaugmentele
nombredesommetsdugraphe,sa densitéoulenombrede ritères.L'appro he
D fournitparexemplelasolutiondemeilleur ompromisd'ungraphede2000
sommetsvaluépar5 ritèresenmoinsd'unese ondealorsqueI fournit ette
même solutionen plus de6 minutes. Lorsquele nombre de ritèresaugmente,
I dépassetrèsviteuneheured'exé utionalorsqueD fournitunesolutionen
quelquesse ondes.
Le nombre de solutions onstruites pour ha une des appro hes pour les
graphesà5 ritèresestpré isédanslaTable4.PourI, enombrereprésentele
nombretotaldesolutionnon-dominéesduproblèmepuisqu'onlesgénèretoutes
avantde re her her elle de meilleur ompromis. Lanotation
x(y)
sur laligne D signiequex
solutionsontété onstruiteset quey
de esx
solutionssont non-dominées.#sommets 100 500 800 1000 1200 1500 1800 2000 2500
I 69 369 458 603 613 615 651 675 762
D 80(34)74(53)142(81)107(80)127(93)102(82)115(93)121(91)78(70)
Tab.4.Nombresde hemins onstruits(Générateur1)
Ces résultats montrent d'une part que D n'engendre pas la totalité des
solutions non-dominées, d'autre part que le nombre de solutions engendrées
(dominées ou non) par D n'augmente pas ave le nombre de sommets aussi
rapidement que le nombre de solutionsnon-dominées. Ce i montre lairement
l'intérêt de notreappro hepuisque le nombrede solutionsengendréesne roît
pasfor émentave lenombredesommets.
LaTable5présentelesrésultatsobtenussurlesgraphesbi ritèresengendrés
parleGénérateur3(graphesproposésparHansen[7℄).Surdetelsgraphes,D
ommeI onstruitlatotalitédes heminspuisqu'ilssonttousnon-dominéset
quelasommepondéréedeleurve teurde oûtsestidentiquepour ha und'eux.
Ces résultats montrentque même dans le as d'instan epathologiques omme
ellesd'Hansen[7℄,lagénérationdessolutionsestpluse a eave D qu'ave
I. En eet pour un graphe de e type à 35 sommets, I ne parvient pas à
#sommets 21 23 25 27 29 31 33 35 37 39 41 43
I 60ms340ms 2,6s 13,2s 55,4s 229s 926,4s - - - -
-D 0ms 10ms 30ms80ms170ms380ms780ms2s 4,5s13s71s322s
Tab.5.Résultatsobtenus(Générateur3)
Cesdiérentsrésultatsexpérimentauxmontrentbienl'e a itédenotre
ap-pro hefa e àuneappro heindire teetmettentenéviden elesdeuxavantages
qu'elleprésente: ellenené essitepaslagénération del'ensembledessolutions
non-dominéesetlessolutionsengendrées(dominéesounon)lesontrapidement
grâ eàl'utilisationd'ungraphes alarisé.
5 Con lusion
Dans etarti le,nousavonsprésenté unenouvelleappro hepourtraiterles
problèmes ombinatoiresmulti ritèresde hemins.Cetteappro he onsisteà
uti-liserl'algorithmedes
k
plus ourts heminsd'Eppstein[4℄surlegraphes alarisé ande déterminerrapidementlasolutiondemeilleur ompromisentretouslesritères.Ce iétantréalisablegrâ eàlaPropriété1quenousavonsétablie.Les
tests numériques que nous avons menés montre l'e a ité de notre appro he
enmoyenne,notammenten omparaisonave elle endeuxphases onsistantà
engendrerl'ensembledessolutionsnon-dominéespuisàre her herlasolutionde
meilleur ompromisdans et ensemble. Untelalgorithmepeutsembler
intéres-santdansun adreintera tif,oùlaphasede al ulsedoitd'êtrerapidepourne
paslasserledé ideur.Notonsparailleursque etteappro heestassezgénérique
ar elle peut s'appliquer à tout problème pour lequel il existe un algorithme
e a ed'énumérationdes
k
meilleuressolutions(laPropriété1permettant l'ar-rêt de l'algorithme est indépendante dela stru ture del'espa e dessolutions).C'est pourquoinous pensonsque notre appro he devrait pouvoirs'adapter
ef- a ement par exempleau problème multi ritère de sa -à-dos, pourlequel un
algorithmeperformantdere her hedes
k
meilleursadéjàétéproposé[4℄.Remer iements
Jeremer ieLouis-XavierStorme,OlivierSpanjaardetPatri ePernypourles
é hangesqui ontpermisd'aboutirà etarti leet lesrele teursanonymespour
leurssuggestionspertinentes.
Référen es
1. Bellman, R.:Dynami Programming,Prin etonUniversityPress,1957.
2. Clima o, J.N. etMartins E.Q. : A bi riterion shortestpath algorithm, European
3. Coutinho-Rodrigues, J.M., Clima o, J.C.N., Current, J.R. : An intera tive
bi-obje tive shortest path approa h : sear hing for unsupported nondominated
so-lutions, ComputerandOperationsResear h,vol.26,789-798, 1999.
4. Eppstein, D. : Finding the
k
shortest paths. SIAM Journal on Computing, vol. 28(2),652-673, 1998.5. Granat, J.etGuerriero, F.: Theintera tive analysis ofthe multi riteriashortest
path problem by the referen e point method, European Journal of Operational
Resear h,vol. 151,103-118,2003.
6. Guerriero, F. etMusmanno, R. : Label orre tingmethods to solve multi riteria
shortestpathproblems,JournalofOptimizationTheoryandAppli ationsvol.111,
589-613, 2001.
7. Hansen, P. :Bi riterion Path Problems. MultipleCriteria De ision Making :
Me-thodsandAppli ations,Springer-Verlag,109-127,1980.
8. Helmberg, .etRendl,F. :A Spe tral BundleMethodfor Semidenite
Program-ming,SIAMJournalonOptimization,vol.10(3),673-696,1999.
9. Jiménez, V.M. etMarzal, A. : A lazy version of Eppstein's k shortestpath
algo-rithm.Pro eedings of.2ndInternationalWorkshoponExperimentalandE ient
Algorithms (WEA 2003),Le tureNotes inComputerS ien e,vol. 2647, 179-190,
2003.
10. Martins, E.Q.: On a multi riteria shortest path problem, European Journal of
OperationalResear h,vol.16,236-245, 1986.
11. Paixão,J.M.P.,Martins,E.Q.V.,Rosa,M.S.etSantos,J.L.E.:Thedetermination
ofthepathwithminimum- ostnormvalue,Networks,vol.41(4),184-196, 2003.
12. Steuer,R.E.etChoo,E.U.:Anintera tiveweightedt heby hepro edurefor
mul-tipleobje tiveprogramming,Mathemati alProgramming,vol. 26,326-344,1983.
13. Stewart, B.S. etWhite, C.C: Multiobje tive A*. Journal of theAsso iation for
ComputingMa hinery,vol.38, 775-814,1991.
14. Vanderpooten,D.etVin ke,P.:Des riptionandanalysis ofsomerepresentative
intera tive multi riteria pro edures, Mathemati al and Computer Modelling, vol.
12, 1221-1238,1989.
15. Vin ke,P.:Problèmes multi ritères, CahierduCentred'EtudesRe her he
Opé-rationnelle, vol.16,425-439,1974.
16. Wierzbi ki,A.P.:Onthe ompletenessand onstru tivenessofparametri
hara -terizationstove toroptimizationproblems,ORSpe trum,Vol.8(2),73-87,1986.
17. Yu,G.etYang,J.:Ontherobustshortestpathproblem,Computersand