Algorithme du simplexe

publicité
Programmation linéaire
Nazih Abderrazzak Gadhi
Forme standard d´un programme linéaire
La forme standard d´un programme linéaire (P) est :
Fondements de la
programmation linéaire
Nazih Abderrazzak Gadhi
2
Définition :
On appelle solution réalisable de (P), tout point x=(x1, x2, …, xn) qui vérifie toutes
les contraintes de (P).
Définition :
On appelle ensemble réalisable de (P), l´ensemble de toutes les solutions
réalisables de (P).
Définition :
Une solution réalisable est dite optimale réalisable, si elle minimise ou maximise
la fonction objectif.
Fondements de la
programmation linéaire
Nazih Abderrazzak Gadhi
3
Proposition :
Tout problème de la programmation linéaire peut se mettre sous la forme standard.
Démonstration:
1.
Contraintes de type
:
est appelé variable d´écart.
Fondements de la
programmation linéaire
Nazih Abderrazzak Gadhi
4
2.
Contraintes de type
:
est appelé variable de surplus.
Fondements de la
programmation linéaire
Nazih Abderrazzak Gadhi
5
3.
Existence des variables libres :
• Méthôde 1 :
• Méthôde 2 :
Fondements de la
programmation linéaire
Nazih Abderrazzak Gadhi
6
Remarque :
Fondements de la
programmation linéaire
Nazih Abderrazzak Gadhi
7
Exemple :
Fondements de la
programmation linéaire
Nazih Abderrazzak Gadhi
8
• Méthôde 1 :
Fondements de la
programmation linéaire
Nazih Abderrazzak Gadhi
9
• Méthôde 2 :
Fondements de la
programmation linéaire
Nazih Abderrazzak Gadhi
10
Ainsi,
Fondements de la
programmation linéaire
Nazih Abderrazzak Gadhi
11
Algorithme du simplexe
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
12
Itération du simplexe !!!!
Partant d'un sommet du polygone initial, c'est à dire d'une solution de base
réalisable initiale, on cherche un sommet adjacent, c'est à dire d'une solution de
base réalisable adjacente qui augmente la valeur de la fonction objectif.
Si on veut obtenir une méthode de résolution générale (la méthode graphique
n'est pas possible en grandes dimensions), il faut donc savoir comment passer
d'une solution de base réalisable à une solution de base réalisable adjacente.
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
13
Après avoir trouvé un sommet de départ (c.à.d une solution de base réalisable
de départ), chaque itération du simplexe, qui correspond à un changement de de
sommet ( changement de base réalisable ), se déroule en trois étapes :
1.
Choix de la variable entrante dans la nouvelle base.
2.
Choix de la variable sortante de l'ancienne base.
3.
Reformulation du problème en fonction de la nouvelle base.
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
14
Résolution algébrique d´un (PL) simple
On considère le problème :
max z = 3x1 + 5x2
sujet à :
3x1 + 2x2 ≤ 18
x1
≤ 4
2x2 ≤ 12
x1, x2 ≥ 0
Sa représentation graphique est :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
15
Définition :
On appelle sommets adjacents deux sommets que l’on peut joindre par une arête.
Exemple :
Par exemple, (4,3) est adjacent à (2,6) mais (4,3) n’est pas adjacent à (0,0).
Remarque :
Le principe de l’algorithme du Simplexe est de déterminer une solution optimale en
allant de sommet en sommet adjacent.
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
16
Pour pouvoir démarrer l’algorithme du Simplexe, il faut ramener les contraintes
d’inégalité en des contraintes d’égalité. Ainsi, notre problème sera sous la
forme standard.
Remarque : Maximiser z, revient à minimiser ( Z = -z ) puis multiplier par -1.
Nous sommes en présence d´un système de trois équations à cinq inconnues.
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
17
Premier programme de base : Programme initial
Pour déterminer le programme initial, on pose habituellement à zéro les variables
principales du modèle; ce qui correspond à x1 =0 et x2 = 0.
Notre système de 3 équations à 5 inconnues devient alors un système de 3
équations à 3 inconnues que l´on va pouvoir manipuler : x3 =18 , x4 =4 et x5 = 12
Par conséquent, on obtient la solution de base réalisable (0,0,18,4,12)
où
Variables hors base : x1 =0 et x2 = 0
Variables de base : x3 =18 , x4 =4 et x5 = 12
Pour cette solution de base : Z=0
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
18
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
19
La nouvelle solution de base est :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
20
On exprime maintenant Z en fonction des nouvelles variables hors base :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
21
La nouvelle solution de base est :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
22
On exprime maintenant Z en fonction des nouvelles variables hors base :
Finalement, du fait que z = - Z, on obtient zmax = 36.
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
23
Méthode du simplexe appliquée à L´exemple
On associe à chaque itération (opération) de l´exemple un tableau:
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
24
Détermination de la variable d´entrée :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
25
On associe à chaque itération (opération) de l´exemple un tableau:
V.E.
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
26
Détermination de la variable de sortie :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
27
On associe à chaque itération (opération) de l´exemple un tableau:
V.E.
V.S.
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
28
Opérations algébriques
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
29
V.S.
V.E.
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
30
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
31
Algorithme du simplexe
Soit le programme linéaire (P) suivant :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
32
Etape 1 :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
33
Etape 2 :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
34
Etape 3 :
Opérations élémentaires du pivot :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
35
Problème ayant une infinité de solutions:
C´est le cas, si au niveau d´un tableau optimal, une des variables hors
base a un coût nul.
Dans ce cas, si on la fait entrer dans la base, on va obtenir une autre solution de
base optimale sans que la valeur de Z ne change.
⇒ le segment formé par les deux solutions de base optimales contient toutes les
solutions optimales du problème.
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
36
Exemple:
max z = 3x1 + 2x2
sujet à :
Algorithme du
simplexe
3x1 + 2x2 ≤ 120
x1 + x2 ≤ 50
x1, x2 ≥ 0
Nazih Abderrazzak Gadhi
37
T1
x1
x2
s1
s2
bi
s1
33
2
1
0
120 →
s2
1
1
0
1
50
-z
3
2
0
0
0
↑
T2
X1
x2
s1
s2
bi
x1
1
2/3
1/3
0
40
s2
0
1/3
1/3
-1/3
1
10 →
-z
0
0
-1
0
-120
↑
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
38
T3
x1
x2
s1
s2
bi
x1
1
0
1
-2
20
x2
0
1
-1
3
30
-z
0
0
-1
0
-120
Le segment formé par les deux solutions de base optimales
(40, 0, 0, 10) et (20, 30, 0, 0) contient toutes les solutions
optimales du problème.
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
39
Multiplicateurs du simplexe
Définition :
Le vecteur des multiplicateurs du simplexe, associé à la base B, est le vecteur
colonne
tel que :
La base optimale B* est constituée des colonnes des variables de
base finales, lues dans le tableau initial.
L´inverse de la base optimale B* est constituée des colonnes des
variables de base initiales, lues dans le tableau final.
Exemple :
Tableau initial du simplexe :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
42
Tableau final du simplexe :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
43
La base optimale B* est constituée des colonnes 1, 4 et 2
(variables de base finales, lues dans le tableau initial )
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
44
L´inverse de la base optimale B* est constituée des colonnes 3, 4 et 5
(variables de base initiales, lues dans le tableau final)
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
45
De plus,
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
46
Application
Modification du terme b dans le problème original
On modifie b de telle sorte que B* demeure réalisable optimale ( on ne touche
pas aux coûts ).
Par conséquent:
On doit avoir :
Peut-on déduire le nouveau Z optimal ? Quelle interprétation économique peut-on faire ?
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
47
Exemple :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
48
On a :
Par définition, on a :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
49
Ainsi :
Donc : B* demeure une base réalisable optimale.
De plus, x1 diminue de 4/3, x4 augmente de 7/3 et x2 augmente de 1.
Ainsi,
Algorithme du
simplexe
Z* = (-3 * 2/3 )+ (0 * 13/3 )+ (-5 * 7 ) = -37.
Nazih Abderrazzak Gadhi
50
On a aussi,
Ainsi,
Algorithme du
simplexe
Z* = -36 +
Z* = -36 – 1 = -37.
Nazih Abderrazzak Gadhi
51
Intérprétation économique :
Algorithme du
simplexe
Nazih Abderrazzak Gadhi
52
Téléchargement