Você está na página 1de 27

Erros Computacionais

Elisângela Pinto Francisquetti

Cálculo Numérico

2017

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 1 / 23


Sumário

Introdução

Resolução de problemas numéricos

Resolução de numérica

Erros na Fase da Modelagem

Erros na Fase de Resolução

Representação Numérica

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 2 / 23


Introdução

Introdução

O Cálculo Numérico consiste na obtenção de soluções aproximadas de proble-


mas matemáticos, utilizando métodos numéricos.

O computador não é uma máquina de calcular perfeita, como muitos julga.

Os cálculos efetuados no computador estão sujeitos a erros de maior ou menor


magnitude.

A compreensão da natureza desses erros permite estabelecer estratégias (algo-


ritmos) para resolução de problemas.

Nas ciências e engenharias, o computador cumpre um papel importante no


processo de resolução de problemas.
Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 3 / 23
Resolução de problemas numéricos

Resolução de problemas numéricos

Não há uma regra única, mas podemos dizer que, de um modo geral, a resolução
de problemas segue os seguintes passos:
Definição do problema: O que se quer resolver? Qual é a natureza do
problema: teória ou prática? Quais as informações disponı́veis? Quais áreas
do conhecimento são aplicáveis?

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 4 / 23


Resolução de problemas numéricos

Resolução de problemas numéricos

Não há uma regra única, mas podemos dizer que, de um modo geral, a resolução
de problemas segue os seguintes passos:
Definição do problema: O que se quer resolver? Qual é a natureza do
problema: teória ou prática? Quais as informações disponı́veis? Quais áreas
do conhecimento são aplicáveis?

Modelagem matemática: Como representar o problema matematicamente:


desenho, esquemas, equações ou fórmulas?

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 4 / 23


Resolução de problemas numéricos

Resolução de problemas numéricos

Não há uma regra única, mas podemos dizer que, de um modo geral, a resolução
de problemas segue os seguintes passos:
Definição do problema: O que se quer resolver? Qual é a natureza do
problema: teória ou prática? Quais as informações disponı́veis? Quais áreas
do conhecimento são aplicáveis?

Modelagem matemática: Como representar o problema matematicamente:


desenho, esquemas, equações ou fórmulas?

Resolução do problema matemático: Existe solução? É única? Como de-


terminar a solução? É possı́vel encontrar solução exata (analı́tica) ou devemos
optar por uma solução aproximada (numérica)?
Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 4 / 23
Resolução de numérica

Resolução de numérica

Se a opção for pela resolução numérica, tem-se:


Determinação do método: Existe algum método (algoritmo) disponı́vel?
Qual método é mais indicado? Alguma daptação ou elaboração necessária?

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 5 / 23


Resolução de numérica

Resolução de numérica

Se a opção for pela resolução numérica, tem-se:


Determinação do método: Existe algum método (algoritmo) disponı́vel?
Qual método é mais indicado? Alguma daptação ou elaboração necessária?

Codificação e implementação: Qual é a linguagem a ser utilizada? Em


que máquina ou sitema o programa vai rodar? O programa está funcionando
corretamente?

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 5 / 23


Resolução de numérica

Resolução de numérica

Se a opção for pela resolução numérica, tem-se:


Determinação do método: Existe algum método (algoritmo) disponı́vel?
Qual método é mais indicado? Alguma daptação ou elaboração necessária?

Codificação e implementação: Qual é a linguagem a ser utilizada? Em


que máquina ou sitema o programa vai rodar? O programa está funcionando
corretamente?

Processamento: Resolver o problema.

Análise de resultados: O resultado é o esperado? É solução para o problema?


Qual é a estimativa de erro? Qual é a precisão do resultado?
Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 5 / 23
Erros na Fase da Modelagem

Erros na Fase da Modelagem

São os erros decorrentes de simplificações, muitas vezes necessárias, para que


o fenômeno natural, por exemplo, possa ser resolvido por um modelo ma-
temático.

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 6 / 23


Erros na Fase de Resolução

Erros na Fase de Resolução

São erros provenientes da utilização de algum equipamento, por exemplo, um


computador, para processarmos os cálculos necessários à obtenção de uma
solução para o modelo matemático.

Tais erros ocorrem pois os equipamentos tem capacidade limitada de arma-


zenar os dı́gitos significativos de valores numéricos utilizados nas operações
aritméticas elementares.

As leis que regem as operações aritméticas, quando executadas em um com-


putador, não obedecem à mesma estrutura dos números reais.

Todo o processo de conversão é uma fonte de erros que afetam o resultado


final dos cálculos.
Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 7 / 23
Representação Numérica

Mudança de Base

Dado um número real, N, é sempre possı́vel representá-lo em qualquer base b, da


seguinte forma:
m
X
Nb = ai × b i (1)
i=n

onde ai ∈ {0, 1, 2, 3, ..., (b − 1)}, com m e n inteiros.

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 8 / 23


Representação Numérica

Mudança de Base

Assim, a base binária é da forma

m
X
N2 = ai × 2i , ai ∈ {0, 1} (2)
i=n

e a base decimal
m
X
N10 = ai × 10i , ai ∈ {0, 1, . . . , 9}. (3)
i=n

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 9 / 23


Representação Numérica

Exemplo

Represente os números abaixo em suas respectivas bases.

a) (231, 35)10

b) (111, 01)2

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 10 / 23


Representação Numérica

Mudança de base binária para a base decimal

Procedimento: multiplicar o dı́gito binário por uma potência adequada de 2.

Exemplo:

a) (1011)2 = ( )10

b) (111, 011)2 = ( )10

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 11 / 23


Representação Numérica

Mudança de base decimal para a base binária

Procedimento: método das divisões sucessivas, que pode ser resumido da seguinte
maneira:

1 Dividir o número por 2.


2 Divide-se por 2 o quociente encontrado.
3 Repetir o processo até que o último quociente seja 1.
4 O número binário será formado pela concatenação do último quociente com
os restos das divisões lidos em sentido inverso ao que foram obtidos.

Exemplo:
a) (18)10 = ( )2
b) (25)10 = ( )2
Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 12 / 23
Representação Numérica

Mudança de base decimal para a base binária

Procedimento: já, para transformar um número fracionário na base 10 para a base


2 utiliza-se o método das multiplicações sucessivas.

1 Multiplica-se o número fracionário por 2.


2 Do resultado do passo “1.”, a parte inteira é o primeiro dı́gito binário.
3 Do resultado do passo “2.”, a parte fracionária é novamente multiplicada por
2.
4 Continua-se o processo até que a parte fracionária seja nula.

Exemplo:
a) (0, 1875)10 = ( )2
b) (0, 6)10 = ( )2
Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 13 / 23
Erro Relativo, Erro Absoluto e Percentual

Erro Relativo, Erro Absoluto e Percentual

A diferença entre o valor exato (x) e o valor aproximado (x̄) no cálculo


computacional pode ser medida pelo erro absoluto ou pelo erro relativo.
O erro absoluto EA é definido como

EA = |x − x̄| (4)

e o erro relativo ER
|x − x̄|
ER = (5)
|x|

onde x é o valor verdadeiro e x̄ é o valor aproximado.

EP = ER × 100 (6)
Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 14 / 23
Erro Relativo, Erro Absoluto e Percentual

Exemplo

Determine o erro absoluto e o erro relativo e o número de dı́gitos significativos


22
exatos de x = em relação a x̄ = π.
7

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 15 / 23


Erro Relativo, Erro Absoluto e Percentual

Erro de Arredondamento

Os erros de arredondamento são causados pela limitação dos dispositivos em-


pregados no cálculo numérico como, por exemplo, uma régua de cálculo que
possui uma limitação geométrica, uma calculadora eletrônica com número de
dı́gitos limitado no “display” ou mesmo um computador com o erro de repre-
sentação de um número decimal no seu equivalente binário.

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 16 / 23


Erro Relativo, Erro Absoluto e Percentual

Exemplo

O número 0, 6 possui representação decimal finita, mas representação binária


infinita:
(0, 6)10 = (0, 1001100110011 . . .)2 .

Situações como esta podem gerar erros de arredondamento nas operações


aritméticas de ponto flutuante.

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 17 / 23


Erro Relativo, Erro Absoluto e Percentual

Exemplo

O número π é irracional e sua representação decimal tem infinitos dı́gitos, mas a


máquina armazena e apresenta apenas uma quantidade finita de dı́gitos.
O MATLAB realiza cálculos usando precisão de 52 dı́gitos binários e apresenta
seus resultados arredondados em, no máximo, 16 dı́gitos decimais. Faça o teste no
programa com format long.

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 18 / 23


Erro Relativo, Erro Absoluto e Percentual

Erro de Truncamento

São erro provenientes da utilização de processos que deveriam ser infinitos ou


muito grandes para a determinação de um valor e que, por razões práticas, são
truncados.

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 19 / 23


Erro Relativo, Erro Absoluto e Percentual

Séries de Taylor

Considere a expansão da função exponencial em séries de potência da forma:

x2 x3
ex = 1 + x + + + ... (7)
2! 3!

Escolhemos aproximar a série infinita por uma série contendo três termos, ou seja:

x2
ex ≈ 1 + x + (8)
2!

Não importa a quantidade de algarismos significativos que utilizemos no cálculo


de e x pela série truncada, o resultado será sempre aproximado e, portanto, sempre
terá um erro, chamado erro de truncamento.

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 20 / 23


Erro Relativo, Erro Absoluto e Percentual

Exemplo

Calcule o valor numérico de e 1 = e (número de Euler), empregando a série


truncada de 2a ordem e calcule os erros absoluto e relativo sabendo que o valor
exato do número de Euler com quatro algarismo significativos é igual a 2, 718.
(Resp.: 0, 218 e 8%)

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 21 / 23


Aritmética de Ponto Flutuante

Aritmética de Ponto Flutuante

O sistema de aritmética de ponto flutuante é utilizado por computadores para


representar um número real. Nesse sistema, o número r será representado na
forma (normalizado):
±(.d1 d2 . . . dt ) × β e

onde β é a base em que a máquina opera; t é o número de dı́gitos na mantissa;


0 ≤ dj ≤ (β − 1), j = 1, . . . , t, d1 6= 0; e é o expoente no intervalo [l, u].
Em qualquer máquina, apenas um subconjunto dos números reais é representado
exatamente, e, portanto, a representação de um número será realizada através de
truncamento ou de arredondamento.
Exemplo: (60, 683)10 = 0, 50683 × 102 e (0, 00001101)2 = 0, 1101 × 2−4

Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 22 / 23


Aritmética de Ponto Flutuante

Exemplo

Considere uma máquina que opera no sistema: β = 10; t = 3; e ∈ [−5, 5].

a) Qual a forma da representação numérica desse sistema?

b) Qual o menor número, em valor absoluto, representado nesta máquina?

c) Qual o maior número, em valor absoluto, representado nesta máquina?

d) Se x = 235, 89, qual é a representação desse número se for usado o


arredondamento? E se for usado o truncamento?

e) Se x = 0, 345 × 10−7 , qual é a representação desse número na máquina em


questão?

f) Se x = 0, 875 × 109 , qual é a representação desse número na máquina em


questão?
Elisângela Pinto Francisquetti (2017) Erros Computacionais 2017 23 / 23

Você também pode gostar