CMAES. Zapis algorytmu. Generacja populacji oraz selekcja Populacja q i (t) w kroku t generowana jest w następujący sposób:

Podobne dokumenty
WAE Jarosław Arabas Adaptacja i samoczynna adaptacja parametrów AE Algorytm CMA-ES

ALHE Jarosław Arabas Metaheurystyki w Rn Ewolucja różnicowa EDA CMAES Rój cząstek

Strategie ewolucyjne (ang. evolu4on strategies)

Metody Rozmyte i Algorytmy Ewolucyjne

Algorytmy ewolucyjne

Strategie ewolucyjne (ang. evolution strategies)

Ważne rozkłady i twierdzenia c.d.

KADD Minimalizacja funkcji

ALHE Z11 Jarosław Arabas wykład 11

Zmienne zależne i niezależne

Wykład 6 Centralne Twierdzenie Graniczne. Rozkłady wielowymiarowe

Analiza składowych głównych. Wprowadzenie

Idea. θ = θ 0, Hipoteza statystyczna Obszary krytyczne Błąd pierwszego i drugiego rodzaju p-wartość

10. Redukcja wymiaru - metoda PCA

Elementy statystyki wielowymiarowej

Prawdopodobieństwo i statystyka

Centralne twierdzenie graniczne

Statystyka i eksploracja danych

ROZWÓJ ALGORYTMU EWOLUCJI RÓŻNICOWEJ. Konrad Wypchło

7. Estymacja parametrów w modelu normalnym( ) Pojęcie losowej próby prostej

Elementy Modelowania Matematycznego Wykład 4 Regresja i dyskryminacja liniowa

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

Janusz Adamowski METODY OBLICZENIOWE FIZYKI Kwantowa wariacyjna metoda Monte Carlo. Problem własny dla stanu podstawowego układu N cząstek

ALHE. prof. Jarosław Arabas semestr 15Z

Wektory, układ współrzędnych

Estymacja parametrów w modelu normalnym

5 Błąd średniokwadratowy i obciążenie

Rozdział 1. Wektory losowe. 1.1 Wektor losowy i jego rozkład

Programowanie celowe #1

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

Komputerowa Analiza Danych Doświadczalnych

Strategie ewolucyjne. Gnypowicz Damian Staniszczak Łukasz Woźniak Marek

KADD Metoda najmniejszych kwadratów funkcje nieliniowe

Statystyka matematyczna dla leśników

Matematyka ubezpieczeń majątkowych r.

5. Rozwiązywanie układów równań liniowych

Algorytmy i struktury danych. Wykład 4

Statystyka i opracowanie danych Podstawy wnioskowania statystycznego. Prawo wielkich liczb. Centralne twierdzenie graniczne. Estymacja i estymatory

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

Algorytmy ewolucyjne - algorytmy genetyczne. I. Karcz-Dulęba

Statystyka. Wykład 5. Magdalena Alama-Bućko. 26 marca Magdalena Alama-Bućko Statystyka 26 marca / 40

Korzystanie z podstawowych rozkładów prawdopodobieństwa (tablice i arkusze kalkulacyjne)

STATYSTYKA MATEMATYCZNA

WAE Jarosław Arabas Ewolucja różnicowa Rój cząstek EDA

Oznacza to, że chcemy znaleźć minimum, a właściwie wartość najmniejszą funkcji

7. Identyfikacja defektów badanego obiektu

zadania z rachunku prawdopodobieństwa zapożyczone z egzaminów aktuarialnych

12DRAP - parametry rozkładów wielowymiarowych

Statystyka. Wykład 4. Magdalena Alama-Bućko. 13 marca Magdalena Alama-Bućko Statystyka 13 marca / 41

Maciej Piotr Jankowski

REGRESJA LINIOWA Z UOGÓLNIONĄ MACIERZĄ KOWARIANCJI SKŁADNIKA LOSOWEGO. Aleksander Nosarzewski Ekonometria bayesowska, prowadzący: dr Andrzej Torój

Co to jest wektor? Jest to obiekt posiadający: moduł (długość), kierunek wraz ze zwrotem.

0 + 0 = 0, = 1, = 1, = 0.

Rozdział 2: Metoda największej wiarygodności i nieliniowa metoda najmniejszych kwadratów

EDUWAŻKA - sposób na pokazanie dzieciom jak matematyka opisuje zjawiska i prawa przyrody. Edutronika Sp. z o.o.

Metody numeryczne. materiały do wykładu dla studentów

Stochastyczne Metody Analizy Danych. PROJEKT: Analiza kluczowych parametrów turbin wiatrowych

Stochastyczne równania różniczkowe, model Blacka-Scholesa

STATYSTYKA MATEMATYCZNA ZESTAW 0 (POWT. RACH. PRAWDOPODOBIEŃSTWA) ZADANIA

Podstawy działań na wektorach - dodawanie

2. Założenie niezależności zakłóceń modelu - autokorelacja składnika losowego - test Durbina - Watsona

Statystyka hydrologiczna i prawdopodobieństwo zjawisk hydrologicznych.

Spis treści. Konwencje zastosowane w książce...5. Dodawanie stylów do dokumentów HTML oraz XHTML...6. Struktura reguł...9. Pierwszeństwo stylów...

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA OPERATOR KRZYŻOWANIA ETAPY KRZYŻOWANIA

Wykład 3. Rozkład normalny

SIMR 2017/18, Statystyka, Przykładowe zadania do kolokwium - Rozwiązania

Komputerowa analiza danych doświadczalnych

Ważne rozkłady i twierdzenia

Program MC. Obliczyć radialną funkcję korelacji. Zrobić jej wykres. Odczytać z wykresu wartość radialnej funkcji korelacji w punkcie r=

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Analiza głównych składowych- redukcja wymiaru, wykł. 12

WSKAZÓWKI DO WYKONANIA SPRAWOZDANIA Z WYRÓWNAWCZYCH ZAJĘĆ LABORATORYJNYCH

Algorytmy estymacji stanu (filtry)

Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa. Diagnostyka i niezawodność robotów

3. Macierze i Układy Równań Liniowych

Rozkłady wielu zmiennych

PDF created with FinePrint pdffactory Pro trial version

Fuzja sygnałów i filtry bayesowskie

3. FUNKCJA LINIOWA. gdzie ; ół,.

Dobór parametrów algorytmu ewolucyjnego

L.Kowalski zadania z rachunku prawdopodobieństwa-zestaw 4 ZADANIA - ZESTAW 4

ANALIZA SPRZEDAŻY: - rozproszenia

Programowanie genetyczne, gra SNAKE

Analiza kanoniczna w pigułce

W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora.

NUMERYCZNE METODY ROZWIĄZYWANIA ROWNAŃ LINIOWYCH. PRZYGOTOWAŁA: ANNA BANAŚ KoMBo, WILiŚ

Rozpoznawanie obrazów

Metoda największej wiarygodności

STATYSTYKA MATEMATYCZNA

Value at Risk (VaR) Jerzy Mycielski WNE. Jerzy Mycielski (Institute) Value at Risk (VaR) / 16

Zadanie Cyfryzacja grida i analiza geometrii stropu pułapki w kontekście geologicznym

Redukcja wariancji w metodach Monte-Carlo

5. Analiza dyskryminacyjna: FLD, LDA, QDA

Kwantyle. Kwantyl rzędu p rozkładu prawdopodobieństwa to taka liczba x p. , że. Możemy go obliczyć z dystrybuanty: P(X x p.

WYKŁAD 6. Witold Bednorz, Paweł Wolff. Rachunek Prawdopodobieństwa, WNE, Uniwersytet Warszawski. 1 Instytut Matematyki

Wykład 3 Momenty zmiennych losowych.

STATYSTYKA - PRZYKŁADOWE ZADANIA EGZAMINACYJNE

Wykład 3 Momenty zmiennych losowych.

Pobieranie prób i rozkład z próby

Transkrypt:

CMAES Covariance Matrix Adaptation Evolution Strategy Opracowanie: Lidia Wojciechowska W algorytmie CMAES, podobnie jak w algorytmie EDA, adaptowany jest rozkład prawdopodobieństwa generacji punktów, opisany przez wartość oczekiwaną oraz macierz kowariancji, a także, dodatkowo, przez parametr długości kroku. Dwa najważniejsze mechanizmy wykorzystywane w tym algorytmie to: adaptacja macierzy kowariancji; adaptacja długości kroku. Zapis algorytmu C(1) = I, p c (1) = 0, p σ (1) = 0 while! stop generuj (t) N(0, C(t)), i = 1... λ oblicz q i (t) = q(m(t) + σ(t) (t)) sortuj według q i (t) Δ(t) = 1 (t) m(t + 1) = m(t) + σ(t) Δ(t) p σ (t + 1) = (1 c σ )p σ (t) + C 1 2 1 (1 c σ ) 2 Δ(t) p c (t + 1) = (1 c c )p c (t) + 1 (1 c c ) 2 Δ(t) σ(t + 1) = σ(t) exp ( c σ p σ ( d σ E N(0, I) 1)) C(t + 1) = (1 c 1 c )C(t) + c 1 p c (t + 1)p c (t + 1) T + c t t + 1 Generacja populacji oraz selekcja Populacja q i (t) w kroku t generowana jest w następujący sposób: 1. Generowane jest λ punktów (t) z rozkładu normalnego o zerowej wartości oczekiwanej i zadanej macierzy kowariancji C(t). 2. Faktyczna populacja q i (t) tworzona jest na podstawie punktów (t) poprzez pomnożenie ich przez współczynnik długości kroku σ(t) i przesunięcie o wartość oczekiwaną osobnika populacji m(t). Wyjaśnienie, czym dokładnie są te wielkości, podane jest w dalszej części niniejszego rozdziału. Z populacji wybierane jest najlepszych punktów w praktyce może to być np. połowa wygenerowanych wcześniej punktów. (t) (t) T

Adaptacja macierzy kowariancji (CMA) Dla wygody przyjmijmy, że długość kroku, czyli σ = 1. Przypomnijmy, że macierz kowariancji jest uogólnieniem wariancji na przypadek wielowymiarowy, czyli w praktyce charakteryzuje rozproszenie punktów populacji. Adaptacja macierzy kowariancji w algorytmie CMAES różni się od tejże adaptacji w algorytmie EDA tym, że od punktów nie odejmujemy nowej wartości średniej a starą wartość oczekiwaną: m(t). Można to zapisać w następujący sposób: C(t + 1) = 1 (P i(t) m(t))(p i (t) m(t)) T i Oznacza to, że podczas tworzenia nowej macierzy kowariancji od wyselekcjonowanych punktów populacji odejmujemy wartość oczekiwaną populacji przed selekcją. Zilustrowane jest to poniższym rysunkiem: Punkty niebieskie i czerwone to populacja bazowa, której rozkład przybliżony jest niebieską elipsą, i którego wartość oczekiwana znajduje się w punkcie oznaczonym niebieskim krzyżykiem. Punkty czerwone to wyselekcjonowana część populacji ich wartość oczekiwana to czerwony krzyżyk. Jako środek populacji, wykorzystany do stworzenia nowej macierzy kowariancji, wykorzystany jest punkt oznaczony krzyżykiem niebieskim. Powstały dzięki temu nowy rozkład przybliżony jest na poniższym rysunku czerwoną elipsą. Dzięki tej metodzie adaptacji macierzy kowariancji kształt elipsy opisującej rozkład będzie wyciągał się w stronę zwiększającej się wartości funkcji celu, układając się prostopadle do poziomic tej funkcji, zamiast, jak w przypadku algorytmu EDA, rozszerzać się równolegle do nich. Oznacza to, że na zboczach funkcji celu algorytm CMAES będzie zachowywał się bardzo dobrze, dążąc szybko w stronę optimum. Poniższy rysunek pokazuje, jak rozkład populacji adaptuje się w przypadku funkcji celu o wartościach rosnących w stronę prawego górnego rogu:

Kiedy populacja znajdzie się na szczycie, czyli w optimum funkcji celu, wartość oczekiwana wybranych punktów i wartość oczekiwana populacji bazowej (czerwony i niebieski krzyżyk) będą się w przybliżeniu pokrywały - rozkład będzie się więc zachowywał jak w przypadku algorytmu EDA, czyli zacznie się skracać i zmniejszać, pokrywając wciąż optimum. Wzór opisujący adaptację macierzy kowariancji na początku niniejszego rozdziału jest jednak nieco bardziej skomplikowany. Dlaczego? Po pierwsze, algorytm wykorzystuje do adaptacji macierzy kowariancji informacje o korelacji między kolejnymi krokami. Parametr p c to tzw. ścieżka ewolucji akumulacja kolejnych kroków wykonanych przez algorytm. Pierwszy składnik poniższego równania określa, z jaką wagą wykorzystamy dotychczasową ścieżkę ewolucyjną, a drugi to znormalizowany ostatni krok. p c (t + 1) = (1 c c )p c (t) + 1 (1 c c ) 2 Δ(t) Ścieżka ta, czyli informacja o korelacji między kolejnymi generacjami populacji, wykorzystana jest (z wagą c 1 ) w drugim składniku równania opisującego aktualizację macierzy kowariancji. Istotne jest to szczególnie w przypadku małych populacji. Ponadto algorytm skutecznie wykorzystuje informacje o wszystkich punktach z populacji jest to szczególnie ważne w przypadku dużych populacji. Odpowiedzialny za to jest (z wagą c ) trzeci składnik poniższego równania. Pierwszy składnik zaś jest uwzględnieniem z pewną wagą poprzedniej macierzy kowariancji. C(t + 1) = (1 c 1 c )C(t) + c 1 p c (t + 1)p c (t + 1) T + c (t) (t) T Adaptacja długości kroku (CSA) Krokiem będziemy nazywać różnicę między wartością oczekiwaną rozkładów dwóch kolejnych populacji (czyli w odniesieniu do powyższych rysunków - przesunięcie kolejnych elips). Innymi słowy wartość współczynnika długości kroku odpowiada za to, jak daleko punkt wygenerowany może odsunąć się od punktu środkowego. Przyjmijmy dla wygody, że macierz kowariancji jest jednostkowa. Kroki oznaczone są na poniższym rysunku strzałkami.

Pierwszy przypadek od lewej to sytuacja, w której długość kroku jest za duża strzałki o zamalowanych grotach krążą wokół pewnego punktu, ich kierunki znoszą się wzajemnie. Taka sytuacja może wystąpić na szczycie funkcji celu zbyt długi krok powoduje, że punkty trafiają za daleko od optimum, przestrzeliwują się na drugą stronę szczytu. Krok należy wtedy skrócić skrócony krok to na rysunku strzałka o niezamalowanym grocie. Przypadek po prawej stronie to sytuacja, w której kroki są za krótkie. Strzałki o niezamalowanych grotach wskazują w przybliżeniu podobny kierunek gdyby krok został wydłużony, ten sam rezultat można by osiągnąć wykonując mniejszą liczbę kroków - skróciłoby to czas działania algorytmu. Sytuacja, do której chcemy dążyć, pokazana jest na środkowym obrazku. Kroki są w przybliżeniu prostopadłe do siebie, nieskorelowane ze sobą. Adaptacja długości kroku to aktualizacja parametru σ. Aby zdecydować, czy krok ma być zmniejszony, zwiększony, czy pozostać niezmieniony, porównujemy długość wektora p σ z wartością oczekiwaną rozkładu normalnego standaryzowanego. Jeżeli wartości te będą równe, wtedy σ(t + 1) obliczona z poniższego wzoru będzie równa σ(t). σ(t + 1) = σ(t) exp ( c σ p σ ( d σ E N(0, I) 1)) Czym jest wektor p σ? Możemy nazwać go sprzężoną ścieżką ewolucji, tak jak w przypadku adaptacji macierzy kowariancji akumuluje on wektory przesunięcia punktu środkowego populacji. Jeżeli ruch będzie odbywał się wciąż w tę samą stronę, długość tego wektora będzie większa od E N(0, I), a jeżeli będą następowały fluktuacje na wzgórzu, będzie ona mniejsza. Dlatego też w pierwszym przypadku długość kroku zostanie zwiększona, a w drugim zmniejszona. Wektor p σ aktualizowany jest w następujący sposób: p σ (t + 1) = (1 c σ )p σ (t) + C 1 2 1 (1 c σ ) 2 Δ(t) c σ to parametr określający, jaką część informacji o poprzednim wektorze p σ (t) chcemy zachować. Drugi składnik równania jest znormalizowanym wektorem ostatniego przesunięcia. Całość algorytmu 1. Generacja i selekcja punktów jak opisano powyżej. 2. Obliczana jest nowa wartość średnia wybranych punktów, czyli rodziców: m(t + 1) wartość ta jest przesunięta względem starej wartości średniej w stronę lepszych punktów wybranych z populacji. 3. Aktualizowane są parametry p σ oraz p c. 4. Następuje aktualizacja długości kroku σ, jak opisano powyżej.

5. Aktualizowana jest macierz kowariancji, jak opisano powyżej. Warunek końca algorytmu zależny jest od specyfiki zadania. Na poniższym rysunku przedstawiony jest przykładowy przebieg algorytmu CMAES. Kształt macierzy kowariancji adaptuje się na podstawie selekcji punktów z populacji, a skala tej macierzy zależy od ścieżki ewolucji. Źródła 1. Prof. J. Arabas - Slajdy z wykładów ALHE. 2. Nikolaus Hansen - The CMA Evolution Strategy: A Tutorial 3. https://en.wikipedia.org/wiki/cma-es, dostęp: 22.01.2019.