Está en la página 1de 7

TAREA 4

Daniel Alejandro Vargas Uzuriaga


15 de septiembre de 2021

1. Método del gradiente


Resolver utilizando búsqueda lineal inexacta con la dirección de máximo
descenso (menos el gradiente), para la función
f (x, y) = (1 − x)2 + 100(y − x2 )2
Comenzando en el punto x0 = (1, 1).
Solución
Primero se determina el gradiente de la función, calculando se tiene

−2(1 − x) − 400x(y − x2 )
∇ f (x, y) = ( )
200(y − x2 )
Considerando la dirección de descenso
d = −∇ f (x, y) (1)
Considerando el método del gradiente con búsqueda lineal inexacta se resolverá
usando la condición de Armijo, que equivale a resolver
f ((x, y) + λd) ≤ f (x, y) + αλ∇ f (x, y)T d
Reemplazando el valor de (1)
f (x − λ∇ f (x, y)) ≤ f (x, y) − αλ∇ f (x, y)T ∇ f (x, y)
Luego, por propiedades del producto punto y la norma se tiene
2
f ((x, y) − λ∇ f (x, y)) ≤ f (x, y) − αλ∥∇ f (x, y)∥ (2)
Lo que es equivalente a resolver
2
φ(λ) ≤ φ(0) − αλ∥φ′ (0)∥
Es decir, busca encontrar un λ tal que haya una buena reducción en la función
objetivo y dicha reducción debe ser proporcional al tamaño de paso.
De aquı́, se evalua el gradiente y la función en el punto inicial x0 = (1, 1)
f (1, 1) = 0

1
y
0
∇ f (1, 1) = ( )
0
x 1
Esto indica que en dicho punto inicial ( 0 ) = ( ) se tiene el minimizador de la
y0 1
función, para esto basta observar que el gradiente en dicho punto es cero y que
la matriz Hessiana es definida positiva, observe este hecho acontinuación

2 − 400(y − 3x2 ) −400x


∇2 f (x, y) = ( )
−400x 200

Luego evaluanndo en el punto inicial se tiene

802 −400
∇2 f (1, 1) = ( )
−400 200

Haciendo
802 −400 x
(x y) ( ) ( ) = 200(2x − y)2 + 2x2 > 0
−400 200 y
x 0
Para ( ) ≠ ( ).
y 0
Por lo tanto por la conndición suficiente de segundo orden en el punto inicial
x0 = (1, 1) se verifica lo dicho anteriormente. Esto quiere decir que al ingresar el
punto x0 = (1, 1) en el algoritmo del método del gradiente con búsqueda lineal
inexacta no calcuları́a nada pues ya se tiene la solución.
Entonces lo que se realizará acontinuación es un análisis de lo que ocurre si
se toma otro punto inicial, y por qué suele ser complicado llegar a la solucion
x = (1, 1). Para esto se usará como herramienta Matlab.
Para Matlab se realizan las funciones f ta que será la función f (x, y) = (1−x)2 +
−2(1 − x) − 400x(y − x2 )
100(y−x2 )2 , grad ta que será el gradiente ∇ f (x, y) = ( )
200(y − x2 )
, metodo grad como el método del gradiente y lam ta que será la búsqueda li-
neal inexacta con la condición de Armijo, como se puede observar en lo que
sigue

Figura 1: f (x, y) = (1 − x)2 + 100(y − x2 )2

2
−2(1 − x) − 400x(y − x2 )
Figura 2: ∇ f (x, y) = ( )
200(y − x2 )

Figura 3: Método del gradiente

Figura 4: Búsqueda lineal inexacta con la condición de Armijo

Si se toma como punto inicial a x0 = (1; 0,9999) se puede ver en el cuadro1


que el método converge o se acerca al punto x = (1, 1) .

3
k l (x(1),x(2)) ∥g∥ f
0 1.00000 (1.0000,0.9999) 0.04472 0.0000010
1 0.00013 (0.9600,1.0199) 42.63112 0.9678890
2 0.00013 (0.9647,1.0174) 37.76404 0.7536548
3 0.00013 (0.9689,1.0153) 33.40412 0.5856621
4 0.00013 (0.9726,1.0134) 29.50934 0.4543016
5 0.00013 (0.9759,1.0117) 26.03868 0.3518438
6 0.00013 (0.9788,1.0102) 22.95273 0.2721084
7 0.00013 (0.9814,1.0089) 20.21418 0.2101794
8 0.00013 (0.9836,1.0077) 17.78810 0.1621650
9 0.00013 (0.9856,1.0067) 15.64210 0.1249969
10 0.00013 (0.9873,1.0059) 13.74639 0.0962645
11 0.00013 (0.9889,1.0051) 12.07376 0.0740802
12 0.00013 (0.9902,1.0044) 10.59951 0.0569701
13 0.00013 (0.9914,1.0038) 9.30128 0.0437861
14 0.00013 (0.9925,1.0033) 8.15899 0.0336356
15 0.00013 (0.9934,1.0028) 7.15462 0.0258264
16 0.00013 (0.9942,1.0024) 6.27207 0.0198224
17 0.00013 (0.9949,1.0021) 5.49697 0.0152088
18 0.00013 (0.9955,1.0018) 4.81659 0.0116654
19 0.00013 (0.9960,1.0015) 4.21959 0.0089451
20 0.00013 (0.9965,1.0013) 3.69595 0.0068576
21 0.00013 (0.9969,1.0011) 3.23680 0.0052561
22 0.00013 (0.9973,1.0009) 2.83432 0.0040279
23 0.00013 (0.9976,1.0007) 2.48160 0.0030862
24 0.00013 (0.9979,1.0006) 2.17255 0.0023643
25 0.00013 (0.9981,1.0005) 1.90182 0.0018111
26 0.00013 (0.9983,1.0003) 1.66470 0.0013872
27 0.00013 (0.9985,1.0003) 1.45704 0.0010624
28 0.00013 (0.9987,1.0002) 1.27521 0.0008136
29 0.00013 (0.9988,1.0001) 1.11601 0.0006230
30 0.00013 (0.9989,1.0000) 0.97665 0.0004770
31 0.00013 (0.9990,1.0000) 0.85465 0.0003652
32 0.00013 (0.9991,0.9999) 0.74786 0.0002796
33 0.00013 (0.9992,0.9999) 0.65440 0.0002141
34 0.00013 (0.9993,0.9999) 0.57260 0.0001639
35 0.00013 (0.9994,0.9998) 0.50102 0.0001255
36 0.00013 (0.9994,0.9998) 0.43837 0.0000961
37 0.00013 (0.9995,0.9998) 0.38356 0.0000735
38 0.00013 (0.9995,0.9998) 0.33559 0.0000563
39 0.00013 (0.9995,0.9997) 0.29361 0.0000431
40 0.00013 (0.9996,0.9997) 0.25689 0.0000330
41 0.00013 (0.9996,0.9997) 0.22475 0.0000253
42 0.00013 (0.9996,0.9997) 0.19663 0.0000194

4
43 0.00013 (0.9996,0.9997) 0.17203 0.0000148
44 0.00013 (0.9997,0.9997) 0.15051 0.0000114
45 0.00013 (0.9997,0.9997) 0.13168 0.0000087
46 0.00013 (0.9997,0.9997) 0.11520 0.0000067
47 0.00013 (0.9997,0.9996) 0.10078 0.0000051
48 0.00013 (0.9997,0.9996) 0.08817 0.0000039
49 0.00013 (0.9997,0.9996) 0.07714 0.0000030
50 0.00013 (0.9997,0.9996) 0.06749 0.0000023
51 0.00013 (0.9997,0.9996) 0.05904 0.0000018
52 0.00013 (0.9998,0.9996) 0.05165 0.0000014
53 0.00013 (0.9998,0.9996) 0.04519 0.0000011
54 0.00013 (0.9998,0.9996) 0.03953 0.0000008
55 0.00013 (0.9998,0.9996) 0.03459 0.0000006
56 0.00013 (0.9998,0.9996) 0.03026 0.0000005
57 0.00013 (0.9998,0.9996) 0.02647 0.0000004
58 0.00013 (0.9998,0.9996) 0.02316 0.0000003
59 0.00013 (0.9998,0.9996) 0.02026 0.0000002
60 0.00013 (0.9998,0.9996) 0.01772 0.0000002
61 0.00013 (0.9998,0.9996) 0.01551 0.0000002
62 0.00013 (0.9998,0.9996) 0.01357 0.0000001
63 0.00013 (0.9998,0.9996) 0.01187 0.0000001
64 0.00013 (0.9998,0.9996) 0.01038 0.0000001
65 0.00013 (0.9998,0.9996) 0.00908 0.0000001
66 0.00013 (0.9998,0.9996) 0.00795 0.0000001
67 0.00013 (0.9998,0.9996) 0.00695 0.0000001
68 0.00013 (0.9998,0.9996) 0.00608 0.0000001
69 0.00013 (0.9998,0.9996) 0.00532 0.0000001
70 0.00013 (0.9998,0.9996) 0.00466 0.0000000
71 0.00013 (0.9998,0.9996) 0.00408 0.0000000
72 0.00013 (0.9998,0.9996) 0.00357 0.0000000
73 0.00013 (0.9998,0.9996) 0.00312 0.0000000
74 0.00013 (0.9998,0.9996) 0.00273 0.0000000
75 0.00013 (0.9998,0.9996) 0.00239 0.0000000
76 0.00013 (0.9998,0.9996) 0.00209 0.0000000
77 0.00013 (0.9998,0.9996) 0.00183 0.0000000
78 0.00013 (0.9998,0.9996) 0.00161 0.0000000
79 0.00013 (0.9998,0.9996) 0.00141 0.0000000
80 0.00013 (0.9998,0.9996) 0.00123 0.0000000
81 0.00013 (0.9998,0.9996) 0.00108 0.0000000
82 0.00013 (0.9998,0.9996) 0.00095 0.0000000
83 0.00013 (0.9998,0.9996) 0.00084 0.0000000
84 0.00013 (0.9998,0.9996) 0.00074 0.0000000
85 0.00013 (0.9998,0.9996) 0.00065 0.0000000
86 0.00013 (0.9998,0.9996) 0.00058 0.0000000
87 0.00013 (0.9998,0.9996) 0.00051 0.0000000
88 0.00013 (0.9998,0.9996) 0.00045 0.0000000
89 0.00013 (0.9998,0.9996)
5 0.00041 0.0000000
90 0.00013 (0.9998,0.9996) 0.00037 0.0000000
91 0.00250 (0.9998,0.9996) 0.00033 0.0000000
92 0.00013 (0.9998,0.9996) 0.00046 0.0000000
93 0.00013 (0.9998,0.9996) 0.00041 0.0000000
94 0.00013 (0.9998,0.9996) 0.00037 0.0000000
95 0.00013 (0.9998,0.9996) 0.00033 0.0000000
96 0.00250 (0.9998,0.9996) 0.00030 0.0000000
97 0.00013 (0.9998,0.9996) 0.00041 0.0000000
98 0.00013 (0.9998,0.9996) 0.00037 0.0000000
99 0.00013 (0.9998,0.9996) 0.00033 0.0000000
100 0.00250 (0.9998,0.9996) 0.00030 0.0000000
101 0.00013 (0.9998,0.9996) 0.00041 0.0000000

Cuadro 1: Médoto del gradiente aplicado al punto inicial x0 = (1; 0,9999)

Ahora si se toma como punto inicial x0 = (1,2; 1) el algoritmo no converge al


minimizador, es decir , al realizar el método del gradiente con búsqueda lineal
inexacta con la condición de Armijo no encuentra ün caminoüna dirección hacia
el minimizador. Al realizar múltiples programas con distintos puntos iniciales
se notaba que entre más alejado era más complejo encontrar una dirección por
medio de este método, pues al verificar las tablas obtenidas daban valores muy
grandes y lejanos del minimizador, esta dificultad se presenta por lo que la fun-
ción tiene un mı́nimo superficial dentro de un valle profundamente curvado.

En las sigueintes gráficas se puede observar de mejor manera el comporta-


miento de la función y su gráfica como se muestra respectivamente en la figura
5 y la figura 6 respectivamente.

Figura 5: Contorno de la función, tomada de https://www.math.purdue.edu/


~wang838/notes/HW/CS20_HW.pdf

6
Figura 6: Gráfica de la función f (x, y) = (1 − x)2 + 100(y − x2 )2 y el punto (1; 1)

También podría gustarte