Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Grupo 6
Sharón Benasús
Michell Vanrell
Agenda
Introducción
Cómo funcionan
Ejemplo
Por qué funcionan
Algoritmos genéticos paralelos
Introducción
Provienen de la familia de modelo computacional
basado en la evolución
Introducidos por Holland en 1975
Proveen una solución potencial a un problema
específico en una estructura tipo cromosoma y
aplican operadores de recombinación para
preservar la información crítica
Cualquier modelo basado en población que usa
selección y recombinación para generar nuevos
elementos en el espacio de búsqueda
Introducción
Población
Conjunto de soluciones potenciales, donde la
población inicial puede ser elegida
randómicamente
Cambia con el tiempo pero su tamaño se
mantiene
Individuo
Elemento de la población
Cada individuo es representado por una cadena
de caracteres
Introducción
Crossover
Dos nuevos individuos pueden ser obtenidos de
dos padres en el mating pool, recombinando a
ambos padres
Mutación
Individuos en el mating pool también pueden
cambiar a través de mutación randómica
Resultado -> Un nueva generación
El proceso se repite y converge a una población
con individuos muy similares entre si
Algoritmo genético Canónico
Los individuos son cadenas binarias de largo fijo
codificadas según el problema a resolver
En general las poblaciones iniciales se eligen de
forma randómica
Luego de creada la población inicial se le aplica a
cada individuo la función de evaluación
En base al resultado de dicha función se calcula el
fitness
Fitness = fi/f
Algoritmo genético Canónico
Codificación
Espacio de soluciones
Fitness y selección de generación
intermedia
Recombinación
Codificación
Se utilizará un string de números
El número en el i-écimo lugar del string
corresponde a la estación en la cual la i-écima
operación se llevará a cabo
Los números de las operaciones van a ser
consistentes con el grafo de precedencia
Según el grafo presentado:
Espacio de soluciones
Soluciones no posibles porque rompen las
reglas de precedencia
Opciones
Crossover y mutación espaciales para mantener
las restricciones
Dejar que se generen soluciones no aceptables
Función de penalización para ‘alejar’ las soluciones no
aceptables
Forzar cada string a formar una solución aceptable
Se mantiene el string no aceptable pero se decodifica
de forma que represente una solución posible
Fitness y selección de la
generación intermedia
El fitness para el ALBP incluye
un elemento correspondiente al tiempo total de
la estación mas lenta
Un costo de penalización para las soluciones
que no sean viables por restricciones de
precedencia
max i (Si) + KNv
Si – Tiempo total para las operaciones asignadas a la
estación i
Nv – Número de violaciones de precedencia
K – Constante igual al tiempo de la operación mas larga
Fitness y selección de la
generación intermedia
Hay diferentes opciones para obtener el
fitness
Fitness = constante – función_objetivo
Fitness = Recíproco (función objetivo)
Fitness i = exp(-hvi)
Con h elegida para que el fitness caiga en cierto rango
particular
Superar las dificultades graduando el valor
de fitness explícitamente. Esto da control de
la velocidad de convergencia del algoritmo
Fitness y selección de la
generación intermedia
Si el problema es de maximización, el
fitness del individuo i va a ser el valor de su
evaluación de la función objetivo (vi)
Si el problema es de minimización, se toma
como fitness el opuesto a ese valor (-vi)
Se realiza una escala lineal de los valores
para obtener una distribución de fitness con
las siguientes propiedades
N
max i F i Fi / N Fi 0i
N
F 1
i1 i
i 1
Fitness y selección de la
generación intermedia
Selección de la generación intermedia a
través de Stochastic Universal Sampling
Se toman los integrantes de la población y se
ordenan randómicamente
A cada uno se le asigna un intervalo
proporcional a su fitness y escalado de forma
que el total de los intervalos sea N
Se consideran los intervalos alineados en una
línea que va de 0 a N
Se elige un número x (aleatorio uniforme entre 0
y 1) y se pone a los individuos correspondientes
a los intervalos x, x+1, …, x+N en el mating pool
Pares de individuos del mating pool son
recombinados usando crossover y mutación
Recombinación
Crossover
Ocurre en un único punto randómico con
probabilidad p
Mutación
Para cada operación, con una
probabilidad pequeña q, se le cambia la
estación asignada a la anterior o a la
siguiente en el string
Recombinación – ajustes
Ajustes incluidos por los autores
Elitismo
Incluir en una posición aleatoria de la población el
individuo con mejor valor de fitness de la generación
anterior
Luego de que se genera la nueva generación, si
algún descendiente tiene peor valor de fitness
que cualquiera de la generación anterior, se lo
retira y se deja a uno de sus padres que siga
adelante incambiado en la próxima generación
Resultados experimentales
Consideraciones previas
No se realizaron optimizaciones en el código
Las comparaciones se realizan fijando el
número de generaciones en una corrida y
observando al mejor individuo en la población
final
Método de inicialización de la primer población
Aleatoriamente
Arcus
Si bien tiene resultados muy buenos, se tiene el
problema de convergencia prematura por poca
variabilidad
50 operaciones a asignar a 5 estaciones
Resultados experimentales
Valores fijados para la condición de parada
de 350 generaciones
Probabilidad de crossover
0.6
0.7
0.8
Probabilidad de mutación
{0.005, 0.01, 0.015, 0.020, 025, 0.030, 0.035, 0.04}
Scaling factor
{1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 2.5}
Resultados experimentales
5 problemas generados randómicamente
8 corridas para cada problema con diferentes
semillas para generación de valores aleatorios
Valores en la tabla
(a) promedio del porcentaje de la desviación de las
mejores soluciones en la última generación de la mejor
solución encontrada
(b) promedio del porcentaje de individuos de la población
final que tuvieron el mismo valor que el mejor de la
generación
(c) primer generación en la que un promedio del 90% o
mas de los individuos de la población tienen el mismo
valor que el mejor de la población
Resultados p = 0.06
Otros resultados
Comparaciones eliminando el crossover y realizando
selección de la siguiente manera
Realizando mutación solo si la solución anterior es mejorada
El porcentaje de desviación del valor óptimo es mayor que el
encontrado en los resultados anteriores
L H
Un esquema H representa a 2
cadenas: cuanto mayor sea el orden del
esquema a menos cadenas representará.
El orden de un esquema da una medida de su
especificidad.
La longitud característica da una medida de la
compacidad de la información contenida en el
esquema.
Diferentes vistas del
Muestreo de los hiperplanos
Diferentes vistas del
Muestreo de los hiperplanos (2)
Los Esquemas
i n
1
f Aptitud (vi )
n i 1
EL TEOREMA FUNDAMENTAL
f H,t
m H , t 1 m H , t n
j
fj
Siendo f(H) la aptitud media de las cadenas
representadas por el esquema H en el instante t.
Los Esquemas
Recordando ...
Aptitud media de la población en el
instante t, f : Es el promedio de las
aptitudes de todas las cadenas de la
población en el instante t.
in
1
f fi
n i 1
El Efecto de la Selección
Ecuación de crecimiento reproductivo del esquema:
f H,t
m H , t 1 m H , t
f
f c f
m H , t 1 m H , t 1 c m H , t
f
Comenzando en t 0 :
m H , t m H , 0 1 c
t
f H ,t
pc m H , t 1 pR
f
f H ,t
pc m H , t 1 pR g
f
El Efecto de la Cruza
Resumiendo las anteriores diapositivas, el valor esperado
del número de representantes del esquema H tras haber
efectuado selección y cruzamiento es:
f H ,t f H ,t
m H , t sel cru 1 pC m H , t pc m H , t 1 pR g
f f
mH,t
P H ,t
n
f H,t H
P H , t 1 P H , t 1 pC 1 P H , t
f L 1
f H ,t H f H ,t
P H , t 1 P H , t 1 pC 1 P H , t
f L 1 f
Selección del 2do padre basado en su aptitud
El Efecto de la Mutación
Suponemos que la mutación se aplica con probabilidad pm y que tiene el
efecto de invertir un bit (cambiar un 1 por un 0 ó viceversa).
Para que una cadena representante del esquema H permanezca en él
tras una mutación, debe ocurrir que ninguno de los bits definidos del
esquema sea invertido.
H
pm 1 pm
f H ,t H f H ,t
1 P H , t
H
P H , t 1 P H , t 1 pC 1 pm
f L 1 f
El Teorema Fundamental
Este resultado recibe el nombre de Teorema del
esquema o Teorema Fundamental de los
algoritmos genéticos:
La presencia de un esquema H en la población P
de la generación del instante t en un Algoritmo
Genético evoluciona estadísticamente de modo
exponencial según la ecuación anterior.
Los esquemas de orden bajo adaptados por
encima de la media reciben un número
exponencialmente creciente de oportunidades en
siguientes generaciones.
El Teorema Fundamental
f H ,t H f H ,t
1 P H , t
H
P H , t 1 P H , t 1 pC 1 pm
f L 1 f
Factor de Crecimiento
Kg Factor de Supervivencia
KS
El Teorema Fundamental
Los esquemas con una aptitud por encima de la
media
incrementan exponencialmente su presencia en
sucesivas generaciones K g 1
Los que tienen la aptitud por debajo de la media
decrementan exponencialmente su presencia en
la población K g 1
La tendencia de los esquemas aventajados a
incrementar su presencia en sucesivas
generaciones se acentúa cuando el esquema es
corto y de bajo orden, pues entonces KS 1
Críticas al Teorema
Sólo es una cota inferior, es decir, no es
exacto.
No es muy útil para predecir a largo plazo el
comportamiento de un algoritmo genético.
Sólo considera los efectos destructivos de los
operadores genéticos y no los efectos
constructivos.
Es muy particular. Está hecho para un AGS
con selección proporcional (de ruleta),
cruzamiento de un punto y probabilidad de
mutación uniforme.
El problema de la Ineficiencia
Los AGs sólo se pueden considerar eficientes en
comparación con otros métodos estocásticos, pero si
se encuentra un método determinista para resolver
un problema lo hará más eficientemente.
Tendencia al extravío de la búsqueda: el AG realiza la
búsqueda de los mejores puntos utilizando
únicamente la aptitud de los individuos para
recombinar internamente los bloques constructivos.
A veces esta información proporcionada es
insuficiente para orientar la búsqueda del óptimo:
desorientación (deception).
El problema de la Ineficiencia
Diversidad en individuos
Diversidad en Aptitudes
Diversidad en los AGs