Równoległe algorytmy genetyczne w optymalizacji kombinatorycznej

Slides:



Advertisements
Podobne prezentacje
PRAM.
Advertisements

Instrukcje - wprowadzenie
C++ wykład 13,14,15 (16/23/ ) STL.
„Wielokryterialna optymalizacja pracy systemu wytwarzania o strukturze przepływowej – algorytm memetyczny” Przygotował: Dominik Żelazny, IIAR.
ALGORYTMY GRAFOWE.
METODY ANALIZY PROGRAMÓW
Grażyna Mirkowska PJWSTK 15 listopad 2000
Metody Analizy Programów Wykład 02
Wprowadzenie do optymalizacji wielokryterialnej.
Kolorowanie grafów Niech G = (V, E) będzie spójnym grafem nieskierowanym bez pętli. Kolorowaniem wierzchołków grafu nazywa się przypisanie wierzchołkom.
Wykład 06 Metody Analizy Programów System Hoare
Minimalne drzewa rozpinające
Zadanie z dekompozycji
Programowanie genetyczne (Genetic Programming)
ALGORYTMY I STRUKTURY DANYCH
ALGORYTMY I STRUKTURY DANYCH
ALGORYTMY I STRUKTURY DANYCH
Algorytmy genetyczne Motto:
Stochastyczne modele gier ewolucyjnych Jacek Miękisz Instytut Matematyki Stosowanej i Mechaniki Uniwersytet Warszawski.
Hybrydowe metody optymalizacji geometrii. Prezentacja wyników.
Domknięcie przechodnie (również) w bazach danych
ZŁOŻONOŚĆ OBLICZENIOWA
Turbo pascal – instrukcje warunkowe, iteracyjne,…
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 7: Procedury i funkcje © Jan Kaczmarek.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 8: Wykorzystanie procedur i funkcji © Jan Kaczmarek.
WYKŁAD 8. Siła spójności A,B – dowolne podzbiory V(G)
Imperatywne modele obliczeń Copyright, 2001 © Jerzy R. Nawrocki Wprowadzenie do.
Imperatywne modele obliczeń Copyright, 2003 © Jerzy R. Nawrocki Teoretyczne podstawy.
Rekursja Copyright, 2004 © Jerzy R. Nawrocki Teoretyczne podstawy informatyki.
Nieelitystyczne algorytmy ewolucyjnej optymalizacji wielokryterialnej
Ulepszenia metody Eigenfaces
Kurs Pascala – spis treści
ZŁOŻONOŚĆ ALGORYTMÓW RÓWNOLEGŁYCH
LITERATURA M.Ben-Ari, Podstawy programowania współbieżnego i rozproszonego, WN-T, 1996 I.Foster, Designing and Building parallel programs, Cocepts and.
by Ernest Jamro Katedra Elektroniki, AGH Kraków
Instrukcje 1 Definicje wstępne Formalny opis akcji wykonywanej przez komputer nazywamy instrukcją ( statement), Każda instrukcja kończona jest średnikiem.
Życiorys mgr inż. Jacek Dąbrowski Wykształcenie: Praca zawodowa
Migracyjne ( Wyspowe ) Algorytmy Ewolucyjne
Algorytmy genetyczne.
Algorytmy genetyczne.
Rainer Storn Kenneth Price DE
Algorytmy Genetyczne Wprowadzenie.
Algorytmy immunologiczne
Algorytm genetyczny.
Algorytmy memetyczne i ich zastosowania
Algorytmy i struktury danych
1 Wykład 8 Podprogramy. 2 Pojęcie i istota stosowania dzielenie programu na części (logicznie spójne) - nazwane - niezależne od pozostałych części - z.
Rodzaje, przechodzenie grafu
Model I/O bazujący na HSWN Problem uczenia sieci HSWN
Koncepcja procesu Zadanie i proces. Definicja procesu Process – to program w trakcie wykonywania; wykonanie procesu musi przebiegać w sposób sekwencyjny.
Dana jest sieć dystrybucji wody w postaci: Ø      m- węzłów,
Użytkowanie i programowanie Matlaba
Informatyka MZT1 Wykład 6 Iteracje while i repeat Tablice Rekordy
Wykład 10 typ zbiorowy rekurencja.
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
III EKSPLORACJA DANYCH
Urszula Boryczka Testy De Jonga Urszula Boryczka
Algorytmika Iteracje autor: Tadeusz Lachawiec.
Wyszukiwanie maksimum funkcji za pomocą mrówki Pachycondyla Apicalis.
ALGORYTMY I STRUKTURY DANYCH WYKŁAD 03 cd. Wyszukiwanie Grażyna Mirkowska PJWSTK, 2003/2004.
WYKŁAD 06 Programowanie dynamiczne Grażyna Mirkowska.
Algorytmy Genetyczne Anna Tomkowska Politechnika Koszalińska
Algorytmy równoległe Algorytm równoległy pozwala na wykonywanie w danej chwili więcej niż jednej operacji. EREW - wyłączny odczyt i wyłączny zapis; CREW.
SZTUCZNA INTELIGENCJA
ZPT 1 Dekompozycja nierozłączna Pojęcie r - przydatności Dekompozycja zrównoważona Dekompozycja równoległa.
Pojęcia podstawowe c.d. Rachunek podziałów Elementy teorii grafów
Etapy procesu sterowania rozmytego
Indeksy drzewiaste. ISAM ISAM - INDEXED SEQUENTIAL ACCESS METHOD Problem: –Dany jest plik uporządkowany – w jaki sposób zrealizować efektywnie zapytanie.
Kompilacja iteracyjna Piotr Błaszyński. Szybkie programy Prawa ograniczające:  prawo Moore'a (jego granice),  prawo Gatesa,  prawo Amdahla,  prawo.
ALGORYTMY I STRUKTURY DANYCH
Zapis prezentacji:

Równoległe algorytmy genetyczne w optymalizacji kombinatorycznej POLITECHNIKA KRAKOWSKA ZAKŁAD AUTOMATYKI Równoległe algorytmy genetyczne w optymalizacji kombinatorycznej wykład monograficzny Kraków, 28 II 2005

Plan wykładu Przykładowy problem - kolorowanie grafu Podstawowe modele równoległych algorytmów genetycznych Operatory krzyżowania i mutacji Funkcje kosztu i dopasowania Program PGA_for_GCP Wyniki badań symulacyjnych Wnioski

Problem kolorowania grafu Def. Kolorowanie wierzchołków grafu G=(V, E) jest funkcją c: V -->N, spełniającą warunek, że każdej parze sąsiednich wierzchołków u,v є V przyporządkowane są różne kolory, t.j. {u, v} є E => c(u) != c(v). Problem kolorowania grafu jest NP-trudny.

Równoległe algorytmy genetyczne - kryteria klasyfikacji Liczba populacji : jedna, wiele Typy populacji : rozłączne, nakładające się Topologie populacji : różne modele grafowe Modele interakcji : izolacja, migracje, dyfuzja Rekombinacja , ocena osobników, selekcja : rozproszona / lokalna, scentralizowana / globalna Synchronizacja na poziomie iteracji: algorytm synchroniczny / asynchroniczny

Modele równoległych algorytmów genetycznych master-slave jedna globalna populacja, globalne operacje genetyczne, funkcje dopasowania obliczane przez procesory slave masywnie równoległy (komórkowy) statyczne nakładające się podpopulacje z lokalną strukturą, lokalne operacje genetyczne i ocena migracyjny (przypadkiem szczególny: wyspowy) statyczne rozłączne podpopulacje/wyspy, lokalne operacje genmetyczne i migracja hybrydowy (przyspieszenie S=SU*SL) kombinacja modelu migracyjnego na wyższym poziomie i dowolnego modelu na poziomie wyższym

Algorytm master–slave procedure pga_master_slave begin t := 0 ; initialization of P0 ; evaluation of P0 ; while (not termination condition) do Tt := reproduction of Pt ; transfer to slaves do in parallel Ot := genetic operations on Tt ; evaluation of Ot ; transfer to master end ; Pt+1 := succession ( Pt, Ot ) ; t := t+1; end; end P0 - initial population Pt - base population Ot - offspring population Tt - temporary population M S S S S

Algorytm migracyjny dla podpopulacji procedure: pga_for_subpopulation begin t = 0 ; initialization P0 ; evaluation P0 ; while (not termination condition) do Tt = reproduction of Pt ; Ot = genetic operations on Tt ; evaluation of Ot ; Pt+1 = succession (Pt, Ot) ; if (migration condition) then migration of selected individuals t = t + 1; end ; end P0 - initial population Pt - base population Ot - offspring population Tt - temporary population

Operatory mutacji i krzyżowania Sum-Product Partition Crossover (SPPX) nowy operator, w którym operacje sumy i iloczynu zbiorów są wykonywane na wybranych losowo blokach podziałów z chromosomów rodzicielskich, ponadto Prob(SUM) >Prob(PRODUCT) Conflict Elimination Crossover (CEX) nowy operator, kolory powodujące konflikty w każdym rodzicu są zastępowane przez kolory skopiowane z drugiego rodzica Union Independent Set Crossover (UISX) Gready Partition Crossover (GPX) Transposition Mutation First Fit Mutation

Krzyżowanie SPPX (I) suma wylosowanych bloków podziałów p ={1,8}{2,7} {3,10}{4,6}{5,9} r ={1}{2,8}{3,7,10}{4,9}{5,6} s ={1,8}{2,7}{3,4,9,10}{5}{6} t ={1}{2,8}{3,4,9,10}{5,6}{7}

Krzyżowanie SPPX (II) iloczyn wylosowanych bloków podziałów p={1,8}{2,7} {3,10} {4,6} {5,9} r={1}{2,8}{3,7,10}{4,9}{5,6} s={1,8}{2}{3,10}{4,6}{5,9}{7} t={1}{2,8}{3,10}{4,9}{5,6}{7}

Krzyżowanie CEX p = <5,2,3,4,1,4,2,5,1,3> r = <1,4,5,2,3,3,5,4,2,5> s = <5,2,5,2,1,3,2,5,1,5> t = <1,4,3,2,3,3,2,4,2,3>

Krzyżowanie UISX (I) (Dorne, Hao 1998) p={1,8}{2,7}{5,9} r= {1}{2,8}{4,9}{5,6} s={1,2,8} max IS = {1,8} 2 max iloczyny suma z {2,8} p={7} {5,9} r={4,9}{5,6} s={1,2,8}{4,5,9} 1 max iloczyn max IS = {4,9} suma z {5,9} p={7} r={6} s={1,2,8}{4,5,9}{7} max IS = {7} iloczyn = Φ suma z Φ p=Φ r={6} s={1,2,8}{4,5,9}{6}{7} iloczyn = Φ max IS = {6} suma z Φ

Krzyżowanie UISX (II) (Dorne, Hao 1998) p={1,8}{2,7} {5,9} r={1}{2,8}{4,9}{5,6} t={5,6,9} 1 max iloczyn max IS = {5,6} suma z {5,9} p={1,8}{2,7} r= {1} {2,8} {4} t={2,7,8}{5,6,9} max IS = {2,7} 1 max intersection suma z {2,8} p={1} r={1}{4} t={2,7,8}{4}{5,6,9} iloczyn = Φ max IS = {4} suma z Φ p={1} r={1} t={1}{2,7,8}{4}{5,6,9} max IS = {1} 1 max iloczyn suma z {1}

Krzyżowanie GPX (Galinier, Hao 1999) p ={1,8}{2,7}{3,10}{4,6}{5,9} r ={1}{2,8}{3,7,10}{4,9}{5,6} p ={1,8}{2,7}{3,10}{4,6}{5,9} r ={1}{3,10}{4,9}{5,6}{8} p ={1,8}{3,10}{5}{6} r ={1}{5,6}{8} p ={1,8} r = Φ s ={1,8}{2,7}{3,10}{4,9}{5,6} s ={1,8}{2}{3,7,10}{4,6}{5,9}

Operatory mutacji Transposition First Fit p = <5,2,3,4,1,4,2,5,1,3> r={1}{2,8}{3,7,10}{4,9}{5,6} s = <5,2,5,4,1,4,2,3,1,3> r={1,3}{2,7,8}{4,9,10}{5,6}

Funkcje kosztu i dopasowania Dla oceny zastosowano następującą funkcję kosztu : f(p) = Σq(u,v) + d + k, gdzie: q(u,v)=2, gdy c(u)=c(v), inaczej q(u,v)=0; d=1, gdy Σq(u,v)>0 , lub d=0, gdy Σq(u,v)=0; k – liczba użytych kolorów. W algorytmie PGA zastosowano proporcjonalną selekcję z funkcją dopasowania 1/ f(p).

Program symulacyjny PGA_for_GCP

Konfiguracja i dostrojenie PGA rozmiar globalnej populacji krzyżowanie : SPPX, CEX, UIS, GPX mutacja : Transposition, First Fit selekcja : proporcjonalna Model M-S Model wyspowy liczba procesorów slave liczba wysp schemat migracji rozmiar migracji częstość migracji

Badania symulacyjne wyznaczenie optymalnej liczby procesorów slaves w modelu M-S koszt najlepszego osobnika w funkcji czasu na izolowanych wyspach w modelu migracyjnym wpływ odstępu pomiędzy migracjami na koszt optymalnego rozwiązania wpływ schematu migracji na efektywność PGA mierzoną liczbą iteracji potrzebnych dla wyznaczenia optymalnego rozwiązania porównanie czterech operatorów krzyżowania w modelu migracyjnym

Czas obliczeń równoległych jako funkcja liczby procesorów w modelu master-slave

Koszt najlepszych rozwiązań na izolowanych wyspach w funkcji liczby iteracji

Koszt najlepszego rozwiązania jako funkcja częstości migracji

Efektywność schematów migracji w modelu wyspowym PGA graph vertices edges colors migration scheme best random none n David 87 406 11 77 121 114 Games120 120 638 9 41 64 72 Myciel7 191 2360 8 54 94 86 Queen5 25 160 5 46 78 75 Mulsol.i.4 185 3946 31 1004 1307 2680

Porównanie efektywności czterech operatorów krzyżowania

Wnioski (I) 1. W modelu Master-Slave istnieją różne optymalne liczby procesorów slave zapewniające minimum czasu obliczeń w systemie, maksymalne przyspieszenie (speedup) i maksymalne przyspieszenie na jednostkę kosztu (speedup over cost). 2. Po przekroczeniu pewnej liczby procesorów slave model Master-Slave staje się nieefektywny ze względu na koszt komunikacji i synchronizacji. 3. W modelu Master-Slave przestrzeń wyszukiwania jest taka sama jak w konwencjonalnym modelu GA. 4. W modelu wyspowym migracja jest zawsze lepsza niż izolacja i istnieje optymalny odstęp pomiędzy migracjami zapewniający najlepszą efektywność algorytmu mierzoną liczbą iteracji potrzebną dla wyznaczenia rozwiązania optymalnego.

Wnioski (II) 5. Dla wszystkich testowanych grafów migracja najlepszych osobników jest zawsze najbardziej efektywna. Migracja losowych osobników jest użyteczna tylko w przypadku dużych grafów jak mulsol.i.4. 6. Najlepszym operatorem krzyżowania okazał się CEX (5 najlepszych wyników), drugim jest UISX. Trzecie miejsce przypadło SPPX (1 najlepsze rozwiązanie - średnio więcej iteracji ale prosty operator), a ostatnie GPX, który jest relatywnie najbardziej złożony. 7. Mutacja First Fit w problemach kolorowania działa lepiej niż Transposition (najlepsza jest jej kombinacja z operatorem CEX ). 8. W modelu wyspowym przestrzeń wyszukiwania jest przeglądana efektywnie dzięki koewolucji w podpopulacjach i okresowej migracji.

Wnioski (III) 9. W modelu migracyjnym można zaobserwować szybszą konwergencję w kierunku rozwiązania optymalnego i algorytm lepiej unika maksimów lokalnych. 10. Rola migracji podczas wykonywania algorytmu zmienia się z mechanizmu zapewniającego szybkie ulepszenie populacji najgorszych wysp w początkowej fazie obliczeń na mechanizm intensywnej eksploracji najbardziej atrakcyjnych regionów przestrzeni rozwiązań w późniejszych fazach procesu koewolucji. 11. Korzyści modelu migracyjnego można uzyskać także w procesie symulowanej koewolucji w algorytmie sekwencyjnym.

Koniec i bomba, a kto czytał ten trąba ! 1, 2 1 wykład opracowany w Roku Gombrowiczowskim, AD 2004 2 powiedzenie służącej, Anieli ”Ciemnej”, którym Jaśniepanicz Witold zakończył Ferdydurke