• Aucun résultat trouvé

Recherche d'un chemin de meilleur compromis dans un graphe multicritère

N/A
N/A
Protected

Academic year: 2021

Partager "Recherche d'un chemin de meilleur compromis dans un graphe multicritère"

Copied!
15
0
0

Texte intégral

(1)

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

(2)

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érimentations

numé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 denoeudset

E

⊆ V × V

unensemble ni d'ar s, on se donne un graphe

G

= (V, E)

omportant une sour e

s

∈ V

(3)

et un puits

t

∈ V

. A haque ar

u

∈ E

, est asso ié un ve teur de fon tions oûtsàvaleursdans

N

delaforme

c(u) = (c

1

(u), . . . , c

q

(u))

q

estlenombre de ritères duproblème. Un hemin

P

entre deux noeuds

s

et

t

de

V

est une séquen edenoeudsdébutantpar

s

et seterminantpar

t

,tellequedeuxnoeuds

v

h

et

v

h+1

qui se suivent dans la séquen e sont reliés par un ar de

E

. Tout hemin

P

de

s

à

t

est évaluéparleve teur

c(P ) = (c

1

(P ), . . . , c

q

(P ))

enposant

c

i

(P ) =

P

u∈P

c

i

(u)

pour

i

= 1, . . . , q

. L'image d'un hemin

P

dans l'espa e des ritèresest unve teur

p

= (p

1

, . . . , p

q

) ∈ N

q

tel que

c(P ) = p

. L'ensemble des hemins de

s

à

t

réalisables dans

G

(appelés aussi solutions) est noté

P

. Onappelle

X

l'ensembledesve teursreprésentantsles oûtsdes heminsde

P

dansl'espa edes ritères,et

N D

l'ensembledesve teursnon-dominésde

X

(i.e.

N D

= {p ∈ X

,

∄p

∈ X

,

p

≻ p}

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 ompromisentre

les 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

ω

1

, . . . , ω

q

représententlespoidsattribuésaux

q

ritères.Enremarquantque

P

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

ω

dans

G

, ilsut de her herle plus ourt hemindans

G

s alarisé(i.e.valuéparlafon tions alaire

c

1

ω

), equi nousramèneàunproblèmemono ritèrequel'onsaitrésoudreentemps

polyno-miallorsque legraphe

G

est sans ir uitabsorbant.Cependant, ommenousle rappelonsdans l'exemplesuivant,unetelle appro hen'est passatisfaisante ar

ellenepermetpasd'atteindretouteslessolutionsnon-dominées,etdon parfois,

elledemeilleur ompromis.

Exemple 1 Considéronsunensemble

X

omposédesve teurs

p

,

p

et

p

′′

asso- iés aux hemins non-dominés

P

,

P

et

P

′′

telsque

p

= (10, 4)

,

p

= (9, 6)

et

p

′′

= (3, 11)

. Nous allons déterminer pour quels ve teurs

ω

= (ω

1

, ω

2

)

,

p

,

p

ou

p

′′

minimise

s

1

ω

. On a:

s

1

ω

(p) = 10ω

1

+ 4ω

2

,

s

1

ω

(p

) = 9ω

1

+ 6ω

2

et

s

1

ω

(p

′′

) =

1

+ 11ω

2

. Ainsi :

s

1

ω

(p) < s

1

ω

(p

′′

) ⇔ ω

1

< ω

2

,

s

1

ω

(p) < s

1

ω

(p

) ⇔ ω

1

<

2

et

(4)

s

1

ω

(p

′′

) < s

1

ω

(p

) ⇔ ω

2

<

6

5

ω

1

. Don ,dèsque

ω

1

< ω

2

, leve teurminimisant

s

1

ω

est

p

, dès que

ω

2

< ω

1

, leve teur minimisant

s

1

ω

est

p

′′

, et

p

et

p

′′

minimisent tous deux

s

1

ω

lorsque

ω

1

= ω

2

. Le ve teur

p

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 de

distan 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 hemin

P

est préféré(i.e.jugé ommeréalisantunmeilleur om-promis)àun hemin

P

ssi

s

ω

(p) ≤ s

ω

(p

)

Danslasuitedel'arti le,nousutilisons ommepointderéféren e

r

lepoint idéal

id

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 qui

optimisetousles ritèressimultanément.Notonsque,pourtout hemin

P

ona

p

i

≥ id

i

equipermetd'é rire

s

ω

(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

α

i

représente lepoidsdu ritère

i

et

1

|nad

i

−id

i

|

unfa teurde normalisation.

Ainsi,

s

ω

(p)

représentei i ladistan enormalisée delavaleurdu hemin

P

au point idéal selonla norme pondérée de T heby he. La Figure 1illustre ette

dé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

(5)

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 )

1

qui 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 programmation

dyna-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 est

2

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 hemin

P

1

=

<

1

,

3

,

5

,

6

,

7

> de valeur

(4, 3)

. Or, lesous- hemin <

1

,

3

,

5

>de

P

1

qui apour valeur

p

= (0, 3)

représenteun moins bon ompromis que le hemin <

1

,

2

,

3

,

5

>qui a pour valeur

p

= (1, 2)

,

1

(6)

(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 a

id

= (0, 0)

,

nad

= (7, 7)

et

ω

= (

1

7

,

1

7

)

, etdon

s

ω

(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 évaluation

s

1

ω

, e qui permet d'atteindre tousles hemins réalisables (et don touslesnon-dominés) enexploitantungraphe s alaire(i.e. ungraphedontles

ar ssontvaluésparuns alairede

R

).Dans etteoptique,nousétablissonsune propriété permettant de stopper ette énumération à partirdu moment où la

garantied'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àvaleursdans

R

+

telque:

∀i = 1, . . . , q,

x

¯

i

= id

i

+

1

ω

i

s

ω

(x)

(1) Preuve.

Supposonsquel'onait

y

∈ X

et

x

∈ X

,telsque

s

1

ω

(y) > s

1

ω

x)

i.e.

q

X

i=1

ω

i

y

i

>

q

X

i=1

ω

i

x

¯

i

ave

x

¯

i

= id

i

+

1

ω

i

s

ω

(x)

(7)

Onadon

q

X

i=1

ω

i

(y

i

− id

i

) > qs

ω

(x)

. (2) Or

s

ω

(y) = max

i=1,...,q

ω

i

{y

i

− id

i

}

, don

q

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-à-dire

s

ω

(y) > s

ω

(x)

2

Cettepropriéténousassurequepourtous hemins

P, P

∈ P

telsque

s

1

ω

(p

) >

s

1

ω

p)

alors

P

représenteunmoins bon ompromisque

P

ausensde

s

ω

.Don , une fois untel hemin

P

engendré lorsde l'énumération roissante(selon

s

1

ω

) des hemins, on sait qu'il n'existe pas, parmi les hemins suivants, de hemin

représentantunmeilleur ompromisque

P

ausensde

s

ω

.

L'algorithmequenousproposons onsistedon àénumérerles hemins

réa-lisablesdugraphe

G

dansl'ordre roissantselon

s

1

ω

.Cetteénumérations'arrête lorsqu'un hemin

P

devaluation

p

telque

s

1

ω

(p

) > s

1

ω

p)

estengendré(où

p

¯

est lavaluationdéniepar(1)àpartirdelavaluation

p

dumeilleur hemin ourant

P

).En eet,lorsqu'un tel hemin

P

est engendré,

P

est for émentle meilleur heminselon

s

ω

surl'ensembledes heminsde

P

.

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 permetdetrouverles

k

meilleurs heminsen

O(m + n log n + k)

dansungraphe s alaire où

m

est le nombre d'ar s et

n

le nombre de sommets. L'algorithme n'étant pas énon é pré isémentdans [4℄, nous en présentonsun énon é formel

danslapartie 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 noeud

t

pour tous les noeuds du graphe etde lessto kerdansuntas (arbrebinairedanslequel haquenoeuda

une évaluation inférieure ouégale àtoussesdes endants) àl'aide desquelsles

heminsalternatifsauplus ourt hemin(déterminéaupréalable)sont onstruits

(8)

Algorit hme 1:Déterminationdu hemindemeilleur ompromis

Déterminerlepointidéal

id

etlepointnadir

nad

P

1

←− arg min

P ∈P

s

1

ω

(p)

s

←− s

ω

(p

1

)

b

←− s

1

ω

p

1

)

P

←− P

1

k

←− 2

tantque

s

1

ω

(p

k−1

) ≤ b

faire

Déterminerle

k

-ièmemeilleur hemin

P

k

selon

s

1

ω

siiln'yaplusde heminsalors

Sortirdelabou le nSi si

s

ω

(p

k

) < s

ω

(p

)

alors

b

←− s

1

ω

p

k

)

P

←− P

k

s

←− s

ω

(p

)

nSi

k

←− k + 1

nTq Sorties:

P

, heminoptimalausensde

s

ω

Pour ela, on ommen e par déterminerle plus ourt hemin den'importe

quelsommetdugraphe

G

ausommetnal

t

,àl'aidedel'algorithmedeDijkstra par exemple. On obtient ainsi l'arbores en e des plus ourts hemins

T

. On onstruitensuitelegraphedesregrets

R

, 'est-à-direlegraphedont haquear issu d'un noeud

v

∈ V

exprime le regret

δ

de ne pas prendre le plus ourt hemin de

v

à

t

. Supposons par exemple que pour aller d'un sommet

u

à un sommet

v

de

G

, 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 de

u

dans le graphe des regrets qui va vers

v

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 de

u

nous oûtera don 1 de plus que prendre le plus ourt hemin. Le graphe des regrets permet ainsi

d'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 hemins

T

.Unefois

R

onstruit,l'idée est d'exploiter es regrets en ordre roissantan d'engendrerles heminsdans

l'ordre roissant des oûts. On onstruit alors un tas

H

out

(v)

dont les noeuds sont les ar s issus du sommet

v

dans le graphe des regrets, pour ha un des sommetsde

V

. Lavaleurasso iéeà ha unde es noeudsest elleduregret

δ

. On onstruit ensuite un tas général

H

G

(v)

pour ha un des sommets

v

, dans lequellara ineest

H

out

(v)

etlenoeudsuivantest

H

out

(w)

w

estlesommet suivant

v

dans le plus ourt hemin allant de

v

à

t

, autrement dit la tête de l'ar issu de

v

dans

T

est

w

( e que l'on note

w

= Suivant

T

(v)

). L'ensemble

(9)

1

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)

pourtout

v

∈ E

dénitlastru ture

D(G)

.Ainsi,touslesnoeuds de

D(G)

sont les ar s de

E

− T

que l'on appelle déviations.

D(G)

représente l'ensemble des hemins de

s

à

t

qui dièrentde

T

par seulement unar . C'est àpartirdelastru ture

D(G)

quel'onpeut onstruireles

k

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 de

v

à

t

et

S

est unensemble dedéviations(i.e.d'ar sde

R

).Pour onstruire

P

i

àpartirde

S

i

dans et

algo-rithmeilsutde ompléterlesar sde

S

i

par euxdu heminde

v

à

t

dans

T

v

estlatêtedudernierar de

S

i

.L'étape1de etalgorithmepermetde umuler

lesdéviationspossibles.L'étape2permetdetraiterlesautresdéviationsàpartir

dusous- hemin allantde

s

àlaqueue de

e

, 'est-à-dire elles qui onduirontà unplusmauvais heminque eluiquivientd'êtretrouvémaisàpartirdumême

sous- 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 tas

H

G

(v)

sont onstruits aufuret àmesuredeleur utilité( 'est-à-direlorsque le noeud

v

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 sommet

g

. La première étape de l'algorithme est la détermination des points idéal et nadir.

(10)

Algorit hme 2:Déterminationdes

k

plus ourts heminsdugraphes alaire

G

Déterminerl'arbores en edesplus ourts hemins

T

etlegraphedesregrets

R

Endéduire

P

1

Constru tion de

D(G)

: pour haque

v

∈ V

faire

Construire

H

out

(v)

Insérer

H

out

(v)

dans

H

G

(Suivant

T

(v))

pourformer

H

G

(v)

nPrCh

Q

←− h(s)

(pluspetitedéviationpossibleàpartirde

P

1

)

pour

k

de 2à

K

faire Extraire

S

k

l'ensemblededéviationsde

Q

ayantlapluspetiteévaluation Endéduire

P

k

Etape 1:

e

←−

dernièredéviationde

S

k

f

←− h(t

ê

te(e))

Insérer

S

k

S{f }

dans

Q

ave l'évaluation

L(S

k

)

+

δ(f )

Etape 2:

pour haquedéviation

S

ω

telque

(e, f )

estunar dans

D(G)

faire Insérer

S

k

\e

S{f }

dans

Q

ave l'évaluation

L(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ûtsde

leurs 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 solution

P

1

ave

s

ω

(p

1

) = 1

. On a alors

¯

p

1

= (8 + (9 × 1), 11 + (8 × 1)) = (17, 19)

.Ce inouspermetd'initialiserlaborne

b

à

17

9

+

19

8

= 4, 264

. On sait don que tout hemin

P

tel que

s

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)

ave

s

1

ω

(p

2

) = 3, 264 ≤ b

, la génération des solutions ontinue don .

b

n'est pas modié puisque

s

ω

(p

2

) =

1 = s

(11)

Chemin

P

Chemin Coût

p s

ω

(p) s

ω

(p) s

ω

p)

b

P

1

<

a

,

b

,

c

,

f

,

g

> (8,19) 3,264 1 4,2644,264

P

2

<

a

,

d

,

f

,

g

> (17,11)3,264 1 4,2644,264

P

3

<

a

,

d

,

c

,

f

,

g

>(13,15)3,319 0,556 3,3753,375

P

4

<

a

,

b

,

c

,

e

,

g

>(13,16)3,444 0,625 3,5143,375

Tab.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

n

estlenombredesommets.Ainsi,l'énumération detousles heminsave l'algorithmed'Eppsteinsefaiten

O(m + n log n + 2

n

2

)

. Ilexistedon desinstan espourlesquellesletempsdedéterminationdu hemin

de 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 sommet

j

par un ar

(i, j)

pour

i < j

ave une probabilité de

0, 5

. De plus, les sommets

i

et

j

ne peuvent pas être reliésparunar si

j

− i >

n

2

n

estlenombredesommets.Celapermet d'éviterd'avoirdes heminsave trèspeud'ar spuisqu'ainsilessommets

pro hes de

s

dansle graphene sont pasreliés parunar auxsommets pro hes de

t

danslegraphe.

(12)

 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 ar

u

∈ E

est

c

i

(u) = a

i

z

i

(u) + d

i

z

i

(u)

esttirée aléatoiremententre 1et 20,

a

i

entre 1et 300et

d

i

entre1et10000.Ainsi,onpeutespéreravoirdes ritèresdontle oût peutvarierdequelquesdizainesetd'autresdontle oûtpeutvarierdequelques

milliers.

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)

n

estlenombredesommetset

m

lenombred'ar s). Letempsobtenu orrespondautempsmoyenréaliséparlesalgorithmesexé utés

sur 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

(13)

#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,3s

Tab.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 signieque

x

solutionsontété onstruiteset que

y

de es

x

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 à

(14)

#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 ompromisentretousles

ritè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

(15)

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

Figure

Fig. 1. Solution de meilleur 
ompromis dans un espa
e bi
ritère
Fig. 2. Instan
e de Hansen[7℄
Fig. 3. Graphe G et son graphe des regrets
Fig. 4. Graphe bi
ritère et graphe s
alaire 
orrespondant
+4

Références

Documents relatifs

Ce programme permet d'étudier sous un angle nouveau les relations entre algorithmes de plus court chemin et de résolution de systèmes linéaires.. Mots clés : Graphes, programme

Résumé. — Nous présentons dans cet article un algorithme qui fournit une décomposition d'un graphe en sous-graphes faiblement interconnectés. Nous montrons que le résultat est

Dans le prédicat de recherche, on considère tous les états auxquels peuvent conduire les opérateurs applicables, et l’on choisit l’opérateur qui conduit à l’état le plus

Attention, votre moteur doit être générique et fonctionner sur le problème jouet, le problème du cuir mais également sur un autre jeu de test (une autre base de règles)

Un sommet se coloriant selon son niveau dans l’arbre, il ne doit, pour choisir sa couleur, que tenir compte des couleurs choisies par ses voisins situés plus haut que lui

Les valeurs sur les arcs correspondent au prix en Frs pour les parcourir et les valeurs à côté des sommets représentent le prix en Frs à payer pour passer la nuit dans un hôtel de

Cependant, on n’aura pas le droit d’utiliser simultan´ ement ces deux arˆ etes lors de la recherche d’un sous-graphe d’ordre maximal?. Ce sont des arˆ etes mutuellement

En justifiant, associer à chacun des 4 nuages de points qui suivent l’un des coefficients de corrélation, ainsi que les séries étudiées :.. rang mondial des écoles de