0% ont trouvé ce document utile (0 vote)
1 vues61 pages

Cours Pl

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1/ 61

1

patterns arrows decorations.markings


Table des matières

1 Rappel sur l’algèbre lineaires 5


1.1 Espace vectoriel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.1 Sous espaces vectoriels . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.2 Combinaisons lineaires . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.3 Partie génératrice . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.4 Indépendance linéeaire . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.5 Base d’un espace vectoriel . . . . . . . . . . . . . . . . . . . . . . 7
1.1.6 Dimension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.7 Changement de base . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2 Ensembles des matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.1 Matrices particulières . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.2 Transposée d’une matrice . . . . . . . . . . . . . . . . . . . . . . 10
1.2.3 Opérations sur les matrices . . . . . . . . . . . . . . . . . . . . . 11
1.2.4 Multiplication des matrices . . . . . . . . . . . . . . . . . . . . . 11
1.2.5 Matrices inversibles . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.6 Rang d’une matrice . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.7 Transformations élémentaires . . . . . . . . . . . . . . . . . . . . 14
1.3 Systèmes linéaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3.1 Méthode du pivot de Gauss . . . . . . . . . . . . . . . . . . . . . 16

2 Modélisation de problèmes concrets sous forme d’un programme li-


néaire 19
2.1 Formulation du modèle mathématique . . . . . . . . . . . . . . . . . . . 19
2.2 Exemples concrets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Table des matières 3

3 Problème général de la programmation linéaire 23


3.1 Forme générale d’un programme linéaire . . . . . . . . . . . . . . . . . . 23
3.2 Forme canonique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.3 Forme standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

4 Résolution graphique d’un PL 28


4.1 Dé…nitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.2 Aspects géométriques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.3 Etapes de résolution graphique d’un PL . . . . . . . . . . . . . . . . . . 30

5 Propriétés fondamentales de la PL 33
5.1 Dé…nitions et propriétés . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.2 Résultats fondamentaux de la PL . . . . . . . . . . . . . . . . . . . . . . 38

6 Méthode de simplexe 39
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.2 Forme standard d’un programme linéaire par rapport à une base B . . . 39
6.3 Algorithme du simplexe . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.3.1 Etapes de l’algorithme . . . . . . . . . . . . . . . . . . . . . . . . 43
6.4 Obtention d’une base réalisable de départ . . . . . . . . . . . . . . . . . . 47
6.5 Etapes de la méthode des deux phases . . . . . . . . . . . . . . . . . . . 49

7 Dualité 52
7.1 Problèmes duaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
7.1.1 Dé…nitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
7.1.2 Propriétés et règles de construction du dual . . . . . . . . . . . . 53
7.2 Théorèmes fondamentaux de la dualité . . . . . . . . . . . . . . . . . . . 54
7.3 Méthode de dual simplexe . . . . . . . . . . . . . . . . . . . . . . . . . . 59
7.3.1 Algorithme de dual simplexe . . . . . . . . . . . . . . . . . . . . . 59
7.4 Ecriture des variables duales dans le tableau de simplexe …nal . . . . . . 61
Table des …gures
Chapitre 1

Rappel sur l’algèbre lineaires

1.1 Espace vectoriel


Dé…nitions et notations : Soit K un corps commutatif et soit E un ensemble. On
dé…nit sur E une loi additive (+) intèrne :

+ : E E !E

(u; v) ! u+v

et on dé…nit une loi multiplicative ( ) extèrne :

: K E !E

(u; v) ! v

On dit que le triplet (E; +; ) est un espace vectoriel (e.v.) sur le corps K (ou un
K-espace vectoriel) si :
1: (E; +) est un groupe commutatif.
2: 8 ; 2 K, 8u; v 2 E on a :
(a) ( + ) u = ( u) + ( u)
(b) :(u + v) = u + :v
(c) ( ) v= ( u)
(d) 1K u = u

Remarque 1.1.1 Les élements de E sont appelés vecteurs et les élements de K sont des
scalaires.

Exemple : Rn est un e.v. sur R.


Chapitre 1. Rappel sur l’algèbre lineaires 6

1.1.1 Sous espaces vectoriels

Dé…nition 1.1.1 E un espace vectoriel sur K.

Soit F une partie non vide de E. On dit que F est un sous espace vectoriel (s.e.v.)
de E si :
1. F est non vide. (F contient au moins l’éléement neutre)
2. 8u; v 2 F , u + v 2 F . (stable pour l’addition)
3. 8u 2 F , 8 K, :u 2 F . (stable pour la multiplication par un scalaire).

Proposition 1.1.1 Soit E un e.v. sur K. F une partie non vide de E. Pour que F soit
un s.e.v. de E il faut et il su¢ t que : 8u; v 2 F , 8 K, u + v 2 F .

Exemple :
1. Soit x 2 E, l’ensemble f x; 2 Kg est un s.e.v. deE.
2. E = R3 , a; b; c 2 R, F = f(x; y; z) 2 R3 =ax + by + cz = 0g est un s.e.v. de E.

1.1.2 Combinaisons lineaires

Dé…nition 1.1.2 Soit E un e.v. sur K, soient x1 ; x2 ; :::; xp vecteurs de E, 1; 2 ; :::; p

scalaires de K.

Le vecteur X = 1 x1 + 2 x2 + ::: + p xp est appelé une combinaison linéaire (C.L.)


des vecteurs x1 ; x2 ; :::; xp .
Exemple : L’ensemble de toutes les C.L. de x1 ; x2 ; :::; xp est un s.e.v. de E, c-à-d :

Pp
Proposition 1.1.2 G = fX : X = i=1 i xi ; 8xi 2 E; 8 i 2 Kg est un s.e.v. de E.

1.1.3 Partie génératrice

Dé…nition 1.1.3 Soit E un e.v. sur K et soit F un s.e.v. sur E. On dit que la famille P
de p éléments de E, P = fx1 ; x2 ; :::; xp g engendre F . ou que P est une famille génértrice
de F si tout élément de F est combinaison linéaire des éléments de la famille P .(c- à-d
P
8X 2 F , 9 1 ; 2 ; :::; p 2 K tq X = pi=1 i xi )
Chapitre 1. Rappel sur l’algèbre lineaires 7

1.1.4 Indépendance linéeaire

Dé…nition 1.1.4 Soit E un K-e.v. et x1 ; x2 ; :::; xn 2 E.

On dit que les vecteurs x1 ; x2 ; :::; xn sont linéairement indépendant (L.I.) si 9 1; 2 ; :::; n.

1 x1 + 2 x2 + ::: + n xn = 0 =) 1 = 2 = ::: = p = 0, si non ils sont linéairement


dépendants (L.D.)

1.1.5 Base d’un espace vectoriel

Dé…nition 1.1.5 Soit E un e.v. sur K. L’ensemble des n vecteurs x1 ; x2 ; :::; xn de E est
une base de E si :
1. x1 ; x2 ; :::; xn sont L.I.
2. Tout vecteur X de E s’écrit comme C.L. de x1 ; x2 ; :::; xn .

Théorème 1.1.1 les vecteurs x1 ; x2 ; :::; xn de l’e.v. E forment une base de E si et seule-
ment si tout vecteur de E s’érit et d’une façon unique comme C.L. de x1 ; x2 ; :::; xn .

1.1.6 Dimension

Dé…nition 1.1.6 Soit E un e.v. sur K, E est dit de dimension …nie (sur K) s’il est
engendré par un nombre …ni de ses vecteurs. Ce nombre est la dimension de l’e.v. E et
note dimR E.

Remarque 1.1.2 Toutes les bases d’un même e.v. E ont alors la même dimension.

Théorème 1.1.2 Tout espace vectoriel E sur K de dimension …nie admet une base.

Remarque 1.1.3 Dans un e.v. E de dimension n sur K :

1. n vecteurs L.I. forment une base de E.


2. n vecteurs qui engendrent E forment une base de E.

Théorème 1.1.3 Soit E un e.v. de dimension …nie sur K.

Soit F un s.e.v. de E, alors :


1. dim F dim E.
Chapitre 1. Rappel sur l’algèbre lineaires 8

2. dim F = dim E si et seulement si F = E.


Exemple :
1. Les vecteurs e1 = (1; 0; :::; 0); e2 = (0; 1; 0; :::; 0); :::; en = (0; 0; :::; 1) forment une
base de Rn dite base canonique de Rn .
2. v1 = (1; 2; 0), v2 = (1; 0; 3), v3 = (2; 2; 3) forment une base de R3 .

1.1.7 Changement de base

Dé…nition : Soit E un K-espace vectoriel de dimension …ni et soient B = fe1 ; e2 ; :::; en g,


B 0 = fe01 ; e02 ; :::; e0n g deux bases de E,
On appelle matrice de passage de la base B à la base B 0 , la matrice P (B 0 ; B).
( P a comme coe¤cients les composantes des vecteurs de la base B 0 dans la base B).
e01 = a11 e1 + a12 e2 + ::: + a1n en
e02 = a21 e1 + a22 e2 + ::: + a2n en
:
:
e0n = an1 e1 + an2 e2 + ::: + ann en
Si X 0
2 E, alors
1 X 0 = x1 e1 + x2 e2 + ::: + xn1 = y1 e01 + y2 e02 + ::: + yn e0n .
en0et X 1
x a a : : : a1n y
B 1 C B 11 12 CB 1 C
B C B CB C
B x2 C B a21 a22 : : : a2n C B y2 C
X=B B
C=B
C B
CB
CB
C
C
B : C B : : : : : : CB : C
@ A @ A@ A
xn an1 an2 : : : ann yn
X = P Y où P = (e1 ; e2 ; :::; en ) matrice de passage de la base B à la base B 0
0 0 0

Exemple : Soient B = f(1; 0; 0); (0; 1; 0); (0; 0; 1)g et B 0 = f(1; 1; 0); (0; 1; 1); (2; 1; 0)g
des bases de R30
. Alors 1
1 0 2
B C
0 B C
P (B ; B) = B 1 1 1 C.
@ A
0 1 0

1.2 Ensembles des matrices


Dé…nition 1.2.1 Soit K un corps commutatif. On appelle matrice à coe¤cients dans K
tout tableau réctangulaire ou carré de la forme
Chapitre 1. Rappel sur l’algèbre lineaires 9

0 1
a a12 : : : a1n
B 11 C
B C
B a21 a22 : : : a2n C
B C
B C
B : : : : : : C
B C
B C
B : : : : : : C
B C
B C
B : : : : : : C
@ A
am1 am2 : : : anm
où les ai;j sont des éléments de K :
Si on note (ai;j ) cette matrice, alors :
-Les ai;j sont appelés coe¢ cients ou termes de la matrice (ai;j ) :
-La matrice (ai;j ) est dite de type (m; n) si, elle est à m lignes et à n colonnes.
-L’ensemble des matrices
0 de type
1(m; n) à coe¤cients dans K est noté M(m;n) (K).
2 1 3
B C
B C
B 0 4 2 C
Exemple : A = B B
C A est une matrice de type (4; 3) à coe¤cients dans
C
B 5 7 3 C
@ A
1 1 0
R.

1.2.1 Matrices particulières

- Une matrice est appelée matrice nulle et est notée 0 si, tous ses coe¢ cients sont
nuls. C-à-d : (ai;j ) = 0 ssi pour tout i et tout j on a : ai;j = 0.
- Une matrice est appelée matrice ligne d’ordre n si, elle est de type (1; n).
- Une matrice est appelée matrice colonne d’ordre m si, elle est de type (m; 1).
- Une matrice est appelée matrice carrée d’ordre n si, elle est de type (n; n).
- Une matrice est appelée matrice triangulaire supérieure d’ordre n si, elle est une
matrice carrée d’ordre n dont tous les coe¤cients placés sous les coe¤cients diagonaux
sont nuls. C-à-d : (ai;j ) est triangulaire supérieure d’ordre n, ssi, elle est de type (n; n)et
ai;j = 0 pour i > j.
- Une matrice est appelée matrice triangulaire inférieure d’ordre n si, elle est une
matrice carrée d’ordre n dont tous les coe¤cients placés sur les coe¤cients diagonaux sont
nuls.
C-à-d : (ai;j ) est triangulaire inférieure d’ordre n, ssi, elle est de type (n; n)et ai;j = 0
pour i < j.
Chapitre 1. Rappel sur l’algèbre lineaires 10

- Une matrice est appelée matrice diagonale d’ordre n si, elle est une matrice trian-
gulaire supérieure et inférieure d’ordre n : C-à-d : (ai;j ) est diagonale d’ordre n, ssi, elle
est de type (n; n)et ai;j = 0 pour i 6= j.
- Une matrice est appelée matrice identité d’ordre n et est noté In si, elle est une
matrice diagonale dont tous les coe¤cients diagonaux sont égaux à 1 : C-à-d : (ai;j ) = In ,
ssi, elle est de type (n; n), ai;i = 1 et ai;j = 0 pour i 6= j.
Exemples
0 :1
0 0 0
-@ A est une matrice nulle de type (2; 3).
0 0 0
- (1;
0 5; 1 2; 0; 3) est une matrice ligne d’ordre 5.
2
B C
B C
- B 1 C est une matrice colonne d’ordre 3.
@ A
1
0 1
1 3
-@ A est une matrice carrée d’ordre 2.
1 5
0 1 0 1
1 4 3 1 0 0
B C B C
B C B C
- B 0 5 1 C et B 1 2 0 C sont des matrices triangulaire supérieure et tri-
@ A @ A
0 0 2 3 0 3
angulaire
0 inférieure,
1 respectivement,
0 1 d’ordres 3.
1 0 0 1 0 0
B C B C
B C B C
- B 0 2 0 C et B 0 1 0 C sont des matrices diagonale et identité, respective-
@ A @ A
0 0 3 0 0 1
ment, d’ordres 3.

1.2.2 Transposée d’une matrice

On appelle transposée de la matrice A de M(m;n) (K), la matrice de M(n;m) (K) notée


t
A et dé…nie par t (ai;j ) = (aj;i ) pour tous i et j.
Remarques :
1) t A est la matrice dont les lignes sont les colonnes de A.
2) t (t A) = A
3) Si t A = A , la matrice A est dite symétrique.
Chapitre 1. Rappel sur l’algèbre lineaires 11

0 1
2 1 3 0 1
B C 2 0 5 1
B C B C
B 0 4 2 C B C
Exemple 1 : Si A = B
B
C, alors t A = B 1 4
C 7 1 C
B 5 7 3 C @ A
@ A 3 2 3 0
1 1 0
0 1 0 1
1 3 2 1 3 2
B C B C
B C t B C
Exemple 2 : Si A = B 3 4 1 C, alors A = B 3 4 1 C = A d’où A
@ A @ A
2 1 0 2 1 0
est symétrique.

1.2.3 Opérations sur les matrices

Soient A = (ai;j ) et B = (bi;j ) deux matrices de M(m;n) (K) et un scalaire de K.


On dé…nit la somme A + B et le produit par scalaire :A par :
A + B = (a + b)i;j avec (a + b)i;j = (aj;i ) + (bi;j ) et :A = ( :aj;i ).
Remarque : La somme de matrices est dé…nie si, les matrices sont
0 du même type. 1
0 1 0 1 2 0 5 1
2 1 3 1 0 2 B C
B C
Exemples : Si A = @ A, B = @ A, C = B 1 4 7 1 C,
1 0 4 3 2 1 @ A
3 2 3 0
0 1 0 1 0 1
3 1 5 2 1 3 4 2 6
alors A + B = @ A et 2:A = 2: @ A=@ A.
4 2 3 1 0 4 2 0 8
La somme A + C n’est pas dé…nie, car A 2 M(2;3) (K) et C 2 M(3;4) (K).

1.2.4 Multiplication des matrices

Soient A = (aj;i ) une matrice de M(m;n) (R) et B = (bi;j ) une matrice de M(n;p) (K).
On dé…nit le produit A:B par :
P
n
A:B = (ci;j ) avec ci;j = ai;p :bp;j = ai;1 :b1;j + ai;2 :b2;j + ::: + ai;n :bn;j .
k=1
Remarques :
1) Le produit de matrices est dé…ni si, le nombre des colonnes de la première matrice
est égal au nombre des lignes de la deuxième matrice.
2) A:B une matrice de M(m;p) (K).
Chapitre 1. Rappel sur l’algèbre lineaires 12

0 1
0 1 2 0 5 1
2 1 3 B C
Exemples : Si A = @ A et B = B
B 1 4
C
7 1 C, alors A:B une
1 0 4 @ A
3 2 3 0
0 1
14 7 6 1
matrice du type (2; 4) et A:B = @ A.
14 8 7 1
Le produit B:A n’est pas dé…ni, car B 2 M(3;4) (K) et A 2 M(2;3) (K).

Propriétés : Soient A; B 2 M(m;n) (K), C; D 2 M(n;k) (K) et Q 2 M(k;s) (K), alors :


1) Im :A = A = A:In .
2) (A + B):C = A:C + B:C et A:(C + D) = A:C + A:D:
3) A:(C:Q) = (A:C):Q:
4) :(A:C) = ( :A):C = A:( :C) où 2 K.
5) t (A + B) =t A +t B et t ( :A) = :t A.
6) t (A:B) =t B:t A
7) A:0 = 0 et 0:A = 0 où 0 désigne les matrices nulles convenables.
8) On peut avoir A:C = 0, avec A 6= 0 et C 6= 0.
Théorème : L’ensemble M(m;n) (K), muni de l’addition des matrices et la multipli-
cation par scalaire, est un K-espace vectoriel de dimension m:n.
Exemple0 : dimR M1(2;3) (K) =06 et les matrices
1 suivantes
0 forment1une base de M(2;3) (K),
1 0 0 0 0 0 0 1 0
E1;1 = @ A, E2;1 = @ A, E1;2 = @ A,
0 0 0 1 0 0 0 0 0
0 1 0 1 0 1
0 0 0 0 0 1 0 0 0
E2;2 = @ A, E1;3 = @ A, E2;3 = @ A,
0 1 0 0 0 0 0 0 1
Théorème : L’ensemble M(n;n) (K), muni de l’addition et la multiplication des ma-
trices, est un anneau unitaire d’élément unité In .
Remarque : Si n 6= 1, l’anneau M(n;n) (K) n’est ni commutatif ni intègre.

1.2.5 Matrices inversibles

On dit qu’une matrice A de M(n;n) (K) est inversible si, elle admet un inverse pour
la multiplication des matrices.
C-à-d : A est inversible si, il existe une matrice B telle que A:B = In = B:A.
La matrice inverse B, si elle existe, est notée A 1 .
Chapitre 1. Rappel sur l’algèbre lineaires 13

Propriétés : Si A et B sont deux matrices inversibles de M(n;n) (K), alors :


1
1) A est inversible et (A 1 ) 1
= A.
1
2) A:B est inversible et (A:B) = B 1 :A 1 .

Proposition : A 2 M(n;n) (K) est inversible, ssi, det (A) 6= 0, et dans ce cas

1 1
A = :adj (A) :
det (A)

adj (A) est la matrice adjointe de A obtenue en remplaçant chaque élement aij de A par
son cofacteur et en transposant
0 la matrice ainsi obtenue.
1 0 1
1 2 3 1 2 1
B C 1 1 B C
B C B C
Exemple : A = B 0 1 2 C et A 1 = :adj (A) = B 1 2 2 C.
@ A det (A) 2@ A
1 0 1 1 2 1

1.2.6 Rang d’une matrice

Soit r un nombre entier tel que r minfm; ng.


Le rang d’une matrice A = (ai;j ) 2 M(m;n) (K) est égal à r s’il existe au moins une
sous-matrice carrée d’ordre r qui est non-singulière et si toutes les sousmatrices carrées
d’ordre supérieur à r sont singulières.
Le rang d’une matrice est égal à l’ordre de la plus grande sous-matrice carrée non-
singulière.
On dé…nit aussi le rang d’une matrice comme étant le rang de ses vecteurs colonnes.
Le rang d’une matrice est le nombre maximal de vecteurs lignes (ou colonnes) linéai-
rement indépendants.
Dans le cas d’une matrice nulle, on dit que le rang est zéro. Lorsque le rang r d’une
matrice est maximal : r = min(m; n); la matrice est dite de rang plein.
Une matrice A = (ai;j ) 2 M(n;n) (K) est inversible, ssi, rg(A) = n.

Exemple 1.2.1 Déterminer le rang des deux matrices suivantes :


0 1
0 1 1 0 1
1 3 2 B C
B C
A=@ A B=B 0 5 1 C
1 3 1 @ A
1 0 1
Chapitre 1. Rappel sur l’algèbre lineaires 14

1. La matrice A est d’ordre 2 3 et donc r minf2; 3g; ceci implique que r = 0; 1


ou 2. Comme le déterminant de la sous-matrice composée de la première et de
la deuxième colonne est nul, on ne peut pas conclure, mais comme le déterminant
de la sous-matrice composée de la première et de la troisième colonne est non nul,
alors r = 2.

2. Puisque
0 le1déterminant de B est 0; alors r 6= 3; or le déterminant de la sous-matrice
1 0
@ A est 5. Donc le rang de B est 2.
0 5

Remarque 1.2.1 Le calcul du rang d’une matrice peut être une opération très longue.
Prenons le cas d’une matrice carrée d’ordre n. Nous devons d’abord calculer le déter-
minant de la matrice. S’il est di¤érentérent de zéro, le rang de la matrice est n, mais
s’il est égal à zéro, il faut calculer le déterminant des sous-matrices d’odre (n 1) . Or,
il y en a n2 . Et si toutes ces sous-matrices ont un déterminant nul, il faut passer aux
sous-matrices d’ordre (n 2) et ainsi de suite.

Pour cette raison que nous allons voir une méthode qui facilite la détermination du
rang d’une matrice. Cette méthode se base sur les transformations élémentaires.

1.2.7 Transformations élémentaires

Il y a trois sortes de transformations élémentaires :

1. Echange de deux lignes (colonnes) de la matrice. Li $ Lj

2. Multiplication de tous les éléments d’une ligne de la matrice par la même constante
(di¤érente de zéro). Li $ Li ( 6= 0):

3. Addition aux éléments d’une ligne de la matrice un multiple quelconque des élé-
ments correspondants d’une autre ligne. Li $ Li + Lj ; 2 R:

Ces transformations élémentaires ne changent pas le rang de la matrice.


Chapitre 1. Rappel sur l’algèbre lineaires 15

1.3 Systèmes linéaires


Dé…nition 1.3.1 Soient m et n deux entiers naturels non nuls. On appelle système
d’équations linéaires de m équations à n inconnues x1 ; x2 ; :::; xn le système :
8
>
> a11 x1 + a12 x2 + ::: + a1n xn = b1
>
>
>
>
< a21 x1 + a22 x2 + ::: + a2n xn = b2
(S) où aij ; bi 2 R
>
> :::
>
>
>
>
: a x + a x + ::: + a x = b
m1 1 m2 2 mn n m

Le système s’écrit0sous la forme matricielle


10 1 0 1
8 a a12 a1n x b
>
> Ax = b B 11 CB 1 C B 1 C
>
< B C B C B C
B a21 a22 a2n C B x2 C B b2 C
x 2 Rn () B B .. .. ..
CB C B
.. C B .. C = B ..
C.
C
>
> B . . . . C B . C B . C
>
: b 2 Rm @ A@ A @ A
am1 am2 amn xn bm
8
>
> A1 x = b 1
>
>
>
>
< A x=b P
2 2
En ligne : () En colonne : nj=1 Aj xj = b:
>
> :
>
>
>
>
: A x=b
m m

Exemple : 0 1
8 0 1 0x1 1
>
> x + 3x2 + 4x3 + x4 = 1 2 3 4 1 B B C 1
>
< 1 B CB x C B C
B C C
() B 0 2 2 6 CB
2
C=B C
>
3x2 + 2x3 + 6x4 = 6
@ AB C B 6 C
>
> B x3 C @ A
: x + 2x 3x3 = 4 1 2 3 0 @ A 4
1 2
x4
8
>
> (2; 3; 4; 1) x = 1
>
<
En ligne : (0; 2; 2; 6) x = 6
>
>
>
: ( 1; 2; 3; 0) x = 4
0 1 0 1 0 1 0 1 0 1
2 3 4 1 1
B C B C B C B C B C
B C B C B C B C B C
En colonne : B 0 C x1 + B 2 C x2 + B 2 C x3 + B 6 C x4 = B 6 C
@ A @ A @ A @ A @ A
1 2 3 0 4
– Lorsque m = n, le système (S) est dit "carré"
– Une solution de (S) est un n-uplet (x1 ; x2 ; :::; xn ) véri…ant les m équations de (S).
– Lorsque tous les coe¢ cients situés sous la diagonale sont nuls, le système est dit
triangulaires supérieur.
Chapitre 1. Rappel sur l’algèbre lineaires 16

Dé…nition 1.3.2 Deux systèmes d’équations linéaires (S) et (S 0 ) sont dits équivalents
lorsqu’ils ont le même ensemble de solutions.

Théorème 1.3.1 Une opération élémentaire sur les lignes d’un système linéaire Ax = b
le transforme en un système équivalent.

1.3.1 Méthode du pivot de Gauss

La méthode de GAUSS consiste à tranformer un système linéaire en un système


triangulaire équivalent en exécutant des transformations élémentaires sur les lignes. Ainsi,
pour résoudre un système linéaire par la méthode de GAUSS, on procède comme suit :
1. On véri…e que dans la ligne L1 , le coé¢ cient de la première inconnue est non nul,
sinon on échange L1 avec une ligne dont le coé¢ cient de la première inconnue est 6= 0 ;
aij
2. On garde la ligne L1 et à l’aide de la transformation élémentaire Li $ Li L,
ajj j

on annule tous les coé¢ cients de la première inconnue dans les autres lignes ;
3. On recommence le procédé pour la deuxième inconnue, la troisième, . . . , jusqu’à
obtention d’un système triangulaire.

Exemple 1 : Soit à résoudre le système :


8
>
> x+y+z =1
>
<
x + 2y + 2z = 2
>
>
>
: x + 2y + 3z = 3

Les opérations élémentaires : Li Li L1 (i = 2; 3)donnent le système :


8
>
>
> x+y+z =1
<
y+z =1
>
>
>
: y + 2z = 2

puis l’opération L3 L3 L2 donne :


8
>
> x+y+z =1
>
<
y+z =1
>
>
>
: z=1

et le système a pour unique solution (x; y; z) = (0; 0; 1).


Chapitre 1. Rappel sur l’algèbre lineaires 17

Exemple 2 : Soit à résoudre le système :


8
>
> x+y+z =1
>
<
x + 2y + 2z = 2
>
>
>
: x + 2y + 2z = 3

Les opérations élémentaires :

Li Li L1 (i = 2; 3)

donnent le système : 8
>
> x+y+z =1
>
<
y+z =1
>
>
>
: y+z =2
puis l’opération L3 L3 L2 donne :
8
>
> x+y+z =1
>
<
y+z =1
>
>
>
: 0=1
et le système n’a pas de solution.

Exemple 3 : Soit à résoudre le système :


8
>
> x 2y + t = 1
>
<
x y z + 4t = 1
>
>
>
: x 3y + z 2t = 1

Les opérations élémentaires :

Li Li L1 (i = 2; 3)

donnent le système : 8
>
> x 2y + t = 1
>
<
y z + 3t = 0
>
>
>
: y + z 3t = 0

équivalent à : 8
< x 2y + t = 1
: y z + 3t = 0
et le système a in…nité de solutions données par :

(x; y; z; t) = (1 + 2z 7t; z 3t; z; t), où (z; t) 2 R2 .


Chapitre 1. Rappel sur l’algèbre lineaires 18

Dé…nition 1.3.3 Un système (S) est échelonné si le nombre de premiers coe¢ cients
nuls successifs de chaque équation est strictement croissant.

Exemple :
8
>
> x1 + 2x2 + 3x3 + x4 = 2
>
>
>
>
< 3x + 7x + 5x = 3
2 3 4
>
> 3x3 + 2x4 = 5
>
>
>
>
: 3x4 = 8
Ce système s’écrit sous la forme suivante Ax = b où
0 1 0 1
1 2 3 1 2
B C B C
B C B C
B 0 3 7 5 C B 3 C
A=B B
C et b = B
C B
C
C
B 0 0 3 2 C B 5 C
@ A @ A
0 0 0 3 8

La matrice A est dite matrice échelonnée.


La matrice augmentée associée à ce système s’écrit comme suit
0 1
1 2 3 1 2
B C
B C
B 0 3 7 5 3 C
[A j b] = B
B
C
C
B 0 0 3 2 5 C
@ A
0 0 0 3 8

Dé…nition 1.3.4 Le rang d’une matrice est le plus grand nombre de termes non nuls
sur la diagonale d’une matrice échelonnée.

Exemple : 0 1
1 0 9
B C
B C
A=B 0 4 18 C , rang (A) = 2.
@ A
0 0 0
0 1
1 0 9
B C
B C
A=B 0 4 18 C , rang (A) = 3.
@ A
0 0 8
Chapitre 2

Modélisation de problèmes concrets


sous forme d’un programme linéaire

La programmation linéaire à pour objet l’étude et la résolution des programmes li-


néaires c’est à dire des problèmes d’optimisation dans lesquels la fonction objective aussi
bien que les contraintes sont exprimés de manière linéaire. Le terme programmation dé-
signe ici l’organisation des calculs et non la réalisation d’un programme informatique.
Ce terme a été introduit, en même temps que la méthode du simplexe, par G. Dantzig
en 1940. Du point de vue des applications, la programmation linéaire est d’une grande
portée. Elle s’applique à des problèmes très variés qui sont issus de la vie pratique ; dans
ce cadre, on peut citer par exemple, les problèmes de type gestion de stock, gestion de
production, transport de marchandise, etc.

2.1 Formulation du modèle mathématique


La formulation du modèle mathématique est l’étape la plus délicate de la résolu-
tion d’un problème sous la forme d’un programme linéaire. Elle nécessite un e¤ort de
conception qui doit aboutir à la détermination des trois éléments suivants :
– Les variables de décision (les inconnus du problèmes) pour lequelles on doit
décider du niveau à atteindre, tel que le niveau d’activité dans l’entreprise.
– La fonction objectif qui décrit la relation linéaire représentant l’objectif de l’en-
treprise, à l’aide des variables de décision.
Chapitre 2. Modélisation de problèmes concrets sous forme d’un
programme linéaire 20

– Les contraintes du modèle qui décrivent les relations linéaires entre les variables
de décision représentant les restrictions auquelles est sujette l’entreprise.

2.2 Exemples concrets


Exercice 1 Une …rme fabrique deux produit A; B, à partir de 3 matières premières a; b; c.
Le Tableau ci-dessous fournit le nombre d’unités de matières premières entrant dans la
fabrication, respectivement d’une unité de A et de B (ces unités ne sont pas précisées).

A B
a 2 1
:
b 1 2
c 0 1
Par ailleurs, le Tableau suivant précise le nombre d’unités en stock pour chaque matière
première.
Matières premières Nombre d’unités en stock
a 8
:
b 7
c 3
En…n les pro…ts unitaires sur A et B sont respectivement 1:5 et 1 (exprimés en unité
monétaire par unité de produit). On cherche les quantités de produit A et B qu’il convient
de fabriquer pour maximiser le béné…ce de la …rme.

Solution 1 La formulation du problème se fait de la façon suivante :

1. Variables de décisions : La …rme veut décider de la quantité des produits A et B


pour maximiser le pro…t. Ceci nous amène à choisir les deux variables de décision
suivantes :

x1 : la quantité du produit A que la …rme peut produire.

x2 : la quantité du produit B que la …rme peut produire.

2. Fonction objectif : L’objectif de la …rme est de déterminer le programme de


production qui maximera son pro…t. La fonction objectif s’écrit alors :
3
max Z = x1 + x2 :
2
Chapitre 2. Modélisation de problèmes concrets sous forme d’un
programme linéaire 21

3. Contraintes du modèle : La limitation des ressources contraint la …rme de la


manière suivante :

1) Contrainte sur la matière première a : 2x1 + x2 8

2) Contrainte sur la matière première b : x1 + 2x2 7

3) Contrainte sur la matière première c : x2 3

4) Contrainte de non-négativités : x1 0; x2 0.

Le modèle complet s’écrit alors comme suit


8
>
> max z = 32 x1 + x2 :
>
>
>
>
>
> 2x + x2 8
>
< 1
x1 + 2x2 7 :
>
>
>
>
>
> x2 3
>
>
>
: x
1 0; x2 0

Exercice 2 Une usine fabrique trois sortes de pièces P1 ; P2 ; P3 , à l’aide de deux machines
M1 et M2 : Chaque pièce en cours de fabrication doit passer successivement sur les deux
machines dans un ordre indi¤érent et pendant les temps suivants ( en minutes )

Temps d’usinage (miniutes par pièce)


Machines P1 P2 P3
: (2.1)
M1 2 4 3
M2 6 12 3

La machine M1 est disponible 8 heures, la machine M2 est disponible 10 heures. Le pro…t


réalisé sur une pièce P1 est de 50 DA, sur une pièce P2 est de 80 DA, celui réalisé sur
une pièce P3 est de 60 DA. Combien doit-on fabriquer de pièces P1 , P2 et P3 pour avoir
un pro…t total maximum ? Donner un modèle mathématique du problème.

Solution 2 Si x1 ; x2 ; x3 représentent respectivement les nombres de pièces de type P1 ; P2 ; P3


à fabriquer, le pro…t total est :

max Z = 50x1 + 80x2 + 60x3 :


Chapitre 2. Modélisation de problèmes concrets sous forme d’un
programme linéaire 22

Sous les contraintes 8


>
> 2x1 + 4x2 + 3x3 480
>
<
6x1 + 12x2 + 3x3 600 :
>
>
>
: x
1 0; x 0; x
2 3 0:
Le modèle complet s’écrit comme suit :
8
>
> max Z = 50x1 + 80x2 + 60x3
>
>
>
>
< 2x + 4x + 3x 480
1 2 3
>
> 6x1 + 12x2 + 3x3 600
>
>
>
>
: x1 0; x2 0; x3 0:

Exercice 3 Un physicien a observé q’une certaine quantité Q dépent d’un paramétre t.


Il a de bonnes raisons de penser que Q (t) est décrite par la loi Q (t) = a + bt + ct2 . Il
souhaiterait déterminer les valeurs des paramètres a; b et c (ces paramètres sont 0).
Pour des valeurs t1 ; t2 ; :::; tk , il a e¤ectué des mesures qui lui ont donné des valeurs
Q1 ; Q2 ; :::; Qk . Si k > 3 le physicien a un système surdéterminé a + bti + ct2i Qi = 0,
i = 1; :::; k
Il désire déterminer a; b et c de manière que la quantité

max a + bti + ct2i Qi


1 i k

Soit aussi petite que possible.

Solution 3 Considérons la contrainte ja + bti + ct2i Qi j r. Si nous cherchons à mi-


nimiser r ; nous aurons le problème :
8
>
> min Z = r
>
>
>
>
< a + bt + ct2 Q r; i = 1; :::; k
i i i
(P L)
>
> a bti ct2i + Qi r; i = 1; :::; k
>
>
>
>
: a 0; b 0; c 0; r 0
Chapitre 3

Problème général de la
programmation linéaire

3.1 Forme générale d’un programme linéaire


Dé…nition 3.1.1 Un programme linéaire est un problème dans lequel les variables sont
des réels qui doivent satisfaire un ensemble d’équations et / ou d’inéquations linéaires
(dites contraintes) et la valeur d’une fonction linéaire de ces variables (appellé "fonction
objectve") doit être rendue minimum (ou maximum).

Autrement dit, la programmation linéaire est une branche des mathématiques qui a
pour but de résoudre des problèmes d’optimisation linéaire de type

8
>
> max Z (ou min Z) = c1 x1 + c2 x2 + :::: + cn xn
>
>
>
>
>
> a11 x1 + a12 x2 + :::: + a1n xn = b1
>
>
>
>
>
> a21 x1 + a12 x2 + :::: + a1n xn = b2
>
>
>
>
>
> ::::::::::::::::::::::::::::::::
>
(P L) <
ap11 x1 + ap2 x2 + :::: + apn xn = bp
>
>
>
>
>
> ap+11 x1 + ap+12 x2 + :::: + ap+1n xn bp+1
>
>
>
>
>
> ::::::::::::::::::::::::::::::::
>
>
>
>
>
> am1 x1 + am2 x2 + :::: + amn xn bm
>
>
>
: (x1 ; x2 ; :::; x2 ) 2 Rn
Les coe¢ cients cj ; aij et bi sont des réels …xés et les xj sont des variables réelles.
Chapitre 3. Problème général de la programmation linéaire 24

Remarque 3.1.1 Les contraintes d’inégalités éventuelles sont toutes larges et non strictes.
Il se peut qu’une contrainte d’inégalité soit de type " ". En multipliant chaque inégalité
de type " " par ( 1), on peut supposer que toutes les contraintes d’inégalité sont de
type " ".
On peut toujours supposer que les variables xi (i = 1; :::; n) sont astreintes à être non
négatives. En e¤et, s’il existe une variable xi pouvant prendre n’importe quelle valeur
réelle, positive, négative ou nulle, on pourra remplacer xi par la di¤érence x0i x00i de deux
variables x0i et x00i astreintes, elle, à ne pas prendre que des valeurs non négatives.

On peut
8 écrire le système précédent sous une forme condensée.
>
> Xn
>
> max Z (ou min Z) = ci xi
>
>
>
> i=1
>
> X n
>
>
< aij xj = bi (i = 1; :::; p)
(P L) j=1 :
>
> X n
>
>
>
> aij xj bi (i = p + 1; :::; n)
>
>
>
> j=1
>
>
: (x1 ; x2 ; :::; xn ) 2 Rn :
On peut
8 écrire aussi ce système sous la forme matricielle suivante :
>
> max Z (ou min Z) = ct x
>
>
>
>
< A0 x = B 0
(P L) ,
>
> A 00
x B 00
>
>
>
>
: x 2 Rn :
0 1 0 1 0 1 0 1
c b b x
B 1 C B 1 C B p+1 C B 1 C
B C B C B C B C
B c2 C 0 B b2 C 00 B bp+2 C B x2 C
avec c = B
B
C, B = B
C B
C, B = B
C B
C, x = B
C B
C,
C
B : C B : C B : C B : C
@ A @ A @ A @ A
cn bp bm xn
0 1 0 1
a a12 ::: a1n a ap+12 ::: ap+1n
B 11 C B p+11 C
B C B C
B a 21 a 22 ::: a 2n C B a p+21 a p+22 ::: a p+2n C
A0 = BB
C et A00 = B
C B
C.
C
B : : : : C B : : : : C
@ A @ A
ap1 ap1 ::: apn am1 am1 ::: amn

3.2 Forme canonique


Dé…nition 3.2.1 (Forme canonique) Soit A une m n-matrice et B un m-vecteur
colonne. Un programme lineéaire est dit écrit sous forme canonique s’il est de la forme
Chapitre 3. Problème général de la programmation linéaire 25

suivante :
8
>
> max Z = ct x
>
<
(P C) Ax B (cas de maximisation)
>
>
>
: x 0
8
>
> min Z = ct x
>
<
(P C) Ax B (cas de minimisation).
>
>
>
: x 0

Remarque 3.2.1 Deux propriétés caractérisent la forme canonique.


– Toutes les variables x1 ; x2 ; :::; xn sont astreintes à être non-négatives (positives ou
nulles).
– Toutes les contraintes sont des inéquations.

Exemple 3.2.1 Ecrire sous forme canonique les deux programmes linéaires suivants :
8 8
>
> max z = 2x1 + 3x2 >
> min z = 2x1 5x2
>
> >
>
>
> >
>
>
> 3x1 + x2 = 5 >
> 3x1 + 5x2 = 3
>
< >
<
(P1 ) x1 2x2 4 , (P2 ) x1 5x2 2 ,
>
> >
>
>
> >
>
>
> x1 3x2 2 >
> x1 + x2 4
>
> >
>
>
: x >
: x
1 0; x2 0 1 0; x2 0

Solution 4
8 8
>
> max z = 2x1 + 3x2 >
> min z = 2x1 5x2
>
> >
>
>
> >
>
>
> 3x1 + x2 5 >
> 3x1 + 5x2 3
>
> >
>
>
> >
>
< 3x1 x2 5 < 3x 5x2 3
1
(P C1 ) , (P C2 ) .
>
> x + 2x 4 >
> x + 5x 2
>
> 1 2 >
> 1 2
>
> >
>
>
> x1 3x2 2 >
> x1 + x2 4
>
> >
>
>
> >
>
: x 0; x2 0 : x 0; x2 0
1 1

3.3 Forme standard


Dé…nition 3.3.1 (Fome standard) Soit A une m n-matrice et B un m-vecteur co-
lonne. Un programme lineéaire est dit écrit sous forme standard s’il est de la forme
Chapitre 3. Problème général de la programmation linéaire 26

suivante : 8
>
> max(ou min Z) = ct x
>
<
(P S) Ax = B .
>
>
>
: x 0

Remarque 3.3.1 Deux propriétés caractérisent la forme standard.


– Toutes les variables x1 ; x2 ; ::; xn sont astreintes à être non-négatives (positives ou
nulles).
– Toutes les contraintes sont des équations.

Remarque 3.3.2 Transformation d’écriture.


– Si les contraintes de non-négativités sont de signe quelconque, remplacer chaque
variable xi de signe quelconque par la di¤érence de deux variables positives

xi = x0i x00i avec x0i 0 et x00i 0.

– Si les contraintes de non-négativités sont de signe négatifs, remplacer chaque va-


riable xi de signe négatif par xi = x0i .
– min(z) = max( z)

Exemple 3.3.1 Mettre sous forme standard les programmes linéaires suivants :
8 8
>
> max z = 2x1 + 3x2 >
> max z = 2x1 + 3x2
>
> >
>
>
> >
>
< 3x + 5x 3 < 3x + 5x 3
1 2 1 2
(P1 ) , (P2 ) ,
>
> x1 5x2 2 >
> x1 5x2 2
>
> >
>
>
> >
>
: x 0; x2 0 : x 0; x2 2 R
1 1
8
>
> max z = 2x1 + 3x2
>
>
>
>
< 3x + 5x = 3
1 2
(P3 ) :
>
> x 5x 2
>
> 1 2
>
>
: x 0; x 0
1 2
Chapitre 3. Problème général de la programmation linéaire 27

Solution 5 La forme standard de ces programmes est


8 8
>
> max z = 2x + 3x >
> max z = 2x1 + 3x2
>
> 1 2 >
>
>
> >
>
< 3x1 + 5x2 + e1 = 3 < 3x1 + 5(x01 x002 ) + e1 = 3
(P S1 ) ; (P S2 ) ;
>
> x1 5x2 + e2 = 2 >
> x1 5(x01 x002 ) e2 = 2
>
> >
>
>
> >
>
: x 0; x2 0; e1 0; e2 0 : x 0; x01 0; x002 0; e1 0; e2 0
1 1
8
>
> max z = 2x1 + 3x2
>
>
>
>
< 3x1 + 5x2 = 3
(P S3 ) :
>
> x 5x e = 2
>
> 1 2 1
>
>
: x 0; x 0; e 0
1 2 1

Théorème 3.3.1 Tout programme linéaire sous forme standard peut être écrit sous
forme canonique ; tout programme linéaire sous forme canonique peut être écrit sous
forme standard.

Preuve. i) Soit un programme linéaire sous forme canonique. On a alors

Ax b , Ax + e = b; e 0:

où e = (e1 ; ; em )t sont
8 appelées0variables
1 d’écart.
>
> x
8 >
> @ A=b 8
>
> (AjIm )
< Ax b < e < A0 x = b
Ainsi, , 0 1 , ,
: x 0 >
> x : x0 0
>
> @ A 0:
>
>
: e
0
avec A = (AjIm ) matrice de taille m (m + n).
ii) Inversement, soit un programme linéaire sous forme standard. On a
8 8
< Ax b < Ax b
Ax = b , ,
: Ax b : Ax b
8 0 1 0 1
>
> A b 8
>
< @ Ax @ A < A00 x b0
, A b , ,
>
> : x 0
>
: x 0

avec A00 est une matrice de taille 2m n et b0 2 R2m .

Dé…nition 3.3.2 La variable ei 2 e est appelée "variable d’écart".


Chapitre 4

Résolution graphique d’un PL

4.1 Dé…nitions
Soit (P) le programme linéaire suivant :

max8z = ct x
< Ax b
(C)
: x 0

Dé…nition 4.1.1 On appelle solution réalisable de (P) tout vecteur x qui satisfait les
contraintes (C) de (P). On appelle solution optimale de (P) toute solution réalisable de
(P) qui optimise z.

L’ensemble des solutions réalisables de (P) est appelé domaine des solutions réali-
sables.

Dé…nition 4.1.2 On appelle fonction objectif (ou économique) la forme linéaire ct x: On


appelle valeur de (P) la quantité ct x où x est la solution optimale de (P).

4.2 Aspects géométriques


Dé…nition 4.2.1 Soit x et y deux vecteurs de Rn , on appelle segment d’extrémité x et
y l’ensemble des vecteurs dé…ni par

z = x + (1 )y où 2 [0; 1]:
Chapitre 4. Résolution graphique d’un PL 29

Dé…nition 4.2.2 Une partie A de Rm est dite convexe si, pour tout couple de points x
et y de A et tout réel véri…ant 0 1, le point z = x + (1 )y est un élément de
A. Plus formellement,

8x; y 2 A; z = x + (1 )y 2 A; 8 2 [0; 1]:

Géométriquement, cela signi…e que le segment de droite joignant deux points x et y


de A est entièrement contenu dans A.

Dé…nition 4.2.3 Etant donné un vecteur (point) a 2 Rn ; a 6= 0 et un scalaire 2 R,


– l’hyperplan déterminé par a et est dé…ni par l’ensemble

fx 2 Rn : at x = g:

– les demi-espaces fermés déterminés par a et sont dé…nis par

fx 2 Rn : at x g et fx 2 Rn : at x g;

– les demi-espaces ouverts déterminés par a et sont dé…nis par

fx 2 Rn : at x < g et fx 2 Rn : at x > g

Les contraintes d’un programme linéaire sont en général des demi-espaces fermés
tandis que si le problème est sous une forme standard, les contraintes sont des hyperplans.

Proposition 4.2.1 Le domaine des solutions réalisables de tout programme linéaire à n


variables est une partie convexe de Rn .

En e¤et, il s’agit d’un sous-ensemble de Rn qui s’exprime comme l’intersection d’un


nombre …ni de demi-espaces fermés de Rn .

Dé…nition 4.2.4 On appelle polytôpe l’intersection d’un nombre …ni des demi-espaces
fermés de Rn .

Un polytôpe est un ensemble convexe fermé.

Dé…nition 4.2.5 On appelle polyèdre un polytôpe borné.


Chapitre 4. Résolution graphique d’un PL 30

Le domaine des solutions réalisables est un polytôpe convexe borné (polyèdre) ou non
borné.

Dé…nition 4.2.6 Etant donné un polyèdre D, un vecteur x 2 D est un point extrême


(ou sommet) de D s’il n’existe pas deux vecteurs y; z 6= x 2 D et 2]0; 1[ tels que

x = y + (1 )z:

En d’autres termes, x 2 D est un point extrême s’il ne peut pas s’exprimer comme une
combinaison linéaire de deux autres points distincts du polyèdre.

Par exemple, la Figure 4.1 présente di¤érents cas d’ensembles de points extrêmes.
Dans le cas du disque, l’ensemble des points extrêmes sont les points de la frontière du
disque (le cercle dé…nissant la frontière du disque), alors que pour les deux polyèdres, on
retrouve classiquement les sommets fA1 ; A2 ; :::; A6 g et fB1 ; B2 ; B3 ; B4 g.

4.3 Etapes de résolution graphique d’un PL


Résoudre le problème (P) consiste à déterminer le vecteur x qui permet d’optimiser
la fonction économique. Il existe diverses techniques de résolution parmi lesquelles la
méthode graphique se montre à l’évidence la plus rapide et la plus simple mais aussi la
plus limitée, car dès lors que le nombre de variables ou de contraintes dépasse 2, elle
devient impraticable.
Nous allons décrire ici la méthode graphique à travers trois exemples représentatifs,
ayant chacun deux variables. Le premier admet une et une seule solution optimale. Le
deuxième admet une in…nité de solutions optimales. Par contre, le troisième exemple
n’admet aucune solution optimale.
La résolution d’un (PL) par la méthode graphique se fait selon une démarche com-
mune, celle-ci peut être résumée en quatre étapes :
– Schématiser le domaine réalisable dans un repère orthonormé.
– Dans le même repère, représenter l’hyperplan 0 : ct x = 0. Noter que tout hyper-
plan k d’équation ct x = k, k 2 R, est parallèle à 0.

– Si le (PL) considéré est de type maximisation (resp. minimisation), indiquer, par


une ‡èche, le sens de déplacement parallèle de k qui fait augmenter (resp. dimi-
nuer) k.
Chapitre 4. Résolution graphique d’un PL 31

– Déterminer la droite kmax la plus éloignée (dans le sens de la ‡èche) de 0 et qui


coupe le domaine réalisable D. Tout point de kmax \ D est une solution optimale.
Si une telle droite kmax n’existe pas, cela veut dire que l’optimum est in…ni.

Exemple 1 : On considère le programme linéaire suivant :


8
>
> max z = 4x1 + 5x2
>
>
>
>
< 2x1 + x2 8
(P1 ) :
>
> x1 + 2x2 7
>
>
>
>
: x 3; x 0; x 0
2 1 2

Le domaine des solutions réalisables D est schématisé sur la Figure 4.2. Toute droite k

d’équation 4x1 + 5x2 = k, où k est un réel …xé, est parallèle à la droite 0 : 4x1 + 5x2 = 0.
On constate aussi que tout déplacement parallèle de k dans le sens de la ‡èche (voir
Figure 4.2.) fait augmenter k. Donc maximiser la fonction z, tout en satisfaisant aux
contraintes du problème, revient à chercher la droite k la plus éloignée (dans le sens
de la ‡èche) de 0 et qui coupe le domaine des solutions réalisables. Du point de vue
graphique, il s’agit de la droite kmax passant par le point (3; 2) et parallèle à 0. Ainsi,
on peut conclure que le point (3; 2) est la seule solution optimale de (P1 ) qui donne une
valeur maximale de la fonction d’objectif égale à 22.

Exemple 2 : On considère le programme linéaire suivant :


8
>
> max z = 6x1 + 15x2
>
>
>
>
< 2x1 x2 4
(P2 ) :
>
> 2x + 5x 4
>
> 1 2
>
>
: x 0; x 0 1 2

Le domaine des solutions réalisables est la partie non bornée représentée sur la Figure
4.3. Tout déplacement parallèle de k : 6x1 + 15x2 = k dans le sens de la ‡èche fait
augmenter k. Donc tout point du demi droite d’équation 2x1 + 5x2 = 4 et x1 3 est
optimal et la valeur maximale de Z vaut 12.
Chapitre 4. Résolution graphique d’un PL 32

Exemple 3 : On considère le programme linéaire suivant :


8
>
> max z = x1 + x2
>
>
>
>
< x1 + x2 1
(P3 ) :
>
> x + 2x 4
>
> 1 2
>
>
: x 0; x 0
1 2

Le domaine des solutions réalisables D associé à (P3 ) est la partie non bornée représentée
dans la Figure 4.4. Dans le graphique, on observe que toute droite k d’équation x1 +x2 =
k , avec k 0, coupe D. Donc, sup z = +1 et par conséquent, le problème n’admet
aucune solution optimale.
Chapitre 5

Propriétés fondamentales de la PL

5.1 Dé…nitions et propriétés


Soit (P) le programme linéaire suivant sous forme standard :
8
>
> max z = ct x
>
<
(P) Ax = b
>
>
>
: x 0

On peut toujours supposer que rang (A) = m. En e¤et, si rang (A) < m, une ou
plusieurs lignes de A peuvent s’exprimer comme combinaison linéaire des autres ligne.
Suivant la valeur des coe¢ cients bi , les contraintes correspondantes sont soit redondantes
(auquel cas elles peuvent être éliminé du problème) soit incompatible avec les autres
(auquel cas le système Ax = b n’a pas de solution).
Par exemple, le système
8
>
> x1 + x2 = 3 (1)
>
>
>
>
< x +x =3 (2)
2 3
>
> x1 + x3 = 8 (3)
>
>
>
>
: x +x +x =7 (4)
1 2 3

est tel que chacune des équations est redondante. En e¤et, l’équation (4) s’obtient comme
la somme des trois premières divisée par 2 et si les trois premières équations sont véri…ées,
il est immédiat que la dernière le sera. Aussi, peut-on la négliger et le système formé des
trois premières équations ne contient plus de contraintes redondantes.
Chapitre 5. Propriétés fondamentales de la PL 34

Nous pouvons éliminer les équations redondantes de manière plus systématique en


e¤ectuant des opérations élémentaires sur le système Ax = b où
0 1 0 1
1 1 0 3
B C B C
B C B C
B 0 1 1 C B 3 C
A=B B
C et B = B C :
C B C
B 1 0 1 C B 8 C
@ A @ A
1 1 1 7

La matrice augmenté (A j B) s’écrit alors


0 1
1 1 0 3
B C
B C
B 0 1 1 3 C
(AjB) = B
B
C
C
B 1 0 1 8 C
@ A
1 1 1 7

L3 L3 L1 et L4 L4 L1 )
0 1
1 1 0 3
B C
B C
B 0 1 1 3 C
B C
B C
B 0 1 1 5 C
@ A
0 0 1 4

L3 L3 + L2 ) 0 1
1 1 0 3
B C
B C
B 0 1 1 3 C
B C
B C
B 0 0 2 8 C
@ A
0 0 1 4
1
L3 L
2 3
) 0 1
1 1 0 3
B C
B C
B 0 1 1 3 C
B C
B C
B 0 0 1 4 C
@ A
0 0 1 4
Les 2 dernières équations étant identiques, la dernière est omise. On obtient alors :
0 1
1 1 0 3
B C
B C
B 0 1 1 3 C
@ A
0 0 1 4
Chapitre 5. Propriétés fondamentales de la PL 35

la nouvelle matrice A est de rang 3 et son déterminant est égal à 1 (6= 0).
Nous considérons donc à partir de maintenant que le problème (P ) sous forme stan-
dard est tel que le rang de la matrice A est égal à son nombre de lignes m ce qui signi…e
que le système Ax = b sera compatible et ne contiendra aucune contrainte redondante
et, donc, en particulier, m n.
Notons que sous l’hypothèse de rang plein (rang (A) = m), le système Ax = b admet
toujours des solutions. Si m < n, il y en a une in…nité. Si m = n, la solution est unique
et vaut x = A 1 b, dans ce cas, il n’y a rien à maximiser

Dé…nition 5.1.1 On appelle base, notée B, du problème (P ), tout ensemble de m vec-


teurs (Aj ), i = 1; : : : ; m linéairement indépendants. Les vecteurs d’une base B constituent
une sous matrice de A régulière d’ordre m et inversement.

Dé…nition 5.1.2 Les variables correspondant aux colonnes de la matrice B sont dites
variables de base (relativement à la base B). Les autres variables sont dites variables
hors-base (relativement à la base B).

Soit B une base du problème (P ). Pour simpli…er la notation, supposons que B est
formée des m premières colonnes de A. Dénotons par H la sous-matrice formée des autres
colonnes de A, par xB le vecteur des variables de base et par xHB le vecteur des variables
hors-base, alors on peut réécrire Ax = b par
0 1
xB
Ax = (B; H) @ A
xHB
= BxB + HxHB

= b

1
Puisque B est régulière, alors B existe et

xB + B 1 HxHB = B 1 b:

En annulant les variables hors bases, on obtient un système de Cramer BxB = b possédant
la solution unique xB = B 1 b.
0 1
xB = B 1 b
Dé…nition 5.1.3 La solution x = @ A est appelée solution de base du pro-
xHB = 0
blème (P).
Chapitre 5. Propriétés fondamentales de la PL 36

Dé…nition 5.1.4 Une solution de base est réalisable si xB = B 1 b 0.

Dé…nition 5.1.5 Une solution de base est dite dégénérée si certaines composantes de
xB sont nulles.

Dé…nition 5.1.6 Une solution optimale de base du problème (P) est une solution de
base réalisable qui rend minimale la fonction objectif.

Exemple : Soit (P) le PL suivant :


8
>
> min z = x 2y + z
>
>
>
>
< x+y+z+u=3
>
> y + z + u = 1:
>
>
>
>
: x; y; z; u 0:

1. Déterminer toutes les solutions de base et toutes les solutions de base réalisables
de (P).
2. Déduire la solution optimale de (P).

Solution :

Sous matrices 2 2 Base Base réalisable Solution Objectif


0 1
1 1
@ A oui non x = 4; y = 1
0 1
0 1
1 1
@ A oui oui x = 2; z = 1 3
0 1
0 1
1 1
@ A oui oui x = 2; u = 1 2
0 1
0 1
1 1
@ A oui oui y = 1; z = 2 0
1 1
0 1
1 1
@ A oui oui y = 1; u = 2 2
1 1
0 1
1 1
@ A non non
1 1

La solution optimale est x = z = 0; y = 1, u = 2 et la valeur de l’objectif à l’optimum


est égale à 2.
Chapitre 5. Propriétés fondamentales de la PL 37

n!
Remarque 5.1.1 Le nombre de solutions de base ne dépasse pas Cnm = m!(n m)!
.

Remarque 5.1.2 Etant donné un système d’inéquations (S) à n varaiables et m contraintes.


Une solution de base de (S) est l’intersection de n hyperplans des contraintes.

Remarque 5.1.3 Soit D l’ensemble des solutions réalisable d’un programme linéaire.
Alors

x est un point extrême de D , x solution de base réalisable

, x est un sommet de D.

, x véri…e n inégalités (lin. indép.) à l’égalité.

, au plus m coordonnées de x sont non nulles

Exemple : Soit le programme linéaire suivant :


8
>
> max z = x1 + x2 + x3
>
>
>
>
>
> 2x1 + x2 x3 18
>
>
>
>
>
> 4x1 + x2 x3 12
>
<
8x1 x2 + 5x3 0
>
>
>
>
>
> 2x1 + 2x2 2x3 6
>
>
>
>
>
> x2 5
>
>
>
: x 1 ; x 2 ; x3 0

Pour chaque solution donnée, est-elle de base, est-elle de base réalisable ?


(20; 5; 27), (5; 20; 12), (5; 5; 3), (35; 5; 57), (0; 22:5; 4:5), (40; 2; 64), (5; 10; 2).

Solution :
1. (20; 5; 27) est réalisable mais non de base.
2. (5; 20; 12) est réalisable et de base.
3. (5; 5; 3) de base mais non réalisable.
4. (35; 5; 57) de base mais non réalisable.
5. (0; 22:5; 4:5) de base mais non réalisable.
6. (40; 2; 64) est ni réalisable ni de base.
7. (5; 10; 2) est réalisable mais non de base (il y a trois equations véri…ées mais elles ne
sont pas indépendantes, en e¤et 2x1 + 2x2 2x3 = 6 est la somme de 2x1 + x2 x3 = 18
et 4x1 + x2 x3 = 12).
Chapitre 5. Propriétés fondamentales de la PL 38

5.2 Résultats fondamentaux de la PL


Théorème 5.2.1 La fonction objectif du problème de la programmation linéaire dé…nie
sur le polyèdre D atteint son minimum(resp. son maximum) en un point extrême de D.

Théorème 5.2.2 Si la fonction objectif prend sa valeur minimale (ou maximale) en aux
plus d’un point extrême alors toutes combinaison linéaire convexe de ces points donne la
même valeur à la fonction objectif.

Théorème 5.2.3 Pour un programme linéaire où la matrice A est de rang m,


(i) si l’ensemble des solutions réalisables n’est pas vide, alors il existe une solution de
base réalisable dans cet ensemble, et
(ii) s’il existe une solution (réalisable) optimale, alors il existe une solution de base
(réalisable) optimale.

Remarque 5.2.1 Ce théorème nous indique que lors de la résolution d’un problème de
programmation linéaire, on peut restreindre notre attention au sous-ensemble des solu-
tions de base réalisables de l’ensemble fx : Ax = b; x 0g.

Nous établissons maintenant la relation existant entre le sous-ensemble des solutions


de base réalisables d’un polyèdre D et les points extrêmes de D.

Théorème 5.2.4 Un point x d’un polyèdre D est un point extrême de D si et seulement


si x est une solution de base réalisable de D.

Corollaire 5.2.1 Soit D un polyèdre d’un programme linéaire (P ).


– Si D est non vide, alors D comporte au moins un point extrême.
– S’il existe une solution réalisable optimale …nie pour (P ), alors il existe une solution
optimale qui est un point extrême de D.
– Le polyèdre D comporte un nombre …ni de points extrêmes.

Remarque 5.2.2 Soit D un plolyèdre d’un programme linéaire (P ).


– Un point extrême peut correspondre a plusieurs solutions de bases réalisables dégé-
nérées.
– Si (P ) sous forme canonique, alors il peut être résolu graphiquement pour n = 2.
Il su¢ t de déterminer tous les sommets de D, les solutions de base réalisable qui
sont en nombre …ni. Le minimum ou le maximum est atteint en un sommet de D.
Chapitre 6

Méthode de simplexe

6.1 Introduction
Nous présentons une méthode de résolution d’un programme linéaire qui a été déve-
loppé par Dantzig aux Etats-Unis en 1947. Cette méthode appelée algorithme du sim-
plexe, elle consiste à e¤ectuer une explorartion dirigée de l’ensemble des solutions de
bases réalisables c’est à dire l’ensemble des points extrêmes dé…ni par le système des
contraintes du problème de la programmation linéaire.

6.2 Forme standard d’un programme linéaire par rap-


port à une base B
Soit (P) un PL sous forme standard
8
>
> max z = ct x
>
<
(P ) Ax = b
>
>
>
: x 0

où A est une matrice d’ordre m n et de rang m ; b 2 Rm et c 2 Rn .


On dispose d’une base B et d’une solution de base réalisable x avec (à une permutation
près des colonnes de A).
0 1
xB
A = (B; H), x = @ A ; ct = ctB ; ctH ;
xH
Chapitre 6. Méthode de simplexe 40

où B matrice carrée inversible d’ordre m, H matrice d’ordre m (n m), xB variables


de base et xH variables hors-base.
La fonction objectif s’écrit alors
0 1
xB
max z = ct x = (ctB ; ctH ) @ A = ctB xB + ctH xH : (6.1)
xH

Le système Ax = b s’écrit comme suit


0 1
xB
(B; H) @ A = b;
xH
BxB + HxH = b:

Vu que B est inversible, alors

xB + B 1 HxH = B 1 b:

xB = B 1 b B 1 HxH : (6.2a)

En remplaçant (6.2a) dans (6.1), la fonction objectif s’écit comme suit :

max z = ctB (B 1 b B 1 HxH ) + ctH xH

= ctB B 1 b + (ctH ctB B 1 H)xH :

Posons = ctB B 1
(appelé vecteur multiplicateur relatif à la base B). Alors ctH H
est appelé le coût réduit relatif à la base B. Le programme (P) s’écrit sous la forme
suivante : 8
>
> max z = b + (ctH H)xH
>
<
0
(P ) xB + B 1 HxH = B 1 b
>
>
>
: x ;x B 0H

Ce PL est écrit sous la forme standard par rapport à la base B.

Variables de base xB xH solution


xB I B 1H B 1b
z 0 ctH H b

Exemple : Ecrire la forme standard du PL suivant par rapport à la base d’ensemble


Chapitre 6. Méthode de simplexe 41

d’indices I = f1; 2g.


8
>
> max z = 2x1 + x2 + 6x3 2x4 + 5x5
>
>
>
>
< x1 + x2 + 3x3 x4 + 4x5 = 4
>
> x2 + 2x3 + x4 + 2x5 = 3
>
>
>
>
: xi 0; i = 1; 2; 3; 4; 5:

Solution
0 : 1 0 1
1 1 3 1 4 4
A=@ A, ct = (2; 1; 6; 2; 5), b = @ A.
0 1 2 1 2 3
0 1 0 1
1 1 1 1
Puisque I = f1; 2g, alors B = @ A. Donc B 1
=@ A.
0 1 0 1
0 1
3 1 4
D’autre part, H = @ A et ctB = (2; 1), ctH = (6; 2; 5).
2 1 2
Le vecteur multiplicateur relatif à la base f1; 2g est égal à
0 1
1 1
= ctB B 1 = (2; 1) @ A = (2; 1):
0 1

D’où 0 1
4
b = (2; 1) @ A = 5:
3
Le coût réduit est égal à
0 1
3 1 4
ctH H = (6; 2; 5) (2; 1) @ A
2 1 2
= (6; 2; 5) (4; 3; 6) = (2; 1; 1):

Le produit B 1 H est égal à


0 10 1 0 1
1 1 3 1 4 1 2 2
B 1H = @ A@ A=@ A:
0 1 2 1 2 2 1 2

Le produit B 1 b est égal à


0 10 1 0 1
1 1 4 1
B 1b = @ A@ A=@ A:
0 1 3 3
Chapitre 6. Méthode de simplexe 42

La fonction objectif peut s’écrire par rapport à la base f1; 2g comme suit :
0 1
x
B 3 C
B C
max z = 5 + (2; 1; 1) B x4 C = 5 + 2x3 + x4 x5 :
@ A
x5

Le système Ax = b s’écrit par rapport à la base f1; 2g comme suit :


0 1
0 1 0 0 1 1 x3
x 1 2 2 B C 1
@ 1 A+@ AB C
B x4 C = @ A :
x2 2 1 2 @ A 3
x5
D’où 8
< x +x 2x4 + 2x5 = 1
1 3
: x + 2x + x + 2x = 3
2 3 4 5

Alors le PL peut s’écrire sous forme standard par rapport à la base f1; 2g.
8
>
> max z = 5 + 2x3 + x4 x5
>
>
>
>
< x +x 2x4 + 2x5 = 1
1 3
>
> x2 + 2x3 + x4 + 2x5 = 3
>
>
>
>
: x 0; i = 1; 2; 3; 4; 5:
i

Var. base x1 x2 x3 x4 x5 solution


x1 1 0 1 2 2 1
x2 0 1 2 1 2 3

z 0 0 2 1 1 5

Théorème 6.2.1 Etant donné un PL de maximisation sous forme standard par rapport
à une base B. Si ctH H 0 alors la solution de base réalisable correspondante à la
base B est optimale.

Dans l’exemple précédent, la solution de base réalisable x = (1; 3; 0; 0; 0) n’est pas


optimale puisque ctH H n’est pas négatif ou nul (il existe des coe…cients positifs dans
la fonction objectifs.
Chapitre 6. Méthode de simplexe 43

6.3 Algorithme du simplexe


L’idée de base de cet algorithme consiste à démarrer d’un point extrême (solution de
base réalisable) X0 de l’ensemble des solutions réalisable D (des contraintes) ensuite à
se déplacer vers un autre points extrême X1 (solution de base réalisable) de D (voisin
de X0 ) dont la valeur de la fonction objectif z(X1 ) est meilleure que z(X0 ) ainsi de suite
jusqu’à ce qu’on arrive à une solution de base réalisable véri…ant ctH H 0, c’est à
dire solution de base réalisable optimale ou bien jusqu’à ce qu’on se rende compte que le
problème n’est pas borné inférieurement.
L’algorithme suppose qu’on a une solution de base réalisable initiale. On désigne par
I l’ensemble des indices qui correspndent à l’ensemble des solutions de base réalisables
et par J l’ensemble des indices qui correspondent à l’ensemble des solutions hors base.

6.3.1 Etapes de l’algorithme

Etape 0. Mettre le PL sous forme standard par rapport à une solution de base réali-
sable I.
Etape 1. Déterminer les coe¢ cients des variables hors base de la fonction objectif et
poser cs = max(cj : j 2 Jg.
– Si cs 0, stop la solution de base correspondante à I est optimale.
– Si cs > 0, aller en (2).
Etape 2. Examiner le vecteur As (vecteur colonne).
– Si fi : Ais > 0g = ;, stop le PL n’a pas de solution bornée.
bk
– Si fi : Ais > 0g 6= ;, alors déterminer K = fk : Aks
= minf Abii : Ais > 0gg et aller
s

en (3).
Etape 3. Choisir r 2 K et mettre le PL sous forme standard par rapport à la nouvelle
base I = (I frg) [ fsg et aller en (1).
Chapitre 6. Méthode de simplexe 44

Exemple : Résoudre par l’algorithme du simplexe le PL suivant :


8
>
> max z = x1 + 3x2
>
>
>
>
>
> x1 + x2 14
>
<
2x1 + 3x2 12
>
>
>
>
>
> 2x1 x2 12
>
>
>
: x1 ; x2 0:

Etape 0 : Mettre le PL sous forme standard par rapport à une solution de base
réalisable I.
En introduisant des variables d’écart, le PL s’écrit
8
>
> max z = x1 + 3x2 + 0e1 + 0e2 + 0e3
>
>
>
>
>
> x +x2 +e1 = 14
>
< 1
2x1 +3x2 +e2 = 12
>
>
>
>
>
> 2x1 x2 +e3 = 12
>
>
>
: x1 ; x2 ; e1 ; e2 ; e3 0:

Il est évident que x = (x1 ; x2 ; e1 ; e2 ; e3 ) = (0; 0; 14; 12; 12) est une solution de base
réalisable.

Remarque : Trouver une première solution de base réalisable n’est pas toujours aussi
facile.
Construisons le premier tableau du simplexe.

x1 x2 e1 e2 e3 b K
e1 1 1 1 0 0 14 14
e2 2 3 0 1 0 12 4 v:s
e3 2 1 0 0 1 12 12
z 1 3 0 0 0 0
" v:e

Puisque deux nombre de cj sont positifs (de valeur 1 et 3), cette solution de base
réalisable n’est pas optimale.

Etape 1 : Recherche d’une meilleure solution de base réalisable.


Chapitre 6. Méthode de simplexe 45

Nous recherchons une meilleure solution de base réalisable en mettant une variable
de base "hors base" et en la remplaçant par une variable hors base. D’après le critère
d’entrée et de sortie présentés dans l’algorithme,
– x2 hors base entre en base,
– e2 en base sort de base,
ce que nous indiquons dans le tableau par des ‡èches d’entrée et de sortie ; nous
écrivons en gras le pivot xrs , qui est égal à 3.
Construisons le nouveau tableau simplexe en appliquant la méthode du pivot de
Gauss.
x1 x2 e1 e2 e3 b K
e1 5=3 0 1 1=3 0 10 6 v:s
x2 2=3 1 0 1=3 0 4 6
e3 4=3 0 0 1=3 1 16 12
z 3 0 0 1 0 12
" v:e
Puisqu’il y a encore un cj positif (de valeur 3), nous ne somme pas à la solution opti-
male et nous devons donc rechercher une nouvelle meilleure solution de base réalisable.

Etape 3 : Recherche d’une meilleure solution de base réalisable.


Par un raisonnement analogue à celui de l’étape 2, nous déduisons que
– x1 hors base entre en base,
– e1 en base sort de base,
ce que nous indiquons dans le tableau par des ‡èches d’entrée et de sortie ; nous
écrivons en gras le pivot xrs , qui est égal à 3.
Construisons le nouveau tableau simplexe en appliquant la méthode du pivot de
Gauss.
x1 x2 e1 e2 e3 b K
x1 1 0 3=5 1=5 0 6
x2 0 1 2=5 1=5 0 8
e3 2 0 4=5 3=5 1 8
z 0 0 9=5 2=5 0 30
Chapitre 6. Méthode de simplexe 46

Puisque tous les cj sont non-positifs, la solution obtenue x = (x1 ; x2 ; e1 ; e2 ; e3 ) =


(6; 8; 0; 0; 8) est optimale, et la valeur maximum de z est 30.

Exemple : Résoudre par la méthode du simplexe le PL suivant :


8
>
> min z = x2 x1
>
>
>
>
>
> 2x1 x2 2
>
<
x1 x2 2
>
>
>
>
>
> x1 + x2 5
>
>
>
: x1 ; x2 0:

Puisque min z = max( z), posons w = z. Alors min z = x2 x1 , max w =


x1 x2 .
Introduisant des variables d’écart :
8
>
> max w = x1 x2
>
>
>
>
>
> 2x1 + x2 + e1 = 2
>
<
x1 x2 + e2 = 2
>
>
>
>
>
> x1 + x2 + e3 = 5
>
>
>
: x ;x ;e ;e ;e
1 2 1 2 3 0:

Appliquons l’algorithme du simplexe :

x1 x2 e1 e2 e3 b K
e1 2 1 1 0 0 2 1
e2 1 1 0 1 0 2 2 v:s
e3 1 1 0 0 1 5 5
w 1 1 0 0 0 0
" v:e

x1 x2 e1 e2 e3 b K
e1 0 1 1 2 0 6 6
x1 1 1 0 0 0 2 2
e3 0 2 0 1 1 3 3=2 v:s
w 0 0 0 1 0 2
" v:e
Chapitre 6. Méthode de simplexe 47

Une solution optimale est donc la solution représenté par X1 = (2; 0; 6; 0; 3). On
peut constater graphiquement que ce PL admet deux solutions optimales. Cela se voit
également dans le dernier tableau simplexe où le nombre cj correspondant à la variable x2
n’est pas négatif, mais nul. Pour obtenir la seconde solution X2 , il su¢ t de faire entrer en
base la variable hors-base x2 et de mettre dès lors hors base la variable e3 . Ce changement
de base ne modi…e évidemment pas la valeur de la fonction objectif puisque

xr 3
w(X2 ) = w(X1 ) (ws cs ) = 2 :0 = 2:
xrs 2

x1 x2 e1 e2 e3 b K
e1 0 0 1 3=2 1=2 15=2
x1 1 0 0 1=2 1=2 7=2
x2 0 1 0 1=2 1=2 3=2
w 0 0 0 1 0 2

Une autre solution est donc X2 = (7=2; 3=2; 15=2; 0; 0) et w(X2 ) = 2.


Par conséquent, toutes les solutions réalisables obtenues par combinaison linéaire
convexe de X1 et de X2 sont optimales. En e¤et, soit Y une telle solution :

Y = X1 + (1 )X2 ; 0 < < 1:

Alors Y est une solution réalisable puisque l’ensemble des solutions réalisables d’un
PL est convexe. Comme la fonction objectif w est linéaire , w(Y ) vaut

w(Y ) = w(X1 ) + (1 )w(X2 ) = 2:

La solution est égalemment optimale.

6.4 Obtention d’une base réalisable de départ


L’application de la méthode du simplexe à la résolution des PL suppose la connais-
sance préalable d’une solution de base réalisable de départ. Lorsque celle-ci ne peut s’ob-
tenir de manière immédiate, on peut utiliser des méthodes qui permettent de construire
de manière systématique cette solution de base réalisable de départ. Dans ce chapitre,
Chapitre 6. Méthode de simplexe 48

on présente uniquement la méthode des deux phases. Cette méthode repose sur l’intro-
duction des variables artic…cielles. Comme son nom l’indique, cette méthode consiste à
résoudre un problème de programmation linéaire en deux parties. La méthode des deux
phases va permettre de déterminer une base réalisable ou prouver que le problème n’a
pas de solution réalisable.
– La première partie, appelée phase I, consiste à annuler toutes les variables arti-
…cielles en utilisant une fonction objectif arti…cielle. Si l’on ne peut pas annuler
toutes les variables, alors le problème n’est pas réalisable.
– La phase II consiste à remplacer la fonction objectif arti…cielle de la phase I par la
vraie fonction objectif à maximiser. On utilise alors la solution réalisable de base
obtenue à la …n de la phase I.
Considérons un problème de la programmation linéaire (PL) sous forme standard
8
>
> max z = ct x
>
<
(P L) Ax = b
>
>
>
: x 0;

où A est une matrice d’ordre m n et de rang m, b 2 Rm et c 2 Rn . On suppose que


les bi 2 b sont positifs (sinon on multiple par ( 1) l’équation ayant bi < 0).
Associons à ce problème, le problème linéaire auxiliaire (PLA) suivant :
8
>
> min = v1 + v2 + :::: + vm
>
<
(P LA) Ax + Iv = b
>
>
>
: x; v 0

I étant la matrice unité m m et les vi sont des variables dites "arti…cielles".

Proposition 6.4.1 L’application de l’algorithme du simplexe au P LA permet d’écrire


P LA sous forme standard par rapport à une base réalisable optimale.

Proposition 6.4.2 Soit (x; v) une solution réalisable de base optimale du P LA, une
condition nécessaire et su¢ sante pour que P L admet une solution réalisable est que vi =
0.

Théorème 6.4.1 Si P L admet une solution réalisable, alors P LA a une base optimale
qui donne une base réalisable à P L.
Chapitre 6. Méthode de simplexe 49

Corollaire 6.4.1 Si = 0, alors v i = 0 pour i 2 f1; :::; mg et P L a une solution


réalisable. Si > 0, alors il existe un indice j tel que v j > 0 et P L n’a pas de solution
réalisable.

6.5 Etapes de la méthode des deux phases

Phase I

Etape 0 : Ecrire le programme linéaire (PL) sous forme standard avec bi > 0.
Etape 1 : Déterminer le programme linéaire auxiliaire (PLA) (en ajoutant des va-
riables arti…cielles nécessaires).
Etape 2 : Appliquer l’algorithme du simplexe à PLA.
– Si, à l’optimum, la valeur de la fonction objectif du PLA est strictement positif,
stop le PL n’a pas de solution réalisable.
– Si, à l’optimum, la valeur de la fonction objectif du PLA est nulle, alors aller à
l’étape (3).
Etape 3 : Ecrire le PLA sous forme standard par rapport à une base optimale for-
mée uniquement par des variables du vecteur x. C’est à dire éliminer les variables
arti…cielles qui sont dans la base optimale du PLA en faisant entrer des variables
appartenant au vecteur x à la place de variable du vecteur v qui sont dans la base.

Phase II

Appliquer l’algorithme du simplexe au PL tel qu’il a été écrit.

Exemple : Soit le problème suivant à résoudre avec la méthode des deux phases :
8
>
> max z = x1 2x2 + 2x3
>
>
>
>
< 2x + 3x + x = 12
1 2 3
(P L)
>
> 4x1 + x2 + 2x3 = 14
>
>
>
>
: x ;x ;x 0
1 2 3

Nous ne disposons pas de solutions de base de départ.


Chapitre 6. Méthode de simplexe 50

Associons à ce (PL) le problème auxiliaire (PLA) suivant :.


8
>
>
> min = v1 + v2 = 26 6x1 4x2 3x3
>
>
>
< 2x1 + 3x2 + x3 + v1 = 12
(P LA)
>
> 4x1 + x2 + 2x3 + v2 = 14
>
>
>
>
: x ;x ;x ;v ;v 0
1 2 3 1 2

8
>
> max( )= 26 + 6x1 + 4x2 + 3x3
>
>
>
>
< 2x1 + 3x2 + x3 + v1 = 12
(P LA)
>
> 4x1 + x2 + 2x3 + v2 = 14
>
>
>
>
: x 1 ; x 2 ; x 3 ; v1 ; v 2 0
Dressons un tableau du simplexe.
Var. base x1 x2 x3 v1 v2 b K

6 4 3 0 0 26

v1 2 3 1 1 0 12 6
v2 (4) 1 2 0 1 14 7/2
z 1 2 2 0 0 0
Itération 1 // // // // // // //

0 5/2 0 0 -3/2 5

v1 0 (5=2) 0 1 -1/2 5 2
x1 1 1=4 1=2 0 1=4 7=2 7/2
z 0 -9/4 3/2 0 -1/4 -7/2
Itération 2 // // // // // // //

0 0 0 -1 -1 [0]

x2 0 1 0 2=5 1=5 2
x1 1 0 1/2 2/5 3/10 3
z 0 0 3/2 9/10 -7/10 1
Comme max( ) = 0; c’est à dire min = 0, alors la solution optimale de (PLA)
x = (3; 2; 0) constituera une solution de base réalisable du problème initial (PL) de départ.
x = (3; 2; 0) n’est pas optimale car c3 > 0. Il faut qu’on e¤ectue un autre changement de
base.
Phase II.
Chapitre 6. Méthode de simplexe 51

Var. base x1 x2 x3 b K
Itération 2 // // // // //
x2 0 1 0 2
x1 1 0 (1=2) 3 6

z 0 0 3/2 1

Itération 3 // // // // //
x2 0 1 0 2
x3 2 0 1 6

z 3 0 0 8
x = (0; 2; 6) est optimale et max z = 8.
Chapitre 7

Dualité

A tout programme linéaire (P), on associe un second programme linéaire dual (D) de
(P). Dans ce cas, (P) est dit primal. Le programme dual a la propriété d’être en relation
étroite avec le primal (la solution optimale de l’un des deux programmes est déterminée
par la résolution de l’autre).

7.1 Problèmes duaux

7.1.1 Dé…nitions

Soit (P) le programme linéaire sous forme canonique suivant :


8
>
> max z = ct x
>
<
(P ) Ax b
>
>
>
: x 0;

avec n variables, m contraintes, m < n, c; x 2 Rn , b 2 Rm , A 2 Rm n


. Le problème (P)
est appelé "problème primal". On appelle "problème dual" du problème (P) le PL
suivant : 8
>
> min w = yb
>
<
(D) yA c (7.1)
>
>
>
: y 0;

avec m variables, n contraintes, m < n, c 2 Rn , b 2 Rm , y 2 Rm (vecteur ligne),


A 2 Rm n
. Cette dé…nition est due à J. Von Neumann.
Chapitre 7. Dualité 53

Remarque 7.1.1 Si y est un vecteur colonne, alors le problème (D) s’écrit comme suit :
8
>
> min w = bt y
>
<
(D) At y c
>
>
>
: y 0:

Exemple : Soit (P) le problème Primal :


8
>
> max z = x1 + x2
>
>
>
>
< 2x + x 5
1 2
(P )
>
> 3x1 x2 6
>
>
>
>
: x ;x 0;
1 2

Le problème dual s’écrit comme suit :


8
>
> min w = 5y1 + 6y2
>
>
>
>
< 2y + 3y 1
1 2
(D)
>
> y1 y2 1
>
>
>
>
: y ;y 0:
1 2

7.1.2 Propriétés et règles de construction du dual

Théorème 7.1.1 Le problème dual du problème dual est le problème primal.

Règles de construction

Primal (Dual) Dual (Primal)


Fonction objectif à maximiser Fonction objectif à minimiser
ieme contrainte yi 0
ieme contrainte yi 0
ieme contrainte = yi 2 R
xi 0 ieme contrainte
xi 0 ieme contrainte
xi 2 R ieme contrainte =

Proposition 7.1.1 Soit (P) un PL écrit sous forme standard :


8
>
> max z = ct x
>
<
(P ) Ax = b
>
>
>
: x 0;
Chapitre 7. Dualité 54

alors le problème dual (D) du problème (P) s’écrit sous la forme suivante :
8
>
> min w = bt y
>
<
(D) At y c
>
>
>
: y 2 R:

Exemple : Trouver le prolème dual (D) du PL linéaire suivant :


8
>
> min z = 2x1 x2 5x3
>
>
>
>
>
> x1 6x2 + 2x3 6
>
<
(P ) x1 x2 + 8x3 = 7
>
>
>
>
>
> 2x1 3x2 + 4x3 1
>
>
>
: x1 0; x2 0; x3 2 R:

Le dual de (P) s’écrit comme suit :


8
>
> max w = 6y1 + 7y2 + y2
>
>
>
>
>
> y1 + y2 + 2y3 2
>
<
(D) 6y1 y2 3y3 1
>
>
>
>
>
> 2y1 + 8y2 + 4y3 = 5
>
>
>
: y
1 0; y2 2 R; y3 0:

7.2 Théorèmes fondamentaux de la dualité


Les résultats suivant ont pour but de montrer que l’on peut résoudre au choix l’un ou
l’autre des deux problèmes, le primal ou le dual, la connaissance de la solution optimale
de l’un entraînant celle de l’autre.

Théorème 7.2.1 Soient (P) et (D) un couple de programmes linéaires duaux


8 8
>
> t
max z = c x >
> min w = yb
>
< >
<
(P ) Ax b (D) yA c
>
> >
>
>
: >
: y 0:
x 0;

Pour tout couple x et y de solutions réalisables respectivement pour (P) et (D), on a :

ct x yb:
Chapitre 7. Dualité 55

Preuve. x étant solution réalisable de (P), on a


8
< Ax b
: x 0;

y étant solution réalisable de (D), on a


8
< At y c
: y 0:

Puisque (At y)t = y t A, alors y t A ct . On multiplions y t A ct par x 0 , on trouve

(y t A)x ct x ) cx y t (Ax)

Comme Ax b, on trouve
ct x y t b = bt y:

D’où
z(x) = ct x bt y = w(y):

Théorème 7.2.2 Si x et y sont des solutions réalisables pour (P) et (D) respectivement
telles que ct x = yb, alors x et y sont des solutions optimales pour (P) et (D) respective-
ment.

Preuve. Il est clair que

ct x maxfct xi : xi solution réalisable de (P )g = ct x = z et


minfbt y i : y i solution réalisable de (P )g = bt y = w bt y:
D’après le théorème 7.2.1,
ct x ct x bt y bt y:

Vu que ct x = bt y alors z = w .

Exemple 7.2.1 Soient (P) et (D) deux programmes duaux.


8
>
> max z = 4x1 + 5x2 8
>
> >
>
> >
> min w = 8y1 + 7y2 + 3y3
>
> 2x1 + x2 8 >
>
>
< >
< 2y1 + y2 4
(P ) x1 + 2x2 7 (D)
>
> >
> y1 + 2y2 + y3 5
>
> >
>
>
> x 2 3 >
>
>
> : y1 0; y2 0:
>
: x
1 0; x2 0:
Chapitre 7. Dualité 56

On peut facilement véri…er que x = (3; 2)t et y = (1; 2; 0)t sont solutions réalisables
0 1 de
0 1 8
3 B C
B C
(P) et (D) respectivement. De plus, ct x = (4; 5) @ A = 22 et bt y = (1; 2; 0) B 7 C =
2 @ A
0
22. Donc d’après le théorème 7.2.2, x et y sont deux solutions optimales de (P) et (D)
respectivement et z = w = 22.

Théorème 7.2.3 Soient (P) et (D) un couple de programmes linéaires duaux


8 8
>
> t
max z = c x >
> min w = yb
>
< >
<
(P ) Ax b (D) yA c
>
> >
>
>
: >
: y 0:
x 0;

– Si (P ) et (D) sont réalisables (c-à-d possèdent des solutions réalisables), alors il


admettent des solutions optimales respectivement x et y ; de plus z(x ) = w(y ):
– Si (P) est non réalisable et (D) est réalisable, alors le problème (D) est non borné.
– Si (P) est réalisable et (D) est non réalisable, alors le problème (P) est non borné.

Exemple : Soit (P) le PL suivant


8
>
> max z = x1 2x2 2x3
>
>
>
>
< x 2x2 6x3 3
1
(P ) :
>
> x 4x x 4
>
> 1 2 3
>
>
: x1 ; x2 ; x3 0:

Le problème dual (D) de (P) s’écrit comme suit


8
>
> min w = 3y1 + 4y2
>
>
>
>
>
> y + y2 1
>
<
(D) 2y1 4y2 1 :
>
>
>
>
>
> 6y1 y2 2
>
>
>
: x ;x ;x
1 2 3 0:

Gràce à une représentation graphique, on peut constater que le problème (D) n’est pas
réalisable. Ainsi, on peut vérifuer que x = (1; 0; 0)t est une solution réalisable de (P).
Alors par le Théorème 7.2.3, on peut conclure que (P) n’a pas de solution optimale.
Chapitre 7. Dualité 57

Exemple : Soit (P) le PL suivant


8
>
> max z = 3x1 x2 + x3
>
>
>
>
< x1 x2 + x3 3
(P ) :
>
> 3x + 6x + x 4
>
> 1 2 3
>
>
: x ;x ;x 0:
1 2 3

Le problème dual (D) de (P) s’écrit comme suit


8
>
> min w = 3y1 + 4y2
>
>
>
>
>
> y 3y2 3
>
<
(D) y1 + 6y2 1 :
>
>
>
>
>
> y1 + y2 1
>
>
>
: x1 ; x2 ; x3 0:

La solution graphique de (D) montre que (D) n’est pas borné, cependant, (D) est réali-
sable puisque y = (1; 1)t satisfait les contraintes de (D). Alors par le Théorème 7.2.3, (P)
est non réalisable.

Théorème 7.2.4 (Théorème des écarts complémentaires) Soient (P) et (D) un


couple de programmes linéaires duaux
8 8
>
> max z = ct x >
> min w = yb
>
< >
<
(P ) Ax b (D) yA c
>
> >
>
>
: >
: y 0:
x 0;

Deux solutions réalisables x de (P) et y de (D) sont optimales pour (P) et (D) respecti-
vement si et seulement si

y(Ax b) = 0 et (c yA)x = 0:

Dé…nition 7.2.1 Soit x une solution du primal (P). Une contrainte de (P) est dite
saturée en x si le premier membre de cette contrainte est égal au son second membre. La
ieme contrainte sera dite serrée en x si la ieme contrainte est saturée en x et elle sera dite
lâche si la ieme contrainte est non saturée en x.

Théorème 7.2.5 Une condition nécessaire et su¢ sante pour que x et y soient des so-
lutions optimales de (P) et (D) respectivement est que :
Chapitre 7. Dualité 58

– Si une contrainte de l’un des problèmes duaux est lâche alors la variable duale de
l’autre problème est nulle.
– Si une variable de l’un des problèmes duaux est positive alors la contrainte corres-
pondante de l’autre problème est serrée.

Exemple : Soient (P) et (D) deux programmes duaux.


8
8 >
> min w = 4y1 + 4y2
> >
>
>
> max z = x1 + 3x2 + x3 >
>
>
> >
> 5y1 + y2 1
>
< >
<
5x1 + 3x2 4
(P ) (D) 3y1 + 2y2 3
>
> x1 + 2x2 + 4x3 4 >
>
>
> >
>
>
> >
> 4y2 1
: x 0; x2 ; x3 0: >
>
1 >
: y 0; y 0: 1 2

Graphiquement, on peut constater que y = ( 56 ; 14 )t est une solution optimale pour (D).
Ainsi, on peut véri…er que à l’optimim (en y), la 1ere contrainte de (D) est lâche, tandis
que la 2eme et la 3eme contraintes de (D) sont serrées. D’après le théorème 7.2.5,x1 = 0.
5 1
Par ailleurs, vu que y1 = 6
> 0 et y2 = 4
> 0, alors la 1ere et la 2eme contraintes de (P)
sont lâches et par suite on a :
8
>
> 5x1 + 3x2 = 4 8 8
>
< < < x = 4
3x2 = 4 2 3
x1 + 2x2 + 4x3 = 4 ) ) :
>
> : 2x + 4x = 4 : x = 1
>
: 2 3 3 3
x =0 1

D’où x = (0; 43 ; 13 )t et z = 13
3
.

Théorème 7.2.6 Considérons un couple de problèmes duaux sous forme canonique


8 8
>
> t
max z = c x >
> min w = yb
>
< >
<
(P ) Ax b (D) yA c
>
> >
>
>
: >
: y 0:
x 0;
Sous la forme standard
8 8
>
> max z = ct x >
> min w = yb
>
< >
<
(PS ) Ax + e = b (DS ) yA f = c
>
> >
>
>
: x; e 0; >
: y; f 0;

où e = (e1 ; e2 ; :::; em )t et f = (f1 ; f2 ; :::; fn )t .


Soient (x; e) et (y; f ) des solutions de (PS ) et (DS ) respectivement.
Le théorème des écarts complémentaires peut être énoncé sous la forme :(x; e) et (y; f )
soient optimales de (PS ) et (DS ) respectivement. si et seulement si f :x = 0 et y:e = 0.
Chapitre 7. Dualité 59

7.3 Méthode de dual simplexe


Considérons le PL (P) forme canonique
8
>
> max z = ct x
>
<
(P ) Ax = b
>
>
>
: x 0:
Une base est dite non réalisable si au moins une variable de base est négative.

7.3.1 Algorithme de dual simplexe

1. Déterminer une solution du primal tel que tous les ci sont négatifs ou nuls (solution
dual réalisable, c’est à dire les bi ne sont pas tous positifs).

2. Déterminer la variable sortante xs

bs = minfbi : bi < 0g:

3. Déterminer la variable entrante xe


ce cj
= min : Aej < 0 :
Ase Aej
4. Si tous les Aej sont positifs, alors le problème primal n’a pas de solutions. Sinon
aller en (5):

5. Appliquer l’algorithme du simplexe.

6. Si tous les bi sont positifs, alors stop la base est optimale, sinon aller en (2).

Exemple : Utiliser l’algorithme dual du simplexe pour résoudre le problème suivant :


8
>
> min z = 4x1 + 3x2 + x3
>
>
>
>
< x1 + x2 8
(P )
>
> 8x1 x2 9x3 1
>
>
>
>
: x 0; x ; x 0:
1 2 3

Solution : Puisque min z = max( z), alors (P ) s’écrit comme suit :


8
>
> max( z) = 4x1 3x2 x3
>
>
>
>
< x1 + x2 8
(P )
>
> 8x1 x2 9x3 1
>
>
>
>
: x1 0; x2 ; x3 0:
Chapitre 7. Dualité 60

Après avoir introduit les variables d’écart e1 et e2 , la forme canonique où e1 et e2 sont


les variables de base est formulée au tableau 1.

xB x1 x2 x3 e1 e2 b
e1 1 1 0 1 0 8 v:s
e2 8 1 9 0 1 1
z 4 1 1 0 0 0
" v:s

Le critère de sortie appliqué à cette forme canonique indique que e1 est la variable de
sortie, tandis que x2 est la variable d’entrée. Par conséquent, le pivot sur l’élément à
l’intersection de la première ligne et de la deuxième colonne du tableau 1 engendre la
forme canonique du tableau 2 où les variables de base sont x2 et e2 .

xB x1 x2 x3 e1 e2 b
x2 1 1 0 1 0 8
e2 9 0 9 1 1 9 v:s
z 3 0 1 1 0 8
" v:s

La variable de sortie est donc e2 et la variable d’entrée est x1 . Le pivot sur l’élément à
l’intersection de la deuxième ligne et de la première colonne engendre la forme canonique
du tableau.3 où les variables de base sont x1 et x2 .

xB x1 x2 x3 e1 e2 b
8 1
x2 0 1 1 9 9
7
1 1
e2 1 0 1 9 9
1
4 1
z 0 0 4 3 3
11

La solution optimale est donc x1 = 1; x2 = 7 et x3 = 0 et la valeur optimale est égale à


11.
Chapitre 7. Dualité 61

7.4 Ecriture des variables duales dans le tableau de


simplexe …nal
Exemple : Soient (P) et (D) deux programmes duaux.
8 8
>
> min z = 3x + 10x >
> max w = 10y1 + 14y2
>
> 1 2 >
>
>
> >
>
< 5x1 + x2 10 < 5y1 y2 3
(P ) (D)
>
> 2x1 + 7x2 4 >
> y1 + 7y2 10
>
> >
>
>
> >
>
: x 0; x 0: : y 0; y 0:
1 2 1 2

Tableau de simplexe …nal primal

xB x1 x2 e1 e2 b
7 1 56
x1 1 0 37 37 37
2 35 90
x2 0 1 37 259 37
41 47 1068
z 0 0 37 37 37

f1 f2 y1 y2

41 47 1068
D’où f 1 = f 2 = 0; y 1 = 37
; y2 = 37
et w = 37
.
Tableau de simplexe …nal du primal,

yB y1 y2 f1 f2 b
7 2 41
y1 1 0 37 37 37
1 35 47
y2 0 1 37 259 37
56 90 1068
w 0 0 37 37 37

e1 e2 x1 x2

56 56 90 1068
D’où e1 = e2 = 0, x1 = 37
= 37
, x2 = 37
et w = 37
.

Primal $ Dual
Variable primale $ Variable d’écart duale
Variable d’écart primale $ Variable duale
Variable de base primale $ Variable hors base duale
Ligne z primale $ Colonne b duale
Colonne b primale $ Ligne w duale

Vous aimerez peut-être aussi