200 likes | 271 Views
Projet d’Algorithme et Complexité. Couplage optimal. 1 ère année de Master Informatique UFR Sciences et Techniques Dijon Année 2010-2011 Harbelot -Chabot. Plan. 1) Présentation du problème de couplage optimal. 2) Solution n°1: Méthode Hongroise.
E N D
Projet d’Algorithme et Complexité Couplage optimal 1ère année de Master Informatique UFR Sciences et Techniques Dijon Année 2010-2011 Harbelot-Chabot
Plan 1) Présentation du problème de couplage optimal 2) Solution n°1: Méthode Hongroise 3) Solution n°2: Algorithme de Ford-Fulkerson 4) Analyse comparative 5) Choix techniques 6) Conclusion
Couplage: Etant donné un graphe non orienté G=(S,A), un couplage est un sous-ensemble d’arête M appartenant à A tel que, pour tous les sommets v appartenant à S, au plus une arête de M est incidente à V • Associer des objets d'un problème deux par deux en minimisant le coût des associations entre les objets Problème de couplage optimal
La méthode hongroise en 5 étapes: Solution n°1: Méthode Hongroise
Exemple de couplage optimal à l’aide de la méthode Hongroise: • Matrice initiale: • Réduction des lignes: Solution n°1: Méthode Hongroise
Réduction des colonnes: • Traçage des traits: • Solution optimale: • Coût de la solution: • 1 + 1 + 2 = 4 Solution n°1: Méthode Hongroise
Conversion du problème de couplage optimal en problème de maximisation de flot • Utilisation de l’algorithme de Ford-Fulkerson Solution n°2: Algorithme de Ford-Fulkerson
Exemple de couplage optimal à l’aide de l’algorithme de Ford-Fulkerson: • Phase 1 – Etape 1: Solution n°2: Algorithme de Ford-Fulkerson
Phase 1 – Etape 2: • Chemin de coût minimal: 1, 2, 5, 8 • Phase 1 – Etape 3: • Amélioration du flot = 1 Flot=1 Solution n°2: Algorithme de Ford-Fulkerson
Phase 2 – Etape 1: Solution n°2: Algorithme de Ford-Fulkerson
Phase 2 – Etape 2: • Chemin de coût minimal: 1, 3, 6, 8 • Phase 2 – Etape 3: • Amélioration du flot = 1 Flot=2 Solution n°2: Algorithme de Ford-Fulkerson
Phase 3 – Etape 1: Solution n°2: Algorithme de Ford-Fulkerson
Phase 3 – Etape 2: • Chemin de coût minimal: 1, 4, 7, 8 • Phase 3 – Etape 3: • Amélioration du flot = 1 Flot=3 Solution n°2: Algorithme de Ford-Fulkerson
Complexité de la méthode Hongroise: O(n²*n) • Complexité de l’algorithme de Ford-Fulkerson = O(n²*M) Analyse comparative
LANGAGE DE PROGRAMMATION • Langage concis = Programme court • Performances correctes • Utilisation de plusieurs paradigmes possibles PARADIGMES DE PROGRAMMATION • Paradigme Objet = Représentation du graphe et de ses composantes • Paradigme Impératif = Manipulation de matrices pour la méthode Hongroise • Paradigme Fonctionnel = Parcours de listes et recherche dans le graphe Analyse comparative
Avez-vous des questions ? Non Fulkerson…quoi? Oui C’est déjà le matin??