Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf ·...

64
Introdu¸ ao ` aOtimiza¸c˜ ao Juliano B. Francisco Universidade Federal de Santa Catarina Departamento de Matem´ atica - EMALCA - Outubro de 2007 Programa: 1.Introdu¸c˜ ao ao problema de otimiza¸ ao: Nota¸ ao, defini¸ oes e resultados fun- damentais. Classifica¸ ao dos problemas de otimiza¸ ao. 2. Condi¸ ao de otimalidade: Condi¸ oes necess´ arias e suficiente de 1 a e2 a or- dem. Condi¸ oes de Karush-Kuhn-Tucker (KKT). Dualidade em problemas de otimiza¸ ao. 3. Sistemas de equa¸ oes n˜ ao-lineares: etodo de Newton. etodo Quase- Newton. M´ etodo de Newton inexato. Propriedades de convergˆ encia. 4. Minimiza¸ ao irrestrita: Busca linear e backtracking. M´ etodos tradicionais de otimiza¸ ao (M´ axima descida, Newton, Quase-Newton e Newton Inexato). 5. O m´ etodo do gradiente-conjugado. 6. Minimiza¸ ao restrita: etodo de barreira. Penalidade externa. Lagrangeano aumentado. 1

Transcript of Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf ·...

Page 1: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Introducao a Otimizacao

Juliano B. Francisco

Universidade Federal de Santa Catarina

Departamento de Matematica

- EMALCA -

Outubro de 2007

Programa:

1. Introducao ao problema de otimizacao: Notacao, definicoes e resultados fun-damentais. Classificacao dos problemas de otimizacao.

2. Condicao de otimalidade: Condicoes necessarias e suficiente de 1a e 2a or-dem. Condicoes de Karush-Kuhn-Tucker (KKT). Dualidade em problemasde otimizacao.

3. Sistemas de equacoes nao-lineares: Metodo de Newton. Metodo Quase-Newton. Metodo de Newton inexato. Propriedades de convergencia.

4. Minimizacao irrestrita: Busca linear e backtracking. Metodos tradicionais deotimizacao (Maxima descida, Newton, Quase-Newton e Newton Inexato).

5. O metodo do gradiente-conjugado.

6. Minimizacao restrita: Metodo de barreira. Penalidade externa. Lagrangeanoaumentado.

1

Page 2: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Unidade I - Introducao ao problema de otimizacao

2

Notacoes:

• f : Rn → R e x =

⎛⎝ x1

...xn

⎞⎠ ∈ Rn �

∇f(x) =

⎛⎜⎝

∂f(x)∂x1...

∂f(x)∂xn

⎞⎟⎠ e ∇2f(x) =

⎛⎜⎝

∂2f(x)∂x2

1

· · · ∂2f(x)∂x1xn

... . . . ...∂2f(x)∂xnx1

· · · ∂2f(x)∂x2

n

⎞⎟⎠

• Sendo h : Rn → Rm dada por h(x) =

⎛⎝ h1(x)

...hm(x)

⎞⎠,

definimos h′(x) =

⎛⎜⎝

∂h1(x)∂x1

· · · ∂h1(x)∂xn... . . . ...

∂hm(x)∂x1

· · · ∂hm(x)∂xn

⎞⎟⎠

m×n

, denominado Jacobiano.

• Dado xk ∈ Rn �

fk ≡ f(xk), ∇fk ≡ ∇f(xk), ∇2fk ≡ ∇2f(xk), hk ≡ h(xk)

3

Page 3: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

• A > 0 � S e simetrica definida positiva (SDP).

• A ≥ 0 � S e simetrica semi-definida positiva.

• Dado M ⊆ Rn � Ck(M) : conjunto das funcoes k vezes continuamentediferenciaveis em M.

Exemplo: f ∈ C2(Rn) � f , f ′ e f ′′ sao contınuas em Rn

• Dado x =

⎛⎝ x1

...xn

⎞⎠ � ‖x‖ ≡ ‖x‖2 =

√∑ni=1 x2

i , ‖x‖1 =∑n

i=1 |xi|

‖x‖∞ = max{|xi|, com i = 1, . . . , n}

• Dado z ∈ Rn � B(z, ε) = {x ∈ Rn tal que ‖x − z‖ < ε} (Vizinhanca aberta)

• Ω ⊆ Rn � Int(Ω) denota interior de Ω

4

O problema de otimizacao e definicoes:

Sejam Ω ⊆ Rn e f : Ω → R � Problema geral:

Minimizar f(x)sujeito a x ∈ Ω

(1)

f : Funcao objetivoΩ: Conjunto viavel (ou factıvel)x ∈ Ω: Ponto viavel (ou factıvel)

Vamos colocar algumas definicoes:

5

Page 4: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Definicao 1 (Mınimo global). x∗ e minimo global de (1) se f(x∗) ≤ f(x) ∀ x ∈ Ω.

Definicao 2 (Mınimo local). x∗ e minimo local de (1) se existe ε > 0 tal quef(x∗) ≤ f(x) ∀ x ∈ B(x∗, ε) ∩ Ω.

Mınimo local estrito � f(x∗) < f(x) ∀ x ∈ B(x∗, ε) ∩ Ω

6

• Relembrando... Ω ⊂ Rn compacto ⇔ fechado e limitado.

Teorema 1 (Bolzano-Weierstrass). Suponha Ω compacto e f : Ω → R contınua.Entao f admite minimizador global.

• De acordo com a geometria de Ω, o problema recebe nome especial!

7

Page 5: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Principal classificacao dos problemas de otimizacao:

Ω Problema

Rn minimizacao sem restricoes{x ∈ Rn | l ≤ x ≤ u} minimizacao em caixas{x ∈ Rn | Ax = b, A ∈ Rm×n} minimizacao com restricoes

lineares de igualdade{x ∈ Rn | Ax = b, Cx ≤ d} minimizacao com restricoes

lineares{x ∈ Rn | h(x) = 0, h : Rn → Rm} minimizacao com restricoes

de igualdade{x ∈ Rn | h(x) = 0, h : Rn → Rm problema geral dee g(x) ≤ 0, g : Rn → Rp} programacao nao linear

8

Unidade II - Condicoes de Otimalidade

9

Page 6: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

• Mais algumas definicoes:

Definicao 3. Seja x∗ ∈ Ω. Uma funcao γ : [0, ε] → Ω (ε > 0) contınua tal queγ(0) = x∗ e denominada curva em Ω partindo de x∗.

Definicao 4. x∗ ∈ Ω. Uma funcao γ : [0, ε] → Ω (ε > 0) tal que γ(0) = x∗ eγ ∈ Ck(I) (I ⊇ [0, ε]) e denominada curva em Ω de classe Ck partindo de x∗.

10

Teorema 2 (Condicoes de otimalidade de primeira ordem - caso geral). Sejam x∗ ∈Ω um mınimo local de (1) e γ uma curva em Ω de classe C1 partindo de x∗. Entao∇f(x∗)Tγ′(0) ≥ 0.

Prova:

Corolario 3. Suponha Ω = Rn e x∗ ∈ Rn um mınimo local. Entao ∇f(x∗) = 0.

Prova: Exercıcio

11

Page 7: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Teorema 4 (Condicao necessaria de segunda ordem - caso geral). Suponha f ∈C2(Ω) e tome x∗ mınimo local de (1). Entao:

(i) ∀ γ de classe C2 partindo de x∗ tem-se que ∇f(x∗)Tγ′(0) ≥ 0.

(ii) Se ∇f(x∗)Tγ′(0) = 0, entao ϕ′′(0) ≥ 0, onde ϕ(t) = f(γ(t))).

Prova: Taylor � ϕ(t) = ϕ(0) + ϕ′(0)t + 12ϕ′′(0)t2 + o(t2)...

Definicao 5. Dado x ∈ Ω. Uma funcao γ : [−ε, ε] → Ω (ε > 0) tal que γ(0) = x eγ ∈ Ck(I) (I ⊇ [0, ε]) e denominada curva em Ω de classe Ck passando por x.

12

Teorema 5. x∗ minimizador local de (1) e γ curva de classe C1 passando por x∗.Entao ∇f(x∗)Tγ′(0) = 0.

Prova:

Corolario 6 (Condicoes necessarias de segunda ordem para x ∈ Int(Ω)). Seja x∗ ∈Int(Ω) minimizador local de (1) e f com derivadas segundas contınuas numa viz-inhanca de x∗. Entao ∇f(x∗) = 0 e ∇2f(x∗) ≥ 0.

13

Page 8: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Teorema 7 (Condicoes suficientes de segunda ordem para x ∈ Int(Ω)). Suponha

f ∈ C2(Ω) e seja x∗ ∈ Int(Ω) tal que ∇f(x∗)Tγ′(0) = 0 e ∇2f(x∗) > 0. Entao x∗ emınimo local de (1).

Prova: Taylor: f(x) = f(x∗) + 12(x − x∗)T∇2f(x∗)(x − x∗) + o(‖x − x∗‖2). Como

∇2f(x∗) > 0, existe a > 0 tal que

(x − x∗)T∇2f(x∗)(x − x∗) ≥ a‖x − x∗‖2.

Entao f(x) ≥ f(x∗)+a2‖(x−x∗)‖2+o(‖x−x∗‖2). Mas, como lim o(‖x − x∗‖2)/‖x − x∗‖ = 0,

existe ε > 0 tal que ∀x ∈ B(x∗, ε)

f(x) − f(x∗)‖x − x∗‖2

≥ a

4> 0,

isto e, f(x) ≥ f(x∗) ∀x ∈ B(x, ε). �

14

Restricoes de Igualdade:

Seja h : Rn → Rm e considere o problema

Minimizar f(x)sujeito a h(x) = 0

Aqui, Ω = {x ∈ Rn | h(x) = 0}.

Definicao 6. O conjunto tangente a Ω em x:

M(x) = {v ∈ Rn | v = γ′(0), para alguma curva γ em Ω passando por x}.

Lema 8. Para todo x ∈ Ω, M(x) ⊆ ker(h′(x)) . (ker(A) ≡ nucleo de A).

• A recıproca nao vale!

Exemplo: h(x1, x2) = x1x2 e x = (0,0).

M(x) = {(v1, v2) | v1v2 = 0} e h′(x) = 0. Assim, ker(h′(x)) = R2.

15

Page 9: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Definicao 7 (Condicao LICQ). x ∈ Ω e regular se h′(x) tem posto m (completo)({∇h1(x), . . . ,∇hm(x)} e linearmente independente).

Teorema 9. Se h ∈ C1(Ω) e x ∈ Ω e um ponto regular entao M(x) = ker(h′(x))

Prova:

Relembrando... Seja A ∈ Rm×n:

• ker(A) ⊥ R(AT) onde R(AT) = {ATx | x ∈ Rm}Assim, se v ⊥ ker(A) entao v ∈ R(AT)

16

Teorema 10. Seja x∗ ∈ Ω mınimo local regular. Entao ∇f(x∗) ⊥ ker(h′(x∗)).

Prova:

Teorema 11 (Multiplicadores de Lagrange). Seja x∗ ∈ Ω um mınimo localregular. Entao existe unico λ∗ ∈ Rm tal que ∇f(x∗) + h′(x∗)Tλ∗ = 0.

Prova:

• Se λ =

⎛⎝ λ1

...λm

⎞⎠, λi e denominado multiplicadores de Lagrange.

17

Page 10: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Portanto � candidatos a minizadores locais de

Minimizar f(x)sujeito a h(x) = 0

sao solucoes (x, λ) ∈ Rm+n do sistema de equacoes nao-lineares com m + nequacoes:

∇f(x) + h′(x)Tλ = 0h(x) = 0.

• Se (x∗, λ∗) ∈ Ω × Rm satisfaz as equacoes acima � x∗ e denominado pontoestacionario.

18

A funcao Lagrangena:

Definicao 8. Vamos definir � : Rn × Rm por

�(x, λ) = f(x) + h(x)Tλ,

denominada funcao Lagrangena ou Lagrangeano do problema

Minimizar f(x)sujeito a h(x) = 0.

(2)

• Note que se (x∗, λ∗) e um minimizador local de � entao

∇x�(x∗, λ∗) = ∇f(x∗) + h′(x∗)Tλ∗ = 0∇λ�(x∗, λ∗) = h(x∗) = 0

� Neste caso, x∗ e um ponto estacionario de (2).

(Cond. necessaria de primeira ordem para (2)).

19

Page 11: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

� Condicoes necessarias de segunda ordem - restricoes de igualdade:

Teorema 12. Supor f, h ∈ C2(Ω). Seja x∗ mınimo local de (2) regular. Se λ∗e o vetor com os multiplicadores de lagrange entao vT∇2

xx�(x∗, λ∗)v ≥ 0, ∀ v ∈

ker(h′(x∗)).

Prova: x∗ e regular, entao M(x) = ker(h(x∗)). Seja v ∈ ker(h′(x∗)). Assim, tomeγ em Ω passando por x∗ tal que v = γ′(0). Defina ϕ(t) = f(γ(t)) e entao ϕ′′(0) =γ′(0)T∇2f(x∗)γ′(0) +∇f(x∗)Tγ′′(0) ≥ 0. Agora, definindo φi(t) = −λihi(γ(t)) ≡ 0,temos que

m∑i=1

φ′′i (0) =

m∑i=1

λiγ′(0)T∇2hi(x

∗)γ′(0) + λih′i(x

∗)γ′′(0) = 0.

Somando as duas ultimas equacoes e usando que ∇x�(x∗, λ∗) = 0, obtemos

γ′(0)T [∇2f(x∗) +m∑

i=1

λi∇2hi(x∗)]γ′(0) ≥ 0. �

� Observacao:

∇2xx�(x

∗, λ∗) = ∇2f(x∗) +m∑

i=1

λi∇2hi(x∗)

20

� Condicoes suficientes de segunda ordem - restricoes de igualdade:

Teorema 13. Supor f, h ∈ C2(Ω). Seja x∗ ∈ Ω tal que ∇x�(x∗, λ∗) (ponto esta-cionario) e vT∇2

xx�(x∗, λ∗)v > 0, ∀ v ∈ ker(h′(x∗)) . Entao x∗ e mınimo local estrito

de (2).

21

Page 12: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Restricoes de Desigualdade:

Seja c : Rn → Rp e considere o problema

Minimizar f(x)sujeito a c(x) ≤ 0.

• Aqui, Ω = {x ∈ Rn | c(x) ≤ 0}.

Chamamos:

• Restricoes Ativas em x � restricoes tal que ci(x) = 0

Denotamos I(x) = {i = 1, . . . , p | ci(x) = 0}.• Restricoes Inativas em x � restricoes tal que ci(x) < 0

• Ponto Regular � gradiente das restricoes ativas sao linearmente indepen-dentes (condicao LICQ).

22

• Fato: Se x∗ e mınimo local de

Minimizar f(x)sujeito a c(x) ≤ 0,

(3)

entao x∗ e mınimo local de

Minimizar f(x)sujeito a ci(x) = 0, para i ∈ I(x∗).

� Problema com restricoes de igualdade.

23

Page 13: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

� Se x∗ mınimo local de (5) e {∇ci(x∗)}i∈I(x∗) e um conjunto linearmenteindependente, entao, para cada i ∈ I(x∗), existe μi ∈ R tal que

∇f(x∗) +∑

i∈I(x∗)

μi∇ci(x∗) = 0.

� Os multiplicadores μi apresentam uma outra propriedade!

24

• Condicoes de Karush-Kuhn-Tucker - KKT : Na equacao anterior � μi ≥ 0.

Teorema 14. x∗ mınimo local de (5) e {∇ci(x∗)}i∈I(x∗) e um conjunto linearmenteindependente, entao, para cada i ∈ I(x∗), existem unicos μi ∈ R, com μi ≥ 0 talque

∇f(x∗) +∑

i∈I(x∗)

μi∇ci(x∗) = 0.

• Ou tambem:

∇f(x∗) + c′(x∗)Tμ = 0, μ ∈ Rp,μTc(x∗) = 0, (complementariedade)

c(x∗) ≤ 0,μ ≥ 0.

25

Page 14: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

O problema geral:

Sejam h : Rn → Rm e c : Rn → Rp e considere:

Minimizar f(x)sujeito a h(x) = 0

c(x) ≤ 0.(4)

Agora, Ω = {x ∈ Rn | h(x) = 0 e c(x) ≤ 0}.

Se x∗ e minimo local do problema acima � e tambem mınimo local de

Minimizar f(x)sujeito a h(x) = 0

ci(x) ≤ 0 para i ∈ I(x∗).

26

Condicoes KKT para o problema (4): Se x∗ e mınimo local e {∇h1(x∗), . . . ,∇hm(x∗)}∪{∇ci(x∗)}i∈I(x∗) e um conjunto linearmente independente (regular), entao existemunicos {λ}m

i=1 e {μi}i∈I(x∗) tais que

∇f(x∗) +m∑

i=1

λi∇hi(x∗) +

∑i∈I(x∗)

μi∇ci(x∗) = 0.

Ou tambem (condicoes KKT):

∇f(x∗) + h′(x∗)Tλ + c′(x∗)Tμ = 0, λ ∈ Rm e μ ∈ Rp,μTc(x∗) = 0, (complementariedade)

h(x∗) = 0c(x∗) ≤ 0,

μ ≥ 0.

• Solucao desse sistema � pontos estacionarios.

27

Page 15: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

• Vamos definir a funcao lagrangena para (4):

�(x, λ, μ) = f(x) + h(x)Tλ + c(x)Tμ.

• Seja x∗ ∈ Ω e considere A∗ a matriz com linhas formadas por ∇hi(x∗), i =1, . . . , m, e os ∇ci(x∗), i ∈ I(x∗), excluindo os gradientes onde μj = 0.

Assim, temos os resultados:

28

� Condicoes necessarias de segunda ordem: Se x∗ ∈ Ω e mınimo local de (4)com multiplicadores λ ∈ Rm e μ ∈ Rp, entao

yT∇2xx�(x

∗, λ, μ)y ≥ 0 ∀ y ∈ ker(A∗).

� Condicoes suficientes de segunda ordem: Se x∗ satisfaz as condicoes KKTcom multiplicadores λ ∈ Rm e μ ∈ Rp, e ainda

yT∇2xx�(x

∗, λ, μ)y > 0 ∀ y ∈ ker(A∗),

entao x∗ e um mınimo local de (4).

� Observacao:

∇2xx�(x

∗, λ, μ) = ∇2f(x∗) +m∑

i=1

λi∇2hi(x∗) +

p∑i=1

μi∇2ci(x∗).

29

Page 16: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

30

Dualidade em problemas de Otimizacao:

Considere o problema (Primal):

Minimizar f(x)sujeito a h(x) = 0

ci(x) ≤ 0 para i ∈ I(x∗).

• Funcao Lagrangenana: �(x, λ, μ) = f(x) + h(x)Tλ + c(x)Tμ.

Definimos o Problema Dual do problema acima como:

Maximizar �(x, λ, μ)sujeito a ∇x�(x, λ, μ) = 0,

μ ≥ 0 e λ ∈ Rm.

31

Page 17: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Exemplo: c ∈ Rn, A ∈ Rm×n e b ∈ Rm.

� Problema Primal:

Minimizar cTxsujeito a Ax ≤ b.

� Problema Dual:

Maximizar bTysujeito a ATy = c

y ≤ 0.

32

Definicao 9 (Conjunto Convexo). K ⊆ Rn e convexo se , ∀ x, y ∈ K e ∀ λ ∈ [0,1],

λx + (1 − λ)y ∈ K.

Definicao 10 (Funcao Convexa). K ⊆ Rn convexo. f : K → R e chamada convexase ,∀ x, y ∈ K e ∀ λ ∈ [0,1],

f(λx + (1 − λ)y) ≤ λf(x) + (1 − λ)f(y).

33

Page 18: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Teorema 15. Suponha que f, c sao convexas em Rn e x∗ um ponto KKT commultiplicadores de Lagrange λ∗ ∈ Rm e μ∗ ∈ Rp. Entao, (x∗, λ∗, μ∗) e solucao doDual e

f(x∗) = �(x∗, λ∗, μ∗)

34

Unidade III - Sistemas de Equacoes Nao-Lineares

35

Page 19: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

• Seja F : Rn → Rm, com F ∈ C1(Rn).

• Objetivo: Encontrar x ∈ Rn tal que F (x) = 0 (x � zero de F ).

• Aqui,

F (x) =

⎛⎝ f1(x)

...fn(x)

⎞⎠

• Notacao:

J(x) = F ′(x) =

⎛⎝ − ∇f1(x)T −

...− ∇fn(x)T −

⎞⎠

36

Metodo de Newton:

� Taylor:

F (x) ≈ Lk(x) = F (xk) + J(xk)(x − xk)

� Escolher xk+1 solucao de Lk(x) = 0. Assim, tem-se o processo:

J(xk)sk = −F (xk)xk+1 = xk + sk

37

Page 20: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Metodo Quase-Newton:

• Iteracao do Newton � avaliar o Jacobiano e J(xk)sk = −F (xk) � caro!

� Substituir J(xk) por uma aproximacao Bk:

Bksk = −F (xk)xk+1 = xk + sk

• Note que sk = −B−1k F (xk) � escolher Bk tal que seja facil de inverter.

38

• Metodo de Quase-Newton pratico � Bk+1 construıdo facilmente de Bk.

• O mais simples: Bk = J(x0) para todo k � Newton estacionario

• Quase-Newton mais conhecido e usado � Metodos secantes

Ideia dos secantes:

• No passo k � conhecendo xk ∈ Rn e Bk ∈ Rn×n, aproximar F (x) por

Lk(x) = F (xk) + Bk(x − xk)

39

Page 21: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

No passo k + 1, supor Bk+1 tal que

Lk+1(x) = F (xk+1) + Bk+1(x − xk+1)

� Impor que interpole xk e xk+1:

(i) Lk+1(xk+1) = F (xk+1) � OK!

(ii) Lk+1(xk) = F (xk)

De (ii) � definindo sk = (xk+1 − xk) e yk = F (xk+1) − F (xk)

Bk+1sk = yk (Equacao secante)

40

• Escolher Bk+1 que satisfaca a equacao secante � sistema com mais incognitasdo que equacoes

Varias escolhas possıveis para Bk � Diferentes metodos secantes!

Exemplo: Supor Bk+1 = Bk + ΔBk, com ΔBk de posto 1 � wk ∈ Rn

ΔBk =(yk − Bksk)wT

k

wTk sk

(wTk sk �= 0)

� cada escolha de wk um metodo diferente!

� wk = sk � 1o¯ Metodo de Broyden

� wk = yk − Bksk � Correcao simetrica de posto um

41

Page 22: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Vantagens: ΔBk tem posto um � Shermann-Morrison:

(A + uvT)−1 = A−1 − A1uvTA1

1 + vTA−1u.

Conclusao: Se Conhecemos B−1k �

Calcular o passo sk+1 = −B−1k+1F (xk) e facil! � O(n2) operacoes.

Denotando Hk = B−1k , wk = sk e usando Shermann-Morrinson �

Hk+1 = Hk +(sk − Hkyk)yT

k

yTk yk

(2o¯ Metodo de Broyden)

42

Metodo de Newton-Truncado ou Newton Inexato:

• Problema de grande porte � Newton inviavel

Ideia: Usar metodo iterativo para

J(xk)sk = −F (xk)

ate que

‖J(xk)sk + F (xk)‖ ≤ εk

fazendo εk → 0 � melhorando a precisao a cada passo.

43

Page 23: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

• Se J(xk) > 0 � sistema linear, J(xk)sk = −F (xk), e equivalente a

Minimizar 12sTJ(xk)s + F (xk)Ts, s ∈ Rn

• Se J(xk) nao e simetrica e nao-singular entao e equivalente a

Minimizar 12‖J(xk)s + F (xk)‖2

44

Criterio de Dembo-Eisenstat e Steihaug - DES

• εk = ηk‖F (xk)‖ � Encontrar sk tal que

‖J(xk)sk + F (xk)‖ ≤ ηk‖F (xk)‖

com ηk ∈ (0,1) (ηk pode ser fixo).

� Um passo do Newton-Inexato: Dado xk ∈ Rn, encontrar sk tal que

‖J(xk)sk + F (xk)‖ ≤ ηk‖F (xk)‖

xk+1 = xk + sk

45

Page 24: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Propriedade de Convergencia dos Metodos

46

Tipos de convergencia: Seja {xk}k∈N ⊂ Rn com xk → x∗

• Convergencia linear: ∃ c ∈ (0,1) e k0 ∈ N tal que, ∀k ≥ k0

‖xk+1 − x∗‖ ≤ c‖xk − x∗‖.

• Convergencia superlinear: ∃ {ck} ⊂ (0,∞) com ck → 0 e k0 ∈ N tal que, ∀k ≥ k0

‖xk+1 − x∗‖ ≤ ck‖xk − x∗‖.

• Convergencia quadratica: ∃ M > 0 e k0 ∈ N tal que, ∀k ≥ k0

‖xk+1 − x∗‖ ≤ M‖xk − x∗‖2.

47

Page 25: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Convergencia de Algoritmos:

� Comecando com z0, o algoritmo gera {zk}k∈N ⊂ Rn (sequencia de iterados).

• Convergencia local para z∗: ∃ ε > 0 tal que, se z0 ∈ B(z∗, ε) entao zk → z∗

• Convergencia global para z∗: para qualquer z0 ∈ Rn tem-se que zk → z∗(independe de z0).

48

Hipotese: Sempre supor:

• H1 - F : Ω → Rn (Ω aberto e convexo) com F ∈ C1(Ω). Assim

limh→0

‖F (x + h) − F (x) − J(x)h‖‖h‖ = 0

• H2 - J(x) = F ′(x) e lipschitz na vizinhanca de x∗ �

‖J(x) − J(x∗)‖ ≤ L‖x − x∗‖ ∀ x ∈ B(x∗, ε)

49

Page 26: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

• Vamos assumir x∗ ∈ Rn tal que F (x∗) = 0 e J(x∗) nao-singular.

• {xk}k∈N sequencia gerada por

Bksk = −F (xk)xk+1 = xk + sk,

para alguma sequencia {Bk}k∈N

Teorema 16 (Teorema das duas vizinhancas). Seja r ∈ (0,1). Entao existeε, δ > 0 tal que se ‖x0 − x∗‖ ≤ ε e ‖Bk − J(x∗)‖ ≤ δ para todo k ∈ N, entao asequencia esta bem definida (B−1

k existe) e

‖xk+1 − x∗‖ ≤ r‖xk − x∗‖ (convergencia linear)

50

Para demonstrar o teorema das duas vizinhancas � 3 Lemas.

Lema 17 (Lema de Banach). A ∈ Rn×n inversıvel e ‖A‖ ≤ 1. Entao (I − A) einversıvel e

1

1 + ‖A‖ ≤ ‖(I − A)−1‖ ≤ 1

1 − ‖A‖

Lema 18. Se B ∈ Rn×n satisfaz ‖B − J(x∗)‖ ≤ 1

2‖J(x∗)−1‖, entao B−1 e inversıvel

e ‖B−1‖ ≤ 2‖J(x∗)−1‖.

Lema 19 (duas vizinhancas). Para cada x ∈ Ω e B ∈ Rn×ndefina φ(x, B) =x − B−1F (x). Dado r ∈ (0,1), ∃ ε ≡ ε(r) e δ ≡ δ(r) tais que se

‖x − x∗‖ ≤ ε e ‖B − J(x∗)‖ ≤ δ,

entao φ esta bem definida e ‖φ(x, B) − x∗‖ ≤ r‖x − x∗‖.

51

Page 27: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Consequencias do Teorema das Duas Vizinhancas:

� Convergencia linear do Newton-estacionario:

Se � ‖x0 − x∗‖ ≤ ε e ‖J(x0) − J(x∗)‖ ≤ δ � xk → x∗

� Convergencia linear do Newton: Segue da continuidade de J �

Dado δ1 > 0, ∃ ε1 > 0 tal que se ‖y − x∗‖ ≤ ε1 ⇒ ‖J(y) − J(x∗)‖ ≤ δ1.

52

Convergencia quadratica do Metodo de Newton:

Lembrando.... � Newton: xk+1 = xk − J(xk)−1F (xk)

Teorema 20. ∃ ε, M > 0 tais que se ‖x0 − x∗‖ ≤ ε, entao a sequencia {xk}k∈N estabem definida (∃ J(xk)−1) e ‖xk+1 − x∗‖ ≤ M‖xk − x∗‖2 (conv. quadratica).

53

Page 28: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Convergencia do Quase-Newton:

Lembrando....

� Bk ≈ J(xk): xk+1 = xk − B−1k F (xk)

� Teorema das Duas vizinhancas:∃ δ, ε > 0 tais que se ‖x0 − x∗‖ ≤ ε e ‖Bk − J(x∗)‖ ≤ δ ⇒ Conv. linear.

Se ‖Bl − J(x∗)‖ > δ para algum l ∈ N � sem garantia de convergencia

• Atualizacao de Bk+1 a partir de Bk � garantir ‖Bk − J(x∗)‖ ≤ δ, ∀k.

54

Princıpio da deterioracao limitada - PDL: Supor ∃ c > 0 tal que Bk+1 satisfaz

‖Bk+1 − J(x∗)‖ ≤ ‖Bk − J(x∗)‖ + c‖xk − x∗‖

Teorema 21. Seja r ∈ (0,1). ∃ ε, δ > 0 tais que se ‖x0−x∗‖ ≤ ε e ‖B0 − J(x∗)‖ ≤ δ,entao {xk}k∈N de Quase-Newton esta bem definida (∃ B−1

k ) e

‖xk+1 − x∗‖ ≤ r‖xk − x∗‖.

1o¯ Metodo de Broyden satisfaz o Princıpio da Deterioracao Limitada?

Metodo de Broyden:

Bk+1 = Bk +(yk − Bksk)

sTk sk

55

Page 29: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

• ‖Bk+1 − Bk‖ ≤ ‖B − Bk‖ ∀ B ∈ Rn×n tal que Bsk = yk.

• Infelizmente J(x∗) nao satisfaz a equacao secante. Mas,

Bk =

∫ 1

0J(xk − t(xk − xk+1))dt

satisfaz Bksk = yk.

Assim,

‖Bk+1 − Bk‖ ≤ ‖Bk − Bk‖.

Portanto,

‖Bk+1 − J(x∗)‖ ≤ ‖Bk − J(x∗)‖ + 2L‖xk − x∗‖

� Satisfaz Princıpio da Deterioracao Limitada � Conv. Linear.

56

Convergencia superlinear do Quase-Newton - Condicao de Dennis-More:

limk→∞

‖(Bk − J(x∗))sk‖‖sk‖

= 0.

Teorema 22. {xk} sequencia do Quase-Newton. Se xk → x∗ e {Bk} satisfaza Condicao de Dennis-More entao a convergencia e superlinear (‖xk+1 − xk‖ ≤rk‖xk − x∗‖ para k ≥ k0).

Observacao: Condicao de Dennis-More tambem e condicao suficiente para con-vergencia superlinear.

� Se {Bk} satisfaz a condicao de Dennis-More � Convergencia superlinear!!

57

Page 30: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Uma condicao sobre Bk’s para satisfazer Dennis-More:

‖(Bk − J(x∗))sk‖‖sk‖

≤ ‖Bk+1 − Bk‖ + Lmax{‖xk+1 − x∗‖, ‖xk − x∗‖}

Portanto, no quase-Newton secante, se

� xk → x∗ e

� ‖Bk+1 − Bk‖ → 0

� Convergencia superlinear.

Observacao: Prova-se que 1o¯ Metodo de Broyden satisfaz ‖Bk+1 − Bk‖ → 0 �

Conv. superlinear!!

58

Convergencia do Newton Inexato:

xk+1 = xk + pk

onde

‖J(xk)pk + F (xk)‖ ≤ ηk‖F (xk)‖

Teorema 23 (Dembo-Eisenstat-Steighaug (DES)). Seja {xk} sequencia do New-ton Inexato. Entao, ∃ ε > 0 tal que se ‖x0 − x∗‖ ≤ ε, tem-se:

(i) Se ηk ∈ [0, η], com η suficientemente pequeno ⇒ Convergencia Linear

(ii) Se ηk → 0 ⇒ Convergencia Superlinear

(iii) Se ηk ≤ M‖F (xk)‖2 ⇒ Convergencia Quadratica

59

Page 31: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Unidade IV - Minimizacao Irrestrita

60

Problema: f : Rn → R com f ∈ C1(Rn)

Minimizar f(x), sujeito a x ∈ Rn

• Encontrar o minimizador global � Difıcil!

� Procurar entao por mınimos locais.

Candidatos: x ∈ Rn tal que ∇f(x) = 0 � sistema nao-linear

• x∗ ∈ Rn onde ∇f(x∗) = 0: chamamos Ponto Estacionario

61

Page 32: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Definicao 11. d ∈ Rn e uma direcao de descida a partir de xk ∈ Rn se ∃ε > 0 talque

f(xk + td) < f(xk) ∀t ∈ (0, ε].

Lema 24. Se ∇f(xk)Td < 0 ⇒ d e direcao de descida a partir de xk

• Algumas direcoes de descida a partir de um xk ∈ Rn:

� d = −∇f(xk) � direcao de maxima descida ou Cauchy

� d = −B−1∇f(xk), com B > 0 �.

Direcao de maxima descida: d =−ε∇f(xk)

‖∇f(xk)‖e solucao de

Minimizar ∇f(xk)Td, sujeito a ‖d‖ ≤ ε

62

Poderıamos pensar no Algoritmo:

Algoritmo 1. k ← 0.

Passo1. Dado xk ∈ Rn com ∇fk �= 0, escolher dk (direcao de descida), tk > 0 talque

f(xk + tkdk) < f(xk).

Passo2. Fazer xk+1 = xk + tkdk e k ← k + 1 e voltar para o Passo 1.

� Reducao em f e modesta! � Nao garante nenhum tipo de convergencia

Exemplo: f(x) = x2 e xk = 1 +1

k

63

Page 33: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Condicao de Armijo:

Teorema 25. Dados xk, d ∈ Rn, com ∇f(xk)Td < 0, e α ∈ (0,1). Entao existeε > 0 tal que

f(xk + td) ≤ f(xk) + tα∇f(xk)Td, ∀ t ∈ (0, ε] (Condicao de Armijo).

64

� Trocar no Algoritmo anterior f(xk + tdk) < f(xk) pela condicao de Armijo aindanao e suficiente para garantir convergencia

Evitar ainda:

� ‖dk‖ → 0 precipitadamente;

� ∇f(xk)Tdk → 0 rapidamente

Entao, encontrar dk tal que:

(i) ‖dk‖ ≥ β‖∇fk‖, β > 0 � Evita passos pequenos

(ii) ∇fTk dk ≤ −θ‖∇fk‖‖dk‖, θ ∈ (0,1) � Evita ortogonalidade

• Armijo + (i) + (ii) � Algoritmo globalmente convergente!

65

Page 34: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Como obter tk ∈ (0,1] que satisfaca Armijo?

Backtracking (ou Busca Linear:)

Comecando com t = 1, reduzir gradativamente t ate encontrar tk ∈ (0,1] tal que

f(xk + td) ≤ f(xk) + tα∇f(xk)Td

• Lembrando....α ∈ (0,1)

Algoritmo 2 (Backtracking). xk, dk ∈ Rn tal que ∇f(xk)Td < 0, α, γ ∈ (0,1).Escolha t ← 1.

Passo1. Enquanto f(xk + td) > f(xk) + tα∇fTk d, faca t ← γt

Passo2. tk ← t.

66

Algoritmo 3 (Descida com Backtracking). x0 ∈ Rn, α ∈ (0,1), β > 0 e θ ∈ (0,1).k ← 0.

Para k = 0,1,2, . . .

Passo1. Escolher dk ∈ Rn tal que

‖dk‖ ≥ β‖∇f(xk)‖∇f(xk)

Tdk ≤ −θ‖∇f(xk)‖‖dk‖

Passo2. Encontre tk ∈ (0,1] pelo Backtracking e faca xk+1 = xk + tkdk

Escolhas praticas: α = 10−4 ou 10−1; θ = 10−6.

β: depende do problema

67

Page 35: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Observacao: O algoritmo esta bem definido: O Passo 2 termina depois de umnumero finito de passos.

• Se Bk ∈ Rn×n e SDP e dk = −B−1k ∇f(xk), entao:

(i) dTk∇f(xk) < 0 � Direcao de descida

(ii) ‖dk‖ ≥ 1‖Bk‖‖∇f(xk)‖

(iii) ∇f(xk)Tdk ≤ − 1‖Bk‖‖B−1

k ‖‖∇f(xk)‖‖dk‖.

� Portanto, se ‖Bk‖ ≤ M e ‖Bk‖‖B−1k ‖ ≤ c, temos:

� ‖dk‖ ≥ 1M‖∇f(xk)‖ (β = 1

M)

� ∇f(xk)Tdk ≤ −1c‖∇f(xk)‖‖dk‖ (θ = 1

c)

• dk = −∇f(xk) tambem satisfaz as duas condicoes.

68

Propriedade do Algoritmo de descida com backtracking:

Teorema 26. x∗ ponto de acumulacao da sequencia {xk} gerada pelo algoritmo.Entao ∇f(x∗) = 0 (ponto estacionario).

69

Page 36: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Metodos Tradicionais para Minimizacao Irrestrita:

� No Algoritmo de Descida com Backtracking � Escolher direcao dk

Metodo de Maxima Descida: Escolher dk = −β∇f(xk) � condicao β e θ:

‖dk‖ ≥ β‖∇f(xk)‖∇f(xk)

Tdk ≤ −θ‖∇f(xk)‖‖dk‖

Resultado: Convergencia global � independe do chute inicial x0.

Desvantagem: Convergencia geralmente lenta.

70

Metodo de Newton

• Solucao x∗ de

Minimizar f(x), sujeito a x ∈ R

satisfaz ∇f(x∗) = 0.

� Procurar por mınimos locais ou pontos estacionarios � x tal que ∇f(x) = 0� Newton para resolver este sistema nao-linear.

Ideia: Gerar sequencia {xk} de maneira que {f(xk)} seja monotona decrescente.

71

Page 37: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Aplicar Newton em ∇f(x) = 0: A partir de xk �

∇2f(xk)dk = −∇f(xk) (dk � Direcao de Newton)

Metodo de Newton puro: xk+1 = xk + dk

Se ∇2f(xk) > 0 � dk direcao de descida

Infelizmente nem sempre ∇2f(xk) > 0 � Solucao: encontrar μk > 0 tal que

∇2f(xk) + μkI > 0

72

Uma versao do Metodo de Newton: x0 ∈ Rn

� Se ∇2f(xk) > 0, encontre dk: ∇2f(xk)dk = −∇f(xk).

Senao, escolha μk > 0 tal que (∇2f(xk) + μkI) > 0 e encontre dk por

(∇2f(xk) + μkI)dk = −∇f(xk)

� Obter tk por Backtracking na direcao de dk e fazer xk+1 = xk + tkdk.

• Observacao: dk = −(∇2f(xk) + μkI)−1∇f(xk) → −c∇f(xk) quando μk → ∞.

� Usar dk no algoritmo de descida com backtracking: cuidar para satisfazercondicoes β e θ

73

Page 38: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Algoritmo 4 (Newton com Backtracking). α, θ ∈ (0,1), β > 0 e x0 ∈ Rn.

Para k = 0,1,2, . . .

Passo1. Se ∇2f(xk) > 0, escolha encontre dk: ∇2f(xk)dk = −∇f(xk).

Senao, escolha μk > 0 tal que (∇2f(xk) + μkI) > 0 e encontre dk por

(∇2f(xk) + μkI)dk = −∇f(xk)

Passo2. Se ∇f(xk)Tdk > −θ‖∇f(xk)‖‖dk‖ entao aumentar μk e repetir Passo 1.

Passo3. Se ‖dk‖ < β‖∇f(xk)‖ faca dk ← β‖∇f(xk)‖‖dk‖ dk.

Passo4. Obter tk > 0 por Backtracking tal que

f(xk + tkdk) ≤ f(xk) + αtk∇f(xk)Tdk

e fazer xk+1 = xk + tkdk.

74

Observacoes: Se eventualmente tk = 1 ∀k ≥ k0:

� Newton com Backtracking torna-se Newton para sistema nao-lineares

� convergencia quadratica para k ≥ k0

� Felizmente, sob certas hipoteses isso acontece!!

75

Page 39: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Teorema 27. Seja {xk} sequencia gerada pelo Newton com Backtracking:

� Todo ponto de acumulacao de {xk} e estacionario.

� Se f ∈ C3(Rn), x∗ ponto de acumulacao com ∇2f(x∗) > 0, β e θ pequenos ⇒convergencia quadratica a partir de algum k0 ∈ N.

76

Metodo de Quase-Newton:

Algumas vezes:

� Calcular a Hessina pode ser caro

� Ser inviavel resolver ∇2f(x)dk = −∇f(xk)

Ideia: Usar uma aproximacao da Hessian � Quase-Newton

Quase-Newton para o sistema nao-linear: ∇f(x) = 0 � Jacobiano aqui ∇2f(x).

77

Page 40: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

O Quase-Newton: xk+1 = xk − tkB−1k ∇f(xk)

Equacao secante: yk = ∇f(xk+1) −∇f(xk) e sk = xk+1 − xk

Bk+1sk = yk

� Atualizar Bk+1 a partir de Bk.

• Para evitar resolver Bkdk = −∇f(xk) � Atualizar Hk+1 = B−1k+1 a partir de

Hk = B−1k

Assim:

xk+1 = xk − tkHk∇f(xk)

Observacao: Nesse caso � Equacao Secante Dual:

Hk+1yk = sk

78

Algoritmo 5 (Quase-Newton com Backtracking). β, θ ∈ (0,1), β > 0, B0 ∈Rn×n (ou H0), x0 ∈ Rn

Para k = 0,1,2, . . .

Passo1. Encontrar dk = −B−1k ∇f(xk) (ou dk = −Hk∇f(xk))

Passo2. Testar se

‖dk‖ ≥ β‖∇f(xk)‖ e ∇f(xk)Tdk ≤ −θ‖∇f(xk)‖‖dk‖,

corrigindo se necessario.

Passo3. Obter tk por Backtracking na direcao dk:

f(xk + tkdk) ≤ f(xk) + αtk∇f(xk)Tdk

Passo4. xk+1 = xk + tkdk e atualize Bk+1 (ou Hk+1) satisfazendo Bk+1sk = yk

79

Page 41: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Algumas atualizacoes de Bk+1:

Supor Bk+1 = Bk + ΔBk, com ΔBk = αuvT u, v ∈ Rn:

Bk+1 = Bk +(yk − Bksk)vT

sTk v

, v ∈ Rn

Cada v � Um metodo diferente

� v = sk � 1o¯ Metodo de Broyden

� v = yk − Bksk � Atualizacao Simetrica de Posto 1 (SR1)

80

No SR1:

Bk+1 = Bk +(yk − Bksk)(yk − Bksk)T

sTk (yk − Bksk)

Usando Shermann-Morrinson para posto 1: (A + uvT)−1 = A−1 − A−1uvTA−1

1 + vTA−1u

� Aplicando no SR1:

B−1k+1 = B−1

k +(sk − B−1

k yk)(sk − B−1k yk)T

yTk (sk − B−1

k yk)

81

Page 42: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

A atualizacao BFGS (Broyden,Fletcher, Goldfarb, Shanno):

Tentar melhorar a atualizacao � posto 2 em vez de posto 1:

Bk+1 = Bk + ΔBk + ΔBk

com ΔBk e ΔBk matrizes simetricas de posto 1

� Impor equacao secante e supor ΔBksk = yk e ΔBksk = −Bksk �

Bk+1 = Bk +yky

Tk

sTk yk

− BksksTk Bk

skBksk

(BFGS)

82

Usando Shermann-Morrinson geral:

(A + UV T)−1 = A−1 − A−1U(I + V TA−1U)−1V TA−1

B−1k+1 = B−1

k +(sk − B−1

k yk)sTk + sk(sk − B−1

k yk)T

sTk yk

− (sk − B−1k yk)Tyksks

Tk

(yTk sk)2

A Atualizacao BFGS apresenta propriedades interessantes!

Teorema 28. Bk e simetrica definida positiva (SDP) e yTk sk > 0 ⇒ Bk+1 e SDP.

Prova:

83

Page 43: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

O significado de sTk yk > 0:

Defina φ(t) = f(xk + tsk) � φ′(t) = ∇f(xk + tsk)Tsk.

Portanto, φ′(1) > φ′(0)

� f e convexa na direcao de sk ≡ tkdk.

� Se f e convexa � condicao satisfeita automaticamente

84

A convergencia do Quase-Newton com Backtracking:

Teorema 29. Seja x∗ um ponto de acumulacao da sequencia {xk} do Quase-Newton. Suponha que ∇f(x∗) = 0, ∇f(x∗) > 0 e as matrizes Bk’s satisfazem acondicao de Dennis-More:

limk→∞

‖(Bk −∇2f(x∗))sk‖‖sk‖

= 0.

entao xk → x∗ superlinearmente.

Observacao: Se limk→∞

‖Bk+1−Bk‖ → 0, entao Bk’s satisfazem a condicao de Dennis-

More.

� BFGS � convergencia superlinear

85

Page 44: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Metodo de Newton-Inexato:

Sistema de Newton:

∇2f(xk)dNk = −∇f(xk)

impraticavel quando ∇2f(xk) e de grande porte e esparsa

Alternativa: Aproximar por um Metodo Iterativo � Ideia do Newton-Inexato.

� Resıduo: rk = ∇2f(xk)dNk + ∇f(xk)

� Newton Inexato:

‖rk‖ = ‖∇2f(xk)dNk + ∇f(xk)‖ ≤ ηk‖∇f(xk)‖

86

Tecnicas mais eficiente que Backtracking no Newton-Inexato � Regiao de Confianca.

Algoritmo 6 (Newton-Inexato puro). x0 ∈ Rn, {ηk} ⊂ (0,1).

Para k = 0,1,2, . . .

Passo1. Encontra dk ∈ Rn ate que

‖∇2f(xk)dNk + ∇f(xk)‖ ≤ ηk‖∇f(xk)‖

Passo2. xk+1 = xk + dk

Teorema 30. Seja {xk} sequencia Newton-Inexato e x∗ ponto de acumulacaocom ∇f(x∗) = 0 e ∇2f(x∗) > 0. Entao

� Se ηk → 0 � Convergencia superlinear

� Se ηk ≤ K‖∇f(xk)‖ � Convergencia quadratica

87

Page 45: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Unidade V - Metodo do Gradiente Conjugado

88

• Seja H ∈ Rn×n SDP e considere

Minimizar Q(x) = cTx +1

2xTHx

Solucao x∗ resolve o sistema linear

∇Q(x∗) = Hx∗ + c = 0.

ou seja, queremos resolver

Hx∗ = −c

� Um passo de Newton resolve o problema

• Pode ser caro resolver o sistema linear por um metodo direto � aproveitara positividade de H.

89

Page 46: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Metodo do Gradiente (globalizado) para Q(x):

Algoritmo 7 (Gradiente para Q). Tome x0 ∈ Rn

Para k = 0,1,2, . . .

Passo1. rk = Hxk + c

Passo2. αk = argminQ(xk + αrk), com α ∈ R

Passo3. xk+1 = xk + αkrk

� Formula analıtica para αk:

αk = − rTk rk

rTk Hrk

Gradiente � Convergencia lenta, principalmente no caso mal condicionado(elipsoides alongados)

� Propriedade: rTk+1rk = 0 (Prove isto!)

• Desvantagem: Nao resolve o problema em um numero finito de iteracoes.

90

O Metodo do Gradiente Conjugado para sistemas lineares

Definicao 12. Dizemos que os vetores nao-nulos d0, d1, . . . , dk sao H-conjugadosse dT

i Hdj = 0 para i �= j.

Lema 31. Se d0, d1, . . . , dk sao H-conjugados ⇒ sao linearmente independentes.

Algoritmo 8 (Direcoes Conjugadas para Q). Tome x0 ∈ Rn e d0, d1, . . . , dn−1

direcoes H-conjugadas.

Para k = 0,1,2, . . .

Passo1. αk = argminQ(xk + αdk) = − dTk rk

dTk Hdk

,

Passo2. xk+1 = xk + αkdk

� Propriedade de convergencia importante

91

Page 47: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Teorema 32. Para qualquer x0 ∈ Rn o algoritmo de direcoes conjugadas convergepara a solucao x∗ de Q (Hx∗ = −c) em no maximo n iteracoes

Observacao:

� Se H e diagonal entao as direcoes H-conjugadas sao {e1, e2, . . . , ...en}

� Se H nao e diagonal � fazer mudanca de variavel (autovetores) e obterdirecoes H-conjugadas. Porem e computacionalmente caro.

� Pensar em algo mais inteligente....

92

• Defina L(d0, d1, . . . , dk) = span{d0, d1, . . . , dk}

Teorema 33. Seja {xk} sequencia do algoritmo de direcoes conjugadas. Entao

rTk di = 0, para i = 1, . . . , k − 1.

e xk minimiza Q em x0 + L(d0, d1, . . . , dk).

� Ate agora supomos que conhecemos direcoes H-conjugadas d0, d1, . . . , dk.

� Desenvolver procedimento para ir construindo as direcoes a cada passo

93

Page 48: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Ideia: Comecando de d0 � gerar dl a partir de dl−1, para k = 1,2, . . . , k

� Exigir pouco amazenamento e poucas contas

• Dado dk−1, contruir dk da forma

dk = −rk + βkdk−1

• Queremos dTk−1Hdk = 0 ⇒ βk =

dTk−1Hrk

dTk−1Hdk−1

� E conveniente escolher d0 = −r0 para obter direcao de descida � Algoritmodo Gradiente Conjugado

94

Algoritmo 9 (Gradiente Conjugado - Versao 1). Escolha x0 ∈ Rn e faca r0 =Hx0 + c, d0 = −r0

Para k = 0,1,2, . . .

Passo1. αk = − rTk dk

dTk Hdk

Passo2. xk+1 = xk + αkdk

Passo3. βk+1 = −rTk+1Hdk

dTk Hdk

Passo4. dk+1 = −rk+1 + βk+1dk

Um outro resultado importante � Para isso vamos definir

K(r0, k) = span{r0, Hr0, H2r0, . . . , H

kr0} (Subespaco de Krylov de ordem k)

95

Page 49: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Teorema 34. Se na k-esima iteracao xk nao e solucao, entao:

(i) rTk ri = 0 para i = 1, . . . , k − 1

(ii) span{r0, r1, . . . , rk} = K(r0, k)

(iii) span{d0, d1, . . . , dk} = K(r0, k)

(iv) dTk Hdi = 0, para i = 1, . . . , k − 1.

• A partir desses resultados � melhorar o Algoritmo do Gradiente Conjugado.

96

• Do Fato que dk = −rk + βkdk−1 e rTk dk−1 = 0 temos que

rTk dk = −‖rk‖2 ⇒ αk = − rT

k dk

dTk Hdk

=‖rk‖2

dTk Hdk

• Tambem, do fato que

dk+1 = −rk+1+βk+1dk, rk+1 = rk+αkHdk, rTk+1rk = 0 e rT

k+1dk = 0

temos:

� rTk+1dk+1 = −‖rk+1‖2

� dTk+1rk = −‖rk+1‖2

Portanto, βk+1 =‖rk+1‖2

‖rk‖2

97

Page 50: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

� Uma versao mais economica do Gradiente Conjugado:

Algoritmo 10 (Gradiente Conjugado - Versao 2). Escolha x0 ∈ Rn e facar0 = Hx0 + c, d0 = −r0

Para k = 0,1,2, . . .

Passo1. αk =‖rk‖2

dTk Hdk

Passo2. xk+1 = xk + αkdk

Passo3. βk+1 =‖rk+1‖2

‖rk‖2

Passo4. dk+1 = −rk+1 + βk+1dk

� Excelente metodo para resolver Hx = b quando H > 0.

98

O metodo do Gradiente Conjugado nao-linear

Ate agora minimizamos uma quadratica convexa � Estender o algortimo GCpara minimizar f : Rn → R nao-linear qualquer

• Neste caso

αk+1 = argmin f(xk + αdk), com α ∈ R

βk+1 =‖∇f(xk+1)‖2

‖∇f(xk)‖2e dk+1 = −∇f(xk+1) + βk+1dk

� Algoritmo Fletcher-Reeves

99

Page 51: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Algoritmo 11 (Fletcher-Reeves). Escolha x0 ∈ Rn. Calcule ∇f(x0), f(x0) efaca d0 = −∇f(x0)

Para k = 0,1,2, . . .

Passo1. αk = argmin f(xk + αdk), α ∈ R

Passo2. xk+1 = xk + αkdk

Passo3. βFRk+1 =

‖∇f(xk+1)‖2

‖∇f(xk)‖2

Passo4. dk+1 = −∇f(xk+1) + βFRk+1dk

Observacoes:

αk = argmin f(xk + αdk) ⇒ ∇f(xk+1)Tdk+1 = −‖∇f(xk+1)‖2 < 0

� Em geral, nao tem convergencia em numero finito de iteracoes.

100

• Outros metodos mudam a apenas a escolha de βk+1

� Polak-Ribiere:

βPRk+1 =

∇f(xk+1)T(∇f(xk+1) −∇f(xk))

‖∇f(xk)‖2

Alguns resultados:

� Com algumas suposicoes � convergencia globalizada de Fletcher-Reeves.

� Se f e quadratica convexa e a busca de αk e exata � Fletcher-Reeves ePolak-Ribiere sao iguais.

� Vantagem: Nao precisa da Hessiana

101

Page 52: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Unidade VI - Minimizacao Restrita

102

Metodo de Barreira

Considere o problema:

Minimizar f(x),sujeito a c(x) ≥ 0

(5)

em que f, c sao contınuas, f : Rn → R e c : Rn → Rm

• Vamos definir

Ω = {x ∈ Rn | g(x) ≥ 0} e Ωo = {x ∈ Rn | g(x) > 0}

� Supor Ω limitado

� Ideia: Resolver (5) por subsequencia de subproblemas irrestritos.

103

Page 53: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Seja B : Ωo → R tal que

� B(x) esta definida e contınua em Ωo B(x) ∈ C2(Ωo);

� B(x) ≥ 0 ∀ x ∈ Ωo

� Se {xk} ⊆ Ωo e limk→∞ c(xk) = 0 ⇒ B(xk) → ∞

� B(x) e denomina Funcao Barreira

Metodo de Barreira: dado t > 0, resolver o problema por uma sequencia:

Minimizar f(x) + tB(x), sujeito ax ∈ Rn

• Q(x, t) = f(x) + tB(x) � Funcao minimizada no subproblema

104

Algoritmo 12 (Barreira). t1 > 0, xs0 ∈ Ωo

Para k = 1,2, . . .

Passo1. Calcular xk ≡ xk(tk) solucao (global) de

Minimizar f(x) + tkB(x), sujeito ax ∈ Rn

usando chute inicial xsk−1

Passo2. Escolher xsk e tk+1 ∈ (0, tk) (tk+1 ← tk/10).

Observacoes:

(a) Passo 2 � Algoritmo de minimizacao irretrita

(b) Para cada t > 0 � x(t) define curva em Ωo

(Caminho Central ou Trajetoria Central)

105

Page 54: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Exemplos de funcoes barreiras:

� Funcao Barreira inversa � B(x) =m∑

i=1

1

c(x)

� Funcao Barreira logaritmica � B(x) = −m∑

i=1

log(ci(x))

Observacao: Note que B(x) = −m∑

i=1

log(ci(x)) nao satisfaz B(x) ≥ 0 ∀ x ∈ Ωo

• Mas no caso que Ω e limitado esta condicao nao faz diferenca!

� ∃ M > 0 tal que B(x) = −m∑

i=1

log(ci(x)) − M > 0 ∀ x ∈ Ωo

106

� B e uma funcao barreira

• Assim, fixado t > 0,

Minimizar f(x) + tB(x) ≡ Minimizar f(x) − t

m∑i=1

log(ci(x))

Lembrando....

xk = argmin f(x) + tkB(x) ≡ Q(x, tk)

107

Page 55: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Exemplos:

Minimizar x,sujeito a x ∈ [0,1].

Funcao (Q(x, t) = x−t(log(x)+log(1−x))) para t = 1, t = 0.4, t = 0.1 e t = 0.01

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

1

2

3

4

5

6Parametro de barreira = 1, 0.4, 0.1, 0.01

108

Minimizar (x1 + 0.5)2 + (x2 − 0.5)2,sujeito a x1, x2 ∈ [0,1].

Funcao (Q(x, t) = (x1 + 0.5)2 + (x2 − 0.5)2 − t(log(x1) + log(1 − x1) + log(x2) +log(1 − x2)))

Problema • Para t = 1

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1Parametro de barreira = 1

109

Page 56: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

• Para t = 0.1

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1Parametro de barreira = 0.1

0 0.2 0.4 0.6 0.8 1

00.2

0.40.6

0.81

0.5

1

1.5

2

2.5

3

3.5

Superficie: Parametro de barreira = 0.1

110

• Para t = 0.01

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1Parametro de barreira = 0.01

111

Page 57: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Propriedades do Metodo de Barreira:

Lema 35. Seja {xk} sequencia gerada pelo algoritmo de barreira. Entao

(i) Q(xk+1, tk+1) ≤ Q(xk, tk)

(ii) B(xk) ≤ B(xk+1)

(iii) f(xk+1) ≤ f(xk)

Teorema 36. Se limk→∞

tk = 0 e x∗ ponto limite de {xk}, entao x∗ e mınimo global.

Observacao: Calcular o mınimo global em cada subproblema e uma tarefa difıcil!

� Se xk e estacionario de Q(x, tk) � pode-se provar que o ponto de acumulacaox∗ e estacionario do problema original.

112

Desvantagens:

• Considere Q(x, tk) = f(x) − tk

∑mi=1 log(ci(x))

� ∇Q(xk, tk) = ∇f(xk) −∑m

i=1tk

ci(xk)∇ci(xk)

� tk

ci(x)faz papel dos multiplicadores

� Prova-se que tk

ci(xk)→ μ∗

i (multiplicador)

Assim,

∇xxQ(xk, tk) = ∇2f(xk) −m∑

i=1

tk

ci(xk)∇2ci(xk)︸ ︷︷ ︸

≈ ∇2xx�(x,λ∗)

+n∑

i=1

tk

ci(xk)︸ ︷︷ ︸≈ λ∗

i

1

ci(xk)∇ci(xk)∇ci(xk)

T

Quando ci(xk) → 0 o segundo somatorio domina � ∇xxQ(xk, tk) torna-semal condicionada

113

Page 58: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Metodo de Penalizacao Externa:

• Usado tanto com restricoes de igualdade como desigualdade, mas vamos con-siderar somente igualdade.

Sejam f : Rn → Rm e h : Rn → Rm e considere o problema:

Minimizar f(x)sujeito a h(x) = 0

• Definimos Ω = {x ∈ Rn | h(x) = 0}

Funcao de Penalidade: P : Rn → R satisfazendo

P (x) =

{0, se x /∈ Ω

> 0, se x ∈ Ω

114

Ideia: Dado ρ > 0 � Resolver o problema por uma sequencia de subproblemas:

Minimizar f(x) + ρP (x), sujeito a x ∈ Rn

• ρ: parametro de penalidade � vai aumentando gradativamente

Funcao de penalidade mais usada: P (x) = 12‖h(x)‖2

� O subproblema temos que resolver

Minimizar f(x) +ρk

2‖h(x)‖2

115

Page 59: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Exemplo: Minimizar x1 + x2 sujeito a x21 + x2

2 − 2 = 0

Funcao de Penalizada Quadratica: Q(x, ρ) = x1 + x2 + ρ2(x2

1 + x22 − 2)2

Problema • ρ = 1

−3 −2 −1 0 1 2 3−3

−2

−1

0

1

2

3

−1.5 −1 −0.5 0 0.5 1 1.5−1.5

−1

−0.5

0

0.5

1

1.5Parametro penalidade = 1

116

• ρ = 10 • Funcao penalizada

−1.5 −1 −0.5 0 0.5 1 1.5−1.5

−1

−0.5

0

0.5

1

1.5Parametro penalidade = 0.1

117

Page 60: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Algoritmo 13 (Penalidade Externa). Tome ρ1 > 0 e x0 ∈ Rn

Para k = 1,2, . . .

Passo1. Comecando com chute xk−1, encontrar xk ≡ xk(ρ) solucao (global) de

Minimizar f(x) + ρkP (x)

Passo2. Escolher ρk+1 ≥ ρk

118

Resultados teoricos:

Defina Q(x, ρ) = f(x) + ρP (x)

Lema 37. Seja {xk} sequencia gerada pelo algoritmo de penalizacao. Suponhaque xk solucao global do subproblema. Entao

(i) Q(xk, ρk) ≤ Q(xk+1, ρk+1)

(ii) P (xk+1) ≤ P (xk)

(iii) f(xk+1) ≤ f(xk)

Lema 38. Se x∗ solucao global do problema original, entao ∀ k

f(xk) ≤ Q(xk, ρk) ≤ f(x∗)

Corolario 39. Se xk ∈ Ω (viavel) ⇒ xk e solucao do problema.

119

Page 61: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Teorema 40. Seja {xk} sequencia do algoritmo de penalizacao, com cada xk

mınmo global do subproblema. Suponha que ρk → ∞ e x∗ ponto de acumulacaode {xk}. Entao x∗ e mınimo global do problema.

120

Algumas consideracoes:

• Se Q(xk, ρk) = f(xk) + ρk

2‖h(xk)‖2

� ∇xQ(xk, ρk) = ∇f(xk) + h′(xk)T(ρkh(xk))

Por outro lado:

∇x�(xk, λk) = ∇f(xk) + h′(xk)Tλk

� ρkh(xk) faz o papel dos multiplicadores de Lagrange

Resultado que pode ser provado: Se h ∈ C1(R), {xk} → x∗ (solucao global) eh′(x∗) tem posto completo ⇒ ρkh(xk) → λ∗, que e o vetor de multiplicadoresassociado a x∗.

121

Page 62: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Problemas da penalizacao:

Temos que

∇xxQ(xk, ρk) = ∇2f(xk) +m∑

i=1

ρkhi(xk)∇2hi(xk) +m∑

i=1

ρk∇hi(xk)∇hi(xk)T

Entao,

∇xxQ(xk, ρk) = ∇2xx�(xk, ρkhi(xk)) + ρkh

′(xk)Th′(xk)

• Quando ρk torna-se grande � h′(xk)Th′(xk) (singular) domina ⇒ ∇xxQ(xk, ρk)torna-se mal condicionada.

122

Metodo de Lagrangeano Aumentado

• Contornar mal condicionamento do metodo de penalidade quadratica.

Considere o problema

Minimizar f(x)sujeito a h(x) = 0

(≡ Minimizar �(x, λ)

sujeito a h(x) = 0

)

Ideia: Em vez de penalizar f(x), penaliza-se �(x, λ) � Defina

�A(x, λ, ρ) = f(x) + λTh(x) +ρ

2‖h(x)‖2 (Funcao Lagrangeana Aumentada)

Observacao: ∇x�A(x, λ, ρ) = ∇f(x) + h′(x)(λ + ρh(x))

� (λ + ρh(x)) faz o papel dos multiplicadores de Lagrange.

123

Page 63: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

• Se xk aproximacao da solucao e λk aproximacao dos multiplicadores

∇xx�A(xk, λk, ρk) = ∇2f(xk) +m∑

i=1

(λk + ρkhi(xk))∇2hi(xk)︸ ︷︷ ︸∇xx�(xk,λk+ρkh(xk),ρk)

+ρkh′(xk)

Th′(xk)

� λk+1 = λk + ρkh(xk) e uma nova aproximacao para os multiplicadores

Ideia do algoritmo: Dados xk−1, λk e ρk > 0, encontrar xk solucao de

Minimizar �A(x, λk, ρk), sujeito a x ∈ Rn

e atualizar λk+1 = λk + ρkh(xk)

124

Exemplo: Minimizar x1 + x2 sujeito ax21 + x2

2 − 2 = 0 (λ∗ = 0.5)

Funcao Lagrangeana Aumentada: �A(x, λk, ρk) = x1+x2+λk(x21+x2

2−2)+ 12ρ(x2

1+

x22 − 2)2

• λk = 0.4 e ρ = 1 • λk = 0.4 e ρ = 10

−1.5 −1 −0.5 0 0.5 1 1.5−1.5

−1

−0.5

0

0.5

1

1.5Parametro de Lagrangeano aumentado = 1 e lambda = −0.4

−1.5 −1 −0.5 0 0.5 1 1.5−1.5

−1

−0.5

0

0.5

1

1.5Parametro de Lagrangeano aumentado = 0.1 e lambda = −0.4

125

Page 64: Introdu¸c˜ao `a Otimiza¸c˜ao - Matemática - UFSCjuliano/emalca/curso_emalca2sh.pdf · 2007-09-27 · Introdu¸c˜ao `a Otimiza¸c˜ao Juliano B. Francisco Universidade Federal

Algoritmo 14 (Lagrangeano Aumentado). Tome x0 ∈ Rn, λ1 ∈ Rm e ρ1 > 0

Para k = 1,2, . . .

Passo1. Comecando com xk−1, encontrar xk solucao de

Minimizar f(x) + λTk h(x) +

ρk

2‖h(x)‖2, sujeito a x ∈ R

n

Passo2. Faca xk+1 = xk, escolha ρk+1 ≥ ρk e atualize λk+1 = λk + ρkh(xk)

� As propriedades de convergencia dos Lagrangeano Aumentado sao as mesmasda Penalizacao quadratica

126

- FIM -

127