METODY OPTYMALIZACJI METODY OPTYMALIZACJI
Transkrypt
METODY OPTYMALIZACJI METODY OPTYMALIZACJI
METODY METODYOPTYMALIZACJI OPTYMALIZACJI Tomasz M. Gwizdałła 2012/13 Informacje wstępne Tomasz Gwizdałła Katedra Fizyki Ciała Stałego UŁ Pomorska 149/153, p.523B tel. 6355709 [email protected] http://www.wfis.uni.lodz.pl/staff/tgwizdalla Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Informacje wstępne Prawdopodobny plan wykładu: Wstęp. Optymalizacja deterministyczna: metody niegradientowe i gradientowe funkcji jednej i wielu zmiennych ________________________________________________________ Programowanie liniowe simplex , zagadnienie transportowe , zagadnienie plecakowe Metody heurystyczne symulowane wyżarzanie, poszukiwanie tabu, algorytm ewolucyjny, algorytm mrówkowy Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Informacje wstępne Literatura: dowolna (porządna) książka dotycząca metod numerycznych, np. J.Stoer, R.Bulirsch Wstęp do analizy numerycznej A.Bjorck, G.Dahlquist Metody numeryczne ________________________________________________________ M.Sysło, N.Deo, J.Kowalik Algorytmy optymalizacji dyskretnej Z.Michalewicz, D.Vogel Jak to rozwiązać czyli nowoczesna heurystyka Z.Michalewicz Algorytmy genetyczne + struktury danych = programy ewolucyjne Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Pojęcie Co to jest optymalizacja? Istnieje wiele zagadnień opisywanych terminem optymalizacja: optymalizacja matematyczna (formuła) optymalizacja oprogramowania (efektywność kodu) optymalizacja stron (wyszukiwanie, pozycjonowanie) optymalizacja systemu (efektywność sprzętu) optymalizacja wydajności (zarządzanie zasobami) optymalizacja ekonomiczna (P/E) programowanie liniowe Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Pojęcie Co to jest optymalizacja? Metoda wyznaczania najlepszego rozwiązania z punktu widzenia określonego kryterium. 1. Najlepsze: szukamy wartości ekstremalnej. 2. Kryterium: musimy dysponować funkcją oceny. Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Dana jest funkcja Sformułowanie f : Aℝ Szukamy takiej wartości x0 ∈ A ,że ∀ x ∈A f x f x 0 ∨ ∀ x ∈A f x f x 0 zagadnienie maksymalizacji ∀ x ∈A f x f x 0 ∨ ∀ x ∈A f x f x 0 zagadnienie minimalizacji A - przestrzeń poszukiwań lub przestrzeń konfiguracyjna zwykle jest to podzbiór przestrzeni Rn Taki wybór znacznie ogranicza zakres analizowanych przez nas zagadnień, pomijając np. tzw. zagadnienia multiobjective optimization (optymalizacji wielokryterialnej), stanowiące bardzo istotną część współczesnych problemów optymalizacyjnych. Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Sformułowanie Pierwsze zagadnienie optymalizacyjne Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Sformułowanie Pierwsze zagadnienie optymalizacyjne Publius Vergilius Maro Eneida - Zagadnienie Elissy (Dydony) związane z legendą dotyczącą założenia Kartaginy. Koloniści osiadłszy na zamieszkanych przez Numidyjczyków północnych wybrzeżach Afryki mogli zająć tyle miejsca, ile da się objąć skórą wołu Forma matematyczna: Jak zmaksymalizować powierzchnię obszaru ograniczonego krzywą o długości zależnej od pewnych dodatkowych czynników? Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Sformułowanie Pierwsze sformułowane formalnie zagadnienie optymalizacyjne Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Sformułowanie Pierwsze sformułowane formalnie zagadnienie optymalizacyjne 1697 – Johann Bernoulli – zagadnienie brachistochrony Znaleźć na płaszczyźnie krzywą, łączącą nie leżące w pionie punkty A i B, wzdłuż której musiałby poruszać się punkt materialny, aby pod działaniem siły ciężkości przebyć drogę w najkrótszym czasie p2 t=∫ p1 Metody optymalizacji { v= 2 g y ds = dx v ds= 1 dy 2 dx } p2 =∫p1 Tomasz M. Gwizdałła 2 1 y ' dx 2g y 2012/13 Podstawy Sformułowanie Pierwsze sformułowane formalnie zagadnienie optymalizacyjne 1697 – Johann Bernoulli – zagadnienie brachistochrony Znaleźć na płaszczyźnie krzywą, łączącą nie leżące w pionie punkty A i B, wzdłuż której musiałby poruszać się punkt materialny, aby pod działaniem siły ciężkości przebyć drogę w najkrótszym czasie p2 t=∫ p1 { v= 2 g y ds = dx v ds= 1 dy 1 2 x= k −sin 2 1 x= k 2 1−cos 2 2 dx } p2 =∫p1 2 1 y ' dx 2g y parametryczne równanie cykloidy Ale, czy zagadnieniem optymalizacyjnym nie jest zasada Fermata (1662) Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Elementy definiujące zagadnienie Trudności napotykane w fazie poszukiwania optimum 1. Rozmiar przestrzeni poszukiwań 2. Skomplikowanie modelu 3. Niejednoznaczność funkcji oceny 4. Ograniczenie przestrzeni poszukiwań przez więzy 5. Osoba rozwiązująca problem 6. Niepewność informacji 7. Wielość celów Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Elementy definiujące zagadnienie Rozmiar przestrzeni poszukiwań (1) Rozważmy dwuwymiarowy model Isinga na sieci o krawędzi L (dopuszczalne wartości spinów {-1,1}, ilość spinów N=L2) Spróbujmy przejrzeć wszystkie możliwe konfiguracje i załóżmy, że analiza pojedynczej konfiguracji trwa 1ns. Krawędź Ilość spinów 4 16 65536 6.5e-5 6 36 6.87 e10 68.7 8 64 1.84 e19 1.8e10 (571) 10 100 1.27 e30 1.27e21 (4e13) Metody optymalizacji Ilość Czas obliczeń w konfiguracji sekundach (latach) Tomasz M. Gwizdałła 2012/13 Podstawy Elementy definiujące zagadnienie Rozmiar przestrzeni poszukiwań (1) Rozważmy dwuwymiarowy model Isinga na sieci o krawędzi L (dopuszczalne wartości spinów {-1,1}, ilość spinów N=L2) Spróbujmy przejrzeć wszystkie możliwe konfiguracje i załóżmy, że analiza pojedynczej konfiguracji trwa 1ns. Krawędź Ilość spinów 4 16 65536 6.5e-5 6 36 6.87 e10 68.7 8 64 1.84 e19 1.8e10 (571) 10 100 1.27 e30 1.27e21 (4e13) Metody optymalizacji Ilość Czas obliczeń w konfiguracji sekundach (latach) Tomasz M. Gwizdałła Tu przekroczyliśmy wiek Wszechświata (14 mld. lat ~4.4 e17 s) 2012/13 Podstawy Elementy definiujące zagadnienie Rozmiar przestrzeni poszukiwań (2) Rozważmy teraz graf (dla uproszczenia nieskierowany) obrazujący połączenia między N miastami i spróbujmy znaleźć w nim najkrótszy cykl Hamiltona - TSP. Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Elementy definiujące zagadnienie Rozmiar przestrzeni poszukiwań (3) Złożoność obliczeniowa dla zachłannego rozwiązania modelu Isinga. 1E+32 1E+30 1E+28 1E+26 1E+24 1E+22 1E+20 1E+18 1E+16 1E+14 1E+12 1E+10 1E+08 100000 0 10000 100 1 0 Metody optymalizacji 20 40 60 80 Tomasz M. Gwizdałła 100 120 2012/13 Podstawy Elementy definiujące zagadnienie Rozmiar przestrzeni poszukiwań (4) Złożoność obliczeniowa dla zachłannego rozwiązania modelu Isinga i problemu komiwojażera. 1E+160 1E+152 1E+144 1E+136 1E+128 1E+120 1E+112 1E+104 1E+96 1E+88 1E+80 1E+72 1E+64 1E+56 1E+48 1E+40 1E+32 1E+24 1E+16 1E+08 1 0 Metody optymalizacji 20 40 60 80 Tomasz M. Gwizdałła 100 120 2012/13 Podstawy Elementy definiujące zagadnienie Rozmiar przestrzeni poszukiwań (5) A może zmienna ciągła, np. f x =cos x cos 50 x 1.5 1 0.5 0 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -0.5 -1 -1.5 n f x =10 n∑i=1 x 2i −10 cos 2 x i Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Elementy definiujące zagadnienie Model Model jest fundamentalnym pojęciem związanym z teorią optymalizacji ponieważ zawiera matematyczny opis rozwiązywanego problemu. Model rozwiązania, nie jego reprezentacja. W sytuacjach, kiedy pełny opis problemu może zawierać elementy trudne do analizy, np. nieciągłości, zdarza się stosować opis przybliżony. Rozwiązanie najlepsze vs. rozwiązanie lepsze. model rozwiązanie Metody optymalizacji dokładny przybliżony dokładne ideał który przybliżone lepszy czasami musi wystarczyć Tomasz M. Gwizdałła 2012/13 Podstawy Elementy definiujące zagadnienie Problemy z funkcją oceny Funkcja oceny jest związana z modelem, jednak nawet w jego ramach mogą występować problemy z jej prawidłowym określeniem. Funkcja oceny może zmieniać się w czasie. Odzwierciedlenie pełnej, poprawnej i aktualnej wiedzy. Sprzężenie zwrotne (czyżby cybernetyka). Metody optymalizacji Tomasz M. Gwizdałła 2012/13 Podstawy Elementy definiujące zagadnienie Ograniczenia, czyli więzy Więzy wprowadzają problemy poprzez wprowadzenie znaczących ograniczeń na podprzestrzeń dopuszczalnych rozwiązań przestrzeni poszukiwań. Jak zapisać więzy matematycznie? W większości przypadków więzy czynią podprzestrzeń rozwiązań niewypukłą. Jak zaimplementować więzy w algorytmie: - kara - powrót do obszaru prawidłowego. Metody optymalizacji Tomasz M. Gwizdałła 2012/13