O documento discute conceitos fundamentais de programação não linear, incluindo: (1) o problema geral de otimização, (2) classes de problemas de otimização dependendo das propriedades da função objetivo e do conjunto de restrições, (3) condições necessárias e suficientes de primeira e segunda ordem para otimalidade de problemas contínuos e (4) aplicação destes conceitos em problemas quadráticos.
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
[Robson] 7. Programação Não Linear Irrestrita
1. Programa¸˜o N˜o Linear Irrestrita
ca a
Alexandre Salles da Cunha
DCC-UFMG, Mar¸o 2010
c
Alexandre Salles da Cunha Programa¸˜o N˜o Linear Irrestrita
ca a
2. O Problema Geral de Otimiza¸˜o
ca
PGO
minimize f (x) (1)
x ∈X (2)
x = (x1 , . . . , xn ) ∈ Rn
f : Rn → R
X ⊆ Rn
Resolver o PGO
Consiste em encontrar x ∗ ∈ X : f (x ∗ ) ≤ f (x), ∀x ∈ X .
3. Classes de Problemas de Otimiza¸˜o
ca
PGO
minimize f (x)
x ∈X
Dependendo das propriedades de f e X , o PGO pode ser classificado de
diversas formas.
Quanto ` convexidade
a
Quanto ` continuidade
a
Problemas Convexos (f ´
e
Problemas Cont´ ınuos (X
uma fun¸ao cont´
c˜ ınua e X ´
e
possui natureza cont´
ınua)
um conjunto convexo)
Problemas Discretos
Problemas N˜o convexos
a
5. Condi¸˜es Necess´rias de Primeira Ordem - CNPO
co a
Proposi¸˜o
ca
Seja X um subconjunto de Rn e f ∈ C 1 em X . Se x ∗ ´ um ponto de
e
m´ınimo local de f em X , ent˜o temos que ∇f (x ∗ )′ d ≥ 0 para qualquer
a
dire¸˜o d ∈ Rn vi´vel.
ca a
Prova
Fa¸amos x(α) = x ∗ + αd ∈ X , ∀0 ≤ α ≤ α
c
Ent˜o g (α) = f (x(α)) ´ uma fun¸˜o de uma unica vari´vel, cujo
a e ca ´ a
ponto de m´ınimo ocorre em α = 0.
dg
g (α) − g (0) = α dα α=0 + o(|α|) ≥ 0
dg
Se dα |α=0 < 0, para valores suficientemente pequenos de α (para os
dg
quais α dα domina o(|α|)), g (α) − g (0) < 0, que contradiz a
α=0
hip´tese de x
o ∗ ser um ponto de m´ ınimo local (contradi¸˜o)
ca
7. No caso de x ∗ ser um ponto interior a X
Proposi¸˜o
ca
Seja X um subconjunto de Rn e f ∈ C 1 em X . Se x ∗ ´ um ponto de
e
ınimo local de f no interior de X , ent˜o temos que ∇f (x ∗ ) = 0.
m´ a
Prova
Qualquer d ∈ Rn ´ uma dire¸˜o vi´vel em rela¸˜o a x ∗ .
e ca a ca
8. Uso das CNPO
Exemplo 1 - Problema Irrestrito
2 2
minimize f (x1 , x2 ) = x1 − x1 x2 + x2 − 3x2 (3)
2
x ∈ R (4)
9. Uso das CNPO
Exemplo 2 - Problema Restrito, candidato na fronteira
Sabe-se que o ponto m´ ınimo global do Problema abaixo ´ ( 1 , 0). Observe
e 2
1
que ∇f (( 2 , 0)) = 0, mas que o ponto atende `s CNPO.
a
2
minimize f (x1 , x2 ) = x1 − x1 + x2 + x1 x2 (5)
x ∈ R2
+ (6)
11. Condi¸˜es Necess´rias de Segunda Ordem (CNSO)
co a
As CNPO foram estabelecidas fazendo-se aproxima¸˜es de primeira
co
ordem do comportamento de f (x) nas vizinhan¸as de um ponto
c
candidato a ´timo local.
o
Podemos fazer aproxima¸˜es de segunda ordem, empregando a matriz
co
Hessiana ∇2 f (x) da fun¸˜o objetivo.
ca
12. CNSO
Proposi¸˜o
ca
Seja f ∈ C 2 uma fun¸˜o definida em X ⊆ Rn . Ent˜o, se x ∗ ´ um ponto de
ca a e
m˜inimo de f em X e d ∈ Rn ´ uma dire¸˜o vi´vel qualquer em x ∗ , temos:
e ca a
∇f (x ∗ )′ d ≥ 0
se ∇f (x ∗ ) = 0, ent˜o d ′ ∇2 f (x ∗ )d ≥ 0
a
Prova
A primeira observa¸˜o ´ a CNPO e a segunda s´ se aplica caso
ca e o
∇f (x ∗ ) = 0, que assumimos ser verdadeiro.
Parametrizando temos: x(α) = x ∗ + αd, g (α) = f (x(α)).
2
Por Taylor: g (α) − g (0) = 2 α2 dαg
1 d
2 + o(α2 ).
α=0
1 2 d2g
Como o lado direito ´ dominado por
e 2 α dα2 α=0 . Logo se
d2g
dα2 α=0
< 0, contradizemos a hip´tese de que x ∗ ´ ponto de
o e m´
ınimo.
13. CNSO no caso de x ∗ ser ponto interior de X
Proposi¸˜o
ca
Seja f ∈ C 2 uma fun¸˜o definida em X ⊆ Rn . Ent˜o, se x ∗ ´ um ponto de
ca a e
m˜inimo de f no interior de X , temos:
∇f (x ∗ ) = 0
d ′ ∇2 f (x ∗ )d ≥ 0, ∀d ∈ Rn , isto ´, a matriz ∇2 f (x ∗ ) ´ Semi Positiva
e e
Definida.
14. Uso das CNSO
Exemplo 3
3 2 2
minimize f (x1 , x2 ) = x1 − x1 x2 + 2x2
x ∈ R2
+
Assumindo ponto ´timo no interior, temos as CNPO
o
2
3x1 − 2x1 x2 = 0
2
−x1 + 4x2 = 0
Solu¸˜es:
co
x ∗ = (0, 0), que ocorre na fronteira, satisfaz CNSO.
x = (6, 9), ponto interior ao dom´
ınio, n˜o satisfaz CNSO porque a
a
matriz Hessiana neste ponto n˜o ´ Positiva Semi-Definida.
a e
15. Condi¸˜es Suficientes para Otimalidade
co
Proposi¸˜o
ca
Seja f ∈ C 2 uma fun¸˜o definida em X ⊆ Rn . Suponha que x ∗ seja um
ca
ponto no interior de X , satisfazendo:
∇f (x ∗ ) = 0
∇2 f (x ∗ ) ´ Positiva Definida.
e
Ent˜o, x ∗ ´ um ponto de m´
a e ınimo de f (x).
Prova
Idˆntica ` demostra¸˜o das CNSO.
e a ca
16. Terminologia
Ponto estacion´rio
a
Um ponto x ∗ candidato a ponto de m´
ınimo que satisfaz a condi¸˜o
ca
∇f (x ∗ ) = 0 ´ dito estacion´rio.
e a
Ponto singular
ınimo local x ∗ que n˜o satisfaz as condi¸˜es suficientes de
Um ponto de m´ a co
otimalidade:
∇f (x ∗ ) = 0
∇2 f (x ∗ ) ´ Positiva Definida.
e
´ chamado singular. Caso satisfa¸a, ´ chamado de n˜o-singular. Pontos
e c e a
singulares s˜o mais dif´
a ıceis de se lidar:
Quando f n˜o ´ convexa, a sua otimalidade n˜o pode ser assegurada
a e a
usando-se argumentos suficientemente f´ceis.
a
Nas vizinhan¸as destes pontos, a maioria dos m´todos de otimiza¸˜o
c e ca
tem convergˆncia lenta ou apresenta comportamento err´tico.
e a
17. Problemas Quadr´ticos
a
Problema Quadr´tico Irrestrito
a
1 ′
minimize f (x) = x Qx − b ′ x (7)
2
x ∈ Rn (8)
Q : matriz n × n sim´trica
e
b ∈ Rn
As condi¸˜es necess´rias de primeira e segunda ordem imp˜em:
co a o
Qx − b = 0 ⇒ Qx = b
Q deve ser positiva semi definida, para que o problem admita um
ponto de m´ınimo.
18. An´lise do Problema Quadr´tico Irrestrito
a a
Se Q for negativa definida, o problema n˜o pode admitir m´
a ınimo.
Se Q for positiva semi-definida, o problema de Otimiza¸˜o ´ convexo
ca e
e, ent˜o, qualquer solu¸˜o de Qx = b ´ um m´
a ca e ınimo do problema.
Se Q for positiva definita, Q admite inversa e assim sendo, o unico
´
ponto m´ınimo (global) pode ser obtido atrav´s de x ∗ = Q −1 b.
e
Em outras palavras, se f (x) for estritamente conexa (se e somente se
Q for positiva definida), o problema admite um unico ponto de
´
m´
ınimo.
Se Q for positiva semi-definida, a possibilidade de Q n˜o admitir
a
inversa n˜o ´ descartada e o sistema linear Qx = b pode admitir mais
a e
de uma solu¸˜o.
ca
19. Ilustra¸˜o do Problema Quadr´tico, Parte 1
ca a
1
f (x, y ) = (αx 2 + βy 2 ) − x
2
Caso a) M´
ınimo local ´ minimo global, f (x) ´ estritamente convexa.
e e
Caso b) N˜o ´ poss´ satisfazer CNPO.
a e ıvel
20. Ilustra¸˜o do Problema Quadr´tico, Parte 2
ca a
1
f (x, y ) = (αx 2 + βy 2 ) − x
2
Caso c) Hessiana positiva semi-definida, infinitas solu¸˜es ´timas globais.
co o
Caso d) Hessiana indefinida. N˜o h´ m´
a a ınimo.
21. Por quˆ estudar as condi¸˜es de otimalidade
e co
Abordagem de solu¸˜o 1 - caso irrestrito
ca
Encontre todos os pontos x : ∇f (x) = 0
Verifique quais deles satisfazem as condi¸˜es de segunda ordem,
co
∇2 f (x) positiva semi-definida no ponto considerado (caso irrestrito).
Ap´s descartar os que n˜o satisfizeram as CNSO, verifique para quais
o a
∇2 f (x) ´ positiva definida.
e
Dentre os pontos que satisfizeram a condi¸˜o suficiente, declare
ca
aquele para o qual o objetivo ´ menor como o ´timo global.
e o
Esta abordagem falha em pontos ´timos singulares - caso c) do exemplo
o
anterior
22. Abordagem alternativa
Abordagem de solu¸˜o 2 - caso irrestrito
ca
Encontre todos os pontos x : ∇f (x) = 0
Verifique quais deles satisfazem as condi¸˜es de segunda ordem,
co
∇2 f (x) positiva semi-definida no ponto considerado.
Ap´s descartar os que n˜o satisfizeram as CNSO, declare aquele para
o a
o qual o objetivo ´ menor como o ´timo global.
e o
Esta abordagem sempre funciona ?
Alexandre Salles da Cunha Programa¸˜o N˜o Linear Irrestrita
ca a
23. N˜o funciona sempre.
a
Contra exemplo
minimize f (x) = x 2 − x 4 (9)
x ∈ R (10)
1 −1
Pontos estacion´rios {0, √2 , √2 }
a
Pontos estacion´rios que satisfazem CNSO: 0
a
Entretanto, x = 0 n˜o ´ ponto de m´
a e ınimo global, uma vez que a fun¸˜o ´
ca e
ilimitada inferiormente. Portanto n˜o o problema n˜o admite solu¸˜o.
a a ca
24. Existˆncia de solu¸˜es ´timas globais
e co o
Exemplos
P1 (Problema limitado, m´ ınimo inexistente):
f (x) = e x,x ∈ R
Observe que limx→∞ e x = 0, mas este limite nunca ´ atingido. Assim
e
sendo, uma vez que o limite existe mas n˜o ´ alcan¸ado, dizemos que
a e c
P1 admite ´ ınfimo, isto ´, infx∈R e x = 0.
e
P2 (Problema ilimitado, m´ınimo inexistente):
f (x) = x, x ∈ R
Neste caso, dizemos que infx∈R x = −∞
25. Algumas condi¸˜es que asseguram que o PGO admite um
co
minimizador
Teorema (Weierstrass)
Seja X um conjunto n˜o vazio compacto (limitado e fechado) de Rn e
a
f : X → R uma fun¸˜o cont´
ca ınua, ent˜o o PGO admite minimizador global.
a
26. Considera¸˜es adicionais sobre o uso das condi¸˜es de
co co
otimalidade
Resolver o sistema (n˜o linear) ∇f (x) = 0 ´ pelo menos t˜o
a e a
complicado, do ponto de vista algoritmico, quanto resolver o
problema original.
As condi¸˜es de otimalidade fornecem entretanto a base para o
co
desenvolvimento de algoritmos iterativos. Em particular, os
algoritmos reconhecem solu¸˜es, verificando v´rias destas condi¸˜es e
co a co
terminam quando estas condi¸˜es s˜o suficientemente satisfeitas.
co a
Em particular, o comportamento (velocidade de convergˆncia, por
e
exemplo) dos algoritmos nas vizinhan¸as de um ponto m´
c ınimo local
depende das condi¸˜es de otimalidade serem ou n˜o satisfeitas
co a
naquele m´
ınimo.
27. Algoritmos para minimiza¸˜o irrestrita
ca
minimize f (x)
x ∈ Rn
Descida iterativa
Dado uma solu¸˜o tentativa x o ∈ R (um palpite qualquer para a
ca
solu¸˜o do problema)
ca
gerar uma sequ¨encia x 1 , x 2 , ... de pontos, de forma que:
u
f (x k+1 ) < f (x k ), k = 0, 1, ...
Uma vez que a cada itera¸˜o k a fun¸˜o objetivo melhora,
ca ca
esperamos que o valor de f decresca para o seu valor m´
ınimo.
28. M´todos do tipo Gradiente
e
Itera¸˜o t´
ca ıpica
Dado um ponto x ∈ Rn : ∇f (x) = 0, opera diante da seguinte itera¸˜o
ca
t´
ıpica:
x(α) = x − α∇f (x), α ∈ R+
Ou seja, a cada itera¸˜o, dado o palpite atual x para a resolu¸˜o do
ca ca
problema, gera uma nova solu¸˜o x(α) que corresponde a um
ca
deslocamento a partir de x na dire¸˜o de −∇f (x).
ca
Por que ?
29. M´todos do tipo Gradiente
e
Pela Expans˜o em S´rie de Taylor de Primeira Ordem em torno de x
a e
temos:
f (x(α)) = f (x) + ∇f (x)′ (x(α) − x) + o( x(α) − x )
2
= f (x) − α ∇f (x) + o(α ∇f (x) )
2
= f (x) − α ∇f (x) + o(α)
Uma vez que α ∇f (x) 2 domina o(α) para valores suficientemente
pequenos de α, a dire¸˜o do Gradiente ´ uma dire¸˜o de descida
ca e ca
(como esperado !):
f (x(α)) < f (x)
30. Expandindo um pouco esta id´ia
e
Itera¸˜o t´
ca ıpica
Dado um ponto x ∈ Rn : ∇f (x) = 0 e uma dire¸˜o d ∈ Rn satisfazendo
ca
∇f (x)′ d < 0,
x(α) = x + αd, α ∈ R+
Por argumentos semelhantes, temos:
f (x(α)) = f (x) + ∇f (x)′ (x(α) − x) + o( x(α) − x )
= f (x) + α∇f (x)′ d + o(α d )
= f (x) + α∇f (x)′ d + o(α)
e como α∇f (x)′ d domina o(α) para α suficientemente pequeno, temos
que:
f (x(α)) < f (x)
31. M´todos do Tipo Gradiente
e
Itera¸˜o t´
ca ıpica
x k+1 = x k + αk d k , k = 0, 1, . . .
onde, a cada itera¸˜o k:
ca
∇f (x k ) = 0,
∇f (x k )′ d k < 0 (a dire¸˜o d k ´ de descida)
ca e
αk > 0
Varia¸˜es do m´todo:
co e
Como determinar dire¸˜es d k
co
Dado d k , como determinar αk
32. O M´todo do Gradiente Puro
e
Dependendo da fun¸˜o objetivo (n˜o raro !) apresenta
ca a
comportamento err´tico: ∇f (x k+1 ) e ∇f (x k ) s˜o quase paralelos.
a a
Consequentemente, pode apresentar (com frequ¨ncia !) baixa
e
velocidade de convergˆncia
e
Uma alternativa consiste em fazer uma deflex˜o na dire¸˜o do
a ca
gradiente.
33. Escolhendo uma dire¸˜o d k = −D k ∇f (x k )
ca
para uma matriz D k (SDP) sim´trica, positiva definida:
e
Pela posistividade da matriz, temos x ′ D k x > 0, ∀x ∈ Rn .
Ent˜o (−D k ∇f (x k ))′ ∇f (x k ) = −∇f (x k )′ D k ∇f (x k ) < 0, que
a
garante que a dire¸˜o escolhida ´ de descida !
ca e
34. Escolha do tamanho do passo αk , de forma exata
Minimiza¸˜o ao longo da dire¸˜o d k
ca ca
Atrav´s de t´cnicas de redu¸˜o sucessiva de intervalos, calculamos:
e e ca
αk = arg minα≥0 {f (x k + αd k )}
Isto ´ feito atrav´s de t´cnicas de redu¸˜o de intervalo: Fibonacci ou
e e e ca
ca ´
Se¸˜o Aurea.
Usualmente muito cara computacionalmente
Por que gastar tanto esfor¸o nas primeiras itera¸oes, quando
c c˜
provavelmente estamos longe do ´timo ?
o
35. Busca Unidirecional exata
Reduzindo o n´mero de avalia¸˜es da fun¸˜o objetivo
u co ca
Como determinar αk = arg minα≥0 {f (x k + αd k )}. Algumas possibilidades
s˜o:
a
M´todo de Fibonacci
e
ca ´
M´todo da Se¸˜o Aurea
e
Estas duas estrat´gias consistem em m´todos de redu¸˜o de intervalos, nas
e e ca
ınimo poss´ de avalia¸˜es da fun¸˜o objetivo.
quais deseja-se fazer o m´ ıvel co ca
36. M´todos de Redu¸˜o de Intervalo
e ca
Hip´tese
o
Vamos assumir que g (α) = f (x k + αd k ), α ≥ 0 ´ unimodal para
e
e ´ ınimo no intervalo [0, s] e que α∗
α ∈ [0, s], isto ´, g (α) possui um unico m´
´ este minimizador.
e
Desejamos determinar α∗ .
37. ca ´
M´todo da Se¸˜o Aurea
e
Id´ias centrais:
e
Trata-se de um m´todo que, itera¸˜o ap´s itera¸ao, reduz o intervalo
e ca o c˜
[α0 , α0 ] = [0, s] que cont´m α∗ a um novo interalo [αk , αk ] que ainda
e
cont´m α∗ .
e
Este procedimento de redu¸˜o ´ repetido at´ que αk − αk < ǫ ou at´
ca e e e
que outro crit´rio de convergˆncia seja satisfeito.
e e
ca e ca ´
A cada itera¸˜o k do m´todo da Se¸˜o Aurea, uma parte do intervalo
[αk , αk ] que necessariamente n˜o cont´m αk ´ descartada, dando
a e e
origem ao novo intervalo [αk+1 , αk+1 ].
Para tanto, em cada itera¸˜o k, o intervalo [αk , αk ] ´ divido em tr´s
ca e e
subintervalos, empregando-se os seguintes pontos:
αk < bk < bk < αk .
Investiga-se o comportamento de g (α) nestes pontos e um dos
subintervalos ´ descartado [αk , bk ] ou (b k , αk ] por garantidamente
e
n˜o conter α
a ∗.
38. Particionando o intervalo de forma inteligente
Reduzindo o n´mero de avalia¸˜es da fun¸˜o objetivo em itera¸˜es
u co ca co
consecutivas
Como obter os bk , b k , satisfazendo αk < bk < b k < αk de forma que,
ap´s descartarmos um dos subintervalos [αk , bk ] ou (b k , αk ], pelo menos 3
o
pontos dentre {αk , bk , b k , αk } sejam reaproveitados ?
39. a ´
Raz˜o Aurea
Se particionarmos o intervalo [α0 , α0 ] usando as ra´ da equa¸˜o
ızes ca
r = (1 − r )2 (motivo geom´trico, imposto por constru¸˜o), temos a
e ca
garantia de que 3 destes pontos poder˜o ser empregados na pr´xima
a o
itera¸˜o ap´s o descarte de um subintervalo.
ca o
A raiz (que nos interessa, < 1) desta equa¸˜o ´ o n´mero
ca e u
√
3− 5
r= ≈ 0.381966
2
(denominado raz˜o ´urea) que ´ o limite entre a raz˜o de dois
a a e a
n´meros consecutivos de Fibonacci. Ent˜o:
u a
◮ b0 = α0 + r (α0 − α0 )
◮ b0 = α0 − r (α0 − α0 )
A partir de ent˜o teremos sempre:
a
◮ bk = αk + r (αk − αk )
◮ bk = αk − r (αk − αk )
40. Atualiza¸˜o dos subintervalos
ca
Se g (bk ) < g (b k ) fazemos:
◮ αk+1 = αk , αk+1 = bk se g (αk ) ≤ g (bk )
◮ αk+1 = αk , αk+1 = bk se g (αk ) > g (bk )
Se g (bk ) > g (b k ) fazemos:
◮ αk+1 = b k , αk+1 = αk se g (bk ) ≥ g (αk )
◮ αk+1 = bk , αk+1 = αk se g (bk ) < g (αk )
Se g (bk ) = g (b k ) fazemos:
◮ αk+1 = bk , αk+1 = bk
41. a ´
Raz˜o Aurea
A escolha da raz˜o ´urea para particionarmos a intervalo garante que
a a
o ponto interno (ou bk ou b k ) n˜o empregado na atualiza¸˜o de
a ca
intervalo ser´ um ponto interno reutilizado:
a
[αk+1 , αk+1 ] = [αk , b k ] ⇒ b k+1 = bk
(11)
[αk+1 , αk+1 ] = [bk , αk ] ⇒ bk+1 = bk
Isto pode ser verificado usando-se a propriedade r = (1 − r )2
42. M´todos de Redu¸˜o de Intervalo, Fibonacci
e ca
N´meros de Fibonacci
u
F0 = 0
F1 = 1
Fi = Fi −1 + Fi −2 , i ≥ 2
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, ...
Para um dado k inteiro, e se o m´
ınimo na dire¸˜o d ocorre para
ca
α ∈ [α0 , s], temos:
Fk Fk−1 Fk−2
= + →
Fk Fk Fk
Fk−1 Fk−2
(s − α0 ) = (s − α0 ) + (s − α0 )
Fk Fk
43. Alternativas para a escolha do tamanho do passo αk
Para evitar o elevado custo computacional associado a determina¸˜o exata
` ca
do passo, uma id´ia natural consiste em:
e
Redu¸˜o sucessiva do intervalo
ca
Arbitramos αk = s e avaliamos f (x k + sd k )
Se f (x k ) > f (x k + sd k ) aceitamos o ponto, isto ´, fazemos
e
x k+1 = x k + sd k .
Caso contr´rio, reduzimos s por um certo fator, e o processo se
a
repete at´ que f (x k ) > f (x k + sd k ) para o valor de s em m˜os.
e a
Embora este m´todo possa funcionar em muitas situa¸˜es pr´ticas,
e co a
carece de sustenta¸˜o te´rica, uma vez que a redu¸˜o de custo
ca o ca
observada em cada itera¸˜o pode n˜o ser suficiente para garantir
ca a
convergˆncia para o m´
e ınimo de f (x).
44. Falha do m´todo de redu¸˜es sucessivas
e co
Exemplo
f (x) estritamente convexa, continuamente diferenci´vel, minimizada em
a
x ∗ = 0:
2
3(1−x) − 2(1 − x) se x >1
4
f (x) = 3(1+x)2
24 − 2(1 + x) se x < −1
x −1 se −1 ≤ x ≤ 1
3x+1
2 se x >1
3x−1
∇f (x) = 2 se x < −1
2x se −1 ≤ x ≤ 1
45. Exemplo - continua¸˜o
ca
Observe que:
f (x) ´ par: f (x) = f (−x) e que para x e x , temos
e ˆ
f (x) < f (ˆ ) ↔ |x| < |ˆ |.
x x
para x > 1, x − ∇f (x) = − 1 + x−1 ) , e ent˜o:
2 a
◮ |x − ∇f (x)| > 1
◮ |x| > |x − ∇f (x)|
◮ f (x) > f (x − ∇f (x))
3(x−1)
para x < 1, x − ∇f (x) = 1 + 2 ) , mesmas conclus˜es.
o
O que acontece ent˜o se iniciarmos o m´todo com um ponto
a e
x 0 : |x 0 | > 1 e um valor de s que, por substitui¸oes sucessivas alcance
c˜
o valor de 1 ?
46. O m´todo n˜o converge para o m´
e a ınimo
{x k } satisfaz |x k | > 1, ∀k, apresentando dois pontos limites x = 1 e
x = −1, n˜o podendo convergir para x = 0.
a
47. M´todo de Armijo
e
´
E o m´todo de redu¸˜es sucessivas, que estabelece um decr´scimo
e co e
m´ınimo para que o ponto seja aceito, garantindo a convergˆncia.
e
Armijo
Fixamos parˆmetros s, β, σ, escolhendo 0 < β < 1, 0 < σ < 1
a
Fazemos αk = β mk s, onde mk ´ o primeiro inteiro n˜o negativo m
e a
para o qual:
f (x k ) − f (x k + β m sd k ) >= −σβ m s∇f (x k )′ d k
Ou seja, avaliamos os pontos (x k + sd k ), (x k + βsd k ), (x k + β 2 sd k ), . . .
at´ que o primeiro deles forne¸a o decr´scimo suficiente.
e c e
49. Exemplo num´rico, implementado em scilab
e
Problema a resolver
min f (x1 , x2 ) = (x1 − 2)4 + (x1 − 2x2 )2 , x ∈ R2
Vamos implementar o M´todo do Gradiente, como o passo dado pelo
e
crit´rio de Armijo. Dados para execu¸˜o:
e ca
◮ ponto inicial: x 0 = (1, 3)′
◮ s = 1, β = 10−1 , σ = 10−2
◮ Crit´rio de convergˆncia: |f (x k+1 )| < 1.0E − 4
e e
◮ No. de itera¸oes: k = 140
c˜
Idem para a dire¸˜o d k = −D ∗ d k , onde D ´ uma matriz positiva
ca e
definida, mantida constante.
50. Exemplo num´rico do caso patol´gico, redu¸˜o sucessiva
e o ca
n˜o controlada
a
3(1−x)2
4 − 2(1 − x) se x >1
f (x) = 3(1+x)2
4 − 2(1 + x) se x < −1
x2 − 1
se −1 ≤ x ≤ 1
3x+1
2 se x >1
3x−1
∇f (x) = 2 se x < −1
2x se −1 ≤ x ≤ 1
Vamos come¸ar o algoritmo com o ponto inicial x 0 = 1.1 e s = 1 !
c
51. Aspectos de convergˆncia dos M´todos Gradiente
e e
O que esperar de uma an´lise de convergˆncia ?
a e
An´lise de complexidade (contagem do no. de opera¸˜es elementares)
a co
× An´lise Local (nas vizinhan¸as de um ´timo local, n˜o singular) ?
a c o a
Qual o valor pr´tico de uma an´lise de convergˆncia ?
a a e
52. O que esperar de uma an´lise de convergˆncia ?
a e
O que seria desej´vel dispor
a
Dado um m´todo do tipo gradiente que gere uma sequˆncia {x k },
e e
estabelecer condi¸˜es sob as quais o m´todo converge para o m´
co e ınimo
global do problema (caso n˜o convexo).
a
Fato: a garantia de convergˆncia para um m´
e ınimo global n˜o existe.
a
53. O que esperar de uma an´lise de convergˆncia ?
a e
O que seria ainda desej´vel dispor
a
Dado um m´todo do tipo gradiente que gere uma sequˆncia {x k },
e e
estabelecer condi¸˜es sob as quais o m´todo converge para o m´
co e ınimo local
do problema.
Fato: a garantia de convergˆncia para um m´
e ınimo local n˜o existe. A
a
unica garantia que podemos estabelecer (quando podemos) ´ que o
´ e
m´todo converge para um ponto estacion´rio.
e a
54. An´lise de convergˆncia para um ponto estacion´rio
a e a
A convergˆncia, quando observada, ocorre no sentido assint´tico.
e o
Se o problema for convexo, o ponto estacion´rio ´ um ponto de
a e
m´
ınimo global.
Caso o problema n˜o seja convexo, o ponto estacion´rio pode ser um
a a
ponto de inflex˜o (ou mesmo um ponto de m´ximo, que n˜o deve ser
a a a
obtido, pela escolha do passo).
Assim sendo, um m´todo baseado em Gradiente pode ser inadequado
e
se pouca informa¸˜o for dispon´ sob a localiza¸˜o de um ´timo
ca ıvel ca o
global.
Nestes casos, uma abordagem radicalmente distinta pode ser
necess´ria para obter o ´timo global.
a o
55. An´lise de Convergˆncia - Boa not´ !
a e ıcia
Mesmo se {x k } for limitada, n˜o h´ garantia de que um mesmo
a a
ponto limite seja obtido.
Entretanto, mostraremos que pontos de m´ ınimo locais que s˜o pontos
a
estacion´rios isolados (em uma esfera aberta de dimens˜o
a a
conveniente) tentem a atrair os m´todos do tipo gradiente, uma vez
e
que uma solu¸˜o x k obtida pelo m´todo chegue suficientemente
ca e
pr´ximo ao tal ponto m´
o ınimo local.
56. Pontos limites dos M´todos do tipo Gradiente
e
Expans˜o em S´rie de Taylor em torno de x k
a e
f (x k+1 ) = f (x k ) + αk ∇f (x k )′ d k + o(αk )
Se a taxa de varia¸˜o de f ao longo da dire¸˜o d k (derivada de f em
ca ca
rela¸˜o a α, ∇f (x k )′ d k ) for suficientemente grande, devemos esperar
ca
uma redu¸˜o substancial da fun¸˜o objetivo ao dar um passo na
ca ca
dire¸˜o d k .
ca
Caso contr´rio, se as dire¸˜es d k forem assintoticamente ortogonais
a co
aos gradientes de f , h´ o risco de x k se aproximar de um ponto n˜o
a a
estacion´rio e o m´todo ficar parado naquele ponto.
a e
57. An´lise de convergˆncia
a e
∇f (x k )′ d k
Devemos ent˜o evitar que
a ∇f (x k ) d k
→0!
Como evitar isto
No caso em que d k = −D k ∇f (x k ), basta garantir que os autovalores da
matriz SDP ∇2 f (x k ) s˜o limitados superiormente e s˜o estritamente n˜o
a a a
nulos (´bvio, caso seja SDP !). Basta ent˜o garantir que, para escalares
o a
positivos c1 , c2 tenhamos:
2
c1 z ≤ z ′ D k z ≤ c2 z 2
, k = 0, 1, . . .
58. An´lise de Convergˆncia
a e
Por quˆ
e
Observe que: |∇f (x k )′ d k | = |∇f (x k )′ D k ∇f (x k )| ≥ c1 ∇f (x k ) 2 .
Se tal condi¸˜o for satisfeita, |∇f (x k )′ d k → 0| se x k for n˜o estacion´rio !
ca a a
´
Veja que usamos o seguinte resultado de Algebra Linear:
Proposi¸˜o
ca
Dada uma matriz A sim´trica n × n, seja λ1 ≤ · · · ≤ λn o conjunto de
e
autovalores de A. Ent˜o λ1 y 2 ≤ y ′ Ay ≤ λn y 2 , ∀y ∈ Rn .
a
59. Limitando os autovalores de ∇f (x k )2 superiormente
|(d k )′ d k | = d k 2 = |∇f (x k )′ (D k )2 ∇f (x k )| ≤ c2 ∇f (x k ) 2 .
2
Se tal condi¸˜o for satisfeita, ´ de se esperar que com poucas tentativas
ca e
consigamos estabelecer um ponto que aprimora x k (por exemplo, via
Armijo).
´
Veja que usamos o seguinte resultado de Algebra Linear:
Proposi¸˜o
ca
Dada uma matriz A sim´trica n × n, seja λ1 , . . . λn o conjunto de
e
autovalores de A. Ent˜o λp , . . . , λp s˜o autovalores de Ap .
a 1 n a
60. Um conceito um pouco mais geral para estabelecer a
n˜o-ortogonalidade
a
Dire¸˜es gradiente-relacionadas
co
Considere {x k , d k } a sequˆncia de pontos e dire¸˜es geradas por um
e co
m´todo gradiente. Dizemos que {d k } ´ gradiente-relacionada a {x k } se a
e e
seguinte propriedade puder ser garantida:
Para qualquer subsequˆncia {x k }k∈K que convirja para um ponto
e
n˜o estacion´rio, a correspondente subsequˆncia {d k }k∈K ´ tal que
a a e e
lim supk→∞,k∈K ∇f (x k )′ d k < 0
Em particular, se {d k } ´ gradiente-relacionada a {x k }, temos que se
e
∇f (x k ) tende a um vetor n˜o nulo, a correspondente subsequ˜ncia
a e
{d k∈K ´ limitada e n˜o tende a um vetor ortogonal a ∇f (x k ).
k} e a
61. Estacionariedade dos pontos limites dos M´todos
e
Gradientes
Proposi¸˜o
ca
Seja {x k } a sequˆncia gerada por um m´todo do tipo Gradiente que opera
e e
segundo a itera¸˜o t´
ca ıpica
x k+1 = x k + αd k ,
para a qual {d k } ´ gradiente-relacionada a {x k } e αk ´ escolhido pelo
e e
crit´rio da minimiza¸˜o exata ou pelo crit´rio de Armijo. Ent˜o, todo
e ca e a
ponto limite de {x ek } ´ um ponto estacion´rio de f (x).
a
62. Os pontos estacion´rios atraem o m´todo
a e
Proposi¸˜o
ca
Teorema da Captura Seja f ∈ C ∞ e {x k } uma sequˆncia satisfazendo
e
f (x k+1 ) ≤ f (x k ), ∀k gerada por um m´todo gradiente do tipo
e
x k+1 = x k + αd k , convergente no sentido da proposi¸˜o anterior (todo
ca
ponto limite de {x k } ´ um ponto estacion˜rio de f (x)). Assuma que
e a
existam escalares s > 0, c > 0 tais que:
αk ≤ s, d k ≤ c ∇f (x k ) .
Seja x ∗ um ponto m´ ınimo local de f , o unico ponto estacion´rio de f em
´ a
torno de algum conjunto aberto. Ent˜o, existe um conjunto aberto S
a
contendo x ∗ , tal que se x k ∈ S para algum k ≥ 0, ent˜o x k ∈ S, para
a
todo k ≥ k e {x k } → x ∗ . Al´m disto, dado qualquer escalar ǫ > 0, o
e
conjunto S pode ser escolhido de forma x − x ∗ < ǫ para todo x ∈ S.
63. M´todos com Reinicializa¸˜o
e ca
Defini¸˜o
ca
Em alguns m´todos de otimiza¸˜o, os pontos x k+1 podem ser obtidos
e ca
atrav´s de regras que envolvem muitos pontos anteriores ou mesno
e
que dependem do ´ ındie da itera¸˜o k.
ca
Outros algoritmos consistem em combinar v´rios m´todos, trocando
a e
os m´to dos empregados durante seu curso, de forma a conferir
e
confiabilidade e robustez.
´
E desej´vel ent˜o conhecer as propriedades de convergˆncia de
a a e
m´todos para os quais itera¸˜es de um m´todo de descida (do tipo
e co e
Gradiente) s˜o inseridas. Esta inser¸˜o pode ser irregular, mas deve
a ca
ser infinitament frequente. Esta chamada de um m´todo de descida ´
e e
denominada Reinicializa¸˜o.
ca
As demais itera¸˜es (fora as de descida) devem ser tais que o objetivo
co
n˜o piora. Pode at´ mesmo n˜o melhorar, mas n˜o pode piorar.
a e a a
64. Convergˆncia para m´todos com reinicializa¸˜o
e e ca
Proposi¸˜o
ca
Considere que {x k } seja a sequˆncia gerada por um m´todo tal que
e e
f (x k+1 ) < f (x k ), ∀k = 0, 1, 2, . . . e que exista uma subsequˆncia infinita
e
K de inteiros para a qual x k+1 = x k + αd k , ∀k ∈ K, onde {d k } ´
K e
gradiente relacionada a {x k }K e αk seja escolhido pela minimiza¸˜o exata
ca
ou pela regra de Armijo.
Ent˜o, todo ponto limite de {x k }K ´ um ponto estacion´rio de f (x).
a e a
65. Taxas de Convergˆncia - An´lise Local
e a
A an´lise de convergˆncia dos m´todos ´ feita avaliando-se o
a e e e
comportamento do m´todo nas vizinhan¸as do ponto ´timo local
e c o
(n˜o singular).
a
N˜o faremos, como no caso de outras ´reas da Programa¸˜o
a a ca
Matem´tica, uma contagem de opera¸˜es elementares para alcan¸ar o
a co c
ponto ´timo local.
o
Tamb´m n˜o estaremos interessados na complexidade assint´tica de
e a o
pior caso dos M´todos.
e
66. Ingredientes para a An´lise Local
a
Nos restringimos a sequˆncias {x k } que convergem para um unico
e ´
ponto limite x ∗ .
A taxa de convergˆncia ´ avaliada usando uma fun¸˜o de erro
e e ca
e : Rn → R satisfazendo as seguintes propriedades:
◮ e(x) ≥ 0, ∀x ∈ Rn
◮ e(x ∗ ) = 0
Exemplos de fun¸˜o erro:
ca
◮ Distˆncia Euclideana e(x) = x − x ∗
a
◮ Desvio da fun¸˜o objetivo ´tima e(x) = |f (x) − f (x ∗ )|
ca o
67. O problema Quadr´tico ´ a referˆncia
a e e
Suponha que um m´todo do tipo gradiente seja aplicado a uma fun¸˜o
e ca
f ∈C 2 e que uma sequˆncia {x k } convergente para um m´
e ınimo local n˜o
a
singular x ∗ seja obtida.
Pelas Condi¸˜es necess´rias de otimalidade em x ∗ temos que ∇f (x ∗ ) = 0
co a
e ∇2 f (x ∗ ) ´ positiva definida.
e
Por Taylor temos
f (x) = f (x ∗ ) + 1 (x − x ∗ )′ ∇2 f (x ∗ )(x − x ∗ ) + o( x − x ∗ 2 )
2
Para x suficientemente pr´ximo de x ∗ ,
o
f (x) ≈ f (x ∗ ) + 1 (x − x ∗ )′ ∇2 f (x ∗ )(x − x ∗ )
2
Assim sendo, mesmo quando f n˜o ´ quadr´tica, o comportamento
a e a
do m´todo na vizinhan¸a do ponto estacion´rio depende de
e c a
∇2 f (x ∗ ).
68. An´lise de Convergˆncia para fun¸˜es quadr´ticas
a e co a
Hip´teses que n˜o tornam o problema menos geral
o a
x ∗ = 0 e f (x ∗ ) = 0
´
E claro que isto nem sempre ´ verdade em todo problema quadr´tico.
e a
Podemos entretanto fazer uma mudan¸a de vari´veis y = x − x ∗
c a
Logo, podemos usar as fun¸˜es erro e(x) = x − x ∗ e
co
e(x) = |f (x) − f (x ∗ )| na an´lise de convergˆncia nas vizinhan¸as do
a e c
o
´timo.
Ent˜o o problema toma a forma:
a
min x ′ Qx, x ∈ Rn
onde Q ´ uma matriz sim´trica positiva definida.
e e
69. An´lise de Convergˆncia - caso quadr´tico
a e a
1 ′
f (x) =x Qx
2
∇f (x) = Qx
∇2 f (x) = Q
O m´todo opera segundo a itera¸˜o:
e ca
x k+1 = x k − αk ∇f (x k )
= (I − αk Q)x k
⇒ x k+2 = (x k )′ (I − αk Q)2 x k
70. An´lise de Convergˆncia
a e
Sabemos que ∀x ∈ Rn :
x ′ (I − αk Q)2 x ≤ maior autovalor de(I − αk Q)2 x 2
Por outro lado, se λ1 ≤ · · · ≤ λn s˜o os autovalores de Q, ent˜o os
a a
autovalores de (I − αk Q)2 s˜o: {(1 − αk λi )2 : i = 1, . . . , n}.
a
Ent˜o o m´ximo autovalor de (I − αk Q)2 ´ dado por:
a a e
max{(1 − αk m)2 , (1 − αk M)2 },
onde m, M denotam o menor e o maior autovalor de Q,
respectivamente.
Logo:
2
x k+1 = (x k )′ (I −αk Q)2 (x k ) ≤ max{(1−αk m)2 , (1−αk M)2 } x k 2
x k+1
≤ max{|1 − αk m|, |1 − αk M|}, assumindo x k = 0
xk
71. An´lise de Convergˆncia
a e
M´
ınima taxa de convergˆncia
e
x k+1
≤ max{|(1 − αk m)|, |(1 − αk M)|}, x k = 0
xk
2
O lado direito ´ minimizado para α =
e M+m para o qual temos:
x k+1 M−m
xk
≤ M+m < 1( conv. linear)
73. Problemas malcondicionados
M
O parˆmetro
a m ´ chamado de nmero de condi¸˜o de Q
e ´ ca
M
Quando m ´ elevado, o problema ´ chamado de mal-condicionado.
e e
Observe que lim M →∞ M−m = 1.
M+m
m
Valores elevados de M s˜o caracter´
m a ısticos de problemas com curvas de
n´ (el´
ıvel ıpses) alongadas.
Nestes casos, o m´todo do Gradiente apresenta uma baixa taxa de
e
convergˆncia, e na medida em que o ponto x k se aproxima do ponto
e
estacion´rio, os gradientes tornam-se praticamente paralelos.
a
74. Convergˆncia linear, ordem de convergˆncia
e e
Defini¸˜o
ca
Se a sequˆncia nos reais {r k } converge para r ∗ , assumindo r k = 0, ∀k, a
e
ordem de convergˆncia ´ o supremo dos reais n˜o negativos p para o qual
e e a
|r k+1 − r ∗ |
limk→∞ = β < ∞.
|r k − r ∗ |p
Se a ordem ´ p = 1 e a taxa β < 1 dizemos que a convergˆncia ´
e e e
linear.
Dado p, quanto menor β maior a velocidade de convergˆncia.
e
Quando p > 1 ou quando p = 1, β = 0, temos convergˆncia
e
super-linear.
75. Taxa de convergˆncia - Exemplo linear
e
r k +1
Sequˆncia gerada por r k+1 =
e 2
r 0 +2k −1
Observe que r k = 2k
{r k } → 1 para qualquer r 0 inicial.
1
Quando p = 1, temos β = 2
k+1
Quando p > 1, sup limk→∞ |r k −1|p → ∞
|r
−1|
⇒ Assim sendo, temos convergˆncia apenas linear.
e
76. Taxa de convergˆncia - Exemplo superlinear
e
r k −1
Sequˆncia gerada por r k+1 = 1 +
e 2k
{r k } → 1 para qualquer r 0 inicial.
r k+1 −1 1
r k −1
= 2k
→ 0, k → ∞
⇒ Assim sendo, temos convergˆncia super-linear..
e
77. Mudan¸a de escala
c
Teorema
Se A ´ uma matriz sim´trica n˜o negativa definida, ent˜o:
e e a a
1
Existe uma matriz sim´trica Q tal que Q 2 = A e ´ designada Q = A 2
e e
a raiz quadrada sim´trica de A
e
1
A 2 admite inversa se e somente se A admite inversa. Sua inversa ´
e
1
designada A− 2
1 1
Vale a seguinte propriedade A− 2 A− 2 = A−1
1 1
AA 2 = A 2 A
78. Uma reintepreta¸˜o de alguns m´todos do tipo Gradiente
ca e
ca ıpica x k+1 = x k − αk D k ∇f (x k ),
Os m´todos que operam sob a itera¸˜o t´
e
onde D k ´ uma matriz SDP, podem ser vistos como m´todos que fazem
e e
uma mudan¸a de escala do problema.
c
Veja:
1
Defina S = (D k ) 2 , x = Sy .
Ent˜o, no espa¸o y , o problema pode ser escrito como
a c
min h(y ) ≡ f (Sy ), y ∈ Rn
Multiplicando y k+1 = y k − αk ∇h(y k ) por S temos:
Sy k+1 = Sy k − αk S∇h(y k )
Uma vez que x k = Sy k , ∇h(y k ) = S∇f (x k ), S 2 = D k temos que:
x k+1 = x k − αk D k ∇f (x k ).
Ou seja: fazer a opera¸˜o defletida x k+1 = x k − αk D k ∇f (x k )
ca
consiste em fazer uma busca do tipo gradiente pura no espa¸o y !
c
79. Aplicando os resultados de convergˆncia para
e
k+1 k k k
y = y − α ∇h(y )
y k+1
yk
≤ max{|(1 − αk mk )|, |(1 − αk M k )|}, y k = 0 onde mk , M k
s˜o denotam o menor e o maior autovalor de
a
1 1
∇h2 (y k ) = S∇2 f (x k )S = (D k ) 2 Q(D k ) 2 .
Observe ent˜o que se D k for uma matriz pr´xima a Q −1 temos
a o
∇h 2 (y k ) = (D k ) 1 Q(D k ) 2 ≈ I . Deste modo mk ≈ M k ≈ 1 e o
2
1
problema torna-se muito bem condicionado.
Se o problema n˜o for quadr´tico, nas vizinha¸as do ponto ´timo
a a c o
local, por analogia, o ideal ´ que D k seja aproximadamente
e
(∇2 f (x k ))−1 .
80. Mudan¸a de Escala - Exemplo num´rico
c e
minimize f (x, y ) = x 2 − 5xy + y 4 − ax − by (12)
x, y ∈R (13)
onde a, b s˜o parˆmetros. Se assumirmos a = 25, b = 8, temos que
a a
2 −5
∇2 f (x, y ) =
−5 12y 2
81. Mudan¸a de Escala - Exemplo num´rico
c e
Fazendo uma mudan¸a de escala z = ty , o novo problema se
c
apresenta como:
minimize g (x, z) = x 2 − 5x z + ( z )4 − ax − b z
t t t (14)
x, z ∈R (15)
onde
2 −5
∇2 g (x, z) = 2
−5 12 z 4
t
No ´timo y = 3 temos que z = 9t. Logo para que ∇2 g (x, z) tenha
o
elementos na diagonal principal da mesma ordem de grandeza
2
(impondo 12 z 4 = 2, quando y = 3) temos t = 7, que d´ origem ao
t
a
problema com escala modificada.
O m´todo do Gradiente no problema com escala modificada encontra
e
o ´timo mais rapidamente. convergˆncia.
o e
82. M´todo de Newton
e
A id´ia central do m´todo de Newton ´, localmente, aproximar a fun¸˜o
e e e ca
objeti vo por uma fun¸˜o quadr´tica.
ca a
e o ınimo local x ∗ ou se a fun¸˜o a ser
Se o ponto x k ´ pr´ximo do m´ ca
minimizada f (x) pode ser bem aproximada por uma fun¸˜oca
quadr´tica em x k temos que:
a
f (x) = f (x k ) + (x − x k )′ ∇f (x k ) + 0.5(x − x k )′ ∇2 f (x k )(x − x k )
2
+ o( x − x k )
≈ f (x ) + (x − x k )′ ∇f (x k ) + 0.5(x − x k )′ ∇2 f (x k )(x − x k )
k
ınimo ocorre quando ∇f (x k ) + ∇2 f (x k )(x − x k ) = 0
cujo m´
Ent˜o temos a itera¸˜o t´
a ca ıpica do m´todo de Newton Puro,
e
x k+1 = x k − (∇2 f (x k ))−1 ∇f (x k ),
onde, em concordˆncia com as hip´teses anteriores, ∇2 f (x k ) deve
a o
ser positiva definida (admitindo inversa, e de forma que
d k = −∇2 f (x k )∇f (x k ) seja uma dire¸˜o de descida.
ca
83. O M´todo de Newton para resolver sistemas de equa¸˜es
e co
n˜o lineares
a
Dado g (x) : Rn → Rn , g ∈ C 1 .
Resolver o sistema n˜o linear em n vari´veis e n restri¸˜es em x, isto
a a co
´, obter x ∈ R
e n : g (x) = 0 equivale a resolver um problema de
minimiza¸˜o irrestrita, caso ∇g (x) seja uma matriz sim´trica para
ca e
todo x ∈ R n.
Ou, mais formalmente, se g (x) = ∇f (x) para alguma fun¸˜o
ca
f : Rn → R, ∀x ∈ R o problema de encontrar a raiz de g (x) equivale
a encontrar o m´
ınimo de um problema n˜o linear.
a
O m´todo de Newton para resolver o sistema n˜o linear g (x) = 0
e a
opera de acordom com: x k+1 = x k − (∇g (x k ))−1 g (x k ).
84. M´todo de Newton - Convergˆncia Local
e e
Um argumento simples que mostra a convergˆncia r´pida do M´todo de
e a e
Newton, nas proximidades da solu¸˜o de x
ca ∗ : g (x ∗ ) = 0.
g (x ∗ ) = g (x k ) + ∇g (x k )′ (x ∗ − x k ) + o( x k − x ∗ )
mult. por (∇g (x k )′ )−1
x k − x ∗ − (∇g (x k ))−1 g (x k ) = o( x k − x ∗ )
x k+1 − x ∗ = o( x k − x ∗ )
Ent˜o, para x k = x ∗ , temos:
a
x k+1 − x ∗ o( x k − x ∗ )
limk→∞ = limk→∞ =0
xk − x∗ xk − x∗
e o M´todo de Newton tem convergˆncia superlinear.
e e
85. M´todo de Newton - An´lise Local de Convergˆncia
e a e
Proposi¸˜o
ca
Considere uma fun¸˜o g : Rn → Rn e um vetor x ∗ tal que g (x ∗ ) = 0.
ca
Para δ > 0, seja Sδ a bola {x ∈ R : x − x ∗ }. Assuma que g seja
continuamente diferenci´vel em Sδ e que ∇g (x ∗ ) seja invers´
a ıvel. Ent˜o:
a
1 Existe δ > 0 tal que se x 0 ∈ S , a sequˆncia {x k } gerada pela
e
δ
itera¸˜o x
ca k+1 = x k − (∇g (x k )′ )−1 g (x k ):
1 ´ definida (isto ´, ∇g (x k )′ admite inversa),
e e
2 pertence a Sδ , convergindo para x ∗ e,
3 a taxa de convergˆncia ´ super-linear.
e e
2 Se para algum L > 0, M > 0, δ > 0 e para todo x, y ∈ Sδ
∇g (x) − ∇g (y ) ≤ L x − y e (∇g (x)′ )−1 ≤ M, ent˜o se a
x 0 ∈ Sδ e LMδ < 1, {x k − x ∗ } converge de forma super linear, com
2
raz˜o pelo menos 2.
a
86. Interpreta¸˜o do resultado anterior
ca
Se g (x ∗ ) admite inversa, para pontos x k pr´ximos suficientemente
o
pr´ximos de x ∗ , g (x ∗ )′ tamb´m admite inversa.
o e
Existe um δ para o qual se x 0 ∈ Sδ , o m´todo converge
e
super-linearmente.
Diante de certas condi¸˜es a serem satisfeitas por g (x), existe um δ
co
(possivelmente menor que o primeiro !) para o qual, a partir de uma
certa itera¸˜o, o m´todo converge ainda mais r´pido.
ca e a
Entretanto, o resultado n˜o garante que o m´todo ir´ convergir
a e a
sempre.
87. M´todo de Newton - An´lise de Convergˆncia
e a e
´
E o m´todo do tipo Gradiente de m´trica ´tima (melhor escala
e e o
poss´
ıvel).
An´lise local: possui boas propriedades de convergˆncia pr´ximo ao
a e o
ponto ´timo local
o
No caso quadr´tico, converge em uma itera¸˜o.
a ca
No caso n˜o quadr´tico, pode n˜o convergir. Sua convegˆncia
a a a e
dependendo do ponto de partida estar suficientemente pr´ximo do
o
o
´timo.
A dire¸˜o de Newton puro pode n˜o ser de descida.
ca a
Um ponto de m´ximo ´ t˜o candidato a ser a resposta de um m´tod
a e a e
de Newton puro quando um ponto de m´ ınimo.
´
E necess´rio modificar o M´todo de Newton de forma a torn´-lo um
a e a
m´todo de minimiza¸˜o confi´vel.
e ca a
88. Modifica¸˜es no M´todo de Newton
co e
Procuram dar ao m´todo original propriedades de convergˆncia global.
e e
Adotam duas linhas principais:
◮ Hibridizam o m´todo com o M´todo do Gradiente
e e
◮ Perturbam a Hessiana
Estas modifica¸˜es n˜o conseguem entretanto prover ao m´todo
co a e
modificado altas velocidades de convergˆncias.
e
89. Modifica¸˜es no M´todo de Newton
co e
Hibridiza¸˜es com o M´todo do Gradiente
co e
Indicado quando a (∇2 f (x k )) n˜o ´ Positiva Definida ou quando
a e
(∇2 f (x k )) n˜o admite inversa.
a
Nas primeiras itera¸˜es, emprega-se um m´todo do tipo Gradiente
co e
x k+1 = x k − αk D k ∇f (x k ), αk > 0, onde D k ´ sim´trica positiva
e e
definda, usando busca unidirecional exata ou Armijo.
Ap´s um certo n´mero de itera¸˜es, retorna-se para o M´todo de
o u co e
Newton puro.
90. Modifica¸˜es no M´todo de Newton
co e
Perturba¸˜o da Hessiana
ca
Vamos supor que ∇2 f (x k ) n˜o seja PD
a
Obtemos uma matriz diagonal △k tal que que ∇2 f (x k ) + △k seja PD.
Resolvemos o sistema linear (∇2 f (x k ) + △k )d k = −∇f (x k ), obtendo
a dire¸˜o d k .
ca
ca ıpica: x k+1 = x k − αk d k , obtendo αk atrav´s de
Fazemos a itera¸˜o t´ e
e ca ´
um m´todo conveniente (Se¸˜o Aurea, Armijo, etc).
Por quˆ este m´todo funciona ?
e e
91. M´todo do Gradiente Conjugado
e
Foram motivados pelo desejo de acelerar o M´todo do Gradiente, sem
e
incorrer nos elevados custos computacionais do M´todo de Newton.
e
Foram propostos origialmente para resolver o problema quadr´tico
a
1 ′
minimize f (x) = x Qx − b ′ x (16)
2
x ∈ Rn (17)
quando Q ´ sim´trica positiva definida, ou equivalentemente, para
e e
resolver o sistema linear Qx = b.
Podem ser utilizados para resolver um sistema linear qualquer Ax = b
quando A n˜o ´ SPD (mas A ´ inverss´ !) ap´s a transforma¸˜o
a e e ıvel o ca
para o sistema positivo definido A′ Ax = A′ b.
M´todos do tipo Gradiente Conjugado resolvem o problema quadr´ico
e t
em no m´ximo n itera¸˜es. Entretanto, s˜o melhor entendidos como
a co a
m´todos iterativos (e n˜o m´todos diretos) uma vez que normalmente
e a e
gastam menos que n itera¸˜es para obter uma solu¸˜o com precis˜o
co ca a
bastante razo´vel (principalmente quando n ´ grande).
a e
92. Dire¸˜es conjugadas
co
Defini¸˜o
ca
Dada uma matriz Q positiva definida, dizemos que os vetores
d 1 , d 2 , . . . , d n s˜o Q-conjugados se d i Qd j = 0, ∀i = j
a
Observe que se d 1 , d 2 , . . . , d n s˜o Q conjugados, ent˜o d 1 , d 2 , . . . , d n s˜o
a a a
vetores linearmente independentes (assuma o contr´rio, escreva um como
a
uma comb. linear dos demais, multiplique por (d k )′ Q obtendo uma
contradi¸˜o).
ca
93. M´todo de Dire¸˜es Conjugadas
e co
Vamos fazer o desenvolvimento do m´todo para
e
1 ′
minimize f (x) = x Qx − b ′ x (18)
2
x ∈ Rn , (19)
considerando para isto, as dire¸˜es d 0 , d 1 , . . . , d n−1 , Q conjugadas.
co
Itera¸˜o t´
ca ıpica
x k+1 = x k + αd k , k = 0, 1, . . . , n − 1,
onde x 0 ∈ Rn ´ um ponto inicial arbitr´rio e αk ´ obtido de forma exata,
e a e
isto ´:
e
αk = arg minα f (x k + αd k ).
94. M´todo das Dire¸˜es conjugadas
e co
Vamos impor as condi¸˜es necess´rias e suficientes para que o ponto
co a
x k + αd k minimize h(α) = f (x k + αd k ). Isto ´ vamos impor:
e
∂f (x k +αd k )
0= ∂α .
Ent˜o temos:
a
∂f (x k + αd k )
0= = (d k )′ ∇f (x k +αd k ) = (d k )′ (Q(x k +αd k )−b)) ⇒
∂α
(d k )′ (b − Qx k )
α=
(d k )′ Qd k
95. M´todo das Dire¸˜es Conjugadas
e co
Principal resultado te´rio: a cada itera¸˜o, o m´todo otimiza f (x) sobre
o ca e
um manifold linear de dimens˜o crescente.
a
Proposi¸˜o
ca
Dado o problema de otimiza¸˜o quadr´tico irrestrito, definido por uma
ca a
matriz Q sim´trica positiva definida e dire¸˜es d 0 , d 1 , . . . , d n−1
e co
Q−conjugadas, operando sobre a itera¸˜o t´
ca ıpica:
(d k )′ (b − Qx k )
x k+1 = x k + αd k , onde α = .
(d k )′ Qd k
Ent˜o x k+1 = arg min {f (x), x ∈ M k }, onde M k ´ o manifold linear:
a e
M k = {x : x = x 0 + v , v ∈ span{d 0 , . . . , d k }}
Em particular, x n minimiza M n−1 que equivale ao Rn .
96. M´todo das Dire¸˜es Conjugadas
e co
Prova
Parte 1
Pelo desenvolvimento anterior, temos:
∂f (x i + αd i )
= ∇f (x i +1 )′ d i = 0, ∀i = 0, 1, . . . , n − 1
∂α α=αi
97. M´todo das Dire¸˜es Conjugadas
e co
Prova
Parte 2 Por outro lado, para i = 0, . . . , k − 1 temos:
∇f (x k+1 )′ d i = (Qx k+1 − b)′ d i
′
k
= x i +1 + αj d j Qd i − b ′ d i
j=i +1
i +1 ′
= (x ) Qd i − b ′ d i
= ∇f (x i +1 )′ d i
= 0
No desenvolvimento acima, usamos os seguites argumentos, em ordem:
a Q−conjugacidade das dire¸˜es d j , d i para j = i + 1, . . . , k.
co
o resultado obtido na Parte 1
98. M´todo das Dire¸˜es Conjugadas
e co
Prova
Parte 3
Pela defini¸˜o de αk , temos que (∇f (x k + αk d k ))′ d k = 0.
ca
Combinando com o resultado da Parte 2, temos:
(∇f (x k+1 ))′ d i = 0, ∀i = 0, . . . , k
99. M´todo das Dire¸˜es Conjugadas
e co
Prova
Observe que podemos escrever
x k+1 = x 0 + ik=0 γ i d i , ∀k = 0, . . . , n − 1, onde
(d i )′ (b−Qx i )
γi = (d i )′ Qd i
, ∀i = 0, . . . , n − 1.
Para que o resultado da proposi¸˜o valha, isto ´,
ca e
x k+1 = arg min f (x), x ∈ M k , temos que ter:
∂f (x k+1 ) ∂f (x 0 + k=0 γ i d i )
i
= |γ i =αi =
∂γ i γ i =αi ∂γ i
k
= ∇f (x 0 + γ i d i )′ d i = 0
i =0
A condi¸˜o acima ´ claramente satisfeita mediante o resultado
ca e
descrito ao final da Parte 3, completando a demonstra¸˜o.
ca
100. Observa¸˜es
co
Observe que n˜o mencionamos (ainda) como as dire¸˜es conjugadas
a co
s˜o geradas.
a
Precisamos encontrar uma maneira eficiente de obter estas dire¸˜es.
co
101. Gerando dire¸˜es Q−conjugadas - Procedimento de
co
Gram-Schmidt
Dado um conjunto de dire¸˜es ξ 0 , . . . , ξ k linearmente independentes,
co
vamos gerar dire¸˜es d
co 0 , . . . , d k Q conjugadas de forma que:
span{ξ 0 , . . . , ξ k } = span{d 0 , . . . , d k }
da seguinte forma:
1 Fazemos ξ 0 = d 0
2 (Indu¸˜o) Suponha que para i < k tenhamos selecionado dire¸˜es
ca co
d 0 , . . . , d i , Q−conjugadas
3 Ent˜o fazemos d i +1 = ξ i +1 + im=0 c i +1,m d m , e escolhemos os
a
coeficientes c i +1,m de forma a garantir que d i +1 Qd j = 0, j = 0, . . . , i .
4 Para cada j = 0, . . . , i mutiplicamos d i +1 = ξ i +1 + im=0 c i +1,m d m
or Qd j e impomos que d i +1 Qd j = 0. Usado a propriedade da
i +1 ′ Qd j
Q-conjugacidade, obtemos que c i +1,j = − (ξ j )′)Qd j , j = 0, . . . , i
(d
102. M´todo do Gradiente Conjugado
e
´
E obtido tomando as dire¸˜es ortogonais usadas no procedimento de
co
Gram-Schmidt como:
ξ 0 = −g 0 = −∇f (x 0 ), . . . , ξ n−1 = −g n−1 = ∇f ( x n−1 )
ca ıpica: x k+1 = x k + αk d k , onde αk ´ obtido via minimiza¸˜o
Itera¸˜o t´ e ca
exata, sendo dado por:
−(d k )′ (g k )
αk =
(d k )′ Qd k
E as dire¸˜es conjugadas s˜o dadas por:
co a
k−1
(g k )′ Qd j j
d 0 = −g 0 , d k = −g k + d
(d j )Qd j
j=0
poder˜o ser simplificadas, levando a um m´todo mais eficiente,
a e
gra¸as ` propriedade de otimiza¸˜o sobre o manifol linear.
c a ca
103. Gradiente conjugado - o que precisa ser feito
Provar que as dire¸˜es ξ k = −g k = −∇f (x k ) usadas no m´todo s˜o
co e a
linearmente independentes.
Usar a propriedade de otimiza¸˜o sobre o manifold linear para
ca
simplificar o c´lculo da dire¸˜o, a cada itera¸˜o.
a ca ca
104. Independˆncia linear dos gradientes nos pontos gerados
e
pelo M´todo do Gradiente Conjugado
e
Proposi¸˜o
ca
Assuma que {x 0 , . . . , x n−1 } seja a sequˆncia de n vetores gerados pelo
e
M´todo do Gradiente Conjugado. Ent˜o temos que:
e a
∇f (x k+1 ) ⊥ span{d 0 , . . . , d i } : i = 0, . . . , k
(∇f (x k+1 )′ ∇f (x i ) = 0, i = 0, . . . , k
105. Independˆncia linear dos gradientes nos pontos gerados
e
pelo M´todo do Gradiente Conjugado
e
Por indu¸˜o:
ca
Prova
(Caso base) Vamos assumir que g 0 = 0, caso contr´rio o m´todo
a e
0 ´ li.
terminou. Assim sendo, g e
(Hip. Indu¸˜o) Assumindo que ap´s k passos o m´todo n˜o
ca o e a
terminou, isto ´, g k = 0, temos que g 0 , . . . , g k−1 s˜o li.
e a
O que ocorre ent˜o com (g k )′ g j : 0 ≤ j ≤ k − 1 ?
a
◮ Ent˜o temos g k = 0, cc o m´todo terminou.
a e
◮ Recorde que: 0 = ∇f (x k )′ d 0 = · · · = f (x k )′ d k−1 , isto ´, g k = ∇f (x k )
e
´ ortogonal `s dire¸oes conjugadas.
e a c˜
◮ Logo g k ⊥ span{d 0 , . . . , d k−1 } e uma vez que, por contru¸˜o, no
ca
M´todo de Gram-Schmidt span{g 0 , . . . , g k−1 } = span{d 0 , . . . , d k−1 },
e
temos que g k ⊥ span{g 0 , . . . , g k−1 }.
106. O m´todo do Gradiente Conjugado converge em no
e
m´ximo n passos para um Problema Quadr´tico
a a
Proposi¸˜o
ca
Sobre o m´todo do Gradiente Conjugado, pode-se dizer:
e
As suas dire¸˜es pdem ser calculadas da seguinte forma:
co
d 0 = −g 0 , . . .
d k = −g k + β k d k−1 , k = 1, . . . , n − 1,
(g k )′ g k
onde β k = (g k−1 )′ g k−1
O m´todo termina com uma solu¸˜o ´tima do Problema Quadr´tico,
e ca o a
em no m´ximo n passos.
a
107. O m´todo do Gradiente Conjugado converge em no
e
m´ximo n passos para um Problema Quadr´tico
a a
Prova
Parte 1 - vamos primeiro mostrar que o m´todo (sem a modifica¸˜o do
e ca
c´lculo da dire¸˜o) converge em no m´ximo n itera¸˜es, isto ´, que em no
a ca a co e
m´ximo n itera¸˜es teremos ∇f (x k ) = 0.
a co
Obviamente ∇f (x k ) = 0, k < n, caso contr´rio nada temos a provar.
a
Ent˜o, vamos assumir que ∇f (x
a n ) = 0 e gerar uma contradi¸˜o.
ca
Pela independˆncia linear de {g 0 , . . . , g n−1 } temos que
e
Rn = span{g 0 , . . . , g n−1 }.
Pelo resultado anterior, ter´ ıamos que:
g n ⊥ span{g 0 , . . . , g n−1 } = Rn .
Como n˜o podemos gerar mais de n dire¸˜es li, temos que g n = 0.
a co
108. Gradiente Conjugado - a corretude das simplifica¸˜es
co
Prova
Observe que para todo j : g j = 0 temos:
g j+1 − g j = Q(x j+1 − x j ) = αj Qd j , onde αj = 0, caso contr´rio uma
a
vez que g j+1 ⊥ span{g 0 , . . . , g j } ter´
ıamos g j+1 = g j = 0.
Usando a ortogonalidade provada temos:
1 i ′ j+1 0 se j = 0, . . . , i − 2
(g i )′ Qd j = (g ) (g − gj) = 1
αj αj
(g i )′ g i se j =i −1
1 j ′ j+1
(d j )′ Qd j = (d ) (g − gj)
αj
Substutindo na express˜o de d k de Gram-Schmidt temos
a
k = −g k + β k d k−1 , onde β k = (g k )′ g k
d (d k−1 )′ (g k −g k−1 )
.
Usando d k−1 = −g k−1 + β k−1 d k−1 , a ortogonalidade entre g k e
g k−1 e entre d k−2 e g k − g k−1 , o denominador pode ser escrito como
desejamos.
109. Gradiente Conjugado em Problemas n˜o quadr´ticos
a a
Substituimos g k = Qx k − b e Q por ∇f (x k ) e ∇2 f (x k ),
respectivamente, e temos duas op¸˜es:
co
◮ prosseguimos como se o problema fosse quadr´tico (αk ´ obtido
a e
analiticamente).
◮ Fazemos uma busca unidirecional exata ou aproximada e n˜o nos
a
valemos das express˜es simplificadas para αk , β k .
o
Perdemos a propriedades de convergˆncia finita.
e
k ′ k k ′ k k−1
Substitu´ ımos β k = (g k−1 )′ g k−1 por β k = (g(g)k−1 )−g ) . Observe que
(g
)g
(g
′ g k−1
estas duas express˜es s˜o equivalentes para o caso quadr´tico.
o a a
Para o caso n˜o quadr´tico (ou mesmo em alguns casos para o caso
a a
quadr´tico, em decorrˆncia de perda de Q−conjugacidade em virtude
a e
de arredondamentos) a express˜o acima funciona melhor.
a
Isto tende a ocorrer caso g k perder ortogonalidade em rela¸˜o a
ca
span{g 0 , . . . , g k−1 }.
A cada n passos (pelo menos, podemos fazer antes !), fazemos uma
reinicializa¸˜o, isto ´, fazemos d 0 = −∇f (x n ) e recome¸amos o
ca e c
procedimento.