4 votos

Hack matemático para resolver el sistema de ecuaciones

¿Es un truco "estándar" de matemáticas/análisis numérico añadir un número relativamente pequeño, por ejemplo 1*10E-5, a la diagonal de una matriz cuadrada para asegurar la descomposición de la LU (o cualquier otro algoritmo de descomposición que sea aplicable)? ¿En contraposición a "parcial/totalmente pivotante"?

[Editar] El problema: estoy computando los regresores para un modelo de regresión estadística, y las limitaciones son que ya no podemos traer ningún software de código abierto. Por lo tanto, estoy recurriendo a mis cursos de grado en Álgebra Lineal y Métodos Numéricos para implementar la solución.

Actualmente estoy usando el algoritmo de descomposición LU de Croute ( http://en.wikipedia.org/wiki/Crout_matrix_decomposition ) con pivotes parciales en las filas.

4voto

Amzoti Puntos 46324

Según mi experiencia, la resolución de problemas mediante métodos numéricos siempre pone de manifiesto las grandes dificultades para tener soluciones generales que siempre funcionen.

Parece que los problemas siempre tienen tendencias patológicas que hacen que el solucionador no funcione en todos los casos.

Esto requiere que nuestros métodos tengan todos los trucos que podamos reunir en la caja de herramientas para manejar todos estos casos patológicos.

Aunque estoy de acuerdo en que lo mejor es pivotar, puede haber casos en los que se necesiten ambas cosas para resolver un problema concreto.

Este es el peligro de todos los SW matemáticos que vemos por ahí, porque hay que tener un cierto nivel de comprensión de lo que puede salir mal y de lo que sale mal.

No estoy seguro de que esta respuesta sea satisfactoria.

Saludos

2voto

kaharas Puntos 634

Para que se produzca la descomposición LU, es necesario que los menores principales de cada orden sean distintos de cero.

Dado que los valores de la matriz $A$ están muy cerca de los de la matriz $B = A+\alpha I$ para $\alpha$ cerca de $0$ , utilizando $B$ en lugar de $A$ como primer paso en la descomposición, ayuda a prevenir errores con un coste mínimo.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X