Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Recherche opérationnelle
*Un algorithme est une suite finie et non-ambiguë d’opérations ou d’instructions permettant
de résoudre un problème.
Problèmes de Prise de décision
l’entreprise
Interpretations
5
Voyageur de commerce
6
Domaines d'application
7
Exemple : La chaîne logistique
Définition 2 :
La fonction logistique de l’entreprise est
d’assurer au moindre coût la coordination
entre l’offre et la demande.
Plus précisément, la logistique “c’est
l’organisation de ce qu’il faut faire depuis
la commande jusqu’à la livraison au client
d’un bien ou service ”.
8
Production :
Maximiser le profit selon la disponibilité de la main
d'œuvre, la demande du marche, la capacité de
production, le prix de revient du matériau brut. . .
Transport :
Minimiser, à titre d’exemple, la distance totale
parcourue selon les quantités de matériaux à
transporter, la capacité des transporteurs, les points de
ravitaillement en carburant. . .
Stock
Le succès d’une organisation est déterminé, entre
autres, par un stockage intelligent.
9
Optimisation
Minimisation
Maximisation
•Les coûts
Profit •Les délais d’exécution (de
production)
10
Méthodes
Graphiques Algorithmiques
Inconvenient: Algorithme de
Valable en dim 2 Informatique
SIMPLEXE
uniquement
Programmation Logiciels de
Inconvenient:
informatique la R.O.
beaucoup de
calcul
•LINDO.
•Ms-Project
•STORM11
Bibliographie :
« Précis de recherche opérationnelle Méthodes et exercices
d'application » Robert Faure, Bernard Lemaire, Christophe Picouleau
Collection: Sciences Sup, Dunod 2009 - 6ème édition.
« Exercices Et Problèmes Résolus De Recherche Opérationnelle »
- Tome 3, dunod 2000. roseaux.
« Recherche opérationnelle de gestion » Azoulay. Tome 1, Dunod
1996
« Programmation linéaire par l’exemple » Droesbeke, Hallin et
Lelievre ellipses 1986
« Techniques et application de la recherche opérationnelle » Alain
martel. Gaëtan Morin - 1979
« Programmes, Jeux Et Réseaux De Transport » Claude Berge,
Dunod - 1962
« Invitation à la recherche opérationnelle » Kauffman-Faure Dunod,
« Exercices de recherche opérationnelle » Desbazeille Dunod,
« Outils mathématiques de gestion », Thierry Bertrand Édition
Bertrand-Lacoste
…….
…….
Chapitre I :
La programmation linéaire
Chapitre II :
La théorie des graphes
Chapitre I :
La programmation linéaire
• 1. Concepts fondamentaux
• 2. Résolution graphique
• 3. Résolution par l’algorithme de simplexe
• 4. Dualité
• 5. Applications économiques
14
Exemple introductif : Une usine peut produire cinq
produits (notés PROD1 à PROD5). La marge bénéficiaire
unitaire est donnée pour chacun des produits au tableau 1.1.
Modèle
Problème réel formulation mathématique Algorithme solution
Programmation
linéaire
Construction d’un PL
* Les contraintes sont toutes les relations entre les variables qui limitent les valeurs possibles que peuvent prendre ces
variables.
• Une unité de produit 1 demande 12 heures sur machine
à l’étape 1. Si x 1 unités de produit 1 sont produites par
semaine, cela demande 12 x 1 heures sur la machine 1.
Par un raisonnement semblable pour les autres
produits, on obtient finalement la contrainte :
• La deuxième contrainte concerne la limite
d’utilisation des machines à la deuxième étape.
30
Résolution d’un programme linéaire
• Selon la nature du PL, il peut être résolu de
manières différentes à savoir :
Représentation graphique (ou méthodes des droites
parallèles) c’est une représentation géométrique plane dans le
cas de deux variables
• ax by c 0 (a, b) (0,0)
•
• y mx p m0
•avec, m a b et p c b
•m est le coefficient directeur de (D)
• * Soit la droite (D) : 2x 3 y 6 0
• u (3,2) est un vecteur directeur de (D).
•* Pour construire cette droite, il suffit de connaître deux points :
• « Par deux points on ne fait passer qu’une droite et une seule »
•* Déterminons, x 0 3
- la droite x 1 y 2 0
• - la droite y 2
•
y y x 1
(D)
A
2 2
1
-3 0 3 x 0 1 3 x
y 2
• Soit la droite (D) d’équation :
ax by c 0 a, b 0,0
•Alors, les demi-plans de frontière (D) sont :
•L’ensemble des points de coordonnées (x,y) telles que :
ax by c 0
•L’ensemble des points de coordonnées (x,y) telles que :
ax by c 0
• Exemple : Résoudre graphiquement2 x 3 y 6 0
y
• Remarquons que pour l’origine :
2(0) 3(0) 6 0
• 2 Donc le demi plan ne contient
pas l’origine
0 3 x
Région admissible (ou faisable
ou possible)
Région limitée par l’ensemble des
équations de contraintes du
Contrainte de non négativité
Point intérieur
Point frontière
Point extrême
x1
2 4 6 8 10 12 14 16 18
Région admissible bornée
x2
x1
Région admissible non bornée
x2
x1
Solution optimale
une solution une infinité de pas de solution
optimale unique solutions optimales optimale finie
x2 x2 x2
x1 x1 x1
Exemple 1
Région admissible bornée :
une solution optimale unique
x2 maximiser z x1 2 x2
A (2,6) est l’unique sujet à
solution optimale
8
2 x1 x2 4
Zmax=14 x
A x2 8
6
1
x1 x2 4
x 5
4 1
x1, x2 0
x1
2 5 8
Exemple 2
Région admissible bornée :
une infinité de solutions optimales
x2 maximiser z 2 x1 2 x2
sujet à
8
2 x1 x2 4
Une infinité de x x2 8
solutions optimales 1
x1 x2 4
x 5
4 1
x1, x2 0
x1
2 5 8
Exemple 3
Région admissible non bornée :
pas de solutions optimales finies
maximiser z x1 x2
sujet à
x2 x1=8
1
2 x1 x2 8
x 8 x2 40
1
x1 8
8
x1 , x2 0
6
x1
2 4 6 8 10 12 14 16 18
Exemple 4
Région admissible non bornée :
une solution optimale unique
minimiser w x1 x2
sujet à
x2 x1=8
B(8,6) est l’unique 1
2 x1 x2 8
solution optimale x 8x 40
1 2
wmin=2 x1 8
8
x1, x2 0
B
6
-x1+8x2=40
4
x1
2 4 6 8 10 12 14 16 18
Exemple 5
Région admissible non bornée :
une infinité de solutions optimales
x2 mi z x1 1 / 2 x2
12 sujet à
x1 x2 8
10 x 8 x 40
1 2
8 2 x1 x2 12
x1, x2 0
6
Une infinité de
-x1+8x2=40
4 solutions optimales
x1
2 4 6 8 10 12 14 16 18
Chapitre 2:
Méthode du
Simplexe:
52
1. Introduction :
• L’algorithme de simplexe a servi, depuis
1949(*), à la résolution de nombreux modèles
linéaires relatifs à des problèmes de gestion, de
transport, d’affectation…
• Aujourd’hui, grâce à la puissance des
ordinateurs modernes et au perfectionnement
des procédés de calculs utilisés par cet
algorithme, on peut résoudre des modèles qui
comportent des milliers de contraintes et des
dizaines de milliers de variables. 53
Exemple
• Une usine fabrique 2 pièces P1 et P2 produites dans 2 ateliers A1
et A2
• Les temps d'usinage sont :
pour P1 : de 3 heures dans l'atelier A1 et de 6 heures dans A2
B 1
x admissible initialee2: 0
e1 3 4 1 0 160 1 , x2 , e1 ,
On attribue une valeur nulle à la
e2 6 3 0 1 180 marge globale : les variables Hors
Base (HB) sont nulles x1=0 et x2 =0,
c’est la solution de base admissible
-z 1200 1000 0 0 0
de départ
coefficients Coefficients de la valeur de la on fabrique 0 pièces P1 et 0
fonction économique
techniques fonction économique pièces P2 : aucun intérêt pratique
Les valeurs des variables dans la
La solution de base admissible initiale est : Base (B) sont données par :
(x1, x2 ,e1 ,e2) = (0, 0, 160, 180)
e1 160 3x1 4 x2 160
La dernière cellule donne la valeur de –z. Donc la
e2 180 6 x1 3x2 180
marge z =0. en effet : z 1200 x1 1000 x2 0
Elles se lisent dans la colonne b
La solution n’est pas optimale. On recherche donc
une solution de base meilleure : autre itération. e1 = 160 et e2 = 180
La dernière ligne donne les valeurs marginales (ou
il reste 160 h d'utilisation
taux de substitution) des variables hors base possible de A1 et 180 h de A2
x1 x2 e1 e2 b R
Déterminons une autre e1 3 4 1 0 160 160/3
solution de base e2 6 3 0 1 180 180/6
admissible
-z 1200 1000 0 0 0
La solution de base admissible initiale est (x1,x2,e1,e2)=(0,0,160,180) avec z =
0
La dernière ligne donne les valeurs marginales ou taux de substitution :
•Si x1 = 1, x2 = 0, e1 = 160, e2 =180 alors, z = 1200 dhs
•une augmentation de 1 unité de x1 ferait croître la fonction objectif de 1200
dhs,
•Si x1 = 0, x2 = 1, e1 = 160, e2 =180 alors, z = 1000 dhs
•une augmentation de 1 unité de x2 ferait croître la fonction objectif de 1000
dhs.
On a intérêt à augmenter la valeur de la fonction objectif le plus rapidement possible
donc à augmenter la variable ayant le plus grand coefficient strictement positif (cas
de maximisation) de la dernière ligne : x1 variable entrante dans la base
Supposons x1 augmente et x2 = 0, alors 6 x1 3x2 e2 180 x1 30
z 1200 x1 1000 x2 1200 30 36000
On a intérêt à prendre le maximum de x1 (les variables hors base restant nulles) :
x1=30. La deuxième contrainte sera saturée e2=0 : e2 variable sortante de (B).
z = 36000 dhs, en effet :
On augmente la fonction objective en faisant entrer une variable dans la base
prenant la place d'une variable qui va sortir de la base.
Critère de sélection
Variable entrante dans (B) Variable sortante de (B)
on exprime la fonction objectif en fonction des On effectue le rapport des seconds membres
seules variables hors base et on choisit la variable des contraintes aux coefficients strictement
pondérée par le cœfficient le plus élevé strictement positifs correspondants de la variable entrante
positif : on sélectionne la variable HB ayant le plus : on sélectionne la variable de la base ayant le
grand coefficient strictement positif dans la plus petit rapport positif dans la colonne R
dernière ligne
Le rapport des coefficients de la colonne C par les
Règle
coefficients strictement positifs de la colonne de la variable
Le pivot doit être égal à 1
entrante dans la base (x1)
Les coefficients de la ligne du
pivot sont divisés par le pivot
Le pivot est égal à 6
Ligne de pivot
e2 sortant dans la base
Les coefficients de la colonne
du pivot (sauf le pivot) sont nuls
HB
xx11
B x2 e1 e2 b R Les autres coefficients sont
e1 30 5/2
4 1 -1/2
0 70
160 160/3 obtenus par la règle du rectangle
e2 161 1/2
3 00 1/6
1 30
180 180/6
pivot Lpivot
-z 0
1200 1000
400 00 0
-200 0
-36000
x1 entrant de la base
Colonne de pivot Cpivot Av
Nv : nouvelle valeur Av : ancienne valeur
Nv Av (Cpivot Pivot ) Lpivot
Cpivot : colonne pivot Lpivot : ligne pivot
Les variables hors base sont nulles :
HB x1 x2 e1 e2 b R
B
e1 3 4 1 0 160 160/3 x2 = 0, e2 = 0
e2 6 3 0 1 180 30
on fabrique 0 pièces P2 et il reste
0 h d'utilisation disponible à A2
-z 1200 1000 0 0 0
La contrainte associée à e2 est
Tableau 1
saturée.
B HB x1 x2 e1 e2 b
La nouvelle solution de base réalisable
e1 0 5/2 1 -1/2 70
x1 1 1/2 0 1/6 30 est : (x1, x2, e1, e2) = (30, 0, 70, 0)
-z 0 400 0 -200 -36000 on fabrique 30 P1 et il reste 70h
d'utilisation disponibles à A1
La dernière ligne donne les valeurs marginales :
180 e2 3x2
z 1200 1000 x2 36000 200e2 400 x2 la marge est égale à z =36 000 dhs
6
•Une augmentation de 1 unité de x2 ,ici on augmente la production de 1 pièce de P2, ferait
croître la fonction objectif de 400 dhs, et une augmentation de 1 unité de la variable d’écart
e2 (c- à –d, diminution du second membre de l'équation correspondante de 1 unité, ici on
diminue la disponibilité de 1 h à A2) ferait diminuer la fonction objectif de 200 dhs
On a intérêt a augmenter x2 : x2 variable entrante dans la base
e1 70 5 2 x2 0 x 28
2 x2 28
x1 30 1 2 x2 0 x2 60
e1 est la variable sortante de la base
x1 x2 e1 e2 b R Les variables hors base sont nulles
e1 0 5/2 1 -1/2 70 28 (Les contraintes associées sont
x1 1 1/2 0 1/6 30 60
saturées) : e1=0 et e2=0
il reste 0 h d'utilisation
•Tableau -zfinal
0 400 0 -200 -36000
disponible aux ateliers A1 et A2
x1 x2 e1 e2 b
x2 0 1 2/5 -1/5 28 La nouvelle solution de base réalisable
x1 1 0 -1/5 4/15 16
est : (x1, x2, e1, e2) = (16, 28, 0, 0)
-z 0 0 -160 -120 -47200
on fabrique 16 pièces P1 et 28
pièces de P2
Pour augmenter e1 d’une unité, il faut : Et la marge est égale à 47 200 dhs
• diminuer x2 de 2/5
• diminuer x1 de (-1/5)
La variation correspondante de la fonction économique : -(-1/5) 1200-(2/5) 1000 = -160
D’où, augmenter e1 d’une unité diminuerait la fonction objectif de 160 dhs
Pour augmenter e2 d’une unité, il faut :
• diminuer x2 de (-1/5)
• diminuer x1 de 4/15
La variation correspondante de la fonction économique :
-(4/15) 1200-(-1/5) 1000 = -120
D’où, augmenter e2 d’une unité diminuerait la fonction objectif de 120 dhs
On retrouve ainsi la solution optimale de la résolution graphique.
Interprétation graphique de la
méthode du simplexe
A = (0,0) et z = 0 dhs
50
C = (16,28) et z = 47 200 dhs
40
30 C
20
Donc C est l’unique solution optimale et
A 10 20 30 40 50 60
Critères d'arrêt des itérations de la méthode du simplexe lors
de la résolution d’un problème de maximisation
Si tous les coefficients de la dernière ligne, relatifs aux variables HB, sont négatifs ou nuls,
l’algorithme s’arrête et la solution trouvée est optimale.
x1 x2 e1 e2 b
x2 0 1 2 -1 20
x1 1 0 -1 2,5 6
-z 0 0 -160 -80 -40
S'il existe une variable HB (non artificielle) ayant un coefficient positif dans la dernière ligne et
telle que tous les coefficients correspondants dans le tableau soient nuls ou négatifs, alors la
solution est infinie
x1 x2 e1 e2 b
e1 0 -2 1 -1 20
x1 1 0 0 2,5 3
-z 0 16 0 -3 -32
•Si, à la fin des itérations, une variable est HB avec un coefficient nul dans la dernière ligne, alors
on a une arête (plan …) optimale. Les autres sommets solutions sont obtenus en faisant rentrer
cette variable dans la base. x x e e b
1 2 1 2
x2 0 1 2/5 -1/5 28
x1 1 0 -1/5 4/15 16
-z 0 0 0 -120 -47200
Exercice 7
déjà traité par la méthode graphique et par le solveur d’Excel
Brut A B
Essence 0,2 0,4
Gazole 0,4 0,2
Fuel lourd 0,4 0,4
Le traitement d’une tonne de brut A procure une recette de 140 UM Le
traitement d’une tonne de brut B procure une recette de 150 UM
Du fait des contraintes de stockage, la fabrication de chaque produit est
limitée de la manière suivante : Essence : 1 200 t, Gazole : 1 200 t, Fuel
lourd : 1 400 t.
Quelles quantités de ces pétroles bruts devra t-on traiter pour maximiser
la recette ?
Modélisation mathématique
Variables économiques ou de décision :
x1 = quantité de brut A à traiter
x2 = quantité de brut B à traiter
La forme standard la forme canonique
x1 0, x2 0 x1 , x2 , e1 , e2 , e3 0
x1 x22 e1 e2 e3 b
e1 0,5
0,2 1
0,4 2,5
1 0
0 0
0 3000
1200
e2 0,3
0,4 0
0,2 -0,5
0 1 0 600
1200
e3 0,2
0,4 0
0,4 -1
0 0
0 1
1 200
1400
-z 65
140 0
150 -375
0 0
0 0
0 -450000
0
x1 x2 e1 e2 e3 b
Tableau final
x2 0 1 5 0 -2,5 2500
e2 0 0 1 1 -1,5 300
x1 1 0 -5 0 5 1000
astucieuse.
intéressantes
Passage du programme primal au programme
dual et interprétation économique du dual
•
• A tout programme linéaire primal correspond un programme linéaire dual
max z c1 x1 c2 x2 cn xn
a11x1 a12 x2 a1n xn b1 min w b1 y1 b2 y2 bm ym
a x a x a x b
21 1 22 2 2n n 2
a11 y1 a21 y2 am1 ym c1
sc a y a y a y c
a x a x a x b
12 1 22 2 m2 m 2
m1 1 m2 2 mn n m sc
1 2
x , x , , x n 0 a y a y a y c
1n 1 2n 2 mn m n
y1 , y2 , , ym 0
La variable de décision xj en base (xj > 0) La variable d’écart tj hors base (tj = 0)
La variable xj de décision hors base (xj = 0) La variable d’écart tj en base (tj > 0)
La variable d’écart ei en base (ei > 0) La variable de décision yi hors base (yi = 0)
La variable d’écart ei hors base (ei = 0) La variable de décision yi en base (yi > 0)
Signe
Ligne xj en base Colonne tj hors base
opposé
Signe
Ligne ei en base Colonne yi hors base
opposé
Signe
Colonne xj hors base Ligne tj en base
opposé
Signe
Colonne ei hors base Ligne yi en base
opposé
Signe
Colonne second membre Taux marginaux de substitution
opposé
Taux marginaux de substitution des Signe Colonne second membre des variables de
variables hors base opposé base associées
Exercice 6: déjà traité
Problème de maximisation - Problème Primal
•Une usine fabrique 2 pièces P1 et P2 usinées dans deux ateliers A1 et A2 . Les temps
d'usinage sont :
pour P1 : de 3 heures dans l'atelier A1 et de 6 heures dans A2
y1 y2 max
x1 3 6 1200
x2 4 3 1000
Dual : écriture en ligne
min 160 180
max z 1200 x1 1000 x2 0e1 0e2 min w 160 y1 180 y2
3x1 Résolution
4 x2 e1 0 160 3 y1 6 y2 1200
sc 6 x1 3x2 par
0 e2 180 sc 4 y1 3 y2 1000
x , 0 y , 0
1 x2 , e1 ,
simplexe e2 1 y2
•Tableau final du programme primal
HB
x1 x2 e1 e2 b
B
Interprétation : A l’optimum,
x2 0 1 2/5 -1/5 28
La variable de base x1 = 16 donc le taux marginal de
x1 1 0 -1/5 4/15 16
substitution de la variable d’écart t1 est égal à -16 et la
-z 0 0 -160 -120 -47200
valeur de t1 est nulle (t1 hors base)
La variable de base x2 = 28 donc le taux de substitution
•Tableau final du programme dual de la variable d’écart t2 est égal à -28 et la valeur de t2
est nulle (t2 hors base)
HB
y1 y2 t1 t2 b
B Le taux marginal de substitution de la variable d’écart
y2 0 1
-
1/5 120 hors base e1 est égal à -160 donc la variable de base
4/15
y1 = 160
y1 1 0 1/5 -2/5 160
Le taux marginal de substitution de la variable hors base
-w 0 0 -16 -28 -47200
e2 est égal à -120 donc la variable de base y2 = 120
Les deux contraintes du dual sont saturées, donc les
•A l’optimum, on a : deux valeurs optimales du dual sont non nulles, ainsi, les
z = w = 47200 dhs contraintes du primal correspondantes sont saturées.
(x1 , x2) = (16 , 28)
(y1 , y2) = (160 , 120)
Exercice 4: déjà traité
Problème de maximisation - Problème Primal
Quelles quantités des pétroles Bruts devra t-on traiter pour maximiser la recette ?
x1 : quantité de brut A à traiter
x2 : quantité de brut B à traiter
vente est au moins égale au bénéfice qu’il obtient en traitant les bruts.
• Mise en équation :
min w 1200 y1 1200 y2 1400 y3
• y1 : prix de l’essence (en UM) 0.2 y1 0.4 y2 0.4 y3 140
•
y2 : prix du gazole (en UM)
sc 0.4 y1 0.2 y2 0.4 y3 150
• y3 : prix du fuel lourd (en UM)
y , y , y 0
1 2 3
y1 y2 y3 max
Dual : écriture en ligne
Définitions et Applications
II- Méthodes graphiques d’optimisation
La gestion de projet revêt une importance vitale pour l’entreprise. Celle-ci est
appelée pour survivre, à faire des investissements qui nécessitent une
planification rigoureuse, de l’ordonnancement des activités et des coûts et des
charges,…
A- La planification
La planification permet de définir le plan directeur du projet qui décrit les
objectifs et la nature de l’organisation à mettre en place. Elle détermine avec
précision, tout ce qui doit être fait ( et comment et par qui) en respectant toutes
les contraintes liées au temps, aux coûts et à la qualité. Elle comporte 4
dimensions:
84
1- Méthode de GANTT (1918)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
A
B
C
D
E
Exemple 2 :
Une entreprise veut fabriquer un prototype de vélo
à moteur. Pour cela plusieurs activités sont
nécessaires selon le bureau méthode.
TAF : tracez le diagramme de GANTT sachant que
la fabrication du prototype doit commencer le 3
octobre.
Tâches Tâches Antérieures Durée en jours
A ---- 2
B ---- 1
C E;B;H 1
D C 2
E A 1
F E;B;H 2
G D;F 1
H ---- 3
3 Oct 4 Oct 5 Oct 6 Oct 7 Oct 8 Oct 9 Oct
A
B
Flottement
C
D
E
F
G
H
X3
• X = {x1 , x2 , x3 , x4 , x5 , x6} X5
X4
X1
X5
•x6 •x4, x5 •-
Détermination des niveaux des sommets d’un graphe
sans circuit
Dans un graphe sans circuit, le niveau d'un sommet x est la longueur du plus long
chemin ayant pour extrémité x
• No={sommets de niveau 0}
Sommets x Précédents P(x)
• ={sommets n’ayant pas de
précédents}
x1 -
x2 x1, x3 • ={x1}
x3 x1
x4 x2, x3 • Tous les sommets x1 sont barrés
x5 x4
x6 x4, x5 • Les sommets barrés sont considérés
• comme n’existants plus
Sommets x Précédents P(x)
x1 - • N1={sommets de niveau 1}
x2 x1, x3 • ={sommets n’ayant pas de
x3 x1 précédents}
x4 x2, x3 • ={x3}
x5 x4
x6 x4, x5
• Tous les sommets x3 sont barrés
Sommets x Précédents P(x) • N2={sommets de niveau 2}
x1 - • ={sommets n’ayant pas de
précédents}
x2 x1, x3
• ={x2}
x3 x1
x4 x2, x3 • Tous les sommets x2 sont barrés
x5 x4
x6 x4, x5 • Les sommets barrés sont considérés
comme n’existants plus
Sommets x Précédents P(x)
x1 - • N3={sommets de niveau 3}
x2 x1, x3 • ={sommets n’ayant pas de
précédents}
x3 x1
• ={x4}
x4 x2, x3
x5 x4 • Tous les sommets x4 sont barrés
x6 x4, x5
• N4={sommets de niveau 4}
Sommets x Précédents P(x)
• ={sommets n’ayant pas de
x1 - précédents}
x2 x1, x3 • ={x5}
x3 x1
x4 x2, x3 • Tous les sommets x5 sont barrés
x5 x4
x6 x4, x5 • Les sommets barrés sont considérés
comme n’existants plus
Sommets x Précédents P(x)
x1 - • N5={sommets de niveau 5}
x2 x1, x3 • ={sommets n’ayant pas de
précédents}
x3 x1
x4 x2, x3 • ={x6}
x5 x4
x6 x4, x5 • Tous les sommets x6 sont barrés
• N4 = { x 5 }
Tous les sommets ayant été barrés
• N5 = { x6 }
• Les niveaux sont :
Sommets x Précédents P(x)
•
Utilité N
de la notion de niveaux
0 = { x1x1}
x2
N1 = { -x3 }
N = {x
x1, x3
2 2 }
x3 x1
• N3 = { x4x } N4 = x{ ,xx5 } N5 = { x6 }
4 2 3
x5 x4
x6 x4, x5
construire le graphe ordonné par niveaux
La recherche des chemins optimaux se fait plus facilement sur
un graphe ordonné par niveaux
x1 x3 x4 x5
x6
x2
N0 N1 N2 N3 N4 N5
Définitions
• Un chemin est une suite ordonnée (x1,...,xn) de sommets reliés par des
arcs :
i 1,, n 1 xi 1 S xi
• Un circuit est un chemin (x1,...,xn) tel que x1 = xn
• Dans un graphe sans circuit. A chaque arc (x,y) est associé un nombre
positif V(x,y) appelé la valeur de l'arc
V x , x
i 1
i i 1
Les problèmes d’ordonnancement
•L’objectif est de :
Une tâche x ne pouvant débuter que lorsque toutes les tâches qui y
aboutissent sont terminées.
On rajoute au graphe un sommet terminal permettant de dater la fin
des travaux
La représentation graphique est ordonnée par niveaux des sommets
(des tâches)
5
T1 T2
4
T3 8 T4
Opération x P(x)
O1 --
O2 O1
O3 --
O4 --
O5 O 2, O 3, O 4
O6 O 2, O 3
O7 O1
O8 O 5, O 7
O9 O 6, O 8
• N0={O1,O3,O4}
Méthode des Potentiels Metra
Détermination du niveau 1:
Opération x P(x)
O1 --
O2 O1
O3 --
O4 --
O5 O 2, O 3, O 4
O6 O 2, O 3
O7 O1
O8 O 5, O 7
O9 O 6, O 8
• N1={O2;O7}
Méthode des Potentiels Metra
Détermination du niveau 2:
Opération x P(x)
O1 --
O2 O1
O3 --
O4 --
O5 O 2, O 3, O 4
O6 O 2, O 3
O7 O1
O8 O 5, O 7
O9 O 6, O 8
• N2={O5, O6}
Méthode des Potentiels Metra
Détermination du niveau 3:
Opération x P(x)
O1 --
O2 O1
O3 --
O4 --
O5 O 2, O 3, O 4
O6 O 2, O 3
O7 O1
O8 O 5, O 7
O9 O 6, O 8
• N3={O8}
Représentation graphique opérations
(tâches)
durée
(mois)
opérations
antérieures
O1 4 -
O2 6 O1
Niveau 0 Niveau 1 Niveau 2 Niveau 3 Niveau 4
{O1,O3,O4} {O2,O7} {O5,O6} {O8} {O9} O3 4 -
O4 12 -
• O5 10 O2,O3,O4
O6 24 O2,O3
O7 7 O1
O8 10 O5,O7
? ? 4 ? ? 6 ? ?
O9 3 O6,O8
o1 o2 o6
4 4 24
6
? ? ? ? 7 ? ? ? ? 3 ? ?
o3 o7 o8 10 o9 F
4 10
? ? ? ?
o4 12 o5
Calendrier au plus tôt des tâches
• Tx est la date au plus tôt correspondant à la valeur du chemin de valeur
maximale aboutissant à x (algorithme de Ford)
On commence par les sommets de niveaux les plus faibles jusqu’aux
sommets de niveaux les plus élevés
de la durée du projet
T8 = Max [T7 + V(7,8) ; T5 + V(5,8)] = Max [4 + 7 ; 12 + 10] = Max [11 ; 22] = 22
T9 = Max [T6 + V(6,9) ; T8 + V(8,9)] = Max [10 + 24 ; 22 + 10] = Max [34 ; 32] = 34
TF = T9 + V(9,F) = 34 + 3 = 37
0 ? 4 4 ? 6 10 ?
o1 o2 o6
4 4 24
6
0 ? 4 ? 7 22 ? 34 ? 3 37 ?
o3 o7 o8 10 o9 F
4 10
0 ? ?
12maximale
Le chemin de valeur (durée 37 mois)
o4 aboutissant
12 à F est :o5 (O1, O2, O6, O9)
Calendrier au plus tard des tâches
• T*x est la date au plus tard à laquelle peut commencer une tâche
sans remettre en cause la date de fin des travaux
On commence par les sommets de niveau les plus élevés jusqu’aux
sommets de niveau les plus faibles
T*y1
y1
T*x
x T*y2
y2
Détermination des calendriers au plus tard de la réalisation de
chacune des tâches :
T*F = TF= 37
T*9 = T*F - V(9,F) = 37 - 3 = 34 Sur les tâches critiques
T*8 = T*9 - V(8,9) = 34 - 10 = 24 on a :
T*6 = T*9 - V(6,9) = 34 - 24 = 10
T*5 = T*8 - V(5,8) = 24 - 10 = 14 T*x = Tx
• T*7 = T*8 - V(7,8) = 24 - 7 = 17
T*2 = Min [T*5 - V(2,5) ; T*6 - V(2,6)] = Min [14 - 6 ; 10 - 6] = Min [8 ; 4] = 4
T*1 = Min [T*2 - V(1,2) ; T*7 - V(1,7)] = Min [4 - 4 ; 17 - 4] = Min [0 ; 13] = 0
T*3 = Min [T*6 - V(3,6) ; T*5 - V(3,5)] = Min [10 - 4 ; 14 - 4] = Min [6 ; 10] = 6
T*4 = T*5 - V(4,5) = 14 - 12 = 2
0 0 4 4 4 6 10 10
o1 o2 o6
4 24
4 6
0 6 4 17 7 22 24 34 34 3 37 37
o3 o7 o8 10 o9 F
10
4
0 2 12 14
o4 12 o5
Il y‘a deux types de retard relatif à l’exécution
des tâches sans retarder l’achèvement du projet
x
Ty2
y2
Marge totale Marges libres
• mL(x) = min [Ty - Tx - V(x,y)]
• mt(x) = T*x - Tx • Le min étant pris sur les suivants y de x
• mL(O1) = Min[T2-T1-V(1,2);T7-T1-V(1,7)]
• mt(O1) = T* 1 – T1 = 0 - 0 = 0 0• 0 4 4 4 =6 Min[0;0]=0
10 10
24
o1 o2 o6
• mt(O2) = T*2 – T2 = 4 - 4 = 0 • m (O ) = Min[T6-T2-V(2,6);T5-T2-V(2,5)]
4 L 42
• = Min[0;2]=0
6
• mt(O3) = T*3 – T3 = 6 - 0 = 6 0 6 4 17 7
22 24 34 34 3 37 37
•o3 mL(O3)o=7 Min[T6-T3-V(3,6);To85-T10 o9
3-V(3,5)]
F
• mt(O4) = T* 4 – T4 = 2 - 0 = 2 • = Min[6;8]=6
4
10
• mt(O5) = T*5 – T5 = 14 - 12 = 2 0• 2 mL(O4) = T5 - T12- V(4,5)
4
14 =0
o4 12 o5
• mt(O6) = T* 6 – T6 = 10 – 10 = 0 • mL(O5) = T8 - T5 - V(5,8) = 0
• mL(O9) = TF - T9 - V(9,F) = 0
Exercice 1 :
Une importante société de magasins alimentaires à grande surface
diversifie son activité en créant des commerces dans de petites villes.
La société crée un fonds de commerce qui est ensuite géré de façon
autonome par un commerçant franchisé.
Tout d’abord, la société réalise une étude d’implantation : étude de marché
sur un certain rayon d’action et choix de la localité où sera installé le
commerce.
A partir du jour où l’étude d’implantation est terminée, les tâches
suivantes doivent être exécutées.
Travail à faire :
1. Élaborer la matrice des niveaux
2. Représenter cette succession de tâches par un graphe MPM
3. Déterminer la durée minimale pour que le magasin soit ouvert à la
clientèle
4. Indiquer le chemin critique
5. Préciser à quelles dates au plus tard devront commencer les tâches qui
ne font pas partie du chemin critique.
Nature Durée Antériorité des
Tâche
(jours) tâches
A Recherche d’un local 50 -
B Recherche d’un franchisé 45 -
Constitution du dossier bancaire du
C 15 A, B
franchisé
Constitution du dossier à la chambre de
D 10 A, B
commerce pour les inscriptions obligatoires
E Formation du franchisé 30 B
Aménagement, plâtrerie-peinture du
F 20 A
magasin
G Réfection 8 A
H Équipement de la chambre froide 8 A, F
I Equipement des rayonnages 5 A, F
Implantation du magasin (disposition des
J 6 A,B, E, F, G, H, I
articles)
Tirage en imprimerie des feuillets
K 6 A, B, D
publicitaires
L Distribution de feuillets publicitaires 2 A, B, D, K
Liste et envoi des invitations pour
M 6 A, B, D
l’inauguration
N Inauguration du magasin 1 Toutes les autres
Exercice 2 :
Durée Opérations
tâches Nature de la tâche
(mois) pré-requises
a Terrassement, assainissement 3 -