numerische lineare algebra - tu-chemnitz.de · jacobi-verfahren konvergenz,zyklischeindexwahl...
Post on 04-Jun-2018
221 Views
Preview:
TRANSCRIPT
Inhalt I
1 Organisatorisches2 Einleitung2.1 Vorbemerkungen2.2 Eigenwertaufgaben in den Anwendungen3 Das QR-Verfahren3.1 Vektoriteration3.2 Unterraumiteration3.3 Reduktion auf Hessenberg-Gestalt3.4 QR Iteration mit impliziten Shifts3.5 Konvergenz der Unterraumiteration3.6 Konvergenz des QR-Verfahrens4 Hermitesche Eigenwertaufgaben4.1 Jacobi-Verfahren4.2 Bisektion4.3 Divide & Conquer - Verfahren4.4 Berechnung der Singulärwertzerlegung5 Anhang: Grundlagen aus der Linearen Algebra5.1 EigenwerteOliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 2 / 177
Inhalt II
5.2 Störungstheorie5.3 Householder-Transformationen und Givens-Rotationen5.4 Winkel und Abstand zwischen Unterräumen
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 3 / 177
Inhalt
1 Organisatorisches
2 Einleitung
3 Das QR-Verfahren
4 Hermitesche Eigenwertaufgaben
5 Anhang: Grundlagen aus der Linearen Algebra
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 74 / 177
Hermitesche EigenwertaufgabenEinleitung
Für Hermitesche Matrizen A = AH ∈ Cn×n ergeben sich, wie wir in unserenbisherigen Untersuchungen schon festgestellt haben, einige Vereinfachungen bei derBerechnung von Eigenwerten:
Reelle Eigenwerte, orthogonale Eigenvektoren, diagonalisierbar,Eigenwerte/-vektoren stabiler gegen Störungen von A,Interlacing-Eigenschaft der Eigenwerte,QR: aus Hessenberg wird Hermitesch tridiagonal,QR: aus quadratischer Konvergenz wird kubische Konvergenz.
Neben dem QR-Verfahren existieren im Hermiteschen Fall einige weitere Verfah-ren, die in manchen Situationen sogar dem QR-Verfahren vorzuziehen sind. Wirbetrachten hier den reellen (symmetrischen) Fall.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 75 / 177
Inhalt
1 Organisatorisches
2 Einleitung
3 Das QR-Verfahren
4 Hermitesche Eigenwertaufgaben4.1 Jacobi-Verfahren4.2 Bisektion4.3 Divide & Conquer - Verfahren4.4 Berechnung der Singulärwertzerlegung
5 Anhang: Grundlagen aus der Linearen Algebra
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 76 / 177
Jacobi-VerfahrenGrundidee
Bei diesem auf C.G.J. Jacobi im Jahr 1845 zurückgehenden Verfahren wird A uni-tären Ähnlichkeitstransformationen unterzogen mit dem Ziel, alle Außendiagonal-einträge hinreichend zu verkleinern. Als Maß für deren Größe führen wir ein
off(A) := ‖A− diag(A)‖F =
n∑j=1
n∑k=1k 6=j
|aj,k|2
1/2
Die orthogonalen Transformationen beruhen (vgl. Givens-Rotationen) auf Rotatio-nen in 2 achsenparallelen Unterräumen: im 2× 2-Fall lässt sich[
c s−s c
]T [a bb d
] [c s−s c
]=
[λ1 00 λ2
], 0 ≤ s, c ≤ 1, s2 + c2 = 1,
erreichen durch Wahl von c = 1/√
1 + t2, s = tc mit t die betragskleinere Nullstellevon
t2 + 2τt− 1 = 0, t =s
c, τ :=
aqq − app2apq
.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 77 / 177
Jacobi-VerfahrenRotationsmatrix
Das Durchführen der (c, s)-Rotation, c = cosϑ, s = sinϑ, in der (p, q)-Koordinaten-ebene wird bewerkstelligt durch
J = J (p, q, ϑ) :=
1 · · · 0 · · · 0 · · · 0...
. . ....
......
0 · · · c · · · s · · · 0...
.... . .
......
0 · · · −s · · · c · · · 0...
......
. . ....
0 · · · 0 · · · 0 · · · 1
p
q
p q
und damit den Übergang A 7→ B := JTAJ mit J = J (p, q, ϑ). Die neue MatrixB unterscheidet sich von A nur in den beiden Zeilen und Spalten mit Indices p undq.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 78 / 177
Jacobi-VerfahrenReduktion der Nebendiagonalen
Da orthogonale Transformationen die Frobenius-Norm invariant lassen, gilt wegen[bpp bpqbqp bqq
]=
[c s−s c
]T [app apqaqp aqq
] [c s−s c
]zunächst
a2pp + a2qq + 2apq = b2pp + b2qq + 2bpq = b2pp + b2qq
und damit auch
off(B)2 = ‖B‖2F −n∑
i=1
b2ii = ‖A‖2F −n∑
i=1
b2ii
= ‖A‖2F −n∑
i=1
a2ii + (a2pp + a2qq − b2pp − b2qq)
= off(A)2 − 2a2pq.
In diesem Sinne rückt A mit jedem Jacobi-Schritt näher an Diagonalform.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 79 / 177
Jacobi-VerfahrenIndexwahl
Es ist
‖B −A‖2F = 4(1− c)n∑
i=1i6=p,q
(a2ip + a2iq) +2
c2a2pq.
Die Wahl der kleineren Nullstelle stellt |ϑ| ≤ π/4 sicher und minimiert den obigenAbstand zwischen A und B .
Sind die Rotationsparanmeter p, q und ϑ bestimmt, erfordert die Aufdatierung
A← J (p, q, ϑ)TAJ (p, q, ϑ)
lediglich 6n arithmetische Operationen.
Im klassischen Jacobi-Verfahren wählt man in jedem Schritt die Indices p, q, umoff(A) möglichst stark zu reduzieren, d.h. so, dass |apq| maximal mit p 6= q.
Der folgende Algorithmus überschreibt A = AT ∈ Rn×n mit VTAV , wobei V dieakkumulierte orthogonale Transformation enthält.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 80 / 177
Jacobi-VerfahrenAlgorithmus, lineare Konvergenz
Algorithmus 3 : Klassisches Jacobi-Verfahren.Gegeben : A = AT ∈ Rn×n, tol > 0.
1 V ← In; ε← tol ‖A‖F2 while off(A) > ε do3 Wähle p, q so, dass |apq| = maxi 6=j |aij |4 Bestimme (c, s) um apq im 2× 2-Fall auszunullen5 A← J (p, q, ϑ)TAJ (p, q, ϑ)6 V ← VJ (p, q, ϑ)
Satz 4.1Bezeichnet Ak die k-te Iterierte des klassischen Jacobi-Verfahrens, so gilt
off(Ak)2 ≤(
1− 1
N
)k
off(A)2, N =n(n− 1)
2.
In diesem Sinne liegt lineare Konvergenz vor.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 81 / 177
Jacobi-VerfahrenKonvergenz, zyklische Indexwahl
Weitergehende Resultate von [Schönhage, 1964] sowie [van Kempen, 1966] zeigen,dass das klassische Jacobi-Verfahren sogar quadratisch konvergiert.
Die Anzahl der zu einer vorgegebenen Reduktion von off(A) erforderlichen Schrittedes klassischen Jacobi-Verfahrens geben [Brent & Luk, 1985] heuristisch als propor-tional zu log n an.
Zyklisches Jacobi-Verfahren: Das Missverhältnis zwischen O(n) Rechenoperationenpro Jacobi-Schritt gegenüber O(n2) Aufwand bei der Suche nach dem maximalen|apq| wird beim zyklischen Jacobi-Verfahren dadurch vermieden, dass man zyklischalle Nebendiagonalelemente durchläuft, z.B. in der Reihenfolge (n = 4)
(1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4), (1, 2), . . . .
Das zyklische Jacobi-Verfahren konvergiert ebenfalls quadratisch ([Wilkinson, 1962],[van Kempen, 1966]). Da es ohne quadratischen Suchaufwand auskommt konvergiertes jedoch deutlich schneller.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 82 / 177
Jacobi-VerfahrenParallele Ausführung
Beide TeilschritteA 7→ A′ = JTA, A′ 7→ A′J
eines Jacobi-Schrittes bestehen aus der Aufdatierung von jeweils zwei Zeilen bzw.Spalten. Somit können zwei oder mehr Jacobi-Teilschritte mit disjunkten Index-paaren gleichzeitig vorgenommen werden, da diese jeweils unabhängig voneinandersind.Im o.g. Fall n = 4 könnten die 6 verschiedenen Schritte im zyklischen Jacobi-Verfahren in drei Gruppen aufgeteilt werden:
{(1, 2), (3, 4)}, {(1, 3), (2, 4)}, {(1, 4), (2, 3)}
in denen zwei Prozessoren jeweils zwei Schritte parallel ausführen können. Ist ndeutlich größer als die Anzahl Prozessoren, können auch Block-Verfahren eingesetztwerden.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 83 / 177
Jacobi-VerfahrenWeitere Bemerkungen
Trotz der quadratischen Konvergenz ist das Jacobi-Verfahren im Allgemeinenlangsamer als QR.Ist eine approximative Eigenvektor-Matrix V bereits gegeben, so istVTAVbereits fast diagonal, was vom Jacobi-Verfahren (nicht aber vomQR-Verfahren) ausgenutzt werden kann.Für A positiv definit haben [Demmel & Veselić, 1992] gezeigt, dass dasJacobi-Verfahren alle Eigenwerte mit großer relativer Genauigkeitapproximieren kann.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 84 / 177
Inhalt
1 Organisatorisches
2 Einleitung
3 Das QR-Verfahren
4 Hermitesche Eigenwertaufgaben4.1 Jacobi-Verfahren4.2 Bisektion4.3 Divide & Conquer - Verfahren4.4 Berechnung der Singulärwertzerlegung
5 Anhang: Grundlagen aus der Linearen Algebra
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 85 / 177
Bisektionsverfahren
Idee: Eigenwertbestimmung für symmetrische Tridiagonalmatrix durch Nullstellen-suche für charakteristisches Polynom p(λ) = det(A− λI ) auf der reellen Achse.
A =
a1 b1
b1 a2. . .
. . . . . . bn−1bn−1 an
∈ Rn×n, bj 6= 0 ∀j = 1, . . . , n− 1.
Nullstellen eines Polynoms, welches durch deine Koeffizienzen gegeben ist, imAllgemeinen schlecht konditioniert. Koeffizienten der Tridiagonalmatrixbestimmen die Nullstellen (Eigenwerte) jedoch mitweniger Sensitivität.Besonders geeignet, wenn nur Eigenwerte in einem Teil des Spektrums, etwanur größte Eigenwerte oder solche in einem gegebenen reellen Intervall, vonInteresse.Tridiagonalstruktur kann entscheidend ausgenutzt werden.Führt auf Verfahren mit Aufwand O(n) pro Eigenwert (vgl. O(n2) beimQR-Verfahren).
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 86 / 177
BisektionsverfahrenTrennungseigenschaft
Wesentlich geht bei Bisektionsverfahren die Trennungseigenschaft (engl. interlacingproperty) der Eigenwerte Hermitescher Matrizen ein (vgl. Folie 146).
Bezeichnung: Sei A(k) ∈ Rk×k die k-te führende Hauptuntermatrix von A mit(den notwendig paarweise verschiedenen) Eigenwerten
Λ(A(k)) ={λ(k)1 < λ
(k)2 < · · · < λ
(k)k
}.
Dann gilt
λ(k+1)j < λ
(k)j < λ
(k+1)j+1 , k = 1, . . . , n− 1; j = 1, . . . , k − 1.
Die Trennungseigenschaft macht es möglich, die Anzahl der in einem gegebenenreellen Intervall enthaltenen Eigenwerte von A zu bestimmen.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 87 / 177
BisektionsverfahrenTrennungseigenschaft: Beispiel
A =
1 11 0 1
1 2 11 −1
−1.5 −1 −0.5 0 0.5 1 1.5 2 2.5 3
Λ(A( 4))
Λ(A( 3))
Λ(A( 2))
Λ(A( 1))
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 88 / 177
BisektionsverfahrenTrennungseigenschaft: Beispiel
Aus der Information
detA(1) = 1, detA(2) = −1, detA(3) = −3, detA(4) = 4,
folgt mit derTrennungseigenschaft sukzessiveA(1) besitzt keine negative Eigenwerte.A(2) besitzt genau einen negativen Eigenwert.A(3) besitzt genau einen negativen Eigenwert.A(4) besitzt genau zwei negative Eigenwerte.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 89 / 177
BisektionsverfahrenVorzeichenwechsel
Allgemein: bei einer Hermiteschen Tridiagonalmatrix ist die Anzahl negativer Ei-genwerte gegeben durch die Anzahl Vorzeichenwechsel in der Folge
1,detA(1),detA(2), . . . ,detA(n).
Treten in dieser Folge Nullen auf, bleibt diese Aussage richtig, wenn man als Vor-zeichenwechsel die Übergänge
+/0→ −, 0/− → +, aber nicht + /− → 0.
zählt.
Durch einen ShiftA−aI lässt sich so auch die Anzahl Eigenwerte vonA bestimmen,die kleiner als a ∈ R sind.
Die Anzahl Eigenwerte in [a, b) ergibt sich schliesslich aus der Differenz der Anzahlin (−∞, b) und in (−∞, a).
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 90 / 177
BisektionsverfahrenRekursive Determinantenberechnung
Entwicklung von detA(k) nach der k-ten Zeilen ergibt die rekursive Beziehung
detA(k) = ak detA(k−1) − b2k−1 detA(k−2).
Mit Shift λ ∈ R gilt somit für das charakteristische Polynom
pk(λ) = det(A(k) − λI )
der k-ten Hauptuntermatrix von A− λI die Rekursionsbeziehung
pk(λ) = (ak − λ) pk−1(λ)− b2k−1 pk−2(λ), k = 1, . . . , n,
mit der Initialisierungp−1(λ) ≡ 0, p0(λ) ≡ 1.
Anwendung dieser Iteration für eine Folge von λ-Werten lassen sich durch BisektionEigenwerte in beliebig vorgegebenen Intervallen beliebig genau einschließen.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 91 / 177
Inhalt
1 Organisatorisches
2 Einleitung
3 Das QR-Verfahren
4 Hermitesche Eigenwertaufgaben4.1 Jacobi-Verfahren4.2 Bisektion4.3 Divide & Conquer - Verfahren4.4 Berechnung der Singulärwertzerlegung
5 Anhang: Grundlagen aus der Linearen Algebra
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 92 / 177
Divide & Conquer - VerfahrenGrundidee
Idee: Zerlege symmetrische Tridiagonalmatrix
T =
a1 b1
b1 a2. . .
. . . . . . bn−1bn−1 an
∈ Rn×n
in
T =
[T1 OO T2
]+ bmvvT, m ≈ n
2, v = em + em+1.
Divide-and-Conquer (DQ) Strategie:Löse Eigenproblem für T1, T2 (zwei Probleme der halben Größe).Kombiniere diese Lösungen zur Lösung des Eigenproblems für T .Setze rekursiv fort.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 93 / 177
Divide & Conquer - VerfahrenFormulierung mittels Spektralbasis
Spektralkoordinaten: seien
Ti = QiΛiQTi , QT
i Qi = I , i = 1, 2.
Dann ist
T =
[Q1Λ1Q
T1 O
O Q2Λ2QT2
]+ bmvvT
=
[Q1 OO Q2
]([Λ1 OO Λ2
]+ bmuuT
)[QT
1 OO QT
2
], u =
[QT
1 OO QT
2
]v .
Setze
D :=
[Λ1 OO Λ2
]=: diag(d1, d2, . . . , dn), d1 ≥ d2 ≥ · · · ≥ dn
sowie ρ := bm. Dann istΛ(T ) = Λ(D + ρuuT).
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 94 / 177
Divide & Conquer - VerfahrenSäkulargleichung
Somit gilt λ ∈ Λ(T ) = Λ(D + ρuuT) genau dann, wenn
0 = det(D + ρuuT − λI ) = det((D − λI )(I + ρ(D − λI )−1uuT)
).
Lemma 4.2Für zwei Vektoren x ,y ∈ Rn gilt
det(I + xyT) = 1 + yTx .
Somit istdet(I + ρ(D − λI )−1uuT
)= 1 + ρuT(D − λI )−1u
d.h. die Eigenwerte von T sind die Nullstellen von
f(λ) = 1 + ρ
n∑i=1
u2idi − λ
.
Die Gleichung f(λ) = 0 heißt auch Säkulargleichung (engl. secular equation).
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 95 / 177
Divide & Conquer - VerfahrenGestalt von f(λ) (Beispiel)
−1 0 1 2 3 4 5 6−6
−4
−2
0
2
4
6
f(λ) = 1 +1
2
(1
1− λ+
1
2− λ+
1
3− λ+
1
4− λ
)Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 96 / 177
Divide & Conquer - VerfahrenBestimmung der Nullstellen (Grundidee)
Wegen
f ′(λ) = ρ
n∑i=1
u2idi − λ
> 0, λ 6∈ Λ(D),
ist f (für ρ > 0) streng monoton wachsend auf den Intervallen
(−∞, dn), (dn, dn−1), . . . , (d2, d1), (d1,∞).
Die Nullstellen von f werden getrennt durch {di}ni=1. Eine weitere Nullstelleliegt rechts von d1 (ρ > 0) bzw. links von dn (ρ < 0).f ist außerhalb von Λ(D) beliebig oft differenzierbar.Das Newton-Verfahren mit Startwert in jeweils einem Intervall konvergiert ineiner vom Eigenwert unabhängigen Anzahl von Schritten.Da die Auswertung f und f ′ jeweils O(n) Flops erfordert ergibt dies O(n)Flops pro Eigenwert, d.h. O(n2) Flops zur Berechnung aller Eigenwerte vonD + ρuuT.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 97 / 177
Divide & Conquer - VerfahrenEigenvektoren
Die Eigenvektoren lassen sich einfach aus den Eigenwerten bestimmen:
Lemma 4.3Ist α Eigenwert von D + ρuuT, so ist (D − αI )−1u ein zugehöriger Eigenvektor.
Da D−αI diagonal erfordert die Berechnung eines solchen Eigenvektors nur O(n)Flops.Diese Formel ist allerdings numerisch instabil – eine stabile Implementierung ist imBuch [Demmel, 1997] nachzulesen.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 98 / 177
Divide & Conquer - VerfahrenAlgorithmus
Algorithmus 4 : DQ-Verfahren für das symmetrisch-tridiagonale Eigenpro-blem.Gegeben : T ∈ Rn×n,T = TT tridiagonal.
1 if T ∈ R1×1 then2 return Q = 1, Λ = T
3 else
4 Zerlege T =
[T1 OO T2
]+ bmvvT
5 (Λ1,Q1) aus rekursivem Aufruf für (T1)6 (Λ2,Q2) aus rekursivem Aufruf für (T2)
7 Bilde D + ρuu> aus Λ1,Λ2,Q1,Q2
8 Bestimme Eigenwerte Λ und Eigenvektoren Q ′ von D + ρuuT
9 Berechne Eigenvektoren von T als Q =
[Q1 OO Q2
]Q ′
10 return Q , Λ
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 99 / 177
Divide & Conquer - VerfahrenKomplexität
Bezeichnet t(n) die zur Anwendung von Algorithmus 4 erfordeliche Anzahl Flops,so ergibt sich
t(n) = 2t(n/2) 2 rekursive Aufrufe für kleinere Eigenprobleme
+O(n2) Eigenwerte von D + ρuuT
+O(n2) Eigenvektoren von D + ρuuT
+ cn3 MultiplikationQ =
[Q1 OO Q2
]Q ′
Ignoriert man die O(n2) Terme ergibt dies t(n) = 2t(n/2) + cn3. Auflösungder Rekursion ergibt t(n) ≈ c 43n
3 (ÜA).Für voll besetzte Matrizen Q1,Q2,Q
′ erhält man mit StandardMatrix-Matrix Multiplikation im letzten Schritt als Konstante c = 1.Durch Deflation erhält man für Q ′ eine dünn-besetzte Matrix.Mit Hilfe der schnellen Multipolmethode kann die Komplexität des Verfahrensauf O(n logp n) reduziert werden (siehe [Demmel, 1997], [Gu & Eisenstat,1995]).
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 100 / 177
Divide & Conquer - VerfahrenDeflation
Liegt nicht der generische Fall (alle di paarweise verschieden und alle ui 6= 0)vor, so besitzt f nur k < n vertikale Asymptoten und somit k < n Nullstellen.Man kann jedoch zeigen (ÜA), dass die fehlenden n− k Eigenwerte vonD + ρuuT gegeben sind durch {di : ui = 0 oder di = di+1}.Diese Phänomen wird Deflation genannt.In der Praxis wird diese vorgenommen, wenn di+1 ≈ di oder wenn |ui|hinreichend klein.Der belschleunigende Effekt von Deflation besteht darin, dass im Fall ui = 0der Vektor ei zugehöriger Eigenvektor ist. (ÜA)Somit ist Ei auch die i-te Spalte von Q ′ und zur Multiplikation mit Q1 oderQ2 mit dieser Spalte fällt kein Aufwand an.Eine ahnliche Vereinfachung ergibt sich für di = di+1.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 101 / 177
Divide & Conquer - VerfahrenLösung der Säkulargleichung
Newton-Verfahren zur Lösung der Säkulargleichung f(λ) = 0 mitStartwert λj :1 Approximiere f in Umgebung von λj durch Tangente.2 Nehme Nullstelle λj+1 der Tangente als nächste Approximation.
Die Abbildungen auf der nächsten Folie zeigen den Verlauf der Funktion f wennu2i = 1/2 (früheres Bild) durch i2i = 103 ersetzt wird, was immer noch zu groß füreine Deflation ist.
Da f in diesem Fall fast immer eine nahezu waagrechte Tangente besitzt würdedas klassische Newton-Verfahren für nahezu jeden Startwert λ0 aus dem aktuellenIntervall springen.
Eine erfolgreiche Alternative besteht darin, f in (di+1, , di) durch rationale Aus-drücke der Form
f(λ) ≈ h(λ) :=c1
di − λ+
c2di+1 − λ
+ c3
zu approximieren, welche f an der aktuellen approximativen Nullstelle λj berühren.Details in [Demmel, 1997].Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 102 / 177
Divide & Conquer - VerfahrenLösung der Säkulargleichung
−1 0 1 2 3 4 5 6−6
−4
−2
0
2
4
6
1.99 1.995 2 2.005 2.01−6
−4
−2
0
2
4
6
f(λ) = 1 + 10−3
(1
1− λ+
1
2− λ+
1
3− λ+
1
4− λ
)
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 103 / 177
Inhalt
1 Organisatorisches
2 Einleitung
3 Das QR-Verfahren
4 Hermitesche Eigenwertaufgaben4.1 Jacobi-Verfahren4.2 Bisektion4.3 Divide & Conquer - Verfahren4.4 Berechnung der Singulärwertzerlegung
5 Anhang: Grundlagen aus der Linearen Algebra
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 104 / 177
Berechnung der Singulärwertzerlegung
Bekanntlich existiert für jede Matrix A ∈ Cm×n die Singulärwertzerlegung (engl.singular value decomposition, SVD)
A = UΣVH
mit unitären Matrizen U ∈ Cm×m, V ∈ Cn×n sowie einer „Diagonalmatrix“
Σ =
[Σr OO O
]∈ Rm×n, Σr = diag(σ1, . . . , σr),
σ1 ≥ · · · ≥ σ2 ≥ σr > 0.
Annahmen:Wir beschränken uns hier auf den reellen Fall A ∈ Rm×n. Dann sind U , Vorthogonal.Wir können m ≥ n annehmen, andernfalls betrachten wir AT anstelle von A,aus deren SVD sich sofort die von A ergibt.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 105 / 177
Berechnung der SingulärwertzerlegungRückführung auf Eigenwertaufgabe
Aus der SVD von A ergeben sich sofort die Spektralzerlegungen
ATA = VΣTΣVT, AAT = UΣΣTUT
von ATA bzw. AAT, was etwa folgendes Vorgehen nahelegt:
1 Bilde ATA,2 berechne Spektralzerlegung ATA = VΛVT, Λ = diag(λ1, . . . , λn),3 Σr := diag(
√λ1, . . . ,
√λr) aus nichtnegativen Eigenwerten,
4 Berechne U aus UΣ = AV (z.B. QR-Zerlegung).
In endlich genauer Arithmetik geht jedoch im Allgemeinen bei der Bildung von ATAbzw. AAT Genauigkeit unwiederbringlich verloren. Daher sind Verfahren gefragt,welche direkt mit A arbeiten.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 106 / 177
Berechnung der SingulärwertzerlegungRückführung auf Eigenwertaufgabe: Matlab-Beispiel
format long e, rng(2)[U,R] = qr(randn(3)); [V,R] = qr(rand(2));S = diag([1, 1.23456789e-10]);A = U(:,1:2) * S * V’;Lambda = eig(A’*A)Sigma = svd(A)fprintf(’Sqrt(|Lambda|) = %d, %d\n’, sqrt(abs(Lambda)))
Lambda = -2.775557561562891e-171.000000000000000e+00
Sigma = 1.000000000000000e+001.234567736930711e-10
Sqrt(|Lambda|) = 5.268356e-09, 1
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 107 / 177
Berechnung der SingulärwertzerlegungRückführung auf Eigenwertaufgabe: Sensitivität
Sensitivität von Eigenwerten/Singulärwerten:
|λk(ATA + E)− λk(ATA)| ≤ ‖E‖2|σk(A + E)− σk(A)| ≤ ‖E‖2
Rückwärtsstabiles Verfahren liefert:
σ̃k = σk(A + E), ‖E‖/‖A‖ = O(εMach)
Stabile Berechnung von λk(ATA):
|λ̃k − λk| = O(εMach‖ATA‖) = O(εMach‖A‖2)
Wurzel ziehen
|σ̃k − σk| = O
(|λ̃k − λk|√
λk
)= O
(εMach
‖A‖2
σk
)Fazit: Für kleine Singulärwerte σk � ‖A‖ wird Sensitivität faktisch quadriert.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 108 / 177
Berechnung der SingulärwertzerlegungErweiterte Matrix
Für m = n ergibt sich mit A = UΣVT für die erweiterte Matrix
H :=
[O AT
A O
]∈ R2n×2n
die Spektralzerlegung[O AT
A O
] [V VU −U
]=
[V VU −U
] [Σ OO −Σ
]mit der (bis auf den Faktor 1/
√2) orthonormalen Eigenvektormatrix
[V VU −U
].
Beobachtungen:
Die Singulärwerte von A sind die Beträge der Eigenwerte von H .Die Singulärvektoren von A können aus den Eigenvektoren vonH extrahiertwerden.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 109 / 177
Berechnung der SingulärwertzerlegungErweiterte Matrix: rechteckiger Fall
Für m > n gilt
VTATAV = ΣTΣ = diag(σ21 , . . . , σ
2n),
UTAATU = ΣΣT = diag(σ21 , . . . , σ
2n, 0, . . . , 0︸ ︷︷ ︸
m−n
).
Zerlegt man die Spalten von U in
U =[U1 U2
], U1 ∈ Rm×n,U2 ∈ Rm×m−n,
so ist
Q :=1√2
[V V O
U1 −U1
√2U2
]∈ R(m+n)×(m+n)
orthogonal und es gilt
QT
[O AT
A O
]Q = diag(σ1, . . . , σn,−σ1, . . . ,−σn, 0, . . . , 0︸ ︷︷ ︸
m−n
).
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 110 / 177
Berechnung der SingulärwertzerlegungDas Verfahren von Golub & Kahan
Ähnlich wir beim QR-Verfahren ist es vorteilhaft, bei der Berechnung der SVD dieMatrix zunächst (orthogonal) zu transformieren, in diesem Fall in Bidiagonalform.Die Rechnung gliedert sich dann in zwei Phasen:× × × ×× × × ×× × × ×× × × ×× × × ×× × × ×
Phase 1−−−−−−−−−−→
Bidiagonalisierung
× ×× ×× ××
Phase 2−−−−−→Iteration
××××
Phase 1 wird Golub-Kahan-Bidiagonalisierung (nach [Golub & Kahan, 1965])genannt. Diese erfordert mit Householder-Spiegelungen O(mn2) Flops.In Phase 2 wird eines der Eigenwertverfahren für symmetrische Matrizenangewandt, wobei nur mit der Bidiagonalmatrix gearbeitet wird. DasQR-Verfahren benötigt typischerweise O(n log | log εMach|) Iterationsschritte,um jeden Eigenwert bis auf Machinengenauigkeit zu berechnen, bei O(n)Flops pro Schritt also insgesamt O(n2) Iterationen.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 111 / 177
Berechnung der SingulärwertzerlegungBidiagonalisierung
Abwechselnde Householder-Reflektionen von links (U>j ·) bzw. rechts (·Vj) führenschrittweise auf Bidiagonalform:
× × × ×× × × ×× × × ×× × × ×× × × ×× × × ×
U>
1 ·−−−→
× × × ×0 × × ×0 × × ×0 × × ×0 × × ×0 × × ×
·V1−−→
× × 0 0× × ×× × ×× × ×× × ×× × ×
U>2 ·−−−→
× ×× × ×0 × ×0 × ×0 × ×0 × ×
·V2−−→
× ×× × 0× ×× ×× ×× ×
U>
3 ·−−−→
× ×× ×× ×0 ×0 ×0 ×
. . .
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 112 / 177
Berechnung der SingulärwertzerlegungBidiagonalisierung
U>4 ·−−−→
× ×× ×× ××00
=: B =: Q>L AQR
QL = U1U2U3U4,
QR = V1V2
A = QLBQTR
Bidiagonalform ist spätestens nach m− 2 Housholder-Spiegelungen von links sowien− 2 von rechts erreicht.
Nach erfolgter Berechnung der SVD B = UBΣVTB der Bidiagonalmatrix B erhal-
ten wir mitA = QLUB︸ ︷︷ ︸
=:U
ΣVTBQ
TR︸ ︷︷ ︸
=:VT
die SVD von A.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 113 / 177
Berechnung der SingulärwertzerlegungBidiagonalisierung
Mit B = QTLAQR gilt ebenso[
QTR O
O QTL
] [O AT
A O
] [QR OO QL
]=
[O QT
RATQL
QTLAQR O
]=
[O BT
B O
]=: HB ,
d.h. der Golub-Kahan-Bidiagonalisierung entspricht einer orthogonalen Ähnlichkeit-stransformation der Matrix H auf Bandstruktur HB .
Führt man noch eine umordnung der Zeilen und Spalten gemäß der „perfect shuffle“Permutation
1, n+ 1, 2, n+ 2, 3, n+ 3, . . .
durch, so wird HB zu einer symmetrischen Tridiagonalmatrix mit HauptdiagonaleNull und unterer/oberer Nebendiagonale α1, β1, α2, β2, α3 . . . .
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 114 / 177
Berechnung der SingulärwertzerlegungQR für SVD
Bezeichnung:
B =
α1 β1
α2. . .. . . βn−1
αn
Vereinfachende Annahmen:
B ist quadratisch, andernfalls müssen nur Nullzeilen und -spalten in HB
gestrichen werden.Alle αj sind ungleich Null, andernfalls ist Null ein Singulärwert und kannsofort abgespaltet werden.Alle βj sind ungleich Null, andernfalls kann das Problem in zwei kleinereProbleme zerlegt werden.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 115 / 177
Berechnung der SingulärwertzerlegungQR für SVD
Die Matrix HB entspricht der zyklischen Matrix C imProdukt-QR-Eigenwertproblem im Spezialfall k = 2 sowie A1 = AT
2.Daher: QR-Schritte vom Grad 2m mit Shift-Paaren ±µ (ω = −1).Da die beiden Blöcke transponiert zueinander sind, entsprechen sich diebulge-chasing Schritte und können somit an nur einer der beidendurchgeführt werden.m = 1: Golub-Kahan QR-Verfahren für SVD-Berechnung. EntsprichtDoppelshift QR-Verfahren angewandt auf PTHBP (perfect shufflePermutation) mit Shift-Paaren ±µ ohne redundante Operationen.Es gilt: βn−1 → 0 kubisch, αn konvergiert gegen einen Singulärwert von A,der daraufhin deflationiert werden kann.
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 116 / 177
Berechnung der SingulärwertzerlegungQR für SVD, hohe relative Genauigkeit
[Demmel & Kahan, 1990]: wichtige Verbesserung des Golub-Kahan Verfahrens.Einträge der Bidiagonalmatrix B bestimmen deren Singulärwerte zu hoherGenauigkeit, d.h. winzige relative Störungen der Einträge führen nur zuwinzigen relativen Störungen der Singulärwerte.Dies ist nicht der Fall für die Einträge der Tridiagonalmatrix T = BTB .Idee: Subtraktionsfreie Formulierung des Golub-Kahan QR Schrittes ohneShift (µ = 0). QR-Iteration ohne Shifts bis kleine Singulärwerte gefunden,danach übrige mit geschifteten QR-Schritten.Weitere Verbesserungen mit hoher relativer Genauigkeit für alle Singulärwertesowie Beschleunigung: differential quotient-difference method with shifts(dqds), [Fernando & Parlett, 1994], [Demmel, 1997].
Oliver Ernst (Numerische Mathematik) Numerische Lineare Algebra Wintersemester 2013/14 117 / 177
top related