Metody optymalizacji, wykład nr 3 – Paweł Zieliński 1

Transkrypt

Metody optymalizacji, wykład nr 3 – Paweł Zieliński 1
1
Metody optymalizacji, wykład nr 3 – Paweł Zieliński
Przedstawienie kolumn niebazowych w nowej bazie
B 1 , . . . , B i∗ −1 , B i∗ , B i∗ +1 , . . . , B m ] i B = [B
B 1 , . . . , B i∗ −1 , B i∗ +1 , . . . , B m , P k ]
Niech B = [B
będą odpowiednio starą i nową bazą. Przedstawmy kolumnę niebazową P k w
starej bazie
k
Bm = P k
y1kB 1 + · · · + yik∗ −1B i∗ −1 + yik∗ B i∗ + yik∗ +1B i∗ +1 + · · · + ym
(1)
Przedstawmy kolumnę niebazową P j w starej bazie
j
Bm = P j
y1j B 1 + · · · + yij∗ −1B i∗ −1 + yij∗ B i∗ + yij∗ +1B i∗ +1 + · · · + ym
Mnożąc (1) przez
nowej bazie
yij∗
,
yik∗
(2)
odejmujemy od (2) i otrzymujemy przedstawienie P j
(y1j −
yij∗ k
yij∗ k
yij∗ k
j
j
∗
B
B
B i∗ +
−
y
)B
+
·
·
·
+
(y
−
y
)B
+
(y
y ∗ )B
∗
∗
1
i −1
i −1
i∗
yik∗ 1
yik∗ i −1
yik∗ i
(yij∗ +1
yij∗ k
yij∗
yij∗ k
j
∗
B i +1 + · · · + (ym − k ym )B
Bm + k P k = P j
− k yi∗ +1 )B
yi∗
yi∗
yi∗
Współrzędne kolumny P j w nowej bazie B wyznaczamy ze wzoru
y ji =



yij∗
yik∗

 yj −
i
dla i = k
yij∗
yik∗
yik dla i 6= k
Algorytm Sympleks
krok 1. Wybierz bazę początkową B (bazowe rozwiązanie dopuszczalne x T =
xB , x P ]T x B ­ 0 , x P = 0 , x B = B −1b ).
[x
Wyznacz współrzędne kolumn y j , j = 1, . . . , n, w bazie B .
krok 2. Sprawdź kryterium optymalności Jeżeli x jest optymalne, to STOP.
krok 3. Ustal kolumnę P k (zmienną xk ) wchodzącą do bazy. Jeżeli dla wszystkich i = 1, . . . , m, yik ¬ 0, to STOP (nie ma rozwiązania optymalnego
skończonego).
krok 4. Wybierz kolumnę B i∗ (zmienną xi∗ ) wychodzącą.
krok 5. Skonstruuj sąsiednie rozwiązanie bazowe x . Wyznacz współrzędne kolumn y j , j = 1, . . . , n, w nowej bazie B .
Podstaw x ← x , y j ← y j , B ← B . Przejdź do kroku 2.
Przykład
4x1 + 5x2 → max
x1 + 2x2 ¬ 40
4x1 + 3x2 ¬ 120
x1 , x2 ­ 0
4x1 + 5x2 → max
x1 + 2x2 + s1
= 40
4x1 + 3x2
+s2 = 120
x1 , x2 , s1 , s2 ­ 0
2
Metody optymalizacji, wykład nr 3 – Paweł Zieliński
4
5
0
0
x1
1
4
0
4
x2
2
3
0
5
s1
1
0
0
0
s2
0
1
0
0
4
5
0
0
x1
1/2
5/2
5/2
3/2
x2
1
0
5
0
s1
1/2
-3/2
5/2
-5/2
s2
0
1
0
0
cj
0
0
zmienne
bazowe
s1
s2
zj
cj − zj
wartości
zm. bazowych
40
120
0
cj
5
0
zmienne
bazowe
x2
s2
zj
cj − zj
wartości
zm. bazowych
20
60
100
zmienne
bazowe
x2
x1
zj
cj − zj
wartości
zm. bazowych
8
24
136
cj
5
4
4
5
0
0
x1
0
1
4
0
x2
1
0
5
0
s1
4/5
-3/5
8/5
-8/5
s2
-1/5
2/5
3/5
-3/5

Podobne dokumenty