Relajacion lagrangiana

20
Relajación Lagrangiana

description

Relajacion de lagrange o relajacion dual con ejemplo didactico

Transcript of Relajacion lagrangiana

Page 1: Relajacion lagrangiana

Relajación Lagrangiana

Page 2: Relajacion lagrangiana

• LaGrange lo inventó en el año 1797.

• Desde su creación este método ha sido la técnica de acotación preferida, hasta los años 1990 donde apareció la técnica de Branch and Price.

Historia

Page 3: Relajacion lagrangiana

Descripción del Método

• Consiste en relajar un problema de optimización.

• Busca remover la restricción mala y colocarla en la función objetivo para resolver más fácil el problema.

• Se coloca una restricción en la función objetivo como penalización. Se le asigna un peso a esa penalización con el multiplicador de Lagrange.

• Se usa principalmente en problemas de optimización discreta y en particular en problemas de redes

Page 4: Relajacion lagrangiana

Descripción del Método

Page 5: Relajacion lagrangiana

Gráficamente

Z*(x*)

L(λ) | x=x₁ L(λ) | x=x₂

L(λ) | x=x₃

L(λ) | x=x₄

λ

L(λ)

λ*

Min L(λ)•L(λ) esta restringido por los valores que pueden tomar las variables xⁿ.

•Para un x fijo se trazan las recta con λ variable que limitan la función L(λ).

•Se busca el mínimo de la función.

¿Cómo encontramos el lambda que nos ubica en el mínimo?

Page 6: Relajacion lagrangiana

Método del Subgradiente

Z*(x*)

λ

L(λ)

λ*

Min L(λ)

λⁿ⁺¹=[λⁿ+Ѳⁿ (b-Axⁿ)]⁺

⁺ :representa la parte positiva, será 0 si es que es negativo.

UB: Es un valor factible de Z(x)

b-Axⁿ: Restricción relajada.

µ=Tamaño de salto de la iteración.

µ Grandeµ Chico

Page 7: Relajacion lagrangiana

Ventajas

• Se aplica a cada descomposición de un modelo y llega a una muy aproximada solución por resolver problemas mas bien generales que de solución única.

• Resuelve núcleos de sub-problemas como modelos independientes.

• La solución Lagrangiana aproximada puede tomar las ventajas de varios algoritmos conocidos.

• Permite desarrollar límites sobre el valor de la función objetivo óptima de manera rápida.

• Idear métodos en base a una heurística efectiva para resolver problemas de optimización combinatorial compleja y programación entera.

Page 8: Relajacion lagrangiana

Restricciones del Método

• El problema relajado sea más sencillo de resolver que el problema original puesto que podría ser necesario resolverlo muchas veces.

• El otro factor consiste en que la relajación debe ser buena en el sentido de que el valor de la solución del problema relajado debe ser suficientemente cercano al del problema original.

• Un problema min{g(y) : y Ŷ R} es una relajación del ∈ ⊆problema min{f(y) : y Y R} si y sólo si Y Ŷ y f(y) ≤ g(y) ∈ ⊆ ⊆para todo y Y∈

Page 9: Relajacion lagrangiana

Aplicaciones Clásicas

Tópico Integración de Estructura de Red

Redes con lados limitantes Flujo de costo mínimo Camino más corto

Problema del Vendedor Viajero Asignación de problema Flujo de costo mínimo

Ruta Vehicular Asignación del problema Una variante mínima de árbol

de expansión

Diseño de Redes Camino más corto

Two-duty operator scheduling Camino más corto Flujo de costo mínimo

Árbol de expansión de grado limitado

Árbol de expansión mínimo

Plan de Producción multi-item Camino más corto Flujo de costo mínimo Programas dinámicos

Page 10: Relajacion lagrangiana

Discución calidad del método

• Es muy barato y tiene un corto tiempo de resolución, ya que no pretende conseguir la optimalidad, sino que busca cotas o soluciones infactibles que se acerquen al óptimo.

• A pesar de esto en gran número de casos se encuentra el óptimo a un bajo costo.

• Permite usar la cotas encontradas para comparar los GAP de distintas heurísticas de manera más exacta que la relajación lineal.

Page 11: Relajacion lagrangiana

Aplicación en instancia de prueba

• Se tiene el siguiente grafo con las distancias en los arcos y la demanda en el nodo.

• El objetivo es maximizar la demanda cubierta localizando solamente 2 centros de distribución, tomando como consideración que cada centro tiene un radio de cobertura de 20 km.

• Como se muestra a continuación…

Page 12: Relajacion lagrangiana

Aplicación en instancia de prueba

Page 13: Relajacion lagrangiana

Aplicación en instancia de prueba

Parámetro Variables

Ai,j= 1 si es que el nodo i cubre al j, 0 en otro caso.

Dj=Demanda centro j. N=número de centros a localizar.

Xj=1 si es que se localiza en j, 0 en otro caso.

Yj=1 si el nodo j es atendido, 0 en otro caso.

Suma la demanda de los nodos atendidos

Un centro es atendido solo si ese centro o alguno a menos de 20 km es atendido

No puede localizarse más de N centros.Restricción a relajar !

Page 14: Relajacion lagrangiana

Aplicación en instancia de prueba

Lagrangeano:

Page 15: Relajacion lagrangiana

a b c d e f g h i

a 1 1 0 0 0 0 0 1 0

b 1 1 0 0 0 0 0 0 1

c 0 0 1 1 0 0 0 0 0

d 0 0 1 1 1 0 0 0 1

e 0 0 0 1 1 0 0 0 0

f 0 0 0 0 0 1 1 0 1

g 0 0 0 0 0 1 1 1 0

h 1 0 0 0 0 0 1 1 1

i 0 1 0 1 0 1 0 1 1

Aplicación en instancia de prueba

Ahora para el caso puntual de nuestro problema, se hace la matriz con los valores de Ai,j para un radio de cobertura de 20 km. Luego para la resolución se utiliza solver de Excel para los distintos valores de µ.Ai,j:

11

17

21

31

15

14

2112

11 26

182516

19

34 19

C

D

EFG

H I

1215 23

40

28

18 32

1720

A B

Nodo i es el que más atiende, por tanto es un claro candidato y es bueno incluirlo en la solución inicial. (Heurística Greedy para sol. inicial)

Page 16: Relajacion lagrangiana

Aplicación en instancia de prueba

Restricción Relajada:Para nuestro caso:

µ

d,e,h,i d,h,i

d,i

30 50

i

Penaliza a la funciónCalza el min. de L(µ) con max. Z(x) ya que la penalización desaparece.

Z*(x*)

205 -

L(µ)

Multiplicador tan grande que conviene que la resta sea positiva localizando menos centros

Page 17: Relajacion lagrangiana

Aplicación en instancia de prueba

Resumen de resultados:

Lamda Min L Localizaciones Cobertura

0 205 d,e,h,i todos

10 190 d,e,h,i todos

15 190 d,h,i todos

30 175 d,h,i todos

32 173 d,h,i todos

34 172 d,ib,c,d,e,f,h,

i

40 172 d,ib,c,d,e,f,h,

i

50 172 d,ib,c,d,e,f,h,

i

70 190 i b,d,f,h,i

Page 18: Relajacion lagrangiana

Aplicación en instancia de prueba

Para los valores de lamda entre 32 y 50 se logra el mínimo. La solución de el min L(µ) es la misma que la del máx Z(X), ya que consideran los mismos valores optímales de x, valores donde la penalización es 0, puesto que (N-Xj)=0. La penalización se mantiene así desde el 32 hasta el 50, manteniendo el mínimo.

Page 19: Relajacion lagrangiana

Conclusiones

• El método de Relajación Lagrangiana, es de gran utilidad para resolver problemas de forma rápida con bajos recursos.

• Consigue óptimos en algunos casos, o cotas mejores que la de la relajación lineal, permitiendo la comparación de heurísticas.

• Se adapta al problema del usuario, pues nosotros elegimos que restricción relajar.

Page 20: Relajacion lagrangiana

FIN

Sus aplicaciones son infinitas ! Solo basta relajar

¿Preguntas?