Você está na página 1de 21

INVESTIGACION

OPERATIVA

UNIDAD II
Mtodo Simplex y Dual.
Apunte 2

Docente : Ing. Nstor E. Muntaner.


Ayudantes: Ing. Romina Miccige / Ing. Christian Cocchi

Ao: 2003
Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 1 de 1 Rev.02

MTODO SIMPLEX
INTRODUCCIN.
El problema de programacin lineal consiste en hallar un vector

X = ( x1 , x 2 , x 3 , x 4 ,..., x n ) n
que haga Mxima (o Mnima) una funcin lineal llamada

funcin Objetivo [Z],

f ( x ) = ( c1 . x 1 + c 2 . x 2 + , c 3 . x 3 + ... + c n . x n =

c .x
i =1

sujeta a las siguientes restricciones

a 11 . x 1 + a 12 . x 2 + a 13 . x 3 + ...

a . x + a . x + a . x + ...
21
1
22
2
23
3

a 31 . x 1 + a 32 . x 2 + a 33 . x 3 + ...

a . x + a . x + a . x + ...
m 2
2
m3
3
m 1 1

+ a 1 .n . x n b 1
+ a 2 .n . x n b 2
+ a 3.n . x n b 3


+ a m .n . x n b m

Donde

x1 0 ; x 2 0 ; x 3 0 ; x 4 0 ;... x i 0 , i = 1, 2 ,3 ,..., n
Incorporando las variables Slack (Holgura), S, no negativas, Si con i = 1,2,3,,m, las
desigualdades se transforman en igualdades de la forma

a i ,1 . x1 + a i , 2 . x 2 + a i , 3 . x 3 + ... + a i , n . x n + s i = b i i = 1, 2 ,3 ,..., m
La s me dan la capacidad ociosa, su costo es nulo y sirven para eliminar las inecuaciones.
Quedando un sistema de ecuaciones lineales cuya expresin matricial es A .Z = B donde
Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 2 de 2 Rev.02

A = (( a i , j )) m .( n + m ) , B = (( b i , j )) m . 1 , Z = (( z i , j )) (n0+ m ). 1

a 1 ,1

a 2 ,1
a
3 ,1
M
a
m ,1

a1 , 2

a 1, 3

a1 , n

...

a 2,2

a 2 ,3

a2,n

...

a 3, 2

a 3, 3

a3,n

...

a m,2

a m ,3

a m,n

...

x1

x2
0 x3

0 M
0 x n
*
M s1

1 s 2
s
3
M
s
m

b1


b
2
=b
3
M
b
m

Siendo los elementos de A, coeficientes tecnolgicos, y los elementos del vector B,


coeficientes de disponibilidad de recursos.
Donde la funcional es ahora:

Z = f ( x ) = ( c 1 . x 1 + c 2 . x 2 + , c 3 . x 3 + ... + c n . x n + 0 . s1 + 0 . s 2 + 0 .s 3 + ... + 0 .s m
porque las variables Slack (holgura) tienen costo nulo.
Por lo general hablaremos de costos (c) en los problemas de minimizacin y de beneficios (b)
en los de maximizacin.
Si en el sistema de ecuaciones resultante todos los elementos de B son no negativos, existe
una solucin factible y bsica dada por:

Z = Z T = ( x1 , x 2 , x 3 ,..., x n , s1 , s 2 , s 3 ,..., s m ) = ( 0 , 0 , 0 ,..., b1 , b 2 , b 3 ,..., b m )

(Primer solucin bsica factible).

Pero con un valor de la funcional nulo. En ste mtodo, a partir de sta solucin bsica, se
construye mediante un proceso iterativo, una sucesin de soluciones que mejoren la funcional
hasta su optimizacin.
Veremos, la implementacin a travs de la resolucin de ejemplos.
Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 3 de 3 Rev.02

Ejercicio N 1
Una empresa manufacturera paraliz la produccin de ciertos productos por bajas utilidades.
Esto gener una capacidad ociosa de produccin. Se plante entonces la necesidad de asignar
esa nueva capacidad disponible a la elaboracin de hasta 3 productos (1, 2, 3). La
informacin elaborada es la siguiente:
Tipo de maquina
a utilizar
Fresadora
Torno
Rectificadora

Disponibilidad
[hrs. / semana]
280
100
60

Demanda de horas de Maq. por artculo


1
2
3
8
2
3
4
3
0
2
1
1

Marketing informa que el potencial de ventas para los 3 productos supera la mxima produccin
posible, o sea que la demanda del mercado es superior a la produccin factible, lo que posibilita que
todo lo producido pueda ser vendido. Los beneficios son $ 20, $ 6, $ 8 para los productos 1, 2 y 3
respectivamente.
Fijar la produccin de cada producto para maximizar los beneficios.

Resolucin.
Llamemos x1 , x2 , x3 a las cantidades producidas de los artculos 1, 2 y 3. La funcin objetivo a
maximizar es: P(x1,x2,x3) = 20. x1 +6.x2 +8. x3 sujeta a las siguientes restricciones:

8.x1 + 2.x2 + 3.x3 280 Fresadora

4.x1 + 3. x2 100 Torno

Donde
2.x1 + x2 + x3 60 Re ctificadora

xj 0, j =1,2,3

Introduciendo las variables Slack: S1, S2, S3 no negativas, tenemos el sistema de ecuaciones
A.Z=B

8.x1 + 2.x2 + 3.x3 + s1 = 280

4.x1 + 3.x2 + s2 = 100


Siendo la nueva funcional.

2.x1 + x 2 + x3 + s3 = 60
Z = ( 20 . x1 + 6 . x 2 + 8 . x 3 + 0 .s 1 + 0 .s 2 + 0 . s 3
Partiremos de la solucin bsica factible

Z = Z T = ( x1 , x 2 , x 3 , s 1 , s 2 , s 3 ) = ( 0 , 0 , 0 , 280 ,100 , 60 )
Siendo la funcional para sta primer solucin bsica factible:

Z = ( 20 . 0 + 6 . 0 + 8 . 0 + 0 . 280 + 0 . 100 + 0 . 60 ) = 0
Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 4 de 4 Rev.02

Expresamos el sistema en funcin de los vectores columna (Recordar A.x=Z):

8
2
3
1
0
0 280





Z = x1 . 4 + x 2 . 3 + x 3 . 0 + s 1 . 0 + s 2 . 1 + s 3 . 0 = 100
2
1
1
0
0
1 60





Z = x1 . P1 + x 2 .P2 + x 3 .P3 + s1 .P4 + s 2 . P5 + s 3 . P6 = B

La solucin bsica verifica:

Z = 0.P1 + 0.P2 + 0.P3 + 280.P4 +100.P5 + 60.P6 = B es decir que


Z = 280 . P4 + 100 . P5 + 60 .P6 = B Primera solucin bsica factible

(I)

Al subespacio generado por los vectores columna {P1, P2, P3, P5, P 6, B} de la matriz
ampliada, se le asocia una primera base dada por {P 4, P5, P6}. Pero dicha base est asociada
nicamente con las variables slack s, y esto hace que la funcional correspondiente tenga
valor nulo.
Queremos introducir P 1 en la base {P 4, P 5, P 6}. Expresamos dicho vector columna como
combinacin de los vectores de la base inicial, resultando P1 = 8.P4 + 4.P 5 + 2.P6, de donde

8 .P4 + 4. P5 + 2. P6 P1 = 0

(II)

Hacemos una combinacin lineal de (I) y (II) en base a un parmetro ? tal que (I) - ? (II) = B

( 280 8 . ). P4 + (100 4 . ). P5 + (60 2 ). P6 + . P1 = B (III)


Para tener soluciones al sistema de variables no negativas, identificadas con los coeficientes
de los vectores en la combinacin lineal de B, tenemos que tomar el ? mnimo que haga nulo
uno de los coeficientes de P4, P5 P6.

(280 8. ). = 0 = 35 ; (100 4 . ). = 0 = 25 ; (60 2. ). = 0 = 30


? mnimo {35,25,30} = 25
Reemplazamos ? = 25 en III, resultando 80 . P4 + 10 .P6 + 25 . P1 = B . Sale P5 de la base,
siendo la nueva base: {P 4, P 6, P1}. La nueva solucin factible es:

Z = Z T = ( x1 , x 2 , x 3 , s 1 , s 2 , s 3 ) = ( 25 , 0 , 0 ,80 , 0 ,10 )
cuya funcional tiene un valor

Z = (20 .25 + 6. 0 + 8.0 + 0 .80 + 0 .0 + 0.60 ) = 500

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 5 de 5 Rev.02

La nueva solucin incrementa de 0 a 500 el valor de la funcional. Debemos seguir con el


proceso iterativo introduciendo en la base otros vectores para mejorar el funcional. Para ello,
presentamos a continuacin la resolucin del problema por medio de los cuadros Simplex.
El cuadro del Simplex del sistema original es el siguiente, donde se utiliza matriz ampliada
del sistema original.
X1
X2
X3
S1
S2
S3
bi
Solucin
I
8
2
3
1
0
0
280
S1=280
II
4
3
0
0
1
0
100
S2=100
II
2
1
1
0
0
1
60
S3= 60
cj
20
6
8
0
0
0
F
En la fila cj colocamos los coeficientes de la funcional.
En las columnas (xi, si) reemplazamos los coeficientes tecnolgicos aij.
En la columna bi reemplazamos los coeficientes de disponibilidad de recursos bi.
En la columna Solucin colocamos los valores de las variables Slack (s) y Xi pertenecientes al
vector solucin.
RESOLUCIN
De los indicadores de la fila cj {20,6,8}, elegimos 20 por ser el de mayor valor y por lo tanto tener
mayor incidencia en la funcional Z. De la columna correspondiente al indicador elegido (vector
columna P1 ) elegimos aquel elemento positivo que satisfaga ser el mnimo cociente entre:

b
280 100 60
min i
= min
,
, = min{ 35, 25 ,30} = 25
a i ,1 i =1, 2, 3
4 2
8
I
II
II
cj

X1
8
4
2
20

X2
2
3
1
6

X3
3
0
1
8

S1
1
0
0
0

S2
0
1
0
0

S3
0
0
1
0

bi
280
100
60

Solucin
S1=280
S2=100
S3= 60
F

Por lo que elegimos a21 =4. Se elige el mnimo para evitar variables negativas. Transformamos en
pivote unitario al elemento elegido multiplicando la segunda fila por (o sea 1/ a21 ) , obteniendo el
siguiente cuadro:
I
F2 *(1/4)
II
cj

X1
8
1
2
20

X2
2
3/4
1
6

X3
3
0
1
8

S1
1
0
0
0

S2
0
1/4
0
0

S3
0
0
1
0

bi
280
25
60

Solucin
S1 =280
S2 =100
S3 = 60
F

Reducimos los restantes elementos de la primer columna a cero mediante transformaciones


elementales a partir del elemento pivote a21 = 1. Obtenemos as el vector P1 en forma cannica que
reemplace en la base de los vectores columna {P 4, P5, P6} a P 5.

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 6 de 6 Rev.02

F1 =F1 -8.F2
F2 *(1/4)
F3 =F3 -2.F2
F4 =F4 -20.F2

X1
0
1
0
0

X2
-4
3/4
-1/2
-9

X3
3
0
1
8

S1
1
0
0
0

S2
-2

0
-5

S3
0
0
1
0

bi
80
25
10

Solucin
S1 =80
X1=25
S3 = 10
F = 500

bi
50
25
10

Solucin
S1 =50
X1=25
X3=10
F = 580

Observamos que en la solucin entr X1 y sali S2 , mejorando la funcional en $500.


- Comenzamos nuevamente el proceso iterativo
Siendo el 8 (Columna X3 ) el mayor indicador positivo de la fila cj, calculamos.

b
80 10
min i
= min , = min{ 26 .67 ,10} = 10
a i ,3 i =1, 2 ,3
3 1
F1 =F1 -3.F3

F4 =F4 -8.F3

X1
0
1
0
0

X2
-5/2
3/4
-1/2
-5

X3
0
0
1
0

S1
1
0
0
0

S2
-2
1/4
0
-5

S3
-3
0
1
-8

El proceso se considera terminado porque no existe ningn indicador positivo en la fila de los
coeficientes de la funcional cj.

Z = 20 .x1 + 6 .x 2 + 8. x3 + 0 .s1 + 0 .s2 + 0.s3 =


20 . 25 + 6 . 0 + 8 . 10 + 0 . 50 + 0 . 0 + 0 . 0 = 580 ( Max )
Solucin: Fabricaremos 25u. de producto 1 y 10u. del producto 3.

En los procesos iterativos se parte de una solucin bsica factible y se la va mejorando.


Ejemplo N 1. Resolucin por mtodo Solver.
DEMANDA DE HRS POR ART.

X1

X2

X3

CANT

FRESADORA
8
2
3
280 MENOR
TORNO
4
3
0
100 MENOR
RECTIFICADORA
2
1
1
60 MENOR
BENEFICIOS
$20,00 $6,00 $8,00
UNITARIOS
FUNCION OBJETIVO
Z=20*X1+6*X2+8*X3
DEMANDA DE HRS POR ART.

X1

X2

X3

CANT.
REF.

REAL

FRESADORA
TORNO
RECTIFICADORA

200
100
50

0
0
0

30
0
10

280
100
60

230
100
60

CANTIDADES
BENEFICIOS
TOTALES POR
ARTICULO

25

10

TOTAL

$500

$0

$80 $580,0

DIF. REAL<REF.

50
0
0

MENOR
MENOR
MENOR

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 7 de 7 Rev.02

Consideraciones Generales
1ero. Las inecuaciones planteadas hasta ahora representan restricciones que poseen un

(). Pero nada impide que puedan presentarse


inecuaciones con un limite mnimo de consumo ().
Ejemplo de esto ltimo lo representara la inecuacin a 1 . x1 + a 2 . x 2 + a 3 . x 3 b con
limite mximo de disponibilidades

b > 0, en un problema de dieta donde la necesidad mnima de cierta vitamina (b > 0) debe
ser cubierta mediante la ingestin de ciertas cantidades de alimentos (x1, x2, x3) que
aportan, de la misma, determinadas cantidades por unidad de peso (a1, a2, a3).

2do. Recordar que en todo problema de programacin lineal se deben cumplir condiciones
de no negatividad de las variables reales.

3ro. La utilizacin del mtodo grfico, con el polgono convexo, es cmodo y sencillo hasta
dos variables reales, pero resulta imposible para ms variables. Es por ello que se recurre
al mtodo algebraico (Simplex).

4to. La funcin a optimizar representa una familia monoparamtrica de hiperplanos. Si la


funcional es

f =

i =1

ci .xi

c .x
i =1

= C ( cte ) se busca que valor debe tomar el

parmetro C para que f sea ptimo, es decir mximo mnimo segn el problema.

5to. Si las restricciones del problema estn representadas por inecuaciones de menor o
igual a las disponibilidades, se incorporan las variables Slack para transformar el sistema
planteado de inecuaciones en un sistema de ecuaciones lineales. Las variables slack que
igualan las ecuaciones, representan la capacidad ociosa o disponible de las
disponibilidades mximas

6to. Dentro del mtodo algebraico, el Simplex provee un sistema rpido y efectivo para la
resolucin de los problemas de programacin lineal.

7mo. Cuando se presentan restricciones de mayor o igual o limite mnimo se incorpora un


nuevo tipo de variables artificiales.
siguiente ejemplo.

Sea el sistema

8 . x 1 + x 2 10

10 . x 1 + 30 . x 2 40

Podemos analizar esta necesidad a partir del

con funcional a maximizar f(x1 ,x2 ) = 10. x1 + 15. x2.

Si incorporamos las variables Slack no negativas, S1 y S2, se presentaran las siguientes


ecuaciones

8 . x 1 + x 2 S 1 10

10 . x1 + 30 . x 2 S 2 40

f(x 1,x 2) = 10. x 1 + 15. x 2+0. s1 + 0. s2

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 8 de 8 Rev.02

la primera solucin bsica factible sera (x1, x2, s1, s2)=(0,0,-10,-40) la cual no cumple con
la condicin de no negatividad de las variables slack. Para superar este inconveniente, se
incorpora al sistema, sumando, una variable
, quedando el sistema de la siguiente forma

, llamada artificial para cada condicin de


8 . x 1 + x 2 S 1 + 1 10

10 . x1 + 30 . x 2 S 2 + 2 40

8vo. Ya estn definidas en la funcional los coeficientes cj que tienen asignados las
variables reales (en el ejemplo c1 = 10, c2 = 15 ) y los definidos para las variables slacks
que son todos nulos.
Cuando las inecuaciones son del tipo menor e igual, para transformarlas en ecuaciones
solo se incorporan las variables slack (S) junto a las variables reales (xi), figurando en la
funcional con un valor positivo y costo cero no incidiendo en el valor do dicha funcional.
Las variables artificiales se emplean, con los reales y las slack, en las inecuaciones de
mayor o igual correspondindoles en la funcional un coeficiente de costo igual a M si se
minimiza la funcional e igual a -M si se maximiza el funcional, donde M es considerado un
valor positivo muy grande.
Nota: En la prctica en lugar de M o M utilizaremos cifras.
Nota: Maximizar: Zj-Cj y busco el valor ms negativo.
Minimizar : CjZj y busco el valor ms negativo.

9no.

Construccin del diagrama simplex completo, agregado zj. Para simplificar,


suponemos que tenemos un sistema de inecuaciones de menor o igual, es decir que para
transformarlas en inecuaciones, slo se incorporan las variables slack.
Expresamos primero la matriz ampliada del sistema de ecuaciones de, por Ej., el problema
, constituido por las submatrices: una de 4*2 de las variables reales, otra de 4*4 con los
vectores columnas unitarios de las variables slack, y otra do 4*1 vector columna B.

Cj
Zj
Zj-Cj

Variables
Reales
P1
P2
X1
X2
1
3
2
1
2
2
1
1
4
3
0
0
-4
-3

Variables Slack
P3
S1
1
0
0
0
0
0
0

P4
S2
0
1
0
0
0
0
0

P5
S3
0
0
1
0
0
0
0

P6
S4
0
0
0
1
0
0
0

bi Solucin xk
15000 S1 =15000
10000 S2 =10000
12000 S3 =12000
10000 S4 =10000

Ck
0
0
0
0

F (Valor de la funcional)

Como vemos est adicionado un vector columna con las variables que intervienen en la
solucin factible y, a continuacin, una columna ck de los coeficientes de beneficio o de
Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 9 de 9 Rev.02

costo asociados a las variables que pertenecen a la solucin xk . Tambin aparece un


vector fila cj de los coeficientes asociados a las variables en la funcional.
Incorporamos ahora, el vector fila z j correspondiente al producto escalar de cada
una de las columnas de la matriz ampliada por el vector columna ck . Por ejemplo:

1

2
T
=(
c
)
*
P
=(0
0
0
0)*
2 = 0*1+0*2+0*2+0*1= 0
Z1
k
1

1
Como ya sabemos, la primer solucin bsica factible es:

Z = Z T = ( x1 , x 2 , s 1 , s 2 , s 3 , s 3 ) = ( 0 , 0 ,15000 ,10000 ,12000 ,10000 )


con f = 4.x1+4.x2+0.s1 + 0.s2 + 0.s3 + 0.s4 = 0.
Si queremos mejorar el valor de la funcional, introduciremos la variable x1 (correspondiente
al indicador positivo mximo de los cj) cuyos coeficientes corresponden a la columna P1.
Dicha columna no figura en la base del subespacio de soluciones, formado hasta ahora por
{P3, P4, P4, P5}. Si deseamos introducir P1 en la base, ser necesario reducir las
cantidades de los productos P3, P4, P5, y P6, en la proporcin indicada por los coeficientes
de P1. Como la columna de P1 est formada por los coeficientes 1,2,2,1, deber disminuir
una unidad de P3, 2 de P4,, 2 de P 5 y 1 de P6
Queda por conocer la incidencia de introducir P1 y de quitar unidades de P3, P4, P5 y P6 en
la funcional. El beneficio de introducir una unidad de P1 es 4 (valor dado por su coeficiente
de beneficio c1= 4), y el beneficio de eliminar unidades de P3, P4, P5, y P6, est dado por
Z1 =( ck )T*P1 = 0 quedando una ganancia neta en el cambio Cj - Zj = C1 Z1 = 4 - 0 = 4.
Esto valor (Cj - Zj), se denomina costo de oportunidad y representa lo que se perdera si
no se introduce P1, en la base , lo que es lo mismo, si no se introduce x1 en la solucin.
Por razones prcticas se opera con (Zj-Cj), (que en este caso vale -4), valor que en
definitiva indica un balance econmico el cual analiza la mejora potencial al introducir xj en
la solucin.
En resumen Zj es lo que se perdera al introducir xj y cj lo que se ganara al introducirlo.
Cuando se maximiza una funcional, puede mejorarse la solucin siempre que exista un
valor positivo de cj, mas general, un valor negativo de (Zj-Cj), Si Zj- Cj = 0, indicara que
no se produce cambio en la funcional al introducir dicho vector Pj, en la base. La
introduccin de la nueva fila Zj, adquiere importancia ante la presencia de las variables
artificiales ?j, con un costo M.

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 10 de 10 Rev.02

Mtodo de las penalizaciones. Resolver con el mtodo de las penalizaciones, tambin


llamado de la variable artificial o de la M grande, los programas lineales

a)

x1 + x 2 4
x + 2x 2
Z
=
x
+
x

2
1
1
2
Maximizar
x 1 , x 2 0

Solucin
a)
Transformamos el sistema al formato estndar de maximizacin aadiendo variables de
holgura (S3, S5) y una variable artificial (?4). Bajo la forma de maximizacin, el mtodo de las
penalizaciones incorpora las variables artificiales a la funcin objetivo del problema transformado
con coeficiente - M, donde M representa un nmero grande, en comparacin con el resto de los
coeficientes del programa. El problema transformado queda

Z = x1 + x2 + 0.S3 M .4 + 0.S 5
x1 + x 2 S 3 + 4 = 4
x + 2x + S = 2
2
5
1
x 1 , x 2 , S 3 , 4 , S 5 0
Construimos la tabla inicial del mtodo del simplex

Variables
Variables
Variables Slack
Reales
Artificial
X1
X2
S3
S5
?4
bi Solucin xk
Ck
1
1
-1
0
1
4
?4 =-M
-M
1
2
0
1
0
2
S5 =2
0
Cj
1
1
0
0
-M
F = - 4.M
Zj
-M
-M
M
0
-M
Zj-Cj
-M-1 -M-1
M
0
0
Hay indicadores negativos en la fila Zj-Cj , con sus vectores interiores P1=(1,1) y P2(1,2),
con al menos un elemento positivo. En consecuencia es posible la mejora de la solucin y
tomamos como variable de entrada la base (columna) de X1. Aplicamos la regla de la
mnima razn (cociente), por lo que obtendremos como variable de salida a S5 . El pivote
es entonces y =(2,1). La nueva tabla simplex es:

b
4 2
min i
= min , = min{ 4, 2} = 2
a i ,3 i =1, 2 ,3
1 1

F1 =F1 -F2

Cj
Zj
Zj-Cj

Variables
Reales
X1
X2
0
-1
1
2
1
1
1
M+2
0
M+1

Variables Slack
S3
-1
0
0
M
M

S5
-1
1
0
M
M

Variables
Artificial
?4
1
0
-M
-M
0

bi
2
2

Solucin xk
?4=-M
X1 =2

Ck
-M
1

F = - 2.M + 2

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 11 de 11 Rev.02

Observando la funcional vemos que F = - 2.M + 2 es mayor que 4M por lo que


observamos que hemos mejorado la solucin.
ste es el paso final porque todos los indicadores Cj son no negativos. Como la base tiene
una variable artificial con valor positivo, ?4=2, el problema es infactible.

b)

2. x1 + 3.x 2 x 3 9

Z = 2.x1 x 2 + 3.x 3 x1 2 x 2 + x3 6
Minimizar
x1 , x 2 , x 23 0

Transformamos el programa al formato estndar

Z = 2.x1 x2 +3.x3 0.S1 0.S2 + M.3 + M.4


Variables Reales

Cj
Zj
Cj-Zj

X1
2
1
2
3M
2-3M

X2
3
-2
-1
M
-1-M

Variables Slack
X3
-1
1
3
0
3

S1
-1
0
0
-M
M

S2
0
-1
0
-M
M

2 . x1 + 3 . x 2 x3 S 1 + 3 = 9
x 2x + x S + = 6
2
3
2
4
1
x1 , x 2 , S 1 , S 2 , 3 , 4 0
Variables
Artificial
?3 ? 4
1
0
0
1
M M
M M
0
0

bi
9
6

Solucin xk
? 3 =9
? 4 =6

Ck
M
M

F = 15.M

b
9 6
min i
= min , = min{ 4. 5;6} = 4 .5
a i ,3 i =1, 2 ,3
2 1
En la fila Cj-Zj buscamos el trmino ms negativo. Luego buscamos el cociente mnimo de la
columna bi y X1.
Al pvot y =(1,1) lo hacemos unitario, multiplicando la fila por y luego operando entre filas,
hacemos el resto de la columna X1 igual a cero, excepto Cj.

Variables Reales
F1 *1/2
F2 = F2 - F1

Cj
Zj
Cj-Zj

X1
1
0
2
2
0

Variables Slack

X2
1.5
-3.5
-1

X3
-0.5
1.5
3

S1
-0.5
0.5
0

3-3.5M

-1+1.5M

-1+0.5M

S2
0
-1
0
-M

-4+3.5M

4-1.5M

1-0.5M

Variables
Artificial
?3
?4
0.5
0
-0.5
1
M
M
1-0.5M
M
-1+1.5M

bi
4.5
1.5

Solucin xk
X1 =4.5
? 4 =1.5

Ck
2
M

F = 9+1,5*M

Observemos que se ha modificado el valor de Ck , en consecuencia se obtuvo una mejora de la


funcional que queremos minimizar.

b
4 .5 1 .5
min i
= min
,
= min{ ;1} = 1 .0
a i ,3 i =1, 2 ,3
0 .5 1 .5
Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 12 de 12 Rev.02

Variables Reales
F1 +1/2 F2
F2 = F2 / 1.5

Cj
Zj
Cj-Zj

X1
1
0
2
2
0

Variables
Artificial
?3
?4
1/3
1/3
-1/3
2/3
M
M
4/3
8/3

Variables Slack

X2
1/3
-7/3
-1

X3
0
1
3

S1
-1/3
1/3
0

-19/3

1/3

S2
-1/3
-2/3
0
-7/3

16/3

-1/3

7/3

M-4/3

bi Solucin xk
5
X1 =5
1
X 3 =1

Ck
2
3

F = 13

M-8/3

Volvemos a buscar el menor Cj-Zj que es -14/3, luego buscamos el mnimo cociente.

b
1
5
min i
= min
,
= min{ ;3} = 3
a i , 3 i =1, 2, 3
1/ 3 1/ 3

X2
-2
-7
-1

X3
1
3
3

S1
0
1
0

S2
-1
-2
0

Variables
Artificial
?3
?4
0
1
-1
2
M
M

-4
3

2
1

0
0

-2
2

0
M

Variables Reales
F1 +1/3 F2
F2 = F2 *3

Cj
Zj
Cj-Zj

X1
1
0
2
2
0

Variables Slack

bi Solucin xk
6
X1 =6
3
S 1 =3

2
M-2

Ck
2
0

F = 12

Al ser todas las Cj-Zj positivas no se puede mejorar la funcional, por lo que hemos encontrado la
solucin ptima.

Mnimo

Z = 2.x1 x2 +3.x3 0.S1 0.S2 + M.3 + M.4 =

Resumiendo.

2*61*0+3*00*30*0+ M*0+M*0 =12

El ejemplo 1 se refiere a la maximizacin. En la minimizacin, la seleccin de las variables de


salida es la misma que en el caso de la maximizacin. Para la variable de entrada, dado que
mx. z = - min. (-z), el caso de la minimizacin selecciona la variable de entrada como la variable
no bsica con el coeficiente objetivo ms positivo; el mnimo z se obtiene cuando todos los
coeficientes del rengln -z son no positivos.
Las reglas para seleccionar las variables de entrada y de salida se conocen como condiciones de
optimalidad y de factibiIidad. Por sencillez, resumimos estas condiciones y despus los pasos
del mtodo simplex.
Condicin de optimalidad. La variable de entrada en un problema de maximizacin
(minimizacin) es la variable no bsica que tiene el coeficiente mas negativo (positivo) en el rengln z. Los empates se rompen arbitrariamente. Se llega a la ptima en la iteracin donde todos
los coeficientes de los renglones z de las variables no bsicas son no negativos (no positivos).
Condicin de Factibilidad Tanto para los problemas de maximizacin como de minimizacin la
variable de salida es la variable bsica asociada con la razn no negativa mas pequea. Los
empates se rompen arbitrariamente.
Los pasos del mtodo simplex son
Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 13 de 13 Rev.02

Paso 0.
Paso 1.
Paso 2.
Paso 3.

Determine una solucin bsica factible inicial.


Seleccione una variable de entrada empleando la condicin de factibilidad.
Detngase si no hay una variable de entrada.
Seleccione una variable de salida utilizando la condicin de factibilidad.
Determine las nuevas soluciones bsicas empleando los clculos apropiados
de Gauss-Jordan. Vaya al paso 1.

Los clculos del mtodo simplex son iterativos en el sentido de que se aplican condiciones y
clculos fijos a la tabla simplex actual para producir la siguiente tabla. Por tanto, nos referimos a
las sucesivas tablas simplex como iteraciones.
Ejemplos a resolver

3 . x1 + x 2 = 5
4 . x 1 + 3 . x 2 8
Z = 4 . x1 + x 2
x + 2 .x2 6
a)
1
x 1 , x 2 0
3 .x1 + x 2 5
4 . x 1 + 3 . x 2 8
Z = 4 . x1 + x 2
x + 2 .x2 6
b)
1
x 1 , x 2 0
3 .x1 + x 2 5
4 . x 1 + 3 . x 2 8
Z = 4 . x1 + x 2
x + 2 .x2 6
c)
1
x 1 , x 2 0

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 14 de 14 Rev.02

Programacin Lineal: Modelo Dual


Hemos visto como la P.L. puede ser usada para resolver una extensa variedad de problemas
propios de los negocios, ya sea para maximizar utilidades o minimizar costos. Las variables de
decisin en tales problemas fueron, por ejemplo, el numero de mesas a producir, la cantidad de
dlares a emplear en diferentes medios publicitarios, y muchas mas. En cada caso la solucin
ptima nos explic como podran ser asignados los recursos (Ej. Materia Prima, capacidades de
las mquinas, el dinero) para obtener un objetivo establecido.
Ahora veremos que a cada problema de P.L. se le asocia otro problema de Programacin
Lineal, llamado el problema de programacin dual. La solucin ptima del problema de
programacin dual, proporciona la siguiente informacin respecto del problema de programacin
original:
La solucin ptima del problema dual proporciona los precios en el mercado o los
beneficios de los recursos escasos asignados en el problema original.
La solucin ptima del problema dual aporta la solucin ptima del problema original
y viceversa.
La informacin adicional proveda por la solucin ptima de un problema de programacin dual,
cae sobre lo que podra llamarse la programacin dual.
A cada problema de programacin lineal se le asocia lo que es llamado un problema de
programacin dual. Normalmente llamamos al problema de programacin lineal original el
problema de programacin primal. Para ilustrar la programacin dual, consideremos el siguiente
ejemplo:
Ejemplo. La National Business Machines.
La National Business Machines. (NBM) produce y vende dos tipos de mquinas de escribir:
manual y elctrica. Cada mquina de escribir manual es vendida con un ingreso de $40 y cada
mquina de escribir elctrica produce un ingreso de $60. Ambas mquinas tienen que ser
procesadas (ensambladas y embaladas) a travs de dos operaciones diferentes: O1 y O2.
La NBM tiene las siguientes capacidades mensuales (para todas las plantas del pas):
2000 hrs. de O1.
1000 hrs. de O2.
El nmero de hrs. de O1 y O2 requeridas para producir un modelo terminado se da en la siguiente
tabla:
Operacin
O1
O2

Horas requeridas
Manual Elctrica
3
2
1
2

Capacidades
mensuales (hrs.)
2000
1000

Para producir una mquina manual se requieren 3 hrs. De o1 y una hora de O2. Para
producir una mquina elctrica se requieren 2 hrs. De O1 y 2 hrs. de O2. Sea
X1= nmero de mquinas de escribir manuales a producir cada mes.
X2= nmero de mquinas de escribir elctricas a producir cada mes.
Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 15 de 15 Rev.02

Modelo de programacin lineal. Problema Primal.

3 . x 1 + 2 . x 2 2000
x + 2 . x 1000
Z
=
40
.
x
+
60
.
x

2
1
1
2
Maximizar
x1 , x 2 0
El modelo Primal, puede ser utilizado para encontrar el nmero ptimo de cada tipo de mquina
de escribir a producir mensualmente.
Aplicando el mtodo simplex al problema, encontraremos que la solucin ptima, es
producir 500 mquinas de escribir manuales por mes (x1=500) y 250 mquinas de escribir
elctricas por mes (x2=250). El ingreso mximo es Z = $35000 por mes.
Se adjunta resolucin por mtodo Solver.
DEMANDA DE HRS POR ART.

O1
O2
BENEFICIOS
UNITARIOS

X1

X2

CANT

3
1

2
2

2000
1000

$40,00

$60,00

MENOR
MENOR

FUNCION OBJETIVO
Z = 40* X1+ 60* X2
DEMANDA DE HRS POR ART.

X1

X2

CANT.
REF.

REAL

DIF.

REAL<REF.

O1
O2

1500
500

500
500

2000
1000

2000
1000

0
0

MENOR
MENOR

CANTIDADES

500,0

250,0

TOTAL

$20.000

$15.000

$35.000

BENEFICIOS TOTALES
POR ARTICULO

Informe de sensibilidad
Microsoft Excel 9.0 Informe de sensibilidad
Hoja de clculo: [Ejemplo NBM.xls]Primal
Informe creado: 25/03/01 04:08:59 p.m.
Celdas cambiantes
Valor Gradiente
Celda
Nombre
$B$13 CANTIDADES X1

Igual
500,0

reducido
0,0

$C$13 CANTIDADES X2
Restricciones

250,0

0,0

Valor Multiplicador
Celda
Nombre
$E$10 O1 REAL
$E$11 O2 REAL

Igual de Lagrange
2000
5
1000

25

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 16 de 16 Rev.02

Dado el marco del problema primal, ahora deseamos enfocar sobre el problema dual, un problema
de precio. Nuestro propsito es determinar los precios a los cuales la NBM debera valorar sus
recursos de tal manera que puedan determinar el mnimo valor total al cual estaran dispuestos a
alquilar o vender los recursos, como algo pertinente. La NBM se muestra complaciente en alquilar
las horas de la capacidad de su lnea de ensamble y empaque para las operaciones O1 y O2,
respectivamente.
Sean y1 y y2 las rentas percibidas por hora para las operaciones O1 y O2 respectivamente.
Dada la disponibilidad de los recursos (capacidades mensuales O1 y O2), la renta total por mes es:

C = 2000. y1 + 1000. y2

Se desea como objetivo encontrar el mnimo valor de C de modo que la NBM pueda de una
manera inteligente, analizar algunas propuestas de alquiler o compra de todos los recursos como
un paquete total. En consecuencia, la NBM lo que quiere es minimizar la suma de las rentas.
Considere las siguientes restricciones. Los precios (usaremos el trmino precio tanto para
las rentas como los precios de los productos) todos debern ser mayores o iguales a cero.
Obviamente un recurso no puede tener un precio negativo ya que cualquier recurso vendido
(usaremos vender queriendo decir vender o alquilar) a un un precio negativo podra haber sido
mas provechoso dejarlo ocioso. Por consiguiente, las siguientes restricciones tienen que ser
satisfechas

y1 0; y2 0
En las otras restricciones tienen que ser satisfechas las condiciones de que los precios y1 y y2
deben ser competitivos con las alternativas disponibles.
La NBM tiene como alternativas disponibles producir maquinas elctricas y manuales usando O1 y
O2. Por ejemplo, ya que 3 horas de O1 mas 1 hora de O2 son necesarias para producir una
maquina de escribir manual, el valor en trmino de precios por recursos para dicha mquina es

3. y1 + 1. y 2 .

Este precio debe ser al menos tan grande la contribucin obtenida cuando una
mquina de escribir manual es producida (contribucin de $40). Esto es

3. y1 + 1. y 2 40
la siguiente desigualdad tambin debe ser satisfecha:

2. y1 + 2. y2 60

Modelo de programacin lineal. Problema Dual.

3 . y 1 + y 2 40
2 . y + 2 . y 60
C
=
2000
.
y
+
1000
.
y

1
2

1
2
Minimizar
y 1 , y 2 0

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 17 de 17 Rev.02

Soluciones ptimas del Primal y el Dual.


Ahora daremos las soluciones ptimas para ambos casos
Modelo de programacin lineal. Problema Primal.

3 . x 1 + 2 . x 2 2000
x + 2 . x 1000
2
Maximizar Z = 40 . x 1 + 60 . x 2 1
x1 , x 2 0
Verificacin por Solver
O1
O2
BENEFICIOS
UNITARIOS

Y1

Y2

CANT

3
2

1
2

40
60

$2.000

$1.000

Mayor
Mayor

FUNCION OBJETIVO
Minimizar C = 2000* y1 +1000 * y2
DEMANDA DE HRS POR ART.

O1
O2
CANTIDADES

X1

X2

CANT.
REF.

REAL

DIF.

15,0
10,0

25,0
50,0

40
60

40
60

1E-06
1E-06

5,0
$10.000

25,0
TOTAL
$25.000 $35.000

Verificacin por Mtodo Simplex


X1

Cj

Cj

Cj

PASO 1 (MAXIMIZAR) Mtodo Primal


Ck xi
Rel bi/xi
S2
Valor
SOL
1000
0
2000
s1
0
2

X2

S1

1000

s2

40 60

X1

X2

S1

S2

Valor

SOL

500

xi

-1

1000

s1

0,5

0,5

500

X2

60

0,5

10

-30

30000

X1

X2

S1

S2

Valor

SOL

Ck

0,5

-0,5

500

X1

40

-0,25

0,75

250

X2

60

-5

-25

35000

500
60

BUSCO EL Mayor Cj

Ck

Min

Rel bi/xi
500
1000

Min
500

BUSCO EL Mayor Cj

10

BUSCO EL Mayor Cj

Solucin ptima para el modelo primal:


Mximo ingreso: Z: $35000
Variables bsicas: x1=500 , x2=250. No hay holgura.
Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 18 de 18 Rev.02

Variables no bsicas: S1=0 S2=0 (Variables de holgura).


Modelo de programacin lineal. Problema Dual.

3 . y 1 + y 2 40
2 . y + 2 . y 60
C
=
2000
.
y
+
1000
.
y

1
2

1
2
Minimizar
y 1 , y 2 0

Dual Standard
C = 2000 . y1 + 1000 . y 2 + 0 . s 1 + 0 . s 2 + M . 1 + M . 2
3 . y 1 + y 2 0 . s 1 + M . 1 = 40
2 . y + 2 . y 0 . s + M . = 60
1
2
2
2

y 1 , y 2 0
Solver
O1
O2
BENEFICIOS
UNITARIOS

Y1

Y2

CANT

3
2

1
2

40
60

$2.000

$1.000

Mayor
Mayor

FUNCION OBJETIVO
Minimizar C=2000 * y1+1000 * y2
DEMANDA DE HRS POR ART.

X1

O1
O2
CANTIDADES

X2

CANT.
REF.

REAL

DIF.

40
60

1E-06
1E-06

15,0
25,0
40
10,0
50,0
60
5,0
25,0
TOTAL
$10.000 $25.000 $35.000

Anlisis Simplex

Cj
Zj

PASO 1 (MAXIMIZAR) Mtodo Primal


S1
S2
H1
H2
Valor SOL Ck

X1

X2

-1

40

-1

60

2000
50000

1000
30000

Cj-Zj -48000 -29000


X1

Cj
Zj

10000 10000
S1

S2

H1

0,33333 -0,333333

0,3333

1,33333 0,666667

-1

-0,667

2000
2000

Cj-Zj

Cj
Zj
Cj-Zj

X2

0
0
10000 10000
-10000 -10000 10000 10000

1000
14000
0 -13000

0
6000

0
10000
-10000 -6000

X2

S1

-0,5

0,5

2000
2000

1000
1000

0
-500
500

0
-250
250

S2

1000000

Busco el Minimo Cj -Zj

xi Rel bi/xi
40,00
0
13,33 x1 2000 0,33
25,00
1
33,33 H2 10000 1,33
10000 f
360000
10000
H2

-6000 10000 16000

X1

xi Rel bi/xi Min


13,33
H1 10000 3
13,333
30,00
H2 10000 2

Valor SOL

Ck

Busco el Mnimo Cj -Zj

H2

0,25

0,5

-0,25

x1

2000

-0,75

-0,5

0,75

25

x2

1000

Min
25

-13000

Ck

H1

10000 10000
500
250
9500 9750

Valor SOL

-48000

35000
Busco el Minimo Cj -Zj

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 19 de 19 Rev.02

Solucin ptima para el modelo Dual:


Mnimo Costo: C: $35000
Variables bsicas: y1=5 , x2=25
Variables no bsicas: S1=0 S2=0 1=0 , 2=0 (Variables de holgura y artificial).
Observacin 1
Del cuadro ptimo del modelo dual vemos que el precio ptimo de O1 (capacidad de empaque) es
y1=$5 por hora y el precio ptimo de O2 (capacidad de ensamble) es y2=$25 por hora. Tambin
observamos que el mnimo valor mensual de los recursos O1 y O2 es C = 35000, el cual es
exactamente lo mismo que la utilidad mxima alcanzada , produciendo mquinas de escribir
elctricas y manuales.
Por qu es cierto que el valor mnimo en el modelo dual es igual al mximo ingreso en el modelo
Primal?
La respuesta es que la relacin entre el modelo primal y su dual es tan fuerte que ellos en cierto
sentido son dos formas de resolver el mismo problema. En efecto, cuando cualquiera de los dos
problema es resuelto por el mtodo simplex, el otro se obtiene como subproducto.
Observacin 2
Refirindose a la fila de utilidad en la solucin ptima del modelo primal, observe que el costo de
s1 es $5 por hora. Ahora, s1 es la cantidad no usada de capacidad en O1 y $5 es el valor marginal
(o
algunas veces llamado precio sombra) de 01, correspondiente a la variable dual y1.
Similarmente, el costo ptimo de S2 es $25 por hora correspondiente a la variable dual y2. Esta
relacin es ilustrada grficamente en la Figura.
Tablero ptimo del modelo primal
Tablero ptimo del modelo Dual
X1

Cj

X2

S1

S2

-5

-25

Valor

SOL

35000
Valor

5
25
f

SOL

Ck

x1 2000
x2 1000
35000

En resumen, los valores ptimos de las variables dual, y1, y2, son iguales a los coeficientes de las
variables de holgura s1 y s2, respectivamente, en la funcin objetivo dada en el tablero ptimo del
modelo primal.
La solucin ptima del primal puede ser obtenida exactamente de la misma manera. Esto es,
observe que el ingreso de S1 en la fila C del modelo dual es $500 por mquina de escribir manual,
lo cual corresponde a la variable primal x. En forma similar, el ingreso de S2 en el modelo dual es
$250 por mquina de escribir elctrica, lo cual corresponde a la variable primal x2.

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 20 de 20 Rev.02

Valor

SOL

500

X1

250

X2

35000

Cj-Zj

X1

X2

S1

S2

H1

H2

Valor

SOL

500

250

9500

9750

35000

En resumen, los valores ptimos de las variables primal x1 y x2 son iguales a los coeficientes de
las variables de exceso S1 y S2, respectivamente, en la funcin de costos C dada en el tablero del
modelo dual.
Es importante sealar otros comentarios acerca de los precios del dual ptimo. Primero los precios
ptimos del dual indican cules unidades de recursos (01: capacidad de ensamble y 02: capacidad
de empaque) podran ser compradas o vendidas; Si estos precios mnimos, y1 = $5 por hora de 01
y y2 = $25 por hora de 02, existen en el mercado, entonces para la NBM podra ser indiferente
escoger entre las alternativas de producir mquinas o vender recursos. Si en el mercado los
precios fuesen ms altos que los precios mnimos del dual, entonces la NBM preferira vender los
recursos (o vender el tiempo de 01 y O2) y si en el mercado los precios fuesen ms bajos,
entonces la NBM preferira comprar recursos (e incrementar las capacidades de 01 y 02). Es decir,
los precios minimos del dual dan una medida para la evaluacin del valor marginal por adicin en
la capacidad de los recursos. Para ilustrar esto, suponga que la NBM puede vender 01 (tiempo de
ensamble) a $7 la hora, diga a un competidor cercano, y puede incrementar el tiempo de 02
(capacidad de empaque) a $20 la hora. Entonces la NBM estara dispuesta a vender algunas
horas de capacidad de 01 ya que puede ganar $2 por cada hora del tiempo de 01 vendida ($7 por
hora menos y = $5 por hora es el valor marginal). Similarmente, la NBM podra estar dispuesta a
incrementar la capacidad de 02, ya que puede ganar $6 por cada unidad que incremente en la
capacidad de O2 (y2= $25 por hora incrementada menos $20 por hora de costo en el mercado).
Desde luego, que vender o incrementar la capacidad requerir un cambio en el programa aportado
por la solucin ptima..
Los precios mnimos del dual y1 y Y2 son vlidos, Y1= $5 por hora y Y2= $25 por hora, solamente
si las cantidades completas de 01 y 02 son vendidas a estos precios. Si los recursos (capacidad
de 01 y capacidad de 02) son vendidos parcialmente, Los, precios mnimos son vlidos solamente
para algunos rangos los cuales pueden ser pequeos o grandes, dependiendo de la estructura del
problema.

Inv. Operativa U.T.N. Fac. Reg. Haedo Docente: Ing. Muntaner Unidad II Apunte2 P.L. Simplex

Pg. 21 de 21 Rev.02

Você também pode gostar