Analiza sistemelor biotehnice cu ajutorul algoritmilor genetici
Algoritmii genetici se bazeaz pe principiile fundamentale ale geneticii proprii
sistemelor biologice.Evoluia a avut la baz cromozomii , grupri organice pentru codificarea structurilor vii. Prin selecia natural se stabilesc anumite corelaii ntre cromozomi i performaele structurilor vii, adic se selecteaz acei cromozomi care codific structuri care sunt cel mai usor adaptabile la condiiile de existen i de asigurare a reproducerii. Evoluia are loc prin procesul de reproducere, existnd mutaii prin care cromozomii descendenilor pot fi diferii de cei ai prinilor biologici. Genele, care poart informaia de adaptare la mediu, sunt mulimi de cromozomi care sunt purtate de un individ. Cromozomul poate fi reprezentat ca o grupare de bii. n algoritmii genetici exist o funcie de evaluare, care reprezint o msur a performanelor cromozomilor. Prin aceasta, o populaie de cromozomi se va mbunti o dat cu nlocuirea prinilor de ctre copii prin procesul de reproducere. Un algoritm genetic cuprinde o serie de reguli care guverneaz procesul de reproducere, deci de evoluie a organismelor vii. Un algoritm genetic cuprinde urmtoarele etape: iniializarea unei populaii de cromozomi; evaluarea fiecrui cromozom n populaie, folosind o anumit funcie de evaluare (funcie fitness) ; crearea de noi cromozomi prin folosirea metodelor de recombinare i mutaii; anularea i ndeprtarea unor membri ai populaiei de cromozomi pentru a fi nlocuii de noi generaii de cromozomi; evaluarea noilor cromozomi folosind o anumit funcie de evaluare (funcie fitness) i introducerea lor n populaia de cromozomi; continuarea procesului de creare de noi cromozomi pn cnd se epuizeaz timpul de calcul stabilit. Prin procedura descris a unui algoritm genetic se stabilete un proces de evoluie a populaiei de cromozomi, obinndu-se populaii cu performane superioare celor nlocuite. Presupunem c avem o mulime de soluii posibile(populaie) pentru soluionarea unei probleme. Fiecare soluie este un individ din aceast populaie. Algoritmul genetic opereaz cu iruri binare pentru reprezentarea caracteristicilor fiecrui individ din populaie. 1)Primul pas este reprezentat de codificarea problemei, reprezentarea soluiei. Sirurile de biti dintr-un cromozom (individ) al populaiei reprezint parametrii fiecarei soluii. 2) Evaluarea cromozomilor populaiei se face dup o funcie de evaluare, care descrie performana soluiei n populaie.Se face selecia celor mai buni indivizi care vor participa la formarea populaiei urmtoare . 3)Se aplic operatori genetici de reproducere,mutaie, ncruciare asupra cromozomilor rezultai prin combinaia a dou soluii prini .Rezult descendenii , care se evalueaz din nou.
4)Se terg prinii din populaie , nlocuind cu descendentii. Se alctuiete o
nou generaie cu descendenii i indivizii rmai. 5)Pentru fiecare generaie se pastreaz cei mai buni indivizi. Se consider un numr de generaii i se ia cel mai bun individ din toate generaiile. Operatorii genetici pot fi : - de reproducere prin care se menin dintr-o populaie soluiile cele mai bune - de ncruciare schimb anumite poriuni ntre componentele cromozomilor carora li se aplic; -operator de mutaie care are ca efect schimbarea valorii unei singure poziii din cromozom. Exemplu : Se caut valorile optime pentru diametrul D i nalimea I pentru o cutie de conserve , de cel puin 300 ml, aa inct sa se utilizeze minimum de material (cost minim ). Funcia de evaluare corespunde funciei criteriu : f(D, I) =c( D2 D unde D= diametrul cutiei cilindrice I = nlimea cutiei cilindrice c = costul de material = 0,0654/cm2 Conditia restrictiva : D2/4 ) I 300 Se va alege pentru D, respectiv pentru I , 5 cifre binare fiecare. D , I [0cm 31cm] Se obine codificarea binar cu 10 cifre binare pentru cromozom, primele 5 poziii pentru D, urmtoarele poziii pentru I : D1D2D3D4D5I1 I 2I 3I 4 I 5 Fitnessul pentru evaluare este funcia criteriu . Se presupune o populaie format din 6 indivizi cu f {23, 26, 30, 24 ,11,9}. 2 soluii considerate ca prini: D=8 ; I =10 au f(8,10)=23 D=14; I= 6au f(14,6)=26 D=8 ; I =10 (0100001010) D=14; I= 6 (0111000110) In secvena de reproducere se aplic un operator de ncruciare cu o singur tietura dup 3 poziii de la stnga pentru obinerea descendenilor : (0101000110) D=10i I =6 cu f(10,6) = 22 (0110001010) D=12 , I=10 cu f(12,10)=38 Se observ c descendentul cu D=10 , I=6 are fitnessul cel mai mic. Dac se face pentru acesta o mutaie pe pozitia 4 de la stnga, se obine : (010000110) cu D=8 , I=6 . Va rezulta un descendent cu f(8, 6) =16, deci o variant mai bun.