Aplicaciones de Algoritmos Gen - PowerPoint PPT Presentation

About This Presentation
Title:

Aplicaciones de Algoritmos Gen

Description:

Title: Compresi n de Datos usando AGS Author: Angel Kuri M. Last modified by: ITAM Created Date: 10/19/1999 4:09:26 PM Document presentation format – PowerPoint PPT presentation

Number of Views:88
Avg rating:3.0/5.0
Slides: 38
Provided by: AngelK152
Category:

less

Transcript and Presenter's Notes

Title: Aplicaciones de Algoritmos Gen


1
  • Aplicaciones de Algoritmos Genéticos
  • Angel Kuri
  • Instituto Tecnológico Autónomo de México
  • Mayo, 2003

2
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.
3
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.

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

5
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

6
Algoritmo de Vasconcelos
  • Para evitar las limitaciones del AGS hemos
    introducido el llamado AG de Vasconcelos.
  • Posee
  • a) Acoplamiento determinístico (i -gt n-i1)
  • b) Cruzamiento anular
  • c) Mutación uniforme
  • d) Elitismo completo

7
Acoplamiento Determinístico
8
Cruzamiento Anular
9
Elitismo Completo
10
Ejemplo de Aplicación
  • Optimización de una función sujeta a
    restricciones
  • Funciones Lineales
  • Restricciones Lineales
  • Funciones no-lineales
  • Restricciones No-lineales

11
Función de Adaptación
  • donde s es el número de restricciones satisfechas
    y

12
Representación Numérica
  • Genoma de punto
    Fijo

13
Ejemplo Numérico
14
Corrida de Muestra
15
Corrida de Muestra
16
Sample Run
17
Corrida de Muestra
18
Corrida de Muestra
19
Corrida de Muestra
20
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.

21
Job Scheduling
  • En la figura se ilustra una matriz de costos para
    9 jobs y 6 máquinas

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

23
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

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

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

26
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álidos
  • 000100100011010001010110011110001001
  • y
  • 100110000111011001010100001100100001

27
Reparación
  • Si el cruzamiento ocurre en el punto que se
    ilustra
  • 00010010001101000101 0110011110001001
  • 1 2 3 4 5 6 7
    8 9
  • 10011000011101100101 0100001100100001
  • 9 8 7 6 5 4 3
    2 1
  • nacen los individuos
  • 00010010001101000101 0100001100100001
  • 1 2 3 4 5 4 3
    2 1
  • 10011000011101100101 0110011110001001
  • 9 8 7 6 5 6 7
    8 9

28
Reparación
  • Por lo tanto, se debe incluir un operador de
    reparación, que convierta individuos inválidos en
    otros que no lo sean.

29
Ejemplo No-NuméricoJob Scheduling
30
Ejemplo No-Numérico
31
Ejemplo No-NuméricoResultados en la Generación 18
32
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

33
Ejemplo No-NuméricoResultados
34
Problema de SchedulingSimulación
35
Problema de SchedulingSimulación
36
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.

37
Ahora veamos el programa!
Write a Comment
User Comments (0)
About PowerShow.com