Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
description
Transcript of Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
przy ograniczeniach:
xcx T
Xxf
max
0
x
bxA
dim x=n, dim c=n, dim A =[m x n], dim b1=m1,
Postać kanoniczna zadania PL
xcT
Xxx
0max
0,: xbAxxX
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Równoważność zadań programowania matematycznego
I Ograniczenie równościowe możnazastąpić dwoma ograniczeniami
nierownościowymi
0)( jni xxg
II Ograniczenie nierównościowe można zastąpić ograniczeniem równościowym , wprowadzając zmienną uzupełniającą
III Zmienną wolną można przedstawić jako różnicę dwóch zmiennychnieujemnych
0)( xgi
0)( xgi
0)( xgi 0)( xgi
0 jnx
Rxi iii xxx
gdzie: 0,0 ii xx
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Podstawowe definicjeJeśli dla układu równań liniowych Ax=b spełniony jest warunek rz[Ar]=rz[A]
to mogą zaistnieć trzy następujące przypadki:
1. rz[A] = m = n istnieje jedno rozwiązanie układu Ax=b.
2. rz[A] = n < m istnieje jedno rozwiązanie układu równań, lecz przy tym
(m - n) równań jest zbędnych.
3. rz[A] = m < n istnieje nieskończenie wiele rozwiązań układu Ax=b , jest to
układ nieoznaczony.Definicja macierzy bazowej B
Macierzą bazową B układu równań Ax = b rz[A] = m, n>m nazywamy nieosobliwą macierz kwadratową o wymiarach (m*m) utworzoną z liniowo-niezależnych kolumn a j macierzy A.
Definicja rozwiązania bazowego
Rozwiązaniem bazowym układu równań Ax=b rz[A]=m, n>m nazywamy wektor
xb=B-1b utworzony ze zmiennych odpowiadających kolumnom aj macierzy bazowej B.
Składowe wektora bazowego xb są to zmienne bazowe.
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Rozwiązania bazowe
],[ NBA mBB dim,0det
],[ NB xxx
Definicja:
Rozwiązanie bazowe jest rozwiązaniem bazowym dopuszczalnym zadania programowania liniowego PL
jeśli wektor xB jest nieujemny tzn.
Wówczas rozwiązanie bazowe dopuszczalne posiada nie więcej niż m dodatnich xi.
Definicja:
Niezdegenerowanym rozwiązaniem bazowym dopuszczalnym zadania PL nazywamy rozwiązanie dopuszczalne , w którym nie wszystkie składowe x i
są większe od zera.
0Bx
B- macierz bazowa nieosobliwa
N- macierz niebazowa
- wektor zmiennych bazowych odpowiadających kolumnom macierz B- wektor zmiennych niebazowych odpowiadających kolumnom macierz N
N
B
x
x
0]0,[ 1 NBB xbBxxx
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Extremum zadania programowania liniowego PL
TBxx ]0,[
Twierdzenie 5.1
Zbiór wszystkich rozwiązań dopuszczalnych zadania programowania liniowego PL jest zbiorem wypukłym.
Definicja:
Punkt x należący do wypukłego zbioru jest punktem wierzchołkowym zbioru X, jeśli nie może być wyrażony jako kombinacja liniowa innych punktów zbioru X.
nRX
Dowód: 1. Zakłada się, że wektor x jest bazowym rozwiązaniem dopuszczalnym. Pokazać, że x jest punktem wierzchołkowym zbioru X
2. Zakłada się, że wektor x jest punktem wierzchołkowym zbioru rozwiązań dopuszczalnych zadania programowania liniowego. Pokazać, że wektor x jest bazowym rozwiązaniem dopuszczalnym.
Twierdzenie 5.2
Rozwiązanie dopuszczalne x zadania programowania liniowego PL jest punktem wierzchołkowym zbioru rozwiązań dopuszczalnych X wtedy i tylko wtedy gdy odpowiada mu bazowe rozwiązanie dopuszczalne tzn.:
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Extremum zadania programowania liniowego PL cd.
1: RXf nRX
)()( vfxf
Twierdzenie 5.3
Jeżeli funkcja określona na domkniętym i ograniczonym wypukłym zbiorze jest ciągła i wypukła, to globalne maksimum funkcji f(x) występuje w punkcie ekstremalnym (bądź punktach) zbioru X.
Dowód: Zaprzeczamy tezie:
- dowolne globalne minimum
v – dowolny punkt ekstremalny zbioru X.
Zbiór X jest zbiorem zwartym, funkcja f(x) jest ciągła – więc istnieje punkt
x
x
- punkty ekstremalne zbioru X .kiv i ,...,1,
Każdy punkt , który nie jest punktem ekstremalnym, może być wyrażony jako kombinacja wypukła punktów vi
Xx
1;,...,1,0,1 1
k
i
k
i
iii
i kivx
Funkcja f(x) jest wypukła więc zachodzi dla dowolnego punktu zachodzi: Xx
)(max)()()(1 1
i
i
k
i
k
i
ii
ii vfvfvfxf
ckd.
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Extremum zadania programowania liniowego PL cd.
1,...,1,0,11
p
i
ii
p
i
ii pixX
pxxx ....., 21
Twierdzenie 5.4
1. Funkcja celu zadania PL przyjmuje wartość maksymalną w punkcie wierzchołkowym zbioru rozwiązań dopuszczalnych zadania PL.
2. Jeśli funkcja celu zadania PL przyjmuje wartość maksymalną w więcej niż jednym punkcie wierzchołkowym, to ma tą samą wartość dla każdej kombinacji wypukłej tych punktów.
Dla p dopuszczalnych bazowych rozwiązań optymalnych, tzn.
Zbiór rozwiązań optymalnych przyjmuje postać:
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Pierwsze rozwiązanie bazowe
NB xNBbBx 11
NNBB xcNBcbBcx )( 110
NNBB
B
xNB
cNBc
bB
bBc
x
x
1
1
1
10
Poszukiwanie rozwiązań bazowych dopuszczalnych
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Pierwsze rozwiązanie bazowe dopuszczalne
NB xNBbBx 11
NNBB xcNBcbBcx )( 110
NNBB
B
xNB
cNBc
bB
bBc
x
x
1
1
1
10
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Wprowadzone oznaczenia:
0
10
00
1
1
0
m
B
y
y
y
bB
bBcy
mj
j
j
j
jjBj
y
y
y
aB
caBcy
1
0
1
1
Nj Rja ,
oraz
gdzie oznaczają kolumny macierzy N.
Rj
jj xyyx 0000
NRj
jijiBi midlaxyyx ,...,1,0
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Postać początkowej tablicy simpleksowej
Nbx
cx
x
B
N
N
00
NBbBx
cNBcbBcx
x
B
NBB
N
11
110
dla przypadku gdy cB=0 tzn. pierwsze rozwiązanie bazowe dopuszczalne odpowiada za punkt wierzchołkowy x=0.
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Polepszanie rozwiązania bazowego dopuszczalnego
NRj
jijiBi midlaxyyx ,...,1,0
NRj
jj xyyx 0000
0
,0
00
kk
j
ygdyxrównieżtoxgdyzatem
xzawsze
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Polepszanie bazowego rozwiązania dopuszczalnego
0,00 ikNj yorazRkkjpewnegodlay
).0,/(min 0,...,1
ikiki
mirk yyy
Br
rkj
kRj rk
rj
rk
rk x
yx
y
y
y
yx
N
10
Br
rk
ikj
kRj rk
rjikij
rk
rikiB x
y
yx
y
yyy
y
yyyx
N
i
00
Gdy mamy nie-zdegenerowane rozwiązanie bazowe dopuszczalne takie, że
dla przynajmniej jednego i wówczas można z niego otrzymać lepsze bazowe rozwiązanie dopuszczalne przez wymianę jednej z kolumn macierzy B na kolumnę macierzy N.
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Optymalne rozwiązanie zadania programowania liniowego PL metodą simpleks
Twierdzenie 5.5Twierdzenie 5.5
Rozwiązanie bazowe dopuszczalne układu równań Ax=b
jest rozwiązaniem optymalnym zadania PL, jeśli są spełnione dwa warunki:
(i) Warunek prymalnej dopuszczalności:
midlayio ,...,10
(ii) Warunek optymalności
Nj Rjdlay 00
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Pierwsza tablica simpleks-I rozwiązanie bazowe dopuszczalne
.........
.........
.........
.........
.........
.........
.........
.........
0
0
00000
mkmjmBm
rkrjrBr
ikijBi
kj
kj
yyyx
yyyx
yyyx
yyyx
xx
iO
.........
.........
.........
.........
.........
.........
.........
.........
0
0
00000
mkmjmBm
rkrjrBr
ikijBi
kj
kj
yyyx
yyyx
yyyx
yyyx
xx
iO
.........
.........
.........
.........
.........
.........
.........
.........
0
0
00000
mkmjmBm
rkrjrBr
ikijBi
kj
kj
yyyx
yyyx
yyyx
yyyx
xx
iO
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Polepszona tablica simpleks odpowiada za następne rozwiązanie bazowe dopuszczalne o większej wartości
funkcji celu.
.../1.../.../
.........
/)/(...)/(
.........
/...)/(...)/(
.........
0
00
00000000
rkrkrjrkrk
rkikrkrjikijrkrikiBi
rkkrkrjkjrkrk
Brj
yyyyyx
yyyyyyyyyyx
yyyyyyyyyyx
xx
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Algorytm simpleks (prymalny)
Krok 1. (start). Rozpoczynamy algorytm od znalezienia pierwszego rozwiązania bazowego dopuszczalnego. Należy sprawdzić dopuszczalność
rozwiązania: czy Tak - idź do kroku 2, Nie – STOP.
Krok 2. (test optymalności). Czy dla każdego ?
• Tak - to aktualne rozwiązanie jest optymalne.
• Nie - idź do kroku 3.
Krok 3. (Wybór zmiennej wchodzącej do bazy). Wybierz jako zmienną wchodzącą do bazy taką zmienną dla której
Typową regułą jest wybór zmiennej jest reguła dla której:
00 jy NRj
Nk Rkx , .00 ky
0, 000 min
jjRj
k yyyN
kx
Idż do kroku 4.
midlayi ,...,100
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Algorytm simpleks (prymalny) c.d.
Krok 5. (eliminacja Gauss’a). Wyznacz oraz względem zmiennych
oraz zmiennej zgodnie z wyprowadzonym wzorem.
Podstaw
aby otrzymać nowe rozwiązanie bazowe dopuszczalne.
Idź do kroku 2.
Krok ten czasami nazywa się wymianą zmiennej bazowej ( piwotyzacją).
kx ,, NBi Rix
}{, kRjx Nj
0 i }{,0 BrNj xkRjx
Krok 4. (wybór zmiennej usuwanej z bazy). Wybierz jako zmienną usuwaną z bazy taką zmienną dla której
Jeśli wiele zmiennych spełnia ten warunek, wybierz arbitralnie jedną z nich.
Idż do kroku 5.
,Brx
).0,/(min 0,...,1
ikiki
mirk yyy
rBx
Algorytmy optymalizacjiDr inż. Ewa Szlachcic Wykład 4
Wydział Elektroniki PWr EiT III r.
Schemat reguły przeliczenia współczynników w tablicy simpleks
wg metody eliminacji Gauss’a
p - element centralny (główny) q – dowolny element w wierszu centralnym (głównym) r – dowolny element w kolumnie centralnej (głównej) s – dowolny pozostały element
pp
rppp
rqs
q
sr
q1