Programowanie liniowe w logistyce

Podobne dokumenty
Badania Operacyjne. 1 Programowanie liniowe. kierunek Informatyka, studia II stopnia. wyklad. 1.1 Modelowanie

Badania Operacyjne. 1 Programowanie liniowe. kierunek Informatyka, studia II stopnia. wyklad. 1.1 Modelowanie

Metoda graficzna może być stosowana w przypadku gdy model zawiera dwie zmienne decyzyjne. Metoda składa się z dwóch kroków (zobacz pierwszy wykład):

Układy równań i nierówności liniowych

Programowanie liniowe w logistyce

1 Przykładowe klasy zagadnień liniowych

Badania operacyjne. 1 Programowanie liniowe. kierunek Informatyka, studia II stopnia ćwiczenia. 1.1 Modelowanie

Wstęp do logistyki. kierunek: Matematyka specjalność: Logistyka z zastosowaniem matematyki i informatyki. wykład. 1.1 Modelowanie

Algebra liniowa. Macierze i układy równań liniowych

Programowanie liniowe metoda sympleks

Programowanie liniowe

Programowanie liniowe

Programowanie liniowe metoda sympleks

Programowanie liniowe metoda sympleks

13 Układy równań liniowych

Rozwiazywanie układów równań liniowych. Ax = b

Baza w jądrze i baza obrazu ( )

Programowanie liniowe

Układy równań liniowych

METODA SYMPLEKS. Maciej Patan. Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski

Programowanie liniowe

dr Mariusz Grządziel 15,29 kwietnia 2014 Przestrzeń R k R k = R R... R k razy Elementy R k wektory;

Algebra liniowa z geometrią

Równania liniowe. Rozdział Przekształcenia liniowe. Niech X oraz Y będą dwiema niepustymi przestrzeniami wektorowymi nad ciałem

Rozdział 1 PROGRAMOWANIE LINIOWE

ZAGADNIENIA PROGRAMOWANIA LINIOWEGO

Wykład 14. Elementy algebry macierzy

wszystkich kombinacji liniowych wektorów układu, nazywa się powłoką liniową uk ładu wektorów

Teoretyczne podstawy programowania liniowego

Wykład z modelowania matematycznego. Zagadnienie transportowe.

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Zaawansowane metody numeryczne

Wstęp do metod numerycznych Uwarunkowanie Eliminacja Gaussa. P. F. Góra

Metoda simpleks. Gliwice

Układy liniowo niezależne

Rozwiązywanie układów równań liniowych

Własności wyznacznika

Programowanie liniowe

1 Zbiory i działania na zbiorach.

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

VII. Elementy teorii stabilności. Funkcja Lapunowa. 1. Stabilność w sensie Lapunowa.

SIMR 2016/2017, Analiza 2, wykład 1, Przestrzeń wektorowa

Analiza funkcjonalna 1.

III. Układy liniowe równań różniczkowych. 1. Pojęcie stabilności rozwiązań.

Wyk lad 11 1 Wektory i wartości w lasne

Indukcja. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Wyk lad 7 Metoda eliminacji Gaussa. Wzory Cramera

Obliczenia naukowe Wykład nr 8

Układy równań liniowych

Zastosowania wyznaczników

Wyk lad 8 macierzy i twierdzenie Kroneckera-Capellego

Wyk lad 7 Baza i wymiar przestrzeni liniowej

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w

II. FUNKCJE WIELU ZMIENNYCH

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ...

Formy kwadratowe. Rozdział 10

doc. dr Beata Pułska-Turyna Zarządzanie B506 mail: mgr Piotr J. Gadecki Zakład Badań Operacyjnych Zarządzania B 505.

2 1 3 c c1. e 1, e 2,..., e n A= e 1 e 2...e n [ ] M. Przybycień Matematyczne Metody Fizyki I

ALGEBRA LINIOWA Z ELEMENTAMI GEOMETRII ANALITYCZNEJ

Algorytm simplex i dualność

Zbiory wypukłe i stożki

Wykład 4 Udowodnimy teraz, że jeśli U, W są podprzetrzeniami skończenie wymiarowej przestrzeni V to zachodzi wzór: dim(u + W ) = dim U + dim W dim(u

Wykład 5. Metoda eliminacji Gaussa

1 Macierze i wyznaczniki

Programowanie celowe #1

ZAGADNIENIE TRANSPORTOWE

Wykład 7. Informatyka Stosowana. Magdalena Alama-Bućko. 16 kwietnia Magdalena Alama-Bućko Wykład 7 16 kwietnia / 23

Układy równań liniowych. Ax = b (1)

3. Macierze i Układy Równań Liniowych

Macierze. Rozdział Działania na macierzach

Programowanie liniowe. Tadeusz Trzaskalik

Wykład z modelowania matematycznego. Algorytm sympleks.

Przestrzenie wektorowe

Definicja problemu programowania matematycznego

2. Definicja pochodnej w R n

Algebra liniowa. 1. Macierze.

Wyk lad 14 Formy kwadratowe I

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

F t+ := s>t. F s = F t.

Wyk lad 4 Macierz odwrotna i twierdzenie Cramera

Programowanie liniowe

Wykład 8. Informatyka Stosowana. 26 listopada 2018 Magdalena Alama-Bućko. Informatyka Stosowana Wykład , M.A-B 1 / 31

O MACIERZACH I UKŁADACH RÓWNAŃ

Lokalna odwracalność odwzorowań, odwzorowania uwikłane

Wprowadzenie do badań operacyjnych - wykład 2 i 3

5. Rozwiązywanie układów równań liniowych

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn a 1j a 2j R i = , C j =

Wybrane elementy badań operacyjnych

Definicja i własności wartości bezwzględnej.

Aproksymacja. j<k. L 2 p[a, b] l 2 p,n X = Lemat 1. Wielomiany ortogonalne P 0,P 1,...,P n tworza przestrzeni liniowej Π n. Dowód.

1. PODSTAWY TEORETYCZNE

Wykład z równań różnicowych

FUNKCJA KWADRATOWA. 1. Definicje i przydatne wzory. lub trójmianem kwadratowym nazywamy funkcję postaci: f(x) = ax 2 + bx + c

Przekształcanie równań stanu do postaci kanonicznej diagonalnej

III. Funkcje rzeczywiste

Jak łatwo zauważyć, zbiór form symetrycznych (podobnie antysymetrycznych) stanowi podprzestrzeń przestrzeni L(V, V, K). Oznaczamy ją Sym(V ).

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

ZAGADNIENIE DUALNE Rozważmy zagadnienie liniowe(zagadnienie to nazywamy prymalnym) o postaci kanonicznej:

Treść wykładu. Układy równań i ich macierze. Rząd macierzy. Twierdzenie Kroneckera-Capellego.

Transkrypt:

Programowanie liniowe w logistyce kierunek Informatyka, studia I stopnia wyklad 1 Wstęp Przedmiotem logistyki sa min procesy transportu i magazynowania surowców oraz wytworzonych dóbr, a także planowania produkcji Celem działań logistycznych jest maksymalizacja zysków i minimalizacja kosztów Do podstawowych działów logistyki należa min: logistyka transportu i logistyka produkcji Jednym z podstawowych narzędzi matematycznych stosowanych w logistyce transportu i logistyce produkcji jest programowanie liniowe Jest to dział teorii zadań ekstremalnych, którego przedmiotem sa zadania optymalizacyjne, opisane przez funkcje liniowe, określone na zbiorach zadanych układami równości lub nierówności liniowych Najprostszym przykładem zadania programowania liniowego jest zadanie znale-zienia punktu minimum funkcji f(x) =ax na przedziale [c, d] R + 0 W postaci zadań programowania liniowego można zapisać wiele praktycznych zagadnień 2 Modelowanie Przykład 1 (planowanie produkcji) Wytwórca dysponuje określonymi ilościami różnych środków (surowce, praca, sprzęt), wykorzystywanych do produkcji różnych towarów Wiadomo, jaka ilość i-tego środka jest potrzebna do produkcji jednostki j-tegotowaru, atakże jaki dochód daje sprzedaż każdej wyprodukowanej jednostki j-tego towaru Wytwórca 1

powinien tak zaplanować produkcję, by całkowity dochód uzyskany ze sprzedaży towarów był maksymalny Model Wprowadźmy następujace oznaczenia: m -ilość środków n -ilość towarów a ij -ilość jednostek i-tego środkapotrzebnadoprodukcjijednostkij-tego towaru b i -dostępna ilość jednostek i-tego środka x j - wielkość produkcjij-tego towaru c j - dochód uzyskiwany ze sprzedaży jednostki j-tego towaru Całkowita ilość i-tego środka, wykorzystana podczas produkcji, można więc wyrazić następujaco: nx a ij x j j=1 Ilość tapowinnabyć mniejsza lub równa dostępnej ilości jednostek i-tego środka, czyli nx a ij x j b i,i=1,, m j=1 Dochód uzyskany ze sprzedaży wszystkich wyprodukowanych towarów wyraża się następujaco: przy czym oczywiście należy żadać, by nx c j x j, j=1 x j 0, j=1,, n Można więc sformułować opisane zagadnienie w następujacy sposób: zmaksymalizować funkcjonał kosztu (dochód) nx c j x j przy ograniczeniach j=1 x j 0, j=1,, n, nx a ij x j b i,i=1,, m j=1 2

3 Sformułowanie zadania Ogólnym zadaniem programowania liniowego nazywamy zadanie postaci: J(u) =c 1 u 1 + + c n u n min (1) u k 0, k I (2) a 1,1 u 1 + + a 1,n u n b 1 a m,1 u 1 + + a m,n u n b m a m+1,1 u 1 + + a m+1,n u n = b m+1 a s,1 u 1 + + a s,n u n = b s, (3) gdzie u =(u 1,, u n ) R n,natomiastc j, a i,j, b i, i =1,, s, j =1,, n, sadanymi liczbami rzeczywistymi, przy czym nie wszystkie liczby c j i nie wszystkie liczby a ij sa równe zero, I {1,, n} jest ustalonym zbiorem indeksów; możliwe sa tutaj przypadki: I =, I = {1,, n}, m = s, m =0Wprowadzaj ac oznaczenia c =(c 1,, c n ), a i =(a i,1,,a i,n ), możemy zapisać powyższe zadanie w następujacy sposób: J(u) =hc, ui min u U = {u =(u 1,, u n ) R n ; u i 0 dla i I, ha i,ui b i dla i =1,, m, ha i,ui = b i dla i = m +1,, s} (4) (symbolem hx, yi oznaczamy iloczyn skalarny wektorów x =(x 1,, x n ), y =(y 1,, y n ), tzn hx, yi = P n i=1 x iy i ) W dalszym ciagu, zapis x y, gdzie x =(x 1,, x n ), y =(y 1,, y n ),będzie oznaczał, że x i y i,i=1,,n 3

Wobec tego, zadanie (4) możemy zapisać następujaco: J(u) =hc, ui min u U = {u =(u 1,, u n ) R n ; u i 0 dla i I, Au b, Au = b} gdzie a 1,1 a 1,n a m+1,1 a m+1,n A =, A =, a m,1 a m,n a s,1 a s,n b = b 1 b m, b = b m+1 Każdy punkt u U nazywamy punktem dopuszczalnym zadania (5) Punkt u U nazywamy rozwiazaniem zadania (5), gdy dla dowolnego u U J(u ) J(u) Kanonicznym zadaniem programowania liniowego nazywamy zadanie postaci J(u) =hc, ui min, (6) u U = {u =(u 1,, u n ) R n ; u 0, Au = b} gdzie A R m n, b R m Podstawowym zadaniem programowania liniowego nazywamy zadanie postaci J(u) =hc, ui min, (7) u U = {u =(u 1,, u n ) R n ; u 0, Au b} gdzie A i b sa takie, jak wyżej b s (5) 4 Równoważność zadań Zajmiemy się teraz zagadnieniem równoważności zadań różnego typu Dokładniej, pokażemy, że rozwiazywanie zadania podstawowego i zadania ogólnego można zastapić rozwiazywaniem zadania kanonicznego 4

Istotnie, niech dane będzie zadanie podstawowe (7) i rozważmy w przestrzeni R n+m zadanie postaci hd, zi min z Z = {z =(u, v) R n+m ; z 0, Cz = b}, (8) gdzie d =(c, 0) R n+m, C =[A I m m ]= a 1,1 a 1,n a m,1 a m,n 1 0 0 1 (I m m jest macierza jednostkowawymiarum m) Łatwo zauważyć, że jeśli u U jest rozwiazaniem zadania (7), to z =(u,v ),gdzie v = b Au, jest rozwiazaniem zadania (8), tzn z Z oraz hd, z i hd, zi dla dowolnego z Z Jeśli natomiast z =(u,v ) Z jest rozwiazaniem zadania (8), to u jest rozwiazaniem zadania (7), tzn u U oraz dla dowolnego u U hc, u i hc, ui Podobnie, rozwiazywanie zadania ogólnego (5) można zastapić rozwi azywaniem zadania kanonicznego Rzeczywiście, rozważmy w przestrzeni R p (p = m + I + J + J, gdzie 5

J = {1,,n}ÂI) zadanie postaci he, zi = X c i u i + X i I i J c i w i + X i J c i w i min z Z = {z =(v, u i ; i I,w i ; i J, w i ; i J) R p ; z 0, v + X A i u i + X A i w i + X A i w i = b, i I i J i J X A i u i + X A i w i + X A i w i = b} i I i J i J = {z R p ; z 0, [I m m A i ; i I A i ; i J A i ; i J] 0 Ai ; i I A i ; i J A i ; i J z = b } b, (9) gdzie e =(0,c i ; i I,c i ; i J, c i ; i J) R p, A i - i-ta kolumna macierzy A, A i - i-ta kolumna macierzy A Jeśli u U jest rozwiazaniem zadania ogólnego (5), to z =(v,u i ; i I,w i ; i J, w i ; i J), gdzie v = b Au, w i =max{0,u i }, i J, w i =max{0, u i }, i J, jest rozwiazaniem zadania (9) (zauważmy, że u i = w i w i dla i J) Jeśli natomiast jest rozwiazaniem zadania (9), to z =(v,u i ; i I,w i ; i J, w i ; i J), u =(u i ; i I,w i w i ; i J) jest rozwiazaniem zadania (5) 6

5 Interpretacja geometryczna zadań programowania liniowego Rozważmy zadanie podstawowe (7) w przypadku, gdy n =2, czyli J(u) =c 1 u 1 + c 2 u 2 min u U = {u =(u 1,u 2 ) R 2 ; u 1 0, u 2 0, a i,1 u 1 + a i,2 u 2 b i,i=1,, m} (10) Wprowadźmy oznaczenia U 0,1 = {(u 1,u 2 ) R 2 ; u 1 0}, U 0,2 = {(u 1,u 2 ) R 2 ; u 2 0}, U i = {(u 1,u 2 ) R 2 ; a i,1 u 1 + a i,2 u 2 b i },i=1,, m Oczywiście U = U 0,1 U 0,2 U 1 U m Możliwe sanastępuj ace przypadki: 1 0 zbiór U jest pusty 2 0 zbiór U jest niepustym wielobokiem wypukłym i ograniczonym 7

3 0 zbiór U jest niepustym wielobokiem wypukłym i nieograniczonym Ustalmy liczbę α R Równanie c 1 u 1 + c 2 u 2 = α opisuje poziomicę funkcjonału J odpowiadajac awartości α, czyli zbiór {(u 1,u 2 ) R 2 ; J(u) =α} Jest to prosta o wektorze normalnym c =(c 1,c 2 ) Przy zmianie wartości stałej α od do prosta ta zmienia swoje położenie, przesuwajac się w sposób równoległy w kierunku wektora c i zamiataj ac całapłaszczyznę Wprzypadku2 0 zawsze istnieje punkt pierwszego kontaktu (być może nie jedyny) przesuwajacej się prostej z wielobokiem U Odpowiednia wartośćstałej α wynosi wówczas min u U J(u) =:J 8

9

W przypadku 3 0 ów punkt pierwszego kontaktu istnieje (być może nie jedyny) lub nie Jeśli nie istnieje, oznacza to, że zadanie nie ma rozwiazania; w takim przypadku inf J(u) = u U 10

Zpowyższej dyskusji wynika, że zadanie (10) może nie mieć rozwiazań, może mieć jedno rozwiazanie lub może mieć nieskończenie wiele rozwiazań Ponadto, w przypadku, gdy zbiór rozwiazań jest niepusty, w zbiorze tym istnieje co najmniej jeden punkt, który jest wierzchołkiem wieloboku U Podobna analizę można przeprowadzić w przypadku n =3,zastępujac wielobok wielościanem, a prosta-płaszczyzn a Matodagraficzn a można także rozwiazać niektóre zadania o większej niż 2 lub 3 ilości zmiennych Rozważmy mianowicie zadanie postaci J(u) =hc, ui min u U = {u R m+2 ; u 0, Au = b} gdzie a 1,1 a 1,m a 1,m+1 a 1,m+2 A =,b= a m,1 a m,m a m,m+1 a m,m+2 przy czym ranka = m ikolumnya 1,,A m sa liniowo niezależne Wprowadźmy oznaczenia Zatem a 1,1 a 1,m a 1,m+1 A =, A = a m,1 a m,m a m,m+1 u 1 u =, u = um+1, u m+2 A = c = u m c 1 c m h i A A,u= u u, c = c m+1 c m+2 a 1,m+2 a m,m+2,c= c c b 1 b m,, 11

W konsekwencji warunek możemy zapisać jako Stad Au = b Au + Au = b u = A 1 b A 1 Au Zauważmy teraz, że rozwiazywanie zadania wyjściowego można zastapić rozwi azywaniem zadania postaci D E c, A 1 b A 1 Au + c, u min u U = {u R 2 ; u 0, A 1 Au A 1 b} Dokładniej, jeśli u jest rozwiazaniem zadania (=), to u = u, u (=) gdzie u = A 1 b A 1 Au, jest rozwiazaniem zadania wyjściowego Na odwrót, jeśli u = zadania wyjściowego, to u jest rozwiazaniem zadania (=) u u jest rozwiazaniem 6 Punkty wierzchołkowe Punkt v V R n nazywamy punktem wierzchołkowym (punktem ekstremalnym) zbioru wypukłego i domkniętego V,jeśli przedstawienie v = αv 1 +(1 α)v 2, (11) gdzie α (0, 1), v 1,v 2 V,możliwe jest tylko wtedy, gdy v 1 = v 2 Innymisłowy, punkt v V jest punktem wierzchołkowym zbioru V, gdy nie jest on punktem wewnętrznym 12

niezdegenerowanego odcinka o końcach należacych do V Pojęcie punktu wierzchołkowego jest pojęciem fundamentalnym w teorii programowania liniowego W dalszej części wykładu pokażemy, że jeśli zadanie kanoniczne (przy dowolnym n N) posiada rozwiazanie, to wśród rozwiazań jest co najmniej jeden punkt wierzchołkowy zbioru U = {u R n ; u 0, Au= b} (12) Teraz podamy charakteryzację punktów wierzcholkowych zbioru postaci (12) Twierdzenie 1 Niech dany bedzie zbiór U postaci (12) i punkt v R n,przyczyma R m n Â{0}, r := ranka Punkt v jest punktem wierzchołkowym zbioru U wtedy i tylko wtedy, gdy istniejawskaźniki j 1,,j r {1,, n} takie, że v j 0, j {j 1,, j r } v j =0, j / {j 1,, j r } Układ wektorów A j1,,a jr kolumny A j1,, A jr A j1 v j 1 + + A jr v jr = b saliniowoniezależne w R m (13) występujacych w warunkach (13) nazywamy baza punktu wierzchołkowego v, a odpowiednie współrzędne v j 1,,v j r - współrzednymi bazowymi punktu wierzchołkowego v Punkt wierzchołkowy, którego wszystkie współrzędne bazowe sado- datnie nazywamy nieosobliwym Punkt wierzchołkowy, którego co najmniej jedna współrzędna bazowa jest równa zero nazywamy osobliwym Zmienne u j 1,,u j r nazywamy zmiennymi bazowymi, a pozostałe -zmiennymi niebazowymi (przy ustalonej bazie A j1,,a jr ) Z twierdzenia 1 wynika, że baza nieosobliwego punktu wierzchołkowego zbioru (12) jest wyznaczona jednoznacznie Osobliwy punkt wierzchołkowy może mieć wiele baz 7 Metoda sympleksowa Metodasympleksowapolegana uporz adkowanym sprawdzaniu wartości funkcjonału kosztu w punktach wierzchołkowych zbioru ograniczajacego ( uporzadkowanie oznacza tu, że wartości funkcjonału kosztuwkolejnych punktachnierosna) 13

Rozważmy zadanie kanoniczne postaci J(u) =hc, ui min u U = {u R n ; u 0, Au = b} (14) gdzie 0 6= A R m n,przyczymzakładać będziemy w tym rozdziale, że U 6= (kwestia niepustości zbioru U omówiona będzie w dalszej części wykładu) Oczywiście ranka min{m, n} (podobnie, jak wcześniej, ranka oznaczać będziemy przez r) Równość Au = b możemy zapisać w postaci układu równań nx a i,j u j = b i,i=1,, m j=1 Nie zmniejszajac ogólności rozważań, możemy założyć, że r = m Oczywiście r n Jeżeli r = n, topowyższy układ ma dokładnie jedno rozwiazanie u, przyczymu 0 (gdyby któraś ze współrzędnych punktu u była ujemna, to zbiór U byłby pusty, co sprzeczne byłoby z naszym założeniem) W konsekwencji zbiór U jest jednoelementowy i tym samym u jest rozwiazaniem zadania (14) Będziemy więc zakładać wdalszymciagu, że r = m oraz r<nrówność Au = b możemy więc zapisać w postaci gdzie r = ranka < n a 1,1 u 1 + + a 1,n u n = b 1 (15) a r,1 u 1 + + a r,n u n = b r Podamy teraz opis metody sympleksowej Przypuśćmy, że dany jest punkt wierzchołkowy v zbioru U = {u R n ; u 0, Au = b} 14

izałóżmy, że kolumny A 1,,A r sabaz ategopuntu,v 1,,v r - jego współrzędnymi bazowymi (kwestia wyznaczenia poczatkowego punktu wierzchołkowego v zbioru U iokreślenia jego współrzędnych bazowych omówiona będzie w dalszej części wykładu) Wprowadźmy następujace oznaczenia u = u 1 u r v 1, v = v r c 1, c = c 1, a 1,1 a 1,r B = =[A 1 A r ] a r,1 a r,r Wówczas układ (15) możemy zapisać w postaci Bu + A r+1 u r+1 + + A n u n = b (16) Z liniowej niezależności kolumn A 1,,A r (jesttobazapunktuv) wynika,że det B 6= 0W konsekwencji istnieje macierz odwrotna B 1 Współrzędne niebazowe punktu v sa zerowe, a więc z (16) otrzymujemy Bv = b, skad v = B 1 b Mnożac równość (16) lewostronnie przez B 1, otrzymujemy Oznaczmy u + nx k=r+1 B 1 A k u k = B 1 b = v (17) γ s,k = (B 1 A k ) s dla k = r +1,, n, s =1,, r gdzie (B 1 A k ) s oznacza s-tawspółrzędn awektora-kolumnyb 1 A k Równość(17)możemy 15

teraz zapisać wpostacinastępujacego układu równań u 1 + γ 1,r+1 u r+1 + + γ 1,n u n = v 1 u 2 + γ 2,r+1 u r+1 + + γ 2,n u n = v 2 u r + γ r,r+1 u r+1 + + γ r,n u n = v r (18) Określmy także γ s,k =(B 1 A k ) s dla k =1, r, s =1,, r (oczywiście γ sk = δ s,k dla k =1,, r, s =1,, r, gdzieδ s,k jest symbolem Kronekera) Pokazaliśmy więc, że majac ustalony punkt wierzchołkowy v zbioru U iwiedzac, że współrzędne z indeksami 1,,r sa jegowspółrzędnymi bazowymi, można zapisać ograniczenia (15) w równoważnej postaci (16) lub (17) lub (18) Wartość funkcjonału kosztu J wpunkcieu spełniajacym ograniczenia typu równości (15), można zapisać wnastępujacej postaci nx J(u) = hc, ui = c i u i = hc, ui + Ponieważ = * c, v = hc, vi i=1 nx i=r+1 B 1 A i u i + + nx i=r+1 nx i=r+1 nx ( c, B 1 A i ci )u i i=r+1 hc, vi = hc, vi = J(v), c i u i c i u i więc gdzie Określmy także nx J(u) =J(v) i u i, (19) i=r+1 i = c, B 1 A i ci,i= r +1,, n i = c, B 1 A i ci (20) 16

dla i =1,, r Oczywiście i = c, B 1 A i ci = hc, e i i c i = c i c i =0 dla i =1,, r (tutaj e i jest i-takolumn a macierzy jednostkowej o wymiarach r r) Dokonajmy częściowego podsumowania Pokazaliśmy, że zadanie (14) możemy zapisać wnastępujacej postaci P J(u) =J(v) n i u i min i=r+1 U = {u =(u 1,, u n ) R n ; u 0, u spełnia (18)} Występujace w powyższym opisie wielkości γ s,k, v i, i zapiszemy w postaci tzw tablicy sympleksowej, odpowiadajacej punktowi wierzchołkowemu v (21) 17

Tablica sympleksowa I (dla punktu v) u 1 u i u s u r u r+1 u k u j u n u 1 1 0 0 0 γ 1,r+1 γ 1,k γ 1,j γ 1,n v 1 u i 0 1 0 0 γ i,r+1 γ i,k γ i,j γ i,n v i u s 0 0 1 0 γ s,r+1 γ s,k γ s,j γ s,n v s u r 0 0 0 1 γ r,r+1 γ r,k γ r,j γ r,n v r 0 0 0 0 r+1 k j n J(v) Analizujac tablicę sympleksowa I,możemy wyróżnić trzy przypadki: 1 0 spełnione sanierówności i = c, B 1 A i ci 0 (22) dla i = r +1,, n, tzn w ostatnim wierszu tablicy sympleksowej wszystkie liczby i sa niedodatnie W tym przypadku punkt v, dla którego skonstruowana została tablica sympleksowa, jest rozwiazaniem zadania Istotnie, bowiem dla dowolnego u U mamy J(u) =J(v) nx i=r+1 i u i J(v) (bo i 0, u i 0) 2 0 istnieje wskaźnik k {r +1,,n} taki, że k > 0 γ i,k 0 dla i =1,, r (czyli B 1 A k 0) (23) Oznacza to, że w k-tej kolumnie tablicy sympleksowej ostatni element ( k ) jest dodatni, a pozostałe - niedodatnie W tym przypadku inf J(u) = (dowód tego faktu pomijamy) u U Oznacza to, że zadanie nie ma rozwiazania 18

3 0 nie zachodza przypadki 1 0 i2 0 ; w konsekwencji istniejawskaźniki k {r +1,, n}, i {1,, r} takie, że k > 0, γ i,k > 0 (24) Oznacza to, że w k-tej kolumnie tablicy sympleksowej ostatni element ( k ) jest dodatni i co najmniej jedna z liczb γ i,k jest dodatnia Załóżmy, że zachodzi przypadek 3 0 iokreślmy zbiór I k = {i {1,, r}, γ i,k > 0} Niech s I k będzie takim wskaźnikiem, że v s =min γ s,k i I k v i γ i,k (25) Współczynnik γ s,k,gdziewskaźniki k, s sa określone przez (24) i (25), nazywany jest elementem rozwiazuj acym tablicy sympleksowej I Można pokazać, że układ kolumn A 1,, A s 1,A s+1,, A r,a k (26) jest baza pewnego punktu wierzchołkowego w, przy czym J(w) J(v) Uwaga 1 Z faktu, że macierz A ma r wierszy wynika, wobec twierdzenia charakteryzujacego punkty wierzchołkowe, iż baza (26) wyznacza punkt wierzchołkowy w sposób jednoznaczny Można więc znaleźć współrzędne punktu w, korzystaj ac z tego twierdzenia Przejdźmy teraz do przypadku ogólnego bazowymi punktu v sa v j 1,, v j r, Łatwo zauważyć, że jeśli współrzędnymi gdzie 1 j 1 < < j r n, to wzory wyrażajace zmienne bazowe i funkcjonał kosztu przy pomocy zmiennych niebazowych, przyjmuja postać(poniżej symbolem I v oznaczamy 19

zbiór {j 1,,j r }) u j 1 = v j 1 P u jr = v jr P k/ I v γ j1,ku k k/ I v γ jr,ku k (27) J(u) =J(v) X k/ I v k u k, (28) gdzie γ ji,k =(B 1 A k ) i ; i =1,, r, k =1,, n (29) (w szczególności γ ji,k = δ ji,k dla i =1,, r, k I v ), B =[A j1 A jr ], gdzie c = c 1 c 1 v j i =(B 1 b) i,i=1,, r, v k =0,k/ I v, k = rx c, B 1 A k ck = c ji (B 1 A k ) i c k,k=1,,n, (30) i=1 (w szczególności k =0dla k I v ) W tym przypadku tablica sympleksowa dla punktu v jest następujaca: Tablica sympleksowa II (dla punktu v) 20

u 1 u j 1 u j i u k u j s u j u j r u n u j 1 γ j1,1 1 0 γ j1,k 0 γ j1,j 0 γ j1,n v j 1 u j i γ ji,1 0 1 γ ji,k 0 γ ji,j 0 γ ji,n v j i u js γ js,1 0 0 γ js,k 1 γ js,j 0 γ js,n v js u j r γ jr,1 0 0 γ jr,k 0 γ jr,j 1 γ jr,n v j r 1 0 0 k 0 j 0 n J(v) Tak, jak wcześniej, należy rozważyć trzy przypadki: 1 0 spełniony jest warunek k 0, k/ I v (22 ) 2 0 istnieje k/ I v takie, że k > 0, γ ji,k 0, i=1,, r (23 ) 3 0 nie zachodzi przypadek 1 0 i2 0 ; w konsekwencji istnieja k/ I v oraz j i I v takie, że k > 0, γ ji,k > 0 (24 ) Podobnie, jak wcześniej, łatwo sprawdzić, że w pierwszym przypadku punkt v jest rozwiazaniem zadania (14), w drugim - inf hc, ui =, czyli zadanie (14) nie ma rozwi azania u U W trzecim przypadku należy wybrać element rozwiazuj acy γ js,k na podstawie warunku (24 ) oraz warunku v js min v ji γ js,k j i I v,k γ ji,k, (25 ) gdzie I v,k = {j i I v ; γ ji,k > 0}, któres a analogiczne do warunków (24), (25) Następnie, należy wykonać przejście do nowego punktu wierzchołkowego w Z warunków (24 ) i (25 ) wynika, że baza punktu w będzie układ kolumn (z dokładnościa do ich kolejności) A j1,, A js 1,A js+1,, A jr,a k, 21

przy czym J(w) J(v) Współrzędne punktu w można wyznaczyć na podstawie twierdzenia charakteryzujacego punkty wierzchołkowe Uwaga 2 Można pokazać, że w j 1 = v j 1 γ j1,k vj s γ j s,k w j i = v j i γ ji,k vj s γ js,k w j s 1 = v j s 1 γ js 1,k vjs γ js,k w js = v js γ js,k vjs γ js,k =0 w j s+1 = v j s+1 γ js+1,k vjs γ js,k w jr = v jr γ jr,k vjs γ js,k w k = vjs γ js,k w l =0,l/ I v,l 6= k, Tablica sympleksowa dla punktu w przyjmuje postać Tablica sympleksowa III (dla punktu w) 22

u 1 u j 1 u j i u k u j s u j u j r u n u j 1 γ 0 j 1,1 1 0 0 γ 0 j 1,j s γ 0 j 1,j 0 γ 0 j 1,n w j 1 u j i γ 0 j i,1 0 1 0 γ 0 j i,j s γ 0 j i,j 0 γ 0 j i,n w j i u k γ 0 k,1 0 0 1 γ 0 k,j s γ 0 k,j 0 γ 0 k,n w k u j s 1 γ 0 j s 1,1 0 0 0 γ 0 j s 1,j s γ 0 j s 1,j 0 γ 0 j s 1,n w j s 1 u j s+1 γ 0 j s+1,1 0 0 0 γ 0 j s+1,j s γ 0 j s+1,j 0 γ 0 j s+1,n w j s+1 u jr γ 0 j r,1 0 0 0 γ 0 j r,j s γ 0 j r,j 1 γ 0 j r,n w jr 0 1 0 0 0 0 j s 0 j 0 0 n J(w) gdzie współczynniki γ 0 i,j, 0 j (30) z macierza B postaci sa określone przy pomocy wzorów analogicznych do (29), [A j1 A k A js 1 A js+1 A jr ] (zakładamy tu, że wiersze i kolumny w tablicy sympleksowej oraz kolumny macierzy B saustawionewkolejności rosnacych indeksów) Uwaga 2 Można pokazać, że γ 0 j i,j = γ ji,j γ j i,k γ γ j js,j ; i =1,, r, i 6= s, j =1, n, s,k γ 0 k,j = γ js,j,j=1,n, γ j s,k oraz γ 0 js,j j = j k dla j =1,, n γ js,k Opisany więc został jeden krok metody sympleksowej w dowolnym przypadku (co do bazy punktu wierzchołkowego), czyli przejście od jednego punktu wierzchołkowego (v) zbioru U do drugiego punktu wierzchołkowego (w) tego zbioru (w przypadku 3 0 )wtakisposób, że J(w) J(v) 23

8 Reguła antycykliczna Podczas realizacji metody sympleksowej może się zdarzyć, że 0= min v ji j i I v,k γ ji,k = vj s γ js,k Ze wzorów podanych w Uwadze 1 wynika, że w takim przypadku w = v i J(w) =J(v), aprzejście od punktu v do punktu w oznacza jedynie przejście od bazy A j1,,a jr do bazy A j1,, A k,, A js 1,A js+1,, A jr Można podać przykłady zadań pokazujace, że przy ustalonym sposobie wyboru elementu rozwiazuj acego (np często spośród indeksów k, j s spełniajacych warunki (24 )-(25 ) wybiera się najmniejsze wartości) metoda sympleksowa może się zapętlić, tzn w kolejnychiteracjach punktwierzchołkowy nie będzie się zmieniał, ajegobazybędazmieniały się w sposób okresowy (cykliczny) Można jednak określić (naróżne sposoby) regułę wyboruelementu rozwiazuj acego w taki sposób, by uniknać owegozapętlenia Każdatakareguła nazywana jest reguła antycykliczna Podamy teraz opis jednej z takich reguł Do tablicy sympleksowej punktu v (dla uproszczenia przyjmijmy, że kolumny A 1,,A r tworzabazę punktu v)dopisujemy r r -wymiarow a macierz jednostkow a [d i,j ] Dopisane wyrazy przekształcamy w każdej iteracji zgodnie ze wzorami podanymi w Uwadze 2, przy czym nie tworzymy współczynników Element rozwiazuj acy γ s,k wybieramy w następujacy sposób 24

Niech k > 0 i I k = {i {1,, r}, γ i,k > 0} 6= Określmy zbiór I k,1 = {s I k ;min i I k v i = vs } γ i,k γ s,k Jeśli zbiór I k,1 zawiera więcej niż jeden element, to tworzymy zbiór d i,1 I k,2 = {s I k,1 ; min = d s,1 } i I k,1 γ i,k γ s,k Jeśli mamy już określony zbiór I k,m (m 2) i zawiera on więcej niż jeden element, to tworzymy zbiór d i,m I k,m+1 = {s I k,m ; min = d s,m } i I k,m γ i,k γ s,k Dowodzi się, że istnieje l {1,, r+1} takie, że zbiór I k,l składa sięzjednegoelementus, przy czym wszystkie zbiory I k,i, i =1,, l 1, zawieraj awięcej niż jeden element Jako indeks s, służacy do określenia elementu rozwiazuj acego, przyjmujemy ów jedyny element zbioru I k,l Można pokazać, że stosowanie w każdym kroku metody sympleksowej takiego sposobu wyboru indeksu s, wyznaczajacego element rozwiazuj acy, pozwala uniknać zapętlenia i w skończonej ilości kroków rozwiazać zadanie,b adź stwierdzić, że rozwiazanie nie istnieje ( 1 ) 9 Wybór poczatkowego punktu wierzchołkowego Niech dane będzie zadanie kanoniczne J(u) =hc, ui min (31) u U = {u =(u 1,, u n ) R n ; u 0, Au = b}, (32) 1 Zatem nie może siętakże zdarzyć, że w nieuporzadkowany sposób będziemy przerabiać bazy jednego punktu wierzchołkowego, a także, iż wnieskończony sposób (cykliczny lub nie) będziemy przerabiać punkty wierzchołkowe (przejście do kolejnego punktu wierzchołkowego w 6= v oznacza, że v js 6=0iw konsekwencji J(w) <J(v)) 25

gdzie 6= A R m n Opisujac metodę sympleksow a, zakładaliśmy między innymi, że zbiór U jest niepusty i znany jest poczatkowy punkt wierzchołkowy tego zbioru Pokażemy teraz jak stwierdzić, czy U 6= i znaleźć ów punkt wierzchołkowy Bez zmniejszania ogólności rozważań możemy założyć, że b i 0 dla i =1,, m (mnożac w razie potrzeby odpowiednie równania przez 1) Rozważmy zadanie pomocnicze postaci J 1 (z) =u n+1 + + u n+m min (33) z Z = {z = u w R n+m ; z 0, Cz= b}, (34) gdzie C =[A I m m ], w =(u n+1,, u n+m )Układ Cz = b zapiszmy w postaci a 1,1 u 1 + + a 1,n u n + u n+1 = b 1 a m,1 u 1 + + a m,n u n + u n+m = b m Łatwo widać, że zbiór Z jest niepusty, bowiem z 0 := (0,b) Z Łatwo też widać, że z 0 jest punktem wierzchołkowym zbioru Z zbaz azłożona z ostatnich m kolumn macierzy C, czyli wektorów jednostkowych e 1,,e m R m (rankc = m) Można więc do zadania (33)-(34) zastosować metodęsympleksowazpocz atkowym punktem wierzchołkowym z 0 Ponieważ J 1 (z) 0, z Z, więc niemożliwy jest przypadek inf z Z J 1(z) = 26

Zatem, stosujac metodę sympleksowa, w skończonej ilości kroków otrzymamy punkt wierzchołkowy z =(v,w ) Z będacy rozwiazaniem zadania (33)-(34) Możliwe sa tutaj dwa przypadki 1 0 J 1 (z ) > 0 Wówczas zbiór U (dany przez (32)) jest zbiorem pustym Istotnie, w przeciwnym bowiem razie (czyli gdyby istniał punkt u U) punkt z =(u, 0) należałby do zbioru Z oraz spełniona byłaby równość J 1 (z) =0, co sprzeczne jest z nierównościa J 1 (z ) > 0 i optymalnościa punktu z 2 0 J 1 (z )=0 Wówczas punkt z jest postaci (v, 0) Jako punkt uzyskany przy pomocy metody sympleksowej z jest punktem wierzchołkowym zbioru Z St ad wynika, że v jest punktem wierzchołkowym zbioru U Istotnie, ponieważ z 0, więc v 0, natomiast z równości Cz = b wynika, że Awięc Przypuśćmy teraz, że Av = b v U v = αu +(1 α)eu, gdzie α (0, 1), u, eu U Punkty z =(u, 0), ez =(eu, 0) należaoczywiście do zbioru Z, przy czym z = αz +(1 α)ez Ponieważ z jest punktem wierzchołkowym zbioru Z, więc to oznacza, że z = ez, skad u = eu 27

Azatemv jest punktem wierzchołkowym zbioru U Pokazaliśmy więc, że majac wyjściowe zadanie (31)-(32) i rozważajac zadanie pomocnicze (33)-(34), potrafimy stwierdzić (stosujac metodę sympleksowa do zadania (33)-(34)), czy U 6= i, jeśli tak, wyznaczyć pocz atkowy punkt wierzchołkowy zbioru U Uwaga 3 Można pokazać, że, analizujac tablicę sympleksowa dla punktu z =(v, 0) będacego rozwiazaniem zadania (33)-(34)), można (1) znaleźć rz ad macierzy A występujacej w zadaniu (31)-(32), wskazać bazępunktu wierzchołkowego v zbioru (32) (por Uwaga 4) i otrzymać tablicę sympleksowadla punktu v lub (2) sformułować nowe zadanie, dla którego natychmiast można wskazać poczatkowy punkt wierzchołkowy, jego bazę i tablicę sympleksowa, przy czym ilość ograniczeń typu równości występujacych w tym zadaniu jest równa rzędowi macierzy opisujacej te ograniczenia Uzupełniajac rozwiazanie tego zadania (otrzymane metodasym- pleksowa) zerowymi współrzędnymi, otrzymujemy rozwiazanie wyjściowego zadania Jeśli nowe zadanie nie ma rozwiazania, to nie ma go także zadanie wyjściowe Uwaga 4 Majac punkt wierzchołkowy v zbioru U można wyznaczyć rz ad macierzy A iwskazaćwspółrzędne bazowe punktu v wnastępujacy sposób Dodatnie współrzędne punktu v sa oczywiście jego współrzędnymi bazowymi Uzupełniajac układ kolumn odpowiadajacych tymże dodatnim współrzędnym kolumnami spośród pozostałych kolumn tak, by otrzymany układ stanowił bazę powłoki liniowej wszystkich kolumn, otrzymamy bazę punktu v (znać teżbędziemy ranka iwspółrzędne bazowe punktu v ) Ta metoda w praktyce jest stosowana w przypadku małych wartości m i n Zpowyższych rozważań wynikanastępujace Twierdzenie 2 Jeśli zbiór U dany przez (32) jest niepusty, to ma co najmniej jeden punkt wierzchołkowy 28

Korzystajac z opisu metody sympleksowej, udowodnimy teraz dwa podstawowe fakty teorii programowania liniowego Twierdzenie 3 Na to, aby kanoniczne zadanie postaci (31)-(32) miałorozwiazanie, tzn aby istniał punkt u U taki, że potrzeba i wystarcza, aby hc, u i =infhc, ui u U 1) zbiór U był niepusty 2) funkcjonał J(u) =hc, ui był ograniczony z dołu na zbiorze U Dowód Konieczność Konieczność warunków 1) i 2) jest oczywista Dostateczność Z warunku 1) i twierdzenia 2 wynika, że istnieje punkt wierzchołkowy zbioru U Można więc, startujac z tego punktu, rozwiazywać zadanie metodasymplek- sowa Z warunku 2) wynika, że w żadnej iteracji nie zajdzie przypadek 2 0 (z opisu metody sympleksowej) Oznacza to, że po skończonej ilości kroków metoda sympleksowa zakończy się znalezieniem rozwiazania u zadania (31)-(32) Twierdzenie 4 Jeśli zadanie (31)-(32) ma rozwiazanie, to wśród rozwiazań conajmniej jeden punkt jest punktem wierzchołkowym Dowód Ztwierdzenia3wynika,że U 6= ifunkcjonał J jest ograniczony z dołu na U Z twierdzenia 2 wynika, że zbiór U ma co najmniej jeden punkt wierzchołkowy Startujac z tego punktu, w skończonej ilości kroków matody sympleksowej, otrzymamy rozwiazanie u, które jest punktem wierzchołkowym zbioru U (w żadnej iteracji nie zajdzie przypadek 2 0,gdyż inf J(u) > ) u U Dowód twierdzenia jest zakończony 29