Está en la página 1de 131

N

P ROGRAMACI O
L INEAL
Noviembre 2012

Universidad Polit
ecnica de Madrid
Alvaro Garca S
anchez
Miguel Ortega Mier

Indice general

Indice general
1.

2.

A LA PROGRAMACION
LINEAL. TEOREMA
INTRODUCCION
DAMENTAL
1.1.
Introducci
on . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.1. Caracterizaci
on de soluciones . . . . . . . . . . . .
1.2.
Teorema Fundamental . . . . . . . . . . . . . . . . . . . . .
1.2.1. Enunciado . . . . . . . . . . . . . . . . . . . . . . . .
1.2.2. Demostraci
on . . . . . . . . . . . . . . . . . . . . . .
1.3.
Implicaciones del Teorema Fundamental . . . . . . . . . .
1.4.
Ejempo de aplicaci
on . . . . . . . . . . . . . . . . . . . . . .

FUN.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

3
3
4
4
4
5
6
7

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

11
11
13
14
14
15
15
18
20

MATRIZ COMPLETA
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .

23
23
24
24

FUNDAMENTOS DEL M
ETODO DEL SIMPLEX
2.1.
Introducci
on . . . . . . . . . . . . . . . .
2.2.
Regla de entrada . . . . . . . . . . . . . .
2.3.
Regla de salida . . . . . . . . . . . . . . .
2.4.
Criterio de optimalidad . . . . . . . . . .
2.5.
Ejemplo . . . . . . . . . . . . . . . . . . .
2.5.1. Primera iteraci
on . . . . . . . . .
2.5.2. Segunda iteraci
on . . . . . . . .
2.5.3. Tercera iteraci
on . . . . . . . . .

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

3.

M
ETODO DEL SIMPLEX.VARIANTE DE LA
3.1.
Introducci
on . . . . . . . . . . . . . .
3.2.
Variante de la matriz completa . . .
3.3.
Ejemplo . . . . . . . . . . . . . . . . .

4.

M
ETODOS DE LA M GRANDE Y DE LAS DOS FASES
4.1.
Introducci
on . . . . . . . . . . . . . . . . . . . .
4.2.
M
etodo de la M grande . . . . . . . . . . . . . .
4.3.
M
etodo de las 2 fases . . . . . . . . . . . . . . .
4.4.
Ejemplos . . . . . . . . . . . . . . . . . . . . . . .
4.4.1. M
etodo de la M grande . . . . . . . . .
4.4.2. M
etodo de las dos fases . . . . . . . .

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

25
25
26
28
30
30
31

Indice general

5.

6.

7.

8.

9.

INTERPRETACION
ECNICO-ECONOMICA
5.1.
Introducci
on . . . . . . . . . . . . . . .
5.1.1. Ejemplo de aplicaci
on . . . . .
5.2.
Tasas de sustituci
on . . . . . . . . . .
5.2.1. Discusi
on te
orica . . . . . . . .
5.2.2. Ejemplo de aplicaci
on . . . . .
5.3.
Multiplicadores del simplex . . . . . .
5.3.1. Discusi
on te
orica . . . . . . . .
5.3.2. Ejemplo de aplicaci
on . . . . .
5.4.
Criterios del simplex . . . . . . . . . .
5.4.1. Discusi
on te
orica . . . . . . . .
5.4.2. Ejemplo de aplicaci
on . . . . .
GRA
FICA
INTERPRETACION
6.1.
Introducci
on . . . . . . . . . . .
6.2.
Conceptos generales . . . . . .
6.3.
M
etodo del Simplex . . . . . . .
6.4.
M
etodo de las dos fases y de la
6.5.
M
etodo de Lemke . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

. . . . . . .
. . . . . . .
. . . . . . .
M grande
. . . . . . .

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

33
33
34
36
36
36
37
37
39
39
39
41

.
.
.
.
.

44
44
44
52
55
56

M
ETODO DEL LEMKE
7.1.
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.
Cu
ando es interesante el m
etodo de Lemke . . . . . . . . . . .
7.2.1. Problemas de mnimos con c 0 . . . . . . . . . . . . .
7.2.2. Al introducir un cambio en b, una vez obtenida la soluci
on
optima . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.3. Al a
nadir una restricci
on adicional a un programa, una
vez obtenida la soluci
on
optima . . . . . . . . . . . . .
7.3.
Reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3.1. Criterio de factibilidad . . . . . . . . . . . . . . . . . . .
7.3.2. Regla de supresi
on . . . . . . . . . . . . . . . . . . . . .
7.3.3. Regla de introducci
on . . . . . . . . . . . . . . . . . . . .
7.4.
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

57
57
58
58

CASOS ESPECIALES
8.1.
Introducci
on . . . . . . . . . . . . .

8.2.
Optimo
m
ultiple . . . . . . . . . . .
8.3.
Soluci
on degenerada . . . . . . . .
8.4.
Problema no factible . . . . . . . .
8.5.
Regi
on de factibilidad no acotada

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

64
64
64
66
67
69

POSTOPTIMIZACION
9.1.
Introduction . . .
9.2.
Cambio en b . . .
9.3.
Cambio en c . . . .
9.4.
Nueva actividad .
9.5.
Nueva restricci
on

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

73
73
73
74
75
75

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

60
61
61
61
61
62
62

Indice general

9.6.

Cambio en aij . . . . . . . . . . . . . . . .
9.6.1. Cambio en aij con xj no b
asica
9.6.2. Cambio en aij con xj b
asica . .
Ejemplo . . . . . . . . . . . . . . . . . . . .
9.7.1. Cambio de b . . . . . . . . . . . .
9.7.2. Cambio de c . . . . . . . . . . . . .
9.7.3. Nueva actividad . . . . . . . . . .
9.7.4. Nueva restricci
on . . . . . . . . .
9.7.5. An
alisis de sensibilidad de b . .
9.7.6. An
alisis de sensibilidad de c . .
La aparente paradoja de b . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

76
76
77
77
78
78
79
80
81
82
84

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

85
85
85
85
85
89
89
89
91

11. TRANSPORTE Y ASIGNACION


11.1. Presentaci
on del problema de transporte . . . . .
11.1.1. Introducci
on . . . . . . . . . . . . . . . . .
11.1.2. Formulaci
on . . . . . . . . . . . . . . . . . .
11.1.3. Presentaci
on matricial . . . . . . . . . . .
11.1.4. Representaci
on del problema . . . . . . .
11.1.5. Propiedades . . . . . . . . . . . . . . . . . .
11.2. M
etodos de resoluci
on . . . . . . . . . . . . . . . .
11.2.1. Obtenci
on del soluci
on inicial de partida
11.2.2. Regla de entrada. Stepping-stone . . . . .
11.2.3. Regla de entrada. MODI . . . . . . . . . . .
11.2.4. Regla de salida . . . . . . . . . . . . . . . .
11.2.5. Criterio de optimalidad . . . . . . . . . . .
11.3. Problemas desequilibrados . . . . . . . . . . . . .
11.3.1. Oferta superior a demanda . . . . . . . .
11.3.2. Demanda superior a oferta . . . . . . . .
11.4. Soluciones degeneradas . . . . . . . . . . . . . . .
11.5. Transporte y dualidad . . . . . . . . . . . . . . . .
11.6. Para pensar . . . . . . . . . . . . . . . . . . . . . . .
11.7. Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . .
11.8. El problema de asignaci
on . . . . . . . . . . . . . .
11.8.1. Introducci
on . . . . . . . . . . . . . . . . .
11.8.2. Representaci
on . . . . . . . . . . . . . . . .
11.8.3. Propiedades . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

96
96
96
96
97
98
98
99
100
100
100
101
101
101
101
101
101
102
103
103
104
104
104
105

9.7.

9.8.

PARAM
10. PROGRAMACION
ETRICA
10.1. Introducci
on . . . . . . . . .
10.2. Programaci
on con c() . . .
10.2.1. M
etodo general . . .
10.2.2. Ejemplo c() . . . .
10.3. Programaci
on con b() . . .
10.3.1. M
etodo general . . .
10.3.2. Ejemplo c() . . . .
10.4. Ejemplo c() y b() . . . . .

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

Indice general

11.8.4. M
etodo H
ungaro . . . . . . . . . . . . . . . . . . . . . . .

106

ENTERA. FUNDAMENTOS
12. PROGRAMACION
12.1. Divide y vencer
as . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.2. Enumeraci
on implcita . . . . . . . . . . . . . . . . . . . . . . . .
12.3. Branch and Bound: un ejemplo . . . . . . . . . . . . . . . . . . .

107
107
107
109

ENTERA. BRANCH AND BOUND


13. PROGRAMACION
13.1. Introducci
on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.2. Optimalidad y relajaci
on . . . . . . . . . . . . . . . . . . . . . . .

112
112
113

14. DUALIDAD
14.1. Introducci
on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14.2. Teora sobre dualidad . . . . . . . . . . . . . . . . . . . . . . . . .
14.2.1. El problema dual . . . . . . . . . . . . . . . . . . . . . . .
14.2.2. El dual del dual es el primal . . . . . . . . . . . . . . . .
14.2.3. Relaciones entre el problema primal y el problema
dual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14.2.4. La funci
on objetivo . . . . . . . . . . . . . . . . . . . . .
14.2.5. Teorema fundamental de la dualidad . . . . . . . . . .
14.2.6. Teorema de las holguras complementarias . . . . . . .
14.3. Interpretaci
on econ
omica de las variables duales en el
optimo
14.4. Algoritmo del simplex dual . . . . . . . . . . . . . . . . . . . . .

116
116
119
119
119
120
122
123
124
126
128

Captulo 1
A LA PROGRAMACION

INTRODUCCION
LINEAL. TEOREMA FUNDAMENTAL

1.1.

Introducci
on

Un problema de Programaci
on Lineal tiene la siguiente forma.
maz z =cx

(funci
on objetivo)

s.a:
Ax = b
x0

Forma general
de un problema

(restricciones funcionales)

(1.1)

(restricciones de no negatividad)

Matriz de coecientes t
ecnicos: A
matriz m n
m las - restricciones
n columnas - variables
Vector de disponibilidad de recursos: b
matriz m 1
tantos elementos como restricciones
Vector de contribuciones unitarias al benecio: c
matriz 1 n
tantos elementos como variables
Soluci
on del problema x
matriz n 1
Podra haber tres casos para la relaci
on entre y m y n:
1. m > n, tpicamente, soluci
on no factible. Sistema incompatible.
O el modelo est
a mal (por ejemplo, si se trata de un modelo de un
sistema que existe y que est
a en funcionamiento).
O no existe soluci
on factible.
nica. Sistema compatible deter2. m = n, tpicamente, soluci
on factible u
nica soluci
minado. Existe una u
on, con lo que no hay un problema de
decisi
on.

Dimensiones de
A, b, c y x

Relaci
on entre
myn

A LA PROGRAMACION
LINEAL. TEOREMA FUNDAMENTAL
Captulo 1. INTRODUCCION

3. n > m, tpicamente, innitas soluciones factibles. Sistema compatible


indeterminado. Innitas soluciones, el problema consiste en obtener la
mejor.

1.1.1.

Caracterizaci
on de soluciones

Un conjunto de valores x es una soluci


on del problema si cumple el sistema
de ecuaciones Ax = b

Soluci
on

Un conjunto de valores x es una soluci


on factible del problema si cumple el
sistema de ecuaciones Ax = b (es soluci
on) y cumple que x 0, es decir todos
los valores son no negativos.

Soluci
on factible

Una soluci
on x es linealmente independiente si las columnas de la matriz A
correspondientes a las variables con valor no nulo son linealmente independientes.

Soluci
on
linealmente
independiente

Una soluci
on x es linealmente dependiente si las columnas de la matriz A correspondientes a las variables con valor no nulo son linealmente dependientes.

Soluci
on
linealmente
dependiente

Dado que en un problema de programaci


on lineal n > m, si el rango de la
matriz A es m:

Caractersiticas
de las soluciones
linealmente
independientes

el n
umero m
aximo de componentes no nulas de una soluci
on linealmente independiente es, m y
el n
umero mnimo de componentes no nulas de una soluci
on linealmente dependiente tpicamente es m + 1 1

1.2.

Teorema Fundamental

1.2.1.

Enunciado

Dado un problema de programaci


on lineal:
Si existe una soluci
on factible, existe una soluci
on linealmente independiente factible y
nica, esta es una soluci
si la soluci
on
optima es u
on linealmente independiente; si la soluci
on
optima es m
ultiple, al menos existe una soluci
on
linealmente independiente
optima.
1 Esto es as
siempre cuando el rango de todas las matrices de m columnas de A es m. Si existiera una submatriz dentro de A con menos de m columnas linealmente dependientes, podra
existir una soluci
on linealmente dependiente con menos de m componentes.

Enunciado

A LA PROGRAMACION
LINEAL. TEOREMA FUNDAMENTAL
Captulo 1. INTRODUCCION

1.2.2.

Demostraci
on

Si se demuestra que dada una soluci


on linealmente dependiente x 0 de un problema de programaci
on lineal, basta con que el problema est
e acotado para
que exista una soluci
on linealmente independiente x tal que cx cx 0 , queda
demostrado el teorema, ya que:
1. se demostrara que existe una soluci
on linealmente independiente y
2. si para cualquier dependiente, siempre es posible encontrar otra linealnica
mente independiente no peor, de haber una u
optima es linealmente
independiente y, si hay varias, al menos una es linealmente independiente. En este segundo caso, si se conoce que alguna de las soluciones
optimas es linealmente independiente, quedara demostrado. Si no, alguna
de las soluciones
optimas sera linealmente dependiente, por aplicaci
on
del enunciado, sera posible encontrar otra linealmente independiente no
peor, y como la soluci
on linealmente dependiente es
optima existira al
menos una soluci
on linealmente independiente tambi
en
optima.
En el primer enunciado del Teorema Fundamente, se entiende implcitamente,
que el problema considerado est
a actado. En efecto, si el problema no est
a acotado, entonces no existe una soluci
on
optima. Al contrario, si el problema
s est
a acotado, existe al menos una soluci
on
optima.
Se trata de una demostraci
on constructiva, partiendo de la soluci
on x 0 . Como
0
x es una soluci
on linealmente dependiente se puede encontrar un vector y,
con las siguientes propiedades:

Propiedades de
x0

Ay = 0 y
yi = 0 si xi = 0
cy 0 (si no es as, basta con cambiar de signo a y).
A partir de x 0 se puede construir una nueva soluci
on x 1 :
x 1 = x 0 + ty

(con t 0)

Una nueva
soluci
on x 1
(1.2)

Efectivamente, es soluci
on:
Ax 1 = A(x 0 + ty) = Ax 0 + tAy = b + t0 = b

(1.3)

z1 = cx 1 = c(x 0 + ty) = cx 0 + tcy = z0 + tcy

(1.4)

Dado que cy 0, siempre se cupmle z1 z0 .

x 1 no es peor
que x 0

A LA PROGRAMACION
LINEAL. TEOREMA FUNDAMENTAL
Captulo 1. INTRODUCCION

Los valores de las variables de la nueva soluci


on son:

xi1 = xi0 + tyi

Una
componente
nula m
as
(1.5)

Se puede dar un valor a t de manera que ninguna variable tenga valor negativo
y que tenga una componente nula m
as que x 0 .
t = min{i/yi 0}

xi0
yi

x 1 no es peor
que x 0

(1.6)

Examinando de forma exhaustiva los casos que se pueden dar, la discusi


on
completa es la siguiente.

Discusi
on
completa

Si cy = 0 siempre se puede encontrar t (, ) tal que x 1 tenga una


componente nula m
as que x 0 . En este caso:
1
x es factible
cx 1 = cx 0
x 1 tiene una componente nula m
as
Si cy > 0
x1

on no peor
Si yi < 0, con t = min{i/yi 0} yii se obtiene una soluci
con una componente nula m
as.
Si yi > 0 el problema no est
a acotado, el valor de la funci
on objetivo pude ser tan grande como se desee.
En t
erminos de Ingeniera de Organizaci
on, los problemas no acotados no tienen sentido.

Problemas no
acotados

Al llegar a una linealmente independiente, ya no se puede iterar, porque no


existe y que cumpla 1.2.2. Por supuesto, por otro lado, se habra encontrado
la soluci
on linealmente independiente deseada.

Iterando

1.3.

Implicaciones del Teorema Fundamental

De acuerdo con lo que se sigue del teorema fundamental, siempre existe una
soluci
on
optima dentro del conjunto de todas las soluciones linealmente independientes.

D
onde buscar

Una forma de resolver un problema de Programaci


on Lineal es la siguiente:

Enumeraci
on
explcita

1. Resolver todos los sistemas de ecuaciones correspondientes a todas las


soluciones linealmente independientes.
2. Descartar las no factibles
3. Escoger la que tenga mayor valor de la funci
on ojetivo

A LA PROGRAMACION
LINEAL. TEOREMA FUNDAMENTAL
Captulo 1. INTRODUCCION

Ecaz, pero poco eciente.

El problema


Con m restricciones y n variables, existen

n
m


=

n!
m!(nm)!

Tiempos de resoluci
on en a
nos supondiendo que cada sistema se resuelve en
106 segundos.
N variables
N restricciones
N sol. B
asicas
Tiempo res. (a
nos)

1.4.

10
4
210

100
40
1.37462E+28
4.3589E+14

1000
400
4.9653E+290
1.5745E+277

Ejempo de aplicaci
on
maz z =4x1 + 4x2 + 6x3 + 8x4
2x1 + 3x2 + 3x3 + 6x4 + x5 = 400
1x1 + 2x2 + 6x3 + 3x4 + x6 = 200

(1.7)

5x1 + 5x2 + 5x3 + 5x4 + x7 = 10000

Soluci
on inicial: x 0 = (0, 4, 14, 36, 130, 0, 9370)T , z0 = 388. Se trata de una
soluci
on porque se cumple Ax = b. Efectivamente, se puede comprobar que:

400
2 3 3 6 1 0 0
14

(1.8)
Ax 0 = 1 2 6 3 0 1 0 36 = 200

1000
5 5 5 5 0 0 1
130

0
9370
Como las columnas correspondientes a componentes no negativas de x son
linealmente dependientes, se pueden encontrar varlores de y2 , y3 , y4 , y5 y y7
no todos ellos nulos que cumplan:

3
3
6
1
0

y2 2 + y3 6 + y4 3 + y5 0 + y7 0 =
5
5
5
0
1
(1.9)

= 0
0
O lo que es equivalente:

Ejemplo
num
erico

10

A LA PROGRAMACION
LINEAL. TEOREMA FUNDAMENTAL
Captulo 1. INTRODUCCION

0
3
3
6
1
0
2

0 1 + y2 2 + y3 6 + y4 3 + y5 0 + 0 1 + y7 0 =
0
5
5
5
0
1
5

= 0
0

(1.10)
Es decir, es posible encontrar y que cumple Ay = 0, con yi = 0 si xi = 0
Un posible vector y es y = (0, 0,1, 0,567, 1,067, 5, 0, 3)T , con el que es
posible construir una nueva soluci
on x 1

1
0
x = x + ty =

0
4
14
36
130
0
9370

+t

0
0,1
0,567
1,067
5
0
3

Primera
iteraci
on

La nueva
soluci
on

(1.11)

Se puede comprobar que AX 1 = b. En efecto:

x 1 es soluci
on

Ax = A(x + ty) = 1
5
1

+t 1
5

3
2
5

3
6
5

6
3
5

1
0
0

0
1
0

0
0,1
0,567
1,067
5
0
3

3
2
5

3
6
5

6
3
5

1
0
0

0
1
0

0
4
14
36
130
0
9370

400
0
400


= 200 + 0 = 200

1000
0
1000

(1.12)

Se puede comprobar que cy 0

x 1 no peor que
x0

11

A LA PROGRAMACION
LINEAL. TEOREMA FUNDAMENTAL
Captulo 1. INTRODUCCION

0,1

0,567

0 1,067 = 5,534

cy =

(1.13)

x 1 no peor que
De no ser as, bastara con cambiar el signo a y y todo lo anterior sera cierto.
1
Dado que cy > 0, el valor de la funci
on de objetivo de x es mayor que la de
x0
0
x en una cantidad igual a cy

cx 1 = c x 0 + tcy) =

0
0

4
0,1

0,567
14

4 4 6 8 0 0 0 36 + t 4 4 6 8 0 0 0 1,067 =

130
5

0
3
9370
388 + 24,56 5,534
(1.14)
Dado que s
olo y3 , y5 e y7 son negativas, solo es posible que las componentes
x3 , x5 y x7 se hagan nulas con t > 0. En particular, los valores que hacen
14
9730
respectivamente 0 cada una de esas componentes de x 1 son 0,57
, 130
5 y
3 .
En menor valor de los anteriores hace que una componente, x3 , se haga nula y
no se haga negativa ninguna de las otras dos.


14 130 9730
t = min
,
,
= 24,56
(1.15)
0,57 5
3
La nueva soluci
on es:

1
x =

0
4
14
36
130
0
9370)

0
0

6,47

0,1

0,567

+ 24,56 1,067 = 62,35


6,55

0
0

9655,93
3

(1.16)

12

A LA PROGRAMACION
LINEAL. TEOREMA FUNDAMENTAL
Captulo 1. INTRODUCCION

z1 = 524,68
y = (0, 4,2, 0, 2,8, 4,2, 0, 7)T
t = min{ 6,47
4,2 ,

6,54
4,2

= 1,54

x 2 = (0, 0, 0, 66,66, 0,07, 0, 9666,71)T


z2 = 533,38

Segunda
iteraci
on

13

Captulo 2
FUNDAMENTOS DEL M
ETODO DEL SIMPLEX

2.1.

Introducci
on

Dado un problema de Programaci


on Lineal

Soluci
on b
asica

maz z =cx
s.a:
Ax = b

(2.1)

x0
donde A es una matriz m n, con n > m y rang(A) = m:
Se dene:
Base B como un conjunto de m columnas de A linealmente independientes.
Soluci
on b
asica correspondiente a la base B, valores de x resultantes de
resolver el sistema de ecuaciones Ax = b anulando todas las variables
correspondientes a columnas diferentes de las de B. Una soluci
on b
asica:
es linealmente independiente y
como m
aximo, tiene m componentes no nulas, tantas como restricciones.
En lo que sigue identicaremos:
soluci
on b
asica con soluci
on linealmente independiente. 1
soluci
on no b
asica con soluci
on linealmente dependiente.
Adem
as:
una soluci
on b
asica tiene como m
aximo m componentes no nulas y
1 En

efecto. Por la propia denici


on, una soluci
on b
asica es linealmente independiente. Por
otro lado, cualquier soluci
on linealmente independiente con m componentes no nulas es b
asica. Y cualquier soluci
on linealmente independiente con menos de p < m componenetes nulas
tambi
en es b
asica por la siguiente raz
on. Si tomamos la matriz con las p columnas de las variables no nulas, siempre podemos a
nadir otras m p columnas de variables para que formen una
base (el rango de A es m y esto siempre es posible. Haciendo eso obtendramos una soluci
on
b
asica con p varuables b
asicas no nulas y m p variables b
asicas nulas, lo que se conoce como
soluci
on degenerada.

TODO DEL SIMPLEX


Captulo 2. FUNDAMENTOS DEL ME

15

una soluci
on no b
asica tiene, tpicamente, al menos m + 1 componentes
no nulas2 .
Dada una soluci
on b
asica, con base B, hay dos tipos de variables:
Variable b
asica: cada una de las variables correspondientes a las columnas de B, que son pontencialmenete no nulas.
Variable no b
asica: cada una de las variables correspondientes a las columnas de A no incluidas en B, que son siempre nulas.
Podemos expresar las restricciones Ax = b como:
BuB + A(B) x (B) = b

Nivel de
realizaci
on
(2.2)

Donde
uB es el nivel de realizaci
on de las actividades b
asicas (valor de las variables b
asicas).
x (B) representa las variables no b
asicas, que son nulas por denici
on.
A(B) es el conjunto de columnas de las actividades no b
asicas.
c B es un vector la con los elmentos de c correspondientes a las variables
b
asicas
z = cx = c B uB + c (B) x (B)

Vector c B

(2.3)

Donde c (B) es el vector la de las contribuciones unitarias al benecio de las


variables no b
asicas.
Precios sombra
B

El vector de multiplicadores del simplex o precios sombra:


B = c B B 1

(2.4)
Criterio del
Simplex, V B

El vector de criterios del Simplex:


V B = c c B B 1 A

(2.5)

V B es un vector la de n 1. El criterio del simplex de la variable xk es VkB =


ck c B B 1 Ak , y es un escalar.
Tasas de
sustituci
on, p B

El vector de tasas de sustituci


on de las variables b
asicas:
p B = B 1 A

(2.6)

2 Podr
a ocurrir que m columnas de A sean linealmente dependientes, de forma que el sistema
de ecuaciones corrrespondiente fuera compatible indeterminado. Podran existir soluciones no
b
asicas con m componentes no nulas

TODO DEL SIMPLEX


Captulo 2. FUNDAMENTOS DEL ME

16

p es una matriz m n. Las tasas de sustituci


on de las variables b
asicas con
respecto a la variable xk es p B = B 1 Ak , que es un vector columna m 1.

Figura 2.1: L
ogica del m
etodo del Simplex

1.
2.
3.
4.

2.2.

Una soluci
on b
asica factible de partida;
Un criterio de optimalidad;
Una regla de entrada; y
Una regla de salida.

Lo que
necesitamos

Regla de entrada

Dada una soluci


on b
asica B, si la variable xk es no b
asica, interesa introducirla
en la base si se cumple:
VkB = ck c B B 1 Ak > 0

(2.7)

Dada una base B, se cumple Ax = b o, lo que es lo mismo, dado que todas


las variables no b
asicas son nulas: BuB = b. Si introducimos la variable xk con
nivel de realizaci
on t, la expresi
on se convierte en:
BuB (t) + tAk = b

(2.8)

Es decir, como xk = t 0, los valores originales de las variables b


asicas (uB )
cambian en funci
on del valor de la variable xk = t, y por esto la notaci
on uB (t).
Despejando:
uB (t) = B 1 b tB 1 Ak = uB tpkB

Enunciado

(2.9)

Si entra xk
cambia el valor
de las variables
b
asicas

TODO DEL SIMPLEX


Captulo 2. FUNDAMENTOS DEL ME

El valor de z al introducir la nueva variable es:


z = cx(t) = c B uB (t) + tck = c B (B 1 b tB 1 Ak ) + tck =
c B B 1 b + t(ck c B B 1 Ak ) = z + tVkB

(2.10)

Por lo tanto, si VkB es positivo, la nueva funci


on objetivo es mayor. En concreto,
V B representa el incremento unitario de la funci
on objetivo al introducir xk .

VkB = zxk =1

2.3.

17

Si entra xk
cambia el valor
de z

Intepretaci
on de
VB

(2.11)

Regla de salida

Si a partir de una soluci


on b
asica de base B entra la variable xk en la base,
la variable que debe salir de la base es aquella variable es la i-
esima, y que
cumple:

uB
uBi
j
= min pB >0
(2.12)
pB
jk
pB
ik

Enunciado

jk

uB (t) = uB tpkB uBk (t) = uB t

uBk
B
pjk

(2.13)

B
pjk
representa cu
anto disminuye el valor de la j-
esima variable b
asica cuando
se introduce la variable no b
asica k con valor igual a 1.

Interpretaci
on
de p B

Si pjB k > 0, la j-
esima variable b
asica disminuye al introducir xk
Si pjB k < 0, la j-
esima variable b
asica aumenta al introducir xk
Si pjB k = 0, la j-
esima variable b
asica no se modica al introducir xk

2.4.

Criterio de optimalidad

Una soluci
on es
optima si V B 0, es decir, VjB 0 j
En efecto, si VjB 0j, la introducci
on de una variable no b
asica en la base
dara lugar a un incremento negativo de la funci
on objetivo. Con lo que no hay
posiblidad de mejora; la soluci
on es
optima.

Enunciado

TODO DEL SIMPLEX


Captulo 2. FUNDAMENTOS DEL ME

18

Otra forma de justicarlo es la siguiente. Dada una soluci


on b
asica con base B:

V B 0 c c B B 1 A 0

(2.14)

Dada cualquier soluci


on x, se pueden multiplicar por la derecha los t
erminos
de la expresi
on anterior y operar:

cx c B B 1 Ax = z c B B 1 b = z c B uB = z zB 0 zB z

2.5.

(2.15)

Ejemplo
El problema

max. z =1x1 + 2x2 + 3x3


1x1 + 2x2 + 1x3 + x4 = 16
3x1 2x2 + 2x3 + x5 = 26

(2.16)

1x1 + 0x2 + 2x3 + x6 = 24


xi 0, i = 1 6

2.5.1.

Primera iteraci
on

No hacer nada. Variables b


asicas: variables de holgura.

Soluci
on inicial

Las columnas de las variables b


asicas.

La base

B1 = (A5 A6 A7 ) = 0
0

0
1
0

0
1

(2.17)

En este caso, la inversa de la base es la identidad tambi


en, pero solo en este
caso.

B11

= 0
0

0
1
0

0
1

(2.18)

La inversa de la
base

TODO DEL SIMPLEX


Captulo 2. FUNDAMENTOS DEL ME

En este caso, el nivel de realizaci


on coincide con b, pero solo en este caso.

uB1

= B11 b = 0
0

0
16
16

0 26 = 26
1
24
24

0
1
0

zB1 = cx 1 = c B1 uB1 =

La funci
on
objetivo

16

26 = 0
24

(2.20)

En este caso, las tasas de sustituci


on coinciden con la matriz de coecientes
t
ecnicos, pero solo en este caso.

p B1

1
= B1 A = 0
0

0
1
0

0
1

0 3
1
1

2
2
0

3
1

1
2
2

2
2
0

1
0
0
1
2
2

0
1
0
1
0
0

0 =
1

0 0

1 0
0 1

1
2
2
0
1

2
1
2
2
2

c B1

(2.22)

El criterio del Simplex es igual a c, pero s


olo en este caso.

V B1 = c c B1 B 1 A =

1
1 0 0

0 0 1 0 3
0 0 1
1

Las tasas de
sustituci
on

(2.21)

Las componentes de c B1 son las componentes de c de las variables b


asicas.

c B1 =

El nivel de
realizaci
on de
las variables
b
asicas

(2.19)

La funci
on objetivo se puede calcular de la siguiente manera:

19

3
1
0
0
3

0
0
1
0
0

El criterio del
Simplex
0

0 =
1

0 0

(2.23)

TODO DEL SIMPLEX


Captulo 2. FUNDAMENTOS DEL ME

20

Aquella de las no b
asicas con criterio del Simplex positivo y, de entre ellas, la
mayor. En este caso, la variable de entrada es x3 .

Variable de
entrada

Las tasas de sustituci


on de la variable x3 con respecto a las variables b
asicas
B
son p3 1

Variable de
salida

p3 1

= B 1 A3 = 0
0

0
1
0

0
1
1

0 2 = 2
1
2
2

(2.24)

Las variables candidatas a salir de la base son aquellas que tienen tasa de
asicas. Aquella
sutituci
on postiva con respecto a x3 , que son las tres variables b
que sale es aquella correspondiente al menor cociente de
t de la variable de entrada:

t = min

16 26 24
,
,
1 2 2

uBi
B

p3i1

, que ser
a el valor


= 12

(2.25)

Los valores de las variables b


asicas de la primera base cambian al introducir
x3

uB1 (t) = uB1 tp3 1

16
1

= 26 t 2
24
2

Nuevos valores
de las variables
b
asicas

(2.26)

Como sabemos que t = 12

16
1
4

uB1 (12) = 26 12 2 = 2
24
2
0

(2.27)

on de las tres variaEs decir, al introducir x3 en la base, los niveles de realizaci


bles b
asicas disminuyen y la primera que se anula es x6 cuando x3 = 12
A partir de la primera base, que no es
optima:

Resumen
B

interesa introducir x3 , cuyo criterio del simplex es V3 1 = 3 y


y que entre con valor x3 = 12
para que salga de la base x6
B
y que la funci
on objetivo se incremente en tV3 1 = 12 3 = 36

TODO DEL SIMPLEX


Captulo 2. FUNDAMENTOS DEL ME

2.5.2.

21

Segunda iteraci
on

Hacer solo 12 unidades de producto P3 y nada del resto. Variables b


asicas: x4 ,
x5 y x3 .

Soluci
on inicial

Las columnas de las variables b


asicas.

La base

B2 = 0
0

2
2

0
1
0

(2.28)

En este caso, la inversa de la base ya no es la identidad.

=
0
0

B21

La inversa de la
base

12

0
1
0

(2.29)

1
2

En este caso, el nivel de realizaci


on no coincide con b.

uB2

B2

0
= B21 b =

B2

B2

= cx = c u

12
16
4

1
26 = 2
1
24
12
2

0
1
0

2 = 36
12

(2.30)

(2.31)

El nivel de
realizaci
on de
las variables
b
asicas

La funci
on
objetivo

En efecto, como esper


abamos z2 = z1 + x3 V3 1 = 0 + 36 = 36
En este caso, las tasas de sustituci
on no coinciden con la matriz de coecientes
t
ecnicos.

p B2

0
= B21 A =

0
1
0

12
1

1
3
1
1
2

2
2

1
2

2
2
0

1
2
2

1
0
0

2
2
0

0
0
1

1
0
0

0 =
1

0 12

1 1

1
0
2

0
1
0

(2.32)

Las tasas de
sustituci
on

TODO DEL SIMPLEX


Captulo 2. FUNDAMENTOS DEL ME

Las componentes de c B2 son las componentes de c de las variables b


asicas.

c B2 =

El criterio del
Simplex

V B2 = c c B2 B21 A =

1
1 0 2 1

3
0 1 1 3
1
1
0 0
2

c B2

(2.33)

El criterio del Simplex es el siguiente.

22

1
2
2
0

2
1
2
2

3
1
0
0

0
1
0

0 =
1


1 2 3 0 0 0

1
2
0 1 0 21
2

2 2 0 0 1 1

1
1
0
1 0 0
2
2

21 2 0 0 0 32

(2.34)

Aquella de las no b
asicas con criterio del Simplex positivo y, de entre ellas, la
mayor. En este caso, la variable de entrada es x2 .

Variable de
entrada

Las tasas de sustituci


on de la variable x2 con respecto a las variables b
asicas
B
son p2 2

Variable de
salida

p2 2

0
= B21 A2 =

0
1
0

12
2
2

1
2 = 2
1
0
0
2

(2.35)

Las variables candidatas a salir de la base son aquellas que tienen tasa de
sutituci
on postiva con respecto a x2 , que son la variables b
asica x4 . Aquela
que sale es aquella correspondiente al menor cociente de
t de la variable de entrada:

t=

4
=2
2

uBi
B

p2i2

, que ser
a el valor

(2.36)

TODO DEL SIMPLEX


Captulo 2. FUNDAMENTOS DEL ME

Los valores de las variables b


asicas de la primera base cambian al introducir
x3

Nuevos valores
de las variables
b
asicas

uB2 (t) = uB2

B
tp2 2

4
2

= 2 t 2
12
0

23

(2.37)

Como sabemos que t = 2

4
2
0

uB2 (2) = 2 2 2 = 6
12
0
12

(2.38)

on solo x4 disminuEs decir, al introducir x2 en la base, los niveles de realizaci


ye y, en particular, se hace cero cuando x2 = 2
A partir de la segunda base, que no es
optima:

Resumen
B

interesa introducir x2 , cuyo criterio del simplex es V2 2 = 2 y


y que entre con valor x3 = 2
para que salga de la base x4
B
y que la funci
on objetivo se incremente en tV2 2 = 2 2 = 4

2.5.3.

Tercera iteraci
on

Hacer solo 12 unidades de producto P3 y cuatro de P2 . Variables b


asicas: x2 ,
x5 y x3 .

Soluci
on inicial

Las columnas de las variables b


asicas.

La base

B3 = 2
0

0
1
0

2
2

(2.39)

En este caso, la inversa de la base ya no es la identidad.

B31

2
=
1
0

0
1
0

14

32

1
2

La inversa de la
base

(2.40)

TODO DEL SIMPLEX


Captulo 2. FUNDAMENTOS DEL ME

En este caso, el nivel de realizaci


on no coincide con b.

1
2

uB3 = B31 b =
1
0

14
16
2

32
26 = 6
1
24
12
2

0
1
0

zB3 = cx 3 = c B3 uB3 =

6 = 40
12

24

El nivel de
realizaci
on de
las variables
b
asicas
(2.41)

(2.42)

La funci
on
objetivo

En efecto, como esper


abamos z3 = z2 + x2 V2 2 = 36 + 2 2 = 40
En este caso, las tasas de sustituci
on son las siguientes.

p B3

2
= B31 A =
1
0

0
1
0

14
1

32

3
1
1
2

1
4
5
2
1
2

2
2
0

1
2
2

1
0
0

1
0
0

0
0
1

1
2

1
0

Las tasas de
sustituci
on

0 =
1

0 14

1 32

1
0
2

0
1
0

(2.43)

Las componentes de c B3 son las componentes de c de las variables b


asicas.

c B3 =

(2.44)

El criterio del Simplex es el siguiente.


V B3 = c c B3 B 1 A = 1 2 3 0 0 0

1
1
2
1 1 0 0
2 0 4 1

3
3
1 1 2 3 2 2 0 1 0 =
1
1
0
2 0 0 1
0 0
2


= 1 0 0 1 0 1

c B3

El criterio del
Simplex

(2.45)

TODO DEL SIMPLEX


Captulo 2. FUNDAMENTOS DEL ME

La soluci
on de la base B3 es
optima, ya que V B3 0

25

La soluci
on es
ptima
o

Captulo 3
M
ETODO DEL SIMPLEX.VARIANTE DE LA
MATRIZ COMPLETA

3.1.

Introducci
on

(B|A)

oper andopor f ilas

I|B 1

(3.2)

Operar por las una matriz es id


entico a premultipilcar por una matriz
En 3.3, la matriz A
se puede obtener a patir de la matriz A de la siguiente
manera.
F 1
= 2 F 1
F 2
= F 2 + F 1
= F 2 + 2 F 1
F 3
= F 3

1 1 3

1
0
A= 2
0
4
1

A = 4
0

Es posible encontrar una matriz M, tal que

2 0

M = 2 1
0 0

2
1
4

6
1

MA = B

0
1

(3.3)

(3.4)

En 3.2, la matriz por la que estamos multiplicando tanto B como A es B 1


Podemos ampliar el conjunto de matrices con el que operamos por las


oper andopor f ilas

uB |p B |I|B 1 |
(3.5)
(b|A|B|I)
Finalmente:

(3.6)

0
b

c
A

cB
B

0
I


-

z
uB

VB
pB

0
I

B
B 1

TODO DEL SIMPLEX.VARIANTE DE LA MATRIZ COMPLETA


Captulo 3. ME

3.2.

27

Variante de la matriz completa

Figura 3.1: L
ogica del m
etodo del Simplex

3.3.

Ejemplo

El siguiente problema es el mismo que el del ejemplo disponible en 2.5, resuelto mediante el m
etodo del simplex, en su variante de la matriz completa.
maz z =1x1 + 2x2 + 3x3

El problema

1x1 + 2x2 + 1x3 + x4 = 16


3x1 2x2 + 2x3 + x5 = 26
1x1 + 0x2 + 2x3 + x6 = 24
xi 0, i = 1 6
0
16
26
24

x1
1
1
3
1

x2
2
1
-2
0

x3
3
1
2
2

x4
0
1
0
0

x5
0
0
1
0

x6
0
0
0
1

F0
F1
F2
F3

x4
x5
x6

0
16
26
24

1
1
3
1

2
1
-2
0

3
1
2
2

0
1
0
0

0
0
1
0

0
0
0
1

F0

F1

F2

F3

= F0
= F1
= F2
= F3

21

x4
x5
x3

-36
4
2
12

2
2
-2
0

0
0
0
1

0
1
0
0

0
0
1
0

32
12
-1

F0

F1

F2

F3

= F0
3F3

= F1
F3

= F2
2F3

= F3
/2

-1

0
1
0
0

0
0
0
1

-1

x2
x5
x3

-40
2
6
12

0
0
1
0

-1
14
32

F0

F1

F2

F3

= F0

2F1

= F1

/2
= F2

+ 2F1

= F3

1
2

2
1
2

1
4
5
2
1
2

1
2

1
0

1
2

1
2

(3.7)

Captulo 4
M
ETODOS DE LA M GRANDE Y DE LAS DOS
FASES

4.1.

Introducci
on

Para aplicar el m
etodo del Simplex es necesario disponer de una soluci
on
b
asica factible de partida del sistema Ax = b a partir de la cual iterar.

Por qu
e estos
m
etodos

Cuando todas las restricciones son con t


ermino independiente no negativo,
es decir, de la forma:

Soluci
on inicial
sencilla

aij xj bi

bi 0

(4.1)

todas se pueden expresar como:




aij xj + hi = bi

bi 0

(4.2)

En este caso existe una soluci


on de partida b
asica factible inicial trivial, con las
variables de holgura como variables b
asicas. Para esta soluci
on:
La base es igual a la matriz identidad, B = I.
uB = b, es decir el valor de cada variables b
asicas, correspondiente a
una variable de holgura es igual al valor de la disponibilidad del recurso
correspondiente.
z = 0.
V B = c.
pB = A
cB = 0
B = 0

Soluci
on inicial
trivial

TODOS DE LA M GRANDE Y DE LAS DOS FASES


Captulo 4. ME

Si existe alguna restricci


on de tipo , se puede convertir en una igualdad
a
nadiendo una variable de holgura con coeciente 1:



aij xj bi

bi 0

aij xj hi = bi

bi 0

29

Restricciones

(4.3)

Si existe alguna restricci


on de tipo =, no es necesario introducir ninguna variable de holgura:


aij xj = bi

Restricciones =

(4.4)

Si existen restricciones de tipo o =, al convertirlas en restricciones en t


erminos de igualdad, no es tan sencillo obtener una soluci
on de partida trivial.

4.2.

M
etodo de la M grande

Dado un problema de Programaci


on Lineal P :


Problema
original, P y
problema
auxiliar P

aij xj bi

ai
j xj bi

(4.5)
ai

j xj = bi

xj 0
Es posible convertirlo en un problema en donde las restricciones respondan a
la forma de Ax = b:


j

max. z = cx
aij xj + hi = bi

ai
j xj hi
= bi

ai

j xj = bi

xj , hi , hi
0

(4.6)

TODOS DE LA M GRANDE Y DE LAS DOS FASES


Captulo 4. ME

30

Se puede denir un problema P


de la forma:
max. z
= cx M


i



j

ai
M

ai

aij xj + hi = bi

ai
j xj hi
+ ai
= bi

(4.7)

ai

j xj + ai

= bi

xj , hi , hi
, ai
, ai

0
Donde M es un n
umero sucientemente grande y las variables ai
y ai

se
denominan variables articiales.
Cualquier soluci
on factible de P es soluci
on factible de P
.

Una soluci
on factible de P lo es tambi
en de P si todas las variables articiales son simult
aneamente cero.
Si no existe ninguna soluci
on factible de P
con todas las variables articiales simult
aneamente nulas, no existe soluci
on factible de P .
Si para cualquier soluci
on
optima de P
, siempre una variable articial
toma un valor no nulo, P no tiene soluci
on factible.
Siempre es posible encontrar una soluci
on b
asica factible de partida de
P

1. Dado P construir P

2. Resolver P
:
a) Si al resolver P
mediante el m
etodo del simplex se obtiene una
soluci
on b
asica factible de P
en la que todas la variables articiales
son nulas, esa es una soluci
o b
asica de partida del problema P ,
que puede servir de soluci
on de partida para aplicar el m
etodo del
Simplex en la resoluci
on de P .
b) Si para cualquier soluci
on
optima de P
, siempre al menos una variable articial toma un valor no nulo, P no tiene soluci
on factible.
P y P
solo se diferencian en que P
tiene un conjunto de actividades adicionales (las cticias), lo cual es traduce en
tantas componentes de c adicionales como variables articiales (con valor nulo) y
tantas columnas en A adicionales como variables articiales (columnas
de la matriz identidad).
Salvo por esas columnas c, A, b y x son id
enticos para los dos problemas

propiedades de
P

M
etodo de
resoluci
on

Relaci
on entre P
y P

TODOS DE LA M GRANDE Y DE LAS DOS FASES


Captulo 4. ME

31

Cuando se obtiene una soluci


on b
asica de P
en la que las variables articiales
no est
an en la base:

B = B
, c B = c B , uB = uB , por lo que:

VB = VB

pB = pB

uB = uB

zB = zB
Es decir, la tabla obtenida en la resoluci
on de P
es completamente id
entica a la
correspondiente a P , salvo por las columnas correspondientes a las variables
articiales.
Las columnas auxiliares de las variables correspondientes a las variables articiales permiten disponer, en todo momento, de parte de las columnas de la
inversa de la base.

4.3.

Las columnas
de las variables
articiales

M
etodo de las 2 fases

El m
etodo de las dos fases se apoya, igualmente, en un problema auxiliar P
,
igual que el de la M salvo en la funci
on objetivo. Esta funci
on es la suma de las

variables articiales con coeciente 1. Es decir, P tiene la forma:


max. z
=


j


i

ai

ai

aij xj + hi = bi

ai
j xj hi
+ ai
= bi

(4.8)

ai

j xj + ai

= bi

xj , hi , hi
, ai
, ai

0
Las propiedades del problema P
son las siguientes:
Cualquier soluci
on factible de P es soluci
on factible de P
.

Una soluci
on factible de P lo es tambi
en de P si todas las variables articiales son simult
aneamente cero.
Si no existe ninguna soluci
on factible de P
con todas las variables articiales simult
aneamente nulas, no existe soluci
on factible de P .
Si para cualquier soluci
on
optima de P
, siempre una variable articial
toma un valor no nulo, P no tiene soluci
on factible.
Siempre es posible encontrar una soluci
on b
asica factible de partida de
P

propiedades de
P

TODOS DE LA M GRANDE Y DE LAS DOS FASES


Captulo 4. ME

1. Dado P construir P

2. Resolver P
:
a) Si al resolver P
mediante el m
etodo del simplex se obtiene una
soluci
on b
asica factible de P
en la que todas la variables articiales
son nulas, esa es una soluci
on b
asica de partida del problema P ,
que puede servir de soluci
on de partida para aplicar el m
etodo del
Simplex en la resoluci
on de P .
b) Si para cualquier soluci
on
optima de P
, siempre al menos una variable articial toma un valor no nulo, P no tiene soluci
on factible.
Los problemas P y P
se diferencian en lo siguiente:
que P
tiene un conjunto de actividades adicionales (las cticias) y
que las contribuciones unitarias al benecio, c y c
son diferentes.
Los problemas P y P
comparten:
el vector de disponibilidad de los recursos b = b
y
la matriz de coecientes t
ecnicos de las variables no articiales Ai = A
i
si xi no es una variable articial.
Dada una soluci
on b
asica factible de P
en la ninguna variables b
asica es articial las bases de dicha soluci
on es com
un para P y P

32

M
etodo de
resoluci
on

Diferencias
entre P y P

Analogas entre
P y P

Relaci
on entre
bases

Cuando se obtiene una soluci


on b
asica de P
en la que las variables articiales
no est
an en la base, los siguientes elementos son coincidentes:
B = B

B 1 = B
1

uB = u
B (ya que B 1 b = B
1 b
)

p B = p
B
Pero los siguientes elementos son diferentes

c B cB

zB z
B
B

V V
Es decir, de la tabla obtenida en la resoluci
on de P
de pueden reutilizar todas
B
las las menos la que contienen z y V , que hay que recalcular.
Las columnas auxiliares de las variables correspondientes a las variables articiales permiten disponer, en todo momento, de parte de las columnas de la
inversa de la base.

Las columnas
de las variables
articiales

TODOS DE LA M GRANDE Y DE LAS DOS FASES


Captulo 4. ME

4.4.

4.4.1.

33

Ejemplos

M
etodo de la M grande
max. z = x1 + 2x2 + 3x3

Problema P

x1 + x2 + x3 16
3x1 + 2x2 + 2x3 = 26

(4.9)

x1 + x3 10
x1 , x2 , x3 0
max. z = x1 + 2x2 + 3x3

Problema P
reformulado

x1 + x2 + x3 + h1 = 16
3x1 + 2x2 + 2x3 = 26

(4.10)

x1 + x3 h3 = 10
x1 , x2 , x3 , h1 , h3 0
max. z
= x1 + 2x2 + 3x3 Ma2 Ma3

Problema P

x1 + x2 + x3 + h1 = 16
3x1 + 2x2 + 2x3 + a2 = 26
x1 + x3 h3 + a3 = 10
x1 , x2 , x3 , h1 , h3 , a2 , a3 0

(4.11)

TODOS DE LA M GRANDE Y DE LAS DOS FASES


Captulo 4. ME

34

0
16
26
10

x1
1
1
3
1

x2
2
1
2
0

x3
3
1
2
1

h3
0
0
0
-1

h1
0
1
0
0

a2
-M
0
1
0

a3
-M
0
0
1

F0
F1
F2
F3

h1
a2
a3

36M
16
26
10

1+4M
1
3
1

2+2M
1
2
0

3+3M
1
2
1

-M
0
0
-1

0
1
0
0

0
0
1
0

0
0
0
1

F 0

F 1

F 2

F 3

7+M
3
1
3
2
3
1
3

F 0

= F 0
(1 + 4M)F 2

0
0
-1

1
0
0

14M
3
1
3
1
3
1
3

0
1
0

42M
3
1
3
2
3
2
3

-M

h1
x1
a3

4M26
3
22
3
26
3
4
3

0
0
1

F 1

= F 1
F 2

F 2

= F 2
/3
F 3

= F 3
F 2

h1
x1
x3

-18
6
6
4

0
0
1
0

6
1
2
-2

0
0
0
1

7
1
2
-3

0
1
0
0

2-M
0
1
-1

-7-M
-1
-2
3

= F 0 + MF 2 + MF 3
= F1
= F2
= F3

F 0

F 1

F 2

F 3

= F 0

7+M
3 F3

= F 1 1/3F 3
= F 2

2/3F 3

= 3F 3

La soluci
on anterior es una soluci
on b
asica factible de P y tambi
en una soluci
on b
asica factible de P
(ya que las actividades articiales son simult
aneamente nulas).

h1
x1
x3

-18
6
6
4

h1
h3
x3

-39
3
3
13

4.4.2.

x1
0
0
1
0

x2
6
1
2
-2

x3
0
0
0
1

h3
7
1
2
-3

h1
0
1
0
0

a2
2
0
1
-1

a3
-7
-1
-2
3

27
21

-1
0
1
1

0
0
0
1

0
0
1
0

0
1
0
0

32
12

-0
-0
-1
0

1
2
3
2

1
2
1
2

M
etodo de las dos fases
max. z = x1 + 2x2 + 3x3

Problema P

x1 + x2 + x3 16
3x1 + 2x2 + 2x3 = 26
x1 + x3 10
x1 , x2 , x3 0

(4.12)

TODOS DE LA M GRANDE Y DE LAS DOS FASES


Captulo 4. ME

max. z = x1 + 2x2 + 3x3

35

Problema P
reformulado

x1 + x2 + x3 + h1 = 16
3x1 + 2x2 + 2x3 = 26

(4.13)

x1 + x3 h3 = 10
x1 , x2 , x3 , h1 , h3 0
max. z
= a2 a3

Problema P

x1 + x2 + x3 + h1 = 16
3x1 + 2x2 + 2x3 + a2 = 26

(4.14)

x1 + x3 h3 + a3 = 10
x1 , x2 , x3 , h1 , h3 , a2 , a3 0

fase 1
fase 2

0
0
16
26
10

x1
0
1
1
3
1

x2
0
2
1
2
0

x3
0
3
1
2
1

h3
0
0
0
0
-1

h1
0
0
1
0
0

a2
-1
0
0
1
0

a3
-1
0
0
0
1

F 01
F 02
F1
F2
F3

fase 1
fase 2
h1
a2
a3

36
0
16
26
10

4
1
1
3
1

2
2
1
2
0

3
3
1
2
1

-1
0
0
0
-1

0
0
1
0
0

0
0
0
1
0

0
0
0
0
1

F 0
1 = F 01 + F 2
+ F 3

F 0
2 = F 02
F 1
= F 1
F 2
= F 2
F 3
= F 3

fase 1
fase 2

0
0

23

1
3
7
3
1
3
2
3
1
3

0
0

43
13

0
0

F 0

1 = F 01 4F 2

F 02 = F 01 F 2

0
1
0

4
3
1
3
2
3
23

-1
0

h1
x1
a3

4
3
26
3
22
3
26
3
4
3

0
0
-1

1
0
0

13
1
3
13

0
0
1

F 1

= F 1
F 2

F 2

= F 2
/3
F 3

= F 3
F 2

fase 1
fase 2
h1
x1
x3

0
-18
6
6
4

0
0
0
1
0

0
6
1
2
-2

0
0
0
0
1

0
7
1
2
-3

0
0
1
0
0

-1
2
0
1
-1

-1
-7
-1
-2
3

F 0

1
F 0

2
F 1

F 2

F 3

= F 0

1 3F3
7

= F 01 3 F 3

= F 1

1/3F 3

= F 2

2/3F 3

= 3F 3

Captulo 5
T

INTERPRETACION
ECNICO-ECONOMICA

5.1.

Introducci
on

Dado un problema de Programaci


on Lineal, {P : max. z = cx, s.a Ax = b, x
0}, existen varios elementos caractersticos del problema y que no dependen
de la soluci
on:

Elementos
caractersticos
de un problema

c
b
A
Para un problema y una base B (que caracteriza a la soluci
on b
asica correspondiente), existen varios elementos caractersticos de esa soluci
on para ese
problema

Elementos
caractersticos
de una soluci
on

uB
cB
pB
B
Este captulo se ocupa de la interpretaci
on de estos elementos que dependen
de la base. Por ejemplo, m
as adelante, se habla sobre el valor de los recursos en
un problema y para una soluci
on (una base). Pues bien, el valor de los recursos
depende de dicha soluci
on. Por ejemplo, el valor que tiene para un centro
de c
alculo depende de la forma en la que operar de dicho centro. Un servidor
adicional no tiene ning
un valor si en dicho centro de c
alculo existen servidores
desocupados. Esto no signica que el servidor adicional no tenga valor, no
tiene valor para dicha forma de operar del centro de c
alculo.

Un ejemplo

En otro contexto, el valor que tiene un vaso de agua cuando alguien lleva varios
das sin suministro en el desierto es muy diferente del valor que tiene ese vaso
de agua en el domicilio de una ciudad con un buen suministro de agua potable
corriente. El vaso de agua es el mismo pero el valor depende de la situaci
on.
Aqu diremos que los recursos tienen diferente valor seg
un la soluci
on, es
decir, seg
un la base elegida.

Un ejemplo m
as
dom
estico

TE

CNICO-ECONOMICA
Captulo 5. INTERPRETACION

37

ptima,
Tpicamente, la interpretaci
on econ
omica se realiza para la soluci
on o
porque es la soluci
on m
as interesante pero se podra realizar el mismo an
alsis
para cada cualquier soluci
on del problema considerado.

5.1.1.

Ejemplo de aplicaci
on

Para ilustrar la interpretaci


on, en lo que sigue del captulo emplearemos el
siguiente ejemplo. Una empresa monta dos tipos de pal
es. Los pal
es de tipo
1 contienen un producto P1 y los pal
es de tipo 2 contienen, a su vez, dos
productos P2 .

Presentaci
on del
problema

Con la venta de cada pal


e de tipo 1, la empresa tiene un benecio neto de 2
unidades monetarias (u.m.) Igualmente, la empresa tiene un benecio neto de
1 u.m. con cada pal
e de tipo 2.

El benecio

Los pal
es deben ser preparados en dos talleres, T1 y T2 , de los que se dispone
de un total de 30 y 16 horas semanales, respectivamente, para realizar las
operaciones correspondientes a cada uno de ellos. Cada pal
e 1 requiere 3 horas
de preparaci
on en T1 y 4 horas de preparaci
on en T2 . Cada pal
e 2 requiere 1
hora de preparaci
on en T1 y 3 horas de preparaci
on en T2 .

Los talleres

Adem
as, existe un compromiso comercial de entregar al menos 4 productos
semanales, donde estos cuatro productos pueden ser cualquier combinaci
on
de productos P1 y P2 .

Compromiso
comercial

ltimo, existe un colectivo al respecto del cual la empresa tiene un comproPor u


miso consistente en emplear un n
umero mnimo de horas de dicho colectivo.
Con cada pal
e de tipo 1 se emplea una hora de este colectivo y con cada pal
e2
se ocupan 3 horas del mismo. La empresa debe ocupar al menos 5 horas de
mano de obra del colectivo citado.
Si xi representa el n
umero de unidades de pal
es de tipo Pi , i = 1, 2, se puede
construir el siguiente modelo de Programaci
on Lineal para obtener la producci
on que reporte un mayor benecio.
max z = 2x1 + x2

Formulaci
on

sujeto a:
3x1 + 1x2 30
4x1 + 3x2 16
x1 + 2x2 4
x1 + 3x2 5

(5.1)

TE

CNICO-ECONOMICA
Captulo 5. INTERPRETACION

38

Este problema se puede reformular introduciendo variables de holgura, h1 , h2 ,


h3 y h4 que representan, respectivamente:
h1 : el n
umero de horas del taller T1 que no se llegan a utilizar.
h2 : el n
umero de horas del taller T2 que no se llegan a utilizar
h3 : el n
umero de productos entregados a los clientes por encima de la
cantidad mnima pactada.
h4 : el n
umero de horas en la que el colectivo citado trabaja por encima
del mnimo pactado con la admisnistraci
on.
max z = 2x1 + x2

Formulaci
on
equivalente

sujeto a:
3x1 + x2 + h1 = 30

(5.2)

4x1 + 3x2 + h2 = 16
x1 + 2x2 h3 = 4
x1 + 3x2 h4 = 5
La soluci
on
optima de este problema queda descrita en la siguiente tabla

h1
h3
x1
x2

-70/9
167/9
5/9
11/3
4/9

x1
0
0
0
1
0

x2
0
0
0
0
1

h1
0
1
0
0
0

h2
-5/9
-8/9
1/9
1/3
-1/9

h3
0
0
1
0
0

La soluci
on
ptima
o

h4
-2/9
-5/9
-5/9
1/3
-4/9

El plan
optimo consiste en lo siguiente.

Interpretaci
on

Se montan, por t
ermino medio, 11 pal
es de tipo 1 cada tres semanas
(x1 = 11/3) y
se montan, por t
ermino medio un 4 pal
es de tipo 2 cada nueve semanas
(x2 = 4/9)
con lo que se obtiene un benecio semanal de 7.78 u.m.
h1 = 167/9, es decir, el taller T1 no est
a ocupado todo el tiempo. De las
30 horas, est
a ocioso un total de 18.56 horas.
h2 = 0, es decir, el taller T2 est
a ocupado las 16 horas en las que est
a disponible cada semana.
h3 = 5/9, es decir, se producen 0.56 pal
es m
as del mnimo comprometido. Es decir, se entregan 4.56 por t
ermino medio cada semana.
h4 = 0, es decir, el nivel de ocupaci
on del colectivo al que se reere el
compromiso est
a ocupado un n
umero de horas igual al mnimo.

Uso de los
recursos

TE

CNICO-ECONOMICA
Captulo 5. INTERPRETACION

39

La soluci
on
optima se alcanza cuando las variables b
asicas son h1 , h3 x1 y x2 .
Es decir la base, B es la siguiente:

1
0
3 1


 0
0
4 3

(5.3)
B = Ah1 Ah3 Ax1 Ax2 =
0 1 1 2

0
0
1 3

Caracterizaci
on

5.2.

Tasas de sustituci
on

5.2.1.

Discusi
on te
orica

Las tasas de sustituci


on se denen como p B = B 1 A

Denici
on

B
relaciona la variable b
asica que ocupa la posici
on i-
esima y la
El elemento pij
B
variable j-
esima del problema. En particular, pij
representa en qu
e medida disminuye el nivel de realizaci
on de la actividad b
asica i-
esima cuando se realiza
la actividad j-
esima con valor unitario. De otra manera:
B
pij
= uBi |xj =1
(5.4)

5.2.2.

Ejemplo de aplicaci
on

En el ejemplo de aplicaci
on, para la soluci
on
optima, p B es la siguiente matriz:

pB =

0
0
1
0

0
0
0
1

1
0
0
0

8/9
1/9
1/3
1/9

0
1
0
0

5/9
5/9
1/3
4/9

(5.5)

Por ejemplo, las tasas de sutituci


on de la variable h2 con respecto a las variables b
asicas se discuten a continuaci
on.
Antes, conviene notar que h2 es una variable no b
asica. Hacer que h2 = 1
signica que el taller T2 , que en la soluci
on
optima est
a ocupado al completo,
tuviera una hora desocupada. En este caso, los valores de las variables b
asicas
se modicaran de la siguiente manera.
B
p14
= 8/9
Cuando h2 = 1, h1 = 8/9.
Es decir, al desocupar una hora de taller T2 , de dejan de utilizar 8/9
de hora m
as con respecto a la cantidad que no se estaba utilizando
de T1 .
B
p24
= 1/9

TE

CNICO-ECONOMICA
Captulo 5. INTERPRETACION

40

Cuando h2 = 1, h3 = 1/9
Es decir, al desocupar una hora de taller T2 , el n
umero de productos
que se entregan por encima del compromisio comercial disminuye
en 1/9.
B
p34
= 1/3
Cuando h2 = 1, x1 = 1/3
Es decir, al desocupar una hora de taller T2 , se produce 1/3 de pal
es
de tipo 1 menos.
B
p44
= 1/9
Cuando h2 = 1, x2 = 1/9
Es decir, al desocupar una hora de taller T2 , se produce 1/9 de pal
es
de tipo 2 m
as.

5.3.

5.3.1.

Multiplicadores del simplex

Discusi
on te
orica

El vector de multiplicadores del simplex (o precios sombra), B se dene como:


B = c B B 1

(5.6)

El vector de multiplicadores del simplex representa, para una soluci


on determinada (es decir, para una base B determinada), el valor de los recursos. De
otra manera: iB representa el valor que tiene una unidad adicional de recurso
Ri (es decir, un incremento unitario de b1 ). En efecto, como se cumple que:
z = c B uB = c B B 1 b = B b

(5.7)

Si bi = 1, es decir, si se incrementa la disponibilidad del recurso Ri en una


unidad:

0
0

...

b
+
z
= c B uB = c B B 1 b
= B
1 =

...

0
(5.8)

0
0

B
B
B
B ...
= b+
= z + i z = i
1

...
0

Denici
on

TE

CNICO-ECONOMICA
Captulo 5. INTERPRETACION

La relaci
on que existe entre los multiplicadores del simplex y los valores de los
criterios del simplex es la siguiente.
El criterio del simplex de una variable de holgura, hi , correspondiente a
una restricci
on de tipo es:
VhBi = chi c B B 1 Ahi = chi B Ahi =

0
0

(5.9)

...
B
B
B
B
B

= 0 1 , 2 , ..., i , ..., m
1 = i

...
0
El criterio del simplex de una variable de holgura, hi , correspondiente a
una restricci
on de tipo es:
VhBi = chi c B B 1 Ahi = chi B Ahi =

0
0


(5.10)

...
B
B

= 0 1B , 2B , ..., iB , ..., m
1 = i

...
0
En el caso de la soluci
on
optima, V B 0 y, en particular, VhBi 0
En el caso de los recursos correspondientes a las restricciones de tipo :
Si hi no es una variable b
asica, la restricci
on se cumple en t
erminos
de igualdad: hi = 0 iB = VhBi 0.
En este caso, un aumento de unitario positivo de b1 (relajar la restricci
on) reporta un incremento del benecio postivo z = B y un
incremento unitario negativo de b1 (hacer m
as restrictiva la restricci
on) reporta un incremento del benecio negativo z = B .
Si hi es una variable b
asica (salvo en casos especiales) la restricci
on
no se cumple en t
erminos de igualdad: hi 0 iB = VhBi = 0
En este caso, el incremento unitario positivo o negativo de la disponibilidad del recurso Ri no afecta a la funci
on objetivo (z = 0)
En el caso de los recursos correspondientes a las restricciones de tipo :
Si hi no es una variable b
asica, la restricci
on se cumple en t
erminos
de igualdad: hi = 0 iB = VhBi 0.
En este caso, un aumento de unitario negativo de b1 (hacer menos restrictiva la restricci
on) reporta un incremento del benecio
postivo z = B y un incremento unitario positivo de b1 (hacer
m
as restrictiva la restricci
on) reporta un incremento del benecio
negativo z = B .
Si hi es una variable b
asica (salvo en casos especiales) la restricci
on
no se cumple en t
erminos de igualdad: hi 0 iB = VhBi = 0

41

TE

CNICO-ECONOMICA
Captulo 5. INTERPRETACION

42

En este caso, el incremento unitario positivo o negativo de la disponibilidad del recurso Ri no afecta a la funci
on objetivo (z = 0)

5.3.2.

Ejemplo de aplicaci
on

El vector de multiplicadores del simplex (precios sombra) correspondiente a


esta soluci
on es:


 5
2
B = 1B , 2B , 3B , 4B = 0, , 0,
9
9

(5.11)

Restricci
on 1. El recurso R1 no se est
a utilizando completamente. Como
sobran horas de taller T1 , no estamos dispuestos a pagar nada por disponer de una hora adicional del mismo y cederamos una hora del mismo
si nos dieran cualquier cantidad (positiva) por esa hora.
Restricci
on 2. El taller T2 se est
a utilizando completamente. Estamos
dispuestos a pagar un m
aximo de 5/9 unidades monetarias por disponer
de una hora adicional del mismo y cederamos una hora del mismo si
nos dieran cualquier cantidad mayor que 5/9.
Restricci
on 3. Estamos cumpliendo el compromiso comercial por encima
del mnimo pactado. No estamos dispuestos a pagar nada por tener que
cumplir un compromiso menos exigente (y pasar de b3 = 4 a b3 = 3).
Con cualquier cantidad que recbi
eramos estaramos dispuestos hacer
m
as exigente el compromiso comercial.
Restricci
on 4. Estamos cumpliendo el compromiso de la ocupaci
on de la
mano de obra de un colectivo con el menor valor posible. Estamos dispuestos a pagar 29 por tener que cumplir un compromiso menos exigente
(y pasar de b4 = 5 a b4 = 4). Tambi
en estamos dispuestos a recibir una
2
cantidad de dinero mayor 9 que para hacer m
as exigente el compromiso
comercial (y pasar de b4 = 5 a b4 = 6).

5.4.

5.4.1.

Criterios del simplex

Discusi
on te
orica

El criterio del Simplex se dene como


V B = c c B B 1 A

Denici
on
(5.12)

TE

CNICO-ECONOMICA
Captulo 5. INTERPRETACION

43

En particular, el criterio del simplex de la variable xk es:


VkB = ck c B B 1 Ak

(5.13)

El criterio del Simplex, ya se vio en el captulo 2, representa el incremento de


la funci
on objetivo cuando xk = 1. Es decir:
VkB = z|xk =1

Primera
aproximaci
on

(5.14)

El primer t
ermino ck representa el benecio unitario que reporta la actividad
xk . Existen dos formas de interpretar VkB :

ck

VkB = ck c B pkB
VkB = ck B Ak
En ambos casos, se obtiene con la diferencia entre ck (benecio unitario) y un
t
emino que puede interpretarse de dos maneras.
El t
ermino c B pkB es el producto de:
c B : que es el benecio unitario correspondiente a las variables b
asicas y
p B : el incremento de los valores de dichas variables b
asicas.
De forma que c B pkB representa lo que se deja de ganar por la cantidad en la
que se modican las variables b
asicas.
As que VkB es el resultado de:
aumentar el valor de la funci
on objetivo por el benecio derivado de
hacer una unidad de la actividad k (xk = 1), es decir, por ingresar ck y
disminuir la funci
on objetivo por la modicaci
on del ingreso debido a la
modicaci
on del valor de las variables b
asicas c B pkB .
Por lo tanto, se puede concluir lo siguiente.
Si V B > 0, el aumento de la funci
on objetivo debido a la realizaci
on de
la nueva actividad supera a la reducci
on de la funci
on objetivo debida a
la disminuci
on de benecios debida a la modicaci
on del nivel de realizaci
on de las variables b
asicas. La realizaci
on de la actividad k mejora
netamente el valor de la funci
on objetivo.
Si V B < 0, el aumento de la funci
on objetivo debido a la realizaci
on
de la nueva actividad no compensa la reducci
on de la funci
on objetivo
debida a a la disminuci
on de benecios debida a la modicaci
on del nivel
de realizaci
on de las variables b
asicas. La realizaci
on de la actividad k
empeora netamente el valor de la funci
on objetivo.

VkB = ck c B pkB

TE

CNICO-ECONOMICA
Captulo 5. INTERPRETACION

44

Si V B = 0, la realizaci
on de la actividad k no modica el valor de la
funci
on objetivo.
El t
ermino B Ak es el producto de:

VkB = ck B Ak

B : que es valor de cada uno de los recursos y


Ak : que es el consumo de cada uno de esos recursos en los que se incurre
al realizar la actividad k, xk = 1.
De forma que B Ak es el valor de los recursos correspondientes a la realizaci
on de una unidad de la actividad k. Es decir, hacer una unidad de la actividad
k, signica consumir recursos que est
an dedicados a otra actividades. El valor
de esos recursos empleados en esas actividades es B Ak , con lo que si se emplean en la actividad k y no en las correspondientes a las variables b
asicas, la
funci
on objetivo se reducira en ese valor.
As que VkB es el resultado de:
aumentar el la funci
on objetivo por el benecio ck , dervidado de hacer
una unidad de la actividad k (xk = 1) y
disminuir la funci
on objetivo por el hecho de que se detraen recursos
que antes estaban dedicados a realizar las actividades b
asicas y cuyo
valor es B Ak .
Por lo tanto, se puede concluir lo siguiente.
Si V B > 0, el aumento de la funci
on objetivo debido a la realizaci
on de la
nueva actividad supera a la reducci
on del benecio debida la detracci
on
de recursos que ya no se destinan a las actividades b
asicas y que se
destinan a realizar la actividad k. La realizaci
on de la actividad k mejora
netamente el valor de la funci
on objetivo.
Si V B < 0, el aumento de la funci
on objetivo debido a la realizaci
on
de la nueva actividad no compensa la reducci
ondel benecio debida la
detracci
on de recursos que ya no se destinan a las actividades b
asicas y
que se destinan a realizar la actividad k. La realizaci
on de la actividad k
empeora netamente el valor de la funci
on objetivo.
Si V B = 0, la realizaci
on de la actividad k no modica el valor de la
funci
on objetivo.

5.4.2.

Ejemplo de aplicaci
on

Como se ha dicho al principio del captulo, la interpretaci


on de los elementos
que se han comentado es v
alido y, en particular, en cualquier soluci
on. A titulo
de ilustraci
on, a continuaci
on se discute la interpretaci
on del criterio del simplex de una variable para una soluci
on diferente de la
optima. La discusi
on,
insistimos, podra realizarse igualmente para la soluci
on
optima.

Presentaci
on

TE

CNICO-ECONOMICA
Captulo 5. INTERPRETACION

h1
h2
h4
x2

x1
3/2
5/2
5/2
1/2
1/2

-2
28
10
1
2

x2
0
0
0
0
1

h1
0
1
0
0
0

h2
0
1
0
0
0

h3
1/2
1/2
3/2
-3/2
-1/2

h4
0
0
0
1
0

45

Otra soluci
on

El criterio del simplex de la variable x1 se puede entender como la difencia


entre el benecio unitario por realizar la actividad correspondiente y c B p1B =
B A1 .

V1B

Con cualquiera de las dos posibles interpretaciones, c1 = 2, representa el benecio unitario por realizar una unidad de la actividad 1, es decir por montar
y vender un pal
e de tipo 1.

c1

c B = (0, 0, 0, 1)


5 5 1 1 T
, , ,
pB =
2 2 2 2

(5.15)

c B p1B

Al hacer una unidad de x1 :


h1 disminuye en 52 unidades, cada una de las cuales
cio de ch2 = 0, con lo que dejamos de ganar 52 0.
h2 disminuye en 52 unidades, cada una de las cuales
cio de ch2 = 0, con lo que dejamos de ganar 52 0.
h4 disminuye en 12 unidades, cada una de las cuales
cio de ch2 = 0, con lo que dejamos de ganar 12 0.
x2 disminuye en 12 unidades, cada una de las cuales
cio de ch2 = 1, con lo que dejamos de ganar 12 1.
Es decir, dejamos de ganar

reportaba un benereportaba un benereportaba un benereportaba un bene-

1
2

Netamente:

V1B = c1 c B p1B

El benecio aumenta, por un lado en 2 y


disminuye, por otro, en 12 ,
por lo que, globalmente, si hacemos un pal
e de tipo 1, aumentamos el benecio
en V1B = 2 12 = 32
Se puede interpretar el valor de V2B en t
erminos de B

B A1

TE

CNICO-ECONOMICA
Captulo 5. INTERPRETACION

B = (0, 0, 1, 0)
T

1
A1 = 3, 4, , 0
2

46

(5.16)

Al hacer una unidad de x1 :


Se consumen 3 unidades del recurso 1, es decir, se emplean 3 horas de
taller T1 , cuyo valor es 1 = 0 (sobran horas).
Se consumen 4 unidades del recurso 2, es decir, se emplean 4 horas de
taller T2 , cuyo valor es 2 = 0 (sobran horas).
Se consume 1 unidad del recurso 3. En este caso, esto signica contribuir con 1 unidad adicional al cumplimiento del compromiso comercial.
Cada unidad en la que el cumplimiento comercial se hace m
as restricitivo, esto deteriora la funci
on objetivo en 12 (esta soluci
on se cumple
exactamente al lmite (h3 = 0)). Fabricar un pale de tipo 1 provoca superar el compromiso comercial y eso deteriora la funci
on objetivo en 12
El razonamiento es an
alogo para la cuarta restriccion, pero en este caso,
ya se est
a 4 = 0.
Es decir, dejamos de ganar

1
2

Netamente:
El benecio aumenta, por un lado en 2 y
disminuye, por otro, en 12 ,
por lo que, globalmente, si hacemos un pal
e de tipo 1, aumentamos el benecio
en V1B = 12

V1B = c1 B A1

Captulo 6
GRA
FICA
INTERPRETACION

6.1.

Introducci
on

En este captulo se presenta la interpretaci


on gr
aca en el plano de muchos
de los conceptos presentados hasta ahora. Este captulo no pretende ser un
tratado exhaustivo de la geometra de los problemas de Programaci
on Lineal.

Dos
dimensiones

El objetivo es ilustrar dichos conceptos pero no ofrecer herramientas para el


tratamiento de problemas de Programaci
on Lineal.

Objetivo

Existe una forma de abordar lo que aqu se presenta de forma muy somera
til para el tratamiento y la resoconocida como teora de poliedros, s resulta u
luci
on de problemas de Programaci
on Lineal, pero que queda fuera del alcance
de este texto.

Teora de
poliedros

6.2.

Conceptos generales

Dado un problema de Programaci


on lineal en el plano
maz z =cx
s.a:
Ax = b

(6.1)

x0
x R+
21
A Rm2
c R12
b Rm1
donde m es el n
umero de restricciones

Dimensiones

GRAFICA

Captulo 6. INTERPRETACION

En el ejemplo que sigue m = 2

48

Ejemplo
max z = x1 + 2x2
sujeto a:

2x1 + x2 2

Restricci
on R1

x1 + x2 6

Restricci
on R2

2x1 + x2 10

Restricci
on R3

(6.2)

x1 , x2 0
En la gura 6.1, aparecen representadas las tres restricciones. Cada restricci
on
de tipo o divide al plano en dos semiplanos, de tal manera que uno de
ellos corresponde a soluciones factibles con respecto a dicha restricci
on y el
otro semiplano a soluciones con factibles con respecto a la misma restricci
on.
El problema del ejemplo anterior se puede formular en t
erminos de igualdad
a
nadiendo las variables de holgura necesarias.
max z = x1 + 2x2
sujeto a:
2x1 + x2 + h1 = 2
x1 + x2 + h2 = 6

(6.3)

2x1 + x2 + h3 = 10
x1 , x2 h1 h2 h3 0
on Ri :
Dado un punto cualquiera en el plano, P (x1 , x2 ) y una restricci
Si este punto est
a situado en el semimplano de soluciones factibles con
respecto a Ri , entonces el P cumple la restricci
on Ri y hi 0.
En particular, puede estar sobre la propia recta, en cuyo caso, se cumple
la restricci
on con hi = 0
Si este punto est
a situado en el semimplano de soluciones no factibles
con respecto a Ri , entonces el P no cumple la restricci
on Ri y hi < 0.
Por ejemplo:
El punto (4, 2)
Est
a a la derecha de la recta R1 , el su semiplano factible, con lo que
h1 > 0
Est
a sobre la recta R2 , con lo que h2 = 0
Est
a sobre la recta R3 , con lo que h3 = 0
El punto (1, 6)
Est
a a la izquierda de la recta R1 , el su semiplano no factible, con
lo que h1 < 0

Restricciones

GRAFICA

Captulo 6. INTERPRETACION

49

Est
a a la derecha de la recta R2 , el su semiplano no factible, con lo
que h2 < 0
Est
a a la izquierda de la recta R3 , el su semiplano factible, con lo
que h3 > 0

Figura 6.1: Restricciones de un problema de Programaci


on Lineal
Las restricciones funcionales junto con las restricciones de no negatividad denen la regi
on de factiblidad (sombreada en la gura 6.2). Cualquier punto
perteneciente a la regi
on de soluciones factibles cumple con todas las restricciones, incluidas las de no negatividad.
La regi
on de soluciones factibles siempre es un polgono y es una regi
on convexa; es decir, para cualesquiera dos puntos de la soluci
on de regiones factibles,
todos los puntos pertenecientes al segmento que uno aquellos dos puntos
tambi
en est
a dentro de la regi
on de soluciones factibles.

Regi
on de
soluciones
factibles

GRAFICA

Captulo 6. INTERPRETACION

50

Figura 6.2: Regi


on de soluciones factibles de un problema de Programaci
on
Lineal

La funci
on objetivo de un problema de Programaci
on lineal en el plano tiene la
forma de z = c1 x1 + c2 x2 . Para cada valor de z tenemos una recta en particular, donde todos los puntos de dicha recta proporcionan el mismo valor de la
funci
on objetivo.

Funci
on objetivo

La funci
on objetivo se puede entender como un haz de rectas paralelas c1 x1 +
c2 x2 = k.

Haz de rectas

GRAFICA

Captulo 6. INTERPRETACION

51

Figura 6.3: Regi


on de soluciones factibles de un problema de Programaci
on
Lineal

En el ejemplo del problema, la recta x1 + 2x2 = 14 es el conjunto de todas las


soluciones que proporcionan un valor de la funci
on objetivo de 14. Ninguno
de los puntos de dicha recta est
an en la regi
on de soluciones factibles, por lo
que no existe ninguna soluci
on factible que proporcione un valor de z = 14.
Lo mismo ocurre con z = 12.

Funci
on objetivo

Sin embargo, la recta x1 + 2x2 = 6 s tiene un segmento dentro de la regi


on de
factiblidad. Existe un conjunto de soluciones factibles que reportan un valor
de z = 6, correspondiente a todos los puntos del segmento en el que la recta
anterior intersecta con la regi
on de soluciones factibles.
Un problema en el plano tiene n variables (x1 , x2 y todas las variables de
holgura correspondiente a restriciones leq o geq) y una soluci
on b
asica tiene
m variables b
asicas. En particular, en el caso de que todas las retricciones
tengan variables de holgura, una soluci
on b
asica tiene:
m variables b
asicas y
2 variables no b
asicas.

Soluciones
b
asicas

GRAFICA

Captulo 6. INTERPRETACION

52

Figura 6.4: Regi


on de soluciones factibles de un problema de Programaci
on
Lineal

Es decir en una soluci


on b
asica, como mnimo, debe haber dos variables nulas:
x1 y x2 (la soluci
on es el origen de coordenadas);
x1 o x2 y una variable de holgura (la soluci
o es la intersecci
on la restricci
on correspondiente con uno de los ejes);
dos variables de holgura (la soluci
on es la itersecci
on de dos restricciones).
Es decir, las soluciones b
asicas de un problema de programaci
on lineal son:
el eje de coordenadas,
cada una de las intersecciones de una restricci
on con cada uno de los
ejes y
cada una de las intersecciones de los difernetes pares de restricciones.
Por otro lado, en el caso de que todas las retricciones tengan variables
de 
hol
m+2
=
gura, el problema tiene un n
umero de soluciones b
asicas igual
m
2m2 + 2m 4

N
umero de
soluciones
b
asicas

GRAFICA

Captulo 6. INTERPRETACION

En el ejemplo, existen tres restricciones (m = 3), por lo que el n


umero de
5
= 10, que aparecen indicadas en 6.4
soluciones b
asicas es
2

Figura 6.5: Regi


on de soluciones factibles de un problema de Programaci
on
Lineal
De las soluciones b
asicas anteriores, algunas son factibles (en azul) y otras son
no factibles (en rojo). Y de las factibles, aquella que tiene una funci
on objetivo
mayor es la soluci
on
optima del problema.

53

GRAFICA

Captulo 6. INTERPRETACION

54

Figura 6.6: Regi


on de soluciones factibles de un problema de Programaci
on
Lineal
La interpretaci
on gr
aca del Teorema Fundamental es la siguiente. Dada cualquier soluci
on no b
asica (un punto interior del p
olgono de soluciones factibles), es posible desplazarse hacia una soluci
on en una restricci
on (con una
componente con un cero m
as que la de partida) y, desde ella, a una soluci
on
b
asica (con dos componentes nulas adicionales), siendo esta soluci
on no peor
que la de partida.
En la gura 6.7 se muestra una soluci
on no b
asica x NB . Desde ella es posible
desplazarse por m
ultiples caminos hasta llegar a una soluci
on b
asica no pero
NB
que x .
x NB , no est
a sobre ninguna restricci
on, ni sobre ning
un eje, con lo que tiene
cinco componentes no nulas (es decir, todas). Siguiendo el camino verde, nos
desplazamos primero a una soluci
on no b
asica sobre el eje x1 (con una componente nula adicional: x2 ). Y, desde ella es posible llegar a x 3 , en la que hay
dos componentes nulas: x2 y h3 y tres no nulas: es una soluci
on b
asica y mejor
que la de partida.
Igualmente, siguiendo el camino naranja, nos desplazamos primero a una soluci
on no b
asica sobre la restricci
on R1 (con una componente nula adicional:
h1 ). Y, desde ella es posible llegar a x 7 , en la que hay dos componentes nulas:
h1 y h2 y tres no nulas: es una soluci
on b
asica y mejor que la de partida.

Teorema
fundamental

GRAFICA

Captulo 6. INTERPRETACION

55

Figura 6.7: Regi


on de soluciones factibles de un problema de Programaci
on
Lineal

6.3.

M
etodo del Simplex

El m
etodo del Simplex, al cual se dedicaron los captulos 2 y 3, opera transitando de soluci
on b
asica factible en soluci
on b
asica factible hasta llegar a una
que es
optima. En la gura 6.8, en particular, se muestran dos posibles transiciones, la primera entre las soluciones x 1 y x 5 y la segunda entre x 5 y x 7 , que
es la soluci
on
optima. Como se ha comentado antes, las soluci
on b
asicas son
los v
ertices del polgono de la regi
on de factiblidad.

L
ogica general

GRAFICA

Captulo 6. INTERPRETACION

56

Figura 6.8: L
ogica general del m
etodo del Simplex

El criterio del simplex de la variable b


asica xi , ViB representa el incremento
unitario de la funci
on objetivo si x1 . En la gura 6.9, considerando la soluci
on
1
b
asica x , las variables no b
asicas de esa soluci
on son x1 y x2 .
Si partiendo de x 1 , hacemos que x1 = 1, sera equivalente a desplazarse por el
eje de abscisas, hasta llegar al punto (1, 0). La funci
on objetivo de este punto
es z = 1. Igualemente, si partiendo de x 1 ahora hacemos que x2 = 1, sera
equivalente a desplazarse por el eje de abscisas, hasta llegar al punto (0, 1). La
funci
on objetivo de este punto es z = 2. Es decir, V1B = 1 y V2B = 2.
En efecto, tanto la introducci
on de x1 como la de x2 en la base, a partir de x 1 ,
dan lugar a un incremento de la funci
on objetivo, por lo que, seg
un la regla de
entrada, ambas son potenciales candidatas para obtener una nueva soluci
on
b
asica factible, mejor que x 1

Regla de
introducci
on V B

GRAFICA

Captulo 6. INTERPRETACION

57

Figura 6.9: Regi


on de soluciones factibles de un problema de Programaci
on
Lineal
El cada iteraci
on del m
etodo del simplex, se introduce una variable nueva en
la base con un valor que hace que una de las que era b
asica, se haga cero.
Por ejemplo, si a partir de x 1 , decidimos que la variable x2 deje de ser cero,
podemos acceder a tres nuevas soluciones b
asicas:
si x1 = 2, las variables b
asicas son: x2 , h2 y h3 (soluci
on b
asica x 5 )
si x1 = 6, las variables b
asicas son: x2 , h1 y h3 (soluci
on b
asica x 9 )
si x1 = 10, las variables b
asicas son: x2 , h1 y h2 (soluci
on b
asica x 10 )
Lo anterior es lo esperado. Para el ejemplo anterior, en cada soluci
on b
asica
existen tres variables b
asicas y dos no b
asicas, con lo que desde cada soluci
on b
asica, una vez decidida la variable de entrada, podemos acceder a otras
tres soluciones b
asicas suprimiendo de la base alguna de las tres las variables
b
asicas.
En el ejemplo anterior, las tres soluciones a las que se puede acceder desde
x1 son b
asicas, pero solo una es factible. La regla de supresi
on del m
etodo del
simplex garantiza que al introducir una nueva variable, el valor con el que esta
entra no hace ninguna de las variables negativas, por lo que siempre se accede
a una nueva soluci
on b
asica factible.

Regla de
supresi
on p B

GRAFICA

Captulo 6. INTERPRETACION

Sabemos que una soluci


on b
asica es
optima si V B 0, es decir, si introduciendo cualquier variable no b
asica la funci
on objetivo disminuye. En el ejemplo,
podemos apreciar en la gura 6.10 que la soluci
on x 7 es
optima.

58

Criterio de
optimalidad

Figura 6.10: Criterio de optimalidad

on de cada
En efecto, las variables no b
asicas de x 7 son h1 y h2 . La introducci
una de ellas supone seguir desplazarse por las restricciones R2 y R1 , respectivamente, tal y como aparece en la imagen seg
un las fechas rojas. Los valores
de z para esas soluciones son peores que la de x 7 .

6.4.

M
etodo de las dos fases y de la M grande

Pendiente

Problema
auxiliar

Pendiente

Regiones de
factibilidad de P
y de P

Iteraciones
del

Pendiente

problema P

Pendiente

Iteraciones del
problema P

GRAFICA

Captulo 6. INTERPRETACION

6.5.

59

M
etodo de Lemke

Pendiente

L
ogica general

Pendiente

Regla de
supresi
on V B

Pendiente

Regla de
introducci
on p B

Pendiente

Criterio de
factiblidad

Captulo 7
M
ETODO DEL LEMKE

7.1.

Introduction

En el captulo 2 se present
o el m
etodo del Simplex para resolver problemas de
Programaci
on Lineal. Este m
etodo consista en, a partir de una soluci
on b
asica
factible de partida, de forma iterativa, transitar por diferentes soluci
on b
asicas
factibles hasta alcanzar una que tambi
en fuera
optima.

Introducci
on

L
ogica del
m
etodo del
Simplex

Figura 7.1: L
ogica del m
etodo del Simplex
En este captulo se va a presentar el m
etodo de Lemke, o dual del Simplex, que
tambi
en permite resolver problemas de Programaci
on Lineal. En este m
etodo
consista en, a partir de una soluci
on b
asica que cumple el criterio de optimalidad (V B 0) de partida, de forma iterativa, se transita por diferentes soluci
on
b
asicas que tambi
en cumplen el criterio de optimalidad hasta alcanzar una que
tambi
en es factible.
Al respecto de las diferencias y las analogas entre los dos m
etodos:
El ambos m
etodos siempre se transita de soluci
on b
asica en soluci
on
b
asica.
Las soluciones por las que transita el m
etodo del Simplex siempre son
factibles.
Las soluciones por las que transita el m
etodo del Lemke siempre cumplen el criterio de optimalidad.

L
ogica del
m
etodo de
Lemke

TODO DEL LEMKE


Captulo 7. ME

61

En el m
etodo del Simplex, con las diferentes iteraciones, se mejora el
criterio de optimalidad hasta alcanzar una soluci
on
optima (que tambi
en
es factible).
En el m
etodo del Simplex, con las diferentes iteraciones, se mejora el
criterio de factiblidad hasta alcanzar una soluci
on factible (que tambi
en
es
optima).

Figura 7.2: L
ogica del m
etodo de Lemke
Para aplicar el m
etodo de Lemke, de acuerdo con la l
ogica anterior, es necesario:
1.
2.
3.
4.

una soluci
on b
asica que cumpla el criterio de optimalidad de partida,
un criterio de factiblidad,
una regla de supresi
on y
una regla de introducci
on.

7.2.

Cu
ando es interesante el m
etodo de Lemke

El m
etodo de Lemke es potencialmente interesante cuando existe una soluci
on b
asica que cumple el criterio de optimalidad, pero que no es factible. A
continuaci
on se discuten tres casos habituales.

7.2.1.

Problemas de mnimos con c 0

Los problemas que cumplen con las siguientes caractersticas:


La funci
on objetivo es de la forma min. z = cx con c 0.
Todas las restricciones son de tipo o .

Qu
e necesitamos

TODO DEL LEMKE


Captulo 7. ME

Por ejemplo, un problema como el siguiente.

62

Ejemplo

min. z =1x1 + 2x2 + 3x3


1x1 + 2x2 + 1x3 10
4x1 + 2x2 + 3x3 20

(7.1)

1x1 + x2 + x3 40
xi 0
En efecto:
Si un problema es del tipo min. z = cx con c 0, se puede transfomar
en uno equivalente del tipo max. (z) = cx con c 0.
Al a
nadir las variables de holgura a todas y cada una de las restricciones
(ninguna es originalmente de tipo =), existe una soluci
on b
asica en la que
hi = bi .


0 0 ... 0
Para dicha soluci
on c B =
y, por lo tanto: V B = c


c B B 1 A = c 0 0 ... 0 B 1 A = c 0
Es decir, la soluci
on en la que las variables b
asicas son las variables de holgura
es una soluci
on que cumple el criterio de optimalidad y es b
asica, con lo cual
es una soluci
on a partir de la cual se puede aplicar el m
etodo del ejemplo.
El problema de 7.1 se puede formular como:

Ejemplo

max. z = 1x1 2x2 3x3


1x1 2x2 1x3 + h1 = 10
4x1 2x2 3x3 + h2 = 20

(7.2)

1x1 + x2 + x3 + h3 = 40
xi , hi 0
Si las variables b
asicas son h1 , h2 y h3 :


cB = 0 0 0 .


V B = c c B B 1 A = 1 2 3 0 0 0 0 0 0 B 1 A =


1 2 3 0 0 0 . Es decir, V B 0.
Por lo tanto, esta soluci
on es b
asica, cumple el criterio de optimalidad y
no es factible: es una soluci
on de partida v
alidad para aplicar el m
etodo
de Lemke.

TODO DEL LEMKE


Captulo 7. ME

La tabla inicial a partir de la cual se podra comenzar a iterar, tal y como se


describe m
as adelante sera la siguiente.
x1
-1
-1
-4
1

0
-10
-20
40

7.2.2.

x2
-2
-2
-2
1

x3
-3
-1
-3
1

h1
0
1
0
0

h2
0
0
1
0

h3
0
0
0
1

63

La tabla inicial

La tabla inicial

Al introducir un cambio en b, una vez obtenida la soluci


on
ptima
o

Dado un problema P del que se ha obtenido la soluci


on
optima, si cambia el
vector de disponibilidad de recursos b, se modicaran:
uB = B 1 b
zB = c B uB

Y no se modicara:
VB
pB
Si el cambio de b hace que alg
un uBi sea negativo, la soluci
on que era
optima
y factible deja de ser factible y sigue siendo cumpliendo V B 0, por lo que es
una soluci
on a partir de la cual se puede aplicar el m
etodo de Lemke.
Para el problema de ejemplo del captulo 3, en el epgrafe 3.3
maz z =1x1 + 2x2 + 3x3

Ejemplo

1x1 + 2x2 + 1x3 + x4 = 16


3x1 2x2 + 2x3 + x5 = 26
1x1 + 0x2 + 2x3 + x6 = 24
xi 0, i = 1 6
Se conoce la soluci
on
optima

x2
x5
x3

-40
2
6
12

x1
-1
1
4
5
2
1
2

x2
0
1
0
0

x3
0
0
0
1

x4
-1
1
2

1
0

x5
0
0
1
0

x6
-1
14
32
1
2

(7.3)

TODO DEL LEMKE


Captulo 7. ME

Si el nuevo vector fuera b


=
siguiente.

10

1
2

uB = B 1 b
=
1
0
El nuevo valor de z sera c B uB =

26

24

, el nuevo valor de uB sera el

0
1
0

14
10
1

32
26 = 0
1
24
12
2

12

(7.4)

= 34

La nueva tabla cuando las variables b


asicas son x2 , x5 y x3 es la siguiente:

x2
x5
x3

-34
-1
0
12

x1
-1
1
4
5
2
1
2

x2
0
1
0
0

x3
0
0
0
1

x4
-1
1
2

1
0

x5
0
0
1
0

x6
-1
14
32
1
2

A partir de esa tabla se podra iterar aplicando el m


etodo de Lemke, tal y como
se comenta m
as adelante en el captulo.

7.2.3.

Al a
nadir una restricci
on adicional a un programa, una vez
obtenida la soluci
on
optima

Pendiente

7.3.

7.3.1.

Reglas

Criterio de factibilidad

Una solucion b
asica (base B) es factible si uB 0

7.3.2.

Regla de supresi
on

Dada una soluci


on b
asica no factible interesa eliminar de la base cualquier
variable con valor negativo. En particular, eliminaremos la variable i-
esima que
cumple.

64

TODO DEL LEMKE


Captulo 7. ME
 
 
uBi = maxuB <0 uBk 

(7.5)

7.3.3.

65

Regla de introducci
on

Dado que la variable i-


esima de la base es la que se debe suprimir, la variable que entra en su lugar es la variable j-
esima del problema que cumple lo
siguiente.
VjB
pij

= minpB >0
ik

VkB

(7.6)

B
pik

Si, en general, entra la variable j-


esima del problema, los nuevos criterios del
Simplex son:
VkB

VkB

pik B
B Vj
pij

(7.7)

Para garantizar que con la nueva base, se sigue cumpliendo el criterio de optimalidad se debe cumplir 7.6.

VkB

7.4.

VkB

B
pik
B
pij

VjB 0 VkB

B
pik
B
pij

VjB

VkB
B
pik

VjB
B
pij

B
dado que pik
0

(7.8)

Ejemplo
min. z =300x1 + 400x2 + 100x3 + 50x4

El problema

4x1 + 5x2 + 2x3 + x4 800


2x1 + 4x2 + x3 600

(7.9)

1x1 + x2 + 4x4 2000


xi 0
Problema equivalente
max. (z) = 300x1 400x2 100x3 50x4
4x1 5x2 2x3 x4 800
2x1 4x2 x3 600
1x1 + x2 + 4x4 2000
xi , hi 0

(7.10)

TODO DEL LEMKE


Captulo 7. ME

Problema equivalente
max. (z) = 300x1 400x2 100x3 50x4
4x1 5x2 2x3 x4 + h1 = 800
2x1 4x2 x3 + h2 = 600

(7.11)

1x1 + x2 + 4x4 + h3 = 2000


xi , hi 0

h1
h2
h3
x3
h2
h3
x3
x2
h3

0
-800
-600
2000
40000
400
-200
2000
60000

x1
-300
-4
-2
1
-100
2
0
1
-100

x2
-400
-5
-4
1
-150

1
0

x3
-100
-2
-1
0
0
1
0
0
0

200
3
400
3
5600
3

2
0
1

0
1
0

1
0
0

5
2
32

x4
-50
-1
0
4
0

0
-50

h1
0
1
0
0
-50
12
12
0
0

h2
0
0
1
0
0
0
1
0
-100

h3
0
0
0
1
0
0
0
1
0

4
3
13
13
3

43
13
13

5
3
23
2
3

0
0
1

1
2
1
2

F0
F1
F2
F3
F0
= F0 + 100F1

F1
= F1
/2
F2 = F2 + F1

F3
= F3
F0

= F0
+ 150F2

F1

= F1
5/2F2

F2

= 2/3F2

F3

= F3
F2

66

Captulo 8
CASOS ESPECIALES

8.1.

Introducci
on

Pendiente

8.2.

Optimo
m
ultiple

ptima
Dado un problema de programaci
on lineal, P , se conoce una soluci
on o
b
asica y factible, x B , asociada a una base B. Si una variable no b
asica, xk , es tal
que VkB = 0, existe la posiblidad de introducir dicha variable en la base1 y:

Caracterizaci
on
analtica

se obtiene una soluci


on b
asica, x B diferente de la anterior (con otra base
B
y
con el mismo valor de la funci
on objetivo.

asicas y
optiLas dos soluciones b
asicas anteriores x B y x B son soluciones b
mas del problema P

Adem
as, todas las soluciones del tipo x = x B + (1 )x B con (0, 1) son
soluciones no b
asicas y
optimas del problema.

Soluciones no
ptimas
b
asicas o

En general, pueden existir r soluciones b


asicas factibles (x B1 , x B2 ...x Br ) y
optir
r
mas y todas las soluciones de la forma s=1 s x Bs , con s=1 s = 1

Generalizaci
on

En el plano, existen soluciones


optimas m
ultiples cuando la funci
on objetivo es paralela a la restricci
on que contiene dos soluciones b
asicas factibles y

optimas.

Interpretaci
on
gr
aca

Captulo 8. CASOS ESPECIALES

68

Figura 8.1: Soluciones


optimas m
ultiples

max. z = 3x1 + 4x2

Ejemplo

3x1 + 4x2 12
x2 2

(8.1)

x1 x2 1
x1 , x2 0

1 Esto es as
siempre. Si existen variables b
asicas con tasas de sustituci
on positiva con respecto

a la que abandone la base. Si todas las tasas de sustituci


on son negativas
a xk , una de ellas ser
se trata de un caso que se describe en la secci
on 8.5

Soluciones
ptima b
o
asicas

Captulo 8. CASOS ESPECIALES

x1
x2
h3

-12
4/3
2
7/6

x1
0
1
0
0

x2
0
0
1
0

h1
-1
1/3
0
-1/3

h2
0
-4/3
1
7/3

h3
0
0
0
1

x1
x2
h2

-12
16/7
9/7
5/7

0
1
0
0

0
0
1
0

-1
1/7
1/7
-1/7

0
0
0
1

0
4/7
-3/7
3/7

Existen dos soluciones


optimas que son b
asicas:

Soluciones
ptimas
o

x = (4/3, 2, 0, 0, 0, 7/6)
x 2 = (16/7, 9/7, 0, 5/7, 0)T
1

69

Y todas las siguientes que son no b


asicas: x NB = (4/3, 2, 0, 0, 0, 7/6)T +
T
(1 ) (16/7, 9/7, 0, 5/7, 0) , con (0, 1)
Para todas ellas, z = 12

8.3.

Soluci
on degenerada

Se dice que una soluci


on b
asica es degenerada si alguna de las variables b
asicas
toma valor 0, es decir, alg
un uBi = 0
max. z = x1 + 4x2
2x1 + 3x2 6

(8.2)

x1 + 2x2 4

Caracterizaci
on
analtica
Ejemplo
Interpretaci
on
gr
aca

x1 , x2 0

x2
h2

-8
2
0

x1
-5/3
2/3
-1/3

x2
0
1
0

h1
-4/3
1/3
-2/3

h2
0
0
1

x2
h1

-8
2
0

-1
1/2
1/2

0
1
0

0
0
1

-2
1/2
-3/2

x2
x1

-8
2
0

0
0
1

0
1
0

2
-1
2

-5
2
-3

Soluci
on del
problema

Captulo 8. CASOS ESPECIALES

70

Figura 8.2: Soluci


on degenerada

Las tres soluciones b


asicas son la misma, todas corresponden a x =
T
on.
(0, 2, 0, 0) . Se trata de tres bases que conducen a la misma soluci

8.4.

Problema no factible

Cuando se aplica el m
etodo del Simplex para resolver el problema auxiliar
correspondiente al m
etodo de las dos fases o de la M grande, el problema
original no tiene soluci
on factible si para todas las soluciones
optimas del
problema auxiliar existe al menos una variable articial diferente de 0.

Caracterizaci
on
analtica.
Simplex

Cuando se aplica el m
etodo de Lemke, se puede concluir que el problema no
tiene soluci
on factible si para se llega a una soluci
on en la que para todas las
variables b
asicas negativas, todas las tasas de sustituciones de las variables no
b
asicas con respecto a dichas variables b
asicas son positivas.

Caracterizaci
on
analtica. Lemke

Captulo 8. CASOS ESPECIALES

71

Figura 8.3: Problema sin soluci


on factible

min. z = 2x1 + 3x2 = max. (z) = 2x1 3x2


x1 + 2x2 1
x1 + x2 3

Ejemplo
(8.3)

x1 , x2 0
Esta sera la tabla a la que se llegara aplicando el m
etodo de las dos fases.

x1
a2

2
1
2

x1
0
1
0

x2
-1
2
-1

h2
-1
0
-1

h1
-1
1
-1

Al aplicar Lemke se iterara de la siguiente manera

a2
0
0
1

Aplicando las
dos fases

Aplicando
Lemke

Captulo 8. CASOS ESPECIALES

8.5.

h1
h2

0
1
-3

x1
-2
1
-1

x2
-3
2
-1

h1
0
1
0

h2
0
0
1

0
h1
x1

0
-2
3

-1
0
1

0
1
1

-2
1
0

1
-1

72

Regi
on de factibilidad no acotada

B
ptima existe una variable, xk , no b
Si en la soluci
on o
asica, y pik
0 para
todas las variables b
asicas (i = 1...m), entonces si al aumentar el valor de
xk aumenta el valor de todas las variables b
asicas, con lo que la regi
on de
soluciones factibles no est
a acotada.

Caracterizaci
on
analtica

Si el VkB 0, a pesar de que es posible introducir esta variable, con el consiguiente incremento de todas las variables b
asicas, la introducci
on de xk no
nica.
resulta interesante, con lo que la soluci
on
optima es u

ptima
Soluci
on o
nica
u

max. z = x1 + x2

Ejemplo

x1 + 2x2 6

(8.4)

2x1 + 2x2 0
x1 , x2 0

x1
x2

-2/3
2/3
4/3

x1
0
1
0

x2
0
0
1

h1
-1/3
1/3
2/3

h2
-1/3
-2/3
-1/3

Soluci
on del
problema

Si el VkB = 0, es posible introducir esta variable, con el consiguiente incremento


de todas las variables b
asicas, la introducci
on de xk no altera el valor de la
funci
on objetivo con lo que existen soluciones
optimas m
ultiples.
max. z = 2x1 + 4x2
x1 + 2x2 6
2x1 + 2x2 0
x1 , x2 0

Soluciones
ptimas
o
m
ultiples
Ejemplo

(8.5)

Captulo 8. CASOS ESPECIALES

73

nica
Figura 8.4: Regi
on de factibilidad no actodada con soluci
on
optima y u

x1
x2

-4
2/3
4/3

x1
0
1
0

x2
0
0
1

h1
-2
1/3
2/3

h2
0
-2/3
-1/3

Si el VkB 0, es posible introducir esta variable, con el consiguiente incremento


de todas las variables b
asicas y el incremento de z, con lo que el problema no
est
a acotado y no se puede hablar de soluci
on
optima.

Soluci
on del
problema

z no acotada

Captulo 8. CASOS ESPECIALES

Figura 8.5: Regi


on de factibilidad no actodada con soluci
on
optimas m
ultiples

Figura 8.6: Regi


on de factibilidad no actodada con funci
on objetivo no actodada

74

Captulo 8. CASOS ESPECIALES

max. z = 3x1 + x2

75

Ejemplo

x1 + 2x2 6

(8.6)

2x1 + 2x2 0
x1 , x2 0

x1
x2

-21/3
2/3
4/3

x1
0
1
0

x2
0
0
1

h1
-8/3
1/3
2/3

h2
10/3
-2/3
-1/3

Soluci
on del
problema

Captulo 9

POSTOPTIMIZACION

9.1.

Introduction

Dado un problema de PL:


max z = cx
Ax = b

(9.1)

x0
Una vez otenida la soluci
on
optima x , podran producirse cambios en el problema, que pueden hacer que la x deje de ser la soluci
on
optima. En particular, puede cambiar:
1. b
2. c
3. Aparici
on de una nueva actividad (una nueva columna en A y una nueva
componente en c)
4. Aparici
on de una nueva restricci
on (una nueva la en A y una nueva
componente en b)
5. Cambio en aij

9.2.

Cambio en b

Si el vector de disponibilidad de recursos cambia, b


, cambia:
1. u
B = B 1 b

2. z
= c B u
B
No cambia
1.
2.
3.
4.

B
B 1
p B = B 1 A
V B = c c B B 1 A. En particular, al tratarse de la soluci
on
optima V B 0


Captulo 9. POSTOPTIMIZACION

La soluci
on puede dejar de ser factible, si alg
un u
i < 0. En an
alisis consiste en

B
recalcular u :
on sigue siendo factible y, como V B 0, las varia1. Si u
B
i 0 i la soluci
bles b
asicas son las mismas, con un nuevo nivel de realizaci
on u
B y un

nuevo valor de la funci


on objetivo z
2. Si u
B
<
0
la
soluci
o
n
deja de ser factible pero cumple el criterio de opi
timalidad, V B 0. Se debe aplicar el m
etodo de Lemke hasta obtener una
soluci
on que adem
as de cumplir el crierio de optimalidad sea factible, la
nueva soluci
on
optima, que tendr
a un conjunto de variables b
asicas de
las de la soluci
on original.

9.3.

Cambio en c

Si el vector de contribuciones unitarias al benecio, c


, cambia:
1. z
= c
B uB
2. V B = c
c
B B 1 A
No cambia:
1.
2.
3.
4.

B
B 1
p B = B 1 A
uB = B 1 b. En particular, como la soluci
on era factible uB 0

La soluci
on puede dejar de ser
optima, si alg
un Vi
B > 0. En an
alisis consiste
en recalcular V
B :
ptima y, como uB 0, las variaon sigue siendo o
1. Si Vj
B 0 j la soluci
bles b
asicas son las mismas, con el mismo nivel de realizaci
on uB y un

nuevo valor de la funci


on objetivo z
2. Si Vj
B > 0 la soluci
on deja de ser
optima pero sigue siendo factible,
uB 0: se debe aplicar el m
etodo de Simplex hasta obtener una soluci
on
que adem
as de ser factible cumpla el crierio de optimalidad, la nueva
soluci
on
optima, que tendr
a un conjunto de variables b
asicas de las de
la soluci
on original.
Si solo cambia una componente de c, se pueden dar dos situaciones:
1. Cambia ck y xk no es variable b
asica. Solo cambia VkB , con lo que esta
actividad, que no era b
asica, al cambiar VkB pordra ocurrir que VkB 0,
en cuyo caso la soluci
on original no sera
optima.
2. Cambia ck y xk es variable b
asica, con lo que cambiara todo V B .

77


Captulo 9. POSTOPTIMIZACION

9.4.

Nueva actividad

Una actividad k queda caracterizada por:


on unitaria al benecio de dicha actividad y
1. ck la contribuci
2. Ak el consumo que hace dicha actividad de cada uno de los recursos.
Con la aparici
on de una nueva actividad, la soluci
on
optima del problema puede ser la misma o puede ser otra mejor.
Es decir, si interesa realizar dicha actividad, ser
a porque la soluci
on a la que
se llegar
a ser
a mejor. Si no interesa realizar dicha actividad, la mejor soluci
on
ser
a la obtenida para el problema antes de introducir dicha actividad.
En efecto, con la introducci
on de una nueva actividad, se debe calcular el criterio del simples VkB la variable correspondiente xk .
ptima y no interesa realizar dicha
Si VkB 0 la soluci
on sigue siendo o
actividad.
Si VkB > 0, la soluci
on deja de ser
optima porque la introducci
on de la
nueva actividad representa una oportunidad de mejora. Se debe aplicar
el m
etodo del Simplex hasta alcanzar la soluci
on
optima

9.5.

Nueva restricci
on

Una restricci
on l queda caracterizada por:
on unitaria al benecio de dicha actividad y
1. bl la contribuci
2. alj el consumo que hacen todas las actividades del nuevo recurso y
3. el signo de la desigualdad
En el caso de una restriccion de igualdad o de desigualdad se convierte en una
de igualdad con la variable de holgura correspondiente


alj xj bl


j

alj xj + hl = bl

alj xj bl

alj xj hl = bl

(9.2)

En el caso de una restricci


on de tipo igual, es equivalente a dos: una de con
y otra con lgeq:

78


Captulo 9. POSTOPTIMIZACION


j

a x 
j lj j
alj xj = bl equivalente a
alj xj l
j alj xj

(9.3)

Con la aparici
on de una nueva restricci
on, la soluci
on
optima del problema
puede ser la misma o puede ser otra peor. Es decir:
ptima original cumple la nueva restricci
si la soluci
on o
on, la soluci
on
ptima seguir
o
a siendo factible y tambi
en
optima, es decir, la soluci
on

optima no cambiar
a;
si la soluci
on
optima obtenida no cumple con la nueva restricci
on, la
soluci
on seguir
a dejar
a de ser factible y habr
a que obtener una nueva
soluci
on factible y
optima, peor que la original.
Cuando aparece una nueva restricci
on, la forma de obtener la nueva soluci
on
factible sin resolver el problema desde el principio consiste en:
1. Introducir en la tabla de la soluci
on
optima nal la nueva restricci
on tal
y como habra aparecido en la primera tabla y
2. operar con las las para conseguir ceros en la matriz p B donde debera
haberlos (esto se explica en el ejemplo nal, 9.7.4).

9.6.

Cambio en aij

Se pueden dar dos situaciones, que la variable xj sea b


asica o que no.

9.6.1.

Cambio en aij con xj no b


asica

Si cambia aij y xj es una variable no b


asica, cambia:
1. Vj
B = cj c B B 1 Aj
2. pj
B = B 1 Aj

No cambia:
1.
2.
3.
4.
5.
6.

B
B 1
z = c B uB
VkB , k j (no cambia el criterio del simplex del resto de variables b
asicas)
pk
B = B
1 A
k k j
u
B = B
1 b

79


Captulo 9. POSTOPTIMIZACION

Solo cambia VjB , con lo que:


si VjB > 0 interesa realizar dicha actividad , en cuyo caso habra que aplicar el m
etodo del Simplex y xj entrara en la base en la primera iteraci
on.
Se debera iterar hasta alcanzar la nueva soluci
on
optima;
si VjB 0 no interesa introducir la variable xj en la base y la soluci
on

optima no vara.

9.6.2.

Cambio en aij con xj b


asica

Si cambia aij y xj es una variable b


asica, cambia:
1.
2.
3.
4.
5.
6.

B
1
u
B = B
1 b
z
= c
B u
B
V
B = c c
B B
1 A

p
B = B
1 A

Se pueden dar cuatro situaciones, ligadas a la p


erdida o no de las condiciones
de soluci
on factible y de soluci
on
optima. La tabla siguiente resume los casos
que se pueden dar:
VB 0
Soluci
on
optima
Lemke

uB 0
uB 0

9.7.

V B 0
Simplex
-

Ejemplo
max z = x1 + 2x2 + 3x3
sujeto a:
x1 + x2 + x3 16

(9.4)

3x1 + 2x2 + 2x3 = 26


x1 + x3 10

Tabla correspondiente a la soluci


on
optima.

h1
h3
x3

-39
3
3
13

x1
-7/2
-1/2
1/2
3/2

x2
-1
0
1
1

x3
0
0
0
1

h3
0
0
1
0

h1
0
1
0
0

a2
-3/2
-1/2
1/2
1/2

a3
0
0
-1
0

80


Captulo 9. POSTOPTIMIZACION

9.7.1.

Cambio de b

Supongamos que b
=

cas, u

14

22

11

. El nuevo valor de las variables b


asi-

sera:

u
B

3
14
0

1 22 = 0
11
11
0

1/2
1/2
1/2

= B 1 b
= 0
0

(9.5)

La soluci
on sigue siendo factible y
optima.
Supongamos que b
=

cas, u

12

26

11

. El nuevo valor de las variables b


asi-

sera:

u
B

0
12
1

1 26 = 2
0
11
13

1/2
1/2
1/2

= B 1 b
= 0
0

La soluci
on ya no es factible y es necesario aplicar Lemke.

9.7.2.

h1
h3
x3

-39
-1
2
13

x1
-7/2
-1/2
1/2
3/2

x1
h3
x3

-32
2
1
10

0
1
0
0

x2
-1
0
1
1

x3
0
0
0
1

h3
0
0
1
0

h1
0
1
0
0

a2
-3/2
-1/2
1/2
1/2

a3
0
0
-1
0

-1
0
1
1

0
0
0
1

0
0
1
0

-7
-2
1
3

2
1
0
-1

0
0
-1
0

Cambio de c

Supongamos que c
=

El nuevo valor del vector de criterios del Simplex, V


B sera:

(9.6)

81


Captulo 9. POSTOPTIMIZACION

1/2

1/2
3/2

0
1
1

0
0
1

0
1
0

82

V B = c
c
B B 1 A =

0 = 4
0

(9.7)
La soluci
on sigue siendo factible y
optima.
Supongamos que c
=

El nuevo valor del vector de criterios del Simplex, V


B sera:

1/2

1/2
3/2

0
1
1

0
0
1

0
1
0

V B = c
c
B B 1 A =

0 = 3/2
0

(9.8)
La soluci
on ya no es
optima y es necesario aplicar el m
etodo del Simplex.

9.7.3.

h1
h3
x3

-39
3
3
13

x1
3/2
-1/2
1/2
3/2

x2
-2
0
1
1

x3
0
0
0
1

h3
0
0
1
0

h1
0
1
0
0

a2
-3/2
-1/2
1/2
1/2

a3
0
0
-1
0

h1
x1
x3

-48
6
6
4

0
0
1
0

-5
1
2
-2

0
0
0
1

-3
1
2
-3

0
1
0
0

-3
0
1
-1

3
-1
-2
3

Nueva actividad

Existe la posiblidad de realizar una nueva actividad, x4 y se sabe que:


c4 = 5

A4 = 1


Captulo 9. POSTOPTIMIZACION

El criterio del simplex de la nueva actividad es:


V4B = c4
c B B 1 A4 = c4
B A4

5 0 3/2 0 1 = 7/2
1

(9.9)

La soluci
on ya no es
optima y es necesario aplicar el m
etodo del Simplex. Para
reutilizar la tabla, es necesario calcular p4B

0
0

9.7.4.

1/2
1/2
1/2

p4B = B 1 A4

0
1
1/2


1 1 = 1/2
0
1
1/2

(9.10)

h1
h3
x3

-39
3
3
13

x1
3/2
-1/2
1/2
3/2

x2
-2
0
1
1

x3
0
0
0
1

x4
7/2
1/2
-1/2
1/2

h3
0
0
1
0

h1
0
1
0
0

a2
-3/2
-1/2
1/2
1/2

a3
0
0
-1
0

x4
h3
x3

-60
6
6
10

0
-1
0
2

-1
0
1
1

0
0
0
1

0
1
0
0

0
0
1
0

-7
2
1
-1

2
-1
0
1

0
0
-1
0

Nueva restricci
on

Supongamos que aparece la siguiente nueva restricci


on
x1 + x3 15

(9.11)

on sigue siendo factible y


optima.
Como x2 + x3 = 0 + 13 15, la soluci
Supongamos que aparece la siguiente nueva restricci
on
x2 + x3 10

(9.12)

83


Captulo 9. POSTOPTIMIZACION

84

Como x2 + x3 = 0 + 13  10, la soluci


on
optima ya no cumple esta nueva
restricci
on, con lo que ya no es soluci
on factible del nuevo problema.
La restricci
on se puede formular como:
x2 + x3 h4 = 10

h4

-39
3
3
13
10
-3

x1
-7/2
-1/2
1/2
3/2
0
-3/2

x2
-1
0
1
1
1
0

x3
0
0
0
1
1
0

h3
0
0
1
0
0
0

h1
0
1
0
0
0
0

h4
0
0
0
0
1
1

a2
-3/2
-1/2
1/2
1/2
1/2
-1/2

a3
0
0
-1
0
0
0

h1
h3
x3
x1

-32
4
2
10
2

0
0
0
0
1

-1
0
1
1
0

0
0
0
1
0

0
0
1
0
0

0
1
0
0
0

7/3
-1/3
1/3
1
-2/3

2
1
0
-1
1/3

0
0
-1
0
0

h1
h3
x3

9.7.5.
Si b =

(9.13)

An
alisis de sensibilidad de b

b1

26

10

, el nuevo valor de las variables b


asicas, u
B sera:

uB = B 1 b = 0
0

1/2
1/2
1/2

0
b1

1 26 =
10
0

b1 13

3
0 b1 13

13

Si b =

16

b2

10

1 1/2
0
16

1/2
1 b2 =
uB = B 1 b = 0
0
1/2
0
10

16 b2 /2

b2 /2 10 0 20 b2 32
b2 /2
(9.15)

(9.14)

, el nuevo valor de las variables b


asicas, u
B sera:

An
alisis b1

An
alisis b2


Captulo 9. POSTOPTIMIZACION

Si b =

16

26

b3

, el nuevo valor de las variables b


asicas, u
B sera:

uB = B 1 b = 0
0

1/2
1/2
1/2

85

An
alisis b3

0
16

1 26 =
0
b3

13 b3 0 b3 13
13

(9.16)

Resumen
13 b1 <
20 b2 32

(9.17)

< b3 13

9.7.6.

An
alisis de sensibilidad de c

Variable x1 . Variable no b
asica

V1B = c1 B a2 = c1

An
alisis c1

3/2

3 = c1 9/2 0 c1 9/2
1

(9.18)
Variable x2 . Variable no b
asica

V2B = c2 B a3 = c2

An
alisis c2

3/2

2 = c2 3 0 c2 3
0

(9.19)

Variable x3 . Variable b
asica

An
alisis c3

V B = c c B B 1 A =

1/2 0 0 0 1

0 0 0 c3 1/2
1 0 1 0 =
3/2
1 1 0 0

1 3/2c2 2 c3 0 0 0 0 c3 2

c3

(9.20)


Captulo 9. POSTOPTIMIZACION

Resumen
< c1 4,5
< c2 3
2 c3 <

(9.21)

86


Captulo 9. POSTOPTIMIZACION

9.8.

La aparente paradoja de b

Dado el problema
max z = x1 + 3x2
x1 + 2x2 20

(9.22)

2x1 + x2 20
x1, x2 0
La tabla del simplex correspondiente a la soluci
on
optima es:

x2
x1

-80/3
20/3
20/3

x1
0
0
1

x2
0
1
0

h1
-5/3
2/3
-1/3

h2
-1/3
1/3
-2/3

Si realizamos en an
alisis de sensibilidad con respecto a b1 , el resultado es el
siguiente:





b1
2b1 20
2/3
1/3
1
uB = B 1 b =
=
0 10 b1 40
1/3
2/3
b2 + 40
20
3
(9.23)
on
Es decir, si la disponibilidad el recurso R1 (b1 ) es superior a 40, la soluci
no es factible. C
omo puede ser que si aumentamos la disponibilidad de un
recurso de una restricci
on de tipo la soluci
on se haga no factible?

87

Captulo 10
PARAM
PROGRAMACION
ETRICA

10.1.

Introducci
on

10.2.

Programaci
on con c()

10.2.1.

M
etodo general

Procedimiento general: Tras la resoluci


on para un valor de 0
1. C
alculo de uB (0 )
2. C
alculo del 1 y 2 , tal que uB 0 si 1 2
3. Para 1 (dem para 2 )
a) si 1 es (si 2 es ), no hay valores menores (mayores) de
que analizar.
b) en caso contrario: obtener la degenerada para = 1 :
1) Si es posible aplicar el m
etodo del Lemke, iterar para obtener
otra base de la misma soluci
on degenerada y volver al punto 1.
2) Si no es posible aplicar el m
etodo del Lemke, es que no hay
soluci
on factible fuera del valor de extremo estudiado.

10.2.2.

Ejemplo c()
max z = 5x1 + 6x2 + 8x3
s.a.
2x1 + 3x2 + 4x3 25
3x1 + 2x2 + 1x3 = 20
x1 , x2 , x3 0

(10.1)

PARAME
TRICA
Captulo 10. PROGRAMACION

-111/2
7/2
11/2

x3
x1

x1
0
0
1

x2
-1/2
1/2
1/2

x3
0
1
0

h1
-19/10
3/10
-1/10

89

a
-2/5
-1/5
2/5

Sea c1 = , si = 5, T0 es la tabla correspondiente a la soluci


on
optima.
A continuaci
on vamos a realizar el an
alisis para c() =
0

, , con

Si modica su valor, se modicar


a el vector de criterios del Simplex V B ().
B
Siempre y cuando V () 0 las actividades b
asicas ser
an x1 y x3 , con los
niveles de realizaci
on de la tabla T0 . El criterio del Simplex V B () es:

V () = c c B

A=cc p =

0
1

1/2
1/2

1
0

4
2

3/10
1/10

(10.2)
Las variables b
asicas son x1 y x3 siempre y cuando V B (). Es decir:

40
4 24
24 0

(10.3)

Si 4 24, la tabla corresondiente a la soluci


on
optima es T0 ():
T0 ()
x3
x1

28 11
2
7/2
11/2

x1
0
0
1

x2
4
2
1/2
1/2

x3
0
1
0

h1
24
10
3/10
-1/10

ptimo m
Si = 4, la tabla se convierte en T1 , correspondiente a un o
ultiple.
Introduciendo x2 y sacando x3 se obtiene una nueva soluci
on a la que le corresponde la tabla T2

24
10

PARAME
TRICA
Captulo 10. PROGRAMACION

T1
x3
x1
T2
x2
x1

-50
7/2
11/2
-50
7
2

x1
0
0
1
x1
0
0
1

x2
0
1/2
1/2
x2
0
1
0

x3
0
1
0
x3
0
2
-1

90

h1
-2
3/10
-1/10
h1
-2
3/5
-2/5

Si modica su valor, se modicar


a el vector de criterios del Simplex V B ().
Siempre y cuando V B () 0 las actividades b
asicas ser
an x1 y x2 , con los
niveles de realizaci
on de la tabla T2 . El criterio del Simplex V B () es:

V B () = c c B B 1 A = c c B p =

0
1

1
0

2
1

3/5
2/5

4
(10.4)

El criterio del Simplex de la tabla T2 nunca se anula para valores de tales que
4.
Es decir, para cualquier valor de menor que 4, las variables b
asicas con x1
y x2 . Existe aqu una aparente contradicci
on por el hecho de que si c1 es muy
grande en valor absoluto y negativo, parece sensato pensar que x1 debera
no ser una variable b
asica porque deteriora notablemente la funci
on objetivo.
Por ejemplo, parace razonable pensar que si c1 = 1000, si z representa el
benecio de un sistema real, estaramos perdiendo 1000 unidades monetarias,
con lo que parece intuitivo pensar que esta variable no debera estar en la
soluci
on nal.
La explicaci
on es la siguiente. Si las variables b
asicas con x1 y x2 (aun cuando
c1 = << 0), podemos tratar de introducir:
x3 . Para cualquier valor positivo de x3 , x1 aumenta, con la que la soluci
on
es a
un peor en t
erminos de la funci
on objetivo (por eso, el criterio del
simplex de x3 siempre es negativo).
h1 . Para cualquier valor positivo de h3 , x1 aumenta, con la que la soluci
on es a
un peor en t
erminos de la funci
on objetivo (por eso, el criterio
del simplex de h3 siempre es negativo).
Es decir, el criterio del simplex nos dice c
omo se modica la z al introducir una
variable no b
asica con valor 1. Dada la estructura de las restricciones, hacer
que cualquier de las variables no b
asicas crezca hace que x1 crezca tambi
en,

218
5

PARAME
TRICA
Captulo 10. PROGRAMACION

91

con lo que la soluci


on a la que se llega es peor, as que para cualquier 4,
las variables b
asicas de la soluci
on
optima son x1 y x2
Alternativamente, se puede explicar la aparente paradoja por el hecho de que
cualquier soluci
on para la cual x1 = 0, la soluci
on correspondiente es no factible.
Volviendo a la tabla T0 (), si = 24, la tabla se convierte en la tabla T3 , correspondiente a un
optimo m
ultiple. Introduciendo h1 sacando x3 se obtiene
la tabla T4 correspondiente a la soluci
on
optima alternativa:
T3
x3
x1
T4
h3
x1

160
7/2
11/2
160
35/3
20/3

x1
0
0
1
x1
0
0
1

x2
-10
1/2
1/2
x2
-10
5/3
2/3

x3
0
1
0
x3
0
10/3
1/3

h1
0
3/10
-1/10
h1
0
1
0

De nuevo, Si modica su valor, se modicar


a el vector de criterios del Simplex
V B (). Siempre y cuando V B () 0 las actividades b
asicas ser
an x1 y h1 , con
los niveles de realizaci
on de la tabla T4 . El criterio del Simplex V B () es:

V () = c c B

A=cc p =

0
1
0

5/3
2/3

10/3
1/3

62
3

24
3

(10.5)
El criterio del Sipmlex no se hace positivo para ning
un valor de tal que > 24
En resumen:
Variables b
asicas: x1 = 2 y x2 = 7 si 4 con z = 42 + 2
Variables b
asicas: x1 = 11/2 y x3 = 7/2 si 4 24 con z = 28 + 11/2
Variables b
asicas: x1 = 20/3 y h1 = 35/3 si 24 con z = 20/3

1
0


=
0)

PARAME
TRICA
Captulo 10. PROGRAMACION

10.3.

Programaci
on con b()

10.3.1.

M
etodo general

Procedimiento general:
1.
2.
3.
4.

Resoluci
on para un valor de 0
C
alculo de V B (0 )
C
alculo del 1 y 2 , tal que V B 0 si 1 2
Para 1 (dem para 2 )
a) si 1 es (si 2 es ), no hay valores menores (mayores) de
que analizar.
b) en caso contrario: obtener la soluci
on
optima m
ultiple para = 1 :
1) Si es posible aplicar el m
etodo del Simplex, obtener una soluci
on
optima b
asica alternativa y volver al punto 1.
2) Si no es posible aplicar el m
etodo del Simplex, es que no hay
soluci
on factible fuera del valor de extremo estudiado.

10.3.2.

Ejemplo c()
max z = 3x1 + 4x2 + 2x3 + 3x4
s.a.
30x1 + 10x2 + 10x3 + 15x4 120

(10.6)

50x1 + 50x2 + 30x3 + 30x4 150


x1 , x2 , x3 , x3 0
x1
-2
5
5/3

T0
h1
x4
b() =

120

-15
45
5
150 +


u () = B

b() =

1
0

x2
-1
-15
5/3

x3
-1
-5
1

x4
0
0
1

h1
0
1
0

h2
-1/10
-1/2
1/30

1/2
1/30



120
150 +


=

45 3/2
5 + /30


(10.7)

92

PARAME
TRICA
Captulo 10. PROGRAMACION

La siguiente tabla es v
alida si uB 0. Es decir, si 150 30
T0 ()
h1
x4

x1
-2
5
5/3

-15
45-3/2
5-/30

x2
-1
-15
5/3

x3
-1
-5
1

x4
0
0
1

h1
0
1
0

h2
-1/10
-1/2
-1/30

Si = 30
T0 ( = 30)
h1
x4

-18
0
6

x1
-2
5
5/3

x2
-1
-15
5/3

x3
-1
-5
1

x4
0
0
1

h1
0
1
0

h2
-1/10
-1/2
-1/30

T1 ( = 30)
x2
x4

-18
0
6

-7/3
-1/3
20/9

0
1
0

-2/3
1/3
4/9

0
0
1

-1/60
-2/30
1/9

-1/60
1/30
-2/90


B

u () = B

b() =

1/60
1/9

1/30
2/90



120
150 +


=

(30 + )/10
(900 12)/90

(10.8)
La siguiente tabla es v
alida si uB 0. Es decir, si 30 75
T1 ()
-18
(-30+)/10
(900-12)/90

x2
x4

x1
-7/3
-1/3
20/9

x2
0
1
0

x3
-2/3
1/3
4/9

x4
0
0
1

h1
-1/60
-2/30
1/9

h2
-1/60
1/30
-2/90

Si = 75
T1 ( = 75)
x2
x4

-18
9/2
0

x1
-7/3
-1/3
20/9

x2
0
1
0

x3
-2/3
1/3
4/9

x4
0
0
1

h1
-1/60
-2/30
1/9

h2
-1/60
1/30
-2/90

T2 ( = 75)
x2
h2

-18
9/2
0

-9
3
-100

0
1
0

-2
1
20

-3
3/2
-45

-2/5
1/10
-5

0
0
1

93

PARAME
TRICA
Captulo 10. PROGRAMACION


B

u () = B

b() =

1/10
5

0
1



120
150 +


=

(120 + )/10
6 450

(10.9)
La siguiente tabla es v
alida si uB 0. Es decir, si 75 120
T2 ()
x2
h2

-18
(-120+)/10
6 450

-9
3
-100

0
1
0

-2
1
20

-3
3/2
-45

-2/5
1/10
-5

0
0
1

Para > 120 no existe soluci


on factible del problema.
En resumen:
No existe soluci
on factible para < 150
Variables b
asicas: h1 = 45 3
2 y x4 = 5 +
Variables b
asicas: x2 =

30 si 150
90012
si 30 75
90

30

30+
y x4 =
10
120+
y h2 =
10

Variables b
asicas: x2 =
6 450 si 75 120
No existe soluci
on factible para > 120

10.4.

Ejemplo c() y b()


max z = 2x1 + 4x2 + x3
s.a.
2x1 + 5x2 + 1x3 40

(10.10)

x1 + 4x2 + 2x3 24
x1 , x2 , x3 0
b() =
c() =

40
2

24 3
4+

, co 0

Soluci
on
optima para = 0

x1
x3

-40
56/3
8/3

x1
0
1
0

x2
-1
2
1

x3
0
0
1

h1
-1
2/3
-1/3

h2
0
-1/3
2/3

94

PARAME
TRICA
Captulo 10. PROGRAMACION

4+


uB () = B 1 b() =

2/3
1/3

V B () = c c B B 1 A = c c B p B =


1 2 0
2/3
1/3
1
=
0 1 1 1/3
2/3


0 1 0 1 0

1/3
2/3



40
24 3


=

1
3

56 + 3
8 6

(10.11)


(10.12)

VB 0 1

(10.13)

4
3

(10.14)

uB 0

La condici
on m
as restricitiva es 1, ya que cuando esto ocurre, el problema
tiene dos soluciones b
asicas
optimas factibles. Con > 1, las soluciones en las
que x1 y x3 son variables b
asicas son no factibles. A continuaci
on guran tres
tablas, correspondientes, respectivamente a la soluci
on b
asica con x1 y x3 en
funci
on de , la tabla para = 1 y la soluci
on b
asica
optima alternativa para
ese valor de .

4+

x1
x3

(56 + 3)/3
(8 6)/3

x1
0
1
0

x1
x3

-40
59/3
2/3

0
1
0

0
2
1

0
0
1

-1
2/3
-1/3

0
-1/3
2/3

x1
x2

-40
55/3
2/3

0
1
0

0
0
1

0
-2
1

-1
4/3
-1/3

0
-5/3
2/3

x2
1
2
1

x3
0
0
1

h1
-1
2/3
-1/3

h2
0
-1/3
2/3

V B () = c c B B 1 A = c c B p B =



1 0 2
4/3
5/3
0 2 4+
=
0 1
1
1/3
2/3


0 0 1 ( 4)/3 (2 2)/3)
(10.15)

95

PARAME
TRICA
Captulo 10. PROGRAMACION


B

u () = B

b() =

4/3
1/3

5/3
2/3



40
24 3

1
=
3

40 + 15
8 6

(10.16)

VB 0 1 4

(10.17)

4
3

(10.18)

uB 0 3/8

Por lo tanto, para que las variables b


asicas x1 y x2 conduzcan a una soluci
on
ptima y factible 1 43 . El extremo inferior de este intervalo coincide, nao
turalmente, con el extremo superior del intervalo obtenido para las soluciones
b
asicas con x1 y x3 .
4

Con = 3 se obtiene una soluci


on degenerada. Con > 3 se obtiene una soluci
on b
asica no factible, por lo que deja de ser la soluci
on
optima y factible del
problema. A continuaci
on guran las siguientes tres tablas: la correspondiente
a x1 y x2 como variables b
asicas, en funci
on de , la anterior con = 43 y la
soluci
on obtenida al aplicar Lemke a patir de la anterior.

x1
x2

(40 + 15)/3
(8 6)/3

x1
0
1
0

x1
x2

40
0

0
1
0

0
0
1

-1/3
-2
1

-8/9
4/3
-1/3

-2/9
-5/3
2/3

40
0

0
1
0

-8/3
4
-3

-3
2
-3

0
0
1

-2
1
-2

x1
h1

4+

x2
0
0
1

x3
1
-2
1

h1
( 4)/3
4/3
-1/3

h2
(2-2)/3
-5/3
2/3

V B () = c c B B 1 A = c c B p B =



1
4
2
0
1
0 2 0
=
0 3 3 1 2


0 4 + 3 0 2

(10.19)

96

PARAME
TRICA
Captulo 10. PROGRAMACION


B

u () = B

b() =

0
1

1
2



40
24 3


=

24 3
8 + 6

VB 0 4

uB 0


(10.20)

(10.21)

4
8
3

(10.22)

on
Por lo tanto, para que las variables b
asicas x1 y h2 conduzcan a una soluci
4

optima y factible 3 4. El extremo inferior de este intervalo coincide, naturalmente, con el extremo superior del intervalo obtenido para las soluciones
b
asicas con x1 y x2 .
Con = 4 se obtiene una soluci
on degenerada. Con > 4 se obtiene una soluci
on b
asica no
optima, por lo que deja de ser la soluci
on
optima y factible del
problema. A continuaci
on guran las siguientes tres tablas: la correspondiente
a x1 y h1 como variables b
asicas, en funci
on de , la anterior con = 4 y la
soluci
on obtenida al aplicar el m
etodo del Simplex a patir de la anterior.

24 3
8 + 6

x1
0
1
0

x2
4 +
4
-3

x3
-3
2
-3

h1
0
0
1

h2
-2
1
-2

x1
h1

12
16

0
1
0

0
4
-3

-3
2
-3

0
0
1

-2
1
-2

x2
h1

3
25

0
1/4
3/4

0
1
0

-3
1/2
-3/2

0
0
1

-2
1/4
-5/4

x1
h1

4+

4+

V B () = c c B B 1 A = c c B p B =


1/4 1
1/2
0
1/4
0
=
3/4 0 3/2 1 5/4


1 4 0 1 2 0 1 4
(10.23)

97

PARAME
TRICA
Captulo 10. PROGRAMACION


B

u () = B

b() =

0
1

1/4
5/4



40
24 3

1
=
4

24 3
40 + 15


(10.24)

V B 0 4

(10.25)

uB 0 8

(10.26)

Por lo tanto, para que las variables b


asicas x2 y h1 conduzcan a una soluci
on
ptima y factible 4 8. El extremo inferior de este intervalo coincide, nao
turalmente, con el extremo superior del intervalo obtenido para las soluciones
b
asicas con x1 y x2 .
Con = 8 se obtiene una soluci
on degenerada. Con > 8 se obtiene una soluci
on b
asica no
optima, por lo que deja de ser la soluci
on
optima y factible del
problema. A continuaci
on guran las siguientes dos tablas: la correspondiente
a x2 y h1 como variables b
asicas, en funci
on de , la anterior con = 8. Se
observa que para la variable x2 no existen tasas de sustituci
on negativas, con
lo que si > 4 no existe soluci
on factible, porque no es posible que x2 salga
de la base.

x2
h1

(24 3)/4
(40 + 15/4

x1
1 4
1/4
3/4

x2
h1

0
40

-1
1/4
3/4

x2
0
1
0

x3
1 2
1/2
-3/2

h1
0
0
1

h2
1 4
1/4
-5/4

0
1
0

-5
1/2
-3/2

0
0
1

-3
1/4
-5/4

En resumen:
Variables b
asicas: x1 = (56 + 3)/3 y x3 = (8 6)/3 si 0 1
Variables b
asicas: x1 = (45 + 15)/3 y x2 = (8 6)/3 si 1 4/3
Variables b
asicas: x1 = 24 3 y h1 = 8 + 6 si 4/3 4
Variables b
asicas: x1 = (24 3)/4 y h2 = (40 + 15)/4 si 4 8
No existe soluci
on factible para > 8

98

Captulo 11

TRANSPORTE Y ASIGNACION

11.1.

11.1.1.

Presentaci
on del problema de transporte

Introducci
on

Se trata de un caso particular de PL

11.1.2.

Formulaci
on

Dados
un conjunto de orgenes (O), cada uno de los cuales tiene asociada una
capacidad Oi (unidades de producto)
un conjunto de destinos (D), cada uno de los cuales tiene una demanda
asociada Dj (unidades de producto) y
el coste Cij asociado a transportar una unidad de producto del origen
i O al destino j D
el problema consiste en determinar las cantidades transportadas desde el origen i O al destino j D con el mnimo coste, xij .
max z =

Cij xij

ij

s.a.

xij Oi i O

jD

xij Dj j D

iO

xij 0 j D, i O
Problemas equilibrados:


iD

Oi =


jD

Dj

(11.1)


Captulo 11. TRANSPORTE Y ASIGNACION

100

Formulaci
on equivalente, si el problema est
a equilibrado

Cij xij
max z =
ij

s.a.

xij = Oi i O

(11.2)

jD

xij = Dj j D

xij 0 j D, i O

11.1.3.

Presentaci
on matricial

La formulaci
on extendida de 11.2
max z = s.a.
x11

+x12

...

+x1J
+x21

x22

+x2J

...

+x21

x11
x12

x22
...

...
+x1J

+x2J

...
...
...
...
...
...
...

+xI1
+xI1

+xI2

...

+xIJ
+xIJ

+xI2
...
+xIJ

=
=
=
=
=
=
=

O1
O2
OI
D1
D2
DJ

xij 0 j D, i O
(11.3)
De acuerdo con
max z = cx
s.a.

(11.4)

Ax = b
x0
Las matrices son:

A=

1
0
0
...
0
I

0
1
0
...
0
I

0
0
1
...
0
I

...
...
...
...
...
...

0
0
0
...
1
I

(11.5)

donde 1 representa un vector la con tantos elementos como destinos, todos


ellos con valor 1 y 0 representa un vector la con tantos elementos como
destinos, todos ellos con valor 0.


Captulo 11. TRANSPORTE Y ASIGNACION

b=

c=

11.1.4.

C11

...

CI1

O1
...
OI
D1
...
DJ
...

101

Cij

(11.6)

c1J

...CIJ

(11.7)

Representaci
on del problema

Representaci
on tabular especca, diferente, por ejemplo, de la matriz completa del m
etodo del simplex

destino 1
c11
x11

c11
...
ci1
xi1

cij
...
cI1
xI1

cI1

origen 1

origen i

origen J

...

destino j

...

c1j
...

x1j

...

...

...

...

...

xij

...

x1jJ

cij

...

...

xIj

...

cIj

x1J

1. Si el problema es equilibrado, existe al menos una soluci


on factible: xij =
OD
 i j
jD Dj

Oj

cIJ

Las propiedades..

cij

...

Propiedades

OD
 i j
iO Oi

O1

...

donde cij
es el coste reducido asociado al a variable xij , que se presentar
a m
as
adelante.

11.1.5.

c1J

ciJ

cIj
...

x1J

c1j

cij
...

destino J
cIJ

En efecto, cumple las restricciones:

cIj

OJ


Captulo 11. TRANSPORTE Y ASIGNACION

max z =

Cij xij

ij




xij

iO

s.a.

Oi Dj
jD Dj

= Oi 
= Oi i O
D
jD j
jD Dj
jD

 Oi Dj
Oi

=
= Dj iO
= Dj j D
O
i
iO
iO Oi
iO

xij =

jD

(11.8)

2. La base de cualquier soluci


on, B es una matriz unimodular y los elementos de B 1 son 0, 1 o -1.
3. El n
umero de restricciones linealmente independientes es car d(O) +
car d(D) 1
11.1.5.1. Propiedades de las soluciones b
asicas
El n
umero de variables b
asicas es igual al n
umero de restricciones linealmente independientes es car d(O) + car d(D) 1
nico ciclo (pasarela) Existe al menos uno:
Dada una soluci
on existe un u
cualquier actividad no b
asica se puede obtener como combinaci
on linea
de las b
asicas Existe solo uno: solo hay una forma de combinar linealmente actividades b
asicas
Las celdas de una soluci
on b
asica no permiten formar ciclos: no se pueden combinar linealmente
Las tasas de sustituci
on son 1, 1 o 0

11.2.

M
etodos de resoluci
on

Si el problema se formula como PE, el car


acter unimodular de la base garantiza
que el la soluci
on de la relajaci
on lineal siempre es entera.
Adem
as de cualquier m
etodo general de PL, dos atlernativas:
1. Stepping-stone
2. MODI
Procedimiento:
1. Soluci
on inicial de partida. Para esto existen diferentes m
etodos
2. Criterio de optimalidad. En este paso es donde se diferencian los m
etodos de Stepping-stone y MODI
3. Regla de entrada
4. Regla de salida

102


Captulo 11. TRANSPORTE Y ASIGNACION

11.2.1.

Obtenci
on del soluci
on inicial de partida

M
etodos
Rinc
on NO
Mnimo coste
Voguel
Otros
Diferente esfuerzo y diferente calidad de la soluci
on de partida

11.2.2.

Regla de entrada. Stepping-stone

11.2.3.

Regla de entrada. MODI

Las restricciones convenientemente modicadas se pueden exprear como:




Oi

xij = 0 i O

jD

Dj

(11.9)

xij = 0 j D

Se denen ui y vi A su vez, a la funci


on objetivo se le pueden sumar los t
erminos nulos, que son los primeros miembros de las dos expresiones anteriors y,
posteriormente, se puede operar:







z=
Cij xij =
Cij xij
ui Oi
xij
vj Dj
xij =
ij

ij

Oi Dj +

ij

xij (cij ui vj )

ij

(11.10)
Por lo tanto, la funci
on ojetivo se puede expresar como la suma de dos t
ermiB
a las vanos, uno constante y otro que depende de xij . Si se denota con xij

B
riables b
asicas y xij
a las no basicas, el t
ermino variable se puede reformular
como:



B
B
xij (cij ui vj ) =
xij
(cij ui vj ) +
xij
(cij ui vj )
(11.11)
ij

ij

ij

Se pueden elegir los valores de ui y vi de tal manera que cij ui vj = 0 si


la variable xij es b
asica. De esta manera, la expresi
on 11.11 es estrictamente
B
nula. El primer t
ermino lo es por que cij ui vj = 0 y el segundo porque xij
al tratarse de variables b
asicas.

103


Captulo 11. TRANSPORTE Y ASIGNACION

Por lo tanto, si una variable no b


asica entra a formar parte de la soluci
on, el

incremento de la funci
on objetivo es, precisamente, el valor de cij
= cij ui
vj . Es decir
z|x B =1 = cij ui vj
ij

11.2.4.

Regla de salida

11.2.5.

Criterio de optimalidad

(11.12)

Sean como sean calculados, el coste reducido cij


representa la reducci
on unitaria de la funci
on objetiva al introducir con valor 1 la variable no b
asica xij ,

por lo que la soluci


on es
optima si cij
0, j D, i O

11.3.

11.3.1.

Problemas desequilibrados

Oferta superior a demanda

Es necesario introducir un destino cticio d . El problema se redene sobre


un conjunto D = D {d }.
La variable xid representa la capacidad no utilizada del origen i O.
En la representaci
on tabular, de incorpora una la m
as.
Los costes de las nuevas variables son...

11.3.2.

Demanda superior a oferta

Es necesario introducir un destino cticio o . El problema se redene sobre un


conjunto O = O {o }.
La variable xo j representa la demanda no atendida del destino j D.
En la representaci
on tabular, de incorpora una columna m
as.
Los costes de las nuevas variables son...

11.4.

Soluciones degeneradas

104


Captulo 11. TRANSPORTE Y ASIGNACION

11.5.

Transporte y dualidad

El dual del problema de transporte es


max z =

= Oi ui +

Dj vj

s.a.
(11.13)

ui + vj cij i O, j D
ui libre de signo i O
vj libre de signo j D
Justicaci
on. El problema 11.13 es equivalente a
max z =

= Oi (u+
i ui ) +

Dj (vi+ vi )

s.a.
+

(u u ) + (v v ) cij i O, j D

(11.14)

u+
i , ui libre de signo i O

vi+ , vi libre de signo j D


El dual de este problema es
min z =

Cij xij

ij

s.a.

xij Oi i O

jD

xij Oi i O

(11.15)

jD

xij Dj j D

xij Dj j D

xij 0 j D, i O
Que es equivalente a 11.2
Por otro lado, V B de un problema P y de es ese mismo problema, formulado
en t
erminos de m
aximo son iguales, pero cambiados de signo.
Del teorema de las holguras complementarias:
B
h
ij = Vij

max

B
= Vij

cij ui vj =

min
B
Vij
min

(11.16)

105


Captulo 11. TRANSPORTE Y ASIGNACION

11.6.

Para pensar

11.7.

Ejemplo

106


Captulo 11. TRANSPORTE Y ASIGNACION

11.8.

11.8.1.

El problema de asignaci
on

Introducci
on

Se trata de un caso particular del problema de transporte, en el que:


m = car d(O) = car d(D) = n
Oi = 1 i O y
Dj = 1 j D
Es decir, el n
umero de orgenes y de destinos es el mismo y la capacidad de los
primeros y la demanda de los segundos es igual a 1.
Ejemplos...
El problema se puede formular como:
max z =

Cij xij

ij

s.a.

xij 1 i O

(11.17)

jD

xij 1 j D

iO

xij 0 j D, i O
De las m + n restricciones, en este caso existen I = J linealmente independientes, con lo que una soluci
on b
asica contendr
a m = n variables b
asicas.

11.8.2.

Representaci
on

Dada la estructura particular de este problema, se puede represetnar con una


tabla cuadrada con tantas las y columnas como el n
umero de origenes o de
destinos.

O1
O2

Oi

OI

D1
C11
C21

D2
C12
C22

Ci1

Ci2

Dj
C1j
C2j
C
Cij

CI1

CI2

CIj

Donde Cij es el coste de asignar el origen i al destino j


Por ejemplo,...

DJ
C1J
C2J
CiJ
CIJ

107


Captulo 11. TRANSPORTE Y ASIGNACION

O1
O2
O3
O4

D1
4
5
1
10

D2
2
2
8
1

D3
3
6
9
6

D4
1
3
2
4

D2

D3

D4

108

Una posible asignaci


on podra ser
D1
O1
O2
O3
O4

11.8.3.

Propiedades

En una soluci
on del problema, para cada la i, solo un valor xij = 1
En una soluci
on del problema, para cada columna j, solo un valor xij = 1
Si se suma una constante k a todos los costes de una la o de una columna, el problema resultante alcanza la soluci
on
optima para la misma
asignaci
on que el problema original. En efecto, por ejemplo, si cambian
todos los costes del origen i Ci
j = Ci j + k j, la nueva funci
on objetivo es:







Cij
xij =
Cij xi,j + (Ci
j + k)xi,j =
Ci,j xij +
Ci
j xij +
kxij =
z
=
i,j

ii ,j

ii ,j

i=i ,j

Ci,j xij + k
(11.18)

Se puede justicar, igualmente para una columna. En particular, k puede


ser el opuesto del menor valor de la la o la lnea corerspondiente.
En un problema en el que todos los costes son no negativos y hay un
conjunto de ceros, de tal manera que se puede encontrar un conjunto de
dichos ceros, de manera que hay un 0 y solo uno cada cada la y un 0
y solo un en cada columna, la soluci
on consiste en asignar los orignes y
destinos correspondientes a dichos ceros, con un coste total igual a 0.
D1
2
0
2
3

D2
0
2
5
1

D3
1
1
7
0

D4
3
1
0
3

i=i ,j

i=i ,j

ii,j

O1
O2
O3
O4

xij = z + k


Captulo 11. TRANSPORTE Y ASIGNACION

11.8.4.

M
etodo H
ungaro

1. Restar a cada la el menor coste de dicha la


2. Restar a cada columna el menor coste de dicha columna
3. Si existe un conjunto de costes iguales a cero que permiten realizar una
asignaci
on con coste global igual a cero, se ha obtenido la soluci
o
optima,
si no, hay que continuar.
4. Tachar todos los ceros con el mnimo n
umero posible de lneas (siempre
habr
a que utilizar menos que el n
umero de orignes o destinos, porque si
no, existira una asignaci
on con coste cero).
5. Identicar k igual al coste mnimo de todos los costes no tachados y
obtener un problema equivalente:
Restar k a los elementos sin tachar, sumar k
Sumar k a los elementos tachados
Dejar igual los elementos tachados una sola vez

O1
O2
O3
O4

D1
1
2
3
1

D2
4
1
2
2

D3
3
6
6
3

D4
1
7
6
7

O1
O2
O3
O4

D1
0
1
1
0

D2
3
0
0
1

D3
2
5
4
2

D4
0
6
4
6

-1

-1

-1

O1
O2
O3
O4

D1
0
1
1
0

D2
3
0
0
1

D3
0
3
2
0

D4
0
6
4
6

O1
O2
O3
O4

D1
0
0
0
0

D2
4
0
0
2

D3
0
2
1
0

D4
0
5
3
6

109

Captulo 12
ENTERA. FUNDAMENTOS
PROGRAMACION

12.1.

Divide y vencer
as

Considera el problema
z = max{cx : x S}
Ser
a posible dividir este problema en un conjunto de problemas de menor
tama
no y m
as f
aciles de resolver, resolverlos y luego juntar toda la informaci
on
para hallar la soluci
on del porblema original?
Se dice que S = S1 Sk es una descomposici
on de S en un conjunto
m
as peque
no de problemas y que si zk = max{cx : x Sk } para k = 1 . . . K,
entonces z = maxk zk .
Una forma tpica de representar el enfoque divide y vencer
as es mediante los

arboles de enumeraci
on. Por ejemplo si S {0, 1}3 , se puede construir el
arbol
que se presenta en la gura [?].
En este caso se divide el conjunto S en dos: S0 = {x S : x1 = 0} y S1 =
{x S : x1 = 1}. Despu
es estos dos subconjuntos se dividen en dos cada
uno: S00 = {x S0 : x2 = 0} = {x S : x1 = x2 = 0}, S01 = {x S0 : x2 = 1}
y as sucesivamente. Si nos jamos, cualquier hoja nal del
arbol Si1,i2,i3 es no
vaca si y s
olo si s = (i1, i2, i3) est
a en S. Es decir, las hojas nales (nodos) del

arbol corresponden precisamente a los puntos del conjunto B 3 que habramos


examinado mediante la enumeraci
on completa.

12.2.

Enumeraci
on implcita

Como ya hemos visto anteriormente, la enumeraci


on completa (o explcita) es
imposible de hacer para muchos problemas cuando el n
umero de variables
enteras crece. Luego a parte de dividir indenidamente el problema tenemos
que hacer algo m
as. C
omo podemos usar de forma inteligente algunas cotas
de los valores de {zk }? Vamos a ello.
Si S = S1 Sk es una descomposici
on de S en un conjunto m
as peque
no de
k
k
problemas, z = max{cx : x Sk } para k = 1 . . . K, z es una cota superior de
zk y zk es una cota inferior de zk ; entonces z = maxk zk es una cota superior
de z y z = maxk zk es una cota inferior de z.

ENTERA. FUNDAMENTOS
Captulo 12. PROGRAMACION

111

Vamos a ver ahora tres casos hipot


eticos para ver c
omo podemos utilizar con
sentido la informaci
on relativa a las cotas de un problema. Qu
e se puede decir
sobre la soluci
on
optima con la infomaci
on relativa a las cotas y qu
e conjuntos (suproblemas) neceistan seguir examin
andose para encontrar la soluci
on

optima?
. En la gura 12.1 se pude ver una descomposici
on del conjunto S en dos subconjuntos S1 y S2 y las cotas superiores e inferiores de los distintos problemas.

Ejemplo 1

Figura 12.1: Poda por acotamiento


Podemos ver que z = maxk zk = max{20, 25} = 25 y que z = maxk zk =
max{20, 15} = 20. Adem
as las cotas inferiores y superiores de z1 con iguales
y no hace falta seguir examinando el conjunto S1 . Entonces la rama corresponiente al conjunto S1 del
arbol puede ser podada por optimalidad.
. En la gura 12.2 vemos de nuevo la descomposici
on del conjunto S en dos
subconjuntos S1 y S2 y las cotas superiores e inferiores de los distintos problemas.

Ejemplo 2

Figura 12.2: No poda posible


Podemos ver que z = maxk zk = max{20, 26} = 26 y que z = maxk zk =
max{18, 21} = 21. A parte, la funci
on objetivo del problema tiene un valor
como poco de 21 y la cota superior z1 = 20, luego la soluci
on
optima no puede
estar en el subconjunto S1 . En este caso la rama correspondiente a S1 se poda
por acotamiento.
. En la gura 12.3 est
a descompuesto de nuevo el conjunto S en dos subconjuntos S1 y S2 con diferenctes cotas superiores e inferiores.
Podemos ver que z = maxk zk = max{24, 37} = 37 y que z = maxk zk =
max{13, } = 13. En este caso no podemos decir nada y hay que seguir explorando los subconjuntos S1 y S2 .
Basados en estos tres ejemplos se pueden enumerar las tres razones que permiten podar alguna rama del
arbol y con ello enumerar de forma implcita un
gran n
umero de soluciones:
1. Poda por optimalidad: zt = {max cx : x St } se ha resuelto.
2. Poda por acotamiento: zt z.
3. Poda por infactibilidad: St =
Si nos preguntamos c
omo se pueden obtener las cotas, la respuesta es la misma que lo que vimos en el captulo anterior. Las cotas inferiores se calculan al
obtener soluciones factibles y las cotas superiores mediante relajaciones.

Ejemplo 3

ENTERA. FUNDAMENTOS
Captulo 12. PROGRAMACION

Figura 12.3: Poda por optimalidad

Construir un algoritmo de enumeraci


on implcita basado en los visto anteriormente es ya una tarea sencilla, aunque quedan a
un muchas preguntas por resolver para poder tener bien denido el algoritmo. Algunas de estas pregunta
puede ser:
Qu
e relajaci
on vamos a utilizar para hallar las cotas superiores?C
omo
elegir entre una sencilla cota d
ebil f
acil de obtener y una cota fuerte
cuyos c
alculos llevan m
as tiempo?
C
omo generamos los distintos subconjuntos del problema principal
S = S1 SK ?Cada conjunto se tiene que dividir en dos o m
as
subconjuntos?Tenemos que tener una regla a priori para subdividir los
problemas o es mejor que esas divisiones dependan de c
omo evoluciona
el problema?
En qu
e orden vamos a examinar los problemas? Normalmente tendremos un conjunto de nodos activos (ramas sin podar). Tenemos que estudiar el primer nodo al que hayamos llegado (FIFO), el que tenga mejor
cota superior u otro criterio?
Estas y otras cuestiones se discuten en el siguiente apartado.

12.3.

Branch and Bound: un ejemplo

La forma m
as com
un de resolver problemas con n
umeros enteros es usando
la enumeraci
on implcita o branch & bound, en donde las relajaciones lineales
se utilizan para calcular las cotas superiores.
Por ejemplo, dado este problema:
max z = 4x1 x2
s.a.

(12.1)

7x1 2x2 14
2
x2 32x1 2x2 3x Z+

Acotamiento. Para obtener una primera cota superior, a


nadimos las holguras
correspondientes (h1 , h2 y h3 ) y resolvemos la relajaci
on lineal de este problema (quitando las restricciones de integrabilidad). La tabla
optima a la que se
llega es:
RL

z
x1
x2
h3

50/7
20/7
3
23/7

x1
0
1
0
0

x2
0
0
1
0

h1
-4/7
1/7
0
-2/7

h2
-1/7
2/7
1
10/7

h3
0
0
0
1

112

ENTERA. FUNDAMENTOS
Captulo 12. PROGRAMACION

De aqu obtenemos una cota superior z =

59
7 ,

y una soluci
on que no es entera

on factible? Pues aparente( 20


7 , 3). Hay alguna forma de encontrar una soluci
mente, no. Luego no tenemos ninguna cota inferior a
un, z = .
Ramicaci
on. Como z z tenemos que dividir o ramicar. C
omo podemos dividir la regi
on factible? Una idea muy sencilla es elegir una variable que est
e en
la base y que debiera de ser entera pero no lo es, y dividir el problema en dos
subproblemas en funci
on del valor del valor que tiene la variable. Veamos, si
xj = x j Z 1 , se puede
 dividir el problema en:

S1 = S {x : xj x j }
!
S2 = S {x : xj x j }
Est
a claro que S = S1 S2 y que S1 S2 = . Otra raz
on por la que se eligen
estos subproblemas es que la soluci
on de la relajaci
on lineal no es factible en
las relajaciones lineales de S1 ni S2 . Esto es muy importante pues evita degeneraciones de la soluci
on (o m
ultiples soluciones); con lo cual max{z1 , z2 } z
y la cota superior tendr
a siempre menor valor.
1
Siguiendo esta idea, como x 1 = 20
an S1 = S {x :
7 Z , los subproblemas ser
xj 2} y S2 = S {x : xj 3}. Se puede ver en la gura ??. A los dos
subproblemas (nodos del
arbol) que deben ser examinados se les llama nodos
activos.
Elecci
on de un nodo. La lista de nodos activos que deben ser examinados contiene a S1 y S2 . Arbitrariamente elegimos S1 .
Reoptimizaci
on. C
omo podemos resolver las relajaciones lineales de los nuevos subproblemas sin necesidad de partir de cero? Como simplemente hemos
a
nadido una restricci
on que sabemos que no se cumple, al a
nadir la la la correspondiente a la tabla del simplex expresada en la base actual tendremos una
soluci
on no factible. Utilizando el m
etodo de Lemke en varios pivotes (tablas)
podemos llegar a la nueva soluci
on
optima.
Al resolver la relajaci
on lineal de S1 a
nadimos la restricci
on x1 2 o x1 + h4 =
2, h4 0. Y tendramos la siguiente tabla que ser
a igual que la anterior pero
con una la m
as en la parte inferior:

z1RL
x1
x2
h3
h4

50/7
20/7
3
23/7
-6/7

x1
0
1
0
0
0

x2
0
0
1
0
0

h1
-4/7
1/7
0
-2/7
-1/7

h2
-1/7
2/7
1
10/7
-2/7

h3
0
0
0
1
0

h4
0
0
0
0
1

Despu
es de pasar por dos soluciones intermedias se llega la la siguiente soluci
on
optima

113

ENTERA. FUNDAMENTOS
Captulo 12. PROGRAMACION

z1RL
x1
x2
h1
h2

15/2
20/7
3
23/7
-6/7

x1
0
1
0
0
0

1
1
1
con z1RL = 15
2 y (x 1 , x 2 ) = (2, 2 ).
Ramicaci
on.

x2
0
0
1
0
0

h1
0
0
0
1
0

h2
0
0
0
0
1

h3
-1/2
0
-1/2
-1
1/2

h4
-3
1
1
-5
6

114

Captulo 13
ENTERA. BRANCH AND
PROGRAMACION
BOUND

13.1.

Introducci
on

Existe una gran varedad de problemas que se pueden formular y resolver utilizando variables enteras, por ejemplo: programaci
on de horarios de trenes
o de tripulaciones en una compa
na a
erea, problemas de programaci
on de la
producci
on, de c
alculo de rutas, etc.
En ocasiones, las variables enteras aparecen por la propia naturaleza de la
decisi
on.
En otras ocasiones, se debe
Supongamos que tenemos un problema de programaci
on lineal:
max{cx cx : Ax b, x 0 }
donde A es una matriz m por n, c es un vector la de dimensi
on n, b es un
vector columna de dimensi
on m y x es un vector columna de dimensi
on n.
A este problema le a
nadimos la restricci
on de que ciertas variables tienen que
ser enteras.
Si s
olo alguna (no todas) las variables tienen que ser enteras, entonces tenemos
un problema de programaci
on lineal entera mixto (Mixed Integer Problem, MIP).
Si todas las variables tienen que ser enteras, entonces tenemos un problema
de programaci
on lineal puro (Integer Programming, IP).
Y, si todas la variables est
an restringidas a los valores 0 1, entonces tenemos
un problema de programaci
on entera binaria (Binary Integer Problem, BIP).
Dado que los problemas enteros se parecen bastante a los lineales, no sorprende que tanto la teora como la pr
actica de la programaci
on lineal es fundamental para comprender y resolver problemas enteros.
Una de las primeras ideas que nos viene a la mente es la del redondeo: resolver
el problema como si fuera lineal y luego redondear el valor de las variables.
ADIR No tiene sentido en muchos problemas: 3.5 aviones son 3 o 4, ...
AN
Ejemplo: (apuntes Miguel)

ENTERA. BRANCH AND BOUND


Captulo 13. PROGRAMACION

116

Figura 13.1: Cotas de un problema entero

13.2.

Optimalidad y relajaci
on

Dado un problema entero de la forma:


z = max{c(x) : x X Z n }
ptima? O dicho de otra forma,
c
omo se puede probar que una soluci
on x es o
sera muy interesante encontrar algunas condiciones que nos garanticen la
optimalidad y as dejar de buscar la soluci
on
optima en un problema entero.
Para ello es importante darse cuenta de que se necesita encontrar una cota
inferior (lower bound) z z y una cota superior (upper bound) z z tal que
z = z = z. Pr
acticamente esto signica que cualquier algoritmo que encuentre
una secuencia decreciente
z 1 z 2 zs z
de cotas superiores, y una secuencia creciente
z 1 z 2 zt z
de cotas inferiores sera muy interesante y se podra parar cuando
zs zt 
donde  es un valor positivo elegido.
Luego lo que nos interesa es encontrar formas de obtener cotas superiores e
inferiores.
Todas las soluciones factibles x X son una cota inferior z = c(x ) z .

nica forma de encontrar cotas inferiores: encontrando soluciones


Esta es la u
factibles. Para algunos problemas PLE encontrar una soluci
on factible es sencillo y lo complicado es encontrar buenas cotas inferiores (cercanas al
optimo);
esto ocurre por ejemplo en el problema del TSP (cualquier ciclo que contenga
todas las ciudades es una soluci
on factible que ofrece una cota inferior). Pero
para otros problemas, encontrar una soluci
on factible es tan complicado como
resolver el problema entero.
Para algunos problemas no es difcil utilizar algoritmos greedy (algoritmo
avidos) que permiten encontrar soluciones factibles buenas (cotas inferiores).

Cotas primales/inferiores

ENTERA. BRANCH AND BOUND


Captulo 13. PROGRAMACION

117

La idea centra de estos heursticos es, a partir de no tneer una soluci


on, ir
construy
endola paso a paso (dando valor una a una a cada variable) y en cada
paso tomar la decisi
on que suponga una mayor mejora de la funci
on objetivo.
La tarea de encontrar cotas superiores muy distinta de la anterior. Una de las
formas de hallar las cotas superiores es mediante relajaciones. La idea que
hay detr
as de las relajaciones es reemplazar un problema entero difcil de
maximizar (como normalmente formulamos los problemas) por otro problema
m
as sencillo cuya funci
on objetivo es mayor o igual que la z del problema
original.
Para que el problema relajado cumpla esta propiedad hay dos posibilidades:

Cotas duales/superiores

hacer mayor el conjunto de soluciones factibles de forma que el problema se resuelve sobre un conjunto mayor, o
reemplazar la funci
on objetivo (max) por una funci
on que tiene el mismo
o mayor valor que la original siempre.
Se dice que el problema (RP) {zR = max{f (x) : x T R n } es una relajaci
on
del problema (IP) {z = max{c(x) : x X R n } si:
x T, y
f (x) c(x)para todo x X
Si RP es una relajaci
on de IP, entonces zR z.
La cuesti
on entonces est
a en c
omo encontrar relajaciones interesantes. Una de
las m
as naturales y m
as utilizadas es la relajaci
on lineal.
n
Dado un problema entero max{c(x) : x P Z n } siendo P = x R+
: Ax
b}, la relajaci
on lineal es el problema lineal zLP = mboxmax{cx : x P }.
Como P Z n P y la funci
on objetivo no cambia, es claramente una relajaci
on.
Por ejemplo, si consideramos el problema entero:

max z = 4x1 x2
s.a.
7x1 2x2 14
x2 3

(13.1)

2x1 2x2 3
2
x Z+

El punto (2, 1) es una soluci


on factible luego tenemos una cota inferior z
7. Para obtener una cota superior podemos recurrir a la relajaci
on lineal. La
20
59

LP
soluci
on
optima es x = ( 7 , 3) con funci
on objetivo z = 7 . Como el valor
de la funci
on objetivo del problema entero tiene que ser entero (en este caso),
podemos redondear y obtener z 8.
Las relajaciones no s
olo permiten obtener cotas superiores, sino que tambi
en
sirven paara probar la optimalidad. Si la relajaci
on (RP) es no factible, el problema original entero (IP)tambi
en. Si al resolver la relajaci
on lineal (RP) resulta

Relajaciones
lineales

ENTERA. BRANCH AND BOUND


Captulo 13. PROGRAMACION

118

que cumple las condiciones de integralidad del problema entero (IP) resulta
que tambi
en es su soluci
on
optima.
Por ejemplo, la relajaci
on lineal del problema entero
max z = 7x1 + 4x2 + 5x3 + 2x4
s.a.
3x1 + 3x2 + 4x3 + 2x4 6

(13.2)

x {0, 1}
tiene como soluci
on
optima x = (1, 1, 0, 0). Como x es entera, es tambi
en
soluci
on
optima del problema entero.
Existen m
as tipos de relajaciones que perimten hallar cotas superiores. Entre
ellas, por ejemplo, las relajaciones combinatorias que son especcas para determinados problemas (TSP, Knapsack, etc.); y las relajaciones lagrangianas,
mucho m
as generales y que se basan en relajar restricciones (quitarlas) pero
su cumplimiento afecta a la funci
on objetivo con un coste.

Otras
relajaciones
lineales

Captulo 14
DUALIDAD

14.1.

Introducci
on

Existen dos problemas de optimizaci


on lineal asociados que cada uno de ellos
proporciona informaci
on sobre el otro, de tal manera que la soluci
on
optima de
uno de los problemas nos permite conocer la soluci
on del problema asociado.
A los dos problemas asociados se les denomina problemas duales y su relaci
on
se va a tratar en este captulo.
La dualidad es una parte clave en la programaci
on lineal que muchas veces
pasa como desapercibida pero que es lo que permite que tenga sentido toda la
teora correspondiente. Por qu
e estudiar la dualidad? Hay varias razones:

Por qu
e?

Por una lado aporta elementos clave que van a ayudar a comprender la
programaci
on lineal
til para resolver problemas de programaci
Es una herramienta u
on lineal;
cuando hay mucha diferencia entre las y columnas (hay distinto coste
computacional) puede ser interesante resolver el dual en lugar del problema primal
El problema dual ayuda a conocer la factibilidad o no acotaci
on del problema primal
Fundamental para el desarrollo de t
ecnicas m
as avanzadas (descomposici
on de Benders, etc.)
La dualidad ofrece otra forma de ver el signicado de los precios sombra
La dualidad ofrece otra visi
on del m
etodo de Lemke (o dual del simplex)
Para introducir el tema vamos a ver un ejemplo sencillo en el se puede observar
de forma r
apida las relaciones entre un problema y un dual (aunque a
un no se
haya descrito como construir el problema dual de uno dado).
Una empresa internacional produce y vende estos dos tipos de supercomputadores: el modelo 1 y el modelo 2. En la elaboraci
on de ambos tipos de equipos hay que destacar dos procesos, el de ensamblado nal y el de empaquetado (procesos P1 y P2). Esta empresa dispone mensualmente de 2000 horas
dedicadas al proceso de ensamblado y 1000 horas dedicadas al proceso de
empaquetado, adem
as se sabe que los tiempos requeridos para realizar dichas

Ejemplo de
problema dual

Captulo 14. DUALIDAD

operaciones para cada uno de los tipos de supercomputadores son los que se
muestran en la tabla siguiente:

Proceso
Montaje
Embalaje

Horas requeridas
Modelo 1 Modelo 2
6
4
2
4

Horas disponibles
2000
1000

El benecio neto obtenido tras la venta de un supercomputador 1 es de 400


u.m. y tras la venta de una unidad tipo 2 es de 600 u.m. Con esta informaci
on se plantea y resuelve inicialmente un problema que permita determinar
el n
umero de unidades de cada tipo de ordenador con objeto de maximizar el
benecio total. Se denen las variables x1 y x2 como el n
umero de ordenadores elaborados de tipo 1 y 2 respectivamente, con estas variables el problema
queda:
max z = 400x1 + 600x2
s.a:
6x1 + 4x2 2000

(14.1)

2x1 + 4x2 1000


x1 0, x2 0
ptima de dicho problema es elaborar 250 unidades del tipo 1 y y
La soluci
on o
125 unidades del modelo 2 con un benecio de 175000 u.m. En la gura 14.1
se puede ver las soluciones por las que se pasa hasta x = (250, 125). La tabla
correspondiene a la soluci
on
optima es la siguiente:

x1
x2

-175000
250
125

0
1
0

0
0
1

-25
1/4
-1/8

-125
-1/4
3/8

Ahora podemos cambiar el enfoque sobre el problema planteado, nuestro


prop
osito va a ser determinar los precios a los cuales esta empresa debera
valorar sus recursos (horas de trabajo de los dos procesos) de tal manera que
puedan determinar el mnimo valor total al cual estara dispuesta a arrendar o
vender los recursos.
Sean y1 e y2 , la renta percibida por hora de los procesos P1 y P2 respectivamente (precios de los recursos). La renta total obtenida sera pues,
2000y1 + 1000y2 . Se desea como objetivo encontrar el mnimo valor de
2000y1 + 1000y2 de modo que la empresa pueda, de una manera inteligente, analizar algunas propuestas de alquiler o compra de todos los recursos
como un paquete total.
Se consideran las condiciones siguientes, los precios pagados por el alquiler
seran no negativos, es decir y1 0, y2 0. Adem
as los precios y1 e y2
deben ser competitivos con las alternativas disponibles, es decir, el benecio
que la empresa debe obtener por los recursos necesarios para elaborar un

120

Captulo 14. DUALIDAD

x2

5
4
3
2
x (250, 125)
1
0
0

x1

Figura 14.1: Soluci


on gr
aca del problema inicial

supercomputador al menos deben ser iguales a los que obtendra al utilizar


dichos recursos en la elaboraci
on del computador, es decir, para el modelo
1 tendremos 6y1 + 2y2 400 y para el modelo 2 queda 4y1 + 4y2 600.
Con esto se garantiza la obtenci
on de precios con los que al menos iguala el
benecio obtenido al producir el mismo los equipos. El problema planteado
queda:
min z = 2000y1 + 1000y2
s.a:
6y1 + 2y2 400

(14.2)

2y1 + 4x2 600


y1 0, y2 0
La resoluci
on de este problema proporciona un valor de 25 para cada unidad
del primer recurso (montaje) y un valor de 125 para cada unidad del segundo
(embalaje), con un benecio de 175000, igual al obtenido en el planteamiento
del primer problema. Este nuevo problema es problema dual del problema
planteado originalmente.
En la siguiente tabla se puede ver la tabla correspondiente a la soluci
on
optima
de est segundo subproblema:

x1
x2

175000
25
125

0
1
0

0
0
1

-250
-1/4
1/4

-125
1/8
-3/8

121

Captulo 14. DUALIDAD

14.2.

14.2.1.

Teora sobre dualidad

El problema dual

Dado el problema de programaci


on lineal:
Max z = cx
Ax b

(14.3)

x0
se le asocia otro problema:
Min s = yb
yAT c

(14.4)

y 0
Al problema (14.3) se le denomina primal y a (14.4) se le denomina dual.

14.2.2.

El dual del dual es el primal

En efecto, dado el problema primal


Max z = cx
Ax b

(14.5)

x0
tiene como problema dual asociado:
Min s = yb
yAT c

(14.6)

y 0
El problema dual puede expresarse como:
max (s) = bT y T
Ay T c T

(14.7)

y 0
El problema (14.7) considerado como un problema primal, tiene como problema dual asociado el siguiente problema de programaci
on lineal:
min u = t(c T )
t(AT ) bT
t0

(14.8)

122

Captulo 14. DUALIDAD

El problema dual (14.8) puede expresarse como:


max (u) = ct T
At T b

(14.9)

t 0
Al comparar el problema (14.5) y el problema (14.9) se observa que:
el vector c es el mismo en los dos problemas,
la matriz A es la misma en los dos problemas,
el vector b es el mismo en los dos problemas,
por lo cual, los vectores x y t T y los valores de z y u son iguales, es decir
se comprueba que en efecto el problema dual asociado a un problema dual
coincide con el problema primal inicial.

14.2.3.

Relaciones entre el problema primal y el problema dual

teorema De la propia denici


on de problema primal y problema dual asociado
se deducen unas primeras relaciones entre ambos problemas:
una variable del problema primal genera una restricci
on en el problema
dual;
una restricci
on del problema primal genera una variable en el problema
dual,
una restricci
on de desigualdad en el problema primal genera una variable
no negativa en el problema dual.
Existen otras relaciones no evidentes entre ambos problemas:
una restricci
on de igualdad en el problema primal genera una variable
libre de signo en el problema dual;
una variable libre de signo en el problema primal genera una restricci
on
de igualdad en el problema dual.
En efecto, la restricci
on del problema primal
a31 x1 + a32 x2 + a33 x3 + a34 x4 = b3
que es equivalente a :
a31 x1 + a32 x2 + a33 x3 + a34 x4 b3
a31 x1 + a32 x2 + a33 x3 + a34 x4 b3
La segunda restricci
on se puede expresarse como:
a31 x1 a32 x2 a33 x3 a34 x4 = b3
La inecuaci
on primera, corresponde a una restricci
on en el problema primal y
genera en el problema dual un variable que se denominar
a y3+ y, por lo tanto,
se obtiene en dicho problema:

123

Captulo 14. DUALIDAD

un t
ermino en la funci
on objetivo: b3 y3+
una columna en el sistema de restricciones t
ecnicas:
+a31 y3+
+a32 y3+
+a33 y3+
+a34 y3+
La otra inecuaci
on, vista de una forma u otra, genera a su vez en e problema
dual la variable y3 y, por lo tanto:
un t
ermino en la funci
on objetivo: b3 y3
una columna en el sistema de restricciones t
ecnicas:
a31 y3
a32 y3
a33 y3
a34 y3
Por lo que, la resricci
on a nivel de igualdad del problema primal genera en el
problema dual:
dos t
erminos en la funci
on objetivo: b3 (y3+ + y3 )
dos columnaa en el sistema de restricciones t
ecnicas:
+a31 y3+ + a31 y3
+a32 y3+ + a32 y3
+a33 y3+ + a33 y3
+a34 y3+ + a34 y3
Efectuando un cambio de variable:

y3 = y3+ y3
y3 ser
a libre se signo siempre que y3+ y y3 sean no negativas y, adem
as, no
puedan estar ambas en la soluci
on del problema. En dicho caso:
1. si y3+ 0 y y3 = 0 y 3 = y3+ 0
2. si y3 0 y y3+ = 0 y 3 = y3 0
Las dos condiciones anteriores se cumplen ya que:
se parte de un problema primal con restricciones t
ecnicas de desigualdad, lo que genera en el problema dual variables no negativas, es decir
y3+ 0 y y3 0.
el criterio del simplex de la variable y+3 respecto a cualquier soluci
on
b
asica es
V B y3+ = b3 cBB1 (a31 , a32 , a33 , a34 )T
el criterio del simplex de la variable y-3 respecto a cualquier soluci
on
b
asica es
V B y3 = b3 cBB1 (a31 , a32 , a33 , a34 )T

124

Captulo 14. DUALIDAD

es decir V B y3+ = V B y3 lo que implica que: si V B y3+ > 0  V B y3 < 0 y


que si V B y3+ < 0  V B y3 > 0
por lo cual, si interesa introducir en la soluci
on y3+ no interesa introducir

+
on s interesa introducir y3 .
y3 , y si no interesa introducir y3 en la soluci
Cuando una de las variables pertenece a la soluci
on, por ejemplo y3 , el criterio del simplex de ambas variables tiene un valor de V B y3+ = 0 y V B y3 = 0
pero al analizar el vector de tasas de sustituci
on se comprueba que Py3+ =
(0, ..., 1, ..., 0)T y P y3 = (0, ..., 1, ..., 0)T por lo cual no es posible sustituir
y3+ por y3 sin que la soluci
on deje de ser factible. Con lo que se comprueba
que una restricci
on de igualdad en el problema primal genera en el problema
dual una variable libre de signo. En el epgrafe anterior se comprobaba que el
problema dual de un problema dual es el problema primal, por lo cual ya se
puede armar que una variable libre de signo en el problema primal genera
una restricci
on de igualdad en el problema dual.

14.2.4.

La funci
on objetivo

El valor de la funci
on objetivo para cualquier soluci
on factible del problema primal es una cota inferior del valor de la funci
on objetivo para cualquier soluci
on
factible del problema dual.
Es decir: z0 s 0
En efecto, se parte de las dos soluciones factibles de los dos problemas asociados primal y dual x 0 e y 0 para las cuales el valor de cada funci
on objetivo
es
z0 = cx 0 s 0 = y 0 b
on del problema primal se cumple que Ax 0 b al
adem
as, al ser x 0 soluci
premultiplicar por y 0 la expresi
on anterior, como y 0 se factible, se cumple
que:
y 0 Ax 0 y 0 b
on del problema dual se cumple que y 0 AT c
Por otra parte, al ser y 0 soluci
0
al postmultiplicar por x la expresi
on anterior, como x 0 es factible, se cumple
que:
y 0 Ax 0 cx 0
De ambas expresiones se obtiene que:
cx 0 y 0 Ax 0 y 0 b
es decir:
z0 = cx 0 y 0 b = s 0
luego:
z0 s 0

125

Captulo 14. DUALIDAD

s 0 dual
z0 s 0

z0 primal
Corolario 1. El valor de la funci
on objetivo del problema primal de m
aximo
para cualquier soluci
on factible es una cota inferior del mnimo valor de la
funci
on objetivo del dual, y reciprocamente, el valor de la funci
on objetivo del
problema dual de mnimo para cualquier soluci
on factible dual es una cota
superior del m
aximo valor de la funci
on objetivo del primal.
Corolario 2. Si el problema primal es factible y su soluci
on es no acotada,
(z ), entonces el problema dual no tiene soluci
on. An
alogamente, si el
problema dual es factible pero con soluci
on no acotada, (s ), entonces el
problema primal no tiene soluci
on factible.

14.2.5.

Teorema fundamental de la dualidad

ptima, x , de un problema primal a la que le


Dada una soluci
on b
asica factible o
corresponde una base B y un vector de multiplicadores del simplex B = cB B 1 ,
ptima del problema dual es y = B .
la soluci
on b
asica factible o
En efecto:
1. y* es la soluci
on del problema dual.
Como x* es soluci
on
optima del problema primal se cumple:
VxB = c cB B 1 A 0
identicando los t
erminos correspondientes a las variables iniciales del
problema primal, c y A, y los t
erminos correspondientes a las variables
de holgura del problema primal, ch e I, la expresi
on anterior se transforma en:
VxB = [(c, ch ) cB B 1 (A, I)] 0
por lo que:
c cB B 1 A 0
ch cB B 1 I 0
En la expresi
on primera al sustituir cB B 1 = y se obtiene c

y A 0 es decir y A c luego y = B cumple las restricciones


t
ecnicas del problema dual.
Al sustituir y por su valor en la segunda expresi
on y ch por su
valor se obtiene 0y I 0 es decir y 0 luego el vector y es una
soluci
on factible del problema dual.

126

Captulo 14. DUALIDAD

ptima del problema dual.


2. y = B es soluci
on o
En el epgrafe anterior se comprobaba que el valor de la funci
on objetivo para una soluci
on factible del problema primal es siempre una cota
inferior del valor de la funci
on objetivo para una soluci
on factible del
problema dual, es decir z0 s 0
Por otra parte,
z es el valor de la funci
on objetivo correspondiente a la soluci
on
0

optima del problema primal, se cumple que z z = cx


s es el valor de la funci
on objetivo correspondiente a la soluci
on

optima del problema dual, luego y b = s s 0


Adem
as, z = cx = cB B 1 b = B b = y b = s Por lo cual podemos
armar que z no puede tener un valor mayor y s no puede tener un valor
menor y ambos coinciden.
Corolario 3. Si el problema primal tiene soluci
on
optima nita entonces el
problema dual tambi
en, y recprocamente, si el problema dual tiene soluci
on

optima nita entonces el primal tambi


en.
Corolario 4. Si el problema primal es no factible entonces su dual o no tiene
soluci
on o tiene soluci
on no acotada, y recprocamente, si el dual es no factible
entonces el primal o es no factible o tiene soluci
on no acotada.
Dado un problema primal y su dual s
olo una de las siguientes armaciones es
cierta:
ptima (nita)  el dual tiene soluci
El primal tiene soluci
on o
on
optima
(nita).
Si el primal es no factible el dual es no factible o tiene soluci
on no
acotada.
Si el dual es no factible el primal es no factible o tiene soluci
on no
acotada.
Si el primal tiene soluci
on no acotada el dual es no factible.
Si el dual tiene soluci
on no acotada el primal es no factible.

14.2.6.

Teorema de las holguras complementarias

El teorema fundamental de la dualidad permite, cuando se conoce la soluci


on

optima de uno de los problemas asociados, conocer cual es el valor de las


variables iniciales de su problema dual que son componentes de la soluci
on

optima de dicho problema. El teorema de las holguras complementarias permite conocer el valor del resto de las componentes de la soluci
on del problema
dual.
La demostraci
on del teorema de las holguras complementarias se realizar
a para las soluciones
optimas de los problemas duales asociados aunque se cumple
para todas las soluciones intermedias. Se parte del conocimiento de las dos soluciones
optimas de los problemas duales correspondientes, x e y .

127

Captulo 14. DUALIDAD

El teorema fundamental de la dualidad dice que:


cx = y b
a la expresi
on anterior le restamos a ambos miembros y Ax ,
cx y Ax = y by Ax
o lo que es lo mismo:
(cy A)x = y (bAx )
En la igualdad anterior el primer miembro es un n
umero negativo y el segundo
miembro es un n
umero positivo, por lo cual, s
olo es posible cuando ambos
t
erminos son iguales a cero.
En efecto:
1. (c y A) x = 0
- como x es la soluci
on
optima del problema primal x 0

- como y es la soluci
on
optima del problema dual
y A c  cy A 0
y el producto de un n
umero positivo por un n
umero negativo es un
n
umero negativo.
2. y (bAx )
- como y es la soluci
on
optima del problema primal y 0

- como x es la soluci
on
optima del problema dual
Ax b  bAx 0
y el producto de un n
umero positivo por un n
umero positivo es un n
umero
positivo.
Por lo cual:
1. (cy A) x = 0
2. y (bAx ) = 0
Veamos ambas expresiones.
(1) (cy A) x = 0 . Para analizar esta expresi
on vectorial se identica uno de
sus t
erminos:
(cj y Aj )xj = 0
Si cj y Aj < 0, la restricci
on del dual no se cumple como igualdad y,
por lo tanto, la holgura , yhj , de la restricci
on forma parte de la soluci
on

optima; es necesario que xj = 0, lo que genera que dicha restricci


on no
forma parte de la soluci
on
optima del primal.
Adem
as ,
cj y Aj 0

128

Captulo 14. DUALIDAD

transformado en igualdad,
cj y Aj + yhj = 0
luego
yhj = (cj y Aj ) = (cj B Aj ) = VxB
j

que es mayor que cero ya que el criterio del simplex de una variable no
b
asica en la soluci
on
optima del problema es negativo.
Si xj > 0, es decir xj pertenece a la soluci
on
optima del problema primal,
entonces cj y Aj = 0, es decir la restricci
on que genera la variable xj en
el problema dual se cumple como una igualdad y, por lo tanto, la variable
de holgura correspondiente no forma parte de la soluci
on
optima del
problema, ya que:
cj y Aj 0  cj y Aj + yhj = 0
y como:
cj y Aj = 0  yhj = 0
Adem
as, como yhj = VxB se comprueba que yhj = 0 ya que el criterio
j

del simplex de una variable b


asica, xj , es cero.
(2) y (bAx ) = 0.
Se puede obtener el mismo resultado anterior con las variables del dual y las
restricciones (por lo tanto las variables de holgura ) del primal.
Como conclusi
on, la aplicaci
on del teorema de las holguras complementarias
a dos problemas duales asociados permite saber que:
ptima,
si una variable inicial de un problema pertenece a la soluci
on o
la restricci
on que genera dicha variable en el problema dual se cumple
como igualdad, es decir la variable de holgura de dicha restricci
on no
pertenece a la soluci
on
optima,
si una restricci
on de un problema de optimizaci
on lineal se cumple como
desigualdad, es decir, la variable de holgura correspondiente pertenece a
la soluci
on
optima, la variable que genera dicha restricci
on es el problema dual no forma parte de la soluci
on
optima de dicho problema dual,
nalmente, el valor del criterio del simplex cambiado de signo de una
variable inicial del problema primal es el valor de la variable de holgura
de la restricci
on que genera dicha variable en el problema dual.

14.3.

Interpretaci
on econ
omica de las variables duales en el

optimo

Por el teorema fundamental de la dualidad los valores


optimos de las funciones objetivo de un problema primal [P] y su dual [D] son iguales, si x es una

129

Captulo 14. DUALIDAD

soluci
on b
asica factible y
optima no degenerada de [P] e y (calculada como
y = B = cB B 1 ) podemos escribir:
z(x) = c1 x 1 + c2 x 2 + + cn x n = y 1 b1 + y 2 + + y m bm = s(y)
Vamos a supoer ahora que se modica un recurso, por ejemplo b1 , en una cantidad peque
na b1 , de manera que la soluci
on
optima del problema primal
siga siendo factible, y en consecuencia
optima (c cB B 1 A no vara). Es decir,
de manera tal que

b1

1
) 0

B (b +
...

0
Consideremos ahora los problemas [P1] y [D1], donde [P1] es el problema
primal en el que se ha cambiado b por b + (b1 , 0, . . . , 0)T y [D1] es su
tiene la mismas variables b
dual. La soluci
on
optima de [P1], x,
asicas que x
(por la elecci
on de b1 ) y el valor que toma la parte b
asica de dicha solu B = B 1 [b + (b1, 0, , 0)T ], por otro lado la soluci
ci
on es u
on de [D1] es
B
no han cambiado entonces B sigue
= = c B B 1 , las variables b
asicas de x
y
= y, teniendo en cuenta estos hechos tenemos
siendo la misma que antes y y
que:

= c1 x
1 (b1 + b1 ) + y
2 + + y
m bm =
1 + c2 x
2 + + cn x
n = y
z(x)
= (y 1 b1 + y 2 + + y m bm ) + yb1 = S(y) + yb1 = Z((x)) + yb1
ptimo de la variable dual y 1
De esta expresi
on se desprende que el valor o
asociada a la primera restricci
on del problema primal representa la cantidad
en la que se modica el valor de la funci
on objetivo de [P] por cada unidad
adicional de recurso 1 (siempre que la modicaci
on mantenga la base
optima).
Esto puede hacerse en general para cualquier recurso bi del problema primal.
Teniendo en cuenta esto, si nos situamos, por ejemplo, en un problema primal
de m
aximo con restricciones de tipo , lo resolvemos y calculamos la soluci
on
del problema dual, entonces los valores
optimos de las variables duales (que
son 0) representan la variaci
on unitaria de la funci
on objetivo del primal por
cada unidad adicional del recurso correspondiente que pudieramos conseguir.
Esto nos permite tambi
en interpretar dichos valores como la mayor cantidad
que estaramos dispuestos a pagar por una unidad adicional de recurso.

130

Captulo 14. DUALIDAD

14.4.

Algoritmo del simplex dual

Vamos a pensar en este apartado en un algoritmo an


alogo al del simplex,
pero pensando en el problema dual en lugar de en el primal.
Dado un primal (de m
aximos) diremos que una base del problema primal (no
necesariamente factible) si y s
olo si
c c B B 1 A 0
Se puede apreciar que dicha denici
on es equivalente a decir que una base
es factible dual si c B B 1 constituye una soluci
on factible para el problema
dual. Por ejemplo, si llamamos y = c B B 1 (Teorema fundamental) tenemos
que c c B B 1 A = c yA 0 que es equivalente a la expresi
on que dene las
restricciones funcionales del problema dual.
Alternativamente, la denici
on de base factible dual s
olo implica que la correspondiente base primal verica las condiciones de optimalidad. Si diera la
casualidad que adem
as fuera factible entonces dicha soluci
on sera una soluci
on
optima.
El algoritmo simplex dual trabaja con soluciones b
asicas factibles duales que
por medio de operaciones apropiadas nalizar
an (si es posible) en una soluci
on que adem
as sera factible primal. Mientras el simplex trabaja con soluciones que no cumplen el criterio de optimalidad y poco a poco se mejoraban
hasta conseguir la optimalidad, en el simplex dual se trabaja con soluciones
primales no factibles en las que poco a poco se mejorar
a la factibilidad hasta alcanzarla (realmente lo que se ir
a mejorando sera las soluciones del dual
y = c B B 1 ).
El algoritmo del simplex dual va a utilizar herramientas an
alogas a las utilizadas en el simplex. Los pasos son los siguientes:
1. Construcci
on de una soluci
on b
asica primal que sea b
asica factible dual
(
optimo del primal).
2. Si una soluci
on es factible primal entonces dicha soluci
on sera
optima.
3. En caso de que la soluci
on no sea factible primal, entonces habra que
construir una soluci
on b
asica primal que sea b
asica factible dual y que
sea adyacente a la anterior, para lo cual deberemos determinar que variable sale de la base actual, que variable entra en la nueva base y deberemos
realizar la operaci
on de cambio de base.
Ese algoritmo lo hemos estudiado como M
etodo de Lemke (desarrollado por
por C. E. Lemke en 1954).

El dual de un problema grande Corolarios del Tma fundamental Ejercicios

131

También podría gustarte