otimização. estrutura introdução métodos baseados no gradiente – método de newton –...
TRANSCRIPT
Otimização
Estrutura
• Introdução
• Métodos baseados no gradiente– Método de Newton– Método de Gauss-Newton– Método de Steepest Decent– Método de Levenberg-Marquardt
• Métodos Heurísticos– Simulated Annealing– Método das Formigas
Introdução
1
1
NNd
d
d
1
1
)(
)(
)(
NN pg
pg
pg
dadosobservados
dadospreditos
1
1
MMp
p
p
parâmetros
Introdução
1
1
NNd
d
d
1
1
)(
)(
)(
NN pg
pg
pg
dadosobservados
dadospreditos
)]([)]([)( pgdpgdp T
norma L2(função escalar)
1
1
MMp
p
p
parâmetros
Introdução
1
1
NNd
d
d
1
1
)(
)(
)(
NN pg
pg
pg
dadosobservados
dadospreditos
)]([)]([)( pgdpgdp T
norma L2(função escalar)
1* 0)( Mp
1
1
MMp
p
p
parâmetros
Introdução
1
1
NNd
d
d
1
1
)(
)(
)(
NN pg
pg
pg
dadosobservados
dadospreditos
)]([)]([)( pgdpgdp T
norma L2(função escalar)
1* 0)( Mp
1
1
MMp
p
p
parâmetros Problema linear
Problema não-linear
Introdução
1
1
NNd
d
d
1
1
)(
)(
)(
NN pg
pg
pg
dadosobservados
dadospreditos
)]([)]([)( pgdpgdp T
norma L2(função escalar)
1* 0)( Mp
1
1
MMp
p
p
parâmetros Problema linear
Problema não-linear
Introdução
1
1
NNd
d
d
1
1
)(
)(
)(
NN pg
pg
pg
dadosobservados
dadospreditos
)]([)]([)( pgdpgdp T
norma L2(função escalar)
1* 0)( Mp
1
1
MMp
p
p
parâmetros
bpBpg )(
][1
* bdBBBpTT
bpBpg )(
)]([)()()( 00
1
00 pgdpGpGpGp TT
Problema linear
Problema não-linear
Introdução)(p
2p
1p
Problema linear
Introdução)(p
2p
1p
mínimo
Introdução)(p
2p
1p
*p
O mínimo pode ser calculado diretamente
Introdução)(p
2p
1p
0p
0p
Ou a partir de uma aproximação
inicial
Introdução)(p
2p
1p
0p
0p
p
Introdução)(p
2p
1p
0p
0p
p*p
Nesse caso, o mínimo é
encontrado com apenas um
“passo” a partir da aproximação
inicial
Introdução
2p *p
1p
0p
0p
)(p
Por outro lado, em um problema não-linear, o mínimo é encontrado após
sucessivos “passos” a partir de uma
aproximação inicial
Introdução
2p *p
1p
)(p
Introdução
2p *p
1p
)(p
Introdução
2p *p
1p
)(p
2p
1p
Curvas de nível
Introdução
2p
1p
Aproximação inicial
Introdução
2p
1p
Introdução
2p
1p
Introdução
2p
1p
Introdução
2p
1p
Estimativa do ponto mínimo obtida após a
otimização
Introdução
2p
1p A partir de um determinado ponto,
é necessário estabelecer uma
direção e o comprimento do passo que será
dado
Introdução
2p
1p
Introdução
2p
1p
Introdução
2p
1p
Direção
Introdução
2p
1p
Tamanho do passo
Introdução
Existem dois grupos principais de métodos para estimar o mínimo
de uma função:
Introdução
Existem dois grupos principais de métodos para estimar o mínimo
de uma função:
Métodos que se baseiam no gradiente da função
Métodos Heurísticos
Introdução
• Métodos baseados no gradiente– Método de Newton– Método de Gauss-Newton– Método de Steepest Decent– Método de Levenberg-Marquardt
• Métodos Heurísticos– Simulated Annealing– Método das Formigas
Métodos baseados no gradiente
)(p
Métodos baseados no gradiente
)(p
pppppppp TT )(2
1)()()( 0000
Métodos baseados no gradiente
)(p
pppppppp TT )(2
1)()()( 0000
)()( 00 ppp
Métodos baseados no gradiente
)(p
pppppppp TT )(2
1)()()( 0000
)()( 00 ppp
Diferença entre os métodos
Métodos baseados no gradiente
)(p
pppppppp TT )(2
1)()()( 0000
)()( 00 ppp
Diferença entre os métodos
)( 0p
)( 0p
1
)( 0p
Newton
Gauss - Newton
Steepest Decent
Levenberg - Marquardt
Métodos baseados no gradiente
Vamos às contas!
Métodos baseados no gradiente
Método Convergência
Steepest Decent 0
Levenberg - Marquardt 1
Gauss - Newton 2
Newton 3
0 – lento 3 – rápido
Métodos baseados no gradiente
Método Aproximação inicial
Steepest Decent Pode ser distante
Levenberg - Marquardt Pode ser distante
Gauss - Newton Deve ser próxima
Newton Deve ser próxima
Métodos baseados no gradiente
Método Direção
Steepest Decent É a do gradiente
Levenberg - Marquardt Entre a do gradiente e a do produto hessiana-gradiente
Gauss - Newton Predita pelo produto hessiana-gradiente
Newton Predita pelo produto hessiana-gradiente
Métodos baseados no gradiente
Método Tamanho do passo
Steepest Decent Depende de um parâmetro e do gradiente
Levenberg - Marquardt Depende de um parâmetro, do gradiente e da hessiana
Gauss - Newton Depende do gradiente e da hessiana
Newton Depende do gradiente e da hessiana
Métodos baseados no gradiente
Método Custo computacional
Steepest Decent 0
Levenberg - Marquardt 2
Gauss - Newton 1
Newton 3
0 – baixo 3 – alto
Métodos Heurísticos(Simulated Annealing)
temp_inicial, temp_final, kappa, itmax, pinferior, psuperior, pinicial
iteracao = 0, p1 = pinicial, calcula f(p1), fminimo = f(p1), pminimo = p1
temperatura = temp_inicial
FAÇA {
• iteracao = iteracao + 1• sorteia p2, calcula f(p2)• SE [f(p2) < fminimo] fminimo = f(p2), pminimo = p2
• probabilidade de sobrevivência ps• SE [f(p2) < f(p1)] ps = 1• SE [f(p2) ≥ f(p1)] ps = exp {[f(p1) - f(p2)]/temperatura}
• SE{(ps = 1) OU [(ps ≠ 1) E (moeda ≤ ps)]} p1 = p2
• temperatura = kappa*temperatura
} ENQUANTO [(iteracao <= itmax) E (temperatura >= temp_final)]
Métodos Heurísticos(Simulated Annealing)
temp_inicial, temp_final, kappa, itmax, pinferior, psuperior, pinicial
iteracao = 0, p1 = pinicial, calcula f(p1), fminimo = f(p1), pminimo = p1
temperatura = temp_inicial
FAÇA {
• iteracao = iteracao + 1• sorteia p2, calcula f(p2)• SE [f(p2) < fminimo] fminimo = f(p2), pminimo = p2
• probabilidade de sobrevivência ps• SE [f(p2) < f(p1)] ps = 1• SE [f(p2) ≥ f(p1)] ps = exp {[f(p1) - f(p2)]/temperatura}
• SE{(ps = 1) OU [(ps ≠ 1) E (moeda ≤ ps)]} p1 = p2
• temperatura = kappa*temperatura
} ENQUANTO [(iteracao <= itmax) E (temperatura >= temp_final)]
Métodos Heurísticos(Simulated Annealing)
0,0
0,2
0,4
0,6
0,8
1,0
0 20 40 60 80 100
exp
[-x/
λ]
x
λ alto
λ baixo
λ médio
f(p2) - f(p1) = x
temperatura = λ
f(p1) ≤ f(p2)
Métodos Heurísticos(Método das Formigas)
Modificada de Dorigo e Gambardella, 1997)