Strategien für die Newtonsche Methode, wenn der Jacobian an der Lösung singulär ist

12

Ich versuche das folgende Gleichungssystem für die Variablen und zu lösen (alle anderen sind Konstanten):x 2P,x1x2

EIN(1-P)2-k1x1=0EINP2-k2x2=0(1-P)(r1+x1)4L1-P(r1+x2)4L2=0

Ich kann sehen, dass ich dieses Gleichungssystem in eine einzige Gleichung einer einzigen Variablen umwandeln kann, indem ich die Gleichungen 1 und 2 für bzw. löse und sie in Gleichung 3 ersetze. Dabei kann ich Matlabs verwenden Befehl, um die Lösung zu finden. Unter Verwendung der Parameter , und fand ich die wahre Lösung als .(P)x1x2fzerok1=k2=1r1=r2=0,2EIN=2P=x1=x2=0,5

Wenn ich jedoch Newtons Methode verwende, die auf das ursprüngliche 3-Variablen-3-Gleichungssystem angewendet wird, konvergieren die Iterationen nie zur Lösung, unabhängig davon, wie nahe ich an der wahren Lösung x=(P,x1,x2)=(0,5,0,5,0,5) .

Zuerst vermutete ich einen Fehler bei der Implementierung der Newton-Methode. Nach mehrmaliger Überprüfung habe ich keinen Fehler gefunden. Dann habe ich versucht, eine anfängliche Vermutung x0=x , und siehe da: Der Jacobian ist singulär. Ich weiß, dass ein singulärer jacobianer die Konvergenzreihenfolge reduzieren kann, aber ich denke nicht, dass er notwendigerweise die Konvergenz zur wahren Lösung verhindert.

Meine Frage ist also, dass der Jacobi des Systems bei der wahren Lösung singulär ist:

  1. Welche anderen Bedingungen sind erforderlich, um zu beweisen, dass die Newtonsche Methode nicht zur Wurzel konvergiert?

  2. Würde eine Globalisierungsstrategie (z. B. Liniensuche) Konvergenz trotz des singulären Jacobi garantieren?

Paul
quelle

Antworten:

4

(1): Dies hängt vom Verhalten der Ableitungen des Jacobian (sic!) Im Nullraum des Jacobian bei der Lösung ab. In der Praxis berechnet niemand diese Ableitungen, und ich habe mich nicht einmal darum gekümmert, die genauen Bedingungen zu kennen.

(2) funktioniert, obwohl die Konvergenz nur linear ist.

Um eine superlineare Konvergenz zu erhalten (zumindest in den meisten Fällen), kann man Tensormethoden anwenden. Siehe z. B.
https://cfwebprod.sandia.gov/cfdocs/CCIM/docs/SAND2004-1944.pdf
http://www.jstor.org/stable/10.2307/2156931
http://www.springerlink.com/ index / X5G827367G548327.pdf

Arnold Neumaier
quelle
3

Anstelle einer Liniensuche können Sie auch versuchen, die Methode Ihres Newtons auf den Levenberg-Marquardt-Algorithmus umzustellen . Die Implementierung ist einfach genug, wenn Sie Matlab verwenden.

Leo Uieda
quelle