3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem...

47
3.5 Die Kondition eines linearen Gleichungssystems (einer Matrix) Neu benötigt: Matrixnorm und ihre Eigenschaften. || . || Matrixnorm: ||A|| > 0 für A = 0 ||a*A|| = |a|*||A|| für aR ||A+B|| <= ||A|| + ||B|| Besonders wichtig sind Matrixnormen, die zu einer Vektornorm „passen“ : 3.5.1. Eine Matrixnorm ist mit einer Vektornorm verträglich, wenn x A Ax . Vektor Matrix Vektornorm - 34 -

Transcript of 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem...

Page 1: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.5 Die Kondition eines linearen Gleichungssystems (einer Matrix) Neu benötigt: Matrixnorm und ihre Eigenschaften.

|| . || Matrixnorm: ||A|| > 0 für A = 0 ||a*A|| = |a|*||A|| für a∈R ||A+B|| <= ||A|| + ||B||

Besonders wichtig sind Matrixnormen, die zu einer Vektornorm „passen“ :

3.5.1. Eine Matrixnorm ist mit einer Vektornorm verträglich,

wenn xAAx ⋅≤ . Vektor Matrix Vektornorm

- 34 -

Page 2: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.5.2. Eine Matrixnorm heißt submultiplikativ, wenn stets gilt

BABA ⋅≤⋅

3.5.3. Eine submultiplikative Matrixnorm, verträglich mit einer vorgegeben Vektornorm, kann leicht definiert werden

durch xAx

Ax 0

sup≠

= ,

die sog. Grenzen-Norm oder lub-Norm (least upper bound):

yyAAyAx

Axy

Ayx ∀⋅≤⇒=≤ sup

und

- 35 -

Page 3: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

BAx

Bxy

Ay

xBx

BxABx

xABx

BA

xBxy

x

⋅≤⋅≤

≤⎟⎟⎠

- 36 -

⎞⎜⎜⎝

⎛⋅==⋅

= supsup

supsup

So erhält man zu den Vektornormen ∑==

n

iixx

11

und || x ||∞ =maxi=1,…,n |xi | dazugehörige Matrix-Grenzen-Normen || . ||1 und || . ||∞ .

Page 4: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

∑ ⋅== iiT yxyxyx ),( 3.5.4. Das innere Produkt

führt auf die

3.5.5. Euklid’sche .Norm: ∑=⋅== 22

2 ),( iT xxxxxx

und die damit verträgliche Matrixnorm

3.5.6. (2-Norm): 2

2

02

supx

AxA

x≠=

mit der Eigenschaft

xAAxAxAxAxAxAxAxAx TTTTT )()()(),(2

2====

)()(supsup max

02

2

2

2

0

2

2AA

xxxAAx

x

AxA T

T

TT

xxλ===

≠≠

- 37 -

Page 5: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

)()( maxmax2AAAA T σλ == Also

wobei der größte Eigenwert von A)(max AATλ TA ist, und )( max Aσ der größte Singulärwert von A.

Diese Matrixnorm ist i.A. nicht einfach berechenbar!

3.5.7. Def. der Frobeniusnorm: ∑=2

,: kjFaA

Fasse die Matrix A als Vektor auf und benutze für diesen langen Vektor die euklid’sche Vektornorm ||.||F Die Frobeniusnorm ist mit der euklid’scher Vektornorm verträglich und submultiplikativ.

- 38 -

Page 6: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.6 Gestörte Eingabedaten

Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x , untersuchen wir wieder den Einfluss von Eingabefehlern bei sonst exakter Rechnung Kondition der Matrix

Eingabedaten mit Fehler: bbbb ~=Δ+→

Damit ergibt sich an Stelle der exakten Lösung x die Näherung

xxxx ~=Δ+→

Mit Ax = b und bbbxxAxA ~)(~ =Δ+=Δ+=

gilt: bxA Δ=Δ oder bAx Δ=Δ −1

- 39 -

Page 7: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Die Matrix A wird hier als exakt angenommen! Damit erhält man die Ungleichungen

22

1

2

12

bAbAx Δ≤Δ=Δ −−

2222xAAxb ≤=

wegen der Verträglichkeit der euklid’schen Vektor- und Matrixnorm.

Also auch 2

2

2

1bA

x≤ und damit insgesamt:

- 40 -

Page 8: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.6.1. ( )

2

222

1

2

2

bb

AAxx Δ

⋅⋅≤Δ −

rel.Fehler Kondition rel. Fehler in x von A in b 3.6.2 Definition: Die Kondition der Matrix A bzgl. der euklid’schen Norm ist gegeben durch

22

12 )( AAAcond ⋅= −

(Genauso kann man Konditionszahlen bzgl. anderer verträglicher Normen definieren.)

- 41 -

Page 9: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Die Konditionszahl beschreibt also wieder, wie sich ein relativer Eingabefehler in Vektor b auf das Resultat, den Lösungsvektor x, auswirkt.

cond(A) groß kleine Störungen in b bewirken große Fehler in x

Man beachte: Der relative Fehler des Gesamtvektors wird abgeschätzt, nicht der Fehler einzelner Komponenten!

Als Vektor betrachtet ist , aber ⎟⎟⎠

⎞⎜⎜⎝

⎛≈⎟⎟

⎞⎜⎜⎝

⎛ −

10

110 16

komponentenweise ist natürlich . 010 16 ≈−

- 42 -

Page 10: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

- 43 -

⎟⎟⎠

⎞⎜⎜⎝

⎛ −=⎟⎟

⎞⎜⎜⎝

⎛= −

101010

10110 99

19

AundA Beispiel:

Normen: 22≈A und

9

2

1 102 ⋅≈−A

Also , d.h. A hat große Konditionszahl. 9

2 102)( ⋅=Acond

Wähle speziell: ,0

,10

,11 11

⎟⎟⎠

⎞⎜⎜⎝

⎛Δ=Δ⎟⎟

⎞⎜⎜⎝

⎛==⎟⎟

⎞⎜⎜⎝

⎛= − b

bbAxb

Dann folgt 2,1,10 19 ==Δ⋅=Δ bxbx

Page 11: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Damit ergibt sich

bbb

xx Δ

⋅⋅=Δ⋅

=Δ 91

9

1021

10

und

991 1021022)( ⋅=⋅⋅=⋅= −AAAcond

Ein kleiner Fehler in der ersten Komponente von b wirkt sich verstärkt um Faktor 109 in der ersten Komponente von x aus.

- 44 -

Page 12: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.6.3. Anmerkung: Speziell wichtige Klasse von Matrizen mit Konditionszahl 1: Q ist orthogonale Matrix Q–1 = QT oder Q QT = I = QTQ ,

;2

2

2

2xxxQxQxQx TTT ===

22xQx = 1sup

2

202

== ≠ xQx

Q x Und damit auch cond2(Q)=1

- 45 -

Page 13: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Außerdem gilt

)()( 22 AcondQAcond =

denn 22

2

02

2

02

supsup Ax

Axx

QAxQA

xx===

≠≠ Orthogonale Matrizen sind selbst gut konditioniert und lassen bei Multiplikation mit einer Matrix die Kondition der Ausgangsmatrix unverändert!

- 46 -

Page 14: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.7 Kosten der Gauss-Elimination

3.7.1. Zunächst Dreieckssystem: ii

n

ij jijii

nnnn

a

xabx

nnifürabx

∑ +=−

=

−−==

1

:1,,2,1;/

K

Programm: FOR i = n,...,1 DO x(i) = b(i); FOR j=i+1,…,n DO x(i) = x(i) - a(i,j)x(j); ENDFOR x(i) = x(i)/a(i,i); ENDFOR

- 47 -

Page 15: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

In jedem Schritt i fallen eine Division und jeweils n-i Additionen und Multiplikationen an:

Also ( )

222)1( 21

1

1

1

nnnnjinn

j

n

i

−=−

==− ∑∑−

=

=

Additionen und genauso viele Multiplikationen. Dazu kommen n Divisionen.

3.7.2. Definition: Unter flop verstehen wir eine elementare ‚floating point operation’ (Gleitpunktoperation wie + , - , * , / ). Die Kosten eines Algorithmus werden üblicherweise in flop angegeben. Dazu gibt man in erster Näherung nur den Term höchster Ordnung an.

- 48 -

Page 16: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

- 49 -

In unserem Fall: sflopnnnnn '22

2 222

→=+⎟⎟⎠

⎞⎜⎜⎝

⎛−⋅

oder sflopn ')( 2Ο

3.7.3. Exkurs: Landau’sche Symbole:

1. Betrachte Funktion in n für n ∞ :

NnfürMngnffallsngnf ≥∞<≤Ο=)()()),(()(

Beispiel: ; denn n)( 22 nnn Ο=+ 2 ist der am stärksten wachsende Term f(n) / g(n) = 1 + 1/n <= M

Page 17: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

2. Betrachte Funktion in h für h 0 :

δ≤∞<≤Ο= hfürchghffallshghf)()()),(()(

Beispiel: ; denn h)(2 hhh Ο=+ ist der am langsamsten schrumpfende Term f(h) / g(h) = h + 1 <= c O(..) bezeichnet also jeweils den wichtigsten Term!

- 50 -

Page 18: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Andere, formale Möglichkeit zum Zählen von Operationen:

Schreibe Programm um als Zähler: add = div = mult = 0;

FOR i=n,...,1 DO FOR j=i+1,…,n DO add = add + 1; mult = mult +1; ENDFOR div = div + 1; ENDFOR

Damit ergibt sich mit add := Zahl der Additionen:

)(

2)(1

21

1

1

nninaddni

n

ijniΟ+=−== ∑∑∑

=+== (genauso mult und div)

- 51 -

Page 19: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.7.4. Kosten der Gauss-Elimination:

Im k-ten Teilschritt arbeitet man in einer n-k x n-k Untermatrix Ak

In dieser Matrix wird für i=k+1,...,n neu berechnet :

⎟⎟⎠

⎞⎜⎜⎝

⎛−=

0*

;kjikijij alaa

Das sind ca. (n-k)2 Additionen und genauso viele Multiplikationen. Insgesamt also

sflopnnnnnjknn

j

n

k')(

32

6)12)(1(22)(2 231

1

21

1

2 Ο+=−−

=∑=∑ −−

=

=

- 52 -

Page 20: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Dazu kommen O(n2) flop’s für die Spaltenpivotsuche und O(n2) flop’s für das Auflösen des Dreiecksgleichungssystems.

Diese Kosten fallen aber praktisch nicht ins Gewicht gegenüber den obigen 2/3*n3 .

- 53 -

Page 21: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.7.5 Beispiel zur Verdeutlichung der Kondition

↓+↓

⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜

−−−

−−−

=M

L

MOOMM

O

MO

L

1111

10111111001

A

Eliminiere die erste Spalte durch Addieren der ersten Zeile:

+↓

⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜

−−

−M

L

MOOMM

2110

211021011

Im nächsten Schritt

- 54 -

Page 22: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜

− 4100

410021011

L

MOOMM

Und endlich ⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜

=

1

2

221

412111

n

n

UMO

In jedem Schritt verdoppelt sich der größte Eintrag in der Matrix! Kondition von A selbst ist O(n), Kondition von U ist O(2n-1) !

- 55 -

Page 23: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

- 56 -

Im Verlauf der Gauss-Elimination kann die Kondition der Matrizen sehr stark anwachsen! Aber: In der Praxis kommt das so gut wie nie vor! Gauss-Elimination mit Pivotsuche gilt als numerisch stabil.

Page 24: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.8 Methode der kleinsten Quadrate (Least Squares, Normalgleichung)

- 57 -

Ausgangspunkt: Überbestimmtes System. Mehr Gleichungen als Unbekannte A x = b

Sei A eine m x n – Matrix mit m>n und maximal vollem Rang:

?

rang(A) = n, d.h. A bildet den Rm in den ganzen Rn ab.

Das System A x = b ist dann i.A. nicht lösbar!

Versuche, das Problem so gut wie möglich zu lösen! Minimiere dazu die Abweichung A x - b in passender Norm!

Page 25: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Am besten eignet sich dazu die euklid’sche Norm, da sie auf eine differenzierbare Funktion f führt:

3.8.1. : 2

2min bAxx −

∑ ∑∑

= =

=

=

⎟⎟⎠

⎞⎜⎜⎝

⎛−=

⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜

=

=+−=−−=

=−=

m

k

n

jkjjkn

jmjjm

n

jjj

TTTTTT

n

bxabxa

bxa

bbbAxAxAxbAxbAx

bAxxxf

1

2

1,

2

21

,

11,1

2

21

)()(

)(

2)()(

:),,(

M

K

- 58 -

Page 26: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Die Funktion f beschreibt einen Paraboloiden (n-dim. Parabel). Das eindeutige Minimum dieser Funktion ist an der Stelle, an der die Ableitung gleich Null ist (waagrechte Tangente).

∑ ∑= =

⎟⎟⎠

⎞⎜⎜⎝

⎛−==

m

kik

n

jkjjk

i

abxadxdf

1,

1,20

für i=1,...,n

oder k

m

kik

n

jjjk

m

kik baxaa ∑∑∑

===

=1

,1

,1

,

- 59 -

Page 27: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

( ) ( )

iT

iT bAAxA = , i=1,...,n In Matrixschreibweise:

3.8.2. Normalgleichung zu Ax=b: bAAxA TT = Die Matrix ATA ist eine n x n – Matrix von Rang n (da A Rang n hat) und beschreibt daher ein eindeutig lösbares, quadratisches lineares Gleichungssystem. Allerdings ist die Kondition von ATA oft sehr viel schlechter als die von A, denn:

- 60 -

Page 28: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

)(

)(/)()(/)())(()(

))()((*)(

)()(

22

2

12

2

2min

2maxminmax

maxmax

11maxmax

2

1

22

AcondAA

AAAAAAAAinvAA

AAAAAAAA

AAAAAAcond

TT

TT

TTTT

TTT

=⋅=

===

=⋅=

==

= ⋅ =−

−−

σσλλ

λλ

λλ

Im folgenden Abschnitt werden wir daher ein besseres Verfahren zur Lösung dieses Problems kennen lernen. Dazu werden besser orthogonale Matrizen verwendet, um diese Konditionsverschlechterung zu vermeiden.

- 61 -

Page 29: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.8.3. Lineares Ausgleichsproblem (Ausgleichsgerade)

Gegeben: Punktepaare in der Ebene , i=1,...,n; ),( ii yx

Gesucht: beste Gerade, die möglichst nahe an den Punkten liegt,

y = g(x) = ax + b .

Es soll also gelten: ⎟⎟⎟

⎜⎜⎜

⎛≈

⎟⎟⎟

⎜⎜⎜

+

+

nn y

y

bxa

bxaMM11

oder in Matrixschreibweise

- 62 -

Page 30: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

mit und y

ba

A ≈⎟⎟⎠

⎞⎜⎜⎝

⎛,

1

1 1

⎟⎟⎟

⎜⎜⎜

⎛=

nx

xA MM .

1

⎟⎟⎟

⎜⎜⎜

⎛=

ny

yy M

Die Normalgleichung lautet also

.

1

1

1

2

1

1

⎟⎟⎟⎟

⎜⎜⎜⎜

=⎟⎟⎠

⎞⎜⎜⎝

⎟⎟⎟⎟

⎜⎜⎜⎜

=⎟⎟⎠

⎞⎜⎜⎝

∑∑

=

=

==

=

j

n

jj

n

jj

n

jj

n

jj

n

jj

T

yx

y

ba

xx

xn

ba

AA

Die Lösung dieses 2 x 2 – Gleichungssystems liefert

a und b, und damit die gesuchte Gerade y = ax + b .

- 63 -

Page 31: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Allgemeiner: Ansatzfunktionen und

))(,),(1 xgxg mK

Punkte , n>m ,(,),,( 11 nn yxyx K

Gesucht : mit ∑=

=m

kkk xgaxf

1)()( njyxf jj ,,1,)( K=≈

Mit ist dann ⎟⎟⎟

⎜⎜⎜

⎛=

nmn

m

xgxg

xgxgG

()(

)()(

1

111

L

MM

L

⎟⎟⎟

⎜⎜⎜

⎛=

⎟⎟⎟

⎜⎜⎜

n

T

m

T

y

yG

a

aGG MM

11

zu lösen.

Ergebnis ist die ‚näheste’ Funktion an den vorgegebenen Punkten, die aus den g1,..., gm linear zusammengesetzt ist.

- 64 -

Page 32: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.9. Die QR-Zerlegung einer Matrix

Schon vorher haben wir bemerkt: - cond(U) in GE ev. groß, auch bei kleinem cond(A); - Für A schlecht konditioniert: was ist der Rang von A! - cond(AT A) groß, - aber cond(QA) = cond(A), falls Q orthogonal.

Also sind orthogonale Matrizen sehr gut für äquivalente Umformungen von A geeignet (vgl. LU-Zerlegung).

Außerdem ist Q–1 = QT , also sind Gleichungssysteme in Q leicht zu lösen.

Versuche daher, analog zu A=LR , eine Zerlegung der Form

3.9.1. A = QR zu finden, mit Q orthogonal und R obere Dreiecksmatrix.

- 65 -

Page 33: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.9.2 Elementare orthogonale Matrizen Orthogonale 2 x 2 – Matrix :

Givensreflexion. Denn ⎟⎟⎠

⎞⎜⎜⎝

⎛−

=)cos()sin(

)sin()cos(ϕϕϕϕ

G

;

1001

)(cos)(sin)sin()cos()cos()sin()cos()sin()sin()cos()(sin)(cos

)cos()sin()sin()cos(

)cos()sin()sin()cos(

22

22

⎟⎟⎠

⎞⎜⎜⎝

⎛=

=⎟⎟⎠

⎞⎜⎜⎝

+−−+

=

=⎟⎟⎠

⎞⎜⎜⎝

⎛−⎟⎟

⎞⎜⎜⎝

⎛−

==

ϕϕϕϕϕϕϕϕϕϕϕϕ

ϕϕϕϕ

ϕϕϕϕ

GGGGT

- 66 -

Page 34: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

- 67 -

⎟⎟⎠

⎞⎜⎜⎝

⎛− )cos()sin(

)sin()cos(ϕϕϕϕ

Alternativ Givensrotation:

G ist eindeutig bestimmt durch den ‘Winkel’ ϕ. Bestimme nun ϕ so, dass

⎟⎟⎠

⎞⎜⎜⎝

⎛==

2221

1211~~~~~aaaa

GAA obere Dreiecksmatrix wird.

Dazu muss gelten:

( ) 0)cos()sin()cos()sin(~ !

211121

1121 =−=⎟⎟

⎞⎜⎜⎝

⎛−= aa

aa

a ϕϕϕϕ

Lösung: ;)cot(21

11

aa

=ϕ ⎟⎟⎠

⎞⎜⎜⎝

⎛=

21

11

aaarcctgϕ oder ⎟⎟

⎞⎜⎜⎝

⎛=

11

21

aaarctgϕ

Ist a21 =0, so ist keine weitere Transformation nötig!

Page 35: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Numerisch stabilere Art der Berechnung : (a21 oder a11 könnten fast 0 sein):

;)sin(;)cos(;)( 21112

2121111 ρ

ϕρ

ϕρ aaaaasign ==+=

3.9.3. Givens-Reflexion für den allgemeinen n x n – Fall:

Im Wesentlichen Einheitsmatrix, bis auf 2 x 2 – Block, der wie oben definiert ist, abhängig von ϕ. Multiplikation mit allgemeiner Givens-Matrix:

- 68 -

Page 36: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

j i

i

j

Gij

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

=

1

1)cos()sin(

1

1)sin()cos(

1

1

O

O

O

ϕϕ

ϕϕ

- 69 -

Page 37: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

zur Elimination eines Elementes aij der Matrix A . Dazu multiplizieren wir Gij ⋅A . Dieses Produkt verändert nur die i-te und die j-te Zeile von A. Es genügt, vom Gesamt-System nur diesen 2 x 2 – Teil zu betrachten. Also muss wieder

⎟⎟⎠

⎞⎜⎜⎝

⎛=

ij

jj

aa

arcctgϕ gesetzt sein wie oben. (1 j und 2 i )

Mit einer solchen Matrix G21 wird dann im ersten Schritt a21 zu Null gemacht.

⎟⎠

⎞⎜⎝

⎛−

=⎟⎠

⎞⎜⎝

⎛−

=⎟⎠

⎞⎜⎝

⎛=

cssc

GI

GG

)cos()sin()sin()cos(

,0

021 ϕϕ

ϕϕ

- 70 -

Page 38: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Genauere Analyse eines allgemeinen Eliminationsschritts:

AGaa

aa

cs

sc

i

j

ji

iiij

jijj

⋅=

⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜

⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜

−,

000

0

OMM

O

O

O

O

O

verändert nur j-te und i-te Zeile; i-te Zeile: ikjkik casaa −→ für k=j,...,n

!0= speziell: −→ ijjjij casaa soll Null werden und legt daher ϕ fest. j-te Zeile: ikjkjk sacaa +→ für k=j,...,n mit c und s zu obigen ϕ .

- 71 -

Page 39: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Verwende der Reihe nach zur Bearbeitung 13121 ,,, nGGG K

der ersten Spalte, also um zu Null zu machen, 13121 ,,, naaa K

und danach , ..... , , und 24232 ,,, nGGG K 221 , −−− nnnn GG 1−nnG

um , ..... , , und zu Null zu 24232 ,,, naaa K 221 , −−− nnnn aa 1−nna machen.

Die Reihenfolge, in der die aj,i zu Null gemacht werden, ist gegeben durch:

- 72 -

Page 40: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

- 73 -

2/)1(321

21

.

−−− nnnn

n

L

MM

..

..

.

Jeweils nötig ist eine Multiplikation mit Givens-Reflexion G i,j , i=1,...,n-1 und j=i+1,...,n.

Also benötigt man insgesamt n(n-1)/2 Givensreflexionen um eine quadratische n x n –Matrix auf Dreiecksgestalt zu transformieren.

Man benutze also immer das Diagonalelement ajj und eine Kombination von i-ter/j-ter Zeile, um aij zu Null zu machen.

Page 41: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

- 74 -

2112,12,1,: GGGGGQ nnnnnnnT LLL −−−−= Mit

ergibt sich also

RAGGGGGAQ nnnnnnnT == −−−− 2112,12,1, LLL

mit einer oberen Dreiecksmatrix R.

Dann ist , da und A=Q*R. 1,121 −= nnn GGGQ LL ijTij GG =

Q ist gegeben durch die einzelnen Gij; jedes Gij ist eindeutig gegeben durch das ϕij, das nötig war, um genau ein aij zu eliminieren. Genauso kann man für eine m x n Matrix A (m>n) rank(A)=n eine QR- Zerlegung berechnen mit

A = Q . R

Page 42: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

- 75 -

Wie bei der Gauss-Elimination eliminiert man also mit den Diagonalelementen der Reihe nach sämtliche Unterdiagonalelemente. Der Vorteil der QR-Zerlegung: cond(A) = cond(QR) = cond(R) Gut für schlecht konditionierte Systeme Anwendbar auf rechteckige Systeme

Andere Orthogonalisierungsverfahren: - Gram-Schmidt (orthonormalisiere Vektoren) - Householder (erzeuge in einem Schritt eine ganze Nullspalte).

Page 43: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

3.9.4. Anwendung bei Linearer Ausgleichsrechnung:

( )22

22

minmin

minmin

bQRxbQRxQ

bQRxbAxT

xT

x

xx

−=−=

=−=−

da Q orthogonal und euklid’sche Norm.

R ist obere Dreiecksmatrix der R1 Dimension m x n und vollen R =

0 Ranges n.

- 76 -

Page 44: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Das obige Minimum erhält man durch

211min

2

11min1min~~

~~

00

2

2

2

2

2

2

2

2

bbxRbbxR

bQxR

xxxT +== −⎟⎟

⎞⎜⎜⎝

⎛−⎟⎟⎠

⎞⎜⎜⎝

⎛−⎟⎟

⎞⎜⎜⎝

aus der Lösung des Dreieckssystems

11~bxR = .

Der Wert des Minimums ist gegeben durch 22~b .

- 77 -

Page 45: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

Beispiel: QR-Zerlegung für Least Squares:

2

2

min100

101111

min bAxx xx −=⎟⎟⎟

⎜⎜⎜

⎛−

⎟⎟⎟

⎜⎜⎜

Erster Schritt: a21 0 :

⎟⎟⎟⎟

⎜⎜⎜⎜

=⎟⎟⎟

⎜⎜⎜

⎛−−++

=⎟⎟⎟

⎜⎜⎜

⎛⋅⎟⎟⎟

⎜⎜⎜

⎛−

100022

10101111

10000

cscsscsc

cssc

mit 4/,2/1 πϕ === sc Zweiter Schritt: a32 0 :

- 78 -

Page 46: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

⎟⎟⎟⎟

⎜⎜⎜⎜

=⎟⎟⎟⎟

⎜⎜⎜⎜

−=

⎟⎟⎟⎟

⎜⎜⎜⎜

⋅⎟⎟⎟

⎜⎜⎜

− 001022

00

22

100022

00

001

cs

cssc

mit 2/,1,0 πϕ === sc

⎟⎟⎟

⎜⎜⎜

⎛=

⎟⎟⎟

⎜⎜⎜

⎛⋅⎟⎟⎟

⎜⎜⎜

⎛−⋅

⎟⎟⎟

⎜⎜⎜

001022

101111

10002/12/102/12/1

010100001

QT ⋅ A = R

- 79 -

Page 47: 3.5 Die Kondition eines linearen Gleichungssystems (einer ... · Für ein lineares Gleichungssystem A x = b mit Matrix A, Vektor der rechten Seite b und gesuchtem Lösungsvektor x

⎟⎟⎟⎟

⎜⎜⎜⎜

−=010

2/102/12/102/1

Q Also

Anwendung auf Minimierungsproblem :

2

2

22

10

1022min

010

1022

min

100

02/12/110002/12/1

001022

min100

min

⎟⎟⎠

⎞⎜⎜⎝

⎛−⋅⎟⎟

⎞⎜⎜⎝

⎛=

⎟⎟⎟

⎜⎜⎜

⎛⎟⎟⎠

⎞⎜⎜⎝

⎛−⋅⎟⎟

⎞⎜⎜⎝

⎛=

=⎟⎟⎟

⎜⎜⎜

⎛⋅

⎟⎟⎟⎟

⎜⎜⎜⎜

−−

⎟⎟⎟⎟

⎜⎜⎜⎜

=⎟⎟⎟

⎜⎜⎜

⎛−

xx

xAx

xx

xx

- 80 -