Vous êtes sur la page 1sur 9

Ejercicios de optimizaci on sin restricciones

Programaci on Matem atica Licenciatura en Ciencias y T ecnicas Estad sticas Curso 05/06

1. Indica la direcci on que el m etodo de Newton (sin modicaciones) calcular a en el punto T x0 = 1 1 , para el problema m axx 2x1 + log x1 x2 2 x2

Qu e direcci on tomar a el m etodo de Newton modicado? Ser a necesario modicar la matriz de coecientes? Soluci on. Para calcular la direcci on de movimiento p0 mediante el m etodo de Newton hemos de resolver un sistema de ecuaciones en cuyos coecientes intervienen las primeras y segundas derivadas de las funciones que denen el problema, que en nuestro caso valen: 2 1 + x2 x1 , f (x) = 2 2 x1 1 + 2 (2 x2 ) x2 1 x2 1 2 f (x) = 2 (2 x2 )2 2 (2 x2 )2 4x1 1 (2 x2 )3 x2 2

Para el punto x0 obtenemos los siguientes valores: f (x0 ) = 3 3 , 2 f (x0 ) = 1 2 2 3 .

Con estos datos podemos formar el sistema de ecuaciones de Newton 2 f (x0 )p0 = f (x0 ), 1 2 2 3 p0 = 3 3 p0 = 15 9 .

Esta ser a la direcci on que obtendr a el m etodo de Newton sin modicaciones; puede verse que dicha direcci on es de descenso, ya que f (x0 )T p0 = 18, pero como estamos maximizando esa no es la propiedad que deseamos tener en p0 , debido a que no solo no nos acerca a un m aximo sino que nos aleja del mismo. Obs ervese que la matriz 2 f (x0 ) es indenida, por lo que para aplicar el m etodo de Newton modicado es necesario modicar la matriz de coecientes del sistema de ecuaciones de manera que dicha matriz sea denida negativa (por ser un problema de maximizaci on). Una modicaci on posible del sistema anterior consiste en a nadir un m ultiplo de la identidad a la matriz de coecientes. Como los autovalores de la matriz Hessiana son 1, 83 y 3, 83 (obtenidos por ejemplo de los ceros del polinomio de segundo grado (1 )(3 ) 4), podemos restar 4 veces la identidad a dicha matriz Hessiana para obtener la matriz modicada 5 2 , B0 = 2 f (x0 ) 4I = 2 1 1

y la soluci on del sistema modicado es ahora 5 2 2 1 p0 = 3 3 p= 9 21 .

Esta direcci on s es una direcci on de ascenso, con f (x0 )T p = 90 > 0. 2. Compara las direcciones que se obtendr an aplicando el m etodo de Newton y un m etodo de Newton modicado al problema m axx en el punto x0 = 1 1
T

2x1 + log x1 x2 2 x2

Soluci on. Al igual que en el problema anterior, comenzamos calculando las derivadas de la funci on objetivo del problema, 1 2 2 1 + (2 x2 )2 x2 x2 x1 , 2 1 f (x) = 2 2 f ( x ) = 1 x1 2 4x1 1 + (2 x2 )2 x2 (2 x2 )2 (2 x2 )3 x2 2 En el punto indicado, los valores correspondientes a estas derivadas son f (x0 ) = 3 3 , 2 f (x0 ) = 1 2 2 3 .

Con estos valores calculamos la direcci on de Newton y varias direcciones correspondientes al m etodo de Newton modicado. La direcci on de Newton vale 2 f (x0 )p = f (x0 ), 1 2 2 3 p= 3 3 p= 15 9 .

Los autovalores y autovectores de la matriz Hessiana, H , son tales que se cumple H = V DV T = 0,92 0,38 0,38 0,92 1,83 0 0 3,83 0,92 0,38 0,38 0,92 ,

donde V es la matriz de autovectores y D es la matriz de autovalores (en este caso se han obtenido utilizando Matlab). De esta informaci on tenemos que la matriz H no es denida negativa, y debe ser modicada para asegurar que las direcciones obtenidas sean de ascenso. Si modicamos la matriz restando un m ultiplo de la identidad, tenemos M = H I = 1 2 2 3 3,84 1 0 0 1 = 4,84 2 2 0,84 ,

y la direcci on de movimiento es Mp = f (x0 ), 4,84 2 2 0,84 p = 3 3 p = 129,88 312,80 .

Por u ltimo, si sustituimos los autovalores positivos por su valor negativo, obtenemos como matriz modicada = M 0,92 0,38 0,38 0,92 1,83 0 0 3,83 2 0,92 0,38 0,38 0,92 = 2,12 0,71 0,71 3,54 ,

y la direcci on correspondiente es p M = f (x0 ), 2,12 0,71 0,71 3,54 p = 3 3 p = 1,21 0,61 .

Para comparar las tres direcciones, podemos mirar el descenso local en el punto, esto es, el valor de g T p/ p , que nos mide la calidad local de la direcci on (para considerar una medida mejor, tendr amos que comparar el comportamiento completo en todas las iteraciones, y ver que m etodo necesita menos para calcular la soluci on). Para este criterio tenemos g T p/ p = 1,90, gT p / p = 3,92, gT p / p = 4,02,

y de acuerdo con el criterio la mejor opci on ser a la u ltima. Adem as el tama no de p es mucho m as razonable que el de p , mientras que p es una direcci on de descenso. 3. Dado el problema m axx
T

x1 + 3x2 2 + x2 x3 , x2 1 + x2
T

y el punto x0 = 1 1 1 . Para qu e valores de ser a p0 = 4 0 de movimiento aceptable en el m etodo de Newton (modicado)?

una direcci on

Para el m etodo de b usqueda lineal dene = 0, 1 y calcula una longitud de paso aceptable para = 4. Soluci on. Para el m etodo de Newton modicado con b usqueda lineal las direcciones de movimiento aceptables deben cumplir que sean direcciones de ascenso (en este caso estamos maximizando). En particular, deber a cumplirse que f (x0 )T p0 > 0. En nuestro caso, el gradiente de la funci on objetivo es: 2 x2 1 + x2 6x1 x2 2 2 3/2 x2 1 + x2 2 f (x) = 3x2 f (x0 ) = 1/2 , 1 3x2 2x1 x2 + x 3 2 2 1 x2 1 + x2 x2 Para la direcci on indicada y la condici on deseada obtenemos f (x0 )T p0 = 6 + >0 2 > 12.

Para realizar la b usqueda lineal, tomamos = 4. Obs ervese que para este valor tenemos una direcci on de descenso. El criterio de terminaci on de la b usqueda lineal ser a f (x0 + p0 ) f (x0 ) + f (x0 )T p0 , y podr a suceder que como la direcci on que tenemos no es adecuada, acab aramos con un punto peor que el inicial (el u ltimo t ermino es negativo en este caso). Tenemos los siguientes valores en nuestro caso: f (x0 ) = 3, f (x0 )T p0 = 4, = 0,1

Si comenzamos probando con = 1 obtenemos 5 27 13 5 , x0 + p0 = f (x0 + p0 ) = > = f (x0 ) + f (x0 )T p0 , 5 5 1 luego pese a que la direcci on no es adecuada, en este caso aceptar amos = 1. 3

4. Aplica una iteraci on del m etodo de Newton modicado al problema m n


x

x1 , (1 + x1 )(1 + x2 )

partiendo del punto x0 =

0 1

. Toma = 0, 1.

Haz los c alculos correspondientes a una iteraci on para un m etodo quasi-Newton partiendo de la matriz B0 = 2I . Soluci on. Se trata de emplear el m etodo de Newton modicado en restricciones. Para ello necesitamos las derivadas de la funci on objetivo. 1 2 (1 + x ) 2 f (x) = (1 + x1 ) x 1 (1 + x1 )(1 + x2 )2 2 1 3 2 (1 + x1 ) (1 + x2 ) (1 + x1 ) (1 + x2 )2 2 f (x) = 2x1 1 2 2 (1 + x1 ) (1 + x2 ) (1 + x1 )(1 + x2 )3 un problema sin Estas son:

Con estos datos podemos aplicar el m etodo de Newton a partir de x0 = 0 1 . En cualquiera de los dos m etodos comenzamos por calcular el gradiente y comprobar si es sucientemente peque no como para poder considerar el punto indicado como soluci on del problema. El gradiente vale f (x0 ) = El punto no parece ser soluci on. A continuaci on aplicamos en primer lugar el m etodo de b usqueda lineal. Para ello calculamos una direcci on de movimiento a partir del sistema de Newton, 2 f (x0 )p0 = f (x0 ), pero modicamos dicho sistema si la matriz de coecientes no es denida positiva. En nuestro caso, la matriz de segundas derivadas en x0 vale 2 f (x0 ) =
1 1 4 1 0 4 1 2

f (x0 ) = 1 2.

y esta matriz no es denida positiva (es indenida). Para modicarla, por ejemplo sumamos a la matriz Hessiana la matriz identidad multiplicada por 1,1 (un poco mayor que el menor autovalor, 1,059, obtenido por ejemplo de las ra ces de (1 ) 1/16). La matriz resultante es 0,2 0,25 M0 = , 0,25 1,2 y el sistema a resolver y la direcci on resultante son M0 p0 = f (x0 ), 0,2 0,25 0,25 1,2 p0 = 0,5 0 p0 = 3,38 0,70 .

Una vez conocida la direcci on de movimiento p0 , a continuaci on determinamos una longitud de paso adecuada. Debemos encontrar un valor de para el que se cumpla que f (x0 + p0 ) f (x0 ) + f (x0 )T p0 , 4

donde podemos calcular que f (x0 ) = 0 y f (x0 )T p0 = 1,69 (negativo como debiera ser). Tomamos = 0,1. Si comenzamos probando con = 1 obtenemos f (x0 + p0 ) = 1,10, f (x0 ) + f (x0 )T p0 = 0,17.

Como no se cumple la condici on, este valor de no es aceptable y probamos de nuevo con = 1/2. Obtenemos ahora f (x0 + p0 ) = 1,49, f (x0 ) + f (x0 )T p0 = 0,08.

Este valor de no es aceptable y probamos con = 1/4. Obtenemos f (x0 + p0 ) = 2,99, f (x0 ) + f (x0 )T p0 = 0,04.

Este valor s es aceptable, y tomamos 0 = 1/4. El nuevo punto vendr a dado por x1 = x0 + 0 p0 = 0,85 0,82 .

A partir de aqu se volver a a repetir el proceso anterior. Para el m etodo quasi-Newton, comenzamos por calcular la direcci on de movimiento a partir de B0 p0 = f (x0 ), 2 0 0 2 p0 = 0,5 0 p0 = 0,25 0 .

Para llevar a cabo la b usqueda lineal, comenzamos probando con = 1, obteniendo f (x0 + p0 ) = 0,17, f (x0 ) + f (x0 )T p0 = 0,01,

y la condici on de descenso suciente se cumple (el problema es de minimizaci on), aceptando como nuevo punto en este caso x1 = x0 + p0 = 0,25 1 .

Por u ltimo, obtendremos la nueva matriz B empleando la f ormula de la actualizaci on sim etrica de rango uno, B1 = B0 + donde y0 = f (x1 ) f (x0 ) = Obtenemos de estos valores y0 B0 s0 = y nalmente B1 = 2I + 64/81 8/108 8/108 1/144 5 /(5/36) = 3,69 0,53 0,53 1,95 . 7/18 1/12 1/2 0 = 8/9 1/12 , (y0 B0 s0 )T s0 = 5/36 8/9 1/12 1/2 0 = 7/18 1/12 , s0 = 0 p0 = 1/4 0 . (y0 B0 s0 )(y0 B0 s0 )T , (y0 B0 s0 )T s0

5. Aplica dos iteraciones del m etodo quasi-Newton al problema m ax x2 1 + 2x2


x

x1 x2 , 1 + x1 + x2

partiendo del punto x0 =

1 1

. Toma = 0, 1 y B0 = I .

Soluci on. Como en los casos anteriores, comenzamos por obtener la forma de las derivadas de la funci on objetivo del problema, observando que para aplicar un m etodo quasi-Newton no hace falta conocer el valor de las segundas derivadas, x2 + x2 2 2x1 (1 + x1 + x2 )2 , f (x) = x1 + x2 1 2 (1 + x1 + x2 )2 y para el punto inicial indicado tenemos f (x0 ) = 20/9 16/9 .

La direcci on de movimiento en la primera iteraci on vendr a dada por B0 p0 = g0 , p0 = 20/9 16/9 .

Obs ervese que al ser un problema de maximizaci on la matriz B0 ha de ser denida negativa (B0 = I ). Iniciamos la b usqueda lineal buscando un valor de que cumpla f (x0 + p0 ) f (x0 ) + f (x0 )T p0 , probando con = 1, valor para el que obtenemos f (x0 ) = 0, 67 f (x0 ) + f (x0 )T p0 = 1, 48 f (x0 + p0 ) = 5, 39

y por tanto se cumple la condici on y aceptamos el nuevo punto como x1 = x0 + p0 = 11/9 25/9 .

En este punto las derivadas de la funci on objetivo valen f (x1 ) = 0, 84 1, 96 .

Estos valores no son peque nos, y por tanto debemos seguir iterando. Como primer paso, obtendremos la nueva matriz quasi-Newton empleando la f ormula de actualizaci on sim etrica de rango uno, (y0 B0 s0 )(y0 B0 s0 )T B1 = B0 + , (y0 B0 s0 )T s0 donde en este caso y0 = f (x1 ) f (x0 ) = s0 = 0 p0 = 20/9 16/9 . 6 0, 84 1, 96 20/9 16/9 = 3, 06 0, 18

Obtenemos de estos valores y0 B0 s0 = y nalmente B1 = I + 0, 70 1, 64 1, 64 3, 84 /1, 62 = 0, 57 1, 01 1, 01 1, 37 . 3, 06 0, 18 + 20/9 16/9 = 0, 84 1, 96 , (y0 B0 s0 )T s0 = 1, 62

Con esta matriz volvemos a calcular la direcci on de movimiento como B1 p1 = g1 , p1 = 0, 47 1, 09 .

Para la b usqueda lineal deber amos buscar un valor de que cumpliese la condici on de ascenso suciente, f (x1 + p1 ) f (x1 ) + f (x1 )T p1 , pero un problema que tiene la actualizaci on sim etrica de rango uno es que no garantiza que las matrices obtenidas sean denidas negativas (en este caso), y en particular tenemos que f (x1 )T p1 = 2, 52, esto es, una direcci on de descenso y no existen valores de aceptables. Por tanto, modicamos la matriz B1 para que sea denida negativa, utilizando las mismas t ecnicas que para el m etodo de Newton modicado, obteniendo B1 = V DV T = y 1 = B 0,92 0,39 0,39 0,92 1 0 0 1,80 0,92 0,39 0,39 0,92 = 1, 12 0, 29 0, 29 1, 68 , 0,92 0,39 0,39 0,92 1 0 0 1,80 0,92 0,39 0,39 0,92 ,

y la direcci on de movimiento es 1 p1 = g1 , B Probamos con = 1 y obtenemos f (x1 ) = 5, 39 f (x1 ) + f (x1 )T p1 = 5, 64 f (x1 + p1 ) = 7, 87 p1 = 0, 47 1, 09 .

y por tanto se cumple la condici on y aceptamos el nuevo punto como x2 = x1 + p1 = 0, 76 3, 87 .

En este punto las derivadas de la funci on objetivo valen f (x2 ) = 0, 40 2, 01 .

Por u ltimo, actualizamos la matriz B a partir de y1 = f (x2 ) f (x1 ) = y nalmente


T 1 + (y1 B1 s1 )(y1 B1 s1 ) = B2 = B 1 s1 )T s1 (y1 B

0, 44 0, 05

s1 = 1 p1 =

0, 47 1, 09

1, 12 0, 29 0, 29 1, 68

0, 07 0, 34 0, 34 1, 70

1, 06 0, 05 0, 05 0, 03

6. Demuestra que el m etodo de Newton encuentra la soluci on del problema m n


1 T 2 x Qx

+ rT x

en una sola iteraci on desde un punto inicial x0 cualquiera. Sup on que Q es denida positiva. C omo deben ser las constantes para que esta propiedad siga siendo v alida en un m etodo de Newton con b usqueda lineal? Soluci on. Empezamos por observar que el gradiente y la matriz Hessiana de esta funci on objetivo en un punto x son f (x) = r + Qx, 2 f (x) = Q.

El m etodo de Newton para este problema, aplicado a partir de un punto inicial cualquiera, x0 , busca el punto siguiente como la soluci on del sistema de ecuaciones 2 f (x0 )p = f (x0 ), esto es, Qp = (r + Qx0 ). (1) Obs ervese que como Q es denida positiva no hay que modicar nunca la matriz de coecientes. Reescribiendo (1), el punto x0 + p cumple por tanto la condici on siguiente: Q(x0 + p) + r = 0, esto es, el gradiente de la funci on objetivo en el nuevo punto es cero y por tanto cumple las condiciones de primer orden, pero como adem as nos dicen que Q es denida positiva, cumple tambi en las condiciones de segundo orden, y es por tanto una soluci on local de nuestro problema. De hecho, como el problema es convexo, es la soluci on global del problema. En el caso de aplicar un m etodo de b usqueda lineal, la direcci on de movimiento sigue siendo la indicada anteriormente. Hace falta adem as para que la convergencia tenga lugar en un u nico paso que se cumpla la condici on de descenso suciente, esto es, f (x + p) f (x) + f (x)T p, y en nuestro caso 1 (x0 + p)T Q(x0 + p) + rT (x0 + p) 2 1 T x Qx0 + rT x0 + (r + Qx)T p 2 0 1 (1 )(pT Qx0 + rT p) pT Qp, 2

y aplicando la condici on Qx0 = r Qp, que implica que pT Qx + rT p = pT Qp, 1 (x0 + p)T Q(x0 + p) + rT (x0 + p) 2 1 T x Qx0 + rT x0 + (r + Qx)T p 2 0 1 1 (1 )pT Qp pT Qp . 2 2
T rT x + 1 2 x Qx,

7. Dado el problema cuadr atico m n


x

donde la matriz Q y el vector r cumplen Qr = r, as como el punto inicial x0 = 2r y la matriz quasi-Newton inicial B0 = I , cu al ser a la siguiente matriz quasi-Newton a emplear en la segunda iteraci on? Por qu e?

Soluci on. En este problema se trata de aplicar el procedimiento general de aplicaci on de m etodos quasi-Newton, pero haci endolo para la forma gen erica indicada, esto es, empleando constantes en lugar de n umeros para los datos del problema. Las derivadas de las funciones del problema vienen dadas por f (x) = r + Qx, y en el punto inicial valen f (x0 ) = r + 2Qr = 3r, La direcci on de movimiento vendr a dada por B0 p0 = g0 p0 = 3r, y para llevar a cabo la b usqueda lineal empezamos probando con el valor = 1, obteniendo x0 + p0 = 2r 3r = r, y como se cumple que
T T f (x0 ) = 4rT r + 1 2 4r Qr = 6r r, T g0 p0 = 9r, T 1 T r Qr = 1 f (x0 + p0 ) = rT r + 2 2 r r,

2 f (x) = Q,

2 f (x0 ) = Q.

tenemos que
T T T f (x0 + p0 ) = 1 2 r r 5, 1r r = f (x0 ) + g0 p0 ,

y por tanto se cumple la condici on de descenso suciente (hemos tomado = 0, 1), y el nuevo punto es x1 = x0 + p0 = r, con un valor del gradiente dado por f (x1 ) = r + Qx1 = r Qr = 0, esto es, se trata de un m nimo de la funci on, siempre que Q sea denida positiva. Por tanto, no har a falta llevar a cabo una segunda iteraci on, pero si se quisiera calcular la nueva matriz quasi-Newton, tendr amos y0 = g1 g0 = 3r, s0 = p0 = 3r, y0 B0 s0 = 3r + 3r = 0,

y por tanto la f ormula de la actualizaci on sim etrica de rango uno no estar a bien denida, ya que el denominador valdr a (y0 B0 s0 )T s0 = 0.

Vous aimerez peut-être aussi