Inconvenientes de Newton-Raphson aproximación con derivada numérica aproximada


17

Supongamos que tengo alguna función y quiero encontrar tal que . Puede ser que utilice el método de Newton-Raphson. Pero esto requiere que sé que el derivado de la función . Una expresión analítica para puede no estar disponible. Por ejemplo, puede definirse mediante un código informático complicado que consulta una base de datos de valores experimentales.x f ( x ) 0 f ( x ) f fFXF(X)0 0F(X)FF

Pero incluso si se complica, puedo aproximar para cualquier particular, por la elección de un número pequeño y calculting .f ' ( un ) un ε f ' ( un ) f ( un + ε ) - f ( a )FF(un)unϵF(un)F(un+ϵ)-F(un)ϵ

He escuchado que hay distintos inconvenientes en este enfoque, pero no sé cuáles son. consejos de Wikipedia que "Usando esta aproximación podría resultar en algo así como el método de la secante cuya convergencia es más lenta que la del método de Newton".

¿Alguien puede dar más detalles sobre esto y proporcionar una referencia que discuta particularmente los problemas con esta técnica?


55
El método secante es una excelente alternativa cuando la derivada es costosa de calcular. El secante de tres pasos generalmente es más o menos equivalente a dos pasos de Newton, y los pasos son más baratos.

1
Siempre que calcule una derivada numéricamente por diferencia finita (como sugiere), cualquier ruido en la función se amplifica, por lo que debe elegir su épsilon con cuidado. Una posibilidad es que, cuando se acerque a la solución, cambie a un método de subdivisión binaria, que garantiza la convergencia siempre que f sea ​​localmente monótono.
Mike Dunlavey

2
Como mencionó André, las derivadas numéricas de dos puntos, como usted sugiere, son equivalentes a un método Secante reiniciado . Para una convergencia más rápida, sin embargo, sugeriría el llamado algoritmo de Illinois , que es un pariente cercano del método de la secante y a utilizar solamente un punto por cada paso, en lugar de dos en su caso, y no sere bloqueado como el método de posición falsa.
Pedro

¿Cuál es la dimensión de ? Cuanto mayor es la dimensión, más valiosa se vuelve una derivada. Newton-Krylov, libre de jacobianos, es una opción que no necesita derivados explícitos (aunque el preacondicionamiento es importante para los sistemas mal acondicionados). X
Jed Brown

Respuestas:


12

En aras de la notación, supongamos que (es decir, que es una función vectorial que toma un vector como entrada y salida a un vector del mismo tamaño). Hay dos preocupaciones: coste computacional y la precisión numérica.F:RnorteRnorte

Calculando la derivada (la matriz jacobiana, J ( x ) , o ( f ( x ) ) T , o lo que se prefiere) usando diferencias finitas va a requerir n evaluaciones de la función. Si pudiera calcular la derivada usando la aritmética de coma flotante directamente desde la definición, tendría que calcular el cociente de diferenciareF(X)J(X)(F(X))Tnorte

reF(X)miyo=limε0 0F(X+εmiyo)-F(X)ε

para cada , suponiendo que no hace ningún tipo de "finito inteligente diferenciación" (como Curtis-Powell-Reid), porque usted sabe (o puede detectar) el patrón de escasez de D f . Si n es grande, que podría ser una gran cantidad de evaluaciones de la función. Si tiene una expresión analítica para D f , entonces calcularla podría ser más barato. Automático (también conocido como algorítmico) métodos de diferenciación también se puede utilizar en algunos casos para calcular D f en aproximadamente 3 a 5 veces el coste de una evaluación de la función.yo=1,...,nortereFnortereFreF

También hay preocupaciones numéricas. Obviamente, en una computadora, no podemos tomar el límite de un escalar a medida que va a cero, por lo que cuando aproximamos , realmente estamos eligiendo ε para que sea "pequeño" y calculandoreFε

reF(X)miyoF(X+εmiyo)-F(X)ε,

donde significa que es una aproximación, y esperamos que sea una muy buena aproximación. Calcular esta aproximación en aritmética de coma flotante es difícil porque si elige ε demasiado grande, su aproximación podría ser mala, pero si elige ε demasiado pequeña, podría haber un error de redondeo significativo. Estos efectos se tratan en el artículo de Wikipedia sobre la diferenciación numérica en detalle superficial; más referencias detalladas se pueden encontrar dentro del artículo.εε

Si el error en el Jacobiano matriz no es demasiado grande, iteraciones de Newton-Raphson se convergen. Para un análisis teórico detallado, véase el capítulo 25 de precisión y estabilidad de Numerical Algoritmos por Nick Higham , o el artículo de Françoise Tisseur sobre la que se basa.reF

Las bibliotecas suelen tener cuidado de estos detalles algorítmicos para usted, y por lo general, las implementaciones de la biblioteca del algoritmo de Newton-Raphson (o sus variantes) convergerán bastante bien, pero de vez en cuando, no será un problema que causa algunos problemas debido a los inconvenientes encima. En el caso escalar , que haría uso de método de Brent , debido a su robustez y buena velocidad de convergencia en la práctica.(norte=1)

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.