Sunteți pe pagina 1din 2

ALGORITME GENETICE

Algoritmele genetice (AG) sunt algoritme adaptive care determin soluia unei probleme de
optimizare pe baza unor mecanisme specifice geneticii i seleciei naturale. n acest scop, AG
folosesc un set de soluii denumite frecvent cromozomi care n cursul evoluiei, de la o
generaie la alta, i schimb structura, orientndu-se ctre o soluie optimal sau suboptimal.
Populaia iniial are o componen stabilit aleatoriu, iar evoluia ei are loc conform principiului
cel mai adaptat supravieuiete.
Aplicarea AG la rezolvarea unei probleme de optimizare necesit parcurgerea a cinci
etape, i anume:
(1) reprezentarea soluiilor admisibile (stabilirea populaiei iniiale),
(2) evaluarea soluiilor pentru fiecare element din populaia curent,
(3) reproducerea (selecia),
(4) recombinarea (ncruciarea)
(5) inducerea unor mutaii.
Dintre aceste etape, ultimele patru se reiau ntr-un calcul de tip iterativ, pn la
satisfacerea unui criteriu de oprire.
Reprezentarea soluiilor admisibile. O soluie admisibil care n contextul AG poart
numele de cromozom se reprezint printr-un lan cromozomial de lungime finit. n majoritatea
studiilor din literatura de specialitate, valorile elementelor ce formeaz un lan cromozomial
folosesc codificarea binar.
Evaluarea soluiilor admisibile se face cu ajutorul funciei obiectiv care descrie problema
de optimizare analizat. Pe baza acestei evaluri se stabilete gradul n care soluia respectiv
se adapteaz problemei, de unde i denumirea ncetenit pentru funcia obiectiv de optimizat
funcie de adaptare. Trebuie menionat c, prin nsui specificul lor, AG evolueaz n sensul
maximizrii funciei de adaptare f. De aceea, dac problema considerat urmrete minimizarea
unei funcii obiectiv F, funcia de adaptare se definete ca inversa acesteia, f = F -1. n cursul
acestei etape, informaia nscris n fiecare cromozom este decodificat i, pe baza ei, se
evalueaz funcia de adaptare pentru fiecare soluie admisibil.
Selecia. n cadrul acestei etape, pornind de la o populaie de lanuri cromozomiale
existent, se creeaz o nou populaie, pe baza gradului de adaptare a fiecrui cromozom. Noua
populaie este generat folosind copii exacte ale cromozomilor existeni, dup regula general:
cromozomul cu cea mai mare valoare a funciei de adaptare, produce cele mai multe copii, iar
cromozomul cu funcia de adaptare cea mai mic, produce cele mai puine copii.
Recombinarea. Soluia optim a problemei analizate se afl diseminat n informaia
coninut de toi cromozomii populaiei. Pentru agregarea diferitelor segmente ale informaiei
corespunztoare soluiei optime, AG apeleaz la etapa recombinrii. Tehnica de recombinare cea
mai frecvent utilizat este ncruciarea. n acest caz, din populaia curent se aleg doi cromozomi
prini, prin a cror ncruciare se produc doi cromozomi urmai. Pentru o lungime L a
cromozomilor, ncruciarea se realizeaz ntr-un punct M generat aleatoriu n intervalul (1, L).
Mutaii. Etapa de recombinare asigur mbogirea informaiei eseniale nmagazinate n
lanurile cromozomiale. Totui, este posibil ca, pornind de la o generaie iniial cu o structur
relativ deficitar, orice recombinare ntre cromozomi s nu poat conduce la soluia optim.
Eliminarea acestui neajuns este posibil dac unora dintre cromozomi li se aplic, cu o anumit
probabilitate, un operator specific, de mutaie. Acest operator alege la ntmplare unul din
cromozomi, dup care genereaz un numr aleator cuprins ntre 1 i L (lungimea lanului
cromozomial) i realizeaz modificarea valorii respective.
n comparaie cu metodele tradiionale de rezolvare a problemelor de optimizare, AG
prezint o serie de avantaje, ca de exemplu: nu necesit o modelare foarte riguroas a problemei

analizate; nu necesit calculul complex al unor derivate; realizeaz o cutare paralel n spaiul
soluiilor, astfel fiind mult mai puin sensibile n raport cu minimele locale
Aceste avantaje au atras atenia specialitilor, astfel nct, pn n prezent AG au fost
aplicate n diverse domenii, cum ar fi optimizarea combinatorie, procesarea imaginilor i
nvarea artificial.
APLICAIE
Se d urmtoarea problem: pentru un set de puncte definite prin coordonatele lor
spaiale x i y, s se determine poziia optim a unui punct nou de coordonate xp i yp, astfel
nct suma distanelor ntre acest punct i restul s fie minim.
Pentru rezolvarea ei, se va utiliza un algoritm genetic.
Coordonatele punctului cutat se codific binar (0001001110101), n iruri separate
pentru coordonata x i coordonata y, iruri care constituie populaia AG.
Apelul algoritmului genetic se face astfel:
[x,fd,f]=alggen(X,N,rincr,rmut,maxgen);
unde:
X - vector de forma (x1,y1,x2,y2,... xk,yk,...) coninnd perechile (x,y) ale punctelor iniiale;
N - dimensiunea populaiei AG
rincr - rata de ncruciare (0.6 - 0.97)
rmut - rata mutaiilor 0.001 - 0.1
maxgen - numrul de generaii
Datele de ieire ale algoritmului:
x - matricea populaiei algoritmului genetic;
fd - funcia de adaptare pentru fiecare cromozom din populaie (inversul distantelor);
f - funcia de adaptare globala - suma(fd)
Conversia valorilor din binar in numeric se va face cu funcia Matlab bin2dec.

S-ar putea să vă placă și