Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Gradiente Simplex
&
Aplicações
Bruno Henrique Cervelin
DMA - IMECC - UNICAMP
16 de março de 2012
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
1 Gradiente SimplexDe�nição de SimplexDe�nição e Propriedades do Gradiente Simplex
2 Métodos de Busca LinearFormas de encontrar αk
Forma de encontrar dkCálculo do Gradiente Simplex tq ∆k ≤ µ‖∇S f (xk)‖Método de Busca linear Baseado em Gradiente simplexConvergência Global
3 Método do �ltro implícito
4 Hessiana Simplex
5 Método de busca padrão guiado por derivadas simplexMétodo de busca padrãoSID-PSM
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Referências:Vicente
Kelley
Manual SID-PSM - Vicente
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
De�nição de SimplexDe�nição e Propriedades do Gradiente Simplex
Gradiente Simplex
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
De�nição de SimplexDe�nição e Propriedades do Gradiente Simplex
Um simplex no IRn é um conjunto de n + 1 pontos x0, x1, . . . , xn noIRn.
matriz de direções simplex:
L(S) = [x1 − x0, x2 − x0, . . . , xn − x0]
vetor de diferença de valor de função objetivo:
δf (S) = [f (x1)− f (x0), f (x2)− f (x0), . . . , f (xn)− f (x0)]t
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
De�nição de SimplexDe�nição e Propriedades do Gradiente Simplex
Quando L(S) é não singular, o simplex S é não singular;
diâmetro:diam(S) = max
0≤i,j≤n‖xi − xj‖,
tamanho orientado∆ = max
1≤j≤n‖x0 − xj‖.
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
De�nição de SimplexDe�nição e Propriedades do Gradiente Simplex
O volume de um simplexé de�nido como
vol(S) =|det(L)|
n!.
O volume não é uma medida boa para quali�car a geometria dosimplex, usamos em seu lugar o volume normalizado:
von =
(S
diam(S)
)=
|det(L)|n!diam(Y )n
L não singular ⇒ vol(S) > 0. (det(A) 6= 0 se A não singular)
um simplex é dito Λ− posicionado se ‖D−1‖ < Λ, onde D é amatriz diagonal da decomposição SVD de Lt/∆.
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
De�nição de SimplexDe�nição e Propriedades do Gradiente Simplex
Gradiente simplex é de�nido como a solução do sistema
Lt∇S f (x0) = δf (S)
Se S é não singular
∇S f (x0) = L−tδf (S).
∇S f (x0) pode ser visto como os coe�cientes da interpolação linearde f pelo modelo m(x) = f (x0) + (x − x0)tg nos pontos x1,x2,. . .,xn.
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
De�nição de SimplexDe�nição e Propriedades do Gradiente Simplex
[Kelley]: Se ∇f for Lipschitz contínua em uma vizinhaça de S então
‖∇f (x0)−∇S f (x0)‖ ≤ K∆,
onde K é uma constante que depende de cond2(S) e da constantede Lipschitz de ∇f .A demonstração baseia-se no teorema de Taylor e na suavidade de f .
[Vicente] outra forma de ver esse teorema é usando a perspectiva deinterpolação linear.
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
Métodos de Busca Linear
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
Mesma idéia da otmização com derivadas.
Escolhemos direção dk de descida e procuramos αk que diminua ovalor da função
φ(α) = f (xk + αdk).
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
Formas para encontrar αk
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
usando derivadas:encontrar α tal que:
φ′(α) = 0.
sem derivadas: iniciamos com um intervalo [a0, b0] que sabemospossuir um minimizador para φ e dividimos os intervalos descartandoa parte onde não temos o minimizador.
backtracking: dado β ∈ (0, 1) calculamos φ(xk + βidk) parai = 0, 1, 2, . . . até encontrarmos decrésimo (simples ou su�ciente).
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
Formas para encontrar dk
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
com derivadas:
dk = −∇f (xk) (Maxima descida)dk = −Hk∇f (xk) (Quase Newton)
sem derivadas:Sabemos que ‖∇f (x0)−∇S f (x0)‖ ≤ K∆, logo se tivermos umsimplex S , com ∆ pequeno, o gradiente simplex estará próximo dogradiente.Logo consideraremos −∇S f (x0) um bom candidato a direção dedescida. Se não conseguirmos um drecéscimo su�ciente diminuimoso tamanho de ∆k , obtemos uma nova amostra e calculamos umnovo gradiente simplex.
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
Se calcularmos ∇S f (xk) tal que ∆k ≤ µ‖∇S f (xk)‖, para algumaconstante µ > 0, temos
‖∇f (xk)−∇S f (xk)‖‖∇S f (xk)‖
≤ Kµ,
logo se µ→ 0, então ∇S f (xk)→ ∇f (xk).
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
INICIALIZACÃO:1 de�na: i = 0.2 de�na: ∇S f (xk)(0) = ∇S f (xk)3 ω ∈ (0, 1) (é de�nido pelo método de busca linear).
ENQUANTO ∆k > µ‖∇S f (xk)(i)‖REPITA:
1 faça i = i + 12 De�na ∆k = ωiµ‖∇S f (xk)(0)‖3 Calcule um novo gradiente simplex ∇S f (xk)(i) baseado em uma
amostra contendo xk e contida em B(xk ; ∆k).4 ∇S f (xk) = ∇S f (xk)(i)
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
Método de Busca linear Baseado emGradiente simplex
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
Inicialização:1 ponto inicial x02 amostra de pontos {y0
0= x0, y
10, . . . , yn
0}
3 β, η e ω ∈ (0, 1)
4 jmax ∈ N
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
para k = 1, 2, . . .1 Calcular Gradiente Simplex tal que ∆k ≤ µ‖∇S f (xk)‖
De�na jatual = jmax e µ = 1.2 Busca Linear: para j = 0, 1, 2, . . . , jatual
de�na α = βj
calcule f (xk − α∇S f (xk)).se f (xk − α∇S f (xk)) ≤ f (xk)− ηα‖∇S f (xk)‖2PARE, de�na αk = α, vá para passo 4
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
3 Fracasso da busca linear:divida µ por 2recalcule ∇S f (xk) tal que ∆k ≤ µ‖∇S f (xk)‖faça jatual = jatual + 1volte para o passo 2
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
4 De�naxk+1 = arg min
x∈Xk
{f (xk − αk∇S f (xk)), f (x)}
onde Xk é o conjunto de pontos em que f foi avaliada nos passos 1e 3.de�na y0k+1 = xk+1.atualize y1k+1, . . . , y
nk+1 a partir de y0k , y
1
k , . . . , ynk removendo um
ponto.
Possível critério de parada: ∆k < ∆tol .
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
Para a convergência global precisamos que f seja diferenciável e ∇fLipschitz seja conínua no conjunto de nível
L(x0) = {x ∈ IRn|f (x) ≤ f (x0)}.
Como, nos passos 1 e 3, podemos analizar pontos fora do conjunto denível precisamos aumentar L(x0) de�nindo
L(x0)aum = L(x0) ∪⋃
x∈L(x0)
B(x ; ∆max) =⋃
x∈L(x0)
B(x ; ∆max)
.Onde ∆max é um limitante superior para ∆k .Consideraremos, então, ∇f Lipschitz contínua em Laum(x0) comconstante ν.
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Formas de encontrar αk
Forma de encontrar dk
Cálculo do Gradiente Simplex tq ∆k≤ µ‖∇S f (x
k)‖
Método de Busca linear Baseado em Gradiente simplexConvergência Global
se ∇f (xk) 6= 0⇒ passos 1 e 3 serão satisfeitos em um número �nitode passos.
se ∇f (xk) 6= 0⇒ o decréscimo su�ciente é satisfeito quando
0 ≤ α ≤ 2(1− η − Kµ)
ν
e
µ <1− ηK
.
Pode-se mostrar que, se f satisfaz as condições do slide anterior, asequência dos iterandos satisfazem
limk→+∞
‖∇f (xk)‖ = 0
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Método do �ltro implícito
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Não atualiza a amostra, o que fazemos é escolher uma nova amostraa cada iteração (pode ser muito caro)
Não é usada uma estratégia de precisão no gradiente simplex, logo abusca linear pode falhar.
Incorpora uma estratégia Quase-Newton, usando o gradiente simplexno lugar do gradiente quando calcula a aproximação para a hessiana.
Quando a busca linear falha, a aproximação da hessiana é reiniciada.
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
A Hessiana Simplex ∇2
S f (x0) pode ser calculada resolvendo osistema
(xi − x0)t∇S f (x0) + (xi − x0)t∇2
S f (x0)(xi − x0) = f (xi )− f (x0),
onde, xi , i = 0, . . . , p são conhecidos e p = (n + 1)(n + 2)/2− 1.
A Hessiana-Simplex pode ser vista como os coe�cientes de umainterpolação quadrática de f .
calcular a Hessiana Simplex é muito caro, temos que avaliar naordem de n2 pontos
para diminuirmos o número de avaliações de função podemoscalcular uma matriz diagonal que aproxima a hessiana, usandoapenas 2n pontos.
Com o cálculo da Hessiana Simplex podemos desenvolver métodossemelhantes ao método de Newton para otimização sem derivada.
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Método de busca padrãoSID-PSM
Método de busca padrão
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Método de busca padrãoSID-PSM
1 INICIALIZAÇÃO: D = conjunto bases geradoras positivas2 PASSO DE BUSCA: procure x ∈ Mk que diminua o valor da função
objetivo avaliando um número �nito de pontos.3 PASSO DE PESQUISA: escolha Bk ⊂ D base geradora positiva.
Procure x que diminua o valor da função objetivo nas direções deBk .
4 ATUALIZAÇÃO DO TAMANHO DO PASSO: se o passo 2 ou 3 foisucesso devemos aumentar ou manter o tamanho do passo, se nãodevemos diminuir.
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Método de busca padrãoSID-PSM
Método de busca padrão guiado porderivadas simplex
*SID-PSM*
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Gradiente SimplexMétodos de Busca LinearMétodo do �ltro implícito
Hessiana SimplexMétodo de busca padrão guiado por derivadas simplex
Método de busca padrãoSID-PSM
Utilizamos uma derivadas simplex para fazer o passo de busca.
guardamos a informação dos pontos avaliados.
a cada iteração no método de busca tentamos encontrar umsubconjunto dos pontos já avaliados que estão a uma distânciamáxima do iterando que seja Λ− posicionado e que contenha oiterando.
se conseguirmos tal conjunto calculamos uma derivada simplex, porexemplo o gradiente simplex, andamos nessa direção pela malhaprocurando um ponto que diminua o valor de f .
Bruno Henrique Cervelin Gradiente Simplex & Aplicações
Top Related