aplicaciones de algoritmos genéticos angel kuri instituto tecnológico autónomo de méxico mayo,...
TRANSCRIPT
![Page 1: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/1.jpg)
Aplicaciones de Algoritmos Genéticos
Angel KuriInstituto Tecnológico Autónomo de
MéxicoMayo, 2003
![Page 2: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/2.jpg)
Optimización
Los Algoritmos Genéticos son meta-heurísticos basados en una analogía con los procesos evolutivos, en donde tres ideas sobresalen:
a) Cualquier problema optimizable puede someterse a un proceso de codificación.
b) Un problema así codificado es más fácilmente atacable que su contraparte no codificada.
c) Los operadores genéticos, llamados selección, cruzamiento y mutación son suficientes para explorar completa y eficientemente el espacio de soluciones.
![Page 3: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/3.jpg)
Optimización(Todo problema es codificable)
Para que esto se cumpla debemos restringir los espacios de solución a un subconjunto finito del original.
Esta no es una fuente de problemas ni conceptuales ni prácticos ya que, en todos los casos, la solución compu-tacional de cualquier problema está codificada digitalmente.
![Page 4: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/4.jpg)
Optimización (Un problema codificado es más fácil de atacar)
Esto no es obvio. Pero la amplia evidencia al respecto deja poca posibilidad de duda.
Más importantemente, argumentos teóricos no dejan duda:
a) Los AGs siempre convergen a la mejor solución.
b) La convergenia es,usualmente, muy eficiente.
![Page 5: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/5.jpg)
Optimización(La aplicación de los operadores genéticos arroja
un desempeño eficiente)
Nuestra meta al diseñar AGs es hacer que la convergencia mencionada sea tan eficiente como se pueda.
Dos fuentes de ineficiencia han sido claramente determinadas:
a) Funciones Deceptivas
b) Correlación Espuria
![Page 6: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/6.jpg)
Algoritmo de Vasconcelos
Para evitar las limitaciones del AGS hemos introducido el llamado AG de Vasconcelos.
Posee:a) Acoplamiento determinístico (i -> n-i+1)b) Cruzamiento anular
c) Mutación uniformed) Elitismo completo
![Page 7: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/7.jpg)
Acoplamiento Determinístico
![Page 8: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/8.jpg)
Cruzamiento Anular
![Page 9: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/9.jpg)
Elitismo Completo
![Page 10: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/10.jpg)
Ejemplo de Aplicación
Optimización de una función sujeta a restricciones» Funciones Lineales» Restricciones Lineales» Funciones no-lineales» Restricciones No-lineales
![Page 11: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/11.jpg)
Función de Adaptación
donde s es el número de restricciones satisfechas y
casootroens
cumplensescondicionelastodassixxxf
)1025(10
96)( 79
21
40 s
![Page 12: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/12.jpg)
Representación Numérica
Genoma de punto Fijo
![Page 13: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/13.jpg)
Ejemplo Numérico
![Page 14: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/14.jpg)
Corrida de Muestra
![Page 15: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/15.jpg)
Corrida de Muestra
![Page 16: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/16.jpg)
Sample Run
![Page 17: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/17.jpg)
Corrida de Muestra
![Page 18: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/18.jpg)
Corrida de Muestra
![Page 19: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/19.jpg)
Corrida de Muestra
![Page 20: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/20.jpg)
Asignación de Tareas en una Línea de Producción (Job
scheduling)
Este problema consiste en encontrar el orden óptimo de ejecución de tareas en máquinas de un proceso industrial.
Cada una de las tareas tarda un cierto tiempo en ser ejecutada. Estos tiempos son diferentes para cada tarea (job) en cada máquina.
![Page 21: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/21.jpg)
Job Scheduling
En la figura se ilustra una matriz de costos para 9 jobs y 6 máquinas:
![Page 22: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/22.jpg)
Job Scheduling
La solución, entonces, consistirá de 9 números. Por ejemplo, una posible “solución” sería la secuencia
2,3,4,6,1,5,9,8,7 que indica que los jobs se alimentan a las 6
máquinas en el orden indicado. Es fácil ver, de la matriz de costos, que esta secuencia toma 119 unidades de tiempo
en ser procesada.
![Page 23: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/23.jpg)
Job Scheduling
Para representar esta secuencia en binario, necesitamos 4 bits por cada job y, por tanto, 36 bits en total:
0010, 0011, 0100, 0110, 0001, 0101, 2 3 4 6 1 5
1001, 1100, 0111 9 8 7
![Page 24: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/24.jpg)
Job Scheduling
Un individuo, para el algoritmo genético, consiste, entonces, de 36 bits.
Nótese, sin embargo, que las combinaciones binarias 1010, 1011, 1100, 1101, 1110 y 1111 están “prohibidas” ya que los jobs 10, 11, 12, 13, 14 y 15 no existen.
![Page 25: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/25.jpg)
Job Scheduling
Tampoco es válido que alguno de los jobs se repita en el genoma.
Por ejemplo, la combinación 1,3,5,7,9,2,4,3,8 aunque contiene solamente jobs entre 1
y 9, es inválida porque el job 3 aparece dos veces.
![Page 26: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/26.jpg)
Reparación
Estos individuos inválidos pueden aparecer como resultado de la aplicación de los operadores genéticos de cruzamiento y/o mutación.
Considérense los genomas válidos000100100011010001010110011110001001y100110000111011001010100001100100001
![Page 27: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/27.jpg)
Reparación
Si el cruzamiento ocurre en el punto que se ilustra:00010010001101000101 0110011110001001 1 2 3 4 5 6 7 8 910011000011101100101 0100001100100001 9 8 7 6 5 4 3 2 1“nacen” los individuos00010010001101000101 0100001100100001 1 2 3 4 5 4 3 2 110011000011101100101 0110011110001001 9 8 7 6 5 6 7 8 9
![Page 28: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/28.jpg)
Reparación
Por lo tanto, se debe incluir un operador de reparación, que convierta individuos inválidos en otros que no lo sean.
![Page 29: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/29.jpg)
Ejemplo No-NuméricoJob Scheduling
![Page 30: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/30.jpg)
Ejemplo No-Numérico
![Page 31: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/31.jpg)
Ejemplo No-NuméricoResultados en la Generación 18
![Page 32: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/32.jpg)
Ejemplo No-Numérico Resultados en la Generación 50
Como se puede ver, el algoritmo encontró la solución en la generación 18
![Page 33: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/33.jpg)
Ejemplo No-NuméricoResultados
![Page 34: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/34.jpg)
Problema de SchedulingSimulación
![Page 35: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/35.jpg)
Problema de SchedulingSimulación
![Page 36: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/36.jpg)
Conclusiones
En los problemas que ilustramos no hay, esencialmente, ningún cambio en el AG mismo. Es decir, el mismo algoritmos trabaja en problemas diferentes.
La metodología, por ello, es aplicable a un amplio rango de problemas.
![Page 37: Aplicaciones de Algoritmos Genéticos Angel Kuri Instituto Tecnológico Autónomo de México Mayo, 2003](https://reader036.vdocuments.site/reader036/viewer/2022062303/5528bde8497959977d8fda64/html5/thumbnails/37.jpg)
Ahora veamos el programa!