Unterraumiteration

Aus testwiki
Zur Navigation springen Zur Suche springen

Die Unterraumiteration dient in der numerischen Mathematik der Approximation von Eigenwerten einer quadratischen Matrix An×n und der dazugehörigen Eigenvektoren. Sie ist eine Verallgemeinerung der einfachen Vektoriteration (Von-Mises-Iteration) und benötigt wie diese die Matrix A nur in Form von Matrix-Vektor-Produkten Av, ist also besonders geeignet für dünnbesetzte Matrizen. Im Unterschied zur Vektoriteration kann man damit aber mehrere Eigenwerte mit den größten Beträgen bestimmen. Tatsächlich lässt sich über die Unterraum-Iteration auch das Standardverfahren zur Berechnung aller Eigenwerte herleiten, der QR-Algorithmus.

Motivation

Der Artikel Potenzmethode zeigt, dass sich ein genügend allgemeiner Startvektor u0n bei k-facher Anwendung der Matrix wie in Aku0 langsam in die Richtung eines Eigenvektors v1 zum betragsgrößten Eigenwert λ1 dreht. Um ein zu großes Anwachsen der Werte zu verhindern, wird der Vektor dabei aber nach jedem Schritt in eine Richtungsinformation und eine Größeninformation aufgespaltet,

ukAuk1:=Auk1.

Die Unterraumiteration verallgemeinert dieses Vorgehen, indem man es gleichzeitig auf mn (i. d. R. mn) Vektoren anwendet. Wenn diese genügend allgemein sind, bilden sie die Basis eines m-dimensionalen Untervektorraums, die man in einer Basismatrix U0n×m zusammenfassen kann. Der Basisschritt im Verfahren ist wieder die Multiplikation mit der Matrix, also AU0,A(AU0),. Nach jeder Multiplikation macht man aber wie bei der Potenzmethode wieder eine Aufspaltung in Richtungs- und Größeninformation. Dabei gibt es verschiedene Möglichkeiten, eine numerisch besonders günstige Version ist die Verwendung von Orthonormalbasen (ONB), wobei dann U0U0=Imm×m gilt mit der Einheitsmatrix Im und U0=U¯0T. Nach Multiplikation der Basismatrix U mit A erfolgt die Aufspaltung in Richtungsinformation (ONB) und Größeninformation mit Hilfe der QR-Zerlegung.

Ablauf der Unterraumiteration

Das Verfahren startet mit einer orthogonalen Matrix U^0n×m, mn,, d. h. U^0U^0=Imm×m. Im k-ten Schritt des Verfahrens berechnet man aus der Matrix U^k1n×m, mn, die Matrizen U^k,R^k über eine reduzierte QR-Zerlegung,

U^kR^k=AU^k1.

Dabei bildet U^kn×m eine neue Orthonormalbasis und R^km×m ist eine quadratische obere Dreiecksmatrix. Das Verfahren konvergiert, wenn bei den Eigenwerten λ1,,λn von A eine Lücke bei den Beträgen hinter dem m-ten Eigenwert auftritt, |λ1||λm|>|λm+1|. Dann konvergieren die von den Basen aufgespannten Unterräume Vk:=U^km gegen einen invarianten Unterraum V von A mit AVV (vgl. Untervektorraum). Wenn Un×m eine Basismatrix von V ist, bedeutet das, dass es eine Matrix Sm×m gibt, so dass AU=US gilt. Die m Eigenwerte von S sind dann genau die m betragsgrößten Eigenwerte λ1,,λm von oben. Bei der Unterraumiteration bekommt man die Grenzmatrix S einfach als Grenzwert der Matrizen Sk:=U^k(AU^k), wobei AU^k im Verfahren sowieso berechnet wird. Die Eigenwerte von Sk sind daher natürlich auch für endliches k Approximationen der betragsgrößten Eigenwerte.

Querverbindung zum LR- und QR-Algorithmus

Obwohl der eigentliche Einsatzbereich der Unterraumiteration die Berechnung weniger Eigenwerte (mn) dünnbesetzter Matrizen ist, kann man das Verfahren auch für die volle Dimension m=n betrachten. Die reduzierte QR-Zerlegung U^kR^k=AU^k1. stimmt dann mit der vollständigen QR-Zerlegung UkRk=AUk1 überein, wo alle Matrizen quadratische n×n-Gestalt haben. Insbesondere sind die Matrizen Uk unitär, Uk=Uk1. Entscheidend sind wieder die Matrizen Sk:=UkAUk, denn sie enthalten die Eigenwert-Information. Überlegt man sich nun, wie Sk aus Sk1 hervorgeht, bekommt man aus der Unterraumiteration die Gleichung

Sk=UkAUk=(UkAUk1)Uk1Uk=Rk(Uk1Uk).

Auch das eingeklammerte Produkt Qk:=Uk1Uk ist wieder unitär. Es gilt aber auch direkt

Sk1=Uk1(AUk1)=(Uk1Uk)Rk=QkRk.

Das bedeutet aber, dass man Sk=RkQk ohne Rückgriff auf die Originalmatrix A direkt aus der QR-Zerlegung von Sk1=QkRk berechnen kann. Dies beschreibt genau die einfachste Variante des QR-Algorithmus. Der Zusammenhang mit dem älteren LR-Algorithmus ist analog, dort werden statt der unitären Transformationen untere Dreiecksmatrizen aus LR-Zerlegungen verwendet.

Literatur

  • G. Golub, Ch. van Loan: Matrix Computations. Johns Hopkins, Baltimore and London 1989, ISBN 0-8018-3739-1.