SlideShare una empresa de Scribd logo
1 de 8
Práctica 1 de Algoritmos Heurísticos y de Búsquedas

                                    Eduardo Moreno Díaz
                      Alumno Ingeniería Informática Universidad de Huelva
                                   eduardo.diaz@alu.uhu.es


                    Resumen                            búsqueda local, greedy más búsqueda local
                                                       extendida.
         Este documento presenta los resultados
obtenidos por cuatro algoritmos basados en             2. Descripción del problema
trayectorias para la resolución del problema
conocido como “p-hub”. Se realizará un estudio                  O’Kelly [2], describe el problema
con tres casos del problema y las distintas técnicas   considerando los siguientes valores:
implementadas. Al final, se expondrán los                   Wij= número de unidades de tráfico que se
resultados obtenidos que serán analizados para         envían desde el punto i al j.
obtener unas conclusiones sobre éstos métodos de            Cij= coste unitario por unidad de tráfico
búsqueda.                                              enviada sobre el arco (i,j).
                                                       Las variables de decisión vienen definidas por:
PALABRAS CLAVES: Optimización, búsqueda
heurística, búsqueda basada trayectoria, problema                       1, si el punto i es asignado al hub
p-hub                                                  j
                                                               Xij =
                                                                        0, en otro caso
1. Introducción
                                                                        1, si el punto j es hub
         El problema del “p-hub” [1], también                  Yij =
conocido como problema de nodos conectores y                            0, en otro caso
concentradores, modela la situación cuando n nodos
pueden interactuar solamente a través de un            La fórmula matemática corresponde a:
conjunto de p hubs completamente conectados;
estos dos conjuntos, hubs y nodos, y sus respectivos
arcos de unión, conforman un grafo totalmente
interconectado. Usando la cantidad de flujo y el
coste por unidad de flujo entre dos nodos en una
red, se debe decidir sobre la localización de hubs y   , donde β, γ, α representan los costes de recogida,
sobre la asignación de cada nodo que no es hub a       distribución y entrega en este orden, y está sujeta a
aquéllos que lo son. Además, también se usan una       las siguientes restricciones:
serie de costes adicionales que influyen en la
evaluación de la solución final. Estos costes son el
de recogida, distribución y entrega. En esta
memoria, se van a estudiar los problemas CAB
(25,4), AP(40,3) y AP(50,5)

        Con el objetivo de resolver los casos
indicados, se van a implementar cuatro métodos de
búsqueda basados en trayectorias diferentes:
búsqueda multiarranque básica, grasp, grasp
extendido e ils. También se usarán otros algoritmos    3. Diseño / Implementación
de comparación como son el greedy, greedy más
Representación de la solución                          localizada, por lo que se ha tomado una función de
                                                       evaluación que es la siguiente:
         La representación que se hará de una
solución es la siguiente:




                                                                Cabría esperar que la misma función en la
         Dicha solución integra a las matrices X e Y   que se sustenta el p-hub fuera la función de
de modo que un hub es identificado porque en la        evaluación con la que se han logrado los resultados
posición que le corresponde aparece su mismo           óptimos para los citados casos de estudio, pero no
identificador. Un nodo normal presenta en la           ha sido así.
posición de su representación al hub que tiene
asignado.

Operadores de vecindad                                 3.1. Búsqueda Multiarranque Básica
        Para el problema del p-hub se presentan                 El algoritmo de Búsqueda Multiarranque
dos operadores de vecindad:                            Básica (BMB en adelante) empleado consiste en
                                                       generar un conjunto de soluciones iniciales
        1) Cambio de conexión del nodo (L): se         aleatorias y optimizar cada una de ellas con una
           cambia el hub al que esta conectado un      búsqueda local [3]. Al final, el algoritmo da como
           nodo                                        resultado la mejor solución encontrada durante todo
        2) Intercambio de hub (R): se elige a un       el proceso.
           nodo aleatoriamente y se convierte en
           hub. Del mismo modo, se elige un hub                 Este proceso se realizó con 50 soluciones
           de entre los que existan en la solución     aleatorias y con búsqueda local de 1600*nodos
           y se convierte en nodo. Al resto de         iteraciones, 100 iteraciones de no mejoría para
           nodos que conectaban con este nodo,         acelerar la búsqueda local y 5, 10, 15 y 20 vecinos
           se direccional ahora al nuevo hub.          de exploración.

Operadores de mutación                                 3.2. GRASP
         Algunos de los algoritmos presentados                   El algoritmo de Búsqueda Aleatoria
necesitan de una operación especial de mutación        Adaptativa Greedy (GRASP) se basa en construir
que les permita explorar el espacio de búsqueda.       soluciones greedy de manera probabilística y
Esta operación se basa en aplicar el operador de       aplicarles una búsqueda local como en la BMB
vecindad en sus dos variantes de forma reiterativa     para optimizarlas. La obtención de las soluciones
durante cierto número de veces, obteniéndose           iniciales greedy, selecciona a los nodos con mayor
soluciones que pueden ser explotadas por una           potencial de flujo como hubs y asigna el resto como
búsqueda local.                                        nodos a los hubs con menor costo.
         Dicha operación ha sido estudiada a fondo              El carácter probabilístico se aplica a la
en las diferentes implementaciones y para los todos    elección de los hubs. Éstos se almacenan en una
los casos de estudio. En el anexo I pueden verse los   lista de mayor a menor potencial de flujo. Se eligen
resultados obtenidos.                                  los l mejores hubs (siendo l >= p). A continuación,
                                                       se seleccionarán los p hubs que conforman parte de
                                                       la solución del problema.
Función objetivo
                                                                Posteriormente a este proceso, el resto de
        Se hace necesario resaltar en este punto       nodos no conectores se asocia, mediante un
que la función con la que han sido evaluados los       procedimiento similar al expuesto, a los hubs. Se
casos de estudio que se van a estudiar no ha sido      añaden a una lista ordenados por menor coste y se
                                                       eligen r nodos (siendo r <= p). Por último, se eligen
al azar un nodo de dicha sublista para realizar la               El algoritmo ha aplicado 50 búsquedas
asignación. Este procedimiento se aplica a todos los    locales, una a la solución aleatoria y 49 a las
nodos no conectores hasta completar una solución        soluciones mutadas, con 1600*nodos iteraciones,
para el problema.                                       200 iteraciones de no mejoría y 5, 10, 15 y 20
                                                        vecinos en la exploración. Del mismo modo que el
         Del mismo modo que para BMB, se han            GRASP Extendido, se han aplicado todas las
creado 50 soluciones iniciales sobre los que la         posibles combinaciones para el operador de
búsqueda local        ha realizado     1600*nodos       mutación.
iteraciones, 200 iteraciones de no mejoría y 5, 10,
15 y 20 vecinos de exploración.                         3.5. Greedy
                                                                Tanto este como los dos siguiente
3.3. GRASP Extendido                                    algoritmos, se utilizan en este estudio para
                                                        compararlos con los procedimiento ya descritos en
         Este algoritmo es exactamente igual que el     los puntos anteriores. Son algoritmos deterministas
presentado en el apartado anterior, excepto por la      a las que se les ha aplicado técnicas como la
incorporación del operador de mutación. Dicho           búsqueda local y la mutación. El objetivo es
operador se aplica tras la obtención de la solución     comprobar si merece la pena la utilización de los
greedy probabilística. De esta manera, la búsqueda      métodos anteriores para la obtención de resultados.
local que se realiza posteriormente recibe una
solución mutada para que sea explorada.                          El algoritmo Greedy (GR) implementado
                                                        se basa en la heurística de seleccionar como hubs a
         La mejoría que pretende aportar este           los nodos con el flujo de unidades más alto y
algoritmo es la de crear soluciones rápidamente de      asignarlos a los nodos cuyo coste sea menor.
manera casi determinista pero otorgándoles cierto
punto de aleatoriedad que la propia generación no
puede y que resulta muy interesante de poder
                                                              Procedure GR
explorar.
                                                               S0 = vacio
          Para la obtención de los resultados de este          lista = CalcularFlujoNodos()
algoritmo, se ha partido de 10 soluciones iniciales a          ordenarMayorAMenor(lista)
las que se les ha aplicado 5 veces el procedimiento            hubs = coger los “p” primeros
de mutación y búsqueda local. Para la mutación se              S0 = MarcarComoHubs(hubs)
han utilizado todas las combinaciones posibles entre
intercambio de hub como cambio de conexión. En                  Para c=1 Hasta nunNodos Hacer
el axexo I se muestran todos los valores utilizados.              S0[c] = nodoMenorCosteA(hubs)
Para la búsqueda local se han utilizado los mismos              Fin
parámetros que en el GRASP.                                   Devolver S0
3.4. ILS                                                      Fin

          El algoritmo de Búsqueda Iterativa Local
(ILS) pretende dar pequeños saltos en el espacio de     3.6. Greedy + BL
búsqueda de manera muy similar a como actúa la
mutación en los algoritmos genéticos [4]. Para el                El algoritmo Greedy más Búsqueda Local
caso que nos requiere, se parte de una solución         consiste en ejecutar el algoritmo expuesto en el
aleatoria a la que se le aplica una búsqueda local.     punto anterior y una búsqueda local para encontrar
Una vez obtenida la solución optimiza, aplicamos        una solución optimizada.
una mutación sobre la mejor de entre la inicial o la
optimizada. A continuación, se aplica de nuevo una               Obviamente, si lo que se busca es una
búsqueda local y el proceso se repite siguiendo el      medida de comparación, los parámetros utilizados
criterio del mejor como condición de aceptación de      para la búsqueda local deben de ser los mismos que
soluciones.                                             en los casos anteriores: 1600*nodos iteraciones, 200
                                                        iteraciones de no mejoría con 5, 10 15 y 20 vecinos
                                                        en la exploración.
3.7. Greedy + BL Extendida                            4. Experimentación
        El algoritmo Greedy más Búsqueda Local                 Se ha realizado una batería de pruebas
Extendida no es más que el algoritmo GRASP            sobre los casos de estudio CAB-25-4, AP-40-3 y
Extendido expuesto anteriormente pero partiendo en    AP-50-5 con un PC de sobremesa con procesador
este caso de una solución greedy determinista,        Intel Pentium Dual Core a 2.33GHz, 2GB de
proporcionada por el algoritmo GR.                    memoria RAM, sistema operativo Windows XP SP2
                                                      con Java JDK 1.6. Los parámetros para la búsqueda
        Como se puede apreciar, estos dos últimos     local y la mutación que han aportado las mejores
algoritmos son exactamente iguales al algoritmo       soluciones son por caso de estudio y algoritmo los
GRASP y GRASP Extendido, salvo por la                 siguientes:
generación de la solución inicial que se utiliza en
cada procedimiento.                                   CAB-25-4:
                                                             - BMB: 10 Vecinos
                                                             - Greedy + BL: 10Vecinos
                                                             - Greedy + Bl Ext: 10Vecinos, L = 4, R
                                                                =4
                                                             - Grasp: 10Vecinos, L = 8, R = 4
                                                             - Grasp ext: 10Vecinos, L = 10, R = 9
                                                             - Ils: 5 Vecinos, L = 8, R = 4

                                                      AP-40-3:
                                                              -     BMB: 5 Vecinos
                                                              -     Greedy + BL: 5 Vecinos
                                                              -     Greedy + Bl Ext: 5Vecinos, L = 4, R =
                                                                    4
                                                               -    Grasp: 20Vecinos, L = 10, R = 4
                                                               -    Grasp ext: 20Vecinos, L = 7, R = 8
                                                               -    Ils: 20 Vecinos, L = 6, R = 4

                                                      AP-50-5:
                                                              -     BMB: 15 Vecinos
                                                              -     Greedy + BL: 20 Vecinos
                                                              -     Greedy + Bl Ext: 5Vecinos, L = 5, R =
                                                                    5
                                                               -    Grasp: 10 Vecinos, L = 5, R = 5

                                                               -    Grasp ext: 5 Vecinos, L = 6, R = 5
                                                               -    Ils: 10 Vecinos, L = 7, R = 6

                                                                            CAB-25-4        AP-40-4   AP-50-5
                                                      Método                  Coste         Coste     Coste
                                                      Óptimo                          939    158830    132366
                                                      Greedy                       7329      194494    136348
                                                      Búsqueda Local               8223      195185    199201
                                                      BMB                          4870      144075    127637
                                                      Greedy + BL                  5983      174463    133369
                                                      Greedy + BL Ext              4960      154868    128446
                                                      Grasp                        6458      177018    179479
                                                      Grasp Ext                    4571      147376    147089
                                                      Ils                          7636      181601    178831

                                                                    Tabla 1. Resultados Globales
Lo primero que se observa en la gráfica 1
                                                                                es que el óptimo ha sido alcanzado en varias
          210000
                                                        Óptimo
                                                                                ocasiones. Esto no es debido a que se haya
          180000
                                                        Greedy
                                                                                encontrado una solución mejor, sino que como ya se
          150000                                        Búsqueda Local          ha comentado al principio del documento, la
          120000                                        BMB                     función de evaluación con la que se ha obtenido ese
                                                                                óptimo no es la misma que se ha usado en este
 Coste




                                                        Greedy + BL
           90000                                        Greedy + BL Ext         estudio.
           60000                                        Grasp

           30000
                                                        Grasp Ext                        También se aprecia que algoritmo BMB es
                                                        Ils                     el que presenta los mejores resultados para todos los
                  0
                                                                                casos de estudio. Cabe destacar que sólo se ha
                      CAB-25-4   AP-40-4      AP-50-5
                                                                                utilizado una semilla para la obtención de resultado.
                      Gráfica 1. Resultados Globales
                                                                                         Como puede observarse en la gráfica 1 , los
                                                                                algoritmos GRASP no están teniendo resultados de
           9000                                                                 calidad. No mejoran a sus versiones simplificadas
           8000                                               Greedy            Greedy. La causa podría deberse a que la
           7000                                               Búsqueda Local
           6000                                               BM B
                                                                                generación de la solución greedy probabilística no
                                                                                es adecuada. Se tendría que estudiar con mayor
  Coste




           5000                                               Greedy + BL
           4000                                               Greedy + BL Ext   detenimiento este matiz.
           3000                                               Grasp
           2000                                               Grasp Ext
           1000                                               ILS                         En las graficas 5, 6 y 7, se muestra que la
              0                                                                 búsqueda local tiende a oscilar cuando se modifican
                                  CAB-25-4
                                                                                el número de vecinos del entorno sobre los que se
                                                                                realiza la búsqueda, con lo que para obtener buenos
            Gráfica 2. Resultados Cab-25-4 en detalle
                                                                                resultados es muy importante determinar este cuál
                                                                                va a ser su valor. También es importante elegir un
           250000
                                                                                buen factor de mutación, ya que de él depende el
                                                              Greedy            número de vecinos que habría que utilizar en la
           200000                                             Búsqueda Local    búsqueda.
                                                              BM B
           150000
  Coste




                                                              Greedy + BL
                                                              Greedy + BL Ext           Cabe destacar que, a medida que crece el
           100000
                                                              Grasp             tamaño de nodos del problema, la mutación debe
                                                              Grasp Ext
            50000
                                                              ILS
                                                                                ser pequeña, ya que si no es así, la proporción
                  0
                                                                                exploración/explotación queda a favor de la
                                   AP-40-4                                      exploración y nunca termina de explotar las
                                                                                soluciones que, a priori, presentan buena calidad.
             Gráfica 3. Resultados Ap-40-3 en detalle
                                                                                         Por último, resaltar que en los algoritmos
           250000
                                                                                Greedy + Bl Extendida y Grasp aplicar la variante
                                                              Greedy
                                                                                de mutación de intercambio de hub no tiene
           200000
                                                              Búsqueda Local    influencia sobre el resultado de las soluciones que
           150000
                                                              BM B              se obtienen, como se aprecia en los gráficos 5, 6 y
  Coste




                                                              Greedy + BL
                                                              Greedy + BL Ext
                                                                                7.
           100000
                                                              Grasp

            50000                                             Grasp Ext
                                                              ILS

                  0                                                             6. Conclusiones
                                    AP-50-5



             Gráfica 4. Resultados Ap-50-5 en detalle                                    El algoritmo BMB ha sido el que mejores
                                                                                resultados ha proporcionado en los casos
                                                                                estudiados.
5. Análisis de resultados
                                                                                        Las versiones greedy implementadas han
                                                                                presentado resultados de mejor calidad que sus
técnicas más sofisticadas Grasp y sus diferentes             intercambio modal y plataformas logísticas”, Julio
evoluciones.                                                 2008
                                                         [2] M.E. O'Kelly (1987). “A cuadratic integer program
         Se muestra que la elección del número de        for
                                                             the location of interacting hub facilities”. European
vecinos empleados en las búsquedas locales es de
                                                             Journal of Operational Research., 32(3):393-404.
vital importancia para la consecución de buenos          [3] E. M. Díaz (2011). Práctica 1 Algoritmos Heurísticos
resultados.                                                  y de Búsquedas
                                                         [4] E. M. Díaz (2011) Practica 2 Algoritmos Evolutivos y
                                                             Bioinspirados
7. Referencias
[1] David Agra Martínez, “Localización de centros de




Anexo I

Comparativa de resultados globales

En este anexo se recogen todas las gráficas que se han generado durante el proceso de pruebas en las que se
han estudiado en profundidad cómo afectan el número de vecinos y las dos opciones que proporciona el
operador de mutación en el resultado final del algoritmo.

CAB-25-4
Gráfica 5. Resultado estudio para problema CAB-25-4




Gráfica 6. Resultado estudio para problema AP-40-3
Gráfica 7. Resultado estudio para problema AP-50-5


Los datos que aparecen en el eje horizontal corresponden el número de vecinos para el caso de los algoritmos
BMB y Greedy + BL y al factor de mutación en el resto. Este factor corresponde al número de asignaciones
de intercambio de conectores como parte izquierda y al número de cambios de hubs en la parte derecha. Asi el
valor 4-5 representa a 4 cambios de asignación y 5 cambios de hubs.

Más contenido relacionado

La actualidad más candente (8)

Practica 5 simulink-5156
Practica 5 simulink-5156Practica 5 simulink-5156
Practica 5 simulink-5156
 
Floyd
FloydFloyd
Floyd
 
Utp ia_2014-2_s10_redes de funciones de base radial
 Utp ia_2014-2_s10_redes de funciones de base radial Utp ia_2014-2_s10_redes de funciones de base radial
Utp ia_2014-2_s10_redes de funciones de base radial
 
Eda1
Eda1Eda1
Eda1
 
Recursividad
RecursividadRecursividad
Recursividad
 
Algoritmos recursivos
Algoritmos recursivosAlgoritmos recursivos
Algoritmos recursivos
 
Maeb2015 presentation
Maeb2015 presentationMaeb2015 presentation
Maeb2015 presentation
 
Recursividad
RecursividadRecursividad
Recursividad
 

Destacado

Búsqueda no informada - Backtracking/Hacia atrás
Búsqueda no informada - Backtracking/Hacia atrásBúsqueda no informada - Backtracking/Hacia atrás
Búsqueda no informada - Backtracking/Hacia atrásLaura Del Pino Díaz
 
Optimización con algoritmos heurísticos en paralelo
Optimización con algoritmos heurísticos en paraleloOptimización con algoritmos heurísticos en paralelo
Optimización con algoritmos heurísticos en paraleloMarco Antonio Castro Liera
 
Sandoya fernando métodos exactos y heurísticos para el vrp jornadas
Sandoya fernando métodos exactos y heurísticos para el vrp jornadasSandoya fernando métodos exactos y heurísticos para el vrp jornadas
Sandoya fernando métodos exactos y heurísticos para el vrp jornadasolimpica
 
Metodo heurístico (1)
Metodo heurístico (1)Metodo heurístico (1)
Metodo heurístico (1)Javier Juarez
 

Destacado (7)

Tercera practica
Tercera practicaTercera practica
Tercera practica
 
Geneticos
GeneticosGeneticos
Geneticos
 
Búsqueda no informada - Backtracking/Hacia atrás
Búsqueda no informada - Backtracking/Hacia atrásBúsqueda no informada - Backtracking/Hacia atrás
Búsqueda no informada - Backtracking/Hacia atrás
 
Optimización con algoritmos heurísticos en paralelo
Optimización con algoritmos heurísticos en paraleloOptimización con algoritmos heurísticos en paralelo
Optimización con algoritmos heurísticos en paralelo
 
Sandoya fernando métodos exactos y heurísticos para el vrp jornadas
Sandoya fernando métodos exactos y heurísticos para el vrp jornadasSandoya fernando métodos exactos y heurísticos para el vrp jornadas
Sandoya fernando métodos exactos y heurísticos para el vrp jornadas
 
Metodo heuristico
Metodo heuristicoMetodo heuristico
Metodo heuristico
 
Metodo heurístico (1)
Metodo heurístico (1)Metodo heurístico (1)
Metodo heurístico (1)
 

Similar a Implementaciones PHub ABH Búsquedas No Constructivas

Implementaciones PHub ABH
Implementaciones PHub ABHImplementaciones PHub ABH
Implementaciones PHub ABHedmodi
 
El algoritmo a (asterisco)
El algoritmo a (asterisco)El algoritmo a (asterisco)
El algoritmo a (asterisco)Cristina Lopez
 
Métodos Espectrales
Métodos EspectralesMétodos Espectrales
Métodos Espectralesradioatomica
 
Algoritmo de aproximación aleatorizado para el problema de selección de k-cen...
Algoritmo de aproximación aleatorizado para el problema de selección de k-cen...Algoritmo de aproximación aleatorizado para el problema de selección de k-cen...
Algoritmo de aproximación aleatorizado para el problema de selección de k-cen...adoviov
 
Presentacion recocido simulado javier arango rosero y edwin shtid leon beltran
Presentacion recocido simulado javier arango rosero y edwin shtid leon beltranPresentacion recocido simulado javier arango rosero y edwin shtid leon beltran
Presentacion recocido simulado javier arango rosero y edwin shtid leon beltranJavier Arango
 
Inteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys BInteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys BJose Andres
 
Implementaciones ACO AEB
Implementaciones ACO AEBImplementaciones ACO AEB
Implementaciones ACO AEBedmodi
 
Solución de problemas mediante busqueda
Solución de problemas mediante busquedaSolución de problemas mediante busqueda
Solución de problemas mediante busquedasacrilegetx
 
Paper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaPaper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaFcoKraken
 

Similar a Implementaciones PHub ABH Búsquedas No Constructivas (20)

Implementaciones PHub ABH
Implementaciones PHub ABHImplementaciones PHub ABH
Implementaciones PHub ABH
 
El algoritmo a (asterisco)
El algoritmo a (asterisco)El algoritmo a (asterisco)
El algoritmo a (asterisco)
 
Optimizacion en IMRT
Optimizacion en IMRTOptimizacion en IMRT
Optimizacion en IMRT
 
Algoritmo de INGRES
Algoritmo de INGRES Algoritmo de INGRES
Algoritmo de INGRES
 
Grafos 0
Grafos 0Grafos 0
Grafos 0
 
Métodos Espectrales
Métodos EspectralesMétodos Espectrales
Métodos Espectrales
 
Algoritmo de aproximación aleatorizado para el problema de selección de k-cen...
Algoritmo de aproximación aleatorizado para el problema de selección de k-cen...Algoritmo de aproximación aleatorizado para el problema de selección de k-cen...
Algoritmo de aproximación aleatorizado para el problema de selección de k-cen...
 
Presentacion recocido simulado javier arango rosero y edwin shtid leon beltran
Presentacion recocido simulado javier arango rosero y edwin shtid leon beltranPresentacion recocido simulado javier arango rosero y edwin shtid leon beltran
Presentacion recocido simulado javier arango rosero y edwin shtid leon beltran
 
Sistemas inteligentes
Sistemas inteligentesSistemas inteligentes
Sistemas inteligentes
 
Inteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys BInteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys B
 
Normalmente.docx
Normalmente.docxNormalmente.docx
Normalmente.docx
 
Algoritmo a*
Algoritmo a*Algoritmo a*
Algoritmo a*
 
Implementaciones ACO AEB
Implementaciones ACO AEBImplementaciones ACO AEB
Implementaciones ACO AEB
 
380531571-funcion-objetivo.pptx
380531571-funcion-objetivo.pptx380531571-funcion-objetivo.pptx
380531571-funcion-objetivo.pptx
 
IA CAPITULO 4
IA  CAPITULO 4IA  CAPITULO 4
IA CAPITULO 4
 
Solución de problemas mediante busqueda
Solución de problemas mediante busquedaSolución de problemas mediante busqueda
Solución de problemas mediante busqueda
 
Algoritmo a
Algoritmo aAlgoritmo a
Algoritmo a
 
Criterios de Busqueda en I.A
Criterios de Busqueda en I.ACriterios de Busqueda en I.A
Criterios de Busqueda en I.A
 
Opt redes logistica2
Opt redes logistica2Opt redes logistica2
Opt redes logistica2
 
Paper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaPaper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra Fmancia
 

Implementaciones PHub ABH Búsquedas No Constructivas

  • 1. Práctica 1 de Algoritmos Heurísticos y de Búsquedas Eduardo Moreno Díaz Alumno Ingeniería Informática Universidad de Huelva eduardo.diaz@alu.uhu.es Resumen búsqueda local, greedy más búsqueda local extendida. Este documento presenta los resultados obtenidos por cuatro algoritmos basados en 2. Descripción del problema trayectorias para la resolución del problema conocido como “p-hub”. Se realizará un estudio O’Kelly [2], describe el problema con tres casos del problema y las distintas técnicas considerando los siguientes valores: implementadas. Al final, se expondrán los Wij= número de unidades de tráfico que se resultados obtenidos que serán analizados para envían desde el punto i al j. obtener unas conclusiones sobre éstos métodos de Cij= coste unitario por unidad de tráfico búsqueda. enviada sobre el arco (i,j). Las variables de decisión vienen definidas por: PALABRAS CLAVES: Optimización, búsqueda heurística, búsqueda basada trayectoria, problema 1, si el punto i es asignado al hub p-hub j Xij = 0, en otro caso 1. Introducción 1, si el punto j es hub El problema del “p-hub” [1], también Yij = conocido como problema de nodos conectores y 0, en otro caso concentradores, modela la situación cuando n nodos pueden interactuar solamente a través de un La fórmula matemática corresponde a: conjunto de p hubs completamente conectados; estos dos conjuntos, hubs y nodos, y sus respectivos arcos de unión, conforman un grafo totalmente interconectado. Usando la cantidad de flujo y el coste por unidad de flujo entre dos nodos en una red, se debe decidir sobre la localización de hubs y , donde β, γ, α representan los costes de recogida, sobre la asignación de cada nodo que no es hub a distribución y entrega en este orden, y está sujeta a aquéllos que lo son. Además, también se usan una las siguientes restricciones: serie de costes adicionales que influyen en la evaluación de la solución final. Estos costes son el de recogida, distribución y entrega. En esta memoria, se van a estudiar los problemas CAB (25,4), AP(40,3) y AP(50,5) Con el objetivo de resolver los casos indicados, se van a implementar cuatro métodos de búsqueda basados en trayectorias diferentes: búsqueda multiarranque básica, grasp, grasp extendido e ils. También se usarán otros algoritmos 3. Diseño / Implementación de comparación como son el greedy, greedy más
  • 2. Representación de la solución localizada, por lo que se ha tomado una función de evaluación que es la siguiente: La representación que se hará de una solución es la siguiente: Cabría esperar que la misma función en la Dicha solución integra a las matrices X e Y que se sustenta el p-hub fuera la función de de modo que un hub es identificado porque en la evaluación con la que se han logrado los resultados posición que le corresponde aparece su mismo óptimos para los citados casos de estudio, pero no identificador. Un nodo normal presenta en la ha sido así. posición de su representación al hub que tiene asignado. Operadores de vecindad 3.1. Búsqueda Multiarranque Básica Para el problema del p-hub se presentan El algoritmo de Búsqueda Multiarranque dos operadores de vecindad: Básica (BMB en adelante) empleado consiste en generar un conjunto de soluciones iniciales 1) Cambio de conexión del nodo (L): se aleatorias y optimizar cada una de ellas con una cambia el hub al que esta conectado un búsqueda local [3]. Al final, el algoritmo da como nodo resultado la mejor solución encontrada durante todo 2) Intercambio de hub (R): se elige a un el proceso. nodo aleatoriamente y se convierte en hub. Del mismo modo, se elige un hub Este proceso se realizó con 50 soluciones de entre los que existan en la solución aleatorias y con búsqueda local de 1600*nodos y se convierte en nodo. Al resto de iteraciones, 100 iteraciones de no mejoría para nodos que conectaban con este nodo, acelerar la búsqueda local y 5, 10, 15 y 20 vecinos se direccional ahora al nuevo hub. de exploración. Operadores de mutación 3.2. GRASP Algunos de los algoritmos presentados El algoritmo de Búsqueda Aleatoria necesitan de una operación especial de mutación Adaptativa Greedy (GRASP) se basa en construir que les permita explorar el espacio de búsqueda. soluciones greedy de manera probabilística y Esta operación se basa en aplicar el operador de aplicarles una búsqueda local como en la BMB vecindad en sus dos variantes de forma reiterativa para optimizarlas. La obtención de las soluciones durante cierto número de veces, obteniéndose iniciales greedy, selecciona a los nodos con mayor soluciones que pueden ser explotadas por una potencial de flujo como hubs y asigna el resto como búsqueda local. nodos a los hubs con menor costo. Dicha operación ha sido estudiada a fondo El carácter probabilístico se aplica a la en las diferentes implementaciones y para los todos elección de los hubs. Éstos se almacenan en una los casos de estudio. En el anexo I pueden verse los lista de mayor a menor potencial de flujo. Se eligen resultados obtenidos. los l mejores hubs (siendo l >= p). A continuación, se seleccionarán los p hubs que conforman parte de la solución del problema. Función objetivo Posteriormente a este proceso, el resto de Se hace necesario resaltar en este punto nodos no conectores se asocia, mediante un que la función con la que han sido evaluados los procedimiento similar al expuesto, a los hubs. Se casos de estudio que se van a estudiar no ha sido añaden a una lista ordenados por menor coste y se eligen r nodos (siendo r <= p). Por último, se eligen
  • 3. al azar un nodo de dicha sublista para realizar la El algoritmo ha aplicado 50 búsquedas asignación. Este procedimiento se aplica a todos los locales, una a la solución aleatoria y 49 a las nodos no conectores hasta completar una solución soluciones mutadas, con 1600*nodos iteraciones, para el problema. 200 iteraciones de no mejoría y 5, 10, 15 y 20 vecinos en la exploración. Del mismo modo que el Del mismo modo que para BMB, se han GRASP Extendido, se han aplicado todas las creado 50 soluciones iniciales sobre los que la posibles combinaciones para el operador de búsqueda local ha realizado 1600*nodos mutación. iteraciones, 200 iteraciones de no mejoría y 5, 10, 15 y 20 vecinos de exploración. 3.5. Greedy Tanto este como los dos siguiente 3.3. GRASP Extendido algoritmos, se utilizan en este estudio para compararlos con los procedimiento ya descritos en Este algoritmo es exactamente igual que el los puntos anteriores. Son algoritmos deterministas presentado en el apartado anterior, excepto por la a las que se les ha aplicado técnicas como la incorporación del operador de mutación. Dicho búsqueda local y la mutación. El objetivo es operador se aplica tras la obtención de la solución comprobar si merece la pena la utilización de los greedy probabilística. De esta manera, la búsqueda métodos anteriores para la obtención de resultados. local que se realiza posteriormente recibe una solución mutada para que sea explorada. El algoritmo Greedy (GR) implementado se basa en la heurística de seleccionar como hubs a La mejoría que pretende aportar este los nodos con el flujo de unidades más alto y algoritmo es la de crear soluciones rápidamente de asignarlos a los nodos cuyo coste sea menor. manera casi determinista pero otorgándoles cierto punto de aleatoriedad que la propia generación no puede y que resulta muy interesante de poder Procedure GR explorar. S0 = vacio Para la obtención de los resultados de este lista = CalcularFlujoNodos() algoritmo, se ha partido de 10 soluciones iniciales a ordenarMayorAMenor(lista) las que se les ha aplicado 5 veces el procedimiento hubs = coger los “p” primeros de mutación y búsqueda local. Para la mutación se S0 = MarcarComoHubs(hubs) han utilizado todas las combinaciones posibles entre intercambio de hub como cambio de conexión. En Para c=1 Hasta nunNodos Hacer el axexo I se muestran todos los valores utilizados. S0[c] = nodoMenorCosteA(hubs) Para la búsqueda local se han utilizado los mismos Fin parámetros que en el GRASP. Devolver S0 3.4. ILS Fin El algoritmo de Búsqueda Iterativa Local (ILS) pretende dar pequeños saltos en el espacio de 3.6. Greedy + BL búsqueda de manera muy similar a como actúa la mutación en los algoritmos genéticos [4]. Para el El algoritmo Greedy más Búsqueda Local caso que nos requiere, se parte de una solución consiste en ejecutar el algoritmo expuesto en el aleatoria a la que se le aplica una búsqueda local. punto anterior y una búsqueda local para encontrar Una vez obtenida la solución optimiza, aplicamos una solución optimizada. una mutación sobre la mejor de entre la inicial o la optimizada. A continuación, se aplica de nuevo una Obviamente, si lo que se busca es una búsqueda local y el proceso se repite siguiendo el medida de comparación, los parámetros utilizados criterio del mejor como condición de aceptación de para la búsqueda local deben de ser los mismos que soluciones. en los casos anteriores: 1600*nodos iteraciones, 200 iteraciones de no mejoría con 5, 10 15 y 20 vecinos en la exploración.
  • 4. 3.7. Greedy + BL Extendida 4. Experimentación El algoritmo Greedy más Búsqueda Local Se ha realizado una batería de pruebas Extendida no es más que el algoritmo GRASP sobre los casos de estudio CAB-25-4, AP-40-3 y Extendido expuesto anteriormente pero partiendo en AP-50-5 con un PC de sobremesa con procesador este caso de una solución greedy determinista, Intel Pentium Dual Core a 2.33GHz, 2GB de proporcionada por el algoritmo GR. memoria RAM, sistema operativo Windows XP SP2 con Java JDK 1.6. Los parámetros para la búsqueda Como se puede apreciar, estos dos últimos local y la mutación que han aportado las mejores algoritmos son exactamente iguales al algoritmo soluciones son por caso de estudio y algoritmo los GRASP y GRASP Extendido, salvo por la siguientes: generación de la solución inicial que se utiliza en cada procedimiento. CAB-25-4: - BMB: 10 Vecinos - Greedy + BL: 10Vecinos - Greedy + Bl Ext: 10Vecinos, L = 4, R =4 - Grasp: 10Vecinos, L = 8, R = 4 - Grasp ext: 10Vecinos, L = 10, R = 9 - Ils: 5 Vecinos, L = 8, R = 4 AP-40-3: - BMB: 5 Vecinos - Greedy + BL: 5 Vecinos - Greedy + Bl Ext: 5Vecinos, L = 4, R = 4 - Grasp: 20Vecinos, L = 10, R = 4 - Grasp ext: 20Vecinos, L = 7, R = 8 - Ils: 20 Vecinos, L = 6, R = 4 AP-50-5: - BMB: 15 Vecinos - Greedy + BL: 20 Vecinos - Greedy + Bl Ext: 5Vecinos, L = 5, R = 5 - Grasp: 10 Vecinos, L = 5, R = 5 - Grasp ext: 5 Vecinos, L = 6, R = 5 - Ils: 10 Vecinos, L = 7, R = 6 CAB-25-4 AP-40-4 AP-50-5 Método Coste Coste Coste Óptimo 939 158830 132366 Greedy 7329 194494 136348 Búsqueda Local 8223 195185 199201 BMB 4870 144075 127637 Greedy + BL 5983 174463 133369 Greedy + BL Ext 4960 154868 128446 Grasp 6458 177018 179479 Grasp Ext 4571 147376 147089 Ils 7636 181601 178831 Tabla 1. Resultados Globales
  • 5. Lo primero que se observa en la gráfica 1 es que el óptimo ha sido alcanzado en varias 210000 Óptimo ocasiones. Esto no es debido a que se haya 180000 Greedy encontrado una solución mejor, sino que como ya se 150000 Búsqueda Local ha comentado al principio del documento, la 120000 BMB función de evaluación con la que se ha obtenido ese óptimo no es la misma que se ha usado en este Coste Greedy + BL 90000 Greedy + BL Ext estudio. 60000 Grasp 30000 Grasp Ext También se aprecia que algoritmo BMB es Ils el que presenta los mejores resultados para todos los 0 casos de estudio. Cabe destacar que sólo se ha CAB-25-4 AP-40-4 AP-50-5 utilizado una semilla para la obtención de resultado. Gráfica 1. Resultados Globales Como puede observarse en la gráfica 1 , los algoritmos GRASP no están teniendo resultados de 9000 calidad. No mejoran a sus versiones simplificadas 8000 Greedy Greedy. La causa podría deberse a que la 7000 Búsqueda Local 6000 BM B generación de la solución greedy probabilística no es adecuada. Se tendría que estudiar con mayor Coste 5000 Greedy + BL 4000 Greedy + BL Ext detenimiento este matiz. 3000 Grasp 2000 Grasp Ext 1000 ILS En las graficas 5, 6 y 7, se muestra que la 0 búsqueda local tiende a oscilar cuando se modifican CAB-25-4 el número de vecinos del entorno sobre los que se realiza la búsqueda, con lo que para obtener buenos Gráfica 2. Resultados Cab-25-4 en detalle resultados es muy importante determinar este cuál va a ser su valor. También es importante elegir un 250000 buen factor de mutación, ya que de él depende el Greedy número de vecinos que habría que utilizar en la 200000 Búsqueda Local búsqueda. BM B 150000 Coste Greedy + BL Greedy + BL Ext Cabe destacar que, a medida que crece el 100000 Grasp tamaño de nodos del problema, la mutación debe Grasp Ext 50000 ILS ser pequeña, ya que si no es así, la proporción 0 exploración/explotación queda a favor de la AP-40-4 exploración y nunca termina de explotar las soluciones que, a priori, presentan buena calidad. Gráfica 3. Resultados Ap-40-3 en detalle Por último, resaltar que en los algoritmos 250000 Greedy + Bl Extendida y Grasp aplicar la variante Greedy de mutación de intercambio de hub no tiene 200000 Búsqueda Local influencia sobre el resultado de las soluciones que 150000 BM B se obtienen, como se aprecia en los gráficos 5, 6 y Coste Greedy + BL Greedy + BL Ext 7. 100000 Grasp 50000 Grasp Ext ILS 0 6. Conclusiones AP-50-5 Gráfica 4. Resultados Ap-50-5 en detalle El algoritmo BMB ha sido el que mejores resultados ha proporcionado en los casos estudiados. 5. Análisis de resultados Las versiones greedy implementadas han presentado resultados de mejor calidad que sus
  • 6. técnicas más sofisticadas Grasp y sus diferentes intercambio modal y plataformas logísticas”, Julio evoluciones. 2008 [2] M.E. O'Kelly (1987). “A cuadratic integer program Se muestra que la elección del número de for the location of interacting hub facilities”. European vecinos empleados en las búsquedas locales es de Journal of Operational Research., 32(3):393-404. vital importancia para la consecución de buenos [3] E. M. Díaz (2011). Práctica 1 Algoritmos Heurísticos resultados. y de Búsquedas [4] E. M. Díaz (2011) Practica 2 Algoritmos Evolutivos y Bioinspirados 7. Referencias [1] David Agra Martínez, “Localización de centros de Anexo I Comparativa de resultados globales En este anexo se recogen todas las gráficas que se han generado durante el proceso de pruebas en las que se han estudiado en profundidad cómo afectan el número de vecinos y las dos opciones que proporciona el operador de mutación en el resultado final del algoritmo. CAB-25-4
  • 7. Gráfica 5. Resultado estudio para problema CAB-25-4 Gráfica 6. Resultado estudio para problema AP-40-3
  • 8. Gráfica 7. Resultado estudio para problema AP-50-5 Los datos que aparecen en el eje horizontal corresponden el número de vecinos para el caso de los algoritmos BMB y Greedy + BL y al factor de mutación en el resto. Este factor corresponde al número de asignaciones de intercambio de conectores como parte izquierda y al número de cambios de hubs en la parte derecha. Asi el valor 4-5 representa a 4 cambios de asignación y 5 cambios de hubs.