Вы находитесь на странице: 1из 180

Apuntes de Optimizacin

Prof. Juan Carlos Ferrer, Departamento de Ingeniera Industrial y de Sistemas, P.U.C.


Prof. Juan Carlos Muoz, Departamento de Ingeniera de Transporte, P.U.C.
Marzo 2006

Contents
1 Introduccin

1.1

Introduccin al Modelamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2

Qu es un modelo? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.3

Por qu se construyen modelos? . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.4

Modelos de Programacin Matemtica . . . . . . . . . . . . . . . . . . . . . . . . . .

1.5

Caracterizacin de puntos extremos de una funcin . . . . . . . . . . . . . . . . . . .

1.6
1.7

Existencia de solucin ptima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


Problemas Equivalentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6
9

1.7.1

Equivalencia I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.7.2

Equivalencia II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.7.3

Equivalencia III . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.7.4

Equivalencia IV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

1.7.5
1.7.6

Equivalencia V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Equivalencia VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

1.7.7

Equivalencia VII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

1.8

1.9

Nociones Bsicas de Convexidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23


1.8.1

Conjuntos Convexos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

1.8.2

Funciones Convexas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

1.8.3 Criterios prcticos de convexidad de funciones . . . . . . . . . . . . . . . . . . 31


Problemas resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

2 Programacin No lineal
2.1

2.2

2.3

45

Optimizacin de una funcin sin restricciones . . . . . . . . . . . . . . . . . . . . . . 45


2.1.1

Condiciones Necesarias y suficientes para extremos . . . . . . . . . . . . . . . 45

2.1.2

Mtodos de bsqueda de soluciones . . . . . . . . . . . . . . . . . . . . . . . . 49

Optimizacin de una funcin con restricciones . . . . . . . . . . . . . . . . . . . . . . 54


2.2.1

Caso 1: Problema Unidimensional . . . . . . . . . . . . . . . . . . . . . . . . 54

2.2.2

Caso 2: Restricciones de igualdad . . . . . . . . . . . . . . . . . . . . . . . . . 58

2.2.3

Caso 3: Restricciones de desigualdad . . . . . . . . . . . . . . . . . . . . . . . 70

Problemas resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.3.1

Optimizacin de una funcin sin restricciones . . . . . . . . . . . . . . . . . . 79


3

CONTENTS
2.3.2

Optimizacin de una funcin con restricciones . . . . . . . . . . . . . . . . . . 86

3 Programacin Lineal
3.1 Introduccin . . . . . . . . . . . . . . . . . . . . . .
3.2 El Mtodo Simplex . . . . . . . . . . . . . . . . . .
3.2.1 Pasos en el mtodo Simplex . . . . . . . . .
3.2.2 Solucin inicial factible bsica . . . . . . . .
3.2.3 Anlisis Matricial del Mtodo Simplex . . .
3.2.4 Casos especiales en el desarrollo de Simplex
3.3 Anlisis de Sensibilidad de los Resultados . . . . .
3.3.1 Rango de variacin de los costos . . . . . .
3.3.2 Rango de variacin del nivel de recursos . .
3.3.3 Ejemplo . . . . . . . . . . . . . . . . . . . .
3.4 Dualidad . . . . . . . . . . . . . . . . . . . . . . .
3.4.1 Relaciones Primal-Dual . . . . . . . . . . .
3.4.2 Anlisis Matricial del problema dual . . . .
3.5 Problemas resueltos . . . . . . . . . . . . . . . . .
3.5.1 Geometra de PL . . . . . . . . . . . . . . .
3.5.2 Mtodo Simplex . . . . . . . . . . . . . . .
3.5.3 Dualidad . . . . . . . . . . . . . . . . . . .

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

105
. 105
. 112
. 115
. 121
. 126
. 131
. 134
. 134
. 136
. 137
. 138
. 141
. 142
. 144
. 144
. 150
. 166

Chapter 1

Introduccin
El objetivo principal de estos apuntes es que permitan aprender y entender la esencia de los mtodos
de optimizacin en forma clara y didctica. El objetivo no es slo que los alumnos sepan modelar
y resolver problemas, sino que tambin puedan comprender su resolucin.
Los mtodos de optimizacin son un conjunto de herramientas cuantitativas muy poderosas
para enfrentar, modelar y resolver importantes problemas reales en los ms diversos mbitos (no se
limita slo a ingeniera). El objetivo de este texto es apoyar al curso de Optimizacin de la Escuela
de Ingeniera de la Pontificia Universidad Catlica de Chile para que los alumnos puedan llegar un
poco ms lejos que las clases, o para que lo puedan utilizar como apoyo en el futuro para enfrentar
problemas de optimizacin en otros cursos de la carrera o en sus trabajos.
Creemos muy necesario que la recopilacin y creacin de estos apuntes de mtodos de optimizacin debe ser muy clara y didctica para explicar los conceptos. El lector podr entender
el mecanismo detrs de los diferentes mtodos y as estar preparado para poder discernir entre
soluciones correctas e incorrectas.
Durante nuestros aos de doctorado en M.I.T. y Berkeley (1997-2002) tuvimos la oportunidad
de tomar varios cursos de investigacin de operaciones donde juntamos bastante material de primer
nivel, que se ha incorporado en estos apuntes.
El contenido de estos apuntes a nivel general es:
Introduccin: Se dan algunas nociones de qu es un modelo y de cmo se construyen. Se
presentan algunos modelos equivalentes, y se revisan algunas nociones de convexidad.
Programacin No Lineal: Condiciones necesarias y suficientes para un mnimo local o global;
Mtodos de bsqueda de soluciones ptimas (Gradiente, Newton, etc.)
Programacin Lineal: Formulacin y forma estndar de problemas lineales; Geometra de
problemas lineales; Mtodo Simplex; Anlisis de sensibilidad; Teora de dualidad.
Programacin Entera: Formulacin de modelos de programacin entera; Algoritmo Branch
& Bound; Algoritmo de planos cortantes.
Flujo en Redes: Modelos clsicos como ruta ms corta y mximo flujo.
1

CHAPTER 1. INTRODUCCIN
Programacin Dinmica: Mtodo de resolucin cuando hay relaciones intertemporales entre
las variables del problema.

A pesar de que estos apuntes no pretenden ser una gua de ejercicios, incorporan ejercicios
resueltos en su gran mayora a modo de ilustrar mejor cada uno de los conceptos tratados. Adems
se incorporar breves instrucciones de cmo operar el mdulo de optimizacin de Microsoft Excel,
y de lenguajes de modelacin algebraica como AMPL y SML.
Este texto se encuentra en formato PDF en la pgina web del curso de Optimizacin, de manera
que los alumnos (y ex-alumnos) puedan tener acceso a la ms reciente versin.

1.1

Introduccin al Modelamiento

Cotidianamente nos enfrentamos a la necesidad de decidir, evaluando opciones o cursos de accin


a seguir entre los cuales escoger la mejor alternativa. Si la opcin es nica, la decisin ya est
tomada, pero si son muchas o infinitas, entonces identificarlas y escoger la preferida puede ser muy
complejo. Incluso, cuando la opcin debe ser tomada por un grupo de personas, unos pueden tener
diferentes visiones que otros. Para poder comparar las distintas alternativas hay que establecer
explcitamente los objetivos que se persiguen con la decisin, y as lograr ordenar las opciones
disponibles de la mejor forma. Esta tarea (identificar opciones y clasificar objetivos) suele ser no
trivial.
Cuando el problema es complejo y resulta difcil identificar las opciones disponibles y/o escoger
la mejor, muchas veces se recurre a modelos como un recurso de apoyo. Los modelos permiten tomar
una decisin ms eficientemente; esto es ms rpidamente, econmicamente, informadamente, etc.

1.2

Qu es un modelo?

El trmino modelo se usa para hablar de una estructura que se ha construido y que exhibe
caractersticas de un sistema. Philippi (1981) define un modelo como una simplificacin de alguna
realidad concreta orientada a nuestros propsitos. En otras palabras, es una caricatura de la
realidad, que captura los factores dominantes que determinan el comportamiento del sistema en
estudio.
Un modelo debe seleccionar las caractersticas ms relevantes de la realidad, pues normalmente
no pueden considerarse todos sus aspectos. Las caractersticas a considerar dependern del uso
que se le dar al modelo. Esto produce un trade-off entre la complejidad del modelo y las
caractersticas consideradas. As, la simplicidad debe estar en la mente de todo modelador.
Algunos modelos son tangibles como por ejemplo los aeromodelos, mapas y maquetas arquitectnicas. Por ejemplo los aeromodelos renen las caractersticas de vuelo de los aviones reales, ya que
ese es el uso que se les dar, es decir, la atencin se centra en su diseo, resistencia, aerodinmica,
por lo que, en este caso, los asientos no se ponen ya que son irrelevantes para el objetivo.

1.3. POR QU SE CONSTRUYEN MODELOS?

Normalmente en Investigacin de Operaciones (IO1 ) se usan modelos abstractos. Estos por


lo general, sern matemticos, donde los smbolos algebraicos reflejarn las relaciones internas del
sistema modelado. As, una caracterstica esencial de un modelo matemtico en IO, es que contiene
las relaciones matemticas relevantes (ecuaciones, inecuaciones, dependencias lgicas, etc) que se
extraen al observar el mundo real.

1.3

Por qu se construyen modelos?

i) Clarifica las relaciones existentes, no siempre claras para el observador. Se comprende mejor
el sistema. Ayuda a identificar las alternativas. Es como una metodologa de aprendizaje. Por
ejemplo en un mapa se clarifican las rutas posibles para llegar de un lugar a otro. En muchas
disciplinas (la fsica por ejemplo) los modelos no se usan para decidir sino que para comprender
mejor.
ii) Permite un anlisis metdico cuyo fin sea sugerir lneas de accin, no evidentes de otro
modo. Por ejemplo una maqueta de una casa ayuda a decidir mejor como orientar los espacios, la
iluminacin, etc.
iii) Un modelo permite experimentar en l, cosa que no siempre es posible en el sistema real
(Ej: avin, planta manufacturera, economa de un pas, etc).
Estas tres razones son tambin vlidas para construir modelos matemticos que permiten experimentar con sistemas complejos de gran tamao, considerar muchas alternativas simultneamente
(sin necesidad de enumerarlas a priori) e identificar un mejor (u ptimo) curso de accin.
Es importante distinguir entre modelo y datos. El modelo queda definido por las relaciones
que tiene incorporado. La idea es que los modelos tengan validez independiente de los datos que
se incorporarn. Sin embargo, hay veces que los modelos tienen validez slo en un rango de datos
permitido. (Ej: Fluidez de un slido sujeto a tensiones (Resistencia de materiales)).
Los modelos de Programacin Matemtica son los ms comnmente usados. Otros ejemplos
de modelos de uso frecuente son: simulacin (modelos muy complejos de resolver), planificacin
en red, economtricos (predecir una variable en funcin de otra), series de tiempo (modelos que
indican qu hacer en base a datos pasados).
Los problemas pueden ser modelados en ms de una forma. Es interesante observar qu tipo
de modelacin es ms eficiente (tiempo, resultado, memoria).
Cuando se plantea modelar un sistema existen muchos conceptos errados al respecto. Hay
quienes se niegan a su utilidad argumentando que hay muchas hiptesis cuestionables como que
hay factores difciles de cuantificar, o bien, que siempre los datos carecen de precisin. Es clave ver
si el resultado es sensible o no respecto a dicha hiptesis.
En otro extremo hay quienes profieren una fe metafsica a los modelos matemticos para la toma
de decisiones (y an ms si provienen de un computador). Obviamente la calidad de la solucin
1

IO: Ciencia de la toma de decisiones, o, la aplicacin de mtodos cientficos a la administracin y gestin de


organizaciones.

CHAPTER 1. INTRODUCCIN

depender de la precisin de la estructura y de los datos del modelo.


Hay que considerar que la fe sin crtica a un modelo es obviamente peligrosa. No se recomienda
en absoluto aceptar la primera respuesta que un modelo matemtico produce sin un anlisis y
cuestionamiento posterior profundo. Normalmente un modelo ser una herramienta dentro de un
conjunto, a la hora de tomar una decisin.
La respuesta de un modelo deber enfrentarse a un cuidadoso examen, y si sta es inaceptable,
deber comprenderse el por qu y probablemente incorporarse a un modelo modificado. Si la
respuesta es aceptable, puede ser prudente mantenerlo como una opcin. Por medio de un sucesivo
cuestionamiento de las respuestas y alternando el modelo, es posible clarificar las opciones factibles
y comprender mejor lo que es posible.

1.4

Modelos de Programacin Matemtica

En muchas ocasiones uno enfrenta problemas en que es necesario determinar la mejor opcin dentro
de un conjunto de alternativas disponibles. A esta accin se le denomina Optimizar. Dentro
del proceso de optimizar existen algunos mtodos que son de mucha utilidad, los mtodos de
Programacin Matemtica, que se basan en la creacin de un modelo que represente el sistema
de inters para luego trabajar en torno a esta reduccin o caricatura de la realidad, y as facilitar
la toma de decisin.
A los estudiantes de ingeniera la palabra programar seguramente les evoca largas horas frente
al computador diseando un software. Sin embargo en Programacin Matemtica (PM) la palabra
se usa con el significado de planificar. De hecho, PM en su esencia no tiene nada que ver con
computadores. Lo que sucede posteriormente, es que los problemas de PM son tan grandes que
requieren apoyo computacional para su resolucin.
La caracterstica comn de todos los problemas de PM es que pretenden optimizar algo (minimizar o maximizar). Lo que se pretende optimizar se le denomina funcin objetivo. Cuando
uno observa que se requiere optimizar considerando ms de un objetivo, tenemos una funcin
multi-objetivo, o con objetivos difusos. En ese caso existen al menos dos alternativas para abordar el problema: priorizar o ponderar. Priorizar se refiere a resolver mltiples problemas en forma
secuencial de acuerdo a un orden (priorizacin) de los objetivos. Ponderar apunta a la resolucin
conjunta de los objetivos, llevndolos a una unidad comn.

La Figura 1.1 muestra una clasificacin general de los modelos matemticos. En este texto
trataremos principalmente modelos determinsticos de programacin no-lineal y de programacin
lineal, tal como se destacan en dicha figura.
El problema general de Programacin Matemtica consiste en determinar un vector xT =
(x1 , ..., xn ) que perteneciendo a un conjunto D, subconjunto de un espacio vectorial de orden n,

1.5. CARACTERIZACIN DE PUNTOS EXTREMOS DE UNA FUNCIN

Modelos Matemticos

Estticos

Dinmicos

Continuos

Discretos

Estocsticos

Determinsticos

Lineales

No-Lineales

Figure 1.1: Clasificacin de Modelos Matemticos


maximiza (o minimiza) una funcin objetivo f(x1 , ..., xn ). Esto es,
max f (xT )

P)

(1.1)

s.a. xT D,
donde el dominio o set de oportunidades D estar formado por los siguientes tipos de restricciones: (i) restricciones funcionales
hi (xT ) = 0

con i = 1, ..., m

gj (x ) 0 con j = 1, ..., s
y (ii ) restricciones de conjuntos
x

E n.

A la funcin objetivo f (xT ) tambin se le denomina funcin econmica o de utilidad (costos).


Cabe mencionar que maximizar una funcin equivale a minimizar dicha funcin, pero con signo
contrario. Por otra parte, en Programacin Lineal, f(x) y las restricciones h(x) y g(x), son lineales.
En esta seccin se entregan conceptos matemticos bsicos para la solucin de problemas de
programacin matemtica. En particular, se caracterizan las soluciones ptimas de un problema y
se discute en qu casos es posible garantizar la existencia de una solucin ptima. Ms adelante se
introduce el concepto de modelos equivalentes, esto es, modelos cuya solucin ptima es necesariamente equivalente. Por ltimo, se introduce la convexidad en conjuntos y funciones, pues sta ser
de gran ayuda para decidir si un ptimo local es solucin al problema.

1.5

Caracterizacin de puntos extremos de una funcin

Definicin 1 Un punto extremo de una funcin definida sobre un dominio D puede ser local o
global, estricto o no estricto, segn se define a continuacin (la Figura 1.2 muestra grficamente
cada una de estos puntos):
x es mximo global si x es punto factible y si f(x ) f (x) x D.

CHAPTER 1. INTRODUCCIN

x es mximo global estricto si x es punto factible y si f(x ) > f(x) x D \ {x } .


x es mximo local si x es punto factible y si f (x ) f(x)x Vecindad de x y x D.
x es mximo local estricto si x es punto factible y si f(x ) > f (x) x Vecindad de x y x
D \ {x } .

Max. local
no estricto

Min. local
estricto

Max. global
estricto

Max. global
de borde

Min. global
de borde
(b)

(a)

Figure 1.2: Soluciones locales vs. globales

1.6

Existencia de solucin ptima

Definicin 2 Todo punto x D define una solucin factible o realizable de P ).


Definicin 3 Un punto factible x
 define una solucin ptima del problema de optimizacin min f(x)
ssi f(
x) f(x) x D y x
 D.

xD

Nota: En el caso particular en que D = Rn , se dice que el problema es no-restringido o irrestricto.

Definicin 4 En un problema de maximizacin, v define el valor ptimo de P ) si: v = sup(f (x)),


x D. (sup: supremo, cota superior de la funcin sobre el dominio). En particular, si x
 es solucin
ptima de P ) = v = f(
x). Anlogamente para un problema de minimizacin, v = inf(f (x)),
x D. (inf: nfimo, cota inferior de la funcin sobre el dominio).
Nota: No todos los problemas tienen solucin ptima. Podemos pensar en cuatro familias de
problemas que podran carecer (o carecen) de ella:
a) Problemas cuyo conjunto de restricciones define un dominio de puntos factibles vaco.
b) Problemas que contemplan alguna restriccin de desigualdad estricta, es decir que define
una regin que no incluye a su borde. Si en este caso la funcin objetivo mejora en cuanto ms se
acerque al borde, se estar en una situacin en que la solucin ptima no se podr identificar.
c) Problemas que contemplan un dominio no acotado, es decir que incluye puntos cuyas variables
toman valores tan grandes (en valor absoluto) como sea necesario. Si en este caso la funcin objetivo

1.6. EXISTENCIA DE SOLUCIN PTIMA

mejora en cuanto ms se acerque a estos puntos de valor absoluto ilimitado, entonces la solucin
ptima no se podr identificar.
d) Problemas con una funcin objetivo discontinua sobre el dominio factible. Si en este caso la
funcin objetivo evaluada en el punto de discontinuidad no es ptima, pero sta mejora en cuanto
ms se acerque al punto de discontinuidad desde alguna direccin, entonces la solucin ptima no
se podr identificar.
Evidentemente, no todos los problemas con dominio no acotado carecen de solucin. Tampoco
todos los problemas con restricciones de desigualdad estricta o todos los con funcin objetivo
discontinua. Sin embargo, en presencia de estos eventos, la solucin ptima no est garantizada.
Estas observaciones nos conducen naturalmente al siguiente teorema de existencia de solucin
ptima.
Teorema 1 (Existencia de soluciones ptimas) Consideremos el siguiente problema de optimizacin
P)

Min f(x)
xD

Si f (x) es continua sobre D, con D cerrado y no vaco sobre Rn , entonces bajo la hiptesis:
(1.2)

H) f(x) + si ||x|| +, x D
P ) admite al menos una solucin ptima.

f (x)

Figure 1.3: Ejemplo de Teorema de Existencia


Nota: Un problema P ) puede tener valor ptimo finito y, sin embargo, no admitir solucin
ptima. Para ilustrar esto veamos el siguiente ejemplo:
P ) min ex
x0

CHAPTER 1. INTRODUCCIN

donde v = v(P ) = 0. 
x 0 / ex = 0? No! Por lo tanto P ) no tiene solucin, aunque v R (ver
e-x

ex

x
(b)

(a)

Figure 1.4: Ejemplos de valores y soluciones ptimas


Figura 1.4a).
Se podra pensar que no existe solucin ptima porque D es no acotado. Sin embargo, muchos
problemas no acotados admiten solucin ptima. Basta considerar,
P ) min ex ,
x0

en que v(P ) = 1 y x
 = 0 es la solucin ptima (ver Figura 1.4b).

Nota: Un conjunto es cerrado si contiene a todos los puntos frontera. El caso de D = R es


cerrado, ya que el conjunto de los puntos frontera es vaco, y todo conjunto contiene al conjunto
vaco. Como ejemplo de un conjunto no cerrado considere x > 0 que no contiene a su frontera
(x = 0).
Corolario 2 (Bolzano-Weierstrass) Si f es continua, sobre un dominio no vaco, cerrado y acotado, entonces el problema necesariamente tendr solucin ptima, ya que la imagen de una funcin
continua sobre un set compacto, es tambin compacta (cerrada y acotada).
Demostracin. D es acotado ninguna sucesin de puntos {xk D}k0 tal que:
||xk || +
xk

k
Luego, la hiptesis H) en (1.2) se cumple por vacuidad en este caso.
Nota: Es importante notar que estos teoremas identifican condiciones suficientes para existencia
de optimalidad, pero no condiciones necesarias. As, muchos problemas que no satisfacen las
condiciones identificadas en el Teorema 1 o en el Corolario 2 tienen solucin ptima.

1.7. PROBLEMAS EQUIVALENTES

1.7

Problemas Equivalentes

Un problema se puede modelar de varias formas diferentes. En programacin matemtica se denominan problemas equivalentes a problemas que garantizan el mismo conjunto de soluciones ptimas.
Evidentemente, para un mismo problema, se busca aquel modelo que facilita su resolucin.
Considere el problema de localizar una estacin de bomberos en una ciudad con el siguiente
criterio: que el tiempo mximo de respuesta de la bomba a eventos en cinco edificios de asistencia
masiva sea lo ms breve posible. En este caso para cada punto posible de instalar la bomba se evala
el tiempo de respuesta a cada uno de los cinco edificios; el mayor de estos cuatro valores representa
la funcin objetivo evaluada en el punto. Es interesante notar que en este caso la funcin objetivo
es minimizar el valor maximo entre otras cinco funciones, es decir si denominamos la posicin de
la bomba x, entonces la funcin objetivo es:
Min (max {d1 (x), d2 (x), d3 (x), d4 (x), d5 (x)}).
Una funcin objetivo como esta presenta serios problemas pues es difcil de tratar algebraicamente y presenta discontinuidades en su derivada. As, sera deseable poder modelar este problema
mediante un modelo equivalente que no presente estas dificultades.
A continuacin se presentan siete equivalencias que pueden facilitar la modelacin de muchos
problemas, entre ellos el problema de la localizacin de la estacin de bomberos.

1.7.1

Equivalencia I
P)

Max f (x)

x D.

P) Min (f(x))

x D.

x
 es solucin ptima de P ), con valor ptimo v, si y slo si x
 es solucin ptima de P), con
v(P) = 
v.
f (x )

f (x)

Figure 1.5: Equivalencia I

10

CHAPTER 1. INTRODUCCIN

Ejemplo 1 Algunos ejemplos de esta equivalencia son:


Maximizar utilidad = Minimizar prdida.
Maximizar probabilidad de sano = Minimizar probabilidad de enfermo.
Por lo tanto, dado un problema de maximizacin, procedemos a cambiar el signo de la funcin
de costo, para luego resolver el problema de minimizacin equivalente. Conocida la solucin ptima
x y el valor ptimo v(P ), la solucin ptima de P ) es x y el valor ptimo v(P ) = v(P).

1.7.2

Equivalencia II

P ) Min f (x)
x D Rn
Equivalente a,
P)

M in
f (x)

x D Rn

R

P)

Min
f(x) =
x D Rn


 = D R Rn+1 , donde x
Considerando el problema P) o P), el nuevo dominio ser: D
 es solucin
ptima de P ) con valor ptimo v = v(P ), si y slo si (
x, ) es solucin ptima de P) con valor
ptimo v.

Comprobaremos esta equivalencia por contradiccin. Supongamos que el problema P ) tiene



solucin ptima x0 y definimos f(x0 ) = 0 . Por una parte el problema P ) o P) no puede tener
valor ptimo 1 > 0 pues el punto (x0 , 0 ) es factible para el problema y evaluado en la funcin

objetivo es mejor que 1 . Por otra parte, el problema P ) o P) no puede tener valor ptimo 1 < 0
pues entonces existira un punto x1 en D tal que f(x1 ) 1 en cuyo caso la solucin ptima a P )
sera x1 y no x0 .

Es importante destacar que en el nuevo problema el objetivo es encontrar un lo ms pequeo


posible tal que exista un x que satisfaga f(x) . As, en la Figura 1.6 se observa que cumple
con ser el ptimo al problema pues existe un x D tal que f(x ) y para todo valor de
menor a no existe un x en D tal que f (x) .

1.7. PROBLEMAS EQUIVALENTES

11

f (x )
( x, )

f ( x) = v(P )

Figure 1.6: Equivalencia II


Ejemplo 2 En un callejn de 100 metros de largo hay un prfugo que necesita ubicarse en el lugar
que tenga menos luz. En el callejn hay 4 focos con diferentes caractersticas (altura, potencia,
posicin). Suponga que la intensidad de luz que llega al prfugo es slamente la del foco que
alumbra ms en dicho punto y que para estos efectos los postes (si los hubiera) se pueden considerar
transparentes (ver Figura 1.7). Suponga que la intensidad de luz de cada foco se puede considerar
inversamente proporcional a la distancia entre el foco y el prfugo y directamente proporcional a la
potencia del foco. De esta forma, al prfugo le interesar pararse en el lugar que haya menos luz,
F1
F4
F2

F3

Figure 1.7: Ejemplo de Equivalencia II


es decir, su funcin objetivo ser:
Min (max {f1 , f2 , f3 , f4 })
donde
fi =

ki

.
h2i + (xi x)2

0 x 100

en que ki , xi y hi corresponden a la potencia, ubicacin y altura respectivamente de cada foco. La

12

CHAPTER 1. INTRODUCCIN

nica variable del problema es la ubicacin del prfugo, x.

Al igual que el problema de la estacin de bomberos, este modelo es complicado de abordar


pues presenta una funcin objetivo cuya derivada no es continua. As, resulta deseable identificar
un modelo equivalente para este problema que no presente dicha complicacin. La siguiente seccin
presenta dicha equivalencia.

1.7.3

Equivalencia III

Consideremos un problema como el anterior donde el objetivo consiste en encontrar un punto tal
que el mximo entre n funciones evaluadas en el punto sea mnimo. Algebraicamente, esto puede
expresarse del siguiente modo:
P ) MinxD ( max fi (x))
i=1,...,n

Grficamente, el problema se ilustra en la Figura 1.8, en que las funciones fi (x) se dibujan con
lneas tenues mientras la funcin objetivo se ilustra con una lnea gruesa. Es importante destacar
que esta ltima funcin no gozar necesariamente de una derivada continua (e.g., en los puntos A
y B de la figura 1.8). As, estamos minimizando una funcin no diferenciable.

f3

f2
B

f1

Figure 1.8: Equivalencia III


Sin embargo, de acuerdo a la equivalencia II, el problema P ) puede convertirse en el siguiente
problema equivalente:
P) M in

max fi (x)

i=1,...,n

x D

1.7. PROBLEMAS EQUIVALENTES

13

Naturalmente la nueva desigualdad puede expresarse como n desigualdades individuales:



P) Min

fi (x)

i = 1, ..., n

x D

Este ltimo problema contempla slo funciones diferenciables.

Consideremos el siguiente ejemplo cuya funcin objetivo es no lineal y cuya derivada no es


continua.


7x1 + 6x2 + 5x3 5x1 + 9x2 + 4x3
P ) Max (min
,
)
4
3
s.a
8x1 + 5x2 + 3x3 100
6x1 + 9x2 + 8x3 200
x1 , x2 , x3 0
A continuacin identificaremos un problema equivalente cuyas funciones tengan derivadas continuas.
De la regla I), P ) es equivalente a:
P) min( min {f1 (x), f2 (x)})
xD

Es fcil notar que: min {f1 (x), f2 (x)} = max {f1 (x), f2 (x)} , por lo tanto P) es equivalente a

P) min(max {f1 (x), f2 (x)})
xD


de la regla III P) es equivalente a

s.a.



P) min

f1 (x)
f2 (x)
x D

R.

14

CHAPTER 1. INTRODUCCIN

o equivalentemente:



P) max

s.a. f1 (x)
f2 (x)
x D

R.
Y este problema es derivable en el espacio D R. Es decir,
P) max( min {fi (x)})
i=1,...,n

s.a. x D
es equivalente a


P) max

s.a. fi (x) i = 1, ..., n


x D

R.

Como se observa, este problema lineal es equivalente al problema original. Estas equivalencias
suelen resultar muy tiles en presencia de mdulos de funciones en la funcin objetivo. Por ejemplo:
P ) min |3x 2|
s.a.

1 x 2
x R

En este caso vemos que la funcin objetivo no es derivable en x = 2/3 (ver Figura 1.9).

Ocupando la regla II vemos que P ) es equivalente a:


P)

min

s.a |3x 2|
1 x 2
x R

(Restriccin no-lineal)

1.7. PROBLEMAS EQUIVALENTES

15

-1

Figure 1.9: Ejemplo de minimizacin del mdulo


Pero tambin P) es equivalente a:
s.a.


P)

min
3x 2

(3x 2)
1 x 2
x R

R
Ahora todas las funciones que intervienen son derivables (y en este caso lineales). Es importante
notar que en esta formulacin se utiliz la equivalencia |3x 2| 3x 2 y (3x 2) .
Esta equivalencia es posible ya que la expresin |3x 2| es satisfecha por un conjunto convexo
de puntos (x, ). Este conjunto queda bien recogido por las dos restricciones equivalentes. Sin
embargo una expresin como |f(x)| ( 0) no tiene un conjunto de restricciones diferenciables
equivalente ya que el conjunto de puntos (x, ) que la satisface no es convexo. Dicha expresin ser
equivalente al conjunto de puntos (x, ) tal que f (x) o bien f(x)
En el ejemplo anterior se puede ver que en el ptimo, |3x 2| = 3x 2 = o bien
3x 2 = ; esta relacin puede representarse mediante (3x 2 )(3x 2 + ) = 0.

Por lo tanto, P) tambin es equivalente a:


P)

min

s.a. (3x 2 )(3x 2 + ) = 0


1 x 2
x R

R

En este caso, como el problema P) es lineal, lo preferimos a este ltimo problema.

16

CHAPTER 1. INTRODUCCIN

Es importante notar que aunque 1 x 2 est dems en este caso, muchas veces no es
recomendable eliminar (o relajar) restricciones reales de un problema an cuando se sepa que
la solucin ptima del problema permanecera inalterable (a menos que la relajacin simplifique
considerablemente la resolucin del problema). Esto se debe a que a veces falla la intuicin del
modelador y porque el modelo puede ser usado ms adelante con otros parmetros que activen la
restriccin relajada.

En trminos generales, los siguientes modelos resultan equivalentes:


P)

min |f(x)|
xD

P)

min
f(x)
f(x)

x R

R

P) min

(f(x) )(f(x) + ) = 0

x R

R
Al realizar estas equivalencias, el lector debe cuidarse de no incurrir en equivalencias errneas. Por
ejemplo:
P ) max( max {fi (x)})
i=1,...,n

s.a. x D
no es equivalente a
P) max

s.a. fi (x) i = 1, ..., n


x D

R.

1.7. PROBLEMAS EQUIVALENTES

17

pues todo lo que se puede decir es que P ) es equivalente a

s.a.


P) max

max {fi (x)}

i=1,...,n

x D

R.
Sin embargo, que sea inferior al mximo de un conjunto de funciones no es equivalente a que
sea inferior a cada una de ellas (equivaldra a ser inferior al mnimo de ellas). Lo que se requerira
es exigir que sea inferior a al menos una de las funciones, es decir f1 (x) f2 (x)
.... fn (x). En cambio al exigir fi (x) i = 1, ..., n se est exigiendo f1 (x) y f2 (x) y
.... y fn (x). Incorporar las relaciones lgicas asociadas al operador tpicamente requieren
de variables binarias asociadas a cada relacin. Estas variables binarias no son continuas por lo que
tampoco son diferenciables. As, no existe un modelo equivalente diferenciable a P ) en este caso.

Por ejemplo, consideremos el siguiente problema


P ) max |3x 2|
s.a.

1 x2
x R

La solucin ptima a este problema ser x = 1 con un valor ptimo v = 5. Podemos ver que el
siguiente modelo:
P ) max
s.a. 3x 2
(3x 2)
1 x 2
x R

no es equivalente pues la solucin x = 1, = 5 no es factible, ya que no satisface la primera


restriccin.

Considere el siguiente problema:


P)
s.a.

min z = (max {|x1 |, |x2 |})


x1 + 2x2 1
x1 , x2 0

18

CHAPTER 1. INTRODUCCIN
x2

1/2

11

x1

Figure 1.10: Ejemplo equivalencia III

Aplicando la regla III, P ) es equivalente a:


P)

min
x1
x1
x2
x2

x1 + 2x2 1
x1 , x2 0

(x1 , x2 ) R2
R

Una ventaja de los problemas bidimensionales como el anterior es que pueden resolverse mediante curvas de nivel. En este procedimiento se dibuja en el plano R2 un conjunto de curvas tal que
cada una de ellas represente el lugar geomtrico de todos los puntos de R2 que reemplazados en
la funcin objetivo den el mismo valor o cota. A continuacin se debe graficar en el mismo plano
los puntos que satisfacen las restricciones del dominio. As, es posible identificar visualmente la
solucin ptima al problema. Por ejemplo, en la Figura 1.10 podemos ver el dominio del problema
P ), y la Figura 1.11 ilustra el dominio al agregar las curvas de nivel.
En este caso, las curvas de nivel permiten observar que la funcin objetivo corresponde a una
pirmide invertida de base cuadrada en que las aristas de la base son paralelas a los ejes cartesianos.
El problema P ) busca el punto del dominio que pertenezca a la curva de nivel de mnima cota (ver
Figura 1.11).
La figura permite identificar que en el ptimo x1 = x2 , y como x1 + 2x2 = 1, entonces x1 =
y x2 = 13 . Por lo tanto v(P ) = 13 .

1
3

1.7. PROBLEMAS EQUIVALENTES

19

x2
1

Z=1

Z=1/2

-1

x1

-1

Figure 1.11: Curvas de nivel

1.7.4

Equivalencia IV

Considere el siguiente problema:


P)

min

r


fi (
x)

i=1

x D Rn

Este problema puede expresarse en forma equivalente como:


P) min

r


i=1

fi (
x ) i ;

x D

Rr

i = 1, ..., r

Esta equivalencia puede demostrarse por contradiccin al igual que la equivalencia II. Se deja al
lector como ejercicio.
Esta equivalencia es de especial inters en casos en que algunas funciones fi (x) son no diferenciables y al pasarlas al dominio permiten encontrar una equivalencia que s lo sea. Por ejemplo:
P ) min(|x1 | + |x2 |)
s.a.

x1 + 2x2 1

20

CHAPTER 1. INTRODUCCIN
P)

min 1 + 2
s.a.

|x1 | 1
|x2 | 2

x1 + 2x2 1
Lo que tambin equivale a: (Problema Lineal Equivalente)

P) min 1 + 2
s.a.

x1 1

x1 1
x2 2
x2 2
x1 + 2x2 1

1 , 2 R

En trminos generales se puede decir que:


P)

min

r

i=1

x D Rn

s.a.

P) min

r


|fi (x)|

i=1

fi (x) i ;

i = 1, ..., r

fi (x) i ;

i = 1, ..., r

x D

Rr
Ejemplo: son los siguientes problemas equivalentes?:
P)

min x 2

s.a

x0

P)

s.a

min (x 2)2
x0

Claramente no lo es porque la funcin g(x) = x2 es estrictamente creciente sobre los nmeros

1.7. PROBLEMAS EQUIVALENTES

21

no negativos. Sin embargo, aqu se aplica sobre una funcin que puede arrojar nmeros negativos
(e.g. si x = 0, entonces f(x) = 2). De hecho la solucin ptima al primer problema es x = 0,
mientras el del segundo es x = 2.

1.7.5

Equivalencia V

El problema de minimizacin MinxD f(x) es equivalente al problema MinxD g(f (x)), donde la
funcin g : f (D) R R es estrictamente creciente sobre f(D) = {y R / x D : y = f(x)} ,
por lo que la solucin ptima ser la misma en ambos casos, pero no as los valores ptimos. Para
comprobar esta equivalencia, considere a x como el ptimo del problema original. Esto significa que
f(x ) f(x) x D. Como g(x) es estrictamente creciente, si x1 x2 entonces g(x1 ) g(x2 ).As,
necesariamente g(f (x )) g(f (x)) x D y por lo tanto ambos problemas arrojarn la misma
solucin ptima. Por ejemplo, al cambiar la escala de unidades de la funcin objetivo de dlares a
pesos (U S$ $), se est aplicando una funcin g(x) lineal y creciente sobre todo el dominio por
lo que la solucin ptima al problema es la misma independiente de las unidades.
Ejemplo 3 Determinar el punto ms cercano al origen (0,0) que satisfaga 2x1 + x2 2.

En este caso la funcin de costos sera x21 + x22 , y el dominio D = {(x1 , x2 )/2x1 + x2 2} .
La funcin raz cuadrada suele presentar complicaciones pues no es diferenciable en cero. Por lo
tanto, resulta conveniente modificar la funcin objetivo con el fin de eliminar la raz.
Tomemos g(y) = y 2 . Esta funcin es estrictamente creciente sobre el recorrido de la funcin
objetivo original, esto es, los nmeros no negativos R+ , ya que f(x) 0 x D.
Por lo tanto, los siguientes problemas son equivalentes:


min x21 + x22

P)
s.a

2x1 + x2 2

P )

min x21 + x22

s.a

2x1 + x2 2

 1 , x2 ) = x2 + x2 es difereny este ltimo problema presenta la ventaja que su funcin objetivo: f(x
1
2
ciable sobre todo R2 .

Nota: Si el problema P ) est bien formulado (i.e. el argumento de la raz sea no negativo para
todo x D) se puede siempre prescindir de la raiz.
P)
con

min
xD


r(x)

r(x) 0 x D
P)

min r(x)
xD

22

CHAPTER 1. INTRODUCCIN

En este caso es importante recordar que si x


 es solucin ptima de P) con v(P ) = r(
x), entonces

x
 es solucin ptima de P ) con v(P ) = r(
x).

1.7.6

Equivalencia VI

Basndose en las equivalencias anteriores podemos decir que el problema


1
f(x)
f(x) = 0, x D

P)
con
y

min
xD

f(x) > 0

es equivalente a
P )

max f (x).
xD

Para probar lo anterior basta con suponer el caso particular en que g(y) = ln y, estrictamente
creciente y > 0. Aplicando la regla V P ) es equivalente a:

P)

1
min ln
xD
f(x)


Finalmente, de la regla I, P) es equivalente a:


P)

= min ln f(x)
xD

max ln f (x)
xD



De la regla V, con g(y) = ey , P ) es equivalente a:



P )

max f (x).
xD

Es importante destacar que esta equivalencia ocurre slo si f (x) es estrictamente positivo para todo
x. Si la funcin puede tomar valores negativos para algunos puntos del dominio, entonces aplicar
esta equivalencia puede conducir a error.

1.7.7

Equivalencia VII

Aunando las equivalencias anteriores, podemos decir que el problema


P)

min(g(x) + max {fi (x)})


xD

i=1,...,r

1.8. NOCIONES BSICAS DE CONVEXIDAD

23

Geomtricamente
D no convexo

D convexo

Figure 1.12: Conjuntos convexos y no convexos


es equivalente a:
P)

min 1 + 2
xD

g(x) 1
fi (x) 2
1 , 2

1.8

R.

i = 1, ..., r

Nociones Bsicas de Convexidad

Los problemas de optimizacin pueden ser sumamente complejos y contener mltiples soluciones
ptimas locales lo que puede dificultar enormemente su resolucin. Estas dificultades pueden reducirse si se identifican adecuadamente algunas caractersticas tanto de la funcin objetivo como
del dominio del problema. En esta seccin se revisan las caractersticas de los conjuntos convexos,
las funciones convexas y los problemas convexos.

1.8.1

Conjuntos Convexos

Intuitivamente un conjunto se dice convexo si para cualquier par de puntos en el conjunto, todos
los puntos en la lnea recta que los une tambin pertenecen al conjunto. Basta que haya un par de
puntos en el dominio que no satisfaga esta condicin para que el conjunto se diga no convexo. En
la Figura 1.12 se observa un ejemplo de un conjunto convexo y uno no convexo.Formalmente,
Definicin 5 Un conjunto D Rn se dice convexo si para todo par de puntos x1 D y x2 D y
cada nmero real con 0 1, x = x1 + (1 )x2 D.
Definicin 6 Segmento [x1 , x2 ] = {z Rn / z = (1 )x1 + x2 , [0, 1]} . Dado lo anterior,
un dominio D ser convexo si: x1 y x2 D [x1 , x2 ] D.
Claim 1 Todos los poliedros definidos por desigualdades lineales son convexos. Esta demostracin
se deja al lector.
Proposicin 3 El conjunto formado por la interseccin de conjuntos convexos es convexo (ver
Figura 1.13).

24

CHAPTER 1. INTRODUCCIN

Demostracin. Sean A y B conjuntos convexos, y su interseccin denominmosla C = A B.


Se debe demostrar que si x1 y x2 C, entonces [x1 , x2 ] C. Si x1 y x2 C, entonces x1 y x2 A y
x1 y x2 B. Como A y B son convexos, [x1 , x2 ] A y [x1 , x2 ] B, por lo tanto, [x1 , x2 ] C. C
es convexo. Ver Figura 1.13.

B
AIB

Figure 1.13: Interseccin de Conjuntos

1.8.2

Funciones Convexas

En optimizacin, estamos especialmente interesados en identificar puntos extremos de la funcin


objetivo. Para algunas funciones esto resulta particularmente sencillo. Desde esta perspectiva, en
la Figura 1.14 se entrega una clasificacin del universo de funciones. En esta figura se destacan las
funciones convexas, estrictamente convexas y cuasi-convexas que a continuacin se describen.

Cuasi-Convexas

Convexas
Estrictamente
Convexas

Figure 1.14: Universo de funciones


Definicin 7 (Funcin convexa) Sea f(x) : D R, con D convexo. Entonces, f(x) es convexa
sobre D si:
f((1 )x1 + x2 ) (1 )f(x1 ) + f (x2 )

x1 , x2 D, [0, 1] .

En otras palabras, lo que dice la Definicin 7, es que si en cualquier intervalo [x1 , x2 ] todo punto
del grafo de f(x) est siempre bajo la cuerda que une los puntos (x1 , f (x1 )) y (x2 , f (x2 )), entonces
f(x) es una funcin convexa. La Figura 1.15 lo muestra grficamente. Es importante notar que
una funcin definida sobre un dominio no convexo no puede ser convexa.
Qu ocurre con la funcin de la Figura 1.16? El grafo de f (x) sobre la regin [x1 , x2 ] est por
encima de la cuerda, por lo tanto f(x) no es convexa sobre D.

1.8. NOCIONES BSICAS DE CONVEXIDAD

25

fx 2

1 fx 1 + fx 2
fx 1

f1 x 1 + x 2

x1

x2

Figure 1.15: Funcin convexa


f(x)

x1

x2

Figure 1.16: Funcin no convexa


Al observar los grficos de funciones convexas y no convexas, se deduce la siguiente propiedad:
Proposicin 4 Si la funcin f(x) es diferenciable y convexa sobre D, entonces la tangente en
cualquier punto de f(x) no podr exceder a f(x) para cualquier x en el dominio (ver Figura 1.17).
df(x)
Es decir, para que f(x) sea convexa, f (x) f (x) +
(x x), x, x D.
dx
Proposicin 5 La suma de funciones convexas es tambin convexa.
Demostracin. Sean f1 y f2 las funciones. Sea x1 , x2 D, y 0 1, tal que
f1 ((1 )x1 + x2 ) (1 )f1 (x1 ) + f1 (x2 )
f2 ((1 )x1 + x2 ) (1 )f2 (x1 ) + f2 (x2 ).
Sumando obtenemos
f1 ((1 )x1 + x2 ) + f2 ((1 )x1 + x2 ) (1 )f1 (x1 ) + f1 (x2 ) + (1 )f2 (x1 ) + f2 (x2 ).
Si f1 (x) + f2 (x) = g(x) entonces g((1 )x1 + x2 ) (1 )g(x1 ) + g(x2 ). Por lo tanto g(x), es
decir f1 (x) + f2 (x), es convexa.

26

CHAPTER 1. INTRODUCCIN

f (x)
f ( x) +

df ( x)
( x x)
dx

Figure 1.17: Tangente de funcin convexa


R

( x, r )

f (x)

Figure 1.18: Epgrafo de la funcin f(x)


Anlogamente, es fcil demostrar que una funcin convexa multiplicada por cualquier parmetro
positivo sigue siendo convexa.
Definicin 8 (Funcin cncava) Sea f(x) : D R, con D convexo. Entonces, f(x) es cncava
sobre D si:
f((1 )x1 + x2 ) (1 )f(x1 ) + f (x2 )

x1 , x2 D, [0, 1] .

As, resulta claro que si f(x) es una funcin convexa, entonces f (x) ser una funcin cncava.
Proposicin 6 Si D es convexo, f : D R es convexa sobre D si y solo si el epgrafo de f sobre
D, ED (f) = {(x, r) : x D, r f (x)} , es una parte convexa de Rn R. Ver Figura 1.18.
Proposicin 7 Sean D Rn convexo, y fi (x) i = 1, ..., p convexas sobre D, entonces f (x) =
max {fi (x)} define una funcin convexa sobre D.

1.8. NOCIONES BSICAS DE CONVEXIDAD

27

f2

ED ( f )
f3

f1

Figure 1.19: Interseccin de epgrafos


Demostracin. Dado que la interseccin (cualquiera) de conjuntos convexos es un conjunto
convexo, podemos decir:
f(x) =
ED (f) =

max {fi (x)}


i=1,...,p
pi=1 ED (fi ).

Como cada uno de los epgrafos de las funciones fi (x) es convexo, su interseccin tambin lo es.
As, ED (f ) es convexo, por lo que f(x) es convexa sobre D (ver Figura 1.19).
Las funciones convexas presentan favorables propiedades al optimizar. Por ejemplo, un punto
mnimo local es siempre mnimo global. Sin embargo, no necesariamente este ptimo ser nico.
Por ejemplo, la funcin f (x) en la Figura 1.20 tiene varias soluciones ptimas.
f(x)

Conjunto de soluciones ptimas

Figure 1.20: Ejemplo de mltiples soluciones ptimas


As, surge la necesidad de definir las funciones estrictamente convexas.
Definicin 9 (Funcin estrictamente convexa) Sea f(x) : D R, con D convexo. Entonces,
f(x) es estrictamente convexa sobre D si:
f ((1 )x1 + x2 )) < (1 )f (x1 ) + f(x2 )

x1 , x2 D, [0, 1] .

28

CHAPTER 1. INTRODUCCIN

Es decir toda funcin estrictamente convexa es tambin convexa. En forma anloga se definen
las funciones estrictamente cncavas.
La Figura 1.21a presenta una nueva funcin convexa, pero no estricta. Cabe mencionar que
toda funcin lineal f(x) = ax + b es cncava y convexa a la vez, pero ni estrictamente cncava ni
estrictamente convexa. Por otra parte, la Figura 1.21b muestra una funcin que no es ni cncava
ni convexa, pero que localmente cerca de x1 es cncava y localmente cerca de x2 es convexa.
f(x)

f(x)

x1

x2
(b)

(a)

Figure 1.21: Casos especiales de funciones


A continuacin se demostrar que si f(x) es convexa, entonces el lugar geomtrico de los puntos
que satisfacen f(x) debe constituir un conjunto convexo para cualquier .
Proposicin 8 Si : D R, D Rn , D convexo, convexa, entonces los conjuntos de nivel
C () = {x D/(x) } son convexos R .
Demostracin. Sean x1 , x2 C (), con R fijo, y [0, 1] . Mostremos que (1 )x1 +
x2 C (). Si x1 y x2 C () x1 , x2 D, y
(x1 ) y

(x2 ) .

(1.3)

Como D es convexo (1 )x1 + x2 D, [0, 1] y como () es convexa sobre D, entonces


((1 )x1 + x2 ) (1 )(x1 ) + (x2 ). Por lo tanto de (1.3) tenemos que ((1 )x1 + x2 )
(1 ) + = . As, (1 )x1 + x2 C ().
Corolario 9 Si el dominio de restriccin est definido como: D = {x Rn : gi (x) 0, i =
1, . . . , m} con gi : Rn R funciones convexas, entonces D es una parte convexa de Rn .
Demostracin. Dado que las funciones gi (x) son convexas, las regiones definidas por las restricciones gi (x) 0 son tambin convexas (conjuntos de nivel). El dominio D queda definido como
la interseccin de las regiones de puntos definidos por cada una de las m restricciones, formalmente
D = m
i=1 C0 (gi ). Como cada uno de las regiones C0 (gi ) es convexa y la interseccin de conjuntos
convexos es convexa, entonces D es convexo.
Es importante destacar que restricciones del tipo hi (x) = 0, slo definen regiones convexas si la
funcin es lineal (no basta que hi (x) sea convexa).

1.8. NOCIONES BSICAS DE CONVEXIDAD

29

Figure 1.22: Dominio D formado por semi-espacios


Caso particular: Si tenemos restricciones lineales del tipo gi (x) = ai x bi (funciones lineales
son cncavas y convexas a la vez), entonces D es un poliedro convexo (interseccin finita de semiespacios, ver Figura 1.22). Las funciones convexas no son las nicas en satisfacer que el lugar
geomtrico de los puntos que cumplen con f(x) son conjuntos convexos, para cualquier .
Existen muchas funciones que satisfacen la propiedad sin ser convexas. Al conjunto de funciones
que satisface esta propiedad se le denomina funciones cuasi-convexas. Alternativamente, estas
funciones pueden describirse del siguente modo:
Definicin 10 (Funcin cuasi-convexa) Si D es una parte convexa de Rn , una funcin f :
D R se dice cuasi-convexa sobre D si:
f(z) max{f (x), f(y)}

x, y D, x = y, z ]x, y[.

Es decir, tomando cualquier par de puntos en el dominio, todos los puntos en la recta que los
une tendrn una imagen no superior a las imgenes de los dos puntos. Cuando f (x) es una funcin
cuasi-convexa, sta posee a lo ms un valle, como es el caso de la funcin cuasi-convexa de la Figura
1.23. Es importante notar que esta funcin no es convexa.
f(x)

x
D convexo

Figure 1.23: Funcin cuasi-convexa


Una caracterstica importante de las funciones cuasi-convexas radica en que un mnimo local de
estas funciones es siempre tambin su mnimo global. Como se mencion anteriormente, otra caracterstica importante es que para toda funcin f(x) cuasi-convexa se cumple que el lugar geomtrico

30

CHAPTER 1. INTRODUCCIN

de los puntos tal que satisfacen f(x) a conforman necesariamente un conjunto convexo. As, un
conjunto definido por una serie de restricciones del tipo fi (x) ai en que todas las funciones fi (x)
son cuasi-convexas es un conjunto convexo.

Definicin 11 (problema convexo) El problema de minimizacin


P)

M in f(x)
x D.

se dice convexo, si D es una parte convexa de Rn y f(x) es convexo sobre D.


Es importante notar que basta una variable discreta que incida en el conjunto D para que ste
no sea convexo. Por ende los problemas con variables discretas tpicamente no son convexos.

Proposicin 10 Si P ) es convexo, todo punto mnimo local del problema es tambin su ptimo
global.
Demostracin. Sea x
punto mnimo local de P ). Entonces definamos un conjunto vecindad de
x
que denominaremos B(
x, R) en que todos los puntos del conjunto estn a una distancia menor a R
de x
y tal que f(
x) f(x) x DB(
x, R); de otro modo x
no sera mnimo local. Supongamos que
x
no es mnimo global. En ese caso existira un punto z D (
z = x
) tal que f(
z ) < f (
x). Definimos
ahora el conjunto de puntos en la recta entre x
y z como: y() = (1 )
x +
zD
[0, 1] .
Todos estos puntos pertenecen a D pues x
D, z D y D es convexo.
Entonces

i) debe existir un suficientemente pequeo tal que , y() B(


x, R), y por lo tanto, f (y()) >
f(
x)
Sin embargo,
ii) f(x) es convexa f(y()) (1 )f(
x) + f (
z ), y como f(
z ) < f(
x), esto implicara que
f(y()) f(
x) lo que contradice el punto i) anterior.
As, se demuestra que x
debe ser un punto mnimo global de P ).

Esta propiedad de los problemas convexos es altamente deseable, pues permite focalizar el
objetivo en encontrar un punto localmente ptimo. Esto se traduce en que dado un punto candidato
a ptimo global del problema, no importa cuan grande sea el dominio, nos basta compararlo con
los puntos de su vecindad inmediata para determinar su optimalidad. Por ltimo,

Proposicin 11 Corolario 12 Si f (x) es estrictamente convexa sobre D (convexo), entonces


todo punto mnimo local de f(x) es tambin su nico mnimo global.

1.8. NOCIONES BSICAS DE CONVEXIDAD


1

31
3

Figure 1.24: Determinantes menores de una matriz

1.8.3

Criterios prcticos de convexidad de funciones

Sea f(x) = f(x1 , x2 , ..., xn ) continua y dos veces diferenciable. Su matriz Hessiana ser:

H=

2f
x21
2f
x2 x1

..
.

2f
x1 x2
2f
x22

2f
xn x1

...
..

2f
x1 xn

.
2f
x2n

la cual es una matriz simtrica. La Figura 1.24 muestra las matrices menores de esta matriz, cuyos
determinantes se denominarn i .
Definicin 12 Caracterizacin de la matriz Hessiana
1. Si todos los determinantes de las matrices menores son estrictamente positivos (i > 0)
H se dir definida positiva. Esto significa que para cualquier vector d en Rn se cumple
que dT Hd > 0.
2. Si todos los determinantes de las matrices menores son no negativos (i 0) H se dir
semidefinida positiva. Esto significa que para cualquier vector d en Rn se cumple que dT Hd
0.
3. Si los determinantes de las matrices menores impares son estrictamente negativos y los de
las matrices menores pares estrictamente positivos (1 < 0, 2 > 0, 3 < 0, ...,) H es
definida negativa. Esto significa que para cualquier vector d en Rn se cumple que dT Hd < 0.
4. Si los determinantes de las matrices menores impares son no positivos y los de las matrices
menores pares no negativos (1 0, 2 0, 3 0, ...,) H es semidefinida negativa.
Esto significa que para cualquier vector d en Rn se cumple que dT Hd 0.
Sea f() dos veces diferenciable sobre D, con D Rn y convexo. Entonces f() es convexa sobre
D si y solo si D2 f(x) = H es semidefinida positiva x D. Es decir, dT D2 f(x)d 0, d Rn ,
x D.

32

CHAPTER 1. INTRODUCCIN
Ejemplo: Sea f(x1 , x2 ) = 2x1 3x2 + x41 + x1 x2 + x22 . Las derivadas parciales son:
f
x1
f
x2

= 2 + 4x31 + x2
= 3 + x1 + 2x2

y las segundas derivadas seran:


2f
= 12x21
2
x1

2f
=1
x1 x2

2f
=1
x2 x1

2f
= 2.
x22

De esta forma, la matriz Hessiana es:


H=

12x21 1
1
2

Los determinantes menores son 1 = 12x21 , no negativo para


 todo punto del dominio, y 2 =
1
1
2
2
24x1 1. Pero, 2 0? Slo si x1 24 , es decir, si |x1 | 24
.

x2
D

1
24

1
24

x1

Figure 1.25: Dominio de f(x1 , x2 )


Es importante destacar que f(x) no es convexa sobre toda la regin achurada en la Figura
1.25, ya que esta regin no es convexa. Asimismo, basta que la funcin
 sobre un dominio
  sedefina
1
1
convexo que incluya alguna regin no achurada (algn punto en 24 , 24 para que la funcin
no sea convexa pues el Hessiano no sera semidefinido positivo).
Proposicin 13 Si D es una parte convexa de Rn y D2 f(x) es definida positiva, es decir, dT D2 f(x)d >
0, d Rn , d = 0, entonces f (x) es estrictamente convexa sobre D.
En el ejemplo anterior, f() es estrictamente convexa sobre toda regin convexa contenida en
la regin x1 < 1
o en la regin x1 > 124 ; x2 R. Estas regiones excluyen explcitamente a los
24
puntos en que x1 = 1
x1 = 124 (ver Figura 1.26).
24
Es importante destacar la causalidad de esta proposicin: si el Hessiano es definido positivo,
entonces la funcin es estrictamente convexa, pero no al revs. Es decir, si f(x) es estrictamente
convexa y dos veces diferenciable en una regin, no implica que D2 f (x) sea definida positiva en
la regin. Por ejemplo, si f(x) = x4 que es estrictamente convexa, D2 f(x) = 12x2 no es definida
positiva en x = 0.

1.8. NOCIONES BSICAS DE CONVEXIDAD

33

x2
D

1
24

1
24

x1

Figure 1.26: Dominio no convexo de f(x1 , x2 )

Ejemplo: Considere el siguiente problema de optimizacin:


P)
s.a

min x2 + y 2 + z 2 6000(x + y + z)
x + 2y + 4z 4000
x, y, z 0

Tenemos un problema con funcin objetivo cuadrtica, estrictamente convexa. Veamos su matriz
Hessiana para comprobar esto.

2 0 0

D2 f(x, y, z) = 0 2 0 = H
0 0 2
Por lo tanto, H es definida positiva (constante), y como D es un dominio acotado, cerrado y no vaco,
entonces por el Teorema de Existencia tenemos que P ) admite solucin ptima. Como observamos
que H es definida positiva en cualquier punto, decimos que f () es estrictamente convexa. Como
adems el dominio es convexo, decimos que el problema admite solucin ptima nica.
Ejemplo: En una fbrica de chocolates necesitan determinar el precio de venta ptimo para su
producto de modo de maximizar la utilidad obtenida. El precio no puede superar el precio de 60c/
de un producto de la competencia. El costo de produccin de la barra es de 8, 5c/, y la demanda se
representa mediante la funcin f (P ) = 1000
, donde P es el precio de venta expresado en centavos.
P2
De esta forma, la formulacin del modelo sera:
P)

Max(P 8, 5)(

s.a

8, 5 P 60

1.000
)
P2

Existe un precio ptimo? S, pues f (P ) es continua sobre el intervalo [8, 5; 60] , cerrado, acotado
y no vaco (notar que el dominio es convexo). La condicin de primer orden es:
df(P )
1
= 3 (17.000 1.000P ) = 0
dP
P

34

CHAPTER 1. INTRODUCCIN

de la cual se obtiene P = 17c/ como un punto de derivada nula y por lo tanto posible precio
ptimo. A continuacin es necesario analizar la convexidad de f (P ) para ver si P corresponde
efectivamente a un mximo. Para esto se analiza la segunda derivada de f(P ),
f (P ) = 2.000P 3 51.000P 4 .

(1.4)

f (P )
Es d dP
0 P [8, 5; 60]? No, si se iguala (1.4) a cero se obtiene que en P = 25, 5 hay un
2
cambio de signo en la segunda derivada de f (P ), donde f (P ) < 0 si P < 25, 5 y f (P ) > 0 si
P > 25, 5. Por lo tanto, P ) es no convexo globalmente (ver Figura 1.27). Por lo anterior se deduce
que en P = 17c/ la funcin es cncava localmente, por lo cual este precio corresponde a una solucin
ptima local. Para garantizar que la solucin es ptima global se puede argumentar que la funcin
es estrictamente decreciente para valores superiores a P = 17c/ por lo que este precio maximiza la
utilidad (
v = 29, 4c/).

f (P )
Cambio de convexidad

17,5

25,5

Figure 1.27: Convexidad de la funcin de utilidad f(P )

1.9

Problemas resueltos

Problema 14 (Equivalencia) Considere el siguiente problema y escriba uno equivalente que sea
diferenciable en el dominio.
P ) Max ln(|x1 + x2 + 1|)1
s.a.

x1 + 2x2 5
x1 , x2 0

Solucin:
Aplicando la regla I de Problemas equivalentes (y reglas bsicas de logaritmos) transformamos
P en un problema de minimizacin.
P ) Min ln(|x1 + x2 + 1|)
x D

1.9. PROBLEMAS RESUELTOS

35

Utilizando la equivalencia V aplicamos una funcin g(y) = ey que es creciente x, para eliminar el
ln . Luego:
P ) Min |x1 + x2 + 1|
x D
Y aplicando la regla II llegamos a
P ) Min
s.a.
x1 + x2 + 1
x1 x2 1
x1 + 2x2 5
x1 , x2 0
Problema 15 Se quiere instalar una antena de telecomunicaciones, cuya cobertura incluya a cinco
ciudades aledaas de ubicaciones (xi , yi , zi ). Para lograrlo se debe buscar una posicin en el que la
intensidad de la seal sea lo mayor posible para las ciudades, sin salir de los ciertos lmites dados
( (x, y, z) D). Adems se sabe que la intensidad en cierta ciudad es proporcional a la potencia
de la antena (k), e inversamente proporcional a la distancia desde la antena hasta la ciudad. En
qu ubicacin debe instalarse la antena? Modele un problema de optimizacin que sea diferenciable
en el dominio.
Solucin:

La intensidad de la antena en la ciudad de posicin


xi ser
k

Ii (
x)
,

|x
xi |

es decir, Ii (
x) 
2
(z zi ) + (x xi )2 + (y yi )2

As la intensidad de la seal que recibe la ciudad con menor cobertura ser

I(
x ) = min Ii (
x)
i=1...5

As el modelo de optimizacin ser

Max
x D I ( x ) = Max
x D

k
min 
2
i=1...5
(z zi ) + (x xi )2 + (y yi )2

que se puede reescribir como

Max
x D

I (
x ) = Min
x D

k
max 
2
i=1...5
(z zi ) + (x xi )2 + (y yi )2

36

CHAPTER 1. INTRODUCCIN
Esto es equivalente al problema
Min
k

, i = 1...5
(z zi )2 + (x xi )2 + (y yi )2

x D,
R

s.a.

Problema 16 Considere los siguientes problemas de optimizacin, y escriba uno equivalente que
sea diferenciable en el dominio.





Max 7x3 + x2 + y  min x2 , |x + y|

(a)

s.a.

(b)

x3 + 8y 2 250,

x0


 


Maxx0 min x2 7x 10 , min x3 4x, x4 7

Solucin:
(a)






Max 7x3 + x2 + y  min x2 , |x + y|




Min 7x3 + x2 + y  min x2 , |x + y|


s.a.
(x, y) D, conD = (x, y) / x3 + 8y 2 250, x 0




Min 7x3 + x2 + y  + max x2 , |x + y|
s.a.

(x, y) D

Min 1 + 2 + 3


s.a.
7x3 1 , x2 + y  2 ,


max x2 , |x + y| 3 , (x, y) D, i R i

Min 1 + 2 + 3
s.a.

7x3 1 , x2 + y 2 , x2 y 2 ,

x2 3 , |x + y| 3 , (x, y) D, i Ri

Min 1 + 2 + 3
s.a.

7x3 1 , x2 + y 2 , x2 y 2 ,

x2 3 , x + y 3 , (x + y) 3 ,
(x, y) D, i R i

(1.5)

1.9. PROBLEMAS RESUELTOS

37

(b)


 


M axx0 min x2 7x 10 , min x3 4x, x4 7

 


M inx0 min x2 7x 10 , min x3 4x, x4 7




M inx0 max x2 7x 10 , min x3 4x, x4 7




M inx0 max x2 7x 10 , max x3 + 4x, x4 + 7
M in
s.a.

 2

x 7x 10 , x3 + 4x ,
x4 + 7 , x 0, R

M in
s.a.

x2 7x 10 , (x2 7x 10) ,

x3 + 4x , x4 + 7 , x 0, R

Problema 17 Considere el siguiente problema de optimizacin, y escriba uno equivalente que sea
diferenciable en el dominio.
Max





1 
ln 7x3 + x2 + y  min x2 , |x + y|
2
s.a.
x3 + 8y 2 250, x 0

Solucin:





1/2
Min ln 7x3 + x2 + y  min x2 , |x + y|


s.a.
(x, y) D, conD = (x, y) / x3 + 8y 2 250, x 0

Utilizando la funcin estrictamente creciente ex se obtiene





1/2
Min 7x3 + x2 + y  + max x2 , |x + y|
s.a.

(x, y) D.

Luego utilizando la funcin estrictamente creciente en x 0, x2 se obtiene






Min 7x3 + x2 + y  + max x2 , |x + y|

s.a.

(x, y) D.

Este problema es el mismo que se describe en la Ecuacin 1.5, y puede ser resuelto del modo
ah expuesto. Otras funciones estrictamente crecientes de inters: ln x, 1/x, ex , etc.

38

CHAPTER 1. INTRODUCCIN
A
B

Figure 1.28:
Problema 18 (Convexidad (I21 03)) Responda:
(a) Qu condiciones debe cumplir un problema para ser denominado convexo?
(b) Por qu interesa verificar si un problema es convexo?
(c) Si una funcin definida sobre un conjunto A convexo, es convexa, entonces definida sobre
un conjunto B A tambin lo es?
Solucin:
(a) Debe tener una funcin objetivo convexa sobre un dominio convexo.
(b) Porque esto garantiza que un ptimo local sea global.
(c) No, ya que B debe ser convexa tambin. Por ejemplo, como vemos en la figura 1.28,
B A, pero el conjunto A es convexo y B no lo es.
Problema 19 (Convexidad) Comente acerca de la convexidad de la funcin f(x, y) = 2x2 +
3y 2 y 3 .
Solucin: Para poder entender la convexidad de esta funcin lo primero que hacemos es
identificar su Hessiano:
f
x
f
y
entonces
H=

= 4x
= 6y 3y 2


4
0

0
6 6y

con lo que 1 = 4, 2 = 24 24y, por lo que el Hessiano es semi definido positivo x R, y 1


y por lo tanto la funcin es convexa en esta regin. Al excluir el borde y = 1 (x R, y < 1) el
Hessiano se vuelve definido positivo y la funcin, estrictamente convexa.
Problema 20 (Caracterizacion de soluciones) Encuentre y caracterice la(s) solucin(es) p-

1.9. PROBLEMAS RESUELTOS

39

tima(s) del siguiente problema:


P ) Min f(x, y, z) = x2 + y 2 + z 2 + xz + yz
(x, y, z) R3
Solucin:
f
x
f
y
f
z

= 2x + z = 0
= 2y + z = 0
= 2z + x + y = 0

Por lo tanto hay slo un punto extremo: x = (0, 0, 0)


Veamos el Hessiano:

2 0 1

H = 0 2 1
1 1 2

1 = 2 > 0, 2 = 4 > 0, 3 = 4 > 0 = H es positivo definido. Por lo tanto, f (x, y, z) es


estrictamente convexa en todo el dominio, por lo tanto x = (0, 0, 0) es un mnimo global estricto.
Problema 21 Considere la funcin
f (x, y) = 2x3 + y + 20.
a)Existe alguna regin en que f(x, y) sea definida positiva?
b)Existe alguna regin en que f(x, y) sea semidefinida positiva?
c)Existe alguna regin en que f (x, y) sea semidefinida negativa?
Solucin:
En primer lugar se ve que
f
= 6x2
x

f
=1
y

H=

12x 0
0 0

a) Se necesita i > 0. En este caso 1 = 12x > 0 x > 0, pero 2 = 0 por lo que nunca
podr ser definida positiva.
b) Se necesita i 0.Esto se cumple x 0.
c) Se necesita 2i1 0 y 2i 0. Esto se cumple x 0.

Problema 22 Qu condiciones deben cumplir los parmetros a y b para que un punto de la


funcin
f(x, y) = x2 + axy + by 2 + x + y

40

CHAPTER 1. INTRODUCCIN

cumpla con las condiciones necesarias, pero no suficientes para ser mnimo?
Solucin:
i) Condicin necesaria de 1er orden:
f
x
f
y

= 2x + ay + 1 0
= ax + 2by + 1 0

ii) Condicin necesaria de 2do orden:


H=

2f
x2
2f
yx

2f
xy
2f
y2

2 a
a 2b

Para que se cumpla la segunda condicin necesaria, se necesita que H sea semidefinida positiva
(i 0). En este caso 1 = 2 > 0 y se necesita 2 = 4b a2 0.
iii) Condicin suficiente: H definida positiva (i > 0). En este caso 1 = 2 > 0 y se necesitara
2 = 4b a2 > 0.
= Para que se cumpla ii) pero no iii) se necesita: 4b a2 = 0 4b = a2
Problema 23 Responda las siguientes preguntas:
a) Sean f (x) y g(x) funciones convexas. Es el siguiente problema de optimizacin convexo?
Min

f(x)
s.a. g(x) 0

b) Demuestre que si el dominio de restricciones est definido como


D = {x Rn : gi 0, i = 1...m}
donde gi : Rn R son funciones convexas, entonces D es una parte convexa de Rn .
c) Comente acerca de la convexidad de la funcin
f(x, y) = 2x2 + 3y 2 y 3 .
d) Qu condiciones debe cumplir un problema para ser denominado convexo?
e) Si una funcin definida sobre un conjunto A convexo, es convexa, entonces definida sobre un
conjunto B A tambin lo es?
f) Encuentre y caracterice las soluciones ptimas del siguiente problema
M in

f (x, y, z) = x2 + y 2 + z 2 + xz + yz
s.a.(x, y, z) R3

1.9. PROBLEMAS RESUELTOS

41

Solucin:
a) Para que el problema sea convexo, f (x) debe ser convexa y las restricciones deben formar
un dominio convexo. En este caso, pese a g(x) ser convexa, el dominio no necesariamente lo es.
Ver Figura 1.29. As el problema de optimizacin no necesariamente es convexo.

Figure 1.29: Ejemplo de dominio no convexo

b) Si gi (x) es una funcin convexa, entonces el conjunto gi (x) 0 es convexo. Adems se sabe
que la interseccin de conjuntos convexos, es un conjunto convexo = D es convexo.
c) En primer lugar se ve que
f
= 4x
x

f
= 6y 3y 2
y

H=

4
0
0 6 6y

En y = 1, el hessiano es semidefinido positivo, por lo que la funcin es convexa en la regin y 1.


Podemos agregar que en la regin y < 1, la funcin es estrictamente convexa.
d) Para que el problema sea convexo, f(x) debe ser convexa y estar definida sobre un dominio
D convexo. Para que la funcin objetivo sea convexa se requiere que
f (x1 + (1 )x2 ) f(x1 ) + (1 )f(x2 )

x1 , x2 D; [0, 1]

e) El conjunto B A no necesariamente es convexo, por lo que la funcin definida en el dominio


B no necesariamente sera convexa.
f) En primer lugar buscamos los puntos candidatos a solucin ptima utilizando las primeras
derivadas, donde se obbtiene
f
= 2x + z 0,
x
Despejando este sistema, se
hessiano

2 0

H= 0 2
1 1

f
= 2y + z 0,
y

f
= 2z + x + y 0
z

encuentra el punto candidato (x, y, z) = (0, 0, 0). Luego se estudia el

1 1 = 2 > 0, 2 = 4 > 0, 3 = 4 > 0


2

x, y, z

42

CHAPTER 1. INTRODUCCIN

As H es definida positiva en todo el dominio, por lo que la funcin objetivo es estrictamente


convexa. Esto implica que el punto (0,0,0) es un mnimo global.
Problema 24 Encuentre y caracterice las soluciones ptimas del siguiente problema:
f (x, y) = 2x3 + 3x2 12x + 2y 2 8y
Solucin:
Las derivadas parciales son
f
= 6x2 + 6x 12 0,
x

f
= 4y 8 0
y

Resolviendo este sistema, se obtienen los puntos candidatos (1, 2) y (2, 2). Para caracterizar estos
puntos se estudia el hessiano, dado por
H=

12x + 6 0
0
4

As el primer punto ser un mnimo local estricto, y el segundo no es caracterizable. Al observar el


hessiano se puede apreciar que la funcin es convexa en la regin x 1/2.
Problema 25 Encuentre y caracterice las soluciones ptimas de la funcin
f (x, y) = sin x + sin y + sin(x + y)
Solucin:
En primer lugar se buscan los puntos crticos por medio de las primeras derivadas, que son
f
= cos x + cos(x + y) 0,
x

f
= cos y + cos(x + y) 0
y

Se ve que los puntos crticos son tales que cos x = cos y, es decir donde x = y + 2n, n=0,1,2...
Despejando para x, se obtiene 2 cos2 x + cos x 1 = 0 , considerando que cos 2x = 2 cos2 x 1 y
que cos(x 2n) = cos x. As los puntos crticos sern las soluciones de esta ecuacin cuadrtica,
y sern cos x = 1 y cos x = 1/2. Es decir, x = , /3, 5/3 (Y sus respectivos perodos 2m,
m=0,1,2... ). As los puntos crticos sern
( + 2m, + 2n) , (/3 + 2m, /3 + 2n) , (5/3 + 2m, 5/3 + 2n)
Para determinar la naturaleza de estos puntos, se calcula el hessiano resultando
H=

sin x sin(x + y)
sin(x + y)
sin(x + y)
sin y sin(x + y)

Luego ste se evala en los puntos crticos:

1.9. PROBLEMAS RESUELTOS

43

i)
H=

0 0
0 0

Se podra decir que el hessiano es semidefinido positivo y/o negativo. As, no se puede caracterizar
este punto.
ii)



3 2 3

H=

3 < 0, 2 = 3 3/4 = 9/4 > 0


1
3
3
2
As en el segundo punto crtico, el hessiano es definido negativo, por lo que el punto corresponde a
un mximo local estricto, n, m.
iii)



3 23
H = 3
= 1 = 3 > 0, 2 = 3 3/4 = 9/4 > 0
3
2
As en el tercer punto crtico, el hessiano es definido positivo, por lo que el punto corresponde a un
mnimo local estricto, n, m.

44

CHAPTER 1. INTRODUCCIN

Chapter 2

Programacin No lineal
En este captulo se presentan tcnicas para identificar soluciones ptimas a problemas de variables
continuas con funcin objetivo o restricciones no lineales. Inicialmente se abordan problemas sin
restricciones, luego se analizan problemas unidimensionales con restricciones, luego problemas multidimensionales con restricciones de igualdad para finalmente analizar problemas con restricciones
generales. Las condiciones de optimalidad encontradas durante este captulo sern luego aplicadas
a problemas lineales en el captulo siguiente.

2.1

Optimizacin de una funcin sin restricciones

Considere el problema de minimizacin


P)

min f (x)
x Rn

donde f(x) es una funcin diferenciable.


x) f (
x + h) h = (h1 , h2 , ..., hn ) tal que
Un punto x
= (x1 , x2 , ..., xn ) es un mnimo local si f(
|hj | es suficientemente pequeo para todo j. Es decir, x
es un mnimo local si el valor de f (x) en
cada punto del entorno o vecindad de x
no es menor a f(
x).

2.1.1

Condiciones Necesarias y suficientes para extremos

En esta seccin se presentan las condiciones necesarias y suficientes que debe cumplir un punto
para ser considerado punto extremo del problema. Es importante recordar lo que se entiende por
condiciones necesarias y suficientes. Condiciones necesarias son aqullas que todo punto extremo
debe cumplir. Es decir una vez definidas estas condiciones, no existe un punto extremo al problema
que no cumpla con estas condiciones. Condiciones suficientes son aqullas que si un punto las
cumple entonces el punto constituye sin lugar a dudas un punto extremo.
Adicionalmente distinguiremos entre las condiciones de primer y segundo orden. Las condiciones
de primer orden son aqullas que se pueden desprender a partir de un anlisis de primeras derivadas
45

46

CHAPTER 2. PROGRAMACIN NO LINEAL

de las funciones involucradas en el problema. Las condiciones de segundo orden son aqullas que
se pueden desprender a partir de un anlisis de primeras y segundas derivadas de las funciones
involucradas en el problema.
Teorema 26 (Condicin necesaria de 1er orden). Si x
Rn es un punto mnimo local de f(x),

entonces debe cumplirse que f(


x) = 0 , es decir,
f(
x1 , x
2 , ..., x
n )
=0
xi

i = 1, ..., n.

Esta condicin es necesaria, pero no suficiente para un mnimo: tambin la satisfacen otros
puntos extremos como mximos y puntos de inflexin. As, para que x
sea un punto mnimo, debe
cumplirse una segunda condicin necesaria.
Teorema 27 (Condicin necesaria de 2do orden) Si x
Rn es un punto mnimo local de f(x),

y f(x) es dos veces diferenciable, entonces debe cumplirse que f (


x) = 0 (1er orden) y que la
matriz Hessiana D2 f(
x) sea semidefinida positiva (2do orden).

verifica: f(
x) = 0 y D2 f(
x) es definida
Teorema 28 (Condicin suficiente de 2do orden) Si x
positiva, entonces x
es un punto mnimo local estricto de f().
Estas condiciones se pueden desprender de la expansin de Taylor de la funcin objetivo en
torno al punto x
de la siguiente forma:
f(x) = f(
x) + (x x
)f (
x) +

(x x
)D2 f (
x)(x x
)T
+ R2 (x)
2

Nos interesa determinar las condiciones que debe satisfacer x


para ser considerado punto mnimo
local. Sabemos que si analizamos puntos en la vecindad de x
, entonces R2 (x) es un orden de
magnitud ms pequeo que el trmino de segundo orden de esta expansin de Taylor por lo que
podemos ignorarlo para un anlisis de optimalidad local. Adicionalmente, para que un punto sea
considerado mnimo, el gradiente de la funcin en el punto debe ser nulo. As, para que f(
x) sea
menor a la funcin objetivo evaluada en cualquier x en la vecindad de x
, debe suceder que
f(
x) f(x) = f(
x) +

x)(x x
) T
(x x
)D2 f(
+ R2 (x).
2

Es decir, nos interesar que


(x x
)D2 f(
x)(x x
)T
(x)D2 f(
x)(x)T
=
0
2
2
lo cual equivale a que la matriz D2 f(
x) sea semidefinida positiva (i.e., xD2 f(
x)xT 0, x)
para que esto se cumpla y basta con que sea definida positiva (i.e., xD2 f(
x)xT > 0, x) para
que se cumpla estrictamente.

2.1. OPTIMIZACIN DE UNA FUNCIN SIN RESTRICCIONES

47

Comentario: Si la segunda derivada de f(x) es continua en x


, entonces si x
satisface la
condicin del teorema 28, entonces f(x) es estrictamente convexa en la vecindad de x
.
Es importante destacar que estas condiciones slo sirven para describir un punto mnimo local.
Para determinar la optimalidad global del problema es necesario comparar la funcin objetivo
evaluada en cada uno de los puntos ptimos locales y adicionalmente verificar que se cumplan las
condiciones de existencia de solucin ptima para el problema.
Ejemplo 4 Considere el problema
P ) min 2x1 x2 2x2 + x21 + 2x22

s.a. (x1 , x2 ) R2

Las condiciones de primer orden sern


f
x1
f
x2

= 2x2 + 2x1 = 0
= 2x1 2 + 4x2 = 0

lo que implica que f(x) = 0 x1 = 1, x2 = 1.

Veamos el Hessiano de la funcin objetivo en (1, 1) para comprobar que este punto sea mnimo
local:

2f
2f


x2

2
2
x1 x2
1
H=
=
.
2f
2f
2 4
x2 x1
x22

Como podemos ver, H es definida positiva en todo el dominio (no depende de x1 ni de x2 ), y


en particular en (1, 1), por lo tanto este punto corresponde a un punto mnimo local estricto de
P ), pero como adems f(x) es estrictamente convexa (el hessiano es definido positivo en todo el
dominio), podemos asegurar que este punto es mnimo global nico de P ).
Ejemplo 5 Considere la funcin f(x, y) = x3 + y (ver Figura 2.1). La matriz Hessiana est dada
por


6x
0
D2 f(x, y) =
0 0
Interesa identificar los determinantes de las matrices menores para tipificar esta matriz Hessiana.
En este caso observamos que 1 0 y que 2 = 0.
Existe alguna regin en que f(x, y) sea positiva definida?
N o.

48

CHAPTER 2. PROGRAMACIN NO LINEAL

150
100
50
5

0 00
2.5
-12.5

-25

12.5
-2.5

25
-5
x

-50
-100
z

-150

Figure 2.1: Ejemplo de convexidad


Existe alguna regin en que f(x, y) sea semidefinida positiva?
S,

x 0.

Existe alguna regin en que f(x, y) sea semidefinida negativa?


S,

x 0.

Es decir con esta informacin no se puede garantizar la existencia de un punto mnimo o mximo
local. De hecho se aprecia en la figura que esta funcin no posee mnimos ni mximos locales.
Ejemplo 6 Considere el problema
P)

min x4

En este caso,
f (x) = 4x3
f (x) = 12x2
En x
= 0, f (x) = 0 y f (x) = 0. Por lo tanto, cumple con la condicin necesaria de 2 orden.
De esta informacin no se podra inferir nada ms, pero como: f (x) = 12x2 0 x f(x)
es convexa, y como adems es diferenciable, entonces x
= 0 es un punto mnimo local de P ). En
efecto, si f (x) es convexa diferenciable, f(x) f (
x) + f (
x)(x x
) x R, con x
= 0 : f (x)

f(0) + f (0)(x 0). Por lo tanto, f(0) f (x) x R. As, x


= 0 es un punto mnimo global de P ),
4
de hecho es nico, pues x = 0 x > 0.

Algunas funciones son difciles de optimizar por la va de encontrar puntos de gradiente nulo
(incluso cuando stas son convexas). En estos casos, es necesario buscar mtodos alternativos para
identificar sus puntos extremos como los que se describen en la prxima seccin.

2.1. OPTIMIZACIN DE UNA FUNCIN SIN RESTRICCIONES

2.1.2

49

Mtodos de bsqueda de soluciones

Los mtodos que se presentan aqu son mtodos iterativos que comienzan de un punto factible y
a travs de pasos sucesivos se aproximan a un punto que satisfaga condiciones locales de optimalidad. Estos mtodos no garantizan optimalidad e incluso en algunos casos tampoco garantizan
convergencia. Muchas veces el desenlace del mtodo es altamente sensible al punto de partida
escogido.
Los dos mtodos que se presentan en esta seccin sirven para resolver problemas de optimizacin
no restringidos. Sin embargo, pueden generalizarse para incorporar restricciones. Estos mtodos
se usan para minimizar funciones cuyas races (aquellos puntos de derivada nula) son difciles de
detectar.
Mtodo de Newton
Este mtodo opera para funciones dos veces diferenciables. A pesar que puede usarse para funciones
de mltiples variables, en esta seccin se presenta el mtodo simple para funciones con slo una
variable. As, el problema es min(x) y por lo tanto, se asume f (x) y f (x) conocidas.
Sea xk un punto factible (todos los puntos son factibles en este caso). Se puede aproximar f(x)
entorno a xk , a travs de una expansin de Taylor de 2do grado. As, la funcin puede aproximarse
mediante la siguiente funcin cuadrtica (ver Figura 2.2):
1
q(x) = f(xk ) + f (xk )(x xk ) + f (xk )(x xk )2
2

f(x)
q(x)

xk xk+1

Figure 2.2: Mtodo de Newton


La funcin q(x) es una buena aproximacin de segundo grado para f(x) ya que:
1. q(xk ) = f(xk )
2. q (xk ) = f (xk )
3. q (xk ) = f (xk )

(2.1)

50

CHAPTER 2. PROGRAMACIN NO LINEAL

Si f (xk ) > 0 q(x) es convexa, y si f (xk ) < 0 q(x) es cncava. Ahora, en vez de min f(x),
se procede a resolver el problema min q(x) que resulta mucho ms sencillo (q(x) es una parbola).
La condicin de primer orden ser:
dq
= f (xk ) + f (xk )(x xk ) = 0
dx
de donde despejando nos queda la siguiente relacin:
xk+1 = xk

f (xk )
.
f (xk )

(2.2)

Este mtodo iterativo tpicamente se aproxima sucesivamente a un ptimo local. Sin embargo,
es posible que tarde infinitas iteraciones en alcanzarlo. Por esto, es importante definir algn criterio
para saber cundo parar de iterar. Existen diferentes criterios de parada, los ms comunes son los
siguientes: parar si (xk xk+1 ) 0, o si (f(xk ) f(xk+1 )) 0. Asimismo, se puede contemplar
una combinacin de estas exigencias.
El mtodo de Newton tambin se puede interpretar como un mtodo para identificar races de
una funcin (en este caso, las races de la derivada de la funcin a minimizar, es decir, de f (x))
slo conociendo las condiciones locales en cada punto; esto es f (xk ) y f (xk ). Grficamente, el
mtodo consiste en que en el espacio de la derivada de f(x) se trace una recta que pase por el punto
(xk , f (xk )) y que tenga pendiente f (xk ), es decir
y f (xk ) = (x xk )f(xk ).
Luego, el punto de interseccin de esta recta con el eje x determinar xk+1 (ver Figura 2.3), es
decir, igualando y = 0 obtenemos el resultado en (2.2).
f(x)

xk+2

xk+1

xk x

Figure 2.3: Mtodo de Newton en el espacio de la derivada

Observacin: Es importante notar que el mtodo busca puntos extremos sean estos mnimos
o mximos. Para distinguir si el proceso est buscando un mnimo o un mximo basta con revisar
el signo de la segunda derivada de la funcin en cada punto. Este deber ser positivo al buscar

2.1. OPTIMIZACIN DE UNA FUNCIN SIN RESTRICCIONES

51

mnimos y negativo al buscar mximos.


Observacin: Este mtodo no garantiza convergencia. Para algunas funciones diverge, mientras que otras no converge nunca. La Figura 2.4 presenta ejemplos grficos de divergencia y de no
convergencia.
f(x)
f(x)

xk+1

xk+1

xk+2

xk

xk

xk+2 x

Figure 2.4: Ejemplos de divergencia y de no convergencia


Ejemplo 7 Considere el problema min 2x3 21x2 + 60x 7.
Rpidamente podemos ver que la primera y segunda derivada corresponden a
f (x) = 6x2 42x + 60

f (x) = 12x 42

respectivamente. Por lo tanto, si x > 3, 5 f (x) > 0, luego, f(x) es estrictamente convexa. Y si
x < 3, 5 f (x) < 0, por lo que f(x) es estrictamente cncava. Por lo tanto, x = 3, 5 corresponde
a un punto de inflexin. Aplicando el mtodo de Newton, con x0 = 4 (cercano al punto crtico
x = 3, 5), sucede lo siguiente:
6x2k 42xk + 60
12xk 42
12x2k 42xk 6x2k + 42xk 60
6(2xk 7)
2
6xk 60
6(2xk 7)

xk+1 = xk
=
=
Por lo tanto,

xk+1 =

x2k 10
(2xk 7)

Iterando vemos que el mtodo converge a xk = 5,


k

xk

7, 2

5, 65

5, 099

52

CHAPTER 2. PROGRAMACIN NO LINEAL

que corresponde a un mnimo pues f(x) en el punto es positiva. Ahora, cambiando el punto inicial
a x0 = 3 y volvemos a aplicar el mtodo, vemos que ste converge a xk = 2,
k

xk

1, 8

1, 988

1, 999

que corresponde a un mximo pues f(x) en el punto es negativa.


3

Ejemplo 8 Considere el problema min x4

7x2
8

+ ln x sujeto a x > 0.

Derivando encontramos
f (x) =
f (x) =

3 2 7
1
x x+
4
4
x
3
7
1
x 2
2
4 x

( 34 x2 74 x + x1 )
. Es fcil ver que 34 x2 74 x + x1 = 0 puede escribirse como (x
( 32 x 74 x12 )
2)(x 1)(3x + 2) = 0, x = 0 expresin que muestra claramente las races de la funcin objetivo.
Iterando con el mtodo desde dos puntos iniciales diferentes obtenemos los siguientes resultados:
xk+1 = xk

x0 = 0, 5
x0 = 3

0, 7625
2, 3052

0, 9401
2, 0512

0, 9954
2, 0021.

El primero de stos corresponde a un mximo local mientras el segundo a un mnimo local.


Mtodo del Gradiente o de Cauchy
El mtodo del gradiente tambin sirve para resolver problemas de optimizacin multidimensionales
sin restricciones. Su algoritmo base es:
i) Escoger un punto inicial de Rn
ii) Determinar una direccin de movimiento
iii) Moverse en esa direccin de acuerdo a algn criterio determinando un nuevo punto.
iv) Verificar criterio de parada. Si no se satisface, volver a i).
1 <
Sea x0 nuestro punto de partida. Habr que escoger alguna direccin d1 tal que: f(1x0 + d)
1 sea lo ms pequeo posible? Sabemos que
f(1x0 ). Pero, cmo escoger d1 y de modo que f(1x0 +d)
f(1x0 ) corresponde a la direccin de mximo crecimiento de la funcin en el punto 1x0 . Por lo tanto,
la direccin a escoger en un problema de minimizacin es la opuesta, d1 = f(1x0 ) corresponde a
la direccin de mximo decrecimiento.
Luego, nuestros pasos a seguir son:
i) Tomar un punto conocido 1x0 .
ii) Escoger como direccin de movimiento al gradiente de la funcin en dicho punto, con signo
contrario.

2.1. OPTIMIZACIN DE UNA FUNCIN SIN RESTRICCIONES

53

iii) Determinar el mnimo relativo de f (1x) en esta direccin.


De esta forma 1xk+1 = 1xk f(1xk ). El siguiente paso consiste en encontrar el que minimiza
f(1xk+1 ), es decir,
min f(1xk f(1xk )),
0

lo que se reduce a un problema unidimensional (la nica variable en este problema es ) que puede
ser resuelto algebricamente o mediante el mtodo de Newton.
La velocidad de convergencia de este mtodo podra ser extremadamente lenta. Por ejemplo,
es muy lenta ante una funcin objetivo con curvas de nivel elpticas. En cambio, en curvas de nivel
circulares es inmediata (slo una iteracin). Este mtodo se asemeja a una bolita que cae por un
cerro y va tomando la mayor pendiente para descender. La diferencia es que la bolita cambia su
direccin continuamente, no as este mtodo que lo hace discretamente.

Ejemplo 9 Considere el problema


P)

min

(x1 ,x2 )R2

2x1 x2 2x2 + x21 + 2x22

Es fcil ver que P ) es estrictamente convexo, ya que


H=

2 2
2 4

es definida positiva, con lo que sabemos que cualquier punto de partida debiera llevarnos al ptimo
global. Apliquemos el mtodo de Cauchy a partir del punto inicial x0 = (0, 0). El gradiente de f(x)
es
f(x) = [2x2 + 2x1 , 2x1 2 + 4x2 ]
con lo que
x1 = (0, 0) (0, 2) = (0, 2).
As, el problema unidimensional a resolver para determinar cunto avanzar es:
min f(0, 2) = 4 + 82
Derivando con respecto a , y luego igualando a cero obtenemos = 14 . Por lo tanto, x1 = (0, 12 ).
Para la siguiente iteracin tenemos que x2 = (0, 12 ) (1, 0) = (, 12 ). Luego, resolviendo
min f(, 12 ) = 1 + 2 +

1
2

obtenemos = 12 , y as x2 = ( 12 , 12 ). Si seguimos iterando obtendremos


x3 = ( 12 , 34 ), x4 = ( 34 , 34 ), x5 = ( 34 , 78 ),

54

CHAPTER 2. PROGRAMACIN NO LINEAL

Figure 2.5:
lo cual lo podemos generalizar de la siguiente forma. Si k es par,
x =

y si k es impar,
xk =

22 1 22 1
,
k
k
22
22

k1
2

1 2
,
k1
2

k+1
2

k+1
2

(2.3)

(2.4)

y al tomar lmite a cualquiera de estas dos expresiones podemos ver que lim xk = (1, 1), y comk

probar que f (1, 1) = 0.

2.2
2.2.1

Optimizacin de una funcin con restricciones


Caso 1: Problema Unidimensional

Considere el problema de optimizacin


P)

Min f(x)
axb
xR

con f(x) continua y derivable. En este caso, el ptimo del problema no necesariamente debe
presentar un gradiente nulo, pues puede encontrarse en alguno de los bordes del dominio. Este
anlisis ser de mucha utilidad para determinar las condiciones de optimalidad en problemas ms
complejos. As, las condiciones de optimalidad deben modificarse para incorporar esta posibilidad.
Teorema 29 (Condicin Necesaria de 1er orden) Si x
[a, b] es punto mnimo local de P ) entonces:
i) Si x
= a f (
x) 0

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES


<0

55

>0

Figure 2.6:
ii) Si x
= b f (
x) 0
x) = 0
iii) Si a < x
< b f (
As, basta con una derivada no negativa en x = a o no positiva en x = b para que estos puntos
sean considerados candidatos a mnimo del problema. Por otra part, las condiciones para puntos
interiores del dominio permanecen intactas.
A diferencia del problema irrestricto, en los bordes es posible identificar condiciones suficientes
de optimalidad local con slo observar la primera derivada en esos puntos:
Teorema 30 (Condiciones suficientes de 1er orden)
i) Si x
= a y f (a) > 0 entonces x
= a es punto mnimo local estricto de P )

ii) Si x
= b y f (b) < 0 entonces x
= b es punto mnimo local estricto de P )
Observacin: Qu pasa si la primera derivada no es continua en el dominio?
Para que un punto sea mnimo en esas condiciones, habr que agregar a las condiciones necesarias de primer orden anteriores que:
(x) 0 y f (x) 0 y para las condiciones suficientes se tendra que
Si f (x) = f+ (x) = f
+

agregar que si f (x) = f+ (x) = f (x) < 0 y f+ (x) > 0.


Teorema 31 (Condicin Necesaria de 2 orden). Sea f(x) dos veces diferenciable, y x
punto
mnimo local de P ), entonces:

i) Si x
= a (f (a) 0) y (f (a) 0 si f (a) = 0)

ii) Si x
= b (f (b) 0) y (f (b) 0 si f (b) = 0)
iii) Si a < x
< b f (
x) = 0 y f (
x) 0
Teorema 32 (Condicin Suficiente de 2 orden). Sea x
[a, b], entonces:

i) Si x
= a y (f (a) > 0 (f (a) = 0 y f (a) > 0)), entonces x
= a es punto mnimo local
estricto de P ).
ii) Si x
= b y (f (b) < 0 (f (b) = 0 y f (b) > 0)), entonces x
= b es punto mnimo local
estricto de P ).

iii) Si a < x
< b y (f (
x) = 0 y f (
x) > 0), entonces x
es punto mnimo local estricto de P ).

56

CHAPTER 2. PROGRAMACIN NO LINEAL

f<0
f>0
f>0

f<0

f=0 f=0

i)

iii)

ii)

Figure 2.7:
Ejemplo 10
Min x2

P)
s.a.

x 1

De acuerdo a lo anterior, se debe proceder a analizar todos los puntos candidatos a ptimo. Estos
son aqullos de derivada cero y los bordes del intervalo. En este caso f (x) = 2x x
= 0. Esta

satisface la condicin suficiente de 2 orden, ya que f (0) = 0 y f (0) = 2 > 0.


Por lo tanto, x
= 0 es punto mnimo local estricto por teorema de condicin suficiente de 2
orden. En este caso, se puede argumentar que f (x) > 0 x D f(x) es estrictamente convexa
y por ende x
= 0 es un punto mnimo global nico de P ).
Ejemplo 11
P)

Max 2x3 + 3x2 + 12x + 6

s.a

0x8

El problema se puede reescribir como:


P )

s.a

Min 2x3 3x2 12x 6


0x8

Inicialmente se debe determinar si este problema admite solucin ptima. El problema satisface
las condiciones de Bolzano-Weierstrass por lo que podemos seguir adelante. A continuacin se
f
buscan los puntos de derivada nula:
= 6x2 6x 12 = 0
(x + 1)(x 2) = 0 y se obtiene:
x
x
1 = 1 (punto fuera de D), y x
2 = 2.
2f
La segunda derivada indica:
= 12x 6
f (2) = 18 > 0, por lo que se desprende
x2
que x2 es mnimo local del problema. Qu pasar en los bordes?

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES

57

f (0) = 12 y f (8) = 90 por lo que x


= 0 y x = 8 son mximos locales. Por lo tanto, x
= 2 es
el nico punto mnimo local estricto y por tanto el punto ptimo del problema.
Qu hubiera pasado si el dominio fuera 8 x 8? Los puntos crticos seran: x = 8; x =
1; x = 2; x = 8. De ellos x = 8 y x = 2 corresponden a mnimos locales. Para determinar el
mnimo global es necesario evaluar ambos en la funcin objetivo y escoger el menor, en este caso
x = 8 es el ptimo del nuevo problema.
Ejemplo 12
P)
s.a

M in

1x2

En este caso, f (x) = 21 x por lo que no existe un punto en el dominio (1 x 2) tal que la
derivada se anule. Por lo tanto, es necesario analizar los bordes:
f (1) = 12 > 0 x
= 1 es punto mnimo local estricto de P ).
1

f (2) = 2 2 > 0 x
= 2 es punto mximo local estricto de P ).
As, es claro que x
= 1 es el punto mnimo global del problema.
Esta respuesta podra obtenerse sin analizar las condiciones en los bordes del dominio pues,
como f (x) > 0 sobre [1, 2] , f(x) es estrictamente creciente sobre [1, 2] . As, el mnimo global debe
encontrarse en el lmite izquierdo del dominio, esto es x = 1.
Ejemplo 13
P)
s.a

Min x2 x3

x2 1

xR

1 x 1

Inicialmente se buscan puntos de derivada nula: f (x) = 2x 3x2 = 0


x = 0 x = 2
3
2
ambos en el dominio. Por lo tanto, los puntos crticos son: x = 1; x = 3 ; x = 0; x = 1. A
continuacin se analizan uno por uno:
f (1) = 1 < 0
Por teorema de condicin suficiente de 1er orden, x
= 1 es mximo
local estricto.
2
Por teorema de condicin suficiente de 2 orden, x
= 2
f ( 2
3 ) = 0; f ( 3 ) = 2 > 0
3 es
mnimo local estricto.
f (0) = 0; f (0) = 2 < 0
Por teorema de condicin suficiente de 2 orden, x
= 0 es
mximo local estricto.
f (1) = 5 < 0
Por teorema de condicin suficiente de 1er orden, x
= 1 es mnimo local
estricto.
Para identificar el mnimo global del problema se comparan los valores de la funcin objetivo
4
de los puntos mnimos locales, es decir, f( 2
= 1 es
3 ) = 27 y f(1) = 2. As, se concluye que x
mnimo global del problema.

58

CHAPTER 2. PROGRAMACIN NO LINEAL

2.2.2

Caso 2: Restricciones de igualdad

En esta seccin se vuelve a considerar un problema multivariable, pero esta vez sujeto a una o ms
restricciones de igualdad. En trminos generales, el problema se formula del siguiente modo:
P)

Min f(x)

s.a

hi (x) = 0

i = 1, ..., m

donde x = (x1 , ..., xn ) y m < n (qu sucede su m = n?). Para abordar este problema, inicialmente
se supondr que n = 2 y m = 1, es decir, el caso bidimensional con una restriccin. En este caso,
el problema P ) se puede expresar del siguiente modo:
P)

Min f (x1 , x2 )

s.a

h(x1 , x2 ) = a

donde se supondr que f y h tienen derivadas continuas de 2 orden. En este caso particular (n = 2,
m = 1), el problema puede representarse grficamente en R2 (ver figura). El dominio queda representado por los puntos (x1 , x2 ) que satisfacen h(x1 , x2 ) = a. Para representar la funcin objetivo
se requerira una tercera dimensin, sin embargo alternativamente se puede representar mediante
curvas de nivel que grafican en el plano R2 conjuntos continuos de puntos cuya funcin objetivo
arroja un idntico valor. As, si en la figura asociamos a cada uno de los anillos un determinado
valor constante sabremos aproximadamente la forma de la funcin objetivo (la precisin aumenta
en la medida que se dibujan ms curvas). Supongamos en este caso que los anillos ms pequeos
tienen asociado un valor de funcin objetivo cada vez ms pequeo. En ese caso sabremos que, de
continuar esa tendencia, existir un punto interior al anillo ms pequeo que corresponder a un
mnimo local (identificado con "*" en la figura).
f (x )

x2

h( x1, x 2) = a

*
f (x)

x1
Figure 2.8:
En el caso no-restringido, un punto mnimo deba cumplir con: f(x) = 0. Sin embargo, ahora

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES

59

las variables estn enlazadas entre ellas en una restriccin que las relaciona y las hace dependientes
una de la otra, por lo que en el punto ptimo no necesariamente se satisfacer esta condicin.
En el caso de la figura vemos que el mnimo de la funcin f(x1 , x2 ) no es factible en P ) ya
que no satisface la restriccin h(x1 , x2 ) = a. El punto ptimo al problema deber pertenecer a la
curva h(x1 , x2 ) = a y tambin a una curva de nivel (seguramente no dibujada) f(x1 , x2 ) = z .
Intuitivamente, vemos que en el ptimo de P ), la restriccin y la curva de nivel correspondiente al
punto ptimo en la funcin objetivo, son tangentes. Ms adelante comprobaremos que esta ser la
nueva condicin necesaria de primer orden para optimalidad de este problema.
Es posible imaginar que se pudiera expresar x2 en funcin de x1 a partir de la restriccin
h(x1 , x2 ) = a como x2 = r(x1 ). En ese caso, se puede reemplazar la restriccin en la funcin
objetivo redefinindola como: F (x1 ) = f(x1 , r(x1 )) y el problema quedar:
P)

Min F (x1 )
irrestricto

En la seccin 2.1, se ense cmo abordar problemas irrestrictos como el anterior: las condiciones
necesarias de 1er orden para un punto mnimo de P ) son:
F
f
f dr
=0
+
=0
x1
x1 x2 dx1
Pero x2 = r(x1 ) no es siempre identificable como funcin, por lo que para identificar
recurrir a la restriccin.

r
debemos
x1

h(x1 , x2 ) = a h(x1 , r(x1 )) = a.


Nos interesa determinar las condiciones de optimalidad de primer orden. Estas corresponden a
condiciones que se deben satisfacer en el punto de inters en relacin a las derivadas de primer orden.
El punto ptimo local debe ser mejor que los puntos en su vecindad que pertenezcan al dominio.
Es decir nos interesa analizar diferenciales de primer orden que garanticen la permanencia en el
dominio. En nuestro caso debe suceder que:
h(x1 + x1 , x2 + x2 ) = a
Podemos aproximar el lado izquierdo de esta expresin mediante una expansin de Taylor de
primer orden en torno a (x1 , x2 ):
h(x1 + x1 , x2 + x2 ) h(x1 , x2 ) + x1

h
h
+ x2
x1
x2

Reemplazando en la expresin anterior y recordando que h(x1 , x2 ) = a se obtiene:


h
h
x1 +
x2 = 0
x1
x2

60

CHAPTER 2. PROGRAMACIN NO LINEAL

que corresponde al resultado que hubiramos obtenido de diferenciar la restriccin original:


h
h
dx1 +
dx2 = 0
x1
x2
y despejando esta expresin nos queda
h

dx2
dr
1
= x
=
.
h
dx1
dx1
x
2

Reemplazando

dr
de esta expresin en XX se obtiene:
dx1
f

x1

f
x2
h
x2

h
=0
x1

Diremos que esta condicin junto a h(x1 , x2 ) = a son las condiciones necesarias de primer orden
para nuestro problema. Sin embargo, si observamos la siguiente obvia identidad:
f

x2
Si definimos =
modo:

f
h
x2 / x2 ,

f
x2
h
x2

h
=0
x2

podemos expresar las condiciones necesarias de primer orden del siguiente


f
h

= 0
xi
xi
h(x1 , x2 ) = a

i = 1, 2

Esto permite reescribir el problema original como el siguiente problema equivalente irrestricto con
una variable adicional ():
Min L(x1 , x2 , ) = f(x1 , x2 ) + (a h(x1 , x2 ))
y abordarlo con las herramientas presentadas en la seccin 2.1. Efectivamente, las condiciones de
primer orden para este problema son:
L
xi
L

f
h

=0
xi
xi

i = 1, 2

= a h(x1 , x2 ) = 0,

lo cual corresponde a las condiciones derivadas anteriormente.


h
= 0 en el punto de inters. En caso que x
=0y
2
dx1
 0, se obtiene alternativamente una expresin para
=
mediante un procedimiento anlogo
dx2

Note que este procedimiento asumi que


h
x1

h
x2

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES

61

comenzando con x1 = r(x2 ). Note que las condiciones de optimalidad seran las mismas. Sin
embargo, este mtodo no determina las condiciones de optimalidad local si el gradiente de la
h
h
restriccin en el punto de inters es nulo ( x
= x
= 0). A los puntos que cumplen con esta
1
2
condicin se les denomina puntos singulares y exigen un anlisis alternativo.
Este mtodo se conoce como Mtodo de Lagrange (1790 aprox.), donde L es la funcin
de Lagrange, y es el multiplicador de Lagrange. El mtodo resulta especialmente til cuando
resulta complejo expresar x2 en funcin de x1 (y viceversa) a partir de la restriccin del problema.
Adicionalmente, este desarrollo provee un muy buen punto de partida para determinar condiciones
de optimalidad para problemas ms complejos.
Ahora probaremos lo que se desprenda grficamente de la figura anterior, que (para n = 2,
m = 1) en un punto ptimo local, la derivada de la curva de nivel que pasa por el punto y la
derivada de la restriccin deben ser iguales. Habamos obtenido que:
f

x1

f
x2
h
x2

h
=0
x1

f
x1
f
x2

h
x1
h
x2

De la curva de nivel f(x1 , x2 ) = c (suponiendo c como el valor ptimo), tenemos que:


f
f
dx1 +
dx2 = 0
x1
x2
o bien,


f
dx2 
x1
= f
dx1 en curva de nivel
x

(2.5)

y anlogamente en la restriccin h(x1 , x2 ) = a tenemos que:


h
dx2 
x1
=

.
h
dx1 en la restriccin
x

(2.6)

Por lo tanto, de (2.5) y (2.6) vemos que en el punto ptimo ambas pendientes son iguales.


dx2 
dx2 
=
dx1 en curva de nivel
dx1 en la restriccin

Nota: Esta condicin se cumple para cada ptimo local (ver Figura 2.9).

Ejemplo 14 Debemos comprar un terreno de una hectrea rectangular que colinde con el ro y con
el camino (que forman un ngulo de 90o , ver figura). El problema es definir las dimensiones del
terreno, tal que su superficie til sea mxima. Por cada metro de lmite con el ro se pierden 3m2
de terreno til. Por cada metro de lmite con el camino se pierden 2m2 de terreno til. Por cada
metro de lmite con un vecino interior se pierde 12 m2 til.

62

CHAPTER 2. PROGRAMACIN NO LINEAL

x2

Optimos locales

x1

RIO

Figure 2.9: ptimos locales

CAMINO

Figure 2.10:
Un problema de optimizacin equivalente sera:
P)
s.a

Max (x 3, 5)(y 2, 5)
xy = 10000

el cual es equivalente a uno en que se minimiza (3, 5 x)(y 2, 5) y puede ser resuelto mediante el
mtodo de Lagrange. La funcin de Lagrange sera:
L = (3, 5 x)(y 2, 5) + (10000 xy)
y las condiciones de primer orden son:
L
x
L
y
L

= 2, 5 y y = 0
= 3, 5 x x = 0

2, 5 y
y
3, 5 x
=
x

= 10000 xy = 0.

Reemplazando y resolviendo el sistema de ecuaciones, obtenemos la solucin x = 118, 32; y = 84, 5;

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES

63

= 0, 97. Por lo tanto, el valor ptimo es v = 9.415, 24 m2 . Observar que esta solucin
corresponde al problema equivalente de minimizacin al de maximizacin del terreno til.

Nota: El sistema de ecuaciones tambin admite la solucin x = 118, 32; y = 84, 5; pero sta
se descarta ya que el problema no admite dimensiones negativas de terreno.

Caso general con restricciones de igualdad


A continuacin veremos las condiciones necesarias de optimalidad para un problema multidimensional (n variables) con muchas restricciones de igualdad (m). Consideremos el siguiente problema:
P)

Min f(x)

s.a

hj (x) = aj

x = (x1 , ..., xn )
j = 1, ..., m

con m n

Si hacemos un anlisis similar al caso bidimensional representando m variables en funcin de las


otras (n m), se puede demostrar el siguiente teorema:
Teorema 33 (Lagrange) Considere el problema P ) en que todas las funciones involucradas son
diferenciables. La condicin necesaria para que el punto factible regular x
sea un mnimo local de
P ), es que existan m escalares j (j = 1, ..., m), denominados multiplicadores de Lagrange, tales
que:
m

f(
x) +
j hj (
x) = 0
j=1

Nota: El teorema de Lagrange indica que el gradiente de la funcin objetivo evaluado en x


, es
decir, f(
x), se puede expresar como combinacin lineal de los gradientes de las restricciones de
P ) evaluados en x
, es decir, {hj (
x)}jJ .
Es decir las condiciones necesarias de primer orden para un ptimo son las siguientes:
m

f (x)  hj (x)

j
=0
xi
xi

i = 1, ..., n

j=1

aj hj (x) = 0

j = 1, ..., m

Es decir, si un punto cumple con satisfacer estas (n + m) restricciones, estamos frente a un punto
candidato a mnimo o a mximo local. Es importante recordar que este anlisis de primer orden es
incapaz de distinguir entre un mnimo y un mximo local.
As definiremos una funcin:
L(x1 , ..., xn , 1 , ..., m ) = f (x1 , ..., xn ) +

m

j=1

j [aj hj (x1 , ..., xn )]

64

CHAPTER 2. PROGRAMACIN NO LINEAL

tal que las condiciones necesarias de 1er orden de nuestro problema P ) corresponden a las condiciones necesarias de primer orden del problema no-restringido:
Min L(x1 , ..., xn , 1 , ..., m )
las cuales son:
m

 hj
f

j
=0
xi
xi

L
xi

L
j

= aj hj (x1 , ..., xn ) = 0

i = 1, ..., n

j=1

j = 1, ..., m

Sin embargo, al igual que en el caso bidimensional, es importante tener presente que el mtodo de
Lagrange slo identifica puntos regulares. Los puntos que no cumplan esta propiedad (singulares)
deben ser analizados separadamente para determinar si son ptimos al problema.
Definicin 13 (Punto regular) Un punto es regular cuando el jacobiano de las restricciones (2.7),
evaluado en el punto, es de rango mximo m, es decir, las m filas deben ser linealmente independientes (recordar que n > m).

J(x) =

h1
x1
..
.
hm
x1

...
..

...

h1
xn
..
.
hm
xn

Ejemplo 15 Consideremos el siguiente problema:

(2.7)

P ) Min x
s.a x3 + y 2 = 0
(x, y) R2

Las condiciones de primer orden del Lagrangeano L(x, y, ) = x + (x3 + y 2 ) son:


L
x
L
y
L

= 1 3x2 = 0
= 2y = 0
= x3 + y2 = 0

de donde se observa que este sistema no tiene solucin. Sin embargo, es fcil ver que la solucin
ptima es (0, 0). Pero, es x
= (0, 0) un punto
 regular? Observando el Jacobiano de la restriccin
2
h(x) : h(
x) = 3x 2y
= 0 0 vemos que ste es nulo, por lo tanto x
es solucin
(0,0)

ptima no regular, por esta razn las condiciones necesarias de primer orden no lo detectan.

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES

65

Observacin: El mtodo de Lagrange detecta todos los puntos ptimos locales regulares, pero
no necesariamente detecta los singulares.
Condiciones de 2 orden:
Antes de describir las condiciones necesarias y suficientes de segundo orden para que un punto
que, satisfaciendo las condiciones necesarias de primer orden, sea mnimo local, es necesario entender
que estas condiciones poco tienen que ver con la convexidad de la funcin objetivo. Es decir, que la
funcin objetivo sea convexa no indica que un punto que cumpla con las condiciones necesarias de
primer orden sea efectivamente un mnimo local. Como ejemplo considere el problema bidimensional
de minimizar una funcin objetivo paraboidal sujeto a que el punto deba satisfacer una curva que
describe una elipse. Esto se ilustra en la figura YY1 . En ella se observa que son dos los puntos que
satisfacen la condicin necesaria de primer orden, pero slo uno de ellos corresponde a un mnimo.
Volviendo al caso ms general, para que x
sea mnimo local debe suceder que: f(
x+x) f(
x),
para todo (
x + x) factible (x pequeo), esto es para todo (
x + x) que satisfaga todas las
x + x) = aj ,
j = 1, ..., m.
restricciones: hj (
La funcin que interesa minimizar es L(x, ) = f(x) + (a h(x)). Es decir buscamos x
tal
que para todo x
+ x factible, L(
x + x, ) L(
x, ) = f(
x + x) f(
x) 0 (para que x
sea
mnimo).
Obtendremos las condiciones de segundo orden por medio de expandir L en serie de Taylor en
segundo grado en torno al punto (
x, ). Recordando que este punto satisface las condiciones de 1er
orden, tendremos que:
(
x + x x
)L(x , ) (x)D2 L(x , )(x)T
x, )
+
+ 0(2 ) L(
1!
2!
1 2
2 L(
x, ) T
x
x + 0(2 )
2
x2

L(
x + x, ) L(
x, ) = L(
x, ) +
=
2

)
x,)
T
Considerando que lim0 20(
es un ptimo local entonces debe cumplirse que x L(
||x|| = 0, si x
x2 x
0. Bastara con que el Hessiano del Lagrangeano sea positivo semi definido (o positivo definido) en
el punto para que el punto cumpla las condiciones necesarias (suficientes) de segundo orden para
ser considerado mnimo local. Sin embargo las direcciones factibles de movimiento 1x no son arbitrarias pues no pueden salirse del dominio. As, es posible que el punto x
sea un ptimo local sin
que el Hessiano del Lagrangeano sea positivo semi definido pues restringiendo los 1x a direcciones
2
x,)
factibles s se cumpla la condicin x L(
xT 0. Es decir interesa determinar cules son esas
x2
direcciones factibles para 1x de modo de evaluar la condicin de optimalidad de segundo grado.
Mediante un desarrollo idntico al realizado en la seccin 2.2 se obtienen las condiciones que se
deben satisfacer:
n

hj (
x)
xi = 0
j = 1, ..., m
xi
i=1

Agregar Figura

66

CHAPTER 2. PROGRAMACIN NO LINEAL

As, la condicin necesaria de 2 orden ser que el Hessiano del Lagrangeano debe ser positivo
semidefinido en el subespacio definido por las restricciones.
Anlogamente, la condicin suficiente de 2 orden, es que el Hessiano del Lagrangeano sea
positivo definido en dicho subespacio. En este caso, el punto x
ser un mnimo local estricto de P ).
Ejemplo 16
Min f(x) = x21 + x22 + x23
s.a

h1 (x) = x1 + x2 + 3x3 2 = 0
h2 (x) = 5x1 + 2x2 + x3 5 = 0

Lo primero que se debe hacer es demostrar la existencia de solucin para este problema. Este
problema evidentemente satisface las condiciones del teorema de existencia por lo que tenemos
garanta de que el problema tendr solucin.
L = x21 + x22 + x23 + 1 (2 x1 x2 3x3 ) + 2 (5 5x1 2x2 x3 )

= 2x1 1 52 = 0

x1

2x1 2x2 32 = 0
L
5x1 14x2 + 3x3 = 0
= 2x2 1 22 = 0

x2
6x2 2x3 52 = 0

= 2x3 31 2 = 0
x3

x1 + x2 + 3x3 = 2
3x + 14x = 5

2
3
8
y
x3 = 13
x2 = 23
5x1 + 2x2 + x3 = 5
46

16x2 2x3 = 5
5x1 14x2 + 3x3 = 0
2
7
x1 = 37
y
1 = 23
, 2 = 23
46

8 13
Es el punto ( 37
46 , 23 , 46 ) un mnimo? Para esto
esto es

2 0

H = 0 2
0 0

basta observar el Hessiano del Lagrangeano,

0 .
2

Dado que el Hessiano del Lagrangeano (que en este caso coincide con el Hessiano de la funcin
objetivo pues todas las restricciones son lineales2 ) es positivo definido en todo el dominio y en
8 13
particular en el punto ( 37
46 , 23 , 46 ), este punto es un mnimo nico y global.
Ejemplo 17
Min x21 + x22
s.a. (x1 1)2 + (x2 2)2 = 45
2

Explicar mejor este parentesis

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES

67

Lo primero que se debe hacer es demostrar la existencia de solucin para este problema. Este
problema evidentemente satisface las condiciones del teorema de Bolzano-Weierstrass por lo que
tenemos garantia de que el problema tendr solucin.
El lagrangeano queda:
L = x21 + x22 + (45 (x1 1)2 (x2 2)2 )
De las condiciones de primer orden podemos obtener:
L
x1
L
x2
x1
x1 1

x1
; x1 = 1 (x1 = 1 no satisface la condicin)
x1 1
x2
=
; x2 =
 2 (x2 = 2 no satisface la condicin)
x2 2

= 2x1 2(x1 1) = 0

= 2x2 2(x2 2) = 0
=

x2
2x1 = x2
x2 2

Utilizando esta condicin en conjunto con la restriccin tenemos que:


(x1 1)2 + (2x1 2)2 = 45

x21 2x1 + 1 + 4x21 8x1 + 4 = 45


5x21 10x1 40 = 0

Por lo tanto las soluciones posibles son:


x1 = 4

x2 = 8

x1 = 2

x2 = 4

4
3

2
3

Estos dos puntos son los nicos puntos que satisfacen las condiciones necesarias de primer orden.
Esto significa que, de no existir puntos singulares al problema, el punto ptimo al problema ser
uno de ellos. A continuacin revisaremos las condiciones de segundo orden. La matriz Hessiana es:
H=

2 2
0
0
2 2

Para caracterizar esta matriz debemos reemplazar los valores de :




2
0
3
H(4, 8, 43 ) =
Definida Negativa, por lo tanto, x
= (4, 8) es un mximo local
0 2
3
estricto, f(
x) = 80.


2
0
H(2, 4, 23 ) = 3 2
Definida positiva, por lo tanto, x
= (2, 4) es un mnimo local
0 3
estricto, f(
x) = 20.
Existen puntos singulares en el dominio?

68

CHAPTER 2. PROGRAMACIN NO LINEAL






h
h
El nico punto no regular (que hace
= 2(x1 1) 2(x2 2)
x1 x2
nulo el jacobiano) es (1, 2) pero este punto no es factible. As, el punto extremo identificado es
mnimo global del problema.
J(
x) =

Ejemplo 18
Min x1 x2 x2 x3 x3 x1
s.a. x1 + x2 + x3 = 3
(x1 , x2 , x3 ) R3
Lo primero que se debe hacer es demostrar la existencia de solucin para este problema. Este
problema satisface las condiciones del teorema de existencia de soluciones ptimas por lo que
tenemos garanta de que el problema tendr solucin. La funcin objetivo es continua, el dominio es
cerrado y no vaco (el punto (1, 1, 1) es factible). Para mostrar que f (x) + si ||x|| +, x
D se necesita que al menos una de las variables tienda a infinito. Para comenzar asignemos a una
de las variables, digamos x1 , el valor M. En ese caso x2 + x3 = 3 M. Y la funcin objetivo
queda M(M 3) x3 x2 . Ahora bien, si M +, entonces es necesario determinar qu sucede
con la funcin objetivo. Es fcil demostrar que el mximo valor que toman x3 x2 restringidos
a x2 + x3 = 3 M es x2 = x3 = 3M
2 . Es decir, la funcin objetivo tender como mnimo a
(M 3)2
M(M 3)
.Y esta funcin claramente tiende a infinito cuando M tiende a ello.
4
Slo ahora podemos preocuparnos de la bsqueda de ptimos locales.

L = x1 x2 x2 x3 x3 x1 + (3 x1 x2 x3 )

= x2 x3 = 0

x1

L
= x1 x3 = 0 x1 = x2 = x3 = 1; = 2

x2

= x2 x1 = 0
x3
Dado que el dominio es lineal, no existen puntos singulares en el dominio. Ahora, cmo saber
si x es un punto mnimo o no? Como hemos demostrado la existencia de una solucin ptima, este
punto debe corresponder a ese mnimo. A pesar de esta certidumbre, proseguiremos identificando
el Hessiano del Lagrangeano:

0 1 1

H = 1 0 1
1 1 0

pero este Hessiano no es ni positivo semidefinido ni negativo semidefinido. As, es necesario analizar
si limitando las direcciones de movimiento desde el punto (1, 1, 1) slo a aqullas que satisfagan la
restriccin, es posible discernir si este punto corresponde a un mnimo o mximo local del problema.
El punto (x1 + x1 , x2 + x2 , x3 + x3 ) debe satisfacer la restriccin por lo que debe cumplirse:

x1 + x1 + x2 + x2 + x3 + x3 = 3, y como x1 + x2 + x3 = 3, el vector
x debe satisfacer

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES

69

x1 + x2 + x3 = 0. As, para que el punto (1, 1, 1) sea mnimo local debe cumplirse que


x1 x2 x3

0 1 1
x1

1 0 1 x2 = 2(x1 x2 + x2 x3 + x3 x1 ) 0
1 1 0
x3

para todo
x que satisfaga x1 + x2 + x3 = 0.

Despejando x1 = x2 x3 el lado izquierdo queda 2(x22 +x2 x3 +x23 ). Esta expresin


es necesariamente positiva para todo (x2 , x3 ) = (0, 0). Esto se puede mostrar de dos formas:
2(x22 + x2 x3 + x23 ) = (x2 + x3 )2 + x22 + x23 . Y la suma de elementos positivos no
puede ms que ser positivo. Alternativamente se puede representar matricialmente la expresin del
siguiente modo:
2(x22

+ x2 x3 + x23 )

= [x2 x3 ]

2 1
1 2



x2
x3

Es fcil ver que este valor es siempre positivo (x2 , x3 ) = (0, 0) pues la matriz involucrada en la
operacin es positiva definida. Por lo tanto, x = (1, 1, 1) es un punto mnimo global del problema.

Interpretacin de los multiplicadores j


Proveeremos una interpretacin para los multiplicadores de Lagrange j comenzando del caso ms
simple, esto es (n = 2, m = 1). En este caso las condiciones de primer orden indicaban:
f
x1
f
x2

h
x
1
h
x
2

= 0
= 0

a h(x1 , x2 ) = 0
podemos expresar la solucin ptima (x , ) en funcin del parmetro a, como x1 (a), x1 (a), (a).
As, el Lagrangeano sera:
L(a) = f (x1 (a), x2 (a)) + (a)(a h(x1 (a), x2 (a))).
Luego, derivando con respecto al parmetro a, tenemos:
L
=
a



f
h

x1
x1

dx1
+
da

f
h

x2
x2

dx2
d
+ (a h(x1 , x2 ))
+ (a)
da
da

,
(x,)=(x (a), (a))

Sin embargo, los tres primeros trminos del lado derecho de esta expresin evaluados en un punto
mnimo local son nulos (por condiciones de optimalidad). As,


L 
f 
=
= .
a optimo
a optimo

70

CHAPTER 2. PROGRAMACIN NO LINEAL

En resumen, es la sensibilidad del valor ptimo (


v) frente a pequeas variaciones en el
parmetro a. Si el parmetro a es modificado en a = a + a, entonces el valor ptimo puede
v v + a. El multiplicador puede tomar valores negativos o
aproximarse como v = v + 
positivos, de hecho basta multiplicar la restriccin por (1) para que el valor del multiplicador
cambie de signo (sin haber modificado el conjunto factible). Esto se debe a que al aumentar en una
unidad el lado derecho de la restriccin, es posible que la funcin objetivo aumente o disminuya
pues se est modificando completamente los puntos del dominio. Para el caso general (n, m), la
interpretacin de los multiplicadores es absolutamente anloga, es decir, si x
es el punto mnimo
local,
f(
x)
= j ,
aj
es decir cada multiplicador j se interpreta como el impacto en el valor ptimo de un aumento
en una unidad del lado derecho de la restriccin respectiva. Esto puede ser muy til al trabajar
con un problema real y complejo, pues permite obtener rpidamente una sensibilidad respecto al
impacto sobre el valor ptimo de la disponibilidad de recursos de cada tipo que limitan este valor.
Por ejemplo, conocer los multiplicadores de lagrange (o precios sombra) asociados a restricciones
de capacidad total de una mquina, de insumos disponibles, o de mano de obra contratada permite
identificar en cul de estos tres tems resulta ms conveniente invertir. Es importante destacar que
esta prediccin se desprende de una aproximacin lineal del lagrangeano en torno al parmetro a.
As, slo tiene validez para modificaciones leves de este valor.
Volviendo al ejemplo anterior del terreno a la orilla del ro, cunto cambiar la funcin objetivo
si ahora hubiese que comprar 10.010 m2 en vez de 10.000 m2 ?
Como 
v = a, la funcin objetivo cambia 
v (0, 97)(10) = 9, 7. Volviendo al problema
original de maximizacin, la funcin objetivo que representa los m2 tiles aumentar 9, 7 m2 .

2.2.3

Caso 3: Restricciones de desigualdad

Para comenzar constatemos que todo problema de programacin matemtica continua (con funciones diferenciables) puede formularse bajo un formato estndar en que todas las restricciones son
del tipo menor o igual y todas las variables deben ser no negativas. Es decir cualquier problema se
puede formular del siguiente modo:

P ) Min f (x1 , ..., xn )


s.a

gj (x1 , ..., xn ) bj

j = 1, ..., m

x1 0, ..., xn 0
A continuacin se describen algunas transformaciones necesarias para llevar cualquier problema
a este formato:
Cada restriccin del tipo g(x) = b, puede transformarse en dos desigualdades del siguiente

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES

71

modo:
g(x) b
g(x) b
Cada restriccin del tipo g(x) b, se puede reescribir acorde al formato estndar como:
g(x) b
Si el modelo exige que una variable sea no positiva, basta redefinir una nueva variable como
el negativo de la anterior y reemplazarla en el problema. Esta nueva variable deber cumplir
la restriccin de no negatividad.
Si el modelo deja una variable libre (esto es que no est restringida a tomar valores nonegativos) se puede realizar las siguientes modificaciones que permitan modelar el problema
bajo la estructura indicada: reemplazar x = x x en el modelo y exigir que ambas variables
nuevas (x y x ) sean no-negativas. Este cambio permite ajustarse a la estructura que exige
que todas las variables sean no-negativas y no elimina soluciones. Note que cualquier valor
positivo de x se representa por un par (x , x ) tal que x > x . Anlogamente, cualquier valor
negativo de x se representa por un par (x , x ) tal que x < x . Asimismo, resulta claro que
cualquier punto factible en el modelo original (en que supongamos x = x0 ) puede representarse
por una infinidad de puntos en el modelo nuevo puesto que habr infinitas combinaciones de
(x , x ) tal que x x = x0 .
En contraposicin, es importante notar que toda restriccin g(x) b, puede convertirse en
una restriccin de igualdad introduciendo una nueva variable de holgura h no-negativa que
represente la diferencia entre el lado derecho y el izquierdo de la desigualdad. De este modo,
la restriccin quedara g(x) + h = b, con h 0. Asimismo cada restriccin del tipo g(x) b
puede convertirse en una restriccin de igualdad introduciendo una variable de exceso e no
negativa. De este modo, la restriccin quedara g(x) e = b, con e 0. Si h = 0 (o e = 0)
para algn vector x, se dice que la restriccin correspondiente est activa en el punto x.
Si h = 0(o e = 0) la restriccin est inactiva en el punto x.

Anlisis de optimalidad :
Al igual que en el caso unidimensional analizado en la seccin 2.2.1, las condiciones de optimalidad difieren si se trata de un punto en el borde del dominio (en que al menos una restriccin est
activa) o si se trata de un punto interior (en que ninguna restriccin est activa). Si supiramos
cules son las restricciones activas en el punto, bastara con expresarlas como igualdades y, eliminando el resto (inactivas), emplear el mtodo de Lagrange. Sin embargo tpicamente se desconoce
cules restricciones estarn activas en el punto ptimo del problema.

72

CHAPTER 2. PROGRAMACIN NO LINEAL

Para comenzar el anlisis supongamos un problema unidimensional que cuenta con una sola
restriccin: no negatividad en la variable. Del anlisis de la seccin 2.2.1, observamos que si
la derivada es estrictamente positiva (negativa) en x = 0 entonces este punto es necesariamente
un mnimo (mximo) local. Sin embargo, si la derivada es nula en x = 0 es necesario analizar
su segunda derivada para caracterizar el punto. Por otra parte, la derivada en cualquier punto
x > 0 que sea mximo o mnimo local debe ser nula. As, se desprenden las siguientes condiciones
necesarias de primer orden para caracterizar un punto mnimo x
:
f (
x) = 0 si x
>0
x) 0 si x
= 0,
f (
lo que matemticamente puede expresarse del siguiente modo (note que ambas condiciones son
satisfechas por un idntico conjunto de puntos):
f (
x) 0

x
f (
x) = 0.
Estas condiciones pueden extenderse directamente al caso de un problema multidimensional sin
restricciones, salvo que todas sus variables deben ser no negativas. En ese caso las condiciones
quedan:
f (
x)
0
xi
f (
x)
x
i = 0
xi

i
i

Al igual que en el caso unidimensional, estas condiciones son necesarias para optimalidad, pero
no son suficientes. Si fx(xi ) > 0 el punto x
es un mnimo local, pero si fx(xi ) = 0 podra tratarse
tanto de un mximo como de un mnimo local. Es importante destacar que estas condiciones de
optimalidad rigen slo para aquellas variables del problema que estn restringidas a tomar valores
no negativos. Si algunas de las variables no estn sujetas a estas restricciones, para esas variables
las condiciones de optimalidad son simplemente fx(xi ) = 0.
Consideremos ahora un problema un poco ms general en que se agregan algunas restricciones
de igualdad al problema. Es decir:
P ) M in f(x)
s.a

gj (x) = bj j
xi 0

Se podra definir un Lagrangeano que incorpore las restricciones complejas dejando slo las

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES

73

restricciones de no-negatividad en el dominio:


Min L(x, ) = f(x) +

m

j=1

s.a.

xi 0

j (gj (x) bj )

Note que hemos optado por invertir el orden en que se incorpora cada restriccin al Lagrangeano
por motivos que ms adelante sern aparentes. Por lo pronto esto tiene como nico impacto invertir
la interpretacin que se le da al multiplicador j : ahora corresponde a cunto cae la funcin objetivo
si bj aumenta en una unidad.
Note tambin que en este nuevo problema en que se minimiza el Lagrangeano slo algunas de
sus variables (i.e., los xi ) estn restringidas a tomar valores no negativos (los j estn libres). As,
debemos considerar las condiciones apropiadas de optimalidad en cada caso. Estas seran:
L
xi
L
xi
xi
L
j

 gj
f
+
j
0
xi
xi
j=1

i = 1, ..., n

 gj
f
= 0 xi (
+
j
)=0
xi
xi
j=1

= 0 gj (x) bj = 0

i = 1, ..., n

j = 1, ..., m

Adems se debe cumplir con las restricciones de no negatividad que en este caso son:
xi 0

i = 1, ..., n.

Estas cuatro familias de condiciones describen las condiciones necesarias de primer orden para
optimalidad de puntos regulares en este caso. Esto nos deja a un paso de identificar las condiciones
generales para un problema no lineal de programacin matemtica continua.
Considere el siguiente problema:
P ) Min f(x)
s.a gj (x) bj
xi 0

j = 1, ..., m
i = 1, ..., n

Para determinar las condiciones necesarias de primer orden para optimalidad en este caso general, consideraremos variables auxiliares de holgura yj (no negativas) para cada una de las m

74

CHAPTER 2. PROGRAMACIN NO LINEAL

restricciones que nos permitirn reformular el problema del siguiente modo equivalente:
P) M in f(x)

s.a gj (x) + yj = bj

j = 1, ..., m

xi 0,

i = 1, ..., n

yj 0

j = 1, ..., m

Este problema es similar al explicado en los prrafos previos por lo que se puede identificar las
condiciones que deber satisfacer todo mnimo local a partir del siguiente problema:
Min L(x, y, ) = f(x) +

m

j=1

s.a.

xi 0

yj 0

j (gj (x) + yj bj )

Las condiciones son:

xi

 gj
f
+
j
0
xi
xi

L
xi

L
xi

= xi (

L
yj
L
yj
yj
L
j
xi

i = 1, ..., n

j=1

 gj
f
+
j
)=0
xi
xi
j=1

i = 1, ..., n

= j 0

j = 1, ..., m

= yj j = 0

j = 1, ..., m

= gj (x) + yj bj = 0

(2.8)

j = 1, ..., m

i = 1, ..., n

yj 0

j = 1, ..., m

Ahora, de la quinta familia de condiciones, se puede eliminar la variable yj de la formulacin


reemplazando yj = bj gj (x). De este modo las familias de condiciones cuarta y sptima quedan:
[bj gj (x)]j = 0

j = 1, ..., m

bj gj (x) 0

j = 1, ..., m

(2.9)

Con lo anterior se puede plantear las condiciones generales de optimalidad desarrolladas por
Karush (1939) y Kuhn y Tucker (1951).3
3

Estas condiciones fueron conocidas por ms de una dcada como las condiciones de Kuhn-Tucker. Esto debido
a que en 1951 mientras Harold W. Kuhn desarrollaba su tesis doctoral en Princeton bajo la supervisin del profesor

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES

75

Proposicin 34 (Condiciones de Karush-Kuhn-Tucker (KKT)) Supngase que f(x), gj (x)


con j = 1, ..., m, son funciones diferenciables que satisfacen ciertas condiciones de regularidad.
Entonces, x
puede ser una solucin ptima para el problema de programacin no-lineal, slo si
existen m nmeros 1 , ..., m que satisfagan todas las condiciones (necesarias) siguientes:
m

x)
f(
x)  gj (
+
j
xi
xi
j=1

x
i (

f(
x)
+
xi

m

j=1

i = 1, ..., n

gj (
x)
) = 0
xi

i = 1, ..., n

gj (
x) bj 0

j = 1, ..., m

j (gj (
x) bj ) = 0

j = 1, ..., m

x
i 0

i = 1, .., n

j 0

j = 1, ..., m.

Es importante notar que el cumplimiento de estas condiciones no garantiza que la solucin sea ptima (todo mnimo local las satisface). Se necesitan ciertas suposiciones de convexidad adicionales
para obtener esta garanta.
En este caso los multiplicadores j nos indican cunto baja la funcin objetivo si bj aumenta en
una unidad. Como la funcin objetivo debe ser minimizada, esto indica que slo se puede mejorar
a travs de aumentar bj . Esto es natural puesto que aumentar bj implica expandir el dominio, esto
es expandir el espectro de posibilidades de donde escoger.
La cuarta condicin se denomina complementariedad de las holguras, y exige que si la restriccin
x) bj = 0), su holgura sea cero y su multiplicador asociado (j )
de desigualdad est activa (gj (
tome cualquier valor no negativo. Indicando que si se expande el dominio relajando esa restriccin,
la solucin ptima cambiara y la funcin objetivo seguramente mejorara. Por otra parte, si la
restriccin est inactiva (gj (
x) bj < 0), la holgura es estrictamente positiva y es el multiplicador
asociado quien toma un valor nulo. Esto indica que si se relaja esta restriccin no se modificar la
optimalidad local del punto x
identificado.
Es interesante recordar que en el caso de problemas de optimizacin slo con restricciones
de igualdad, la condicin necesaria de primer orden puede interpretarse de la siguiente manera:
el gradiente de la funcin objetivo en el punto ptimo es igual a una combinacin lineal de los
gradientes de las restricciones en ese mismo punto. En el caso de problemas con restricciones de
desigualdad, esto an es cierto, pero en este caso el gradiente de la funcin objetivo en el punto
ptimo debe equivaler a una combinacin lineal de los gradientes de las restricciones activas (j > 0)
Albert W. Tucker, descubri estas condiciones de optimalidad. En la dcada de los 60s, alguien encontr en una
biblioteca una tesis de master desarrollada en la Universidad de Chicago en 1939 por William Karush, donde estableca
exactamente las mismas condiciones. Este trabajo nunca fue publicado debido a la poca importancia que le dio su
profesor gua en ese minuto. Apenas esto se supo, Kuhn y Tucker antepusieron a Karush en el nombre de estas
condiciones y de ah en adelante de habla de las condiciones KKT.

76

CHAPTER 2. PROGRAMACIN NO LINEAL

en el punto. Por ejemplo, en un punto interior al dominio todos los j son nulos (las restricciones
estn inactivas) y por tanto la condicin de optimalidad se traduce en que el gradiente de la funcin
objetivo sea nulo en el punto.
Mencionamos que si el problema original incorpora restricciones de igualdad o variables libres,
el problema puede ser transformado en uno equivalente en que slo haya restricciones de menor
o igual y todas las variables deban tomar valores no negativos. Sin embargo esta transformacin
conlleva un costo ya que se expande el nmero de restricciones o de variables en el problema.
Alternativamente se puede modificar levemente las condiciones de optimalidad de KKT para tratar
directamente estas caractersticas del problema. Consideremos el siguiente problema:
P ) Min f(x)
s.a gj (x) bj
gj (x) = bj
xi 0

xi libre

j = 1, ..., p
j = p + 1, ..., m
i = 1, ..., q

i = q + 1, ..., n

En este caso se ha considerado un conjunto de restricciones de igualdad y algunas variables


libres. En ese caso es fcil demostrar a partir del procedimiento desarrollado en este texto que las
condiciones de optimalidad son las siguientes:
m

f(
x)  gj (
x)
+
j
xi
xi

i = 1, ..., q

gj (
x)
f (
x)
+
j
) = 0
xi
xi
j=1

i = 1, ..., q

j=1

x
i (

m


f(
x)  gj (
x)
+
j
xi
xi

= 0

j=1

i = q + 1, ..., n

gj (
x) bj 0

j = 1, ..., p

j (gj (
x) bj ) = 0

j = 1, ..., p

gj (
x) bj = 0

j = p + 1, ..., m

x
i 0

i = 1, .., q

j 0

j = 1, ..., p.

Es decir slo se agregan dos familias de restricciones asociadas a los cambios efectuados: para las
variables libres slo se exige que la derivada parcial del Lagrangeano con respecto a esas variables
se a nulo y se exige que se cumplan las restricciones de igualdad. Note que los multiplicadores
asociados a estas restricciones quedan libres.
Las condiciones de optimalidad de Karush-Kuhn-Tucker son condiciones necesarias y slo garantizaran optimalidad global si se cumplen adicionalmente otras condiciones de convexidad. Con-

2.2. OPTIMIZACIN DE UNA FUNCIN CON RESTRICCIONES

77

sidere el siguiente corolario:


Corolario 35 Supngase que f (x) es una funcin convexa y diferenciable, y que g1 (x), g2 (x), ..., gm (x)
tambin lo son en donde todas estas funciones satisfacen las condiciones de regularidad. Entonces
x
= (
x1 , ..., x
n ) es una solucin ptima si y slo si se satisfacen todas las condiciones del teorema.
Es importante destacar que el mtodo, derivado del mtodo de Lagrange, identifica puntos
ptimos locales que cumplan condiciones de regularidad (tal como lo exige el corolario anterior).
En este caso, estas condiciones consisten en que los gradientes de las restricciones activas en el
punto sean linealmente independientes. Es decir, si el punto ptimo al problema es tal que el
jacobiano de los gradientes de las restricciones activas en el punto no es de rango mximo, entonces
este mtodo no garantiza que se encuentre el punto ptimo.
Es posible identificar ciertas condiciones de problemas que garanticen regularidad en todo el
dominio. Considere las siguientes proposiciones.
Proposicin 36 (Slater) Las condiciones de regularidad de Slater establecen que si hay un dominio
D = {x : gj (x) 0} con gj (x) funciones convexas, y existe un punto x
D tal que gj (
x) < 0
j = 1, . . . , m, entonces todo punto x D es regular.
Proposicin 37 (Slater-Usawa) Las condiciones de regularidad de Slater-Usawa establecen que si
D tal
hay un dominio D = {x : gj (x) 0} con gj (x) funciones convexas, y existe un punto x
que gj (
x) < 0 para toda restriccin no lineal, y gj (
x) 0 para toda restriccin lineal, entonces todo
punto x D es regular.
Corolario 38 En problemas lineales basta que haya un punto factible para decir que su dominio
es regular.

Solucin a condiciones de Karush-Kuhn-Tucker :


Si bien las condiciones de KKT expresan un sistema finito de ecuaciones que basta resolver
para identificar el conjunto de puntos que las satisface, esto suele exigir mucho tiempo y trabajo.
Esto se debe a que para cada restriccin de desigualdad o de no negatividad se tendr distintas
condiciones dependiendo de si la restriccin se asume activa o inactiva. Esto motiva las condiciones
del tipo xz = 0 presentes en las condiciones KKT. La nica forma de abordarlas es considerar dos
casos separados: x = 0 y z = 0 y en la medida que se tenga muchas condiciones de este tipo se
deber analizar separadamente cada una de las combinaciones posibles que se pueden presentar.
As, resolver el problema exige recorrer un rbol binario de decisiones en que en cada nodo se debe
abordar una de estas condiciones y tomar dos caminos separados (e.g. x = 0 en una direccin y
x = 0 en la otra). Por lo tanto cada nodo del rbol lleva asociado un conjunto de decisiones para
satisfacer las condiciones ya abordadas. As, por ejemplo si se tiene un problema de tres variables
(x1 , x2 y x3 ), todas restringidas a tomar valores no negativos, se deber analizar (en el peor de los

78

CHAPTER 2. PROGRAMACIN NO LINEAL

casos) los siguientes ocho casos:


x1 = 0; x2 = 0; x3 = 0
x1 = 0; x2 = 0; x3 = 0
x1 = 0; x2 = 0; x3 = 0
x1 = 0; x2 = 0; x3 = 0
x1 = 0; x2 = 0; x3 = 0
x1 = 0; x2 = 0; x3 = 0
x1 = 0; x2 = 0; x3 = 0
x1 = 0; x2 = 0; x3 = 0.
Sin embargo, al recorrer este rbol tpicamente es posible descartar algunos escenarios antes de
revisarlos en detalle como se ver en los ejemplos al final de esta seccin.

Ejemplo 19 Considere el siguiente problema:


P)

Max f(x1 , x2 ) = ln(x1 + 1) + x2

s.a

2x1 + x2 3
x1 , x2 0

El problema puede modificarse del siguiente modo:


P)

Min ln(x1 + 1) x2

s.a

2x1 + x2 3

f (x) es convexa

g(x) es convexa

x1 , x2 0
Resulta claro que el problema presenta caractersticas que permiten garantizar que el mtodo de
KKT identificar slo un punto y que ste ser el ptimo global. Adems, el dominio est definido
por restricciones lineales por lo que no habr puntos singulares. El Lagrangeano del problema
queda:
L = ln(x1 + 1) x2 + 1 (2x1 + x2 3)

2.3. PROBLEMAS RESUELTOS

79

Resolviendo las condiciones de KKT es posible obtener una solucin ptima.


1
+ 21 0
x1 + 1
1
+ 21 ) = 0
2a. x1 (
x1 + 1
1b.
1 + 1 0
2b.
x2 (1 + 1 ) = 0
3.
2x1 + x2 3
4. 1 (2x1 + x2 3) = 0
5.
x1 0, x2 0
6.
1 0

1a.

De donde es fcil ver que:


1 1 de la condicin 1b.
x1 0 de la condicin 5.
Por lo tanto,

1
+ 21 > 0.
x1 + 1

Por lo tanto, x1 = 0 de la condicin 2a.


1 = 0 implica que 2x1 + x2 3 = 0, de la condicin 4.
Los pasos 3 y 4 implican que x2 = 3.
x2 = 0 implica que 1 = 1, de la condicin 2b.
Los valores x1 = 0, x2 = 3 y 1 = 1 no violan ninguna condicin.
Por lo tanto, x
= (0, 3) es solucin ptima para este problema.

2.3
2.3.1

Problemas resueltos
Optimizacin de una funcin sin restricciones

Problema 39 (Condiciones Necesarias y Suficientes (I2 1 03/Ex1 03)) Qu condiciones


deben cumplir los parmetros a y b para que un punto de la funcin f(x, y) = x2 + axy + by 2 + x + y
cumpla con las condiciones necesarias, pero no suficientes para ser mnimo?
Solucin: Las condiciones necesarias son que los i 0. Por lo que habr que construir la
matriz Hessiana.

80

CHAPTER 2. PROGRAMACIN NO LINEAL

f
x
f
y

= 2x + ay + 1
= ax + 2by + 1


2 a
Luego, H =
. Entonces, para que se cumpla con las condiciones necesarias,
a 2b
como 1 = 2 > 0, 2 = 4b a2 0.

Las condiciones suficientes son que los i > 0, pero queremos que estas condiciones no
se cumplan, por lo que algn i = 0. Como 1 = 2 > 0, entonces 2 = 4b a2 = 0.
Por lo tanto, se concluye que la condicin es 4b = a2 .

Problema 40 Considere el siguiente problema de optimizacin:


Minf(x) = x4 4x3 48x2 + 480x 160
Realice 4 iteraciones con el mtodo de Newton comenzando en x0 = 5 y luego repita pero con
x0 = 5.
Solucin:
En primer lugar se ve que
f
2f
= 4x3 12x2 + 96x + 480y 2 = 12x2 24x + 96
x
x
a) Punto inicial: x0 = 5
f (x0 )
con x0 = 5 x1 = 2.62
f (x0 )
f (x1 )
= x1
x2 = 5.4
f (x1 )
= 3.566

x1 = x0
x2
x3

x4 = 9.308
b) Punto inicial: x0 = 5
x0 = 5
x1 = 5.494
x2 = 5.4485
x3 = 5.4481
x4 = 5.4481
Problema 41 Considere los siguientes problemas de optimizacin:

2.3. PROBLEMAS RESUELTOS

81

a)
Min f (x, y) = x2 4y 2xy + 2y 2
b)
Min f(x, y) = 5x2 + 5y 2 xy 11x + 11y + 11
Utilizando el mtodo del gradiente realice dos iteraciones, tomando como punto de partida el
punto (x, y) = (0, 0).
Solucin:
a) En primer lugar se ve que
f
= 4 2x + 4y
y

f
= 2x 2y,
x
A partir de esto, se realizan las iteraciones:
i)


 

0
0
0
x1 = x0 f(x0 ) x1 =

=
0
4
4
Min0 f(0, 4)
f

2f
2

ii)

16 + 322

16 + 64 0 = 1/4,

64 > 0 = es mnimo global.



0
x1 =
1
=


 

0
2
2
x2 = x1 f(x1 ) x2 =

=
1
0
1
Min0 f(2, 1)
f

2f
2

42 4 4 + 2

8 4 0 = 1/2,

8 > 0 = es mnimo global.



1
x2 =
1
=

Se necesita seguir iterando para llegar al punto ptimo.

82

CHAPTER 2. PROGRAMACIN NO LINEAL


b) Del mismo modo, se aprecia que:
f
= 10x y 11,
x

f
= 10y x + 11
y

Nuevamente, a partir de estas derivadas, se realizan las iteraciones:


i)





0
11
11
x1 = x0 f (x0 ) x1 =

=
0
11
11
Min0 f (11, 11)
f

2f
2

5(11)2 + 5(11)2 + 1212 121 121 + 11

2 110 11 + 242 242 0 = 1/11,

0 = es mnimo global.

1
x1 =
1
>

ii)

x2 = x1 f(x1 ) x2 =


 
1
0
1

=
1
0
1

Por lo que x2 = x1 = se obtuvo el punto ptimo (1, 1) .


Problema 42 Determine el mnimo de la funcin
f (x, y, z) = x2 + y 2 + 2z 2
utilizando para ello el mtodo de Newton y el metodo del gradiente, y como punto inicial (2, 2, 1).
Compare ambos resultados.

Solucin:
a) Mtodo de Newton
En primer lugar se ve que
f
= 2x,
x

f
= 2y,
y

f
= 4z
z

El hessiano estar dado por

2 0 0
1/2 0
0

H = 0 2 0 H 1 = 0 1/2 0 , x, y, z
0 0 4
0
0 1/4

2.3. PROBLEMAS RESUELTOS

83

Y las iteraciones estarn dadas por


x1

x0 H 1 (f(x0 )) f(x0 ) con x0 = (2, 2, 1)




2
1/2 0
0
4
0


x1 = 2 0 1/2 0 4 = 0
1
0
0 1/4
4
0
=

x2

x1 H 1 (f(x1 )) f (x1 ) con x0 = (0, 0, 0)




0
1/2 0
0
0
0


x2 = 0 0 1/2 0 0 = 0
0
0
0 1/4
0
0
=

Por lo que x2 = x1 = llegamos al punto extremo (0, 0, 0).

b) Mtodo del Gradiente


Las iteraciones estarn dadas por,
i)

2
4
2 4

x1 = x0 f(x0 ) x1 = 2 4 = 2 + 4
1
4
1 4
Min0 f(x1 )
f

2f
2

ii)

(2 4)2 + (2 + 4)2 + 2(1 4)2

8(2 4) + 8(2 + 4) 16(1 4) 0 = 3/8,

8 4 + 8 4 + 16 4 > 0 = es mnimo global.

1/2

x1 = 1/2
1/2
=

1/2
1
1/2

x2 = x1 f(x1 ) x2 = 1/2 1 = 1/2 +


1/2
2
1/2 + 2

84

CHAPTER 2. PROGRAMACIN NO LINEAL


Min0 f (x2 )
f

2f
2

iii)

(1/2 )2 + (1/2 + )2 + 2(1/2 + 2)2

2(1/2 ) + 2(1/2 + ) + 8(1/2 + 2) 0 = 3/10,

2 + 2 + 16 = 20 > 0 = es mnimo global.

1/5

x2 = 1/5
1/10
=

1/5
2/5
1/5 2/5

x3 = x2 f(x2 ) x3 = 1/5 2/5 = 1/5 + 2/5


1/10
2/5
1/10 2/5
Min0 f(x2 )
f

2f
2


1 
(1 2)2 + (1 + 2)2 + 2(1/2 2)2
25
1
=
[4(1 2) + 4(1 + 2) 8(1/2 2)] 0 = 3/8,
25
1
[8 + 8 + 16] > 0 = es mnimo global.
=
25

1/5 3/20
1/20

x3 = 1/5 + 3/20 = 1/20


...etc.
=

1/10 3/20

1/20

Ambos mtodos llegarn al mismo punto ptimo, pero a travs del mtodo de Newton slo
requiri 2 iteraciones, mientras que por el mtodo del gradiente se hiceron 3 iteraciones, y an
no se logra llegar al ptimo. La funcin objetivo representa una elipse, por lo que el mtodo del
gradiente converge muy lentamente.
Problema 43 Determine la relacin que debe existir entre los parmetros a y b, para que la funcin
f(x) = eax cos(bx)
llegue a su punto ptimo en la segunda iteracin a travs del mtodo de Newton, utilizando como
punto inicial x0 = 2/b.
Solucin:
En primer lugar, se ve que
f
x
2f
x2

= aeax cos(bx) beax sin(bx)


= a2 eax cos(bx) 2abeax sin(bx) b2 eax cos(bx)

2.3. PROBLEMAS RESUELTOS

85

Luego
x1

x2

f (x0 )
con x0 = 2/b
f (x0 )
a cos(bx0 ) b sin(bx0 )
2
a
x1 = x0 2
=
2
2
(a b ) cos(bx0 ) 2ab sin(bx0 )
b
a b2
=

x0

x1

f (x1 )
f (x1 )

'
(
'
(
ab
a cos a2ab

b
sin

b2
a2 b2
(
'
( x1
'
x2 = x1
ab

2ab
sin

(a2 b2 ) cos a2ab


2
2
2
b
a b
As, para encontrar el ptimo en la segunda iteracin, se necesita

a cos

ab
2
a b2


b sin

ab
2
a b2



ab
a
= 0 = tan
b
a2 b2

) *
Se puede corroborar esta solucin buscando el punto crtico con el gradiente, x = 1b arctan ab .
Al introducir la condicin que deben cumplir los parmetros a y b, el punto crtico toma el valor
de x1 .

Problema 44 Determine el mnimo de la funcin


f(x, y, z) = 5x2 + 2y 2 + 2z 2 + 2xy + 2yz 2xz 6z
utilizando el mtodo del gradiente, y considerando como punto de inicio x0 = (0, 0, 0).

Solucin:
En primer lugar se obtienen las derivadas parciales, resultando
f
= 10x + 2y 2z,
x

f
= 4y + 2x + 2z,
y

f
= 4z + 2y 2x 6
z

Luego se comienzan a realizar las iteraciones:


i)



0
0
0



x1 = x0 f(x0 ) x1 = 0 0 = 0
0
6
6

86

CHAPTER 2. PROGRAMACIN NO LINEAL


Min0 f(x1 )
f

2f
2

ii)

2(6)2 36

24(6) 36 0 = 1/4,

24 6 > 0 = es mnimo global.



0

x1 = 0
3/2
=

0
3
3

x2 = x1 f(x1 ) x2 = 0 3 = 3
3/2
0
3/2
Min0 f(x2 )
f

2f
2

iii)

= 5(3)2 + 2(3)2 + 9/2 182 9 9 9


= 30 3 18 0 = 1/5,
= 90 > 0 = es mnimo global.

3/5

x2 = 3/5
3/2

3/5
9/5
3/5 9/5

x3 = x2 f(x2 ) x3 = 3/5 9/5 = 3/5 9/5


3/2
12/5
3/2 + 12/5
Min0 f(x3 ) = 5(3/5 9/5)2 + 2(3/5 9/5)2 + 2(3/2 + 12/5)2
+2(3/5 9/5)(3/5 9/5) 2(3/5 9/5)(3/2 + 12/5)
2(3/5 9/5)(3/2 + 12/5) 6(3/2 + 12/5)

Como se aprecia, un problema puede complicarse bastante. En este caso, por el tipo de funcin,
el mtodo no logra encontrar fcilmente la solucin. Por otro lado, si se estudia el hessiano de esta
funcin se obtiene fcilmente el punto (1,-2,3) como mnimo global del problema.

2.3.2

Optimizacin de una funcin con restricciones

Problema 45 (Lagrange (Ex.1 03)) Dado el siguiente problema:


P)

Min 2xy 6y 5x + 15

s.a.

500 = xy

2.3. PROBLEMAS RESUELTOS

87

(a) Cules son las condiciones de Lagrange?


(b) Si cambio la restriccin a 510 = xy, sin resolver el problema, cunto vara la funcin objetivo y cunto la solucin ptima?Es exacta aquella variacin?Es positiva o negativa la variacin?
Solucin: (a) Las Condiciones de Lagrange son:

L(x, y, z) = 2xy 6y 5x + 15 + (500 xy)


L
x
L
y
L

= 2y 5 y = 0
= 2x 6 x = 0
= 500 xy = 0

(b) Si la restriccin es 510 = xy :


- La funcin objetivo vara en 10.
- No se puede saber sin resolver si la solucin ptima (x, y) vara.
- La variacin no es exacta, es slo una estimacin.
- No se puede saber el signo de la variacin. El multiplicador de Lagrange en este caso puede
tener cualquier signo.
Problema 46 (KKT (I2 1 03)) Considere el siguiente problema de optimizacin restringida y
escriba las condiciones de KKT. Luego, encuentre los puntos de KKT candidatos a ptimo.
P ) Min 3x2 + 2y
s.a.

3x + 4y 2 = 8
x2 + 5y 5
0 x 30

Solucin: Reescribiendo el problema se obtiene:

P)
s.a.

Min 3x2 + 2y
3x + 4y 2 = 8
x2 5y 5
x 30
x0

88

CHAPTER 2. PROGRAMACIN NO LINEAL


Luego el lagrangeano viene dado por:
L(x, y, 1 , 2 , 3 ) = 3x2 + 2y + 1 (3x + 4y 2 8) + 2 (x2 5y 5) + 3 (x 30)
Y las condiciones de KKT:
L
x
L
x
x
L
y
L
1
L
2
L
2
2
L
3
L
3
3
x

= 6x + 31 + 22 x + 3 0

(2.10)

= x(6x + 31 + 22 x + 3 ) = 0

(2.11)

= 2 + 81 y 52 = 0

(2.12)

= 3x + 4y 2 8 = 0

(2.13)

= x2 5y 5 0

(2.14)

= 2 (x2 5y 5) = 0

(2.15)

= x 30 0

(2.16)

= 3 (x 30) = 0

(2.17)

(2.18)

2 0
3 0

(2.19)
(2.20)

Una vez expresadas estas condiciones corresponde resolver el problema. La resolucin consistir
en analizar un rbol de ocho casos diferentes pues para x, 2 y 3 se debe analizar los casos en que
cada una de estas variables es cero o estrictamente positiva. Es importante notar que cada uno de
estos ocho casos conlleva un sistema de ecuaciones distinto. Se procurar realizar este proceso de
un modo eficiente que evite resolver estos ocho sistemas de ecuaciones.
+
y = 0 Se contradice con (2.13).

Si x = 0
y = 0 Por (2.13) y = + 2 o y = 2 ()
En este caso, por 2.17 se debe cumplir que 3 = 0 y por 2.14 que y 1 (esto descarta la

solucin y = 2.

2, 3 = 0.
+
2 = 0 = 1 = 1
4y . Por 2.10, 1 0, lo que no se satisface para y
Luego, considerando la condicin (2.12):
2 = 0 = 5y = 5 y = 1, con ().
Es decir, si x = 0 se debe cumplir y =

Por lo tanto se puede concluir que x > 0.En ese caso:

2.3. PROBLEMAS RESUELTOS

89

6x + 31 + 22 x + 3 = 0

(2.21)

2 + 81 y 52 = 0
3x + 4y 2 8 = 0

Si y = 0 x = 83 , lo que no cumple con la condicin (2.14) x2 5. Por lo tanto, hay contradiccin.


Por lo tanto, y = 0.
Si 3 = 0 :
82
Imaginario.
4
Por lo que 3 = 0. As,el sistema de ecuaciones queda:
x = 30 y 2 =

6x + 31 + 22 x = 0
2 + 81 y 52 = 0
3x + 4y2 8 = 0

Si 2 = 0 el sistema se simplifica a:
6x + 31 = 0
2 + 81 y = 0
3x + 4y 2 8 = 0
1

1
3
3
con lo que se obtiene 1 = 2x, x = 4y
2 = 8y . y 2y + 32 = 0. Sern puntos de KKT
aqullos cuyo x sea positivo (x > 0). Es decir es necesario resolver esta funcin cbica e identificar
los puntos y positivos. Estos tendrn asociado un x positivo.
Y si 2 = 0 :

x2 5y 5 = 0

3x + 4y 2 8 = 0
16y 4 64y 2 45y + 19 = 0. Sern puntos de KKT aqullos que tengan un x > 0 y un 2 > 0.
Problema 47 (KKT (I2 1 03)) Considere el siguiente problema de optimizacin. Llvelo a una
formulacin estndar y encuentre mediante las condiciones de KKT todos los puntos candidatos
a mnimo que hayan. Luego, utilizando condiciones de segundo orden verifique cules de estos
candidatos son mnimos locales, y cul(es) es(son) el(los) mnimo(s) global(es).
P ) Max x2 + x3
s.a . x2 1

90

CHAPTER 2. PROGRAMACIN NO LINEAL


Solucin: Primero planteamos el problema equivalente:

P)

s.a.

M in x2 x3
x2 1

Para llevarlo a formulacin estndar, todas las variables deben ser no negativas. Sea x = x1 x2 ,
donde x1 0 y x2 0. Reemplazando obtenemos el siguiente modelo en formulacin estndar:
P)

s.a.

Min (x1 x2 )2 (x1 x2 )3


(x1 x2 )2 1

x1 , x2 0
Luego el lagrangeano sera:
L = (x1 x2 )2 (x1 x2 )3 + ((x1 x2 )2 1)
y las condiciones de K.K.T.:
L
x1
L
x1
x1
x1
L
x2
L
x2
x2
x2
L

= 2(x1 x2 ) 3(x1 x2 )2 + 2(x1 x2 ) 0

(2.22)

= x1 (2(x1 x2 ) 3(x1 x2 )2 + 2(x1 x2 )) = 0

(2.23)

= 2(x1 x2 ) + 3(x1 x2 )2 2(x1 x2 ) 0

(2.24)

= x2 (2(x1 x2 ) + 3(x1 x2 )2 2(x1 x2 )) = 0

(2.25)

= (x1 x2 )2 1

(2.26)

= ((x1 x2 )2 1) = 0

(2.27)

El dominio no admite soluciones singulares


De (2.22) y (2.24), obtenemos que o bien x1 = x2 = 0,o bien:
3(x1 x2 )2 + (2 2)(x1 x2 ) = 0

(2.28)

El punto (0, 0) satisface todas las condiciones por lo que constituye un primer punto candidato.
Ahora si = 0, entonces de (2.27) tenemos que (x1 x2 )2 = 1.
As de (2.28):

2.3. PROBLEMAS RESUELTOS


i) 3 + (2 2)(1) = 0 =

91
5
2

ii) 3 + (2 2)(1) = 0 < 0, que viola la restriccin de no negatividad en .


Por lo tanto, x1 x2 = x = 1, con = 52 constituye un segundo punto candidato.
Ahora si = 0 entonces de (2.28) y retornando a la formulacin original en trminos
de x, se obtiene: 3(x1 x2 )2 + 2(x1 x2 ) = 0 (x1 x2 )(3(x1 x2 ) + 2) = 0 =
+
x1 x2 = 0
.
x1 x2 = 2
3
Es decir los puntos crticos del problema original detectados por KKT son x = 2
3 ,
x = 0 y x = 1. En trminos de las variables x1 y x2 existe infinitas combinaciones para
obtener cada uno de estos tres puntos.
Para determinar el ptimo global del problema basta reemplazar cada uno de estos
tres puntos y escoger el mejor. Sin embargo se realizar previamente un anlisis de
convexidad de cada punto. La primera y segunda derivada de la funcin objetivo son:
f (x) = 2x 3x2

f (x) = 2 6x
As se puede ver que:

f (1) = 5 < 0 = Mnimo de borde (derecho) estricto. x = 1.


,
f (0) = 0
Por condicin suficiente de 2 orden x = 0 es un mximo local
f (0) = 2 < 0
estricto (punto interior del dominio con gradiente nulo y en que el hessiano es negativo
definido).
,
f ( 2
)
=
0
3
Por condicin suficiente de 2 orden x = 2
3 es un mnimo local
f ( 2
)
=
2
>
0
3
estricto (punto interior del dominio con gradiente nulo y en que el hessiano es positivo
definido).
Por lo tanto, x = 1 y x =

2
3

son mnimos locales y f(1) = 2 < f( 2


3 ) = 0, 148.

x = 1 es el mnimo global.
Problema 48 (KKT (I2 1 03)) Responda:
(a) Por qu para el problema de minimizacin estndar las primeras condiciones de KKT son
L
del tipo L
x 0 y x x = 0? Explique.
(b) El gradiente de la funcin objetivo es una combinacin lineal de los gradientes de las
restricciones activas slo en el punto ptimo global. Comente.

Solucin: (a) Porque en el problema de minimizacin estndar las variables son no-negativas,

92

CHAPTER 2. PROGRAMACIN NO LINEAL


f (x)

x=0

Figure 2.11:

por lo que en el caso de estar en los bordes (x = 0) las derivadas deben ser positivas, y en el interior
deben ser cero como siempre. Lo que se ilustra en la Figura 2.11.

(b) Esto es falso solamente por el slo, ya que esto ocurre con todo punto extremo que
identifica el mtodo de Lagrange.

Problema 49 (KKT(Ex1 03, pregunta especial I2)) Resuelva el siguiente problema mediante
el mtodo de Karush-Kuhn-Tucker:
P)

Min xy 2 x3
y + x2 4

s.a.

y+2x

y + 2 x2

x0

Solucin: El lagrangeano est dado por:

2.3. PROBLEMAS RESUELTOS


L
L
x
L
x
x
L
y
2
1 (y + x 4)

93

= x3 + xy 2 + 1 (y + x2 4) + 2 (y x + 2) + 3 (x2 2 y)

(2.29)

= 3x2 + y 2 + 2x1 2 + 2x3 0

(2.30)

= x(3x2 + y 2 + 2x1 2 + 2x3 ) = 0

(2.31)

= 2xy + 1 + 2 3 = 0

(2.32)

= 0

y + x2 4 0
1 0

2 (y x + 2) = 0
yx+2 0
2 0

3 (x2 2 y) = 0

(2.33)

x2 2 y 0

3 0

(2.34)

x 0
Considerando el caso en que x = 0, de (2.30) obtenemos:
y 2 2 0

(2.35)

1 + 2 = 3

(2.36)

y de (2.32):

Luego, analizando por casos, tenemos:


i) 1 = 0, 2 = 0 y +
3 = 0.
Si x = 0, de (2.33), y 2, y 2, y 4 (0, 2) es un punto de KKT.
De (2.32): 2xy = 0
Si x = 0 y = 0; y de (2.31), 3x2 + y 2 = 0, x = 0 contradice x = 0.
ii) 1 , 2 = 0 y 3 =+0
Si x = 0, contradice (2.32).
De (2.33), x2 = 2+y
Si x = 0, 3x2 + y 2 + 2x3 = 0. Y de (2.32), tenemos adems 2xy = 3.
Por lo tanto, 3x2 + y 2 + 4x2 y = 0, pero x2 = 2 + y = 3(2 + y) + y 2 + 4y(2 + y) = 0.

Entonces, 5y 2 + 5y 6 = 0, con lo que obtenemos los valores: y1 = 0, 704 x1 = 2, 70; y2 =


1, 704 x2 = 0, 29. Ninguno de estos puntos satisface todas las condiciones. Mientras el primero
de estos puntos no satisface (y x + 2 0), el segundo implica 2x2 y2 < 0 y por lo tanto 3 < 0.
iii) 1 = 0,
2 = 0 y 3 = 0.

x = 0 contradice (2.32).
y = x 2 x = 0 3x2 + y 2 = 2 .

2 = 2xy
Luego, 3x2 + y 2 + 2xy = 0, ya que y = x 2 3x2 + (x 2)2 + 2x(x 2) = 0. Por lo que

94

CHAPTER 2. PROGRAMACIN NO LINEAL

8x + 4 = 0, entonces x =
punto de KKT.

1
2

y=

3
2 .

Y como 2 = 2xy, 2 =

iv) 1 = 0, 2 = 0 y 3 = 0.
,
+
x =2+y
x = 1 y = 1
2
x =x
2
x =2+y
x = 0 y = 2

3
2

> 0. Por lo tanto, (x, y) es un

3 + 1 2 + 23 = 0
Lo que
2 + 2 3 = 0
implica que 3 = 4 y 2 = 6. Con lo que el punto (x = 1, y = 1) es un punto de KKT.
Para el primer punto (1, 1), de (2.31) y de (2.32) se tiene:

El segundo punto (0, 2),ya fue detectado como punto KKT previamente.

v) 1 = 0, 2 , 3 = 0.
+
y = 4 x2

x = 0, contradice (2.32).
x = 0, 2xy + 1 = 0 y 3x2 + y2 + 2x1 = 0

Reemplazando y resolviendo se obtiene x1 = 0, 823 y1 = 3, 322 1 < 0, lo que contradice


la condicin. Por otra parte, se obtiene adems la solucin x2 = 2, 173 y2 = 0, 721, pero este
punto no cumple con la restriccin x2 2 y 0.

vi) 1 = 0, 2 = 0 y 3 = 0.
,
y = 4 x2
x2 + x 6 = 0. Obtenindose los valores x1 = 2 y1 = 0 y x2 = 3 y2 = 5.
y = x2
Pero ninguno de estos puntos cumple las condiciones para ser un punto de KKT: el primero no
satisface la restriccin (x2 2 y 0) mientras el segundo viola la no negatividad en x.

vii) 1 = 0, 2 = 0 y 3 = 0.
,

y = 4 x2
2x2 = 6. Por lo que x = 3 y = 1. Pero ninguno de estos dos puntos cumple
2
y =x 2
con la condicin y x + 2 0.
viii) 1 , 2 , 3 = 0.

y + x2 4 = 0 x2 = 4 y

Ningn punto satisface estas tres condiciones.


yx+2=0x=y+2

2
2
x 2y =0x =2+y
Por lo tanto, los tres puntos de KKT son:
x
0
1
2

y
2
3
2

f(x, y)
0
1
0

Problema 50 Considere los siguientes problemas de optimizacin:

2.3. PROBLEMAS RESUELTOS

95

a)




13 2
1 2
Min x1
+ x2
x3
3
2
5
s.a. x1 + x2 = 10
3
(x2 2)2 + x3 = 4
b)
Min xy

s.a. x2 + y 2 = 1

Encuentre las soluciones ptimas a travs del mtodo de Lagrange y caractercelas. Cul sera
aproximadamente el valor ptimo del problema b) si la constante de la restriccin fuera 1.05?
Solucin:
a)




13 2
1 2
5
+ x2
x3 + 1 [x1 + x2 10] + 2 [(x2 2)2 + x3 4]
L = x1
3
2
3

L
x1
L
x2
L
x3
L
1
L
2


= 2 x1

= 2 x2


13
+ 1 0
3

1
5
+ 22 (x2 2) + 1 0
2
3

= 1 + 2 0
0
0

Resolviendo este sistema se obtiene




35 5 15
x =
, ,
6 2 4

con 1 = 3, 2 = 1

Tambin se debe estudiar la existencia de puntos singulares, utilizando el Jacobiano


J=

1
5/3
0
0 2(x2 2) 1

As, el Jacobiano es linealmente independiente x2 es regular x2


x es regular.

96

CHAPTER 2. PROGRAMACIN NO LINEAL


Para caracterizar este punto, se estudia en primer lugar el hessiano

2
0
0

H = 0 2 + 22 0
0
0
0

Que resulta ser semi-definido positivo en


x , por lo que se deben estudiar las direcciones para
caracterizar el punto, que son
5
h1 = x1 + x2 0
3
h2 = 2 (x2 2) x2 + x3 0

=
x T H
x =

'

5
3 x2

x2 x2

2 0 0


3 x2
50

+ 4 x22 0
0 4 0 x2 =
9
x2
0 0 0

Por lo que el punto encontrado es un mnimo local.


b)
L = xy + (x2 + y 2 1)

L
x
L
y
L

= y + 2x 0
= x + 2y 0
0

= x2 = y 2 , =

y
2x

Resolviendo este sistema se obtiene


1
1
1
x = , y = , =
2
2
2
Casos posibles:
i) x = y = = 1/2
ii) x = y = = 1/2

Para estudiar la regularidad del dominio, se obtiene el Jacobiano


J=

2x 2y

2.3. PROBLEMAS RESUELTOS

97

As se aprecia que el Jacobiano es l.i. para todo punto perteneciente al dominio, por lo que ste
es regular (El punto (0,0) no pertenece al dominio).
Para caracterizar los 4 puntos candidatos se estudia el hessiano
H=

2 1
1 2

H=

1 1
1 1

Caso i)

no es definido positivo por lo que estudiaremos las direcciones de movimiento para obtener las
condiciones de 2do orden:
h

As los puntos
Caso ii)

'

h
h
x +
y = 0 = x = y
x
y



'
(
1 1
x
=
= 4x2 0
x x
1 1
x
=

1 , 1
2
2

'

, 12
2

son mnimos locales.

H=

1 1
1 1

no es definido positivo por lo que estudiaremos las direcciones de movimiento para obtener las
condiciones de 2do orden:
h

As los puntos

'

h
h
x +
y = 0 = x = y
x
y



'
( 1 1
x
=
= 4x2 0
x x
1 1
x
=

1
1 ,
2
2

'

1 1

, 2
2

son mximos locales.

El valor ptimo de este problema ser -1/2. Para estudiar la sensibilidad del valor ptimo al
cambiar la constante de la restriccin, se utiliza que
L
f
|optimo =
|optimo = = f = a = 0.5 0.05 = 0.025
a
a
Se utiliz = 1/2, pues con este valor del multiplicador se encuentran los mnimos. As el valor
ptimo decrecera en 0.025 unidades, quedando aproximadamente en -0.525.
Problema 51 Considere una empresa que produce mesas de madera utilizando dos factores productivos: mano de obra y madera. Los costos estimados de dichos factores son $10/hora-hombre y

98

CHAPTER 2. PROGRAMACIN NO LINEAL

$6/m3 de madera. Para la produccin de las mesas se considera la funcin de produccin


f(x, y) = xa y b

x, y 0,

donde x representa las horas hombres dedicadas e y los metros cbicos de madera utilizados; f(x, y)
representa el nmero de mesas producidas con dichos factores (asuma un valor real). (a) Formule
un modelo de minimizacin de costos para producir q mesas; y (b) cules son las condiciones sobre
a y b para que exista solucin al problema anterior?
Solucin:
a)
Min 10x + 6y
s.a. xa yb = q
x, y 0
b) Para que exista solucin ptima se debe cumplir el teorema de existencia. Se puede apreciar
que la funcin objetivo es continua sobre D. Adems D es cerrado y no vaco, pues
x =

a q, y = 1

pertenece a D. Tambin se observa que

f si "
x " ,
x D,


pues y = b xqa y reemplazando esto en la funcin objetivo se obtiene que sta tiende a infinito
cuando x tiende a infinito, para todo a, b.
Si se resolviera este problema por Lagrange, se obtendra
1

a+b
aq
bq
10a 6b
x=
, y=
, =
10
6
aa bb q a+b1

Problema 52 Considere el siguiente problema de optimizacin


Max x + y
s.a. 12y x2 y2 11
x 3
x, y 0
a)

Establezca las condiciones de KKT.

b)

Verifique si se cumplen las condiciones anteriores en los puntos (3, 2) y (0, 1).

c)

Determine si estos puntos son mximos o mnimos.

2.3. PROBLEMAS RESUELTOS

99

d)
Si la segunda restriccin se sustituyera por x + 3y 3, estudie las condiciones de KKT
en los mismos puntos.

Solucin:
a)
L = x y + 1 (12y x2 y 2 11) + 2 (x 3)

i)
ii)
iii)
iv)
v)
vi)
vii)
viii)
ix)

L
= 1 2x1 + 2 0
x
L
= x(1 2x1 + 2 ) = 0
x
x
L
= 1 + 121 2y1 0
y
L
y
= y(1 + 121 2y1 ) = 0
y
L
= 12y x2 y 2 11 0
1
L
1
= 1 (12y x2 y 2 11) = 0
1
L
=x30
2
L
= 2 (x 3) = 0
2
2
x, y 0
1 , 2 0

b) Slo el primer punto es candidato a mnimo pues el segundo no cumple las condiciones de
KKT. En el primer punto, ambas restricciones estn activas y las derivadas del lagrangeano con
respecto a las variables se anulan.
c) Para esto se estudiar el hessiano
H=

21
0
0
22

evaluado en el punto, pues para que el punto sea ptimo, ste debe ser definido positivo, dado que
las derivadas parciales se anulan en el punto. Pero 1 > 0 (primera restriccin est activa), por
lo que el hessiano es definido negativo en el punto. As ste es un mximo local estricto, y no es
solucin ptima para el problema.
d) Al cambiar la restriccin, ninguno de los dos puntos cumple las condiciones de KKT.
Problema 53 Suponga que se sabe que, en el siguiente problema, la primera restriccin se activa

100

CHAPTER 2. PROGRAMACIN NO LINEAL

en el ptimo. Determine una solucin ptima utilizando el mtodo de KKT.


Min (x 3)2 + (y 5)2
s.a. x + y 6
x, y 0
Solucin:
Si la primera restriccin est activa: x + y = 6 = libre (no necesariamente mayor que cero).
Al introducir esto en las condiciones de KKT se obtiene el punto ptimo (2,4). Este problema
podra haber sido resuelto directamente utilizando Lagrange, pues se sabe que la restriccin est
activa. Luego se escogeran los puntos candidatos tales que x, y = 0.
Las condiciones de KKT seran
L = (x 3)2 + (y 5)2 + (x + y 6)
i)
ii)
iii)
iv)
v)
vi)

L
= 2(x 3) + 0
x
L
x
= x[2(x 3) + ] = 0
x
L
= 2(y 5) + 0
y
L
y
= y[2(y 5) + ] = 0
y
L
=x+y6=0

x, y 0,
libre

Adems el hessiano es definido positivo en todo el dominio, por lo que el punto encontrado ser
un mnimo global.
Problema 54 Considere le problema
M in y
s.a. x2 + y 2 4
x2 y 0

x2 y 0
x2 y 0
Identifique todos los puntos que satisfacen las condiciones de KKT.
Solucin:

2.3. PROBLEMAS RESUELTOS

101

L = y + 1 (x2 y 2 + 4) + 2 (x2 y)

i)
ii)
iii)
iv)
v)
vi)
vii)
viii)

L
= 2x1 + 2x2 0
x
L
x
= x(2x1 + 2x2 ) = 0
x
L
= 1 2y1 2 = 0
y
L
= x2 y 2 + 4 0
1
L
1
= 1 (x2 y 2 + 4) = 0
1
L
= x2 y 0
2
L
= 2 (x2 y) = 0
2
2
x0
1 , 2 0

a) Sea x, y = 0:

En ii) = 1 = 2

Caso I: 1 , 2 = 0

En v) = x2 + y 2 = 4
En vii) = x2 = y

El punto candidato ser as (x, y) = (2.44, 1.56) con 1 = 2 = 0.24.


Caso II: 1 = 2 = 0
En iii)

b) Sea x, y = 0:

En iv)

c) Sea x = 0, y = 0:
En vi)

d) Sea x = 0, y = 0:

En iv) = y2 4 = y 2 o y 2
En vii) = 2 = 0

En vi) = y 0
Casos:

i) y = 2 = 1 = 1/4
Candidato: (x, y) = (0, 2) con 1 = 1/4, 2 = 0
ii) y > 2 = 1 = 0. En iii)

Problema 55 Suponga que se sabe que en el siguiente problema, la primera restriccin se activa

102

CHAPTER 2. PROGRAMACIN NO LINEAL

en el ptimo. Determine una solucin ptima utilizando el mtodo de KKT.


M in (x 3)2 + (y 5)2
s.a. x + y 6
x, y 0
Solucin:
Las condiciones de KKT seran
L = (x 3)2 + (y 5)2 + (x + y 6)

i)
ii)
iii)
iv)
v)
vi)

L
= 2(x 3) + 0
x
L
x
= x[2(x 3) + ] = 0
x
L
= 2(y 5) + 0
y
L
y
= y[2(y 5) + ] = 0
y
L
=x+y6=0

x, y 0, libre

a) Sea x, y = 0:

2(x 3) + = 0
En ii), iv) y v)
2(y 5) + = 0

x+y =6
Resolviendo este sistema, vemos que el candidato ser (2,4) con = 2, que cumple con
todas las condiciones de KKT.
b) Sea x, y = 0:
En v)

c) Sea x = 0, y = 0:

En v) x = 6

En ii) = 6

En iii)

d) Sea x = 0, y = 0:

En v) y = 6

En iv) = 2

En i)

Si la primera restriccin est activa: x + y = 6 libre (no necesariamente mayor que cero).

2.3. PROBLEMAS RESUELTOS

103

Al introducir esto en las condiciones de KKT se obtiene el punto ptimo (2,4). Este problema
podra haber sido resuelto directamente utilizando Lagrange, pues se sabe que la restriccin est
activa. Luego se escogeran los puntos candidatos tales que x, y 0.
Adems el hessiano es definido positivo en todo el dominio, por lo que el punto encontrado ser
un mnimo global.
Problema 56 Considere le problema
Min y
s.a. x2 + y 2 4
x2 y 0

x 0, y libre
Identifique todos los puntos que satisfacen las condiciones de KKT.
Solucin:
L = y + 1 (x2 y2 + 4) + 2 (x2 y)

i)
ii)
iii)
iv)
v)
vi)
vii)
viii)

L
= 21 x + 22 x 0
x
L
x
= x[21 x + 22 x] = 0
x
L
= 1 21 y 2 = 0
y
L
= x2 y 2 + 4 0
1
L
= 1 (x2 y2 + 4) = 0
1
1
L
= x2 y 0
2
L
2
= 2 (x2 y) = 0
2
x 0; 1 , 2 0

a) Sea x, y = 0:
En ii) 1 = 2
Caso I: 1 , 2 = 0
En v) x2 + y 2 = 4
En vii) x2 = y
El punto candidato ser as (x, y) = (1.25, 1.56) con 1 = 2 = 0.24.

104

CHAPTER 2. PROGRAMACIN NO LINEAL


Caso II: 1 , 2 = 0
En iii)
b) Sea x, y = 0:
En iv)
c) Sea x = 0, y = 0:
En vi)
d) Sea x = 0, y = 0:
En iv) y 2 4 y 2 o y 2
En vii) 2 = 0
En vi) y 0
Casos:
i) y = 2 de iii) 1 = 1/4
Candidato: (x, y) = (0, 2) con 1 = 1/4, 2 = 0
ii) y > 2 de v) 1 = 0 En iii)

Chapter 3

Programacin Lineal
3.1

Introduccin

Un problema de optimizacin se dice lineal si las variables son todas continuas y tanto la funcin
objetivo como las restricciones del problema son funciones lineales en las variables.
Todo problema de Programacin Lineal puede expresarse mediante el siguiente formato estndar:
Min c1 x1 + c2 x2 + ... + cn xn
s.a

a11 x1 + ... + a1n xn b1


..
.
am1 x1 + ... + amn xn bm

o bien en notacin matricial:


Min cx
s.a Ax b
en que denominamos xT = (x1 ...xn ) como las variables de decisin, c = (c1 ...cn ) el vector de costos,
bT = (b1 ...bm ) el vector de insumos disponibles, y

a11
.
.
A=
.
am1

...
..
.
...

la matriz estructural de las restricciones.

a1n
..
.

amn

Como todo problema de optimizacin continua, este problema de Programacin Lineal es abordable via KKT con la particularidad que al tratarse de un problema convexo, cualquier solucin
que cumpla con las condiciones de KKT ser un ptimo global al problema (KKT es condicin
suficiente en vez de necesaria). No podemos garantizar que esta solucin ptima ser nica, pues
105

106

CHAPTER 3. PROGRAMACIN LINEAL

las funciones objetivo lineales no son estrictamente convexas.


En este caso las condiciones de KKT sern: L(x, ) = cx + (Ax b)
L
x
L

= c + A = 0
= Ax b 0
= (Ax b) = 0
0

En caso que el problema incorpore restricciones de signo en todas las variables xi 0, las
condiciones KKT seran:
L
x
L
x
x
L

= c + A 0
= x(c + A) = 0
= Ax b 0
= (Ax b) = 0
0

x 0
Si bien este problema puede ser abordado mediante las condiciones generales de KKT, posee
condiciones y caractersticas propias que hacen propicio desarrollar un mtodo especfico para enfrentarlo.
Para introducirnos en las caractersticas propias de la Programacin Lineal, veamos un ejemplo
simple:

Ejemplo 20 Una fbrica produce dos tipos de planchas de aluminio pintado y requiere determinar
la cantidad a producir de cada tipo. Producir una plancha del tipo 1 requiere 7m2 de aluminio
bruto, 0, 3lts de pintura y 15 min de trabajo. El costo por plancha (en aluminio y pintura) para
el fabricante es de $400 y el precio unitario de venta es de $1200.Producir una plancha del tipo
2 requiere 14m2 de aluminio bruto, 0, 3lts de pintura y 5 min de trabajo. El costo por plancha
es $900 y el precio unitario de venta es de $1500.El fabricante maneja un stock diario mximo
de 630m2 de aluminio bruto y 15lts de pintura. Trabajar solo y dispone de 10hrs cada da. El
fabricante no dispone de un trabajo alternativo para las horas no utilizadas en fabricar planchas de
aluminio Cunto es lo ptimo a producir de modo de maximizar la utilidad?

Para esto definiremos dos variables x1 y x2 , que representan el nmero de planchas pintadas

3.1. INTRODUCCIN

107

diarias a producir de cada tipo.


P ) Max 800x1 + 600x2
15x1 + 5x2 600 (minutos disponibles)

s.a

7x1 + 14x2 630 (m2 de aluminio)

0, 3x1 + 0, 3x2 15 (lts de pintura)


x1 , x2 0

El objetivo es identificar la combinacin de x1 y x2 que, satisfaciendo las restricciones del


modelo, maximiza las utilidades para la empresa. Podemos ver que el problema tiene solucin
ptima ya que en un problema de programacin lineal basta determinar una solucin factible,
por ejemplo producir 20 planchas tipo 1 y 20 del tipo 2. Esto es factible ya que consume slo
6hrs 40 min, 420m2 de aluminio y 12lts pintura de las disponibles, lo que alcanza. Su utilidad
sera de $28.000 diarios, pero claramente no sera ptimo (sobran insumos de todo tipo!).
Este problema tiene la particularidad de ser bidimensional. Esto permite visualizar grficamente
el problema y mediante esta herramienta identificar la o las soluciones ptimas. En la Figura 3.1
se observa que la solucin ptima corresponde a la combinacin de x1 y x2 en que la primera y
tercera restriccin estn activas. Es decir, se utiliza toda la pintura y las horas disponibles. Esta
solucin corresponde a x1 = 35 y x2 = 15, con una utilidad de $37.000.
x2
120

Mano de obra

Pintura

50
45

z*

Solucin ptima
x=(35,15)
Aluminio bruto

40

50

90

x1

Figure 3.1: Ejemplo Planchas de Alumnio


Observacin: Evidentemente cuando n crece (nmero de variables), el problema ya no puede

108

CHAPTER 3. PROGRAMACIN LINEAL

ser abordado grficamente.


Planteemos este problema como uno KKT y abordmoslo genricamente.
L = 800x1 600x2 + 1 (15x1 + 5x2 600) + 2 (7x1 + 14x2 630) + 3 (0, 3x1 + 0, 3x2 15)
Por lo tanto, un punto mximo del problema debe cumplir con:
800 + 151 + 72 + 0, 33 0
x1 (800 + 151 + 72 + 0, 33 ) = 0
x1 0
600 + 51 + 142 + 0, 33 0
x2 (600 + 51 + 142 + 0, 33 ) = 0
x2 0
15x1 + 5x2 600 0
1 (15x1 + 5x2 600) = 0
1 0
7x1 + 14x2 630 0
2 (7x1 + 14x2 630) = 0
2 0
0, 3x1 + 0, 3x2 15 0
3 (0, 3x1 + 0, 3x2 15) = 0
3 0
x1

Lo primero que haremos ser identificar los multiplicadores 1 , 2 y 3 asociados al punto


= 35 y x2 = 15 y verificar que esta solucin satisface estas condiciones de KKT.
Las condiciones de complementaridad de las holguras en este punto exigen:
800 + 151 + 72 + 0, 33 = 0
600 + 51 + 142 + 0, 33 = 0
2 = 0

As obtenemos:
1 = 20
3 = 1666, 6
Es fcil comprobar que el punto x1 = 35 , x2 = 15, 1 = 20, 2 = 0, 3 = 1666, 6 satisface todas

3.1. INTRODUCCIN

109

las condiciones de KKT y por lo tanto corresponde a un ptimo global del problema.
Como primera observacin es interesante destacar que los multiplicadores obtenidos no dependen de los insumos disponibles. De hecho, cambios menores (y no tan menores tambin) en el
vector de insumos b modifican la combinacin ptima de planchas (x1 y x2 ), pero no modifican los
multiplicadores ptimos. Esto es consistente con la interpretacin que se dio a estos multiplicadores
en el captulo anterior. Se indic que el multiplicador i entrega una stimacin de primer orden
respecto a cunto cambia el valor ptimo si el insumo disponible del recurso i, esto es bi , aumenta
en una unidad. Al respecto podemos hacer dos observaciones:
Como se trata de un problema de programacin lineal, el impacto en el valor ptimo de
aumentar en una unidad el insumo disponible de una restriccin activa ser el mismo independiente de el valor del lado derecho (en la medida que el conjunto restante de restricciones
activas en el punto ptimo no cambie). Asimismo si la restriccin est inactiva, el multiplicador permanecer nulo ante cambios en el total de insumos disponibles que la mantengan
inactiva.
Como se trata de un problema de programacin lineal, la estimacin de primer orden del
impacto en el valor ptimo es exacta para perturbaciones menores.
As, el valor de los multiplicadores asociado a un punto del dominio depende de los coeficientes
estructurales de las restricciones activas en el punto y del gradiente de la funcin objetivo, pero
es independiente del vector de insumos disponibles (una vez definidas las restricciones activas).
Geomtricamente, el gradiente de la funcin objetivo debe corresponder a una combinacin lineal
(con coeficientes positivos) de los gradientes de las restricciones activas.
Por ejemplo, si revisamos las condiciones de KKT para el punto factible x1 = 10, x2 = 40,
observamos que el punto satisface todas las condiciones de KKT a excepcin de 2 0. Esto indica
que la segunda restriccin est activa en el punto, y que la solucin mejorara si la restriccin dejara
de estarlo.
L
Ahora bien, sabemos que los multiplicadores ptimos satisfacen j = b
y por lo tanto reprej
sentan el valor econmico marginal del recurso j.
Supongamos ahora que se decide aumentar los recursos disponibles de uno de los insumos. Qu
posibilidad se estudiar primero? La de tener ms pintura, mayor mano de obra, o ms planchas
de aluminio bruto? Por una parte, el aluminio bruto no es restriccin activa por lo que realmente
sobra. Al comparar una expansin en pintura o tiempo disponible, se debe tener cuidado, ya que
el multiplicador est referido a una unidad de bj .
Si hacemos una comparacin porcentual equivalente (digamos en un 1%) veremos que 6 minutos
adicionales de trabajo significan $120 ms de utilidad, mientras que 0, 15 litros de pintura significan
$250 adicionales. Como decamos anteriormente esta estimacin no contempla error (es decir es
exacta) en la medida que las restricciones activas siguen siendo las mismas. Si esto no sucede
entonces el impacto en el valor ptimo variara.
Habamos dicho que esta interpretacin de los multiplicadores cabe slo para variaciones de los
recursos disponibles que no altere el conjunto de restricciones activas. A continuacin identificare-

110

CHAPTER 3. PROGRAMACIN LINEAL

mos para cada insumo los rangos en que esto sucede manteniendo los dems insumos en su valor
actual.
Restriccin de mano de obra
En qu rango de disponibilidad diaria de tiempo de trabajo la afirmacin El valor de un
minuto del tiempo del fabricante es $20 es cierta? Ser cierta mientras las restricciones activas
sigan siendo las de tiempo y pintura disponible. Sin embargo, si la disponibilidad de tiempo
(actualmente en 10 horas) vara demasiado puede suceder que en el ptimo se active la restriccin
de aluminio o alguna de las variables se haga cero (se activa la restriccin de no negatividad). A
travs de un anlisis grfico se puede observar que si la disponibilidad diaria de tiempo es mayor a
5hr 50 min y menor a 12hr 30 min ., el valor del multiplicador 1 se mantiene en $20.
Qu sucede si dispone de menos de 5hr 50 min? Resolviendo las ecuaciones de KKT se obtienen
los siguientes multiplicadores 1 = 40, 2 = 28.5, 3 = 0, por lo tanto el valor de un minuto de
su tiempo aumenta a $40 el minuto. El lmite inferior de disponibilidad diaria de tiempo para este
valor del tiempo es 3hr 45 min . Este aumento en el valor del tiempo es esperable pues en la medida
que se cuenta con menor cantidad de un insumo, se destina a tareas ms productivas.
Y si trabaja menos de 3hr 45 min? En este caso los multiplicadores sern 3 = 0 y 2 = 0, por
lo tanto x1 = 0 y 1 = 120. As el valor de su tiempo aumenta a $120 el minuto.
Es interesante notar que si se obvia la restriccin de aluminio y pintura y se supone un problema
exclusivamente con restriccin de tiempo se observa que la solucin ptima consiste en producir
la mayor cantidad de planchas tipo 2 que se pueda con el tiempo disponible. Esto se debe a que
en las planchas tipo 1 se ganara $800 por cada 15 minutos de trabajo, versus $600 por cada 5
minutos en las planchas tipo 2. As, en este caso la productividad de un minuto extra sera $120
que es exactamente el resultado obtenido si se cuenta con menos de 3hr 45 min al da. En este
caso el aluminio y la pintura abundan para poder sacar un mximo provecho a los escasos minutos
disponibles. Sin embargo, en la medida que se dispone de ms de 3hr 45 min ya no se cuenta
con todos los recursos de aluminio y pintura para poder producir la solucin que maximiza la
productividad de los minutos. Y en ese caso estos otros insumos comienzan a ser importantes y a
definir la combinacin ptima. En ese caso el valor del tiempo cae de los $120 a $40 y luego a $20
el minuto y el valor del aluminio y pintura progresivamente dejan de tener valor econmico nulo.
Es interesante notar tambin que cuando se dispone ms de 3hr 45 min, pero menos de 5hr 50 min
el aluminio tiene un valor econmico, pero no as la pintura. Sin embargo, cuando se cuenta con
ms de 5hr 50 min el aluminio deja de tener un valor econmico y s lo tiene la pintura.
Tambin es interesante notar que de los 600 minutos que el fabricante dispone, los primeros 225
tienen un valor de $120/min, los siguientes 125 un valor de $40/min mientras los ltimos 250 un
valor de $20/min. Si sumamos el valor de cada uno de estos minutos obtenemos la utilidad de la
empresa. Es decir: 225 min * $120/min + 125 min * $40/min + 250 min * $20/min = $37.000.
Qu pasa si se trabaja ms de 12hr 30 min? En este caso la restriccin tiempo deja de ser
activa y por lo tanto 1 = 0 en este rango.
Qu debiera hacer este fabricante si alguien le ofrece un trabajo por $100/minuto? En este

3.1. INTRODUCCIN

111

caso el debiera trabajar 3hr 45 min en la fbrica de pintado (con una rentabilidad de $120/minuto)
y emplearse por el resto de su tiempo disponible en el trabajo que le ofrecen.
Restriccin de aluminio
Qu valor tiene una plancha de aluminio bruto de ms o de menos? El valor actual es cero.
Para que tenga algn valor debe convertirse en una restriccin que incida en el resultado de la
fbrica. Del grfico se observa que esto slo pasara si el stock diario fuese slo 455m2 de aluminio
bruto. Por lo tanto mientras 455 b2 , 2 = 0.
Restriccin de pintura
La restriccin 3 tiene un multiplicador asociado (o precio sombra) de $1666, 7. Del grfico
observamos que ste tiene validez para 12 b3 18. En el caso de que se disponga de menos de
12 litros deja de ser activa la restriccin 1 y no se produce x2 . Por otro lado, si se dispone de ms
de 18 lts., comienza a sobrar pintura en vez de planchas de aluminio (3 = 0 y 2 = 0).
Qu pasa si se dispone de 16 lts.? El precio sombra (utilidad econmica) nos indica que la
nueva utilidad debiera ser $37.000 + 1(1.666, 7) = $38.666, 7. Hemos dicho que esta aproximacin
es exacta. Comprobmoslo. Las restricciones activas siguen siendo las mismas:
15x1 + 5x2 = 600
0, 3x1 + 0, 3x2 = 16

x1 = 33, 3; x2 = 20

y este corresponde a un punto factible para restriccin 2. La utilidad es 800(33, 3) + 600(20) =


$38.666, 7. Como podemos ver la estimacin proporciona un valor exacto y no aproximado. Esto
se debe a que tanto la restriccin como la funcin objetivo son lineales.
Funcin objetivo
Qu pasa si el fabricante sbitamente sufre un cambio en la utilidad unitaria de sus productos
terminados (ya sea por un aumento o disminucin en el precio o en sus costos) Vara la produccin?
Varan los precios sombra?
Hemos dicho que en el ptimo el gradiente de la funcin objetivo debe constituir una combinacin
lineal (con coeficientes positivos) de los gradientes de la restricciones activas. Grficamente esto
equivale a que el gradiente de la funcin objetivo apunte a una direccin que est entre los gradientes
de las restricciones activas. En nuestro caso los gradientes de las restricciones activas apuntan en
las direcciones (3, 1) y (1, 1). As, manteniendo la utilidad de las planchas tipo 2 constante en
$600, la solucin ptima no cambiar si la utilidad de las planchas tipo 1 se ubica en el intervalo:
$600 U1 $1800. En este rango el punto ptimo de produccin sigue siendo el mismo, incluso 2
sigue siendo cero, pero 1 y 3 varan con cada alternativa pues el ngulo que forman los gradientes
de esas restricciones con el nuevo gradiente de la funcin objetivo ha cambiado. Para determinarlos
se debe resover el siguiente sistema:
U1 + 151 + 72 + 0, 33 = 0
U2 + 51 + 142 + 0, 33 = 0

112

CHAPTER 3. PROGRAMACIN LINEAL


Paso Inicial

No ptima

Paso Iterativo

Prueba de Optimalidad
Solucin
ptima
Fin

Figure 3.2: Estructura del mtodo Simplex


Es interesante observar que en los casos lmites la solucin ptima no es nica. Esto sucede en los
casos en que el gradiente de la funcin objetivo puede expresarse como una combinacin lineal de las
restricciones activas, pero en que al menos uno de los coeficientes involucrados sea nulo. Es decir en
este caso el multiplicador asociado a una de las restricciones activas ser nulo. Geomtricamente este
fenmeno puede interpretarse como el caso en que el gradiente de la funcin ojetivo es perpendicular
a una de las aristas del poliedro y por lo tanto todos los puntos de la arista son igualmente atractivos
y ptimos. En el caso anterior esto sucede si U1 vale exactamente $600 o exactamente $1800.
Este tipo de anlisis de sensibilidad que hemos realizado para este problema es sumamente
til en el caso de una empresa cuando un modelo como ste es utilizado. Sin embargo, hemos
descansado nuestro procedimiento en el anlisis grfico que no est disponible en problemas de tres
o ms dimensiones. En la prxima seccin introduciremos el mtodo Simplex que permite resolver
problemas de programacin lineal y desarrollar un anlisis de sensibilidad como el anterior usando
un nmero mucho mayor de variables y restricciones.

3.2

El Mtodo Simplex

El mtodo Simplex es un procedimiento general para resolver problemas de programacin lineal.


Fue desarrollado por George Dantzig en 1947, y ha probado ser un mtodo extraordinariamente
eficiente que se usa en forma rutinaria para resolver problemas grandes en las computadoras de hoy
en da.
En realidad el mtodo Simplex es un algoritmo, es decir, es simplemente un proceso en el que
se repite (se itera) un procedimiento sistemtico una y otra vez hasta obtener el resultado deseado.
Con este algoritmo se sustituye un problema difcil por una serie de problemas ms simples.
La estructura general de este algoritmo se puede observar en la Figura 3.2. El paso inicial
consiste en la preparacin para iniciar las iteraciones; el paso iterativo, es la realizacin de una
iteracin; y la prueba de optimalidad, es analizar si la solucin obtenida es ptima. En el caso en
que s lo sea, termina el proceso, si no, se vuelve a la etapa iterativa.

3.2. EL MTODO SIMPLEX

113

Desde una perspectiva geomtrica, los problemas de programacin lineal se pueden interpretar
como la bsqueda del mejor punto pertenciente a un poliedro (conjunto de oportunidades) de m
caras en n dimensiones. Al resolver nuestro ejemplo pudimos ver que los posibles candidatos a ser
soluciones ptimas de nuestro problema se encuentran en el borde del conjunto de oportunidades,
ms especficamente en los vrtices.
Las tres propiedades de las soluciones factibles en un vrtice que forman el fundamento del
mtodo Simplex son las siguientes:
1. Si existe exactamente una solucin ptima, entonces debe ser una solucin factible en un
vrtice. Si existe soluciones ptimas mltiples, al menos dos de ellas deben ser soluciones
factibles en vrtices adyacentes.
2. Existe slo un nmero finito de soluciones factibles en los vrtices.
3. Si una solucin en un vrtice es igual o mejor que todas las soluciones factibles en los vrtices
adyacentes a ella, entonces es igual o mejor que todas las dems soluciones en los vrtices, es
decir, es ptima.
Adicionalmente es importante observar que cada vrtice del dominio queda definido por un
conjunto distinto de restricciones que se activan. En un problema de n variables y m restricciones, un vrtice del poliedro (dominio) queda definido por la interseccin de n restricciones.
Sin embargo, puede suceder que en un vrtice coincidan ms de n restricciones (por ejemplo
en el vrtice superior de una pirmide de base cuadrada). Asimismo, dos vrtices adyacentes
de un poliedro se puede decir que comparten n 1 restricciones activas. As.cada iteracin
del mtodo consiste en identificar un conjunto de n restricciones cuya interseccin defina un
vrtice del poliedro. Estos puntos definidos como la interseccin de n restricciones se les denominar soluciones bsicas. Las soluciones bsicas que adems son factibles para el problema
se les denominar soluciones bsicas factibles. Evidentemente, es posible que una solucin
bsica no sea factible, pues la interseccin de las n restricciones podra encontrarse fuera del
dominio.
En definitiva, el mtodo Simplex comienza en una solucin bsica factible (vrtice del poliedro),
y evala si la solucin es ptima comparndola con las soluciones de los vrtices adyacentes. Si no
es ptima, el mtodo se desplaza a un vrtice adyacente que ojal sea mejor (no puede ser peor)
que la solucin bsica factible vigente. Para esto, el mtodo mantiene n 1 de las n restricciones
activas que definan la solucin bsica anterior y permuta la restante por otra restriccin que
antes se mantena (muy probablemente) inactiva. Una vez determinadas las n restricciones activas,
identificar la solucin bsica asociada es muy simple pues basta resolver el sistema de nn ecuaciones
resultante (en Simplex esto se hace de un modo muy eficiente). Este procedimiento se repite hasta
alcanzar una solucin ptima.
Es importante destacar que Simplex exige que todas las variables sean no negativas y que todas
las restricciones sean ecuaciones (igualdad). Esto exige agregar variables de holgura no negativas en

114

CHAPTER 3. PROGRAMACIN LINEAL

casos de desigualdades menor o igual y restar variables de exceso no negativas en las restricciones
de mayor o igual.
En su forma ms simple (ms adelante se discutir cmo abordar problemas que no satisfagan
este formato), el mtodo Simplex opera sobre problemas presentados bajo el siguiente formato en
que se contemplan n actividades (con variables no negativas asociadas a cada una) y m recursos
(el vector de recursos disponibles b contiene slo elementos no negativos):
P ) Min c1 x1 + ... + cn xn
s.a a11 x1 + ... + a1n xn b1
..
.
am1 x1 + .... + amn xn bm
xi 0 i {1, ..., n}
1 En

este formato estndar se tiene n variables originales y m holguras, es decir n + m variables


en total; adems se tiene n + m restricciones (recordar las restricciones de no negatividad). Una
solucin bsica factible queda definida por n restricciones activas y (a lo ms) m inactivas. Es decir,
cada solucin bsica factible tiene asociadas n variables nulas y a lo ms m variables estrictamente
positivas (podran ser menos de m, recordar la pirmide de base cuadrada). Definiremos como
variables bsicas a estas m variables que no corresponden a las holguras de las restricciones definidas
como activas y como variables no bsicas a las variables de holgura de las restricciones activas (esto
incluye a las variables originales que estn en cero pues la restriccin de no negatividad respectiva
es parte de las restricciones activas).
El formato de la formulacin anterior calza con el de nuestro ejemplo de las planchas de aluminio
pintado. En l hay 2 actividades: producir planchas de tipo 1, y producir planchas de tipo 2. En
cuanto a los recursos, contamos con tres, las horas hombre, las planchas de aluminio bruto y la
pintura. Para mantener el orden es importante considerar la siguiente matriz de datos:

Recurso

1
2
..
.

a11
a21
..
.

m
Beneficio unitario
Nivel de Actividad

Actividad
2

Recursos diponibles

a12
a22
..
.

..
.

a1n
a2n
..
.

b1
b2
..
.

am1

am2

amn

bm

c1
x1

c2
x2

REVIDAR con mucha calma este prrafo

cn
xn

3.2. EL MTODO SIMPLEX

115

As, nuestro ejemplo se ver de la siguiente forma:


Recurso
Min/hombre
Aluminio(m2 )
Pintura (lt)
Benef/unitario
Nivel de Produccin

3.2.1

Tipo 1

Tipo 2

Rec.Disp.

15
7
0, 3

5
14
0, 3

600
700
15

800
x1

600
x2

Pasos en el mtodo Simplex

El mtodo Simplex est compuesto por tres pasos que se pueden describir resumidamente del
siguiente modo:
1. Paso inicial: Determinar una solucin factible en un vrtice.
2. Prueba de optimalidad: La solucin factible en un vrtice es ptima cuando ninguna de las
soluciones en vrtices adyacentes a ella sean mejores.
3. Paso iterativo: Traslado a una mejor solucin factible en un vrtice adyacente (repetir las
veces que sea necesario).
A continuacin explicaremos cada uno de estos pasos en forma detallada, ilustrndolos con
nuestro ejemplo de las planchas de aluminio. El problema inicial es:
P ) Min 800x1 600x2
s.a 15x1 + 5x2 600
7x1 + 14x2 630
0, 3x1 + 0, 3x2 15
x1 , x2 0
Antes de comenzar se debe crear 3 variables de holgura (x3 , x4 , x5 ), una para cada restriccin.
De esta forma el modelo nos queda:
P ) Min 800x1 600x2
s.a 15x1 + 5x2 + x3 = 600
7x1 + 14x2 + x4 = 630
0, 3x1 + 0, 3x2 + x5 = 15
x1 , x2 0
x3 , x4 , x5 0

116

CHAPTER 3. PROGRAMACIN LINEAL

1. Paso Inicial: Determinar una solucin inicial factible puede ser no trivial. Sin embargo, para
el caso simple presentado en esta seccin (todas las restricciones son desigualdades de menor
o igual, todas las variables son no negativas y todos los recursos disponibles son no negativos)
existe una solucin factible evidente que consiste en asignar un valor cero a cada una de las
variables originales. Es decir se asume que las n restricciones activas sern las restricciones
de no negatividad de las variables originales del problema. As, todas las variables de holgura
tomaran valores no negativos.
En nuestro nuevo lenguaje de variables bsicas y no bsicas, recordemos que siempre se tiene
exactamente m (en este caso m = 3) variables bsicas que corresponde a las variables que no
se asocian a las restricciones activas. En este caso las variables bsicas son x3 , x4 , x5 . Por
consiguiente las variables no bsicas son x1 , x2 .
Por lo tanto, podemos presentar la solucin bsica factible inicial en el siguiente formato (al
que se denomina tableau) de m + 1 filas y m + n + 1 columnas:
x1
15
7
0, 3

x2
5
14
0, 3

x3
1
0
0

x4
0
1
0

x5
0
0
1

600
630
15

800

600

En este diagrama las primeras m+n columnas corresponden a una variable cada una mientras
la ltima columna de la derecha corresponde al vector de recursos disponibles. Las m primeras
filas corresponden a las restricciones originales mientras la fila inferior corresponde a la funcin
objetivo. Los coeficientes de esta fila se denominan costos reducidos. La casilla inferior
derecha del tableau indica el inverso aditivo del valor de la funcin objetivo.
El mtodo Simplex representar cada una de las soluciones bsicas factibles del proceso iterativo mediante tableaux como el anterior. Este formato permitir identificar inmediatamente
las variables bsicas, las variables no bsicas, la solucin bsica, el valor de la funcin objetivo asociado a la solucin bsica y la eventual optimalidad de la solucin. Esto se debe a
que se mantendr una estructura en que m columnas (las asociadas a las variables bsicas)
formarn una matriz identidad en las m filas superiores y tendrn valores nulos en la funcin
objetivo y a que se procurar que la columna de recursos disponibles (al extremo derecho)
contenga slo valores no negativos. Esto permitir identificar esas m variables como bsicas
y las restantes como no bsicas. Al asignar valores nulos a las variables no bsicas, el conjunto de restricciones se transforma en una asignacin directa de las variables bsicas a los
recursos disponibles correspondientes. En este caso al hacer x1 = x2 = 0 nos queda el sistema de ecuaciones x3 = 600, x4 = 630, x5 = 15 es decir identifica completamente la solucin
bsica. Como decamos anteriormente adems identifica el valor de la funcin objetivo que
corresponde al inverso aditivo del valor de la celda inferior derecha del tableau, en este caso
0. Adicionalmente el tableau permite identificar la optimalidad de la solucin bsica como

3.2. EL MTODO SIMPLEX

117

se ver en el paso siguiente del algoritmo.


2. Prueba de Optimalidad: Se determina si la solucin es ptima. Se verifica si el valor de
Z puede mejorar (en este caso disminuir) al hacer que una de las variables no bsicas crezca.
Esto se puede verificar observando la ltima fila del tableau (Z). Si todos los valores son
positivos o cero, estamos en el ptimo, de lo contrario regresamos al paso iterativo. Para
comprender la lgica de esta aseveracin considere el siguiente problema:

s.a
xi

P ) Min c1 x1 + ... + cn xn + v
.
x D..
0 i {1, ..., n + m}

en que todos los coeficientes de la funcin objetivo (ci ) son no negativos. En ese caso el valor
ptimo al problema no podr ser menor a v. Esta cota inferior se alcanzara si se encuentra
una solucin factible en que sean cero todas las variables x1 a xn . Y esta es justamente la
caracterstica que cumple la solucin bsica. Todas las variables que aparecen en la funcin
objetivo tienen valor cero lo que permite garantizar que si los coeficientes de esas variables
son no negativos se habr alcanzado una solucin ptima.
En nuestro ejemplo, podemos observar que tanto la variable x1 como x2 (no bsicas por
tanto actualmente nulas) mejoran la funcin objetivo si aumentan en una unidad ya que
sus coeficientes en la fila de la funcin objetivo son estrictamente negativos (800 y 600
respectivamente), por lo que nos convendr que una de ellas (cualquiera) entre a la base
(conjunto de variables bsicas).
3. Paso Iterativo: posee tres partes.
3.1 Parte I: Se determina la variable no bsica que entra a la base. Tpicamente se escoge la
variable cuyo coeficiente en la funcin objetivo sea el ms negativo, pues este coeficiente
indica cunto mejora la funcin objetivo por unidad de la variable que se aumente. Sin
embargo, podra escogerse cualquier variable con costo reducido negativo y el mtodo
igual podra converger. De hecho escoger la variable con costo reducido ms negativo no
garantiza que se alcance la mejor prxima solucin bsica (de entre todas las soluciones
asociadas a vrtices adyacentes en el poliedro) pues no se cuenta con un indicativo de
a cunto se podr aumentar la variable entrante sin salirse del dominio. As, en el caso
de nuestro ejemplo, la variable que ms aporta a la funcin objetivo es x1 (su costo
reducido es -800), por lo que sta ser la variable entrante.
3.2 Parte II: Se determina la variable bsica que sale de la base. Se elige la variable bsica
que primero alcanza el valor cero cuando se incrementa la variable bsica entrante.
Para comprender el procedimiento que se describir es necesario visualizar que lo que
se hace es aumentar una variable no bsica que tomaba valor cero manteniendo las
otras n 1 variables no bsicas en cero. Es decir, nos desprenderemos de slo una

118

CHAPTER 3. PROGRAMACIN LINEAL


restriccin activa en cada iteracin. El cambio en la variable no bsica lo absorben
las otras variables bsicas modificando su valor. En esas circunstancias, cada fila del
tableau (que representa a una restriccin de igualdad) contendr slo dos variables que
estn cambiando su valor: la variable entrante y la variable bsica que figura en la
restriccin (dado por la matriz identidad del tableau). Es decir, la restriccin j del
tableau se puede escribir del siguiente modo:
aj1 x1 + aj2 x2 + ..... + ajn xn + xn+j = bj
en que hemos ordenado las variables de modo que las n primeras variables correspondan
a las variables no bsicas y que la restriccin j contenga a la variable bsica xn+j (note
que el coeficiente asociado a esta variable es 1 pues la variable es bsica).Supongamos
que la variable entrante es xi , entonces: cul es el valor ms alto que podra tomar esta
variable sin salirse del dominio? Dado que las dems variables no bsicas no cambian (se
mantienen en cero) el alza en xi debe ser absorbido por xn+j . Es decir se debe mantener
la siguiente igualdad:
aji xi + xn+j = bj
En este contexto la nica restriccin que puede violarse al aumentar el valor de xi es la
no negatividad de xn+j . Es decir:
xn+j = bj aji xi 0

Si aji > 0 entonces xi

bj
aji

Si aji 0 entonces se cumple xi

As, hemos encontrado una cota para el alza de la variable xi (recordar que bj 0).
Qu significa que aji < 0? Significa que en la medida que xi crece, xn+j tambin lo
hace. Qu significa que aji = 0? Significa que xn+j no se ve afectada por el valor que
tome xi . As, si consideramos simultneamente las m restricciones del tableau podemos
determinar lo siguiente.
b

La variable saliente se debe escoger el menor valor entre las fracciones ajij , j (en que i es
el ndice de la variable entrante), considerando slo las filas en que el coeficiente aji sea
estrictamente positivo. El mnimo de entre estos coeficientes indica el valor que tomar la
variable entrante en la solucin bsica a la que migrar el mtodo en la siguiente iteracin.
630 15
En nuestro ejemplo debemos realizar el siguiente clculo: min{ 600
15 , 7 , 0,3 } = 40. De l
observamos que la variable saliente est dictada por la primera restriccin, ya que es la
que determina el mnimo cuociente y que la variable entrante (x1 ) tomar el valor 40 en
la prxima solucin bsica del mtodo. Por lo tanto, x3 es la variable bsica que sale
(note que al hacer x1 = 40 x3 = 0).
3.3 Parte III: Se determina la nueva solucin bsica factible una vez determinado que ser
la variable xn+j la que dejar la base. Para esto se toma la restriccin j y se reemplaza
el valor de xi en dicha restriccin en el resto de las filas (esto es, en las dems ecuaciones

3.2. EL MTODO SIMPLEX

119

y en la funcin objetivo). De este modo, se garantiza que el coeficiente asociado a xi


en esas filas sea cero. Adems se multiplica la fila j por a1ji para transformar en 1 el
coeficiente asociado a la variable xi . De este modo, se obtiene un nuevo tableau cuya
solucin bsica factible asociada es evidente.
Veamos nuestro ejemplo. Como observamos, la variable entrante era x1 y la variable
saliente x3 . As, fue la primera restriccin la que limit el aumento en la variable
entrante. Por lo tanto reemplazaremos el valor de x1 correspondiente a esta restriccin
en las dems filas del tableau. Esto es:
x1 =

600 5x2 x3
15

Nos queda:
600 5x2 x3
600x2
15
s.a
15x1 + 5x2 + x3
600 5x2 x3
7
+ 14x2 + x4
15
600 5x2 x3
0, 3
+ 0, 3x2 + x5
15
x1 , x2

P ) Min 800

= 600
= 630
= 15
0

x3 , x4 , x5 0
Reordenando y dividiendo la primera restriccin por 15 nos queda:
P ) Min

1000
800
x2 +
x3 32.000
3
15
1
1
s.a
x1 + x2 + x3
3
15
7
35
x2 x3 + x4
3
15
1
1
x2 x3 + x5
5
50
x1 , x2

= 40
= 350
= 3
0

x3 , x4 , x5 0
En que resulta evidente desprender la solucin bsica asociada. En este caso las variables
no bsicas son x2 = x3 = 0 mientras que las variables bsicas son x1 = 40, x4 = 350,
y x5 = 3. Esta solucin bsica contempla un valor de funcin objetivo igual a 32.000.
Esto es consistente con que la variable entrante tom un valor de 40 y su costo reducido
era 800, por lo que la funcin objetivo deba caer en 32.000; como el valor anterior
de la funcin objetivo era 0, se esperaba que ahora fuera 32.000. Como se observa se
ha generado un sistema que permite transitar entre soluciones bsicas factibles de modo
muy expedito mediante simples reemplazos de variables cuidadosamente seleccionadas

120

CHAPTER 3. PROGRAMACIN LINEAL


en algunas restricciones y funcin objetivo.

El mtodo Simplex no trabaja con la formulacin formal del problema sino directamente con
los tableau. En este caso, para determinar el nuevo tableau se hubiera seguido una formalidad
matemtica distinta pero que es absolutamente equivalente al procedimiento recientemente desarrollado. El procedimiento consistira en dividir la 1a fila por 15, y restar a las dems filas
un ponderado de la 1a fila de modo que en la columna asociada a x1 el coeficiente se haga cero
(operaciones fila). Haciendo eso nos queda:
1
0
0
0

1
3
35
3
1
5
1000
3

1
15
7
15
1
50
800
15

0
1
0
0

0
0
1
0

40
350
3
32.000

que es el tableau correspondiente al problema de minimizacin anteriormente obtenido. Es importante notar que el valor de la funcin objetivo aparece en el tableau con signo cambiado. Esto es
consistente pues la columna de la derecha del tableau contiene nmeros que se encuentran al otro
lado del signo de igualdad de cada restriccin. As, si se quisiera expresar estos nmeros como parte
del lado izquierdo de cada restriccin, habra que multiplicarlos por 1.

Para acentuar el aprendizaje del mtodo continuemos el ejemplo. Observamos del tableau que
an existe una variable no bsica cuyo costo reducido es negativo: x2 . Esta variable (actualmente
en cero) reduce en 1000
3 la funcin objetivo por cada unidad que aumente su valor, por lo que nos
convendr que entre a la base. El lector podr preguntarse porqu una unidad extra del producto
2 agrega slo $ 1000
3 a la funcin objetivo siendo que su utilidad era $600. Lo que sucede es que
dada la combinacin actual de productos, y nula disponibilidad de recursos del tipo 1 (tiempo),
cada unidad extra del producto 2 exige dejar de producir 13 de unidad del producto 1. Es decir
la utilidad neta es $600 13 $800, esto es $ 1000
3 . Para determinar la variable que sale de la base
realizamos el siguiente clculo:
Min

40 350 3
1 , 25 , 1
3

= Min{120, 30, 15} = 15

Por lo tanto, la variable que sale de la base es x5 . Realizando las operaciones filas correspondientes
obtenemos el siguiente tableau:
1
0
0
0

0
0
1
0

1
10
7
10
1
10

20

0
1
0

5
3
175
3

35
175
15

5000
3

37.000

Realizando la prueba de optimalidad podemos ver que todos los costos reducidos no bsicos son
positivos, por lo que estamos en una solucin ptima. Por lo tanto, la solucin obtenida es la

3.2. EL MTODO SIMPLEX

121

siguiente:
x1 = 35
x2 = 15
x3 = 0 (Restriccin activa)
x4 = 175 (holgura de aluminio)
(Restriccin activa)

x5 = 0

Y el valor ptimo es $37.000 (este valor calza con lo que se esperaba: 32.000 15 1000
3 ).
La optimalidad de esta solucin es evidente si uno transforma este tableau en el problema de
minimizacin correspondiente:
5000
x5 37.000
3
1
5
x1 + x3 x5
10
3
7
175
x3 + x4
x5
10
3
1
x2 x3 + 5x5
10
x1 , x2

P ) Min 20x3 +
s.a

= 35
= 175
= 15
0

x3 , x4 , x5 0
Dado que las variables deben ser no negativas, el valor ptimo no puede ser inferior a -$37.000. Si
observamos, basta hacer x3 = x5 = 0 para obtener una solucin factible que alcanza la cota mnima
para el valor ptimo antes mencionada (37.000). As, esta solucin debe ser ptima.
Por ltimo, es interesante observar que el tableau final entrega los multiplicadores asociados
a cada uno de los recursos necesarios para producir planchas de aluminio. Los costos reducidos
indican que si x3 aumenta en una unidad, la funcin objetivo empeora en $20. Aumentar una
variable de holgura en una unidad equivale a disponer de una unidad menos del recurso respectivo.
Es decir contar con una unidad ms de un recurso equivale a que la holgura respectiva se reduzca en
una unidad. Podemos observar que si x3 cae en una unidad (tomara el valor 1) la funcin objetivo
mejorara en $20. Es decir, 1 = 20. Anlogamente podemos concluir que 2 = 0; 3 = 1666, 6 lo
que es consistente con nuestros resultados previos.

3.2.2

Solucin inicial factible bsica

El mtodo Simplex, tal como lo hemos planteado aqu, requiere de una solucin inicial factible
bsica (SIFB) para comenzar a iterar. En cualquier problema de programacin lineal en forma
estndar con b 0, resulta sencillo identificar una SIFB. Basta definir el conjunto de variables
bsicas como el conjunto de holguras de las restricciones. En ese caso se obtiene: xholguras = b, y
las dems variables originales (no bsicas) iguales a cero.

122

CHAPTER 3. PROGRAMACIN LINEAL

Evidentemente esta situacin es bastante particular. Muchos problemas lineales contienen restricciones de igualdad (ecuaciones) o desigualdades tales que al asignar un valor cero a las variables
originales del problema no se obtiene un punto factible del dominio.
Volvamos al ejemplo inicial de este captulo, en que debamos determinar la produccin de dos
tipos de planchas de aluminio. Supongamos ahora que por alguna razn estamos forzados a utilizar
al menos 15lts. de pintura. En este caso, el problema en forma estndar sera:
Min 800x1 600x2
s.a

15x1 + 5x2 + x3 = 600


7x1 + 14x2 + x4 = 630
0, 3x1 + 0, 3x2 x5 = 15
xi 0,

i {1, 2, 3, 4, 5}

en que x3 y x4 son variables de holgura y x5 es de exceso.


Como podemos ver, no poseemos una SIFB. Ante estas situaciones se proceder a resolver el
problema en dos fases. En la primera fase se procurar determinar una SIFB mientras que en la
segunda fase se proceder con el mtodo Simplex a partir de la SIFB encontrada.
En la primera fase se procurar inventar una solucin bsica al problema que sea aparente.
Para esto se agregar una variable artificial yi no negativa en cada una de las restricciones que no
cumpla con el formato estndar; esto es en las restricciones de igualdad y en las restricciones que
requirieron de variables de exceso. Agregar estas variables permite generar inmediatamente una
solucin bsica al nuevo problema: el conjunto de variables no bsicas quedara compuesto por las
variables originales y las variables de exceso, mientras las variables bsicas seran las artificiales
y las de holgura. Esta solucin bsica sera factible para el nuevo problema, pero no para el
problema original. De hecho cualquier solucin a este nuevo problema slo ser factible en el
problema original si todas las variables artificiales son nulas. Por lo tanto en este nuevo problema
se procurar identificar una solucin factible bsica en que todas las variables artificiales sean no
bsicas, es decir nulas (en este caso se habr encontrado una SIFB al problema original). Por este
motivo, se reemplazar (slo durante la primera fase del algoritmo) la funcin objetivo del problema
0
original por Min yi .
Supongamos que el problema original es el siguiente:
Min c x
s.a. A1 x b1
A2 x b2
A3 x = b3
x 0
en que b1 , b2 y b3 son vectores no negativos. En ese caso se lleva el problema a formato estndar

3.2. EL MTODO SIMPLEX

123

(agregando variables de holgura y restando variables de exceso) y a continuacin se prepara el


problema para la primera fase agregando variables artificiales donde corresponda y modificando la
funcin objetivo. En este caso el problema queda:
Min

yi +

yi a2

yi

yi a3

s.a. A1 x + h1 = b1
A2 x e2 + a2 = b2
A3 x + a3 = b3
x, h1 , e2 , a2 , a3 0

Como se observa, este nuevo problema tiene una SIFB evidente, pues basta considerar los vectores h1 , a2 y a3 como el conjunto de variables bsicas. As, es posible aplicar Simplex directamente
comenzando en dicha solucin.
Si en la solucin ptima a este problema todos los elementos yi tanto de a2 como de a3 son
nulos, entonces basta eliminar las variables artificiales del problema y utilizar la solucin ptima
como SIFB para el problema original. Si en cambio, la solucin ptima contempla algn yi > 0
significa que no es posible encontrar una solucin en que todos los yi sean nulos. Esto indicara que
el dominio del problema original no admite soluciones factibles, es decir, es vaco.
A continuacin procederemos a aplicar esta metodologa al problema del ejemplo.
Primera fase
En una primera fase, nos interesa resolver el siguiente problema:
Min y3
s.a

15x1 + 5x2 + x3 = 600


7x1 + 14x2 + x4 = 630

0, 3x1 + 0, 3x2 x5 + y3 = 15
xi 0,

i {1, 2, 3, 4, 5}

y3 0
Su tableau asociado es el siguiente:
15
7
0, 3

5
14
0, 3

1
0
0

0
1
0

0
800

0
600

0
0

0
0

0
0
1
0
0

0
0
1

600
630
15

1
0

0
0

Se opta por incluir una fila adicional en la parte inferior del tableau con la funcin objetivo

124

CHAPTER 3. PROGRAMACIN LINEAL

original. Esto permitir facilitar la transicin entre la fase 1 y la fase 2 en que se deber volver a
la funcin objetivo original. Sin embargo, se debe tener claridad que la fila en que se mantiene la
funcin objetivo del problema de la fase 1 es la penltima fila. Los elementos de dicha fila indicarn
la eventual optimalidad de las soluciones alcanzadas. En este tableau, la SIFB corresponde a
h1 = 600, h2 = 630, y3 = 15, mientras las dems variables (no bsicas) son cero. Sin embargo, resta
ajustar la funcin objetivo para que contenga slo ceros en las columnas asociadas a las variables
bsicas. Para lograrlo es necesario restar la tercera fila a la cuarta fila obtenindose el siguiente
tableau:
15
5 1 0
0 0 600
7
14 0 1
0 0 630
15
0, 3
0, 3 0 0 1 1
0, 3 0, 3 0 0
1 0 15
800

600

La solucin no es ptima pues x1 y x2 tienen costo reducido negativo (en ambos casos 0, 3).
Realizando una iteracin de simplex en el pivote destacado se alcanza el siguiente tableau:
25
2
1
2
3
20
3
20

0
1
0

1
0
0

500

5
14
1
14
3
140
3
140
600
14

0
0
1

0
0
1

375
45
1, 5

1, 5

27000

La solucin bsica alcanzada an no es factible para el problema original pues y3 an es positiva.


Observamos tambin que la solucin no es ptima para la fase 1 pues el costo reducido de la variable
3
x1 es negativo ( 20
). Por lo tanto realizamos una iteracin adicional y obtenemos:
20
14
1
7
1
7

0
0
1

0
1
0

1
0
0

200
7

250
3
10
3
20
3

250
3
10
3
20
3

250
40
10

10000
3

10000
3

32000

La solucin bsica alcanzada en este caso es ptima para la fase 1 pues todas las variables
artificiales (en este caso slo una) han salido de la base. Es decir a travs de operaciones fila hemos

3.2. EL MTODO SIMPLEX

125

transformado el problema de la fase 1 en el siguiente:

s.a

Min y3
20
250
250
x5
y3
x3 + x4 +
14
3
3
1
10
10
x2 + x4 + x5 y3
7
3
3
1
20
20
x1 x4 x5 + y3
7
3
3
xi

= 250
= 40
= 10
0,

i {1, 2, 3, 4, 5}

y3 0
cuya solucin ptima prescinde de la variable y3 . As, la solucin bsica factible alcanzada (x1 =
10, x2 = 40, x3 = 250, x4 = x5 = 0) es factible para el problema original. As, basta eliminar
la variable artificial (y3 ) y reemplazar la funcin objetivo por la original para poder comenzar la
segunda fase del problema. Es importante notar que las variables bsicas de esta ltima solucin
aparecen en la funcin objetivo original, por lo que es necesario realizar operaciones adicionales para
que la funcin objetivo quede expresada slo en funcin de las variables no bsicas. Es por este
motivo que durante la primera fase mantuvimos la ltima fila del tableau con la funcin objetivo
original. Para corroborar esta afirmacin basta reemplazar el valor de las variables bsicas en la
funcin objetivo original:
f (x1 , x2 ) = 800x1 600x2
1
20
20
1
10
10
= 800(10 + x4 + x5 y3 ) 600(40 x4 x5 + y3 )
7
3
3
7
3
3
200
10000
10000
= 32.000
x4
x5 +
y3
7
3
3
que es exactamente la expresin que aparece en la ltima fila del tableau. Es interesante notar
tambin que en la penltima fila correspondiente a la funcin objetivo artificial el nico costo
reducido distinto de cero es el de la variable artificial con coeficiente 1. Esto es esperable dado que
la variable artificial est fuera de la base y la funcin objetivo consista en minimizarla.

Para continuar con el problema basta eliminar la penltima fila y la penltima columna. De
este modo se obtendr un tableau inicial para la segunda fase que nos permite comenzar a iterar
de inmediato en bsqueda de la solucin ptima al problema.

126

CHAPTER 3. PROGRAMACIN LINEAL

Segunda fase
Eliminando la cuarta fila y sexta columna del ltimo tableau de la primera fase, obtenemos el
tableau inicial para esta segunda fase:
0
0
1

0
1
0

1
0
0

20
14
1
7
1
7
200
7

250
3
10
3
20
3
10000
3

250
40
10
32000

As comenzamos desde la S.I.F.B.:


x1 = 10
x2 = 40
x3 = 250
x4 = 0
x5 = 0
Es decir, estamos comenzando desde un vrtice del dominio del problema original. Al hacer una
iteracin del algoritmo obtenemos el siguiente tableau:
0
0
1

0
1
0

3
250
1
25
2
25

40

3
175
15
175
5
175
5000
175

1
0
0

3
30
30

42000

que corresponde al ptimo del problema.

3.2.3

Anlisis Matricial del Mtodo Simplex

El problema que estamos analizando (una vez agregadas las variables de holgura y de exceso necsarias) se puede describir en su forma estndar o cannica del siguiente modo:
Min c x
s.a. Ax = b
x 0
donde debemos notar que todos los componentes del vector b deben ser mayor o igual a cero. En
cada iteracin del algoritmo, los componentes del vector x se dividen en dos grupos: las variables
bsicas a las que asociaremos un vector xB y las variables no bsicas a las que asociaremos un
vector xD . As, podremos expresar nuestro problema en funcin de estos vectores del siguiente

3.2. EL MTODO SIMPLEX

127

modo:
Min cB xB + cD xD
s.a. BxB + DxD = b
xB , xD 0
en que hemos dividido el vector de costos en cB y cD y la matriz de coeficientes de las restricciones
en B y D de modo que se ajusten a los dos grupos de variables respectivos. Es importante destacar
que la matriz B es una matriz cuadrada de m m que debe ser de rango mximo (de otro modo
el sistema de ecuaciones BxB = b podra no tener solucin factible).

Si multiplicamos la restriccin en ambos lado por B1 (para esto no pueden haber filas l.d.)
nos queda:
(3.1)
xB = B1 b B1 DxD
y reemplazando en la funcin objetivo queda:
v = cB B1 b + (cD cB B1 D)xD

(3.2)

As, se alcanza el siguiente problema equivalente al original:


Min cB B1 b + (cD cB B1 D)xD

s.a. xB +B1 DxD = B1 b


xB , xD 0

En la medida que todos los elementos de B1 b sean no negativos, la siguiente solucin corresponde a una solucin bsica factible del problema:
xB = B1 b
xD = 0.
en que su valor de la funcin objetivo asociado es:
v = cB B1 b
Es decir, si el tableau inicial se expresa en forma gruesa del siguiente modo:
B

cB

cD

128

CHAPTER 3. PROGRAMACIN LINEAL

el tableau correspondiente a una solucin bsica factible ser:


I

B1 D

B1 b

cD cB B1 D

cB B1 b

Si adems resulta que todos los elementos del vector de costos reducidos rD = cD cB B1 D
son no negativos, podemos afirmar que la solucin bsica factible anterior es tambin ptima.
Observar en (3.2) que cada elemento del vector de costos reducidos puede expresarse como cj
cB B1 Dj en que cj y Dj corresponden al coeficiente asociado a la variable xj (no bsica) en la
funcin objetivo original y la columna en A asociada a la variable xj respectivamente.
Cabe mencionar que en el caso en que el problema no tenga una SIFB inmediata y haya
que recurrir al mtodo de las dos fases para su resolucin, este anlisis matricial funcionar sin
problemas. No importa si hubo que hacer la primera fase o no, solo importa la base actual y
referirse a la informacin del problema original para el anlisis.
Veamos el siguiente ejemplo:
Min x1 2x2 3x3
3x1 + 2x2 + x3 2
x1 + 2x2 x3 4
x1 + x2 + 4x3 5
x1 , x2 , x3 0
Claramente vemos que para transformar el problema a formato estndar habr que agregar 3
variables de holgura (con sus respectivas restricciones de no negatividad), una para cada restriccin.
En este caso, las variables de holgura formarn la base inicial. As, xB = {x4 , x5 , x6 } y xD =
{x1 , x2 , x3 } y las matrices iniciales son:

1 0 0

B = B1 = 0 1 0 ,
D=
0 0 1


2
0


b = 4 ,
cB = 0 ,
cD
5
0

Es decir el tableau incial es el siguiente:

3 2 1

1 2 1 ,
1 1 4

= 2 .
3

3
1
1

2
2
1

1
1
4

1
0
0

0
1
0

0
0
1

2
4
5

3.2. EL MTODO SIMPLEX

129

Dado que el vector cB es nulo, rD = cD , y as vemos que todas las variables no bsicas tienen
costo reducido negativo. Es decir, si incorporamos cualquiera de ellas a la base, la funcin objetivo
mejora (lo que es bastante obvio en este caso). Escogeremos la variable con costo reducido ms
negativo, esto es min{1, 2, 3} = 3; es decir la variable x3 entra a la base. Para determinar
la variable que sale de la base debemos realizar el cuociente entre los elementos de la columna del
extremo derecho (B1 b) del tableau y los elementos positivos de la columna de D asociada a x3 .
Es decir min{ 21 , , 54 } = 54 . Esto indica que la variable bsica que aparezca en la tercera restriccin
es la que sale de la base, sta es x6 . Esto se debe a que cuando x3 crece, x6 es la primera variable
bsica que se vuelve cero.
El prximo tableau lo podemos obtener pivoteando (mediante operaciones filas) en la posicin
de x3 de la tercera fila, o bien simplemente redefinir las matrices del problema acorde a la nueva
base xB = {x4 , x5 , x3 }. Definiremos el conjunto de variables no bsicas como: xD = {x1 , x2 , x6 }.
Las estructuras matriciales asociadas a esta nueva base son:

1 0 14
1 0 1
3 2 0

D = 1 2 0 ,
B = 0 1 1 = B1 = 0 1 14 ,
0 0

2

b = 4 ,
5

0 0

cB = 0 ,
3

1
4

1 1

cD = 2
0

En este desarrollo matricial es importante mantener claridad respecto al orden en que las variables forman el conjunto xB y xD de modo de garantizar consistencia entre las distintas estructuras
matriciales del sistema. Por ejemplo, si alternativamente definimos xB = {x3 , x4 , x5 } las matrices
asociadas a las variables no bsicas deben absorber esta modificacin. Por ejemplo, D en este caso
sera:

0 3 2

D = 0 1 2
1 1 1
Es importante destacar que el orden que se les de a las variables dentro de la base o del conjunto
de variables no bsicas es irrelevante (el resultado ser idntico), lo que importa es mantener la
consistencia. Realizando las operaciones necesarias para determinar el nuevo tableau obtenemos:

B1 D =
rD

13
4
3
4
1
4

7
4
9
4
1
4

1
4
1
4
1
4

B1 b =

14

= (cD cB B1 D)T = 54 ,
3
4

3
4
21
4
5
4

cB B1 b =

15
4

130

CHAPTER 3. PROGRAMACIN LINEAL

es decir, obtenemos el siguiente tableau:


13
4
3
4
1
4
14

7
4
9
4
1
4
54

0
0
1

1
0
0

0
1
0

1
4
1
4
1
4
3
4

3
4
21
4
5
4
15
4

Evidentemente este mismo tableau se hubiera alcanzado si se hubiera realizado operaciones fila
pivoteando en el casillero de la tercera fila y tercera columna (destacado en negrita).
Es esta solucin ptima? Evidentemente no, ya que an hay costos reducidos negativos.
Decidimos que x2 entra a la base pues min{ 14 , 54 } = 54 . La variable saliente de la base es x4
3
pues min{ 37 , 21
9 , 5} = 7 lo que indica que es la variable de la base asociada a la primera restriccin
la que deja la base.
Pivoteando obtenemos:

13
7
24
7
5
7
18
7

1
0
0

0
0
1

4
7
9
7
1
7
5
7

0
1
0
0

1
7
4
7
2
7
4
7

3
7
30
7
8
7
30
7

con xB = {x5 , x3 , x2 } y xD = {x1 , x6 , x4 }. Estamos en el ptimo? An no, ya que queda un costo


reducido negativo ( 18
7 ) x1 entra a la base.
8
As, min{, 30
24 , 5 } =

Pivoteando

5
4

x5 sale de la base.
0
1
0

1
0
0

0
0
1

1
8
3
8
1
8
1
4

13
24
7
24
5
24
3
4

1
6
1
6
1
6

11
4
5
4
1
4
15
2

Como se puede ver, podemos pivotear nuevamente. As obtenemos:


0
1
0

1
0
0

1
3
8

0
0
1

1
3
1
3
5
3
1
3

1
3
2
3
4
3
4
3

3
2
2
8

donde todos los costos reducidos son mayores o iguales a cero. Por lo tanto, la solucin ptima es:
x1 = 2

x4 = 2

x2 = 3

x5 = 0

x3 = 0

x6 = 0

que alcanza en la funcin objetivo un valor ptimo v = 8.

Como se puede observar, la variable x4 estaba inicialmente en la base, luego sali de sta, y

3.2. EL MTODO SIMPLEX

131

en la ltima iteracin volvi a entrar. Esto nos hace pensar que escogimos el camino largo para
llegar al ptimo. Le dejamos al lector que resuelva este problema nuevamente pero en la segunda
iteracin incorporando la variable x1 en vez de x2 .

3.2.4

Casos especiales en el desarrollo de Simplex

(a) Solucin degenerada


Qu pasa si al buscar la variable que sale de la base me encuentro un empate, es decir, hay
b
dos cuocientes aijj de idntico valor? En dicho caso, observamos que la solucin ser degenerada
(alguna variable bsica tomar valor cero). Por ejemplo, supongamos que el tableau inicial del
ejemplo anterior ahora tiene b3 = 8 en vez de b3 = 5, de la siguiente manera:
3
1
1

2
2
1

1
1
4

1
0
0

0
1
0

0
0
1

2
4
8

Al determinar la variable saliente, asumiendo que x3 entra a la base, tenemos que min{ 21 , , 84 } = 2.
Pivoteando en alguna de las dos alternativas tenemos:
3
4
13
10

2
4
7
4

1
0
0
0

1
1
4
3

0
1
0

0
0
1

2
6
0

En esta caso la solucin alcanzada no corresponde a un ptimo, sin embargo el vrtice corresponde
a una solucin factible bsica degenerada, donde xB = {x3 , x5 , x6 }, con x3 = 2, x5 = 6, y
x6 = 0. Geomtricamente una solucin bsica degenerada se crea cuando confluye en un punto
un nmero mayor de restricciones al mnimo necesario para definir un vrtice. As, si el espacio
de soluciones es R2 entonces se crea una solucin degenerada cuando coinciden tres restricciones
en un punto. Un ejemplo de solucin degenerada en R3 sera el vrtice superior de una pirmide
cuya base tenga cuatro o ms esquinas. En estos casos el vrtice geomtrico queda definido por
varias bases distintas. Esto causa un problema, pues si la solucin degenerada es ptima muy
posiblemente no todas esas bases lo sern. As, es posible haber alcanzado la solucin ptima y no
haberlo detectado. Si la solucin degenerada no es ptima, entonces el algoritmo podr requerir
varias iteraciones en el vrtice cambiando en cada una de base (pero no de vrtice) para por fin
poder moverse a una solucin con mejor valor de la funcin objetivo.
(b) Dominio no acotado
Qu pasa si al buscar la variable que sale de la base, me encuentro con que todos los aij son
negativos? En dicho caso, observamos que la solucin es no acotada, es decir, el dominio es no
acotado. Por ejemplo, si la ltima restriccin hubiese sido x1 + x2 + 4x3 8, y de haber escogido

132

CHAPTER 3. PROGRAMACIN LINEAL

que entrase x1 a la base, hubiramos tenido que escoger entre valores negativos. Esto es razonable,
pues x1 aumenta la funcin objetivo y disminuye las restricciones. Las restricciones seran:
3x1 + 2x2 + x3 + x4 = 2
x1 + 2x2 x3 + x5 = 4
x1 + x2 + 4x3 + x6 = 8
Ahora si x2 y x3 permanecen en valor cero, tenemos que
x1 = (x4 2)/3
x1 = x5 4
x1 = x6 8
donde no hay un valor mximo para x1 .
(c) Mltiples soluciones
Qu pasa si al analizar la solucin final observamos que hay un costo reducido igual a cero
asociado a una variable no bsica? Significa que si esa variable se incorpora a la base, el valor de la
funcin objetivo no se ver alterado. En dicho caso, observamos que hay dos vrtices con idntico
valor objetivo. Entonces cualquier combinacin convexa de ambos, sera ptima tambin.
Ejemplo: Utilicemos el anlisis matricial para determinar cunto debi haber sido c3 para que
hubiese sido atractivo de incorporar a la base. El costo reducido final de las variables no bsicas
es: cD cB B1 D, y en este caso, xD = {x3 , x5 , x6 }, xB = {x1 , x2 , x4 }.
cD = [3
cB = [1

B = 1
1

D = 1
4

0 0]
2 0]

2 1

2 0
1 0

0 0

1 0
0 1

4
cB B1 D = [5 1
3
3 ]

Por lo tanto, cD cB B D = [2

1
3

4
3]

Entonces, para que x3 sea atractivo de incorporar a la base, c3 5 0 c3 5. Cualquier


valor mayor que 5 resulta atractivo. Supongamos que c3 = 5, as la solucin:
x1 = 2

x4 = 2

x2 = 3

x5 = 0

x3 = 0

x6 = 0

3.2. EL MTODO SIMPLEX

133

sigue siendo ptima.


Ahora podramos incorporar x3 a la base.
0
1
0

1
0
0

1
3
8

0
0
1

1
3
1
3
5
3
1
3

1
3
2
3
4
3
4
3

3
2
2

13
24
7
24
5
24
1
3

1
6
1
6
2
3
4
3

11
4
5
4
1
4

Pivoteando para que salga x4 de la base, tenemos


0
1
0

1
0
0

0
0
1

1
8
3
8
1
8

es decir, otra solucin de vrtice es:


x1 =
x2 =
x3 =

5
x4 = 0
4
11
x5 = 0
4
1
x6 = 0
4

la cual tambin nos da el mismo valor de la funcin objetivo v = 8. Por lo tanto, tambin es
solucin ptima. Ahora, cualquier combinacin convexa tambin ser solucin ptima, es decir,
todo x tal que


5
2
4

11
4
3


1
0
4

x =
donde 0 1.
+ (1 )
0
2


0
0


0
0
Supongamos que a ltima hora se nos ocurre incorporar una nueva variable que podra ser
atractiva en la solucin ptima. Para verificar esto tomamos el tableau final y vemos cules son las
variables bsicas y cules las no bsicas.
Podremos estimar el costo reducido que hubiera tenido esta variable a esta altura, si nunca
hubiese sido incorporada a la base.
Por ejemplo, si una nueva actividad x7 aportara 6 por unidad a la funcin objetivo y consum-

134

CHAPTER 3. PROGRAMACIN LINEAL

iera una unidad de cada recurso en las restricciones, el costo reducido respectivo sera:

r7 = 6 [1

1
3 2 1
1

13
2 0] 1 2 0 1 =
<0
3
1 1 0
1

Por lo tanto, s nos interesara incorporar x7 a la base y as mejorar la solucin actual.

3.3

Anlisis de Sensibilidad de los Resultados

En nuestro anlisis hemos asumido un conocimiento cabal de cada uno de los parmetros que
influyen en el problema. Sin embargo, a menudo la realidad es muy distinta. Por una parte, el
modelador suele no conocer perfectamente los valores exactos que toman los parmetros. Por otra,
aunque los conociera, muchas veces los parmetros tienen una naturaleza estocstica que impide
asignarles un valor nico. Es decir, muchas veces problemas de naturaleza estocstica son modelados
como si fueran determinsticos, pues esta modelacin permite abordarlos con mayor facilidad (la
optimizacin estocstica escapa del alcance de este texto). Por este motivo, cuando se modela un
problema en forma determinstica (en que se asume que se conoce el valor de cada parmetro con
total precisin), a menudo interesa saber cun robusto es el resultado frente a perturbaciones en
algunos parmetros del modelo.
A continuacin se presenta un anlisis de sensibilidad de los resultados de problemas de programacin lineal continua como los que se han tratado en este texto con respecto a los parmetros de
la funcin objetivo y de los niveles de cada uno de los recursos disponibles. En cada uno de los casos
analizados se perturbar slo un parmetro a la vez. Un anlisis de sensibilidad ms complejo en
que se perturban varios parmetros simultneamente no ser analizado en las secciones que siguen,
sin embargo, responde a la misma lgica que se explicar a continuacin.

3.3.1

Rango de variacin de los costos

En esta seccin realizaremos un anlisis de sensibilidad de la solucin ptima al problema respecto


de los parmetros de su funcin objetivo. Evidentemente modificar la funcin objetivo no cambia en
absoluto el dominio del problema. Una funcin objetivo diferente slo podra modificar su vrtice
ptimo. Por lo tanto, el anlisis de sensibilidad aqu presentado pretender identificar el rango de
las perturbaciones en uno de los coeficientes de la funcin objetivo que no altera la solucin ptima
alcanzada.
Como hemos visto, el vector de costos de la funcin objetivo lo podemos dividir en dos grupos:
los costos asociados a las variables bsicas y los asociados a las variables no bsicas. A medida que
la base cambia en bsqueda de una base ptima, los costos reducidos tambin lo hacen.
Analicemos primero variaciones en algn costo asociado a una variable no bsica de la solucin
ptima. Para poder preservar la optimalidad de la solucin alcanzada, los costos reducidos deben

3.3. ANLISIS DE SENSIBILIDAD DE LOS RESULTADOS

135

permanecer positivos o nulos (el caso de un problema de minimizacin). Es decir,


rD = cD z 0
donde z = cB B1 D. Por lo tanto,
rk = ck zk 0, k no bsico.
Ahora, supongamos que el costo cj asociado a la variable no bsica xj vara en cj . Para que esta
variable siga siendo no bsica deber cumplirse que su respectivo costo reducido siga siendo no
negativo, es decir,
cj + cj zj 0 rj + cj 0
Por lo tanto, el rango de esta variacin cj es
rj cj

Este resultado es muy simple de interpretar. Basta conocer el costo reducido de una variable
no bsica para saber el rango en que se puede mover su coeficiente en la funcin objetivo sin que
la solucin ptima al problema se vea afectada.

Por otro lado, respecto a costos asociados a variables bsicas, el anlisis es un poco ms complejo.
Esto se debe a que una perturbacin en algn elemento de cB , digamos cj , alterar todos los
componentes del vector z = cB B1 D. En la medida que ante esta perturbacin los costos reducidos
no bsicos sigan siendo no negativos (los bsicos seguirn siendo nulos por construccin), la base
ptima permanecer inalterada. Sin embargo, basta que uno de los costos reducidos no bsicos se
0
torne negativo para que la base (y por tanto la solucin) ptima cambie. Definamos zk = ri=1 ci ik ,
donde ik es el producto de la fila i de la matriz inversa de la base con la columna k de la matriz
1
D, es decir, ik = Bfila
i Dk . De esta forma si modificamos el costo cj en cj , los costos reducidos
rk de todas la variables no bsicas quedarn:
rk = ck zk

= ck

iBase

ci ik

cj jk

= rk cj jk 0, k no bsico
Por lo tanto, en la medida que rk cj jk para todos los costos reducidos, la base ptima no
cambiar. Para que esto suceda, dado que los jk pueden ser positivos, negativos o nulos, deber

136

CHAPTER 3. PROGRAMACIN LINEAL

cumplirse que:
rk
jk
rk
< 0 cj
jk
= 0 cj puede tomar cualquier valor

Si jk > 0 cj
Si jk
Si jk

Recordemos que rk 0. Como estas condiciones deben cumplirse k, el rango de la variacin


cj que mantiene la base ptima inalterada ser:
max

k:jk <0

rk
jk

cj

min

k:jk >0

rk
jk

(3.3)

Es importante notar que dentro de este rango el valor ptimo cambiar en cj xj .


Qu ocurre si cj llega a un lmite? Cul es la nueva base?
En ambos casos de perturbaciones en el coeficiente cj de la funcin objetivo de una variable xj
(sea sta no bsica o bsica), si cj llega a uno de los bordes de los intervalos derivados en esta
seccin, se tendr que el costo reducido de (al menos) una variable no bsica se vuelve nulo. Esto
indicara que en ese caso la solucin ptima no sera nica pues de incorporar la variable de costo
reducido nulo a la base se obtendra una nueva solucin bsica con idntico valor en la funcin
objetivo. Ahora bien,
i) si cj est asociada a una variable no-bsica, entonces en la solucin ptima alternativa esta
variable pasar a ser bsica.
ii) si cj est asociada a una variable bsica, entonces en la solucin ptima alternativa la variable
de ndice k que establece el lmite entrar a la base, y dejar la base la variable de ndice i tal
que:


xi
min
: ik 0 .
i
ik

En ambos casos la solucin ptima alternativa corresponder a un vrtice adyacente al vrtice


asociado a la solucin ptima original en el dominio del problema.

3.3.2

Rango de variacin del nivel de recursos

En esta seccin realizaremos un anlisis de sensibilidad de la solucin ptima respecto de los


parmetros del vector de recursos del sistema. En este caso la funcin objetivo se mantiene inalterada, pero se modifica el dominio de las soluciones. Si se modifica el nivel de recursos de una
restriccin activa, la solucin ptima (a menos que sta sea degenerada) inmediatamente cambiar.
Sin embargo, si la solucin ptima contina siendo definida por la misma base (el mismo conjunto
de restricciones activas) entonces los costos reducidos permanecern inalterables (no dependen de
b). Es decir, perturbaciones pequeas en uno de los recursos disponibles no cambiara el conjunto de
variables bsicas, pero s (levemente) el valor que ellas toman en la solucin ptima. Sin embargo,

3.3. ANLISIS DE SENSIBILIDAD DE LOS RESULTADOS

137

perturbaciones mayores a un determinado umbral convertiran la base en una base infactible (el
valor que toma una de las variables bsicas se torna negativo). As, interesar identificar el rango
de variacin en el recurso considerado que mantiene la base ptima actual dentro del dominio. El
anlisis para recursos de restricciones inactivas en el ptimo es similar. Perturbaciones dentro de
un cierto rango no modificarn la factibilidad de la base (la holgura de la restriccin modificada
seguir siendo positiva). Sin embargo, si se restringe el nivel de recursos sobre un determinado
umbral, la base pasar a ser infactible debido a que la holgura del recurso en cuestin ser negativa
(el recurso no ser suficiente para los requerimientos de la solucin ptima).
La factibilidad de una base queda definida por el lado derecho del tableau asociado a dicha
base, es decir xB = B1 b que debe ser no negativo. As, la solucin ptima puede expresarse como:

11 12
.
..
..

1
.
x = B b =
.
.
.
m1 m2


1m
b1
b1 11 + b2 12 + + bm 1m
.
..
..
.
.
.
. =
mm
bm
b1 m1 + b2 m2 + + bm mm

Por lo tanto, si el nivel del recurso j vara en bj , se deber cumplir que

x
=

b1 11 + b2 12 + + bm 1m + bj 1j
..
.
b1 m1 + b2 m2 + + bm mm + bj mj

Es decir, xi + ij bj 0, i = 1, ..., m. De esta condicin se desprende que debe cumplirse:


max

i: ij >0

xi
ij

bj min

i: ij <0

xi
ij

para que la base ptima no cambie.


Al realizar cambios en los bj , dentro de este rango, la nueva solucin ptima ser xi + ij bj
para todo i, y el cambio en la funcin objetivo ser: j bj . Observar que dentro de este rango de
variacin, los costos reducidos no se alterarn.

3.3.3

Ejemplo

Volvamos a nuestro ejemplo de las planchas de aluminio, y veamos cunto podra variar el beneficio
de las planchas de tipo 1 sin que cambie la poltica de produccin. El tableau inicial era:
15
7
0, 3

5
14
0, 3

1
0
0

0
1
0

0
0
1

600
630
15

800

600

138

CHAPTER 3. PROGRAMACIN LINEAL

Y el tableau final era:


1
0
0

1
10
7
10
1
10

0
0
1

20

0
1
0

5
3
175
3

5000
3

35
175
15

37000

Como podemos ver:

B1 =

1
10
7
10
1
10

0
1
0

5
3
175
3

1 0

D= 0 0
0 1

Como c1 est asociado a una variable bsica, entonces su rango de variacin est determinado por
(3.3). Aqu tenemos k = 1 y k = 2, son las variables no-bsicas. Tenemos que calcular los 1k , es
decir, 11 y 12 .


 1
1

1
11 = 10
> 0,
0 5
0 =
3
10
0


 0
5000
5
1
5
12 = 10 0 3 0 =
< 0.
r2 =
.
3
3
1
Adems sabemos que r1 = 20 y r2 =
max

1k >0

5000
3 .

20
1
10

As,

c1 min

1k <0

5000
3
5
3

por lo tanto, 200 c1 1000 para que no cambie la base.

Es fcil comprobarlo con los gradientes de las restricciones activas en el punto (35, 15). Si
c1 = 1000 f = (1800, 600), y si c1 = 200 f = (600, 600), que corresponden a los
gradientes de las restricciones activas en el punto ptimo.

3.4
2 En

Dualidad
la presente seccin se analiza una caracterstica muy particular de los problemas de progra-

macin lineal continua. Para cada problema de este tipo existe un problema asociado que a simple
vista parece completamente diferente, pero que comparte mltiples de sus caractersticas y de
cuya solucin se pueden desprender elementos de la solucin del problema original. A este nuevo
problema le denominaremos el problema dual del problema original (o primal).
2

Agregar dibujo de soluciones optimas y suboptimas en PP y PD

3.4. DUALIDAD

139

Consideremos el siguiente problema general:


P P ) Max c x
s.a Ax b
x 0
Podemos escribir este problema como uno equivalente de minimizacin de manera de dejarlo en
nuestro formato estndar para establecer las condiciones KKT de la forma vista en este libro.
P P ) Min c x
s.a Ax b
x 0
El Lagrangeano de este problema es L = c x + (Ax b), y las respectivas condiciones de KKT
son:
L
xi

= ci + Ai 0

L
j

i = 1, ..., n

L
xi x
= xi (ci + Ai ) = 0
i

i = 1, ..., n

xi 0

i = 1, ..., n

= Aj x bj 0

L
j
= j (Aj x bj ) = 0
j

j 0

j = 1, ..., m

j = 1, ..., m

j = 1, ..., m

En que Ai y Aj corresponden al vector i-sima columna y j-sima fila de la matriz A respectivamente. El primer vector es de dimensiones m 1, mientras el segundo es de 1 n.

As, para que un vector x sea ptimo debe existir tambin otro vector tal que en conjunto
satisfagan estas condiciones. Adems debe suceder que los gradientes de las restricciones activas
sean l.i. para que exista regularidad.
De las condiciones de KKT observamos que la solucin ptima debe satisfacer:
c x Ax b

Esto se cumple ya que la solucin ptima (x, ) debe cumplir: 0, A c , x 0 y Ax b.


Adicionalmente, se observa que en el ptimo (si ste existe), debe cumplir tambin que:
n

xi (ci + Ai ) = 0 c x = Ax
i=1
m

j=1

j (Aj x bj ) = 0 Ax = b
c x = b

Es decir estos dos problemas de maximizacin y minimizacin comparten el mismo valor ptimo.
Si llamamos v a este valor entonces el valor en la funcin objetivo de cualquier solucin factible
no ptima a P P ) ser necesariamente inferior a v. Asimismo, veremos que el valor de la funcin

140

CHAPTER 3. PROGRAMACIN LINEAL

objetivo de cualquier solucin factible no ptima en el problem dual ser necesariamente superior
a v.
De la estructura del problema y de esta observacin surge la idea de reescribir un nuevo problema equivalente al problema primal (P P ). A este nuevo problema equivalente le denominaremos
Problema Dual (P D) :
P D) Min b
s.a

A c
0

Es fcil observar que las condiciones de KKT de este problema son exactamente las mismas que
las del problema original en que las variables del vector x toman el rol de los multiplicadores de las
restricciones del problema dual. As, los siguienes problemas son sustancialmente equivalentes:
P P ) Max c x
s.a Ax b
x0

P D) Min b
s.a
A c
0

Diremos que cada uno de ellos corresponde al problema dual del otro problema. Es posible
generalizar esta relacin primal-dual para problemas que no necesariamente satisfacen el formato
estndar del problema originalmente considerado en esta seccin. As, la siguiente tabla ilustra la
equivalencia de dos problemas genricos en que cada uno de ellos contiene todo tipo de restricciones
(igualdades, desigualdades, no-negatividad, o libres):
Max c x
s.a
Aj x bj
Aj x bj
Aj x = bj
xi 0
xi 0
xi libre

Min b
s.a
j 0
j 0
j libre
Ai ci
Ai ci
Ai = ci

j M1
j M2
j M3
i N1
i N2
i N3

j M1
j M2
j M3
i N1
i N2
i N3

A modo de ilustracin volvamos a nuestro ejemplo de las planchas de aluminio y establezcamos


los problemas primal y dual.
P P ) Max 800x1 + 600x2
s.a

15x1 + 5x2 600


7x1 + 14x2 700
0, 3x1 + 0, 3x2 15
xi 0

i = 1, ..., 2

3.4. DUALIDAD

141

En este caso el problema dual asociado sera:


P D) Min 6001 + 7002 + 153
s.a

151 + 72 + 0, 33 800
51 + 142 + 0, 33 600
j 0

3.4.1

j = 1, ..., 3

Relaciones Primal-Dual

A continuacin formalizaremos algunas propiedades de la relacin entre un problema primal y su


problema dual que fueron esbozadas en la seccin previa.
1. Propiedad de dualidad dbil: Si x es una solucin factible para el problema primal, y
es una solucin factible para el problema dual, entonces c x b.
2. Propiedad de dualidad fuerte: Si x es una solucin ptima para el problema primal y
es solucin ptima para el problema dual, entonces: c x = b.
3. Propiedades de soluciones complementarias: En cada iteracin, el mtodo simplex
identifica simultneamente una solucin factible en un vrtice, x para el P P y una solucin
complementaria para el P D, donde se cumple que c x = b. Si x no es ptimo para el
P P, entonces no es factible para el P D.
4. Propiedad de soluciones complementarias ptimas: En la ltima iteracin del mtodo
simplex se identifica simultneamente una solucin ptima x para el P P y una solucin
ptima complementaria para el P D, en donde c x = b. En este caso los valores de
corresponden a los precios sombra del P P.
5. Propiedades de simetra: Para cualquier P P y su P D, las relaciones entre ellas deben ser
simtricas debido a que el problema dual de P D corresponde a P P .
Todas las propiedades anteriores se cumplen sin importar cul de los dos problemas se etiquete
como problema primal o dual.
Veamos otro ejemplo:
Max 5x1 + 6x2
s.a

x1 + 2x2 = 5
x1 + 5x2 3
4x1 + 7x2 8
x2 0

Dejemos este problema en forma estndar incorporando variables de holgura y de exceso segn
corresponda, y haciendo el cambio de variable x1 = x1 x1 con x1 0 y x1 0. As, el problema

142

CHAPTER 3. PROGRAMACIN LINEAL

nos queda:
Max 5x1 5x1 + 6x2

x1 x1 + 2x2 = 5

s.a

x1 + x1 + 5x2 x3 = 3

4x1 4x1 + 7x2 + x4 = 8


x1 , x1 , x2 , x3 , x4 0

Ahora veamos como queda el respectivo problema dual.


Min 51 + 32 + 83
s.a

1 2 + 43 5
1 + 2 43 5
21 + 52 + 73 6
2 0
3 0

1 irrestricta

2 , 3 irrestrictas (redundantes).

3.4.2

Anlisis Matricial del problema dual

De acuerdo a la propiedad de dualidad fuerte, en el ptimo debe satisfacerse que c x = b.


 = c B1 satisface esta propiedad y por lo tanto
Como xB = B1 b, xD = 0, observamos que
B
podra constituir la representacin matricial de la solucin ptima al problema dual. Para esto
 al problema dual. Con este propsito observamos que
ser necesario verificar la factibilidad de
el problema primal presenta restricciones del tipo Ax b, a las que es posible agregar variables
de holgura (una por restriccin). El costo reducido asociado a cada una de estas m variables corresponder a rh = ch cB B1 Dh , en que ch = 0 y Dh = I (donde h corresponde exclusivamente al
conjunto de variables de holgura). As, el costo reducido a estas variables de holgura es exactamente
 Si la solucin al problema primal (de maximizacin) es ptima, entonces estos coscB B1 = .
tos reducidos deben ser todos negativos. As, la solucin ptima al problema primal debe satisfacer
 0. Adicionalmente se debe comprobar que
 A c . Habamos visto que el vector de costos

reducidos del problema primal puede escribirse matricialmente como: rD = cD cB B1 D. Como


consideramos que el problema primal es de maximizacin, entonces en el ptimo debe verificarse
 A = c B1 A, observamos
que rD 0, es decir, cD cB B1 D. Si ahora estudiamos el valor de
B

3.4. DUALIDAD

143

que:
 A = [
 B ...
 D]

.
= [cB .. cB B1 D]
.
[cB .. cD ]
 satisface la restriccin A c del problema dual. As, concluimos que esta solucin
es decir,
es ptima para dicho problema.
Procedamos a reescribir la restriccin del problema dual A c del siguiente modo: A T I =
c , en que las variables representan variables no negativas de exceso. De las condiciones de optimalidad (KKT) observamos que xi (ci + Ai ) = 0 (i = 1, ..., n) lo que nos permite concluir
que i xi = 0. Es decir, si en el ptimo al problema primal, xi > 0, entonces i = 0 mientras
que si xi = 0, entonces i 0. Esta observacin nos permite intuir que el vector representa el
vector de multiplicadores asociados a las restricciones de no negatividad del problema primal. De
hecho si descomponemos el vector T en los valores asociados a las variables bsicas (B ) y en los
asociados a las variables no bsicas (D ), observamos que TB = cB B1 B cB = 0, mientras que
TD = cB B1 D cD = rTD que corresponden precisamente a los costos reducidos de las variables
respectivas (con signo inverso).
Asimismo, observamos que en el ptimo debe cumplirse que c = A T I lo que confirma
que el gradiente de la funcin objetivo (en este caso del problema primal) constituye una combinacin lineal de los gradientes de las restricciones activas.
Finalmente es interesante observar que el costo reducido asociado a una variable de holgura es
rj = cj cB B1 Dj , pero como cj = 0 y Dj es un vector unitario, rj = cB B 1 ej = j . Es
decir, el costo reducido de una variable de holgura que no est en la base, es igual al multiplicador
de Lagrange de la restriccin con signo contrario. Si la variable de holgura no est en la base del
problema primal, entonces sta toma un valor nulo, la restriccin asociada debe estar activa, y su
costo reducido asociado es tambin nulo. Si por otra parte la variable de holgura es bsica, su
costo reducido corresponde a la variable dual asociado a la restriccin con signo cambiado. Esto
debiera ser intuitivo pues el efecto en la funcin objetivo de un aumento en la variable de holgura
es equivalente al efecto de disminuir en la misma cantidad el recurso asociado.
Es interesante mencionar que de las propiedades antes mencionadas se desprende que el problema dual de un problema no acotado debe ser tal que su dominio sea vaco, de otro modo es
imposible satisfacer la propiedad de dualidad dbil. Asimismo, el problema dual de un problema
con soluciones mltiples debe ser un problema cuya solucin ptima sea degenerada ya que los costos reducidos bsicos nulos del problema primal correspondern a las variables bsicas del problema
dual.

144

CHAPTER 3. PROGRAMACIN LINEAL

3.5
3.5.1

Problemas resueltos
Geometra de PL

Problema 57 (Modelo (I2 1 03)) Una fbrica produce dos tipos de planchas de aluminio pintado, y necesita definir su plan de produccin diario de manera que su utilidad sea maximizada.
Producir una plancha del tipo 1 requiere de 15 minutos-hombre, de 7 m2 de aluminio bruto, y de
0.3 litros de pintura. Cada plancha tipo 1 tiene un costo para el fabricante de $400 y ste la vende
a $1200. Producir una plancha del tipo 2 requiere de 5 minutos-hombre, de 14 m2 de aluminio
bruto, y de 0.3 litros de pintura. Cada plancha tipo 2 tiene un costo para el fabricante de $900 y
ste la vende a $1500. El fabricante maneja un stock diario de 630 m2 de aluminio bruto y de 15
litros de pintura. l trabaja slo y est dispuesto a trabajar 10 horas cada da.
(a) Formule un modelo de optimizacin para lograr el objetivo del fabricante. Asuma que las
variables de produccin son continuas.
(b) En forma muy ordenada haga una tabla (planilla) de 4 4 celdas sealando las columnas
desde la A a la D, y las filas desde la 1 a la 4. Llnela con el modelo formulado en la parte (a)
tal como lo hara en Excel. Fuera de la tabla indique cuales celdas corresponden a las variables de
decisin, funcin objetivo, y restricciones.
(c) Especifique los cuatro parmetros (datos de entrada) del solver de Excel que se necesitan
para resolver su problema.
(d) Resuelva este problema grficamente indicando el dominio, curvas de nivel y la solucin
ptima.
(e) En programacin lineal vimos que al menos una de las soluciones ptimas pertenecer a un
conjunto especial de soluciones factibles. Sea R2 ese conjunto de soluciones factibles. Diga
cules son todos los puntos que pertenecen a , y cmo se llaman.
(f ) Considere un modelo equivalente al formulado en (a) en el formato estndar usado en el
curso. Escriba el lagrangeano y las condiciones de Karush-Kuhn-Tucker (KKT).
(g) Del grfico en (d) usted puede ver cuales restricciones son activas en el ptimo. Utilice esta
informacin para encontrar la solucin del problema a partir de las condiciones de KKT establecidas
en (f).
(h) Sin resolver nuevamente el problema, cunto cambiara la utilidad del fabricante si ste
tuviese 10 m2 ms de aluminio bruto al da? Y cunto cambiara si ste trabajara 10 minutos
ms al da?
Solucin: (a) La variable de decisin es:
xi = nmero de planchas tipo i; i = 1, 2.
Como el fabricante quiere maximizar su utilidad, la funcin objetivo es:
P ) Max 800x1 + 600x2

3.5. PROBLEMAS RESUELTOS

145

la cual estar sujeta a las siguientes restricciones:


15x1 + 5x2 600
7x1 + 14x2 630
0, 3x1 + 0, 3x2 15
xi 0 i = 1, 2.

(b)
A

D
= 800 B1 + 600 B2

planchas tipo 1

Utilidad del fabricante

N planchas tipo 2

Restriccin de tiempo

Restriccin de aluminio bruto

Restriccin de pintura

= 15 B1 + 5 B2
= 7 B1 + 14 B2

= 0.3 B1 + 0.3 B2

Las variables de decisin corresponden a las celdas B1 y B2, la funcin objetivo a la


celda D1 y las restricciones a las celdas D2, D3 y D4.
(c)
i) Celda objetivo = D1 o $D$1.
ii) Igual a = Max Min Valor de ____
iii) Cambiando celdas = B1 : B2 o $B$1 : $B$2.
iv) Sujeto a las restricciones:
D2 600
D3 630
D4 15
B1 0
B2 0

(d) Grfico 3.3


(e) Los puntos que pertenecen a se llaman vrtices. Ellos son:
= {(0, 0); (0, 45); (40, 0); (35, 15); (10, 40)}

146

CHAPTER 3. PROGRAMACIN LINEAL

x2

x* = (35,15)
D

x1

z * = 37.000

z = 24.000

Figure 3.3:
(f) Un modelo equivalente es:
P)

s.a.

Min 800x1 600x2


15x1 + 5x2 600
7x1 + 14x2 630
0, 3x1 + 0, 3x2 15
xi 0 i = 1, 2.

El lagrangeano viene dado por:


L = 800x1 600x2 +1 (15x1 +5x2 600)+2 (7x1 +14x2 630)+3 (0, 3x1 +0, 3x2 15)
Por lo tanto, un punto mnimo de P) debe cumplir con las condiciones de K.K.T.:
800 + 151 + 72 + 0, 33 0

x1 (800 + 151 + 72 + 0, 33 ) = 0
x1 0

600 + 51 + 142 + 0, 33 0
x2 (600 + 51 + 142 + 0, 33 ) = 0
x2 0

3.5. PROBLEMAS RESUELTOS

147
15x1 + 5x2 600 0
1 (15x1 + 5x2 600) = 0
1 0
7x1 + 14x2 630 0
2 (7x1 + 14x2 630) = 0
2 0
0, 3x1 + 0, 3x2 15 0

3 (0, 3x1 + 0, 3x2 15) = 0


3 0

(g) En (d) vemos que las restricciones activas son las de horas-hombre y de pintura, y
que hay holgura de aluminio bruto. Lo anterior nos dice que 1 > 0 y 3 > 0, y adems
que 2 = 0 (restriccin inactiva). As, algunas condiciones de K.K.T. se reducen a:
15x1 + 5x2 = 600
0, 3x1 + 0, 3x2 = 15
donde se obtiene, al resolver el sistema de 2 2 que x1 = 35 y x2 = 15 en el ptimo.
(h) Como hay holgura de aluminio (2 = 0), el tener 10 m2 ms no afecta la utilidad
del fabricante.
En el caso de que se trabajara 10 minutos ms al da, la utilidad aumentar aproximadamente 101 . 1 se obtiene resolviendo el siguiente sistema:
151 + 0, 33 = 800
51 + 0, 33 = 600
de donde 1 = 20. Por lo tanto, la utilidad aumentara a $37.200 aproximadamente.
Problema 58 Una empresa ha violado la ley ambiental y ha recibido la pena de plantar rboles
en una plaza de uso pblico. Los rboles disponibles son robles y abedules. Se le exige adems
que por cada roble, se deben plantar a lo ms 4 abedules, y que se deben plantar como mnimo 2
robles o un abedul. Las horas-hombre necesarias para la plantacin de un abedul y un roble son 1
y 3 horas-hombre respectivamente, y los 3 trabajadores slo tienen 3 horas para realizar el trabajo
(c/u). Resuelva los siguientes problemas grficamente. Considere variables reales.

148

CHAPTER 3. PROGRAMACIN LINEAL

a) Si la empresa, arrepentida por su falta, buscara maximizar el beneficio social de la plantacin


de rboles, siendo ste de 4 para los abedules y 1 para los robles. Cul sera el ptimo?
b) Si la empresa buscara mnimizar sus costos, y estos fueran de 4 para los abedules y 1 para
los robles. Cul sera el ptimo?
c) Si la empresa, arrepentida por su falta, buscara maximizar el beneficio social de la plantacin
de rboles, pero ste fuera de 1 para los abedules y 3 para los robles. Cul sera el ptimo?
d) Si no existiese la restriccin de la mano de obra, cul sera el ptimo para los casos descritos
en a) y b)?
Solucin:
Las variables de decisin sern:
x: nmero de robles que se plantarn
y: nmero de abedules que se plantarn
a) El problema descrito ser
Max 4y + x
s.a. 4x y
2y + x 2
y + 3x 9
x, y 0
Graficando este problema y las curvas de nivel asociadas, se obtiene el Figura 3.4. Las curvas
de nivel se obtienen con la funcin objetivo, es decir,
4y + x = z = y =

1
z
x+
4
4

As, la pendiente de las curvas de nivel ser -1/4, y el valor ptimo (z) estar relacionado con
la interseccin de las curvas de nivel con el eje y. En este caso, a medida que aumenta el valor
ptimo, la interseccin con el eje y ser ms "arriba". De este modo se puede conocer hacia "que
lado" buscar el ptimo, dependiendo de si se intenta mximizar o minizar la funcin objetivo.
En este caso, se puede apreciar que el mximo se encuentra en el punto donde 4x = y y
y + 3x = 9, es decir, en (x, y) = (9/7, 36/7).
b) La minimizacin tendr como solucin ptima el punto (x, y) = (2, 0), es decir, se plantaran
slo 2 robles. Para obtener esta solucin tambin se utiliz la Figura 3.4, pero esta vez se busc la
curva de nivel ms "baja" (de menor valor ptimo) que todava se intersectara con el dominio.
c) Al grficar las curvas de nivel de la nueva funcin objetivo se aprecia que stas son paralelas
a la restricin de la mano de obra, por lo que existen mltiples soluciones ptimas (todos los puntos
que pertenecen al dominio y hacen que sta restriccin se active). Ver Figura 3.5.

3.5. PROBLEMAS RESUELTOS

149

10

fn obj z=20

abedules

fn obj z=5
1ra restr
2da restr
2

3ra restr

0
-2

-1

-2

-4
robles

Figure 3.4: Plantacin de robles y abedules - Partes a) y b)


d) Si no estuviese la restriccin de mano de obra, entonces se tendra un dominio no acotado.
Ver Figura 3.6. As para el caso a) de maximizacin, el problema no tendra solucin ptima pues
puedo "subir" eternamente por las curvas de nivel, mientras que para el caso b) de minimizacin,
el problema mantendra como solucin ptima el punto (2,0), pese a tener un dominio no acotado.
Problema 59 (I21 03) Qu condicin debe cumplir a y b en el siguiente problema de modo que
la solucin ptima sea ( 23 , 23 )?
P ) Max ax + 2by
s.a.

x + 2y 2
2x + y 2
x, y 0

Solucin: El gradiente de f(x, y) debe estar entre los gradientes de las restricciones, es decir:

= (1, 2) + (2, 1) con , 0


= ( + 2, 2 + )

esto implica que:


+ 2 = a
2 + = 2b

150

CHAPTER 3. PROGRAMACIN LINEAL


10

fn obj z=12

4
abedules

fn obj z=5
1ra restr
2da restr
3ra restr
Ptos Optimos

0
-2

-1

-2

-4
robles

Figure 3.5: Plantacin de robles y abedules - Parte c)


0
1

3
a

1
0

c
2

d
e

-1

-10

Table 3.1: Tableau


Luego,
=
=

2
a
(a b) 0 = 1
3
b
1
4
a
a + b 0 = 4
3
3
b

Por lo tanto, a y b deben cumplir con 1

3.5.2

a
b

4.

Mtodo Simplex

Problema 60 (Simplex (I3 1 03)) Responda a las siguientes preguntas en base al tableau correspondiente a un problema de maximizacin que se muestra en la Tabla 1.
(a) Qu debe suceder con los parmetros para que ste sea un tableau ptimo? Cul sera el
valor ptimo del problema?
(b) Si a = 2, b = 1, d = 6, qu debe suceder para que x3 salga de la base?
(c) Qu significa que b = 0? Y qu significa que d = 0?
(d) Si se asume que d = 0, qu implicancia tiene en el problema dual?
Solucin: (a) b 0 y d, e 0. El valor ptimo sera z = 10.

3.5. PROBLEMAS RESUELTOS

151

Figure 3.6: Plantacin de robles y abedules - Parte d)


(b) e > 4 = Min{ 63 , 2e } = 63 . Por lo tanto, x3 sale de la base.
(c) Si b = 0, hay mltiples soluciones que hacen z = 10. Si d = 0, estamos ante una solucin
bsica degenerada.
(d) Si d = 0 = en el dual hay mltiples soluciones.
Problema 61 (Simplex (I3 1 03)) Resuelva el siguiente problema de optimizacin utilizando el
mtodo Simplex. Indique la solucin ptima y el valor ptimo.
P)
s.a.

Max

x1 + 2x2

x1 + 2x2 2
0 x1 2
x2 1

Solucin: En formato estandar P ) nos queda:


P)

Max
s.a.

x1
x1
x1

+ 2x2
+ x3
x2
+ 2x2

x4

+ x6
+ x5
xi

=
=
=

2
1
2
0

Como x6 es una variable artificial, habr que eliminarla con la Fase I y as encontrar una solucin
inicial posible bsica a P ).

152

CHAPTER 3. PROGRAMACIN LINEAL


Fase I: Min x6 Max x6 .

1
0
1

0
1
2

1
0
0

0
1
0

0
0
1

0
1
0

2
1
2

1
0
1

0
1
2

1
0
0

0
1
0

0
0
1

0
1
0

2
1
2

1
0
1

0
1
0

1
0
0

0
1
2

0
0
1

0
1
2

2
1
0

0
0
1

0
1
2
1
2

2
2
1

23
0

Dado que x6 sali de la base, podemos eliminarla y pasar a la fase II.


Fase II:

1
0
1
1

0
1
0

1
0
0

0
1
2

0
0
1

2
1
0

2 0 2

Entra x4 y sale x5

1
2
1
2

0
1
0

1
0
0

0
0
1

0
1
2
1
2

2
1
0

1
0
0

0
1
0

Entra x1 y sale x3

1
2
1
2

Por lo tanto, la nica solucin ptima es x1 = 2, x2 = 2 y el valor ptimo es z = 6.

Problema 62 (Simplex (Ex. 1 03)) Suponga un problema de maximizacin lineal que ha sido
abordado directamente (sin escribir un problema de minimizacin equivalente) mediante el mtodo
Simplex. A continuacin se entrega un tableau intermedio en el proceso de convergencia:
x1

x2

x3

x4

0
1

2
a

1
0

d
1
c

e
2
220

(a) Qu condiciones deben darse para que ste sea el tableau final?
(b) En caso de estar en el ptimo, Cul sera la solucin ptima y el valor ptimo?
(c) Qu condiciones deben darse para estar en el ptimo y que ste no sea nico?
(d) Qu condiciones deben darse para estar en el ptimo y que ste consista en una solucin
degenerada?
(e) Qu condiciones podran darse para que, no estando en el ptimo, la solucin sea no
acotada?
Solucin: (a) Tiene que darse: b 0, c 0 y e 0.

3.5. PROBLEMAS RESUELTOS

153

(b) La solucin ptima sera:


x1 = 2
x2 = 0
x3 = e
x4 = 0
y el valor ptimo: z = 220.
(c) Las condiciones que deben darse son: b = 0 y/o c = 0, y que e 0.
(d) Para estar en el ptimo y que ste consista en una solucin degenerada se debe dar: b
0, c 0 y e = 0.
(e) Sin estar en el ptimo, para que la solucin sea no acotada, debe darse:
e 0
d < 0
c > 0
b < 0

Problema 63 (Simplex (Ex 1 03)) Suponga el siguiente problema de maximizacin lineal:


P)

Max x1 + 2x2

s.a.

3x1 + x2 210
x1 + 3x2 150
x1 , x2 0

y que el tableau final es:


x2

Holg.1

Holg.2

1
0

0
1

3
8
1
8
1
8

1
8
3
8
5
8

x1

60
30
120

Indique en qu rango pueden moverse los valores c2 = 2 y b2 = 150 para que la base no cambie.

Solucin:

154

CHAPTER 3. PROGRAMACIN LINEAL


r = cTD cTB B 1 D



r = 0 1 c2

3 c2
+
8
8
1 3c2

8
8

3
8
1
8

1
8
3
8

3
8

c2
8

1
8

3c2
8

0 = c2 3
0 = c2

B 1 b =

1
3

1
c2 3
3

3
8
1
8

1
8
3
8

210
b2

b2
630
8 8
3b2
210
8 + 8

70 b2 630.
Problema 64 (Simplex (Ex 1 03, Preg. Especial I1)) Considere el siguiente problema de optimizacin:
P)

Max 6x + 4y

s.a.

x + 2y 2
2x + y 2
x, y 0

(a) Resuelva utilizando Simplex.


(b) Cul es la base y solucin factible inicial?
(c) Cul es la base y solucin ptima?
(d) En qu rango puede variar b1 sin que cambie la solucin ptima?
(e) Qu sucede si b2 = 5?

Solucin: (a) Reescribimos el problema:

P)

Max 6x + 4y

s.a.

x + 2y + z1 = 2
2x + y + z2 = 2
x, y, z1 , z2 0

3.5. PROBLEMAS RESUELTOS

155

Luego, planteamos el tableau y resolvemos:


x

z1

z2

1
2

2
1

1
0

0
1

2
2

z1

z2

0
1

3
2
1
2

1
0

1
2
1
2

1
1

Sale z2

z1

z2

0
1

1
0

2
3
1
3
2
3

1
3
2
3
8
3

2
3
2
3
20
3

Sale z1

Por lo tanto, x = 23 , y = 23 , z1 = 0, z2 = 0 y v = 20


3 .
1 0
.
(b) Base inicial: B = {z1 z2 } =
0 1
Solucin factible inicial: x = 0,y = 0, z1 = 2 y z2 = 2.
1 2
(c) Base ptima: B = {x y} =
.
2 1
Solucin ptima: x = 23 , y = 23 , z1 = 0 y z2 = 0.

 


b1
2
1
+ 43
b1
1
3
3
3
(d) xB = B b =
=
2b1
1
2
2
2
3
3
3 3
b1
4
3 + 3 0 = b1 + 4 0 4 b1 .
2b1
3

2
3

0 = 2b1 2 0 b1 1 0 b1 1.

1 b1 4.

(e) Si b2 = 5 :
2
2
3 + 3 b2
b2
4
3 3

0 = 1 + b2 0 b2 1.

0 = 4 b2 0 4 b2.

1 b2 4.

Si b2 = 5, vara la solucin ptima, y por lo tanto, cambia la base ptima y valor ptimo.

Problema 65 (Anlisis Matricial (I3 1 03)) Considere el siguiente problema de optimizacin.


P)

Max
s.a.

2x1 + 4x2 3x3


x1 + 2x2 + x3 3
2x1 x2 + 2x3 2
x1 , x2 , x3 0

(a) Utilizando exclusivamente anlisis matricial justifique si la base {x2 ; x3 } es ptima o no.

(b) Resuelva el problema P ) como ms le acomode.


Solucin: (a) Base = {x2 ; x3 }
r = cTD cTB B 1 D

156

CHAPTER 3. PROGRAMACIN LINEAL


2

R2

* = (2,0)
1
R1
Curva de Nivel ptima

R3

Figure 3.7: Solucin Grfica

r=
r=

2 0 0

4 3

2
5
1
5

1
5
2
5



1 1 0
2 0 1

5 1 2
Como no todos los costos reducidos son negativos, entonces la base {x2 ; x3 } no es ptima.
(b) Escribiendo el dual de P ) quedamos en dos dimensiones:
D)

Min 31 + 22

s.a.

1 + 22 2
21 2 4
1 + 22 3

(3.4)
(3.5)
(3.6)

1 , 2 0
Grficamente, como 1 = 0, la primera restriccin de P ) est activa. x1 + 2x2 + x3 = 3.
Se puede ver en P ) que x3 = 0 x1 + 2x2 = 3. Como el gradiente de esta restricin es igual
al de la funcin objetivo, cualquier combinacin convexa de x = ( 75 , 45 ) y x = (0, 32 ) ser una
solucin ptima.
Problema 66 Considere el siguiente problema
M ax 2x1 + 4x2 + 3x3
s.a. x1 + 2x2 4
x2 + 3x3 6
2x1 + x2 + 2x3 10
x1 , x2 , x3 0
a) Resuelva mediante el algoritmo Simplex, especificando la solucin y el valor ptimo.
b) Considere ahora que la tercera restriccin fuese 2x1 + x2 + 2x3 10. Resuelva nuevamente

3.5. PROBLEMAS RESUELTOS

157

considerando el mtodo de las dos fases.


c) Resuelva el problema considerando que la segunda restriccin fuese x2 + 3x3 2. Nota
algo especial? Interprete.
d) Si las constantes que acompaan a la variable en las restricciones fuesen todas negativas en
lugar de positivas, qu estara sucediendo?
e) Resuelva el problema considerando que la tercera restriccin fuese 2x1 + 4x2 + 3x3 10.
Nota algo especial? Interprete.

Solucin:
El criterio de parada de las iteraciones de Simplex en la bsqueda de un mximo, es que los
costos reducidos en el ptimo deben ser todos menores o iguales a cero. En el caso de un mnimo,
los costos reducidos en el ptimo sern mayors o iguales a cero.
a) Tras aadir las variables de holgura, el problema ser
Max 2x1 + 4x2 + 3x3
s.a. x1 + 2x2 + x4 = 4
x2 + 3x3 + x5 = 6
2x1 + x2 + 2x3 + x6 = 10
x1 , x2 , x3 , x4 , x5 , x6 0
Llevando este problema a un tableau se obtiene
x1

x2

x3

x4

x5

x6

bi

1
0
2

2
1
1

0
3
2

1
0
0

0
1
0

0
0
1

4
6
10

donde la base inicial es xB = {x4 , x5 , x6 } y las variables no-bsicas sern xB ={x1 , x2 , x3 }. Dado
que max {2, 4, 3} = 4, x2 entra a la base. Luego min {4/2, 6/1, 10/1} = 2, por lo que x4 sale de la
base. Pivoteando se obtiene el tableau
x1

x2

x3

x4

x5

x6

bi

1/2
-1/2
3/2

1
0
0

0
3
2

1/2
-1/2
-1/2

0
1
0

0
0
1

2
4
8

-2

-8

Se observa que an queda un costo reducido positivo, por lo que x3 entra ahora a la base. Para
buscar la variable saliente: min {, 4/3, 8/2} = 4/3, por lo que x5 sale de la base. Pivoteando

158

CHAPTER 3. PROGRAMACIN LINEAL

nuevamente, ahora se obtiene


x1

x2

x3

x4

x5

x6

bi

1/2
-1/6
11/6

1
0
0

0
1
0

1/2
-1/6
-1/6

0
1/3
-2/3

0
0
1

2
4/3
16/3

1/2

-3/2

-1

-12

5
6
2
32
Ahora x1 entra a la base. min 1/2
, , 16/3
11/6 = 11 , por lo que
obtiene
x1 x2 x3
x4
x5
x6
0
1
0
6/11
2/11 -3/11
0
0
1
-2/11 3/11 1/11
1
0
0
-1/11 -4/11 6/11
0

-16/11

-9/11

-3/11

x6 sale de la base. Pivoteando se


bi
6/11
20/11
32/11
-148/11

Todos los costos reducidos son menores o iguales a cero, por lo que se ha llegado al ptimo, que
)
*
6 20
148

estar dado por: (x1 , x2 , x3 , x4 , x5 , x6 ) = 32


11 , 11 , 11 , 0, 0, 0 y tendr valor ptimo v = 11 . Ya
que todas las holguras toman valor cero, las tres restricciones estarn activas en el ptimo.

b) Ya que la rectriccin es mayor o igual a cero, y no se puede invertir multiplicando por (-1)
ya que se requiere bi 0, i, se debe agregar una variable de exceso y luego una variable artificial,
para poder formar una base inicial. La restriccin ser entonces
2x1 + x2 + 2x3 x6 + y = 10
En la primera fase se busca Min y (Max y), sujeto a las mismas restricciones, buscando
idealmente que y adquiera valor cero. El tableau inicial para la primera fase ser
x1

x2

x3

x4

x5

x6

bi

1
0
2

2
1
1

0
3
2

1
0
0

0
1
0

0
0
-1

0
0
1

4
6
10

-1

3.5. PROBLEMAS RESUELTOS

159

Reescribiendo este tableau sumando la 4ta y 5ta fila, se obtiene


x1

x2

x3

x4

x5

x6

bi

1
0
2

2
1
1

0
3
2

1
0
0

0
1
0

0
0
-1

0
0
1

4
6
10

-1

10

Observando los costos reucidos de la primera fase, se aprecia una empate entre el de x1 y x3 .


Se escoje arbitrariamente a x3 para entrar a la base. min , 63 , 10
= 2, por lo que x5 sale de la
2
base. Pivoteando se obtiene
x1

x2

x3

x4

x5

x6

bi

1
0
2

2
1/3
1/3

0
1
0

1
0
0

0
1/3
-2/3

0
0
-1

0
0
1

4
2
6

1/3

-2/3

-1

-1

-6

Ahora x1 entra a la base. min

4

6
1 , , 2

x1
0
0
1

x2
11/6
1/3
1/6

x3
0
1
0

8/3

= 3, por lo que y sale de la base. Pivoteando se obtiene


x4
1
0
0

x5
1/3
1/3
-1/3

x6
1/2
0
-1/2

y
-1/2
0
1/2

bi
1
2
3

-1

-1/3

-1

-12

Ya que y ha salido de la base adquiriendo valor nulo, puede ser eliminada. As se pasa a la Fase
II donde se vuelve a la funcin objetivo inicial y se comienza con el tableau
x1
0
0
1

x2
11/6
1/3
1/6

x3
0
1
0

x4
1
0
0

x5
1/3
1/3
-1/3

x6
1/2
0
-1/2

bi
1
2
3

8/3

-1/3

-12

Ahora x2 entra a la base. min

1
2
3
11/6 , 1/3 , 1/6

6
11 ,

por lo que x4 sale de la base. Pivoteando

160

CHAPTER 3. PROGRAMACIN LINEAL

se obtiene
x1

x2

x3

x4

x5

x6

bi

0
0
1

1
0
0

0
1
0

6/11
-2/11
-1/11

2/11
3/11
-4/11

3/11
-1/11
-6/11

6/11
20/11
32/11

-16/11

-9/11

3/11

-148/11

5
6
Ahora x6 entra a la base. min 6/11
,
,

= 2, por lo que x2 sale de la base. Pivoteando se


3/11
obtiene
x1
x2
x3
x4
x5 x6 bi
0
0
1

11/3
1/3
2

0
1
0

2
0
1

2/3
1
0

1
0
0

2
2
4

-1

-22/11

-1

-14

Luego el punto ptimo ser (x1 , x2 , x3 , x4 , x5 , x6 ) = (4, 0, 2, 0, 0, 2) y tendr valor ptimo v =


14. Las dos primera restricciones estn activas en el ptimo, no as la tercera.

c) El problema ser
Max 2x1 + 4x2 + 3x3
s.a. x1 + 2x2 + x4 = 4
x2 + 3x3 + x5 = 2
2x1 + x2 + 2x3 + x6 = 10
x1 , x2 , x3 , x4 , x5 , x6 0
El tableau inicial pasara a ser
x1

x2

x3

x4

x5

x6

bi

1
0
2

2
1
1

0
3
2

1
0
0

0
1
0

0
0
1

4
2
10

donde la base inicial es xB ={x4 , x5 , x6 } y las variables no-bsicas sern xB ={x1 , x2 , x3 }. Dado
que max {2, 4, 3} = 4, x2 entra a la base. Luego min {4/2, 2/1, 10/1} = 2, pero se tiene un "empate"
entre x4 y x5 . Esto quiere decir que el dominio determinado por las restricciones esta sobredeterminado (hay una restriccin "de ms"). A esto se le llama una solucin degenerada. Se escoje

3.5. PROBLEMAS RESUELTOS

161

arbitrariamente que x4 salga de la base, donde pivoteando se obtiene


x1

x2

x3

x4

x5

x6

bi

1/2
-1/2
3/2

1
0
0

0
3
2

1/2
-1/2
-1/2

0
1
0

0
0
1

2
0
8

-2

-8

Se puede observar que la variable x5 , pese a estar dentro de la base, toma un valor nulo. Este
no es el ptimo. Estamos ante una solucin factible degenerada, que ser (x1 , x2 , x3 , x4 , x5 , x6 ) =
(0, 2, 0, 0, 0, 8) y tendr valor NO-ptimo v = 8.
d) El problema ser
Max 2x1 + 4x2 + 3x3
s.a. x1 2x2 + x4 = 4
x2 + 3x3 + x5 = 6
2x1 x2 + 2x3 + x6 = 10
x1 , x2 , x3 , x4 , x5 , x6 0
El tableau inicial pasara a ser
x1
1
0
2

x2
-2
-1
-1

x3
0
3
2

x4
1
0
0

x5
0
1
0

x6
0
0
1

bi
4
6
10

Dado que max {2, 4, 3} = 4, x2 entra a la base. Luego se tendra min {, , }, pues todos los
valores son negativos. Un caso como este seala que la solucin ptima no es acotada, pues x2 puede
seguir creciendo ilimitadamente (mejorando as la funcin objetivo), sin que se dejen de cumplir
las restricciones
e) El problema ser
Max 2x1 + 4x2 + 3x3
s.a. x1 + 2x2 + x4 = 4
x2 + 3x3 + x5 = 6
2x1 + 4x2 + 3x3 + x6 = 10
x1 , x2 , x3 , x4 , x5 , x6 0

162

CHAPTER 3. PROGRAMACIN LINEAL


Llevando este problema a un tableau se obtiene
x1

x2

x3

x4

x5

x6

bi

1
0
2

2
1
4

0
3
3

1
0
0

0
1
0

0
0
1

4
6
10

Dado que max {2, 4, 3} = 4, x2 entra a la base. Luego min {4/2, 6/1, 10/4} = 2, por lo que x4
sale de la base. Pivoteando se obtiene el siguiente tableau
x1

x2

x3

x4

x5

x6

bi

1/2
-1/2
0

1
0
0

0
3
3

1/2
-1/2
-2

0
1
0

0
0
1

2
4
2

-2

-8

Se observa que an queda un costo reducido positivo, por lo que x3 entra ahora a la base. Para
buscar la variable saliente: min {, 4/3, 2/3} = 2/3, por lo que x6 sale de la base. Pivoteando
nuevamente, ahora se obtiene
x1

x2

x3

x4

x5

x6

bi

1/2
-1/2
0
0

1
0
0
0

0
0
1
0

1/2
3/2
-2/3
0

0
1
0
0

0
-1
1/3
-1

2
2
2/3
-10

Se puede apreciar que los costos reducidos de las variables x1 y x4 , pese a que stas estn fuera
de la base, tienen valor nulo. La solucin ptima ser (x1 , x2 , x3 , x4 , x5 , x6 ) = (0, 2, 2/3, 0, 2, 0) y
tendr valor ptimo v = 10. Interesante es notar que sucede si se introduce x1 y/o x4 a la base.
Veamos que sucede al introducir x1 , sacando por ejemplo a x2 . Pivoteando se obtiene
x1

x2

x3

x4

x5

x6

bi

1
0
0

2
1
0

0
0
1

1
2
-2/3

0
1
0

0
-1
1/3

4
4
2/3

-1

-10

Se aprecia una solucin ptima alternativa, que tiene el mismo valor ptimo. As este es un
problema de mltiples soluciones. La solucin ptima general ser la combinacin lineal de todos
los vrtices ptimos que se encuentren a travs de Simplex.

3.5. PROBLEMAS RESUELTOS

163

Problema 67 Considere el siguiente problema


Min 3x1 + 2x2 3x3 6x4 + 10x5 5x6
s.a. x1 + 2x2 + x4 x6 = 11
x2 + x3 + 3x4 2x5 x6 = 6
x1 + 2x2 + x3 + 3x4 x5 5x6 = 13
xi 0, i = 1...6
Suponga que la variables bsicas en el ptimo son: x1 , x2 , x3 y que

B 1

1 2 2

= 1
1 1
1 0
1

Calcule los valores de las variables bsicas en el ptimo. Indique cmo puede comprobar que
sta es efectivamente la solucin ptima.
a) Suponga que se desea'introducir una
( nueva variable al problema, cuyo costo inicial es -7 y
cuya columna traspuesta es 1 2 3 . Indique si la solucin ptima obtenida se modifica por
este cambio.
b) Obtenga el rango del costo inicial de la variable x5 para el cual la solucin optima obtenida
sigue siendo ptima.
c) Repita lo anterior para la variable x1 .
d) Obtenga el rango en el que puede variar la constante de la primera restriccin para que
se mantenga la base ptima. Exprese el valor ptimo de la funcin objetivo en funcin de esa
constante, para el caso en que sta se mantiene dentro de ese rango.
e) Analice el rango de variacin de a2,5 para que la solucin siga siendo ptima.
Solucin:
En primer lugar, recordemos Simplex en su notacin matricial. El problema se puede escribir
como
Min cT x
s.a. Ax = b
x 0
Luego separamos las variables bsicas de las no-bsicas tomando x = xB + xD .

Min cTB xB + cTD xD


s.a. BxB + DxD = b
xB , xD 0

164

CHAPTER 3. PROGRAMACIN LINEAL


xB + B 1 DxD = B 1 b
xB = B 1 b B 1 DxD

Donde las variables no-bsicas tomarn valor nulo (xD = 0 ). As el valor de las variables
bsicas en el ptimo ser


1 2 2
11
3


1
xB = B b = 1
1 1 6 = 4
1 0
1
13
2
Para comprobar si sta es una solucin ptima se pueden calcular los costos reducidos de las
variables no bsicas comprobando si stos son mayores o iguales a cero.
a) Para esto debemos evaluar cunto sera el costo reducido de esta variable en el ptimo actual.
El valor ptimo est dado por
v

= cT x = cTB xB + cTD xD
v = cTB (B 1 b B 1 DxD ) + cTD xD

v = cTB B 1 b + (cTD cTB B 1 D) xD


1
23
4
Costo reducido

As,

r7 = c7 cTB B 1 D7 = 7

'

3 2 3

1 2 2
1

1 1 2 = 2 0
1
1 0
1
3

Como se est buscando un mnimo, y el costo reducido de la sptima variable es positivo, sta
se mantendr fuera de la base y el punto ptimo no cambiar.
b) Nuevamente se analizar el costo reducido de la variable x5 que est fuera de la base.
Suponiendo que se permite una variacin de en el costo inicial c5 , el costo reducido de sta
variable ser
r5

(c5 + ) cTB B 1 D5

r5 = 10 +

'

r5 = 3 + 0

3 2 3

1 2 2
0

1 1 2
1
1 0
1
1

3
c5 puede varar entre (7, ) sin que vare la solucin ptima.

3.5. PROBLEMAS RESUELTOS

165

c) Ya que x1 es una variable bsica, se debe estudiar cmo un cambio en c1 afectar el costo
reducido de las variables no-bsicas.

Caso 1)
r4

c4 cTB B 1 D4

r4 = 6

'

3 + 2 3

r4 = 1 + 0 1


1 2 2
1


1 1 3
1
1 0
1
3

Caso 2)
r5

c5 cTB B 1 D5

r5 = 10

'

3 + 2 3

r5 = 3 2 0 3/2

1 2 2
0

1 1 2
1
1 0
1
1

Caso 3)
r6

c6 cTB B 1 D6

1
2
2
1
'
(

r6 = 5 3 + 2 3 1
1 1 1
1 0
1
5

r6 = 2 + 7 0 2/7

As para que la solucin ptima no cambie se requiere 2/7 3/2.

d) El valor de las variables bsicas en el ptimo debe ser positivo, por lo que
xB

= B 1 b 0

xB + B 1 b 0

3
1 2 2

4 + 1
1 1 0 = 4 + 0
2
1 0
1
0
2
4 2

166

CHAPTER 3. PROGRAMACIN LINEAL


El cambio en el valor ptimo (asumiendo que se mantiene en este rango) ser
v

cTB B 1 b

v =

'

3 2 3

1 2 2

1 1 0 = 2
1
1 0
1
0

e) Esta variacin afectar el costo reducido de x5 , por lo que se debe buscar el rango tal que
logre que esta variable permanezca fuera de la base. As se ve que
r5

c5 cTB B 1 D5

r5 = 10

'

3 2 3

1 2 2
0

1 1 2 +
1
1 0
1
1

r5 = 27 8 0 27/8

Problema 68 (I3 1 03) Considere el problema de optimizacin


P)

Max

2x + 5y

s.a.

(x, y) D

x, y Z+

donde D es un dominio definido por desigualdades lineales. Suponga que al resolver el problema
relajado la solucin es x = 5/3, y = 2/3. Con la informacin dada encuentre la mejor cota
superior para P ), y justifique su respuesta.
Solucin: El valor ptimo del problema relajado es z =

20
3 ,

por lo que z = 6 sera la mejor

cota superior ya que los coeficientes de la funcin objetivo son nmeros enteros.

3.5.3

Dualidad

Problema 69 (Problema Dual (I3 1 03)) Considere el problema primal


Min
s.a.

c x
Ax b
x 0

3.5. PROBLEMAS RESUELTOS

167

donde x Rn . Formule el problema dual y luego convirtalo en uno equivalente de minimizacin.


Derive un conjunto de condiciones para la matriz A y los vectores b y c, bajo las cuales el problema dual sea idntico al primal. Por ltimo, construya un ejemplo donde estas condiciones sean
satisfechas.

Solucin:
P ) Min cT x
s.a. Ax b
x0

D) Max T b
s.a. AT c
0

 Min T b
D)
s.a. AT c
0

Condiciones:
i) c = b y ambos de igual dimensin.

ii) A es una matriz cuadrada tal que: A = AT , es decir, A tiene ceros en la diagonal y
/ diag(A).
aij = aij (i, j)
Ejemplo:

0 1 2

A = 1 0 3
2 3
0

1

c= 1
1

b = 1
1

P ) Min x1 + x2 + x3
s.a.

x2 2x3 1
x1 3x3 1
2x1 + 3x2 1
x1 , x2 , x3 0

D) Min 1 + 2 + 3
s.a.

2 + 23 1
1 + 33 1
21 32 1
1 , 2 , 3 0

P ) D).
Problema 70 Escriba el problema dual de los siguientes problemas:
2

168

CHAPTER 3. PROGRAMACIN LINEAL


a)
Min 2x1 + 3x2
s.a. x1 + 2x2 = 3
3x1 + 4x2 = 7
x1 + x2 = 2
xi 0, i = 1, 2
b)
Max 2x1 + 3x2 + x3
s.a. x1 + 4x2 + x3 15
x1 + x2 + x3 = 13
3x1 x2 x3 3
x1 0, x2 0, x3 libre

Solucin:
2
a)
Max 31 + 72 + 23
s.a. 1 + 32 + 3 2
21 + 42 + 3 3
i libres, i = 1, 2, 3
b)
Min 151 + 132 + 33
s.a. 1 + 2 + 33 2
41 + 2 3 3
1 + 2 3 = 1
1 0, 2 libre, 3 0

3.5. PROBLEMAS RESUELTOS

169

Problema 71 Considere el siguiente problema


Max 5x1 + 5x2 + 13x3
s.a. x1 + x2 + x3 20
12x1 + 4x2 + 10x3 90
xi 0, i = 1...3
a) Resuelva el problema utilizando anlisis grfico del dual, y luego anlisis matricial para
obtener la solucin del primal.
b) Desarrolle un anlisis de sensibilidad de la solucin ptima del problema, evaluando independientemente el impacto de cada uno de los siguientes cambios:
i) Cambio del lado derecho derecho de la primera resticcin al valor 30.
ii) Cambio en el lado derecho de la segunda restriccin al valor 70.
iii) Cambio del coeficiente de la tercera variable de la F.O. al valor 8.
iv) Cambio del coeficiente de la segunda variable de la F.O. al valor 6.
v) Introduccin de una nueva variable al modelo con coeficiente 10 en la F.O. y con coeficientes 3 y 5 en la primera y segunda restriccin respectivamente.
vi) Introduccin de una nueva restriccin al modelo: 2x1 + 3x2 + 5x3 100.
Solucin:
a) El problema dual ser
Min w = 201 + 902
s.a. 1 + 122 5
1 + 42 5
1 + 102 13
i 0, i = 1, 2
La ventaja de buscar la solucin grfica del dual, es que este problema es de dos dimensiones.
Realizando el anlisis gfrfico del problema dual se obtiene la solucin ptima: 1 = 0, 2 =
1.3, w = 117.
As el tableau del primal ser
x1

x2

x3

x4

x5

bi

-1.3

-117

Esto indica que x4 est en la base, por lo que x4 > 0 . Debemos buscar una variable ms

170

CHAPTER 3. PROGRAMACIN LINEAL

que pertenezca a la base entre x1 , x2 , x3 , pues se sabe que x5 no est en la base. Como la tercera
restriccin del problema dual est activa (ver grfico), entonces x3 > 0 , y como la1ra y 2da

1 1
restriccin estn inactivas, x1 , x2 = 0 . As la base ser xB = {x3 , x4 }, por lo que B =
10 0
. Entonces, la base en el ptimo tomar el valor
x=B

b=

0 1/10
1 1/10

 
20
9 x3
=
90
11 x4

y x1 , x2 , x5 = 0 .
b)
i)

30

x = B b > 0 con b =
90

 
0
1/10
30
9

= x = B 1 b =
=
> 0
90
21
1 1/10
1

ii)

20

x = B b > 0 con b =
70

 
0 1/10
20
7

1
= x = B b =
=
> 0
70
13
1 1/10
1

iii)
rj = cTj cTB B 1 Dj

r1

=
=

r2

r3

cT1 cTB B 1 D1



'
( 0 1/10
1
812
5 8 0
= 5
<0
10
1 1/10
12

cT2 cTB B 1 D2

 
'
( 0 1/10
1
32
= 5 8 0
=5
>0
10
1 1/10
4
x2 entra a la base.
=

=
=

cT3 cTB B 1 D3

 
'
( 0 1/10
0
8
0 8 0
= <0
10
1 1/10
1

As la base cambia, entrando a ella la variable x2 .

3.5. PROBLEMAS RESUELTOS

171

iv)
rj = cTj cTB B 1 Dj
r2

cT2 cTB B 1 D2

 
'
( 0 1/10
1
52
= 6 13 0
=6
>0
10
1 1/10
4
cambia la base, entrando x2 .
=

v)


3
c6 = 10, ai6 =
5
r6

cT6 cTB B 1 D6

 
'
( 0 1/10
3
65
= 10 13 0
= 10
>0
10
1 1/10
5
cambia la base, entrando x6 .
=

vi) La solucin ptima cumple la nueva restriccin, por lo que la solucin ptima no cambia.

Problema 72 Considere le siguiente problema de optimizacin


Max 40x1 + 60x2
s.a. 2x1 + x2 3
x1 + x2 40
x1 + 3x2 90
xi 0, i = 1, 2
a) Resuelva mediante el algoritmo Simplex
b) Plantee el problema dual y obtenga la solucin ptima a partir de la solucin del primal.

Solucin:
a) El tableau inicial ser
x1

x2

x3

x4

x5

bi

2
1
1

1
1
3

1
0
0

0
1
0

0
0
1

70
40
90

40

60

172

CHAPTER 3. PROGRAMACIN LINEAL


En la primera itercin, entar x2 a la base, y saldr x5 . El tableau quedar
x1

x2

x3

x4

x5

bi

5/3
2/3
1/3

0
0
1

1
0
0

0
1
0

-1/3
-1/3
1/3

40
10
30

20

-20

-1800

Ahora entrar x1 y saldr x4 de la base. El tableau final ser


x1

x2

x3

x4

x5

bi

0
1
0

0
0
1

1
0
0

-5/2
3/2
-1/2

1/2
-1/2
1/2

15
15
25

-30

-10

-2100

As la solucin ptima ser (x1 , x2 , x3 , x4 , x5 ) = (15, 25, 15, 0, 0), donde la segunda y tercera
restriccin estn activas y el valor ptimo es v = 2100.
b) El problema dual ser
Min 70y1 + 40y2 + 90y3
s.a. 2y1 + y2 + y3 40
y1 + y2 + 3y3 60
yi 0, i = 1, 2, 3
Observando el tableau final del problema primal, se puede observar que los valores que tomarn
las variables duales sern (y1 , y2 , y3 ) = (0, 30, 10). Adems se sabe que el valor ptimo no cambia
v = 2100. Ya que las variables asociadas a las restricciones del problema dual (x1 , x2 ) son diferentes
de cero en la solucin ptima del primal, las dos restricciones del dual estarn activas en el ptimo.
Problema 73 Una fbrica de juguetes produce camiones tolva, muecas, pelotas y conejitos inflables. Para ello utiliza una mquina inyectora de plstico, una mquina sopladora de plstico,
mano de obra especializada para decorara los juguetes y plstico. La Tabla 3.2 muestra el uso de
recursos por cada unidad de juguete fabricado y la capacidad disponible de cada recurso en un mes.
La solucin ptima se obtuvo computacionalmente; sin embargo, por problemas en el archivo
correspondiente se perdi parte de ella y slo se ha rescatado la siguiente informacin.
- El valor ptimo es $2.527.000
- Las mquinas inyectora y sopladora se utilizan a plena capacidad.
- Se tienen 11.240 minutos-hombre (mh) de mano de obra ociosos.
- Se tienen 944 kg de plstico ociosos (sin usar).

3.5. PROBLEMAS RESUELTOS

173

Camiones Tolva

Muecas

Pelotas

Conejitos

Disponibilidad

Inyectora (min)

10

3840

Sopladora (min)

0.5

4200

Mano de obra (mh)

0.5

18000

Plstico (kg)

0.5

0.3

0.6

3400

Beneficios ($)

3000

3500

350

1500

Table 3.2: Utilizacin de recursos y capacidad disponible


- Los valores de las variables duales son: 1 = 466.67, 2
- La base ptima es

1/6
0
0

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

1/60 6/10 0

= 700 y 3 = 4 = 0.
0
0
0
1

a) Reconstruya la solucin ptima a partir de la informacin rescatada.


b) Explique la solucin ptima: qu juguetes se fabrican?, cul es el beneficio total?, qu
recursos se utilizan completamente y cuales no?, etc.
c) En cunto debe aumentar el beneficio de los camiones tolva para que sea conveniente fabricarlos?
d) Cunto estara dispuesto a pagar por tiempo adicional en la mquina inyectora? y en la
sopladora?
e) Se est estudiando la posibilidad de reemplazar la mquina inyectora por una ms moderna
que tiene mayor confiabilidad. El precio de ella es $4.000.000 y permite aumentar la capacidad de
inyeccin en 20% cuntos meses se requieren para recuperar la inversin?
Solucin:
a) El problema primal ser
Max 3000x1 + 3500x2 + 350x3 + 1500x4
s.a.10x1 + 6x2 + x4 3840
x2 + 0.5x3 + 5x4 4200
2x1 + 5x2 + 0.5x3 + 3x4 18000
2x1 + 0.5x2 + 0.3x3 + 0.6x4 3400
xi 0, i = 1, ...4
Se asocian variables de holgura x5 , x6 , x7 , x8 a cada una de las restricciones.
Con los datos entregados se puede deducir que:
- el valor ptimo es $2.527.000.
- x5 , x6 = 0 en el ptimo.

174

CHAPTER 3. PROGRAMACIN LINEAL


- x7 = 11240 en el ptimo.
- x8 = 944 en el ptimo.
- x5 , x6 estn fuera de la base, mientras que x7 , x8 estn dentro de ella, en el ptimo.

- Falta buscar las otras 2 variables que pertenecen a la base. Para esto, invertiremos la
matriz B 1

6
0 0 0

1 0.5 0 0

= B =

5 0.5 1 0
0.5 0.3 0 1
As, las variables que pertenecen a la base son: x2 , x3 , x7 , x8 .

Para obtener el valor de stas variables en el ptimo, se calcula

x2
x3
x7
x8

= B 1 b =

1/6
0
1/3
2
2/3
1
1/60 6/10

0
0
1
0

0
0
0
1

3840
4200
18000
3400

640
820
11240
944

con x1 , x4 , x5 , x6 = 0 y un valor ptimo de $2.527.000.


b) Se fabricarn 640 muecas y 820 pelotas, y ningn camin tolva o conejito. Se utilizar toda
la capacidad de las mquinas inyectoras y sopladoras (restricciones activas), pero la capacidad de
mano de obra y plstico no ser utilizada en su totalida (restricciones inactivas). El benefcio total
estar dado por el valor ptimo de $2.527.000.
c) Para estudiar la sensibilidad del costo de los camiones tolva, se estudia el costo reducido de
la variable x1 . Para esto se busca tal que el costo reducido de la variable se vuelva positivo, y
as la variable entre a la base:
r1 = cT1 cTB B 1 D1
= 3000 +

'

3500 350 0 0

= 1666.67 + > 0 = > 1666.67

1/6
0
1/3
2
2/3
1
1/60 6/10

0
0
1
0

0
0
0
1

10
0
2
2

As el beneficio aportado por cada camin tolva debera ser mayor que 4666.67 para que fuera
conveniente fabricarlos.
d) Para esto, se estudia en cunto afecta un cambio en las disponibilidad del recurso a la funcin
objetivo: la ganancia generada en este caso. En primer lugar se estudiar el rango en el que puede

3.5. PROBLEMAS RESUELTOS

175

variar la disponibilidad de la mquina inyectora:

x2
x3
x7
x8

1
=B b =

1/6
0
1/3
2
2/3
1
1/60 6/10

640 + 1 /6

820 1 /3
=
11240 2 /3
1

944 + 1 /60

0
0
1
0

0
0
0
1

3840 + 1
4200
18000
3400

>0

= 1 > 3840, 1 < 2460, 1 < 16860, 1 > 56640


= 3840 < 1 < 2460
Ahora, por una unidad de tiempo adicional, 1 = 1, el aumento de beneficio generado ser:
(benef icio) = 3500 1/6 + 350 1/3 = 466.67, por lo tanto, ste ser el mximo que estara
dispuesto a pagar por una unidad de tiempo adicional en la mquina inyectora.
Siguiendo el mismo proceso para la mquina sopladora, se tiene

x2
x3
x7
x8

= B 1 b =

1/6
0
1/3
2
2/3
1
1/60 6/10

640

820 + 22
=
11240
2

944 62 /10

0
0
1
0

0
0
0
1

3840
4200 + 2
18000
3400

>0

= 2 > 410, 2 < 11240, 2 < 1573.33


= 410 < 2 < 1573.33
Ahora, por una unidad de tiempo adicional, 2 = 1, el aumento de beneficio generado ser:
(benef icio) = 350 2 = 700, por lo tanto, ste ser el mximo que estara dispuesto a pagar por
una unidad de tiempo adicional en la mquina sopladora.
Notar que el aumento en los beneficios generado por un aumento, en una unidad, de la capacidad de alguno de los recursos que restringen el problema (restricciones activas), coincide con los
costos reducidos de las variables de holgura de la restriccin correspondiente. Esto concuerda con
la idea de que los costos reducidos representan al multiplicador de Lagrange de la restriccin, que
indica cunto vara la funcin objetivo al variar en una unidad la disponibilidad del recurso.

176

CHAPTER 3. PROGRAMACIN LINEAL

e) Si se aumena la capacidad de inyeccin en un 20% = 1 = 768 . El cambio en el beneficio


generado mensualmente ser: (benef icio) = 35001 /6+3501 /3 = 358400. As el nmero
de meses necesario para recuperar la inversin ser: $4.000.000/$358.400 = 11.16 meses.

Вам также может понравиться