22
Arkadiusz Kalinowski Szczecin, 2016 1 / 22 Ewolucja Różnicowa Differential Evolution Obliczenia z wykorzystaniem metod sztucznej inteligencji Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

Arkadiusz KalinowskiSzczecin, 2016

1 / 22

Ewolucja RóżnicowaDifferential Evolution

Obliczenia z wykorzystaniem metod sztucznej inteligencji

Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Page 2: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

2 / 22

Plan

WstępHistoria

Okoliczności powstaniaKrótko o twórcach

ZastosowaniaAlgorytm

KrokiRodzajeZmiennePrzykład

Porównanie z innymi metodami

Page 3: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

3 / 22

Wstęp

Differential Evolution

(Źr. 4)

Page 4: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

4 / 22

Historia – Okoliczności powstania

Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a problemu wielomianów Czebyszewa podsuniętego przez Rainera Storna, gdy Ken Price wymyślił sposób na zaburzanie populacji wektora wykorzystując do tego różnice wektorowe.

Page 5: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

5 / 22

Historia – Okoliczności powstania

Algorytm został oficjalnie opublikowany w 1997 roku wraz z publikacją:

Price, K. and Storn, R. "Differential Evolution." Dr. Dobb's J., Issue 264, 18-24 and 78, Apr. 1997.

jednak społeczność fanów ewolucji różnicowej istniała już

od lat 1994.

Page 6: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

6 / 22

Historia – Krótko o twórcach

Rainer Storn

Instytucja:Uniwersytet Berkeley

Kalifornia

Dziedziny:Algorytmy I Teoria

Elektronika I inżynieria elek.Sztuczna Inteligencja

Kenneth V. Price

Instytucja:?

Dziedziny:Sztuczna Inteligencja

Algorytmy I TeoriaInżynieria Chemiczna

Page 7: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

7 / 22

Zastosowania

Optymizacja designu mechanicznego.

Chemia

Źr. https://i.ytimg.com/vi/VpXjNerEVTQ/maxresdefault.jpg

Źr. https://en.wikipedia.org/wiki/Chemistry

Page 8: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

8 / 22

Zastosowania

Planowanie

Optymalizacja Funkcyjna

Źr. https://upload.wikimedia.org/wikipedia/commons/9/98/Shenzhen_Metro_Map-2030.png

Źr. https://upload.wikimedia.org/wikipedia/commons/e/ea/Visualizat

ion_of_two_dimensions_of_a_NK_fitness_landscape.png

Page 9: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

9 / 22

Zastosowania

Design Filtrów, modulatorów

Design Sieci Radiowych

Źr. https://en.wikipedia.org/wiki/Weighting_filter

Źr. http://www.freefoto.com/preview/04-02-84/Television-Transmitter-Tower--Shotleyfield--County-Durham

Page 10: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

10 / 22

Zastosowania

Synteza multiprocesorowa

Nauka sieci neuronowych

Źr. http://retis.sssup.it/waters2010/waters2010.pdf

Źr. https://commons.wikimedia.org/wiki/File:Competitive_neural_ne

twork_architecture.png

Page 11: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

11 / 22

Algorytm – Kroki

Przebieg pojedyńczej iteracji algorytmu ewolucji różnicowej (DE) (Źr. 3)

Page 12: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

12 / 22

Algorytm – Rodzaje

DE/x/y z, gdzie:x – Metoda generacji wagowego wektora różnicowego : Rand – Na podstawie wektora różnicowego dwóch losowo-unikatowych

wektorów obecnej populacji, dodanego do trzeciego losowo- unikatowego wektora obecnej populacji.

Local-to-best – Na podstawie wektora różnicowego dwóch losowo-u nikatowych wektorów obecnej populacji, dodanego do wektora różnicowego najlepszego wektora poprzedniej populacji i wektora poprzedniej populacji, dodanego do wektora poprzedniej populacji.

Best – Na podstawie wektora różnicowego dwóch losowo-unikatowych wektorów obecnej populacji, dodanego do wektora najlepszego poprzedniej populacji.

Page 13: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

13 / 22

Algorytm – Rodzaje

DE/x/y z, gdzie:y – Liczba par stosowanych w obliczeniach wektoru różnicowego.

Dowolna liczba całkowita większa od 0.

z – Metoda wspierająca algorytm, używana w celu rozwiązania problemu stagnacji.Jitter – Losowy szum wpływający na wektor różnicowy.Dither – Losowy, równoległy do otrzymanego wektora różnicowego

szum wpływający na ten wektor.Either-or Algorithm – Losowanie metody zaburzenia po każdej

iteracji spośród mutacji I rekombinacji.

Page 14: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

14 / 22

Algorytm – Rodzaje

Popularne rodzaje algorytmu:

DE/rand/1

DE/local-to-best/1

DE/best/1 with jitter

DE/rand/1 with per-vector-dither

DE/rand/1 with per-generation-dither

DE/rand/1 either-or-algorithm

Page 15: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

15 / 22

Algorytm – Zmienne

Najważniejsze zmienne:

I_D – numer parametrów funkcji celu. Przykładowo dla funkcji f(x,y) I_D = 2.

I_NP – liczba członków populacji. Zalecana liczba to 10*I_D!

I_itermax – maksymalna liczba generacji.

F_weight – waga wektora różnicy. Zalecana liczba w przedziale [0.5 1].

I_strategy – stosowana metoda/rodzaj algorytmu. FVr_minbound / Fvr_maxbound – wartości minimalne / maksymalne

populacji startowej. Zalecane takie, które obejmują obszar gdzie znajduje się nasze wyszukiwane minimum.

F_CR – prawdopodobieństwo zajścia krzyżowania. Liczba w przedziale [0 1].

Fvr_bestmem – Obecna najlepsza populacja. F_VTR – wartość wystarczająca. Algorytm kończy pracę gdy zostanie ona

przekroczona.

Page 16: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

16 / 22

Algorytm – Przykład

Źr. https://commons.wikimedia.org/wiki/File:Matlab_Logo.png

Demonstracja w matlabie

Page 17: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

17 / 22

Porównanie z innymi metodami

Ewolucja różnicowa vs algorytm genetycznyProblem komiwojażera

Porównanie algorytmu ewolucji różnicowej (DE) i algorytmu genetycznego (GA) dla problemu komiwojażera (Źr. 1 str. 11)

Page 18: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

18 / 22

Porównanie z innymi metodami

Ewolucja różnicowa vs algorytm genetycznyProblem n-hetmanów

Porównanie algorytmu ewolucji różnicowej (DE) i algorytmu genetycznego (GA) dla problemu n-hetmanów (Źr. 1 str. 12)

Page 19: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

19 / 22

Porównanie z innymi metodami

Plusy DE nad GA:

Dokładniejsze wyniki.

Brak problemu z lokalnymi optymami.

Szybszy i wydajniejszy od GA dla dużych problemów.

Lepsze wyniki dla problemów kombinatorycznych,

dyskretnych.

Minusy DE nad GA:Skończenie 1 generacji DE trwa 4-krotnie dłużej.Wolniejszy od GA dla małych problemów.

Page 20: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

20 / 22

Źródła

1. Brian Hegerty, Chih-Cheng Hung, and Kristen Kasprak, A Comparative Study on Differential Evolution and Genetic Algorithms for Some Combinatorial Problems, http://www.micai.org/2009/proceedings/complementary/cd/ws-imso/88/paper88.micai09.pdf, 7.03.2016.

2. Uday K. Chakraborty, Advances in Differential Evolution, Springer 2008

3. http://www1.icsi.berkeley.edu/~storn/code.html, 7.03.2016

4. http://chemweb.bham.ac.uk/~tremaynm/resint.htm, 7.03.2016

Page 21: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

Pytania?

21 / 22

Page 22: Ewolucja Różnicowa Differential Evolutionwikizmsi.zut.edu.pl/uploads/7/75/OzWSI_I_S1_c8.pdf · 2016. 4. 7. · Ewolucja różnicowa jest efektem prób rozwiązania przez Kena Price'a

Dziękuję