Você está na página 1de 34

Introdução Sistema de Numeração Erros

Estudo dos erros

Samaherni Morais Dias

Departamento de Engenharia de Computação e Automação

Fevereiro de 2008

Samaherni M. Dias | Métodos Computacionais em Engenharia 1/25


Advertência

Este material pode conter erros de digitação.


Introdução Sistema de Numeração Erros

Sumário

1 Introdução

2 Sistema de Numeração

3 Erros

Samaherni M. Dias | Métodos Computacionais em Engenharia 3/25


Introdução Sistema de Numeração Erros

Breve histórico

Analise Numérica
O estudo dos logaritmos pode ser considerado como um
precursor da análise numérica;
A análise numérica, tal como é conhecida hoje em dia, é
posterior à II Guerra Mundial;
A astronomia, devido ao seu volume de cálculos, era uma das
áreas que mais necessitavam de máquinas de calcular;
Após os computadores, os cálculos de grande escala se
tornaram uma ferramenta importante na ciência.

Samaherni M. Dias | Métodos Computacionais em Engenharia 4/25


Introdução Sistema de Numeração Erros

Introdução

Os métodos numéricos envolvem procedimentos e fórmulas, que nos


levam a aproximação de um problema matemático por um problema
numérico.

Problema Modelo
Solução
Fı́sico Matemático

Samaherni M. Dias | Métodos Computacionais em Engenharia 5/25


Introdução Sistema de Numeração Erros

Motivação - Ariane 5

(04/06/1996 - Guiana Francesa - foguete Ariane 5)


O lançamento do Ariane 5 falhou, e 40s após a seqüência de
ignição o mesmo explodiu;
Erro de trajetória 36,7s após o lançamento;
Um erro na conversão dos dados de 64-bits para 16-bits;
Prejuı́zo: 7,5 bilhões de dólares.

Samaherni M. Dias | Métodos Computacionais em Engenharia 6/25


Introdução Sistema de Numeração Erros

Motivação - Patriot

(25/02/1991 - Guerra do Golfo - mı́ssil Patriot)


O Patriot falhou ao interceptar um mı́ssil Scud do Iraq e
dezenas de pessoas morreram;
Erro representação binária inadequada do valor 0,10;
A representação de 0,10 em 24-bits corresponde a
0,099999904632568359375;
Erro de 0,000000095367431640625;
Não parece ser muito mas após 100 horas o erro é 0,34s;
Tempo suficiente para o Scud viajar 500 metros.

Samaherni M. Dias | Métodos Computacionais em Engenharia 7/25


Introdução Sistema de Numeração Erros

Sistema decimal

Acredita-se que a popularidade deste sistema, seja pelo fato da fácil


associação dos sı́mbolos numéricos aos dedos das mãos, no inı́cio da
história do cálculo.

Caracterı́sticas
Compões-se de 10 algarismos (0,1,2,3,4,5,6,7,8,9);
Sistema posicional;
Não utilizado por sistemas computacionais.

Samaherni M. Dias | Métodos Computacionais em Engenharia 8/25


Introdução Sistema de Numeração Erros

Sistema decimal

275, 214 → 275, 21410


275, 21410 = 2 · 102 + 7 · 101 + 5 · 100 + 2 · 10−1 + 1 · 10−2 + 4 · 10−3

2 7 5,2 1 4

4 · 10−3 = 0 , 004
1 · 10−2 = 0 , 01
2 · 10−1 = 0 ,2
5 · 100 = 5
7 · 101 = 70
2 · 102 = 200
275 , 214

Samaherni M. Dias | Métodos Computacionais em Engenharia 9/25


Introdução Sistema de Numeração Erros

Sistema binário

O sistema binário já era conhecido na China uns 3000 a.C. (Livro
chinês chamado I Ching). Quarenta e seis séculos depois, Leibniz
(Matemático Alemão) redescobre o sistema binário.

Caracterı́sticas
Compões-se de 2 algarismos (0,1);
Sistema posicional;
Utilizado por sistemas computacionais.

Samaherni M. Dias | Métodos Computacionais em Engenharia 10/25


Introdução Sistema de Numeração Erros

Sistema binário

101, 011 → 101, 0112


101, 0112 = 1 · 22 + 0 · 21 + 1 · 20 + 0 · 2−1 + 1 · 2−2 + 1 · 2−3

1 0 1,0 1 1

1 · 2−3
0 · 2−2
1 · 2−1
0 · 20
1 · 21
1 · 22

Samaherni M. Dias | Métodos Computacionais em Engenharia 11/25


Introdução Sistema de Numeração Erros

Conversão binário-decimal

101, 011 → 101, 0112


101, 0112 = 1 · 22 + 0 · 21 + 1 · 20 + 0 · 2−1 + 1 · 2−2 + 1 · 2−3

1 0 1,0 1 1

1 · 2−3 = 0 , 125
1 · 2−2 = 0 , 25
0 · 2−1 = 0
1 · 20 = 1
0 · 21 = 0
1 · 22 = 4
5 , 37510

Samaherni M. Dias | Métodos Computacionais em Engenharia 12/25


Introdução Sistema de Numeração Erros

Conversão decimal-binário

2910 = 111012

29 2
28 14 2
1 14 7 2
0 6 3 2
1 2 1
1

Método das divisões sucessivas por 2

Samaherni M. Dias | Métodos Computacionais em Engenharia 13/25


Introdução Sistema de Numeração Erros

Conversão decimal-binário

2910 = 111012

29 2
28 14 2
1 14 7 2
0 6 3 2
1 2 1
1

Método das divisões sucessivas por 2

Samaherni M. Dias | Métodos Computacionais em Engenharia 13/25


Introdução Sistema de Numeração Erros

Conversão decimal-binário

2910 = 111012

29 2
28 14 2
1 14 7 2
0 6 3 2
1 2 1
1

Método das divisões sucessivas por 2

Samaherni M. Dias | Métodos Computacionais em Engenharia 13/25


Introdução Sistema de Numeração Erros

Conversão decimal-binário

2910 = 111012

29 2
28 14 2
1 14 7 2
0 6 3 2
1 2 1
1

Método das divisões sucessivas por 2

Samaherni M. Dias | Métodos Computacionais em Engenharia 13/25


Introdução Sistema de Numeração Erros

Conversão decimal-binário

2910 = 111012

29 2
28 14 2
1 14 7 2
0 6 3 2
1 2 1
1

Método das divisões sucessivas por 2

Samaherni M. Dias | Métodos Computacionais em Engenharia 13/25


Introdução Sistema de Numeração Erros

Conversão decimal-binário

2910 = 111012

29 2
28 14 2
1 14 7 2
0 6 3 2
1 2 1
1

Método das divisões sucessivas por 2

Samaherni M. Dias | Métodos Computacionais em Engenharia 13/25


Introdução Sistema de Numeração Erros

Conversão decimal-binário

0, 12510 = 0, 0012

0,125
x2
0,25
x2
0,50
x2
1,00

Método das multiplicações sucessivas por 2

Samaherni M. Dias | Métodos Computacionais em Engenharia 14/25


Introdução Sistema de Numeração Erros

Conversão decimal-binário

0, 12510 = 0, 0012

0,125
x2
0,25
x2
0,50
x2
1,00

Método das multiplicações sucessivas por 2

Samaherni M. Dias | Métodos Computacionais em Engenharia 14/25


Introdução Sistema de Numeração Erros

Conversão decimal-binário

0, 12510 = 0, 0012

0,125
x2
0,25
x2
0,50
x2
1,00

Método das multiplicações sucessivas por 2

Samaherni M. Dias | Métodos Computacionais em Engenharia 14/25


Introdução Sistema de Numeração Erros

Conversão decimal-binário

0, 12510 = 0, 0012

0,125
x2
0,25
x2
0,50
x2
1,00

Método das multiplicações sucessivas por 2

Samaherni M. Dias | Métodos Computacionais em Engenharia 14/25


Introdução Sistema de Numeração Erros

Conversão decimal-binário

29, 12510 = 2910 + 0, 12510 = 111012 + 0, 0012 = 11101, 0012

0,125
29 2 x2
28 14 2 0,25
1 14 7 2 x2
0 6 3 2 0,50
1 2 1 x2
1 1,00

Samaherni M. Dias | Métodos Computacionais em Engenharia 15/25


Introdução Sistema de Numeração Erros

Introdução aos Erros

Grupos Básicos
Erros de Arredondamento;
Erros de Modelagem;
Erros na definição dos modelos matemáticos;
Erros de incertezas nos dados;
Erros de Truncamento.

Samaherni M. Dias | Métodos Computacionais em Engenharia 16/25


Introdução Sistema de Numeração Erros

Erros de arredondamento

Caracterı́sticas
Erros de arredondamento são os erros originados devido ao
tamanho limitado da palavra do computador;
A diferença entre o resultado numérico e o exato é o erro de
arredondamento (acumulado).

 
d1 d2 dt
x = ± 1 + 2 + . . . + t · β exp
β β β

0 ≤ d1 ≤ β − 1; i = 1, 2, . . . , t

I ≤ exp ≤ S

Samaherni M. Dias | Métodos Computacionais em Engenharia 17/25


Introdução Sistema de Numeração Erros

Erros de arredondamento

 
3 4 5
0, 34510 = + + · 100
101 102 103

 
3 1 4 1 5
31, 41510 = 0, 31415 · 102 = + + + + · 102
101 102 103 104 105
 
1 0 1
510 3
= 1012 = 0, 101 · 2 = 1 + 2 + 3 · 23
2 2 2
 
1
410 = 1002 = 0, 1 · 23 = 1 · 23
2

Samaherni M. Dias | Métodos Computacionais em Engenharia 18/25


Introdução Sistema de Numeração Erros

Erros de arredondamento

Numa máquina de calcular cujo sistema de representação utilizado


tenha β = 2, t = 10, I = −15 e S = 15, o número 25 na base
decimal é, assim representado:
2510 = 110012 = 0, 11001 · 25 = 0, 11001 · 2101

 
1 1 0 0 1 0 0 0 0 0
+ + + + + + + + + · 2101
21 22 23 24 25 26 27 28 29 210

1100100000101
MANTISSA EXP

Samaherni M. Dias | Métodos Computacionais em Engenharia 19/25


Introdução Sistema de Numeração Erros

Erros de arredondamento

MANTISSA EXP
2510 = 0 1 1 0 0 1 0 0 0 0 0 0 0 1 0 1

3, 510 = 0, 111 · 210 → 0 1110000000 0 0010


−7, 12510 = −0, 111001 · 211 → 1 1110010000 0 0011
3273610 = 0, 1111111111 · 21111 → 0 1111111111 0 1111
−3273610 = −0, 1111111111 · 21111 → 1 1111111111 0 1111
010 = 0 · 20 → 0 0000000000 0 0000
0, 00001525910 = 0, 1 · 2−15 → 0 1000000000 1 1111
0, 00001528910 = 0, 1000000001 · 2−15 → 0 1000000001 1 1111

Samaherni M. Dias | Métodos Computacionais em Engenharia 20/25


Introdução Sistema de Numeração Erros

Erros de arredondamento

Se desejarmos representar o número 0,00001435, o qual é menor do que a menor


representação numérica positiva da máquina (0,000015259), ocorrerá um erro
de arredondamento.

1
Exatidao ≤
βt

Na máquina em questão temos: (β = 2 e t = 10), assim a exatidão da man-


tissa é 0, 0009766 o que significa dizer aproximadamente 3 dı́gitos significativos
corretos.

Samaherni M. Dias | Métodos Computacionais em Engenharia 21/25


Introdução Sistema de Numeração Erros

Erros na modelagem

Definição
É o erro cometido quando se escolhe um modelo inadequado
ou aproximado do sistema fı́sico.
Exemplo de erro na entrada de dados
1
d = d0 + v0 t + at 2
2
d → distancia percorrida
d0 → distancia inicial
v0 → velocidade inicial
t → tempo
a → aceleracao

Samaherni M. Dias | Métodos Computacionais em Engenharia 22/25


Introdução Sistema de Numeração Erros

Erros na modelagem

Definição
É o erro cometido quando se escolhe um modelo inadequado
ou aproximado do sistema fı́sico.
Suponha que um engenheiro queira determinar a altura de um edifı́-
cio e que para isso disponha apenas de uma bolinha de metal e um
cronômetro.

1
d =0+0·3+ · 9, 8 · 32
2
d = 44, 1m

se 3, 5s → d = 60m

Samaherni M. Dias | Métodos Computacionais em Engenharia 22/25


Introdução Sistema de Numeração Erros

Erros de truncamento

Erro de truncamento surge do fato de aproximar um problema de natureza con-


tinua em um problema de natureza discreta.

A função sen(x) pode ser obtida através de uma função chamada SENO baseada
na seguinte série de Taylor:
x3 x5 x7
SENO = x − + − + ...
3! 5! 7!
OBS: É possı́vel fazer com que o erro de truncamento seja menor ou igual ao
erro de arredondamento.

Samaherni M. Dias | Métodos Computacionais em Engenharia 23/25


Introdução Sistema de Numeração Erros

Série de Taylor

A série de Taylor (matemático Brook Taylor) é a representação de


uma função como um somatório de infinitos termos, calculados a
parti das derivadas desta função em um único ponto.


X f n (a)
f (a) + (x − a)n
n!
n=1

Samaherni M. Dias | Métodos Computacionais em Engenharia 24/25


Introdução Sistema de Numeração Erros

Propagação dos erros

Ocorre quando há, em uma máquina, cálculos que envolvem várias operações.
Nestes casos, aconselha-se a verificar a quantidade de dı́gitos significativos e a
ordem de prioridade para a realização dos cálculos.
Exemplo: para x1 = 0, 3491 · 104 e x2 = 0, 2345 · 100

(x2 + x1 ) − x1 = (0, 2345 · 100 + 0, 3491 · 104 ) − 0, 3491 · 104


= 0, 3491 · 104 − 0, 3491 · 104
= 0, 0000

x2 + (x1 − x1 ) = 0, 2345 · 100 + (0, 3491 · 104 − 0, 3491 · 104 )


= 0, 2345 · 100 + 0, 0000
= 0, 2345

Samaherni M. Dias | Métodos Computacionais em Engenharia 25/25