plik


Katedra Podstaw Konstrukcji Maszyn WydziaB Mechaniczny Technologiczny Metody Sztucznej Politechnika Inteligencji Zlska Rok akademicki 2008/09 Instrukcja do wiczeD laboratoryjnych Temat Algorytmy genetyczne OpracowaB: dr in|. G. Urbanek ul. Konarskiego 18a 44-100 Gliwice tel. 237 1467 fax. 237 1360 http://kpkm.polsl.pl - 1/6 - 1. Cel wiczenia Celem wiczenia jest zapoznanie si z algorytmami genetycznymi oraz z ich praktycznym zastosowaniem. 2. Wprowadzenie teoretyczne Poszukiwanie rozwizania optymalnego wedBug algorytmu genetycznego odbywa si poprzez odpowiednie przeksztaBcanie zbioru elementw (osobnikw) za pomoc tzw. operatorw ge- netycznych. Zbir elementw (osobnikw) w danej chwili czasu nazywany jest pokoleniem, zbir ten przeksztaBcony za pomoc operatorw genetycznych stanowi kolejne pokolenie; prze- ksztaBcenie takie wykonuje si n-razy. Elementy (osobnicy) przeksztaBcanego zbioru nale| do przestrzeni zadania i s potencjalnymi rozwizaniami. Ka|dy element (osobnik) zawiera informacj stanowic jego genotyp, ktry jest przepisem na utworzenie w wyniku oddziaBywa- nia [rodowiska fenotypu, czyli zbioru cech, na podstawie ktrych funkcja oceniajca (funkcja przystosowania), okre[la przystosowanie osobnika. Celem algorytmu genetycznego jest mak- symalizacja funkcji przystosowania, tzn. rozwizaniem optymalnym jest osobnik o najwikszej warto[ci funkcji przystosowania. Genotyp osobnika skBada si z chromosomw (najcz[ciej jednego), ktre skBadaj si z elementarnych cz[ci, zwanych genami. PrzykBadowo, w zadaniu optymalizacji (poszukiwaniu maksimum) funkcji f, genotypem osobnika s wspBrzdne punktu, fenotypem jest warto[ funkcji f w tym punkcie. Warto[ funkcji przystosowania jest wyliczana na podstawie fenotypu. Istot dziaBania algorytmu genetycznego przedstawia rys. 1. Przeprowadzenie optymalizacji za pomoc algorytmu genetycznego wymaga okre[lenia na- stpujcych elementw: Rys. 1: Podstawowy algorytm genetyczny; oznaczenia: t  czas (licznik krokw), P  populacja, R  rodzice, D  dzieci [5], [3] - 2/6 - " podstawowej reprezentacji potencjalnych rozwizaD zadania, " sposobu tworzenia pocztkowej populacji potencjalnych rozwizaD, " funkcji oceniajcej, " sposobu prowadzenia selekcji i sukcesji, " sposobu prowadzenia reprodukcji (operatory krzy|owania i mutacji), " warto[ci r|nych parametrw u|ywanych w algorytmie genetycznym (rozmiar populacji, prawdopodobieDstwa u|ycia operatorw genetycznych itp.). 2.1. Reprezentacja potencjalnych rozwizaD zadania Metody reprezentacji elementw przestrzeni (nazywanych osobnikami), w ktrej poszukiwane jest rozwizanie optymalne mo|na podzieli na dwie grupy [3]: 1. chromosomy z liniowo uBo|onymi genami: " kodowanie binarne, " kodowanie liczbowe, " kodowanie specjalne, 2. chromosomy bdce zBo|onymi strukturami genw (np. drzewa) " kodowanie binarne, liczbowe, specjalne. Powszechnie w algorytmach genetycznych stosowane s chromosomy z liniowo uBo|ony- mi genami kodowanymi binarnie. Warto[ci wszystkich cech (geny) ka|dego osobnika zostaj przedstawione za pomoc liczb dwjkowych;  sklejone razem stanowi chromosom. Repre- zentacja ta uBatwia analiz teoretyczn i umo|liwia wprowadzenie bardzo prostych operatorw genetycznych. GBwn jej wad jest bardzo du|a dBugo[ chromosomu dla wielowymiarowych zadaD wymagajcych du|ej dokBadno[ci, co prowadzi do bardzo du|ej liczebno[ci przestrzeni przeszukiwania [5]. Innym sposobem jest zapis warto[ci cech (genw) w postaci dziesitnej. Chromosom ma wtedy posta macierzy liczb, ka|da liczba jest warto[ci jednej z rozpatrywanych cech. Taki zapis eliminuje konieczno[ kodowania chromosomw (przestrzeD reprezentacji jest przestrze- ni zadania). Stosowanie chromosomw, bdcych zBo|onymi strukturami genw, wymaga opracowania odpowiednich operatorw genetycznych. 2.2. Generowanie rozwizania pocztkowego Populacja pocztkowa najcz[ciej (chyba |e s uzasadnione podstawy, |eby postpi inaczej) generowana jest w sposb losowy. W przypadku kodowania binarnego losuje si warto[ ka|dego bitu chromosomu (BaDcucha binarnego) i w ten sposb tworzy si caB populacj. W przypadku - 3/6 - kodowania liczbowego, warto[ ka|dego genu jest losowana z przedziaBu zmienno[ci warto[ci cechy, ktr on reprezentuje. 2.3. Funkcja oceniajca Funkcja oceniajca jest jednym z najwa|niejszych elementw warunkujcych skuteczne dziaBa- nie algorytmu genetycznego. Nieodpowiednia funkcja oceniajca prowadzi do bBdnego dziaBa- nia. Niestety, nie istnieje oglny  przepis na opracowanie dobrej funkcji oceniajcej. Funkcj tak zwykle wyznacza si metod  prb i bBdw indywidualnie do konkretnego zadania. 2.4. Selekcja i sukcesja Selekcja okre[la sposb wyBaniania z rozpatrywanej populacji zbioru rodzicw, ktry poddawany dziaBaniu operacji genetycznych, daje zbir dzieci. Sukcesja wyznacza dla pokolenia rodzicw i potomkw now populacj bazow dla kolejnego kroku algorytmu genetycznego. PrzykBady metod selekcji: " selekcja proporcjonalna, zwana rwnie| metod ruletki (nazwa pochodzi od najprostszej realizacji algorytmicznej tego operatora), jest procesem, w ktrym chromosomy zostaj powielone w stosunku zale|nym (wprost proporcjonalnie) od warto[ci, jakie przybiera dla nich funkcja oceniajca; stosowanie tej metody jest mo|liwe tylko wtedy, gdy funkcja oceniajca przyjmuje wyBcznie warto[ci dodatnie; " selekcja turniejowa polega na powtarzaniu dwch krokw: losowania par osobnikw wg metody ruletki, po wylosowaniu pary, osobnik o wy|szym przystosowaniu zostaje ogBo- szony zwycizc i umieszczony w nowej populacji; proces jest kontynuowany a| do caB- kowitego wypeBnienia populacji. PrzykBady metod sukcesji: " sukcesja trywialna polega na tym, |e now populacj staje si zbir dzieci:P[t]:=D[t]; " sukcesja elitarna przeprowadzana jest w dwch krokach: najpierw wybiera si zP[t-1] n najlepszych chromosomw:Pn[t-1], nastpnie populacjaP[t]jest tworzona przez wybr m najlepszych chromosomw ze zBczeniaPn[t-1]*"[t]. 2.5. Reprodukcja Na reprodukcj skBadaj si dwa operatory: krzy|owania i mutacji. Najcz[ciej przyjmuje si, |e w krzy|owaniu bior udziaB dwa osobniki rodzicielskie, w wy- niku otrzymuje si jeden lub dwa osobniki potomne. PrzykBady metod krzy|owania: " krzy|owanie proste (jednopunktowe) przebiega w dwch etapach: w pierwszej fazie koja- rzy si w sposb losowy cigi z puli rodzicielskiej w pary. Nastpnie ka|da para przechodzi - 4/6 - proces krzy|owania. Odbywa si to nastpujco: wybiera si w sposb losowy (z jednako- wym prawdopodobieDstwem) punkt krzy|owania k spo[rd l - 1 pocztkowych pozycji w chromosomie, po czym zamienia si miejscami wszystkie znaki od pozycji k + 1 do l wBcznie w obu elementach pary, tworzc w ten sposb dwa nowe cigi; " krzy|owanie wielopunktowe przebiega analogicznie jak krzy|owanie jednopunktowe, z t r|nic, |e wybiera si wicej ni| jeden punkt cicia; " krzy|owanie jednorodne przebiega nastpujco: dla ka|dego bitu pierwszego potomka decyduje si (z pewnym prawdopodobieDstwem), od ktrego z rodzicw pobierze si warto[, drugi potomek otrzymuje bit od pozostaBego rodzica; " rekombinacja puli genw: kilku rodzicw tworzy jednego potomka w ten sposb, |e kolejne geny potomka s wybierane losowo z puli genw wybranych rodzicw; " krzy|owanie arytmetyczne definiuje si jako liniow kombinacj dwch wektorw: je|eli krzy|owaniu maj podlega r1 i r2, to potomkowie wyznaczani s nastpujco: d1 = ar1 + (1 - a)r2 oraz d2 = ar2 + (1 - a)r1; warto[ a dobiera si losowo z przedziaBu [0,1]; " krzy|owanie u[redniajce jest operatorem przeznaczonym dla reprezentacji liczbowej; w metodzie tej warto[ ka|dego genu chromosomu potomnego jest liczb zawierajc si midzy najwiksz i najmniejsz warto[ci genu chromosomw rodzicielskich. Je[li krzy|owanie u[redniajce przebiega zgodnie ze schematem, |e z pary chromosomw ro- dzicielskich powstaje para potomnych, wwczas chromosomy potomne bd symetryczne wzgldem [rodka odcinka Bczcego chromosomy rodzicielskie. PrzykBady metod mutacji: " mutacja rwnomierna zmienia jeden lub wicej bitw na przeciwny z okre[lonym praw- dopodobieDstwem; " mutacja nierwnomierna uwzgldnia wiek populacji: wraz ze wzrostem wieku populacji bity znajdujce si bardziej na prawo w sekwencji kodu chromosomu otrzymuj wiksze prawdopodobieDstwo mutacji, znajdujce si za[ na lewo mniejsze; " mutacja  rzeczywistoliczbowa stosowana jest wtedy, je[li geny przyjmuj warto[ci ze zbioru liczb rzeczywistych, i polega na perturbacji warto[ci genu przez dodanie liczby wygenerowanej w sposb losowy. 2.6. Warunki zakoDczenia dziaBania algorytmu genetycznego Mo|na okre[li dwa warunki zakoDczenia dziaBania algorytmu genetycznego: " algorytm dziaBa do momentu osignicia osobnika o okre[lonym przystosowaniu, " ptlawhilejest wykonywana zadan liczb razy. Najcz[ciej stosuje si obydwa warunki jednocze[nie. Algorytm koDczy dziaBania, gdy zo- stanie speBniony jeden z nich. - 5/6 - 2.7. Parametry algorytmu genetycznego Tradycyjnie algorytmy genetyczne, operuj na populacji, ktrej liczebno[ w czasie optymaliza- cji nie zmienia si. Mo|na zastosowa algorytm genetyczny ze zmienn liczebno[ci populacji. Algorytm ten nie zawiera |adnej odmiany mechanizmu selekcji, ale wprowadza pojcie  wieku chromosomu, co jest rwnowa|ne liczbie pokoleD, przez ktre chromosom pozostaje  |ywy . Tak wic wiek chromosomu pozwala na szczeglne definiowanie pojcia selekcji i, poniewa| zale|y on od dopasowania osobnika, wpBywa na liczebno[ populacji w ka|dym kroku proce- su [5]. Nie ma zaleceD co do doboru warto[ci prawdopodobieDstwa krzy|owania i mutacji, najcz- [ciej dokonuje si tego do[wiadczalnie. Zwykle prawdopodobieDstwo krzy|owania zawiera si w przedziale [0,25; 0,75], za[ prawdopodobieDstwo mutacji w przedziale [0,005; 0,05]. 3. Przygotowanie do wiczenia Przygotowanie do wiczenia obejmuje szczegBowe zapoznanie si z niniejsz instrukcj. W cza- sie wiczenia zostanie przedstawione, na prostym przykBadzie, dziaBanie algorytmu genetycz- nego; zostanie sprawdzone przygotowanie studentw do zaj. 4. PrzykBady do samodzielnego rozwizania Opracowa algorytm genetyczny do optymalizacji funkcji dwch zmiennych. Zastosowa ko- dowanie liczbowe z liniowo uBo|onymi genami w chromosomie. Literatura [1] Arabas J.: Algorytmy ewolucyjne: przegld tematyki. AI-Mech 2000, MateriaBy konferen- cyjne, Gliwice 2000, s. 3 23. [2] Arabas J.: WykBady z algorytmw genetycznych. WNT, Warszawa, 2001. [3] Cholewa W.: WykBad z przedmiotu metody heurystyczne. MateriaBy niepublikowane, Gliwice, 2001. [4] Goldberg D.E.: Algorytmy genetyczne i ich zastosowania. WNT, Warszawa, 1998. [5] Michalewicz Z.: Algorytmy genetyczne + struktury danych = programy ewolucyjne. WNT, Warszawa, 1999. - 6/6 -

Wyszukiwarka

Podobne podstrony:
Algorytmy genetyczne a logika rozmyta
Algorytmy genetyczne i procesy ewolucyjne Wykład 2
03 Implementacja komputerowa algorytmu genetycznego
Algorytm genetyczny – przykład zastosowania
Algorytmy genetyczne i procesy ewolucyjne Wykład 4
02 Podstawy matematyczne algorytmów genetycznych
Algorytmy genetyczne i procesy ewolucyjne Wykład 1
klasyczny algorytm genetyczny
Algorytmy Genetyczne
EA5 Algorytmy genetyczne
ALGORYTMY GENETYCZNE DO MINIMALIZACJI RYZYKA ZAWODOWEGO ZWIĄZANEGO Z EKSPOZYCJA NA HAŁAS
algorytmy genetyczne i mrówkowe w transporcie
Algorytm Genetyczny wynik
algorytmy genetyczne 2
04 Niektóre zastosowania algorytmów genetycznych
Algorytmy genetyczne i procesy ewolucyjne Wykład 3
t5 algorytmy genetyczne

więcej podobnych podstron