0x01 graphic

WYŻSZA SZKOŁA TECHNOLOGII INFORMATYCZNYCH

Warszawa

Laboratorium sztucznej inteligencji

SPRAWOZDANIE

Zadanie nr 10

Studia zaoczne, grupa IZ-7/VI

Marcin Matusik 1789

Daniel Wójcik 1751

Termin oddania: 30.05.2010

Zadanie 10

Znaleźć, wykorzystując algorytm genetyczny, wartość maksymalną funkcji dwóch zmiennych

f(x,y)=g(x)+h(y)

gdzie

g(x)=sin(x*ex) h(y)=cos(π*e2*y)

Rozwiązaniem będzie punkt (x0, y0 ), dla którego funkcja f(x,y) osiąga globalne ekstremum.

Rozwiązania poszukiwać w przedziałach x[2.500, 2.600] y[2.500, 2.600]
z dokładnością 0,001.

0x08 graphic
0x08 graphic

Chromosom zbudować według schematu

(ustawiając wartość y za wartością x)

gdzie: A - jest binarną reprezentacją wartości x,

B - jest binarną reprezentacją wartości y.

Reprezentacje binarne zbudować w sposób w opisany w zadaniu przykładowym.

Przygotować sprawozdanie, prezentujące osiągnięte wyniki. Wykresy sporządzić korzystając z Excela. Do sprawozdania dołączyć kod źródłowy programu.

Rozwiązanie

Dane wejściowe są reprezentowane w postaci tablicy chromosomów. Jeden chromosom składa się z dwóch elementów: bity od 1 do 10 reprezentują zmienną x, bity od 11do 20 reprezentują zmienną y. Ponieważ na każdą ze zmiennych przypada 10 bitów to mogą one reprezentować 512 punkty kontrolne.

Pozostałe parametry sterujące programem:

● Liczba pokoleń w eksperymencie - LP

● Prawdopodobieństwo mutacji - PM

● Prawdopodobieństwo krzyżowania - P_KRZYZ

● Ilość osobników w danej populacji - PULA.

W badaniach zostały wykorzystane trzy sposoby selekcji najlepszych chromosomów: selekcja

za pomocą koła ruletki, selekcja turniejowa, selekcja elitarna. Program generuje wyniki po

przeliczeniu określonej liczby pokoleń.

Program badań.

W celu zbadania działania algorytmu genetycznego badanie zostało przeprowadzone dla

następujących parametrów programu.

1. Selekcja za pomocą koła ruletki

a) LP = 400, PM = 0.1, P_KRZYZ = 0.75, PULA = 10

A B