La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Recherche Opérationnelle Théorie des graphes: Algorithmes Recherche OpérationnelleGraphes.

Présentations similaires


Présentation au sujet: "Recherche Opérationnelle Théorie des graphes: Algorithmes Recherche OpérationnelleGraphes."— Transcription de la présentation:

1 Recherche Opérationnelle Théorie des graphes: Algorithmes Recherche OpérationnelleGraphes

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26 ARBRE DE POIDS MINIMUM : Application de KRUSKAL ET PRIM EXERCICE 1

27 Recherche OpérationnelleGraphes EXERCICE 2 Une commune veut offrir des possibilités de connexion a haut débit par câble dans ses nouveaux lotissements. Les liaisons envisageables entre les lotissements (numérotes de 1 a 7), ainsi que les estimations des coûts de construction sont donnes dans le graphe ci-dessous : Actuellement, seul le lotissement numéro 1 est relie au réseau a haut débit. Déterminer les liaisons à mettre en place de manière à connecter tous les lotissements au réseau tout en minimisant les coûts de construction.

28 Recherche OpérationnelleGraphes EXERCICE 3 Le réseau ci-dessous représente une partie du réseau routier d'une ville. Les noeuds correspondent aux carrefours, les arêtes aux routes que l'on suppose toutes a double sens et les nombres sur les arêtes indiquent la hauteur maximale (en centimètres) qu'un véhicule peut avoir s'il désire emprunter la route correspondante. Un livreur désire se rendre du point A au point B. Pour ceci, il veut déterminer la hauteur maximale x, en mètres, du camion qu'il peut utiliser. a) Déterminer quel problème de la théorie des graphes permet de décider si le livreur, ayant un camion de hauteur x mètres, peut effectuer sa livraison en utilisant uniquement les routes du réseau donné. b) Citer un algorithme vu au cours permettant de résoudre le problème précédant. c) Appliquer l'algorithme cité ci-dessus et déterminer la hauteur maximale du camion pour que la livraison soit possible et donner un itinéraire réalisable.

29 Recherche OpérationnelleGraphes Les problèmes de cheminement dans les graphes (en particulier la recherche dun plus court chemin) comptent parmi les problèmes les plus anciens de la théorie des graphes et les plus importants par leurs applications. 2.1 Définition Soit G = (V,E) un graphe orienté et valué ; on associe à chaque arc u = (i, j) une longueur l(u) ou l ij. Le problème du plus court chemin entre i et j est de trouver un chemin μ(i, j) de i à j tel que : Le problème du plus court chemin l(μ) = l(u) soit minimale. u μ Interprétation de l(μ) : coût de transport, dépense de construction, temps nécessaire de parcours,...

30 Remarques : la recherche du plus court chemin est analogue à la recherche du plus long chemin. Les algorithmes seront différents suivant les propriétés des graphes : – l(u) >= 0 – l(u) égales (l(u)=1) ( Problème du plus court chemin en nombre darcs) – G sans circuit – G et l(u) quelconques et suivant le problème considéré (à une ou plusieurs origines): Ce problème est aussi appelé le problème de recherche du plus court chemin à origine unique. Beaucoup dautres problèmes peuvent être résolus par lalgorithme avec origine unique: – plus court chemin à destination unique (inversion du sens de chaque arc du graphe) ; – plus court chemin pour un couple de sommets donné ; – plus court chemin pour tout couple de sommets (algorithme à origine unique à partir de chaque sommet). Recherche OpérationnelleGraphes

31 L'algorithme de Dijkstra (1959) [Moore (1957)] Données : Un réseau R = (V,E,c) connexe, |V| = n, |E| = m, ou c : E R+ est une pondération non négative des arcs du graphe G = (V,E). Un sommet particulier s V. Résultat : Pour tout sommet i V, la longueur i d'un plus court chemin de s à i ( i = s'il n'existe pas de chemin de s à i dans G) ainsi que le prédécesseur immédiat p(i) du sommet i dans un tel chemin. (1) s = 0, i = i s, p(i) = NULL i, T = V (initialisation) (2) Tant que T ; faire (2.1) Soit i le sommet de T de plus petite étiquette i (départager arbitrairement en cas d'égalité). (2.2) Si un tel sommet n'existe pas ( j = j T) : STOP, les sommets encore dans T ne sont pas atteignables depuis s. (2.3) Sinon, retirer i de T et pour tout successeur j de i encore dans T tester si j > i + cij auquel cas poser j = i + cij et p(j) = i. Recherche OpérationnelleGraphes

32

33 EXERCICE 1 Soit le réseau R=(V,E,c) de la figure : Déterminer un plus long chemin du sommet v1 au sommet v6. Préciser la méthode utilisée ainsi que les étapes de la résolution

34 GUELIZ FSSM Khadija habite à GUELIZ et travaille la faculté des Sciences Semlalia (FSSM). Elle effectue donc laller et le retour chaque jour en voiture. Ayant énormément de peine à se lever, elle aimerait trouver le chemin lui permettant de repousser le plus tard possible lheure de son départ tout en arrivant au travail à 8h00. Le réseau des routes quelle peut emprunter pour se rendre de Gueliz à FSSm est le suivant: Les sommets représentent les carrefours, les arcs les rues à sens unique et les arêtes les rues à double sens. Les valeurs à côté des arcs et des arêtes représentent le temps de parcours nécessaire en minutes pour rejoindre deux carrefours dans un sens ou dans lautre (sil est permis). De plus il y a une attente de 3 minutes en chaque carrefour, sauf en ceux de Gueliz et De FSSM. Déterminer le chemin que Khadija doit emprunter lui permettant de partir le plus tard possible et darriver à lheure à FSSM. A quelle heure doit-elle partir?. EXERCICE 2

35 Les graphes sans circuit Dans un réseau R = (V, E, c) sans circuit les problèmes de plus courts et de plus longs chemins sont toujours bien définis et, dès qu'il existe un chemin entre deux sommets d'un tel réseau, il existe un plus court et un plus long chemin. Propriété. Un graphe G = (V, E) sans circuit possède au moins un sommet sans prédécesseur et au moins un sommet sans successeur. Théorème. Le graphe G = (V, E) est sans circuit si et seulement si on peut attribuer à chaque sommet i V un nombre r(i), appelé le rang de i, tel que pour tout arc (i, j) E on ait r(i) < r(j). Cette numérotation (qui n'est généralement pas unique !) se calcule à l'aide d'un tri topologique et est telle que, pour tout arc du graphe, le numéro de son extrémité initiale est inférieure à celui de extrémité finale. Recherche OpérationnelleGraphes

36 Algorithme du rang Données : Un graphe orienté G = (V, E) sans circuit. Résultat : Pour tout sommet i V, un rang r(i) minimal. (1) k = 1, W = V (2) Tant que W ; faire (2.1) Soit X l'ensemble des sommets sans prédécesseur du sous-graphe GW = (W, E(W)). (2.2) Poser r(i) = k pour tout i X. (2.3) Poser W = W \ X et k = k + 1. Recherche OpérationnelleGraphes

37 Tri topologique Données : Un graphe oriente G = (V, E) sans circuit, |V| = n. Résultat : Une numérotation rt : V {1,….,n} des sommets de G compatible avec le rang. (1)k = 1, W = V (2) Tant que W ; faire (2.1) Soit i un sommet sans prédécesseur du sous-graphe GW = (W, E(W)). (2.2) Poser rt(i) = k, W = W\ {i} et k = k + 1. Recherche OpérationnelleGraphes

38 Appliquant l'algorithme du rang, on obtient la suite d'ensembles X et de sous-graphes suivante Exemple Soit le graphe sans circuit Recherche OpérationnelleGraphes

39 Plus courts chemins dans les réseaux sans circuit Pour calculer un plus court chemin dans un réseau sans circuit, il suffit de numéroter les sommets de manière compatible avec le rang (en effectuant un tri topologique du graphe) et de tester la condition d'optimalité en parcourant les sommets dans l'ordre croissant de leur numéro. Le plus souvent cet algorithme s'applique dans des réseaux possédant un seul sommet sans prédécesseur, le problème étant de trouver un plus court chemin de ce sommet à tous les autres. Dans un tel cas, après avoir trié topologiquement le graphe, on pose 1 = 0 et pour k de 2 à n on calcule Recherche OpérationnelleGraphes

40

41 Application à la gestion de projet : la méthode du chemin critique On considère un projet complexe décrit par un ensemble de tâches de durée connue ; des contraintes de précédence entre certaines tâches. On cherche à ordonner les tâches et à planifier leur dates d'exécution de manière à satisfaire les contraintes de précédence ; minimiser la durée totale de réalisation du projet ; pouvoir évaluer l'impact sur cette durée d'un retard d'exécution. Recherche OpérationnelleGraphes

42 Modélisation On modélise le problème par un réseau où les sommets représentent les tâches du projet ; un arc relie deux sommets i et j s'il existe une contrainte de précédence entre les tâches associées aux sommets i et j. le poids c ij de l'arc (i, j) est égal à la durée d i de la tâche (représenté par le sommet) i. Au réseau ainsi construit on ajoute également un sommet représentant le début des travaux, de durée nulle et précédant toutes les activités sans prédécesseur ; un sommet représentant la fin des travaux, de durée nulle et succédant à toutes les tâches sans successeur. Recherche OpérationnelleGraphes

43 Le graphe associé à un projet est sans circuit et possède un seul sommet sans prédécesseur (le sommet ) et un seul sommet sans successeur (le sommet ). Déterminer la durée minimale de réalisation d'un projet revient à calculer un plus long chemin entre les sommets et du graphe associé. Remarques. 1. Un projet peut également être modélisé par un graphe sans circuit ou les arcs correspondent aux tâches, les sommets représentant alors les différentes étapes du projet. Cest la méthode PERT (Programm Evaluation and Research Task ). Cette approche est totalement équivalente à celle présentée ici mais ne sera pas développée plus avant. 2. La modélisation présentée ici est aussi connue sous le nom de méthode MPM (Méthode des Potentiels Metra ). Les deux méthodes sont très proches et ont été développées simultanément et de manière indépendante par deux groupes de chercheurs. Recherche OpérationnelleGraphes

44

45

46

47 Terminologie Une tâche i est critique si i = i. Tout retard dans l'exécution d'une tâche critique se répercute en un accroissement de la durée totale de réalisation du projet. Un chemin critique est un chemin du sommet (début des travaux) au sommet (n des travaux) composé uniquement de tâches critiques. La longueur d'un chemin critique correspond à la durée minimale nécessaire à la réalisation du projet. Dans l'exemple, les tâches critiques sont les tâches, A, B, C, E et. Le seul chemin critique est C = (, (, A), A, (A, B), B, (B, C), C, (C, E), E, (E, ), ) Sa longueur est égale à 19 ce qui correspond à la durée minimale d'exécution du projet. Recherche OpérationnelleGraphes

48 EXRECICE 1 Cest bientôt nouvel an. Aicha et Moha ont décidé dorganiser une petite fête déguisée pour loccasion. Ils doivent tout prévoir du thème du déguisement au transport des invités, car la fête aura lieu un peu en dehors de Marrakech. Ils ont énuméré les tâches quils doivent effectuer pour que la fête soit belle. - Représenter le graphe de précédence des tâches pour lorganisation de la fête. - Effectuer une numérotation des sommets compatible avec le rang. - Calculer les dates de début au plus tôt et au plus tard de chacune des tâches. - Donner la durée minimale de lorganisation. - Déterminer le chemin critique et les tâches critiques. - Sachant que limprimeur du quartier est toujours très demandé. Aicha et Moha doutent de la durée de la tâche E. Sil faut 3 jours au lieu de 2 pour imprimer les cartons, devrons-ils commencer plus tôt pour être prêts le jour de la fête? Si oui, de combien de jours ?

49 EXRECICE 2 Un projet a été divisé en 7 tâches, notées A, B, C, D, E, F et G, dont les durées, en jours, sont données dans la table qui suit. Les contraintes suivantes doivent être respectés lors de la réalisation du projet : – La tâche A commence au plus tôt après la fin de la tache B mais pas avant que la moitié de la tâche E ne soit achevée. – La tâche F ne peut débuter avant que les tâches A et D soient terminées. – Lexécution de la tâche F doit précéder celles des tâches C et G. – La tâche D doit attendre la fin de la tâche E pour débuter. De plus, trois jours au minimum doivent sécouler entre le début de A et le moment où D peut commencer. – Une pause de sept jours au moins doit être respectée entre le moment où D se termine et celui où G peut commencer. a) Donner le graphe potentiels-tâches associé au projet. b) Calculer, pour chaque tâche, les dates de début au plus tôt et au plus tard. Donner également la durée minimale de réalisation du projet ainsi que les tâches et les chemins critiques. c) Lors de la modélisation du problème, la contrainte suivante a été oubliée : « La tâche C doit débuter au plus tard x jours après le début de la tâche B. » Comment modifier le graphe potentiels-tâches du projet afin de tenir compte de cette nouvelle contrainte ? Quelle est la valeur minimale possible pour le délai x ?


Télécharger ppt "Recherche Opérationnelle Théorie des graphes: Algorithmes Recherche OpérationnelleGraphes."

Présentations similaires


Annonces Google