Algorytmy ewolucyjne 1

Podobne dokumenty
Problemy z ograniczeniami

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

Algorytmy ewolucyjne NAZEWNICTWO

Algorytm genetyczny (genetic algorithm)-

Obliczenia ewolucyjne - plan wykładu

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

Dobór parametrów algorytmu ewolucyjnego

Algorytmy genetyczne

Algorytmy genetyczne

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

Algorytmy ewolucyjne

Metody przeszukiwania

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

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

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

Algorytmy genetyczne (AG)

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

Techniki optymalizacji

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

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Algorytmy genetyczne w optymalizacji

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

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

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

Aproksymacja funkcji a regresja symboliczna

Optymalizacja. Wybrane algorytmy

ALGORYTMY GENETYCZNE ćwiczenia

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

KARTA MODUŁU KSZTAŁCENIA

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

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

Teoria algorytmów ewolucyjnych

6. Klasyczny algorytm genetyczny. 1

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

Strategie ewolucyjne (ang. evolution strategies)

Metody Rozmyte i Algorytmy Ewolucyjne

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

Równoważność algorytmów optymalizacji

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

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

Generowanie i optymalizacja harmonogramu za pomoca

Wstęp do Sztucznej Inteligencji

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

Algorytmy metaheurystyczne podsumowanie

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

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

Standardowy algorytm genetyczny

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

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

Programowanie genetyczne, gra SNAKE

SZTUCZNA INTELIGENCJA

Zadania laboratoryjne i projektowe - wersja β

SZTUCZNA INTELIGENCJA

Algorytmy genetyczne

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

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

Obliczenia Naturalne - Algorytmy genetyczne

Strategie ewolucyjne (ang. evolu4on strategies)

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

ALHE Z11 Jarosław Arabas wykład 11

Metody Rozmyte i Algorytmy Ewolucyjne

Plan. Zakres badań teorii optymalizacji. Teoria optymalizacji. Teoria optymalizacji a badania operacyjne. Badania operacyjne i teoria optymalizacji

Gospodarcze zastosowania algorytmów genetycznych

Algorytmy ewolucyjne Część II

Tomasz Pawlak. Zastosowania Metod Inteligencji Obliczeniowej

Algorytmy ewolucyjne. wprowadzenie

Zaawansowane programowanie

SZTUCZNA INTELIGENCJA

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA ZADANIE KOMIWOJAŻERA METODY ROZWIĄZYWANIA. Specyfika zadania komiwojażera Reprezentacje Operatory

Problem Komiwojażera - algorytmy metaheurystyczne

Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

Techniki optymalizacji

Algorytm hybrydowy dla alokacji portfela inwestycyjnego przy ograniczonych zasobach

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

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

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

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

KARTA PRZEDMIOTU. Algorytmy i struktury danych, C4

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

PRZEWODNIK PO PRZEDMIOCIE

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

Algorytmy stochastyczne laboratorium 03

Politechnika Wrocławska Wydział Elektroniki INFORMATYKA SYSTEMÓW AUTONOMICZNYCH. Heurystyka, co to jest, potencjalne zastosowania

Ekologia wyk. 1. wiedza z zakresu zarówno matematyki, biologii, fizyki, chemii, rozumienia modeli matematycznych

Algorytmy ewolucyjne `

Algorytmy genetyczne

Ewolucja Ró»nicowa - Wprowadzenie

PROGRAM SPOTKAŃ AKADEMICKICH INFORMATYKA. umożliwienie uczniowi kontaktu ze środowiskiem pracowników naukowych i infrastruktury wyższej uczelni,

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Algorytmy i struktury danych, C3

ĆWICZENIE 2: Algorytmy ewolucyjne cz. 1 wpływ wielkości populacji i liczby pokoleń na skuteczność poszukiwań AE

Algorytmy genetyczne w interpolacji wielomianowej

przetworzonego sygnału

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

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

METODY HEURYSTYCZNE wykład 3

Programowanie genetyczne - gra SNAKE

Optymalizacja ciągła

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

Metody Optymalizacji: Przeszukiwanie z listą tabu

Transkrypt:

Algorytmy ewolucyjne 1

2 Zasady zaliczenia przedmiotu Prowadzący (wykład i pracownie specjalistyczną): Wojciech Kwedlo, pokój 205. Konsultacje dla studentów studiów dziennych: poniedziałek,środa, godz 10:15-12:00 Pracownia specjalistyczna: projekt ilustrujący zastosowania algorytmów ewolucyjnych, grupy 2-3 osobowe, obrona projektu. Wykład (zaliczenie wykładu z oceną): prosty test, podobnie jak w przypadku obliczeń równoległych.

Program wykładu z (syllabusa) 15 Powtórzenie. Przykładowe zadania na egzamin. 3 1 Wprowadzenie do metod optymalizacji. Optymalizacja globalna i lokalna. 2 Standardowy algorytm genetyczny. Selekcja. Operatory ewolucyjne. 3 Rozszerzenia algorytmu standardowego. 4 Strategie ewolucyjne i programowanie ewolucyjne. 5 Programowanie genetyczne 6 Zadania z ograniczeniami. 7 Algorytmy ewolucyjne porady praktyczne. 8 Algorytmy ewolucyjne dla problemu komiwojazera. 9 Algorytmy ewolucyjne dla problemów kolorowania grafu i szeregowania. 10 Algorytmy ewolucyjne w uczeniu maszynowym. 11 Teoria algorytmów ewolucyjnych. 12 Algorytmy memetyczne. 13 Algorytmy ewolucyjne na maszynach równoległych. 14 Dobór parametrów algorytmu.

Literatura 4 1. Michalewicz Z., Algorytmy genetyczne + struktury danych=programy ewolucyjne, WNT, Warszawa 1996. 2. Arabas J., Wykłady z algorytmów ewolucyjnych, WNT Warszawa,2001 3. Goldberg, D. E.: Algorytmy genetyczne i ich zastosowania. WNT, Warszawa, 1995. 4. Michalewicz Z, Fogel D.B., Jak to rozwiązać, czyli nowoczesna heurystyka, WNT, Warszawa, 2006. oraz dla ambitnych czasopisma naukowe, n.p.: Evolutionary Computation, MIT Press IEEE Transactions on Evolutionary Computation, IEEE Evolutionary Intelligence, Springer

f(x) Optymalizacja lokalna x 0 x 1 x 2 x O x Szukamy maksimum funkcji. Startujemy od punktu x 0. Następnie w sąsiedztwie x 0 znajdujemy punkt o większej wartości funkcji celu. Powtarzamy poszukiwania do momentu, gdy w sąsiedztwie bieżącego punktu nie możemy znaleźć punktu o większej wartości funkcji celu. W ten sposób dochodzimy do punktu x O - lokalnego maximum funkcji f(x), ale... 5

6 Optymalizacja lokalna - problem x O1 x 1 x 2 x O2 x W przypadku funkcji wielomodalnej (mającej więcej niż jedne optimum lokalne) wynik zależy od punktu startu. Startując z punktu x 2 znajdziemy maksimum globalne w punkcie x O2, startując z x 1 ugrzęźniemy w maksimum lokalnym x O1.

Funkcje naprawdę trudne do optymalizacji Dwuwymiarowa funkcja Rastrigina (szukamy tym razem minimum). min f(x 1,x 2 ); -5.12 x 1,x 2 5.12. Globalne minimum f(0,0)=0 Dla tego typu funkcji proste metody typu: wykonaj kilka startów z losowych punktów początkowych na pewno nie sprawdzą się 7

Optymalizacja dyskretna - problem komiwojażera Mamy współrzędne N miast. Komiwojażer musi odwiedzić wszystkie miasta dokładnie jeden raz i wrócić do punktu początkowego. Mając dane odległości między miastami szukamy najkrótszej trasy komiwojażera. (N-1)!/2 możliwych tras, najbardziej wyrafinowane algorytmy mają złożoność O(2 N ). Rysunek przedstawia rozwiązanie dla 13509 miast w USA. 8

9 Algorytmy ewolucyjne Tematyka związana z algorytmami ewolucyjnymi jest częścią dyscypliny informatyka (a nie biologia). Algorytmy ewolucyjne zostały zainspirowane procesem ewolucji zachodzącym w przyrodzie. Celem jest stworzenie narzędzia pozwalającego na rozwiązywanie problemów (których kilka przykładów podałem na poprzednich slajdach) - luźno wykorzystując inspiracje biologiczne. Celem nie jest możliwie jak najdokładniejsze modelowanie procesu ewolucji.

Ewolucja Darwinowska - przeżycie najbardziej dopasowanego (ang. survival of the fittest) 10 Każde środowisko ma ograniczone zasoby (może utrzymać ograniczoną liczbę osobników) Osobniki żyjące w środowisku rozmnażają się. Z tego powodu jakaś forma selekcji jest konieczna. Osobniki, które najlepiej rywalizują o zasoby (najlepiej przystosowane do środowiska) mają największą szansę na rozmnożenie się. U potomstwa występują niewielkie losowe zmiany (mutacja), które mogą prowadzić do powstania osobników lepiej dopasowanych do środowiska. Oczywiście w wyniku zmian mogą powstać osobniki słabo dopasowane do środowiska, ale będą one miały małe szanse na przetrwanie i wydanie potomków. Wraz z upływem czasu dobór naturalny sprawia, że przystosowanie osobników w populacji rośnie.

11 Algorytmy ewolucyjne Należą do klasy metod generuj-i-testuj W odróżnieniu od klasycznych algorytmów optymalizacji, przetwarzających w danej chwili jeden punkt bazowy, algorytmy ewolucyjne operują na populacji rozwiązań (osobnik==rozwiązanie problemu). Operatory ewolucyjne (mutacja i recombinacja) są źródłem zmian w populacji. Selekcja redukuje różnorodność i prowadzi do wzrostu dopasowania w populacji. Zakładamy że dana jest funkcja dopasowania (ang. fitness funtion) odwzorowująca przestrzeń osobników w zbiór liczb rzeczywistych (lub jego podzbiór, np w algorytmach genetycznych R + ) Cel: znalezienie osobnika o największym dopasowaniu

12 Schemat algorytmu ewolucyjnego (Eiben i Smith) Inicjalizacja Selekcja rodziców Rodzice Populacja Krzyżowanie (rekombinacja) Mutacja Zakończenie Selekcja przeżywających potomków Potomkowie

Pseudokod algorytmu ewolucyjnego (Eiben i Smith) 13

Typowy przebieg algorytmu optymalizującego funkcję jednej zmiennej 14 Wczesna faza: losowa dystrybucja elementów populacji Środkowa faza: populacja zgromadzona wokół maksimów lokalnych. Faza końcowa: populacja skoncentrowana na kilku maksimach funkcji dopasowania.

15 Typowy przebieg algorytmu Best fitness in population Time (number of generations) Wzrost dopasowania wraz z upływem czasu; początkowo szybki następnie powolny

Typy algorytmów ewolucyjnych Historycznie podział algorytmów ewolucyjnych był związany ze sposobem kodowania rozwiązań problemów. Algorytmy genetyczne: osobnik ma postać ciągu bitów o stałej długości. 00110100110101 Strategie ewolucyjne, ewolucja różnicowa: osobnik jest wektorem liczb rzeczywistych: x=[ x 1, x 2,, x n ], x i R Programowanie genetyczne: osobnik jest drzewem reprezentującym program komputerowy. 16

Problem optymalizacji dyskretnej z ograniczeniami - binarne zagadnienie plecakowe 17 Dane jest N przedmiotów, z których każdy posiada masę m i wartość w i Dany jest plecak, który możemy umieścić elementy o sumarycznej masie M Jakie przedmioty zabrać do plecaka, tak aby sumaryczna wartość przedmiotów była jak największa? i Nazwa m i w i 1 Zegarek 0.2 10 2 Buty 1 2 3 Spodnie 0.5 2 4 Czapka 0.2 1 5 Kurtka 1 3 6 Piwo 1 1 M=2

18 Zagadnienie plecakowe: sformułowanie i Nazwa m i w i 1 Zegarek 0.2 10 2 Buty 1 2 3 Spodnie 0.5 2 4 Czapka 0.2 1 5 Kurtka 1 3 6 Piwo 1 1 M=2 Postać rozwiązania: x=[ x 1, x 2, x 3, x 4, x 5, x 6 ], x i {0,1} Optymalizowana funkcja: 6 f x = 1 x i w i Czy rozwiązanie [0,1,0,0,1,1] jest dopuszczalne? Nie, gdyż nie spełnia ograniczenia 6 g x = 1 x i m i M

19 Podsumowanie Algorytmy ewolucyjne charakteryzują się użyciem populacji użyciem stochastycznych operatorów przeszukiwania. w szczególności operatorów operujących na więcej niż jednym osobniku (krzyżowanie) reprodukcja i zastępowanie osobników w populacji oparte są na wartości funkcji dopasowania. Następny wykład: Standardowy Algorytm Genetyczny Reprezentacja w postaci ciągów binarnych. Mutacja i krzyżowanie. Selekcja proporcjonalna przy pomocy koła ruletki.