Vous êtes sur la page 1sur 63

RESOLUTION DES

PROGRAMMES LINEAIRES
 Enumérer toutes les bases
 Pour chacune des bases, répéter l’itération
suivante:
 Déterminer la solution de base correspondante
 Vérifier si elle est réalisable
 Si oui, évaluer la fonction objectif avec cette solution
 A la fin de toutes les itérations possibles, retenir
la meilleure solution de base réalisable comme
solution optimale
Dans un problème avec m contraintes et n
variables :

Nombre de bases ≤

Nombre de solutions de base


=

Nombre d’itérations

Nombre de solutions de base réalisables


Quelques valeurs de
m n Nombre de combinaisons
10 20 184 756
20 40 137 846 528 820
40 80 107 507 208 733 336 176 461 620

90 548 514 656 103 281 165 404 177 077


484 163 874 504 589 675 413 336 841 320
Temps de calcul
à raison de1000 itérations /seconde

m = 10, n = 20   3 minutes
m = 20, n = 40   4 ans et 135 jours
m = 40, n = 80   3 409 031 225 689 années
m = 100, n = 200 
 2 871 274 564 183 893 999 410 330
323 360 101 594 194 082 625 425 années
i. Si (P) admet une solution réalisable, alors il admet une
solution de base réalisable.

ii. Si (P) une solution optimale finie, alors admet une


solution de base optimale.

La meilleure solution de base admissible


n’est optimale que si le programme admet
une solution optimale finie
Cette dernière condition est généralement
difficile, voire impossible, à vérifier
d’avance.
 recourir à un examen sélectif des solutions
de base réalisables
 développer un test permettant de vérifier
l’optimalité de la solution examinée sans
l’examen au préalable d’autres solutions
 C’est le cœur de la méthode de résolution
qui sera adoptée et qui est appelée
méthode du Simplexe
 Examiner une solution de base réalisable
 Tester si elle est optimale
 Si oui arrêter
 Sinon, passer à une meilleure solution de
base réalisable
 Reprendre avec la nouvelle solution la
même démarche qu’avec la solution
d’avant, et ainsi de suite jusqu’à conclusion
Développement du test d’optimalité

où A est une matrice m x n de rang m


Une condition suffisante pour qu’une base
réalisable B soit optimale est que :

: Vecteur des multiplicateurs du Simplexe

: Vecteur des coûts réduits


Soit x une solution réalisable quelconque,
Ax = b  BxB + NxN = b  xB = B-1b - B-1NxN
z(x) = cx = cBxB + cNxN
= cB (B-1b - B-1NxN) + cNxN
= cB B-1b + (cN - cBB-1N)xN
Soit x0 la solution de base associée à B
x0B = B-1b ; x0N = 0 z(x0) = cBB-1b
z(x) = z(x0) + (cN - cBB-1N)xN ≤ z(x0) cqfd

≤0 ≥0
≤0
Soient :
B une base réalisable quelconque,
x0 la solution de base correspondante,

S’il existe une variable hors-base xNs telle que


alors :
• soit il est possible, en augmentant la valeur de xNs ,
d’améliorer indéfiniment la valeur de z sans sortir du
domaine réalisable
• soit il est possible de passer à une autre solution de
base meilleure que x0
s=1
  

s=1

On note :
Cas 1:
Cas 2:
Seules m variables peuvent être > 0
Colonnes correspondantes :

m colonnes indépendantes
(b)
B-1 B = (B-1 a.B1 , B-1 a.B2 , … , B-1 a.Br , … , B-1a.Bm)
= ( e1 , e2 , … , er ,…, em )
=I

B-1 = (B-1 a.B1 ,B-1 a.B2 , … ,B-1 a.Ns , … ,B-1 a.Bm)


= ( e1 , e2 ,…, ,…, em )
=T
E x B-1

E
 a .B 
 r 
 cB 
 r 
Ligne r

Ligne m

Ligne m+1
colonne colonnes
r m m +1
Exercice :
Utilisez la méthode de simplexe sous forme révisée pour
résoudre le programme suivant :

Forme Standard
Forme Standard

Forme Tableau
Initialisation
B-1

xB

-  = - cBB-1 (0) -zB


Calcul de
Calcul de
Calcul de
Calcul de

(s = 5 ; Ns = 5 )
rapports
B -1

xB

-  = - cBB-1 (0) (4)

-zB
+1
+1
ancienne base -+-1/2
x 20
1/2

(4) +1
(0)

1 0 -1/2 4
nouvelle base 0 1 0 4
0 0 1/2 2
0 0 -2 (-8 )
(s = 2 ; Ns = 2 )
1 0 -1/2
0 1 0
0 0 1/2
0 0 -2 (-8 ) (2)

1 0 -1/2 4
1 1 -1/2 8
0 0 1/2 2
-2 0 -1 ( -16 )
Condition d’optimalité vérifiée !!!!
( -16 )
matrice identité réalisable
Calcul facile de : B-1 , cBB-1 , B-1b
Rang de A = m

Pas de Base identité réalisable de départ !


Que faire ?
i) Le problème artificiel admet un optimum fini
 x1 , x2 , x3 , ε1 , ε2  avec 1   2  0 ; le problème
initial admet  x1 , x 2 , x 3  comme solution optimale.
ii) Le problème artificiel admet un optimum fini
 x1 , x 2 , x 3 , ε1 , ε2 
avec ε1  0 ou ε2  0 ;
le problème initial n’a pas de solution réalisable.
iii) Le problème artificiel admet un optimum infini et
ε1  ε2  0 ; le problème initial admet aussi un
optimum infini.
iv) Le problème artificiel admet un optimum infini et
ε1  0 ou ε2  0 ; le problème initial n’a pas de solution
réalisable.
x -z xD xS -z

A 0 b D I 0 b
c 1 0 cD 0 1 0
B xD xS -z

D I 0 b
cD 0 1 0

xD xS -z

B D B
-1 -1 0 B b-1
cD – cBB-1D – cBB-1 1 – cBB-1b
B
x -z

A 0 b
c 1 0

x -z

B A
-1 0 B b-1

c – cBB A -1 1 – cBB-1b
x -z

A 0 b
c 1 0

x -z
-1
A 0 -1
b
c A 1
A 0 b
c 1 0

A
= 0 b
c 1 0

=
B A
-1 0 B b-1

c – cBB-1A 1 – cBB-1b
x1 x2 x3 x4 x5 x6 x7 x8 x9
1 1 1 1 1 1 1 0 0 6
2 -1 -2 1 0 0 0 1 0 4
0 0 1 1 2 1 0 0 1 4
1 2 -1 1 4 -2 0 0 0 0

x1 x2 x3 x4 x5 x6 x7 x8 x9
1 1 1/2 1/2 0 1/2 1 0 -1/2 4
2 -1 -2 1 0 0 0 1 0 4
0 0 1/2 1/2 1 1/2 0 0 1/2 2
1 2 -3 -1 0 -4 0 0 -2 -8
x1 x2 x3 x4 x5 x6 x7 x8 x9
1 1 1/2 1/2 0 1/2 1 0 -1/2 4
2 -1 -2 1 0 0 0 1 0 4
0 0 1/2 1/2 1 1/2 0 0 1/2 2
1 2 -3 -1 0 -4 0 0 -2 -8

x1 x2 x3 x4 x5 x6 x7 x8 x9
1 1 1/2 1/2 0 1/2 1 0 -1/2 4
3 0 -3/2 3/2 0 1/2 1 1 -1/2 8
0 0 1/2 1/2 1 1/2 0 0 1/2 2
-1 0 -4 -2 0 -5 -2 0 -1 -16

Vous aimerez peut-être aussi