Dobór parametrów algorytmu ewolucyjnego

Podobne dokumenty
Strategie ewolucyjne (ang. evolution strategies)

Algorytm genetyczny (genetic algorithm)-

Algorytmy ewolucyjne 1

Algorytm Genetyczny. zastosowanie do procesów rozmieszczenia stacji raportujących w sieciach komórkowych

Algorytmy genetyczne. Materiały do laboratorium PSI. Studia stacjonarne i niestacjonarne

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

Algorytmy genetyczne

Algorytmy genetyczne. Materiały do laboratorium PSI. Studia niestacjonarne

Problemy z ograniczeniami

Algorytmy ewolucyjne NAZEWNICTWO

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

Aproksymacja funkcji a regresja symboliczna

Teoria algorytmów ewolucyjnych

Równoważność algorytmów optymalizacji

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

Standardowy algorytm genetyczny

ALGORYTMY GENETYCZNE ćwiczenia

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

Wstęp do Sztucznej Inteligencji

Algorytmy genetyczne w optymalizacji

Algorytmy genetyczne. Dariusz Banasiak. Katedra Informatyki Technicznej Wydział Elektroniki

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

Generowanie i optymalizacja harmonogramu za pomoca

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

Metody Rozmyte i Algorytmy Ewolucyjne

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

Strefa pokrycia radiowego wokół stacji bazowych. Zasięg stacji bazowych Zazębianie się komórek

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

6. Klasyczny algorytm genetyczny. 1

Algorytmy genetyczne

LABORATORIUM 3: Wpływ operatorów krzyżowania na skuteczność poszukiwań AE

Algorytmy genetyczne. Paweł Cieśla. 8 stycznia 2009

Eksperymenty obliczeniowe z algorytmami ewolucyjnymi i porównania algorytmów.

Automatyczny dobór parametrów algorytmu genetycznego

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

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

Algorytmy ewolucyjne. Łukasz Przybyłek Studenckie Koło Naukowe BRAINS

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Podejście memetyczne do problemu DCVRP - wstępne wyniki. Adam Żychowski

LABORATORIUM 4: Algorytmy ewolucyjne cz. 2 wpływ operatorów krzyżowania i mutacji na skuteczność poszukiwań AE

LABORATORIUM 2: Wpływ wielkości populacji i liczby pokoleń na skuteczność poszukiwań AE. opracował: dr inż. Witold Beluch

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

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

przetworzonego sygnału

Obrona rozprawy doktorskiej Neuro-genetyczny system komputerowy do prognozowania zmiany indeksu giełdowego

Optymalizacja optymalizacji

Algorytmy ewolucji różnicowej (ang. differential evolution -DE) oraz roju cząstek (ang. particle swarm optimization -PSO)

Obliczenia ewolucyjne - plan wykładu

SZTUCZNA INTELIGENCJA

Fizyka w symulacji komputerowej i modelowaniu komputerowym Metody Monte Carlo Algorytmy Genetyczne. Łukasz Pepłowski

Algorytmy ewolucyjne `

Algorytm hybrydowy dla alokacji portfela inwestycyjnego przy ograniczonych zasobach

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Algorytmy genetyczne

Algorytmy ewolucyjne

Algorytmy ewolucyjne (3)

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA HISTORIA NA CZYM BAZUJĄ AG

Algorytmy genetyczne w interpolacji wielomianowej

Algorytmy genetyczne (AG)

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

Algorytmy genetyczne

Wyznaczanie optymalnej trasy problem komiwojażera

Algorytmy genetyczne jako metoda wyszukiwania wzorców. Seminarium Metod Inteligencji Obliczeniowej Warszawa 26 X 2005 mgr inż.

LABORATORIUM 5: Wpływ reprodukcji na skuteczność poszukiwań AE. opracował: dr inż. Witold Beluch

Algorytmy ewolucyjne. wprowadzenie

Testy De Jonga. Problemy. 1 Optymalizacja dyskretna i ciągła

BIOCYBERNETYKA ALGORYTMY GENETYCZNE I METODY EWOLUCYJNE. Adrian Horzyk. Akademia Górniczo-Hutnicza

Metody przeszukiwania

Programowanie genetyczne (ang. genetic programming)

ALHE Z11 Jarosław Arabas wykład 11

Algorytmy metaheurystyczne Wykład 6. Piotr Syga

Techniki optymalizacji

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

Algorytmy ewolucyjne Część II

METODY HEURYSTYCZNE wykład 3

Algorytmy ewolucyjne

Zadania laboratoryjne i projektowe - wersja β

ALGORYTMY EWOLUCYJNE. INTELIGENTNE TECHNIKI KOMPUTEROWE wykład 011. Napór selekcyjny (selektywny nacisk. Superosobniki: SELEKCJA

Optymalizacja. Wybrane algorytmy

ZASTOSOWANIE ALGORYTMU GENETYCZNEGO DO WYZNACZANIA OPTYMALNYCH DECYZJI STERUJĄCYCH

Tomasz Pawlak. Zastosowania Metod Inteligencji Obliczeniowej

Algorytmy genetyczne służą głównie do tego, żeby rozwiązywać zadania optymalizacji

Algorytmy genetyczne Michał Bereta Paweł Jarosz (część teoretyczna)

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin. 2009, Oeconomica 275 (57), 53 58

Wybrane podstawowe rodzaje algorytmów

Programowanie genetyczne, gra SNAKE

Anna Gryko-Nikitin Politechnika Białostocka, Wydział Zarządzania, Katedra Informatyki Gospodarczej i Logistyki

LICZEBNOŚĆ POPULACJI OBLICZENIA EWOLUCYJNE. wykład 3. Istotny parametr AG...

STATYSTYKA MATEMATYCZNA

Rój cząsteczek. Particle Swarm Optimization. Adam Grycner. 18 maja Instytut Informatyki Uniwersytetu Wrocławskiego

Inspiracje soft computing. Soft computing. Terminy genetyczne i ich odpowiedniki w algorytmach genetycznych. Elementarny algorytm genetyczny

Gospodarcze zastosowania algorytmów genetycznych

ALGORYTMY GENETYCZNE

Wykorzystanie metod ewolucyjnych w projektowaniu algorytmów kwantowych

6. Projektowanie składu chemicznego stali szybkotn cych o wymaganej twardo ci i odporno ci na p kanie

LABORATORIUM 7: Problem komiwojażera (TSP) cz. 2

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

Algorytm indukcji klasyfikatora za pomocą EA z automatycznym przełączaniem ukierunkowań

Transkrypt:

Dobór parametrów algorytmu ewolucyjnego 1

2 Wstęp Algorytm ewolucyjny posiada wiele parametrów. Przykładowo dla algorytmu genetycznego są to: prawdopodobieństwa stosowania operatorów mutacji i krzyżowania. operatory mutacji i krzyżowania. algorytm selekcji (i jego parametry, np. współczynnik skalowania, rozmiar turnieju) rozmiar populacji. Dobór parametrów algorytmu ma duży wpływ na jakość odnajdywanych rozwiązań. Wykazały to wczesne badania eksperymentalne mające za zadanie znalezienie parametrów optymalnych zestawów parametrów dla wszystkich problemów. Różni autorzy używali różnych problemów testowych i uzyskali różne wyniki.

Klassyfikacja metod doboru parameteów (Eiben i wsp., 2008) 3 przed uruchomieniem algorytmu Dobór parametrów w trakcie pracy algorytmu Dostrajanie parametrów Sterowanie parametrami Deterministyczne Adaptacyjne Samo-adaptacyjne

4 Dostrajanie parametrów (ang. parameter tuning). Polega na doborze parametrów przed uruchomieniem algorytmu ewolucyjnego. Następnie wykonywany jest przebieg algorytmu z ustalonymi wartościami parametrów, które pozostają stałe podczas pracy. Dobór parametrów na podstawie wskazówek z literatury (np. rozmiar populacji S 50, prawdopodobieństwo mutacji p m 1/L, gdzie L to długość chromosomu). Dobór parametrów na podstawie wyników eksperymentów dla problemów testowych. Parametry nie są od siebie niezależne, zatem musimy rozważać wszystkie możliwe kombinacje (albo zastosować algorytm optymalizacji globalnej do doboru parametrów). Przykład: jeżeli mamy cztery parametry, z których każdy może przyjmować pięć wartości, to potrzeba 5 4 =625 eksperymentów. Jeden eksperyment powinien obejmować min. 10 przebiegów algorytmu (w celu uśrednienia, algorytm ewolucyjny jest algorytmem probabilistycznym). Potrzebujemy zatem 6250 przebiegów algorytmu.

5 Wady dostrajania parametrów Wymaga zaangażowania znacznych mocy obliczeniowych, nawet gdy ignorujemy interakcje pomiędzy parametrami optymalizując je jeden po drugim. Optymalne wartości parametrów, dobrane dla jednego problemu, mogą się nie sprawdzić dla innego problemu. Optymalne wartości parametrów nie są stałe w trakcie przebiegu algorytmu.

6 Sterowanie parametrami (parameter control) Parametry zmieniają się w trakcie pracy algorytmu. Deterministyczne: według predefiniowanej funkcji numeru iteracji t. Adaptacyjne: z użyciem reguł sprzężenia zwrotnego z procesu poszukiwań. Samo-adaptacyjne: poprzez zakodowanie wartości parametru na chromosomie, parametr podlega ewolucji (mutacja, selekcja) wraz z osobnikiem. Problemy: Dobranie optymalnej wartości parametru p jest trudne. Dobór optymalnej wartości p(t) jest jeszcze trudniejszy.

7 Przykład Algorytm ewolucyjny znajduje minimum funkcji f(x 1,x 2,...,x L ). L i x i U i. Algorytm ewolucyjny z reprezentacją zmiennopozycyjną. krzyżowanie arytmetyczne. mutacja x i ' =x i + N (0,σ ) N(0,σ) jest liczbą losową z rozkładu normalnego o wartości oczekiwanej 0 i odchyleniu standardowym σ. σ jest krokiem mutacji, podlegającym sterowaniu

8 Sterowanie deterministyczne Zakładamy, że duży krok mutacji jest pożądany we wczesnych fazach pracy algorytmu (poszukiwanie minimów lokalnych) natomiast niewielki krok mutacji jest korzystny w późnych fazach pracy algorytmu (lokalizacja rozwiązania wewnątrz obszaru przyciągania minimum). σ zmienia się zgodnie ze wzorem: gdzie σ(t) jest wartością kroku mutacji w iteracji t. T jest całkowitą liczbą iteracji. σ(0)=1, σ(t)=0.1. Cechy rozwiązania: σ (t)=1 0.9 t T Zmiany parametru σ są niezależne od postępu ewolucji. Użytkownik ma pełną kontrolę nad parametrem σ. Wartość σ jest w pełni przewidywalna. Jedna wartość σ dla wszystkich osobników w populacji.

Sterowanie adaptacyjne Wartość σ(t) jest uaktualniana co n iteracji algorytmu zgodnie z równaniem (reguła 1/5 sukcesów). 1 (t n)/c jeżeli ps> 5 σ (t)={σ σ (t n) c jeżeli p s < 1 5 σ (t n) jeżeli p s = 1 5 gdzie c jest stałą > 1, p s jest prawdopodobieństwem sukcesu mutacji w ciągu ostatnich n iteracji. (Mutacja kończy się sukcesem, jeżeli zmutowany osobnik ma lepsze dopasowanie). Własności: zmiany kroku mutacji σ oparte są na sprzężeniu zwrotnym z procesu ewolucji. σ jest nieprzewidywalne. jedna wartość σ dla wszystkich osobników. Możliwość kontroli użytkownika (zmiana stałych n i c). 9

10 Sterowanie samoadaptacyjne Każdy osobnik ma swój własny krok mutacji σ. Jest on włączony do chromosomu, który przyjmuje postać: (x 1, x 2,, x L,σ ) Mutacja takiego chromosomu daje w wyniku chromosom (x 1 ', x 2 ',, x L ', σ ' ) gdzie: σ ' =σ e N (0,τ) x i ' =x i + N (0,σ ' ) Krok mutacji podlega selekcji (i wartości kroku mutacji prowadzące do kiepskich osobników nie przetrwają). Własności: Brak kontroli użytkownika nad σ. Trudno przewidzieć jak się zmieni σ. σ definiowane indywidualnie dla osobnika, nie dla populacji.

11 Co może podlegać sterowaniu? Praktycznie każdy komponent algorytmu ewolucyjnego może być sparametryzowany i podlegać zmianom podczas procesu ewolucji: Reprezentacja Funkcja dopasowania (i funkcja kary). Operatory krzyżowania i mutacji i ich parametry. Selekcja rodziców i sukcesja. Populacja (rozmiar). Zakres działania parametru może być różny. Osobnik (np. krok mutacji) Gen (również krok mutacji, indywidualny dla każdego genu). Populacja (np. rozmiar populacji). Środowisko (np. funkcja dopasowanie i kary).

12 Sposób wprowadzania zmian (sterowanie adaptacyjne i samo adaptacyjne) Na podstawie danych bezwzględnych. Wartość parametru jest zmieniana przez regułę, która odpala gdy pewne predefiniowane zdarzenie ma miejsce. Zwiększ prawdopodobieństwo mutacji gdy różnorodność w populacji spadnie poniżej pewnego progu. Użytkownik musi wiedzieć jak sterować danym parametrem (np. duże prawdopodobieństwo mutacji może być pomocne, gdy różnorodność w populacji jest bardzo niska). Na podstawie danych bezwzględnych. Wartości parametrów są określane na podstawie dopasowania osobników powstałych w wyniku ich zastosowania. Algorytm ewolucyjny wykorzystuje kilka operatorów krzyżowania, probabilistycznie wybierając jeden operator dla każdej pary osobników. Monitoruj jakość rozwiązań otrzymywabnych przez operatory i nagradzaj najlepszych (zwiększając ich prawdopodobieństwa). Zakoduje prawdopodobieństwa operatorów krzyżowania na chromosomie i poddaj je ewolucji.

13 Literatura A. E. Eiben, J. Smith, Introduction to Evolutionary Computing, Springer, 2003, rozdział 8 poświęcony sterowaniu parametrami. A. E. Eiben, R. Hinterding, Z. Michalewicz, Parameter Control In Evolutionary Algorithms, IEEE Transactions On Evolutionary Computation, 3(3), 1999, s. 121-141. J. E. Smith, T. C. Fogarty, Operator and parameter adaptation in genetic algorithms, Soft Computing, 1(2), 1997, s. 81-87.