Documente Academic
Documente Profesional
Documente Cultură
Programare evolutivă
și algoritmi genetici
GA – Schema generală de recombinare
Recombinare multiplă
GA – recombinare. Șiruri binare
pr pp
1 poziție
Părinți
Părinți Descendenți
Descendenți
Puncte de încrucișare
Multipunct
pr
p1 p2 p3
n poziții
Părinți Descendenți
Uniformă
pr
fiecare poziție
Părinți Descendenți
GA – recombinare. Șiruri de numere întregi
Încrucișare
0.3*5.8+(1-0.3)*3.5 = 4.19
Recombinare
de tip discret
Aceleași =0.3tipuri de încrucișări ca la reprezentarea binară
1.4 2.5Nu
0.1produce valori
5.8 3.4 9.1 noi7.3ale
4.5 6.2 3.0genelor 1.4 2.5 0.1 4.19
pp m
m 0.3*5.8+(1-0.3)*3.5 = 4.19
4.5 6.1 3.6 3.5 2.4 5.3 1.2 5.7 8.2 1.3 4.5 6.1 3.6 5.11
Recombinarea
=0.3 aritmetică: , (pondere)0.3*5.8+(1-0.3)*3.5 = 4.19
1.4 2.5Medie
0.1 5.8ponderată ͵͵a
6.2unei perechi de gene:
1.4 2.5, 0.1
,
9.1 ߙ4.5Ǥ
Părinți
Părințiൌ
3.4 Ͳ Ͳ 7.3 3.0
Descendenți
3.4 9.1 4.5 6.2 7.3 3.0
pp (1-0.3)*5.8+0.3*3.5 = 5.11
1.4 2.5 0.1 5.8 3.4 9.1 4.5 6.2 7.3 3.0
4.5 6.1 3.6 3.5 2.4 5.3 1.2 5.7 8.2 1.3 4.5 6.1 3.6 2.4 5.3 1.2 5.7 8.2 1.3
4.5 6.1 3.6 3.5 2.4 5.3 1.2 5.7 8.2 1.3
Părinți
Părinți Descendenți
Descendenți
x,
y – părinți,
Părințid – descendent, p(1), p(2) – pozițiile
Părinți Descendent
Descendent
d( p(1):p(2) ) = x( p(1):p(2) );
pentru k = p(1):p(2)
dacă y(k) d k=7 y(k)=5 d
i = poziția lui d(k) in y d(k)=8
cît timp d(i) 0 i=5
i = poziția lui d(i) in y d(i)=10
d(i)=y(k); i=9
pentru i=1:m d(9)=0
daca y(i) d d(9)=y(7)
j = prima poziție libera in d
d(j)=y(i)
GA – recombinare. Permutări. OCX
5 3 2 4 10 1 8 9 6 7 4 10 1 8
pp11 pp22
6 1 9 7 8 2 5 3 10 4
Părinți
Părinți Descendent
Descendent
x, y – părinți, d – descendent, p(1), p(2) – pozițiile
d( p(1):p(2) ) = x(p(1):p(2));
unde = p(2)+1;
pentru i = [p(2):m 1:p(2)-1]
dacă y(i) d
dacă unde > m
unde=1;
d(unde) = y(i);
unde = unde+1;
GA – recombinare. Permutări. CX
CX (cycle crossover)
Pași
▪ Partajează părinții în cicluri
▪ Construiește descendenții alegînd alternativ cîte un ciclu din fiecare părinte
GA – recombinare. Permutări. CX
CX (cycle crossover)
xx11 1 2 4 6 5 7 3 9 10 8 xx11 1 2 4 6 5 7 3 9 10 8
xx22 10 5 2 7 9 1 3 8 6 4 xx22 10 5 2 7 9 1 3 8 6 4
xx11 1 2 4 6 5 7 3 9 10 8 y11 1 5 2 6 9 7 3 8 10 4
xx22 10 5 2 7 9 1 3 8 6 4 y22 10 2 4 7 5 1 3 9 6 8
C2: 3 Descendenți
Descendenți
GA – recombinare. Permutări. ECX
Tipuri
▪ Bazați pe frecvența alelelor – generalizare a încrucișării uniforme
▪ Bazați pe segmentare și recombinarea secvențelor – generalizare a
recombinării multipunct
▪ Bazați pe operații asupra alelelor – recombinare de tip baricentru,
generalizare a operatorilor de recombinare aritmetică
GA – recombinare multiplă
Referințe
Manual: capitolul 3.4
Spor la învăţat!