Vous êtes sur la page 1sur 7

Chapitre 6 : Problèmes d’ordonnancement Préparé par Mr: A.

SACI
Module : Recherche Opérationnelle, 3ème Année Ingénieur Année universitaire : 2007/2008

Chapitre 6 Chapitre

Problèmes d’ordonnancement
1. Problèmes d'Ordonnancement
Les problèmes d'ordonnancement sont apparus au départ dans la planification de
grands projets. Le but était de gagner du temps sur leur réalisation (minimiser la durée de
réalisation d’un projet). De tels projets sont constitués de nombreuses étapes, également appelées
tâches.
Des relations temporelles existent entre ces tâches. Par exemple :
 Une tâche doit commencer à une date précise.
 Un certain nombre de tâches doivent être terminées pour pouvoir en démarrer une autre.
 Deux tâches ne peuvent être réalisées en même temps (elles utilisent un même processeur par exemple)
 Chaque tâche nécessite une certaine quantité de main d'œuvre. Il faut donc éviter, à chaque instant,
de dépasser la capacité totale de main d'œuvre disponible.

Toutes ces contraintes ne sont pas simples à prendre en compte dans la résolution du
problème. Ici, nous allons nous intéresser uniquement aux deux premiers types de contraintes.
Résoudre un problème d’ordonnancement, c’est d’abord donner l’ordre dans lequel
doivent être exécutées les tâches, de façon à minimiser, la durée d’exécution totale du
projet, tout en satisfaisant l’ensemble de contraintes. A partir de cet ordonnancement, nous
verrons que le temps de certaines étapes peut éventuellement être modifié sans entraîner un
retard du projet, alors que d'autres, les tâches dites "critiques", retardent entièrement le projet
au moindre retard local.

Deux grandes méthodes sont utilisées pour résoudre les problèmes d’ordonnancement
de projet, on a la méthode américaine CPM (Critical Path Method) avec sa variante PERT
(Program Evaluation and Review Technique) et la méthode française MPM (Méthode des
potentiels). Nous nous intéressons à la méthode PERT.

2. Méthode PERT (1957)


Pour présenter ces problèmes d'ordonnancement, on peut utiliser la méthode PERT
(Program Evaluation and Review Technique) qui consiste à mettre en ordre sous la forme
d'un graphe dit « réseau PERT » ou diagramme « événement-tâche », plusieurs tâches qui
grâce à leur dépendance et à leur chronologie concourent toutes à la réalisation d'un projet.
Cette méthode a été créée en 1957 et permet de calculer le meilleur temps de réalisation d'un
projet et d'établir le planning correspondant.
2.1. Résolution du problème d’ordonnancement par la méthode PERT

La résolution du problème d’ordonnancement1 se fait en deux grandes étapes :


Etape 1 : (Modélisation du problème) cette étape consiste à :
 Etablir la liste des tâches.
 Déterminer les contraintes d’antériorité (précédence).
 Tracer le réseau PERT.

1
Objectif : détermination de la durée minimale de réalisation d’un projet.

Département d’Informatique (Université de BATNA) Page 1/7


Chapitre 6 : Problèmes d’ordonnancement Préparé par Mr: A.SACI
Module : Recherche Opérationnelle, 3ème Année Ingénieur Année universitaire : 2007/2008

Etape 2 : (Résolution du problème) cette étape consiste à :


 Calculer les dates des tâches et déterminer le chemin critique.
 Calculer les marges de chaque tâche.
2.1.1.  Etape 1 (Modélisation du problème)

1. Etablir la liste des tâches


Cette étape consiste à :
• Donner la liste exhaustive des tâches à exécuter.
• Evaluer la durée de chaque tâche.
• Codifier les tâches afin de faciliter la construction du réseau (A, B, C, D,…)
Exemple :
On veut construire une maison, ce qui consiste à :
 Etudier, réaliser et accepter les plans de construction,
 Préparer le terrain,
 Commander les matériaux de construction (bois, briques, ciment, tôle pour le toit),
 Creuser les fondations,
 Commander les portes et les fenêtres,
 Livrer les matériaux de construction,
 Couler les fondations,
 Livrer les portes et les fenêtres,
 Construire les murs et le toit,
 Mettre en place les portes et les fenêtres.
Code Désignation (Les tâches) Durée (jours)
A Etude, réalisation et acceptation des plans 4
B Préparation du terrain 2
C Commande matériaux (bois, briques, ciment, tôle pour le toit) 1
D Creusage des fondations 1
E Commandes portes, fenêtres 2
F Livraison des matériaux 2
G Coulage des fondations 2
H Livraison portes, fenêtres 10
I Construction des murs, du toit 4
J Mise en place portes et fenêtres 1
2.   Détermination des contraintes d'antériorité (précédence)

En répondant à la question suivante :


• Quelle(s) tâche(s) doit être terminée immédiatement avant qu'une autre ne commence ?
Pour le problème de construction d’une maison, on obtient le tableau suivant :
Tâche Tâche(s) immédiatement antérieure(s)
A -
B -
C A
D A, B
E A
F C
G D, F
H E
I G
J H, I

Département d’Informatique (Université de BATNA) Page 2/7


Chapitre 6 : Problèmes d’ordonnancement Préparé par Mr: A.SACI
Module : Recherche Opérationnelle, 3ème Année Ingénieur Année universitaire : 2007/2008

3. Tracer le réseau PERT

Un réseau PERT est constitué par des évènements et des tâches (A, B, C, … etc).
Le code de présentation est le suivant :
• On symbolise une tâche par un arc (au-dessus de l’arc on inscrit le code de la tâche et sa durée).
• On symbolise un évènement par un sommet (le commencement ou la fin d'une tâche).
Exemple : (représentation de la tâche A)
La tâche A Durée de la
tâche A
A,5
Evènement 1 : 1 2 Evènement 2 :
(Le début de la tâche A) (La fin de la tâche A)

Remarques :
 Chaque tâche est représentée par un et un seul arc (une tâche ne peut être représentée qu'une fois)
 Deux tâches ne peuvent être identifiées par deux arcs ayant la même extrémité initiale et la
même extrémité finale (Réseau PERT est un graphe simple).
A,5
2 1 A,5 1
A,5 A,5 3
1 3
1 2
B,3 B,3 B,3 B,3 4
3 2 2
Non autorisée Autorisée Autorisée Autorisée

Les différentes représentations possibles des tâches :


Les tâches peuvent être :
’ Successives : elles se déroulent les unes après les autres, séparées par des évènements.
Soit A et B deux tâches, tel que la tâche A précède la tâche B. On représente
chaque tâche par un arc et deux évènements (début et fin de la tâche) sans représenter la
relation de précédence entre A et B -figure 1-.
A,5 B,3
1 2 3 4

Figure 1 : Représentation des tâches A et B

Et pour intégrer la relation de précédence entre A et B, on rajoute une tâche


appelée fictive (arc pointillé) de durée nulle dont son extrémité initiale est l’évènement
de fin de la tâche A et son extrémité finale est l’évènement de début de la tâche B
comme le montre la figure suivante.
A,5 B,3
1 2 f,0 3 4

Figure 2 : Représentation de tâches A et B et la relation de précédence entre


elles par arc fictif
Pour simplifier la représentation, on peut supprimer la tâche fictive et coïncider
les évènements 2 et 3 (figure 3).
A,5 B,3
1 2 4

Figure 3 : Représentation de tâches A et B et la relation de précédence entre


elles sans arc fictif 

Département d’Informatique (Université de BATNA) Page 3/7


Chapitre 6 : Problèmes d’ordonnancement Préparé par Mr: A.SACI
Module : Recherche Opérationnelle, 3ème Année Ingénieur Année universitaire : 2007/2008

’ Simultanées : elles se déroulent en même temps.


Soient A, B, C et D quatre tâches tel que :
- La tâche A précède les tâches D et C.
- La tâche B précède la tâche C.
On remarque que ni la tâche A précède B ni la tâche B précède A, donc ces deux tâches
peuvent s’exécuter simultanément ; on peut les représenter par deux arcs qui ont la même
extrémité initiale (figure 4).
La tâche D est précédée par la tâche A, donc l’événement de début de D est celui de fin de
la tâche A (figure 5).
A,5 2 A,5 D,2
2
4
1 1
B,3 B,3
3 3

Figure 4 : Les tâches A et B Figure 5 : Les tâches A, B et D


Pour représenter la tâche C qui est précédée par A et B, nous devons représenter C de telle
sort que l’événement de début de C soit celui de fin des deux tâches A et B, pour cela, nous
considérons que l’évènement de début est l’évènement de fin de B (B précède C) et nous
rajoutons un arc fictif de l'évènement 2 à l'évènement 3 qui signifie que A précède C comme le
montre la figure 6.
D,2
A,5 2 4 1 A,5
C,2
1 f,0 3 4
B,3 B,3
C,4 5 2
3
Figure 6 : Les tâches A, B, C et D Figure 7 : Les tâches convergentes A et B
’ Convergentes : elles aboutissent à un même évènement.
Soient A, B et C trois tâches tel que :
- La tâche A précède la tâche C.
- La tâche B précède la tâche C.
On remarque que la tâche C est précédée par les deux tâches A et B (la tâche C ne
commence son exécution sauf si les deux tâches A et B se terminent) ; l’évènement de début
de la tâche C coïncide avec les évènements de fin des deux tâches A et B (figure 7).
Remarque :
Pour tracer le réseau PERT, on regroupe tous les sommets sans prédécesseurs en un seul
sommet «d» qui représente l’entrée du réseau (évènement de début du projet), et tous les
sommets sans successeurs en un seul sommet «f» qui représente la sortie du réseau (évènement
de fin du projet).

Le réseau PERT pour l’exemple de construction d’une maison est le suivant :

4 H,10
E,2
A,4 C,1 F,2 I,4 J,1
G,2
d 1 3 5 6 7 f

B,2 D,1

2
Figure 8 : Réseau PERT (construction d’une maison)

Département d’Informatique (Université de BATNA) Page 4/7


Chapitre 6 : Problèmes d’ordonnancement Préparé par Mr: A.SACI
Module : Recherche Opérationnelle, 3ème Année Ingénieur Année universitaire : 2007/2008

2.1.2 Etape 2 (Résolution –détermination de la durée minimale de réalisation du projet-)

1. Calcul des dates des tâches et détermination du chemin critique


Pour déterminer et calculer les dates des tâches nous procédons en 2 étapes :
’ Calcul "aller" = dates au plus tôt des évènements : une fois qu’on aura établi le réseau PERT,
on pourra déterminer pour chaque tâche du projet la date à laquelle elle peut au plus tôt se réaliser.
La technique de calcul de ces dates est la suivante :
• On considère la date de début au plus tôt de l’évènement « d » (début du projet) égale à 0.
• Un évènement « i » ne se réalise que si tous les évènements le précédant se sont réalisés. La date
de début au plus tôt d’un évènement « i » notée « ti » se calcule comme suit :
ti=max{tj+d(j,i)/j∈Γ-(i)} le max étant pris sur les prédécesseurs de « i ».
Remarques :
Pour le sommet f (fin du projet), tf correspond à la durée minimale de réalisation du projet.
La date de début au plus tôt d’une tâche A « tA » est égale à la date de début au plus tôt de
l’évènement où elle est issue (évènement de début de la tâche).
Les dates de début au plus tôt des tâches de l’exemple de construction d’une maison
sont représentées sur le réseau PERT suivant :
[06, ]

4 H,10
[04, ] E,2 [16, ] [17, ]
[00, ] [05, ] [07, ]
A,4 C,1 F,2 I,4 J,1
G,2
d 1 3 5 6 7 f
[09, ]
B,2 D,1
2
[04, ]
Figure 9 : détermination des dates de début au plus tôt  

La durée minimale de réalisation du projet est : 17 jours.

’ Calcul « retour » = dates au plus tard des évènements : de la même manière on va déterminer
la date à laquelle un évènement peut au plus tard se réaliser sans retarder la fin du projet dans un
délai prévus. Pour cela, connaissant la date de fin du projet on pourra déterminer les dates au plus
tard à laquelle les évènements peuvent se réaliser. On note la date de début au plus tard d’un
évènement i « t*i ». La technique de calcul de ces dates est la suivante :
• Pour le sommet f (évènement de fin du projet) : la date de début au plus tard t*f=tf.
• Si un évènement a plusieurs successeurs, on calculera le minimum de la différence entre la
date au plus tard de ces évènements moins la durée des tâches qui y aboutissent. Pour
l’évènement « i » : t*i=min{t*j-d(i,j)/j∈Γ+(i)} le min étant pris sur les successeurs de « i ».
Les dates de début au plus tard des tâches de l’exemple de construction d’une maison
sont représentées sur le réseau PERT suivant :
[06,06]

4 H,10
[00,00] [04,04] E,2 [05,08] [07,10] [16,16] [17,17]
A,4 C,1 F,2 I,4 J,1
G,2
d 1 3 5 6 7 f
[09,12]
B,2 D,1

2 Date au plus tôt Date au plus tard


[04,09]
Figure 10 : détermination des dates de début au plus tard 
Département d’Informatique (Université de BATNA) Page 5/7
Chapitre 6 : Problèmes d’ordonnancement Préparé par Mr: A.SACI
Module : Recherche Opérationnelle, 3ème Année Ingénieur Année universitaire : 2007/2008

’ Détermination du chemin critique


Définitions :
Tâche critique : une tâche est dite « critique » si son exécution ne peut être
différée ou allongée sans retarder la fin du projet.
Chemin critique : est un chemin reliant d à f dont toutes ses tâches (arcs)
sont critiques ; ce chemin est le plus long chemin de d à f (le chemin
constitué de sommets ayant une date de début au plus tôt = sa date de début au
plus tard).
[06,06]

4 H,10
[00,00] [04,04] E,2 [05,08] [07,10] [16,16] [17,17]
A,4 C,1 F,2 I,4 J,1
G,2
d 1 3 5 6 7 f
[09,12]
B,2 D,1
2 Tâche critique
[04,09]
Figure 11 : détermination du chemin critique (tâches critiques) 
Remarque :
Soit R=(X,U,c) le réseau PERT d’un projet :
Une tâche A=(i,j)∈U est « critique » si :
Š ti=t*i (date de début au plus tôt de i = dates de début au plus tard de i) et
Š tj=t*j (date de début au plus tôt de j = dates de début au plus tard de j).
// i : l’évènement de début de la tâche A, j : l’évènement de fin de la tâche A.
Le chemin critique du réseau PERT de la figure 10 est : Cc=(D,1,4,7,F), donc les tâches
critiques sont : A, E, H et J. (les tâches en gras du réseau de la figure 11)
2.   Calcul des marges de chaque tâche

Chaque tâche a une date de début au plus tôt, et une date de début au plus tard, le
démarrage de cette tâche peut intervenir entre ces deux dates sans compromettre la date de
fin du projet. L’intervalle de flottement d’un évènement est égal à la différence entre la date
de début au plus tôt et celle au plus tard de l’évènement.
On distingue trois types de marges :
La marge libre « Ml » : est la durée de flottement ou le retard maximum que l’on peut
apporter au démarrage d’une tâche sans perturber la date de début au plus tôt de
l’évènement suivant (la date de début au plus tôt des tâches successeurs).
La marge Totale « Mt » : est le retard maximum que l’on peut apporter au démarrage d’une
tâche sans perturber la date de fin du projet (la date de début au plus tard des tâches
successeurs).
La marge certaine « Mc » : est le retard maximum que l’on peut apporter au démarrage
d’une tâche sans perturber la réalisation au plus tôt de l’évènement suivant bien que
l’évènement précédent n’a été réalisé qu’à sa date limite.
Soit une tâche « A » représentée par l’arc (i,j)(i : évènement de début, j : évènement de fin).
A,d(A)
i j La marge libre de la tâche A : Ml(A)= tj-(ti+d(A))
La marge totale de la tâche A : Mt(A)= t*j-(ti+d(A))
[ti,t*i] [tj,t*j]
La marge certaine de la tâche A : Mc(A)= tj-(t*i+d(A))
Figure 12 

Département d’Informatique (Université de BATNA) Page 6/7


Chapitre 6 : Problèmes d’ordonnancement Préparé par Mr: A.SACI
Module : Recherche Opérationnelle, 3ème Année Ingénieur Année universitaire : 2007/2008

Calcul des marges pour le problème de construction d’une maison :

Tâche Ml(i)= Mt(i)= Mc(i) =


Durée ti t*i tj t*j
T=(i,j) tj-(ti+d(A)) t*j-(ti+d(A)) tj-(t*i+d(A))
A=(d,1) 4 0 0 4 4 0 0 0
B=(d,2) 2 0 0 4 9 2 7 2
C=(1,3) 1 4 4 5 8 0 3 0
D=(2,5) 1 4 9 7 10 2 4 -3
E=(1,4) 2 4 4 6 6 0 0 0
F=(3,5) 2 5 8 7 10 0 3 -3
G=(5,6) 2 7 10 9 12 0 3 -3
H=(4,7) 10 6 6 16 16 0 0 0
I=(6,7) 4 9 12 16 16 3 3 0
J=(7,f) 1 16 16 17 17 0 0 0

Remarque : Sur le chemin critique, les marges totales des différentes tâches sont nulles.

Département d’Informatique (Université de BATNA) Page 7/7

Vous aimerez peut-être aussi