Lukasz_Krok_Tobiasz_..
Transkrypt
Lukasz_Krok_Tobiasz_..
Łukasz Krok Tobiasz Siemiński 230 349 230 370 18 kwietnia 2012 r. Laboratorium Podstaw Sztucznej Inteligencji - Sprawozdanie z wykonania ćwiczenia 7-8 18 kwietnia 2012 r. Łukasz Krok Tobiasz Siemiński 230349 230370 Funkcja testowa: Sposoby skalowania: liniowe, logarytmiczne Sposoby selekcji: wybór losowy z powtórzeniami, wybór deterministyczny 1 Łukasz Krok Tobiasz Siemiński 230 349 230 370 18 kwietnia 2012 r. 1. Wstęp Naszym zadaniem w ćwiczeniu była symulacja algorytmu ewolucyjnego przy użyciu arkusza kalkulacyjnego. Funkcja celu która była przez nas symulowana to : Zakres zmienności argumentów funkcji: Dla potrzeb ćwiczenia wyznaczyliśmy 40 osobników, przeskalowując posiadane przez nas losowe liczby z przedziału na zakresy odpowiednie dla każdego z argumentów. Następnie, na każdym osobniku zastosowaliśmy najpierw skalowanie liniowe, a w drugim przypadku skalowanie logarytmiczne. Dla każdego przypadku stosowaliśmy zarówno selekcję przy pomocy wyboru losowego z powtórzeniami i wyboru losowego wg reszt z powtórzeniami. Sprawdziliśmy też sytuacje gdzie nie zostało wykonane wcześniejsze skalowanie. 2. Przebieg ćwiczenia 2.1. Wyznaczenie wartości funkcji przystosowania Funkcja przystosowania musi być dodatnio określona, nie przyjmować wartości równej 0. Aby spełnić powyższe założenie zdecydowaliśmy się przesunąć wartości funkcji celu o 700. Otrzymane wartości przedstawia wykres: 900 800 700 600 500 400 300 200 100 0 1 2 3 4 5 6 7 8 9 10111213141516171819202122232425262728293031323334353637383940 2 Łukasz Krok Tobiasz Siemiński 2.2. 230 349 230 370 18 kwietnia 2012 r. Skalowanie funkcji przystosowania 2.2.1. Skalowanie liniowe Skalowanie liniowe odbywa się wg. wzoru , gdzie: jest wartością funkcji przystosowania, jest jej przeskalowaną wartością, a i b są stałymi dobranymi tak, aby średnia wartość funkcji przystosowania była równa średniej wartości przed skalowaniem, natomiast wartość maksymalna po skalowaniu była kilkakrotnie większa od wartości średniej i aby funkcja nie przyjmowała wartości ujemnych. Wyznaczając współczynniki przyjęliśmy 1.5 oraz , za Uzyskane przez nas współczynniki: Wykres wartości funkcji po skalowaniu liniowym: Skalowanie liniowe 800 700 600 500 400 300 200 100 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1819 2021 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 3 Łukasz Krok Tobiasz Siemiński 230 349 230 370 18 kwietnia 2012 r. 2.2.2. Skalowanie logarytmiczne Skalowanie logarytmiczne polega na wykonaniu następującego przekształcenia: ( Parametr ) ( ( )) musi być większy od dowolnej wartości ( Największy logarytm dla każdego z osobników wyniósł: przyjęliśmy na poziomie: ( )). , zatem współczynnik Następnie przystąpiliśmy do skalowania. Wykres przedstawia otrzymane wartości funkcji: Skalowanie logarytmiczne 1,8 1,6 1,4 1,2 1 0,8 0,6 0,4 0,2 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 Jak można zauważyć, szczególnie dla osobnika 12go w tej metodzie im mniejsza wartość przystosowania pierwotnego osobnika, tym większa jest wartość jego przystosowania po skalowaniu. 4 Łukasz Krok Tobiasz Siemiński 2.3. 230 349 230 370 18 kwietnia 2012 r. Wykorzystanie metod selekcji Przy wykorzystaniu metody selekcji decydujemy, które osobniki zostaną wzięte do następnego pokolenia algorytmu. Dobór odpowiedniej metody selekcji ma istotny wpływ na funkcjonowanie algorytmu ewolucyjnego. W każdej z metod selekcji należy najpierw wykonać kilka czynności wstępnych (wspólnych dla metod), a następnie przeprowadzić obliczenia dla nich charakterystyczne. Do czynności wstępnych należą: 1. 2. 3. 4. 5. 6. Wyznaczyć wartość funkcji przystosowania dla każdego osobnika w populacji Obliczyć przystosowanie całej populacji osobników Obliczyć prawdopodobieństwo wyboru każdego osobnika w populacji Wyznaczyć oczekiwaną liczbę kopii każdego osobnika w populacji Obliczyć część całkowitą oczekiwanej liczby kopii Obliczyć część ułamkową oczekiwanej liczby kopii 5 Łukasz Krok Tobiasz Siemiński 230 349 230 370 18 kwietnia 2012 r. 2.3.1. Selekcja metodą: Wybór losowy z powtórzeniami Ze względu na podobieństwo metoda ta często nazywana jest metodą koła rulety. Wybór przeprowadziliśmy zarówno dla wartości funkcji przed skalowaniem jak i dla obu funkcji skalowania. Poniższy wykres pozwala porównać liczbę osobników wziętych do kolejnego pokolenia przy użyciu wyboru losowego z powtórzeniami w zależności od stosowanej metody skalowania: Wybór losowy z powtórzeniami 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 Bez skalowania Skalowanie liniowe 6 Skalowanie logarytmiczne Łukasz Krok Tobiasz Siemiński 230 349 230 370 18 kwietnia 2012 r. 2.3.2. Selekcja metodą: Wybór losowy wg reszt z powtórzeniami W metodzie wyboru wg reszt z powtórzeniami najpierw wykonaliśmy wszystkie 6 z opisanych powyżej czynności wstępnych. Następnie każdemu osobnikowi w populacji przypisaliśmy tyle kopii do następnego pokolenia ile wynosi część całkowita odpowiadającej mu liczby , gdzie oznacza ilość osobników w populacji, a , prawdopodobieństwo jego wyboru. Brakującą liczbę osobników wyłoniliśmy metodą ruletki (wybór losowy z powtórzeniami), biorąc pod uwagę części niecałkowite pozostałe z liczby , wg których uprzednio posortowaliśmy osobników malejąco. Powyższe czynności przeprowadziliśmy dla każdej z metod skalowania (bez skalowania + 2 metody). Rezultaty obliczeń prezentuje wykres: Wybór losowy wg reszt z powtórzeniami 9 8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 Bez skalowania Skalowanie liniowe 7 Skalowanie logarytmiczne Łukasz Krok Tobiasz Siemiński 230 349 230 370 18 kwietnia 2012 r. 3. Wnioski Zarówno skalowanie liniowe jak i logarytmiczne znacząco poprawiły jakość danych, jednak w obu metodach da się zauważyć wyraźne odstępstwo osobnika 12 od pozostałych. Warto zapamiętać, że w przypadku skalowania logarytmicznego im mniejsza wartość przystosowania pierwotnego osobnika, tym większa jest wartość jego przystosowania po skalowaniu. Porównując selekcje: metodą wyboru losowego z powtórzeniami i metodą wyboru losowego wg reszt z powtórzeniami, mniej zróżnicowane wyniki wydaje się dawać ta druga, gdyby nie osobnik 12., który zdecydowanie częściej zostaje wybrany. Metoda wyboru losowego z powtórzeniami okazała się pominąć większą liczbę osobników niż metoda wyboru losowego wg reszt z powtórzeniami.. Warto w tym momencie zauważyć, że pierwsza z metod selekcji jest zdecydowanie mniej zaawansowana i mniej czasochłonna niż metoda druga. 8