PREZENTACJA DZIAŁANIA KLASYCZNEGO ALGORYTMU GENETYCZNEGO



Podobne dokumenty
SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Algorytm genetyczny (genetic algorithm)-

6. Klasyczny algorytm genetyczny. 1

Planowanie adresacji IP dla przedsibiorstwa.

Algorytmy ewolucyjne NAZEWNICTWO

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

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

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

ALGORYTMY GENETYCZNE ćwiczenia

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

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

Algorytmy genetyczne

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

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

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

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

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA OPERATOR KRZYŻOWANIA ETAPY KRZYŻOWANIA

Algorytmy genetyczne

Inspiracje soft computing. Soft computing. Terminy genetyczne i ich odpowiedniki w algorytmach genetycznych. Elementarny algorytm genetyczny

ODPOWIEDZI I SCHEMAT PUNKTOWANIA ZESTAW NR 2 POZIOM PODSTAWOWY. 1. x y x y

Algorytmy genetyczne w optymalizacji

Programowanie genetyczne, gra SNAKE

Algorytmy genetyczne

Obliczenia ewolucyjne - plan wykładu

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

6. Projektowanie składu chemicznego stali szybkotn cych o wymaganej twardo ci i odporno ci na p kanie

SZTUCZNA INTELIGENCJA

Strategie ewolucyjne (ang. evolu4on strategies)

Zadania do wykonaj przed przyst!pieniem do pracy:

ZPKSoft. Kreator dokumentów. Wstp. Przeznaczenie. Definicje

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Instrukcja obsługi programu MechKonstruktor

Wprowadzanie i zmiany faktur z zakupu, wydruk rejestru zakupu

Programowanie Obiektowe

Bazy danych. Plan wykładu. Zalenoci funkcyjne. Wykład 4: Relacyjny model danych - zalenoci funkcyjne. SQL - podzapytania A B

Generowanie i optymalizacja harmonogramu za pomoca

ALGORYTMY GENETYCZNE

Temat: Technika zachłanna. Przykłady zastosowania. Własno wyboru zachłannego i optymalnej podstruktury.

Projektowanie i analiza zadaniowa interfejsu na przykładzie okna dialogowego.

Program do konwersji obrazu na cig zero-jedynkowy

Algorytmy genetyczne (AG)

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

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

Plan wykładu. Reguły asocjacyjne. Przykłady asocjacji. Reguły asocjacyjne. Jeli warunki to efekty. warunki efekty

Wst p do sieci neuronowych, wykªad 15 Algorytmy genetyczne

Metody przeszukiwania

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA HISTORIA NA CZYM BAZUJĄ AG

Amortyzacja rodków trwałych

Temat: Algorytmy zachłanne

Program "FLiNN-GA" wersja 2.10.β

PROWIZJE Menad er Schematy rozliczeniowe

Metody Rozmyte i Algorytmy Ewolucyjne

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

Algorytmy genetyczne

Program Sprzeda wersja 2011 Korekty rabatowe

6. Algorytm genetyczny przykłady zastosowań.

MODELOWANIE PROCESÓW EKSPLOATACJI MASZYN

Systemy Inteligentnego Przetwarzania wykład 4: algorytmy genetyczne, logika rozmyta

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin. 2009, Oeconomica 275 (57), 53 58

METODY SZTUCZNEJ INTELIGENCJI W ROZWI ZYWANIU ZADA OPTYMALIZACJI

DLA KOGO UMOWY ENTERPRISE?

stopie szaro ci piksela ( x, y)

obsług dowolnego typu formularzy (np. formularzy ankietowych), pobieranie wzorców formularzy z serwera centralnego,

Temat: Problem najkrótszych cieek w grafach waonych, cz. I: Algorytmy typu label - setting.

Klonowanie MAC adresu oraz TTL

Opera Wykorzystanie certyfikatów niekwalifikowanych w oprogramowaniu Opera wersja 1.1 UNIZETO TECHNOLOGIES SA

ANALIZA NUMERYCZNA. Grzegorz Szkibiel. Wiosna 2014/15

Bazy danych. Plan wykładu. Podzapytania - wskazówki. Podzapytania po FROM. Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych.

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

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

KARTA MODUŁU KSZTAŁCENIA

Standardowy algorytm genetyczny

Zadania laboratoryjne i projektowe - wersja β

GENETYKA POPULACJI. Ćwiczenia 1 Biologia I MGR /

Gramatyki regularne i automaty skoczone

REGULAMIN KONKURSU OFERT NA WYBÓR BROKERA UBEZPIECZENIOWEGO DLA MIASTA ZIELONA GÓRA, JEGO JEDNOSTEK ORGANIZACYJNYCH ORAZ SPÓŁEK KOMUNALNYCH.

5. Algorytm genetyczny przykład zastosowania

Zastosowanie programu Microsoft Excel do analizy wyników nauczania

Standardy danych w tagu EPC

Sposoby przekazywania parametrów w metodach.

Algorytmy ewolucyjne `

Wstp. Odniesienie do podstawy programowej

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

Obrona rozprawy doktorskiej Neuro-genetyczny system komputerowy do prognozowania zmiany indeksu giełdowego

Cash flow projektu zakładajcego posiadanie własnego magazynu oraz posiłkowanie si magazynem obcym w przypadku sezonowych zwyek

Programowanie genetyczne - gra SNAKE

Dobór parametrów algorytmu ewolucyjnego

Inynieria Systemów Informacyjnych

M ZASYPANIE WYKOPÓW WRAZ Z ZAGSZCZENIEM

ZARZĄDZANIE POPULACJAMI ZWIERZĄT

1) Grafy eulerowskie własnoci algorytmy. 2) Problem chiskiego listonosza

Bazy danych. Plan wykładu. Definicja zalenoci funkcyjnych. Zalenoci funkcyjne. Wykład 4: Relacyjny model danych - zalenoci funkcyjne.

Algorytmy ewolucyjne (2)

Wstęp do Sztucznej Inteligencji

Obliczenia Naturalne - Algorytmy genetyczne

Techniki ewolucyjne - algorytm genetyczny i nie tylko

Program SMS4 Monitor

Techniki optymalizacji

Informacja i Promocja. Mechanizm Finansowy EOG Norweski Mechanizm Finansowy

Wstp. Warto przepływu to

Transkrypt:

Piotr Borowiec PREZENTACJA DZIAŁANIA KLASYCZNEGO ALGORYTMU GENETYCZNEGO Sporód wielu metod sztucznej inteligencji obliczeniowej algorytmy genetyczne doczekały si wielu implementacji. Mona je wykorzystywa do rozwizywania rzeczywistych problemów z dowolnej dziedziny ludzkiej działalnoci. Najczciej jednak dostpne na rynku programy s mało przydatne dla celów dydaktycznych, gdy działanie ich realizuje si w ukryciu przed okiem operatora. Podjte w ramach niniejszej pracy działanie ma na celu stworzenie aplikacji (wraz z jej opisem), która przy wykorzystaniu wizualizacji zrozumiałego dla wszystkich problemu, ukazałaby w przystpny sposób działanie klasycznego algorytmu genetycznego. zmienione Jako główne cele przyjto: a) stworzenie programu, który mógłby by wykorzystywany w celach edukacyjnych, b) ukazanie, w jaki sposób dziedziczone s cechy osobników populacji (na przykładzie populacji owadów) c) skupienie si na moliwociach optymalizacyjnych klasycznego algorytmu genetycznego (stworzenie jak najlepszego osobnika), d) skupienie si na wizualizacji całego zagadnienia. 1. Geneza algorytmów genetycznych Pojcie algorytmów genetycznych nie zostało wymylone zupełnie od podstaw przez matematyków i informatyków. Metoda wywodzi si wprost z dowiadcze darwinowskiej teorii ewolucji oraz inynierii genetycznej. Podobnie jak w teorii ewolucji, klasyczny algorytm genetyczny oparty jest na procesie tzw. doboru naturalnego oraz na zasadzie dziedzicznoci. W procesie doboru naturalnego przeywaj i rozmnaaj si tylko te osobniki, które s najlepiej przystosowane do panujcych warunków rodowiska. W procesie rozmnaania przekazuj potomstwu jedn z moliwych kombinacji własnych cech. Najczciej, co potwierdzaj badania biologiczne jak równie dowiadczenia prowadzone na algorytmach genetycznych, wraz z kolejnymi pokoleniami rodz si osobnicy coraz lepiej przystosowani do panujcych warunków. Zadaniem klasycznych algorytmów genetycznych jest poszukiwanie optymalnego rozwizania problemów, dla których nie znamy zasad jego rozwizania. Musimy jednak zna i dobrze okreli funkcj celu, która bdzie odpowiednikiem miary przystosowania organizmów ywych do rodowiska. 2. Podstawowe pojcia 1. Geny s to podstawowe elementy, z których składaj si chromosomy. W przypadku, gdy pojedyncze chromosomy reprezentuj osobników - geny mona uzna za ich cechy, 2. Chromosom jest to uporzdkowany cig (zbiór) genów. W najprostszym przypadku, kady pojedynczy gen bdzie prezentowany poprzez bit informacji.

Czsto jeden chromosom moe prezentowa indywidualnego osobnika populacji, jednak moe te reprezentowa tylko jedn z jego cech. 3. Populacja zbiór osobników tworzonych przez chromosomy. Populacja ma swoj stał liczebno. W kolejnych cyklach ewolucji (pokoleniach) w wyniku zastosowania operatorów genetycznych pierwotny skład populacji ulega zmianie dzieje si tak, poniewa wszystkie chromosomy podlegaj wymianie na nowe. W ten sposób powstaj nowe pokolenia. 4. Genotyp to inaczej struktura danego osobnika, zespół jego chromosomów. Mona powiedzie, e genotyp jest osobnikiem populacji. 5. Fenotyp jest tym, co reprezentuje genotyp. Mona go okreli jako wygld zewntrzny osobnika. 6. Allel jest to warto danego genu, okrelana czsto jako warto cechy lub wariant cechy. 7. Locus pozycja danego genu okrelajca miejsce danego genu w chromosomie. 8. Funkcja przystosowania (celu) funkcja, która okrela jako kadego z dopuszczalnych rozwiza. Dziki niej moemy wszystkie rozwizania uporzdkowa wg jej wartoci. 9. Operatory genetyczne operacje, które mog by wykonywane na chromosomach, np. krzyowanie, mutacja. 10. Operacja krzyowania polega na losowym przeciciu dwóch chromosomów (cigów bitów) w jednym punkcie i wymianie podzielonych czci pomidzy chromosomami. Powstaj w ten sposób dwa nowe chromosomy. 11. Operacja mutacji polega na zamianie na przeciwny losowego bitu. 12. Operacja przejcia polega na losowym wyborze (w okrelonej proporcji) osobników spoza populacji,. 13. Selekcja osobników etap przed krzyowaniem. Wybór na podstawie wczeniej okrelonych wartoci funkcji oceny tych osobników, którzy wezm udział w tworzeniu kolejnego pokolenia. W przypadku klasycznego algorytmu genetycznego najczstszym sposobem selekcji jest metoda koła ruletki. Koło ruletki składa si z prawdopodobiestw wylosowania kadego osobnika. Prawdopodobiestwa ustalane s włanie poprzez wykorzystanie funkcji przystosowania. 14. Rozwizaniem problemu jest najlepiej przystosowany osobnik z ostatniej wygenerowanej populacji. W celu okrelenia takiego osobnika, naley z góry ustali warunek zatrzymania tworzenia kolejnych populacji. Takimi warunkami mog by: a) uzyskanie osobnika o odpowiednio dobrych parametrach cech, b) powtórzenie działania algorytmu genetycznego okrelon ilo iteracji (nastpienie po sobie ustalonej liczby nowych populacji). 15. Problem optymalizacyjny zadanie wyszukania najlepszego rozwizania sporód puli dopuszczalnych. Jest to cel, do którego dymy. 16. Zbiór dopuszczalnych rozwiza czyli zbiór wszystkich ewentualnych rozwiza zadania (niekoniecznie optymalnych). 3. Etapy w klasycznym algorytmie genetycznym Realizacja klasycznego algorytmu genetycznego składa si z kilku podstawowych etapów (Rys.1.). Pierwszym z nich jest inicjacja, czyli wybór lub stworzenie nowej populacji osobników. Nastpnie dla kadego z osobników obliczana jest funkcja przystosowania (ustalana w zalenoci od tego, jakie zadania ma spełnia algorytm). Na ogół im wiksza warto tej funkcji tym lepszy jest osobnik. dodane

Po wyliczeniu wartoci przystosowania (warto funkcji) sprawdzany jest tzw. warunek zatrzymania, którego spełnienie oznacza, e mona ju z obecnej populacji wybra odpowiedniego osobnika. Przykładowo warunkiem zatrzymania moe by osignicie jakiej minimalnej wartoci przystosowania lub rozpoczcie konkretnej iteracji algorytmu (ustalony arbitralnie numer pokolenia). W przypadku nie spełnienia warunku zatrzymania nastpuje selekcja osobników, łczenie ich w pary, krzyowanie i mutacja (w programie dla uproszczenia pominita). W wyniku uycia tych operatorów powstaje nowe pokolenie osobników. START Inicjacja Ocena przystosowania Selekcja NIE Warunek zatrzymania TAK Optymalny (najlepszy) wynik Zastosowanie operatorów STOP Utworzenie nowej populacji Rys. 1. Etapy w klasycznym algorytmie genetycznym 4. Projekt programu 4.1. Wstp

Jednym z głównych celów projektu było ukazanie w jaki sposób dziedziczone s cechy osobników, a take zobrazowanie właciwoci optymalizacyjnych klasycznego algorytmu genetycznego (stworzenie doskonałego osobnika). Do napisania programu wykorzystano jzyk Delphi. Program zaprojektowano w taki sposób, aby uytkownik mógł w czasie korzystania z niego na bieco poznawa wszystkie etapy działania klasycznego algorytmu genetycznego poczwszy od inicjacji, a skoczywszy na wyborze najlepszego osobnika (Rys.2.). Rys. 2. Okno główne programu tu przed zastosowaniem operatorów genetycznych Badania obrazujce prac programu przeprowadzono na stworzonym na potrzeby dowiadczenia nowym gatunku owadów: sztucznej osie. Okrelono dla niej 9 cech, które wydaj si istotne z punktu widzenia jej funkcjonowania w rodowisku. Kada cecha jest reprezentowana przez cig 8 bitów. Cechy te, to: wielko i kształt głowy, wielko i kształt tułowia, wielko i kształt odwłoka, wielko i kształt odnóy, wielko i kształt skrzydeł, wielko dła, wielko i kształt czułek, wielko i kształt oczu, wielko i kształt uwaczek (ust). 4.2. Inicjacja Pierwszy etap to utworzenie losowej populacji 20 osobników.

4.3. Ocena przystosowania osobników Obliczana jest warto funkcji przystosowania dla kadego osobnika z populacji. Im wysza bdzie warto tej funkcji, tym lepszy jakociowo bdzie osobnik. Obrano bardzo prost funkcj oceny do okrelenia jakoci osobnika. Wykorzystano skonwertowan warto binarn chromosomu okrelajcego cech na system dziesitny. Celem przeskalowania przedziału wartoci oceny wielko t podniesiono do kwadratu. System przyznawania punktów: 1. Na pocztek postawiono załoenie, e cechy nie s równie wane (przyznano wagi). Dla przykładu: wano cechy wielko i kształt głowy w odniesieniu do całego osobnika (cały osobnik to 100%) to 20%, a warto cechy wielko i kształt odnóy to 5%. Ta procentowa warto to wskanik wanoci. 2. Wartoci binarne kadej z cech s zamieniane (dekodowane) na wartoci dziesitne. 3. Otrzymane wartoci dziesitne s przemnaane przez ich wskaniki wanoci. 4. Otrzymane wyniki (wynik = warto cechy w systemie dziesitnym * wano cechy) dla kadej z cech s ze sob sumowane. Otrzymana po zsumowaniu cech warto to włanie zmienna x, która po podniesieniu do kwadratu słuy do okrelenia stopnia przystosowania osobnika. Warto przystosowania osobnika przy takich załoeniach moe waha si od 0 do 65025. 4.4. Sprawdzenie warunku zatrzymania Wykorzystany w programie algorytm jest algorytmem optymalizacyjnym, którego zadaniem jest stworzenie idealnego owada. Zatrzymanie algorytmu nastpi gdy: 1) funkcja przystosowania przekroczy ustalon warto (tzw. maksimum). W programie t wartoci jest 35000. 2) Utworzona zostanie ustalona (w programie 4-ta) generacja osobników, a warto przystosowania nie przekroczy ustalonej wczeniej wartoci (35000). Jeli warunek zatrzymania zostaje spełniony, to wybierany jest osobnik, dla którego funkcja przystosowania osignła najwysz warto. 4.5. Selekcja osobników Łczenia osobników w pary dokonano za pomoc metody koła ruletki (na podstawie obliczonych wartoci funkcji przystosowania tych osobników). Jeeli: w(xi) wycinek okrgu dla danego osobnika (w %) p(xi) warto przystosowania konkretnego osobnika podzielona przez sum wartoci przystosowania wszystkich osobników f(xi) warto przystosowania dla danego osobnika

f(xi) suma wartoci przystosowania wszystkich osobników Za pomoc wzoru w(xi)=p(xi)*100%, gdzie p(xi)=f(xi)/ f(xi) wyliczane s wycinki okrgu jakie przypadn dla kadego z osobników. Wielko wycinka okrgu oznacza po prostu szans, z jaka dany osobnik moe zosta wybrany do tworzenia nastpnej generacji (pokolenia). Po okreleniu szansy na wybór kadego z osobników, naley połczy ich w pary, poprzez tzw. obrót kołem ruletki. Losowanie osobników do par nastpuje 20 razy (taka sam ilo razy jak wielko pocztkowej populacji). Przy czym jeden osobnik rodzicielskich moe si znale jednoczenie w kilku parach. Szanse na to ma tym wiksze im wiksz ma warto funkcji przystosowania. Dla uproszczenia przyjto operator przejcia równy 1, a to oznacza, e reprodukcja odbywa si w obrbie osobników z tej samej populacji. 4.6. Operacja krzyowania Kady z chromosomów u jednego z rodziców jest krzyowany z odpowiednim chromosomem u drugiego z rodziców (krzyowane s chromosomy odpowiedzialne za t sam cech). Czyli np. krzyowany jest chromosom odpowiedzialny za wielko odwłoka u rodzica A z chromosomem odpowiedzialnym za wielko odwłoka u rodzica B, itd. Punkt krzyowania (miejsce rozcicia chromosomu) jest obierany losowo. Na koniec operacji krzyowania zostaj wymienione ze sob powstałe w ten sposób podcigi bitów. Powstaj w ten sposób nowe pary potomków. Nowi osobnicy staj si populacj biec dla kolejnej iteracji algorytmu genetycznego. Jeli warunek zatrzymania zostanie spełniony to wybierany jest osobnik o najwikszej wartoci funkcji przystosowania jest to osobnik optymalny. Jest bardzo mała szansa, e powstanie osobnik idealny. Jednak metoda ta jest wykorzystywana, gdy inne metody optymalizacyjne zupełnie zawodz, dlatego nawet jej skuteczno na poziomie 60-70% (oczywicie moe to by nawet 100%) moe by w wielu przypadkach jak najbardziej wystarczajca. Warto przystosowania osobnika idealnego to 65025, a jego wszystkie cechy to binarne 1111111 (dziesitne 255). Najlepszy osobnik (Rys.3.) wg przyjtych w programie załoe to taki, który posiada: - ostro zakoczon głow z dodatkowymi wyrostkami, - due, szeroko otwarte oczy, - ostro zakoczone szczki o odpowiednim kształcie, - długie poskrcane czułki, - skrzydła o duej powierzchni, - długie dło.

Rys. 3. Wzór idealnego osobnika Osobnikiem najgorszym (Rys.4.) jest taki, u którego powysze cechy nie s w ogóle spełnione. Jego warto przystosowania to 0, a cechy wynosz po 00000000 (czyli dziesitne 0). Rys. 4. Najgorszy moliwy osobnik

2. Wnioski Naley stwierdzi, e pominicie mutacji oraz moliwoci ustawienia wartoci operatora przejcia sprawiło, e po przekroczeniu pewnej liczby kolejnych pokole, algorytm zastosowany w programie stopniowo zatraca swoje optymalizacyjne właciwoci. Podsumowujc mona uzna, e obecna wersja programu, pomimo swojego wci niezbyt duego stopnia skomplikowania, spełnia przedstawione na pocztku załoenia. Trzeba te zauway, e w przyszłych wersjach naleałoby uzupełni oprogramowanie o brakujce, omówione wyej operatory. To powinno pozwoli na usunicie wystpujcych ogranicze. Literatura: 1. D. E. Goldberg, Algorytmy genetyczne i ich zastosowania, Wydawnictwa Naukowo - Techniczne, Warszawa 1998 2. Z. Michalewicz, Algorytmy genetyczne + struktury danych = programy ewolucyjne, Wydawnictwa Naukowo Techniczne, Warszawa 2003 3. Internet: http://panda.bg.univ.gda.pl/~sielim/genetic/gen_algol.htm 4. Internet: http://wombat.ict.pwr.wroc.pl/nauczanie/prezentacja/flash/ag/intro.swf