Télécharger la présentation
Publié parMarceline Mayer Modifié depuis plus de 10 années
1
Bloc1 : Théorie des graphes et problèmes d’ordonnancement
Aide à la décision Bloc1 : Théorie des graphes et problèmes d’ordonnancement Séance 2 Mohamed Ali Aloulou Une partie de ces transparents a été élaborée en se basant sur le document de Pierre Lopez, LAAS, Toulouse
2
Plan du cours Qu’est ce qu’on peut faire avec la théorie des graphes ?
Concepts généraux en théorie des graphes Le problème du plus court chemin Problème central de l’ordonnancement
3
Le problème du plus court chemin
Définition du problème Exemples de formulation avec pcch Principe d’optimalité et conditions d’existence Graphes sans circuit Graphes à valuations positives Algorithme de Moore-Dijkstra (1959) Graphes à valuations quelconques Contre-exemple Algorithme de Bellman-Ford
4
Le problème du plus court chemin Définition du problème
Soit G=(X,U) un graphe sans boucle Pour tout arc u=(xi,xj)U on associe une valuation a(u) = aij : durée, distance ... La valeur d’un chemin : v() = a(u), u S A B C E D 6 1 2 3 -4
5
Le problème du plus court chemin Définition du problème
On peut s’intéresser aux problème de plus court chemin (valeur min) de plus long chemin (valeur max) S A B C E D 6 1 2 3 -4
6
Le problème du plus court chemin Exemples
Exemple 1 : Construire une autoroute entre deux villes A et K Arcs = tronçons possibles de l’autoroute Valuation des arcs peut être coût de réalisation correspondant longueur du trajet … A B C D E F H I J K G
7
Le problème du plus court chemin Exemples
Exemple 2 : Chemin le plus fiable dans un réseau de télécommunication Arêtes = liens physiques Valuation des arêtes (i,j) est pij: fiabilité du lien (la probabilité pour que le lien fonctionne) La fiabilité d’un chemin est le produit des probabilités des liens qui le constituent Le problème devient un problème de pcch en remplaçant chaque probabilité par aij = - log pij
8
Le problème du plus court chemin Les 3 types de problèmes
Recheche des chemins extrêmaux d’un sommet xk vers un sommet xj Recherche des chemins extrêmaux d’un sommet xk vers tous les autres sommets Recherche des chemins extrêmaux entre tout couple de sommets
9
Le problème du plus court chemin Principe d’optimalité
aij = longueur de l’arc (i,j) si l’arc existe sinon + uj : longueur du pcch de l’origine 1 vers le sommet j Equations de Bellman u1 =0 uj = min {kj, uk + akj}
10
Le problème du plus court chemin Condition d’existence
Condition d’existence Le graphe n’admet pas de circuit de longueur négative i j k w l(w)<0
11
Le problème du plus court chemin Graphes acycliques
Un graphe est acyclique ssi il existe une numérotation des sommets telle qu’un arc existe entre i et j seulement si i < j Les équations de Bellman deviennent u1 =0 uj = min {k < j, uk + akj} -6 3 2 4 2 1 -4 1 2 1 6 5 3 9 3 5 6
12
Le problème du plus court chemin Graphes à valuations positives
Algorithme de Dijkstra : plus court chemin de l’origine à tous les autres sommets Utilise des labels pour les sommets Les labels permanents représentent la valeur du pcch de l’origine jusqu’au sommet correspondant Les labels temporaires représentent une borne supérieure de ce pcch A chaque itération un label temporaire est transformé en label permanent
13
Le problème du plus court chemin Graphes à valuations positives
Algorithme de Dijkstra Etape 0 u1 =0; uj =a1j, pour j=2,…, n P={1}, T={2, …, n} Etape 2 (Désignation du label permanent) Déterminer kT, tq uk=min{j T, uj} T=T\{k} et P=P{k} Si T=vide, stop Etape 3 (Révision des labels temporaires) uj=min{uj, uk+akj} pour tout j T Aller à l’étape 1
14
Le problème du plus court chemin Graphes à valuations positives
Exemple A B D C E F H G 2 4 3 1 5 3
15
Le problème du plus court chemin Algorithme de Dijkstra et graphes à valuations quelconques
6 1 2 3 -4
16
Le problème du plus court chemin Graphes à valuations quelconques
Algorithme de Bellman-Ford uj(m) = longueur du pcch de 1 vers j tel que le chemin ne contient pas plus que m arcs u1(1)= 0 uj(1) = a1j uj(m+1) = min{uj(m) , min{kj, uk(m) + akj}} Si le graphe ne contient pas de circuit de valeur négative alors uj = uj(n-1)
17
Le problème du plus court chemin Graphes à valuations quelconques
Algorithme de Bellman-Ford Etape 0 u1(0)= 0, uj(0) = + pour tout j1, m:=0 Etape 1 (On modifie les marques à partir des marques de l’étaqe pécédente) Pour tout j1 uj(m+1) = min{uj(m) , min{kj, uk(m) + akj}} Etape 2 Si pour tout j, uj(m+1) = uj(m) alors FIN Sinon Si m<n-1 alors poser m:=m+1 et aller à l’étape 1 Sinon Si m=n-1, alors G admet au moins un circuit absorbant
18
Le problème du plus court chemin Graphes à valuations quelconques
Plus court chemin entre tous les couples de sommets Algorithme matriciel de Floyd-Warshall
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.