Академический Документы
Профессиональный Документы
Культура Документы
L’algorithme du simplexe
Éléments de Recherche Opérationnelle
Prof. M.F. Troyon
Génie électrique et électronique
Été 2006
14 juin 2006 1
Rappel
14 juin 2006 2
Base et variables basiques
Toute matrice B formée de m colonnes
linéairement indépendantes de A est une base
(ordonnée) du système
Les colonnes de B sont dites basiques, les
autres hors base
Les variables associées aux colonnes de B
sont dites basiques, les autres hors base
La liste ordonnée des variables basiques (ou
de leurs indices) sera aussi appelée base
14 juin 2006 3
Propriétés
Toute solution du système s‘obtient en fixant les valeurs des
variables hors base (indépendantes) et en résolvant pour les
variables basiques (dépendantes):
xB = B-1b − B -1NxN
xB = B -1b et xN = 0
Max z = cDxD
xD , xE ≥ 0
14 juin 2006 5
Points extrêmes
x = λx1 + (1−λ)x2
14 juin 2006 6
Conséquences
On peut montrer l‘équivalence entre:
Conséquence 1:
Si un PL admet une solution optimale, il admet une
solution basique optimale
Conséquence 2:
Le nombre de bases de la matrice des contraintes
[Α Ι étant fini, le nombre de solutions basiques
Α | Ι]
admissibles l‘est aussi.
14 juin 2006 7
Tableau initial d‘un PL
Le tableau initial T0 associé à un PL
sous forme standard est:
xD xE z
Α Ι 0 b ΑxD + ΙxE = b
T0=
-cD 0 1 0 -cDxD + z = 0
14 juin 2006 8
Tableau admissible
Signature d‘un
tableau admissible
14 juin 2006 9
Pivotage dans un tableau
14 juin 2006 10
Comment maximiser z à l’aide des
pivotages?
Comment choisir la variable hors base entrante?
Ce choix doit permettre d‘augmenter la valeur de la
nouvelle solution.
La dernière ligne du tableau associé à la base courante
va nous aider.
z = ζ + Σ i∈N γixi
14 juin 2006 11
Coût marginal ou coût réduit
14 juin 2006 12
Choix de la variable basique
sortante
Introduire xj dans la base va modifier la
valeur des variables basiques.
Pour garder l‘admissibilité de la solution,
l‘augmentation de xj doit être stoppée dès
qu‘une variable basique devient nulle.
C‘est cette variable qui va céder sa place
et quitter la base
14 juin 2006 13
Variable sortante dans le tableau
Considérons la situation dans le tableau associé à la
base courante.
La ie ligne du tableau correspond à:
xj xσ(i)
z α1j 0 0 β1
xσ(i) = βi − Σk∈N αikxk M M M M
αij 1 0 βi
M M M M
αmj 0 0 βm
-γj 0 1 ζ
14 juin 2006 14
Quotient caractéristique
Si xj (var. Hors base) augmente, xσ(i)
(var.basique associée) du tableau va:
1. Augmenter ou rester constant si αij ≤ 0.
L’augmentation de xj n’est pas bornée et le PL
n’admet pas d’optimum fini.
2. Diminuer si αij > 0.
Parmi tous les candidats, choisir le plus petit
quotient caractéristique βi/ αij pour toutes les
lignes où αij > 0. Ce sera la 1ère variable
basique qui s’annule lorsque xj augmente (i.e.
la variable sortante)
14 juin 2006 15
Conséquence sur la solution
Soit i l‘indice de la ligne du plus petit quotient
caractéristique et j l‘indice de la colonne de la variable
entrante. On passe alors de la base actuelle à la
prochaine base en pivotant autour de αij.
La valeur de la solution basique devient:
14 juin 2006 16
Conditions d‘optimalité
14 juin 2006 17
Lecture des variables basiques
p Ι B-1 N 0 β
TB =
0 -γN 1 ζ
14 juin 2006 19
Dégénérescence
Il y a une surjection entre l‘ensemble des bases
admissibles et l‘ensemble des points extrêmaux
(plusieurs bases admissibles peuvent avoir un
même point extrême).
Le problème et les solutions basiques sont dits
dégénérés.
Une solution basique dégénérée se caractérise
par le fait qu‘au moins une variable basique a
une valeur nulle
14 juin 2006 20
Règle de Bland
14 juin 2006 21
Comment trouver une solution
admissible initiale?
La base initiale formée par les variables d‘écart n‘est
pas admissible (i.e. il existe un bi < 0)
Définir un problème auxiliaire dont on connaît une
solution basique admissible et dont la solution optimale
correspond à une solution basique admissible du PL
initial si et seulement si ce dernier possède des
solutions.
De plus, le PL initial admet une solution admissible SSI
la valeur optimale du problème auxiliaire est nulle.
14 juin 2006 22
Les bases du problème auxiliaire
14 juin 2006 23
Le problème auxiliaire
14 juin 2006 24
Algorithme du simplexe Phase I
14 juin 2006 25