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

1 Licence dinformatique Algorithmique des graphes Problèmes dordonnancement. Utilisation de ce document strictement réservée aux étudiants de l IFSIC dans.

Présentations similaires


Présentation au sujet: "1 Licence dinformatique Algorithmique des graphes Problèmes dordonnancement. Utilisation de ce document strictement réservée aux étudiants de l IFSIC dans."— Transcription de la présentation:

1 1 Licence dinformatique Algorithmique des graphes Problèmes dordonnancement. Utilisation de ce document strictement réservée aux étudiants de l IFSIC dans le cadre de leur formation. Reproduction ou diffusion en dehors de l IFSIC strictement interdite sauf autorisation expresse de l auteur.

2 2 Problèmes dordonnancement Données : Un projet composé de n tâches Chaque tâche peut être soumise à un ensemble de contraintes Deux « tâches » fictives : début, fin (durées nulles)

3 3Contraintes Relations entre des événements liés à lexécution des tâches Exprimées par des relations sur les dates de début dexécution des tâches

4 4 La tâche A j commence au plus tôt à la fin de A i A j commenceExemples Séquentialité : fin de A i tjtj au plus tôt t i + d i Séquentialité avec délai : La tâche A j commence au plus tôt unités de temps après la fin de A i A j commence tjtj au plus tôt fin de A i t i + d i unités de temps après +

5 5 La tâche A j commence au plus tard à la fin de A i A j commenceExemples Date butoir : fin de A i tjtj au plus tard t i + d i Synchronisation : La tâche A j commence exactement à la fin de A i A j commence tjtj exactement = fin de A i t i + d i soit :

6 6 Lévénement « les 3/4 de lexécution de A j » coïncide avec « la moitié de lexécution de A i »Exemples Synchronisation plus complexe : t j + 0.75 d j = t i + 0.5 d i les 3/4 de l exécution de A j coïncide avec la moitié de l exécution de A i

7 7 Contraintes non-déterministes Contrainte qui peut être satisfaite par un choix (non-déterministe) Exemple : Paire de disjonction (exclusion mutuelle) Les tâches A j et A i ne peuvent être simultanément en exécution t j t i + d i OU t i t j + d j

8 8 Contraintes non-déterministes Contraintes déterministes : Système conjonctif dinéquations de la forme Système disjonctif dinéquations de la forme

9 9 Les problèmes à contrainte déterministes sont plus « faciles » à traiter

10 10 Ordonnancements : Formulation des problèmes Ordonnancement :compatible : solution du système de contraintes (conjonctif ou non)

11 11 Ordonnancements : Deux problèmes « centraux » Déterminer un ordonnancement compatible se terminant le plus tôt possible (c.-à-d. de durée dexécution minimale) Problème 1 : Problème 2 : Déterminer un ordonnancement compatible se terminant avant une date finale donnée (c.-à-d. de durée dexécution majorée par une durée donnée)

12 12 Ordonnancements à contraintes déterministes: Modélisation par graphe « potentiel-tâche » Sommets tâches Arcs (valués) inéquations ij

13 13 Contraintes implicites : relatives au début : aucune tâche ne commence avant le début! deb i 0 Inutile (redondante) si le sommet i reçoit déjà un arc de valeur positive ou nulle : deb i 0 j 0

14 14 Contraintes implicites : relatives à la fin : le projet ne peut être terminé avant que toutes les tâches soient terminées Inutile (redondante) si un arc de valeur di di est déjà issu du sommet i : i fin i j

15 15 Tâche Durée Contraintes A6 début au plus tôt 3 jours après le début du projet début au plus tard 2 jours après le début de B B9début au plus tôt 5 jours après le début du projet début au plus tôt 4 jours après le début de C C10début au plus tôt 4 jours après le début du projet D9début au plus tôt à la fin de A début au plus tôt 3 jours après la fin de B E16début au plus tôt à la fin de B Lévénement « 8 jours après le début de E » intervient au plus tôt 2 jours après le début de F F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G Exemple de modélisation

16 16 Tâche A6 début au plus tôt 3 jours après le début du projet début au plus tard 2 jours après le début de B B9début au plus tôt 5 jours après le début du projet début au plus tôt 4 jours après le début de C C10début au plus tôt 4 jours après le début du projet D9début au plus tôt à la fin de A début au plus tôt 3 jours après la fin de B E16début au plus tôt à la fin de B Lévénement « 8 jours après le début de E » intervient au plus tôt 2 jours après le début de F F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G deb F B C AD E G H fin

17 17 A6 début au plus tôt 3 jours après le début du projet début au plus tard 2 jours après le début de B B9début au plus tôt 5 jours après le début du projet début au plus tôt 4 jours après le début de C C10début au plus tôt 4 jours après le début du projet D9début au plus tôt à la fin de A début au plus tôt 3 jours après la fin de B E16début au plus tôt à la fin de B L événement « 8 jours après le début de E » intervient au plus tôt 2 jours après le début de F F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G deb F B C A D EGH fin 3 Arc (deb, A, 3)

18 18 A début au plus tard 2 jours après le début de B B9début au plus tôt 5 jours après le début du projet début au plus tôt 4 jours après le début de C C10début au plus tôt 4 jours après le début du projet D9début au plus tôt à la fin de A début au plus tôt 3 jours après la fin de B E16début au plus tôt à la fin de B L événement « 8 jours après le début de E » intervient au plus tôt 2 jours après le début de F F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (A, B, -2) deb F B C A D EGH fin 3

19 19 B9début au plus tôt 5 jours après le début du projet début au plus tôt 4 jours après le début de C C10début au plus tôt 4 jours après le début du projet D9début au plus tôt à la fin de A début au plus tôt 3 jours après la fin de B E16début au plus tôt à la fin de B L événement « 8 jours après le début de E » intervient au plus tôt 2 jours après le début de F F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (deb, B, 5) deb F B C A D EGH fin 3 5

20 20 B début au plus tôt 4 jours après le début de C C10début au plus tôt 4 jours après le début du projet D9début au plus tôt à la fin de A début au plus tôt 3 jours après la fin de B E16début au plus tôt à la fin de B L événement « 8 jours après le début de E » intervient au plus tôt 2 jours après le début de F F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (C, B, 4) deb F B C A D EGH fin 3 5 4

21 21 C10début au plus tôt 4 jours après le début du projet D9début au plus tôt à la fin de A début au plus tôt 3 jours après la fin de B E16début au plus tôt à la fin de B L événement « 8 jours après le début de E » intervient au plus tôt 2 jours après le début de F F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (deb, C, 4) deb F B C A D EGH fin 3 5 4 4

22 22 D9début au plus tôt à la fin de A début au plus tôt 3 jours après la fin de B E16début au plus tôt à la fin de B L événement « 8 jours après le début de E » intervient au plus tôt 2 jours après le début de F F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (A, D, 6) deb F B C A D EGH fin 3 5 4 4 durée de A : 6 6

23 23 Ddébut au plus tôt 3 jours après la fin de B E16début au plus tôt à la fin de B L événement « 8 jours après le début de E » intervient au plus tôt 2 jours après le début de F F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (B, D, 12) deb F B C A D EGH fin 3 5 4 4 durée de B : 9 6 12

24 24 E16début au plus tôt à la fin de B L événement « 8 jours après le début de E » intervient au plus tôt 2 jours après le début de F F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (B, E, 9) deb F B C A D EGH fin 3 5 4 4 durée de B : 9 6 12 9

25 25 ELévénement « 8 jours après le début de E » intervient au plus tôt 2 jours après le début de F F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (F, E, -6) deb F B C A D EGH fin 3 5 4 4 6 12 9 -6

26 26 F15début au plus tôt à la fin de C G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (C, F, 10) deb F B C A D EGH fin 3 5 4 4 6 12 9 -6 durée de C : 10 10

27 27 G13début au plus tôt à la fin de D début au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (D, G, 9) deb F B C A D EGH fin 3 5 4 4 6 12 9 -6 durée de D : 9 10 9

28 28 Gdébut au plus tôt 8 jours après le début de F H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (F, G, 8) deb F B C A D EGH fin 3 5 4 4 6 12 9 -6 10 9 8

29 29 H4début au plus tôt à la fin de E début au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (E, H, 16) deb F B C A D EGH fin 3 5 4 4 6 12 9 -6 10 9 8 durée de E : 16 16

30 30 Hdébut au plus tôt 8 jours après le début de F début au plus tôt 3 jours après le début de G -2 Arc (F, H, 8) deb F B C A D EGH fin 3 5 4 4 6 12 9 -6 10 9 8 16 8

31 31 Hdébut au plus tôt 3 jours après le début de G -2 Arc (G, H, 3) deb F B C A D EGH fin 3 5 4 4 6 12 9 -6 10 9 8 16 8 3

32 32 -2 deb F B C A D EGH fin 3 5 4 4 6 12 9 -6 10 9 8 16 8 3 Contraintes implicites :début Déjà toutes prises en compte

33 33 -2 deb F B C A D EGH fin 3 5 4 4 12 -6 8 6 9 10 9 16 8 3 Contraintes implicites :fin Tâches A, B, C, D, E : durées déjà prises en compte durées : 6 9 10 9 16 6, 9, 10, 9, 16

34 34 -2 deb F B C A D EGH fin 3 5 4 4 12 -6 8 6 9 10 9 16 8 3 Contraintes implicites :fin Tâche F : durée : 15 Arc (F, fin, 15) 15

35 35 -2 deb F B C A D EGH fin 3 5 4 4 12 -6 8 6 9 10 9 16 8 3 Contraintes implicites :fin Tâche G : durée : 13 Arc (G, fin, 13) 15 13

36 36 -2 deb F B C A D EGH fin 3 5 4 4 12 -6 8 6 9 10 9 16 8 3 Contraintes implicites :fin Tâche H : durée : 4 Arc (H, fin, 4) 15 13 4

37 37 deb F B C A D EGH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 le graphe « Potentiel-Tâche »

38 38 Résolution des problèmes possède les propriétés suivantes : 1. Il est compatible 2. Si T est un ordonnancement compatible, alors En particulier, fin est minimum Problème 1 avecvaleur maximale des chemins de deb à i Ordonnancement « au plus tôt »

39 39 valeur maximale des chemins de deb à i est compatible En effet : Dans le problème (MAX,+), les valeurs optimales i constituent la SOLUTION minimale du système déquations

40 40 valeur maximale des chemins de deb à i est compatible

41 41 2. Si T est un ordonnancement compatible, alors En effet : Le vecteur T est solution du système déquations

42 42 2. Si T est un ordonnancement compatible, alors De plus : Dans le problème (MAX,+), les valeurs optimales i constituent la solution MINIMALE du système déquations

43 43 2. Si T est un ordonnancement compatible, alors Donc : Dans le problème (MAX,+), les valeurs optimales i constituent la solution MINIMALE du système déquations

44 44 Résolution des problèmes Lordonnancement défini par avec i = valeur maximale des chemins de i à fin possède les propriétés suivantes : 1. Il est compatible Problème 2Soit F une date finale donnée, 2. Si T est un ordonnancement compatible avec Ordonnancement « au plus tard » relatif à la date finale F

45 45 valeur maximale des chemins de i à fin dans le graphe G Dans le problème (MAX,+), les valeurs optimales i constituent LA solution MINIMALE du système déquations valeur maximale des chemins de fin à i dans le graphe transposé G t

46 46 est compatible

47 47 2. Si T est un ordonnancement compatible, alors Démonstration analogue à celle du problème 1 (détails dans le polycopié)

48 48 Ce nest JAMAIS le cas! (sauf, peut-être, si toutes les tâches avaient des durées nulles) Algorithmes de résolution BELLMANN-KALABA : toujours possible DIJKSTRA ? Condition pour (MAX,+) : Tous les arcs ont des valeurs 0 jamais possible

49 49 Algorithmes de résolution BELLMANN-KALABA : toujours possible DIJKSTRA ? jamais possible Lalgorithme ORDINAL-RACINE ? Conditions : graphe sans circuit sommet de départ racine du graphe

50 50 Un graphe potentiel-tâche est-il sans circuit? Pas nécessairement! Mais : Il ne doit pas avoir de circuit de valeur > 0

51 51 Il ne doit pas avoir de circuit de valeur > 0 a b c d x y z t Contradiction!

52 52 Il ne doit pas avoir de circuit de valeur > 0 Si tous les arcs sont de valeur > 0 (sauf peut-être ceux issus de deb ou aboutissant à fin) alors le graphe potentiel-tâche est sans circuit ou il ny a pas dordonnancement compatible

53 53 Méthode préconisée : si on soupçonne des circuits, deux phases: 1. « supprimer » les arcs de valeur 0 (non issus de deb) Appliquer lalgorithme ordinal-racine. 2. « réintroduire» les arcs de valeur 0 Pour chaque arc, procéder aux ajustements des valeurs des extrémités.

54 54 Principe de lalgorithme ordinal (rappel) Cest du Marimont à partir des points dentrée, avec prise en compte des valeurs des arcs deb « marqué » 0 Soit x un sommet non marqué, dont tous les prédécesseurs sont marqués. Marquer x avec la valeur (définitive)

55 55 Exemple : le problème modélisé précédemment F B C AD E G H fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 deb On ne soupçonne pas de circuit (malgré des arcs de valeur <0)

56 56 deb F B C A D EGH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 Algorithme ordinal (0) (4) (3) (8) (14) (20) (29) (17) (33)(42) Ordonnancement au plus tôt Deb A B C D E F G H fin 0 3 8 4 20 17 14 29 33 42

57 57 findeb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 Algorithme ordinal à partir de la fin Ordonnancement au plus tôt Deb A B C D E F G H fin 0 3 8 4 20 17 14 29 33 42 (0) (4) (13) (20) (22) (21) (34) (32) (38) (42) Valeurs max vers fin 42 32 34 38 22 20 21 13 4 0 Ordonnancement au plus tard0 10 8 4 20 22 21 29 38 42

58 58 On rajoute une contrainte supplémentaire H ne se termine pas plus tard que 4 u.t. après la fin de F deb F B C A D EGH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 Arc (H, F, -11) -11 Durée de F = 15, durée de H = 8

59 59 On rajoute une contrainte supplémentaire deb F B C A D EGH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (3) (8) (14) (20) (29) (17) (33)(42) -11 Mise à jour de lordonnancement au plus tôt ? NON! 22

60 60 On rajoute une contrainte supplémentaire deb F B C A D EGH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (3) (8) (14) (20) (29) (17) (33)(42) -11 Mise à jour de lordonnancement au plus tôt ? NON! 22 30

61 61 On rajoute une contrainte supplémentaire deb F B C A D EGH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (3) (8) (14) (20) (29) (17) (33)(42) -11 Mise à jour de lordonnancement au plus tôt ? OUI! 22 30

62 62 On rajoute une contrainte supplémentaire deb F B C A D EGH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (3) (8) (14) (20) (29) (17) (33)(42) -11 Mise à jour de lordonnancement au plus tôt ? NON! 22 30 43

63 63 On rajoute une contrainte supplémentaire deb F B C A D EGH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (3) (8) (14) (20) (29) (17) (33)(42) -11 Mise à jour de lordonnancement au plus tôt ? OUI! 22 30 43

64 64 On rajoute une contrainte supplémentaire deb F B C A D EGH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (3) (8) (14) (20) (29) (17) (33)(42) -11 Mise à jour de lordonnancement au plus tôt ? OUI! 22 30 43

65 65 On rajoute une contrainte supplémentaire deb F B C A D EGH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (3) (8) (14) (20) (29) (17) (33)(42) -11 Mise à jour de lordonnancement au plus tôt Mise à jour terminée. 22 30 43 Nouvelle date finale « au plus tôt » : 43

66 66 Mise à jour de lordonnancement au plus tard/date finale 43 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 NON! 10 ?

67 67 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 OUI! 10 ?

68 68 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 OUI! 10 ?

69 69 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 NON! 10 ? 26

70 70 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 OUI! 10 ? 26

71 71 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 NON! 10 ? 26 35

72 72 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 NON! 10 ? 26 35 39

73 73 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 NON! 10 ? 26 35 39 43

74 74 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 OUI! 10 ? 26 35 39 43

75 75 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 NON! 10 ? 26 35 39 43 33

76 76 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 OUI! 10 ? 26 35 39 43 33

77 77 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) Mise à jour des valeurs -11 10 26 35 39 43 33 Terminée

78 78 On rajoute une contrainte supplémentaire deb F BC A D E GH fin 3 -2 5 4 4 6 12 9 -6 10 9 8 16 8 3 15 13 4 (0) (4) (20) (22) (21) (34) (32) (38) (42) (13) -11 10 26 35 39 43 33 Nouvel ordonnancement « au plus tard »/date finale 43 : Deb A B C D E F G H fin Ancien 0 10 8 4 20 22 21 29 38 42 Nouveau 0 10 8 4 21 17 22 30 33 43


Télécharger ppt "1 Licence dinformatique Algorithmique des graphes Problèmes dordonnancement. Utilisation de ce document strictement réservée aux étudiants de l IFSIC dans."

Présentations similaires


Annonces Google