Iteração de ponto fixo

De testwiki
Ir para a navegação Ir para a procura

Predefinição:Mais notas

Iteração de ponto fixo.

Em análise numérica, iteração de ponto fixo é um método de se calcular pontos fixos de funções. Ponto fixo de dada função f é o número x que quando aplicado na função resulta nele mesmo, i.e. f(x)=x. Dada uma aproximação inicial x0 para x, o método consiste em iterar sucessivamente a função dada sobre x0. Ou seja, constrói-se a sequência xn+1=fn+1(x0)=fn(f(x0)) sendo cada xn uma nova aproximação do ponto fixo x. Uma importante aplicação deste método aparece no cálculo numérico de soluções de equações de uma variável real.[1]

Descrição

Ilustração do método.

Seja f:[a,b][a,b] uma função com um único ponto fixo x[a,b], o qual buscamos determinar. A iteração do ponto fixo consiste em construirmos a sequência recursiva:[1]

xn+1=f(xn),n=0,1,2,,

sendo x0[a,b] uma aproximação inicial de x. Para certas funções, tem-se que a sequência (xn)n converge para o ponto fixo x. Por exemplo, o teorema da convergência enunciado abaixo, garante que a convergência do método do ponto fixo para contrações.

Solução de equações

Existem diversas maneiras de usar o método para obter a raiz de uma função f(x). A ideia fundamental é reescrever a equação f(x)=0 em uma equação equivalente da forma:

g(x)=x

i.e., em um problema de ponto fixo. Se g(x) é uma função para a qual o método do ponto fixo converge, então a sequência:

xn+1=g(xn),n=0,1,,

com x0 uma aproximação inicial da solução, converge para o ponto fixo x da função g. Notemos que o ponto fixo x é também solução da equação f(x)=0.[1]

Exemplo

Há muitas maneiras de manipular uma equação de forma a utilizar o método do ponto fixo. É importante observar que, apesar da simplicidade do método, este pode não convergir dependendo da função (veja, abaixo, o Teorema da Convergência para condições suficientes de convergência). No seguinte exemplo, buscamos mostrar este fato.

Buscaremos aproximar a solução da equação xex=10 usando o método do ponto fixo. Notemos que essa equação é equivalente a x=10ex e x=ln(10x).

Ao efetuarmos o processo iterativo para a primeira equação, i.e. xn+1=10exn, com x0=1, obtemos a seguinte sequência:

x0=1

x1=10e1=3.6787944

x2=10e3.6787944=0.2525340

x3=10e0.2525340=7.7682979

x4=10e7.7682979=0.0042293

x5=10e0.0042293=9.9577961

E quando realizamos o processo com a outra equação, i.e. xn+1=ln(10xn), e novamente iniciarmos o processo com x0=1, a nova sequência se da por:

x0=1

x1=ln(101)=2.3025851

x2=ln(102.3025851)=1.4685526

x3=ln(101.4685526)=1.9183078

x4=ln(101.9183078)=1.6511417

.

.

.

x10=1.7421335

x20=1.7455151

x30=1.745528

x31=1.745528

O teste realizado com as duas equações indica que, apesar delas serem equivalentes, a primeira não é convergente enquanto a segunda equação converge para o valor de 1.745528 (que é a solução aproximada de xex=10). As condições para que uma equação convirja para o valor de ponto fixo estão contidas no teorema de convergência.

iteração do ponto fixo xn+1=cos(xn) com valor inicial x1=1.

Teorema de convergência

Seja f:[a,b][a,b] uma função contração, i.e. uma função que satisfaça:

|f(x)f(y)|α|xy|,α<1,x,y[a,b].

Então, existe um único ponto x pertencente ao intervalo [a,b] tal que f(x)=x. Além disso, para qualquer x0[a,b], a sequência (xn)n dada por:

xn+1=f(xn),n=0,1,2,,

converge para x quando n.

Demonstração:

Existência. Caso f(a)=a ou f(b)=b o ponto fixo existe nos extremos. Caso contrário, então f(a)>a e f(b)<b. Neste caso, seja:

h(x)=f(x)x

Como f é uma função contínua, h também é. Notemos que:

h(a)=f(a)a>0 e h(b)=f(b)b<0

ou seja, h troca de sinal no intervalo [a,b]. Logo, pelo Teorema do valor intermediário, garantimos a existência de um ponto x(a,b) tal que h(x)=0. Esse valor x é um ponto fixo de f, uma vez que

h(x)=f(x)x=xx=0

Unicidade. Suponhamos que x e x sejam pontos fixos distintos de f. Então: |xx|=|f(x)f(x)|α|xx|α1 o que é uma contradição.

Convergência. Seja (xn)n a sequência iterada xn+1=f(xn) com x0[a,b] e x o ponto fixo de f. Então, temos: |xn+1x|=|f(xn)f(x)|α|xnx|,n=1,2, Isso implica que: |xn+1x|αn|x1x|,n=1,2, Como 0α<1, temos que xnx quando n. Isso completa a demostração.

Observações

  1. A desigualdade estrita α<1 é necessária.
  2. A condição f([a,b])[a,b] é necessária.
  3. Determinar os pontos fixos de uma função f(x) é determinar a interseção entre as curvas y=f(x) e y=x.
  4. A condição |f(x)f(y)|α|xy| é satisfeita sempre que |f(x)|α<1 para todo x, pois:
|f(x)f(y)|=|xyf(s)ds|xyαds=α|xy|,(x<y).

Teste de convergência

Seja f:[a,b] uma função C0[a,b] e x(a,b) um ponto fixo de f. É dito que x é um ponto fixo estável caso exista uma região(xΔx,x+Δx) chamada de bacia de atração tal que x(n+1)=f(x(n)) é convergente sempre que x(0)(xΔx,x+Δx).

Teorema

Se f[a,b] e |f(x)| < 1, então x é estável. Se |f(x)| > 1 é instável e o teste é inconclusivo caso |f(x)|=1.

Exemplo

Considerando o problema de encontrar a solução da equação cos(x)=x analisando a equação como ponto fixo da função f(x)=cos(x). A demonstração do Teorema do ponto fixo pode ser aplicado na função com o intervalo [a,b]=[1/2,1].

Para provar que f([1/2,1])[1/2,1] basta analisar que f(x) é decrescente no intervalo:

0,54 < cos(1)cos(x)cos(1/2) < 0,88

f([1/2,1])[1/2,1] é verdade pois [0.54,0.88][1/2,1].

Agora para provar |f(x)f(y)|α|xy|,α < 1 observamos que f(x)=sen(x), dessa forma temos a estimativa :

0,85 < sen(1)sen(x)sen(1/2) < 0,47

Assim temos que |f(x)| < 0,85 e dessa forma α=0,85 < 1.

Agora observamos o processo numérico da sequência fazendo x(n+1)=cos(x(n)), iniciando com x(0)=1, obtemos a sequência:

x(1)=cos(x(0))=cos(1)=0,5403023

x(2)=cos(x(1))=cos(0,5403023)=0,8575532

x(3)=cos(x(2))=cos(0,8575532)=0,6542898

x(4)=cos(x(3))=cos(0,6542898)=0,7934804

x(5)=cos(x(4))=cos(0,7934804)=0,7013688

.

.

.

x(11)=cos(x(10))=cos(0,7442374)=0,7356047

x(12)=cos(x(11))=cos(0,7356047)=0,7414251

x(13)=cos(x(12))=cos(0,7414251)=0,7375069

.

.

.

x(41)=cos(x(40))=cos(0,7390852)=0,7390851

x(42)=cos(x(41))=cos(0,7390851)=0,7390851

x(43)=cos(x(42))=cos(0,7390851)=0,7390851

Verificamos que a sequência converge para o ponto fixo x=0,7390851.

Estabilidade e convergência

Consideremos uma função f(x) com um ponto fixo em x=f(x) e observamos o processo iterativo:

x(n+1)=f(x(n))

x(0)=x

Sendo possível a função f(x) ser aproximada por seu polinômio de Taylor em torno do seu ponto fixo x, obteremos:

f(x)=f(x)+(xx)f(x)+O((xx)2),n0

f(x)=x+(xx)f(x)+O((xx)2)

f(x)x+(xx)f(x)

Substituindo o polinômio de Taylor da função na relação de recorrência obteremos:

x(n+1)=f(x(n))x+(xx)f(x)

Dessa forma:

(x(n+1)x)(x(n)x)f(x)

Aplicando módulos de ambos os lados, obtemos:

|x(n+1)x||x(n)x||f(x)|

Podemos obter algumas conclusões através desta relação:

  • Se |f(x)| < 1 a distância entre x(n) e o ponto fixo x está diminuindo a cada passo.
  • Se |f(x)| > 1 a distância entre x(n) e o ponto fixo x está aumentando a cada passo.
  • Se |f(x)|=1 a aproximação de primeira ordem não é suficiente para comprender o comportamento da sequência.

Erro de truncamento e tolerância

Ao utilizar este método na prática, o valor do ponto fixo x normalmente não é conhecido. Por conseguinte , o erro € =|x(n)x| precisa ser calculado tendo como referência os valores obtidos para x(n) . Uma ferramenta frequentemente usada para estudar a evolução da diferença entre dois elementos da sequência é:

Δn=|x(n+1)x(n)|

observando que x=limnx(n)

xx(N)=(x(N+1)x(N))+(x(N+2)x(N+1))+(x(N+3)x(N+2))+... =k=0(x(N+k+1)x(N+k))

Usando também as expressões:

x(n+1)x+(x(n)x)f(x)

x(n)x+(x(n1)x)f(x)

Subtraindo uma expressão da outra:

x(n+1)x(n)(x(n)x(n1))f(x)

Dessa maneira:

x(N+k+1)x(N+k)(x(N+1)x(N))(f(x))k

E obtemos:

xx(N)= k=0(x(N+k+1)x(N+k))

xx(N)k=0(x(N+1)x(N))(f(x))k

xx(N)(x(N+1)x(N))(11f(x)), |f(x)| < 1

Aplicando o módulo, obtemos:

|xx(n)||x(N+1)x(N)|(11f(x))

N (ΔN1f(x))

Ao analisarmos a relação x(n+1)x(n)(x(n)x(n1))f(x), podemos concluir:

  • Quando f(x) < 0 , o esquema é alternante e o erro €N pode ser estimado diretamente da diferença ΔN.
  • Quando f(x) > 0, o esquema é monótono e (11f(x)) > 1, pelo que o erro €N é maior que a diferença ΔN. A relação será tão mais importante quanto mais próximo da unidade for f(x), ou seja, quando mais lenta for a convergência.
  • Como f(x)(x(n+1)x(n)x(n)x(n1)), temos

|f(x)|(ΔNΔN1)

E obtemos

N(ΔN1ΔN1)

Obs: Deve-se exigir que ΔN < ΔN1

Ver também

Predefinição:Referências