Leszek Siwik
description
Transcript of Leszek Siwik
Leszek Siwik
Optymalizacja wielokryterialna
Podstawowe pojęciaOptymalizacja wielokryterialnapróba znalezienia wektora zmiennych decyzyjnych:
x = [x1,x2,...,xk],
który spełnia określone warunki:
gi(x) 0 (i = 1... m),
hi(x) = 0 (i = 1 ... p)
oraz optymalizuje wektor funkcyjny, którego elementy
reprezentują funkcje celu: f(x) = (f1(x),f2(x),...,fk(x))
Podstawowe pojęciaOptymalizacja wielokryterialna
Podstawowe pojęciaFunkcje celu reprezentują matematyczny opis danego
kryterium oraz najczęściej pozostają w konflikcie miedzy sobą. (przykład ceny i mocy obliczeniowej).
Optymalizacja polega na znalezieniu takiego rozwiązania,
które byłoby akceptowalne dla każdej funkcji celu. Jest pierwszym krokiem w stronę znalezienia rozwiązania. Oczywiście rozwiązanie byłoby idealne, gdyby było rozwiązaniem najlepszym z punktu widzenia, każdej funkcji celu. Możliwe rozwiązania zadania optymalizacyjnego klasyfikuje się jako zdominowane i niezdominowane (paretooptymalne – ang. Parento optimal).
Podstawowe pojęciaDla zadania maksymalizacji zestawu k funkcji celu:
f(x)=(f1(x),f2(x),...,fk(x));
Rozwiązanie x jest zdominowane, jeśli istnieje dopuszczalne rozwiązanie y nie gorsze od x, tzn. dla każdej funkcji celu f i:
fi(x) fi (y); (i=1,... k);
W przeciwnym wypadku x jest rozwiązaniem
niezdominowanym
Podstawowe pojęciaDla zadania minimalizacji zestawu k funkcji celu
f(x)=(f1(x),f2(x),...,fk(x))
rozwiązanie x jest zdominowane, jeśli istnieje dopuszczalne
rozwiązanie y nie gorsze od x, tzn. dla każdej funkcji celu fi:
fi(y) fi (x) (i=1,... k)
W przeciwnym wypadku x jest rozwiązaniem
niezdominowanym
Wybrane metodyMetoda ważonych celów:
gdzie:k – ilość funkcji;x – wektor rozwiązań;wi – wagi takie, że:
oraz
k
iii xfwxF
1
)()(
]1,0[iw
k
iiw
1
1
Wybrane metodyMetoda VEGA
Użyte oznaczenia:t – numer pokoleniaPt – populacja w t-tym pokoleniuP ′ – populacja tymczasowa k – ilość kryteriów
Algorytm
Parametry wejściowe: N – rozmiar populacjiT – maksymalna ilość pokoleńpc – prawdopodobieństwo krzyżowania pm –prawdopodobieństwo mutacji
Wynik: A – zbiór rozwiązań niezdominowanych
Wybrane metodyKrok 1: Inicjalizacja (wygenerowanie populacji początkowej)Niech P0 = Ø oraz t = 0. Dla i=1, ..., N wykonaj:Wylosuj osobnika i.Dodaj osobnika i do zbioru P0.
Krok 2: Wyznaczenie dopasowania i selekcja: Pt ′= Ø. Dla i = 1, ..., k wykonaj:Dla każdego osobnika oblicz jego dopasowanie w oparciu o funkcję celu fiDla j=1, ..., N/k wybierz osobnika i z Pt i dodaj go do P ′.
Krok 3: Rekombinacja: Niech P ′′= Ø. Dla i=1, ..., N/2 wykonajWybierz dwa osobniki ′ i usuń je z P ′.Skrzyżuj osobniki: i j; wynik: osobniki k i l.Dodaj k, l do P ′′ z prawdopodobieństwem pc (w przeciwnym wypadku do
P ′′ dodaj osobniki i, j).
Wybrane metodyKrok 4: Mutacja: Niech P′′′ = Ø Dla każdego osobnika wykonaj:Zmutuj osobnika i z prawdopodobieństwem pm. Wynik: osobnik j.Dodaj osobnika j do zbioru P ′′′.
Krok 5: Zakończenie: Niech Pt+1 = P ′′′ i t=t+1. Jeżeli t ≥T to zakończ(Wynik: A = rozwiązanie niezdominowane z populacji Pt), w przeciwnym
wypadku powrót do roku 2.
Wybrane metodyMetoda SPEA
Użyte oznaczenia:t – numer pokoleniaPt – populacja w t-tym pokoleniuPt – zbiór zewnętrzny P′ – tymczasowy zbiór zewnętrzny P ′ – populacja tymczasowa
Algorytm
Parametry wejściowe: N – rozmiar populacjiNm – maksymalny rozmiar zbioru
zewnętrznego T – maksymalna ilość pokoleń pc – prawdopodobieństwo krzyżowania pm – prawdopodobieństwo mutacji
Wynik: A – zbiór rozwiązań niezdominowanych
Wybrane metodyKrok 1: Inicjalizacja:
Wygeneruj populację początkową P0 (patrz krok pierwszy algorytmu VEGA) oraz pusty zbiór zewnętrzny P0 = Ø. Niech t = 0.
Krok 2: Uzupełnienie zbioru zewnętrznego.
Niech P′ = Pt.Skopiuj do P′ osobniki z populacji Pt, niezdominowane przez inne osobniki z populacji Pt. Usuń z P′ osobniki zdominowane przez inne osobniki z P′. Zredukuj liczność zbioru P′ do N przez clustering; wynik: Pt+1.
Krok 3: Wyznaczenie dopasowania:Oblicz wartość dopasowania F osobników w Pt i Pt przy użyciu algorytmu opisanego dalej.
Wybrane metodyKrok 4: Selekcja:
Niech P ′= Ø. Dla i=1, ..., k wykonaj:Wybierz losowo dwa osobniki Pt .Jeżeli F(i)<F(j) to P ′= P ′ +{i}, w przeciwnym wypadku P ′= P ′ +{j}(wartość przystosowania jest tu minimalizowana).
Krok 5: Rekombinacja: patrz krok 3 algorytmu VEGA (wynik: P ′′).
Krok 6: Mutacja: patrz krok 4 algorytmu VEGA (wynik: P ′′′).
Krok 7: Zakończenie: Niech Pt+1 = P ′′′ i t = t+1. Jeżeli t ≥ T to zakończ (Wynik: A = rozwiązanie niezdominowane z populacji Pt), w przeciwnym wypadku powrót do kroku 2.