Está en la página 1de 45

Métodos Básicos de Descenso

Diana Assaely León Velasco

Departamento de Matemáticas Aplicadas y Sistemas


UAM, Cuajimalpa

Optimización I

Assaely (UAM) Optimización sin Restricciones Optimización I 1 / 27


Métodos Básicos de Descenso

f (x̄), f : Ω −→, Ω ⊂ Rn
x ∗ = mı́n f (x̄)

Condiciones: Caso interior


 
∂f
Puntos crı́ticos: ∇f (x̄) = 0̄ (x̄) = 0, i = 1, 2, . . . , n
∂xi
Un punto crı́tico x ∗ ∈ Ω es un mı́nimo global estricto si Hf (x̄ ∗ ) es definida
positiva (Hf (x̄ ∗ ) > 0).
x ∗ es un mı́nimo local estricto si Hf (x̄ ∗ ) ≥ 0 (semidefinida positiva)

Assaely (UAM) Optimización sin Restricciones Optimización I 2 / 27


Contenido

1 Algunos resultados básicos

2 Direcciones de Descenso

3 Método de Máximo descenso

4 El método de máximo descenso para funciones cuadráticas


Convergencia del método de Máximo Descenso

Assaely (UAM) Optimización sin Restricciones Optimización I 3 / 27


Algunos resultados básicos

Conjunto de Nivel: El conjunto de nivel del valor c de una función


f : Rn −→ R se define como

Sc = {x̄ ∈ Rn : f (x̄) = c}

Assaely (UAM) Optimización sin Restricciones Optimización I 4 / 27


Algunos resultados básicos

Conjunto de Nivel: El conjunto de nivel del valor c de una función


f : Rn −→ R se define como

Sc = {x̄ ∈ Rn : f (x̄) = c}

Ejemplo 1: Sea f (x̄) = 4x12 + x22 


Entonces el conjunto de nivel Sc se define for Sc = x̄ ∈ R2 : 4x12 + x22 = c
(c ≥ 0). Es decir,
x12 x22
+ =c
(1/2)2 1

Assaely (UAM) Optimización sin Restricciones Optimización I 4 / 27


Algunos resultados básicos
Conjunto de Nivel: El conjunto de nivel del valor c de una función
f : Rn −→ R se define como

Sc = {x̄ ∈ Rn : f (x̄) = c}
Ejemplo 1: Sea f (x̄) = 4x12 + x22 
Entonces el conjunto de nivel Sc se define for Sc = x̄ ∈ R2 : 4x12 + x22 = c
(c ≥ 0). Es decir,
x12 x22
+ =c
(1/2)2 1
=⇒ Son elipses con centro en (0, 0)

x12 x22
 
c = 1
 =⇒ + = 1

(1/2)2 1
x12 x2
+ 2 =1 

c = 4 
=⇒
1 4
Assaely (UAM) Optimización sin Restricciones Optimización I 4 / 27
Algunos resultados básicos
Ejemplo 1: Sea f (x̄) = 4x12 + x22 
Entonces el conjunto de nivel Sc se define for Sc = x̄ ∈ R2 : 4x12 + x22 = c
(c ≥ 0). Es decir,
x12 x22
+ =c
(1/2)2 1

Assaely (UAM) Optimización sin Restricciones Optimización I 4 / 27


Ejemplo 2: Sea f (x̄) = 4x12 + x22 + 2x32

Sc = x̄ ∈ R3 : 4x12 + x22 + 2x32 = c (c ≥ 0).
S0 = {(0, 0, 0)}

x12 x2 x2
+ 2 + 3 =c
(1/4) 1 1/2

Assaely (UAM) Optimización sin Restricciones Optimización I 5 / 27


Ejemplo 2: Sea f (x̄) = 4x12 + x22 + 2x32

Sc = x̄ ∈ R3 : 4x12 + x22 + 2x32 = c (c ≥ 0).
S0 = {(0, 0, 0)}

x12 x2 x2
+ 2 + 3 =c
(1/4) 1 1/2
Las superficies de nivel son elipsoides con centro en (0, 0 ,0).
x12 x2 x32
c=1 =⇒ 2
+ 2 + √ =1
(1/2) 1 (1/ 2)2

Assaely (UAM) Optimización sin Restricciones Optimización I 5 / 27


Teorema
Sea f : Rn → R una función de clase C 1 y suponga que ∇f (x̄) = 0̄ para algún
x̄ ∈ Rn . Entonces ∇f (x̄) apunta en la dirección de máximo crecimiento de f a
partir del punto x̄.

Demostración: Supongamos que d¯ es una dirección factible, con ||d||


¯ = 1.

∂f (x̄)
= d¯T ∇f (x̄) = d, ¯
¯ ∇f (x̄) ≤ ||d||||∇f


0< ¯ (x̄)|| = ||∇f (x̄)||
∂d

∇f (x̄)
Si d¯ = , entonces
||∇f (x̄)||
 
∂f (x̄) ∇f (x̄)
= , ∇f (x̄)
∂ d¯ ||∇f (x̄)||
1
= h∇f (x̄), ∇f (x̄)i
||∇f (x̄)||
= ||∇f (x̄)||

∴ d¯ = ∇f (x̄) es la dirección en donde f crece muy rápidamente.


Assaely (UAM) Optimización sin Restricciones Optimización I 6 / 27
2 2
Ejemplo 3: Sea
√ f (x̄)T = 4x1 + x2 . Encontrar la dirección de máximo crecimiento a partir
de x̄ = (1/4, 3/2) .

Assaely (UAM) Optimización sin Restricciones Optimización I 7 / 27


2 2
Ejemplo 3: Sea√ f (x̄)T = 4x1 + x2 . Encontrar la dirección de máximo crecimiento a partir
de x̄ = (1/4, 3/2) .

x12 x22 (1/4)2 ( 3/2)2 1 3
+ = 1, + =1 =⇒ + =1
(1/2)2 1 (1/2)2 1 4 4

 
8x1
∇f (x̄) =
 2x2 

 
8(1/4)
√ √2
∇f (1/4, 3/2) = =
2( 3/2) 3

Se observa que el ∇f (x̄) es ortogonal a la curva de nivel de S1 . Para verificarlo tenemos


los siguiente:

Assaely (UAM) Optimización sin Restricciones Optimización I 7 / 27


2 2
Ejemplo 3: Sea√ f (x̄)T = 4x1 + x2 . Encontrar la dirección de máximo crecimiento a partir
de x̄ = (1/4, 3/2) .

x12 x22 (1/4)2 ( 3/2)2 1 3
+ = 1, + =1 =⇒ + =1
(1/2)2 1 (1/2)2 1 4 4

 
8x1
∇f (x̄) =
 2x2 

 
8(1/4)
√ √2
∇f (1/4, 3/2) = =
2( 3/2) 3

Se observa que el ∇f (x̄) es ortogonal a la curva de nivel de S1 . Para verificarlo tenemos


los siguiente:
Elipse S1 parametrizada
1
x1 = cos θ, 0 ≤ θ ≤ 2π
2
x2 = sin θ

1 1 3 π
=⇒ x1 = = cos θ, x2 = sin θ =⇒ θ = .
4 2 2 3
Assaely (UAM) Optimización sin Restricciones Optimización I 7 / 27
2 2
Ejemplo 3: Sea√ f (x̄) = 4x1 + x2 . Encontrar la dirección de máximo crecimiento a partir
de x̄ = (1/4, 3/2)T .
Elipse S1 parametrizada
1
x1 = cos θ, 0 ≤ θ ≤ 2π
2
x2 = sin θ

1 1 3 π
=⇒ x1 = = cos θ, x2 = sin θ =⇒ θ = .
4 2 2 3
 
1
σ(θ) = cos θ, sin θ
 2 
1
σ 0 (θ) = − sin θ, cos θ
 2 √    √ 
0 π 1 3 1 3 1
 
σ = − , = − ,
3 2 2 2 4 2

Assaely (UAM) Optimización sin Restricciones Optimización I 7 / 27


2 2
Ejemplo 3: Sea
√ f (x̄)T = 4x1 + x2 . Encontrar la dirección de máximo crecimiento a partir
de x̄ = (1/4, 3/2) .
 
1
σ(θ) = cos θ, sin θ
 2 
1
σ 0 (θ) = − sin θ, cos θ
 2 √    √ 
0 π 1 3 1 3 1
 
σ = − , = − ,
3 2 2 2 4 2
π  √   √ T  
1 3 3 1 √2 = 0
σ0 ∇f , = − ,
3 4 2 4 2 3
π  √ 
1 3
=⇒ σ 0 ⊥f ,
3 4 2

Assaely (UAM) Optimización sin Restricciones Optimización I 7 / 27


Contenido

1 Algunos resultados básicos

2 Direcciones de Descenso

3 Método de Máximo descenso

4 El método de máximo descenso para funciones cuadráticas


Convergencia del método de Máximo Descenso

Assaely (UAM) Optimización sin Restricciones Optimización I 8 / 27


Direcciones de Descenso

∇f (x̄) apunta en la dirección de máxima tasa de crecimiento.


−∇f (x̄) apunta en la dirección de máxima tasa de decrecimiento
Supongamos x (0) y consideremos

x (1) = x (0) − α0 ∇f (x̄ (0) ) =⇒ x̄ (1) − x̄ (0) = −α0 ∇f (x̄ (0) )

Usando la fórmula de Taylor alrededor de x (0)

     T  
f x̄ (1) = f x̄ (0) − ∇f x̄ (0) x̄ (1) − x̄ (0) + O(α)
     T  
f x̄ (1) − f x̄ (0) = −α∇f x̄ (0) ∇f x̄ (0) + O(α)
 
= −α||∇f x̄ (0) || + O(α)
0 <
   
Para α suficientemente pequeño f x̄ (1) < f x̄ (0) . ∴ x̄ (1) se acerca más al mı́nmimo
de f .

Assaely (UAM) Optimización sin Restricciones Optimización I 9 / 27


Para establecer el algoritmo de descenso tipo gradiente se supone que a partir
de x̄ (k) se obtiene x̄ (k+1) mediante la siguiente fórmula
 
x̄ (k+1) = x̄ (k) − αk ∇f x̄ (k)

En general, un método de descenso se escribe como

x̄ (k+1) = x̄ (k) − αk d¯(k)


αk := tamaño de paso de longitud; d¯(k) := dirección de descenso

Assaely (UAM) Optimización sin Restricciones Optimización I 10 / 27


Contenido

1 Algunos resultados básicos

2 Direcciones de Descenso

3 Método de Máximo descenso

4 El método de máximo descenso para funciones cuadráticas


Convergencia del método de Máximo Descenso

Assaely (UAM) Optimización sin Restricciones Optimización I 11 / 27


Método de Máximo descenso

El método de máximo descenso es un algoritmo de gradiente, en donde se elige


αk de tal forma que la cantidad de avance −αk ∇f (x̄ (k) ) sea máxima (en la dirección
−∇f (x̄ (k) )).
De hecho, es necesario encontrar el mı́nimo de la función

  
φ(α) = f x̄ (k) − α∇f x̄ (k)
φ0 (α) = 0

donde
  
α = arg mı́n φ(α) = arg mı́n f x̄ (k) − α∇f x̄ (k)
α>0 α>0

Assaely (UAM) Optimización sin Restricciones Optimización I 12 / 27


El argumento de máximo descenso
(i) Escoger x̄ (0) ∈ Ω
Para k = 0, 1, 2 . . . hasta converger
(ii) Encontrar αk que minimice
  
φk (α) = f x̄ (k) − α∇f x̄ (k)

(iii) Calcular  
x̄ (k+1) = x̄ (k) − αk ∇f x̄ (k)

Termina

Assaely (UAM) Optimización sin Restricciones Optimización I 13 / 27


El argumento de máximo descenso
(i) Escoger x̄ (0) ∈ Ω
Para k = 0, 1, 2 . . . hasta converger
(ii) Encontrar αk que minimice
  
φk (α) = f x̄ (k) − α∇f x̄ (k)
(iii) Calcular  
x̄ (k+1) = x̄ (k) − αk ∇f x̄ (k)
Termina

Assaely (UAM) Optimización sin Restricciones Optimización I 13 / 27


Ejemplo 4

Encontrar el mı́nimo de

f (x1 , x2 ) = 2x12 + 2x1 x2 + 3x22 − 4x1 + 8x2 + 12

utilizando el método de máximo descenso, con x (0) = 0̄

Assaely (UAM) Optimización sin Restricciones Optimización I 14 / 27


Ejemplo 4

Encontrar el mı́nimo de

f (x1 , x2 ) = 2x12 + 2x1 x2 + 3x22 − 4x1 + 8x2 + 12

utilizando el método de máximo descenso, con x (0) = 0̄


Solución exacta:  
4x1 + 2x2 − 4x1
∇f (x̄) =
 2x1 + 6x2 + 
8 
4 2 x1 −4
= +
2 6 x2 8
= Q x̄ + b̄
 
4 2
Note que, Hf (x̄) = = Q es definida positiva.
2 6
      
4 2 x1 4 2
0̄ = ∇f (x̄) =⇒ = ⇐⇒ x̄ =
2 6 x2 −8 −2
 
2
Por las CSSO x̄ = es un mı́nimo global estricto de f .
−2

Assaely (UAM) Optimización sin Restricciones Optimización I 14 / 27


Ejemplo 4
Encontrar el mı́nimo de
f (x1 , x2 ) = 2x12 + 2x1 x2 + 3x22 − 4x1 + 8x2 + 12
utilizando el método de máximo descenso, con x (0) = 0̄
Solución mediante el método de máximo descenso:
(i) x̄ (0) = 0̄, f (x̄ (0) ) = 12
Para k = 0    
(0) (0)
 −4 4α
(ii) x̄0 (α) = x̄ − α∇f x̄ = 0̄ − α =
8 −8α

φ(α) = f (4α, −8α)


= 2(4α)2 + 2(4α)(−8α) + 3(−8α)2 − 4(4α) + 8(−8α) + 12
= 160α2 − 80α + 12
80 1
El mı́nimo se encuentra en 0 = φ0 (α) = 320α − 80 =⇒ α = =
320 4
(iii) Calcular
   
(1) (0) 1 
(0)
 1 −4 1
x̄ = x̄ − ∇f x̄ = 0̄ − =
4 4 8 −2
Assaely (UAM) Optimización sin Restricciones Optimización I 14 / 27
Ejemplo 4

Encontrar el mı́nimo de

f (x1 , x2 ) = 2x12 + 2x1 x2 + 3x22 − 4x1 + 8x2 + 12

utilizando el método de máximo descenso, con x (0) = 0̄


Para k = 1
  1 
4 2

1
   
−4 1 + 4α

(ii) x̄1 (α) = x̄ (1) −α∇f x̄ (1) = −α + =
−2 2 6 −2 8 −2 + 2α

φ(α) = f (1 + 4α, −2 + 2α) = 60α2 + 20α + 2


1
El mı́nimo se encuentra en 0 = φ0 (α) = 120α − 20 =⇒ α =
6
(iii) Calcular

1    1  1  4   5/3 
x̄ (2) = x̄ (1) − ∇f x̄ (1) = − =
6 −2 6 −2 −5/3

Assaely (UAM) Optimización sin Restricciones Optimización I 14 / 27


Ejemplo 4

Encontrar el mı́nimo de

f (x1 , x2 ) = 2x12 + 2x1 x2 + 3x22 − 4x1 + 8x2 + 12

utilizando el método de máximo descenso, con x (0) = 0̄


Para k = 2
 
(ii) x̄2 (α) = x̄ (2) − α∇f x̄ (2)
Tarea: terminar la iteración k = 2 y evaluar

f (x (0) ) = 12
f (x (1) ) =
f (x (2) ) =
Resolver
f (x1 , x2 , x3 ) = (x1 − 4)4 + (x2 − 3)2 (x1 − 4)2 + (x3 + 5)4
utilizando el método de máximo descenso, con x (0) = (4, 2, −1)T . Realizar dos iteraciones.

Assaely (UAM) Optimización sin Restricciones Optimización I 14 / 27


Métodos de paro:

(i) ||∇f (x (k) )|| ≤ 


(ii) |f (x (k+1) ) − f (x (k) )| ≤ 
(iii) || x| (k+1){z− x (k)} || ≤ .
αk ∇f (x (k) )

Assaely (UAM) Optimización sin Restricciones Optimización I 15 / 27


Algunas proposiciones importantes

Proposición
 ∞
Si x (k) k=0 es una sucesión de máximo descenso para una función dada
f : Rn −→ R, entonces para cada k el vector x (k+1) − x (k) es ortogonal al vector
x (k+2) − x (k+1)

Assaely (UAM) Optimización sin Restricciones Optimización I 16 / 27


Algunas proposiciones importantes

Assaely (UAM) Optimización sin Restricciones Optimización I 16 / 27


Algunas proposiciones importantes
Proposición
 ∞
Si x (k) k=0 es una sucesión de máximo descenso para una función dada
f : Rn −→ R, entonces para cada k el vector x (k+1) − x (k) es ortogonal al vector
x (k+2) − x (k+1)

Proposición
 ∞
Si x (k) k=0 es una sucesión de máximo descenso para f : Rn −→ R, y
∇f (x (k) ) 6= 0̄ entonces f (x (k+1) ) < f (x (k) )
Assaely (UAM) Optimización sin Restricciones Optimización I 16 / 27
Algunas proposiciones importantes
Proposición
 ∞
Si x (k) k=0 es una sucesión de máximo descenso para f : Rn −→ R, y
∇f (x (k) ) 6= 0̄ entonces f (x (k+1) ) < f (x (k) )

Assaely (UAM) Optimización sin Restricciones Optimización I 16 / 27


Contenido

1 Algunos resultados básicos

2 Direcciones de Descenso

3 Método de Máximo descenso

4 El método de máximo descenso para funciones cuadráticas


Convergencia del método de Máximo Descenso

Assaely (UAM) Optimización sin Restricciones Optimización I 17 / 27


El método de máximo descenso para funciones cuadráticas

f : Rn −→ R
1
f (x̄) = x̄ T Q x̄ − b̄ T x̄ + c
2
donde Q es simétrica definida positiva.
Notación: g (k) = ∇f (x̄ (k) ) = Q x̄ (k) − b̄.
Entonces dado x̄ (k) , se obtiene

x̄ (k+1) = x̄ (k) − αk g (k)

donde αk minimiza la función


 
φk (α) = f x̄ (k) − αg (k) == f (x̄(α))

donde
x̄(α) = x̄ (k) − αg (k)

Assaely (UAM) Optimización sin Restricciones Optimización I 18 / 27


Luego, el punto mı́nimo αk satisface (CNPO):

h i
0 = φ0 (α) = ∇f (x̄(αk ))T −ḡ (k) (1)
= −∇f (x̄ (k+1) )T g (k) (2)
(k+1) T (k)
= −(g ) g (3)
 T
= − Q x̄ (k+1) − b̄ g (k) (4)
 h i T
= − Q x̄ (k) − αk g (k) − b̄ g (k) (5)
 T
= − Q x̄ (k) − b̄ − αk Qg (k) g (k) (6)
 T
= − g (k) − αk Qg (k) g (k) (7)

(g (k) )T g (k)
=⇒ αk =
(g (k) )T Qg (k)

Assaely (UAM) Optimización sin Restricciones Optimización I 19 / 27


Algoritmo de Máximo descenso para funciones cuadráticas

Dado x (0) Termina


Para k = 0, 1, . . . hasta Criterios de Paro:
converger 1 ||bg (k) || ≤ TOL
ḡ (k) = ∇f (x̄ (k) ) = Q x̄ (k) − b̄ 2 ||bg (k) ||Q ≤ TOL
(g (k) )T g (k)
αk = (k) T (k) 3 ||bx (k+1) − bx (k) || ≤ TOL
(g ) Qg
4 k ≤ Nmax = No máximo de
x̄ (k+1) = x̄ (k) − αk ḡ (k)
iteraciones

Assaely (UAM) Optimización sin Restricciones Optimización I 20 / 27


Ejemplo 5

Encontrar el mı́nimo de

f (x1 , x2 ) = 2x12 + 2x1 x2 + 3x22 − 4x1 + 8x2 + 12

utilizando el método de máximo descenso, con x (0) = 0̄

Assaely (UAM) Optimización sin Restricciones Optimización I 21 / 27


Ejemplo 5

Encontrar el mı́nimo de

f (x1 , x2 ) = 2x12 + 2x1 x2 + 3x22 − 4x1 + 8x2 + 12

utilizando el método de máximo descenso, con x (0) = 0̄


   
4 2 −4
Solución: Dado Q = y b̄ =
2 6 8
k=0       
4 2
0 4 −4
ḡ (0) = Q x̄ (0) − b̄ = − =
2 6
0 −8 8
 
−4
(−4, 8)
(g (0) )T g (0) 8 1
α0 = (0) T =    =
(g ) Qg (0) 4 2 −4 4
(−4, 8)
2 6 8
   
(1) (0) (0) 1 −4 1
x = x − α0 ḡ = 0̄ − =
4 8 −2

Assaely (UAM) Optimización sin Restricciones Optimización I 21 / 27


Ejemplo 5

Encontrar el mı́nimo de

f (x1 , x2 ) = 2x12 + 2x1 x2 + 3x22 − 4x1 + 8x2 + 12

utilizando el método de máximo descenso, con x (0) = 0̄


k=1  
    
4 2
1 4 −4
ḡ (1) = Q x̄ (1) − b̄ = − =
2 −2
6 −8 2
 
−4
(−4, 2)
(g (1) )T g (1) 2 1
α1 = (1) T =    =
(g ) Qg (1) 4 2 −4 6
(−4, 8)
2 6 2
     
(2) (1)) (1) 1 1 −4 5/3
x =x − α1 ḡ = − =
−2 6 −2 −5/3
 
2
−→
−2

Assaely (UAM) Optimización sin Restricciones Optimización I 21 / 27


Nota: Observemos que

x (k+1) = x (k)) − αk ḡ (k)

Qx (k+1)−b = Qx (k)) − b̄ −αk ḡ (k)


| {z } | {z }
ḡ (k+1) ḡ (k)

ḡ (k+1) = ḡ (k) − αk ḡ (k)

Esta identidad permi te un ahorro sustancial en el algoritmo de descenso


máximo.

Assaely (UAM) Optimización sin Restricciones Optimización I 22 / 27


Algoritmo de Máximo descenso para funciones cuadráticas
eficiente

Dado x (0) ||(g (k) )||2


αk = T
;
g (0) = Q x̄ (0) − b̄; g (k) r¯

k = 0; x̄ (k+1) = x̄ (k) − αk ḡ (k) ;


Calcular ||(g (0) )||2 ; ḡ (k+1) = ḡ (k) − αk r¯;

Mientras ||(g (k) )||2 > TOL haz k = k + 1;

r¯ = Q ḡ (k) ; Termina

Resultado: Si ḡ (k) 6= 0̄, entonces el método efectivamente es de descenso:

f (x̄ (k+1) ) < f (x̄ (k) )

Assaely (UAM) Optimización sin Restricciones Optimización I 23 / 27


Convergencia del mátodo de Máximo Descenso para
funciones cuadráticas

Assaely (UAM) Optimización sin Restricciones Optimización I 24 / 27


Assaely (UAM) Optimización sin Restricciones Optimización I 25 / 27
Assaely (UAM) Optimización sin Restricciones Optimización I 26 / 27
Assaely (UAM) Optimización sin Restricciones Optimización I 27 / 27

También podría gustarte