La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

5- Problemas de grandes dimensiones: descomposición.

Presentaciones similares


Presentación del tema: "5- Problemas de grandes dimensiones: descomposición."— Transcripción de la presentación:

1 5- Problemas de grandes dimensiones: descomposición

2 Métodos de descomposición: permiten la resolución de problemas de gran tamaño con una estructura especial mediante la solución iterativa de otros problemas de menor tamaño Existen varias técnicas de descomposición: - descomposición de Benders o de variables - descomposición de Dantzing-Wolfe o de restricciones - descomposición primal-dual - descomposición anidada Estructura: problemas bietapa y multietapa. El tamaño del problema crece exponencialmente con el número de etapas. Para problemas pequeños o medianos se pueden usar técnicas convencionales de PL pero resulta imprescindible mejorar la técnica para los de grandes dimensiones, aprovechando su estructura especial.

3 Problema lineal bietapa: (PL-2) Min c 1 T x 1 +c 2 T x 2 / A 1 x 1 = b 1, A 1 de dimensión m 1 *n 1 B 1 x 1 +A 2 x 2 = b 2, A 2 de dimensión m 2 *n 2 x 1 0, x 2 0 dimensión del sistema (m 1 +m 2 )*(n 1 +n 2 ) Problema lineal multietapa, para P etapas: (PL-P) Min c p T x p / B p-1 x p-1 +A p x p = b p, p=1..P A p de dimensión m p *n p x p 0, B 0 = 0 dimensión del sistema m p * n p

4 Descomposición de Benders (primal) Algoritmo iterativo: Descompone el problema lineal bietapa PL-2 en un problema maestro y un subproblema. Alterna entre la solución del maestro y del subproblema El maestro: representa la primera etapa mas las condiciones necesarias, denominadas cortes, derivadas de la segunda etapa. El subproblema: representa la segunda etapa Se utiliza cuando el bloque de variables x1 complica la resolución del problema: fijando temporalmente sus valores, resulta mucho mas sencillo encontrar la solución (implícitamente: n 1 <

5 Ejemplo: problemas de planificación multiperíodo, donde cada subproblema se preocupa de la optimización de la operación del sistema durante un período particular y es necesaria una coordinación adicional para el conjunto de los períodos. (PL-2) Equivalente: (1) Min c 1 T x 1 + (x 1 ) / A 1 x 1 = b 1, x 1 0, donde (x 1 ) R=función de recursos, es una poligonal convexa que representa la función objetivo de la segunda etapa como función de las decisiones de la primera etapa: (2) (x 1 )= Min c 2 T x 2 / A 2 x 2 = b 2 - B 1 x 1 ( 2 vars duales) x 2 0,

6 Expresando (2) en su forma dual: (3) (x 1 )= Max ( b 2 - B 1 x 1 ) T 2 / A 2 T 2 c 2 Sea = 2 1, v el conjunto de vértices del poliedro convexo definido por la región factible A 2 T 2 c 2. El problema (3) se puede resolver enumerando todos los vértices del poliedro: (4) (x 1 )= Max ( b 2 - B 1 x 1 ) T 2 i, i=1:v En forma equivalente se puede escribir (x 1 ) como una función poligonal de las variables x 1 : (5) (x 1 )= Min / ( b 2 - B 1 x 1 ) T 2 i, i=1...v donde R y las restricciones se denominan cortes.

7 El problema original PL-2 se puede expresar como: (6) Min c 1 T x 1 + / A 1 x 1 = b 1, ( b 2 - B 1 x 1 ) T 2 i, i=1...v x 1 0 es el maestro completo con TODOS los cortes posibles En lugar de incluir todos los cortes, lo que implicaría disponer de forma explícita de la función de recursos (x 1 ), el algoritmo va introduciendo un corte en cada iteración. Para la iteración j, el problema maestro restringido es: (7) Min c 1 T x / (Maestro restringido) A 1 x 1 = b 1, 2 (i-1)T B 1 x (i-1)T b 2, i=1...j x 1 0

8 i es el índice de las iteraciones y una iteración es un ciclo completo maestro-subproblema. x 1 y 1 varían en cada iteración. El subproblema se puede expresar como: (8) Min c 2 T x 2 / (Subproblema) A 2 x 2 = b 2 - B 1 x 1 ( 2 vars duales) x 2 0, cortes: son los hiperplanos tangentes a la función objetivo de (8), en cada punto x 1 Esquema de resolución: Maestro restringido x 1 Subproblema 2

9 Algoritmo: j=0, Mientras (condición) 1- si j>0, añadir cortes correspondientes a 2 (j-1) 2- resolver el maestro(j), obteniendo x 1 (j) 3- resolver el subproblema(j) con los recursos b 2 - B 1 x 1 (j) y obtener las variables duales 2 (j) 4- j=j+1, fin mientras en cada iteración se modifica la región factible del maestro, agregando restricciones a medida que se hacen más iteraciones aumenta el número de restricciones agregadas al maestro, con lo cual se va aproximando al óptimo.

10 En cada iteración se puede dar una cota superior e inferior del valor óptimo: 1- cota superior= z + = c 1 T x 1 +c 2 T x 2, donde: x 1 =solución del maestro y x 2 =solución del subproblema 2- cota inferior= z - = c 1 T x 1 + 1, ya que es el valor óptimo de un problema con menos restricciones que el original Condición de optimalidad: la condición de fin del algoritmo es estar suficientemente cercanos al óptimo o la coincidencia de ambas cotas: condición= z + - z - / z + La cota inferior es monótona creciente, la superior no es forzosamente decreciente (se toma la menor de todas las cotas superiores previas)

11 En cada iteración el corte agregado tiene el efecto de eliminar la solución óptima anterior de la nueva región del maestro (no se repiten cortes mientras no se cumple la condición de parada) El tamaño del problema PL-2 era (m1+m2)*(n1+n2), el tamaño del problema maestro es (m1+j)*(n1+1) y el del subproblema es m2*n2, el número de restricciones en del problema maestro aumenta en uno e cada iteración. En cada iteración, en el subproblema sólo cambian los términos independientes. En cada iteración se le agrega al problema maestro un corte que elimina la factibilidad del óptimo de la iteración anterior, de forma que se dispone de una solución básica no factible primal y dual factible.

12 La descomposición de Benders permite disponer siempre de una solución factible, aunque no sea la óptima (primal). Si el subproblema es factible no acotado el problema lineal bietapa es no acotado Si el subproblema es no factible en el maestro se introduce una penalización para evitar la infactibilidad en ese valor de x 1

13 Cortes de factibilidad (caso infactibilidad del subproblema) Dado el maestro restringido: Min c 1 T x / A 1 x 1 = b 1, (A) 2 (i-1)T B 1 x (i-1)T b 2, i=1...j x 1 0 Las desigualdades (A) las llamamos cortes de optimalidad Y el subproblema: (x 1 )= Min c 2 T x 2 / A 2 x 2 = b 2 - B 1 x 1 ( 2 vars duales) x 2 0, Supongamos el subproblema infactible, replanteamos el subproblema con variables artificiales:

14 (x 1 )= Min c 2 T x 2 +M v + + Mv - / A 2 x 2 + v + -v - = b 2 - B 1 x 1 ( 2 vars duales) x 2 0, v + 0, v - 0 Su dual: (x 1 )= Max ( b 2 - B 1 x 1 ) T 2 / [A 2 I –I] T 2 [c 2 T M M] O sea, (B) (x 1 )= Max ( b 2 - B 1 x 1 ) T 2 / A 2 T 2 c 2 T -M 2 M NOTA: Si el subproblema era infactible, su dual era no acotado, con las variables artificiales, se vuelve acotado

15 En el óptimo: c 2 T x 2 +M v + + Mv - = ( b 2 - B 1 x 1 ) T 2 1.Si el problema tiene solución v + = v - =0 c 2 T x 2 +M v + + Mv - = ( b 2 - B 1 x 1 ) T 2 2.Si el problema no tiene solución objetivo dual no acotado superiormente (máximo) ( b 2 - B 1 x 1 ) T Para excluir ese valor de x 1 que vuelve infactible el subproblema, se introduce el llamado corte de factibilidad: ( b 2 - B 1 x 1 ) T 2 0

16 Introduciendo los cortes de factibilidad, el maestro restringido resulta: Min c 1 T x / A 1 x 1 = b 1, 2 (i-1)T B 1 x (i-1)T b 2, i=1...j x 1 0 Donde: = 1 para cortes de optimalidad y = 0 para cortes de factibilidad

17 Descomposición de Dantzing-Wolfe (dual) Se utiliza cuando un conjunto de restricciones complican la solución del problema (se supone que el número de restricciones molestas m 2 << m 1. Se descompone el problema original en un maestro y un subproblema. Es un algoritmo iterativo y alterna entre la solución del maestro y del subproblema Se desea resolver el siguiente problema: (9) Min c 1 T x 1 / A 1 x 1 = b 1, A 1 de dimensión m 1 *n 1 B 1 x 1 = b 2, B 1 de dimensión m 2 *n 1 x 1 0, dimensión del sistema (m 1 +m 2 )*n 1

18 Es equivalente a resolver: (10) Min c 1 T x 1 / B 1 x 1 = b 2, x 1 0, x 1 K, donde K={x 1 / A 1 x 1 = b 1, x 1 0 } Como todo punto de un poliedro convexo (teorema de Minkowski y Weyl) puede ponerse como una combinación lineal convexa de sus vértices (puntos extremos) p q, q=1..Q, mas una combinación lineal no negativa de rayos extremos p r, r=1..R, reformulamos K como: K={x = q p q + r p r / q = 1, l 0 } Considerando conocidos todos los vértices del poliedro, el problema (10) se puede reformular como:

19 (11) Min (c 1 T p q ) q + (c 1 T p r ) r / (B 1 p q ) q + (B 1 p r ) r = b 2, : vars duales 2 q = 1, : vars duales l 0 l=1...P+Q

20 En lugar de enumerar todos los vértices, el algoritmo de descomposición iterativo, introduce un vértice en cada iteración, a medida que son necesarios: (12) Min (c 1 T p q ) q + (c 1 T p q ) q / (Maestro restringido) (B 1 p q ) q + (B 1 p r ) r = b 2, : vars duales 2 r = 1, : vars duales l 0 l=1...P+Q, q=1:Q Q, r=1:R R Supongamos que se dispone de una solución inicial factible x 1 1 K y que el problema (12) se resuelve por simplex revisto la condición de optimalidad es: (13) c 1 T x 1 * - ( 2 T ) (B 1 x 1 * 1) T 0, o sea: (14) z 1 =Mín(c 1 T x T B 1 x 1 ) - 0 x1 K

21 expresando la minimización como problema lineal, el subproblema para cada iteración es: (15) z 1 =Mín(c 1 T x T B 1 x 1 ) - / (Subproblema) A 1 x 1 = b 1, x 1 0 En cada iteración aumenta en uno el número de variables del problema maestro y se modifican los coeficientes de la función objetivo del subproblema. En una iteración del algoritmo se resuelve el problema maestro y se pasa el valor del vector 2 y al subproblema. Se resuelve el subproblema. Si la expresión (14) es negativa y finita, la solución x1 obtenida en el subproblema, se envía al maestro. Si la expresión (14) es no acotada, se identifica el rayo extremo solución de A 1 x 1 = 0 y se envía al maestro. Si la expresión (14) es positiva o nula el algoritmo termina, con el óptimo alcanzado.

22 Esquema de resolución: Maestro restringido 2, Subproblema x 1 La solución óptima está dada por la combinación lineal de las soluciones de las diferentes iteraciones: x 1 * = l x 1 l l=1:j El tamaño del maestro es ( m2+1).j y el subproblema es m1*n1. En el maestro aumenta el número de variables en uno en cada iteración. OBS: en este caso no se cuenta con una solución básica primal factible hasta el final.

23 Cotas superior e inferior de la función objetivo z*: Sea un problema genérico: (P) z*= Min c j x j / j J a ij x j = b i i=1..m variables duales: u j J x j 0 j J En cada iteración del simplex se calcula: cr*= min {c j - u T A.j j J}, con A.j = j-sima columna de A Si cr* 0, el algoritmo termina. De lo contrario de pivotea en esa columna y el algoritmo continua. Método de generación de columnas: Supongamos que el problema original (P) contiene muchas variables y consideramos un problema restringido (RMP) donde solamente figura subconjunto de columnas J J:

24 (RMP) z + = Min c j x j / j J J a ij x j = b i i=1..m variables duales: u j J J x j 0 j J J Calculando los costos reducidos cr* = min {c j - u T A.j j J }, Si cr* 0, el algoritmo termina y se alcanzó el óptimo, de lo contrario, se debe agregar esa columna con costo reducido negativo a (RMP), luego pivotear y el algoritmo continua con un problema al que se le agregó una variable.

25 Cota superior e inferior de z*, valor óptimo de (P) : z* z + = valor óptimo del maestro restringido Se cumple ya que z + es solución de (RMP) que se derivó de (P) eliminando columnas. z + + cr* z*, ya que: cr* = min {c j - u T A.j j J } Si x* 0 es la solución óptima, multiplicando escalarmente por x*

26 ya que u es la variable dual de (RMP) y se cumple: En resumen:

27 En el caso particular de al descomposición de Dantzing-Wolfe:

28 Observaciones: si se comienza con una solución factible inicial, ni el maestro ni el subproblema pueden ser infactibles Si el subproblema es no acotado, se agrega en el maestro una variable correspondiente a una dirección admisible ( r ) Si el maestro restringido es no acotado, el problema original es no acotado. Para resolver el maestro y subproblema, por ser restricciones de igualdad, utilizar variables artificiales.


Descargar ppt "5- Problemas de grandes dimensiones: descomposición."

Presentaciones similares


Anuncios Google