Académique Documents
Professionnel Documents
Culture Documents
Voyageur Com
Voyageur Com
Un voyageur de commerce basé dans la ville v1 doit visiter les villes v2 , . . . , vm puis revenir en son
point de départ. Il connaît les distances séparant toutes ces villes et voudrait déterminer l’ordre dans lequel
il doit les visiter dans le but de minimiser la distance totale parcourue.
Nous supposons dans un premier temps que les positions des m villes sont tirées uniformément dans
le carré [0, 1]2 et de manière indépendante. La distance (à vol d’oiseau) entre les villes vi et vj est notée
d(vi , vj ). Soit σ = (σ1 , . . . , σm ) une permutation de l’ensemble {v1 , . . . , vm } : σ représente un chemin
ou une façon pour le voyageur de commerce de visiter une et une seule fois chacune des m villes dans un
ordre donné. Le problème du voyageur de commerce est de déterminer un chemin σ minimisant la distance
totale parcourue :
m−1
X
H(σ) := d(σi , σi+1 ) + d(σm , σ1 )
i=1
(le voyageur de commerce doit retourner au point de départ). La recherche de la configuration optimale
par énumération exhaustive de tous les chemins possibles est très vite impossible.
Les algorithmes d’optimisation stochastique, comme le recuit simulé, sont des algorithmes efficaces
pour résoudre ce genre de problèmes complexes.
Soit E l’ensemble des m! permutations de {v1 , . . . , vm }. On appelle mesure de Gibbs associée à la
fonction d’énergie H et à température T > 0, la loi de probabilité définie sur l’espace E par :
1 − 1 H(σ)
IPT (σ) := e T ,
ZT
1
où ZT est la constante de normalisation ZT := σ∈E e− T H(σ) . La particularité de cette loi de probabilité
P
est qu’elle se concentre, à basse température, sur les états d’énergie minimale. En effet, si on note Emin :=
{σ ∈ E : H(σ) ≤ H(σ ′ ), ∀σ ′ ∈ E} l’ensemble des éléments de E d’énergie minimale (ou l’ensemble
des plus courts chemins) alors on a le résultat suivant :
1
∀σ ∈ E, lim IPT (σ) = 11σ∈Emin .
T →0+ #Emin
Ainsi, en revenant au problème du voyageur de commerce, il devient naturel pour minimiser l’énergie H
qui correspond à la distance totale parcourue, de simuler la loi IPT pour une température T suffisamment
basse. Les réalisations de cette loi devraient être proches des éléments de Emin .
1
Malheureusement, il n’existe aucune formule explicite pour la constante de normalisation ZT , rendant
son calcul impossible lorsque #E est grand. Il est donc impossible de simuler directement la mesure
de probabilité IPT . Un moyen indirect (et extrêmement astucieux) d’y parvenir est de faire appel à une
méthode MCMC...
Question 2. Proposer une chaîne de Markov à espace d’états E dont la mesure stationnaire est exactement
la loi de probabilité IPT . On pourra utiliser la structure de graphe suivante : deux chemins sont voisins si on
peut passer de l’un à l’autre en permutant deux villes. Implémenter un algorithme permettant de simuler
(de manière approchée) IPT .
Le choix de la température T est important. Lorsque la température T est élevée, la chaîne explore
bien l’espace E (i.e. la chaîne saute souvent) mais ne reste pas sur les minima de l’énergie H. C’est
exactement le contraire lorsque la température T est basse : l’exploration est très lente et la chaîne peut
rester longtemps piégée dans un minimum local. L’algorithme du recuit simulé est un compromis entre
ces deux comportements : on fait décroître lentement la température T = T (n) en fonction du temps n.
La suite (T (n))n est appelé schéma de température. L’idée physique est qu’un refroidissement trop brutal
peut bloquer le métal dans un état peu favorable, alors qu’un refroidissement lent permettra aux molécules
de s’agencer au mieux dans une configuration stable.
Mais attention !!! Une température qui varie en fonction du temps n rend la chaîne de Markov non
homogène ! Le Théorème Limite vu en cours ne s’applique plus... Il existe néanmoins un résultat de
convergence pour un schéma de température bien précis :
La constante h∗ est inconnue en pratique. Le paramètre h doit donc être ajusté expérimentalement. S’il
est choisi trop petit, l’algorithme peut ne pas converger vers les minima globaux et rester piégé dans un
minimum local. S’il est choisi trop grand, la convergence sera très lente.
Une liste d’une trentaine de villes est disponible sur MLS. Leurs longitudes et latitudes sont fournies.
Il n’est pas difficile de calculer la distance (à vol d’oiseau) entre 2 villes à partir de leurs longitudes et
latitudes.
Vous pouvez tester d’autres schémas de température. Tant pis s’ils ne sont pas supportés par un
théorème de convergence ! Soyons pragmatiques !