Sie sind auf Seite 1von 214

Profesor: Manuel Muoz Mrquez

Curso 2010 -11







Autores:
Juan Carlos Pez Rodrguez
Rafael Alberto Oliva Orbello
ngel Rodrguez Poch



Versin: 12/09/11

I NVESTI GACI N
OPERATI VA
Ingeniera en Organizacin Industrial
Licencia
Se concede permiso para copiar, distribuir y/o modificar este documento bajo
los trminos de la Licencia de Documentacin Libre de GNU, Versin 1.2 o cualquier
otra versin posterior publicada por la Free Software Foundation.
Permission is granted to copy, distribute and/or modify this document under the
terms of the GNU Free Documentation License, Version 1.2 or any later version
published by the Free Software Foundation.



NDICE

Tema 1: Introduccin A La Investigacin Operativa
Pag.5
Tema 2: Programacin Lineal
Pag.7

2.1- Formulacin De Problemas De Programacin Lineal.
Pag.7
2.1.1- Cambio A Formato Estndar.


2.1.2- Hiptesis Que Debe Cumplir Un Problema Para Que Se Pueda
Planear Como Un PPL.

2.1.3- Puntos Factibles.


2.2- Resolucin Grfica De Problemas.
Pag.11

2.2.1- Tipos De Problemas Que Se Pueden Presentar En Funcin De Su
Solucin.

2.2.2- Cmo Son Las Soluciones?

2.2.3- Geometra De Los Conjuntos Convexos.


2.3- Mtodo Simplex.
Pag.25
2.3.1- Conceptos Previos.

2.3.2- Mtodo De Resolucin Del Mtodo Simplex.


2.4- Mtodo Simplex En Formato Tabla.
Pag.27
2.4.1- Metodologa Para El Mtodo Simplex.

2.4.2- Test De Optimalidad.

2.4.3- Cambio De Base.

2.5- Mtodos De Generacin De Una Solucin Bsica Factible Inicial.
Pag.43
2.5.1- Mtodo De Las Dos Fases.
2.5.2- Mtodo De La M Grande.
2.5.3- Soluciones Mltiples.

2.5.4- Degeneracin Y Ciclado.


2.6- Dualidad.
Pag.57
2.6.2- Teorema De La Dualidad Dbil.

2.6.3- Teorema De La Dualidad Fuerte.

2.6.4- Lectura de la solucin dual en la tabla ptima del problema primal.

2.6.5- Interpretacin Econmica De Las Variables Duales.

2.6.6- Condiciones De Holgura Complementaria.


2.7- Mtodo Simplex Dual.
Pag.70

2.7.1- Mtodo De La Restriccin Artificial.


2.8- Sensibilidad.
Pag.84
2.8.1- Anlisis de Sensibilidad en el Vector de Costes.

2.8.2- Anlisis de Sensibilidad en el Vector de Recursos.

2.8.3- Adicin de Variables.

2.8.4- Adicin de Restricciones.

2.8.5- Anlisis Paramtrico de la Sensibilidad.

2.8.5.1- Vector De Costos.

2.8.5.2- Vector Del Lado Derecho.


2.8.6- Anlisis De Tolerancia.




Tema 3: Programacin Lineal Entera
Pag.99

3.1- Problemas De Asignacin Y Transporte.
Pag.99

3.1.1- Formato Tabla Para Problemas De Transporte.

3.2- Mtodos Generales De Resolucin
Pag.104

3.2.1- Mtodos De Generacin De Una Solucin Bsica Factible.
3.2.1.1- Mtodo De La Esquina Noroeste
3.2.1.2- Mtodo De Vogel
3.2.2- Condiciones De Optimalidad Para Un Problema De Transporte.
3.2.3- Mtodo De Transporte.
3.2.3- Problemas De Transbordo.
3.2.4- Problemas De Asignacin.

3.2.4.1.- Algoritmo Hngaro Para Problemas De Asignacin.

3.2.5- Algoritmo General Para Problemas De Programacin Lineal Entera.

NDICE DE PROBLEMAS
Nmero. Tema Pgina
2.1.g Lista 2010-2011 Resolucin grfica
Pg. 15
9.69 Lista 2010-2011 Mtodo Simplex
Pg. 36
3.1.b Lista 2010-2011 Mtodo Simplex
Pg. 38
2.1.c Lista 2010-2011 Mtodo Simplex
Pg. 41
9.2.2 Lista 2010-2011 Mtodo de la M Grande
Pg. 49
9.6.2 Lista 2010-2011 Mtodo de la M Grande
Pg. 51
4.2.a. Lista 2010-2011 Mtodo Simplex-Dual
Pg. 72
4.2.b. Lista 2010-2011 Mtodo Simplex-Dual
Pg. 74
4.2.c. Lista 2010-2011 Mtodo Simplex-Dual y restriccin artificial
Pg. 78
5.6. Lista 2010-2011 Mtodo Simplex-Dual y anlisis sensibilidad
Pg. 81
6.1. Lista 2010-2011 Transbordo - Mtodo de Vogel
Pg. 138
6.2. Lista 2010-2011 Transporte - Mtodo de Vogel
Pg. 151
8.5.4. Lista 2010-2011 Transporte - Mtodo de Vogel Algoritmo Hngaro
Pg. 158
Exmenes resueltos
N2 Febrero-2011 Mtodo de la M Grande y anlisis sensibilidad
Pg. 170
N1 Ordenador Febrero-2011 Mtodo Simplex
Pg. 187
N2 Ordenador Febrero-2011 Transporte
Pg. 190
N1 Marzo-2011 Mtodo de la M Grande y anlisis sensibilidad
Pg. 201
N2 Marzo-2011 Transbordo
Pg. 210
N1 Junio-2011 Mtodo Simplex y Sensibilidad
Pg. 213
N2 Junio-2011 Asignacin.
Pg. 214




Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 1 Introduccin a la Investigacin Operativa.


Pgina 5 de 214

TEMA 1: INTRODUCCIN A LA INVESTIGACIN
OPERATIVA
El trmino Investigacin Operativa se debe en 1938 a P.M.S. Blackett: tambin
se le denomina investigacin de operaciones.
La Investigacin Operativa (I.O.) es el resultado del mtodo cientfico aplicado a
un tipo de problema. En el siglo III a.C. Arqumedes puso en prctica la I.O. para
ayudar a la ciudad de Siracusa a librarse del cerco que la rodeaba. No es hasta la
revolucin industrial hasta que empieza a aparecer la I.O. moderna y con la aparicin de
los ordenadores surge la verdadera I.O.
En el libro F.Hillier y G.Lieberman se define la I.O. como la ciencia que trata
de la toma de decisiones y el modelado de sistemas tanto determinsticos como
probabilsticos originados en la vida real.
Toma de decisiones: Resolucin de un problema.
Modelado: Construccin de un conjunto de funciones que nos permita
evaluar el impacto en la vida real. Es una aproximacin al sistema, no es el sistema real.
Sistemas determinsticos y probabilsticos: Estudios estadsticos sobre el
sistema.
Vida real: La I.O. se preocupa de los problemas reales de la vida real y
pretende resolverlos.
METODOLOGA DE LA I .O.: Se puede dividir en varias fases:
1.- Formulacin y/o modelizacin del problema: Se toma conciencia de la
existencia del problema y que es lo que se pretende conseguir con la resolucin del
problema. Ese problema se tiene que cuantificar, es decir, medir las entradas y salidas
del sistema y las reglas que comparen dichas entradas con las salidas. Los responsables
de llevar a cabo esta etapa son: el decisor, el investigador operativo y los tcnicos o
ingenieros (stos ltimos son los conocedores de la tcnica en cuestin). No se puede
desarrollar un modelo ni muy simple ni muy complejo para resolver el problema, habr
que buscar un equilibrio entre ambos.
2.- Resolver el problema: Si el sistema es complejo lo realiza el Investigador
Operativo. En esta fase se puede detectar que el problema no est bien planteado; si el
proceso de resolucin no termina con xito se debe volver a la fase 1.
3.- Validacin: Una vez obtenida una solucin habr que cuestionar si sta es
razonable o no. En esta etapa el Decisor puede tener en cuenta algunos aspectos que no
hayan sido tenido en cuenta en el modelo y que no son cuantificables. Si no resulta
viable se regresara a la fase 1.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 1 Introduccin a la Investigacin Operativa.


Pgina 6 de 214

4.- Implementacin: Se traslada al sistema real y se comprueba si funciona o no
la solucin. Puede ocurrir que el decisor no est conforme con el funcionamiento de la
solucin, por lo que se deber volver a la fase 1.
Nota: En esta asignatura slo se analizarn las fases 1 y 2.
Ejemplo: Antiguamente en un banco con 5 ventanillas haba 5 colas,
actualmente slo hay una ventanilla y una cola. Se comprob que con una sola
ventanilla se atiende al mismo nmero de personas que cuando haba 5.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 7 de 214

TEMA 2: PROGRAMACIN LINEAL
La Programacin Lineal se desarroll en 1947 cuando Dantzing desarroll el
Mtodo Simplex; considerado como el mtodo principal para resolver la programacin
lineal.
2.1 - FORMULACIN DE PROBLEMAS DE
PROGRAMACIN LINEAL.
Definicin: Un Problema De Programacin Lineal (P.P.L.) es un
problema de optimizacin con una funcin objetivo lineal sujeto a un nmero finito de
igualdades o desigualdades lineales.
Definicin: Un P.P.L. est en Formato Estndar si es de la forma:
Minimizar/maximizar: c
1
x
1
+....+ c
n
x
n

Sujeto a condiciones: a
11
x
1
+ a
12
x
2
+ ...+ a
1n
x
n
= b
1

a
21
x
1
+ a
22
x
2
+ ...+ a
2n
x
n
= b
2

a
m1
x
1
+ a
m2
x
2
+ ...+ a
m n
x
n
= b
m
x
1
,x
2
,..,x
n
> 0 con b
1
,b
2
,,b
m
> 0

Definicin: Un PPL est en Formato Matricial si es de la forma:

(

) (

) (

) (

)
Siendo:
X e 9
n

C e 9
n

A e 9
m x n

B e 9
m

Minimizar/maximizar: C
T
X : Funcin objetivo (Z = C
T
X)
Sujeto a condiciones: AX = B
X > 0 con B> 0
Siendo:
X Vector de variables de decisiones, representa las decisiones a tomar.
C Vector de coeficiente o vector costos, representa los costes unitarios de
produccin asociados a las variables de decisiones.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 8 de 214

B Vector de recursos o vector del lado derecho, representa la disponibilidad.
A Matriz de coeficientes tecnolgicos, vara en funcin de la tecnologa.
2.1.1- Cambio a Formato Estndar.
PASO 1:
Si b
1
es negativo, tenemos que multiplicar por (-1) los dos lados de la
desigualdad y cambiar el sentido de la desigualdad:
a
11
x
1
+ a
12
x
2
+...+ a
1n
x
n
s b
1
< 0 -a
11
x
1
-a
12
x
2
- ...- a
1n
x
n
> -(b
1
)


PASO 2:
En el caso de no tratarse de una igualdad sino de una desigualdad, deberemos
transformarla aadiendo una variable (variable de holgura o variable de exceso) en el
miembro izquierdo. Sumando si la desigualdad es del tipo s Y restando si es del tipo > :
a
11
x
1
+ a
12
x
2
+...+ a
1n
x
n
s b
1
a
11
x
1
+ a
12
x
2
+ ...+ a
1n
x
n
+ s
1
= b
1,
siendo s
1
> 0

a
11
x
1
+ a
12
x
2
+...+ a
1n
x
n
> b
1
a
11
x
1
+ a
12
x
2
+ ...+ a
1n
x
n
- s
1
= b
1,
siendo s
1
> 0

PASO 3:
Si existe alguna variable x
i
s 0 se hace el cambio de variable:


PASO 4:
Si x
i
es libre (no tiene ninguna restriccin) sustituir:
x
i
= x
i
+
- x
i
-
, donde x
i
+
, x
i
-
> 0
EJEMPLO: Pasar el siguiente problema a formato estndar.
MIN: 2x
1
+3x
2
+9x
3
- x
4
(1)
S.A.: x
1
- x
2
+ 4x
3
s 17 (2)
x
1
+ x
2
+ x
3
+ x
4
=100 (3)
3x
1
+ 2x
2
+ 9x
3
- 8x
4
> 5 (4)
-x
1
+ x
2
- x
3
- 4x
4
> -3 (5)
x
1
s 0; x
2
> 0; x
3
libre; x
4
> 0
Paso 1: Verificamos la condicin de vector recursos de b
1
, b
2,.
..., b
m
> 0.
Como b
4
< 0 (ecuacin (5) ) Multiplicamos por (-1) para que

b
4
> 0:
-(-x
1
+ x
2
- x
3
- 4x
4
) s -(-3) x
1
- x
2
+ x
3
+ 4x
4
s 3
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 9 de 214

Paso 2: La 1 restriccin (ecuacin (2)) es del tipo s : queremos una
restriccin del tipo =.
Aadimos una variable de holgura en el miembro izquierdo (sumando):

x
1
- x
2
+ 4x
3
+ s
1
=17, s
1
> 0
s
1
: variable de holgura correspondiente a la 1 restriccin (ecuacin (2) ).
La 3 restriccin es del tipo > pero como queremos una restriccin del tipo
=; aadimos una variable de exceso en el miembro izquierdo (restando):

3x
1
+ 2x
2
+ 9x
3
-8x
4
- s
3
=5, s
3
> 0
s
3
: variable de exceso correspondiente a la 3 restriccin (ecuacin (4) )
La 4 restriccin es del tipo > : queremos una restriccin del tipo =.
Aadimos una variable de holgura en el miembro izquierdo (sumando):

x
1
- x
2
+ x
3
+ 4x
4
+ s
4
= 3, s
4
> 0
s
4
: variable de exceso correspondiente a la 4 restriccin (ecuacin (5) )
Paso 3: Se debe cumplir x
1
, x
2 ,
... ,x
n
> 0
Como x
1
s 0: se hace el cambio de variable


Paso 4: Para el caso de variables libres deberemos realizar el cambio
siguiente:
x
3
= x
3
+
- x
3
-
; x
3
+
, x
3
-
> 0
Por lo que nuestro problema de programacin lineal en formato estndar
quedara as:
Min:


S.a:







Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 10 de 214

Ejemplos tpicos de problemas P.P.L.:
Problema de la dieta: En el proceso de preparacin de una dieta, hay que
tener en cuenta la mezcla de ingredientes para obtener un men con un % de grasa, etc...
El objetivo ser decidir qu cantidad se debe usar de cada ingrediente, teniendo en
cuenta las restricciones.
Problema de transporte: Sea una mercanca a distribuir por una serie de
puntos. Los transportes llevan consigo unos costos: el objetivo ser llevar los
transportes al mnimo costo, con una serie de restricciones.
Problema de produccin: El problema radica en cunto he de producir en
cada periodo para satisfacer la demanda, teniendo en cuenta las restricciones impuestas.
Problema de almacenamiento e inventario: Ligado al problema de
produccin, cuando se produce por encima de la demanda para conseguir que los costos
sean los menores posibles.
2.1.2 - Hiptesis que debe cumplir un problema para que se
pueda planear como un P.P.L.
Aditividad: Los efectos producidos por cada variable se suman.


Proporcionalidad: Los efectos producidos por cada variable son
proporcionales a su valor.


Divisibilidad: Las variables no estn cuantificadas (los valores de las
variables son divisibles, no existe una unidad mnima indivisible).


2.1.3 - Puntos factibles.
Definicin: Un punto Xe9
n
es un Punto Factible si verifica todas las
restricciones de un problema de programacin lineal (PPL).
Definicin: El conjunto formado por todos los puntos factibles,
representados por 9, se denomina Conjunto Factible o Regin Factible.
Definicin: Un punto Xe9
n
factible es una Solucin (ptima) del PPL
si no existe otro punto factible con mejor valor objetivo. Por ejemplo en el caso de
querer minimizar, si no existe otro punto factible tal que: CX < CX*

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 11 de 214

2.2 - RESOLUCIN GRFICA DE PROBLEMAS.
EJEMPLO: Se fabrican dos tipos de juguetes, soldados y trenes: un soldado se vende
por 27 u.m. y utiliza 10 unidades de materia prima. Un tren se vende por 21 u.m. y
utiliza 9 unidades de materia prima (el costo de materia prima es 9). Cada tren eleva el
coste de produccin en 10 unidades y cada soldado en 14 unidades. Cada juguete
necesita un ensamblado y una acabado: el tren necesita 1 hora de ensamblado y 1 hora
de acabado, y el soldado 1 hora de ensamblado y 2 horas de acabado. Se dispone de 80
horas de ensamblado y 100 horas de acabado semanales y se pueden vender como
mximo 40 soldados semanales. Formular el problema.
En primer lugar representamos las variables en juego, que en nuestro caso ser:
s nmero de soldados a producir semanalmente.
t nmero de trenes a producir semanalmente.
Nuestro objetivo es tratar de maximizar el beneficio neto. Segn los datos del
problema:
Max [(27 10 14) s] + [21 9 10) t] = Max 3s+2t
Las restricciones que nos obliga el problema son:
En cuanto al ensamblado: (1h s) + (1h. t)80 h/semana = s+t80
En cuanto al acabado: (2h s) + (1h. t)100 h/semana = 2s+t100
Lmite mximo de ventas de soldados semanales = s40
Las cantidades deben ser positivas = s0 ; t0
A continuacin plasmamos las tres ecuaciones en sus grficas. En realidad las
ecuaciones definen un semiplano, pero para facilitar su trazado trazaremos la lnea de
referencia y despus averiguaremos si el plano a seleccionar es el que est por debajo de
esa lnea o por encima. Para ello basta con sustituir algn punto de esa zona en la
ecuacin.
- s+t80 s+t=80
Para dibujar la lnea calculamos dos puntos, por ejemplo s=0 y t=0
s+t=80para s=0 0+t=80 t=80 luego el punto es (s,t)(0,80)
s+t=80para t=0 s+0=80 s=80 luego el punto es (s,t)(80,0)
Para verificar con cul de los dos lados nos quedamos sustituimos el punto por
ejemplo (0,0). s+t800+080 080 como la desigualdad es correcta, el punto (0,0)
pertenece al semiplano.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 12 de 214



A continuacin dibujamos el semiplano 2s+t100
2s+t100 2s+t=100
Para dibujar la lnea calculamos dos puntos, por ejemplo s=0 y t=0
2s+t=100para s=0 2x0+t=100 t=100 luego el punto es (s,t)(0,100)
2s+t=100para t=0 2s+0=100 s=100/2=50 luego el punto es
(s,t)(50,0)
Para verificar con cul de los dos lados nos quedamos sustituimos el punto por
ejemplo (0,0). 2s+t1000+0100 0100 como la desigualdad es correcta, el punto
(0,0) pertenece al semiplano.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 13 de 214

- El semiplano s40 es una lnea vertical en el punto s=40 y toda su izquierda.

Si unimos las tres grficas:

La interseccin de las dos rectas es un punto importante que utilizaremos
posteriormente. Para el clculo de este punto es tan fcil como resolver el sistema de
dos ecuaciones con dos incgnitas de las dos rectas:
2s+t=100
s+t=80
s=80-t 2s+t=100 2*(80-t)+t=100
160-2t+t=100 160-100=2t-tt=60s=20 (20,60)
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 14 de 214

La funcin objetivo (Z) es Z=3s+2t. Podemos igualar esta funcin a un valor
arbitrario, por ejemplo el 60 que es divisible entre 2 y 3 para que obtengamos nmeros
enteros y podremos obtener una lnea tal como:
Para Z=60 3s+2t=60 Calculamos dos puntos de la recta, por ejemplo s=0 y t=0
3s+2t=60para s=0 3x0+2t=60 t=60/2=30 luego el punto es (s,t)(0,30)
3s+2t=60para t=0 3s+2x0=60 s=60/3=20 luego el punto es (s,t)(20,0)
Variando el valor de Z iremos variando las rectas, pero todas ellas paralelas. El
punto que maximiza la funcin es aquella lnea que pasa por (20,60)

Luego el punto que maximiza la produccin es el punto de unin de las dos
rectas (2s+t100) y (s+t80)

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 15 de 214

s*=20 ud.
t*=60ud.
Z*=180 (Z=3s+2tZ=3x20+2x60=180)
Luego la produccin que maximiza los recursos sera la de producir 20ud. de
soldados y 60ud. de trenes a la semana.
EJEMPLO: Resolver grficamente el siguiente problema de programacin
lineal (problema 2.1.g. de la relacin de problemas propuesta por el
profesor):
max -4x
1
+ x
2

s.a 2x
1
+ x
2
2
x
1
- 3x
2
15
x
1
+ 4x
2
8
x 0
SOLUCIN:
En primer lugar plasmamos las tres ecuaciones en sus grficas. En realidad las
ecuaciones definen un semiplano, pero para facilitar su trazado trazaremos la lnea de
referencia y despus averiguaremos si el plano a seleccionar es el que est por debajo de
esa lnea o por encima. Para ello basta con sustituir algn punto de esa zona en la
ecuacin.
- 2x
1
+ x
2
2 2x
1
+ x
2
= 2
Para dibujar la lnea calculamos dos puntos, por ejemplo x
1
=0 y x
2
=0
2x
1
+ x
2
= 2para x
1
=0 20+ x
2
=2 x
2
=2 luego el punto es (x
1,
x
2
)(0,2)
2x
1
+ x
2
= 2para x
2
=0 2 x
1
+ 0=2 x
1
=2/2=1 luego el punto es (x
1,
x
2
)(1,0)
Para verificar con cul de los dos lados nos quedamos sustituimos el punto por
ejemplo (0,0). 2x
1
+ x
2
2 20+0 2 02 como la desigualdad NO es correcta, el
punto (0,0) NO pertenece al semiplano; seleccionamos la zona opuesta:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 16 de 214


- x
1
- 3x
2
15 x
1
- 3x
2
= 15
Para dibujar la lnea calculamos dos puntos, por ejemplo x
1
=0 y x
2
=0
x
1
- 3x
2
= 15para x
1
=0 0 - 3x
2
=15 x
2
=-15/3=-5 luego el punto es (x
1,
x
2
)(0,-5)
x
1
- 3x
2
= 15para x
2
=0 x
1
- 30=15 x
1
=15 luego el punto es (x
1,
x
2
)(15,0)
Para verificar con cul de los dos lados nos quedamos sustituimos el punto por
ejemplo (0,0). x
1
- 3x
2
15 0-30 15 015 como la desigualdad es correcta, el
punto (0,0) pertenece al semiplano:

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 17 de 214

- x1 + 4x2 8 x1 + 4x2 = 8
Para dibujar la lnea calculamos dos puntos, por ejemplo x
1
=0 y x
2
=0
x1 + 4x2 = 8para x
1
=0 0 +4x
2
=8 x
2
=8/4=2 luego el punto es (x
1,
x
2
)(0,2)
x1 + 4x2 = 8para x
2
=0 x
1
- 40=8 x
1
=8 luego el punto es (x
1,
x
2
)(8,0)
Para verificar con cul de los dos lados nos quedamos sustituimos el punto por
ejemplo (0,0). x1 + 4x2 8 0+40 8 08 como la desigualdad NO es correcta, el
punto (0,0) NO pertenece al semiplano, seleccionamos el semiplano contrario:

El conjunto formado por todos los puntos factibles, representados por 9, se denomina
Conjunto Factible o Regin Factible.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 18 de 214



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 19 de 214

La funcin objetivo (Z) es Z= -4x
1
+ x
2
. Podemos igualar esta funcin a un valor
arbitrario, por ejemplo el 4 que es divisible entre 4 y 1 para que obtengamos nmeros
enteros y podremos obtener una lnea tal como:
Para Z=4 -4x
1
+ x
2
=4 Calculamos dos puntos de la recta, por ejemplo x
1
=0 y x
2
=0
-4x
1
+ x
2
=4para x
1
=0 -40+ x
2
=4 x
2
=4 luego el punto es (x
1,
x
2
)(0,4)
-4x
1
+x
2
=4para x
2
=0 -4x
1
+ 0=4 x
1
=-4/4=-1 luego el punto es (x
1,
x
2
)(-1,0)

Variando el valor de Z iremos moviendo las rectas, pero todas ellas paralelas.
Aquella que toque a la regin factible y nos de un valor de Z mayor ser la solucin
ptima:

Como podemos observar la funcin objetivo se puede ir incrementando
infinitamente su valor que estar dentro de la regin factible, es decir se trata de un
problema ilimitado.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 20 de 214

2.2.1- Tipos de problemas que se pueden presentar en funcin de
su solucin.
Problema con solucin ptima nica: El problema se representa y tiene
una solucin nica.
Problema con soluciones ptimas alternativas: El problema se
representa y tiene infinitas soluciones ptimas (un segmento). Este tipo de problema
aparece cuando la funcin objetivo es paralela a una de las restricciones.
Sea el P.P.L: Max z = 6x1 + 10x2
s.a: 5x1+2x2 < 10
3x1 + 5x2< 15
Xi > 0

Problema Infactible: La Regin ptima R est vaca.
Sea el P.P.L: Min z = x
1
+ x
2

s.a: x
1
+ x
2
< 1
4x
1
+2 x2 > 6
x
i
> 0

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 21 de 214


Problema no acotado o ilimitado: No est limitado el valor objetivo
dentro de un conjunto factible; la funcin objetivo puede mejorar indefinidamente. El
problema real no puede ser ilimitado, el que yo formulo si porque se me puede olvidar
alguna restriccin.
Por ejemplo: Maximizar X
1


s.a: X
1 ,
X
2
> 0


NOTA: Si tuvisemos que minimizar en vez de maximizar, este problema
sera con solucin ptima finita (0,0), pero con regin factible ilimitada.
2.2.2- Cmo son las soluciones?
Si Z = cte: todos los puntos de la regin factible pueden
ser solucin.
Si Z = cte: los puntos del interior de R no son ptimos.
La nica forma de que el punto interior de la arista sea
solucin ptima es que todos los puntos de la arista sean
solucin ptima; esto slo ocurre en el caso de que Z sea
paralela a la arista. En caso de que Z no sea paralela a la arista,
no sern soluciones ptimas ni en los puntos del interior de la
X
1

R
X
2

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 22 de 214

arista ni uno de los extremos de sta. De aqu se concluye que los problemas con
solucin ptima finita o tienen solucin nica o tienen infinitas soluciones, pero nunca
2, 3, 4....
Restricciones Activas: Son aquellas a las que pertenecen el punto factible (en
el caso del ejemplo las restricciones s + t s 80, 2s + t s 100 son restricciones activas). Si
se eliminaran, modifican la solucin


Restricciones No Activas: Son aquellas a las que no pertenecen el punto
factible (en el caso del ejemplo la restriccin s s 40 es una restriccin no activa).
Si se eliminan la solucin no cambia.

2.2.3- Geometra de los conjuntos convexos.
Definicin: Un conjunto Se9
n
se dice Conjunto Convexo si x,ye S y
e[0,1] se tiene que: x +(1-)y e S.

Definicin alternativa: Un conjunto Se9
n
se dice Conjunto Convexo si
x,ye S se tiene [x,y]e S, donde S es el segmento de extremos x e y (un conjunto es
convexo si todos los puntos contenidos en el segmento, que une los puntos x e y
tambin pertenece al conjunto.

Propiedad: La interseccin de conjuntos convexos es un conjunto convexo:
Sea S= S
i
con Si convexo i
Sean x,yeS = S
i
x,yeS
i
ieI
[x,y] s S
i
ieI (por definicin de convexidad)
[x,y] e S
i
= S (S es convexo)


NO CONVEXO CONVEXO
CONVEXO CONVEXO NO CONVEXO
(circunferencia)
ieI
ieI
ieI
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 23 de 214

Definicin: Un conjunto definido por un nmero finito de igualdades o
desigualdades lineales es un Conjunto Convexo. El conjunto definido por una igualdad
lineal es convexo.
Sea A= {x
1
, x
2
,...,x
n
}, tal que o
1
x
1
+ ... + o
n
x
n
= |
Sea x
1
, x
2
eA o
1
x
1
1
+ ... + o
n
x
n
1
= | (*)
o
1
x
1
2
+ ... + o
n
x
n
2
= | (* (1-))
Sea e [0,1] o
1
[x
1
1
+ (1-) x
1
2
] + ...+ o
n
[x
n
1
+ (1-) x
n
2
] = | + (1-) | = |
Si y
i
= x
1
1
+ (1-) x
1
2
yeA
Definicin: La regin factible de un PPL es un conjunto convexo, ya que
est definido por un nmero finito de igualdades o desigualdades.
Definicin: Un conjunto definido por un nmero finito de igualdades o
desigualdades lineales se dice Politopo.
Definicin: Un Politopo se dice Poliedro si es acotado.
Definicin: Un vector d se dice Direccin De I limitacin de un
conjunto convexo S, si x
0
e S, e9
+
se tiene que: x
0
+d eS (semirrecta con
origen en x
0
y direccin d). Ningn conjunto acotado puede ser ilimitado. Para que un
conjunto tenga direccin de ilimitacin debe contener semirrectas, o sea, debe ser
ilimitado.
Dentro de los politopos estn los acotados y los no acotados. En la prctica, no
pueden existir PPL infinitos (que no estn acotados). Si ocurre esto, hay que obtener
alguna pista de la restriccin que se nos ha escapado, una direccin de ilimitacin.

Multiplico por el parntesis y
sumo ambas expresiones
DIRECCIONES DE
ILIMITACIN
DIRECCIONES DE
ILIMITACIN
SLO TIENE UNA
DIRECCIN DE
ILIMITACIN, YA QUE
LA PARBOLA NO
TIENE ASNTOTAS
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 24 de 214

Definicin: Una Direccin De I limitacin se dice Extrema si no se puede
obtener como combinacin con coeficientes positivos de dos direcciones de ilimitacin
distintas. No es suma de otras dos.




Definicin: Un punto de un conjunto convexo se dice Punto Extremo del
conjunto si no existen X
1
=X
2
del conjunto y e(0,1) tal que: x
0
=x
1
+(1-)x
2.
Es un
extremo si no podemos encontrar un segmento del conjunto que tenga el punto en su
interior.

DIRECCIONES DE
ILIMITACIN EXTREMA
NO TIENE PUNTOS
EXTREMOS
PUNTOS
EXTREMOS
PUNTOS
EXTREMOS
PUNTOS
EXTREMOS
SEMIPLANO
ABIERTO, NO
TIENE PUNTOS
EXTREMOS
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 25 de 214

2.3- MTODO SIMPLEX.
2.3.1- CONCEPTOS PREVIOS.
Supongamos que queremos: Min: CX
s.a: A*X = b
X > 0
Para ello tenemos que construir una matriz Ae9
m*n
, donde n es el nmero de
incgnitas y mel nmero de ecuaciones:
n < m: Sistema incompatible o sistema compatible determinado
n = m: Sistema compatible determinado
n > m: rg (A) = m: las ecuaciones son linealmente independientes (sistema
compatible indeterminado con infinitas soluciones). De todas las posibles soluciones
slo nos interesan algunas de ellas: Soluciones Bsicas.
Definicin: Si a partir de la matriz A se seleccionan m-columnas
linealmente independientes para formar la matriz B, la solucin del sistema de
ecuaciones BxX
b
=b se dice Solucin Bsica.
Definicin: Una solucin bsica se dice Bsica Factiblesi es bsica y es
factible.
Definicin: Un punto factible es un punto extremo de la regin factible si
y solo si es una solucin bsica factible.
Definicin: Una solucin bsica factible se dice Degenerada Factible si
alguna de las variables bsicas tiene valor nulo.
TEOREMA FUNDAMENTAL DE PPL:
1.- Si existe un punto factible, existe una solucin bsica factible y por tanto
un punto extremo.
2.- Si existe solucin ptima, entonces existe una solucin bsica factible
ptima y por tanto un punto extremo.
2.3.2- MTODO DE RESOLUCIN DEL MTODO SIMPLEX.
1.- Formar todas las posibles bases y calcular las soluciones de los
respectivos sistemas de ecuaciones, o calcular todos los puntos extremos y quedarme
con los factibles.
2.- Rechazar las soluciones no factibles.
Estas dos opciones o bien
tienen solucin nica o bien
no tienen solucin, por lo que
no interesan para PPL.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 26 de 214

3.- Evaluar en todos los puntos.
4.- Elegir el mejor.
NOTA: Inconveniente: Tener un problema con n=100 variables y m=30
restricciones. El nmero de bases que podemos tener es:
(


Este mtodo no es muy viable porque supone una gran cantidad de tiempo. El
mtodo SIMPLEX no evala todas las posibles soluciones, elimina grandes grupos
mediante condiciones, con lo que ahorra tiempo y clculos.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 27 de 214

2.4- MTODO SIMPLEX EN FORMATO TABLA.
Lo veremos con un ejemplo. Supongamos que tenemos que resolver el
problema:
Max 3s + 2t
Sujeto a s + t 80
2s + t 100
s 40
s, t 0
Paso 1: poner el problema en formato estndar, por lo que el lado derecho tiene
que ser positivo, las restricciones tienen que ser igualdades y las variables tienen que ser
0:
Max 3s + 2t
Sujeto a s + t + s
1
= 80
2s + t + s
2
= 100
s + s
3 =
40
s, t, s
1
, s
2
, s
3
0
Paso 2: aadimos la ecuacin de la funcin objetivo (Z).
3s + 2t=Z-3s - 2t+Z=0:
s+ t+ s1+ =80
2s+ t+ s2 =100
s+ s3 =40
-3s2+ -2t+ Z =0

s t s
1
s
2
s
3
z
s
1
1 1 1 0 0 0 80
s
2
2 1 0 1 0 0 100
s
3
1 0 0 0 1 0 40
-3 -2 0 0 0 1 0
Primera iteracin:
Paso 3: Tengo que buscar soluciones bsicas factibles, por lo que tengo que
considerar 3 ecuaciones con 3 variables. s
1
, s
2
, s
3
son soluciones bsicas, el resto se
consideran no bsicas y por tanto igualadas a cero, el sistema de ecuaciones resultara:
s
1
= 80
s
2
= 100
s
3
= 40
Por eso las coloco a la izquierda de la tabla. s y t no son soluciones bsicas, pero
nos interesa que s lo sean. Si nos fijamos en la ltima fila y hacemos s y t = 0, tenemos
que z = 0, por lo que no estamos ante una solucin de acuerdo con el problema.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 28 de 214

Debemos hacer que s y t entren a formar parte de las variables bsicas (columna de la
izquierda).
- Qu pasa si entra s en la base?
Entonces t sera no bsica. Tendremos que la ltima ecuacin sera:
-3s + z = 0 = z = 3s
- Qu pasa si entra t en la base?
Entonces s sera no bsica. Tendremos que la ltima ecuacin sera:
-2t + z = 0 = z = 2t
Lo que nos interesa es introducir s en la base, ya que es la que tiene mayor
coeficiente (nos encontramos en un problema de maximizar, la sealizamos con una
flecha ^). Ahora tenemos que buscar la variable que sale. Como t no est en la base,
toma valor 0:
s + s
1
= 80 s
1
= 80 s 0 = s 80 / 1
2s + s
2
= 100 s
2
= 100 2s 0 = s 100 / 2
s + s
3 =
40 s
3
= 40 s 0 = s 40 / 1
Todas las condiciones se cumplen para s 40. Decir que s = 40 es equivalente a
decir que s
3
=40s = s
3
= 0. La variable que sale de la base es s
3
(la marcamos con una
flecha =). Si el coeficiente de s fuera negativo o cero, no lo tomaramos.
s t s1 s2 s3 z
s1 1 1 1 0 0 0 80
s2 2 1 0 1 0 0 100
s3 1 0 0 0 1 0 40 =
-3 -2 0 0 0 1 0
^
Paso 4: se hacen los cambios necesarios para que nuestras variables sean bsicas.
Para ello se pivota sobre el coeficiente de (s, s
3
), buscamos hacer 0 los coeficientes
tecnolgicos de la columna de s.
- A la ltima fila le sumo 3 veces la 3 fila.
- A la primera fila le resto la 3.
- A la segunda fila le resto 2 veces la 3.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 29 de 214

Y nos queda as:
s t s1 s2 s3 z
s1 0 1 1 0 -1 0 40
s2 0 1 0 1 -2 0 20
s 1 0 0 0 1 0 40
0 -2 0 0 3 1 120

Segunda iteracin:
Nuestra solucin ahora es:
s = 40
t = 0
z = 120.
Esta tabla no es la ptima, por lo que tenemos que volver a cambiar de variable.
Repetimos el proceso desde el principio. Veamos las alternativas:
- Qu pasa si entra t en la base?
Tendremos que la ltima ecuacin sera:
-2t + z = 120 = z = 120 + t
Esta ecuacin nos interesa, ya que hace que aumente la funcin objetivo.
- Qu pasa si entra s
3
en la base?
Entonces t sera no bsica. Tendremos que la ltima ecuacin sera:
3s
3
+ z = 120 = z = 120 3s
3

Esta variable entr en la etapa anterior, por lo que ahora no puede entrar.
Adems, hace que disminuya la funcin objetivo, y nuestro problema es de maximizar.
Entra en la base la variable t y saldra el valor mnimo de los coeficientes
positivos (dividimos la solucin por el coeficiente de t correspondiente a cada fila):
t + s
1
= 40 s
1
= 40 t 0 = t 40 / 1
t + s
2
= 20 s
2
= 20 t 0 = t 20 / 1
t + 0 = 40 0 = 40 t 0 = t 40 / 0 = t
Todas las condiciones se cumplen para t 20. Pivotamos sobre este elemento,
ya que es el ms pequeo (nuestro problema es de maximizacin).
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 30 de 214

Entra t y sale s
2
:
s t s
1
s
2
s
3
z
s
1
0 1 1 0 -1 0 40
s
2
0 1 0 1 -2 0 20 =
s 1 0 0 0 1 0 40
0 -2 0 0 3 1 120
^
Ahora se hacen los cambios necesarios para que nuestras variables sean bsicas.
Para ello se pivota sobre el coeficiente de (t, s
2
), buscamos hacer 0 los coeficientes
tecnolgicos de la columna de t.
- A la ltima fila le sumo 2 veces la 2 fila.
- A la primera fila le resto la 2.
Y nos queda as:
s t s
1
s
2
s
3
z
s
1
0 0 1 -1 1 0 20
t 0 1 0 1 -2 0 20
s 1 0 0 0 1 0 40
0 0 0 2 -1 1 160

Tercera iteracin:
Ahora las variables s y t son bsicas, y la solucin sera:
s = 40
t = 20
z = 160
Esta tabla no es la ptima (para que sea ptima en maximizacin, deben ser 0
todos los coeficientes de la ltima fila), por lo que tenemos que volver a cambiar de
variable. Repetimos el proceso desde el principio. Veamos las alternativas:
- Qu pasa si entra s
2
en la base?
Tendremos que la ltima ecuacin sera:
2s
2
+ z = 160 = z = 120 2s
2

Esta ecuacin no nos interesa, ya que hace que disminuya la funcin objetivo.
- Qu pasa si entra s
3
en la base?
Tendremos que la ltima ecuacin sera:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 31 de 214

-s
3
+ z = 160 = z = 160 + s
3

Esta es la variable que nos interesa, hace que aumente la funcin objetivo, y
nuestro problema es de maximizar.
Entra en la base la variable s
3
y saldra el valor mnimo de los coeficientes
positivos (dividimos la solucin por el coeficiente de s
3
correspondiente a cada fila):
s
3
+ s
1
= 20 s
3
= 20 s
1
0 = s
3
20 / 1
-2s
3
+ t = 20 -2s
3
= 20 t 0 = s
3
20 / -2
s
3
+ s = 40 s
3
= 40 s 0 = s
3
40 / 1
Sale s
1
, que es la condicin ms restrictiva.
s t s
1
s
2
s
3
z
s
1
0 0 1 -1 1 0 20 =
t 0 1 0 1 -2 0 20
s 1 0 0 0 1 0 40
0 0 0 2 -1 1 160
^
Ahora se hacen los cambios necesarios para que nuestras variables sean bsicas.
Para ello se pivota sobre el coeficiente de (s
3
, s
1
), buscamos hacer 0 los coeficientes
tecnolgicos de la columna de s
3
.
- A la ltima fila le sumo la 1 fila.
- A la segunda fila le sumo 2 veces la 1.
- A la tercera fila le resto la 1.
Y nos queda as:
s t s
1
s
2
s
3
z
s
3
0 0 1 -1 1 0 20
t 0 1 2 -1 0 0 60
s 1 0 -1 1 0 0 20
0 0 1 1 0 1 180
Las soluciones ahora son:
s = 20
t = 60
z = 180
Y tenemos que:
s
1
+ t = 180
s
2
+ t = 180
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 32 de 214

Por lo que si aumentamos s
1
o s
2
, la funcin objetivo disminuye (no debe darse,
nuestro problema es de maximizar), por lo que esta tabla es la ptima. Si la solucin es
nica, se debe obtener el mismo resultado con el mtodo grfico que con el simplex.
Un PPL tiene una solucin, infinitas soluciones o ninguna solucin, nunca puede tener
2, 3 4 soluciones.
2.4.1- METODOLOGA PARA EL MTODO SIMPLEX.
Paso 1: Buscar una solucin bsica factible inicial (punto extremo).
Paso 2: Realizar el Test de Optimalidad (determinar si el paso a una solucin
bsica adyacente puede mejorar la funcin objetivo).

Problemas de maximizar: la solucin es ptima si todos los elementos de
la fila z son 0.
Problemas de minimizar: la solucin es ptima si todos los elementos de
la fila z son 0.

Paso 3: Cambiar de base, se hace pivotando y volviendo al paso 1 (determinar la
solucin bsica adyacente con mayor mejora en el valor del objetivo).

Paso 3.1: Entra la variable que menos cumple la condicin de optimalidad,
es decir:
Maximizar: la que tenga menor valor entre los negativos de la fila z.
Minimizar: la que tenga mayor valor entre los positivos de la fila z.
Paso 3.2: Sale la variable cuyo cociente del lado derecho entre sus
correspondientes elementos positivos en la columna de la variable que entra
sea el ms pequeo.

Paso 3.3: Pivotar sobre el elemento de la fila de la variable que sale y la
columna de la variable que entra. Se debern realizar las operaciones que se
deseen, para que al final quede la matriz identidad en las columnas de las
variables bsicas. La operacin de pivotaje en una tabla simplex es
equivalente a un cambio de base, por lo que el resultado final ser el mismo
sin interferir las operaciones realizadas.

EJEMPLO: mtodo Simplex:
Minimizar x
1
2x
2

Sujeto a 2x
1
+ 2x
2
+ x
4
= 6
x
1
+ 4x
2
x
3
+ x
5
= 12
x
1
, x
2
, x
3
, x
4
, x
5
0
El problema ya est en formato estndar. Lo pasamos a la tabla, x
4
y x
5
sern las
variables bsicas:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 33 de 214

x
1
x
2
x
3
x
4
x
5

x
4
2 2 0 1 0 6 = sale 6 / 2 = 3
podemos elegir
cualquier opcin,
elegimos la primera x
5
1 4 -1 0 1 12 12 / 4 = 3
1 2 0 0 0 0

^
entra
el mayor
entre
todos los
positivos


x
1
x
2
x
3
x
4
x
5

x
2
2/2=1 2/2=1 0/2=0 1/2 0/2=0 6/2=3 Dividimos toda la fila por el pivote
x
5

1-(22)=
-3
4-(22)=
0
-1-(20)=
-1
0-(21)=
-2
1-(20)=
1
12-(26)=
0
le restamos 2 veces la 1 fila
-1 0 0 -1 0 -6 le restamos la 1 fila

x
1
x
2
x
3
x
4
x
5

x
2
1 1 0 1/2 0 3
x
5
-3 0 -1 -2 1 0
-1 0 0 -1 0 -6
Esta tabla es ptima ya que cumple el criterio de optimalidad (todos los valores
de la fila z son 0). La matriz de las variables es:



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 34 de 214

Tipos de soluciones en la tabla simplex.
(Para un problema de maximizar)
a) I nfactible: Un trmino del lado derecho negativo
x
1
x
2
x
i


x
n

x
1
- a
x
2
b
zj-cj >0 j
b) No acotado: Columna de variable que entra con todos los trminos negativos
x
1
x
2
x
i


x
n

x
1
-a
x
i
-b
-
c) Degenerada: Una variable bsica con valor cero.
x
1
x
2
x
i


x
n

x
1
0
x
2
b
zj-cj >0 j
d) Soluciones alternativas: Variables no bsicas con trmino fila z igual a cero.
zj-cj >0 j
x
1
x
2
x
i
x
n

x
1
a
x
2
b
0
e) Rayo ptimo: Variables no bsicas con trmino fila z igual a cero y columna
negativa. zj-cj >0 j
x
1
x
2
x
i


x
n

x
1
-a
x
i
-b
0

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 35 de 214

EJEMPLO: mtodo Simplex:
Tenemos el siguiente problema:
Max 3x
1
+ 2x
2

Sujeto a 2x
1
+ 3x
2
< 12
2x
1
+ x
2
< 8
x
i
0
Paso el problema a formato estndar aadiendo variables de holgura adicionales.
El subndice de las variables se corresponde con la restriccin.

Max 3x
1
+ 2x
2

Sujeto a 2x
1
+ 3x
2
+ s
1
= 12
2x
1
+ x
2
+ s
2
= 8
x
i
, s
i
0
Escribo el problema en formato tabla, escogiendo como variables bsicas las de
holgura y como no bsicas el resto.
Realizamos el test de optimalidad observando los trminos del rengln z y
comprobamos que la solucin no es ptima al existir trminos negativos (< 0) y tratarse
de un problema de maximizacin.


entra
-

coeficientes
de z en la
f.o.
3 2 0 0
x
1
x
2
s
1
s
2

0 s
1
2 3 1 0 12
12 / 2 = 6
Elegimos la 2
fila que es la
menor 0 s
2
2 1 0 1 8 = sale
8 / 2 = 4
-3 -2 0 0 0

(
0
.
2
+
0

2
)
-
3
=

-
3

(
0

3
-
0

1
)
-
2
=

-
2

(
0

1
+
0

0
)
-
0
=

0

(
0

0
+
0

1
)
-
0
=

0

(
0

1
2
+
0

8
)
=

0

A la 1 fila le restamos el 2.
A la 3 sumamos la 2 multiplicado por 3/2
Dividimos la 2 fila entre el pivote (2).

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 36 de 214



Entra
(el mayor entre
todos los negativos)
-


coeficientes
de z en la
f.o.
3 2 0 0

x
1
x
2
s
1
s
2

0 s
1
0 2 1 -1 4 = sale
4 / 2 = 2 elegimos la
primera fila,
que es la menor
3 x
1
1 1/2 0 1/2 4
4:1/ 2 = 8

0 -1/2 0 3/2 12




A la 2 fila le restamos la 1 multiplicado por
Dividimos el 1 rengln entre el pivote (2).
A la 3 fila le sumamos la 1 multiplicada por

coeficientes
de z en la f.o.
3 2 0 0
x
1
x
2
s
1
s
2

2 x
2
0 1 1/2 -1/2 2
3 x
1
1 0 -1/4 3/4 3
0 0 1/4 5/4 13
La tabla cumple con la condicin de optimalidad al ser todos los coeficientes del
rengln z > 0 y es factible por ser los trminos del lado derecho > 0. Luego la solucin
es:


En forma matricial el valor de z* es:

)
EJEMPLO: mtodo Simplex (Problema 9.69 relacin problema propuestos
por el profesor) :
Tenemos el siguiente problema:
Min -3x
1
+ 2x
2

Sujeto a x
1
+ x
2
-1
4x
1
+ 2x
2
< 5
x
1
0
x
2
-1
SOLUCIN:
Paso el problema a formato estndar:

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 37 de 214

Min -3x
1
+ 2x
2

Sujeto a -x
1
- x
2
< 1
4x
1
+ 2x
2
< 5
x
1
0
-x
2
< 1 x
2
:Libre x
2
= x
2
+
- x
2
-

Min -3x
1
+ 2x
2
+
- 2x
2
-

Sujeto a -x
1
- x
2
+
+ x
2
-
< 1
4x
1
+ 2x
2
+
- 2x
2
-
< 5
-x
2
+
+ x
2
-
< 1
x
i
0 i
Min -3x
1
+ 2x
2
+
- 2x
2
-

Sujeto a -x
1
- x
2
+
+ x
2
-
+s
1
=1
4x
1
+ 2x
2
+
- 2x
2
-
+s
2
= 5
-x
2
+
+ x
2
-
+s
3
= 1
x
i
0; s
i
0 i
Escribo el problema en formato tabla, escogiendo como variables bsicas
las de holgura y como no bsicas el resto.
coeficientes
de z en la
f.o.
-3 2 -2 0 0 0
x
1
x
2
+

x
2
-

s
1
s
2
s
3

0 s
1
-1 -1 1 1 0 0 1
0 s
2
4 2 -2 0 1 0 5
0 s
3
0 -1 1 0 0 1 1
3 -2 2 0 0 0 0
Realizamos el test de optimalidad observando los trminos del rengln z y
comprobamos que la solucin no es ptima al existir trminos positivos ( 0) y tratarse
de un problema de minimizar.

-3 2 -2 0 0 0
x
1
x
2
+

x
2
-

s
1
s
2
s
3

0 s
1
-1 -1 1 1 0 0 1
Elegimos la 2 fila cuyo cociente
del lado derecho entre sus
correspondientes elementos
positivos en la columna de la
variable que entra (x1) sea el ms
pequeo.
0 s
2
4 2 -2 0 1 0 5 = sale
5/4
0 s
3
0 -1 1 0 0 1 1

3 -2 2 0 0 0 0



^
Entra
(mayor
valor de
entre los
positivos
de la fila
Z)


La segunda fila la dividimos por el
pivote (4)
A la 1 fila le sumamos la nueva 2
fila
A la 4 fila le restamos la nueva 2
fila multiplicada por 3
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 38 de 214



-3 2 -2 0 0 0
x
1
x
2
+

x
2
-

s
1
s
2
s
3

0 s
1
0 -1/2 1/2 1 1/4 0 9/4
9/4:1/2
=9/2

-3 x
1
1 1/2 -1/2 0 1/4 0 5/4
0 s
3
0 -1 1 0 0 1 1 = sale
1/1=1
0 -7/2 7/2 0 -3/4 0 -15/4



^
Entra
(mayor
valor de
entre los
positivos
de la fila
Z)


A la 1 fila le restamos la 3
multiplicada por 1/2
A la 2 fila le sumamos la 3
multiplicada por
A la 4 fila le restamos la 3
multiplicada por 7/2


-3 2 -2 0 0 0
x
1
x
2
+

x
2
-

s
1
s
2
s
3

0 s
1
0 0 0 1 1/4 -1/2 7/4
-3 x
1
1 0 0 0 1/4 1/2 7/4
-2 x
2
-
0 -1 1 0 0 1 1
0 0 0 0 -3/4 -7/2 -29/4
Como podemos observar ya la tabla es ptima pues estamos minimizando y
todos los elementos de la fila z son 0.
Luego la solucin ser:
Z*= -29/4
x1*=7/4 x
2
*= x
2
+
*

- x
2
-*
=0-1= -1
EJEMPLO: mtodo Simplex (Problema 3.1.b de relacin de problemas
propuestos por el profesor) :
Tenemos el siguiente problema:
Max x
1
+ x
2

Sujeto a -2x
1
+ x
2
< 1
x
1
- x
2
< 1
x
i
0

SOLUCIN:
En primer lugar pasamos a formato estndar:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 39 de 214

Max x
1
+ x
2

Sujeto a -2x
1
+ x
2
+s
1
= 1
x
1
- x
2
+s
2
= 1
x
i
, s
i
0
Escribo el problema en formato tabla, escogiendo como variables bsicas las de
holgura y como no bsicas el resto.
coeficientes
de z en la
f.o.
1 1 0 0
x
1
x
2
s
1
s
2

0 s
1
-2 1 1 0 1
0 s
2
1 -1 0 1 1
-1 -1 0 0 0
Realizamos el test de optimalidad observando los trminos del rengln z y
comprobamos que la solucin no es ptima al existir trminos negativos. En problemas
de maximizar la solucin es ptima si todos los elementos de la fila z son 0.
Comenzamos a iterar. Entra la variable que menos cumple la condicin de
optimalidad, es decir, en caso de maximizar, la que tenga menor valor entre los
negativos de la fila z. Y sale la variable cuyo cociente del lado derecho entre sus
correspondientes elementos positivos en la columna de la variable que entra sea el ms
pequeo.

coeficientes
de z en la
f.o.
1 1 0 0
x
1
x
2
s
1
s
2

0 s
1
-2 1 1 0 1 = sale
0 s
2
1 -1 0 1 1
-1 -1 0 0 0


^
Entra

A la 2 fila le
sumamos la 1
A la 3 fila le
sumamos la 1

coeficientes
de z en la
f.o.
1 1 0 0
x
1
x
2
s
1
s
2

1 x
2
-2 1 1 0 1
0 s
2
-1 0 1 1 2
-3 0 1 0 1


^
Entra


Como podemos observar la columna de variable que debe entrar tiene todos los
trminos negativos luego el problema es no acotado.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 40 de 214

Podemos resolverlo mediante el software LP Solve:

El resultado:

Recordemos los posibles resultados que muestra el programa:
Optimal solution: Se ha encontrado una solucin ptima
The model is UNBOUNDED: El problema es no acotado
The model is INFEASIBLE: El problema es infactible
Luego nos da como resultado el mismo que manualmente: No acotado.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 41 de 214

EJEMPLO: mtodo Simplex (Problema 2.1.c relacin problema propuestos
por el profesor) :
Tenemos el siguiente problema:
Max 2x
1
+ x
2

Sujeto a x
1
+ x
2
< 2
-x
1
+ x
2
< 3
3x
1
+ 2x
2
< 10
x
i
0
SOLUCIN:
Paso el problema a formato estndar:
Max 2x
1
+ x
2

Sujeto a x
1
+ x
2
+ s
1
= 2
-x
1
+ x
2
+ s
2
= 3
3x
1
+ 2x
2
+ s
3
= 10
x
i
, s
i
0
Dibujamos la tabla:

2 1 0 0 0
x
1
x
2
s
1
s
2
s
3

0 s
1
1 1 1 0 0 2
0 s
2
-1 1 0 1 0 3
0 s
3
3 2 0 0 1 10
-2 -1 0 0 0 0
Realizamos el test de optimalidad observando los trminos del rengln z y
comprobamos que la solucin no es ptima al existir trminos negativos (-2 ; -1). En
problemas de maximizar la solucin es ptima si todos los elementos de la fila z son
0.
Comenzamos a iterar. Entra la variable que menos cumple la condicin de
optimalidad, es decir, en caso de maximizar, la que tenga menor valor entre los
negativos de la fila z. Y sale la variable cuyo cociente del lado derecho entre sus
correspondientes elementos positivos en la columna de la variable que entra sea el ms
pequeo.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 42 de 214


2 1 0 0 0
x
1
x
2
s
1
s
2
s
3

0 s
1
1 1 1 0 0 2 2/1=2
= sale
(2<10/3)
0 s
2
-1 1 0 1 0 3
0 s
3
3 2 0 0 1 10 10/3
-2 -1 0 0 0 0

^
Entra

A la 2 fila le sumamos la 1
A la 3 fila le restamos la 1
multiplicada por 3
A la 4 fila le sumamos la 1
multiplicada por 2


2 1 0 0 0
x
1
x
2
s
1
s
2
s
3

2 x
1
1 1 1 0 0 2
0 s
2
0 2 1 1 0 5
0 s
3
0 -1 -3 0 1 4
0 1 2 0 0 4
La tabla ya es ptima pues el rengln Z son todos 0
Luego la solucin ser:
Z*= 4
x1*=2; x2*=0

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 43 de 214

2.5- MTODOS DE GENERACIN DE UNA SOLUCIN
BSICA FACTIBLE INICIAL.
Tenemos 3 tipos de restricciones:
Restriccin : para pasarla a formato estndar aadiremos una
variable de holgura tal que + s
i
= . Adems, +s
i
es bsica en la fila i.
Restriccin =: para pasarla a formato estndar aadiremos una
variable artificial tal que + z
i
= . Adems, +z
i
es bsica en la fila i.
Restriccin : para pasarla a formato estndar aadiremos una
variable de exceso (-s
i
) y una variable artificial (z
i
) tal que -s
i
+ z
i
= . Adems,
+z
i
puede utilizarse como variable bsica en la fila i.
En la siguiente tabla resumimos esta regla:
Restriccin Variables a aadir Variables bsicas:
+ s
i
+s
i

= + z
i
+z
i

-s
i
+ z
i
+z
i

Los mtodos que siguen (las dos fases y M grande) se utilizan cuando en el
P.P.L tenemos restricciones del tipo > , = en los que hay que aadir variables de
holgura del tipo z
i
y s
i
.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 44 de 214

2.5.1- MTODO DE LAS DOS FASES.
Primera fase:
Me plantear y resolver el siguiente problema:
Minimizar E z
i

Sujeto a + z
i
= (restricciones ampliadas)
Si Z
*
= 0 = obtengo un punto factible del problema original (paso a la segunda
fase)
Si Z
*
0 = no hay ningn conjunto de valores que verifiquen las ecuaciones de
partida, problema infactible (vuelvo al problema original)
Segunda fase:
Se tachan las columnas de las variables artificiales, si existe variable artificial
bsica se elimina la fila y se vuelve al problema original, es decir, se colocan los costes
originales, se recalcula el rengln z y se vuelve a aplicar el simplex:
Minimizar cx

Maximizar cx
Calculamos el nuevo rengln Z y volvemos a aplicar el simplex.
(c es la funcin objetivo original).

EJEMPLO: Mtodo de las Dos Fases:
Tenemos el siguiente problema:
Minimizar 2x
1
+ 4x
2
+ x
4

Sujeto a 2x
1
+ x
2
- 2x
3
+ 3x
4
= 4
2x
1
- x
3
+ x
4
3
x
i
0
SOLUCIN:
Recordemos que:
- Restriccin : para pasarla a formato estndar aadiremos una variable de
holgura tal que + s
i
= . Adems, +s
i
es bsica en la fila i.
- Restriccin =: para pasarla a formato estndar aadiremos una variable
artificial tal que + z
i
= . Adems, +z
i
es bsica en la fila i.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 45 de 214

- Restriccin : para pasarla a formato estndar aadiremos una variable de
exceso (-s
i
) y una variable artificial (z
i
) tal que -s
i
+ z
i
= . Adems, +z
i

puede utilizarse como variable bsica en la fila i.
Primera fase: resuelvo el problema de minimizar Ez
i
. A la vez lo paso a formato
estndar. El subndice de las variables se corresponde con la restriccin:
Minimizar z
1
+ z
2

Sujeto a 2x
1
+ x
2
- 2x
3
+ 3x
4
+ z
1
= 4
2x
1
- x
3
+ x
4
s
2
+ z
2
= 3
x
i
, s
2
, z
1
, z
2
0
Las variables bsicas pueden ser las z:

0 0 0 0 0 1 1

x
1
x
2
x
3
x
4
s
2
z
1
z
2

1 z
1
2 1 -2 3 0 1 0 4
4 / 2 = 2
elegimos el segundo rengln,
que es el menor (3/2<2)
1 z
2
2 0 -1 1 -1 0 1 3 = sale
3 / 2
4 1 -3 4 -1 0 0 7

(
2

1
+
2

1
)
-
0
=

4

(
1

1
-
1

0
)
-
0
=

1

(
-
2

1
+
(
-
1
)

1
)
-
0
=

-
3

(
3

1
+
1

1
)
-
0
=

4

(
0

1
+
(
-
1
)

1
)
-
0
=

-
1

(
1

1
+
0

1
)
-
1
=

0

(
0

1
+
1

1
)
-
1
=

0

(
4

1
+
3

1
)
=

7




^
Entra





Dividimos el 2 rengln
entre el pivote (2).
Al 1 le restamos el 2.

(el mayor entre todos los positivos, aunque
podramos elegir el otro 4 (minimizar)




0 0 0 0 0 1 1

x
1
x
2
x
3
x
4
s
2
z
1
z
2

1 z
1
0 1 -1 2 1 1 -1 1 = sale
1 / 2
Elegimos la 1 fila , que
es el menor (1/2<3)
0 x
1
1 0 -1/2 1/2 -1/2 0 1/2 3/2
3 / 2:1/2=3
0 1 -1 2 1 0 -2 1



^
Entra



Dividimos las 1 fila entre el
pivote (2)
A la 2 fila le restamos la
primera dividida por 4.
A la 3 fila le restamos la 1


(el mayor
entre todos
los positivos
(minimizar))





Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 46 de 214


0 0 0 0 0 1 1
x
1
x
2
x
3
x
4
s
2
z
1
z
2

0 x
4
0 1/2 -1/2 1 1/2 1/2 -1/2
0 x
1
1 -1/4 -1/4 0 -3/4 -1/4 3/4 5/4
0 0 0 0 0 -1 -1 0
Esta tabla ya cumple la condicin de optimalidad para minimizar, los
coeficientes del rengln z son todos negativos. Hemos conseguido una tabla ptima con
una funcin objetivo de valor 0. Antes de pasar a la segunda fase podemos eliminar las
columnas correspondientes a z
1
y z
2
.
Segunda fase: una vez que hemos tachado las columnas de z, pasamos a una
nueva tabla en la que recalculamos el rengln z y la funcin objetivo es la de partida:
(min 2x
1
+ 4x
2
+ x
4
).
coeficientes
en la f.o.
2 4 0 1 0
x
1
x
2
x
3
x
4
s
2

1 x
4
0 1/2 -1/2 1 1/2 1/2
2 x
1
1 -1/4 -1/4 0 -3/4 5/4

0 -4 -1 0 -1 3


(
1

0
+
2

1
)
-
2
=

0

(
1

1
/
2
+
2

(
-
1
/
4
)
)
-
4
=

-
4

(
1

(
-
1
/
2
)
+
2

(
-
1
/
4
)
)
-
0
=

-
1

(
1

1
+
2

0
)
-
1
=

0

(
1

1
/
2
+
2

-
(
3
/
4
)
)
-
0
=

-
1

(
1

1
/
2
+
2

5
/
4
)
=

3

Y esta tabla ya es ptima porque cumple las condiciones de optimalidad para
minimizar (coeficientes del rengln z todos negativos). Por lo tanto, hemos ido
cambiando de solucin:


Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 47 de 214

2.5.2- MTODO DE LA M GRANDE.
Se trata de obligar a que z sea cero mediante un coeficiente muy grande (M).
Prob. de minimizar: El problema min cx se convierte en min cx + M Ez
i
.
Prob. de maximizar: El problema max cx se convierte en max cx M Ez
i
.
Si Zi=0 i hemos encontrado la solucin.
Si i Zi0 se tratara de un problema infactible
EJEMPLO: Mtodo de la M grande:
Tenemos el siguiente problema:
Minimizar 2x
1
+ 4x
2
+ x
4

Sujeto a 2x
1
+ x
2
+ 3x
3
+ x
4
= 3
2x
1
+ x
3
+ x
4
4
x
i
0
SOLUCIN:
Recordemos que:
- Restriccin : para pasarla a formato estndar aadiremos una variable de
holgura tal que + s
i
= . Adems, +s
i
es bsica en la fila i.
- Restriccin =: para pasarla a formato estndar aadiremos una variable
artificial tal que + z
i
= . Adems, +z
i
es bsica en la fila i.
- Restriccin : para pasarla a formato estndar aadiremos una variable de
exceso (-s
i
) y una variable artificial (z
i
) tal que -s
i
+ z
i
= . Adems, +z
i

puede utilizarse como variable bsica en la fila i.
Luego:
Min.: 2x
1
+ 4x
2
+ x
4
+ M z
1
+ M z
2

s.a.: 2x
1
+ x
2
+ 3x
3
+ x
4
+ z
1
= 3
2x
1
+ x
3
+ x
4
s
2
+ z
2
= 4
x
i
, z
i
, s
2
0
Pasamos a formato tabla:

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 48 de 214

coeficientes
en la f.o.
2 4 0 1 0 M M
x
1
x
2
x
3
x
4
s
2
z
1
z
2

M z
1
2 1 3 1 0 1 0 3 = sale
3/3=1 (menor)
M z
2
2 0 1 1 -1 0 1 4
4/1 = 4
4M-2 M-4 4M 2M-1 -M 0 0 7M
Dividimos el 1 rengln entre el
pivote (3).
Al 2 le restamos el 1 dividido
entre 3.
Recalculamos el z.

^
Entra
el mayor
entre todos
los
positivos,
(minimizar)


coeficientes
en la f.o.
2 4 0 1 0 M M
x
1
x
2
x
3
x
4
s
2
z
1
z
2

0 x
3
2/3 1/3 1 1/3 0 1/3 0 1 = sale
1:(2/3)=3/2
M z
2
4/3 -1/3 0 2/3 -1 -1/3 1 3
3:(4/3)=9/4
(4/3)M-2 (-1/3)M-4 0 (2/3)M-1 -M (-4/3)M 0 3M


^
Entra
el mayor
entre todos
los
positivos,
(minimizar)

Dividimos el 1 rengln entre el
pivote (2/3).
Al 2 le restamos el 1 multiplicado
por 2.
Recalculamos el z.


coeficientes
en la f.o.
2 4 0 1 0 M M
x
1
x
2
x
3
x
4
s
2
z
1
z
2

2 x
1
1 1/2 3/2 1/2 0 1/2 0 3/2
M z
2
0 -1 -2 -4/3 -1 -1 1 1
0 -M -2M (-4/3)M -M -3M 0 M+3
Esta tabla ya es ptima, todos los coeficientes del rengln z son 0. Sin
embargo, no hemos conseguido que el sistema expulsara a z
2
, ya que z
2
= 1, por lo tanto
este problema no tiene solucin factible. Como puede comprobarse, z
2
no puede
hacerse cero, por tanto el problema inicial es infactible.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 49 de 214

EJEMPLO: Mtodo de la M grande (Problema 9.22 de la relacin de
problemas propuesta por el profesor): Una empresa de transporte tiene un
contrato para transportar 75 unidades de cierto producto. La empresa dispone
de dos tipos de contenedores con capacidad para 20 y 10 unidades,
respectivamente. Cada contenedor requiere de 12 horas de preparacin para
el primer tipo y 7 para el segundo, disponindose de un total de 55 horas. El
costo de transporte por contenedor es de 20 y 10 unidades, respectivamente.
Cul es la poltica optima de transporte, si los contenedores pueden usarse
parcialmente?
En primer lugar planteamos el problema:
Contenedor tipo 1 Contenedor tipo 2
Contenedores a transportar x
1
x
2

Capacidad 20 ud. 10 ud.
Tiempo preparacin 12 h. 7 h.
Coste transporte 20 um. 10 um.
La funcin a optimizar ser minimizar el coste del transporte:
Min: 20x
1
+10x
2

Las restricciones son el nmero mximo de unidades a transportar y el nmero
total de horas disponibles:
s.a: 20x
1
+10x
2
75
12x
1
+7x
2
55
x
i
0
En primer lugar pasamos el problema a formato estndar:
Recordemos que:
- Restriccin : para pasarla a formato estndar aadiremos una variable de
holgura tal que + s
i
= . Adems, +s
i
es bsica en la fila i.
- Restriccin =: para pasarla a formato estndar aadiremos una variable
artificial tal que + z
i
= . Adems, +z
i
es bsica en la fila i.
- Restriccin : para pasarla a formato estndar aadiremos una variable de
exceso (-s
i
) y una variable artificial (z
i
) tal que -s
i
+ z
i
= . Adems, +z
i

puede utilizarse como variable bsica en la fila i.
Luego:
Min: 20x
1
+10x
2

s.a: 20x
1
+10x
2
-S
1
+Z
1
=75
12x
1
+7x
2
+S
2
=55
x
i
; S
i
; Z
i
0
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 50 de 214

Recordemos que los mtodos de las dos fases y M grande se utilizan cuando en
el P.P.L tenemos restricciones del tipo > , = en los que hay que aadir variables de
holgura del tipo z
i
y s
i
.
Por lo que para este problema podremos aplicar el mtodo de la M grande, que
recordamos que se trata de obligar a que z sea cero mediante un coeficiente muy grande
(M).
- Prob. de minimizar: El problema min cx se convierte en min cx + M Ezi.
- Prob. de maximizar: El problema max cx se convierte en max cx M Ezi.

Luego:
Min: 20x
1
+10x
2
+MZ
1

s.a: 20x
1
+10x
2
-S
1
+Z
1
=75
12x
1
+7x
2
+S
2
=55
x
i
; S
i
; Z
i
0
Lo plasmamos en la tabla:
coeficientes
en la f.o.
20 10 0 M 0
x
1
x
2
S
1
Z
1
S
2

M z
1
20 10 -1 1 0 75
=
sale
75/20=3,75
(menor)
0 s
2
12 7 0 0 1 55
55/12 = 4,58

(20M+120)-20
=
20M-20
(10M+7 0)-10
=
10M-10
(-1 M+0 0)-0
=
-M
(1 M+00)-M
=
0
(0 M+10)-0
=
0
75M+55 0
=
75M

Dividimos la
1 fila entre
el pivote
(20).
Al 2 le
restamos el 1
multiplicado
por
12/20=3/5.
Recalculamos
el z.

^
Entra
el mayor entre
todos los
positivos,
(minimizar)


coeficientes
en la f.o.
20 10 0 M 0
x
1
x
2
S
1
Z
1
S
2

20 x
1
1 1/2 -1/20 1/20 0
75/20=
15/4
0 s
2

12-(203/5) =
0
7-(103/5) =
1
0-(-13/5) =
3/5
0-(13/5) =
-3/5
1-(03/5) =
1
55-(753/5) =
10

(201+0 0)-
20 =
0
(1/2 20+1 0)-10
=
0
(-1/2020+3/50)-
0 =
-1
(1/2020+(-3/5) 0)-M
=
1-M
(0 20+1 0)-0
=
0
15/420+100
=
75
Como estamos minimizando y todos los elementos de la fila z son 0 la solucin
es ptima.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 51 de 214

Si Zi=0 i hemos encontrado la solucin.
Si i Zi0 se tratara de un problema infactible
Y como todos los valores de Z
i
=0 la solucin es factible
x
1
*=15/4; x
2
*=0; Z*=75
EJEMPLO: Mtodo de la M grande (Problema 9.62 de la relacin de problemas
propuesta por el profesor): La empresa Data S.A. ha sido contratada para la ampliacin
de una red de datos. La conexin entre los dos nodos principales de la red de datos debe
hacerse utilizando conexiones de 20Gb/s y 10Gb/s. El ancho de banda total no debe ser
inferior a 75 Gb/s. Los costos de mantenimiento anuales son 8 y 3 unidades para las
conexiones de 20 y 10 Gb/s. El costo de mantenimiento anual no debe ser superior a 55.
El costo de puesta en funcionamiento es de 15 y 10 unidades.
a) Admitiendo que el uso puede ser parcial, cuntas conexiones de cada
tipo deben instalarse?
SOLUCIN:
En primer lugar plasmamos el problema en las ecuaciones:
Min: 15x
1
+10x
2

s.a: 20x
1
+10x
2
75
8x
1
+3x
2
55
x
i
; 0
Transformamos a formato estndar. Recordemos que:
- Restriccin : para pasarla a formato estndar aadiremos una variable de holgura
tal que + S
i
=. Adems, +S
i
es bsica en la fila i.
- Restriccin =: para pasarla a formato estndar aadiremos una variable de holgura
tal que + Z
i
=. Adems, +Z
i
es bsica en la fila i.
- Restriccin : para pasarla a formato estndar aadiremos una variable de holgura
tal que -S
i
+ Z
i
=. Adems, -S
i
, +Z
i
son bsicas en la fila i.
Luego:
Min: 15x
1
+10x
2

s.a: 20x
1
+10x
2
-S
1
+Z
1
=75
8x
1
+3x
2
+S
2
=55
x
i
; S
i
; Z
i
0 i
A continuacin aplicamos el mtodo de la M grande que recordamos que se trata de
obligar a que z sea cero mediante un coeficiente muy grande (M).
- Prob. de minimizar: El problema min cx se convierte en min cx + M Ezi.
- Prob. de maximizar: El problema max cx se convierte en max cx M Ezi.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 52 de 214

Luego:
Min: 15x
1
+10x
2
+MZ
1

s.a: 20x
1
+10x
2
-S
1
+Z
1
=75
8x
1
+3x
2
+S
2
=55
x
i
; S
i
; Z
i
0 i
Lo plasmamos en la tabla:
coeficientes
en la f.o.
15 10 0 M 0
x
1
x
2
S
1
Z
1
S
2

M Z
1
20 10 -1 1 0 75
=
sale
75/20=3,75
(menor)
0 S
2
8 3 0 0 1 55
55/8 = 6,87

(20M+8 0)-15
=
20M-15
(10M+3 0)-10
=
10M-10
(-1 M+0 0)-0
=
-M
(1 M+00)-M
=
0
(0 M+10)-0
=
0
75M+55 0
=
75M

Dividimos la
1 fila entre
el pivote
(20).
Al 2 le
restamos el 1
multiplicado
por 8/20=2/5.
Recalculamos
el z.

^
Entra
el mayor entre
todos los
positivos,
(minimizar)


coeficientes
en la f.o.
15 10 0 M 0
x
1
x
2
S
1
Z
1
S
2

15 x
1
1 1/2 -1/20 1/20 0 75/20=15/4
0 S
2

8-(202/5)=
0
3-(102/5)=
-1
0-(-12/5)=
2/5
0-(12/5)=
-2/5
1-(02/5)=
1
55-(752/5)=
25

(151+0 0)-
15 =
0
(151/2+0 -1)-
10 =
-5/2
(15 -1/20+02/5)-
0 =
-15/20
(151/20+0 -2/5)-M
=
15/20-M
(150+0 1)-0
=
0
1515/4+0 25
=
225/4
Como estamos minimizando y todos los elementos de la fila z son 0 la solucin
es ptima. Y como todos los valores de Z
i
=0 la solucin es factible
x
1
*=15/4; x
2
*=0; Z*=225/4
2.5.3- SOLUCIONES MLTIPLES.
Supongamos que tenemos que resolver el problema:
Minimizar 4x
1
+ 8x
2
+ x
4

Sujeto a 2x
1
+ x
2
x
3
+ x
5
3
2x
1
+ x
3
+ x
4
x
5
1
x
i
0
Lo pasamos a forma estndar, aplicamos el mtodo simplex, y despus de dos
iteraciones llegamos a la siguiente tabla ptima:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 53 de 214

variables
bsicas
actuales
4 8 0 1 0 0 0
x
1
x
2
x
3
x
4
x
5
s
1
s
2

0 x
5
0 1/2 -2 - 1/2 1 - 1/2 1/2 1
4 x
1
0 1/4 - 1/2 1/4 0 - 1/4 - 1/2 1
0 -7 -2 0 0 -1 -1 4
La funcin objetivo es: 0x
1
7x
2
2x
3
+ 0x
4
+ 0x
5
s
1
s
2
+ z = 4
Y la solucin ptima:


Adems de la solucin de las variables bsicas encuentro otros ceros. Tenemos
variables no bsicas (x
4
) que en rengln z son igual a 0, lo que me dice que si la
introduzco mi funcin objetivo no va a cambiar y la solucin nueva tambin ser
ptima. Si pivotamos sobre el elemento 1/4 (entra x
4
, sale x
1
), obtenemos una nueva
tabla:
variables
bsicas
actuales
4 8 0 1 0 0 0
x
1
x
2
x
3
x
4
x
5
s
1
s
2

0 x
5
2 1 -3 0 1 -1 0 3
1 x
4
4 1 -2 1 0 -1 -1 4
0 -7 -2 0 0 -1 -1 4
La nueva solucin ptima:


Nos encontramos con dos puntos que son solucin del problema. El lugar
geomtrico de los puntos que los une (segmento) tambin es solucin del problema:
e [ 0,1 ] x
*
+ (1- ) y
*

Tambin vemos que la variable x
1
(que es no bsica) tiene coste reducido 0.
Esto quiere decir que podemos introducir x
1
y sacar x
4
. As obtenemos una tabla a
partir de la otra. En este caso slo hay dos posibles soluciones, pero podra haber ms.
Cada vez que se introduce una variable no bsica que da una nueva solucin nos
encontramos con un nuevo punto, y tenemos que repetirlo hasta que nos encontremos
con una base ya conocida.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 54 de 214

Por ejemplo en el politopo:

Al final conseguimos un conjunto de puntos que son soluciones ptimas. La
solucin es la envolvente convexa, el menor conjunto convexo. Cualquier punto de esa
cara es solucin del problema. Veamos cmo se expresa un punto del interior de la
cara:
x
*
1
, x
*
2
, x
*
3
, x
*
4
, x
*
5

1
x
*
1
,
2
x
*
2
,
3
x
*
3
,
4
x
*
4
,
5
x
*
5

a)
i
0
b)
i
= 1
Podemos preguntarnos qu inters tiene para nosotros calcular todas las
soluciones de un problema de programacin lineal? A priori, todas las soluciones tienen
las mismas posibilidades de ser la correcta, pero a posteriori puedo tener en cuenta
factores que antes no haba considerado. Puedo tener en cuenta factores secundarios si
los primeros criterios han empatado.
Por ejemplo: tengo que localizar un almacn para suministrar a una provincia
con el menor coste, y obtengo varios posibles puntos. En principio todos son vlidos,
ya que el coste es mnimo en todos ellos, pero los mejores podran ser los que estuvieran
ms cerca de la provincia, o los que tuvieran aeropuerto, o el que est ms cerca de la
capital




Desde este punto se ven los dos
adyacentes, pero no los otros dos.
Solucin =
Provincia
Las mejores
soluciones
estn en la
interseccin
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 55 de 214

Otra posible aplicacin consistira en resolver dos problemas, siendo la solucin
del primero el punto de partida para el segundo:

2.5.4- DEGENERACIN Y CICLADO.
Definicin: Una solucin es Degenerada si alguna variable bsica tiene
valor cero.
Vamos a imaginar que tenemos la tabla simplex:
x
1
x
2
x
3
x
4
x
5
s
1
s
2

x
1
2 0 =


^
Si introducimos x
3
tiene que salir x
1
. La variable que intenta entrar sigue con
valor 0, hemos cambiado de base pero no de punto (las dems variables no cambian).
Decimos que una solucin es degenerada si alguna variable bsica est a valor 0.
Por ejemplo, supongamos que tenemos un vrtice por el que pasan 3 ecuaciones
(R
1
, R
2
, R
3
). A la hora de realizar el simplex, obtengo una base (por ejemplo R
1
, R
2
),
pero puedo cambiar de base a (R
1
, R
3
) y sigo estando en el mismo vrtice. Igual pasa si
tomo la base que falta (R
3
, R
2
). Puedo saltar de una base a otra infinitamente sin llegar
nunca al final, por lo que el mtodo simplex falla en este caso:




Solucin del
primer problema
Solucin del
segundo problema
R
1
R
3
R
2
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 56 de 214

En este caso estamos ante un ciclo. Slo podemos tener ciclos si tenemos una
solucin bsica degenerada (si alguna variable bsica vale 0). Lo normal es que los
problemas no ciclen, pero si se da el caso, tenemos una regla anticiclado:
Regla anticiclado: til para evitar el efecto anteriormente explicado y
consiste en elegir un orden arbitrario pero fijo para las variables
Cogemos todas las variables y las ordenamos como queramos. Cada vez que se
produzca un empate en el rengln z, elijo la variable que est antes en la lista que hemos
creado de forma arbitraria.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 57 de 214

2.6- DUALIDAD.
Hasta ahora hemos visto el mtodo simplex suponiendo que los coeficientes son
conocidos y exactos, pero no sabemos cmo influyen pequeos cambios de los
coeficientes en la solucin final. Despus de resolver el problema hay que evaluar esas
posibles variaciones, para lo que usaremos el concepto de Dualidad. Desde un punto de
vista abstracto, la dualidad significa estudiar dos problemas muy parecidos, de forma
que conociendo la solucin de uno conozco tambin la solucin del otro. De esta forma
resolveremos el problema que sea ms fcil.
Definicin: Un problema de programacin lineal (PPL) se dice que est en
formato cannico si es de la forma:
(P) minimizar cx
sujeto a Ax b
x 0
nota: no se exige que b 0
Definicin: Dado un problema en formato cannico que llamaremos
Primal (P), se define el problema Dual (D) en formato cannico como:
(D) maximizar bw
sujeto a Aw c
w 0
Propiedad: El nmero de variables del problema dual (D) coincide con el
nmero de variables del problema primal (P).
Propiedad: El problema dual del problema dual es el problema primal.
Esto es muy importante, ya que si demostramos algo en uno de los problemas tambin
ser de aplicacin en el otro. Por ejemplo, partimos del problema dual (A es la
traspuesta):
(D)
Maximizar
Sujeto a

bw
Aw c
w 0
Forma cannica
=
Minimizar
Sujeto a
bw
Aw c
w 0
Y siendo (DD) : Dual del dual
(DD)
Maximizar
Sujeto a

cy
(-A) y -b
y 0
Equivale a

(P)
Minimizar
Sujeto a
cy
Ay b
y 0
Si nos encontramos con un problema que no est en formato cannico, tenemos
que pasarlo a formato cannico y luego calcularemos su problema dual.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 58 de 214

Por ejemplo, partimos del problema primal:
(P) minimizar cx
sujeto a Ax b
x libre
No est en la forma cannica, tenemos que hacer el cambio: x = x
+
x


donde x
+
,x

0
(P) minimizar c (x
+
x

)
sujeto a A (x
+
x

) b
x
+
, x

0
Para poder operar tenemos que pasarlo todo a forma matricial (ahora los
parntesis son matrices) y ya lo tenemos en forma cannica:
(P)

)


(


Ahora buscamos el problema dual:
(D)

) (

)

Si lo extendemos:
(D) maximizar Aw
sujeto a Aw c
w 0
Que es idnticamente igual a:
(D) maximizar bw
sujeto a Aw c
Aw c (multiplico la condicin anterior por -1)
w 0
Y el problema dual es:
(D) maximizar bw
sujeto a Aw = c
w 0
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 59 de 214

Conclusin: un cambio en las restricciones del problema primal (x libre)
se traduce en un cambio en las restricciones del problema dual (Aw = c).
2.6.1- DUALIDAD EXTENDIDA.
Existe la tabla de Dualidad Extendida, que presenta todos los casos posibles de
problemas duales y primales. Si el problema primal es de minimizar la tabla se lee de
izquierda a derecha, y si es de maximizar, se lee de derecha a izquierda. Regla
nemotcnica: a restricciones de tipo natural le corresponden variables de tipo natural.
Minimizar = Maximizar
Restricciones
0
Variables = libres
0
Variables
0
Restricciones libres =
0
EJEMPLO: aplicacin de la dualidad extendida:
Dado el problema primal, calcular el dual:
(P) minimizar x
1
+ x
2
+ 5x
4

sujeto a x
1
+ x
2
+ x
4
5
3x
1
+ 4x
2
+ x
3
5
x
1
+ x
2
+ x
3
+ x
4
= 7
x
1
3
x
4
9
x
1
, x
4
0, x
2
libre, x
3
0

El problema dual es:
(D) maximizar 5w
1
5w
2
+ 7w
3
+ 3w
4
+ 9w
5

sujeto a w
1
+ 3w
2
+ w
3
+ w
4
1
w
1
+ 4w
2
+ w
3
= 1
w
2
+ w
3
0
w
1
+ w
3
+ w
5
5
w
1
, w
2
0, w
3
libre, w
4
, w
5
0


Los coeficientes de la funcin
objetivo del dual son el trmino
independiente de las restricciones
del primal.
Los coeficientes de las
restricciones del dual son los
coeficientes traspuestos de
las restricciones del primal.
Los trminos independientes
de las restricciones del dual
son los coeficientes de la
funcin objetivo del primal.
Los signos de las variables van segn la dualidad extendida, un 0 en la
quinta restriccin del primal se convierte en x
5
0 en las variables del dual.
Un = 7 en la tercera restriccin del primal se convierte en x
3
libre.
Los signos de las restricciones van
segn la dualidad extendida. Un x
1

0 en las variables del primal se
convierte en el signo de la primera
restriccin del dual.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 60 de 214

2.6.2- TEOREMA DE LA DUALIDAD DBIL.
El valor de la funcin objetivo Z de un problema de maximizacin, es siempre
menor o igual que el valor de la funcin objetivo w del problema de minimizacin, si
ambos son factibles.
Formulacin: Si x
0
es un punto factible del problema primal (P) y w
0
es
un punto factible del dual (D), entonces se verifica que cx
0
bw
0
para un primal
de minimizar.
Demostracin:
Como x
0
es factible de (P), se verifica que: A x
0
b (1)
x
0
0
Como w
0
es factible de (D), se verifica que: A w
0
c (2)
w
0
0
Multiplico la inecuacin (1) por w
0
por la izquierda (recordemos que w
0
es una
matriz 1x1, y que para cambiar el orden de los trminos de un producto se trasponen
ambos):
w
0
A x
0
w
0
b = w
0
A x
0
b w
0

Multiplico la inecuacin (2) por x
0
por la izquierda:
x
0
A w
0
x
0
c = x
0
A w
0
c x
0

Y por la regla de cambiar el orden del producto vemos que:
w
0
A x
0
= x
0
A w
0
Por lo tanto = cx
0
bw
0

Interpretacin: Si representamos en la recta real las soluciones de (P) con
una x y las de (D) con un crculo vemos que las soluciones de (P) son siempre
mayores que las de (D) para un primal de minimizar:


2.6.3- TEOREMA DE LA DUALIDAD FUERTE.
Si existen soluciones factibles para los problemas primal y dual que dan igual
valor a los respectivos objetivos, tales soluciones son ptimas.
Formulacin: Dado un punto factible de (P) x* y otro punto factible de
(D) w* tales que verifiquen que cx* = bw*, entonces x* y w* son soluciones
ptimas.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 61 de 214

Demostracin: Sea el problema primal:
(P) minimizar cx
sujeto a Ax b
x 0
y sean x
1
y w
0
factibles. Aplicando el teorema de la dualidad dbil tenemos que:
cx
1
bw
0
= bw
0
= cx
0

Ya que si x
0
es el punto donde se alcanza el mnimo, x
1
siempre es mayor que x
0
,
para todo x
1
.
Propiedad: Si (P) tiene solucin ptima finita o factible, entonces (D)
tiene solucin ptima finita y viene dada por: w* = c
B
B
1
.
Hay que tener en cuenta que si parto de un problema en formato cannico tengo
restricciones del tipo , por lo que hay que aadir variables de exceso s:
x
i
s
i
B
1
x
i
s
i

A I
=
c
B
x
B
B
1
A B
1

c
B
B
1

Para una tabla simplex en formato cannico, el rengln z es c
B
B
1
. De esta
manera estoy resolviendo el problema primal y el dual con el mismo esfuerzo.
Corolarios: Las soluciones del dual estn a la izquierda de las soluciones
del primal en la recta real, pero si (P) es ilimitado, las soluciones del dual no pueden
estar en el infinito, por lo que el dual es infactible.

- (P) tiene solucin ptima finita si y solo si (D) tiene solucin ptima finita.
- Si (P) es ilimitado (no acotado) (D) es infactible.
- Si (D) es ilimitado (P) es infactible.
- Si (P) es infactible (D) es infactible o ilimitado (no se sabe).
- Si (D) es infactible (P) es infactible o ilimitado (no se sabe).





Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 62 de 214

Ejemplo (muy inusual) en el que los dos problemas (P) y (D) son infactibles:
(P) Minimizar -x
1
-x
2

Sujeto a x
1
x
2
1
x
1
+ x
2

1
x
1
, x
2
0
Estas dos condiciones no se pueden dar a la vez, por lo que el
problema es infactible (son condiciones opuestas).
(D) Maximizar -w
1
-w
2

Sujeto a w
1
w
2
1
w
1
+ w
2

1
w
1
, w
2
0
Tambin es infactible por la misma razn, de hecho, son el
mismo problema.
Notaciones:
c
B
: vector transpuesto de los coeficientes de las variables bsicas.
c
N
: vector de los coeficientes de las variables no bsicas.
B
-1
: matriz bsica asociada a una solucin bsica factible (corresponde a la
transformada de las soluciones bsicas iniciales)
N : matriz formada con las restantes columnas de A.
X
N
: matriz de variables no bsicas (la forman los trminos de la tabla de las
variables no bsicas).
y
k
: vector de la columna k dentro de la tabla.
a
k
: vector de la columna k de coeficientes tecnolgicos iniciales.
2.6.4 Lectura de la solucin dual en la tabla ptima del
problema primal.
Teorema 1: Si el P.P.L tiene una solucin ptima correspondiente a una base B,
entonces:

es una solucin ptima para el problema dual.


Teorema 2: Dada la tabla ptima del simplex del problema primal, si z
t
-c
t
es el
valor de la fila indicador asociado a una variable primal bsica original en la j-sima
restriccin primal, entonces el valor ptimo de la j-esima variable dual de decisin es:

|
Para ilustrar lo anterior con un ejemplo consideramos el problema resuelto
anteriormente:
Tenemos el siguiente problema:
Max 3x
1
+ 2x
2

Sujeto a 2x
1
+ 3x
2
< 12
2x
1
+ x
2
< 8
x
i
0
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 63 de 214

cuya solucin es la siguiente:
coeficientes
de z en la
f.o.
3 2 0 0
x
1
x
2
s
1
s
2

2 x
2
0 1 1/2 -1/2 2
3 x
1
1 0 -1/4 5/4 3
0 0 1/4 5/4 13
Los valores de las variables para la solucin ptima del problema primal
correspondiente son:
x
1
* = 3, x
2
* = 2
Los valores de las variables para solucin ptima del problema dual
corresponden a los valores

| de las variables de holgura:

| |

| |
Aplicando el primer teorema tambin obtenemos los valores de w*

= Vector transpuesto de los coeficientes de las variables bsicas. Es decir


ltima columna de la matriz optima del problema primal.

= Matriz bsica asociada a una solucin bsica factible (corresponde a la


transformada de las soluciones bsicas iniciales). Es decir matriz de las posiciones en
las que estaban las variables bsicas en la matriz original, pero con los valores de la
matriz optima.

(


)



(


)
Mediante LPSolve seria calculando la solucin del problema primal y pinchamos
despus en Resul-Sensitivity-Duals.
Introduccin del problema:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 64 de 214


Resultados del problema primal (Result-Objetive):

Resultados del problema dual (Resul-Sensitivity-Duals) Miramos los valores de
la columna value y las distintas R1, R2,:



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 65 de 214

2.6.5- INTERPRETACIN ECONMICA DE LAS VARIABLES
DUALES.
La solucin ptima de un problema de programacin lineal da respuesta a la
asignacin ptima de un conjunto de recursos en un momento dado; las variables duales
pueden dar informacin til sobre la posible expansin y crecimiento del beneficio
(objetivo)
Supongamos que tenemos x* como solucin ptima del problema en una base
asociada o B:



Aqu, b representa las cantidades disponibles o los recursos que tenemos.
Imaginemos que las cantidades varan ligeramente, pero la modificacin es lo
suficientemente pequea como para que la solucin ptima siga teniendo la misma base:

Entonces tenemos que:


En el caso de que slo cambiara un elemento de b tendramos que:


Por ejemplo, por cada unidad que aumente b
1
, la funcin objetivo aumentar y
1

b
1
. Me compensara pagar por b
1
siempre y cuando b
1
y
1
. La solucin dual es el
precio unitario que estoy dispuesto a pagar por cada recurso, si no cambio de base.
Si existe holgura significa que me sobran recursos (por ejemplo, horas de mquina) y no
estara dispuesto a pagar nada por adquirir unos recursos que me sobran: y
1
s
1
= 0.
EJEMPLO: Supongamos una fbrica de cervezas que produce tres tipos
distintos que se denominan negra (N), rubia (R) y de baja graduacin (B). Para su
obtencin son necesarios, adems de agua y lpulo para los cuales no hay limitacin de
disponibilidad, malta y levadura, que limitan la capacidad diaria de produccin. La tabla
da la cantidad necesaria de cada uno de estos recursos para producir un litro de cada una
de las respectivas cervezas, los kilos disponibles de cada recurso y el beneficio por litro
B
1

A b
=
C
B
B
1
A B
1
b
C
B
B
1
.b
B
1

A b + Ab
=
C
B
B
1
(b + Ab)
C
B
B
1
(b + Ab)
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 66 de 214

de cerveza producida. Cunto debe fabricar de cada cerveza para que el beneficio sea
mximo?
N R B Disponibilidad
Malta 1 1 2 30
Levadura 1 2 2 45
Beneficio 4 7 3
Las variables de decisin son las siguientes:
x
1
= produccin en litros de N por da.
x
2

= produccin en litros de R por da.
x
3
= produccin en litros de B por da.
Max z = 4x
1
+ 7x
2
+ 3x
3
.
s.a: x
1
+x
2
+2x
3
< 30 (malta)
x
1
+2x
2
+2x
3
< 45 (levadura)
x
i
> 0
Pasamos a formato estndar introduciendo variables de holgura complementaria:
Max z = 4x
1
+ 7x
2
+ 3x
3
.
s.a: x
1
+x
2
+2x
3
+s
1
= 30
x
1
+2x
2
+2x
3
+s
2
= 45
x
i
> 0
Resolvemos aplicando el mtodo simplex y tomando como variables bsicas
iniciales s1 y s2.
El problema ya est en formato estndar. Lo pasamos a la tabla, s
1
y s
2
sern las
variables bsicas:
4 7 3 0 0
x
1
x
2
x
3
s
1
s
2

0 s
1
1 1 2 1 0 30
30 / 1 = 30
0 s
2
1 2 2 0 1 45
= sale
(22,5<30)
45 / 2 = 22,5
-4 -7 -3 0 0 0

^
entra
(el ms
negativo)



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 67 de 214


x
1
x
2
x
3
s
1
s
2

0 s
1
1/2 0 1 1 -1/2 15/2
= sale
(15<45)
15/2: 1/2 = 15
7 x
2
1/2 1 1 0 1/2 45/2 45/2: 1/2 = 45
-1/2 0 4 0 7/2 315/2

^
entra
(el ms
negativo)


4 7 3 0 0
x
1
x
2
x
3
s
1
s
2

4 x
1
1 0 2 2 -1 15
7 x
2
0 1 0 -1 1 15
0 0 5 1 3 165
La solucin ptima es: x1* = 15; x2* = 15; x3* = 0;
Con beneficio ptimo (valor mximo) z* = 165
Los valores ptimos de las variables duales son:

|:

| |

| |
Con valor mnimo w* = 165.
El precio del recurso malta (b1) es

y representa el incremento de valor z*


por unidad incrementada en la disponibilidad de malta.
El precio del recurso levadura (b2) es

y representa el incremento de
valor z* por unidad incrementada en la disponibilidad de levadura.
Si por ejemplo b (30,45) se incrementa (

) unidades, el valor objetivo se


incrementa en:

)
El nuevo valor objetivo pasara a ser z* = 165+45 = 210.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 68 de 214

2.6.6- CONDICIONES DE HOLGURA COMPLEMENTARIA.
Propiedad: Dados x*, w* factibles, son equivalentes si se cumplen las
condiciones:
x*, w* son soluciones ptimas.
x*, w* verifican las condiciones de holgura complementaria, siendo t la
variable de holgura del problema dual:
- x
i
t
i
= 0 i
- w
j
s
j
= 0 j

EJEMPLO:
Resolver el siguiente problema de maximizar:
(P) maximizar 10x
1
+ 24x
2
+ 30x
3
+ 20x
4
+ 25 x
5

sujeto a x
1
+ x
2
+ 2x
3
+ 3x
4
+ 5x
5
19
2x
1
+ 4x
2
+ 3x
3
+ 2x
4
+ x
5
57
x
i
0
SOLUCIN:
Construimos el problema dual:
(D) minimizar 19w
1
+ 57 w
2

sujeto a w
1
+ 2w
2
10
w
1
+ 4w
2
24
2w
1
+ 3w
2
20
3w
1
+ 2w
2
20
5w
1
+ w
2
25
w
1
, w
2
0
Este problema es de dos variables, con lo que ya es posible resolverlo
grficamente. Se resuelve y la solucin es:

)
Y las condiciones de holgura complementaria son las siguientes:
x
1
t
1
= 0
x
2
t
2
= 0
x
3
t
3
= 0
x
4
t
4
= 0
x
5
t
5
= 0
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 69 de 214

w
1
s
1
= 0
w
2
s
2
= 0
Puedo hacer 3 suposiciones:
Supongo que s
1
0 y que s
2
0, por lo tanto, aplicando las
condiciones de holgura complementaria, obtengo que w
1
= 0 y que w
2
= 0. Este punto
es infactible, ya que no se cumple w
1
+ 2w
2
10.
Tambin puedo suponer que s
1
= 0 y que s
2
0, por lo tanto w
2
= 0 y
hay que calcular w
1
. Sustituimos w
2
=0 en todas las ecuaciones:
minimizar 19w
1

sujeto a w
1
10 si w
1
= 24 >10 = t
1
0, x
1
t1 = 0 = x
1
= 0
w
1
24 w
1
= 24 = 24 = t
2
= 0 = x
2
= ?
2w
1
20 2 24 >20 = t
3
0, x
3
t
3
= 0 = x
3
= 0
3w
1
20 3 24 > 20 = t
4
0, x
4
t
4
= 0 = x
4
= 0
5w
1
25 5 24 > 25 = t
5
0, x
5
t
5
= 0 = x
5
= 0
Para averiguar x
2
sustituyo los valores de x en la primera restriccin del
primal:
x
2
+ s
1
19 = s
1
= 0 = x
2
=19
Pero entonces no se cumple la restriccin 4 x
2
57, por lo que el
problema es infactible para esta suposicin.
Supongo que s
1
0 y que s
2
= 0, por lo tanto, aplicando las
condiciones de holgura complementaria, obtengo que w
1
= 0 y debo calcular w
2
:
minimizar 57w
2

sujeto a 2w
2
10 si w
2
= 25 >10 = t
1
0, x
1
t1 = 0 = x
1
= 0
4w
2
24 4 25 > 24 = t
2
0, x
2
t
2
= 0 = x
2
= 0
3w
2
20 3 25 >20 = t
3
0, x
3
t
3
= 0 = x
3
= 0
2w
2
20 2 25 > 20 = t
4
0, x
4
t
4
= 0 = x
4
= 0
w
2
25 25 = 25 = t
5
= 0 = x
5
= ?
Para averiguar x
5
sustituyo los valores de x en la segunda restriccin del primal:
x
5
57 = s
2
= 0 = x
5
= 57
Pero entonces no se cumple la primera restriccin 5 x
5
19, por lo que
el problema es infactible tambin para esta suposicin. Como es infactible para todas
las suposiciones, el problema es infactible.
Si en alguna de las suposiciones se hubieran cumplido las restricciones del
problema primal, esa hubiera sido una solucin ptima, pero podra haber ms
soluciones ptimas.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 70 de 214

2.7- MTODO SIMPLEX DUAL.
Se puede utilizar el mtodo simplex para resolver el problema dual, pero se hace
directamente, sin aplicar la tabla simplex al problema dual. En su lugar, aplicaremos la
tabla simplex al problema primal y le daremos un tratamiento distinto. Recordemos que
para una tabla simplex tengo dos condiciones: factibilidad y optimalidad, y que un
punto es factible en (P) si es ptimo en (D). Vamos a ver los pasos (4) para resolver un
problema mediante el mtodo simplex dual:
PASO 0: Encontrar un punto (o una base) tal que verifique la condicin
de optimalidad. Es decir, que todos los coeficientes del rengln z sean negativos (caso
de minimizar) o positivos (caso de maximizar). No hay que centrarse en el vector de
recursos, sino en el rengln z (ltima fila).
PASO 1: Se realiza el Test de Factibilidad, o sea, comprobar que el
punto es factible, que verifica las condiciones y que en el lado derecho son 0:
b
i
0 i ? = si = OK
PASO 2: Hay que seleccionar la variable que sale y la variable que
entra.
Primero se toma como variable que sale la que menos verifique la
condicin de factibilidad, es decir, la que tenga mayor valor (en valor absoluto) de
entre los negativos en el lado derecho. Si no hubiera ninguna variable que salga
(negativa), la tabla sera ptima.
En segundo lugar seleccionamos la variable que entra. Calculamos los
cocientes del rengln z entre los que sean negativos de la fila de la variable que
sale, y tomaremos como variable que entra la que d el menor resultado si se trata
de minimizar y la de mayor resultado si el problema es maximizar. Si no hay
ninguna variable que entra (no hay ningn elemento negativo en la fila), existe
una ilimitacin en el problema dual, por lo que el primal es infactible.
PASO 3: Se pivota y se vuelve al paso 1. El mtodo garantiza que de
tabla a tabla mantenemos la condicin de optimalidad.
EJEMPLO: Mtodo simplex dual:
minimizar 12x
1
+ 5x
2

sujeto a 4x
1
+ 2x
2
80
2x
1
+ 3x
2
90
x
1
, x
2
0
SOLUCIN:
Primero tenemos que pasarlo a formato estndar. Como en el dual no se
imponen restricciones sobre el lado derecho, multiplico por (1) las ecuaciones que
sean necesarias para que las variables de holgura sean positivas:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 71 de 214


minimizar 12x
1
+ 5x
2
+ 0s
1
+ 0s
2

=
minimizar 12x
1
+ 5x
2
+ 0s
1
+ 0s
2

sujeto a 4x
1
+ 2x
2
s
1
= 80
2x
1
+ 3x
2
s
2
= 90
x
1
, x
2
0
sujeto a 4x
1
2x
2
+ s
1
= 80
2x
1
3x
2
+ s
2
= 90
x
1
, x
2
0
Ahora construimos la tabla correspondiente. El rengln z debe cumplir la
condicin de optimalidad, como estamos en un problema de minimizar, todos los
coeficientes deben ser 0. Comprobamos que en este caso lo son, con lo que podemos
aplicar el mtodo simplex dual:

Calculamos la nueva tabla. Dividimos el segundo rengln entre el pivote (3) y
al primer rengln le sumamos el segundo multiplicado por 2:

Esta tabla verifica la condicin de optimalidad (el mtodo simplex dual nos lo
garantiza), pero no cumple la condicin de factibilidad, ya que no todo el lado derecho
es 0. La funcin objetivo va empeorando debido a que el mtodo simplex dual parte
de un punto que no est dentro de la regin factible pero que tiene un buen valor de la
funcin objetivo (un punto ptimo no factible). Por tanto, al irnos acercando a la regin
factible en busca de un punto factible, la funcin objetivo empeora, pero nos acercamos
cada vez ms a cumplir las restricciones.
12 5 0 0
x
1
x
2
s
1
s
2

0 s
1
4 2 1 0 80
es la que tiene mayor valor entre los
negativos del lado derecho
0 s
2
2 3 0 1 90 sale =
12 5 0 0 0


^
entra



12/2
= 6
5/3 = 5/3
Se divide el rengln z entre los negativos de la variable que sale y se
toma el menor resultado
12 5 0 0
x
1
x
2
s
1
s
2

0 s
1 8/3 0 1 2/3 20 = sale
es la que tiene menor valor
entre los negativos del
lado derecho
5 x
2
2/3 1 0 1/3 30
26/3 0 0 5/3 150


^
Entra
(2,5<3,25)



(26/3) / (8/3) =
3,25
(5/3) / (2/3) =
2,5
Se divide el rengln z entre los negativos de la
variable que sale y se toma el menor resultado
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 72 de 214

Construimos la siguiente tabla, dividimos el primer rengln entre el pivote y al
segundo rengln le resto el primero por 2 y recalculamos Z:
12 5 0 0
x
1
x
2
s
1
s
2

0 s
2
4 0 3/2 1 30
5 x
2
2 1 1/2 0 40
2 0 5/2 0 200
Esta tabla verifica la condicin de factibilidad, ya que todo el lado derecho es
0.


EJERCICIO: (Problema 4.2.a de la lista de problemas sugeridos por el
profesor ao 2010-2011) Resolver mediante Simplex Dual.:
maximizar -x
1
- 2x
2
- x
3

sujeto a 2x
1
+ x
2
+ 2x
3
6
x
1
+ 3x
2
+ 4x
3
10
x
i
0
SOLUCIN:
Primero tenemos que pasarlo a formato estndar.
maximizar -x
1
- 2x
2
- x
3

sujeto a 2x
1
+ x
2
+ 2x
3
-S
1
= 6
x
1
+ 3x
2
+ 4x
3
-S
2
= 10
x
i
, S
i
0
Como en el dual no se imponen restricciones sobre el lado derecho, multiplico
por (1) las ecuaciones que sean necesarias para que las variables de holgura sean
positivas:
maximizar -x
1
- 2x
2
- x
3

sujeto a -2x
1
- x
2
- 2x
3
+S
1
= -6
-x
1
- 3x
2
- 4x
3
+S
2
= -10
x
i
, S
i
0
Construimos la tabla Simplex:
-1 -2 -1 0 0
x
1
x
2
x
3
s
1
s
2

0 s
1
-2 -1 -2 1 0 -6
0 s
2
-1 -3 -4 0 1 -10
1 2 1 0 0 0
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 73 de 214

A continuacin seleccionamos las variables que entran y salen.
Primero se toma como variable que sale, que ser la que tenga mayor valor
(en valor absoluto) de entre los negativos en el lado derecho (-10>-6).Es
decir sale S
2

En segundo lugar seleccionamos la variable que entra. Calculamos los
cocientes del rengln z (ltima fila) entre los que sean negativos de la fila de la
variable que sale (fila s
2
), y tomaremos como variable que entra la que d el
menor resultado si se trata de minimizar y la de mayor resultado si el problema es
maximizar. 1/-1;2/-3;1/-4-1;-0,66;-0,25 -0,25>-0,66>-1. Luego la columna
entrante ser x
3

Es decir pivotaremos sobre el -4:
-1 -2 -1 0 0
x
1
x
2
x
3
s
1
s
2

0 s
1
-3/2 1/2 0 1 -1/2 -1
-1 x
3
1/4 3/4 1 0 -1/4 5/2
3/4 5/4 0 0 1/4 -5/2
Realizamos el Test de Factibilidad, o sea, comprobar que el punto es factible,
que verifica las condiciones y que en el lado derecho son 0:
b
i
0
i
? = no = Seguimos pivotando
En esta iteracin sale s
1
pues es la nica fila con valores negativos en el lado
derecho. Entra el mayor de entre 3/4:3/2=0,5 y 1/4:-1/2=-0,5 Es decir entra x
1
.
Es decir pivotamos sobre -3/2: Dividimos toda la 1 fila entre -3/2. Una vez
realizado, a la 2 fila le restamos la fila 1 multiplicada por 1/4. Recalculamos el rengln
Z
-1 -2 -1 0 0
x
1
x
2
x
3
s
1
s
2

-1 x
1
1 -1/3 0 -2/3 1/3 2/3
-1 x
3
0 5/6 1 1/6 -1/3 7/3
0 3/2 0 1/2 0 -3
Esta solucin es factible ya que todos los elementos del lado derecho son 0
Luego la solucin ser:



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 74 de 214

EJERCICIO: (Problema 4.2.b de la lista de problemas sugeridos por el
profesor ao 2010-2011) Resolver mediante Simplex Dual.:
minimizar 3x
1
+ 4x
2
+ x
3

sujeto a x
1
+ 2x
2
+ x
3
12
2x
1
+ x
2
+ 4x
3
14
x
i
0
SOLUCIN:
Primero tenemos que pasarlo a formato estndar.
minimizar 3x
1
+ 4x
2
+ x
3

sujeto a x
1
+ 2x
2
+ x
3
-S
1
= 12
2x
1
+ x
2
+ 4x
3
-S
1
= 14
x
i
0
Como en el dual no se imponen restricciones sobre el lado derecho, multiplico
por (1) las ecuaciones que sean necesarias para que las variables de holgura sean
positivas:
minimizar 3x
1
+ 4x
2
+ x
3

sujeto a -x
1
- 2x
2
- x
3
+S
1
= -12
-2x
1
- x
2
- 4x
3
+S
2
= -14
x
i
, S
i
0
Construimos la tabla Simplex:
3 4 1 0 0
x
1
x
2
x
3
s
1
s
2

0 s
1
-1 -2 -1 1 0 -12
0 s
2
-2 -1 -4 0 1 -14
-3 -4 -1 0 0 0
Para poder aplicar el mtodo Simplex-Dual debemos comprobar la condicin de
optimalidad, verificando que todos los elementos de la fila Z sean 0 (al estar
minimizando). Como es as, la tabla es ptima
A continuacin comprobamos si esta tabla nos proporciona un punto factible,
para ello todos los elementos del lado derecho (b
i
) debera ser 0. Como no lo son el
punto no es factible luego debemos pivotar.
Primero se toma como variable que sale que ser la que tenga mayor valor (en
valor absoluto) de entre los negativos en el lado derecho (-14>-12).Es decir sale
S
2

En segundo lugar seleccionamos la variable que entra. Calculamos los cocientes
del rengln z entre los que sean negativos de la fila de la variable que sale, y tomaremos
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 75 de 214

como variable que entra la que d el menor resultado si se trata de minimizar y la de
mayor resultado si el problema es maximizar.
-3/-2;-4/-1;-1/-4 1,5 ; 4 ; 0,25 0,25<1,5<4.
Luego la columna entrante ser x
3
.
Pivotamos sobre -4. Realizamos las operaciones tpicas: Dividimos toda la fila
del pivote (2 fila) entre el pivote (-4). La 1 fila le restamos la 2. Recalculamos Z
3 4 1 0 0
x
1
x
2
x
3
s
1
s
2

0 s
1
-1/2 -7/4 0 1 -1/4 -17/2
1 x
3
1/2 1/4 1 0 -1/4 7/2
-5/2 -15/4 0 0 -1/4 7/2
A continuacin comprobamos si esta tabla nos proporciona un punto factible,
para ello todos los elementos del lado derecho (b
i
) debera ser 0. Como no lo son el
punto no es factible luego debemos seguir pivotando.
Sale S
1
, al ser la nica variable con valor negativo en la columna del lado
derecho.
Entra el menor de :-15/4:-7/4=2,14 ; -1/4:-1/4=1 1<2,14. Es decir S
2

3 4 1 0 0
x
1
x
2
x
3
s
1
s
2

0 s
1
2 7 0 -4 1 34
1 x
3
1 2 1 -1 0 12
-2 -2 0 -1 0 12
Esta solucin es factible ya que todos los elementos del lado derecho son 0
Luego la solucin ser:



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 76 de 214

2.7.1- MTODO DE LA RESTRICCIN ARTIFICIAL.
El mtodo de la restriccin artificial sirve para encontrar una primera solucin
bsica factible, ya que a veces puede resultar complicado. Se usar este mtodo en los
casos en que la primera tabla no cumpla la condicin de optimalidad en el rengln z. Lo
veremos mediante un ejemplo:
maximizar 4x
1
+ x
2

=
maximizar z = 4x
1
+ x
2
+ 0s
1
+ 0s
2

sujeto a 4x
1
+ 3x
2
12
2x
1
+ x
2
4
x
1
, x
2
0
sujeto a 4x
1
+ 3x
2
+ s
1
= 12
2x
1
x
2
+ s
2
= 4
x
1
, x
2
0
Ya lo hemos pasado a formato estndar. La primera variable de holgura me
sirve como bsica, pero a la segunda (s
2
) le hemos tenido que cambiar el signo.
Construyo ahora la tabla simplex:
4 1 0 0
x
1
x
2
s
1
s
2

0 s
1
4 3 1 0 12
0 s
2 2 1 0 1 4
4 1 0 0 0
La tabla no verifica la condicin de optimalidad para el mtodo simplex dual
(como estamos en maximizar, el rengln z (12,-4) debera ser 0). Tenemos que
aplicar el mtodo de la restriccin artificial, que sigue los siguientes pasos:
Paso 1: Identificar las variables que no cumplen la condicin de
optimalidad (en este caso son x
1
y x
2
, ya que son < 0)
Paso 2: Se aade la restriccin suma de las variables anteriores M
(en este caso sera x
1
+ x
2
M = x
1
+ x
2
+ z
1
= M).
Paso 3: Se toma como variable de salida la variable de holgura de la
restriccin adicional, y como variable de entrada la que menos verifique la condicin de
optimalidad.
Paso 4: Aplicar el mtodo simplex dual.

4 1 0 0 0
x
1
x
2
s
1
s
2
z
1

0 s
1
4 3 1 0 0 12
Sale la variable de
holgura de la
restriccin adicional
0 s
2
2 1 0 1 0 4
0 z
1
1 1 0 0 1 M sale =
4 1 0 0 0 0


^
entra

Entra la variable que menos verifique la condicin
de optimalidad, en este caso la ms negativa, ya
que la condicin para maximizar es 0
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 77 de 214

Ahora pivotamos sobre el 1 y obtenemos la tabla:
4 1 0 0 0
x
1
x
2
s
1
s
2
z
1

0 s
1
0 1 1 0 4 124M
0 s
2
0 1 0 1 2 4+2M
4 x
1
1 1 0 0 1 M
0 3 0 0 4 4M
Despus de esto, el mtodo garantiza que la tabla ya cumple la condicin de
optimalidad, como vemos todo el rengln z es 0 (para maximizar). Hemos tomado un
punto muy lejano (M es muy grande) de la regin factible, por eso la funcin objetivo
ha mejorado (de 0 a 4M). Ahora ya podemos aplicar el mtodo simplex dual con
normalidad:
4 1 0 0 0
x
1
x
2
s
1
s
2
z
1

0 s
1
0 1 1 0 4 124M sale =
Sale la variable que
tiene mayor valor entre
los negativos del lado
derecho (maximizar).
Recordar que M es un
nmero muy grande.
0 s
2
0 1 0 1 2 4+2M
4 x
1
1 1 0 0 1 M
0 3 0 0 4 4M

^
entra
Entra la variable que tenga el mayor resultado
3/1=3 4/4=1
Pivotamos sobre el 4 y obtenemos:
4 1 0 0 0
x
1
x
2
s
1
s
2
z
1

0 z
1
0 1/4 -1/4 0 1 M3
0 s
2
0 1/2 1/2 1 0 2
4 x
1
1 3/4 1/4 0 0 3
0 2 1 0 0 12


Pero ahora tenemos que preguntarnos si la solucin que hemos obtenido sirve
para nuestro problema original, ya que hemos aadido una restriccin y el problema ha
cambiado. Tenemos que fijarnos en el valor de la variable de holgura de la restriccin
adicional (z
1
):
Si z
1
0 (es bsica no nula, no depende de M), la solucin obtenida es
solucin del problema original.
Si z
1
= 0 (es no bsica, depende de M), la solucin obtenida no es solucin
del problema original, el problema es ilimitado.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 78 de 214

EJERCICIO: (Problema 4.2.c de la lista de problemas sugeridos por el
profesor ao 2010-2011) Resolver mediante Simplex Dual.:
minimizar 3x
1
+ 5x
2
- x
3
+ 2x
4
- 4x
5

sujeto a x
1
+ x
2
+ x
3
+ 3x
4
+ x
5
6
-x
1
- x
2
+ 2x
3
+ x
4
-x
5
3
x
i
0
SOLUCIN:
Primero tenemos que pasarlo a formato estndar.
minimizar 3x
1
+ 5x
2
- x
3
+ 2x
4
- 4x
5

sujeto a x
1
+ x
2
+ x
3
+ 3x
4
+ x
5
+S
1 =
6
-x
1
- x
2
+ 2x
3
+ x
4
-x
5
-S
2
= 3
x
i
0
Como en el dual no se imponen restricciones sobre el lado derecho, multiplico
por (1) las ecuaciones que sean necesarias para que las variables de holgura sean
positivas:
minimizar 3x
1
+ 5x
2
- x
3
+ 2x
4
- 4x
5

sujeto a x
1
+ x
2
+ x
3
+ 3x
4
+ x
5
+S
1 =
6
+x
1
+ x
2
- 2x
3
- x
4
+x
5
+S
2
= -3
x
i
0
Trazamos la tabla simplex:
3 5 -1 2 -4 0 0
x
1
x
2
x
3
x
4
x
5
S
1
S
2

0 S
1
1 1 1 3 1 1 0 6
0 S
2
1 1 -2 -1 1 0 1 -3
-3 -5 1 -2 4 0 0 0
A continuacin verificamos la condicin de optimalidad. Es decir, que todos los
coeficientes del rengln z sean negativos (caso de minimizar) o positivos (caso de
maximizar). No hay que centrarse en el vector de recursos, sino en el rengln z.
Como no todos los elementos del rengln Z (ltima fila) son negativos
deberemos aplicar la tcnica de la restriccin artificial:
1 Identificar las variables que no cumplen la condicin de optimalidad (en este
caso son x
3
y x
5
, ya que son > 0)
2 Se aade la restriccin suma de las variables anteriores M (en este caso
sera x
3
+ x
5
M = x
3
+ x
5
+ z
1
= M).

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 79 de 214

minimizar 3x
1
+ 5x
2
- x
3
+ 2x
4
- 4x
5

sujeto a x
1
+ x
2
+ x
3
+ 3x
4
+ x
5
+S
1 =
6
+x
1
+ x
2
- 2x
3
- x
4
+x
5
+S
2
= -3
x
3
+ x
5
+ z
1
= M
x
i
; z
i
0
3 Se toma como variable de salida la variable de holgura de la restriccin
adicional (Z
1
), y como variable de entrada la que menos verifique la condicin de
optimalidad. Es decir si estamos minimizando elegimos el mayor (del rengln Z) y si
estamos maximizando el menor. Al estar minimizando la variable que entra sera x
5

(4>1)
3 5 -1 2 -4 0 0 0
x
1
x
2
x
3
x
4
x
5
S
1
S
2
Z
1

0 S
1
1 1 1 3 1 1 0 0 6
0 S
2
1 1 -2 -1 1 0 1 0 -3
0 Z
1
0 0 1 0 1 0 0 1 M = sale
-3 -5 1 -2 4 0 0 0 0

^
Entra





3 5 -1 2 -4 0 0 0
x
1
x
2
x
3
x
4
x
5
S
1
S
2
Z
1

0 S
1
1 1 0 3 0 1 0 -1 6-M
0 S
2
1 1 -3 -1 0 0 1 -1 -3-M
-4 x
5
0 0 1 0 1 0 0 1 M
-3 -5 -3 -2 0 0 0 -4 -4M

Ya todos los elementos del rengln Z son 0 luego la tabla es ptima y podemos
aplicar el mtodo simplex-dual
4 Aplicar el mtodo simplex dual.
A continuacin comprobamos si esta tabla nos proporciona un punto factible,
para ello todos los elementos del lado derecho (b
i
) debera ser 0. Como no lo son el
punto no es factible, luego debemos pivotar.
Primero se toma como variable que sale. Esta ser la que tenga mayor valor (en
valor absoluto) de entre los negativos en el lado derecho (-3-M>6-M).Es decir
sale S
2

En segundo lugar seleccionamos la variable que entra. Calculamos los cocientes
del rengln z entre los que sean negativos de la fila de la variable que sale, y tomaremos
como variable que entra la que d el menor resultado si se trata de minimizar y la de
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 80 de 214

mayor resultado si el problema es maximizar. -3/-3=1;-2/-1=2 1<2. Luego la columna
entrante ser x
3
.
Pivotamos sobre S
2
x
3
. Realizamos las operaciones tpicas: Dividimos toda la
fila del pivote (2 fila) entre el pivote (-3). La 3 fila le restamos la 2. Recalculamos Z:
3 5 -1 2 -4 0 0 0
x
1
x
2
x
3
x
4
x
5
S
1
S
2
Z
1

0 S
1
1 1 0 3 0 1 0 -1 6-M
0 x
3
1 1 -3 -1 0 0 1 -1 -3-M = sale
-4 x
5
0 0 1 0 1 0 0 1 M
-3 -5 -3 -2 0 0 0 -4 -4M

^
Entra






3 5 -1 2 -4 0 0 0
x
1
x
2
x
3
x
4
x
5
S
1
S
2
Z
1

0 S
1
1 1 0 3 0 1 0 -1 6-M
-1 x
3
-1/3 1/3 1 1/3 0 0 -1/3 1/3 1+1/3M
-4 x
5
1/3 -1/3 0 -1/3 1 0 1/3 2/3 2/3M-1
-4 -4 0 -1 0 0 -1 -3 -3M+7
Volvemos a comprobamos si esta tabla nos proporciona un punto factible, para
ello todos los elementos del lado derecho (b
i
) debera ser 0. Como no lo son (6-M<0)
el punto no es factible, luego debemos volver pivotar.
Primero se toma como variable que sale. Esta ser la que tenga mayor valor (en valor
absoluto) de entre los negativos en el lado derecho. Como tan solo la variable S
1
tiene
un valor negativo en su elemento del lado derecho (6-M) este ser la variable de salida
En segundo lugar seleccionamos la variable que entra. Calculamos los cocientes
del rengln z entre los que sean negativos de la fila de la variable que sale, y tomaremos
como variable que entra la que d el menor resultado si se trata de minimizar y la de
mayor resultado si el problema es maximizar. Como de la fila de la variable que sale
(S1) solo tiene un elemento negativo (-1) la columna entrante ser Z
1
.
3 5 -1 2 -4 0 0 0
x
1
x
2
x
3
x
4
x
5
S
1
S
2
Z
1

0 S
1
1 1 0 3 0 1 0 -1 6-M
-1 x
3
-1/3 1/3 1 1/3 0 0 -1/3 1/3 1+1/3M
-4 x
5
1/3 -1/3 0 -1/3 1 0 1/3 2/3 2/3M-1
-4 -4 0 -1 0 0 -1 -3 -3M+7
Pivotamos sobre S
1
Z
1
. Realizamos las operaciones tpicas: Dividimos toda la
fila del pivote (1 fila) entre el pivote (-1). La 2 fila le restamos la 1 multiplicada por
1/3. La 3 fila le restamos la 1 multiplicada por 2/3. Recalculamos Z:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 81 de 214

3 5 -1 2 -4 0 0 0
x
1
x
2
x
3
x
4
x
5
S
1
S
2
Z
1

0 Z
1
-1 -1 0 -3 0 -1 0 1 -6+M
-1 x
3
0 2/3 1 4/3 0 1/3 -1/3 0 3
-4 x
5
1 1/3 0 5/3 1 2/3 1/3 0 3
-7 -7 0 -10 0 -3 -1 0 -15
Volvemos a comprobamos si esta tabla nos proporciona un punto factible, para
ello todos los elementos del lado derecho (b
i
) debera ser 0. Como SI lo son el punto
es factible. La solucin sera:


EJERCICIO: (Problema 5.6 de la lista de problemas sugeridos por el
profesor ao 2010-2011) Dado el problema de programacin lineal:
Max.: x
1
+ x
2
+2x
3

s.a.: 2x
1
+ x
2
+ x
3


8
x
1
- 2x
2
+ 2x
3
10
x
i
0
a) Formular y resolver el problema dual usando el mtodo del simplex
dual.
b) Hacer un anlisis de sensibilidad en los costos de la funcin objetivo.
c) Si cambiamos los costos a (3/2; 1; 5/2) cambia la base ptima?
SOLUCIN:
a) Formular y resolver el problema dual usando el mtodo del simplex dual.
Pasamos a formato dual (D). Recordemos que:
Los coeficientes de la funcin objetivo del dual son el trmino independiente de
las restricciones del primal.
Los coeficientes de las restricciones del dual son los coeficientes traspuestos de
las restricciones del primal.
Los trminos independientes de las restricciones del dual son los coeficientes de
la funcin objetivo del primal.
Los signos de las variables van segn la dualidad extendida,
Los signos de las restricciones van segn la dualidad extendida

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 82 de 214

Dualidad Extendida
Minimizar = Maximizar
Restricciones
0
Variables = libres
0
Variables
0
Restricciones libres =
0

(P) Max.: x
1
+ x
2
+2x
3

s.a.: 2x
1
+ x
2
+ x
3


8
x
1
- 2x
2
+ 2x
3
10
x
i
0
(D) Min.: 8w
1
+10w
2

s.a.: 2w
1
+1w
2
1

1w
1
-2w
2
1

1w
1
+2w
2
2
w
i
0
Ya tenemos el problema Primal (P) pasado a Dual (D). A continuacin
resolvemos el problema Dual. Para ello, podemos o bien realizarlo grficamente pues
tenemos dos variables (w
1
, w
2
) o bien por el mtodo tradicional Simplex-Dual. Lo
haremos por este ltimo:
Primero tenemos que pasarlo a formato estndar.
(D) Min.: 8w
1
+10w
2

s.a.: 2w
1
+1w
2
- t
1
=1

1w
1
-2w
2
- t
2
=1

1w
1
+2w
2
- t
3
=2
w
i
; t
i
0
Como en el dual no se imponen restricciones sobre el lado derecho, multiplico
por (1) las ecuaciones que sean necesarias para que las variables de holgura sean
positivas:
(D) Min.: 8w
1
+10w
2

s.a.: -2w
1
-1w
2 +
t
1
= -1
-
w
1
+ 2w
2
+ t
2
= -1

-w
1
- 2w
2
+ t
3
= -2
w
i
; t
i
0


Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 83 de 214

Trazamos la tabla simplex:
8 10 0 0 0
w
1
w
2
t
1
t
2
t
3

0 t
1
-2 -1 1 0 0 -1
0 t
2
-1 2 0 1 0 -1
0 t
3
-1 -2 0 0 1 -2
-8 -10 0 0 0 0
PASO 0: Encontrar un punto (o una base) tal que verifique la condicin de
optimalidad. Es decir, que todos los coeficientes del rengln z sean negativos (caso de
minimizar) o positivos (caso de maximizar). No hay que centrarse en el vector de
recursos, sino en el rengln z (ltima fila).
En nuestro caso que estamos minimizando y la fila z son todos 0 la tabla es
optima.
PASO 1: Se realiza el Test de Factibilidad, o sea, comprobar que el
punto es factible, que verifica las condiciones y que en el lado derecho son 0:
b
i
0 i ? = si = OK
En nuestro caso no todos los elementos del lado derecho son 0, luego pasamos
al paso 2.
PASO 2: Hay que seleccionar la variable que sale y la variable que
entra.
Primero se toma como variable que sale la que menos verifique la
condicin de factibilidad, es decir, la que tenga mayor valor (en valor absoluto) de
entre los negativos en el lado derecho. Si no hubiera ninguna variable que salga
(negativa), la tabla sera ptima.
En nuestro caso sale t
3
que tiene el mayor valor (2>1>1)
En segundo lugar seleccionamos la variable que entra. Calculamos los
cocientes del rengln z entre los que sean negativos de la fila de la variable que
sale, y tomaremos como variable que entra la que d el menor resultado si se trata
de minimizar y la de mayor resultado si el problema es maximizar. Si no hay
ninguna variable que entra (no hay ningn elemento negativo en la fila), existe
una ilimitacin en el problema dual, por lo que el primal es infactible.
En nuestro caso entrara w
2
(min[10/2;8/1] )
PASO 3: Se pivota y se vuelve al paso 1. El mtodo garantiza que de
tabla a tabla mantenemos la condicin de optimalidad.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 84 de 214

8 10 0 0 0
w
1
w
2
t
1
t
2
t
3

0 t
1
-2 -1 1 0 0 -1
0 t
2
-1 2 0 1 0 -1
0 t
3
-1 -2 0 0 1 -2 =Sale
-8 -10 0 0 0 0

^
Entra




Pivotamos sobre ese elemento y nos quedara:
8 10 0 0 0
w
1
w
2
t
1
t
2
t
3

0 t
1
-3/2 0 1 0 -1/2 0
0 t
2
-2 0 0 1 1 -3 =Sale
10 w
2
1/2 1 0 0 -1/2 1
-3 0 0 0 -5 10

^
Entra




Aun seguimos con elementos del lado derecho negativo, asi que debemos
pivotar. Ahora sale t2 y entra w1:
8 10 0 0 0
w
1
w
2
t
1
t
2
t
3

0 t
1
0 0 1 -3/4 5/8 9/4
8 w
1
1 0 0 -1/2 -1/2 3/2
10 w
2
0 1 1 1/4 1/4 1/4
0 0 0 -3/2 -13/2 29/2

Volvemos a verificar la condicin de factibilidad, comprobando si todos los elementos
del lado derecho son positivos. Como es asi la tabla es la solucin al problema dual:


b) Hacer un anlisis de sensibilidad en los costos de la funcin objetivo.
La metodologa ms corta, partiendo de la tabla ptima del problema dual (D) es
leerla de la misma tabla:

)
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 85 de 214

El valor de Z ser sustituyendo los valores de las variables en la funcin objetivo
del Primal (P):
Max.: x
1
+ x
2
+2x
3
=0+3/2+213/2=29/2


4 Para un variacin en C
1
:
C
1
C
1
+C
1

La variacin el el vecor del lado derecho es:

) (



) (

) (

)
Luego la nueva tabla quedara asi:
8 10 0 0 0
w
1
w
2
t
1
t
2
t
3

0 t
1
0 0 1 -3/4 5/8 9/4 +C
1

8 w
1
1 0 0 -1/2 -1/2 3/2 +0
10 w
2
0 1 1 1/4 1/4 1/4 +0
0 0 0 -3/2 -13/2 29/2

Verificamos la condicin de factibilidad (vector de lado derecho mayor o
igual a0):
9/4+C
1
0 C
1
9/4

[ (

)] [ ] [ ]

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 86 de 214

2.8- SENSIBILIDAD.
El anlisis de sensibilidad evala la validez de la solucin ptima calculada si
ocurrieran pequeos cambios en los valores que determinan los problemas. Este tipo de
anlisis siempre considerar que slo cambia uno de los valores que puedan cambiar.
2.8.1- ANLISIS DE SENSIBILIDAD EN EL VECTOR DE COSTES.
Usaremos como ejemplo el problema de los trenes y soldados visto
anteriormente:
maximizar 3s + 2t
sujeto a s + t 80
2s + t 100
s 40
s, t 0
Su tabla ptima calculada anteriormente era:
3 2 0 0 0
s t s
1
s
2
s
3

2 t 0 1 2 1 0 60
3 s

1 0 1 1 0 20
0 s
3
0 0 1 1 1 20
0 0 1 1 0 180
Veamos qu ocurrira si cambiamos el beneficio en los soldados fabricados;
si el coeficiente de s (c
s
) sufre un incremento Ac
s
. El nuevo coeficiente de s sera c
s
+
Ac
s
. Esto nos lleva a recalcular el rengln z para comprobar si cambiara el plan ptimo.
Vamos a ver cunto podra valer Ac
s
para que no cambie el plan ptimo, analizaremos
las variables no bsicas porque son las que pueden entrar:
3+ Ac
s
2 0 0 0
s t s
1
s
2
s
3

2 t 0 1 2 -1 0 60
3+Ac
s
s

1 0 -1 1 0 20
0 s
3
0 0 1 1 1 20

[20]+
[( 3+Acs)1]
+[00]-
3+Acs =
0
[21]+
[( 3+Acs)0]
+[00]-2 =
0
[22]+
[( 3+Acs)(-1)]
+[01]-0=
1-Ac
s

[2(-1)]+
[( 3+Acs)1]
+[0(-1)]-0
=
1+Ac
s

[20]+
[( 3+Acs)0]
+[01]-0=
0

[260]+
[( 3+Acs)20]
+[020]=
180+20Ac
s
A continuacin realizamos el Test de Optimalidad (determinar si el paso a una solucin
bsica adyacente puede mejorar la funcin objetivo).
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 87 de 214

Recordemos que:

Problemas de maximizar: la solucin es ptima si todos los elementos de la
fila z son 0.
Problemas de minimizar: la solucin es ptima si todos los elementos de la
fila z son 0.

Como en nuestro caso estamos maximizando:
Para s
1
= rengln z = 1 Ac
s
0 = Ac
s
1
Para s
2
= rengln z = 1 + Ac
s
0 = Ac
s
1
Por lo tanto: 1 Ac
s
1 o lo que es lo mismo: Ac
s
e [1, 1]


La solucin para las variables bsicas no cambia en este intervalo,
modificndose la funcin objetivo en un valor igual a z`* = c
B
.b
+
c
B
b
Esto significa que para el intervalo 1 Ac
s
1, el programa ptimo no vara,
pero s que cambia la funcin objetivo. Podemos preguntarnos qu ocurre si Ac
s

aumenta por encima de 1?
Si Ac
s
> 1, la tabla anterior ya no sera ptima, por lo que habra que iterar. En
este caso entra s
1
y sale s
3
.
3+ Ac
s
2 0 0 0
s t s
1
s
2
s
3

2 t 0 1 2 -1 0 60
3+Ac
s
s

1 0 -1 1 0 20
0 s
3
0 0 1 1 1 20 sale =
0 0 1-Ac
s
1+Ac
s
0
180+20Ac
s


^
entra


La tabla resultante es:
3+ Ac
s
2 0 0 0
s t s
1
s
2
s
3

2 t 0 1 0 1 2 20
3+Ac
s
s

1 0 0 0 1 40
0 s
1
0 0 1 1 1 20
0 0 0 2 1+A c
s
160 + 40Ac
s
Para la optimalidad debe cumplirse que 1+Ac
s
0, por lo tanto Ac
s
1. Nos
fijamos que en el punto donde Ac
s
=1 tenemos dos posibles soluciones:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 88 de 214

Intervalo Ac
s
= [1, 1]: s = 20 t= 60 z = 180 + 20Acs
Intervalo Ac
s
= [1, ): s = 40 t= 20 z = 160 + 40Acs
Para Ac
s
= 1 ambas soluciones son posibles, por lo que en Ac
s
= 1 tenemos
soluciones mltiples, y las infinitas soluciones vienen dadas por las bases de ambos
segmentos.
Veamos ahora que ocurrira si cambiamos el beneficio de los trenes
fabricados. El nuevo coeficiente de t sera t
s
+ At
s
. Hay que recalcular el rengln z
para comprobar si cambiara el plan ptimo. Igual que antes, analizamos las variables
no bsicas porque son las que pueden entrar:
3 2+ Ac
t
0 0 0
s t s
1
s
2
s
3

2+ Ac
t
t 0 1 0 1 2 60
3 s

1 0 0 0 1 20
0 s
3
0 0 1 1 1 20
0 0 1+2Ac
t
1-Ac
t
0

180 + 60Ac
t

Para s
1
= rengln z = 1 + 2Ac
t
0 = Ac
t

Para s
2
= rengln z = 1 Ac
t
0 = Ac
t
1
Por lo tanto: 1/2 Ac
t
1 o lo que es lo mismo: Ac
t
e [1/2, 1]


La solucin para las variables bsicas no cambia en este intervalo,
modificndose la funcin objetivo en un valor igual a z`* = c
B
.b
+
c
B
b
Veamos qu ocurre si cambio una variable no bsica. Por ejemplo,
aumentamos el coste de s
1
en Ac
s1.
3 2 0+Ac
s1
0 0
s t s
1
s
2
s
3

2 t 0 1 2 1 0 60
3 s

1 0 1 1 0 20
0 s
3
0 0 1 1 1 20
0 0
[22]+
[3(-1)]
+[01]-
[0+Acs1] =
1-Ac
s1

1 0 180
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 89 de 214

El rengln z en s
1
es: 1 Ac
s1
0 = Ac
s1
1. Por tanto, mientras Ac
s1
sea
menor que 1 no cambiar el programa ptimo (la solucin sigue siendo la misma),
aunque s
1
no pasar a ser variable bsica. Pero este mtodo slo sirve si cambiamos los
coeficientes de las variables de uno en uno, no nos vale si cambiamos 2 o ms
coeficientes a la vez.
2.8.2- ANLISIS DE SENSIBILIDAD EN EL VECTOR DE
RECURSOS.
Vamos a ver qu ocurre cuando cambiamos algn elemento del vector del lado
derecho. Si cambiamos:
b
1
b
1
+ Ab
1

B
1
b1 = B
1
b
1
+ B
1
Ab
1


En nuestro problema particular aumentamos el valor de la primera restriccin.
Mostremos de nuevo la tabla ptima calculada anteriormente:
3 2 0 0 0
s t s
1
s
2
s
3

2 t 0 1 2 1 0 60
3 s

1 0 1 1 0 20
0 s
3
0 0 1 1 1 20
0 0 1 1 0 180

(



)

(



) (

) (

)

B
1
+Ab
A b
=
B
1
A B
1
b
=
B
1
b+B
1
Ab

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 90 de 214

La tabla resultante sera:
3 2 0 0 0
s t s
1
s
2
s
3

2 t 0 1 2 -1 0 60 + 2Ab
1

3 s

1 0 -1 1 0 20 - Ab
1

0 s
3
0 0 1 -1 1 20 + Ab
1

0 0 1 1 0 180 + Ab
1
Aplicando la condicin de factibilidad en el lado derecho:
60 + 2Ab
1
0
=
Ab
1
30
20 Ab
1
0 Ab
1
20
20 + Ab
1
0 Ab
1
20
Mientras que la variacin de los recursos de la 1 restriccin (b
1
) est en el
intervalo [20, 20], el programa ptimo no cambiar. Es decir la restriccin n1 ser:
s + t 80 = s + t 80-20 = s + t 60
s + t 80 = s + t 80+20 = s + t 100
Quedando los resultados as:


Pero justo en el punto Ab
1
= 20, tenemos dos bases que generan la misma
solucin degenerada (en los puntos lmites tenemos soluciones que son generadas por
muchas bases, pero slo una solucin).
Para Ab
1
> 20, el problema no es factible, ya que no cumplira la condicin de
factibilidad en el lado derecho (0). Aplicaramos aqu el mtodo simplex dual:
Primero se toma como variable que sale, que es la que tenga menor valor entre
los negativos en el lado derecho. Si no hubiera ninguna variable que salga (negativa), la
tabla sera ptima.
En segundo lugar seleccionamos la variable que entra. Calculamos los cocientes
del rengln z entre los que sean negativos de la fila de la variable que sale, y tomaremos
como variable que entra la que d el menor resultado si se trata de minimizar y la de
mayor resultado si el problema es maximizar. Si no hay ninguna variable que entra (no
hay ningn elemento negativo en la fila), existe una ilimitacin en el problema dual, por
lo que el primal es infactible.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 91 de 214

3 2 0 0 0
s t s
1
s
2
s
3

2 t 0 1 2 1 0 60 + 2Ab
1

3 s

1 0 1 1 0 20 Ab
1
=Sale
0 s
3
0 0 1 1 1 20 + Ab
1

0 0 1 1 0 180 + Ab
1



^
Entra


3 2 0 0 0
s t s
1
s
2
s
3

2 t 2 1 0 1 0 100
0 s
1
1 0 1 1 0 0
0 s
3
1 0 0 0 1 40
1 0 0 2 0 200
Esta solucin ser ptima siempre que Ab
1
> 20.
Resumiendo, para un Ab
1
= 20 tendramos dos zonas:
t = 60+2Ab
1
t=100
s = 20-Ab
1
z=200
z =180+Ab
1

2.8.3- ADICIN DE VARIABLES.
Lo veremos con un ejemplo:
Partimos del siguiente P.P.L.:
Maximizar 2x
1
+ 3x
2
+ 5x
3

Sujeto a x
1
+ x
2
+ 2x
3
8
x
1
x
2
+ x
3
4
x
i
0
Resolviendo llegamos a la tabla ptima despus de la iteracin III (Tabla
IIIT
III
):
2 3 5 0 0
x
1
x
2
x
3
s
1
s
2

3 x
2
1 1 2 1 0 8
0 s
2
2 0 3 1 1 12
1 0 1 3 0 24
En este momento nos proponen producir un nuevo elemento x
4
y nos hacemos
las siguientes preguntas:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 92 de 214

Nos conviene producirlo?
Cunto estaramos dispuestos a pagar por l?
De la nueva variable x
4
nos dan los coeficientes y nuestro problema se convierte
en:
Maximizar 2x
1
+ 3x
2
+ 5x
3
+ 16x
4
Sujeto a x
1
+ x
2
+ 2x
3
+ 5x
4
8
x
1
x
2
+ x
3
x
4
4
x
i
0
A la hora de introducir este vector en la tabla, no puede hacerse directamente,
pues x
4
no est expresado en funcin de la base de la solucin ptima. Por tanto, previo
a introducirlo en la tabla, debemos expresar x
4
en funcin de la base de la solucin
ptima mediante la expresin:

(


) (

) (

)
Recalculamos la fila Z, quedando as la nueva tabla III con la adicin de la
variable x
4
ser:
2 3 5 0 0 16
x
1
x
2
x
3
s
1
s
2
x
4

3 x
2
1 1 2 1 0 5 8
0 s
2
2 0 3 1 1 4 12
1 0 1 3 0
(35)+
(04)-16=
1
24
Vemos si cumple la condicin de optimalidad:
Si verifica la condicin de optimalidad, no interesa introducir la nueva
variable en la base.
Si no verifica la condicin de optimalidad, interesa introducir la nueva
variable en la base.
En este caso el rengln z de x
4
es 1, por lo tanto, al no verificar la condicin de
optimalidad nos conviene introducirla en la base. Ahora volvemos a aplicar el simplex:
Entra la variable que menos cumple la condicin de optimalidad, al estar
maximizando, la que tenga menor valor entre los negativos de la fila z.
Sale la variable cuyo cociente del lado derecho entre sus correspondientes
elementos positivos en la columna de la variable que entra sea el ms pequeo
(8/5<12/4).
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 93 de 214

2 3 5 0 0 16
x
1
x
2
x
3
s
1
s
2
x
4

3 x
2
1 1 2 1 0 5 8 =Sale
0 s
2
2 0 3 1 1 4 12
1 0 1 3 0 1 24

^
Entra


, entra x
4
, sale x
2
y calculamos la nueva tabla:
2 3 5 0 0 16
x
1
x
2
x
3
s
1
s
2
x
4

16 x
4
1/5 1/5 2/5 1/5 0 1 8/5
0 s
2
6/5 4/5 7/5 1/5 1 0 28/5
6/5 1/5 7/5 16/5 0 0 128/5
Observamos que ya es ptima, pues todos los elementos del rengln Z son 0:


Esto significa que estara dispuesto a pagar como mximo 8/5 por esa nueva
variable, interesa producirlo porque mejora el valor de la funcin objetivo (25,6>24).
En vez de aadirse nuevas variables, tambin puede pasar que cambie alguna
variable, en cuyo caso:
Si cambia una variable no bsica se hace igual que si fuera una variable
nueva.
Si cambia una variable bsica, supongo que la variable con los cambios
es una variable nueva (dejando la antigua) y construyo la nueva tabla. Luego se pivota
de forma que salga la antigua y entre la nueva. Una vez que haya salido la antigua,
tacho su columna.
2.8.4- ADICIN DE RESTRICCIONES.
Tambin se pueden aadir nuevas restricciones al problema original. Como
ejemplo pondremos el mismo problema anterior.
Maximizar 2x
1
+ 3x
2
+ 5x
3

Sujeto a x
1
+ x
2
+ 2x
3
8
x
1
x
2
+ x
3
4
x
i
0

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 94 de 214

La tabla ptima despus de la iteracin III (Tabla III:T
III
):
2 3 5 0 0
x
1
x
2
x
3
s
1
s
2

3 x
2
1 1 2 1 0 8
0 s
2
2 0 3 1 1 12
1 0 1 3 0 24
La solucin ptima del problema anterior con 3 variables es:

)
Y ahora nos dicen que tenemos que aadir la restriccin 2x
1
+ x
2
5.
Primero tengo que comprobar si la solucin ptima verifica la nueva restriccin,
ya que si fuera as no tendra que hacer nada ms:
20 + 8 5 = = no la verifica.
Luego le aadimos a la tabla ptima la fila de la nueva restriccin, como
variable bsica:
2x
1
+ x
2
+ s
3
= 5
2 3 5 0 0 0
x
1
x
2
x
3
s
1
s
2
s
3

3 x
2
1 1 2 1 0 0 8
0 s
1
2 0 3 1 1 0 12
0 s
3
2 1 0 0 0 1 5
1 0 1 3 0 0 24

Pero hemos aadido la nueva restriccin sin transformarla como hacamos antes
para la tabla III. Como resultado de no haber pivotado lo que hemos obtenido no es una
tabla simplex, ya que la columna x2 debera ser (

). Tenemos que pivotar hasta


conseguir un 0, a la tercera fila le resto la primera y obtengo:
2 3 5 0 0 0
x
1
x
2
x
3
s
1
s
2
s
3

3 x
2
1 1 2 1 0 0 8
0 s
1
2 0 3 1 1 0 12
0 s
3
1 0 2 1 0 1 3 =
1 0 1 3 0 0 24
^
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 95 de 214

Ahora s es una tabla simplex, pero ya no es factible, porque hay elementos
negativos en el lado derecho. Tengo que aplicar el simplex dual. Recordemos la
metodologa del mtodo simplex dual:
Primero se toma como variable que sale, que es la que tenga menor valor entre
los negativos en el lado derecho. Si no hubiera ninguna variable que salga (negativa), la
tabla sera ptima.
En segundo lugar seleccionamos la variable que entra. Calculamos los cocientes
del rengln z entre los que sean negativos de la fila de la variable que sale, y tomaremos
como variable que entra la que d el menor resultado si se trata de minimizar y la de
mayor resultado si el problema es maximizar. Si no hay ninguna variable que entra (no
hay ningn elemento negativo en la fila), existe una ilimitacin en el problema dual, por
lo que el primal es infactible.
Luego Sale s
3
, y entra x
3
:

2 3 5 0 0 0
x
1
x
2
x
3
s
1
s
2
s
5

3 x
2
2 1 0 0 0 1 5
0 s
1
7/2 0 0 1/2 1 3/2 15/2
5 x
3
1/2 0 1 1/2 0 1/2 3/2
3/2 0 0 5/2 0 1/2 45/2
Esta tabla ya es ptima. Notamos que el valor de la funcin objetivo ha
disminuido (ha empeorado), esto es normal, ya que al aadir ms restricciones la
funcin objetivo nunca va a mejorar:


2.8.5- ANLISIS PARAMTRICO DE LA SENSIBILIDAD.
El anlisis paramtrico de la sensibilidad se utiliza para comprobar cmo afecta
algn parmetro (por ejemplo el tiempo) sobre los costos o sobre el lado derecho.
2.8.5.1- VECTOR DE COSTOS.
Tenemos el problema:
Minimizar x
1
3x
2

Sujeto a x
1
+ x
2
6
x
1
+ 2x
2
6
x
1
, x
2
0

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 96 de 214

La tabla ptima que obtenemos despus de aplicar el mtodo simplex es:
1 3 0 0
x
1
x
2
s
1
s
2

1 x
1
1 0 2/3 1/3 2
3 x
2
0 1 1/3 1/3 4
0 0 5/3 2/3 14
Pero esto es en el da de hoy. Si queremos saber cmo evolucionar el sistema a
travs del tiempo nos hace falta otro dato, que sera la funcin objetivo variable. En
este caso es:
(


)


Modificamos ahora la tabla para que incluya al tiempo. Sustituimos los valores
de x
1
y x
2
con los nuevos valores y recalculamos el rengln Z de la forma habitual.
1+2t 3+t 0 0
x
1
x
2
s
1
s
2

1+2t x
1
1 0 2/3 1/3 2
3+t x
2
0 1 1/3 1/3 4
0 0 5/3 + (5/3)t 2/3 (1/3)t 14 + 8t
Esta tabla es la misma que la anterior para el instante t = 0. Imponemos la
condicin de optimalidad al rengln z, sabiendo que debemos incluir el instante t = 0:
5/3 + (5/3) t 0 = t 1
2/3 (1/3) t 0 = t 2
Para 2 t 1 obtenemos:
(


)


Por tanto, la funcin objetivo es ptima hasta t = 1, a partir de entonces habr
que replantearse el problema. En la prctica, no esperaremos hasta que haya
transcurrido todo un ao (suponiendo t en aos) para recalcular el problema, sino que
plantearemos de nuevo el problema cada vez que tenga lugar algn hecho que pueda
influir en las variables.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 97 de 214

2.8.5.2- VECTOR DEL LADO DERECHO.
Hacemos lo mismo que en el apartado anterior, pero suponiendo que lo que
varan son los recursos:
minimizar x
1
3x
2

sujeto a x
1
+ x
2
6
x
1
+ 2x
2
6
x
1
, x
2
0
El nuevo vector de recursos es (dato):
(


)
No puedo coger el nuevo lado derecho y ponerlo en la tabla sin ms, hay que
calcular el nuevo lado derecho:


) (

) (


) (


)
(

) (

) (


)
La tabla queda:
1 3 0 0
x
1
x
2
s
1
s
2

1 x
1
1 0 2/3 1/3 2 + (5/6) t
3 x
2
0 1 1/3 1/3 4 + (1/6) t
0 0 5/3 2/3 14 (4/3) t
Ahora imponemos la condicin de factibilidad:
2 + (5/6) t 0 = t 12/5
4 + (1/6) t 0 = t 2/3 (esta es la condicin ms restrictiva)
Para t 2/3

(


)


La diferencia con respecto al punto anterior es que los valores del vector X* (x
1

y x
2
) dependen del parmetro t.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 2 Programacin Lineal.


Pgina 98 de 214

2.8.6- ANLISIS DE TOLERANCIA.
El anlisis paramtrico de la sensibilidad puede parecer interesante porque es
fcil predecir el futuro, pero no siempre sabemos cmo van a evolucionar los costos y
las disponibilidades. Para ello empleamos el anlisis de tolerancia, que se puede hacer
en el vector de coste o en el del lado derecho.
Si ya hemos resuelto el problema, transcurrido un tiempo nos daremos cuenta de
que el coste ha variado lo suficiente como para replantearme el problema, podramos
sustituir el nuevo vector de coeficientes y comprobar si cumple la condicin de
optimalidad.
Vamos a hacer el anlisis de tolerancia en el vector de costos:
PASO 1: Determinar las cantidades mximas permitidas para los
incrementos y las disminuciones de cada coeficiente de la funcin objetivo, es decir, un
anlisis de sensibilidad para cada c
i
. El mximo incremento permitido de c
i
para que la
base siga siendo ptima es
+
i
, y la mxima disminucin

i
.
PASO 2: es el autntico incremento de c. Supongamos que tenamos
c, que se ha transformado en , ahora tenemos que calcular los autnticos incrementos:



}
PASO 3: Calcular la llamada regla del 100%:


Donde

representa el porcentaje de la modificacin admisible de


dicho coeficiente que estoy usando.
- Si la frmula es 100, significa que la base se mantiene, podemos
continuar con el problema.
- En caso contrario habra que cambiar de base, ya que la solucin ya no
sera ptima (habra que replantearse el problema).
Para hacer el anlisis de tolerancia en el vector del lado derecho se procede de
forma anloga sustituyendo b por c.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 99 de 214

TEMA 3: Programacin Lineal Entera
3.1- PROBLEMAS DE ASIGNACIN Y TRANSPORTE.
Vamos a abordar un nuevo problema, cuya programacin conduce a un
problema de programacin lineal en el que algunas veces las variables se pueden
considerar enteras. La condicin de que las variables sean enteras no es tan importante,
ya que en los problemas de transporte casi se impone por naturaleza. Un problema de
transporte tambin engloba a otros tipos de problemas que se resuelven con el mismo
modelo.
Un problema de transporte tiene los siguientes elementos:
- Hay unos nodos que actan como orgenes.
- Otros nodos actan como destinos.
- El objetivo es transportar un producto de los nodos de origen, a los nodos
de destino.
- Hay que dotar al problema de una estructura de costos, y asociado a cada
ruta hay un c
ij
que es el coste unitario de transporte del origen i al nodo j.
Si no se imponen restricciones adicionales, la solucin es trivial (lo ms barato
es no transportar nada). Es necesario:
Asociar a cada origen un o
i
, que es la oferta o capacidad de suministro
que tiene ese origen. La mercanca que sale de ese origen no puede
exceder de o
i
.
Asociar a cada destino un d
j
, que es la demanda que hay que satisfacer en
el destino j.
Calcular x
ij
, que son las cantidades transportadas desde el origen i al
destino j.







origen 1
origen 2
origen 3
origen ...
origen n
destino 1
destino 2
destino 3
destino ...
...
destino m
c
ij

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 100 de 214

Como tenemos que minimizar el costo del transporte nos planteamos el siguiente
problema:
minimizar
i,j
c
ij
x
ij

sujeto a
j
x
ij
o
i
Para i = 1, 2, ... n

i
x
ij
d
i
Para j = 1, 2, ... m
x
ij
0 i,j
x
ij
e Z i,j (x es entero, condicin que se da en algunos
casos)
Definimos o
T
como la suma de todas las ofertas:
i

j
x
ij

i
o
i
= o
T

Definimos d
T
como la suma de todas las demandas:
i

j
x
ij

j
d
j
= d
T

Y debe cumplirse que o
T
d
T
, la demanda total debe ser menor que la oferta
total, si no sera un problema infactible. En la vida real significara que no somos
capaces de satisfacer toda la demanda, ya que no tenemos suficientes productos.
Si la demanda es mayor que la oferta se crea un nodo de origen ficticio cuya
oferta sea igual a la cantidad que necesito, para que el problema tenga solucin, y con
coste de transporte nulo. La oferta del nodo ficticio es: o = d
T
o
T
. Con esto
conseguimos que el problema est balanceado o equilibrado.
Si la oferta fuera mayor que la demanda se puede crear un nodo de destino
ficticio cuya demanda sea: d = o
T
d
T
, as el exceso de oferta va a parar al nodo de
destino ficticio. Al igual que en el caso anterior, el coste de transportar esos productos
sera cero.
Sea como sea el problema original se puede construir un problema de transporte
balanceado, por lo que podemos aadir una nueva igualdad:
o
T
= d
T

Para que esto se cumpla:

i

j
x
ij
=
i
o
i

j

i
x
ij
=
j
d
j

Y la nueva formulacin del problema queda como sigue:
minimizar
i,j
c
ij
x
ij

sujeto a
j
x
ij
= o
i
Para i = 1, 2, ... n

i
x
ij
= d
i
Para j = 1, 2, ... m
x
ij
0 i,j
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 101 de 214

Pero me sigo preguntando si todos los problemas de transporte tienen solucin, y
la respuesta es s:
Propiedad: Todos los problemas de transporte balanceados tienen
solucin ptima finita.
Demostracin: Si el problema es factible y no es ilimitado,
necesariamente tiene solucin ptima finita. Si somos capaces de
encontrar un punto que satisfaga las ecuaciones ya es factible, podemos
repartir las cantidades proporcionalmente a la oferta y la demanda:



Ya hemos demostrado que existe solucin factible. Ahora vamos a demostrar
que no es ilimitado:


Siendo


Luego


Cada variable es 0 y o
T
, cada variable est acotada entre 0 y o
T
, por lo que
el problema no es ilimitado.
3.1.1- FORMATO TABLA PARA PROBLEMAS DE TRANSPORTE.
El problema anterior se puede resolver por el mtodo simplex, pero podemos
hacer una adaptacin al mtodo simplex para facilitar su resolucin, esta adaptacin se
denomina formato tabla.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 102 de 214

En nuestros problemas de transporte tenemos n + m restricciones, pero no
todas son linealmente independientes. Al menos sobra una ecuacin para que las dems
sean linealmente independientes. Como mucho tendr n + m 1 ecuaciones
linealmente independientes y por tanto n + m 1 variables bsicas en mi simplex,
pero necesitamos saber exactamente cuntas. Veamos antes algunos conceptos. En una
tabla de transporte cada fila representa un origen y cada columna un destino:
m destinos
n


o
r

g
e
n
e
s
















Adems, cada variable puede ser bsica o no bsica. Si es no bsica, vale 0, lo
que me interesa saber de ella no es su valor (es 0), sino el valor del rengln z
correspondiente. En la tabla de transporte hay dos tipos de casillas (o variables):
Casillas o variables no bsicas
c
ij

c
ij
costo
z
ij
c
ij
costo reducido
z
ij
c
ij


Casillas o variables bsicas
c
i
B
c
ij
costo
B marca de variable bsica
x
ij

x
ij
valor de la variable
(el costo reducido es 0)

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 103 de 214

Definicin: Un Ciclo en una tabla de trasporte es un conjunto
ordenado de casillas que verifica:
1. La primera y la ltima casilla coinciden.
2. Cada casilla comparte con la siguiente la fila o la columna.
3. No existen ms de dos casillas consecutivas que compartan fila o
columna.
Ejemplos de ciclos:
1

1


Propiedad: (relaciona los ciclos con la independencia) un conjunto de
columnas de la matriz de coeficientes de un problema de transporte es linealmente
dependiente si y slo si se puede formar un ciclo con algunas de sus respectivas casillas.
De esto nos interesa la implicacin que tiene: un conjunto de casillas ser linealmente
independiente si y slo si no contiene ciclos. Ejemplo:















Las casillas (o variables)
sombreadas son
linealmente independientes,
ya que no contienen ciclos.
Son m+n1 casillas, por lo
tanto el tamao de las bases
es m+n1.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 104 de 214

3.2- MTODOS GENERALES DE RESOLUCIN

3.2.1- MTODOS DE GENERACIN DE UNA SOLUCIN BSICA
FACTIBLE.
En el paso 0 del mtodo simplex encontrbamos una solucin bsica factible.
En los problemas de transporte tambin tenemos que encontrarla (ya que el mtodo es
una variacin del simplex). Para generar una solucin bsica factible inicial veremos
dos mtodos: el mtodo de la esquina noroeste y el mtodo de Vogell.
3.2.1.1- MTODO DE LA ESQUINA NOROESTE
Este mtodo no tiene en cuenta los costos. Para aplicarlo, seguir los siguientes
pasos:
PASO 1: Elegir la casilla ms al noroeste que no est tachada ni sea
bsica.
PASO 2: Hacerla bsica con valor igual al mnimo entre la oferta de esa
fila y la demanda de esa columna.
PASO 3: Tachar la fila o columna donde se haya alcanzado el mnimo.
PASO 4: Actualizar la oferta y la demanda y volver al paso 1.
Ejemplo del Mtodo de la Esquina Noroeste:
Tenemos un problema de transporte con 3 orgenes y 4 destinos:
Destinos
Ofertas
O
r

g
e
n
e
s

35
50
40
Deman
-das
45 20 30 30
125
(bal)

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 105 de 214

Primero tenemos que comprobar si est balanceado. Sumamos las ofertas por un
lado y las demandas por otro y obtenemos el mismo valor (35+50+40 = 45+20+30+30 =
125), por lo que est balanceado. Ahora elegimos la casilla ms al noroeste y la
hacemos bsica.
Le ponemos la B de bsica y le asignamos le menor valor entre la oferta y la
demanda de la fila y la columna en cuestin [min(35;45)=35]. Como hemos agotado la
oferta, ya no me interesa meter ms casillas de esta fila, la tacho. Adems, tengo que
evitar que se formen ciclos, al tachar la fila me aseguro de que ninguna otra casilla
pueda compartir fila.
B
35
35

50


40

45 20 30 30 125
10
(me quedan
10 de la
oferta de la
primera
columna)

Ahora elijo la siguiente casilla ms al noroeste y repito el proceso hasta que
complete todas las ofertas y demandas:
B
35 0
35
B
50 40
10

40


45 20 30 30 125
10

0

Repito el proceso asignando el menor valor de esa fila y columna, tachando en
este caso la columna (la que entra)
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 106 de 214

B
35 0
35
B B
50 40 20
10 20

40



45 20 30 30 125
10 0


0


Continuamos:
B
35



35
B B B
50 40 20 0
10 20 20

40




45 20 30 30 125
10 0 10



0



Siguiente adjudicacin:
B
35



35
B B B
50 40 20 0
10 20 20
B
40 30

10
45 20 30 30 125
10 0 10



0 0



Y la ltima ser:
B
35
0


35
B B B
50 40 20 0
10 20 20
B B
40 30 0

10 30
45 20 30 30 125
10 0 10 0



0 0



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 107 de 214

He conseguido un conjunto de variables que verifican el problema.
Comprobamos que el nmero de variables bsicas es m+n1 (en cada paso tacho una
fila o columna menos en el ltimo que he tachado 2).
m = 4
n = 3
B = 4+3-1 = 6
Las m+n1 casillas elegidas no forman ciclos y son factibles, por lo que son
una solucin bsica factible. Pero este mtodo no tiene en cuenta los costos, para
contar con los costos deberamos aplicar el mtodo de Vogel.
3.2.1.2- MTODO DE VOGEL
Este mtodo SI tiene en cuenta los costes, elige como bsicas las casillas con
un coste menor:
PASO 1: Para cada fila y columna se calculan las penalizaciones o
costes de oportunidad como la diferencia entre los dos costes ms pequeos.
PASO 2: Se elige la fila o columna con mayor penalizacin y dentro de
esa fila o columna, la casilla ms barata. Esta casilla se hace bsica con valor igual al
mnimo entre la oferta y la demanda.
PASO 3: Tachar la fila o columna donde se haya alcanzado el mnimo.
PASO 4: Actualizar la oferta y la demanda y volver al paso 1.
Ejemplo del Mtodo de Vogell:
Sea la tabla de transporte con sus costes.

Destinos
O
r

g
e
n
e
s

8 6 10 9
35
9 12 13 7
50
14 9 16 5
40

45 20 30 30 125
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 108 de 214

Calculamos la penalizacin para cada una de las filas y columnas (diferencia
entre costes ms pequeos de cada fila o columna):
Penali-
zaciones
9-8=1 9-6=3 13-10=3 7-5=2
8-6=2
8 6 10 9
35
9-7=2
9 12 13 7
50
9-5=4
14 9 16 5
40

45 20 30 30
En este caso la mxima penalizacin corresponde a la tercera fila, se elige la
casilla ms barata (remarcada) de esta fila. Se hace bsica con el valor mnimo
[min(30;40)=30] que satisface, en este caso la demanda, se tacha la columna donde se
ha alcanzado el mnimo y se actualizan.
Penalizaciones

9-8=1 9-6=3 13-10=3 7-5=2

8-6=2
8 6 10 9
35


9-7=2
9 12 13 7
50


9-5=4
14 9 16 5
B
40-30=
10
30

45 20 30
30-30=
0

Se vuelven a calcular las penalizaciones, exceptuando aquellas filas o columnas
ya satisfechas. En este caso, la cuarta columna.



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 109 de 214

Penalizaciones

9-8=1 9-6=3 13-10=3
9-8=1 9-6=3 13-10=3 7-5=2

8-6=2 8-6=2
8 6 10 9
35


12-9=3 9-7=2
9 12 13 7
50


14-9=5 9-5=4
14 9 16 5
B
40-30=
10
30



45 20 30
30-30=
0


La casilla con recuadro en grueso es la elegida [max(2;3;5;1;3;3)=5fila 3
min(19;9;16)=9columna 2]. Puede observarse cmo al haber satisfecho una columna,
y habindose eliminado sta del clculo de las penalizaciones, no varan las
penalizaciones por columnas, pero s por filas.
Damos el valor a la casilla remarcada y actualizamos valores:
Penalizaciones

9-8=1 9-6=3 13-10=3
9-8=1 9-6=3 13-10=3 7-5=2

8-6=2 8-6=2
8 6 10 9
35


12-9=3 9-7=2
9 12 13 7
50


14-9=5 9-5=4
14 9
B
16 5
B
10-10=
0
10

30



45
20-10=
20
30 0

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 110 de 214

Calculamos las penalizaciones. Ahora las penalizaciones por fila no variarn,
pero s las penalizaciones por columnas.
Penalizaciones

9-8=1 12-6=6 13-10=3
9-8=1 9-6=3 13-10=3
9-8=1 9-6=3 13-10=3 7-5=2

8-6=2 8-6=2 8-6=2
8 6 10 9
35


12-9=3 12-9=3 9-7=2
9 12 13 7
50


14-9=5 9-5=4
14 9
B
16 5
B
10-10=
0
10

30



45
20-10=
20
30 0

La siguiente asignacin ser [max(2;3;1;6;3)=6 columna 2; min(6;12) =
6fila 1]. Satisfacemos los valores mnimos:
Penalizaciones

9-8=1 12-6=6 13-10=3
9-8=1 9-6=3 13-10=3
9-8=1 9-6=3 13-10=3 7-5=2

8-6=2 8-6=2 8-6=2
8 6
B
10 9
35-10=
25
10


12-9=3 12-9=3 9-7=2
9 12 13 7
50


14-9=5 9-5=4
14 9
B
16 5
B
0
10

30



45
10-10=
0
30 0
Calculamos nuevamente las penalizaciones:


Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 111 de 214

Penalizaciones

9-8=1 13-10=3
9-8=1 12-6=6 13-10=3
9-8=1 9-6=3 13-10=3
9-8=1 9-6=3 13-10=3 7-5=2
10-8=2 8-6=2 8-6=2 8-6=2
8 6
B
10 9
35-10=
25
10

13-9=4 12-9=3 12-9=3 9-7=2
9

12 13 7
50



14-9=5 9-5=4
14 9
B
16 5
B
0
10

30



45
10-10=
0
30 0
La siguiente asignacin ser [max(2;4;1;3)=4 fila 2; min(9;13) =
9columna 1].
Damos valor a la variable y actualizamos filas y columnas:
Penalizaciones

9-8=1 13-10=3
9-8=1 12-6=6 13-10=3
9-8=1 9-6=3 13-10=3
9-8=1 9-6=3 13-10=3 7-5=2
10-8=2 8-6=2 8-6=2 8-6=2
8 6
B
10 9
25
10

13-9=4 12-9=3 12-9=3 9-7=2
9
B
12 13 7
50-45=
5
45


14-9=5 9-5=4
14 9
B
16 5
B
0
10

30



45-45=
0
0 30 0

Finalizamos la tabla en las casillas que quedan. Como solo nos queda una
columna asignamos aquella celda que tenga el menor coste (fila 1, ya que 10<13)
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 112 de 214

Penalizaciones

9-8=1 13-10=3
9-8=1 12-6=6 13-10=3
9-8=1 9-6=3 13-10=3
9-8=1 9-6=3 13-10=3 7-5=2
10-8=2 8-6=2 8-6=2 8-6=2
8 6
B
10
B
9
25-25=
0
10 25

13-9=4 12-9=3 12-9=3 9-7=2
9
B
12 13 7
5
45


14-9=5 9-5=4
14 9
B
16 5
B
0
10

30



0 0 30-25=5 0
Y la ltima asignacin:
Penalizaciones

9-8=1 13-10=3
9-8=1 12-6=6 13-10=3
9-8=1 9-6=3 13-10=3
9-8=1 9-6=3 13-10=3 7-5=2
10-8=2 8-6=2 8-6=2 8-6=2
8 6
B
10
B
9
25-25=
0
10 25

13-9=4 12-9=3 12-9=3 9-7=2
9
B
12 13
B
7
5-5=
0
45

5


14-9=5 9-5=4
14 9
B
16 5
B
0
10

30



0 0 5-5=0 0




Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 113 de 214

La solucin al problema corresponde a la tabla siguiente:
8 6
B
10
B
9

10 25

9
B
12 13
B
7
45

5

14 9
B
16 5
B

10

30

3.2.2- CONDICIONES DE OPTIMALIDAD PARA UN PROBLEMA DE
TRANSPORTE.
Una vez que hemos obtenido una solucin bsica factible tenemos que
comprobar que cumpla la condicin de optimalidad. Para ello emplearemos el
problema dual. Nuestro problema era:
Minimizar
ij
c
ij
x
ij

Sujeto a
i
x
ij
= o
i
i = 1, 2, n (variable dual u
i
)

j
x
ij
= d
j
j = 1, 2, m (variable dual v
j
)
x
ij
0
Por lo que el problema dual ser de maximizar:
Maximizar


Maximizar


Sujeto a u
1
+ v
1
c
11
u
1
+ v
2
c
12

u
1
+ v
m
c
1m

u
2
+ v
1
c
21

u
2
+ v
2
c
22

u
2
+ v
m
c
2m


u
n
+ v
1
c
n1

u
n
+ v
2
c
n2

u
n
+ v
m
c
nm

=
Sujeto a u
i
+ v
j
c
ij
u
i
, v
j
son libres


La solucin ser ptima cuando verifique las condiciones de holgura
complementaria:

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 114 de 214

Por la condicin de holgura complementaria, si x
ij
es bsica (no nula) la holgura
es 0 = u
i
+ v
j
= c
ij
. Como tengo m+n1 variables bsicas, tendr m+n1 ecuaciones
del tipo anterior. Por otra parte tendr m+n variables (n es y m uves
correspondientes a los orgenes y los destinos), con lo que me queda un sistema de m+n
variables con m+n1 ecuaciones, que ser compatible indeterminado. Sin embargo,
este sistema es muy fcil de resolver.
Tomemos la solucin bsica factible que hemos obtenido anteriormente
aplicando el mtodo de Vogell:
8 6
B
10
B
9
u
1
= 0 (libre)
10 25

9
B
12 13
B
7
u
2
= 3
45

5

14 9
B
16 5
B
u
3
= 6
10

30
v
1
=6 v
2
=6 v
3
=10 v
4
=2

Los costes sern:
Coste = 10 6 + 10 25 + 9 45 + 13 5 + 9 10 + 5 30 = 1020
Suponemos que una variable queda libre (u
1
)

y le ponemos el valor que
queramos, por comodidad le asignamos el valor cero.
Calculamos a partir de este valor el resto de valores u
i
y v
i
para las variables
bsicas que hay en la tabla:
La variable x
1,2
es bsica, la holgura de la restriccin 2 del dual debe ser 0 para
que sea ptimo:
u
1
+ v
2
= c
12
= 0 + v
2
= 6 = v
2
= 6 (las vamos poniendo en
cursiva en la tabla)
Seguimos:
u
1
+ v
3
= c
13
= 0 + v
3
= 10 = v
3
= 10
u
2
+ v
3
= c
23
= u
2
+ 10 = 13 = u
2
= 3
u
2
+ v
1
= c
21
= 3 + v
1
= 9 = v
1
= 6
u
3
+ v
2
= c
32
= u
3
+ 6 = 9 = u
3
= 3
u
3
+ v
4
= c
34
= 3 + v
4
= 5 = v
4
= 2
A partir de un valor arbitrario de una variable puedo resolver un sistema de
ecuaciones en cascada.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 115 de 214

Lo que obtengo es un conjunto de u, v y x, pero le falta algo para que se
verifique la condicin de holgura complementaria, slo falta que el vector u,v sea
factible (como el rengln z de una tabla simplex):
z
ij
c
ij
= u
i
+ v
j
c
ij
0 (que sea negativo o cero)
Entonces tenemos que calcular las cantidades para las variables no bsicas (las
bsicas estn en negrita):
Por ejemplo: x
12
= u
1
+ v
2
c
12
= 0 + 6 8 = 2

2 10 25 7
45 3 5 2
5 10 3 30

Y esta tabla es ptima porque verifica las condiciones de holgura
complementaria. Para calcular el coste total multiplicamos cada variable bsica por su
costo y lo sumamos todo. En este caso el mtodo de Vogel proporciona directamente la
solucin ptima factible, pero esto no es siempre as. En muchos casos habr que
realizar varias iteraciones, que se llevarn a cabo mediante el mtodo de transporte.
VARIANTE DEL MTODO VOGEL PARA EL CASO MAXIMIZANTE.
Una variante del mtodo Vogel se presenta cuando el problema original se
encuentra dado en modo maximizante (ejemplo maximizar beneficios), en este caso el
algoritmo a seguir es el siguiente:
PASO 1: Para cada fila y columna se calculan las penalizaciones o
costes de oportunidad como la diferencia entre los dos costes mayores.
PASO 2: Se elige la fila o columna con mayor penalizacin y dentro de
esa fila o columna, la casilla ms CARA. Es casilla se hace bsica con valor igual al
mnimo entre la oferta y la demanda.
PASO 3: Tachar la fila o columna donde se haya alcanzado el mnimo.
PASO 4: Actualizar la oferta y la demanda y volver al paso 1.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 116 de 214

3.2.3- MTODO DE TRANSPORTE.
Este mtodo nos permite encontrar una solucin ptima a partir de una solucin
bsica factible. Veamos los pasos a seguir:
PASO 0: Encontrar una solucin bsica factible mediante el Mtodo de
Vogell o el de la Esquina Noroeste.
PASO 1: Realizar el Test de Optimalidad:
Calcular los u
i
y los v
j
, que son las soluciones del sistema de
ecuaciones. Primero asignamos un valor arbitrario a cualquiera de ellas
(por ejemplo u
1
=0). Esto lo hacemos para las variables o casillas bsicas
B:
u
i
+ v
j
= c
ij
x
ij
bsica
Para las casillas no bsicas, calcular la frmula:
u
i
+ v
j
c
ij
x
ij
no bsica
Test propiamente dicho, se realiza para las casillas no bsicas,
que deben ser todas menor o igual que cero para que la tabla se ptima:
u
i
+ v
j
c
ij
0 x
ij
no bsica
PASO 2: Si no se cumple el test de optimalidad hay que hacer otra
iteracin:
Seleccionar como variable de entrada la variable no bsica que
menos verifique la condicin de optimalidad, es decir, la que tenga
mayor valor de u
i
+ v
j
c
ij
entre las positivas.
Encontrar el ciclo que forma la casilla que entra con otras casillas
bsicas. Slo hay un ciclo posible.
Marcar con los signos + y alternativamente las casillas del
ciclo encontrado, empezando por + en la casilla de entrada.
Calcular t (tau) como el mnimo de los valores de las casillas con
signo en el ciclo.
Sumar t al valor de las casillas marcadas con + en el ciclo y
restarlo a las casillas marcadas con .
Marcar como bsica a la casilla que entra B y desmarcar como
bsica la casilla del ciclo que haya quedado con valor nulo.
PASO 3: Recalcular la tabla (u
i
, v
j
y x
ij
de casillas no bsicas) y volver
al paso 1.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 117 de 214

EJEMPLO: Mtodo de Transporte:
Partimos de la solucin bsica factible obtenida con el mtodo de la esquina
noroeste y pretendemos obtener la solucin ptima. Primero calculamos los u
i
y v
j
,
obligando a que u
1
=0:
8 6
B
10
B
9
u
1
= 0 (libre)
35 5 2 -8
9
B
12 13
B
7
u
2
= 1
10 20 20 -5
14 9
B
16 5
B
u
3
= 4
-2 6 10 30
v
1
=8 v
2
=11 v
3
=12 v
4
=1

Calculamos u
i
, v
j
de las casillas bsicas.
u
1
+ v
1
= c
11
= 0 + v
1
= 8 = v
1
= 8
u
2
+ v
1
= c
21
= u
2
+ 8 = 9 = u
2
= 1
u
2
+ v
2
= c
22
= 1 + v
2
= 12 = v
2
= 11
u
2
+ v
3
= c
23
= 1 + v
3
= 13 = v
3
= 12
u
3
+ v
3
= c
33
= u
3
+ 12 = 16 = u
3
= 4
u
3
+ v
4
= c
34
= 4 + v
4
= 5 = v
4
= 1
Coste = 35x8 + 9x10 + 12x20 + 13x20 + 16x10 + 5x30 = 1180
Comprobamos que la tabla no es ptima, ya que hay casillas no bsicas que son
positivos (para que fuera ptima deberan ser 0 todas las casillas no bsicas). Ahora
hacemos el pivote: la casilla que entra es el mayor entre los positivos de las no
bsicas (la que menos verifica la condicin de optimalidad), en este caso la x
2,3
= 6.
Buscamos un ciclo formado por la casilla x
2,3
y otras bsicas y lo
marcamos con sombra en la tabla. Marcamos la casilla x
2,3
con + y las dems
alternativamente con + y .
Calculamos t (tau) como el mnimo de los valores de las casillas con
signo en el ciclo, lo restamos a las casillas con signo y lo sumamos a las casillas
con signo +. Excepto para la casilla que entra.
Se desmarcan como bsicas las casillas del ciclo que quedan con valor
nulo al restar t (en este caso x
33
)



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 118 de 214

8 6
B
10
B
9
u
1
= 0 (libre)
35 5 2 -8
9
B
12 13
B
7
u
2
= 1
10 20 - 20 + -5
14 9
B
16 5
B
u
3
= 4
-2 6 + 10 - 30
v
1
=8 v
2
=11 v
3
=12 v
4
=1

t = 10. Deja de ser bsica x
33
(10-10 =0)
8
B
6

10

9
35
9
B
12
B
13
B
7
10 10 30
14 9
B
16 5
B
10 30
Volvemos a calcular los u
i
y v
j
para la nueva tabla
Recalculamos la tabla, las casillas bsicas que no estaban en el ciclo se
quedan como estaban y para las no bsicas se aplica u
i
+ v
j
c
ij
. La casilla que entra
en la base toma el valor 10 porque hay que sumarle t al valor que tena antes en la
funcin objetivo (0 al haber sido no bsica).
Calculamos u
i
, v
j
de las casillas bsicas.
u
1
+ v
1
= c
11
= 0 + v
1
= 8 = v
1
= 8
u
2
+ v
1
= c
21
= u
2
+ 8 = 9 = u
2
= 1
u
2
+ v
2
= c
22
= 1 + v
2
= 12 = v
2
= 11
u
3
+ v
2
= c
32
= u
3
+ 11 = 9 = u
3
= -2
u
3
+ v
4
= c
34
= -2 + v
4
= 5 = v
4
= 7
Casillas no bsicas = u
i
+ v
j
c
ij

x
12
= u
1
+ v
2
c
12
= 0 + 11 6 = 5
x
13
= u
1
+ v
3
c
13
= 0 + 12 10 = 2
x
14
= u
1
+ v
4
c
14
= 0 + 7 9 = -2
x
24
= u
2
+ v
4
c
24
= 1 + 7 7 = 1
x
31
= u
3
+ v
1
c
31
= -2 + 8 14 = -8
x
33
= u
3
+ v
3
c
32
= -2 + 12 16 = -6

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 119 de 214

8
B
6

10

9
u
1
= 0 (libre)
35 5 2 -2
9
B
12
B
13
B
7
u
2
= 1
10 10 30 1
14 9
B
16 5
B
u
3
= -2
-8 10 -6 30
v
1
=8 v
2
=11 v
3
=12 v
4
=7

Coste = 35x8 + 9x10 + 12x10 + 13x30 + 9x10 + 5x30 = 1120
Esta tabla no es ptima porque no cumple las condiciones de optimalidad.
Repetimos el proceso y actualizamos la tabla:
8
B
6

10

9
u
1
= 0 (libre)
35 5 2 -2
9
B
12
B
13
B
7
u
2
= 1
10 10 30 1
14 9
B
16 5
B
u
3
= -2
-8 10 -6 30
v
1
=8 v
2
=11 v
3
=12 v
4
=7


8
B
6

10

9
u
1
= 0 (libre)
35 - 5 + 2 -2
9
B
12
B
13
B
7
u
2
= 1
10 + 10 - 30 1
14 9
B
16 5
B
u
3
= -2
-8 10 -6 30
v
1
=8 v
2
=11 v
3
=12 v
4
=7



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 120 de 214


t = 10. Deja de ser bsica x
22
(10-10 =0)
8
B
6
B
10

9
25 10
9
B
12

13
B
7
20 30
14 9
B
16 5
B
10 30
Se calculan u
i
, v
j
en las variables bsicas:
u
1
= 0
u
1
+ v
1
= c
11
= 0 + v
1
= 8 = v
1
= 8
u
1
+ v
2
= c
11
= 0 + v
2
= 6 = v
2
= 6
u
2
+ v
1
= c
22
= u
2
+ 8 = 9 = u
2
= 1
u
2
+ v
3
= c
23
= 1 + v
3
= 13 = v
3
= 12
u
3
+ v
2
= c
32
= u
3
+ 6 = 9 = u
3
= 3
u
3
+ v
4
= c
34
= 3 + v
4
= 5 = v
4
= 2
Casillas no bsicas = u
i
+ v
j
c
ij

x
13
= u
1
+ v
3
c
13
= 0 + 12 10 = 2
x
14
= u
1
+ v
4
c
14
= 0 + 2 9 = -7
x
22
= u
2
+ v
2
c
22
= 1 + 6 12 = -5
x
24
= u
2
+ v
4
c
24
= 1 + 2 7 = -4
x
31
= u
3
+ v
1
c
31
= 3 + 8 14 = -3
x
33
= u
3
+ v
3
c
33
= 3 + 12 16 = -1
8
B
6
B
10

9
u
1
= 0 (libre)
25 10 2 -7
9
B
12

13
B
7
u
2
= 1
20 -5 30 -4
14 9
B
16 5
B
u
3
= 3
-3 10 -1 30
v
1
=8 v
2
=6 v
3
=12 v
4
=2 Coste=1.070
Esta tabla no es ptima porque no cumple las condiciones de optimalidad.


Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 121 de 214


Repetimos el proceso y actualizamos la tabla:
8
B
6
B
10

9
u
1
= 0 (libre)
25 - 10 2 + -7
9
B
12

13
B
7
u
2
= 1
20 + -5 30 - -4
14 9
B
16 5
B
u
3
= 3
-3 10 -1 30
v
1
=8 v
2
=11 v
3
=12 v
4
=7

8
B
6
B
10

9
u
1
= 0 (libre)
-2 10 25 -7
9
B
12

13
B
7
u
2
= 3
45 -3 5 -2
14 9
B
16 5
B
u
3
= 3
-5 10 -3 30
v
1
=6 v
2
=6 v
3
=10 v
4
=2 Coste=1.020
Y esta tabla ya es ptima porque todos los valores de las variables o casillas no
bsicas son menores o iguales que 0. El valor de la funcin objetivo ha ido mejorando
desde 1180 hasta 1020 (el coste se ha ido reduciendo). Como vemos, la tabla obtenida
es la solucin bsica factible que proporciona el mtodo de Vogel, pero esto no siempre
es as. El mtodo de Vogel nos da una solucin factible que est ms cerca de la
solucin ptima que la que proporciona el mtodo de la esquina noroeste, pero no tiene
porqu ser la solucin ptima.
Propiedad: Dado un problema de transporte, si o
i
y d
j
son enteras, el
problema tiene al menos una solucin entera. Si debo obtener una solucin ptima
entera para el problema, puedo obligar a que las ofertas y las demandas sean enteras,
entonces la solucin bsica factible que obtengo por los mtodos de Vogel o la esquina
noroeste es entera, y la solucin ptima obtenida por el mtodo de transporte es tambin
entera. Esto no quiere decir que todas las soluciones sean enteras, pero s lo sern las
que calculemos por los mtodos que hemos estudiado.
Propiedad: Si a los costos de una fila o una columna de un problema de
transporte balanceado se le suma o resta una misma cantidad, la solucin ptima no
cambia.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 122 de 214

Demostracin: Suponemos que le sumamos una cantidad k a la primera
fila, lo que genera unos nuevos costes que llamaremos
ij
:


La nueva z ( ) es igual a la antigua z ms una constante, por lo tanto los dos
problemas tienen la misma solucin.
3.2.3- PROBLEMAS DE TRANSBORDO.
Los problemas de transbordo son un poco diferentes a los de transporte, ya que
adems de los nodos origen y destino existen los nodos de transbordo, que son aquellos
que reciben y dan mercancas. Vamos a ver cmo se convierte un problema de
transbordo en otro de transporte con un ejemplo:
EJEMPLO: Problema de Transbordo:
Supongamos que tenemos el siguiente grafo con 7 nodos, los crculos
representan orgenes, los cuadros son destinos y los rombos nodos de transbordo:







1
2
3
4
5
6
7
3
4
5
3
4
5
12
4
2
3
6
Oferta
Demanda
10
20
15
10
25
10
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 123 de 214

Ahora lo pasamos a una tabla para el mtodo de transporte. Se ponen los nodos
de oferta (orgenes) en las filas y los de demanda (destinos) en las columnas, teniendo
en cuenta que los nodos de transbordo son tanto de oferta como de demanda. Luego se
le asigna el coste correspondiente a cada camino. Los nodos que no estn relacionados
(sin olvidar el sentido) tienen un coste unitario muy elevado (ruta imposible, coste M), y
el coste para los nodos de transbordo es 0 (no cuesta nada llevar algo al mismo sitio).
Por ltimo se asignan las ofertas y las demandas de cada nodo. Para los nodos de
transbordo (2; 4; 5) habr que sumarles, adems, la oferta total (o la demanda total).


Destinos
-


2 4 5 6 7
Ofertas
-
orgenes
=
1
3 5 M 4 M
10

2
0 4 3 M M
20+45

3
M M 5 M 12
15

4
M 0 4 2 3
0+45

5
M M M 0 M M 6 6
0+45

Demandas
=
0 0 10 25 10
+45 +45 45

Si en la solucin vemos que tenemos que transportar a travs de una ruta
imposible (del 2 al 6, por ejemplo), entonces el problema sera infactible. Realmente
esto no es un problema de transporte, es un intento de aproximarlo a un problema de
transporte para darle una solucin.
La tabla anterior es un problema de transporte convencional, se resuelve y sale:



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 124 de 214



Destinos
-


2 4 5 6 7
Ofertas
-
orgenes
=
1
3 5 M 4 M
10

10

2
0 4 3 M M
65
45 20

3
M M 5 M 12
15

15

4
M 0 4 2 3
45

25

15 5
5
M M M 0 M M 6 6
45

40

5
Demandas = 45 45 55 25 10
Analizando el resultado en los nodos trasbordo:
- x
21
= 45, por tanto la cantidad que se ha trasbordado a travs del nodo 2
es 45-45 = 0, es decir no se ha trasbordado mercanca a travs del nodo 2.
- x
42
= 25, a travs de 4 se ha trasbordado una cantidad de 45-25 = 20.
- x
53
= 40, a travs de 5 se ha trasbordado una cantidad de 45-40 = 5.
SOLUCIONES DEGENERADAS.
Un problema de transporte contiene soluciones degeneradas cuando no se
cumple la igualdad siguiente:
m+n-1 = n de casillas con asignacin
En este caso para hacerlo no degenerado existen dos metodologas:
1) Aadimos al problema posiciones hasta que se cumpla la igualdad
anterior. La asignacin de posiciones se hace a posiciones
independientes, definidas como aquellas posiciones vacas para las que no
es posible construir un ciclo. En todo caso, la determinacin de las
posiciones independientes debe comenzar por aquellas casillas (vacas)
con coste mas bajo, ya que la asignacin de posiciones a stas puede
conducir ms rpidamente a la solucin final.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 125 de 214

2) (Metodologa vista en clase 2010-2011) Cuando se producen empates en
la oferta de una fila y una columna se tacha solo una de las dos. La
actualizacin de los valores de oferta y demanda si se debe realizar. Es
estrategia conduce siempre (salvo error) a una tabla con el numero
apropiado de casillas bsicas (aunque tal vez alguna casilla valga 0)
ANLISIS DE LA SENSIBILIDAD EN UNA TABLA DE
TRANSPORTES.
Para realizar el anlisis de sensibilidad en el vector de costes se opera de forma anloga
al mtodo simplex. A un coste determinado se le da valor en funcin a un parmetro, se calculan
los u
i
y los v
i
y se halla los intervalos en los que se cumple.
Ejemplo. Supongamos que se produce un incremento en el coste de la casilla X
12

pasando a ser 6+c
i
. Cul sera el mximo incremento que mantendra la optimabilidad
de la tabla?
8
6+ci
B 10 B 9

u
1
= 0 (libre)
10 25
9 B
12

13
B 7

u
2
= 3
45 5
14

9 B 16

5 B
u
3
= 3-c
i

10 30
v
1
=6 v
2
=6+c
i
v
3
=10 v
4
=2+c
i

Calculamos los valores de u
i
y v
i
en funcin del nuevo coste y posteriormente los
costes reducidos de las casillas no bsicas imponiendo la condicin de que sean < 0
u
1
+ v
2
= c
12
= 0 + v
2
= 6+c
i
= v
2
= 6+c
i

u
1
+ v
3
= c
13
= 0 + v
3
= 10 = v
3
= 10
u
2
+ v
3
= c
23
= u
2
+ 10 = 13 = u
2
= 3
u
2
+ v
1
= c
21
= 3 + v
1
= 9 = v
1
= 6
u
3
+ v
2
= c
32
= u
3
+ 6+c
i
= 9 = u
3
= 3-c
i

u
3
+ v
4
= c
34
= 3-c
i
+ v
4
= 5 = v
4
= 2+c
i

Para las casillas no bsicas se tiene que cumplir la desigualdad: u
i
+ v
j
c
ij
0
x
11
= u
1
+ v
1
c
11
= 0 + 6 8 = - 2
x
14
= u
1
+ v
4
c
14
= 0 + 2+c
i
9 = -7+c
i
< 0 = c
i
< 7
x
22
= u
2
+ v
2
c
22
= 3 +6+c
i
12 = -3+c
i
< 0 = c
i
< 3
x
24
= u
2
+ v
4
c
24
= 3 +2+c
i
7 = -2+c
i
< 0 = c
i
< 2
x
31
= u
3
+ v
1
c
31
= 3-c
i
+ 6 14 = -5-c
i
< 0 = c
i
> -5
x
33
= u
3
+ v
3
c
33
= 3-c
i
+ 10 16 = -3-c
i
< 0 = c
i
> -3
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 126 de 214

Luego el intervalo para el incremento del coste en el que se sigue manteniendo
la condicin de optimabilidad es el definido por -3 c
i
2
El valor de la funcin objetivo en este intervalo seria el siguiente:
Coste = 10 (6+c
i
) + 10 25 + 9 45 + 13 5 + 9 10 + 5 30 = 1020+10 c
i

Para los casos restantes, el proceso es construir la tabla simplex asociada, y a
travs de ah realizar el anlisis de sensibilidad.
Para construir la tabla simplex:
1. En la parte superior de la tabla se colocan todas las variables.
2. Colocamos las variables bsicas en el lado izquierdo de la tabla. Las
variables bsicas son aquellas que han tomado valor en la tabla de transporte.
3. El vector del lado derecho b ser aquel formado por los valores de cada
casilla bsica.
4. Las columnas de las variables bsicas tendrn un 1 en la fila que coincida
con ella misma y en el resto 0. El coeficiente del rengln z de esa columna es siempre 0.
5. Comenzando por la casilla no bsica en cuestin establecemos un ciclo y
le asignamos los valores 1, -1 a las casillas de dicho ciclo alternando negativo-positivo y
empezando con signo negativo en la casilla de referencia. El valor en la fila z viene
dado por el coste reducido de dicha casilla bsica (u
i
+ v
j
c
ij
).
6. Repitiendo este proceso para el resto de las columnas, obtendramos la
tabla simplex asociada al problema de transporte. Una vez completada esta tabla, se
realiza el anlisis de sensibilidad correspondiente.
Ilustramos el proceso pasando a una tabla simplex el ejemplo anterior
8
B
6
B
10

9
u
1
= 0 (libre)
-2 10 25 -7
9
B
12

13
B
7
u
2
= 3
45 -3 5 -2
14 9
B
16 5
B
u
3
= 3
-5 10 -3 30
v
1
=6 v
2
=6 v
3
=10 v
4
=2 Coste=1.020

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 127 de 214

Pasos 1 al 4

X
11
X
12
X
13
X
14
X
21
X
22
X
23
X
24
X
31
X
32
X
33
X
34

X
12
1 0 0 0 0 0 10
X
13
0 1 0 0 0 0 25
X
21
0 0 1 0 0 0 45
X
23
0 0 0 1 0 0 5
X
32
0 0 0 0 1 0 10
X
34
0 0 0 0 0 1 30
0 0 0 0 0 0
Pasos 5 y 6

X
11
X
12
X
13
X
14
X
21
X
22
X
23
X
24
X
31
X
32
X
33
X
34

X
12
0 1 0 1 0 1 0 1 -1 0 -1 0 10
X
13
1 0 1 0 0 -1 0 -1 1 0 1 0 25
X
21
1 0 0 0 1 0 0 0 1 0 0 0 45
X
23
-1 0 0 0 0 1 1 1 -1 0 0 0 5
X
32
0 0 0 -1 0 0 0 -1 1 1 1 0 10
X
34
0 0 0 1 0 0 0 1 0 0 0 1 30
-2 0 0 -7 0 -3 0 -2 -5 0 -3 0
X
11:
(el ciclo se indica por celdas sombreadas)
8
B
6
B
10

9
-

+

9
B
12

13
B
7
+ -
14 9
B
16 5
B

X
14:

8
B
6
B
10

9

+

-
9
B
12

13
B
7

14 9
B
16 5
B
- +

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 128 de 214

X
22:

8
B
6
B
10

9

+ -

9
B
12

13
B
7
- +
14 9
B
16 5
B

X
24:

8
B
6
B
10

9

+ -

9
B
12

13
B
7

+ -
14 9
B
16 5
B
- +
X
31:

8
B
6
B
10

9

- +

9
B
12

13
B
7
+
-
14 9
B
16 5
B
-
+
X
33:

8
B
6
B
10

9

- +

9
B
12

13
B
7

14 9
B
16 5
B
+ -
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 129 de 214

3.2.4- PROBLEMAS DE ASIGNACIN.
Es un caso especial del problema de transporte donde cada origen oferta 1 y cada
destino demanda 1, aunque todos los caminos son posibles. Un ejemplo tpico es
asignar a cada mquina una tarea:




Un problema de asignacin balanceado se formula as:
minimizar E E c
ij
x
ij

sujeto a E
j
x
ij
= 1 i
E
i
x
ij
= 1 j
x
ij
0
Deberamos aadir la restriccin de que las x
ij
slo pueden ser 0 1, pero no es
necesario, ya que por la propiedad vista al final del apartado 3.2.3 las soluciones son
enteras si las ofertas y las demandas son enteras (1 es entero).

mquina 1
mquina 2
mquina 3
mquina ...
mquina n
tarea 1
tarea 2
tarea 3
tarea
tarea m
c
ij

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 130 de 214

3.2.4.1.- ALGORITMO HNGARO PARA PROBLEMAS DE
ASIGNACIN.
El Algoritmo Hngaro sirve para resolver problemas de asignacin. Se siguen
los siguientes pasos:
PASO 1: Hacer ceros.
A. Restar a cada fila su mnimo.
B. Restar a cada columna su mnimo.
PASO 2: Encuadrar ceros.
A. En la fila o columna con menor nmero de ceros libres, encuadrar
uno.
B. Tachar los ceros de la fila y columna del cero encuadrado.
C. Repetir los dos pasos anteriores mientras queden ceros libres.
D. Si se ha encuadrado un cero en cada fila y columna se tiene la
asignacin ptima.
PASO 3: Tachar ceros con el menor nmero de lneas.
A. Marcar las filas sin ceros encuadrados.
B. Marcar las columnas con cero tachado en la fila marcada.
C. Marcar las filas con cero encuadrado en columna marcada.
D. Repetir los dos pasos anteriores mientras se realicen nuevas marcas.
E. Sobrerayar las filas no marcadas y las columnas marcadas.
PASO 4: Mover ceros.
A. Calcular el mnimo de los elementos no sobrerayados.
B. Restar dicho mnimo a los elementos no sobrerayados.
C. Sumar dicho mnimo a los elementos sobrerayados dos veces.
D. Repetir desde el paso 2

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 131 de 214

EJEMPLO: Problema de Asignacin mediante el Algoritmo Hngaro:
Supongamos que tenemos una tabla de asignacin con los costes de 5x5 y la
vamos a resolver mediante el Algoritmo Hngaro. Nos damos cuenta de que est
balanceada, si no lo estuviera tendramos que balancearla aadiendo lneas ficticias con
coste cero.
12 7 6 5 10 PASO 1 Hacer ceros
Hay que intentar reducirla para lograr tener un cero en
cada fila y columna, que son las casillas que forman la
base. El algoritmo se basa en la propiedad de que si
sumamos o restamos una cantidad fija a una fila o
columna, el problema no cambia.
8 5 9 6 8
6 13 9 6 10
10 5 8 9 12
11 12 5 6 3

7 2 1 0 5
Restamos a cada fila el mnimo valor de la fila
3 0 4 1 3
0 7 3 0 4
5 0 3 4 7
8 9 2 3 0

7 2 0 0 5
Ahora restamos a cada columna su mnimo, aunque las
columnas que ya contengan un cero no cambian nada.
Un 0 significa que a la mquina i se le asigna la tarea j.
Si elegimos un 0 de una lnea, tachamos los dems ceros, ya
que en la asignacin una mquina slo puede realizar una
tarea.
3 0 3 1 3
0 7 2 0 4
5 0 2 4 7
8 9 1 3 0

7 2 0 0 5
PASO 2 Encuadrar ceros.
Encuadramos un cero de cada fila o columna, empezando
por las que tengan menos ceros libres. El resto de ceros de
esas lneas se tachan.
3 0 3 1 3
0 7 2 0 4
5 0 2 4 7
8 9 1 3 0

*

7 2 0 0 5
PASO 3 Marcar y rayar.
Marcar las filas sin ceros encuadrados.
Marcar las columnas con cero tachado en la fila marcada.
Marcar las filas con cero encuadrado en columna marcada.
Repetir los dos pasos anteriores mientras se realicen nuevas
marcas.
Sobrerayar las filas no marcadas y las columnas marcadas.
3 0 3 1 3 *
0 7 2 0 4
5 0 2 4 7 *
8 9 1 3 0
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 132 de 214


7 3 0 0 5
PASO 4 Mover ceros
Restamos el mnimo valor (en este caso es 1) a los
elementos no subrayados y sumrselo a los que estn en el
centro de dos rayas (regla nemotcnica, el cruce de las dos
rayas parece un signo +). Volvemos al paso 2.
2 0 2 0 2
0 8 2 0 4
4 0 1 3 6
8 10 1 3 0

7 3 0 0 5
PASO 2.
Esta ya es una solucin ptima, pues tenemos un solo cero
encuadrado en cada fila y en cada columna.
2 0 2 0 2
0 8 2 0 4
4 0 1 3 6
8 10 1 3 0

12 7 6 5 10
Para calcular el valor de la funcin objetivo, sumamos las
posiciones encuadradas en la tabla original.
z* = 6 + 6 + 6 + 5 + 3 = 26
8 5 9 6 8
6 13 9 6 10
10 5 8 9 12
11 12 5 6 3
3.2.5- ALGORITMO GENERAL PARA PROBLEMAS DE
PROGRAMACIN LINEAL ENTERA.
Los problemas de programacin lineal entera pueden parecer fciles de resolver,
pero nada est ms lejos de la realidad, ya que son ms complicados que los dems. A
priori, podemos pensar en resolverlos normalmente, y si la solucin obtenida es entera,
ya tenemos la solucin ptima. Esto es as, pero si la solucin obtenida no es entera
tenemos que hacer algo ms. Veamos antes algunas definiciones:
Definicin: Un problema de programacin lineal se dice de
programacin lineal entera si alguna o todas las variables est sujeta a la condicin de
que tome valores enteros.
Definicin: La condicin que obliga a una variable a tomar valores
enteros se denomina condicin de integridad.
Definicin: Un problema de programacin lineal entera se dice puro si
todas las variables deben tomar valores enteros y C, A y B son enteros. Cualquier otro
problema de programacin lineal se dice que es mixto.
Definicin: Dado un problema de programacin lineal entera, el
problema que se obtiene de l eliminando las condiciones de integridad es su
correspondiente Problema Relajado.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 133 de 214

Definicin: La regin factible de un problema de programacin lineal
entera es la interseccin entre la regin factible de su problema relajado y el conjunto de
los nmeros enteros (Z).





Podramos pensar que evaluando los puntos enteros resolveramos el problema,
pero la realidad es que el nmero de puntos a evaluar aumenta exponencialmente con la
dimensin. Tambin podramos intentar resolver el problema relajado y redondear la
solucin a los valores ms cercanos, pero nos podramos encontrar con el caso de una
regin factible ilimitada y con un elevado nmero de puntos a evaluar
Vamos a ver las relaciones que existen entre el problema entero y el relajado:
Problema entero Problema relajado
Infactible

Infactible
Ilimitado
=
Limitado
Solucin ptima
No ilimitado

Solucin ptima
Si el problema entero es infactible, no implica nada en el problema
relajado.
Si el problema relajado es infactible, el problema entero tambin lo es.
Si el problema entero es ilimitado, el problema relajado tambin lo es.
Si el problema relajado es ilimitado, no implica nada en el problema
entero.
Si el problema entero tiene solucin ptima finita, no implica nada en el
problema relajado.
Si el problema relajado tiene solucin ptima finita, el problema entero
no es ilimitado.
Si los dos problemas tienen solucin ptima finita, la solucin del
problema relajado es siempre mejor o igual que la del problema entero.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 134 de 214


Para resolver un problema de programacin lineal entera se usa el Algoritmo de
Ramificacin y Acotacin:
Paso 0: Resolver el problema relajado. Si la solucin verifica la
condicin de integridad, esa es la solucin ptima. En caso contrario se construye el
primer nodo del rbol a partir de la solucin obtenida y se ramifica en dos
subproblemas.
Paso 1: Resolver alguno de los problemas asociados a nodos no
terminales. Si la solucin obtenida verifica la condicin de integridad y es mejor que
todas las anteriores soluciones, la marcamos como la mejor solucin. Si todos los
nodos son terminales, hemos terminado.
Paso 2: Marcar los nodos terminales y ramificar a partir de algn nodo
no terminal. Volver al paso 1.
Definicin: Un nodo terminal es cuando la solucin obtenida verifica la
condicin de integridad, o el problema que nos queda es infactible, o el valor objetivo
de ese nodo es peor que la mejor solucin ya encontrada.
Si no encontramos ningn valor que verifique la condicin de integridad, el
problema es infactible. La solucin ptima ser la mejor de todas las encontradas.
Ser mejor resolver el rbol por ramas o por niveles? Al resolver por niveles
tardamos mucho en encontrar una solucin entera. Si resolvemos por ramas (tambin se
llama por profundidad), llegamos antes a los primeros nodos terminales y podemos
descartar grandes ramas antes de resolverlas por el valor de z. Otro mtodo consistira
en elegir el nodo a resolver en funcin del valor de la funcin objetivo, se elegir el
mejor valor como lmite para la solucin que podemos obtener a partir de l.
Puede ocurrir que una condicin para las variables no sea slo que sean enteras,
sino que sean mltiplo de algn valor (por ejemplo). En ese caso lo que cambia es la
forma de hacer el corte:
Si x
3
debe ser mltiplo de 4 y obtenemos la solucin:


Debemos elegir los mltiplos de 4 que estn por encima y por debajo de 7, que
son x
3
4 y x
3
8.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 135 de 214

EJEMPLO: Algoritmo de ramificacin y acotacin:
maximizar 2x
1
+ x
2

sujeto a 5x
1
+ 8x
2
68
x
1
x
2
2
x
2
6
x
1
, x
2
0 enteros
Primero resolvemos el problema relajado por el mtodo simplex y obtenemos:


Sabemos que la banda de 4 a 5 no contiene a la solucin, ya que sta debe ser
entera, por lo tanto la puedo eliminar. La solucin ptima est en cualquiera de las dos
partes en las que la banda divide a la regin factible. Ahora resolvemos dos problemas
(uno por cada zona de la regin factible) y la solucin ptima ser la mejor de las dos
soluciones. Para resolver cada uno de ellos, le aadimos la restriccin para que quede
por encima o por debajo de la banda.
Problema PR1:
Resolvemos el problema relajado original aadiendo la restriccin x
2
4. La
solucin es:


Vemos que la solucin es entera, por lo tanto es la mejor solucin que podemos
obtener para esta zona. Por esta zona no seguimos buscando mejores soluciones.
Problema PR2:
Resolvemos el problema relajado original aadiendo la restriccin x
2
5.
Sabemos que el mejor valor para z es de 17.38, pero en el problema PR1 se obtuvo un
valor de 16, lo que quiere decir que puede haber una solucin posible entre 16 y 17.38,
debemos seguir buscando. La solucin para este problema es:
5
x*2
4
x*1
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 136 de 214


Debemos seguir buscando, ya que puede haber una solucin que siendo mejor
que 16 puede ser peor que 16.2. Aadimos nuevas restricciones:
Problema PR2.2:
Aadimos la restriccin x
1
6. Obtenemos que el problema es infactible. Este
nodo es terminal.
Problema PR2.1:
Aadimos la restriccin x
1
5. Obtenemos la solucin:


Cualquier otra solucin que se obtenga por este camino ser peor que la solucin
del PR1 (z=16), por lo que este nodo tambin es terminal.
La solucin es el nodo PR1.
Vamos a ver la resolucin del problema en modo rbol:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 137 de 214











PR


PR2
x
2
5


PR2.1
x
1
5
Nodo Terminal.
PR2.2
x
1
6
Infactible.
Nodo Terminal.
5
4
x
1
x
2
5
4
x
1
x
2
5 6


PR1
x
2
4
Solucin entera.
Nodo Terminal.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 138 de 214

EJERCICIO: ( Problema 6.1 de la relacin de problemas propuestos por
el profesor ao 2010-2011)
Una compaa tiene dos plantas de produccin, una en Memphis y otra en
Denver, que producen un mximo de 150 y 200 unidades diarias. Debiendo enviar por
avin 120 unidades a Los ngeles y otras 120 a Boston. La compaa piensa que puede
resultar ms barato enviar los productos va New York y Chicago. Los costos unitarios
son:
A
New York Chicago Los ngeles Boston
D
e
s
d
e

Memphis 8 13 25 28
Denver 15 12 26 25
New York 0 6 14 16
Chicago 6 0 14 16
SOLUCIN:
A Oferta
- New York Chicago Los ngeles Boston
D
e
s
d
e

Memphis 8 13 25 28 150
Denver 15 12 26 25 200
New York 0 6 14 16
Chicago 6 0 14 16

Demanda= 120 120
350
240
Como podemos observar la oferta total no coincide con la demanda total
(120+120150+200), por lo que deberemos crear un destino ficticio de coste 0 con la
diferencia (350-240=110ud.).
Recordemos tambin que al tratarse de un problema de transbordo, a la oferta y
demanda de estos nodos (New York y Chicago) hay que aadirle la oferta y demanda
total. As quedara la tabla:
A
Oferta
-
New
York
Chicago
Los
ngeles
Boston Ficticio
D
e
s
d
e

Memphis 8 13 25 28 0 150
Denver 15 12 26 25 0 200
New York 0 6 14 16 0 0+350
Chicago 6 0 14 16 0 0+350

Demanda= 0+350 0+350 120 120 110
350
350
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 139 de 214

Ya tenemos planteado el problema como uno de transporte. Para la resolucin
del problema utilizaremos el Mtodo de Vogel. Recordemos los pasos a seguir:
Paso 1: Para cada fila y columna se calculan las penalizaciones o costes de
oportunidad, como la diferencia entre los dos costes ms pequeos.
Penalizaciones
Penalizaciones 6-0=6 6-0=6 14-14=0 16-16=0 0-0=0 1
1 N.Y. Ch. L.A. B. F.
8-0=8 M. 8 13 25 28 0
12-0=12 D. 15 12 26 25 0
0-0=0 N.Y. 0 6 14 16 0
0-0=0 Ch. 6 0 14 16 0
Paso 2: Se elige la fila o columna con mayor penalizacin
[max(0,0,12,8,6,6,0,0,0)=12 = Fila 2] y dentro de esa fila o columna, la casilla ms
barata. Se tomara la 2 fila (Detroit) y dentro de esta fila la columna ms barata
[min(5,12,26,25,0)=0] es la Ficticia. Esta casilla (D-F) se hace bsica con valor igual al
mnimo entre la oferta y la demanda [min(110;200)=110]
Penalizaciones
Penalizaciones 6 6 0 0 0 1
1 N.Y. Ch. L.A. B. F.
8 M.
8 13 25 28
0

150


12 D.
15 12 26 25 0 B
200
110

0 N.Y.
0 6 14 16
0

350


0 Ch.
6 0 14 16 0
350

350 350 120 120 110
Paso 3: Tachar (rellenamos de rojo) la fila o columna donde se haya alcanzado
el total de la oferta o demanda.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 140 de 214

Penalizaciones
Penalizaciones 6 6 0 0 0 1
1 N.Y. Ch. L.A. B. F.
8 M.
8 13 25 28
0

150


12 D.
15 12 26 25 0 B
200
110

0 N.Y.
0 6 14 16
0

350


0 Ch.
6 0 14 16 0
350

350 350 120 120 110
Paso 4: Actualizar la oferta y la demanda y volver al paso 1.
Penalizaciones
Penalizaciones 6 6 0 0 0 1
1 N.Y. Ch. L.A. B. F.
8 M.
8 13 25 28
0

150


12 D.
15 12 26 25 0 B
200-
110=
90

110

0 N.Y.
0 6 14 16
0

350


0 Ch.
6 0 14 16 0
350


350 350 120 120
110-
110=
0

Volvemos a realizar todo el proceso. Recordemos que para que la tabla
resultante sea no degenerada, en caso de que la oferta y la demanda coincidan se tacha
solo una de ellas. La actualizacin de la oferta y la demanda s debe realizarse
normalmente. De esta forma la 2 asignacin ser:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 141 de 214

Penalizaciones
6-0=6 6-0=6 14-14=0 16-16=0 --- 2
Penalizaciones 6 6 0 0 0 1
2 1 N.Y. Ch. L.A. B. F.
13-8=5 8 M.
8 13 25 28
0

150

15-12=3 12 D.
15 12 26 25 0 B
1

90
110
6-0=6 0 N.Y.
0 B
2
6 14 16
0
350-350=
0
350
6-0=6 0 Ch.
6 0 14 16 0
350



350-350=
0
350 120 120
0
3 asignacin:
Penalizaciones
--- 6-0=6 14-14=0 16-16=0 3
6 6 0 0 --- 2
Penalizaciones 6 6 0 0 0 1
3 2 1 N.Y. Ch. L.A. B. F.
25-13=12 5 8 M.
8 13 25 28
0

150

25-12=13 3 12 D.
15 12 26 25 0 B
90
110
14-6=8 6 0 N.Y.
0 B
2
6 14 16
0

0
350
14-0=14 6 0 Ch.
6 0 B
3
14 16 0 350-350=
0
350

0
350-350=
0
120 120
0
4 asignacin:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 142 de 214

Penalizaciones
--- --- 14-14=0 16-16=0 --- 4
--- 12 11 9 3
6 6 0 0 --- 2
Penalizaciones 6 6 0 0 0 1
4 3 2 1 N.Y. Ch. L.A. B. F.
28-25=3 12 5 8 M.
8 13 25 B
4
28
0
150-120=
30
120
26-25=1 13 3 12 D.
15 12 26 25 0 B
90
110
16-14=2 --- 6 0 N.Y.
0 B 6 14 16
0

0
350
16-14=2 14 6 0 Ch.
6 0 B 14 16 0
0
350

0 0
120-120=
0
120
0
La ltima columna no necesitamos realizar los clculos de penalizaciones.
Iremos eligiendo de menor a mayor coste.
5 asignacin.
Penalizaciones
--- --- 1 3 --- 4
--- 12 11 9 3
6 6 0 0 --- 2
Penalizaciones 6 6 0 0 0 1
4 3 2 1 N.Y. Ch. L.A. B. F.
3 12 5 8 M.
8 13 25 B
4
28
0

30
120
1 13 3 12 D.
15 12 26 25 0 B
90
110
--- --- 6 0 N.Y.
0 B 6 14 16
0

0
350
--- 14 6 0 Ch.
6 0 B 14 16 B
5
0 0-0=
0
350 0

0 0 0
120-0=
120
0
6 asignacin:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 143 de 214

Penalizaciones
--- --- 1 3 --- 4
--- 12 11 9 3
6 6 0 0 --- 2
Penalizaciones 6 6 0 0 0 1
4 3 2 1 N.Y. Ch. L.A. B. F.
3 12 5 8 M.
8 13 25 B
4
28
0

30
120
1 13 3 12 D.
15 12 26 25 0 B
90
110
--- --- 6 0 N.Y.
0 B 6 14 16 B
6

0
0-0=
0
350 0
--- 14 6 0 Ch.
6 0 B 14 16 B
5
0 0-0=
0
350 0

0 0 0
120-0=
120
0
7 asignacin:
Penalizaciones
--- --- 1 3 --- 4
--- 12 11 9 3
6 6 0 0 --- 2
Penalizaciones 6 6 0 0 0 1
4 3 2 1 N.Y. Ch. L.A. B. F.
3 12 5 8 M.
8 13 25 B
4
28
0

30
120
1 13 3 12 D.
15 12 26 25 B
7
0 B 90-90=
0
90 110
--- --- 6 0 N.Y.
0 B 6 14 16 B
6

0
0-0=
0
350 0
--- 14 6 0 Ch.
6 0 B 14 16 B
5
0 0-0=
0
350 0

0 0 0
120-90=
30
0
Y la ltima asignacin (8):
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 144 de 214

Penalizaciones
--- --- 1 3 --- 4
--- 12 11 9 3
6 6 0 0 --- 2
Penalizaciones 6 6 0 0 0 1
4 3 2 1 N.Y. Ch. L.A. B. F.
3 12 5 8 M.
8 13 25 B
4
28 B
8

0
30-30=
0
120 30
1 13 3 12 D.
15 12 26 25 B
7
0 B 90-90=
0
90 110
--- --- 6 0 N.Y.
0 B 6 14 16 B
6

0
0-0=
0
350 0
--- 14 6 0 Ch.
6 0 B 14 16 B
5
0 0-0=
0
350 0

0 0 0
30-30=
0
0
Quedando as la tabla:
Destinos
N.Y. Ch. L.A. B. F.
O
r

g
e
n
e
s

M.
8 13 25 B
4
28 B
8

0

150
120 30
D.
15 12 26 25 B
7
0 B
1

200
90 110
N.Y.
0 B
2
6 14 16 B
6

0

0
350 0
Ch.
6 0 B
3
14 16 B
5
0
0
350 0
0 0 120 120 110
Comprobamos que la solucin sea NO degenerada:
Nmero de casillas bsicas: 8
Restricciones -1=m+n-1=5+4-1=8
Luego al coincidir los dos valores la solucin es NO degenerada.
El siguiente paso ser realizar el Test de Optimalidad:
Calcular los u
i
y los v
j
, que son las soluciones del sistema de ecuaciones.
Primero asignamos un valor arbitrario a cualquiera de ellas (por ejemplo
u
1
=0). Esto lo hacemos para las variables o casillas bsicas B:


Para las casillas no bsicas, calcular la frmula:


Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 145 de 214

Test propiamente dicho, se realiza para las casillas no bsicas, que
deben ser todas menor o igual que cero para que la tabla se ptima:


Destinos
N.Y. Ch. L.A. B. F.
O
r

g
e
n
e
s

M.
8 13 25 B
4
28 B
8

0

u
1
=0
120 30
D.
15 12 26 25 B
7
0 B
1

u
2

90 110
N.Y.
0 B
2
6 14 16 B
6

0

u
3

350 0
Ch.
6 0 B
3
14 16 B
5
0
u
4

350 0
v
1
v
2
v
3
v
4
v
5


Calculamos u
i
, v
j
de las casillas bsicas.
Ojo: c
ij
i:fila ; j:columna
u
1
=0
u
1
+ v
3
= c
13
= 0 + v
3
= 25 = v
3
= 25
u
1
+ v
4
= c
14
= 0 + v
4
= 28 = v
4
= 28
u
2
+ v
4
= c
24
= u
2
+ 28 = 25 = u
2
= -3
u
2
+ v
5
= c
25
= -3 + v
5
= 0 = v
5
= 3
u
3
+ v
4
= c
34
= u
3
+ 28 = 16 = u
3
= -12
u
3
+ v
1
= c
31
= -12 + v
1
= 0 = v
1
= 12
u
4
+ v
4
= c
44
= u
4
+ 28= 16 = u
4
= -12
u
4
+ v
2
= c
42
= -12 + v
2
= 0 = v
2
= 12

Casillas no bsicas = u
i
+ v
j
c
ij

x
11
= u
1
+ v
1
c
11
= 0+12-8 = 4
x
12
= u
1
+ v
2
c
12
= 0+12-13 =-1
x
15
= u
1
+ v
5
c
15
= 0+3-0 =3
x
21
= u
2
+ v
1
c
21
=-3+12-15 = -6
x
22
= u
2
+ v
2
c
22
=-3+12-12 = -3
x
23
= u
2
+ v
3
c
23
=-3+25-26 = -4

x
32
= u
3
+ v
2
c
32
= -12+12-6 = -6
x
33
= u
3
+ v
3
c
33
= -12+25-14 = -1
x
35
= u
3
+ v
5
c
35
= -12+3-0 = -9
x
41
= u
4
+ v
1
c
41
= -12+12-6= -6
x
43
= u
4
+ v
3
c
43
= -12+25-14 = -1
x
45
= u
4
+ v
5
c
45
= -12+3-0 = -9

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 146 de 214

Como existen casillas no bsicas > 0 (x
11
; x
15
) la solucin no es ptima.
Como no se cumple el test de optimalidad hay que hacer otra iteracin:
Seleccionar como variable de entrada la variable no bsica que menos
verifique la condicin de optimalidad, es decir, la que tenga mayor
valor de u
i
+ v
j
c
ij
entre las positivas. En nuestro caso x
11
(casilla
remarcada)
Encontrar el ciclo que forma la casilla que entra, con otras casillas
bsicas. En nuestro caso hemos marcamos el ciclo con lnea discontinua.
Marcar con los signos + y alternativamente las casillas del ciclo
encontrado, empezando por + en la casilla de entrada.
N.Y. Ch. L.A. B. F.
M.
8 13 25 B 28 B
0

u
1
=0
+ 120 30 -
D.
15 12 26 25 B 0 B
u
2

90 110 -
N.Y.
0 B 6 14 16 B
0

u
3

350 - 0 +
Ch.
6 0 B 14 16 B 0
u
4

350 0
v
1
v
2
v
3
v
4
v
5


Calculamos t (tau), como el mnimo de los valores de las casillas con
signo en el ciclo [min(350;30)=30], lo restamos a las casillas con
signo y lo sumamos a las casillas con signo +.
Marcar como bsica a la casilla que entra B y desmarcar como bsica
la casilla del ciclo que haya quedado con valor nulo.
N.Y. Ch. L.A. B. F.
M.
8 B 13 25 B 28
0

u
1
=0 30+0=
30
+ 120
30-30=
0
-

D.
15 12 26 25 B 0 B
u
2

90 110 -
N.Y.
0 B 6 14 16 B
0

u
3
350-30=
320
-
0+30=
30
+

Ch.
6 0 B 14 16 B 0
u
4

350 0
v
1
v
2
v
3
v
4
v
5



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 147 de 214

Volvemos a calcular las casillas u,v:
u
1
=0
Calculamos u
i
, v
j
de las casillas bsicas.
u
1
+ v
1
= c
11
= 0 + v
1
= 8 = v
1
= 8
u
1
+ v
3
= c
13
= 0 + v
3
= 25 = v
3
= 25
u
3
+ v
1
= c
31
= u
3
+ 8 = 0 = u
3
= -8
u
3
+ v
4
= c
34
= -8 + v
4
= 16 = v
4
= 24
u
2
+ v
4
= c
24
= u
2
+ 24 = 25 = u
2
= 1
u
2
+ v
5
= c
25
= 1 + v
5
= 0 = v
5
= -1
u
4
+ v
4
= c
44
= u
4
+ 24= 16 = u
4
= -8
u
4
+ v
2
= c
42
= -8 + v
2
= 0 = v
2
= 8

Casillas no bsicas = u
i
+ v
j
c
ij

x
12
= u
1
+ v
2
c
12
= 0+8-13 = -5
x
14
= u
1
+ v
4
c
14
= 0+24-28 = -4
x
15
= u
1
+ v
5
c
15
= 0-1-0 = -1
x
21
= u
2
+ v
1
c
21
= 1+8-15 = -6
x
22
= u
2
+ v
2
c
22
= 1+8-12 = -3
x
23
= u
2
+ v
3
c
23
= 1+25-26 = 0
x
32
= u
3
+ v
2
c
32
= -8+8-6 = -6
x
33
= u
3
+ v
3
c
33
= -8+25-14 = 3
x
35
= u
3
+ v
5
c
35
= -8-1-0 = -9
x
41
= u
4
+ v
1
c
41
= -8+8-6= -6
x
43
= u
4
+ v
3
c
43
= -8+25-14 = 3
x
45
= u
4
+ v
5
c
45
= -8-1-0 = -9

Como existen casillas no bsica >0 (x
33
; x
43
la solucin no es ptima. Esa decir
como no se cumple el test de optimalidad hay que hacer otra iteracin. Entra 3-3 y sale
1-3:
N.Y. Ch. L.A. B. F.
M.
8 B 13 25 B 28
0
u
1
=0
30+120=
150
+
120-120=
0
-




D.
15 12 26 25 B 0 B u
2

90 110
N.Y.
0 B 6 14 16 B
0
u
3

320+120=
200
- 120 + 30


Ch.
6 0 B 14 16 B 0 u
4

350 0
v
1
v
2
v
3
v
4
v
5

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 148 de 214

Quedando la tabla as:
N.Y. Ch. L.A. B. F.
M.
8 B 13 25 28
0

u
1
=0
150



D.
15 12 26 25 B 0 B
u
2

90 110
N.Y.
0 B 6 14 B 16 B
0

u
3

200 120 30
Ch.
6 0 B 14 16 B 0
u
4

350 0
v
1
v
2
v
3
v
4
v
5


Volvemos a calcular las casillas u,v:
u
1
=0
Calculamos u
i
, v
j
de las casillas bsicas.
u
1
+ v
1
= c
11
= 0 + v
1
= 8 = v
1
= 8
u
3
+ v
1
= c
31
= u
3
+ 8 = 0 = u
3
= -8
u
3
+ v
3
= c
33
= -8 + v
3
= 14 = v
3
= 22
u
3
+ v
4
= c
34
= -8 + v
4
= 16 = v
4
= 24
u
2
+ v
4
= c
24
= u
2
+ 24 = 25 = u
2
= 1
u
2
+ v
5
= c
25
= 1 + v
5
= 0 = v
5
= -1
u
4
+ v
4
= c
44
= u
4
+ 24= 16 = u
4
= -8
u
4
+ v
2
= c
42
= -8 + v
2
= 0 = v
2
= 8

Casillas no bsicas = u
i
+ v
j
c
ij

x
12
= u
1
+ v
2
c
12
= 0+8-13 = -5
x
13
= u
1
+ v
3
c
13
= 0+22-25 = -3
x
14
= u
1
+ v
4
c
14
= 0+24-28 = -4
x
15
= u
1
+ v
5
c
15
= 0-1-0 = -1
x
21
= u
2
+ v
1
c
21
= 1+8-15 = -6
x
22
= u
2
+ v
2
c
22
= 1+8-12 = -3
x
23
= u
2
+ v
3
c
23
= 1+22-26 = -3
x
32
= u
3
+ v
2
c
32
= -8+8-6 = -6
x
35
= u
3
+ v
5
c
35
= -8-1-0 = -9
x
41
= u
4
+ v
1
c
41
= -8+8-6= -6
x
43
= u
4
+ v
3
c
43
= -8+22-14 =0
x
45
= u
4
+ v
5
c
45
= -8-1-0 = -9
Volvemos a realizar el test: para las casillas no bsicas, que deben ser todas
menor o igual que cero para que la tabla se ptima:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 149 de 214


Como se verifica el test la tabla es ptima.
Es decir la combinacin optima de transporte seria, omitiendo los nudos ficticios
y las casillas bsicas con valor 0:
Memphis = New York 150
Denver = Boston 90
New York = Boston 30
New York = Los ngeles 120
Podemos verificar que las demandas solicitadas se han cumplido, pues se han
enviado 120ud. a Los ngeles y 120ud. a Boston.
El coste total asociado a esta solucin es
unidades trasportadas x coste asociado:
(150ud.x8um)+(90ud.x25um) +(30ud.x16um) +(120ud.x14um)=5.610um.
Podemos verificar el resultado mediante LP-Solve. Solamente tendremos que
tener en cuenta que no es necesario aadir los nodos ficticios, pero si ser necesario
aadir a los nodos de transbordo (NY y Ch) el total de la demanda y la oferta (350)
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 150 de 214



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 151 de 214

Los resultados:


EJERCICIO: (Problema 6.2 de la relacin de problemas propuestos por
el profesor ao 2010-2011). El ordenador de una empresa puede guardar
200 ficheros en disco, 100 ficheros en memoria y 300 en cinta. Los
usuarios desean guardar 300 ficheros de texto, 100 ficheros de programas
y 100 ficheros de datos. Cada mes un fichero de texto se accede 8 veces,
un fichero de programa 4 y un fichero de datos 2 veces. Encontrar la
distribucin de los ficheros que minimiza el tiempo de acceso, donde los
tiempos de acceso vienen dados por:

Tiempos
Texto Programa Datos
Disco duro 5 4 4
Memoria 2 1 1
Cinta 10 8 6

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 152 de 214

SOLUCIN:
En primer lugar trazaremos la tabla con los costes totales:

Tiempos
Texto Programa Datos
Oferta/
Capacidad
Disco duro 5x8=40 4x4=16 4x2=8 200
Memoria 2x8=16 1x4=4 1x2=2 100
Cinta 10x8=80 8x4=32 6x2=12 300
Demanda 300 100 100
600
500
Como no coincide la oferta total con la demanda total, deberemos crear un
origen ficticio con la diferencia (600-500=100) y con costes 0:

Tiempos
Texto Programa Datos Ficticio
Oferta/
Capacidad
Disco duro 40 16 8 0 200
Memoria 16 4 2 0 100
Cinta 80 32 12 0 300
Demanda 300 100 100 100
600
600
Para la resolucin del problema utilizaremos el Mtodo de Vogel. Recordemos
los pasos a seguir:
Paso 1: Para cada fila y columna se calculan las penalizaciones o costes de
oportunidad como la diferencia entre los dos costes ms pequeos.
Paso 2: Se elige la fila o columna con mayor penalizacin y dentro de esa fila o
columna, la casilla ms barata. Esta casilla se hace bsica con valor igual al mnimo
entre la oferta y la demanda.
Paso 3: Tachar la fila o columna donde se haya alcanzado el mnimo.
Paso 4: Actualizar la oferta y la demanda y volver al paso 1.
NOTA: Recordemos que para que la tabla resultante sea no degenerada, en caso
de que la oferta y la demanda coincidan se tacha solo una de ellas. La actualizacin de
la oferta y la demanda s debe realizarse normalmente
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 153 de 214

Penalizaciones
40-16=24 16-4=12 8-2=6 0-0=0
P
e
n
a
l
i
z
a
c
i
o
n
e
s

8-0=8
40 16 8 0
200

2-0=2
16 B
1
4 2 0 100-100=
0
100
12-0=12
80 32 12 0
300

300-100=
200
100 100 100
600
600
2 asignacin:
Penalizaciones
80-40=40 32-16=16 12-8=4 0-0=0
24 12 6 0
P
e
n
a
l
i
z
a
c
i
o
n
e
s

8-0=8 8
40 B
2
16 8 0 200-200=
0
200
--- 2
16 B
1
4 2 0
0
100
12-0=12 12
80 32 12 0
300

200-200=
0
100 100 100
600
600
3 asignacin:
Penalizaciones
--- 32-16=16 12-8=4 0-0=0
40 16 4 0
24 12 6 0
P
e
n
a
l
i
z
a
c
i
o
n
e
s

8-0=8 8 8
40 B
2
16 B
3
8 0 0-0=
0
200 0
--- --- 2
16 B
1
4 2 0
0
100
12-0=12 12 12
80 32 12 0
300


0
100-0=
100
100

100
600
600
4 asignacin:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 154 de 214


Penalizaciones
--- 32 12-8=4 0-0=0
--- 16 4 0
40 16 4 0
24 12 6 0
P
e
n
a
l
i
z
a
c
i
o
n
e
s

8-0=8 8 8 8
40 B
2
16 B
3
8 0
0
200 0
--- --- --- 2
16 B
1
4 2 0
0
100
12-0=12 12 12 12
80 32 B
4
12 0 300-100=
200
100

0
100-100=
0
100 100
600
600
5 Asignacin:
Penalizaciones
--- --- 12-8=4 0-0=0
--- 32 4 0
--- 16 4 0
40 16 4 0
24 12 6 0
P
e
n
a
l
i
z
a
c
i
o
n
e
s

8-0=8 8 8 8 8
40 B
2
16 B
3
8 0
0
200 0
--- --- --- --- 2
16 B
1
4 2 0
0
100
12-0=12 12 12 12 12
80 32 B
4
12 0 B
5
200-100=
100
100 100

0 0 100
100-100=
0
600
600
6 Asignacin:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 155 de 214


Penalizaciones
--- --- 12-8=4 ---
--- --- 4 0
--- 32 4 0
--- 16 4 0
40 16 4 0
24 12 6 0
P
e
n
a
l
i
z
a
c
i
o
n
e
s

8 8 8 8 8 8
40 B
2
16 B
3
8 0
0
200 0
--- --- --- --- --- 2
16 B
1
4 2 0
0
100
12 12 12 12 12 12
80 32 B
4
12 B
6
0 B
5
100-100=
0
100 100 100

0 0
100-100=
0
0
600
600

Comprobamos que la solucin sea NO degenerada:
Hemos alcanzado una solucin bsica inicial compuesta de 6 variables bsicas.
m+n-1=4+3-1=6 luego la solucin es NO degenerada.
El siguiente paso ser realizar el Test de Optimalidad:
Calcular los u
i
y los v
j
, que son las soluciones del sistema de ecuaciones.
Primero asignamos un valor arbitrario a cualquiera de ellas (por ejemplo
u
1
=0). Esto lo hacemos para las variables o casillas bsicas B:


Para las casillas no bsicas, calcular la frmula:


Test propiamente dicho, se realiza para las casillas no bsicas, que
deben ser todas menor o igual que cero para que la tabla se ptima:


40 B
2
16 B
3
8 0
200 0
16 B
1
4 2 0
100
80 32 B
4
12 B
6
0 B
5

100 100 100

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 156 de 214

Calculamos u
i
, v
j
de las casillas bsicas.
Ojo: c
ij
i:fila ; j:columna
u
1
=0
u
1
+ v
1
= c
11
= 0 + v
1
= 40 = v
1
= 40
u
1
+ v
2
= c
12
= 0 + v
2
= 16 = v
2
= 16
u
2
+ v
1
= c
21
= u
2
+ 40 = 16 = u
2
= -24
u
3
+ v
2
= c
32
= u
3
+ 16 = 32 = u
3
= 16
u
3
+ v
3
= c
33
= 16 + v
3
= 12 = v
3
= -4
u
3
+ v
4
= c
34
= 16 + v
4
= 0 = v
4
= -16

Casillas no bsicas = u
i
+ v
j
c
ij

x
13
= u
1
+ v
3
c
13
= 0-4-8 = -12
x
14
= u
1
+ v
4
c
14
= 0-16-0 = -16
x
22
= u
2
+ v
2
c
22
= -24+16-4 = -12
x
23
= u
2
+ v
3
c
23
= -24-4-2 = -30
x
24
= u
2
+ v
4
c
24
= -24-16-0 = -40

x
31
= u
3
+ v
1
c
31
=16+40-80 = -24

Como todas las casillas no bsicas son 0 la tabla es ptima:
Texto Programa Datos Ficticio Ofertas
Disco duro
40
B
16
B
200
200 0
Memoria
16
B
100
100
Cinta

32
B
12
B
0
B
300
100 100 100
Demanda 300 100 100 100
600
600
Es decir la solucin ser:
- Guardar 200 ficheros de texto en los discos duros.
- Guardar 100 ficheros de texto en la memoria.
- Guardar 100 programas en las cintas.
- Guardar 100 ficheros de datos en las cintas.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 157 de 214

Resolucin mediante LPSolve IDE:

Los resultados:

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 158 de 214

EJERCICIO: (8.54. De la relacin de problemas
propuestos por el profesor ao 2010-2011). La empresa Backa,S.A est
planificando su nuevo sistema diario de copias de seguridad. La siguiente
tabla muestra: la cantidad de informacin a transferir desde cada nodo, la
capacidad mxima de cada ordenador de reserva y el tiempo por Gbs.
necesarios para la transferencia.
Destino
Nodo D1 D2 D3 Gb.
N1 10 5 10 30
N2 2 5 10 23
N3 4 5 3 15
Capacidad 32 25 29
a) Cul es la poltica optima de transferencia?
b) Debido a una sobrecarga en la red local del nodo N3 los tiempos de
trasferencia desde dicho nodo se han duplicado. Cmo afecta esto a la
planificacin?
c) La empresa encargada del desarrollo del software estima no viable la
divisin de las copias de seguridad, debiendo asignarse un nico servidor
de copia para cada nodo. Cul deber ser dicha asignacin?
d) Qu incremento en los tiempos totales se produce al adoptar la
estrategia de copias indivisas?
SOLUCIN:
En primer lugar comprobaremos que la tabla est balanceada:
Capacidad mxima: 32+25+29=86Gb.
Cantidad a transferir: 30+23+15=68Gb.
Como la cantidad de informacin a transferir es inferior a la capacidad mxima,
debemos equilibrar la tabla. Para ello creamos un nodo ficticio con una cantidad de
informacin que ser la diferencia entre las capacidades y las necesidades (86-
68=18Gb.) y un tiempo 0. La nueva tabla quedar as:
Destino
Nodo D1 D2 D3 Gb.
N1 10 5 10 30
N2 2 5 10 23
N3 4 5 3 15
Nficticio 0 0 0 18
Capacidad 32 25 29
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 159 de 214

Para la resolucin del problema utilizaremos el Mtodo de Vogel. Recordemos
los pasos a seguir:
Paso 1: Para cada fila y columna se calculan las penalizaciones o costes de
oportunidad como la diferencia entre los dos costes ms pequeos.
Paso 2: Se elige la fila o columna con mayor penalizacin y dentro de esa fila o
columna, la casilla ms barata. Esta casilla se hace bsica con valor igual al mnimo
entre la oferta y la demanda.
Paso 3: Tachar la fila o columna donde se haya alcanzado el mnimo.
Paso 4: Actualizar la oferta y la demanda y volver al paso 1.
Penalizaciones
Penalizaciones 2-0=2 5-0=5 3-0=3 Gb.
10-5=5 10 5 10 30
5-2=3 2 5 10 23
4-3=1 4 5 3 15
0-0=0 0 0 0 18
Capacidad 32 25 29
La fila o columna con mayor penalizacin son fila 1 y columna 2 (5). De esas
dos elegimos la que tenga un coste menor. En este caso la columna 2 tiene una casilla
con coste 0 (fila 4). Luego la 1 celda a asignar es la columna 2-fila 4. Le asignamos
el mnimo entre la oferta y la demanda [min (25;18)=18]. Luego podemos tachar la fila
3. Volvemos a calcular las penalizaciones:
Penalizaciones
4-2=2 5-5=0 10-3=7
Penalizaciones 2-0=2 5-0=5 3-0=3 Gb.
10-5=5 10-5=5
10 5 10
30

5-2=3 5-2=3
2 5 10
23

4-3=1 4-3=1
4 5 3
15

--- 0-0=0
0 0 0
18-18=0
18
Capacidad 32 25-18=7 29
La columna con mayor penalizacin es la 3 [max(5;3;1;2;0;7)=7] y dentro de
ella la celda con menor coste es la 3 fila [min(10;10;3)=3]. Luego la 2 asignacin ser:
columna 3-fila 3. Le asignamos el mnimo entre la oferta y la demanda [min
(15;29)=15]. Tachamos la fila 3 que se ha quedado a 0. Volvemos a calcular las
penalizaciones:
Penalizaciones
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 160 de 214

10-2=8 5-5=0 10-10=0
4-2=2 5-5=0 10-3=7
Penalizaciones 2-0=2 5-0=5 3-0=3 Gb.
10-5=5 10-5=5 10-5=5
10 5 10
30

5-2=3 5-2=3 5-2=3
2 5 10
23

--- 4-3=1 4-3=1
4 5 3 B
15-15=0
15
--- --- 0-0=0
0 0 B 0
0
18
Capacidad 32 7 29-15=14
La siguiente asignacin ser en la celda: columna 1-fila 2. Pues tiene la mayor
penalizacin y el menor coste. Asignamos el mnimo entre oferta y demanda
[min(23;32)=23] Tachamos la 2 fila. Volvemos a calcular penalizaciones:
Penalizaciones
10 5 10
10-2=8 5-5=0 10-10=0
4-2=2 5-5=0 10-3=7
Penalizaciones 2-0=2 5-0=5 3-0=3 Gb.
10-5=5 10-5=5 10-5=5 10-5=5
10 5 10
30

--- 5-2=3 5-2=3 5-2=3
2 B 5 10
23-23=23
23
--- --- 4-3=1 4-3=1
4 5 3 B
15-15=0
15
--- --- --- 0-0=0
0 0 B 0
0
18
Capacidad 32-23=9 7 14
Ya en realidad solo nos queda una fila (1). Luego iremos asignando de menor a
mayor coste. 1 la 2 fila, el minimo entre 7 y 30.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 161 de 214

Penalizaciones
10 5 10
10-2=8 5-5=0 10-10=0
4-2=2 5-5=0 10-3=7
Penalizaciones 2-0=2 5-0=5 3-0=3 Gb.
10-5=5 10-5=5 10-5=5 10-5=5
10 5 10
30-7=23
7
--- 5-2=3 5-2=3 5-2=3
2 B 5 10
23-23=23
23
--- --- 4-3=1 4-3=1
4 5 3 B
15-15=0
15
--- --- --- 0-0=0
0 0 B 0
0
18
Capacidad 9 7-7=0 14
La siguiente asignacin podran ser la 1 o la 3 columna pues ambos tiene el
mismo cote (10). Elegimos al azar la 3 columna:
Penalizaciones
10 5 10
10-2=8 5-5=0 10-10=0
4-2=2 5-5=0 10-3=7
Penalizaciones 2-0=2 5-0=5 3-0=3 Gb.
10-5=5 10-5=5 10-5=5 10-5=5
10 5 10
23-14=9
7 14
--- 5-2=3 5-2=3 5-2=3
2 B 5 10
23-23=23
23
--- --- 4-3=1 4-3=1
4 5 3 B
15-15=0
15
--- --- --- 0-0=0
0 0 B 0
0
18
Capacidad 9 0 14-14=0
La ultima asignacin:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 162 de 214

Penalizaciones
10 5 10
10-2=8 5-5=0 10-10=0
4-2=2 5-5=0 10-3=7
Penalizaciones 2-0=2 5-0=5 3-0=3 Gb.
10-5=5 10-5=5 10-5=5 10-5=5
10 B 5 10 B
9-9=0
9 7 14
--- 5-2=3 5-2=3 5-2=3
2 B 5 10
23-23=23
23
--- --- 4-3=1 4-3=1
4 5 3 B
15-15=0
15
--- --- --- 0-0=0
0 0 B 0
0
18
Capacidad 9-9=0 0 14-14=0
Es decir la tabla obtenida es:
Destino
Nodos D1 D2 D3 Gb.
N1
10 B 5 B 10 B
30
9 7 14
N2
2 B 5 10
15
23
N3
4 5 3 B
30
15
Nficticio
0 0 B 0
15
18
Capacidad 32 25 29
Comprobamos que la solucin sea NO degenerada:
Nmero de casillas bsicas: 6
Restricciones -1=m+n-1=4+3-1=6
Luego la solucin es no degenerada.
El siguiente paso ser realizar el Test de Optimalidad:
Calcular los u
i
y los v
j
, que son las soluciones del sistema de ecuaciones.
Primero asignamos un valor arbitrario a cualquiera de ellas (por ejemplo
u
1
=0). Esto lo hacemos para las variables o casillas bsicas B:


Para las casillas no bsicas, calcular la frmula:


Test propiamente dicho, se realiza para las casillas no bsicas, que
deben ser todas menor o igual que cero para que la tabla se ptima:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 163 de 214


Destino
Nodos D1 D2 D3
N1
10 B 5 B 10 B
u
1=0

9 7 14
N2
2 B 5 10
u
2

23
N3
4 5 3 B
u
3

15
Nficticio
0 0 B 0
u
4

18
v
1
v
2
v
3

Calculamos u
i
, v
j
de las casillas bsicas.
Ojo: c
ij
i:fila ; j:columna
u
1
=0
u
1
+ v
1
= c
11
= 0 + v
1
= 10 = v
1
= 10
u
1
+ v
2
= c
12
= 0 + v
2
= 5 = v
2
= 5
u
1
+ v
3
= c
13
= 0 + v
3
= 10 = v
3
= 10
u
2
+ v
1
= c
21
= u
2
+ 10 = 2 = u
2
= -8
u
3
+ v
3
= c
33
= u
3
+ 10 = 3 = u
3
= -7
u
4
+ v
2
= c
42
= u
4
+ 5 = 0 = u
4
= -5

Casillas no bsicas = u
i
+ v
j
c
ij

x
22
= u
2
+ v
2
c
22
= -8 + 5 5 = -8
x
23
= u
2
+ v
3
c
23
= -8 + 10 10 = -8

x
31
= u
3
+ v
1
c
31
= -7 + 10 4 = -1
x
32
= u
3
+ v
2
c
32
= -7 + 5 5 = -7
x
41
= u
4
+ v
1
c
41
= -5 + 10 0 = 5
x
43
= u
4
+ v
3
c
43
= -5 + 10 0 = 5
Como existen casillas no bsicas 0 (x
41
; x
43
) la solucin no es ptima.
Como no se cumple el test de optimalidad hay que hacer otra iteracin:
Seleccionar como variable de entrada la variable no bsica que menos
verifique la condicin de optimalidad, es decir, la que tenga mayor
valor de u
i
+ v
j
c
ij
entre las positivas. En nuestro caso los dos son
iguales. Elegimos arbitrariamente x
43

Encontrar el ciclo que forma la casilla que entra, con otras casillas
bsicas. En nuestro caso hemos marcamos el ciclo con lnea discontinua.
Marcar con los signos + y alternativamente las casillas del ciclo
encontrado, empezando por + en la casilla de entrada.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 164 de 214

Calculamos t (tau) como el mnimo de los valores de las casillas con
signo en el ciclo [min(18;14)=14], lo restamos a las casillas con
signo y lo sumamos a las casillas con signo +. Excepto para la
casilla que entra.
Marcar como bsica a la casilla que entra B y desmarcar como bsica
la casilla del ciclo que haya quedado con valor nulo.

Destino
Nodos D1 D2 D3
N1
10 B 5 B 10 B
u
1=
0
9 7 + 14 -
N2
2 B 5 10
u
2=
-8
23 -8 -8
N3
4 5 3 B
u
3=
-7
-1 -7 15
Nficticio
0 0 B 0
u
4=
-5
5 18 - 5 +
v
1=
10 v
2
=5 v
3
=10
La nueva tabla sera:
Destino
Nodos D1 D2 D3
N1
10 B 5 B 10
u
1=
0
9 14+7=21 + 14-14=0 -
N2
2 B 5 10
u
2=
-8
23 -8 -8
N3
4 5 3 B
u
3=
-7
-1 -7 15
Nficticio
0 0 B 0 B
u
4=
-5
5 18-14=4 - 5 +
v
1=
10 v
2
=5 v
3
=10
Volvemos a calcular los valores u y v:
Calculamos u
i
, v
j
de las casillas bsicas.
u
1
=0
u
1
+ v
1
= c
11
= 0 + v
1
= 10 = v
1
= 10
u
1
+ v
2
= c
12
= 0 + v
2
= 5 = v
2
= 5
u
2
+ v
1
= c
21
= u
2
+ 10 = 2 = u
2
= -8
u
4
+ v
2
= c
42
= u
4
+ 5 = 0 = u
4
= -5
u
4
+ v
3
= c
43
= -5 + v
3
= 0 = v
3
= 5
u
3
+ v
3
= c
33
= u
3
+ 5 = 3 = u
3
= -2

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 165 de 214

Casillas no bsicas = u
i
+ v
j
c
ij

x
13
= u
1
+ v
3
c
13
= 0 + 5 10 = -5
x
22
= u
2
+ v
2
c
22
= -8 + 5 5 = -8

x
23
= u
2
+ v
3
c
23
= -8 + 5 10 = -13

x
31
= u
3
+ v
1
c
31
= -2 + 10 4 = 4
x
32
= u
3
+ v
2
c
32
= -2 + 5 5 = -2
x
41
= u
4
+ v
1
c
41
= -5 + 10 0 = 5
Como an existen casillas no bsicas 0 (x
31
; x
41
) la solucin no es ptima.
Como no se cumple el test de optimalidad hay que hacer otra iteracin:
Seleccionar como variable de entrada la variable no bsica que menos
verifique la condicin de optimalidad, es decir, la que tenga mayor
valor de u
i
+ v
j
c
ij
entre las positivas. En nuestro caso x
41(
x
41
> x
31
)
Encontrar el ciclo que forma la casilla que entra, con otras casillas
bsicas. En nuestro caso hemos marcamos el ciclo con lnea discontinua.
Marcar con los signos + y alternativamente las casillas del ciclo
encontrado, empezando por + en la casilla de entrada.
Calculamos t (tau) como el mnimo de los valores de las casillas con
signo en el ciclo [min(9;4)=4], lo restamos a las casillas con signo
y lo sumamos a las casillas con signo +. Excepto para la casilla que
entra.
Marcar como bsica a la casilla que entra B y desmarcar como bsica
la casilla del ciclo que haya quedado con valor nulo.
Destino
Nodos D1 D2 D3
N1
10 B 5 B 10
u
1=
0
9-4=5 - 21+4=25 + 14-14=0
N2
2 B 5 10
u
2=
-8
23 -8 -8
N3
4 5 3 B
u
3=
-2
-1 -7 15
Nficticio
0 B 0 0 B
u
4=
-5
5 + 4-4=0 - 5
v
1=
10 v
2
=5 v
3
=5
Volvemos a calcular los valores u y v:
Calculamos u
i
, v
j
de las casillas bsicas.
u
1
=0
u
1
+ v
1
= c
11
= 0 + v
1
= 10 = v
1
= 10
u
1
+ v
2
= c
12
= 0 + v
2
= 5 = v
2
= 5
u
2
+ v
1
= c
21
= u
2
+ 10 = 2 = u
2
= -8
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 166 de 214

u
4
+ v
1
= c
41
= u
4
+ 10 = 0 = u
4
= -10
u
4
+ v
3
= c
43
= -10 + v
3
= 0 = v
3
= 10
u
3
+ v
3
= c
33
= u
3
+ 10 = 3 = u
3
= -7
Casillas no bsicas = u
i
+ v
j
c
ij

x
13
= u
1
+ v
3
c
13
= 0 + 10 10 = 0
x
22
= u
2
+ v
2
c
22
= -8 + 5 5 = -8

x
23
= u
2
+ v
3
c
23
= -8 + 10 10 = -8

x
31
= u
3
+ v
1
c
31
= -7 + 10 4 = -1
x
32
= u
3
+ v
2
c
32
= -7 + 5 5 = -7
x
42
= u
4
+ v
2
c
42
= -10 + 5 0 = -5
Comprobamos que:


Ya si todos los valores no bsicos son menores o iguales a 0. Luego la solucin
es ptima:
Destinos
Nodos D1 D2 D3
N1
10 B 5 B 10
5 25
N2
2 B 5 10
23
N3
4 5 3 B
15
Nficticio
0 B 0 0 B
5 5
La poltica ptima de transferencia sera:
5Gb. Desde N1 a D1
25Gb. Desde N1 a D2
23Gb. Desde N2 a D1
15Gb. Desde N3 a D3
Obviamos los nodos ficticios.
El tiempo mnimo necesario ser: 5x10+25x5+23x2+15x3=266
Verificamos que el total transferido coincide con las demandas necesarias:
5+25+23+15=30+23+15=68

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 167 de 214

Apartado b)
Volvemos a mostrar la tabla ptima calculada anteriormente:
Destino
Nodos D1 D2 D3
N1
10 B 5 B 10
u
1=
0
5 25 0
N2
2 B 5 10
u
2=
-8
23 -8 -8
N3
4 5 3 B
u
3=
-7
-1 -7 15
Nficticio
0 B 0 0 B
u
4=
-10
5 0 5
v
1=
10 v
2
=5 v
3
=5
Calculamos los nuevos valores u y v despus del cambio de costes:
Destino
Nodos D1 D2 D3
N1
10 B 5 B 10
u
1=
0
5 25 0
N2
2 B 5 10
u
2=
-8
23 -8 -8
N3
4x2=8 5x2=10 3x2=6 B
u
3=
-4
-1 -7 15
Nficticio
0 B 0 0 B
u
4=
-10
5 0 5
v
1=
10 v
2
=5 v
3
=5
Calculamos u
i
, v
j
de las casillas bsicas.
u
1
=0
u
1
+ v
1
= c
11
= 0 + v
1
= 10 = v
1
= 10
u
1
+ v
2
= c
12
= 0 + v
2
= 5 = v
2
= 5
u
2
+ v
1
= c
21
= u
2
+ 10 = 2 = u
2
= -8
u
4
+ v
1
= c
41
= u
4
+ 10 = 0 = u
4
= -10
u
4
+ v
3
= c
43
= -10 + v
3
= 0 = v
3
= 10
u
3
+ v
3
= c
33
= u
3
+ 10 = 6 = u
3
= -4
Casillas no bsicas = u
i
+ v
j
c
ij

x
13
= u
1
+ v
3
c
13
= 0 + 10 10 = 0
x
22
= u
2
+ v
2
c
22
= -8 + 5 5 = -8

x
23
= u
2
+ v
3
c
23
= -8 + 10 10 = -8

x
31
= u
3
+ v
1
c
31
= -4 + 10 8 = -2
x
32
= u
3
+ v
2
c
32
= -4 + 5 10 = -9
x
42
= u
4
+ v
2
c
42
= -10 + 5 0 = -5
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 168 de 214

Comprobamos que se sigue dado la condicin de optimalidad (

). Es decir la solucin no cambia, tan solo se incrementar el tiempo.


La poltica ptima de transferencia sigue siendo:
5Gb. Desde N1 a D1
25Gb. Desde N1 a D2
23Gb. Desde N2 a D1
15Gb. Desde N3 a D3
El nuevo tiempo mnimo necesario ser: 5x10+25x5+23x2+15x6=311
Apartado c)
Utilizaremos el Mtodo Hngaro para dicha asignacin. Recordemos la
metodologa de este mtodo:
1) En la matriz de costes hacemos ceros.
1.a) Restar a cada fila su mnimo.
10 5 10
=
10-5=5 5-5=0 10-5=5
2 5 10 2-2=0 5-2=3 10-2=8
4 5 3 4-3=1 5-3=2 3-3=0
1.b) Ahora restamos a cada columna su mnimo, aunque las columnas
que ya contengan un cero no cambian nada.
5 0 5
=
5-0=5 0-0=0 5-0=5
=
5 0 5
0 3 8 0-0=0 3-0=3 8-0=8 0 3 8
1 2 0 1-0=1 2-0=2 0-0=0 1 2 0
2) Encuadrar ceros.
2.a) En la fila o columna con menor nmero de ceros libres, encuadrar
uno.
5 0 5
0 3 8
1 2 0
2.b) Tachar los ceros de la fila y columna del cero encuadrado. Como no
existen otros ceros en cada fila que hemos encuadrado el cero, no
tenemos que tachar nada.
2.c) Repetir los dos pasos anteriores mientras queden ceros libres.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Tema 3 Programacin Lineal Entera.


Pgina 169 de 214

2.d) Si se ha encuadrado un cero en cada fila y columna se tiene la
asignacin ptima.
La poltica ptima de transferencia es ahora:
30Gb. Desde N1 a D2
23Gb. Desde N2 a D1
15Gb. Desde N3 a D3
El tiempo total de esta asignacin ser: 30x5+23x2+15x3=241
Apartado d) La diferencia de tiempos ser: 266-241=25
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 170 de 214

PROBLEMAS DE EXMENES
EJERCICIO: ( 2 Problema del examen de Febrero 2011)
2. La empresa Destru,S.A. dedicada a la destruccin de residuos biomdicos
peligrosos est realizando la planificacin de la prxima semana. Para la destruccin de
los residuos dispone de tres plantas de tratamiento (PT) y dos centros de transferencia
(CT).
Las capacidad de procesamiento de las plantas tratamiento es de 110, 80 y 90
Tm. respectivamente, siendo los costes de destruccin de 12, 9 y 10 /Tm. Las
recogidas de los residuos se realizan en tres centros de recoleccin (CR) y en los dos
centros de transferencia.
La siguiente tabla muestra los costos de transporte por Tm entre las plantas y la
cantidad de residuos a recoger:
CT1 CT2 PT1 PT2 PT3 Tm
CT1 8 3 4 5 50
CT2 2 1 2 1 40
CR1 7 4 7 4 80
CR2 9 2 2 10 30
CR3 5 1 8 12 10 60

a) Cmo deben distribuirse y destruirse los residuos?
b) El nuevo gerente de la empresa ha sugerido cerrar el centro de transferencia
dos. Los residuos recogidos en el centro dos se recogeran en el uno. Qu coste
supondra el cierre para la empresa en la prxima semana?
c) Finalmente se decide asignar cada centro de recogida 0 transferencia a una
nica planta de tratamiento, ampliando si fuese necesario la capacidad cada planta para
recibir residuos de un mximo de dos orgenes. Cul sera la nueva solucin?
SOLUCIN:
Calculamos los costes totales por cada planta, sumando a los costes de transporte
de las plantas de tratamiento los costes del propio tratamiento de destruccin.
Los costes de transporte las casillas a ellas mismas es 0.
Los costes de transporte imposibles se le aadirn una cantidad muy alta M.
La suma de las demandas deber ser igual a la suma de las ofertas.
110+80+90=280 ; 50+40+80+30+60=260 . Como la demanda es mayor que la oferta,
deberemos crear un destino ficticio (DF) con la diferencia (280-260=20) con costes
asociados 0.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 171 de 214

Las disponibilidades de los puntos de transbordo, si actan como orgenes, son
las que tienen de por s, ms la cantidad total que se transporta. Las demandas de los
puntos de transbordo cuando actan como destinos son las cantidades demandadas
realmente, ms la cantidad total que hay que transportar.
Destinos

CT1 CT2 PT1 PT2 PT3
Ofertas/
Capacidad
O
r

g
e
n
e
s

CT1 0 8
12+3=
15
9+4=
13
10+5=
15
50+280=
330
CT2 2 0
12+1=
13
9+2=
11
10+1=
11
40+280=
320
CR1 7 4 M
9+7=
16
10+4=
14
80
CR2 9 2
12+2=
14
M
10+10=
20
30
CR3 5 1
12+8=
20
9+12=
21
10+10=
20
60
DF 0 0 0 0 0 20

Demandas
0+280=
280
0+280=
280
110 80 90
280
280
Quedando la tabla:
Destinos

CT1 CT2 PT1 PT2 PT3
Ofertas/
Capacidad
O
r

g
e
n
e
s

CT1 0 8 15 13 15 330
CT2 2 0 13 11 11 320
CR1 7 4 M 16 14 80
CR2 9 2 14 M 20 30
CR3 5 1 20 21 20 60
DF 0 0 0 0 0 20

Demandas 280 280 110 80 90
280
280
Para la resolucin del problema utilizaremos el Mtodo de Vogel. Recordemos
los pasos a seguir:
Paso 1: Para cada fila y columna se calculan las penalizaciones o costes de
oportunidad como la diferencia entre los dos costes ms pequeos.
Paso 2: Se elige la fila o columna con mayor penalizacin y dentro de esa fila o
columna, la casilla ms barata. Esta casilla se hace bsica (B) con valor igual al mnimo
entre la oferta y la demanda.
Paso 3: Tachar la fila o columna donde se haya alcanzado el mnimo (se rellena
en rojo).
Paso 4: Actualizar la oferta y la demanda y volver al paso 1.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 172 de 214

1 asignacin:
Penalizaciones
P
e
n
a
l
i
z
a
c
i
o
n
e
s

1 0-0=0 0-0=0 13-0=13 11-0=11 11-0=11 1
8-0=8
0

8

15

13

15

330

2-0=2
2

0

13

11

11

320

7-4=3
7

4

M

16

14

80

9-2=7
9

2

14

M

20

30

5-1=4
5

1

20

21

20

60

0-0=0
0

0

0
B
1

0

0

20-20=0
20

280 280
110-20=
90
80 90
2 asignacin:
Penalizaciones

2-0=2 1-0=1 14-13=1 13-11=2 14-11=3 2

P
e
n
a
l
i
z
a
c
i
o
n
e
s

2 1 0 0 13 11 11 1
8-0=8 8
0
B
2

8

15

13

15

330-280=
50
280
2-0=2 2
2

0

13

11

11

320

7-4=3 3
7

4

M

16

14

80

9-2=7 7
9

2

14

M

20

30

5-1=4 4
5

1

20

21

20

60

---
0
0

0

0
B
1

0

0

0
20

280-280=
0
280 90 80 90
3 Asignacin:




Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 173 de 214

Penalizaciones

---
1-0=1 14-13=1 13-11=2 14-11=3 3
2 1 1 2 3 2
P
e
n
a
l
i
z
a
c
i
o
n
e
s

3 2 1 0 0 13 11 11 1
13-8=5 8 8
0
B
2

8

15

13

15

50
280
11-0=11 2 2
2

0

13

11

11

320

14-4=10 3 3
7

4

M

16

14

80

14-2=12 7 7
9

2

14

M

20

30

20-1=19 4 4
5

1
B
3

20

21

20

60-60=
0
60
--- ---
0
0

0

0
B
1

0

0

0
20

0
280-60=
220
90 80 90
4 Asignacin:
Penalizaciones
---
2-0=2 14-13=1 13-11=2 14-11=3 4


---
1 1 2 3 3
2 1 1 2 3 2
P
e
n
a
l
i
z
a
c
i
o
n
e
s

4 3 2 1 0 0 13 11 11 1
13-8=5 5 8 8
0
B
2

8

15

13

15

50
280
11-0=11 11 2 2
2

0

13

11

11

320

14-4=10 10 3 3
7

4

M

16

14

80

14-2=12 12 7 7
9

2
B
4

14

M

20

30-30=
0
30
---
19 4 4
5

1
B
3

20

21

20

0
60
--- --- ---
0
0

0

0
B
1

0

0

0
20

0
220-30=
190
90 80 90




Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 174 de 214

5 Asignacin:
Penalizaciones

---
4-0=4 15-13=2 13-11=2 14-11=3 5

---
2 1 2 3 4

---
1 1 2 3 3
2 1 1 2 3 2
P
e
n
a
l
i
z
a
c
i
o
n
e
s

5 4 3 2 1 0 0 13 11 11 1
13-8=5 5 5 8 8
0
B
2

8

15

13

15

50
280
11-0=11 11 11 2 2
2

0
B
5

13

11

11

320-190=
130
190
14-4=10 10 10 3 3
7

4

M

16

14

80

---
12 12 7 7
9

2
B
4

14

M

20

0
30
--- ---
19 4 4
5

1
B
3

20

21

20

0
60
--- --- --- ---
0
0

0

0
B
1

0

0

0
20

0
190-190=
0
90 80 90
6 Asignacin:
Penalizaciones

--- ---
15-13=2 13-11=2 14-11=3 6

---
4 2 2 3 5
---
2 1 2 3 4

---
1 1 2 3 3
2 1 1 2 3 2
P
e
n
a
l
i
z
a
c
i
o
n
e
s

6 5 4 3 2 1 0 0 13 11 11 1
15-13=2 5 5 5 8 8
0
B
2

8

15

13

15

50
280
11-11=0 11 11 11 2 2
2

0
B
5

13

11

11
B
6

130-90=
40
190 90
16-14=2 10 10 10 3 3
7

4

M

16

14

80

--- ---
12 12 7 7
9

2
B
4

14

M

20

0
30
--- --- ---
19 4 4
5

1
B
3

20

21

20

0
60
--- --- --- --- ---
0
0

0

0
B
1

0

0

0
20

0 0 90 80
90-90=
0


Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 175 de 214

7 asignacin:
NOTA: Recordemos que para que la tabla resultante sea no degenerada, en caso
de que la oferta y la demanda coincidan se tacha solo una de ellas. La actualizacin de
la oferta y la demanda s debe realizarse normalmente
Penalizaciones
--- ---
15-13=2 13-11=2
---
7


--- ---
2 2 3 6
---
4 2 2 3 5
---
2 1 2 3 4

---
1 1 2 3 3
2 1 1 2 3 2
P
e
n
a
l
i
z
a
c
i
o
n
e
s

7 6 5 4 3 2 1 0 0 13 11 11 1
15-13=2 2 5 5 5 8 8
0
B
2

8

15

13

15

50
280
13-11=2 0 11 11 11 2 2
2

0
B
5

13

11

11
B
6

40
190 90
M-16 2 10 10 10 3 3
7

4

M

16
B
7

14

80-80=
0
80
--- --- ---
12 12 7 7
9

2
B
4

14

M

20

0
30
--- --- --- ---
19 4 4
5

1
B
3

20

21

20

0
60
--- --- --- --- --- ---
0
0

0

0
B
1

0

0

0
20

0 0 90
80-80=
0
0










Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 176 de 214

8 Asignacin:
Penalizaciones
--- ---
15-13=2 13-11=2
---
8

--- ---
2 2
---
7
--- ---
2 2 3 6
---
4 2 2 3 5
---
2 1 2 3 4

---
1 1 2 3 3
2 1 1 2 3 2
P
e
n
a
l
i
z
a
c
i
o
n
e
s

8 7 6 5 4 3 2 1 0 0 13 11 11 1
15-13=2 2 2 5 5 5 8 8
0
B
2

8

15

13

15

50
280
13-11=2 2 0 11 11 11 2 2
2

0
B
5

13

11
B
8

11
B
6

40-0=
40
190 0 90
--- M-16 2 10 10 10 3 3
7

4

M

16
B
7

14

0
80
--- --- --- --- 12 12 7 7
9

2
B
4

14

M

20

0
30
--- --- --- --- --- 19 4 4
5

1
B
3

20

21

20

0
60
--- --- --- --- --- --- --- 0
0

0

0
B
1

0

0

0
20

0 0 90
0-0=
0
0






















Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 177 de 214

9 Asignacin:

Penalizaciones
--- ---
15-13=2 13-11=2
---
8

--- ---
2 2
---
7
--- ---
2 2 3 6
---
4 2 2 3 5
---
2 1 2 3 4

---
1 1 2 3 3
2 1 1 2 3 2
P
e
n
a
l
i
z
a
c
i
o
n
e
s

8 7 6 5 4 3 2 1 0 0 13 11 11 1
15-13=2 2 2 5 5 5 8 8
0
B
2

8

15

13

15

50
280
13-11=2 2 0 11 11 11 2 2
2

0
B
5

13
B
9

11
B
8

11
B
6

40-40=
0
190 40 0 90
--- M-16 2 10 10 10 3 3
7

4

M

16
B
7

14

0
80
--- --- --- --- 12 12 7 7
9

2
B
4

14

M

20

0
30
--- --- --- --- --- 19 4 4
5

1
B
3

20

21

20

0
60
--- --- --- --- --- --- --- 0
0

0

0
B
1

0

0

0
20

0 0
90-40=
50
0-0=
0
0

10 y ltima asignacin:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 178 de 214


Penalizaciones
--- ---
15-13=2 13-11=2
---
8

--- ---
2 2
---
7
--- ---
2 2 3 6
---
4 2 2 3 5
---
2 1 2 3 4

---
1 1 2 3 3
2 1 1 2 3 2
P
e
n
a
l
i
z
a
c
i
o
n
e
s

8 7 6 5 4 3 2 1 0 0 13 11 11 1
15-13=2 2 2 5 5 5 8 8
0
B
2

8

15
B
10

13

15

50
280 50
13-11=2 2 0 11 11 11 2 2
2

0
B
5

13
B
9

11
B
8

11
B
6

40-40=
0
190 40 0 90
--- M-16 2 10 10 10 3 3
7

4

M

16
B
7

14

0
80
--- --- --- --- 12 12 7 7
9

2
B
4

14

M

20

0
30
--- --- --- --- --- 19 4 4
5

1
B
3

20

21

20

0
60
--- --- --- --- --- --- --- 0
0

0

0
B
1

0

0

0
20

0 0
50-50=
0
0-0=
0
0

Comprobamos que la solucin sea NO degenerada:
Nmero de casillas bsicas: 10
Restricciones -1 = m+n-1=6+5-1=10
Luego al coincidir los dos valores la solucin es NO degenerada.
El siguiente paso ser realizar el Test de Optimalidad:
Calcular los u
i
y los v
j
, que son las soluciones del sistema de ecuaciones.
Primero asignamos un valor arbitrario a cualquiera de ellas (por ejemplo
u
1
=0). Esto lo hacemos para las variables o casillas bsicas B:


Para las casillas no bsicas, calcular la frmula:


Test propiamente dicho, se realiza para las casillas no bsicas, que
deben ser todas menor o igual que cero para que la tabla se ptima:


Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 179 de 214


Destinos

CT1 CT2 PT1 PT2 PT3
O
r
i
g
e
n
e
s

CT1
0
B
2

8

15
B
10

13

15

u
1

280 50
CT2
2

0
B
5

13
B
9

11
B
8

11
B
6

u
2

190 40 0 90
CR1
7

4

M

16
B
7

14

u
3

80
CR2
9

2
B
4

14

M

20

u
4

30
CR3
5

1
B
3

20

21

20

u
5

60
DF
0

0

0
B
1

0

0

u
6

20
v
1
v
2
v
3
v
4
v
5

Calculamos u
i
, v
j
de las casillas bsicas.
Ojo: c
ij
i:fila ; j:columna
u
1
=0
u
1
+ v
1
= c
11
= 0 + v
1
= 0 = v
1
= 0
u
1
+ v
3
= c
13
= 0 + v
3
= 15 = v
3
= 15
u
2
+ v
3
= c
23
= u
2
+ 15 = 13 = u
2
= -2
u
2
+ v
2
= c
22
= -2 + v
2
= 0 = v
2
= 2
u
2
+ v
4
= c
24
= -2 + v
4
= 11 = v
4
= 13
u
2
+ v
5
= c
25
= -2 + v
5
= 11 = v
5
= 13
u
3
+ v
4
= c
34
= u
3
+ 13 = 16 = u
3
= 3
u
4
+ v
2
= c
42
= u
4
+ 2= 2 = u
4
= 0
u
5
+ v
2
= c
52
= u
5
+ 2= 1 = u
5
= -1
u
6
+ v
3
= c
63
= u
6
+ 15 = 0 = u
6
= -15

Casillas no bsicas = u
i
+ v
j
c
ij

x
12
= u
1
+ v
2
c
12
= 0+2-8 = -6
x
14
= u
1
+ v
4
c
14
= 0+13-13 = 0
x
15
= u
1
+ v
5
c
15
= 0+13-15 = -2
x
21
= u
2
+ v
1
c
21
=-2+0-2 = -4
x
31
= u
3
+ v
1
c
31
= 3+0-7 = -4
x
32
= u
3
+ v
2
c
32
= 3+2-4 = 1
x
33
= u
3
+ v
3
c
33
= 3+15-M = -M+18
x
35
= u
3
+ v
5
c
35
= 3+13-14 = 2
x
41
= u
4
+ v
1
c
41
= 0+0-9= -9
x
43
= u
4
+ v
3
c
43
= 0+15-14 = 1
x
44
= u
4
+ v
4
c
44
= 0+13-M = -M+13
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 180 de 214

x
45
= u
4
+ v
5
c
45
= 0+13-20 = -7
x
51
= u
5
+ v
1
c
51
= -1+0-5= -6
x
53
= u
5
+ v
3
c
53
= -1+15-20 = -6
x
54
= u
5
+ v
4
c
54
= -1+13-21 = -9
x
55
= u
5
+ v
5
c
55
= -1+13-20 = -8
x
61
= u
6
+ v
1
c
61
= -15+0-0= -15
x
62
= u
6
+ v
2
c
62
= -15+2-0 = -13
x
64
= u
6
+ v
4
c
64
= -15+13-0 = -2
x
65
= u
6
+ v
5
c
65
= -15+13-0 = -2

Como existen casillas no bsicas > 0 (x
32
; x
35
; x
43
) la solucin no es ptima.
Como no se cumple el test de optimalidad hay que hacer otra iteracin:
Seleccionar como variable de entrada la variable no bsica que menos
verifique la condicin de optimalidad, es decir, la que tenga mayor
valor de u
i
+ v
j
c
ij
entre las positivas. En nuestro caso x
35
(casilla
remarcada)
Encontrar el ciclo que forma la casilla que entra, con otras casillas
bsicas. En nuestro caso hemos marcamos el ciclo con lnea discontinua.
Marcar con los signos + y alternativamente las casillas del ciclo
encontrado, empezando por + en la casilla de entrada.

Destinos

CT1 CT2 PT1 PT2 PT3
O
r
i
g
e
n
e
s

CT1
0
B
8

15
B
13

15

u
1

280 50
CT2
2

0
B
13
B
11
B
11
B
u
2

190 40
80+0=
80
+
90-80=
10
-
CR1
7

4

M

16
B
14

u
3


80-80=
0
- 80
+
CR2
9

2
B
14

M

20

u
4

30
CR3
5

1
B
20

21

20

u
5

60
DF
0

0

0
B
0

0

u
6

20
v
1
v
2
v
3
v
4
v
5

Quedando as:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 181 de 214

Destinos

CT1 CT2 PT1 PT2 PT3
O
r
i
g
e
n
e
s

CT1
0
B
8

15
B
13

15

u
1

280 50
CT2
2

0
B
13
B
11
B
11
B
u
2

190 40 80 + 10 -
CR1
7

4

M

16

14
B
u
3



- 80 +
CR2
9

2
B
14

M

20

u
4

30
CR3
5

1
B
20

21

20

u
5

60
DF
0

0

0
B
0

0

u
6

20
v
1
v
2
v
3
v
4
v
5


Calculamos u
i
, v
j
de las casillas bsicas.
Ojo: c
ij
i:fila ; j:columna
u
1
=0
u
1
+ v
1
= c
11
= 0 + v
1
= 0 = v
1
= 0
u
1
+ v
3
= c
13
= 0 + v
3
= 15 = v
3
= 15
u
2
+ v
3
= c
23
= u
2
+ 15 = 13 = u
2
= -2
u
2
+ v
2
= c
22
= -2 + v
2
= 0 = v
2
= 2
u
2
+ v
4
= c
24
= -2 + v
4
= 11 = v
4
= 13
u
2
+ v
5
= c
25
= -2 + v
5
= 11 = v
5
= 13
u
3
+ v
5
= c
35
= u
3
+ 13 = 14 = u
3
= 1
u
4
+ v
2
= c
42
= u
4
+ 2= 2 = u
4
= 0
u
5
+ v
2
= c
52
= u
5
+ 2= 1 = u
5
= -1
u
6
+ v
3
= c
63
= u
6
+ 15 = 0 = u
6
= -15
Casillas no bsicas = u
i
+ v
j
c
ij

x
12
= u
1
+ v
2
c
12
= 0+2-8 = -6
x
14
= u
1
+ v
4
c
14
= 0+13-13 = 0
x
15
= u
1
+ v
5
c
15
= 0+13-15 = -2
x
21
= u
2
+ v
1
c
21
=-2+0-2 = -4
x
31
= u
3
+ v
1
c
31
= 1+0-7 = -6
x
32
= u
3
+ v
2
c
32
= 1+2-4 = -1
x
33
= u
3
+ v
3
c
33
= 1+15-M = -M+16
x
34
= u
3
+ v
4
c
34
= 1+13-16 = -2
x
41
= u
4
+ v
1
c
41
= 0+0-9= -9
x
43
= u
4
+ v
3
c
43
= 0+15-14 = 1
x
44
= u
4
+ v
4
c
44
= 0+13-M = -M+13
x
45
= u
4
+ v
5
c
45
= 0+13-20 = -7
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 182 de 214

x
51
= u
5
+ v
1
c
51
= -1+0-5= -6
x
53
= u
5
+ v
3
c
53
= -1+15-20 = -6
x
54
= u
5
+ v
4
c
54
= -1+13-21 = -9
x
55
= u
5
+ v
5
c
55
= -1+13-20 = -8
x
61
= u
6
+ v
1
c
61
= -15+0-0= -15
x
62
= u
6
+ v
2
c
62
= -15+2-0 = -13
x
64
= u
6
+ v
4
c
64
= -15+13-0 = -2
x
65
= u
6
+ v
5
c
65
= -15+13-0 = -2
Como an existe una casilla no bsicas > 0 (x
43
) la solucin no es ptima.
Como no se cumple el test de optimalidad hay que hacer otra iteracin:
Destinos

CT1 CT2 PT1 PT2 PT3
O
r

g
e
n
e
s

CT1
0
B
8

15
B
13

15

u
1

280 50
CT2
2

0
B
13
B
11
B
11
B
u
2


190+30=
220
+
40-30=
10
- 80

10

CR1
7

4

M

16

14
B
u
3



80
CR2
9

2
B
14

M

20

u
4


30-30=
0
- 30 +

CR3
5

1
B
20

21

20

u
5

60
DF
0

0

0
B
0

0

u
6

20
v
1
v
2
v
3
v
4
v
5

Quedando:
Destinos

CT1 CT2 PT1 PT2 PT3
O
r

g
e
n
e
s

CT1
0
B
8

15
B
13

15

u
1

280 50
CT2
2

0
B
13
B
11
B
11
B
u
2

220 + 10 - 80 10
CR1
7

4

M

16

14
B
u
3



80
CR2
9

2

14
B
M

20

u
4

- 30 +
CR3
5

1
B
20

21

20

u
5

60
DF
0

0

0
B
0

0

u
6

20
v
1
v
2
v
3
v
4
v
5

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 183 de 214

Calculamos u
i
, v
j
de las casillas bsicas.
Ojo: c
ij
i:fila ; j:columna
u
1
=0
u
1
+ v
1
= c
11
= 0 + v
1
= 0 = v
1
= 0
u
1
+ v
3
= c
13
= 0 + v
3
= 15 = v
3
= 15
u
2
+ v
3
= c
23
= u
2
+ 15 = 13 = u
2
= -2
u
2
+ v
2
= c
22
= -2 + v
2
= 0 = v
2
= 2
u
2
+ v
4
= c
24
= -2 + v
4
= 11 = v
4
= 13
u
2
+ v
5
= c
25
= -2 + v
5
= 11 = v
5
= 13
u
3
+ v
5
= c
35
= u
3
+ 13 = 14 = u
3
= 1
u
4
+ v
3
= c
43
= u
4
+ 15= 14 = u
4
= -1
u
5
+ v
2
= c
52
= u
5
+ 2= 1 = u
5
= -1
u
6
+ v
3
= c
63
= u
6
+ 15 = 0 = u
6
= -15

Casillas no bsicas = u
i
+ v
j
c
ij

x
12
= u
1
+ v
2
c
12
= 0+2-8 = -6
x
14
= u
1
+ v
4
c
14
= 0+13-13 = 0
x
15
= u
1
+ v
5
c
15
= 0+13-15 = -2
x
21
= u
2
+ v
1
c
21
=-2+0-2 = -4
x
31
= u
3
+ v
1
c
31
= 1+0-7 = -6
x
32
= u
3
+ v
2
c
32
= 1+2-4 = -1
x
33
= u
3
+ v
3
c
33
= 1+15-M = -M+16
x
34
= u
3
+ v
4
c
34
= 1+13-16 = -2
x
41
= u
4
+ v
1
c
41
= -1+0-9= -10
x
42
= u
4
+ v
2
c
42
= -1+2-2 = -1
x
44
= u
4
+ v
4
c
44
= -1+13-M = -M+12
x
45
= u
4
+ v
5
c
45
= -1+13-20 = -8
x
51
= u
5
+ v
1
c
51
= -1+0-5= -6
x
53
= u
5
+ v
3
c
53
= -1+15-20 = -6
x
54
= u
5
+ v
4
c
54
= -1+13-21 = -9
x
55
= u
5
+ v
5
c
55
= -1+13-20 = -8
x
61
= u
6
+ v
1
c
61
= -15+0-0= -15
x
62
= u
6
+ v
2
c
62
= -15+2-0 = -13
x
64
= u
6
+ v
4
c
64
= -15+13-0 = -2
x
65
= u
6
+ v
5
c
65
= -15+13-0 = -2
Volvemos a realizar el test: para las casillas no bsicas, que deben ser todas
menor o igual que cero para que la tabla se ptima:


Como se verifica el test la tabla es ptima.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 184 de 214

Destinos

CT1 CT2 PT1 PT2 PT3
O
r

g
e
n
e
s

CT1
0
B
8

15
B
13

15

u
1

280 50
CT2
2

0
B
13
B
11
B
11
B
u
2

220 10 80 10
CR1
7

4

M

16

14
B
u
3



80
CR2
9

2

14
B
M

20

u
4

30
CR3
5

1
B
20

21

20

u
5

60
DF
0

0

0
B
0

0

u
6

20
v
1
v
2
v
3
v
4
v
5

Es decir la combinacin optima de transporte seria, omitiendo los nudos ficticios
y las casillas bsicas con valor 0:
CT1 = PT1 : 50
CT2 = PT1 : 10
CT2 = PT2 : 80
CT2 = PT3 : 10
CR1 = PT3 : 80
CR2 = PT1 : 30
CR3 = CT2 : 60
Si lo resolvemos mediante LP Solve.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 185 de 214



Y los resultados seran:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 186 de 214









Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 187 de 214

EJERCICIO: ( 1 Problema mediante ordenador del examen de Febrero
2011)
Dado el siguiente problema de programacin lineal:
max 2x
1
+3x
2
-4x
3
-9x
4

s.a x
1
+x
2
+x
3
-3x
4
1
x
1
+x
2
+2x
3
-3x
4
=2
3x
1
+2x
2
+x
3
-6x
4
4
x
1
,x
2
0 ; x
3
0 ; x
4
Libre

a) Resolver el problema, obteniendo el punto solucin y su valor objetivo.
b) Cules son las variables bsicas?
c) Obtener el rango de variacin del coeficiente b
2

d) Obtener el valor ptimo de w
2

e) Resolver el problema imponiendo la condicin de integridad.
SOLUCIN:
Recordemos que:
Un P.P.L. est en Formato Estndar si es de la forma:
Minimizar/maximizar: c
1
x
1
+....+ c
n
x
n

Sujeto a condiciones: a
11
x
1
+ a
12
x
2
+ ...+ a
1n
x
n
= b
1

a
21
x
1
+ a
22
x
2
+ ...+ a
2n
x
n
= b
2

a
m1
x
1
+ a
m2
x
2
+ ...+ a
m n
x
n
= b
m
x
1
,x
2
,..,x
n
> 0 con b
1
,b
2
,,b
m
> 0

a) Introducimos las ecuaciones en el programa, lengeta source, cada lnea
finaliza con un ;.
Hay que tener en cuenta que las variables libres se notifican en el programa
mediante la instruccin free. Tambin para hacer constar que la variable x
3
debe ser 0
se escribe: -inf<=x
3
<=0:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 188 de 214


Los resultados se muestran en la lengeta Result-Objetive:

Luego los resultados son:


b) La variable bsica es x
2

c) Obtener el rango de variacin del coeficiente b
2
.
Se tratara de un anlisis de sensibilidad del vector recursos. En este caso nos
solicitan de la segunda restriccin (b
2
= x
1
+x
2
+2x
3
-3x
4
=2). Para ello pinchamos en la
lengeta Resul-Sensitivity-Duals. Hay estn representantas las tres restricciones por R1,
R2, R3. En la segunda restriccin (R2) observamos las columnas de from y till, que
sern los valores mnimos y mximos de las variaciones de los recursos de dicha
restriccin, para que el programa ptimo no vare. Es decir deber estar entre [-1,2]
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 189 de 214


d) Obtener el valor ptimo de w
2

Al tratarse de w
2
estamos hablando de la segunda restriccin (R2). Tan solo
tenemos que pinchar en la lengeta Resul-Sensitivity-Duals. Y observamos la columna
de value. Hay obtendremos los resultados del dual (D):

w
1
*
=0 ; w
2
*
=-3,666 ; w
3
*
=3,333 ; Z
*
=6
e) Resolver el problema imponiendo la condicin de integridad.
Recordemos que en el software LDSolve IDE para modificar este comportamiento
se dispone de las instrucciones:
free x que declara la variable x como libre.
int x que declara la variable x como entera.
bin x que declara la variable x como binaria, es decir, x {0,1}.
Quedara as la nueva formulacin:

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 190 de 214

Como cabra esperar los resultados no varan, ya que las soluciones iniciales ya
eran enteras:
Los resultados se muestran en la lengeta Result-Objetive:



EJERCICIO: ( 2 Problema mediante ordenador del examen de Febrero
2011)
Dada la siguiente tabla correspondiente a un problema de transporte

Destinos
D1 D2 D3 D4
Capacidades
-
O
r

g
e
n
e
s

O1 12 9 19 25 21
O2 15 20 10 10 22
O3 15 15 22 21 16
O4 21 25 12 15 16
O5 24 5 10 12 11
Demandas= 35 24 28 17
a) Encontrar la solucin ptima del problema y su costo asociado.
b) Obtener el rango de variacin de todos los costos del origen 3.
c) Si la empresa pudiese aumentar lo suficiente la capacidad del origen 1 para
cubrir toda la demanda, cul ser la solucin ptima y su costo asociado?
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 191 de 214

d) Entre la alternativa anterior y la de subcontratar el abastecimiento de las
unidades restantes a un costa fijo de 15 unidades cul es ms rentable? (Indicar la
solucin y el costa total asociado a la segunda opcin.)
e) Resolver el problema de asignacin asociado a la tabla anterior.
SOLUCIN:
a) En primer lugar verificaremos que el total de demandas sea igual al total de
capacidades:
Demanda Total=35+24+28+17=104
Capacidad Total=21+22+16+16+11=86
Como no coinciden (Demanda>Oferta) necesitaremos crear una oferta ficticia
por la diferencia (104-86=18). Quedando as la tabla:

Destinos
D1 D2 D3 D4
Capacidades
-
O
r

g
e
n
e
s

O1 12 9 19 25 21
O2 15 20 10 10 22
O3 15 15 22 21 16
O4 21 25 12 15 16
O5 24 5 10 12 11
OF 0 0 0 0 18

Demandas= 35 24 28 17
104
104
Una vez igualadas las capacidades totales con las demandas totales podremos
introducir los datos en el programa. En primer lugar hacer constar que para la resolucin
de problemas de transporte o asignacin se utiliza el lenguaje XLI MathProg. Para ello
deberemos marcar en View-XLI_MathProg 4.41:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 192 de 214


Una vez en ese formato escribimos las siguientes lneas:

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 193 de 214

Una vez introducido los datos, pinchamos sobre el tringulo verde (F9-Solve)
para obtener los resultados. Estos aparecen en Result-Objetive:

Es decir se debern transportar:
- 8 ud. desde el Origen 1 al Destino 1 (coste= 8x12=96)
- 13 ud. desde el Origen 1 al Destino 2 (coste= 13x9=117)
- 5 ud. desde el Origen 2 al Destino 3 (coste= 5x10=50)
- 17 ud. desde el Origen 2 al Destino 4 (coste= 17x10=170)
- 16 ud. desde el Origen 3 al Destino 1 (coste= 16x15=240)
- 16 ud. desde el Origen 4 al Destino 3 (coste= 16x12=192)
- 11 ud. desde el Origen 5 al Destino 2 (coste= 11x5=55)
El coste total lo observamos en la primera fila o manualmente multiplicando
cada cantidad a transportar por su coste = 96+117+50+170+240+192+55 = 920
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 194 de 214

b) Obtener el rango de variacin de todos los costos del origen 3.
Se tratara de un anlisis de sensibilidad para todos los O3. Lo podemos obtener
de la lengeta Result-Sensitivity-Objetive. Una vez ah observamos las columnas from y
till.

Aqu observamos los posibles rangos de variacin de los costes con origen 3
para que la tabla ptima no vare:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 195 de 214

- O3 a D1 entre 12 y 18.
- O3 a D2 entre 12 y +.
- O3 a D3 entre 15 y +.
- O3 a D4 entre 15 y +.
c) Si la empresa pudiese aumentar lo suficiente la capacidad del origen 1 para
cubrir toda la demanda, cul ser la solucin ptima y su costo asociado?
Recordemos la tabla inicial::

Destinos
D1 D2 D3 D4
Capacidades
-
O
r

g
e
n
e
s

O1 12 9 19 25 21
O2 15 20 10 10 22
O3 15 15 22 21 16
O4 21 25 12 15 16
O5 24 5 10 12 11
Demandas= 35 24 28 17
86
104
La diferencia entre la demanda total y la capacidad total ser la capacidad a
aumentar del Origen 1 (104-86=18). Ya no tendremos que crear un origen ficticio.
Luego la nueva tabla ser:

Destinos
D1 D2 D3 D4
Capacidades
-
O
r

g
e
n
e
s

O1 12 9 19 25 21+18=39
O2 15 20 10 10 22
O3 15 15 22 21 16
O4 21 25 12 15 16
O5 24 5 10 12 11
Demandas= 35 24 28 17
104
104
Volvemos a introducir estos datos en el LPSolve:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 196 de 214


Volvemos a pinchar en el tringulo verde (F9-Solve) y obtendremos (Result-
Objetive ) la tabla optima con su coste total asociado:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 197 de 214


Es decir se debern transportar:
- 19 ud. desde el Origen 1 al Destino 1
- 20 ud. desde el Origen 1 al Destino 2
- 5 ud. desde el Origen 2 al Destino 3
- 17 ud. desde el Origen 2 al Destino 4
- 16 ud. desde el Origen 3 al Destino 1
- 16 ud. desde el Origen 4 al Destino 3
- 4 ud. desde el Origen 5 al Destino 2
- 7 ud. desde el Origen 5 al Destino 3
El coste total asociado ser: 1.150

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 198 de 214

d) Entre la alternativa anterior y la de subcontratar el abastecimiento de las
unidades restantes a un costa fijo de 15 unidades cul es ms rentable? (Indicar la
solucin y el costa total asociado a la segunda opcin.)
La alternativa de subcontratar tendra un coste igual al coste inicial (920) mas el
coste de las 18ud. a un precio de 15um. (15um.x18ud.=270) Es decir
920+270=1.190um.
Es decir la alternativa de subcontratar (1.190um) saldra mas cara que la de
aumentar la capacidad del Origen 1 (1.150um.)
e) Resolver el problema de asignacin asociado a la tabla anterior.

Destinos
D1 D2 D3 D4
Capacidades
-
O
r

g
e
n
e
s

O1 12 9 19 25 21
O2 15 20 10 10 22
O3 15 15 22 21 16
O4 21 25 12 15 16
O5 24 5 10 12 11
Demandas= 35 24 28 17
Recordemos que los problemas de asignacion se pueden asimilar a problemas de
transporte con las capacidades y demandas igual a 1. Nuestro objetivo es asignar los
destinos al minimo coste.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 199 de 214


Los resultados:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 200 de 214


Es decir:
- O1 con D1
- O2 con D4
- O4 con D3
- O5 con D2
El coste asociado es 39.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 201 de 214

EJERCICIO: ( 1 Problema del examen de Marzo 2011)
La empresa Azule,S.A. debe distribuir su presupuesto I+D+I para el prximo ao
disponiendo de 30 millones de euros. Para la asignacin ha distribuido los proyectos en
tres grupos segn el plazo de su rentabilidad: RCP Rentables a corto plazo, RMP =
Rentables a medio plazo y RLP Rentables a largo plazo.
El retorno neto global estimado para cada tipo de proyecto es del 150 %, 200 %
y 300 % de la inversin inicial. El total de la inversin en proyectos a medio y largo
plazo no puede superar el 50 % de la disponibilidad. As mismo, la cantidad invertida en
cada tipo de proyecto no debe ser inferior al 20 %.
a) Encontrar el reparto del presupuesto que maximiza el retorno global neto.
b) Dado que la disponibilidad presupuestaria est referida al prximo ao, la
direccin general de la empresa desea conocer que efectos tendra sobre la poltica de
inversiones tener en cuenta nicamente la inversin en cada proyecto en el primer ao,
siendo estos del 100 %, 80 % y 50 % del coste total. Cmo modifica esto la poltica de
inversiones?
c) Desestimada la opcin anterior y para evitar que los proyectos no puedan
finalizarse por restricciones presupuestarias, la empresa ha decidido financiar cada
proyecto con 5 millones de euros. Cuantos proyectos debe financiarse de cada tipo?
SOLUCIN:
Las variables a calcular sern:
x
1
=Inversin a corto plazo
x
2
=Inversin a medio plazo
x
3
=Inversin a largo plazo
Restricciones:
x
1
+ x
2
+ x
3
30 mm = x
1
+x
2
+ x
3
30
x
2
+ x
3
50% de 30 mm = x
2
+ x
3
15
x
1
20% de 30 mm = x
1
6
x
2
20% de 30 mm = x
2
6
x
3
20% de 30 mm = x
3
6
Funcin a maximizar:
Max: 1,5x
1
+ 2x
2
+3x
3


Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 202 de 214

Apartado a)
Max: 1,5x
1
+ 2x
2
+3x
3

s.a x
1
+x
2
+ x
3
30
x
2
+ x
3
15
x
1
6
x
2
6
x
3
6
x
i
0
Transformamos a formato estndar. Recordemos que:
- Restriccin : para pasarla a formato estndar aadiremos una variable de holgura
tal que + S
i
=. Adems, +S
i
es bsica en la fila i.
- Restriccin =: para pasarla a formato estndar aadiremos una variable de holgura
tal que + Z
i
=. Adems, +Z
i
es bsica en la fila i.
- Restriccin : para pasarla a formato estndar aadiremos una variable de holgura
tal que -S
i
+ Z
i
=. Adems, -S
i
, +Z
i
son bsicas en la fila i.
Max: 1,5x
1
+ 2x
2
+3x
3

s.a x
1
+x
2
+ x
3
+ s
1
= 30
x
2
+ x
3
+ s
2
= 15
x
1
- s
3
+ z
3
= 6
x
2
- s
4
+ z
4
= 6
x
3
- s
5
+ z
5
= 6
x
i
; s
i
0
Al tener restricciones del tipo utilizaremos el mtodo de la M Grande. Este
mtodo trata de obligar a que z sea cero mediante un coeficiente muy grande (M).
Prob. de minimizar: El problema min cx se convierte en min cx + M Ez
i
.
Prob. de maximizar: El problema max cx se convierte en max cx M Ez
i
.
Si Zi=0 i hemos encontrado la solucin.
Si i Zi0 se tratara de un problema infactible
Max: 1,5x
1
+ 2x
2
+3x
3
-Mz
3
-Mz
4
-Mz
5

s.a x
1
+x
2
+ x
3
+ s
1
= 30
x
2
+ x
3
+ s
2
= 15
x
1
- s
3
+ z
3
= 6
x
2
- s
4
+ z
4
= 6
x
3
- s
5
+ z
5
= 6
x
i
; s
i
0

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 203 de 214

Recordemos los pasos para resolver un PPL por el mtodo simplex
Paso 1: Buscar una solucin bsica factible inicial (punto extremo).
Paso 2: Realizar el Test de Optimalidad (determinar si el paso a una solucin bsica
adyacente puede mejorar la funcin objetivo).

Problemas de maximizar: la solucin es ptima si todos los elementos de
la fila z son 0.
Problemas de minimizar: la solucin es ptima si todos los elementos de
la fila z son 0.

Paso 3: Cambiar de base, se hace pivotando y volviendo al paso 1 (determinar la
solucin bsica adyacente con mayor mejora en el valor del objetivo).

Paso 3.1: Entra la variable que menos cumple la condicin de optimalidad,
es decir:
Maximizar: la que tenga mayor valor (valor absoluto) entre los
negativos de la fila z.
Minimizar: la que tenga mayor valor entre los positivos de la fila z.
Paso 3.2: Sale la variable cuyo cociente del lado derecho entre sus
correspondientes elementos positivos en la columna de la variable que entra
sea el ms pequeo.

Paso 3.3: Pivotar sobre el elemento de la fila de la variable que sale y la
columna de la variable que entra. Se debern realizar las operaciones que se
deseen, para que al final quede la matriz identidad en las columnas de las
variables bsicas. La operacin de pivotaje en una tabla simplex es
equivalente a un cambio de base, por lo que el resultado final ser el mismo
sin interferir las operaciones realizadas.

1,5 2 3 0 0 0 -M 0 -M 0 -M
x
1
x
2
x
3
s
1
s
2
s
3
z
3
s
4
z
4
s
5
z
5

0 s
1
1 1 1 1 0 0 0 0 0 0 0 30 30/1=30

0 s
2
0 1 1 0 1 0 0 0 0 0 0 15 15/1=15
-M z
3
1 0 0 0 0 -1 1 0 0 0 0 6
-M z
4
0 1 0 0 0 0 0 -1 1 0 0 6
-M z
5
0 0 1 0 0 0 0 0 0 -1 1 6 6/1=6
= sale z
5

min(30;15;6)=6
-M-1,5 -M-2 -M-3 0 0 M 0 M 0 M 0 -18M

^
Entra x
3

Max(-M-1,5;-M-2;-M-3)= M+3




A la 1 fila le restamos la fila del pivote (5)
A la 2 fila le restamos la fila del pivote (5)
Recalculamos Z.


Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 204 de 214


1,5 2 3 0 0 0 -M 0 -M 0 -M
x
1
x
2
x
3
s
1
s
2
s
3
z
3
s
4
z
4
s
5
z
5

0 s
1
1 1 0 1 0 0 0 0 0 1 -1 24 24/1=24

0 s
2
0 1 0 0 1 0 0 0 0 1 -1 9 9/1=9
-M z
3
1 0 0 0 0 -1 1 0 0 0 0 6
-M z
4
0 1 0 0 0 0 0 -1 1 0 0 6 6/1=6
= sale z
4

min(24;9;6)=6
3 x
3
0 0 1 0 0 0 0 0 0 -1 1 6
-M-1,5 -M-2 0 0 0 -M 0 M 0 -3 3+M 18-12M

^
Entra
x
2






A la 1 fila le restamos la fila del pivote (4)
A la 2 fila le sumamos la fila del pivote (4)
Recalculamos Z.

1,5 2 3 0 0 0 -M 0 -M 0 -M
x
1
x
2
x
3
s
1
s
2
s
3
z
3
s
4
z
4
s
5
z
5

0 s
1
1 0 0 1 0 0 0 1 1 1 -1 18 18/1=18

0 s
2
0 0 0 0 1 0 0 1 -1 1 -1 3
-M z
3
1 0 0 0 0 -1 1 0 0 0 0 6 6/1=6
= sale
z
3

min(15;6)=6
2 x
2
0 1 0 0 0 0 0 -1 1 0 0 6
3 x
3
0 0 1 0 0 0 0 0 0 -1 1 6
-M-1,5 0 0 0 3 M 0 -2 2+M -3 3+M 30-6M

^
Entra
x
1






A la 1 fila le restamos la fila del pivote (3)
Recalculamos Z.

1,5 2 3 0 0 0 -M 0 -M 0 -M
x
1
x
2
x
3
s
1
s
2
s
3
z
3
s
4
z
4
s
5
z
5

0 s
1
0 0 0 1 0 1 -1 1 1 1 -1 12 12/1=12

0 s
2
0 0 0 0 1 0 0 1 -1 1 -1 3 3/1=3
= sale
s
2

1,5 x
1
1 0 0 0 0 -1 1 0 0 0 0 6
2 x
2
0 1 0 0 0 0 0 -1 1 0 0 6
3 x
3
0 0 1 0 0 0 0 0 0 -1 1 6
0 0 0 0 0 -1,5 1,5+M -2 2+M -3 3+M 39

^
Entra
s
5



Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 205 de 214

A la 1 fila le restamos la fila del pivote (2)
A la 5 fila le sumamos la fila del pivote (2)
Recalculamos Z.

1,5 2 3 0 0 0 -M 0 -M 0 -M
x
1
x
2
x
3
s
1
s
2
s
3
z
3
s
4
z
4
s
5
z
5

0 s
1
0 0 0 1 -1 1 -1 0 2 0 0 9
= sale
s
1

0 s
5
0 0 0 0 1 0 0 1 -1 1 -1 3
1,5 x
1
1 0 0 0 0 -1 1 0 0 0 0 6
2 x
2
0 1 0 0 0 0 0 -1 1 0 0 6
3 x
3
0 0 1 0 1 0 0 1 -1 0 0 9
0 0 0 0 3 -1,5 1,5+M 1 -1+M 0 +M 48

^
Entra s
3





A la 3 fila le sumamos la fila del pivote (1):

1,5 2 3 0 0 0 -M 0 -M 0 -M
x
1
x
2
x
3
s
1
s
2
s
3
z
3
s
4
z
4
s
5
z
5

0 s
3
0 0 0 1 -1 1 -1 0 2 0 0 9
0 s
5
0 0 0 0 1 0 0 1 -1 1 -1 3
1,5 x
1
1 0 0 1 -1 0 0 0 2 0 0 15
2 x
2
0 1 0 0 0 0 0 -1 1 0 0 6
3 x
3
0 0 1 0 1 0 0 1 -1 0 0 9
0 0 0 1,5 1,5 0 +M 1 2+M 0 +M 61,5
Realizar el Test de Optimalidad (determinar si el paso a una solucin bsica
adyacente puede mejorar la funcin objetivo).

Problemas de maximizar: la solucin
es ptima si todos los elementos de la fila z son 0.
Por la metodologa de la M grande deberemos comprobar tambin que en la columna de
la derecha (Zi) no existe ninguna Z con valor distinto de 0. Como tambin se da esta
segunda condicin, la solucin es ptima:


Mediante LPSolve los resultados coinciden:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 206 de 214


Apartado b) Dado que la disponibilidad presupuestaria est referida al prximo
ao, la direccin general de la empresa desea conocer que efectos tendra sobre la
poltica de inversiones tener en cuenta nicamente la inversin en cada proyecto en el
primer ao, siendo estos del 100 %, 80 % y 50 % del coste total. Cmo modifica esto
la poltica de inversiones?
Se tratara de una modificacin en el vector de costes:
La rentabilidad de las Inversiones a corto plazo se recuperara en el primer ao
el 100%. Es decir se mantendra igual que en el apartado a)
La rentabilidad de las Inversiones a medio plazo se recuperara en el primer ao
el 80%.
La rentabilidad de las Inversiones a largo plazo se recuperara en el primer ao
el 50%.
Quedando as la funcin a maximizar:
Max: (11,5)x
1
+(0,82)x
2
+(0,53)x
3
= 1,5x
1
+ 1,6x
2
+ 1,5x
3

El P.P.L. quedara:
Max: 1,5x
1
+ 1,6x
2
+ 1,5x
3

s.a x
1
+ x
2
+ x
3
30
x
2
+ x
3
15
x
1
6
x
2
6
x
3
6
x
i
0
La tabla ptima calculada anteriormente era:

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 207 de 214


1,5 2 3 0 0 0 -M 0 -M 0 -M
x
1
x
2
x
3
s
1
s
2
s
3
z
3
s
4
z
4
s
5
z
5

0 s
3
0 0 0 1 -1 1 -1 0 2 0 0 9
0 s
5
0 0 0 0 1 0 0 1 -1 1 -1 3
1,5 x
1
1 0 0 1 -1 0 0 0 2 0 0 15
2 x
2
0 1 0 0 0 0 0 -1 1 0 0 6
3 x
3
0 0 1 0 1 0 0 1 -1 0 0 9
0 0 0 1,5 1,5 0 +M 1 2+M 0 +M 61,5
Recalculamos el rengln Z:

1,5 1,6 1,5 0 0 0 -M 0 -M 0 -M
x
1
x
2
x
3
s
1
s
2
s
3
z
3
s
4
z
4
s
5
z
5

0 s
3
0 0 0 1 -1 1 -1 0 2 0 0 9
0 s
5
0 0 0 0 1 0 0 1 -1 1 -1 3
1,5 x
1
1 0 0 1 -1 0 0 0 2 0 0 15
1,6 x
2
0 1 0 0 0 0 0 -1 1 0 0 6
1,5 x
3
0 0 1 0 1 0 0 1 -1 0 0 9
0 0 0 1,5 0 0 +M -0,1 3,1+M 0 +M 45,6
A continuacin realizamos el Test de Optimalidad (determinar si el paso a una
solucin bsica adyacente puede mejorar la funcin objetivo). Recordemos que:

Problemas de maximizar: la solucin es ptima si todos los elementos de la
fila z son 0.
Problemas de minimizar: la solucin es ptima si todos los elementos de la
fila z son 0.

Como existe un elemento de la fila Z negativo, deberemos pivotar.

1,5 1,6 1,5 0 0 0 -M 0 -M 0 -M
x
1
x
2
x
3
s
1
s
2
s
3
z
3
s
4
z
4
s
5
z
5

0 s
3
0 0 0 1 -1 1 -1 0 2 0 0 9
0 s
5
0 0 0 0 1 0 0 1 -1 1 -1 3 = sale s
5

1,5 x
1
1 0 0 1 -1 0 0 0 2 0 0 15
1,6 x
2
0 1 0 0 0 0 0 -1 1 0 0 6
1,5 x
3
0 0 1 0 1 0 0 1 -1 0 0 9
0 0 0 1,5 0 0 +M -0,1 3,1+M 0 +M 45,6


^
Entra
s
4



A la 4 fila le sumamos la fila pivote (2)
A la 5 fila le restamos la fila pivote (2)

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 208 de 214


1,5 1,6 1,5 0 0 0 -M 0 -M 0 -M
x
1
x
2
x
3
s
1
s
2
s
3
z
3
s
4
z
4
s
5
z
5

0 s
3
0 0 0 1 -1 1 -1 0 2 0 0 9
0 s
4
0 0 0 0 1 0 0 1 -1 1 -1 3
1,5 x
1
1 0 0 1 -1 0 0 0 2 0 0 15
1,6 x
2
0 1 0 0 1 0 0 0 0 1 -1 9
1,5 x
3
0 0 1 0 0 0 0 0 0 -1 1 6
0 0 0 1,5 0,1 0 +M 0 3+M 0,1 -0,1+M 45,9
Ahora si todos los elementos de la fila Z son 0, luego la solucin es ptima. La nueva
solucin ser:


Mediante LPSolve los resultados coinciden:

Apartado c) Desestimada la opcin anterior y para evitar que los proyectos no
puedan finalizarse por restricciones presupuestarias, la empresa ha decidido financiar
cada proyecto con 5 millones de euros. Cuantos proyectos debe financiarse de cada
tipo?
La solucin al apartado a (relajado) era:


Max: 1,5x
1
+ 2x
2
+3x
3

s.a x
1
+x
2
+ x
3
30 (1)
x
2
+ x
3
15 (2)
x
1
6 (3)
x
2
6 (4)
x
3
6 (5)
x
i
0
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 209 de 214

Es decir en este apartado nos preguntan una solucin en las que las variables
x1,x2,x3 sean enteras y mltiplos de 5. Adems de que cumpla todas las restricciones.
A partir de la solucin del problema relajado podramos buscar una solucin con
valores mltiplo de 5:
x
1
=15; x
2
=5;x
3
=10 = No cumple la restriccin 4 .
x
1
=15; x
2
=10;x
3
=10 = No cumple las restricciones 1 y 2.
Luego parece que el problema sera infactible, pues valores inferiores no
cumple las restricciones 4 y 5. Y valores superiores no cumplira las restricciones 1 y 2.

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 210 de 214

EJERCICIO: ( 2 Problema del examen extraordinario de Marzo 2011)
La empresa Oil,S.A. utiliza una pequea red de conducciones para transportar
aceite desde sus depsitos centrales hasta los puntos de venta. Los depsitos centrales
tambin se utilizan como puntos de venta y estn interconectados entre s. Adems la
empresa dispone de un punto adicional de transvase.
La siguiente tabla muestra los costos por Tm. de transportar el aceite en cada
uno de los trayectos, la demanda de aceite en cada punto en el prximo mes y la
disponibilidad en cada uno de los almacenes.
DC1 DC2 PT PV1 PV2 PV3 Disponibilidad
DC1 16 17 15 13 16 190
DC2 22 17 14 16 210
PT 9 8 6 12 8 8
Demanda 110 80 90 60 50
a) Encontrar la poltica optima de envo del aceite para el prximo mes y su
correspondiente costo.
b) Una cooperativa local dispone de 30 Tm de aceite que podra enviar desde el
punto de transvase. Cmo cambiar la poltica y los costos si la empresa aceptase la
propuesta?
c) Un inspector con base en el punta de transferencia, debe realizar una ruta
diaria que pase por todos los almacenes y todos los puntos de venta, siendo los costos
proporcionales a los de transporte de aceite y a los de la tabla siguiente:
PV2 PV3
PV1 21 16
PV2 18
Cul es la ruta optima? Qu longitud tiene?
SOLUCIN:
En primer lugar verificamos que la oferta total coincida con la demanda total:
Disponibilidad/Oferta Total =190+210=400
Demanda Total = 110+80+90+60+50=390
Como Demanda total es menor que la oferta total deberemos crear un destino
ficticio con dicha diferencia (400-390=10).
Recordemos tambin que al tratarse de un problema de transbordo, a la oferta y
demanda de este nodo (PT) hay que aadirle la oferta o demanda total (400). As
quedara la tabla:
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 211 de 214

DC1 DC2 PT PV1 PV2 PV3 DF Disponibilidad
DC1 0 16 17 15 13 16 0 190
DC2 22 0 17 14 16 0 0 210
PT 9 8 6 12 8 8 0 400
Demanda 110 80 400 90 60 50 10
400
400
Ya tenemos planteado el problema como uno de transporte. Para la resolucin
del problema utilizaremos el Mtodo de Vogel. Recordemos los pasos a seguir:
Paso 1: Para cada fila y columna se calculan las penalizaciones o costes de
oportunidad, como la diferencia entre los dos costes ms pequeos.
Penalizaciones
Penalizaciones 9-0=9 8-0=8 17-6=11 14-12=2 13-8=5 8-0=8 0-0=0 1
1 DC1 DC2 PT PV1 PV2 PV3 DF
0-0=0 DC1 0 16 17 15 13 16 0
0-0=0 DC2 22 0 17 14 16 0 0
6-0=6 PT 9 8 6 12 8 8 0
Paso 2: Se elige la fila o columna con mayor penalizacin
[max(0,0,6,9,8,11,2,5,8,0)=11 = Columna 3] y dentro de esa fila o columna, la casilla
ms barata [min(17,17,6)=6] es la fila PT. Esta casilla 3-3 se hace bsica con valor igual
al mnimo entre la oferta y la demanda [min(400;400)=400].
Penalizaciones
Penalizaciones

9-0=
9
8-0=
8
17-6=
11
14-12=
2
13-8=
5
8-0=
8
0-0=
0
1
1
DC1 DC2 PT PV1 PV2 PV3
DF
D
i
s
p
o
n
i

b
i
l
i
d
a
d

0-0=0 DC1
0 16 17 15 13 16 0 190

0-0=0 DC2
22 0 17 14 16 0 0 210

6-0=6 PT
9 8 6 B 12 8 8 0 400
400
Demandas 110 80 400 90 60 50 10
Paso 3: Tachar (rellenamos de rojo) la fila o columna donde se haya alcanzado
el total de la oferta o demanda. Recordemos que para que la tabla resultante sea no
degenerada, en caso de que la oferta y la demanda coincidan se tacha solo una de ellas.
La actualizacin de la oferta y la demanda s debe realizarse normalmente.
Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 212 de 214

Penalizaciones
Penalizaciones

9-0=
9
8-0=
8
17-6=
11
14-12=
2
13-8=
5
8-0=
8
0-0=
0
1
1
DC1 DC2 PT PV1 PV2 PV3
DF
D
i
s
p
o
n
i

b
i
l
i
d
a
d

0-0=0 DC1
0 16 17 15 13 16 0 190

0-0=0 DC2
22 0 17 14 16 0 0 210

6-0=6 PT
9 8 6 B 12 8 8 0 400
400
Demandas 110 80 400 90 60 50 10
Paso 4: Actualizar la oferta y la demanda y volver al paso 1.
Penalizaciones
Penalizaciones

9-0=
9
8-0=
8
17-6=
11
14-12=
2
13-8=
5
8-0=
8
0-0=
0
1
1
DC1 DC2 PT PV1 PV2 PV3 DF
D
i
s
p
o
n
i

b
i
l
i
d
a
d

0-0=0 DC1
0 16 17 15
1
3

1
6

0 190

0-0=0 DC2
22 0 17 14 16 0 0 210

6-0=6 PT
9 8 6 B 12 8 8 0
400-400=
0
400
Demandas
110 80
400-400=
0
90 60 50
10

Volvemos a realizar todo el proceso. Recordemos que para que la tabla
resultante sea no degenerada, en caso de que la oferta y la demanda coincidan se tacha
solo una de ellas. La actualizacin de la oferta y la demanda s debe realizarse
normalmente. De esta forma la 2 asignacin ser:

Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 213 de 214

EJERCICIO: ( 1er. Problema del examen de Junio 2011)
El departamento de formacin de una empresa est elaborando el presupuesto
para el prximo ao. Las actividades se dividen en tres grupos en funcin del personal
al que van dirigidas. El costo de preparacin de las actividades, as como, el nmero
mnimo y mximo de cada tipo son:
Grupo G1 G2 G3
Costo 10 13 17
Mnimo 15 12 4
Mximo 20 15 10
a) Si se dispone de un total de 900 para las actividades del prximo ao. Cul
es la planificacin ptima de actividades?
b) La direccin de la empresa est interesada en saber que cambios producira en
la planificacin de actividades una reduccin en los costos de las actividades del grupo
3.
c) Por motivos organizativos se ha decido hacer la oferta formativa en mdulos
compuestos por 3 actividades. En estas condiciones, Cul debera ser la oferta
formativa?


Apuntes de clase Investigacin Operativa Ingeniera en Organizacin Industrial
Problemas de exmenes


Pgina 214 de 214

EJERCICIO: ( 2 Problema del examen de Junio 2011)
2. Una empresa de trabajo temporal ha preseleccionado a candidatos para cubrir
los contratos que le han sido solicitados desde sus sucursales. El nmero de candidatos
preseleccionados y el nmero de entrevistas solicitadas por cada empresa vienen dados
en la tabla siguiente. As mismo, se muestra la puntuacin obtenida en el test de
idoneidad de cada candidato para cubrir cada uno de los puestos ofertados.

Empresas
E1 E2 E3
Aspirantes
-
S1 8 15 10 40
S2 9 10 11 29
S3 14 13 11 49
Entrevistas= 27 31 21
a) Encontrar el reparto ptimo de los aspirantes para las entrevistas.
b) Un fallo en el sistema informtico de la sucursal 2 ha provocado puntuaciones
inferiores a las reales en 7 puntos. Cul sera el nuevo reparto ptimo?
c) La empresa de trabajo temporal tiene que desplazar a un tcnico a cada una de
las empresas que van a realizar las entrevistas por cada 30 aspirantes o fraccin. La
empresa puede desplazar un mximo de 2 tcnicos desde cada sucursal. Si los costos de
desplazamiento de los tcnicos vienen dados en la tabla:

Empresas
E1 E2 E3
S1 8 15 10
S2 9 10 11
S3 14 13 11
Cul es el reparto ptimo de los tcnicos?

Das könnte Ihnen auch gefallen