Thèse
Thèse
Thèse
NOTES DE COURS
PAR
1
INTRODUCTION
• L’optimisation est une branche de la RO qui utilise les techniques mathématiques comme
la programmation linéaire et non linéaire pour dériver les valeurs pour des systèmes de
variables en vue d’optimiser la performance du système.
Après la 2GM, plusieurs applications en temps de paix ont émergé, engendrant l’utilisation de la
RO et de la science du management dans plusieurs industries et activités.
La recherche opérationnelle implique la recherche dans les différentes opérations et activités des
organisations. Ainsi, ses méthodes sont appliquées aux problèmes qui portent sur la conduite et la
coordination des opérations (activités) au sein d’une organisation. La nature de l’organisation
essentiellement immatérielle et en fait, la recherche opérationnelle a été appliquée de manière
extensive dans divers secteurs tels la manufacture, le transport, la construction, les
télécommunications, la planification financière, la santé, l’armée et les services publics. Ainsi, le
champ d’action de la recherche opérationnelle est très large.
La partie recherche du nom signifie que la recherche opérationnelle utilise une approche qui
ressemble à comment la recherche est conduite dans les disciplines scientifiques établies. Dans
une large mesure, la méthode scientifique est utilisée pour analyser le problème en question.
La recherche opérationnelle porte sur la gestion pratique de l’organisation. De ce fait, elle doit
fournir des conclusions positives et compréhensibles aux décideurs lorsque cela est nécessaire pour
la prise de décision. Elle nécessite de ce fait une approche pluridisciplinaire
Une autre caractéristique de la recherche opérationnelle est qu’elle offre une vue globale en
adoptant une approche organisationnelle. Ainsi, elle essaie de résoudre les conflits d’intérêt entre
les différentes parties de l’organisation en proposant la meilleure option pour l’ensemble de
l’organisation. Ceci ne veut pas dire que la résolution de chaque problème prend en compte toutes
les considérations explicites des différentes entités, mais plutôt que les objectifs poursuivis doivent
être cohérents à ceux de l’organisation dans son ensemble.
2
Une autre caractéristique est que la recherche opérationnelle recherche la solution optimale du
problème posé à l’organisation. Elle utilise de ce fait une approche de système et la solution est
fournie grâce à l’utilisation intensive des ordinateurs.
3
4. Algorithme / Logiciels de recherche opérationnelle
Tentative de définition
• Comment ordonnancer les tâches d’un projet en fonction de la main d’oeuvre, tout en
minimisant sa durée?
• Comment investir ses 1000 euros d’économie de sorte à maximiser le profit obtenu après
deux ans?
• Trouver un (plus court) chemin entre deux villes : problème du plus court chemin dans les
graphes
• Broadcast de coût minimum dans un réseau : problème des arbres recouvrant de poids
minimum.
4
II. Vue d’ensemble de la modélisation d’un problème de recherche opérationnelle
1. Détection
d’un problème
2. Formulation du
problème
5. Résolution du
problème
1. La détection d’un problème : Les nécessités de l’action viennent des expériences vécues ;
c’est la phase préscientifique.
2. La formulation du problème : Quel est le vrai problème à résoudre ? Quels critères
permettent de juger si le problème est résolu de façon satisfaisante ?
3. L’élaboration d’un modèle : Il s’agit de représenter les principaux aspects de la réalité
par un ensemble de formules, mathématiques le plus souvent qui mettent en jeu les
variables de décisions concernées et leurs interactions. On lance des hypothèses, on élabore
une théorie, on écrit un modèle. C’est la phase de conceptualisation, de construction
théorique ; en un mot, c’est la phase de modélisation.
4. La collecte des données : Il faut préciser les paramètres du modèle en s’appuyant sur
l’information recueillie dans l’environnement du problème à résoudre. L’élaboration du
modèle s’éclaire à la lanterne des données. Le processus peut requérir plusieurs cycles
impliquant les étapes 3, 4 et 5.
5. La résolution du modèle : C’est la phase où l’on souhaite recourir aux méthodes
appropriées déjà disponible si on a réussi à classer le problème parmi ceux pour lesquels,
on connait déjà une méthode d’approche. Sinon, il faut recourir à la simulation ou inventer
une technique de résolution.
6. La validation du modèle : On confronte les conclusions obtenues du modèle aux opinions
des personnes qui ont suffisamment d’expérience du problème traité pour apprécier ou
critiquer la pertinence de la solution proposée. Si les avis reçus sont négatifs, on peut alors
remettre en cause soit l’écriture du modèle retenu, soit la valeur de ses paramètres, soit les
5
critères d’appréciation de la solution. On peut aller jusqu’à remettre en cause l’approche
choisie pour résoudre le problème et partant le modèle retenu.
7. La prise de décision et l’implémentation de la solution : Comment implémenter la
solution obtenue ? Doit-on s’arrêter là ? Il y a ici un retour possible vers le modèle initial
pour le modifier ou l’enrichir des observations faites lors de la phase expérimentale. Une
fois les révisions nécessaires apportées, le modèle enrichi permettra de tirer des conclusions
mieux étayées.
BIBLIOGRAPHIE
• Hillier, F., Libermann, G. (2010), « Introduction to Operations research », 9th edition,
McGraw Hill, New York, 1073p.
• Norbert, Y., Ouellet, R., Parent, R., (2001), « La recherche opérationnelle », 3ème édition,
Gaëtan Morin éditeur, Quebec, 465 p.
6
Exercice 1 :
Un fabricant de gravier pour cours de maison en produit deux catégories : du gravier grossier et du gravier fin. Le
gravier grossier nécessite 2h de broyage, 5h de criblage et de 8h de séchage, tandis que le gravier fin nécessite six
heures de broyage, trois heures de criblage et deux heures de séchage. Le fabricant dispose de 36 heures pour le
broyage, de 30 heures pour le criblage et de 40 heures pour le séchage. La marge de profit est de 4000 FCFA par
unité de gravier grossier et de 5000 F par unité de gravier fin. Le fabricant désire maximiser sa marge bénéficiaire.
T.A.F : Procéder à la mise en équations du problème posé sous forme canonique et sous formes standard.
Exercice 2
L’entreprise ZOUZ fabrique pour des entreprises de quincaillerie des pièces en inox.
Ces pièces sont de trois types A B C. Elles sont fabriquées par lots de 50 dans un grand atelier où sont rassemblées
deux machines pour la découpe de l’inox, une machine pour l’emboutissage, deux machines pour le polissage et la
finition. Chaque machine fonctionne 120 heures par mois.
L’objectif de l’entreprise est de maximiser sa marge bénéficiaire globale tout en respectant les contraintes de
production.
1 a) Procéder à la mise en équations du problème posé sous forme canonique et sous forme standard.
Exercice 3
M° ZOP très soucieux de sa forme souhaite absorber chaque jour au minimum 36 unités de vitamine A ,28 unités de
vitamine C et 32 unités de vitamine D. Pour cela il décide d’acheter et de combiner deux marques M1 et M2 de
produits diététiques. La marque M1 coute 3000F et procure 2 unités de vitamine A, 2unités de vitamine C et 8 unités
de vitamine D. La marque M2 coûte 4000F et procure 3 unités de vitamine A, 2 unités de vitamine C et 2 unités de
vitamine D. M° ZOP souhaite obtenir au moindre cout la combinaison qui respectera ses exigences d’absorption.
7
Chapitre I : Introduction à la programmation linéaire
I Généralités
𝑀𝑎𝑥(𝑍 = ∑ 𝛼𝑘 𝑥𝑘 )
𝑘=1
𝑥1 𝑑1
𝐴( ) ≤ ( ⋮ )
⋮
𝑥𝑛 𝑑𝑛
{𝑥𝑘 ≥ 0 ∀ 𝑘 ∈ {1, 2, … , 𝑛}
On a 𝐴 ∈ 𝑀𝑚,𝑛 (𝑅)
𝑚𝑖𝑛(𝑍 = ∑ 𝑐𝑘 𝑥𝑘 )
𝑘=1
𝑥1 𝑑1
𝐴( ) ≥ ( ⋮ )
⋮
𝑥𝑛 𝑑𝑛
{𝑥𝑘 ≥ 0 ∀ 𝑘 ∈ {1, 2, … , 𝑛}
8
2. Déclaration et définition de la fonction économique du problème (ou fonction
objectif)
4. 4-Forme canonique
𝑀𝑎𝑥(𝑧 = 4𝑥 + 5𝑦)
2𝑥 + 6𝑦 ≤ 36
{
5𝑥 + 3𝑦 ≤ 30
8𝑥 + 2𝑦 ≤ 40
5. 5-Forme standard
𝑒2 = 30 − (5𝑥 + 3𝑦)
𝑒3 = 40 − (8𝑥 + 2𝑦)
Pour 𝑘 ∈ {1,2,3} 𝑒𝑘 est appelée variable d’écart associée à la kième contrainte principale.
REMARQUE 1 :
- Les contraintes de non négativité, habituellement requise pour chaque variable du modèle
- Les contraintes d’intégrité, ajoutée pour chaque variable dont les valeurs possibles sont
d’après le contexte, confinées aux nombres entiers
9
- Les contraintes technologiques : toutes les autres contraintes car le thème vient des
premières applications historiques, souvent tirées de contextes industriels qui faisaient
appel à diverses technologies.
z=3500𝑥+4500𝑦+4200𝑧
5-Forme standard
10
max(𝑧 = 3500𝑥 + 4500𝑦 + 4200𝑧)
3 3
𝑥 + 𝑦 + 𝑧 +𝑒1 = 240
2 2
1
𝑥 + 𝑧 + 𝑒2 = 120
2
2𝑥 + 𝑦 + 𝑧 + 𝑒3 = 240
{ 𝑥, 𝑦, 𝑒1 , 𝑒2 , 𝑒3 ≥ 0
Lorsque le nombre de variable de décision est au plus égal à deux, on peut résoudre le problème
au moyen d’une méthode graphique.
Pour identifier la bonne région par rapport à l’inéquation donnée, il suffit de tester l’un des trois
points O, I, J.
(𝐷1 ) ∶ 2𝑥 + 6𝑦 = 36
X y
A 0 6
B 18 0
(𝐷2 ) ∶ 5𝑥 + 3𝑦 = 30
X y
C 0 10
D 6 0
(𝐷3 ) ∶ 8𝑥 + 2𝑦 = 40
X y
E 5 0
F 0 20
11
20
F (D3)
C
10 (D2)
A
G
A 6
DSA H
(D1)
D
E 18
0 3 5 6
B
A
D S A : Domaine de Solutions Admissibles du problème. A
A l’optimum
𝑥 ∗ = 3, 𝑦 ∗ = 5 et 𝑧 ∗ = 37 (maximum de la fonction)
Conclusion
Ce fabricant de gravier doit produire trois unités de graviers grossiers, cinq unités de gravier fin
pour obtenir une marge bénéficiaire globale maximale de 37000 FCFA.
D’autre part, à l’optimum, les ressources broyage et criblage ont été entièrement utilisées tandis
qu’il reste encore 6 heures disponibles dans l’atelier séchage.
B. METHODE DU SIMPLEXE
Lorsque le nombre de l’ensemble des variables de décisions (VDO) du problème est strictement
supérieur 2, la méthode graphique devient inopérante. On a alors recours à une méthode
algébrique basée sur un algorithme appelé algorithme du simplexe.
I. L’ALGORITHME DU SIMPLEXE
a. Notion du point extrême
Définition
Exemple : Dans le problème du fabricant de gravier, le point A (0,6, 0, 12, 28) est un point extrême
de DSA.
13
1.) (T) contient une infinité de solutions mais en nombre fini points extrêmes
2.) Si la fonction-objectif à optimiser sur le domaine (T) admet un optimum alors cet
optimum est atteint en l’un des points extrêmes.
L’algorithme du simplexe a été conçu pour explorer uniquement l’ensemble des points extrêmes
du DSA. Il passe d’un point extrême à un autre en améliorant la valeur de la fonction-objectif à
chaque étape jusqu’à ce que l’optimum soit atteint.
x
y
z
max Z 3500 4500 4200 0 0 0
e1
e2
e3
x
y
1 2 2 1 0 0
3 3
z
s / c : 12 0 1 0 1 0
2 1 1 0 0 1 e1
e
2
e3
Variables
x Y Z 𝑒1 𝑒2 𝑒3 R Rd
Base
𝑒1 1 (3/2) 3/2 1 0 0 240 240/3/2=160
𝑒2 ½ 0 1 0 1 0 120 -
𝑒3 2 1 1 0 0 1 240 240/1=240
14
Z 35 45 42 0 0 0 0
Y 2/3 1 1 2/3 0 0 160 240
𝑒2 ½ 0 1 0 1 0 120 240
𝑒3 (4/3) 0 0 -2/3 0 1 80 60
Z 5 0 -3 -30 0 0 -7200
Y 0 1 1 1 0 -1/2 120
𝑒2 0 0 1 ¼ 1 -3/8 90
x 1 0 0 -1/2 0 ¾ 60
Z 0 0 -3 -55/2 0 -15/4 -7500
On continue les itérations tant qu’il existe un réel strictement positif sur la ligne de la fonction
économique (z).
Soit (P) un programme linéaire à n variable de décision et m variable d’écart (contrainte) (il y aura
m+n+2 colonne)
Définition :
Dans le tableau du simplexe d’un programme linéaire, une colonne est dite unitaire si elle contient
un (1) dans l’une de ces cases et zéro(0) dans toutes les autres.
Remarque 1 :
Dans tout tableau du simplexe, une variable de base 𝑣𝑘 a sa colonne unitaire et la ligne de 𝑣𝑘 ∩ la
colonne de 𝑣𝑘 =1 → 𝐿𝑣𝑘 ∩ 𝐶𝑘 = {1}
Remarque 2 :
En utilisant ces deux remarques et le fait de diviser la ligne pivot par le pivot, on remplit d’office
une bonne partie du nouveau tableau. Toutes les cases qu’on ne peut pas remplir au moyen de
ses deux remarques seront calculées par la méthode dite du rectangle.
Dans le 3ème tableau du simplexe, tous les coefficients de la ligne 𝐿𝑧 sont ≤ 0 , c’est le signe que
l’on a atteint l’optimum.
15
A l’optimum, on a :
𝑥 ∗ =60, 𝑒1∗ =0
𝑧 ∗ =0, 𝑒3∗ =0
Z*= 7500
Conclusion
L’entreprise ZOUZ doit produire 60 unités de lots de type A, 120 lots de type B, et aucun lot de
type C pour obtenir une marge bénéficiaire globale maximale de 750.000. D’autre part à l’optimum
𝑒1∗ =𝑒3∗ =0. Ainsi, les ateliers 1 et 3 ont entièrement utilisé leurs ressources tandis que puisque 𝑒2∗ =90,
il reste encore 90h disponibles dans l’atelier B à l’optimum.
La réponse est donnée par la valeur absolue du coefficient à l’intersection (∩) de la ligne 𝐿𝑧 et de
la colonne de 𝑒1 .C’est à dire 55/2. Ce coefficient révèle de combien d’unité monétaire l’on ferait
varier la quantité de ressource disponible dans l’atelier 1 d’une unité.
Nous dirons que la valeur marginale de l’atelier 1 est égale à 55/2 et nous notons √𝑚(𝑒1)=55/2.
De même, le tableau nous informe que √𝑚(𝑒2 )=0 ; la valeur marginale de 𝑒3 √𝑚(𝑒3 ) =15/4
𝑀𝑖𝑛(𝑍 = 4𝑥 + 2𝑦 + 6𝑧)
2𝑥 + 4𝑦 + 2𝑧 ≥ 24
(P){
5𝑥 + 𝑦 + 𝑧 ≥ 8
𝑥, 𝑦, 𝑧 ≥ 0
16
On appel dual du programme linéaire (P), le programme linéaire (D) suivant.
x j 0 , j 1, 2,..., n
yi 0 , i 1, 2,..., m
Max Z cx min W yb
s / c : Ax b s / c : yA c
x0 y0
De façon plus pratique, voici les règles de passage du primale au dual. Soit(P) un programme
linéaire de fonction économique notée 𝑍. Pour écrire le programme linéaire dual (D) de (P), on
doit suivre les cinq règles suivantes :
1. Le sens de l’optimisation est inversé mais les contraintes de non négativité des variables
de décision restent inchangées.
17
2. La matrice des coefficients de la fonction économique du dual est la transposée du vecteur
colonne des seconds membres des contraintes principales du primal.
3. La matrice des constantes des seconds membres des contraintes principales du dual est la
transposée du vecteur ligne des coefficients de la fonction économique du primal.
4. La matrice des coefficients des contraintes principales du dual est la transposée de son
homologue du primale.
5. Ne jamais garder les mêmes noms pour les fonctions économiques et les variables des deux
programmes.
x
min Z 4 2 6 y
min(𝑧 = 4𝑥 + 2𝑦 + 6𝑧)
2𝑥 + 4𝑦 + 2𝑧 − 𝑒1 = 24 z
(P){
5𝑥 + 1𝑦 + 1𝑧 − 𝑒2 = 8 x
𝑥, 𝑦, 𝑧, 𝑒1 , 𝑒2 ≥ 0 2 4 2 24
s / c: y
5 1 1 z 8
Et
t
max(∆= 24𝑥1 + 8𝑥2 ) 24 x
2𝑥1 + 5𝑥2 + 𝑠1 = 4 Max 1
8 x2
(D) 4𝑥1 + 1𝑥2 + 𝑠2 = 2 t
2𝑥1 + 1𝑥2 + 𝑠3 = 6 2 4 2 x1
4 2 6
t
s/c:
{ 𝑥1 , 𝑥2 , 𝑠1 , 𝑠2 , 𝑠3 ≥ 0 5 1 1 x2
x
Max 24 8 1
x2
2 5 4
x1
s / c : 4 1 2
2 1 x2 6
THEOREME
Soit (D) son dual avec les m variables de décision notée 𝑦1 , 𝑦2 … 𝑦𝑚 𝑒𝑡 𝑠𝑒𝑠 𝑛 variables d’écart
notée respectivement 𝑠1 , 𝑠2 … 𝑠𝑛 . Soit 𝑧 la fonction économique dans le primal et ( ∆ ) son
homologue dans le dual.
1. (P) admet une solution si et seulement si (D) en admet une et à l’optimum, ∆𝑜𝑝𝑡=𝑍𝑜𝑝𝑡
18
2. Si une variable de décision 𝑦𝑘 du dual (D) a une valeur optimale alors la variable d’écart
𝑒𝑘 qui lui est associée dans (P) est nécessairement nulle à l’optimum. (𝑦𝑘 ≠ 0 𝑎𝑙𝑜𝑟𝑠 𝑒𝑘 =
𝑂)
3. Si une variable d’écart 𝑠𝑘 de (D) a une valeur optimale ≠0, alors la variable de décision 𝑥𝑘
qui lui est associée dans (P) est nécessairement nulle à l’optimum.
4. La valeur optimale de la variable de décision 𝑥𝑘 est égale à la valeur marginale de la
variable d’écart 𝑠𝑘 dans le dernier tableau du simplexe du dual.
5. Pour tout k allant de 1 à m (𝑘 ∈ {1, . . 𝑚}), la valeur optimale de la variable d’écart 𝑒𝑘 est
égale au terme à 𝑒 ∩ de la ligne 𝐿∆ et de la colonne 𝑦𝑘 dans le dernier tableau du simplexe
de (D).
6. ∀𝑘 ∈ {1,2, … 𝑛}, la valeur marginale de la variable d’écart 𝑒𝑘 est égale à la valeur optimale
de 𝑦𝑘 (variable de décision) dans le programme (D).
min(𝑧 = 4𝑥 + 3𝑦 + 6𝑧)
2𝑥 + 4𝑦 + 2𝑧 ≥ 24
{
5𝑥 + 𝑦 + 𝑧 ≥ 8
𝑥, 𝑦, 𝑧 ≥ 0
2s1 5s2 1 4
( D)
4s1 s2 2 3
2s s 6
1 2 3
s1 , s2 , 1 , 2 , 3 0
VHB
s1 s2 1 2 3 R ratios
VB
1 2 5 1 0 0 4 2
2 (4) 1 0 1 0 3 ¾
3 2 1 0 0 1 6 3
24 8 0 0 0 0
1 0 (9/2) 1 -1/2 0 5/2 5/9
S1 1 ¼ 0 ¼ 0 3/4 3
19
3 0 ½ 0 -1/2 1 9/2 9
0 2 0 -6 0 -18
s2 0 1 2/9 -1/9 0 5/9
s1 1 0 -1/18 5/18 0 11/18
3 0 0 -1/19 -4/9 1 38/9
0 0 -4/9 -52/9 0 -172/9
Primal x Y z e1 e2
Dual 1 2 3 s1 s2
On établit une correspondance entre les variables du primal et celles du dual. On associe aux
variables d’écart de (P) les variables d’activités de (D) et réciproquement. Soit le tableau ci-
dessus. Une fois le lien établi, on associe à chacune de ces variables les valeurs correspondantes
au signe près de la ligne de . Ainsi, on obtient :
Primal x Y z e1 e2
Dual 1 2 3 s1 s2
Valeurs 4/9 52/9 0 11/8 5/9
Figure 1 : Organigramme de l’algorithme du Simplexe dans le cas d’un modèle linéaire simple et Méthode du rectangle
20
Chapitre 2 : MODELE LINEAIRE CONTINU GENERAL (PLC)
s / c : x1 12 s / c : x1 e3 12
x 6 x e 6
2 2 4
x1 , x2 0 x1 , x2 0
x1
x
2
e
Max Z 1000 1200 0 0 0 0 1
e2
e3
e4
x1
10 5 1 0 0 0 x2 200
2 3 0 1 0 0 e1 60
s/c:
1 0 0 0 1 0 e2 12
0 1 0 0 0 1 e3 6
e4
La solution de base est : e1 200; e2 60; e3 12; e4 6 0 . La solution (0,0, 200,60,12, 6)
n’est pas admissible.
Dans les programmes linéaires où les contraintes de signe > ou = apparaissent dans un programme de
maximisation ou encore lorsque les contraintes < ou = apparaissent dans un programme de minimisation,
la méthode du simplexe présentée dans le cadre du PLS ne peut pas s’appliquer immédiatement. L’on doit
faire des transformations d’écriture avant de pouvoir appliquer l’algorithme du simplexe. L’on a alors
deux méthodes de résolution dans ces cas là :
Dans la méthode dite de Grand M comme dans celle en deux étapes, les équations provenant des
contraintes technologiques de signe ou =, on ajoute des variables dites artificielles qui initialement
serviront de variables de base et on exige de ces mêmes variables qu’elles soient non négatives.
21
La méthode du Grand M.
Outre les variables artificielles introduites dans le modèle, on adjoint à la fonction économique Z
un terme de pénalité à chaque variable artificielle et M est une constante positive dont la valeur
sans être précisée dépasse largement tous les autres nombres présents dans le modèle.
Max Z 1000 x1 1200 x2 Max Z 1000 x1 1200 x2 Max Z 1000x1 1200x2 Ma2 Ma4
10 x1 5 x2 200 10 x1 5 x2 e1 200 10 x1 5 x2 e1 200
2 x 3x 60 2 x 3x 60 2 x 3x a 60
1 2 1 2 1 2 2
s / c : x1 12 s / c : x1 e3 12 s / c : x1 e3 12
x 6 x e 6 x e a 6
2 2 4 2 4 4
x1 , x2 0 x1 , x2 , e1 , e3 , e4 , 0 x1 , x2 , e1 , e3 , e4 , 0, a2 , a4 , 0
Les termes –Ma2 et –Ma4 entrainent des pénalités élevées dès que l’une ou l’autre des variables
artificielles est non nulle. Il en résulte que toutes les solutions admissibles satisfaisant toutes les
contraintes ci-avant où a2=a4=0 donne à ZM une valeur plus grande que toute autre solution où
a2=a4>0. Si l’on désire maximiser ZM, il faudra en premier sortir a2 et a4 de la base. Une fois
que toutes les variables artificielles sont sorties de la base, la fonction objectif devient
équivalente à celle du modèle original. Les calculs s’effectuent avec le symbole M dont la valeur
n’est jamais précisée.
La présence du paramètre M dans certains coûts marginaux des tableaux n°0 et n°1 du simplexe
en rend l’interprétation du tableau impossible. Ce qui importe, c’est que la valeur de ZM diminue
d’un tableau à l’autre. Lorsque toutes les variables artificielles seront sorties de la base et auront
pris la valeur 0, les coûts marginaux s’interpréteront dans le contexte du problème comme
habituellement. Le simplexe se déroule identiquement au modèle PLS en ce qui concerne le
choix de la variable sortante et du pivotage.
22
x1
x
2
e1
Max Z 1000 1200 0 M 0 0 M a2
e3
e4
a
4
x1
x
10 0 0 200
2
5 1 0 0
2 e1
3 0 1 0 0 0 60
s/c: a2
1 0 0 0 1 0 0 12
e3
0 1 0 0 0 1 1 6
e4
a
4
VHB
x1 x2 e1 a2 e3 e4 a4 R Ratios
VB
0 e1 10 5 1 0 0 0 0 200 40
-M a2 2 3 0 1 0 0 0 60 20
0 e3 1 0 0 0 1 0 0 12
-M a4 0 (1) 0 0 0 -1 1 6 6
zi -2M -4M 0 -M 0 M -M -66M
Z=cj-zi 1000+2M 1200+4M 0 0 0 -M 0
e1 10 0 1 0 0 5 -5 170 =170/5=34
a2 2 0 0 1 0 (3) -3 42 42/3=14
e3 1 0 0 0 1 0 0 12
x2 0 1 0 0 0 -1 1 6 -6
Z 1000+2M 0 0 0 0 1200+3M -1200- 7200-42M
4M
e1 20/3 0 1 -5/3 0 0 0 100 15
e4 2/3 0 0 1/3 0 1 -1 14 21
e3 (1) 0 0 0 1 0 0 12 12
x2 2/3 1 0 1/3 0 0 0 20 30
Z 200 0 0 -400- 0 0 -M 24000
M
e1 0 0 1 -5/3 -20/3 0 0 20
e4 0 0 0 1/3 -2/3 1 -1 6
23
x1 1 0 0 0 1 0 0 12
x2 0 1 0 1/3 -2/3 0 0 12
Z 0 0 0 -400- -200 0 -M 26400
M
Séquence des coûts marginaux dans le modèle précédent avec la méthode du Grand M
Tableau (Z)
x1 x2 e1 a2 e3 e4 a4 R
0 1000+2M 1200+4M 0 0 0 -M 0 -66M
1 1000+2M 0 0 0 0 1200+3M -1200- 7200-42M
4M
2 200 0 0 -400- 0 0 -M 24000
M
3 0 0 0 -400- -200 0 -M 26400
M
Avec la méthode du grand M ou bien toutes les variables artificielles prennent la valeur 0 à
l’optimum et l’on obtient une solution admissible et optimale ou bien certaines d’entre elles
prennent une valeur positive et alors le modèle linéaire PLC n’a pas de solution admissible.
Dans un modèle où il s’agit de minimiser une fonction objectif Z, les variables artificielles
reçoivent dans ZM le coefficient plus M. Ainsi toute valeur positive prise par l’une ou l’autre
d’entre elle entraine une augmentation considérable de ZM. Ce qui rend la solution fort peu
intéressante.
Divers cas particuliers ou pathologiques surviennent qui peuvent être regroupés en deux
catégories :
24
4. Choix de la variable entrante : plusieurs variables hors base admettent le coût marginal
maximal
5. Choix de la variable sortante : plusieurs variables de base correspondent à la plus petite
limite
Un PLC général admet au moins une solution optimale lorsqu’il existe un tableau du simplexe
vérifiant les deux conditions suivantes :
i) Dans la solution de base associée, les variables artificielles sont toutes nulles (la
solution de base est admissible)
ii) Les coûts marginaux des variables hors base sont tous négatifs ou nuls dans le cas
d’un modèle de maximisation et tous positifs ou nuls dans le cas d’un problème de
minimisation (la solution de base est optimale)
Cette solution optimale est unique si de plus le tableau vérifie la condition suivante :
iii) Les coûts marginaux des variables hors base sont tous différents de zéro
Enfin, le modèle PLC admet une infinité de solution optimale si le tableau vérifie les conditions
(i), (ii) et (iv) où
iv) L’une des variables hors base (non artificielle) admet un coût marginal nul et sa
valeur limite en tant que variable entrante potentielle est positive ou infinie.
NB : Une VHB dont le coût marginal est nul et dont la limite est nulle donnerait un tableau
optimal dégénéré : lors d’un pivotage pour entrer cette variable dans la base aucune des variables
ne verraient sa valeur se modifier et on se retrouverait avec la même solution optimale.
Un modèle linéaire ne possède pas de solution admissible si dans le dernier tableau de la phase
de minimisation des variables artificielles, une ou plusieurs de ces variables prennent des valeurs
positives.
Un modèle linéaire où l’on se propose de maximiser Z est non borné lorsque dans un tableau de
simplexe consistant à maximiser la valeur de Z après avoir réussi à minimiser les valeurs des
variables artificielles, une variable hors base admet un coût marginal positif dans et aucun de ces
25
coefficients dans la partie centrale du tableau n’est positif. Cette variable et par conséquent la
fonction objectif Z peuvent être augmentées dans limite.
On pourrait retenir au hasard l’une de ces variables. Ce qui importe c’est d’augmenter la valeur
de Z mais le choix peut aussi se faire de manière subtile en calculant la limite d’augementation
de chacune des variables en ballotage. Certains logiciels utilisent les critères consistant à choisir
parmi les variables dont le coût marginal est positif celle ou l’une de celles qui maximisent le
produit c j zi .limite .
Lorsque plus d’une variable de base correspond à la plus petite limite, l’on a l’embarras du choix
pour la variable sortante. Lorsqu’une VB est nulle, on parle alors de solution dégénérée. Ce
phénomène de dégénérescence survient lorsque dans le tableau précédent, plus d’une variable de
base correspond à la plus petite limite : dans le tableau obtenu après pivotage, une seule d’entre
elles sort de la base et les autres restantes prennent la valeur zéro.
Selon R.G. Bland, dans la résolution d’un problème de maximisation, l’algorithme du simplexe
ne peut cycler si :
- Pour entrer dans la base, on choisit celles parmi les variables dont le coût marginal est
non négatif qui est doté du plus petit indice
- Pour sortir de la base, on choisit celle des variables candidates dont l’indice est le plus
petit
26
Chapitre 3 : L’ANALYSE POST-OPTIMALE
Quel serait l’impact sur la marge bénéficiaire globale d’une variation d’un coefficient
économique, d’une contrainte de disponibilité des ressources ?
Pour le savoir, il faut investiguer sur la sensibilité des solutions optimales au changement
envisageable dans la valeur des paramètres aij , bi et c j .
Cette analyse porte le nom d’analyse post-optimale car l’on s’intéresse aux mouvements de la
solution optimale induits par les changements apportés aux valeurs des paramètres. Cette analyse
permet de détecter les paramètres dont une faible oscillation suffit à chambouler la solution
optimale proposée dans le tableau final. Elle fournit aux décideurs avertis, des diagnostics
prémonitoires qui l’inciteront à recourir à de meilleures estimations des paramètres les plus
sensibles du modèle ou à mettre en place des mécanismes de surveillance de ces paramètres
déclencheurs de changement par leur moindre glissement. Nous présentons deux cas :
- Le modèle modifié doit être une variante obtenue du modèle optimal en y changeant une
ou plusieurs cj ou encore un ou plusieurs bi
- Le tableau final du modèle original doit permettre de calculer sans pivotage
supplémentaire, une solution optimale du modèle modifié.
s / c : x1 34 : Demande de tuyauterie
x 14 : Demande de gueuse
2
x1 , x2 0 : Contrainte de non négativité
Supposons que le coefficient de la variable x1 subit une modification à la hausse. Déterminons alors
l’intervalle de variation de cette modification des prix pour maintenir stable la solution optimale de ce
programme. La fonction objectif Z’ du programme (P’) sera :
27
Tableau final de (P’)
VHB
x1 x2 e1 e2 e3 e4 R
VB
0 e4 0 0 0,10 -0,50 0 1 4
0 e3 0 0 -0,15 0,25 1 0 19
x2 0 1 -0,10 0,50 0 0 10
La solution de base associée au tableau final de (P’) est optimal pour Z’ ssi
Le plan de production (15 ;10) reste optimale pourvu que le coefficient de x1 dans la fonction économique
soit compris entre 800 et 2400. La méthode algébrique utilisée ici s’adapte à tout modèle linéaire continu
quel que soit le nombre de variables de décision qu’il comporte. On vérifie également aisément que le Max
de Z’ égale à Z ' 1000 x1 (1200 ) x2 sous les mêmes contraintes est atteint au point (15 ;10) ssi
700 300 .
Supposons que le second membre de la première contrainte du programme précédent P subit une
modification. Alors le 2nd membre s’écrira : b'1 200 avec b1=200
s / c : x1 34
x 14
2
x1 , x2 0
VHB
x1 x2 e1 e2 e3 e4 R
VB
28
0 e1 10 5 1 0 0 0 200+
0 e2 2 3 0 1 0 0 60
0 e3 1 0 0 0 1 0 34
0 e4 0 1 0 0 0 1 14
Z 1000 1200 0 0 0 0 0
Coeff VHB
x1 x2 e1 e2 e3 e4 R
VB
0 e4 0 0 0,10 -0,50 0 1 4 0,10
cj zj 0 0 -30 -350
29