Title: Tcnicas de Seleccin
1Técnicas de Selección
- Las estrategias evolutivas utilizan la selección
en dos casos - Para elegir los individuos para la reproducción.
- Para determinar la forma de construcción de la
nueva población antes de pasar a la próxima
generación. - Una parte fundamental del funcionamiento de los
Algoritmos Genéticos (AG) es la selección de los
candidatos para la reproducción.
2Técnicas de Selección en AGs
- Pueden clasificarse en tres grupos
- Selección Proporcional
- Selección mediante torneo
- Selección de estado uniforme
3Selección Proporcional
- Los individuos son elegidos en función de su
contribución de aptitud respecto al total de la
población. - Grupos dentro de la Selec.Proporcional
- La Ruleta
- Sobrante Estocástico
- Universal Estocástica
- Muestreo DeterminÃstico
4Método de la ruleta
- CaracterÃsticas
- Es simple pero ineficiente. Posee complejidad
O(n2). - Presenta el problema de que el individuo menos
apto puede ser seleccionado más de una vez.
5Algoritmo de la Ruleta(Según De Jong)
- Calcular la suma de los valores esperados T
- Repetir N veces (N es el tamaño de la población)
- Generar un número 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
lÃmite r es el seleccionado.
6Método de la Ruleta. Ejemplo
7Método de la Ruleta. Ejemplo
8Método de la Ruleta. Ejemplo
9Método de la Ruleta. Ejemplo
- En el ejemplo T4. Suponga que r1.3
- Hasta el individuo 1 la suma0.35ltr
- Al sumar el individuo 2 la suma1.48gtr
- Por lo tanto, se selecciona al individuo 2.
10Análisis de la ruleta
- Problemas
- Diferencias entre el valor de copias esperado y
el valor real de copias obtenido. - El peor individuo puede seleccionarse varias
veces. - Complejidad
- El algoritmo es de O(n2) tornándose ineficiente
conforme crece n (el tamaño de la población)
11Sobrante Estocástico
- Fue propuesto por Booker y Brindle como una
alternativa para aproximarse más a los valores de
copias esperados por individuo. - Asigna determinÃsticamente 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.
12Algoritmo del Sobrante Estocástico
- Asignar de manera determinÃstica la cantidad de
valores esperados a cada individuo (parte
entera). - Los valores restantes (sobrante del redondeo) se
usan probabilÃsticamente para rellenar la
población. - Variantes
- Sin reemplazo
- Con reemplazo
13Algoritmo del Sobrante Estocástico
- 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 técnica de manera tradicional.
14Sobrante Estocástico. Ejemplo
- 2 padres se eligen de manera determinÃstica y los
otros dos según la variante adoptada.
15Sobrante Estocástico. Ejemplo
- Sin reemplazo
- Se aplica hasta tener el número de padres
requeridos
flip(n) retorna TRUE con probabilidad n
16Sobrante Estocástico. Ejemplo
- Con reemplazo
- Armar la ruleta y aplicar
17Análisis del Sobrante Estocástico
- Complejidad
- Versión sin reemplazo O(n)
- Versión con reemplazo O(n2)
- La más popular es la versión sin reemplazo.
- El sobrante estocástico reduce los problemas de
la ruleta pero puede llevar a la convergencia
prematura al introducir mayor presión de
selección.
18Universal Estocástica
- Fue introducida por Baker con el objetivo de
minimizar la mala distribución de los individuos
en la población en función de sus valores
esperados.
19Universal Estocástica.Algoritmo
- ptr rand()
- sum 0
- i 1
- while (i lt n) do begin
- sum sum Ve(i)
- while (sum gt ptr) do begin
- Seleccionar(i)
- ptr ptr 1
- end
- ii1
- end
20Universal Estocástica.Ejemplo
- Suponga que el valor random generado inicialmente
es ptr0.4
21Universal Estocástica.Ejemplo
- ptrrand()
- sum0
- i1
- while (i lt n) do begin
- sum sum Ve(i)
- while (sum gt ptr) do begin
- Seleccionar(i)
- ptr ptr 1
- end
- ii1
- end
Ya se seleccionaron todos los padres necesarios ?
termina.
22Análisis de la Seleccón Universal Estocástica
- Complejidad O(n)
- Problemas
- Puede ocasionar convergencia prematura.
- Hace que los individuos más aptos se multipliquen
muy rápidamente. - No resuelve el problema de la selección
proporcional que busca que el número de copias
reales coincida con los valores de copias
esperados.
23Muestreo DeterminÃstico(similar al sobrante
estadÃstico pero requiere ordenación)
- Algoritmo
- Calcular Pselectfitnes(pi)/suma de los fitness
- Calcular Ve(pi) Pselectn
- Asignar determinÃsticamente la parte entera de
Ve(pi). - Ordenar la población según los valores decimales.
- Obtener los padres faltantes de la parte superior
de la lista.
24Muestreo DeterminÃstico. Ejemplo
25Análisis del Muestreo DeterminÃstico
- Complejidad
- La asignación determinÃstica es O(n)
- La ordenación es O(n log n)
- Problemas
- Padece de los mismos problemas que el sobrante
estadÃstico.
26Selección por Torneo
- Los métodos de selección proporcional requieren
de dos pasos - Calcular la aptitud media.
- Calcular el valor esperado de copias de cada
individuo. - La selección por torneo realiza la selección en
base a comparaciones directas de los individuos. - Es fácil de paralelizar.
27Selección por Torneo
- Hay dos tipos de selección por torneo
- DeterminÃstica
- ProbabilÃstica
28Selección por torneo DeterminÃstica
- Algoritmo
- Barajar los individuos de la población
- Escoger un número p de individuos (generalmente
2). - Compararlos en base a su aptitud.
- El ganador del torneo es el individuo más apto.
- Debe barajarse la población un total de p veces
para seleccionar N padres.
29Selección por torneo DeterminÃstica. Ejemplo
Padres (6) y (1) (3) y (6) (4) y (3)
30Selección por torneo ProbabilÃstica.
- El algoritmo es igual a la versión determinÃstica
salvo por la elección del ganador del torneo. - En vez de seleccionar siempre al individuo más
apto, se utiliza la función flip(p) - si el resultado es TRUE, se elige al más apto.
- Si no, se selecciona el menos apto.
- El valor de p permanece fijo durante todo el
proceso evolutivo y su valor es 0.5ltplt1
31Selección por torneo ProbabilÃstica. Ejemplo
- Note que si p1 la técnica se reduce a la versión
determinÃstica.
32Análisis de la Selección por Torneo
- La versión determinÃstica garantiza que el mejor
individuo será seleccionado p veces (siendo p el
tamaño del torneo). - Complejidad
- Cada competencia requiere la selección aleatoria
de un número constante de individuos de la
población ? O(1) - Se requieren n competencias para completar una
generación. - Por lo tanto el algoritmo es O(n).
33Análisis de la Selección por Torneo (cont)
- Es eficiente y fácil de implementar.
- Puede introducir una presión selectiva muy alta
en la versión determinÃstica ya que lo malos
individuos no tienen oportunidad de sobrevivir. - Puede regularse la presión selectiva variando el
tamaño del torneo. A medida que se aumente el
tamaño del torneo se realizará mayor presión
selectiva.
34Selección uniforme
- Se utiliza en AGs no generacionales donde sólo
unos cuantos individuos son reemplazados en cada
generación (los menos aptos). - Resulta útil cuando los individuos resuelven un
problema de forma colectiva (no individual).
35Selección uniforme
- Algoritmo
- Sea G la población original
- Seleccionar R individuos (1ltRltM) de entre los
más aptos (ej R2) - Efectuar cruza y mutación 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.
36Análisis de la Selección Uniforme
- Mecanismo especializado de selección
- Su complejidad es O(n log n).
- Los AGs no generacionales no son muy comunes en
problemas de optimización, aunque sà pueden
utilizarse.