0% encontró este documento útil (0 votos)
551 vistas182 páginas

Libro de Investigacion de Operaciones - Liberman

Este documento presenta una introducción a varios temas relacionados con la optimización matemática. Incluye una lista de ejemplos de problemas de optimización como el problema del transporte, la dieta, el sistema de andamiaje y la estimación de potencia en un circuito eléctrico. También describe brevemente el diseño de un sólido en movimiento dentro de un fluido como un problema de optimización. El objetivo general es mostrar la variedad de problemas prácticos que pueden abordarse usando técnicas de optimización y preparar al lector para

Cargado por

Nicolas Mañas
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
551 vistas182 páginas

Libro de Investigacion de Operaciones - Liberman

Este documento presenta una introducción a varios temas relacionados con la optimización matemática. Incluye una lista de ejemplos de problemas de optimización como el problema del transporte, la dieta, el sistema de andamiaje y la estimación de potencia en un circuito eléctrico. También describe brevemente el diseño de un sólido en movimiento dentro de un fluido como un problema de optimización. El objetivo general es mostrar la variedad de problemas prácticos que pueden abordarse usando técnicas de optimización y preparar al lector para

Cargado por

Nicolas Mañas
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 182

Índice general

1. Introducción 3
1.1. Algunos Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. El entorno matematico . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3. La variedad de los problemas de optimización . . . . . . . . . . . 12
1.4. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2. Programación Lineal 19
2.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2. El metodo simplex . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.3. Dualidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.4. Algunos asuntos practicos . . . . . . . . . . . . . . . . . . . . . . 39
2.5. Programación entera . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

3. Programación no lineal 55
3.1. Problema modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.2. Multiplicadores de Lagrange . . . . . . . . . . . . . . . . . . . . . 57
3.3. Condiciones de optimalidad Karush-Kuhn-Tucker . . . . . . . . . 64
3.4. Convexidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.5. Dualidad y convexidad . . . . . . . . . . . . . . . . . . . . . . . . 79
3.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

4. Tecnicas de Aproximación 87
4.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
4.2. Métodos de busqueda lineal . . . . . . . . . . . . . . . . . . . . . 89
4.3. Metodos de gradiente . . . . . . . . . . . . . . . . . . . . . . . . 91
4.4. Metodos de Gradiente Conjugado . . . . . . . . . . . . . . . . . . 94
4.5. Aproximación bajo restricciones . . . . . . . . . . . . . . . . . . . 98
4.6. Comentarios Finales . . . . . . . . . . . . . . . . . . . . . . . . . 104
4.7. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

5. Problemas Varacionales y Programación Dinamica 109


5.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
5.2. La ecuación de Euler-Lagrange: Ejemplos . . . . . . . . . . . . . 111

1
2 ÍNDICE GENERAL

5.3. La ecuación de Euler-Lagrange: Justificación . . . . . . . . . . . 121


5.4. Condiciones Naturales de Frontera . . . . . . . . . . . . . . . . . 124
5.5. Problemas variacionales bajo condiciones integrales y puntuales . 126
5.6. Resumen de las restricciones para problemas variacionales . . . . 132
5.7. Problemas variacionales de diferente orden . . . . . . . . . . . . . 135
5.8. Programación Dinamica: La ecuación de Bellman . . . . . . . . . 139
5.9. Ideas basicas en la aproximación númerica . . . . . . . . . . . . . 143
5.10. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

6. Control Óptimo 151


6.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
6.2. Multiplicadores y el Hamiltoniano . . . . . . . . . . . . . . . . . 152
6.3. El principio de Pontryagin . . . . . . . . . . . . . . . . . . . . . . 158
6.4. Otro Formato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
6.5. Algunos Comentarios en la Aproximación Numérica . . . . . . . 174
6.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Capı́tulo 1

Introducción

1.1. Algunos Ejemplos


Creemos que no hay mejor manera de convencer al lector del interes y la
aplicabilidad de ciertas ideas o tecnicas matematicas que mostrar el tipo de
problemas practicos que pueden ser abordados y eventualmente resueltos usando
estas ideas. Al mismo tiempo, esta lista inicial de ejemplos y problemas es una
clara muestra de los objetivos del texto. Algunos de los ejemplos pueden no ser
entendibles en una primera lectura, lo cual no debe preocupar a nuestros lectores
ya que insistitemos en ellos a traves de este capitulo y su significado estara mas
claro al final del mismo. La mayoria de los ejemplos que estudiaremos son muy
conocidos y academicos, en el sentido que el tamao de los problemas reales no es
comparable con las situaciones que estudiaremos. Versiones mas completas de
estos problemas pueden ser encontradas en textos mas avanzados. Sin enbargo,
consideramos que las ideas planteadas con estos daran al lector las herramientas
basicas para situaciones mas realistas.
El problema del transporte Se va a enviar cierto producto en cantidades
u1 , u2 , . . . , un desde n estaciones de servicio a m destinatarios, donde se deben
recibir en cantidades v1 , v2 , . . . , vm Vease figura 1.1. Si el costo de enviar una
unidad de producto desde el origen i al destino j es cij , determine la cantidad
xij a enviar del origen i al destino j de tal manera que el costo total de trans-
porte es minimo.

El problema de la dieta Se conocen los contenidos nutricionales asi como


los precios de ciertos alimentos. Asi tambien la cantidad minima requerida de
cada nutriente. La tarea consiste en determinar la cantidad de cada alimento
que se debe adquirir de tal manera que se obtenga la cantidad minima de cada
nutriente y que el costo total de la dieta sea el menor posible.

El sistema de andamiaje Considere el sistema de andiamaje de la figura


1.2, donde las cargas x1 y x2 son aplicadas a ciertos puntos de las vigas 2 y

3
4 CAPÍTULO 1. INTRODUCCIÓN

3 respectivamente. Las cuerdas A y B pueden soportar como maximo 300 kg


cada una, las cuerdas C y D pueden soportar 200 kg cada una, y las cuerdas
E y F , un maximo de 100 kg cada una. Encontrar la carga maxima x1 + x2
que puede soportar el sistema manteniendo equilibrio de fuerzas y equilibrio de
momentos, las cargas optimas x1 y x2 , y los puntos optimos donde deben ser
aplicadas. Asumiendo que el peso de las cuerdas y de las vigas es despreciable.

Estimacion de la potencia en un circuito Las variables de estado en


una red electrica son los voltajes en cada nodo de la red, cada uno un numero
complejo con modulo vi y argumento δi . Las potencias activas y reactivas en la
coneccion entre los nodos i y j esta dada por:

vi2 vi vj
pij = cos θij − cos(θij + δi + δj )
zij zij
vi2 vi vj
pij = sin θij − sin(θij + δi + δj )
zij zij

donde el modulo zij y la fase θij determinan la impedancia de la linea ij. Si


poseemos mediciones experimentales v¯i ,p¯ij ,q¯ij de los respectivos valores vi ,pij y
p q
qij , y los parametros del error en la medición son kiv , kij y kij respectivamente,
estimar el estado de la red minimizando, en las variables vi el error medio
cuadratico de las mediciones disponibles con respecto a los valores predichos de
tal manera que las anteriores formulas se cumplan de la mejor forma posible.

Diseño de un solido en movimeinto Se desea diseñar un solido con


simetria radial alrededor de cierto eje que debe viajar en linea recta con velocidad
constante dentro de un fluido. Si la densidad del fluido es lo suficientemente
pequea, entonces el modulo de la presion normal en la dirección de la normal
exterior a la superficie del cuerpo ejrcida por el fluido sobre el solido esta dada
por:
p = 2ρv 2 sin2 θ
donde ρ y v son la densidad y la valocidad del fluido relativo al solido (ambas
constantes), y θ es el angulo formado por el tangente de el perfil de la superficie
en el plano xy y la velocidad del fluido (ver figura 1.3). ¿Comó podemos encon-
trar el perfil optimo del solido para minimizar la presión que ejerce el fluido en
este?

Diseño de un canal Los canales son un tipo particualar de dispositivo para


transportar fluidos. Normalmente el fluido no ocupan todo el canal (Figura 1.4)
y en general las perdidas se originan en las paredes. En un modelo especifico la
fricción puede ser aproximada por:
1 3,7Dh
√ = 2 log
f e

donde f es el coeficiente de fricción. Dh es el llamado diametro hidraulico, y e


1.1. ALGUNOS EJEMPLOS 5

representa una medida de rugosidad. Mas aun, tenemos:


A
Dh = 4Rh , Rh =
P
Donde A es el area de la sección transversal del canal ocupada por el fluido,
y P es el perimetro alcanzado por la misma sección transversal de fluido. Si
asumimos que A es fijo, el objetivo del problema es determinar la forma de la
sección transversal del canal que minimizara las perdidas de fluido a traves de
las paredes.

El constructor de botes Un constructor de botes tiene los siguientes com-


prmisos durante el ao: Al final de Marzo un bote, en Abril dos, en Mayo 5, al
final de Junio 3, durante Julio 2 y en Agosto 1. El puede contruir como maximo
cuatro botes por mes, y puede tener en “stock” como maximo tres. El costo de
cada bote es 10.000 euros, mientras que mantener uno en “stock” cuesta 1.000
euros mensuales. ¿Cuál es la estrategia optima para contruir los botes y mini-
mizar los costos?

Oscilador armonico con frición El control de superficie en un objeto


volador debe ser mantenida en equilibrio en cierta posición. Las fluctuciónes
mueven la superficie, y si no son contrarestadas, esta vibrará cumpliendo la
siguiente ecuación:
θ00 + aθ0 + w2 θ = 0
donde θ es el angulo medido desde la posición de equilibrio deseado, y a y w
son constantes dadas. Un servomecanismo aplica un toque que cambia el com-
portamiento de la oscilación a:

θ00 + aθ0 + w2 θ = u

donde el control u debe estar acotado (i.e |u(t)| ≤ C). El problema consiste en
determinar el parametro del servomecanismo u(t) de tal manera que la superfi-
cie regrese a reposo θ = θ0 = 0 desde un estado arbitrario θ = θ0 , θ0 = θ00 en
tiempo minimo.

El problema de la posición Cierto objeto movil en el plano es controlado


por dos parametros: La magnitud de la aceleración γ y la razon de cambio del
angulo de rotación θ0 . Si asumimos que γ y θ0 se les permite moverse en los
inervalos [−a, a], [−α, α] respectivamente, determinar la estrategia optima para
llevar el objeto movil desde unas condiciones inicales, al reposo en el origen.

A pesar que la colección de problemas y ejemplos puede ser ampliada consid-


erablemente (incluyendo ejemplos mas cercanos a la realidad o a las situaciones
tecnologicas o de ingenieria), los anteriormente mencionados nos dan la idea
que estamos frente a un tema de caracter aplicado. Aprenderemos a enfrentar
y resolver estos problemas y muchos otros en los siguientes capitulos. Una vez
se hallan entendido estas ideas, el lector sera capaz de analizar y resolver por
6 CAPÍTULO 1. INTRODUCCIÓN

si mismo muchas otras situaciones que se originan en la ciencia y la tecnolo-


gia. Tambien podria profundizar su conocimiento de una clase particular de
problemas consultando textos mas avanzados en esa area.

1.2. El entorno matematico


Los ejemplos de la sección anterior son aparentemente muy diferentes entre
si, pero sin embargo todos comparten algo en comun que les permite que se les
presente en este libro. En todas estas situaciones estamos buscando una solucion
optima, la mejor manera de hacer las cosas, la mas eficiente, el proceso mas eco-
nomico. Debido a esto, todas las ideas que se han desarrollado durante los años
para examinar estos problemas pueden ser puestas bajo la categoria de OPTI-
MIZACIÓN. Sin embargo los problemas anteriores son muy diferentes los unos
de los otros, y las tecnicas para resolverlos o aproximar sus soluciones reflejan
esta misma variedad. No se espera que en este momento los lectores descubran
estas diferencias por si mismos, estas diferencias, incluso mas antes de colocar-
las de una forma mas precisa, cuantitativa reflejan fielmente cada situacion y
permiten un tratamiento adecuado llevando a la solución o a una buena aproxi-
mación numerica de esta. Este proceso de ir desde la formulación en palabras de
una situacion particular a su formulacion en tarminos matematicos precisos es
de tal importancia que la imcapacidad de llevarlo a cabo correctamente puede
llevar a respuestas absurdas a los problemas. El exito al usar cierta tecnica de
optimizacion depende claramente de este paso.
La formulación del problema en terminos matematicos precisos debe refle-
jar exactamente lo que se desea resolver. En particular, cuando se trabaja con
problemas de optimización hay dos pasos importantes a seguir. Primero, la fun-
ción objetivo o costo debe reflejar de forma veraz nuestra idea de optimo. Una
solucion deseable debe tener el menor (o mayor) costo funcional, ser un tiempo
minimo, una mayor eficiencia, mayores beneficios, perdidad minimas, etc. Si nue-
stro funcional de costo no refleja correctamente nuestro criterio de optimización,
la solución final no sera presumiblemente la solución optima buscada. Segun-
do, es igualmente importante establecer de forma explicita las restricciones que
deben ser impuestas en el problema, de tal forma que las soluciones admitibles
son verdaderamente posibles en nuestro problema o situación. De nuevo, si estas
restricciones no son escritas de forma adecuada, algunas de ellas son olvidadas
o estamos imponiendo demasiadas de manera que somos demasiado restrictivos,
nuestra respuesta final puede no ser lo que estamos buscando. Con el objetivo
de enfatizar estos puntos vamos a tratar sucesivamente, los problemas anteriores
y dar su formulación matematica. Antes de proceder a la tarea, mencionemos
algunas cosas que hay que tener presentes cuando se enfrenta alguna situacion
particular.
Hemos enfatizado la importancia de la trancisión de un problema de opti-
mización, a menudo dado en plabras, a su formulación cuantitativa precisa que
nos permitira eventualmente resolver el problema. Los cientificos y los ingerieros
deberian volverse expertos en este proceso. Algo que no se debe olvidar cuando
1.2. EL ENTORNO MATEMATICO 7

se esta planteando o replanteando una situación es insistir que en cada estado


de la formulación se vea reflejado nuestro objetivo original de tal manera que
la conección entre la situación a ser resuelta y su formulación este siempre allı́.
Esto requiere una actitud activa con respecto a la formulación o reformulación
de un problema particular hasta que hallamos interpretado cada aspecto de la
situación.
Para evitar que estos comentarios sean inutiles nos atrevemos a dar las sigu-
ientes recomentaciones a aquellos enfrentandose a un problema de optimización.

Entendiendo el criterio de optimización Debe haber un entendimien-


to claro del objetivo y de la manera la cual la optimalidad va a ser medida. En
particular, la desición de cuales variables depende el costo y las restricciónes so-
bre las mismas es crucial. Un problema puede ser planteado de varias maneras
distintas, y es importante distinguir cual de estas es la forma mas eficiente de
plantearlo. Es importante revisar los valores extremos de las variables (y otros
valores relevantes) y si el costo asiciado es coherente con lo esperad. Este tipo
de analisis usualmente lleva al descubrimiento de errores acerca del problema,
y a una revisión de las variables, restricciones y funcional objetivo.

Entendiendo las restricciones Las restricciones que vinculan las vari-


ables de distintas maneras son igualmente significativas. Estas pueden ser de
naturaleza muy diferente: igualdades, desigualdades, equaciones diferenciales,
restricciones integrales, etc. Estas pueden estar ocultas de muchas maneras, en
ocaciones de forma explicita o implicita. Lo que es importante es analizar las
relaciones entre las variables y las restricciones que se deben respetar. En partic-
ular las igualdades pueden ser utilizadas para disminuir el numero de variables.
La misma actitud descrita anteriormente nos debe llevar a revisar las restric-
ciones y su coherencia con respecto a la situacion que deseamos examinar.

Reflejando la formulación precisa Una vez se hallan cubierto los dos


pasos anteriores, vale la pena revisar la formulación matematica del problema.
¿Son las resticciones coherentes? ¿Podrı́a el conjunto de soluciones aceptables
estar vacio? ¿Podrian algunas de las restricciones ser simplificadas o eliminadas
porque algunas de las restricciones son mas fuertes que otras? ¿Puede el cos-
to hacerse tan pequeño como se quiera sin violar las resticciones? Si es asi es
posible que hallamos olvidado alguna restricción. ¿Podemos anticipar si hay una
unica solución optima o si hay varias?

Analisis rapido de la solución Finalmente, es buena idea acostumbrarse


a examinar brevemente la solución optima que se ha obtenido o aproximado.
¿Parece que ofrece el minimo costo, maxima eficiencia, etc.? ¿Es posible que esta
en realidad es una solucion optima? ¿Esta refleja la optimalidad con respecto a
las condiciones del problema inicial? ¿Esta cumple con todos los requerimientos?

Como dice el dicho “La practica hace al maestro”, y los problemas y tecnicas
de optimización no son la exepción. Los ejercicios y problemas ayudaran a los
8 CAPÍTULO 1. INTRODUCCIÓN

estudiantes a ir a traves de todos los pasos descritos anteriormente de forma


radida y acertada. Al principio habra inseguridad, errores, ineficiencia, falta de
ideas para superar dificultades etc, pero a medida que los estudiantes dominan
estos aspectos iran creando auto-confianza.
A continuación damos la formulación precisa de los diferentes problemas
propuestos en la sección anterior. Les pedimos a los estudiantes que trabajen en
entender la conección entre la formulación original del problema y su traducción
a ecuaciones, formulas, desigualdades, igualdades etc. Este proceso normalmente
incluye desarrollar el modelo para la situación dada. En algunos casos simples,
el modelo sera lo suficientemente claro, y no surgira ninguna dificultad para
poner el problema en una forma apropiada. En otros sin embargo puede haber
un a dificultad inicial para entender los mecanismos asociados con una situación
especifica, y se requerira un esfuerzo adicional para comprender su siginificado
y alcanzar una formulación precisa.
El problema del transporte Si xij es la cantidad de producto enviado
desde la posición inicial i al destino j, el costo total sera:
X
cij xij
i,j

si cij es el costo de enviar una unidad de producto de i a j. ‘?Cualés son las


restricciones que tenemos que respetar? Para un punto de servicio fijo i, ui es
la cantidad a ser enviada, asi que
X
xij = ui , i = 1, 2, . . . , n
j

de igual manera, para cada destino fijo se debe recibir la cantidad vj , esto nos
obliga a
X
xij = vj , j = 1, 2, . . . , n
i

Hay que notar que estos dos conjuntos de igualdades son compatibles si
X X
ui = vj
i j

que es una restricción que los datos del problema deben cumplir para que el
problema tenga sentido. Ademas, si damos por dado que el hecho de ser un
punto de servicio o un destino no puede er revertido debemos pedir que

xij ≥ 0, para todo i, j

Ahora lo que estamos buscando es:


X
Minimizar cij xij
i,j
1.2. EL ENTORNO MATEMATICO 9

bajo
X
xij = ui , i = 1, 2, . . . , n
j
X
xij = uj , j = 1, 2, . . . , m
i
xij ≥ 0 para todo i, j

El problema de la dieta Sea xi la cantidad de comida i que se va a


comprar. El costo total que que quisieramos es
X
ci xi
i

si ci es el precio de una unidad de comida i. Sea aij el contenido del nutri-


ente j por unidad de comida i, y bj la cantidad minima requerida del nutriente
j. Entonces debemos asegurarnos que en la dieta que escojamos cumple este
minimo: X
aij xi ≥ bj , para todo j
i

Finalmente debemos pedir que cada xi es no negativo:

xi ≥ 0, para todo i

El problema es: X
Minimizar ci xi
i

sujeto a:
X
aij xi ≥ bj , para todo j
i
xi ≥ 0, para todo i

El sistema de andamiaje Si notamos por TA , TB , TC , TD , TE y TF


las tensiones en cada cuerda cuando llevan cargas x1 y x2 aplicadas en los
puntos ubicados a x3 y x4 unidades de distancia de el borde izquierdo de la
respectiva viga, las condiciones de equilibrio de fuezas y momentos nos llevan a
las equaciones

TE + TF = x2 , 8TF = x4 x2 ,
TC + TD = x1 + TE + TF , 10TD = x3 x1 + 2TE + 10TF ,
TA + TB = TC + TD , 12TB + 2TC + 12TD .
10 CAPÍTULO 1. INTRODUCCIÓN

Si ahora expresamos las diferentes tensiones en cada cuerda con respecto a nues-
tras variables de diseño xi tenemos
x2 x4 8x2 − x2 x4
= TF ≤ 100, = TE ≤ 100,
8 8
2x2 + x1 x3 + x2 x4 10x1 + 8x2 − x1 x3 − x2 x4
= TD ≤ 200, = TC ≤ 200,
10 10
2x1 + 4x2 + x1 x3 + x2 x4 10x1 + 8x2 − x1 x3 − x2 x4
= TB ≤ 300, = TA ≤ 300.
12 12
por lo tanto se deben complir estas desigualdades. Ademas debemos pedir que

x1 ≥ 0, x2 ≥ 0, 0 ≤ x3 ≤ 10, 0 ≤ x4 ≤ 8

El problema es entonces.

Maximizar x1 + x2

sujeto a:

x1 ≥ 0, x2 ≥ 0,
0 ≤ x3 ≤ 10, 0 ≤ x4 ≤ 8,
x2 x4 ≤ 800, 8x2 − x2 x4 ≤ 800,
2x2 + x1 x3 + x2 x4 ≤ 200, 10x1 + 8x2 − x1 x3 − x2 x4 ≤ 3600.

Estimacion de la potencia en un circuito En este ejemplo se nos pide


minimizar el error medio cuadratico de ciertas medidas con respecto a los valores
predichos. Especificamente buscamos
X XX p XX q
Minimizar kiv (vi − v¯i )2 + kij (pij − p¯ij )2 + kij (qij − q¯ij )2
i∈Ω i∈Ω j∈Ωi i∈Ω j∈Ωi

donde los distintos datos estan dados en el enunciado y


vi2 vi vj
pij = cos θij − cos(θij + δi + δj )
zij zij
vi2 vi vj
pij = sin θij − sin(θij + δi + δj )
zij zij
Las variables desconocidas son (vi , δi ) y no tenemos una restricción especifica
en esto. Aqui Ω es el conjunto de nodos, Mientras que Ωi es el conjunto de
aquellos conectados al nodo i.

Diseño de un solido en movimiento De acuerdo a nuestra explicaión


anterior y al digrama correspondiente, el componente paralelo al eje x de la
presión normal en un punto de la superficie del solido es

ρ sin θ = 2ρv 2 sin3 θ


1.2. EL ENTORNO MATEMATICO 11

La presión total en una rebanada de ancho dx sera el producto de la expresión


anterior con la superficie lateral de la rebanada.
p
dP = 2ρv 2 sin3 θ2πy(x) 1 + y 0 (x)2 dx
si un perfil dado es obtenido rotando la grafica de la función y(x), y escribimos
sin θ en terminos de tan θ = y 0 (x) obtenemos
y 0 (x)3 p
dP = 2ρv 2 2π 3 y(x) 1 + y 0 (x)2 dx
(1 + y 0 (x)2 ) 2
o simplificando
y(x)y 0 (x)3
dP = 4πρv 2 dx
1 + y 0 (x)2
y estamos interesados en encontrar el perfil y(x) que minimice la integral ante-
rior entre todas las funciones (continuas) que satisfagan y(0) = 0, y(L) = R.

Diseño de un canal Dado que las perdidas en las paredes del canal son
proporcionales al inverso del perimetro, para un area de sección dada fija, el
mejor perfil es el que tiene el menor perimetro posible. Mas especificamente
estamos buscando el perfil y(x) que minimiza la integral.
Z Rp
1 + y 0 (x)2 dx
0

que da la longitud de la grafica de y(x), sujeto a


Z R
y(0) = 0, y(R) = 0, y(x)dx = A
0

El constructor de botes Este problema es suficientemente claro y no es


necesario una explicacion mas clara.

El oscilador armonico con fricción En este ejemplo, el mejor control


u(t) es aquel que lleva la superficie oscilatoria al reposo lo mas pronto posible y
al mismo tiempo cumple la restricción en el tamaño |u(t)| ≤ C

El problema de la posición Un objeto movil en el plano puede ser contro-


lado por dos parametros a nuestra disposición, r1 y r2 , expresando el modulo de
cambio de velocidad y rapidez con la cual la dirección del movimiento se puede
cambiar (velocidad angular del movimiento) respectivamente. Las ecuaciones de
movimiento son
x00 (t) = r1 (t) cos(θ(t)), y 00 (t) = r1 (t) sin(θ(t)), θ0 (t) = r2 (t)
Las restricciones en los pares aceptables (r1 , r2 ) se escriben requiriendo que
(r1 , r2 ) ∈ [−a, a]x[−α, α]
12 CAPÍTULO 1. INTRODUCCIÓN

El objetivo es cambiar la posición del objeto en reposo (x0 (0) = y 0 (0) = 0) desde
un punto arbitrario (x0 , y0 ). Al origen en un tiempo minimo

x(T ) = y(T ) = x0 (T ) = y 0 (T ) = 0

done T es lo mas pequenõ posible.

1.3. La variedad de los problemas de optimización


Hemos hecho notar, y es probable que el lector haya notado, las inmensas
diferencias entre los distintos tipos de problemas de optimización. Estas difer-
encias han motivado la estructura de este texto.
Posiblemente la diferencia mas significativa esta en el hacho que en algunos
problemas son vectores los que describen soluciónes y soluciones optimas. Mien-
tras que en otros casos son funciones lo que se necesita para plantear y resolver
el problema. Esta distincion importante profunda y cualitativa da lugar a difer-
entes tecnicas de optimizacion usadas en estas dos categorias de problemas. La
situación es similar al caso de ecuaciones o sistemas de ecuaciones en los cuales
buscamos un vector como solución, o sea simplemente numeros, y a ecuaciones
diferenciales donde la incognita es una función. En el primer caso hablamos
de programación matematica; en el segundo acerca de problemas variacionales.
Siguiendo con esta clasificación la programación matematica se puede dividir
en programación lineal (Capitulo 2), que trabaja en el mundo (mas simple) de
los problemas lineales, y programación no lineal (Capitulo 3) para las complejas
tecnicas de optimización no lineal. Los problemas del transporte y de la dieta
corresponden a programación lineal, mientras que los problemas del andamiaje
y la estimación del circuito corresponden a la programación no lineal.
Las situaciones donde intentamos hallar funciones optimas para una situa-
cion dada pueden ser clasificadas en problemas variacionales (Capitulo 5), pro-
gramación dinamica y control optimo (Capitulo 6). Los problemas de diseño
de un solido en movimiento, el de diseño del canal y del constructor de botes
corresponden a problemas variacionales y programación dinamica. El ,oscilador
armonico y el problema de la posición son problemas tipicos de control optimo.
El capitulo cuarto es un punto de intersección entre el mundo de los vectores
y el mundo de las funciones. Esto sera claro mas tarde. Nuestro objetivo en
este capitulo es describir los algoritmos numericos mas basicos y relevantes para
calcular y/o aproximar soluciones a los problemas. Dado que en la mayoria de las
situaciones del mundo real no se esperan soluciones exactas, estas herramientas
computacionales son cruciales. Restringiremos nuestra atencion a las tecnicas
mas basicas y bien conocidas. Nuestra idea es que el lector tenga alguna idea de
la naturaleza de las tecnicas de aproximación en los problemas de optimización.
No se ha incluido la implementación explicita de los algoritmos por dos motivos.
El primero la cantidad de software comercial comprobado (Ver el capitulo 4
para referencias), que son bastante utiles dado que nos liberan de los detalles
tecnicos relacionados con la aproximación, y nos permiten concentrarnos en el
1.4. EJERCICIOS 13

modelamiento. Por otro lado, la calibración fina de los algoritmos, espacialmente


cuando se consideran restricciones no lineales, requiere considerable experiencia
apenas el numero de variables crece mas alla de unas cuantas. El inexperto
haria un trabajo pobre comparado con el que haria uno de estos paquetes de
software. Esto no quiere decir que es inutil adquirir algo de experiencia tratando
de escribir programas para algunas situaciones simples. Por lo cual hemos escrito
algunas versiones simples de los algoritmos en el formato de seudocodigo.
Finalmente es importante resaltar que cada uno de estos capitulos no es
mas que una timida introducción a las ideas correspondientes. La diversidad de
situaciones, las peculiaridades de los problemas reales, la necesidad de mejores
algoritmos y metodos computacionales, y la necesidad de una comprensión mas
profunda de la naturaleza de los problemas puede ser tal que un libro completo
seria necesario para cubrir cada uno de estos pequeños capitulos. Nuestra inten-
ción es dar una primera vista general a la optimización, emfatizando las ideas
basicas y las tecnicas en cada categoria de problemas de optimización.

1.4. Ejercicios
1. Un inversionista busca invertir cierta cantidad de capital K de una man-
era diversificada para maximizar la ganancia esperada despues de cierto
periodo de tiempo. Si ri es la taza de interes promedio para la inversion
i, y para evitar riesgo execivo, no se quiere en cualquier inverción mas
de un porcentaje fijo r del capital. Formule el problema que lleve a la
mejor solucion. ¿Puede pensar en otras restricciones razonables para esta
situación

2. En el contexto del problema del andamiaje descrito anteriormente en este


capitulo, asuma que los puntos donde las cargas x1 y x2 son aplicadas son
exactamente los puntos medios de las vigas CD y EF respectivamente.
Formule el problema. ¿Cual es la diferencia principal entre esta situación
y aquella descrita en el texto?

3. Una compañia fabricante de tejas debe proveer 7800 m2 de estas para


varias casas. Dos diferentes tipos de tejas pueden ser usados. El modelo
A10 requiere 9.5 tejas por metro cuadrado el modelo A13 necesita 12.5
elementos por metro cuadrado. Ambos modelos pueden ser usados en el
mismo techo. Los respectivos precios son 0.70 y 0.80 euros por elemento.
La compañia tiene 1600 horas laborales para terminar los techos. En una
hora 5 m2 del modelo A10 y 4 m2 del modelo A13 pueden ser instalados.
Debido a restricciones de inventario la maxima cantidad del modelo A13 es
2500 m2 . Formule el problema de maximizar los beneficios sujeto a todas
las restricciones indicadas.

4. En el sistema de resortes de la figura 1.5, cada nodo es libre de rotar sobre


si mismo. La constante de elasticidad de cada resorte es ki (de acuerdo a
la ley de Hook), y la posición de equilibrio del nodo central es determinada
14 CAPÍTULO 1. INTRODUCCIÓN

mediante el sistema X
ki (x − xi ) = 0
i
donde xi es la posición de los nodos fijos, desciba como determinar las
constantes optimas de los resortes ki , que minimizan el trabajo hecho por
una fuerza constante F en el nodo libre, asumiendo que
X
ki = k
i

es una constante positiva fija.


5. Una compañia se dispone a construir algunos (m) puntos de servicio para
atender a cierto numero (n) de clientes conocidos. Se debe decidir la posi-
ción de estos puntos de servicio. Asumiento que el criterio escogido es
minimizar la distancia global de los puntos de servicio a los clientes, for-
mule el problema como uno de programación no lineal. Describa otras
maneras de tomar ese desición.
6. Una formula de cuadratura es una manera de aproximar eficientemente
integrales definidas a traves de sumas del tipo
Z b X
f (x)dx ≈ j = 1n αj f (xj )
a

Donde los pesos αj y los puntos xj determinan una forma particular de


cuadratura. Queremos determinar el vector de n pesos (αj ) y n puntos
(xj ) en el intervalo [−1, 1] de tal manera que la cuadratura es exacta para
polinomios de grado lo mas alto posible. El procedimiento consiste en
minimizar el error cuadratico de la formula de cuadratura para polinomios
de grado m. Plantee el problema como un problema de optimización no
lineal.
7. La función de utilidad de Cobb-Douglas es de la forma

u(x, y) = xα y 1−α , 0 < α < 1, x ≥ 0, y≥0

Asuma una economia de dos consumidores 1 y 2, y dos bienes X y Y . Am-


bos consumidores tienen la misma función de utilidad del tipo mencionado
anteriormente con el mismo exponente α, y recursos

(x̄i , y¯i ), i = 1, 2

para cada bien. Si los precios p = (px , py ) prevalecen en el mercado para


cada bien, formule el problema de maximizar la satisfacción de cada con-
sumidor medida por sus funciones de utilidad.
8. Se debe recargar una escalera contra una pared al lado de la cual hay una
caja de dimensiones a × b como en la figura 1.6. Formule el problema de
encontrar la escalera mas corta posible.
1.4. EJERCICIOS 15

9. Juan debe cortar ni barras de longitud ai , i = 1, 2, . . . , d, de barras de una


longitud fija L, ai ≤ L para todo i. ¿Cuál es el numero minimo de barras
que necesita? Encuentre una formulación precisa a este problema.

10. Un aeroplano esta volando a velocidad v con respecto al suelo en un cam-


po de viento irrotacional acotado dado por ∇ϕ(x, y, z) y tal que v > |∇ϕ|.
Comenzando y terminando en el mismo punto ¿Cuales son las distan-
cias maximas y minimas que se pueden volar dado un intervalo de tiem-
po [0, T ]? Plantee el problema asumiendo que v es constante, y la di-
rección de la velocidad esta a nuestra disposición. (Ayuda: Escriba una
parametrización de la curva

σ(t) = (x(t), y(t), z(t))

¿Qué sabemos de x0 ,y 0 y z 0 en terminos de v, la dirección de la velocidad


y ∇ϕ? Tenga presente que la longitud de esa curva esta dada por
Z T
|σ 0 |dt.)
0

11. Una cuerda esta colgada verticalmente en equilibrio de su extremo supe-


rior. (Figura 1.7). Esta se estira por acción de su propio peso y una masa
constante W en su extremo inferior. El problema consiste en determinar
la dristribución optima de la sección transversal a(x),0 ≤ x ≤ L, para
minimizar la elongación total. La longitud sin estirar L, el volumen total,
la densidad ρ y el modulo de Young E son constantes y conocidos.

a) ¿Cuál es la restricción integral relacionada con el volumen total que


la función a(x) debe cumplir para ser admisible?
b) Dado un a(x), sea y(x) la distancia medida desde el extremo superior
a la cual se mueve la sección a una distancia x cuando la cuerda no
ha sido estirada por el peso W . Asuma que se aplica la ley de Hooke.
El ””strain y 0 (x) en cada punto es directamente proporcional (con
constante de proporcionalidad E1 ) al ”stress”en ese punto. Donde el
”stress en x es la fuerza hacia abajo divida por el area transversal
a(x) ¿Escriba esta ley en forma de ecuación?
c) ¿Comó se expresa el objetivo en terminos de y? ¿Hay alguna otra
restricción que se deba imponer en y?

12. El problema del descenso mas lento a la luna puede ser formulado de la
siguiente manera. Si v(t) y m(t) son la velocidad y la masa combinada de
la nave espacial y combustible en el tiempo t. σ es la velocidad (constante)
relativa de ejección del combustible, y g es la gravedad, entonces la ley de
estado se escribe.

(m + dm)(v + dv) − dm(v + σ) − mv = mgdt


16 CAPÍTULO 1. INTRODUCCIÓN

o de forma equivalente
dv σ dm
=g+
dt m dt
Si la razon de la ejección por unidad de tiempo − dm
dt puede ser controlada
dentro de un intervalo [0, α], formule el problema de un aterrizaje suave
en un tiempo minimo en terminos presisos.
13. Se requiere que un jet alcance un punto en el espacio en un minimo de
tiempo desde el despegue. Asumiendo que la energia total (cinetica mas
potencial mas (menos) combustible) es constante, el jet quema combustible
a una taza constante maxima, y tiene velocidad cero al despegue, formule
el problema de optimización correspondiente. (Ayuda: La ecuación de en-
ergia total nos lleva al postulado

v 2 + 2gy = at

donde v = (x0 , y 0 ) es la velocidad, g es la aceleración de la gravedad y a


ea la taza constante maxima a la cual se quema el combustible)
14. El relación con el problema de la construccón de un medio refractor optimo
surge el siguiente problema:

Maximizar y(1)

sujeto a

y 00 (x) − F (x)y(x) = 0, y(0) = 1, y 0 (0) = 0


Z 1
F ≥ 0, F (x)dx = M
0

Reformule este problema como un problema de control optimo con un


funcinal integral como objetivo.
15. Un modelo agregado de crecimiento economico puede ser descrito mediante
las siguientes ecuaciones

Y (t) = F (L(t), K(t)),


L0 (t)
K 00 (t) + µK(t) = Y (t) − X(t), l =n
L(t)
donde Y es la salida simple de la economia, unsando dos entradas, trabajo
(L) y capital (K), X denota la cantidad de consumo, µ es la taza de
depreciación, la variable t indica tiempo, y n es la taza constante a la que
crece el trabajo. El objetivo de esta economia es maximizar la integral de
bienestar Z ∞
u(X(t)/L(t))e−ρt dt
0
donde ρ es el factor de descuento por tiempo. Trate de simplificar la for-
mulación del problema tanto como sea posible.
1.4. EJERCICIOS 17

16. En algunos casos los problemas de optimización pueden no adaptarse a


alguna de las formas descritas en este capitulo, principalmente debido a
que el criterio de optimización es mas desarrollado que aquellos vistos en
este texto. Por ejemplo, una unidad de parada hidraulica (Figura 1.8),
como aquellas utilizadas en la industria ferroviaria, crea una fuerza de
amortiguamiento dada por:

v2
F =c , 0 ≤ x ≤ xm
a2
donde c es una constante, v = v(x) es la velocidad del amortiguando, a(x)
es el area de un orificio que se le permite cambiar con el desplasamiento
x, y xm es el maximo desplazamiento permitido bajo las restricciones
geometricas apropiadas. El diseño de tal unidad busca escoger a(x) de tal
manera que minimice la fuerza en un impacto dado de de una masa m a
una valocidad v0 . Muestre que el optimo es obtenido cuando a(x)2 varia
linealmente con x (Ayuda: La formula del trabajo y la energia es
Z x
1 1
mv 2 = mv02 − F (s)ds
2 2 0

¿Qué información nos daesta ecuación al final del impacto cuanto v = 0?


18 CAPÍTULO 1. INTRODUCCIÓN
Capı́tulo 2

Programación Lineal

2.1. Introducción
La caracterı́stica principal de un problema de programación lineal (PPL) es
que todas las funciones involucradas, la función objetivo y aquellas expresando
las restricciones deben ser lineales. La aprarición de una función no lineal, en
la función objetivo o en las restricciones es suficiente para rechazar el problema
como un PPL
Definición 2.1 (Forma general de un PPL) Un PPL es un problema de
optimización de la forma general
X
M inimizar cx = ci xi
i

suejto a:
X
aji xi ≤ bj , j = 1, . . . , p,
i
X
aji xi ≥ bj , j = p + 1, . . . , q,
i
X
aji xi = bj , j = q + 1, . . . , m,
i

donde ci , bj , aji son datos del problema. Dependiendo de los valores particuales
de p y q podemos tener restricciones de desigualdad de un tipo o del otro asi
como restricciones de igualdad.
Podemos enterder mas la estructura y caracterı́sticas de un PPL estudiando un
ejemplo simple.
Ejemplo 2.2 Considere el PPL

M aximizar x1 − x2

19
20 CAPÍTULO 2. PROGRAMACIÓN LINEAL

sujeto a:

x1 + x2 ≤ 1, −x1 + 2x2 ≤ 2,
x1 ≥ −1, −x1 + 3x2 ≥ −3.

Es interesante notar que la forma del conjunto de puntos en el plano que sat-
isface todos los requerimientos que imponen las restricciones: Cada desigualdad
representa un “medio espacio” a un lado de la lı́nea correspondiente a cambiar
la desigualdad por una igualdad. Por lo tanto la intersección de los cuatro medio
espacios sera la “región factible” para nuestro problema. Note que este conjunto
tiene la forma de un polı́gono o un poliedro. Vease la figura 2.1.
Por otra parte,, el costo siendo lineal tiene curvas de nivel que son lineas
rectas de ecuación x1 − x2 = t donde t es una constante. A medida que t se
mueve obtenemos lineas paralelas. La pregunta es que tan grande se puede volver
t de tal modo que la lı́nea de ecuación x1 − x2 = t corta el polı́gono anterior en
alguna parte. Gráficamente, no es difı́cil darse cuenta que el punto corresponde
al vértice (−1/2, 3/2), y el valor del máximo es 2.
Notese que independientemente de cual es el costo, mientras sea lineal, el
valor óptimo siempre corresponderá a uno de los cuatro vertices del conjunto
factible. Estos vertices juegan un papel crucial en el entendimiento de los PPL,
como mas adelante veremos

Un PPL puede tomar varias formas. La forma inicial usualmente depende de la


formulación particular del problema, o de la forma mas conveniente en la cual
se pueden representar las restricciones. El hecho que todas las formulaciones
corresponden al mismo problema de optimización nos permite fijar un formato
de referencia, y referirnos luego a esta forma de cualquier problema particular
para su análisis.

Definición 2.3 (Forma estándar de un PPL) Un PPL en forma estándar


es
M inimizar cx bajo Ax = b, x ≥ 0.

Por lo tanto los ingridientes de un PPL son:

1. una matriz de m × n con n > m y generalmente n mucho mas grande que


m;

2. un vector b ∈ Rm

3. un vector c ∈ Rn

Notese que cx es el producto interno de dos vectores c y x, mientras que Ax


es el producto de la matriz A y el vector x. No se hara una distinción entre
estas dos posiblidades ya que será claro en el contexto. Nuestro problema es
por lo tanto encontrar el valor minimo que puede tomar el producto interno
cx mientras x recorre todos los vectores factibles x ∈ Rn con componentes no
negativas (x ≥ 0) y que satisfagan la importante condición adicional Ax = b.
2.1. INTRODUCCIÓN 21

Tambien estamos interesados en el vector x (o en todos los vectores x) donde


este valor mı́nimo se alcanza.
Hemos argumentado que cualquier PPL puede en principio ser transformado
en la forma estándar. Es por lo tanto deseable que los lectores comprendan como
se puede lograr esta transformación. Se procedera en tres pasos.
1. Variables no restringidas en signo Para variables no restringidas en
signo usamos la descomposición de las variables en sus partes positivas y
negativas de acuerdo a las indentidades:

x = x+ − x− , |x| = x+ − x−

donde
x+ = máx{0, x} ≥ 0, x− = máx{0, −x} ≥ 0
Lo que queremos decir con esta descomposición es que una variable xi que
no este restringida en signo puede ser escrita como la diferencia de dos
nuevas variables que son no negativas.
(1) (2) (1) (2)
xi = xi − xi , xi , xi ≥ 0.

2. Transformando desigualdades en igualdades. A menudo las restric-


ciones son formuladas en forma de desigualdades. De hecho un PPL ven-
drá en la forma:

M inimizar cx bajo Ax ≤ b, A0 x0 = b0 , x ≥ 0.

Notese que usando la multiplicación por −1 podemos cambiar el sentido a


una desigualdad. En esta situación el uso de “variables mudas” permite que
pasemos de desigualdades a igualdades de la siguiente manera. Introduzca
nuveas variables poniendo

y = b − Ax ≥ 0.

Si ahora ponemos
 
x 
X= , A
e= A 1
y
Donde 1 Es la matrı́z identidad del tamaño apropiado, las restricciones de
desigualdad ahora se escriben como

AX
e =b

asi todas las restricciones estan ahora en la forma de igualdades, pero ten-
emos un numero mas grande de variables (uno mas por cada desigualdad)
3. Transformando un max en un min. Si el PPL nos pide un máximo
en vez de un mı́nimo, debemos tener en cuenta que

máx(expresion) = −min(expresion)
22 CAPÍTULO 2. PROGRAMACIÓN LINEAL

o de manera mas explı́cita

max{cx : Ax = b, x ≥ 0} = −min{(−c)x : Ax = b, x ≥ 0}

Un ejemplo aclarara cualquier duda acerca de estas transformaciones.

Ejemplo 2.4 Considere el PPL

M aximizar 3x1 − x3

sujeto a

x1 + x2 + x3 =1
x1 − x2 − x3 ≤1
x1 + x3 ≥1
x1 ≥ 0, x2 ≥0

1. Desde que hay variables que no estan restringidas en signo, debemos suti-
tuir
x3 = y1 − y2 y1 ≥ 0, y2 ≥ 0
de manera que el probema cambie a:

M aximizar 3x1 − y1 + y2

sujeto a

x1 + x2 + y1 − y2 =1
x1 − x2 − y1 + y2 ≤1
x1 + y1 − y2 ≥1
x1 ≥ 0, x2 ≥0
y1 ≥ 0, y2 ≥0

2. Usamos variables mudas de tal manera que las restricciones de desigual-


dades se transformen en igualdades: z1 ≥ 0 y z2 ≥ 0 se usan para trans-
formar
x1 − x2 − y1 + y2 ≤ 1, x1 + y1 − y2 ≥ −1
respectivamente en

x1 − x2 − y1 + y2 + z1 = 1, z1 = 0
x1 + y1 − y2 ≥ −1, z2 = 0

El problema ahora tendrá la forma

M aximizar 3x1 − y1 + y2
2.1. INTRODUCCIÓN 23

sujeto a

x1 + x2 + y1 − y2 = 1
x1 − x2 − y1 + y2 + z1 = 1
x1 + y1 − y2 − z2 = −1
x1 ≥ 0, x2 ≥ 0
y1 ≥ 0, y2 ≥ 0
z1 ≥ 0, z2 ≥ 0

3. Finalmente, podemos cambiar facilmente el máximo a un mı́nimo

M inimizar − 3x1 + y1 − y2

sujeto a

x1 + x2 + y1 − y2 = 1
x1 − x2 − y1 + y2 + z1 = 1
x1 + y1 − y2 − z2 = −1
x1 ≥ 0, x2 ≥ 0
y1 ≥ 0, y2 ≥ 0
z1 ≥ 0, z2 ≥ 0

teniendo en cuenta que una vez que se ha hallado este minimo, el corre-
spondiente maximo sera el mismo pero con el signo cambiado.
Si unificamos la notación escribiendo

(X1 , X2 , X3 , X4 , X5 , X6 ) = (x1 , x2 , y1 , y2 , z1 , z2 )

el problema obtendrá su forma estándar

M inimizar X3 − X4 − 3X1

sujeto a

X1 + X2 + X3 − X4 = 1
X1 − X2 − X3 + X4 + X5 = 1
X1 + X3 − X4 − X6 = −1
X≥0

Una vez hemos resuelto este problema y tenemos una soloción optima X y el
valor del mı́nimo m, la respuesta al PPL original se obtendra asi: El máximo
es −m, y se optiene en el punto (X1 , X2 , X3 − X4 ). O si lo prefieren, el valor
del máximo sere el valor de la función costo original en la solución optima
(X1 , X2 , X3 − X4 ). Notese como las variables mudas no entran en la respuesta
final, dado que son variables auxiliares.
24 CAPÍTULO 2. PROGRAMACIÓN LINEAL

Sobre la solución optima de un PPL, todas las situaciones pueden pasar:

1. El conjunto de vectores admisibles es el vacı́o.

2. No tiene solución, ya que el costo cx puede decrecer indefinidamente hacı́a


−∞ para vectores factibles x.

3. Puede admitir una sola solución unica, y esta es la situación mas deseable.

4. Puede tener muchas, de hecho infinitas soluciones optimas. De hecho es


muy sencillo notar que si x1 y x2 son optimas, entonces cualquier combi-
nacion convexa
tx1 + (1 − t)x2 , t ∈ [0, 1]
es de nuevo una solución optima.

En la sección siguiente, veremos como resolver un PPL en su forma estándar con


el método simplex. A pesar que los métodos de punto interior se estan volviendo
más y más importantes en programación matematica, en ambas versiones lineal
y no lineal, creemos que estos son el tema de un segundo curso programación
matematica. El hecho es que el metodo simplex nos ayuda inmensamente a
entender la estructura de la programación lineal asi como la dualidad.

2.2. El metodo simplex


Aquı́ miramos mas de cerca a un PPL en sufomr estándar, y describimos el
metodo simplex, que es uno de los acercamientos mas exitosos para encontrar la
solución optima de estos problemas. Concentremonos entonces en el problema
de encontrar un vector x que resuelva

M inimizar cx

sujeto a
Ax = b, x ≥= 0
No hay restricción en asumir que el sistema Ax = b tiene solución de lo contrario
no habrı́a vectores factibles. Ademas, si A no es una matriz de rango máximo
podemos escojer una submatriz A0 eliminando varias filas de A y los correspon-
dientes componentes de b de tal manera que la nueva matriz A0 tenga rango
maximo. En este caso obtenemos un nuevo y equivalente PPL

M inimizar cx

sujeto a
A0 x0 = b0 x≥0
donde b0 es el subvector de b obtenido al eliminar las componentes correspon-
dientes a las filas de A que hemos descartado anteriormente. Este nuevo PPL
es equivalente al inicial en el sentido que ambos tienen las mismas soluciones
2.2. EL METODO SIMPLEX 25

optimas, pero la matriz A0 para el problema reducido es una matriz de rango


máximo. Por lo tanto asumiremos sin perdida de generalidad que el rango de la
matriz A de m × n es m (recuerde que m ≤ n) y que el sistema lineal Ax = b
es solucionable.
Hay vectores factibles especiales que juegan un papel central en el metodo
simplex. Estos son las soluciones del sistema lineal Ax = b con componentes
no negativas y al menos n − m componentes nulas. De hecho todos estos pun-
tos extremos o soluciones basicas como son tipicamente llamados, pueden, en
principio, obtenerse resolviendo todos los sistemas cuadrados de tamaño m × m
Ax = b donde n − m componentes de x son cero, y descartando aquellas solu-
ciones con al menos una componente negativa. La estructura especial de un PPL
nos permite concentrarnos en las soluciones basicas cuando estamos buscando
soluciones óptimas.

Lema 2.5 Si el PPL

M inimizar cx

sujeto a

Ax = b x≥0

admite una solución óptima, entonces tambien hay una solución optima que es
una solución basica.

Esto es bastante evidente si tenemos en cuenta que el conjunto factible el algun


tipo de “poliedro” y por lo tanto los valores minimos o maximos de las fun-
ciones lineales deben tomarse en un vertice. Vease la figura 2.2 Y recuerdense
los comentarios del ejemplo 2.2 Para la prueba de este lema, asumamos que x es
una solución optima, con al menos m + 1 componentes estrictamente positivas,
y sea d un vector no nulo en el kernel de A con la propiedad que xi = 0 implica
que di = 0. Si x tiene al menos m + 1 componentes estrictamente positivas, tal
vector d siempre se puede encontrar (¿Por qué?).
Aseguramos que necesariamente cd = 0. Ya que de lo contrario si t es lo
suficientemente pequeño de tal manera que el vector x + td es factible (i.e.,
x + td ≥ 0) y tcd < 0, entonces el costo del vector x + td es estrictamente mas
pequeño que el costo del vector x, que es imposible si x es optimo. Por lo tanto
cd = 0, y los vectores x + td son optimos mientras sean todos factibles. Todo
lo que falta hacer es mover t de cero (en cualquier sentido positivo o negativo)
hasta que alguna de las componentes de x + td llegue a cero por primera vez.
Para tal valor de t tenemos una solución optima con al menos un componente
nulo mas que x. Este proceso puede ser repetido mientras el vector d no es el
vector cero, i.e., hasta que la solución optima tiene al menos n − m componentes
nulas.
Como una consecuencia inmediata del lema 2.5, podemos encontrar una
solución optima para un PPL mirando todas las soluciones del sistema Ax = b
con al menos n − m ceros, descartando aquellas con componentes negativos, y
26 CAPÍTULO 2. PROGRAMACIÓN LINEAL

calculando el costo de las que quedan decidir el vector optimo. Este proceso nos
llevara a una solución optima, pero el metodo simplex apunta a organizar estos
calculos de tal manera que podamos llegar a una solución optima sin tener que
pasar por un análisis exhaustivo de todos los puntos extremos. En algunos casos
el metodo simplex pasa por todas las soluciones antes de encontrar una solución
optima. Esta situación es sin embargo rara.
El metodo simplex (MS) comienza con un vector particular extremo x, el
cual, despues de una permutación apropiada de los indices, puede ser escrito
como:
 
xB
x= xB ∈ Rm 0 ∈ Rn−m xB = 0
0

El paso básico iterativo consiste en poner uno de los componentes de xB como


cero (la variable saliente) y dejando que una componente nula de 0 ∈ Rn−m (la
variable entrante) se vuelva positiva. De esta manera nos hemos movido de un
punto extremo a uno adyacente. La clave consiste en entender como hacer estas
escogencias (las variables entrantes y salientes) de tal manera que reduzcamos
el costo tanto como sea posible. Mas aun necesitamos un criterio para decidir
cuando el costo no puede ser reducido y no se necesitan mas pasos iterativos.
Mas precisamente.
Sea
 
xB
x= , xB ∈ Rm 0 ∈ Rn−m xB ≥ 0
0

un vector factible extremal?????. De la misma manera, la matriz A despues de


la misma permutación de columnas puede ser descompuesta como

A= B N

La ecuación Ax = b es equivalente a
 
 xB
B N = b, xB = B −1 b.
0

El coste de este vector x es


 
xB
= cB xB = cB B −1 b

cx = cB cN
0

El paso basico en el metodo simplex consiste en moverse a otro punto factible


(adyacente) extremo
 de tal modo
 que el costo ha sido disminuido. El cambio
desde xB 0 a x¯B xN donde xN esta a nuestra disposición se hara si
podemos asegurar tres requisitos:

1. Ax̄ = b

2. cx̄ < cx
2.2. EL METODO SIMPLEX 27

3. x̄ ≥ 0
La primera condición nos fuerza a

x¯B = xB − B −1 N xN

Lo cual es cierto, note que


 
 x¯B
B N =b
xN
implica
x¯B = B −1 (b − N xN ) = xB − B −1 N xN
En consecuencia el nuevo costo sera
 xB − B¯−1 N xN
 
cB cN = cB (xB −B −1 N xN )+cn xN = (cN −cB B−1N )xN +cB xB
xN
Notamos que el signo de
(cN − cB B −1 N )xN
dira si hemos sido capaces de disminuir el costo moviendonos al nuevo vector

xB − B −1 N xN xN


El asi llamado vector de costos reducidos

r = cN − cB B −1 N

jugara in rol importante si podemos movernos a una nueva solución basica y


reducir el costo. Dado que xN ≥ 0 (por el requerimiento 3) dos situaciones
pueden ocurrir.
1. Citerio de parada. Si todas las componentes de r resultan no negativas,
no hay manera de reducir el costo, y el punto extremal actual, es de hecho
optimo. Hemos encontrado la solución a nuestro problema
2. Paso iterativo Si r tiene componentes no negativas, podemos en principio
reducir el costo dejando que esas componentes de xN se vuelvan positivas.
Aunque, debemos realizar este cambio con precaución para asegurar que
el vector

xB − B −1 N xN (2.1)

es factible. i.e este tiene solamente coordenadas no negativas. Si este no


es el caso, aunque el costo sera menor en el vector

xB − B −1 N xN xN


este no sera factible y por lo tanto no admisible como una solución optima
de el PPL. Debemos asegurar la no negatividad de todos los vectores
extremos.
28 CAPÍTULO 2. PROGRAMACIÓN LINEAL

En vez de buscar soluciones mas generales de xN el metodo simplex se enfoca en


tomar xN = tv, donde t ≥ 0 es un vector de la base que tiene coordenadas nulas
en todas partes excepto en una posición donde tiene un 1. Esto quiere decir que
cambiaremos una componente a la vez. La componente escogida es precisamente
la “variable entrante”. ¿Cómo se selecciona esta variable? De acuerdo a nuestra
discución previa estamos tratando de asegurar que el producto

rxN = trv

sera tan negativo como se pueda. Dado que v es un vector de la base, rv es


una componente de r, y por lo tanto v debe ser escogido como el vector de la
base correspondiente al valor mas negativo de r. Una vez v ha sido seleccionado,
tenemos que examinar

xB − B −1 N xN = B −1 b − tB −1 N v (2.2)

para determinar la variable saliente. La idea es la siguiente. Cuando t = 0,


estamos en nuestra solución basica xB . ¿Qué puede pasar si t comienza a moverse
desde cero a la parte positiva? En este punto pueden suceder tres situaciones
que discutimos seguidamente.

1. Solución no factible. Lo pronto t se vuelve positiva el vector en (2.2)


no es factible porque una de sus componentes es menor que cero. En este
caso no podemos usar la variable escogida para reducir el costo, y debemos
usar la siguiente variable negativa en r; o alternativamente podemos sim-
plemente tomar esta variable como la variable saliente dado el hecho que
el costo no disminuira. Usualmente se prefiere la segunda opción debido a
su coherencia con el proceso.

2. Variable Saliente. Hay un valor limite t para el cual una de las coor-
denadas de (2.2) se vuelve cero por primera vez. Escogemos presisamente
esta como la variable saliente saliente, y calculamos un nuevo punto ex-
tremo con un costo menor que el anterior.

3. Ninguna solución. Sin importar que tan grande se vuelve t, podemos


seguir bajando el costo, y ninguna de las componentes de (2.2) llegara a
cero. El problema no admite una solución optima porque podemos reducir
el costo de manera indefinida.

El problema ahora consiste en como podemos decidir en cada situación par-


ticular en cual de los casos anteriores nos encontramos y proceder de forma
correspondiente. Notese que cada expresión en (2.2) representa una linea recta
en función de t. Las tres posibilidades estan dibujadas en la figura 2.3.
Asuma que hemos escogido la variable entrante indentificada con un vector
de la base v. Procedemos de la siguiente manera.

1. Si una de las componentes nulas de xB = B −1 b corresponde a una compo-


nente positiva de B −1 N v(diagrama 1 de la figura 2.3), entonces lo pronto t
2.2. EL METODO SIMPLEX 29

se vuelve positivo esta coordenada sera menor que cero en (2.2), y el vector
no sera factible. Podriamos recurrir a una variable entrante diferente (un
vector v de la base distinto), que corresponde a aluna otra componente no
negativa de r, si es posible. Si r no tiene mas componentes no negativas,
ya tenemos la solución optima, y el metodo simplex se detiene. Alterna-
tivamente, y esta opción se prefiere tipicamente por coherencia, podemos
considerar la razon de anulamiento como canditado para el proceso en 2.

2. Examine las razones de los vectores B −1 b sobre B −1 N v componente por


componente, y escoja como la variable saliente la correspondiente a la
menor de estas razones entre las estrictamente positivas, incluyendo, co-
mo se menciono antes, las razones de anulamiento con denominador pos-
itivo. Estos podrian ser escogidos si estan presentes, dado que son mas
pequeños que los estrictamente positivos. Ignore todos los cocientes sobre
0 incluyendo 0/0. Comience de nuevo el proceso con el nuevo vector ex-
trema. Notese que estas razones corresponden a los valores de t cuando t
intersecta el eje horizontal en el diagrama 2 de la figura 2.3.

3. Si no hay razones positivas, el PPL no admite una solución optima dado


que el costo puede ser reducido infinitamente aumentando la variable en-
trante. Esto ocurre cuando todos los digramas son del tipo 3 en la figura
2.3.

Dado que el conjunto de vectores factibles es finito, despues de un numero finito


de pasos, el metodo simplex nos lleva a una solución optima o a la conclusión
que no hay un vector optimo. En algunas cirunstancias muy particulares, el
metodo simplez puede entrar en un proceso cı́lico infinito. Esos casos son tan
raros que no les prondremos atención. Un ejemplo simple es propuesto al final
del capitulo.
En la practica los calculos pueden ser organizados de la siguiente manera
algorı́tmica.

1. Inicialización. Encuentre una matriz cuadrada de tamaño m × m B de


tal manera que la solución del sistema lineal BxB = b es tal que xB ≥ 0.

2. Citerio de parada. Escriba


 
c= cB cN , A= B N

Resuelva
z T B = cB
y mire al vector
r = cN − z T N
si r ≥ 0 pare. Ya tenemos una solución optima. De lo contrario escoja la
variable entrante como la componente mas negativa de r
30 CAPÍTULO 2. PROGRAMACIÓN LINEAL

3. Paso iterativo principal. Resuelva

Bw = y

donde y es la colomna entrante de N correspondiente a la variable entrante,


y mire a las razones xB /w componente a componente. Entre estas razones
escoja aquellos con denominador positivo. Escoja como la variable saliente
aquella correspondiente a la razon mas pequeña entre los seleccionades.
Vaya al paso 2. Si no hay variable que escoger el problema no admite
soluciones optimas.

Hemos tratado de reflejar el paso iterativo principal en la figura 2.4 !!!!!!!!!!!!!Co-


mo se encuentra la matriz B para el siguiente paso??????
Para asegurar que nuestros lectores entiendan la estrategia en el metodo
simplex, como se escogen las variables entrantes y salientes, y el criterio de
parada, veremos varios ejemplos simples.
Ejemplo 2.6 (Solución Unica)

M inimizar 3x1 + x2 + 9x3 + x4

sujeto a

x1 + 2x3 + x4 = 4
x2 + x3 − x4 = 2
xi ≥ 0

En este ejemplo particular,


   
1 0 2 1 4 
A= b= c= 3 1 9 1
0 1 1 −1 2

1. Inicialización. Escoja
   
1 0 2 1  
B= N= cB = 3 1 cN = 9 1
0 1 1 −1

2. Revisar el criterio de parada. Es tribial encontrat


 
4
xB = b =
2

de tal manera quie el vértice inicial es 4 2 0 0 con costo 14. Por
otra parte,
 
   2 1 
z = cB = 3 1 r= 9 1 − 3 1 = 2 −1
1 −1

Dado que no todos los compontentes de r son no negativios, debemos pasar


a travez del paso iterativo del metodo simplex.
2.2. EL METODO SIMPLEX 31

3. Paso iterativo. Escoja x4 como la variable entrante, dado que esta es la


asociada con la componente negativa de r. Mas aun,
 
1 xB
w= {4, 2}
−1 w

de tal modo x1 es la variable salient, siendo la que corresponde a la menor


razon entre las que seleccionariamos (razones con denominadores posi-
tivos).

4. Revisar el criterio de parada. Estos calculos nos llevan a la nueva esco-


gencia
   
0 1 1 2  
B= , N= , cB = 1 1 , cN 3 9
−1 −1 0 1

Es facil encontrar  
6
xB =
4

y el nuevo vector extremo 0 6 0 4 con costo asociado 10. Los
nuevos vectores z y r son
 
   1 2 
z= 2 1 , r= 3 9 − 2 1 = 1 4
0 1

Dado que todas las comonentes de r son no negativas hemos acabado nues-

tra busqueda. El costo minimo es 10, y se toma en el vector 0 6 0 4 .

Ejemplo 2.7 (Ejemplo Degenerado)

Mı́nimizar 3x1 + 2x3 + 9x3 + x4

sujeto a

x1 + 2x3 + x4 = 0
x2 + x3 − x4 = 2
xi ≥ 0

En este caso particular


   
1 0 2 1 0 
A= , b= , c= 3 1 9 1
0 1 1 −1 2

1. Inicialización. Escoja
   
1 0 2 1  
B= , n= , cB = 3 1 , cN = 9 1
1 0 1 −1
32 CAPÍTULO 2. PROGRAMACIÓN LINEAL

2. Revisar el criterio de parada. Es trivial encontrar


 
0
xB = b =
2

por lo que el vector inicial es 0 2 0 0 con costo 2. Por otra parte,
 
   2 1 
z = cB = 3 1 , r = 9 1 − 3 1 = 2 −1
1 −1

Dado que no todos los componentes de r son no negativos, debemos parar


el paso iterativo del metodo simplex.
3. Paso iterativo. Escoja a x4 como la variable entrante, dado que esta aso-
ciada con la componente negativa de r. Ademas
 xB
w = 1 −1 , = 0, −2
w
entonces x1 es la variable saliente, siendo aquella la correspondiente a la
minima razon entre las que seleccionariamos (razones con denominador
positivo). Podemos predecir sin embargo, que porque nuestra unica op-
cion es una razon nula no seremos capaz de disminuir el costo a pesar de
atravezar el paso
 iterativo del metodo simplex. En otras palabras, el vector
0 2 0 0 ya es una solución optima. Dado que para esta solución no
se cumple el criterio de parada para nuestra escogencia original de B (r
tiene coordenadas negativas), debemos, por coherencia, pasar por el paso
iterativo del metodo simplex.
4. Revisar el criterio de parada. La nueva escogencia
   
0 1 1 2  
B= , N= , cB = 1 1 , cN = 3 9
1 −1 0 1

nos lleva a  
0
xB =
2
y el nuevo vector externo es de nuevo (0, 2, 0, 0) con costo asociado 2. Los
vectores z y r son
 
   1 2 
z= 2 1 , r= 3 9 − 2 1 = 1 4
0 1

Dado que todas las componentes de r son no negativas, hemos terminado


nuestra busqueda como lo habiamos anticipado: El costo mı́nimo es 2 y se
toma en el vector (0, 2, 0, 0).

Ejemplo 2.8 (Sin solución)

Mı́nimizar − 3x1 + x2 + 9x3 + x4


2.2. EL METODO SIMPLEX 33

sujeto a

x1 − 2x3 − x4 = −2
x2 + x3 − x4 = 2
xi ≥ 0.

En este caso,
   
1 0 −2 −1 −2 
A= , b= , c = −3 1 9 1 .
0 1 1 −1 2

1. Inicialización. Si escogiéramos
   
1 0 −2 −1  
B= , N= , cb = −3 1 , cn = 9 1 ,
0 1 1 −1

entonces obtendriamos  
−2
xB = b =
2
que no es un vector factible dado que tiene una coordenada negativa.
Tomemos en cambio la segunda y la cuarta columna de A.
   
0 −1 1 −2  
B= , N= , cB = 1 1 , cN = −3 9
1 −1 0 1

2. Revisando el criterio de parada. Es facil encontrar


 
4
xB =
2

de tal modo qye el vector inicial es (0, 4, 0, 2) con costo 6. Por otro lado,
 
   1 −2 
z = −2 1 , r = −3 9 − −2 1 = −1 4
0 1

Dado que no todos los componentes de r son no negativo, debemos pasar


a traves del paso iterativo del metodo simplex.

3. Paso iterativo. Escoja x1 como la variable entrante, dado que esta es la


que esta asociada con la componente negativa de r. Por consiguiente.
 
−1 xB
w= , = {−4, −2}
−1 w

En esta situación no tenemos opción para la variable saliente ya que no


hay denominadaor positivo. Esto quiere decir que el PPL no admite una
34 CAPÍTULO 2. PROGRAMACIÓN LINEAL

solucı́on óptima, i.e El costo puede ser reducido indefinidamente. Esto


puede ser facilmente comprobado considerando los vectores factibles
 
t−2
t + 2
 0 ,
  t ≥ 0.
t

El costo asociado con estos puntos es 8 − t, que puede ser claramente


enviado a −∞ haciendo t lo suficientemente grande.

Ejemplo 2.9 (Soluciónes multiples)

Mı́nimizar 3x1 + 2x2 + 8x3 + x4

sujeto a

x1 − 2x3 − x4 = −2
x2 + x3 − x4 = 2
xi ≥ 0

Para argumentar que hay infinitas soluciones optimas para este PPL, usaremos
las restricciones de igualdad para “despejar” x1 y x2 y devolver estas expresiones
a la función objetivo. Especificamente.

x1 = 2x3 + x4 − 2 ≥ 0, x2 = −x3 + x4 + 2 ≥ 0.

Y la función de costo se converte en

6(2x3 + x4 ) − 2

Dado que la primera restricción dice

2x3 + x4 ≥ 2,

Es claro que el, costo mı́nimo se alcanzara cuando

2x3 + x4 = 2,

Tenemos dos soluciónes basicas (0, 1, 1, 0) y (0, 4, 0, 2). Cualquier combinación


convexa tambien sera una solución optima
 
t 0 1 1 0 + (1 − t) 0 4 0 2 , t ∈ [0, 1]

Creemos que es elemental entender la forma en que funciona el metodo simplex


despues de varios ejemplos. Sin embargo los calculos pueden ser organizados
en tablas para facilitar todo el proceso sin tener que explicitamente escribir
los diferentes pasos como hemos hecho hasta ahora. Trataremos esos detalles
practicos en una sección posterior.
2.3. DUALIDAD 35

2.3. Dualidad
La dualidad es un concepto que vincula los siguientes dos PPL
Mı́nimizar cx sujeto a Ax ≥ b, x ≥ 0;
Máximizar yb sujeto a yA ≤ c, y ≥ 0;
Iderntificaremos el primer problema como el primario, y el segundo como su
dual asociado. Notese como los mismos elementos, la matriz A y los vectores b
y c, determinan ambos problemas.
Definición 2.10 (Problema dual) El problema dual de el PPL
Mı́nimizar cx sujeto a Ax ≥ b, x≥0
es el PPL
Máximizar yb sujeto a yA ≤ c, y≥0
Aunque este formato no es el que hemos utilizado en nuestra discusión del
metodo simplex, nos permite ver de forma mas transparente que el dual del
dual es es el primario. Esto es de hecho bastante sencillo de verificar transfor-
mando minimos en maximos y cambiando el sentido de las desigualdades usando
apropiadamente signos menos (se deja esto al lector).
Si el problema primario es formulado en la forma estandar ¿Cúal es su versión
dual? Contestar esta pregunta es un ejercicio elemental que consiste en escribir
un PPL en su forma estandar en el formato anterior, aplicar dualidad, y entonces
tratar de simplificar la forma final del dual. De hecho, lo unico que tenemos que
hacer es poner
Ax = b es equivalente a Ax ≥ b, −Ax ≥ −b,
asi si escribimos  
Ā = A −A , b̄ = b −b ,
nuestro PPL inicial es
Minimizar cx bajo Āx ≥ b̄, x ≥ 0.
Por lo tanto su dual tendra la forma
Máximizar ȳ b̄ sujeto a ȳ Ā ≤ c, ȳ ≥ 0.
Si ahora tratamos de simplificar la formulación del problema poniendo

ȳ = y (1) y (2)
llegamos a
 
Máximizar y (1) y (2) b sujeto a y (1) y (2) A ≤ c, ȳ ≥ 0.

y poniendo y = y (1) − y (2) , no hay restricción en el signo de y, y tenemos


Máximizar yb sujeto a yA ≤ c.
que es la forma del dual cuando el primario esta dado en la forma estandar.
36 CAPÍTULO 2. PROGRAMACIÓN LINEAL

Lema 2.11 (Problema dual en forma estandar) Si el problema primario es

Mı́nimizar cx bajo Ax = b, x ≥ 0, (2.3)

su dual es
Máximizar yb sujeto a yA ≤ c.
Antes de proseguir en analizar la dualidad de forma mas formal, vale la pena
motivar su análisis dando una interpretación del significado de la relación del
primario y su dual. De hecho es interesante notar que son formas diferentes pero
equivalentes de mirar el mismo problema de fondo. Vamos a enfatizar este punto
describiendo un tı́pico PPL relacionado con redes. Las implicaciones practicas
de la dualidad estan frecuentemente atadas al problema de fondo detras de
un PPL formal. Aquı́ restringimos nuestra atención a revisar formalmente la
equivalencia entre del primario y su dual sin poner mucha atención a otras
implicaciones. Un análisis y entendimiento completo de estos seria requerido en
sitaciones realistas.
Ejemplo 2.12 Deseamos enviar cierto producto desde el nodo A al nodo D en
la red simplificada de la figura 2.5. Como se puede ver, tenemos cinco posibles
canales con costos asociados dados en la misma figura. Su usamos las variables
xP Q para denotar la fracción del producto transferido a traves del canal P Q,
debemos mı́nimizar el costo total

2xAB + 3xAC + xBC + 4xBD + 2xCD

sujeto a las restricciones

xAB = xBC + xBD


(parte del producto no se pierde en el nodo B),

xAC + xBX = xCD


(parte del producto no se pierde en el nodo C),

xBD + xCD = 1
(todo el producto llega al nodo D)
xAB , xAC , xBC , xBD , xCD ≥ 0.

Notese que como consequencia de estas restricciones es facil obtener

xAB + xAC = 1

asi que la totalidad del producto sale del nodo A. Esta es la formulación primaria
del problema.
Tambien podemos pensar en terminos de precios por unidad de producto en
los diferentes nodos de la red yA , yB , yC , yD y considerar las diferencias entre
2.3. DUALIDAD 37

estos precios como la ganancia cuando se usa algun canal particualar. En esta
situación estamos buscando el máximo para yD − yA , la ganancia en transferir
el producto de A a D. Las ganancias por los cinco canales serán

y B − yA , yC − yA , yC − yB , yD − yB , yD − yC .

Si tomamos como regla de normalización yA = 0, entonces debemos pedir que


estas ganancias no exedan los precios por el uso de cada canal:

yB − yA = yB ≤ 2, yC − yA = yC ≤ 3, yC − yB ≤ 1,
yD − yB ≤ 4, yD − yC ≤ 2.

Esta seria la formulación dual del problema.


De alguna forma sospechamos que estos dos problemas deben ser equivalentes
y que sus soluciones optimas deben estar relacionadas la una con la otra. De
hecho ese es el caso. La conección es precisamente la dualidad. Con los elementos
 
 0
c = 2 3 1 4 2 , b = 0 ,
1
 
1 0 −1 −1 0
A = 0 1 1 0 −1
0 0 0 1 1

estos dos problemas se pueden formular de manera compacta como

Mı́nimizar cx bajo Ax = b, x ≥ 0,
Máximizar yb bajo yA ≤ c.

donde
 
x = xAB xAC xBC xBD xCD , y = yB yC yD

Estqa es precisamente la forma de un primario y su dual.

A continuación describimos brevemente en dos pasos la relación entre las solu-


ciones del problema primario (P) y su dual (D), donde asumimos que (P) esta
dado en forma estándar.

Lema 2.13 (Dualidad debil) Si x y y son factibles para (P) y (D) respectiva-
mente, entonces
yb ≤ cx
Mas aun si hay igualdad
yb = cx
entonces x es una solución optima para (P) y y para (D).
38 CAPÍTULO 2. PROGRAMACIÓN LINEAL

La prueba es bastante sencilla, de

Ax = b, x ≥ 0, yA ≤ c,

tenemos
yb = yAx ≤ cx.
En particular tenemos

máx{yb : yA ≤ c} ≤ mı́n{cx : Ax = b, x ≥ 0}.

Si yb = cx este numero debe ser al mismo tiempo el máximo y el mı́nimo


anterior, y esto implica que y es optimo para (D) y x para (P).
Este resultado tambien nos informa que en los casos degenerados, en los que
el máximo para el dual es +∞ o el minimo del primario es −∞, el otro problema
no tiene vectores factibles.
De esta observación se sigue el teorema de dualidad completo.

Teorema 2.14 (Teorema de dualidad) O ambos problemas (P) y (D) son sol-
ubles simultaneamente, o uno de los dos es degenerado en el sentido que no
admite vectores factibles.

Lo que dice esta afirmación es que si x es óptimo para (P), entonces existe un
vector óptimo y para (D), y el valor comun yb = cx es al mismo tiempo el
mı́nimo para (P) y el máximo para (D). Conversamente, si y es optimo para
(D), existe un vector optimo x para (P) con el valor comun yb = cx siendo al
mismo tiempo el mı́nimo y el máximo.
La prueba se basa en nuestra discución previa del metodo simplex. Si x es
optimo para (P), entonces

x = xB 0 , xB = B −1 b, cx = cB B −1 b,


r = cN − cB B −1 N ≥ 0 (Criterio de parada),

cN . Si examinamos y = cB B −1 , pasa que



donde c = cB

yA = cB B −1 B cB B −1 N ≤ cB
  
N = cB cN = c,

asi que y es admisible para (D). Por otro lado, y es tal que

cx = cB B −1 b = yb

Por el principio de dualidad debil, x y y deben ser óptimos.


El hecho que el dual del dual es el primario nos permite pasar de una solución
optima para (D) a una solución optima para (P).
Note como se ha obtenido  una solución para el dual de la solución optima
del primario: Si x = xB 0 es óptimo para P con

xB = B −1 b,

c = cB cN
2.4. ALGUNOS ASUNTOS PRACTICOS 39

entonces y = cB B −1 es óptimo para (D). Regresaremos a esta observación


despues.
Es importante enfatizar la información en el primario dada por la solución
optima del dual. Una de estas interpretaciones viene directamente de el teo-
rema de dualidad, y refiere como cambios al vector b afectan el valor optimo
del primario. Este es un tema de gran importancia practica, dado que tambien
estamos interesados en conocer que tan buenos son los cambios en el vector b.
Las restricciones que impone b estan tipicamente relacionadas con restricciones
como capacidades de producción e inversiones totales, y nos gustaria conocer si
hacer esos cambios seria rentable. Si M (b) es la dependencia del valor mı́nimo
de PPL de b, estamos buscando las derivadas parciales ∇M . Estos sol llama-
dos parametros de sensibilidad, precios sombra asi como precios duales. Por el
teorema de dualidad tenemos,

M (b) = y(b)

Donde y es la solución optima del dual. Intuitivamente,

∇M (b) = y

y esto es usualmente interpretado diciendo que el dual da la taza de cambio


de la solución optima del primario cuando el vector b de restricciones cambia.
Es por lo tanto importante saber la solución optima de un PPL asi como la
solución optima del dual. Para ser rigurosos, el cálculo anterior de ∇M no ha
sido justificado, dado que la solución optima del dual depende de b. Pero dado
que el resultado es esencialmente correcto y plausible, no insistiremos en este
punto.

2.4. Algunos asuntos practicos


En las secciones anteriores, hemos estado interesandos en la comprensión de
la estructura de un PPL y del mecanismo estándar para resolverlo con el meto-
do simplex. Hay sin embargo un numero de asuntos de importancia practica.
Trataremos en esta sección tres de estos temas.
1. Como inicializar el metodo simplex desde un punto de vista practico.
2. Como organizar los calculos en una forma eficiente a travez de tablas.
3. Como la solución optima del dual se puede encontrar rapidamente de la
solución del primario.
La importancia de de dichos asuntos es de valor relativo, dado que tan pronto
como el numero de variables involucradas en un PPL pasa de unas cuantas,
paquetes computacionales deben ser usados para encontrar soluciones optimas
in periodos razonables de tiempo.
En nuestra discusión del metodo simplex, no hemos indicado como encontrar
una primera escogencia factible para la matriz B. Esto es seleccionar m columnas
40 CAPÍTULO 2. PROGRAMACIÓN LINEAL

entre las n columnas de A de tal manera que la solución del sistema lineal
Bx = b es tal que x ≥ 0. En algunos casos, hacer esto directamente puede ser
una tarea bastante tediosa. Lo que nos gustaria hacer es describir un mecanismo
mas o menos eficiente que llevara a una submatriz factible B sin pasar por una
enumeración exhaustiva de todas las posibilidades, lo que seria despues de todo
resolver el PPL a fuerza bruta. Describiremos dos formas diferentes de encontrar
tal inicialización.
El primero depende de un PPL auxiliar con inicialización trivial, cuya solu-
ción optima nos dira como seleccionar la matriz inicial factible B. El problema
auxiliar es X
Mı́nimizar x̄i
i
sujeto a 
Ā 1 X = b, X ≥ 0.

donde X = x x̄ y Ā y b̄ son tales que el sistema Āx = b̄ es equivalente al
sistema Ax = b pero b̄ ≥ 0. Esto se puede hacer simplemente multiplicando
−1 aquellas restricciones asociadas a componentes negativas  de b. Note que un
vector extremo factible valido para este problema es 0 b̄ .
Afirmamos que si el PPL inicial admite una solución óptima x, entonces
el mı́nimo para el problema auxiliar es 0, y se logra en X = x 0 . Esto es
muy facil de verificar y se le deja al lector como ejercicio. En  cosecuencia si
resolvemos este problema auxiliar con el vector inicial 0 b̄ por el metodo
simplex, la solución optima encontrada sera de la forma X = x 0 , donde x
tiene como máximo m componentes no nulas. Observe que el problema auxiliar
tiene el mismo valor de m. Las componentes positivas de este vector x indicaran
cuales columnas deben ser escogidas para un punto inicual factible para nuestro
PPL. Si el numero de tales componentes positivas es estrictamente menor que el
numero de columnas que seleccionariamos, las columnas que quedan se pueden
seleccionar de forma arbitraria, mientras se mantengan como un conjunto lineal-
mente independiente de vectores. Para clarificar el mecanismo que lleva a una
inicialización factible de cualquier PPL, consideremos el siguiente ejemplo.
Ejemplo 2.15 Estamos interesados en encontrtar una inicialización valida para
el PPL
Minimizar 2x1 + 3x2 + x3
sujeto a
x1 + x2 + 2x3 + x4 = 500
x1 + x2 + x3 − x4 = 500
x1 + 2x2 + 2x3 = 600
xi ≥ 0
En este ejemplo particular,
   
1 1 2 1 500 
A = 1 2 1 −1 , b = 500 , c= 2 3 1 0 .
1 2 2 0 600
2.4. ALGUNOS ASUNTOS PRACTICOS 41

El asunto aquı́ es como escoger la matriz inicial B para inicializar el metodo


simplex. En este caso simple tenemos cuatro posiblidades que corresponde a es-
coger tres diferentes columnos de un conjunto de cuatro. Ciertamente podriamos
pasar por todas esas posibilidades y escoger la primera solución basica con co-
ordenadas no negativas. Como hemos mencionado antes, esto es equivalente a
resolver el PPL a traves de un análisis exahustivo de todas las soluciones ba-
sicas. Cuando la dimensión del problema es grande, este metodo enumerativo
no es admisible, y el mecanismo descrito para inicializar el metodo simplex se
vuelve interesante. En nuestro ejemplo este enfoque equivaldria a considerar el
siguiente PPL asociado con los datos.
   
1 1 2 1 1 0 0 500
Ā = 1 2 1 −1 0 1 0 , b̄ = 500
1 2 2 0 0 0 1 600

c= 0 0 0 0 1 1 1

La inicialización para el metodo simplex para resolver para resolver este proble-
ma es escoger la matriz B como la matriz identidad par las ultimas tres columnas
de A. Las componentes no nulas de la solución óptima para este problema en-
contrada usando el metodo simplex indicaran una inicialización para nuestro
problema original. En este caso, aplicando el metodo simplex obtenemos la solu-
ción óptima 
200 100 100 0 0 0 0
y esto nos indica que la matriz inicial B, hecha de las tres primeras columnas de
A es una inicialización valida para el metodo simples para nuestro PPL original.
El segundo enfoque al problema de la inicialización no requiere considerar un
PPL auxiliar. En cambio se basa en transformar el PPL en un PPL equicalente
para el cual la inicialización es trivial. En vez de mencionar un resultado formal,
discutiremos esta transformación intuitivamente. Considere un tipico PPL,

Mı́nimizar cx bajo Ax = b, x ≥ 0,

donde b ≥ 0 (multiplicando por −1 aquellas ecuaciones que corresponden a com-


ponentes negativas de b). Introduscamos nuevas variables y ∈ Rm y estudiemos
el nuevo PPL

Mı́nimizar cx + dy bajo Ax + y = b, x ≥ 0, y ≥ 0,

donde el vector d ∈ Rm se asume


 que tiene componentes no espacificadas muy
grandes. El punto es que 0 b es una inicialización valida para el segundo PPL,
y dado que las componentes de  d son lo suficientemente grandes, la solución
óptima será de la forma x 0 , donde x es una solución óptima para nuestro
PPL inicial. La primera afirmación es trivial. La segunda es plausible, dado que
los componentes de d son muy grandes y estamos buscando mı́nimizar la suma
cx + dy con y ≥ 0, vemos que las soluciones óptimas requieren que y = 0, y por
lo tanto regresamos a nuestro PPL original. La desventaja de este procedimiento
42 CAPÍTULO 2. PROGRAMACIÓN LINEAL

es que para resolver este PPL transformado debemos trabajar simbolicamente


con el vector d, o de lo contrario debemos asignar a d valores muy altos. Veremos
un ejemplo despues.
Los calculos involucrados en el metodo simplex estan normalmente organiza-
dos el forma de tablas que reflejan los diferentes pasos que hemos descrito en la
sección 2.2. Dado que el metodo simplex procede cambiando submatrices B de
la matriz original A, y renombrando columnas de tal manera que las primeras
m columnas corresponden a la matriz B, es muy importante no perderse con tal
reorganización y mantener un registro de la enumeración inicial de las columnas
independientemente de la posición que ocupan en los pasos posteriores. Cada
una de estas tablas tiene la estuctura
A b

c d
donde d es el valor indicando el costo, cambiado en signo, de los diferentes
soluciónes basicas factibles por las cuales pasa el metodo simplex. En cada una
de estas tablas se deben hacer los siguientes calculos sucesivamente.
1. Escoger las columnas correspondientes a la siguiente submatriz B y pon-
erlas en las primeras m columnas de la tabla,y usando transformaciones
basicas del algebra lineal transformar la matriz B en la matriz identi-
dad (una matriz triangular superior o inferior no es suficiente). No olvide
mantener un registro de las columnas de B.
2. Transforme de la misma manera las componentes de c ultima columna de
tal manera que aquellos que correspondan a las columnas de B sean nulos.
3. Si los componentes que quedan de c son no negativos (criterio de parada),
una (la) solución óptima se encuentra resolviendo el sistema lineal Bx = b
con la submatriz actual B y el termino independiente b, y poniendo cero
en aquellas componentes que no esten en B (es por esto que es importante
mantener un registro de cuales columnas son parte de las submatrices B).
Si hay algunas componentes negativas, seleccionamos la columna entrante
como aquella con la minima componente en c.
4. Examine las razones de b sobre la columna entrante componente por com-
ponente. Si no hay denominador positivo el problema no tiene solución
óptima, de lo contrario escoja como la columna saliente aquella asociada
con la mı́nima razon no negativa entre las seleccionadas. Regrese al paso
1 hasta que se satisfaga el criterio de parada, o lleguemos a la conclusión
que no existe una solución óptima.
En vez de insistir en clarificar estos puntos que reflejan fielmente aquellos de-
scritos en la sección 2.2, proponemos examinar un ejemplo concreto.
Ejemplo 2.16 Queremos mı́nimizar −3x1 − 5x2 bajo las restricciones x ≥ 0 y
3x1 + 2x2 + x3 = 18, x1 + x4 = 4 x2 + x5 = 0
2.4. ALGUNOS ASUNTOS PRACTICOS 43

La tabla inicial para este problema es


x1 x2 x3 x4 x5
3 2 1 0 0 18
1 0 0 1 0 4
0 1 0 0 1 6

−3 −5 0 0 0 0
Si escogemos las columnas o variables 3,
 4 y 5 para hacer la matriz B, encon-
tramos que el vertice 0 0 18 4 6 es factible. Si reorganizamos las tres
columnas seleccionadas como las tres primeras columnas obtenemos la tabla
x3 x4 x5 x1 x2
1 0 0 3 2 18
0 1 0 1 0 4
0 0 1 0 1 6

0 0 0 −3 −5 0
Dado que en este caso particular la matriz B ya es la identidad, no se requieren
mas calculos en la tabla para estre proposito. Por otro lado, las componentes de
c que no corresponden a las columnas de B son ambas negativas(−3 y −5), dado
que el criterio de parada no se cumple, debemos transformar la tabla de acuerdo
al paso principlal del metodo simplex. La variable entrante será x2 (asociada con
−5 en c). Para determinar la variable saliente, debemos examinar las razones
18/2 y 6/1 (4/0 se descarta porque tiene denominador nulo) y seleccionamos
a la tercera razon 6 como la mas pequea. Segun esto la tercera columna de B
(correspondiente a x5 es la columna saliente. Despues que estas dos variables
son intercambiadas la tabla se ve ası́
x3 x4 x2 x1 x5
1 0 2 3 0 18
0 1 0 1 0 4
0 0 1 0 1 6

0 0 −5 −3 0 0
Con esta tabla debemos obtener por medio de transformaciones elementales la
matriz identidad en las primeras tres columnas, y el vector nulo en las compo-
nentes de c. En este caso particular, estos dos objetivos se logran cambiando la
primera fila por ella misma menos dos veces la tercera , y reemplazando la cuar-
ta por si misma mas cinco veces la tercera. Despues de estos cambios llegamos
a
x3 x4 x2 x1 x5
1 0 0 3 −2 6
0 1 0 1 0 4
0 0 1 0 1 6

0 0 0 −3 5 30
44 CAPÍTULO 2. PROGRAMACIÓN LINEAL

De nuevo miramos a las componentes no nulas de c y seleccionamos la mı́nima


(negativa) como la variable entrante (x1 ). Para escoger la variable saliente,
examinamos las razones 6/3 y 4/1, y escogemos la mas pequea entre las positivas,
asoiada en este caso con x3 . Estos cambios llevan a
x1 x4 x2 x3 x5
3 0 0 1 −2 6
1 1 0 0 0 4
0 0 1 0 1 6

−3 0 0 0 5 30
Como antes buscamos la matriz identidad en las primeras tres columnas, y el
vector nulo en las tres componentes de c. La nueva table es
x1 x4 x2 x3 x5
1 0 0 1/3 −2/3 6
0 1 0 −1/3 2/3 4
0 0 1 0 1 6

0 0 0 1 3 36
Dado que en esta tabla se cumple el criterio de parada (todas las componentes no
nulas de c son no negativas), la solución óptima se encuentra en la columna b.
El costo óptimo (con el signo cambiado) se encuentra en d, −36. Es importante
determinar los componentes asociados con los valores de b. En esta ultima tabla
la matriz B es formada por tres columnas x1 , x4 y x2 , y las componentes de b
correspondenderan (en ese orden) a esas variables. A las variables ausentes en
B se les asigna el valor de 0. Por lo tanto la solución optima es 2 6 0 2 0
con costo óptimo −36. En la practica, los calculos se hacen transformadon las
tablas sin mayor comentario.
Resolvemos otro ejemplo incluyendo la discusión en la inicialización por el se-
gundo metodo que hemos indicado antes.
Ejemplo 2.17 El problema es
Mı́nimizar 3x1 + x2 + 9x3 + x4
sujeto a
x1 + 2x3 + x4 = 4
x2 + x3 − x4 = 2
xi ≥ 0.
De acuerdo a nuestra discución de como plantear un nuevo problema de op-
timización equivalente para el cual la inicialización es trivial, consideramos el
nuevo PPL modificado
Mı́nimizar 3x1 + x2 + 9x3 + x4 + dx5 + dx6
2.4. ALGUNOS ASUNTOS PRACTICOS 45

sujeto a

x1 + 2x3 + x4 + x5 = 4
x2 + x3 − x4 + x6 = 2
xi ≥ 0.

donde se asume que d es un parametro muy grande. La tabla inicial para este
problema es
x1 x2 x3 x4 x5 x6
1 0 2 1 1 0 4
0 1 1 −1 0 1 2

3 1 9 1 d d 0

Notamos que una inicialización admisible es la matriz identidad correspondiente


a la quinta y sexta columna. La segunda tabla es

x5 x6 x1 x2 x3 x4
1 0 1 0 2 1 4
0 1 0 1 1 −1 2

0 0 3−d 1−d 9 − 3d 1 −6d

Si d es un numero muy grande positivo, el coeficiente mas negativo de c sera


9 − 3d, asi que escogemos a x3 como la variable entrante, y entonces x1 como
la variable saliente (en este caso particular las dos razones son iguales, y podi-
amos igualmente escoger a x6 como variable saliente). Despues de reorganizar
columnas y hacer algunos calculos tenemos.

x3 x6 x1 x2 x5 x4
1 0 1/2 0 1/2 1/2 2
0 1 −1/2 1 −1/2 −3/2 0

0 0 d − 3/2 1−d 3(d − 3)/2 (3d − 7)/2 −18

De nuevo teniendo en cuenta que d es un numero muy grande y positivo, es-


cogeriamos x2 como la variable entrante y x6 como nuestra variable saliente.
Despues de hacer los calculos la tabla es

x3 x2 x1 x6 x5 x4
1 0 1/2 0 1/2 1/2 2
0 1 −1/2 1 −1/2 −3/2 0

0 0 −1 d−1 d−4 −2 −18

Nuestra siguiente variable entrante es x4 , y x3 es nuestra variable saliente. Asi


46 CAPÍTULO 2. PROGRAMACIÓN LINEAL

obtenemos
x4 x2 x1 x6 x5 x3
1 0 1 0 1 2 4
0 1 1 1 1 3 6

0 0 1 d−1 d−2 4 10
Dado que todos los componentes en la ultima fila son positivos hemos llegado a
una solución óptima, que esta dada por la ultima columna 4, 6 para x4 y x2 ,
respectivamente, y a las demas variables debe asignarseles el valor 0. El costo
óptimo es 10 y la solución óptima 0 6 0 4 0 0 . Note que esta solución
óptima tiene componentes nulas para las variables auxiliares
 x5 y x6 . La solución
óptima para el problema original será 0 6 0 4 con costo óptimo 10.
Alternativamente podemos asignar un valor numérico muy alto a d (mucho
mas grande que aquellos participando en el problema por ejemplo d = 100) y
resolver el problema. Si la solución final da valores nulos para x5 y x6 , tenemos
nuestra solución óptima. Si no, se debe resolver de nuevo el problema con un
valor mayor de d.

Finalmente, queremos enfatizar de manera mas explicita como el pasar de la


solución optima del primario a la solución optima del dual se puede hacer de
una manera eficiente. De hecho, esto se trato cuando vimos dualidad, pero nos
gustaria enfatizar en esto aqui. Asuma que el primario es

Mı́nimizar cx bajo Ax = b, x ≥ 0,

con dual
Máximizar yb bajo yA ≤ c.
Si
xB = B −1 b

x = xB 0 ,
es la solución óptima del primario, la solución óptima del dual sera

y = cB B −1 ,

donde cB incorpora las componentes de c correspondientes a las columnas se-


leccionadas en B. En la practica, es cuestion de resolver el sistema lineal

cB = yB

donde B y cB incluyen las columnas para la solución optima. Es mas, estas


columnas estan asociadas con las desigualdades que deben convertirse en igual-
dades para encontrar la solución optima del dual. Un ejemplo aclarara esto
ultimo.

Ejemplo 2.18 Queremos mı́nimizar la función 18y1 + 4y2 + 6y3 bajo las restic-
ciones
3y1 + y2 ≤ −3, 2y1 + y3 ≤ −5, y ≤ 0
2.5. PROGRAMACIÓN ENTERA 47

En forma maticial estas restricciones se pueden escribir como


   
2 1 0   −3
2 0 1 y1 −5
   
1 0 0 y2  =  0 
   
0 1 0 y3 0
0 0 1 0

Hemos usado la variable y para sugerir que este problema puede ser entendi-
do directamente como el dual de cierto PPL primario. Es cierto que podemos
resolverlo transformandolo a la forma estándar y aplicando el metodo simplex.
Pero este proceso requiere mas esfuerzo que si lo tratamos como un problema
dual. De hecho el primario asociado es

Mı́nimizar − 3x1 − 5x2

sujeto a

3x1 + 2x2 + x3 = 18, x1 + x4 = 4


x2 + x5 = 6, x ≥ 0.

Ya se ha resuelto este problema, Su solución optima es el vector



2 6 0 2 0

Las componentes no nulas de este vector indican que la matrix B incluye la


primera, segunda y cuarta columnas de A. Si hubieramos tenido dos (o menos)
componentes no nulas, la tercera columna se podria escoger de manera arbitraria
mientras la matriz resultante sea no singular. Esta información es suficiente
para resolver el dual, dado que su solución optima se puede encontrar resolviendo
el sistema lineal     
3 1 0 y1 −3
2 0 1 y2  = −5
0 1 0 y3 0
obtenidas transformando en igualdades la primera, segunda y cuarta desigual-
dades del dual. La solución óptima es entonces −1 0 3 y el costo óptimo
es −36

2.5. Programación entera


Las aplicaciones a la ingenierı́a de la programación lineal requieren a menudo
que las variables tomen valores enteros en vez de reales. En algunos casos, ignorar
esta restricción dara una aproximación razonable. En otros, es crucial poner
atención a esta restricción. En estos casos, ademas de las tipicas restricciones
lineales
Ax = b, x ≥ 0
48 CAPÍTULO 2. PROGRAMACIÓN LINEAL

debemos forzar a algunas (o todas) las variables tomar valores enteros (no nega-
tivos) xi ∈ Z. Esta restricción nueva estara dada por la naturaleza del problema
en la que estamos interesados. Nos enfrentamos por lo tanto al PPL que iden-
tificaremos como (P̃ ),

Mı́nimizar cx bajo Ax = b, x ≥ 0,
xi ∈ Z, i ∈ I ⊂ N = {1, 2, . . . , n}

donde el subvonjunto de indices I es conocido. De forma razonable, nos preocu-


paremos primero acerca del PPL esencial sin la restricción entera.

Mı́nimizar cxbajo Ax = b, x ≥ 0.

Asumamos por el momento que x(0) , la solución óptima para (P ), satisface el


(0)
requerimiento entero xi ∈ Z. En este caso es evidente que hemos encontrado la
(o una) solución óptima para (P̃ ). Sin embargo es muy probable que tengamos
tanta suerte, y que tal solución óptima no verificara la condición entera. ¿Cómo
proceder en tal situación? La estrategia a seguir es llamada “metodo de dividir
y acotar”, y consiste en generar una secuencia de subproblemas, resolverlos y
analizar y comparar las distintas soluciones hasta que lleguemos a una solución
óptima y factible a nuestro problema original.
La idea basica detras de descomponer un problema en dos problemas disyun-
tos (“dividir”) es la siguiente. Asuma por recursión que tenemos un PPL como
resultado de los pasos previos y no hemos encontrado un vector factible para
nuestro problema inicial. Encontramos su solución óptima x(0) . Obviamente si
el problema es insatisfactible es descartado. Pueden ocurrir dos situaciones.
1. Si x(0) satisface las restricciones enteras se convierte en nuestra solución
provisional y descartamos el subproblema.
2. Si x(0) no satisface todas las restricciones enteras, escogemos una variable
(0)
xi ∈ (k, k + 1), k ∈ Z, i ∈ I,

y aadimos a la colección de subproblemas a ser analizados los dos prob-


lemas disyuntos (“dividir”) obteniendo aadiendo a las restricciones del
problema las restricciones xi ≤ k en un caso, y xi ≥ k + 1 en el otro. Note
como los conjuntos factibles para estos dos subproblemas son disyuntos y
su union es el PPL completo del que vienen. Vea la figura 2.6.
Una vez hemos encontrado una solución provisional óptima factible x∗ , y ten-
emos que analizar un subproblema previamente generado por el proceso de
dividir, la discusión será la siguiente.
1. Si
cx∗ ≤ cx(0)
descartamos este PPL, dado que no puede mejorar la solución óptima que
encontramos y elegimos otro subproblema.
2.5. PROGRAMACIÓN ENTERA 49

2. Si
cx∗ > cx(0)
y x(0) satisface el requisito entero, cambie la solución óptima provisional
a x(0) , descarte el problema correspondiente y ana’lice otro problema

3. Si
cx∗ > cx(0)
y x(0) no satisface la restricción entera, proceda a dividir este problema
como se indico anteriormente. De esta manera estamos asegurando que
la solución óptima se encontrara por estre proceso exhaustivo. De nuevo
cualquier subproblema que son no factibles debido a la falta de vectores
factibles son eliminados.
Despues que todos los subproblemas se han analizado, la solución pro-
visional óptima se convierte en la solución óptima de nuestro problema
inicial. Este es siempre un proceso finito.

Ejemplo 2.19 Queremos resolver el problema (P̃ )

Mı́nimizar 3x2 + 2x3

bajo

2x1 + 2x2 − 4x3 = 5 4x2 + 2x3 ≤ 3,


xi ≥ 0. x1 , x3 ∈ Z

El PPL de fondo es

Mı́nimizar 3x2 + 2x3 bajo


2x1 + 2x2 − 4x3 = 5, 4x2 + 2x3 ≤ 3, xi ≥ 0.

Cuya solución óptima es 5/2 0 0 . Dado que xi no es un entero, debemos
“dividir” el problema. Hasta ahora no tenemos una solución factible provisional.
Los dos subproblemas son

Mı́nimizar 3x2 + 2x3 bajo


2x1 + 2x2 − 4x3 = 5, 4x2 + 2x3 ≤ 3,
x1 ≤ 2, xi ≥ 0.

Mı́nimizar 3x2 + 2x3 bajo


2x1 + 2x2 − 4x3 = 5, 4x2 + 2x3 ≤ 3,
x1 ≥ 3, xi ≥ 0.
50 CAPÍTULO 2. PROGRAMACIÓN LINEAL

Sus respectivas soluciones óptimas son


1
 3
2 2 0 , coste =
2
1
 1
3 0 4 , coste =
2
El primero de estos respecta la condicion entera, y por lo tanto es tomado como
nuestra solución óptima provisional. Dado que el coste del segundo es menor
que el coste de sa solución provisional debemos considerar este subproblema,
puesto que podrı́a contener una mejor solución. Por otro lado, dado que la se-
gunda solución no respecta la condición entera debemos dividir este problema y
obtenemos.
Mı́nimizar 3x2 + 2x3 bajo
2x1 + 2x2 − 4x3 = 5, 4x2 + 2x3 ≤ 3,
x1 ≥ 3, x3 ≤ 0, xi ≥ 0.
y
Mı́nimizar 3x2 + 2x3 bajo
2x1 + 2x2 − 4x3 = 5, 4x2 + 2x3 ≤ 3,
x1 ≥ 3, x3 ≥ 1, xi ≥ 0.
El primero es insatisfactible dado que x3 = 0, y de la primera restricción ten-
emos 2x1 + 2x2 = 5. Esto junto con x1 ≥ 3 y x2 ≥ 0 es imposible. Este subprob-
lema debe ser descartado. La solución optima para el segundo es 9/2 0 1
con costo 2. Desde que este costo es mayor que el de la solución provisional,
eliminamos este problema sin cambiar la solución provisional. Dado que no hay
mas subproblemas que solucionar, la solución provisional es la solución optima
para el problema inicial.
1
 3
2 2 0 , coste =
2

Note como difiere de la solución optima sin la restricción entera.


En la practica, no es facil decidir en que variable debe ser dividida de tal modo
que el proceso resulta tan corto y eficiente como sea posible. No hay reglas fijas
para determinar la escogencia mas eficiente y cualquier situación. Cualquier
información disponible a priori del problema puede decidir el camino a escoger
entre las alternativas disponibles.

2.6. Ejercicios
1. Dibuje en el plano la región deteminada por las desigualdades
x2 ≥ 0, 0 ≤ x1 ≤ 3, −x1 + x2 ≤ 1, x1 + x2 ≤ 4.
2.6. EJERCICIOS 51

En el (los) punto(s) donde las siguientes funiones tienen sus valores mı́ni-
mos y máximos.

2x1 + x2 , x1 + x2 , x1 + 2x2 .

2. Resuelva graficamente los siguientes dos problemas:

Máximizar 2x1 + 6x2

sujeto a

−x1 + x2 ≤ 1, 2x1 + x2 ≤ 2, x1 ≤ 0, x2 ≥ 0.

Mı́nimizar − 3x1 + 2x2


sujeto a
x1 + x2 ≤ 5, 0 ≤ x1 ≤ 4, 1 ≤ x2 ≤ 6.

3. Determine los valores del parametro d tal que el conjunto factible deter-
minado por

x1 + x2 + x3 ≤ d, x1 + x2 − x3 = 1, 2x3 ≥ d,

es vacio.

4. Determine los vectores donde la función lineal 2x1 + 3x2 + x3 toma su


máximo bajo las restricciones

x1 ≥ 0, x2 ≥ 0, x2 ≥ 0,
x1 + x2 + 2x3 ≥ 200,
3x1 + 2x2 + 2x3 ≤ 300.

5. El valor máximo de la función 3x1 + 2x2 − 2x3 se busca con respecto a las
restricciones

4x1 + 2x2 + 2x3 ≤ 20,


2x1 + 2x2 + 4x3 ≥ 6,
x1 ≥ 0, x2 ≥ 0,

pero el signo de x3 no esta restringido. Encuentre la(s) solución(es) ópti-


ma(s).

6. Determine el valor máximo de 18x1 + 4x2 + 6x3 bajo las restricciones

3x1 + x2 ≤ −3, 2x1 + x3 ≤ −5, x1 ≥ 0, x2 ≥ 0, x3 ≥ 0,

revisando el problema dual.


52 CAPÍTULO 2. PROGRAMACIÓN LINEAL

7. Considere el siguiente problema primario:


Máximizar 1,1x1 + 1,2x2 + x3
sujeto a
2x1 + 2x2 + 2x3 ≤ 10, x1 + 3x2 + x3 ≤ 10, 4x1 + x2 + x3 ≤ 10
3x1 + x2 + 3x3 ≤ 10, x1 + 2x2 + 3x3 ≤ 10, 3x1 + 2x2 + x3 ≤ 10,
x1 ≥ 0, x2 ≥ 0, x3 ≥ 0.
Formule el dual y resuelvalo.
8. Encuentre explicitamente la solución óptima del PPL
Mı́nimizar x1 + x2 + x3
sujeto a
x1 + 2x2 + 3x3 = b1 , x1 − x2 − x3 = b2 ,
en terminos de b1 y b2 . Encuentre la solución óptima del problema dual
y revise su relación con el gradiente del valor óptimo del primario con
respecto a b1 y b2 .
9. Resuelva el problema del tejado en el capı́tulo 1, calcule las cantidades de
cada modelo que deben ser enviadas para máximizar los beneficios.
10. Resuelva el ejercicio del sistema de resortes del capı́tulo 1 para el siguiente
conjunto de datos.
a) ubicacion de los nodos fijos. (1, 0), (0, 1), (−1, 0), (0, −1).
b) k = 1
c) F = (1, 1).
11. Resuelva el problema del transporte del capı́tulo 1 con el siguiente conjunto
de datos
a) n = 3, m = 2.
b) u1 = 2, u2 = 2, u3 = 2, v1 = 5, v2 = 2.
c) c11 = 2, c12 = 1, c21 = 3, c22 = 1, c31 = 2, c32 = 3.
12. Trate de describir la mejor solución al problema de inversión en el capı́tulo
1.
13. Resuelva el problema del andiamaje propuesto en el capı́tulo 1, donde las
cargas x1 y x2 son aplicadas exactamente en los puntos medios de las
barras CD y EF , respectivamente.
14. Aunque hay muchos paquetes informaticos para resolver PPL de dimen-
sión grande, no es muy dificil disear un programa para implementar el
metodo simplex. Hagalo en algu lenguaje (C, Fortran, Maple, Mathemat-
ica, Matlab, etc) y uselo para resolver los siguientes problemas.
2.6. EJERCICIOS 53

a) Máximizar x1 + x2 − x6 sujeto a

x1 ≥ 0, x2 ≥ 0, x3 ≥ 0, x4 ≥ 0, x5 ≥ 0, x6 ≥ 0,
x1 + x2 + x3 + x4 + x5 + x6 = 1.
b) Máximizar x1 − x2 + x3 − x4 + x5 − x6 bajo las restricciones

x1 ≥ 0, x2 ≥ 0, x3 ≥ 0, x4 ≥ 0, x5 ≥ 0, x6 ≥ 0,
x1 + x2 + x3 + x4 + x5 + x6 ≥ −1.
c) Máximizar x1 + 2x2 + 3x3 + 4x4 + 5x5 + 6x6 bajo las restricciones

x1 ≥ 0, x2 ≥ 0, x3 ≥ 0, x4 ≥ 0, x5 ≥ 0, x6 ≥ 0,
6x1 + 5x2 + 4x3 + 3x4 + 2x5 + x6 ≤ 1, 6x1 + x2 + 5x3 + 2x4 + 4x5 + 3x6 ≤ 1
d ) Máximizar x1 − x2 + x3 − x4 + x5 − x6 + x7 − x8 + x9 − x10 bajo las
restricciones

−1 ≤ x1 + x2 ≤ 1, −1 ≤ x1 + x2 + x3 ≤ 1,
−1 ≤ x2 + x3 + x4 ≤ 1, −1 ≤ x3 + x4 + x5 ≤ 1,
−1 ≤ x4 + x5 + x6 ≤ 1, −1 ≤ x5 + x6 + x7 ≤ 1,
−1 ≤ x6 + x7 + x8 ≤ 1, −1 ≤ x7 + x8 + x9 ≤ 1,
−1 ≤ x8 + x9 + x10 ≤ 1, −1 ≤ x9 + x10 ≤ 1.
15. Algunas funciónes no linales se pueden tratar en el contexto de los PPL.
Trate de formular y resolver el siguiente problema.
Mı́nimizar |x1 | − x2
sujeto a
x1 + |x2 | ≤ 1, 2|x1 | − |x2 | ≤ 2.
(Pista: La función | · | puede ser modelada de forma lineal descomponien-
dola en la suma de dos variables independientes no negativas, de la misma
manera que una variable que no esta restringida en signo es la differencia
de dos tales variables).
16. Considere el PPL simple.
Máximizar x1 + 2x2
sujeto a x1 + x2 ≤ 1, 0 ≤ x1 ≤ 1, 0 ≤ x2 . Muestre que el metodo
simplex entra a un proceso cı́clico escogiendo como inicialización la matriz
correspondiente a las variables x1 , x2 . Note como la desigualdad x1 ≤ 1
es redundante con x1 + x2 ≤ 1, 0 ≤ x1 , x2 . Pruebe si eliminando esa
desigualdad, el metodo simplex evita el proceso cı́clico.
54 CAPÍTULO 2. PROGRAMACIÓN LINEAL
Capı́tulo 3

Programación no lineal

3.1. Problema modelo


El problema que trataremos en este capı́tulo tiene una estructura similar a
la de un PPL. Nos gustaria aprender como

Mı́nimizar C(x) bajo A(x) ≤ 0.

En la situación de un PPL ambos el funcional de costo C y las funciones que


determinan la admisibilidad A eran lineales. Si cualquiera C o alguno de los
componentes de A fueran no lineales, el problema anterior de dice que esun
problema de programación no lineal (PPNL). Como nuestros lectores pueden
facilmente inferir, estos problemas son considerablemente mas complejos que
sus contrapartes lineales. Suponemos que todas las funciones son suaves a no
ser que se diga lo contrario.
A pesar que hemos escrito las restricciones en la forma de desigualdades,
estas se puden expresar como igualdades y/o desigualdades como ha sido men-
cionado en el capı́tulo anterior, donde enfatizamos que multiplicando por −1
cambia la dirección de una desigualdad, y que esa igualdad es equivalente a
dos desigualdades. Dado que las restricciones en forma de igualdades y deigual-
dades juegan un papel importante el PPNL, ellas tipicamente son distinguidas
con diferentes nombres, a traves de este capı́tulo nos apegaremos a la siguiente
forma general de un PPNL.

Definición 3.1 Forma general de un PPNL La forma estándar de un PPNL


es
Mı́nimizar f (x) sujeto a g(x) ≤ 0, h(x) = 0.
donde x ∈ Rn .

Una primera primera pregunta esta relacionada con la existencia de soluciones


óptimas para este problema. Ya sabemos que incluso un PPL puede no tener
soluciones óptimas. Esto tambien es cierto para un PPNL. Un resultado tı́pico

55
56 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

asegura la existencia de soluciones óptimas esta basado en la continuidad de las


funciones involucradas en tal problema.
Teorema 3.2 Suponga que f , g y h son funciones continuas y una de las sigu-
ientes dos situaciones ocurre.
1. El conjunto de vectores factibles g(x) ≤ 0, h(x) ≤ 0 es un conjunto acotado
en Rn .
2. El conjunto de vectores factibles no esta acotado pero

lı́m f (x) = +∞.


|x|→∞,g(x)≤0,h(x)=0

Entonces el problema de minimización asociado admite al menos una solu-


ción.
Hay mas situaciones en las cuales un PPNL admite una solución óptima, pero
dilucidar eso es parte de la meta de este capı́tulo (Sección 5).
En varias situaciones practicas, el teorema anterior es suficiente para asegu-
rar la existencia de una solución óptima. El tema principal en esta capı́tulo es
como encontrarla.
Para entender mejor como encontrar o aproximar soluciones óptimas pro-
cederemos en dos pasos. Primero, tratartemos el caso en que las restricciones
vienen en la forma de igualdades.

Mı́nimizar f (x) sujeto a h(x) = 0.

Entones examinaremos el caso general aplicando apropiadamente la situación


de las restricciones de igualdad. El asunto principal que nos gustaria entender
es, ¿Qué es especial acerca de las soluciones óptimas de un PPNL?, ¿Qué deben
satisfacer para ser elegibles como solucion óptima para un problema de opti-
mización particular? Esta es la pregunta acerca de las condiciones necesarias
para la optimalidad, y nos llevara a las condiciones de Karush-Kuhn Tucker
(KKT). Investigaremos varios ejemplos explicitos. A continuación nos intere-
satemos en situaciones en las cuales estas condiciones necesarias de optimalidad
son de hecho suficientes para detectar soluciones óptimas (globales) a un PPNL.
Esto abrirá el problema de entender la convexidad, y por que es una propiedad
deseable al minimizar un funcional de costo bajo un conjunto de restricciones.
Terminaremos el capı́tulo con una breve descución acerca de la dualidad para
un PPNL.
En el tratamiento de un PPNL es importante hacer una distinción entre los
minimos locales y globales
Definición 3.3 Un vector x(0) ∈ Rn es un mı́nimo local de f sujeto a g(x) ≤ 0,
h(x) = 0 si.
g(x(0) ) ≤ 0, h(x(0) ) = 0.
y
f (x(0) ) ≤ f (x)
3.2. MULTIPLICADORES DE LAGRANGE 57

Para todo x tal que

g(x) ≤ 0, h(x) = 0, |x − x(0) | ≤ 

para algun  > 0.


Un vector x(0) es un mı́nimo global de f sujeto a g(x) ≤ 0, h(x) = 0 si

g(x(0) ) ≤ 0, h(x(0) ) = 0.

y
f (x(0) ) ≤ f (x)
Para todo x tal que
g(x) ≤ 0, h(x) = 0.
Note la diferencia entre estos dos conceptos.

3.2. Multiplicadores de Lagrange


En esta sección trataremos de derivar las condiciones que debe satrisfacer
un vector para que sea posible que sea una solución óptima para el problema

Mı́nimizar f (x) bajo h(x) = 0.

Puede ser posible que algunos de nuestros lectores sepan de antemano como
escribir las condiciones de optimalidad para el problema anterior. i.e. aquellas
ecuaciones en terminos de f y h que deben satisfacer las soluciones óptimas. Esto
se ensea en ocasiones en cursos de cálculo avanzado. Se necesitan introducir los
multiplicadores de Lagrange los cuales son parametros asociados a las restric-
ciones, uno por cada constante individual. Si λ es tal vector de multiplicadores
para el sistema de ecuaciones.

∇f (x) + λ∇h(x) = 0, h(x) = 0. (3.1)

donde los pares (x, λ) de puntos y multiplicadores son las incognitas. Note que
tenemos tantas ecuaciones como incognitas n + m, si x ∈ Rn , λ ∈ Rm y tenemos
m restricciones, de tal manera que h : Rn → Rm . Es importante enfatizar que no
todas las soluciones de ( 3.1) seran soluciones óptimas para nuestro problema.
Lo que es cierto es quen nuestras soluciones óptimas estan entre las soluciones
de ( 3.1). Otras soluciones de este systema pueden corresponder a máximos,
mı́nimos y máximos locales, puntos de silla, etc.
Teorema 3.4 Toda solución óptima de

Mı́nimizar f (x) bajo h(x) = 0

debe ser una solución del sistema de condiciones necesarias de optimalidad

∇f (x) + λ∇h(x) = 0, h(x) = 0.


58 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

Antes de dar alguna justificación para las condiciones de optimalidad a aquellos


lectores interesados, vamos a mirar varios ejemplos y ver como se pueden usar
para encontrar soluciones óptimas.
Ejemplo 3.5 Nos gustarua encontrar los valores extremos (máximos y mı́ni-
mos) de la función
f (x1 , x2 , x3 ) = x31 + x32 + x33
sobre la esfera x21 + x22 + x23 = 4. En este caso n = 3, m = 1, y

h(x1 , x2 , x3 ) = x21 + x22 + x23 − 4

Las condiciones de optimalidad (3.1) pueden ser escritas

3x21 + 2λx1 = 0,
3x22 + 2λx2 = 0,
3x23 + 2λx3 = 0,
x21 + x22 + +x23 = 4.

Escribir estas ecuaciones no debe representar ninguna dificultad. Aunque en-


contrar sus soluciones puede requerir, cierta habilidad computacional. Dado que
tenemos que enfrentarnos con un sistema de ecuaciones, no hay manera de saber
de antemano cuantos vectores estamos buscando, asi que en la manipulación de
las ecuaciones tenemos que asegurar que no se pierde ninguna solución, dado
que en particular la solución óptima que estamos buscando puede ser precisa-
mente aquella no encontrada. En nuestra situación particular, factorizando las
primeras tres ecuaciones, obtenemos

(32 + 2λ)x1 = 0,
(32 + 2λ)x2 = 0,
(32 + 2λ)x3 = 0,
x1 + x22 + +x23 = 4.
2

Las primeras tres ecuaciones tienen son productos, y de esta manera tendremos
ocho posibilidades dependiendo en los factores que se anulan. Pero, dada la
simetria de las ecuaciones con respecto a las tres variables independientes, nos
basta con considerar cuatro casos
1. x1 = x2 = x3 = 0: esta situación es inconsistente con la restricción.
2. x1 = x2 = 0, x3 6= 0: teniendo en cuenta la restricción obtenemos
x3 = ±2, y la tercera ecuación puede usarse para determinar el valor
del multiplicador (no nos interesa encontrarlo por el momento).
3. x1 = 0, x2 , x3 6= 0: de la segunda y tercera ecuaciones
√ concluimos que
x2 = x3 y usando esto en la restricción, x2 = x3 = ± 2.
4. x1 , x2 , x3 6= 0: las primeras tres ecuaciones nos llevan
√ a x1 = x2 = x3 , y
la restricción nos aegura que el valor comun es ±2/ 3.
3.2. MULTIPLICADORES DE LAGRANGE 59

Teniendo en cuenta la simetria tenemos los siguientes candidatos para puntos


máximos y mı́nimos.
√ √ √ √ √ √
(±2, 0, 0), (0, ±2, 0), (0, 0, ±2), (0, 2, 2) (0, − 2, − 2) ( 2, 0, 2)
√ √ √ √ √ √ √ √ √
(− 2, 0, − 2) ( 2, 2, 0) (− 2, − 2, 0), (2/ 3, 2/ 3, 2/ 3),
√ √ √
(−2/ 3, −2/ 3, −2/ 3).

Ademas, la observación importante que la esfera es una superficie acotada en el


espacio nos permite saber que de hecho la función continua f debe alcanzar sus
dos valores extremos en alguna parte. Por lo tanto los puntos donde se alcanzan
el máximo y el mı́nimo estan contenidos en la lista anterior. Simplemente cal-
culando f en esos puntos y comparando sus valores, encontramos que el máximo
es 8 y se alcanza en (2, 0, 0), (0, 2, 0), (0, 0, 2) mientras que el mı́nimo es −8 y
corresponde a (−2, 0, 0), (0, −2, 0), (0, 0, −2).

Ejemplo 3.6 Supongamos que estamos interesados en conocer los valores ex-
tremos (máximos y mı́nimos) de la misma función f no sobre todos los pun-
tos de la esfera, sino sobre aquellos que estan al mismo tiempo en el plano
x1 + x2 + x3 = 1, esto es, nos interesa encontrar los puntos extremos de la
función
f (x1 , x2 , x3 ) = x21 + x22 + x23
sobre el conjunto de puntos que satisface

x21 + x22 + x23 = 4, x1 + x2 + x3 = 1.

Esta vez las ecuaciones de optimalidad son

3x21 + 2λ1 x1 + λ2 = 0,
3x22 + 2λ1 x2 + λ2 = 0,
3x23 + 2λ1 x3 + λ2 = 0,
x21 + x22 + x23 = 4,
x1 + x2 + x3 = 1.

un sistema de cinco ecuaciones con cinco incognitas x1 , x2 , x3 , λ1 , λ2 . Dado que


no estamos particularmente interesados en encontrar los valores de los multipli-
cadores, y que las tres primeras ecuaciones implican que ek gradiente de f debe
ser una combinación linal de los gradientes de las dos restricciones, podemos
reescribir el sistema anterior como
2
3x1 2x1 1
2
3x2 2x2 1 = 0,
2
3x3 2x3 1
x21 + x22 + x23 = 2,
x1 + x2 + x3 = 1.
60 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

Despues de factorizar el 3 en la primera columna y el 2 en la segunda, obtenemos


un determinante de Vandermonde, cuya expresión es bien conocida

(x1 − x2 )(x1 − x3 )(x2 − x3 ) = 0,


x21 + x22 + x23 = 4,
x1 + x2 + x3 = 1.

Es elemental encontrar las soluciones de este sistema. Hay tres posibilidades,


que debido a la simetria del problema se reducen escencialmente a una:

x1 = x2 , x3 = 1 − 2x1 , 2x1 + (1 − 2x1 )2 = 4.

Las otras soluciones son obtenidas por permutaciones de las variables. Las solu-
ciones explicitas son
√ √ √
1 22 1 22 1 22
( + , + , − ),
3 √6 3 √6 3 √6
1 22 1 22 1 22
( − , − , + ),
3 6 3 6 3 6
y aquellas obtenidas por permutaciones de estas. Es directo comprobar que el
primer conjunto de soluciones corresponde al valor máximo, y los otros al min-
imo. Note como estas soluciones difieren de aquellas del ejemplo 3.5.

¿Cómo podemos entender de donde vienen estos multiplicadores? Una forma


simple de entender esto es considerar las curvas parametrizadas

τ (−δ, δ) → Rn , δ > 0,

cuya imagen τ (−δ, δ) esta enteramente contenido en el conjunto factible de


nuestro problema de optimización, esto es

h(τ (t)) = 0, para todo t ∈ (−δ, δ).

Si suponemos que x0 ∈ Rn es mı́nimo o máximo local, incluso un punto de


silla con respecto a los vectores del conjunto factible, y suponga que τ pasa por
x0 , para t = 0, τ (0) = x0 , entonces la composición f (τ (t)) debe de la misma
manera tener un mı́nimo, máximo o punto de silla en t = 0. Lo que caracteriza
a cualquiera de estas situaciones es que la derivada se debe anular. Por la regla
de la cadena,

df (τ (t))
0= = ∇f (τ (0))τ 0 (0) = ∇f (x0 )τ 0 (0)
dt t=0

Por otro lado, dado que h(τ (t)) = 0 para todo t, debemos tener de la misma
manera
0 = ∇h(x0 )τ 0 (0).
3.2. MULTIPLICADORES DE LAGRANGE 61

Dado que el vector τ 0 (0) es arbitrario, en cuanto respecta a estas dos igual-
dades, comcluimos que estas se pueden dar simultaneamente si y solo si ∇f (x0 )
pertenece al generado de ∇h(x0 ). Esta dependencia lineal de lugar a los multi-
plicadores. Vease la figura 3.1.
Es importante sealar que el metodo de los multiplicadores puede fallar en hal-
lar los puntos extremos cuando algunas de las restricciones hi (x) = 0 representan
una superficie (o hipersuperficie) que no es regularm en el sentido que su vector
gradiente ∇hi , o cuando la intersección de los conjuntos hi (x) = 0 es de alguna
manera no regular. Estos puntos son llamados singulares, y deben ser incluidos
en la lista para valores máximos y/o mı́nimos. Este tema (parametrización no
suave) esta por fuera de los objetivos de este texto, vease [8].
Ejemplo 3.7 Nos gustaria determinar el valor mı́nimo que puede alcanzar la
expresión
Xn
y= ai x2i
i=1

con respecto a las variables xi (ai > 0 son numeros dados) bajo la restricción
n
X
c= xi ,
i=1

donde c es una constante dada. Las condiciones de optimalidad nos llevan a


2aj xj + λ = 0, j = 1, 2, . . . , n,
de tal manera
λ
xj = −
2aj
Si tomamos de nuevo estas expresiones en la restriccioñ
n
X λ
c=− ,
i=1
2a j

entonces
2c
λ=− n ,
X 1
i=1
ai
y en consecuencia
c
xj = n
X 1
aj
a
i=1 i
que es la unica solución al sistema. Note que dado que la función objetivo crece
hacia +∞ cuando algunas de las variables crecen indefinidamente, el que se
alcance el mı́nimo esta garantizado. Por lo tanto la solución debe corresponder
al mı́nimo. El mánimo es +∞,dado que la restricción no es capaz de evitar que
algunas de las variables crezcan de forma indefinida.
62 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

El siguiente ejemplo es mas sofisticado pero instructivo.

Ejemplo 3.8 Sea a un vector fijo en R3 . Se quiere determinar los valores ex-
tremos del funcional lineal ax bajo las restricciones.

x1 x2 + x1 x3 + x2 x3 = 0,
|x|2 = x21 + x22 + x23 = 1.

Por simplicidad utilizaremos la notación

det x = x1 x2 + x1 x3 + x2 x3

Note que el conjunto de vectores x que satisfacen las dos restricciones es un


subconjunto de la esfera unidad en R3 , por lo tanto es acotado, y el funcional de
costo necesariamente alcanza sus valores máximo y mı́nimo. Estos pueden ser
detectados examinando las condiciones de optimalidad, explicitamente

a + λ1 Ax + λ2 x = 0
det x = 0,
|x|2 = 1,

La matriz A es  
0 1 1
A = 1 0 1
1 1 0
La primera ecuación (vectorial) nos informa que el vector a debe ser una com-
binación lineal (cuyos coeficientes son los multiplicadores) de los vectores Ax
y x. Eliminando los multiplicadores, podemos escribir esta ecuación de forma
equivalente pidiendo
a

0 = Ax ,
x

Pero dado que


a

0 = x
x

tambien tenemos
a a a

0 = Ax + x = x + Ax
x x x

Sea e = (1, 1, 1 =. Note que x + Ax = x e e, asi que

a

0 = xe e .
x
3.2. MULTIPLICADORES DE LAGRANGE 63

Notese que xe no se puede anular porque para uno de nuestros vectores factibles
x tenemos que
|xe|2 = |x|2 + 2 det x = 1.
Por lo tanto debemos tener
a

e = 0,

x
y esto implica
x = sa + te
para ciertos coeficientes s y t. Si tomamos esta expresión en las restricciones
|x|2 = 1 y det x = 0, despues de algunos calculos obtenemos las dos ecuaciones
cuadraticas
det(a)s2 + 2stae + 3t2 = 0,
|a|2 s2 + 2stae + 3t2 = 1.
inmediatamente obtenemos
s2 (|a|2 − det a) = 1.
Note que (¿por qué?)
|a|2 − det a ≥ 0
Si
|a|2 − det a = 0,
entonces la ecuación para s es inconsistente. De hecho, en esta situción no
tenemos ninguna solución para las condiciones de optimalidad. Aunque esta
situación puede ocurrir solo cuando a es un multiplo de e (¿Por qué?), asi que
el funcional de costo es
cxe,
como se indico anteriormente
|xe|2 = |x|2 + 2 det x = 1,
y por lo tanto el funcional es continuo para todos los vectores factibles.
Suponga que a es tal que
|a|2 − det a > 0,
En este caso tenemos dos soluciones para s:
1
s = ±p
|a|2 − det a
Tomando estos valores en la primera de las ecuaciones cuadraticas ( 3.2) y
resolviendo para t (usando de nuevo la formula para (ae)2 ) nos lleva a
1 ae
t=± ± p
3 3 |a| − det a
2
64 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

El par de soluciones validas son


! !
1 1 ae −1 1 ae
p ,± − p , p ,± + p
|a|2 − det a 3 3 |a|2 − det a |a|2 − det a 3 3 |a|2 − det a

Entre estos cuatro vecores tenemos que en encontrar los valores máximo y mı́ni-
mo del producto interno
ax = s|a|2 + tae,
Examinado las cuatro posiblidades, concluimos que el valor máximo es
1 p 2 
2 |a| − det a + |ae| ,
3
y se alcanza en
x = sa + te
para
1 ae ae
s= p , t= − p
2
|a| − det a 3|ae| 3 |a|2 − det a
El valor mı́nimo es el máximo cambiado en signo y se alcanza en el punto
opuesto del máximo.

3.3. Condiciones de optimalidad Karush-Kuhn-


Tucker
Nos gustaria tratar el caso general en el cual algunas de las restricciones
estan en la forma de igualdades y otras estan en la forma de desigualdades:

Minimizar f (x) sujeto a g(x) ≤ 0, h(x) = 0.

Exploremos primero que clase de condiciones necesita satisfacer un punto de tal


manera que pueda ser una solución óptima a nuestro problema. ¿Qué tiene de
especial tal punto?
Sea x(0) un tal punto mı́nimo, y sea M el conjunto de ı́ndices M = {1, 2, . . . , m}
donde m es precisamente el numero de componentes de g. Consideramos el sigu-
iente subconjunto de M :

J = {j ∈ M : gj (x(0) ) = 0}.

Puede suceder que este conjunto es el conjunto vacı́o. Para j perteneciente


a M \J, decimos que la restricción correspondiente esta inactiva. Miremos al
problema auxiliar

Minimizar f (x) sujeto a gj (x) ≤ 0, j ∈ J, h(x) = 0.

Nuestra solución inicial x(0) sera ciertamente un punto mı́nimo local, aunque
tal vez no global (¿Por qué?), y en consecencia dado que todas las restricciones
3.3. CONDICIONES DE OPTIMALIDAD KARUSH-KUHN-TUCKER 65

de este problema estan en la forma de igualdades existen una coleccioñ de mul-


tiplicadores
µj , j ∈ J, λ ∈ Rd ,
tal que X
∇f (x(0) ) + µj ∇gj (x(0) ) + λ∇h(x(0) ) = 0. (3.2)
j∈J

Mas aun, afirmamos que µj puede ser tomado no negativo. La razon intuitiva
de esto es que f tiene un mı́nimo en el punto x(0) pero cada una de las gj tiene
un máximo, ya que gj (x(0) ) = 0 es ek valor máximo que puede tomar gj en el
conjunto factible para nuestro problema inicial. Por lo tanto los gradientes de f y
gj en el punto x(0) deben “Apuntar en direcciones diferentes”. Esta afirmacion
requiere naturalmente mas rigor y cuidado, pero es suficiente para nuestros
propositos. Para j ∈ M \J, tomamos µj = 0. Asi llegamos a las condiciones
necesarias de optimalidad, conocidad como las condiciones de Karush-Kuhn-
Tucker (KKH).
Teorema 3.9 Si x es una solución óptima no singular para nuestro problema,
entonces existe un vector de multiplicadores (µ, λ) tal que

∇f (x) + µ∇g(x) + λ∇h(x) = 0,


µg(x) = 0,
µ ≥ 0, g(x) ≤ 0. h(x) = 0.

La necesidad de tales condiciones quiere decir que las soluciones óptimas de


deben buscar entre aquellos vectores x para los cuales podemos encontrar un
conjunto de multiplicadores (µ, λ) que satisfacen estas condiciones. Esta infor-
mación nos deje selecionar aquelos puntos que son factibles para ser puntos
mı́nimos. En aquellas situaciones en las cuales todas aquellas soluciones pueden
encontrarse, y tenemos la informacion que nuestron problema debe de hecho
tener al menos alguna solución, estas puden ser identificados simplemente cal-
culando el costo de todos los candidatos y decidiendo el mı́nimo.
Antes de analizar varios ejemplos explicitos, nos gustaria hacer un par de
observaciones importantes.
1. Si el problema de optimización consisten en encontrar el máximo en vez
del mı́nimo, jugando con los signos menos no es dificil escribir los cambios
en las condiciones KKT. De hecho tendriamos

∇f (x) + µ∇g(x) + λ∇h(x) = 0,


µg(x) = 0,
µ ≤ 0, g(x) ≤ 0. h(x) = 0.

Si no nos preocupammos acerca del signo de los componentes de µ, la lista


de puntos factibles para extremos crecera significativamente con soluciones
que no pueden ser ni máximos ni mı́nimos, dado que los signos de los com-
ponentes de µ estaran mesclados, positivos y negativos son no negativos,
66 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

Por lo tento, si todos los componentes de µ sonb no negativos el punto


correspondiente puede ser un punto de mı́nimo (nunca un máximo), si
todas las componentes son no positivas el punto puede sr un punto de
mı́nimo (nunca de máximo), y si hay componentes positivas y negativas
de µ entonces el punto nunca pude ser de máximo o mı́nimo (punto de
silla).
2. Las condiciones
µ ≥ 0, g(x) ≤ 0, µg(x) = 0,
son equivalentes (¿Por qué?) a

µ ≥ 0, g(x) ≤ 0, µj gj (x) = 0, j = 1, 2, . . . , m.

asi que para encontrar todas las soluciones para las condiciones KKT ten-
emos que encontrar todas las soluciones al sistema de n + m + d ecuaciones
con n + m + d incognitas x, µ, lambda,

∇f (x) + µ∇g(x) + λh(x) = 0,


µj gj = 0, j = 1, 2, . . . , m.
hi = 0, i = 1, 2, . . . , d

que tambien satisfacen µ ≥ 0, g(x) ≤ 0, en el caso que estemos interesados


en el mı́nimo, y que satisfacen µ ≤ 0, g(x) ≤ 0, en el caso de un máximo.
Cuando se trata de resolver el sistema anterior, y gracias a su estructura
particular, podemos simpre proceder examinando los 2m casos

µi = 0, gj (x) = 0, j ∈ J, i ∈ M \ J,

donde J recorre todos los posibles subconjuntos de M = {1, 2, . . . , m}.


Entre todas las diferentes posibilidades que podemos obtener, debemos
descartar aquellas que son imposibles o en las que no estamos interesados.
Aunque puden haber otros metodos razonables para resolver el sistema,
esta es la forma racional de organizar los calculos. Por otro lado, cualquier
observacion basada en la naturaleza particular del problema, que nos lleve
a descartar algunas de las soluciones, puede simplificar considerablemente
el procedimiento que nos lleva a la solución.
Veamos varios ejemplos.
Ejemplo 3.10 * Suponga que cierta red electrica consiste en tres diferentes
canales a traves de los cuales para cierta corriente electrica. Si xi , i = 1, 2, 3 es
la cantidad de energı́a que pasa a traves del canal i, la perdida total en la red
esta dada por la función
x2
 
1
p(x1 , x2 , x3 ) = x3 + x21 + x22 + 3 .
2 10
Si se planea transfirar una cantidad total r, determine las cantidades a traves
de cada canal para minimizar la perdida de energı́a.
3.3. CONDICIONES DE OPTIMALIDAD KARUSH-KUHN-TUCKER 67

Evidentemente el problema se reduce a encontrar el mı́nimo de la función


anterior proviendo una medida de la perdida de energı́a bajo las restricciónes

x1 + x2 + x3 = r xi ≥ 0.

Dado que el conjunto de puntos en R3 que satisface estas restricciones es aco-


tado (¿Por qué?) el punto mı́nimo que estamos buscando debe ser una de las
soluciones del sistema de optimalidad
x3
x1 − µ1 + λ = 0, x2 − µ2 + λ = 0, 1+ − µ3 + λ = 0,
10
µ1 x1 = 0, µ2 x2 = 0, c1 + x2 + x3 = r,

donde las incognitas son x1 , x2 , x3 , µ1 , µ2 , µ3 , λ. Estamos interesados en aquellas


soluciones que satisfacenx1 , x2 , x3 , µ1 , µ2 , µ3 ≥ 0. Note que λ esta asociado con
la restricción de igualdad x1 +x2 +x3 = r, y como tal no podemos tener ninguna
restricción en su signo. Resolver el sistema anterior requiere un poco de abilidad
en encontrar todas las soluciones correspondientes a las ocho posibilidades.

x1 = x2 = x3 = 0,
x1 = x2 = µ3 = 0,
x1 = µ2 = x3 = 0,
µ1 = x2 = x3 = 0,
x1 = µ2 = µ3 = 0,
µ1 = x2 = µ3 = 0,
µ1 = µ2 = x3 = 0,
µ1 = µ2 = µ3 = 0,

Despues de estudiar con cierto cuidado estas posibilidad y descartar las solu-
ciones en las cuales no estamos interesados, llegamos a la solución óptima

(r/2, r/2, 0) con multiplicadores asociados (0, 0, 1 − r/2, −r/2)

cuando r ≤ 2 y

((10+r)/12, (10+r)/12, 5(r−2)/6) con multiplicadores (0, 0, 0, −(10+r)/12)

para r ≥ 2. Notese como ambas soluciones coinciden cuando r = 2.

Ejemplo 3.11 Tenemos una cuerda de longitud a para atar una caja de arriba
a abajo a traves de dos direcciones perpendiculares. ¿Cúal es el volumen máximo
que puede tener una tal caja?
Nos gustaria determinar el máximo de la función volumen

V = (x1 , x2 , x3 ) = x1 x2 x3
68 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

sujeto a las condiciones

x1 , x2 , x3 ≥ 0, 2x1 + 2x2 + 4x3 ≤ a,

asumiendo que x3 es la altura. Con algun cuidado de los signos menos que
deben ser introducidos para transformar nuestro problema al formato estándar,
tenemos el sistema

x2 x3 − µ1 + 2µ4 = 0, x1 x3 − µ2 + 2µ4 = 0, x1 x2 µ3 + 4µ4 = 0,


x1 µ1 = 0, x2 µ2 = 0, x2 µ3 = 0, (2x1 + 2x2 + 4x3 − a)µ4 = 0.

Buscamos aquellas soluciones con

x1 , x2 , x3 ≥ 0,
2x1 + 2x2 + 4x3 ≤ a,
µ1 , µ2 , µ3 , µ4 ≤ 0.

Dado que las primeras tres ecuaciones nos permiten expresar µ1 , µ2 y µ3 en


terminos de x1 ,x2 , x3 y µ4 , podemos eliminar las primeras variables y obtener
un sistema equivalente

x1 (x2 x3 − 2µ4 ) = 0,
x2 (x1 x3 − 2µ4 ) = 0,
x3 (x2 x1 − 4µ4 ) = 0,
(2x1 + 2x2 + 4x3 − a)µ4 = 0.

Si sumamos las tres primeras ecuaciones y tenemos en cuenta la ultima llegamos


a
== 3x1 + x2 + x3 + aµ4 ,

por lo tanto
µ4 = −3x1 x2 x3 /a.

Si aplicamos esta indentidad a las ecuaciones del sistema anterior y notamos


que el mámixmo de V no puede anularse (x1 x2 x3 6= 0), desde que este es el
mı́nimo, obtenemos la siguiente solución unica para el máximo

x1 = x2 = a/6, x3 = a/12.

Mas aun los multiplicadores asociados son

(0, 0, 0, −a2 /144),

Que efectivamente corresponden a un punto máximo, Dado que la region de la


restricción es acotada esta es la solución óptima buscada.
3.3. CONDICIONES DE OPTIMALIDAD KARUSH-KUHN-TUCKER 69

Ejemplo 3.12 Nos gustaria encontrar el mı́nimo y el máximo de

f (x1 , x2 , x3 ) = x31 + x32 + x33

sobre la region determinada por las restricciones

x21 + x22 + x23 ≤ 4, x1 + x2 + x3 ≤ 1.

Es un ejercicio sencillo escribir las condiciones KKT para esta situación.

3x21 + µ1 2x1 + µ2 = 0,
3x22 + µ1 2x2 + µ2 = 0,
3x23 + µ1 2x3 + µ2 = 0,
µ1 (x21 + x22 + x23 − 4) = 0,
µ2 (x1 + x2 + x3 − 1) = 0,
x21 + x22 + x23 ≤ 4,
x1 + x2 + x3 ≤ 1.

Ademas, debemos tener en cuenta las restricciones en los signos de los multipli-
cadores, µ1 y µ2 , cuando estamos buscando el máximo o el mı́nimo: µ1 , µ2 ≥ 0
si estamos buscando el máximo y µ1 , µ2 ≤ 0 si estamos buscando el mı́nimo.
Separamos la discución el sistema anterior en cuatro casos.
1. µ1 = µ2 = 0: en este caso inmediatamente obtenemos la solución x1 =
x2 = x3 = 0, que es admisible para ambos el máximo y el mı́nimo,
2. µ1 = 0, x1 + x2 + x3 = 1: es directo obtener

µ2 = −3x21 = −3x22 = −3x23 ,

por lo tanto (1/3, 1/3, 1/3) es la solución unica, que es admisible para el
máximo pero no para el mı́nimo, dado que µ2 = −1/3;
3. µ2 = 0, x21 + x22 + x23 = 4: añadiendo las tres primeras ecuaciones (despues
de eliminar µ2 ) y teniendo en cuenta que la suma de los cuadrados es la
unidad, obtenemos

12 + 3(x1 + x2 + x3 )µ1 = 0.

Esta identidad descarta la posibilidad que x1 + xx + x3 = 0, asi


−6
µ1 = .
x1 + x2 + x3
Si aplicamos esta igualdad a las tres primeras condiciondes de optimalidad,
llegamos a la conclusión que o las corrdenadas de los puntos se anulan o
de lo contrario su valor comun es
4
x1 + x2 + x3
70 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

Ahora encontramos las siguientes soluciones (descartando simultaneamente


aquellas que nosatisfacen x1 + x2 + x3 ≤ 1):

(−2, 0, 0), (0, −2, 0), (0, 0, −2),


√ √ √ √ √ √
(− 2, − 2, 0) (− 2, 0, − 2) (0, − 2, − 2)
 
−2 −2 −2
√ ,√ ,√ .
3 3 3
Dado que todas las soluciones satisfacen x1 + x2 + x3 < 0 (µ1 > 0), estas
seran factibles para el mı́nimo.
4. El ultimo caso esta asociado con las igualdades

x1 + x2 + x3 = 1, x21 + x22 + x23 = 4

que ha sido resuelta en la sección anterior. Despues de calcular los valores de la


funcion costo f en todos aquellos puntos seleccionados llegamos a la conclusión
que el máximo se alcanza en
√ √ √ !
1 22 1 22 1 22
+ , + , + ,
3 6 3 6 3 3

y el valor mı́nimo se alcanza en

(−2, 0, 0), (0, −2, 0), (0, 0, −2).

Compare estos resultados con aquellos de los ejemplos 3.5 y 3.6

3.4. Convexidad
Hemos desarrollado un entendimiento basico de como detectar las condi-
ciones necesarias de optimalidad que deben sr satisfechas en un punto de máxi-
mo o mı́nimo (local).
Tambien hemos enfatizado suficientemente en el hecho que las soluciones a
las condiciones KKT pueden incluir otros puntos que no son necesariamente
los puntos que estamos buscando. Pueden existir soluciones a las condiciones
de optimalidad KKT que no corresponden a los valores extremos. La pregunta
fundamental que nos gustaria hacer es si hay algun requisito en la función obje-
tivo y/o las funciones que expresan las restricciones de tal manera que podamos
asegurar que las soluciones de las condiciones KKT son exactamente los puntos
donde se alcanza el mı́nimo (o el máximo), sin una discusión “a posteriori” sobre
la naturaleza de las diferentes soluciones. Como veremos despues, este tema es
muy importante dado que en la mayoria de situaciones que uno encuentra en
la practica, las soluciones de las condiciones KKT no pueden ser encontradas
explicitamente y necesitan ser aproximadas. Uno nunca esta seguro que todas
las soluciones se han encontrado. Dada la relevancia de este tema, analizareos
3.4. CONVEXIDAD 71

la situacion en mayor detalle comenzando con el caso mas basico de progra-


mación no lineal de tal manera que podames entender la idea de la nocion de
convexidad.
Consideremos el siguiente problema

Minimizar f (x) x ∈ R

asumiendo que f es tan regular como lo necesitemos. La condicion KKT se


reduce en esta situación simplificada a

f 0 (x) = 0.

Esta ecuación (no lineal) puede tener varias soluciones, incluso infinitas, y
cualquiera de ellas podria ser el púnto mı́nimo buscado. Pero algunos de es-
os pueden corresponder a puntos de mı́nimo local, máximo local o puntos silla.
Consideremos la siguiente situación:

f (x) → +∞ when x → ±∞
f 0 (x) = 0 tiene solución unica x0 .

No es dificil notar que x0 es realmente el punto de mı́nimo global, y por lo tanto


la solución unica a nuestro problema inicial (¿Por qué?). El primer requisito
en los limites infinitos de f puede ser relativamente sencillo de revisar una vez
conocemos f . ¿Pero como podemos estar seguros de la unicidad de la solución
de la ecuación los puntos criticos sin necesidad de resolverla? Si suponemos que
f admite una segunda derivada continua f 00 (x), y f 00 (x) > 0 para toda x (que en
muchos casos es facilmente verificable), entonces podemos asegurar el segundo
requisito, o sea la ecación f 0 (x) = 0 solo puede tener una solución (‘?Por qué?)
Ademas, sabemos del calculo elemental que la condición f 00 > 0 quiere decir
que f es convexo. En resumen.

1. f (x) → +∞, x → ±∞: la ecuación f 0 (x) = 0 tiene al menos una solución


que corresponde al máximo global de f .

2. f 00 (x) > 0 para todo x: f es estrictamente convexo, y la ecuación f 0 (x) = 0


tiene a lo mas una solución.

Por lo tanto, si se cumplen ambos requerimientos, la unica solución de f 0 (x) = 0


la unica solución de la ecuación f 0 (x) = 0 correspondera al mı́nimo global. Ba-
sicamente esta es la razon porque la convexidad es deseable cuando se trata con
problemas de minimización (lo mismo ocurre con concavidad para los proble-
mas de maximización). Otra forma de resumir las observaciones anteriores es
que bajo convexidad , las condiciones necesarias para para la optimalidad se
convierten en suficientes, dado que la convexidad elimina la existencia de mı́ni-
mos locales que no son globales. Dado que estamos ante uno de los conceptos
mas importantes en optimización, vamos a verlo con mas coudado.
72 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

Definición 3.13 Un conjunto K en Rn es convexo si para cada par de vectores


x, y ∈ K, el segmento de linea que los conecta tambien está en K:

tx + (1 − t)y ∈ K, t ∈ [0, 1]

Una función f : K ⊂ Rn → Rn es convexa si K es un conjunto convexo y

f (tx + (1 − t)y) ≤ tf (x) + (1 − t)f (y), cuando x.y ∈ K, t ∈ [0, 1].

Antes de intetar un mejor entendimiento de esta condición, vale la pena con-


vencerse que es un concepto clave relevante a problemas de minimización. Apren-
deremos mas de convexidad en la siguiente sección. Nuestros lectores probable-
mente saben que quiere decir la condición de convexidad geometricamente. Vease
la figura 3.2
La razon por la cual la convexidad es tan importante el los problemas de
minimizacioñ puede ser formulada como sigue.
Teorema 3.14 Sea
f : K ⊂ Rn → Rn
convexa, donde K tambien es convexa. Si x0 es un mı́nimo local para f entonces
x0 es un mı́nimo global para f en K.
Para justificar este resultado, note que la condicion que x0 sea un mı́nimo local
para f en K quiere decir

f (x0 ) ≤ f (x), |x − x0 | < , x ∈ K,

donde  > 0 es un numero dado. Definimos

B = {x ∈ K : |x − x0 | < }

Sea y ∈ K un punto arbitrario (en K). El segmento que une a x0 y y tiene


puntos que pertenecen a B ,

tx0 + (1 − t)y ∈ B , t suficientemente cerca de 1.

Por lo tanto para tal t y por la convexidad de f ,

f (x0 ) ≤ f (tx0 + (1 − t)y) ≤ tf (x0 ) + (1 − t)f (y)

Reorganizando estos terminos tenemos

(1 − t)f (x0 ) ≤ (1 − t)f (y)

Dado que (1 − t) > 0 para tal t concluimos que

f (x0 ) ≤ f (y).

La arbitrariedad de y ∈ K nos da el resultado esperado.


3.4. CONVEXIDAD 73

La definición de convexidad (Insertar link aqui) quiere decir que para cada
pareja de puntos en K, x, y , los valores de f en el segmento que los une no
sobrepasa los de la ”‘lı́nea”’que pasa por (x, f (x)), (y, f (y)). Dicho de manera
diferente los valores de f estan debajo de cada una de sus secantes. Si la función
f es diferenciable, entonces se puede dar una caracterización alternativa de
la convexidad. Esto es mas apropiado en nuestro contexto porque se puede
relacionar directamente a las condiciones de optimalidad. Incluso, si la función
f es dos veces diferenciable con matriz hessiana continua, entonces la convexidad
se puede dar en terminos de las segundas derivadas.

Proposición 3.15 Sea


f : K ⊂ Rn → R
una función continua donde K es convexo abierto y convexo.

1. Si f es diferenciable y ∇f es continua, entonces f es convexa si y solo si

f (y) ≥ f (x) + ∇f (x)(y − x), x, y ∈ K. (3.3)

2. Si f es dos veces diferenciable y ∇2 f es continua, entonces f es convexa


si y solo si ∇2 f (x) es semidefinida positiva para todo x ∈ K.

Dado que la expresión


f (x) + ∇f (x)(y − x),
considerada como una función de y ∈ K, es la ecuación del hiperplano tangente a
f en x, la desigualdad (3.3) dice que la grafica de f esta por encima de cualquiera
de sus hiperplanos tangentes. Para la caracterización con las segundas derivadas,
podemos decir de manera equivalente que si f es dos veces diferenciable y ∇2 f
es continuaentonces f es convexa si y solo si los valores propios de ∇2 f (x) son
no negativos en cada x ∈ K.
La prueba de la proposición 3.15 procede en dos pasos. Primero, mostraremos
que la afirmación es cierta para funciones de una variable h : J → R donde J
es un intervalo en mathbbR.
Por lo tanto supongamos que h es diferenciable y que satisface

h(tx + (1 − t)y) ≤ th(x) + (1 − t)h(y), x, y ∈ J, t ∈ [0, 1].

Reorganizando y manipulando estos terminos podemos transformar la ecuación


anterior (cuando 1 − t > 0 y x 6= y) en

h(tx + (1 − t)y) − h(x)


(y − x) ≤ h(y) − h(x)
(1 − t)(y − x)

Dado que esta desigualdad es corecta para cada t ∈ [0, 1], tomando limites
cuando t → 1− , podemos concluir que

(y − x)h0 (x) ≤ h(y) − h(x).


74 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

Esta es la primera parte de la proposición. Si ademas asumimos que h tiene


una segunda derivada en cada punto de J donde las desigualdades anteriores se
cumplen, tendremos dependiendo si y > x o x > y,
h(y) − h(x) h(y) − h(x)
≥ h0 (x), ≤ h0 (x).
y−x y−x
Por el teorema del valor medio aplicado a h0 aseguramos la existencia de un z
tal que
, o h0 (z) ≤ h0 (x), z ≤ x.
La arbitrariedad en y lleva a la arbitrariedad de z, y por lo tanto h0 es una
función no decreciente que se traduce en la no negatividad de h00 . Este es el
criterio de convexidad cuando las funciones son dos veces diferenciables.
Finalmente argumentamos que si h es una función dos veces diferenciable, y
su segunda derivada es no negativa entonces necesariamente debemos tener
h(tx + (1 − t)y) ≤ th(x) + (1 − t)h(y), x, y ∈ J, t ∈ [0, 1].
Para lograr esto reorganizamos los terminos en la expresión
th(x) + (1 − t)h(y) − h(tx + (1 − t)y)
de la siguiente manera:
t(h(x) − h(tx + (1 − t)y)) + (1 − t)(h(y) − h(tx + (1 − t)y))
= t(1 − t)(x − y)h0 (a) − t(1 − t)(x − y)h0 (b),
donde hemos usado el teorema del valor medio, y los puntos a y b estan entre x
y tx + (1 − t)y, y tx + (1 − t)y y y, respectivamente. De nuevo por el teorema
del valor medio aplicado a h0 existe un número c entre x y y tal que
th(x) + (1 − t)h(y) − h(tx − (1 − t)y) = t(1 − t)(x − y)(a − b)h00 (c).
Si notamos que el producto (x-y)(a-b) es siempre no negativo (aunque ambos
factores pueden ser negativos), y ya que los otros factores son negativos nos
lleva a tener
th(x) + (1 − t)h(y) − h(tx + (1 − t)y) ≥ 0
como se deseaba.
Para el segundo paso, considere una función f : K → R de varias vari-
ables. La prueba para este caso esta basada en lo que ya hemos mostrado para
funciones de una variable simplemente aplicando las conclusiones previas a las
secciones
h(s) = f (x + s(y − x))
para x, y fijos, y aplicando convenietemente la regla de la cadena para calcular
las derivadas y segundas derivadas. Dejamos los detalles al lector interesado.
A veces es importante, porque nos lleva a consecuencias significativas, saber
lo que ocurre cuando cambiamos las desigualdes por desigualdades estrictas
en las tres formas de comprobar convexidad. Las funciones que tienen esta
propiedad adicional se llaman estrictamente convexas, hablaremos ahora de con-
vexidad extricta.
3.4. CONVEXIDAD 75

Definición 3.16 Una función f : K → R, donde K ⊂ Rn es convexo se llama


estrictamente convexa si f es continua (esto es redundante) y
f (tx − (1 − t)y) < tf (x) + (1 − t)f (y), x 6= y ∈ K, t ∈)(0, 1)
Se puede mostrar una caracterización simililar a la de la propisición 3.15 para
convexidad estricta cuando la función f es mas regular.
Proposición 3.17 Sea
f : K ⊂ Rn → R
una función continua donde K es convexo y abierto.
1. Si f es diferenciable y ∇f es continua, entonces f es estrictamente con-
vexa si y solo si
f (y) > f (x) + ∇f (x)(y − x), x 6= y ∈ K;

2. Si f es dos veces diferenciable y ∇2 f es continua, entonces f es estricta-


mente convexo si y solo si su matriz Hessiana es definida positiva en cada
punto en K, o incluso, por el criterio de Sylvester, los subdeterminantes
principales son estrictamente positivos para cada punto de K.
La prueba es un ejercicio interesante de revisar la pruba de la propisición 3.15 re-
visando las desigualdades y las desigualdades estrictas. Como una regla general
podemos decir que la convexidad sin convexidad estrica esta asociada tipica-
mente con “las partes planas de la grafica”
Terminamos esta sección revisando varios ejemplos de funciones convexas.
Ejemplo 3.18 Toda funcion linear (o afı́n) es convexa pero no estrictamente
convexa.
Hay cuatro operaciones elementales que respetan convexidad:
1. Una combinación linal de funciones convexas con coeficientes no negativos
es una función convexa.
2. Si T : Rn → R es lineal y h : R → R es convexa, entonces la composición
f (x) = h(T x) es convexa.
3. Si g : K ⊂ Rn → R es convexa y h : R → R es convexa y no decreciente,
entonces la composición f (x) = h(T x) es convexa.
4. El supremo de cualquier familia de funciones convexas es de nuevo una
función convexa.
Es facil verificar estas cuatro afirmaciones usando directamente la definicion de
convexidad.
Usando funciones lineales y las operaciones basicas mencionadas anterior-
mente podemos generar nuevas funciones convexas o revisar la convexidad de
ejemplos conocidos. Por ejemplo si notamos que
|x| = sup{ax : |a| = 1},
76 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

resulta que la distancia al origen, |x| es una función convexa. Mas aun dado
que
h(t))tp , t ≥ 0,
es una función convexa si p ≥ 1,
g(x) = |x|p
es convexa si p ≥ 1. Esta funcion es estrictamente convexa si p > 1. Si tomamos
p
h(t) = 1 + t2 ,
que es de nuevo una funcion convexa no decreciente cuando t ≥ 0, la función
p
g(x) = 1 + |x|p
sera convexa si p ≥ 2, y estrictamente convexa si p > 2. Las funciones
p
|x|p + |x|q , ax + 1 + |x|p ,
|x − a|p , |ax|p + |bx|q ,
son convexas cuando los exponentes p, q son mayores o iguales a 1.
Si f es una función que no es convexa, definimos su convexificación como
Cf (x) = sup{h(x) : h ≤ f, h convexa}
que es la función convexa mas grande entre aquellas que estan debajo de f . Si f
ya es convexa, su convexificacion es f misma. Poe ejemplo, si f esta dada por
f (x) = mı́n{(x + 1)2 , (x − 1)2 },
que no es convexa, su compactificación es la función definida a trozos por

(x + 1)2 x ≤ −1,
g(x) = 0 |x| ≤ 1
(x − 1)2 x≥1

una función convexa pero no estrictamente convexa.


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Ejemplo 3.19 Considerese ahora
Minimizar |x|2 bajo ax ≤ c, bx ≤ d,
n
con a, n, x ∈ R , c, d ∈ R. De nuevo la función objetivo es estrictamente convexa
y aquellas en las restricciones son lineales, asi que el problema tiene a lo mas
una solución, la cual en caso que exista, debe ser la unica solución para las
condiciones KKT. Estas son
2x + µ1 a + µ2 b = 0,
µ1 (ax − c) = 0, µ2 (bx − d) = 0,
junto con µ1 , µ2 ≥ 0, ax ≤ c, bx ≤ d. Un estudio completo de estas ecuaciones
llevara a cuatro posibilidades
3.4. CONVEXIDAD 77

1. µ1 = µ2 = 0, x = 0: Esta sera la solución óptima si x = 0 es factible i.e,


c ≥ 0, d ≥ 0.

2. µ1 = 0, µ2 = −2d/|b|2 , x = (d/|b|2 )b: d debe ser negativo, y la factibilidad


de este vector x implica la restricción

dab ≤ c|b|2 ;

3. µ2 = 0, µ1 = −2c/|a|2 , x = (x/|a|2 )a: c debe ser negativo, y la factibilidad


de x implica
cab ≤ d|a|2 ;

4. Cuando ambos multiplicadores no se anulan, pueden ser determinados co-


mo la solución del sistema lineal

|a|2 µ1 + abµ2 = −2c,


abµ1 + |b|2 µ2 = −2d,

Cuyo determinante, |a|2 |b|2 − (ab)2 no se anula a menos que a y b sean


colineales. La solución esta dada por

2(dab − c|b|2 ) 2(cab − d|a|2 )


µ1 = , µ2 =
|a|2 |b|2 − (ab)2 |a|2 |b|2 − (ab)2

y el vector óptimo es
1
x= (µ1 a + µ2 b).
2
Para resumir, dependiendo de los datos particulares a, b, c, d, podemos tener las
siguientes cuatro situaciones:

1. c ≥ 0, d ≥ 0;

2. d < 0, dab ≤ c|b|2 ;

3. c < 0, cab ≤ d|a|2 ;

4. dab > c|b|2 , cab > d|a|2 .

Es importante anotar que estas no son cuatro soluciones diferentes sino una
unica que depende de la relación entre los diferentes vectores a y b, y los escalares
c y d. Todas estas posibilidades estas dibujadas en la figura 3.3.

Ejemplo 3.20 Considere el problema de encontrar el mı́nimo de

|x|4 + |x − a|2

bajo la restricción
|x|2 ≤ 1,
78 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

donde a es un vector dado. Dado a la convexidad estricta de la función costo, la


solución óptima debe corresponder a la solución unica de las condiciones KKT

4|x|2 x + 2(x − a) + µ2x = 0, µ(|x|2 − 1) = 0,

donde debemos tener en cuanta las restricciones adicionales µ ≥ 0, |x| ≤ 1. Los


dos casos admisibles son

µ = 0, x = ta , 2|a|2 t3 + t − 1 = 0,

µ = |a| − 3, x = a/|a|.

En la primera situación debemos exigir |a| ≤ 3 para que x = ta sea factible,


dado que
(2|x|2 + a)x = a.

Note que el polinomio cubico que especifica a t tiene una raiz real unica que esta
en el intervalo (0, 1/|a|) si |a| ≤ 3, si |a| > 3,la solución óptima corresponde a
la segunda alternativa.

Ejemplo 3.21 Se planea disear una estructura apuntalada como la mostrada


en la figura 3.4 de acuerdo al criterio del peso mı́nimo sujeto a la restricción
de la máxima deflección permitida en el nodo libre y la coma mı́nima en las
secciones transversales de los miembros. Los datos de este problema son

a1 , a2 , A0 , A1 , A2 , x0 .

Todos deben ser positivos y dependen de la geomtria de la estructura, constantes


del material, cargas en los puntos indicados, etc. Especificamente el problema
puede ser puesto como
Minimizar a1 x1 + a2 x2

sujeto a
A1 A2
+ ≤ A0 , x1 , x2 ≥ 0,
x1 x2

donde x1 y x2 son precisamente las areas transversales que se planean disear.


Se invita al lector a verificar que este PPNL es convexo, asi que la solución
óptima se puede entontrar resolviendo las condiciones KKT. Especificamente,
su µi , i = 1, 2, 3, son los multiplicadores asiciados con las tres restricciones en
la forma de desigualdades, tenemos
3.5. DUALIDAD Y CONVEXIDAD 79

µ1 A1
a1 − − µ2 = 0,
x21
µ2 A2
a2 − − µ3 = 0,
x22
 
A1 A2
µ1 + − A0 = 0,
x1 x2
µ2 (x0 − x1 ) = 0,
µ3 (x0 − x3 ) = 0,
A1 A2
+ − A0 ≤ 0,
x1 x2
x0 − x1 ≤ 0, x0 − x2 ≤ 0,
µ1 ≥ 0, µ2 ≥ 0, µ2 ≥ 0.

Una discución completa de la solución requerira un numero diferente de casos


dependiendo de los valores particulares del conjunto de datos anteriores. Para
definir el problema tomaremos

1
a1 = , a2 = 61
5
A0 = 12, A1 = 25 A2 = 100,
x0 = 10

Todos estos dados en sus unidades correspondientes. Para este conjunto de


datos, la solución óptima es

x1 = 10, x2 = 120

Con multiplocadore
1
µ1 = µ2 = µ3 = 0, µ2 = .
5
Los detalles se le dejan al lector interesado.

3.5. Dualidad y convexidad


Como en PL, le podemos asociar a cada PPNL otro PPNL, llamado su
dual, de tal manera que hay una relación cercana entre los dos. Dado que la
PNL es mucho mas complicada que su contraparte lı́neal, podemos esperar que
la dualidad en PNL es mucho mas complicada. Esta sección pretende ser una
mera introducción al tema. Desde el punto de vista practico, la dualidad en
PNL aparece como una herramienta poderosa en tratar de aproximar de mejor
manera las soluciones óptimas en PNL. Como tal, esta cercanamente conectada
a la convexidad como veremos.
80 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

Definición 3.22 Dado un problema primario

Minimizar f (x) bajo g(x) ≤ 0, h(x) = 0,

definimos su cual como el PPNL

Maximizarθ(µ, λ) bajoµ ≥ 0,

donde a θ se le llama la función dual, y esta definida en los pares de multipli-


cadores (µ, λ) de la siguiente manera

θ(µ, λ) = ı́nf [f (x) + µg(x) + λh(x)].


x

El porque el problema esta definido de esta manera de volvera mas claro a medi-
da que entendamos mejor la conección entre estos dos PPNL y los relacionemos
con las condiciones de optimalidad KKT. En cierto sentido, la idea de fondo
es incorporar la condiciones necesarias para la optimalidad como parte de la
factibilidad para un nuevo problema como sigue:

Minimizar F (x, µ, λ) = f (x)

sujeto a

g(x) ≤ 0, h(x) = 0, ∇f (x) + µ∇g(x) + λ∇h(x) = 0, µ ≥ 0, µg(x) = 0.

La función que aparece en la definición de la función dual es conocido como el


Lagrangiano asociado con el problema

L(x, µ, λ) = f (x) + µg(x) + λh(x).

Lema 3.23 Suponga que las funciones f , g y h sol tales que el infimo que define
a la función dual θ siempre se alcanza para todos los pares (µ, θ), µ ≥ 0. Sea
X = X(µ, θ) el punto donde se alcanza el mı́nimo de tal manera que

θ(µ, λ) = f (X) + µg(X) + λh(X).

Entonces si la función X(µ, λ) es diferenciabla, tambien lo es θ y

∇µ θ(µ, λ) = g(X), ∇λ (µ, λ) = h(X).

Nuestra justificación es un calculo directo. Si

θ(µ, λ) = f (X) + µg(X) + λh(X).

por un lado por la regla de la cadena,

∇µ θ = (∇f (X) + µ∇g(X) + λ∇h(X))∇µ X + g(X);

pero por otro, si el Lagrangiano alcaza su mı́nimo en X, su gradiente con re-


specto a x debe anularse,

∇f (X) + µ∇g(X) + λ∇h(X) = 0,


3.5. DUALIDAD Y CONVEXIDAD 81

asi que
∇µ θ = g(X)
como se deseaba. Tenemos un resultado simiplar con el gradiente respecto a λ
De la misma manera como argumentamos en el caso de PL, la dualidad se
muestra en dos pasos. La siguiente proposición es normalmente conocida como
dualidad debil.
Proposición 3.24 Sean f, g y h diferenciables.
1. Siempre se tiene que
máx{θ(µ, λ) : µ ≥ 0} ≤ mı́n{f (x) : g(x) ≤ 0, h(x) = 0}.

2. Si (µ, λ) es factible para el problema dual (µ ≥ 0), x es factible para el


primal (g(x) ≤ 0, h(x) = 0), y
θ(µ, λ) = f (x),
entonces (µ, λ) y x son soluciones óptimas para ambos el dual y el primal
respectivamente.
La explicación es elemental. Note que su µ ≥ 0, g(x) ≤ 0, y h(x) = 0, entonces
θ(µ, λ) ≤ f (x) + µg(x) + λh(x) ≤ f (x).
Esto implica dualidad debil. La segunda parte de la farmación tambien es di-
recta.
La diferencia
mı́n{f (x) : g(x) ≤ 0, h(x) = 0} − máx{θ(µ, λ) : µ ≥ 0}.
se le llama la difencia de dualidad. Cuando no hay tal diferencia, ambos proble-
mas son equivalentes, y el primal puede ser resuelto resolviendo el dual. Esta es
la idea principal de todos los algoritmos númericos para calcular las soluciones
óptimas revisando el dual. Aparte de la interpretación del problema dual por si
mismo, esta es la razon principar porque el problema dual es tan importante en
PNL. La convexidad es de nuevo la hipotesis principal bajo la cual la diferencia
de dualidad se anula.
Teorema 3.25 Suponga que f y g son funciones convexas diferenciables, h es
afı́n, y el problema de optimización que define la función dual es siempre soluble.
Entonces ambos problemas, el primal y el dual, son solubles simultaneamente y
no hay diferencia de dualidad.
Para justificar, identifiquemos por (P) y (D) el primal y el dual respectiva-
mente. Asuma primero que el primal es soluble, asi que existe un vector x y
multiplicadores (µ, λ) que satisfacen las condiciones KKT, explicitamente,
,
µg(x) = 0, µ ≥ 0, f (x) ≤ 0, h(x) = 0.
82 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

Todas estas condiciones implican que x es factible para (P), y (µ, λ) es factible
para (D); por la convexidad de f y g y por la linealidad de h, x es un punto
donde se alcanza el mı́nimo del Lagrangiano, pero dado que µg(x) = h(x) = 0,
tenemos
θ(µ, λ) = f (x).
La proposición 3.24 implica que (µ, λ) es una solución óptima para (D).
Conversamente, suponga que (µ, λ) es uuna solución óptima para el dual. Si
entonces aplicamos las condiciones KKT a este problema obtenemos

∇µ θ(µ, λ) − y = 0, ∇λ θ(µ, λ) = 0,
µ ≥ 0, y ≥ 0, yµ = 0,

donde y es el multiplicador asociado con la restricción µ ≥ 0. Teniendo en cuenta


el lema 3.23, si x es un punto donde

θ(µ, λ) = f (x) = µg(x) + λh(x).

de tal manera que


∇f (x) + µ∇g(x) + λ∇h(x) = 0,
y podemos reinterpretar esas condiciones de optimalidad como

g(x) = ∇µ θ(µ, λ) = y ≥ 0,
h(x) = ∇λ θ(µ, λ) = 0,
µg(x) = µy = 0.

Bajo las suposiciones de convexidad para f, g y la linealidad en h que satisfacen


ls condiciones KKT asegura que x es una solución óptima para (P). Es relevante
enfatizar lo que esta dualidad significa que el mı́nimo

mı́n{máx{f (x) + µg(x) + λh(x) : µ ≥ 0} : g(x) ≤ 0, h(x) = 0}

y el máximo

máx{mı́n{f (x) + µg(x) + λh(x) : g(x) ≤ 0, h(x) = 0} : µ ≥ 0}

son iguales. La dualidad es siempre una pregunta de cuando las operaciones


min-max son reversibles. Terminamos esta sección calculando la función dual
en un ejemplo particular.

Ejemplo 3.26 Considere el PPNL

Minimizar x21 + x22 + x23

sujeto a
5
x21 + x22 + 3x3 ≤ , x1 + x2 + x3 = −2
2
3.6. EJERCICIOS 83

Dado que en esta situción se dan los criterios de optimalidad, encomrar la fun-
ción dual para este problema se reduce a resolver las condiciones KKT para
(µ, λ) fijos olvidando las constantes, i.e. resolver el sistema

2x1 + 2x1 µ + λ = 0,
2x2 + 2x2 µ + λ = 0,
2x3 + 3µ + λ = 0,

La solución una es
−λ −1
x1 = x2 = , x3 = (λ + 3µ).
2(1 + µ) 2

Llevando estos valores al lagrangiano correspondiente tenemos la función dual

−λ3 1 5
θ(µ, λ) = − (λ + 3µ)2 + µ + 2λ.
2(1 + µ) 4 2

Ahora es cuestion de calcular que las soluciones óptimas para el dual y el pri-
mal estas relacionadas a traves de la dualidad y las condiciones KKT. Estas
soluciones óptimas son

1 1 5
x1 = x2 = − , x3 = −1, µ= , λ= ,
2 4 4
y el valor óptimo para el primal y el dual es valor común es 3/2.

3.6. Ejercicios
1. Determine los puntos criticos de la función

f (x1 , x2 ) = (2 − x1 − x2 )2 + (1 + x1 + x2 − x1 x2 )2 .

E intente dicernir su naturaleza.

2. Encuentre el mı́nimo y el máximo de la función


n
X
σ2 = Ti2 x2i
i=1

con respecto a las variables xi sujeto a


n
X
c= xi .
i=1

c y Ti son constantes fijas.


84 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

3. Dado la función objetivo


n−1
X
2
P = (xi − 1) + x2n + (xi+1 − xk )2 ,
i=1

encuentre los puntos criticos de P


a) sin ninguna restricción
b) bajo
n
X
c= ai xi ,
i=1

donde c y a son constantes.


4. Muestre que la función

f (x1 , x2 , x3 ) = x21 + x22 + x23 − x1 − x2 − x3

es convexa. Encuentre los valores extremos de f bajo las condiciones

x21 + x22 = 4, −1 ≤ x3 ≤ 1.

5. Describa la region del plana determinada por las desigualdades

x21 − x22 ≤ 1, x21 + x22 ≤ 4.

Encuentre los valores extremos de

f (x1 , x2 ) = x21 + 2x22 + x1 x2

sobre aquella region.


6. Defina las funciones

F (a) = mı́n{f (x1 , x2 , x3 ) : g(x1 , x2 , x3 ) = a},


G(a) = mı́n{f (x1 , x2 , x3 ) : g(x1 , x2 , x3 ) ≤ a},
,

para a ∈ R y

f (x1 , x2 , x3 ) = x41 + x21 (1 − 2x22 ) + x22 + x23 − 2x1 + 1,


g(x1 , x2 , x3 ) = x41 + x42 + x43

Encuentre expresiones explicitas para F (a) y G(a). Estudie los dos prob-
lemas
mı́n F (a), mı́n G(a)
y su relación. ¿Que puede concluir acerca del mı́nimo de la función f sobre
todo R3 ? Haga lo mismo para escogencias mas simples de la función g.
3.6. EJERCICIOS 85

7. Encontre el valor máximo y mı́nimo de


Z x2
1
f (x1 , x2 ) = dt
x1 1 + t4

sobre la región determinada por x21 x22 = 1.

8. Encuentre el punto mas cercano de la superficie xy +xz +yz = 1 al origen.


Haga lo mismo para la superficie con ecuación x2 + y 2 − z 2 = 1.

9. Resuelva el problema de función de utilidad Cobb-Douglas en el capı́tulo


1.

10. Resuelva el problena de la localización de varis puntos de servicio donde


los clientes son conocidos (capı́tulo 1) para el siguiente conjunto de datos:
Las localizaciones de los consumidores son

(1, 0), (2, 1), (−1, 2), (3, −1), (−1, −2), (3, −2),

y se van a construir tres puntos de servicio.

11. Resuelva el problema de la escalera del capı́tulo 1.

12. Resuelva el problema del andamiaje del capı́tulo 1.

13. Cierto conjunto de datos experimentales que relaciona dos variables x y y


esta a nuestra disposición.

(xi , yi ), i = 1, . . . , n.

Se espera una relación lineal entre x y y, pero esto tipicamente no es posible


de manera exacta. Determine los mejores coeficientes a, b de tal manera
que el error cuadratico del conjunto de datos con respecto al modelo lineal

y = ax + b

sea mı́nimo.

14. Cuando cierto sistema Ax = b no es soluble, podemos estar interesados en


el vector x “mas cerca” de ser una solución minimizando el error cuadratico
(o de otro tipo)
1
Minimizar |Ax − b|2
2
sobre todos los posibles x. Resuelva este problema en general y aplique su
solución al caso particular
   
1 −1   4
1 1  x1
= 0 .
x2
2 −1 0
86 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL

15. Se diseara una barra conica truncada, sujeta en su borde superior y col-
gando verticalmente (Vease ejercició 10 capı́tulo 1) bajo las siguientes
restricciones (Figura 3.5): longitud total L, volumen total a nuestra dis-
posición V , densidad del material que se va a usar ρ, Modulo de Young
del material que se va a usar E. El problema es minimizar la elongación
total bajo la acción de un peso dado W en su extremo inferior y su propio
peso. Asumimos que la ley de Hooke es valida: Si la sección transversal a
una distancia x del extremo superior se mueve a y(x) bajo la acción de W ,
entonces el esfuerzo en tal sección es y 0 (x) es proporcional (Con constante
1/E) al “stress” en tal secció, y este “stress” es ademas es el cociente
de la carga total actuando en el y el área correspondiente de la sección
transversal. Se determinaran los radios R y r de las secciones superiores e
inferiores.
Si las secciones tranversales son cuadrados, de tal manera que la barra es
una piramide trucada, ¿Se espera la misma solución?
Capı́tulo 4

Tecnicas de Aproximación

4.1. Introducción
Es probable que nuestros lectores hallan notado que resolver un problema de
optimización explicitamente no es una tarea sencilla. De hecho, en la mayoria
de casos es imposible. No solo para aquellos problemas con un número alto de
variables para los cuales es imposibles de calcular a mano sus soluciones ópti-
mas, sino tambien para muchos problemas de tamaño modesto para los cuales
es imposible resolver y manipular tantas ecuaciones. Por lo tanto es importante
mostrar la manera como se pueden aproximar solciones para problemas de op-
timización de manera eficiente. Esta necesidad es inevitable desde el punto de
vista practico y de ingenieria, dado que las aproximaciones explicitas y precisas
de kas soluciones son tan importantes como el entendimiento del problema de
fondo. Como es usual, nuestra meta en este capı́tulo es cubrir el algoritmos
basicos que los investigadores han usado a traves de los años para aproximar
soluciones para problemas de PPNL sin tratar de agotar todas las posibilidades,
describir los avances mas recienteso incluso mostar de donde vienen los algorit-
mos y porque tienen aquella estructura particular. Trataremos de motivar sin
embargo los mas populares de manera que el lector tenga la intuición de su nat-
uraleza sin entrar en los detalles tecnicos. Tambien es cierto que esta es un área
muy tecnica que evoluciona rapidamente, asi que los métodos que parecen ser
mejores ahora probablemente seran abondados en algunos años y reemplazados
por viejas ideas con un nuevo enfoque o por tecnicas totalmente innovadoras.
Vease por ejemplo [17] para una buena investigación en este tema y la impor-
tancia de los s de punto interior hoy en dia.
Hay tambien otra razon importante de porque no describimos una lista com-
pleta de algoritmos o entramos en detalles mas profundos, y esta es que actual-
mente existen paquetes de software muy poderosos cuya función es aproximar
soluciones óptimas en una variedad de situaciones. Estas herramientas liberan
al usuario de la necesidad de preocuparse demasiado acerca de los tecnicismos
relacionadas con los algoritmos practicos y enfocarse en los asuntos de mode-

87
88 CAPÍTULO 4. TECNICAS DE APROXIMACIÓN

lamiento del problema y la interpretación e implementación de las soluciones.


Algunos de estos paquetes de software son AIMMS, AMPL, AMSL, GAMS,
Matlab (Optimization Toolbox) y SNOPT. Hay mucha información sobre este
tema esparcida en Internet. Recomendamos especialmente el sitio [29], que es
casi un sitio maestro para optimización. Particularmente cuando se esta bus-
canque que software es mejor para nuestras necesidades particulares, este es el
sitio a visitar.
Para aquellos lectores interesados en profundizar su entendimiento de las
tecnicas de aproximación y que esten dispuestos a seguir en esta dirección debe-
rian definitivamente recurrir a alguna de las referencias que hemos seleccionado
al final del texto. En particular, algoritmos para problemas grandes de opti-
mización requieren considerable experiencia, paciencia y estudio. Aproximación
es mucho mas que el contenido de este capı́tulo. Para fuentes completas vease
[1], [13], [16], [22], [30] y [32].
Muchos métodos de aproximación númerica para PPNL tienen una natu-
raleza iterativa. Esto quiere decir que el proceso de aproximación procede en
aproximaciones sucesivas cada vez mejores a las soluciones buscadas. De esta
manera, tal algoritmo debe especificar un mecanismo para construir una nueva
iteración de una (o varias) de las que ya tenemos. De esta manera construimos
una sucesión {xk } de aproximaciones sucesivas a la solución óptima real x, con-
fiando en que xk+1 estara mas cerca a x qye su aproximación precesente xk . Es
mas, un exponente α > 0 caracteriza los algoritmos numericos eficiente cuando
|xk+1 − x| ≤ C|xk − x|α , C > 0.
Si interpretamos la diferencia
||xj − x||
como una medida del error que cometemnos cuando tomamos xj como x, la
desigualdad anterior dice que en cada nueva iteración el error es reducido en una
potencia con exponente α. Mientras mas grande es α mejor el método, dado que
el error disminuye mas rapidamente, pero el calculo de la nueva aproximación
puede ser mas caro en terminos computacionales. Debe haber siempre un balance
entre la eficiencia de un algoritmo y el costo computacional asociado con su
implementación.
Cada algoritmo númerico especifico debe determinar de manera precisa la
forma de pasar de una iteración xk a la siguiente xk+1 . Dado que estos son
vectores, podemos pensar esto proceso como una estrategia de dos pasos:
1. Dirección de busqueda: Escoger el vector dk que apunta hacia xk+1 desde
xk , de tal manera que dk es paralelo a xk+1 − xk ; a este vector dk se le
llama la dirección de busqueda.
2. Tamaño del paso: Una vez se ha escogido dk se trata de determinar un
parametro tk de tal manera que
xk+1 = xk + tk dk
a tk se le llama el tamaño del paso.
4.2. MÉTODOS DE BUSQUEDA LINEAL 89

Estos dos elementos, dk y yk son suficientes para determinar una nueva iteración
desde una anterior. Cada algoritmo de optimización completo debe indicar e
incorporar estos dos ingredientes: dirección de la busqueda y tamaño del paso.
Restringiremos nuestra atención en primera instancia a los PPNL sin restric-
ciónes, y trataresmos en este contexto algunos de los algoritmos para decidir en
el tamanó del paso y en la dirección de la busqueda. En el primer caso, de-
scribiremos brevemente los algoritmos de tamanó del paso fijo, interpolación
y regla de oro, ademas nos enfocaremos en los métodos de decenso mas rápi-
do, gradiente conjugado y aquellos cuasi Newton para el segundo caso. Mas
adelante nos concentraremos en las ideas basicas para trabajar con PPNL con
restricciónes incluyendo penalizaciónes y barreras, el método dual y finalmente
el método del Lagrangiano aumentado. Trataremos de permanecer tan especi-
ficos en cada situación como sea posible, con la idea de no confundir al lector
con demasiados resultados.

4.2. Métodos de busqueda lineal


Comenzaremos estudiando la aproximación númerica del problema

Minimizar g(x) x ∈ Rn

Como se menciono en la sección anterior, la busqueda del tamanó del paso debe
hacerse una vez se ha determinado una dirección de busqueda. Por lo tanto
supondremos que se ha escogidouna dirección de busqueda dk que parte de la
aproximación xk , y nos gustaria escoger un parametro tk de tal modo que

xk+1 = xk + tk dk

sera nuestra proxima iteración a la solución óptima que buscamos. Si estamos


interesados encontrar el mı́nimo global de g(x), donde asumimos que g esta
definida en todo Rn , y que el correspondiente problema de minimización tiene
solución, nuestra mejor apuesta es escoger tk como la solución del problema

Minimizar g(xk + tdk ), t ∈ R.

Si definimos
h(t) = g(xk + tdk ), t ∈ R.
esto nos lleva a considerar el problema de minimización unidimensional de la
función h. Dado que h es una sección unidimensional de g a este paso se le
conoce normalmente como una busqueda lineal. Por lo tanto nos concentramos
en encontrar una aproximación para

Minimizar h(t), t∈R

Procederemos a describir brevemente algunos de los métodos mas simples que


pueden y son usados para la situación uno dimensional. Ciertamente podriamos
90 CAPÍTULO 4. TECNICAS DE APROXIMACIÓN

tratar de determinar de manera exacta el punto mı́nimo para la función h,


pero esta estrategia no es tentadora desde un punto de vista practico, dado
que si pudieramos encontrar de manera exacta el punto mı́nimo, el hecho que
tendremos que resolver estos problemas muchas veces de manera sistematica
para problemas de dimiensiones superiores para encontrar una manera eficiente
de aproximar el valor mı́nimo para problemas unidimensionales.
Tamaño del paso fijo o variable Este es el mas elemental de todos los
métodos. Consiste en escoger un tamanó del paso fijo t y tomando aproxima-
ciones sucesivas poniendo
ti+1 − ti = t.
Continuamos de esta manera hasta que
h(ti+1 ) ≥ h(ti );
en este punto reducimos el tamaño de t en un factor significativo y cambiamos
su signo. Ahora procedemos tomando
ti+1 − ti = t
con este nuevo valor de t hasta que de nuevo obtenemos
h(ti+1 ) ≥ h(ti ).
Continuamos repitiendo este proceso iterativamente hasta que una presición
preasignada se obtenga.

Interpolación El método de interpolación consiste en interpolar los valores


de h en tres puntos t1 , t2 , t3 , por un polinimio cuadratico cuyo mı́nimo es
facilmente calculable. Es conveniente para que la ubicación relativa de los valores
cumpla.
t1 < t2 < t3 ,
h(t2 ) < h(t1 ),
h(t2 ) < h(t3 ).
Tal punto mı́nimo, t∗ que minimiza al polinomio de interpolación se con-
sidera una buena aproximación al punto mı́nimo real de h. Si se desea mayor
presición, t∗ remplaza a alguno de los ti de tal manera que la posición relati-
va de los valores de h cumple las condiciones anteriores, y se hacen de nuevo
los calculos hasta que se alcance cierto umbral de presición. Este método resul-
ta muy eficiente para funciones suaves, especialmente porque existen formulas
esplicitas para t∗ en terminos de ti y de h(ti ). De hecho,
1 t21 (h(t2 ) − h(t3 )) + t22 (h(t3 ) − h(t1 )) + t23 (h(t1 ) − h(t2 ))
t∗ =
2 t1 (h(t2 ) − h(t3 )) + t2 (h(t3 ) − h(t1 )) + t3 (h(t1 ) − h(t2 ))
–+Notese que este método es exacto en una sola iteracion cuando h es cuadrat-
ica.
4.3. METODOS DE GRADIENTE 91

Método de la sección dorada El algoritmo de la sección dorada trata de


reducir el tamanó del intervalo donde se encuentra el mı́nimoa k = 0,618034..
Este factor es la sección dorada, y es la solución positiva de la ecuación 1 +
k = 1/k. Supongamos que el mı́nimo se alcanza en un punto en el intervalo.
Consideramos los puntos

t3 = kt1 + (1 − k)t2 , t4 = kt2 + (1 − k)t1 .

Comparando los valores de h(t3 ) y h(t4 ) procedemos como sigue:

1. si h(t3 ) > h(t4 ), el mı́nimo esta en el intervalo (t3 , t2 ), de manera que t3


reemplaza a t1 .

2. si h(t3 ) < h(t4 ), entonces el mı́nimo pertenece al intervalo (t1 , t4 ) y t4


toma el lugar de t2 .

Se aplica este procedimiento iterativamente hasta que el intervalo tiene una lon-
gitud menor que un valor umbral preasignado.

Método de Fibonnaci Esta es una variación del método anterior en la


cual la razon k depende de la iteración que estamos calculando. Los valores de k
cambian de acuerdo con la suseción de Fibbonaci, que se define recursivemente
como
a1 = a2 = 1, aj+2 = aj+1 + aj , j ≥ 1.
En cada iteración usamos el parametro
aj
kj =
aj+1

en vez de k. Note que kj tiende a k, la sección dorada cuando j → ∞


No es justo decir que un método particular es siempre mejor que cualquier otro.
Dependiendo del problema, un método puede ser preferible sobre cualquiera de
los otros. Cada usuario puede encontrar sus preferencias experimentando. En
general podemos decir que el método de interpolación funciona bastante bien
cuando la función es suave. Puede usarse la tecnica de la sección dorada, aunque
para un algoritmo para el caso general existen metodos mas sofisticados. Veanse
las referencias citadas en la introducción a este capı́tulo.

4.3. Metodos de gradiente


Una vez hemos tratado el tema de la escogencia del tamanó del paso cuan-
do se haya escogido una dirección de busqueda, estudiaremos la escogencia de
esta dirección. Esta es una pregunta mas compleja y fundamental. El exito de
un método particular se ve altamente por un buen algoritmo para escoger es-
tas direcciones de busqueda. Hay escencialmete dos grupos de algoritmos para
escoger la dirección de busqueda. Aquelos que no requieren información de la
92 CAPÍTULO 4. TECNICAS DE APROXIMACIÓN

función objetivo, y aquellos basados en la información que obtienen del gradi-


ente de la función objetivo. Dado que es razonable pensar que podemos usar la
información que viene del gradiente para nuestro beneficio. Nos enfocaremos en
los metodos de gradiente ya que estos son ampliamente usados, Describiremos
tres tipos de metodos que estan entre las escogencias mas populares: el decenso
mas empinado, el gradiente conjugado y los quasi-Newton.
La idea basica de todos estos algoritmos se basa en la noción de dirección
de decenso para una función suave.

Definición 4.1 (Dirección de decenso) Un vector d ∈ Rn es una dirección de


decenso para una función suave g : Rn → R en un punto x ∈ Rn si

∇f (x)d < 0

La razon de esta definición es bastante simple. Solo hay que notar que si defin-
imos
h(t) = g(x + td),
entonces por la regla de la cadena

h0 (0) = ∇f (x)d.

Por lo tanto si d es una dirección de decenso esta derivada es negativa, y por


lo tando los valores de g decrecen a medida que nos movamos por d desde x al
menos localmente.
Cualquier metodo de gradiente esta asociado con diferentes formas de es-
coger la dirección de decenso. Como anunciamos anteriormente los metodos de
gradiente conjugado y cuasi-Newton estan entre los mas populares y eficientes.
Describiremos brevemente los metodos de decenso mas empinado quasi-Newton,
pero profundizaremos un poco mas en los metodos de gradiente conjugado.
Decenso mas empinado Es bien sabido que el gradiente de una función
en un punto, ∇g(x), da la dirección en la cual la función incrementa de manera
mas rapida. Por lo tanto −∇g(x) nos da la dirección de “decenso mas rápido”
desde el punto x. Entonces el gradiente de g es evaluado en cada iteración, y
tomamos como direción de busqueda

dk = −∇g(xk )

Notese que dk es siempre una dirección de decenso, de hecho la dirección de


decenso mas empinado dado que

∇g(xk )dk = −||∇g(xk )||2 ≤ 0.

Si el gradiente se anula entonces xk es el punto mı́nimo buscado. De lo contrario


dk es una dirección de decenso. Para resumir, el algoritmo del decenso mas
empinado puede ser descrito como sigue:

1. Inicialización Escoja x0 la aproximación inicial.


4.3. METODOS DE GRADIENTE 93

2. Dirección de busqueda Dada una aproximación xk defina dk = −∇g(xk ).


3. Criterio de Parada Para un valor umbral predeterminado  > 0 si

||dk || ≤ ,

detengase. La aproximación actual es lo suficientemente buena, i.e esta lo


suficientemente cerca del verdadero punto mı́nimo. De lo contrario con-
tinúe. Notese que en tal punto mı́nimo el gradiente se anula.
4. Busqueda lineal Encuentre una aproximación al problema de minimización

Minimizar g(xk + tdk ), t ∈ R.

(vease la sección anterior). Sea tk una aproximación a tal punto mı́nimo.


5. Nueva aproximación Definase xk+1 = xk + tk dk . Regrese al paso 2.
Metodos Quasi-Newton El metodo de Newton toma como dirección de
busqueda
d = −[∇2 g(x)]−1 ∇g(x),
donde
∇2 g(x)
es la matrix (simetrica) Hessiana de g en x.
Proposición 4.2 Si ∇2 g(x)es definida positva, entonces d escogido de la forma
anterior es una dirección de decenso para g en x. Es mas, si A es cualquier
matriz definida positiva, la dirección

−A∇g(x)

es una dirección de decenso de g en x.


La prueba es elemental y se le deja al lector. Mas importante que esto es
entender de donde viene la dirección de decenso para el metodo de Newton. De
la expansión de Taylor tenemos
1
g(x) ≈ g(x0 ) + ∇g(x0 ) + (x − x0 )T ∇2 g(x0 )(x − x0 ),
2
Asi que por diferenciación

∇g(x ≈ ∇(x0 ) + ∇2 g(x0 )(x − x0 ).

Si x es un punto mı́nimo, debemos obligar que ∇g(x) = 0, y esto lleva a

x = x0 − [∇2 g(x0 )]−1 ∇g(x0 ).

Esta es la explicación de la forma de la dirección de busqueda para el metodo de


Newton
94 CAPÍTULO 4. TECNICAS DE APROXIMACIÓN

El calculo de la inversa de la matriz Hessiana es poco llamativo desde un


punto de vista practico. Tratar de superar este problema lo lleva a uno a con-
siderar los algoritmos cuasi-Newton donde la inversa de la matriz Hessiana es
aproximada sucesivamente usando solamente el gradiente de g (las primeras
derivadas). Simplemente daremos los dos algoritmos cuasi-Newton mas impor-
tantes sin mas justificación.
1. Inicialización. x1 = 1, p1 = −H1 ∇g(x1 ). Aquı́ 1 es la matriz identidad.
2. Busqueda lineal. Encuentre una aproximación al problema de mı́ni-
mización unidimensional

Minimizar g(xk + tpk ), t ∈ R.

Sea tk una aproximación a tal punto mı́nimo


3. Nueva aproximación Ponga xk+1 = xk + tk dk
4. Criterio de Parada Para un valor umbral predeterminado  > 0, si

||∇g(xk+1 )|| ≤ ,

detengase: La aproximación actual xk+1 es suficientemente buena, i.e su-


ficientemente cerca del punto mı́nimo verdadero. En caso contrario con-
tinué.
5. Nueva dirección de busqueda. Sea

qk = ∇g(xk+1 ) − ∇g(xk ), pk+1 = −Hk+1 ∇g(xk+1 ),

y regrese al paso 2.
La forma de la matriz Hk+1 distingue algoritmos diferentes.
1. Algoritmo de Davidon-Fletcher-Powell. Tome

pk pTk Hk q k q T H k
Hk+1 = Hk + tk − T k .
pk q k q k Hk q k

2. Algoritmo de Broyden-Goldfarb-Shanno Tome

pk pTk pk qkT qk pTk


   
Hk+1 = tk + 1− Hk 1 −
q k pk q k pk q k pk

4.4. Metodos de Gradiente Conjugado


El algoritmo de gradiente conjugado es un procedimiento mas elaborado
para decidir la dirección de busqueda comparado con el metodo del decenso
mas empinado. Su interes puede ser motivado como una forma de solucionar el
problema que la dirección dada por el metodo del decenso mas empinado no
4.4. METODOS DE GRADIENTE CONJUGADO 95

es generalmente la mejor escogencia, y por lo tanto el metodo del decenso mas


empinado puede ser extremadamente lento en acercarse al punto mı́nimo. El
concepto principal asociado con el algoritmo de gradiente conjugado es aquel de
direcciones conjugadas de una función cuadratica. En lo que sigue restringiremos
nuestra atención, para motivar el origen del metodo por si mismo, a la función
cuadratica.
1
g(x) = xT Ax − bx + c
2
donde A es una matriz definida positiva de tamaño n × n (de tal manera que
el problema de minimización correspondiente tiene una solución unica), b es un
vector, y c es una constante.

Definición 4.3 Un conjunto de vectores pi , i = 1, 21 . . . , n, es un conjunto de


direcciónes conjugadas para g si

pTi Apj = 0. i 6= j, pTi Api = γi , i = 1, 2, . . . , n.

En particular, este conjunto de vectores es linealmente independiente, y ellos


forman una base para Rn . Especificamos el interes de las direcciones conjugadas
con respecto a los problemas de minimización en dos resultados. El primero
establece la relevancia de las direcciónes conjugadas con respecto a los prob-
lemas de minimización. El segundo indica una de las varias posibilidades para
determinar conjuntos de direcciones conjugadas dada una función cuadratica.
Finalmente escribiremos el algoritmo de gradiente conjugado para una función
objetivo general g, no necesariamente cuadratica.

Lema 4.4 Sea pj un conjunbto de direcciones conjugadas con respecto a la fun-


ción cuadratica g mencionada anteriormente, y sea

1. x1 arbitrario, g1 = −∇g(x1 );

2. para k ≥ 1,
gk pk
tk = − , xk+1 = xk + tk pk , gk+1 = ∇g(xk+1 ) = gk + tk Apk .
pTk Apk

Para todo j tenemos En particular

gn+1 pk = 0, k = 1, 2, . . . , n.

Esto implica que gn+1 = 0, y que por lo tanto g obtiene su mı́nimo en


xn+1

Este resultado nos dice que usando un conjunto de direccione conjugadas como
direcciones de busqueda para un funcional cuadratico, podemos encontrar el
mı́nimo en exactamente n pasos, donde n es la dimensión del problema. Es
interesante ver de donde viene escogencia de tk . Si consideramos la función

h(t) = g(xk + tpk ),


96 CAPÍTULO 4. TECNICAS DE APROXIMACIÓN

resulta que el valor de t en el cúal se toma el mı́nimo de h es precisamente el


que hemos escogido para tk . Esto se deduce facilmente teniendo en cuenta que
g es cuadratica y usando apropiadamente la regla de la cadena.
Para probar el Lema 4.4, notese que el mı́nimo que estamos buscando es la
solución del sistema lineal
Ax − b = 0
dado que el gradiente de g es

∇g(x) = Ax − b

Por lo tanto pretendemos resolver el sistema lineal anterior en n pasos donde n


es la dimensión de la matriz. Argumentando por inducción en el indice j. Asi
suponemos que
gj+1 pk = 0, k = 1, 2, . . . , j
y queremos concluir que

gj+2 pk = 0. k = 1, 2, . . . , j + 1

Por un lado tenemos

gj+2 pk = (gj+1 + tj+1 Apj+1 = pk = 0

si k = 1, 2, . . . , j por hipotesis de inducción y el hecho que estamos trabajando


con direcciones conjugadas. Por otro lado la identidad

gj+2 pj+1 = (gj+1 + tj + 1Apj+1 )pj+1 = 0

sigue de la escogencia de tj+1 . Notese que la escogencia de tk es dada por


como determinamos el mı́nimo de la función cuadratica en t, g(xk + tpk ), como
mencionamos anteriormente.
Una vez hemos visto el interes en los conjuntos de direcciones conjugadas,
damos y justificamos una de las varias formas de construir recursivamente di-
chos conjuntos de direcciones y las aproximaciones sucesivas al punto mı́nimo
simultaneamente.

Lema 4.5 (Fletcher-Reeves) Sea

1. p1 = −g1 = −∇g(x1 );

2. para k ≥ 1.
|gk+1 |2
pk+1 = −gk+1 + βk pk , βk = ,
|gk |2
donde gj es el gradiente de g en el punto xj . El conjunto {pj } es un
conjunto de direcciones conjugadas para g
4.4. METODOS DE GRADIENTE CONJUGADO 97

Para probar este resultado argumentamos de nuevo por inducción. Supong-


amos que hemos escogido k direcciones conjugadas pj , j = 1, 2, . . . , k, asi que
segun el lema 4.4

gk+1 pj = 0. tTj Apj = gj+1 − gj , j = 1, 2, . . . , k, (4.1)

y
gj pj gj (−gj + βj−1 pj−1 ) |gj |2
tj = − = − = ,
pTj apj pTj Apj pTj Apj
dado que gj pj−1 = 0. Si tomamos una neva dirección pk+1 como en el enunciado
del lema, nos gustaria concluir que es conjugada con respecto a las anteriores .
Teniendo en cuenta (4.1), tenemos.

pTk+1 Apj = (−gk+1 + βk pk )T Apj


1
= −gk+1 (gj+1 − gj ) + βk pTk Apj
tj
gk+1
=− (pj+1 + βj pj + pj − βj−1 pj−1 ) + βk pTk Apj .
tj
Para j < k y asumiendo que tj no se anula (de lo contrario gj = 0. lo que
implica que xj es el punto mı́nimo, y que no hay necesidad de mas direcciones
conugadas), vemos que esta expresión es cero por la hipótesis de inducción y
el hecho que las direcciones escogidas anteriormente son conjugadas entre ellas.
Para j = k, algunos de los terminos se anulan y otros no . Especı́ficamente,
teniendo en cuenta la formula para βk obtenemos
gk+1 pk+1
pTk+1 Apk = + βk pTk apk
tk
pTk Apk
= − |gk+1 |2 + βk gk+1 pk ) + βk ptk Apk
(
pTk Apk |gk+1 |2
 
2 2
= −|gk+1 | + g p
k+1 k + |gk+1 | .
|gk |2 |gk |2
Esta expresión se anula porque gk+1 pk = 0.
Para una función objetivo general g(x) el metodo de gradiente conjugado
procede con aproximaciones sucesivas, y una nueva dirección de busqueda es
escogida en cada iteración. La forma de estas direcciones de busqueda está jus-
tifificada por la discución anterior. De manera algoritmica podemos resumir el
metodo del gradiente conjugado de la siguiente manera:
1. Inicialización Escoja x0 la aproximación inicial.
2. Criterio de Parada Para un valor umbral predeterminado  > 0, si

||∇g(xk )|| < ||,

detengase. La aproximación xk es lo suficientemente buena, i.e, suficien-


temente cerca al verdadero punto mı́nimo. De lo contrario continue.
98 CAPÍTULO 4. TECNICAS DE APROXIMACIÓN

3. Dirección de busqueda Dada una aproximación xk , defina pk = −∇g(xk )+


βk pk−1 , tomando p−1 de manera arbitraria.

4. Busqueda lineal Encuentre una aproximación al problema de minimizació so-


bre la linea (Vease sección 4.2)

Minimizar g(xk + tpk ), t ∈ R.

Sea tk una aproximación a tal punto mı́nimo.

5. Nueva aproximación Defina xk+1 = xk + tk dk y regrese al paso 2.

Las distintas variantes del algoritmo de gradiente conjugado corresponden a


distintas maneras de tomar el parametro βk . Las escogencias mas populares son
las siguientes.

1. Algoritmo Feltcher-Reeves:
(
0, k = jn, j = 0, 1, . . .
βk = ||∇g(xk )||2
||∇g(xk−1 ||2 , de lo contrario

2. Algoritmo Polak-Riviere:
(
0, k = jn, j = 0, 1, . . .
βk = ∇g(xk )(∇g(xk )−∇g(xk−1 ))
||∇g(xk−1 ||2 , de lo contrario

La razon para tomar βk = 0 cada n iteraciones es para evitar el efecto de


acumulación de errores numericos. Empiricamente, el algoritmo de Polak-Ribiere
parece ser mas robusto.

4.5. Aproximación bajo restricciones


Dado que las restricciones son frecuentemente una parte escencial de los
problemas de optimización, los algoritmos númericos para resolver o aproximar
soluciones deben ser diseñados de tal manera que estos respeten las restricciones
apropiadas y que lleven a la solución del problema de optimización sujeto a estas
restricciones. Por lo tanto estamos interesados en describir los algoritmos que
aproximan de forma eficiente las soluciones óptimas del PPNL.

Minimizar f (x)

sujeto a
g(x) ≤ 0, h(x) = 0.
Hay escencialmente dos estrategias principales para tratar este problema numéri-
camente. O decidimos no usar multiplicadores, y por lo tanto no usar la informa-
ción proveniente de las condiciones de optimalidad, o de lo contrario, tratamos
4.5. APROXIMACIÓN BAJO RESTRICCIONES 99

de utilizar esta información de alguna manera. La primera clase incluye las tec-
nicas de penalización y barreras. en la segunda categoria explicaremos el metodo
dual estandar y el algoritmo Lagrangiano aumentado. En cualquier caso, los al-
goritmos estan construidos de tal manera que depende de alguna manera u otra
del caso sin restricciones, asi que la idea detras de fondo es construir un proble-
ma relacionado pero sin restricciones y aplicarle a este alguno de los algoritmos
que tenemos para problemas sin restricciones.
Penalización y Barreras La idea detras de los metodos de penalización y
barreras consiste en transformar el problema de optimización con restricciones
de tal manara que los vectores no factibles estan prohibidos o al menos pe-
nalizados. Idealmente esto se logra considerando el siguiente problema de opti-
mización.
Minimizar f (x) + fˆ(x)
donde 
0, g(x) ≤ 0, h(x) = 0,
fˆ(x) =
+∞, de lo contrario

El efecto de añadir fˆ(x) a f , como se puede ver en la definicion anterior es nulo


si el vector es factible, asi que su costo es f (x), como debe ser. Pero si x no es
factible su costo es infinito, asi que es eliminado del proceso de minimización.
Esto es exactamente lo que significan las restricciones. El nuevo problema no
tiene restricciones. Sin embargo el hecho que el costo de f + fˆ no es continua,
dado que puede tomar el valor +∞ de manera abrupta hace a este problema in-
apropiado para los algoritmos explicados en la sección anterior. Antes de aplicar
tales algoritmos a este problema debemos hacer algo acerca de este costo especial
f + fˆ.
Una posibilidad es no asignar un costo infinito a un vector no factible, sino
simplemente penalizar de alguna manera a estos. Esta es la idea principal del
metodo de penalización que es usada en muchas otras areas de las matemáticas.
Si debemos satisfacer algunas restricciones que son dificiles de manejar las pode-
mos ignorar. Pero aadimos una penalizacion al funcional de costo cuando estas
no se cumplen para asi evitarlas. Una de las familias de penalizaciones más
populares es
 
X X
fˆr (x) = r  máx{0, gi (x)}p + |hj (x)|q  ,
i j

donde p, q > 1 son exponentes y r es un parámetro de penalización. Note que si


p > 1 la función máx{0, gi (x)}p es diferenciable si gi lo es. Mientras mas grande
sea r es mas efectiva la penalización. Un caso tı́pico que es usado a menudo es
la penalización cuadratica que corresponde al caso p = q = 2. Aunque si bien es
cierto que una penalización no prohı́be puntos no factibles , la proximación que
se puede obtener usando el algoritmo de optimización no restringido en f + fˆ
puede no dar buenos resultados. Solamente cuando forzamos el parámetro r para
que se vuelva cada vez mas grande, las aproximaciones correspondientes al los
100 CAPÍTULO 4. TECNICAS DE APROXIMACIÓN

problemas no restringidos se acercan cada vez mas a la solución del problema


restringido.
Otra idea que puede ser usada cuando se trabaja con problemas restringidos
es imitar la barrera infinita que impone fˆ entre los conjuntos factibles y aque-
llos no factibles, pero de manera que esta no sea instantanea. Por ejemplo si
tomamos
1X 1
fˆr (x) = − ,
r i gi (x)
cuando las restricciones del problema vienen solamente de la forma de desigual-
dades del tipo g(x) ≤ 0, vemos que a medida que nos movemos hacia la frontera
del conjunto factible de tal manera que gi (x) se acerca cada vez mas a cero desde
la parte negativa, la función fˆr (x) crece cada vez mas hasta que eventualmente
se vuelve infinita, poniendo una barrera al conjunto de los vectores factibles. El
efecto del parametro r cuando este se vuelve grande es interferir tan poco como
sea posible con el valor de la función objetivo f en el conjunto de los vectores
factibles. Cuando gi (x) < 0 y r es grande, entonces 1/r es pequeño de manera
que fˆr (x) tambien lo es. De nuevo solo cuando r es grande podemos obtener
buenas aproximaciones aplicando el algoritmo no restringido al costo f + fˆr . A
medida que r → +∞ estas aproximaciones tienden a la solución verdadera del
problema original restringido.
Otra posibilidad interesante es tomar una barrera logaritmica del tipo
1 X
fˆr (x) = − log(−gi (x)).
r i

Otra buena escogencia puede ser


1X 1
fˆr (x) = .
r i 1 − rgi (x)

En caso que algunad de las restricciones vengan en la forma de igualdades


h(x) = 0 se puede añadir el termino
X hj (x)2
r3
j
1 − r2 hj (x)2

a fˆr ,
Aunque las ideas anteriores son tentadoras por su simplicidad, en la practica
debido al hecho que su efectividad esta ligada a valores altos del parametro r,
aparecen errores númericos porque tenemos que manejar números muy grandes,
y solo se obtiene una eficiencia moderada. Es mas, los resultados óptimos caundo
se usan penalización o barreras se encuentran en los valores intermedios del
parametro r, y este rango es altamente dependiente de cada problema particular,
asi que se requiere una gran cantidad de experimentación para llegar a resultados
óptimos. Por esta razon se han desarrollado algoritmos que tienen en cuenta los
multiplicadores y optimalidad y/o las condiciones de dualidad. Restringiremos
4.5. APROXIMACIÓN BAJO RESTRICCIONES 101

nuestra atención al metodo dual estándar y terminaremos con una pequenña


discución del metodo Lagrangiano aumentado.
Metodo dual En el capı́tulo 3 aprendimos la relación entre un PPNL y su
dual. De hecho si tenemos que resolver el problema primario

Minimizar f (x)

suejeto a
g(x) ≤ 0, h(x) = 0,
sabemos que bajo hipótesis adecuadas podemos de manera equivalente tratar su
dual
Maximizar θ(µ, λ)
bajo µ ≥ 0, donde la función dual esta definida por

θ(µ, λ) = mı́n{f (x) + µg(x) + λh(x)}.


x

La ventaja del dual es que la definición de la función dual es un problema no


restringido, y al mimos tiepo la restriccion misma para el problema dual es
mucho mas simple (en particular lineal) que en el problema primario.
La idea del metodo dual consiste en aproximar la solución óptima del dual
y entonces calcular una aproximación de la solución óptima del primario. Por
conveniencia notacional, escribiremos

L(x, µ, λ) = f (x) + µg(x) + λh(x)

para el Lagrangiano del problema. En el siguiente algoritmo hemos usado el


metodo del decenso mas rápido para la solución del dual. Recuerda que (Capı́tulo
3)
∇µ θ(µ, λ) = g(x), ∇λ θ(µ, λ) = h(x)
si x es tal que θ(µ, λ) = L(x, µ, λ).
1. Inicialización. (µ1 , λ1 ) aproximación inicial con µ1 > 0
2. Solución aproximada del primario. Para (µj , λj ) encuentre (aprox-
ime) una solución óptima xj para la función dual. Use un algoritmo no
restringido para esto.
3. Criterio de parada.Para un valor umbral predeterminado  > 0, si

|h(xj )| <  |µj g(xj )| < ,

detengase. La aproximación actual xj es lo suficientemente buena. De lo


contrario continúe.
4. Dirección de busqueda Tome
(
(k)
gk (xj ), si µj > 0
dk = (k)
máx{0, gk (xj )}, si µj = 0.
102 CAPÍTULO 4. TECNICAS DE APROXIMACIÓN

donde µ(k) representa la k-esima componente de µ, y

ek = hk (xj )

5. Nueva aproximación. Defina

µj+1 = µj + sj d, λj+1 = λj + sj e,

donde sj se escoje para maximizar la función

ϕ(s) = θ(µj + sd, λj + se),

teniendo en cuenta que s esta restringido porque µj + sd ≥ 0. Regrese al


paso 2
Metodo Lagrangiano aumentado. Otra idea fuctifera consiste en usar
la información proveniente de las condiciones de optimalidad. Para motivar la
forma final del algoritmo que presentamos, enfoquemos primero en un PPNL
con restricciones de igualdad, del tipo

Minimizar f (x) bajo h(x) = 0.

Sabemos que las soluciones óptimas deben satisfacer

∇f (x) + λh(x) = 0.

para algun multiplicador apropiado λ. Supongamos que tenemos una aproxi-


mación para λ, λj . El asunto es como podemos usar esta λj para encontrar una
aproximación a la solución óptima xj , y simultaneamente mejorar la aproxi-
mación del multiplicador λj+1 para proceder de manera iterativa. Obviamente
el problema de optimización inicial es equivalente a

Minimizar f (x) + λj h(x) bajo h(x) = 0

donde hemos incluido de manera trivial el parametro λj . Para resolver este


problema introducimos una penalización cuadratica como la menciona anterior-
mente, y trabajamos el problema de minimizar la función de costo
rj
f (x) + λj h(x) + |h(x)|2
2
para algun parametro de penalización rj . La condición de optimalidad para este
problema es
∇f (x) + λj h(x) + rj h(x)∇h(x) = 0.
Si ademas suponemos que la aproximación xj es buena, esta debe estar cerca
de la verdadera solución óptima x, asi que si comparamos las condiciones de
optimalidad para ambos problemas,

∇f (x) + λ∇h(x) = 0,
∇f (xj ) + λj ∇h(xj ) + rj h(xj )∇h(xj ) = 0,
4.5. APROXIMACIÓN BAJO RESTRICCIONES 103

llegamos a la conclusión que


λj + rj h(xj ) ≈ λ.
Estas ideas heuristicas (que pueden formalizarse) nos llevan al siguiente algo-
ritmo iterativo
1. Iniciallización. Tome λ1 , r1 > 1, c > 1, y una tolerancia  > 0.
2. Nueva aproximación Encuentre una aproximación xj al problema de
minimización no restringido cuya función costo es
rj
f (x) + λj h(x) + |h(x)|2 .
2
3. Criterio de Parada. Si
|∇f (xj ) + λj ∇h(xj )| < ,
detengase. xj es una aproximación suficientemente buena. De lo contrario
continúe.
4. Actualización Actualice los valores del multiplicador y del parametro de
penalización tomando
λj+1 = λj + rj h(xj ), rj+1 = crj

Regrese al paso 2
Para un PPNL general donde estan presentes ambos tipos de restricciones, en
la forma de igualdades y en la forma de desigualdades, se pueden utilizar varios
trucos para reducir el problema a el caso de restricciones de igualdad, como
introducir nuevas variables mudas. Pero se puede usar el siguiente algoritmo
que tiene el espı́ritu de los anteriores. El nuevo PPNL es
Minimizar f (x)
bajo
g(x) ≤ 0, h(x) = 0.
Por conveniencia notacional introduciremos el Lagrangiano aumentado.
!
r X
2
X
2
L(x, µ, λ, r) = f (x) + µg(x) + λh(x) + máx{0, gi (x)} + hk (x) .
2 i k

1. Inicialización. Escoja µ1 ≥ 0, λ1 , r > 0, c > 1, y tolerancia  > 0.


2. Nueva aproximación. Encuentre una aproximación xj para el mı́nimo
del Lagrangiano aumentado L(x, µj , λj , rj ). Recuerde que la funcion
máx{0, gi (x)}2
es diferenciable, asi que podemos usar un algoritmo tı́pico para un proble-
ma sin restricciones como el gradiente conjugado o uno cuasi-Newton.
104 CAPÍTULO 4. TECNICAS DE APROXIMACIÓN

3. Criterio de Parada. Si

|∇f (xj ) + µj ∇g(x) + λj h(xj )| < , |µj g(xj )| < , |h(xj )| < ,

detengase y tome como una buena aproximación a xj .


4. Actualización. Actualice los valores de los multiplicadores y el parametro
de penalización con las formulas

λj+1 = λj + rj h(xj ), µj+1 = máx{0, µj + rj g(xj )}, rj+1 crj .

Regrese al paso 2.

4.6. Comentarios Finales


La tarea de buscar soluciones óptimas globales para problemas de opti-
mización es un trabajo tremendamente complejo y sutil. Nuestros lectores pueden
tener la (falsa) impresión que los metodos que hemos descrito a traves de este
capı́tulo o aquellos que hemos omitido son suficientes para resolver cualquier
problema real. Esto esta muy lejos de ser cierto. En realidad, los metodos de
gradiente estudiados anteriormente encuentran, con bastante éxito los mı́nimos
locales de los funcionales objetivo. Graficamente podemos decir que usando una
primera aproximación tomada .ad hoc”’, el algoritmo nos llevara al mı́nimo local
ubicado en el ”‘valle de atracción”’de nuestra escogencia inicial. Si cambiamos
esta iteración inicial, y esta se halla en un valle diferente, nuestra aproximación
final dará un mı́nimo local distinto. Lo que es peor es que lo mas probable es que
ninguno de los dos sera el mı́nimo global que estamos buscando, pero incluso si
alguno de ellos es realmente el mı́nimo global, no hay forma que podamos estar
seguros de esto. Todo tipo de algoritmos heuristicos han sido desarrollados a
traves de los aos para aproximar soluciones globales a problemas tecnologicos
de gran dimensión. La mayoria de ellos incorporan un ingrediente aleatorio de
algun tipo. Entre ellos podemos citar tecnicas de descomposición, algoritmos
de montecarlo y sus variantes, retorcido simulado y sus variantes, y algoritmos
geneticos.
Este parrafo esta enfocado a insistir en la importancia de la convexidad desde
el punto de vista de la aproximación númerica de las soluciones óptimas. ¿Qúe
importancia tiene que tanto la función objetivo como aquella en las constantes
sea convexa cuando se buscan soluciones óptimas globales? La respuesta esta
dada en el teorema 3.14. Una función definida sobre un conjunto convexo puede
tener a lo mucho un valle, asi que cualquier algoritmo que nos de aproximaciones
para un mı́nimo local, nos lleva al mı́nimo global. Esta es esencialmente la
unica situación en la cual podemos asegurar que los algortimos mencionados
atrapan mı́nimos globales. De lo contrario, el problema de encontrar y aproximar
soluciones globales óptimas no tiene una solución rigurosa.
Finalmente volvemos a enfatizar que muchos de los algoritmos presentados
en este capı́tulohan sido implementados en software comercial (vease la introduc-
ción a este capı́tulo). Aquellos que necesitan resolver problemas de optimización
4.7. EJERCICIOS 105

de manera regular (programación lineal y no lineal) encontraran conveniente


usar estas herramientas computacionales y concentrarse en la tarea de mode-
lamiento directamente relacionada con los problemas de optimización. Es mas,
una implementación efentiva de los algoritmos requiere una buena cantidad de
experimentación, dado que el ajuste de los parametros es un ingrediente escen-
cial para el exito. Esto no quiere decir que escribir un programa para el metodo
del gradiente conjugado en alguno de los lenguajes de computación corrientes no
es un buen ejercicio. De hecho una vez los estudiantes han tenido tal experiencia
apreciaran profundamente la importancia del trabajo hecho por los especialistas
en optimización númerica. Ciertos ejercicios de practica se proponen a contin-
uación.

4.7. Ejercicios
1. Usando alguno de los metodos de busqueda lineal, encuentre el mı́nimo
para las sigientes funciones, comenzando en los puntos dados.
a) f (x) = x4 − x2 + x − 1, x0 = 1;
b) g(x) = x16 + 3x14 − x7 − 3, x0 = −1;
c)
x
ses + s − 1
Z
h(x) = ds, x0 = −1
−1 2e2 + 3
2. De un argumento de por que minimizando
Z x
F (x) = f (s)ds
0

podemos encontrar algunas soluciones pra la ecuación (no lineal) f (x) = 0.


Aplique esto para encontrar algunas soluciones de las ecuaciones

x7 + x4 + 1 = 0, log x + 6x = 0.

3. Considere la función
1
f (x) = (x6 − 30x4 + 192x2 + 7x3 )
100
Buscamos encontrar el mı́nimo global de f sobre la recta real R. Aplique
uno de los metodos de busqueda lineal comenzando con
a) x1 = 1;
b) x1 = −1,2;
c) x1 = 5;
d ) x1 = 3;
e) x1 = −8;
106 CAPÍTULO 4. TECNICAS DE APROXIMACIÓN

f ) x1 = −3;

¿Cúales son sus conclusiones? ¿Esta seguro acerca de cúal es el mı́nimo


global de f ? ¿Se le ocurre alguna manera para estar seguro de cúal es el
mı́nimo global en este caso?

4. Trate de aproximar diferentes mı́nimos para las funciones

2 − sin |x| + x2
 2
x p
f (x) = , g(x) = sin + |x + 1|
2 + sin x 2

usando alguno de los algoritmos de busqueda lineal comenzando con difer-


entes aproximaciones iniciales.

5. El sistema lineal Ax = b puede ser resuelto de manera númerica mini-


mizando la función
1
f (x) = |Ax − b|2
2
Si el sistema es soluble, entonces el mı́nimo global debe anularse, si no
lo hace entonces el punto mı́nimo, es en algun sentido, el mas cercano a
ala solución. Utilice algun algoritmo de decenso mas rápido para resolver
numéricamente los sistemas

a)    
3 −1 1
A= , b=
−1 1 2

b)   
3 −1 1
A = −1 1  , b = −1
2 1 1

c)    
3 1 −1 0
A= 1 2 2 , b = −1
−1 2 1 1

6. Cuando la matriz A es simetrica y definida positiva, el sistema lineal Ax =


b es la ecuación para los puntos criticos de la forma cuadratica asociada
1 T
Q(x) = x Ax − xT b.
2
Argumente porque sucede esto, y encuentre una solución aproximada al
sistema linal minimizando la forma cuadratica en este caso.
   
1 1 −1 1
A= 1 2 1/4 , b = 1
−1 1/4 3 1
4.7. EJERCICIOS 107

7. Encuentre el mı́nimo de la función

P (x, y) = x2 + 2y 2 − 2x − 8y

y aproximelo usando el metodo del decenso mas rapido comenzando el


punto (0, 0)
8. Aproxime el minimo de la función

P (x, y) = 2x2 − 2xy + y y + 2x − 2y

con el metodo del decenso mas rapido. ¿Que resultados obtiene? Aproxime
el mismso problema con el metodo del gradiente conjugado y compare los
resultados.
9. Lo mismo que en el ejercicio anterior pra la función
1 4
P (x, y) = (x − 4xy + y 4 ).
4

10. Examine y estudie los siguientes problemas de minimizaciñ con los sigu-
ientes puntos iniciales.
a) 100(x2 − y)2 + (1 − x)2 , (−1,2, 1);
b) (x2 − y)2 + (1 − x)2 , (−2, −2);
c) (x2 − y)2 + 100(1 − x)2 , (2, −2);
d ) 100(x3 − y)2 + (1 − x)2 , (−1,2, 1).
11. Aprixime el problema de minimización dado por

f (x1 , x2 .x3 , x4 ) = (x1 + 10x2 )2 + 5(x3 − x4 )2 + (x2 − 2x3 )4 + (10x1 − x4 )4 ,

con aproximación inicial (3, −1, 0, 1).


12. Nos gustaria aproximar el valor mı́nimo de la función f (x, y) = y − x2
sobre el cı́rculo unitario x2 + y 2 = 1.
a) Encuentre tal mı́nimo de manera exacta
b) Aproxime la solución usando funciones de penalización de la forma

fn (x, y) = y − x2 + n(x2 + y 2 − 1)n

para valores crecientes de n. Compare sus resultados.


13. . Encuentre una estrategia plausible para aproximar la solución óptima de
1 T
Minimizar x Ax
2
sujeto a
bx = c
108 CAPÍTULO 4. TECNICAS DE APROXIMACIÓN

donde A es una matriz simetrica definida positiva. Aplique esto para re-
solver el caso dado por
 
3 3 1 
A = 3 5 3 b= 1 1 1 , c = 1.
1 3 3

14. Igual que el ejercicio anterior, pero cambiendo la restricción de igualdad


bx = c a la desigualdad bx ≤ c. ¿Como aproximaria un problema similar
bajo una restricción cuadratica del tipo

xT Bx + bx ≤ c

donde B es simetrica semidefinida positiva? Aplique su metodo para re-


solver
Minimizar |x|2
bajo
(2x1 − x2 )2 + (x3 − 2)2 ≤ 1.

15. Escoja algunos de los ejercicios propuestos en el capı́tulo 3 para un con-


junto particular de datos y aproxime sus soluciones.
Capı́tulo 5

Problemas Varacionales y
Programación Dinamica

5.1. Introduccion
Comenzamos este capı́tulo con el analı́sis de problemas de optimización de
otra naturaleza. Especificamente, este capı́tulo esta dedicado a problemas varia-
cionales de encontrar el infimo de las integrales
Z
F (x, u(x), ∇u(x))dx,

n
donde Ω ⊂ R , las funciones u : Ω → R deben ser diferenciables, y estas
deben normalmente estar restringidas de alguna manera como teniendo fijos sus
valores en ∂Ω por alguna funcin u0 asignada con anterioridad, i.e u = u0 en ∂Ω.
El integrando (o Lagrangiano)

F : ω × R × Rn → R

Caracteriza tal problema. La tarea propuesta consiste en encontrar una fun-


ción U , admisible de acuerdo con las restricciones que hemos impuesto en las
funciones competentes, de tal manera que la integral
Z
F (x, U (x), ∇U (x))dx

es mas pequeña (o igual) que la misma integral para cualquier otra función
factible u. Si usamos la notación
Z
I(u) = F (x, u(x), ∇u(x))dx.

estamos interesados en entender el siguiente problema de optimización

Minimizar I(u)

109
110CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

sujeto a las restricciones sobre las funciones u, por ejemplo

u(x) = u0 (x), x ∈ ∂Ω

Por lo tanto esto es un problema de optimización en el cual las funciones ad-


misibles remplazan los vectores factibles.
En este capı́tulo introductorio estaremos interesados principalmente en prob-
lemas variacionales en una dimensión donde Ω = (a, b) es un intervalo en R, y
las funciones admisibles u : (a, b) → R a menudo se les pide que satisfagan las
condiciones de frontera
u(a) = A, u(b) = B,
para valores conocidos A y B. En este caso
Z b
I(u) = F (x, u(x), u0 (x))dx
a

donde ahora el integrando F es una función de tres (o menos) variables. Hemos


mencionados algunos de estos ejemplos en el capı́tulo 1, y hemos tratado de
convencer al lector que resolver este tipo de problemas o al menos aproximar las
soluciones óptimas apropiadamente) pude ser importante. En este capı́tulo estu-
diaremos y resolveremos mas ejemplos, y aprenderemos las tecnicas principales
para lidiar con tales problemas.
Hay una gran variedad de problemas variacionales. El ingrediente en comun
es que los costos estan tipicamnente representados por una integral como la
anterior. Pero las restricciones adicionales pueden variar de ejemplo a ejemplo.
Podemos clasificar estas restricciones como sigue.
1. Condiciones de Frontera. Una de las situaciones mas comunes cor-
responde a haber preescrito valores en toda la frontera ∂Ω, pero otras
posibilidades incluyen esta restricción solo en parte de la frontera (en par-
ticular cuando no hay ninguna condicion en absoluto) y no preescribir
los valores en la frontera sino aquellos de su derivada, o algunas de sus
derivadas.
2. Restricciones Integrales. Estas requieren que las funciones admisibles
cumplan con restricciones del tipo
Z
G(x, u(x), ∇u(x))dx = α

donde
G : Ω × R × Rn → R d , α ∈ R,
son conocidas, algunas de estas constantes pueden venir en forma de de-
sigualdades.
3. Restricciones Puntuales. Establecen que las funciones factibles deben
respetar la condición
G(x, u(x), ∇u(x)) = 0
5.2. LA ECUACIÓN DE EULER-LAGRANGE: EJEMPLOS 111

para todo x en Ω, donde G es una función conocida como antes. Tambien


podriamos tener algunas desigualdades

Finalmente es importante anotar que algunas de las tecnicas que seran dis-
cutidas puden ser extendidas sin mayor cambio a situaciones en las cuales los
funcionales de costo incluyen una dependencia en derivadas de orden superior
(o no tienen tal dependencia). Trabajaremos con algunas de estas situaciones.
Otro aspecto bastante cercano a los problemas variacionales es la progra-
mación dinamica. En el caso discreto, discutiremos brevemente el principio de
fondo que lleva a soluciones óptimas. En el caso continuo, estableceremos heuris-
ticamente la ecuación de Bellman de programación dinamica, la cual nos ayudara
a deducir el principio del máximo de Pontryagin en el capı́tulo siguiente.
Es justo enfatizar la importancia de los problemas variacionales en varios
campos de la ciencia y la ingenieria. Dificilmente podemos listarlos todos el-
los aqui: mecanica, elasticidad (lineal y no lineal), medios continuos, dinamica,
comportamiento de materiales, fluidos, etc. Algunos de nuestros ejemplos ilus-
traran de una manera simple y directa la relevancia y el rol jugador por las
formulaciones y tecnicas variacionales. Esto no es de sorprender, dado que la
naturaleza, asi como el hombre de alguna manera u otra siempre busca lo mejor.

5.2. La ecuación de Euler-Lagrange: Ejemplos


La ecuación de Euler Lagrange (E-L) asociada con un problema variacional
juega el mismo rol que las condiciones necesarias de optimalidad en un problema
de programación (las condiciones KKT). Como ahora sabemos, tales condiciones
necesarias para optimalidad nos dan restricciones que las soluciones óptimas
(entre otros vectores factibles) deben cumplir. Explotando estas condiciones,
se pueden encontrar o aproximar soluciones óptimas en una variedad de situa-
ciones. Tambien hemos enfatizado el papel central de la noción de convexidad
en asegurar que las condiciones de optimalidad son de hecho suficientes para las
soluciones óptimas. Por lo tanto no es de sorprender que la convexidad tambien
jugara un papel importante en esto. La convexidad siempre es el concepto clave
en los problemas de minimización de cualquier tipo.
En general un problema variacional esta caracterizado por un costo funcional
integral
Z
I(u) = F (x, u(x), ∇u(x))dx,

n
donde Ω ⊂ R , u : Ω → R es diferenciable, y el integrando del costo

F (x, λ, ξ) : Ω × R × Rn → R

se supone diferenciable, de hecho dos veces diferenciable con respecto a las


variables (λ, ξ). Note que
ξ = (ξ1 , ξ2 , . . . , ξN ).
112CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

Nos concentraremos en la situación en la cual ademas tenemos restricciones


adicionales de factibilidad del tipo

u(x) = uo (x), x ∈ ∂Ω,

dado que esta es la situación mas tı́pica. Mas adelante cuando nos restrinjamos
al caso N = 1 consideraremos otros casos.
El siguiente resultado es la pista para encontrar soluciones óptimas para este
tipo de problema.

Teorema 5.1 (Ecuación de Euler-Lagrange) Bajo las hipótesis anteriores:

1. Si u es una solución óptima, entonces u debe tambien ser una solución


del problema (E-L)

div(Fξ (x, u(x), ∇u(x))) = Fλ (x, u(x)m∇u(x)) in Ω


u = u0 en ∂Ω

2. Si u satisface E-L y F es convexa con respecto a las variables (λ, ξ) para


cada x ∈ Ω fijo, entonces u tambien es una solución óptima para el prob-
lema variacional.

3. Si ademas F es estrictamente convexo con respecto a (λ, ξ) para cada


x ∈ Ω, la solución óptima si existe es única.

Antes de explicar de donde viene esta ecuación E-L. Es importante estar


convencido de su relevancia y aplicabilidad para resolver algunos problemas
variacionales. Estudiaremos algunas situaciones particulares, incluyendo algunos
de los casos del primer capı́tulo. La mayoria de estos casos corresponden al caso
uno dimensional, cuando N = 1 y Ω es de hecho un intervalo abierto (a, b) en
la recta real. La ecuación E-L es en estecaso una ecuación diferencial ordinaria
de segundo orden completada con los valores de frontera apropiados

d
[Fξ (x, u(x), u0 (x)))] = F λ(x, u(x), u0 (x)), x ∈ (a, b),
dx
u(a) = A, u(b) = B

donde normalmente A y B estan dados. En esta situación unidimensional cubrire-


mos varias posiblidades para ganar familiaridad con la ecuación E-L.

1. Para empezar, supongamos la situación mas simple, en la cual F depende


exclusivamente de ξ. En este caso F = F (ξ), y la ecuación E-L se simplifica
a
d 0 0
[F (u (x))] = 0,
dx
lo que implica que
F 0 (u0 (x)) = k,
5.2. LA ECUACIÓN DE EULER-LAGRANGE: EJEMPLOS 113

una constante. Evidentemente, este ultimo requerimiento se cumple si


tomamos u’constante en el intervalo (a,b), y esto se cumple si u es la
linea recta que une los puntos (a, A) y (b, B), tal función lineal (afı́n) es
siempre una solución de E-L su F solo depende del valor de la variable
derivada ξ. Si ademas F es convexa esta función es un minimizador del
problma. Y si la función es F es estrictamente convexa, esta función lin-
eal es el unico minimizador del problema. En caso que F no sea convexa,
incluso cuando la función lineal sea una solución de E-L, puede no ser un
minimizador como muestra el siguiente ejemplo.

Ejemplo 5.2 (Ejemplo no convexo) Tomemos


2
F (ξ) = eξ , a = A = B = 0, b = 1.

En esta situación la función lineal que pasa por los puntos (0, 0),(1, 0) es
la función u0 que se anula en todo el intervalo (0, 1). Su costo es 1. Sin
embargo aseguramos que el infimo de las integrales
Z 1
0 2
I(u) = e−u (x) dx
0

suejeto a
u(0) = u(1) = 0
es 0. Para mostrarlo considere la siguiente sequencia de funciones factibles
 2
1 j
uj (x) = j x − −
2 4

No es deficil confirmar que I(uj ) & 0, asi que el infimo anterior se anula.
Por lo tanto u0 es una solución del problema E − L asociado, pero no es
un minimizador. Lo que falla en esta situación es la convexidad de F . Es
mas, no existe minimizador para este problema. ya que tal función tendria
que satisfacer Z 1
0 2
e−v (x) dx = 0
0
y esto es imposible.

Ejemplo 5.3 (Geodesicas en un cilindro) Sea C el cilindro dado por la


ecuación
x2 + y 2 = 1,
y sean P y Q dos puntos distintos en C. Nos gustaria encontrar el camino
mas corto sobre C para ir de P a Q. Sin perdida de generalidad pode-
mos suponer que P = (1, 0, 0). Naturalmente pondremos este problema en
coordenadas cilindricas (r, θ, z) con

r = 1, −π ≤ θ ≤ π
114CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

definiendo a C. Sea Q = (1, θ0 , z0 ) (vea la figura 5.1).


Por consideraciones de simetria, es suficiente tratar el caso 0 < θ0 ≤ π
(¿cúal es la geodesica cuando θ0 = 0?). Podemos representar una cur-
va arbitraria que una (1, 0, 0) y (1, θ0 , z0 ) en la forma (en coordenadas
cartesiamas)
σ(θ) = (cos θ, sin θ, z(θ)), θ ∈ (0, θ0 ),
dado que las geodesicas cortan cada linea vertical en C a lo mas una sola
vez (¿por qué?) y de esta manera las primeras dos componentes de σ se
puden considerar trigonometricas. De esta manera cualquier tal curva esta
completamente determinada por la función z(θ). Tambien debemos exigir

z(0) = 0 z(θ0 ) = z0 .

El funcional de costo que debemos minimizar es aquel que representa la


longitud de σ:
Z θ0 p
I(z) = 1 + z 0 (θ2 )dθ
0
Sabemos que la función p
F (ξ) = 1 + ξ2
es estrictamente convexa (Capı́tulo 3), y solo depende de la variable deriva-
da. Por lo discutido anteriormente la función lineal
z0
z(θ) = θ
θ0
representa la unica geodesica que une estos dos puntos. Esta función lineal
en coordenadas cilindricas representa un arco de una helice sobre C.

2. Cuando el integrando F depende de ambos x y ξ, E-L se converte en


d
[Fξ (x, u0 (x))] = 0,
dx
o de manera equivalente

Fξ (x, u0 (x)) = k, (constante)

Dependiendo de la forma particular de F esta ecuación puede ser resuelta


de manera analitica o no.

Ejemplo 5.4 (Ejemplo de Weiertrass) Sea

F (x, ξ) = xξ 2 , x ∈ (0, 1).

y u(0) = 1, u(1) = 0 en los puntos extremos del intervalo. En este ejemplo,


E-L es
xu0 (x) = x, u(x) = c log x + d
5.2. LA ECUACIÓN DE EULER-LAGRANGE: EJEMPLOS 115

Curriosamente esta familia de soluciones es incapaz de cumplir la condi-


ción de frontera en el extremo izquierdo u(0) = 1, ya que u(0) no esta
definido para ninguna de las soluciónes. Por lo tanto el problema varia-
cional puede no tener soluciones óptimas. Este es el caso, ya que la familia
de funciones 
1 x ∈ (0, 1/j),
uj (x) =
− log x/ log j, x ∈ (1/j, 1),
es minimizante para
Z 1
I(u) = xu0 (x)2 dx, u(0) = 1, u(1) = 0,
0

En el sentido que I(uj ) & 0., Ademas para cualquier función u, tenemos
I(u) > 0, y por lo tanto no hay solución óptima para este problema varia-
cional.

Ejemplo 5.5 (La braquistocrona) Uno de los problemas variacionales mas


famoso de todos los tiempos el es de la braquistocrona. Coloquemos el eje x
en direccion vertical paralela a la acción de la gravedad, y el eje y perpen-
dicular a este. Suponga que tenemos dos puntos P y Q a diferentes alturas.
Sin perdida de generalidad podemos tomar P en el origen y Q = (a, A)
con ambas a, A positivas. La tarea consiste en encontrar el camino entre
P y Q de tal manera que una unidad de masa gasta el menor tiempo posi-
ble moviendose de Q a P unicamente bajo la acción de la gravedad (sin
fricción).
Evidentemente el camino óptimo puede ser representado en la forma y(x)
para alguna función y a determinar. Lo que queremos decir con esto es que
los caminos que no son monotonos (con saltos) obviamente tardaran mas
que aquellos monotonos. Asuma que y(x) es tal camino, asi que y(0) = 0,
y(a) = A.
El tiempo de transito para tal camino esta dado por la integral
Z a
ds
,
0 v
donde ds es el elemento diferencial de longitud de arco dado por
p
ds = 1 + y 0 (x)2 dx,
y v es la velocidad por la gravedad a una altura x. De acuerdo a una
formula p
v = 2gx
Estamos interesados en encontrar la curva y(x), 0 ≤ x ≤ a, que minimiza
la integral de transito (ignorando constantes positivas que no interfiren
con la optimización)
Z ar
1 + y 0 (x)2
I(y) = dx,
0 x
116CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

y y(0) = 0, y(a) = A. Advertimos al lector que la solución no es ni una


linea recta, ni un circulo. De hecho en el caso particular a = A = 1,
¿Pueden nuestros lectores decidir cual curva √ resulta en menos tiempo de
caida? ¿la linea y = x, o el circulo y = 1 − 1 − x2 ? En nuestro problema
la función integrando F es
p
1 + ξ2
F (x, ξ) = √ .
x

Que es una funcion estrictamente convexa con respecto a ξ, asi que igno-
rando la dificultad cuando x = 0, las soluciones óptimas se deben buscar
examinando la ecuación E-L. En este caso debemos resolver
y0 1 (y 0 )2 x
√ p = , = 2.
0
x 1 + (y )2 c 1 + (y 0 )2 c

Esto nos lleva a


Z x r
0 2 x s
y (x) = 2 , y(x) = ds,
c −x 0 c2 − s

Donde la constante c se determinara de manera que


Z ar
s
A= 2−s
ds.
0 c

¿Puede argumentar el lector porque hemos escogido el signo positivo en la


raiz cuadrada anterior?
Para encontrar una forma mas explicita de la solución, cambiaremos las
variables en la integral y de la siguiente manera.

c2
s(r) = (1 − cos r) = c2 sin2 (r/2).
2
Entonces
t
c2
Z
y(t) = c2 sin2 (r/2)dr = (t − sin t),
0 2
donde
c2
x(t) = (1 − cos t) = c2 sin2 (t/2).
2
En forma parametrica,

(x(t), y(t)) = (C(1 − cos t), C(t − sin t)), 0 ≤ t ≤ t0 .

Esta solución ya satisface x(0) = y(0) = 0. las constantes C y t0 deben


ser encontradas con las condiciones x(t0 ) = a, y(t0 ) = A. Esta curva es
el arco de una cicloide (Figura 5.3).
5.2. LA ECUACIÓN DE EULER-LAGRANGE: EJEMPLOS 117

3. Finalmente analizaremos el caso en el cual F = F (λ, ξ). En este caso la


ecuación E-L tiene la forma
d
[Fξ (u(x), u0 (x))] = Fλ (u(x), u0 (x)).
dx
Es cuestion de simple aritmetica ver que este ecuación (en el caso que
F = F (λ, ξ) y solo en ese caso) puede ser reescrita como
d
[F (u(x), u0 (x)) − u0 (x)Fξ (u(x), u0 (x))] = 0
dx
En algunas situaciones este forma de la ecuación puede ser mas apropiada
cuando se estan buscando soluciones. Pero en otras ocasiones esto puede
no suceder.

Ejemplo 5.6 (Superficies Mı́nimas de Revolución) Nos gustaria iden-


tificar funciones u(x) definidas en el intervalo (a, b) de tal manera que
u(a) = A, u(b) = B, y cuya grafica genera por revolucion alrededor del eje
X, la superficie de revolución con menor área (Figura 5.4)
Sabemos del cálculo que esta area esta dada, exepto por un factor positivo
constante, por la integral.
Z b p
I(u) = u(x) 1 + u0 (x)dx.
a

Buscamos la función que minimice esta integral entre todas aquellas que
satisfacen las condiciones en ambos extremos del intervalo. El integrando
para este ejemplo es p
F (λ, ξ) = λ 1 + ξ 2
Esta función es convexa en ξ para un λ fijo dado que λ ≥ 0. Es incluso
estrictamente convexa en ξ si lambda > 0. Sin embargo no es conjunta-
mente convexa en (λ, ξ) (¿Por qu?). Por lo tanto en principio no podemos
usar el Teorema 5.1. Sin embargo, para que el resultado sea cierto solo se
necestita convexidad con respecto a ξ para (x, λ) fijos. La demostración de
esto esta por fuera del objetivo de este texto, pero es importante tener esto
en mente para el ejemplo siguiente.

Teorema 5.7 ([19]) Si u es la unica solución de E-L y F es convexo


con respecto a la variable ξ para cada x ∈ Ω fijo y λ ∈ R, entonces u es
tambien una solución óptima para el problema variacional.

Por lo tanto podemos proceder con el estudio de la ecuación E-L para


buscar soluciones óptimas
La segunda forma de la ecuación E-L para este ejemplo es
p uu0
u 1 + (u0 )2 − u0 p =c
1 + (u0 )2
118CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

Despues de varias manipulaciones, separando varialbes, llegamos a


du dx
√ =
u2 − c2 c
En este caso particular no importa el signo que tomemos para la raiz
cuadrada. Invitamos a nuestros lectores que comprueben esto. Un cambio
de variables usando funciones hiperbolicas nos lleva a la forma final de la
solución x 
u(x) = c cosh +d ,
c
la cual es una catenaria. Esta solución es única.
Al ajustar los valores en los puntos extremos encontramos algunas difi-
cultades. Suponga, por ejemplo que exigimos que u(0) = 1, u(b) = B. La
primera condición implica que
1
c=
cosh d
mientras que la segunda implica
cosh(b cosh d + d)
B=
cosh d
Esta condicion no se puede satisfacer siempre. Teniendo en cuenta que

cosh t > |t|

para todo real t resulta que


b cosh d + d b cosh d − |d| |d|
B> ≥ =b− ≥b−1
cosh d cosh d cosh d
Esta cedena de desigualdades implica que si al principio hubieramos im-
puesto B ≤ b − 1, no habria forma de ajustar el valor en el extremo
derecho, y por lo tanto el problema puede no tener soluciones óptimas.
Esta observacion tambien puede ser ilustrada fisicamente de una forma
bastante atractiva. La forma adoptada por una burbuja de jabon que se
adiherea un anillo (no planar) esta realacionado con la tensión superfi-
cial de tal manera que la forma adoptada por la pelicula de jabon sera la
que minimice la tensión superficial. Esta cantidad es proporcional al área
generada porla superficia, asi que determinar la forma óptima es equiv-
alentea encontrar la superficie de mı́nima área. En el caso de superficies
de revolución, como aquellas que estamos considerando en este ejemplo,
podemos imaginar dos anillos concentricos de distintos radio, y a una dis-
tancia pequeña. Una pelicula de jabon pegada a los dos anillos mostrara
la forma dada por la catenaria que encontramos anteriormente. Pero a
medida que alejemos los anillos uno del otro la pelicula se estirara has-
ta cierto punto donde la pelicula se degenerara a dos circulos en ambos
anillos. Esta transición esta reflejada en nuestros calculos.
5.2. LA ECUACIÓN DE EULER-LAGRANGE: EJEMPLOS 119

La explicación de este hecho depende de nuestro entendimiento de nuestro


problema variacional. Cuando los dos anillos estan cerca, la catenaria da
la superficie mı́nima de revolución con área menor que aquella de los dos
circulos que definen los anillos. A medida que alejamos los anillo, el área
de la catenaria crece hasta el punto donde iguala aquella de los dos cir-
culos. Si la alejamos mas, ninguna superficie de revolución tendra menor
área que los dos circulos, y por lo tanto la pelicula se separa. Esta solu-
ción óptima (los dos discos) no puede ser descrita como una superficie
de revolución de alguna función u asi que en realidad nuestro problema
variacional no tiene una solución óptima. Una formulación mas general
del problema requeriria incorporal estas funciones especiales. Sin embargo
es cierto que podemos aproximar esta solución especial tanto como quer-
ramos mediante una sucesión de superficies de revolución admisibles uj
de acuerdo co la figura 5.5

4. Finalmente examiramos varias situaciones sencillas en varias dimensiones.

Ejemplo 5.8 (Integral de Dirichlet) Sea u : Ω ⊂ Rn → R una función


que satisface u = u0 en ∂Ω donde u0 es una función fija. Nos gustaria
identificar la función u que minimice la integral
Z
1
I(u) = |∇u(x)|2 dx.
2 Ω
Podemos imaginar situaciones en las cuales N = 2 o N = 3, y Ω es un
circulo en el plano o una bola en el espacio. Es por lo tanto un problema
de calculo variacional. Notese que el integrando
1 2
F (ξ) = |ξ|
2
es estrictamente convexo, asi que existe una solución óptima, y es unica
(vease Teorema 5.1) Tal función debe ser la solución de la ecuación E-L.
En este caso la ecuación es

div(Fξ (∇u(x))) = 0

i.e
∆u = 0
Por lo tanto la función que minimiza el cuadrado de la norma del gra-
diente es la función armonica que respete las condiciones de frontera en
∂Ω. Normalmente esto se interpreta diciendo que la función armonica
corresponde a un estado de equilibrio estable con respecto a una energia
proporcional al cuadrado del gradiente.

Ejemplo 5.9 (Ecuación de onda) Para el caso particular en el cual


1 2
F (ξ1 , ξ2 ) = (ξ − ξ22 ),
2 1
120CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

la ecuación E-L es precisamente la eciación de onda

uxx − uyy = 0.

Sin embargo en este caso F no es convexo, asi que no podemos hablar


de minimización. A pesar de esto para este tipo de ecuación existe una
amplia teoria de principios variacionales en mecanica donde se postula el
principio de Hamilton de mı́nima acción y el papel central se mueve del
concepto de minimizador a aquel de estado estacionario.
Un ejemplo simple puede ayudarnos a entender un poco mejor lo que sig-
nifican las lineas anteriores. Suponga que una particula de masa m viaja
en linea recta bajo la acción de un campo F (t, x) que depende de la posi-
ción y del tiempo. Si u(t) indica la posición de la particula en un tiempo
t. La Ley de Newton nos dice que
d
(mu0 (t)) = F (t, u(t)).
dt
La pregunta es si podemos crear una función L(t, λ, ξ) de tal manera que
la ecuación E-L asociada con el funcional
Z t0
I(u)) L(t, λ, ξ)dt
0

resulta ser exactamente la ley de Newton. En esta situación simplificada


no es dificil. Si suponemos que el campo F es conservativo con potencial
U (t, λ) de tal manera que Uλ = −F , entonces podemos tomar
1 2
L(t, λ, ξ) = ξ − U (t, λ).
2
Esta función es convexa en ξ. Por el teorema 5.7, nos gustaria concluir
que el movimiento de la particula toma lugar de acuerdo al principio de
energia mı́nima (mı́nima acción) medido por I. La función L se llama el
Lagrangiano, y al funcional I se le llama la integral de acción. Un estudio
copleto de estos temas excede los objetivos de este libro.

Ejemplo 5.10 (Superficies Mı́nimas) Consideramos el problema de su-


perficies minimas, no necesariamente de recolución alrededor de un eje.
Dada una región del plano Ω y una función u0 sobre ∂Ω (el borde), el area
de la grafica de una función u esta dada por dada por la integral
Z p
I(u) = 1 + |∇u(x)|2 dx.

Estamos buscando una función u que minimice esta integral entre todas
aquellas funciones que tienen los mismos valores u0 en ∂Ω. Dado que la
función p
F (ξ) = 1 + |ξ|2
5.3. LA ECUACIÓN DE EULER-LAGRANGE: JUSTIFICACIÓN 121

es estrictamente convexa, si existe una solución esta debe ser unica. La


ecuación E-L es !
∇u
div p = 0.
1 + |∇u|2
Esta ecuación diferencial parcial es una ecuación bastante complicada por
razones que van mas alla del objetivo de este libro. En el caso N = 2, la
ecuación puede ser reescrita como

(1 + u2y )uxx − 2ux uy uxy + (1 + u2x )uyy = 0.

5.3. La ecuación de Euler-Lagrange: Justificación


Despues de convencernos por numerosos ejemplos de la importancia de la
ecuación E-L para encontrar soluciones óptimas para problemas variacionales,
vale la pena explorar los origenes de esta ecuación y porque las soluciones ópti-
mas deben tambien ser soluciones de esta ecuación. Estudiaremos estos temas
entendiendo la idea de fondo y omitiendo varios detalles tecnicos que son ir-
relevantes a nuestra discución. Veremos primero el caso unidimensional para
entender mejor los origenes y luego indicaremos los cambios para el caso multi-
dimensional.

Teorema 5.11 (Ecuación de Euler-Lagrange) Bajo las hipotesis mencionadas


anteriormente:

1. Si u es una solución óptima, entonces u tambien debe ser una solución


del problema E-L

div(Fξ (x, u(x), ∇u(x))) = Fλ (x, u(x), ∇u(x)) in Ω,


u = u0 en ∂Ω

2. Si u satisface E-L y F es convexa con respecto a las variables (λ, ξ) para


cada x fijo en Ω, entonces u tambien es una solución óptima del problema
variacional.

3. Si ademas F es estricamente convexo con respecto a (λ, ξ) para cada x ∈ Ω,


la solución óptima u si existe es única.

Para el caso unidimensional esta ecuación se simplifica a

d
[Fξ (x, u(x), u0 (x))] = Fλ (x, u(x), u0 (x)),
dx
junto con las condiciones de frontera u(a) = A, u(b) = B, donde
Z b
F = F (x, λ, ξ), I(u) = F (x, u(x), u0 (x))dx.
a
122CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

sea ϕ una función fija que satisface el requisito ϕ(a) = ϕ(b) = 0, y consideremos
la función de una sola variable.
Z b
g(t) = I(u + tϕ) = F (x, u(x) + tϕ(x), u0 (x) + tϕ0 (x))dx,
a

donde asumimos que u es una solución óptima que nos da el mı́nimo valor de
las integrales entre todas las funciones factibles. Para cada valor de t ∈ R, la
función u + tϕ es una función admisible ya que ϕ se anula en los extremos
del intervalo (a, b). Por lo tanto g tiene un mı́nimo (global) para t = 0. Una
condición necesaria para que tal mı́nimo ocurra es que la derivada se anule
en tal punto. Si derivamos bajo el simbolo de integral en la definición de g y
evaluamos en t = 0 obtenemos
Z b
0= [Fλ (x, u(x), u0 (x))ϕ(x) + Fξ (x, u(x), u0 (x))ϕ0 (x)]dx.
a

Si integramos por partes el segundo termino, teniendo en cuenta que ϕ(a) =


ϕ(b) = 0, tenemos
Z b 
0 d 0
0= Fλ (x, u(x), u (x)) − Fξ (x, u(x), u (x)) ϕ(x)dx.
a dx
Dado que ϕ es arbitrario, excepto por sus valores en la frontera, la identidad
anterior solo puede ocurrir si la expresión entre parentesis cuadrados es identica-
mente cero: La ecuación E-L. Esta es la primera parte del teorema. Supongamos
ahora que el integrando F (x, λ, ξ) es conjuntamente convexo en las variables
(λ, ξ) para cada x fijo en (a, b), y que u es una solución de E-L junto con las
condiciones de frontera apropiadas. Sea v cualquier otra función factible tal que
v(a) = A, v(b) = B. Por la convexidad de F (Capı́tulo 3),
Z b
I(v) − I(u) = [F (x, v(x), v 0 (x)) − F (x, u(x), u0 (x))]dx
a
Z b
≥ [Fλ (x, u(x), u0 (x))(v(x) − u(x)) + Fξ (x, u(x), u0 (x))(v(x) − u(x))dx.
a

Si integramos por partes el segundo termino como antes, notamos que obtenemos
exactamente la ecuación E-L para u, asi que si u es una solución la conclusión
es
I(v) − I(u) ≥ 0,
y u es realmente una solución óptima para el problema. Esto demuestra la
suficiencia.
Finalmente nos gustaria provar la unicidad de las soluciones óptimas bajo la
convexidad estricta de F . La forma mas facil de manejar la convexidad estricta
en este contexto consiste en exigir que la igualdad
 
1 1 1 1
f x + y = f (x) + f (y)
2 2 2 2
5.3. LA ECUACIÓN DE EULER-LAGRANGE: JUSTIFICACIÓN 123

automaticamente implica x = y si f es una función estrictamente convexa.


Tratemos de llegar a tal situación cuando asumimos que F (x, ·, ·) es estricta-
mente convexa.
Suponga que nuestro problema variacional admite dos soluciones óptimas
u, v. Debido a la convexidad no es dificil deducir
1 1 1 1
I(u) + I(v) − I( u + v) ≥ 0
2 2 2 2
Si denotamos por m el valor del mı́nimo i.e. I(u) = I(v) = m, entonces
1 1
m − I( u + v) ≥ 0
2 2
Pero por otro lado, dado que m es el valor mı́nimo
1 1
I( u + v) ≥ m
2 2
De esto podemos concluir
1 1
I( u + v) = m
2 2
y dado que
Z b 
1 1
0= F (x, u(x), u0 (x)) + F (x, v(x), v 0 (x))
a 2 2
 
1 1 1 0 1 0
−F x, u(x) + v(x), u (x) + v (x) dx.
2 2 2 2
Pero el integrando anterior es no negativo, por la convexidad de F . La unica
posiblidad para una función no negativa cuya integral se anula es ser la función
nula, asi que
1 1
F (x, u(x), u0 (x)) + F (x, v(x), v 0 (x))
 2 2 
1 1 1 0 1
−F x, u(x) + v(x), u (x) + v 0 (x) = 0.
2 2 2 2
Por lo mencionado anteriormente esto implica que u = v, y que la solución
óptima si existe es única.
Para el caso de un problema en varias variables, el argumento es formalmente
el mismo. Los cambis estan en la forma en que se hace la integración por partes
dado el teorema de la divergencia. Por lo tanto si ϕ se anula en ∂Ω, de manera
que las contribuciones de la frontera son cero, tendremos
Z
0 = [Fλ (x, u(x)∇u(x))ϕ(x) + Fξ (x, u(x)∇u(x))∇ϕ(x)]dx
ZΩ
= [Fλ (x, u(x)∇u(x)) − div(Fξ (x, u(x)∇u(x)))]ϕ(x)dx.

Y se sigue la prueba de la misma manera


124CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

5.4. Condiciones Naturales de Frontera


Es impotante profundizar en la manera como deducimos E-L. Para enfatizar
esto, veremos una situación tı́pica en la cual el valor en uno de los puntos
extremos esta libre en un problema variacional de dimensión uno. Nos gustaria
encontrar el mı́nimo del funcional
Z b
I(u) = F (x, u(x), u0 (x))dx,
a

donde les exigimos a las funciones u solamente que satisfagan u(a) = A, pero no
se les exige nada en el punto extremo derecho, asi que el conjunto de funciones
factibles es mas grande comparado con la situación en la cual fijamos el valor
en ese punto extremo. Sospechamos que E-L junto con u(a) = A puede no
ser sufiente para determinar completamente la solución óptima u. De alguna
manera, la condición de tener un punto extremo libre debe imponer alguna
condición adicional en las soluciones óptimas. Nuestras sospechas son ciertas. Si
regresamos a la deducción de la ecuación E-L, notamos que el paso en el cual
los valores en los extremos eran importantes era en la escogencia de la función
auxiliar ϕ, una función que debe anularse en a y en b. Si ahora dejamos el valor
en b libre, equivale a considerar ϕ arbitraria excepto por ϕ(a) = 0, sin exigirle
nada en el punto b. Esta información se uso durante la integración por partes.
Si no tenemos ϕ(b) = 0 obtendriamos
Z b  
0 d 0
0= Fλ (x, u(x), u (x)) − Fξ (x, u(x), u (x)) dx
a dx
+Fξ (b, u(b), u0 (b))ϕ(b).

Si restringimos nuestra atención a todas las ϕ que se anulan en b (ya que estas
ϕ tambien son elegibles), concluiriamos como antes, que la ecuación de E − L
se debe mantener. Pero una vez tenemos esta información a nuestra disposicion,
la identidad anterior implica

Fξ (b, u(b), u0 (b))ϕ(b) = 0.

Dado que ϕ(b) se puede escoger de manera arbitraria, esto significa que

Fξ (b, u(b), u0 (b)) = 0,

A esta se le llama la condición de transversalidad o condicion natural en b. Esta


es una condición adicional que las soluciones óptimas del problema variacional
deben satisfacer. Estas mismas observaciones aplican al extremo izquierdo.

Ejemplo 5.12 Tratemos de encontrar el valor mı́nimo que el funcional


Z log 2
1
I(u) = [(u0 (x) − 1)2 + u(x)2 ]dx.
2 0
5.4. CONDICIONES NATURALES DE FRONTERA 125

puede tomar entre todas las funciones u. Esta es una situación en la cual ambos
puntos extremos estan libres, asi que como el integrando
F (x, λ, ξ) = (ξ − 1)2 + λ2
es estrictamente convexo, la solución óptima se encuentra resolviendo el prob-
lema
u00 (x) − u(x) = 0, u0 (0) = u0 (log 2) = 1.
La solución unica es
1 x 2 −x
u(x) =e − e
3 3
Otra posibilidad ocurre cuando los valores en los extremos estan restringidos
por las desigualdades
B1 ≤ u(b) ≤ B2
En este caso procedemos de la siguiente manera. Primero examinamos la condi-
ción de transversalidad
Fξ (b, u(b), u0 (b)) = 0,
Si esto determina la solución óptima u de tal manera que es factible, entonces
esta es nuestra solución óptima. Si no lo es, es porque u(b) ∈
/ [B1 , B2 ], entonces
la solución óptima debe exigir que u(b) = B1 , o que u(b) = B2 , dependiendo si
u(b) < B1 , o u(b) > B2 , respectivamente. Esta regla requiere una explicación
mas profunda, pero la tomaremos como valida, y de hecho es correcta en varios
casos regulares. Regresaremos a esta discusión mas adelante.
Ejemplo 5.13 Considere la siguiente situación:
Z log 2
 0 2
u (x) + (u(x) − 2)2 ] dx

Minimizar
0

sujeto a
2 ≤ u(0) ≤ 3, u(log 2) = 1,
La ecuación de E-L junto con las condiciones de frontera nos arroja
u00 (x) = u(x) − 2, u0 (0) = 0, u(log 2) = 1.
Cuya solución es
2
u(x) = 2 − (ex + e−x ).
5
Notamos que u(0) = 6/5, asi que esta solución no es admisible para nuestro
problema de optimización. Pero, dado que el valor u(0) es menor que el los
valores permitidos en 0 concluimos que la solución óptima sera la solución del
problema
u00 (x) = u(x) − 2, u(0) = 2, u(log 2) = 1
La solución óptima es en consecuencia
2
u(x) = − (ex − e−x ) + 2
3
126CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

5.5. Problemas variacionales bajo condiciones in-


tegrales y puntuales
En esta sección nos gustaria considerar problemas variacionales en los cuales
en adicion a tner restricciónes en los valores de los puntos extremos, debemos
respetar condiones expresadas en forma de igualdades o desigualdades del tipo
Z b Z b
G(x, u(x), u0 (x))dx ≤ α, H(x, u(x), u0 (x))dx = β
a a

Notese que ambos G y H puden ser funciones vectoriales, asi qeu en realidad
tenemos varias restricciones integrales. Los vectores α y β estan dados. En
esta situación solamente estamos dispuestos a aceptar como funciones factiblea
aquellas que respeten todas estas restricciones integrables, y entre ellas nos
gustaria encontrar aquella(s) que tenga el menor valor de la integral
Z b
F (x, u(x), u0 (x))dx.
a

Como mencionamos antes tambien podemos tener restricciones en los puntos


extremos, note que
u(a) = A, u(b) = B
es equivalente a
Z b
u(a) = A, u0 (x)dx = B − A.
a
Y asi podemos incorporar la función G0 (x, λ, ξ) = ξ como una restricción inte-
gral. Entenderemos esta condición de esta manera en lo restante de la sección.
Como se puede esperar de la experiencia que tenemos en programación
matematica, tenemos que considerar multiplicadores asociados con todas la re-
stricciones de integraldidad, uno para cada restricción. Asi que tendremos que
trabajar con el integrando aumentado
F̃ (x, λ, ξ) = F (x, λ, ξ) + yG(x, λ, ξ) + zH(x, λ, ξ).
El proceso practico de encontrar tales soluciones óptimas es ligeramente
diferente de aquellos de programación matematica, aunque esta basado en las
mismas ideas fundamentales. Veamos primero en caso de restricciones de igual-
dad de manera que la función G no esta presente.
Proposición 5.14 Suponga que hay un vector de numeros z (El vector de mul-
tiplicadores) tal que el integrando auxiliar
F̃ = F + zH
Resulta ser convexa en (λ, ξ) (es mas, solo se necesita convexidad con respecto a
ξ) para cada x ∈ (a, b) fijo. Si u es la unica solución del problema E-L asociado
con tildeF ,
d h i
F̃ξ (x, u(x), u0 (x)) = F̃λ (x, u(x), u0 (x)),
dx
5.5. PROBLEMAS VARIACIONALES BAJO CONDICIONES INTEGRALES Y PUNTUALES127

con u(a) = A, entonces u es na solución óptima del problema bajo las restric-
ciones integrales correspondientes al vector β determinado por u
Z b
β= H(x, u(x), u0 (x))dx.
a

Si la convexidad de F̃ es estricta, entonces se sigue la unicidad de la solución


óptima. La prueba de este resultado se reduce a aplicar la parte de convexidad
del teorema 5.11a F̃ . Los detalles se le dejan al lector.
Este resultado se usa en la practica en dos pasos. Primero, se resuelte la
ecuación E-L para F̃ incorporando los multiplicadores (z) durante todo proceso
como parametros, de tal manera que obtenemos una familia completa de solu-
ciones, una para cada z . A continuación estos multiplicadores son ajustados d
etal manera que la solución óptima nos da el valor apropiado para la restricción
integral.
Ejemplo 5.15 Encuentre la función u que minimiza la integral del cuadrado
de su derivada en el intervalo (0, 1) bajo las restricciones
Z 1
u(0) = u(1) = 0, u(x)dx = 1.
0

Alternativamente podemos escribir, como mencionamos anteriormente,


Z 1 Z 1
0
u(0) = 0, u (x)dx = 0, u(x)dx = 1.
0 0

El integrando aumentado es ahora


F̃ (x, λ, ξ) = ξ 2 + z1 ξ + z2 λ,
con ecuación E-L
z2
u00 (x) =
2
Una primera integración resulta en
z2
u0 (x) = x+c
2
y una segunda integracion teniendo en cuenta que u(0) = 0 nos lleva a
z2
u(x) = x2 + cx
4
Dado que la función F̃ es siempre estrictamente convexa (con respecto a ξ), la
unica solución es encontrada imponiendo la dos restricciones integrales en la
anterior función u,
Z 1 Z 1
z2 z2
0= ( x + c)dx, 1 = ( x2 + cx)dx.
0 2 0 2
Despues de hacer estos calculos obtenemos la solución óptima
u(x) = −6x(1 − x).
128CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

Ejemplo 5.16 (El cable colgante) Un ejemplo mas interesante de un problema


variacioonal bajo restricciones integrales es el siguiente. Nos gustaria determinar
la forma adoptada por un cable uniforma colgando de sus puntos extremos a la
misma altura bajo la acción de su propio peso, asumiendo que esta forma es el
resultado de un proceso de minimización de la energia potencial (Vease Figura
5.6)
Suponga que colocamos el eje x de tal manera que pase por los dos puntos
a la misma altura con una distancia D entre ellos. La longitud del cable es L.
Obviamente L ≥ D. Si ω representa el peso por unidad de longitud,y asumiendo
que las secciones transversales son uniformes, la energia potencial asociada co
el peso total esta dada por la integral
Z D p
I(u) = w u(x) 1 + u0 (x)2 dx,
0

donde como es usual p


ds = 1 + u0 (x)2 dx
representa el elemento infinitesimal la longitud de arco. Notese que en este ca-
so u se considera negativo, dado que minimizaremos I(u) entre todas aquellas
funciones negativas tal que u(0) = u(D) = 0.
Hay otra restricción importante que se debe tener en cuente. Esta es la re-
stricción que dice que la longitud del cable debe ser L. De lo contrario, el prob-
lema variacional no tendra ningun sentido fisico, dado que podemos hacer I(u)
tan pequeo como deseemos haciendo a u mas negativa. La restriccion que nos
referimos es
Z Dp
L= 1 + u(x)2 dx.
0

Resumiento, queremos encontrar las soluciones óptimas del problema varia-


cional Z D p 2
Minimizar u(x) 1 + u0 (x)
0
sujeto a
Z D p
u(0) = u(D), = 0 L= 1 + u0 (x)2 dx.
0

De acuerdo con nuestra discusión anterior, estamos interesados en el integrando


p p p
F (x, λ, ξ) = λ 1 + ξ 2 + z 1 + ξ 2 = (λ + z) 1 + ξ 2

donde z es el multiplicador asociado a la restricción integral y es visto como un


parametro. Dado que formalmente obtenemos el mismo tipo de integrando que
en el caso de las superficies mı́nimas de revolución, no es dificil comprobar que
los calculos son formalmente los mismos, asi llegamos a una solución óptima
 
x − D/2
u(x) = c cosh −z
c
5.5. PROBLEMAS VARIACIONALES BAJO CONDICIONES INTEGRALES Y PUNTUALES129

donde la constante c y el multiplicador z estan determinados por las condiciones


Z Ds  
x − D/2
z = c cosh(D/(2c)), L = 1 + sinh2 dx.
0 c
La solución es por lo tanto una catenaria.
Ejemplo 5.17 (El canal) De acuerdo a nuestra discución en el diseño de un
canal en el Capı́tulo 1, el problema consiste en determinar la forma de la sección
transversal (una curva) que encierra un area fija tiene mı́nimo perimetro.
si u definido en (0, 1) describe un perfil posible le debemos exigir que
Z 1
u80) = u(1) = 0, A = u(x)dx,
0

y entre todas aquellas curvas estamos buscando aquella que da el valor mı́nimo
de Z 1p
I(u) = 1 + u0 (x)2 dx.
0
Suponga que u ≥ 0.
Como antes debemos trabajar con la ecuación E-L para la función
p
F (x, λ, ξ) = 1 + ξ 2 + zλ,
donde z es el multiplicador. Notese que esta función es convexa en (λ, ξ), afı́n en
λ, y estrictamente convexa en ξ. Esto es suficiente para garantizar la unicidad
de la solución óptima (revisese la prueba del terema 5.11)
!
u0 (x)
p = z.
1 + u0 (x)2
Despues de un par de cálculos elementales tenemos
zx + c
u0 (x) = p ,
1 − (zx + c)2
donde c es una constante. Entonces
Rx zs+c
u(x) = 0

1−(zs+c)2
p
= − z1 1 − (zs + c)2 |x0
√ p 
= z1 1 − c2 − 1 − (zx + c2 )

La condición u(1) = 0 conduce a c = −z/2 y por lo tanto


1 p p 
4 − z 2 − 4 − z 2 (2x − 1)2
2z
El multiplicador z se determina de manera que satisfaga la restricción integral
pero esto lleva a unos cálculos complicados. Lo que es importante es notar que
esta solución óptima u es el arco de un cı́rculo.
130CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

Ahora trataremos el caso de las restricciones integrales en la forma de igualdades


y desigualdades de manera simultanea. Nos enfocaremos en el problema
Z b
Minimizar I(u) = F (x, u(x), u0 (x))dx
a

sujeto a

u(a) = a
Z b
G(x, u(x), u0 (x)dx ≤ α,
a
Z b
H(x, u(x), u0 (x)dx = β.
a

De nuevo nuestra experiencia con programación no lineal hace el siguiente re-


sultado plausible.

Proposición 5.18 Suponga que hay un vector (y, z), y ≥ 0, de tal manera que
la función
F̃ (x, λ, ξ) = F (x, λ, ξ) + yG(x, λ, ξ) + zH(x, λ, ξ)
es convexa en (λ, ξ) (de nuevo la convexidad con respecto a ξ es suficiente). Si
v es la solución (unica) del problema E-L correspondiente,

d h i
F̃ξ (x, v(x), v 0 (x)) = F̃λ (x, v(x), v 0 (x)), v(a) = A,
dx
entonces v es la solución óptima del problema variacional anterior, dado que

Z b
G(x, v(x), v 0 (x)) ≤ α,
a
Z b
H(x, v(x), v 0 (x))dx = β
a
!
Z b
y G(x, v(x), v 0 (x))dx − α = 0.
a

Resolvamos un ejemplo

Ejemplo 5.19 Resolver


Z 1
Minimizar u0 (x)2 dx
0

suejeto a Z
u(0) = u(1) = 1, u(x)2 dx ≤ α,
5.5. PROBLEMAS VARIACIONALES BAJO CONDICIONES INTEGRALES Y PUNTUALES131

donde α es un numero no negativo dado. Introduciendo un multiplicador y para


encarganos de la restricción inetegral, debemos enfrentarnos a la ecuación E −L
para el integrando aumentado
F̃ (x, λ, ξ) = ξ 2 + yλ2
viendo a y como un parametro. Este problema consiste en
u00 (x) = yu(x), u(0) = 0, u(1) = 1.
La solución general es de la forma

sinh( yx)
u(x) = √
y
si y no se anula, y
u(x) = x
en caso que y = 0. Cada vez que α sea escogido de tal manera que
Z 1
1
x2 dx = ≤ α,
0 3
la solución óptima sera la lı́nea u8x) = x. Pero si
1
α<
3
la solución óptima sera de la forma

sinh( yx)
u(x) = √ ,
sinh( y)
donde el multiplicador y esta determinado de tal manera que
Z 1 √ 2
sinh( yx)
√ = α.
0 sinh( y)
Cuando se imponen restricciones adicionales para problemas variaciones en for-
ma puntual como
H(x, u(x), u0 (x)) = 0
o
G(x, u(x), u0 (x)) ≤ 0, H(x, u(x), u0 (x)) = 0
entonces los multiplicadores y(x), z(x) deben ser funciones de x, porque debemos
satisfacer una restricción para cada x. De esta manera el funcional que nos deja
tratar este tipo de restriccion puntual es
Z b
I(u, y, z) = [F (x, u(x), u0 (x))+y(x)G(x, u(x), u0 (x))+z(x)H(x, u(x), u0 (x))]dx.
a

Note la dependencia explicita de I con respecto a los multiplicadores y(x), z(x).


No hay duda qe una de las situaciones mas importantes en las cuales las
restricciones puntuales se tienen que tener en cuenta es aquellas de problemas
de control óptimo. Dado que el ultimo capı́tulo de este texto esta dedicado a
estos y dada su importancia no desarrollaremos el tema en este momento.
132CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

5.6. Resumen de las restricciones para proble-


mas variacionales
El objetivo de esta sección es clarificar todas las posibilidades que pueden
surgir cuando se considera un tı́pico problema variacional desde la perspectiva
de distintos tipos de restricciones. Esta discución considera, como casos particu-
lares, condiciones de transversalidad de todos los tipos, y todas las situaciaciones
ralacionadas con restricciones integrales y restricciones en los extremos.
Considere el problema
Z b
Minimizar F (x, u(x), u0 (x))dx
a

sujeto a
Z b Z b
G(x, u(x), u0 (x))dx ≤ α H(x, u(x), u0 (x))dx = β, u(c) ≤ A,
a a

donde c = a o c = b esta fijo.


Sabemos que para encontrar una solución óptima debemos resolver E-L para
el integrando aumentado
F̃ = F + yG + zH
Suponga que ũ(x, y, z, w) es la solución general de la ecuación E-L para F̃
donde w = (w1 , w2 ) representan dos condiciones arbitrarias de integración ,
desde que la ecuación E-L es de segundo orden. Defina
Z b
f (y, z, w) = F (x, ũ(x, y, z, w), ũ0 (x, y, z, w))dx,
a
Z b
g(y, z, w) = G(x, ũ(x, y, z, w), ũ0 (x, y, z, w))dx,
a
Z b
h(y, z, w) = H(x, ũ(x, y, z, w), ũ0 (x, y, z, w))dx,
a
ϕ(y, z, w) = ũ(c, y, z, w)
Entonces no es difı́cil convercernos que los valores óptimos para (y, z, w) deben
ser determinados resolviendo el PPNL
Minimizar f (y, z, w)
sujeto a
g(y, z, w) ≤ α, y ≥ 0, y(g(y, z, w) − α) = 0,
h(y, z, w) = β, ϕ(y, z, w) ≤ A.
Una vez se han encontrado estos valores óptimos (y0 , z0 , w0 ) es importante re-
gresar a F̃ ”a posteriori” y confirmar que
F̃ = F + y0 G + z0 H
5.6. RESUMEN DE LAS RESTRICCIONES PARA PROBLEMAS VARIACIONALES133

es convexa con respecto a ξ. En particular, dado que y ≥ 0, la función G (o


todos sus componentes) debe ser convexa con respecto a ξ. si F̃ es no convexo,
entonces podemos no tener la solución óptima. En este contexto, tambien pode-
mos tratar todas las variables relacionadas a diferentes tipos de igualdades y/o
desigualdades.
Esta perspectiva general lleva en algunas ocasiones a problemas que no son
suaves o incluso en algunos casos que no son continuos y, que requeririan en
principio, tecnicas mas elaboradas para encontrar soluciones óptimas. Dada
la estructura especial de las restricciones, es elemental notar, que como men-
cionamos anteriormente cuando trabajamos con las condiciones de optimalidad
de un PPNL, las restricciones

g(y, z, w) ≤ α, y ≥ 0, y(g(y, z, w) − α) = 0

nos lleva a tener


yi (gi (y, z, w) − αi ) = 0
para todos los i, y estas ecuaciones nos permiten un tratamiento separado
de varios PPNL. Por ejemplo, cuando G tiene una sola componente entonces,
tendriamos dos posibilides,

y=0 o g(y, z, w) = α,

que llevan a los dos PPNL

Minimizar f (o, z, w)

sujeto a
g(0, z, w) ≤ α, h(o, z, w) = β, ϕ(0, z, w) ≤ A
y
Minimizar f (y, z, w)
sujeto a
Minimizar f (y, z, w)
sujeto a
g(y, z, w) = α, h(y, z, w) = β, ϕ(y, z, w) ≤ A,
consideranto estas soluciones óptimas para y ≥ 0. La verdadera solución óptima
de nuestro problema se encontrara en alguno de estos dos PPNL.

Ejemplo 5.20 Nos gustaria resolver


Z 1
1
Minimizar (u0 (x) − 1)2 dx
2 0

suejto a
1
o ≤ u(0) ≤, 0 ≤ u(1) ≤
2
134CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

La ecuación E-L es u00 = 0, asi que la solución general es

u(x) = w1 x + w2 .

Por lo tanto, consideramos la función objetivo

1 1
Z
1
f (w) = (w1 − 1)2 dx = (w1 − 1)2 .
2 0 2
Las restricciones corresponden a requerir
1
0 ≤ u(0) = w2 ≤ 1, 0 ≤ u(1) = w1 + w2 ≤
2
Por lo que debemos resolver PPNL
1
Minimizar (w1 − 1)2
2
bajo las restricciones
1
0 ≤ w1 ≤ 1, 0 ≤ w1 + w2 ≤
2
Es muy facil encontrar (incluso graficamente) la solución óptima, que corre-
sponde a (1/2, 0), asi que la solución óptima a nuestro problema es u(x) = x/2

Ejemplo 5.21 Considere el problema


Z 1
1
Minimizar u0 (x)2 dx
2 0

bajo las restricciones


Z 1
1
0 ≤ u(0) ≤ 1, u(1) = 1, u(x)dx ≤
0 2
00
La ecuación E-L que debemos resolver es u = y, cuya solución general es

x2
u(x) = y + w1 x + w2 .
2
Es muy facil obtener
1 2
(y + 3yw1 + 3w12 ),
f (y, w) =
6
y w1 y
g(y, w) = + + w2 , ϕ(y, w) = w2 , w1 + w2 + .
6 2 2
Entonce sel PPNL a ser considerado es
1 2
Minimizar (y + 3yw1 + 3w12 )
6
5.7. PROBLEMAS VARIACIONALES DE DIFERENTE ORDEN 135

Sujeto a
y w1 1 y
+ + w2 ≤ , w1 + w2 + = 1, 0 ≤ w2 ≤ 1,
6 2 2  2 
y w1 1
y ≥ 0, y + + w2 − = 0.
6 2 2

Como se menciono anteriormente este PPNL se divide en


w12
Minimizar
2
sujeto a
w1 1
+ w2 ≤ , w1 + w2 = 1, 0 ≤ w2 ≤ 1,
2 2
Con (0, 1) como unico punto admisible con costo asociado 1/2, y

1 2
Minimizar (y + 3yw1 + 3w12 )
6
sujeto a
y w1 1 y
+ + w2 = , w1 + w2 + = 1, 0 ≤ w2 ≤ 1,
6 2 2 2
Con y ≥ 0. Usando las dos restricciones lineales obtenemos w1 = 1 − 2y/3,
w2 = y/6, u la condición 0 ≤ w2 ≤ 1 lleva a 0 ≤ y ≤ 6. Colocando esto junto
y haciendo las sustituciones apropiadas, estamos interesados en encontrar el
mı́nimo de la parabola
1 y2
 
−y+3
6 3
en el intervalo 0 ≤ y ≤ 6. Este mı́nimo se alcanza en y = 3/2 con costo 3/8 y
w1 = 0, w2 = 1/4. Desde que este costo óptimo es mas pequeño que el encontrado
en el subproblema anterior, concluimos que la solución óptima buscada es

3x2 + 1
u(x) =
4

5.7. Problemas variacionales de diferente orden


En algunos casos pdemos estar interesados en problemas variacionales donde
aparece la segunda derivada (o derivadas de orden superior) o donde ninguna
derivada esta presente. El orden mas alto de las derivadas presentes en un prob-
lema variacional es el orden del problema. Hasta ahora, nos hemos concentrado
en problemas de primer orden. Estos son los mas comunes por un amplio margen.
Pero nos gustaria mencionar algunas cosas acerca de los problemas variacionales
de orden cero y dos.
Los problemas variacionales de orden cero, i.e, aquellos en los que no apare-
cen derivadas en el funcional de costo, estan incluidos en nuestra discución
136CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

previa, porque al fin y al cabo estos son un caso especial de los problemas de
primer orden donde no hay dependencia en las primeras derivadas. En estos
casos la ecuación E-L no es una ecuación diferencial, sino una ecuación alge-
braica. Resolver esta ecuación nos dará la solución óptima despues de ajustar
las constantes con los valores en los puntos extremos. Un ejemplo aclarara lo
que decimos.

Ejemplo 5.22 Un contenedor cilindrico rota alrededor de su eje a una velocidad


constante ω0 (Figura 5.7). Nos gustaria determinar el perfil adoptado por cierto
fluido en su interior, asumiendo que la forma es el resultado de un proceso de
minimización de la energı́a potencial.
Especificamente, y debido a la simetria radial, si

z(r), 0≤r≤R

describe un perfil dado, la energia potencial asociado con el esta dada por la
integral
Z R
U (z) = πρ[gr(z(r)2 − 2Hz(r)) − ω02 r3 z(r)]dr,
0

donde g, ρ y H son constantes. Obviamente, el perfil z(r) debe respetar la re-


stricción de volumen Z H
V = 2π rz(r)dr
0
para una constante fija V . En resumen buscamos
Z H
Minimizar [gr(z(r)2 − 2Hz(r)) − w0 r3 z(r)]dr
0

sujeto a
Z H
V = 2π rz(r)dr.
0

Note que la derivada z 0 (r) no aparece en el funcional de costo.


Si introduciomos un multiplicador λ para tener en cuenta la restricción de
volumen, tenemos que escribir la ecuación E-L para la función

F (x, u) = [g(u2 − 2Hu)r − ω − 02 r3 u] + λru.

Esto es
∂F
0= (r, z(r)),
∂u
i.e,
g(2z(r) − 2H)r − ω02 r3 + λr = 0.
Resolviendo para z(r), obtenemos

ω02 2 λ
z(r) = r +H − .
2g 2g
5.7. PROBLEMAS VARIACIONALES DE DIFERENTE ORDEN 137

A través de la restricción de volumen determinamos la constante


λ
H−
2g
De hecho tenemos
λ V w02 2
H− = − R ,
2g πR2 4g
y el perfil óptimo es
ω2 R2
 
V
z(r) = 0 2
r − +
2g 2 πR2
note que esto es una parabola rotada alrededor del eje del cilindro.

Los problemas de segundo orden son mas elaborados, como uno podria an-
ticipar. La estrategia para encontrar condiciondes de optimalidad en la forma
de ecuaciondes E-L es sin embargo, similar a la de los problemas de primer
orden. El ecuación E-L sera una ecuación diferencial de cuarto orden, la cual
sera complementada con condiciones de fontera apropiadas. Le dejamos al lector
(aunque incluimos en la discución mas adelante) justificar el siguiente hecho.
Teorema 5.23 Si el integrando para el problema de segundo orden es

F (x, u, u0 , u00 ).

entonces la ecuación E-L es


d2 ∂F d ∂F ∂F
2 00
− 0
+ =0
dx ∂u dx ∂u ∂u
Las condiciones en los puntos extremos pueden incluir valores de u y/o u0 .
Tambien tenemos que tener en cuenta la transversalidad o condiciones naturales
de frontera.
Muchos problemas relacionados con el doblamiento o torcimiento de barras
elasticas delgadas estan formulados como problemas variacionales de segundo
orden, la causa de esto es que las energias dependen en las curvaturas (segundas
derivadas) de los perfiles adoptados. A continuación un ejemplo elemental.

Ejemplo 5.24 Una barra delgada y elastica es doblada como se muestra en la


figura 5.8. Si
u(x), x ∈ (0, L).
describe la linea central de la barra, la energia potencial acumulada en tal estado
esta dada por la integral
Z L
u00 (x)2
P (u) = 0 2 5/2
dx
0 (1 + u (x) )

donde k > 0 es una constante conocida. Las condiciones en los puntos extremos
son
u(0 = u0 (0) = 0, u(L) = L1
138CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

Dado que hemos impuesto tres condiciones en los puntos extremos, necesi-
tamos otra dado que la ecuación E-L tendra orden 4. Esta condicion es una
condición natural de frontera en el punto derecho L. Dado que la condicion de
frontera que falta es para u0 (L), la condición de transversalidad que necesitamos
es el factor con u0 (L) cuando integramos por partes analizando la función
Z L
g(t) = F (x, u(x) + tϕ(x), u0 (x) + tϕ0 (x), u00 (x) + tϕ00 (x))dx,
0

y exigiendo que
Z L  
0 ∂F ∂F 0 ∂F 00
0 = g (x) = ϕ+ ϕ + ϕ dx
0 ∂u ∂u0 ∂u00
Integrando dos veces por partes y teniendo en cuenta las otras condiciones en
los puntos extremos obtenemos
Z L  2 
d ∂F d ∂F ∂F ∂F
0= ϕ 2 ∂u00
− 0
+ dx + ϕ0 (L) 00 (L, u(L), u0 (L), u00 (L)).
0 dx dx ∂u ∂u ∂u
Esto nos da información acerca de la ecuación E-L, y ademas nos dice que la
condición natural que estamos buscando es
∂F
(L, L1 , u0 (L), u00 (L)) = 0.
∂u00
En nuestro ejemplo particular esta condición es
u00 (L) = 0
Despues de escribir cuidadosamente E-L, debemos resolver el problema
d2 2u00 d 5(u00 )2 u0
+ = 0,
dx2 (1 + u02 )5/2 dx (1 + u02 )7/2
u(0) = u0 (0) = 0, u(L) = L1 , u00 (L) = 0.
Esta ecuación es imposible de resolver a mano. Una aproximación razonable
sera indicar que el perfil esperado tendra una derivada pequeña u0 , asi que pode-
mos ignorar los terminos que incluyan u0 . Esta simplificación, junto con una
integración nos llevan a
5
u000 + (u00 )2 u0 = constante,
2
y es mas
u000 = constante
Esto junto con las cuatro condiciones de frontera implica que
L1 3 3L1 2
u(x) = − x + x
2L3 2L2
nos da una aproximación razonable del perfil que toma la barra
5.8. PROGRAMACIÓN DINAMICA: LA ECUACIÓN DE BELLMAN 139

5.8. Programación Dinamica: La ecuación de Bell-


man
En varia situaciones practica de interes, se desea mover un sistema sucesi-
vamente a traves de un numero de diferentes pasos para completar un proceso
completo y llegar a un estado deseado. Cada una de estas acciones tiene un cos-
to asociado. Dado un objetivo especifico que se desea alcanzar dado un estado
inicial, nos gustaria determinar la estategia global óptima que tiene el menor
costo asociado.
Sea t una variable que indica las etapas sucesivas en las cuales se debe tomar
una desición acerca de como dirigir el sistema

t = ti , i = 0, 1, . . . , n;

sea x la variable que describe el estado del sistema. En cada paso i, nos gustaria
tener
x ∈ Ai
si Ai es el conjunto (finito) de estados factibles cuanto t = ti . El costo asociado
con pasar de x ∈ Ai a y ∈ Ai+1 esta dado por

c(i, x, y)

dado un estado inicial (t0 , x0 ), estamos interesados en la tarea de determinar


la estrategia óptima para alcanzar el esto final deseado (tn , xn ) con el menor
costo. Esta es una situación tı́pica de programación dinamica.
Asuma que para 0 < j < n conocemos el camino óptimo que comienza en
(t0 , x0 ) y va por (tj , x) para cada x ∈ Aj . Si

S(tj , x)

es el costo asociado con tal estrategia óptima terminando en (tj , x). ¿Cómo
podemos encontrar la solución óptima comenzando en (t0 , x0 ) y terminano en
(tj+1 , y) para cualquier y ∈ Aj+1 dada? No es dificil convercernos que debemos
resolver el problema
mı́n [S(tj , x) + c(j, x, y)]
x∈Aj

Esta es el principio fundamental o propiedad de la programación dinamica, y a


traves de el podemos encontrar la estrategia óptima desde (t0 , x0 ) a (tn , xn ) de
la manera mas racional

Proposición 5.25 (Propiedad fundamental de la programación dinamica) Si


S(tj , x) denota el costo óptimo desde (t0 , x0 ) a (t, j, x), entonces debemos tener

S(tj+1 , y) = mı́n [S(tj , x) + c(j, x, y)].


x∈Aj

A continuación una situación simplificada.


140CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

Ejemplo 5.26 (El viajero) Un pasajero quiere ir desde la ciudad A a la ciudad


H por el camino mas corto de acuerdo al mapa en la figura 5.9, donde los
numeros indican distancias entre las correspondientes ciudades.
Evidentemente podemos hacer un conteo exhaustivo de todas las posibilidades
y decidir cúal es la mejor. En esta situación simplificada esto puede no ser una
mala idea. Sin embargo, nos gustaria ilustrar la propiedad fundamental de la pro-
gramación dinamica en este ejemplo. De acuerdo a la proposición 5.25, debemos
proceder sucesivamente determinando S(tj , x) para cada x ∈ Aj para terminar
con S(tn , xn ). En el ejemplo propuesto, tenemos cuatro estados t0 , t1 , t2 , t3 , t4
con conjuntos asociados de estados factibles

A0 = {A}, A1 = {B, C, D}, A2 = {E, F, G}, A3 = {H}.

Para cada ciudad en A1 hay un unico camino desde A, asi que este debe ser
óptimo y
S(t1 , B) = 7, S(t1 , C) = 4, S(t1 , D) = 1.
Para cada ciudad en A2 determinamos el costo óptimo basados en la propiedad
fundamental de programación dinamica,

S(tj+1 , y) = mı́n [S(tj , x) + c(j, x, y)].


x∈Aj

Es nuestro ejemplo concreto estamos buscando el mı́nimo de

7 + 4, 4 + 4, 1 + 8,
7 + 6, 4 + 5, 1 + 4,
7 + 2, 4 + 7, 1 + 5,

El ultimo paso nos lleva al camino mas corto deseado. Nos gustaria encontrar
el mı́nimo de
mı́n{8 + 3, 5 + 6, 6 + 2} = 8.
Por lo tanto, la distancia mas corta es 8 y corresponde a la ruta A − D − G − H.
Notese que cuando se usa la propiedad fundamental de programación dinamica
siempre tenemos que operar con las sumas de dps números, mientras que un
conteo directo exhaustivo requeriria (en esta situación simplificada) trabajar con
las sumas de tres números. No es dificil inferir la importancia de este hecho para
problemas mas complicados,

Ejemplo 5.27 Otro ejemplo tı́pico en programacion dinamica es aquel de una


compañia que puede producir tres tipos de productos de la leche: queso, mante-
quilla y yogur. El beneficio de estos productos usando 1, 2, 3, o 4 unidades de
leche esta dada en la tabla 5.10.
¿Cúal es el máximo beneficio que puede ser obtenido con 4 unidades de leche?
De nuevo, en esta situación simplificada, no es dificil encontrar la solución me-
diante un analisis exhaustivo de todas las posiblidades. El patron en el contexto
5.8. PROGRAMACIÓN DINAMICA: LA ECUACIÓN DE BELLMAN 141

de programación dinamica es como sigue: Identificamos cada uno de los produc-


tos con los valores de la variable t, t0 , t1 y t2 . En conjunto de estados posibles en
cada paso será {0, 1, 2, 3, 4}, lo que quiere decur qye podemos asignar cada uno
de estos números de unidades de leche a cada uno de los tres productos, mien-
tras no exedamos las 4 unidades posibles. Usando los datos en la tabla 5.10,
obtenemos los resultados de la tabla 5.11.
El máximo beneficio es 28, y corresponde a 3 unidades de leche para queso
y una unidad para yogur.

El principio basico de programación dinamica aplicado al caso continuo mps


da otra perspectiva en los problemas variacionales en la cual nos enfocamos
en los valores óptimos en ves de las soluciones óptimas. Definimos la ”función
valor”’poniendo
(Z )
T
0
S(t, x) = mı́n F (τ, u(τ ), u (τ ))dτ : u(t) = x, u(T ) = B ,
u t

donde T y B son datos fijos. Entonces S(t, x) nos da el costo óptimo asociado con
el problema comenzando en (t, x) y terminando en (T, B). En la aproximación
variacional inistimos en caminos óptimos o soluciones óptimas, y no tanto en
los valores óptimos
La propiedad basica de esta función valor S(t, x) es precisamente el principio
fundamental de programación dinamica, ya mencionado para el caso discreto,
el cual en ete contexto se puede escribir como
( (Z 0 ) )
t
0 0 0
mı́n mı́n F (τ, u(τ ), u (τ ))dτ : u(t) = x, u(t ) = z + S(t , z) ,
x u t

donde t < t0 < T (vease figura 5.12)


Esta condición puede ser reorganizada como sigue:
( ( Z t0 )
0
)
1 S(t , z) − S(t, x)
0 = mı́n mı́n 0 F (τ, u(τ ), u0 (τ ))dτ : u(t) = x, u(t0 ) = z + .
z u t −t t t0 − t

Si hacemos que z = x + t(t − t0 ), el mı́nimo de z puede ser transformado en un


mı́nimo en y, y
( ( Z t0 )
1 0 0 0
0 = mı́n mı́n F (τ, u(τ ), u (τ ))dτ : u(t) = x, u(t ) = x + y(t − t)
y u t − t0 t
S(t0 , x + y(t0 − t)) − S(t, x)

+ .
t − t0
¿Qué pase si dejamos que t0 & t? Para cada función u tal que u(t) = x y
u(t0 ) = x + y(t0 − t), por el teorema fundamental del cálculo tenemos
Z t0
1
F (τ, u(τ ), u0 (τ ))dτ → F (t, x, y),
t0 − t t
142CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

mientras que si asumimos que que S es diferenciable, entonces por la regla de


la cadena,

S(t0 , x + y(t0 − t)) − S(t, x) ∂S ∂S


→ (t, x) + y (t, x).
t0 − t ∂t ∂x

Concluimos que
 
∂S ∂S
0 = mı́n F (t, x, y) + (t, x) + y (t, x) ,
y ∂t ∂x
o  
∂S ∂S
− (t, x) = mı́n F (t, x, y) + y (t, x)
∂t y ∂x
.
Esta es la ecuación de Bellman de programación dinamica. Hemos inclui-
do esta derivación informal de esta porque seguiremos un camino similar para
establecer el principio del máximo de Pontryagin para problemas de control
óptimo en el siguiente capı́tulo.
Esta derivación puede llevar, sin mucha dificultad, a las ecuaciones E-L para
soluciónes óptimas de problemas variacionales. Pero como ya mencionamos, esta
sera nuestra estrategia principal para condiciones necesaria para la optimalidad
no isistimos en esto aquı́.

Ejemplo 5.28 En algunas simplificaciones simples, los calculos para obtener


la ecuación de Bellman se pueden llevar a cabo de manera explicita. Suponga
que F (t, λ, ξ) = ξ 2 . Dado que esta función es estrictamente convexa y depende
solamente de la derivada, sabemos que la solución óptima u que satisface u(t) =
x, u(T ) = B es la función lineal con pendiente (B − x)/(T − t). Por lo tanto el
valor de la función es
2
(B − x)2

B−x
S(t, x) = (T − t) = .
T −t T −t

Por otro lado para toda constante α,

α2
mı́n(y 2 + yα) = − ,
y 4

asi que la ecuación de Bellman es


 2
∂S ∂S
4 = .
∂t ∂x

Es un ejercicio sencillo confirmas que la forma explicita de S(t, x) satisface esta


ecuación diferencial parcial.
5.9. IDEAS BASICAS EN LA APROXIMACIÓN NÚMERICA 143

5.9. Ideas basicas en la aproximación númerica


Es casi evidente que las soluciones óptimas para muchos problemas no pueden
ser resueltas analı́ticamente. Las tecnicas de aproximación son por lo tanto una
herramienta indispensable para resolver muchos problemas variacionales. La
idea basica de la aproximación numerica de los problemas continuos de opti-
mización es ”discretización”.
Dado un problema variacional, debemos construir una versión discretiza-
da del mismo con cierto nivel de presición que esta relacionado con la finura
de la discretación que hemos utilizado. Tal versión discretizada sera ahora un
problema de programación al cual le podemos aplicar todos los algoritmos com-
putacionales descritos en el capı́tulo 4. Desde este punto de visto los algoritmos
númericos son el puente entre los problemas de optimización de dimensión finita
e infinita.
Otra posibilidad interesante para aproximar soluciones óptmas a problemas
variacionales es explotar las ecuaciones E-L. Pero ya que este es un libro de
optimización, y un este acercamiento nos llevara a aproximar ecuaciones difer-
enciales, nos apegaremos a los conceptos y tecnicas genuinos de optimización. Es
por lo tanto importante siempre tener en mente cualquier información valiosa
acerca del problema cuya solución tratamos de aproximar.
Suponga que tenemos un tı́pico problema variacional
Z b
Minimizar I(u) = F (x, u(x), u0 (x))dx
a

con u(a) = A, u(b) = B. Usualmente, las discretizaciones de las integrales


se hacen dividiendo el intervalo [a, b] en un cierto numero de subintervalos,
n + 1, y suponga por ahora que los funciones factibles para el nuevo problema
discretizado son afines a trozos, i.e, son afines en cada subintervalo
 
(b − a) (b − a)
a+j , a + (j + 1) (5.1)
(n + 1) (n + 1)

Note que tales funciones estan unicamente determinadas por sus valores en los
nodos
(b − a)
a+j , j = 1, . . . , n
(n + 1)
y por lo tanto los vectores factibles para este nuevo problema de optimización
corresponderan a estos valores. Vemos que este proceso cambia el problema
original infinito dimensional, a un problema en dimensión finita. La idea es que
haciendo el numero de subintervalos (n+1) mas grande, las soluciones óptimas
para estos problemas discretizados se pareceran cada vez mas y aproximaran con
mayor presición bajo condiciones que ignoraremos aquı́, a la verdadera solución
óptima. Sean
X = (xj )1≤j≤n (5.2)
144CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

los valores nodales de las funciones factibles. De esta manera la función u que
consideraremos para I(u) será

j  
X (xk+1 − xk b−a
u(x) = A + + (xj+1 − xj ) x − a − k
n+1 n+1
k=1

si  
b−a b−a
x∈ a+k , a + (k + 1)
n+1 n+1
Esta es la función continua afin a trozos que toma los valores xj en los puntos
nodales a+j(b−a)/(n+1). Hay una forma útil de expresar esta función como una
combinación lineal de ciertas ”funciones basicas”. Expresamente, si definimos

ψj,n (x), j = 0, 1, . . . , n, n + 1

cono la función afin a trozos cuyo valor en los nodos xi para i 6= j es cero,
y precisamente en xj es la unidad (vease figura 5.13), entonce esclaro que la
funcion u con valores nodales xj se pude escribir como
X
u(x) = xj ψj,n (x) (5.3)
j

Para la derivada tenemos


X
u0 (x) = 0
xj ψj,n (x).
j

De esta forma es inmediato como escribir un problema de optimización ‘para


el vector X en 5.2 calculando I(u) para u como en 5.3. Esta sera la versión
discreta y aproximada para nuestro problema variacional. Especificamente
Z b
T (X) = I(u) = F (x, u(x), u0 (x))dx
a
 
Z b X X
0
= F x, xj ψj,n (x), xj ψj,n (x) dx.
a j j

Si partimos esta integral en una suma sobre los subintervalos 5.1, y notamos
que cada ψj,n es lineal, de tal manera que su derivada es constante en ellos,
reuniendo todas las contribuciones de un intervalo en particular podemos escribir
de manera mas explicita
 
n Z
X a+(j+1)(b−a)/(n+1) X
T (X) = F x, xj ψj,n (x), (n + 1)(xj+1 − xj ) dx.
j=0 a+j(b−a)/(n+1) j
5.9. IDEAS BASICAS EN LA APROXIMACIÓN NÚMERICA 145

Es mas, podemos usar una cuadratura simple para aproximar estas integrales.
La forma final usando la regla trapezoidal es
n   
X 1 b−a
T (X) = F a + (j + 1) , xj+1 , (n + 1)(xj+1 − xj )
j=0
2(n + 1) n+1
 
b−a
+F a + j , xj , (n + 1)(xj+1 − xj ) ,
n+1
donde x0 = A, xn+1 = B. En terminos del vector X de valores nodales, nos
enfrentamos con problema de programación (no lineal, sin restricciones). Re-
solviendolo, obtenemos una solución aproximada al problema inicial continuo
de optimización. La forma del funcional T (x) = I(u) in terminos de X depende
de cada situación particular
Ejemplo 5.29 Para la superficie mı́nima de revolución tomamos
Z 1 p
I(u) = u(x) 1 + u0 (x)2 dx,
0
u(0) = 1, u(1) = 1.

La función objetivo resultante T (X) en terminos de los valores nodales como se


indico en la discución anterior es
n q
X xj+1 + xj
T (X) = 1 + ((n + 1)(xj+1 − xj ))2 .
j=0
2(n + 1)

Teniendo en cuenta que x0 = 1, xn+1 = 1, vemos que este es el funcional


que tenemos que minimizar con ayuda de los algoritmos del capı́tulo 4, para
varios valores del número de subintervalos n. Haciendo esto, encontramos que
estos concuerdan bastante bien con el arco de una catenaria, que es la solución
óptima del problema continuo de optimización.(Figura 5.14)
De manera alternativa podemos considerar la discretización considerando como
variables independientes las pendientes en cada subintervalo. Esto conduce a
una forma mas simple del funciónal objetivo, pero tendriamos que forzar una
restricción (lineal), dado que las pendientes en los diferentes subintervalos deben
ser ral que el valor de u en 1 esta dado, y esto impone una restricción en el
conjunto de posibles restricciones. En vez de resolver de nuevo el mismo ejemplo
en este formato con una restricción integral preferimos comenzar otro ejemplo.
Ejemplo 5.30 El problema para el diseño del canal es
Z 1p
Minimizar 1 + u0 (x)2 dx
0

sujeto a Z 1
1
u(0) = u(1) = 0, = u(x)dx.
3 0
146CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

Como se hizo con el ejemplo anterior, dividimos el intervalo [0, 1] en n + 1


subintervalos iguales con nodos igualmente espaciados.
j
, j = 0, 1, . . . , n + 1,
n+1
terminamos con un funcional de costo
n
1 X
q
T (X) = 1 + (n + 1)2 (xj+1 − xj )2 .
n + 1 j=0

Las restricciones son x0 = xn+1 = 0 y


n
1 X xj+1 + xj
= .
3 j=0 2(n + 1)

Esta ultima restricción se puede escribir de la forma


n
n+1 X
= xj ,
3 j=1

donde hemos tenido en cuenta las restricciones de frontera x0 = xn+1 = 0. En


resumen. nos gustaria encontrar la solución óptima de
n q
X
Minimizar 1 + (n + 1)2 (xj+1 − xj )2
j=0

sujeto a
n
n+1 X
x0 = xn+1 = 0, = xj ,
3 j=1

un problema de programación no lineal con restricciones lineales. La figura 5.15


muestra la aproximación resultante para un valor particular de n. Note que
hemos ignorado un multiplicador positivo del funcional.

5.10. Ejercicios
1. Determine las geodesicas en una esfera. Intente adivinar cuales pueden ser
las geodesicas, y argumente que estas son en realidad aquellas que dan el
valor mı́nimo del funcional apropiado.
2. Investigue el ejercicio 9 del capı́tulo 1. intentando encontrar caminos ópti-
mos.
3. Escriba la ecuacion de E-L para los siguientes funcionales:
Z Z Z
 0 2
(u ) + eu dx, I(u) = uu0 dx, I(u) = x2 (u0 )2 dx.

I(u) =
5.10. EJERCICIOS 147

4. Encuentre la solución óptima al problema


Z 1 
0 2 2 t 2
mı́n [x (t) + 2x(t) ]e dx : x(0) = 0, x(1) = e − e
0

y el valor númerico de este mı́nimo.


5. Resuelva el siguiente problema variacional
Z 1
Minimizar I(u) = (u0 (x)2 + u(x)u0 (x) + u(x)2 )dx
0

entre todas aquellas que satisfagan u(0) = 0, u(1) = 1


6. Resuelva el problema de minimizar el funcional
Z 1
I(u) = u0 (x)2 , u(0) = a0 , u(1) = a1 ,
0

entre todas aquellas funciones que satisfagan


Z 1
0= u(x) cos(bi x)dx, i = 1, 2, . . . , N.
0

donde a0 , a1 y bi son parametros fijos.


7. Encuentre la función u(x) que minimiza
Z 1
I(u) = (1 + u00 (x)2 )dx
0

bajo las restricciones u(0) = 0, u(1) = 1, u0 (0) = 1, u0 (1) = 1.


8. Resuelva el problema anterior con el funcional
Z π/2
I(u) = (u00 (x)2 − u(x)2 + x2 )dx,
0

sujeto a
u(0) = 1, u(π/2) = 0, u0 (0) = 0, u0 (π/2) = 1.

9. El principio de máxima entropia selecciona la distribución de probabilidad


sobre el semi intervalo (0, ∞) que maximice la integral
Z ∞
H=− u(t) log u(t)dt.
0

Si imponemos las restricciones


Z ∞ Z ∞
u(t)dt = 1, tu(t)dt = 1/a,
0 0

compruebe que la función de distribucion mas probable es u(t) = ae−at


148CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA

10. Considere la función


(Z )
log 2
0 2 2
f (y) = mı́n [x (t) + x(t) ]dx : x(0) = 1, x(log 2) = y .
0

Encuentre una expresión explicita para f (y) y usela para determinar la


solución del problema
(Z )
log 2
0 2 2
mı́n [x (t) + x(t) ]dx : x(0) = 1 ,
0

Resuelva directamente este último problema y compare sus resultados.


11. Determine el mı́nimo valor de las integrales
Z log 2
 0
(x (t) − 1)2 + x(t)2 dx

0

entre todas las funciones x(t).


12. Resuelva el problema de la cuerda de sección transversal variable del
capı́tulo 1
a) Muestre que con el cambio
Z L
b(x) = W + ρg a(s)ds,
x

el problema puede ser reformulado como


 ρg  Z L b(x)
Minimizar − 0
dx
E 0 b (x)

sujeto a
b(0) = W + ρgV, b(L) = W
b) resuelva el problema en esta forma, e interprete el resultado final en
terminos de la formulación inicial.
13. En ocasiones, la formulación exacta de un problema variacional es imposi-
ble de resolver, y se deben hacer aproximaciones razonables. El problema
del solido moviendose en un fluido descrito en el capı́tulo 1 es un ejemplo.
Haga simplificaciones razonables como en el ejemplo 5.24 para obtener
una buena aproximación al perfil del solido en movimiento.
14. Estudie el problema
Z 1
1
Minimizar u0 (x)2 dx
2 0

sujeto a Z 1 Z 1
1u(x)2 dx ≤ 2, u(x)dx = 1.
0 0
5.10. EJERCICIOS 149

15. (En problema de obstaculo elemental) Trate de entender el siguiente prob-


lema variacional Z 1
Minimizar u0 (x)2 dx
0
sujeto a
u(0) = u(1) = 0, u(x) ≥ u0 (x),
donde u0 es una función dada de tal manera que u0 (0) y u0 (1) son nega-
tivas pero u0 es positiva en algun punto en el intervalo (0, 1) cúando
1 1 1
u0 (x) = − − x2 + x
8 2 2
y cúando
1 1
u0 (x) = sin(10x) − − 4x2 + 4x.
4 2
16. El ejercicio 12 del capı́tulo 1 se puede entender y resolver como un proble-
ma variacional bajo restricciones puntuales. Introduzca un multiplicador
(una función) e intente determinar las soluciones óptimas.
17. Encuentre una solución aproximada al problema de braquioscrona
Z 1p
1 + u0 (x)2
I(u) = √ dx,
0 x
u(0) = 0, u(1) = −1,

como se describe en la sección 5.9. Haga la misma cosa para el problema


del cable colgante
Z 1 p
Minimizar u(x) 1 + u0 (x)2 dx
0

sujeto a Z 1
3 p
u(0) = u(1) = 0, = 1 + u0 (x)2 dx.
2 0
150CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA
Capı́tulo 6

Control Óptimo

6.1. Introducción
El control óptimo es un tema muy importante en optimización, con muchas
aplicaciones en diferentes áreas, especialmente en ingenierı́a. En este último
capı́tulo, simplemente estudiaremos las ideas básicas para abordar estos proble-
mas. En particular, nos enfocaremos en el principio de Pontryagin del máximo,
tratando de insistir en su importancia a traves de varios ejemplos.
El formato usual de un problema de control óptimo es el siguiente. El estado
de un cierto sistema esta descrito por un número de parametros.

x = (x1 , x2 , . . . , xn ),

el cual evoluciona de acuerdo a la ecuación de estado

x0 (t) = f (t, x(t), u(t)),

donde
u = (u1 , u2 , . . . , um )
representa el control ejercido en el sistema (con el objetivo en mente de con-
trolarlo). Este vector de control normalmente deberı́a satisfacer varios tipos
de restricciones dependiendo la naturaleza del problema. Consideraremos sola-
mente la restricción u(t) ∈ K ⊂ Rm para todos los t, donde K está dado a prori.
La ecuación de estado esta complementada con condiciones iniciales y/o finales.

x(0) = x0 x(T ) = xT ,

donde T es el horizonte de tiempo que estamos considerando. Tambien debemos


tener un funcional de costo que mida qué tan bueno es un control dado u. La
forma de este funcional objetivo es
Z T
I(x, u) = F (t, x(t), u(t))dt,
0

151
152 CAPÍTULO 6. CONTROL ÓPTIMO

donde
F : (0, T ) × Rn × Rm → R
es un integrando conocido asociado con el costo que deseamos medir. Una pareja
(x, u) se dice que es admisible o factible si cumple
1. Las restricciones en el control: u(t) ∈ K para todos los t ∈ (0, T ).
2. La ley de estado: x0 (t) = f (t, x(t), u(t)) para todos los t ∈ (0, T ).
3. La condiciones en los puntos extremos: x(0) = x0 , x(T ) = xT .
Como se menciono anteriormente, las condiciones en los puntos extremos pueden
variar de tener ninguna condicion en los puntos a tenerlas en los dos. El problema
de control óptimo consiste en encontrar (determinando o aproximando) un par
admisible (X, U ) tal que
I(X, U ) ≤ I(x, u)
para todos los otros pares factibles (x, u).
Note que este tipo de problemas incluye como un caso muy particular, los
problemas variacionales en los cuales tratamos de minimizar
Z T
I(x) = F (t, x(t), x0 (t))dt
0

entre todos los campos x(t) con x(0) = x0 , x(T ) = xT . De hecho este problema
es equivalente a

x0 (t) = u(t), x(0) = x0 , x(T ) = xT ,


Z T
I(x, u) = F (t, x(t), u(t))dt.
0

En este capı́tulo nos enfocaremos esencialmente en las condiciones necesarias


de optimalidad. Estamos buscando condiciones, en forma diferencial, que las
soluciones óptimas de los problemas de control deben satisfacer. Daremos por
sentado que nuestros problemas siempre tienen la regularidad necesaria para
escribir tales condiciones de optimalidad. Todo un campo fundamental (opti-
mización no regular) estudia todas aquellas situaciones en las cuales la regular-
idad no puede asumirse, y de hecho, es uno de los grandes temas para entender.
El Análisis no regular se deja para textos mas avanzados. Vease [9].

6.2. Multiplicadores y el Hamiltoniano


Primero trataremos el caso en el cual el conjunto K es todo Rn , asi que no
hay restricciones de cúales valores pueden tomar los controles admisibles. Por
lo tanto estamos interesados en minimizar
Z T
I(x, u) = F (t, x(t), u(t))dt
0
6.2. MULTIPLICADORES Y EL HAMILTONIANO 153

entre todos los pares (x, u) tales que

x0 (t) = f (t, x(t), u(t))

junto con las condiciones apropiadas en los puntos extremos. Como ya hemos
notado, la ecuación de estado puede ser considerada como una restricción pun-
tual que puede ser tratada introducuendo un multiplicador o coestado p(t). Por
lo tanto, consideremos el funcional aumentado
Z t
I ∗ (x, u, p, x0 ) = [F (t, x(t), u(t)) + p(t)(f (t, x(t), u(t)) − x0 (t))]dt.
0

De nuestra experiencia con restricciones y multiplicadores, parece plausible que


las soluciones óptimas para nuestro problema inicial de contol óptimo debe ser
una solución de la ecuación E-L para I ∗ visto como una función de las variables
(x, u, p, x0 ). Dado que el principio de Pontryagin del máximo es un enunciado
mas general que este y sera tratado mas adelante, no insistitemos en la validad
de esta afirmación en este punto. Si escribimos

G(t, u, p, x, u0 , p0 , x0 ) = F (t, x, u) + p(f (t, x, u) − x0 ),

entonces el sistema E-L puede ser escrito como


     
d ∂G ∂G d ∂G ∂G d ∂G ∂G
= , = , = ,
dx ∂x0 ∂x dt ∂u0 ∂u dt ∂p0 ∂p
Esto es,
∂F ∂f
0= (t, x, u) + p (t, x, u) + p0 ,
∂x ∂x
∂F ∂f
0= (x, u, t) + p (t, x, u),
∂u ∂u
0 = x0 − f (x, u, t).

Definiendo el Hamiltoniano del problema como H = F + pf , estas ecuaciones


se puden escribir como
∂H ∂H
p0 = − , = 0, x0 = f (t, x, u).
∂x ∂u
Debemos completar este sistema con las condiciones en los extremos. Note qie
solo dos derivadad (p0 y x0 ) aparecen, asi que para determinar la solución necesi-
tamos dos condiciones. Estas son las restricciones en los extremos para el estado
x completadas con las condiciones de transversalidad para el multiplicador p de
acierdo con la siguiente regla:
Afirmación de transversalidad 6.1 Si en un punto extremos dado (inicial
o final) tenemos una condición en el estado, no imponemos la condición de
transversalidad correspondiente, pero si el estado es libre, entonces la condición
de transversalidad p = 0 en el punto extremo dado debe tomarse.
154 CAPÍTULO 6. CONTROL ÓPTIMO

Como ya hemos argumentado en otras situaciones, las soluciones óptimas deben


buscarse entre las soluciones de estas condiciones de optimalidad. Veamos varios
ejemplos.
Ejemplo 6.2 Si
Z 1
I(x, u) = u(t)2 dt, x0 (t) = u(t) + ax(t),
0

donde a ∈ R es una constante, nos gustaria determinar el control óptimo bajo


la condición inicial x(0) = 1. En este ejemplo el Hamiltoniano es
H = u2 + p(u + ax),
y la hip‘ótesis que garantizan que las soluciones óptimas son precisamente las
soluciones a las condiciones de optimalidad estan satisfechas. Esto sera justifi-
cado despues.
Manipulando estas condiciones de optimalidad llegamos a
u = −p/2, p0 = −ap, x0 = −p/2 + ax,
junto con x(0) = 1, p(1) = 0. Esta ultima condición es la condición de transver-
salidad en t = 1, dado que no tenemos la condición final para el estado (volver-
emos a este punto despues). Resolviendo para p obtenemos
p(t) = 0,
y entonces
x(t) = eat
El control óptimo es entonces u = 0, como podriamos haber anticipado. en
relidad esta situación no tiene mucho interes ya que no hay demanda en el
sistema.
Suponga ahora que nos gustaria x(0) = 1 y x(1) = 0. La estrategia óptima
ya no es u = 0, ya que este control lleva al sistema a x = 1 = ea . Ya que ahora
no tenemos tennemos condicion de transversalidad para p y
p(t) = ce−at
Tomando esta expresión en la ecuación de estado obtenemos
c −at
x(t) = e + deat
4a
Las constantes c y d se deben escoger de tal manera que las condiciones en los
puntos extremos se satisfagan. Esto lleva a un sistema lineal cuya solución es
2aea e−a
c= , d=−
sinh a 2 sinh a
En esta ocasión el control óptimo es
aea(1−t)
u(t) = − .
sinh a
6.2. MULTIPLICADORES Y EL HAMILTONIANO 155

Ejemplo 6.3 El costo es el mismo que en el ejemplo anterior


Z 1
I(x, u) = u(t)2 dt,
0

pero la ecuación de estado es


x00 (t) = u(t)
con condiciones en los extremos
x(0) = x0 (0) = 1, x(1) = 0.
El control u es el acelerador, y el costo es una medida del gasto de combustible.
Primero reducimos la ecuación de segundo orden a una de primer orden con
componentes x1 = x, x2 = x0 , asi
x01 = x2 , x02 = u,
y condiciones en los extremos
x1 (0) = 1, x1 (1) = 0, x2 (0) = 1.
El Hamiltoniano es
H = u2 + p1 x2 + p2 u,
y las ecuaciones de optimalidad junto con las condiciones en los puntos extremos
son
u = −p2 /2
p01= 0, p02 = −p1,
x01 = x2 , x02 = u,
x1 (0) = 1, x1 (1) = 0,
x2 (0) = 1, p2 (1) = 0.
Con esto no es dificil encontrar la solución óptima
u(t) = 6(t − 1)
x1 (t) = t3 − 3t2 + t + 1x2 (t) = 3t2 − 6t + 1
Estas condiciones son necesarias para una solución óptima, pero pueden no ser
suficientes en el sentido que pude haber otro tipo de soluciones que no son ópti-
mas. A esta altura, no sorprendera al lector si aseguramos que la convexidas esta
involucrada en tratar de establecer que las condiciones necesarias de optimali-
dad tambien son suficientes. De hecho, podemos probar el siguiente resultado.
Nos apegamos a la notación inicial para un problema de control óptimo
Z T
I(x, u) = F (t, x(t), u(t))dt,
0
x0 (t) = f (t, x(t), u(t)),
(x(0) = x0 ), (x(T ) = xt ),
156 CAPÍTULO 6. CONTROL ÓPTIMO

Hemos puesto las condiciones en los puntos extremos entre parentesis para in-
dicar que estas pueden o no estar presentes.
Teorema 6.4 Sea f lineal en (x, u) y F convexo en (x, u) para cada t fija.
Entonces todas las soluciones con del sistema de optimalidad con las condiciones
apropiadas en los puntos extremos (incluyendo optimalidad) sera una solución
óptima del problema de control.
Suponga que el par (x, u) satisface todas las condiciones de optimalidad, y sea
(x̃, ũ) cualquier otro par admisible. Mediremos la diferencia
I(x̃, ũ) − I(x, u)
y concluiremos que no puede er negativa. Esto implica que (x, u) es de hecho
óptima.
Debido a las hipótesis de linealidad y convexidad supuestas en el enunciado
del teorema podemos escribir
Z T
I(x̃, ũ) − I(x, u) = [F (t, x̃, ũ) − F (t, x, u)]dt
0
Z T 
∂F ∂F
≥ (t, x, u)(x̃ − x) + (t, x, u)(ũ − u) dt
0 ∂x ∂u
Z T 
∂f ∂f
= −p (t, x, u) − p0 )(x̃ − x) − p (t, x, u)(ũ − u) dt
0 ∂x ∂u
Z T  
∂f ∂f
=− p (x0 − x̃) + (t, x, u)(x̃ − x) + (t, x, u)(ũ − u) dt
0 ∂x ∂u
Z T  
∂f ∂f
=− p f (t, x, u) − f (t, x̃, ũ) + (t, x, u)(x̃ − x) + (t, x, u)(ũ − u) dt
0 ∂x ∂u
=0
Notese como las condiciones en los puntos extremos y la transversalidad se
usan para evaluar las contribuciones de los puntos extremos se anulan en las
integraciones por partes.
En ocasiones, se desea forzar restricciones integrales adicionales.
Ejemplo 6.5 Suponga que un proceso particular esta descrito por una función
x(t) comenzando en x(0) = 1. Nuestro deseo es llevar al sistema a x(T ) = 0 en
el menor tiempo posible, donde el sistema evoluciona de acuerdo a la ley
x0 (t) = ax(t) + u(t),
donde a es una constante dada, y debemos respetar la restricción
Z T
K= u(t)2 dt,
0

para una constante fija K > 0. Es precisamente esta resticción integral la que
hace al problema interesante. porque de lo contrario, T podria ser tan pequeño
6.2. MULTIPLICADORES Y EL HAMILTONIANO 157

como quisieramos. Despues de nuestra experiencia con restricciones integrales


en el capı́tulo anterior, vamos a introducir un multiplicador s ∈ R asociado con
esta restricción, y escribimos

H = 1 + su2 + p(ax + u)

para el Hamiltoniano, donde s se determinara luego. Es mas, note que podemos


escribir  
1 2 p
H=s + u + (ax + u) ,
s s
y reemplasando p por p/s, concluimos que las condiciones de optimalidad son ls
mismas para el Hamiltoniano

H = 1 + u2 + p(ax + u),

pero en este caso no hay constante adicional s. Esta ha sido incorporada de


alguna manera en el co estado p. Las condiciones de optimalidad son

p0 = −ap, 2u + p = 0, x0 = ax + u.

Resolviendo para u y p y reemplazandolas en la ecuación de estado, obtenemos

x0 = ax + ce−at

para cierta constante c. Resolviendo esta última ecuación, llegamos a


c −at
x(t) = deat + e .
2a
Imponemos las tres condiciones
Z T
x(0) = 1, x(T ) = 0, K= u(t)2 dt,
0

y tenemos
c
1=d+ ,
2a
c −aT
0 = deaT + e ,
2a
c2
K= (1 − e−2aT ).
8a
Manipulando estas ecuaciones obtenemos un T minimo,
1  a 
T =− log 1 −
2a 2K
y como control óptimo
u(t) = −2Ke−at ,
158 CAPÍTULO 6. CONTROL ÓPTIMO

y el estado óptimo asociado

4K
x(t) = eat − sinh(at).
a
Mote que la formula para T requiere que a < 2K. Si a = 2K, entonces T = +∞
y el sistema tiendea 0 a medida que t → ∞ pero nunca lo alcanza. Si a > 2K,
el sistema ni siquiera se acerca al estado 0, dado que x(t) tiende a +∞.

Todos los ejemplos que hemos visto hasta ahora cumplen las hipótesis del teo-
rema 6.4, asi que las soluciones que hemos encontrado son de hecho óptimas.

6.3. El principio de Pontryagin


Si deseamos acercarnos a hipótesis mas realistas para problemas de control
óptimo, debemos preocuparns acerca de la posiblidad de tener ciertas restric-
ciones en el tamaño de los controles admisibles. Esto es razonable, dado que a
priori, un sitema dado puede no soportar el efecto de un control de tamaño ar-
bitrario, ya sea porque este lo harı́a colapsar, o porque lo sacaria del regimen en
el cual la ley de estado es valida, o simplemente porque no tenemos los medios
para aplicar un control de tamaño arbitrario. En cualquier caso, debemos con-
siderar una restricción en el tamaño de los controles factibes. Tipicamente, esto
es formulado exigiendo
u(t) ∈ K

donde K es un subconjunto apropiado del espaso en el cual los controles toman


valores. Por lo tanto en esta sección estamos interesados con el problema
Z T
Minimizar F (t, x(t), u(t))dt
p

sujeto a

x0 (t) = f (t, x(t), u(t)),


u(t) ∈ K, x(0) = x0 , (x(T ) = xT ).

Estamos especialmete interesados en entender las condiciones necesarias de op-


timalidad que deben satisfacer las soluciones óptimas.
Si recordamos la discución relativa a la ecuación de Bellman en el capı́tulo
anterior, podemos considerar la siguiente función valor
(Z
T
S(t, x) = mı́n F (τ, y(τ ), u(τ ))dτ : y 0 (τ ) = f (τ, y(τ ), u(τ )),
u t

u(τ ) ∈ K, y(t) = x} .
6.3. EL PRINCIPIO DE PONTRYAGIN 159

La propiedad fundamental que una función valor debe satisfacer para t0 > t es

t0
( (Z
0 = mı́n mı́n F (τ, z(τ ), v(τ ))dτ : z 0 (τ ) = f (τ, z(τ ), v(τ )), v(τ ) ∈ K,
y v t
 
z(t) = x, z(t0 ) = x + y(t0 − t) + S(t0 , x + y(t0 − t))

Esta condicion se puede reescribir como

t0
( ( Z
1
S(t, x) = mı́n mı́n F (τ, z(τ ), v(τ ))dτ : z 0 (τ ) = f (τ, z(τ ), v(τ )), v(τ ) ∈ K,
y v t0 − t t

S(t0 , x + y(t0 − t)) − S(t, x)


 
z(t) = x, z(t0 ) = x + y(t0 − t) + .
t0 − t

Tomando limites cuando t0 & t, concluimos (¿por qué?) que


 
∂S ∂S
0 = mı́n mı́n{F (t, x, v) : y = f (t, x, v)} + (t, x) + y (t, x) ,
y v∈K ∂t ∂x

que puede reorganizarse como


 
∂S ∂S
(t, x) = − mı́n F (t, x, v) + f (t, x, v) (t, x) . (6.1)
∂t v∈K ∂x

La pregunta es ¿qué tipo de informacion nos da esta ecuación acerca del par
óptimo (x(t),u(t))? El hecho que (x(t),u(t)) son óptimas significa que
Z T
S(t, x(t)) = F (τ, x(τ ), u(τ ))dτ, x0 (τ ) = f (τ, x(τ ), u(τ )),
t

para cada tiempo t. Si derivamos con respecto a t y usamos 6.1, podemos escribir

∂S ∂S
−F (t, x(t), u(t)) = (t, x(t)) + x0 (t) (t, x(t))
∂t  ∂x 
∂S
= − mı́n F (t, x(t), v) + f (t, x(t), v) (t, x(t))
v∈K ∂x
∂S
+ f (t, x(t), u(t)) (t, x(t)),
∂x
y por tanto

∂S
F (t, x(t), u(t)) + f (t, x(t), u(t)) (t, x(t))
∂x  
∂S
= mı́n F (t, x(t), v) + f (t, x(t), v) (t, x(t)) ,
v∈K ∂x
160 CAPÍTULO 6. CONTROL ÓPTIMO

por otra parte si definimos p(t, x) = ∂S∂x (t, x), en el par óptimo obtenemos usando
de nuevo
∂S ∂S
(t, x(t)) = x0 (t) (t, x(t)) + F (t, x(t), u(t)),
∂t ∂x
que
d ∂2S ∂2S
p(t, x(t)) = (t, x(t)) + f (t, x(t), u(t)) 2 (t, x(t))
dt ∂x∂t  ∂x 
∂ ∂S
=− F (t, x(t), u(t)) + f (t, x(t), u(t)) (t, x(t))
∂x ∂x
2
∂ S
+ f (t, x(t), u(t)) 2 (t, x(t))
∂x
∂F ∂f
=− (t, x(t), u(t)) − p(t, x(t)) (t, x(t), u(t)).
∂x ∂x
Por medio del Hamiltoniano
H(t, x, u, p) = F (t, x, u) + pf (t, x, u)
y la función p(t) = p(t, x(t)), podemos resumir las conclusiones anteriores en el
siguiente enunciado. Note la relacion entre el multiplicador (co estado) p(t) y la
función valor S(t, x):
∂S
p(t) = p(t, x(t)) = (t, x(t))
∂x
si x(t) es óptima
Teorema 6.6 Principio de Pontryagin: Condiciones Necesarias. Si la pareja
(x(t), u(t)) es óptima para nuestro problema de control original, debe existir
una función p(t) que cumple las siguientes condiciones:
∂H
p0 (t) = − (t, x(t), u(t), p(t)), (p(T ) = 0),
∂x
H(t, x(t), u(t), p(t)) = mı́n H(t, x(t), v, p(t)),
v∈K
x0 (t) = f (t, x(t), u(t)), x(0) = x0 , (x(T ) = xT ).
Note como la segunda condición en el enunciado anterior esta formulada como
un PPNL para v dependiendo en varios parametros. Hemos escrito la condición
de transversalidad y la condición final entre parentesis para enfatizar que una
de las dos, pero no las dos al tiempo deben forzarse. El unico comentario en
este encunciado tiene que ver con la condición de transversalidad P (T ) = 0. Si
tenemos en mente la definición de p(t) como
∂S
p(t) = (t, x(t)),
∂x
la condicion de transversalidad significa que
∂S
(t, x(T )) = 0.
∂x
6.3. EL PRINCIPIO DE PONTRYAGIN 161

Esta restricciñ refleja nada mes que el hecho que si el valor en el punto extremo
derecho x(T ) es libre, la función valor debe alcanzar su mı́nimo cuando toma
el valor del estado óptimo x(T ). En consecuencia la derivada debe anularse.
Si en la formulación original tenemos una restricción fija en el estado final,
x(T ) = xT , entonces esta condición reemplaza transversalidad. Lo mismo aplica
para el tiempo inicial t = 0.
Tambien es interesante señalar que las condiciones en el resultado anterior
son una generalizacion de aquellas en la sección 6.2 dado que si K es todo Rm ,
entonces el mı́nimo del Hamiltoniano con respecto a v se alcanza cuando la
derivada con respecto a v se anula.
Antes de estudiar las condiciones suficientes de optimalidad, veamos varios
ejemplos para examinar el principio de Pontryagin.
Una de las familias mas comunes de problemas de control óptimo es aquella
que estudia como ralizar una tarea en el mı́nimo tiempo posible. En esos casos,
el funcional objetivo a ser minimizado es aquel del tiempo empleado en hacer
la tarea.

Ejemplo 6.7 Imagine para empezar, un objeto movil cuyo movimiento podemos
controlar con su acelerador u, donde ela máxima aceleración posible es b, y el
maximo poder de frenos es −a i.e −a ≤ u ≤ b. De acuerdo a nuestra discución
anterior, K = [−a, b]. Comenzando en reposo y terminando en reposo, nos
gustaria viajar una distancia α en un tiempo mı́nimo. Cúal es la estrategia
óptima para usar el acelerador?. El funcional de costo es
Z
I = T 1dt,
0

bajo las restricciones

x00 (t) = u(t), u ∈ K


x(0) = x0 (0) = 0, x(T ) = α, x0 (T ) = 0.

Si transformamos esta ecuación de segundo orden en un sistema de primer orden


enm la forma estandar por medio del cambio

x1 (t) = x(t), x2 (t) = x0 (t),

obtenemos

x01 = x2 , x02 = u, u ∈ K
x1 (0) = x2 (0) = 0, x1 (T ) = α, x2 (T ) = 0.

El Hamiltoniano del sistema sera

H(t, x, u, p) = 1 + p1 x2 + p2 u,

y las condiciones necesarias de optimalidad de acuerdo con el principio de Pon-


tryagin seran
p01 = 0, p02 = −p1 .
162 CAPÍTULO 6. CONTROL ÓPTIMO

Dado que p1 = −d es una constante, y p2 = dt + c, donde c, d son constantes. Si


tomamos esta informacion a la condición del mı́nimo, obtenemos que el control
óptimo u(t) debe minimizar el HamiltonianoH sobre K. En nuestra situación,

(dt + c)u(t) = mı́n (dt + c)v.


−a≤v≤b

Dado que la expresión (dt + c)v es lineal en v, el mı́nimo anterir se alcanza en


alguno de los extremos del intervalo [−a, b] dependiendo en el signo de (dt + c).
Por lo tanto el control óptimo tendra la forma

−a,
 dt + c > 0
u(t) = b, dt + c < 0

cualquier valor, dt + c = 0.

Debido a la interpretación fisica del problema, tenemos u(t) = b en el inicio,


ya que de lo contrario nuestro vehiculo no se movera, y obviamanete mas ade-
lante tendremos que usar el freno. Note tambien que en forma anterior para el
control óptimo descarta la posibilidad de tener varios cambis entre aceleraciones
positivas y negativas, ya que dt + c, siendo lineal en t puede pasar por cero a lo
mas una vez. En conseciencia en control óptimo tendra la forma
(
b, t ≤ t0 ,
u(t) =
−a, t ≥ t0

El instante t0 debe ser determinado en terminos de a, b y α. De hecho, tendremos


que resolver
x00 (t) = b, x(0) = x0 (0) = 0
con solución
x(t) = bt2 /2.
En un tiempo t0 (a ser determinado) hay un cambio en la dinamica del sistema
y debemos resolver

x00 (t) = −a, x(t0 )nt20 /2, x0 (t0 ) = bt0 ,

pidiendo, para x(T ) = α y x0 (T ) = 0. Por lo que

(t − t0 )2
 
t0
x(t) = bt0 t − −a ,
2 2

y las condiciones en el tiempo T llevan a un sistema de dos ecuaciones en las


dos incognitas T y t0 . Despues de algunos calculos obtenemos
s r
2aα 2(a + b)α
t0 = , T =
b(a + b) ab
6.3. EL PRINCIPIO DE PONTRYAGIN 163

Ejemplo 6.8 Nuestro siguiente ejemplo tambien es un problema de tiempo


mı́nimo, asi que el funcional objetivo es el mismo, pero el estado del sistema es

x01 = −x1 + u, x02 = u, |u| ≤ 1,

bajo condiciones iniciales arbitrarias

x1 (0) = a, x2 (0) = b.

La tarea consiste en llevar el sistema al reposo,

x1 (T ) = x2 (T ) = 0

en el mı́nimo tiempo.
El Hamiltoniano es

H(tmxmump) = 1 + p1 (−x1 + u) + p2 u,

el cual, como en nuestro ejemplo anterior es lineal en u. Las ecuaciones para


p1 y p2 son
p01 = p1 , p02 = 0,
asi que p2 = d y p1 = cet , donde c y d son constantes. Dabido a la linalidad de
H con respecto a u, el control óptimo tendra la forma

−1
 p1 + p2 > 0,
u(t) = 1, p1 + p2 < 0,

cualquier valor, p1 + p2 = 0.

Debemos preguntarnos cuantas veces la expresión

p1 + p2 = d + cet

puede pasar a traves origen, con el objetivo de exhibir cuantos cambios de −1 a 1


tendra el control óptimo y cuando, a traves de calculos aproximados encontrar la
estrategia óptima. Dado que las condiciones iniciales son arbitrarias y no estan
dadas explicitamente, la discución en terminos de formulas especificas que den
el tiempo óptimo y los instantes en los que el control óptimo debe tomar lugar
en terminos de a y b se vuelve una tarea tediosa y casi imposible de explicar, en
estas ocaciones es mas enriquecedor analizar el problena por medio de las çurvas
de cambio”. Describiremos este tipo de análisis para el ejemplo que estamos
trabajando.
Como argumentamos anteriormente, el control óptimo hace que el proceso
alterne entre las dinamicas de dos sistemas
( (
x01 = −x1 + 1, x01 = −x1 − 1
x02 = 1, x02 = −1.
164 CAPÍTULO 6. CONTROL ÓPTIMO

Las curvas integrales de estos sistemas comenzando en (a, b) cuando t = 0 son,


respectivamente,

x( t) = (a − 1)e−t + 1, x2 (t) = t + b,

y
x1 (t) = (a + 1)e−t − 1, x2 (t) = −t + b,
Que son sitematicamente dibujadas en la figura 6.1, donde la curva integral a
traves del origen esta resaltada para cada caso
Si imaginamos estas dos familias de curvas en un solo digarama, la esco-
gencia del control óptimo esta dada por determinar en un punto dado (a, b),
siguiendo una de las correspondientes curvas integrales y, en un cierto instante,
cambiar a la otra de tal manera que la segunda curva integral nos debe llevar al
origen si es posible. Desde que solo una curva integral de cada sistema pasa a
traves del origen (de hecho, desde que al tiempo no se le permite decrecer, esta-
mos hablando de dos medias curvas), es cuestion de alcanzar una de estas dos
medias curvas tan pronto como sea posible comenzando desde el punto inicial
dado. Especificamente estas dos medias curvas son

Λ1 = {(1 − e−s , s) : s ≤ 0} para u = 1


Λ−1 = {(es − 1, s) : s ≥ 0} para u = −1.

Sea Λ la unión de estas dos curvas, sea Λ+ la parte del plano sobre Λ, y Λ− la
parte del plando debajo de Λ. Es facil ver que si el punto (a, b) pertenece a Λ+ ,
debemos tomar u = −1 hasta que nos encontremos en Λ1 , cambiando en este
instante a u = 1, dado que la curva nos llevara al origen. De la misma manera
para condiciones iniciales (a, b) ∈ Λ− , debemos escoger primero u = 1 hasta
alcanzar Λ−1 , y entonces u = −1 dado que Λ−1 nos llevara al reposo. Estas son
las estrategias óptimas, dado qeue cualquier otra manera de cambiar entre estas
dos dinamicas nos haria ”‘gastar algo de tiempo”’. Vea la figura 6.2
Tambien es interesante notar que el número de cambios en el control óptimo
tambien puede ser determinado regreseando a la ecuación

p1 + p2 = d + cet

El numero de cambios corresponde a las raices de la ecuación

d + cet = 0

para constantes arbitrarias c, d. Resolviendo para t obtenemos


 
d
t = log − .
c

Entonces conluimos que el control óptimo tendra a lo mas (cuando d/c es neg-
ativo) un cambio.
6.3. EL PRINCIPIO DE PONTRYAGIN 165

Ejemplo 6.9 Un problema interesante que puede ser entendido como un análi-
sis cualitatico usando el concepdo de cambiar de curva, es el control óptimo de
un oscilador armonico, el cual es descrito por las ecuaciones.

x01 = x2 , x02 = −x1 + u,

donde el control u esta restringido en tamaño |u| ≤ 1. De nuevo nos gustaria


saber como llevar el sistema al reposo comenzando en un estado inicial arbitrario
(a1 , a2 ).
El Hamiltoniano es

H(t, x, u, p) = 1 + p1 x2 + p2 (−x1 + u).

Dado que es lineal en u, las estrategias óptimas siempre alternaran entre u = 1


y u = −1. Esas dos dinamicas estan representadas por las curvas integrales de
los sistemas. ( (
x01 = x2 x01 = x2 ,
0
x2 = −x1 + 1 x02 = −x1 − 1.

no es dificil confirmas que las curvas integrales para el primer sistema son cir-
culos concentricos centrados en (1, 0), mientras que aquellas para el segundo son
circulos concentricos centrados en (−1, 0) (Figura 6.3)
El asunto es entener las estrategis óptimas para puntos iniciales arbitrar-
ios en el plano. Para esto, examinamos las ecuaciones diferenciales para los
coestados y vemos que informacion podemos extraer de ellos. Estos son

p01 = p2
p02 = −p1

Por diferenciacion tenemos


p002 + p2 = 0,

asi que
p2 (t) = A cos(t + B)

para constantes arbitrarias A, B. Sabemos que los cambios en el control óptimo


estan dictados por los momentos en los cuales el co estado p2 pasa por el origen.
Dada lla forma de p2 concluimos que puede haber un numero arbitrario de
cambios (dependiendo de las condiciones iniciales) y que estos pon producidos
antes que π unidades de tiempo pasen. Note que las raices de cos(B + t) estan
localizadas a π unidades unas de otras. Teniendo en mente esta información, y
examinando primero aquellos puntos para los cuales no hay necesidad de cambiar
en el contral, entonces aquellos que requieren un solo cambio, dos cambios y asi,
es posible entender las estrategias óptimas. Estas conclusiones estan indicadas
en la figura 6.4.
166 CAPÍTULO 6. CONTROL ÓPTIMO

Ejemplo 6.10 Desde un punto dado fijo, se lanza un proyectil con el objetivo
de golpear un blanco localizado a 3 + 5/6 unidades de distancia en 3 unidades
de tiempo. Queremos alcanzar esto con el mı́nimo costo medido por la integral
Z 3
E=k u(t)2 dt, k > 0,
0

donde el control u indica la aceleración del projectil. La ecuación de estado es


x00 = u, y u esta restringido en signo y en tamaño: 0 ≤ u ≤ 1. Las condiciones
iniciales y finales son entonces
5
x0 (0) = x(0) = 0, x(3) = 3 + .
6
Transformando la ecuación de segundo orden a un sistema de primer orden,
obtenemos inmediatamente el Hamiltoniano

H(t, x, u, p) = ku2 + p1 x2 + p2 u,

El cual es una función estrictamente convexa en u. Las condiciones de optimal-


idad dicen que
p01 = 0, p02 = −p1 ,
junto con la condicion de transversalidad p2 (3) = 0, ya que el valor x2 (3) es
libre. En consecuencia, obtenemos p2 (t) = d(3 − t), donde p1 = d es constante.
La condición el el mı́nimo de H sobre u ∈ [0, 1], la cual es cuadratica, lleva a
estas tres situaciones, dependiendo de si el vertice de la parábola está en [0, 1]
o esta a la derecha o a la izquierda del intervalo. estos tres casos son (vease la
figura 6.5):
u = −p2 /2k = c(t − 3), c = −d/3k si c(t − 3) ∈ (0, 1);
u = 0 si c(t − 3) ≤ 0;
u = 1 si c(t − 3) ≥ 1.
Pero, desde que el control no puede ser identicamente cero (ya que el proyectil
no se moverı́a) solo son posibles dos casos, en los cuales c siempre es no positiva
(Figura 6.6):
1. 0 < c(t − 3) < 1, 0 ≤ t < 3: En este caso debemos resolver el problema
5
x00 = c(t − 3), x(0) = x0 (0) = 0, x(3) = 3 + .
6
Despues de algunos cálculos obtenemos
c 3 3c 2 1 5
x(t) = t − t , c=− − .
6 2 3 54
Sin embargo, para este valor de c del control óptimo u(t) = c(t−3) siempre
viola la restricción u ∈ [0, 1], ya que u(0) > 1. Esta no puede ser la
solución buscada.
6.3. EL PRINCIPIO DE PONTRYAGIN 167

2. Existe t0 ∈ (0, 1), de tal manera que c(t0 − 3) = 1. En esta solución


(
1, t ≤ t0
u(t) =
c(t − 3), t ≥ t0 .

Resolvemos el problema
5
x00 = u, x(0) = x0 (0) = 0, x(3) = 3 + ,
6
en dos pasos. Primero

x00 (t) = 1 para t ≤ t0 , x(0) = x0 (0) = 0

que tiene la solución x(t) = t2 /2. A continuación imponiendo la con-


tinuidad en t0 para x y x0 ,

x00 (t) = c(t − 3) para t ≥ t0


t20 5
x(t0 ) = , x0 (t0 ), x(3) = 3 + ,
2 6
donde tenemos en cuenta que c(t0 − 3) = 1. Despues de hacer todos estos
cálculos, llegamos a una ecuación polinomial para t0 .

t30 − 9t20 + 23t0 − 15 = 0, t0 ∈ (0, 3).

El único valor admisible es t0 = 1, y por lo tanto, c = −1/2. El control


óptimo es (
1, t ≤ 1,
u(t) = t
− 2 + 32, t ≥ 1.

Ejemplo 6.11 Nuestro proximo ejemplo describe una situación el la cual en


control tiene dos componentes, esto es para enfatizar las diferencias principales
con los ejemplos examinados anteriormente.
Suponga que un sistema obedece la ecuación de estado

x01 = −x2 + u1 , x02 = x1 + u2 ,

donde esta vez en control que ejercemos en el sistema debe respetar la restricción

u21 + u22 ≤ 1

Nos guataria determinar el intervalo de tiempo mas corto en el cual podemos


llevar el sistema al reposo desde una posición inicial arbitraria (a, b). El Hamil-
toniano es
H(t, x, u.p) = 1 + p1 (−x2 + u1 ) + p2 (x1 + u2 ),
y la condición sobre el mı́nimo sobre el control (u1 , u2 ) es

p1 u1 + p2 u2 = mı́n{p1 v1 + p2 v2 : v12 + v22 ≤ 1}.


168 CAPÍTULO 6. CONTROL ÓPTIMO

Este es un ejercicio simple de programación no lineal (Capı́tulo 3). En este


punto nuestros lectores no tendran problema en encontrar la solución óptima
p1 p2
u1 = − p 2 , u2 = − p 2 ,
p1 + p22 p1 + p22

el cual da el control óptimo una vez los multiplicadores (co estados) sean cono-
cidos. Las ecuaciones para estos son

p01 = −p2 , p2 = p1 .

Poniendo una en la otra llegamos a

p1 (t) = ρ0 cos(t + θ0 ), p2 (t) = ρ0 sin(t + θ0 ),

donde hemos usado la forma ρ0 cos(t+θ0 ) con ρ0 , θ0 constantes arbitrarias, para


la solución general de la ecuación p001 + p1 = 0. De esta forma, el control óptimo
es
u1 (t) = − cos(t + θ0 ), u2 (t) = − sin( t + θ0 ).
Ahora usamos el sistema de estado

x01 = −x2 − cos(t + θ0 ), x02 = x1 − sin(t + θ0 ).

De nuevo, derivando y juntando las ecuaciones, obtenemos

x001 + x1 = 2 sin(t + θ0 ).

La solución general de esta ecuación es

x1 (t) = −t cos(t + θ0 ) + ρ1 cos(t + θ1 ),

y en consecuencia

x2 (t) = −t sin(t + θ0 ) + ρ1 sin(t + θ1 ).

Finalmente, las condiciones iniciales y finales nos llevan a

a = ρ1 cos θ1 , b = ρ1 sin θ1
0 = −T cos(T + θ0 ) + ρ1 cos(T + θ1 ),
0 = −T sin(T + θ0 ) + ρ1 sin(T + θ1 ).

De esto es inmediato obtener


p
T = ρ1 = a2 + b2 , θ0 = θ1 ,

y la estrategia óptima

u1 (t) = − cos(t + θ0 ), u1 (t) = − sin(t + θ0 ),

donde θ0 es el argumento inicial del estado inicial (a, b).


6.3. EL PRINCIPIO DE PONTRYAGIN 169

Una de las diferencias mas importantes que descubrimos en este ejemplo, en


contraste de las situaciones en las cuales el control es simplemete un número, es
qye la frontera de una region conexa de dos o mas variables no es disconexa, y
por lo tanto, los controles óptimos no necesitan saltar abruptamente (aunque a
veces lo hacen) de un punto a otro, pero los cambios en la dinamica del sistema
toman lugar de forma suave.
Hemos estudiado varios ejemplos en los cuales haciendo uso de el principio de
Pontryagin, hemos encontrado aparentemente las soluciones óptimas a los prob-
lemas. Como en otras situaciones que analizamos anteriormente, la pregunta es
si podemos convencernos que estas soluciones calculadas son de hecho óptimas.
Este es obviamente un punto importante. Es que si las condiciones necesarias
de optimalidas son tambien suficientes. De nuevo, la convexidad juega un papel
importante en esta discución.

Teorema 6.12 Suficiencia de las condiciones de optimalidad Suponga que F (t, x, u)


es convexo en (x, u), y f (t, x, u) es lineal en (x, u). Si la tipleta (x(t), u(t), p(t))
satisface

∂H
p0 (t) = − (t, x(t), u(t), p(t)), (p(T ) = 0),
∂x
H(t, x(t), u(t), p(t)) = mı́n H(t, x(t), v, p(t)),
v∈K
x0 (t) = f (t, x(t), u(t)), x(0) = x0 , (x(T ) = xT ),

donde
H(t, x, u, p) = F (t, x, u) + pf (t, x, u)

es el Hamiltoniano del sistema, y K es un conjunto convexo, entonces el par


(x(t), u(t)) es una solución óptima del correspondiente problema de control ópti-
mo.

Este resultado no es dificil de justificar despues de la experiencia que ya tenemos


con convexidad. La condicion en el mı́nimo significa que

g(s) = H(t, x(t), u(t) + s(v − u(t)), p(t)), s ∈ [0, 1],

como una funcion de s para un t fijo y v ∈ K, tiene un mı́nimo en s = 0. Note


como el vector sv + (1 − s)u(t) pertenece a K si este conjunto es convexo. En
esta situación lo unico que podemos asegurar es que g 0 (0) ≥ 0 (mı́nimo de un
lado). Por lo que,

∂H
0 ≤ g 0 (0) = (t, x(t), u(t), p(t))(v − u(t)), v ∈ K. (6.2)
∂u

Si (x̃(t), ũ(t)) es cualquier otro par factible para nuestro problema de contol,
170 CAPÍTULO 6. CONTROL ÓPTIMO

tenemos

I(x̃,ũ) − I(x, u)
Z T
= [F (t, x̃(t), ũ(t)) + p(t)(f (t, x̃(t), ũ(t)) − x̃0 (t))
0
− F (t, x(t), u(t)) − p(t)(f (t, x(t), u(t)) − x0 (t))]dt
Z T
= [H(t, x̃(t), ũ(t), p(t)) − H(t, x(t), u(t), p(t))
0
− p(t)(x̃0 (t) − x(t))]dt
Z T
∂H
≥ (t, x(t), u(t), p(t))(x̃(t) − x(t))
0 ∂x

∂H
+ (t, x(t), u(t), p(t))(ũ(t) − u(t)) + p0 (t)(x̃(t) − x(t)) dt
∂u
≥ 0,

debido a la ecuación que satisface p(t) y (6.2). Y por lo tanto el par (x(t), u(t))
es verdaderamente una verdadera solución óptima. Tambien hemos utilizado de
manera escencial la convexidad de H con respecto de (x, u), la cual es garanti-
zada debido a la convexidad de F y la linealidad de f . La presencia del multi-
plicador frente a f (y en particular su signo) nos evita aparentemente relajar la
linealidad de f . Este hecho se deja a un curso mas avanzado en control óptimo..
Muy a menudo, no se pueden encontrar soluciones óptimas para problemas de
control, para porque hay muchas (o muy pocas) variables involucradas, asi que
es casi imposible manejarlas a mano; o porque las condiciones de optimalidad no
se pueden resolver de manera explicita o es muy complicado y tedioso encontrar
formulas explicitas.
Ejemplo 6.13 Un objeto movil en el plano puede ser contro lado por dos paramet-
ros r1 y r2 , expresando la rapidez con la cual la direccion del movimiento se pude
cambiar (velocidad angular de movimiento) y el modulo de la valocidad respec-
tivamente. Las ecuaciones de movimiento son

x00 (t) = cos θ(t)r2 (t), y 00 (t) = sin θ(t)r2 (t), θ0 (t) = r1 (t).

Las restricciones en los pares factibles (r1 , r2 ) se puden escribir normalmente


exigiendo
(r1 , r2 ) ∈ K,
donde K es el conjunto de controles admisibles. El objetivo es cambiar la posi-
ción del objeto de, digamos (a0 , b0 ), a (a1 , b1 ) en un tiempo mı́nimo. El sistema
equivalente de primer orden es

x01 = x2 , x02 = cos θr2 ,


x03 = x4 , x04 = sin θr2 ,
θ 0 = r1
6.3. EL PRINCIPIO DE PONTRYAGIN 171

y el Hamiltoniano es

H = 1 + p1 x2 + p2 cos θr2 + p3 x4 + p4 sin θr2 + p5 r1 .

Las condiciones de optimalidad se escriben como

p01 = 0, p02 = −p1 ,


p03 = 0, p04 = −p3 ,
p05 = p2 r2 sin θ − p4 r2 cos θ,
x00 = cos θr2 ,
y = sin θr2 , θ0 = r1 ,
00

donde r = (r1 , r2 ) debe ser la solución óptima de

mı́n ((p2 cos θp4 sin θ)r2 + p5 r1 ).


(r1 ,r2 )∈K

Incluso para escogencias simples para el conjunto K (como un rectangulo o una


elipse)m es casi imposible determinar de manera explicita la solución óptima.
Por otro lado, en esta situacion particular las restricciones en el estado (en
adicionn de aquellas en los controles) en la forma de obstaculos a evadir son
muy naturales. Esto, sin embargo esta mas alla de los objetivos de este texto.

Ejemplo 6.14 La economia de un cierto pais sigue la ley

k 0 = f (k) − (λ + µ)k − c,

donde k es la razon de inversión por unidad de valor, f es la funcion de pro-


ducción, µ y λ son parametros relacionados con la depreciación y el crecimiento
laboral respectivament, y c es el consumo por unidad de valor. El objetivo de
este pais es escoger el consumo para maximizar la integral de bienestar sobre un
intervalo de tiempo dado
Z T
e−δt u(t)dt
0

donde δ es el parametro de descuento en el tiempo y u es la función de utilidad.


Esta ultima funcion debe satisfacer la ecuación

cu00
η=−
u0
para una constante conocida η, a la cual se llama la elasticidad de la utilidad
marginal. Si asumimos que k es conocido en ambos en el tiempo inicial y final
y u(T ) es tambien conocido, nos gustaria decidir el consumo óptimo.
Si cambiamos la notación para hacer la formulación mas transparente, en-
contramos poniendo

x1 = k, x2 = u, x3 = u0 , v = c,
172 CAPÍTULO 6. CONTROL ÓPTIMO

que el Hamiltoniano es
x3
H = e−δt x2 + p1 (f (x1 ) − (λ + µ)x1 − v) + p2 x3 − p3 η ,
v
y las condiciones de optimalidad son

x01 = f (x1 ) − (λ + µ)x1 − v,


x02 = x3 ,
x3
x03 = −η ,
v
p01 = −f 0 (x1 ) + λ + µ,
p02 = e−δt ,
p3 η
p02 = −p2 + ,
v
p3 ηx3
v2 = .
p1
Note como la dependincia de H con respecto de v es convexa cuando v > 0.
Este sistema de seis ecuaciones diferenciales aclopladas es completado con las
condiciones en los extremos y las condiciones de optimalidad,

x1 (0) = k0 , x1 (T ) = kT , x2 (T ) = uT ,
p2 (0) = p3 (0) = p3 (T ) = 0.

Es imposible resolver todo el sistema de manera explicita.

No es dificil revisar que en los ejemplos anteriores las hı́potesis de la suficiencia


para la solución óptima estan satisfechas, asi que las soluciones encontradas son
en realidad soluciones óptimas en todos los casos.
Cuando estas condiciones que aseguran optimalidad no se cumplen, entonces
es posible la no existencia de soluciones óptimas. Uno de los ejemplos mas
simples de esto es aquel de minimizar
Z 1
[(u(t)2 − 1)2 + x(t)2 ]dt,
0
0
donde x (t) = u(t), x(0) = 0 y K = R. Si tomamos
 
k k+1
uj (t) = 1, t ∈ , , k par ,
2j 2j
 
k+1 k+2
uj (t) = −1, t ∈ , j , k impar ,
2j 2

Es facil mostrar que I(uj ) & 0, y por lo tanto concluimos que el valor del infimo
es 0. Es sin embargo imposible encontrar un control u que tenga este valor (¿Por
qué?). Note como la convexidad del integrando F con respecto al control u falla.
6.4. OTRO FORMATO 173

6.4. Otro Formato


El funcional de costo de un problema de control óptimom puede incorporar
otro termino dependiendo del estado final del sistema. En general tendremos un
objetivo de la forma
Z T
I(u) = F (t, x(t), u(t))dt + φ(x(T )),
0

donde el estado final x(T ) es libre, la función φ es diferenciable y tenemos la


tı́pica ecuación de estado completada con las condiciones iniciales

x0 (t) = f (t, x(t), u(t)), x(0) = x0 .

Esta situación, aparentemente mas general, puede reducirse a nuestro formato


tı́pico dediante el truco
Z T 
d
I(u) = φ(x(t)) + F (t, x(t), u(t)) dt
0 dt
Z T
= [∇ψ(x(t))f (t, x(t), u(t)) + F (t, x(t), u(t))]dt.
0

Por lo que es de hecho uno de nuestros ejemplos tı́picos con el nuevo integrando

F̃ (t, x, u) = ∇φ(x)f (t, x, u) + F (t, x, u)

El Hamiltoniano para este nuevo problema es

H̃(t, x, u, p) = ∇ψ(x)f (t, x, u) + F (t, x, u) + pf (t, x, u)

Note que las condiciones de óptimalidad son las mismas comparadas con aquellas
para el funcional I sin el termino ψ(x(T )), pero con el multiplicador

p̃(t) = p(t) + ∇φ(x(t)).

El unico cambio es en ralidad la condicion de transversalidad que ahora es

p̃(T ) = ∇φ(x(T )) (p(T ) = 0).

Y por lo tanto el cálculo de las soluciones ótimas de un problema de control


de este tipo es identica al anterior, ignorando la contribución φ(x(T )), la cual
entra escribiendo las condiciones de transversalidad en T como se indico ante-
riormente.
Ejemplo 6.15 Suponga que nos gustaria encontrar el control óptimo para min-
imizar el costo dado por
Z T
1
I(u) = x(T )2 + u(t)2 dt
2 0
174 CAPÍTULO 6. CONTROL ÓPTIMO

con ecuación de estado y condiciones iniciales dadas por

x0 (t) = −x(t) + u(t), x(0) = x0 .

Dado que se cumplen las hipótesis para la suficiencia de las condiciones de


optimalidad, podemos encontrarla aplicando el principio de Pontryagin. Como
explicamos anteriormente estas condiciones son las mismas que para
Z T
u(t)2 dt
0

pero con la condición de transversalidad correspondiete p(T ) = x(T ). Por lo que


el Hamiltoniano es
H(t, x, u, p) = u2 + p(u − x),
debemos resolver el sistema

p0 = p, 2u + p = 0, x0 = u − x,
x(0) = x0 , p(T ) = x(T ).

despues de algunos cálculos tenemos que resolver el problema


1
x0 (t) = −x(t) − x(T )et−T , x(0) = x0 .
2
Cuya solución es
x0
x(t) = (5e−t − e−t−2T ),
5 − e−2T
con control óptimo
2x0 e−T t−T
u(t) = − e .
5 − e−2T
Bajo restricciones en el tamaño del control u(t) ∈ K, la metodologia es similar.

6.5. Algunos Comentarios en la Aproximación


Numérica
Los problemas de control óptimo son tan importantes en ingenierı́a que la
simulación y aproximacion numérica de estos han recibido una atención con-
siderable, seguramente mas que los problemas variacionales. Se han analizado
e implementado varias estragegias exitosas para esto (for ejemplo, metodos de
dos puntos frontera, y tecnicas basadas en la condiciones de optimalidad). Esto
de nuevo se encuentra mas alla del enfoque de este texto. Nuestra meta en esta
sección es dar unas cuantas ideas basicas basadas directamente en discretización
y optimización (no en las condiciones de óptimalidad) que nos puden ayudar en
entender y apreciar el rol y las dificultades de la discretización en los proble-
mas de control óptimo. Una buena referencia es [32], en el cual se muestra una
6.5. ALGUNOS COMENTARIOS EN LA APROXIMACIÓN NUMÉRICA175

aproximación sistematica a los problemas de optimización incluyendo control


óptimo, esta desarollado de una manera bastante completa y exhaustiva.
La aproximación numérica de problemas de control óptimo puede ser analiza-
da como lo hicimos con los problemas variacionales, especificamente dividiendo
el intervalo de tiempo en varios subintervalos, y asumiendo que los controles ad-
misiblesm son constantes en cada uno de estos subintervalos, encontrar el mejor
control factible. Cuando la partición del intervalo es lo suficientemente fina, es-
peramos calcular una muy buena aproximación al verdadero óptimo de nuestro
problema. Esto en principio se puede hacer de esta manera, y las soluciones
óptimas se pueden aproximar usando algoritmos numericos para programación
no lineal. Considere la siguiente situación.

Ejemplo 6.16 Aproximaremos numéricamente el siguiente problema de con-


trol: Z !
Minimizar I(u) = u(x)2 dx
0

sujeto a

x00 (t) = u(y), u(t) ∈ K, t ∈ (0, 1),


x(0) = x0 (0) = 0, x(1) = 1, x0 (1) = 0.

La interpretación fı́sica de este problema es clara. Nos gustaria mı́nimizarel


gasto de combustible medido por la integral del cuadrado del control, para un
objeto movil que va a viajar una distancia de 1 en linea recta y terminar con
velocidad 0. El acelerador/freno debe pertenecer a un conjunto preasignado K.
Sea
u = (uj ), j = 1, . . . , n
nuestra variable independiente, donde uj es el valor del control en el intervalo
 
j−1 j
, .
n n

Por recursión podemos resolver la ecuación de estado en cada uno de estos


subintervalos. Si

x0 ((j − 1)/n) = aj−1 , x((j − 1)/n) = bj−1 ,

son los valores funales obtenidos para x0 y x cuando se resuelve la ecuación de


estado en el intervalo ((j − 2)/n, (j − 1)/n), entones debemos resolver

x00 (t) = uj , t ∈ ((j − 1)/n, j/n),


0
x ((j − 1)/n) = aj−1 , x((j − 1)/n) = bj−1 .

y ponemos
aj = x0 (j/n), bj = x(j/n).
176 CAPÍTULO 6. CONTROL ÓPTIMO

En esta situació simplificada todos los cálculos se pueden hacer de manera es-
pecifica, y obtenemos
uj 1 uj
aj = aj−1 + , Bj = bj−1 + aj−1 + .
n n 2n2
Las condiciones iniciales implican a0 = b0 = 0. Usando estas formulas recursi-
vas apropiadamente, no es deficil confirmar que
j j
1X 1 X
aj = uk , bj = (2j − 2k + 1)uk .
n 2n2
k=1 k=1

Las restricciones finales x(1) = 1, x0 (1) = 0 se traducen en


n
1 X
(2n − 2k + 1)uk = 1,
2n2
k=1
n
1X
uk = 0.
n
k=1

Incluso podemos escribir estas dos restricciones como


n
X n
X
kuk + n2 = 0, uk = 0
k=1 k=1

Por otro lado, el funcional de costo es simplemente


n
X
I(u) = u2k .
k=1

Finalmente nos enfrentamos al problema


n
X
Minimizar u2k
k=1

sujeto a
n
X n
X
kuk + n2 = 0, uk = 0, uk ∈ K.
k=1 k=1

Hemos implementado dos situaciones para diferentes escogencias del conjunto


K. La primera corresponde a ninguna restricción, es decir k ∈ R. Para la segun-
da hemos escogido K = [−1/2, 1]. Uno de los algoritmos numéricos del capı́tulo
4 puede ser usado para encontrar estas soluciones aproximadas de manera disc-
reta. La figura 6.7 muestra la aproximación para ambos casos

Ejemplo 6.17 Ahora esplicamos como plantear una aproximación numérica


para la solución óptima del problema 6.7.
6.5. ALGUNOS COMENTARIOS EN LA APROXIMACIÓN NUMÉRICA177

Dado que T > 0 no esta especificado (es precisamente el funcional de costo


a ser minimizado), debemos incorporarlo como otra variable. Sea

u = (uj ), j = 0, 1, . . . , n,

nuestra variable independiente, donde estamos tomando 4u0 = T , y uj es el


valor del control en el intervalo
 
j−1 j
u0 , u0 .
n n

Recursivamente, como en el ejemplo anterior, podemos resolver la ecuación de


estado en cada uno de estos subintervalos. Si

x0 (u0 (j − 1)/n) = aj−1 , x(u0 (j − 1)/n) = bj−1 ,

son los valores funales obtenidos para x0 y x resolviendo la ecuación de estado


en el intervalo (u0 (j − 2)/n, u0 (j − 1)/n, entonces tenemos que resolver

x00 (t) = uj , t ∈ (u0 (j − 1)/n, u0 j/n),


x0 (u0 (j − 1)/n) = aj−1 , x(u0 (j − 1)/n) = bj−1 ,

y ponemos
aj = x0 (u0 j/n), bj = x(u0 j/n).
Como antes todos los cálculos involucrados se puden hacer de manera explicita,
y asi obtenemos

u0 uj u0 u2 uj
aj = aj−1 + , bj = bj−1 + aj−1 + 02 .
n n 2n
Las condiciones iniciales implican a0 = b0 = 0. De nuevo no es dificil comprobar
que
j j
u0 X u20 X
aj = = uk , bj = 2 (2j − 2k + 1)uk .
n 2n
k=1 k=1

Las restricciones finales se traducen en


n n
u20 X u0 X
(2n − 2k + 1)uk = α, uk = 0.
2n2 n
k=1 k=1

O de manera equivalente
n
X n
X
u20 kuk + αn2 = 0, uk = 0.
k=1 k=1

Por otro lado el funcional de costo se simplifica a

I(u) = u0
178 CAPÍTULO 6. CONTROL ÓPTIMO

Finalmente, nos enfrentamos al problema

Minimizar u0

sujeto a
n
X
u20 kuk + αn2 = 0,
k=1
n
X
uk = 0, −l ≤ uk ≤ a, u0 ≥ 0.
k=1

Note como en los problemas de control óptimo la versión discretizada del prob-
lema fundamental de optimización requiere resolver una ecuación en diferencias.
En los ejemplos examinados anteriormente, se ha hecho esto explicitamente. En
muchas situaciones, incluso en situaciones simples, no podemos esperar hacer
esto mismo, asi que debemos incorporar un solucionador para ecuaciones en
diferencia como parde de la definición (numérica) del funcional de costo y/u de
las restricciones, o de lo contrario tendriamos que ver como usar la información
proveniente de las condiciones de optimalidad. Esta ultima posibilidad sera el
tema de un texto mas especializado. Invitamos a nuestros lectores a formular
los detalles de la aproximación numérica de otro ejemplo estandar mas elabo-
rado, el control óptimo del oscilador armonico (Ejemplo 6.9, Ejercicio 18). Esta
vez un integrador numérico (El integrador de Euler) sebe usar para aproximar
la ecuación de estado sobre los subintervalos donde se debe utilizar en control
constante.

6.6. Ejercicios
1. Un sistema esta gobernado por la ecuación de estado x0 + ax = u, donde
a es una constante, x = x(t) es el estado, y u = u(t) es el control. Si
x(0) = 0 y x(T ) = C, determine el control óptiimo que minimiza el costo
Z T
(C − x)2 + u2 dt.
 
I(u) =
0

Aquı́ C es una constante


2. Un cierto sistema que obedece las ecuaciones de estado

x01 = x2 , x02 = −x1 + u,

comienza en x1 (0) = x2 (0) = 1. Encuentre el control óptimo para tener


el sistema en el mismo estado despues de una unidad de tiempo x1 (1) =
x2 (1) = 1 si el costo es

1 1 2
Z
I(u) = u (t)dt
2 0
6.6. EJERCICIOS 179

3. Las ecuaciones
x01 = x2 , x02 = −x2 + u,
caracterizan el comportamiento de un sistema. Si consideramos un fun-
cional de consto del tipo
Z ∞
16
I(u) = (x21 + u2 )dt,
0 3

encuentre el control óptimo si

x1 (0) = 0, x2 (0) = b, x1 (t), x2 (t) → 0 mientras t → ∞.

4. Un sistema esta gobernado por la ecuación

x00 + x0 + x = u, x(0) = c0 , x0 (0) = c1

El control esta restringido por |u| ≤ 1. Estudie el control óptimo que lleva
el sistema al reposo en un tiempo mı́nimo.

5. Un cohete viaja hacia arriba sobre el suejo bajo una fuerza gravitacional
constante y efectos aerodinamicos despreciables. El ejector del motor actua
verticalmente hacia abajo. Las ecuaciones son


h0 = v, v 0 = −g + , m0 = −β,
m

donde h es la altura medida con respecto al piso, v es la velocidad vertical,


m es la masa total del cohete, c es una constante positiva, y β es el control
representado el flujo de combustible sujeto a la restriccion 0 ≤ β ≤ β̄.
Asumiendo que en el inicio t = 0, tenemos m = m0 + mβ , donde mβ es la
cantidad de combustible, h = 0, v = 0, determine el control óptimo para
alcanzar la maxima altura, suponiendo que se nos permite un solo cambio
en el control.

6. Una compañia decide contratar una compañia de mercadeo con el objetivo


de maximizar las ventas de un cierto producto. La relación entre el nivel
de ventas y la publicidad empleada, medida a traves de una función A(t),
esta dada por la ley  s 
s0 = rA 1 − − λs ,
M
donde M es el nivel de saturación de las ventas, λ es la taza de decaimiento
de las ventas si no hay publicidad, y r es un parametro positivo. Si el dinero
usado en mercadeo esta limitado en cualquier momento por 0 ≤ A ≤ Ā y
tambien globalmente por
Z T
B= A(t)dt,
0
180 CAPÍTULO 6. CONTROL ÓPTIMO

para un B dado, determine la estrategia optima para maximizar las ventas


globales
Z T
S= s(t)dt
0
sobre un determinado periodo de tiempo.
7. Un objeto movil esta controlado por la ley
x00 + x0 − 2x = u, |u| ≤ 1.
Si
1 1 1 1 1
x(0) = − e2 − e−1 − , x0 (0) = e2 − e−1 ,
6 3 2 3 3
determine la estrategia óptima U que leva este objeto al reposo,
x(T ) = x0 (T ) = 0,
en un tiempo mı́nimo. Suponga que U (0) ≤ 0
8. Un sistema esta gobernado por la ecuación
x0 (t) = x(t) + u(t), t ∈ (0, 10),
y comienza en x(0) = 100. Si el costo esta dado por
Z 1
1
I(u) = x(10)2 + 0 3x(t)2 + u(t)2 dt,
 
2 0
determine el control óptimo.
9. Considere el circuito de la figura 6.8. La corriente inicial se anula : i(0) = 0.
Se desea una máxima diferencia de voltaje,
Z T
v0 (T ) = Ri0 (t)dt
0
en el instante T . La ley del circuito es
1 R
i0 (t) = vi (T ) − i(t), 0 ≤ vi ≤ 1.
L L
Determine la estrategia óptima, y la máxima caida de potencial.
10. Dos naves A y B viajan en el espacio. En el instante inicial, estan alejadas
a una distancia c0 , y B se aleja de A con una velocidad constante c1 , A
quiere alcanzar a B de una manera suave. La posición de A esta gobernada
por
x00 = u, x(0) = x0 (0) = 0.
La energı́a consumida por A en esta tarea es proporcional a
Z T
I(u) = u(t)2 dt
0
Encuentre la estrategia óptima, teniendo en cuenta qeu la conexión debe
ser alcanzada antes de un cierto periodo de tiempo T1 (T ≤ T1 ).
6.6. EJERCICIOS 181

11. Trate de resolver el problema de control óptimo número 12 en el capı́tulo


1.

12. Una taza de cafe esta inicialmente a 100◦ Farenheit, y deseamos disminuir
su temperatura en un tiempo mı́nimo a 0◦ F anádiendo una cantidad fija
(unidad) de leche. Si x(t) es la temperatura de la mezcla de cafe y leche
en la taza, la ley de enfriamento de la mezcla es

1
x0 (t) = −x(t) − 25u(t) − u(t)x(t),
4
donde u(t) es la razon a la cual se añade la leche, y esta restringida de tal
manera que 0 ≤ u(t) ≤ 1 y
Z T
u(t)dt = 1.
0

a) Argumente por quá la estrategia óptima debe tener la forma


(
0, 0 ≤ t ≤ t0 ,
u(t) =
1, t0 ≤ T,

para un t0 ≥ 0 dado.
b) Teniendo en cuenta el paso anterior, encuentre la estrategia óptima

13. Una cierta plaga esta dañando un cultivo. Para eliminarla, se desarrolla
un depredador y se introduce en el cultivo. Dado que el depredador es
perjudicial para el cultivo, asi como infertil, se busca que ambas especies
se eliminen simultaneamente tan pronto como sea posible. Si x1 (t) y x2 (t)
designan a ambas especies, y estas comienzan desde x1 (0) = 41 , x2 (0) = 0,
determine el control óptimo u y el tiempo mı́nimo si −1 ≤ u ≤ 1 y la ley
de estado es

x01 (t) = x1 (t) − x2 (t), x2 (t) = −x2 (t) + u.

El contriol u representa la taza a la cual el depredador es introducido o


retirado.

14. En ocasiones no se sabe si un sistema puede alcanzar un estado final


deseado bajo las restricciones que tenemos. En estos casos, un problema
de control óptimo como

1
Minimizar |x(T ) − xT |2
2
sujeto a
x0 = f (t, x, u), x(0) = x0 , |u| ≤ M,
182 CAPÍTULO 6. CONTROL ÓPTIMO

puede ayudar a determinar cuando el estado final deseado xT puede ser


alcanzado. Esto ocurre cuando en costo óptimo se anula. Decida cuan-
do pueden haber estados inalcanzables para una ley de estado lineal con
coeficientes constanes xT .

f (t, x, u) = ax + bu + c, a, b, c ∈ R, a, b 6= 0.

15. El principio de Pontryagin no siempre da soluciones óptimas. Esto es obvi-


amente cierto cuando no hay soluciones óptimas. Trate de usar el principio
del maximo de Pontryagin para el ejercicio 13 del Capı́tulo 1, y describa
que tipo de dificultades se encuentra.

16. Examine la aproximación numérica del ejemplo 6.10 usando las ideas de
la sección 6.5.
17. Estudie el problema de control óptimo de llevar el sistema gobernado por
la ecuación de estado

x00 (t) − x(t) = u(t), −1 ≤ u(t) ≤ 1,

al reposo desde una posición arbitraria inicial en tiempo mı́nimo. Plantee


el problema para la aproximación mumérica.
18. Explore la aproximación numérica del control óptimo de un oscilador ar-
monico 6.9 usando las ideas en la sección 6.5.

También podría gustarte