8/18/2019 04-Simplexe
1/37
1
O
R
GCSIE
A
8/18/2019 04-Simplexe
2/37
2
R
• S
,
.
• M :
,
.
Algorithme du simplexe Michel Bierlaire 3
P
•
– A
– A
– O P = A = , ≥ 0
P
Algorithme du simplexe Michel Bierlaire 4
8/18/2019 04-Simplexe
3/37
3
D
• I :
– S 0
– P =0,.
• +1 . . +1 <
– J . . .
• O
• E , = .
Algorithme du simplexe Michel Bierlaire 5
D
• S ∈ P. O ∈ IR.
• P
• D :
– S P. ∈IR θ
+ θ ∈ P
Algorithme du simplexe Michel Bierlaire 6
8/18/2019 04-Simplexe
4/37
4
D
Algorithme du simplexe Michel Bierlaire 7
directionadmissible
directionadmissible
direction nonadmissible
toutes lesdirections sontadmissibles
D
• S
• S B(1),,B()
• S B=AB(1) AB()
• = 0
• B=(B(1),,B()) = B1
Algorithme du simplexe Michel Bierlaire 8
8/18/2019 04-Simplexe
5/37
5
D
C +θ ?
• C (
0)
• A θ,
. D :
– = 1
– = 0, ≠ ,
Algorithme du simplexe Michel Bierlaire 9
D
• I :
A( + θ ) =
A + θ A = • , A =
• P + θ ,
A = 0
Algorithme du simplexe Michel Bierlaire 10
8/18/2019 04-Simplexe
6/37
6
D
Algorithme du simplexe Michel Bierlaire 11
D
• N :
B = B1 A
• L
• E
.
• Q ?
Algorithme du simplexe Michel Bierlaire 12
8/18/2019 04-Simplexe
7/37
7
D
• :
–
– , ≠ ,
• .
– S
, B > 0.
L θ B + θ B ≥ 0
Algorithme du simplexe Michel Bierlaire 13
D
• .
– S , .
– C
= 0 .
S , ,
.
Algorithme du simplexe Michel Bierlaire 14
8/18/2019 04-Simplexe
8/37
8
C
• Q
?
• ( + θ ) = + θ
• :
Algorithme du simplexe Michel Bierlaire 15
( ) ( )
1 1
n m
T T i i B i B i j B B j
i i
c d c d c d c c d c= =
= = + = +∑ ∑
C
• C B = B1 A ,
=
B B1 A
• I :
– , – B B
1 A A=.
D :
• S , B , B . P ,
=
B B1 A
Algorithme du simplexe Michel Bierlaire 16
8/18/2019 04-Simplexe
9/37
9
C
N :
•
.
• .
• ?
Algorithme du simplexe Michel Bierlaire 17
C
• S B() .
• L B()
B B1 AB()
• B = AB(1) AB()
• B1 AB(1) AB() = I• B1 AB() = (
I)
• B() = B()
B B1 AB()
= B()
B= B() B()= 0
L
Algorithme du simplexe Michel Bierlaire 18
8/18/2019 04-Simplexe
10/37
10
C
:
C
, B. S
.
1. S ≥ 0,
2. S ,
≥ 0.
Algorithme du simplexe Michel Bierlaire 19
D
• S
.
• N
• L
.
• S , .O .
Algorithme du simplexe Michel Bierlaire 20
8/18/2019 04-Simplexe
11/37
11
D
• S,
.
• L .
• L . O .
Algorithme du simplexe Michel Bierlaire 21
D
• O ,
.
• O θ*
θ* = θ ≥ 0 +θ ∈ P
• C θ* ?
• C ,
P .
Algorithme du simplexe Michel Bierlaire 22
8/18/2019 04-Simplexe
12/37
12
D
• S ≥ 0, + θ ≥ 0 θ.
– θ , – θ* = +∞ –
• S < 0,
+ θ ≥ 0
θ ≤ /
θ*
θ*=
8/18/2019 04-Simplexe
13/37
13
D
N :
• S ,
≥ 0 ( =0 = 1)
• I
θ*= =1,, B() 0
=1,. E , θ* > 0.
Algorithme du simplexe Michel Bierlaire 25
E
Algorithme du simplexe Michel Bierlaire 26
8/18/2019 04-Simplexe
14/37
14
E
• B : B(1)=1 B(2)=2
Algorithme du simplexe Michel Bierlaire 27
E
• C
•
(3 4)
Algorithme du simplexe Michel Bierlaire 28
Négatif . La 3ième direction de baseréduit le coût.
8/18/2019 04-Simplexe
15/37
15
E
3 : 3 = 1 4 = 0
Algorithme du simplexe Michel Bierlaire 29
E
Algorithme du simplexe Michel Bierlaire 30
θ1 = -x1/d1=-1/(-3/2)=2/3
8/18/2019 04-Simplexe
16/37
16
E
N :
• N
• 3 1
• A2 A3
• B:
Algorithme du simplexe Michel Bierlaire 31
D
• S
• S
θ*= B()/B()= =1,, B()
8/18/2019 04-Simplexe
17/37
17
D
:
• L AB(), ≠, A , B
.• L =+ θ*
B.
Algorithme du simplexe Michel Bierlaire 33
D
:
1. S B=AB(1),,AB()
B.
2. C
:
=
B B1 A .
S ,
. SOP.
Algorithme du simplexe Michel Bierlaire 34
8/18/2019 04-Simplexe
18/37
18
D
3. C < 0,
B = B1 A .
S B
, .
SOP.
4. C
θ*= B()/B()= =1,, B()
8/18/2019 04-Simplexe
19/37
19
D
:
S , . A, . A ,
•
• A=0, ≥0 < 0. L
∞.
Algorithme du simplexe Michel Bierlaire 37
D
N :
• Q ?
1. S ,
θ* . C = 0 < 0.
C , .
Algorithme du simplexe Michel Bierlaire 38
8/18/2019 04-Simplexe
20/37
20
D
2. M θ* > 0,
. L
.
• I
.
• M .
Algorithme du simplexe Michel Bierlaire 39
D
• E :
Algorithme du simplexe Michel Bierlaire 40
B(1)=5, B(2)=6, B(3)=7B-1 = B = IxB=B
-1b=b
cB
8/18/2019 04-Simplexe
21/37
21
D
• C = 1.
•
L 1 .
Algorithme du simplexe Michel Bierlaire 41
D
• D :
Algorithme du simplexe Michel Bierlaire 42
θ*=0
8/18/2019 04-Simplexe
22/37
22
D
N :
• E 3: C < 0.
• L
.
• P .
• R B :
P < 0,
Algorithme du simplexe Michel Bierlaire 43
• I . L .
I :
• M :
B1A = B1A1 B1A B
1
• C
• L .
• L B
Algorithme du simplexe Michel Bierlaire 44
8/18/2019 04-Simplexe
23/37
23
• E :
Algorithme du simplexe Michel Bierlaire 45
Algorithme du simplexe Michel Bierlaire 46
B(1)=4, B(2)=5, B(3)=6
B=B-1=I
8/18/2019 04-Simplexe
24/37
24
Algorithme du simplexe Michel Bierlaire 47
B-1A B-1b
D :
L :
• S ,
B1A .• S B() ,
.
• L .
Algorithme du simplexe Michel Bierlaire 48
8/18/2019 04-Simplexe
25/37
25
N :
• P :
B1 AB() = S , B() . E ,
1.
Algorithme du simplexe Michel Bierlaire 49
Algorithme du simplexe Michel Bierlaire 50
B-1A B-1b
B(1)=4, B(2)=5, B(3)=6
8/18/2019 04-Simplexe
26/37
26
• L :
Algorithme du simplexe Michel Bierlaire 51
= x5
= x4
= x6
• O
:
BB1A
BB1
• BB1 = BB =
• BB1A
Algorithme du simplexe Michel Bierlaire 52
8/18/2019 04-Simplexe
27/37
27
• L
Algorithme du simplexe Michel Bierlaire 53
B-1A B-1b
cT – cTBB-1A -cTBB
-1b
Algorithme du simplexe Michel Bierlaire 54
B-1A B-1b
cT – cTBB-1A -cTBB
-1b
8/18/2019 04-Simplexe
28/37
28
A
1. S :
B(1)=4, B(2)=5, B(3)=6
(0,0,0,20,20,20)
2. C :
3. C
1 = 10, 2= 12, 3=12
R B: = 1
B = B1A = = (1 2 2)
Algorithme du simplexe Michel Bierlaire 55
4. C θ*
Algorithme du simplexe Michel Bierlaire 56
θ1=20/1θ2=20/2θ3=20/2
-dB xBθ*=10k=2
8/18/2019 04-Simplexe
29/37
29
5. F
• A B1A
• N B1A
• I : Q
Algorithme du simplexe Michel Bierlaire 57
-1 -1QB = B
-1Q B B = I
D :
• S C. L
.
• C C
Q, .
Algorithme du simplexe Michel Bierlaire 58
8/18/2019 04-Simplexe
30/37
30
• M 3 2
Algorithme du simplexe Michel Bierlaire 59
• D ,
– β
– ≠
Q = I + D D 0, , , β.
• Q
• .
Algorithme du simplexe Michel Bierlaire 60
8/18/2019 04-Simplexe
31/37
31
• B = AB(1),,AB(1),AB(),AB(+1),,AB()
• B = AB(1),,AB(1),A ,AB(+1),,AB()
• B1AB() =
• B1B = 1,,1,B1A ,+1,,
• S = B1A ,
Algorithme du simplexe Michel Bierlaire 61
• C ?
• .
1. P ≠ ,
/2. O • C Q
• QB1B = I QB1=B1
Algorithme du simplexe Michel Bierlaire 62
8/18/2019 04-Simplexe
32/37
32
S B1, B1 :
1. P ≠ , /
2. O
C .
C .
Algorithme du simplexe Michel Bierlaire 63
R :
– B(1)=4, B(2)=5, B(3)=6
– = (0, 0, 0, 20, 20, 20)
– θ* = 10 – = (1, 0, 0, 1, 2, 2)
– = ( + θ*) = (10, 0, 0, 10, 0, 0)
– 1
– 5
– A : . . .
Algorithme du simplexe Michel Bierlaire 64
8/18/2019 04-Simplexe
33/37
33
Algorithme du simplexe Michel Bierlaire 65
D
• A
B
B1
B
B1
A0 B
B1 A
• A , :
0 BB1 A
Algorithme du simplexe Michel Bierlaire 66
8/18/2019 04-Simplexe
34/37
34
A
1. S B, .
2. E .S , . SOP.
S, < 0
Algorithme du simplexe Michel Bierlaire 67
3. S =B1A , .
S , ∞. SOP.
4. P > 0, B()/. S . L AB() . L A .
5. E , , 1.
Algorithme du simplexe Michel Bierlaire 68
8/18/2019 04-Simplexe
35/37
35
Algorithme du simplexe Michel Bierlaire 69
θ1=20/1θ2=20/2θ3=20/2
θ1=10
θ2=10
Attention : Bland n’est pas respecté ici
Dégéné-rescence
Algorithme du simplexe Michel Bierlaire 70
θ1=20/3
θ3=4
θ1=10θ2=10
8/18/2019 04-Simplexe
36/37
36
Algorithme du simplexe Michel Bierlaire 71
θ1=20/3
θ3=4
• L :
Algorithme du simplexe Michel Bierlaire 72
= x1= x3
= x2
8/18/2019 04-Simplexe
37/37
• L , . P, B.
• :
• : θ*, .
Algorithme du simplexe Michel Bierlaire 73