Introdução teórica
Um problema comum em trabalhos científicos é calcular as raízes de equações da forma:
f ( x )=0
Em que o f ( x ) pode ser um polinômio ou uma função transcendente. Utilizando técnicas numéricas é possível obter valores aproximados das raízes da função tão próximo da solução exata quanto você deseje, é importante ressaltar também que há casos onde é possível obter as raízes exatas de f ( x ) = 0, como por exemplo, quando nossa função é um polinômio fatorável.
A maioria dos procedimentos numéricos para se descobrir as raízes da função, fornecem uma sequência de aproximações, cada uma mais precisa que a anterior, de modo que a repetição do procedimento fornece uma aproximação a qual difere do valor verdadeiro por uma tolerância pré-definida.
Para a resolução desse Exercício Programa 1 (EP01) vamos utilizar vários métodos iterativos para a determinação de aproximações para raízes isoladas de
f ( x )=0 .
Método da Bissecção
Conhecido como o método da bissecção ou método da busca binária, baseando se na teoria do valor intermediário.
Suponha que temos uma função f continua definida em um intervalo [a;b] sendo que f (a ) e f (b ) tenham sinais opostos, o teorema do valor intermediário diz que existe um número p em ( a , b ) que seja f ( p)=0 . O procedimento irá funcionar mesmo que haja mais que uma raiz no intervalo definido.
O método funciona da seguinte maneira:
Considerando um ponto p=a+b2 , se f ( p)=0 então encontramos a nossa raiz, caso contrário, nossa raiz está em um dos dois outros intervalos, sendo eles [ p ;a] ou [b ; p] , a partir disso escolhemos o próximo intervalo de acordo com o sinal de f ( p) , ou seja, se f ( p) tem o mesmo sinal que f (a ) então escolhemos como intervalo [ p ;a] e o nosso p recebe o valor de b , caso contrário escolhemos como intervalo [b ; p] e o nosso p recebe o valor de a .
Assim o processo se repete até que f ( p)=0 ou que a+b2 seja menor que a tolerância desejada.
Método de Newton-Raphson
O método de Newton, parte de uma aproximação inicial p1 e através da equação [1] tenta chegar o mais próximo do zero da função.
pn+1=pn− f
(
pn)
f '( pn) [1]
Considerando uma função f ( p) contida num intervalo de separação [a ;b] , escolhemos um numero p1 contido nesse intervalo e aplicamos na
equação[1] sendo p1=pn . Repetindo o processo com pn+1 até que pn+1−pn
Se formos observar graficamente, o método consistem traçar uma tangente no ponto [ p1;f
(
p1)
] e ver onde essa tangente intercepta o eixo x. Chamamosesse ponto de p2 e traçamos uma nova tangente em [ p2;f
(
p2)
] . Repetindo oprocesso diversas vezes e se aproximando cada vez mais do valor da raiz.
Método da secante
O método da secante é semelhante ao método de Newton, porém diferentemente dele, esse método substitui a necessidade de calcularmos a derivada pelo cálculo de uma razão incremental.
Assim, substituímos o papel da tangente do método de Newton, por uma secante, isso significa que vamos precisar sempre de dois pontos para determina-la, com isso temos que considerar duas iteradas iniciais, que chamamos de p0 e
p1 .
Semelhantemente ao método anterior, calculando o ponto de intersecção da secante com o eixo das abcissas, obtemos a formula para pn :
pn=pn−1−f
(
pn−1)
(pn−1−pn−2)f
(
pn−1)
−f ( pn−2) [2]Método da falsa-posição
Esse método é muito parecido com o método da bissecção, assim como ele, a falsa-posição se inicia com um intervalo [a ;b] que confine a solução. Os valores da função nos pontos finais são f (a ) e f (b ) , em seguida, esse pontos
são conectados por uma reta, assim, a primeira estimativa da solução numérica p , é o ponto onde a linha reta cruza o eixo x. Agora é necessário escolher um novo intervalo
[
a ;b]
que corresponde a subseção do primeiro intervalo que contém a solução, ele pode ser [a ; p] ou [ p ;b] . Após obtido o novo intervalo, o processo se repete até que seja encontrado a tolerância desejada.Para um dado intervalo [a ;b] , a equação da linha reta que conecta os pontos [b ;f (b)] e [a ;f (a)] é dada por:
y=f(b)−f(a)
Desenvolvimento e análise de dados
Problema 1
O primeiro problema pede que encontremos as raízes da função do polinômio: p (x )=230 x4+18 x3−9 x2−221 x−9 nos intervalos [-1;0] e [0;1] com uma precisão de 10−4 utilizando os métodos estudados, ou seja, os métodos descritos na introdução teórica.
Utilizando o método da bissecção
De acordo com o enunciado, as raízes estão em [-1;0] e [0;1], então usaremos esses intervalos para a resolução do problema, pois não sabemos em que ponto estão as raízes, lembrando que o critério de parada é quando f ( p)=0
(sendo p o ponto encontrado) ou quando ¿a+b2 | for menor que a tolerância. Foram obtidos os seguintes resultados:
Tabela 1- método da bissecção - valor da raiz no intervalo [-1;0]
Tabela 2- método da bissecção - valor da raiz no intervalo [0;1]
De acordo com as tabelas, a raiz entre [-1;0] equivale à -0,04071 e a raiz entre [0;1] equivale à 0,962341.
Mesmo que o número total de iterações tenha sido relativamente grande, o algoritmo conseguiu chegar em uma solução em ambos os casos.
Utilizando o método de Newton-Raphson
Diferentemente do método anterior, usaremos uma solução gráfica para escolher o melhor ponto inicial, obtendo o gráfico que descreve a função do problema 1, temos:
Figura 1- gráfico da função do Problema 1
Assim, foram escolhidos valores próximos aonde a função intersecta o eixo x como pontos iniciais, sendo eles -0,5 para encontrar a raiz que está próximo a zero e 1 para encontrar a raiz próximo ao ponto 1. Após o método for executado, foram encontrados os seguintes resultados:
Tabela 3 - método de Newton utilizando p0=1 como ponto inicial
Tabela 4- método de Newton utilizando p0 =-0,5 como ponto inicial
Analisando as tabelas com os resultados obtidos, temos que os valores das raízes encontradas para os pontos iniciais 1 e -0,5 são respectivamente 0,962398 e -0,040659.
Como os pontos iniciais foram escolhidos com base na análise gráfica, houveram poucas iterações até achar as raízes desejadas.
Utilizando o método da secante
De modo semelhante ao método de Newton, a escolha dos pontos iniciais para achar as raízes será feita com base na figura [1], onde p0 e p1, serão pontos que estão entre aonde a função cruza o eixo x. Sendo assim, os pontos escolhidos serão [-0,5;0] e [0,5;1], afim de encontrar as raízes.
Os resultados obtidos foram os seguintes:
Tabela 5- método da secante - com pontos iniciais sendo [-0,5;0]
Tabela 6- método da secante - com pontos iniciais sendo [0,5;1]
As raízes aproximadas obtidas foram -0,040659 para os pontos iniciais [-0,5;0] e 0962398 para os pontos iniciais [0,5;1].
Assim como o método anterior, não houveram muitas iterações pois os chutes iniciais foram feitos com base na figura 1, ou seja, tínhamos uma estimativa de onde estavam os zeros da função.
Método da falsa-posição
Como já visto anteriormente, o método da falsa posição é semelhante ao da bissecção, isto é, definimos um intervalo para que o método confine a solução, assim utilizaremos os intervalos fornecidos no enunciado, como fizemos no primeiro método.
Dessa maneira, sendo [-1;0] e [0,1] os intervalos para encontrar os dois zeros da função, podemos obter as seguintes tabelas:
Tabela 7 - método da falsa posição para encontrar as raízes no intervalo [-1;0]
Tabela 8 - método da falsa posição para encontrar as raízes no intervalo [0;1]
Os resultados obtidos foram semelhantes aos métodos anteriores, obtivemos -0,04057 para o intervalo de [-1;0] e 0,962392 para o intervalo [0;1].
Houveram mais iterações comparadas aos métodos de Newton e da secante por causa do ponto inicial escolhido, entretanto houveram menos iterações que o método da bissecção.
Problema 2
O problema pede para encontrar os períodos em que a comida foi mais barata e mais cara durante o período de 1984 a 1994, sendo que o índice de preço de alimento é dado pela função:
I (t )=0,00009045 t5
+0,001438t4−0,06561t3+0,4598 t2−0,627 t+99,33 [4]
Onde t é medido em anos e como temos um intervalo definido (1984 a 1994), temos que 0 ≤t ≤10 .
Primeiramente é necessário descobrir os pontos críticos da função, pois os mesmos denotam pontos de máximo e mínimo, lembrando que são considerados pontos críticos quando I '(t)=0 .
Sendo assim, calculamos a derivada da equação [4], isto é, I'(t) , para obter: I'(t)=(1809 t 4 +23008t3−787320 t2+3678400 t−2508000) 4000000 [5]
Em seguida é necessário calcular as raízes da função I'(t) utilizando os métodos numéricos descritos na introdução teórica.
Para se obter os zeros da função optaremos pelo método da bissecção, pois é garantido que o método convirja em uma solução quando ele atende certas condições, mesmo que ele precise de mais iterações para que possa satisfazer a tolerância desejada.
Executando o método da bissecção na equação [5], utilizando como intervalo [0;10] temos:
Tabela 9 -Método da bissecção aplicado em I'(t) - intervalo: [0;10]
Com base na tabela, obtemos o valor aproximado de uma raiz da equação [5], esse valor sendo 0,823134 utilizando uma tolerância de 10^-4.
Agora é necessário verificar se há outras raízes nos dois intervalos restantes, sendo eles [0;0,823059] e [0,823212;10], faremos a verificação utilizando o teorema de Bozano que diz que se f (a )∗f (b )<0 então a função tem pelo menos uma raiz entre a e b .
Aplicando o teorema de Bolzano nos dois intervalos que temos, descobrimos que f (0 )∗f (0,823059)> 0 e f (0,823212)∗f (10)<0 , considerando f(x)=I ' (t) , assim devemos encontrar a raiz que está no intervalo [0,823212,10], aplicando o método da bissecção, temos:
Tabela 10 - Método da bissecção aplicado em I'(t) - intervalo: [0,823212;10]
De acordo com a tabela, a raiz encontrada tem valor de 5,130923 utilizando tolerância 10^-4.
Para garantir que não há mais raízes no intervalo [0,10] aplicamos o teorema de Bolzano novamente, porém para os pontos [0,823212;5,130853] e [5,130993;10]:
Verificamos que:
f (0,823212)∗f (5,130853)>0 [6]
Segundo as equações [6] e [7], não existem raízes nos intervalos restantes, desse modo, podemos dizer que I '(t) é igual a zero quando t ≈ 0,823134 ou
5,130923 . Calculando I(t) para esses números críticos, obtemos:
I (0,823134 )=99,09 [8]
I (5,130923)=100,67 [9]
Como os pontos críticos caem no intervalo [0;10], será necessário calcular
I (t ) para esses pontos:
I (0)=99,33 [10
]
I (10)=96,85 [11]
Comparando os quatro valores obtidos nas equações [8], [9], [10] e [11], podemos concluir que a comida foi mais barata em 1994 atingindo um valor de $ 96,85 e foi mais cara em 1989 atingindo um valor de $100,67.