Problème de routage de véhicule CVRP
Problème de routage de véhicule CVRP
1 Introduction………………………………………………………… 38
2 Historique……………………………………………………………. 39
3 Méthode de K- means……………………………………………… 40
4 Les algorithmes de colonie de fourmis……………………………. 44
4.1 Les fourmis réelles……………………………………………….. 44
4.1.1 L’intelligence collective des fourmis…………………………… 45
4.1.2 La communication………………………………………………. 46
4.2 Les fourmis artificielles………………………..………………….. 47
Table des matiéres
INTRODUCTION GENERALE
La recherche opérationnelle (RO) est une discipline scientifique récente datant tout
au plus de la deuxième guerre mondiale. Elle est l’ensemble des méthodes et techniques
rationnelles d’analyse scientifique (math et info) et de synthèses des phénomènes
d’organisation qui traite de la maximisation d’un profit, d’une performance, d’un
rendement ou bien de la minimisation d’un coût. Le champ d’application de la RO s’est
élargi à des domaines comme l’économie, la finance, le marketing et la planification
d’entreprise. La RO est avant tout un outil d’aide à la décision, sa vocation est donc de
construire des modèles pour des problèmes généraux d’aide à la décision, particulièrement
les problèmes d’optimisation, et de proposer de méthodes de résolution efficace de ces
modèles.
Les problèmes de transport créent une partie essentielle des travaux de ce domaine,
son problème de base est le problème de tournées probablement celui le plus étudié par
plusieurs chercheurs.
Il s’agit de déterminer les tournées d’une flotte de véhicules afin de livrer une liste
de clients, ou de réaliser des tournées d’interventions (maintenance, réparation, contrôles)
ou de visites (visites médicales, commerciales, etc.). L’objectif des problèmes de routage
véhicule avec capacité (CVRP) est de minimiser le cout total, c-à-d la somme des distances
et en conséquence des temps de parcours des tournées, tout en respectant la contrainte de
capacité des véhicules : la quantité de marchandises livrées sur une tournée ne doit pas
dépasser la capacité du véhicule qui l’assure avec une dégradation maximale de cette
dernière. Ce problème est une extension classique du problème du voyageur de commerce.
En lui rajoutant des nouvelles contraintes comme la capacité et le nombre de véhicule où
on cherche le plus court chemin avec une dégradation maximale de la charge de véhicule
1
Introduction générale
d’une à ville à une autre. Pour le résoudre plusieurs méthodes sont disponibles. Les
méthodes méthaheuristiques comme Algorithme de colonies de fourmis prennent une
grande place vis-à-vis des méthodes existantes. L’objectif de ce travail est de proposer un
algorithme basé sur la colonie de fourmis.[39]
Dans le premier chapitre, nous présenterons une vue globale de problème de routage de
véhicule VRP .
Dans le troisième chapitre, nous allons proposer un algorithme basé sur celui de
colonie de fourmis pour résoudre le problème CVRP et nous allons faire une présentation
générale des problèmes de routage véhicule avec capacité (CVRP). Dans l’algorithme de
colonies de fourmis, nous avons introduit la notion de roulette qui permet de choisir le
meilleur chemin de visite potentiel , avec une implémentation numérique d’application
combiner d’algorithme de colonie de fourmis et l’algorithme de kmeans pour le
regroupement des villes appliquées sur quelques exemples de CVRP.
Nous terminons notre travail par une conclusion générale, résumant ce qu’on a fait
et les résultats obtenus.
2
Chapitre 01
Capacité (CVRP)
Le problème de routage de véhicule avec capacité CVRP
1.1 Introduction
Une définition générale du VRP consiste à chercher un itinéraire optimal pour une
flotte de véhicules, basée en un ou plusieurs dépôts, afin de desservir un ensemble de
clients ayant des commandes connues, et dispersés géographiquement. Une tournée
désigne l’ensemble des clients visités par un véhicule qui part et revient au même dépôt.
Le VRP fait partie des problèmes d’optimisation combinatoire et de recherche
opérationnelle. La première fois, en 1959, que ce problème a été étudié par sous le nom de
« The Truck Dispatching Problème » et a depuis fait l’objet de nombreux travaux qui ont
donné de nombreuses variantes et différentes méthodes de résolution.
Le VRP appartient à la catégorie NP-difficile [40]et dans sa version de base, il
modélise un problème de transport avec une contrainte de capacité (CVRP)[41] qui
consiste à livrer des marchandises auprès des clients à l’aide d’une flotte de véhicules à
capacité limitée. La résolution consiste à déterminer un ensemble de tournées qui minimise
au mieux des objectifs comme le coût total, la distance totale parcourue, la somme des
retards des clients [42].
La réduction des coûts de transport a intéressé les développeurs de software qui ont
mis, sur le marché, des logiciels de plus en plus performants pour optimiser les tournées de
véhicules. Cette question, mieux connue aujourd’hui, sous le nom de Véhicule Routin
Problème (VRP), a également fait l’objet de nombreux travaux académiques, depuis plus
de 50 ans, et reste d’actualité principalement pour la recherche des méthodes de résolution
qui profitent de l’arrivée des ordinateurs plus puissants grâce aux progrès technologiques.
Ainsi, les solutions issues de la recherche sont de plus en plus pertinentes, applicables à la
réalité des entreprises et donc encourageantes. Ces solutions sont, dans la perspective, de
fournir aux entreprises des outils d’aide à la décision qui peuvent leur permettre de réaliser
des économies allant jusqu’à 20% .
1.2 Formulation
Rappelons que le problème VRP consiste à affecter chaque client à une tournée (i.e.
route) effectuée par un seul véhicule et à trouver un ordre de visites des clients pour chaque
véhicule de façon à satisfaire les contraintes de capacité des véhicules, et les quantités de
produit demandé par chaque client, dans le cas d’un problème de livraison. Il convient de
4
Le problème de routage de véhicule avec capacité CVRP
noter que la formulation proposée correspond également au VRP dans le cas d’un
problème de collecte ou de ramassage.
L’objectif dans ce problème est de trouver l’ensemble des tournées qui minimisent la
distance totale parcourue pour un nombre minimal de véhicules partant d’un dépôt et y
retournant. Ce problème est une extension du problème classique du voyageur de
commerce (TSP) .
Nous allons formuler le VRP selon un modèle de recherche opérationnelle dans la forme
utilisée par Le Bouthillier. En fait, ces travaux ont formulé le problème VRPTW (VRP
with Time Windows), dans cette section nous allons présenter la formulation du problème
VRP classique sans contraintes temporelles et dans la section nous allons continuer à
formuler le problème VRPTW en ajoutant ces contraintes.
Un graphe G = (N;A) représente notre problème où :
– N représente les positions des clients et du dépôt,
– A représente les arcs entre deux clients i; j ∈ N.
Plus spécifiquement, nous avons un ensemble C = {1 … … … … 𝑛𝑐 } de clients qui doivent
obtenir une livraison de marchandise provenant du dépôt. L’ensemble des positions de ces
clients ou nœuds est défini comme l’ensemble N = C ∪ {0, 𝑛𝑐 + 1} où 0 et nc + 1
représentent le dépôt (aller et retour). Une demande positive de produit di est associée à
chaque client i appartenant à C.
Une flotte de véhicules V = {1, … … . . , 𝑛𝑣 } est disponible au dépôt et chaque véhicule
possède la même capacité (flotte homogène) Q telle que Q ≥ max di; ∀ 𝑖 ∈ 𝑁 . Pour tous
clients i et j, ∀𝑖, 𝑗 ∈ 𝑁, nous connaissons le coût ci;j de transport direct entre i et j
(proportionnel à la distance à parcourir).
Pour trouver l’ordre de visite des clients, nous définissons les variables de décisions
comme suit :
𝑣 1 𝑠𝑖 𝑙𝑒 𝑣éℎ𝑖𝑐𝑢𝑙𝑒 𝑣 ∈ 𝑉 𝑣𝑖𝑠𝑖𝑡𝑒 𝑙𝑒 𝑐𝑙𝑖𝑒𝑛𝑡 𝑗 𝑎𝑝𝑟é𝑠 𝑙𝑒 𝑐𝑙𝑖𝑒𝑛𝑡 𝑖,
𝑥𝑖,𝑗 ={
0 𝑠𝑖𝑛𝑜𝑛
En définissant yi comme étant la charge résiduelle du véhicule après avoir desservi le client
i∈C. Il nous est possible d’écrire formellement le modèle de VRP.
𝑣
Min∑𝑣∈𝑉 ∑𝑖∈𝑁 ∑𝑗∈𝑁 𝑐𝑖 𝑥𝑖,𝑗 (1.1)
5
Le problème de routage de véhicule avec capacité CVRP
𝑣
∑𝑣∈𝑉 ∑𝑗∈𝑁 𝑥𝑖,𝑗 = 1, ∀ 𝑖 ∈ 𝐶 (1.2)
𝑣
∑𝑗∈𝑁 𝑥𝑖,𝑗 𝑣
− ∑𝑗∈𝑁 𝑥𝑗,𝑖 = 0, ∀𝑖 ∈ 𝐶, 𝑣 ∈ 𝑉 (1.3)
𝑣
∑𝑗∈𝑁 𝑥0,𝑗 = 1; ∀𝑣 ∈ 𝑉 (1.4)
𝑣
∑𝑗∈𝑁 𝑥𝑗,𝑛+1 = 1; ∀𝑣 ∈ 𝑉 (1.5)
𝑣
𝑥𝑖,𝑗 = 1 → 𝑦𝑖 − 𝑑𝑗 = 𝑦𝑗 ; ∀𝑖, 𝑗 ∈ 𝑁, 𝑣 ∈ 𝑉 (1.6)
𝑦0 = 𝑄, 0 ≤ 𝑦𝑖 ∀𝑖 ∈ 𝐶 (1.7)
𝑣
𝑥𝑖,𝑗 ∈ {0,1}, ∀𝑖, 𝑗 ∈ 𝑁, 𝑣 ∈ 𝑉 (1.8)
𝑣
La fonction de coût euclidien de la solution X=(𝑥𝑖,𝑗 ), ∀𝑖, 𝑗 ∈ 𝑁, ∀𝑣 ∈ 𝑉 est définie
par :
𝑣
coût(X) =∑𝑣∈𝑉 ∑𝑖∈𝑁 ∑𝑗∈𝑁 𝑐𝑖,𝑗 𝑥𝑖,𝑗 (1.9)
𝑣
Nb véhicules(X) =∑𝑣∈𝑉 ∑𝑗∈𝐶 𝑥0,𝑗 (1.10)
1.2.1 Détail des équations
La fonction objectif (équation 1.1) représente le nombre de véhicules utilisés
pour le routes et la somme des coûts de parcours.
La formulation du problème nécessite de satisfaire certaines contraintes :
– L’équation 1.2 assure qu’on part une et une seule fois de chaque client, avec un seul
véhicule.
– L’équation 1.3 assure que le véhicule qui arrive chez un client est le même que celui qui
part de ce client.
– L’équation 1.4 assure que chaque véhicule ne sort qu’une seule fois du dépôt.
6
Le problème de routage de véhicule avec capacité CVRP
– L’équation 1.5 assure le retour unique au dépôt pour chaque véhicule (ou tournée).
– Les équations 1.6 et 1.8 définissent les contraintes de capacité et d’intégrité.
– Les équations 1.9 et 1.10 sont des fonctions de mesure qui permettent respectivement
de quantifier la solution selon la distance totale parcourue, ainsi que le nombre de
véhicules utilisés. [6]
1.3 Paramètres
Outre la version basique du Capacité VRP, le problème de routage de véhicules a
plusieurs autres variantes plus ou moins étudiées dans la littérature.
En effet, la définition la plus générale du VRP est la suivante : il s'agit de la
conception de routes optimales par une flotte de véhicules, basée en un ou plusieurs dépôts,
pour desservir un ensemble de clients (ou villes) dispersés géographiquement et ayant des
demandes connues.
Cette définition généraliste met en évidence l'ensemble de paramètres qui
caractérisent une variante du VRP : le réseau de transport, la clientèle et la flotte de
véhicules.
Des contraintes auxiliaires peuvent éventuellement s'ajouter à ces trois paramètres
principaux. Un dernier paramètre réside dans la fonction objectif à optimiser. Le réseau :
Le réseau routier peut être symétrique ou asymétrique ; en conséquence, le graphe
associé G = (V; E) sera orienté ou non et les liaisons entre les sommets seront des arcs ou
des arêtes.
Les tournées peuvent partir d'un seul dépôt ou de plusieurs dépôts.
La clientèle :
La principale caractéristique de la clientèle est sa demande en marchandise.
La livraison de celle-ci peut être contrainte à s'effectuer au cours de périodes de temps
spécifiées, appelées fenêtres temporelles (time Windows). Ces contraintes peuvent être
dures ou souples. Dans le cas de contraintes dures, une arrivée avant la fenêtre temporelle
impose une attente, et les retards sont interdits ; alors que les contraintes souples peuvent
être violées et induisent ainsi des pénalités.[2]
Les clients peuvent être livrés en marchandises mais peuvent aussi en remettre aux
véhicules. On parle alors de tournées de livraison/ramassage ou de service mixte. Les
temps de livraison et de ramassage peuvent être non négligeables et sont ainsi pris en
compte dans le calcul des durées de tournées.
7
Le problème de routage de véhicule avec capacité CVRP
8
Le problème de routage de véhicule avec capacité CVRP
Les intervalles de temps peuvent être perçus comme les horaires d’ouverture et de
fermeture des services de réception de la marchandise ou comme les heures de travail du
personnel, et sont par conséquent complètement inviolables. En effet, les véhicules arrivant
avant cette fenêtre de temps doivent impérativement attendre d’être dans l’intervalle
spécifié pour être servis, quant à ceux arrivant trop tard, ils devront faire face à
l’impossibilité de satisfaire leurs demandes .[45]
Cette version plus souple permet aux clients d’être servis en dehors de la fenêtre
de temps contre une certaine forme de pénalité. Etant plus réaliste cette version est la plus
répandue dans la littérature.
9
Le problème de routage de véhicule avec capacité CVRP
_Le VRP with Stochastic _Le VRP with Stochastic _Le VRP with Stochastic
Customers VRPS : Demands (VRPSD) : Travel Times (VRPSTT)
est de loin la variante
qui se distingue par l’introduction
stochastique la plus répandue où
d’un paramètre Pi qui exprime la
la quantité demandée par un
possibilité qu’un client i émette une
client est évaluée par une
demande.
variable aléatoire.
Le SDVRP exclut la nécessité de ne visiter chaque client qu’une seule fois. De cette
nouvelle flexibilité résulte la possibilité de diviser la demande de service d’un seul client
sur plusieurs tournées, cette liberté modifie néanmoins l’appréhension de la contrainte de
capacité et alloue donc aux clients de formuler des demandes de quantité supérieur à la
capacité des véhicules.[48]
10
Le problème de routage de véhicule avec capacité CVRP
Où la tâche de livraison est antérieur à celle du ramassage. Ainsi toutes les livraisons
doivent être effectuées avant la première collecte.[51]
Autorise le traitement des services de collecte et de livraison dans une même tournée .[52]
11
Le problème de routage de véhicule avec capacité CVRP
-Méthodes exactes
-Méthodes approchées : Les heuristiques et Les métaheuristiques .
-Méthodes d'amélioration.
-Méthodes à deux phases.
12
Le problème de routage de véhicule avec capacité CVRP
Méthodes de
résolution du
VRP
Méthodes Méthodes
exactes approchées
1.6 Exemple :
A chaque emplacement il y a une demande correspondant à la quantité de l’article à
ramasser .de plus , chaque véhicule a une capacité maximale de 15.(nous ne spécifions pas
d’unités pour les demandes ou la capacité).
La grille ci-dessous montre les lieux à visiter en bleu et le site de l’entreprise en noir
.les demandes sont affichées en bas à droite de chaque emplacement . voir coordonnées
d’emplacement dans la section VRP pour plus de détails sur la façon dont les emplacement
sont définis. Le problème est de trouver une attribution d’itinéraire aux ayant la distance
totale plus courte, et tell que la quantité totale transportée par un véhicule ne dépasse
jamais sa capacité. [28]
13
Le problème de routage de véhicule avec capacité CVRP
Après avoir appliqué l’algorithme nécessaire pour résoudre ce problème, nous trouvons
l’image:
14
Le problème de routage de véhicule avec capacité CVRP
Conclusion
Dans le chapitre suivant, nous allons présenter une description générale sur les
métaheuristiques ainsi que le principe de quelques méthodes de résolution.
15
Chapitre 02
Introduction
Elles partagent aussi les mêmes inconvénients: les difficultés de réglage des paramètres
de la méthode, et le temps de calcul élevé.
17
Chapitre02 : Les algorithmes Métaheuristiques
3.1-L’aléatoire :
3.2-Tolérance à la détérioration :
3.3-La mémoire
Une métaheuristiques peut faire usage de la mémoire sous plusieurs formes et ceci dans
le but de stocker une partie de l’historique de la recherche. Un stockage qui se fait de deux
manières différentes à savoir :
18
Chapitre02 : Les algorithmes Métaheuristiques
Stockage à court terme : un stockage qui se fait dans le but de garder une trace de la
meilleure position d’une solution dans le but d’y retourner en cas d’échec d’amélioration.
Stockage à long terme : un stockage sélectif où les solutions jugées prometteuses seront
stockées dans le but d’être exploitées plus tard.
4.2 Amélioration :
Le composant amélioration commence par la recherche d'un vecteur de paramètres
qui réduit le nouveau courant la somme carrée moyenne des erreurs (MSE), généralement
19
Chapitre02 : Les algorithmes Métaheuristiques
en effectuant une recherche locale autour d’une bonne solution. Les procédures de
recherche locale sont le problème de dépendance.
20
Chapitre02 : Les algorithmes Métaheuristiques
21
Chapitre02 : Les algorithmes Métaheuristiques
22
Chapitre02 : Les algorithmes Métaheuristiques
descendants partir de deux parents, et la mutation, qui produit un nouvel individu a partir
d’un seul individu. Les individus de la population prenant part à la reproduction sont
préalablement sélectionnés, en respectant le principe suivant : plus un individu est
compétent, plus sa probabilité de sélection est élevée. La phase de remplacement consiste
ensuite a choisir les membres de la nouvelle génération : on peut, par exemple, remplacer
les plus mauvais individus (au sens de la fonction objectif) de la population courante par
les meilleurs individus produits (en nombre égal). L’algorithme est interrompu après un
nombre donné de générations.
Nous avons représenté en figure suivante le principe d’un algorithme génétique.
Population
Evenement évolutif
(recombinaison et\ou
mutatio)
Sélection
Calcul
d'adaptation
• NON
CONVERGENCE
• OUI FIN
23
Chapitre02 : Les algorithmes Métaheuristiques
Début
1 : Générer une population aléatoire de n chromosomes
2 : Evaluer la fitness des chromosomes avec la fonction f (x)
3 : Répéter
4 : Calcule la fonction fitness f (x), pour tout chromosome x
5 : Appliquer l’opération de sélection
6 : Appliquer l’opération de croisement avec une probabilité PC
7 : Appliquer l’opération de mutation avec une probabilité PM
8 : Ajouter les nouveaux chromosomes à la nouvelle population
9 : Calcule la fonction fitness f (x), pour tout chromosome x
10 : Appliquer l’opération de remplacement
11 : Jusqu’a la satisfaction des conditions de terminaison
Fin
24
Chapitre02 : Les algorithmes Métaheuristiques
25
Chapitre02 : Les algorithmes Métaheuristiques
26
Chapitre02 : Les algorithmes Métaheuristiques
27
Chapitre02 : Les algorithmes Métaheuristiques
6.3.2Principe de algorithme
Lorsque la mémoire est pleine, elle est gérée comme une liste circulaire en FIFO
(First In First Out)
On élimine le plus vieux point Tabou et on insère la nouvelle solution. La taille de
la mémoire permet de ne pas saturer rapidement les ressources disponibles pour la
recherche et permet de surcroît d’adapter facilement la méthode à un espace de recherche
dynamique.
28
Chapitre02 : Les algorithmes Métaheuristiques
29
Chapitre02 : Les algorithmes Métaheuristiques
A chaque pas de temps, chaque particule choisit la meilleure des meilleures performances
dont elle a connaissance, modifie sa vitesse en fonction de cette information et de ses
propres données et se déplace en conséquence [14].
A chaque itération, La vélocité et la position sont mise à jour suivant deux forces best
local et global. La première l'attire au best local qui est la position qui a donné la meilleure
fitness pour la particule (i.e c'est la position la plus proche de l'objectif que cette particule a
pu atteindre). L'autre best est le global best, c'est la meilleure position trouvée par la
particule et ses voisins Bli , et Bg sont les best locaux et globaux.
n est la taille des files d’attente.
Le pseudo code de l’algorithme de cette métaheuristiques adapté pour résoudre notre
problème est le suivant :
F1 représente un opérateur qui modifie les routages de quelques pièces parmi les
premières pièces de la file infinie avec une probabilité w, un nombre aléatoire uniforme r
est généré entre 0 et 1. Si r est inférieur à w alors F1 est appliqué pour produire une
permutation perturbée. De la même manière, on applique F2 et F3 qui représentent les
croisements avec les best locaux et globaux selon des probabilités C1 et C2.
Voici l’organigramme simple de l’algorithme PSO
30
Chapitre02 : Les algorithmes Métaheuristiques
31
Chapitre02 : Les algorithmes Métaheuristiques
32
Chapitre02 : Les algorithmes Métaheuristiques
33
Chapitre02 : Les algorithmes Métaheuristiques
34
Chapitre02 : Les algorithmes Métaheuristiques
7-Schéman Général :
Algorithemes
de résolution
Les Les
méthodes méthodes
exactes approchées
Métaheuristiques Métaheuristiques
simples de population
Métaheuristiques Métaheuristiques
constructives amélioratives
Métaheuristiques Métaheuristiques
constructives amélioratives
_Recuit
GRASP simulé Colonies
_Recherche de Algorithmes
avec tabous fourmis génétiques
_Recherche
a voisinages
variables
35
Chapitre02 : Les algorithmes Métaheuristiques
Conclusion
Dans ce chapitre, nous pouvons conclure que les méthodes exactes ne peuvent pas
toujours être applicables notamment dans le cas où le problème NP complet. par
conséquent, les méthodes approchées peuvent être un bon terrain pour travailler sur ce type
de problème.
Dans le chapitre suivant ,nous mettons l’accent d’une manière détaillée sur la méthode
de colonies de fourmis appliquée à un problème de véhicule avec capacité.
36
Chapitre 03 : Application de l’algorithme
de colonie de fourmis sur le CVRP
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
1.Introduction
ALGORITHME
DE KMEANS
ALGORITHME
DE COLONIE
DE FOURMIS
38
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
2 :Historique
Les algorithmes de colonie de fourmis ont été proposés par Colorni, Dorigo et
Maniezzo en 1992 et appliquées la première fois au problème de voyageur de commerce.
Ce sont des algorithmes itératifs à population où tous les individus partagent un savoir
commun qui leur permet d’orienter leur futur choix et d’indiquer aux autres individus des
choix à suivre ou à éviter.
Une colonie de fourmis ayant le choix entre deux chemins d’inégale longueur menant à
une source de nourriture avait tendance à utiliser le chemin le plus court.
✓ Si celle-ci découvre une source de nourriture, elle rentre plus ou moins directement au
nid, en laissant sur son chemin une piste de phéromones.
✓ Ces phéromones étant attractives, les fourmis passant à proximité vont avoir tendance à
suivre, de façon plus ou moins directe, cette piste.
✓ Si deux pistes sont possibles pour atteindre la même source de nourriture, celle étant la
plus courte sera, dans le même temps parcoure par plus de fourmis que la longue piste.
✓ La piste courte sera donc de plus en plus renforcée, et donc de plus attractive.
3. Méthode de k-means :
La méthode d'agrégation autour des centres mobiles est la méthode la plus utilisée
de par sa simplicité et la qualité des résultats qu'elle offre. On la retrouve sous d'autres
appellations ou d'autres variantes à savoir la méthode des mans, des c-means, la méthode
ISODATA, abréviation de Itérative Self Organizing Data Analysis [23], la méthode des
fuzzy c-mans utilisant la logique floue, Ces algorithmes se ressemblent dans le principe
général, mais différent dans la façon de procéder pour aboutir à une partition finale. Elles
procèdent par groupement de données selon une distance comme la distance euclidienne.
Chaque classe est représentée par son centroïde. La procédure de partitionnement s'effectue
39
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
par rapport aux centroïdes des classes. La méthode d'agrégation autour des centres mobiles
ou k-means à laquelle nous nous intéressons particulièrement, permet de construire une
partition finale qui est censée être la meilleure à partir d'une partition initiale qui peut être
fixée par l'utilisateur d'une manière aléatoire. Le choix de cette partition initiale reste
toutefois délicat. Cependant, il existe des méthodes qui permettent de la déterminer
automatiquement. Comme nous le verrons plus bas, les classes obtenues peuvent
caractérisées à l'aide des moments interclasse et interclasse qui nous renseignent sur la
qualité de la partition finale. On se réfère, donc, au moment d'ordre deux d'un ensemble I
de N points par rapport à leur centre de gravité G. Ce moment est donné par la formule
générale suivante :
où mi sont des masses ponctuelles ou des pondérations, et d(i,G) les distances des points i
au centre de gravité. Lorsque les observations sont décrites par M variables (espace à M
dimensions), ces distances, lorsqu'elles ont euclidiennes, sont données par la formule
suivante:
Ainsi, le moment centré d'ordre deux M 2 )IG( correspond à l'écart type d'une distribution
gaussienne. L'écart type étant un paramètre de dispersion, on remarque que si les points
sont très concentrés autour du centre de gravité, la valeur de M 2 )I,G) devient faible. Dans
le cas où ces points sont très dispersés, M2 )I,G) prend une valeur plus élevée.
Le moment centré d'ordre deux peut ainsi nous renseigner sur la qualité des classes
obtenues en classification.
Par rapport au barycentre G de l'ensemble des points ou du nuage global En, ce moment
est: En appliquant le théorème de Huyghens pour le sous ensemble In on obtient:
40
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
La formule donnant M2 (I,G) montre que le moment centré d'ordre deux du nuage In est la
somme des moments centrés d'ordre deux des sous-nuages augmentée du moment
interclasse. En d'autres termes, la dispersion totale est décomposée en dispersion à
l'intérieur des sous-ensembles ou des classes.
La dispersion intra classe est de valeur élevée si les barycentres des classes formées sont
éloignés du barycentre du nuage Quant aux dispersions intra classes, elles sont de valeurs
faibles si les points constituant chaque classe sont très rapprochés du centre de gravité
correspondant. En classification automatique, on cherche à minimiser la dispersion intra
classe et à maximiser la dispersion intra classe. En effectuant le rapport entre le moment
interclasse et le moment interclasse, on peut constituer l'indice R qui est le rapport entre
ces deux moments Cet indice R est calculé par la formule suivante : où L est le nombre de
classes ou sous-nuages disjoints in de barycentres Cn, Kn, le nombre d'éléments de la classe
In M, le nombre de variables décrivant chaque observation et xi, Xj. xG j, respectivement
les coordonnées des objets dans l'espace à M dimensions, le centre de gravité du sous-
nuage In de la classe k et le centre de gravité de tout le nuage de points.
On note que dans cet algorithme, le choix des i classes ou centres initiaux s'effectue sur la
base d'un tirage aléatoire sans remise à partir de la population à classifier. La partition des
classes est modifiée à chaque affectation d'un individu i à l'une des classes après le calcul
des distances euclidiennes par rapport à chaque centre un des classes initiales. L'individu
est affecté à la classe correspondant à la distance la plus faible. Cette opération est
effectuée pour chaque élément du nuage . Les centres de nouvelles classes ainsi formées
sont recalculés. Le calcul à nouveau de toutes les distances de chaque élément à ces
nouveaux centres est effectué encore et l'affection de ces éléments est aussi effectuée et de
nouvelles classes sont ainsi formées. L'opération se poursuit ainsi jusqu'à l'arrêt de la
procédure.
41
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Etape 0 : on choisit par un tirage aléatoire sans remise k individus permis n individus
composant l’ensemble I. ces k centre notés {𝑐10 , 𝑐20 … . . … … . 𝑐𝑘0 } sont provisoires.
Etape 1 : chaque individu i de I est affecté à une classe et une seule . chacune de ces classes
est localisée par son centre. La procédure d’affectation est la suivante : l’élément i est affecté à
la classe notée 𝑝10 de centre 𝑐10 si et seulement si :
𝑑(𝑖, 𝑐10 ) < 𝑑 (𝑖, 𝑐𝑘0 ), 𝑘#1 ; 𝑘 = 1,2, … . . , 𝐾
Après avoir affecté tous les individus on obtient notés ( 𝑝10 , 𝑝20 … … … . . , 𝑝𝑘0) de centre
respectifs {𝑐10 , 𝑐20 … … … . , 𝑐𝑘0 }.
Etape 2 : en considérant les k classes obtenues à l’étape 1, on recalcule les centre de gravité .
On obtient donc k nouveaux centre notés 𝑐11 , 𝑐21 … … . , 𝑐𝑘1 . On utilise la meme règle
d’affectation qu’à l’étape 1.on obtient k nouvelles classes (𝑝11 , 𝑝21 , … … . . , 𝑝𝑘1 ) de centre
respectifs (𝑐11 , 𝑐21 , … … … . , 𝑐𝑘1 ).
Etape 3 : on détermine k nouvelles classes en calculant les centres de gravité des classes
obtenues à l’étape (h-1). La règle d’affectation reste la même qu’à l’étape précédente et on
obtient, par la suite, une nouvelle répartition ( p1h , ph2 , … . , phk ) de centre respectifs
(c1h , c2h … … , ckh ).
Arrêt de l’algorithme
L’arrêt de l’algorithme de la méthode des { k-means } se fait
42
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Les fourmis constituent à l'heure actuelle un support majeur pour les théories
développées en écologie comportementale et en sociobiologie. On peut citer plusieurs
raisons à cette inspiration:
43
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
de grandeur que le poids des humains. De plus, la domination des fourmis est une preuve
de leur adaptation à des environnements très variés)
44
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
4.1.2. La communication
Les insectes sociaux en général, et les fourmis en particulier, ont développé des
mécanismes de communication très élaborés. Il a été défini douze types de réponse mettant
en œuvre une forme de communication [26] [19]:
01. l'alarme;
45
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
La communication chimique est de loin la plus présente chez les fourmis. Les
phéromones (mélange d'hydrocarbures) sont à la base de la communication de nombreuses
espèces.
la stabilité du signal pour une molécule peu volatile permet d'assurer une certaine
permanence. Par contre, les principaux inconvénients de la communication
chimique sont les suivants:
sa propagation est relativement lente et elle est peu adaptée pour la transmission de
messages urgents ou pour l'intégration de deux stimulations successives sous une
forme temporelle.
46
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Les algorithmes de colonies de fourmis sont nés à la suite d'une constatation : les
insectes sociaux en général, et les colonies de fourmis en particulier, résolvent
naturellement des problèmes relativement complexes. Les biologistes ont étudié comment
les fourmis arrivent à résoudre collectivement des problèmes trop complexes pour un seul
individu, notamment les problèmes de choix lors de l'exploitation de sources de nourriture.
Les fourmis ont la particularité d'employer pour communiquer des substances volatiles
appelées phéromones. Elles sont très sensibles à ces substances, qu'elles perçoivent grâce à
des récepteurs situés dans leurs antennes. Ces substances sont nombreuses et varient selon
les espèces. Les fourmis peuvent déposer des phéromones au sol, grâce à une glande située
dans leur abdomen, et former ainsi des pistes odorantes, qui pourront être suivies par leurs
congénères (figure 3.5) [21].
47
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Les fourmis utilisent les pistes de phéromones pour marquer leur trajet (entre le nid
et une source de nourriture). Une colonie est ainsi capable de choisir (sous certaines
conditions) le plus court chemin vers une source à exploiter, sans que les individus aient
une vision globale du trajet.
Figue 3.6 : Expérience de sélection des branches les plus courtes par une C.F.[37]
Effet, comme illustré sur la figure 3.6, les fourmis le plus rapidement arrivées au
nid, après avoir visité la source de nourriture, sont celles qui empruntent les deux branches
les plus courtes. Ainsi, la quantité de phéromone présente sur le plus court trajet est
légèrement plus importante que celle présente sur le chemin le plus long. Or, une piste
présentant une plus grande concentration en phéromones est plus attirante pour les fourmis,
elle a une probabilité plus grande d'être empruntée. La piste courte va alors être plus
renforcée que la longue, et, à terme, sera choisie par la grande majorité des fourmis. Mais à
tout moment, la probabilité existe qu'un individu quitte la trace puis se déplace plus ou
moins au hasard. À cette occasion, l'individu n «égaré» peut éventuellement découvrir une
source de nourriture beaucoup plus riche que celle qui exploite ses saveurs. En déposant
48
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
alors une trace de phéromones plus intense encore, elle va les attirer vers cette nouvelle
ressource, formant une nouvelle boucle de rétroaction positive [22].
Nous allons maintenant présenter l’algorithme initial d’Ant Colony System (ACS)[27]
s’appelant Ant Colony Cycle, consistant à trouver le cycle hamiltonien le plus court dans
un graphe, appliqué au problème de voyageur de commerce (TSP) qui a été proposé pour
résoudre le VRP et ces extensions, le problème visant à trouver le cycle hamiltonien le plus
court, chaque fourmi est initialement placée sur une ville ( sommet de graphe), à l’instant
t+ 1 toutes les fourmis choisissent une destination et ce déplacent, ainsi à l’instant n toute
la colonie aura réalisé un tour complet sur l’ensemble des sommets du graphe, chacune
possède une mémoire qui stocke la solution partielle quelle a construite auparavant.
— L’ensemble dij représentant les poids de arcs(i,j) ∈ U (la distance entre le sommet i et le
sommet j ).
𝑞−1
1
— 𝜂𝑖𝑗 = 𝑑 la constante indiquant la visibilité de la ville j à partir de la ville i.
𝑖𝑗
Choix de transition
Chaque fourmi possède une mémoire qui sera vidée une fois le cycle terminé lui
permettant d’éviter de revenir à une ville déjà visitée. Une fourmi k ce trouvant dans la
ville i a l’instant t choisis la ville j comme destination en fonction de deux paramètres : la
visibilité 𝜂𝑖𝑗 et la densité de phéromone τij(t) de l’arc les reliant, suivant la formule :
49
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
𝛽
(𝜏𝑖𝑗 (𝑡))𝛼 × 𝜂𝑖𝑗
𝑘( )
𝑝𝑖𝑗 𝑡 ={ ∑𝑙∈𝑁𝑘(𝑡)(𝜏𝑖𝑙 (𝑡))𝛼 × 𝜂𝑖𝑙𝛽 𝑠𝑖 𝑗 ∈ 𝑁𝑖𝑘
𝑖
0 𝑠𝑖𝑛𝑜𝑛
𝑘
Où 𝑝𝑖𝑗 est la probabilité que donne la fourmi k à un arc (i,j), 𝑁𝑖𝑘 est l’ensemble des voisins
non visités du sommet i par la fourmi k dans le cycle courant, α et β sont des paramètres
qui contrôlent l’importance que donne la fourmi a un arc.
A la fin de chaque cycle (chaque fourmi a parcouru les n sommets qui composent le
graphe),
𝑘
∆𝜏𝑖𝑗 (𝑡) = ∑𝑛𝑘=1 ∆𝜏𝑖𝑗 (𝑡) (3.3)
Représente la quantité des phéromones par unité de longueur déposée sur l’arête (i,j) par la
𝑘 𝑒𝑚𝑒 fourmi entre t et t + n, elle est donnée par :
𝑄
𝑘( ) 𝑠𝑖 𝑙𝑎 𝑘 𝑒𝑚𝑒 𝑓𝑜𝑢𝑟𝑚𝑖 𝑡𝑟𝑎𝑣𝑒𝑟𝑠𝑒 𝑙 ′ 𝑎𝑟𝑒𝑡𝑒(𝑖, 𝑗)𝑑𝑎𝑛𝑠 𝑠𝑜𝑛 𝑡𝑜𝑢𝑟
∆𝜏𝑖𝑗 𝑡 = {𝐿 𝑘 (3.4)
0 𝑠𝑖𝑛𝑜𝑛
Avec,
N Imax : représente le nombre maximum de tours autorisé, si à partir d’un certain nombre de
tours toutes les fourmis font le même trajet on dit que l’algorithme stagne, par conséquent
s’interrompt et affiche la meilleure solution mémorisée jusque-là.
50
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
1 Début
7 pour k = 1 à n f faire
8 pour v = 1 à nv faire
𝑘
10 Choisir la plus grande valeur de 𝑝𝑖𝑗 selon la formule (3.1)
11 fin
𝑘
13 Calculer ∆𝜏𝑖𝑗 selon la formule (3.4)
15 fin
chaque fourmis
17 fin
18 Fin
51
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
6.1 Définition
L’objectif du CVRP est de minimiser le cout total, c-à-d la somme des distances ou des
temps de parcours des tournées, tout en respectant la contrainte de capacité des véhicules :
la quantité de marchandises livrées sur une tournée ne doit pas dépasser la capacité du
véhicule qui l’assure.
52
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Les applications du VRP sont aussi diverses que variées. Toute entreprise
industrielle désire améliorer l’efficacité de sa chaine logistique, pour assurer une
production de biens ou de services au moindre coût et une fluidité d’écoulement de sa
marchandise En effet, le problème de tournée des véhicules est un maillon principal dans le
domaine de la logistique Le problème de tournées des véhicules fait partie de notre
quotidien, à commencer par le ramas- sage scolaire, le ramassage du personnel, le
ramassage des déchets ménagers, la distribution des produits alimentaires telles que le lait,
le pain, l’eau, etc. Aussi, les services et la distribution urgente de produits pharmaceutiques
font partie des problèmes de tournées des véhicules.
La formulation du VRP que nous présentons ici dans sa version la plus basique
(CVRP), correspond à la formulation mathématique utilisée en programmation linéaire en
nombres entiers. Elle traduit la modélisation naturelle du problème par la définition d’une
𝑘
variable binaire 𝑋𝑖𝑗 égale à 1 si le véhicule k parcourt l’arête (i,j). Cette formulation est la
plus utilisée dans la littérature, et a ainsi été adoptée par Toth and Vigo[25].
Les Données
Cette définition généraliste met en évidence l’ensemble des paramètres qui caractérisent le
VRP.
Le Réseau
53
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
La clientèle
Le nombre de véhicules disponibles peut être fixe ou non et peut être associé à un
dépôt parti- culier ou pas. Dans le cas du CVRP, la capacité des véhicules peut être
homogène ou inégale pour toute la flotte (on parle de flotte hétérogène : les véhicules n’ont
pas la même capacité).
La fonction objectif
Les objectifs les plus communs sont soit la minimisation du nombre de véhicules
utilisés soit la minimisation de la distance totale parcourue par les véhicules. D’autres
objectifs peuvent être considérés en fonction de la variante développée (minimisation de la
durée totale des tournées, la minimisation du coût total des tournées...)
Notre objectif est de trouver le plus court chemin avec une décharge maximale de la
demande.
Paramètre :
n = nv : le nombre de villes.
54
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
variables de décision
La fonction objectif :
∑𝑛𝑖=1 ∑𝑚 𝑘
𝑘=1 𝑥𝑖𝑗 = 1 ∀ 1 ≤ 𝑗 ≤𝑛 (3.7)
∑𝑛𝑗=1 ∑𝑚 𝑘
𝑘=1 𝑥𝑖𝑗 = 1 ∀1≤𝑖 ≤𝑛 (3.8)
∑𝑛𝑗=1 𝑥0,𝑗
𝑘
=1 ∀1 ≤ 𝑘 ≤ 𝑚 (3.10)
∑𝑛𝑖=1 𝑥𝑖,0
𝑘
=1 ∀1 ≤ 𝑘 ≤ 𝑚 (3.11)
L’équation (3.9) assure la continuité d’une tournée par un véhicule : le nœud visité doit
impérativement être quitté.
Les équations (3.10) et (3.11) assurent que chaque tournée commence et se termine au
dépôt.
55
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Dans l’algorithme classique, pour trouver le plus court chemin, la fourmi dépendait
de la densité de phéromones et la visibilité pour choisir la transition selon la formule (3.1).
Par contre, pour trouver le plus court chemin avec une dégradation maximale de la charge
de véhicule, nous avons introduit une agrégation des deux objectifs en modifiant la formule
(3.1) comme suit :
𝛽 𝛾
(𝜏𝑖𝑗 (𝑡))𝛼 ×𝜂𝑖𝑗 ×𝑑𝑒𝑚𝑖
𝑘
𝑝𝑖𝑗 (𝑡) = { ∑
𝑙∈𝑁𝑘
[(𝜏𝑖𝑙 (𝑡)) 𝛼 ×𝜂 𝛽 ×𝑑𝑒𝑚𝛾 ]
𝑖𝑙 𝑖 𝑠𝑖 𝑗𝜖𝑁𝑖𝑘 (3.13)
𝑖 (𝑡)
0 𝑠𝑖𝑛𝑜𝑛
Pour améliorer l’algorithme des colonies de fourmis, nous avons ajouté une
sélection par roulette, cette sélection est appliquée juste après les calculs des probabilités.
La sélection par roulette est la technique de sélection commune et la plus simple. Elle vise
𝑘
à sélectionner un candidat particulier avec la probabilité d’être sélectionné est 𝑝𝑖𝑗 définie
dans la formule (3.13).
Lorsque les fourmis choisissent le chemin pour la première fois, elles ne connaissent pas
les informations sur les phéromones dans chaque chemin. Cette sélection permet aux
fourmis de choisir le meilleur chemin de visite potentiel. Le calcul de la sélection par
roulette est basé sur la valeur heuristique ηij. Plus la valeur de ηij est élevée, plus la
probabilité d’être choisie est élevée.
56
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
La sélection par roulette permet toujours à la fourmis de trouver un autre chemin à partir
des résultats de la sélection par roulette.
Exemple
1 Fonction
5 Fin
57
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
L’algorithme ACO modifié suivant, prend en considération l’agrégation des deux objectifs
du CVRP à savoir le plus court chemin avec une décharge maximale traduit par la
probabilité P selon la formule(3.13) moyennant la technique de roulette selon
l’algorithme1.
1 Début
2 Lecture des paramètres d’exécution : nv, n f , dem ,cap, α, β, γ, Q, ρ, N Imax
12 fin
13 Calculer le coût de la tournée L
14 Calculer ∆τ ij selon la formule (3.4)
15 Mettre à jour les traces de phéromone selon la formule (3.2)
16 fin
58
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Algoritheme de Kmeans
Si K=3
Application de
l'algorithme de
colonie de fourmis
Résultat finale
59
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Tests et résultats
Dans cette partie, nous présentons les résultats des tests numériques effectués sur
l’algorithme ACO (plus court chemin avec dégradation maximale de la capacité) basé sur
la technique de la roulette. Nous présentons dans chaque test un tableau contenant :
_ Dépôt D= (456,320)
— la charge restante dans le véhicule après chaque passage par une ville
𝑛𝜈 𝑚 𝛼 𝛽 𝛾 𝜚 𝜌 𝜏0
𝑛𝑓 1 1 1 1 0.05 1 1
TEST I:
Nombre de ville : 16
Nombre de véhicule : 4
N Imax :200
60
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Le tableau suivant représenté les demandes de chaque ville :
Demande 60 45 50 35 30 40 45 25 70 80 28 56 36 21 73 46
La matrice des distances en kilomètres séparant les villes est donnée comme suit :
V1 0 684 308 194 502 730 354 696 742 1084 594 480 674 1016 868 1210
V2 684 0 922 878 502 274 810 468 742 400 1278 1164 1130 788 1552 754
V3 308 992 0 114 650 878 502 844 890 1232 514 628 822 1164 560 1358
V4 194 878 114 0 536 764 388 730 776 1118 400 514 708 1050 670 1244
V5 502 502 560 536 0 228 308 194 240 582 776 622 628 514 1050 708
V6 730 274 878 764 228 0 536 194 468 354 1004 890 856 514 1278 480
V7 354 810 502 388 308 536 0 342 388 730 468 354 320 662 742 856
V8 696 468 844 730 194 194 342 0 274 388 810 696 662 320 1084 514
V9 742 742 890 776 240 468 388 227 0 342 536 422 388 274 810 468
V10 1084 400 1232 1118 582 354 730 388 342 0 878 764 730 388 1152 354
V11 594 1278 514 400 776 1004 468 810 536 878 0 114 308 650 274 844
V12 480 1164 628 541 622 890 354 696 422 764 114 0 194 536 388 730
V13 674 1130 822 708 628 856 320 662 888 730 308 194 0 342 422 536
V14 1016 788 1164 1050 514 514 662 320 274 388 650 536 342 0 764 194
V15 868 1552 560 674 1050 1278 742 1084 810 1152 274 388 422 764 0 798
V16 1210 754 1358 1244 708 480 856 514 468 354 844 730 536 194 798 0
61
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Pour faire ses livraisons , on va classé les villes et on veut déterminer la tournée à réaliser
pour livrer tous les clients de façon à minimiser le nombre de kilomètre parcours et
décharger de façon maximale .
On a 4 véhicule donc :
Test 01 :
62
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Résultat :
190 - 130 - 95 - 45 - 0 km
Test 02 :
Résultat :
140 – 115 – 75 – 30 – 0 km
63
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Test 03 :
Résultat :
217 – 137 – 91 – 70 – 0 km
64
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Test 04 :
Résultat :
TEST II :
nombre de ville : 16
nombre de véhicule : 3
N Imax : 400
65
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Pour faire ses livraisons ,on va classé les villes et on veut déterminer la tournée à réaliser
pour livrer tous les clients de façon à minimiser le nombre de kilomètre parcours et
décharger de façon maximale.
On a 3 véhicules donc :
Groupe01 : v1 ; v3 ; v4 ; v7.
Test 01 :
66
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Résultat :
190 - 130 - 95 - 45 - 0 km
Test 02 :
Résultat :
67
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Test03 :
Résultat :
TEST III :
nombre de ville : 16
nombre de véhicule : 2
N Imax : 200
68
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Pour faire ses livraisons ,on va classé les villes et on veut déterminer la tournée à réaliser
pour livrer tous les clients de façon à minimiser le nombre de kilomètre parcours et
décharger de façon maximale.
On a 2 véhicules donc :
Groupe01 : v1 ; v2 ; v3 ; v4 ; v5 ; v6 ; v7 ; v8 ; v9 ; v10.
Test 01 :
69
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Résultat :
Test 02 :
Résultat :
70
Chapitre 03 :Application de l’algorithme de colonie de fourmis
sur le CVRP
Conclusion
71
Conclusion Générale
CONCLUSION GENERALE
Le sujet traité dans ce mémoire concerne le problème de tournées de véhicules
avec capacité par l’algorithme colonie de fourmis.
Nous avons introduit une agrégation des deux objectifs avec la technique de
roulette qui ont joué un rôle très important dans les résultats numériques.
Cette étude nous avons permis d’appliqué l’algorithme de colonie de fourmis sur le
problème CVRP avec plusieurs véhicules on combiner ACO avec l’algorithme de kmeans
pour le regroupement des villes.
L’état de l’art sur les problèmes de tournées des véhicules que nous avons traité tout au
long de ce mémoire nous a permis de mettre en évidence la difficulté du problème : les
méthodes de résolutions de ce problème exactes, approchées, heuristiques et méta-
heuristiques, généralités sur les problèmes des tournées des véhicules,
Nous considérons que les résultats obtenus dans notre travail sont très encourageants et
méritent une étude plus approfondie.
Nous souhaitons avoir atteint le but que m’a assigné mon encadreur et nous
espérons que ce travail trouvera un prolongement futur.
72
BIBLIOGRAPHIE
73
74
75
76
77
Résumé :
Le problème de tournnées de véhicules est un des problèmes d’optimisation
combinatoire les plus connus et les plus difficules .Il s’agit de déterminer les tournées
optimales pour une flotte de véhicules afin de servir un ensemble donnéde clients.
Les métaheuristiques sont utilisées pour résoudre les problèmes d’optimisation
difficile qui sont des problèmes pour lesquelles aucune méthode exacte n’est capable de
résoudre exactement en un temps raisonnable.
Parmis les algorithmes métaheuristiques nous avons utilisé algorithmede colonie de
fourmis (ACO).
Dans ce travail, on s’intéresse à la résolution numérique d’un problème de tournée de
véhicules avec capacité (CVRP). A cet égard, nous avons suggéré la métaheuristique
d’optimisation par colonie de fourmis grâce à leur simplicité et leur efficacité. Cette
mémoire est achevé par la réalisation des expérimentations numériques sur quelques
exemples pratiques .
Abstract :
The vehicle routing problem is one of the best known and most difficult combinatorial
optimization problems. This involves determining the optimal routes for a fleet of vehicles
to serve a given set of customes.
Métaheuristics are used to solve difficult optimization problems which are problems
for which no exact method is able.To solve exactly in a reasonable time .
Among the metaheuristic algorithms we used the ant colony algorithms(ACO).
In this work, we are interested in numerical resolution of a vehicles routing problem with
capacity (CVRP).In this regard, we have suggested the ant colony optimization
metaheuristic due to their simlicaty and efficiency.
This memory is completed by the realization of digital experiments on some practical
examples .
:ملخص
تعد مشكلة توجيه المركبة واحدة من اشهر مشاكل التحسين التجميعي وأكثرها صعوبة فهي تتضمن تحديد
. المسارات المثلى لمجموعة من المركبات من اجل خدمة مجموعة معينة من العمالء
.يستخدم االستدالل التجريبي لحل مشكالت التحسين الصعبة التي ال يمكن ألي طريقة حلها بالضبط في وقت معقول
في هذا.(ACO( من بين خوارزميات االستدالل التجريبي استخدمنا خوارزمية مستعمرة النمل لحلها
.العمل نحن مهتمون بالحل العددي لمشكلة تجول المركبات ذات السعة
وفي هذا الصدد اقترحنا استدالل تجريبي الذي يقوم على التحسين من قبل مستعمرة النمل بفضل بساطتها
. وكفاءتها التي تقوم على تحسين المركبات ذات السعة المحدودة
.تتضمن هذه المذكرة على اجراء تجارب رقمية على عدد قليل من األمثلة العلمية
. جولة مركبة بسعة، مستعمرة النمل، االستدالل التجريبي: الكلمات المفتاحية
78