SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO



Podobne dokumenty
6. Klasyczny algorytm genetyczny. 1

Algorytm genetyczny (genetic algorithm)-

ALGORYTMY GENETYCZNE ćwiczenia

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

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

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

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

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

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

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

Algorytmy genetyczne

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

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

Algorytmy ewolucyjne NAZEWNICTWO

Algorytmy genetyczne w optymalizacji

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

Algorytmy genetyczne

Obliczenia ewolucyjne - plan wykładu

Algorytmy genetyczne

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

Metody Rozmyte i Algorytmy Ewolucyjne

Algorytmy ewolucyjne. wprowadzenie

Zadania laboratoryjne i projektowe - wersja β

SZTUCZNA INTELIGENCJA

Strefa pokrycia radiowego wokół stacji bazowych. Zasięg stacji bazowych Zazębianie się komórek

Metody przeszukiwania

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

Standardowy algorytm genetyczny

Program "FLiNN-GA" wersja 2.10.β

Strategie ewolucyjne (ang. evolu4on strategies)

Algorytmy genetyczne

Generowanie i optymalizacja harmonogramu za pomoca

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

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

METODY HEURYSTYCZNE wykład 3

Programowanie genetyczne, gra SNAKE

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

ALGORYTMY GENETYCZNE

KURS WSPOMAGAJĄCY PRZYGOTOWANIA DO MATURY Z MATEMATYKI ZDAJ MATMĘ NA MAKSA. przyjmuje wartości większe od funkcji dokładnie w przedziale

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

Zapis liczb binarnych ze znakiem

METODY HEURYSTYCZNE wykład 3

Algorytmy ewolucyjne (2)

Algorytmy ewolucyjne 1

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

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

Algorytmy ewolucyjne Część II

Wielkości liczbowe. Wykład z Podstaw Informatyki dla I roku BO. Piotr Mika

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

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

Wielkości liczbowe. Wykład z Podstaw Informatyki. Piotr Mika

ZASTOSOWANIE ALGORYTMU GENETYCZNEGO DO WYZNACZANIA OPTYMALNYCH DECYZJI STERUJĄCYCH

Algorytmy genetyczne w interpolacji wielomianowej

Dryf genetyczny i jego wpływ na rozkłady próbek z populacji - modele matematyczne. Adam Bobrowski, IM PAN Katowice

Aproksymacja funkcji a regresja symboliczna

Dobór parametrów algorytmu ewolucyjnego

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

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin. 2011, Oeconomica 285 (62), 45 50

ALHE Z11 Jarosław Arabas wykład 11

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

Testy De Jonga. Problemy. 1 Optymalizacja dyskretna i ciągła

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin., Oeconomica 2017, 337(88)3, 5 12

Dane, informacja, programy. Kodowanie danych, kompresja stratna i bezstratna

BŁĘDY OBLICZEŃ NUMERYCZNYCH

Automatyczny dobór parametrów algorytmu genetycznego

Równoważność algorytmów optymalizacji

OBLICZENIA EWOLUCYJNE

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

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

Zestaw 3. - Zapis liczb binarnych ze znakiem 1

5. Algorytm genetyczny przykład zastosowania

OBLICZENIA EWOLUCYJNE

Programowanie genetyczne

Teoria algorytmów ewolucyjnych

6. Algorytm genetyczny przykłady zastosowań.

Teoretyczne Podstawy Informatyki

ALGORYTMY GENETYCZNE I EWOLUCYJNE

Zadanie 1. Liczba szkód N w ciągu roku z pewnego ryzyka ma rozkład geometryczny: k =

Algorytmy genetyczne (AG)

Gospodarcze zastosowania algorytmów genetycznych

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 5 Liczby w komputerze

Wielokryterialne harmonogramowanie portfela projektów. Bogumiła Krzeszowska Katedra Badań Operacyjnych

1.1. Pozycyjne systemy liczbowe

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

Algorytm Grovera. Kwantowe przeszukiwanie zbiorów. Robert Nowotniak

Pracownia Komputerowa wykład IV

Wstęp do informatyki- wykład 1 Systemy liczbowe

Techniki ewolucyjne - algorytm genetyczny i nie tylko

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11,

Algorytmy genetyczne służą głównie do tego, żeby rozwiązywać zadania optymalizacji

Obliczenia Naturalne - Algorytmy genetyczne

Problemy optymalizacyjne Dana jest przestrzeń X. Znaleźć x X taki, że x spełnia określone warunki. Dana jest przestrzeń X i funkcja celu f: X R.

Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne

SYSTEMY LICZBOWE. SYSTEMY POZYCYJNE: dziesiętny (arabski): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 rzymski: I, II, III, V, C, M

Optymalizacja optymalizacji

Programowanie genetyczne - gra SNAKE

Transkrypt:

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO. Rzeczywistość (istniejąca lub projektowana).. Model fizyczny. 3. Model matematyczny (optymalizacyjny): a. Zmienne projektowania b. Funkcja celu c. Ograniczenia 4. Funkcja celu + ograniczenia funkcja przystosowania. 5. Sposób kodowania zmiennych decyzyjnych w chromosomie. 6. Parametry algorytmu genetycznego: a. Wielkość populacji b. Max. ilość iteracji c. Prawdopodobieństwa selekcji, krzyżowania, mutacji itp. d. Kryterium zatrzymania algorytmu 7. Realizacja AG rozwiązanie optymalne. 9

PODSTAWY ALGORYTMÓW GENETYCZNYCH Teoria Algorytmów Genetycznych (AG) powstała w oparciu o analogie do procesów obserwowanych w ewolucji naturalnej. Proces rozwiązania problemu przy pomocy AG (ewolucji) następuje na drodze poszukiwania losowo lepszego chromosomu. Chromosomy nie wiedzą o typie rozwiązywanego problemu, który reprezentują jedyną informacją jest ocena jakości danego chromosomu, decydująca o tym, które z chromosomów mają większą lub mniejszą szansę na dalszą reprodukcję. Proces rozwiązania nie posiada pamięci wszystko co wie o metodzie kreowania kolejnego lepszego organizmu jest zawarte w genach przetwarzanych chromosomów.

MODEL KLASYCZNEGO ALGORYTMU GENETYCZNEGO AG operuje na łańcuchach złożonych z 0 i. - Pojedynczy element łańcucha: gen. - Łańcuch genów: chromosom. Zbiór chromosomów o określonej liczności: populacja. W chromosomie jest zapisana pełna informacja o wartościach zmiennych decyzyjnych zadania. Kodowanie zmiennych decyzyjnych (przykład): Założenia:. Na zmienną decyzyjną przeznacza się bajty (6 bitów = bit znaku + 5 bitów na wartość).. Zmienną decyzyjną xreal i określa się z dokładnością do trzech cyfr po przecinku (dziesiętnie). Konwersja zmiennej rzeczywistej xreal i do zmiennej całkowitej xint i : xint i = xreal i x 3 Zakres zmienności zmiennej całkowitej: ± 5 = ±3768 Zakres zmienności zmiennej rzeczywistej: ±3,768 Długość chromosomu dla n zmiennych: n bajtów = 6n bitów.

Założenia dla realizacji AG:. W ramach określonej populacji wszystkie chromosomy mają taką samą długość (liczbę genów).. Długość chromosomu i liczność populacji zależą od charakteru konkretnego problemu i są określane na etapie projektowania AG. Określa się następujące mechanizmy AG: Mechanizm generacji początkowej populacji. Mechanizm oceny jakości chromosomu. Mechanizm selekcji chromosomów do dalszego przetwarzania tzw. reprodukcji. Mechanizm mutacji. Mechanizm krzyżowania. Mechanizm generacji początkowej populacji: Losowe utworzenie żądanej liczby (populacji) chromosomów. Przykład: Należy wygenerować populację składającą się z sześciu chromosomów, każdy o długości dziesięciu genów. Można to zrealizować używając generatora liczb pseudolosowych.

Otrzymano w ten sposób np. następującą populację: ch = ( 0 0 ) ch = ( 0 0 0 0 0 0) ch3 = (0 0 0 0 0 ) ch4 = (0 0 0 0 0 0 0 0) ch5 = (0 0 0 0 ) ch6 = (0 0 0 0 0 0 0 0) Mechanizm oceny jakości chromosomu: Polega na wyznaczeniu wartości tzw. funkcji przystosowania FP, będącej miarą w jaki sposób dany chromosom rozwiązuje poszukiwany problem. Postać tej funkcji zależy od charakteru problemu i jest określana na etapie projektowania AG rozwiązującego konkretny problem. Założenie: Funkcja przystosowania przyjmuje jedynie wartości nieujemne, zaś rozwiązanie problemu polega na znalezieniu maksimum tej funkcji. Przykład : Poszukujemy chromosomu posiadającego największą z możliwych liczbę jedynek. Dla wylosowanej populacji otrzymamy: FP(ch) = 8 FP(ch) = 4 FP(ch3) = 5 Zatem największą FP ma chromo- FP(ch4) = som pierwszy i on najbardziej na- FP(ch5) = 6 daje się do rozwiązania naszego FP(ch6) = problemu. 3

Przykład : Chromosom bitowy ( genowy) reprezentuje nieujemne zmienne całkowite: x : bity 0 4 x : bity 5 9. Funkcja przystosowania ma postać: f ( x, x ) = 000 x x xx Wtedy dla wylosowanej populacji początkowej: ch ch ch 3 ch 4 ch 5 ch 6 x x x x x x x x x x x x = () = () = (0) = (00) = (0) = (000) = (000) = (000) = (0) = (0) = (00000) = (00) = 9 = 9 = 0 = 7 = 3 = 3 = 8 = 4 = 3 = 3 = 0 = 5 f f f f f f x, x ) = ( x, x ) = 63 ( x, x ) = 945 ( x, x ) = 956 ( x, x ) = 805 ( x, x ) = 995 ( 4

Mechanizm selekcji: Wybranie (selekcja) zbioru chromosomów przeznaczonych do reprodukcji tzn. wybranie zbioru chromosomów o tej samej liczności co populacja początkowa, które staną się rodzicami nowo tworzonej populacji potomków. Selekcja ma charakter losowy, jednakże taki aby chromosomy o największej wartości funkcji dopasowania miały największe szanse na wylosowanie do dalszej reprodukcji - przetrwają tylko najsilniejsi. Najprostsza metoda selekcji metoda ruletki:. Oblicza się sumę wartości funkcji przystosowania wszystkich chromosomów populacji 0% (całe koło ruletki).. Każdemu chromosomowi przydziela się wycinek koła ruletki proporcjonalny do procentowego udziału wartości jego funkcji przystosowania w całkowitej sumie wartości funkcji przystosowania wszystkich chromosomów. Wycinek taki jest przedziałem [a,b], ( a 0 i b 0), i przedstawia prawdopodobieństwo wylosowania danego chromosomu. 5

3. Losuje się liczbę p z przedziału [0, 0], która wskazuje na konkretny punkt na kole ruletki należący do wycinka odpowiadającego konkretnemu chromosomowi. Tak wybrany chromosom przeznacza się do dalszej reprodukcji. Liczba losowań jest równa liczności populacji. Wylosowane do reprodukcji chromosomy łączy się losowo w pary rodziców, które na drodze krzyżowania i mutacji zostaną przekształcone w pary potomków tworząc nową kolejną populację. 6

Przykład : FP Wycinek koła ruletki w % Prawdopodobieństwo wylosowania Skumulowane wycinki koła Ch 8 9.63% 0.30 0 p 9. 63 Ch 4 4.8% 0.5 9.63 < p 44. 44 Ch3 5 8.5% 0.9 44.44 < p 6. 96 Ch4 7.4% 0.07 6.96 < p 70. 37 Ch5 6.% 0. 70.37 < p 9. 59 Ch6 7.4% 0.07 9.59 < p 0. 0 Σ: 7 0%.00 Przykład : FP Wycinek koła ruletki w % Prawdopodobieństwo wylosowania Skumulowane wycinki koła Ch.5% 0.5 0 p. 5 Ch 63 5.6% 0.56.5< p 6. Ch3 945 8.7% 0.87 6.< p 44. 8 Ch4 956 8.8% 0.88 44.8< p 63. 6 Ch5 805 7.3% 0.73 63.6< p 80. 9 Ch6 995 9.% 0.9 80.9< p 0. 0 Σ: 45 0%.000 7

Przykład koło ruletki 5 6 3 4 3 4 5 6 Losuje się sześć liczb z przedziału [0,0]: np.: 7, 56, 8, 89, 4, 96. Do reprodukcji wybrano: W przykładzie : W przykładzie : ch, ch3, ch, ch5, ch, ch6 ch, ch4, ch3, ch6, ch3, ch6 Zatem populacja do reprodukcji ma teraz postać: Przykład : Przykład : nowy nowy stary stary ch = ( 0 0 ) = ch = ( 0 0 0 0 0 0)= ch ch ch = (0 0 0 0 0 ) = ch = (0 0 0 0 0 0 0 0) = ch3 ch4 ch3 = ( 0 0 ) = ch3 = (0 0 0 0 0 ) = ch ch3 ch4 = (0 0 0 0 ) = ch4 = (0 0 0 0 0 0 0 0) = ch5 ch6 ch5 = ( 0 0 0 0 0 0) = ch5 = (0 0 0 0 0 ) = ch ch3 ch6 = (0 0 0 0 0 0 0 0) = ch6 = (0 0 0 0 0 0 0 0) = ch6 ch6 8

Mechanizm mutacji: Jest to oddziaływanie na populację rodziców przed procesem krzyżowania lub na populację potomków utworzoną w wyniku krzyżowania, przebiegające następująco:. Na etapie projektowania AG ustala się prawdopodobieństwo p m zaistnienia mutacji (przyjmuje się je jako bardzo małe).. Dla każdego genu z kolejnego chromosomu losowana jest liczba k z przedziału [0,]. Jeżeli k p to gen podlega m mutacji, inaczej nie. 3. Mutacja genu polega na zmianie jego wartości z 0 na lub z na 0. 4. Przeprowadzenie mutacji przed lub po krzyżowaniu nie wpływa merytorycznie na jej efekt. Przykład: Ustalono prawdopodobieństwo p m = 0.006. Dla genów chromosomu jednego z rodziców wylosowano liczby k takie, że k -4 > 0.006, k 5 = 0.004, k 6- > 0.006. Tak więc: chromosom przed mutacją: (0 0 0 0 0 ) chromosom po mutacji: (0 0 0 0 0 0 ) W przykładzie mutacja pogorszyła jakość chromosomu (liczba jedynek zmalała z 5 na 4), w przykładzie polepszyła( FP wzrosła z 945 na 959). 9

Rolą mutacji jest wprowadzanie nowego materiału genetycznego. Np.: Gdyby wszystkie chromosomy na którejś pozycji posiadały 0, to w wyniku tylko operacji krzyżowania nigdy na tej pozycji nie pojawi się. Mechanizm krzyżowania: Krzyżowanie par chromosomów, polegające na wymianie części materiału genetycznego pomiędzy chromosomami, może skutkować potomkiem dziedziczącym tylko lepsze cechy swoich rodziców. Przebieg krzyżowania:. Na etapie projektowania AG ustala się prawdopodobieństwo krzyżowania p k. Powinno być ono stosunkowo duże. Często przyjmuje się p k =.. Dla każdego chromosomu z populacji rodziców losuje się liczbę k z przedziału [0,]. Jeżeli k p to dany chromosom podlega operacji krzyżowania. k 3. Z grupy chromosomów przeznaczonych do krzyżowania tworzy się losowo pary rodziców. Gdy liczność tej grupy jest nieparzysta, losuje się dodatkowo jeszcze jeden chromosom. 4. Dla każdej pary rodziców losuje się punkt krzyżowania, tzn. numer genu w miejscu którego nastąpi krzyżowanie. 5. Pierwszy potomek otrzymuje pierwsze n genów od pierwszego rodzica i pozostałe geny poczynając od genu n+ od drugiego rodzica. Drugi potomek otrzymuje geny odwrot- 0

nie- pierwsze n od drugiego rodzica, a pozostałe od pierwszego. Przykład: Założymy prawdopodobieństwo krzyżowania p k =. Zatem cała populacja chromosomów wyselekcjonowanych do krzyżowania podlega tej operacji. W drodze losowania utworzono następujące pary rodziców, np.: - ch i ch - ch3 i ch4 - ch5 i ch6 Dla każdej pary wylosowano pozycję n, na której następuje krzyżowanie, np.: - dla pierwszej pary n = 5 - dla drugiej pary n = 3 - dla trzeciej pary n = 6

Zakładając brak mutacji, rezultat krzyżowania jest następujący: RODZICE krzyżowanie POTOMKOWIE I para, n = 5: ( 0 0 ) ( 0 0 0 ) (0 0 0 0 0 ) (0 0 0 0 ) II para, n = 3: ( 0 0 ) ( 0 0 0 ) (0 0 0 0 ) (0 0 0 ) III para, n = 6: ( 0 0 0 0 0 0) ( 0 0 0 0 0 0 0) (0 0 0 0 0 0 0 0) (0 0 0 0 0 0 0) Powstała nowa populacja: Ch = ( 0 0 0 ) Ch = (0 0 0 0 ) Ch3 = ( 0 0 0 ) Ch4 = (0 0 0 ) Ch5 = ( 0 0 0 0 0 0 0) Ch6 = (0 0 0 0 0 0 0)

Populacja ta ma następujące wartości funkcji przystosowania: Przykład : FP( 0 0 0 ) = 7 FP(0 0 0 0 ) = 6 FP( 0 0 0 ) = 7 FP(0 0 0 ) = 7 FP( 0 0 0 0 0 0 0) = 3 FP(0 0 0 0 0 0 0) = 3 Suma FP = 33 Uzyskano populację o większej średniej wartości FP niż populacja rodziców. Utracono chromosom o największej wartości (FP=8). Przykład : FP( 0 0 0 ) = FP(3,9) = 58 FP(0 0 0 0 ) = FP(9,3) = 88 FP( 0 0 0 ) = FP(3,9) = 58 FP(0 0 0 ) = FP(9,3) = 58 FP( 0 0 0 0 0 0 0) = FP(6,7) = 695 FP(0 0 0 0 0 0 0) = FP(4,5) = 97 Suma FP = 90 3

Klasyczny Algorytm Genetyczny: Generacja populacji początkowej. Wyznaczanie wartości funkcji przystosowania dla populacji. Selekcja chromosomów przeznaczonych do reprodukcji. Tworzenie nowej populacji (operatory mutacji i krzyżowania) Warunek zakończenia algorytmu? Koniec 4