Algorytmy ewolucyjne Dr inż. Michał Bereta p. 144 / 10, Instytut Modelowania Komputerowego mbereta@pk.edu.pl beretam@torus.uck.pk.edu.pl www.michalbereta.pl
Problemy świata rzeczywistego często wymagają rozważenia wielu kryteriów oceny postępowania/rozwiązania. Przykłady: Kupno samochodu (cena vs jakośd) Planowanie produkcji (koszty vs czas vs jakośd)
Zakup samochodu Cena Koszt zakupu Kredytowanie Częstotliwośd rat Oprocentowanie Koszty eksploatacji Koszty paliwa Koszt części zamiennych Serwisowanie Spadek wartości samochodu po roku Opodatkowanie VAT Podatek od luksusu
Jak porównywad różne cele, jeśli są one nieporównywalne? Np. Koszt (jednostka: waluta) oraz jakośd ( jednostki:???)
Konkretne rozwiązanie x dominuje na pewnym obszarze przestrzeni poszukiwao, to znaczy, dowolne rozwiązanie z z tego obszaru jest gorsze od x, jeśli chodzi o wszystkie cele. Rozwiązanie z nie może byd uznane za optymalne w żadnym rozsądnym sensie. Jeśli dla rozwiązania x nie ma żadnego innego rozwiązania, które jest lepsze od x względem wszystkich celów, to rozwiązanie x jest w pewnym sensie optymalne
Problem optymalizacji wielokryterialnej Minimalizuj f i (x), i = 1,, m przy zakresach l(p) x p u(p), p = 1,, n przy ograniczeniach g k (x) 0, k = 1,, l h j (x)= 0, j = 1,, q Problemy maksymalizacji są analogiczne i można je sprowadzid do powyższego sformułowania.
Uwaga! Przestrzeo decyzyjna jest n-wymiarowa. Przestrzeo celów jest m-wymiarowa.
Zestaw potencjalnych rozwiązao problemu optymalizacji wielokryterialnej może byd podzielony na rozwiązania zdominowane niezdominowane
Rozwiązanie zdominowane Rozwiązanie z jest zdominowane, jeśli istnieje dopuszczalne rozwiązanie x, które jest: co najmniej tak dobre jak z ze względu na wszystkie wymiary, tzn. dla każdego celu f i (i=1,,m) f i (x) f i (z) dla wszystkich 1 i m ściśle lepsze od z co najmniej ze względu na jeden cel i f i (x) < f i (z) dla pewnego 1 i m
Rozwiązanie niezdominowane Każde rozwiązanie, które nie jest zdominowane przez żadne inne rozwiązanie dopuszczalne, nazywamy rozwiązanie niezdominowanym.
Koszt Rozwiązanie x dominuje na rozwiązanie z. z x Czas
Koszt Obszar dominowania rozwiązania x. z x Czas
Koszt Rozwiązanie x nie dominuje nad rozwiązaniem y x jest lepsze pod względem czasu, ale y jest lepsze pod względem kosztów. Również y nie dominuje nad x. z x y Czas
Zbiór optymalny w sensie Pareto Zbiór niezdominowanych rozwiązao z całej dopuszczalnej przestrzeni poszukiwao nazywamy zbiorem optymalnym w sensie Pareto (rozwiązania tworzą tzw. front Pareto). Rozwiązania z tego zbioru nie są zdominowane przez żadne inne więc w tym sensie są one optymalnymi rozwiązaniami dla problemu optymalizacji wielokryterialnej. Ostatecznie jednak zazwyczaj musimy zdecydowad się na tylko jedno rozwiązanie. Vilfred Pareto (1848-1923) włoski ekonomista
Zbiór optymalny w sensie Pareto musi byd zbiorem niezdominowanym. Odwrotne twierdzenie nie musi byd prawdą. Zbiór niezdominowany może zawierad rozwiązania optymalne w sensie Pareto jak również pewne rozwiązania spoza tego frontu Pareto.
Koszt Front Pareto jest to zbiór rozwiązao niezdominowanych. Czas
Koszt Rozwiązania x oraz y tworzą zbiór rozwiązao niezdominowanych, ale nie tworzą frontu Pareto, a nawet do niego nie należą. y x Czas
Zadanie dowolnego algorytmu znajdującego zbiór optymalny w sensie Pareto polega na daniu w wyniku zbioru niezdominowanych rozwiązao, który przybliża zbiór optymalny w sensie Pareto tak, jak to tylko możliwe.
Dwa główne podejścia do rozwiązywania problemów wielokryterialnych Redukowanie do problemów z jednym kryterium Można stosowad znane algorytmy optymalizacji z jednym kryterium Dostajemy przeważnie jedno rozwiązanie Uwzględnianie wielu kryteriów w czasie trwania algorytmu
Redukowanie do problemów z jednym kryterium. Metoda sumy ważonej. Funkcje określające kryteria łączone są w jedną funkcję celu zgodnie ze wzorem: gdzie F( x) w [0,1] oraz 1 i i m 1 i m w 1 i f i w i ( x)
Redukowanie do problemów z jednym kryterium. Metoda sumy ważonej. Zalety Prostota Jeśli wagi są dodatnie, wtedy optymalne rozwiązanie dopuszczalne dla F jest również optymalne w sensie Pareto Jeśli x jest rozwiązaniem optymalnym w sensie Pareto, dla wypukłego problemu optymalizacji wielokryterialnej, to istnieje niezerowy dodatni wektor wag w taki, że x jest rozwiązaniem F. Wady - Dobór wag jest zazwyczaj subiektywny
Koszt A Niektóre z rozwiązao optymalnych w sensie Pareto (zielone) są schowane w niewypukłej przestrzeni celów i nie mogą byd wygenerowane jako liniowe sumy ważone. B Czas
Redukowanie do problemów z jednym kryterium. Metoda funkcji odległości Łączy wiele funkcji oceny w jedną na podstawie wektora poziomu popytu y. Rozwiązanie optymalne jest rozwiązaniem minimalizującym odległośd między F(x) a y. r m i r i y i x f x F 1 1 ) ( ) ( r m i r i i i y x f w x F 1 1 ) ( ) ( czasami
Redukowanie do problemów z jednym kryterium. Metoda funkcji odległości Jeśli r jest bardzo duże, wtedy problem przekształca się w problem minimalizacji największego odchylenia f i (x) - y i i jest nazywany problemem Czebyszewa z wagami.
Redukowanie do problemów z jednym kryterium. Metoda ε-ograniczeo. Pomysł polega na zachowaniu jedynie jednego kryterium (najważniejszego?), np. r, i na przekształceniu reszty celów w graniczenia: f i (x) ε i dla 1 i m oraz i r Parametry ε i reprezentują górne ograniczenia wartości f i. Zalety: Można stosowad problemy zarówno z wypukłymi jak i wklęsłymi przestrzeniami. Dla dowolnego wektora górnych ograniczeo rozwiązanie w tej metodzie jest optymalne w sensie Pareto Wada: Złożonośd określenia wartości górnych ograniczeo
Redukowanie do problemów z jednym kryterium. Metody te są często zbyt uproszczone i niezbyt pasują do rzeczywistych problemów. Noszą znamiona dostosowywania (tj. upraszczania) problemu do znanego nam algorytmu (np. optymalizacji z jednym kryterium)
Podejście ewolucyjne do wielokryterialnego podejmowania decyzji Rozwiązują problem znajdowania kolekcji rozwiązao przybliżających front Pareto. Problem wyboru jednego, konkretnego rozwiązania jest odłożony na później.
Podejście ewolucyjne do wielokryterialnego podejmowania decyzji Problem Algorytm ewolucyjny powinien rozłożyd rozwiązania wzdłuż granicy Pareto, a nie szukad jednego, najlepszego rozwiązania Wniosek Należy wygenerowad zbiór rozwiązao niezdominowanych jak najbliżej rzeczywistego frontu Pareto, dbając jednocześnie o różnorodnośd populacji
A B Mała różnorodnośd (źle) Duża różnorodnośd (dobrze) Uwaga: Zbiór rozwiązao na rys. B jest różnorodny ale tylko w przestrzeni celów nie implikuje to różnorodności w przestrzeni zmiennych decyzyjnych, ani z niej nie wynika.
Podejście ewolucyjne Przykład Zminimalizuj f i (x), i = 1, 2 przy - A x A f f 1 x) ( x 2 2 2 ( x) ( x 2)
Podejście ewolucyjne Problem ten ma rozwiązanie optymalne w sensie Pareto dla x z przedziału [0, 2].
Podejście ewolucyjne Problem ten ma rozwiązanie optymalne w sensie Pareto dla x z przedziału [0, 2].
Podejście ewolucyjne Problem ten ma rozwiązanie optymalne w sensie Pareto dla x z przedziału [0, 2].
Podejście ewolucyjne Problem ten ma rozwiązanie optymalne w sensie Pareto dla x z przedziału [0, 2]. f 2 2 f2 ( f1 2) f 1
Podejście ewolucyjne Problem ten ma rozwiązanie optymalne w sensie Pareto dla x z przedziału [0, 2]. f 2 2 f2 ( f1 2) f 1
Podejście ewolucyjne Problem ten ma rozwiązanie optymalne w sensie Pareto dla x z przedziału [0, 2]. f 2 2 f2 ( f1 2) f 1
Podejście ewolucyjne Problem ten ma rozwiązanie optymalne w sensie Pareto dla x z przedziału [0, 2]. f 2 2 f2 ( f1 2) f 1
Podejście ewolucyjne Dwie klasy algorytmów Algorytmy mogące byd zastosowane w przypadku, w którym problem wielokryterialny jest przekształcany w sformułowanie z jednym kryterium Algorytmy z uwzględnieniem optymalności w sensie Pareto, bez stosowania żadnej formy łączenia ocen wynikających z różnych celów
Podejście ewolucyjne bez metody Pareto Algorytm podczas selekcji przełącza się między różnymi celami na podstawie metodą Pareto (tzw. selekcja Pareto) Osobnikom w populacji jest przypisywana waga na podstawie ich dominacji na innymi rozwiązaniami oraz ze względu na optymalnośd w sensie Pareto
Podejście ewolucyjne VEGA ang. Vector Evaluated Genetic Algorithm Dla problemu z m celami w każdym pokoleniu wybiera się 1/m rodziców na podstawie każdego z kryteriów osobno. Zapewnia to przeżywanie: Osobników dobrych ze względu na jedno kryterium (tzw. specjalistów) Osobników średnich ze względu na wszystkie kryteria (gdyż mają wiele szans zostania wybranym)
Podejście ewolucyjne VEGA ang. Vector Evaluated Genetic Algorithm Problem: VEGA ma problemy związane z tworzeniem gatunków, tzn. osobników doskonałych ze względu na różne kryteria Można temu zapobiegad, np. za pomocą krzyżowania nie losowego, lecz raczej osobników z różnych gatunków
Algorytm Fourmana Podejście ewolucyjne Podczas selekcji jest wybierane w sposób losowy jedno kryterium
Podejście ewolucyjne Algorytm Goldberga Ocenia rozwiązania na podstawie dominacji, a nie bezpośrednich wartości optymalizowanych celów Metoda działa iteracyjnie Najpierw wybierz w populacji wszystkie rozwiązania niezdominowane. Przypisz im ten sam wynik i usuo z dalszych rozważao. Określ, które z pozostałych rozwiązao są niezdominowane. Przypisz im ten sam wynik, ale gorszy niż poprzednia usuniętym rozwiązaniom. Usuo te rozwiązania z dalszych rozważao. Itd. Różnorodnośd rozwiązao jest zachowywana przez zastosowanie metody współdzielenia wartości (ang. fitness sharing) (w przestrzeni celów)
Podejście ewolucyjne NSGA (ang. Nondominated sorting Genetic Algorithm) W populacji jest określany ranking osobników ze względu na brak dominacji Osobnikom najlepszym (niezdominowanym) przypisywane jest przystosowanie równe liczbie osobników w populacji Do utrzymania różnorodności wykorzystywane jest współdzielenie wartości (ang. fitness sharing) w obrębie tej samej linii granicznej w przestrzeni celów ale obliczana jest w przestrzeni zmiennych decyzyjnych
Podejście ewolucyjne NPGA (ang. Niched Pareto Genetic Algorithm) Wykorzystuje binarną selekcję turniejową opartąna dominacji Pareto Dwaj losowo wybrani rodzice są porównywani z wybraną podpopulacją o rozmiarze s, tzn. każdy z dwóch rodziców jest porównywany z każdym z s rozwiązao z tej podpopulacji Liczy się liczba zdominowanych osobników z wylosowanej podpopulacji W razie remisu decyduje licznośd niszy: rodzic o mniejszej liczności niszy wygrywa, tzn. preferowani są rodzice z mniej zatłoczonych obszarów
Podejście ewolucyjne MOGA (ang. Multiobjective Genetic Algorithm) Każdy osobnik x jest oceniany na 1+liczba osobników, które dominują nad x Ocenę 1 mają osobniki niezdominowane Maksymalna wartośd oceny jest równa rozmiarowi populacji Oceny powyższe są podstawą do promowania osobników mniej zdominowanych Niszowanie jest wykorzystywane w celu utrzymania różnorodności
Podejście ewolucyjne Zastosowanie selekcji elitarnej Może ona polegad na gwarancji przeżycia osobników niezdominowanych Może to prowadzid do przedwczesnej zbieżności już po paru iteracjach wszystkie osobniki w populacji mogą byd niezdominowane (więc wszystkie kwalifikują się jako elita) jednak niekoniecznie muszą byd blisko rzeczywistego frontu Pareto.
Podejście ewolucyjne Lista nieobecności Sztuczne systemy immunologiczne Algorytmy rojowe Inne
KONIEC