Monografias.com > Sin categoría
Descargar Imprimir Comentar Ver trabajos relacionados

Algoritmos genéticos (página 2)




Enviado por Pablo Turmero



Partes: 1, 2

Monografias.com

Consideraciones
Diferentes implementaciones. Idea básica: nuevas buenas soluciones pueden ser obtenidas a partir de bloques de soluciones existentes
El tiempo de corrida va a depender de los parámetros con gran probabilidad de que si se deja correr por un buen tiempo se obtenga una solución óptima o casi óptima
Trabajan sobre toda una población otorgando mayor paralelismo
Pueden trabajar sobre un problema sin conocer los detalles del mismo con demasiada exactitud

Monografias.com

Ejemplo Assembly Line Balancing Problem
Diseño de línea de fabricación usando n estaciones
En cada estación se realizan ciertas operaciones en cada producto fabricado y luego se pasa a otra estación en la línea
Problema: asignar las operaciones a las n estaciones de forma de que la línea de producción sea balanceada, dado el tiempo que lleva cada operación
Algunas operaciones deben realizarse antes de que otras puedan empezar

Monografias.com

Grafo de precedencia

Monografias.com

Pasos a seguir
Codificación
Espacio de soluciones
Fitness y selección de generación intermedia
Recombinación

Monografias.com

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:

Monografias.com

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

Monografias.com

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

Monografias.com

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

Monografias.com

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

Monografias.com

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

Monografias.com

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

Monografias.com

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

Monografias.com

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

Monografias.com

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}

Monografias.com

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

Monografias.com

Resultados p = 0.06

Monografias.com

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

Dejando que la mutación genere peores soluciones y dejar que la selección mejore la calidad global de la generación, agregando elitismo y eliminando aquellos individuos que luego de la mutación son peores soluciones que el peor de la generación anterior

Las mejores soluciones después de 350 generaciones estaban en promedio a un 32% de la mejor solución encontrada
La combinación de crossover y selección es mas efectiva que la utilización de cada una por separado

Monografias.com

Solo selección, se reemplaza si mejora

Monografias.com

Solo selección, se reemplaza siempre

Monografias.com

Fundamentos Matemáticos de los Algoritmos Genéticos

¿ Por qué funcionan los Algoritmos Genéticos?
Los Esquemas (Hiperplanos)
El Teorema Fundamental
Paralelismo Implícito.

Monografias.com

Los Algoritmos Genéticos no procesan estrictamente individuos, sino similitudes entre ellos: patrones de similitud entre individuos o esquemas
Dado que cada individuo encaja en muchos patrones a la vez, la eficiencia de la búsqueda se multiplica.
Fundamentos Matemáticos de los Algoritmos Genéticos

Monografias.com

El esquema es una herramienta para estudiar la forma en que una cadena representa a otras cadenas.
Es un patrón de similitud que describe un subconjunto de cadenas con similitudes en ciertas posiciones de la cadena.
Consideramos el alfabeto binario extendido { 0, 1, *} .
Un esquema recoge una determinada cadena si en cada posición del esquema un 1 corresponde a un 1 en la cadena, un 0 a un 0, y el * se corresponde con cualquier cosa
Los Esquemas

Monografias.com

El esquema *0000 encaja con las cadenas {00000, 10000}.

El esquema 0*0*1 encaja con las cadenas {00001, 00011, 01001, 01011}.
Los EsquemasEjemplos

Monografias.com

Proposición: Se verifican las siguientes propiedades:
Si un esquema contiene k símbolos de indeferencia ( * ) entonces representa a 2k cadenas binarias.
Una cadena binaria de longitud L encaja en 2L esquemas distintos.
Considerando cadenas binarias de longitud L, existen en total 3L posibles esquemas.
Una población de n cadenas binarias de longitud L contiene entre 2L y n2L esquemas distintos.
Los Esquemas

Monografias.com

Consideraremos los efectos de las operaciones de reproducción, cruce y mutación de los esquemas contenidos en la población.
En cada instante de tiempo t (generación) consideraremos una población de cadenas individuales P(t) compuestas por Pj, j= 1..n
Los Esquemas

Monografias.com

Ciertos esquemas son más específicos que otros.
Ciertos esquemas abarcan más parte de la longitud total de la cadena que otros.
Para cuantificar estas ideas introducimos dos propiedades de los esquemas:
Los Esquemas

Monografias.com

Orden de un esquema, : Es el número de posiciones fijas (con 0 ó 1) que contiene dicho esquema.
Ejemplo:
H = 011*1** ? = 4
Longitud característica de un esquema, : Es la distancia entre la primera y última posiciones fijadas de la cadena.
Ejemplo:
H = 011*1** ?
H = 0****** ?
Los Esquemas

Monografias.com

Un esquema H representa a
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.
Los Esquemas

Monografias.com

Diferentes vistas del Muestreo de los hiperplanos

Monografias.com

Diferentes vistas del Muestreo de los hiperplanos (2)

Monografias.com

Dados una población de cadenas binarias P en un instante t y un esquema H se definen:
Presencia de H en P en el instante t, m(H,t): Es el número de cadenas de la población P en el instante t que encajan en el esquema H.
Aptitud del esquema H en P en el instante t, Es el promedio de las aptitudes de todas las cadenas de la población que encajan en el esquema H en el instante t.

Los Esquemas

Monografias.com

Aptitud media de la población en el instante t, Es el promedio de las aptitudes de todas las cadenas de la población en el instante t.
Los Esquemas

Monografias.com

EL TEOREMA FUNDAMENTAL
Buscamos una formulación de cómo evoluciona en promedio un esquema dentro de una población de un A.G.

Consideramos los efectos individuales y combinados de la reproducción, cruce y mutación sobre los esquemas de una población de cadenas.

Monografias.com

El Efecto de la Selección
Asumimos que las cadenas son copiadas a la nueva generación con una probabilidad basada en su valor de capacidad (fitness fi ) divida por la capacidad total de la generación:

Monografias.com

Supongamos que en un instante dado de tiempo t hay m ejemplares de un esquema particular H contenido en la población P(t) (m = m(H,t) ).

Tomamos una población de tamaño n.

El Efecto de la Selección

Monografias.com

Mediante reemplazamientos a partir de la población P(t), esperamos tener m(H,t+1) representantes del esquema en la población en el instante t +1 donde:

Siendo f(H) la aptitud media de las cadenas representadas por el esquema H en el instante t.
El Efecto de la Selección

Monografias.com

Recordando …
Aptitud media de la población en el instante t, Es el promedio de las aptitudes de todas las cadenas de la población en el instante t.
Los Esquemas

Monografias.com

Ecuación de crecimiento reproductivo del esquema:

Un esquema particular crece como el porcentaje de la aptitud media del esquema respecto de la aptitud de la población.

El Efecto de la Selección

Monografias.com

Sea un esquema particular H que permanece por encima de la media una cantidad ( c constante), entonces:

La reproducción asigna un número exponencialmente creciente (decreciente) de ejemplares a los esquemas por encima (por debajo) de la media.

El Efecto de la Selección

Monografias.com

El valor esperado de cadenas representantes de H que han sido seleccionadas y a las que no se les aplica cruzamiento es:
El Efecto de la Cruza

Monografias.com

El valor esperado del número de cadenas representantes
de H que fueron seleccionadas y permanecen en el esquema después de aplicárseles cruzamiento es:

Siendo la probabilidad de ruptura del esquema H bajo el tipo de cruzamiento que esté siendo utilizado.

El Efecto de la Cruza

Monografias.com

Sea el número de cadenas ganadas por el esquema H durante el procedimiento de cruza:

El Efecto de la Cruza

Monografias.com

Resumiendo las anteriores diapositivas, el valor esperado del número de representantes del esquema H tras haber efectuado selección y cruzamiento es:

Aporte de las cadenas de H que
no intervinieron en la cruza.
Aporte de las cadenas de H que se cruzan y
se mantienen en H + las cadenas que no eran
de H, pero luego del cruce pasan a formar
parte de él.
El Efecto de la Cruza

Monografias.com

Si las cadenas se cortan en un solo punto, la probabilidad de romper el esquema H con un corte es:

Volviendo a la ecuación:

Eliminando g y haciendo cuentas…:

El Efecto de la Cruza

Monografias.com

En el algoritmo original de Holland se elige a un compañero, para realizar la cruza, sin predisposición. A sí que la probabilidad de que esa cadena encaje en el esquema H es:

Tomando en cuenta esto, podemos definir nuevamente

El Efecto de la Cruza

Monografias.com

De esta manera llegamos a:

El Efecto de la Cruza
Selección del 2do padre basado en su aptitud

Monografias.com

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.

Estamos suponiendo que los eventos de invertir un bit
son independientes entre si.
El Efecto de la Mutación

Monografias.com

Añadiendo a la expresión que teníamos:

El Efecto de la Mutación

Monografias.com

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

Monografias.com

Factor de Crecimiento
Factor de Supervivencia

El Teorema Fundamental

Monografias.com

Los esquemas con una aptitud por encima de la media
incrementan exponencialmente su presencia en sucesivas generaciones
Los que tienen la aptitud por debajo de la media
decrementan exponencialmente su presencia en la población
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
El Teorema Fundamental

Monografias.com

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.

Críticas al Teorema

Monografias.com

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).

Monografias.com

El problema de la Ineficiencia
Un caso especialmente desfavorable ocurre cuando hay una fuerte interacción entre dos o más atributos (genes), de tal forma que la contribución a la aptitud de un individuo que realiza cierto gen depende grandemente de los valores que tomen otros (epistasis o acoplamiento).
Existen mecanismos para atenuar estos efectos.
En otras ocasiones es necesario incorporar conocimiento específico al AG.

Monografias.com

Diversidad en los AGs
Diversidad en individuos

Diversidad en Aptitudes

Monografias.com

Diversidad en los AGs
Con poca variedad de individuos
poca variedad de esquemas
el operador de cruce pierde la capacidad de intercambio de información útil entre individuos

Monografias.com

Diversidad en los AGs
Con poca diversidad de aptitudes todos los individuos tienen similares posibilidades de sobrevivir
búsqueda aleatoria.

Una gran disparidad de aptitudes suele afectar negativamente a la diversidad de la población.

Monografias.com

En algún momento de la evolución de un AG puede ocurrir que un individuo o un grupo de ellos obtengan una aptitud notablemente superior a los demás (fases tempranas de la evolución).
Riesgo de que se produzca una evolución en avalancha: al incrementar los individuos más aptos su presencia en la población, la diversidad disminuye, ello hace que en la siguiente generación se favorezca aún más a los individuos más aptos hasta que dominan toda la población (súper individuos).
Los súper individuos sólo son los más aptos en cierto momento

Convergencia Prematura

Monografias.com

Diversidad en los AGs
Deriva genética: Favorecer más de lo que les corresponde a individuos ocasionalmente más aptos.
convergencia prematura hacia tal `individuo afortunado'.
Conclusión: es necesario tener control sobre la
diversidad de aptitudes de la población para evitar que se produzca una convergencia prematura (avalancha) ya sea por exceso diversidad (superindividuos) o por falta de ella (deriva genética).

Monografias.com

La eficacia a los AGs se basa en que, aunque el AG sólo procesa n estructuras en cada generación, se puede probar que, bajo hipótesis muy generales, se procesan de modo útil al menos esquemas.
Este paralelismo implícito se consigue sin ningún dispositivo o memoria adicionales, sólo con la propia población.
A pesar de la ruptura de los esquemas largos de orden alto por los operadores de cruce y mutación, los algoritmos genéticos procesan inherentemente una gran cantidad de esquemas mientras procesan una cantidad relativamente pequeña de cadenas.

Paralelismo Implícito

Monografias.com

Algoritmos genéticos paralelos
Paralelismo inherente proporcional al tamaño de la población
Sugiere que se puede incrementar el tamaño de la población sin afectar la performance
Problemas en performance generados por sincronización y envío de mensajes
Si se explotan todas las fuentes de paralelismo el tiempo de ejecución para generar una generación no depende del tamaño de la población (Gordon, Whitley y Bohm)
Grandes poblaciones convergen mas lentamente

Monografias.com

Poblaciones globales con paralelismo
Implementación del algoritmo genético canónico pero con ‘Selección por torneo’
Se eligen dos individuos de la población actual, el mejor de ambos pasa a la generación intermedia
Se utilizan N/d procesadores donde N es el tamaño de la población
Los procesadores se numeran de 1 a N/2 y el tamaño de la población es par
En cada procesador x habitan dos individuos: 2x y 2x-1

Monografias.com

Poblaciones globales con paralelismo (2)
Se evalúan los individuos
Cada procesador realiza dos sorteos independientes y guarda los individuos ganadores de los dos sorteos
El crossover se realiza en los procesadores numerados con un número menor a p*N/2
Todos los procesadores realizan mutación en sus individuos (si corresponde)

Monografias.com

Modelos isla
6400 individuos en 64 procesadores, por ejemplo
Dividir la población total en subpoblaciones de 100 individuos cada una
Cada subpoblación ejecuta un algoritmo genético
Cada x cantidad de generaciones, las subpoblaciones intercambian algunos individuos intercambiando material genético
Si un gran número de individuos migra en cada generación, se pierden las diferencias entre las islas
Si la migración es poco frecuente, podría llevar a que cada población converja prematuramente

Monografias.com

Algoritmos genéticos celulares
2500 procesadores dispuestos en una grilla de 50 x 50
Los procesadores solo se comunican con sus vecinos inmediatos
Cada string (cada procesador) se fija en sus vecinos inmediatos y elige el mejor individuo que encuentra
Recombina su individuo con el elegido del vecino
Si un vecindario esta a 20 o 25 movimientos de otro, estos vecindarios están aislados como en el modelo de islas
Luego de algunas generaciones hay algunos focos conteniendo individuos similares

Monografias.com

Paralelismo en el ALBP
Se eligió la implementación de forma de minimizar el pasaje de mensajes
Locations vs procesadores
En una location habita un único individuo
Un procesador puede manejar varios individuos
Cada location está conectada con un pequeño grupo de locations -> vecindario
Definición del vecindario
El vecindario de una location estará formado por aquellas locations que no están a mas de 4 links

Monografias.com

Paralelismo en el ALBP
En cada location el algoritmo selecciona un individuo del vecindario basándose en fitness para recombinarlo con el individuo residente
La selección se realiza de forma que el individuo i es elegido del vecindario con probabilidad dada por

La reproducción produce dos descendientes
Se sustituye el individuo actual por su mejor descendiente siempre que sea mejor que el peor individuo del vecindario

Monografias.com

Paralelismo en el ALBP
Repetir
Para cada individuo i
Evaluar f(i)
Transmitir f(i) para todos los individuos j en el vecindario
Elegir un individuo j para combinar basado en fitness
Pedir el individuo j
Reproducir usando los individuos i y j
Hasta que la variación en la población es pequeña

Monografias.com

Conclusiones
El tiempo computacional está dominado por la evaluación del fitness incluyendo el chequeo de validez de la nueva generación de soluciones
Los resultados no son tan buenos como para el algoritmo no paralelo
La convergencia es mas lenta y hay muchos casos en que no converge
La performance del algoritmo paralelo es menos sensitiva al scaling factor que la secuencial

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter