Upload
ildefonso-caballero
View
5
Download
1
Embed Size (px)
Citation preview
GRASPGRASP
José Enrique GonzalezJosé Enrique Gonzalez
Roberto ClavellRoberto Clavell
GREEDY RANDOMIZED ADAPTIVE SEARCH PROCEDURES
Introducción Introducción Meta heurística multi-comienzo para problemas Meta heurística multi-comienzo para problemas
optimización combinatorios.optimización combinatorios. Cada iteración consiste básicamente en dos fases: Cada iteración consiste básicamente en dos fases:
construcción y búsqueda local.construcción y búsqueda local. En la primera se genera una solución factible cuyo En la primera se genera una solución factible cuyo
vecindario es investigado hasta que un mínimo local vecindario es investigado hasta que un mínimo local es encontrado durante la fase de local search. es encontrado durante la fase de local search.
Dado E={1,...,n}, un conjunto de soluciones factible Dado E={1,...,n}, un conjunto de soluciones factible F C 2F C 2|E||E| y una función objetivo f: 2 y una función objetivo f: 2|E||E|-->R tal que f(S) -->R tal que f(S) = = ΣΣ(c(e)), para todo S (c(e)), para todo S ЄЄ 2 2|E||E| donde c(e)= costo donde c(e)= costo asociado a la inclusión del elemento e en la solución asociado a la inclusión del elemento e en la solución S. Solución óptima = S* S. Solución óptima = S* ЄЄ F tal que f(S*)<=f(S). F tal que f(S*)<=f(S).
Algoritmo PrincipalAlgoritmo Principal
Algoritmo de Algoritmo de ConstrucciónConstrucción
Algoritmo de Algoritmo de ConstrucciónConstrucción
Cada iteración en la fase de construcción Cada iteración en la fase de construcción crea un conjunto de elementos candidatos crea un conjunto de elementos candidatos con todos los elementos que pueden ser con todos los elementos que pueden ser incorporados a la solución parcial.incorporados a la solución parcial.
(linea 4)La selección del próximo elemento es (linea 4)La selección del próximo elemento es determinado por la evaluación de la función determinado por la evaluación de la función greedy.greedy.
Esta función representa el incremento en la Esta función representa el incremento en la función de costo a causa de la incorporación función de costo a causa de la incorporación del elemento en la solución que se esta del elemento en la solución que se esta construyendo.construyendo.
Algoritmo de Algoritmo de ConstrucciónConstrucción
(linea 5)El elemento a incorporar en (linea 5)El elemento a incorporar en la solución parcial es la solución parcial es randómicamente seleccionado de la randómicamente seleccionado de la RCL.RCL.
Luego la RCL es actualizada Luego la RCL es actualizada revaluando los costos.revaluando los costos.
Las soluciones generadas en la fase Las soluciones generadas en la fase de construcción no son de construcción no son necesariamente óptimas.necesariamente óptimas.
Algoritmo de Búsqueda Algoritmo de Búsqueda Local (ABL)Local (ABL)
Búsqueda LocalBúsqueda Local
El algoritmo de búsqueda local es El algoritmo de búsqueda local es iterativo y va sucesivamente iterativo y va sucesivamente reemplazando la solución actual por otra reemplazando la solución actual por otra mejor que este en el vecindario.mejor que este en el vecindario.
Termina cuando no encuentra una mejor Termina cuando no encuentra una mejor solución en el vecindario.solución en el vecindario.
Este algoritmo parte de la solución Este algoritmo parte de la solución generada en la fase de construcción, se generada en la fase de construcción, se espera que dicha solución sea de buena espera que dicha solución sea de buena calidad. calidad.
Búsqueda LocalBúsqueda Local
Dos estrategias:Dos estrategias:
best-improving: todos los vecinos son best-improving: todos los vecinos son investigados y la solución actual es investigados y la solución actual es reemplazada por la solución del mejor reemplazada por la solución del mejor vecinovecino
first-improving: la solución actual es first-improving: la solución actual es reemplazada por la solución del primer reemplazada por la solución del primer vecino cuya solución sea mejorvecino cuya solución sea mejor
Construcción de la RCLConstrucción de la RCL
GRASP tiene dos parámetros de GRASP tiene dos parámetros de entrada: uno es la condición de parada entrada: uno es la condición de parada y otro es la calidad de los elementos del y otro es la calidad de los elementos del RCL. RCL.
Cuanto mayor sea el número de Cuanto mayor sea el número de iteraciones, mejor será la solución final.iteraciones, mejor será la solución final.
RCL limitada por:RCL limitada por: la cantidad de elementos;la cantidad de elementos; por la calidad de estos.por la calidad de estos.
Construcción de la RCL Construcción de la RCL (cont)(cont)
1- La lista es construida con p 1- La lista es construida con p elementos de mejor costo elementos de mejor costo incremental.incremental.
2- La lista se construye con todos los 2- La lista se construye con todos los elementos factibles e elementos factibles e E que E que pueden ser insertados en la solución pueden ser insertados en la solución parcial sin perder factibilidad y cuya parcial sin perder factibilidad y cuya calidad es superior a un parámetro calidad es superior a un parámetro [0,1] asociado a la RCL. [0,1] asociado a la RCL.
Construcción de la RCL Construcción de la RCL (cont)(cont)
Por ej. c`(e) Por ej. c`(e) [cmin,cmin + [cmin,cmin + (cmax-(cmax-cmin)]; si cmin)]; si =0 el algoritmo =0 el algoritmo correspondiente es greedy puro, en correspondiente es greedy puro, en cambio si cambio si =1 corresponde a una =1 corresponde a una construcción randómica.construcción randómica.
En cada En cada iteracióniteración se produce una se produce una solucion ejemplar con distribucion solucion ejemplar con distribucion desconocida, cuya media y varianza se desconocida, cuya media y varianza se dan en funcion de la naturaleza de la dan en funcion de la naturaleza de la RCL.RCL.
Construcción de la RCL Construcción de la RCL (cont)(cont)
Es comun que GRASP encuentre una Es comun que GRASP encuentre una solucion optima cuanto mas grande solucion optima cuanto mas grande es la varianza.es la varianza.
El tiempo total computacional va a El tiempo total computacional va a ser mayor cuando mas grande sea la ser mayor cuando mas grande sea la varianza de la solucion.varianza de la solucion.
Construcción de la RCL Construcción de la RCL (cont)(cont)
En la siguiente tabla se muestran los En la siguiente tabla se muestran los resultados obtenidos para 1000 resultados obtenidos para 1000 construcciones independientes y sus construcciones independientes y sus correspondientes aplicaciones de correspondientes aplicaciones de local search para cada una de las local search para cada una de las construcciones para el problema construcciones para el problema MAXSAT.MAXSAT.
Construcción de la RCL Construcción de la RCL (cont)(cont)
Construcción de la RCL Construcción de la RCL (cont)(cont)
Diferentes estrategias para regular el Diferentes estrategias para regular el parametro alfa:parametro alfa:
(R) autoregulada de acuerdo al (R) autoregulada de acuerdo al procedimiento de Reactive GRASP;procedimiento de Reactive GRASP;
(E) elegida randomicamente de una (E) elegida randomicamente de una distribucion de probabilidad uniforme y distribucion de probabilidad uniforme y discreta;discreta;
(H) elegida randomicamente de una (H) elegida randomicamente de una distribucion de probabilidad decreciente, no distribucion de probabilidad decreciente, no uniforme y discreta; yuniforme y discreta; y
(F) un valor acordado, (purely greedy choice).(F) un valor acordado, (purely greedy choice).
Mecanismos Mecanismos alternativosalternativos
de construcciónde construcción
• Iteraciones Independientes Iteraciones Independientes • No se basan en soluciones anterioresNo se basan en soluciones anteriores• No “aprende” de la historiaNo “aprende” de la historia• Se descartan soluciones si no son mejoresSe descartan soluciones si no son mejores
Mecanismo alternativo:Mecanismo alternativo:
La informacion obtenida de buenas La informacion obtenida de buenas soluciones puede ser usada para soluciones puede ser usada para implementar procedimientos implementar procedimientos basados en memoria.basados en memoria.
Se influencia la fase de Se influencia la fase de construcción.construcción.
Se modifican las probabilidades de Se modifican las probabilidades de selección asociadas a cada elemento selección asociadas a cada elemento de la RCL. de la RCL.
Técnicas alterativasTécnicas alterativasFase de construcciónFase de construcción
Reactive GRASPReactive GRASP Cost PerturbationsCost Perturbations Bias FunctionsBias Functions Intelligent Construction: memory Intelligent Construction: memory
and learningand learning POP in ConstructionPOP in Construction
Reactive GRASPReactive GRASP
αα no tiene un valor fijo. no tiene un valor fijo. Sea Y={Sea Y={αα11,,αα22,..,,..,ααnn} valores de posibles } valores de posibles
de de αα.. P(selección) de un elemento de la RCL P(selección) de un elemento de la RCL
son iguales. P=1/nson iguales. P=1/n Las probabilidades de selección se Las probabilidades de selección se
reevalúan: preevalúan: pii =q =qi i / / ΣΣjj=1..n=1..n qj qj ,, siendo siendo qqii=z*/A=z*/Aii con A con Aii el promedio de las soluciones el promedio de las soluciones encontradas, z* la solución actual.encontradas, z* la solución actual.
Reactive GRASPReactive GRASP
Mayores valores de qiMayores valores de qi corresponden corresponden a valores de a valores de αα mas convenientes. mas convenientes.
Las probabilidades asociadas a estos Las probabilidades asociadas a estos valores van a incrementarse cuando valores van a incrementarse cuando sean reevaluados.sean reevaluados.
Algunos elementos de la RCL Algunos elementos de la RCL tendrán mas probabilidad de ser tendrán mas probabilidad de ser seleccionados.seleccionados.
ConclusionesConclusiones
Reactive GRASP mejora el GRASP Reactive GRASP mejora el GRASP básico en términos de robustez y básico en términos de robustez y calidad de la solución.calidad de la solución.
Este algoritmo ha sido usado en Este algoritmo ha sido usado en planificación de redes de sistemas planificación de redes de sistemas de sistemas de transmisión de de sistemas de transmisión de energía.energía.
Técnicas alterativasTécnicas alterativasFase de construcciónFase de construcción
Reactive GRASPReactive GRASP Cost PerturbationsCost Perturbations Bias FunctionsBias Functions Intelligent Construction: memory Intelligent Construction: memory
and learningand learning POP in ConstructionPOP in Construction
Cost PerturbationsCost Perturbations
Idea: introducir “ruido” a los costos Idea: introducir “ruido” a los costos originales.originales.
Idea similar al llamado “noissing Idea similar al llamado “noissing method” de Charon y Hudry.method” de Charon y Hudry.
Se agrega mas flexibilidad al diseño Se agrega mas flexibilidad al diseño del algoritmodel algoritmo
Podría llegar a ser mas efectivo que Podría llegar a ser mas efectivo que la construcción randómica.la construcción randómica.
Cost PerturbationsCost Perturbations
Ejemplo: “Prize-collecting Steiner tree”.Ejemplo: “Prize-collecting Steiner tree”. En cada iteración se construye una En cada iteración se construye una
solución usando “node prizes” solución usando “node prizes” actualizados por una función de actualizados por una función de perturbación.perturbación.
Dos esquemas diferentes de costos de Dos esquemas diferentes de costos de perturbaciones usadas: perturbación por perturbaciones usadas: perturbación por eliminaciones y perturbación por cambio eliminaciones y perturbación por cambio de costos.de costos.
Cost PerturbationsCost Perturbations
Perturbación por eliminaciones:Perturbación por eliminaciones: En la fase de construcción se crea una En la fase de construcción se crea una
nueva solución sin alguno de los nodos nueva solución sin alguno de los nodos que aparecían en la solución que aparecían en la solución construida en la iteración anterior.construida en la iteración anterior.
Esto se hace cambiando a cero los Esto se hace cambiando a cero los costos de algunos nodos persistentes.costos de algunos nodos persistentes.
Un parámetro Un parámetro αα controla la fracción controla la fracción de nodos cuyos costos son de nodos cuyos costos son temporalmente seteados a cero. temporalmente seteados a cero.
Cost PerturbationsCost Perturbations
Perturbación por cambio de costos:Perturbación por cambio de costos: Se agrega “ruido” a los costos de los Se agrega “ruido” a los costos de los
nodos cambiando la función objetivo.nodos cambiando la función objetivo. Para cada nodo i, una perturbación de Para cada nodo i, una perturbación de
factor factor ßß(i)(i) es es generada randómicamente generada randómicamente en el intervalo [1-a,1+a] (a parámetro en el intervalo [1-a,1+a] (a parámetro de implementación).de implementación).
El costo asociado al nodo i es El costo asociado al nodo i es temporalmente cambiado a temporalmente cambiado a ΠΠ(i)= (i)= ΠΠ(i)* (i)* ßß(i), donde (i), donde ΠΠ(i) es el costo original.(i) es el costo original.
Técnicas alterativasTécnicas alterativasFase de construcciónFase de construcción
Reactive GRASPReactive GRASP Cost PerturbationsCost Perturbations Bias FunctionsBias Functions Intelligent Construction: memory Intelligent Construction: memory
and learningand learning POP in ConstructionPOP in Construction
Bias FunctionsBias Functions
En la construcción del GRASP básico, el En la construcción del GRASP básico, el próximo elemento a ser introducido a la próximo elemento a ser introducido a la solución es elegido randomicamente de solución es elegido randomicamente de los candidatos en la RCL.los candidatos en la RCL.
Estos tienen igual probabilidad de ser Estos tienen igual probabilidad de ser elegidos.elegidos.
Se puede usar alguna distribución de Se puede usar alguna distribución de probabilidad para guiar la selección de probabilidad para guiar la selección de candidatos particulares.candidatos particulares.
Bias FunctionsBias Functions
Bresina propuso otro mecanismo de Bresina propuso otro mecanismo de construcción.construcción.
Una familia de distribuciones de Una familia de distribuciones de probabilidad es introducida. probabilidad es introducida.
Se basan en un ranking r(o) Se basan en un ranking r(o) asignado a cada elemento candidato asignado a cada elemento candidato o, de acuerdo a su valor para la o, de acuerdo a su valor para la función de greedy.función de greedy.
Bias FunctionsBias Functions
Algunas Bias Functions:Algunas Bias Functions: random: bias(r)=1 , r random: bias(r)=1 , r єє RCLRCL
linear: bias(r)=1/r , r linear: bias(r)=1/r , r єє RCLRCL
log: bias(r)= loglog: bias(r)= log-1-1(r+1) , r (r+1) , r єє RCLRCL
exponential: bias(r)=eexponential: bias(r)=e-r-r , r , r єє RCLRCL
Polynomial: bias(r)=rPolynomial: bias(r)=r-n-n , r , r єє RCLRCL
PP(o)=bias(r(o))/ (o)=bias(r(o))/ ΣΣ(bias(r(o'))) con o' (bias(r(o'))) con o' ЄЄ RCL. RCL.
Técnicas alterativasTécnicas alterativasFase de construcciónFase de construcción
Reactive GRASPReactive GRASP Cost PerturbationsCost Perturbations Bias FunctionsBias Functions Intelligent Construction: memory Intelligent Construction: memory
and learningand learning POP in ConstructionPOP in Construction
Intelligent Construction: Intelligent Construction: memory and learningmemory and learning
Fleurent y Glover propusieron un Fleurent y Glover propusieron un esquema de memoria a largo término.esquema de memoria a largo término.
El esquema mantiene un conjunto de El esquema mantiene un conjunto de buenas soluciones a ser usadas en la fase buenas soluciones a ser usadas en la fase de construcción.de construcción.
Para pertenecer al conjunto, la solución Para pertenecer al conjunto, la solución debe ser mejor que el mejor de los debe ser mejor que el mejor de los miembros del conjunto o mejor que el miembros del conjunto o mejor que el peor miembro y suficientemente diferente peor miembro y suficientemente diferente a las otras soluciones del conjunto. a las otras soluciones del conjunto.
Intelligent Construction: Intelligent Construction: memory and learningmemory and learning
Sea I(e) la medida de cuan fuertemente Sea I(e) la medida de cuan fuertemente determinada y consistente es la determinada y consistente es la solución e solución e ЄЄ E. E.
I(e) crece a medida que e aparece mas I(e) crece a medida que e aparece mas seguido en la solución.seguido en la solución.
Sea c`(e) la función de greedy asociada Sea c`(e) la función de greedy asociada con la incorporación de un elemento e con la incorporación de un elemento e ЄЄ E en la solución bajo construcción. E en la solución bajo construcción.
Sea K(e)=F(c´(e),I(e)) , con e Sea K(e)=F(c´(e),I(e)) , con e ЄЄ E. E.
Intelligent Construction: Intelligent Construction: memory and learningmemory and learning
Ejemplo:Ejemplo: Sea K(e)= Sea K(e)= λλ*c'(e)+I(e)*c'(e)+I(e) Se guía la solución a aquellos Se guía la solución a aquellos
valores e valores e ЄЄ E E que tengan el mayor que tengan el mayor valor de K(e) .valor de K(e) .
La probabilidad de selección de un La probabilidad de selección de un elemento de la RCL e elemento de la RCL e ЄЄ E es: E es: p(e)=K(e)/p(e)=K(e)/ΣΣ(K(K(s)) con s per RCL.(s)) con s per RCL.
Técnicas alterativasTécnicas alterativasFase de constricciónFase de constricción
Reactive GRASPReactive GRASP Cost PerturbationsCost Perturbations Bias FunctionsBias Functions Intelligent Construction: memory Intelligent Construction: memory
and learningand learning POP in ConstructionPOP in Construction
POP in ConstructionPOP in Construction Proximate Optimality Principle.Proximate Optimality Principle. Se basa en la idea “buenas soluciones en un Se basa en la idea “buenas soluciones en un
nivel es mas común que sean encontradas cerca nivel es mas común que sean encontradas cerca de buenas soluciones en un nivel adyacente”.de buenas soluciones en un nivel adyacente”.
Fleurent y Glover sugirieron que las Fleurent y Glover sugirieron que las imperfecciones introducidas durante la fase de imperfecciones introducidas durante la fase de construcción pueden disminuir aplicando Local construcción pueden disminuir aplicando Local Search durante la fase de construcción y no Search durante la fase de construcción y no solo al final. solo al final.
Una implementación practica es aplicar Local Una implementación practica es aplicar Local search en dos puntos durante la fase de search en dos puntos durante la fase de construcción.construcción.
Path RelinkingPath Relinking
Perfeccionamiento del procedimiento Perfeccionamiento del procedimiento GRASP básico.GRASP básico.
Se empieza con una o mas buenas Se empieza con una o mas buenas soluciones.soluciones.
Caminos en el espacio de soluciones Caminos en el espacio de soluciones son generados y explorados en son generados y explorados en búsqueda de mejores soluciones. búsqueda de mejores soluciones.
Esto es llevado a cabo seleccionando Esto es llevado a cabo seleccionando movimientos e introduciendo atributos movimientos e introduciendo atributos contenidos en la solución guiada.contenidos en la solución guiada.
Path RelinkingPath Relinking
Puede ser visto como una estrategia Puede ser visto como una estrategia que busca incorporar atributos de que busca incorporar atributos de soluciones de alta calidad.soluciones de alta calidad.
Utiliza dos estrategias básicas:Utiliza dos estrategias básicas: Aplicado como una post-optimización a Aplicado como una post-optimización a
todo par de buenas soluciones.todo par de buenas soluciones. Aplicado como una estrategia de Aplicado como una estrategia de
intensificación a cada óptimo local intensificación a cada óptimo local obtenido luego de cada fase de Local obtenido luego de cada fase de Local Search.Search.
Path RelinkingPath Relinking Es aplicado a pares x1 - x2 de soluciones, Es aplicado a pares x1 - x2 de soluciones,
donde x1 es una solución localmente óptima donde x1 es una solución localmente óptima obtenida luego de Local Search y x2 es una obtenida luego de Local Search y x2 es una de unas pocas soluciones elegidas de unas pocas soluciones elegidas randómicamente del conjunto de buenas randómicamente del conjunto de buenas soluciones.soluciones.
El algoritmo comienza computando una El algoritmo comienza computando una diferencia simétrica entre x1 y x2diferencia simétrica entre x1 y x2
Resultando un conjunto de movimientos que Resultando un conjunto de movimientos que deberían ser aplicados a uno de ellos (la deberían ser aplicados a uno de ellos (la solución inicial) para alcanzar la otra (la solución inicial) para alcanzar la otra (la solución guía). solución guía).
Path RelinkingPath Relinking Comenzando de la solución inicial, el Comenzando de la solución inicial, el
mejor movimiento de la diferencia mejor movimiento de la diferencia simétrica entre x1 y x2 aun no realizado simétrica entre x1 y x2 aun no realizado es aplicado a la solución actual.es aplicado a la solución actual.
Esto se hace hasta que la solución guía Esto se hace hasta que la solución guía es obtenida.es obtenida.
La mejor solución encontrada a lo largo La mejor solución encontrada a lo largo de esta trayectoria es también de esta trayectoria es también considerada para ser incluida en el considerada para ser incluida en el conjunto.conjunto.
Path RelinkingPath Relinking
Alternativas de implementación:Alternativas de implementación: No aplicar path-relinking en todas las No aplicar path-relinking en todas las
iteraciones de GRASP, solo periódicamente.iteraciones de GRASP, solo periódicamente. Explorar dos diferentes trayectorias, usando Explorar dos diferentes trayectorias, usando
primero x1 y luego x2 como solución inicial.primero x1 y luego x2 como solución inicial. Explorar una trayectoria, comenzando solo Explorar una trayectoria, comenzando solo
por x1 o x2.por x1 o x2. No seguir toda la trayectoria, solo parte de No seguir toda la trayectoria, solo parte de
ella.ella.
Path RelinkingPath Relinking Cuatro variantes de GRASP y path-Cuatro variantes de GRASP y path-
relinking:relinking: G: es GRASP puro y no usa path-relinking.G: es GRASP puro y no usa path-relinking. GPRf: agrega a G path-relinking en un GPRf: agrega a G path-relinking en un
sentido (hacia adelante).sentido (hacia adelante). GPRb: agrega a G path-relinking en un GPRb: agrega a G path-relinking en un
sentido (hacia atras). sentido (hacia atras). GPRfb: combina GPRf y GPRb, haciendo GPRfb: combina GPRf y GPRb, haciendo
path-relinking en ambas direcciones.path-relinking en ambas direcciones. Path-relinking es una muy buena estrategia Path-relinking es una muy buena estrategia
para introducir memoria en GRASP, para introducir memoria en GRASP, llevando a implementaciones robustas.llevando a implementaciones robustas.
Parallel GRASPParallel GRASP
El paralelismo no es usado El paralelismo no es usado sistemáticamente para aumentar la sistemáticamente para aumentar la velocidad o para mejorar la efectividad velocidad o para mejorar la efectividad de las meta heurísticas.de las meta heurísticas.
Las implementaciones paralelas son muy Las implementaciones paralelas son muy robustas.robustas.
Siguen la estategia "independ-thread Siguen la estategia "independ-thread multiple-walk", basada en la distribución multiple-walk", basada en la distribución de las iteraciones en varios de las iteraciones en varios procesadores.procesadores.
Parallel GRASPParallel GRASP Cada hilo realiza Max_Iterations/p Cada hilo realiza Max_Iterations/p
iteraciones, donde p y Max_Iterations iteraciones, donde p y Max_Iterations son el número de procesadores y el son el número de procesadores y el número total de iteraciones.número total de iteraciones.
Un procesador actúa como maestro Un procesador actúa como maestro leyendo y distribuyendo datos.leyendo y distribuyendo datos.
Como las iteraciones son completamente Como las iteraciones son completamente independientes y el intercambio de independientes y el intercambio de información es pequeño, es fácil obtener información es pequeño, es fácil obtener un aumento lineal de la velocidad.un aumento lineal de la velocidad.
Parallel GRASPParallel GRASP Dado un valor inicial Dado un valor inicial ττ para la función para la función
objetivo, todos los procesadores paran objetivo, todos los procesadores paran inmediatamente después que uno de ellos inmediatamente después que uno de ellos encuentra una solución al menos mejor encuentra una solución al menos mejor que que ττ..
El aumento de velocidad es dado por la El aumento de velocidad es dado por la razón entre el tiempo en encontrar una razón entre el tiempo en encontrar una solución y la implementación paralela con solución y la implementación paralela con p procesadores.p procesadores.
Se debe asegurar que dos iteraciones Se debe asegurar que dos iteraciones cualquiera no comiencen con igual semilla.cualquiera no comiencen con igual semilla.
Parallel GRASPParallel GRASP
El aspecto mas difícil es determinar El aspecto mas difícil es determinar la información a ser compartida e la información a ser compartida e intercambiada para mejorar la intercambiada para mejorar la búsqueda sin usar mucha memoria búsqueda sin usar mucha memoria ni tiempo adicional.ni tiempo adicional.
AplicacionesAplicaciones
Problemas de ruteo.Problemas de ruteo. Optimizaciones gráficas.Optimizaciones gráficas. Transportes.Transportes. Telecomunicaciones.Telecomunicaciones. Dibujo de gráficas y mapas.Dibujo de gráficas y mapas. Sistemas de poder.Sistemas de poder.
Ejemplo: TSPEjemplo: TSP
A
B
C
DE
10
68
12
4
5
Inicio: A
7
5
Ejemplo: TSPEjemplo: TSP
Fase de construcción: Nodo A RCL: {C,D} elijo C Sol
Parcial {A,C} Nodo C RCL: {E,B} elijo B Sol
Parcial {A,C,B}…. Final fase Sol Factible {A,C,B,E,D,A}
Ejemplo: TSPEjemplo: TSP
A
B
C
DE
5
68
12
4
5
Inicio: A
7
5
Solución Factible: A,C,B,E,D,ACosto: 32
Ejemplo: TSPEjemplo: TSP
Fase de Local Search: Mejoro la solución que resultó de la Mejoro la solución que resultó de la
fase de construcción.fase de construcción. Puedo encontrar una mejor solución o Puedo encontrar una mejor solución o
no.no. Luego de terminar la fase, y en caso de Luego de terminar la fase, y en caso de
encontrarse un óptimo local, este se encontrarse un óptimo local, este se guarda como solución actual.guarda como solución actual.
Ejemplo: TSPEjemplo: TSP
A
B
C
DE
10
68
12
4
5
7
5
Local Search: A,E,B,C,DCosto: 24