La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

UNIDAD III: ERRORES Hemos desarrollado:

Presentaciones similares


Presentación del tema: "UNIDAD III: ERRORES Hemos desarrollado:"— Transcripción de la presentación:

1 UNIDAD III: ERRORES Hemos desarrollado:
Sistemas numéricos: decimal, binario y hexadecimal. Representación interna de datos: números y caracteres. Presentaremos hoy: Nociones básicas de errores. Nociones básicas de errores.

2 En esta UNIDAD comenzamos a introducirnos en los:
MÉTODOS NUMÉRICOS Situación REAL NO SIEMPRE se requiere una RESPUESTA EXACTA MODELO MATEMÁTICO para describir y analizar APROXIMACIÓN SOLUCIÓN ANALÍTICA: Puede NO tener Puede ser DIFÍCIL o COSTOSA (objetivos) MÉTODOS NUMÉRICOS Una SOLUCIÓN APROXIMADA al PROBLEMA ORIGINAL

3 MÉTODO NUMÉRICO OBJETIVO Resolver problemas numéricos COMPLEJOS utilizando operaciones aritméticas SIMPLES. Conjunto FINITO de reglas o instrucciones bien definidas, tal que, siguiéndolas paso a paso se obtiene la solución a un dado problema. ALGORITMO RECORDEMOS MÉTODO NUMÉRICO Es un ALGORITMO diseñado para dar respuesta problema con una PRECISIÓN prescripta. NUMÉRICA a un DIREMOS CÁLCULO NUMÉRICO EVALÚA los MÉTODOS NUMÉRICOS diseñados. OBJETIVO

4 ¿Qué tanto ERROR se ha introducido?
DIREMOS El CÁLCULO de un dado MÉTODO NUMÉRICO dará NÚMEROS que se APROXIMAN a los que se obtendrían aplicando la SOLUCIÓN ANALÍTICA de un problema, en el caso que existiera. NOS PREGUNTAMOS Si el cálculo aproxima a la solución “exacta”: ¿Qué tan PRECISOS (próximos a la solución “exacta”) son los resultados? O ¿Qué tanto ERROR se ha introducido?

5 NOCIONES BÁSICAS DE ERRORES
TRATAMIENTO INFORMACIÓN RESUMIMOS ENTRADA INFORMACIÓN PROCESO SALIDA DATOS MÉTODO NUMÉRICO RESULTADOS ERROR ERROR ERROR FUENTES DE ERROR Distintos ERRORES en cada ETAPA. Los ERRORES se PROPAGAN dando el ERROR TOTAL. ¿Cómo MEDIMOS el ERROR?

6 MAGNITUD DEL ERROR CUANTIFICAMOS el ERROR:
Siendo VA una aproximación de VV, y VV el valor real, entonces: ERROR ABSOLUTO e = | VA – VV | ERROR RELATIVO ABSOLUTO eR = | ( VA – VV ) / VV | con la condición VV ≠ 0 ERROR PORCENTUAL ABSOLUTO eP = 100.| ( VA – VV ) / VV |(%) con la condición VV ≠ 0

7 VA es una aproximación a VV con d CIFRAS SIGNIFICATIVAS
MEDIR la CONFIABILIDAD de un VALOR NUMÉRICO Siendo VA una aproximación de VV (de la definición de ERROR RELATIVO) Si d es el mayor número natural tal que | ( VA – VV ) / VV | < 10-d/2 VA es una aproximación a VV con d CIFRAS SIGNIFICATIVAS EJEMPLOS VA = 3.14 y VV =  |(VA – VV)/VV| = < 10-2/2 VA es una aproximación a VV con 2 cifras significativas. VA = y VV =  |(VA – VV)/VV| = < 10-5/2 VA es una aproximación a VV con 5 cifras significativas. VA = y VV =  |(VA – VV)/VV| = 0.25 < 10-0/2 VA es una aproximación a VV con 0 cifras significativas.

8 FUENTES DE ERROR ERRORES en el CÁLCULO al implementar en MÁQUINA el MÉTODO. Es decir: Tiempo PROCESO MÉTODO NUMÉRICO ALGORITMO COMPUTACIONAL Espacio INTENCIONALMENTE al usar un ALGORITMO COMPUTACIONAL Introducimos restricciones: TIEMPO FINITO (ALGORITMO) ESPACIO FINITO (COMPUTADORA) RIGUROSAMENTE: FINITO no alcanza. FINITO debe entenderse como RAZONABLE. ERRORES ERROR DE TRUNCAMIENTO (tiempo). ERROR DE REDONDEO (espacio).

9 NO PODEMOS IMPLEMENTAR EL LÍMITE ANALÍTICO
FUENTES DE ERROR EN EL ALGORITMO COMPUTACIONAL ERROR DE TRUNCAMIENTO SURGEN debido a la limitación en TIEMPO. Debemos realizar un número finito de acciones. EJEMPLOS: Evaluar funciones con la Serie de Taylor. Proceso iterativo convergente. Evaluar por intervalos. TRUNCAR Faltará evaluar (ERROR) términos, iteraciones o intervalos TRUNCADOS. NO PODEMOS IMPLEMENTAR EL LÍMITE ANALÍTICO

10 FUENTES DE ERROR EN EL ALGORITMO COMPUTACIONAL
ERROR DE REDONDEO SURGEN debido a la limitación en ESPACIO (la memoria ocupa espacio). Los números reales se representan por una INFINIDAD de dígitos. En MÁQUINA sólo podemos tener un representación FINITA. X = ± 0, d1 d2 d3 …. dm x 10n , 1≤d1≤9 y 0≤di≤9 d1 d2 d3 …. dm: mantisa n: exponente Trabajamos con: fl(x) = ± 0, d1 d2 d3 …. dk x 10n Tenemos almacenado un REDONDEO del número real que difiere (ERROR) del número real.

11 REDONDEO TRUNCADO El redondeo truncado consiste en truncar el resultado de una operación al número de cifras significativas que se estén utilizando. Por ejemplo sí redondeamos 7/9 a 4 cifras significativas tenemos REDONDEO SIMÉTRICO El redondeo simétrico consiste en aumentar en uno la última cifra retenida si la primera cifra descartada está entre 5 y 9, o dejarla igual si la primera cifra descartada está entre 0 y 4. Ejemplo: 1/3 + 2/3 = 1, su resolución mediante la calculadora puede llevarnos a un resultado diferente. Si realizamos la suma empleando únicamente 4 cifras significativas se obtiene = (redondeo truncado) = 1.000 (redondeo simétrico) Errores

12 DISMINUIR UNA COMPONENTE DE ERROR CONDUCE A UN INCREMENTO EN LA OTRA
ERROR NUMÉRICO TOTAL ERROR DE TRUNCAMIENTO ERROR NUMÉRICO TOTAL ERROR DE REDONDEO Error de truncamiento Agregando términos, iteraciones o disminuyendo el intervalo. Significa número de operaciones Error de redondeo DISMINUIR UNA COMPONENTE DE ERROR CONDUCE A UN INCREMENTO EN LA OTRA

13 There are 10 types of people in the world: those who understand binary
those who don't. 2

14 Conjunto de todos los números reales positivos de la forma
n pertenece al conjunto {-3,-2,-1,0,1,2,3,4}. { x 2-3, x 2-3, … , x 24, x 24} Mantisa Exponente n=-3 n=-2 n=-1 n=0 n=1 n=2 n=3 n=4 0.1000(2) 0.0625 0.125 0.25 0.5 1 2 4 8 0.1001(2) 0.5625 1.125 2.25 4.5 9 0.1010(2) 0.3125 0.625 1.25 2.5 5 10 0.1011(2) 0.6875 1.375 2.75 5.5 11 0.1100(2) 0.1875 0.375 0.75 1.5 3 6 12 0.1101(2) 0.8125 1.625 3.25 6.5 13 0.1110(2) 0.4375 0.875 1.75 3.5 7 14 0.1111(2) 0.9375 1.875 3.75 7.5 15

15 Por ejemplo que pasaría si en nuestra computadora de 4 cifras como describimos en los párrafos anteriores se realiza la operación (1/10 + 1/5) + 1/6? . Supongamos además que nuestra computadora redondea todos los números reales al número binario más próximo de los que dispone. La computadora debe decidir ahora cómo almacenar el número (2) x Supongamos que se redondea como (2) x El paso siguiente es

16 Equivalente a un error del 7% aproximadamente !!...
Ahora la computadora decide como almacenar el número (2) x 2-1. Puesto que suponemos que redondea, almacena (2) x 20 . Por lo tanto, la solución a nuestro problema original es El error en el cálculo efectuado por la computadora es Equivalente a un error del 7% aproximadamente !!... (1/10 + 1/5) + 1/6 =? 1/10 + (1/5 + 1/6) ….

17 Utilizando polinomios de Taylor analice el valor de exp(x) en funcion del numero de términos retenidos en la serie exp(1) (6 cifras significativas): Al iniciar esta UNIDAD hemos comenzado a introducirnos en los MÉTODOS NUMÉRICOS. Como dijimos en la INTRODUCCIÓN al curso: En una situación real lo que se requiere no es siempre una respuesta exacta a un problema, sino más bien una respuesta aproximada con una precisión prescrita. De hecho para describir y analizar situaciones reales siempre proponemos modelos, que en mayor o menos medida son simplificaciones al problema real. Una gran cantidad de estos modelos matemáticos o bien no tienen una solución analítica exacta o no es fácil (o acorde a los objetivos) el hallarla. Es en estos casos donde los MÉTODOS NUMÉRICOS proporcionan una solución aproximada al problema original. El objetivo de MÉTODOS NUMÉRICOS es resolver problemas numéricos complejos utilizando operaciones simples de la aritmética. Entonces, recordando nuestra definición de ALGORITMO dada en las primeras clases, diremos que un MÉTODO NUMÉRICO es un ALGORITMO diseñado para dar respuesta numérica a un problema con una precisión prescrita. El CÁLCULO NUMÉRICO evalúa los MÉTODOS NUMÉRICOS diseñados. De este modo el CÁLCULO de un dado MÉTODO NUMÉRICO nos dará números que se aproximan a los que se obtendrían aplicando la solución analítica de un problema.

18 Ejemplo ERROR DE REDONDEO
x x + 1 = 0 Raíces aproximadas (7 cifras significativas): x1 = , x2 = Soluciones: Usando aritmética de 4 cifras (para forzar el error): Al iniciar esta UNIDAD hemos comenzado a introducirnos en los MÉTODOS NUMÉRICOS. Como dijimos en la INTRODUCCIÓN al curso: En una situación real lo que se requiere no es siempre una respuesta exacta a un problema, sino más bien una respuesta aproximada con una precisión prescrita. De hecho para describir y analizar situaciones reales siempre proponemos modelos, que en mayor o menos medida son simplificaciones al problema real. Una gran cantidad de estos modelos matemáticos o bien no tienen una solución analítica exacta o no es fácil (o acorde a los objetivos) el hallarla. Es en estos casos donde los MÉTODOS NUMÉRICOS proporcionan una solución aproximada al problema original. El objetivo de MÉTODOS NUMÉRICOS es resolver problemas numéricos complejos utilizando operaciones simples de la aritmética. Entonces, recordando nuestra definición de ALGORITMO dada en las primeras clases, diremos que un MÉTODO NUMÉRICO es un ALGORITMO diseñado para dar respuesta numérica a un problema con una precisión prescrita. El CÁLCULO NUMÉRICO evalúa los MÉTODOS NUMÉRICOS diseñados. De este modo el CÁLCULO de un dado MÉTODO NUMÉRICO nos dará números que se aproximan a los que se obtendrían aplicando la solución analítica de un problema. Calculamos x1 y x2

19 Ejemplo ERROR DE TRUNCAMIENTO
Considere la serie de Taylor para el seno(x) Para pequeños valores de x, solo un reducido numero de términos es necesario para obtener un “buena solución”. Valor verdadero = Valor suma + Error de truncamiento El valor del Error de truncamiento depende de x y del número de términos incluidos en Valor suma

20 En el caso de utilizar 5 términos siempre
Se puede demostrar que para cualquier serie alternante convergente el error de truncamiento es menor que el primer término despreciado Nótese que valores de x mayores a 0.5 aprox. el error aumenta rápidamente cuando x tiende a 1. El error máximo es de 3.54e-06, lo cual esta en acuerdo con el error de truncamiento expresado anteriormente.

21 Si usamos 15 términos … El error por redondeo está controlando el comportamiento. Nótese de todas formas se logra todavía un resultado aceptable en el valor de la serie

22 sin(pi/6) sin(13pi/6) Error de truncamiento Potencia .vs. factorial
(x=13pi/6) sin(13pi/6) potencia (x=pi/6)

23

24 TRES IMPORTANTES CONSTANTES EN LA COMPUTADORA
Estos tres valores definen el rango de números disponibles y la precisión de nuestra computadora realmax := máximo número (normalizado)   1.8E+308 realmin := minimo número (normalizado)   2.2E-308  valor positivo mas pequeño de forma tal que sumado a 1 se obtenga como resultado un valor mayor que 1 eps =  = 0.00…..12 x 20 = 2-52  2.2E-16 # número de dígitos binarios = - log2(eps) = 52 # número de dígitos decimales = - log10(eps)  15.6

25 PROGRAM MACHINE_EPSILON
IMPLICIT NONE REAL * 8 :: machEps = 1, tmp =1 PRINT *, "currEp, 1 + currEp" DO PRINT *, machEps, tmp + machEps IF (tmp + machEps == 1.0) EXIT machEps = machEps/2.0 END DO machEps = machEps*2 PRINT * PRINT *, "Calculated Machine epsilon: ", machEps ! Verify our calculation via the intrinsic F95 function EPSILON() PRINT *, "EPSILON(x) = ", EPSILON(machEps) END PROGRAM MACHINE_EPSILON

26 TRES ERRORES DE REDONDEO CRÍTICOS
Cancelación sustracción de dos números casi iguales Underflow resultado más pequeño que realmin Overflow resultado más grande que realmax Al iniciar esta UNIDAD hemos comenzado a introducirnos en los MÉTODOS NUMÉRICOS. Como dijimos en la INTRODUCCIÓN al curso: En una situación real lo que se requiere no es siempre una respuesta exacta a un problema, sino más bien una respuesta aproximada con una precisión prescrita. De hecho para describir y analizar situaciones reales siempre proponemos modelos, que en mayor o menos medida son simplificaciones al problema real. Una gran cantidad de estos modelos matemáticos o bien no tienen una solución analítica exacta o no es fácil (o acorde a los objetivos) el hallarla. Es en estos casos donde los MÉTODOS NUMÉRICOS proporcionan una solución aproximada al problema original. El objetivo de MÉTODOS NUMÉRICOS es resolver problemas numéricos complejos utilizando operaciones simples de la aritmética. Entonces, recordando nuestra definición de ALGORITMO dada en las primeras clases, diremos que un MÉTODO NUMÉRICO es un ALGORITMO diseñado para dar respuesta numérica a un problema con una precisión prescrita. El CÁLCULO NUMÉRICO evalúa los MÉTODOS NUMÉRICOS diseñados. De este modo el CÁLCULO de un dado MÉTODO NUMÉRICO nos dará números que se aproximan a los que se obtendrían aplicando la solución analítica de un problema.

27 constantes de la computadora
errores de redondeo críticos Algunos datos … 25 de Febrero Falla en el sistema de defensa Patriot (Irak) Reporte GAO/IMTEC Problema de software razón acumulación de errores de redondeo. ( 4 de Junio El cohete Ariane se auto destruye la corto tiempo del despegue. Causa del desastre un error de overflow. ( 1997 un error de redondeo es descubierto en los procesadores Pentium-II. Problema no solo de imagen de la empresa (INTEL) sino el costo del reemplazo de un gran numero de procesadores defectuosos. (x86.ddj.com/secrets/dan0441.htm) Al iniciar esta UNIDAD hemos comenzado a introducirnos en los MÉTODOS NUMÉRICOS. Como dijimos en la INTRODUCCIÓN al curso: En una situación real lo que se requiere no es siempre una respuesta exacta a un problema, sino más bien una respuesta aproximada con una precisión prescrita. De hecho para describir y analizar situaciones reales siempre proponemos modelos, que en mayor o menos medida son simplificaciones al problema real. Una gran cantidad de estos modelos matemáticos o bien no tienen una solución analítica exacta o no es fácil (o acorde a los objetivos) el hallarla. Es en estos casos donde los MÉTODOS NUMÉRICOS proporcionan una solución aproximada al problema original. El objetivo de MÉTODOS NUMÉRICOS es resolver problemas numéricos complejos utilizando operaciones simples de la aritmética. Entonces, recordando nuestra definición de ALGORITMO dada en las primeras clases, diremos que un MÉTODO NUMÉRICO es un ALGORITMO diseñado para dar respuesta numérica a un problema con una precisión prescrita. El CÁLCULO NUMÉRICO evalúa los MÉTODOS NUMÉRICOS diseñados. De este modo el CÁLCULO de un dado MÉTODO NUMÉRICO nos dará números que se aproximan a los que se obtendrían aplicando la solución analítica de un problema. Errores

28 Ejemplo ERROR DE TRUNCAMIENTO
Compare el resultado “exacto” (provisto por la función de librería) de: = con el que se obtiene al integrar los primeros términos de la serie asociada al integrando. Problema para el laboratorio Escriba un programa que le permita calcular el valor del coseno aproximándolo por su desarrollo en polinomios de Taylor alrededor de cero en orden creciente desde 1 hasta 4. Realice los cálculos para valores cercanos a 0, /2 y /4. Al iniciar esta UNIDAD hemos comenzado a introducirnos en los MÉTODOS NUMÉRICOS. Como dijimos en la INTRODUCCIÓN al curso: En una situación real lo que se requiere no es siempre una respuesta exacta a un problema, sino más bien una respuesta aproximada con una precisión prescrita. De hecho para describir y analizar situaciones reales siempre proponemos modelos, que en mayor o menos medida son simplificaciones al problema real. Una gran cantidad de estos modelos matemáticos o bien no tienen una solución analítica exacta o no es fácil (o acorde a los objetivos) el hallarla. Es en estos casos donde los MÉTODOS NUMÉRICOS proporcionan una solución aproximada al problema original. El objetivo de MÉTODOS NUMÉRICOS es resolver problemas numéricos complejos utilizando operaciones simples de la aritmética. Entonces, recordando nuestra definición de ALGORITMO dada en las primeras clases, diremos que un MÉTODO NUMÉRICO es un ALGORITMO diseñado para dar respuesta numérica a un problema con una precisión prescrita. El CÁLCULO NUMÉRICO evalúa los MÉTODOS NUMÉRICOS diseñados. De este modo el CÁLCULO de un dado MÉTODO NUMÉRICO nos dará números que se aproximan a los que se obtendrían aplicando la solución analítica de un problema.

29 Ejemplo ERROR DE REDONDEO
Resolver la ecuación cuadrática x x + 1 = 0 Raíces aproximadas (7 cifras significativas): x1 = , x2 = Problema para el laboratorio Escriba un programa para sumar diez mil veces a la unidad usando simple precisión. Compare el resultado con el que se obtiene si implementa una estrategia de agrupamiento o si lo resuelve utilizando doble precisión. Al iniciar esta UNIDAD hemos comenzado a introducirnos en los MÉTODOS NUMÉRICOS. Como dijimos en la INTRODUCCIÓN al curso: En una situación real lo que se requiere no es siempre una respuesta exacta a un problema, sino más bien una respuesta aproximada con una precisión prescrita. De hecho para describir y analizar situaciones reales siempre proponemos modelos, que en mayor o menos medida son simplificaciones al problema real. Una gran cantidad de estos modelos matemáticos o bien no tienen una solución analítica exacta o no es fácil (o acorde a los objetivos) el hallarla. Es en estos casos donde los MÉTODOS NUMÉRICOS proporcionan una solución aproximada al problema original. El objetivo de MÉTODOS NUMÉRICOS es resolver problemas numéricos complejos utilizando operaciones simples de la aritmética. Entonces, recordando nuestra definición de ALGORITMO dada en las primeras clases, diremos que un MÉTODO NUMÉRICO es un ALGORITMO diseñado para dar respuesta numérica a un problema con una precisión prescrita. El CÁLCULO NUMÉRICO evalúa los MÉTODOS NUMÉRICOS diseñados. De este modo el CÁLCULO de un dado MÉTODO NUMÉRICO nos dará números que se aproximan a los que se obtendrían aplicando la solución analítica de un problema.


Descargar ppt "UNIDAD III: ERRORES Hemos desarrollado:"

Presentaciones similares


Anuncios Google