Twierdzenie Hollanda o schematach

Z testwiki
Przejdź do nawigacji Przejdź do wyszukiwania

Twierdzenie Hollanda o schematach – centralne twierdzenie algorytmów genetycznych zaproponowane przez Johna Henry’ego Hollanda[1][2][3][4][5]. Twierdzenie to orzeka, że pod pewnymi warunkami schematy z ponadprzeciętną wartością funkcji przystosowania zwiększają swoje występowanie w populacji w kolejnych krokach procesu ewolucyjnego w sposób wykładniczy[2].

Definicje

Schemat (ang. l.p. schema, l.mn. schemata[5]) jest podzbiorem przestrzeni genotypów, którego elementy są łańcuchami genetycznymi z góry ustalonymi wartościami wybranych alleli[4]. Przykładem schematu w reprezentacji binarnej jest H=(1*0*1), w którym zostały ustalone pierwszy, trzeci i piąty allel na wartości odpowiednio 1, 0 oraz 1 a pozostałe dwa allele mogą przyjmować wartość dowolną. Do oznaczania nieustalonych wartości alleli przyjmuje się symbol * (aczkolwiek Holland stosował symbol #)[1][4]. Alternatywnie, schemat można zdefiniować z użyciem teorii grup[4] lub z wykorzystaniem pojęcia zbioru cylindrowego.

Rzędem o schematu H nazywa się liczbę alleli ustalonych, tzn. różnych od *[4]. Długością definiującą δ schemat H nazywa się odległość między pierwszym a ostatnim ustalonym allelem, tzn. odległość między pierwszym a ostatnim elementem schematu różnym od *[4]. Długością l schematu H nazywa się łączną liczbę alleli ustalonych i zmiennych[5]. Dla przykładu, jeśli H=(1*0*1), to o(H)=3, δ(H)=4 oraz l(H)=5.

Przez kruchość schematu H rozumie się liczbę δ(H)l(H)1, która opisuje fragment schematu, który może zostać zakłócony przez wariację[5].

Wartość funkcji przystosowania f(H,t) obliczona dla schematu H w iteracji numer t jest równa średniej wartości funkcji przystosowania wszystkich genotypów próbkujących H obecnych w populacji w iteracjij t[5]. Wartość f¯(t) jest równa średniej wartości funkcji przystosowania ze wszystkich genotypów obecnych w populacji w iteracji t[5].

Blokiem budującym (ang. building block) lub cegiełką nazywa się krótki schemat niskiego rzędu o ponadprzeciętnej wartości funkcji przystosowania[5].

Hipoteza bloków budujących (hipoteza cegiełek)

Wersja podstawowa hipotezy:

Dobry algorytm genetyczny łączy bloki budujące w celu osiągania lepszych rozwiązań[5].

Wersja podstawowa hipotezy bloków budujących jest sformułowana w sposób niejednoznaczny i posiada potencjalnie prawdziwe interpretacje[5].

Twierdzenie Hollanda o schematach

Twierdzenie o schematach określa oczekiwaną liczbę genotypów próbkujących schemat w kolejnej iteracji algorytmu genetycznego z reprezentacją binarną wykorzystującego mechanizm selekcji proporcjonalnej, rekombinację jednopunktową oraz mutację bitową z prawdopodobieństwami odpowiednio pr oraz pm:[5]

m(H,t+1)f(H,t)f¯(t)m(H,t)(1prδ(H)l(H)1)(1pm)o(H)

W powyższym wzorze symbol jest wartością oczekiwaną a m(H,t) jest liczbą genotypów obecnych w populacji w iteracji t próbkujących schemat H.

Powyższe twierdzenie jest nieco ogólniejsze aniżeli podane oryginalnie przez Hollanda[5].

Twierdzenie o schematach może zostać sformułowane również w przypadku innych form obliczeń genetycznych, np. dla programowania genetycznego[6][5]. Również w obrębie samych algorytmów genetycznych istnieje możliwość dostosowania twierdzenia o schematach do innych warunków ewolucji, np. do innego operatora selekcji[3].

Przypisy