Teoria algorytmów ewolucyjnych

Podobne dokumenty
Wyk ady z algorytmów genetycznych Cz¾eść 2: Model algorytmu genetycznego przy dowolnej reprezentacji rozwi azań ¾

Wyk ady z algorytmów genetycznych Cz¾eść 1: Podstawowe informacje o algorytmach. genetycznych.

Pochodne cz ¾astkowe i ich zastosowanie.

Równania ró znicowe wg A. Ostoja - Ostaszewski "Matematyka w ekonomii. Modele i metody".

1 Rozk ad normalny. Szczególnym przypadkiem jest standardowy rozk ad normalny N (0; 1), wartości

1 Praktyczne metody wyznaczania podstawowych miar bez zastosowania komputerów

Wyk ad II. Stacjonarne szeregi czasowe.

Wyznaczniki, macierz odwrotna, równania macierzowe

Funkcje dwóch zmiennych

Ocena ryzyka kredytowego

Konkurs Matematyczny, KUL, 30 marca 2012 r.

Ekstrema funkcji wielu zmiennych.

Wyk lad 7 Baza i wymiar przestrzeni liniowej

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

1 Testy statystyczne. 2 Rodzaje testów

WSTEP ¾ DO ANALIZY MATEMATYCZNEJ

1 Analiza wariancji H 1 : 1 6= 2 _ 1 6= 3 _ 1 6= 4 _ 2 6= 3 _ 2 6= 4 _ 3 6= 4

1 Próba a populacja. Nasze rozwa zania zaczniemy od przedyskutowania podstawowych poj ¾eć statystycznych,

Wprowadzenie do równań ró znicowych i ró zniczkowych.

Wyk lad 7 Metoda eliminacji Gaussa. Wzory Cramera

1 Poj ¾ecie szeregu czasowego

1 Wieloczynnikowa analiza wariancji

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

1 Praktyczne metody wyznaczania podstawowych miar przy zastosowaniu programu EXCEL

Wyk lad 5 W lasności wyznaczników. Macierz odwrotna

Bardzo silnie z poj ¾eciem populacji statystycznej zwiazane ¾ jest poj ¾ecie próby statystycznej.

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

Wyk lad 3 Wyznaczniki

ALGORYTMY GENETYCZNE ćwiczenia

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

Algorytm genetyczny (genetic algorithm)-

1 Miary asymetrii i koncentracji

6. Klasyczny algorytm genetyczny. 1

O zgodności procedur jednoczesnego testowania zastosowanych do problemu selekcji zmiennych w modelu liniowym

Wyk lad 4 Dzia lania na macierzach. Określenie wyznacznika

Statystyka w analizie i planowaniu eksperymentu

Wyk lad 11 1 Wektory i wartości w lasne

Algorytmy ewolucyjne NAZEWNICTWO

1 Rekodowanie w podgrupach i obliczanie wartości w podgrupach

Statystyka w analizie i planowaniu eksperymentu

Pracownia Komputerowa wyk ad VI

Wyk lad 8 macierzy i twierdzenie Kroneckera-Capellego

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

Teoretyczne podstawy algorytmów komputerowego modelowania procesów Markowa

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

Wyk lad 4 Macierz odwrotna i twierdzenie Cramera

Rachunek prawdopodobieństwa

Układy równań i nierówności liniowych

1 Regresja liniowa cz. I

0 + 0 = 0, = 1, = 1, = 0.

Rozdzia l 11. Przestrzenie Euklidesowe Definicja, iloczyn skalarny i norma. iloczynem skalarnym.

Architektura systemów komputerowych

(wymiar macierzy trójk¹tnej jest równy liczbie elementów na g³ównej przek¹tnej). Z twierdzen 1 > 0. Zatem dla zale noœci

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

PRAWA ZACHOWANIA. Podstawowe terminy. Cia a tworz ce uk ad mechaniczny oddzia ywuj mi dzy sob i z cia ami nie nale cymi do uk adu za pomoc

Metody Rozmyte i Algorytmy Ewolucyjne

Wyk ady z analizy portfelowej, cz¾eść II

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

IV. UK ADY RÓWNAÑ LINIOWYCH

Opis programu do wizualizacji algorytmów z zakresu arytmetyki komputerowej

Normy wektorów i macierzy

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

Wyk lad 9 Podpierścienie, elementy odwracalne, dzielniki zera

Wyk lad 9 Baza i wymiar przestrzeni liniowej

Spis treści. 3 Geometria analityczna 20

Ciała i wielomiany 1. przez 1, i nazywamy jedynką, zaś element odwrotny do a 0 względem działania oznaczamy przez a 1, i nazywamy odwrotnością a);

Elementy cyfrowe i układy logiczne

Luty 2001 Algorytmy (7) 2000/2001

Spacery losowe generowanie realizacji procesu losowego

Pracownia Komputerowa wyk ad V

Wyk lad 9 Baza i wymiar przestrzeni liniowej

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

gdy wielomian p(x) jest podzielny bez reszty przez trójmian kwadratowy x rx q. W takim przypadku (5.10)

Wykład 4. Określimy teraz pewną ważną klasę pierścieni.

Grupy i cia la, liczby zespolone

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

III. ZMIENNE LOSOWE JEDNOWYMIAROWE

Statystyka w analizie i planowaniu eksperymentu

RACHUNEK MACIERZOWY. METODY OBLICZENIOWE Budownictwo, studia I stopnia, semestr 6. Instytut L-5, Wydział Inżynierii Lądowej, Politechnika Krakowska

Matematyczne Podstawy Kognitywistyki

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

Podstawowe działania w rachunku macierzowym

5. Rozwiązywanie układów równań liniowych

1 Wieloczynnikowa analiza wariancji ciag ¾ dalszy

A i. i=1. i=1. i=1. i=1. W dalszej części skryptu będziemy mieli najczęściej do czynienia z miarami określonymi na rodzinach, które są σ - algebrami.

Podstawy metod probabilistycznych. dr Adam Kiersztyn

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

F t+ := s>t. F s = F t.

Plan wyk ladu. Kodowanie informacji. Systemy addytywne. Definicja i klasyfikacja. Systemy liczbowe. prof. dr hab. inż.

Uniwersytet Kazimierza Wielkiego w Bydgoszczy Zespół Szkół nr 5 Mistrzostwa Sportowego XV Liceum Ogólnokształcące w Bydgoszczy

1. Rozwiązać układ równań { x 2 = 2y 1

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych.

Statystyka w analizie i planowaniu eksperymentu

Wyk lad 5 Grupa ilorazowa, iloczyn prosty, homomorfizm

Wyk ady z analizy portfelowej, cz ¾eść II

1 Działania na zbiorach

Wyk lad 14 Cia la i ich w lasności

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

Zdarzenia losowe i prawdopodobieństwo

Aproksymacja funkcji a regresja symboliczna

Transkrypt:

Marcin Studniarski Teoria algorytmów ewolucyjnych Wyk ad dla doktorantów Semestr letni 0/3 Klasyczny algorytm genetyczny Rozwa zamy funkcj e określona na przestrzeni euklidesowej: f : R n! R. Za- ó zmy, ze szukamy maksimum funkcji f na zbiorze C := ny [ i ; i ] () i= (iloczyn kartezjański n przedzia ów domkni etych). Do powy zszego zadania optymalizacji chcemy zastosować algorytm genetyczny, w którym funkcja przystosowania jest sama funkcja f. W tym celu zak adamy, ze f(x) > 0 dla ka zdego x C: () Jeśli warunek () nie jest spe niony, a funkcja f jest ograniczona z do u, to spe nienie tego za o zenia mo zna osiagn ać dodajac do f pewna sta a. W przypadku zadania minimalizacji mo zna jako funkcj e przystosowania wziać f (z dodana ewentualnie pewna sta a). W klasycznym algorytmie genetycznym (zwanym tak ze prostym algorytmem genetycznym) osobniki (chromosomy) zakodowane sa w postaci ańcuchów binarnych (tj. skończonych ciagów o ustalonej d ugości z o zonych z zer i jedynek). Zatem punkty przestrzeni R n, b edace ciagami n liczb rzeczywistych, musimy jakoś zakodować jako ańcuchy binarne. Wiadomo, ze w komputerze mo zna reprezentować tylko skończony podzbiór zbioru liczb rzeczywistych. Zatem algorytm genetyczny zawsze dzia a na pewnym skończonym zbiorze osobników, zwanym przestrzenia poszukiwań, który oznaczamy symbolem. W naszym przyk adzie nale zy skonstruować zbiór C, gdzie C jest dany wzorem (). Liczebność zbioru zale zy od wymaganej dok adności obliczeń. Przypuśćmy, ze wynosi ona k cyfr po przecinku. Wówczas dzielimy ka zdy przedzia [ i ; i ] na ( i i ) 0 k podprzedzia ów o równej d ugości. Oznaczmy przez m i najmniejsza liczb e ca kowita spe niajac a nierówność ( i i ) 0 k mi : (3) Wówczas reprezentacja, posiadajaca ka zda zmienna x i zakodowana jako ańcuch binarny o d ugości m i, spe nia przyjete wymagania dok adności. Poniewa z d ugości przedzia ów [ i ; i ] odpowiadajacych poszczególnym zmiennym moga być ró zne, wi ec ilość bitów niezb ednych do zakodowania ka zdej zmiennej mo ze być inna. Dla zamiany ańcucha binarnego na liczb e rzeczywista u zywamy nast epujacego wzoru: jeśli (a a :::a mi a mi ) (4)

jest ańcuchem binarnym o d ugości m i, to i x i = i + i mi mx i j=0 j a mi j (i = ; :::; n): (5) Reprezentacja binarna ca ego wektora x = (x ; :::; x n ) jest konkatenacja (sklejeniem) ańcuchów (4) odpowiadajacych kolejnym zmiennym. D ugość takiego ańcucha wynosi nx m = m i ; (6) i= przy czym w ańcuchu tym pierwszych m bitów s u zy do zakodowania liczby x, nastepnych m bitów do zakodowania liczby x, itd. Parametrami algorytmu sa prawdopodobieństwo krzy zowania p c oraz prawdopodobieństwo mutacji p m, b edace liczbami z przedzia u [0; ]. Poczatkow a populacj e r osobników tworzymy w sposób losowy, tzn. losujemy kolejne bity kolejnych osobników. Osobniki (chromosomy) znajdujace sie w aktualnej populacji oznaczamy v ; v ; :::; v r, a odpowiadajace im punkty przestrzeni R n (powsta e przez rozkodowanie ańcuchów binarnych) oznaczamy odpowiednio v ; v ; :::; v r. Kolejne kroki klasycznego algorytmu genetycznego przedstawiaja sie nastepujaco [3, str. 3 33].. (ocena populacji) Wyznaczyć wartości funkcji przystosowania dla wszystkich chromosomów: eval(v j ) := f(v j ); j = ; :::; r: (7). Obliczyć ca kowite przystosowanie populacji, wyra zajace sie wzorem: F := rx eval(v j ): (8) j= 3. Obliczyć prawdopodobieństwo wyboru p j dla ka zdego chromosomu v j (j = ; :::; r) ze wzoru: p j := eval(v j) : (9) F 4. Obliczyć prawdopodobieństwo skumulowane q j dla ka zdego chromosomu v j (j = ; :::; r) ze wzoru: jx q j := p l : (0) 5. (proces selekcji polegajacy na r-krotnym uruchomieniu ko a ruletki ) Wykonać r razy nastepujace czynności: (a) Wygenerować losowa liczb e zmiennopozycyjna z [0; ]. (b). Jeśli z q, to wybrać pierwszy chromosom v. W przeciwnym razie, jeśli q j < z q j, przy czym j r, to wybrać chromosom v j. [Uwaga. Prawdopodobieństwo wyboru osobnika jest proporcjonalne do jego przystosowania. Te same osobniki moga być wybierane wielokrotnie. Otrzymana w ten sposób populacje nazywamy populacja po srednia.] l=

6. (wybór chromosomów do krzy zowania) Dla ka zdego chromosomu z populacji pośredniej wykonać nast epujace czynności: (a) Wygenerować losowa liczb e zmiennopozycyjna z [0; ]. (b) Jeśli z p c, to wybrać dany chromosom do krzy zowania. [Uwaga. Oczekiwana ilość chromosomów wybranych w ten sposób wynosi rp c.] 7. Jeśli ilość chromosomów wybranych w kroku 6 jest parzysta, to po aczyć je losowo w pary. W przeciwnym razie do aczyć losowo jeden chromosom do grupy wybranych lub usunać losowo jeden chromosom. 8. (krzy zowanie) Dla ka zdej pary chromosomów otrzymanej w kroku 7 wygenerować losowa liczb e ca kowita s f; ::m g. Liczba ta wskazuje pozycj e punktu krzy zowania. Nast epnie wykonać krzy zowanie zgodnie z regu a: (a :::a s a s+ :::a m )! (a :::a s b s+ :::b m ) () (b :::b s b s+ :::b m ) (b :::b s a s+ :::a m ) 9. (mutacja) Dla ka zdego chromosomu w aktualnej populacji po krzy zowaniu i dla ka zdego bitu w chromosomie wykonać nastepujace czynności: (a) Wygenerować losowa liczb e zmiennopozycyjna z [0; ]. (b) jeśli z p m, to zmutować dany bit (tzn. zmienić 0 na lub odwrotnie). [Uwaga. Oczekiwana ilość zmutowanych bitów w pojedynczym chromosomie wynosi rmp m.] 0. Jeśli nie jest spe nione kryterium zatrzymania, to przejść do kroku. [Uwaga. Kryterium zatrzymania mo ze mieć ró zne formy, np. mo ze być to ustalona z góry ilość iteracji. Probabilistyczne kryteria zatrzymania b eda podane w dalszej cz eści wyk adu.] Poj ecie schematu i jego w asności Schematem nazywamy ańcuch o d ugości m z o zony z symboli 0, i * (gdzie * oznacza wszystko jedno ). Reprezentuje on wszystkie ańcuchy zerojedynkowe, które zgadzaja sie z nim na wszystkich pozycjach, gdzie nie wystepuje gwiazdka. Przyk ady: (a) Schemat S = (0**0) reprezentuje cztery ańcuchy: (0000), (000), (00), (000). [Uwaga. Mówimy, ze ańcuchy te sa zgodne z S.] (b) Schemat (00) reprezentuje tylko jeden ańcuch (00) (c) Schemat (****) reprezentuje wszystkie ańcuchy o d ugości 4. W asności schematów: (a) Ka zdy schemat reprezentuje g ańcuchów, gdzie g jest ilościa symboli * w schemacie. (b) Ka zdy ańcuch o d ugości m jest zgodny z m schematami. (c) Dla ańcuchów o d ugości m istnieje 3 m mo zliwych schematów. Rz edem schematu S (oznaczanym o(s)) nazywamy ilość pozycji wype nionych zerami lub jedynkami, czyli tzw. pozycji ustalonych. D ugo scia de niujac a schematu S (oznaczana (S)) nazywamy odleg ość miedzy pierwsza i ostatnia ustalona pozycja w ańcuchu. Przyk ady: 3

S = (***00*0); o(s ) = 6; (S ) = 0 4 = 6: S = (****00**0*); o(s ) = 3; (S ) = 9 5 = 4: S 3 = (0**00); o(s 3 ) = 8; (S 3 ) = 0 = 9: S 4 = (*****); o(s 4 ) = ; (S) = 4 4 = 0: 3 Mody kacje operatora krzy zowania 3. Krzy zowanie wielopunktowe Wada klasycznego krzy zowania jednopunktowego jest to, ze schematy o ustalonych pozycjach pierwszej i ostatniej, takie, jak np. schemat S = (0*******00), sa zawsze niszczone, niezale znie od wyboru pozycji krzy zowania wynika to z faktu, ze pozycja krzy zowania musi wystapić pomi edzy pierwszym a ostatnim genem chromosomu. Uniemo zliwia to aczenie prostszych schematów w schematy bardziej skomplikowane. Dla ilustracji rozwa zmy drugi schemat S = (***0*****) oraz dwa chromosomy zgodne odpowiednio z S i S : v = (00000000); v = (0000): Widać, ze w wyniku klasycznego krzy zowania v i v nie mo zna otrzymać chromosomu zgodnego ze schematem S 3 = (0*0***00): Problem ten mo zna rozwiazać stosujac krzy zowanie wielopunktowe, w którym zamiast jednej pozycji krzy zowania wyst epuje ich wi ecej, przez co chromosomy dzielone sa na ustalona skończona ilość segmentów. Pozycje krzy zowania losuje sie niezale znie od siebie ze zbioru liczb f; :::; m g, gdzie m jest d ugościa chromosomu (losowanie to jest bez zwracania, tzn. dwie pozycje krzy zowania nie moga wypaść w tym samym miejscu). Kolejne segmenty u potomka pobierane sa na przemian od pierwszego i drugiego rodzica. W szczególności, zastosowanie krzy zowania dwupunktowego do wymienionych wcześniej v i v, przy wybranych pozycjach krzy zowania po drugim i ósmym genie, daje par e potomków v 0 = (0j000j000); v 0 = (j0000j0); z których pierwszy jest zgodny ze schematem S 3. 4

3. Krzy zowanie p-jednostajne Majac dana pare rodziców, tworzymy pare potomków w nastepujacy sposób: dla ka zdej pozycji losujemy niezale znie cyfr e 0 lub. Jeśli wylosowano 0, to wartość bitu na tej pozycji u pierwszego potomka jest kopiowana od pierwszego rodzica, a u drugiego potomka od drugiego rodzica. Jeśli wylosowano, to post epujemy odwrotnie wartość odpowiedniego bitu u pierwszego potomka pochodzi od drugiego rodzica, a u drugiego potomka od pierwszego rodzica. Prawdopodobieństwo wylosowania zera jest przy tym sta e, równe p. Na przyk ad przy p = =, zastosowanie krzy zowania p-jednostajnego do chromosomów v i v z 4. mo ze dać w wyniku nastepujac a pare potomków: v 00 = (0 0 0 0 0 0 0 ); v 00 = ( 0 0 0 0 0 ); gdzie dolne indeksy i wskazuja na rodzica (odpowiednio v i v ), od którego pochodzi wartość danego bitu. 3.3 Krzy zowanie dwupunktowe wariant zmody kowany Wariant ten aczy w sobie cechy krzy zowania jedno- i dwupunktowego. Ze zbioru f; :::; m g losujemy niezale znie ze zwracaniem dwie pozycje krzy zowania s i s. Jeśli s = s, wówczas realizowane jest klasyczne krzy zowanie jednopunktowe. W przeciwnym przypadku odbywa si e krzy zowanie dwupunktowe, tzn. wymieniane sa segmenty rodziców znajdujace sie miedzy pozycjami s i s. 3.4 Krzy zowanie wielopunktowe z maska Stosujac poj ecie maski krzy zowania, mo zna opisać w jednolitej postaci wiele ró znych wariantów krzy zowania. Maska krzy zowania jest chromosom w wylosowany ze zbioru wszystkich ańcuchów binarnych o ustalonej d ugości m. Po wylosowaniu maski nastepuje proces tworzenia pary potomków z pary rodziców, b edacych równie z chromosomami o d ugości m. Polega on na wymianie bitów pomiedzy rodzicami na pozycjach, na których w masce w wystepuja jedynki. Na przyk ad przez zastosowanie maski w 0 = (00000) do pary chromosomów v i v z 3., otrzymujemy pare potomków v 0 i v 0 z tego samego paragrafu maska ta realizuje zatem krzy zowanie dwupunktowe. Z kolei, stosujac do tej samej pary rodziców maske w 00 = (000000); otrzymamy pare potomków v 00 i v 00 z 3.. Natomiast krzy zowanie jednopunktowe mo zna wpisać w ten schemat post epowania przyjmujac, ze maske w losuje si e z jednakowym prawdopodobieństwem ze zbioru ańcuchów w = (0000000000); w = (000000000); ::: w m = (0): 5

4 Algorytm RHS i jego w asności Algorytm RHS (Random Heuristic Search poszukiwanie losowe heurystyczne), opisany w [7], jest określony przez populacj e poczatkow a P 0 oraz regu e przej scia, która dla danej populacji P i wyznacza nowa populacje P i+. Iterujac, otrzymujemy ciag populacji: P 0! P! P! ::: Ka zda populacja sk ada si e ze skończonej ilości osobników b edacych elementami ustalonego zbioru skończonego, zwanego przestrzenia poszukiwań. Populacje sa multizbiorami, co oznacza, ze te same osobniki moga wystepować wielokrotnie w danej populacji. Aby formalnie opisać dowolna populacj e P jako obiekt matematyczny, za- ó zmy, ze = fc 0 ; c ; :::; c n g. Liczb e n nazywamy rozmiarem przestrzeni poszukiwań. Niech K f0; ; :::; n g b edzie podzbiorem z o zonym z indeksów osobników, które sa reprezentowane w populacji P. Przypuśćmy, ze osobnik c i wystepuje v i N razy w populacji P (i K). Wówczas populacje P mo zemy zde niować jako zbiór par uporzadkowanych P = f(c i ; v i ) : i Kg : Rozmiarem populacji P nazywamy liczb e r := X ik v i : () W asność. Ilość ró znych populacji o rozmiarze r, jakie mo zna utworzyć z elementów przestrzeni poszukiwań o rozmiarze n, wynosi n + r : r Dowód. Powy zsza w asność wynika z wzoru na liczb e r-wyrazowych kombinacji z powtórzeniami wybranych ze zbioru n-elementowego [4, Tw., str. 30]. Przedstawiony powy zej model osobnika i populacji mo zna uprościć, identy kujac z podzbiorem liczb ca kowitych = f0; ; :::; n g. Wówczas populacja mo ze być reprezentowana jako wektor cz esto sci v = (v 0 ; v ; :::; v n ) T ; (3) gdzie v i jest liczba egzemplarzy osobnika i w populacji (liczba ta wynosi zero, jeśli i-ty osobnik w populacji nie wyst epuje). Zauwa zmy, ze taka reprezentacja populacji zawiera w sobie informacj e o jej rozmiarze, który wynosi nx r = v i : (4) i=0 W dalszych rozwa zaniach b edzie przydatna ogólniejsza reprezentacja populacji, która nie jest uzale zniona od konkretnego rozmiaru. Mianowicie przyjmujemy, ze populacja jest opisana przez wektor p = (p 0 ; p ; :::; p n ) T ; (5) 6

gdzie p i jest proporcja, w jakiej osobnik i jest reprezentowany w populacji. Wspó rzedne wektora p musza zatem być nieujemne i sumować sie do, co oznacza, ze wektory populacji sa elementami zbioru ( ) nx := x R n : x i 0 (8i); x i = : (6) Jeśli dany jest rozmiar populacji r, to zale zność mi edzy wektorami (3) i (5) jest dana wzorem v = rp. Zbiór (6) jest sympleksem w przestrzeni R n. Jednak nie wszystkie punkty tego sympleksu odpowiadaja skończonym populacjom. Dla ustalonego r N, wszystkie populacje rozmiaru r tworza nastepujacy podzbiór sympleksu : ( ) r := nx x R n : x i N [ f0g (8i); x i = r : r Zde niujemy teraz odwzorowanie i=0 i=0 G :! zwane heurystyka [7] lub operatorem generacyjnym [5], w nastepujacy sposób: dla danego wektora p opisujacego aktualna populacj e, wartość G(p) jest wektorem wyznaczajacym rozk ad prawdopodobieństwa, z którego losowana jest próba r-elementowa tworzaca nastepna populacje. Zatem i-ta wspó rzedna G(p) i wektora G(p) jest prawdopodobieństwem wylosowania osobnika i do nowej populacji (w ka zdym z r niezale znych losowań ze zwracaniem). Regu e przejścia nazywamy dopuszczalna, je zeli jest z o zeniem heurystyki G z losowaniem próby w wy zej opisany sposób: (p) = próba(g(p)) dla p : Oczywiście tak zde niowana regu a przejścia jest niedeterministyczna, tzn. stosujac ja wielokrotnie do tego samego wektora p, otrzymujemy na ogó ró zne wyniki. Twierdzenie. [7] Dla dowolnej populacji p o rozmiarze r prawdopodobieństwo, ze nast epna populacja (równie z o rozmiarze r) jest q, wynosi ny r! j=0 (G(p) j ) rqj : (rq j )! Dowód. Poniewa z populacje o rozmiarze r sa elementami zbioru r, mo zemy za o zyć, ze q = v r dla pewnego wektora v o wspó rzednych b edacych nieujemnymi liczbami ca kowitymi, spe niaj acymi warunek (). Aby wektor q zosta wybrany jako nastepna populacja, wynikiem v 0 losowań spośród wszystkich r losowań musi być (osobnik o numerze) 0, wynikiem v losowań musi być, itd. Prawdopopdobieństwo wylosowania j-tego osobnika w pojedynczym losowaniu wynosi G(p) j. Obliczymy teraz prawdopodobieństwo wybrania wektora q w wyniku r niezale znych losowań. Poni zsze rozumowanie jest uogólnieniem schematu Bernoulliego [, str. 49] na przypadek, gdy zamiast dwóch mo zliwych wyników ka zdego doświadczenia ("sukces" lub "pora zka") mamy n mo zliwych 7

). Przestrzenia zdarzeń elemen- wyników (wylosowanie osobnika 0; ; :::; n tarnych jest tutaj zbiór r = f! = (! 0 ;! ; :::;! r ) :! i ; i = 0; ; :::; r g; gdzie! i oznacza wynik i-tego losowania. Prawdopodobieństwo otrzymania konkretnego ciagu wyników! wynosi ny P (f!g) = (G(p) j ) #j ; j=0 gdzie #j oznacza liczb e wspó rzednych wektora! równych j. Niech S(q) r oznacza zbiór zdarzeń elementarnych sprzyjajacych wylosowaniu populacji q, tzn. ( ) nx S(q) :=! r : #j = v j ; j = 0; ; :::; n ; v i = r : Liczba elementów zbioru S(q) jest dana wzorem [, Przyk ad, str. 6] r r v0 r (v0 + ::: + v ::: n 3 ) r! = v 0 v v n v 0!v!:::v n! : Wówczas prawdopodobieństwo wylosowania populacji q wynosi P (S(q)) = X!S(q) j=0 ny (G(p) j ) #j = X!S(q) j=0 i=0 ny (G(p) j ) vj : (7) Zauwa zmy, ze (dla ustalonego q) wszystkie sk adniki sumy po prawej stronie wzoru (7) sa jednakowe, poniewa z nie zale z a od!. Zatem suma ta jest równa jednemu sk adnikowi pomno zonemu przez liczb e elementów S(q): P (S(q)) = n r! Y v 0!v!:::v n! j=0 (G(p) j ) vj = r! ny j=0 (G(p) j ) vj v j! ny = r! j=0 (G(p) j ) rqj : (rq j )! 5 Algorytm RHS jako ańcuch Markowa Ciag zmiennych losowych fx t g tn0 (gdzie N 0 := N [ f0g) określonych na tej samej przestrzeni probabilistycznej (Z; F; Pr), o wartościach w przeliczalnym zbiorze S (przestrzeni stanów) nazywamy ańcuchem Markowa, je zeli dla ka zdego t N i ka zdego ciagu s 0 ; s ; :::; s t S spe niony jest warunek Pr (X t = s t j X t = s t ; :::; X = s ; X 0 = s 0 ) = Pr (X t = s t j X t = s t ) ; (8) o ile Pr(X t = s t ; :::; X = s ; X 0 = s 0 ) > 0. Macierz P = [p i;j ] i;js nazywamy macierza stochastyczna, je zeli wszystkie jej wyrazy sa nieujemne oraz suma ka zdego wiersza wynosi : X p i;j 0 (8i; j S), p i;j = (8i S): js 8

Macierz stochastyczna (t) = [ i;j (t)] i;js nazywamy macierza przej scia ańcucha Markowa fx t g tn0 w t-tym kroku, t, je zeli i;j (t) = Pr (X t = s j j X t = s i ) (9) dla wszystkich j S oraz i takich, ze Pr(X t = s i ) > 0. Je zeli fx t g tn0 jest ańcuchem Markowa, to rozk ad zmiennej losowej X 0 nazywamy rozk adem poczatkowym. ańcuch Markowa nazywamy jednorodnym (w czasie), gdy istnieje macierz = [ i;j ] i;js b ed aca dla ka zdego t jego macierza przejścia w t-tym kroku. Powróćmy teraz do opisu algorytmu RHS przedstawionego w 4. Algorytm ten generuje ciag populacji ^p, (^p), (^p); :::, (0) gdzie ^p jest ustalona populacja poczatkow a. Algorytm RHS mo zna uwa zać za ańcuch Markowa, gdzie zbiorem stanów jest r Xr n, a wartościami kolejnych zmiennych losowych (wektorów losowych) X 0, X, X,... sa populacje (0). Poniewa z populacja poczatkowa jest ustalona, wi ec mo zna przyjać, ze X 0 jest wektorem losowym przyjmujacym z prawdopodobieństwem pojedyncza wartość ^p. Oznaczmy przez Pr (q j p) = Pr((p) = q) prawdopodobieństwo otrzymania populacji q w aktualnej iteracji algorytmu RHS pod warunkiem, ze poprzednia populacja jest p. Z Twierdzenia otrzymujemy ny Pr(q j p) = r! j=0 (G(p) j ) rqj : () (rq j )! Poniewa z powy zsze wyra zenie nie zale zy od numeru iteracji t, wnioskujemy stad, ze algorytm RHS jest jednorodnym ańcuchem Markowa ze sta a macierza przejścia = [ p;q ] p;qs, gdzie S = r Xr n, a elementy p;q = Pr(q j p) sa dane wzorem (). 6 Wyznaczenie macierzy przejścia dla algorytmu genetycznego Obecnie wyznaczymy macierz przejścia dla algorytmu genetycznego, b edacego szczególnym przypadkiem algorytmu RHS. Za ó zmy, ze pojedyncza iteracja algorytmu genetycznego sk ada si e z trzech kolejno wykonywanych operacji: selekcji proporcjonalnej (zwanej inaczej ruletkowa), krzy zowania i mutacji. Rozwa zmy najpierw algorytm, który w ka zdej iteracji dokonuje jedynie selekcji. W procesie selekcji proporcjonalnej wykorzystywana jest funkcja przystosowania f :! R +. Funkcje te mo zemy rozwa zać jako wektor f = (f 0 ; f ; :::; f n ) R n, którego wspó rzedne sa dane wzorem f k := f(k). Przy za o zeniu, ze poprzednia populacja jest p, prawdopodobieństwo wylosowania osobnika i przy pojedynczym uruchomieniu ko a ruletki wynosi G(p) i = Pr([i] j p) s = v i f i p i f i P n j=0 v = P n jf j j=0 p ; () jf j 9

gdzie symbol [i] oznacza, ze wybieramy pojedynczego osobnika i, a nie ca a populacj e, a dolny indeks s oznacza, ze mamy do czynienia z algorytmem genetycznym wykorzystujacym jeden operator selekcj e. Aby otrzymać ca a nowa populacj e, nale zy wylosować r-elementowa prób e z rozk adu prawdopodobieństwa (). Prawdopodobieństwo wygenerowania populacji q w ten sposób wynosi na podstawie wzorów () i () ny Pr(q j p) s = r! j=0 (Pr([j] j p) s ) rqj : (3) (rq j )! Przejdźmy teraz do przypadku, gdy iteracja algorytmu genetycznego przebiega w dwóch etapach: najpierw selekcja, potem krzy zowanie. Oznaczmy przez c i;j;k prawdopodobieństwo, ze w wyniku krzy zowania osobnika i z osobnikiem j otrzymujemy osobnika k. Dok adny sposób realizacji krzy zowania pary osobników nie jest w tym opisie istotny zale zy on od reprezentacji osobnika i przyj etego wariantu krzy zowania (np. jednopunktowe lub wielopunktowe). Poniewa z do niniejszego modelu potrzebny jest nam jeden potomek dla pary rodziców, przyjmujemy, ze jest on losowany z prawdopodobieństwem / spośród dwóch potomków wytworzonych przez dany wariant krzy zowania. Gwarantuje to spelnienie warunku c i;j;k = c j;i;k ; (4) poniewa z prawdopodobieństwo otrzymania osobnika k z pary rodziców (i; j) jest takie samo jak z pary (j; i), tj. przy zamianie rodziców rolami. Prawdopodobieństwo wygenerowania osobnika k przy poprzedniej populacji p poprzez zastosowanie najpierw selekcji, a potem krzy zowania, wynosi nx nx Pr([k] j p) sc = c i;j;k Pr([i] j p) s Pr([j] j p) s : (5) i=0 j=0 Aby udowodnić wzór (5), nale zy skorzystać z nast epujacego twierdzenia o prawdopodobieństwie ca kowitym [, str. 37]: Twierdzenie. Je zeli fb ; B ; :::; B l g jest rozbiciem zbioru zdarzeń elementarnych Z na zdarzenia o dodatnim prawdopodobieństwie, to dla dowolnego zdarzenia A lx Pr(A) = Pr (A j B i ) Pr (B i ) : i= Podobnie jak w przypadku wzoru (3), otrzymujemy nast epujacy wzór na elementy macierzy przejścia: ny Pr(q j p) sc = r! j=0 (Pr([j] j p) sc ) rqj : (6) (rq j )! Rozwa zmy teraz sytuacj e, gdy pojedyncza iteracja obejmuje wszystkie trzy etapy: selekcj e, krzy zowanie i mutacj e (w podanej kolejności). Za ó zmy, ze mutacja polega na zamianie jednego elementu przestrzeni poszukiwań na inny, z określonym prawdopodobieństwem. Oznaczmy przez u i;j prawdopodobieństwo, 0

ze osobnik i w wyniku mutacji zostanie zamieniony na osobnika j. Otrzymujemy w ten sposób macierz U = [u i;j ] i;j o wymiarach n n. Prawdopodobieństwo wygenerowania osobnika j w wyniku kolejnego zastosowania trzech wymienionych operacji, wynosi (przy za o zeniu, ze poprzednia populacja jest p) nx Pr([j] j p) scm = u ij Pr([i] j p) sc : (7) i=0 Elementy macierzy przejścia algorytmu genetycznego sa zatem dane wzorem ny Pr(q j p) scm = r! j=0 (Pr([j] j p) scm ) rqj : (8) (rq j )! 7 Wyznaczenie heurystyki algorytmu genetycznego Podobnie jak w poprzednim rozdziale zak adamy, ze iteracja algorytmu genetycznego sk ada si e z selekcji proporcjonalnej, krzy zowania i mutacji (wykonywanych w podanej kolejności). Rozwa zajac selekcje jako operator F :!, otrzymujemy na podstawie wzoru () F(p) = f T p (f 0p 0 ; f p ; :::; f n p n ) T = diag(f)p f T ; (9) p gdzie diag(f) jest macierza diagonalna o wyrazach na g ównej przekatnej b eda- cych kolejnymi wspó rz ednymi wektora f. Opiszemy teraz dzia anie krzy zowania na wektor populacji. W tym celu zde niujemy operator C :! taki, ze k-ta wspó rzedna C(p) k wektora C(p) jest prawdopodobieństwem, ze osobnik k zostanie utworzony w wyniku jednokrotnego wykonania operacji krzy zowania na populacji p. Operacja ta polega na wylosowaniu (ze zwracaniem) dwóch osobników i, j (stanowiacych par e rodziców) wed ug rozk adu prawdopodobieństwa p, a nast epnie wykonaniu krzy zowania tych osobników w sposób opisany w 3, co daje w wyniku jednego potomka. Prawdopodobieństwo uzyskania w ten sposób osobnika k otrzymujemy przez zsumowanie prawdopodobieństw wszystkich mo zliwych zdarzeń prowadzacych do takiego wyniku: nx nx C(p) k = c i;j;k p i p j : (30) i=0 j=0 Dla ka zedgo k zde niujmy macierz C k := [c i;j;k ] i;j ; (3) która na podstawie wzoru (4) jest symetryczna. Wówczas poszczególne wzory (30) dla ró znych osobników k mo zna po aczyć w jeden wzór zapisany w postaci macierzowej: C(p) = p T C 0 p; p T C p; :::; p T C n p T : (3)

Przejdźmy teraz do opisu dzia ania mutacji. Odpowiedni operator U :! powinien mieć te w asność, ze U(p) k jest prawdopodobieństwem wygenerowania osobnika k w wyniku jednokrotnego wykonania operacji mutacji na populacji p. Odbywa si e to poprzez wylosowanie osobnika i z populacji wed ug rozkladu p, a nast epnie poddanie go mutacji (której konkretny sposób wykonania nie jest tu istotny) w celu otrzymania innego osobnika. Uwzgledniajac wszystkie zdarzenia prowadzace do wyniku k, otrzymamy Zatem w postaci macierzowej nx U(p) k = p i u i;k: (33) i=0 U(p) = (p T U) T = U T p: (34) Heurystyka algorytmu genetycznego jest z o zeniem trzech odwzorowań: G = U C F: (35) Zatem, uwzgl edniajac wzory (9), (3) i (34) i oznaczajac dla skrócenia D f := diag(f), otrzymujemy G(p) = U(C(F(p))) = U T C(F(p)) 8 Selekcja = U T F(p) T C 0 F(p); F(p) T C F(p); :::; F(p) T C n F(p) T = (f T p) U T p T D T f C 0 D f p; p T D T f C D f p; :::; p T D T f C n D f p T : (36) Wektor s nazywamy rozk adem selekcji (lub wektorem selekcji), je zeli dla ka zdego i wspó rzedna s i jest prawdopodobieństwem, z jakim element i jest wybierany (przez losowanie ze zwracaniem) z aktualnej populacji p w celu uczestniczenia w formowaniu nowej generacji. Rozk ad selekcji musi spe niać warunek (p i = 0) =) (s i = 0) (37) (jeśli osobnik i nie nale zy do populacji p, to nie mo ze być wybrany). Z rozk adem selekcji s zwiazana jest niedeterministyczna funkcja selekcji s :!. Wynikiem s(p) zastosowania funkcji selekcji s do populacji p jest osobnik i z prawdopodobieństwem danym przez i-ta wspó rzedna s i rozk adu selekcji s. Rozk ad selekcji zale zy od populacji p. Zale zność ta dana jest za pomoca heurystyki F :!, zwanej schematem selekcji, w nastepujacy sposób: s i = F(p) i (8i ): (38) Do zde niowania schematu selekcji potrzebna jest jest funkcja przystosowania f :! R +. Podobnie jak w 6, funkcje te mo zemy rozwa zać jako wektor f = (f 0 ; f ; :::; f n ) R n, którego wspó rzedne sa dane wzorem f i := f(i).

Selekcja proporcjonalna (lub ruletkowa) nazywamy funkcj e selekcji odpowiadajac a schematowi selekcji F określonemu wzorem (9). Zatem osobnik i jest wybierany z prawdopodobieństwem F(p) i = f i p i P n j=0 f jp j : (39) Dla dowolnego wyra zenia logicznego x, ktore mo ze być prawdziwe lub fa szywe, wprowadźmy oznaczenie ; jeśli x jest prawdziwe, [x] := (40) 0; jeśli x jest fa szywe. Selekcja rangowa nazywamy funkcj e selekcji odpowiadajac a schematowi selekcji Z P j [fjfi]pj F(p) i = (y)dy; (4) P j [fj<fi]pj gdzie jest dowolna ciag a rosnac a gestościa prawdopodobieństwa na [0,] (tzn. R (y)dy = ). Przy selekcji rangowej musimy za o zyć, 0 ze f jest ró znowartościowa. Przyk ad. Niech n = 4, p = (0:; 0:3; 0:; 0:4) T i niech f b edzie rosnaca na, tzn. f 0 < f < f < f 3. Za ó zmy, ze (y) := y. Korzystajac z (4), obliczymy wartości (38) dla i = 0; ; ; 3. Dla i = 0 mamy P j [f j < f i ]p j = 0 oraz P j [f j f i ]p j = p 0 = 0:, zatem h i y 0: s 0 = R p 0 (y)dy = R 0: ydy = 0 0 = 0:04. 0 Dla i = mamy P j [f j < f i ]p j = p 0 = 0: oraz P j [f j f i ]p j = p 0 + p = 0:5, zatem s = R p 0+p p 0 (y)dy = R h 0:5 0: ydy = y = 0:. 0: Dla i = mamy P j [f j < f i ]p j = p 0 + p = 0:5 oraz P j [f j f i ]p j = p 0 +p +p = 0:6, zatem s = R p 0+p +p p 0+p (y)dy = R h 0:6 0:5 ydy = y = 0:. 0:5 Dla i = 3 mamy P j [f j < f i ]p j = p 0 + p + p = 0:6 oraz P j [f j f i ]p j = p 0 +p +p +p 3 =, zatem s 3 = R p 0+p +p +p 3 p 0+p +p (y)dy = R h 0:6 ydy = y = 0:6 0:64. Zauwa zmy, ze w powy zszym przyk adzie wartości s i nie zale z a od wartości f i, a jedynie od ich uporzadkowania. Ka zda rosnaca funkcja f daje ten sam wynik. Jeśli natomiast f b edzie spe niać nierówności f 0 < f < f 3 < f, to s 0 i s b ed a takie jak poprzednio, natomiast: Dla i = mamy P j [f j < f i ]p j = p 0 + p + p 3 = 0:9 oraz P j [f j f i ]p j = p 0 +p +p +p 3 =, zatem s = R p 0+p +p +p 3 p 0+p +p 3 (y)dy = R h 0:9 ydy = y = 0:9 0:9. Dla i = 3 mamy P j [f j < f i ]p j = p 0 + p = 0:5 oraz P j [f j f i ]p j = i 0:5 p 0 +p +p 3 = 0:9, zatem s 3 = R p 0+p +p 3 p 0+p (y)dy = R h 0:9 0:5 ydy = y i 0:6 i 0:9 0:5 i i = 0:56. 9 Reprezentacja w postaci ańcuchów bitowych Operacja selekcji nie tworzy nowych osobników, dlatego przy badaniu selekcji nie jest istotna struktura przestrzeni. Natomiast operacje krzy zowania i mutacji 3

tworza nowe osobniki, nie znajdujace si e w aktualnej populacji. Dla g ebszego przeanalizowania tych operacji, trzeba je najpierw zde niować na konkretnych obiektach. Za ó zmy, ze jest zbiorem wszystkich ańcuchów binarnych o d ugości `: = Z ::: Z {z } ; (4) ` razy gdzie Z = f0; g. Zbiór mo zna uto zsamiać ze zbiorem wszystkich liczb ca kowitych z przedzia u [0; `) zapisanych w uk adzie dwójkowym; przy poprzednich oznaczeniach b edziemy mieć = f0; ; :::; ` g. Dlatego, zapisujac elementy jako ańcuchy bitowe, umieszczamy najmniej znaczacy bit po prawej stronie. Np. dla ` = 3 i n = 3 = 8 mamy = f000; 00; 00; 0; 00; 0; 0; g f0; ; ; 3; 4; 5; 6; 7g: (43) W zbiorze Z de niujemy dzia ania dodawania i mno zenia modulo nastepujaco: 0 0 = = 0; 0 = 0 = ; 0 0 = 0 = 0 = 0; = : Dzia anie te mo zna rozszerzyć na, stosujac je do odpowiednich wspó rz ednych. Przyjmujemy umowe, ze dzia anie ma pierwszeństwo przed, a oba maja pierwszeństwo przed dzia aniami, które nie sa modulo. Dzia anie jest rozdzielne wzgl edem. Elementy b edziemy te z zapisywać jako wektory kolumnowe; wówczas najmniej znaczacy bit b edziemy umieszczać u góry. Np. dla ` = 3 mamy 3 0 (; ; 0) T ; 6 0 (0; ; ) T ; 3 6 0 0 ( 0; ; 0 ) T = (; 0; ) T 0 5; 3 6 0 0 ( 0; ; 0 ) T = (0; ; 0) T 00 : Dla x, oznaczmy przez x := x, gdzie := (; :::; ) T. Dla dowolnego k zde niujmy zbiór k := fx : x k = xg: (44) Zbiór k tworza te ańcuchy bitowe, które maja zera wszedzie tam, gdzie w ańcuchu k wystepuja zera. W asność. Ka zdy ańcuch! posiada dok adnie jedna reprezentacj e! = u v, gdzie u k oraz v k. Dowód. Dla dowolnego! oznaczmy u :=! k, v :=! k. Wówczas mamy! =! =! (k k) =! k! k = u v: Wyka zemy teraz jednoznaczność rozk adu. Za ó zmy, ze! = u v, gdzie u k oraz v k. Z de nicji zbiorów k i k otrzymujemy 4

(a) Je zeli k i = 0, to u i = 0. (b) Je zeli k i =, to k i = 0, stad v i = 0, zatem! i = u i. Z (a) i (b) wynika, ze 0; jeśli ki = 0; u i =! i ; jeśli k i = ; czyli u =!k. Analogicznie dowodzimy, ze v =!k. Zatem rozk ad! = uv jest jednoznaczny. Niech k b edzie macierza permutacji określona nastepujaco: ( k ) i;j := [i j = k]: (45) W asność 3. Dzia anie permutacji k odpowiada zastosowaniu odwzorowania i 7! i k do dolnych indeksów: k (x 0 ; x ; :::; x n ) T = (x 0k ; x k ; :::; x (n )k ) T : (46) Uwaga. W poni zszym dowodzie symbole 0; ; :::; n ; i; j; k oznaczaja liczby ca kowite ze zbioru f0; ; :::; n g, ale dzia anie wykonywane na tych liczbach jest wykonywane na ich reprezentacjach w uk adzie dwójkowym, poprzez dodawanie modulo odpowiednich bitów. Dowód. Wyka zemy najpierw, ze dla dowolnych i; j; k zachodzi równość [i j = k] = [j = i k]: (47) Istotnie, jeśli i j = k, to i k = i (i j) = (i i) j = 0 j = j, a jeśli j = i k, to i j = i (i k) = (i i) k = 0 k = k. Korzystajac z (47), otrzymujemy = = k (x 0 ; x :::; x n 3 [0 0 = k] [0 = k] [0 (n-) = k] [ 0 = k] [ = k] [ (n-) = k] 6 4..... 7 6. 5 4 [(n-) 0 = k] [(n-) = k] [(n-) (n-) = k] 3 [0 = 0 k] [ = 0 k] [n- = 0 k] [0 = k] [ = k] [n- = k] 6 4..... 7 6. 5 4 [0 = (n-) k] [ = (n-) k] [n- = (n-) k] ) T = (x 0k ; x k ; :::; x (n )k ) T : 0 Krzy zowanie x 0 x. x n x 0 x. x n Wektor nazywamy rozk adem krzy zowania, je zeli dla ka zdego i wspó rzedna i jest prawdopodobieństwem, z jakim element i jest wybierany jako maska krzy zowania. Sposób dzia ania maski krzy zowania jest wyjaśniony poni zej. 3 7 5 3 7 5 5

Z rozk adem krzy zowania zwiazana jest niedeterministyczna funkcja krzy zowania :!. Wynik (x; y) dzia ania funkcji na ańcuchy x; y otrzymujemy przez kolejne wykonanie dwóch operacji: (i) wylosowanie maski krzy zowania i za pomoca rozk adu (element i jest losowany z prawdopodobieństwem i ); (ii) zwrócenie jednego z dwóch osobników: x i { y albo y i { x, ka zdego z prawdopodobieństwem /. Wówczas prawdopodobieństwo c x;y;z otrzymania osobnika z w wyniku krzy zowania osobników x i y jest dane wzorem c x;y;z = nx i=0 i + { [x i { y = z]: (48) Intensywno scia krzy zowania nazywamy parametr p c [0; ], który s u zy do określenia rozk adu krzy zowania zgodnie z wzorem pc c i := i dla i 6= 0; (49) p c + p c c 0 dla i = 0; gdzie c jest typem krzy zowania. W szczególności, klasyczne krzy zowanie jednopunktowe odpowiada typowi c określonemu wzorem =(` ) jeśli 9k f; :::; ` g : i = k ; c i := (50) 0 w przeciwnym przypadku. Natomiast krzy zowanie jednostajne odpowiada typowi c, gdzie c i := ` dla ka zdego i. Mutacja Wektor nazywamy rozk adem mutacji, je zeli dla ka zdego i wspó rz edna i jest prawdopodobieństwem, z jakim element i jest wybierany jako maska mutacji. Sposób dzia ania maski mutacji jest wyjaśniony poni zej. Z rozk adem mutacji zwiazana jest niedeterministyczna funkcja mutacji :!. Wynikiem (x) zastosowania funkcji do ańcucha x jest, z prawdopodobieństwem i, ańcuch x i. Intensywno scia mutacji nazywamy liczb e p m [0; ] (zwykle p m < =), która s u zy do określenia rozk adu mutacji zgodnie z wzorem i := (p m ) T i ( p m )` T i ; (5) gdzie T i jest ilościa jedynek w ańcuchu i. Jeśli p m (0; ), to ka zda maska i ma dodatnie prawdopodobieństwo wylosowania, a zatem ka zdy element przechodzi w wyniku mutacji na ka zdy element z dodatnim prawdopodobieństwem. W asność 4. Prawdopodobieństwo, ze osobnik i w wyniku mutacji zostanie zamieniony na osobnika j, wynosi u i;j = ji = (p m ) T (ji) ( p m )` T (ji) : (5) Dowód wynika z (5) i z faktu, ze przejście od i do j jest realizowane za pomoca maski j i: i (j i) = (i i) j = 0 j = j: 6

Mieszanie Dla ustalonego rozk adu krzy zowania i rozk adu mutacji, mieszaniem nazywamy odwzorowanie M :! takie, ze dla dowolnych x; y; z, wspó rzedna M(x; y) z jest równa prawdopodobieństwu wygenerowania osobnika z poprzez zmutowanie wyniku krzy zowania osobników x; y (przy zastosowaniu rozk adów i ). Twierdzenie 3. Dla dowolnych x; y; z mamy nx nx M(x; y) z = i=0 k=0 i k + k x k k y i = z : (53) Dowód. W powy zszym wzorze sumowane sa prawdopodobieństwa roz acznych zdarzeń, które prowadza do wyniku z. Zdarzenia te sk adaj a si e z trzech niezale znych losowań: (i) wylosowanie maski krzy zowania k lub k z prawdopodobieństwem k + k (obie te maski daja w wyniku ten sam zbiór potomków fxkky, ykkxg), (ii) wylosowanie jednego z dwóch potomków z prawdopodobieństwem =, (iii) wylosowanie maski mutacji i z prawdopodobieństwem i. Poniewa z losowania te sa niezale zne, wi ec prawdopodobieństwo ich acznego wystapienia jest iloczynem ich prawdopodobieństw. 3 Kryteria zatrzymania algorytmu genetycznego Rozwa zamy ponownie algorytm RHS w ogólnej postaci. Za ó zmy, ze przestrzeń poszukiwań daje si e przedstawić w postaci sumy dwóch roz acznych podzbiorów: = + [ ; + \ = ;: (54) Przyjmujemy, ze celem algorytmu RHS jest znalezienie jakiegokolwiek elementu zbioru +. Element i uwa zamy za znaleziony w iteracji t, je zeli aktualna populacja t (^p) zawiera przynajmniej jeden egzemplarz osobnika i, co jest równowa zne nierówności t (^p) i > 0. W szczególności jako zbiór + mo zemy przyjać. zbiór elementów optymalnych: + = j : f(j) = max f(i) ; (55) i. zbiór elementów "-optymalnych dla pewnego " > 0: + = j : f(j) max f(i) " : (56) i Niech S oznacza podzbiór zbioru stanów S = r z o zony z populacji nie zawierajacych zadnego elementu zbioru + : S := p S : p i = 0; 8i + : (57) Symbolem S + b edziemy oznaczać zbiór pozosta ych populacji: S + := SnS. Populacje nale z ace do S + zawieraja przynajmniej jeden egzemplarz jakiegoś osobnika nale z acego do +. Mo zemy zatem powiedzieć, ze element zbioru + 7

zosta znaleziony w iteracji t, je zeli populacja wygenerowana w iteracji t nale zy do S +. W dalszym ciagu A t b edzie oznaczać zdarzenie, ze w iteracji t nie znaleziono elementu + : A t := t (^p) S : (58) Twierdzenie 3. [, str. 38] Niech fh g b edzie rozbiciem zbioru zdarzeń elementarnych Z na zdarzenia o dodatnim prawdopodobieństwie. Dla dowolnych zdarzeń A i B, je sli Pr(B) > 0, to X Pr(A j B) = Pr(A j B \ H ) Pr(H j B): f:pr(b\h )>0g Nastepujacy lemat podaje oszacowanie z góry prawdopodobieństwa, ze w ciagu t pierwszych iteracji nie znaleziono elementu zbioru +. Lemat. Za ó zmy, ze dla pewnej liczby (0; ) zachodzi nierówno sć X p;q ; 8p S: (59) qs Wówczas dla ka zdego t N mamy Pr (A \ A \ ::: \ A t ) t : (60) Dowód. Stosujemy indukcj e ze wzgl edu na t. Sprawdzimy najpierw, ze nierówność (60) zachodzi dla t =. Istotnie, z za o zenia (59) dla p = ^p otrzymujemy Pr(A ) = X Pr(q j ^p) = X ^p;q : qs Przypuśćmy teraz, ze (60) zachodzi dla t = s. Bez zmniejszenia ogólności mo zemy za o zyć, ze Pr (A \ A \ ::: \ A s ) > 0; (6) gdy z w przeciwnym przypadku warunek (60) jest automatycznie spe niony dla wszystkich t s. Uwzgl edniajac (6), mamy z de nicji prawdopodobień-stwa warunkowego i z za o zenia indukcyjnego Pr (A \ A \ ::: \ A s \ A s+ ) qs = Pr(A \ A \ ::: \ A s ) Pr(A s+ j A \ A \ ::: \ A s ) s Pr(A s+ j A \ A \ ::: \ A s ): (6) Niech fh sg b edzie rodzina zdarzeń postaci H s := k (^p) = p ;k ; k = ; :::; s : (63) Inaczej mówiac, H s jest zdarzeniem, ze w ciagu s pierwszych iteracji wygenerowano nast epujacy ciag populacji: ^p; p ; ; :::; p ;s : (64) Poniewa z zbiór populacji S jest skończony, wiec tak ze rodzina fh sg jest skończona. Dla ró znych indeksów i, ciagi populacji (64) sa ró zne, jeśli 8

p ;k 6= p ;k dla przynajmniej jednego k f; :::; sg; wówczas H s 6= H s. Odrzucajac zdarzenia H s o zerowym prawdopodobieństwie, mo zemy za o zyć, ze Pr(H s ) > 0 dla ka zdego. Zatem rodzina zdarzeń (63) jest rozbiciem Z na roz aczne zdarzenia o dodatnim prawdopodobieństwie. Z twierdzenia?? otrzymujemy = Pr(A s+ j A \ A \ ::: \ A s ) (65) X Pr(A s+ j A \ ::: \ A s \ H s ) Pr(H s j A \ ::: \ A s ): f:pr(a \:::\A s\h s)>0g Jeśli Pr(A \ ::: \ A s \ H s) > 0, to A \ ::: \ A s \ H s 6= ;. Stad i z de nicji odpowiednich zbiorów (równości (58) i (63)) wynika, ze p ; ; :::; p ;s S i w konsekwencji H s A \ ::: \ A s. Zatem A \ ::: \ A s \ H s = H s : (66) Z równości (65) i (66) otrzymujemy = Pr(A s+ j A \ A \ ::: \ A s ) X f:pr(a \:::\A s\h s )>0g Pr(A s+ j H s ) Pr(H s j A \ ::: \ A s ): (67) Zajmiemy sie teraz oszacowaniem wyra zenia Pr(A s+ j H s ). Z de nicji ańcucha Markowa (równość (8)) oraz z za o zenia (59) wynika, ze Pr(A s+ j H s ) = Pr( s+ (^p) S j k (^p) = p ;k ; k = ; :::; s) = X Pr( s+ (^p) = q j k (^p) = p ;k ; k = ; :::; s) qs = X qs = X qs Z warunków (67) i (68) dostajemy Pr( s+ (^p) = q j s (^p) = p ;s ) p;s ;q : (68) Pr(A s+ j A \ A \ ::: \ A s ) X Pr(H s j A \ ::: \ A s ) = ; (69) f:pr(a \:::\A s\h s)>0g gdzie ostatnia równość wynika z faktu, ze rodzina fh s : Pr(A \:::\A s \H s) > 0g jest rozbiciem A \ ::: \ A s na zdarzenia o dodatnim prawdopodobień-stwie. aczac nierówności (6) i (69), otrzymujemy Pr (A \ A \ ::: \ A s \ A s+ ) s+ ; co kończy dowód indukcyjny nierówności (60). Korzystajac z Lematu, mo zna atwo oszacować z do u prawdopodobieństwo, ze w ciagu t pierwszych iteracji zosta znaleziony element +. Istotnie, oznaczmy przez B t zdarzenie, ze w iteracji t znaleziono element + : B t := ZnA t := t (^p) S + : (70) 9

Z wzorów (60) i (70) wynika, ze przy za o zeniach Lematu Pr (B [ ::: [ B t ) = Pr((ZnA ) [ ::: [ (ZnA t )) = Pr(Zn(A \ ::: \ A t )) = Pr(A \ ::: \ A t ) t : (7) Zajmiemy si e teraz oszacowaniem prawdopodobieństwa znalezienia poszukiwanego elementu przez algorytm genetyczny. Twierdzenie 4. Rozwa zamy ogólny model algorytmu genetycznego opisany w 6, b ed acy szczególnym przypadkiem algorytmu RHS,w którym losowanie próby (p) polega na kolejnym wykonaniu operacji selekcji, krzy zowania i mutacji. Za ó zmy, ze zbiór poszukiwanych elementów + ma postać + = fj ; j ; :::; j m g; (7) gdzie ilo sć poszukiwanych rozwiazań m jest ograniczona z do u przez pewna znana liczb e naturalna m. Za ó zmy ponadto, ze istnieje liczba (0; =n] spe niajaca warunek u i;j ; 8i; j : (73) w ciagu pier- Wówczas prawdopodobieństwo znalezienia elementu zbioru + wszych t iteracji jest równe co najmniej ( m) rt : (74) Dowód. Wyka zemy, ze spe nione sa za o zenia Lematu przy = ( m) r. Lewa strone warunku (59) mo zna zapisać w postaci X p;q = X Pr(q j p) scm = Pr(S j p) scm qs qs = Pr([ ] j p) scm r = Pr([ + ] j p) scm r ; (75) gdzie Pr(S j p) scm oznacza prawdopodobieństwo wygenerowania populacji nale z acej do S z populacji p poprzez zastosowanie heurystyki algorytmu genetycznego G danej wzorem (35), a nast epnie wylosowanie r-elementowej próby z rozk adu prawdopodobieństwa G(p). Natomiast Pr([ ] j p) scm oznacza prawdopodobieństwo wygenerowania osobnika nale z acego do z populacji p poprzez jednokrotne wykonanie operacji selekcji, krzy zowania i mutacji (co odpowiada wylosowaniu próby jednoelementowej z rozk adu G(p)). Trzecia równość w (75) wynika z niezale zności r zmiennych losowych tworzacych prób e r-elementowa. Z warunków (7) i (73) wynika, ze dla dowolnych p S i j nx Pr([j] j p) scm Pr([i] j p) sc = ; (76) i=0 gdzie końcowa równość wynika stad, ze sumujemy prawdopodobieństwa roz- acznych zdarzeń, które w sumie stanowia zdarzenie pewne. Z (7) i (76) otrzymujemy mx mx Pr([ + ] j p) scm = Pr([j l ] j p) scm = m m: (77) l= 0 l=

Teraz z warunków (75) i (77) wynika nierówność X p;q ( m) r : qs Stad na podstawie Lematu mamy dla ka zdego t N Pr (A \ ::: \ A t ) ( m) rt : Zatem, korzystajac z (7), prawdopodobieństwo znalezienia elementu zbioru + w ciagu pierwszych t iteracji mo zna oszacować nast epujaco: Pr (B [ ::: [ B t ) = Pr(A \ ::: \ A t ) ( m) rt ; (78) co kończy dowód twierdzenia. Wniosek. Dla dowolnej liczby (0; ) oznaczmy przez t min () najmniejsza liczb e iteracji gwarantujac a znalezienie elementu zbioru + z prawdopodobieństwem. Wówczas ln( ) t min () ; (79) r ln( m) gdzie dxe oznacza najmniejsza liczb e ca kowita wi eksza lub równa x. Dowód. Wybierajac liczb e iteracji t spe niajac a nierówność ( m) rt ; (80) mamy zagwarantowane znalezienie elementu zbioru + z prawdopodobieństwem równym co najmniej. Nierówność (80) jest równowa zna nierówności t ln( ) r ln( m) : (8) Dla ka zdej liczby naturalnej t spe niajacej (80) (a wiec tak ze (8)) zachodzi nierówność t min () t. Zatem t min () musi spe niać tak ze nierówność (79), co nale za o wykazać. 4 Przypadek kodowania o dowolnej liczebności alfabetu B edziemy teraz rozwa zać model algorytmu genetycznego opisany w pracy [], w którym osobniki reprezentowane sa jako ańcuchy symboli z pewnego alfabetu. Bez zmniejszenia ogólności mo zna zak adać, ze symbolami tymi sa elementy zbioru liczb ca kowitych modulo c: Z c := f0; ; :::; c g; (8) gdzie c. Dla dowolnych a; b Z c de niujemy operator dodawania modulo c nastepujaco: a b := (a + b) mod c: (83)

Ka zdy element a Z c posiada dok adnie jeden element odwrotny wzgledem dzia ania, który oznaczamy a. Dla uproszczenia zapisu u zywamy oznaczenia a b := a ( b): (84) Zak adamy, ze przestrzeń poszukiwań algorytmu genetycznego jest zbiorem wszystkich ańcuchów o d ugości ` z o zonych z elementów zbioru Z c ( ańcuch rozumiemy jako skończony ciag elementów). Dzia ania i mo zemy w naturalny sposób rozszerzyć na zbiór, wykonujac je na odpowiednich wspó rz ednych. Zak adamy dalej, ze operacja mutacji w tym modelu algorytmu genetycznego dzia a w nastepujacy sposób: najpierw losowana jest maska mutacji d, a nastepnie wybrany osobnik y jest zamieniany na y d. Liczb e [0; =) nazywamy wska znikiem mutacji, je zeli wyznacza ona rozk ad prawdopodobieństwa ^ w nastepujacy sposób: n(d) ^ d := ( )` n(d) ; (85) c gdzie n(d) jest liczba niezerowych elementów (cyfr) ańcucha d. We wzorze (85) liczba ^ d jest prawdopodobieństwem wyboru ańcucha d jako maski mutacji, n(d) jest ilościa wspó rz ednych wektora y podlegajacych mutacji (tj. zamianie na jedna z pozosta ych c cyfr, co odbywa sie przez dodanie modulo c odpowiedniej niezerowej wspó rz ednej maski), a ` n(d) jest ilościa wspó rz ednych wektora y nie podlegajacych mutacji. Prawdopodobieństwo, ze osobnik i w wyniku tak określonej mutacji zamieni sie na j, wynosi (por. [6, str. 474]) n(j i) u i;j = ^ j i = ( )` n(j i) : (86) c Wniosek. Przy za o zeniach Wniosku, je sli elementy macierzy U dane sa wzorem (86), wówczas 3 t min () 6 ln( ) r ln m c, sk ad po prostych przeksz- Dowód. Poniewa z [0; =), wiec c c ta ceniach otrzymujemy Stad i z (86) otrzymujemy ` : (87) 7 c : (88) u i;j c ` Przyjmujac := min n ; c widzimy, ze spe nione sa za o zenia Twierdzenia 4. Nierówność (87) wynika zatem z (79). ` :

References [] J. Jakubowski, R. Sztencel, Wst ep do teorii prawdopodobieństwa, Wydanie II, Script, Warszawa, 00. [] G.J. Koehler, S. Bhattacharya, M.D. Vose, General cardinality genetic algorithms, Evolutionary Computation 5 (998), 439-459. [3] Z. Michalewicz, Genetic Algorithms + Data Structures = Evolution Programs, Springer-Verlag, Berlin, 99 [4] A. Mostowski, M. Stark, Elementy algebry wy zszej, PWN, Warszawa, 970. [5] C.R. Reeves, J.E. Rowe, Genetic Algorithms Principles and Perspectives: A Guide to GA Theory, Kluwer, Boston, 003. [6] J.E. Rowe, M.D. Vose, A.H. Wright, Structural search spaces and genetic operators, Evolutionary Computation (004), 46-493. [7] M.D. Vose, The Simple Genetic Algorithm: Foundations and Theory, MIT Press, Cambridge, Massachusetts, 999. 3