Académique Documents
Professionnel Documents
Culture Documents
GE fondamentale
1 Introduction 1
1.1 Problèmes de programmation mathématique . . . . . . . . . . . . 2
1.2 Problèmes de programmation linèaire . . . . . . . . . . . . . . . 2
3 La méthode graphique 11
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2 Représentation graphique des contraintes . . . . . . . . . . . . . . 12
3.3 Représentation de la fonction objectif . . . . . . . . . . . . . . . 14
3.4 Recherche du point optimal de la fonction objectif . . . . . . . . . 14
3.5 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.5.1 Problème de maximisation avec la normale dirigée vers le
haut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.5.2 Problème de maximisation avec la normale dirigée vers le bas 17
3.5.3 Problème de minimisation avec la normale dirigée vers le
haut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.6 Les différents types de solutions d’un problème de PL . . . . . . . 22
3.6.1 Infinité de solution . . . . . . . . . . . . . . . . . . . . . . 22
3.6.2 Solution optimale infinie . . . . . . . . . . . . . . . . . . . 24
3.6.3 Aucune solution . . . . . . . . . . . . . . . . . . . . . . . . 26
3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4 La méthode du simplexe 29
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.2 Formulation du problème . . . . . . . . . . . . . . . . . . . . . . . 30
4.2.1 Forme canonique . . . . . . . . . . . . . . . . . . . . . . . 30
4.2.2 Forme standard . . . . . . . . . . . . . . . . . . . . . . . . 32
4.3 Résolution du problème par la méthode du simplexe . . . . . . . 34
i
TABLE DES MATIÈRES
ii Recherche Opérationnelle
Chapitre 1
Introduction
1
Introduction
2 Recherche Opérationnelle
1.2 Problèmes de programmation linèaire
Optimiser z = c1 x 1 + c2 x 2 + . . . + cn x n (1.3)
≤
Sous les contraintes ai1 x1 + ai2 x2 + . . . + ain xn ≥ bi
(1.4)
=
xj ≥ j = 1...n (1.5)
Pr.Khatmi 3
Chapitre 2
5
Formulation d’un programme linéaire (PL)
6 Recherche Opérationnelle
2.4 Exemples de formulations
Pr.Khatmi 7
Formulation d’un programme linéaire (PL)
8 Recherche Opérationnelle
2.4 Exemples de formulations
Pr.Khatmi 9
Chapitre 3
La méthode graphique
3.1 Introduction
Après avoir illustrer par des exemples, comment un problème pratique peut
être modélisé par un programme linéaire, l’étape qui va suivre sera certainement
celle de la résolution de ce problème mathématique. La méthode graphique est
l’une des premières méthodes utilisées à ce sujet. Cette méthode n’est applicable
que dans le cas où il n’y a que deux variables ou au plus trois variables. Son
avantage est de pouvoir comprendre ce que fait la méthode générale du Sim-
plexe, sans entrer dans la technique purement mathématique. Soit le problème
d’optimisation linéaire suivant :
Optimiser z = c1 x 1 + c2 x 2 + . . . + cn x n (3.1)
≤
Sous les contraintes ai1 x1 + ai2 x2 + . . . + ain xn ≥ bi
(3.2)
=
xj ≥ 0 j = 1...n (3.3)
Définition 3.1.2.
• On appelle solution optimale un point réalisable qui optimise (maximise
ou minimise) la fonction objectif z(x).
• La valeur optimale est la valeur de la fonction objectif z(x) atteinte pour
toute solution optimale.
11
La méthode graphique
2x1 + x2 ≥ 12 ⇔ x2 ≥ 12 − 2x1
L’ensemble des solutions qui vérifient cette inégalité est le demi-plan P1 situé au
dessus de la droite D1 d’équation x2 = 12 − 2x1 qui passe par les points
12 Recherche Opérationnelle
3.2 Représentation graphique des contraintes
Si on fait de même pour les deux autres contraintes du problème, on obtient les
deux autres demi-plans P 2 et P 3 relatifs aux solutions vérifiant respectivement
les contraintes 5x1 + 8x2 ≥ 74 et x1 + 6x2 ≥ 24.(voir figures 3.2)
Donc la zone des solution réalisables du problème est l’ensemble des points
du plan qui appartiennent aux trois demi-plans relatifs à chaque contrainte du
programme linéaire, en d’autre terme l’intersection des trois demi plans
(P 1 ∩ P 2 ∩ P 3) voir figure (3.3)
Pr.Khatmi 13
La méthode graphique
Définition 3.3.1.
• − ab est la pente de la droite.
−b
• le vecteur directeur de la droite est donné par le vecteur
a
a
• le vecteur normal de la droite est donné par le vecteur
b
Proposition 3.3.1. Deux droites qui ont la même pente sont parrallèles
Remarque 3.3.1. On peut tracer une infinité de droites qui représentent des
différentes valeurs de la fonction objectif, toutes ces droites ont la même pente − ab .
Par suite elles sont parallèles entre elles. Donc pour les tracer, il suffit d’initialiser
la fonction objectif, tracer la droite corespondante et prendre toutes les droites qui
lui sont parallèles.
Remarque 3.3.2. Pour initialiser la fonction objectif z c’est à dire lui donner
une valeur z0 et tracer la droite ax+by = z0 qui lui corresponds , il suffit de choisir
un point (x0 ; y0 ) qui appartient à la zone des solutions admissibles et calculer la
valeur de z qui lui corresponds z0 = ax0 + by0 .
On peut diminuer ou augmenter la valeur de z indéfiniment.Le problème est
de connaı̂tre qu’elle est la droite qui correspond à la valeur optimal de la fonction
objectif ?
14 Recherche Opérationnelle
3.5 Exemples
3.5 Exemples
3.5.1 Problème de maximisation avec la normale dirigée
vers le haut
Pr.Khatmi 15
La méthode graphique
16 Recherche Opérationnelle
3.5 Exemples
Maximiser z = x1 − x 2
Sous contraintes x1 − 2x2 ≤ 2
2x1 − x2 ≤ 4
x1 + x2 ≤ 5
x1 ≥ 0, x2 ≥ 0
Pr.Khatmi 17
La méthode graphique
2x1 − x2 ≤ 4 ⇔ x2 ≥ 2x1 − 4
x1 + x2 ≤ 5 ⇔ x2 ≤ 5 − x1
18 Recherche Opérationnelle
3.5 Exemples
Pr.Khatmi 19
La méthode graphique
On remarque que la solution optimale se trouve sur les deux droites d’équa-
tion (2x1 − x2 = 4 et x1 − 2x2 = 2). La résolution de ce système conduit
à la solution x1 = 2 ; x2 = 0, d’où z = 2 − 0 = 2.
Remarque : les coordonnées du point optimal peuvent être relevés direc-
tement sur le graphique.
20 Recherche Opérationnelle
3.5 Exemples
Pr.Khatmi 21
La méthode graphique
On remarque que la solution optimale se trouve sur les deux droites d’équa-
tion (x1 + 2x2 = 90 et 6x1 + 3x2 = 180). La résolution de ce système
conduit à la solution
Maximiser z =x+y
Sous contraintes 2x + 2y ≤ 8
x ≥ 0, y ≥ 0
22 Recherche Opérationnelle
3.6 Les différents types de solutions d’un problème de PL
2x1 + 2x2 ≤ 8 ⇔ x2 ≤ 4 − x1
Pr.Khatmi 23
La méthode graphique
24 Recherche Opérationnelle
3.6 Les différents types de solutions d’un problème de PL
x1 + 5x2 ≥ 10 ⇔ x2 ≥ 2 − 1/5 ∗ x1
Pr.Khatmi 25
La méthode graphique
Maximiser z = 2x1 + x2
Sous contraintes x1 + x2 ≤ 2
x1 − x2 ≥ 3
x1 ≥ 0, x2 ≥ 0
• Détermination du demi-plan P1
x1 + x 2 ≤ 2 ⇔ x2 ≤ 2 − x1
x1 − x2 ≥ 3 ⇔ x2 ≤ x1 − 3
26 Recherche Opérationnelle
3.7 Conclusion
3.7 Conclusion
Nous allons résumer quelques-unes des propriétés des problèmes de program-
mation linéaire que nous avons résolus graphiquement. Nous avons vu que pour
un programme linéaire fini, la région des solutions réalisables était convexe, qu’elle
possédait des sommets et que des arêtes reliaient les différents sommets. De plus,
nous avons remarqué que lorsque le maximum ou le minimum de z était fini, la
solution optimale était toujours un sommet de la région réalisable. La situation
était différente quand la fonction objectif pouvait prendre des valeurs infinies.
Dans ce cas, naturellement, aucun sommet n’était optimal. Du point de vue de
la terminologie, des solutions infinies ne sont pas qualifiées d’optimales. Le terme
”solution optimale” est employé quand le minimum ou le maximum de z est fini.
À noter que ces constatations, qui dérivent de simples exemples graphiques, sont
vraies pour le cas général de la programmation linéaire. Nous en reparlerons
d’ailleurs quand nous étudierons la méthode du simplexe.
Pr.Khatmi 27
La méthode graphique
28 Recherche Opérationnelle
Chapitre 4
La méthode du simplexe
4.1 Introduction
On a présenté dans le chapitre précédent une procédure graphique pour ré-
soudre un programme linéaire à deux variables. Par contre, dans la plupart des
problèmes réels, on a plus que deux variables à déterminer. Une procédure algé-
brique pour résoudre les programmes linéaires avec plus que deux variables fera
l’objet de ce chapitre. C’est la méthode de simplexe,elle consiste à suivre un cer-
tain nombre d’étapes avant d’obtenir la solution d’un problème donné. Il s’agit
d’une méthode algébrique itérative qui permet de trouver la solution exacte d’un
problème de programmation linéaire en un nombre fini d’étapes.
Afin de comparer avec la résolution graphique, nous pouvons considérer que nous
sommes dans un espace à n dimensions (nombre de variables d’activité). Les
contraintes délimitent un polyèdre convexe, région des solutions admissibles ; la
fonction objectif est un hyperplan que l’on va déplacer le plus loin possible de
l’origine, jusqu’à l’extrême limite où il n’y aura plus qu’un point d’intersection
(éventuellement un segment, un plan...) avec la région des solutions admissibles.
La solution se trouvant forcément sur le pourtour du polyèdre admissible, la mé-
thode du simplexe consiste en itérations qui font passer d’un sommet du polyèdre
à un autre en sélectionnant le sommet adjacent maximisant la fonction objectif.
29
La méthode du simplexe
Optimiser z = c1 x 1 + c2 x 2 + . . . + cn x n (4.1)
≤
Sous les contraintes ai1 x1 + ai2 x2 + . . . + ain xn ≥ bi (4.2)
=
xj ≥ 0 j = 1...n (4.3)
aij , bi et cj sont des constantes connues, avec i = 1 . . . m et j = 1, . . . n
Chaque contrainte pouvant avoir un signe d’inégalité différent.
En résumé, un programme linéaire est un modèle mathématique qu’on peut écrire
sous la forme matricielle suivante :
Optimiser z = cx (4.4)
≤
Sous les contraintes Ax ≥ b (4.5)
=
x≥0 (4.6)
x1 a11 a12 · · · a1n
x2 a21 a22 · · · a2n
Avec c = c1 c2 · · · cn , x = .. et A = ..
.. .. ..
. . . . .
xn am1 am2 · · · amn
Un problème de programmation linéaire peut se présenter sous différentes
formes. En voici la terminologie.
30 Recherche Opérationnelle
4.2 Formulation du problème
1. Transformation minimisation-maximisation
Tout problème de minimisation peut être transformé en un problème équi-
valent de maximisation. En effet, le problème :
Minimiser z = cx ⇔ Maximiser (−z) = −cx
La raison pour laquelle ces deux formulations sont équivalentes est simple :
la solution qui permet d’obtenir la plus petite valeur de z fournit également
la plus grande valeur de (−z). La seule différence réside dans le signe de la
valeur de la fonction objectif. La valeur minimale de z s’obtient en prenant
l’opposé de la valeur maximale de (−z).
Exemple 4.2.1. Minimiser z = 3x1 −2x2 +5x3 La formulation équivalente
en terme de maximisation est : Maximiser (−z) = −3x1 + 2x2 − 5x3
2. Transformation des contraintes économiques
Pr.Khatmi 31
La méthode du simplexe
32 Recherche Opérationnelle
4.2 Formulation du problème
avec
ti = bi − ai1 x1 + ai2 x2 + . . . + ain xn
2. si la ieme contrainte est de la forme :
avec
ti = ai1 x1 + ai2 x2 + . . . + ain xn − bi
Remarque 4.2.1.
• Avec l’introduction des variables d’écart, tout problème sous forme cano-
nique possède une forme standard équivalente.
• La méthode du simplexe requiert des bi ≥ 0. Par conséquent, les contraintes
qui ont un bi négatif doivent être transformées en contraintes aux bi posi-
tifs. Cette transformation se fait simplement en multipliant la contrainte
par (−1).
Minimiser z = x1 − 2x2
sous contrainte x1 − 2x2 ≤ 5
3x1 + 2x2 ≥ 2
x1 ≥ 0, x2 ≥ 0.
Pr.Khatmi 33
La méthode du simplexe
• La contrainte x1 − 2x2 ≤ 5
En introduisant la variable d’écart t1 , elle va être transformée en
x1 − 2x2 + t1 = 5
3x1 + 2x2 − t2 = 2
En résumé, nous avons vu que la fonction objectif d’un programme linéaire peut
être présentée sous forme de maximisation, que les contraintes peuvent toujours
s’écrire sous forme d’égalité (avec des bi positifs). En d’autres termes un pro-
gramme linéaire peut toujours être présenté sous sa forme standard.
Maximiser z = cx (4.13)
Sous contraintes Ax = b (4.14)
x≥0 (4.15)
b≥0 (4.16)
Dans cette formulation, le vecteur x contient toutes les variables, y compris les
variables d’écart ; il s’agit d’un vecteur colonne d’ordre (n × 1). Le vecteur c est
un vecteur ligne d’ordre (1×n). Quant à la matrice A, d’ordre (m×n), il s’agit de
la matrice des coeffcients des contraintes transformées. Enfin, le vecteur b d’ordre
(m × 1) est le vecteur (positif) du second membre.
Définition 4.3.1.
• On appelle solution d’un problème de programmation linéaire tout vecteur
x qui satisfait les contraintes (4.14).
34 Recherche Opérationnelle
4.3 Résolution du problème par la méthode du simplexe
• Une solution est appelée solution réalisable si elle vérifie les contraintes de
non-négativité (4.15). Dans le cas contraire, on dit que la solution n’est
pas réalisable.
• Une solution réalisable est une solution optimale s’il n’existe pas d’autres
solutions réalisables qui fournissent une plus grande valeur de la fonction
objectif.
Remarque 4.3.1. À noter que dans un problème possédant des solutions réali-
sables, il se peut que la valeur optimale de la fonction objectif soit infinie. Dans
ce cas, on parle de solution optimale infinie.
L’ensemble des contraintes (4.14) s’écrit donc comme un système de m équa-
tions à n inconnues : Ax = b. Pour développer la méthode du simplexe, nous
avancerons les hypothèses suivantes :
1. r(A) = r(A|b), c’est-à-dire que le système d’équations est compatible.
2. r(A) = m, où m est le nombre de contraintes.
La seconde hypothèse permet de former, à partir de A, une sous matrice B (m×m)
inversivble. Cette matrice B peut être formée par n’importe quel ensemble de m
colonnes linéairement indépendantes de A.. La matrice B est appelée matrice de
base puisqu’elle est formée de m vecteurs linéairement indépendants.
Sans restreindre la généralité, on peut supposer que les colonnes de A ont été
ordonnées de manière à pouvoir écrire A sous la forme A = (B, N ), avec B de
dimension (m×m) la matrice de base et N de dimension (m×(n−m)) contenant
les colonnes de A qui n’appartiennent pas à B. Le vecteur x peut être partitionné
de façon analogue en posant x = (xB , xN ).
Définition 4.3.2 (Variables de base).
Les variables xB sont appelées variables de base et les variables xN les variables
hors base.
Définition 4.3.3 (Base).
La famille I constitué par les indices des variables de bases est dite une base
Finalement le vecteur c peut lui aussi être partitionné de la même manière en
c = (cB , cN ). Le programme linéaire (4.13)-(4.14) peut donc être reformulé de la
manière suivante :
Maximiser z = cB x B + cN x N (4.17)
Sous contraintes BxB + N xN = b (4.18)
xB ≥ 0, xN ≥ 0 (4.19)
b≥0 (4.20)
BxB = b − N xN
Pr.Khatmi 35
La méthode du simplexe
xb = B −1 b − B −1 N xN
Lorsque toutes les variables hors base sont nulles, xN = 0, la relation (4.3)devient
xb = B −1 b.
Remarque 4.3.2. Si les variables de base forment une solution de base réalisable,
on dit que la base I est réalisable.
Formons à partir de A une matrice de base B en prenant par exemple les colonnes
2 et 4, dans cet ordre :
2 1
B=
−4 0
36 Recherche Opérationnelle
4.3 Résolution du problème par la méthode du simplexe
B −1 =
1
1 2
0 − 14
x2 16 −5
xB = = =
1
x4 1 2 20 26
Les autres variables étant nulles, x1 = x3 = x5 = 0. Dans ce cas la base I = (2, 4)
Cette solution de base n’est pas réalisable pour la simple raison que x2 = −5 viole
la contrainte de non-négativité. Dans cet exemple, il est très facile de trouver une
base qui fournisse une solution réalisable de base. En effet les colonnes 4 et 5
forment une base qui est l’identité :
1 0
B=I=
0 1
16
La solution de base est le vecteur b puisque : xB = I.b = b =
20
Comme b ≥ 0 lorsque le problème est présenté sous sa forme standard, la solution
est une solution réalisable de base, et z a pour valeur : z = 0∆16 + 0∆20 = 0
Définition 4.3.5. Un programme linéaire standard est dit sous forme canonique
par rapport à une base I si la matrice B associée à I est l’identité et les coûts
correspondant aux variables de base sont nuls.
Pr.Khatmi 37
La méthode du simplexe
1. Initialisation
Pour avoir une solution initiale réalisable, on commence par extraire de la
matrice A une base I qui soit réalisable et telle que le programme linéaire
soit sous forme canonique par rapport à cette base.
3 4 1 0 1 0
A= ⇒B= et I = (3, 4)
6 3 0 1 0 1
38 Recherche Opérationnelle
4.3 Résolution du problème par la méthode du simplexe
HHB :
HH
x1 x2 t1 t2 C
B H HH
t1 3 4 1 0 160
t2 6 3 0 1 180
4 1200 1000 0 0 −z = 0
HHB :
HH
x1 x2 t1 t2 C R
B HHH
160
t1 3 4 1 0 160 3
t2 6 3 0 1 180 30
4 1200 1000 0 0 −z = 0
Pr.Khatmi 39
La méthode du simplexe
sort de la base.
HHHB :
H
x1 x2 t1 t2 C R
B HHH
160
t1 3 4 1 0 160 3
t2 6 3 0 1 180 30
4 1200 1000 0 0 −z = 0
On appelle pivot l’intersection de la variable entrante et de la variable
sortante, dans notre exemple le pivot est 6.
Pour obtenir le tableau qui suit, on applique les règles suivantes :
N Les coefficients de la ligne du pivot sont divisés par le pivot. Le pivot
prend donc la valeur 1.
N Les coefficients de la colonne du pivot sont remis à 0 excepté le pivot
qui reste à la valeur 1.
N Pour les autres valeurs du tableau procéder comme suit à partir du
tableau précédent :
CCP ∗ CLP
N V = AV −
P
Avec :
• NV : Nouvelle Valeur de la case considérée du tableau
• AV : Ancienne Valeur de la case considérée du tableau
• CCP : Coefficient précédent de la colonne pivot situé sur la même
ligne que AV
• CLP : Coefficient précédent de la ligne pivot situé sur la même
Colonne que AV
• P : Valeur précédente du pivot.
Tableau 1
HHB :
HH
x1 x2 t1 t2 C
B H HH
t1 0 5/2 1 −1/2 70
x1 1 1/2 0 1/6 30
4 0 400 0 -200 −36000
3. Test d’arrêt
40 Recherche Opérationnelle
4.3 Résolution du problème par la méthode du simplexe
HHHB :
H
x1 x2 t1 t2 C R
B H
HH
t1 0 5/2 1 −1/2 70 28
x1 1 1/2 0 1/6 30 60
4 0 400 0 -200 −36000
x2 rentre dans la base et t1 sort de la base.
T ableau2
HHB :
HH
x1 x2 t1 t2 C
B HH
H
x2 0 1 2/5 −1/5 28
x1 1 0 −1/5 4/15 16
4 0 0 -160 -120 −47200
Tous les coefficients de la ligne 4 relatifs aux variables HB, sont négatifs ou
nuls, la solution trouvée est optimale. Nous avons donc ici atteint la solution
optimale.Ce tableau nous donne la solution optimale admissible :
X Les variables Hors Base (HB) sont nulles : t1 = 0 ; t2 = 0
X Les valeurs des variables dans la Base (B) se lisent dans la colonne C :
x2 = 28 et x1 = 16
Pr.Khatmi 41
La méthode du simplexe
−z = −47200 ⇒ z = 47200
Maximiser z = x1 + 2x2
Sous contraintes −3x1 + 2x2 ≤ 2
x1 + 2x2 ≤ 4
−x1 + x2 ≤ 5
x1 ≥ 0, x2 ≥ 0,
2. Initialisation :
−3 2 1 0 0 1 0 0
A = 1 2 0 1 0 ⇒ B = 0 1 0 et I = (3, 4, 5)
−1 1 0 0 1 0 0 1
les variables de base sont t1 , t2 et t3 dont les coûts sont nuls, donc la pre-
mière solution réalisable est
0
0
x= 2
4
5
T ableau0
42 Recherche Opérationnelle
4.3 Résolution du problème par la méthode du simplexe
HHB :
HH
x1 x2 t1 t2 t3 C R
B HH
H
t1 -3 2 1 0 0 2 1
t2 1 2 0 1 0 4 2
t3 -1 1 0 0 1 5 5
4 1 2 0 0 0 -z=0
Dans le tableau 0, on remarque que la variable x2 a un coût 2, donc positif
et il ya au moins un coefficient de la colonne x2 qui est positif,en plus
aucune variable hors base n’a un coût nul donc on passe au tableau 1.
T ableau1
HHHB :
H
x1 x2 t1 t2 t3 C R
B HHH
x2 − 32 1 1
2
0 0 1 − 23
1
t2 4 0 -1 1 0 2 2
1
t3 2
0 − 12 0 1 4 8
4 4 0 -1 0 0 -z=-2
Dans le tableau 1, on remarque que la variable x1 a un coût 4, donc positif
et il ya au moins un coefficient de la colonne x1 qui est positif,en plus
aucune variable hors base n’a un coût nul donc on passe au tableau 2.
T ableau2
HHB :
HH
x1 x2 t1 t2 t3 C R
B HHH
1 3 7
x2 0 1 8 8
0 4
14
x1 1 0 − 14 1
4
0 1
2
-2
t3 0 0 − 38 - 18 1 15
4
-10
4 0 0 0 -1 0 -z=-4
Les coûts sur la ligne 4 correspondant aux variables hors base sont négatifs
ou nuls, donc c’est la fin des itérations.On remarque que le coût de la
variable hors base t1 est nul, donc la solution est un ségement de premier
sommet M1 = ( 12 , 74 ), l’autre sommet est retrouvé en faisant entrer t1 dans
la base.
T ableau3
HHHB :
H
x x2 t1 t2 t3 C R
B HHH 1
t1 0 8 1 3 0 14
x1 1 2 0 1 0 4
t3 0 3 0 1 1 9
4 0 -4 0 -1 0 -z=-4
L’autre sommet est M2 = (4, 0).
Pr.Khatmi 43
La méthode du simplexe
2. Initialisation :
−2 5 1 0 1 0
A= ⇒B= et I = (3, 4)
−1 −3 0 1 0 1
les variables de base sont t1 et t2 dont les coûts sont nuls, donc la première
solution réalisable est
0
0
x= 8
HHB :
HH
x1 x2 t1 t2 C R
B HHH
t1 -2 5 1 0 8
t2 -1 -3 0 1 3
4 3 4 0 0 −z0 = 0
44 Recherche Opérationnelle
4.3 Résolution du problème par la méthode du simplexe
2. Initialisation
1 0 1 1 0
A= ⇒B= et I = (3, 2)
1 1 0 0 1
les variables de base sont t et y, or y a un coût égal à 1, donc non nul.
Pour que le programme soit canonique par rapport à la base I, il faut sup-
primer la variable y de la fonction objectif, pour cela il suffit de l’écrire en
fonction des variables hors base en utiulisant les équations des contraintes
économiques. D’aprés la deuxième équation, on a x + y = 2 ⇒ y = 2 − x,
donc z0 = 3x + (2 − x) = 2x + 2, le problème devient alors
Maximiser z = 2x + 2
Sous contraintes x+t = 7
x+y = 2
x ≥ 0 y ≥ 0, t ≥ 0
La première solution réalisable est
0
x0 = 7 et z0 = 2 × 0 + 2 = 2
2
3. Tableaus du simplexe
T ableau0
HHB :
HH
x y t C
B HHH
t 1 0 1 7
y 1 1 0 2
4 2 0 0 −z = −2
Pr.Khatmi 45
La méthode du simplexe
HHB :
HH
x y t C R
B HHH
t 1 0 1 7 7
y 1 1 0 2 2
4 2 0 0 −z = −2
T ableau1
HHB :
HH
x y t C
B HH
H
t 0 -1 1 5
x 1 1 0 2
4 0 -2 0 −z = −6
Le test d’arrêt est vérifié, tous les coûts sont négatifs ou nuls et aucune
variable hors base n’a un coût nul, donc la solution est unique.
x 2
Mop = = et zop = 6
y 0
Remarque 4.3.4.
• y = 0 car c’est une variable hors bas On donne pas la valeur des
variables d’out
• d’aprés le tableau 1, t = 5 mais comme c’est une variable d’écart, ce
n’est pas nécessaire de la donner.
46 Recherche Opérationnelle
4.3 Résolution du problème par la méthode du simplexe
1. Ecriturer standard
2. Matrice A
8 4 −1 0
1 5 0 −1
On remarque qu’on ne peut extraire l’identité I2 de la matrice A, donc le problème
n’est pas canonique. Pour trouver une première base réalisable, on introduit des
variables artificielles dans les équations qui posent problème. On prends pour
objectif artificielle minimiser ses varaibles.
On introduit des variables artificielles dans les équations qui posent problème.
On prends pour objectif artificielle minimiser ses varaibles.
Le programme artificielle associé est
Minimiser w = k1 + k2
Sous contraintes 8x1 + 4x2 − t1 + k1 = 40
x1 + 5x2 − t2 + k2 = 10
x1 ≥ 0, x2 ≥ 0 t1 ≥ 0, t2 ≥ 0 k1 ≥ 0, k2 ≥ 0
m
Maximiser (−w) = −k1 − k2
Sous contraintes 8x1 + 4x2 − t1 + k1 = 40
x1 + 5x2 − t2 + k2 = 10
x1 ≥ 0, x2 ≥ 0 t1 ≥ 0, t2 ≥ 0 k1 ≥ 0, k2 ≥ 0
Le programme artificielle relève du cas de programme canonique par rapport
à la base, en effet :
8 4 −1 0 1 0 1 0
A= ⇒B= et I = (5, 6)
1 5 0 −1 0 1 0 1
Pr.Khatmi 47
La méthode du simplexe
technique à lever : les variable k1 et k2 sont en base alors que leurs coûts sont non
nuls (l’une des conditions du tableau du simplexe n’est pas satisfait). Il suffit de
reformuler l’objectif en utilisant l’équation où figure les variables artificielles :
HHB :
HH
x1 x2 t1 t2 k1 k2 C R
B HH
H
Tableau 0 : k1 8 4 −1 0 1 0 40 5
k2 1 5 0 −1 0 1 10 10
4 9 9 -1 -1 0 0 50
HHB :
HH
x1 x2 t1 t2 k1 k2 C R
B HH
H
Tableau 1 : x1 1 1/2 −1/8 0 1/8 0 5 10
k2 0 9/2 1/8 −1 −1/8 1 5 10/9
4 0 9/2 1/8 -1 −9/8 0 5
HHB :
HH
x1 x2 t1 t2 k1 k2 C
B HH
H
Tableau 2 : x1 1 0 −5/36 1/9 5/36 -1/9 40/9
x2 0 1 1/36 −2/9 −1/36 2/9 10/9
4 0 0 0 0 −1 -1 0
48 Recherche Opérationnelle
4.3 Résolution du problème par la méthode du simplexe
HHB :
HH
x1 x2 t1 t2 C R
B HHH
Tableau 0 : x1 1 0 −5/36 1/9 40/9 40
x2 0 1 1/36 −2/9 10/9 -5
4 0 0 5/36 8/9 -130/9
HHB :
HH
x1 x2 t1 t2 C
B HHH
Tableau 1 : t2 9 0 −5/4 1 40
x2 2 1 −1/4 0 10
4 -8 0 5/4 0 -50
Pr.Khatmi 49
La méthode du simplexe
On remarque que la variable hors base t1 a une valeur positive dans la ligne
4, mais ses autres coefficients sont tous nuls, donc le test d’arrêt est vérifié, le
problème n’est pas borné et la solution optimale est l’infini, résultat confirmé par
la méthode graphique.
Proposition 4.3.3. Le programme linéaire initial n’admet pas de solution réali-
sable si et seulement si à la fin des itérations du programme artificiel $0 6= 0.
Exemple 4.3.5.
Maximiser z = 2x + y
Sous contraintes x+y ≤ 2
x−y ≥ 3
x ≥ 0, y ≥ 0
1. Ecriture sous forme standard :
Maximiser z = 2x + y
Sous contraintes x + y + t1 = 2
x − y − t2 = 3
x ≥ 0, y ≥ 0 t1 ≥ 0 t2 > 0
2. Initialisation
1 1 1 0
A=
1 −1 0 −1
On remarque qu’onne peut extraire l’identité I2 de la matrice A,il nous
0
manque la colonne donc le problème n’est pas canonique. Pour trou-
1
ver une première base réalisable, on introduit une variable artificielle
k dans la deuxième équation ”Equation qui pose le problème”.
Minimiser w=k
Sous contraintes x + y + t1 = 2
x − y + t2 + k = 3
x ≥ 0, y ≥ 0, t1 ≥ 0, t2 ≥ 0, k ≥ 0
Maximiser w = −k
Sous contraintes x + y + t1 = 2
x − y + t2 + k = 3
x ≥ 0, y ≥ 0, t1 ≥ 0, t2 ≥ 0, k ≥ 0
50 Recherche Opérationnelle
4.3 Résolution du problème par la méthode du simplexe
1 1 1 0 0 1 0 t1
⇒B= , I = (3, 5) et Vb =
1 −1 0 −1 1 0 1 k
k a un côut non nul, il faut l’écrire en fonction des variables hors base
−k = x − y − t − 2 − 3 ⇒ w = x − y − t2 − 3
x 0
y 0
la solution réalisable du problème artificiel est t1
= 2 et w0 = −3
t2 0
k 3
Tableau 0
HHB :
HH
x y t1 t2 k C
B H HH
t1 1 1 1 0 0 2
k 1 -1 0 -1 1 3
4 1 -1 0 -1 0 −w = 3
HHB :
HH
x y t1 t2 k C R
B HHH
t1 1 1 1 0 0 2 2
k 1 -1 0 -1 1 3 3
4 1 -1 0 -1 0 −w = 3
Tableau 1
HHB :
HH
x y t1 t2 k C
B HH
H
x 1 1 1 0 0 2
k 0 -2 -1 -1 1 1
4 0 -2 -1 -1 0 −w = 1
On remarque que le test d’arrêt est vérifié puisque aucune varaible hors base n’a
un coût positif, cependant −w = 1, donc il n’ya pas de solution réalisable pour le
problème initial.
Pr.Khatmi 51