Matrix-Riccati-Gleichung

Als Matrix-Riccati-Gleichungen oder algebraische Riccati-Gleichungen wird ein Typ von nichtlinearen Gleichungen für Matrizen bezeichnet, die sich, grob gesagt, bei Dimension 1 auf eine algebraische, quadratische Gleichung zurückführen lassen. Daher kommt auch die Bezeichnung des Problems in Anlehnung an die entsprechende Riccati-Differentialgleichung. Bei allgemeinen Dimensionen ist in einer recht allgemeinen Form der Matrix-Riccati-Gleichung eine Matrix gesucht, welche die Gleichung

erfüllt. Die anderen, vorgegebenen Matrizen haben die dazu passenden Dimensionen , , . Ein Spezialfall dieser Gleichung ist , welche als Lösungen die Quadratwurzel einer Matrix hat, wenn solche existieren.

Bedeutung der Riccati-GleichungBearbeiten

Außer bei der Quadratwurzel treten Matrix-Riccati-Gleichungen bei weiteren wichtigen Problemen auf.

Eigenwertproblem, invariante UnterräumeBearbeiten

Soll die  -Blockmatrix

 

auf obere Block-Dreieckform transformiert werden, bekommt man

 

wenn   Lösung der obigen Riccati-Gleichung ist, dann verschwindet der linke untere Block   in der transformierten Matrix. Bei den beiden Einheitsmatrizen ist die Dimension als Index vermerkt,  . Die Multiplikation der 3 Matrizen stellt tatsächlich eine Ähnlichkeitstransformation dar, da der linke und der rechte Faktor zueinander invers sind. Daher ergeben sich die Eigenwerte der Gesamtmatrix   aus der Vereinigung der Eigenwerte der beiden Hauptdiagonalblöcke   und   vom  . Darüber hinaus bilden die ersten   Spalten   der Transformationsmatrix eine Basis für den zu   gehörigen invarianten Unterraum (Summe von Eigenräumen) von  , aus dem sich bei Bedarf die Eigenvektoren bestimmen lassen. Es gilt also

 

Anwendung findet diese Eigenschaft z. B. bei der Nachbesserung von Eigenvektor-Basen: wenn   durch Störungen aus einer Block-Dreieckmatrix hervorging, ist   klein und unter geeigneten Voraussetzungen auch  . Dann kann die Block-Dreieckform in der angegebenen Weise wiederhergestellt werden ([Stewart]).

Kontinuierliche, optimale SteuerungBearbeiten

Bei einem linearen System von Differentialgleichungen   für einen Zustand   mit konstanten Koeffizienten  ,   soll diejenige optimale Steuerung   bestimmt werden, welche bei unendlichem Zeithorizont das Funktional

 

minimiert. Darin ist   symmetrisch und positiv definit,   symmetrisch und positiv semi-definit. Verwendet man eine Steuerung durch Rückkopplung  , ist das Optimum bei unendlichem Zeithorizont gegeben durch  , wobei   die (maximale) symmetrische Lösung der Riccati-Gleichung

 

ist, für welche die Matrix   asymptotisch stabil ist mit allen Eigenwerten in der linken komplexen Halbebene. Für mehr Hintergrund wird auf den Artikel LQ-Regler verwiesen. Diese Gleichung ist also ein Spezialfall der Gleichung aus der Einleitung mit  ,  ,  ,  . Die hierzu gehörige Blockmatrix

 

ist eine hamiltonsche Matrix, da   und   hier symmetrisch sind. Bei dieser Matrix   tritt mit jedem Eigenwert   auch   als Eigenwert auf.

Numerische Lösung von Riccati-GleichungenBearbeiten

Newton-VerfahrenBearbeiten

Da die Matrix-Riccati-Gleichung eine algebraische Gleichung vom Grad 2 für die   Unbekannten in der Matrix   ist, kann zur Lösung natürlich auch das Newton-Verfahren eingesetzt werden. Die Ableitung der Abbildung   an der Stelle   ist die lineare Abbildung

 

Mit einer aktuellen Näherung   bekommt man das Inkrement   zu einer verbesserten Näherung also aus dem linearen Gleichungssystem

 

wo auf der rechten Seite, wie gewohnt, das negative Residuum der Riccati-Gleichung steht. Das Ganze stellt eine Sylvester-Gleichung dar, im zugehörigen Artikel werden numerische Methoden zu ihrer Auflösung behandelt. Diese lineare Gleichung ist eindeutig lösbar, wenn die beiden Matrizen   und   keine gemeinsamen Eigenwerte besitzen, z. B. wenn die Realteile aller Eigenwerte von   oberhalb und die von   unterhalb eines geeigneten Wertes (etwa null) liegen.

Lösung mit der Signum-IterationBearbeiten

Involutorische Matrizen   sind Lösungen der einfachen Riccati-Gleichung  . Auch die Newton-Iteration für diese spezielle Gleichung ist sehr einfach,

 

und man kann zeigen, dass diese Signum-Iteration immer und quadratisch konvergiert, sofern die Startmatrix   keine rein imaginären Eigenwerte (einschließlich null) besitzt. Alle Matrizen   kommutieren miteinander und besitzen daher die gleiche Jordan-Basis, und dies gilt auch für die Grenzwert-Matrix  . Die zugehörigen Eigenwerte der   konvergieren gegen   bzw.  , wenn der Realteil im Eigenwert von   positiv bzw. negativ war. Daher besitzt   nur die beiden Eigenwerte   und wird als Signum-Funktion von   bezeichnet,   ist also eine Involution mit  . Da die Eigenwerte von   bekannt sind, bekommt man Basen für die invarianten Unterräume zu   bzw.  , indem man Basen für die Kerne von   bzw.   bestimmt, etwa mit der QR-Zerlegung. Diese sind dann auch Basen für die invarianten Unterräume der Ausgangsmatrix   zu den Eigenwerten mit positivem bzw. negativem Realteil.

Diesen Hintergrund kann man mit   zur Lösung der ursprünglichen Riccati-Gleichung verwenden, wenn aufgrund der Struktur von   bzw.   die Zahl der Eigenwerte mit positivem und negativem Realteil klar ist. Das gilt für die Quadratwurzel und das Steuerungsproblem.

Für die Quadratwurzel verschwinden die Hauptdiagonalblöcke von   und auch bei den   ist das so, sei also

 

mit  . Die Iteration für die   lautet dann für die Einzelblöcke

 

Falls   keine reellen und nicht-positiven Eigenwerte besitzt, konvergiert die Iteration gegen die eindeutige Wurzel  , deren Eigenwert-Realteile positiv sind.

Bei der allgemeinen Gleichung ist die Signum-Funktion mit   einsetzbar, wenn die Riccati-Gleichung eine Lösung   besitzt, für die   und   asymptotisch stabil sind, also beide nur Eigenwerte mit negativem Realteil besitzen. Unter dieser Voraussetzung ist   und   und für die Blockmatrix   folgt, dass

 

ist mit einer geeigneten Matrix  . Die ersten   Spalten dieser Gleichung zeigen mit

 

dass die Matrix   eine spezielle Basis des Kerns von   ist. Zur Lösung der Riccati-Gleichung sind also mit der Startmatrix  , bzw.   bei der optimalen Steuerung, die Matrizen   und ihr Grenzwert   zu berechnen. Danach bekommt man   bei Aufteilung von   in Blöcke aus dem folgenden Gleichungssystem

 

Hier sind  ,  ,  .

BeispielBearbeiten

Bei der Anwendung zur optimalen Steuerung sei mit   und  ,

 

sowie  . Von den Eigenwerten   der Matrix   ist einer positiv, das ungeregelte System mit   ist also instabil. Als Blockmatrix   tritt hier die speziellere Form

 

auf, sie besitzt die 4 Eigenwerte  , von denen, wie erwähnt, tatsächlich 2 positiv und 2 negativ sind. In diesem Beispiel lässt sich die Signum-Funktion von   noch über deren Jordan-Normalform berechnen, das Ergebnis ist

 

Tatsächlich kann man direkt verifizieren, dass   involutorisch ist,  , und mit   kommutiert,  . Eine Basismatrix   des Kerns von  , also mit   ist gegeben durch

 

Durch spaltenweise Elimination in den ersten beiden Zeilen von   wurde dort eine Einheitsmatrix erzeugt und man kann daher im unteren Block die Lösung   der Riccati-Gleichung ablesen mit

 

Die gesteuerte Systemmatrix   hat jetzt also 2 negative Eigenwerte und das System ist daher asymptotisch stabil.

Die Berechnung der Jordan-Normalform umgeht man mit der in Abschnitt 2.2 beschriebenen Signum-Iteration. Die Konvergenz   ist quadratisch, man kann dies direkt an den Eigenwerten der Matrizen   ablesen. Diese lauten:

 

Tatsächlich ist  . Setzt man zur Berechnung der Lösung   an Stelle von   die Näherung   ein und teilt   auf wie beschrieben,

 

bekommt man mit Hilfe der reduzierten QR-Zerlegung

 

(Angabe aus Platzgründen mit geringer Genauigkeit) die Näherungslösung

 

Diese Näherung ist offensichtlich auf ca. 9 Stellen genau.

LiteraturBearbeiten

  • G.W. Stewart, Error and perturbation bounds for subspaces associated with certain eigenvalue problems, SIAM Review 15, 727–764
  • N.J. Higham, Functions of matrices: Theory and computation, SIAM, Philadelphia, 2008.
  • J.D. Roberts, Linear model reduction and solution of the algebraic Riccati equation by use of the sign function, Intern. J. Control 32, 677–687