Libro de Investigacion de Operaciones - Liberman
Libro de Investigacion de Operaciones - Liberman
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
1
2 ÍNDICE GENERAL
Introducción
3
4 CAPÍTULO 1. INTRODUCCIÓN
vi2 vi vj
pij = cos θij − cos(θij + δi + δj )
zij zij
vi2 vi vj
pij = sin θij − sin(θij + δi + δj )
zij zij
θ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.
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
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
bajo
X
xij = ui , i = 1, 2, . . . , n
j
X
xij = uj , j = 1, 2, . . . , m
i
xij ≥ 0 para todo i, j
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
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.
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
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
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
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
(x̄i , y¯i ), i = 1, 2
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.
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
Maximizar y(1)
sujeto a
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
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
2. un vector b ∈ Rm
3. un vector c ∈ Rn
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.
M inimizar cx bajo Ax ≤ b, A0 x0 = b0 , x ≥ 0.
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
max{cx : Ax = b, x ≥ 0} = −min{(−c)x : Ax = b, x ≥ 0}
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
x1 − x2 − y1 + y2 + z1 = 1, z1 = 0
x1 + y1 − y2 ≥ −1, z2 = 0
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
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 )
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
3. Puede admitir una sola solución unica, y esta es la situación mas deseable.
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
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.
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
La ecuación Ax = b es equivalente a
xB
B N = b, xB = B −1 b.
0
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
xB − B −1 N xN xN
r = cN − cB B −1 N
xB − B −1 N xN (2.1)
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
rxN = trv
xB − B −1 N xN = B −1 b − tB −1 N v (2.2)
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.
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.
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
Bw = y
sujeto a
x1 + 2x3 + x4 = 4
x2 + x3 − x4 = 2
xi ≥ 0
1. Inicialización. Escoja
1 0 2 1
B= N= cB = 3 1 cN = 9 1
0 1 1 −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 .
sujeto a
x1 + 2x3 + x4 = 0
x2 + x3 − x4 = 2
xi ≥ 0
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
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
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
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
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.
6(2x3 + x4 ) − 2
2x3 + x4 ≥ 2,
2x3 + x4 = 2,
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.
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
xBD + xCD = 1
(todo el producto llega al nodo D)
xAB , xAC , xBC , xBD , xCD ≥ 0.
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 .
yB − yA = yB ≤ 2, yC − yA = yC ≤ 3, yC − yB ≤ 1,
yD − yB ≤ 4, yD − yC ≤ 2.
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
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
Ax = b, x ≥ 0, yA ≤ c,
tenemos
yb = yAx ≤ cx.
En particular tenemos
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),
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
xB = B −1 b,
c = cB cN
2.4. ALGUNOS ASUNTOS PRACTICOS 39
M (b) = y(b)
∇M (b) = y
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
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,
Mı́nimizar cx + dy bajo Ax + y = b, x ≥ 0, y ≥ 0,
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
−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
−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
x5 x6 x1 x2 x3 x4
1 0 1 0 2 1 4
0 1 0 1 1 −1 2
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
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
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.
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 ,
cB = yB
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
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
sujeto a
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}
Mı́nimizar cxbajo Ax = b, x ≥ 0.
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.
bajo
El PPL de fondo es
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 .
sujeto a
−x1 + x2 ≤ 1, 2x1 + x2 ≤ 2, x1 ≤ 0, x2 ≥ 0.
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.
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
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
55
56 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL
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.
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.
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
3x21 + 2λx1 = 0,
3x22 + 2λx2 = 0,
3x23 + 2λx3 = 0,
x21 + x22 + +x23 = 4.
(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
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
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.
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.
τ (−δ, δ) → Rn , δ > 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
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
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.
det x = x1 x2 + x1 x3 + x2 x3
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
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
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.
J = {j ∈ M : gj (x(0) ) = 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
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
µ ≥ 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,
µi = 0, gj (x) = 0, j ∈ J, i ∈ M \ J,
x1 + x2 + x3 = r xi ≥ 0.
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
cuando r ≤ 2 y
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
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
x1 , x2 , x3 ≥ 0,
2x1 + 2x2 + 4x3 ≤ a,
µ1 , µ2 , µ3 , µ4 ≤ 0.
x1 (x2 x3 − 2µ4 ) = 0,
x2 (x1 x3 − 2µ4 ) = 0,
x3 (x2 x1 − 4µ4 ) = 0,
(2x1 + 2x2 + 4x3 − a)µ4 = 0.
por lo tanto
µ4 = −3x1 x2 x3 /a.
x1 = x2 = a/6, x3 = a/12.
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
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.
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
Minimizar f (x) x ∈ R
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 .
tx + (1 − t)y ∈ K, t ∈ [0, 1]
B = {x ∈ K : |x − x0 | < }
f (x0 ) ≤ f (y).
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.
Dado que esta desigualdad es corecta para cada t ∈ [0, 1], tomando limites
cuando t → 1− , podemos concluir que
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
dab ≤ c|b|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;
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.
|x|4 + |x − a|2
bajo la restricción
|x|2 ≤ 1,
78 CAPÍTULO 3. PROGRAMACIÓN NO LINEAL
µ = 0, x = ta , 2|a|2 t3 + t − 1 = 0,
µ = |a| − 3, x = a/|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.
a1 , a2 , A0 , A1 , A2 , x0 .
sujeto a
A1 A2
+ ≤ A0 , x1 , x2 ≥ 0,
x1 x2
µ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.
1
a1 = , a2 = 61
5
A0 = 12, A1 = 25 A2 = 100,
x0 = 10
Con multiplocadore
1
µ1 = µ2 = µ3 = 0, µ2 = .
5
Los detalles se le dejan al lector interesado.
Maximizarθ(µ, λ) bajoµ ≥ 0,
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:
sujeto a
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
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}.
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,
g(x) = ∇µ θ(µ, λ) = y ≥ 0,
h(x) = ∇λ θ(µ, λ) = 0,
µg(x) = µy = 0.
y el máximo
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
−λ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 .
x21 + x22 = 4, −1 ≤ x3 ≤ 1.
para a ∈ R y
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
(1, 0), (2, 1), (−1, 2), (3, −1), (−1, −2), (3, −2),
(xi , yi ), i = 1, . . . , n.
y = ax + b
sea mı́nimo.
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
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.
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
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
Se aplica este procedimiento iterativamente hasta que el intervalo tiene una lon-
gitud menor que un valor umbral preasignado.
∇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.
dk = −∇g(xk )
||dk || ≤ ,
−A∇g(x)
||∇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
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
gn+1 pk = 0, k = 1, 2, . . . , n.
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
∇g(x) = Ax − b
gj+2 pk = 0. k = 1, 2, . . . , j + 1
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
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.
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
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
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
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
ek = hk (xj )
µj+1 = µj + sj d, λj+1 = λj + sj e,
∇f (x) + λh(x) = 0.
∇f (x) + λ∇h(x) = 0,
∇f (xj ) + λj ∇h(xj ) + rj h(xj )∇h(xj ) = 0,
4.5. APROXIMACIÓN BAJO RESTRICCIONES 103
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
3. Criterio de Parada. Si
|∇f (xj ) + µj ∇g(x) + λj h(xj )| < , |µj g(xj )| < , |h(xj )| < ,
Regrese al paso 2.
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
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;
2 − sin |x| + x2
2
x p
f (x) = , g(x) = sin + |x + 1|
2 + sin x 2
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
P (x, y) = x2 + 2y 2 − 2x − 8y
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
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
xT Bx + bx ≤ c
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
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.
Ω
Minimizar I(u)
109
110CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA
u(x) = u0 (x), x ∈ ∂Ω
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
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.
F (x, λ, ξ) : Ω × R × Rn → R
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.
d
[Fξ (x, u(x), u0 (x)))] = F λ(x, u(x), u0 (x)), x ∈ (a, b),
dx
u(a) = A, u(b) = B
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.
r = 1, −π ≤ θ ≤ π
114CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA
z(0) = 0 z(θ0 ) = z0 .
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.
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
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,
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.
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.
uxx − uyy = 0.
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
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 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
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
Dado que ϕ(b) se puede escoger de manera arbitraria, esto significa que
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
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
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
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 )
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
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
suejeto a Z
u(0) = u(1) = 1, u(x)2 dx ≤ α,
5.5. PROBLEMAS VARIACIONALES BAJO CONDICIONES INTEGRALES Y PUNTUALES131
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
g(y, z, w) ≤ α, y ≥ 0, y(g(y, z, w) − α) = 0
y=0 o g(y, z, w) = α,
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.
suejto a
1
o ≤ u(0) ≤, 0 ≤ u(1) ≤
2
134CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA
u(x) = w1 x + w2 .
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
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
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
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.
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
sujeto a
Z H
V = 2π rz(r)dr.
0
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
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 ).
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
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)
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
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,
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,
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
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ı́.
α2
mı́n(y 2 + yα) = − ,
y 4
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
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.
sujeto a Z 1
1
u(0) = u(1) = 0, = u(x)dx.
3 0
146CAPÍTULO 5. PROBLEMAS VARACIONALES Y PROGRAMACIÓN DINAMICA
sujeto a
n
n+1 X
x0 = xn+1 = 0, = xj ,
3 j=1
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
sujeto a
u(0) = 1, u(π/2) = 0, u0 (0) = 0, u0 (π/2) = 1.
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
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 ),
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 ,
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
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
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
H = 1 + su2 + p(ax + u)
H = 1 + u2 + p(ax + u),
p0 = −ap, 2u + p = 0, x0 = ax + u.
x0 = ax + ce−at
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
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.
sujeto a
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))
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
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
obtenemos
x01 = x2 , x02 = u, u ∈ K
x1 (0) = x2 (0) = 0, x1 (T ) = α, x2 (T ) = 0.
H(t, x, u, p) = 1 + p1 x2 + p2 u,
(t − t0 )2
t0
x(t) = bt0 t − −a ,
2 2
x1 (0) = a, x2 (0) = b.
x1 (T ) = x2 (T ) = 0
en el mı́nimo tiempo.
El Hamiltoniano es
H(tmxmump) = 1 + p1 (−x1 + u) + p2 u,
p1 + p2 = d + cet
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
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
d + cet = 0
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.
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
asi que
p2 (t) = A cos(t + B)
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
H(t, x, u, p) = ku2 + p1 x2 + p2 u,
Resolvemos el problema
5
x00 = u, x(0) = x0 (0) = 0, x(3) = 3 + ,
6
en dos pasos. Primero
donde esta vez en control que ejercemos en el sistema debe respetar la restricción
u21 + u22 ≤ 1
el cual da el control óptimo una vez los multiplicadores (co estados) sean cono-
cidos. Las ecuaciones para estos son
p01 = −p2 , p2 = p1 .
x001 + x1 = 2 sin(t + θ0 ).
y en consecuencia
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 ).
y la estrategia óptima
∂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)
∂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).
y el Hamiltoniano es
k 0 = f (k) − (λ + µ)k − c,
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
x1 (0) = k0 , x1 (T ) = kT , x2 (T ) = uT ,
p2 (0) = p3 (0) = p3 (T ) = 0.
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
Por lo que es de hecho uno de nuestros ejemplos tı́picos con el nuevo integrando
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
p0 = p, 2u + p = 0, x0 = u − x,
x(0) = x0 , p(T ) = x(T ).
sujeto a
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
sujeto a
n
X n
X
kuk + n2 = 0, uk = 0, uk ∈ K.
k=1 k=1
u = (uj ), j = 0, 1, . . . , n,
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
O de manera equivalente
n
X n
X
u20 kuk + αn2 = 0, uk = 0.
k=1 k=1
I(u) = u0
178 CAPÍTULO 6. CONTROL ÓPTIMO
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
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
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
cβ
h0 = v, v 0 = −g + , m0 = −β,
m
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
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
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
f (t, x, u) = ax + bu + c, a, b, c ∈ R, a, b 6= 0.
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