Vous êtes sur la page 1sur 45

Ordonnancement (PERT&MPM)

Dr Oumar SOW
IRT3
ITMA
Introduction
(Historique et quelques définitions)
Le problème d’ordonnancement
La gestion d’un projet composé de plusieurs
tâches, présente de grands problèmes quant à
l’établissement d’un calendrier du
déroulement et du contrôle de leur exécution.
Dans le but de gagner du temps dans leur
réalisation ( minimiser la durée de réalisation
d’un projet) compte tenu des contraintes.
d’antériotrité reliant les différentes tâches i.e, une
tâche ne peut commencer que si une ou
plusieurs prennent fin, que sont apparus les
problèmes d’ordonnancement dans la
planification des projets.
A partir de cette planification, nous remarquerons
qu’un retard dans la réalisation de certaines
tâches dites critiques retardent le projet, alors
que d’autres tâches peuvent prendre du retard
sans influencer la durée du projet.
Pour résoudre de tels problèmes, deux
méthodes sont utilisées, on a la méthode
américaine CPM (Critical Path Method) avec
sa variante PERT (Program Evaluation and
Review Technique) et la methode française
MPM (Méthode des Potentiels Métra).
Nous nous intéresserons à ces deux méthodes
sur des exemples.
La méthode PERT
1. Présentation du réseau Pert:
La méthode Pert consiste à présenter un
problème d’ordonnancement de projet par un
graphe dit « réseau Pert » ou « diagramme
événement-tâche », qu’on note R=(X,U,d) où :
_un arc correspond à une tâche,
_la valeur d’un arc u représente la durée d’une
tâche d(u),
_un sommet est un événement signifiant le
début ou la fin d’une ou de plusieurs tâches.
En pratique, d(u) peut matérialiser un coût, une
distance, une durée (dans le réseau Pert, d(u)
représente une durée).
Exemple:

Durée de la tâche a
Tâche a

a;6

Fin de la tâche a
Début de la tâche a
RM: On rajoute deux sommets D et F au réseau
Pert représentant le début et la fin du projet.

• Exercice : Le responsable d’un projet


informatique a décomposé ce dernier en
l’ensemble des tâches suivantes: a, b, c, d, e,
et f. Les conditions d’antériorité et les durée
en jours de réalisation de celles-ci sont
représentées dans le tableau suivant :
Tâche Durée des tâches Tâches antérieures

a 6 /

b 3 /

c 1 b, a

d 2 a

e 4 d

f 1 c
Déterminer un calendrier de déroulement des tâches,
i.e déterminer les dates de démarrage de chaque
tâche, qui minimise le temps total de réalisation du
projet et indiquer les tâches critiques.
Solution
Représentation graphique du problème par le réseau
Pert R=(X,U,d)
Fig.1

d;2

a;6 e;4

U1;0

b;3
f;1

c;1

(R)
Les tâches a et b ne sont précédées par
aucune tâche, alors le début de ces tâches
coïncide avec le début du projet(D)
de même, les tâches e et f ne sont suivies
par aucune tâche, alors la fin de ces
taches coïncide avec la fin du projet(F).

2. Détermination du calendrier des dates au plus tôt


et des dates au plus tard:
2.1 Calendrier des dates au plus tôt des
événements:
On considère la date de début de l’événement D
(début du projet) égal à zéro (O). Un
événement x ne peut se réaliser que si tous
les événements qui le précédent se sont
réalisés.

On calcule alors la longueur maximale du


chemin aboutissant à x. La date au plus tôt
d’un événement x notée tx se calcule comme
suit :
tx=max [ty+d(y,x) /y appartenant à l’ensemble des
prédécesseurs de x] le max. étant pris sur les
prédécesseurs de x.
On a :
tD=0
tx1=tD+d(a)=0+6=6
tx2=max [tD+d(b);tx1+d(u1)]
=max [0+3;6+0]=6
tx3=tx1+d(d)=6+2=8
tx4=tx2+d(c)=6+1=7
tF=max [tx3+d(e);tx4+d(f)]
=max [8+4;7+1]=12

Remarque: tF correspond à la durée minimale de réalisation du


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

2.2. Calendrier des dates de début au plus tôt des tâches:


La date de début au plus tôt de la tâche a est égale à la date de
début au plus tôt de l’événement d’où elle est issue, on la note
Ta.
Ta=tx si la tâche a est issue de l’événement x
( x. a .y)

D’après fig1
Les dates au plus tôt des tâches:
Ta=tD=0; Tb=tD=0; Tc=tx2=6; Td=tx1=6; Te=tx3=8;
Tf=tx4=7

Sur la fig.2 en jaune la date au plus tôt des


événements.
d;2

a;6
e;4

U1;0

b;3

f;1

c;1

figure2
2.3. Calendrier des dates au plus tard des
événements:
Si un événement a plusieurs successeurs, on
calcule 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. On note la
date au plus tard d’un événement x par t*x.
t*F=tF pour le sommet fin du projet
t*x=min [t*y-d(x,y) / y appartenant à l’ensemble
des successeurs de x]; le mini. étant pris sur
les successeurs y de x.
Ona : les dates de début au plus tard des
événements en rouge sur la fig.2
Calculs :
t*F=tF=12
t*x3=t*F-d(e)=12-4=8
t*x4=t*F-d(f)=12-1=11
t*x2=t*x4-d(c)=11-1=10
t*x1=min [t*x2-d(u1); t*x3-d(d)]
=min [10-0; 8-2]=6
t*D=min [t*x1-d(a); t*x2-d(b)]
=min [6-6; 10-3]=0
2.4. Calendrier des dates de début au plus tard
des tâches :
La date au plus tard de la tâche a est égale à la
date au plus tard de l’événement auquel elle
aboutit, diminuée de la durée de la tâche. On
la note T*a.
T*a=t*y-d( x, y),si la tâche a va du sommet x au
sommet y
Dans le réseau de la fig1 : On a calculé les dates
de début au plus tard des tâches comme suit:
T*f=t*F-d(f)=12-1=11
T*e=t*F-d(e)=12-4=8
T*d=t*x3-d(d)=8-2=6
T*c=t*x4-d(c)=11-1=10
T*b=t*x2-d(b)=10-3=7
T*a=t*x1-d(a)=6-6=0
3.Analyse et identification des tâches
critiques:
La date au plus tôt fournit la date planifiée pour
chaque événement et les dates au plus tard
indiquent de combien un événement peut
être retardé sans retarder le projet, ceci
permet d’identifier les tâches critiques.
Une tâche i correspondant à l’arc (x,y) peut voir
sa durée augmentée d’un délai
δ(i)=t*y-tx-d(i)=T*i-Ti sans que ce retard ne se
répercute nécessairement sur la durée de
réalisation du projet.
Tâche critique:
Une tâche est dite critique si tout retard sur son
exécution se répercute automatiquement sur la
durée de réalisation du projet, autrement dit si
δ(i)=O (T*i=Ti).

Dans notre exemple le chemin critique est


(D,x1,x3,F) c’est le plus long chemin de
longueur 12.
d;2

a;6 e;4

Chaque tâche est critique sur ce chemin.


3.2 Calcul des marges :
On distingue:
 La marge libre : c’est le retard maximum que
l’on peut apporter au démarrage d’une tâche
sans perturber la date de réalisation au plus
tôt de l’événement suivant.
Soit une tâche i représentée par l’arc u=(x,y)
Ml(i)=ty-tx-d(i).
 la marge totale:
c’est le retard maximum que l’on peut apporter
au démarrage d’une tâche sans perturber la
date de fin du projet.
Mt(i)=t*y-tx-d(i)=T*i-Ti.
Conclusion:
Tâche Date de début Date de début Marge libre Marge totale
au plus tôt au plus tard

a 0 0 0 0

b O 8 3 8

c 6 10 0 4

d 6 6 0 0

e 8 8 0 0

f 7 11 4 4
La méthode MPM
1. Principe de la représentation:
_Un sommet du graphe correspond à une
opération (tâche).
_Un arc du graphe définit une relation
d’antériorité. La longueur de l’arc donne le
temps minimum qui doit s’écouler entre le
début de la tâche origine et le début de la
tâche extrémité.
Exemple:
Figure 1

Signifie: a doit précéder b, entre le début de a et le début


de b, il doit s’écouler au minimum 3 périodes.

NB: Lorsque les contraintes sont uniquement des contraintes de


succession ,la longueur de l’arc sera donc égale à la durée de la
tâche origine.
• Exercice: Un projet est composé de six tâches
dont les durées de réalisation et les
contraintes d’antérioté (de précédence) sont
données dans le tableau suivant :
Tâche Durée Tâches
précédentes
a 4 /
b 6 a
c 4 /
d 12 /
e 10 b,c,d
f 24 b,c
g 7 a
h 10 e,g
i 3 f,h
1- Représenter les tâche sur un graphe MPM.
2- calculer la durée minimale nécessaire pour la
réalisation du projet.
3- Déterminer les tâches critiques.
4- Dresser le tableau des marges.
Solution
Construction du graphe :
On ordonne le graphe par niveaux (en utilisant le
dictionnaire des précédents).
Soit No l’ensemble des sommets de niveau 0 : ce
sont les sommets n’ayant pas de précédent; donc
No={a, c ,d}.
Détermination du niveau 1 :
On va rayer les sommets de niveau 0 partout où ils
figurent dans la colonne p(x). Les sommets
correspondant aux lignes entièrement rayées
sont de niveau 1.
Ainsi de suite.
On a :
x P(x)
a /
b a N1={b, g}
c /
d /
e b,c,d
f b,c
g a
h e,g
i f,h
x P(x)
a /
b a
c /
N2={e, f}
d /
e b,c,d
f b,c
g a
h e,g
i f,h
De la même manière on obtient :
N3={h}; N4={i}.
Pour construire le graphe, les sommets seront
placés de gauche à droite en fonction de leur
niveau.
Un arc reliera un sommet i à un sommet j si j є
p(i).
Chaque sommet sera figuré comme suit:

x désigne le nom de la tâche


Tx la date de début au plus tôt de la tâche
T*x la de début au plus tard de la tâche
Fig.2

4 6
24
4
4
6
7
10 3

4
1O

12

N1 N2 N3 N4 N5
No
On a introduit ici une tâche supplémentaire F
(ou tâche fin) reliée à tous les sommets qui
n’avaient pas de suivant. Celle-ci nous
permettra de dater la fin du projet.
Calendrier au plus tôt :
On affecte pour longueur aux arcs la durée de la
tâche origine, dx désigne la longueur des arcs
partant du sommet x.
Pour les tâche de niveau 0 ,on pose Tx=0, ce qui
signifie que ces tâches peuvent commencer
immédiatement.
Pour les autres tâches x, on pose Tx= longueur
du chemin le plus long conduisant d’un
sommet de niveau 0 à ce sommet x
(procédure: algo. de Ford)
Tx donne la date au plus tôt à laquelle peut
commencer la tâche x.
F étant la tâche finale. TF est la date à laquelle
l’ensemble des travaux peut s’achever au plus
tôt. L’ensemble des arcs ayant contribué à la
détermination de TF constitue le chemin
critique.
Fig.2: niveau 0: Ta=Tc=Td=0
Niveau 1: Tb=Ta+4=4; Tg=Ta+4=4
Niveau 2: Tf=Tb+6=10; Te=Td+12=12
Niveau 3: Th=Te+10=22
Niveau 4: Ti=Tf+24=34
Niv.5 : TF=Ti+3=37
On voit en remontant que la détermination de
TF s’est faite par i, f, b, a.Le chemin critique
est donc le chemin a, b, f, i, F.
Calendrier au plus tard: notée T*x
Procédure:
1) On pose T*F=TF
2) Soit x un sommet dont tous les sommets
suivants y sont marqués (i.e T*y a déjà été
déterminé).
On a alors : T*x=min [ t*y-dx] pour y
appartenant à l’ensemble des suivants de x.
On a :
Tâche Durée : dx calculs Date au plus tard

F / T*F=TF=37 37

i 3 T*i=T*F-di=34 34

h 10 T*h=T*i-dh=24 24

f 24 T*f=T*i-df=10 10

e 10 T*e=T*h-de=14 14

g 7 T*g=T*h-dg=17 17

b 6 T*b=T*e-db=8 ou 4
T*b=T*f-db=4

a 4 T*a=T*g-da=13 ou 0
T*a=T*b-da=0

c 4 T*c=T*f-dc=6 ou 6
T*c=T*e-dc=10

d 12 T*d=T*e-dd=2 2
On voit que pour toutes les tâches critiques:
T*x=Tx
Marges :
La marge totale est:
Mt(x)=T*x-Tx
La marge libre est:
Ml(x)=min [Ty-Tx-dx] pour y appartenant à l’ens.
des suivants de x
NB: La marge libre est toujours inférieure ou
égale à la marge totale.
Tâche Calculs Marge libre
a Tg-Ta-4=0 ou 0
Tb-Ta-4=0

b Tf-Tb-6=0 0
c Te-TC-4=8 ou 6
Tf-Tc-4=6

d Te-Td-12=0 0
e Th-Te-10=0 0
f Ti-Tf-24=0 0
g Th-Tg-7=11 11
h Ti-Th-10=2 2
i TF-Ti-3=0 0
Conclusion :
Tâche Date de début Date de début Marge totale Marge libre
au plus tôt au plus tard
a 0 0 0 0
b 4 4 0 0
c 0 6 6 6
d 0 2 2 0
e 12 14 2 0
f 10 10 0 0
g 4 17 13 11
h 22 24 2 2
i 34 34 0 0
F 37

Vous aimerez peut-être aussi