Sieci neuronowe i algorytmy ewolucyjne



Podobne dokumenty
IV. Metody genetyczne

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

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

ALHE Z11 Jarosław Arabas wykład 11

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

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

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

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

ALGORYTMY GENETYCZNE ćwiczenia

Metody Rozmyte i Algorytmy Ewolucyjne

Algorytmy genetyczne

Algorytm genetyczny (genetic algorithm)-

Wstęp do Sztucznej Inteligencji

SZTUCZNA INTELIGENCJA

Programowanie genetyczne

Algorytmy ewolucyjne 1

Obliczenia ewolucyjne - plan wykładu

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

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

Algorytmy ewolucyjne

LABORATORIUM 1: Program Evolutionary Algorithms

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

Algorytmy genetyczne (AG)

Algorytmy ewolucyjne NAZEWNICTWO

Strategie ewolucyjne (ang. evolu4on strategies)

y = The Chain Rule Show all work. No calculator unless otherwise stated. If asked to Explain your answer, write in complete sentences.

Programowanie genetyczne (ang. genetic programming)

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Równoważność algorytmów optymalizacji

Algorytmy ewolucyjne `

Techniki optymalizacji

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

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

Algorytmy ewolucyjne. wprowadzenie

OBLICZENIA EWOLUCYJNE

Ewolucja Różnicowa Differential Evolution

Algorytmy genetyczne

IMPLIKACJE ZASTOSOWANIA KODOWANIA OPARTEGO NA LICZBACH CAŁKOWITYCH W ALGORYTMIE GENETYCZNYM

ALGORYTMY EWOLUCYJNE W ZASTOSOWANIU DO ROZWIĄZYWANIA WYBRANYCH ZADAŃ OPTYMALIZACJI1

Strategie ewolucyjne (ang. evolution strategies)

Algorytmy ewolucyjne Część II

Linear Classification and Logistic Regression. Pascal Fua IC-CVLab

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

Algorytmy metaheurystyczne podsumowanie

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

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

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

Wyk lad 8: Leniwe metody klasyfikacji

Algorytm hybrydowy dla alokacji portfela inwestycyjnego przy ograniczonych zasobach

METODY HEURYSTYCZNE wykład 3

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

Optymalizacja optymalizacji

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 311

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

METODY HEURYSTYCZNE wykład 3

Wykorzystanie metod ewolucyjnych w projektowaniu algorytmów kwantowych

Algorytmy ewolucyjne (3)

ALGORYTMY GENETYCZNE I EWOLUCYJNE

DMX DMX DMX DMX: CREATE MINING STRUCTURE. Tadeusz Pankowski

OBLICZENIA EWOLUCYJNE

tum.de/fall2018/ in2357

Ściągawka z Matlaba / Octave

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

Optymalizacja. Wybrane algorytmy

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

Algorytmy genetyczne

SZTUCZNA INTELIGENCJA

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

Algorytmy genetyczne w optymalizacji

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

OpenPoland.net API Documentation

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

PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO

Gradient Coding using the Stochastic Block Model

OBLICZENIA EWOLUCYJNE

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

TTIC 31210: Advanced Natural Language Processing. Kevin Gimpel Spring Lecture 9: Inference in Structured Prediction

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

OBLICZENIA EWOLUCYJNE

PODSTAWY BAZ DANYCH 13. PL/SQL

OPTYMALIZACJA KONFIGURACJI ALGORYTMU EWOLUCYJNEGO DO PLANOWANIA PROCESU MONTAŻU

Problemy z ograniczeniami

Zastosowanie sztucznej inteligencji w testowaniu oprogramowania

Hard-Margin Support Vector Machines

Metody i techniki sztucznej inteligencji / Leszek Rutkowski. wyd. 2, 3 dodr. Warszawa, Spis treści

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

Szkolenia SAS Cennik i kalendarz 2017

Optimizing Programs with Intended Semantics

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

ALGORYTMY EWOLUCYJNE

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

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

Reguły asocjacyjne w programie RapidMiner Michał Bereta

Instrukcja konfiguracji usługi Wirtualnej Sieci Prywatnej w systemie Mac OSX

ZARZĄDZANIE WIEDZĄ I TECHNOLOGIE WSPOMAGAJĄCE. Plan i cele wykładu. Wprowadzenie. Systemy Informacyjne Zarządzania

Program "FLiNN-GA" wersja 2.10.β

OBLICZENIA EWOLUCYJNE

Rozpoznawanie twarzy metodą PCA Michał Bereta 1. Testowanie statystycznej istotności różnic między jakością klasyfikatorów

POZNAN UNIVE RSITY OF TE CHNOLOGY ACADE MIC JOURNALS No 72 Electrical Engineering 2012

Optymalizacja parametryczna (punkt kartezjańskim jest niewypukła).

Transkrypt:

Metody sztucznej ewolucji Sieci neuronowe i algorytmy ewolucyjne IV. Algorytmy ewolucyjne Algorytmy genetyczne Programowanie genetyczne Systemy klasyfikatorow Strategie ewolucyjne Podstawa symulacji : Ewolucja populacji rozwiazan poprzez procesy selekcji, krzyzowania, mutacji i reprodukcji Jerzy KORCZAK email :jerzy.korczak@ue.wroc.pl http://www.korczak-leliwa.pl http://citi-lab.pl http://kti.ue.wroc.pl Ch. DARWIN «On the Origin of Species by Means of Natural Selection», 1859 «surivival of the fittest» 1 J.Korczak, ULP 2 Przestrzeń rozwiązań population initiale Proces ewolucji populacja końcowa J.Korczak, ULP 3 J.Korczak, ULP 4 Algorytm ewolucji t:=0 initpopulation P(t) //initialize a usually random population evaluate P(t) // evaluate fitness of all individuals WHILE not done DO // test for termination criterion t:=t + 1 P := selectparents P(t) // sub-population for offspring production recombine P (t) // recombine the «genes» of selected parents mutate P (t) // perturb the mated population stochastically evaluate P (t) // evaluate new fitness P :=survive P, P (t) // select the survivors OD END EA Prosty przyklad Cel : Maksymalizacja funkcji f(x) = x 2 gdzie x [0...31] 1. Kodowanie 0 00000 1 00001... 31 11111 2. Generacja pierwszej populacji (n=4) NoChaîne PopInit x f(x) 1 01101 13 169 2 11000 24 576 3 01000 8 64 4 10011 19 361 J.Korczak, ULP 5 J.Korczak, ULP 6 1

3. Operatory genetyczne - Selekcja : mechanizm «ruletki» Nr PopInit x f(x) f i/σ f 1 01101 13 169 0.14 2 11000 24 576 0.49 3 01000 8 64 0.06 4 10011 19 361 0.31 Suma 1170 1.00 Srednia 293 - Krzyzowanie 0110 1 1100 0 0110 0 1100 1 31% 6% 14% 49% 01101,11000,11000,10011 4. Operatory genetyczne : krzyzowanie, mutacja Nr Rodzice Partner lokx. Dzieci x f(x) 1 01101 2 4 01100 12 144 2 11000 1 4 11001 25 625 3 11000 4 2 11011 27 729 4 10011 3 2 10000 16 256 Suma 1754 Srednia 439 Max 729 - Mutacja : p mut = 1/20 ; nr pozycji -> rand() =13 01100 11001 11011 10000 01100 11001 11111 10000 J.Korczak, ULP 7 J.Korczak, ULP 8 Fitness function Maksymalizacja funkcji Dany jest model o P parametrach. Jakosc tego modelu mierzy funkcja F(P) Zadanie optymalizacji polega na znalezieniu takiego punktu p* ktory maksymalizuje funkcje oceny. Przyklad: Znalezc taka pare (x m,y m ) ktore maksymalizuje f(x,y) = cos 2 (nπr) exp (-r 2 /σ 2 ), r 2 = x 2 +y 2, x,y [0.0, 1.0] gdzie n oraz σ sa stalymi. J.Korczak, ULP 9 J.Korczak, ULP 10 Operatory genetyczne: selekcja, mutacja, reprodukcja Operatory genetyczne: Krzyzowanie Selekcja Selekcja proporcjonalna F i /ΣF i : kolo ruletki Selekcja wg pozycji Selekcja turniejowa, Mutacja Eksploracja przestrzeni rozwiazan Mutacja adaptacyjna, Rekreacja populacji (utworzenie nastepnej populacji) Strategia elitarna Strategia eugeniczna, Krzyzowanie 1-no punktowe AA AAAAA AABBBBB BB BBBBB BBAAAAA Krzyzowanie 2-punktowe AA AAA AA AABBBAA BB BBB BB BBAAABB Krzyzownie wielo-punktowe 0 1 1 0 0 0 1 AAAAAAA BBBBBBB BAABBBA ABBAAAB J.Korczak, ULP 11 J.Korczak, ULP 12 2

Planowanie zadan: Job Shop Scheduling Dane : zbior zadan do wykonania {J i } na m maszynach {M k }, kazde zadanie J i jest zlozone z m i operacji {o i1, o i2,, o mi }, operacja o ik : { id, czas wykonania t k, maszyna M k } Cel : Minimalizacja calkowitego czasu wykonania T min (T max ) = min (max (t ik ) : J i J, M k M) gdzie T max jest czasem wykonania przy spelnieniu ograniczen nastepstwa zadan i zasobow. Liczba mozliwych planow realizacji zadan: (n!) m Przyklad Dane sa 4 zadania (A, B, C, D) do wykonania na 4 maszynach (M1, M2, M3, M4). Zadanie A sklada sie z 4 podzadan: A1 (T=2, M1), A2(T=3, M2), A3(T=4, M3), A4(T=5, M4). Zadanie A sklada sie z 4 podzadan: B1 (T=3, M1), B2(T=4, M3), B3(T=1, M2), B4(T=1, M4). Zadanie A sklada sie z 4 podzadan: C1 (T=5, M3), C2(T=5, M2), C3(T=2, M1), C4(T=2, M4). Zadanie A sklada sie z 4 podzadan: D1 (T=1, M1), D2(T=1, M4), D3(T=2, M3), D4(T=9, M2). --- A1 (T=2, M1) oznacza ze A1 wymaga 2 jedn czasu na M1 J.Korczak, ULP 13 J.Korczak, ULP 14 Kodowanie (reprezentacja) rozwiazan Przyklad : chromozom ADBC Ocena i kryterium stopu Fitness function: f(plan i) = 1/czas wykonania planu i Kryterium stopu: homogenicznosc populacji otrzymanie satysfakcjonujacego rozwiazania liczba generacji J.Korczak, ULP 15 J.Korczak, ULP 16 Operatory krzyzowania PMX PMX (Partially Match Crossover) OX (Order Crossover) CX (Cycle Crossover) A : 8 4 5 6 7 1 3 2 B : 4 7 1 2 3 5 8 6 Etap 1 : Wybrac losowo strefe krzyzowania Przyklad : A : 8 4 5 6 7 1 3 2 J.Korczak, ULP 17 J.Korczak, ULP 18 3

PMX PMX Etap 2 : Zamienic strefy krzyzowania A : 8 4 5 6 7 1 3 2 A :.. 1 2 3... B : 4 7 1 2 3 5 8 6 B :.. 5 6 7... Etap 3: Zachowac geny nie bedace w strefie krzyzowania A : 8 4 1 2 3... B : 4. 5 6 7. 8. Etap 4: Skompletowac genami homologicznymi A : 8 4 1 2 3 5 7 6 B : 4 3 5 6 7 1 8 2 Przypomnienie : A : 8 4 5 6 7 1 3 2 B : 4 7 1 2 3 5 8 6 J.Korczak, ULP 19 J.Korczak, ULP 20 Mutacja Exemple : A : 1 2 3 4 5 6 7 8 A : 1 2 6 4 5 3 7 8 J.Korczak, ULP 21 J.Korczak, ULP 22 Problem komiwojażera Reprezentacja: Dystans : -z 0 do 1 = 5 -z 0 do 2 = 7 -... Przykłady podróży J.Korczak, ULP 23 J.Korczak, ULP 24 4

Problem komiwojażera - operacje Operacja Krzyżowania Problem komiwojażera - przykład Rodzice Miasta niewstawione Dzieci Operacja Mutacji Przed Po J.Korczak, ULP 25 J.Korczak, ULP 26 Projekt ibe-realtime Expert Discovery and Database Connections Consulting and simulations Stock trading using genetic algorithms [Korczak, Roger] Trading expert model: a subset of trading rules each 5 sec Time series aggregation Database Quotes Experts Clients each 1 min Time series provider Oracle ias server Technical trading rules and indicators [W.Colby et T. Meyers, J. Murphy] IF conditions are satisfied THEN decision financial indicators buy, hold or sell Initial wealth of expert: C 0 n 0 P t0 +1 + m Supervisor Expert Generator Quality of trading expert = F(return, risk) J.Korczak, ULP 27 J.Korczak, ULP 28 Technical trading rules Rate Of Change (ROC) IF ROC is-greater-than (1+ε) THEN BUY, ELSE IF ROC is-less-than (1-ε) THEN SELL ELSE HOLD Reguły tradingu : Średnia ruchoma Peugeot Ease of Movement Value (EMV) IF indicator EMV is positive THEN BUY ELSE IF indicator EMV is negative THEN SELL ELSE HOLD Price Channel IF current-price > max of n preceding prices THEN BUY ELSE IF current-price < min of n preceding prices THEN SELL ELSE HOLD Irrational rules: friday 13th, signs of Zodiac, etc. Rgula : Kup : kiedy SR przebija kurs à la hausse Sprzedaj : kiedy SR przebija kurs à la baisse J.Korczak, ULP 29 J.Korczak, ULP 30 5

Genetic encoding of experts Are some rules more efficient? Each trading expert is encoded as a binary string, a chromosome: 1 0 1 0 0 0 1 0 0 0 1 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 Genes represent the rules to be executed while examining financial data. no rule consistently outperforms the others J.Korczak, ULP 31 J.Korczak, ULP 32 Projekt ibe : interface Projekt ibe-realtime Expert Discovery and Database Connections Consulting and simulations each 5 sec Time series provider Time series aggregation each 1 min Database Quotes Experts Clients Oracle ias server Supervisor Expert Generator J.Korczak, ULP 33 J.Korczak, ULP 34 Architecture of Internet Bourse Experts AT system Internet Bourse-Experts - Agent Technology Market Database IAs Market Watch IA Volatility IA Text Mining IAs Expert Database Financial Database Stock Analysis IAs Visualization Agents Security Agents Expert Supervisor Expert Generator Users Database network Users ( PC, Palm, Mobile, ) J.Korczak, ULP 35 J.Korczak, ULP 36 6

Programowanie genetyczne Process of program evolution J. R. Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection, MIT Press 1996. PG : konstrukcja programu z wykorzystaniem sztucznej ewolucji Reprezentacja programu : drzewo syntaktyczne Program generation Genetic operators : creation, crossover, mutation, selection Fitness function Program primitives : Set of functions F, (*,+, AND, ) Set of terminalst (vars, const, ) (+ (* A B) (/ (+C 5) (- D 2.5) )) A * B + / + - C 5 D 2.5 Program test Compilation Program exe Results Execution J.Korczak, ULP 37 J.Korczak, ULP 38 Operatory : generowanie programu Operatory : krzyzowanie (crossover) J.Korczak, ULP 39 J.Korczak, ULP 40 Operatory : mutacja Operatory : tworzenie podprogramów J.Korczak, ULP 41 J.Korczak, ULP 42 7

Operatory: supresja podprogramów Operators : creation J.Korczak, ULP 43 J.Korczak, ULP 44 Operators : crossover Operators : mutation J.Korczak, ULP 45 J.Korczak, ULP 46 Operators : creation of sub-programs Example: Symbolic Regression The SR problem requires finding a function y=f(x), that fits a set of (x,y) data points with minimal error. The set of points comes from a target function (x 1, y 1 ), (x 2, y 2 ),, (x n, y n ), Functions : +,-,*,/, sin, cos, log, exp Terminal : x Fitness : /Φ(f(x i ) y i )I for 20 randomly generated points Stop criterion : MaxNoGen OU Φ(f(x i ) y i )I < 0.01 In this example, a set 20 samples has been generated using the following function : f(x) = x 4 + x 3 + x 2 + x http://alphard.ethz.ch/gerber/approx/default.html J.Korczak, ULP 47 J.Korczak, ULP 48 8

Programowanie genetyczne : Aproksymacja funkcji IBE-GP Schemat funkcjonalny J.Korczak, ULP 49 J.Korczak, ULP 50 Discovery of Trading Rules Règles : Sous la forme FONCTION=Booléen Test : si le résultat de la fonction est égal à la décision alors le booléen doit être TRUE Si ce n est pas le cas, la règle est évaluée comme fausse Wizualizacja decyzji STMicro AXA Peugeot J.Korczak, ULP 51 J.Korczak, ULP 52 Przyklad : Optymalizacja ruchu pojazdow Evolutionary Art : System EVA http://asd.bbn.com/papers/traffic/traffic.html J.Korczak, ULP 53 J.Korczak, ULP 54 9

System EVA Operatory i drzewo syntaktyczne «malarzy» Problem komiwojażera J.Korczak, ULP 55 J.Korczak, ULP 56 Podsumowanie Algorytmy ewolucyjne (AE) optymalizuja zagadnienia przy zmiennych ciaglych lub dyskretnych, przy czym liczba zmiennych moze byc duza AE nie wymagaja informacji o pochodnych AE maja zastosowanie przy zlozonych przestrzeniach funkcji kosztu Adaptacyjność i modularność Robustness Latwość implementacji Nie jest konieczna dogłebna znajomość działania modelu Latwość hybrydyzacji (sieci neuronowe, heurystyki) Latwość implementacji rownoległej algorytmu J.Korczak, ULP 57 10