Professional Documents
Culture Documents
+
Ensemble des successeurs dun nud
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, |
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
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