Vous êtes sur la page 1sur 9

Hind MREIGUEL Recherche oprationnelle Master TSI

page 1 sur 9


RAPPORT
METHODE DU SIMPLEXE
Hind MREIGUEL Recherche oprationnelle Master TSI
page 2 sur 9


Sommaire
RECHERCHE OPRATIONNELLE ........................................................................... Erreur ! Signet non dfini.
Sommaire ................................................................................................................................................................ 2
Programmation linaire ........................................................................................................................................... 3
Exemple classique ............................................................................................................................................... 3
Mise en quation ............................................................................................................................................. 3
Formulation gnrale ...................................................................................................................................... 3
Propositions ..................................................................................................................................................... 3
Forme canonique & standard .............................................................................................................................. 3
Transformation dcriture ............................................................................................................................... 3
Forme standard ................................................................................................................................................ 3
Forme canonique ............................................................................................................................................. 4
Exemple .......................................................................................................................................................... 4
Bases, bases ralisables, solutions de base .......................................................................................................... 4
Base & hors-base ............................................................................................................................................ 4
Solution de base .............................................................................................................................................. 4
Exemple .......................................................................................................................................................... 4
Caractrisation dune base ralisable .............................................................................................................. 4
Thorme ........................................................................................................................................................ 4
Solutions optimales ......................................................................................................................................... 5
Caractrisation des bases optimales .................................................................................................................... 5
Thorme ........................................................................................................................................................ 5
Exemple classique ........................................................................................................................................... 5
Algorithme du simplexe Mthode des tableaux ............................................................................................... 5
Mthode .......................................................................................................................................................... 5
Exemple classique ........................................................................................................................................... 6
Analyse du tableau final du simplexe.............................................................................................................. 7
Mthode rvise du simplexe .............................................................................................................................. 8
Convergence & Initialisation du simplexe .......................................................................................................... 8
Thorme : Convergence de lalgorithme ....................................................................................................... 8
Initialisation .................................................................................................................................................... 8
Initialisation : Mthode du gros M .................................................................................................................. 9
Initialisation : Mthode des deux phases ......................................................................................................... 9

Hind MREIGUEL Recherche oprationnelle Master TSI
page 3 sur 9


Programmation linaire
Exemple classique
Soit une firme produisant du A et du B avec du M1, du M2 et du M3, selon le tableau suivant :
A B Stocks
M1 2 1 8
M2 1 2 7
M3 0 1 3
Gain / unit 4 5
Mise en quation
Soit x
1
la quantit de A et x
2
la quantit de B, avec 0
1
x et 0
2
x .
- bilan de M1 : 8 2
2 1
+ x x
- bilan de M2 : 7 2
2 1
+ x x
- bilan de M3 : 3
2
x
- Critre :
2 1
5 4 x x Z + =
Formulation gnrale
Le problme (P) revient de chercher x tel que la fonction conomique Z soit maximum.
( )

=
0
,
x
b Ax
x c x Z
P
{ } b Ax x = , 0 est un polydre, qui reprsente lensemble des solutions. Si est vide, le problme na
pas de solution ralisable. Sinon le problme possde une solution optimale, moins que Z ne soit pas born sur
. On distingue les contraintes lches et satures.
Propositions
- est un polydre convexe (par construction).
- Sil existe une solution optimale finie, cest un sommet de .
Forme canonique & standard
Transformation dcriture
-


=

0 , x x
x x x
R x
-

=
b ax
b ax
b ax
-

= +

0 s
b s ax
b ax et

=

0 s
b s ax
b ax
- ( ) ( ) Z Max Z Min =
Forme standard
Un problme est dit sous forme standard si et seulement si toutes les vraies contraintes, autre que 0
i
x , sont
des galits. Il est souvent ncessaire dintroduire des variables dcart pour transformer des ingalits en
galit.
Hind MREIGUEL Recherche oprationnelle Master TSI
page 4 sur 9


Forme canonique
Quant la forme canonique, elle fait intervenir exclusivement des ingalits.

Remarque : Notons que pour ces deux formes, il faut se ramener un problme de maximum.
Exemple
crivons lexemple sous forme standard.

= + + + +
= + + + +
= + + + +
0
3 0 0 0
7 0 0 2 x
8 0 0 2x
5 2
4 2 1
3 2 1
i
x
x x
x x
x x
P , ce qui donne la matrice
|
|
|

\
|
=
1 0 0 1 0
0 1 0 2 1
0 0 1 1 2
A et
|
|
|

\
|
=
3
7
8
b .

Bases, bases ralisables, solutions de base
On suppose que le problme P scrit
( )

=
=
0
,
x
b Ax
x c x Z
avec A une matrice de dimension m x n.
Base & hors-base
Considrons un m-uplet B. On dit que B forme un base si et seulement si la matrice A
B
m x m, constitue par les
colonnes de A dindice dans B, est rgulire. Le complment de B dans { } n , , 1 L est le hors-base associ HB.

On a : b x A x A b Ax
HB HB B B
= + = et ( ) ( )
HB HB
t
B B
t t
x c x c x Z cx x Z + = = . Ainsi toute solution de
P vrifie : b A x A A x
B HB HB B B
1 1
= + et on constate que si lon fixe la valeur des variables hors-bases
HB
x ,
on dtermine la valeur des
B
x .
Solution de base
On appelle solution de base (associe B), la solution particulire obtenue en faisant 0 =
HB
x , do
b A x
B B
1
= . Une telle solution est dite ralisable si 0
B
x . Une solution de base est dite dgnre
1
si
B
x a
des composantes nulles.
Exemple
Dans lexemple, { } 5 , 4 , 3 = B forme une base. La solution de base associ B est ( ) 3 7 8 0 0
t
x=
avec ( ) 0 = x Z . Pour { } 5 , 2 , 1 = B , on obtient la solution optimale ( ) 1 0 0 2 3
t
x= avec
( )
max
22 Z x Z = = .
Caractrisation dune base ralisable
Une base est dite ralisable, si pour son criture canonique, tous les seconds membres b
i
sont positifs.
Thorme
Soit { } 0 , , = = x b Ax R x
n
un polydre convexe (il peut tre non born) ensemble des solutions
ralisables de (P). Lensemble des points extrmaux
2
de correspond lensemble des solutions de base
ralisables.

1
Dans le cadre de notre tude, nous faisons lhypothse supplmentaire que toute les solutions de bases sont non
dgnres, cest dire ( ) m A rang = .
2
ou point anguleux ou sommet
Hind MREIGUEL Recherche oprationnelle Master TSI
page 5 sur 9


Par ailleurs, tout point x dun polydre convexe born est combinaison linaire convexe
3
de points extrmes
de .
Solutions optimales
Le maximum de la forme linaire ( ) x c x Z , = sur le polydre convexe vide est :
- soit infini
- soit fini et obtenu en au moins un point extrmal. Si le maximum est atteint en plusieurs points
extrmaux, il est atteint en tout point combinaison convexe de ces points extrmaux.
Caractrisation des bases optimales
Soit B une base et HB le hors-base associ, on peut crire
( )

= +
= +
x Z x c x c
b x A x A
HB HB
t
B B
t
HB HB B B
, do pour un y
quelconque de R
m
( ) ( ) ( ) yb x Z x yA c x yA c
t
HB HB
t
HB
t
B B
t
B
t
= + . En choisissant y tel que
0 =
B
t
B
t
yA c , cest dire
B
t
B
t
c A = , on obtient
( ) ( )

=
= +

b x Z x A c
b A x A A x
t
HB HB
t
HB
t
B HB HB B B

1 1
. Cest lcriture
canonique par rapport la base B : les coefficients des variables de base sont lidentit, et Z sexprime laide
dune constante qui dpend de la base B, et des variables hors-base.
Remarque : Par une lecture directe, on obtient la solution de base associe B et la valeur correspondante du
critre.
Thorme
Une condition ncessaire et suffisante, en labsence de dgnrescence, pour que B soit optimale est que :
0
1
= =

HB B B
t
HB
t
HB
t
HB
t
HB
t
A A c c A c c .
Exemple classique
criture canonique dans la base { } 5 , 4 , 3 :
( )
|
|
|
|
|

\
|
x Z 0 0 0 5 4
3 1 0 0 1 0
7 0 1 0 2 1
8 0 0 1 1 2
.
Ainsi pour 0
2 1
= = x x , on obtient la solution de base 8
3
= x , 7
4
= x , 3
5
= x et ( ) 0 = x Z . La base
{ } 5 , 4 , 3 nest pas optimale !
criture canonique dans la base { } 5 , 2 , 1 :
( )
|
|
|
|
|

\
|

22 0 2 1 0 0
1 1 0 3 / 1 0 0
2 0 1 3 / 1 1 0
3 0 0 3 / 2 0 1
x Z
.
Ainsi pour 0
4 3
= = x x , on obtient la solution de base 3
1
= x , 2
2
= x , 1
5
= x et ( ) 22 = x Z . La base
{ } 5 , 2 , 1 est optimale !
Algorithme du simplexe Mthode des tableaux
Mthode
- On suppose dans un premier temps connatre une base B ralisable.

3
1 , 0 , = =

i
i
i
i i i
x x
Hind MREIGUEL Recherche oprationnelle Master TSI
page 6 sur 9


- On donne les donnes du problme sous forme dun tableau
( )
|
|
|
|
|

\
|
x Z c c
b a a
b a a
n
m n m m
n
L
L
M M M
L
1
, 1 ,
1 , 1 1 , 1
.
- On passe lcriture canonique par rapport la base B, ce qui donne de faon simplifie :
( )
|
|
|
|
|

\
|
=
= =

b x Z A c c
b A b A A A
t
HB
t
HB
t
HB
t
B HB B HB
0 0
1
1
1 1
L
O

- Si
HB
t
c nest pas ngatif ou nul, il faut utiliser un changement de base.
- Considrons lindice e de ( ) 0 max > =
i e
c c .
- On teste la colonne
e
A : si tous les coefficients sont ngatifs, alors lalgorithme se termine car Z .
- Sinon, on forme les coefficients
e i i i
a b q
,
/ = et on dtermine s tel que ( )
e i i e s s
a b a b
, ,
/ min / = pour les
0
,
>
e i
a . La ligne s est dite ligne de pivot. Si le minimum obtenu est unique (non dgnrescence) la
nouvelle solution x aura toutes ses composantes > 0, et par consquent x sera une solution de base
associe la nouvelle base { } { } e s B B U / = .
- Le nouveau tableau se calcule par pivotage : on utilise la mthode de Gauss en prenant pour pivot le
coefficient
e s
a
,
, ou on effectue la pr-multiplication du tableau par la matrice de pivotage :
|
|
|
|
|
|
|
|
|
|
|

\
|

1 0 0 / 0 0
1 /
1 /
0 / 1
/ 1
/ 1
,
, ,
, , 1
,
, , 1
, , 1
L L
O M
M O
e s e
e s e m
e s e s
e s
e s e s
e s e
a c
a a
a a
a
a a
a a
, dont la colonne singulire est en position s.
- On arrte lalgorithme ds lors que la base obtenue savre optimale.
- On lit les solutions du problme dans le tableau final.
Exemple classique
On applique lalgorithme du simplexe pour lexemple initial.
1. base { } 5 , 4 , 3
[ ] ( )
( ) ( )
|
|
|
|
|

\
|
x Z 0 0 0 5 4
1 / 3 3 1 0 0 1 0
2 / 7 7 0 1 0 2 1
1 / 8 8 0 0 1 1 2
5
4
3
o [ ] : reprsente le pivot.
On change dans la base courante s = 5 avec e = 2 pour former la nouvelle base.
Hind MREIGUEL Recherche oprationnelle Master TSI
page 7 sur 9


2. base { } 2 , 4 , 3

[ ] ( )
( ) ( )
e pivot
e pivot
e pivot
e pivot
c pivot L Z Z
a pivot L L
a pivot L L L
a pivot L L L
x Z



|
|
|
|
|

\
|

/
/
/
/
15 5 0 0 0 4
3 1 0 0 1 0
1 / 1 1 2 1 0 0 1
2 / 5 5 1 0 1 0 2
2
4
3
, 3 3
, 2 2 2
, 1 1 1


3. base { } 2 , 1 , 3
[ ] ( )
( ) ( )
|
|
|
|
|

\
|

19 3 4 0 0 0
2 / 3 3 1 0 0 1 0
1 2 1 0 0 1
3 / 3 3 3 2 1 0 0
2
1
3
x Z


4. base { } 2 , 1 , 5
( )
|
|
|
|
|

\
|

22 0 2 1 0 0
2 0 3 / 2 3 / 1 1 0
3 0 3 / 1 3 / 2 0 1
1 1 3 / 2 3 / 1 0 0
2
1
5
x Z

La base courante est optimale. Par consquent, ( ) 1 0 0 2 3
t
x= est la solution optimale, qui donne
22
max
= Z .
Analyse du tableau final du simplexe
Supposons que le problme scrive P :
( )

=
0
,
x
b Ax
x c x Z
, on va introduire des variables dcart, qui fournisse un
premier tableau de la forme :
( )
|
|
|
|
|

\
|
x Z
b A
b
b
B
k
0 0
1
1
1
L
O M
, pour lequel on dispose de la base
{ }
k initial
b b B L
1
= . Le tableau final est obtenu par une pr-multiplication avec
|
|

\
|

1
1

t
B
O A
, ce qui
donne
( )
|
|
|
|
|

\
|


b x Z
b A A
b
b
t t
B B
k
0 0
1
1
1 1
1
L
O M
, avec pour base { }
k final
b b B = L
1
.
Dans le tableau final, on remarque :
- la place de la matrice identit correspondant aux variables dcart, on a
1
B
A
- la place de
B
A , on a Id
- la place de
HB
A , on a
HB B
A A
1

Hind MREIGUEL Recherche oprationnelle Master TSI
page 8 sur 9


- dans la ligne du critre sous les variables dcart, on a
t
.

Ainsi pour obtenir
1
B
A , on lit dans le tableau final les colonnes correspondant la base initiale, dans lordre o
elles apparaissent de b
1
b
k
. Et rciproquement avec le tableau initial et la base finale, pour obtenir
B
A .
Mthode rvise du simplexe
Le mthode consiste, contrairement la mthode des tableaux, revenir pour chaque itration aux donnes de
lnonc, pour viter les erreurs darrondis successives. Par ailleurs, on essaye de minimiser les calculs.
Supposons que lon dispose dune base B ralisable, on a lalgorithme suivant.

1. Lire A, b, c
Lire B base telle que 0
1

b A
B

k 0
2. k k + 1
3. litration k, soit B la base courante, [ ]
HB B
x x x , = la solution de base associe.
Calculer

=
=
=

i
t
i
t
i
t
B B
t t
B
A c c i
A c
b A b

,
1
1

4. Si 0
i
c alors FIN loptimum est atteint.
Sinon il existe e tel que 0 >
e
c , et on peut encore augmenter strictement Z, ce qui montre que B nest pas
optimal.
5. Calculer
e B e
A A A
1
= .
Si 0
e
A , alors FIN optimum non born.
Sinon calculer s tel que q
i
soit minimum.
6. La nouvelle base est B B \ {s} U {e} ; on retourne en 2.

Convergence & Initialisation du simplexe
Thorme : Convergence de lalgorithme
Sous lhypothse de non dgnrescence, lalgorithme du simplexe converge en un nombre fini ditrations. En
pratique, lalgorithme est encore fini dans le cas de la dgnrescence. La convergence rsulte du fait quil y a un
nombre fini de base, et que le changement de base dcrit prcdemment entrane toujours une augmentation de
Z.
Initialisation
Souvent la base de dpart nest pas une vidence. Par ailleurs, nous avons toujours suppos que ( ) m A rang =
avec A une matrice de dimension m x n. La phase dinitialisation doit permettre de fournir un systme de
contraintes non redondantes (supprimer les contraintes redondantes) et fournir une base de dpart ce qui se
traduit par une matrice identit dans le tableau.
Par des pivotages successifs, on peut se ramener la forme de tableau suivante
|
|
|
|
|

\
|



# . . . 0 0
1 0 0
0 1 0
0 0 1
1
M
M
b
. Si
une ligne i de zros apparat, soit le second membre 0 =
i
b , auquel cas la contrainte i est redondante et on la
supprime, soit 0
i
b et le problme na pas de solution.
Hind MREIGUEL Recherche oprationnelle Master TSI
page 9 sur 9


Initialisation : Mthode du gros M
On suppose que lon dispose dune criture canonique pour la base B, ce qui se traduit par le tableau suivant :
|
|
|

\
|



m
b
b
1 0 0
0 1 0
0 0 1
1
M . Si tous les b
i
sont positifs, alors la base est ralisable ; si lun au moins est ngatif
on doit avoir recours la technique des variables artificielles. En premier, on multiplie les lignes relatives aux b
i

ngatifs par -1 pour les rendre positifs. On obtient de ce fait un nouveau tableau ( ) b A , avec second membre
positifs, mais on ne possde priori plus de base initiale. On associe au problme P, le problme PA dfini
comme suit, PA :

=

= +

=
m
i
i
y M x c Z
y x
b b y I x A
1
max
,
0 , 0
0 , .
, o M est une constante trs grande. On rsout le problme PA,
la base de dpart est celle des colonnes de y. Le fait que chaque y
i
ait un cot M assure que lalgorithme tente
de faire sortir les variables artificielles de la base. Quand chaque y
i
est hors-base, on est en fait en train de
rsoudre P.
Initialisation : Mthode des deux phases
Considrons le problme P classique, et supposons que lon ne dispose pas dune matrice identit pour dbuter
lalgorithme, on va alors introduire des variables artificielles (purement algbriques).
Considrons le problme P
1

=

= +
min
0 , 0
W cy
y x
b Iy Ax
t
, qui nest pas sous forme canonique car W
min
contient les variables
de bases y
i
. On se ramne alors au problme P
2

+ =

= +
cb W cAx
y x
b Iy Ax
t t
max
~
0 , 0 avec
max min
~
W W = , sur lequel on
excute lalgorithme du simplexe.

En terminant le simplexe, deux cas se prsentent :
a) 0
min
> W et le problme P na pas de solution
b) 0
min
= W et il faut encore distinguer deux cas :
- Aucun y
i
nappartient la base optimale de P
2
; par consquent cette base est convenable pour le
problme P. On abandonne P
2
et on reprend le problme P avec la base trouve.
- Certains y
i
sont dans la base optimale de P
2
, on est dans un cas dgnr. On examine la ligne de A
correspondant la variable y
i
de la base.
- Si tous les coefficients
j i
a
,
de la ligne i sont nuls, on supprime cette contrainte qui savre
redondante et on recommence.
- Si lun des coefficients
j i
a
,
de la ligne i est non nul, on pivote autour de cet lment, ce qui a pour
effet de faire rentrer la vraie variable
j
x en chassant la variable artificielle. La fonction conomique
quant elle nest pas augment par ce pivotage, car on se trouve en situation dgnre.

Vous aimerez peut-être aussi