Método do Ponto Fixo (MPF)

Teoria Completa

Introdução

Opa, chega mais!! Vamos começar mais um tópico da disciplina de Cálculo Numérico.

Se eu te pedisse pra encontrar uma raíz da função f x = x ³ - x - 1 , no intervalo [ 1,2 ] você saberia me dizer com facilidade? Caso não saiba, fique tranquilo!! Iremos mostrar aqui um novo método para encontrar esse zero da função: o Método do Ponto Fixo.

Nem sempre é fácil achar os zeros de uma função, às vezes as técnicas que aprendemos são ineficientes e acabamos dando voltas e mais voltas sem conseguir resolver o problema e encontrar as raízes da função.

Muitas vezes quando nos deparamos com um problema difícil de resolver nós substituímos ele por outro equivalente mais fácil de resolver. E é exatamente isso que vamos fazer neste tópico! Substituir o problema de encontrar os zeros da função por outro problema: Encontrar o ponto fixo de uma outra função! Calma que já já vamos ver como funciona esse macete!

Ponto Fixo de uma função qualquer

Primeiro vamos entender o que é o tal do Ponto Fixo de uma função. O ponto fixo p de uma função g x é simplesmente um ponto tal que g p = p . Ou seja, é um ponto onde a função g x encontra a reta x = y , de modo que o valor da função em um ponto vale ele mesmo.

Por exemplo:

A função g ( x ) = 3 x tem como ponto fixo o ponto x = 0 porque g ( 0 ) = 3.0 = 0

A função g ( x ) = 2 x - 1 tem como ponto fixo x = 1   porque g ( 1 ) = 2.1 - 1 = 1

AAAAh, e nada impede de uma função ter mais de 1 ponto fixo. Por exemplo:

A função g ( x ) = 4 x ² tem como ponto fixo x = 0   e x = 1 4

Ok, mas o que isso tem a ver com os zeros de uma função? Vem comigo que já vou explicar...

Método do Ponto Fixo

Imagina que queremos encontrar as raízes de uma função f ( x ) , mas não conseguimos encontrar a resposta igualando a função a zero…

Para resolver esse problema podemos aplicar o Método do Ponto Fixo. O método simplesmente quer transformar a equação f x = 0   em uma equação equivalente x = g x .

Ok ... um pouco mais devagar... O que está acontecendo aqui? Vamos tentar entender aos poucos, beleza?!

A partir da expressão f ( x ) = 0 (que é nosso problema inicial) podemos determinar uma nova expressão g ( x ) = x e encontrar as raízes da equação.

Note que o x   que é raiz de f ( x ) e ponto fixo da g ( x ) !

Essa função g ( x ) é chamada de função de iteração! E ela tem essa cara:

x k + 1 = g x k

Ou seja, o valor do x atual ( x k + 1 ) depende do valor da função anterior g x k .

Mas como funciona na prática essa g ( x ) ? Vamos ver um exemplo:

Exemplo

Começando com x 0 = 1 , calcule a função g x = x + 1 3 e encontre os próximos valores aplicados no ponto.

Vamos começar calculando o x 0 = 1 da função:

g x = x + 1 3

x 1 = g x 0 = 1 + 1 3 = 1,25992105

Agora, utilize o valor que você encontrou para aplicar novamente na função

x 2 = g x 1 = x 1 + 1 3 = 1,312293873

x 3 = g x 2 = x 2 + 1 3 = 1,32235381

x 4 = g x 3 = x 3 + 1 3 = 1,324268745

Percebe que os valores cada vez mais estão se aproximando? Convergindo para um número? Você está observando o processo de convergência. Isso porque x = 1,324   é o ponto fixo dessa função.

Aí você pode me perguntar: Beleza, mas que que isso tudo tem haver com os zeros da função f x   que queríamos calcular desde o começo?

A resposta é que quanto mais próximo o valor de x em f ( x ) chegar no zero da função, mas próximo o valor de x chega do ponto fixo de g ( x ) !

Ou seja, quanto mais próximo a gente estiver de encontrar o ponto fixo de g ( x ) também estaremos mais próximos de encontrar o valor do zero da função.

Lindo, não?! hahaha

Tá, mas e como encontrar a função g ( x ) a partir da f ( x ) ?

Bom, existem infinitas funções de iteração g x para a equação f x = 0 . O que elas possuem em comum é a forma geral:

g x = x + A x f x

onde, seja x * raiz de f , f x * = 0 e A x * ≠ 0 .

Vamos tentar um exemplo prático?!

Exemplo

Seja f x = x ³ - x - 1 . Queremos encontrar uma raiz no intervalo [ 1,2 ] . Tome x 0 = 1 .

Vamos lá! Precisamos encontrar nossa g x . Temos que f x = 0 , pois queremos uma raíz. Podemos isolar o x nessa equação :

x ³ - x - 1 = 0

x ³ = x + 1

x = x + 1 3

Lembra que a carinha da função de iteração é x k + 1 = g x k ?! Então conseguimos encontrar a nossa g x !!

Já calculamos seu ponto fixo anteriormente:

x 1 = g x 0 = 1 + 1 3 = 1,25992105

x 2 = g x 1 = x 1 + 1 3 = 1,312293873

x 3 = g x 2 = x 2 + 1 3 = 1,32235381

x 4 = g x 3 = x 3 + 1 3 = 1,324268745

Se o ponto fixo então é x = 1,324 , então encontramos a raíz procurada! Show de bola?!

Assim, a raiz de f x = x ³ - x - 1 no intervalo 1,2   é x = 1,324 .

Estudo da Convergência

Opa, ali em cima tava escrito infinitas funções?

Seria ótimo se todas as funções de interação funcionassem e convergissem para um ponto fixo né? BUT, infelizmente isso não acontece sempre.

O problema aqui é que nem toda g x vai convergir para a raíz, por mais que ela tenha a raíz como ponto fixo! Vou te dar um exemplo:

A equação x 3 + x - 10 = 0 tem como raiz x = 2 . Há duas funções de iteração possíveis para ela:

g 1 x = 10 - x 3           e             g 2 x = 10 - x 3

Vamos analisar primeiro g 1 x = 10 - x 3 , usando chute inicial x 0 = 1.5 :

x 1 = g x 0 = 6.625

x 2 = g x 1 = - 280.775

x 3 = g x 2 = 22134887.375

Bom, definitivamente não está convergindo para o 2 né?!

Agora vamos ver com g 2 x = 10 - x 3 e novamente x 0 = 1.5 :

x 1 = g x 0 = 2.04083

x 2 = g x 1 = 1.99659

x 3 = g x 2 = 2.00028

x 4 = g x 3 = 1.99998

Agora sim né?! Estamos claramente convergindo para o 2 !

E agora? Como vamos saber se escolhemos certo? Temos que começar a testar? Não! Por sorte alguém inventou um teorema que nos dá condições suficientes para que o processo seja convergente. Precisamos do seguinte:

Seja x * uma raiz da equação f x = 0 , isolada num intervalo I centrado em x * e seja g x uma função de iteração para a equação f x = 0 .

Se

g x e g ' x são contínuas em I ;

g ' x ≤ k < 1 , para todo x ∈ I ,

então o processo iterativo x k + 1 = g x k converge para x * .

Outro detalhe interessante é que, satisfeitas as condições acima, quanto menor for g ' x no ponto fixo de g x mais rápido esse método irá convergir para a raíz! Então, a melhor função de iteração será a que tiver o menor g ' p , onde p é ponto fixo de g x .Vamos verificar esse teorema? Vamos testar a g 1 x do nosso exemplo:

g 1 x = 10 - x 3

g 1 ' x = - 3 x 2

Ambas são contínuas em R então não teríamos problemas com algum intervalo I .

g 1 ' x < 1 ⇒ 3 x 2 < 1 ⇒ x 2 < 1 3 ⇒ - 1 3 < x < 1 3

Opa, repare que é impossível termos um intervalo I centrado em 2 com g 1 ' x < 1 . Por isso ela não convergiu para a raíz!

Vamos verificar a g 2 x :

g 2 x = 10 - x 3

g 2 ' x = - 1 3 10 - x 2 3

Temos que g 2 x é contínua em R e g 2 ' x é contínua em todos os reais menos o 10 . Então ainda é possível termos um intervalo I centrado em 2 , basta que não englobe o 10 .

g 2 ' x < 1