Niesimpleksowe metody rozwia zywania zadań PL. Seminarium Szkoleniowe Edyta Mrówka

Podobne dokumenty
Zagadnienie Dualne Zadania Programowania Liniowego. Seminarium Szkoleniowe Edyta Mrówka

Geometria odwzorowań inżynierskich Zadania 02

Wyk lad 9 Przekszta lcenia liniowe i ich zastosowania

Sterowalność liniowych uk ladów sterowania

Pierwsze kolokwium z Matematyki I 4. listopada 2013 r. J. de Lucas

Suma i przeciȩcie podprzestrzeni, przestrzeń ilorazowa Javier de Lucas

Metoda Simplex bez użycia tabel simplex 29 kwietnia 2010

Geometria odwzorowań inżynierskich perspektywa wnȩtrza 06C

Geometria odwzorowań inżynierskich Zadania 01

Wyk lad 14 Formy kwadratowe I

Po wprowadzeniu zmiennych uzupe lniaj acych otrzymamy równoważny mu problem w postaci kanonicznej:

Wyk lad 7 Baza i wymiar przestrzeni liniowej

Wyk lad 11 1 Wektory i wartości w lasne

Niech X bȩdzie dowolnym zbiorem. Dobry porz adek to relacja P X X (bȩdziemy pisać x y zamiast x, y P ) o w lasnościach:

Normy wektorów i macierzy

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

y 1 y 2 = f 2 (t, y 1, y 2,..., y n )... y n = f n (t, y 1, y 2,..., y n ) f 1 (t, y 1, y 2,..., y n ) y = f(t, y),, f(t, y) =

SZKO LA PODSTAWOWA HELIANTUS WARSZAWA ul. BAŻANCIA 16. Szeṡcian w uk ladzie wspȯ lrzȩdnych x, y, z GEOMETRIA PRZESTRZENNA STEREOMETRIA

Funkcje wielu zmiennych

Geometria odwzorowań inżynierskich. 1. Perspektywa odbić w zwierciad lach p laskich 06F

Wyk lad 4 Dzia lania na macierzach. Określenie wyznacznika

W poszukiwaniu kszta ltów kulistych

Metody Numeryczne Wykład 4 Wykład 5. Interpolacja wielomianowa

Geometria odwzorowań inżynierskich cienie w rzucie środkowym 06D

Pierwiastki arytmetyczne n a

Rozdzia l 11. Przestrzenie Euklidesowe Definicja, iloczyn skalarny i norma. iloczynem skalarnym.

Elementy analizy funkcjonalnej PRZESTRZENIE LINIOWE

Geometria odwzorowań inżynierskich rzut środkowy 06A

Liczby zespolone, liniowa zależność i bazy Javier de Lucas. a d b c. ad bc

Równania różniczkowe cz astkowe rzȩdu pierwszego

Geometria odwzorowań inżynierskich Zadania 04

Geometria odwzorowań inżynierskich Zadania 06

Wyk lad 9 Baza i wymiar przestrzeni liniowej

Przestrzenie wektorowe, liniowa niezależność Javier de Lucas

Geometria odwzorowań inżynierskich. Zadania 10A

Geometria odwzorowań inżynierskich rzut środkowy 06B

Wyk lad 9 Baza i wymiar przestrzeni liniowej

POCHODNA KIERUNKOWA. DEFINICJA Jeśli istnieje granica lim. to granica ta nazywa siȩ pochodn a kierunkow a funkcji f(m) w kierunku osi l i oznaczamy

Geometria odwzorowań inżynierskich. Zadania 10

Wyk lad 9 Podpierścienie, elementy odwracalne, dzielniki zera

Niezb. ednik matematyczny. Niezb. ednik matematyczny

Seria zadań z Algebry IIR nr kwietnia 2017 r. i V 2 = B 2, B 4 R, gdzie

0.1 Reprezentacja liczb w komputerze

Programowanie liniowe

Cia la i wielomiany Javier de Lucas

Wyk lad 12. (ii) najstarszy wspó lczynnik wielomianu f jest elementem odwracalnym w P. Dowód. Niech st(f) = n i niech a bedzie

Suma i przeciȩcie podprzestrzeń, suma prosta, przestrzeń ilorazowa Javier de Lucas

Rozdzia l 2. Najważniejsze typy algebr stosowane w logice

Wyk lad 8 macierzy i twierdzenie Kroneckera-Capellego

Geometria odwzorowań inżynierskich Zadania Przekroje stożka. Twierdzenie Dandelina

Sterowanie optymalne dla uk ladów nieliniowych. Zasada maksimum Pontriagina.

Rozdzia l 3. Relacje binarne

z n n=1 S n nazywamy sum a szeregu. Szereg, który nie jest zbieżny, nazywamy rozbieżnym. n=1

Funkcje wielu zmiennych

Funkcje wielu zmiennych

Trigonometria. Funkcje trygonometryczne

GAL z aweber/zadania/gal2017gw/ Wersja

Zbiory wypukłe i stożki

Teoria miary WPPT IIr. semestr zimowy 2009 Wyk lady 6 i 7. Mierzalność w sensie Carathéodory ego Miara Lebesgue a na prostej

Geometria odwzorowań inżynierskich Wyk lad 03B

Wyk lad 3 Wyznaczniki

Przestrzenie wektorowe, liniowa niezależność wektorów, bazy przestrzeni wektorowych

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

FUNKCJE LICZBOWE. x 1

Geometria odwzorowań inżynierskich perspektywa boczna wnȩtrza 06E

Mnożniki funkcyjne Lagrange a i funkcje kary w sterowaniu optymalnym

celu przyjmijmy: min x 0 = n t Zadanie transportowe nazywamy zbilansowanym gdy podaż = popyt, czyli n

Asymptota pozioma: oṡ x, gdy y = 0 Asymptota pionowa: oṡ y, gdy x = 0. Hyperbola 1 x

Wyk lad 5 W lasności wyznaczników. Macierz odwrotna

Rozdzia l 6. Wstȩp do statystyki matematycznej. 6.1 Cecha populacji generalnej

SZKO LA PODSTAWOWA HELIANTUS WARSZAWA ul. BAŻANCIA 16. Hyperbola 1 x FUNKCJE ELEMENTARNE WYMIERNE POTȨGOWE LOGARYTMICZNE.

MATEMATYKA REPREZENTACJA LICZB W KOMPUTERZE

STATYSTYKA MATEMATYCZNA dla ZPM I dr inż Krzysztof Bryś wyk lad 1,2 KLASYCZNY RACHUNEK PRAWDOPODOBIEŃSTWA

WYK LAD 5: GEOMETRIA ANALITYCZNA W R 3, PROSTA I P LASZCZYZNA W PRZESTRZENI R 3

Rozdzia l 1. Podstawowe elementy teorii krat

Programowanie matematyczne. czȩść I: programowanie liniowe. Andrzej Cegielski

System liczbowy binarny.

Zestaw nr 7 Ekstremum funkcji jednej zmiennej. Punkty przegiȩcia wykresu. Asymptoty

STYSTYSTYKA dla ZOM II dr inż Krzysztof Bryś Wykad 1

Zestaw nr 6 Pochodna funkcji jednej zmiennej. Styczna do krzywej. Elastyczność funkcji. Regu la de l Hospitala

CHEMIA KWANTOWA MONIKA MUSIA L. Ćwiczenia. mm

(α + β) a = α a + β a α (a + b) = α a + α b (α β) a = α (β a). Definicja 4.1 Zbiór X z dzia laniami o wyżej wymienionych w lasnościach

Elementy logiki i teorii mnogości Wyk lad 1: Rachunek zdań

MATEMATYKA DZIELENIE LICZB Z RESZTA CECHY PODZIELNOṠCI

Zadania o liczbach zespolonych

Równoleg le sortowanie przez scalanie

ANALIZA II 15 marca 2014 Semestr letni. Ćwiczenie 1. Czy dan a funkcjȩ da siȩ dookreślić w punkcie (0, 0) tak, żeby otrzymana funkcja by la ci ag la?

Rozdzia l 10. Najważniejsze normalne logiki modalne

Szymon G l ab. Struktury losowe II Graf losowy. Instytut Matematyki, Politechnika Lódzka

Procesy Stochastyczne - Zestaw 1

Stabilność liniowych uk ladów sterowania

liniowych uk ladów sterowania

Statystyka w analizie i planowaniu eksperymentu

Geometria w R 3. Iloczyn skalarny wektorów

Statystyka w analizie i planowaniu eksperymentu

Uproszczony dowod twierdzenia Fredricksona-Maiorany

Wyk lad 1 Podstawowe struktury algebraiczne

Matematyka A, klasówka, 24 maja zania zadań z kolokwium z matematyki A w nadziei, że pope lni lem wielu b le. rozwia

Zadania z Rachunku Prawdopodobieństwa - 12

1 Przestrzenie unitarne i przestrzenie Hilberta.

Transkrypt:

Niesimpleksowe metody rozwia zywania zadań PL Seminarium Szkoleniowe

Metoda Simplex: wady i zalety Algorytm SIMPLEX jest szeroko znany i stosowany do rozwi azywania zadań programowania liniowego w praktyce. Wymagany czas znalezienia optymalnego rozwi azania przy użyciu algorytmu SIMPLEX rośnie wraz z liczb a n komponentów wektora rozwi azań X. Z lożoność algorytmu SIMPLEX wynosi O (2 n 1) 1

Przyk lad 1 (Klee i Minty, 1972) max c T x przy ograniczeniach: Ax b, x 0. Niech n oznacza wymiar wektora rozwi azań X, oraz : c T = [ 10 n 1, 10 n 2,..., 10 1, 1 ] [, b = 1, 10 2, 10 4,..., 10 2(n 1)] T, 1 0 0... 0 2 10 1 1 0... 0 A = 2 10 2 2 10 1 1... 0............. 2 10 n 1 2 10 n 2... 2 10 1 1 Uwaga: 1 Algorytm SIMPLEX znajdzie optymalne rozwi azanie powyższego zadania w 2 n 1 krokach. 2

Rozmiar zadania PL Każd a nieujemn a liczbȩ ca lkowit a r, gdzie r U, można zapisać w postaci binarnej, w nastȩpuj acy sposób: r = a k 2 k + a k 1 2 k 1 +... + a 1 2 1 + a 0 2 0 2 log 2 U, gdzie a 0, a 1,..., a k przyjmuj a wartości 0 lub 1, natomiast liczba k jest co najwyżej log 2 U. Używaj ac dodatkowego bitu na znak, dowolna liczbe ca lkowit a r, gdzie r U, możemy przedstawić używaj ac co najwyżej ( log 2 U + 2) liczby bitów. Każde zadanie PL opisane jest przez macierz A wymiaru m n, m wymiarowy wektor ograniczeń b oraz n wymiarowy wektor kosztów c. Zatem liczba: L = (mn + m + n) ( log 2 U + 2) określa rozmiar zadania PL wyrażony w bitach. 3

Metoda elipsoid Algorytm oparty na metodzie elipsoid ma wielomianow a z lożoność obliczeniow a. Dla problemu PL o l acznej liczbie bitów L, metoda elipsoid generuje przybliżone rozwi azanie, na podstawie którego możemy w latwy sposób obliczyć w laściwe rozwi azanie problemu, w O ( n 2 L ) iteracjach. Liczba wykonywanych obliczeń w trakcie trwania algorytmu wynosi: O ( n 4 L ). 4

Idea algorytmu W każdym kroku iteracji konstruowana jest elipsoida (zawieraj aca optymalne rozwi azanie problemu PL): Tworzona jest hiperp laszczyzna rozdzielaj aca elipsoidȩ na dwie czȩści tak, aby optymalne rozwi azanie znalaz lo siȩ po jednej stronie, natomiast środek elipsoidy po przeciwnej stonie hiprep laszczyzny (Uwaga! hiperp laszczyzna może przecinać elipsoidȩ w punkcie środkowym - mówimy wówczas o tzw. ciȩciu środkowym). Nastȩpnie znajdowana jest nowa elipsoida, która zawiera wszystkie punkty starej elipsoidy leż ace po tej stronie hiperp laszczyzny, po której znajduje siȩ rozwi azanie optymalne. 5

Rys. 1. Idea dzia lania algorytmu elipsoid 6

Sformu lowanie problemu Znajdź wektor y spe lniaj acy poniższy warunek: A T y c, gdzie c R n, A R m n, y R m. Niech: Y = { y : A T y c }. Poszczególne warunki zapisywać bȩdziemy jako: a T j y c j, j = 1, 2,..., n. Zak ladamy, że Y E 0, gdzie: E 0 := {y : y 2 R}. 7

Uwaga: 2 Każda elipsoida w R n może być zapisana w nastȩpuj acy sposób: { } E = E (y, B) = y : (y y) T B 1 (y y) 1, gdzie y jest środkiem elipsoidy, a B jest symetryczn a, dodatnio określon a macierz a wymiaru m. W naszym przypadku mamy: E 0 := {y : y 2 R}, zatem gdzie: E 0 = E (y 0, B 0 ), y 0 = 0 B 0 = R 2 I. 8

Niech E k = E (y k, B k ), wówczas E k+1 = E (y k+1, B k+1 ) wyznaczamy w nastȩpuj acy sposób: 1. Znajdź j dla którego : a T j y k > c j. 2. Jeżeli j : a T j y k c j to y k Y. STOP. W przeciwnym przypadku: y k+1 = y k B k+1 = δ gdzie τ = 1 m+1, δ = m2 m 2 1, σ = 2 m+1. ( τb k a j ( a T j B k a j ) 1/2, B k σ B ka j a T j B k a T j B ka j Uwaga: 3 E k+1, wyznaczone jak powyżej, jest najmniejsz a elipsoid a pod wzglȩdem objȩtości, która zawiera podelipsoidȩ { y E k : a T j y at j y k}. ), 9

Nawia zanie do zadania PL Rozważmy nastȩpuj acy problem programowania liniowego przy ograniczeniach oraz zagadnienie dualne postaci: przy ograniczeniach min c T x Ax b, x 0, max λ T b λ T A c T, λ 0. Uwaga: 4 Jeżeli x oraz λ s a rozwi azaniami dopuszczalnymi, odpowiednio, zagadnienia pierwotnego i dualnego, oraz c T x = λ T b, wówczas x i λ s a rozwi azaniami optymalnymi. 10

W celu ustalenia rozwi azania optymalnego wystarczy znaleźć wektor [ x T, λ T ], który spe lnia nastȩpuj ace warunki: c T x = b T λ Ax b A T λ c x 0 λ 0. Równość c T x = b T λ można zapisać w nastȩpuj acy sposób: c T x b T λ 0 c T x + b T λ 0. 11

Nowe sformu lowanie zadania PL: znajdź wektor nastepuj ace warunki: [ x T, λ T ] T spe lniaj acy Pz q gdzie: P = c T c T b T b T A 0 I m 0 0 A T 0 I m, z = x λ, q = 0 0 b 0 c 0 12

Metoda punktu wewnȩtrznego Metoda SIMPLEX przeszukuje wierzcho lek po wierzcho lku w celu znalezienia rozwi azania optymalnego. Metoda punktu wewnȩtrznego startuje z punktu wewn atrz zbioru rozwi azań dopuszczalnych i przesuwa sie w kierunku wierzcho lka, w którym znajduje sie rozwi azanie optymalne. 13

Zapis zadania PL w postaci kanonicznej Znajdź wektor x = [x 1,..., x n ] T, dla którego spe lnione s a nastȩpuj ace warunki: przy ograniczeniach min c T x Ax = 0, n x i = 1, i=1 x 0. Za lożenia: macierz A oraz wektor kosztów c zawieraj a elementy ze zbioru liczb ca lkowitych. 14

Oznaczenia pomocnicze Niech e = [1,..., 1] T bȩdzie n elementowym wektorem sk ladaj acym siȩ z samych jedynek oraz Ω = {x R n : Ax = 0}, = { x R n : e T x = 1, x 0 }. gdzie oznacza sympleks w R n. Niech a 0 oznacza środek sympleksu, tzn: a 0 = e/n = [ 1 n,..., 1 ] T. n 15

Uwaga: 5 Jeżeli punkty a 0,..., a n przestrzeni euklidesowej m wymiarowej R m tworz a zbiór liniowo niezależny, wówczas najmniejszy zbiór wypuk ly conv (a 0,..., a n ) zawieraj acy punkty a 0,..., a n nazywamy sympleksem n wymiarowym o wierzcho lkach a 0,..., a n. Sympleks 0 wymiarowy jest zbiorem z lożonym z jednego punktu a 0, sympleks 1 wymiarowy jest niezdegenerowanym odcinkiem o końcach a 0 i a 1, sympleks 2 wymiarowy jest trójk atem o wierzcho lkach a 0, a 1, a 2, natomiast sympleks 3 wymiarowy jest czworościanem o wierzcho lkach a 0, a 1, a 2, a 3. Rys. 2. Sympleks n wymiarowy w przypadkach n = 1, 2, 3. 16

Nasze zadanie można zapisać w nastȩpuj acej postaci: min c T x przy ograniczeniach x Ω, gdzie Ω = { x R n : Ax = 0, e T x = 1, x 0 } = x Rn : A x = 0, x 0 e T 1. 17

Przyk lad 1 min (5x 1 + 4x 2 + 8x 3 ) przy ograniczeniach x 1 + x 2 + x 3 = 1 x 1, x 2, x 3 0. W powyższym przyk ladzie c T = [5, 4, 8], A = 0, 18

Przyk lad 2 min (3x 1 + 3x 2 x 3 ) przy ograniczeniach 2x 1 3x 2 + x 3 = 0 x 1 + x 2 + x 3 = 1, x 1, x 2, x 3 0. W powyższym przyk ladzie c T = [3, 3, 1], A = [2, 3, 1]. 19

Wymagania: 1. środek a 0 sympleksu jest rozwi azaniem dopuszczalnym, tzn.: a 0 Ω. 2. wartośc minimalna funkcji celu na zbiorze rozwi azań dopuszczalnych ma być równa 0. 3. macierz A e T o wymiarach (m + 1) n, jest rzȩdu m + 1. 4. mamy zadany parametr stopu q > 0. Jeżeli otrzymamy rozwi azanie dopuszczalne x, spe lniaj ace warunek: c T x c T a 0 2 q, wówczas uznajemy, że znaleźliśmy rozwi azanie optymalne. 20

Od postaci standardowej PL do kanonicznej Rozważmy zadanie programowania liniowego postaci: max c T x, x R n przy ograniczeniach Ax = b x 0. Zak ladamy, że znamy punkt a = [a 1,..., a n ] T, który jest ściśle wewnȩtrznym punktem zbioru rozwi azań dopuszczalnych, tzn.: Aa = b, a > 0. 21

Niech P + bȩdzie dodatnim stożkiem: P + = {x R n : x 0} oraz oznacza sympleks w R n+1, tzn.: = { x R n+1 : e T x = 1, x 0 }. Wówczas przekszta lcenie T : P + zadane przez: T (x) = [T 1 (x),..., T n+1 (x)] T, gdzie T i (x) = T n+1 (x) = x i /a i x 1 /a 1 +... + x n /a n + 1, 1 x 1 /a 1 +... + x n /a n + 1 i = 1,..., n nazywać bȩdziemy rzutowaniem dodatniego stożka P + na sympleks. 22

W lasność transformacji T Stosuj ac przekszta lcenie T możemy znaleźć wektor c R n+1 oraz macierz A R m (n+1) takie, że dla każdego x R n Dla każdego x R n, T (x). Dla każdego x R n c T x = 0 c T (x) = 0 Ax = b A T (x) = 0. x 0 T (x) 0. 23

Zadanie Rozważmy nastȩpuj acy problem PL zapisany w postaci kanonicznej, spe lniaj acy warunki 1-4: min c T x, x R n przy ograniczeniach x Ω, gdzie Ω = {x R n : Ax = 0} = { x R n : e T x = 1, x 0 }. 24

Poszczególne kroki algorytmu: 1. Inicjalizuj: k := 0, x (k=0) = a 0 = e/n 2. Uaktualnij: x (k+1) = Ψ ( x (k)) 3. Jeżeli ct x (k) c T x (0) 2 q to STOP, w przeciwnym przypadku wykonaj krok 4. 4. k := k + 1, wróć do kroku 2. 25

Mapa przekszta lceń Ψ ( x (k)) 1. Wyznacz: D k = x (k) 1... 0..... 0... x (k) n B k = AD k e T. 2. Znajdź ortogonalny rzut na B k : P k = I m+1 B T k ( Bk B T k ) 1 Bk 26

3. Oblicz znormalizowany ortogonalny rzut c na B k : 4. Wyznacz wektor kierunkowy gdzie r = 1/ n (n 1). ĉ (k) = P kd k c P k D k c d (k) = rĉ (k), 5. Oblicz x (k+1) używaj ac nastȩpuj acego wzoru: x (k+1) = a 0 + αd (k), gdzie α (0, 1) oznacza d lugość kroku. 6. Oblicz x (k+1) używaj ac nastȩpuj acej transformacji: x (k+1) = U 1 k x(k+1) = D k x (k+1) e T D k x (k+1). 27

Objaśnienia Z pierwszego kroku algorytmu mamy: x (0) = a 0 oraz x (1) = x (0) + αd (0), gdzie α (0, 1) jest d lugości a kroku, a d (0) - wektorem kierunkowym. Wymagamy, aby x (1) należa l do Ω = { x R n : Ax = 0, e T x = 1, x 0 } = x Rn : A x = 0, x 0 e T 1 = x Rn : B 0 x = 0, x 0 1 gdzie B 0 R (m+1) n B 0 = A e T. 28

Jeżeli x (0) Ω, wówczas aby x (1) = x (0) + αd (0) Ω, wektor d (0) musi być elementem B 0. Zatem d (0) jest wektorem rzutu prostopad lego wektora c na B 0 : gdzie: d (0) = rĉ (0), ĉ (0) = r = P 0 c P 0 c 1 n (n 1) P 0 = I m+1 B T 0 ( B0 B T 0 ) 1 B0. UWAGA: Skalar r jest promieniem najwiekszej kuli wpisanej w sypleks. Zatem d (0) = rĉ (0) wskazuje kierunek rzutu wektora ĉ (0) na B 0. Zatem, że x (1) = x (0) + αd (0) Ω. 29

Ogólny sposób inkrementacji x (k+1) = Ψ ( x (k)). Niech D k bȩdzie macierza diagonaln a zawieraj ac a na przek atnej elementy wektora x (k) : x (k) 1... 0 D k =...... 0... x (k) n Dowodzi siȩ, że jeżeli x (0) jest ściśle wewnȩtrznym punktem sympleksu, wówczas dla każdego k, x (k) jest również ściśle wewnȩtrznym punktem sympleksu. Zatem D k jest macierz a nieosobliw a oraz 1/x (k) 1... 0 D 1 k =...... 0... 1/x (k) n. 30

Rozważmy przekszta lcenie U k : postaci: U k (x) = D 1 k x/et D 1 k x. UWAGA: x (k) = U k ( x (k) ) = e/n = a 0, x = U 1 k ( x) = D kx/e T D k x. Użyjemy transformacji U k aby przesun ać x do x = U k (x) : x (k+1) = x (k) + αd (k). W celu obliczenia wektora d (k), problem PL w postaci kanonicznej należy zapisać z now a zmienn a x, tzn.: przy ograniczeniach min c T D k x AD k x = 0 x. 31

Problem, z nowa zmienn a x, jest równoważny z powyższym zadaniem PL w tym sensie, że x jest optymalnym rozwi azaniem zadania PL w postaci kanonicznej, wtedy i tylko wtedy, gdy U k (x ) jest optymanym rozwi azaniem przetransformowanego zadania. Niech B k = AD k e T. d (k) = rĉ (k) gdzie ĉ (k) jest znormalizowanym rzutem ( c T D k ) = Dk c na B k. W celu wyznaczenia ĉ (k) korzystamy z nastȩpuj acego wzoru: ĉ (k) = P kd k c P k D k c. 32

Wówczas: d (k) = rĉ (k) = r P kd k c P k D k c. UWAGA: x (k+1) = x (k) + αd (k) należy do zbioru { x : AD k x = 0}. Aby obliczyć x k+1 należy zastosować transformacjȩ odwrotn au 1 k : x k+1 = U 1 k ( x (k+1)) = D 1 k x(k+1) e T D 1. k x(k+1) UWAGA: x (k+1) należy do zbioru Ω. 33

Dziȩkujȩ za uwagȩ 34