Método da Bissecção

Ver Todos os Exercícios

Teoria

Fala aí! Bora aprender TUDO sobre o Método da Bissecção com o Responde Aí?!

O Método da Bissecção é um tipo de método interativo utilizado pra descobrir os zeros de funções!

Lá no ensino fundamental a gente aprende bhaskara com o objetivo de descobrir os zeros da função em funções de segundo grau, lembra? bhaskara é o que chamamos de método analítico mas em alguns momentos as equações são tão complicadas que é mais fácil usar os métodos interativos!

Imagina que queremos descobrir o zero da função da figura abaixo a partir de métodos analíticos e mais especificamente pelo método da bissecção:

Método da Bissecção
Método da Bissecção

Simplificando muuuito, os métodos interativos são formas inteligentes de chutar uma resposta e depois ir refinando esse chute até chegar em um resultado muito próximo ao resultado analítico, ou seja, o resultado real!

Na figura acima queremos descobrir o zero da função e sabemos que ele fica entre e , usando o método da bissecção, vamos diminuindo esse intervalo até chegar extremamente próximo do resultado!

-Quão próximo?!

Geralmente no enunciado do problema temos um critério de parada, que vai ser a diferença entre o ponto e o ponto . Esse valor vai ser o tamanho do intervalo que a gente foi refinando e ele vai ser bem pequenininho! 😉

Como usar o Método da Bissecção?

A gente vai aprender na prática! Então bora pro exemplo?! Vamos achar o zero da função desse carinha aqui:

Na sua prova, ou lista de exercício o enunciado seria mais ou menos assim:

Em um intervalo de , utilize como critério de parada , onde .Encontre a raíz .

Só pra a gente visualizar melhor, o gráfico da nossa função é esse aqui:

Gráfico da função exemplificada
Gráfico da função exemplificada

Olhando o gráfico a gente sabe que a resposta tá ali perto do , mas sem roubar! vamos seguir o intervalo que o enunciado deu, que é entre e !

Passo 1: Organizando os Dados

A primeira coisa que podemos fazer é montar uma tabelinha show de bola com toooodas as informações que precisamos!

Tabela: Método da Bissecção
Tabela: Método da Bissecção

Nela temos: o número k de iterações é, o valor de   e para cada iteração, os valores de  , e o valor da nossa função  aplicada em : e . E por último e não menos importante: o critério de parada.

Sempre começamos em , já que não foi feita nenhuma iteração antes dessa!

Passo 2: Calculando o f(x) no Intervalo

Podemos calcular o valor da função nos pontos e do intervalo . Se nossa função é:

No ponto :

No ponto :

Passo 3: Calculando

Agora vamos calcular o nosso :

Bom, só falta calcular o valor de no ponto e colocar os valores na tabela. Vamos lá?

Passo 4: Calculando o Critério de Parada

Agora vemos o primeiro critério de parada você lembra qual é ? Isso mesmo, , é só comparar com o erro

Como é maior que o critério de parada, continuamos interagindo. Mas quem eu vou substituir: ou ?

Passo 5: Substituição

Passar saber se vamos reduzir o intervalo substituindo o valor de ou , usamos aquele o seguinte macete:

Macete de substituição
Macete de substituição

No nosso exemplo, temos e :

Então temos:

Como o valor deu negativo, substituímos . Então vamos dar para a nossa máquina o intervalo com erro .

Passo 6: Repetir o Processo até Atingir o Critério de Parada

Agora a gente começa a parte cíclica da coisa! Vamos fazer iterações até chegarmos em um resultado legal! Ah, outra coisa importante é numerar as iterações! Normalmente é pedido isso de vocês.

Vamos jogar os valores na tabela e ver como fica?

Tabela Resposta: Método da Bissecção
Tabela Resposta: Método da Bissecção

Da uma olhadinha nas cores da tabela, e perceba que a cada valor negativo em
nós substituímos o valor de , caso desse positivo substituímos em . Até chegarmos em um ponto onde :

Opaa, percebeu o que aconteceu aqui?

Nos interagimos até chegar em um intervalo de que é o valor mais próximo que encontramos da nossa raiz aplicada na função!

Percebeu que é bem trabalhoso né? Relaxa que vamos estudar outros métodos mais vantajosos que convergem com muito menos iterações!

Algoritmo

Agora imagina se você quisesse um erro de ? 😱😱😱Aí que ferrou tudo! 🥲

Mas calma, o principal objetivo desse método e de todos os outros que vamos ver é programar as máquinas para fazerem as contas pra gente!

Você provavelmente vai ter que escrever um código no computador. Existem vários programas pra isso, cada um com a sua linguagem, mas de um modo geral elas obedecem o seguinte algoritmo:

  • Passo 1: Dados iniciais (o que seu programa vai receber de você):
    • Intervalo inicial contendo a raiz;
    • Precisão do resultado final
  • Passo 2: Definimos um contador de iterações .
  • Passo 3:
    • Se , então seu intervalo já está ótimo! Escolha um qualquer entre (normalmente se escolhe o ponto médio) e FIM
    • Se não, continue para o Passo 4.
  • Passo 4: , aumentamos uma iteração no contador.
  • Passo 5:
  • Passo 6:
    • Se , fazemos .
    • Se não, fazemos .
  • Passo 7: Voltamos para o Passo 3. Repare que o e o que utilizaremos nesse novo ciclo já não são mais os mesmos e representam um intervalo menor.

No último passo a ordem é voltar pro Passo 3 onde em uma condição a gente para e em outra a gente continua até chegar no Passo 7, quando a gente volta pro Passo 3 e assim por diante, até a condição de parada ser satisfeita e acharmos a nossa resposta! O nome desse processo de repetição é loop!

Ele faz a gente ficar nesse ciclo até que seu programa fique na precisão desejada! Terminado o processo teremos um intervalo contendo a raiz e uma aproximação dela.

Um critério de parada interessante para seu programa e que é normalmente pedido é um número máximo de iterações!

Dessa forma se tiver algum erro no seu programa ou sua função não satisfizer as condições do método você não corre risco de ficar preso em um loop infinito ;)

Se liga nesse vídeo de exercício resolvido sobre método da bissecção que eu separei especialmente pra você:

Agora, vamos praticar com mais exercícios?!

Algoritmo

Exercícios Resolvidos

Exercício Resolvido #1

Dê um exemplo de função f x , que tenha pelo menos uma raiz que não pode ser determinada pelo método da Bisseção.

Passo 1

Essa eu dei um exemplo na teoria né? A função x 2 não pode ter sua raiz determinada por esse método já que a função não atravessa o eixo x . Qualquer outra função com essa característica também pode ser usada como exemplo, como 7 x 4 = 0 .

Resposta

Qualquer função que toque o eixo x sem atravessá-lo, como por exemplo x 2 = 0 , 7 x 4 = 0 , etc.

Exercício Resolvido #2

Seja f x = x + 2 x + 1 x x - 1 3 x - 2 . Para qual zero de f o método da bisseção converge quando aplicado nos seguintes intervalos:

a - 3,2.5

b - 1.5,1.75

Passo 1

A primeira coisa é vermos quais são os zeros dessa função que tá bem tranquilo né? Temos x = - 2 ,   - 1 ,   0 ,   1   e 2 como zeros da nossa função. Agora é só aplicar o método da bisseção nesses intervalos até acharmos pra qual desses zeros ele converge:

a   a 0 , b 0 = - 3,2.5

Temos as 5 raízes dentro desse intervalo, então não podemos afirmar para qual delas ele vai convergir.

Iteração 1 :

x 1 = a 0 + b 0 2 = - 0.25

f x 1 = f - 0.25 ≅ - 1.44

f a 0 ∙ f x 1 = - 1920 ∙ - 1.44 > 0

Logo, nosso novo intervalo será formado por x 1 e b 0 . Temos então que:

a 1 , b 1 = x 1 , b 0 = - 0.25 , 2.5

Ainda temos as raízes 0 , 1 e 2 nesse intervalo então não podemos dizer para qual raiz ele vai convergir.

a 1 , b 1 = - 0.25,2.5

Iteração 2 :

x 2 = a 1 + b 1 2 = 1.125

f x 2 = f 1.125 = - 0.01276

f a 1 ∙ f x 2 = - 1.44 ∙ - 0.01276 > 0

Logo, nosso novo intervalo será formado por x 2 e b 1 . Temos então que:

a 2 , b 2 = x 2 , b 1 = 1.125 , 2.5

Opa, repara que a única raiz nesse intervalo é o 2 ! Então já sabemos que ele vai convergir para o 2 .

Passo 2

b   a 0 , b 0 = - 1.5,1.75

Temos 3 raízes dentro desse intervalo, então não podemos afirmar para qual delas ele vai convergir.

Iteração 1 :

x 1 = a 0 + b 0 2 = 0.125

f x 1 = f 0.125 ≅ 0.375

f a 0 ∙ f x 1 = 20.5078 ∙ 0.375 > 0

Logo, nosso novo intervalo será formado por x 1 e b 0 . Temos então que:

a 1 , b 1 = x 1 , b 0 = 0.125 , 1.75

Opa, repara que a única raiz nesse intervalo é o 1 ! Então já sabemos que ele vai convergir para o 1 .

Resposta

a x = 2

b x = 1

Exercício Resolvido #3

A função f x = 2 x - 3 x = 0 possui dois zeros: um no intervalo 0,1 e outro no intervalo 3,4 . Obtenha os zeros dessa função em ambos os intervalos usando o método da bisseção com ε = 10 - 1 . Quantas iterações foram necessárias?

Passo 1

Como todas as questões de bisseção é só aplicar a receita de bolo. Ou para parecer mais engenheiro, basta aplicar o algoritmo!

a 0 , b 0 = 0,1

ε = 0,1

Iteração 1 :

x 1 = a 0 + b 0 2 = 0.5

f x 1 = f 0.5 ≅ - 0.086

f a 0 ∙ f x 1 = 1 ∙ - 0.086 < 0

Logo, nosso novo intervalo será formado por a 0 e x 1 . Temos então que:

a 1 , b 1 = a 0 , x 1 = 0,0.5

Critério de Parada:

b 1 - a 1 = 0.5 - 0 = 0.5 > 0.1

Como não alcançamos o critério de parada continuamos as iterações.

a 1 , b 1 = 0,0.5

ε = 0,1

Iteração 2 :

x 2 = a 1 + b 1 2 = 0.25

f x 2 = f 0.25 ≅ 0.439

f a 1 ∙ f x 2 = 1 ∙ 0.439 > 0

Logo, nosso novo intervalo será formado por x 2 e b 1 . Temos então que:

a 2 , b 2 = x 2 , b 1 = 0.25,0.5

Critério de Parada:

b 2 - a 2 = 0.5 - 0.25 = 0.25 > 0.1

Como não alcançamos o critério de parada continuamos as iterações.

a 2 , b 2 = 0.25,0.5

ε = 0,1

Iteração 3 :

x 3 = a 2 + b 2 2 = 0.375

f x 3 = f 0.375 ≅ 0.17

f a 2 ∙ f x 3 = 0.439 ∙ 0.17 > 0

Logo, nosso novo intervalo será formado por x 3 e b 2 . Temos então que:

a 3 , b 3 = x 3 , b 2 = 0.375,0.5

Critério de Parada:

b 3 - a 3 = 0.5 - 0.375 = 0.125 > 0.1

Como não alcançamos o critério de parada continuamos as iterações.

a 3 , b 3 = 0.375,0.5

ε = 0,1

Iteração 4 :

x 4 = a 3 + b 3 2 = 0.4375

f x 4 = f 0.4375 ≅ 0.042

f a 3 ∙ f x 4 = 0.17 ∙ 0.042 > 0

Logo, nosso novo intervalo será formado por x 4 e b 3 . Temos então que:

a 4 , b 4 = x 4 , b 3 = 0.4375,0.5

Critério de Parada:

b 3 - a 3 = 0.5 - 0.4375 = 0.0625 < 0.1

Opa! Nosso intervalo está menor que o erro, então podemos parar por aqui e dar como resposta o intervalo 0.4375,0.5 . Uma aproximação para a raiz é o ponto médio do intervalo, x - = 0.46875 .

Passo 2

Beleza, vamos para a próxima raiz:

a 0 , b 0 = 3,4

ε = 0,1

Iteração 1 :

x 1 = a 0 + b 0 2 = 3.5

f x 1 = f 3.5 ≅ 0.814

f a 0 ∙ f x 1 = - 1 ∙ 0.814 < 0

Logo, nosso novo intervalo será formado por a 0 e x 1 . Temos então que:

a 1 , b 1 = a 0 , x 1 = 3,3.5

Critério de Parada:

b 1 - a 1 = 3.5 - 3 = 0.5 > 0.1

Como não alcançamos o critério de parada continuamos as iterações.

a 1 , b 1 = 3,3.5

ε = 0,1

Iteração 2 :

x 2 = a 1 + b 1 2 = 3.25

f x 2 = f 3.25 ≅ - 0.24

f a 1 ∙ f x 2 = - 1 ∙ - 0.24 > 0

Logo, nosso novo intervalo será formado por x 2 e b 1 . Temos então que:

a 2 , b 2 = x 2 , b 1 = 3.25,3.5

Critério de Parada:

b 2 - a 2 = 3.5 - 3.25 = 0.25 > 0.1

Como não alcançamos o critério de parada continuamos as iterações.

a 2 , b 2 = 3.25,3.5

ε = 0,1

Iteração 3 :

x 3 = a 2 + b 2 2 = 3.375

f x 3 = f 3.375 ≅ 0.25

f a 2 ∙ f x 3 = - 0.24 ∙ 0.25 < 0

Logo, nosso novo intervalo será formado por a 2 e x 3 . Temos então que:

a 3 , b 3 = a 2 , x 3 = 3.25,3.375

Critério de Parada:

b 3 - a 3 = 3.375 - 3.25 = 0.125 > 0.1

Como não alcançamos o critério de parada continuamos as iterações.

a 3 , b 3 = 3.25,3.375

ε = 0,1

Iteração 4 :

x 4 = a 3 + b 3 2 = 3.3125

f x 4 = f 3.3125 ≅ - 0.0026

f a 3 ∙ f x 4 = - 0.24 ∙ - 0.0026 > 0

Logo, nosso novo intervalo será formado por x 4 e b 3 . Temos então que:

a 4 , b 4 = x 4 , b 3 = 3.3125,3.375

Critério de Parada:

b 3 - a 3 = 3.375 - 3.3125 = 0.0625 < 0.1

Opa! Nosso intervalo está menor que o erro, então podemos parar por aqui e dar como resposta o intervalo 3.3125,3.375 . Uma aproximação possível para a raiz é valor x - = 3.3 4375 .

Resposta

Intervalo 0,1 : x - = 0.46875

Intervalo 3,4 : x - = 3.34375

Foram necessárias 4 iterações para ambos os intervalos.

Exercício Resolvido #4

Calcule a raiz da equação f x = x 2 - 5 s e n x com ε ≤ 0.01 utilizando o método da bisseção. (sugestão utilizar intervalo de busca 1,3 )

Passo 1

Vamos aplicar nosso algoritmo no intervalo que o cara bondosamente sugeriu haha.

a 0 , b 0 = 1,3

ε = 0.01

Iteração 1 :

x 1 = a 0 + b 0 2 = 2

f x 1 = f 2 ≅ - 0.55

f a 0 ∙ f x 1 = - 3.21 ∙ - 3.82 > 0

Logo, nosso novo intervalo será formado por x 1 e b 0 . Temos então que:

a 1 , b 1 = x 1 , b 0 = 2,3

Critério de Parada:

b 1 - a 1 = 3 - 2 = 1 > 0.01

Como não alcançamos o critério de parada continuamos as iterações.

a 1 , b 1 = 2,3

ε = 0.01

Iteração 2 :

x 2 = a 1 + b 1 2 = 2.5

f x 2 = f 2.5 ≅ 3.26

f a 1 ∙ f x 2 = - 0.55 ∙ 3.26 < 0

Logo, nosso novo intervalo será formado por a 1 e x 2 . Temos então que:

a 2 , b 2 = a 1 , x 2 = 2,2.5

Critério de Parada:

b 2 - a 2 = 2.5 - 2 = 0.5 > 0.01

Como não alcançamos o critério de parada continuamos as iterações.

a 2 , b 2 = 2,2.5

ε = 0.01

Iteração 3 :

x 3 = a 2 + b 2 2 = 2.25

f x 3 = f 2.25 ≅ 1.17

f a 2 ∙ f x 3 = - 0.55 ∙ 1.17 < 0

Logo, nosso novo intervalo será formado por a 2 e x 3 . Temos então que:

a 3 , b 3 = a 2 , x 3 = 2,2.25

Critério de Parada:

b 3 - a 3 = 2.25 - 2 = 0.25 > 0.01

Como não alcançamos o critério de parada continuamos as iterações.

a 3 , b 3 = 2,2.25

ε = 0.01

Iteração 4 :

x 4 = a 3 + b 3 2 = 2.125

f x 4 = f 2.125 ≅ 0.26

f a 3 ∙ f x 4 = - 0.55 ∙ 0.26 < 0

Logo, nosso novo intervalo será formado por a 3 e x 4 . Temos então que:

a 4 , b 4 = a 3 , x 4 = 2,2.125

Critério de Parada:

b 4 - a 4 = 2.125 - 2 = 0.125 > 0.01

Como não alcançamos o critério de parada continuamos as iterações.

a 4 , b 4 = 2,2.125

ε = 0.01

Iteração 5 :

x 5 = a 4 + b 4 2 = 2.0625

f x 5 = f 2.0625 ��� - 0.15

f a 4 ∙ f x 5 = - 0.55 ∙ - 0.15 > 0

Logo, nosso novo intervalo será formado por x 5 e b 4 . Temos então que:

a 5 , b 5 = x 5 , b 4 = 2.0625,2.125

Critério de Parada:

b 5 - a 5 = 2.125 - 2.0625 = 0.0625 > 0.01

Como não alcançamos o critério de parada continuamos as iterações.

a 5 , b 5 = 2.0625,2.125

ε = 0.01

Iteração 6 :

x 6 = a 5 + b 5 2 = 2.09375

f x 6 = f 2.09375 ≅ 0.052