Método de Newton–Raphson

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:

x n + 1 = x n f ( x n ) f ( x n ) , n N {\displaystyle x_{n+1}=x_{n}-{\frac {f(x_{n})}{f'(x_{n})}},n\in \mathbb {N} }

onde x 0 {\textstyle x_{0}} é uma aproximação inicial dada, n {\textstyle n} indica a n {\textstyle n} -ésima iteração do algoritmo e f ( x n ) {\textstyle f'(x_{n})} é a derivada da função f {\textstyle f} no ponto x n . {\textstyle x_{n}.}

Interpretação geométrica

Consideremos o problema de calcular a raiz de uma função f , {\textstyle f,} conforme a figura ao lado.[1][2][3][4]

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

Queremos calcular x 1 {\textstyle x_{1}} em função de x 0 , {\textstyle x_{0},} sabendo que x 1 {\textstyle x_{1}} será a cota no eixo das abcissas interceptado pela reta tangente à curva, originada por x 0 . {\textstyle x_{0}.}

A equação da reta tangente ao gráfico da função f {\textstyle f} no ponto ( x 0 , f ( x 0 ) {\textstyle (x_{0},f(x_{0})} ) tem inclinação m = f ( x 0 ) {\textstyle m=f'(x_{0})} e é dada por

y f ( x 0 ) = f ( x 0 ) ( x x 0 ) {\displaystyle y-f(x_{0})=f'(x_{0})(x-x_{0})}
Sabendo que essa reta passa por ( x 1 , 0 ) , {\textstyle (x_{1},0),} temos que
0 f ( x 0 ) = f ( x 0 ) ( x 1 x 0 ) . {\displaystyle 0-f(x_{0})=f'(x_{0})(x_{1}-x_{0}).}
Portanto,
x 1 = x 0 f ( x 0 ) f ( x 0 ) . {\displaystyle x_{1}=x_{0}-{\frac {f(x_{0})}{f'(x_{0})}}.}
De modo geral, temos
x n + 1 = x n f ( x n ) f ( x n ) . {\displaystyle x_{n+1}=x_{n}-{\frac {f(x_{n})}{f'(x_{n})}}.}

Análise de convergência

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 ϕ ( x ) {\displaystyle \phi (x)} como:[2][3][4]

ϕ ( x ) = x f ( x ) f ( x ) {\displaystyle \phi (x)=x-{\frac {f(x)}{f'(x)}}}


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

ϕ ( x ) = ϕ ( x ) + ( x x ) ϕ ( x ) + ( x x ) 2 2 ϕ ( x ) + O ( ( x x ) 3 ) {\displaystyle \phi (x)=\phi (x^{*})+(x-x^{*})\phi '(x^{*})+{\frac {(x-x^{*})^{2}}{2}}\phi ''(x^{*})+O((x-x^{*})^{3})}


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:


ϕ ( x ) ϕ ( x ) + ( x x ) ϕ ( x ) {\displaystyle \phi (x)\approx \phi (x^{*})+(x-x^{*})\phi '(x^{*})}


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

ϕ ( x ) = x f ( x ) f ( x ) = x {\displaystyle \phi (x^{*})=x^{*}-{\frac {f(x^{*})}{f'(x^{*})}}=x^{*}}


ϕ ( x ) = 1 f ( x ) f ( x ) f ( x ) f ( x ) ( f ( x ) ) 2 = 1 1 = 0 {\displaystyle \phi '(x^{*})=1-{\frac {f'(x^{*})f'(x^{*})-f(x^{*})f''(x^{*})}{(f'(x))^{2}}}=1-1=0}


ϕ ( x ) = ( f ( x ) f ( x ) + f ( x ) f ( x ) ) ( f ( x ) ) 2 2 f ( x ) f ( x ) f ( x ) ( f ( x ) ) 4 = f ( x ) f ( x ) {\displaystyle \phi ''(x^{*})={\frac {(f'(x^{*})f''(x^{*})+f(x^{*})f'''(x^{*}))(f'(x^{*}))^{2}-2f(x^{*})f''(x^{*})f'(x^{*})}{(f'(x^{*}))^{4}}}={\frac {f''(x^{*})}{f'(x^{*})}}}


Portanto:

ϕ ( x ) = x + ( x x ) 2 ϕ ( x ) 2 + O ( ( x x ) 3 ) {\displaystyle \phi (x)=x^{*}+(x-x^{*})^{2}{\frac {\phi ''(x^{*})}{2}}+O((x-x^{*})^{3})}


ϕ ( x ) x + ( x x ) 2 ϕ ( x ) 2 {\displaystyle \phi (x)\approx x^{*}+(x-x^{*})^{2}{\frac {\phi ''(x^{*})}{2}}}


Logo:

x n + 1 = ϕ ( x n ) {\displaystyle x_{n+1}=\phi (x_{n})}


x + ( x n x ) 2 ϕ ( x ) 2 {\displaystyle x^{*}+(x_{n}-x^{*})^{2}{\frac {\phi ''(x^{*})}{2}}}


( x n + 1 x ) ( x n x ) 2 ϕ ( x ) 2 {\displaystyle (x_{n+1}-x^{*})\approx (x_{n}-x^{*})^{2}{\frac {\phi ''(x^{*})}{2}}}


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


ϵ n + 1 ϵ n 2 ϕ ( x ) 2 = 1 2 | f ( x ) f ( x ) | ϵ n 2 {\displaystyle \epsilon _{n+1}\approx \epsilon _{n}^{2}{\frac {\phi ''(x^{*})}{2}}={\frac {1}{2}}|{\frac {f''(x^{*})}{f'(x^{*})}}|\epsilon _{n}^{2}}


Com isso, observamos que o erro ( ϵ n ) {\displaystyle (\epsilon _{n})} é de ordem quadrática e, por isso, a iteração convergirá rapidamente para a raiz da função.

Generalização

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]

f 1 ( x 1 , x 2 , . . . , x n ) = 0 f 2 ( x 1 , x 2 , . . . , x n ) = 0 f 3 ( x 1 , x 2 , . . . , x n ) = 0 f n ( x 1 , x 2 , . . . , x n ) = 0 {\displaystyle {\begin{array}{rcl}f_{1}(x_{1},x_{2},...,x_{n})&=&0\\f_{2}(x_{1},x_{2},...,x_{n})&=&0\\f_{3}(x_{1},x_{2},...,x_{n})&=&0\\&\vdots &\\f_{n}(x_{1},x_{2},...,x_{n})&=&0\end{array}}}

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

F ( x ) = [ f 1 ( x 1 , x 2 , . . . , x n ) f 2 ( x 1 , x 2 , . . . , x n ) f n ( x 1 , x 2 , . . . , x n ) ] {\displaystyle F(x)={\begin{bmatrix}f_{1}(x_{1},x_{2},...,x_{n})\\f_{2}(x_{1},x_{2},...,x_{n})\\\vdots \\f_{n}(x_{1},x_{2},...,x_{n})\end{bmatrix}}}


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:

f ( x ) f ( x ) + ( x x ) f ( x ) , {\displaystyle f(x)\approx f(x^{*})+(x-x^{*})f'(x^{*}),}

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:

F ( x ) F ( x ) + ( x x ) F ( x ) {\displaystyle F(x)\approx F(x^{*})+(x-x^{*})F'(x^{*})}

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


J F = [ f 1 x 1 f 1 x n f m x 1 f m x n ] {\displaystyle J_{F}={\begin{bmatrix}{\frac {\partial f_{1}}{\partial x_{1}}}&\cdots &{\frac {\partial f_{1}}{\partial x_{n}}}\\\vdots &\ddots &\vdots \\{\frac {\partial f_{m}}{\partial x_{1}}}&\cdots &{\frac {\partial f_{m}}{\partial x_{n}}}\end{bmatrix}}}


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

F ( x ) = ( J F ) i j = f i x j {\displaystyle F'(x)=(J_{F})_{ij}={\frac {\partial f_{i}}{\partial x_{j}}}}


Logo, podemos reescrever a expansão por Série de Taylor de F(x) como F ( x ) F ( x ) + ( x x ) J F ( x ) . {\displaystyle F(x)\approx F(x^{*})+(x-x^{*})J_{F}(x^{*}).} Também de acordo com o problema de uma variável, tínhamos que o método de Newton era dado pela iteração:

x n + 1 = x n f ( x n ) f ( x n ) {\displaystyle x_{n+1}=x_{n}-{\frac {f(x_{n})}{f'(x_{n})}}}


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

x n + 1 = x n J F 1 ( x n ) F ( x n ) {\displaystyle x_{n+1}=x_{n}-J_{F}^{-1}(x_{n})F(x_{n})}

Problemas de otimização

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

Se F ( x ) = 0 {\displaystyle F(x)=0} , para 0 , x R m , {\displaystyle 0,x\in \mathbb {R} ^{m},} podemos definir outra função

g ( x ) = F ( x ) 2 2 = F ( x ) F ( x ) 2 {\displaystyle g(x)={\frac {\|F(x)\|^{2}}{2}}={\frac {F(x)\cdot F(x)}{2}}} ,

em que {\displaystyle \cdot } denota o produto escalar usual.

Então o valor mínimo de g ( x ) {\displaystyle g(x)} é 0 {\displaystyle 0} , ou seja,

min x g ( x ) = 0 F ( x ) = 0 {\displaystyle \min _{x}g(x)=0\Longleftrightarrow F(x)=0}

e a equação F ( x ) = 0 {\displaystyle F(x)=0} pode ser resolvida como um problema de otimização.

Definindo a equação diferencial ordinária

{ J F ( u ( t ) ) u ( t ) = F ( u ( t ) ) u ( 0 ) = x 0 ( ) {\displaystyle {\begin{cases}J_{F}(u(t))u'(t)&=&-F(u(t))\\u(0)&=&x_{0}\end{cases}}\qquad \qquad (*)} ,

pode-se mostrar, sob certas condições, que a única solução u ( t ) {\displaystyle u(t)} dessa equação ( ) {\displaystyle (*)} é tal que

d g ( u ( t ) ) d t = 2 g ( u ( t ) ) {\displaystyle {\frac {d\,g(u(t))}{dt}}=-2g(u(t))} .

Isso garante que g ( u ( t ) ) {\displaystyle g(u(t))} decresce, enquanto F ( u ( t ) ) 0 {\displaystyle F(u(t))\neq 0} , e que

g ( u ( t ) ) = e 2 t g ( x 0 ) {\displaystyle g(u(t))=e^{-2t}g(x_{0})} .

O uso do método de Euler para determinar uma aproximação para u ( t ) {\displaystyle u(t)} , com tamanho de passo h = 1 {\displaystyle h=1} , é equivalente ao método de Newton[7].



Quando desconfiarmos que a matriz jacobiana J F ( x ) {\displaystyle J_{F}(x)} não possui inversa (em algum ponto), podemos usar a equação diferencial { v ( t ) = g ( v ( t ) ) v ( 0 ) = x 0 , ( ) {\displaystyle {\begin{cases}v'(t)&=&-\nabla g(v(t))\\v(0)&=&x_{0}\end{cases}},\qquad \qquad (**)}

em que

g ( v ( t ) ) = J F ( v ( t ) ) F ( v ( t ) ) {\displaystyle \nabla g(v(t))=J_{F}(v(t))^{*}F(v(t))} ,

e J F ( v ( t ) ) {\displaystyle J_{F}(v(t))^{*}} denota a matriz transposta da matriz jacobiana J F ( v ( t ) ) {\displaystyle J_{F}(v(t))} .

Nesse caso, pode-se mostrar que g ( v ( t ) ) {\displaystyle g(v(t))} também é decrescente[7], enquanto F ( v ( t ) ) 0 {\displaystyle F(v(t))\neq 0} ; e uso do método de Euler para determinar uma aproximação a solução v ( t ) {\displaystyle v(t)} (da equação ( ) {\displaystyle (**)} ) é equivalente ao método do gradiente.

Exemplos com uma variável

  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

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  A referência emprega parâmetros obsoletos |coautor= (ajuda)
  2. a b c Richard L. Burden; J. Douglas Faires. Análise Numérica. [S.l.]: Editora CENGAGE Learning, 8° edição  A referência emprega parâmetros obsoletos |coautor= (ajuda)
  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  A referência emprega parâmetros obsoletos |coautor= (ajuda)
  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

  • Roots of a function - Rosetta Code - implementações em diversas linguagens de programação
  • Cálculo Numérico - Um Livro Colaborativo - seção sobre o método de Newton para resolver equações algébricas no livro de Cálculo Numérico mantido pelo Instituto de Matemática e Estatística da Universidade Federal do Rio Grande do Sul.
  • Cálculo Numérico - Um Livro Colaborativo - seção sobre o método de Newton para resolver sistemas de equações algébricas no livro de Cálculo Numérico mantido pelo Instituto de Matemática e Estatística da Universidade Federal do Rio Grande do Sul.


  • v
  • d
  • e
Publicações
Newtonianismo
Vida
Amigos
e família
Descobertas
e invenções
Frases
Expansões
teóricas
Relacionados
  • Escrita do Principia Mathematica
  • Newton (unidade)
Controle de autoridade