tema 6 bifurcaccion

Upload: ingenieroindustrial7

Post on 18-Jul-2015

156 views

Category:

Documents


0 download

TRANSCRIPT

Tema 6: Programacin entera: Bifurcacin y planos de corte.

Objetivos del tema: Introducir las principales tcnicas de programacin entera Introducir el mtodo de bifurcacin y acotacin (Brach and Bound B&B) para problemas de Programacin Entera Bound, Analizar las diferentes estrategias que pueden utilizarse en cada una de las etapas del algoritmo B&B Utilizar el algoritmo B&B para resolver algunos problemas de Programacin Lineal Entera Puros, Mixtos y Binarios Presentar algunas de l t i P t l d las tcnicas d preprocesamiento para problemas d P de i t bl de Programacin Li i Lineal E t l Entera Bi i Binaria Presentar un procedimiento para la generacin de planos de corte en problemas de Programacin Lineal Entera Binarios Introducir el mtodo de los planos de corte de Gomoroy para Programacin Lineal Entera

1A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Problemas de Programacin Lineal Entera Tal y como se vio en el Tema 2 en muchos problemas de programacin lineal slo tienen sentido aquellas soluciones de la regin factible en las que todas o algunas de las variables de decisin toman valores enteros. Este tipo de problemas se denominan en general Problemas de Programacin Lineal Entera (PPLE). En concreto: Si todas las variables del problema son enteras se habla de PPLE Pura. Si slo algunas son enteras y las restantes son continuas se habla de PPLE Mixta. Mixta Si todas las variables enteras son binarias (0/1) el problema se denomina PPLE Binaria.

En ingeniera los problemas ms frecuentes son los PPLE Mixta. Estos problemas proporcionan un marco de modelado flexible y eficiente para formular y resolver muchos problemas de ingeniera Un PPLE Mixta general se formula en forma estndar como: ingeniera.

Minimizar sujeto a j t

z = cj xjj =1

n

aj =1

n

ij

x j = bi

; i = 1 2,..., m 1, 2 ; ; j = 1, 2,..., n j = 1, 2,..., I ; I n

xj 0 xj N

Este tema se proporciona una introduccin a los principales algoritmos para obtener la solucin a este tipo de problemas. En concreto, se estudian los mtodos siguientes: Mtodo de bifurcacin y acotacin: La solucin al PPLE original se obtiene resolviendo una secuencia ordenada de PPLs que se obtienen relajando las restricciones de integralidad y aadiendo restricciones adicionales. Mtodo de los planos de corte: En esta tcnica, se resuelve el problema original relajado en el que se incluyen restricciones adicionales, denominadas cortes de Gomoroy, que reducen la regin factible sin excluir soluciones que cumplen las condiciones de integralidad.

2A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Mtodo de bifurcacin y acotacin para un PPLE Mixta. El mtodo de bifurcacin y acotacin (B&B, de Branch and Bound) resuelve un PPLE resolviendo una secuencia ordenada de PPLs que se obtienen relajando las restricciones de integralidad y aadiendo restricciones adicionales. El nmero de restricciones adicionales crece a medida que el mtodo B&B progresa. Estas restricciones permiten separar la regin factible en subregiones complementarias. El mtodo B&B establece inicialmente cotas inferior y superior del valor ptimo de la funcin objetivo. El mecanismo de bifurcacin aumenta progresivamente el valor de la cota inferior y disminuye tambin progresivamente el valor de la cota superior. La diferencia entre estas cotas es una medida de la proximidad de la solucin actual a la ptima, si sta existe. Al minimizar, se obtiene una cota inferior de la solucin ptima relajando las restricciones de integralidad del PPLE inicial y resolviendo el PPL resultante. Adems, el valor de la funcin objetivo para cualquier solucin del PPLE original es una cota superior de la solucin ptima. De manera anloga, al maximizar, la solucin del PPL relajado es una cota superior para el ptimo y cualquier solucin del PPLE original es una cota inferior de la solucin ptima. A continuacin se enumeran los pasos del algoritmo B&B para un PPLE Mixta: Paso 1: Iniciacin 1.1 11 1.2 Se t bl S establece una cota superior ( ) y una cota inferior () de l solucin ti t i () t i f i ( ) d la l i ptima. Se resuelve el PPLE Mixta inicial relajando las restricciones de integralidad. 1.2.a 1.2.b 1.2.c 12c Si el problema relajado es infactible, el original tambin lo es y no hay solucin. Si la solucin obtenida satisface las condiciones de integralidad, es ptima. En cualquier otro caso, se actualiza el valor de la cota correspondiente con el valor de la funcin objetivo resultante caso resultante.

Paso 2: Bifurcacin 2.1 Empleando la variable xk que ha de ser entera y no lo es, se generan mediante bifurcacin dos problemas. Si el valor de la variable que ha de ser entera xk es a.b, donde a y b son sus partes entera y fraccional respectivamente, los problemas fruto de la bifurcacin son los siguientes. 2.1.a 2.1.b 2.2 El primer problema es el PPLE relajado al que se la aade la restriccin xka El segundo es el PPLE relajado al que se le aade la restriccin xka+1

Estos problemas se colocan ordenadamente en una lista de problemas a procesar que son resueltos secuencialmente o en paralelo. Obsrvese que la tcnica de bifurcacin propuesta cubre completamente el espacio de soluciones. 3A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Paso 3: Solucin 3.1 Se resuelve el siguiente problema en la lista de problemas a procesar.

Paso 4: Acotacin 4.1 Si la solucin del problema actual satisface las condiciones de integralidad y el valor ptimo de su funcin objetivo es menor que la cota superior actual, dicha cota se actualiza al valor ptimo de la funcin objetivo del problema resuelto, y el minimizador actual se almacena como el mejor candidato a minimizador del problema original. En caso de maximizaciones, la cota inferior actual se actualiza al valor ptimo de la funcin objetivo del problema resuelto si ste es menor que dicha cota inferior. Si, por el contrario, la solucin obtenida no satisface las restricciones de integralidad y el valor de la correspondiente funcin objetivo esta entre las cotas inferior y superior, se actualiza el valor de la cota inferior al valor de la funcin objetivo del problema resuelto y se procede a bifurcar de nuevo. En caso de maximizaciones, se actualiza el valor de la cota superior al valor de la funcin objetivo del problema resuelto y se procede a bifurcar de nuevo. Los problemas generados en el proceso de bifurcacin se aaden a la lista de problemas que han de resolverse.

4.2

4.3

Paso 5: Poda 5.1 Poda por cotas: Tiene lugar si la solucin no satisface las condiciones de integralidad y adems el valor de la funcin objetivo del problema resuelto es mayor que la cota superior para minimizaciones o menor que la cota inferior para maximizaciones. En este caso no es posible obtener soluciones mediante bifurcaciones adicionales de esa rama. Poda por infactibilidad: Tiene lugar si el problema es infactible. Poda por integralidad: Tiene lugar si la solucin del problema actual cumple las restricciones de integralidad.

5.2 5.3

Paso 6: Optimalidad 6.1 6.2 6.3 Si la lista de problemas a procesar no est vaca, se continua con el paso 3. Si la lista de problemas a procesar est vaca, el procedimiento concluye. Concluido el problema, si existe un candidato a minimizador, dicho candidato es el minimizador; en caso contrario, el problema es infactible.

4A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

El algoritmo de B&B devuelve la solucin ptima o notifica la infactibilidad bien en el paso 1 en el paso 6. El proceso de bifurcacin concluye por la poda de la rama correspondiente como consecuencia de una de las tres razones siguientes: 1. La solucin del problema relajado es mayor que la cota superior disponible en el caso de minimizaciones, o menor que la cota inferior disponible para el caso de maximizaciones. 2. El problema considerado es infactible. 3. La solucin obtenida satisface las condiciones de integralidad. Como puede verse, los pasos centrales del algoritmo B&B son la bifurcacin, la acotacin y la poda. La diferencia entre un algoritmo B&B u otro radica en las diferentes estrategias que pueden llevarse a cabo a la hora de implementar tales pasos. Estrategias de bifurcacin y p g procesamiento Cualquier variable que deba ser entera pero que no lo sea en la solucin actual, es una variable candidata para bifurcacin. Cul escoger no es una cuestin trivial, y su respuesta ha de basarse en la estructura del problema. Los problemas almacenados para ser procesados pueden tratarse mediante estrategias en profundidad, en anchura o mixtas. La siguiente fi i i t figura il t l d primeras alternativas. N ilustra las dos i lt ti Normalmente el conocimiento t i d l problema permite establecer el ti d l t l i i t tcnico del bl it t bl l tipo de estrategia a utilizar.

Bsqueda en profundidad

Bsqueda en anchura

Una estrategia de procesado en profundidad origina rpidamente problemas fuertemente restringidos que producen buenas cotas superiores e inferiores. Da lugar asimismo a problemas infactibles y por tanto a una deseable eliminacin de ramas. Por el contrario, una estrategia en anchura permite tratar problemas muy similares, de lo que pueden desprenderse ventajas computacionales como es la reoptimizacin eficiente del problema relajado actual partiendo de la solucin del anterior.

5A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Estrategias de acotacin La acotacin es normalmente llevada a cabo mediante la denominada relajacin lineal, consistente en la obtencin de la cota a partir de la resolucin del PPL obtenido relajando las restricciones de integralidad del PPLE original. Sin embargo, existen otras posibles relajaciones del PPLE original, como la relajacin Lagrangiana en la que todo el conjunto de restricciones (Ax b en notacin matricial) es eliminado y la funcin objetivo del problema Maximixar z=cTx es reemplazada por Maximizar zR=cTx (Ax b), donde 0 es un vector fijo. Si x* es una solucin ptima del problema original z zR, por lo que resolviendo la relajacin Lagrangiana el valor ptimo de zR proporciona una cota vlida para el problema original. Escogiendo adecuadamente el valor del vector dicha cota tiende a ser similar a la proporcionada por la solucin de la relajacin lineal, pero con la ventaja de que sin las restricciones del problema la resolucin de la relajacin Lagrangiana puede llegar a ser mucho ms rpida. En contrapartida, la poda llevada a cabo tras la acotacin mediante la relajacin Lagrangiana no suele ser tan potente como la llevada a cabo tras la relajacin lineal. En general, dos son los factores deseables a la hora de escoger una u otra estrategia de acotacin: (a) una rpida resolucin del problema relajado; y (b) la obtencin de una buena cota. En general, la relajacin lineal suele ofrecer un buen compromiso entre ambos factores. Estrategias de poda Como se ha comentado anteriormente, la poda de la rama correspondiente tiene lugar por una de las tres razones siguientes: 1. 1 2. 3. La solucin del problema relajado es mayor que la cota superior disponible en el caso de minimizaciones o menor que la cota minimizaciones, inferior disponible para el caso de maximizaciones. El problema considerado es infactible. La solucin obtenida satisface las condiciones de integralidad.

En cuanto al punto 1 puede optarse por convertir el problema a la forma estndar de maximizacin (tal y como se vio en el Tema 4) y podar siempre que la solucin del problema relajado sea inferior al ptimo actual. En cuanto al punto 3, si el problema relajado y el subproblema generado mediante bifurcacin tan slo difieren en la falta de alguna restriccin, la poda puede simplemente basarse en comprobar si la solucin ptima de dicha relajacin es una solucin factible para el subproblema, ya que en este caso dicha solucin tambin ser ptima para este subproblema.

6A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Ejemplo 1: Mtodo B&B para un PPLE Pura Sea el siguiente PPLE Pura:

Minimizar sujeto a

z = x1 x2 x1 + 0 x2 0 2 x1 2 x2 1 z= 2 x2 9 x1 , x2 N

Se trata de obtener su solucin mediante el mtodo de B&B.

Solucin: Mtodo B&B para un PPLE Pura Paso 1: Iniciacin 1.1 1.2 La cota superior inicial es + y la inferior . El problema relajado, denominado P0, es el siguiente: 2x2 9 4 x2 5 z = -x1 -x2

2x1 -2x2 1

Minimizar sujeto a

z = x1 x2 x1 + 0 x2 z= 2 x1 2 x2 2 x2 0 12 1 3

9

Solucin: z = -9.5 para el punto (x1=5, x2=4.5) 1.2c Esta solucin no satisface las condiciones de integralidad (x2N). As, el valor de la funcin objetivo se emplea para actualizar la cota i f i d a -9.5 inferior de 95

1 -x1 0

2

3

4

5

x1

7A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Solucin: Mtodo B&B para un PPLE Pura (continuacin 1) Paso 2: Bifurcacin 2.1 La variable que ha de ser entera x2, mediante bifurcacin da lugar a los dos problemas siguientes: Problema P1 Problema P2

x2 5 x2 4 3

z = -x1 -x2

2x1 -2x2 1

Minimizar sujeto a

z = x1 x2 z= x1 + 0 x2 2 x1 2 x2 2 x2 x2 0 1 9 4

Minimizar sujeto a

z = x1 x2 z= x1 + 0 x2 2 x1 2 x2 2 x2 x2 0 1 9 5

2 1

1 2.2 Estos problemas se colocan en la lista de problemas a procesar. -x1 0

2

3

4

5

x1

Paso 3: Solucin 3.1 Se resuelve el problema P1 Solucin: z = -8.5 para el punto (x1=4.5, x2=4) Paso 4: Acotacin 4.2 Puesto que la solucin obtenida no satisface las condiciones de integralidad (x1N), y que el valor de la funcin objetivo (z=8.5) est entre los valores de las cotas inferior y superior, el valor actual de la cota inferior se actualiza de 9.5 a 8.5 (la solucin ptima est por tanto entre 8.5 y ) 8 5 ). El problema se vuelve a bifurcar. Para ello, la variable que deber ser entera pero no lo es (x1), mediante bifurcacin da lugar a los dos problemas P3 y P4 que incluyen las restricciones adicionales son x1 4 y x1 5 respectivamente. 4.3 Los problemas g p generados en el p proceso de bifurcacin se aaden a la lista de p problemas q han de resolverse. que

8A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Solucin: Mtodo B&B para un PPLE Pura (continuacin 2) Problema P3 Problema P4

x2 5

z = -x1 -x2

2x1 -2x2 1

Minimizar sujeto a

z = x1 x2 x1 + 0 x2 2 x1 2 x2 z= 2 x2 x2 x1 + 2 x2 0 1 9 4 4

Minimizar sujeto a

z = x1 x2 x1 + 0 x2 2 x1 2 x2 z= 2 x2 x2 x1 + 2 x2 0 1 9 4 52 1 x2 4 3

Paso 5: Poda (No ocurre nada en este paso) Paso 6: Control de optimalidad 6.1 Puesto que la lista de problemas a procesar no est vaca, se contina con el problema P2 en el paso 3.

1 -x1 0

2

3

x1 4

5

x1

Paso 3: Solucin (El problema P2 es infactible; por tanto, nada tiene lugar en este paso) Paso 4: Acotacin (No ocurre nada en este paso) Paso 5: Poda 5.2 Puesto que el problema P2 es infactible, la rama correspondiente se poda por infactibilidad.

Paso 6: Control de optimalidad 6.1 Puesto que la lista de problemas no est vaca, se contina con el problema P3 en el paso 3.

Paso 3: Solucin 3.1 31 Se resuelve el problema P3 Solucin: z = -8 para el punto (x1=4 x2=4) 8 =4,

9A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Solucin: Mtodo B&B para un PPLE Pura (continuacin 3) Paso 4: Acotacin 4.1 Puesto que la solucin obtenida cumple las condiciones de integralidad (x1, x2 N), y el valor de la funcin objetivo (8) est entre las cotas inferior y superior, el valor de la cota superior se actualiza de + a 8, y el minimizador obtenido se almacena como mejor candidato a minimizador del problema original. Paso 5: Poda 5.3 Puesto que la solucin actual satisface las condiciones de integralidad, no procede bifurcar adicionalmente, y la rama se poda.

Paso 6: Control de optimalidad p 6.1 Puesto que la lista de problemas a procesar no est vaca, se contina con el problema P4 en el paso 3.

Paso 3: Solucin (El problema P4 es infactible, por tanto, no tiene lugar nada en este paso) Paso 4: Acotacin (No ocurre nada en este paso) Paso 5: Poda 5.2 Puesto que el p q problema P4 es infactible, la rama correspondiente se p , p poda p por infactibilidad. x1 4 P3 x2 4 P1 x1 5 P4

P0 x2 5 P2

Paso 6: Control de optimalidad 6.2 6.3 Puesto que la lista de p q problemas a p procesar est vaca, el p , procedimiento concluye. y Concluido el proceso, como hay un candidato a minimizador, este candidato es la solucin del problema original: Solucin: z = -8 para el punto (x1=4, x2=4)

*

* * No es posible otra bifurcacin10

A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Ejemplo 2: Mtodo B&B para un PPLE Mixta Sea el siguiente PPLE Mixta:

Minimizar sujeto a

z = 3 x1 + 2 x2 x1 2 x2 + x3 + x4 z= 2 x1 + 2 x2 + x3 + x4 x1 , x2 , x3 , x4 = = 5 2 3 2

0

x2 , x3 NSe trata de obtener su solucin mediante el mtodo de B&B.

Solucin: Mtodo B&B para un PPLE Mixta Paso 1: Iniciacin 1.1 1.2 La cota superior inicial es + y la inferior . El problema relajado, denominado P0, es el siguiente:

Minimizar sujeto a

z = 3 x1 + 2 x2 x1 2 x2 + x3 + x4 z = 2 x1 + 2 x2 + x3 + x4 x1 , x2 , x3 , x4 = 5 2 = 3 2 0

Solucin: z = 0 para el punto (x1=0, x2=0, x3=2.5, x4=1.5) 1.2c Esta solucin no satisface las condiciones de integralidad (x3 N). As, el valor de la funcin objetivo se emplea p , j p para actualizar la cota inferior de a 0

11A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Solucin: Mtodo B&B para un PPLE Mixta (continuacin 1) Paso 2: Bifurcacin 2.1 La variable que ha de ser entera x3, mediante bifurcacin da lugar a los dos problemas siguientes: Problema P1 Problema P2

Minimizar sujeto a

z = 3x1 + 2 x2 z= x1 2 x2 + x3 + x4 2 x1 + 2 x2 + x3 + x4 x3 + x4 x1 , x2 , x3 , x4 = = 5 2 3 2

Minimizar sujeto a

z = 3 x1 + 2 x2 z= x1 2 x2 + x3 + x4 2 x1 + 2 x2 + x3 + x4 x3 + x4 x1 , x2 , x3 , x4 = = 5 2 3 2

2 0

3 0

2.2

Estos problemas se colocan en la lista de problemas a procesar.

Paso 3: Solucin 3.1 Se resuelve el problema P1 Solucin: z = 1.5 para el punto (x1=0.5, x2=0, x3=2, x4=0.5) Paso 4: Acotacin 4.1 Puesto que la solucin obtenida satisface las condiciones de integralidad (x2, x3 N), y que el valor de la funcin objetivo (z=1.5) es menor que el valor actual de la cota superior, sta se actualiza de a 1.5 (la solucin ptima est por tanto entre 0 y 1.5), y el minimizador encontrado se almacena como mejor candidato a minimizador del problema original. Paso 5: Poda 5.3 Puesto que la solucin actual satisface las condiciones de integralidad (para x2 y x3), la rama se poda y se continua con el paso 3.

Paso 3: Solucin 3.1 31 Se resuelve el problema P2 P2. Solucin: z = 0.5 para el punto (x1=0 x2=0 25 x3=3 x4=1 25) 05 =0, =0.25, =3, =1.25)

12A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Solucin: Mtodo B&B para un PPLE Mixta (continuacin 2) Paso 4: Acotacin 4.2 Puesto que esta solucin no satisface las condiciones de integralidad (x2N) y el valor correspondiente de la funcin objetivo (0.5) est entre las cotas interior y superior, la cota inferior se actualiza de 0 a 0.5 (la solucin ptima est por tanto entre 0.5 y 1.5). A continuacin se procede a bifurcar sobre la variable x2, lo que da lugar a los dos problemas siguientes: Problema P3 P bl Problema P4 P bl

Minimizar sujeto a

z = 3 x1 + 2 x2 x1 2 x2 + x3 + x4 2 x1 + 2 x2 + x3 + x4 z= x3 + x4 x2 + x3 + x4 x1 , x2 , x3 , x4 = = 5 2 3 2

Minimizar sujeto a

z = 3 x1 + 2 x2 x1 2 x2 + x3 + x4 2 x1 + 2 x2 + x3 + x4 z= x3 + x4 x2 + x3 + x4 x1 , x2 , x3 , x4 = = 3 1 05 2 3 2

3 0 0

4.3 43

Los L problemas generados en el proceso d bif bl d l de bifurcacin se aaden a l li t d problemas que h d resolverse. i d la lista de bl han de l

Paso 5: Poda (No ocurre nada en este paso) Paso 6: Control de optimalidad p 6.1 Puesto que la lista de problemas a procesar no est vaca, se contina con el problema P3 en el paso 3.

Paso 3: Solucin (El problema P3 es infactible; por tanto, nada tiene lugar en este paso) Paso 4: Acotacin (No ocurre nada en este paso) Paso 5: Poda 5.2 Puesto que el p q problema P3 es infactible, la rama correspondiente se p , p poda p infactibilidad. por

13A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Solucin: Mtodo B&B para un PPLE Mixta (continuacin 3) Paso 6: Control de optimalidad 6.1 Puesto que la lista de problemas no est vaca, se contina con el problema P4 en el paso 3.

Paso 3: Solucin 3.1 31 Se resuelve el problema P4 Solucin: z = 2 para el punto (x1=0, x2=1, x3=4.5, x4=0.5) Paso 4: Acotacin (No ocurre nada en este paso) Paso 5: Poda 5.1 Puesto que la solucin obtenida no satisface las condiciones de integralidad (x3N), y el valor correspondiente de la funcin objetivo es mayor que el valor actual de la cota superior, no podr lograrse una mejor solucin que la disponible llevando a cabo bifurcaciones adicionales. As, la rama se poda por cotas adicionales As cotas. P0 Paso 6: Control de optimalidad 6.2 62 6.3 Puesto que la lista de problemas a procesar est vaca el procedimiento concluye vaca, concluye. Concluido el proceso, como hay un candidato a minimizador, este candidato es la solucin del problema original: x3 2 P1 x3 3 P2 x2 0 P3 Solucin: z = 1.5 para el punto (x1=0.5, x2=0, x3=2, x4=0.5) x2 1 P4

*

* * No es posible otra bif rcacin bifurcacin14

A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Ejemplo 3: Mtodo B&B para un PPLE Binaria Obtener la solucin mediante el mtodo de B&B del PPLE Binaria mostrado en la transparencia 5 del Tema 2 pero con los datos de la siguiente tabla. Adems, el capital total para la inversin es de 10 M euros.Decisiones Instalar factora en Zaragoza Instalar factora en Sevilla Construir almacn en Zaragoza Construir almacn en Sevilla Beneficio estimado 9 M euros 5 M euros 6 M euros 4 M euros Capital requerido 6 M euros 3 M euros 5 M euros 2 M euros

Maximizar sujeto a

z = 9 x1 + 5 x2 + 6 x3 + 4 x4 6 x1 + 3 x2 + 5 x3 + 2 x4 x3 + 2 x4 z = x1 + 3 x2 + 5 x3 + 2 x4 x2 + 5 x3 + 2 x4 10 1 0 0

x1 , x2 , x3 , x4

{0,1}

Solucin: Mtodo B&B para un PPLE Binaria Paso 1: Iniciacin 1.1 1.2 La cota superior inicial es + y la inferior . El problema relajado, denominado P0, es el siguiente://Variables dvar int x1 dvar int x2 dvar int x3 dvar int x4 de in in in in decisin 0..1; 0..1; 0..1; 0..1;

//Funcin objetivo maximize 9*x1 + 5*x2 + 6*x3 + 4*x4; //Restricciones subject to { 6*x1 + 3*x2 + 5*x3 + 2*x4 1 3(0) 2(0) > 1

A veces, fijar el valor de una variable en una restriccin puede generar que se pueda fijar el valor de otras variables en otras restricciones. Por ejemplo, supngase la siguiente restriccin:

3x1 + x2 2 x3 2que sobre y sobre

da lugar a da lugar a d l

x1 = 1

ya que x4 = 0 y

3(0) + 1(1) 2(0) < 2 x5 = 0

x1 + x4 + x5 1 x5 + x6 0

x6 = 0

22A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

En algunas ocasiones, es posible combinar una o ms restricciones mutuamente exclusivas junto con otra restriccin para fijar el valor de alguna variable como en el ejemplo siguiente:

8 x1 42 5 x3 + 3 x4 2 x2 + x3 1

x1 = 0

ya que

8(1) max {4,5} (1) + 3(0) > 2

Para terminar, y sin entrar en ms detalles, simplemente comentar que otras alternativas para el finado de variables que incluyen criterios de optimalidad, y que el fijado de variables puede llegar a tener un impacto dramtico en la reduccin del tamao del problema pudiendo llegar al 50% o superior. 2. 2 Eliminacin de restricciones redundantes Si una restriccin funcional se satisface hasta para los peores valores de sus variables binarias, entonces es redundante y puede ser eliminada del modelo. Para una restriccin los peores valores de sus variables binarias son 1 siempre y cuando sus coeficientes sean no negativos y 0 en caso contrario. Para una restriccin los peores valores de sus variables binarias son 0 siempre y cuando sus coeficientes sean no negativos y 1 en caso contrario.

Estos son algunos ejemplos:

3 x1 + 2 x2 6 3 x1 2 x2 3 3 x1 2 x2 3

es redundante, es redundante, es redundante, d d

ya que ya que ya que

3(1) + 2(1) 6 3(1) 2(0) 3 3(0) 2(1) 3

En la mayora de los casos en los que una restriccin resulta ser redundante, sta no lo era en el modelo original, pero si en el modelos resultantes tras el fijado de variables. Como puede observarse, esto ocurre en la mayora de los ejemplos de las dos transparencias anteriores. anteriores

23A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

3. Estrechamiento de restricciones Considrese el problema siguiente:

Maximizar sujeto a

z = 3x1 + 2 x2 z= 2 x1 + 3 x2 4 x1 , x2

MaximizarProblema relajado

z = 3x1 + 2 x2 z= 2 x1 + 3 x2 4 x1 , x2

sujeto a

{0,1}x2

[ 0,1]

Dicho problema tan solo tiene tres soluciones factibles, (0,0), (0,1) y (1,0), siendo (1,0) la ptima con un valor de z=3. Sin embargo, como se muestra en la figura la solucin ptima embargo figura, del problema relajado es (1,2/3) con un valor de z=4.33, que no est demasiado cerca de la solucin ptima del problema binario. As, el algoritmo B&B debera ejecutar varias iteraciones hasta identificar el ptimo del problema binario.

z = 3x1 + 2x2Solucin ptima del problema relajado

1

2x1 + 3x2 4Solucin ptima del PPLE Binario

1

x1

Ntese ahora qu ocurre cuando la restriccin funcional del problema El problema binario permanece igual, con tres soluciones factibles, (0,0), (0,1) y (1,0), siendo (1,0) la ptima con un valor de z=3.

2 x1 + 3x2 4

es sustituida por esta otra

x1 + x2 1 :

x2 x1 + x2 1 1 z = 3x1 + 2x2Solucin ptima de ambos problemas, relajado y PPLE Binario

Sin embargo, la regin factible del problema relajado se ha reducido Sustancialmente hasta el punto de que su solucin coincide con la del problema binario original sin necesidad de llevar a cabo ninguna iteracin del algoritmo B&B. As, se ha conseguido reducir la regin factible sin elimina ninguna solucin factible del problema binario original.

1

x1

24A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Procedimiento para el estrechamiento de restricciones Como se ha visto en el ejemplo anterior el mtodo resulta bastante sencillo para dos variables en donde la regin factible es fcilmente anterior, variables, visualizable de forma grfica. Sin embargo, los mismos principios para la reduccin de la regin factible sin eliminar ninguna solucin del problema binario original pueden aplicarse a un problema con cualquier nmero de variables siguiendo el procedimiento siguiente: Sea la restriccin 1. Calcular S =

a1 x1 + a2 x2 +

+ an xn b :

j =1 / a j > 0

n

aj

2. Identificar los a j 0 tal que S < b + a j (a) Si no hay ninguno, no es posible reducir la regin factible. (b) Si a j > 0 continuar con el paso 3. Si 3. Calcular

a j < 0 continuar con el paso 4.aj = aj y b = by volver al paso 1.

aj = S b y

b = S a j , resetear

4. Incrementar

a j a a j = b S y volver al paso 1.

Ejemplo: Apliquemos dicho procedimiento a la restriccin 2 x1 + 3 x2 4 1. S=5 2. Tanto a1 como a2 satisfacen la restriccin del punto 2. Se toma a1 arbitrariamente. 3. La nueva restriccin estrechada resulta ser: x1 + 3 x2 3 1. S=4 2. Tan solo a2 satisface la restriccin del punto 2. 3. La nueva restriccin estrechada resulta ser: x1 + x2 1 1. S=2 2. Ningn aj satisface la restriccin del punto 2.

25A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Generacin de planos de corte pata PPLE Binarios Un plano de corte (o simplemente corte) para cualquier PPLE es una restriccin funcional que reduzca la regin factible que reduzca la regin factible de la relajacin lineal del problema original sin eliminar sin eliminar ninguna de sus soluciones factibles. As, por ejemplo, el mtodo de estrechamiento de restricciones visto anteriormente puede considerarse como un mtodo de generacin de planos de corte para PPLE Binarios. Adicionalmente, existen otra serie de tcnicas para generar planos de corte que reduzcan la regin factible acelerando el proceso mediante el cual el algoritmo B&B alcanza la solucin ptima. A continuacin se muestra una de tales tcnicas para PPLE Binarios. Para ilustrar dicho mtodo, considrese de nuevo el problema mostrado en el Ejemplo 3. P0

Maximizar sujeto a

z = 9 x1 + 5 x2 + 6 x3 + 4 x4 6 x1 + 3 x2 + 5 x3 + 2 x4 z= x1 + 3 x2 + 5 x3 + 2 x4 x2 + 5 x3 + 2 x4 10 0 0Algoritmo B&B con el plano de corte

x1 = 1 P1 P2 x2 = 0 P3 x2 = 1 P4 x3 = 0 P5 x3 = 1 P6

x1 , x2 , x3 , x4

{0,1}

*

Recurdese que la solucin de la relajacin lineal asociada P0 es z = 16.5 para el punto (x1=5/6, x2=1, x3=0, x4=1). Como se ver en el procedimiento mostrado en la siguiente transparencia, la primera de las restricciones junto con el hecho de que las variables son binarias da lugar al siguiente plano de corte x1 + x2 + x4 2

*

*

*

Ntese como dicho corte elimina parte de la regin factible para el problema relajado P0 (incluida su solucin ptima), pero no elimina ninguna de las soluciones enteras factibles del problema original. As, simplemente aadiendo dicho plano de corte al modelo original, el rendimiento del algoritmo B&B mejora en los dos aspectos siguientes: En primer lugar, la solucin ptima del nuevo problema relajado P0 resulta ser z = 15.2 para el punto (x1=1, x2=1, x3=0.2, x4=0), por lo que la cota superior se actualiza de a 15.2 en lugar de a 16.5. En segundo lugar, se necesita una iteracin menos del mtodo B&B para alcanzar la solucin ptima ya que la solucin ptima del problema relajado P5 resulta ser z = 14 para el punto (x1=1, x2=1, x3=0, x4=0), podndose por tanto dicha rama por integralidad. A continuacin la rama correspondiente al nodo P3 se poda de nuevo debido al punto 5.1 resultando la solucin de P5 el ptimo.

26A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Procedimiento para la generacin de un plano de corte en PPLE Binaria 1. 1 Considrese cualquier restriccin funcional del tipo con todos los coeficientes no negativos negativos. 2. Encontrar el conjunto de variables (denominado envoltura mnima de la restriccin) tal que: (a) La restriccin no se satisface si cada variable de la envoltura mnima vale 1 y el resto 0. (b) Pero la restriccin pasa a ser satisfecha si el valor de cualquier variable de la envoltura mnima pasa de valer 1 a valer 0. 3. Denotando N como el nmero de variables de la envoltura mnima, el plano de corte resultante tiene la forma

xi envoltura mnima

xi N 1

Ejemplo: Apliquemos dicho procedimiento a la restriccin

6 x1 + 6 x2 + 5 x3 + 2 x4 10

1. La restriccin satisface el criterio especificado en el paso 1. 2. 2 La envoltura mnima est formada por las variables (x1, x2, x4) ya que: ), (a) (1, 1, 0, 1) no satisface la restriccin. (b) Pero la restriccin pasa a ser satisfecha si el valor de cualquiera de las variables (x1, x2, x4) pasa de valer 1 a valer 0. 3. Puesto que N 3 el plano d corte resultante es 3 P t N=3, l l de t lt t

x1 + x2 + x4 2

Ntese que dicha restriccin tiene una segunda envoltura mnima: 2. La envoltura mnima est formada por las variables (x1, x3), ya que: (a) (1, 0, 1, 0) no satisface la restriccin. (b) Pero la restriccin pasa a ser satisfecha si el valor de cualquiera de las variables (x1, x3) pasa de valer 1 a valer 0. 3. Puesto que N=2, el plano de corte resultante es N 2,

x1 + x3 1

27A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Mtodo de los cortes de Gomoroy Un mtodo alternativo de solucin de PPLE es el procedimiento de los cortes de Gomory. En esta tcnica, se resuelve el problema original relajado en el que se incluyen restricciones adicionales, que reducen la regin factible sin excluir soluciones que cumplen las condiciones de optimalidad. En cada iteracin se aade una restriccin que se denomina corte de Gomory. Este procedimiento genera progresivamente una envoltura convexa de la regin factible, lo que origina soluciones que cumplen las condiciones de integralidad. Generacin de un corte La regin factible del problema original es Ax = b, que empleando la particin estndar del simplex se escribe como:

(B

x N ) B xN

=b

Bx B + Nx N = bb = B 1 b

x B + B 1 Nx N = B 1bx B + Ux N = b

Denotando por

U = B 1 N

y

Sea xB una variable bsica que ha de ser entera pero no lo es es. La fila correspondiente a esta variable en la ecuacin anterior es:

xBi + uij xN j = bij

Puesto que la solucin obtenida es bsica y factible la variables xNj, que son no bsicas son cero; por tanto factible, bsicas, tanto, es no entera, b ha de ser no entera.i

b = x B , y puesto que xBi

Por otra parte, cada elemento uij se puede expresar como suma de una parte entera (positiva, negativa o nula), eij, y una fraccin no negativa menor que 1, fijj:

uij = eij + f ij

; jei es un entero (positivo o negativo) y f i una fraccin noi

De forma anloga, b se puede descomponer como b = e + f donde i i i i negativa menor que 1. Obsrvese que algunos f ij pueden ser cero pero f 1 cero,

ha de ser positivo positivo.

28A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Sustituyendo

uij = eij + f ij

; j

y

bi = ei + f i

en

xBi + uij xN j = bi , se obtiene:j

xBi + ( eij + f ij ) xN j = ei + f ij

xBi + eij xN j ei = fi fij xN jj j

En la ecuacin anterior, el trmino de la izquierda ha de ser entero puesto que todas sus variables son enteras. Por tanto, el trmino de la derecha tambin ser entero. Por otra parte, tanto fij como xNj son no negativos para todo j, por tanto el trmino Finalmente, Finalmente el trmino de la derecha de la ecuacin precedente precedente, entero, y menor que una fraccin positiva,

fj

ij

xN j es no negativo.

f i f ij xN jj

es a la vez:

fi , menor que 1f i f ij xN jj

y puesto que los enteros que satisfacen esa condicin son 0,1,2, . . ., entonces Por tanto

es un entero no positivo.

f i f ij xN j 0j

fj

ij

xN j f i 0

Esta ltima desigualdad se denomina corte de Gomory asociado a la variable bsica xBi que ha de ser entera pero no lo es. A continuacin se resumen las ecuaciones utilizadas en el mtodo de los cortes de Gomoroy: 1. 1 2.

U = B 1 N

y

b = B 1 b

x B + Ux N = b

xBi + uij xN j = bij

uij = eij + f ij

; j

y

bi = ei + f i

3. 3

f i f ij xN j 0j

29A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Algoritmo de los cortes de Gomoroy para un PPLE A continuacin se enumeran los pasos del algoritmo de los cortes de Gomoroy para un PPLE: Paso 1: Iniciacin 1.1 Se resuelve el problema original sin restricciones de integralidad. 1.1.a 1.2.b 12b 1.2.c Si la solucin no est acotada, el problema original o no est acotado y se para. Si el problema es infactible el problema original tambin lo es y se para infactible, para. En cualquier otro caso, se continua con el paso siguiente.

Paso 2: Control de optimalidad 2.1 2.2 Si la solucin obtenida cumple las condiciones de integralidad, se para dado que esta solucin es ptima. En cualquier otro caso, se continua con el paso siguiente.

Paso 3: Generacin de un corte 3.1 Se emplea una variable bsica que ha de ser entera pero no lo es para generar un corte de Gomory.

Paso 4: Resolucin 4.1 Se aade el corte de Gomory obtenido al problema previamente resuelto, se resuelve el problema resultante y se contina con el paso 2.

Deben adems tenerse en cuenta los aspectos siguientes: Obsrvese que el nmero de restricciones crece con el nmero de iteraciones. Puesto que en cada iteracin se aade una nueva restriccin debe emplearse para la resolucin del problema el mtodo simplex restriccin, dual. Esto es as puesto que al aadir una nueva restriccin, el problema primal correspondiente se hace infactible pero su dual permanece factible, aunque no ptimo. Por tanto, para resolver el nuevo problema puede partirse de la solucin dual del problema previo (sin restriccin adicional), lo que supone una ventaja computacional importante. importante

30A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Ejemplo 4: Algoritmo de los cortes de Gomoroy Sea el siguiente PPLE Pura:

Maximizar sujeto a

z = 120 x1 + 80 x2 122 x1 + 0 x2 z= 7 x1 + 8 x2 x1 , x2 6 0 28

x1 , x2

N

Se trata de obtener su solucin mediante el mtodo de los cortes de Gomoroy.

Solucin: Algoritmo de los cortes de Gomoroy Paso 1: Iniciacin 1.1 El problema relajado, es el siguiente: x2 2x1 + x2 6 7x1 + 8x2 28

Maximizar sujeto a

z = 120 x1 + 80 x2 122 x1 + 0 x2 + x3 + x4 z = 127 x1 + 8 x2 + x3 + x4 x1 , x2 , x3 , x4 = 6 0 = 28

3 2 1 x2 0 x1 0

Solucin: z = 391.11 para el punto (x1=5, x2=4.5)

x* 20 9 b = x B = 1 = 14 * x2 9 1.2c 12 Se S continua con el paso siguiente. i l i i

1

2

3

x1

31A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Solucin: Algoritmo de los cortes de Gomoroy (continuacin 1) Paso 2: Control de optimalidad 2.2 Como la solucin obtenida no cumple las condiciones de integralidad, se continua con el paso siguiente.

Paso 3: Generacin de un corte 3.1 Si se emplea la variable x2 para generar un corte de Gomory, se obtiene:

2 1 1 0 8 9 U =B N = = 7 7 8 0 1 91

1

1 9 2 9

xBi + uij xN j = bij

x2

7 2 14 x3 + x4 = 9 9 9

Por tanto, se obtiene: tanto

x2

u21 = e21 + f 21 u22 = e22 + f 22 b2 = e2 + f 2

7 2 = 1 + 9 9 2 2 = 0+ 9 9 14 5 = 1+ 9 9

f 21 =

2 9 2 f 22 = 9 5 f2 = 9

2x1 + x2 6 3 2 1 x2 0 x1 0

7x1 + 8x2 28

Primer corte x1 + x2 7/2

Y el corte resulta ser:

fi f ij xN jj

5 2 0 9 9 x3 + x4

2 x3 0 9 x4 5 2

1

2

3

x1

Ntese que este corte puede expresarse en funcin de las variables originales x1 y x2, de la forma siguiente. Empleando las restricciones de igualdad del problema relajado en forma estndar, x3 y x4 pueden expresarse en funcin de x1 y x2 :

x3 = 6 2 x1 x2 x4 = 28 7 x1 8 x2As, el corte en funcin de las variables x1 y x2 resulta ser x1 + x2 7 , que como puede verse en la figura da lugar a una 2 reduccin efectiva de la regin factible y sin embargo no se excluye ninguna solucin entera y, embargo, entera.

32A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Solucin: Algoritmo de los cortes de Gomoroy (continuacin 2) Paso 4: Resolucin 4.1 Se resuelve el nuevo problema con el primer corte aadido como restriccin adicional. Obsrvese que el corte de Gomory se escribe incluyendo una variable artificial x5:

Maximizar sujeto a j t

z = 120 x1 + 80 x2 122 x1 + 0 x2 + x3 + x4 x5 127 x1 + 8 x2 + x3 + x4 x5 z= x3 + x4 x5 x1 , x2 , x3 , x4 , x5

x2

= 6 = 28 5 = 2 0* x1 5 2 * b = x B = x2 = 1 x* 5 4 2

2x1 + x2 6 3 2 1 x2 0 x1 0

7x1 + 8x2 28

Primer corte Pi t x1 + x2 7/2

Solucin: z = 380 para el punto (x1=5/2, x2=1)

1

2

3

Paso 3 G P 3: Generacin de un corte i d t 3.1 Si se emplea la variable x1 para generar un corte de Gomory, se obtiene:

x1

2 1 0 1 0 1 1 9 2 U = B 1 N = 7 8 1 0 0 = 1 9 0 0 1 1 1 1 1 Por tanto, se obtiene:

1

xBi + uij xN j = bij

1 5 x1 + x3 x5 = 9 2

Y el corte resulta ser:

u11 = e11 + f11 u12 = e12 + f12 b1 = e1 + f1

1 = 1+ 0 1 8 = 1 + 9 9 5 1 = 2+ 2 2

f11 = 0 8 f12 = 9 1 f1 = 2

fi fij xN j 0 j

x5

9 16

1 8 x3 0 0 2 9 x5 55 x1 + x2 16

33A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Solucin: Algoritmo de los cortes de Gomoroy (continuacin 3) Paso 4: Resolucin 4.1 Se resuelve el nuevo problema con el primer corte aadido como restriccin adicional. Obsrvese que el corte de Gomory se escribe incluyendo una variable artificial x6:

Maximizar sujeto sujeto a

z = 120 x1 + 80 x2 122 x1 + 0 x2 + x3 + x4 x5 x6 127 x1 + 8 x2 + x3 + x4 x5 x6 z= x3 + x4 x5 x6 x5 x6 x1 , x2 , x3 , x4 , x5 , x6

x2

= 6 = 28 5 = 2 9 = 16 0

2x1 + x2 6 3 2 1 x2 0 x1 0

7x1 + 8x2 28

Primer corte Pi t x1 + x2 7/2 Segundo corte x1 + x2 55/16

Solucin: z = 377.5 para el punto (x1=41/16, x2=7/8)

Paso 3: Generacin de un corte 3.1

* 41 x1 16 * 7 x 8 b = x B = 2 = 49 x* 16 4 9 x* 5 16

1

2

3

x1

Si se emplea la variable x2 para generar un corte de Gomory, se obtiene:

2 1 0 0 1 0 1 1 9 2 1 9 7 8 1 0 0 0 = 1 U=B N = 0 0 1 1 1 0 1 1 0 0 0 1 0 1 0 1Por tanto, se obtiene:

1

xBi + uij xN j = bij

x2 x3 +

2 7 x6 = 9 8

u21 = e21 + f 21 u22 = e22 + f 22 b2 = e2 + f 2

1 = 1 + 0 2 2 = 0+ 9 9 7 5 = 0+ 8 8

f 21 = 0 2 9 7 f2 = 8 f 22 =

fi fij xN j 0 j

7 0 8

2 x3 0 9 x6

x6

63 16

x1 + x2 3

34A. HERRN, INTRODUCCIN A LA PROGRAMACIN MATEMTICA, MSTER UNIVERSITARIO EN INGENIERA DE SISTEMAS Y DE CONTROL

Solucin: Algoritmo de los cortes de Gomoroy (continuacin 4) Paso 4: Resolucin 4.1 Se resuelve el nuevo problema con el primer corte aadido como restriccin adicional. Obsrvese que el corte de Gomory se escribe incluyendo una variable artificial x7:

Maximizar sujeto a

z = 120 x1 + 80 x2 122 x1 + 0 x2 + x3 + x4 x5 x6 x7 127 x1 + 8 x2 + x3 + x4 x5 x6 x7 x3 + x4 x5 x6 x7 z= x5 x6 x7 x6 x7 x1 , x2 , x3 , x4 , x5 , x6 , x7

x2

= 6 = 28 5 = 2 9 = 16 = 63 16

2x1 + x2 6 3 2 1 x2 0 x1 0

7x1 + 8x2 28

Primer corte Pi t x1 + x2 7/2 Segundo corte x1 + x2 55/16 Tercer corte x1 + x2 3 (solucin ptima)

0

Solucin: z = 360 para el punto (x1=3, x2=0)

1

2

3

x1

Paso 2: Control de optimalidad 2.1 Como la solucin obtenida cumple las condiciones de integralidad, se para dado que esta solucin es ptima.

Solucin: z = 360 para el punto (x1=3, x2=0)

//Variables de decisin dvar int+ x1; dvar int+ x2; //Funcin objetivo maximize 120*x1 + 80*x2; //Restricciones subject to { 2*x1 + x2