Beruflich Dokumente
Kultur Dokumente
Las estrategias evolutivas utilizan la seleccin en dos casos Para elegir los individuos para la reproduccin. Para determinar la forma de construccin de la nueva poblacin antes de pasar a la prxima generacin. Una parte fundamental del funcionamiento de los Algoritmos Genticos (AG) es la seleccin de los candidatos para la reproduccin.
1
Pueden clasificarse en tres grupos Seleccin Proporcional Seleccin mediante torneo Seleccin de estado uniforme
Seleccin Proporcional
Los individuos son elegidos en funcin de su contribucin de aptitud respecto al total de la poblacin. Grupos dentro de la Selec.Proporcional La Ruleta Sobrante Estocstico Universal Estocstica Muestreo Determinstico
3
Mtodo de la ruleta
Caractersticas
Es simple pero ineficiente. Posee complejidad O(n2). Presenta el problema de que el individuo menos apto puede ser seleccionado ms de una vez.
Calcular la suma de los valores esperados T Repetir N veces (N es el tamao de la poblacin) Generar un nmero aleatorio r entre 0 y T Recorrer secuencialmente los individuos, sumando los valores esperados, hasta que la suma sea mayor o igual a r. El individuo que haga que la suma exceda el lmite r es el seleccionado.
5
25 0.09 286
1
2 3 4 TOTAL
25
81 36 144 286
0.09
0.28 0.13 0.50 1.00
0.35
1.13 0.51 2.01 4.00
Es un valor entre 0 y 1. Ser ms alto cuanto mejor sea el valor de fitness del individuo. Se calcula como (Valor de fitness/Suma de fitness)
6
1
2 3 4 TOTAL
25
81 36 144 286
0.09
0.28 0.13 0.50 1.00
0.35
1.13 0.51 2.01 4.00
El nmero de copias esperadas depende de la relacin entre el valor de aptitud del individuo y el fitness promedio de la poblacin. Se calcula como (Valor de fitness/Fitness Promedio)
1
2 3 4 TOTAL
25
81 36 144 286
0.09
0.28 0.13 0.50 1.00
0.35
1.13 0.51 2.01 4.00
TOTAL
286
1.00
4.00
Anlisis de la ruleta
Problemas
Complejidad
Sobrante Estocstico
Fue propuesto por Booker y Brindle como una alternativa para aproximarse ms a los valores de copias esperados por individuo. Asigna determinsticamente las partes enteras de los valores esperados para cada individuo y luego utiliza otro esquema (proporcional) para la parte fraccionaria. Esto reduce los problemas de la ruleta pero puede llevar a la convergencia prematura.
11
Asignar de manera determinstica la cantidad de valores esperados a cada individuo (parte entera).
Los valores restantes (sobrante del redondeo) se usan probabilsticamente para rellenar la poblacin. Variantes Sin reemplazo Con reemplazo
12
Variantes
Sin reemplazo : Cada sobrante se usa para sesgar el tiro de una moneda que determina si una cadena se selecciona de nuevo o no. Con reemplazo : Los sobrantes se usan para dimensionar los segmentos de una ruleta y se usa esta tcnica de manera tradicional.
13
2 padres se eligen de manera determinstica y los otros dos segn la variante adoptada.
14
Sin reemplazo
flip(n)
retorna TRUE con probabilidad n
Con reemplazo
16
El sobrante estocstico reduce los problemas de la ruleta pero puede llevar a la convergencia prematura al introducir mayor presin de seleccin.
17
Universal Estocstica
Fue introducida por Baker con el objetivo de minimizar la mala distribucin de los individuos en la poblacin en funcin de sus valores esperados.
18
Universal Estocstica.Algoritmo
ptr := rand(); sum := 0; i := 1; while (i <= n) do begin sum = sum + Ve(i); while (sum > ptr) do begin Seleccionar(i); ptr := ptr + 1; end; i:=i+1; end;
19
Universal Estocstica.Ejemplo
begin
21
begin
22
begin
23
ptr:=rand(); ptr=1.4 sum:=0; Suma = 1.23 i:=1; i=1 while (i <= n) do begin Seleccionados 1 sum = sum + Ve(i); while (sum > ptr) do begin Seleccionar(i); ptr := ptr + 1; end; i:=i+1; Como (1.23<1.4), termina el ciclo end;
24
ptr:=rand(); ptr=1.4 sum:=0; Suma = 2.01 i:=1; i=2 while (i <= n) do begin Seleccionados 1, 2 sum = sum + Ve(i); while (sum > ptr) do begin Seleccionar(i); ptr := ptr + 1; end; i:=i+1; end;
ptr:=rand(); ptr=2.4 sum:=0; Suma = 2.01 i:=1; i=2 while (i <= n) do begin Seleccionados 1, 2 sum = sum + Ve(i); while (sum > ptr) do begin Seleccionar(i); ptr := ptr + 1; end; i:=i+1; Como (2.01<2.4), termina el ciclo end;
ptr:=rand(); ptr=2.4 sum:=0; Suma = 3.77 i:=1; i=3 while (i <= n) do begin Seleccionados 1, 2, 3 sum = sum + Ve(i); while (sum > ptr) do begin Seleccionar(i); ptr := ptr + 1; end; i:=i+1; end;
28
ptr:=rand(); ptr=3.4 sum:=0; Suma = 3.77 i:=1; i=3 while (i <= n) do begin Seleccionados 1, 2, 3 sum = sum + Ve(i); while (sum > ptr) do begin Seleccionar(i); ptr := ptr + 1; end; i:=i+1; Como (3.77>3.4), el individuo 3 se end; seleccionar otra vez
29
ptr:=rand(); ptr=3.4 sum:=0; Suma = 3.77 i:=1; i=3 while (i <= n) do begin Seleccionados 1, 2, 3, 3 sum = sum + Ve(i); while (sum > ptr) do begin Seleccionar(i); ptr := ptr + 1; end; Ya se seleccionaron todos los i:=i+1; padres necesarios termina. end;
30
No resuelve el problema de la seleccin proporcional que busca que el nmero de copias reales coincida con los valores de copias esperados.
31
Muestreo Determinstico
Algoritmo
33
Complejidad :
Problemas
34
La seleccin por torneo realiza la seleccin en base a comparaciones directas de los individuos. Es fcil de paralelizar.
35
36
Algoritmo Barajar los individuos de la poblacin Escoger un nmero p de individuos (generalmente 2). Compararlos en base a su aptitud. El ganador del torneo es el individuo ms apto. Debe barajarse la poblacin un total de p veces para seleccionar N padres.
37
El algoritmo es igual a la versin determinstica salvo por la eleccin del ganador del torneo.
La versin determinstica garantiza que el mejor individuo ser seleccionado p veces (siendo p el tamao del torneo).
Complejidad
Cada competencia requiere la seleccin aleatoria de un nmero constante de individuos de la poblacin O(1)
Seleccin uniforme
Se utiliza en AGs no generacionales donde slo unos cuantos individuos son reemplazados en cada generacin (los menos aptos).
Resulta til cuando los individuos resuelven un problema de forma colectiva (no individual).
43
Seleccin uniforme
Algoritmo
Sea G la poblacin original Seleccionar R individuos (1<=R<M) de entre los ms aptos (ej: R=2) Efectuar cruza y mutacin a los R individuos seleccionados. Sean H sus hijos. Elegir al mejor individuo en H ( o a los mejores) Reemplazar los peores individuos de G por los mejores individuos de H.
44
Mecanismo especializado de seleccin Su complejidad es O(n log n). Los AGs no generacionales no son muy comunes en problemas de optimizacin, aunque s pueden utilizarse.
45