Migracyjne ( Wyspowe ) Algorytmy Ewolucyjne

Slides:



Advertisements
Podobne prezentacje
Opinie Polaków na temat usług szpitalnych
Advertisements

Joanna Sawicka Wydział Nauk Ekonomicznych, Uniwersytet Warszawski
Metody badania stabilności Lapunowa
„Wielokryterialna optymalizacja pracy systemu wytwarzania o strukturze przepływowej – algorytm memetyczny” Przygotował: Dominik Żelazny, IIAR.
Wprowadzenie do informatyki Wykład 6
Obserwowalność System ciągły System dyskretny
POWIAT MYŚLENICKI Tytuł Projektu: Poprawa płynności ruchu w centrum Myślenic poprzez przebudowę skrzyżowań dróg powiatowych K 1935 i K 1967na rondo.
Wprowadzenie do optymalizacji wielokryterialnej.
Ludwik Antal - Numeryczna analiza pól elektromagnetycznych –W10
Liczby pierwsze.
Domy Na Wodzie - metoda na wlasne M
1 mgr inż. Sylwester Laskowski Opiekun Naukowy: prof. dr hab. inż. Andrzej P. Wierzbicki.
Algorytmy genetyczne Motto:
1 Stan rozwoju Systemu Analiz Samorządowych czerwiec 2009 Dr Tomasz Potkański Z-ca Dyrektora Biura Związku Miast Polskich Warszawa,
Nieelitystyczne algorytmy ewolucyjnej optymalizacji wielokryterialnej
PREPARATYWNA CHROMATOGRAFIA CIECZOWA.
Metody Sztucznej Inteligencji w Sterowaniu 2009/2010Optymalizacja miary efektywności działania sztucznych sieci neuronowych Dr hab. inż. Kazimierz Duzinkiewicz,
Wykład 6 Standardowy błąd średniej a odchylenie standardowe z próby
6. Pochodne cząstkowe funkcji n zmiennych
Algorytmy genetyczne.
Algorytmy genetyczne.
Badanie kwartalne BO 2.3 SPO RZL Wybrane wyniki porównawcze edycji I- V Badanie kwartalne Beneficjentów Ostatecznych Działania 2.3 SPO RZL – schemat a.
Wykonawcy:Magdalena Bęczkowska Łukasz Maliszewski Piotr Kwiatek Piotr Litwiniuk Paweł Głębocki.
Hipotezy statystyczne
Ogólnopolski Konkurs Wiedzy Biblijnej Analiza wyników IV i V edycji Michał M. Stępień
Podstawy programowania II
Równoległe algorytmy genetyczne w optymalizacji kombinatorycznej
Wyrażenia algebraiczne
Wykonanie: Iwona Szatkowska. Uwaga! Wszystkie opisane w instrukcji operacje oparte są o zapowiedzi oraz projekty odpowiednich ustaw i rozporządzeń. Te.
Metody Lapunowa badania stabilności
TABLICE C++.
na podstawie materiału – test z użyciem komputerowo generowanych prób
KOLEKTOR ZASOBNIK 2 ZASOBNIK 1 POMPA P2 POMPA P1 30°C Zasada działanie instalacji solarnej.
Podstawy działania wybranych usług sieciowych
EGZAMIN GIMNAZJALNY W SUWAŁKACH 2009 Liczba uczniów przystępująca do egzaminu gimnazjalnego w 2009r. Lp.GimnazjumLiczba uczniów 1Gimnazjum Nr 1 w Zespole.
Modelowanie i identyfikacja 2010/2011Optymalizacja miary efektywności działania sztucznych sieci neuronowych Dr hab. inż. Kazimierz Duzinkiewicz, Katedra.
EXCEL Wykład 4.
1. Pomyśl sobie liczbę dwucyfrową (Na przykład: 62)
1. ŁATWOŚĆ ZADANIA (umiejętności) 2. ŁATWOŚĆ ZESTAWU ZADAŃ (ARKUSZA)
Analiza matury 2013 Opracowała Bernardeta Wójtowicz.
Podstawy statystyki, cz. II
Badanie kwartalne BO 2.3 SPO RZL Wybrane wyniki porównawcze edycji I- VII Badanie kwartalne Beneficjentów Ostatecznych Działania 2.3 SPO RZL – schemat.
Badanie kwartalne BO 2.3 SPO RZL Wybrane wyniki porównawcze edycji I- VII Badanie kwartalne Beneficjentów Ostatecznych Działania 2.3 SPO RZL – schemat.
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
EcoCondens Kompakt BBK 7-22 E.
EcoCondens BBS 2,9-28 E.
Rachunek różniczkowy funkcji jednej i wielu zmiennych
II Zadanie programowania liniowego PL
Projekt Badawczo- Rozwojowy realizowany na rzecz bezpieczeństwa i obronności Państwa współfinansowany ze środków Narodowego Centrum Badań i Rozwoju „MODEL.
User experience studio Użyteczna biblioteka Teraźniejszość i przyszłość informacji naukowej.
WYNIKI EGZAMINU MATURALNEGO W ZESPOLE SZKÓŁ TECHNICZNYCH
Seminarium licencjackie Beata Kapuścińska
Obliczalność czyli co da się policzyć i jak Model obliczeń sieci liczące dr Kamila Barylska.
Testogranie TESTOGRANIE Bogdana Berezy.
Badanie kwartalne BO 2.3 SPO RZL Wybrane wyniki porównawcze edycji I- VI Badanie kwartalne Beneficjentów Ostatecznych Działania 2.3 SPO RZL – schemat a.
Jak Jaś parował skarpetki Andrzej Majkowski 1 informatyka +
© GfK 2014 | GfK Health | Leki homeopatzcyne widziane okiem lekarzy 1 LEKI HOMEOPATYCZNE WIDZIANE OKIEM LEKARZY Czerwiec 2014.
Wyszukiwanie maksimum funkcji za pomocą mrówki Pachycondyla Apicalis.
Dr hab. Renata Babińska- Górecka
Systemy dynamiczne 2014/2015Obserwowalno ść i odtwarzalno ść  Kazimierz Duzinkiewicz, dr hab. in ż. Katedra In ż ynierii Systemów Sterowania 1 Obserwowalność.
Wnioskowanie statystyczne
1 Używanie alkoholu i narkotyków przez młodzież szkolną w województwie opolskim w 2007 r. Na podstawie badań przeprowadzonych przez PBS DGA (w pełni porównywalnych.
Współrzędnościowe maszyny pomiarowe
Elementy geometryczne i relacje
Strategia pomiaru.
EXCEL Wstęp do lab. 4. Szukaj wyniku Prosta procedura iteracyjnego znajdowania niewiadomej spełniającej warunek będący jej funkcją Metoda: –Wstążka Dane:
Algorytmy Genetyczne Anna Tomkowska Politechnika Koszalińska
SZTUCZNA INTELIGENCJA
Algorytmy. Co to jest algorytm? Przepis prowadzący do rozwiązania zadania.
Zapis prezentacji:

Migracyjne ( Wyspowe ) Algorytmy Ewolucyjne

O czym będziemy mówić: Algorytmy ewolucyjne problemy czasochłonność premature convergence Próby rozwiązania problemów Crowding Fitness sharing Distributed Genetic Algorithm (DGA)

Szczegóły o DGA Jak działa DGA (migration interval i migration rate) Modele migracji stepping stones model random migration model hierarchical parallel model Metody wyboru osobników do migracji Competition and Cooperation Injection island GA (iiGA) Hierarchical Fair Competition parallel model (HFC) DGA/rmr (random migration rate)

Algorytmy Ewolucyjne Typowe podejścia: Evolutionary Algorithms EA: ulepszanie jednego rozwiązania Evolutionary Algorithms EA: przetwarzanie całych populacji

Algorytmy Ewolucyjne Wspólne cechy EA reprezentacja rozwiązań jako osobników reprodukcja losowe zmiany współzawodnictwo osobników selekcja osobników

Algorytmy Ewolucyjne Genetic Algorithms – GA Algorytmy te opierają się głównie na reprodukcji „genetycznej” – poprzez zastosowanie algorytmów genetycznych Genetic Algorithms – GA krzyżowanie mutacja

Algorytmy Genetyczne Zalety: Wady: są one w stanie znaleźć właściwe rozwiązanie (lub jego przybliżenie) także w przypadku funkcji o wielu minimach lokalnych Wady: są czasochłonne (bardzo liczne populacje) nie zawsze otrzymujemy minimum globalne (tylko jedno z lepszych minimów lokalnych)

Algorytmy Genetyczne – rozwiązania problemów przyspieszenie przez równoległe obliczenia DGA (Distributed Genetic Algorithm) PEA (Parallel Evolutionary Algorithms) unikanie przedwczesnej zbiezności (premature convergence) przez: Zatłoczenie Podział przystosowania Algorytmy wyspowe (PEA, DGA)

Premature convergence Przedwczesna zbieżność W środowisku, w którym zbyt mocno promujemy najlepsze jednostki może dojść do sytuacji w której jeden gatunek (typ rozwiązania) szybko wyeliminuje pozostałe, czego efektem będzie ugrzęźniecie w minimum lokalnym. Natomiast w przeciwnym przypadku, gdy stosujemy inne zasady doboru, mogą zachodzić zbyt chaotyczne zmiany prowadzące do utraty „dobrych” materiałów genetycznych. Należy zapewnić balans między szerokością eksploracji przestrzeni rozwiązań a dokładnością przeszukiwań (dopracowywaniem rozwiązań) (exploration and exploitation). W przypadku przedwczesnej zbieżności w miarę postępu ewolucji średnie przystosowanie populacji rośnie pozwalając „przeżyć” tylko podobnym osobnikom, usuwając wszystkie słabsze (o niskim przystosowaniu), które być może mogły by wyprowadzić populację z minimum lokalnego do którego zdąża.

Crowding Strategia wymiany potomstwa mająca za zadanie utrzymanie różnorodności. Polega na wymienieniu podobnych osobników zwykle zapobiegając zbieraniu się ich wokół jednego minimum, rozszerzając w ten sposób zakres poszukiwań. Często jednak nie spisuje się prowadząc do zbiegania się populacji do kilku minimów.

Fitness sharing Modyfikacja operatora selekcji bazującego na dostosowaniu – pozwalająca na formowanie stabilnych podpopulacji wokół rożnych minimów powodująca równoległe poszukiwania w okolicy wielu minimów obszaru poszukiwań. Jednak w przypadku bardzo wielu minimów lokalnych jest wielce prawdopodobne, że ograniczona populacja nie będzie w stanie sprawdzić ich wszystkich.

Distributed Genetic Algorithm - DGA Właściwie wszystkie operacje genetyczne poza selekcją mogą być wykonywane równolegle mówi się że algorytmy genetyczne posiadają wrodzony paralelizm. W DGA populacja podzielona jest na podpopulacje zwane wyspami (stosuje się też inne rozwiązania równoległości GA, np. modele lokalnego sąsiedztwa z procesem dyfuzji)

Distributed Genetic Algorithm populację dzielimy na podpopulacje w każdej podpopulacji realizujemy alg. gen. najczęściej jednej podpopulacji odpowiada 1 komputer / procesor migracja 1 wyspa / 1 komputer między populacjami zachodzi migracja osobników

Distributed Genetic Algorithm Po zdefiniowanej ilości pokoleń migration interval część osobników przenoszonych jest (lub kopiowanych) na inną wyspę. Ich ilość jest zdefiniowana przez migration rate.

Distributed Genetic Algorithm DGA mogą być wykonywane równolegle udowodniono, że potrafią dostarczać dobrych rozwiązań po mniejszej liczbie obliczeń niż zwykłe GA! Wielkość populacji na każdej z wysp jest mniejsza niż w przypadku GA i co za tym idzie lokalne rozwiązanie może zostać osiągnięte szybciej. Jednak dzięki istnieniu innych wysp i operacji migracji w DGA zachowana zostaje różnorodność rozwiązań.

Modele migracji w DGA stepping stones model docelowa wyspa na którą przenoszone są osobniki jest wcześniej określona.

Modele migracji w DGA random migration model cel migracji za każdym razem wybierany jest losowo.

Modele migracji w DGA hierarchical parallel model docelowa wyspa na którą przenoszone są osobniki jest wcześniej określona tak jak w stepping stones model, z tym że wyspy ułożone są na różnych poziomach w hierarchię najczęściej określającą kierunek i warunki migracji

HFC Microsoft joke

Hierarchical Fair Competition przystosowanie Chinese saying: One can’t go thousands miles away without walking small steps Losowa generacja rozwiązań

Porównanie HFC z klasycznymi GA HFC bada nowe obszary przystosowanie We don’t depend on highly coupled individuals to jump long distance, we depends on continuing individuals emerging from below to explore different search areas even each one can only search in neighborhood. With the sustainable evolution structure, easier to evolve a better optima than mutating current local optima into better optima Klasyczny GA

Metody wyboru osobników do migracji. Elitarne osobniki Metoda polega na przesyłaniu najlepszych osobników do następnej wyspy zastępując nimi najgorsze. Metoda ta niestety często prowadzi do przedwczesnej zbieżności. Turniejowo Osobniki wybierane są metodą turniejową, również często prowadzi do przedwczesnej zbieżności. Losowo wybierane osobniki W brew pozorom metoda ta daje dość dobre wyniki, gdyż prowadzi do zachowania różnorodności osobników na każdej wyspie.

Metody wyboru osobników do migracji. Maximum Gap Allowed (MGA) Metoda ta próbuje zapobiec nie wyrównanej wymianie genotypów poprzez użycie progu akceptowalności (acceptance threshold) dla przychodzących łańcuchów. Unika ona wprowadzania zbyt dobrych osobników (elitarnych), które mogłyby zdominować populację, poprzez określenie maksymalnej akceptowalnej różnicy między miarami dopasowania najlepszego lokalnego osobnika i osobnika migrującego do danej populacji.

Metody wyboru osobników do migracji. Dynamic Arbiter Strategy (DAS) Pozwala na niezależną ewolucję podpopulacji jednak podejmując działania w przypadku wykrycia stagnacji. W takim przypadku próbuje uniknąć wpadnięcia w lokalne minimum poprzez dodanie do populacji osobników znacznie różniących się od istniejących w celu przywrócenia różnorodności. Arbiter zbiera dane o średnim, najlepszym i najgorszym przystosowaniu osobników populacji i na ich podstawie określa które populacje zagrożone są stagnacją. Jeśli znajdzie takie populacje to dokonuje migracji: IF najlepszy globalny osobnik nie rezyduje w źródłowej populacji THEN migruj najlepszego globalnego osobnika ELSE migruj najgorszego globalnego osobnika

Metody wyboru osobników do migracji. Combined MGA-DAS Strategy (CMGA-DAS) Połączenie metod MGA i DAS powstaje przez proste dodanie kryterium akceptowalności metody DAS w momencie wyboru osobników do migracji.

Competition and Cooperation W standartowym PEA (Parallel Evolutionary Algorithm) wszystkie podpopulacje używają tych samych parametrów. Model współzawodniczących populacji określa dla każdej podpopulacji inną strategię (inne parametry np. krzyżowania i mutacji) przestrzeń rozwiązań przeszukiwana jest za pomocą różnych strategii. ranking podpopulacji na podstawie najlepszego dostosowania średniego dostosowania podpopulacji. Współzawodniczenie populacji osiąga się przez dostarczanie większej ilości zasobów lepszym populacjom, dobre populacje otrzymują również osobników z nieudanych populacji.

Competition and Cooperation Wprowadzenie współzawodniczenia owocuje w pewnym sensie automatycznym wybieraniem lepszych strategii metod wartości parametrów we właściwym czasie.

Competition and Cooperation Przykład: 3 podpopulacje używające różnych strategii: podpopulacja 1: brutalne szukanie (duże kroki mutacji) podpopulacja 3: gładkie szukanie (małe kroki mutacji) funkcja RASTRIGINa nr 6, n = 20, - 500 < x < 500

Injection island GA - iiGA Hierarchiczny model równoległy podpopulacje zorganizowane są w hierarchię różne reprezentacje na każdym z poziomów przykład modelu z rywalizacją. posiada wadę: dla każdej podpopulacji (a w szczególności dla podpopulacji o najwyższym poziomie) wciąż istnieje ryzyko wpadnięcia w lokalne minimum. próbuje rozwiązać problem przedwczesnej zbieżności głównie poprzez użycie kilku podpopulacji na każdym poziomie oraz przez użycie mechanizmów takich jak crowding, zamiast bezpośrednio za pomocą hierarchii jak to robi HFC.

Hierarchical Fair Competition parallel model HFC

Hierarchical Fair Competition powody przedwczesnej zbieżności selection pressure (napór selekcyjny) promowanie najlepiej dopasowanych eliminacja młodych osobników, które mogą być obiecujące dyskryminacja „nie fair” dobrego kodu genetycznego.

Hierarchical Fair Competition poziomy na podobieństwo szkolnictwa:

Hierarchical Fair Competition szeroka eksploracja przestrzeni poszukiwań młode osobniki nie rywalizują z dorosłymi podobieństwo do natury usuwane są osobniki bez perspektyw admission threshold bardzo dobre wyniki

DGA/rmr DGA with random migration rate losowo wybierane jest: osobniki do migracji ich liczba wyspa docelowa

DGA/rmr Losowa liczba osobników migruje zmienna liczność podpopulacji marnowanie czasu na synchronizację popdpopulacji Zaletą DGA/rmr jest „adaptacyjne” dobieranie migration rate. Testy wykazują, że losowość tego parametru jest dobrym rozwiązaniem i daje całkiem dobre wyniki.

DGA/rmr - właściwości Gdy wielkość populacji jest wystarczająco duża rozwiązania są niezależne od migration rate i migration interval. Gdy natomiast wielkość populacji jest zbyt mała rozwiązania zależą od tych parametrów dość ciężko jest znaleźć optymalne ich wartości Osiąga dobre wyniki dla różnych wartości migration interval zarówno dla funkcji Rastrigina jak i Rosenbrocka. Sugeruje to, że wartości tych parametrów nie muszą być zdefiniowane żeby znaleźć dobre rozwiązania. Wada: strata czasu na synchronizację.

Podsumowanie Migracyjne algorytmy ewolucyjne okazują się rozwiązaniem bardzo dobrym, dającym lepsze wyniki niż tradycyjne EA, na dodatek w krótszym czasie. Metody te mają ponadto zdolność do unikania przedwczesnej zbieżności co owocuje lepszym przeszukaniem przestrzeni rozwiązań i niejednokrotnie znalezieniem minimum globalnego, gdy tradycyjne EA znajdują jedynie minima lokalne zbliżone do globalnego. Niewątpliwą zaletą PEA jest również możliwość ich równoległego wykonywania co dodatkowo radykalnie zwiększa szybkość obliczeń. Za pomocą PEA istnieje także możliwość stworzenia współzawodnictwa różnych metod, co prowadzi do automatycznego wybrania tych lepszych wraz z odpowiednimi wartościami parametrów we właściwym czasie. Wśród metody tych należy wyróżnić model Hierarchical Fair Competition HFC jako najciekawszy i dający najlepsze rezultaty algorytm opierający się w całości na analogii z naturą i systemami szkolnictwa. Wyraźnie dobre wyniki osiągane są również za pomocą algorytmu DGA/rmr.

Obliczenia testowe

Algorytm wyspowy Optymalizacja funkcji dwóch zmiennych Użytkownik ma możliwość podania następujących parametrów: funkcji: wzór funkcji przedziały dla każdej zmiennej na którym ma być znalezione minimum algorytmu wyspowego rozmiar populacji i liczba wysp współczynnik migracji czas migracji liczba pokoleń prawdopodobieństwo krzyżowania i mutacji dokładność z jaka ma być liczone minimum

Schemat blokowy algorytmu wyspowego

Schemat blokowy algorytmu genetycznego (jedno pokolenie)

Schemat blokowy migracji (jeden poziom hierarchii)

Instrukcja obsługi Po rozpoczęciu programu użytkownik ma możliwość wykonania jednej z dwóch czynności: • Rozpoczęcie liczenia minimum funkcji – przycisk Znajdź min • Zakończenie programu – przycisk Koniec. Aby rozpocząć liczenie minimum należy wypełnić wszystkie pola w oknie programu. Po naciśnięciu przycisku Znajdź min, wszystkie pola i przyciski zostają wyłączone. Następnie wyświetla się pole wykresu i algorytm zaczyna liczyć minimum zadanej funkcji, cały czas pokazując użytkownikowi aktualne dane (numer pokolenia, wartość najlepszego osobnika z 3 poziomów hierarchii: najniższego, środkowego i najwyższego). Po zakończeniu liczenia użytkownik dostaje trzy nowe opcje: • Może wyświetlić średniego dopasowania poszczególnych pokoleń – przycisk Wykres dopasowania (wyświetla średnie dopasowanie z każdego pokolenia, oraz najlepszego osobnika z ostatniego pokolenia dla 3 poziomów hierarchii: najniższego, środkowego i najwyższego) • Może wyświetlić ponownie ostatni widok wykresu funkcji – przycisk Wykres funkcji • Może ponownie rozpocząć obliczenia – przycisk Nowa funkcja (jego naciśnięcie ponownie włącza wszystkie wyłączone elementy okna przez przycisk Znajdź min).

Algorytm migracyjny  algorytm_wyspowy – funkcja odpowiadająca za działanie algorytmu migracyjnego  migracja – funkcja odpowiadająca za migrację między poziomami hierarchii  oblicz_progi – funkcja licząca progi akceptacji po każdej migracji (próg to średnie dopasowanie na danej wyspie)  podaj_naj – funkcja podająca najlepszego osobnika z danej wyspy  podaj_srednie – funkcja podaje średnie dopasowanie osobników danej wyspy w danym pokoleniu  podziel_na_wyspy – funkcja odpowiada na podzielenie początkowej, losowej populacji na liczbę wysp zadaną przez użytkownika  selekcja_do_migracji – funkcja selekcjonująca osobniki, które spełniają warunek do migracji, z danej wyspy  selekcja_elitarna – funkcja selekcjonująca metodą elitarną osobników wśród osobników danej wyspy i migrantów (wynikiem jest podpopulacja rozmiarów danej wyspy)  stworz_populacje – funkcja odpowiadająca za utworzenie losowe populacji początkowej

Lokalny SGA  algorytm_genetyczny – funkcja odpowiadająca za działanie algorytmu genetycznego dla jednego pokolenia na danej podpopulacji (wyspie)  dekoduj – funkcja odczytuje wartość zakodowaną binarnie w chromosomie  jaka_dlugosc – funkcja licząca długość chromosomu, w zależności od podanych przedziałów i precyzji  krzyzowanie – funkcja realizująca operator krzyżowania (zwracanych jest 2 najlepszych z rodziców i potomków)  mutacja – funkcja realizująca operator mutacji  ocena – funkcja licząca dopasowanie osobników w populacji  selekcja_turniej – funkcja realizująca selekcje metodą turniejową (maksymalna wielkość turnieju to liczba równa połowie osobników w danej podpopulacji)

Wnioski W programie liczymy minimum funkcji dwóch zmiennych. Zmienną x i y umieszczamy w tym samym chromosomie. Przy precyzji 5 i długości przedziału około 2 długość zakodowanej danej wynosi 15. Ponieważ kodujemy 2 zmienne naraz długość ta wynosi już 30. Przy większych przedziałach długość ta zwiększa się znacznie, co powoduje dużą ilość obliczeń. Do macierzy, w której przechowywane są osobniki, dołożyliśmy 3 kolumny. W pierwszej z nich znajduje się odkodowana wartość zmiennej x, w drugiej wartość zmiennej y, a w trzecie wartość funkcji dopasowania. Obliczenia nowego dopasowania są wykonywane w momencie krzyżowania i tylko dla potomków oraz jeśli zajdzie mutacja co najmniej jednej pozycji chromosomu. Dzięki ograniczeniu ilości obliczeń zmniejszyliśmy koszt obliczeniowy programu

Wnioski Ponieważ metoda HFC korzysta z prostego algorytmu genetycznego wykonywanego na każdej wyspie, istotny jest odpowiedni dobór prawdopodobieństwa krzyżowania i mutacji. Bardzo dobre wyniki otrzymywaliśmy dla pk=90% i pm=5% (wykres 1). Sprawdziliśmy także inne warianty (wykresy 2, 3, 4): • pk=5% i pm=90% - w tym przypadku dopasowanie poszczególnych podpopulacji znacznie spadło, a wahanie dopasowania miedzy kolejnymi pokoleniami są znaczne; dopasowania miedzy poziomami znacznie się różniły (najlepszy osobnik z poziomu 1 był lepszy niż z poziomu 3) • pk=5% i pm=5% - w tym przypadku dopasowanie populacji również spadło, ale nie dużo i nie wystąpiły wielkie wahania między pokoleniami, wyniki nie były tak złe • pk=90% i pm=90% - w tym przypadku dopasowanie poszczególnych podpopulacji również spadło znacznie, a między pokoleniami są znaczne wahania w dopasowaniu; również i w tym przypadku najlepszy osobnik z poziomu 1 był lepszy niż z poziomu 3

Wnioski Ponieważ model HFC jest algorytmem wyspowym, to istotnym parametrem dla niego jest liczba wysp. Sprawdziliśmy to dla 3 różnych wartości (rozmiar populacji wynosił 100): • 1 wyspa – zwykły algorytm genetyczny (wykresy 5, 6) – otrzymane wyniki są bardzo dobre, jednak średnie dopasowanie populacji odbiega od najlepszego osobnika o około 10 • 5 wysp - model gruboziarnisty (wykresy 7, 8) – otrzymane wyniki są bardzo dobre zarówno dla najniższego poziomu jak i najwyższego; średnie dopasowanie najwyższego poziomu hierarchii jest bliższe najlepszemu osobnikowi, niż było to w przypadku 1 wyspy • 20 wysp - model drobnoziarnisty (wykresy 9, 10) – otrzymane wyniki końcowe nie są zadawalające, są zdecydowanie gorsze od otrzymanych mniejszej ilości wysp; średnie dopasowanie bardzo oscyluje, niższe poziomy otrzymują znacznie lepsze wyniki niż wyższe.

Wnioski Z powyższych wyników można wywnioskować, że zdecydowanie najlepsze rezultaty otrzymuje się stosując algorytm genetyczny lub algorytm wyspowy typu gruboziarnistego. Spowodowane jest to tym, że poszukiwania odbywają się równolegle na kilku podpopulacjach, jednak ilość osobników na każdej z nich umożliwia przeszukiwanie sporego obszaru rozwiązań. Ich liczba umożliwia duży napór selekcyjny z zachowaniem różnorodności genetycznej. W momencie, gdy mamy dużą liczbę wysp, ale o małej liczebności, napór selekcyjny mamy również duży, ale różnorodność genetyczna jest zbyt mała. Dodatkowo jedna przypadkowa mutacja może spowodować, że osobnik będzie miał bardzo duże przystosowanie lub bardzo małe, a wyniku podobne dopasowanie będzie na całej wyspie. Osobniki migrujące nie będą się od siebie znacznie różniły. Dodatkowo mogą wprowadzać znaczne oscylacje w dopasowaniu poszczególnych poziomów hierarchii, co w efekcie końcowym da słabe wyniki, co widać na wykresach 9 i 10.

Wnioski Ważnym elementem w algorytmach wyspowych jest migracja. Podczas przejścia na wyższy poziom hierarchii osobnik musi mieć dopasowanie wyższe niż próg akceptacji (średnie dopasowanie danej podpopulacji). Zastosowano dynamiczną zmianę progu akceptacji Jest on liczony po stworzeniu wysp oraz po każdej migracji. Dzięki temu dopasowuje się on do aktualnie panujących warunków i umożliwia przejście tylko najlepszym osobnikom. Zbadano także jak zachowuje się model HFC typu grubo i drobnoziarnistego w zależności od wielkości współczynnika migracji (0.3, 0.6, 0.9): • model gruboziarnisty (wykresy 11, 8, 13) • model drobnoziarnisty (wykresy 12, 10, 14) W obu przypadkach zdecydowanie lepsze wyniki zostały uzyskane dla współczynników migracji równych 0.6 i 0.9 niż dla 0.3. Można stwierdzić, że zbyt niski współczynnik migracji zdecydowanie pogarsza efektywność modelu HFC. Już 0.6 powoduje bardzo dobre wyniki. Podniesienie o kolejne 0.3 powoduje również polepszenie efektywności algorytmu. W przypadku modelu drobnoziarnistego jest ona bardziej widoczna niż w modelu gruboziarnistym.

Literatura 1. Tomoyuki HIROYASU, Mitsunori MIKI and Masami NEGAMI „Distributed Genetic Algorithms with Randomized Migration Rate” 2. Jian Jun. Hu, Erik D. Goodman „The Hierarchical Fair Competition (HFC) Model for Parallel Evolutionary Algorithms” 3. Gallard R.H., Esquivel S. C. “Enhancing Evolutionary Algorithms Through Recombination and Parallelism” 4. Hartmut Pohlheim (DaimlerChrysler AG, Research & Technology) “Competition and Cooperation in Extended Evolutionary Algorithms”

Literatura dodatkowa 5. D.E.Goldberg “Algorytmy genetyczne i ich zastosowania” 6. Jeffrey Horn “The Nature of Niching: Genetic Algorithms and The Evolution of Optimal, Cooperative Population” 7. J.Arabas "Wykłady z algorytmów ewolucyjnych" 8. J. Nang and K. Matsuo, A Survey on the Parallel Genetic Algorithms, 9. V. S. Gordon and D. Whitley, Serial and Parallel Genetic Algorithms as Function Optimizers 10. Bäck T. ”Evolutionary algorithms in theory and practice” 11. Belding T.C. “The Distributed Genetic Algorithm Revisited” 12. Ochoa C., Gallard R. “Strategies for Migration Overseeing in Asynchronous Schemes of Parallel Genetic Algorithms” 13. Tanese R. “Distributed Genetic Algorithms”

Internet Freeware and Shareware Tools for Evolutionary Computation: http://www.emsl.pnl.gov:2080/proj/neuron/evolve/systems/shareware.html http://www.geatbx.com/docu/algparal.html Source Code Collection for GA programs: http://www.aic.nrl.navy.mil/galist/src/