OBLICZENIA EWOLUCYJNE

Podobne dokumenty
LICZEBNOŚĆ POPULACJI OBLICZENIA EWOLUCYJNE. wykład 3. Istotny parametr AG...

OBLICZENIA EWOLUCYJNE

OBLICZENIA EWOLUCYJNE

OBLICZENIA EWOLUCYJNE

METODY HEURYSTYCZNE 3

METODY HEURYSTYCZNE wykład 3

METODY HEURYSTYCZNE wykład 3

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

OBLICZENIA EWOLUCYJNE

Algorytm genetyczny (genetic algorithm)-

ALGORYTMY GENETYCZNE I EWOLUCYJNE

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Optymalizacja parametryczna (punkt kartezjańskim jest niewypukła).

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

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

OBLICZENIA EWOLUCYJNE

OBLICZENIA EWOLUCYJNE

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

Obliczenia ewolucyjne - plan wykładu

Algorytmy genetyczne w optymalizacji

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

Algorytmy genetyczne

ALGORYTMY EWOLUCYJNE. INTELIGENTNE TECHNIKI KOMPUTEROWE wykład 011. Napór selekcyjny (selektywny nacisk. Superosobniki: SELEKCJA

Strategie ewolucyjne (ang. evolu4on strategies)

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

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

Algorytmy ewolucyjne NAZEWNICTWO

Algorytmy genetyczne

Algorytmy ewolucyjne. wprowadzenie

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

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

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

ALGORYTMY GENETYCZNE ćwiczenia

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

Algorytmy ewolucyjne 1

Generowanie i optymalizacja harmonogramu za pomoca

Metody Rozmyte i Algorytmy Ewolucyjne

Standardowy algorytm genetyczny

LABORATORIUM 5: Wpływ reprodukcji na skuteczność poszukiwań AE. opracował: dr inż. Witold Beluch

Dobór parametrów algorytmu ewolucyjnego

6. Klasyczny algorytm genetyczny. 1

Algorytmy genetyczne

Równoważność algorytmów optymalizacji

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

Zadania laboratoryjne i projektowe - wersja β

Techniki optymalizacji

Metody przeszukiwania

Problemy z ograniczeniami

Algorytmy genetyczne (AG)

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

ALGORYTMY EWOLUCYJNE

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

LABORATORIUM 2: Wpływ wielkości populacji i liczby pokoleń na skuteczność poszukiwań AE. opracował: dr inż. Witold Beluch

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

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

SZTUCZNA INTELIGENCJA

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

OBLICZENIA EWOLUCYJNE

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

Optymalizacja. Wybrane algorytmy

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA ZADANIE KOMIWOJAŻERA METODY ROZWIĄZYWANIA. Specyfika zadania komiwojażera Reprezentacje Operatory

Teoria algorytmów ewolucyjnych

Aproksymacja funkcji a regresja symboliczna

ALHE Z11 Jarosław Arabas wykład 11

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

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

SZTUCZNA INTELIGENCJA

Algorytmy genetyczne w interpolacji wielomianowej

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

SZTUCZNA INTELIGENCJA

1.1. Pozycyjne systemy liczbowe

Algorytmy genetyczne

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

Algorytmy ewolucyjne (3)

Matematyka dyskretna - wykład - część Podstawowe algorytmy kombinatoryczne

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

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

Algorytmy metaheurystyczne podsumowanie

Na poprzednim wykładzie:

Kodowanie informacji. Kody liczbowe

Efektywność Procedur Obliczeniowych. wykład 5

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

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

ALGORYTMY GENETYCZNE

Techniki optymalizacji

Wstęp do Sztucznej Inteligencji

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 311

Algorytmy ewolucyjne (2)

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

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

Obliczenia Naturalne - Algorytmy genetyczne

Strategie ewolucyjne (ang. evolution strategies)

Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott

Luty 2001 Algorytmy (7) 2000/2001

Stan wysoki (H) i stan niski (L)

Algorytmy ewolucyjne `

PROBLEM: SORTOWANIE PRZEZ ODWRÓCENIA METODA: ALGORYTMY ZACHŁANNE

Temat: Algorytm kompresji plików metodą Huffmana

Transkrypt:

OBLICZENIA EWOLUCYJNE FITNESS F. START COMPUTATION FITNESS F. COMPUTATION INITIAL SUBPOPULATION SENDING CHROM. TO COMPUTERS chromosome AND RECEIVING FITNESS F. wykład VALUE 3 fitness f. value EVOLUTIONARY OPERATORS MIGRATION PHASE FITNESS F. COMPUTATION communication with other subpopulations SELECTION YES TERMINATION CONDITION NO END 1

SCHEMATY - problemy 2

Założenie 1: S 1 = (111********) S 2 = (*********11) Dopasowanie ich liniowej kombinacji: S 3 = (111******11) Założenie 2: jest gorsze, niż: S 4 = (000******00) Optymalny osobnik: v 0 = (11111111111) Algorytm genetyczny może e mieć trudności ze zbiegnięciem się do v 0 i może e się zbiegać do punktów w w rodzaju: v 1 = (00011111100) Zjawisko zawodu zadanie zwodnicze 3

EPISTAZA: W biologii (genetyce) efekt maskowania (obecność genu epistatycznego tłumi efekt innego genu); W AG: : silne uzależnienie między genami w chromosomie (określa, na ile wpływ jednego genu na dopasowanie chromo- somu zależy y od wartości innych genów). Sposoby postępowania powania w przypadku zadań zwodniczych: Specyficzny dla danego zadania sposób b kodowania zadania (zakłada ada się odpowiednią wiedzę o przebiegu funkcji celu); Użycie operatora inwersji; Nieporządny algorytm genetyczny. 4

Inwersja operator jednoargumentowy; wybór r 2 punktów w w łańcuchu i odwracana kolejność bitów w między nimi; konieczność pamiętania początkowej pozycji bitów. np.: v = (00011010001) v=(( =((1,0)( )(2,0)(3,0) (4,1)(5,1)(6,0)(7,1) (8,0)(9,0)(10,0)(11,1)) v =(( =((1,0)( )(2,0)(3,0) (7,1)(6,0)(5,1)(4,1) (8,0)(9,0)(10,0)(11,1)) Algorytm korzystający z inwersji poszukuje najlepszego położenia bitów w do formowania cegiełek ek. 5

NIEPORZĄDNY ALGORYTM GENETYCZNY Każdy bit chromosomu jest oznaczony; Łańcuchy mają zmienną długość i nie jest wymagana pełna liczba genów; Możliwa jest: nadmiarowość, powtórzenia i niedookreślenie: v 1 = ((7,1)(1,0)) v 2 = ((3,1)(9,0)(3,1)(3,1)(3,1)) v 3 = ((2,1)(2,0)(4,1)(5,0)(6,0)(7,1)(8,1)); Stosuje się zmodyfikowane operatory (łączenie i cięcie); Operator mutacji jak w AG; Selekcja turniejowa; 6

Łączenie: Skleja dwa łańcuchy z pewnym prawdopodobieństwem: Cięcie: v 1 = ((7,1)(1,0)) v 2 = ((3,1)(9,0)(3,1)(3,1)(3,1)) v 4 = ((7,1)(1,0)(3,1)(9,0)(3,1)(3,1)(3,1)) Rozcina (z pewnym prawdopodobieństwem) łańcuch w losowo wybranym miejscu na dwa osobniki potomne: v 3 = ((2,1)(2,0)(4,1)(5,0)(6,0)(7,1)(8,1)) v 5 = ((2,1)(2,0)(4,1)) v 6 = ((5,0)(6,0)(7,1)(8,1)) NAG dają zaskakująco dobre rezultaty dla niektórych funkcji zawodnych. 7

ZBIEŻNO NOŚĆ AG 8

Przedwczesna zbieżno ność: Przez przedwczesną zbieżno ność rozumie się utratę przez algorytm optymalizacyjny zdolności przeszukiwania przestrzeni poszukiwań przed osiągni gnięciem ekstremum globalnego. Zjawisku temu nie można zapobiec całkowicie, lecz można je ograniczać (np.. stosując c AE). 9

Przyczyny braku zbieżno ności AG: Kodowanie powoduje, iżi algorytmy pracują w innej przestrzeni,, niż przestrzeń zadania; Teoretycznie nieograniczona liczba iteracji w praktyce musi być skończona; Teoretycznie nieograniczona liczebność populacji w praktyce musi być skończona. 10

Strategie zwalczania przedwczesnej zbieżno ności: Zapobieganie kazirodztwu; Jednorodne krzyżowanie; Wykrywanie jednakowych łańcuchów w w populacji. Większo kszość badań koncentruje się na: 1. Określeniu zakresu i rodzaju błęb łędów w związanych zanych z wyborem punktów w próbnych (mechanizm próbkowania) bkowania); 2. Charakterystyce funkcji celu (skalowanie( funkcji celu). 11

Ad. 1. Mechanizm próbkowania (modyfikacje procedury selekcji). Istotne czynniki wpływające na znalezienie optimum globalnego: różnorodność populacji; napór selekcyjny. Celem jest osiągnięcie równowagi. 12

Selekcja proporcjonalna nieodporna na dodanie sta do funkcji celu: y=sin( =sin(x); y*=sin( *=sin(x)+100 stałej x 1 =80 0, y 1 =0.9848 x 1 =80 0, y* 1 =100.9848 x 2 =50 0, y 2 =0.766 x 2 =50 0, y* 2 =100.766 y 1 /y 2 =1.29 y 1 /y 2 =1.002 W ekstremalnym przypadku błądzenie przypadkowe... 13

Modele selekcji: Model elitarny nacisk kładziony k na uzyskanie najlepszych osobników w (forsowanie najlepszych do następnych pokoleń); Model wartości oczekiwanej licznik ustawiany na wartość początkow tkową [eval(v)/eval śr (v)] ] i odpowiednio zmniejszany, gdy osobnik podlega reprodukcji. Gdy licznik osiąga 0 śmierć osobnika; Elitarny model wartości oczekiwanej połą łączenie powyższych metod; Model ze współczynnikiem zatłoczenia oczenia: : nowy chromosom wymienia stary (stary( jest wybierany spośród d takich, które sąs podobne do nowego); 14

Modele selekcji: Metoda stochastycznego próbkowania na podstawie reszty z zamianą - osobniki potomne otrzymuje się uwzględniaj dniając c część całkowit kowitą wartości oczekiwanej pojawienia się osobnika w następnym pokoleniu. O pozostałe e miejsca w populacji osobniki rywalizują na podstawie częś ęści ułamkowej. u Stochastyczne próbkowanie uniwersalne koło o ruletki o równych polach; Selekcja turniejowa wybór r k osobników w (k rozmiar turnieju, zwykle k=2) i selekcja najlepszego z grupy. Powtarzane pop_size razy. Selekcja rankingowa szeregowanie osobników w wg wartości przystosowania i selekcja zgodnie z kolejności cią (wg tzw. linii rangi) związana zana z tzw. superosobnikami. 15

Superosobniki: Niepożą żądane w początkowej fazie działania ania (przedwczesna zbieżno ność); Pozytywne pod koniec pracy algorytmu (zawęż ężenie przestrzeni poszukiwań). 16

Ad. 2. Skalowanie funkcji celu Skalowanie liniowe: f = a f + b (regulacja liczby kopii) f przystosowanie pierwotne; f przystosowanie po skalowaniu; a, b współczynniki czynniki. a, b f śr = f śr f max = c f śr c współczynnik zwielokrotnienia (typowo c = 1.2 2) 2) 17

Populacja młoda: m Przystosowanie po skalowaniu 2f śr f śr f min 0 0 f min f sr f max Przystosowanie pierwotne 18

Populacja dojrzała: a: Przystosowanie po skalowaniu 2f śr f śr 0 f min f śr = f śr f min = 0 0 f min f śr f max Przyst. pierwotne 19

Inne skalowania: Obcinanie na poziomie odchylenia standardowego: f ' = f + ( f d σ ) d liczba całkowita (zwykle d = 1 5); 1 σ odchylenie standardowe populacji. śr Skalowanie zgodne z prawem potęgowym: f ' = f k k parametr bliski 1 (np( np. k = 1.005); 20

LICZEBNOŚĆ POPULACJI 21

Istotny parametr AG... Możliwo liwości regulacji liczebności ci populacji: Metaalgorytmy genetyczne sterujące parametrami innego AG; Skorzystanie z różnych algorytmów w ustalania liczebności ci populacji ; AG ze zmienną liczebności cią populacji. 22

procedure AGzZLP begin t:=0 wybierz populację początkową P(t) oceń P(t) while (not warunek zakończenia) do begin t:=t+1 podnieś wiek każdego osobnika o 1 zmień P(t) (utwórz P (t)) oceń P (t) usuń osobniki o wieku większym od ich czasu życia end end 23

Populacja pomocnicza P (t): pop_size (t) ) = ρ pop_size(t) ρ współczynnik reprodukcji procedure AGzZLP begin t:=0 wybierz populację początkową P(t) oceń P(t) while (not warunek zakończenia) do begin t:=t+1 podnieś wiek każdego osobnika o 1 zmień P(t) oceń P (t) usuń osobniki o wieku większym od ich czasu życia end end Prawdopodobieństwo wyboru do P (t) niezależne ne od dopasowania osobnika. Krzyżowanie i mutacja tylko w populacji P (t); Czas życia przypisywany jest jednorazowo każdemu osobnikowi; Wiek osobnika rośnie od 0; Śmierć osobnika gdy wiek przekracza czas jego życia. 24

Liczebność populacji po jednej iteracji: pop_size(t+1) = pop_size(t) ) + pop_size (t) D(t) D(t) liczba osobników, które wyginęł ęły y w pokoleniu t. Ustalanie czasu życia osobników: Wzmacnianie osobników z wartości cią dopasowania powyżej średniej i osłabianie gorszych od średniej; Dostrajanie liczebności ci populacji do bieżą żącego etapu poszukiwań (szczególnie ochrona przed wykładniczym wzrostem populacji). 25

Przykład ad: ( 2 2 2 ) 2 sin x + y 0.5 f ( x) = 0.5+ 2 2 1+ 0.001( x + y ), -100 x, y 100 2 1.5 1 0.5 0-40 102030-30 -20-10 0 10 20 30-30-20-100 40-40 40 26

2 350 1.5 f śr 300 250 1 200 150 0.5 100 pop_size 50 0 0 10 20 30 40 0 Numer pokolenia 27

AG i dylemat więźnia Dylemat więź ęźnia nia (zdrada czy współpraca) praca): Gracz 1 Gracz 2 P1 P2 Uwagi Z Z 1 1 Kara za wspóln lną zdradę Z W 5 0 Zapłata ata przez naiwnego W Z 0 5 i zachęta do zdrady W W 3 3 Nagroda za współprac pracę Użycie AG do nauki strategii postępowania powania (Axelrod 87) 28

A. Reprezentacja zadania: Korzystamy z informacji o 3 poprzednich ruchach 64 bity (4x4x4 możliwo liwości); 3 ruchy wstępne (przesłanki): +6 bitów Łańcuch 70-bitowy Łańcuch: całkowicie reprezentuje strategię; reprezentuje gracza. 29

B. Algorytm 1. Wybór r początkowej populacji. 2. Sprawdzenie każdego gracza. Każdy gracz rozgrywa gry z pozostałymi graczami. Wynik średnia ze wszystkich rozgrywanych gier. 3. Wybór r graczy do rozmnożenia. Gracz ze średnim wynikiem dostaje jednego partnera, gracz z wynikiem o 1 odchylenie standardowe lepszym dwóch partnerów, gracz z wynikiem o 1 odch.. st. gorszym nie dostaje żadnego partnera. 4. Kojarzenie wygrywających graczy. Krzyżowanie i mutacja wśród w d wybranych. 30

C. Efekty 1. Przedłużaj współprac pracę po 3 kolejnych współpracach pracach W po (WW)(WW)(WW) 2. Zdradzaj, jeśli zdradzono cię po dłuższej d współpracy pracy Z po (WW)(WW)(WZ) 3. Akceptuj przeprosiny W po (WW)(WZ)(ZW) 4. Zapominaj W po (ZW)(WW)(WW) 5. Zdradzaj po 3 kolejnych zdradach Z po (ZZ)(ZZ)(ZZ) 31

METODY UWZGLĘDNIANIA OGRANICZEŃ 32

Np. Problem komiwojażera: Kodowanie klasyczne klasyczne: (W genie danego miasta zapisany jest numer miasta docelowego). Kodowanie permutacyjne: (W kolejnych genach zapisane są kolejne miasta) Dla kodowania klasycznego: 33

1. Metoda kary Kara stała a (w tym kara śmierci); Kara zależna od stopnia naruszenia ograniczenia (zależno ność liniowa, logarytmiczna, wykładnicza itp). 2. Algorytmy naprawy Wady: znaczne wydłużenie czasu obliczeń; - korygowanie rozwiąza zań niedopuszczalnych. algorytm naprawy musi być dopasowany do konkretnego zadania; proces korygowania może e być równie złożony, z ony, jak zadanie początkowe. 34

3. Użycie U dekoderów Dekodery przekształcenia reprezentacji gwarantujące (lub zwiększaj kszających prawdopodobieństwo) generowania osobników w spełniaj niających ograniczenia. Wady: wysokie wymagania obliczeniowe; nie wszystkie ograniczenia mogą być w ten sposób uwzględnione; konieczność stosowania dedykowanych dekoderów. 35

Zadanie załadunku adunku (plecakowe) Istnieje cały y szereg zadań załadunku adunku (zadań plecakowych). Dany jest zbiór r rzeczy o nadanych rozmiarach i wartościach ciach; Należy y wybrać jeden lub wiele rozłą łącznych podzbiorów tak, by suma rozmiarów w w każdym podzbiorze nie przekroczyła a zadanego ograniczenia (pojemność plecaka) i by suma wartości była maksymalna. Wiele zadań z tej klasy jest NP-trudnych trudnych. 36

PROBLEMY NP Problem NP (nondeterministic polynomial): problem decyzyjny, dla którego rozwiązanie zanie można zweryfikować w czasie wielomianowym. Problem P 0 jest NP-zupe zupełny,, gdy: 1. P 0 należy y do klasy NP, 2. Każdy problem z klasy NP da się sprowadzić w czasie wielomianowym do problemu P 0. Problem NP-trudny spełnia tylko punkt 2. Problemy NP-zupe zupełne maja postać pytania czy istnieje. Problemy NP-trudne to zwykle ich optymalizacyjne wersje ( znajd( znajdź najmniejszy ). 37

Zero-jedynkowe zadanie załadunku adunku Wybierz wektor binarny x = x[1],..., x[n] spełniaj niający warunki: n i= 1 xi [] W[] i C n Px ( ) = xi [] Pi [] = max i= 1 gdzie: W[i] zbiór wag (rozmiar( rozmiarów); P[i] zbiór zysków; C pojemność ść. 38

Wylosowano 3 zbiory danych: W[i] przypadkowe ([1,ν]) o rozkładzie jednostajnym; 1. Nieskorelowane: P[i] przypadkowe ([1,ν]) o rozkładzie jednostajnym. 2. SłaboS skorelowane: P[i] = W[i] + przypadkowe ([-r, r]) o rozkładzie jednostajnym. W[i] zbiór wag (rozmiar( rozmiarów); P[i] zbiór zysków; 2. Silnie skorelowane: P[i]= W[i] + r. Przyjęto parametry: ν = 10, r = 5 Większa korelacja to mniejsza wartość różnicy: max(p[i]/ ]/W[i]) - min(p[i]/ ]/W[i]), i = 1...n co może e powodować większe problemy przy optymalizacji. 39

Rozpatrzono 2 rodzaje zadania załadunku: adunku: Z ograniczoną pojemności cią (C 1 ) (Michalewicz) (Rozwiązanie zanie optymalne zawiera bardzo mało artykułów). Ze średnią pojemności cią (C 2 ) (Rozwiązanie zanie optymalne zawiera ok. połowy owy artykułów). Rodzaje użytych u algorytmów: Algorytmy z funkcją kary (A( p [k]); Algorytmy z metodami naprawy (A( r [k]); Algorytmy z dekoderami (A( d [k]). k numer algorytmu 40

Ad. 1 ALGORYTMY Z FUNKCJĄ KARY ( A p [k] ) Wektor x jest reprezentowany przez łańcuch binarny o długod ugości n. Artykuł i-ty jest ładowany do plecaka tylko wtedy, gdy: x[i]=1 Dopasowanie: n eval( x) = x[] i P[] i Pen( x) i= 1 gdzie: Pen(x) funkcja kary: a) Pen(x) = 0 dla rozw.. dopuszczalnych; b) Pen(x) > 0 dla pozostałych rozwiąza zań. 41

Wzrost kary (ze stopniem przekroczenia ograniczenia): a. logarytmiczny: n Ap[1]: Pen( x) = log2 1 + ρ x[] i W[] i C i= 1 b. liniowy: n Ap[2]: Pen( x) = ρ x[] i W[] i C i= 1 c. kwadratowy: n Ap[3]: Pen( x) = ρ x[ i] W[ i] C i= 1 2 ρ = max{p[i]/ ]/W[i]},]}, i = 1...n 42

Ad. 2 ALGORYTMY Z MET. NAPRAWY ( A r [k] ) Wektor x jest reprezentowany przez łańcuch binarny o dł. d n. Artykuł i-ty jest ładowany do plecaka tylko wtedy, gdy x[i]=1. Dopasowanie: n eval( x) = x '[ i] P[ i] i= 1 Można stosować różne metody naprawy. gdzie: x naprawiona wersja wektora x. Zastosowane algorytmy różnir nią jedynie procedurą wybierającą artykuł do wyjęcia z plecaka: A r [1] naprawa losowa; A r [2] naprawa zachłanna anna (Wszystkie artykuły y w plecaku sąs ustawione w porządku malejącym względem stosunków w zysków w do wagi. Procedura wyboru wybiera ostatni artykuł na liście). 43

Ad. 3 ALGORYTMY Z DEKODERAMI ( A d [k] ) Wektor x jest reprezentowany przez łańcuch całkowito kowito-liczbowy o długości n,, gdzie i-ty składnik wektora to liczba z zakresu [1, n i + 1]; Artykuł i-ty jest ładowany do plecaka tylko wtedy, gdy znaj-duje się na bieżą żącej liście. Reprezentacja porządkowa korzysta z listy L artykułów, deko-dowanie dowanie za pomocą wektora następuje poprzez wybór artyku-łów z bieżą żącej listy, np: dla listy: L = (1, 2, 3, 4, 5, 6) dekodowanej za pomocą wektora: < 4, 3, 4, 1, 1, 1 > 4,3,6,1,2,5 otrzymujemy ciąg g artykułów : 4, 3, 6, 1, 2, 5 44

A d [1] dekodowanie losowe Procedura dekodowania tworzy listę L artykułów w takich, że e ich kolejność na liście odpowiada kolejności artykułów w w zbiorze wejściowym (który jest przypadkowy). A d [2] dekodowanie zachłanne anne Procedura dekodowania tworzy listę L artykułów w w porządku malejącym względem stosunków w zysków w do wagi. Dekodowanie wektora x następuje na podstawie uporządkowanego zbioru. Parametry programu: liczebność populacji pop_size = 100 (sta p m = 0.05; p c = 0.65; (stała); a); liczba pokoleń gen_number = 500. Wyniki średnia z 25 obliczeń 45

Korelacja BRAK SŁABA MOCNA Liczba artykułów 100 250 500 100 250 500 100 250 500 Typ pojemności C 1 (ograniczona) C 2 (średnia) A p [1] * 398 A p [2] * 341 A p [3] * 243 Metoda A r [1] C 1 * * * 123 136 58 60 C 2 920 837 826 842 894 867 858 C 1 * * * 64 156 61 61 C 2 1712 1571 1565 1577 1663 1603 1597 C 1 * * * 38 51 38 38 C 2 409 327 328 330 358 334 332 C 1 * * * 44 74 43 45 C 2 921 791 789 798 852 804 799 C 1 * * * 45 94 43 45 C 2 1729 1532 1532 1539 1624 1548 1574 C 1 * * * 62 90 60 60 C 2 742 565 565 567 577 576 576 C 1 * * * 66 117 65 64 C 2 1632 1340 1343 1346 1364 1366 1359 C 1 * * * 68 120 67 64 C 2 3052 2704 2701 2710 2748 2738 2744 46 63 345 A r [2] 94 371 A d [1] 64 355 A d [1] 60 353

Wnioski: Dla zadań ze średnią pojemności cią algorytm A p [1] (z logarytmiczną funkcją kary) jest najskuteczniejszy; Dla zadań z ograniczoną pojemności cią zachłanna anna metoda naprawy (A( r [2]) ) jest najskuteczniejsza. 47

BINARNIE CZY INACZEJ? 48

Binarnie 00000 00001... 11001 11010... 11111 Niebinarnie A B... Z 1... 6 Ciąg binarny Ciąg niebinarny Wartość Dopasowanie 11000 Y 24 576 01011 L 11 121 01000 I 8 64 10011 T 19 361 49

Porównanie liczby schematów: jednakowa liczba osobników; ciągi kodowe o różnych r długod ugościach. By liczba punktów w w obu przestrzeniach była jednakowa: 2 l =k l l długość osobnika zakodowanego binarnie, l dł.. osobnika zakodowanego w alfabecie k-elementowym tu: 2 5 =k 1 k = 32 50

Liczba schematów: 3 l dla alfabetu dwójkowego (k+1) l dla alfabetu k-elementowego. tu: 3 5 = 243 dla alfabetu dwójkowego (32+1) 1 = 33 dla alfabetu k-elementowego. Kod dwójkowy charakteryzuje się największą ze wszyst-kich liczbą schematów przypadającą na bit informacji. 51

Jednakże e jeżeli: eli: 100 zmiennych; dziedzina z zakresu [-500[ 500]; żądana dokładno adność 6 miejsc po przecinku; To: długość łańcucha binarnego wynosi 3000; przestrzeń poszukiwań rzędu 10 10 1000 1000. Dla tak wielkich przestrzeni AG działaj ają słabo... 52

Zasada znaczących cych cegiełek: ek: Kod należy y dobierać w taki sposób, by schematy niskiego rzędu i o małej rozpięto tości wyrażały y własnow asności zadania oraz pozostawały y względnie niezależne ne od schematów w na pozycjach ustalonych. Zasada minimalnego alfabetu: Należy y wybrać najmniejszy alfabet, w którym zadanie wyraża a się w sposób b naturalny. 53

Jeden z celów w zmodyfikowanego kodowania: przybliżenie algorytmu do przestrzeni zadania. Dogodne jest, by dwa punkty leżą żące blisko siebie w przestrzeni reprezentacji (genotyp( genotyp) ) leżały y równier wnież blisko siebie w przestrzeni zadania (fenotyp). np.: (Nie zawsze prawdziwe przy kodowaniu binarnym) Binarnie Całkowitoliczbowo 0111 7 1000 8 54

KOD GRAYA procedure GrayToBin begin value := g 1 b 1 := value for k := 2 to m do begin if g k = 1 then value := NOT value b k := value end end b = b 1, b 2,..., b m liczba binarna g = g 1, g 2,..., g m liczba w kodzie Graya; m długość ciągu kodowego. procedure BinToGray begin g 1 := b 1 for k := 2 to m do g k := b k 1 XOR b k end a b a XOR b 0 0 0 0 1 1 1 0 1 1 1 0 55

Binarnie 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Kod Graya 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 1111 1110 1010 1011 1001 1000 Zmiana 1 bitu w kodzie powoduje, że e otrzymana liczba ma szansę być liczbą bezpośrednio bliską liczbie przed zmianą. 56

KODOWANIE LOGARYTMICZNE Stosowane w celu zmniejszenia długod ugości łańcucha binarnego. [ b b bin] = ( 1) 1 2 b 1 bit znaku wykładnika funkcji wykładniczej adniczej; b 2 bit znaku funkcji wykładniczej adniczej; b b1 2 ( 1) [ bin] 10 bin reprezentacja wykładnika funkcji wykładniczej [bin] 10 wartość dziesiętna liczby zakodowanej e zakodowanej binarnie. 1 [ 10110] = ( 1) 0 e ( 1) [ 110] 10 = e 6 = 0.002478752 0 1 ( 1) [ 01 1 ] 10 3 [ 1011] = ( 1) e = e = 20.08553 9 0 6 2 57

Za pomocą 5 bitów w możliwe jest zakodowanie liczb z zakresu [-e 7, e 7 ] (w kodowaniu binarnym [0, 31]). (w kodowaniu binarnym Dalszą modyfikacją jest zastosowanie KODOWANIA ZMIENNOPOZYCYJNEGO. 58

59 KODOWANIE CHROMOSOMU: Podział chromosomów uwzględniający wartości: - binarne (np np.. zadanie plecakowe); - całkowitoliczbowe (np np.. TSP); - zmiennopozycyjne (typowe inżynierskie zadania optymalizacji); - tekstowe.

60 KODOWANIE CHROMOSOMU: Kodowanie (reprezentacja danych) ) to zbiór stanów w z przestrzeni zadania przedstawiony w postaci skończonego alfabetu znaków. Podział chromosomów uwzględniający strukturę: - standardowe (jak w klasycznym AG); - permutacyjne (np - drzewiaste; - macierzowe. np.. problem komiwojażera - TSP);