Problème de voyageur de commerce

Slides:



Advertisements
Présentations similaires
Introduction à la Théorie des graphes
Advertisements

Comparaison de deux algorithmes d’approximation
Théorie des graphes.
Explorer un espace d’états
S. Meshoul & M. Batouche Equipe Vision, Laboratoire LIRE
Algorithmes et structures de données avancés
Voyager à l’aide de l’optimisation combinatoire Simon de Givry
Introduction à la Théorie des graphes
Métaheuristiques pour l’optimisation combinatoire
Collecte de données F. Kohler.
Cours d’Algorithmique
Cours d’Algorithmique
Cours d'algorithmique 11 / Intranet 1 9 janvier 2006 Cours dAlgorithmique N P - complétude.
Visualisation d’information interactive 5 : Graphes
Optimisation dans les télécommunications
Yann SEMET Projet Fractales, INRIA Rocquencourt
A.Faÿ 1 Recherche opérationnelle Résumé de cours.
Plus rapide chemin bicritère : un problème d’aménagement du territoire
Génération de colonnes
3. Algorithme Colonies de fourmis.
Optimisation Par Colonie De Fourmies
UNIVERSITE DES SCIENCES ET DE LA TECHNOLOGIE D’ORAN
Celso C. Ribeiro Universidade Federal Fluminense Brésil
Plus courts chemins On présente dans ce chapitre un problème typique de cheminement dans les graphes : la recherche d'un plus court chemin entre deux sommets.
Algorithmique et Programmation
Algorithmes Branch & Bound
Heuristiques A. Introduction B. Recherche d ’une branche
Chapitre 2 Réductions: exemples et méthodes
Programmation linéaire
GPA750 – Ordonnancement des systèmes de production aéronautique
Optimisation et Complexité
Algorithme de Bellman-Ford
GPA750 Les ateliers multigammes Chapitre 5
IFT Complexité et NP-complétude
Programmation linéaire en nombres entiers Algorithme de la subdivision successive («Branch and Bound Algorithm»)
Algorithmes d ’approximation
Recherche Opérationnelle
- GRAPHES - Composantes et types
Programmation dynamique
GPA750 – Gestion de Projets
Pour le chemin le plus court pour tous les couples
Programmation linéaire en nombres entiers : les méthodes de troncature

Heuristiques C. Recherche de la meilleure branche . Branch And Bound
Graphes 1. Introduction 2. Définition 3. Représentation mémoire
Arbres et graphes.
D.E ZEGOUR Ecole Supérieure d’Informatique
les méthodes de recherche locale
Programmation dynamique
Tutorat 7 - Introduction au Routage et OSPF
Séquençage par hybridation
Algorithmes Branch & Bound
Arbres binaires et tables de hachage
Exploration systématique de graphes
Travaux Pratiques Optimisation Combinatoire
Problème de double digestion
Cours LCS N°4 Présenté par Mr: LALLALI
Recherches locales et méta-heuristiques
Présenté par : ABED Djemaa; BAKHOUIA Roqiya.
Dr. MOKEDDEM République Algérienne Démocratique et Populaire
Algorithme de DIJKSTRA
Chapitre 4 Variables aléatoires discrètes
Chapitre 4 La représentation des nombres.
31/05/2007Projet Master 11 Présentation ludique de la recherche opérationnelle à la fête de la science Année universitaire 2006/2007 Sylvain FIX Julien.
Génération de routes optimales Sujets Introduction TSP Colonies de fourmis (voir autre présentation Informs Healhcare) PIF6004 Sujets Spéciaux en informatique.
CSI2510 Structures de données et algorithmes Plus court chemin
Algorithmes Branch & Bound Module IAD/RP/RO Master d ’informatique Paris 6 Philippe Chrétienne.
1 UE Intro. Optimisation L3 INFO UPSud II. Programmation linéaire en variables entières (ou mixtes)
Outils de Recherche Opérationnelle en Génie MTH 8414A
Transcription de la présentation:

Problème de voyageur de commerce République Tunisienne Ministère de l’Enseignement Supérieur de la Recherche Scientifique et de la Technologie Université de Sfax Problème de voyageur de commerce Réalisé par: Amina ELHAMDI Marwa TOUIL

Méthodes de résolution Plan Introduction Principe de TSP Problème détaillé Méthodes de résolution Conclusion

Introduction

Introduction Le problème est connu sous le nom du problème du voyageur de commerce (en anglais Travelling Salesman Problem : TSP) et est NP-Complet. Un voyageur de commerce désire visiter un certain nombre de villes, débutant et finissant son parcours dans la même ville en visitant chacune des autres villes une et une seule fois.

Introduction suite.. Il désire sélectionner la tournée qui minimise la distance totale parcourue. Les distances entre les villes sont connues. La notion de distance peut-être remplacée par d’autres notions comme le temps qu’il met ou l’argent qu’il dépense. La complexité en temps des algorithmes exacts proposés croît exponentiellement avec n (la taille du problème ou le nombre de villes).

Principe de TSP

Principe de TSP suite.. planifier sa tournée de manière à passer par toutes les villes en voyageant au total le moins possible. Un représentant de commerce peut vendre sa marchandise dans un certain nombre de villes.

Principe de TSP suite.. Si il n'y a aucune condition pour retourner au début. Il peut encore être considéré comme un TSP Supposons que nous voulons aller de A vers B visiter toutes les villes. A B

Principe de TSP suite.. Connectez-A et B à un «fantôme» ville à une distance nulle (Si aucune stipulation de départ et les villes de finition se connecter tous fictif à une distance nulle) A B

Créer une visite autour de TSP toutes les villes Principe de TSP suite.. Si il n'y a aucune condition pour retourner au début. Il peut encore être considéré comme un TSP. Créer une visite autour de TSP toutes les villes A B

Méthode de résolution suite.. Une route de retour au début est connu sous le nom d'un circuit hamiltonien. Une route ne revient pas au début que l'on appelle un chemin hamiltonien. Essentiellement la même classe de problème.

Principe de TSP suite.. TSPTW (Traveling Salesman Problem with Time Windows) problème du voyageur de commerce avec fenêtres de temps passant par toutes les livraisons des requêtes en cours et finissant au dépôt.

Motivation – Infirmière visitant des patients 10:00-11:00 6:00-7:00 2 hours 1.5 hours 12:00-8:00 16:00-17:00 4 hours 2 hours 2 hours 0.5 hour rest 17:00-18:00 1 hour 1 hour 7:00-5:00 1 hour 7:00-6:00 12:00-8:00 leave home at 5:00 get back at 20:00

Problème detaillé

Problème détaillé suite.. Voici un énoncé plus formel du problème du voyageur de commerce sous forme constatée de problème d'optimisation combinatoire. Soit un graphe complet G = (V,A,ω) avec V un ensemble de sommets, A un ensemble d'arêtes et ω une fonction de coût sur les arcs. hamiltonien : passe une fois et une seule par chaque sommet

Problème détaillé suite.. Il existe deux type de TSP: 1.Problème du voyageur de commerce symétrique : Pour i et j deux nœuds d'une arête, la distance de i à j est la même que celle de j à i. 2.Problème du voyageur de commerce asymétrique : Cette fois-ci la distance entre deux nœuds i et j d'une arête n'est pas forcément la même qu'on aille de i à j ou bien de j à i.

Problème détaillé suite.. Le TSP peut être formulé comme un problème de programmation linéaire en nombre entier. Le TSP présente plusieurs caractéristiques communes aux problèmes d’optimisation combinatoire. Le TSP fournit ainsi une plate-forme idéale pour étudier les méthodes générales applicables à un grand nombre des problèmes. Il a des applications directes dans le transport, la logistique, etc.

Applications de TSP Câblage informatique reliant les composants informatiques en utilisant la longueur de fil minimum Sériation archéologique les sites de commande en temps séquençage du génome l'organisation des fragments d'ADN par séquence les bus de ramassage scolaire trouver le chemin le plus court le camion de ramassage des ordures séquençage d'emploi afin de réduire au minimum totale du temps de réglage entre les emplois

Méthode de résolution

Méthode de résolution suite.. Les algorithmes de résolution du TSP peuvent être répartis en deux classes : Les algorithmes exacts: permettent de trouver la solution optimale, mais leur complexité est exponentielle. Les algorithmes les plus efficaces sont “cutting-plane”, “facetfinding” et “branch and bound”. Les algorithmes d’approximation (heuristiques): obtiennent de bonnes solutions mais ne donnent aucune garantie sur l’optimalité de la solution trouvée. Nous présentons quelques un de ces heuristiques.

La méthode du plus proche voisin (heuristique) la Méthode de «Greedy» 1ère étape: commencer n'importe où 2ème étape: Aller à la Ville la plus proche non visités 3ème étape: Continuez jusqu'à ce que toutes les villes visitées 4ème étape: Retour au début

La méthode du plus proche voisin (À partir de la ville 1) Un problème de 42 Ville La méthode du plus proche voisin (À partir de la ville 1) 5 8 25 37 31 24 6 28 36 32 41 26 30 14 27 11 7 15 23 33 9 40 22 29 12 13 2 19 34 42 35 20 16 38 17 4 21 10 3 1 39 18

Aller à la Ville la plus proche non visités (À partir de la ville1) 8 25 37 31 24 6 28 36 32 41 26 30 14 27 11 7 15 23 33 9 40 22 29 12 13 2 19 34 42 35 20 16 38 17 4 21 10 3 24 1 39 18

(À partir de la ville 1) Longueur 1498 5 8 25 37 31 24 6 28 36 32 41 26 30 14 27 11 7 15 23 33 9 40 22 29 12 13 2 19 34 42 35 20 16 38 17 4 21 10 3 1 39 18

Retirer Crossovers 5 8 25 37 31 24 6 28 36 32 41 26 30 14 27 11 7 15 23 33 9 40 22 29 12 13 2 19 34 42 35 20 16 38 17 4 21 10 3 1 39 18

Retirer Crossovers 5 8 25 31 37 24 6 28 36 32 41 26 30 14 27 11 7 15 23 33 9 40 22 29 12 13 2 19 34 35 42 20 16 38 17 4 21 10 3 1 39 18

Retirer Crossovers Longueur 1453 8 25 31 37 24 6 28 36 32 41 26 30 14 27 11 7 15 23 33 9 40 22 29 12 13 2 19 34 35 42 20 16 38 17 4 21 10 3 1 39 18

Les colonies de « FOURMIS »

Les colonies de fourmis suite.. On place des fourmis sur différentes villes et chaque fourmi à son tour choisit une nouvelle ville de manière probabiliste en fonction de : La quantité de phéromone ( ! !) Une fonction de la distance à la prochaine ville Sa mémoire interne qui lui indique les villes déjà parcourues. Chaque fois qu’une fourmi se déplace elle laisse une trace (local trail updating). Celle qui a trouvé le chemin de longueur minimum laisse une trace plus importante (global trail updating).

Les colonies de fourmis suite.. Soit Dist(i, j) la distance entre les villes i et j et Phero(i, j) la quantité de phéromone sur le chemin entre ces deux villes, N le nombre de villes et M le nombre de fourmis. Initialisation for iter:=1 to NbIter for i:=1 to N for k:=1 to M choix de la prochaine ville pour la fourmi k dépot de la trace locale endfor Choix de la fourmi ayant le plus court chemin dépot de la trace globale

Les colonies de fourmis suite.. Initialisation Soit une quantité de phéromone élémentaire calculée par : La distance Lnn est la distance calculée par l’algorithme du plus proche voisin (nearest neighbor). On initialise le tableau des traces avec : On tire au hasard les M villes de départ pour les M fourmis.

Les colonies de fourmis suite.. choix de la ville Soit q un nombre aléatoire entre 0 et 1 et soit vk la position de la fourmi k Si q =< q0 alors : On choisit parmi les villes candidates u celle qui maximise : Sinon : On choisit une ville au hasard selon la loi de probabilité suivante :

Conclusion

Conclusion Le problème du voyageur de commerce est toujours d’actualité dans la recherche en informatique, étant donné le nombre important de problèmes réels auxquels il correspond. Les problèmes dérivés et les extensions en sont très nombreux. Il suffit alors de considérer que les voyageurs de commerce sont des véhicules pour arriver à des problèmes de tournées de véhicules.

MERCI POUR VOTRE Attention