Vous êtes sur la page 1sur 5

Iancu Stela, Ivan Roxana

Algoritmi genetici si serii temporale


Despre AG Primele studii privind algoritmii genetici au aparut in 1962 si au apartinut lui Holland, iar monografia sa Adaptarea in sistemele artificiale si naturale publicata in 1975 a constituit o baza pentru numeroase alte lucrari in domeniu cum ar fi cele ale autorilor :De Jong, Goldberg, Koza, Fogel. In anul 1859 Charles Darwin a publicat lucrarea intitulata Despre originea speciilor prin intermediul selectiei naturale sau Conservarea speciilor privilegiate in lupta pentru existenta . Cam 30 de ani i-au trebuit culturii europene sa accepte cele doua principii fundamentale ale Darwinismului : 1. toate plantele si animalele care exista astazi provin din forme anterioare, mai primitive ; 2. evolutia se datoreaza selectiei naturale. Definitie : Algoritmii genetici (AG), descrisi si studiati riguros penru prima oara de J. Holand in 1975, sunt tehnici euristice ce incearca sa rezolve probleme de cautare imitand principiile naturala de selectie si supravietuire a celor mai adaptati indivizi. Algoritmii genetici lucreaza cu indivizi in cadrul unei populatii. Indivizii au caracteristic un sir de gene-valori din spatiul de cautare-si o functie de evaluare care reprezinta o codificare a unei probleme date. Cei mai buni indivizi sunt selectati pentru incrucisare. In acelasi timp cu incrucisarea poate sa apara si fenomenul de mutatie. Parintii si copiii intra in procesul de selectie pentru noua generatie. Sunt selectati cu probabilitati direct proportionate cu functia de evaluare, cei mai buni indivizi. De la generetie la generetie, media functiei de evaluare pentru fiecare generatie creste si sunt gasiti indivizi din ce in ce mai buni, care reprezinta solutii bune pentru problema propusa. Algoritmii genetici lucraza bine datorita paralelismului lor intrinsec.

85

Procedura unui algoritm genetic simplu : start t=0; Initializeaza P(t); {creeaza o populatie aleatoare P(t)} Evalueaza P(t); {evalueaza functia obiectiv pentru fiecare membru al P(t)} cat timp (diferite conditii de terminare) executa { operatorii genetici creeaza o noua populatie} start t=t+1; Selecteaza P(t) din P(t-1); Recombina P(t) ; Evalueaza P(t) ;{evalueaza noua populatie} stop stop

Structuri de date Algoritmii genetici lucreaza cu o populatie de indivizi. Cel mai dificil pas in problema genetica este faza de codificare si definirea functiei de evaluare (functia obiectiv). Numarul de gene este mai mare sau egal cu doi. Genele pot fi binare, intregi, reale sau structuri complexe. Functia obiectiv este o functie care se calculeaza pe baza genelor, fiind asociata de obicei, cu notiunea de calitate. In problemele rezolvate cu algoritmi genetici, functia obiectiv trebuie maximizata sau minimizata. Constructorul unui cromozom este o functie ce initializeaza valorile genelor si calculeaza functia obiectiv. Constructorul trebuie sa tina seama de tipul genelor precum si de restrictiile dintre gene. Populatia este formata dintr-un numar de indivizi ce sunt folositi in procesul de cautare in cadrul algoritmilor genetici. Spatiul de cautare este produsul cartezian a multimilor de valori pentru fiecare gena in parte.
86

Comparatie intre terminologia naturala si cea a algoritmilor genetici: Terminologie Terminologie a naturala algoritmilor genetici Cromozom Gena Alele sir pozitie binara valoare binara

Mutatia
Acest operator este probabilistic (la fel ca incrucisarea si mutatia), este privit ca un operator de fundal deoarece are rol in cresterea varitatii populatiei . In cazul algoritmilor cu codificare binara 0 este schimbat (alterarat) cu 1 si 0 cu 1. Exemplu:daca cromozomul Pi este ales pentru mutatie si bitul mutat este bitul 3 atunci Pi este: Pi : 11101011 Pi: 11101011

Incrucisarea
Incrucisarea realizeaza schimbul de informatie inre indivizii din cadrul unei populatii asigurand transmiterea caracteristicilor bune(a unor combinatii de gene adecvate pentru problema data ) in cadrul populatiei. Incrucisarea simpla cu un singur punct de taiere care este ales aleator de exemplu in cazul implementarii binare incrucisarea se face astfel:

Selectia
Selectia mai este numita si reproducere, creand, o populatie intermediara cu ajutorul unui process probabilistic ce asigura supravietuirea celui mai bun. Daca singurul operator este selectia , atunci cel mai probabil populatia va tinde sa se umple cu indivizi identici cel mai bun individ existent la momentul initial. Pentru ca algoritmii genetici sa exploreze noi structuri din spatial de cautare trebuie folositi si operatorii de incrucisare si mutatie.

87

O schema este o submultime a spatiului cromozomilor, se mai numeste si matrita de similaritate . In cazul unui algoritm genetic ce opereaza cu siruri binare, o schema este descrisa de un sir format peste alfabetul {0,1,*}, unde *semnifica o pozitie care poate fi 0 sau 1, nu conteaza . De exemplu o schema poate fi H=01**11*0 si se potriveste atat pentru 0111110 cat si pentru 01001110 dar nu pentru 00101011. De exemplu 11010110 corespunde schemelor 1******0,11**0*1* si 11010110 etc Numarul instantelor unei scheme este strans legat de Teorema schemelor sau Teorema fundamentala a AG (Holland ,1975): m(H,t+1)>=[1-pd(H)]fGt(H)/favg(Gt)m(H,t) unde -m(H,t) reprezinta numarul asteptat de instante ale schemei H in generatia Gt -fGt(H) este fitness-ul mediu al reprezentantilor lui H prezenti in Gt -pd(H) este probabiliatea de "pierdere"din instantele lui H, ale indivizilor care au fost membri H si prin incrucisare si. sau mutatie formeaza descendenti care nu sunt instante ale lui H. Despre ST Seriile temporale sunt o multime de variabile aleatoare de obicei parametrizate dupa : -linia reala T=R(+ sau sau ambele) -multimea nrelor intregii T=Z(+ sau sau ambele) O serie temporala este o secventa de observatii efectuate la anumite intervalle de timp regulate(zilnice ,saptamanale) si ordonate in functie de timp . O serie temporala regulata are asociata un calendar ; datele sunt preluate la intervale predefinite. O serie temporala iregulata nu are asociat un anumit calendar.Seriile temporale sunt orientate in functie de date preluate la intervalle neprevazute de timp si momentele la care se fac masuratorile nu sunt caracterizate de un model predictiv. Aplicatii 1. Sa consideram drept o populatie de algoritmi genetici o populatie de dinozauri. Dupa o oarecare evolutie, a intervenit o mutatie ce a determinat disparitia dinozaurolor,iar speciile si-au continuat evolutia de la un nivel mult inferior. 2.Transportul aerian poate fi o aplicatie care pune in legatura seriile temporale neregulate cu algoritmii genetici Consideram drept populatie rutele avioanelor, algoritmul genetic trebuie sa opereze astfel incat sa nu se suprapuna rutele,iar seria temporala inregistreaza turbulentele sau dereglarile rutei unui avion. 88

Astfel ne putem folosi de parametrul de adaptare al seriilor temporale insa cu modelul aditiv dat de relatia : It=It-p+*(1-)*et Unde: -It factorul inregistrat la momentul t -It-p o inregistare anterioara - reprezinta parametrul de adaptare -et reprezinta o previziune anterioara ia doar valoarea 0 sau 1 In ceea ce priveste exemplul nostru daca ia valoarea 0 atunci avioanele zboara conform unei rute normale It-p ,inregistata la momentul t-p iar daca exista turbulente atunci =1 si totul se deregleaza. Turbulentele nu sunt previzibile deci vor fi inregistrate cu o serie temporala neregulata.

Bibliografie :

Algoritmi genetici-Principii fundamentale si aplicatii in automatica -Ion Dumitrache, Catalin Buiu, Editura Nemira Cluj-Napoca 2000 ;

89

Vous aimerez peut-être aussi