21 94 2 PB
21 94 2 PB
21 94 2 PB
Programacin no Lineal
Gilberto Espinosa-Paredes
Alejandro Vzquez Rodrguez
Open Access Support
Autores:
Gilberto Espinosa-Paredes, Alejandro Vzquez Rodrguez
Profesor-Investigador. rea de Ingeniera en Recursos Energticos. Divisin de Ciencias Bsicas e
Ingeniera. Universidad Autnoma Metropolitana, Mxico
ISBN: 978-84-942118-5-0
DOI: http://dx.doi.org/10.3926/oss.21
OmniaScience (Omnia Publisher SL) 2016
Diseo de cubierta: OmniaScience
i
Aplicaciones de Programacin no Lineal
ii
Aplicaciones de Programacin no Lineal
Nmero
de Condicin de una Matriz............................................. 63
2.4 Criterios de Convergencia o Terminacin ..................................... 69
Nmero
Mximo de Iteraciones .................................................... 69
Cambio
Absoluto o Relativo en los Valores de las Abscisas ........ 69
Cambio
Absoluto o Relativo en el Valor de la Funcin Objetivo ... 70
Valor
Absoluto en el Valor del Gradiente de la Funcin Objetivo .. 71
2.5 Mtodos con Derivadas ................................................................ 72
Mtodos
que Usan Intervalo ......................................................... 72
Mtodos Grficos .......................................................................... 73
Mtodos
de Bsqueda Incremental .............................................. 74
Mtodo
de Biseccin .................................................................... 76
Error
Lmite en el mtodo de Biseccin ........................................ 81
Rapidez
de Convergencia del mtodo de Biseccin ................... 83
Mtodos Abiertos .......................................................................... 83
Mtodo
de Newton-Raphson ........................................................ 84
Rapidez
de Convergencia del mtodo de Newton-Raphson ........ 86
2.6 Mtodos sin Derivadas ................................................................. 88
2.7 El Intervalo de Incertidumbre ........................................................ 88
2.8 Razn de Reduccin y Eficiencia ................................................. 89
2.9 Mtodos de Comparacin de la Funcin Objetivo ........................ 91
Mtodo
de la seccin urea .......................................................... 92
Rapidez
de Convergencia ............................................................ 96
2.10 Mtodos de Interpolacin ............................................................. 98
Mtodo
de Interpolacin Cuadrtica de Powell ............................ 98
Problemas
.................................................................................... 103
iii
Aplicaciones de Programacin no Lineal
Mtodo
de Fletcher y Reeves o de Gradientes Conjugados ........ 146
Mtodo
de Davidon-Fletcher-Powell o de Mtrica Variable .......... 151
Mtodo
de Broyden-Fletcher-Goldfarb-Shanno ............................ 158
Problemas ..................................................................................... 162
iv
Aplicaciones de Programacin no Lineal
v
PRLOGO
vii
Aplicaciones de Programacin no Lineal
viii
Aplicaciones de Programacin no Lineal
El texto termina con un apndice; este puede utilizarse para el repaso de las
matemticas preliminares necesarias para el desarrollo de la optimizacin de una
a varias variables por su contenido bsico de conceptos de lgebra lineal y de
lgebra de matrices.
ix
CAPTULO 1
Conceptos de optimizacin
1.1 Introduccin
3
Aplicaciones de Programacin no Lineal
El planteamiento general para resolver problemas de este tipo es, por tanto, el
siguiente:
Se desea optimizar
Sujeta a: Restricciones
4
Conceptos de optimizacin
Maximizar ( f ( x ) )
Minimizar f ( x ) =
x[ 2,2] x[ 2,2]
f ( x=) x 2 + 2 f ( x) = x2 2
considerando las grficas de las funciones y
mostradas en la figura 1.1.
Solucin:
Optimizar: f (x)
g j (
x) 0 j = 1,2,, l
x W
5
Aplicaciones de Programacin no Lineal
T
donde x = ( x1, x2 ,, xn ) es el vector de las variables independientes, f (x)
es la funcin objetivo, W R n (aunque puede ser cualquier espacio vectorial),
hi (x) son funciones que representan las restricciones de igualdad mientras que
l a s g j (x) representan el conjunto de las restricciones de desigualdad. El hecho
de que solamente aparezcan restricciones del tipo g j (x) 0 y no aparezcan
restricciones del tipo g j (x) 0 se debe a que estas ltimas pueden trans-
formarse en las primeras multiplicando la desigualdad por -1. En principio, las
funciones implcitas en el problema no necesariamente tienen alguna propiedad
particular, pero en nuestro caso se van a introducir hiptesis adicionales que nos
ayuden a simplificar el problema. Por ejemplo, se supondr de forma general que
las funciones f (x), hi (x) , g j (x) son continuas y que en la mayora de los casos
tienen derivadas primeras y segundas, tambin continuas. Adems, el conjunto
ser en la mayora de los casos un conjunto convexo, aunque generalmente
=Rn.
Optimizar : f (x)
Optimizar:
sujeta
sujetaaa:
: h (x) = 0
g (x) 0 1.1
Donde:
x1 h1 ( x ) 0 g1 ( x ) 0
x 0
h2 ( x ) g 2 ( x ) 0
x = 2 , h (x) = = = 0 y g (x) = = 0
xn hm ( x ) 0 gl ( x ) 0
6
Conceptos de optimizacin
Minimizar :
Minimizar: f (x) = x13 - 3x1x2 + 4
sujeta a : a:
sujeta h1 (x) = -2 x1 + x2 - 5 = 0
g1 (x) = 5 x1 + 2 x2 -18 0
Solucin:
En la figura 1.2 se muestran las curvas de nivel de la funcin objetivo, las lneas
rectas muestran las restricciones y la regin en amarillo corresponde a la regin
factible.
*
Definicin 1.3 Una solucin ptima x es aquella solucin factible que
produce el valor ptimo de la funcin objetivo.
7
Aplicaciones de Programacin no Lineal
Continuidad
8
Conceptos de optimizacin
*
Figura 1.3 El punto ptimo x en la regin factible.
9
Aplicaciones de Programacin no Lineal
10
Conceptos de optimizacin
Modalidad
11
Aplicaciones de Programacin no Lineal
12
Conceptos de optimizacin
f '( x) = 0
13
Aplicaciones de Programacin no Lineal
x f (x, y )
y/o y f (x, y )
T
f ( x ) f ( x ) f ( x ) f ( x ) (1.3a)
f ( x )= = , ,, G (x)
x x1 x2 xn
14
Mtodos univariables
n
f ( x )
f ( x ) = G ( x ) = x i
ei
(1.3b)
i =1
f ( x )
Gi ( x )
= = ; i 1,, n
xi (1.3c)
15
Aplicaciones de Programacin no Lineal
m, n
J (x) = Jik ( x ) eieTk (1.4b)
i , k =1
fi ( x ) i = 1,, m
J ik ( x ) = ;
xk k = 1,, n (1.4c)
3 x 2 - 4 x x + x 2
1 1 2 2
Ejemplo 1.3 Para la funcin f (x) = , calcule la matriz jaco-
e 1 + x2 + 1
x 2
biana en el punto x*T = (1,1) .
16
Mtodos univariables
Solucin:
La matriz jacobiana es
f1 (x) f1 (x)
x1 x2 6 x1 - 4 x2 -4 x1 + 2 x2
J (x) = =
f 2 (x) f 2 (x) e x1 2 x2
x1 x2
2 -2
El valor de la matriz en ( )
x*T = (1,1) es J x* = .
e 2
2 f ( x) 2 f ( x) 2 f ( x)
2
x1 x1x2 x1xn
2
f (x) 2 f ( x) 2 f ( x)
2
(
)
f ( x ) = f ( x ) = x2x1
T
x22
x2xn
2
f (x) f (x) f (x)
2 2
x x xnx2 xn2 (1.5a)
n 1
n
H (x) = hij ( x ) eieTj
i , j =1 (1.5b)
17
Aplicaciones de Programacin no Lineal
2 f ( x) i = 1,, n
hij ( x ) = ;
xi x j j = 1,, n (1.5c)
Es importante hacer notar que cada elemento de la matriz hessiana es una fun-
cin en si misma que debe evaluarse en el punto dado x. Debido a que f ( x) se
supone dos veces continuamente diferenciable, las derivadas parciales cruzadas
son iguales, es decir,
2 f ( x) 2 f ( x)
hij ( x ) = = h ji ( x ) ;
= i j
xi x j x j xi (1.5d)
xi
= dij ; i, j = 1,2,..., n
x j
(1.6)
Ejemplo 1.4 Calcule la matriz hessiana en el punto x*T = (1, 2) para la funcin
f ( x ) = x13 + x23 + 2 x12 + 3 x22 x1x2 + 2 x1 + 4 x2 .
Solucin:
La matriz hessiana es
6x + 4 1
H (x) = 1
1 6 x2 + 6
18
Mtodos univariables
10 1
por lo que la matriz hessiana en el punto ( )
x*T = (1, 2) es H x* =
1 18 .
( hT )
n
f (x0 )
f ( x )= n!
; h= x x 0
n =0 (1.7a)
T
f ( x ) f ( x 0 ) + ( x x 0 ) f ( x 0 )
(1.7b)
(1.7c)
19
Aplicaciones de Programacin no Lineal
Solucin:
1 1
cos x cos 0 ( x 0 ) sen 0 + ( x 0 )2 ( cos 0 ) =1 x 2
2 2
Solucin:
9 18 9
f ( x 0 ) =
3 y H ( x 0 ) = 9 0
x 1 x 1
x x 0= 1 = 1 , f ( x 0 )= 3
x2 1 x2 1
20
Mtodos univariables
9 1 18 9 x1 1
f (x) =
3 + ( x1 1, x2 1) + ( x1 1, x2 1)
3 2 9 0 x2 1
f ( x ) = 9 x12 + 9 x1x2 18 x1 6 x2 + 9
x= x 2 + (1 ) x1 (1.8)
21
Aplicaciones de Programacin no Lineal
Definicin 1.15 Un punto interior es aquel punto que satisface todas las
restricciones de desigualdad estrictamente como desigualdades.
22
Mtodos univariables
23
Aplicaciones de Programacin no Lineal
24
Mtodos univariables
Figura 1.13 Los mnimos locales A y B restringidos caen sobre las restric-
ciones activas g 2 ( A) = 0 , g 4 ( A) = 0 , g1 ( B ) = 0 y g3 ( B ) = 0
25
Aplicaciones de Programacin no Lineal
*T
x = (0, 0) cae fuera de la regin fac-
En la figura 1.11, el mnimo no restringido
tible y el mnimo restringido x*T = (1,1) cae sobre la restriccin de desigualdad
g1 (x) activa; las otras dos restricciones son inactivas. Si se tuviera conocimiento
a priori de sta situacin, se debera ignorar g 2 ( x) y g3 ( x) y tratar este proble-
ma como un problema con una restriccin de igualdad g1 ( x) = 0 nicamente.
En la figura 1.12 el mnimo restringido x*T = (0, 0) coincide con el mnimo no
restringido x*T = (0, 0) . Todas las restricciones se satisfacen como desigualdades
estrictas y si se tuviera conocimiento de esto, deberan ignorarse todas por ser
inactivas y tratar este problema como un problema de optimizacin sin restriccio-
nes, tambin es posible para las restricciones introducir mnimos locales dentro
del problema (vase la Figura 1.13). Aqu, la funcin tiene nicamente un mnimo
*T
no restringido x = (0, 0) . Sin embargo, para el problema restringido, A y B son
mnimos locales ya que ningn punto factible en las cercanas inmediatas de A o
B da valores menores de la funcin. La figura 1.13 tambin muestra la importan-
cia de que las restricciones constituyan una regin convexa si se desea localizar
un mnimo global. La bsqueda para el mnimo de la funcin, si es iniciada en la
parte superior de la regin factible, podra terminar en el punto A, mientras que
una bsqueda empezando en la parte inferior de la regin podra terminar en B.
Por lo tanto, se concluye que la bsqueda en una regin convexa es importante
para obtener resultados adecuados en optimizacin. De hecho, si la regin factible
fuera convexa, la bsqueda desde cualquier punto inicial convergera a la misma
respuesta.
(1.9)
Para una funcin de una variable, la desigualdad significa que la funcin pasa por
abajo de la cuerda que une dos puntos de su grfica (vase la Figura 1.14).
26
Mtodos univariables
Para una funcin cncava definida sobre una regin convexa, simplemente se
invierte la desigualdad para obtener
27
Aplicaciones de Programacin no Lineal
2 2
1 1
Minimizar f (x) = x1 - + x2 -
2 2
1 1
Sujeta a : g (x) = + - 2 0
x1 x2
0.667 3.000
x1 = y x 2 =
2.000 0.600
28
Mtodos univariables
1 1
g (x) = + - 2 = -0.685 0
1.833 1.300
de la ecuacin (1.9),
29
Aplicaciones de Programacin no Lineal
T
f (x 2 ) f (x1 ) + (x 2 - x1 ) f (x1 )
(1.11)
30
Mtodos univariables
Para funciones convexas de una o dos variables, la desigualdad dice que tales
funciones pasan por arriba de cualquier lnea o plano tangente a las funciones,
como se ilustra en la figura 1.17.
T
f (x 2 ) f (x1 ) + (x 2 - x1 ) f (x1 )
(1.12)
2 x -1 0.334
f (x1 ) = 1 =
2 x2 -1 3.000
y la diferencia de vectores es
31
Aplicaciones de Programacin no Lineal
2.333
x 2 - x1 =
-1.400
y entonces
T
f (x1 ) + (x 2 - x1 ) f (x1 ) = 2.278 - 3.420 = -1.142
32
Mtodos univariables
de la ecuacin (1.11)
T
f (x 2 ) = 6.260 -1.142 = f (x1 ) + (x 2 - x1 ) f (x1 )
Para funciones convexas de una variable, esto dice que la segunda derivada es
positiva de manera que la primera derivada es una funcin creciente que puede
anularse slo en un punto. De esta manera, tal funcin tendr un punto mnimo,
como se ilustra en la figura 1.19.
Para funciones cncavas de una variable, esto dice que la segunda derivada
es negativa de manera que la primera derivada es una funcin decreciente que
puede anularse slo en un punto. De esta manera, tal funcin tendr un punto
mximo, como se ilustra en la figura 1.20.
Ejemplo 1.9 La matriz hessiana de la funcin objetivo del ejemplo 1.7 esta dada por
2 0
H( x ) =
0 2
33
Aplicaciones de Programacin no Lineal
Figura 1.19 Funcin convexa con derivada creciente y segunda derivada positiva.
Figura 1.20 Funcin cncava con derivada decreciente y segunda derivada negativa.
34
Mtodos univariables
m
p (x) = a j g j (x)
j =1
Una combinacin lineal de funciones convexas produce una nueva funcin convexa.
x2 1 - x1
x2 1 + 0.5 x1
x1 2
x2 0
35
Aplicaciones de Programacin no Lineal
Solucin:
g j (x) 0 con
Si se reescriben e identifican las restricciones de la forma ,
j = 1,,4 se tiene
g1 (x) = 1 - x1 - x2 0
g 2 (x) = x2 - 0.5 x1 -1 0
g3 (x) = x1 - 2 0
g 4 (x) = -x2 0
Todas las funciones de restriccin son lineales y stas son funciones tanto con-
vexas como cncavas; por tanto, la regin construida por ellas es convexa. Como
se ilustra en la figura 1.21.
36
Mtodos univariables
2 2
Minimizar f (x) = ( x1 -1) + ( x2 -1)
Sujeta a g1 (x ) = 1- x1 - x2 0
g 2 (x ) = x2 - 0.5 x1 -1 0
g3 (x ) = x1 - 2 0
g 4 ( x ) = - x2 0
37
Aplicaciones de Programacin no Lineal
Solucin:
si x - x* < d , entonces ( )
f x* < f ( x )
38
Mtodos univariables
( )
f ' x* = 0
(1.13)
39
Aplicaciones de Programacin no Lineal
40
Mtodos univariables
1 2
( ) ( ) ( )
f ( x) - f x* = x - x* f ' x* +
2
(x - x* ) f ''( x* ) +
Si x* da un mnimo, el lado izquierdo es positivo para toda ( x - x* ) pequea.
( x - x* < d ) ( )
y f ' x* debe ser nula por la condicin necesaria (1.13), ya que
el prximo trmino implica un ( x - x* ) y vemos que si en verdad f ( x ) tiene un
2
mnimo en x* , entonces
f '( x) = 0
y
1
) f ''( x* ) + 16 ( x - x* )
2 3
( ) ( ) ( )
f ( x) - f x* = x - x* f ' x* +
2
(
x - x* ( )
f ''' x* +
41
Aplicaciones de Programacin no Lineal
si ( )
f n x* > 0, x* da un mnimo
y para n impar
si ( )
f n x* 0, x* da un punto de silla (1.17)
6
f ( x) = ( x -1)
Solucin:
5
f '( x) = 6( x -1) = 0 x* = 1
.
42
Mtodos univariables
En este momento sera errneo concluir que se tiene un punto de inflexin; para
asegurarse de que puede ser as, se tiene que seguir derivando la funcin hasta
que sta no se anule en el punto crtico; entonces
f 3 ( x) = 120( x -1)
3
( )
f 3 x* = 0
f 4 ( x* ) = 0
2
f 4 ( x) = 360( x -1)
f 5 ( x ) = 720( x -1) f 5 ( x* ) = 0
f 6 ( x ) = 720 f 6 ( x* ) = 6! > 0
*
Definicin 1.23 f (x) tiene un mnimo local en x si existe una d>0
tal que para x - x* < d entonces f (x) f (x* ) .
*
Definicin 1.25 Si f (x) f (x* ) se dice que x es un mnimo dbil,
si f (x) > f (x* ) se dice que x*es un mnimo fuerte.
43
Aplicaciones de Programacin no Lineal
( )
f x* = 0
(1.18)
T
y entonces el signo de f (x) - f (x* ) queda determinado por el de (x - x* ) H (x* )(x - x* ) .
*
As, una condicin suficiente para un mnimo en x es que
T
(x - x* ) H (x* )(x - x* ) 0 (1.19)
*
Para un mximo en x las condiciones necesarias y suficientes son:
( )
f x* = 0 (1.20a)
T
(x - x* ) H (x* )(x - x* ) 0 (1.20b)
44
Mtodos univariables
Conclusin:
( )
H x*
Si es x* un mnimo fuerte.
positiva definida, es
H (x* )
Si es x* un mnimo dbil.
positiva semidefinida, es
H (x* )
Si es x* un mximo fuerte.
negativa definida, es
H (x* )
Si es x* un mximo dbil.
negativa semidefinida, es
H (x* )
Si es x* un punto de silla.
indefinida, es
45
Aplicaciones de Programacin no Lineal
4
f (x) = ( x2 - x1 ) + 8 x1x2 - x1 + x2 + 3
Solucin:
3
-4( x2 - x1 ) + 8 x2 -1 0
f (x) = = = 0
4( x2 - x1 ) + 8 x1 + 1 0
3
2
-12( x2 - x1 ) + 8
2
12( x2 - x1 )
H (x) =
2 2
-12( x2 - x1 ) + 8 12( x2 - x1 )
46
Mtodos univariables
evaluada en los puntos crticos el lector puede verificar por los determinan-
tes de los menores principales o los valores propios de las matrices que x1* y
x*2 son mnimos fuertes y que x3* es un punto de silla. Por ltimo, evaluando en la
funcin objetivo, se tiene
( )
f x1* = 0.943 y ( )
f x*2 = 2.926
*
de lo que se concluye que x1 es un mnimo fuerte global y x*2 es un mnimo
fuerte local (vase la Figura 1.24 para este problema).
47
Aplicaciones de Programacin no Lineal
(
f (x) = 0.1 x12 + x1x2 + x22 ( x1 - 2 x2 ) ) 2
Solucin:
1 -1
0
x1* = ,
x*2 = 1 y
x*3 = 1
0 -
2 2
1.4 -2.8
( )
H x* = x22
-2.8 5.6
48
Mtodos univariables
f ( x) = ax 2 + bx + c
( )
f ' x* = 0 2ax* + b = 0
b
\ x* = -
2a
( )
f '' x* > 0 2a > 0 a > 0
por lo tanto,
b es mnimo si a > 0
x* = - ;
2a es mximo si a < 0 (1.21)
49
Aplicaciones de Programacin no Lineal
f (x) = c + xT b + xT Ax
( )
f x* = 0
entonces
( )
f (x) = c + xT b + xT Ax ( )
donde
c = 0 , ( )
xT b = b y ( ) (
xT Ax = A + AT x )
(
f (x) = b + A + AT x )
50
Mtodos univariables
-1
(
x* = - A + AT ) b (1.22)
T
( )
H (x ) = T f (x ) = bT + xT A + AT
( ) ( T
)
= 0 + A + A = A + A
T
( )
H x* = A + AT (1.23)
-1 -1 -1
( A + AT ) (
= A + AT ) ( ) HH-1
I = A + AT
-1
= ( A + AT ) ( A + AT ) H-1 = IH-1 = H-1
por lo que
-1
(
H-1 = A + AT ) (1.24)
51
Aplicaciones de Programacin no Lineal
x* = -H-1b (1.25)
Se deja como ejercicio al lector mostrar que se llega al mismo resultado (Ec.
1.25), si la matriz A de la funcin cuadrtica es simtrica.
Concluyendo:
( )
H x*
Si es positiva definida, tambin lo es .
H (x* )
Si es ( )
H-1 x* en consecuencia
positiva definida, tambin lo es y
x *
es positiva definida y es un mnimo fuerte.
*
Si x
es positiva semidefinida, es un mnimo dbil.
*
x
Si es negativa definida o semidefinida entonces es un m-
ximo fuerte o dbil respectivamente.
*
Finalmente, si x
es indefinida entonces es un punto de silla.
1
b) f (x) = x12 - 2 x1x2 + 2 x22
2
1
c) (
f (x) = x12 - 2 x1x2 - x22 -1
2
)
52
Mtodos univariables
Solucin:
Se deja como ejercicio al lector, mostrar que el problema del inciso a) tiene un
mnimo fuerte como se muestra en la figura 1.26, el del inciso b) tiene un nmero
infinito de mnimos dbiles, figura 1.27 y en el inciso c) se tiene un punto de silla,
figura 1.28. .
2 2
Figura 1.26 Contornos de la funcin f (x) = x1 - x1x2 + x2 mostrando el mnimo fuerte.
53
Aplicaciones de Programacin no Lineal
1
Figura 1.27 Contornos de la funcin f (x) = 2 x12 - 2 x1x2 + 2 x22 mostrando
un mnimo dbil, la lnea que pasa por el origen contiene a todos los mnimos.
54
Mtodos univariables
1 2
2
( )
Figura 1.28 Contornos de la funcin f (x) = x1 - 2 x1x2 - x2 -1
2
mostrando el punto de silla.
Problemas
1.1 Un cartel debe contener 300 cm2 de texto impreso con mrgenes superior e
inferior de 6 cm y 4 cm en los laterales. Encuentre las dimensiones del cartel que
minimizan el rea total.
55
Aplicaciones de Programacin no Lineal
1.2 Una caja con base cuadrada y sin tapa debe retener 1000 cm3. Determine las
dimensiones que requieren el menor material para construir la caja.
1.3 Un granjero tiene 300 m de malla para cercar dos corrales rectangulares igua-
les y que comparten un lado de la cerca. Halle las dimensiones de los corrales
para que el rea cercada sea mxima.
1.5 Halle el volumen del cilindro circular recto ms grande que puede inscribirse
dentro de una esfera de radio R.
1.7 Se desea construir un recipiente cilndrico de metal con tapa que tenga una
superficie total de 100 cm2. Encuentre las dimensiones de modo que tenga el
mayor volumen posible.
1.8 Inscribir en una esfera de radio 1 m, un cilindro circular que tenga: a) volumen
mximo y b) rea lateral mxima. En ambos casos encuentre las dimensiones,
radio de la base y altura.
1.9 Un alambre de 100 cm. de longitud, se corta en dos partes formando con una de
ellas un crculo y con la otra un cuadrado. Cmo debe cortarse el alambre para que:
56
Mtodos univariables
1.11 El trabajo terico para un compresor adiabtico de dos etapas donde el gas
se enfra a la temperatura de entrada entre las etapas est dado por
( k 1) / k ( k 1) / k
kp1V1 p2 p3
=W 2+
k 1 p1 p2
donde k = C p / Cv = 1.4
p1 = presin a la entrada = 1 atm
p2 = presin de la etapa intermedia
p3 = presin a la salida = 4 atm
V1 = volumen de entrada
57
CAPTULO 2
Mtodos univariables
2.1 Introduccin
Las funciones ms simples con las que se inicia el estudio de los mtodos de opti-
mizacin no lineal son las funciones de una sola variable. Estas funciones suelen
llamarse funciones univariadas o unidimensionales porque slo dependen de una
variable independiente. Aunque la minimizacin de funciones unidimensionales es
en s misma de importancia prctica, el rea principal de aplicacin de estas tcni-
cas en el contexto de la optimizacin es su uso como una herramienta auxiliar para
abordar de manera eficiente subproblemas de minimizacin multidimensionales.
2.2 Errores
e = x - x* (2.1)
61
Aplicaciones de Programacin no Lineal
*
El error absoluto no es ms que la distancia entre el valor exacto x y el valor
aproximado x, mientras que el error relativo mide el error entendido como una
fraccin del valor exacto. Por lo general, interesa el error absoluto y no el error
relativo; pero cuando el valor exacto de una cantidad es muy pequeo o muy
grande, los errores relativos son ms significativos
Rapidez de convergencia
*
Definicin 2.2 Sea la sucesin {x k } convergente a x . Se denomina
orden de convergencia de {x k } como al mximo de los nmeros posi-
tivos p que satisfagan que *
x k +1 - x
0 lim = b < (2.3)
k * p
xk - x
62
Mtodos univariables
*
Aqu x k es el punto alcanzado en la k-sima iteracin y x es el mnimo. La cons-
tante (0 b < 1) se conoce como la rapidez (tasa o razn) de convergencia.
Las tasas de convergencia rpidas estn asociadas con valores grandes de p y
valores pequeos de b . El caso p =1 se denomina rapidez de convergencia li-
neal y la tasa de primer orden ms rpida posible se denomina superlineal que
es cuando b = 0 b 0 . El caso p = 2 se denomina rapidez de convergen-
cia cuadrtica, p = 3 es cbica, etc. Debe observarse que el valor de p depende
del algoritmo, mientras que el valor de b depende de la funcin que est minimi-
zndose.
g= A i
A- 1
i (2.4)
donde
donde i = ,1, 2, e (de espectral )
Una definicin muy usual del nmero de condicin est dada en trminos de
la norma espectral de la matriz A; luego
g= A e
A-1 = lmx lmx
'
e
i
63
Aplicaciones de Programacin no Lineal
puede mostrarse (se deja al lector como ejercicio) que el valor propio ms grande
de A-1 es igual al recproco del valor propio ms pequeo de A, es decir
' 1
lmx =
lmn
de manera que
lmx
g=
lmn
mn {llii}} y llmn
lmn==mx
donde lmx mn = mn {{llii}} son los valores propios ms grande y ms
= mn
ii i
pequeo de la matriz A. . Si A representa a la matriz hessiana H de una funcin,
entonces lmx y lmn son los valores propios mximo y mnimo de la matriz hessia-
na en el mnimo, y g es un ndice de la razn de la mxima a la mnima curvatura
en dos direcciones en el mnimo. Para varios algoritmos, a mayor g corresponde
una mayor b y ser ms difcil realizar la minimizacin.
Una funcin objetivo con un valor bastante grande de g causa problemas signi-
ficativos y se dice que est mal condicionada, mientras que una funcin con un
valor relativamente pequeo de g se dice que est bien escalada. Por ejemplo,
en un problema mal condicionado los contornos de la funcin alrededor del mni-
mo son elipses muy aplanadas, pero en un problema bien escalado los contornos
son casi circulares.
64
Mtodos univariables
1
a) xk = 1 +
2k
1
b) xk = 1 +
k!
Solucin:
3 5 9
x0 = 2, x1 = = 1.500, x2 = = 1.250, x3 = = 1.125,
2 4 8
de manera que
1 1
lim xk = lim 1 + k = lim 1 + lim k = 1 + 0 = 1
k k 2 k k 2
\ x* = 1
1
p=
Usando la definicin 2.2 y suponiendo que , se tiene
2
1
xk +1 - x* 1+ -1
2 k +1 2k /2 2
lim = lim = lim = lim = 0<
k 1/2 k 1
1/2 k 2k +1 k 2k /2
xk - x* 1 + k -1
2
65
Aplicaciones de Programacin no Lineal
1
xk +1 - x * 1+ -1
2 k +1 2k 1 1
lim = lim = lim k +1 = lim = <
k xk - x* k 1 k 2 k 2 2
1 + k -1
2
xk +1 - x* 2 2k
2 k lim 2k
lim = lim = lim = k = =
k *2 k 2k +1 k 2 lim 2 2
xk - x k
en general,
0, p <1
| xk +1 x* |
1
lim = = , p 1
k | x x* | p
k 2
+, p >1
3 7 25
x0 = x1 = 2, x2 = = 1.500, x3 = = 1.166, x4 = = 1.041,
2 6 24
66
Mtodos univariables
de manera que
1 1
lim xk = lim 1 + = lim 1 + lim = 1 + 0 = 1
k k k ! k k k !
\ x* = 1
p = 1 se tiene
Usando la definicin 2.2 y suponiendo que ,
1
* 1+ -1
xk +1 - x (k + 1)! k! 1
lim = lim = lim = lim = 0<
k xk - x* k 1 k ( k + 1)! k k + 1
1 + -1
k!
xk +1 - x* (k !)
2
k! lim k !
lim = lim = lim = k
k 2 k ( k + 1)! k k + 1 lim (k + 1)
xk - x* k
67
Aplicaciones de Programacin no Lineal
Solucin:
2 0
H (x) =
0 2
l1 = l2 = 2 = lmx = lmn
l 2
\ g = mx = = 1
lmn 2
200 0
H (x) =
0 2
68
Mtodos univariables
x n - x*
en = x n - x* e y rn = e
*
x
69
Aplicaciones de Programacin no Lineal
*
donde x n es el punto alcanzado en la n-sima iteracin, x es el mnimo y
e > 0 es la magnitud de una cantidad pequea que suele denominarse tolerancia
y que indica un lmite en el tamao que debe tener el error. Sin embargo, como
*
no se conoce a priori el valor de x, entonces se elige una estimacin del error a
travs de la comparacin entre dos iteraciones sucesivas en el valor de x,ncomo
se establece a continuacin:
en = x n - x n-1 e (2.5)
x n - x n-1
rn = e
xn (2.6)
f (x n ) - f (x n-1 ) e
(2.7)
donde e es una tolerancia predeterminada. sta puede ser constante, por ejem-
plo, e = 0.0001, o puede ser una fraccin del valor de la funcin objetivo en el punto
x0 , por ejemplo, e = 0.001 f (x0 ) , donde el valor absoluto se toma para consi-
derar el posible valor negativo de la funcin objetivo.
70
Mtodos univariables
f (x n ) - f (x n-1 )
e
{
mx f (x n ) ,10-10 } (2.8)
f (x n ) e
(2.9)
71
Aplicaciones de Programacin no Lineal
f '( x) = 0 (2.10)
En esta seccin se analizarn los mtodos que aprovechan el hecho de que una
funcin f '( x ) cambia de signo en la vecindad de una raz. stas tcnicas se
conocen como mtodos que usan intervalos porque se necesita de dos valores
iniciales para la bsqueda subsecuente de la raz. Como su nombre lo indica, estos
valores deben encerrar a la raz. Los mtodos descritos sobre este punto emplean
diferentes estrategias para reducir sistemticamente el tamao del intervalo tambin
conocido como intervalo de incertidumbre y as converger en la respuesta correcta.
Se ver que en el desarrollo de los mtodos que usan intervalos se supuso que en
un principio se conoce el intervalo que contiene a la raz.
72
Mtodos univariables
Mtodos grficos
73
Aplicaciones de Programacin no Lineal
[ a, b ] = [0.2,1]
(b) [ a, b ] = [0,5]
Figura 2.1 En (a) y (b) existe un nmero impar de races si f '(a ) y f '(b)
tienen signos opuestos.
74
Mtodos univariables
(a) [ a, b ] = [-1,1.5]
(b) [ a, b ] = [-1,1.5]
75
Aplicaciones de Programacin no Lineal
Mtodo de biseccin
' '
Figura 2.3 Existe un mnimo si ambas pendientes en a y b satisfacen que: f a < 0 y fb > 0
76
Mtodos univariables
' '
Las condiciones por satisfacer en los puntos a y b son que f a < 0 y fb > 0
f a' < 0 fb' < 0 fb > f a
como se ilustra en la figura 2.3, o que , y como se mues-
tra en la figura 2.4,
' '
o bien que f a > 0 , fb > 0 y fb < f a como se ilustra en la figura 2.5. El mto-
do de biseccin parte de un intervalo inicial de incertidumbre [ a0 , b0 ] en el cual
se encuentra una de las races de la funcin f '( x ) = 0 ; es decir, f '( a0 ) y
f '(b0 ) atienen signos opuestos. El mtodo consiste en evaluar la funcin
f '( x ) , acontina y derivable, en el punto medio del intervalo [ a0 , b0 ] , como
f '(a0 )
se ilustra en la figura 2.6. Si aay '( x0 )
faaaaaaatienen signos opuestos, se
[ a0 , b0 ] [ a0 , x0 ] ; si no se satisface la condicin de
reducir el intervalo deaaaaaaaaaaaaaaa
[ a0 , b0 ] [ x0 , b0 ]
los signos opuestos, entonces se reducir el intervalo deaaaaaaaaaaaaaaaya
que la raz buscada se encuentra dentro de este nuevo intervalo. Se repite
este proceso hasta lograr que el intervalo sea ms pequeo que una toleran-
cia prefijada, y el ltimo valor xnaaser una buena aproximacin de la raz.
Este procedimiento tiene la garanta de que converge a la raz hasta una pre-
77
Aplicaciones de Programacin no Lineal
cisin deseada una vez que la raz haya sido acotada y que la funcin sea
unimodal en el intervalo de inters. Si la funcin no es unimodal, la condicin
f '(a0 ) f '(b0 ) < 0 satisface siempre que el intervalo tenga un nmero impar
aaaaaaaaaaaaaaaaase
de races, en este caso, el mtodo de biseccin encontrar una de las races se-
paradas en el intervalo dado y tal vez ser no deseada.
78
Mtodos univariables
El mtodo de biseccin tambin tiene problemas con las races dobles (o mlti-
ples) debido a que estas funciones tocan el eje x de manera tangencial en es-
tas races; otro defecto del mtodo de biseccin es que ste puede atrapar una
singularidad como si fuera una raz, debido a que dicho mtodo no reconoce la
diferencia entre una raz y una singularidad (un punto singular es aquel en el que
el valor de la funcin tiende a infinito, por ejemplo que la derivada no esta definida
en el punto extremo de una funcin continua). Sin embargo, una gran ventaja es
que tambin es til para funciones no analticas; en resumen, se puede decir que
es un mtodo robusto.
79
Aplicaciones de Programacin no Lineal
ak + bk
1. xk =
2
2. Si bk - xk e entonces xk x* y terminar.
En otro caso,
ak +1 = xk , bk +1 = bk
Fin del si
4. Regresar al paso 1.
80
Mtodos univariables
1
bn - an = (bn-1 - an-1 )
2
luego
1 1 1
bn - an = (bn-1 - an-1 ) = 2 (bn-2 - an-2 ) = 3 (bn-3 - an-3 ) =
2 2 2
por lo que
1
bn - an = (b0 - a0 ) , n 0 (2.11)
2n
donde (b0 - a0 ) representa la longitud del intervalo original con el que se inici.
*
[ an , xn ] o [ xn , bn,] se sabe que el error de orden n
Ya que la raz x esta entreaaaaaa
esta dado por
1
en = xn - x* xn - an = bn - xn = (bn-1 - an-1 )
2
1
en = xn - x* (b0 - a0 )
2n (2.12)
81
Aplicaciones de Programacin no Lineal
*
Esta ecuacin expresa el error lmite y muestra que xn converge a x si n
Para mostrar cuntas iteraciones sern necesarias para que xn se aproxime a x*
con la precisin deseada, se necesita que
en e
1
(b0 - a0 ) e
2n
por tanto,
b - a0
ln 0
e
n
ln 2 (2.13)
Solucin:
Aplicando (2.13)
b - a0
ln 0
e
n = 6.64
ln 2
82
Mtodos univariables
1
en = xn - x* = (b0 - a0 )
2n
*
aplicando la ecuacin (2.3), el mtodo de biseccin converge linealmente a x
con rapidez de convergencia de b = 0.5. Estas predicciones tericas se pueden
verificar con los resultados de problemas resueltos y se dejan como ejercicio al
lector.
Finalmente, otros mtodos que usan intervalo son los mtodos de regula falsi y
regula falsi modificada por mencionar algunos y los cuales estn fuera del alcan-
ce de este libro.
Mtodos abiertos
En contraste con los mtodos anteriores, los mtodos abiertos se basan en fr-
mulas que requieren de un solo valor x o un par de ellos, pero que no necesa-
riamente encierran la raz. Como tales, algunas veces divergen y se alejan de la
*
raz x a medida que crece el nmero de iteraciones; sin embargo, cuando stos
convergen, en general lo hacen mucho ms rpido que los mtodos que usan
intervalos, entre estos mtodos se encuentra el mtodo de la secante, Newton-
Raphson, Newton modificado, Halley, Chebyshev, entre otros.
83
Aplicaciones de Programacin no Lineal
Mtodo de Newton-Raphson
Para la descripcin de este mtodo considrese las grficas (a) y (b) de la figura
2.7. Por lo general, se inicia con una estimacin de x*que se denota con x0; para
mejorar esta estimacin, considrese la lnea recta que es tangente a la grfica
*
de f '( x ) en el punto ( x0 , f '( x0 )) ; si x0 esta cerca de x , esta lnea tangente
f '( x)
casi coincidir con la grfica de para x
puntos alrededor x* Entonces
de .
*
si x1 es la raz de la lnea tangente, x1 ser casi igual a x . En general, para deter-
minar una frmula para xn+1 , considrese la pendiente de la lnea tangente.
Usando la derivada f ''( x ) de f '( x ) , se sabe del clculo elemental que la pen-
diente de la tangente en ( xn , f '( xn )) es f ''( xn ) ; esto gua a la ecuacin
0 - f '( xn )
tan qn = f ''( xn ) =
xn+1 - xn
y , en consecuencia,
f '( xn ) n = 0,1,2,...
xn+1 = xn - ,
f ''( xn ) (2.14)
84
Mtodos univariables
85
Aplicaciones de Programacin no Lineal
f '( xk )
1. xk +1 = xk -
f ''( xk )
3. Regresar al paso 1.
1 * 2
( ) ( )
f ' x* = f '( xn ) + x* - xn f ''( xn ) +
2
(
x - xn ) f '''( xn ) +
86
Mtodos univariables
obsrvese que
obtener
( )
f ' x* = 0 por suposicin, y luego se divide por f ''( xn ) para
f '( xn ) 2 f '''( xn )
0=
f ''( xn )
( ) (
+ x* - xn + x* - xn ) 2 f ''( xn )
+
Como
f '( xn )
= xn - xn+1
f ''( xn )
entonces
2 f '''( xn )
0 = xn - xn+1 + x* - xn + x* - xn ( ) 2 f ''( xn )
+
2 f '''( xn ) 2 f '''( xn )
(
en+1 = xn+1 - x* = xn - x* ) 2 f ''( xn )
(
+ xn - x* ) 2 f ''( xn )
f '''( xn )
donde M= . Tomando el lmite cuando n , resulta
2 f ''( xn )
lim
en+1
= lim
xn+1 - x*
=
( ) = M*
f ''' x*
en2 2 f ''( x* )
n n 2
xn - x*
87
Aplicaciones de Programacin no Lineal
Minimizar f ( x)
sujeta a a0 x b0 (2.15)
*
Debido a que la posicin exacta del mnimo x de f ( x )sobre[ a0 , b0 ] no se conoce,
este intervalo se llama intervalo de incertidumbre. Durante el procedimiento de
bsqueda hacia el mnimo, pueden excluirse porciones de este intervalo que no
contengan al mismo; entonces se dice que se ha reducido el intervalo de incerti-
dumbre. En general,[ ai , bi ] para i = 0,..., n , se conoce como intervalo de incer-
*
tidumbre si un punto mnimo x cae en [ ai , bi ] aunque su valor exacto no se co-
nozca.
88
Mtodos univariables
Teorema 2.1
Del teorema que se acaba de enunciar, bajo unimodalidad estricta se tiene que si
f ( x1 ) > f ( x2 ) el nuevo intervalo de incertidumbre es [ x1, b;] pero si f ( x1 ) a f ( x2 )
f ( x1 ) f ( x2 ) entonces el nuevo intervalo de incertidumbre es [ a, x2 ] .
89
Aplicaciones de Programacin no Lineal
I 0 b0 - a0
RR =
I n bn - an (2.16)
I0 In
donde , son los intervalos inicial y final de incertidumbre respectivamente, y
ai y bi para i = 0,..., n son los puntos extremos del i -simo intervalo. Como
puede observarse, RR es una funcin montonamente creciente con el nmero
n de ensayos.
90
Mtodos univariables
1 I
h = n
RR I 0
91
Aplicaciones de Programacin no Lineal
I1 = I 2 + I 3
I2 = I3 + I4
Cuando se han realizado j evaluaciones, entonces por el mismo razonamiento,
se tiene
I j-1 = I j + I j +1 (2.18)
I1 I 2 I 3
= = == t
I2 I3 I4
92
Mtodos univariables
en general
I j-1 Ij I j +1
= = == t
Ij I j +1 I j +2 (2.19)
I j-1 I j +1
=1+
Ij Ij
y de la ecuacin (2.19),
1
t =1+ t 2 - t -1 = 0
t
1 5
t=
2
1+ 5
t= 1.618
2
93
Aplicaciones de Programacin no Lineal
I0
=t
I1
I 0 I 0 I1
= = t2
I 2 I1 I 2
I0
= t3
I3
I0
= tn
In
por lo tanto,
I n = t -n I 0 (2.20)
1 n n
h = = (0.618) . (2.21)
t
94
Mtodos univariables
De esta manera, para reducir el intervalo final de incertidumbre al 1% del valor ori-
ginal son necesarias n = 9.56 10 iteraciones u 11 evaluaciones de la funcin.
Para entender el mecanismo de este mtodo, supngase que se tiene el intervalo
I 0 = (b0 - a0 ) como se muestra en la figura 2.11.
de incertidumbre ,
Si se consideran los resultados de las dos evaluaciones de la funcin, puede de-
terminarse que intervalo se investigar posteriormente. Este intervalo contendr
uno de los puntos previos y el prximo punto ser puesto de manera simtrica con
respecto a ste, y as se continuar sucesivamente.
1
I1 = I0
t
95
Aplicaciones de Programacin no Lineal
Rapidez de convergencia
I k +1 t -k -1I 0 1
= -k =
Ik t I0 t
y, por lo tanto,
I k +1 1 1
lim = lim = = 0.618
k I k k t t
I 1
lim k + por consiguiente, el mtodo
Puede mostrarse sin dificultad que ;
k I 2
k
de la seccin urea converge linealmente con rapidez de convergencia b 0.618 .
96
Mtodos univariables
tomar ak +1 = ak , bk +1 = d k , d k +1 = ck ,
ck +1 = ak +1 + (1 -1/ t )(bk +1 - ak +1 ) , f d = f c ,
f c = f (ck +1 )
ak +1 = ck , bk +1 = bk , ck +1 = d k ,
d k +1 = bk +1 - (1 -1/ t )(bk +1 - ak +1 ) , f c = f d ,
f d = f (d k +1 ) .
Fin si
2. Si bk +1 - ak +1 e , entonces tomar
x* = ck +1 si fc < f d
o x* = d k +1 si f d < f c y terminar.
Fin si
3. Tomar k = k + 1 y regresar a 1.
97
Aplicaciones de Programacin no Lineal
Por ltimo, existe una diversidad de mtodos que comparan los valores de la
funcin objetivo y que usan el concepto de intervalo de incertidumbre como los
mtodos de bsqueda uniforme, dicotmico secuencial, triseccin, Fibonacci, etc.
Supngase que se conocen los valores de una funcin f ( x ) en tres puntos dis-
tintos a , b y c (los extremos y un punto del intervalo de incertidumbre) como
f a = f (a ) , fb = f (b) y f c = f (c) respectivamente; entonces se puede a-
proximar f ( x ) por una funcin cuadrtica de la forma
p ( x) = a x 2 + b x + g (2.22)
a 2 a 1a p f
2 a a
b b 1b = pb = fb
2
c 1 g pc f c
(2.23)
c
98
Mtodos univariables
(c - b) f a + (a - c) fb + (b - a) fc
a=
D
b=
(b 2 - c 2 ) f a + (c 2 - a 2 ) f b + ( a 2 - b 2 ) f c
D
bc (c - b) f a + ac (a - c) fb + ab (b - a ) f c (2.24)
g=
D
b
x* = - si, a>0
2a
es decir,
p '( x) = 2a x + b = 0 b
da x* = -
2a
*
x =
2
( 2
) 2
( 2
1 b - c f a + c - a fb + a - b f c )2 2
( )
2 (b - c) f a + (c - a) fb + (a - b) fc (2.25)
99
Aplicaciones de Programacin no Lineal
*
Observe que x cae en [ a, b ] si f c < f a y f c < fb . La funcin objetivo se evala en
x* y uno de los puntos extremos a o b debe reemplazarse por x* para empezar
la prxima iteracin de manera que los 3 nuevos puntos estn dispuestos sobre
f ( x) La figura 2.12 muestra que no siempre
un intervalo que acote el mnimo de .
el punto con el mayor valor de la funcin es el apropiado para descartarse.
100
Mtodos univariables
101
Aplicaciones de Programacin no Lineal
1. x =*
2
( 2
)2 2
( 2
) 2
(
1 bk - ck f a + ck - ak fb + ak - bk f c f = f x*
, x
) ( )
2 (bk - ck ) f a + (ck - ak ) fb + (ak - bk ) f c
tomar ak +1 = ak , bk +1 = ck , ck +1 = x* , fb = f c , f c = f x .
Pero si x* > ck y f x > fc , entonces
tomar ak +1 = ak , bk +1 = x* , ck +1 = ck , fb = f x .
Pero si x* < ck y f x > fc , entonces
tomar ak +1 = x* , bk +1 = bk , ck +1 = ck , f a = f x .
En otro caso,
tomar ak +1 = ck , bk +1 = bk , ck +1 = x* , f a = f c , fc = f x .
Fin si
Fin si
4. Tomar k = k + 1 y regresar a 1.
102
Mtodos univariables
Problemas
2.2 Se lanza un cuerpo hacia arriba con velocidad inicial 40 m/s, Calcule cul
g 10 m/s? La
es la mxima altura que alcanzar si la aceleracin gravitacional =
ecuacin que describe la altura en funcin del tiempo es:
g 2
h (t=
) vt t
2
2.3 La energa potencial V ( r ) de un gas, esta dada por la expresin del poten-
cial de Lennard-Jones,
12 6
V (r ) =
4
r r
6 12 63 6 12 6
6.19
= x 10
= kJ (A)V (/donde
3 6
)=
rmol 4
4
,A son
6.19
=constantes, V (/rmol
x 10 kJ (A) 6
tales )que
4 4,
= > 0.
r r r r
Para argn A
= 6.19
= x 10 kJ (A) / mol 4 y
3 6 6
=B 9.58
= x 106 kJ (A )12 / mol 4 12
103
Aplicaciones de Programacin no Lineal
g
y0 + ( tan 0 ) x
y= x2
2v0 cos 2 0
2.5 Hay que separar una mezcla de benceno y tolueno en un reactor flash. A qu
temperatura deber operarse el reactor para obtener la mayor pureza de tolueno
xT La presin en el reactor es de 800 mm Hg. Las
en la fase lquida (maximizar )?
unidades en la ecuacin de Antoine son mm Hg y C para presin y temperatura,
respectivamente.
xB Psat , B + xT Psat ,T =
P
1211
log10 ( P=
sat , B ) 6.905
T + 221
1344
log10 ( P=
sat ,T ) 6.953
T + 219
104
Mtodos univariables
1 0.6 0.6
1
=Costo C + 6
(1 x ) x
105
CAPTULO 3
Mtodos multivariables
3.1 Introduccin
Minimizar f (x + ad)
sujeta a aI (3.1)
2 2 2
Ejemplo 3.1 Dada la funcin f (x) = ( x1 -1) + ( x2 - 2) + ( x3 - 3) y el punto
T
x = (4,3,2) , encuentre a* para minimizar f (x + ad) en la direccin d = (1,1,1)T.
109
Aplicaciones de Programacin no Lineal
Solucin:
Se tiene que
4
1 4 + a
x + ad = 3 + a 1 = 3 + a
2 1 2 + a
2 2 2
f (x + ad) = (4 + a -1) + (3 + a - 2) + (2 + a - 3)
2 2 2
= (a + 3) + (a + 1) + (a -1) = 3a 2 + 6a + 11 = f (a )
f '(a ) = 6a + 6 = 0 a* = -1
( )
Por lo tanto, f x + a*d = 8 es el valor mnimo; cualquier otro valor de a incre-
menta el valor de f (x + ad ) .
110
Mtodos multivariables
2
(
1). La funcin de Rosenbrock: f (x) = 100 x2 - x12 ) 2 T
+ (1 - x1 ) con x* = (1,1) ,
la cual se ilustra en la Figura 3.1.
2 2 4 4
f (x) = ( x1 + 10 x2 ) + 5( x3 - x4 ) + ( x2 - 2 x3 ) + 10( x1 - x4 )
T
con x* = (0,0,0,0) .
4
(
f (x) = e x1 - x2 ) 6
+ 100( x2 - x3 ) + tan 4 ( x3 - x4 ) + x18 + ( x4 -1)
2
T
con x* = (0,1,1,(1 np )) .
111
Aplicaciones de Programacin no Lineal
T
Figura 3.1 Contornos de la funcin de Rosenbrock, x* = (1,1) .
112
Mtodos multivariables
Dada una funcin f (x) , los (n+1) puntos x1, x 2 ,, x n+1 y la tolerancia e .
f (xl ) = mn f (xi )
1in +1
f (x h ) = mx f (xi )
1in +1
n+1
1
x0 =
n i=1
xi
ih (3.2)
113
Aplicaciones de Programacin no Lineal
x r - x0 = a (x0 - x h ) (3.3)
es decir,
x r = (1 + a ) x0 - ax h (3.4)
4) Se compara fr con fl .
114
Mtodos multivariables
xe - x0 = g (x r - x0 ) (3.5)
es decir,
xe = g x r + (1 - g ) x0 (3.6)
115
Aplicaciones de Programacin no Lineal
5) Se comparan fr y fh .
xc - x0 = b (x r - x0 ) (3.7)
es decir,
xc = b x r + (1 - b ) x0 (3.8)
116
Mtodos multivariables
xc - x0 = b (x h - x0 ) (3.9)
es decir,
xc = b x h + (1 - b ) x0 (3.10)
6) Se comparan fc y fh .
117
Aplicaciones de Programacin no Lineal
b) Si f c > f h , parecera que todos los esfuerzos por hallar un valor de f < fh
fallaron, de manera que se va al paso 7.
1
xi = xl + ( xi - xl ) (3.11)
2
es decir ;
1
xi = ( xi + xl ) (3.12)
2
118
Mtodos multivariables
s <e (3.13)
n+1
1 2
2
s =
n + 1 i=1
(fi - f )
(3.14)
119
Aplicaciones de Programacin no Lineal
donde
n+1
1
f =
n + 1 i=1fi (3.15)
Si s < e , todos los valores de la funcin estn muy cercanos y de esta manera
se puede decir con optimismo que todos los puntos estn muy cerca del mnimo
xl . Este criterio de convergencia suena razonable, aunque Box (1965) sugiere
que ste se tome en consideracin como una prueba de seguridad. Por ltimo,
Nelder y Mead (1964) recomiendan a = 1.0 , b = 0.5 y g = 2.0 como valo-
res de los factores de reflexin, contraccin y expansin respectivamente, reco-
mendacin basada en ensayos con muchas combinaciones diferentes y donde
parece que el mtodo trabaja con eficiencia. Paviani (1969) recomend como
eleccin de g y b los siguientes rangos de valores:
2.8 g 3.0
0.4 b 0.6
xi +1 = x1 + he i , i = 1,..., n (3.16)
120
Mtodos multivariables
xi +1 = x1 + he i , para i = 1,..., n ,
2. Calcular:
f (x g ) = mximo f (xi ) ,
1in +1
ih
f (x h ) = mximo f (xi ) .
1in +1
121
Aplicaciones de Programacin no Lineal
4. Calcular el centroide:
n+1
1
x0 =
n x j
j =1
j h
5. Calcular x r = (1 + a ) x0 - ax h ; f r = f (x r ) .
6. Si f r < fl , entonces
Calcular xe = d x r + (1 - d ) x0 ; f e = f (xe ) .
Si f e < f r , entonces
tomar x h = xe ; f h = f e ;
en otro caso,
tomar xh = xr ; fh = fr .
Fin del si.
En otro caso
Si f r f g , entonces
tomar xh = xr ; fh = fr .
En otro caso
Si fr < fh , entonces
calcular xc = b x r + (1 - b ) x0 ; f c = f (xc ) .
122
Mtodos multivariables
Si f r < fc , entonces
xi + xl
xi = ; f i = f ( xi ) .
2
En otro caso,
tomar x h = xc ; f h = f c .
Fin del si.
En otro caso,
calcular xc = b x h + (1 - b ) x0 ; f c = f (xc ) .
Si f h < f c , entonces
xi + xl
xi = ; f i = f ( xi ) .
2
En otro caso,
tomar x h = xc ; f h = f c .
Fin del si.
Fin del si.
Fin del si.
Fin del si.
n+1
1
7. Calcular f =
n + 1 i=1
fi .
123
Aplicaciones de Programacin no Lineal
n+1
1 2
8. Calcular
2
s =
n + 1 i=1( fi - f ) .
9. Si s e, entonces
tomar xl = x* y terminar.
2 2
Ejemplo 3.2 Halle el mnimo de f (x) = 3( x1 -1) + 10( x2 - 2 x1 ) usando el al-
T
goritmo 3.1 e iniciando en x = (0,3) , con e = 0.01 .
Solucin:
( )
Usando el algoritmo 3.1 el mnimo fue x*T = (1.00,2.00) , donde f x* = 0.00 .
Este mtodo lleg rpido a la solucin; lo hizo en la primera iteracin, pero como
el simplex era todava muy grande el criterio de convergencia no se pudo satisfa-
k = 10 La figura 3.7 muestra la evolucin del
cer sino hasta la dcima iteracin .
simplex de este ejemplo hasta el punto 7.
124
Mtodos multivariables
Minimizar f (x)
con x Rn (3.17)
125
Aplicaciones de Programacin no Lineal
orden convergen ms rpido que los mtodos de bsqueda directa. Sin embargo,
en la prctica los mtodos con derivadas tienen dos problemas principales para
su realizacin: primero, en los problemas con un nmero modestamente grande
de variables resulta muy laborioso o imposible dar las funciones analticas para
las derivadas necesarias en un algoritmo de gradiente o de segundas derivadas;
aunque la evaluacin de las derivadas por esquemas de diferencias finitas puede
sustituir el clculo de las derivadas analticas, no se evita la generacin del error
numrico por el uso de estas aproximaciones. Segundo, en principio tambin es
posible usar la manipulacin simblica para desarrollar las derivadas analticas,
pero esto requiere una cantidad relativamente grande de preparacin del pro-
blema por parte del usuario antes de que pueda desarrollarlo en un algoritmo
comparado con las tcnicas de bsqueda directa. Dadas las observaciones an-
teriores, se considerar cmo resolver el problema dado por la ecuacin (3.17)
por algoritmos que hacen uso de primeras y segundas derivadas parciales de
f (x)
1
f (x + diei ) = f (x) + dieTi f (x) + di2eTi H (x)ei +
2
1
= f (x) + di gi (x) + di2hii (x) + (3.18)
2
126
Mtodos multivariables
f (x + diei ) - f (x)
gi (x) =
di (3.19)
1
f (x - di ei ) = f (x ) - di eTi f (x ) + di2eTi H (x ) ei +
2
1
f (x - di ei ) = f (x ) - di gi (x ) + di2 hii (x ) + (3.20)
2
f (x) - f (x - diei )
gi (x) =
di (3.21)
f (x + diei ) - f (x - diei )
gi (x) =
2di (3.22)
127
Aplicaciones de Programacin no Lineal
128
Mtodos multivariables
Solucin:
2 x
f (x) = 1
1
evaluado en x0 da
4
f (x 0 ) =
1
f (x ) = 4.02
, f (x ) = 3.98
y f (x ) = 4.00
0 1.00 0 1.00 0 1.00
129
Aplicaciones de Programacin no Lineal
Observe que para la funcin dada los tres mtodos dan una muy buena aproxi-
macin al gradiente analtico. El mtodo por diferencias centrales da lo mismo
que el gradiente analtico, lo cual comprueba que esta aproximacin es exacta
para funciones cuadrticas. Observe tambin que los tres mtodos son iguales en
g2 (x0 ); esto se debe a que la funcin es lineal en x2, o sea que tambin se com-
prueba que la diferenciacin numrica siempre da gradientes exactos en funcio-
nes lineales.
Solucin:
3 x 2 - 2 6 x 0
f (x) = 1 y H (x) = 1
4 x2 - 3 0 4
evaluada la matriz en x0 da
12 0
H (x0 ) =
0 4
130
Mtodos multivariables
(x ) = 12.06 0.00 , H
H (x ) = 12.0 0.0
(x ) = 11.96 0.00 y H
0
0.00 4.00 0
0.00 4.00 0
0.0 4.0
Observe que para la funcin dada, los tres mtodos dan una muy buena aproxi-
macin a la matriz hessiana analtica. De nuevo el mtodo por diferencias centra-
les da lo mismo que la hessiana analtica.
1
f (x) = a + xT b + xT Hx (3.27)
2
131
Aplicaciones de Programacin no Lineal
Definicin 3.1 Dada una matriz simtrica H , se dice que dos vectores
p y q son ortogonales respecto a H o conjugados respecto a H si
pT Hq = 0. (3.28)
1
f (x) = a + xT b + xT Hx
2
132
Mtodos multivariables
T 1 T
( ) (
f (x) f x* + x - x* ) ( )
f x* +
2
(
x - x* ) H(x* )(x - x* )
Como ( )
f x* = 0 , entonces
1
f (x) c +
2
( ) ( )(
x - x* H x* x - x* ) (3.29)
x1 = x0 + a0p 0 (3.30)
T f (x1 )p 0 = 0 (3.31)
debido a que
n n
d f (a0 ) df (x1 ) f dx1i f
d a0
=
d a0
= x1i d a0
= x1i p0i = T f (x1)p0 = 0
i =1 i =1
133
Aplicaciones de Programacin no Lineal
en el mnimo x1.
x k +1 = x k + ak p k (3.32)
donde
T f (x k +1 )p k = 0 (3.33)
(
f (x k ) = H x k - x* ) (3.34)
para f (x) en la ecuacin (3.29). Por uso repetido de la ecuacin (3.32) despus
de n pasos, se obtiene
y, por lo tanto,
n-1
x n = x j +1 + aipi (3.35)
i = j +1
134
Mtodos multivariables
n-1
pTj H (x n - x )
*
= pTj H (x j+1 - x ) + aipTj Hpi
*
(3.37)
i = j +1
n-1
pTj f x n = pTj f
( ) (x j +1) + aipTj Hpi (3.38)
i = j +1
o bien
n-1
pTj f (x n ) = aipTj Hpi (3.39)
i = j +1
debido a la ecuacin (3.33). Si todos los vectores p 0 , p1,..., p n-1 son mutua-
mente conjugados, tales que
135
Aplicaciones de Programacin no Lineal
entonces
f (x n ) = 0 (3.42)
(
H x n - x* = 0 ) (3.43)
y, por lo tanto,
x n = x* (3.44)
n-1
*
x = aipi + x0 (3.45)
i =0
136
Mtodos multivariables
*
Esto muestra que las ai y, en consecuencia, la solucin x se pueden hallar por
la evaluacin de productos escalares simples. El resultado final es
n-1 T
pi (Hx0 + b)
*
x = x0 - pTi Hpi
pi (3.47)
i =0
*
Este resultado muestra que la expansin para x se puede considerar como el re-
sultado de un proceso iterativo de n pasos en el que se aade ai pi en el i -simo
paso. Visto de esta forma el procedimiento y admitiendo un punto inicial arbitrario,
se obtiene el mtodo bsico de la direccin conjugada. Los mtodos de Fletcher-
Reeves, DFP y BFGS buscarn explotar esta idea.
Ejemplo 3.5
2 2
Minimice f (x) = 4( x1 - 5) + ( x2 - 6) usando direcciones mutuamente con-
* T
( )
jugadas. Esta funcin tiene un mnimo en x = (5,6), donde f x* = 0.0 . Inicie
en x 0 = (8,9) , donde f ( x 0 ) = 45.0 y tome como direcciones de bsqueda
T
T T
e1 = (1,0) e1 e2
e2 = (0,1) Son conjugados los vectores y con
los vectores y .
respecto a la matriz hessiana de ? f (x)
Solucin:
8 0
H (x) =
0 2
Luego,
e1T He 2 = 0
y por tanto e1 y e 2 son vectores mutuamente conjugados y linealmente inde-
T
b = (-40 -12)
pendientes; por otro lado, es el vector de coeficientes de
los trminos lineales, usando la ecuacin (3.47), se tiene
137
Aplicaciones de Programacin no Lineal
n
eTi (Hx 0 + b) e1T (Hx 0 + b) eT2 (Hx 0 + b)
*
x = x0 - eTi Hei
ei = x 0 -
e1T He1
e1 -
eT2 He 2
e2
i =1
por lo tanto,
8 24 1 6 0 5
x* = - - =
9 8 0 2 1 6
No est claro cul es la mejor direccin, pero la direccin opuesta a la del gra-
diente tiene cierto atractivo intuitivo. La direccin del gradiente es la direccin
del ascenso acelerado. As, la direccin opuesta ser la direccin del descenso
acelerado. Esta propiedad puede probarse como sigue: supngase que desde un
punto x nos movemos a un punto cercano x + ad, donde d es alguna direccin y
a alguna longitud de paso. De este modo, nos movemos desde ( x1, x2 ,..., xn ) has-
ta ( x1 + d x1, x2 + d x2 ,..., xn + d xn ) , donde
138
Mtodos multivariables
n
f (x)
df = f (x + d x) - f (x) = xi
d xi (3.49)
i =1
hasta primer orden en las d xi , donde las derivadas parciales estn evaluadas en
x Cmo deben elegirse las sujetas
. di a la ecuacin (3.48) de manera que
df Otra forma de expresar la ecuacin
se obtenga el mayor valor posible para ?
(3.49) es
d (df )
= - T f (x) dx sen q = 0 si y slo si q = 0 180 (3.51)
dq
ahora bien,
d 2 (df )
<0 para q = 0
= - T f (x) dx cos q implica que (3.52)
dq2
> 0
para q = 180
139
Aplicaciones de Programacin no Lineal
.
d = -f (x) (3.53)
f (x + d x) = f (x)
es decir,
x k +1 = x k - a*f (x k ) (3.55)
f (a ) f (x k - af (x k )) (3.56)
*
Esta a puede determinarse usando una de las bsquedas univariadas anterio-
res (biseccin, Newton-Raphson, seccin urea o interpolacin cuadrtica entre
otros mtodos univariables).
140
Mtodos multivariables
1. d k = -f (x k ) .
2. Hallar * que minimiza f (x k + ad k ) .
141
Aplicaciones de Programacin no Lineal
3. Calcular x k +1 = x k + a*d k .
4. Si x k +1 - x k e o f (x k +1 ) e , entonces
*
Tomar x k +1 x y parar.
Fin del si.
5. Tomar k = k + 1 y regresar al paso 1.
2 2
Ejemplo 3.6 Halle el mnimo de f (x) = 3( x1 - 1) + 10( x2 - 2 x1 ) , por el m-
todo de Cauchy iniciando en xT = (0,3) , con e = 0.01 .
Solucin: Usando el algoritmo 3.2 el mnimo hallado con la precisin dada es,
( )
x*T = (1.0002,2.0005) donde f x* = 0.0 . Obsrvese que la convergencia del
mtodo fue rpida (figura 3.8) debido al uso de la bsqueda lineal inexacta, el
k = 3 La figura 3.8 muestra en
nmero total de iteraciones principales fue de .
forma grfica la bsqueda hacia el ptimo.
142
Mtodos multivariables
Mtodo de Newton
Desde otro punto de vista, el mtodo de Cauchy puede interpretarse como una
aproximacin lineal de la funcin f (x). Por tanto, los mtodos de segundas deri-
vadas entre los cuales el ms conocido es el mtodo de Newton, se originan por
una aproximacin cuadrtica de f (x) dada por
T 1 T
f (x) f (x k ) + (x - x k ) f (x k ) + (x - x k ) H (x k )(x - x k ) (3.57)
2
d k x k +1 - x k , (3.58)
por lo que
1
f (x k +1 ) = f (x k ) + dTk f (x k ) + dTk H (x k )d k (3.59)
2
1
' f (x k +1 ) = ' f (x k ) + 'dTk f (x k ) + dTk H (x k )d k
2
luego
0 = f (x k ) + H (x k )d k
143
Aplicaciones de Programacin no Lineal
-1 (3.60)
d k = -H (x k ) f (x k )
-1
x k +1 = x k - H (x k ) f ( x k ) (3.61)
Las desventajas del mtodo de Newton para aplicaciones generales son las si-
guientes:
144
Mtodos multivariables
3. Calcular x k +1 = x k + a*d k .
4. Si x k +1 - x k e o f (x k +1 ) e , entonces
*
Tomar x k +1 x y parar.
Fin del si.
5. Tomar k = k + 1 y regresar al paso 1.
2 2
Ejemplo 3.7 Halle el mnimo de f (x) = 3( x1 -1) + 10( x2 - 2 x1 ) , por el mtodo
de Newton iniciando en xT = (0,3) , con e = 0.01 .
Solucin:
*T
Usando el algoritmo 3.3 el mnimo hallado es x = (1.00,2.00) donde
( )
f x* = 0.0. Obsrvese que la convergencia del mtodo fue en la primera itera-
k = 1 La figura 3.9 muestra
cin, y el nmero total de iteraciones principales fue de .
en forma grfica la bsqueda hacia el ptimo.
145
Aplicaciones de Programacin no Lineal
146
Mtodos multivariables
d 0 = -f 0 (3.62)
x1 = x0 + b0d 0 (3.63)
d1 = -f1 + a0d 0
x 2 = x1 + b1d1 (3.64)
k
d k +1 = -f k +1 + a jd j , k = 0,1,...
j =0
147
Aplicaciones de Programacin no Lineal
Este proceso deja ver que todas las aj son nulas excepto para ak y que
d k +1 = -f k +1 + ak d k (3.65)
2 f k +1 T f k +1f k +1 (3.66)
ak = 2
= T
fk f k f k
T
(f k +1 - f k ) f k +1
(3.67)
ak = T
f k f k
148
Mtodos multivariables
1. m = nj + k .
2. Si k = 0 , entonces
am = 0
En otro caso,
T f mf m
am =
T f m-1f m-1
Fin del si.
3. d m = -f m + amd m-1 .
*
4. Hallar bm que minimiza f ( x m + bmd m ) .
*
5. x m+1 = x m + bm dm .
6. Si x k +1 - x k e o f m+1 e , entonces
x m+1 = x* y terminar.
7. Si k = n -1 , entonces
j = j + 1, k = 0 y regresar a 1.
En otro caso,
k = k + 1 y regresar a 1.
Fin del si.
149
Aplicaciones de Programacin no Lineal
2 2
Ejemplo 3.8 Halle el mnimo de f (x) = 3( x1 -1) + 10( x2 - 2 x1 ) , por el mto-
T
do de Fletcher y Reeves iniciando en x = (0,3) , con e = 0.01 .
Solucin:
( )
El mnimo hallado con la precisin dada es x*T = (1.00,2.00) , donde f x* = 0.0 .
Observe que la convergencia del mtodo fue rpida debido al uso de la bsqueda
lineal exacta, el nmero total de iteraciones menores fue de k = 2, como se es-
peraba pues la funcin es cuadrtica. La figura 3.10 muestra en forma grfica la
bsqueda hacia el ptimo.
150
Mtodos multivariables
-1
x k +1 = x k - H (x k ) f (x k )
d k = -G k f k (3.68)
4. Se determina
v k = ak d k (3.69)
5. Se calcula
x k +1 = x k + v k (3.70)
151
Aplicaciones de Programacin no Lineal
( )
6. Se determina f k +1 = f x k +1 , f k +1 , y se termina el procedimiento si
f k +1 vk
o son suficientemente pequeos; en caso contrario, se procede con
el paso 7. Recurdese que
T f k +1v k = 0 (3.71)
7. Se determina
u k = f k +1 - f k (3.72)
8. Se construye
G k +1 = G k + Ak + Bk (3.73)
donde
v k vTk (3.74)
Ak =
vTk v k
G k u k uTk G k
Bk = - (3.75)
uTk G k u k
152
Mtodos multivariables
u k = f k +1 - f k = Hx k +1 + b - Hx k - b = H (x k +1 - x k )
u k = Hv k (3.77)
v k vTk u k G k u k uTk G k u k
G k +1Hv k = G k u k + - = G k uk + vk - G k uk
vTk u k uTk G k u k
G k +1Hv k = v k (3.78)
153
Aplicaciones de Programacin no Lineal
que
G i Hv k = v k , 0k <i (3.80)
y que
vTk fi = 0 , 0 k i (3.81)
Esto se hace por induccin sobre i . La ecuacin (3.79) muestra que v 0 , v1,..., v n-1
son linealmente independientes y que son mutuamente conjugados con respecto a
H . Si i = n entonces, de la ecuacin (3.80),
G n Hv k = v k
G n = H -1
x n = x* = -H-1b = -G nb (3.82)
154
Mtodos multivariables
n-1
Se deja al lector mostrar que
ser vlida:
H -1
= Ak . Como la ecuacin (3.78) debe
k =0
G k +1Hv k = v k v k = G k Hv k + A k Hv k + B k Hv k
v k vTk u k
A k Hv k = A k u k = = vk
vTk u k
entonces
B k u k = v k - v k - G k u k = -G k u k
y, por lo tanto,
B k u k = -G k u k (3.83)
Aplicaciones de Programacin no Lineal
G k u k zTk
Bk z k = - zk
uTk z k
y entonces
G k u k zTk
Bk = -
uTk z k
donde z es un vector arbitrario. Ya que Bk debe ser simtrica, una buena elec-
cin para z es
z = G k uk
por lo que
G k u k uTk G k
Bk = - (3.84)
uTk G k u k
Este mtodo usa las ideas del mtodo de Newton y de las direcciones conjuga-
das. Cuando se aplica a una funcin cuadrtica de n variables, ste converge en
n
iteraciones. En general, el procedimiento es robusto y eficiente para funciones
cuadrticas o no.
156
Mtodos multivariables
Dada una funcin f (x) , un punto inicial x0 , una matriz simtrica posi-
G 0 la tolerancia .
tiva definida y e
v k vTk
6. Ak = .
vTk u k
G k u k uTk G k
7. Bk = - .
uTk G k u k
8. G k +1 = G k + A k + B k .
9. Si x k +1 - x k e o f k +1 e , entonces
x k +1 = x* y terminar.
157
Aplicaciones de Programacin no Lineal
2 2
Ejemplo 3.9 Halle el mnimo de f (x) = 3( x1 - 1) + 10( x2 - 2 x1 ) , por el
T
mtodo DFP iniciando en x = (0,3) , con e = 0.01 .
Solucin:
*T
El mnimo hallado con la precisin dada es x = (1.00,2.00) , donde
( )
f x* = 0.0 . En este caso tambin la convergencia del mtodo fue rpida
debido al uso de la bsqueda lineal exacta, el nmero total de iteraciones
principales fue de k = 2 , como se esperaba pues la funcin es cuadrtica. La
figura 3.11 muestra en forma grfica la bsqueda hacia el ptimo.
G iu k = v k , 0 k < i (3.85)
158
Mtodos multivariables
u k = Hv k , 0k <i (3.86)
u k uTk G k v k vTk G k
G k +1 = G k + - (BFGS). (3.88)
uTk v k vTk G k v k
159
Aplicaciones de Programacin no Lineal
Dada una funcin f (x) , un punto inicial x0 , una matriz simtrica posi-
G 0 la tolerancia .
tiva definida y e
u k uTk
6. Ak = .
uTk v k
G k v k vTk G k
7. Bk = - .
vTk G k v k
8. G k +1 = G k + A k + B k .
9. Si x k +1 - x k e o f k +1 e , entonces
x k +1 = x* y terminar.
2 2
Ejemplo 3.10 Halle el mnimo de f (x) = 3( x1 - 1) + 10( x2 - 2 x1 ) ,
por el mtodo BFGS iniciando en xT = (0,3) , con e = 0.01.
160
Mtodos multivariables
Solucin:
*T
El mnimo hallado con la precisin dada es x = (1.00,2.00) , donde
( )
f x* = 0.0. Este mtodo tambin tuvo una convergencia rpida debido al uso
de la bsqueda lineal exacta, el nmero total de iteraciones principales fue de
k = 2 igual a los dos mtodos anteriores como era de esperarse. La figura 3.12
,
muestra en forma grfica la bsqueda hacia el ptimo.
161
Aplicaciones de Programacin no Lineal
Problemas
Figura 1
f ( x, y )= 5 x 2 5 xy + 2.5 y 2 x 1.5 y
1
f ( h, r )
= 2 rh + 10 r 2
r 2h
3.3 El costo de operacin anual f para un sistema de lnea elctrica est dado
por la expresin siguiente
( 21.9 10 ) +
7
f=
(V , C ) 2
V C
( 3.9 10 ) C + (1.0 10 )V
6 3
162
Mtodos multivariables
f ( x1 , =
x2 ) x12 x23 ( c x1 x2 )
f (=
t , x ) te t ( c x ) x
V ( x, y ) = 2 x 2 5 xy + 3 y 2 + 6 x 7 y
Muestre que existe un punto y slo uno en el cual la partcula permanece en equi-
librio. Encuentre las coordenadas de ese punto.
163
CAPTULO 4
Mnimos cuadrados
166
4.1 Introduccin
Los datos que se obtienen mediante mediciones fluctan, esto se debe a errores
aleatorios del sistema de medicin aplicado al comportamiento intrnsecamente
estocstico del sistema en observacin. Cualquiera que sea la razn, es frecuen-
te que surja la necesidad de ajustar una funcin a los datos de la medicin. Por
ejemplo, un investigador podra intentar desarrollar una frmula emprica para el
sistema en observacin, o bien un economista deseara ajustar una curva a una
tendencia econmica actual para poder predecir el futuro. Esto se hace para de-
terminar el comportamiento general de los datos, por ejemplo para ver si un creci-
miento es exponencial o para evaluar la funcin en puntos diferentes de los datos.
La curva de ajuste puede ser una lnea, un polinomio de grado n o una funcin
logartmica, exponencial, cosenoidal, o de algn otro tipo. La curva adecuada se
escoge dependiendo de la distribucin de los datos experimentales, de manera
tal que se minimice la suma de los cuadrados de los errores (mtodo conocido
como mnimos cuadrados).
167
Aplicaciones de Programacin no Lineal
...
...
...
...
...
...
n yn xn1 xn2 ... xnk-1 xnk
yy11 = b 1 x 11 + b 2 x 12 + b 3 x 13 + g + b k x 1k + f 1
yy22 = b 1 x 21 + b 2 x 22 + b 3 x 23 + g + b k x 2k + f 2
yy33 = b 1 x 31 + b 2 x 32 + b 3 x 33 + g + b k x 3k + f 3
ggggggggggggggggggg
yynn = b 1 x n1 + b 2 x n2 + b 3 x n3 + g + b k x nk + f n (4.1)
donde xi1 =1 para todo i , es decir, x1T = ( x11, x21,, xn1 ) = (1,1,,1) .
y=X + (4.2)
168
Mnimos cuadrados
2) Los elementos de X son variables fijas (no aleatorias) y tienen varianza finita.
3) X tiene rango k n .
ii)
169
Aplicaciones de Programacin no Lineal
Las suposiciones acerca del error son muy slidas, ya que garantizan las pro-
piedades aritmticas y estadsticas del proceso de estimacin ordinario de los
mnimos cuadrados. Adems de la normalidad, se supone que cada trmino de
error tiene media cero,
e1 E (e1 ) 0
e2 E (e2 ) 0
E () = E = = = 0
en E (en ) 0
es decir,
( )
E TT = Var ( ) = s 2I (4.3)
170
Mnimos cuadrados
2
todas las varianzas son constantes, Var (ei ) = s , y todas las covarianzas son
( ) ( )
nulas, Cov ei , e j = Cov e j , ei = 0 , es decir, no hay correlacin entre residua-
les diferentes.
n
()
S = T = ei2 (4.4)
i =1
donde
= y - y (4.5)
y = X (4.6)
T
T = ( y - X ) ( y - X ) = y T y - 2 T X T y + T X T X
debido a que
T XT y = yT X
171
Aplicaciones de Programacin no Lineal
por lo tanto,
T = yT y - 2 T XT y + T XT X (4.7)
()
S = -2 XT y + 2 XT X = 0 (4.8)
por lo que,
-1
(
= XT X ) XT y (4.9)
T
La matriz simtrica X X se llama matriz de sumas de cuadrados y productos
cruzados de las variables independientes x, y est garantizado que va a tener in-
versa debido a la suposicin de que X tiene rango k; el vector XT y se llama vector
de sumas de productos cruzados de las x con las y. Trasponiendo la ecuacin
(4.8), se tiene
()
T S = -2yT X + 2 T XT X
( ( )) ()
T S H = 2 XT X
y, por lo tanto,
H( )=2XTX (4.10)
172
Mnimos cuadrados
1) Si
T
H es positiva definida, X X tambin lo es y minimiza a S ( ).
2) Si H es negativa definida XT X tambin lo es y maximiza a S ( ).
En este caso, H resulta ser positiva definida y, por lo tanto, minimiza a S ()
Estimacin de 2
2 T
s (4.11)
n-k
Estimacin de R2
La variacin total en y puede partirse en dos porciones: una representa la varia-
cin explicada y la segunda, la no explicada. Primero, se asumir que la variable
y tiene media nula ( y = 0 ). En notacin matricial, la derivacin se sigue del he-
cho de que el vector y puede escribirse como la suma de sus valores predichos
y = X
y el vector residual :
y = X + (4.12)
173
Aplicaciones de Programacin no Lineal
luego,
(4.13)
(4.14)
o bien
T 2
donde SCT = suma de cuadrados total = y y - ny , SCR = suma de cuadra-
dos explicada por la regresin = y SCE =suma de cuadrados (no
explicada) de los errores = R2
. El coeficiente de correlacin se define como
(4.17)
174
Mnimos cuadrados
Este coeficiente de correlacin es sesgado; por tanto, la correccin para que sea
insesgado debe tomar en cuenta el nmero de grados de libertad de la ecuacin
de regresin, y entonces
(4.18)
n y x
1 0 0
2 2 1
3 4 2
4 6 3
5 8 4
6 10 5
Tabla 4.1
Solucin:
0 0
1
2 1 1
4 1 2 1 1 1 1 1 1
y = , X = , XT =
0 1 2 3 4 5
6 1 3
8 1 4
10 1 5
175
Aplicaciones de Programacin no Lineal
y = 2x
como era de esperar con slo observar la tabla de datos. La matriz hessiana esta
dada por la ecuacin (4.10):
176
Mnimos cuadrados
2 2
y el resto de estimadores en los que interviene s (o s ) se anulan, por lo que ya
no se continuarn los clculos. Finalmente, el valor del coeficiente de correlacin,
ecuacin (4.18), da
indicando con este valor una correlacin perfecta entre los datos y el modelo ajus-
tado, como era de esperar para un caso ideal.
n y x
1 73 20
2 78 20
3 85 30
4 90 40
5 91 40
6 87 50
7 86 50
8 91 50
9 75 60
10 65 70
Tabla 4.2
177
Aplicaciones de Programacin no Lineal
Ajuste un modelo cuadrtico con estos datos y determine el valor de x que maxi-
miza la produccin.
Solucin:
y = b1 + b2 x + b3 x 2
o bien
y = b1 + b2 x2 + b3 x3
b2 2.6314
x* = - =- = 41.2445
2b3 2(-0.0319)
178
Mnimos cuadrados
ymx = 89.9228
y el resultado esta de acuerdo con el valor estimado de una grfica de los datos
mostrada en la figura 4.1.
179
Aplicaciones de Programacin no Lineal
por las ecuaciones (4.6) y (4.5), observe que e = 0.01 con la precisin
i i
mostrada pero en realidad se anula con mayor precisin; la suma de cuadrados
de los errores dada por la ecuacin (4.4) resulta en
180
Mnimos cuadrados
n
1
y=
n yi = 82.1 , ny = 821
i =1
n
y y=T
yi2 = 68115 , yT y - ny = 67294
i =1
por tanto,
En esta seccin se darn las frmulas que pueden usarse en problemas en donde
no esta disponible la informacin de las derivadas. La primera aproximacin que
debe considerarse es reemplazar la matriz jacobiana por una aproximacin en
J
diferencias finitas igual que como se hizo en el captulo 3 para el gradiente y la
matriz hessiana. Usando diferencias hacia adelante se tiene
181
Aplicaciones de Programacin no Lineal
x 2 + x -11
f (x) = 1 2
x + x 2 - 7
1 2
T
evale la matriz jacobiana de la funcin en el punto x 0 = (2,1) por las aproxi-
maciones en diferencias finitas y compare stas con la matriz jacobiana analtica.
Use una perturbacin del 1% en las variables independientes.
Solucin:
2 x 1
J (x) = 1
1 2 x2
182
Mnimos cuadrados
que, evaluada en x0 , da
2(2) 1 4 1
J (x0 ) = =
1 2(1) 1 2
Observe que para la funcin f (x) dada, los tres mtodos dan una muy buena
aproximacin a la matriz jacobiana analtica. El mtodo por diferencias centrales
da igual a la matriz analtica, lo cual comprueba que esta aproximacin es exacta
para funciones cuadrticas.
183
Aplicaciones de Programacin no Lineal
y = b0 + b1x
y = b0 + b1x1 + b2 x2 + + bn-1xn-1 + bn xn
1
= b0 b1x
y
b1
y = b0
x
x
= b0 b1x
y
y = b0 x b1
y = b0b1x
184
Mnimos cuadrados
los coeficientes son lineales en las primeras tres ecuaciones y no lineales en las
dos ltimas, y todas las ecuaciones son no lineales entre las variables. La ven-
taja de estos modelos es que pueden transformarse a una relacin lineal entre
las variables mediante una transformacin de variables y coeficientes adecuada
para poder abordarse como un problema semejante a la primera ecuacin del
primer conjunto de modelos analizados. Sin embargo, siempre habr modelos no
lineales que no puedan transformarse como los anteriores, y entonces habr que
desarrollar mtodos matemticos para estimar los coeficientes asociados a estos
modelos; tal es el objetivo de esta seccin.
m
F (x) = fi 2 (x) (4.22)
i =1
f1 (x)
f (x)
f (x) = 2
f m (x) (4.23)
185
Aplicaciones de Programacin no Lineal
Ahora veamos dos problemas comunes en los que se dan tales funciones en la
prctica.
Regresin no lineal
(4.26)
186
Mnimos cuadrados
con respecto a . Se toman los cuadrados para evitar la cancelacin entre re-
siduales de signo opuesto como en el caso de la regresin lineal. Observe que
si se obtiene un ajuste perfecto de a los datos experimentales.
f1 (x) = 0
(4.27)
f n (x) = 0
f (x) = 0 (4.28)
El mnimo x* de la funcin
n
F (x) = f i 2 ( x ) = f T ( x )f ( x ) (4.29)
i =1
( )*
para la cual F x = 0 es la solucin deseada debido a que esta puede darse
solo si x* satisface cada una de las ecuaciones (4.27). Debe tenerse en mente
que tal punto no necesariamente existe cuando se dice que el sistema es incon-
sistente y por lo tanto no tiene solucin. Asimismo, la funcin F ( x) puede tener
( )
cualquier nmero de mnimos locales con F x* > 0 , lo cual no tiene mucha
relevancia en este problema excepto que no sean los mnimos deseados.
187
Aplicaciones de Programacin no Lineal
n n n n
f
F (x) =
x j i=1
fi2 e j = 2 fi xij e j (4.30)
j =1 j =1 i =1
f1 (x)
f1 (x) f1 (x)
x1 x2 xn
f 2 (x) f 2 ( x ) f 2 (x)
(4.31)
J (x) = x1 x2 xn
f n (x) f n ( x ) f n (x)
x
1 x 2 x n
n n n
fi T
( T
)
F (x) = H (x) =
x
j =1 i=1
2 fi
x e k e j
k =1 k j
188
Mnimos cuadrados
n n n 2
fi fi + f fi e e T
H (x) = 2 x x
k j
i
xk x j
k j
k =1 j =1 i =1
y el resultado es una matriz, como se esperaba; el primer trmino del lado dere-
cho corresponde a un producto entre dos matrices jacobianas, mientras que el
segundo trmino es un producto entre cada funcin fi y la matriz hessiana de
fi Es decir, si se define como
cada funcin . G i (x) fi (x)
la matriz hessiana de ,
entonces la matriz hessiana completa de F (x) puede escribirse como
n
T
H ( x ) = 2J ( x ) J ( x ) + 2 f i ( x )G i ( x ) (4.33)
i =1
Adems, definiendo
n
S (x) = f i ( x )G i ( x ) (4.34)
i =1
se tiene
189
Aplicaciones de Programacin no Lineal
Mtodo de Newton
H k d k = -Fk
es decir,
x k +1 = x k + d k (4.37)
190
Mnimos cuadrados
Mtodo de Gauss-Newton
x k +1 = x k + d k (4.39)
zT JTk J k z = yT y 0
El nico problema que puede darse con respecto a esta simplificacin es cuando
J k sea de rango deficiente y
JTk J k resulte singular. Sin embargo, an si
d k es una direccin de descenso, esto no garantiza que el valor de la funcin ob-
jetivo decrezca, es decir, que Fk +1 < Fk. El paso expresado por la ecuacin (4.39)
podra se muy largo, localizando a x k +1en un punto muy alejado del punto mnimo
lineal. Por estas razones, se requiere de un buen punto inicial para que exista una
oportunidad de convergencia hacia el mnimo.
191
Aplicaciones de Programacin no Lineal
Refirindose a las ecuaciones (4.33), (4.34) y (4.36), est claro que si f (x) 0
*
como x x tambin S (x) 0, y el mtodo de Gauss-Newton tiende al mtodo
de Newton como se vaya acercando al mnimo, lo cual tiene consecuencias favo-
rables para la rapidez de convergencia. Esta situacin ocurre en regresin no li-
neal cuando es posible un buen ajuste o en la solucin de un conjunto consistente
y bien condicionado de ecuaciones simultneas no lineales. Las consecuencias
tambin son las mismas cuando las funciones fi son casi lineales de manera que
G i 0 para i = 1,..., m , o cuando los trminos sucesivos fiG i se cancelen a
travs de diferencias de signo. Finalmente, las propiedades de convergencia del
mtodo de Gauss-Newton pueden mejorarse mucho si ste se usa junto con una
bsqueda lineal en la ecuacin (4.39).
-1 T
1. d k = -
tener d k .
( JTk J k ) J k f k o bien resolver JTk J k d k = -JTk f k y ob-
Ir al paso 5.
Fin del si.
a
3. a= .
2
4. Tomar j = j + 1 e ir al paso 2.
192
Mnimos cuadrados
y = eb1 +b2 x
n yexp x
1 0.50 -2.00
2 1.00 -1.00
3 2.00 0.00
4 4.00 1.00
Solucin:
193
Aplicaciones de Programacin no Lineal
Mtodo de Levenberg-Marquardt
194
Mnimos cuadrados
Estrategia de Marquardt
Marquardt (1963) mejor la eficiencia del algoritmo inventando una mejor estra-
tegia para seleccionar mk . Este se pone inicialmente en algn valor positivo (por
ejemplo, 0.01) y se utiliza un factor n > 1 (por ejemplo, 10) con el cual incremen-
tar o disminuir mk . Al principio de cada iteracin mk se reduce por el factor n , en
un intento por acercar el algoritmo al mtodo de Gauss-Newton. Si ste no reduce
el valor de la funcin objetivo, se incrementa repetidamente el nuevo valor de
mk por el factor n hasta que se obtenga una reduccin en el valor de la funcin.
1. mk = mk / n .
(
3. d k = - JTk J k + mk I
-1 T
) J k fk ( )
o bien resolver JTk J k + mk I d k = -JTk f k
y obtener dk .
4. Calcular x k +1 = x k + d k .
5. Si Fk +1 > Fk , entonces mk = mk n .
Fin del si.
6. Si , entonces
Ir al paso 8.
Fin del si.
7. Tomar j = j +1 regresar a 3.
195
Aplicaciones de Programacin no Lineal
8. mk +1 = mk .
y = b1 + b2 sen (b3 x)
196
Mnimos cuadrados
n yexp x
1 10.5244 1
2 10.7278 2
3 8.4233 3
4 5.7295 4
5 5.1232 5
6 7.1617 6
7 9.9709 7
8 10.9680 8
9 9.2363 9
10 6.3679 10
11 5.0000 11
12 6.3902 12
13 9.2605 13
14 10.9718 14
15 9.9508 15
16 7.1362 16
17 5.1158 17
18 5.7470 18
19 8.4496 19
20 10.7388 20
Solucin:
197
Aplicaciones de Programacin no Lineal
Mtodos Cuasi-Newton
x k +1 = x k + ak d k (4.41)
198
Mnimos cuadrados
f k +1 = f k + J k (x k +1 - x k ) (4.42)
o bien
J k (x k +1 - x k ) = f k +1 - f k (4.43)
B k +1 = B k + A k (4.44)
B k (x k +1 - x k ) = f k +1 - f k (4.45)
f (x k +1 ) - f (x k ) = Ax k +1 - b - Ax k + b = A (x k +1 - x k )
A k +1 (x k +1 - x k ) f (x k +1 ) - f (x k ) (4.46)
199
Aplicaciones de Programacin no Lineal
Broyden (1965) utiliz una idea muy simple para obtener una aproximacin sa-
tisfactoria de A k +1 ; escogerla de tal forma que se minimice el valor de la fun-
cin que se obtendra en un mismo punto mediante las aproximaciones A k +1 y
A k y que se cumpla a la vez la condicin cuasi-Newton, ecuacin (4.46), dada como
A k +1 (x k +1 - x k ) = f (x k +1 ) - f (x k )
f (x k +1 ) + A k +1 (x - x k +1 ) - f (x k ) - A k (x - x k )
Desarrollndola, queda
f (x k +1 ) - f (x k ) - A k +1 (x k +1 - x k ) + ( A k +1 - A k )(x - x k )
( A k +1 - A k )(x - xk ) (4.47)
x - x k = aDx k + s
200
Mnimos cuadrados
a ( A k +1 - A k )Dx k + ( A k +1 - A k )s
Sobre el primer trmino no se puede actuar puesto que, segn la ecuacin (4.46),
( A k +1 - A k )s = 0 (4.49)
Df k - A k Dx k (4.50)
u
DxTk Dx k
es, por lo tanto, la que cumple ese propsito de minimizar la diferencia indica-
da, verificndose adems la condicin cuasi-Newton, ecuacin (4.46). La fr-
mula dada por la ecuacin (4.51) es la que propuso Broyden para aproximar la
matriz jacobiana en cada iteracin del mtodo de Newton. Para estos mtodos,
201
Aplicaciones de Programacin no Lineal
T
Ak =
(fk +1 - fk - Bk (xk +1 - xk ))(xk +1 - xk ) (4.52)
T
(xk +1 - xk ) (xk +1 - xk )
que es la base del mtodo de rango uno de Broyden. Esta ecuacin se incorpora
dentro del mtodo de Gauss-Newton para establecer el siguiente algoritmo.
-1
1. d k = -(BTk B k ) BTk fk o bien resolver BTk B k d k = -BTk fk y obtener d k .
Para j = 1,2,3,... hasta donde se satisfaga, hacer;
2. Calcular x k +1 = x k + ad k .
(
Si f x k +1 ) < (1- a / 2) f (xk ) , entonces
Ir al paso 5.
Fin del si.
a
3. a= .
2
4. Tomar j = j +1 e ir al paso 2.
202
Mnimos cuadrados
Fk +1 - Fk
5. Si x k +1 - x k e o e , entonces
Fk
Tomar x k +1 x* y parar.
Fin del si.
T
6. Calcular A k =
(fk +1 - fk - Bk (xk +1 - xk ))(xk +1 - xk ) .
T
(xk +1 - xk ) (xk +1 - xk )
7. Calcular B k +1 = B k + A k .
8. Tomar k = k + 1 y regresar al paso 1.
n yexp x1 x2
1 162 274 2450
2 120 180 3254
3 223 375 3802
4 131 205 2838
5 67 86 2347
6 169 265 3782
7 81 98 3008
8 192 330 2450
9 116 195 2137
10 55 53 2560
11 252 430 4020
12 232 372 4427
13 144 236 2660
14 103 157 2088
15 212 370 2605
203
Aplicaciones de Programacin no Lineal
Solucin:
204
Mnimos cuadrados
f (x) = 0
Mtodo de Newton
JTk J k d k = -JTk f k
T
pueden reducirse premultiplicando por J-
k para obtener
J k d k = -f k (4.53)
x k +1 = x k + d k
x k +1 = x k + ak d k
hasta reducir fk .
205
Aplicaciones de Programacin no Lineal
1
1. d k = -J-
k fk o bien resolver J k d k = -f k y obtener dk .
2. Calcular x k +1 = x k + d k .
3. Si x k +1 - x k e o f k +1 e , entonces
*
Tomar x k +1 x y parar.
Fin del si.
4. Tomar k = k + 1 y regresar al paso 1.
1
f1 (x) = 3 x1 - cos ( x2 x3 ) - = 0
2
2
1
f 2 ( x) = x12 - 81 x2 + + sen ( x3 ) + 1.06 = 0
10
10p - 3
f3 (x) = e- x1x2 + 20 x3 + =0
3
Solucin:
206
Mnimos cuadrados
1
1. d k = -J-k f k o bien resolver J k d k = -f k y obtener d k .
Para j = 1,2,3,... hasta donde se satisfaga, hacer;
2. Calcular x k +1 = x k + ad k .
(
Si f x k +1 ) < (1- a / 2) f (xk ) , entonces
Ir al paso 5.
Fin del si.
a
3. a = .
2
4. Tomar j = j +1 e ir al paso 2.
5. Si x k +1 - x k e o f k +1 e , entonces
*
Tomar x k +1 x y parar.
Fin del si.
6. Tomar k = k + 1 y regresar al paso 1.
Ejemplo 4.8
207
Aplicaciones de Programacin no Lineal
Solucin:
Mtodos Cuasi-Newton
A tal efecto, la actualizacin dada por la ecuacin (4.51) de rango uno de Broyden
puede desarrollarse usando la frmula de Householder del siguiente lema:
(ii) Tambin
T -1 A-1rsT A-1
(A + rs ) =A -1
-
u
(4.54)
208
Mnimos cuadrados
Como
(
A + rsT = I + rsT A-1 A )
y rsT es de rango uno, el punto (i) resulta del hecho de que la matriz
I + rsT A-1
T -1 AA-1rsT A-1
(A + rs )(A + rs )
T
= AA -1
-
u
T -1 rs T A -1rs T A -1
+ rs A -
u
T -1
T -1 rsT A-1 T -1 (u - 1)rs A
(A + rs )(A + rs )
T
=I-
u
+ rs A -
u
y, por consiguiente,
-1
( )(
A + rsT A + rsT ) =I
209
Aplicaciones de Programacin no Lineal
-1
La aplicacin inmediata de este lema lleva a deducir que si se conoce B 0
la frmula de actualizacin de Broyden es
(= J-0 1)
-1
Entonces, las matrices B reemplazan a las matrices B en la formulacin b-
sica y d k se obtiene por analoga con la ecuacin (4.53) como
1
d k = -B-
k fk
(4.56)
1
1. d k = -B-k fk .
Para j = 1,2,3,... hasta donde se satisfaga, hacer;
2. Calcular x k +1 = x k + ad k .
(
Si f x k +1 ) < (1- a / 2) f (xk ) , entonces
Ir al paso 5.
210
Mnimos cuadrados
a
3. a = .
2
4. Tomar j = j + 1 e ir al paso 2.
5. Si x k +1 - x k e o f k +1 e , entonces
*
Tomar x k +1 x y parar.
Fin del si.
6. Calcular A k =
( k Df k - Dx k )Dx k B k
B- 1 T -1
.
DxTk B- 1
k Df k
7. Calcular B k +1 = B k + A k .
8. Tomar k = k + 1 y regresar al paso 1.
Ejemplo 4.9
Resuelva el sistema de ecuaciones no lineales del ejemplo 4.7 utilizando el m-
T
todo de Broyden con bsqueda lineal y partiendo del punto x0 = (1.0,1.0,1.0) y
e = 0.01 .
Solucin:
211
Aplicaciones de Programacin no Lineal
Problemas
Z 2 = R 2 + 4p 2 f 2 L2
f(Hz) Z()
123 7.4
158 8.4
194 9.1
200 9.6
229 10.3
245 10.5
269 11.4
292 11.9
296 12.2
y = b1 + b2 x
donde y = Z2 y x = f 2.
212
Mnimos cuadrados
R = R0 (1 + aT )
R() T(oC)
12.3 10
12.9 20
13.6 30
13.8 40
14.5 50
15.1 60
15.2 70
15.9 80
213
Aplicaciones de Programacin no Lineal
a)
y x
0.61 0.1
0.75 0.2
0.91 0.3
1.11 0.4
1.36 0.5
1.66 0.6
2.03 0.7
2.48 0.8
3.03 0.9
b)
y x
94.8 2.0
87.9 5.0
81.3 8.0
74.9 11.0
68.7 14.0
64.0 17.0
y x
1.00 10.0
1.26 20.0
1.86 30.0
3.31 40.0
7.08 50.0
214
Mnimos cuadrados
Cul de los tres modelos siguientes representa mejor la relacin entre las varia-
bles?.
2
a) y = eb1 +b2 x b) y = eb1 +b2 x+b3 x c) y = b1x b2
En los 3 problemas que siguen, enuncie las variables o combinaciones de varia-
bles que deben graficarse para verificar la variacin sugerida, y diga cmo puede
encontrarse la incgnita o parmetros desconocidos del modelo (pendiente, or-
denada al origen, etc.).
2P
v=
r
PV = nRT
m0
m=
v2
1- 2
c
215
Aplicaciones de Programacin no Lineal
donde
b1
y (t ) =
b1 - b2
(
e-b2t - e-b1t )
para el siguiente conjunto de datos:
y = b1x1b2 x2b3
216
Mnimos cuadrados
x1 2.0 6.0 9.0 2.5 4.5 9.5 8.0 4.0 3.0 7.0 6.5
x2 36.0 8.0 3.0 6.25 7.84 1.44 4.0 7.0 9.0 2.0 5.0
y 46.5 591 1285 36.8 241 1075 1024 151 80 485 632
n y x n y x
217
Aplicaciones de Programacin no Lineal
x1 + x2 - 3
4.13 f (x) = 2 , tiene ms de una solucin.
x1 + x2 - 9
2
x 2 + x 2 - x
4.14 f (x) = 1 2 1
, tiene ms de una solucin.
x1 - x2 - x2
2 2
x1
4.15 f (x) = x22 + x2 , tiene ms de una solucin.
e x3 -1
218
CAPTULO 5
Fundamentos de optimizacin restringida
5.1 Introduccin
xT = ( x1 , x2 ,..., xn ) (5.1)
f (x ) = f ( x1 , x2 ,...., xn ) (5.2)
h j (x ) = 0; j = 1,..., m (5.3)
g k (x ) 0; k = 1,..., l (5.4)
221
Aplicaciones de Programacin no Lineal
Ejemplo 5.1
2 2
Minimizar f (x ) = ( x1 - 2) + ( x2 - 2)
g1 (x ) = x1 + x2 - 2 0
sujeta a: g 2 (x ) = -x1 0
g3 (x ) = -x2 0
222
Fundamentos de optimizacin restringida
Solucin:
223
Aplicaciones de Programacin no Lineal
Ejemplo 5.2
1 2 1 2
Minimizar f (x ) = x1 - + x2 -
2 2
g1 (x ) = x1 + x2 - 2 0
sujeto a: g 2 (x ) = -x1 0
g 3 ( x ) = - x2 0
224
Fundamentos de optimizacin restringida
Solucin:
Ejemplo 5.3
2 2
Minimizar f (x ) = ( x1 - 2) + ( x2 - 2)
g1 (x ) = x1 + x2 - 2 0
g 2 (x ) = -x1 0
sujeta a:
g3 (x ) = -x2 0
g 4 (x ) = -x1 + x2 + 3 0
225
Aplicaciones de Programacin no Lineal
Solucin:
La figura 5.3 muestra una grfica de las restricciones para el problema. Puede
verse que no hay un punto que satisfaga todas las restricciones en el primer
*
cuadrante y por lo tanto no hay solucin, es decir, no hay punto factible. x es el
ptimo no restringido.
226
Fundamentos de optimizacin restringida
Restricciones
Los problemas que se tratan son los del tipo general de programacin no lineal
de la forma
Minimizar f (x )
h j (x ) = 0; j = 1,..., m
sujeta a: g k (x ) 0; k = 1,..., l (5.5)
x En
Minimizar f (x )
h (x ) = 0
sujeta a: g (x ) 0
(5.6)
x En
227
Aplicaciones de Programacin no Lineal
El Plano Tangente
h (x ) = 0 (5.7)
n
define un subconjunto de E , que se considera mejor tratndolo como una hiper-
superficie. Si las restricciones son regulares en todas partes, de acuerdo como
n - m Si
lo que se expone ms adelante, esta hipersuperficie tiene dimensin .
como se supone en este momento, las funciones h j, j = 1,..., m tienen primeras
derivadas parciales continuas, la superficie definida por ellas se denomina uniforme.
Definicin 5.1
Considrense ahora todas las curvas diferenciables en S que pasan por un punto
x* El plano tangente en se
. x* define como el conjunto de las derivadas de todas
* n
las curvas diferenciables en x . El plano tangente es un subespacio de E . Para
las superficies definidas por un conjunto de relaciones de restriccin como (5.7),
el problema de obtener una representacin explcita para el plano tangente es un
problema fundamental que se estudia a continuacin. Idealmente, sera deseable
expresar este plano tangente desde el punto de vista de las derivadas de las fun-
hj
ciones que definen la superficie.
228
Fundamentos de optimizacin restringida
* *
( )
Definicin 5.2 Un punto x que satisfaga la restriccin h x = 0 ,
se denomina punto regular de la restriccin si los vectores gradientes
( ) ( )
h1 x* ,..., hm x* son linealmente independientes.
La independencia lineal significa que no hay dos gradientes que sean paralelos
entre s, y ningn gradiente puede expresarse como una combinacin lineal de
los otros.
*
Teorema 5.1 En un punto regular x de la superficie S definida por
h (x ) = 0 , el plano tangente es igual a
{ ( )
T = y : hT x* y = 0 }
2 2
minimizar f (x ) = ( x1 - 2) + ( x2 - 2) (5.8)
sujeta a h (x ) = x1 + x2 - 2 = 0 (5.9)
229
Aplicaciones de Programacin no Lineal
Solucin:
1
x* =
1 y ( )
f x* = 2
230
Fundamentos de optimizacin restringida
x2 = F( x1 ) (5.10)
F( x1 ) = -x1 + 2 (5.11)
2 2
f ( x1 ) = ( x1 - 2) + (-x1 ) = 2 x12 - 4 x1 + 4
la condicin necesaria
df
= 2( x1 - 2) + 2 x1 = 4 x1 - 4 = 0
dx1
231
Aplicaciones de Programacin no Lineal
* *
da x1 = 1 . Luego la ecuacin (5.11) da x2 = 1 y la funcin objetivo en el punto
(1,1) es 2. Puede verificarse que la condicin suficiente
d2 f
= 4>0
dx12
1
se satisface. As el punto x* =
1
es verdaderamente un mnimo. Si se supone que la forma explcita de la funcin
F( x1 ) no puede obtenerse (que es el caso generalmente), entonces, algn proce-
dimiento alternativo debe desarrollarse para obtener la solucin ptima. Se derivar
tal procedimiento y se ver que el multiplicador de Lagrange para la restriccin se
define naturalmente en el proceso. Usando la regla de la cadena de la diferencia-
cin, se escribe la condicin necesaria
df
=0
dx1
df f ( x1 , x2 ) f ( x1 , x2 ) dx2
= +
dx1 x1 x2 dx1
(
f x1* , x2* ) + f ( x1*, x2* ) dF = 0 (5.13)
x1 x2 dx1
232
Fundamentos de optimizacin restringida
dF
ya que F no se conoce, se necesita eliminar d F / dx1 de la ecuacin (5.13).
Para realizar esto, se deriva la ecuacin de restriccin h ( x1, x2 ) = 0 en el punto
( )
x1* , x2* como dx1
* *
(
dh h x1 , x2
= +
) (
h x1* , x2* d F
=0
)
dx1 x1 x2 dx1
dF
y despejando , se obtiene
dx1
(
h x1* , x2* )
dF x1 (5.14)
=-
dx1 (
h x1* , x2* )
x2
dF
ahora, sustituyendo , de la ecuacin (5.14) en (5.13), se obtiene
dx1
h
f f x1
- = 0 (5.15)
x1 x2 h
x2
f
x
l - 2 (5.16)
h
x2
233
Aplicaciones de Programacin no Lineal
f h
+l =0 (5.17)
x1 x1
f h (5.18)
+l =0
x2 x2
2( x1 - 2) + l = 0
2( x2 - 2) + l = 0
x1 + x2 - 2 = 0
L ( x , l ) = f ( x ) + lh ( x ) (5.19)
234
Fundamentos de optimizacin restringida
se ha observado que las condiciones necesarias de las ecs. (5.17) y (5.18) estn
dadas en trminos de L como
( )
L x * = 0 (5.20)
( ) ( )
f x * + lh x * = 0 (5.21)
( )
f x* = -lh x* ( ) (5.22)
Esta ecuacin muestra que en el punto mnimo candidato, los gradientes de las
funciones objetivo y de restricciones estn a lo largo de la misma lnea y son
proporcionales. (Obsrvese (5.22) con el ejemplo dado). El concepto de los mul-
tiplicadores de Lagrange es bastante general. El multiplicador de Lagrange pue-
de interpretarse para una restriccin como una fuerza requerida para imponer la
restriccin.
g k (x ) 0 k = 1,..., l
235
Aplicaciones de Programacin no Lineal
g k (x ) 0
g k (x ) + sk = 0 , sk 0
Las variables sk son tratadas como incgnitas del problema de optimizacin jun-
to con las variables originales. Sus valores deben determinarse como una parte
de la solucin. Cuando la variable sk tiene valor nulo ( sk = 0 ), la correspondiente
restriccin de desigualdad se satisface como igualdad. Tal desigualdad es llama-
da una restriccin activa (o ajustada), es decir, no hay holgura en la restriccin.
Para cualquier sk > 0, la correspondiente restriccin es una desigualdad estricta.
Esta es llamada una restriccin inactiva (o pasiva), tiene holgura dada por sk .
(5.23)
g k (x ) + sk2 = 0
donde sk puede tener cualquier valor real. Esta forma puede usarse en el Teo-
rema de Multiplicadores de Lagrange para tratar restricciones de desigualdad y
derivar las condiciones necesarias correspondientes.
L
= 0
s
236
Fundamentos de optimizacin restringida
Obsrvese que una vez que un punto ptimo se determina, la ecuacin (5.23) se
2
utiliza para calcular la variable de holgura sk . Si la restriccin se satisface en el
2
punto, es decir,g k (x ) 0, entonces sk 0. Si esta se viola, entonces sk2 < 0 , lo
cual no es aceptable, es decir, el punto no es punto mnimo candidato.
mk* 0 , k = 1,..., l
*
donde mk es el multiplicador de Lagrange para la k -sima restriccin de igual-
dad. De esta manera, el multiplicador de Lagrange para cada restriccin de des-
igualdad del tipo debe ser no negativa. Si la restriccin es inactiva en el pti-
mo, su multiplicador de Lagrange asociado es cero. Si sta es activa (g k (x ) = 0 ),
entonces el multiplicador asociado debe ser no negativo.
h j (x ) = 0 , j = 1,..., m
g k (x ) 0 , k = 1,..., l
se define la funcin de Lagrange para el problema de optimizacin como
237
Aplicaciones de Programacin no Lineal
o bien
(5.24)
m h j l
L f g
=
xi xi
+ l*j
xi
+ mk* xki = 0 , i = 1,..., n (5.25)
j =1 k =1
L
l j
( )
= h j x* = 0 , j = 1,...,m (5.26)
L
mk
( )
= g k x* + sk2 = 0 , k = 1,..., l (5.27)
L
= 2mk* sk = 0 , k = 1,..., l (5.28)
sk
mk* 0 , k = 1,..., l (5.29)
Las condiciones anteriores son llamadas algunas veces las condiciones necesa-
rias de primer orden. Es importante entender su uso para: 1) verificar la posible
optimalidad de un punto dado y, 2) determinar los puntos estacionarios.
238
Fundamentos de optimizacin restringida
m h j l
f g k
-
xi
= l*j
xi
+ mk*
xi
, i =1,..., n (5.30)
j =1 k =1
Para cada caso, se requiere resolver las condiciones necesarias restantes para
puntos estacionarios. Dependiendo de las funciones del problema, puede ser o
no posible resolver analticamente las condiciones necesarias de cada caso. Si
las funciones son no lineales, se tendr que usar los mtodos numricos para
hallar sus races. En resumen, cada caso puede dar puntos estacionarios.
239
Aplicaciones de Programacin no Lineal
240
Fundamentos de optimizacin restringida
hTj d =0
g kT d =0
De este modo, las direcciones d son determinadas para definir una regin factible
alrededor del punto x*. Obsrvese que slo las restricciones de desigualdad acti-
vas son usadas en determinar d.
a)
241
Aplicaciones de Programacin no Lineal
b)
c)
242
Fundamentos de optimizacin restringida
m l
2
L= f + 2
l*j 2h j + mk*2 gk (5.31)
j =1 k =1
*
entonces, si x es un punto mnimo local para el problema de optimiza-
cin debe satisfacerse que
dT 2 L d 0 (5.34)
243
Aplicaciones de Programacin no Lineal
m l
2
L= f + 2
l*j 2h j + mk*2 gk (5.35)
j =1 k =1
g kT d = 0 , k = 1,..., l (5.37)
( )
dT 2 L x* d > 0 (5.38)
*
entonces, x es un mnimo local aislado (aislado significa que no hay
otros puntos mnimos locales en la cercana o vecindad de x*).
244
Fundamentos de optimizacin restringida
*
Lema 5.1 Sea x un punto regular de las restricciones h (x ) = 0
y un punto extremo local (mnimo o mximo) de f (x ) sujeto a estas
n
restricciones. Entonces todo y E que cumpla
( )
hT x* y = 0
(5.39)
debe cumplir tambin
( )
T f . x* y = 0 (5.40)
( *)
El lema anterior expresa que f x es ortogonal al plano tangente. A conti-
( )
nuacin, se concluye que esto implica que f x* es una combinacin lineal de
los gradientes de h en x*, una relacin que da lugar a la introduccin de los mul-
tiplicadores de Lagrange.
Teorema 5.6
Sea x* un punto extremo local de f (x ) sujeto a las restricciones
h (x ) = 0 . Supngase, adems que x* es un punto regular de estas restric-
ciones. Entonces, existe un tal que
(5.41)
245
Aplicaciones de Programacin no Lineal
Obsrvese que las condiciones necesarias de primer orden (5.41) junto con las
restricciones
( )
h x* = 0
(5.42)
(5.43)
(5.44)
Minimizar f (x ) = x1 x2 + x2 x3 + x1 x3
Sujeta a: h (x ) = x1 + x2 + x3 - 3 = 0
246
Fundamentos de optimizacin restringida
Solucin:
x2 + x3 + l = 0
x1 + x3 + l = 0
x1 + x2 + l = 0
x*T = (1,1,1) y l* = -2
(5.45)
247
Aplicaciones de Programacin no Lineal
Si se representa por
entonces la matriz
T el plano tangente, {
T = y : hT (x ) y = 0 }
(5.46)
( )
Supngase que hay un punto x* que satisface h x* = 0 y un
tal que
(5.47)
( )
y T L x* y 0 (5.48)
248
Fundamentos de optimizacin restringida
Maximizar f (x ) = x1 x2 + x2 x3 + x1 x3
Sujeta a: h (x ) = x1 + x2 + x3 - 3 = 0
Solucin:
*T *
En el ejemplo 5.5 anterior result que x = (1,1,1) y l = -2 , satisfacen las
condiciones de primer orden. En este caso, la matriz L=F+TH se convierte en
0 1 1
L = 1 0 1
1 1 0
T = {y : y1 + y2 + y3 = 0}
se observa que
0 1 1 y1 y2 + y3
y T Ly = ( y1 , y2 , y3 )1 0 1 y2 = ( y1 , y2 , y3 ) y1 + y3
1 1 0 y3 y1 + y2
(
= y1 ( y2 + y3 ) + y2 ( y1 + y3 ) + y3 ( y1 + y2 ) = - y12 + y22 + y32 )
y as, L es definida negativa en T . Por tanto, la solucin es un mximo local.
249
Aplicaciones de Programacin no Lineal
Restricciones de Desigualdad
Minimizar f (x )
Sujeta a : h (x ) = 0 (5.49)
g (x ) 0
Definicin 5.3:
*
Sea x un punto que satisfaga las restricciones
( )
h x* = 0
(5.50)
g ( x* ) 0
( )
*
y sea K el conjunto de ndices k para el cual gk x = 0. Entonces se
dice que x* es un punto regular de las restricciones (5.50) si los vectores
( ) ( )
gradientes h j x* , g k x* ,1 j m, k K son linealmente indepen-
dientes.
250
Fundamentos de optimizacin restringida
Minimizar f (x )
(5.51)
Sujeta a : h (x ) = 0
g (x ) 0
*
y supngase que x es un punto regular para las restricciones.
m
Entonces, existe un vector E y un vector El, 0 tal que
(5.52)
(5.53)
251
Aplicaciones de Programacin no Lineal
Solucin:
(
m1 x12 + x22 - 5 = 0)
m2 (3 x1 + x2 - 6) = 0
m1 0
m2 0
4 x1 + 2 x2 -10 + 2m1x1 = 0
2 x1 + 2 x2 -10 + 2m1x2 = 0
x12 + x22 - 5 = 0
252
Fundamentos de optimizacin restringida
( )
Supngase que las funciones f x* , h (x ) y g (x ) tiene segundas
derivadas parciales continuas y que x* es un punto regular de las
restricciones (5.50). Si x* es un punto mnimo relativo para el proble-
m l
ma (5.49), entonces existe E , E , tales que se cumplen
(5.52) y (5.53) y tales que
(5.54)
253
Aplicaciones de Programacin no Lineal
0 (5.55)
( )
T g x* = 0 (5.56)
(5.57)
y la matriz Hessiana
(5.58)
{ ( ) ( )
T ' = y : hT x* y = 0, T g k x* y = 0, " k K }
donde { ( )
K = k : g k x* = 0, mk > 0 }.
Se observa, sobre todo, que si todas las restricciones de desigualdad tienen mul-
tiplicadores de Lagrange correspondientes estrictamente positivos (sin desigual-
dades degeneradas), entonces el conjunto K incluye todas las desigualdades
activas. En este caso, la condicin suficiente es que el Lagrangiano sea positivo
definido en T, el plano tangente de las restricciones activas.
254
Fundamentos de optimizacin restringida
Solucin:
6 x 0 0 0
F (x) = 1 G (x ) =
0 8 y 0 0
255
Aplicaciones de Programacin no Lineal
Problemas
5.1 Un cartel debe contener 300 cm2 de texto impreso con mrgenes superior e
inferior de 6 cm y 4 cm en los laterales. Encuentre las dimensiones del cartel que
minimizan el rea total.
5.2 Una caja con base cuadrada y sin tapa debe retener 1000 cm3. Determine las
dimensiones que requieren el menor material para construir la caja.
5.3 Halle el volumen del cilindro circular recto ms grande que puede inscribirse
dentro de una esfera de radio R.
5.4 Se desea construir un recipiente cilndrico de metal con tapa que tenga una
superficie total de 100 cm2. Encuentre las dimensiones de modo que tenga el
mayor volumen posible.
a) volumen mximo
5.6 Un alambre de 100 cm. de longitud, se corta en dos partes formando con una
de ellas un crculo y con la otra un cuadrado. Cmo debe cortarse el alambre para
que:
256
Fundamentos de optimizacin restringida
5.7
Optimizar: f ( x=
) x1 + 3x2
Sujeta a: 2 x1 + 3x2 6
x1 + 4 x2 4
x1 , x2 0
5.8
2
9
Optimizar: f ( x ) = x1 + ( x2 2 )
2
4
Sujeta a: x12 + x2 0
x1 + x2 6
x1 , x2 0
257
APNDICE A
Matemticas preliminares
A.1 Introduccin
0 si i j
dij =
; i, j = 1, 2,..., n. (A.1)
1 si i = j
261
Aplicaciones de Programacin no Lineal
Este smbolo se usa con frecuencia en combinacin con la sumatoria para con-
traer trminos y reducir las expresiones a formas ms simples.
Las operaciones con escalares obedecen las mismas reglas del lgebra.
xT = ( x1, x2 ,..., xn )
(A.2)
x1
x2
x = (A.3)
xn
262
Apndice A. Matemticas preliminares
n
Definicin A.4 Un vector elemental en el espacio euclidiano E es un
vector de magnitud unitaria con la i-sima componente igual a la unidad
y las restantes componentes nulas, y su direccin apunta a lo largo del
correspondiente eje de coordenadas.
As pues,
i-sima componente
eTi = (0,0,...,1,...,0)
n componentes (A.4)
263
Aplicaciones de Programacin no Lineal
i = 1,..., m
A = (aij ) ; (A.7)
mxn j = 1,..., n
264
Apndice A. Matemticas preliminares
i = 1,..., m
AT = (a ji ) ; (A.8)
nxm j = 1,..., n
T
1) ( )
AT =A
T
2) ( A + B) = AT + BT
T
3) ( AB) = BT AT
k = 1,..., m
eieTj = (ekl )mxn ; (A.9)
l = 1,..., n
0 si la ubicacin del elemento kl nocoincidecon ij
ekl =
1
si la ubicacin del elemento kl coincidecon ij
265
Aplicaciones de Programacin no Lineal
m n
A= aijeieTj (A.10)
i =1 j =1
Igualdad de matrices
i = 1,..., m
A mxn = B mxn aij = bij ; (A.11)
j = 1,..., n
Desigualdad de matrices
i = 1,..., m
A mxn B mxn aij bij ; (A.12)
j = 1,..., n
266
Apndice A. Matemticas preliminares
Suma de matrices
i = 1,..., m
A mxn B mxn = Cmxn cij = aij bij ; (A.13)
j = 1,..., n
Multiplicacin de matrices
l
i = 1,..., m
A mxl Blxn = Cmxn cij = aik bkj ;
j = 1,..., n (A.14)
k =1
2 3 3 -2 2
A = y B =
1 -4 1 0 -1
Solucin:
2 3
3 -2 2 = 9 -4 1.
AB = 1 0 -1 -1 -2 6
1 -4
267
Aplicaciones de Programacin no Lineal
Para n =1
det(a11 ) = a11
Para n=2
a a
det 11 12 = a11a22 - a12a21
a21 a22
Para n=3
a11 a12 a13
det a21 a22 a23 = a11a22a33 - a11a23a32 - a12a21a33
a31 a32 a33
+ a12a23a31 + a13a21a32 - a13a22a31
n
det A = A = a1k c1k ; c1k = (-1)1+k D1k ; n = 2,3,...
k =1
(A.15)
268
Apndice A. Matemticas preliminares
Partiendo de las definiciones A.10 y A.11 se tienen dos maneras para calcular
el valor del determinante de una matriz cuadrada A.
n n
A= aijcij = (-1)i+ j aij det Mij (A.17)
j =1 j =1
269
Aplicaciones de Programacin no Lineal
n n
A= aijcij = (-1)i+ j aij det Mij (A.18)
i =1 i =1
n
A= aii (A.19)
i =1
270
Apndice A. Matemticas preliminares
adj A A*
A-1 = = (A.22)
det A A
1 2 3
A = 4 5 6
7 8 10
Solucin:
2 -3 2 4 -3
2
C = 4 -11 6 y A* = CT = 2 -11 6
-3 6 -3 -3 6 -3
2 4 -3
A *
1
A-1 = = 2 -11 6
A -3
-3 6 -3
271
Aplicaciones de Programacin no Lineal
1
1) A-1 =
A
-1
2) ( A-1 ) =A
-1 T
3) ( ) AT (
= A-1 )
T
4) Si A es simtrica ( A
T
= A ), entonces A-1 ( ) = A- 1
1
5) Si A es diagonal invertible, entonces A-1 =
aii
nxn
-1
6) ( AB) = B-1A-1
n
T
x A= xi aijeTj (A.23)
i , j =1
272
Apndice A. Matemticas preliminares
n
Ax = aij x jei (A.24)
i , j =1
n
T
x Ax = xi aij x j (A.25)
i , j =1
n
xx = T
xi x jeieTj (A.26)
i , j =1
n
x 2= x x= T
xi2 (A.27)
i =1
273
Aplicaciones de Programacin no Lineal
1) x
= max xi (norma mxima).
1in
n
2) x1= xi (norma de la sumatoria).
i =1
n
p
x p
= p
xi (A.28)
i =1
n n
A F
= aij2 (A.29)
i =1 j =1
n
1) A
= max
1in
aij
j =1
n
2) A = max
1 1 j n aij
i =1
274
Apndice A. Matemticas preliminares
Definicin A.16
Una combinacin lineal de vectores , con un conjunto de
escalares , se define como
(A.30)
275
Aplicaciones de Programacin no Lineal
f (l ) = det ( A - lI ) (A.31)
f (l ) = det ( A - lI ) = 0 (A.32)
n
ckl n-k = 0 (A.33)
k =0
276
Apndice A. Matemticas preliminares
Ejemplo A.3
Dada la matriz ,
3 0 2
A = -6 5 1
9 -5 1
Solucin:
3 0 2 1 0 0
-6 5 1 - l 0 1 0 = l 3 - 9l 2 + 10l = 0
9 -5 1 0 0 1
(
l 3 - 9l 2 + 10l 2 = l l 2 - 9l + 10 = 0 )
cuyas races son
9 41 9 41
l1 = 0, l2 = + , l3 = -
2 2 2 2
las cuales son los valores propios de la matriz A .
277
Aplicaciones de Programacin no Lineal
Axi = li xi (A.34)
n
ck An-k = 0 (A.35)
k =0
278
Apndice A. Matemticas preliminares
y entonces
1
I =-
cn
(
c0 A n + c1A n-1 + + cn-1A ) (A.36)
1
A-1 = -
cn
(
c0 A n-1 + c1A n-2 + + cn-1I ) .
(A.37)
1 0 1
A = -1 1 -3
2 2 4
Solucin:
La ecuacin caracterstica de A es
l 3 - 6l 2 + 13l - 6 = 0
.
279
Aplicaciones de Programacin no Lineal
y por lo tanto,
1 0 1 2 1 0 1 1 0 0
1
A-1 = -1 1 -3 - 6-1 1 -3 + 130 1 0
6
2 2 4 2 2 4 0 0 1
5 1 1
-
3 3 6
-1 1 1 1
A = -
3 3 3
2
1 1
- -
3 3 6
Observe que el clculo de una matriz inversa por el uso de la ecuacin (A.37) es
muy adaptable a una computadora digital y no es difcil de calcular manualmente
para pequeos valores de n. Por ltimo, usando la ecuacin (A.37) ahora es po-
sible expresar cualquier potencia entera negativa de una matriz no singular A de
orden n en trminos de una funcin lineal de las primeras (n-1) potencias de A.
280
Apndice A. Matemticas preliminares
a11 a12 a13 a1n
a a22 a23 a2 n
21
A =
(A.38)
a31 a32 a33 a3n
an1 an 2 an3 ann
281
Aplicaciones de Programacin no Lineal
Para i = 1, 2,..., n
1 2
A =
2 3
Solucin:
a11 a12
D1 = a11 = 1 > 0 y D2 = = -1 < 0
a21 a22
282
Apndice A. Matemticas preliminares
Para i = 1, 2,..., n
restantes li <0.
Ejemplo A.6 Dada la matriz del ejemplo A.5, determine si sta es; positiva defi-
nida, positiva semidefinida, negativa definida, negativa semidefinida e indefinida
usando el criterio de los valores propios.
Solucin:
283
Aplicaciones de Programacin no Lineal
3) Los valores propios de una matriz diagonal son iguales a los elementos de la
diagonal principal.
4) Si li son los valores propios de A , entonces li-1 son los valores propios de
A-1 .
5) Si los valores propios de una matriz son distintos, entonces los vectores pro-
pios asociados son linealmente independientes.
7) Si A es una matriz real, entonces los vectores propios de A asociados con dis-
tintos valores propios son vectores mutuamente ortogonales.
Formas cuadrticas
n n
f ( A, x) = aij xi x j (A.39)
i =1 j =1
f ( A, x) = xT Ax (A.40)
284
Apndice A. Matemticas preliminares
Solucin:
T 3 5
f ( A, x) = 3 x12 + 10 x1x2 + 3 x22 = ( x1, x2 ) x1 = xT Ax
5 3 x2
T 3 10
f ( A, x) = 3 x12 + 10 x1x2 + 3 x22 = ( x1, x2 ) x1 = xT Ax
x2
0 3
o
T 3 3 x1
f ( A, x) = 3 x12 + 10 x1x2 + 3 x22 = ( x1, x2 ) = xT Ax
7 3 x2
Obsrvese que la primera forma matricial contiene a una matriz simtrica y esta
es nica, mientras que en las otras formas matriciales se tienen dos matrices no
simtricas.
285
Aplicaciones de Programacin no Lineal
Ejemplo A.8 La forma cuadrtica del ejemplo A.7 sera una forma cuadrtica
indefinida porque sta toma valores positivos para ciertos valores de x y valores
negativos para otros valores de x, como puede verificar el lector.
286
REFERENCIAS
REFERENCIAS
Bazaraa, M.S., Sherali, H.D. y C.M. Shetty, Nonlinear Programming Theory and
Algorithms, Third Edition, John Wiley & Sons, Inc., 2006.
http://dx.doi.org/10.1002/0471787779
Bevington, P.R., Data Reduction and Error Analysis for the Physical Sciences,
McGraw-Hill Book Company, 1969.
289
Aplicaciones de Programacin no Lineal
Dennis, J.B. y R.B. Schnabel, Numerical Methods for Unconstrained and Nonlinear
Equations, Prentice-Hall, Englewood Cliffs, New Jersey 1983.
Eves, H., Elementary Matrix Theory, Dover Publications, Inc., New York, 1966.
Fletcher, R., A modifie Marquardt subroutine for nonlinear least squares, Report
R6799, AERE, Harwell, 1971.
290
Aplicaciones de Programacin no Lineal
Fletcher, R., Practical Methods of Optimization, Second Edition, John Wiley &
Sons, Inc., 1993.
Forst, Wilhelm and Dieter Hoffmann, Optimization: Theory and Practice, Springer,
2010.
http://dx.doi.org/10.1007/978-0-387-78977-4
Gill, P.E., Murray, W., y Wright, M.H., Practical Optimization, Academic Press,
New York, 1981.
Golub, G.H. y C.F. Van Loan, Matrix Computations, Third Edition, The John
Hopkins University Press, Baltimore and London, 1996.
Levenberg, K., A method for the solution of certain nonlinear problems in least
squares, Quart, Appl. Math. 2, pp 164-168, 1944.
Luenberguer, D.G. y Y. Ye, Linear and Nonlinear Programming, 3rd Ed., Springer,
2008.
291
Aplicaciones de Programacin no Lineal
Mathews, J.H. y K.D. Fink, Mtodos Numricos con MATLAB, Prentice-Hall Iberia
S.R.L., 2000.
Searle, S.R., Matrix Algebra Useful for Statistics, John Wiley & Sons. 1982.
Strang, G., Linear Algebra, Second Edition, Academic Press, New York, 1980.
292