26
INTRODUCCIÓN A LA MODELACIÓN MATEMÁTICA Y OPTIMIZACIÓN Carlos Julio Vidal Holguín UNIVERSIDAD DEL VALLE FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA INDUSTRIAL Y ESTADÍSTICA INTRODUCCIÓN A LA MODELACIÓN MATEMÁTICA Y OPTIMIZACIÓN

INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

INTRODUCCIÓN A LA MODELACIÓN MATEMÁTICA

Y OPTIMIZACIÓN

Carlos Julio Vidal Holguín

UNIVERSIDAD DEL VALLE FACULTAD DE INGENIERÍA

ESCUELA DE INGENIERÍA INDUSTRIAL Y ESTADÍSTICA

INTRODUCCIÓN A LA MODELACIÓN MATEMÁTICA

Y OPTIMIZACIÓN

Page 2: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

UNIVERSIDAD DEL VALLE FACULTAD DE INGENIERÍA

ESCUELA DE INGENIERÍA INDUSTRIAL Y ESTADÍSTICA

INTRODUCCIÓN A LA MODELACIÓN MATEMÁTICA Y OPTIMIZACIÓN

Programación Lineal, Programación No Lineal y Teoría de Redes: Formulación y solución de modelos, teoría de dualidad, análisis de

sensibilidad, problema del transporte y problemas seleccionados de redes. (Versión 1.5 Agosto de 2005)

Escrito y recopilado por Carlos Julio Vidal Holguín

Cali, Agosto de 2005

Page 3: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 40

1. TEORÍA DE DUALIDAD

El problema dual puede definirse en forma matemática. Sin embargo, es adecuado comenzar por una interpretación económica.

Supóngase que en una empresa se producen dos artículos: 1 y 2. Las utilidades netas

unitarias son respectivamente, 35 y 80 u.p/unidad. Los requerimientos unitarios y la disponibilidad de las máquinas son:

ARTICULO

1 2 5 2 3 4

Disponibilidad 300 500

El modelo de PL correspondiente para este enunciado sería:

0)X,(X

2) (Recurso 5004X5X

1) (Recurso 30032

:a Sujeto

8035

21

21

21

21

≥≤+≤+

+=

XX

XXZMAXIMIZAR

(Problema Primal)

Donde: X1= Número de artículos tipo 1 a producir, X2 = Número de artículos tipo 2 a

producir. A este problema anterior se le denomina problema primal. Ahora, los recursos, en este caso las máquinas, pueden ser dedicados a otra actividad

diferente a la de producir los artículos 1 y 2. Para ello, sean:

Los W1, W2 se denominan precios sombra o costos de oportunidad y representan el valor de un recurso cuando se dedica a la mejor alternativa posible. Los coeficientes 2, 5, 3 y 4 son unidades de recurso Ri necesarias para la producción de una unidad de artículo i (i = 1,2). Si se efectúa el producto:

y el producto:

unidad

máqhr 1..

unidad

máqhr 2..

2../.2 recurso de u.p/unidad

1../.1 recurso de u.p/unidad

2

1

máqhrpuW

máqhrpuW

→→→→

1..

.

.

.

1..

.2

1

11 produnid

pu

Runid

pu

produnid

RunidW =×⇒

1..

.

.

.

1..

.5

2

22 produnid

pu

Runid

pu

produnid

RunidW =×⇒

Page 4: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

y, si se efectúa la suma:

⇒+ 21 52 WW Ganancia obtenida si los recursos se dedican a

otra actividad [u.p/unid. prod. 1]

Por lo tanto, debe esperarse que:

3552 21 ≥+ WW [u.p/unid. prod. 1]

y, análogamente: 8043 21 ≥+ WW [u.p/unid. prod. 2]

Para hallar la función objetivo del problema que se está construyendo a partir del

problema primal, puede pensarse así: se desea minimizar el costo total de los recursos involucrados en las otras actividades. Así, el problema dual es:

0)W,(W

804W3W

3552

:a Sujeto

500300

21

21

21

21'

≥≥+≥+

+=

WW

WWZMINIMIZAR

(Problema Dual)

La solución del problema dual da la información acerca de los “costos de

oportunidad” de los recursos o “precios sombra”, es decir, la tasa a la cual podría incrementarse (o decrecer) la función objetivo del problema primal, incrementando (o disminuyendo) ligeramente la cantidad de recurso. Esto será aclarado más adelante.

Por lo tanto, la solución del problema dual da una valiosa información: el precio

unitario adicional máximo que puede pagarse por cada unidad adicional de recurso escaso. Esto se concluye de la propia definición de la función objetivo del problema dual, ya que, como se verá posteriormente, el valor óptimo de la función objetivo del problema primal es igual al valor óptimo de la función objetivo del problema dual ( o sea Zmáx = Z'

mín). Matricialmente estos dos problemas pueden definirse como:

Page 5: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 42

Primal Problema

0X

bAX :a Sujeto

CX

≥≥≥≥

≤≤≤≤

====ZMAX

(4.1) 1

Dual Problema

0W

CAW :a Sujeto

bW

T

'

≥≥≥≥

≥≥≥≥

==== TZMIN

(4.2)

1.1. RELACIONES ENTRE LOS PROBLEMAS PRIMAL Y DUAL

TEOREMA 4.1: Sean X y W dos soluciones factibles del problema primal y dual,

respectivamente; entonces se cumple que: bWCX T≤

Demostración: Del problema primal:

Premultiplicando por WT:

(4.3) Ahora, del problema dual:

Postmultiplicando por X:

(4.4) Si se combinan las desigualdades (4.3) y (4.4), se obtiene:

q.e.d

TEOREMA 4.2: Sean X y W dos soluciones factibles para los problemas primal y dual respectivamente. Si se cumple que:

entonces X y W son las soluciones óptimas de los problemas primal y dual

respectivamente. Demostración: a) Tómese la pareja de soluciones factibles ),ˆ( WX . Del Teorema 4.1 se concluye que:

bWXC T≤ˆ pero como bWXC Tˆˆ = , por hipótesis, entonces, bWbW TT ≤ˆ , donde TW es

cualquier solución factible del problema dual. Por lo tanto, bW Tˆ será el mínimo y es entonces la solución óptima del problema dual.

1 Más adelante se verá que cualquier problema de PL tiene su dual asociado. Sin embargo, para hallarlo debe estar en la forma mostrada, o sea con función objetivo de maximización y restricciones menor ó igual (≤).

bAX ≤

bWAXW T≤T

CAW ≥T

CXAXW ≥T

bWCX T≤

bWXC Tˆˆ =

Page 6: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

b) Tómese ahora la pareja )ˆ,( WX ; por el Teorema 4.1:

Pero:

bWXC Tˆˆ = , por hipótesis. Luego:

XCCX ˆ≤ donde X es cualquier solución factible del problema primal. Así, XC ˆ será el máximo y

es entonces la solución óptima del primal (q.e.d). 1.1.1. Solución del Problema Dual

El problema dual asociado a un problema primal está íntimamente ligado a éste. Se va

a demostrar que si se resuelve el problema primal mediante el algoritmo SIMPLEX, el problema dual aparece resuelto automáticamente en el tablero final. Por lo tanto, basta sólo con resolver uno de los dos problemas!

Supóngase que se ha resuelto el problema de los transformadores mediante el método

SIMPLEX. El modelo original, problema primal, es el siguiente:

[ ] ( )[ ] ( )[ ] ( )

( ) 0,

..900

..9804.1

hom.14003

7

:

700400

21

3221

221

121

21

≥≤+

≤+

≤+

+=

XX

RmaqhrXX

RmaqhrXX

RbrehrXX

aSujeto

XXZMaximizar

q

El problema dual asociado será, por lo tanto:

El tablero final del método SIMPLEX aplicado al problema primal es el siguiente

(Compruébelo!!):

Var. Básicas X1 X2 S1 S2 S3

X2 X1 S3

700 400 0

450 350 100

0 1 0

1 0 0

15/14 -3/2 3/7

-15/14 5/2

-10/7

0 0 1

bWCX Tˆ ≤

0)W,W,(W

0071.4WW3

7

400 W

:a Sujeto

9009801400 MINIMIZAR

321

321

321

321'

≥++

≥++

++=

W

WW

WWWZ

BC BX

Page 7: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 44

455000

400 0

700 0

150 150

250 250

0 0

Se va a plantear la hipótesis de que la solución óptima del problema dual aparece debajo de la inversa de la base óptima, en la fila de los Zj (o sea que la solución óptima del

dual es ). Las condiciones de optimalidad del primal son:

Esto es equivalente a decir:

O, en forma compacta:

Si , entonces Con lo que se conseguiría cumplir con las restricciones del dual. Obsérvese que las

condiciones de optimalidad del problema primal son equivalentes a las condiciones de factibilidad del problema dual.

Falta por demostrar que la solución del dual propuesta satisface las condiciones de no

negatividad y el valor óptimo de la función objetivo. En particular para las variables de holgura, las cuales forman la matriz idéntica, se cumple que:

pues sus coeficientes en la función objetivo son iguales a cero. Luego, si , se cumple que:

, o sea que se trata de una solución factible del problema dual. Pero, será la óptima?? Si se evalúa el valor de la función objetivo para esta solución, se obtiene:

Luego, de acuerdo con el Teorema 4.2 dicha solución debe ser óptima. (q.e.d)

jZ

jj CZ −

1−BCB

jCZ jj ∀≥− ,0

jB jCBC ≥− a1

CABC ≥−1B

1−= BCW BT

CAW ≥T

01 ≥− IBCB

1−= BCW BT

0≥TW

ZXCbBCbWZ ==== −BBB

1T1

Solución óptima del problema dual asociado

Page 8: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Conclusión: la solución óptima del problema dual aparece en el tablero final SIMPLEX del problema primal en la fila de los Zj, debajo de las columnas que forman la inversa de la base óptima., o sea que 1−−−−==== BCW B

T . Para el problema de los transformadores, la solución óptima del problema dual

asociado es:

O sea que si se incrementa en 1 unidad el recurso hora-hombre, la función objetivo se

incrementaría en 150. Si se incrementa en una unidad el recurso hora-máquina1, la función objetivo se incrementaría en 250, pero si se incrementa el recurso hora-máquina2, la función objetivo permanecería constante ya que se trata de un recurso sobrante. Lo anterior es válido solo dentro de cierto rango, lo que se verá más adelante. En otras palabras, lo máximo que estaría dispuesto a pagarse adicionalmente por casa unidad extra de hora-hombre y de hora-máquina1 (recursos escasos) sería $150 y $250 respectivamente.

1.1.2. El problema Dual Adaptado a Otros Modelos de Programación Lineal

Se va a desarrollar la forma de obtener el problema dual de cualquier modelo de programación lineal.

Considérese, por ejemplo:

Para obtener el problema dual, el modelo debe llevarse a la forma dada en el modelo

generalizado (4.1). La función objetivo se multiplica por (-1) y queda entonces convertida a una función de Maximización. Las restricciones de ≥ basta con multiplicarlas por (-1) y las restricciones de igualdad se reemplazan por dos restricciones de desigualdad: una de ≥ y otro de ≤. Nótese que aquí no interesa que queden valores negativos en los términos del lado derecho (Vector b)

Así, el modelo del ejemplo anterior quedaría:

455000mín Z0 250 150 l321 ==== WWW

0 ) ,(

1823

122

4 :a Sujeto

53 Z

21

21

2

1

21

≥≥+

=≤

+=

XX

XX

X

X

XXMIN

Page 9: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 46

( ) 0,

1823

122

122

4

:

53

21

21

2

2

1

21

≥−≤−−−≤−

≤≤

−−=

XX

XX

X

X

X

aSujeto

XXUMaximizar

Por lo tanto, el problema dual asociado sería:

( )

( )( ) 0,,,

522

33

:

18124'

4321

432

41

4321

≥−≥−−

−≥−

−−+=

WWWW

WWW

WW

aSujeto

WWWWZMinimizar

Obsérvese que las variables duales W2 y W3 aparecen siempre en la forma (W2 − W3) y

por lo tanto podrían ser reemplazadas por una sola variable W= W2 − W3 no restringida en signo.

Conclusión: La variable dual asociada a una restricción de igualdad del problema

primal, aparece en el problema dual asociado como una variable no restringida en signo.

1.1.3. Otras Propiedades del Problema Dual

Propiedad de simetría: El problema dual del dual es el problema primal original. Principio de holgura complementaria: a) Si una variable de holgura Si (añadida a la i-ésima restricción) del problema primal

aparece como básica en la solución óptima del problema primal, entonces la correspondiente variable dual Wi tomará valor cero en la solución óptima del dual.

b) Si la variable de decisión Xj (no de holgura) aparece como básica en la solución

óptima del primal, entonces en la correspondiente solución óptima del dual la j-ésima restricción dual es una igualdad estricta, o, equivalentemente, su variable dual de holgura asociada es igual a cero.

Page 10: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

1.2. APLICACIONES DE LA TEORÍA DE DUALIDAD

Las aplicaciones más importantes de la teoría de dualidad son: a) Interpretación económica del problema primal (ya ilustrada). b) Ahorro en cálculos en la solución de modelos de PL. c) Algoritmo SIMPLEX dual. d) Utilidad en análisis de sensibilidad. Se ilustrará a continuación las aplicaciones (b) y (c) y, posteriormente en una sección

independiente, la (d).

1.2.1. Ahorro en Cálculos

Supóngase que se tiene que resolver el problema:

Obsérvese que el problema tiene dos variables de decisión y cinco restricciones. Así,

las bases serían de orden m = 5. Pero, si se plantea el problema dual asociado, tendría cinco variables duales y dos restricciones, por lo tanto se trabajaría con bases de orden 2, lo cual es más manejable manual y computacionalmente. Obviamente, esta aplicación adquiere mucho más sentido en grandes problemas que se presentan en la vida real.

Ejercicio: Plantee el correspondiente problema dual asociado y resuélvalo. Muestre

que la solución óptima del dual es:

Y que la solución óptima del primal es:

Ilustre con este ejemplo el principio de holgura complementaria.

0 ) ,(

1

15 3

7

8

6 :a Sujeto

34 Z

21

2

21

21

2

1

21

≥≤−≤+≤+≤≤

+=

XX

X

XX

XX

X

X

XXMAX

52mín Z2

1

2

5 0 l

43521 ====== WWWWW

52 Zmáx3 4 21 === XX

Page 11: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 48

1.2.2. El Algoritmo SIMPLEX Dual

El algoritmo SIMPLEX normal mantiene la factibilidad y busca la optimalidad. El algoritmo SIMPLEX dual mantiene el criterio de optimalidad y trata de buscar la factibilidad. Este algoritmo puede aplicarse si al comienzo del proceso se cumplen las condiciones de OPTIMALIDAD, bajo una solución NO-FACTIBLE.

Las reglas para el algoritmo SIMPLEX dual son: a) Se busca primero la variable candidata a salir de la base: sale de la base aquella

variable cuyo valor sea “el más negativo” (la “menos factible”). b) Para saber cual variable entra a la base se calcula:

donde k es el subíndice asociado a la variable que va a salir de la base. c) La reducción de Gauss-Jordan es semejante a la del algoritmo SIMPLEX normal. Ejemplo 5.1: aplicar el algoritmo SIMPLEX dual para resolver el siguiente modelo de

programación lineal:

Obsérvese que si se fuera a resolver mediante el algoritmo SIMPLEX normal, se

necesitarían dos variables artificiales para crear la base inicial. El procedimiento mediante el método SIMPLEX dual es como sigue:

Y ahora, multiplicando por (-1) a ambas igualdades, se obtiene:

ON)MINIMIZACI de problemas (para MINIMO valor el escoge sey 0 ; <<<<−−−−

==== kjkj

jj yy

CZθ

ON)MAXIMIZACI de problemas (para MINIMO valor el escoge sey 0 ; <<<<−−−−

==== kjkj

jj yy

CZθ

0 ), ,(

532

32 :a Sujeto

151116 Z

321

321

321

321

≥≥≥≥≥≥≥≥++++++++

≥≥≥≥++++++++++++++++====

XXX

XXX

XXX

XXXMIN

0 ),,, ,(

5- 32

32 :a Sujeto

151116 Z

21321

2321

1321

321

≥≥≥≥====++++++++

====−−−−++++++++++++++++====

SSXXX

SXXX

SXXX

XXXMIN

Page 12: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

En este caso, los tableros correspondientes serían los siguientes:

16 11 15 0 0 Variables Básicas X1 X2 X3 S1 S2

S1 S2

0 0

-3 -5

-2 -1

-1 -2

-1 -3

1 0

0 1

θ

0

0 -16 16

0 -11 5.5

0 -15 5

0 0

0 0

S1 X3

0 15

-4/3 5/3

-5/3 1/3

-1/3 2/3

0 1

1 0

-1/3 -1/3

θ

25

5 -11 6.6

10 -1 3

15 0

0 0

-5 -5 15

X2 X3

11 15

4 -1

5 -3

1 0

0 1

-3 2

1 -1

θ

29

10 -6 2

11 0

15 0

-3 -3

NO

-4 -4 4

X2 X1

11 16

7/3 1/3

0 1

1 0

5/3 -1/3

1/3 -2/3

-2/3 1/3

31

16 0

11 0

13 -2

-7 -7

-2 -2

Luego la solución óptima del problema es:

X1=1/3, X2=7/3, X3=0, S1=0, S2=0, Zmín = 31.

Nota al algoritmo SIMPLEX DUAL: el algoritmo SIMPLEX DUAL reconoce la no factibilidad en el problema primal cuando la regla del cociente θ falla para identificar la variable que debe entrar, o sea que el SIMPLEX DUAL asegura que el problema primal no tiene solución factible alguna, si todos los coeficientes de la fila correspondiente a la variable que va a salir son mayores o iguales a cero.

0),,,,(

-5 3-2--

-3 --2- :a Sujeto

151116

21321

2321

1321

321

≥≥≥≥====++++====++++

++++++++====

SSXXX

SXXX

SXXX

XXXZMIN

jC

BC BX

jZ

jj CZ −

jZ

jj CZ −

jZ

jj CZ −

jZ

jj CZ −

Se satisfacen condiciones de

optimalidad

Se mantiene optimalidad

Se mantiene optimalidad

Se logro la factibilidad: SOLUCIÓN

ÓPTIMA

Page 13: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 50

2. ANÁLISIS DE SENSIBILIDAD

Dado un problema de PL de la forma:

pueden ocurrir variaciones en los valores de sus parámetros C, A y b. En el análisis de sensibilidad se estudia básicamente: a) Cambios en los coeficientes de la función objetivo (Vector C) b) Cambios en los valores del lado derecho (Vector b) c) Cambios en las columnas de la matriz A. d) Adición de una nueva variable. e) Adición de una nueva restricción. Cuando se produce un cambio en algún valor de un parámetro de un modelo de

programación lineal puede ocurrir una de dos cosas (ó ambas, ó ninguna):

- Se afecta la factibilidad, dada por: - Se afecta la optimalidad, dada por: 0BC ión);(Maximizac 0 1 ≥≥≥≥≥≥≥≥−−−− −−−−−−−−

jBjj jCZ Ca

Así, los cambios en el vector b pueden afectar la factibilidad y los cambios en los

coeficientes de la función objetivo y de algunas de las columnas de la matriz A pueden afectar la optimalidad.

Todos estos cambios presuponen que la matriz base óptima B va a permanecer sin

cambios, ya que si se afecta la base puede dañarse la factibilidad y la optimalidad simultáneamente, y puede ser preferible volver a resolver el problema desde un comienzo.

0

:a Sujeto

≥≥≥≥≤≤≤≤

====

X

bAX

CXMAX Z

0 ;1 ≥≥≥≥==== −−−−BB XbBX

Page 14: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

2.1. CAMBIOS EN EL VECTOR C (Coeficientes de la función objetivo)

2.1.1. Cambios en los Coeficientes de la Función Objetivo de una Variable

No-Básica.

En este caso los jZ no cambian pues el CB permanece constante; sólo cambian los jC .

Si jC va a cambiar a *jC , entonces debe cumplirse que ión)(Maximizac 0* ≥≥≥≥−−−− jj CZ

para que la solución siga siendo óptima. Si se rompe el criterio de optimalidad, entonces se sigue iterando con el algoritmo SIMPLEX normal a partir de ese punto.

2.1.2. Cambios en los Coeficientes de la Función Objetivo de una Variable Básica.

En este caso, dado que cambia el vector BC , cambian los jC . Por lo tanto, éstos deben

recalcularse para investigar las condiciones de optimalidad.

Si jZ cambia a *jZ , debe chequearse que ión)(Maximizac 0* ≥≥≥≥−−−− jj CZ .2 Si el

criterio de optimalidad se rompe, debe seguirse iterando con el algoritmo SIMPLEX normal.

2.2. CAMBIOS EN EL VECTOR b (Vector de recursos)

En este caso no se afecta la optimalidad, pero puede afectarse la factibilidad. Si se verifica que la nueva solución:

es mayor o igual que cero, o sea factible, entonces la composición de la solución

óptima sigue siendo la misma, aunque cambian algunos valores (ó todos). En otras palabras, las variables básicas actuales siguen siendo básicas.

Si se da que algún componente de *BX es ≤ 0, entonces se rompe la factibilidad y debe

seguirse iterando con el algoritmo SIMPLEX DUAL hasta restablecer la factibilidad, y así cambiaría la base óptima.

Lo enunciado anteriormente en la teoría de dualidad acerca del incremento (o decrecimiento) de la función objetivo por cada unidad adicional (o de menos) de recurso 2 Obsérvese que los jj CZ −−−−*

de las variables básicas se mantienen iguales a cero.

*1* bBX −−−−====B

Page 15: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 52

(interpretación económica del problema dual), es válido en el rango para el cual la base óptima sigue siendo la misma.

Ahora, el nuevo vector b* puede escribirse así:

bbb ∆∆∆∆++++====* bBbBbB ∆∆∆∆11*1 −−−−−−−−−−−− ++++====

[Nueva solución] = [Solución actual] + [Cambio en solución]

Esta forma de obtención de la nueva solución facilita los cálculos.

2.3. CAMBIOS EN LAS COLUMNAS DE LA MATRIZ A

Se va a estudiar el cambio de una sola columna a la vez: j

a cambia por *j

a .

2.3.1. Cambios en una Columna No-Básica de A

Si

ja es la columna correspondiente a una variable no básica, entonces no se afecta la

factibilidad, pero puede afectarse la optimalidad. Simplemente se calcula la nueva columna:

Y se recalcula:

y se chequea si ) ( *jj CZ −−−− sigue cumpliendo la condición de optimalidad. Si se cumple

dicha condición, la solución actual sigue siendo óptima; si no se cumple, entonces se continúa iterando con el algoritmo SIMPLEX normal, hasta obtener las condiciones de optimalidad.

2.3.2. Cambios en una Columna Básica de A.

Si j

a es la columna correspondiente a una variable básica, entonces “se daña” la base

B y su inversa B-1. En este caso, generalmente es preferible volver a empezar el problema.

2.4. INTRODUCCIÓN DE UNA NUEVA VARIABLE

*1*

jj a−−−−==== BY

**jBj YCZ ====

Page 16: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Al introducir una nueva variable de decisión, se tendría:

Nueva variable: Xn+1 Coeficiente en la función objetivo: Cn+1

Nueva columna de A: an+1 Entonces se calcularía:

1n1 ++++++++ ==== YCBnZ

y se chequearía si )( 11 ++++++++ −−−− nn CZ cumple con la condición de optimalidad. Si cumple, la

solución actual sigue siendo óptima; de lo contrario, esta nueva variable debe entrar a la base, y así, debe continuarse con el algoritmo SIMPLEX normal hasta obtener de nuevo las condiciones de optimalidad.

Obsérvese que este caso puede tratarse como si la columna original

1++++na hubiera sido

de ceros y estuviera cambiando a los valores dados.

2.5. INTRODUCCIÓN DE UNA NUEVA RESTRICCIÓN

En este caso se pasa de (m) a (m+1) restricciones. Entonces puede ocurrir una de dos cosas:

a) Si la solución óptima actual satisface la nueva restricción, entonces ésta sigue

siendo la solución óptima, ya que una nueva restricción sólo lograría eliminar algunas soluciones básicas factibles anteriores, pero nunca adicionaría nuevas.

b) Si no se satisface la nueva restricción, entonces la presente solución NO es factible. Por lo tanto, debería determinarse la nueva base )1()1( ++++××××++++ mmB y hallar su inversa

mediante Gauss–Jordan. Posteriormente se hallaría )1()1(1ˆ

++++++++−−−−==== mmB bBX y, lógicamente, se

rompería la factibilidad. Por lo tanto, se seguiría iterando mediante el algoritmo SIMPLEX DUAL, hasta restablecer la factibilidad.

NOTA : Si la nueva restricción es de desigualdad, entonces se añade también una

variable de holgura, la cual pasa a ser básica y se encuentra la nueva inversa de la base mediante las operaciones de Gauss - Jordan. Si la nueva restricción es de igualdad, entonces se hace necesaria la introducción de una variable artificial, la cual necesariamente pasaría a ser básica. Además, se le asignaría el coeficiente “M” (con su signo respectivo) y se hace necesario también verificar la optimalidad.

Ejemplo 5.1: Considérese el problema:

11

1 ++++==== −−−−++++ nn aBY

Page 17: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 54

Cuya forma estándar es:

El tablero óptimo de este problema es el siguiente (Verifíquelo): jC

3 5 0 0 0

Variables Básicas X1 X2 S1 S2 S3

S1 X2 S2

0 5 0

4 9 6

1 3/2 -3

0 1 0

1 0 0

0 0 1

0 ½ -1

jZ

jj CZ −−−−

45

15/2 9/2

5 0

0 0

0 0

5/2 5/2

Supóngase que se va a introducir la nueva restricción: 2432 21 ≤≤≤≤++++ XX , la cual no

cumple con la solución óptima actual ya que: 2(0) + (3) (9) = 27 > 24. Entonces, la forma estándar de esta nueva restricción sería: 2432 421 ====++++++++ SXX .

Luego, el nuevo tablero, adicionando la nueva restricción y recalculando la inversa

para seguir con el SIMPLEX DUAL, es el siguiente: Cj 3 5 0 0 0 0

Variables X1 X2 S1 S2 S3 S4

0),(

1823

422

4 :a Sujeto

53

21

21

2

1

21

≥≥≥≥≤≤≤≤++++≤≤≤≤≤≤≤≤

++++====

XX

XX

X

X

XXZMAX

0)S,S,S,,(

18 23

42 2

4 S :a Sujeto

53

32121

321

22

11

21

≥≥≥≥====++++++++====++++====++++

++++====

XX

SXX

SX

X

XXZMAX

BC BX

BC BX Entra como variable básica

Page 18: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Básicas S1 X2 S2 S4

0 5 0 0

4 9 6 24

1 3/2 -3 2

0 1 0 3

1 0 0 0

0 0 1 0

0 ½ -1 0

0 0 0 1

S1 X2 S2 S4

0 5 0 0

4 9 6 -3

1 3/2 -3

-5/2

0 1 0 0

1 0 0 0

0 0 1 0

0 ½ -1

-3/2

0 0 0 1

jZ

jj CZ −−−−

θ

45

15/2 9/2 1.8

5 0

0 0

0 0

5/2 5/2 1.66

0 0

S1 X2 S2 S3

0 5 0 0

4 8 8 2

1 2/3 -4/3 5/3

0 1 0 0

1 0 0 0

0 0 1 0

0 0 0 1

0 1/3 -2/3 -2/3

jZ

jj CZ −−−−

40

10/3 1/3

5 0

0 0

0 0

0 0

5/3 5/3

Obsérvese que el nuevo valor óptimo de la función objetivo es Z*máx = 40 < 45 (Valor

anterior), como es de esperarse al añadir una nueva restricción que vuelva al problema no-factible.

2.6. EJEMPLO DE APLICACIÓN DE ANÁLISIS DE SENSIBILIDAD

Una industria fabrica tres tipos de productos: A1, A2 y A3. El proceso de fabricación

exige su paso por tres talleres sucesivamente: T1, T2 y T3, los cuales tienen cierta capacidad de trabajo. Existen limitaciones en el mercado que determinan la demanda máxima de cada uno de los productos. La información disponible es la siguiente (los requerimientos están en HR/UNID):

a) ¿Qué programa de producción es el óptimo? b) Analizar las siguientes alternativas para mejorar la producción:

Capacidad TallerA1 A2 A3 [ HR/AÑO ]

T1 100 500 400 12,000 T2 500 1,000 800 18,000 T3 600 - 1,000 6,000

Demanda máxima Anual 10 8 10

Beneficio [ $/Unidad ] 150,000 200,000 240,000

REQUERIMIENTOSTALLER

Obsérvese que X2 es básica, pero su columna es [0 1 0 3], luego, debe corregirse mediante Gauss-Jordan

Aquí se toma el θ en valor absoluto (Maximización)

NUEVA SOLUCIÓN

ÓPTIMA

Page 19: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 56

1. Incrementar la capacidad del taller T3, introduciendo una nueva máquina que

añade 6000 hr/año de capacidad con un costo de $1’020.000 anuales. 2. Una inversión en publicidad que vale $700.000 anuales y que podría cambiar las

demandas en 20, 14 y 10 respectivamente (o sea que las nuevas demandas serían 30, 22 y 20, respectivamente).

3. Una investigación que cuesta $1’200.000 al año y que permitiría disminuir el tiempo requerido en el taller T3 para el producto A3, de 1000 a 500 hr/unidad.

4. Un esfuerzo técnico por reducir los costos, aumentando el beneficio unitario del producto A3 en $60.000/unidad. El costo de amortización durante la vida remanente de fabricación del producto sería de $400.000/año.

Nota: las alternativas NO son mutuamente excluyentes, o sea que podría estudiarse

combinación de ellas.

2.6.1. Planteamiento y Solución del Modelo

Sean Xi = Unidades del producto i a fabricar; i = 1, 2, 3. El modelo de PL entonces sería:

0),,(

A3) de (demanda 10

A2) de demanda( 8

A1) de (demanda 10 X

3 ]/[ 60001000 600

T2 ]/[ 180008001000500

T1 ]/[ 12000400500100 :a Sujeto

]/[$ 240000200000150000 MAX

321

3

2

1

31

321

321

321

≤+

≤++

≤++

++=

XXX

X

X

TAñoHrXX

AñoHrXXX

AñoHrXXX

AñoXXXZ

La forma estándar correspondiente es:

Z50000con Z 8.443 MAX 321| ′=++= XXXZ 3

3 Se ha dividido la función objetivo Z entre 50.000 ( 50000/Z Z=′ ) para trabajar más fácilmente.

Page 20: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

6,...,2,1 ;0 0;),,(

10S

8 S

10 S X

6000 S 1000 600

18000 S 8001000500

12000 400500100 :a Sujeto

321

63

52

41

331

2321

1321

====≥≥≥≥≥≥≥≥====++++====++++====++++====++++++++====++++++++++++====++++++++++++

jSXXX

X

X

XX

XXX

SXXX

j

El lector debe comprobar que la solución óptima única viene expresada en el siguiente

tablero final óptimo: jC

3 4 4.8 0 0 0 0 0 0

Var. Básicas X1 X2 X3 S1 S2 S3 S4 S5 S6

S1 S2 X3 X1 X2 S6

0 0

4.8 3 4 0

7000 5000

0 10 8 10

0 0 0 1 0 0

0 0 0 0 1 0

0 0 1 0 0 0

1 0 0 0 0 0

0 1 0 0 0 0

-0.4 -0.8

0.001 0 0

-0.001

140 -20 -0.6 1 0

0.6

-500 -1000

0 0 1 0

0 0 0 0 0 1

jZ

jj CZ −−−−

62

3 0

4 0

4.8 0

0 0

0 0

.0048

.0048 0.12 0.12

4 4

0 0

Solución óptima del problema dual Inversa de la base óptima ( 1−−−−B )

Luego, la solución óptima única es: X1=10 (producir 10 unidades/año de A1) X2=8 (producir 8 unidades/año de A2) X3=0 (no producir A3) S1=7000 (sobran 7000 hr/año en T1) S2=5000 (sobran 5000 hr/año en T2) S3=0 (se agota la capacidad en T3) S4=S5=0 (se produce la demanda máxima de A1 y A2) S6=10 (dejan de producirse 10 unidades/año de A3) añopor 10$3.1(50000)6262 6

máxmáx| ××××====××××====⇒⇒⇒⇒==== ZZ

La solución óptima del dual es la siguiente: w1=0 w2=0

BC BX

Solución óptima

degenerada (X3=0

y básica)

Page 21: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 58

w3=(0.0048)(50000)=240 4 w4=(0.12)(50000)=6.000 w5=(4)(50000)=200.000 w6=0

Es importante notar que algunos solucionadotes como WinQSB pueden dar una

solución diferente a la anterior, ya que en el penúltimo tablero simplex se presenta un empate en la regla de salida.

Conclusiones de la solución del dual: - El tiempo en los talleres T1 y T2 sobra; por lo tanto el costo de oportunidad de

estos recursos es cero. - Lo máximo adicional que se puede pagar en el mercado por cada hora adicional

del taller T3 es $240/hr. - Por cada unidad potencial que se aumente la demanda de A1 y A2, se obtendrían

beneficios adicionales de $6.000 y $200.000, respectivamente. - Aumentando la demanda potencial de A3 no se logra ningún provecho, ya que de

hecho se han dejado de producir 10 unidades de este producto.

2.6.2. Análisis de las Alternativas

1. Incrementar la capacidad T3 en 6000 hr/año con un costo de $1’020.000/año. Este caso corresponde a un cambio en el vector b.

T]1081060001800012000[====b T]000600000[====b∆

]600648002400[ TB −−−−−−−−−−−−======== −−−− bBX 1∆∆ 5

Luego la nueva solución sería:

T

BBB SXXXSS ][ˆ621321====++++==== XXX ∆

)

Obsérvese que la nueva solución sigue siendo factible y, por lo tanto, es también

óptima. Se mantienen los niveles de producción de A1 y A2 y ahora si debe producirse A3 (X3=6 unidades/año de A3).

El nuevo valor de la función objetivo es:

4 Obsérvese que la solución del problema dual debe multiplicarse también por 50.000 , al igual que el valor real óptimo de la función objetivo. 5 Tómese

1B−−−−del tablero óptimo de la sección anterior y compruébese este resultado.

TB ]481062004600[ˆ ====X

)

Page 22: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Por lo tanto, esta alternativa por sí sola es adecuada (el valor óptimo anterior era de

$3’100.000/año). Nota: Del análisis dual se concluyó que por cada hora adicional de T3 la función

objetivo se incrementaría en $240/hr·T3. En este caso esto se cumple ya que la base óptima no cambia, y:

que era lo que se había obtenido. Este análisis del problema dual será válido si la composición básica de la solución

óptima NO cambia, o sea si la solución permanece factible. Además, obsérvese que se está pagando:

que es el máximo adicional que estaba dispuesto a pagarse por cada hora adicional en

T3, lo cual confirma aún más lo dicho anteriormente. Una pregunta que podría surgir es: cuánto es lo máximo que se pueden aumentar las

hr/Año disponibles en T3 para que se siga manteniendo la factibilidad y por lo tanto la función objetivo crezca a razón de $240/hr·T3?

Para determinar esto se realiza un análisis paramétrico. Sea:

TB

T KKKKK ]001.000001.08.04.0[ ]00000[ −−−−−−−−−−−−========⇒⇒⇒⇒==== −−−− bBXb 1∆∆∆

Luego la nueva solución sería:

Año

Año

AñoZ

/000.520'3$

/000.020'1$adicional recurso de valor el menos

/000.540'4$ 50000)]6(8.4)8(4)10(3[

========××××++++++++====

Año

Año

AñoThrThr

/$ 000.540'4

/$ 000.100'3

/$ 000.440'13··6003··

240$

++++

====××××

hrhrAñohr

Año/240$/170$

/ 6000/$ 000.020'1 <<<<====

−−−−

−−−−−−−−

====++++====

K

K

K

K

BBB

001.010

8

10

001.0

8.05000

4.07000

ˆ XXX ∆)

Page 23: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 60

Pero, como para que se conserve la factibilidad se requiere que 0≥≥≥≥BX , entonces:

Luego 6250≤≤≤≤K , o sea que para mantener la factibilidad actual y la composición

básica óptima actual se requiere que el incremento positivo en hr/Año de T3 sea máximo 6250 hr.

Este análisis paramétrico lo realiza automáticamente el computador y da los límites

inferior y superior, a través de programas especializados, tales como el WinQSB, AMPL./CPLEX, etc.

2. Inversión en publicidad: $700.000/Año. Cambio de las demandas máximas en 20,

14 y 10 unidades/año de A1, A2 y A3, respectivamente. En este caso:

TB

T ]22142012144004200[ ]101420000[ −−−−−−−−−−−−========⇒⇒⇒⇒==== −−−− bBXb 1∆∆∆ Y la nueva solución sería:

TBBB ]3222301294002800[ˆ −−−−−−−−====++++==== XXX ∆

)

Luego se rompe la factibilidad y habría que seguir iterando con el algoritmo SIMPLEX

DUAL; el lector debe comprobar que la nueva solución óptima es:

209200450001310 654321321 ==================================== SSSSSSXXX

/Año$3'400.000

/$ 000.700 Publicidad Costo

/$ 000.100'4)000.50)(82(*máx

Año

AñoZ

====−−−−========

Luego esta alternativa por sí sola es rentable. Obsérvese que aquí NO se cumple lo previsto por la solución del dual, ya que cambia

base óptima al romperse la factibilidad. De acuerdo al dual la función objetivo debía incrementarse en:

10000 0001.010

cumple) (Se 08

cumple) (Se 010

cumple) (Se 0 0001.0

625008.05000

17500 04.07000

≤≤≤≤⇒⇒⇒⇒≥≥≥≥−−−−≥≥≥≥≥≥≥≥

≥≥≥≥⇒⇒⇒⇒≥≥≥≥≤≤≤≤⇒⇒⇒⇒≥≥≥≥−−−−≤≤≤≤⇒⇒⇒⇒≥≥≥≥−−−−

KK

KK

KK

KK

Page 24: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

000.920'2)10)(0()14)(000.200()20)(000.6( ====++++++++ pero sólo se incrementó en 4’100.000-3’100.000 = 1’000.000. 3. Investigación por $1’200.000/Año para reducir los requerimientos de A3 en T3 de

1000 a 500 hr/unidad. Este cambio corresponde a cambios en las columnas de A. Como X3 es una variable

básica óptima, esto correspondería al cambio de una columna de A correspondiente a una variable básica, lo cual indicaría que sería mejor resolver de nuevo el modelo. Sin embargo, como X3 es básica, pero a nivel cero (solución óptima degenerada), es posible que en el penúltimo tablero se saque a X3 de la base (en vez de a S4). Así, un tablero óptimo alternativo sería:

jC 3 4 4.8 0 0 0 0 0 0

Var. Básicas X1 X2 X3 S1 S2 S3 S4 S5 S6

S1 S2 X1 S4 X2 S6

0 0 3 0 4 0

7000 5000 10 0 8 10

0 0 1 0 0 0

0 0 0 0 1 0

700/3 -100/3

5/3 -5/3

0 1

1 0 0 0 0 0

0 1 0 0 0 0

-1/6 -5/6

1/600 -1/600

0 0

0 0 0 1 0 0

-500 -1000

0 0 1 0

0 0 0 0 0 1

jZ

jj CZ −−−−

62

3 0

4 0

5 0.2

0 0

0 0

1/200 1/200

0 0

4 4

0 0

Obsérvese que es la “misma” solución óptima obtenida al comienzo, con la diferencia

de que X3 no aparece en la base óptima (ahora aparece S4 a nivel cero). Obviamente, la inversa de la base cambia.

Ahora sí, como X3 no es básica, el cambio planteado puede hacerse así:

*3

*3

*3 )( YCBCZ B

1B ======== −−−− a

O sea:

2/5]100500800400]·[040200/100[ *3 ======== TZ

y así, el nuevo 03.28.42/53

*3 <<<<−−−−====−−−−====−−−− CZ , luego se rompe la optimalidad. Por lo

tanto, debe continuarse con el algoritmo SIMPLEX normal. Para ello es necesario recalcular a *3Y , así:

Ta ]106

5

6

5

3

1383

3

2316[*

3*3 −−−−======== −−−−1BY

BC BX

Page 25: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

Introducción a la Modelación Matemática y Optimización 62

Y luego si se itera con la nueva columna. El lector debe comprobar que la nueva solución óptima es:

080 116638331081 653

1433

223

11323

21 ==================================== SSSSSSXXX

/Año$3'050.000

/$ 000.001'2 aalternativ Costo

/$ 000.250'4)000.50)(85(*máx

Año

AñoZ

====−−−−========

Luego la alternativa por sí sola no es rentable económicamente. Ejercicio: verificar que la nueva solución para la cuarta alternativa es:

40100 52005600680 654321321 ==================================== SSSSSSXXX

/Año$3'000.000

/$ 000.004 aalternativ Costo

/$ 000.400'3)000.50)(68(*máx

Año

AñoZ

====−−−−========

Luego, por sí sola esta alternativa no sería adecuada. Trate el lector de verificar

combinaciones de alternativas(primero parejas, luego ternas y luego las cuatro) por computador y llegar a la conclusión de que la mejor alternativa combinada que puede hacerse es:

Combinar las alternativas 1 + 4, cuya solución óptima es:

1083 3231

1 ============ XXX

/Año$3'680.000

/$ 000.01'42 aalternativ Costo

/$ 000.100'5 *máx

Año

AñoZ

====−−−−====

Todos los análisis de dualidad y de sensibilidad son normalmente determinados por

software comercial de una forma automática, de tal forma que el usuario pueda analizarlos directamente. Por ejemplo, en el caso del problema de los transformadores, el software WinQSB produce el siguiente resultado, el cual coincide obviamente con lo presentado en las secciones anteriores:

Page 26: INTRODUCCIÓN A LA - campusvirtual.univalle.edu.co · Introducción a la Modelación Matemática y Optimización 40 1. TEORÍA DE DUALIDAD El problema dual puede definirse en forma

El Anexo 1 presenta la formulación y solución de un caso completo de optimización en el área de cadenas de abastecimiento, ilustrando los resultados presentados por el software WinQSB y también por software más avanzado útil en casos reales, como es AMPL/CPLEX.

El Anexo 2 contiene fotocopias de capítulos seleccionados sobre el problema del

transporte y una introducción a la teoría de redes. El tema siguiente, el método simplex revisado puede obviarse inicialmente y retomarse

si se desea profundizar en algunos aspectos de la programación lineal.

Combined Report for transformadores análisis de sen sibilidad Decision Solution Unit Cost Total Reduced Basis Allowable Allowable Variable Value Profit c(j) Contribution Cost Sta tus Min. c(j) Max.c(j) 1 TR40VA 350.0 400.0 140,000.0 0 basic 385.7143 500.0000 2 TR75VA 450.0 700.0 315,000.0 0 basic 684.4445 933.3333 3 TR3 0 900.0 0 -12.5 at bound -M 912.5000 Objective Function (Max.) = 455,000.0 Left Hand Right Hand Slack Shadow Allowable Allowable

Constraint Side Dir. Side (Surplus) Pric e Min. RHS Max. RHS 1 HR_HOMBRE 1,400.0 <= 1,400.0 0 150.0 1,166.667 1,633.333 2 HR_MAQ1 980.0 <= 980.0 0 250.0 840.0 1,050.000 3 HR_MAQ2 800.0 <= 900.0 100.0 0 800.0 M