1 / 30

Pablo Musso ARTech pmusso@artech.uy

Algoritmos Genéticos con GeneXus. Pablo Musso ARTech pmusso@artech.com.uy. Agenda. IV) Implementando en Gx. III) Resolviendo un problema. II) Teoría. I) Aplicación. I) Aplicación. I) Aplicación. Posibles Problemas. Problemas de Optimización (NP-difíciles)

Télécharger la présentation

Pablo Musso ARTech pmusso@artech.uy

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algoritmos Genéticos con GeneXus Pablo Musso ARTech pmusso@artech.com.uy

  2. Agenda IV) Implementando en Gx III) Resolviendo un problema II) Teoría I) Aplicación

  3. I) Aplicación I) Aplicación

  4. Posibles Problemas • Problemas de Optimización (NP-difíciles) • min/ max h(X1,X2….Xn) • Sa: gi(X1,X2….Xn) >=0 • Problemas de Asignación de Recursos • Asignación de alumnos a aulas • Asignación de charlas a horarios en el Evento • Problema de la “Mochila” • Carga de Camiones/Barcos • Problema del “Vendedor que debe Viajar” • Camino Optimo • Data Mining • Sitios Web Adaptativos • Clustering y Clasificación genética • Problema de Ruteo de Vehículos

  5. Problema de Ruteo de Vehículos • En grandes empresas de fletes • Deposito central, n Clientes con demanda di, Costo i j :cij, m capacidad de cada vehículo

  6. Problema de Ruteo de Vehículos (2) • Hallar k-camiones y cada una de las k rutas minimizando costos de transporte • Cuidado !!! Restricción de no superar capacidad de un camión Se deben utilizar 3 camiones cuyas rutas son: R1 = {0,1,2,3,4,5,0} R2 = {0,8,9,10,0} R3 = {0,6,7,0}

  7. II) Teoría II) Teoría

  8. Teoría • Basado en la Teoría de la Evolución • Capacidades adquiridas de generación en generación se acumulan • Grandes variaciones evolutivas mediante la descendencia de los más aptos • Mutación existe pero causa pequeños cambios evolutivos

  9. Teoría (2)

  10. Generar Población (Aleatoria) [Población P] Esquema General de un AG Not (Condición de Finalización) • Selección • Utilizan F.Fitness Cruzamiento (estocástico) Evolucionar Mutación (estocástico) [Población MP] Reemplazar [Población P]

  11. Conceptos Intra-Individuo • Genotipo (Estructura interna manipulable por el AG ) Gen • Fenotipo (Depende del entorno) • Alfabeto {1,2,3,4,5,6,A} 3 1 6 A 2 5 A 4 A Se deben utilizar 3 camiones cuyas rutas son R1 = {0,3,1,6,0} R2 = {0,2,5,0} R3 = {0,4,0}

  12. Resumiendo • Mantienen una población de soluciones potenciales • Utilizan función de Fitness • Utiliza fenotipo de cada individuo • Operadores Genéticos • Selección • Utiliza F. Fitness • Cruzamiento • Utiliza Genotipo • Mutación • Utiliza Genotipo

  13. Resumiendo(2) Biológico Matemático Matemático Prob. Rutas Entorno Problema {Individuos} {I1, I2, I3, ...Im} {Soluciones} {S1,S2, S3, ...Sm} {Soluciones} {s1,s2,s3,...sm} Codifi- cación 3 Camiones: 03160 0250 040 Genotipo Fenotipo Decodi- ficación 316A25A4A 6 Parte Codificación Gen

  14. III) Resolviendo un Problema III) Resolviendo un problema

  15. III) Resolviendo un Problema • A) Determinar Genotipo de la representación • B) Determinar el Fenotipo de la representación • Se expresa a partir del genotipo, decodificación • C) Determinar Factibilidad de las soluciones • D) Determinar Operadores Genéticos y Políticas de reemplazo • Selección, Cruzamiento y Mutación; y probabilidades • E) Determinar Función de Fitness

  16. A) Determinar Genotipo de la Representación • Factores a determinar • Largo genotípico (variable, constante) • Alfabeto • Nodo 0  Depósito Central • Alfabeto = {1,….n,A} • Genotipo largo constante • Largo = n + #Caracter espaciadores • #Caracter espaciadores = n/2 , como mucho quiero utilizar (n/2) + 1 camiones • Ejemplo de genotipo (n = 6  #A = 3) • 1 5 4 A 2 A A 6 3

  17. B) Determinar el Fenotipo de la representación • Decodifica el genotipo • Dado el genotipo anterior • 1 5 4 A 2 A A 6 3 • El fenotipo que se expresa es: • Se deben utilizar 3 camiones cuyas rutas son: • R1 = { 0, 1, 5, 4, 0 } • R2 = { 0, 2, 0 } • R3 = { 0, 6, 3, 0 }

  18. C) Determinar Factibilidad de las soluciones • Factores a determianar • Penalizar, eliminar, etc • Se buscara corregir soluciones no factibles • Cuando no se puedan corregir se penalizan • Fitness = 0 • Soluciones no facibles • Ind = Ri,R2,…Rh,…..Rk • Si la Capacidad Rh > m  Rha = { r1,…ri}  Rhb = {ri+1,…..rp}  Ind = R1,R2,…Rha,Rhb,…Rk

  19. D) Det. Op. Genéticos y Políticas de reemplazo • Selección • Selección Proporcional al Fitness (Roulette Wheel) • Cruzamiento (PMX) se verifica factibilidad de H1 y H2

  20. D) Det. Op. Genéticos y Políticas de reemplazo(2) • Mutación (SM) se verifica factibilidad del individuo • Política de Reemplazo • Toda la población es reemplazada

  21. E) Determinar Función de Fitness • Tener en cuenta que: • Puede ser distinta de la función objetivo, ya que maximiza • >= 0 • A k cantidad de rutas pi cantidad de clientes de la ruta i • Fitness(x) = Cte – h(x) • Cte / Fitness(x) >= 0

  22. IV) Implementando en GX IV) Implementando en Gx

  23. Definir SDTs

  24. Realizar Procedimientos

  25. Resultados Obtenidos • Datos del Poblema • Cantidad de Clientes: 20 • Capacidad de cada camión: 20 • Datos del AG • Tamaño de la Población: 500 individuos • Cantidad de generaciones: 100 • Probabilidad de cruzamiento: 0.7 • Probabilidad de mutación: 0.001 • Alfabeto = {1,….20,A} • Largo cromosómico = 20 + (20/2) = 30

  26. Resultados Obtenidos (2)

  27. Resultados Obtenidos (3)

  28. Resultados Obtenidos (4)

More Related