Logo Studenta

Análisis Numérico y Cienciasde la Computación

¡Este material tiene más páginas!

Vista previa del material en texto

Lección 1:
Análisis Numérico y Ciencias
de la Computación
ICI3140 Métodos Numéricos
Profesor : Dr. Héctor Allende-Cid
e-mail : hector.allende@ucv.cl
Computación Científica y Análisis Num.
� Computación Científica es la colección de herramientas, 
técnicas y teorías requeridas para resolver modelos 
matemáticos en ciencia e ingeniería usando un 
computador.
� La mayoría de estas herramientas, técnicas y teorías 
originalmente desarrolladas en matemáticas, fueron 
desarrolladas antes de la aparición de los computadores. 
A este conjunto de teorías y técnicas matemáticas se les 
llama Análisis Numérico y constituye una parte 
importante de la Computación Científica.
Computación Científica y Análisis Num.
� Sin embargo, el desarrollo de los computadores, hizo que 
muchos de los métodos numéricos pensados para 
resolver problemas a mano fueran optimizados para su 
uso con computadores o abandonados definitivamente. 
Ahora debían considerarse factores como:
� Lenguajes de programación
� Sistemas operativos
� Manejo de grandes cantidades de datos
� Correctitud de los programas
� Por lo tanto, la Computación Científica incluye teorías y 
herramientas del Análisis Numérico teniendo en 
consideración los aspectos técnicos del uso de 
computadores.
Aplicaciones
� Text mining (o minería de texto) tiene relación con la 
obtención de información relevante a partir de textos. 
Uno de los primeros enfoques propuestos en text mining
fue elVector Space Model(VSM), planteado por Gerard 
Salton. El método consiste en:
� Representar n documentos de texto con n vectores de 
documentos {d1,d2,…, dn}
� Crear la matriz : [d1|d2 | … | dn]
� Para la obtención de información, crear un vector query q.
� El objetivo es encontrar el documento di más cercano al vector q.
Aplicaciones
� La “cercanía” se mide utilizando:
� Por ejemplo, si se tienen los siguientes términos:
� T1: Bab(y, ies, y’s)
� T2: Child(ren’s)
� T3: Guide
� T4: Health
� T5: Home
� T6: Infant
� T7: Guide
� T8: Safety
� T9: Toddler
22
cos
i
i
T
ii
dq
dq
== θδ
Aplicaciones
� y los siguientes documentos:
� D1: Infant & Toddler First Aid
� D2:Babies & Children’s Room (For your Home)
� D3:Child Safety at Home
� D4: Your Baby’s Health & Safety: From Infant to Toddler
� D5:Baby Proofing Basics
� D6: Your Guide to Easy Rust Proofing
� D7: Beani Babies Collector’s Guide
� expresado en forma matricial se tiene:
Aplicaciones
� El vector q representa la query que busca al documento 
que tenga los términos Bab(y, ies, y’s) y Health. Se 
quiere encontrar el vector di más cercano a q, lo que 
implica que el ángulo entre ambos vectores debe ser 
(idealmente) igual a 0, y cos(0)=1, por lo tanto, el 
documento D4 es el más cercano.
Aplicaciones
� La computación científica muchas aplicaciones en el 
procesamiento de imágenes. Una de ellas es el uso 
directo de la descomposición de valor singular (SVD por 
sus siglas en inglés) para la compresión de imágenes. El 
procedimiento es muy simple. Consiste en el cálculo de la 
descomposición SVD de la imagen y luego utilizar sólo los 
valores singulares más significativos para reconstruirla 
usando las matrices obtenidas truncadas.
Aplicaciones
� En la siguiente figura (Porsche Boxter 2012) se muestran 
las imágenes obtenidas usando diferentes porcentajes de 
los valores singulares.
Aplicaciones
� En el año 1990, durante la Guerra del Golfo, los misiles Patriot
se hicieron populares y se usaron principalmente para 
interceptar misiles balísticos. Después de diversas pruebas se 
probó su correcto funcionamiento, pero ocurrió un gran error 
que costó la vida de 28 soldados norteamericanos.
� El misil estaba diseñado para operar solo unas cuantas horas. 
La velocidad del misil que se quería interceptar (misil objetivo), 
era representada por un número de punto flotante, pero el 
tiempo del reloj interno del sistema se representaba por un 
entero, correspondiente a décimas de segundo. Antes de usar 
aquel tiempo, el número entero era multiplicado por una 
aproximación numérica de 1/10 (para transformar las décimas 
de segundos en segundos), representada en 24 bits.
Aplicaciones
� En particular el valor 1/10 tiene una expansión binaria 
infinita, y fue truncado a los 24 bits. Recordemos:
� El pequeño error de truncamiento, , multiplicado por un 
gran número, produjo un gran error.
� El sistema del misil Patriot estuvo corriendo 100 horas lo 
que produjo un error de 0,34[seg], es decir, el reloj del 
sistema se atrasó aprox. un tercio de segundo:
...10001100110010001100110.0
10
1
2
1
2
1
2
1
2
1
2
1
2
1
2
1
2
1
2
1
2
1
10
1
2120171613129854
=
+++++++++=
000000095
...
2
1
2
1
2
1
2
1
0000110011000000000000000000000.0
30292625
=
+++=
=
e
e
e
Aplicaciones
� La velocidad del misil objetivo era de 1676[m/s], por lo tanto:
provocando un error de posición de casi 600[m], lo que provocó 
que el radar del misil Patriot buscara en un lugar en que el misil 
objetivo ya no estaba, asumiendo que se trataba de una falsa 
alarma.
� Este ejemplo, es una aplicación concreta de los conceptos de 
aritmética de punto flotante (floating point arithmetic) y 
estabilidad de algoritmos (en este caso, un algoritmo 
inestable!).
][34.0106060100000000095.0 seg=××××
][84.569][34.0][1676 ms
s
m
=×
Fin Lección 1:
Métodos Numéricos
Profesor : Dr. Héctor Allende-Cid
e-mail : hector.allende@ucv.cl

Continuar navegando