operador de transformación (cruce o cruza) - algoritmos genéticos
TRANSCRIPT
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
1/16
Iván Sánchez Martínez
Alumno de la Licenciatura en Ingeniería en ComputaciónFacultad de Ciencias Básicas, Ingeniería y Tecnología - Universidad Autónoma de Tlaxcala
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
2/16
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
3/16
• Cruza de un punto• Cruza de dos puntos• Cruza uniforme
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
4/16
Holland [1]
Varios esquemas que no pueden formarse bajo esta técnica de cruz
La cruza de un punto es el operador de reproducción en la que se sedos individuos (padres) y se escoge una posición al azar y se intercamgenes a partir de este punto para generar dos nuevos individuos (hijos)
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
5/16
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
6/16
•
Conjunto de cromosomas que siguen un patrón.
• numero de posiciones fijas en el esquema H
= 2 − = 2 5−3 = 4
o(H) = 3
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
7/16
•
La cruza de un punto destruye esquemas en los que la longitud dedefiniciones alta. Sesgo posicional
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
8/16
DeJong, Fue el primero en implementar una cruza de n puntos
El valor n = 2 es el que minimiza los efectos disruptivos (o destructivos) dy de ahí que sea usado con gran frecuencia.Se escogen dos puntos y se hacen los intercambios correspondientes , y
también hay cruza de n puntos .
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
9/16
0 0 0 0 0 0 0 1 1 1 1 1 1 1
Para generar la descendencia se escoge el segmento central de uno de los padres y lossegmentos laterales del otro padre
0 0 0 0 0 0 0 1 1 1 1 1 1 1
0 0 1 1 1 0 0
Hijo 1
1 1 0 0 0 1 1
Hijo2
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
10/16
Ackley [1], aunque se le suele atribuir a Syswerda [217]La cruza uniforme tiene un mayor efecto disruptivo, suele usarse
con P c = 0.5
Cada gen de la descendencia tiene las mismas probabilidades de pertenecer a unou a otro padre. En este caso, se trata de una cruza de n puntos , pero en lnumero de puntos de cruza no se fija previamente.
P c = 0.5, hay una alta probabilidad de que todo tipo de cadena binaria de longitud L sea generadacomo mascara de copiado de bits
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
11/16
•
El numero efectivo de puntos de cruce es fijo pero será por terminomedio L/2, siendo L la longitud del cromosoma.
A B C D E F G
1 0 0 1 0 1 1
Padre 1
L=7
NEP=
1 2 3 4 5 6 7Padre 2
A 2 3 D 4 F GHijo 1
A B C D E F G
1 2 3 4 4 F 6
Mascara
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
12/16
Schaffer y Morishima
En vez de calcular directamente la mascara (o patrón) de cruza, la idea es usar una cadenbinaria de “marcas” para indicar la localización de los puntos de cruza.La información extra se agrega al cromosoma de manera que el numero y localizaciones los puntos de cruza pueda ser objeto de manipulación por el AG. Por tanto, las cadenastendrán una longitud del doble de su tamaño original.Marcamos con “1” las posiciones donde hay cruza y con “0” las posiciones donde no la haySe suelen usar signos de admiraci´on para facilitar la escritura de las cadenas.
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
13/16
Cadena Original
L=10
0 1 1 0 0 0 1 1 0 0 0 1 0 0 1 0 0
Puntos de cru
L=1001 !100 !01100
• Copiar los bits de cada padre hacia sus hijos, de uno en uno.• En el momento en que se encuentra un signo de admiración en cualquiera de los
padres, se efectúa la cruza (es decir, se invierte la procedencia de los bits en los h• Cuando esto ocurre, los signos de admiración se copian también a los hijos, just
de que la cruza se efectué
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
14/16
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
15/16
•
John H. Holland. Adaptation in Natural and Artificial SystemsUniversity of Michigan Press, Ann Arbor, Michigan, 1975• Coello, C. A. C. (2003). Introducción a la computación evolutiva (N
de curso). CINVESTAVIPN. Instituto Politécnico Nacional México
-
8/18/2019 Operador de transformación (cruce o cruza) - Algoritmos genéticos
16/16
“La verdad rara vez es pura, ynunca simple”
Oscar Wilde