METODY OPTYMALIZACJI Tomasz M. Gwizdałła 2018/19
Informacje wstępne Tomasz Gwizdałła Katedra Fizyki Ciała Stałego UŁ Pomorska 149/153, p.524b tel. 6355709 tomgwizd@uni.lodz.pl http://www.wfis.uni.lodz.pl/staff/tgwizdalla
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
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
Pojęcie Co to jest optymalizacja? Istnieje wiele zagadnień opisywanych terminem optymalizacja: optymalizacja matematyczna (formuła) optymalizacja oprogramowania optymalizacja stron optymalizacja systemu optymalizacja wydajności optymalizacja ekonomiczna (efektywność kodu) (wyszukiwanie, pozycjonowanie) (efektywność sprzętu) (zarządzanie zasobami) (P/E) programowanie liniowe
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.
Sformułowanie Dana jest funkcja f: A R Szukamy takiej wartości x 0 A 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,że A - przestrzeń poszukiwań lub przestrzeń konfiguracyjna zwykle jest to podzbiór przestrzeni R n 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.
Sformułowanie Pierwsze zagadnienie optymalizacyjne
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?
Sformułowanie Pierwsze sformułowane formalnie zagadnienie optymalizacyjne
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 t = p2 ds p1 v = ds = v = 2gy 1 + ( dx dy ) 2 dx = p2 1 + y 2 2gy dx p1
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 t = p2 ds p1 v = ds = v = 2gy 1 + ( dx dy ) 2 dx = p2 1 + y 2 2gy dx p1 x = 1 2 k2 (θ sinθ) x = 1 2 k2 (1 cosθ) parametryczne równanie cykloidy Ale, czy zagadnieniem optymalizacyjnym nie jest zasada Fermata (1662)
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
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=L 2 ) Spróbujmy przejrzeć wszystkie możliwe konfiguracje i załóżmy, że analiza pojedynczej konfiguracji trwa 1ns.
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=L 2 ) Spróbujmy przejrzeć wszystkie możliwe konfiguracje i załóżmy, że analiza pojedynczej konfiguracji trwa 1ns. Tu przekroczyliśmy wiek Wszechświata (14 mld. lat ~4.4 e17 s)
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.
Elementy definiujące zagadnienie Rozmiar przestrzeni poszukiwań (3) Złożoność obliczeniowa dla zachłannego rozwiązania modelu Isinga.
Elementy definiujące zagadnienie Rozmiar przestrzeni poszukiwań (4) Złożoność obliczeniowa dla zachłannego rozwiązania modelu Isinga i problemu komiwojażera.
Elementy definiujące zagadnienie Rozmiar przestrzeni poszukiwań (5) A może zmienna ciągła, np. f(x) = cos(x)cos(50x) f(x) = 10n + n i=1 (x i 2 10cos(2πx i ))
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.
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).
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.