Sattelpunktproblem

In der Mathematik bezeichnet ein Sattelpunktproblem eine spezielle Problemklasse, welche auf ein lineares Gleichungssystem in Blockgestalt führt, und zwar eine ( n + m ) × ( n + m ) {\displaystyle (n+m)\times (n+m)} -Matrix M {\displaystyle M} der Form

M = ( A B B T 0 ) , {\displaystyle M={\begin{pmatrix}A&B\\B^{T}&0\end{pmatrix}},}

wobei A {\displaystyle A} eine n × n {\displaystyle n\times n} -Matrix ist und B {\displaystyle B} eine n × m {\displaystyle n\times m} -Matrix. Der 0 {\displaystyle 0} -Block ist von der Größe m × m {\displaystyle m\times m} .

Ursprung von Sattelpunktproblemen

Gleichungssysteme in Sattelpunktform entstehen in vielen Anwendungen, beispielsweise bei Optimierungsproblemen unter Nebenbedingungen.

Beispiel hierfür ist das Lösen von quadratischen Programmen mit Gleichungsrestriktionen durch Anwendung der Karush-Kuhn-Tucker-Bedingungen. Diese sind Äquivalent zur Bestimmung eines Sattelpunkt bei der Lagrange-Dualität, was den Namen erklärt.

Eine weitere wichtige Klasse von Sattelpunktproblemen stammt aus der Diskretisierung von partiellen Differentialgleichungen. Das wichtigste Beispiel sind die inkompressiblen Navier-Stokes-Gleichungen in linearisierter Form, diskretisiert beispielsweise mit finiten Elementen, welches auf natürliche Weise ein lineares Gleichungssystem in obiger Blockgestalt ergibt. Die Blockmatrix A {\displaystyle A} entsteht dort aus der Diskretisierung des Geschwindigkeitsterms u {\displaystyle {\vec {u}}} in der Impulsgleichung, die Matrix B {\displaystyle B} aus der Diskretisierung des Druckterms p {\displaystyle p} , und die Matrix B T {\displaystyle B^{T}} resultiert aus der Diskretisierung der Geschwindigkeit in der Kontinuitätsgleichung.

Lösung von Sattelpunktgleichungen

Anwendungen wie die diskretisierten Navier-Stokes-Gleichungen erfordern die Lösung eines linearen Gleichungssystems

M x = b . {\displaystyle Mx=b.}

Damit das Gleichungssystem eindeutig lösbar ist, muss die Matrix vollen Rang besitzen. Eine notwendige Voraussetzung dafür ist, dass die Anzahl der Zeilen in der Matrix B T {\displaystyle B^{T}} nicht größer ist als die Anzahl der Spalten. Eine hinreichende Bedingung gibt die sog. LBB-Bedingung (nach Ladyschenskaja, Babuška und Brezzi), oft auch inf-sup-Bedingung genannt.

Effiziente numerische Algorithmen zur Lösung von Gleichungssystemen mit Sattelpunktstruktur verwenden eine spezielle Form des Schur-Komplements, welche die Blockstruktur der Matrix ausnutzt. Insbesondere bei der numerischen Lösung der Navier-Stokes-Gleichungen ist diese Variante sehr beliebt.

Gewöhnliche iterative Lösungsverfahren wie das Krylov-Unterraum-Verfahren GMRES ohne Beachtung der Struktur von M {\displaystyle M} eignen sich dagegen relativ schlecht, da die gängigen Methoden zur Vorkonditionierung wie das Jacobi-, Gauß-Seidel-Verfahren oder die ILU-Zerlegung wegen der Nullen auf der Hauptdiagonalen im unteren Diagonalblock nicht funktionieren. Ohne Vorkonditionierung konvergieren selbst die oft hervorragenden Krylov-Unterraum-Verfahren nur sehr langsam und sind unbrauchbar.

Begriffsklärung

Die Bezeichnung Sattelpunktproblem für eine Gleichung der Form

M x = ( A B B T 0 ) ( u p ) = ( 0 0 ) = b {\displaystyle Mx={\begin{pmatrix}A&B\\B^{T}&0\end{pmatrix}}{\begin{pmatrix}u\\p\end{pmatrix}}={\begin{pmatrix}0\\0\end{pmatrix}}=b}

leitet sich aus den Eigenschaften der zugehörigen quadratischen Form

F ( u , p ) = u T A u + u T B p + p T B T u {\displaystyle F(u,p)=u^{T}Au+u^{T}Bp+p^{T}B^{T}u}

mit einer symmetrisch positiv definiten Matrix A {\displaystyle A} ab, wobei die Herleitung hier für eine homogene rechte Seite erfolgt. Der allgemeine Fall mit b 0 {\displaystyle b\neq 0} hat analoge Eigenschaften.

Sei x = ( u , p ) {\displaystyle x^{*}=(u^{*},p^{*})} eine Lösung des linearen Gleichungssystems M x = 0 {\displaystyle Mx=0} . Dann ist ( u , p ) {\displaystyle (u^{*},p^{*})} ein Sattelpunkt von F {\displaystyle F} , denn für alle u R n {\displaystyle u\in \mathbb {R} ^{n}} :

F ( u , p ) = u T A u + 2 u T B p = u T A u 2 u T A u + ( u ) T A u , {\displaystyle F(u,p^{*})=u^{T}Au+2u^{T}Bp^{*}=u^{T}Au-2u^{T}Au^{*}+(u^{*})^{T}Au^{*},}

wobei die zweite Gleichheit durch Ersetzen von B p = A u {\displaystyle Bp^{*}=-Au^{*}} und Einfügen des Terms ( u ) T A u = 0 {\displaystyle (u^{*})^{T}Au^{*}=0} erreicht ist. Nun

F ( u , p ) = ( u u ) T A ( u u ) 0 = F ( u , p ) , {\displaystyle F(u,p^{*})=(u-u^{*})^{T}A(u-u^{*})\geq 0=F(u^{*},p^{*}),}

Der Term ( u u ) T A ( u u ) {\displaystyle (u-u^{*})^{T}A(u-u^{*})} ist nichtnegativ für alle u {\displaystyle u} , da die Matrix A {\displaystyle A} symmetrisch positiv definit ist.

Zudem zeigt man die Ungleichheit

F ( u , p ) 0 {\displaystyle F(u^{*},p)\leq 0}

für alle p R m {\displaystyle p\in \mathbb {R} ^{m}} , was die Existenz des Sattelpunktes zeigt.

Siehe auch

Literatur

  • Dietrich Braess: Finite Elemente. Theorie, schnelle Löser und Anwendungen in der Elastizitätstheorie. Abschnitt III.4, Springer-Verlag, Berlin 2003, ISBN 3-540-00122-0.