Sei sulla pagina 1di 85

DAS-9011

Metodo de Newton
Eduardo Camponogara
Departamento de Automa cao e Sistemas
Universidade Federal de Santa Catarina
DAS-9011: Metodos de Otimiza cao
DAS-9011
Sum ario
Introdu cao
O Metodo de Newton em uma Variavel
O Metodo de Newton em M ultiplas Variaveis
Convergencia
Metodos de Regiao de Conan ca
Otimiza cao de Fun coes Sujeito a Igualdades
DAS-9011
Introdu c ao
Sumario
Introdu cao
O Metodo de Newton em uma Variavel
O Metodo de Newton em M ultiplas Variaveis
Convergencia
Metodos de Regiao de Conan ca
Otimiza cao de Fun coes Sujeito a Igualdades
DAS-9011
Introdu c ao
Agenda
Introdu cao
Agenda

Metodo de Newton e aplica coes

Solu cao de sistemas de equa coes nao-linares

Minimiza cao de fun coes

Fundamentos

Convergencia

Extensoes
DAS-9011
Introdu c ao
Agenda
Problemas de Interesse
Solu cao de equa coes nao-lineares
P
2
: Encontre x R
n
, tal que c(x) = 0
onde c : R
n
R
m
DAS-9011
Introdu c ao
Agenda
Problemas de interesse
Minimiza cao irrestrita
P
1
: Minimize f (x)
x R
n
onde f : R
n
R
DAS-9011
Introdu c ao
Problemas de uma vari avel
Metodo de Newton em uma Variavel
Objetivos

Foco na solu cao do problema P


2
em uma variavel,
encontre x R
tal que c(x) = 0
onde c(x) : R R.

O metodo de Newton e um processo iterativo, fundamental


em outros algoritmos de programa cao nao-linear.
DAS-9011
Introdu c ao
Problemas de uma vari avel
Metodo de Newton em uma Variavel
Princpios

Seja x
k
a solu cao candidata na itera cao k, sendo a solu cao
inicial x
0
denida arbitrariamente.

O Metodo de Newton aproxima c(x) com uma serie de Taylor


de primeira ordem em torno do ponto x
k
:
c(x
k+1
) = c(x
k
) + c

(x
k
)(x
k+1
x
k
)
onde c

(x) = dc/dx.
DAS-9011
O Metodo de Newton em uma Vari avel
Sumario
Introdu cao
O Metodo de Newton em uma Variavel
O Metodo de Newton em M ultiplas Variaveis
Convergencia
Metodos de Regiao de Conan ca
Otimiza cao de Fun coes Sujeito a Igualdades
DAS-9011
O Metodo de Newton em uma Vari avel
O Metodo de Newton
O metodo calcula a proxima solu cao candidata de forma a resolver
a aproxima cao linear:
c(x
k
) + c

(x
k
)(x
k+1
x
k
) = 0
logo,
x
k+1
= x
k
[c

(x
k
)]
1
c(x
k
)
Tipicamente, nao se espera que c(x
k+1
) = 0, mas que x
k+1
dena
uma solu cao candidata de melhor qualidadedo que aquela
denida por x
k
.
DAS-9011
O Metodo de Newton em uma Vari avel
O Metodo de Newton

Formalmente, espera-se que:


|x
k+1
x

| < |x
k
x

| e
|c

(x
k+1
)| < |c

(x
k
)|
onde x

e uma solu cao, i.e., c(x

) = 0.

Uma seq uencia de solu coes x


0
, x
1
, . . . e dita convergente se
lim
k
|x
k
x

| = 0.
DAS-9011
O Metodo de Newton em uma Vari avel
O Metodo de Newton
Algoritmo de Newton
Dado um x inicial e uma tolerancia > 0
Repita
Calcule c(x) e c

(x)
Se |c(x)| < , retorne x
x x c(x)/c

(x)
Ate que um n umero maximo de itera coes seja atingido
DAS-9011
O Metodo de Newton em uma Vari avel
Exemplo
O Metodo de Newton
Exemplo

Procuramos um zero para a fun cao:


c(x) = 10 2x + 4x
2

A tabela abaixo mostra os resultados do metodo de Newton


para x
0
= 1000.

A gigura abaixo ilustra o processo iterativo de Newton.


DAS-9011
O Metodo de Newton em uma Vari avel
Exemplo
Exemplo
Itera coes
k x
k
c(x
k
) |x
k
x

|
0 1000 3.997990000000000e+006 9.981492189406418e+002
1 500.1262815703926 9.994949375065696e+005 4.982755005110344e+002
2 250.1907039194102 2.498711719029211e+005 2.483399228600520e+002
3 125.2254781755631 6.246523058084260e+004 1.233746971162049e+002
4 62.74799109896568 1.561374556562558e+004 6.089721003960747e+001
5 31.51949620842356 3.900875572514462e+003 2.966871514906535e+001
6 15.92572254113459 9.726631087465399e+002 1.407494148177637e+001
7 8.169595939998821 2.406299994113832e+002 6.318814880640609e+000
8 4.371580213652639 5.769969383029171e+001 2.520799154294426e+000
9 2.621653885664322 1.224896861354670e+001 7.708728263061098e-001
10 1.976061758605505 1.667156778081310e+000 1.252806992472928e-001
11 1.855327609771498 5.830693877868853e-002 4.546550413286443e-003
12 1.850787497645492 8.245047246546733e-005 6.438287280197130e-006
13 1.850781059371159 1.658051473896194e-010 1.294742091317858e-011
14 1.850781059358212 0 2.220446049250313e-016
DAS-9011
O Metodo de Newton em uma Vari avel
Exemplo
Exemplo
1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9
x
0
x
1
x
2
y = f (x)
x
DAS-9011
O Metodo de Newton em uma Vari avel
Exemplo
Metodo de Newton
Observa coes

O metodo de Newton apresenta uma taxa de convergencia


quadratica.
A taxa de convergencia e Q-quadratica, ou seja, existe M R
tal que:
x
k+1
x

/x
k
x

2
M
para k sucientemente grande se x
0
pertence `a regiao de
convergencia.

De maneira informal, o n umero de dgitos corretos na solu cao


candidata duplica a cada itera cao.
DAS-9011
O Metodo de Newton em uma Vari avel
Exemplo
Metodo de Newton
Questao
Ja que o metodo de Newton tem convergencia quadratica, qual e o
problema do metodo?
DAS-9011
O Metodo de Newton em uma Vari avel
Exemplo
Metodo de Newton
Diculdades com o metodo de Newton

O metodo de Newton pode divergir.

Isso ocorre quando a solu cao inicial nao e sucientemente


proxima da solu cao otima.

O metodo de Newton se comporta bem na regiao proxima da


solu cao, todavia nao apresenta convergencia global como o
metodo de descenso.
DAS-9011
O Metodo de Newton em uma Vari avel
Minimiza c ao em uma Vari avel
Minimiza cao em uma Variavel
Proposito

Trataremos do problema de encontrar um valor x R tal que


f (x) : R R seja mnimo.

Tomamos uma aproxima cao da fun cao em torno da solu cao


candidata corrente, x
k
, mas desta vez utilizamos uma
aproxima cao de segunda ordem:
f (x
k+1
) = f (x
k
) + f

(x
k
)[x
k+1
x
k
] +
1
2
f

(x
k
)[x
k+1
x
k
]
2
.

Faz sentido utilizarmos uma aproxima cao de primeira ordem?


DAS-9011
O Metodo de Newton em uma Vari avel
Minimiza c ao em uma Vari avel
Minimiza cao em uma Variavel
Proposito
Para que x
k+1
seja o mnimo da aproxima cao, necessitamos que:
df /dx
k+1
= 0 f

(x
k
) + f

(x
k
)[x
k+1
x
k
] = 0
x
k+1
= x
k
[f

(x
k
)]
1
f

(x
k
).
DAS-9011
O Metodo de Newton em uma Vari avel
Exemplo
Exemplo
Encontre um mnimo de f (x) = cos(x), conforme Figura abaixo.
y = cos(x)
x

DAS-9011
O Metodo de Newton em uma Vari avel
Exemplo
Exemplo
Exemplo

Encontre um mnimo de f (x) = cos(x), conforme Figura


abaixo.

Se iniciamos o processo iterativo no ponto x


0
= /4, o
metodo converge para o ponto x

= 0.

Se iniciamos no ponto x
0
= 3/4, o metodo converge para o
ponto x

= .
DAS-9011
O Metodo de Newton em uma Vari avel
Exemplo
Problemas com o Metodo de Newton
Questoes

O que levou o metodo de Newton a convergir para um ponto


de maximo?

Sera que o metodo apresenta uma falha fundamental?


DAS-9011
O Metodo de Newton em uma Vari avel
Exemplo
Problemas com o Metodo de Newton
Princpios do metodo

O metodo gera uma seq uencia de solu coes x


0
, x
1
, . . . , x

que
converge para um ponto x

estacionario, ou seja, f

(x

) = 0.

Todavia, x

nao e necessariamente um ponto de mnimo,


podendo tambem denir:

um ponto de inexao (e.g., o ponto estacionario da fun cao


f (x) = x
3
)

um ponto maximo (e.g., o ponto estacionario da fun cao


f (x) = x
2
).
DAS-9011
O Metodo de Newton em uma Vari avel
Exemplo
Problemas com o Metodo de Newton
Condi coes necessarias e sucientes

Condi coes necessarias para mnimo local:


f

(x

) = 0 e f

(x

) 0

Condi coes sucientes para mnimo local:


f

(x

) = 0 e f

(x

) > 0
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Sumario
Introdu cao
O Metodo de Newton em uma Variavel
O Metodo de Newton em M ultiplas Variaveis
Convergencia
Metodos de Regiao de Conan ca
Otimiza cao de Fun coes Sujeito a Igualdades
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Resolu c ao de Sistemas de Equa c oes
O Metodo de Newton em M ultiplas Variaveis
Problema de interesse
Desejamos encontrar um vetor x = (x
1
, . . . , x
n
) tal que:
c(x) =
_

_
c
1
(x)
.
.
.
c
m
(x)
_

_
= 0 (1)
Para simplicar a apresenta cao, suponha que m = n.
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Resolu c ao de Sistemas de Equa c oes
O Metodo de Newton em M ultiplas Variaveis

Utilizamos uma aproxima cao linear de c(x) em torno da


solu cao candidata x
k
:
c(x
k+1
) = c(x
k
) + G(x
k
)[x
k+1
x
k
] (2)

Onde a matriz G(x) = c(x), chamada de Jacobiana, e


denida como:
G(x) =
_

_
c
1
/x
1
. . . c
1
/x
n
.
.
.
.
.
.
.
.
.
c
n
/x
1
. . . c
n
/x
n
_

_
=
_

_
c
T
1
.
.
.
c
T
n
_

_
(3)
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Resolu c ao de Sistemas de Equa c oes
O Metodo de Newton em M ultiplas Variaveis
Para encontrar o proximo iterando, fazemos
c(x
k
) + G(x
k
)[x
k+1
x
k
] = 0
resultando no processo iterativo:
x
k+1
= x
k
G
1
(x
k
)c(x
k
). (4)
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Resolu c ao de Sistemas de Equa c oes
O Metodo de Newton em M ultiplas Variaveis
Propriedades do metodo de Newton
O metodo de Newton em m ultiplas variaveis herda as mesmas
propriedades de sua versao monovariada:

apresenta convergencia quadratica, desde que o ponto inicial


x
0
esteja dentro de sua regiao de convergencia;

o metodo pode divergir se uma tecnica de globaliza cao nao for


empregada; e

a matriz Jacobiana deve ser nao-singular para que o metodo


tenha sucesso.
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Resolu c ao de Sistemas de Equa c oes
O Metodo de Newton em M ultiplas Variaveis
Algoritmo
Dado um x inicial e uma tolerancia > 0
Repita
Calcule c(x) e G(x)
Se c(x) < , retorne x
Encontre uma solu cao para G(x)x = c(x)
Fa ca x x + x
Ate que um n umero maximo de itera coes seja atingido
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Resolu c ao de Sistemas de Equa c oes
O Metodo de Newton em M ultiplas Variaveis
Observa coes

A itera cao Newton, conforme Equa cao (4), nao e realizada


atraves do calculo direto da inversa de G(x).

Faze-se uso de algoritmos de solu cao de sistemas de equa coes


lineares para resolver o sistema G(x)x = c(x).

Um forma robusta para resolve-lo se da atraves da


decomposi cao LU, a qual decompoe G em duas matrizes
triangulares L (triangular inferior) e U (triangular superior), de
maneira que G = LU.

Calculados os fatores L e U, a solu cao de (4) pode ser obtida


com duas retrosubstitui coes.
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Resolu c ao de Sistemas de Equa c oes
O Metodo de Newton em M ultiplas Variaveis
Outras observa coes

Quando a matrix G e positiva denida, o que ocorre no caso


do metodo de Newton estar sendo utilizado como ferramenta
para encontrar um ponto estacionario de uma fun cao f , e
recomendavel realizar uma fatora cao Cholesky.

Esta encontra uma matriz triangular inferior L de forma que


G = LL
T
.

Algoritmos ecientes e robustos podem ser encontrados na


literatura para executar ambos os tipos de fatora cao.
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Minimiza c ao Irrestrita
Minimiza cao de Fun coes
Problema de Interesse

Trataremos o problema de minimiza cao irrestrita em m ultiplas


variaveis.

Buscamos um vetor x = (x
1
, . . . , x
n
) tal que o valor da fun cao
f (x) seja mnimo.

Vamos aproximar f (x) em torno da solu cao candidata


corrente x
k
como segue:
f (x
k+1
) = f (x
k
) +f (x
k
)
T
[x
k+1
x
k
]
+
1
2
[x
k+1
x
k
]
T

2
f (x
k
)[x
k+1
x
k
]
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Minimiza c ao Irrestrita
Minimiza cao de Fun coes
Problema de Interesse

Fazendo x
k+1
= x
+
, x
k
= x, f (x
k
) = g,
2
f (x
k
) = H e
p = [x
k+1
x
k
], a aproxima cao pode ser reescrita como segue:
f (x
+
) = f (x) + g
T
p +
1
2
p
T
Hp.

Como no caso monovariado, podemos encontrar um ponto


estacionario para a aproxima cao for cando x
+
a satisfazer a
condi cao necessaria de primeira ordem.
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Minimiza c ao Irrestrita
Minimiza cao de Fun coes
Processo Iterativo

Formalmente:
f (x
+
) = 0 g + Hp = 0 p = H
1
g.
Portanto, o processo iterativo pode ser expresso como segue:
x
k+1
= x
k
[
2
f (x
k
)]
1
f (x
k
).

O metodo de Newton se baseia na busca de um ponto para o


qual o gradiente de f (x) e nulo
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Minimiza c ao Irrestrita
Minimiza cao de Fun coes
Processo Iterativo

O processo iterativo pode ser expresso como segue:


x
k+1
= x
k
[
2
f (x
k
)]
1
f (x
k
).

Logo nao ha garantia de que o processo iterativo convirja para


um ponto de mnimo

O metodo pode divergir ou ser atrado para um ponto de


inexao ou de maximo.
DAS-9011
O Metodo de Newton em M ultiplas Vari aveis
Minimiza c ao Irrestrita
Minimiza cao de Fun coes
Condi coes Necessarias e Sucientes

Condicoes Necessarias:
f (x
k
) = 0 e
2
f (x
k
) 0 (positiva semi-denida)

Condicoes Sucientes:
f (x
k
) = 0 e
2
f (x
k
) > 0 (positiva denida)
DAS-9011
Convergencia
Sumario
Introdu cao
O Metodo de Newton em uma Variavel
O Metodo de Newton em M ultiplas Variaveis
Convergencia
Metodos de Regiao de Conan ca
Otimiza cao de Fun coes Sujeito a Igualdades
DAS-9011
Convergencia
Aspectos de Convergencia

Algoritmos nao-iterativos, como o metodo de Gauss para


solu cao de sistemas de equa coes lineares, tem custo
computacional bem-denido.

O n umero de opera coes de ponto-utuante e nito e pode ser


expresso como uma fun cao polinomial das dimensoes do
problema.

O comportamento de algoritmos iterativos, por outro lado, e


mais difcil de ser medido.

O n umero de itera coes depende do problema e do ponto


inicial.
DAS-9011
Convergencia
Aspectos de Convergencia

A eciencia de um algoritmo iterativo e medida em termos de


um limite superior de itera coes necessarias para se atingir uma
solu cao com certa precisao.

Tais limites sao obtidos por meio de uma analise de


convergencia.
DAS-9011
Convergencia
Convergencia Linear
Convergencia Linear

Uma sequencia x
k
com limite x

e linearmente convergente se
existe uma constante c (0, 1) tal que:
|x
k
x

| c|x
k1
x

| (5)
para k sucientemente grande.
DAS-9011
Convergencia
Convergencia Linear
Convergencia Linear

Convergencia linear e algumas vezes denida como segue.

A sequencia x
k
com limite x

converge R-linearmente se existe


um valor M e c (0, 1) tal que:
|x
k
x

| Mc
k
(6)
para k sucientemente grande.
DAS-9011
Convergencia
Convergencia Quadr atica
Convergencia Quadratica
Uma sequencia x
k
com limite x

converge quadraticamente se
existe uma constante c > 0 tal que:
|x
k
x

| c|x
k1
x

|
2
(7)
para k sucientemente grande.
DAS-9011
Convergencia
Convergencia Quadr atica
Convergencia Quadratica
Exemplo

A sequencia x
k
= 1 + (
1
2
)
2
k
converge quadraticamente para
x

= 1 pois:
|x
k+1
x

| =
_
1
2
_
2
k+1
=
_
_
1
2
_
2
k
_
2
= |x
k
x

|
2
. (8)

Denindo r
k
= log
10
[|x
k
x

|/|x

|], quando |x

| = 0, e
dividindo por |x

| podemos reescrever (7) como


r
k
2r
k1
log
10
(|x

c|). (9)
DAS-9011
Convergencia
Convergencia Quadr atica
Convergencia Quadratica
Exemplo

Uma vez que |x


k
x

| 0, r
k
+, eventualmente o
primeiro termo da parte `a direita da desigualdade dominara o
segundo.

r
k
e aproximadamente o n umero de dgitos corretos na
itera cao k, portanto o n umero de dgitos corretos
praticamente dobra a cada itera cao.
DAS-9011
Convergencia
Convergencia do Metodo de Newton
Aspectos de Convergencia do Metodo de Newton
Convergencia do metodo de Newton

O metodo de Newton converge quadraticamente se G(x

)
tem posto completo e se x
0
e sucientemente proximo de x

Para o caso unidimensional, a convergencia quadratica e


obtida se f

(x

) = 0.
DAS-9011
Convergencia
Convergencia do Metodo de Newton
Convergencia do Metodo de Newton: Caso Univariado
Seja I = [x

, x

+ ] um intervalo em torno da solu cao x

dentro do qual as seguintes condi coes sao satisfeitas:


1. existe uma constante m > 0 tal que |f

(x)| m para todo


x I ; e
2. existe uma constante L > 0 tal que |f

(x) f

(y)| L|x y|
para todo x, y I .
DAS-9011
Convergencia
Convergencia do Metodo de Newton
Convergencia do Metodo de Newton: Caso Univariado

Vamos mostrar que se |x


k
x

| , entao
|x
k+1
x

|
L
2m
|x
k
x

|
2
(10)

A desigualdade (7) e satisfeita com c = L/(2m), implicando


convergencia quadratica para x

.
DAS-9011
Convergencia
Convergencia do Metodo de Newton
Convergencia do Metodo de Newton: Caso Univariado
Denotando x
k+1
por x
+
e x
k
por x, temos que
x+ = x
f (x)
f

(x)
Logo,
|x
+
x

| = |x
f (x)
f

(x)
x

|
=
| f (x) f

(x)(x

x)|
|f

(x)|
=
|f (x

) f (x) f

(x)(x

x)|
|f

(x)|
DAS-9011
Convergencia
Convergencia do Metodo de Newton
Convergencia do Metodo de Newton: Caso Univariado

Lembre-se que f (x

) = 0.

Nos assumimos que |f

(x)| m e, portanto,
|x
+
x

|
|f (x

) f (x) f

(x)(x

x)|
m
(11)
DAS-9011
Convergencia
Convergencia do Metodo de Newton
Convergencia do Metodo de Newton: Caso Univariado
Para limitar o numerador, podemos proceder como segue
|f (x

) f (x) f

(x)(x

x)| = |
_
x

x
(f

(u) f

(x))du|

_
x

x
|f

(u) f

(x)|du
L
_
x

x
|u x|du
= L
|x

x|
2
2
(12)
DAS-9011
Convergencia
Convergencia do Metodo de Newton
Convergencia do Metodo de Newton: Caso Univariado

Juntando (11) e (12) obtemos |x


+
x

|
L
2m
|x

x|
2
o que
prova (10).

A desigualdade (10) por si so nao garante que


|x
k+1
x

| 0.

Entretanto, se assumirmos que |x


0
x

| e m/L,
entao convergencia quadratica segue imediatamente.

Uma vez que |x


0
x

| , podemos aplicar (10) e obter:


|x
1
x

|
L
2m
|x
0
x

|
2

L
2m

2
/2.
DAS-9011
Convergencia
Convergencia do Metodo de Newton
Convergencia do Metodo de Newton: Caso Univariado

Uma vez que |x


1
x

| , podemos aplicar (10) e obter a


desigualdade:
|x
2
x

|
L
2m
|x
1
x

|
2

L
2m

2
/4 /8.

Repetindo este processo, conclumos que:


|x
k+1
x

|
L
2m
|x
k
x

|
2
2
_
1
4
_
2
k
.
DAS-9011
Convergencia
Convergencia do Metodo de Newton
Convergencia do Metodo de Newton: Caso Univariado
Observa coes

Portanto, se f (x

) = 0 e f

e uma fun cao contnua, entao e


razoavel assumir que as condi coes acima sao satisfeitas para
algum , m e L.

Na pratica, e difcil encontrarmos valores para , m e L.


DAS-9011
Convergencia
Convergencia do Metodo de Newton
Convergencia do Metodo de Newton: Caso Univariado
Observa coes

Logo, o resultado de convergencia nao nos oferece ajuda no


sentido de escolhermos o ponto inicial x
0
, mesmo porque isto
demandaria conhecimento antecipado da existencia de uma
raiz.

O resultado nos diz que se x


0
e sucientemente proximo de
x

, entao o metodo de Newton converge com uma taxa


quadratica.
DAS-9011
Metodos de Regi ao de Conan ca
Sumario
Introdu cao
O Metodo de Newton em uma Variavel
O Metodo de Newton em M ultiplas Variaveis
Convergencia
Metodos de Regiao de Conan ca
Otimiza cao de Fun coes Sujeito a Igualdades
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Minimiza cao

O metodo de Newton puro para minimiza cao de fun coes


encontra p = x x
k
que minimiza uma aproxima cao de f em
torno de x
k
dada pela expansao de Taylor de segunda ordem:
f
k
(p) = f (x
k
) +f (x
k
)
T
p +
1
2
p
T

2
f (x
k
)p.

Sabemos que f
k
(p) e uma boa aproxima cao de f (x
k
+ p)
quando p esta dentro de uma vizinhan ca proxima de zero.
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Minimiza cao

A diculdade e que na minimiza cao de f


k
(p) podemos obter
um passo fora desta regiao.

Devemos considerar um passo de Newton restrito p


k
obtido
por meio da minimiza cao de f
k
(p) dentro de uma regiao
pequena na vizinhan ca do zero, chamada regiao de conan ca
(trust region).
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Regiao de Conan ca

O metodo de Newton com regiao de conan ca (trust region) e


dado por:
p
k
= Argmin f
k
(p)
p
k
(13)
onde
k
e um escalar positivo.
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Regiao de Conan ca

Explorando o fato de que o problema (13) tem apenas uma


restri cao, uma solu cao aproximada pode ser obtida
rapidamente.

Mesmo quando
2
f (x
k
) nao e positiva denida ou ate mesmo
quando a dire cao Newton nao e uma dire cao de descenso, o
passo de Newton restrito p
k
reduz o custo da fun cao, desde
que f (x
k
) = 0 e
k
seja sucientemente pequeno.
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Note que para todo p tal que p
k
,
f (x
k
+ p) = f
k
(p) + o(
2
k
)
e portanto
f (x
k
+ p
k
) = f
k
(p
k
) + o(
2
k
)
= f (x
k
) + Min
p
k
{f (x
k
)
T
p +
1
2
p
T

2
f (x
k
)p} + o(
2
k
).
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Denotando
p
k
=
f (x
k
)
f (x
k
)

k
,
temos
f (x
k
+ p
k
) f (x
k
) + f (x
k
)
T
p
k
+
1
2
p
T
k

2
f (x
k
) p
k
} + o(
2
k
)
= f (x
k
)
k
f (x
k
) +

2
k
2f (x
k
)
2
f (x
k
)
T

2
f (x
k
)f (x
k
) + o(
2
k
)
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Regiao de Conan ca

Para
k
sucientemente pequeno o termo negativo

k
f (x
k
) domina os ultimos dois termos, o que nos leva
a concluir que: f (x
k+1
) < f (x
k
).

Uma redu cao nos custos pode ser obtida mesmo quando
f (x
k
) = 0 desde que
k
seja sucientemente pequeno e f
tenha uma dire cao de curvatura negativa no ponto x
k
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Regiao de Conan ca

Isto signica dizer que


2
f (x
k
) nao e positiva semidenida.

Logo, o procedimento so falha em reduzir o custo quando


f (x
k
) = 0 e
2
f (x
k
) e positiva semidenita, que
corresponde a dizer que x
k
satisfaz as condi coes necessarias de
segunda ordem.
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Observa coes

Os desenvolvimentos acima nos levam a considerar passos da


forma
x
k+1
= x
k
+ p
k
,
onde p
k
e o passo de Newton restrito com respeito a um
escalar
k
.

A chave para a convergencia rapida do metodo de Newton


com regiao de conan ca esta em ajustar dinamicamente o
parametro
k

O metodo se comporta como o metodo de Newton puro


proximo de um mnimo local nao singular.
Um mnimo local x e nao singular se satisfaz as condi coes
sucientes de segunda ordem, ou seja, f (x) = 0 e
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Ajuste da regiao de conan ca

Uma forma razoavel de ajustar o valor inicial de


k
e
incrementar o valor quando o metodo parece estar gerando
redu coes no valor de f e reduzi-lo caso contrario.

O progresso em dire cao a um otimo local pode ser medido


com base na razao entre a redu cao antecipada e observada:
r
k
=
f (x
k
) f (x
k+1
)
f (x
k
) f
k
(p
k
)
.

Aumenta-se o valor de se esta razao esta proxima ou acima


da unidade, e reduzimos o seu valor caso contrario.
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Algoritmo
Usando como parametros 0 <
1

2
1 e 0 <
1
< 1 <
2
, um
algoritmo pode ser proposto:
Passo 1: Encontre:
p
k
= Argmin f
k
(p)
p
k
Se f
k
(p
k
) = f (x
k
) pare (x
k
satisfaz as condi coes
necessarias de primeira e segunda ordem).
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Algoritmo
Passo 2: Se f (x
k
+ p
k
) < f (x
k
) dena x
k+1
= x
k
+ p
k
, calcule
r
k
=
f (x
k
) f (x
k+1
)
f (x
k
) f
k
(p
k
)
e va para o Passo 3, caso contrario fa ca
k
=
1
p
k

e va para o Passo 1.
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Algoritmo
Passo 3: Fa ca

k+1
=
_
_
_

1
p
k
se r
k
<
1

k
se
2
r
k
e p
k
=
k

k
caso contrario
Volte ao Passo 1.
DAS-9011
Metodos de Regi ao de Conan ca
Metodos de Regiao de Conan ca
Aspectos de convergencia

Se f e duas vezes diferenciavel entao e possvel mostrar que o


algoritmo acima converge.

Ou seja, a seq uencia {x


k
} e limitida e existe um ponto limite
que satisfaz as condi coes necessarias de segunda ordem.

Alem disso, se {x
k
} converge para um mnimo local x

nao
singular, entao o metodo tem a mesma taxa de convergencia
do metodo de Newton puro.
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Sumario
Introdu cao
O Metodo de Newton em uma Variavel
O Metodo de Newton em M ultiplas Variaveis
Convergencia
Metodos de Regiao de Conan ca
Otimiza cao de Fun coes Sujeito a Igualdades
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades

Vimos como o metodo de Newton pode ser empregado para:

encontrar uma solu cao simultanea de um sistema c(x) de


equa c oes nao-lineares

encontrar um otimo local para uma fun cao f (x) (i.e., solu cao
que satisfaz as condi c oes necessarias de primeira ordem).

Vamos agora combinar estes dois problemas e estender o


metodo de Newton.
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades
Problema
Encontre um vetor x que minimiza uma fun cao f (x) e ao mesmo
tempo e solu cao simultanea de um sistema de equa coes:
Minimize f (x)
Sujeito a :
c(x) = 0
onde x R
n
, f : R
n
R e c : R
n
R
m
com m < n.
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades
Pela teoria classica de otimiza cao, podemos tomar o Lagrangeano:
L(x, ) = f (x)
T
c(x) = f (x)
m

i =1

i
c
i
(x)
onde R
m
e o vetor com os multiplicadores de Lagrange.
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades
Da mesma forma que o problema de minimiza cao irrestrita, para
um par solu cao-multiplicador (x

) denir uma solu cao


localmente otima a derivada deve ser nula com respeito a x e ,
portanto:

x
L(x

) = 0 (14)

L(x

) = 0 (15)
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades

Calculando as derivadas conforme (14) e (15), obtemos:

x
L = f (x)
m

i =1

i
c
i
(x)
= f (x) c(x)
T
(16)

L = c(x) (17)
onde c(x) e o Jacobiano de c.

Note que as condi coes (14) e (15) podem ser satisfeitas por
um par (x

) que induz um mnimo local, maximo local ou


simplesmente um ponto estacionario.
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades

Da mesma forma que em otimiza cao irrestrita, podemos


desenvolver condi coes necessarias de segunda ordem.

Primeiramente, vamos calcular a Hessiana do Lagrangeano


com respeito a x:
H =
2
xx
L
=
2
f (x)
m

i =1

2
c
i
(x) (18)
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades

Entao pode ser demonstrado que condi coes necessarias (19) e


sucientes (20) para que o par (x

) seja um mnimo local


sao respectivamente:
u
T
Hu 0 (19)
u
T
Hu > 0 (20)
para todo u tangente ao espa co de restri coes no ponto x

, ou
seja, para todo u {v : c
i
(x

)
T
v = 0, i = 1, . . . , m}.
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades

As condi coes de segunda ordem em otimiza cao irrestrita


exigem que a curvatura de f seja positiva em todas as
dire coes.

Sob restri coes de igualdade a curvatura deve ser positiva


apenas nas dire coes factveis (tangentes ao espa co de solu coes
factveis no ponto x

).

Podemos desenvolver um metodo de Newton para encontrar


um par (x

) que satisfaz as condi coes necessarias de


primeira ordem.
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades
Metodo de Newton
A fun cao
x
L linearmente em torno de ( x,

):

x
L(x, ) =
x
L( x,

) +
2
f ( x)(x x)

i =1

2
c
i
( x)(x x)
m

i =1
c
i
( x)(
i

i
)
=
x
L( x,

) + [
2
f ( x)
m

i =1

2
c
i
( x)](x x)
c( x)
T
(

)
= f ( x) c( x)
T

+ H(x x) c( x)
T
(

)
= f ( x) + H(x x) c( x)
T

DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades
Metodo de Newton
Segundo, aproximamos a fun cao

L com um aproximador linear,


obtendo:

L(x, ) = c( x) c( x)(x x)
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades
Metodo de Newton
Logo, dado um par (x
k
,
k
), o proximo iterando (x
k+1
,
k+1
) do
metodo de Newton e obtido resolvendo um sistema de equa coes
lineares:
_

x
L(x
k+1
,
k+1
) = 0

L(x
k+1
,
k+1
) = 0
se e somente
_
f (x
k
) + H(x
k+1
x
k
) c(x
k
)
T

k+1
= 0
c(x
k
) c(x
k
)(x
k+1
x
k
) = 0
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Otimiza cao de Fun coes Sujeito a Igualdades
Metodo de Newton
De forma compacta:
_
H c(x
k
)
T
c(x
k
) 0
_ _
x
k+1

k+1
_
=
_
Hx
k
f (x
k
)
c(x
k
) c(x
k
)x
k
_
DAS-9011
Otimiza c ao de Fun c oes Sujeito a Igualdades
Metodo de Newton

Fim!

Obrigado pela presen ca

Potrebbero piacerti anche