Вы находитесь на странице: 1из 9

Aproximación y error

Las técnicas numéricas son aproximaciones a las soluciones cerradas analíticas de los problemas.
Esas aproximaciones surgen de la utilización de modelos los cuales deben suministrar una buena
aproximación, pero no están excentos de contener desviaciones sistemáticas o aleatorias. Las
primeras en general conducen a buscar un nuevo modelo que no contenga la desviación sistemática
mientras las desviaciones aleatorias podrán invalidar el modelo si no son su…cientemente cercanas
a la solución busada. Suele decirse que la solución aproximada debe ser su…cientemente exacta (el
valor promedio de varios intentos debe ser muy próximo al verdadero) y su…cientemente precisa
(los diferentes intentos deben estar próximos entre si). Las técnicas numéricas requieren que se
identi…quen, cuanti…quen y minimicen los errores.
En los métodos numéricos se van a distinguir, por su origen, principalmente tres tipos de errores:

errores inherentes: debidos a la variabilidad de los fenómenos caracterizados por cantidades


físicas medidas, las cuales son afectadas por la incerteza

errores de corte y redondeo: se originan porque las computadoras almacenan solo un


número …nito de cifras signi…cativas de un número

errores de truncamiento: se producen al reemplazar una formulación matemática exacta


por una aproximación numérica.

ERROR ABSOLUTO (E) es la diferencia o distancia que hay entre dos resultados donde uno
de ellos es el verdadero Vv y otro valor aproximado Va .

E = Vv Va

La de…nición dada tiene como defecto que no tiene en cuenta la magnitud de la cantidad, por lo cual
no se tiene una idea clara de la importancia del error en lo que se está calculando o midiendo. Para
que el error re‡eje su importancia se normaliza su valor respecto del valor verdadero obteniendo el
error relativo:
E
e =
Vv
Vv Va
=
Vv
el error relativo suele ser expresado como porcentaje (%). Hay casos en que el valor verdadero es
conocido, porque se tiene la solución matemática exacta, pero en la mayoría de los casos en los
cuales se utilizan técnicas numéricas se desconoce el valor verdadero, en estos casos se reemplaza
al valor verdadero por la mejor aproximación con que se cuente obteniendose un error relativo
aproximado.
En términos generales no interesa el signo del error (positivo si es por exceso y negativo si fuera
por defecto) y en general se trabaja con el valor absoluto del error relativo y se busca sea menor
que un cierto error eas (que permita obtener n cifras signiticativas no afectadas por el error) valor
en general …jado por el usuario:
jej < eas = 0:5 102 n

Errores de corte y redondeo


Este tipo de error se debe a la discrepancia que se origina por omitir cifras signi…cativas. Las
computadoras guardan un número …jo (…nito) de cifras signi…catiavas, por lo cual los números
irracionales y muchos reales y aún racionales no tienen una representación exacta. Esto además es

1
s

16 bits

afectado porque las computadoras trabajan en base 2 y no simpre es posible representar números
exactos de la base 10 en la base dos con un limitado número de dígitos.
La unidad básica de información se denomina palabra y está formada por una cadena de dígitos
binarios (0,1) denominados bits.
Sistema numérico
Un sistema numérico es una convención para representar cantidades. Debido a que los seres
humanos tenemos 10 dedos en las manos y otros tantos en los pies es que el sistema decimal o de
base diez es el más utilizado pero hay otros como el binario, el sexagesimal, etc.. Si la cantidad a
representar es grande, se utiliza una combinación de dígitos donde la magnitud está dada por la
posición o valor de lugar.
Por ejemplo, si tenemos que representar un número 12528 en la base diez tendremos:

12528 = 1 104 + 2 103 + 5 102 + 2 101 + 8 100


= 10000 + 2000 + 500 + 20 + 8
= 12528 (base diez)

y el número 75 en la base dos:

75 = 1 20 + 1 21 + 0 22 + 1 23 + 0 24 + 0 25 + 1 26
= 1 + 2 + 0 + 8 + 0 + 0 + 64
= 1001011 (base dos)

Representación de números enteros en una computadora (integer de Fortran)

Un número entero de 16 bits guarda en el primer bit s el signo del número y en los restantes 15
lugares el número. Si el primer valor es un cero el número es positivo pues ( 1)s = ( 1)0 = 1 si el
primer bit es uno entonces el número es negativo ya que ( 1)s = ( 1)1 = 1. El mínimo número
entero posible de representar estará dado por dieciseis unos:

Zmin = 1 214 + 1 213 + 1 212 + 1 211 + 1 210 + 1 29 + 1 28 + 1 27


+1 26 + 1 25 + 1 24 + 1 23 + 1 22 + 1 21 + 1 20

Zmin = 32767
El máximo valor posible de tepresentar estará dado por un cero seguido de 15 unos, pero estaríamos
teniendo en cuenta 0, que carece de sentido, por lo cual se adopta:

32768 Z 32767

Representación en punto ‡otante (real de Fortran)

2
ke bits k bits

s se exponente mantisa

n bits

Esta representación se utiliza para los números reales y para los enteros que se encuentran fuera
del rango. Para representar un número en punto ‡otante primero se lo normaliza, es decir se corre
la coma (punto) decimal de modo tal que la parte entera sea 0 y el primer dígito decimal sea 6= 0
y simutaneamente se adecúa el exponente con lo cual la cantidad se expresará:

m be

0:d1 d2 d3 :::dk be
1 d1 9 (por la normalización)
0 di 9 con i = 2::k

donde m es la mantisa (fraccionaria) que está formada por los dígitos d1 a dk , b es la base del
sistema numérico y e el correspondiente exponete (entero). Si la base es diez entonces:

0:d1 d2 d3 :::dk 10n


1 d1 9 0 di 9

Una variable real (kind=4) (single precision) utiliza 32 bits para representar cantidades, 1 bit
para el signo del número (s), 8 dígitos para el exponente (ke = 8) -el primero para el signo del
exponente (se )- y 23 bits para la mantisa (k = 23) (en el rango 1:17549435 10 38 a 3:40282347
1038 corresponde a cantidades con 7 dígitos). Una variable real (kind=8) (double precision) utiliza
64 bits para representar cantidades, 1 bit para el signo del número, 11 dígitos para el exponente
(ke = 11) -el primero para el signo del exponente- y 52 bits (k = 52) para la mantisa (en el rango
2:2250738585072013 10 308 a 1:7976931348623158 10308 corresponde a cantidades con 15 dígi-
tos).
IMPORTANTE se cuenta con un rango limitado para representar cantidades, si el número es
más grande que el que se puede representar se tiene un error de desbordamiento conocido como
over‡ow y si es más pequeño que el más pequeño que es posible de representar se produce un error
de under‡ow (también conocido como “agujero alrededor del cero”). Además hay un número …nito
…jo de cantidades que pueden representarse dentro de cada rango 10n ; 10n+1 lo que lleva a que se
tiene un grado de presición limitado. El intervalo entre dos números consecutivos diferentes posibles
de ser representados aumenta cuando crece la magnitud de la cifra, esto permite guardar una cierta
cantidad de dígitos signi…cativos y los errores cometidos al representar la cifra son proporcionales
a la magnitud de la misma.
Si se utilizan k cifras decimales y truncamiento para la representación en la máquina de un
número x
x = 0:d1 d2 :::dk dk+1 :::dm 10n
su representación en punto ‡otante será

f l(x) = 0:d1 d2 :::dk 10n

El error relativo de represenación del número x entonces será:

3
jx f l(x)j j0:d1 d2 :::dk dk+1 :::dm 10n 0:d1 d2 :::dk 10n j
e = =
jxj j0:d1 d2 :::dk dk+1 :::dm 10n j
0:dk+1 dk+2 :::dm 10 n k
=
j0:d1 d2 :::dk dk+1 :::dm 10n j
j0:dk+1 dk+2 ::: j
= 10 k
j0:d1 d2 :::dk dk+1 :::j

Como d1 6= 0 el mínimo valor del denominador es 0:1. El numerador podrá ser como máximo
0:99999::: con lo cual el numerador tendrá como cota superior 1. En consecuencia

jx f l(x)j 1 k
e= 10 = 101 k
jxj 0:1
con lo cual se tiene, para una base b; que el valor absoluto de la mantisa estará limitado al rango:
1
m<1
b
Debido a la normalización de los números represenados en punto ‡otante y a que en cada rango
hay un número …nito …jo de cantidades diferentes posibles de ser representadas, se tiene que los
errores relativos de represenación están acotados, por las siguientes expresiones:

j xj
< por corte
jxj

j xj
< por corte y redondeo
jxj 2
siendo el valor conocido como “epsilon de la máquina”, el cual puede calcularse como:

= b1 t

donde b es la base del sistema numerico de la máquina (2) y t es el número de dígitos signi…cativos
de la mantisa (depende de la máquina y del tipo de variable seleccionado).
Los errores en la representación de cantidades tienen aplicaciones prácticas en métodos numéri-
cos, ya que pueden dar lugar a problemas como los siguientes:

si se busca la igualdad de números en punto ‡otante: ya que puede que no se cumpla nunca,

si el error admitido para la convergencia de un proceso es muy pequeño puede que no se


pueda obtener

En ambos casos se pueden tener problemas si la …nalización de un proceso iterativo es alguno


de los casos mencionados. Estos problemas pueden superarse si en vez de preguntar por la igualdad
se pregunta si la diferencia de dos cantidades es menor que una tolerancia y en el caso de tener que
establecer criterios de convergencia o de …nalización de un proceso iterativo utilizar algún criterio
que este formulado a partir del epsilon de la máquina.
Cuando lel error de redondeo es crítico, debe utilizarse precisión extendida (o doble precisión)
lo cual requiere de mayor espacio para el almacenamiento, se alargan los tiempos de ejecución de
los programas por ser mayor el número de cifras a tratar por lo cual debe utilizarse solo cuando
maximice la precisión y minimece el tiempo de ejecución.

4
Manipulación de números. Propagación de errores
Las manipulaciones aritméticas de los números en una computadora pueden introducir errores
adicionales de redondeo, en especial para las operaciones realizadas con cantidades representadas
en punto ‡otante.
Para las operaciones de suma y resta, el procedimiento que se realiza es el siguiente: se modi…ca
la mantisa del número con menor exponente de modo que ambos tengan el mismo exponente (de este
modo coinciden los valores de posición de los digitos de ambas cantidades) utilizando 2k dígitos
para ambas mantisas. Se suman (restan) las mantisas se normaliza el resultado (sin olvidar de
modi…car el exponente si fuera necesario correr el punto decimal) y se corta el mismo a k dígitos
para ser almacenado.
Para el producto y el cociente de dos cantidades el procedimiento para realizar la operación es:
los exponentes se suman (producto) o restan (cociente) y se multiplican o dividen las mantisas, uti-
lizando para ello 2k dígitos para el resultado, se normaliza el resultado (con las mismas precauciones
que para la suma y resta) y se corta la mantisa del resultado a k dígitos para almacenarlo.
Con este procedimiento se conserva la mayor cantidad posible de dígitos signi…cativos.
En lo que sigue se utilizará la siguiente nomenclatura:
a, b: valores verdaderos de las cantidades
a, b: valores aproximados a las cantiades a y b
s, r, p, c: valores exactos de las operaciones de suma, resta, producto y cociente respectivamente
s, r, p, c: valores aproximados a los resultados de las operaciones de suma, resta, producto y
cociente respectivamente

Propagación del error en la suma: los últimos dígitos del número más pequeño se perderán
y en ocasiones puede resultar que “no se sume”. Para a 0 y b 0:

s=a+b

s=a+b
el error absoluto

Es = s s
= (a + b) a+b
= (a a) + b b
= Ea + Eb + Ea+b

donde Ea+b es el error cometido al representar el resultado de la suma.

El error relativo será


Es s s
es = =
s s
Ea + Eb + Ea+b
=
s
Ea a Eb b Ea+b
= + +
a s b s s
a b Ea+b
es = ea + eb + (1)
s s s
como el error relativo de representación de las cantidades está acotado por el epsilon de la máquina
(j xj = jxj ), entonces los errores relativos están acotados por el epsilon de la máquina, a saber:
a a ja aj
ea =
a jaj

5
b b b b
eb =
b jbj
Ea+b jEa+b j
s jsj
reemplazando en (1) estas últimas expresiones y teniendo en cuenta que son valores absolutos y
además cotas, se obtiene:

a b Ea+b a b Ea+b
jes j ea + eb + ea + eb +
s s s s s s

a b Ea+b a b
jes j jea j + jeb j + + +
s s s s s
la cota del error relativo para la suma entonces:

a b
jes j + +1 3
s s

Propagación del error en la resta: cuando se tienen dos cantidades muy parecidas puede
resultar en una cancelación.
r=a b
r=a b
el error absoluto

Er = r r
= (a b) a b
= (a a) b b
= Ea Eb + Ea b

donde Ea b es el error cometido al representar el resultado de la resta.

El error relativo será


Er r r
er = =
r r
Ea Eb + Ea b
=
r
Ea a Eb b Ea b
= +
a r b r s
a b Ea b
es = ea
eb + (2)
r r r
como el error relativo de representación de las cantidades esta acotado por el epsilon de la máquina

a a ja aj
ea =
a jaj

b b b b
eb =
b jbj
Ea b jEa b j
r jrj

6
reemplazando en (2) estas últimas expresiones, se obtiene:

a b Ea b a b Ea b
jer j ea eb + ea + eb +
r r r r r r

a b Ea b a b
jer j jea j + jeb j + + +
r r r r r
la cota del error relativo para la resta entonces:

a b
jer j + +1
r r

Propagación del error en el producto


p=a b
p=a b
el error absoluto
Ep = p p

a = a Ea
b = b Eb

Ep = (a b) a b
= (a b) [(a Ea ) (b Eb )]
= (a b) [(a b) aEb bEa + Ea Eb ] + Ea b
= aEb + bEa + Ea Eb + Ea b

donde Ea b es el error cometido al representar el resultado del producro. Por ser Ea Eb mucho más
pequeño que los demás términos suele no ser tenido en cuenta , entonces una aproximación al error
será:
Ep ' aEb + bEa + Ea b
El error relativo para el producto:
Ep p p
ep = =
p p
aEb + bEa + Ea Eb + Ea b
=
p
aEb + bEa + Ea Eb + Ea b
=
a b
Eb Ea Ea Eb Ea b
= + + +
b a a b p
Ea b
es = ea + eb + ea eb + (3)
p
como el error relativo de representacion de las cantidades esta acotado por el epsilon de la máquina

a a ja aj
ea =
a jaj

7
b b b b
eb =
b jbj
Ea b jEa b j
p jpj
reemplazando en (3) estas últimas expresiones, se obtiene:

Ea b Ea b
jep j ea + eb + ea eb + jea j + jeb j + jea eb j +
p p

Ea b 2
jep j jea j + jeb j + jea j jeb j + + + +
p
la cota del error relativo para el producto entonces:

jep j 3 + 2
.3

Propagación del error en el cociente


a
c=
b
a
c=
b
el error absoluto
Ec = c c

a = a Ea
b = b Eb

a a
Ec =
b b
a (a Ea )
=
b (b Eb )
a (b Eb ) b (a Ea )
= + Ea=b
b (b Eb )
bEa aEb
= + Ea=b
b (b Eb )

donde Ea=b es el error cometido al representar el resultado del cociente. Por ser b2 bEb entonces
una aproximación al error será:
bEa aEb
Ec ' + Ea=b
b2

8
El error relativo será
Ec c c
ec = =
c c
bEa aEb
b(b Eb ) + Ea=b
=
c
bEa aEb a 1 Ea=b
= +
b (b Eb ) b c
bEa aEb b Ea=b
= +
b (b Eb ) a c
bEa aEb Ea=b
= +
a b 1 Eb c
b
bEa aEb Ea=b
= +
a b (1 eb ) a b (1 eb ) c
ea eb E a=b
= +
(1 eb ) c

ea eb Ea=b
ec = + + (4)
(1 eb ) (1 eb ) c
como el error relativo de representación de las cantidades esta acotado por el epsilon de la máquina

a a ja aj
ea =
a jaj

b b b b
eb =
b jbj
Ea=b Ea=b
c jcj
reemplazando en (4) estas últimas expresione, se obtiene:

ea eb Ea=b ea eb Ea=b
jec j + + + +
(1 eb ) (1 eb ) c (1 eb ) (1 eb ) c

jea j jeb j Ea=b


jec j + +
j(1 eb )j j(1 eb )j c
j(1 eb )j j1j + jeb j 1+
1 1 1
j(1 eb )j j1j jeb j 1
jea j jeb j Ea=b
jec j + + + +
j1j jeb j j1j jeb j c 1 1
la cota del error relativo para el cociente entonces:
2
3 3
jec j
1 1

Вам также может понравиться