Otimização. Estrutura Introdução Métodos baseados no gradiente – Método de Newton –...

46
Otimização

Transcript of Otimização. Estrutura Introdução Métodos baseados no gradiente – Método de Newton –...

Page 1: 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.

Otimização

Page 2: 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.

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

Page 3: 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.

Introdução

1

1

NNd

d

d

1

1

)(

)(

)(

NN pg

pg

pg

dadosobservados

dadospreditos

1

1

MMp

p

p

parâmetros

Page 4: 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.

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

Page 5: 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.

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

Page 6: 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.

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

Page 7: 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.

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

Page 8: 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.

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

Page 9: 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.

Introdução)(p

2p

1p

Problema linear

Page 10: 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.

Introdução)(p

2p

1p

mínimo

Page 11: 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.

Introdução)(p

2p

1p

*p

O mínimo pode ser calculado diretamente

Page 12: 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.

Introdução)(p

2p

1p

0p

0p

Ou a partir de uma aproximação

inicial

Page 13: 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.

Introdução)(p

2p

1p

0p

0p

p

Page 14: 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.

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

Page 15: 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.

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

Page 16: 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.

Introdução

2p *p

1p

)(p

Page 17: 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.

Introdução

2p *p

1p

)(p

Page 18: 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.

Introdução

2p *p

1p

)(p

2p

1p

Curvas de nível

Page 19: 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.

Introdução

2p

1p

Aproximação inicial

Page 20: 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.

Introdução

2p

1p

Page 21: 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.

Introdução

2p

1p

Page 22: 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.

Introdução

2p

1p

Page 23: 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.

Introdução

2p

1p

Estimativa do ponto mínimo obtida após a

otimização

Page 24: 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.

Introdução

2p

1p A partir de um determinado ponto,

é necessário estabelecer uma

direção e o comprimento do passo que será

dado

Page 25: 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.

Introdução

2p

1p

Page 26: 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.

Introdução

2p

1p

Page 27: 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.

Introdução

2p

1p

Direção

Page 28: 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.

Introdução

2p

1p

Tamanho do passo

Page 29: 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.

Introdução

Existem dois grupos principais de métodos para estimar o mínimo

de uma função:

Page 30: 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.

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

Page 31: 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.

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

Page 32: 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 baseados no gradiente

)(p

Page 33: 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 baseados no gradiente

)(p

pppppppp TT )(2

1)()()( 0000

Page 34: 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 baseados no gradiente

)(p

pppppppp TT )(2

1)()()( 0000

)()( 00 ppp

Page 35: 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 baseados no gradiente

)(p

pppppppp TT )(2

1)()()( 0000

)()( 00 ppp

Diferença entre os métodos

Page 36: 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 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

Page 37: 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 baseados no gradiente

Vamos às contas!

Page 38: 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 baseados no gradiente

Método Convergência

Steepest Decent 0

Levenberg - Marquardt 1

Gauss - Newton 2

Newton 3

0 – lento 3 – rápido

Page 39: 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 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

Page 40: 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 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

Page 41: 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 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

Page 42: 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 baseados no gradiente

Método Custo computacional

Steepest Decent 0

Levenberg - Marquardt 2

Gauss - Newton 1

Newton 3

0 – baixo 3 – alto

Page 43: 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)

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)]

Page 44: 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)

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)]

Page 45: 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)

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)

Page 46: 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(Método das Formigas)

Modificada de Dorigo e Gambardella, 1997)