You are on page 1of 150

n vue de I'obtention du

UOC1OkA1 UL L'UH|vLkS|1L UL 1OULOUSL



DeIivre par :

DiscipIine ou speciaIite :




Presentee et soutenue par :



7itre :








coIe doctoraIe :
Unite de recherche :
Directeur(s) de 7hese :
Rapporteurs :
Ie :
Autre(s) membre(s) du jury
Universit Toulouse 1 Capitole (UT1 Capitole)
Mathmatiques Informatique Tlcommunications (MITT)
Calcul d'itinraire multimodal et multiobjectif en milieu urbain
lundi 15 novembre 2010
Tristram Grbener
Informatique
Xavier Gandibleux, Professeur, Universit de Nantes
Jin-Kao Hao, Professeur, Universit d'Angers
Yves Duthen, Professeur, Universit Toulouse 1 Capitole
Alain Berro, Matre de Confrence, Universit Toulouse 1 Capitole
Institut de Recherche en Informatique de Toulouse (IRIT)
Christian Artigues, Charg de recherche 1re classe, LAAS-CNRS
Cyrille Grani, Ingnieur, SODIT
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
i
Remerciements
Vouloir remercier les personnes qui ont particip, inuenc ou juste soutenu ma thse est
un exercice dicile. Cela suppose de faire le tri entre toutes les personnes quon a cotoyes
en esprant navoir oubli personne. Pour contourner ce problme, je vais remercier des
groupes damis, sans donner de nom en particulier.
Je commence par une exception en remerciant Yves pour mavoir accueilli et davoir t
mon directeur de thse. La deuxime (et avant-avant-dernire) exception est Alain pour
son encadrement, pour avoir support mes ides buttes quand il sagit de programma-
tion et mon manque dintrt dans le championnat de rugby.
Merci aux rapporteurs, Xavier Gandibleux et Jin-Kao Hao davoir montr un intrt pour
mon sujet de thse.
videmment merci ma famille qui ma toujours encourag faire une thse et leur vo-
lont essayer de comprendre plus concrtement ce que je fais.
Merci toute la ME-310 pour lambiance dtendue, les dbats striles et les expditions
vers Saint-Pierre ou le Txus. Il ne faut pas non plus oublier les permanents pour faciliter
la bonne ambiance et pour leurs conseils. cette vie quotidienne ont galement contribu
les lles de la caftria avec plats chauds et assiettes anglaises froides.
Il y a galement les thsards dautres disciplines rencontrs lors des formations ou lors
des sorties AMESAT. Je pense en particulier aux trolls norvgiens.
Parmi mes amis les plus anciens il y a les nantais et les gasy qui ont pu suivre de plus ou
moins loin ces trois annes et que jai toujours eu plaisir revoir rgulirement.
Parmi mes amis les plus rcents, il y a les capoeiristes de Ginga Nag qui mont permis
de faire de beaux voyages, avoir des courbatures presque toutes les semaines et rajouter
la fatigue physique la fatigue intellectuelle.
Enn, merci la Sodit et la rgion Midi-Pyrnes pour avoir montr un intrt dans les
problmatiques de cette thse et pour mavoir nanc pendant trois ans.
Et si aprs a, jai encore oubli quelquun, merci tous !
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
ii
PS : Je remercie galement tous ceux qui ont lu le manuscrit aprs lenvoi aux rapporteurs
et qui ont trouv une quantit impressionante de fautes.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
iii
Rsum
Motivations
Avec une prise de conscience environnementale croissante et avec laugmentation des
cots de lnergie, de plus en plus de personnes tendent utiliser les transports en com-
mun ou des modes de transports doux tels que la marche ou le vlo.
Cependant, un seul mode de transport ne peut pas couvrir tous les besoins. De ce fait, la
combinaison de dirents modes de transport peut se rvler tre une solution particu-
lirement intressante. Par exemple, lusager peut conduire une voiture jusqu une gare
ou encore marcher entre deux stations pour viter un changement supplmentaire.
Trouver le meilleur chemin multimodal pour une personne donne est une tche di-
cile. Chaque personne aura des prfrences direntes concernant la dure du trajet, le
cot montaire, la pollution engendre, le nombre de changements, etc. De plus, les pr-
frences dun mme usager dpendront des circonstances. Par exemple sil pleut, il ne
va pas prendre le vlo et sil a des bagages encombrants, il prfrera probablement viter
des changements. Loptimisation multiobjectif permet de proposer lutilisateur plusieurs
solutions dites quivalentes. Ainsi lutilisateur choisira litinraire qui lui convient en fonc-
tion de ses prfrences un moment donn.
Problmatiques
Le problme principal rsoudre est donc le problme du plus court chemin multiobjectif
de point point dpendant du temps. Lenjeu est dtre capable davoir des rsultats de
lordre de la seconde lchelle dune grande agglomration an de pouvoir envisager
une application relle. Nous considrons en eet que cest un temps tout fait acceptable
pour un site web proposant le calcul ou encore pour un outil de navigation individuel.
Toujours dans cette optique dapplication relle, une attention particulire a t porte
sur la simplicit et la gnricit des approches proposes. Nous ne nous restreignons pas
un nombre prdni de modes de transport ou dobjectifs.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
iv
tant donn que le front de Pareto peut tre exponentiel, nous nous sommes galement
pos la question de comment slectionner un nombre plus restreint de solutions pour ne
pas noyer lutilisateur dans un grand nombre de solutions trop similaires.
Approches proposes
Aprs un tat de lart sur les plus courts chemins dpendants du temps, des plus courts
chemins multiobjectifs et le transport multimodal, nous proposons un modle qui permet
dexploiter des algorithmes traditionnels de parcours de graphes tel que lalgorithme de
Dijkstra avec trs peu dadaptations. Nous avons de plus fait attention garder une forte
gnricit an de pouvoir prendre en compte de nouveaux modes de transport tels que
les vlos en libre service et un grand nombre dobjectifs gnralement ngligs tels que
les missions de CO
2
ou encore le dnivel vlo.
La gnricit du modle nous permet dappliquer directement lalgorithme de Martins
en ne ladaptant que lgrement pour grer la dpendance au temps pour calculer le
plus court chemin multiobjectif. Dautres algorithmes rputs pour leurs performances
thoriques ou exprimentales ont t adapts au cas multiobjectif ou la dpendance du
temps. Nous avons galement propos des heuristiques simples permettant de garder le
temps de calcul de lordre de la seconde.
Enn, comme dans certains cas il peut y avoir une centaine de solutions possibles, nous
avons envisag plusieurs approches pour limiter le nombre de solutions retournes. Ces
approches peuvent sappliquer lors de la modlisation, mais aussi lors de la rsolution
ou encore a posteriori.
Applications
Les algorithmes ont t appliqus avec succs sur les villes de San Francisco, Los Angeles
et Rennes. Les performances sont susantes pour envisager une application relle.
Les modes de transport considrs sont la voiture, le vlo, la marche, les transports en
commun et les vlos en libre service. Les objectifs que nous avons considrs sont le temps
de trajet, le nombre de changements de modes, le nombre de changements de ligne au
sein dun mme mode de transport, le dnivel positif vlo et les missions de CO
2
.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
v
Table des matires
Partie 1 : tat de lart et problmatique 7
1 tat de lart 9
1.1 Gnralits sur les graphes 9
1.1.1 Notations 10
1.1.2 Reprsentation 12
1.2 Plus courts chemins simples 13
1.2.1 Dnitions 13
1.2.2 Caractristiques des algorithmes 14
1.2.3 Principaux algorithmes 14
1.3 Plus court chemin avec cots variables 19
1.3.1 Formalisation 20
1.3.2 Chemin le plus rapide sans contrainte 20
1.3.3 Prise en compte des grilles horaires 22
1.3.4 Chemin de moindre cot 26
1.4 Optimisation multiobjectif 27
1.4.1 Formalisme et notations 28
1.4.2 Complexit 30
1.4.3 Approches a priori 30
1.4.4 Approches interactives 32
1.4.5 Approches a posteriori 32
1.5 Itinraires multimodaux 42
1.5.1 Dicults 43
1.5.2 Graphe multivalu 43
1.5.3 Approche time-expanded 44
1.5.4 Approche multiobjectif 45
1.5.5 Questionnement 46
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
vi
2 Problmatique 47
2.1 Problmatique 47
2.1.1 Intrt pour lutilisateur 47
2.1.2 Intrt scientique 48
2.1.3 Taille des problmes 49
2.1.4 Comparatif des approches existantes 50
2.2 Limite dapplication des algorithmes 52
2.2.1 Plus court chemin statique 52
2.2.2 Chemin le plus rapide en fonction du temps 52
2.2.3 Chemin de moindre cot dpendant du temps 52
2.2.4 Plus court chemin multiobjectif dynamique 53
2.2.5 Conditions gnrales 53
2.3 Front de Pareto gnr selon les fonctions de cot 54
2.3.1 Les graphes 54
2.3.2 Les cots 54
2.3.3 Rsultats 55
2.3.4 Conclusion sur la nature des fonctions de cot 58
2.4 Slection de certaines solutions 58
Partie 2 : Modle et exprimentations 61
3 Modlisation dun rseau multimodal 63
3.1 Caractristiques souhaites 63
3.1.1 Modlisation naturelle 63
3.1.2 Aucune perte dinformation 64
3.1.3 Prise en compte de tous les modes de transport 64
3.1.4 Respect de la contrainte FIFO 64
3.2 Modlisation des dirents modes 65
3.2.1 Voitures, pitons et cyclistes 65
3.2.2 Transports en commun 66
3.2.3 Vlos en libre service et taxis 67
3.2.4 Co-voiturage et transport la demande 67
3.3 Nature des fonctions de cot 68
3.3.1 Formalisation des fonctions de cot 68
3.3.2 Caractristiques des fonctions de cot 68
3.3.3 Implmentation des fonctions 70
3.3.4 Approche statistique des cots 70
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
vii
3.4 Considrations pratiques 71
3.4.1 Taille du graphe gnr 71
3.4.2 Occupation mmoire 72
3.4.3 Obtention des donnes 73
4 Itinraire multimodal le plus rapide 75
4.1 Algorithmes 75
4.1.1 Dijkstra gnralis 75
4.1.2 Algorithme A* 75
4.2 Exprimentations 76
4.2.1 Implmentation 76
4.2.2 Ensemble de tests 76
4.2.3 Protocole dexprimentation 77
4.2.4 Les paramtres tests 77
4.3 Rsultats exprimentaux 78
4.3.1 Utilisation de fonctions de cot 78
4.3.2 Taille des instances 81
4.3.3 Algorithme A* 81
5 Meilleur itinraire multimodal multiobjectif 85
5.1 Algorithme de Martins dpendant du temps 85
5.1.1 Heuristiques 86
5.1.2 Exprimentations 87
5.1.3 Rsultats 88
5.1.4 Comparaison avec lexistant 90
5.1.5 Conclusion 91
5.2 Algorithme de Tsaggouris 91
5.2.1 Limitations 92
5.2.2 Exprimentations 93
5.2.3 Rsultats 93
5.2.4 Conclusion 93
5.3 Contraction hierarchies 94
5.3.1 Adaptation 94
5.3.2 Expriences 96
5.3.3 Conclusion sur les contractions hierarchies 97
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
viii
6 Slection dun sous-ensemble de solutions de qualit 101
6.1 Action lors de la modlisation 101
6.1.1 Exprimentation 102
6.1.2 Rsultats 102
6.1.3 Conclusion 103
6.2 Action pendant la recherche ditinraire : dominance relche 103
6.2.1 Exprimentation et rsultats 104
6.2.2 Application 105
6.2.3 Conclusion 105
6.3 Action a posteriori : classication des solutions 105
6.3.1 Procdure 106
6.3.2 Exemple 106
6.3.3 Ncessit de la normalisation 106
6.3.4 Bilan des k-means 106
7 Variantes simples 109
7.1 Optimiser le temps 109
7.2 Heure darrive prcise 110
7.2.1 Inversion du graphe 110
7.2.2 Modication du calcul du temps 110
7.2.3 Implmentation 110
7.3 Dparts dcals 111
7.3.1 Lancer plusieurs calculs ditinraires 111
7.3.2 Utiliser plus dtiquettes de dpart 111
7.3.3 Crer plusieurs tiquettes pour les grilles horaires 111
7.4 Dparts et arrives multiples 112
7.5 Paralllisation 112
7.5.1 Parallliser lalgorithme 112
7.5.2 Parallliser les requtes 113
7.6 Isochrones 113
A Implmentation cxix
A.1 Architecture du projet cxix
A.1.1 Organisation gnrale cxix
A.1.2 Traitement des donnes cxx
A.1.3 Interface web cxx
A.2 Dtail des algorithmes cxxi
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
ix
A.2.1 Gestion de la le de priorit cxxii
A.2.2 Gestion des horaires cxxii
A.3 Capture dcran du dmonstrateur cxxiii
B Systmes existants cxxv
B.1 Navitia de Canal TP cxxv
B.2 Reittiopas cxxv
B.3 Google maps cxxvi
B.4 Govlo cxxvi
B.5 Transpolitan cxxvi
B.6 OpenTripPlanner cxxvi
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
x
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
xi
Notations
N Ensemble des nuds
n Nombre de nuds dans le graphe
A Ensemble des arcs
m Nombre darcs dans le graphe
G Graphe
u Exemple de nud
v Exemple de nud
c Poids (ou cot) dun arc ou dun chemin
C Ensemble des poids (ou cots) associs aux arcs dun graphe

+
Ensemble des successeurs dun nud

Ensemble des prdcesseurs dun nud


F
t
Temps de parcours dun arc
F
c
Fonction de cot dun arc
q Nombre dintervalles de temps
Espace de dcision
k Nombre dobjectifs
P

Ensemble Pareto-optimal dans lespace de dcision


PF

Front de Pareto, dans lespace des solutions


t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
xii
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
xiii
Figures
1.1 Les sept ponts de Knigsberg. . . 10
1.2 Les sept ponts de Knigsberg reprsents par un graphe. . . 11
1.3 Exemple de classications de nuds pour le Highway Node Routing. . . 17
1.4 Exemple de partitionnement du graphe pour lapproche arc-ags . . . 19
1.5 Exemple de graphe espace-temps . . . 23
1.6 Exemple de fonction de cot sur un arc de transports en commun
dans un modle time-dependent 25
1.7 Exemple de fonction de cot sur un arc routier dans un modle
time-dependent . . . 25
1.8 Exemple de gestion du temps de changement . . . 26
1.9 Exemple de front de Pareto avec deux objectifs minimiser . . . 29
1.10 Dcoupage de lespace des objectifs en -optimisation. . . 41
2.1 Chemin de moindre cot de longueur innie. . . 52
2.2 Exemple de page urbain gnrant un front de Pareto continu. . . 54
2.3 Nombre dlments dans le front de Pareto en fonction du type de
cot et de graphe (2 objectifs) 56
2.4 Nombre dlments dans le front de Pareto en fonction du type de
cot et de graphe (3 objectifs) 57
2.5 Temps de calcul en fonction de la taille du front de Pareto 59
3.1 Exemples de graphes en plusieurs couches 65
3.2 Exemple de sparation dune ligne en deux lignes express et omnibus
pour garantir la condition FIFO 66
3.3 Exemple de la modlisation dun arrt en commun entre deux lignes 66
4.1 Temps de calcul selon les heuristiques, les modes de transport et la
distance (San Francisco) 79
4.2 Temps de calcul selon les heuristiques, les modes de transport et la
distance (Los Angeles) 80
4.3 Exemple de chemin le plus rapide Rennes (marche et vlo libre service) 82
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
xiv
4.4 Exemple de chemin le plus rapide San Francisco (marche, tramway,
marche, bus et marche) 83
5.1 Temps de calcul selon les objectifs et les heuristiques (San Francisco) 89
5.2 Nombre de solutions selon les objectifs et les heuristiques (San Francisco) 90
5.3 Temps de calcul selon les objectifs et les heuristiques (Los Angeles) 91
5.4 Nombre de solutions selon les objectifs et les heuristiques (Los Angeles) 92
5.5 Exemple de chemin San Francisco (54 min, 2 changements de mode,
0 changement de ligne) 99
5.6 Exemple de chemin San Francisco (67 min, 1 changement de mode,
1 changement de ligne) 99
5.7 Exemple de chemin San Francisco (83 min, 1 changement de mode,
0 changement de ligne) 100
5.8 Exemple de chemin San Francisco (83 min, 0 changement de mode,
0 changement de ligne) 100
6.1 Nombre de solution en fonction de la distance et de la frquence de
transition entre modes 103
6.2 Nombre de solutions selon les objectifs et les heuristiques (Los Angeles) 104
6.3 Classication des rsultats, 3 catgories, avec normalisation 107
6.4 Classication des rsultats, 5 catgories, avec normalisation 107
6.5 Classication des rsultats, 3 catgories sans normalisation 108
A.1 Capture dcran du dmonstrateur dvelopp cxxiii
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
xv
Algorithmes
1.1 Algorithme de Dijkstra 15
1.2 Algorithme de Bellman-Ford 16
1.3 Algorithme de Dijkstra gnralis (dpendant du temps) 21
1.4 Algorithme de Martins 36
1.5 Procdure fusion de lalgorithme de Tsaggouris 42
1.6 Algorithme de Tsaggouris 42
5.1 Algorithme de Martins gnralis (dpendant du temps) 86
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
xvi
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
1
Introduction
People of Earth, your attention, please [...] As you will no doubt be aware, the plans for development of the outlying
regions of the Galaxy require the building of a hyperspatial express route through your star system. And regrettably,
your planet is one of those scheduled for demolition. The process will take slightly less than two of your Earth minutes.
Thank you.
Douglas Adams, The Hitchhikers Guide to the Galaxy
Situation actuelle des transports en France
Un bilan cologique catastrophique pour la voiture individuelle
Premier metteur de CO
2
en France
Le transport est responsable enFrance de 34,3%des missions de CO
2
en2007, loindevant
le rsidentiel et le tertiaire (21,1%), de lindustrie (19,4%) ou de la production dlectricit
et de chaleur (12%)
1
.
Entre 1990 et 2007 les missions de CO
2
lies autransport ont augment de 27%, rduisant
ainsi nant les eorts de rduction faits par lhabitat et lindustrie.
Mme si le transport arien met plus de CO
2
par kilomtre et par passager par rapport
une voiture avec deux passagers, il nest heureusement pas utilis rgulirement par tout
le monde. De ce fait il ne reprsente donc que 4,7 millions de tonnes de CO
2
sur les 142,8
millions mis par les transports en France.
Le transport de marchandises ne reprsente que 18,1 millions de tonnes de CO
2
sur les
129,8 millions mis par le transport routier.
La voiture individuelle est donc de trs loin (78%) le premier responsable des missions
de CO
2
lies au transport.
Service de lObservation et des Statistiques (SOeS) du Commissariat Gnral au Dveloppement Durable
1
(CGDD)
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
2
lchelle de toutes les missions de CO
2
de la France, la voiture individuelle reprsente
donc toujours la premire cause avec 23,7% des missions en 2006.
Autres sources de problmes
La voiture est galement responsable dun grand nombre dautres problmes. On estime
que 80% du bruit dune ville provient de la voiture
2
. Paris est recouverte 25% par les
voiries
3
. En 2009, les accidents de la route ont tu 4 252 personnes et en ont bless 83 111
4
.
Le cot de possessionannuel dune voiture est estim en2004 4 273 euros selonlINSEE
5
,
tandis que les routes cotent aux collectivits 26 Millards deuros
6
.
Des alternatives ecaces
Aucune amlioration signicative de lautomobile
Quil sagisse de voitures hybrides, hydrogne, agrocarburants ou encore totalement
lectriques, les progrs technologiques promis par lindustrie automobile sont drisoires,
et prsenteront de nouveaux problmes (nergie ncessaire la production de llectri-
cit ou de lhydrogne, concurrence des agrocarburants avec lagriculture alimentaire,
manque de surface et appauvrissement des sols, raret de composants tels que le lithium).
titre de comparaison, une voiture lectrique consomme environ 20kWh pour 100km.
raison de 100g de CO
2
par kWh (moyenne franaise ; la moyenne europenne est de
400g/kWh), une telle voiture met donc 20g de CO
2
par kmen France et 80g en moyenne
en Europe !
1
.
Des transports existants ecaces
Un autobus urbain de 100 places met environ 800g/km. En optimisant le remplissage il
est donc possible dobtenir des meilleurs rsultats avec des technologies largement utili-
ses quavec une technologie qui est encore un stade embryonnaire. Le mtro et le tram-
way mettent en France respectivement 4g et 3g de CO
2
par passager et par kilomtre
2
.
Ademe : Agence de lEnvironnement et de la Matrise de lEnergie
2
http://www.paris.fr/
3
http://www.preventionroutiere.asso.fr/accidentologie_securite_routiere.aspx
4
http://www.insee.fr/fr/ffc/docs_ffc/ip1039.pdf
5
http://www.rprudhomme.com/resources/2009+co$C3$BBts+de+la+route.pdf
6
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
3
De plus la recherche sur de nouveaux matriaux, la rcupration dnergie lors du frei-
nage et loptimisation du remplissage des transports en commun devraient dautant plus
amliorer ces excellents chires.
Des transports presque parfaits
Bien videmment bien plus cologiques sont les modes doux tels que la marche ou le vlo
qui nmettent absolument aucune mission. Eneet le carbone mis lors de la respiration
est issu de notre alimentation qui est ou du moins devrait tre renouvelable. Si
nous prenions en plus en compte les missions lies la fabrication de vhicules, alors
les transports doux seraient dautant plus vertueux.
Un problme dinformation
Une mconnaissance des rseaux
La situation est paradoxale. La plupart des personnes intrroges rpondent quelles
abandonneraient la voiture si les transports en commun taient mieux dveloppes. Pour-
tant une part considrable de la population en France est desservie par les transports en
communs et se situe moins de deux kilomtres dun arrt de transports en communs
(soit moins de dix minutes vlo). Il sagit donc bien souvent dune mconnaissance des
rseaux ( je ne savais pas quil y avait telle ligne ), dun manque de volont de mieux
les connatre ( je nai pas envie dapprendre par cur lhoraire du bus ), de prjugs
( le bus cest lent
7
).
Ainsi, trs peu de personnes savent quil est possible de prendre un bus RATP au prix
dun simple ticket (170 en juillet 2010) pour aller de laroport dOrly Paris
8
.
Cette situation est encore plus criante dans le communes rurales. Ainsi le rseau des 62
lignes rgulires dautocar de la Haute-Garonne est inconnu pour la plupart des Toulou-
sains alors quil permet daccder pratiquement toutes les communes du dpartement
9
.
Pourtant de nombreux rseaux de bus sudamricains tels que celui de Curitiba, le Transmilenio de Bogota, le
7
trolleybus de Quito ou encore la Metrovia de Guayaquil feraient plir toutes les lignes de tramway en France
et mme certaines lignes de mtro en termes de passagers transports et de vitesse commerciale
Lignes 183 et 285
8
http://www.haute-garonne.fr/upload/pdf_arcenciel/carte_lignes_arc_en_ciel.pdf
9
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
4
Trop de possibilits
Finalement, lore des transports en commun est pnalise par sa richesse. Ainsi la RATP
et la SNCF proposent cinq cartes direntes pour lle-de-France : rseau de bus, rseau
de mtro, rseau de RER et rseau de Transilien (trains de banlieue) et le rseau noctilien
(bus de nuit). cel il faut rajouter les rseaux de bus dpartementaux.
De ce fait, lutilisateur a tendance se rabattre sur un seul mode de transport et nenvi-
sagera pas les autres devant la complexit de se reprsenter tout le rseau multimodal. Il
est donc parfaitement comprhensible que les trajets emprunts ne combinent pas plu-
sieurs modes de transport.
Objectifs de cette thse
Malgr cette richesse de lore de transport en commun et limpact cologique de la voi-
ture, celle-ci a reprsent 81,9% des kilomtre-passager eectus
1
en 2009. Il existe donc
une marge de manuvre colossale pour rduire la part de la voiture dans nos dpla-
cements et donc de signicativement rduire les missions de gaz eet de serre et les
autres nuisances.
Pour cela il est bien videmment ncessaire de dvelopper les ores de transport en com-
mun ainsi que les rseaux cyclables. Il serait cependant irraliste de considrer quil existe
un mode de transport qui serait capable de totalement remplacer la voiture tellement les
situations varient entre deux personnes.
La combinaison de plusieurs modes de transport permettrait une fraction des automo-
bilistes de se reporter vers des modes de transport plus conomiques et plus cologiques.
Ainsi en utilisant le vlo il sera possible datteindre une gare situe 2 km de sa maison
et donc compenser labsence de transports en commun denses.
Cependant une part des automobilistes continue utiliser la voiture par mconnaissance
des possibilits ditinraires. En eet labsence dun arrt de bus proximit dcourage
lutilisation des transports en commun et la trop grande distance dcourage de lutilisa-
tion duvlo. Pourtant la combinaison duvlo et des transports en commun peut se rvler
tre un excellent compromis. Les possibilits ditinraires deviennent dautant plus nom-
breuses que se dveloppent de nouveaux modes de transport tels que les vlos en libre
service. Il est donc indispensable de dvelopper un outil capable de prsenter plusieurs
propositions un utilisateur pour quil trouve un compromis qui lui corresponde.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
5
Nous proposons au cours de cette thse un systme ayant pour ambition de prsenter
un utilisateur plusieurs itinraires entre deux points an quil y trouve un compromis
intressant correspondant sa propre situation et aux eorts quil est prt consentir.
Nous pensons en eet que tout utilisateur qui lon prsente de nouveaux trajets per-
mettant datteindre la destination envisagera srieusement dabandonner, au moins en
partie sur quelques trajets, la voiture. Ainsi, mme en changeant le comportement dune
partie des automobilites, il sera possible de rduire les missions de CO
2
sans eectuer
le moindre investissement.
Ainsi, si limpact sur lorganisation des transports reste trs modeste, nous esprons que
ladoption dun tel systme permettra de contribuer au recul de la voiture.
Scientiquement, cette thse est plus ambitieuse, puisque nous voulons proposer une ap-
proche globale au problme du plus court chemin multimodal et multiobjectif qui puisse
tre applique sur des instances relles de grande taille avec des performances raison-
nables. Nous prsentons les dirents critres que nous souhaitons prendre en compte
dans le tableau 2.1 et montrons quaucune tude antrieure na, notre connaissance,
propos une approche pour satisfaire tous ces critres.
Organisation du manuscrit
Nous commenons par prsenter les travaux existants dans le domaine du calcul diti-
nraire dans un cadre dpendant du temps mais galement lorsque nous dsirons opti-
miser plusieurs critres simultanment.
Le deuxime chapitre tudie thoriquement et exprimentalement la nature des objectifs
optimiser an davoir une meilleure comprhension des limites dapplication.
Le troisime chapitre prsente le modle que nous proposons. Celui-ci est particulire-
ment simple apprhender sans pour autant limiter les possibilits de combinaison de
modes de transport ou de critres optimiser.
Les chapitres 4 et 5 prsentent le calcul ditinraire proprement parler. Dans un premier
temps il sagit uniquement de trouver le trajet le plus rapide et dans un deuxime temps
en optimisant dautres critres.
Lapproche multiobjectif que nous avons adopte propose plusieurs alternatives lutili-
sateur. Cependant dans certains cas tropde solutions peuvent nuire lintrt dusystme.
Nous nous intressons donc dans le sixime chapitre la slection dun nombre rduit
de solutions de qualit.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
6
Enn, le septime et dernier chapitre propose quelques variantes aux problmes que nous
avons traits.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
7
Premire partie :
tat de lart et
problmatique
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
8
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
9
Chapitre 1
tat de lart
Dans le cochon, tout est bon.
Adage populaire franais
Introduction
Ce chapitre a pour but de rappeler les bases requises sur les graphes pour situer nos
travaux.
Deux axes thoriques sont fondamentaux pour sintresser notre sujet : le plus court
chemin dynamique et le plus court chemin multiobjectif. Cependant avant de les prsen-
ter, nous dcrivons leurs bases communes. Dans un premier temps nous prsentons les
gnralits autour des graphes. Dans un deuxime temps le plus court chemin dans un
graphe, en nous focalisant sur les deux algorithmes les plus utiliss savoir celui de
Dijkstra et celui de Bellman. En partant de ces algorithmes, nous verrons comment trai-
ter le cas lorsque le graphe varie en fonction du temps. Enn, nous nous intresserons au
plus court chemin multiobjectif.
Ces bases thoriques ayant t poses, nous tudierons les rares approches existantes qui
traitent du plus court chemin multimodal an de mieux situer nos axes de recherche.
1.1 Gnralits sur les graphes
Dans un article publi en 1736, Leonhard Euler dmontre quil est impossible demprun-
ter une et une seule fois les sept ponts de Knigsberg (aujourdhui Kaliningrad). Pour cela
il introduit une structure de donnes qui sera appele plus tard graphe.
Un graphe est une structure de donnes trs simple utilise dans de nombreux domaines
tels que les tlcommunications, la planication, llectronique, les transports ou encore
la thorie de la complexit.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Gnralits sur les graphes
10
Figure 1.1 Les sept ponts de Knigsberg. Euler dmontra quil est impossible de
traverser une et une seule fois tous les ponts et introduisit la notion de graphe
Google Scholar rfrence prs de cinq millions darticles comportant le mot graph dans le
titre. Face ltendue du domaine il ne serait donc pas possible de prsenter lensemble
de la thorie des graphes. Nous nous focaliserons donc dans cet tat de lart sur le pro-
blme particulier du plus court chemin. Aprs avoir dni les notations, nous prsen-
terons les principaux algorithmes en nous intressant en particulier leurs conditions
dapplications.
1.1.1 Notations
En simpliant lextrme, un graphe dnit lexistence dune relation entre objets tels
quune ligne entre deux stations de mtro, une relation damiti dans un rseau social ou
encore une rue entre deux carrefours.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
11
Nuds et arcs
Les objets sont appels nuds (nodes) ou sommets (vertices) et les relations arcs (edges) ou
artes (links). Soit Nlensemble des n = |N| nuds o || dsigne le cardinal dun ensemble
et A lensemble des m = |A| arcs. Puisquun arc relie toujours exactement deux nuds
(mais deux nuds ne sont pas ncessairement relis), on a A N N. G(N, A) dnit
donc un graphe.
1
2
3 4
Figure 1.2 Les sept ponts de Knigsberg reprsents par un graphe. Les arcs
reprsentent les ponts, les nuds 1 et 2 la terre ferme et les nuds 3 et 4 les les
tre orient ou pas
Lorsque les relations sont symtriques, le graphe est dit non-orient. Formellement, un
graphe est non-orient lorsque (u, v) A, (v, u) A. Un rseau informatique sera g-
nralement non-orient puisque deux ordinateurs peuvent communiquer dans les deux
sens. loppos, un rseau routier est orient pour modliser les rues sens unique. Il
est habituel (mais pas systmatique) dutiliser les termes nud et arc pour les graphes
orients et sommet et arte pour les graphes non orients.
Poids sur les arcs
Dans de nombreux problmes, il est souhaitable de pouvoir qualier une relation. Pour
cela chaque arc est associ un poids qui le dcrit. Dans un rseau social il peut dnir la
nature de la relation (ami, famille, collgue) et dans un rseau routier la longueur dune
rue. Parfois le terme cot est utilis.
En associant chaque arc a A un poids c
a
C, on obtient un graphe G(N, A, C) qui
est dit valu.
Mme si dans les cas les plus courants les poids sont constants, il est possible dutiliser
des fonctions pour reprsenter les poids.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Gnralits sur les graphes
12
Successeurs et prdcesseurs
La fonction
+
dnit pour chaque nud les successeurs, soit
+
(u) = {v | (u, v) A}.
Symtriquement on dnit les prdcesseurs

(u) = {v | (v, u) A}. Lorsque le graphe est


symtrique les prdcesseurs et successeurs dun nud sont les mmes. Plus gnrale-
ment, deux nuds sont dit adjacents lorsquils sont relis par un arc.
Degr et densit
Le degr dun nud est le nombre darcs adjacents ce nud et la densit dun graphe
est le rapport entre le nombre darcs sur le nombre de nuds, soit
m
n
. On considre un
rseau routier de type Manhattan o les rues se croisent toujours en un carrefour quatre
branches, si les rues sont gnralement double sens et en utilisant un graphe orient,
alors le degr moyen dun nud sera proche de 8, soit deux arcs par rue du carrefour.
Dans ce mme cas, la densit du graphe sera de lordre de 4.
1.1.2 Reprsentation
Pour reprsenter un graphe informatiquement, gnralement deux modlisations sont
utilises.
Matrice dadjacence
Une matrice Mde dimension nn reprsente un graphe de la manire suivante : M
uv
= 1
sil existe un arc du nud u au nud v et 0 sinon. Plutt que 1, il est possible dutiliser le
poids de larc pour marquer son existence. Si cette reprsentation permet de facilement
tester lexistence dun arc en O(1), obtenir lensemble des successeurs dun nud est en
O(n). Enn, la mmoire ncessaire pour stocker la matrice est en O(n
2
).
Liste dadjacence
Dans cette reprsentation, un vecteur de n lments contient pour chaque nud la liste de
ses successeurs. Cette reprsentation ncessite donc moins de mmoire quune matrice
dadjacence et obtenir la liste des successeurs dun nud est en O(1). Lorsque le degr
des nuds est indpendant de la taille du graphe comme dans un rseau routier
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
13
alors la mmoire ncessaire est en O(n). Cette reprsentation est donc prfre pour les
graphes grands et peu denses.
1.2 Plus courts chemins simples
1.2.1 Dnitions
Chemin
Un chemin (ou itinraire ou route dans le contexte des transports) r = u
1
, u
2
, . . . , u
l
dans
un graphe est une suite ordonne de l = |r| nuds tels que deux nuds successifs soient
relis par un arc i 1, . . . , l 1, (u
i
, u
i+1
) A. Lorigine du chemin est appel source et
la destination puits.
Longueur dun chemin
Dans un graphe valu par des valeurs relles, la manire immdiate pour valuer la lon-
gueur dun chemin est de sommer le poids des arcs traverss :
c(c) =
l1

i=1
c
u
i
,u
i+1
Le plus court chemin entre deux nuds est le chemin qui minimise la longueur parmi tous
les chemins possibles entre ces deux nuds. Cependant, au lieu de considrer la somme il
est possible de considrer dautres types dobjectifs tels que Min-Max (par exemple pour
trouver un goulot dtranglement) ou encore produit.
Arbre
Un arbre est une forme particulire de graphe o chaque nud na au plus quun seul
prdcesseur, soit u N, |

(u)| 1. Un chemin est donc un cas particulier darbre.


Un arbre couvrant dun graphe est un arbre qui contient tous les nuds du graphe. Un
arbre couvrant dnit donc un chemin dun nud vers tous les autres.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Plus courts chemins simples
14
1.2.2 Caractristiques des algorithmes
De nombreux algorithmes ont t dvelopps depuis les annes 1950 pour calculer le
plus court chemin dans un graphe. Ils se direncient par un certain nombre de caract-
ristiques :
Poids acceptables : certains algorithmes nacceptent que des arcs dont le poids est po-
sitif ;
Chemins calculs : il existe des algorithmes qui calculent le plus court chemin de
nud nud, entre toutes les paires de nuds ou encore dun nud vers tous les
autres. Dans ce dernier cas, lalgorithme va gnrer un arbre couvrant ;
Prise en compte dinformations externes : parfois lutilisation dune connaissance ex-
terne la structure du graphe peut acclrer la recherche.
1.2.3 Principaux algorithmes
1.2.3.1 Lalgorithme de Dijkstra
Initialement dcrit dans Dijkstra [1], cet algorithme calcule le plus court chemin dun
nud vers tous les autres et ne fonctionne quavec des arcs poids positif.
Une tiquette (label) est associe chaque nud indiquant la plus courte distance trouve
entre le nud et la source. Initialement cette tiquette vaut +pour tous les nuds, sauf
pour la source o elle sera initialement 0.
Il sagit dun algorithme glouton, qui en partant de la source, slectionne le nud jamais
explor ayant ltiquette la plus petite et met jour les tiquettes de ses successeurs sil
y a une amlioration. Cette proprit peut tre utilise dans la recherche du plus court
chemin entre deux points. En eet la recherche peut tre arrte ds que le puits est le
nud de plus faible poids de la le Q. Le pseudo-code correspondant est indiqu dans
lalgorithme 1.1.
chaque itration, un nud est retir dnitivement de la le Q et son poids est x d-
nitivement. Cest pour cela quil sagit dun algorithme dit de label-setting, qui soppose
aux algorithmes de label-correcting.
La complexit de cet algorithme dpend fortement des structures de donnes utilises.
Une implmentation nave est en O(n
2
). Lutilisation de tas de Fibonacci pour la le de
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
15
priorit Q permet dobtenir une complexit en O(m + nlogn) Fredman,Tarjan [2]. Dans
le cas particulier dun rseau routier, puisque m est de lordre de n, la complexit est de
seulement O(nlogn).
1 FONCTION Dijkstra(source, nuds, arcs, poids)
2 POUR TOUT u de nuds FAIRE
3 dist[u] := +
4 pred[u] := indfini
5 dist[source] := 0
6 Q := nuds
7 TANT QUE Q est non vide FAIRE
8 u := nud de Q mininisant dist[u]
9 Q := Q \ {u}
10 POUR TOUT v successeur de u FAIRE
11 si dist[v] > dist[u] + poids[u][v] alors
12 dist[v] := dist[u] + poids[u][v]
13 pred[v] := u
Algorithme 1.1 Algorithme de Dijkstra
1.2.3.2 Lalgorithme de Bellman-Ford
Lalgorithme 1.2 de Bellman-Ford calcule le plus court chemin dun nud vers tous les
autres. Contrairement lalgorithme de Dijkstra, chaque itration tous les arcs sont exa-
mins et pas seulement ceux adjacents au nud le plus prometteur. Le chemin le plus
court ayant auplus n1 arcs (chemin comportant tous les nuds dugraphe), lalgorithme
itre autant de fois.
Le principal avantage de cet algorithme sur celui de Dijkstra est quil est possible de d-
tecter des circuits absorbants. Un circuit absorbant est une boucle dont le poids total est
ngatif. Le plus court chemin bouclerait donc indniment le long de ce circuit. Cet algo-
rithme permet donc dutiliser des arcs avec des poids ngatifs. Cependant, si un tel circuit
absorbant est dtect, lalgorithme sarrte. Il ne permet pas de rsoudre le problme du
plus court chemin avec des arcs de poids ngatifs sans circuit.
Comme le plus court chemin jusqu un nud peut tre corrig chaque itration, on
parle dalgorithme de type label-correcting.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Plus courts chemins simples
16
La complexit de cet algorithme est en O(n m), soit dans le cadre dun rseau routier
O(n
2
).
1 FONCTION Bellman-Ford(source, nuds, arcs, poids)
2 POUR TOUT u de nuds FAIRE
3 dist[u] := +
4 pred[u] := indfini
5 dist[source] := 0
6 RPTER |nuds| FOIS
7 POUR TOUT (u,v) de arcs FAIRE
8 si dist[v] > dist[u] + poids[u][v] alors
9 dist[v] := dist[u] + poids[u][v]
10 pred[v] := u
11 POUR TOUT (u,v) de arcs FAIRE
12 si dist[v] < dist[u] + poids[u][v] alors
13 Cycle absorbant dtect
Algorithme 1.2 Algorithme de Bellman-Ford
1.2.3.3 Amliorations pour le plus court chemin de point point
Lorsque le plus court chemin recherch est entre deux nuds, il est possible dutiliser
cette proprit pour rduire les nuds explors et donc rduire le temps dexcution.
Cependant aucune des approches ne permet damliorer la complexit dans le pire cas.
Lalgorithme de Dijkstra bidirectionnel consiste eectuer en mme temps deux calculs
ditinraire, lun en partant de la source et lautre du puits. Lorsque les deux recherches
ont toutes les deux explor un mme nud, alors lexploration est arrte et le plus court
chemin est la concatnation des deux chemins trouvs vers ce nud en commun.
Une approche bien connue est lalgorithme A* Hart, [3] qui utilise une mtrique permet-
tant destimer la distance jusquau puits. Ainsi pour le plus court chemin dans un rseau
routier, il est habituel dutiliser la distance euclidienne. Si cette heuristique est la fonction
h, lalgorithme est obtenu en remplaant la ligne 8 de lalgorithme de Dijkstra par u :=
nud de Q minimisant (dist[u] + h(u)). Si cette heuristique sous-estime la dis-
tance relle, alors lalgorithme est optimal. Il est cependant possible de tolrer une lgre
sur-estimation an de rduire le temps dexploration au risque de ne pas tre optimal.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
17
1.2.3.4 Approches haute performance
Ces dernires annes, une course aux meilleures performances a eu lieu avec des rsultats
assez spectaculaires. Le calcul du plus court chemin travers les tats-Unis (24 millions
de nuds et 30 millions darcs) est eectu en moins de 1 ms sur un ordinateur de bureau.
Les nouvelles approches peuvent tre regroupes en trois grandes classes.
Approches hirarchiques
Ces approches dnissent un ordre sur les nuds. Lors de la recherche de litinraire, il
nest pas toujours possible de passer dun nud un autre, mme lorsquun arc existe. Le
Highway-Node Routing (HNR) Schultes [4] regroupe les nuds en classes hirarchises. La
recherche est bi-directionnelle et nautorise que de rester dans la mme classe ou daller
dans une classe suprieure. Le rajout de nouveaux arcs de raccourci (shortcuts) permet
de garantir de trouver eectivement le plus court chemin. Le nombre de classes ainsi
que la rpartition des nuds dans ces direntes classes est une approche heuristique.
Lheuristique la plus utilise consiste minimiser le nombre darcs de raccourci qui sont
rajouts.
Classe 2
Classe 1
Classe 3
a
b
c
d
e
f
a
b
c
d
e
f
Figure 1.3 Exemple de classications de nuds pour le Highway
Node Routing avec trois classes. Les nuds c et d sont donc hirarchiquement
plus bas que les nuds a et b qui sont plus bas que les nuds e et f
La gure 1.3 prsente un exemple avec six nuds et trois classes. Le graphe gauche
reprsente le rseau routier avant le rajout des raccourcis. Les raccourcis dans le graphe
de droite sont reprsents par des arcs plus pais. Ainsi grce ces arcs, il est possible de
passer dun nud de la classe 2 la classe 3 sans passer par la couche 1 plus basse dans
la hirarchie.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Plus courts chemins simples
18
Une variante trs simple et plus ecace est Contraction Hierarchies Geisberger, [5] qui
considre que chaque nud est seul dans une classe. Lapproche Highway Hierarchies
Sanders,Schultes [6] classe non pas les nuds, mais les arcs. En tant loigns du nud
darriv et de dpart, les arcs les plus importants sont privilgis.
Loptimalit de ces approches nest pas vidente au premier abord. Par soucis de sim-
plicit nous nen prsentons pas ici la dmonstration. Cependant dans le cadre de
loptimisation multiobjectif, nous avons adapt les contraction hierarchies et prsentons
dans le chapitre 5 une preuve doptimalit.
Calcul en amont de certaines distances
Lapproche ALT Goldberg,Harrelson [7] slectionne un nombre rduit (de lordre de la
dizaine) de nuds (appels landmarks) qui serviront de repre. Ensuite lalgorithme cal-
cule le plus court chemin des repres vers tous les autres nuds. Les repres peuvent tre
choisis alatoirement donnant des rsultats acceptables daprs les auteurs. Cependant
ils conseillent dans le cadre de rseaux routiers lapproche suivante : choisir un premier
repre alatoirement, puis choisir le nud le plus loign de ce premier nud. Les re-
pres suivants seront choisis de manire maximiser la distance au repre le plus proche.
Ces donnes permettent damliorer signicativement lheuristique de distance dans une
recherche de type A*.
Le Transit-Node Routing Bast, [8] part de lobservation humaine que certains nuds
sont utiliss pour de nombreuses routes et dautres trs rarement (presque tout voyage
passera par le priphrique, quelque soit le point de dpart et darrive). En calculant
lavance le plus court chemin entre ces nuds importants, le plus court chemin peut tre
obtenu trs rapidement.
Marquage darcs
Lapproche arc-ags (parfois edge-ags) Hilger, [9] dcoupe le graphe en rgions. Le dcou-
page le plus simple est obtenu en quadrillant lespace. Cependant les auteurs prsentent
dautres dcoupages pour quilibrer le nombre darcs dans chaque rgion. Pour couvrir
lAllemagne, les auteurs considrent une trentaine de rgions.
Sur chaque arc, pour chaque rgion, un marqueur indique si le plus court chemin vers
cette rgion passe par larc. Ainsi lors de la recherche ditinraire, certains arcs pourront
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
19
tre ignors et la zone de recherche est oriente vers la destination. Ainsi la recherche
dun itinraire travers les tats-Unis est de lordre de quelques millisecondes.
Ce dcoupage est illustr dans la gure 1.4 avec trois rgions. Sur chaque arc un triplet
de binaires indique si larc permet datteindre chaque rgion. Ainsi larc (c,d) ne permet
datteindre aucune rgion (sauf les nuds de la rgion courante) et larc (a,e) ne permet
dans aucun cas datteindre la rgion B.
Le dcoupage peut tre hirarchique an de ne pas devoir mmoriser trop dinformations
sur chaque arc et pouvoir continuer utiliser cette approche aprs avoir atteint la rgion.
a
b
c
d
e
f
g
1
0
1
1
1
0
0
0
0
1
1
0
011
1
0
1
0
0
0
1
0
1
1
1
0
Rgion B Rgion C
Rgion A
Figure 1.4 Exemple de partitionnement du graphe pour lapproche arc-ags.
Le premier bit 1 veut dire quil existe un chemin qui emprunte larc pour
atteindre la rgion A, le deuxime bit la rgion B et le troisime bit la rgion C
Toutes ces approches ont t combines entre elles, donnant lieu de nouvelles tech-
niques encore plus performantes. Aucune approche ne dpasse signicativement une
autre, car il sagit de compromis entre temps de calcul, temps de pr-traitement et sur-
cot en mmoire. Ces combinaisons sont prsentes dans Bauer, [10], Delling, [11].
Cependant, les performances de ces algorithmes nont t mesures que exprimentale-
ment. Les auteurs ne donnent aucune preuve de leurs performances thoriques ou sur
des graphes qui ne sont pas routiers (un rseau de tlcommunications par exemple).
Cette lacune est comble dans Abraham, [12] qui montre quil est possible de prouver
thoriquement les performances en pr-traitement, consommation mmoire et temps de
calcul pour la majorit de ces algorithmes.
1.3 Plus court chemin avec cots variables
Les algorithmes vus prcdemment supposent que tous les cots sont constants et addi-
tifs. Ce modle prsente cependant rapidement des limites : sil est possible de considrer
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Plus court chemin avec cots variables
20
que la longueur dunarc routier est constante dans le temps, le temps de parcours peut va-
rier, par exemple en fonction des conditions de trac. La situation se complique dautant
plus si lon dsire prendre en compte des grilles horaires (cas des transports en commun
par exemple).
1.3.1 Formalisation
Nous nous restreignons aucas oles cots dpendent dutemps. Nous verrons quil existe
deux familles distinctes de problmes selon que la fonction objectif minimiser est le
temps (chemin le plus rapide) ou une fonction de cot arbitraire (chemin de moindre cot).
De plus nous considrons que linstant de dpart t
0
est x lavance.
An de gnraliser, nous remplaons lensemble des cots C par deux ensembles de fonc-
tions F
t
et F
c
qui dnissent respectivement pour chaque arc (u, v) et pour un instant t
donn :
linstant darrive en v en partant de u linstant t ;
le cot de larc (u, v) en partant de u linstant t.
tant donn un chemin r = u
1
, . . . , u
l
, on peut ainsi dnir pour chaque nud u
i
de ce
chemin linstant darrive t
i
ce nud :
t
i
= f
t
u
i1
,u
i
f
t
u
i2
,u
i1
. . . f
t
u
1
,u
2
(t
0
)
Connaissant linstant darrive chaque nud, il est alors possible de calculer le cot du
chemin :
c(r) =
l1

i=1
f
u
u
i
,u
i+1
(t
i1
)
1.3.2 Chemin le plus rapide sans contrainte
Lorsque lobjectif minimiser est le temps et quil nexiste aucune contrainte sur le
parcours dun arc (par opposition au cas o lon doit respecter une grille horaire)
il est possible dutiliser lalgorithme de Dijkstra peine modi comme le montre
lalgorithme 1.3. Ce cas sapplique par exemple pour calculer le chemin le plus rapide
dans un rseau routier en prenant en compte lvolution des conditions de trac dans le
temps.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
21
Cette approche a t propose initialement dans Dreyfus [13], sans pour autant fournir
de preuve quant son optimalit. Les conditions exactes doptimalit sont dnies dans
Gondran,Minoux [14]. Une condition susante pour que lalgorithme de Dijkstra gn-
ralis soit optimal est que les fonctions soient croissantes et quelles tendent vers linni
lorsque le temps tend vers linni.
1 FONCTION Dijkstra_gnralis(source, nuds, arcs, ft)
2 POUR TOUT u de nuds FAIRE
3 t[u] := +
4 pred[u] := indfini
5 t[source] := t0
6 Q := nuds
7 TANT QUE Q est non vide FAIRE
8 u := nud de Q minimisant t[u]
9 Q := Q \ {u}
10 POUR TOUT v successeur de u FAIRE
11 si t[v] < ft[u][v](t[u]) alors
12 t[v] := ft[u][v](t[u])
13 pred[v] := u
Algorithme 1.3 Algorithme de Dijkstra gnralis (dpendant du temps)
Amlioration des performances
Pour le plus court chemin avec des poids statiques, de nombreuses techniques permettent
damliorer le temps dexcution. Cependant, ladaptation de ces techniques usuelles,
telles que lutilisation de bornes infrieures oula recherche bidirectionnelle, est loin dtre
immdiate. En eet la recherche bidirectionnelle ncessiterait de connatre lavance
linstant darrive au nud darrive. Cependant, dimportants eorts ont t faits dans
ce domaine et les techniques haute performance prsentes dans le cadre de cots sta-
tiques ont t adaptes avec succs Nannicini, [15], Delling [16], Batz, [17].
Variantes
Dans le cadre de sa thse, Hizem [18] sintresse des variantes du chemin le plus ra-
pide. Il sagit du problme dinterception dun mobile dans un graphe qui consiste re-
joindre le plus rapidement un objet qui se dplace selon un trajet connu dans le graphe. La
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Plus court chemin avec cots variables
22
deuxime variante laquelle il sest intress est le problme du plus court chemin dans
un graphe dynamique avec intervalles. Dans le problme, les cots sont reprsents par
des intervalles an de modliser lincertitude sur le poids des arcs. Par exemple si le cot
est de 10 avec une incertitude de plus ou moins 10%, alors le cot sera dans lintervalle
[9 ;11].
1.3.3 Prise en compte des grilles horaires
Pour modliser un rseau de transports en commun, ou un rseau routier dont on vou-
drait prendre en compte les feux de circulation, il est indispensable de pouvoir modliser
lattente un nud. Il nest donc pas possible dutiliser directement lapproche vue pr-
cdemment.
1.3.3.1 Contrainte FIFO
La contrainte FIFO First In, First Out est particulirement importante. Cette contrainte
stipule quil est ncessaire quemprunter un arc (u, v) au plus tt garantisse le fait darriver
en v au plus tt.
Un exemple o cette contrainte nest pas respecte est celui dun bus dpassant un autre
entre deux arrts. Il aurait t plus optimal dattendre le deuxime bus pour arriver plus
tt destination. Il sagit duncas ola fonctionde cot associe larc nest pas croissante
partout.
An de pouvoir prendre en compte le temps dattente et respecter la contrainte FIFO,
plusieurs approches sont gnralement employes. Historiquement, les premires ap-
proches utilises se basent sur une approche en deux passes. Une premire tude sur le
graphe statique permet de slectionner un certain nombre ditinraires potentiels. Une
deuxime passe permet dexaminer les horaires disponibles an de trouver le meilleur
itinraire. Daprs Muller-Hannemann, [19], cest cette approche qui est utilise pour le
systme HAFAS qui est utilis entre autres par les chemins de fer allemands et qui est
capable de calculer des itinraires travers toute lEurope.
Cette approche tant heuristique et plutt complique mettre en uvre, deux autres
approches sont habituellement employes permettant une modlisation et une rsolution
plus simple. La premire consiste transformer le graphe pour se ramener une situation
o les cots sont constants (modle time-expanded). La deuxime approche modie les
fonctions de cot an dintgrer les temps dattente (modle time-dependent).
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
23
1.3.3.2 Modle Time-expanded
Habituellement dans un graphe, un nud correspond une position gographique. Ce
modle ddouble les nuds et les associe un instant prcis. Le graphe gnr est ap-
pel graphe espace-temps (time-space graph). Dans ce graphe chaque nud est en fait un
couple entre un nud du graphe initial et un instant. Les arcs dnissent les possibilits
de passer dun nud un autre dans lintervalle de temps dni par les deux instants
associs aux nuds. Le poids associ chaque arc est la dirence de temps entre les
instants correspondant aux deux nuds.
Heure
Page
8h00 12h00 18h00
2euro
3euro
Figure 1.5 Exemple de graphe espace-temps . Pour chaque
moment, les nuds sont dmultiplis pour modliser la
possibilit de passer dun nud un autre un instant donn
Les instants peuvent tre dnis de deux manires : en discrtisant le temps ou en d-
nissant un instant par vnement.
Discrtiser le temps
Le temps est divis en q intervalles de temps. Cette approche a lavantage de la simplicit.
Cependant si les intervalles de temps sont trop petits, la taille du graphe augmente signi-
cativement. loppos, lorsque lintervalle de temps est trop grand, le rsultat peut tre
trs imprcis.
La gure 1.5 reprsente un rseau ferroviaire dans la partie gauche. Le temps de parcours
entre deux nuds est indiqu sur les arcs. Un train part de chaque nud toutes les 15
minutes. Le graphe de la partie droite correspond au graphe espace-temps reprsentant
le rseau ferroviaire sur cinq intervalles de temps.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Plus court chemin avec cots variables
24
Cette approche est propose dans Pallottino,Scutella [20]. Lalgorithme propos par les
auteurs Chrono-SPT permet de grer implicitement le graphe espace-temps permettant
ainsi de rduire la consommation en mmoire. Lalgorithme fonctionne en O(mq) o m
est le nombre darcs et q le nombre dintervalles considrs.
Un instant par vnement
Un vnement dun nud est par exemple lentre en gare dun train. Ainsi un nud sera
ddoubl en autant de nuds quil y a dvnements associs ce nud. Cela permet
davoir un graphe de moindre taille pour des nuds faible activit et surtout dtre
parfaitement optimal.
Avec un tel modle, il devient ais de modliser une contrainte, telle que laisser une cer-
taine marge pour un changement de train : il sut de ne pas relier deux nuds si les
instants associs sont considrs comme trop proches.
Puisque le cot des arcs est constant, il est possible dutiliser un algorithme de Dijkstra
traditionnel. La taille supplmentaire du graphe est compense par le fait que le graphe
a une densit trs faible et que de plus il est acyclique.
Ce modle a t repris dans Bast, [21] qui est probablement ce jour lapproche la plus
performante pour le calcul ditinraires en transport en communs. La reprsentation
des arrts et des vnement est assez immdiate. An daugmenter les performances,
les auteurs calculent lavance des transfer pattern qui permettent davoir les correspon-
dances utiliser entre deux arrts indpendamment de lheure. Au moment du calcul de
litinraire, seuls certains tronons sont explors permettant un calcul particulirement
vloce tout en permettant une optimisation deux objectifs. Cependant, calculer toutes
les correspondances entre deux points tant trop long, des approximations lgres sont
ncessaires risquant de gnrer un rsultat non optimal. Cet algorithme est appliqu
grande chelle par Google sur de trs grandes chelles telles que toute la Suisse.
1.3.3.3 Modle Time-dependent
Ce modle modie les fonctions de cot des arcs : plutt que de correspondre la dure
de parcours, les fonctions renvoient linstant darrive au plus tt au nud cible. Ainsi la
gure 1.6 montre la fonction dun train partant toutes les 15 minutes pour un trajet durant
15 minutes. Une personne arrivant larrt 7h46 ou 7h59 arrivera dans les deux cas
destination 8h15.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
25
La gure 1.7 reprsente la fonction pour un tronon routier. minuit un automobiliste
ne mettra que 10 minutes pour le parcourir, mais mettra 20 minutes 8h00 du matin
cause de la circulation.
La taille du graphe reste donc constante, mais ncessite lutilisation de lalgorithme de
Dijkstra modi. Toutes ces fonctions sont non-dcroissantes et tendent vers linni. De
ce fait un algorithme de Dijkstra dpendant du temps reste optimal.
7h45 8h00 8h15 8h30
8h15
8h30
8h45
Heure de dpart
Heure darrive
Figure 1.6 Exemple de fonction de cot sur un arc
de transports en commun dans un modle time-dependent
0h 8h 12h 18h 24h
0h10
8h20
12h15
18h20
Heure de dpart
Heure darrive
Figure 1.7 Exemple de fonction de cot sur un arc routier dans un modle
time-dependent. La courbe de gauche est la fonction de cot proprement parler et la
courbe de gauche indique le temps de parcours de larc routier en fonction de lheure
Pouvoir grer les temps de changement est plus dlicat. Il est en eet ncessaire de d-
doubler les nuds an de pouvoir rajouter un arc modlisant le temps de changement
ncessaire comme cela est montr dans la gure 1.8.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Plus court chemin avec cots variables
26
1 2 3
4
5
1
1
2 3
4
5
Figure 1.8 Exemple de gestion du temps de changement : (2,1,3) et (4,1,5)
reprsente respectivement deux lignes de mtro ayant la station 1 en commun
An de permettre dutiliser les contraction hierarchies, dans Geisberger [22], les auteurs s-
parent la topologie dugraphe des fonctions de cot. Cela permet dappliquer une contrac-
tion classique sur le graphe initial. Les auteurs proposent leur propre algorithme pour
pouvoir prendre en compte les cas non-FIFO lis cette contraction. Il sagit probable-
ment de lapproche la plus performante actuellement existante en termes de temps de
calcul dans le cas trs prcis de litinraire multimodal le plus rapide.
1.3.3.4 Comparaison des deux modles
Les deux modles sont compars exprimentalement dans Pyrga, [23]. Il semblerait que
ce soit actuellement le seul comparatif exprimental des deux approches. Les auteurs
notent un net avantage pour le modle Time-dependent dun point de vue performance.
Cependant le modle Time-expanded se rvle tre plus commode pour une modlisation
plus ne (par exemple la prise en compte du temps pour changer de quai). De plus lcart
de performance se rduit avec la complexication du modle.
An damliorer les performances, plusieurs techniques dacclration du modle Time-
expanded sont prsentes dans Delling, [24]. Mme si lamlioration est dun facteur 50 par
rapport un algorithme tel que celui de Dijkstra, ces amliorations sont faibles compares
celles obtenues avec un graphe en appliquant des amliorations sur le modle Time-
dependent telles que les contraction hierarchies.
1.3.4 Chemin de moindre cot
Lorsque la fonction de cot optimiser nest pas le temps mais quelle dpend du temps,
il nest plus possible dutiliser lalgorithme de Dijkstra. Il est peu probable quil existe un
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
27
algorithme en temps polynomial : ce problme est en eet NP-dicile puisquil permet
de rsoudre le problme de plus court chemin avec des contraintes de ressources.
Le premier article (daprs leurs auteurs) qui traite de ce problme est Orda,Rom [25].
Les auteurs montrent que le chemin de moindre cot peut tre de longueur innie. Un
algorithme est propos pour rsoudre ce problme avec des conditions particulires sur
les fonctions de cot pour que le chemin optimal soit de longueur nie. Lexcution de
lalgorithme sarrtera , mais rien ne garantit quil se termine en temps polynomial.
La dirence entre les deux types dobjectifs est dveloppe dans Ahuja, [26] o les au-
teurs tudient le chemin le plus rapide et celui de moindre cot dans un rseau routier
prenant en compte les feux et dmontrent la dirence de complexit.
Cependant dans certains cas, le problme de moindre cot a une complexit polynomiale.
Il sagit des graphes dit cost-consistent. Cette contrainte supplmentaire stipule que quitter
un nud plus tt ne cote pas plus cher que le quitter plus tard. Cette notion est prsen-
te dans Pallottino,Scutella [20]. Les auteurs prsentent galement ladaptation de leur
algorithme Chrono-SPT pour calculer le chemin de moindre cot sur de tels graphes.
Un rsultat intressant est celui prsent dans Chabini [27]. Les auteurs prsentent un
algorithme trs simple pour calculer le cheminde moindre cot de tous les nuds vers une
destination tous les intervalles de temps. Le temps est discrtis et le temps de parcours
des arcs doit tre entier de manire correspondre exactement un intervalle de temps.
Lalgorithme part du dernier instant, puis remonte chaque itration dun intervalle de
temps et pour chaque arc tudie si cet instant il est possible damliorer le cot du nud
cible de larc. La complexit de lalgorithme est en O(nlogn + nM+ mM) avec n nuds,
m arcs et M intervalles de temps. Cette approche est performante comme le prouvent
leurs expriences (moins dune seconde pour 3 000 nuds, 9 000 arcs et 90 intervalles
de temps). Cependant, cette approche nest envisageable que si la dure de parcours sur
un arc est nettement plus grande que lintervalle de temps considr. Ainsi une voiture
mettra 10 secondes entre deux carrefours, ce qui ncessite des intervalles de temps de
lordre de la seconde.
Les auteurs ont prouv quil tait impossible damliorer cette complexit. En cons-
quence, dans le but de rduire les temps dexcution, ils ont propos une variante pa-
ralllise dans Chabini,Ganugapati [28] an dobtenir le rsultat plus rapidement.
1.4 Optimisation multiobjectif
Loptimisation multiobjectif (aussi dite multicritre dans certaines communauts) consiste
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Optimisation multiobjectif
28
optimiser plusieurs objectifs contradictoires. Ainsi vouloir litinraire le plus rapide et
le moins cher est gnralement incompatible. En eet litinraire le moins cher serait de
tout faire pied, tandis que le plus rapide pourrait tre de prendre un hlicoptre.
An de grer les objectifs contradictoires, un dcideur (cest--dire lutilisateur du sys-
tme) est oblig dintervenir. Le moment auquel le dcideur intervient dnit les trois
grandes familles dalgorithmes de rsolution :
a priori : il exprime ses prfrences avant la rsolution;
interactive : il prend part au processus de rsolution;
a posteriori : il choisit une solution parmi un ensemble de solutions potentielles.
1.4.1 Formalisme et notations
Nous considrons par la suite, sans perdre en gnralit, que nous souhaitons minimi-
ser tous les objectifs. An de comparer deux solutions, il est possible de dnir un ordre
partiel habituellement appel dominance au sens de Pareto. Une solution domine stricte-
ment une autre solution, si elle est meilleure ou gale sur tous les objectifs et strictement
meilleure sur au moins un objectif.
Nous utilisons les notations utilises dans Coello, [29], mme si les auteurs ne sintressent
qu une branche particulire de loptimisation multiobjectif. Pour une vision plus gn-
rale, une autre rfrence est Ehrgott [30].
Une solution est un vecteur x R
n
de n variables de dcision :
x =

x
1
x
2
.
.
.
x
n

Lensemble des variables de dcision est appel lespace de dcision et est not .
Dans un problme doptimisation k objectifs, on dnit f
1
(x), f
2
(x),. . ., f
k
(x) formant ainsi
un vecteur objectif f : R
n
R
k
:
f =

f
1
f
2
.
.
.
f
k

t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
29
Un vecteur de lespace des objectifs u = (u
1
, . . . , u
k
) domine un autre vecteur v = (v
1
, . . . , v
k
)
(not u v) si et seulement si :
i {1, . . . , k}, u
i
v
i
, i {1, . . . , k} u
i
< v
i
Un ensemble Pareto-optimal est un ensemble dans lespace de dcision dont aucun l-
ment nen domine un autre dans lespace des objectifs :
P

:= {x | x

, f(x) f(x

)}
Le front de Pareto PF

dun problme est lensemble dans lespace des objectifs tel que :
PF

:= {u = f(x) | x P

}
Lensemble des solutions qui ne sont pas domines par une autre solution, est appel front
de Pareto. Quelque soit la technique doptimisation, la solution trouve doit appartenir
ce front. En eet, toute solution dont au moins un des objectifs peut tre amlior sans
pour autant sacrier un autre objectif, sera prfre.
La gure 1.9 montre le front de Pareto form par les points A, B, C. Le point Dest domin
par B. En revanche A et D sont deux solutions non comparables.
Les applications de loptimisation sont considrables comme le montre ltat de lart de
rfrence Ehrgott,Gandibleux [31]. Les applications plus spciquement orientes vers le
problme du plus court chemin sont dveloppes dans Raith,Ehrgott [32] ou encore dans
Clmaco,Pascoal [33].
Objectif2
Objectif1
A
B
C
D
Figure 1.9 Exemple de front de Pareto avec deux objectifs
minimiser. Les points A, B et C sont Pareto optimal, tandis
que le point D est strictement domin par les trois autres
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Optimisation multiobjectif
30
1.4.2 Complexit
Le nombre dlments dans le front de Pareto peut devenir exponentiel sur certains pro-
blmes. De ce fait, calculer cet ensemble est au moins exponentiel en temps. Cependant,
dans un certain nombre de cas, la taille de ce front est polynomiale, rendant le problme
plus simple, comme celui dcrit par Muller-Hannemann,Weihe [34].
Les auteurs sintressent tout particulirement au transport ferroviaire de passagers avec
comme objectifs la minimisation du temps de parcours, le cot et le nombre de change-
ments.
Les arcs du rseau correspondent chaque couple gare de dpart gare darrive pour
chaque train. Ces arcs sont regroups en classes disjointes correspondant chaque cat-
gorie de train (grande vitesse, longue distance, rgional, etc.).
Dans le cadre doptimisation bicritre, il peut tre raliste de considrer quune valeur
dun arc est le produit dune constante par une constante pour une classe donne (la du-
re est la distance multiplie par la vitesse et la vitesse est considre constante entre deux
classes de train). Il est donc possible de dnir un ordre total entre les direntes classes.
partir de cet ordre nous pouvons dnir la monotonie dun trajet (en France un tra-
jet TER-Corail-TGV sera monotone mais pas TGV-mtro-TGV). Les auteurs dcrivent un
chemin comme bitonic un chemin pouvant tre spar en deux parties monotones, la pre-
mire croissante et la deuxime dcroissante. En eet, dans de nombreux cas, on utilise
des moyens de transport lents autour du lieu de dpart et darrive et un moyen rapide
au milieu. Les auteurs dmontrent que le nombre de chemins bitonics est en O(|V|
2b2
)
avec b classes et |V| nuds.
Des expriences ont t faites partir de 1 000 itinraires issus de requtes utilisateur
relles lchelle de toute lAllemagne, sur des instances ntant pas dcoupes en classes
et sur des instances alatoires mais organises en classes. Les observations montrent
queectivement le nombre dlments dans le front de Pareto est signicativement plus
faible avec les conditions cites prcdemment (en moyenne de lordre de 3,5). De plus,
la part de chemins bitonic parmi tous les chemins trouvs est de 84% en moyenne. Cela
est facilement comprhensible, puisque les dessertes plus nes, souvent ncessaires pour
commencer et nir un voyage, sont eectues par des modes de transport plus lents.
1.4.3 Approches a priori
Ces approches ont t les premires utilises. Elles consistent construire une fonction
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
31
objectif qui englobe tous les objectifs an de se ramener une optimisation un seul
objectif, permettant ainsi dutiliser des algorithmes mieux connus.
Il est noter que dans le cas particulier du plus court chemin multiobjectif dpendant du
temps, cette approche ne simplie pas ncessairement le problme, puisque nous avons
vuprcdemment que si lobjectif optimiser nest pas le temps, alors le problme devient
gnralement NP-dicile.
Nous prsentons trois techniques qui peuvent tre utilises pour une approche a priori.
Ordre lexicographique
Le dcideur classe les objectifs par ordre de prfrence. Ensuite, lalgorithme va excuter
plusieurs optimisations, en commenant par celui de plus grande importance. Cette ap-
proche est rarement utilise. En eet elle se focalise trop sur des solutions extrmes, alors
que gnralement le dcideur cherche une solution de compromis.
Cette approche est cependant pertinente dans un calcul ditinraire multimodal : en eet,
souvent une solution impliquant le moins de changement sera prfre, mme si cela
implique un temps de parcours plus long. Cette approche a t utilise dans Pyrga, [23].
Linarisation des objectifs
La somme pondre de chaque objectif est lapproche la plus simple. Celle-ci a du sens
si chaque objectif peut tre ramen une mme unit de mesure (dans une entreprise,
un retard dune heure peut tre mesur en tant que perte dargent). Cependant ce nest
pas toujours possible : par exemple si lon dsire optimiser le confort, rester debout est
parfaitement acceptable pour un trajet de quinze minutes, mais intolrable pour un trajet
plus long. Comment dans ce cas linariser le cot et le confort ?
Outre le problme de modlisation, la linarisation ne permet de trouver que des so-
lutions sur lenveloppe convexe du front de Pareto. Ainsi une solution qui aurait t la
prfre du dcideur risque dtre carte.
Cest dans cette optique que la norme de Tchebyche peut tre utilise. Entre deux solu-
tions u et v et un vecteurs de poids w, la norme est max
i
{w
i
|p
i
r
i
|}. Lexpert peut alors
dnir une solution idale u (ou alors cette solution est dduite en optimisant individuel-
lement chaque objectif). La solution optimale est donc la solution minimisant la norme
de Tchebyche la solution idale. Dans Galand,Perny [35] plusieurs approches bases
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Optimisation multiobjectif
32
sur A* sont prsentes pour trouver la meilleure solution de compromis dnie par une
norme de Tchebyche.
Intgrale de Choquet
Lintgrale de Choquet est un moyen de modliser les prfrences du dcideur plus -
nement que par la simple linarisation. Il est en particulier possible de dnir des prf-
rences entre deux solutions, plutt que simplement associer une note chaque solution.
Elle se rvle particulirement utile pour modliser des prfrences htrognes (cot
et confort par exemple). Une introduction gnrale cette approche est disponible dans
Grabish [36].
Cette intgrale a t utilise dans le cadre du plus court chemin dans Fouchal, [37] ou
encore dans Galand, [38].
1.4.4 Approches interactives
Les approches interactives consistent proposer une solution au dcideur qui choisira
ensuite sur quels objectifs il souhaiterait amliorer la solution. Le systme propose alors
une nouvelle solution. Le processus est rpt jusqu ce que le dcideur soit satisfait.
Cette approche a t applique au problme de plus court chemin multiobjectif dans Ga-
brel,Vanderpooten [39] ou encore Galand [40].
Il faut cependant noter quil ne sagit pas dune approche a priori pour laquelle lutili-
sateur change chaque itration le paramtrage. An damliorer les performances, les
approches interactives sont capables dexploiter les rsultats obtenus dans le calcul pr-
cdent. Elles sont donc surtout adaptes dans le cas o le temps de calcul est particuli-
rement important.
1.4.5 Approches a posteriori
Ces techniques visent obtenir le front de Pareto le plus complet possible. Lensemble des
solutions est alors prsent au dcideur qui choisira celle quil considre comme la plus
adapte. Cette approche a lavantage de nliminer aucune solution qui aurait pu intres-
ser le dcideur. La contrepartie est que la reprsentation de lensemble du front de Pareto
est aise avec deux objectifs, mais devient problmatique au del. De plus, le dcideur
souhaite gnralement devoir uniquement choisir entre quelques solutions et non entre
plusieurs milliers, dautant plus que de nombreuses solutions sont trs similaires.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
33
1.4.5.1 Mtaheuristiques
Ladaptation de mtaheuristiques une approche multiobjectif (trs largement reprsen-
ts par la evolutionary multicriterion optimization) concentre la majorit des eorts de re-
cherche dans le domaine de loptimisation multiobjectif, en particulier en se basant sur
les algorithmes gntiques.
Algorithmes gntiques
Parmi les approches bases sur les algorithmes gntiques, les algorithmes NSGA-II Deb,
[41] et SPEA-II Zitzler, [42] sont actuellement considrs comme les plus performantes
daprs Coello, [29]. Il sagit gnralement des mthodes les plus utilises de par leur
capacit bien fonctionner sur un grand nombre de problmes.
Malgr la quasi-universalit de ces approches, certains auteurs regrettent dernirement le
manque de relle avance depuis la publication de ces deux approches : Newalgorithms
can be designed, but they require fresh ideas rather than small (and little innovative)
changes to existing approaches, which is a common pattern in much of the research that
we see nowadays Coello, [43].
Il est cependant trs dicile dadapter ces approches au problme du plus court chemin.
Il est en eet assez dicile de modliser le problme dans le cadre prcdent cause du
grand nombre de contraintes inhrentes ce problme : une solution gnre alatoire-
ment na pratiquement aucune chance dtre ne serait-ce que ralisable. Mme si certains
auteurs ont malgr tout essay dutiliser ces approches volutionnaires, la grande majo-
rit des problmes de plus court chemin multiobjectifs ont t rsolus avec des mthodes
exactes.
Une exception notable est Maria, [44], o les auteurs ont utilis lalgorithme SPEA2 pour
le problme du plus court chemin multiobjectif. Les chromosomes sont reprsents par
des entiers correspondants aux arcs dun chemin. Les chromosomes sont donc de lon-
gueur variable. La population initiale est obtenue en partant de la source, puis en tirant
rcursivement alatoirement un nud parmi les successeurs du dernier nud jusqu at-
teindre le puits. Le croisement est gnr en tirant alatoirement deux individus jusqu
ce que les deux individus possdent un nud en commun pour servir de pivot au croi-
sement. La mutation est obtenue en slectionnant alatoirement un nud de lindividu
et en supprimant tout le chemin partir de ce nud jusquau puits. Le reste du chemin
est reconstruit de la mme manire qu linitialisation.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Optimisation multiobjectif
34
Cette approche a t teste sur des instances alatoires. Le nombre doptima dans le front
obtenu et la diversit des solutions est tudie. Les rsultats montrent quau fur et me-
sure des itrations les solutions tendent vers le front de Pareto et que les solutions sont
assez diversies. On peut cependant regretter que les auteurs naient pas test les rsul-
tats sur des instances dont le front de Pareto est connu et que la performance en temps
ait t laisse de ct.
Optimisation par essaims particulaires
Dautres approches tudies rcemment telles que les essaims particulaires multiobjectif.
Cette mtaheuristique, qui a t initialement propose par Kennedy,Eberhart [45], imite le
comportement dun essaimdoiseaux capable de trouver une source de nourriture malgr
une communication restreinte entre les individus.
Les rsultats des variantes multiobjectif sont comptitifs par rapport aux algorithmes plus
traditionnels. Une comparaison complte des direntes adaptations possibles a t ef-
fectue dans Durillo, [46].
Cependant il est peu probable que cette approche soit un jour applique un problme
de type plus court chemin. En eet, cette approche fonctionne bien sur des problmes
continus avec peu de contraintes sur les variables, tout loppos des problmes de plus
courts chemin qui sont discrets et trs fortement contraints.
Optimisation par colonies de fourmis
En sinspirant de la manire dont les fourmis arrivent trouver le plus court chemin
jusqu une source de nourriture, les auteurs de Dorigo, [47] ont russi rsoudre des
problmes combinatoires tels que le voyageur de commerce.
Il a galement t tent dadapter loptimisation par colonies de fourmis pour rsoudre
des problmes multiobjectifs. Les direntes possibilits de paramtrage sont tudies
sur le problme du sac dos multiobjectif dans Alaya, [48]. Cependant les tentatives res-
tent modestes et ne se dmarquent pas signicativement.
Puisque la mtaheuristique sinspire de fourmis cherchant le plus court chemin, il est na-
turel de vouloir transposer cette approche des problmes de plus court chemin. En eet
si le plus court chemin peut tre rsolu ecacement avec lalgorithme de Dijkstra, ce nest
pas le cas pour le problme du plus court chemin multiobjectif. Cependant, les trs rares
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
35
tentatives pour rsoudre un simple plus court chemin ne permettent que de rsoudre des
instances tellement petites quune adaptation des situations plus compliques nest pas
envisageable en particulier en observant les excellentes performances des algorithmes
exacts.
En eet, dans Dorigo,Sttzle [49] les auteurs prsentent lapproche historique des ACO
et montrent comment ladapter sur un problme de plus court chemin classique. Ils tra-
vaillent sur un graphe de vingt nuds. Il leur faut 1 500 explorations avant de converger
vers un rsultat et plus de 10 000 avant de trouver loptimum. Dans Pluciski [50] lespace
initialement continu est discrtis en une grille 2020, crant ainsi un graphe en
forme de grille de 400 nuds. Des obstacles sont placs dans cet environnement et les
arcs correspondants sont supprims du graphe. Selon les instances, avant de trouver
loptimum, entre 6 000 et plus de 200 000 itrations de 20 fourmis sont ncessaires. Enn,
dans Kolavali,Bhatnagar [51] le but est de rsoudre le plus court chemin dans un graphe
en couches (4 couches de 3 nuds, donc avec une source et un puits, 14 nuds au to-
tal). Le nombre ditrations nest pas dni we ran each algorithmfor a suciently long
time mais avec 32 fourmis loptimum nest atteint que entre 55 et 70% de fois (selon
les direntes variantes et paramtrages). Avec 128 fourmis les rsultats sont meilleurs
(entre 89 et 100%).
titre de comparaison, une implmentation nave de lalgorithme de Dijkstra explore
n
2
nuds dans le pire des cas. Ainsi avec 400 nuds, au pire 160 000 nuds sont visi-
ts. Dans le meilleur des cas, 6 000 itrations avec 20 fourmis sont ncessaires. Le colo-
nies de fourmis ncessitent donc plus ditrations que le nombre de nuds visits par
lalgorithme Dijkstra naf !
1.4.5.2 Approches exactes
La premire approche propose semble tre Hansen [52] pour rsoudre le plus court che-
min bicritre. Lalgorithme de Martins en est lextension immdiate pour un nombre ar-
bitraire dobjectifs.
Algorithme de Martins
Pour le problme du plus court chemin multiobjectif, lalgorithme 1.4 appl lalgorithme
de Martins Martins [53] est le plus connu. Il sagit dune gnralisation de lalgorithme de
Dijkstra au cas multiobjectif. Cet algorithme dnit une tiquette (label) comme un triplet
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Optimisation multiobjectif
36
(nud, valeurs des objectifs, prdcesseur). la n de la rsolution, pour chaque nud il
y aura plusieurs labels non domins correspondants au front de Pareto. Le prdcesseur
permet de reconstruire litinraire suivre pour obtenir une telle valeur dobjectif. Ainsi
ltiquette (u, c, e) signie quau nud u il existe un chemin de cot c en arrivant par
ltiquette e.
Il est ncessaire dutiliser des tiquettes parce quil peut y avoir plusieurs vecteurs de cot
acceptables pour chaque nud. Contrairement lalgorithme de Dijkstra, il nest donc pas
possible dassocier chaque nud un seul prdcesseur et un seul cot. Lensemble Q
contient donc un ensemble dtiquettes. chaque itration, ltiquette (u, c, e) ayant
la plus petite valeur dobjectifs dans lordre lexicographique est choisi. Cette tiquette est
mmoris dans une archive P car elle correspond une solution Pareto-optimale. En eet
il ne peut pas exister dautre tiquette ayant un cot lexicographique plus petit ; il sagit
donc dune solution non-domine.
Lordre lexicographique est utilis pour sa simplicit. Cependant tout ordre total aurait
pu tre utilis sans changer le rsultat obtenu. Cela ne suppose donc pas que certains
objectifs soient plus importants que dautres.
Pour chaque successeur v, une nouvelle tiquette est cre (v, c + c[u][v], e2). En-
n, on limine toutes les tiquettes domines par une autre.
Lalgorithme termine lorsque lensemble Q est vide. tant donn que le nombre dti-
quettes dun nud peut devenir exponentiel, le temps dexcution de lalgorithme est
donc galement exponentiel.
1 FONCTION Martins(source, nuds, arcs, couts)
2 Q := (source, 0, null)
3 P := {}
4 TANT QUE Q est non vide FAIRE
5 e2 = (u, c, e) := tiquette de Q minimisant c
6 Q := Q \ {e2}
7 P := P {e2}
8 POUR TOUT w successeur de v FAIRE
9 Q := Q {(v, c + c[u][v], e2)}
10 LIMINER TIQUETTES DOMINS(Q)
Algorithme 1.4 Algorithme de Martins
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
37
Autres approches exactes
Dans Guerriero,Musmanno [54] les auteurs comparent plusieurs approches de labelling
pour le plus court chemin multiobjectif. Parmi les mthodes de labelling, on distingue
deux familles. chaque itration il est possible de slectionner un nud (node selecting)
ou une tiquette (label selecting).
Dans le cadre du node selection, lauteur dnit une opration merge qui gnre le nouvel
ensemble Pareto-optimal de tous les successeurs dun nud donn. Plusieurs approches
sont explores pour slectionner le nud : FIFO, plus petite moyenne des cots des ti-
quettes associs un nud et une le o les nuds sont placs en tte si la moyenne des
cots est plus petite et en queue sinon.
Dans le cadre dulabel selecting, choisir la plus petite tiquette dans lordre lexicographique
correspond lalgorithme de Martins (label setting). Les auteurs introduisent comme
moyen de slection le FIFO et lutilisation dune le o une tiquette est mise en tte
ou en queue si elle est plus petite que ltiquette en tte. Lordre lexicographique et la
somme des objectifs sont considrs pour comparer les tiquettes.
Des mesures exprimentales sont faites sur des graphes alatoires de taille et de densi-
t variables et galement sur des graphes en forme de grille. Deux quatre objectifs sont
tudis. Globalement aucune des approches nest signicativement plus performante que
lautre. On constate tout de mme que la technique de label-setting se comporte globa-
lement mieux sur les graphes les plus denses et les grilles. Il semblerait que le temps
dexcution soit fortement corrl avec le nombre dlments sur le front de Pareto.
Une approche base sur la programmation linaire est utilise dans Tarapata [55]. Malgr
lutilisation du solveur de programmes linaires CPLEX rput pour sa performance, les
rsultats sont moins intressants que ceux dun algorithme de Dijkstra modi.
Amlioration des performances
Une adaptation de lalgorithme A* est propose dans Stewart,White III [56]. La fonction
heuristique retourne une estimation infrieure pour chaque objectif, permettant ainsi de
guider la recherche. Les auteurs prsentent plusieurs heuristiques ainsi que les conditions
quelles doivent remplir. Cette approche est appele MOA*. Elle se base sur la slection
des nuds. Dans Mandow,de la Cruz [57] les auteurs prsentent une extension de A* qui
slectionne les tiquettes et non pas les nuds, contrairement lapproche prcdente.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Optimisation multiobjectif
38
Dans Sauvanet,Nron [58], les auteurs slectionnent un certain nombre de nuds pour
calculer les plus courts chemins entre toutes les paires an dobtenir de meilleures bornes
et ainsi rduire le nombre de nuds explors. Lapplication permet de calculer le plus
court chemin bicritre (dure et sentiment de scurit vlo) lchelle dun dpartement
(environ 100 000 nuds en moins dune seconde).
Les rsultats les plus performants sont ceux de Delling,Wagner [59]. Leurs rsultats sont
cependant modrer cause de la nature des objectifs considrs. Ceux-ci sont en eet
trs fortement corrls (distance et temps par exemple) ne gnrant donc que trs peu
dlments dans le front de Pareto.
Dans Geisberger, [60], les auteurs adaptent les contraction hierarchies de Geisberger, [5]
pour proposer un calcul ditinraire multiobjectif dont la fonction de cot est linarise a
priori. tant donn que cette approche se base sur un pr-traitement, les coecients pos-
sibles doivent tre connus lavance. Cela apporte donc une limitation supplmentaire
par rapport la linarisation des objectifs. Lavantage de cette approche si le cadre
dapplication tolre une limitation aussi forte rside dans des performances encore
meilleures que celles de Delling,Wagner [59]. Un calcul travers lEurope ne ncessite en
eet quenviron 10 ms.
Modication des paramtres
Il se peut que les paramtres changent de manire imprvue (retards dus une panne
ou un incident mto). Daprs ses auteurs, le premier article traiter les imprvus
dans le cas multiobjectif est Berger, [61]. Ils proposent une approche appele SUBITO
pour SUBstructure In Time-dependent Optimization . Elle consiste calculer dans un
premier temps litinraire thorique le plus rapide et xer un temps maximum qui est
accept pour arriver aprs le temps thorique. Cela permet dliminer plus tt des ti-
quettes lors du calcul des itinraires. Le temps maximum de retard considr est de 60
minutes pour des trajets allant de 2 12 heures.
Cette approche est plutt simple, robuste aux changements qui ont lieu sur le graphe
et les expriences montrent une amlioration par un facteur 10 environ par rapport
lalgorithme de Martins.
1.4.5.3 Dominance relche
Dans Muller-Hannemann,Schnee [62] les auteurs utilisent une notion assez souple de la
dominance an dliminer des solutions peuacceptables par un tre humain. Ils appellent
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
39
cela la relaxed Pareto dominance. Ainsi une solution mettant une minute de moins, mais
cotant dix euros de plus sera considre comme domine. Cette approche ncessite donc
lintervention a priori du dcideur an de dterminer les paramtres de la dominance
et une intervention a posteriori pour choisir la solution. Lavantage de cette solution est
la rduction du front de Pareto gnr et donc la rduction pu temps dexcution. Une
fonction h permet de dterminer si une solution u domine v : si pour chaque objectif on
a u
i
+ h
i
(u, v) v
i
pour tout 1 i k et que pour au moins un i, u
i
+ h
i
(u, v) < v
i
. Cette
dnition est trs large et permet une dnition trs souple du cot acceptable pour un
objectif en fonction de tous les objectifs.
Cette approche a galement lavantage de ne prsenter lutilisateur (le dcideur a pos-
teriori) un nombre rduit de solutions au dtriment de la perte dune solution qui aurait
pu tre prfre. Cependant, si elle permet de rduire lexploration en liminant au plus
tt certaines solutions, il nest pas possible de quantier la rduction dlments dans le
front de Pareto. De ce fait, la complexit reste exponentielle dans le cas gnral.
1.4.5.4 -optimalit
Ce concept rednit la notion de dominance et peut ainsi tre considr comme un cas
particulier de la dominance relche vue prcdemment. Cependant celle-ci prsente des
rsultats thoriques particulirement intressants. Au lieu de considrer une ingalit
stricte an de savoir si une solution domine une autre, une tolrance un facteur
i
prs
sur chaque objectif i est accepte. La dominance est donc formellement dnie de la ma-
nire suivante :
u

v i {1, . . . , k}, u
i
(1 +
i
) v
i
, i {1, . . . , k} u
i
< v
i
Par souci de simplicit, nous avons considr par la suite que le tait le mme pour
tous les objectifs. Cependant les rsultats sappliquent de la mme manire en ayant un

i
dirent pour chaque objectif.
Avec cette nouvelle dnition de la dominance, on peut dnir l-front de Pareto PF

,
dont toutes les solutions sont au plus un facteur 1 + prs du front de Pareto optimal
pour chaque objectif.
Un certain nombre de rsultats remarquables ont t formaliss rcemment. Ainsi dans
Papadimitriou,Yannakakis [63] les auteurs dmontrent que le nombre dlments dans
le front de Pareto est un polynme en
1

et la taille du problme (mais exponentiellement


t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Optimisation multiobjectif
40
en fonction du nombre dobjectifs). Ce rsultat peut tre compris intuitivement en dcou-
pant lespace des objectifs en hypercubes de largeur : il sut alors de trouver une seule
solution par hypercube.
Mme si le front de Pareto a une taille polynomiale, le temps ncessaire pour le calculer
ne lest pas ncessairement. Les auteurs prsentent plusieurs conditions pour lexistence
dun tel algorithme. Le thorme central stipule quun tel algorithme existe si et seule-
ment sil existe un autre algorithme permettant de rsoudre en temps polynomial le pro-
blme suivant : tant donn un vecteur b, retourner une solution s telle que f (s)

b ou
prouver quelle nexiste pas.
Lide de la dmonstration est dappliquer cet algorithme chaque hypercube an de
savoir sil contient une solution. Comme le nombre dhypercubes est polynomial et que
lalgorithme lest aussi, cette opration reste en temps polynomial. Il sut la n de ne
garder que les solutions non domines.
Application au problme du plus court chemin
Le plus court chemin multiobjectif a dj t rsolu en temps polynomial un facteur
prs dans Warburton [64]. Lalgorithme propos fonctionne sur des graphes acycliques
avec des poids valeurs entires. La complexit est en O(n
3

nlog(nC
max
)

k1
) o k est le
nombre dobjectifs et C
max
est le plus grand poids sur lensemble des arcs.
Une nouvelle approche a t propose dans Tsaggouris,Zaroliagis [65] qui est une adap-
tation de lalgorithme de Bellman-Ford. Le principe de lalgorithme est particulirement
simple et permet de rsoudre undes objectifs de manire optimale. La complexit est lg-
rement amliore par rapport celle de lalgorithme de Warburton : O(nm

nlog(nC
max
)

d1
).
Les auteurs ont tendu cette approche au problme de plus court chemin dont les poids
ne sont pas additifs (Non-Additive Shortest Paths), tels que des problmes Min-Max.
Dtails de lalgorithme de Tsaggouris
tant donn un graphe dont lensemble des arcs est A et lensemble des nuds N. On
souhaite optimiser d objectifs, le d-ime objectif tant rsolu de manire optimale. Un che-
min p = (a
1
, . . . , a
l
) est reprsent par une tiquette qui est un triplet (c(p), pred(p), dernier
arc(p)), o c est la fonction objectif qui renvoie le vecteur de cot du chemin, pred(p) est
ltiquette prdcesseur et dernierarc(p) est le dernier arc a
l
du chemin p. partir dune
tiquette il est donc possible de reconstruire le chemin en remontant les prdcesseurs.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
41
Un vecteur r = [r
1
, . . . , r
d1
, 1] dnit un rapport derreur acceptable pour chaque objectif.
Pour le dernier objectif, ce rapport vaut 1, puisquon dsire le rsoudre loptimum.
On note C
i
le rapport entre le plus grand poids du graphe et le plus petit pour lobjectif
i : C
i
=
max
aA
c
i
(e)
min
aA
c
i
(e)
. Lespace des objectifs est alors dcoup en hypercubes de manire
ce le rapport entre une solution x et les bords de lhypercube soit au plus r
i
dans chaque
dimension i. De ce fait il y a log
r
i
(nC
i
) dcoupages par dimension.
On souhaite avoir pour chaque nud au plus un chemin (donc une tiquette) par hyper-
cube. chaque nud on associe donc une matrice labels de dimensions :
[0..log
r
1
(nC
1
), . . . , 0..log
r
d
1
c
d1
(p)
c
min
d1
]
x dsigne la troncature de x.
La position dune tiquette q dans la matrice est obtenue avec la fonction pos qui renvoie
un vecteur contenant lindice de chaque colonne :
pos(q) = [log
r
1
c
1
(p)
c
min
1
, . . . , log
r
d
1
c
d1
(p)
c
min
d1
]
f
1
f
2
Figure 1.10 Dcoupage de lespace des objectifs en -optimisation.
Dans chaque hypercube, nous ne souhaitons garder quune seule
solution qui sera au plus un facteur prs des bords de lhypercube
Lalgorithme de Tsaggouris (algorithme 1.6) se comporte ensuite comme lalgorithme de
Bellman-Ford (algorithme 1.2), sauf que les lignes 8 10 sont remplaces par la fonction
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Itinraires multimodaux
42
fusion (algorithme 1.5) qui compare toutes les tiquettes du nud prcdent an de
voir sil y a une amlioration.
1 FONCTION fusion(R, Q, a)
2 POUR TOUT p de Q FAIRE
3 q := (c(p) + c(a), p, a)
4 si R[pos(q)] = null OU c_d(R[pos(q)]) > c_d(q) ALORS
5 R[pos(q)] := q
6 RETOURNER R
Algorithme 1.5 Procdure fusion de lalgorithme de Tsaggouris
1 FONCTION Tsaggouris(source, nuds, arcs, poids)
2 POUR TOUT v de nuds FAIRE
3 label[v] = null
4 label[source] = (0, null, null)
5 RPTER |nuds| FOIS
6 POUR TOUT a = (u,v) de arcs FAIRE
7 label[v] := fusion(label[v], label[u], a)
Algorithme 1.6 Algorithme de Tsaggouris
1.5 Itinraires multimodaux
Un itinraire multimodal est un itinraire combinant dirents modes de transports tels
que la marche, le mtro ou encore le vlo. Il nexiste pas de rel consensus sur la dnition
exacte. Ainsi certaines publications prfrent utiliser le terme intermodal. De plus, certains
auteurs considrent que la combinaison de plusieurs lignes de transports en commun est
dj un itinraire multimodal en soi.
Puisquon prend en compte les transports en commun, il sagit dun problme de chemin
de moindre cot enfonctiondutemps. La dicult supplmentaire vient dufait de devoir
grer en plus dirents modes de transport. En eet, si pour parcourir un arc on possde
deux modes de transport, alors se pose le problme de la contrainte FIFO : vaut-il mieux
attendre un nud (pour prendre un bus), ou partir au plus tt ( pied) ?
Comme le soulignent Boussedjra, [66], il sagit dun domaine o il existe de nombreux
outils de simulation, mais paradoxalement trs peu de recherche du point de vue optimi-
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
43
sation. Cela est dautant plus tonnant en considrant le potentiel important que de tels
outils pourraient apporter dans le domaine du transport de marchandises ou de passa-
gers et ce aussi bien du point de vue des cots, de la abilit, du confort ou encore de
limpact environnemental.
1.5.1 Dicults
Les dicults lies aux itinraires multimodaux sont dnies dans Ziliaskopoulos,Wardell
[67] :
les horaires ne sont pas des fonctions continues ;
certains nuds sont linterconnexion de plusieurs lignes oprant sur des rseaux dif-
frents, ncessitant de considrer chaque ligne comme un mode dirent ;
ncessit de prendre en compte le temps dattente aux nuds ;
violation de la contrainte FIFO sur certains arcs.
Un rcent article Bast [68] tudie toutes les approches utilises pour amliorer les perfor-
mances dans le cadre dun rseau routier et montre que lapplication de celles-ci nest pas
toujours possible sur des transports en commun suivant une grille horaire. Dans tous les
cas, les performances obtenues ne sont pas aussi performantes.
Dans le cadre dun calcul ditinraire multimodal, les algorithmes doivent tre un com-
promis entre les approches performantes sur un rseauroutier et celles performantes avec
une grilles horaires. De ce fait, obtenir un calcul ditinraire multimodal est probablement
plus dicile que dobtenir un calcul ditinraire avec un mode isol.
1.5.2 Graphe multivalu
Un graphe multivalu consiste considrer que pour un arc, il y a autant de cots que
de modes de transport sur cet arc. Cette formulation spcique au transport multimodal
permet une reprsentation compacte, donc plus conome en mmoire, mais en contre
partie ncessite des algorithmes capables de grer cette structure de donnes.
Les auteurs montrent dans Ziliaskopoulos,Wardell [67] que lutilisation du modle ha-
bituel time-expanded, avec n nuds, m arcs, q intervalles de temps, o modes de transport,
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Itinraires multimodaux
44
le graphe espace-temps gnr aura noq nuds et mqo + no
2
q
2
arcs. Il en rsulte quun
algorithme utilisant un tel graphe aura une complexit en au moins O(no
3
q
3
).
Les auteurs proposent un algorithme en O(q
2
n
5
) capable de calculer le chemin le plus
rapide mme sil existe des arcs non-FIFO sans ncessiter de gnrer le graphe espace-
temps. Les auteurs considrent que le rseau piton est agrg en quelques points dint-
rt rduisant ainsi signicativement le nombre de nuds du rseau. La consquence de
cela est la multiplication darcs non-FIFO, puisquil sera probable que larc entre deux
stations de transports en commun soit utilisable par les pitons. Malgr le facteur n
5
,
les auteurs montrent exprimentalement que le temps dexcution augmente de manire
pratiquement linaire en fonction du nombre de nuds. De plus le temps dexcution
est eectivement insensible au nombre de modes considrs. Cependant les instances
sont relativement petites, puisque le nombre de nuds pris en compte varie entre 25 et
1 000 tandis que le nombre dintervalles de temps considrs va de 50 250. Le temps
dexcution dpasse souvent la dizaine de secondes.
Lapproche utilise dans Boussedjra, [66] est assez similaire. Plutt que de vouloir mini-
miser le temps de parcours, le but est de minimiser le nombre de transbordements. La
complexit obtenue est en O(n
2
o
2
q
2
). Lalgorithme a t test sur des instances gnres
alatoirement. Pour des instances 100 intervalles de temps et entre 50 et 1 000 nuds,
le temps dexcution est de lordre de la seconde. On peut cependant regretter le manque
de ralisme des instances, puisque le nombre minimal de transbordements oscille entre
16 (pour 50 nuds) et 102 pour 1 000 nuds.
1.5.3 Approche time-expanded
En se basant sur lalgorithme Chrono-SPT, dans Lozano,Storchi [69] les auteurs sint-
ressent au plus court chemin acceptable. En eet, un itinraire comportant cinq change-
ments ne sera pas considr comme acceptable, mme si le temps de parcours est plus
faible. Il sagit dans une certaine mesure dune approche multiobjectif, mme si elle est
relativement limite. En eet, seul le cot et le nombre de transferts sont considrs. Il
nest pas possible dassocier plusieurs cots un arc.
Le chemin multimodal le plus rapide sur le rseau routier, ferroviaire et arien est calcul
dans Delling, [70] avec dexcellentes performances (quelques millisecondes lchelle de
lEurope). An de modliser les transitions acceptables (par exemple il nest pas possible
de prendre une voiture entre deux transports en commun), ils se basent sur une approche
propose dans Barrett, [71]. Chaque arc possde une tiquette (voiture, train, avion, etc.)
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
tat de lart
45
et lalgorithme propos calcule le plus court chemin de manire ce quil soit valid
par un automate fourni en paramtre (par exemple (marche ou voiture) puis avion puis
marche) pour un trajet qui commence par de la marche ou en voiture, continue en avion
et nit par de la marche). Les bonnes performances sont relativiser puisque la part de
transports en commun est particulirement faible. Ansi dans leur plus grande instance,
qui couvre lEurope et lAmrique du nord, les auteurs ne prennent en compte que 359
aroports. titre de comparaison, la rgion le-de-France comporte plus de 25 000 arrts
de bus. Le fait que les transports en commun soient si peu reprsents permet aux au-
teurs dutiliser des algorithmes de plus courts chemins traditionnels pour obtenir daussi
bonnes performances.
1.5.4 Approche multiobjectif
Dans Meng, [72], le plus court chemin multimodal multiobjectif est calcul dans le r-
seau de transports en commun de Singapour (environ 3 000 nuds). Cependant seul les
rseaux de bus et de mtro sont pris en compte. Des arcs de marche sont rajouts pour
connecter les stations proches. Laspect multiobjectif est trait en linarisant le temps de
parcours et le cot. La rsolution se fait avec une version modie de lalgorithme de
Dijkstra.
Dans Boussedjra, [73], les auteurs linarisent les objectifs et utilisent un algorithme gn-
tique pour faire varier les poids dans le but de construire le front de Pareto. Les individus
sont donc reprsents par les poids de la fonction objectif. Lvaluation dun individu
consiste calculer le plus court chemin mono-objectif avec les poids associs. Larticle
se focalise sur ltude des possibilits de loprateur de diversication, an dviter de
converger dans la mme zone du front de Pareto. Les performances sont assez modestes.
Si loprateur propos (bas sur une liste tabou) permet daugmenter la qualit des solu-
tions trouves, le rseau tudi est plutt petit : 60 nuds, 9 24 modes par nud et 200
dates de dpart par mode et nud.
Une premire approche rellement multiobjectif a t propos dans Gueye, [74], Gueye,
[75]. Lapproche propose modlise les transitions possibles entre modes grce un
nombre rduits dtats dans lequel se trouve lutilisateur en fonction des modes quil
a dj emprunt et du mode en cours. Les algorithmes proposs ne fonctionnent que si
le deuxime objectif est une variable entire prenant un nombre rduit de valeurs (par
exemple le nombre de changements). Pour une ville de la taille de Toulouse, le temps de
calcul est de lordre de la seconde. Cependant il semblerait que le temps de parcours en
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Itinraires multimodaux
46
transports en communs ne soit quune approximation du temps de parcours et ne prenne
pas rellement en compte les grilles horaires.
1.5.5 Questionnement
On peut stonner du peu de recherche faite dans ce domaine. En eet, les rsultats ac-
tuels, mme rcents sont particulirement mdiocres ou peu adapts pour une mise en
application sur des rseaux de grande taille tel que celui de la rgion Parisienne.
Les approches multimodales les plus performantes se contentent de calculer le chemin le
plus rapide et ne permettent pas de prendre en compte dautres cots. De plus elles ne
sintressent pas aux rseaux avec une forte interaction entre transports en commun ni
aux modes utilisant le rseau routier.
En ce qui concerne les approches multiobjectif, elle ne prennent en compte que trs rare-
ment laspect multimodal et ont des temps de calcul peu satisfaisants. notre connais-
sance, personne na rellement abord les problmes lis la dpendance du temps.
En particulier, il est surprenant que les deux approches habituellement utilises dans
les graphes grille horaire, savoir time-dependent et time-expanded naient pas t utili-
ses pour le chemin multiobjectif. En eet, lutilisation de graphes multivalus ncessite
lutilisation dalgorithmes qui se rvlent particulirement compliqus.
Conclusion
La recherche bibliographique a montr quil existe de nombreux algorithmes de calcul
de plus court chemin, mais il reste encore une certaine marge de progression en ce qui
concerne la modlisation dun rseau rellement multimodal et de lutilisation des tech-
niques doptimisation multiobjectif.
Le chapitre suivant xe la problmatique de cette thse la lumire des publications les
plus proches de nos travaux.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
47
Chapitre 2
Problmatique
Neo, sooner or later youre going to realize just as I did that theres a dierence between knowing the path and walking
the path.
Morpheus in Matrix
Introduction
Ce chapitre essaye de prsenter dans un premier temps les spcicits du problme que
nous essayons de rsoudre, savoir le plus court chemin multiobjectif dpendant du
temps. Dans un second temps, nous prsenterons dans quelles situations les algorithmes
peuvent tre appliqus. Enn, nous tenterons de qualier exprimentalement le nombre
de solutions Pareto-optimales trouves en fonction de la nature des fonctions objectifs
lors dun calcul du plus court chemin.
2.1 Problmatique
2.1.1 Intrt pour lutilisateur
Les calculateurs ditinraires multimodaux actuellement disponibles sont particulire-
ment simplistes. En eet ils ne proposent lutilisateur quune seule solution. Lorsque
plusieurs solutions sont prsentes, il ne sagit que de solutions dcales dans le temps
et ne forment pas ncessairement un ensemble Pareto-optimal (par exemple sur le site de
vente en ligne de la SNCF).
Les contraintes peuvent tre parfois dnies par lutilisateur mais restent trs restreintes.
Ainsi, il est gnralement possible de choisir uniquement les modes que lon souhaite
prendre. Quant aux objectifs optimiser, ils sont toujours limits au temps ou au nombre
de changements.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Problmatique
48
Nous pensons quil est prfrable davoir un systme ayant le moins de paramtrage pos-
sible (idalement aucun), tout en convenant lutilisateur dans toutes les circonstances.
Il nest donc pas possible de prjuger des prfrences de lutilisateur et il est indispen-
sable de lui proposer plusieurs solutions alternatives (par exemple est-ce que cela gne-
rait lutilisateur de marcher une dizaine de minutes ?).
La ncessit de prsenter plusieurs solutions pour un mme utilisateur est dautant plus
vraie quune mme personne ne prendra pas ncessairement dun jour lautre le mme
itinraire pour un mme trajet. En eet, selon la mto, la charge, le temps disponible, une
personne choisira le vlo, la voiture, le mtro ou une combinaison de ces modes. Ces
donnes tant impossibles modliser, il est ncessaire de laisser lutilisateur le choix.
De plus cette approche permettra lutilisateur damliorer son itinraire en dcouvrant
une possibilit quil ne voyait pas auparavant.
2.1.2 Intrt scientique
Notre sujet se rapproche de nombreuses approches prsentes au premier chapitre. Ce-
pendant, nous essayons dopter pour une approche globale prenant en compte simulta-
nment la multimodalit et loptimisation multiobjectif. En eet les calculs ditinraires
multimodaux ne sont que trs rarement multiobjectifs et les seules approches multiob-
jectif nont t faites que sur des rgions particulirement petites.
Htrognit des modes de transport
Les approches proposes ne considrent gnralement pas les modes de transport htro-
gnes tels que les vlos en libre service. De plus elles se contentent de prendre en compte
les transports en commun et, dans une mesure trs limite, la marche. Lintroduction de
nouveaux modes de transport multiplie le nombre dinterconnexions et donc le nombre
ditinraires quivalents possibles. Le nombre de modes accrot donc signicativement la
complexit du problme, tout particulirement avec une approche multiobjectif.
Pas dapproximations
Certaines approches agrgent certaines zones en un seul nud rendant ainsi les rsultats
approximatifs. De plus lapproche time-expanded qui est souvent utilise pour les trans-
ports en commun nest pas valable pour le transport routier sans introduire une forte
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Problmatique
49
approximation du temps de parcours sur les arcs ou de considrer un nombre consid-
rable dintervalles de temps (chaque intervalle devrait durer de lordre de la seconde).
Des fonctions de cot diciles
En ce qui concerne les approches multiobjectif, la nature des objectifs considrs ne g-
nre gnralement que peu de solutions Pareto-optimales. En eet, plus il y a de change-
ments, plus il y a de chance que le trajet soit long. De mme le temps parcouru est trs
fortement corrl la distance parcourue. A contrario, les missions de CO
2
, le dnive-
l positif ou encore le cot montaire gnrent considrablement plus de possibilits de
parcours si lon prend en compte des modes de transport aussi dirents que la marche,
le vlo, la voiture et les transports en commun et que lon sautorise toute combinaison
de ces modes.
Simplicit de lapproche
Toutes les approches proposent des algorithmes assez complexes et donc diciles im-
plmenter. Dans le contexte de thse conance par un industriel, une application relle
devait tre aise. An de permettre une volution de lapplication, lalgorithme propos
doit tre susamment simple comprendre pour une prise en main rapide et susam-
ment gnrique pour sadapter lvolution des besoins.
Choix des solutions prsenter
Finalement, il sera important de rchir la manire dont seront prsents les rsultats
lutilisateur nal. Il est probablement peu souhaitable de lui prsenter le front de Pareto
in extenso, mais il serait galement dommage de ne lui prsenter quune seule solution. De
ce fait il sera ncessaire de dnir des mtriques adaptes qui permettront de slectionner
quelques solutions intressantes.
2.1.3 Taille des problmes
Taille du graphe
Nous nous intressons tout particulirement aux trajets multimodaux en milieu urbain.
Lchelle des problmes est donc de lordre dune agglomration. La rgion le-de-France
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Problmatique
50
peut-tre considre comme une borne suprieure de la part de sa taille (11 millions
dhabitants) et la densit de ses modes de transport. Il existe en eet plus de 25 000 arrts
de bus (pour prs de 1 500 lignes) et 1 000 stations de transport en commun ferrs (50
lignes). En ce qui concerne les vlos en libre service, 1 500 stations du vlo Vlib sont en
service. Enn, le rseau routier, il comporte environ 200 000 nuds et 300 000 arcs.
Objectifs considrs
Contrairement aux approches existantes qui ne traient habituellement que deux objectifs,
nous nous proposons de prendre en compte :
le cot,
le nombre de changements,
le confort (les utilisateurs prfrent gnralement les transports en commun sur fer
tels que le mtro ou le tramway par rapport au bus),
la pollution (un indicateur trs simpliste est la quantit de CO
2
mise),
leort physique (pour un vlo ce serait le dnivel positif).
Temps de calcul souhait
Pour un utilisateur qui dsire choisir un itinraire sur un site web, lattente doit tre de
lordre de la seconde. De ce fait le temps de calcul doit galement tre de cet ordre de
grandeur. Nous nous penchons galement sur le cas dun serveur web devant traiter plu-
sieurs requtes simultanment.
2.1.4 Comparatif des approches existantes
Nous proposons de reprendre les travaux prsents au premier chapitre an de les com-
parer et constater leurs limites respectives. Le tableau 2.1 indique les points faibles ou
non traits (-) et les points forts (+) de chaque publication. Un 0 indique que lapproche
propose traite le problme sans se dmarquer.
Nous comparons les lments suivants :
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Problmatique
51
Modlisation du problme rsoudre :
Transports htrognes : est-ce que tout type de transport est modlisable ?
Densit multimodale : est-ce que les interconnexions entre modes de transport cor-
respondent la ralit ?
Multiobjectif : plusieurs objectifs sont optimiss simultanment ?
Algorithmes proposs :
Taille des instances : est-ce quelles correspondent celle dune grande ville ?
Approche exacte : est-il ncessaire de faire des approximations ?
Simplicit : est-ce que les algorithmes sont simples prendre en main?
Rfrence H

r
o
g

n
e
D
e
n
s
i
t

M
u
l
t
i
o
b
j
e
c
t
i
f
T
a
i
l
l
e
E
x
a
c
t
S
i
m
p
l
e
Pallottino,Scutella [20] + + - - - -
Chabini [27] + + - - - -
Meng, [72] 0 + - 0 + +
Ziliaskopoulos,Wardell [67] + + - - - -
Lozano,Storchi [69] + + + - - -
Boussedjra, [66] + + - - - -
Boussedjra, [73] + + + - - -
Muller-Hannemann,Schnee [62] - - + + + +
Delling, [70] + - - + + -
Bast, [21] - + + + 0 -
Tableau 2.1 Comparaison des publications
existantes, points forts(+) et points faibles(-)
On constate quaucune approche ne couvre rellement tous les objectifs que nous nous
sommes xs. Notre approche vise tre susamment gnrique et performantes an
de remplir ces six critres.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Limite dapplication des algorithmes
52
2.2 Limite dapplication des algorithmes
2.2.1 Plus court chemin statique
Lalgorithme de Dijkstra nest valable tant que les cots sont positifs. Lalgorithme de
Bellman-Ford permet de dtecter des cycles absorbants. Cependant en cas dexistence de
tels cycles, lalgorithme nest pas applicable puisque trouver le plus court chemin lmen-
taire dans ce cas est un problme dicile.
2.2.2 Chemin le plus rapide en fonction du temps
Nous avons vu que lalgorithme de Dijkstra est valable tant que la fonction de cot est
croissante et tend vers linni. Lorsque le cot reprsente le temps, les fonctions ont tou-
jours la forme
f
t
(t) = t + p(t)
o p(t) est le temps de parcours de larc. Puisque ce temps de parcours est positif, la
fonction est strictement croissante et tend vers linni.
Il est donc possible dutiliser lalgorithme de Dijkstra dpendant du temps condition
que le temps de parcours dun arc soit strictement positif.
2.2.3 Chemin de moindre cot dpendant du temps
Lorsque le cot dpend du temps, les conditions sur les fonctions de cot sont plus res-
trictives. En eet, en plus de la complexit thorique (problme NP-dicile), la solution
peut tre un chemin de longueur innie, mme si tous les cots sont strictement positifs.
La gure 2.1 est un exemple directement inspir de Orda,Rom[25] o les auteurs donnent
un exemple simple o le chemin de moindre cot est de longueur innie.
1 2 3
1/t
2
1/t
2
1/t
Figure 2.1 Chemin de moindre cot de longueur innie.
chaque parcours dun arc, t est incrment de 1. Le chemin
de moindre cot bouclera une innit de fois entre 1 et 2
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Problmatique
53
Le temps pour parcourir un arc est toujours de 1. Les cots en fonction du temps sont
indiqus sur chaque arc. Le chemin le plus court du nud 1 au nud 3 est celui qui
boucle inniment entre les nuds 1 et 2 avant demprunter larc (2,3). Le cot optimal est
donc de :
t=+

t=1
1
t
2
=

6
Les auteurs donnent des conditions susantes pour que le chemin de moindre cot soit
ni :
le cot de chaque arc a une borne infrieure strictement positive partir dun instant
T ;
le cot dattente un nud tend vers +avec le temps.
2.2.4 Plus court chemin multiobjectif dynamique
notre connaissance, le plus court chemin multiobjectif dont les cots sont fonction du
temps na jamais t tudi. Alors que dans le cas prcdent (chemin de moindre cot
dpendant du temps) il susait que les fonctions de cot aient une borne infrieur stric-
tement positive, dans le cas multiobjectif il faut poser des conditions plus strictes. En eet
si la fonction est un moment dcroissante et continue, alors il existera un nombre inni
dlments dans le front de Pareto.
Considrons un page urbain : pour rentrer dans le centre-ville, sur certains arcs il faut
payer un page. Ce cot peut tre fonction de lheure de la journe pour dcourager
lutilisation de la voiture en heure de pointe, comme dans gure 2.2.
Dans le cas dun segment dcroissant, attendre un tout petit instant fait conomiser un
peu dargent. De ce fait, comme la fonction est continue, il existe une innit de solutions
Pareto-optimales.
Une condition ncessaire pour que le nombre de solutions Pareto-optimales soit ni est
que les fonctions de cot soient croissantes en un nombre ni de morceaux, cest--dire
quen aucun point elle ne peut tre dcroissante et continue.
2.2.5 Conditions gnrales
Nous avons vu que les fonctions de cot doivent avoir une borne infrieure pour que le
chemin le moins cher soit ni. Dans le cadre multiobjectif, les fonctions de cot doivent
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Front de Pareto gnr selon les fonctions de cot
54
Heure
Page
8h00 12h00 18h00
2euro
3euro
Figure 2.2 Exemple de page urbain gnrant un front de Pareto
continu. Entre 8h et 12h, attendre un instant de plus rduira le cot
du page. Il y a donc une innit de solutions Pareto optimales
en plus tre croissantes par morceaux pour avoir un nombre ni dlments dans le front
de Pareto.
Cependant, la majorit des cots considrs sont constants (en dehors du temps de par-
cours). En pratique les fonctions de cot remplissent donc les conditions pour quun al-
gorithme puisse nir en un temps ni.
2.3 Front de Pareto gnr selon les fonctions de cot
Nous souhaitons pouvoir estimer la taille du front de Pareto selon la nature des fonctions
de cot et du nombre dobjectifs.
Nous observons galement le temps de calcul ncessaire en fonction de la taille du front.
2.3.1 Les graphes
Nous considrons trois graphes : un graphe en forme de grille parfaite o tous les arcs
sont de mme longueur, un graphe bas sur le rseau routier rel de San Francisco et un
autre bas sur le rseau routier de Rennes.
Les graphes comportent respectivement 1 225, 1 259 et 1 239 nuds. Nous navons en eet
considr quune petite partie de la ville an davoir des tailles de graphe similaires.
2.3.2 Les cots
Nous ne considrons que des poids constants. Nous nous intressons trois types de
cot :
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Problmatique
55
rels : la valeur est tire alatoirement dans lintervalle [(1 ) l; (1 + ) l] o l est la
longueur de larc et un facteur variable entre 0 et 100%;
entiers : la valeur est tire alatoirement dans lintervalle [0; n] o n est variable entre
0 et 100 ;
binaires : la probabilit que le cot soit 1 va de 0 100%.
2.3.3 Rsultats
Pour chaque valeur, nous avons eectu 10 calculs ditinraire en slectionnant le point
de dpart alatoirement. Nous prsentons la valeur moyenne.
Nature du graphe
Contrairement lide intuitive, un rseau routier ne peut pas tre facilement compar
un graphe quadrill. En eet la gure 2.3 et la gure 2.4 montrent que le comportement
des deux types de graphes nvolue pas de la mme manire en changeant le type de fonc-
tion de cots. En eet dans un graphe quadrill des fonctions binaires de cot gnrent
bien plus de solutions sur le front de Pareto que des fonctions relles.
Le comportement des algorithmes sur ces deux villes considres est trs proche malgr
une topologie assez dirente.
Cependant la comparaison est biaise par le fait que les longueurs sur le rseau quadrill
sont unitaires alors quelles sont typiquement de lordre de quelques dizaines de mtres
sur le rseau routier rel.
Nature des fonctions de cot
Dans le rseau routier, pour des objectifs binaires avec une faible probabilit dtre 1,
alors il existe signicativement moins dlments sur le front de Pareto (par exemple un
objectif qui compte le nombre de changements). De mme, lorsque les objectifs sont forte-
ment corrls (cot rel avec faible variation autour de la longueur), alors il y aura moins
dlments sur le front (par exemple distance et temps de parcours).
Corrlation entre taille du front de Pareto et temps de calcul
La gure 2.5 montre le temps de calcul en fonction de la taille du Front de Pareto dans
le cas de cots continus. On constate une forte corrlation entre le temps de calcul et le
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Front de Pareto gnr selon les fonctions de cot
56
Paramtre
N
o
m
b
r
e

d
e

s
o
l
u
t
i
o
n
s

P
a
r
e
t
o

o
p
t
i
m
a
l
e
s
5000
10000
15000
20000
25000
5000
10000
15000
20000
25000
5000
10000
15000
20000
25000
Quadrill
0 20 40 60 80 100
Rennes
0 20 40 60 80 100
San Francisco
0 20 40 60 80 100
B
i
n
a
i
r
e
E
n
t
i
e
r
R

e
l
Figure 2.3 Nombre dlments dans le front de Pareto
en fonction du type de cot et de graphe (2 objectifs)
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Problmatique
57
Paramtre
N
o
m
b
r
e

d
e

s
o
l
u
t
i
o
n
s

P
a
r
e
t
o

o
p
t
i
m
a
l
e
s
2e+05
4e+05
6e+05
8e+05
2e+05
4e+05
6e+05
8e+05
2e+05
4e+05
6e+05
8e+05
Quadrill
0 20 40 60 80 100
Rennes
0 20 40 60 80 100
San Francisco
0 20 40 60 80 100
B
i
n
a
i
r
e
E
n
t
i
e
r
R

e
l
Figure 2.4 Nombre dlments dans le front de Pareto
en fonction du type de cot et de graphe (3 objectifs)
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Slection de certaines solutions
58
nombre dlments sur le front de Pareto. An destimer la dicult dun problme, la
taille dugraphe nest donc pas ncessairement le seul argument pertinent. Il est important
de sintresser au nombre de chemins quivalents trouvs.
Inuence du nombre dobjectifs
Augmenter le nombre dobjectifs rendle problme nettement plus dicile. Plus tonnant,
alors que la taille du front de Pareto est multipli par 20, le temps de calcul est multipli
par 1 000. Cela peut tre expliqu dune part parce que plus dtiquettes non domines
sont gnres pendant la rsolution. Dautre part, un prolage montre que lalgorithme
passe plus de 90% du temps tester la dominance entre deux tiquettes.
2.3.4 Conclusion sur la nature des fonctions de cot
Considrer uniquement le nombre dobjectifs nest pas pertinent pour avoir une ide de
la dicult du problme. Il faut sintresser au nombre dlments sur le front de Pareto
pour avoir une estimation du temps de calcul. Ainsi, les objectifs gnralement considrs
(longueur, temps et nombre de changements) gnrent peu de solutions. Il sagit donc
dun cas facile par rapport dautres objectifs (dnivel, missions de CO
2
). En eet dans
le cadre dun itinraire multimodal, ces cots changent drastiquement selon le mode de
transport.
2.4 Slection de certaines solutions
Nous avons vu dans la section prcdente que le nombre dlments sur le front de Pareto
peut devenir particulirement important (plus de 1 000 solutions par paire de nuds
dans les instances les plus diciles).
Il est probablement peu pertinent de prsenter autant de solutions un utilisateur nal.
Il est donc ncessaire de rchir sur la manire de ne prsenter quun nombre rduit de
solutions.
Ces solutions prsentes doivent tre susamment diversies an de conserver lintrt
de loptimisation multiobjectif. Cette problmatique fait lobjet de ltude dans le chapitre
6.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Problmatique
59
Nombre de solutions Pareto optimales
T
e
m
p
s

d
e

c
a
l
c
u
l

(
m
s
)
10
20
30
40
5000 10000 15000 20000 25000
Deux objectifs
Nombre de solutions Pareto optimales
T
e
m
p
s

d
e

c
a
l
c
u
l

(
m
s
)
50000
100000
150000
2e+05 4e+05 6e+05 8e+05
Trois objectifs
Figure 2.5 Temps de calcul en fonction de la taille du front de Pareto
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Slection de certaines solutions
60
Conclusion
Nous avons prsent dans ce chapitre le problme que nous voulons traiter en compa-
raison avec les publications existantes. partir de l, nous avons montr les conditions
thoriques que doivent remplir les conditions de cot pour quun algorithme trouve un
nombre ni de solutions. Cependant, en pratique la large majorit des cots que nous
souhaitons considrer sont constants ou strictement croissants et ne prsentent donc pas
de problme.
Enn, nous montrons exprimentalement que la nature des cots inuence considrable-
ment la dicult du problme. La trs large majorit des publications ne sintresse qu
des fonctions de cot faciles (par exemple le nombre de changements), tandis que nous
souhaitons intgrer des fonctions de cot plus diciles (par exemple le dnivel positif
ou les missions de CO
2
.
Maintenant que nous avons dni les limites des publications existantes et les conditions
que doivent remplir les fonctions de cot, nous proposons dans le chapitre suivant un
modle gnrique pour modliser un rseau multimodal.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Problmatique
61
Deuxime partie :
Modle et
exprimentations
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
62
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
63
Chapitre 3
Modlisation dun rseau multimodal
Simplicity is prerequisite for reliability
Edsger Wybe Dijkstra
Introduction
Le but de ce chapitre est de proposer une modlisation dun rseau multimodal qui sera
utilise par la suite dans nos algorithmes. Dans un premier temps seront prsentes les
caractristiques souhaites qui ont abouti au modle propos. La deuxime section dcrit
tous les modes de transport que nous avons envisags et comment les modliser. Enn,
des considrations pratiques pour la mise en application seront abordes.
3.1 Caractristiques souhaites
3.1.1 Modlisation naturelle
La modlisation seule, dun rseau routier ou dun rseau de transports en commun,
est quelque chose de trs naturel. Cependant, la dpendance au temps complique d-
j la situation. En eet des approches telles que lexpansion espace-temps vue dans le
paragraphe 1.3.3.2 page 23 (qui ddouble les nuds pour chaque intervalle de temps)
rendent diciles la correspondance entre le rseau initial et le graphe gnr. La multi-
modalit pose aussi la question de comment modliser le fait quun mme tronon pourra
tre emprunt par un bus, une voiture, un vlo ou encore un piton.
La modlisation doit galement tre aussi proche que possible de la reprsentation que
lon se fait naturellement quand il faut se reprsenter un graphe correspondant un r-
seau routier ou un rseau de bus. Le but est en eet de pouvoir facilement transposer
des algorithmes traditionnels pour une implmentation plus simple et une prise en main
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Caractristiques souhaites
64
plus rapide dans un projet industriel. De ce fait nous ne dsirons pas modliser le temps
dattente un nud comme cela a t fait dans dautres modles.
3.1.2 Aucune perte dinformation
En voulant modliser tous les dplacements possibles, il est videmment extrmement
complexe de prendre en compte tous les paramtres. Ainsi, pour un piton il faudrait
tre capable de prendre en compte le cot de la route an de pouvoir savoir le temps
ncessaire pour traverser un croisement complexe
10
.
Cependant, il serait dommage dliminer ds le dbut (cest--dire la modlisation) cer-
taines donnes dans le but de rduire la taille de la reprsentation, ou damliorer les
temps de calcul. Ainsi le temps de changement entre deux lignes de mtro ou encore le
temps ncessaire pour rcuprer un vlo en libre service nest pas ngligeable et doit pou-
voir tre modlis. Cela interdit donc toute agrgation de nuds en un seul nud pour
rduire la taille du graphe et cela ncessite de sparer chaque mode de transport pour
permettre de prendre en compte le passage dun mode un autre.
3.1.3 Prise en compte de tous les modes de transport
Alors que de nombreuses approches se contentent des transports en commun et de la
marche, le modle devra prendre en compte tous les modes de transports individuels
(marche, voiture, vlo personnel . . . ), mais aussi les vlo en libre service ou encore les
taxis.
3.1.4 Respect de la contrainte FIFO
Utiliser un graphe qui nest pas FIFO amne des complications signicatives du point de
vue des algorithmes employs. An de ne pas crer de contraintes supplmentaires, le
modle devra tre un graphe respectant la contrainte FIFO.
Cela exclut donc la possibilit dutiliser un graphe multi-valu. En eet si un arc peut
tre emprunt par un piton ou par un autobus, il est vident que des situations non-
FIFO arriveront.
Cependant des premires applications de guidage pour pitons commencent apparatre, mais le manque
10
de donnes risque de les cantonner zones trs rduites
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Modlisation dun rseau multimodal
65
3.2 Modlisation des dirents modes
Les souhaits exprims dans la section prcdente amnent naturellement modliser le
rseaumultimodal sous la forme dungraphe ochaque mode de transport est reprsent
indpendamment de tout autre mode. Concrtement cela revient crer un graphe avec
plusieurs couches o chaque couche correspond un mode de transport.
An de modliser le changement dun mode un autre, deux nuds de deux couches
direntes peuvent tre relis par un arc lorsquun tel changement est possible.
3.2.1 Voitures, pitons et cyclistes
Tous ces modes de transport utilisent le rseau routier et ont une grande libert de mou-
vement puisque chaque arc peut tre emprunt nimporte quel instant.
La modlisation du rseau routier est trs naturelle. Les nuds o il y aura des changes
entre les modes dpendront de ce que lon souhaite modliser. En considrant quune
voiture ne peut tre laisse que dans un nombre restreint de parkings (par exemples les
parkings-relai), les arcs du rseau routier vers le rseau piton nexisteront que entre les
nuds correspondant ces parkings. Par contre si on accepte quun vlo soit attach
tout endroit de la ville, il existera un arc depuis chaque nud de la couche vlo vers la
couche piton.
En ce qui concerne la voiture et le vlo, tout abandon du vhicule est dnitif. Il est vi-
demment impossible de le reprendre plus tard. De ce fait, les arcs ne vont que de la
couche voiture ou vlo vers la couche piton mais pas dans lautre sens. Le cas de v-
lo en libre service et des taxis sera trait plus loin. Un exemple illustrant cela est visible
dans la gure 3.1.
Vlo personnel
Piton
Vlo libre service
0 1 2 3 4
0 1 2 3 4
0 1 2 3 4
Figure 3.1 Exemples de graphes en plusieurs couches
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Modlisation des dirents modes
66
3.2.2 Transports en commun
Les transports en commun se caractrisent par un nombre restreint de possibilits et sur-
tout par des horaires de fonctionnement trs prcis. Nous considrons que les transports
en commun sont reprsents par une succession darrts qui forment une ligne. Chaque
ligne peut tre parcourue rgulirement par des bus, mtros, trains, etc. qui respectent
scrupuleusement la mme squence darrts. Cependant, rien nempche que le temps
de parcours entre deux arrts soit dirent selon lheure de la journe. Par exemple un
bus pris dans la circulation mettra plus de temps en heure de pointe quen heure creuse.
Lorsque une mme ligne propose plusieurs parcours dirents (par exemple un parcours
omnibus et unparcours express oules branches dune ligne de RER), nous considrons quil
sagit de deux lignes distinctes comme dans la gure 3.2. Cela permet donc de garantir la
contrainte FIFO puisquaucune rame ne pourra en dpasser une autre sur un mme arc.
1 2 3 4
Ligne omnibus
1 4
Ligne express
Figure 3.2 Exemple de sparation dune ligne en deux
lignes express et omnibus pour garantir la condition FIFO
Chaque arrt est modlis par un nud et les nuds sont relis par des arcs suivant
le trac de la ligne des transports en commun. Un arrt qui est parcouru par plusieurs
lignes sera modlis par un nud par ligne comme montr dans la gure 3.3. En eet il
est ncessaire de pouvoir modliser le temps de changement entre les deux lignes (par
exemple pour aller dun quai un autre).
1 2 3 4
Ligne A
5 2 6 7
Ligne B
Figure 3.3 Exemple de la modlisation dun arrt en commun entre deux lignes
An de prendre en compte le temps dattente dans une station, celui-ci est intgr dans
les fonctions de cot associes chaque arc. Ainsi, en arrivant linstant t au nud u pour
aller au nud v, f
t
uv
(t) retournera linstant le plus tt auquel il sera possible darriver en
v en empruntant cet arc et en prenant en compte ce temps dattente.
Dans le cas dune ligne de mtro, la notion de ligne semble assez vidente. Par contre
pour un rseau ferroviaire, il se peut quune ligne ne soit emprunte quune seule fois
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Modlisation dun rseau multimodal
67
par jour. Les consquences dune telle approche sur la taille du graphe est tudie dans
la section 3.4 page 71.
An de pouvoir modliser le temps de changement entre deux lignes, les nuds sont
ddoubls pour chaque ligne. Le poids sur larc qui relie les deux nuds ddoubls est le
temps ncessaire pour eectuer le changement (par exemple aller dun quai un autre).
Ce poids permet galement de prendre en compte une marge de scurit.
3.2.3 Vlos en libre service et taxis
Ces modes ont la particularit dutiliser le rseau routier traditionnel, mais ne sont acces-
sibles qu des endroits particuliers (borne de vlo, le de taxi).
Un rseau de taxi sera modlis par le rseau routier complet. Il est possible de passer de
la couche taxi la couche piton tout nud. Cependant passer de la couche piton la
couche taxi nest possible quen certains endroits prdnis comme des bornes taxis. Il
serait galement possible de modliser le fait quon peut appeler un taxi nimporte o. Le
temps ncessaire pour passer de la couche piton la couche taxi dpendra de lheure et
la position gographique. Malheureusement pour ce niveau de dtail il serait ncessaire
davoir des statistiques prcises sur le temps dattente dun taxi.
De mme les vlos en libre service seront modliss par une couche correspondant au
rseau cyclable, cest--dire tous les arcs que peuvent emprunter les vlos (le rseau rou-
tier sans les arcs interdits au vlo et avec les voies rserves au vlo). Les changes avec
la couche piton ne se font quau niveau des bornes. Il peut tre tentant de modliser la
couche comme une clique (graphe reliant chaque nud tous les autres). Cette approche
peut se justier dans les trs petits rseaux. Par exemple celui de Perpignan ne comporte
que 15 stations. La couche serait alors compose de 15
2
= 225 arcs. Cependant Paris,
avec plus de mille stations, la couche comporterait plus darcs quen modlisant le rseau
routier.
3.2.4 Co-voiturage et transport la demande
Nous avons dcid de ne pas prendre en compte le co-voiturage et le transport la de-
mande. En eet, nous nous intressons aux itinraires de point point pour une personne
donne. Dans le cas de ces modes de transport, il est ncessaire de combiner les trajets de
plusieurs personnes. La dicult est alors sur le plan de la modlisation des objectifs
optimiser et non pas sur les algorithmes utiliss ou la modlisation des modes.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Nature des fonctions de cot
68
Le lecteur sintressant ces problmatiques pourra lire Cordeau, [76] pour avoir un
tat de lart sur direntes variantes du transport la demande et Baldacci, [77] pour
un exemple doptimisation dans le cas du co-voiturage.
3.3 Nature des fonctions de cot
Nous avons vu dans la section 1.3.4 page 26 quil peut tre possible darriver des che-
mins de moindre cot de longueur innie ds que les cots dpendent du temps. tant
donn que la notion de dominance au sens de Pareto ne dnit pas un ordre total, il est
important de dnir les conditions que doivent remplir les fonctions de cot pour viter
des chemins de longueur innie.
3.3.1 Formalisation des fonctions de cot
En considrant o cots, il existe pour tout nud u autant de cots nots c
i
u
avec i allant
de 1 o. Lensemble des cots associs un nud est le vecteur c
u
R
o
. Par la suite nous
considrons que le premier lment du vecteur de cots est le temps. Cela implique que
le temps est ncessairement calcul.
Pour chaque arc (u, v), il existe o fonctions de cot notes f
i
uv
: R R. Chaque fonction
est fonction du temps. Lensemble des fonctions de cot forme le vecteur f
uv
: R R
o
.
Le cot unnudv enarrivant dunudu se calcule de la manire suivante (onconsidre
que le premier lment des cots est le temps) :
c
v
= c
u
+ f
uv
(c
1
u
)
3.3.2 Caractristiques des fonctions de cot
Il est probable que la majorit des cots soient proportionnels la longueur de larc et
indpendant du temps. En eet les missions de CO
2
dune voiture ne dpendent que de
la distance parcourue, tout comme la mesure du nombre de changements.
La dure de parcours du temps est la fonction la plus variable. Elle modlise le temps
dattente du prochain train ainsi que les variations des dures de parcours sur un axe
routier. Puisque le temps de parcours dun arc est toujours positif moins dtre ca-
pable de remonter dans le temps traverser un arc plus tard fera toujours arriver plus
tard. Il sagit l de la condition FIFO que nous avons tenu maintenir dans notre modle.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Modlisation dun rseau multimodal
69
Cependant, dans le cas de fonctions de cot, la situation est plus complique. En eet,
mme si tous les cots sont positifs, un chemin optimal peut tre de longueur innie.
Nous avons dj soulign que pour quil existe un chemin optimal de longueur nie, une
condition susante est qu partir dun certain rang, le cot ait une borne infrieure Or-
da,Rom[25]. Cette proprit est intressante dans le cas dune optimisation monoobjectif.
Dans le cadre multiobjectif, elle nest plus satisfaisante.
Il est important de faire attention au cas dicile de fonctions de cot continues dcrois-
santes (qui gnre un front de Pareto continu). Ce genre de situation est relativement
frquent : page urbain (vu dans le chapitre prcdent), les places de parking sont sou-
vent gratuites partir dune certaine heure, ou bien le prix dune place de deux trains
eectuant exactement le mme trajet sera dirent selon lheure.
Sachant que nous ne souhaitons pas devoir considrer le temps dattente un nud
comme un paramtre, nous divisons les fonctions de cot en deux ensembles : les fonc-
tions de cot continues dcroissantes et les fonctions dont les cots sont croissants par
morceaux.
Fonctions de cot continues et dcroissantes
Lorsque quil existe un intervalle de temps pendant lequel la fonction de cot est dcrois-
sante et continue, alors on se retrouve dans la situation dcrite avec le page urbain. Il
existe une innit dinstant de passages Pareto-optimal et il existe donc une innit de
chemins Pareto-optimaux.
Nous faisons le choix de refuser ce type de fonctions de cot. Si on accepte une approxi-
mation, il est possible de discrtiser le temps pour se ramener au deuxime cas. Cela va
lencontre de principes que nous nous tions x initialement ( savoir aucune approxi-
mation inutile). Cependant nous pensons que pour une application relle, il nexiste pas
de telle situation. De plus ce type de fonction de cot provoquant un nombre inni de
chemin Pareto-optimaux, le problme est plus profond que la simple modlisation du
graphe.
Fonctions de cot non-dcroissantes par morceaux
En pratique, les fonctions de cot ne sont pratiquement jamais dcroissantes et conti-
nues. En eet, les tarifs de parking ou de pages seront dcoups en tranches horaires.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Nature des fonctions de cot
70
lintrieur de chaque tranche horaire, les cots sont constants ou croissants. Il en est de
mme pour les trains o chaque tranche serait lintervalle entre les deux trains.
3.3.3 Implmentation des fonctions
Les fonctions de cot lis des transports en commun peuvent se modliser comme un
simple tableau de paires (dpart-arrive). En ayant lheure darrive au nudde dpart, il
sut de parcourir la liste pour trouver le prochain dpart et donc lheure darrive la n
de larc. An dacclrer la recherche, une recherche par dichotomie peut tre eectue.
Dans le cas de fonctions de cot arbitraire, il est videmment ncessaire dadapter une
implmentation au cas par cas. La plupart des publications existantes considrent des
fonctions linaires par morceaux. En eet, chaque segment ne ncessite que deux points
pour tre reprsent. De plus cela permet de facilement calculer des combinaisons (par
exemple pour la cration de raccourcis dans les algorithmes bass sur des contractions
prsents dans la section 1.2.3.4). De plus les bornes infrieures et suprieures sont gale-
ment faciles calculer pour une utilisation heuristique. Enn, cette modlisation de cot
arbitraire est notre avis susamment gnrique et convient la majorit des besoins.
Parfois lhoraire de passage nest pas connu avec prcision : seule une frquence est don-
ne (par exemple le mtro de Toulouse circule toutes les 3 minutes en heure de pointe).
Dans ce cas l, il sut de prendre le temps maximal dattente. Il est en eet prfrable de
laisser quelques minutes de marge que prendre le risque de rater une correspondance.
3.3.4 Approche statistique des cots
Dans la ralit, les horaires dautobus ou ltat du trac sur un priphrique lheure de
pointe ne peuvent pas tre connus avec une prcision innie. Il serait donc intressant
de pouvoir prendre en compte ces incertitudes. Plusieurs approches sont possibles. Il est
possible de considrer :
une marge constante de scurit (pour les transports en commun) ;
un temps moyen selon lheure (pour le transport en voiture) ;
plusieurs temps de parcours et calculer plusieurs chemins ;
un objectif supplmentaire modlisant le risque ;
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Modlisation dun rseau multimodal
71
des fonctions stochastiques.
Les trois premiers cas peuvent sadapter facilement (encore faut-il avoir aux accs don-
nes, comme par exemples celles issues des boucles de dtections installes sur les grands
axes !) aumodle propos. Une approche stochastique ncessite une tude bienplus pous-
se qui sort du cadre de cette thse.
3.4 Considrations pratiques
3.4.1 Taille du graphe gnr
Le modle propos a tendance multiplier les nuds et les arcs. Le but de cette section
est dvaluer la taille du rseau gnr an de savoir dans quelle mesure il peut tre mis
en application.
En considrant que le rseau routier rel comporte n nuds et marcs, un graphe mul-
timodal comportant une couche voiture, piton, vlo, vlo en libre service, taxi et trans-
ports en commun, comportera donc 4n nuds et 4m arcs pour modliser les 4 premires
couches. En considrant que toutes les couches sont relies la couche piton par un arc
dans chaque sens, il existe 2 3n arcs de liaison.
En ce qui concerne les transports en commun, lestimation du nombre de nuds et darcs
gnrs est dicile. Dans Paris et sa banlieue, la RATP exploite environ 350 lignes de bus
pour 5 000 arrts
11
. En considrant que chaque ligne est compose dun peu moins de 30
arrts (plusieurs lignes pouvant partager les mmes arrts), le modle propos ncessi-
tera 10 000 nuds et 20 000 arcs pour modliser le rseau de bus de la RATP. En prenant
en compte les autres modes de transport en commun moins denses que le rseau de bus
et sachant que la Paris et sa banlieue reprsentent environ 100 000 nuds, la couche de
transports en commun aura au plus n nuds et il y aura au plus n arcs (arcs de change-
ments de mode compris).
On en dduit donc que le graphe multimodal dune rgion comportant n nuds et m
arcs dans le rseau routier sera modlise par au plus 5n nuds et 4m+ 7n arcs pour les
cinq modes de transport considrs. Sachant quen moyenne sur un rseau routier on a
m 4n, le graphe multimodal comportera donc au plus 23n arcs.
Source : Syndicat des transports dle-de-France, http://www.stif.info
11
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Considrations pratiques
72
3.4.2 Occupation mmoire
En utilisant une liste dadjacence, il est possible de modliser un graphe de n nuds et m
arcs de manire ce quil occupe 8n + 4km octets en mmoire o k est la taille ncessaire
pour stocker toutes les donnes relatives aux fonctions de cot associes chaque arc.
tant donn que la reprsentation en mmoire de chaque fonction de cot dpend for-
tement de leur nature et du nombre dobjectifs considr, estimer k est particulirement
dicile. Cela peut aller de un octet (pour exprimer le temps de parcours en secondes)
facilement un kilo-octet (tous les horaires de passage dun mtro dans la journe
12
).
Sachant quavec quatre modes de transports, nous avons m 23n, on peut majorer la
consommationde mmoire par 234kn 100kn. Dans le cas de Paris et de sa banlieue (n =
100 000), pour k = 1 000, la consommation de mmoire est de 10 Go. Cela est acceptable
pour un serveur haut de gamme actuel. Cependant le passage une plus grande chelle
devient dlicat. La France est en eet reprsente par un million de nuds et lEurope par
un peu moins de vingt millions de nuds. Si linformation moyenne stocker sur chaque
arc est de k = 100, il est possible de reprsenter simultanment toute la France. Il pourrait
tre tentant davoir une approche hirarchique et calculer localement les trajets courte
distance et ignorer certains modes sur de grandes distances en ne gardant par exemple
que les trains longue distance entre deux villes loignes. Pourtant pour aller de Paris
Toulouse il est possible de prendre le TGV la gare de Montparnasse ou le Teoz la gare
dAusterlitz. Lcart de temps entre les deux trajets est de seulement une heure. De ce fait,
selon lattente, les connexions avec les trains de banlieue, prendre le train le plus lent peut
se rvler tre plus rapide. Ce genre de situations seraient diciles prendre en compte
en dcoupant le calcul ditinraire.
Un passage lchelle ncessiterait une tude plus ne de la mmoire ncessaire (en pra-
tique un nombre trs signicatif des cots sont des constantes). De plus les fonctions de
cot les plus lourdes sont celles des transports en commun qui sont nettement moins
denses en province quen rgion Parisienne.
Il pourrait tre intressant dtudier une approche pour ne pas avoir besoin de stocker
tout le graphe multimodal en mmoire. Ces deux points nont cependant pas t tudis
dans le cadre de cette thse.
La forte consommation de mmoire de lapproche multicouche est cependant modrer.
En eet, 8 octets susent pour reprsenter lexistence dun arc. Par contre les fonctions
La ligne circulaire Yamanote de Tokyo est la plus charge au monde avec 3,5 Millions de passagers par jour.
12
Les rames y circulent 21h par jour, avec en pointe 25 rames par heure.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Modlisation dun rseau multimodal
73
de cot associes cet arc peuvent reprsenter plus de 1 000 octets. La consommation de
mmoire sera donc importante mme dans le cadre dune reprsentation multivalue si
londsire avoir des fonctions de cot dpendantes dutemps. Cest donc le fait de prendre
en compte des grilles horaires et non pas le modle multi-couches qui est la cause de la
consommation en mmoire.
3.4.3 Obtention des donnes
Lobtention des donnes a t longtemps une tache dicile. En eet les donnes carto-
graphiques taient vendues par un nombre restreint dditeurs. De plus les donnes sont
souvent trs orients vers le transport routier et posent gnralement peu dinformations
pour un rseau multimodal (prsence de bandes cyclables par exemple
13
.
En ce qui concerne les donnes de transports en commun, celles-ci sont encore consid-
res en France comme ayant une importance stratgique. Il nest donc pas possible de les
rcuprer sans un accord particulirement restrictif.
Linitiative OpenStreetMap
14
consiste crer une base de donnes gographique commu-
nautaire sur unmode de fonctionnement analogue celui de Wikipedia. Les donnes sont
globalement de trs bonne qualit (en particulier sur les grandes villes) et permettent
davoir des informations gnralement absentes des cartes commerciales telles que les
voies rserves aux pitons ou les amnagements cyclables.
Ence qui concerne les donnes des transports encommun, uncertainnombre
15
de compa-
gnies de transports proposent leurs horaires au format GTFS (Google Transit Feed Speci-
cation) dans le but de dvelopper des applications autour de leurs rseaux de transport.
Il est regrettable que notre connaissance aucun rseau en France ne diuse ses
horaires dans un format lectronique libre.
Lunique exception est la ville de Rennes qui a commenc ouvrir ses premires donnes
au printemps 2010 en commenant par ltat des stations de vlo. terme les horaires
des bus et dautres informations concernant lagglomration seront rendues publiques
la n de lt 2010
16
.
Dautant plus quelles voluent trs rapidement. Par exemple la gnralisation en juillet 2010 des contresens
13
cyclables toutes les voix limites 30km/h modie considrablement les itinraires des cyclistes
http://www.openstreetmap.org
14
http://www.gtfs-data-exchange.com/
15
http://data.keolis-rennes.com/
16
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Considrations pratiques
74
Conclusion
Nous avons propos un modle pour reprsenter un rseau multimodal. Ce modle per-
met de facilement prendre en compte un grand nombre de modes de transport (la seule
exception notable tant le covoiturage) et cela de manire trs naturelle. Le graphe ob-
tenu a la particularit de respecter la contrainte FIFO, ce qui permet demployer des
algorithmes traditionnels directement. La contrepartie est un graphe de grande taille.
Lutilisation sur une grande ville ne pose pas de problme (par exemple lchelle de
lle-de-France), mais peut devenir problmatique sur une plus grande chelle si un grand
nombre de modes sont considrs.
Les deux chapitres suivants vont se pencher sur lapplication des algorithmes sur ce mo-
dle. Nous nous nous intressons tout dabord litinraire le plus rapide pour tester une
application directe.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
75
Chapitre 4
Itinraire multimodal le plus rapide
No stop signs, speed limit, Nobodys gonna slow me down
AC/DC, Highway To Hell
Introduction
An de tester une application directe du modle propos dans le chapitre prcdent,
nous proposons de calculer le chemin le plus rapide. Les algorithmes proposs ne sont
pas nouveaux et ont surtout pour but de dmontrer que le modle permet de fonctionner
sur des rgions nettement plus grandes que celles considres jusqu prsent.
Cela permet aussi de mieux comprendre quelle est la consquence dutiliser des fonctions
de cot la place de cots constants et de tester des heuristiques simples telles que celles
utilises dans lalgorithme A*.
4.1 Algorithmes
4.1.1 Dijkstra gnralis
tant donn que le modle du rseau multimodal a t pens an de pouvoir utiliser
directement des algorithmes existants, il nexiste pas dadaptation faire lalgorithme
de Dijkstra dpendant du temps.
4.1.2 Algorithme A*
An damliorer sensiblement les performances, nous avons adapt lalgorithme heuris-
tique A* au cas dpendant du temps. Lheuristique mesurant la distance la cible est
moins triviale dans ce cas. Il sagit en eet destimer au mieux le temps ncessaire pour
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Exprimentations
76
atteindre la destination, sans pour autant le surestimer. Une borne sre est le temps qui
serait ncessaire pour parcourir la distance vol doiseau avec le mode de transport le
plus rapide.
Cependant dans le cas du transport multimodal, lcart entre cette heuristique et la dure
relle risque dtre particulirement importante (trajet en vol doiseauen TGVpar rapport
un trajet avec des dtours pieds). cause de cet cart entre lheuristique et la solution
optimale, il est dicile de savoir si cette heuristique engendrera des gains signicatifs.
4.2 Exprimentations
4.2.1 Implmentation
Le graphe a t modlis grce la bibliothque Boost Graph Library qui implmente ga-
lement les algorithmes de Dijkstra et A*.
Cela montre que, comme nous lavions souhait, il est possible dutiliser directement des
implmentations dalgorithmes existants.
Les calculs ont t eectus sur un simple ordinateur portable ayant un core 2 duo
1,67 Ghz avec 2 Go de mmoire vive ayant sut pour toutes les exprimentations. Un
seul cur a t utilis.
4.2.2 Ensemble de tests
Le premier ensemble de test est bas sur les donnes de la ville de San Francisco. Il com-
prend le rseau routier, le rseau Muni
17
(bus et tramway), le rseau Bart
18
(train de ban-
lieue) et le rseau cyclable.
Le deuxime ensemble de test est bas sur Los Angeles. Le rseau de transports en com-
mun est le rseau Metro
19
.
Ce tableau permet de comparer les deux instances en fonction de la rgion couverte, le
nombre de nuds et darcs sur la couche routire ainsi que le nombre darrts de tous les
transports en commun confondus.
http://www.sfmta.com/
17
http://www.bart.gov/
18
http://www.metro.net/
19
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Itinraire multimodal le plus rapide
77
Ville Surface Population Nuds Arcs Arrts
San Francisco 100km
2
744 000 14 529 43 788 3 659
Los Angeles 3000km
2
5 000 000 135 663 375 382 15 565
4.2.3 Protocole dexprimentation
Voici la liste des points que nous souhaitons comparer :
le surcot li lutilisation de fonctions de cots au lieu de cots constants ;
linuence du nombre de modes de transport sur le temps de calcul ;
lecacit des heuristiques :
arrter la recherche lorsque la destination est atteinte,
algorithme A* ;
limpact de la proximit du nud de dpart et darrive.
Le temps de calcul indiqu est le temps moyen calcul sur 100 calculs ditinraires. Avec
trois modes, le nud de dpart est choisi alatoirement dans la couche vlo et le point
darrive dans la couche piton. Le scnario est donc celui dune personne quittant son
domicile vlo, mais pouvant le dposer (pour prendre les transports en commun par
exemple). Avec deux modes, le nud de dpart et darrive sont dans la couche piton.
An de pouvoir comparer linuence de la distance vol doiseau entre le dpart et
larrive et le temps de calcul, nous regroupons les tests en classes de distances. Le nombre
et la taille des classes varient en fonction de la taille de la ville.
4.2.4 Les paramtres tests
En ce qui concerne la distance entre le dpart et larrive de chaque classe de distance,
pour San Francisco nous avons considr les intervalles [0 ; 2km; 4km; 6km; 8km]. Pour
les classes de Los Angeles, les intervalles sont [0 ; 3km; 5km; 10km; 15km; 20km].
Les modes tests sont :
1 mode : marche ou transport en commun;
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Rsultats exprimentaux
78
2 modes : marche et transport en commun;
3 modes : vlo, marche et transport en commun.
Les algorithmes employs sont :
par dfaut : Dijkstra tronqu ds que le nud darrive est trouv ;
complet : calcule le plus court chemin dun nud vers tous les nuds ;
A*.
4.3 Rsultats exprimentaux
La gure 4.1 et la gure 4.2 reprsentent le temps de calcul selon les direntes classes
de distance et les dirents tests eectus.
4.3.1 Utilisation de fonctions de cot
On constate un lger surcot lorsque des fonctions de cot sont utilises au lieu de cots
constants (Graphes 3 et 4). Cependant dans les deux instances de test avec de la marche,
que ce soit la distance avec un algorithme traditionnel ou la dure en utilisant des fonc-
tions de cots, les temps de calcul sont tellement faibles quil est dicile den tirer des
conclusions.
Lorsque lon sintresse uniquement un itinraire avec des transports en commun dans
le Graphe 1 (donc o tous les cots sont variables), on constate que le temps de calcul est
considrablement plus long, ce qui est prvisible tant donn quil est ncessaire chaque
valuation dun arc de chercher lhoraire du prochain bus dans une table. Dans le cas de
Los Angeles, sur la classe o les dparts et arrives sont le plus espacs (plus de 15 km),
les transports en communs purs ne sont pas pris en compte car il nexiste pas de paires
de points susamment loignes desservies.
Il est beaucoup plus tonnant que lorsque lon ne considre que les transports en com-
muns, le temps de calcul soit plus long que lorsquon lon considre les transports en com-
mun et les autres modes (Graphes 1, 5 et 6). Une explication possible est que du fait de la
topologie des rseaux de transports (par exemple avec des lignes express qui traversent
une grande partie de la ville sans arrt ou encore le besoin de faire des changements de
ligne), pratiquement tout le rseau doit tre parcouru avant darriver destination. On
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Itinraire multimodal le plus rapide
79
Classe de distance (km)
T
e
m
p
s

(
m
s
)
0
20
40
60
80
100
120
140
0
20
40
60
80
100
120
140
0
20
40
60
80
100
120
140
(1) T. en commun
(4) Marche, distance
(7) 3 Modes Complet
A B C D
(2) T. en commun A*
(5) 2 Modes
(8) 3 Modes A*
A B C D
(3) Marche, dure
(6) 3 Modes
A B C D
Figure 4.1 Temps de calcul selon les heuristiques,
les modes de transport et la distance (San Francisco)
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Rsultats exprimentaux
80
Classe de distance (km)
T
e
m
p
s

(
m
s
)
0
100
200
300
400
500
600
0
100
200
300
400
500
600
0
100
200
300
400
500
600
(1) T. en commun
(4) Marche, distance
(7) 3 Modes Complet
3 5 10 15 20
(2) T. en commun A*
(5) 2 Modes
(8) 3 Modes A*
3 5 10 15 20
(3) Marche, dure
(6) 3 Modes
3 5 10 15 20
Figure 4.2 Temps de calcul selon les heuristiques,
les modes de transport et la distance (Los Angeles)
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Itinraire multimodal le plus rapide
81
constate de plus que pour la classe o les distances sont les plus grandes, les temps sont
trs similaires conrmant cette hypothse.
4.3.2 Taille des instances
Il est bien videmment dicile partir de ces deux ensembles de tests de prdire le com-
portement en fonction de la taille du rseau. Dans le pire cas (calcul de Dijkstra complet,
graphe 7), linstance de Los Angeles ncessite cinq fois plus de temps. Le graphe est pra-
tiquement dix fois plus grand (en terme de nuds et darcs), mais ne comporte que cinq
fois plus darrts de transports en commun. Il nest pas tonnant donc que ce soit la taille
du rseau de transports en commun qui dtermine le temps de calcul ncessaire plus que
la taille du rseau routier.
On constate aussi que pour des classes de distance comparables (moins de 10 km), les
deux instances ont des temps de calcul comparables. Une heuristique aussi simple que
couper la recherche ds que le nud darrive est atteint permet donc de calculer eca-
cement une route courte par rapport lensemble du graphe.
Il faut aussi noter que la plus grande instance qui couvre une zone de taille particulire-
ment importante ncessite au pire 600 ms pour calculer le plus court chemin dun seul
nud vers tous les autres. En pratique le temps de calcul est plutt de lordre de 200 ms
pour un trajet entre 15 et 20 km. Cette approche peut donc tre utilise sans le moindre
problme sur une trs grande agglomration.
4.3.3 Algorithme A*
premire vue, il peut sembler tonnant que lalgorithme heuristique A* ne permette
pas de rduire le temps de calcul (Graphes 1 et 2 ou Graphes 6 et 8). Le nombre de nuds
visits est diminu sensiblement, mais le gain de temps li cette rduction est annul
par le temps ncessaire pour valuer lheuristique. Un problme particulier au transport
multimodal est quil est impossible davoir une borne infrieure de bonne qualit si on
dsire rester optimal cause du grand cart de vitesse entre les modes de transport. Cest
pour cela que le nombre de nuds visits ne peut pas tre autant rduit que dans le cas
du plus court chemin statique.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Rsultats exprimentaux
82
Conclusion
Le calcul ditinraire multimodal le plus rapide est trs simple mettre en uvre et per-
met dtre utilis sans problme de performance sur une agglomration aussi grande que
Los Angeles.
Lalgorithme A* se rvle ne pas tre une approche pertinente. En revanche, tronquer la
recherche ds que le nud darrive est visit est une heuristique trs simple qui se rvle
tre trs ecace pour le calcul dun trajet court lintrieur dune grande rgion. Il est
donc possible de considrer des rgions bien plus grandes si dans la majorit des cas, les
itinraires demands sont relativement courts (quelques dizaines de kilomtres).
Cependant, avoir litinraire le plus rapide nest pas toujours le plus pertinent. An de
proposer des itinraires plus intressants lutilisateur, nous nous penchons dans le cha-
pitre suivant sur une approche multiobjectif qui est au cur de cette thse.
Figure 4.3 Exemple de chemin le plus rapide Rennes (marche et vlo libre service)
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Itinraire multimodal le plus rapide
83
Figure 4.4 Exemple de chemin le plus rapide San
Francisco (marche, tramway, marche, bus et marche)
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
84
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
85
Chapitre 5
Meilleur itinraire
multimodal multiobjectif
Il ny a que les imbciles qui ne changent pas davis. Cest mon avis. Et je ne vois pas pourquoi jen changerais
Le Chat, Philippe Geluck
Introduction
Ce chapitre porte sur lextension multiobjectif du calcul ditinraire et constitue donc
le cur de cette thse. Le chapitre 2 a prsent lintrt dune telle approche pour
lutilisateur et nous nous focaliseront sur les algorithmes et les rsultats exprimentaux.
En se basant sur la modlisation du graphe multimodal prsente dans le troisime cha-
pitre, nous proposons plusieurs algorithmes pour calculer le plus court chemin multiob-
jectif. La premire approche est lextension directe de lalgorithme de Martins. Les deux
autres approches sont bases sur lalgorithme de Tsaggouris et sur une forme particulire
de contraction de graphe, les contraction hierarchies.
Nous comparons galement les rsultats selon dirents objectifs considrs an de v-
rier si le comportement est cohrent avec les observations du chapitre 2.
5.1 Algorithme de Martins dpendant du temps
Lalgorithme de Martins est lextension directe de lalgorithme de Dijkstra en multiobjec-
tif. Cest donc la premire approche qui a t teste pour le calcul ditinraire multimodal
multiobjectif. Il tait ncessaire de ladapter an de grer la dpendance au temps.
Nous avons pos les conditions dans le chapitre 2 sur les fonctions de cot pour quil soit
possible de calculer le front de Pareto complet.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Algorithme de Martins dpendant du temps
86
Ladaptation de lalgorithme de Martins la dpendance du temps est simples. Il sut
en eet de modier la manire dont les cots dune nouvelle tiquette sont calculs. Ce-
pendant il est ncessaire de faire attention la nature des fonctions de cot pour tre sur
que lalgorithme nira.
1 FONCTION Martins(source, nuds, arcs, couts)
2 Q := (source, 0, null)
3 P := {}
4 TANT QUE Q est non vide FAIRE
5 (u, c, p) := tiquette de Q minimisant O
6 Q := Q \ {(u, c, p)}
7 P := P {(u, c, p)}
8 POUR TOUT v successeur de u FAIRE
9 POUR TOUT objectif i FAIRE
10 c2
i
:= c
i
+ f
i
uv
(c
0
)
11 Q := Q {(v, c2, u)}
12 LIMINER TIQUETTES DOMINS(Q)
Algorithme 5.1 Algorithme de Martins gnralis (dpendant du temps)
Les lignes 9 et 10 dans lalgorithme 5.1 dnissent la manire de calculer le cot c2 de la
nouvelle tiquette en fonction de linstant c
0
de ltiquette prcdente.
5.1.1 Heuristiques
Il nest pas possible de tronquer la recherche ds quun chemin est trouv comme dans la
recherche un objectif unique. En eet, il se peut quil existe un autre chemin non domin
et il est donc ncessaire de continuer la recherche.
An damliorer les temps de calcul, nous utilisons deux heuristiques simples mettre
en application.
Tester la dominance avec les chemins trouvs
chaque cration dune nouvelle tiquette, on teste si elle est domine par un des che-
mins trouvs. Si cela est le cas, tant donn que tous les cots sont positifs, un trajet pas-
sant par cette tiquette ne pourra pas tre non-domin. Cette tiquette pourra donc tre
directement limine.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Meilleur itinraire multimodal multiobjectif
87
Dominance relche
Nous utilisons lapproche classique de dominance relche pour amliorer encore un peu
les temps de calculs. En liminant au plus tt des solutions similaires, moins dtiquettes
sont gnres et le temps de calcul devrait tre rduit.
Ce test de domination ncessite de xer combien de temps on est prt sacrier pour
conomiser une unit dun autre objectif. Par exemple, pour gagner un changement, on
accepte un trajet dix minutes plus long ou encore pour conomiser dix euros on accepte
de faire un dtour de 20 minutes.
Cette heuristique permet de modliser une certaine indirence de lutilisateur entre
deux choix trs proches.
Lorsque deux lments sont compars avec la dominance relche, il est important de
conserver la solution arrivant le plus tt an de ne rater aucune correspondance. tant
donn que les cots sont croissants en fonction du temps (ou dcroissants en un nombre
nis de points traitables au cas par cas), ne pas garder le cot le plus tardif ne pose pas
de problme doptimalit.
5.1.2 Exprimentations
Instances
Les ensembles de test sur lesquels nous eectuons les tests sont les mmes que celles
prsentes dans le chapitre prcdent (San Francisco et Los Angeles spars en choissant
le dpart et larrive dans des classes de distances allant de 2 km 20 km).
Nous considrons les objectifs suivants :
dure (tps) ;
changements de mode (mode), par exemple passer de la marche au bus ;
changements de ligne (ligne), par exemple changer entre deux lignes de mtro ;
dnivel positif (d+), uniquement vlo ;
Dans toutes les expriences nous considrons trois modes : marche, transport en com-
mun et vlo personnel. Un itinraire commence vlo et se nit pied. Il est possible de
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Algorithme de Martins dpendant du temps
88
dposer le vlo nimporte quelle station de transports en commun, mais il nest plus
possible de le rutiliser par la suite.
Les calculs ont t eectus sur un ordinateur portable ayant un core 2 duo 1,67 Ghz
et 2 Go de mmoire vive. Un seul cur a t utilis. Limplmentation est dtaille dans
lannexe A.
Protocole
Nous comparons direntes combinaisons dobjectifs avec chaque fois les direntes
combinaisons dheuristiques. Nous utilisons galement le mme dcoupage en classes
de distances que dans le chapitre 4. Chaque fois nous eectuons 10 calculs ditinraires
et prsentons les temps moyens.
5.1.3 Rsultats
La gure 5.1 indique le temps de calcul sur la ville de San Francisco tandis que la
gure 5.2 indique le nombre de solutions Pareto optimales trouves. Les gures 5.3 et
5.4 correspondent aux mmes rsultats sur Los Angeles.
Nombre de solutions trouves
Comme nous lavions montr dans le chapitre 2, le fait dutiliser des variables binaires
(nombre de changements) gnre bien moins de solutions Pareto optimales quavec des
fonctions continues (dnivel positif). Ainsi, considrer trois objectifs peut se rvler tre
plus facile que de nen considrer que deux.
On constate quen pratique, considrer uniquement le nombre de changements de mode
ou de lignes avec un dpart ne gnre que trs peu de solutions non domines. En eet,
souvent le trajet avec le moins de changements est galement le plus rapide.
Ecacit des heuristiques
Le temps de calcul est fortement inuenc selon les instances. De lordre de 100 ms pour
des objectifs faciles sur San Francisco, il atteint 14 secondes dans le cas le plus dicile. On
constate que le fait de couper la recherche permet de contenir le temps de calcul lorsque
les nuds de dpart et darrive sont proches.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Meilleur itinraire multimodal multiobjectif
89
Classe de distance
T
e
m
p
s
(
m
s
)
0
500
1000
1500
2000
2500
0
20
40
60
80
100
120
tps d+
tps mode
A B C D
0
2000
4000
6000
8000
10000
12000
0
20
40
60
80
100
120
tps d+ mode ligne
tps mode ligne
A B C D
Heuristique
Complet
Dominance rel.
Figure 5.1 Temps de calcul selon les objectifs et les heuristiques (San Francisco)
La dominance relche permet de signicativement diminuer le temps de calcul (plus
dun facteur 10 sur les cas les plus diciles) et nous permet de rester sous la barre de la
seconde pour le calcul ditinraire sur les instances de San Francisco. Sur les instances de
Los Angeles, le gain est parfois encore plus signicatif (facteur 50).
Ecacit grande chelle
Les instances sur Los Angeles montrent les limites de cette implmentation. En eet, cer-
tains tests ncessitent plusieurs secondes voire ne sont pas calculables dans des temps
raisonnables (plus de trois minutes). De ce fait il nest pas possible davoir le front de Pa-
reto complet dans untemps raisonnable sur les grandes instances et des objectifs diciles.
Cependant, en rduisant le nombre de solutions trouves avec la dominance relche, ou
en ne cherchant que des objectifs faciles, alors le temps de calcul reste acceptable.
Ces limites ne sont pas particulirement gnantes par rapport ce que nous nous tions
xs. En eet lagglomration de Los Angeles fait partie des plus grandes du monde. De
plus les calculs ont t fait sur un ordinateur portable. Laugmentation de la puissance des
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Algorithme de Martins dpendant du temps
90
Classe de distance
S
o
l
u
t
i
o
n
s
0
5
10
15
20
25
0.0
0.2
0.4
0.6
0.8
1.0
tps d+
tps mode
A B C D
0
20
40
60
80
0.0
0.2
0.4
0.6
0.8
1.0
tps d+ mode ligne
tps mode ligne
A B C D
Heuristique
Complet
Dominance rel.
Figure 5.2 Nombre de solutions selon les objectifs et les heuristiques (San Francisco)
ordinateurs combine une implmentation plus optimise devrait permettre de diviser
plusieurs fois le temps de calcul.
5.1.4 Comparaison avec lexistant
Il est dicile de comparer ces rsultat aux autres approches existantes du fait des champs
dapplication trs dirents. Les travaux les plus proches des ntres sont ceux de Fallou
Gueye Gueye, [75] qui optimise le temps de parcours et le nombre de changements sur
Toulouse. La taille des rgions testes ainsi que la taille des zones considres sont d-
tailles dans le tableau 5.1.
Notre approche est clairement plus performante en terme de temps de calcul, malgr un
processeur moins puissant. De plus elle est plus simple mettre en uvre et permet de
prendre en compte plus dobjectifs et pas seulement le temps et le nombre de change-
ments.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Meilleur itinraire multimodal multiobjectif
91
Classe de distance
T
e
m
p
s
(
m
s
)
0
5000
10000
15000
0
200
400
600
800
1000
tps d+
tps mode
A B C D E
0
50000
100000
150000
200000
0
200
400
600
800
1000
1200
tps d+ mode ligne
tps mode ligne
A B C D E
Heuristique
Complet
Dominance rel.
Figure 5.3 Temps de calcul selon les objectifs et les heuristiques (Los Angeles)
5.1.5 Conclusion
Lalgorithme de Martins dpendant du temps a trs facilement t adapt et fonctionne
trs bien sur notre modle. Dans la plupart des cas, le temps de calcul est dans les limites
que nous nous tions xs. Cependant avec certains types dobjectifs le temps de calcul
devient trop long (cela va de pair avec une forte augmentation du nombre dlments
dans le front de Pareto) sur les instances les plus diciles.
Les heuristiques trs simples se sont rvles trs ecaces pour rduire signicativement
le temps de calcul et permettent en pratique de proposer un plus court chemin travers
une agglomration de plusieurs millions dhabitants.
Nous avons cependant essay damliorer encore plus le temps de calcul. Deux approches
ont t testes et seront prsentes dans les deux sections suivantes.
5.2 Algorithme de Tsaggouris
Nous avons prsent lalgorithme de Tsaggouris dans le premier chapitre. Cette approche
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Algorithme de Tsaggouris
92
Classe de distance
S
o
l
u
t
i
o
n
s
0
5
10
15
0.0
0.2
0.4
0.6
0.8
1.0
1.2
1.4
tps d+
tps mode
A B C D E
0
10
20
30
0.0
0.5
1.0
1.5
tps d+ mode ligne
tps mode ligne
A B C D E
Heuristique
Complet
Dominance rel.
Figure 5.4 Nombre de solutions selon les objectifs et les heuristiques (Los Angeles)
Nbre nuds Nbre arcs Frq processeur Tps de calcul
Gueye (Toulouse) 56 774 146 280 2,47 Ghz 1 600 ms
Grbener (San Francisco) 14 529 43 788 1,67 Ghz < 100 ms
Grbener (Los Angeles) 135 663 375 382 1,67 Ghz < 800 ms
Tableau 5.1 Comparaison de nos rsultats avec ceux
de Fallou Gueye (temps et changements de mode)
est trs intressante puisquelle permet de calculer le front de Pareto en temps polynomial
un facteur prs.
5.2.1 Limitations
tant bas sur lalgorithme de Bellman-Ford, il nest pas possible de garantir loptimalit
des solutions trouves avant davoir eectu les n itrations et donc calcul les plus courts
chemins dun nud vers tous les nuds.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Meilleur itinraire multimodal multiobjectif
93
Malgr cette limitation, nous avons tenu tester cette approche pour nous faire une
meilleure ide des performances.
5.2.2 Exprimentations
Nous avons commenc par faire une implmentation statique an den estimer les per-
formances. En eet, nos expriences du chapitre 2 ont montr que ce qui limite les per-
formances de lalgorithme de Martins est avant tout le nombre dlments dans le front
de Pareto. Si le nombre dlments sur le front est faible, alors il se peut que lalgorithme
de Martins soit plus performant car il eectue moins ditrations.
Pour tous les objectifs, nous avons x = 0.1 et eectu 10 calculs en choisissant le point
de dpart alatoirement.
5.2.3 Rsultats
Le graphe de test comporte 26 000 nuds centr sur Paris et les objectifs sont la distance
et une mesure du sentiment de scurit vlo. Ces donnes sont issues des travaux de
Sauvanet,Nron [58].
Le temps de calcul moyen pour lalgorithme de Martins est de 2.53 secondes tandis quil
est de 71.1 secondes pour lalgorithme de Tsaggouris.
Les rsultats sont particulirement mauvais. Cela peut sexpliquer par des calculs plutt
lourds (calculer des logarithmes, troncatures) par rapport lalgorithme de Martins (uni-
quement des additions). De ce fait, la meilleure complexit algorithmique thorique est
largement perdue par le temps ncessaire pour chaque tape lmentaire.
De plus, mme si le nombre dlments sur le front de Pareto peut augmenter de ma-
nire exponentielle, en pratique nous avons vu que ce nombre dpasse rarement la cen-
taine dlments (voir la gure 5.4). tant donn que cest la taille de ce front qui rend
lalgorithme dicile, si le front reste de taille modeste, alors il nexiste pas un rel besoin
davoir un algorithme thoriquement performant.
5.2.4 Conclusion
Ces pitres performances ont t dcevantes mais auraient pu tre prvisibles devant le
grand nombre doprations ncessaires pour excuter lalgorithme. Tolrer une marge
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Contraction hierarchies
94
derreur ne semble pas rduire le front des solutions de manire susamment signica-
tive pour que lalgorithme de Tsaggouris ne soit plus performant que celui de Martins.
Nous avons donc dcid dcarter cet algorithme par la suite. An de rduire les temps
de calcul, nous avons approfondi les algorithmes les plus performants de la recherche
ditinraire mono-objectifs.
5.3 Contraction hierarchies
An damliorer les performances nous nous sommes penchs sur les approches haute
performance an de voir si elles pouvaient tre adaptes au cas multiobjectif.
Parmi les trois grandes approches que nous avions prsentes dans la sous-section 1.2.3.4,
nous avons limin le marquage darcs, ainsi que toutes les approches ncessitant deffec-
tuer un calcul ditinaire lors dune phase de prtraitement. En eet du fait de la topologie
changeante dun rseau de transport en commun entre jour et nuit ainsi quentre la se-
maine et le week-end, mais aussi du fait de loptimisation multiobjectif, il existe un trs
grand nombre ditinraires possibles. Adapter ces mthodes serait donc particulirement
dlicat.
Nous nous sommes intresss lapproche contraction hierarchies de Geisberger, [5]. Il
sagit en eet dune des approches les plus simples et des plus performantes la fois.
Elle prsente le grand avantage de ne pas calculer lavance des itinraires (mme si cela
peut tre eectu des ns doptimisation, cela nentrave pas son fonctionnement). De
plus, les contractions hierarchies avaient dj t adaptes au cas dpendant du temps avec
succs Batz, [17].
5.3.1 Adaptation
Comme pour tester lalgorithme de Tsaggouris, nous avons dans un premier temps test
notre adaptation sur un rseau statique an de tester la facilit dadaptation.
Ajout des arcs de raccourci
tant donn les nuds a, u, b avec un numro dordre arbitraire tels que les arc ((a, u) et
(u, b)) existent et a > u et b > u, un arc (a, b) de raccourci est ajout au graphe. Le cot de ce
nouvel arc est la somme des cots des deux arcs c
ab
= c
au
+c
ub
. Si un arc (a, b) existait dj,
le cot de larc original et du nouvel arc sont compars. Larc ayant un cot domin est
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Meilleur itinraire multimodal multiobjectif
95
supprim. Si les deux arcs ont des cots non comparables, alors le graphe comportera des
arcs parallles. Cest l que se situe la prin
20
cipale dirence avec lalgorithme propos
initialement. Cette tape de contournement du nud u est appel suppression.
An de contracter tout le graphe, les nuds sont supprims selon un ordre arbitraire. Il est
possible darrter la contraction tout moment. Les nuds qui nont pas t supprims
forment ce que la littrature appelle le core. En eet, le nombre de raccourcis rajouts
chaque suppression a tendance augmenter puisque les arcs de raccourcis peuvent leur
tour tre intgrs dans un autre raccourci. Le nombre de raccourcis peut donc devenir trs
important vers la n de la contraction.
Ordre des nuds
Le processus de contraction fonctionne avec nimporte quel ordre. Cependant les auteurs
montrent direntes manires de dterminer lordre, soit pour acclrer le processus de
contraction, soit pour acclrer le calcul ditinraire. Nous avons utilis comme unique
critre la dirence darcs car, daprs la littrature Geisberger, [5], il sagit de loin du
critre le plus ecace. Il sagit de la dirence entre le nombre darcs rajouts et le nombre
darcs adjacents au nud. Plus cette dirence est petite, plus le nud sera trait tt.
Calcul ditinraire
Le calcul ditinraire est bidirectionnel. La cration dtiquettes se fait comme dans lalgo-
rithme de Martins sauf quaulieude considrer tous les successeurs, seuls les arcs dutype
(u, v) avec u < v sont considrs.
Deux ensembles dtiquettes temporaires sont utiliss, un pour chaque direction. Lors-
quune tiquette est cre pour un nud ayant dj t visit dans lautre sens, alors plu-
sieurs itinraires complets sont obtenus. Un test de dominance limine alors les chemins
domins.
Optimalit
Il peut paratre surprenant que le fait de nexplorer que les arcs allant vers des nuds
suprieurs permette davoir les mmes chemins quavec lalgorithme de Martins tradi-
tionnel. Nous montrons lquivalence des deux algorithmes : en ayant un chemin obtenu
par un algorithme, on peut obtenir un chemin de mme cot avec lautre algorithme.
http://tinyurl.com/32ntl9u
20
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Contraction hierarchies
96
tant donn un chemin obtenu avec lapproche bidirectionnelle prsente prcdem-
ment, il est possible de reconstruire le plus court chemin dans le graphe original. Il sut
en eet de drouler chaque arc de raccourci pour obtenir les arcs correspondants au
graphe original. Le cot des chemins sera le mme puisque le cot des raccourcis est gal
la somme des cots des arcs court-circuits.
Soit un chemin obtenu par lalgorithme de Martins traditionnel de la forme u
1
, u
2
, . . . , u
k
,
soit M le plus grand nud de ce chemin selon lordre dni pour la contraction, chaque
triplet de nuds conscutifs a, u, b tel que a > u et b > u situ entre le nud de dpart
et M est remplac par larc de raccourci (a, b) qui existe puisque cest ainsi qua t dni
la contraction. En appliquant cette procdure itrativement nous obtenons un itinraire
du nud de dpart M o tous les nuds sont dans lordre croissant. Cela correspond
litinraire trouv par la premire recherche. La mme procdure est applique entre Met
le nud de destination an de navoir que des arcs dcroissants. Ce segment correspond
la recherche inverse.
Il y a donc une quivalence entre les itinraires trouvs avec chacun des deux algorithmes.
5.3.2 Expriences
Instance de test
Nous avons compar notre version multiobjectif des contraction hierarchies avec notre im-
plmentation de lalgorithme de Martins.
Le graphe est le mme que celui utilis pour tester lalgorithme de Tsaggouris : centr sur
Paris avec 26 000 nuds et les objectifs sont la distance et une mesure de sentiment de
scurit vlo.
Nous avons eectu 100 calculs alatoires en comparant systmatiquement les rsul-
tats obtenus pour sassurer de labsence de bogues dans limplmentation, ainsi que
le nombre dtiquettes gnres. En eet ce nombre permet davoir une estimation du
nombre doprations eectues. Une autre mesure moins habituelle pour estimer la per-
formance dun algorithme est le nombre de comparaisons (ou tests de domination) qui
reprsentent une consommation trs importante du temps de calcul dans loptimisation
multiobjectif (environ 90%du temps est pass eectuer des tests de domination sur nos
implmentations). Le temps indiqu est le temps moyen sur les 100 calculs.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Meilleur itinraire multimodal multiobjectif
97
Rsultats
Le nombre moyen ditinraires trouvs est 36,8. Le temps de calcul moyen , le nombre
moyen dtiquettes gnres ainsi que le nombre de comparaisons en moyenne sont pr-
sents dans le tableau 5.2.
Algorithme Temps moyen tiquettes gnres Comparaisons
Martins 821 ms 284 309 10 534 897
Contraction hierarchies 1 293 ms 16 608 14 427 573
Tableau 5.2 Performances des contractions hierarchies multiobjectif
On constate que les temps de calculs sont du mme ordre de grandeur dans les deux cas,
mme si lalgorithme de Martins est lgrement plus rapide. En ce qui concerne le nombre
dtiquettes cres, lapproche base sur les contractions est nettement plus performante
puisquil existe en moyenne un facteur 17.
On constate que le nombre de tests de domination semble fortement corrl au temps de
calcul. Lapproche contraction hierarchies ncessite un nombre de tests bien plus impor-
tant cause de la recherche bidirectionnelle an de combiner les deux bouts de chemins
et tester la domination. Ainsi si les deux recherches trouvent chacune n chemins pour
arriver au nud, n
2
chemins seront gnrs, ce qui ncessitera (n
2
)
2
comparaison pour
savoir quels sont les chemins domins. Pour n = 5, il y aura donc 625 tests de domination.
5.3.3 Conclusion sur les contractions hierarchies
Les rsultats sont tonnants dans la mesure o nous devons tudier signicativement
moins dtiquettes avec cette approche quavec lalgorithme de Martins. Cependant en
temps, les deux approches sont trs comparables. Les bonnes performances en termes
dtiquettes sont annules par un nombre de tests de domination plus important.
Nous pensons que cette approche mrite dtre tudie de manire plus approfondies
an, nous lesprons, de pouvoir eectuer moins de comparaisons et donc davoir de
meilleurs temps de calcul.
Conclusion
Nous avons montr que la simple extension de lalgorithme de Dijkstra avec de simples
heuristiques permet dobtenir des rsultats trs satisfaisants. Nous avons t dus par les
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Contraction hierarchies
98
performances de lalgorithme de Tsaggouris. En ce qui concerne les contraction hierarchies,
les performances en terme de nuds visits sont excellentes alors quen terme de temps
de calcul elles sont du mme ordre quen utilisant lalgorithme de Martins. Cette voie
est donc un peu dcevante, mais pourrait se rvler plus performante si le problme du
nombre de comparaisons pouvait tre rsolu.
Comme nous lavions suppos dans le chapitre 2, lorsque les objectifs sont trs variables
(missions de CO
2
ou dnivel positif) alors le front de Pareto gnr est bien plus grand
quavec des objectifs souvent nuls (nombre de changements), rendant le calcul bien plus
long.
Quand au temps de calcul il reste de lordre de la seconde sur les plus grandes instances
correspondant donc aux objectifs viss.
Dans certains cas, il est possible quun nombre bien trop grand de solutions soient trou-
ves. Ces solutions tant trop semblables, il nest souvent pas pertinent de toutes les pr-
senter. Le chapitre suivant propose direntes approches an de rduire le nombre de
solutions proposes.
Exemple de chemins non comparables
Les gures suivantes montrent quatre alternatives de routes entre les mmes points de
dpart et darrive. Trois modes sont considrs : piton, le rseau Muni (bus et tramway)
et le rseau Bart (trains pri-urbains). Les objectifs sont le temps, le nombre de change-
ment de ligne lintrieur dun mme rseau et les changements de mode (de piton vers
les transports en commun ou dun rseau de transport en commun lautre). t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Meilleur itinraire multimodal multiobjectif
99
Figure 5.5 Exemple de chemin San Francisco (54
min, 2 changements de mode, 0 changement de ligne)
Figure 5.6 Exemple de chemin San Francisco (67
min, 1 changement de mode, 1 changement de ligne)
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Contraction hierarchies
100
Figure 5.7 Exemple de chemin San Francisco (83
min, 1 changement de mode, 0 changement de ligne)
Figure 5.8 Exemple de chemin San Francisco (83
min, 0 changement de mode, 0 changement de ligne)
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
101
Chapitre 6
Slection dun sous-ensemble
de solutions de qualit
Ne quid nimis Point trop nen faut
Publius Terentius Afer, Thrence
Le chapitre prcdent a montr quil est possible dobtenir des solutions Pareto optimales
pour des calculs ditinraires combinant plusieurs modes de transport. Cependant, pour
certains objectifs et suivant la congurationdes rseaux des villes, il peut y avoir plusieurs
dizaines de solutions quivalentes. Or, si avoir plusieurs solutions est un gain signica-
tif pour lutilisateur nal, lui en prsenter des dizaines trop similaires va le dcourager
dutiliser le calculateur ditinraire.
Il est donc indispensable de ne proposer quun nombre plus restreint de solutions et donc
de ne garder que les plus pertinentes. Cependant, les approches varient galement selon
la personne qui dnit les critres pour restreindre les choix. Un expert agira en amont en
prjugeant des prfrences de lutilisateur. Il pourra mme en imposer certaines telles que
lobligation de laisser la voiture dans un parking relais plutt que de donner la possibilit
de la laisser nimporte quel endroit de la ville ande favoriser les transports encommun.
En ce qui concerne le dcideur (ou utilisateur du systme), nous souhaitons quil nait que
trs peu de paramtres rgler pour ne pas le dcourager dutiliser le systme.
Nous proposons dans ce chapitre trois approches an de rduire le nombre de solutions
trouves. Elles se direncient par le moment o elles sappliquent par rapport la rso-
lution du problme : au cours de la modlisation, au cours de la rsolution ou encore a
posteriori.
6.1 Action lors de la modlisation
Lors de la modlisation des direntes couches des modes de transport, il faut galement
dnir quelles sont les transitions qui sont considres comme acceptables.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Action lors de la modlisation
102
Par exemple, il est tentant de mettre une transition de la couche vlo vers la couche piton
tous les nuds pour modliser le fait quil est possible de laisser son vlo tout endroit
de la ville. Cependant, dans le cas dune longue cte, le systme proposera de laisser le
vlo tous les nuds de la cte an de rduire le dnivel positif.
Or, en pratique, un utilisateur ne change de mode de transport que si cela lui permet de
gagner du temps, ou sil sagit dun autre mode que la marche (pour prendre le mtro par
exemple).
De ce fait, en slectionnant bien lors de la modlisation les nuds o il est possible de
changer de mode de transport, moins de solutions seront proposes lutilisateur, mais
celles-ci seront probablement plus en adquation avec ses souhaits.
6.1.1 Exprimentation
An de mettre en vidence ces gains, nous avons considr le graphe de San Francisco
avec deux objectifs (le temps et le dnivel positif) et deux modes de transport (marche
et vlo). Lutilisateur part vlo, mais arrive pied.
Nous faisons varier le nombre de nuds o lutilisateur peut laisser son vlo. Soit tous
les nuds, soit un nud sur 10, un nud sur 100 et enn un nuds sur 1 000. Ces nuds
sont tirs alatoirement.
De plus nous gardons le mme dcoupage en classes de distance que dans les chapitres
4 et 5.
6.1.2 Rsultats
Les rsultats sont prsents dans la gure 6.1. On constate trs clairement que moins il y
a de transitions, moins il y a de solutions. Les eets de la modlisation sont dautant plus
nets pour de grandes distances. Ainsi le nombre de solutions trouves peut tre divis
par deux dans le meilleur des cas (classe 6 8 km).
Le lecteur attentif sera peut-tre tonn que nous trouvions plus de solutions quivalentes
avec deux modes (vlo personnel et marche), quavec les trois modes considrs dans le
chapitre prcdent (vlo personnel, marche et transports en commun). Cela sexplique
par le fait que prendre les transports en commun domine gnralement le vlo en temps
et dnivel positif. Dans le cas prsent, la marche est toujours meilleure que le vlo en
terme de dnivel positif et toujours plus mauvaise en temps de trajet.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Slection dun sous-ensemble de solutions de qualit
103
Frquence des transitions
N
o
m
b
r
e

d
e

s
o
l
u
t
i
o
n
s
0
50
100
150
0
50
100
150
0 2 km
4 6 km
1/1 1/10 1/100 1/1000
2 4 km
6 8 km
1/1 1/10 1/100 1/1000
Figure 6.1 Nombre de solution en fonction de la
distance et de la frquence de transition entre modes
6.1.3 Conclusion
Les gains possibles par cette approche sont limits, mais elle prsente cependant lavan-
tage de permettre lexpert de dnir les transitions quil considre comme intressantes.
Symtriquement, cela pourrait exclure une possibilit quaurait prfr lutilisateur.
Cependant, proposer 70 itinraires un utilisateur alors que seulement deux modes et
deux objectifs sont considrs nest pas intressant. Il est donc ncessaire de sintresser
dautres approches.
6.2 Action pendant la recherche ditinraire : dominance
relche
An damliorer les performances de lalgorithme de Martins, nous avons utilise la do-
minance relche. Cette approche consiste considrer quune premire solution domine
une autre mme si elles sont quivalentes selon une mesure totalement arbitraire. Par
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Action pendant la recherche ditinraire : dominance relche
104
exemple un itinraire avec 3 changements et 25 minutes de trajets est domin par un iti-
nraire comportant 2 changements et 27 minutes de trajet. En eet on peut considrer
queectuer un changement de plus pour uniquement gagner deux minutes nest pas
intressant.
La dominance relche a t particulirement ecace pour amliorer signicativement
les performances. Elle permet galement de rduire au cours de la rsolution le nombre
de solutions trouves.
6.2.1 Exprimentation et rsultats
Classe de distance
S
o
l
u
t
i
o
n
s
0
5
10
15
0.0
0.2
0.4
0.6
0.8
1.0
1.2
1.4
tps d+
tps mode
A B C D E
0
10
20
30
0.0
0.5
1.0
1.5
tps d+ mode ligne
tps mode ligne
A B C D E
Heuristique
Complet
Dominance rel.
Figure 6.2 Nombre de solutions selon les objectifs et les heuristiques (Los Angeles)
Nous prsentons dans la gure 6.2 les mmes rsultats que dans le chapitre prcdent
appliqus la ville de Los Angeles pour dmontrer lecacit de la dominance relche
pour rduire le nombre de solutions trouves.
On constate ainsi que lorsquil existe de nombreuses solutions, alors elles peuvent tre
divises par trois (avec quatre objectifs). Par contre lorsque peu de solutions existent, la
rduction est moins agrante.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Slection dun sous-ensemble de solutions de qualit
105
6.2.2 Application
Cette approche peut tre applique au niveau du dcideur qui choisira les paramtres
qui permettent de trancher si un itinraire est domin, ou alors au niveau de lutilisateur
qui indique le temps quil serait prt sacrier pour conomiser un changement, un kilo
de CO
2
, etc. Il est cependant important de se mer de trop vouloir limiter les solutions
au risque de se retrouver avec trop peu de solutions pour quune approche multiobjectif
en vaille la peine. Lintrt dune approche multiobjectif vise sloigner justement dun
jugement prcoce de ce que lon considre comme acceptable.
De plus une contrainte dapplication assez forte est quentre deux solutions, il est nces-
saire de toujours garder celle qui arrive le plus tt pour des contraintes doptimalit.
6.2.3 Conclusion
La dominance relche est une approche tentante pour sa simplicit de modlisation de
cas considrs comme aberrants par lexpert ou lutilisateur. De plus elle permet de si-
gnicativement rduire le temps de calcul.
Cependant, il peut malgr tout rester plusieurs dizaines de solutions. Il est alors possible
de relcher encore plus la dominance et risquer de ne plus avoir quune seule solution
pour des calculs plus simples.
Il serait donc intressant de pouvoir slectionner un nombre arbitraire de solutions quelle
que soit la taille du front de Pareto.
6.3 Action a posteriori : classication des solutions
Nous souhaitons ne retenir que quelques solutions reprsentatives de lensemble du front
de Pareto. Nous nous sommes donc intresss aux outils statistiques de classication.
Lide est de regrouper les solutions dans k classes de rsultats et de ne prsenter quune
seule solution de chaque classe.
Nous avons donc appliqu une technique de classication bien connue, les k-means (ou k-
moyennes) MacQueen, [78]. En dnissant lavance le nombre de classes souhaites, cette
approche regroupe chaque lment dans une classe de manire minimiser la distance
quadratique la solution moyenne de la classe. Nous avons choisi cette approche parce
quelle permet de dnir lavance le nombre de classes que nous souhaitons. De plus
elle est simple mettre en uvre et ncessite peu de calculs.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Action a posteriori : classication des solutions
106
6.3.1 Procdure
tant donn lensemble du front de Pareto, les objectifs sont normaliss et lalgorithme
des k-means est appliqu. La normalisation est ncessaire pour que la mesure de distance
ait un sens. En eet, si le nombre de changements ne dpasse pas la demi-douzaine, le
temps de trajet peut facilement dpasser mille secondes. De ce fait le nombre de chan-
gements serait considr comme ngligeable par rapport au temps de parcours malgr
limportance de ce paramtre.
Pour chaque classe on slectionne la solution la plus proche du barycentre.
Cette approche tant trs classique, nous avons utilis une implmentation existante. Le
temps de calcul avec une centaine dlments est ngligeable par rapport au temps de
calcul de litinraire proprement parler et nest pas pnalisant.
6.3.2 Exemple
An dillustrer cette approche, nous avons choisi un itinraire comportant de nombreuses
solutions quivalentes. Les objectifs sont le temps, le dnivel positif et le nombre de chan-
gements de modes. Les modes de transports pris en compte sont le vlo, les transports en
commun et la marche.
Les gures 6.3 et 6.4 montrent les fronts de Pareto et la classication en respectivement
trois et cinq catgories. Chaque courbe correspond au front de Pareto obtenu en ne gar-
dant que les solutions avec 1, 2 et 3 changements de mode.
6.3.3 Ncessit de la normalisation
La gure 6.5 reprsente les solutions obtenues avec trois catgories sans avoir appliqu
la normalisation. Par rapport au rsultat prsent dans la gure 6.3, on constate que la
classication nest pas la mme. En eet, sans la normalisation le nombre de changements
est considr comme un critre ne prsentant que peu de variation par rapport au temps
de parcours et au dnivel alors que cela a une trs grande importance pour lutilisateur.
Cest pour cela que lon constate que trois solutions avec deux changements sont dans la
mme catgorie que sil ny a quun seul changement dans la gure 6.5.
6.3.4 Bilan des k-means
Lutilisation des k-means nous permet de trouver un solution reprsentative pour chaque
classe. Le nombre de classes peut tre librement dni par lutilisateur. Il sagit aussi
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Slection dun sous-ensemble de solutions de qualit
107
Temps de parcours(s)
D

n
i
v
e
l


p
o
s
i
t
i
f
50
100
150
200
250
300
350
1 changement
3200 3500 3800
2 changements
3200 3500 3800
3 changements
3200 3500 3800
Catgorie
1
2
3
Figure 6.3 Classication des rsultats, 3 catgories, avec normalisation
Temps de parcours (s)
D

n
i
v
e
l


p
o
s
i
t
i
f
50
100
150
200
250
300
350
1 changement
3200 3500 3800
2 changements
3200 3500 3800
3 changements
3200 3500 3800
Catgorie
1
2
3
4
5
Figure 6.4 Classication des rsultats, 5 catgories, avec normalisation
bien dun avantage que dun dfaut. En eet, il se peut que dans certains cas, il existe un
nombre de classes qui serait plus naturel quun nombre arbitraire. Pour traiter ce genre de
cas, il pourrait tre intressant dtudier galement des algorithmes de partitionnement
qui ne ncessitent pas de dnir lavance un nombre de classes.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Action a posteriori : classication des solutions
108
Temps de parcours(s)
D

n
i
v
e
l


p
o
s
i
t
i
f
50
100
150
200
250
300
350
1 changement
3200 3500 3800
2 changements
3200 3500 3800
3 changements
3200 3500 3800
Catgorie
1
2
3
Figure 6.5 Classication des rsultats, 3 catgories sans normalisation
Conclusion
Nous avons prsent trois approches pour rduire le nombre de solutions prsenter
lutilisateur. Ces approches sont complmentaires et permettent aussi biendintervenir en
amont du calcul ditinraire quen aval. Deux des trois approches peuvent galement tre
paramtres par lutilisateur qui souhaiterait avoir une gestion plus ne des paramtres
retournes.
Bien videmment les paramtrages et les approches utilises dpendront de lutilisation
souhaite.
ce point nous avons pos les bases pour construire un calculateur ditinraire multimo-
dal et multiobjectif depuis la modlisation jusquau traitement des donnes. Le prochain
chapitre prsente quelques variantes pouvant tre appliques directement notre modle
et les algorithmes proposs.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
109
Chapitre 7
Variantes simples
Would you tell me, please, which way I ought to go from here ?
That depends a good deal on where you want to get to, said the Cat.
I dont much care where said Alice.
Then it doesnt matter which way you go, said the Cat
Lewis Carroll, Alices Adventures in Wonderland
Comme dans toute proposition de modles et dalgorithmes, le lecteur sera probablement
intress par les extensions possibles pour des applications similaires. Malheureusement
ou heureusement il y aura toujours plus dides et il nest donc pas possible de
toutes les mettre en uvre.
Ce chapitre prsente des dtails de lalgorithme que nous avons sciemment laiss de c-
t par simplicit. Nous proposons galement quelques adaptations qui nous semblent
intressantes et qui ne devraient pas poser de problme particulier de mise en uvre.
7.1 Optimiser le temps
Depuis le dbut nous avons considr que lutilisateur part un instant t
0
. De ce fait,
lutilisateur peut se retrouver attendre 20 minutes un arrt de bus (par la suite le nud
u). Sil tait parti 20 minutes plus tard, il serait arriv exactement au mme moment.
Pour corriger cela, il sut pour chaque itinraire de remonter le temps (voir la section
daprs) partir du nud u. On obtient ainsi lheure de dpart la plus tardive possible.
Il nest pas possible de simplement soustraire le temps dattente au nud u puisque le
temps de trajet peut varier selon linstant o larc est parcouru (par exemple en se retrou-
vant dans des embouteillages).
Cette approche reste malgr tout optimale, car la contrainte FIFOnous garantit que partir
plus tard nous fera forcment arriver plus tard. De plus les cots sont galement crois-
sants avec le temps (sauf en un nombre nis de points traiter au cas par cas).
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Heure darrive prcise
110
7.2 Heure darrive prcise
Le systme que nous avons propos ncessite la dnition dune heure de dpart t
0
par
lutilisateur. Or celui-ci peut vouloir xer une heure darrive (par exemple pour arriver
lheure un rendez-vous).
7.2.1 Inversion du graphe
Ladaptation consiste inverser le sens des arcs. Tout arc (u, v) sera remplac par un arc
(v, u) ayant le mme cot. Pour les arcs associs des transports en commun qui suivent
une grille horaire, la transformation est moins triviale. En eet, il est impossible dutiliser
des fonctions de cot dcroissantes. Il est donc ncessaire de modier la manire dont est
calcul le temps.
7.2.2 Modication du calcul du temps
Dans les chapitres prcdents, par convention la premire valeur c
0
du vecteur de cots
c indique un instant. Nous modions cela en mmorisant le temps de parcours depuis le
dbut. Linstant est donc dsormais t
0
c
0
, soit lheure darrive souhaite moins le temps
pour arriver au nud.
Les fonctions de cots doivent donc retourner le temps de parcours et le temps dattente
larrive pour arriver linstant t
0
c
0
. Dans le cas de cots constants, il sagit tout
simplement de la dure de parcours. Dans le cas dun horaire, il faut rechercher dans le
tableau dhoraires le dernier bus ou train permettant dtre prsent t
0
c
0
.
Soit un trajet en train du nud u au nud v avec un train partant 8h et 8h15. Le temps
de trajet est de 30min. Le trajet du nud v la destination t se fait pied et ncessite 20
minutes. On souhaite arriver t 9h00. On a donc t
0
= t
t
= 9h00 et c
0
(t) = 0. En v on a
c
0
(v) = 20min et donc t
v
= t
t
c
0
(v) = 8h40. Il sera donc ncessaire de prendre le train de
8h pour arriver t 9h00.
7.2.3 Implmentation
Dun point de vue implmentation, il sut de rednir les fonctions de mise jour de c
0
lors de la cration dune nouvelle tiquette et obtenir le temps de parcours dans le cadre
dhoraires.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Variantes simples
111
En pratique il ny a pas besoin de modier la structure de donnes en elle-mme, car la
structure de graphe de Boost permet de parcourir tous les arcs dans le sens inverse.
7.3 Dparts dcals
Nous proposons lutilisateur plusieurs solutions quivalentes tant donn une heure de
dpart xe. Si lutilisateur a des horaires plus souples, il peut souhaiter avoir plusieurs
propositions dcales dans le temps (comme cela est le cas sur la majorit des calculateurs
existants).
Le problme rside dans limpossibilit de savoir au nud de dpart les dirents modes
de transport utilisant une grille horaire pendant un certain intervalle.
7.3.1 Lancer plusieurs calculs ditinraires
Lapproche la plus immdiate est de faire plusieurs calculs en dcalant le temps initial
chaque fois de 10 minutes par exemple.
Avec loptimisation du temps de dpart, cette approche risque de renvoyer deux fois le
mme itinraire. Il est donc ncessaire deectuer untri dans les solutions retournes pour
viter ce cas. De plus avec cette approche il sera possible de proposer deux itinraires
dont lun domine fortement lautre, mais dont linstant de dpart est dcal et peut donc
malgr tout prsenter un intrt lutilisateur.
7.3.2 Utiliser plus dtiquettes de dpart
Une autre possibilit est de peupler la liste des tiquettes temporaires du nud de dpart
avec plusieurs tiquettes correspondant des dcalages dans le temps. Il est alors indis-
pensable lors des tests de domination de comparer le temps parcouru et non pas linstant
darrive.
La contrepartie de cette approche est que si les itinraires sont les mmes (par exemple
avec un bus partant toutes les 10 minutes tous les objectifs tant constants), alors les tests
de domination limineront toutes les solutions lexception dune seule.
7.3.3 Crer plusieurs tiquettes pour les grilles horaires
Une approche plus complique mettre en uvre consisterait sintresser plusieurs
dparts possibles depuis nud et donc gnrer plusieurs tiquettes tant donn un nud
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Dparts et arrives multiples
112
et un successeur. Cependant, cela ne doit tre eectu que pour le premier arc rgi par
une grille horaire. De ce fait, limplmentation deviendra plus complique.
7.4 Dparts et arrives multiples
Lutilisateur peut vouloir considrer plusieurs points de dpart et darrive (ou dirents
modes pour comparer si partir pied, vlo ou en voiture est plus intressant). Pour cela
il sut de crer une tiquette initiale pour chaque nud de dpart souhait. Lalgorithme
de Martins tudiera par lui-mme les direntes possibilits en calculant les itinraires
depuis tous ces nuds.
des ns de meilleures performances, lheuristique qui consiste tester la domination
par une tiquette du nud darrive doit tre adapte pour prendre en compte tous les
nuds darrive.
Cette approche ne garde que les itinraires Pareto optimaux et ne calcule pas tous les
itinraires entre toutes les paires de nuds.
7.5 Paralllisation
Les temps de calcul que nous nous tions xs est acceptable pour une personne. Cepen-
dant, si le systme est mis en place sur un serveur web qui connat un certain succs il
sera ncessaire de rchir la gestion de plusieurs calculs simultans an de maintenir
un temps de calcul acceptable.
tant donn de la gnralisation des processeurs plusieurs curs, il serait dommage de
ne pas pouvoir en proter. Cependant cela ncessite de mettre en place une paralllisation
de lalgorithme.
7.5.1 Parallliser lalgorithme
Il pourrait tre tentant de parallliser lalgorithme en lui-mme. En eet, il serait possible
dextraire plusieurs tiquettes de la le de priorit et de les traiter en parallle. Le gain ne
sera cependant probablement pas linaire au nombre de curs travaillant en parallle.
En eet nous risquons dexplorer les successeurs dune tiquette qui sera domine par la
suite rendant lexploration superue. De plus laccs aux direntes structures de don-
nes (le de priorit et ensembles temporaires) doivent tre protg pour viter quelles
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
Variantes simples
113
soient modies simultanment. Cela induira une plus grande complexit du code, des
ralentissements possibles et un risque accru de bogue.
7.5.2 Parallliser les requtes
Parallliser lalgorithme permettrait damliorer les performances de lalgorithme au d-
triment dune plus grande complexit. Cependant individuellement, les temps de cal-
cul sont acceptables et ce qui nous intresse est plutt dtre capable de servir un grand
nombre de demandes ditinraires simultanment.
Limplmentationspare clairement deux structures de donnes : dunct le graphe avec
les fonctions de cots qui ne changent pas et de lautre ct les donnes spciques un
calcul ditinraire. Il serait donc la fois plus simple et plus performant de ne pas modier
lalgorithme mais de se contenter dexcuter plusieurs recherches en parallle. Laccs au
graphe sera partag par toutes les recherches, mais comme il sagit de lecture seule, il ny
aucune ncessit de protger laccs aux donnes.
7.6 Isochrones
La version originale de lalgorithme de Martins calcule des itinraires dun nud vers
tous les nuds. De ce fait, en supprimant le test de domination par une tiquette au nud
darrive, on peut construire des isochrones.
On peut ainsi dterminer lensemble des points accessibles en moins de 30minutes, moins
de 2 changements etc. Une application concrte peut tre pour choisir un logement en
fonction du lieu de travail.
Conclusion
Nous avons prsent quelques variantes qui peuvent tre facilement appliques. Cela
conrme la gnricit de notre approche. Celle-ci peut donc tre applique de nouveaux
besoins.
Sans nul doute, il existe dautres variantes faciles mettre en place, mais galement des
questions plus diciles et il ne serait pas possible de tout traiter. Nous concluons donc
cette thse en laissons ces questions ouvertes pour quelles soient traites par dautres
personnes.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
114
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
115
Conclusion
et
perspectives
Conclusion
Nous avons soulign en introduction de cette thse le besoin urgent dun report de la
voiture comme mode de transport vers dautres modes pour lutter contre les missions
de gaz eet de serre. Nous pensons quune partie de ces changements de comporte-
ments pourra se faire grace une meilleure information sur les interconnexions entre
dirents modes de transport. Ma contribution au travers de cette thse a t de prsen-
ter un modle et des algorithmes permettant de prsenter lutilisateurs plusieurs itin-
raires quivalents entre deux points. Ainsi lutilisateur pourra comparer objectivement
les alternatives et envisager dabandonner la voiture sur certains trajets.
Ltat de lart a permis de montrer la recherche trs active dans le domaine des calculs
ditinraires depuis plusieurs dcennies y compris ces dernires annes avec de nouvelles
approches trs haute performance. Cependant aucune approche ne satisfaisait nos be-
soins de gnricit, performance et simplicit pour un calcul ditinraire multimodal et
multiobjectif.
Une premire tude a pos les conditions que doivent remplir les fonctions de cots an
que des solutions exploitables existent (un nombre dnombrable de chemins de longueur
nie). Ensuite nous avons caractris exprimentalement le comportement de dirents
types de cot sur des graphes articiels et issus de rseaux routiers rels.
Par la suite nous avons propos un modle qui peut sembler trivial a posteriori mais qui
prsente des caractristiques trs intressantes. En eet, il est la fois trs simple com-
prendre, nimpose pratiquement aucune restriction sur les dplacements accepts et per-
met dutiliser des algorithmes traditionnels. Ainsi il a t possible dutiliser une impl-
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
116
mentation existante de lalgorithme de Dijkstra pour le calcul ditinraire multimodal le
plus rapide.
An de pouvoir optimiser simultanment plusieurs objectifs, nous avons soit adapt des
algorithmes multiobjectifs an de prendre en compte la dpendance au temps (algo-
rithmes de Martins et de Tsaggouris) ou adapt un algorithme haute performance au
cas multiobjectif (contraction hierarchies). La comparaison de ces direntes approches a
montr que lalgorithme de Martins prsente les meilleures performances (en plus dtre
lapproche la plus simple). Par rapport aux rares travaux comparables auquels nous avons
pu avoir accs, nous obtenons de meilleures performances avec une approche plus simple
et plus extensible.
Lapplication sur des instances relles a montr quentre deux point il pouvait y avoir
plus dune centaine de solutions. Ce nombre de solutions tant bien trop important pour
lutilisateur, nous proposons plusieurs manires de rduire le nombre de solutions pr-
sentes lutilisateur. La slection de quelques itinraires signicatifs peut se faire au
niveau de la modlisation, en dnissant des critres pour considrer que deux chemins
sont trop similaires ou encore en utilisant des outils statistiques de classication.
Enn, nous avons prsent quelques pistes pour implmenter assez simplement plusieurs
variantes.
Nous avons donc atteint les objectifs que nous nous tions xs en dbut de thse, sa-
voir une approche simple, facilement extensible avec des performances de lordre de la
seconde lchelle dune grande agglomration telle que Los Angeles.
Malgr ces rsultats trs satisfaisants, la problmatique est loin dtre close et de nom-
breuses questions restent ouvertes.
Perspectives
Amliorer les performances
La perspective la plus immdiate est lamlioration des performances dans loptique de
passage lchelle. En eet, en routage mono-objectif, pour minimiser le temps de par-
cours, il est possible de calculer un itinraire travers la plante entire en environ une
milliseconde. Nous sommes encore trs loin davoir de telles performances. Parmi les
pistes tudier, il y a les recherches bidirectionnelles, les approches hirarchiques, mais
aussi le calcul de bornes pour approcher les itinraires.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
117
Plus simplement, une amlioration de limplmentation pourrait galement amliorer
dans une certaine mesure les temps de calcul.
Tournes
Les tournes au sens large ont de nombreuses applications et mritent dtre tudies
dans une optique multimodale et multiobjectif. Une application immdiate des tournes
consiste proposer une boucle ferme de points visiter (un touriste dsirant visiter
dirents muses ou une personne devant eectuer direntes tches rparties sur la
ville).
Les transports la demande et le covoiturage se dveloppent ces dernires annes. Ce-
pendant ces modes de transport ne sont pas intgrs dans les calculateurs existants et
manquent donc de visibilit. La dicult de ces modes de transport est que les itin-
raires dpendent du choix dune seule personne. Il faut donc trouver une manire de
reprsenter des trajets qui ne peuvent exister que si deux personnes se mettent daccord.
Nouvelles mtriques
Il est peu probable quil existe une solution idale pour ne prsenter quun nombre res-
treint de solutions lutilisateur. Il sagit en eet dune part dun compromis entre un
faible paramtrage par lutilisateur et laisser lutilisateur dnir au mieux ses souhaits.
Dautre part, il sagit dun compromis entre la slection de solutions les plus varies et
llimination de solutions trop extrmes.
Cette question mrite donc plus dattention et de nouvelles mtriques pour slectionner
quelques solutions signicatives. En particulier, la robustesse dun chemin est un critre
particulirement important : un chemin un peu plus long pourrait tre prfr si le risque
de tomber dans un embouteillage est faible. De plus, au lieu de mesurer la distance entre
deux solutions selon les objectifs, il serait pertinent de mesurer quel point les itinraires
sont dirents : rien ne sert de prsenter deux itinraires qui ne dirent que sur 100m.
Changements dynamiques
Nous avons considr tout le long de cette thse que tout le graphe est connu lavance
et quil est able. Cependant il est indispensable de pouvoir prendre en compte des per-
turbations ponctuelles (panne, grve, accident, embouteillage, etc.) et donc de modier le
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
118
graphe de manire pouvoir la fois traiter la situation perturbe et la situation normale
pour lutilisateur qui prvoit un trajet plus long terme.
Le systme devrait galement tre capable de prendre en compte une certaine tolrance
pour prendre en compte le risque dembouteillage. La manire de modliser lincertitude
est dj un problme en soit : est-ce quil sut de dnir un intervalle, ou faudrait-il
sintresser des fonctions statistiques ?
Application au transport de marchandises
Nous nous sommes focaliss exclusivement sur le transport de personnes. Cependant la
combinaison de plusieurs modes de transports est galement une problmatique de plus
en plus importante pour le transport de marchandises. En plus des modes de transport
traditionnels (camion, avion, bateau, pniche, train), la mise en place du ferroutage et
des autoroutes de la mer (qui consistent mettre les remorques de camion directement
sur un train ou un navire pour viter les transbordements des marchandises) orira des
alternatives de plus en plus attrayantes pour les transporteurs.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxix
Annexe A
Implmentation
Le dveloppement des algorithmes et la cration dun prototype sest fait dans un projet
que nous avons nomm Mumoro pour MUltimodal and MultiOjective ROuting .
Cette annexe prsente quelques dtails dimplmentation. Nous prsentons dans un pre-
mier temps larchitecture gnrale du projet pour avoir un dmonstrateur complet. La
deuxime partie sintresse des problmes plus spciques aux algorithmes.
Tout le code source est disponible sous la licence libre GPLv3 et est hberg ladresse
suivante :
http://github.com/Tristramg/mumoro/
Un site de dmonstration appliqu la ville de Rennes est accessible au moment de la
rdaction du document (t 2010) :
http://mumoro.openstreetmap.fr/
A.1 Architecture du projet
A.1.1 Organisation gnrale
Les algorithmes de calcul ditinraire sont crits en C++. Linterface utilisateur se prsente
sous la forme dune page web. An de grer linterconnexion entre les deux, nous avons
utilis des bindings python. Enn, nous avons d dvelopper certains outils an de traiter
les donnes.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxx
A.1.2 Traitement des donnes
A.1.2.1 Openstreetmap
Le traitement le plus complexe a t pour les donnes routires issues de Openstreetmap.
En eet le projet avait initialement t pens pour un rendu graphique sans penser aux
applications de routage. De ce fait les donnes ne sont pas disponibles sous la forme dun
graphe traditionnel arcs/nuds.
Nous avons donc dvelopp un outils spcique Osm4routing galement disponible sous
licence libre (http://github.com/Tristramg/osm4routing) qui permet davoir les
donnes dans un format adapt un routage.
La dicult vient du fait quil est ncessaire dtudier toutes les lignes an de dtecter les
interconnexions qui correspondent un nud dans un graphe. Le volume des donnes
manipuler rend la tache dlicate (ainsi la France tait reprsente en juin 2010 par un
chier XML de 7.5 Go ce qui empche de le charger entirement en mmoire mme sur
un ordinateur haut de gamme).
A.1.2.2 Transports en commun
Suite une initiative de Google, de nombreux rseaux de transport diusent leurs don-
nes au format GTFS (General Transit Feed Specication) qui est en fait un ensemble de
chiers texte au format CSV (Coma Separated Values). Le traitement de ces donnes est
donc trs simple, dautant plus quun outil (transitfeed) est disponible pour les manipuler.
A.1.2.3 Vlo en libre service
Les vlos en libre service sont trs simples traiter puisquil ne sagit que dun tableau
contenant les coordonnes, lidentiant de la station et le nombre de vlos disponibles.
Quelque soit le format des donnes, le traitement est trivial.
Dans le cas de la ville de Rennes, ces donnes sont au format XML accessibles au travers
dune interface web de type REST (an davoir des donnes en temps rel sur ltat des
stations de vlo).
A.1.3 Interface web
Linterface web se compose dun ct client en HTML et Javascript et de lautre dun ser-
veur web en python qui interagit avec les algorithmes.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxi
La gure A.1 prsente le prototype que nous avons dvelopp avec un exemple diti-
nraire. Sur la gauche il est possible de voir le tableau correspondant trois exemples
ditinraire.
A.1.3.1 Outils utiliss ct client
Linterface que voit lutilisateur nal est une page web. Toute la partie cartographie est
gre par la bibliothque Javascript OpenLayers qui se charge dacher les fonds de carte,
dessiner litinraire et permettre linteraction avec lutilisateur (dplacements et zoomsur
la carte). Nous avons utilis jQuery an damliorer sensiblement le confort dutilisation,
mais surtout pour grer les changes de donnes avec le serveur.
A.1.3.2 Outils utiliss ct serveur
Le serveur web que nous avons utilis est CherryPy pour sa simplicit de dploiement et
pour faciliter lintgration des algorithmes grce aux bindings python.
A.1.3.3 Interactions
Lutilisateur doit juste dnir le point de dpart et darrive. Pour cela il peut soit cliquer
sur la carte, soit entrer une adresse. Lorsque le dpart et larrive sont clairement dnis,
le client web envoie une requte en AJAX au serveur. Le serveur excute alors le calcul
ditinraire, met en forme les donnes brutes (lalgorithme ne retournant quune liste de
nuds pour reprsenter un chemin) et les renvoie au client.
A.1.3.4 Algorithme de plus court chemin
Le cur du projet est dvelopp intgralement en C++. Nous avons utilis dirents com-
posants de la bibliothque Boost. En particulier la Boost Graph Library (BGL) nous ore
une structure de graphe trs facile paramtrer pour modliser plusieurs cots dont cer-
tains dpendent du temps. Cependant les algorithmes multiobjectifs ont t dvelopps
par nous-mmes.
A.2 Dtail des algorithmes
Nous prcisons dans cette section quelques points trs spciques dimplmentation.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxii
A.2.1 Gestion de la le de priorit
Dans lalgorithme de Martins, les tiquettes temporaires sont mmorise dans une struc-
ture Q. Cette structure doit la fois permettre daccder au plus petit lment (donc ida-
lement une le de priorit), mais aussi toutes les tiquettes associes un nud (donc
idalement un tableau de listes dtiquettes).
cause du besoin daccder de manire ecace de ces manires, il nest pas possible
dutiliser des conteneurs classique de STL. Pour cela nous avons utilis Boost Multiin-
dex qui permet de grer plusieurs indexes permettant davoir accs ecacement aux ti-
quettes des deux manires souhaites.
A.2.2 Gestion des horaires
Si au premier abord grer les grilles horaires est trivial, lapplication est un peu plus d-
licate. Il est en eet ncessaire de prendre en compte que les bus et les trains ne circulent
pas tous les jours aux mmes horaires. Pour les transports en commun urbains il existe en
France gnralement cinq cas dirents : jour de semaine, samedi, dimanche, vacances,
premier mai. Cependant ne considrer que ces cinq cas est restrictif. Ainsi la SNCF mettra
galement en place des trains supplmentaires les jours de dpart de vacances. De ce fait
il est ncessaire de grer au cas par cas.
Comme tout au long de cette thse, nous avons favoris lapproche la plus gnrique. De
ce fait nous considrons que chaque jour le plan de circulation peut tre dirent. Cepen-
dant pour des raisons de performance, nous ne pouvons pas nous permettre deectuer
des comparaisons de dates au parcours de chaque arc.
Nous avons donc fait le choix que lhorizon de dates est ni. Pour chaque arc nous avons
un tableaude triplets (instant de dpart, instant darrive, dates valides). Les dates valides
sont reprsents par un bitset (qui peut tre considr comme un tableau de boolens).
Ainsi avec un horizon de sept jours commenant le premier janvier, le bitset 0011001
indiquera que lhoraire est valable les 3, 4 et 7 janvier. La place pour avoir un horizon de
deux mois est de huit octets. Cela reste donc acceptable en terme de consommation de
mmoire.
Les dates sont tries par ordre croissant an de pouvoir arrter la recherche ds le pro-
chain dpart pour la date souhaite est trouve. Il nest malheureusement pas possible
de faire une recherche par dichotomie puisquil nest pas possible de faire une bissec-
tion pour un jour donn. Par exemple si le dimanche les bus sarrtent 19h tandis quen
semaine ils circulent jusqu minuit, une bissection 20h sera problmatique.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxiii
A.3 Capture dcran du dmonstrateur
Figure A.1 Capture dcran du dmonstrateur dvelopp
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxiv
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxv
Annexe B
Systmes existants
Les calculateurs ditinraires sont largement rpandus. Cependant, ils ne prsentent sou-
vent quun intrt limit. Nous prsentons donc quelques ralisations remarquables.
B.1 Navitia de Canal TP
Canal TP est une entreprise franaise spcialise dans les systmes dinformation pour
le transport public. Leur application phare est Navitia qui est un calculateur ditinraires
web trs largement utilis en France. Il couvre notamment tous les transports en commun
de lle-de-France.
Le calculateur prend en compte la marche et propose doptimiser pour avoir le trajet le
plus rapide, avec le moins de marche ou encore le moins de correspondances. Il ne per-
met cependant pas doptimisation multiobjectif et la marche nest considre que pour
rejoindre un arrt (ainsi le systme ne proposera pas de marcher pendant trente minutes
sil nexiste pas de meilleure connexion).
B.2 Reittiopas
Le site Reittiopas
21
est le calculateur ditinraire de lagglomration de Helsinki (Fin-
lande). Il propose tous les transports en commun, la marche et le vlo. Il propose doptimi-
ser soit le temps, les changements ou encore la distance de marche sans tre multiobjectif.
Ce systme a lavantage de considrer la marche comme un mode part entire. Ainsi,
dans certains cas (par exemple la nuit), litinraire propos sera eectu majoritairement
pied.
http://www.reittiopas.fi/en/
21
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxvi
B.3 Google maps
Dans son outil de cartographie web
22
, Google propose dirents calculs ditinraires de
point point en obligeant choisir le mode exclusif (voiture, marche et dans certaines
villes le vlo et les transport en commun).
Avec les transports en commun, aucun objectif ne peut tre dni, mais plusieurs alterna-
tives sont proposes. Dans certains cas, la marche est propose, mais pas systmatique-
ment.
B.4 Govlo
Govlo
23
est un calculateur ditinraire vlo dvelopp par Gal Sauvanet dans le cadre
de sa thse Sauvanet,Nron [58]. Il sagit dun calculateur multiobjectif et propose plu-
sieurs trajets qui sont un compromis entre la distance et le sentiment de scurit.
B.5 Transpolitan
Transpolitan est une entreprise spcialise dans le transport multimodal et propose un
calculateur ditinraire. Les captures dcran indiquent quil devait sagir dun calculateur
multiobjectif (http://www.transpolitan.com/pvm.htm). Cependant il semble que le
site soit abandonn depuis plusieurs annes et il est dicile davoir des informations sur
une ventuelle application relle.
B.6 OpenTripPlanner
Le projet OpenTripPlanner
24
vise fdrer plusieurs projets libres dans le domaine du
calcul ditinraire an de dvelopper une bote outil gnrique.
En ce qui concerne le calcul ditinraire proprement parler, ils utilisent le programme
Graphserver
25
qui est un calculateur multimodal sous licence libre.
Son avantage est la gnricit (il ny a aucune supposition sur la nature de litinraire
souhait par lutilisateur). Cependant il ne permet que de calculer litinraire le plus ra-
pide. Lapproche time-expanded utilise pour les transports en commun et le code fait en
C rendent une extension des algorithmes dlicate.
http://maps.google.com
22
http://www.geovelo.fr/
23
http://opentripplanner.org
24
http://bmander.github.com/graphserver/
25
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxvii
Bibliographie
1 Dijkstra, E. (1959). A note on two problems in connexion with graphs. Numerische
Mathematik, 1(1), 269271.
2 Fredman, M. and Tarjan, R. (1987). Fibonacci heaps and their uses in improved net-
work optimization algorithms. Journal of the ACM (JACM), 34(3), 596615.
3 Hart, P., Nilsson, N. and Raphael, B. (1968). A formal basis for the heuristic determi-
nation of minimum cost paths. IEEE transactions on Systems Science and Cybernetics,
4(2), 100107.
4 Schultes, D. (2007). Route planning in road networks. Science, 316(5824), 566.
5 Geisberger, R., Sanders, P., Schultes, D. and Delling, D. (2008). Contraction hierar-
chies : Faster and simpler hierarchical routing in road networks. Experimental Algo-
rithms, pp. 319333.
6 Sanders, P. and Schultes, D. (2005). Highway hierarchies hasten exact shortest path
queries. Lecture Notes in Computer Science, 3669, 568579.
7 Goldberg, A. and Harrelson, C. (2005). Computing the shortest path : Asearch meets
graph theory. , pp. 156165.
8 Bast, H., Funke, S., Matijevic, D., Sanders, P. and Schultes, D. (2007). In transit to
constant time shortest-path queries in road networks. , pp. 4659.
9 Hilger, M., Khler, E., Mhring, R. and Schilling, H. (2009). Fast point-to-point shor-
test path computations with arc-ags. The Shortest Path Problem : Ninth DIMACS Im-
plementation Challenge, pp. 7392.
10 Bauer, R., Delling, D., Sanders, P., Schieferdecker, D. and Schultes, D. et al. (2008).
Combining hierarchical and goal-directed speed-up techniques for Dijkstras algo-
rithm. Lecture Notes in Computer Science, 5038, 303.
11 Delling, D., Sanders, P., Schultes, D. and Wagner, D. (2009). Engineering route plan-
ning algorithms. Algorithmics of Large and Complex Networks, Lecture Notes in Computer
Science. Springer.
12 Abraham, I., Fiat, A., Goldberg, A. and Werneck, R. (2010). Highway Dimension,
Shortest Paths, and Provably Ecient Algorithms. , 22, 4755.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxviii
13 Dreyfus, S. (1969). An appraisal of some shortest-path algorithms. Operations Re-
search, 17(3), 395412.
14 Gondran, M. and Minoux, M. (2002). Graphes, Diodes et semi-anneaux. TEC &
DOC, Paris.
15 Nannicini, G., Delling, D., Liberti, L. and Schultes, D. (2008). Bidirectional A* Search
for Time-Dependent Fast Paths. Lecture Notes in Computer Science, 5038, 334.
16 Delling, D. (2008). Time-dependent SHARC-routing. Algorithmica, pp. 135.
17 Batz, V., Delling, D., Sanders, P. and Vetter, C. (2009). Time-dependent contraction
hierarchies. , pp. 97105.
18 Hizem, M. (2008). Recherche de chemins dans un graphe pondration dynamique. PhD
thesis, cole Centrale de Lille.
19 Muller-Hannemann, M., Schulz, F., Wagner, D. and Zaroliagis, C. (2007). Timetable
information : Models and algorithms. Lecture Notes in Computer Science, 4359, 67.
20 Pallottino, S. and Scutella, M. (1998). Shortest path algorithms in transportation models :
classical and innovative aspects. Kluwer Academic Publishers.
21 Bast, H., Carlsson, E., Eigenwillig, A., Geisberger, R. and Harrelson, C. et al..Fast
Routing in Very Large Public Transportation Networks Using Transfer Patterns.
AlgorithmsESA 2010, pp. 290301.
22 Geisberger, R. (2009). Contraction of Timetable Networks with Realistic Transfers.
Arxiv preprint arXiv :0908.1528.
23 Pyrga, E., Schulz, F., Wagner, D. and Zaroliagis, C. (2004). Experimental comparison
of shortest path approaches for timetable information. , pp. 8899.
24 Delling, D., Pajor, T., Wagner, D. and Karlsruhe, G. (2009). Engineering Time-
Expanded Graphs for Faster Timetable Information. Robust and Online Large-Scale
Optimization : Models and Techniques for Transportation Systems, pp. 182.
25 Orda, A. and Rom, R. (1991). Minimum weight paths in time-dependent networks.
Networks, 21(3), 295319.
26 Ahuja, R., Orlin, J., Pallottino, S. and Scutella, M. (2002). Minimum Time and Mini-
mum Cost-Path Problems in Street Networks with Periodic Trac Lights. Transpor-
tation Science, 36(3), 326336.
27 Chabini, I. (1998). Discrete dynamic shortest path problems in transportation appli-
cations : Complexity and algorithms with optimal run time. Transportation Research
Record : Journal of the Transportation Research Board, 1645(-1), 170175.
28 Chabini, I. and Ganugapati, S. (2002). Parallel algorithms for dynamic shortest path
problems. International Transactions in Operational Research, 9(3), 279302.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxix
29 Coello, C., Van Veldhuizen, D. and Lamont, G. (2007). Evolutionary Algorithms for
Solving Multi-Objective Problems. Springer.
30 Ehrgott, M. (2000). Multicriteria optimization. Springer-Verlag.
31 Ehrgott, M. and Gandibleux, X. (2000). Asurvey and annotated bibliography of mul-
tiobjective combinatorial optimization. OR Spectrum, 22(4), 425460.
32 Raith, A. and Ehrgott, M. (2009). A comparison of solution strategies for biobjective
shortest path problems. Computers & Operations Research, 36(4), 12991331.
33 Clmaco, J. and Pascoal, M. (2010). Multicriteria Path and Tree ProblemsDiscussion
on Exact Algorithms. .
34 Muller-Hannemann, M. and Weihe, K. (2001). Pareto Shortest Paths is Often Feasible
in Practice. Lecture Notes In Computer Science, pp. 185198.
35 Galand, L. and Perny, P. (2006). Search for compromise solutions in multiobjective
state space graphs. , pp. 93.
36 Grabish, M. (2006). Lutilisation de lintgrale de Choquet en aide multicritre la
dcision. European Working Group Multiple Criteria Decision Aiding, 3, 510.
37 Fouchal, H., Gandibleux, X. and Lehud, F. (2010). Algorithme de Martins et in-
tgrale de Choquet pour le calcul de plus courts chemins multi-critres prfrs.
ROADEF 2010.
38 Galand, L., Perny, P. and Spanjaard, O. (2010). Choquet-based optimisation in mul-
tiobjective shortest path and spanning tree problems. European Journal of Operational
Research, 204(2), 303315.
39 Gabrel, V. and Vanderpooten, D. (2002). Enumeration and interactive selection of
ecient paths in a multiple criteria graph for scheduling an earth observing satellite.
European Journal of Operational Research, 139(3), 533542.
40 Galand, L. (2006). Interactive search for compromise solutions in multicriteria graph
problems. , pp. 2225.
41 Deb, K., Pratap, A., Agarwal, S. and Meyarivan, T. (2002). A fast and elitist mul-
tiobjective genetic algorithm : NSGA-II. IEEE transactions on evolutionary computation,
6(2), 182197.
42 Zitzler, E., Laumanns, M., Thiele, L. and others (2001). SPEA2 : Improving the
strength Pareto evolutionary algorithm. , pp. 95100.
43 Coello, C., de Computacion, S. and Zacatenco, C. (2006). 20 Years of Evolutionary
Multi-Objective Optimization : What Has Been Done andWhat Remains To Be Done.
.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxx
44 Maria, J., Pangiliana, A. and Janssens, G. (2007). Evolutionary algorithms for the
multiobjective shortest path planning problem. International journal of computer and
information science and engineering, 1(1), 5459.
45 Kennedy, J. and Eberhart, R. (1995). Particle swarm optimization. Neural Networks
Proceedings., IEEE International Conference on, 4.
46 Durillo, J. J., Garca-Nieto, J., Nebro, A. J., Coello, C. A. C. and Luna, F. et al. (2009).
Multi-Objective Parcticle Swarm Optimizers : An Experimental Comparison. , pp.
495509.
47 Dorigo, M., Maniezzo, V. and Colorni, A. (1996). The ant system : Optimization by a
colony of cooperating agents. IEEE Transactions on Systems, Man, and Cybernetics-Part
B, 26, 2941.
48 Alaya, I., Solnon, C. and Ghedira, K. (2007). Ant Colony Optimization for Multi-
objective Optimization Problems. , pp. 450457.
49 Dorigo, M. and Sttzle, T. (2004). Ant colony optimization. MIT press.
50 Pluciski, M. (2005). Application of the ant colony algorithm for the path planning.
.
51 Kolavali, S. and Bhatnagar, S. (2009). Ant Colony Optimization Algorithms for Shor-
test Path Problems ?. , pp. 37.
52 Hansen, P. (1980). Bicriterion path problems. , pp. 109.
53 Martins, E. (1984). On a multicriteria shortest path problem. European Journal of Ope-
rational Research, 16(2), 236245.
54 Guerriero, F. and Musmanno, R. (2001). Label correcting methods to solve multicri-
teria shortest path problems. Journal of Optimization Theory and Applications, 111(3),
589613.
55 Tarapata, Z. (2007). Selected multicriteria shortest path problems : An analysis of
complexity, models and adaptation of standard algorithms. International Journal of
Applied Mathematics and Computer Science, 17(2), 269287.
56 Stewart, B. and White III, C. (1991). Multiobjective A*. Journal of the ACM (JACM),
38(4), 814.
57 Mandow, L. and de la Cruz, J. (2005). A New Approach to Multiobjective A* Search.
, 19, 218.
58 Sauvanet, G. and Nron, E. (2009). Calcul de plus court chemin bicritre. ROADEF
2009, pp. 90.
59 Delling, D. and Wagner, D. (2009). Pareto Paths with SHARC. , 5526, 125136.
60 Geisberger, R., Kobitzsch, M. and Sanders, P..Route Planning with Flexible Objective
Functions. .
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxxi
61 Berger, A., Grimmer, M. and Mller-Hannemann, M. (2010). Fully Dynamic Speed-
Up Techniques for Multi-criteria Shortest Path Searches in Time-Dependent Net-
works. Experimental Algorithms, pp. 3546.
62 Muller-Hannemann, M. and Schnee, M. (2007). Finding all attractive train connec-
tions by multi-criteria Pareto search. Lecture Notes In Computer Science, 4359, 246.
63 Papadimitriou, C. and Yannakakis, M. (2000). On the Approximability of Trade-os
and Optimal Access of Web Sources (Extended Abstract). , pp. 86.
64 Warburton, A. (1987). Approximationof Pareto optima inmultiple-objective, shortest-
path problems. Operations Research, pp. 7079.
65 Tsaggouris, G. and Zaroliagis, C. (2005). Improved FPTAS for multiobjective shortest
paths with applications. CTI Techn. Report TR-2005/07/03.
66 Boussedjra, M., Bloch, C. and El Moudni, A. (2003). Solution optimale pour la re-
cherche du meilleur chemin intermodal. MOSIM.
67 Ziliaskopoulos, A. and Wardell, W. (2000). An intermodal optimum path algorithm
for multimodal networks with dynamic arc travel times and switching delays. Euro-
pean Journal of Operational Research, 125(3), 486502.
68 Bast, H. (2009). Car or Public TransportTwo Worlds. Ecient Algorithms, pp. 355
367.
69 Lozano, A. and Storchi, G. (2001). Shortest viable path algorithm in multimodal net-
works. Transportation Research Part A, 35(3), 225241.
70 Delling, D., Pajor, T. and Wagner, D. (2009). Accelerating Multi-Modal Route Plan-
ning by Access-Nodes. .
71 Barrett, C., Bisset, K., Holzer, M., Konjevod, G. andMarathe, M. et al. (2008). Enginee-
ring Label-Constrained Shortest-Path Algorithms. Lecture Notes in Computer Science,
5034, 2737.
72 Meng, F., Yizhi, L., Wai, L. and Chuin, L. (1999). A Multi-Criteria, Multi-Modal Pas-
senger Route Advisory System. .
73 Boussedjra, M., Bloch, C. and El Moudin, A. (2006). Apport dune technique de di-
versication dans un algorithme de recherche de chemin intermodal. MOSIM.
74 Gueye, F., Artigues, C. andHuguet, M. (2009). Planication ditinraires en transport
multimodal. ROADEF 2009, pp. 113.
75 Gueye, F., Artigues, C., Huguet, M., Schettini, F. andDezou, L. (2010). Abidirectional/multi-
queue algorithm for the bi-objective multimodal viable shortest path problem. .
76 Cordeau, J., Laporte, G., Potvin, J. and Savelsbergh, M. (2007). Transportation on
demand. Transportation, 14, 429466.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxxii
77 Baldacci, R., Maniezzo, V. and Mingozzi, A. (2004). An exact method for the car poo-
ling problem based on Lagrangean column generation. Operations Research, pp. 422
439.
78 MacQueen, J. andothers (1966). Some methods for classication andanalysis of mul-
tivariate observations. Western Management Science Inst Unvi Of California Los
Angeles.
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1
cxxxiii
t
e
l
-
0
0
5
5
3
3
3
5
,

v
e
r
s
i
o
n

1

-

1
0

F
e
b

2
0
1
1

You might also like