Método de Newton–Raphson

algoritmo para encontrar raízes

Em análise numérica, o método de Newton (ou Método de Newton–Raphson), desenvolvido por Isaac Newton e Joseph Raphson, tem o objetivo de estimar as raízes de uma função. Para isso, escolhe-se uma aproximação inicial para esta. Após isso, calcula-se a equação da reta tangente (por meio da derivada) ao gráfico da função nesse ponto e a interseção dela com o eixo das abcissas, a fim de encontrar uma melhor aproximação para a raiz. Repetindo-se o processo, cria-se um método iterativo para encontrarmos a raiz da função. Em notação matemática, o método de Newton é dado pela seguinte sequência recursiva:

onde é uma aproximação inicial dada, indica a -ésima iteração do algoritmo e é a derivada da função no ponto

Interpretação geométrica

editar

Consideremos o problema de calcular a raiz de uma função   conforme a figura ao lado.[1][2][3][4]

 
As três primeiras iterações do método de Newton.[5]

Queremos calcular   em função de   sabendo que   será a cota no eixo das abcissas interceptado pela reta tangente à curva, originada por  

A equação da reta tangente ao gráfico da função   no ponto  ) tem inclinação   e é dada por   Sabendo que essa reta passa por   temos que   Portanto,   De modo geral, temos  

Análise de convergência

editar

Devemos ter em mente que, mesmo se a condição estabelecida na introdução for satisfeita, o método de Newton poderá não convergir para a raiz. Seja f(x) uma função e sua derivada diferente de zero, definimos uma função   como:[2][3][4]

 


Consideramos x* uma aproximação da solução x de f(x)=0 tal que f'(x*)≠0 e |x – x*| seja “pequeno”. Expandimos   por Série de Taylor em torno de x* e obtemos:

 


Para a dedução do método de Newton, vamos supor que |x - x*| é pequeno, logo, o termo (x - x*)² será muito menor. Com isso, dizemos que:


 


Pelo processo iterativo do método do ponto fixo, sabemos que:

 


 


 


Portanto:

 


 


Logo:

 


 


 


Considerando (xn - x*) o erro absoluto, obtemos:


 


Com isso, observamos que o erro   é de ordem quadrática e, por isso, a iteração convergirá rapidamente para a raiz da função.

Generalização

editar

O método de Newton é uma poderosa ferramenta para resolvermos equações de uma variável (f(x)=0). Esse método, contudo, pode ser utilizado em problemas mais complexos, como na solução de equações do tipo Ax=b, em que x e b são vetores e A é uma matriz. Queremos, portanto, generalizar o método de Newton para resolvermos um sistema de equações da forma:[2][3][4][6]

 

Podemos analisar esse sistema de equações na forma vetorial, definindo o vetor F(x) tal que:

 


Para resolvermos o problema de uma variável (f(x)=0), nós expandíamos a função f(x) em torno de x* por sua Série de Taylor, de modo a obtermos:

 

sendo x* uma aproximação para a solução de f(x)=0 . De modo equivalente, o problema matricial se resume a resolver a equação F(x)=0, e devemos expandir a função F(x) em torno de x*, sendo x* uma aproximação para a solução de F(x)=0. Efetuando-se essa expansão, obteremos:

 

Portanto, será necessário definirmos a derivada de F(x). Definimos, então, a Matriz Jacobiana por:


 


E percebemos que a Matriz Jacobiana, ou o Jacobiano do vetor F(x), é a matriz formada pelas derivadas parciais das componentes de F(x):

 


Logo, podemos reescrever a expansão por Série de Taylor de F(x) como   Também de acordo com o problema de uma variável, tínhamos que o método de Newton era dado pela iteração:

 


Consequentemente, em problemas envolvendo sistemas de equações, teremos que o método de Newton será dado pela iteração:[6]

 

Problemas de otimização

editar

O método de Newton pode ainda ser visto da seguinte forma:

Se  , para   podemos definir outra função

 ,

em que   denota o produto escalar usual.

Então o valor mínimo de   é  , ou seja,

 

e a equação   pode ser resolvida como um problema de otimização.

Definindo a equação diferencial ordinária

 ,

pode-se mostrar, sob certas condições, que a única solução   dessa equação   é tal que

 .

Isso garante que   decresce, enquanto  , e que

 .

O uso do método de Euler para determinar uma aproximação para  , com tamanho de passo  , é equivalente ao método de Newton[7].



Quando desconfiarmos que a matriz jacobiana   não possui inversa (em algum ponto), podemos usar a equação diferencial  

em que

 ,

e   denota a matriz transposta da matriz jacobiana  .

Nesse caso, pode-se mostrar que   também é decrescente[7], enquanto  ; e uso do método de Euler para determinar uma aproximação a solução   (da equação  ) é equivalente ao método do gradiente.

Exemplos com uma variável

editar
  1. Neste exemplo,[5] mostraremos porque a função f deve ser diferenciável em xn, para a satisfazer a condição inicial. Considere a função f(x)=|x-3|-1. Essa função possui uma cúspide em (3,-1); portanto, f não é diferenciável nesse ponto. Analisando o gráfico dessa função, percebemos que x=2 e x=4 são suas raízes. Caso iniciemos o método de Newton com x0=3, o processo iterativo falhará porque a derivada de f em x=3 não é definida.
  2. Neste exemplo,[5] mostraremos porque a função f deve ter derivada não nula em xn. Considere a função f(x)=x2-1. Essa função possui uma reta tangente horizontal em (0,-1); portanto, a derivada de f nesse ponto é nula. Como a reta tangente é horizontal, logo ela nunca interceptará o eixo das abcissas e, assim, o método de Newton falhará, pois ocorrerá uma indeterminação matemática (divisão por zero).
  3. Neste exemplo,[5] mostraremos que mesmo escolhendo-se uma aproximação x0 distante da real raiz da função f, o método de Newton ainda assim poderá convergirá rapidamente para a solução de f(x)=0. Considere a função f(x)=sen(x). Se arbitrarmos x0=10,85 rad, valor relativamente distante da primeira raiz, x=π rad, o método convergirá para essa raiz rapidamente.

Isso mostra que a primeira aproximação da raiz não necessita ser um valor próximo dela. Existem casos em que essa aproximação é distante da raiz e mesmo assim o método converge, conforme mostrado no exemplo acima.

Considerações sobre o método

editar

O método de Newton é considerado por muitos autores o melhor método para encontrar sucessivas melhores aproximações de raízes (ou zeros) de uma determinada função real e, portanto, tem sido estudado e utilizado em diversos ramos da ciência (Matemática, Física, Engenharia), sendo também muito utilizado na resolução de sistemas não lineares. Além disso, esse método tem sido alvo de novos estudos e aprimoramentos. Em 1984, Allan J. Macleod mostrou, num artigo da International Journal of Mathematical Education in Science and Technology, que o método iterativo de Newton–Raphson para equações não lineares pode ser considerado um membro da família geral de um parâmetro de métodos de segunda ordem.[8]

Um ponto importante a ser observado diz respeito a praticidade do método de Newton. Caso a função f seja complicada, encontrar sua derivada pode ser muito trabalhoso e o método torna-se improdutivo. Nesses casos, o método das secantes é mais produtivo de ser utilizado, porque não exige que a derivada de f seja conhecida.

Referências

  1. Howard Anton; Irl Bivens, Stephen Davis. Cálculo Volume 1. [S.l.]: Editora Bookman, 8° edição 
  2. a b c Richard L. Burden; J. Douglas Faires. Análise Numérica. [S.l.]: Editora CENGAGE Learning, 8° edição 
  3. a b c Borche, Alejandro. Métodos Numéricos. [S.l.]: Editora Ed. da UFRGS 
  4. a b c Ruggiero, M; Lopes, V. Cálculo Númerico - Aspectos Teóricos e Computacionais. [S.l.]: Editora Pearson 
  5. a b c d «Construção geométrica do Método de Newton–Raphson». omonitor.io. Consultado em 22 de março de 2016 
  6. a b «Método de Newton». omonitor.io. Consultado em 22 de março de 2016 
  7. a b Ferreira, José Claudinei (2021). «QUANDO OS MÉTODOS DE EULER E DE NEWTON COINCIDEM» (PDF). Revista Matemática Universitária (1): 34–46. doi:10.21711/26755254/rmu20213. Consultado em 26 de dezembro de 2022 
  8. A.J. Macleod. «"A generalization of Newton–Raphson"» (em inglês). Int. J. Math. Ed. Sci. Tech., v.15, n.1 January 1984, pages 117-120 

Ligações externas

editar