Lanczos-Verfahren

Aus testwiki
Version vom 16. September 2024, 17:09 Uhr von imported>Horst Gräbner (willkürlicher Wikilink)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Das Lanczos-Verfahren[1] (nach Cornelius Lanczos) ist sowohl ein iterativer Algorithmus zur Bestimmung einiger Eigenwerte und eventuell der zugehörigen Eigenvektoren einer Matrix als auch ein iterativer Algorithmus zur approximativen Lösung eines linearen Gleichungssystems. Der Algorithmus für Eigenwerte konvergiert am schnellsten gegen die gut von den anderen Eigenwerten separierten, meist gegen die betragsgrößten Eigenwerte. Der Algorithmus für lineare Gleichungssysteme ist im allgemeinen Fall dem BiCG-Verfahren und für spezielle Matrizen dem CG-Verfahren mathematisch äquivalent.

Allgemeines

Das Verfahren der minimierten Iterierten, wie Lanczos es in seinen Originalarbeiten aus den Jahren 1950 (Eigenwerte) und 1952 (lineare Gleichungssysteme) nannte, basiert auf Projektionen auf Krylow-Unterräume. Je nach den Eigenschaften der Matrix, deren Eigenwerte berechnet werden sollen, werden ein oder zwei Krylow-Unterräume aufgespannt. Das generelle Verfahren basiert auf zwei Krylow-Unterräumen 𝒦=𝒦(A,q) und 𝒦^=𝒦(AH,q^), wobei die zwei Startvektoren qn und q^n biorthogonal zueinander gewählt werden, also q^Hq=1. Die Basen der Krylow-Räume werden gegeneinander mittels einer zweiseitigen Variante des Verfahrens von Gram-Schmidt biorthogonalisiert.

Eigenwertnäherung

Zur Eigenwertnäherung werden die beiden obengenannten Basen und die schiefe Projektion der gegebenen Matrix, meist auf eine Tridiagonalmatrix, herangezogen. Das resultierende unsymmetrische Lanczos-Verfahren ist nicht immer mittels einer Kurztermrekursion durchführbar. Einen Ausweg stellen die aufgrund der Verbindung zu den formal orthogonalen Polynomen (FOPs) konstruierten Look-ahead-Varianten dar.

Wenn die Matrix An×n hermitesch oder gar reell symmetrisch ist, erzwingt die Wahl von normalisiertem q^=q eine Übereinstimmung der beiden Krylow-Räume und verhindert einen Zusammenbruch der Biorthogonalisierung, welche jetzt eine Orthogonalisierung darstellt. In diesem speziellen Fall ist das resultierende symmetrische Lanczos-Verfahren dem Verfahren von Arnoldi mathematisch äquivalent, die (einzige) Basis ist eine Orthogonalbasis und die resultierende orthogonale Projektion der Matrix ist (in aller Regel) eine hermitesche Tridiagonalmatrix. Gravierende Unterschiede zwischen dem Arnoldi-Verfahren und dem symmetrischen Lanczos-Verfahren werden erst bei der Ausführung in endlicher Genauigkeit, also unter Einfluss von Rundungsfehlern deutlich.

Varianten

Es existieren auch andere Varianten des Lanczos-Verfahrens, unter anderem eine Variante für das Eigenwertproblem für symplektische Matrizen, welches diese auf sogenannte Butterfly-Form abbildet und eine Variante für komplexe symmetrische Matrizen.

Approximative Lösung von Gleichungssystemen

Lanczos’ Verfahren zur approximativen Lösung von Gleichungssystemen wird selten in der ursprünglichen Form verwendet, stattdessen wird es als BiCG-Verfahren oder als CG-Verfahren eingesetzt.

Verwandtschaften und geschichtlicher Kontext

Die beiden von Lanczos veröffentlichten Verfahren sind Krylow-Unterraum-Verfahren. Dieser Sachverhalt, besser, diese Verwandtschaft, wurde bereits vor der ersten Veröffentlichung von Alexander Markowitsch Ostrowski Lanczos kundgetan, wovon eine Fußnote auf der ersten Seite der ersten Veröffentlichung von Lanczos zeugt. Dort steht im Originalartikel:

Vorlage:Zitat

Eine Darstellung von dem von Krylow entwickelten Verfahren findet sich im Buch von Faddejew und Faddejewa Numerische Methoden der linearen Algebra.

Wenn die Matrix selbstadjungiert (symmetrisch reell oder hermitesch) ist, ist die berechnete Basis orthogonal. Aufbauend auf Lanczos' Arbeit brachte das Walter Edwin Arnoldi auf die Idee, immer eine orthogonale Basis zu erzwingen, was zur Folge hat, dass die projizierte Matrix keine Tridiagonalmatrix mehr, sondern nur noch eine obere Hessenbergmatrix ist. Der resultierende Algorithmus ist das 1951 veröffentlichte Arnoldi-Verfahren.

Das Verfahren ist im allgemeinen Fall dem BiCG-Verfahren und im Falle einer symmetrischen reellen (nicht notwendig positiv definiten) oder hermiteschen (ebenfalls nicht notwendig positiv definiten) Matrix dem kurz darauf veröffentlichten CG-Verfahren von Magnus Rudolph Hestenes und Eduard Stiefel äquivalent. Die Verwandtschaft mit dem CG-Verfahren war auch den beiden Autoren bereits bekannt. Auf Seite 410 (der zweiten Seite) ihrer Veröffentlichung schreiben sie:

Vorlage:Zitat

Ablauf des Lanczos-Verfahrens bei hermiteschen Matrizen

Obwohl das Lanczos-Verfahren das geringfügig ältere Verfahren ist, lohnt sich im interessantesten, dem hermiteschen Fall der Vergleich als Spezialfall des Arnoldi-Verfahrens. Das Arnoldi-Verfahren berechnet bei einer Matrix An×n nach m Schritten eine Orthonormalbasis Qm=(q1,,qm)n×m eines Krylow-Unterraums, für welche gilt

AQm=QmHm+hm+1,mqm+1emT.

Dabei ist Hm=QmHAQm eine Hessenbergmatrix. Im hermiteschen Fall mit AH=A ist dann aber auch HmH=QmHAHQm=QmHAQm=Hm hermitesch, also sogar eine hermitesche Tridiagonalmatrix

Hm=Tm=(α1β100β1α2β200βm2βm100βm1αm).

Betrachtet man nun mit dieser Information die k-te Spalte Aqk von AQm, erhält man die einfache Beziehung

Aqk=βk1qk1+αkqk+βkqk+1.

Wegen αk=qkHAqk kann man diese nach den einzigen Unbekannten rk:=βkqk+1 auflösen, wobei βk wegen qk+12=1 die Norm von rk ist. Damit vereinfacht sich der Algorithmus aus dem Artikel Arnoldi-Verfahren mit einem nichttrivialen Startvektor r0n zum hermiteschen (symmetrischen) Lanczos-Verfahren

q00,β01,
for k and rk1=0 do
βk1rk1
qkrk1/βk1
rkAqk
αkqkHrk
rkrkqkαkqk1βk1
end for

Im Vergleich zum Arnoldi-Verfahren (für beliebige quadratische Matrizen geeignet), welches bis zum Schritt mn einen quadratisch wachsenden Aufwand von O(m2n) Operationen alleine für die Orthogonalisierung benötigt, braucht dieser Algorithmus (für hermitesche oder symmetrische Matrizen) zusätzlich zu den m Matrix-Vektor-Multiplikationen nur O(mn) Operationen, ist also erheblich effizienter. Auch die Berechnung aller Eigenwerte von Tm als Approximation an die von A kostet wegen der schnellen Konvergenz des QR-Algorithmus nur wenig Aufwand.

Allerdings gelten die Aussagen nur bei exakter Rechnung, der Algorithmus ist anfällig gegen Rundungsfehler. Denn obwohl eine Orthogonalisierung von qk+1 im Lanczos-Verfahren nur gegen den vorherigen Basivektor qk erfolgt, sind in der Theorie dennoch alle Basisvektoren paarweise orthogonal. Bei Rechnung mit endlicher Genauigkeit geht diese Orthogonalität allerdings oft verloren, da sich sozusagen große Eigenwerte von A, die schon in einer Matrix Tk repräsentiert sind, über Rundungsfehler nochmal einschleichen und in Matrizen Tm, mk, dann für falsche Geister-Eigenwerte sorgen. Diesen Problemen begegnet man mit Re-Orthogonalisierungen. Um den Aufwand dabei in Grenzen zu halten, verwendet man eine selektive Re-Orthogonalisierung gegen einige, schon berechnete, Näherungs-Eigenvektoren.

Einzelnachweise

  1. https://www2.cs.duke.edu/courses/fall06/cps258/references/Krylov-space/Lanczos-original.pdf Lanczos, C. (1950). An Iteration Method for the Solution of the Eigenvalue Problem of Linear Differential and Integral Operators. Journal of research of the National Bureau of Standards, 45, 255–282.

Literatur

  • Martin Hanke-Bourgeois: Grundlagen der Numerischen Mathematik und des Wissenschaftlichen Rechnens. 3. Auflage, Vieweg+Teubner, Wiesbaden 2009.
  • Gene H. Golub, Charles F. Van Loan: Matrix Computations. 3. Auflage. The Johns Hopkins University Press, 1996, ISBN 0-8018-5414-8.