21
Introducci´ on Algoritmo Gen´ etico Propuesto Resultados y Discusi´on Conclusiones Un efectivo algoritmo gen´ etico para el problema del ´ arbol de cobertura m´ ınima generalizado Carlos Contreras Bolton 1 , Carlos Rey 1 , Gustavo Gatica 2 , ıctor Parada 1 1 Departamento de Ingenier´ ıa Inform´ atica, Universidad de Santiago de Chile 2 Escuela de Inform´ atica, Universidad Andr´ es Bello 30 de Octubre de 2013 C. Contreras Bolton et al. — Un efectivo algoritmo gen´ etico para el problema del ´ arbol de cobertura m´ ınima generalizado 1/21

Arbol de cobertura generalizado con geneticos

Embed Size (px)

DESCRIPTION

Arbol de cobertura generalizado con geneticos

Citation preview

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Un efectivo algoritmo genetico para el

    problema del arbol de cobertura mnima

    generalizado

    Carlos Contreras Bolton1, Carlos Rey1, Gustavo Gatica2,Vctor Parada1

    1 Departamento de Ingeniera Informatica, Universidad de Santiago de Chile2 Escuela de Informatica, Universidad Andres Bello

    30 de Octubre de 2013

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 1/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Tabla de contenidos

    1 Introduccion

    2 Algoritmo Genetico Propuesto

    3 Resultados y Discusion

    4 Conclusiones

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 2/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    IntroduccionDescripcion del problema

    El problema del arbol de cobertura mnima generalizado(GMSTP), consiste en un grafo no dirigido cuyos nodosson divididos en un numero de clusters, se buscadeterminar un arbol de cobertura de costo mnimo queincluya solo un vertice de cada clusters.

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 3/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    IntroduccionDefinicion formal

    Sea un grafo no dirigido G = (V ,E ) de n vertices y cuyosvertices estan particionados en m grupos {V1, ...,Vm}, otambien llamados clusters. Ademas, considere queV = V1 V2 ... Vm, tal que Vl Vk = , l , k {1, ...,m} con l 6= k . Considerese ademas, que lasaristas de este grafo G estan definidas solamente entre losvertices de grupos distintos y cada arista e, tienen uncosto asociado ce .

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 4/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    IntroduccionAplicaciones del GMSTP

    EL GMSTP tiene variadas aplicaciones como el riegoagrcola (Dror et al., 2000).

    Aplicaciones en la fsica (Kansal & Torquato, 2001).

    En informatica y biologa celular (Magnanti & Wolsey,1995).

    Determinacion de la ubicacion de los centros regionalesde servicios tales como: instalaciones publicas, sucursales,centros de distribucion, y en los enlaces detelecomunicaciones (Myung et al., 1995), entre otras.

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 5/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    IntroduccionEstado del arte

    El GMSTP pertenece a la clase NP-Hard (Myung et al.,1995),

    Ha sido tratado con una diversidad de metodos: exactos,heursticos y metaheursticos (Ferreira et al., 2012).

    Los metodos exactos, consideran distintas formulacionesen programacion entera (Pop, 2009).

    Sin embargo algunos encuentran buenas cotas inferiorespero en un tiempo muy prolongado (Ferreira et al., 2012).

    Incluso en algunos casos, no son capaces de encontrarcotas para instancias grandes, debido a los altos recursosrequeridos de memoria (Oncan et al., 2008).

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 6/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    IntroduccionEstado del arte

    Las primeras heursticas propuestas para el GMSTP son de Dror etal. (2000). Ademas, proponen un Algoritmo Genetico (AG) canonicode Goldberg (1989) con representacion binaria y operadorestradicionales que muestra ser mejor que las heursticas planteadas.

    Golden et al. (2005) proponen dos nuevos algoritmos: un algoritmode busqueda local, y un AG con representacion entera, el cualcombina busqueda local a nivel de operador de mutacion yheursticas en el cruzamiento.

    Oncan et al.(2008) proponen un algoritmo de busqueda tabu, quelogra resultados que son mejores o iguales a las de Golden etal.(2005).

    Ferreira et al. (2012) propone un GRASP que mezcla cincoheursticas, una busqueda local y la tecnica de path-relinking.

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 7/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    IntroduccionPropuesta

    En este artculo, se propone un AG paralelo con elenfoque genotipo-fenotipo (Rothlauf, 2006).

    Este trabaja con diferentes operadores geneticos:

    Dos operadores de cruzamiento.Cinco operadores de mutacion, de los cuales tres sonoperadores especiales de busqueda local.

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 8/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Algoritmo Genetico PropuestoProceso Evolutivo

    Algorithm 1 Algoritmo Genetico1: Generacion Inicial () . En paralelo2: for t 0 to numero de individuos do . En paralelo3: Evaluacion de individuo t4: end for5: Generacion 16: while Generacion numero maximo de generaciones do7: for t 0 to numero de individuos do . En paralelo8: Seleccion ()9: Cruzamiento (PX o OX)

    10: Mutacion (DM o M1 o BL1 o BL2 o BL3)11: end for12: for t 0 to numero de individuos do . En paralelo13: Evaluacion de individuo t14: end for15: Elitismo()16: if el mejor individuo es optimo then17: return Mejor Individuo18: end if19: Generar nueva poblacion ()20: Generacion Generacion + 121: end while

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 9/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Algoritmo Genetico PropuestoRepresentacion

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 10/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Algoritmo Genetico PropuestoPoblacion Inicial

    Se utilizan dos metodos: Uno genera individuosaleatoriamente y el otro mediante una heurstica, la cualfunciona como se detalla a continuacion:

    Paso 1: Conectar el primer vertice de forma aleatoria.Paso 2: Conectar a la solucion parcial, el vertice de menor arista

    de conexion.Paso 3: Conectar a la solucion parcial, el vertice con menor

    arista, que corresponda al cluster con el mayor numerode vertice que no este conectado.

    Paso 4: Repetir pasos 2 y 3 hasta que no existan clusters sinconectar a la solucion.

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 11/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Algoritmo Genetico PropuestoCruzamiento

    El AG utiliza dos operadores de cruzamiento:

    Order Crossover (OX) (Davis, 1985).El de dos puntos (PX) (Eiben & Smith, 2003).

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 12/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Algoritmo Genetico PropuestoMutacion

    Son aplicados cinco operadores diferentes de mutacion,todos con la misma probabilidad de ocurrencia. Dosoperadores convencionales:

    Exchange mutation (EM) (Banzhaf, 1990).Operador ad-hoc (M1), el cual selecciona un clusteraleatoriamente y cambia al vertice por otro factible demanera aleatoria, la operacion se realiza al 20 % de losclusters de un cromosoma.Los tres operadores restantes, son busquedas localesaplicadas en un cromosoma como un tipo de operadorde mutacion. Estos operadores seleccionan un ordenaleatorio u ordenado de visitas a los clusters.

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 13/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Algoritmo Genetico PropuestoMutacion: Busquedas locales

    Algorithm 2 Busqueda Local BL1, BL2, BL3Require: Orden[1, . . . ,m], C [1, . . . ,m]: Cromosoma1: rand Generar un numero aleatorio entre 0 y 92: if rand% 3 6= 0 then3: Aleatorizar Orden4: end if5: mejor evaluacion (C)6: for s 0 to m do7: f Orden[s]8: for p 0 to numero de vertices del cluster f do9: if C[f ] 6= p and actual evaluacion (C[f ] p then

    10: if es BL1 then11: mejor actual . Sigue revisando si existe un vertice mejor12: else if es BL2 then13: mejor actual14: salir del para actual. . Sigue con el cluster siguiente15: else . es BL216: terminar algoritmo17: end if18: else19: volver C[f ] a su valor original20: end if21: end for22: end for

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 14/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Algoritmo Genetico PropuestoParametros geneticos

    Tamano de poblacion: 100.

    Numero maximo de generaciones: 100.

    Probabilidad de cruzamiento: 0,9.

    Probabilidad de mutacion: 0,2.

    Para el experimento, se utilizaron parametros basados enestudios de Grefenstette (1986).

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 15/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Resultados y DiscusionCaractersticas del experimento

    Se implemento en C++ y Boost Graph Library (Siek etal., 2001).

    Se ejecuto en un cluster de computadores conprocesadores Intel(R) Xeon(R) CPU E5620 de 2.40GHzcon 8 nucleos y 47 Gb. de memoria RAM. En el sistemaoperativo de GNU/Linux con la distribucion CentOS 6.2.

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 16/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Resultados y DiscusionInstancias

    Se testeo en un conjunto de 169 instancias de tamanosentre 48 y 226 vertices (Feremans et al., 2004; Fischettiet al., 1995), de las cuales 150 tienen un valor optimoconocido y para 19 se conocen solo las cotas inferiores.

    Ademas, con otro grupo de 21 instancias llamado clustercentering que tienen tamano entre 262 y 783 verticesgenerados por Oncan et al.(2008), solo se conocen cotasinferiores para estas instancias (Ferreira et al., 2012).

    Se ejecuto nuestro AG 10 veces con cada una de las 270instancias.

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 17/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Resultados y DiscusionResultados con las 169 instancias faciles

    Algoritmo Mejor Mejor Error Tiempo NumeroCosto Promedio ( %) Promedio (seg) de optimos

    AG 14679,0237 0,00030 0,7360 167AGG 14679,7396 0,00399 40,1953 165LS 14681,1775 0,02169 22,8107 129TS 14679,2633 0,00031 - 167GRASP 14679,0722 0,00000 0,3300 169

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 18/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Resultados y DiscusionResultados en cluster centering

    Instancias n m k LBAG TS GRASP EA

    Costo Gap Costo Gap Costo Gap Costo Gap107ali535 535 137733 107 114289 114337 0,012 114303 0,012 114303 0,012 114303 0,012107att532 532 139216 107 12001 12001 0,000 12001 0,000 12001 0,000 12001 0,00099d493 493 118406 99 16493 16493 0,000 16493 0,000 16493 0,000 16493 0,000132d657 657 213650 132 19427 19427 0,000 19427 0,000 19427 0,000 19427 0,00084fl417 417 84841 84 7935 7935 0,000 7935 0,000 7935 0,000 7935 0,00053gil262 262 33521 53 887 887 0,000 887 0,000 887 0,000 887 0,00087gr431 431 88666 87 86885 86885 0,000 86885 0,000 86885 0,000 86885 0,000134gr666 666 216964 134 144737 144737 0,000 144756 0,013 144773 0,025 144737 0,00064lin318 318 49363 64 18471 18471 0,000 18471 0,000 18471 0,000 18471 0,000131p654 654 210044 131 22207 22207 0,000 22208 0,005 22207 0,000 22207 0,000113pa561 561 155544 113 861 864 0,348 864 0,348 864 0,348 865 0,46589pcb442 442 96360 89 19571 19571 0,000 19571 0,000 19571 0,000 19571 0,00053pr264 264 34028 53 21872 21872 0,000 21872 0,000 21872 0,000 21872 0,00060pr299 299 43786 60 20290 20290 0,000 20290 0,000 20290 0,000 20290 0,00088pr439 439 94585 88 51749 51749 0,000 51760 0,021 51749 0,000 51749 0,000115rat575 575 163695 115 2168 2170 0,069 2170 0,069 2170 0,069 2170 0,092157rat783 783 304384 157 3009 3014 0,166 3017 0,266 3012 0,100 3015 0,19980rd400 400 78754 80 5868 5868 0,000 5868 0,000 5868 0,000 5868 0,000107si535 535 140799 107 12791 12791 0,000 12791 0,000 12791 0,000 12791 0,000115u574 574 163035 115 15027 15032 0,033 15037 0,067 15032 0,033 15034 0,047145u724 724 259764 145 15904 15913 0,057 15905 0,006 15904 0,000 15904 0,000Promedio 29167,476 0,033 29167,190 0,038 29166,905 0,028 29165,476 0,039

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 19/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Resultados y DiscusionResultados en cluster centering

    EA obtiene 16 optimos versus los 15 que obtienen el AG yGRASP.

    Cabe destacar que en la instancia 134gr666 tanto el AG yel EA bajan la mejor solucion conocida que tena elGRASP.

    En cuanto al tiempo computacional el AG toma untiempo de 300,255 segundos, mientras EA 319,524segundos, TS 617,952 segundos y GRASP no reporta eltiempo para cada una de las instancias.

    No se compara nuestro AG con el AGG, debido a que esteultimo tiene mal desempeno con este grupo de instancias.

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 20/21

  • Introduccion Algoritmo Genetico Propuesto Resultados y Discusion Conclusiones

    Conclusiones

    EL AG es competitivo en terminos de la calidad desolucion y tambien en tiempo computacional, respecto alos mejores algoritmos existentes en la literatura.

    Como trabajo futuro se considera mejorar los operadoresde mutacion de busqueda local y probar nuevascombinacion de parametros geneticos.

    Usar un preprocesamiento de las instancias mediante sureduccion.

    C. Contreras Bolton et al. Un efectivo algoritmo genetico para el problema del arbol de cobertura mnima generalizado 21/21

    IntroduccinAlgoritmo Gentico PropuestoResultados y DiscusinConclusiones