Método de Newton truncado

Documentos relacionados
Método de Newton modificado

Método dos gradientes (ou método de máxima descida)

Resolução de problemas com apenas restrições lineares de igualdade

Resolução de sistemas de equações lineares: Método dos Gradientes Conjugados

Resolução de sistemas de equações lineares: Método do Gradiente

Método de restrições ativas para minimização em caixas

Resolução de sistemas de equações não-lineares: Método de Newton

Método do Lagrangiano aumentado

Resolução de sistemas de equações não-lineares: Método Iterativo Linear

Resolução de sistemas de equações não-lineares: Método Iterativo Linear

Métodos iterativos para sistemas lineares.

Regras para evitar ciclagem

Método Simplex. Marina Andretta ICMC-USP. 19 de outubro de 2016

Resolução de sistemas de equações lineares: Fatorações de matrizes

Algoritmos de aproximação - Método primal-dual

Métodos para resolver problemas de otimização restrita

Modelagem Computacional. Parte 8 2

MÉTODOS NEWTON E QUASE-NEWTON PARA OTIMIZAÇÃO IRRESTRITA

Método Simplex dual. Marina Andretta ICMC-USP. 24 de outubro de 2016

Resolução de sistemas de equações lineares: Fatorações de matrizes

Resolução de sistemas de equações lineares: Fatorações de matrizes

Interpolação polinomial: Diferenças divididas de Newton

Interpolação polinomial: Diferenças divididas de Newton

Notações e revisão de álgebra linear

Determinação numérica de autovalores e autovetores: Método das Potências Inversas

SME306 - Métodos Numéricos e Computacionais II Prof. Murilo F. Tomé. (α 1)z + 88 ]

Degenerescência. Marina Andretta ICMC-USP. 19 de outubro de 2016

Pontos extremos, vértices e soluções básicas viáveis

Teoria de dualidade. Marina Andretta ICMC-USP. 19 de outubro de 2016

SME602 - Cálculo Numérico - - Prof. Murilo F. Tomé. Solução Numérica de Sistema Lineares A = MÉTODOS DIRETOS. x y z

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano

Interpolação polinomial: Polinômio de Lagrange

SISTEMAS LINEARES PROF. EDÉZIO

INSTITUTO SUPERIOR TÉCNICO Mestrado Integrado em Engenharia Física Tecnológica Ano Lectivo: 2007/2008 Semestre: 1 o

SME Cálculo Numérico. Lista de Exercícios: Gabarito

SME300 - Cálculo Numérico - Turma Elétrica/Automação - Prof. Murilo F. Tomé. Lista 1: Solução Numérica de Sistema Lineares A = MÉTODOS DIRETOS.

Método de restrições ativas para minimização com restrições lineares

Lema de Farkas e desigualdades lineares

Silvia Maria Pereira Grandi dos Santos

Teoremas de dualidade

Determinação numérica de autovalores e autovetores: Método de Jacobi

Determinação de raízes de polinômios: Método de Briot-Ruffini-Horner

MAP Exercício programa GPS e o Método de Newton

Determinação de raízes de polinômios: Método de Briot-Ruffini-Horner

Representação de poliedros

UNIVERSIDADE FEDERAL DO ABC

Resolução de sistemas de equações lineares: Método de eliminação de Gauss - estratégias de pivotamento

Parte 0: Normas de Vetor e Matriz

Aula 10 Sistemas Não-lineares e o Método de Newton.

Cálculo Numérico BCC760

étodos uméricos SISTEMAS DE EQUAÇÕES LINEARES (Continuação) Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA

SME0300 Cálculo Numérico Aula 4

Departamento de Matemática da Universidade de Coimbra. Licenciatura em Matemática. e B =

Capítulo III Sistemas de equações

SME Gustavo C. Buscaglia

Modelagem Computacional. Parte 2 2

Marina Andretta. 10 de outubro de Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis.

SME0300 Cálculo Numérico Aula 6

Capítulo 5 - Optimização Não-Linear

SME Roberto F. Ausas / Gustavo C. Buscaglia

Ana Paula. October 26, 2016

ESTATÍSTICA COMPUTACIONAL

Exercícios de ANÁLISE E SIMULAÇÃO NUMÉRICA

Existência e otimalidade de pontos extremos

Uma nova taxa de convergência para o Método do Gradiente

Método de Euler. Marina Andretta/Franklina Toledo ICMC-USP. 29 de outubro de 2013

Resolução de Sistemas de Equações Lineares

Sabendo que f(x) é um polinômio de grau 2, utilize a formula do trapézio e calcule exatamente

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu

Sistemas de Equações Lineares

BCC465 - TÉCNICAS DE MULTI-OBJETIVO. Gladston Juliano Prates Moreira 22 de novembro de 2017

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano.

Sistemas Lineares - Métodos Iterativos : Jacobi e Gauss-Seidel. Profa. Cynthia de O. Lage Ferreira Métodos Numéricos e Computacionais I - SME0305

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano

Transcrição:

Método de Newton truncado Marina Andretta ICMC-USP 8 de outubro de 2018 Baseado no livro Numerical Optimization, de J. Nocedal e S. J. Wright. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 1 / 21

Método de Newton Lembre-se que o passo de Newton pk N linear simétrico é calculado resolvendo-se o sistema 2 f k p N k = f k. (1) Para garantir convergência global, pedimos que a direção pk N descida, o que acontece quando 2 f k é definida positiva. seja de Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 2 / 21

Método de Newton Se a Hessiana 2 f k não é definida positiva ou está perto de ser singular, a direção pk N pode ser de subida ou pode ser excessivamente longa. Para contornar este problema usaremos duas estratégias: 1 Modificar a matriz Hessiana 2 f k antes ou durante a resolução do sistema (1) para que ela se torne suficientemente definida positiva. Este método é chamado de método de Newton modificado. 2 Resolver o sistema (1) usando um método de gradientes conjugados que pára quando uma direção de curvatura negativa é encontrada. Este método é chamado de método de Newton truncado. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 3 / 21

Método de Newton Outra preocupação ao desenvolver métodos práticos do tipo Newton é manter o custo computacional o menor possível. No método de Newton truncado isto é feito terminando a iteração de gradientes conjugados antes da solução exata de (1). Este método de Newton inexato, então, calcula uma aproximação p k do passo de Newton p N k. Ao usar um método direto para resolver o sistema linear (1), podemos aproveitar a esparsidade da matriz Hessiana usando, por exemplo, a eliminação de Gauss esparsa. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 4 / 21

Passos de Newton inexato Um dos problemas do método de Newton é ter de resolver o sistema (1) exatamente. Técnicas baseadas em eliminação de Gauss e outras fatorações podem ser custosas quando o número de variáveis é grande. Uma solução precisa de (1) pode não ser garantida no caso geral, já que o modelo quadrático usado para gerar o sistema newtoniano pode não fornecer uma boa aproximação do comportamento de f, principalmente quando o iterando x k está longe da solução x. Assim, é interessante resolver o sistema (1) usando um método iterativo que pare em uma solução aproximada (inexata) do sistema. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 5 / 21

Passos de Newton inexato A maior parte das regras para terminar um método iterativo para resolver o sistema (1) são baseadas no resíduo r k = 2 f k p k + f k, (2) com p k passo de Newton inexato. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 6 / 21

Passos de Newton inexato Como o tamanho do resíduo muda quando f é multiplicada por uma constante (ou seja, r k não é invariante quanto ao escalamento de f ), consideramos seu tamanho relativo ao vetor do lado direito de (1) - ou seja, f k. Então, terminamos a execução do método iterativo quando r k η k f k, (3) onde a sequência {η k }, com 0 < η k < 1 para todo k, é chamada de sequência de forcing. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 7 / 21

Passos de Newton inexato A ordem de convergência de métodos de Newton inexato, baseados em (1)-(3), é afetada pela sequência de forcing. O primeiro resultado diz que convergência local é obtida apenas garantindo que η k esteja longe de 1. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 8 / 21

Passos de Newton inexato Teorema 1: Suponha que f (x) tenha derivada contínua em uma vizinhança da solução x. Suponha que 2 f (x ) seja definida positiva. Considere a iteração da forma x k+1 = x k + p k, com p k que satisfaz r k η k f (x k ). Suponha que η k η para alguma constante η [0, 1). Então, se o ponto inicial x 0 está suficientemente próximo de x, a sequência {x k } converge para x linearmente. Ou seja, para todo k suficientemente grande, temos que x k+1 x c x k x, 0 < c < 1. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 9 / 21

Passos de Newton inexato Note que a hipótese sobre a sequência {η k } não é muito restritiva, no sentido que, se fosse relaxada, o algoritmo não convergiria. Mais especificamente, se fosse permitido que η k 1, o passo p k = 0 satisfaria (3) em toda iteração. Neste caso, o método faria x k = x 0 para todo k e não convergiria para a solução. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 10 / 21

Passos de Newton inexato Teorema 2: Suponha que as condições do Teorema 1 valham e suponha que os iterandos {x k } gerados pelo método de Newton inexato convergem para x. Então a ordem de convergência é superlinear se η k 0 e quadrática se η k = O( f (x k ) ). Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 11 / 21

Passos de Newton inexato Para obter convergência superlinear podemos usar, por exemplo, η k = min{0.5, f k }. Usando η k = min{0.5, f k } obteríamos convergência quadrática. Todos os resultados apresentados aqui têm natureza local: supõe-se que a sequência {x k } atinge uma vizinhança de x. Eles também supõem que o tamanho de passo unitário α k = 1 é tomado e, então, estratégias de globalização (busca linear e regiões de confiança) não atrapalham a rápida convergência. Veremos agora que estratégias de Newton inexato podem ser incorporadas em implementações de métodos de Newton com busca linear, gerando algoritmos com boas propriedades de convergência local e global. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 12 / 21

Método de Newton truncado O método de Newton truncado consiste em utilizar o método de gradientes conjugados na resolução do sistema newtoniano (1), a fim de satisfazer uma condição do tipo (3) r k η k f k. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 13 / 21

Método de gradientes conjugados O método de gradientes conjugados é um método iterativo que foi desenvolvido para resolver sistemas lineares Ax = b, com A simétrica e definida positiva. Basicamente, este método parte de um ponto inicial x (0) e, a cada iteração k, calcula uma direção conjugada a todas as anteriores (ou seja, (p (k) ) T Ap (i) = 0, para todo i < k). Calcula-se x (k+1) = x (k) + α (k) p (k), com α (k) = r k T p(k). (p (k) ) T Ap (k) O método de gradientes conjugados encontra a solução do sistema linear em, no máximo, n iterações. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 14 / 21

Método de gradientes conjugados Método de gradientes conjugados: Dados um ponto inicial x (0), uma matriz A, um vetor b e um escalar ɛ > 0. Passo 1: Faça r 0 Ax (0) b, p (0) r 0, k 0. Passo 2: Se r k ɛ, pare com x (k) como solução. Passo 3: Faça α (k) r T k r k (p (k) ) T Ap (k). Passo 4: Faça x (k+1) x (k) + α (k) p (k). Passo 5: Faça r k+1 r k + α (k) Ap (k). Passo 6: Faça β (k+1) r k+1 T r k+1 rk T r. k Passo 7: Faça p (k+1) r k+1 + β (k+1) p (k). Passo 8: Faça k k + 1 e volte para o Passo 2. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 15 / 21

Método de Newton truncado Note que o método de gradientes conjugados foi desenvolvido para a resolução de sistemas lineares definidos positivos. No entanto, a Hessiana poderia possuir autovalores negativos longe da solução. Portanto, terminamos a iteração de gradientes conjugados assim que uma direção de curvatura negativa é gerada. Esta adaptação do método dos gradientes conjugados garante que a direção p k é de descida e que a convergência rápida do método de Newton puro é conservada. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 16 / 21

Método de Newton truncado O sistema linear a ser resolvido é dados por 2 f k p k = f k. Usando a notação do algoritmo de gradientes conjugados, temos que A = 2 f k e b = f k. Denotaremos por {x (i) } e {p (i) } os iterandos e direções de busca gerados pelo método de gradientes conjugados. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 17 / 21

Método de Newton truncado São impostas três condições ao método de gradientes conjugados para a resolução de sistema (1): 1 O ponto inicial para o método de gradientes conjugados é x (0) = 0. 2 Teste de curvatura negativa: se uma direção p (i) gerada pelo método de gradientes conjugados é tal que (p (i) ) T Ap (i) 0, verificamos se i é a primeira iteração. Em caso positivo, terminamos a iteração de gradientes conjugados, definimos x (1) como p (0) e paramos. Caso contrário, paramos o método de gradientes conjugados imediatamente e usamos a solução x (i). 3 A direção de Newton p k é definida como o iterando final do método de gradientes conjugados x (f ). Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 18 / 21

Método de Newton truncado Se a condição (p (i) ) T Ap (i) 0 não é satisfeita, o método dos gradientes é o mesmo apresentado anteriormente. Uma direção p (i) que satisfaz essa condição com desigualdade estrita é chamada de direção de curvatura negativa para A. Note que, se uma direção de curvatura negativa é encontrada na primeira iteração do método de gradientes conjugados, a direção f k será usada no método de Newton. Daí a razão para usar o ponto inicial x (0) = 0. É possível mostrar que, se uma direção de curvatura negativa é encontrada em uma iteração i > 1 do método de gradientes conjugados, a aproximação x (i 1) é uma direção de descida. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 19 / 21

Método de Newton truncado Note que o método de Newton truncado não usa a Hessiana 2 f k de maneira expĺıcita, apenas em produtos matriz-vetor. Assim, o usuário pode fornecer uma rotina que calcula o produto 2 f k v, para um dado vetor v, em vez de fornecer uma rotina que calcule 2 f k. Para definir o método de Newton truncado com busca linear usaremos η k = min{0.5, f k } para garantir convergência superlinear. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 20 / 21

Método de Newton truncado Método de Newton truncado com busca linear: Dado um ponto inicial x 0 e um escalar ɛ > 0. Passo 1: Faça k 0. Passo 2: Se f (x k ) ɛ, pare com x k como solução. Passo 3: Calcule uma direção de busca p k aplicando o método de gradientes conjugados para resolver o sistema 2 f k p k = f k, com ponto inicial x (0) = 0. Pare quando r k min{0.5, f k } f k ou uma direção de curvatura negativa for encontrada. Passo 4: Faça x k+1 x k + α k p k, α k satisfaz condições de Wolfe ou é calculado usando backtracking com Armijo. Passo 5: Faça k k + 1 e volte para o Passo 2. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 8 de outubro de 2018 21 / 21