Ortogonální transformace a QR rozklady

Podobné dokumenty
Ortogonální transformace a QR rozklady

3. Ortogonální transformace a QR rozklady

1 Projekce a projektory

Úlohy nejmenších čtverců

Arnoldiho a Lanczosova metoda

2. Schurova věta. Petr Tichý. 3. října 2012

Singulární rozklad. Petr Tichý. 31. října 2013

Podobnostní transformace

5. Singulární rozklad

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

Operace s maticemi. 19. února 2018

DEFINICE Z LINEÁRNÍ ALGEBRY

Operace s maticemi

a vlastních vektorů Příklad: Stanovte taková čísla λ, pro která má homogenní soustava Av = λv nenulové (A λ i I) v = 0.

Interpolace, ortogonální polynomy, Gaussova kvadratura

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:

Zdrojem většiny příkladů je sbírka úloh 1. cvičení ( ) 2. cvičení ( )

Lineární algebra : Skalární součin a ortogonalita

0.1 Úvod do lineární algebry

4. LU rozklad a jeho numerická analýza

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

EUKLIDOVSKÉ PROSTORY

Lineární algebra : Skalární součin a ortogonalita

1 Báze a dimenze vektorového prostoru 1

Aplikovaná numerická matematika - ANM

Katedra aplikované matematiky FEI VŠB Technická univerzita Ostrava

ALGEBRA. Téma 5: Vektorové prostory

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

8 Matice a determinanty

Matice. Modifikace matic eliminační metodou. α A = α a 2,1, α a 2,2,..., α a 2,n α a m,1, α a m,2,..., α a m,n

Vlastní čísla a vlastní vektory

Symetrické a kvadratické formy

0.1 Úvod do lineární algebry

Definice 13.1 Kvadratická forma v n proměnných s koeficienty z tělesa T je výraz tvaru. Kvadratická forma v n proměnných je tak polynom n proměnných s

Co je obsahem numerických metod?

Základy maticového počtu Matice, determinant, definitnost

Matematika B101MA1, B101MA2

PROSTORY SE SKALÁRNÍM SOUČINEM. Definice Nechť L je lineární vektorový prostor nad R. Zobrazení L L R splňující vlastnosti

Necht tedy máme přirozená čísla n, k pod pojmem systém lineárních rovnic rozumíme rovnice ve tvaru

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

Matice. Předpokládejme, že A = (a ij ) je matice typu m n: diagonálou jsou rovny nule.

příkladů do cvičení. V textu se objeví i pár detailů, které jsem nestihl (na které jsem zapomněl) a(b u) = (ab) u, u + ( u) = 0 = ( u) + u.

Kapitola 11: Vektory a matice 1/19

Úvod do lineární algebry

Připomenutí co je to soustava lineárních rovnic

Skalární součin dovoluje zavedení metriky v afinním bodovém prostoru, tj. umožňuje nám určovat vzdálenosti, odchylky, obsahy a objemy.

7 Ortogonální a ortonormální vektory

Lineární algebra : Metrická geometrie

Učební texty k státní bakalářské zkoušce Matematika Skalární součin. študenti MFF 15. augusta 2008

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí:

Úlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2,

1 Vektorové prostory.

VĚTY Z LINEÁRNÍ ALGEBRY

Vlastní číslo, vektor

1 Determinanty a inverzní matice

ALGEBRA. Téma 4: Grupy, okruhy a pole

Matematický ústav Slezské univerzity v Opavě Učební texty k přednášce ALGEBRA II, letní semestr 2000/2001 Michal Marvan. 14.

Necht L je lineární prostor nad R. Operaci : L L R nazýváme

maticeteorie 1. Matice A je typu 2 4, matice B je typu 4 3. Jakých rozměrů musí být matice X, aby se dala provést

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

1 0 0 u 22 u 23 l 31. l u11

vyjádřete ve tvaru lineární kombinace čtverců (lineární kombinace druhých mocnin). Rozhodněte o definitnosti kvadratické formy κ(x).

1 Zobrazení 1 ZOBRAZENÍ 1. Zobrazení a algebraické struktury. (a) Ukažte, že zobrazení f : x

MENDELOVA UNIVERZITA V BRNĚ LDF MT MATEMATIKA VEKTORY, MATICE

MENDELOVA UNIVERZITA V BRNĚ LDF MT MATEMATIKA VEKTORY, MATICE

(Cramerovo pravidlo, determinanty, inverzní matice)

Kapitola 11: Vektory a matice:

označme j = (0, 1) a nazvěme tuto dvojici imaginární jednotkou. Potom libovolnou (x, y) = (x, 0) + (0, y) = (x, 0) + (0, 1)(y, 0) = x + jy,

15 Maticový a vektorový počet II

VI. Maticový počet. VI.1. Základní operace s maticemi. Definice. Tabulku

6. Vektorový počet Studijní text. 6. Vektorový počet

Matematika I 12a Euklidovská geometrie

7. Lineární vektorové prostory

1 Vektorové prostory a podprostory

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti

Základy matematiky pro FEK

FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Lineární algebra - I. část (vektory, matice a jejich využití)

Numerické metody a programování

Soustavy linea rnı ch rovnic

Numerické metody a programování. Lekce 4

Lineární algebra : Změna báze

Lineární algebra Operace s vektory a maticemi

Soustavy lineárních rovnic

Uspořádanou n-tici reálných čísel nazveme aritmetický vektor (vektor), ā = (a 1, a 2,..., a n ). Čísla a 1, a 2,..., a n se nazývají složky vektoru

z = a bi. z + v = (a + bi) + (c + di) = (a + c) + (b + d)i. z v = (a + bi) (c + di) = (a c) + (b d)i. z v = (a + bi) (c + di) = (ac bd) + (bc + ad)i.

19 Hilbertovy prostory

Lineární zobrazení. 1. A(x y) = A(x) A(y) (vlastnost aditivity) 2. A(α x) = α A(x) (vlastnost homogenity)

Afinita je stručný název pro afinní transformaci prostoru, tj.vzájemně jednoznačné afinní zobrazení bodového prostoru A n na sebe.

[1] Motivace. p = {t u ; t R}, A(p) = {A(t u ); t R} = {t A( u ); t R}

[1] Determinant. det A = 0 pro singulární matici, det A 0 pro regulární matici

11. Skalární součin a ortogonalita p. 1/16

10. Soustavy lineárních rovnic, determinanty, Cramerovo pravidlo

9 Kolmost vektorových podprostorů

Ortogonální projekce a ortogonální zobrazení

Matice. a m1 a m2... a mn

Četba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).

Množinu všech matic typu m n nad tělesem T budeme označovat M m n (T ), množinu všech čtvercových matic stupně n nad T pak M n (T ).

Skalární součin je nástroj, jak měřit velikost vektorů a úhly mezi vektory v reálných a komplexních vektorových prostorech.

Transkript:

Ortogonální transformace a QR rozklady Petr Tichý 9. října 2013 1

Úvod Unitární (ortogonální) transformace, Gram-Schmidtova ortogonalizace Příklad Schurovy věty unitární transformace nezvětšují chyby ve vstupních datech. Tato kapitola: základními dva typy unitárních transformací Givensovy rotace, Householderovy reflexe. Využití: (numericky stabilní) transformace matice na matici s předem zvolenou strukturou. Výpočet QR rozkladu široké použití. Gram-Schmidtova ortogonalizace, výpočetní náročnost, numerická stabilita. 2

Outline 1 Ortogonální projekce a ortogonální projektory 2 Givensovy rotace 3 Householderovy reflexe 4 QR rozklad 5 QR rozklad a Gram-Schmidtův ortogonalizační proces 6 Cena výpočtu QR rozkladu 7 Numerická stabilita QR rozkladu 8 Cvičení 3

Ortogonální projekce Libovolný x R n lze rozložit na součet ortogonálních vektorů x = x q + y tak, že x q leží v předem daném směru q a y, x q = 0. e j x x q q y e i 4

Ortogonální projekce vektoru x do směru q Dán q, q = 1. Hledáme rozklad vektoru x R n, x = x q + y takový, že x q leží v předem daném směru q a y q. 5

Ortogonální projekce vektoru x do směru q Dán q, q = 1. Hledáme rozklad vektoru x R n, x = x q + y takový, že x q leží v předem daném směru q a y q. Ukážeme, že x q = x, q q. x q nazveme ortogonální projekcí x do prostoru span{q}. 5

Ortogonální projekce vektoru x do směru q Dán q, q = 1. Hledáme rozklad vektoru x R n, x = x q + y takový, že x q leží v předem daném směru q a y q. Ukážeme, že x q = x, q q. x q nazveme ortogonální projekcí x do prostoru span{q}. Ekvivalentní zápis, x q = P q x, kde P q qq T. 5

Ortogonální projekce vektoru x do směru q Dán q, q = 1. Hledáme rozklad vektoru x R n, x = x q + y takový, že x q leží v předem daném směru q a y q. Ukážeme, že x q = x, q q. x q nazveme ortogonální projekcí x do prostoru span{q}. Ekvivalentní zápis, x q = P q x, kde P q qq T. P q je čtvercová symetrická matice řádu n, P q : x P q x span{q}, x P q x span{q}. Říkáme: P q projektuje x do prostoru generovaného bází {q}. 5

Ortogonální projekce vektoru do podprostoru Uvažujme ortonormální soubor vektorů {q 1,..., q m } R n, Q span{q 1,..., q m }, Q [q 1,..., q m ] R n m. 6

Ortogonální projekce vektoru do podprostoru Uvažujme ortonormální soubor vektorů {q 1,..., q m } R n, Q span{q 1,..., q m }, Q [q 1,..., q m ] R n m. Dán x R n, hledáme rozklad x na složky x = x Q + y, x Q Q, y Q. 6

Ortogonální projekce vektoru do podprostoru Uvažujme ortonormální soubor vektorů {q 1,..., q m } R n, Q span{q 1,..., q m }, Q [q 1,..., q m ] R n m. Dán x R n, hledáme rozklad x na složky x = x Q + y, x Q Q, y Q. x Q nazveme ortogonální projekcí x do Q. Platí x Q = P Q x, kde P Q QQ T. 6

Ortogonální projekce vektoru do podprostoru Uvažujme ortonormální soubor vektorů {q 1,..., q m } R n, Q span{q 1,..., q m }, Q [q 1,..., q m ] R n m. Dán x R n, hledáme rozklad x na složky x = x Q + y, x Q Q, y Q. x Q nazveme ortogonální projekcí x do Q. Platí x Q = P Q x, kde P Q QQ T. P Q je čtvercová symetrická matice hodnosti m, projektuje libovolný x do prostoru Q. 6

Ortogonální projektory Definice: Ortogonální projektor je lineární operátor P, který je symetrický a idempotentní (P T = P a P 2 = P). 7

Ortogonální projektory Definice: Ortogonální projektor je lineární operátor P, který je symetrický a idempotentní (P T = P a P 2 = P). Matice P Q je ortogonálním projektorem. 7

Ortogonální projektory Definice: Ortogonální projektor je lineární operátor P, který je symetrický a idempotentní (P T = P a P 2 = P). Matice P Q je ortogonálním projektorem. Vektor y = x x Q lze psát ve tvaru x x Q = Π Q x, kde Π Q I QQ T = I P Q. 7

Ortogonální projektory Definice: Ortogonální projektor je lineární operátor P, který je symetrický a idempotentní (P T = P a P 2 = P). Matice P Q je ortogonálním projektorem. Vektor y = x x Q lze psát ve tvaru x x Q = Π Q x, kde Π Q I QQ T = I P Q. Π Q je ortogonálním projektorem do prostoru Q. Π Q se nazývá projektor komplementární k projektoru P Q. 7

Outline 1 Ortogonální projekce a ortogonální projektory 2 Givensovy rotace 3 Householderovy reflexe 4 QR rozklad 5 QR rozklad a Gram-Schmidtův ortogonalizační proces 6 Cena výpočtu QR rozkladu 7 Numerická stabilita QR rozkladu 8 Cvičení 8

Givensovy rotace vr n Úloha vr 2 Chceme sestrojit matici G(ϕ) R 2 2, která realizuje pootočení libovolného vektoru x o úhel ϕ proti směru hodinových ručiček. Zapíšeme-li vektor x v bázi {e 1, e 2 }, x = [ ξ1 ξ 2 ] = ξ 1 [ 1 0 ] + ξ 2 [ 0 1 je možné vektor G(ϕ)x vyjádřit ve tvaru ] = ξ 1 e 1 + ξ 2 e 2, G(ϕ)x = ξ 1 (G(ϕ) e 1 ) + ξ 2 (G(ϕ) e 2 ). 9

Givensovy rotace vr n Úloha vr 2 Chceme sestrojit matici G(ϕ) R 2 2, která realizuje pootočení libovolného vektoru x o úhel ϕ proti směru hodinových ručiček. Zapíšeme-li vektor x v bázi {e 1, e 2 }, x = [ ξ1 ξ 2 ] = ξ 1 [ 1 0 ] + ξ 2 [ 0 1 je možné vektor G(ϕ)x vyjádřit ve tvaru ] = ξ 1 e 1 + ξ 2 e 2, G(ϕ)x = ξ 1 (G(ϕ) e 1 ) + ξ 2 (G(ϕ) e 2 ). Otáčí-li G(ϕ) bázové vektory e 1 a e 2 o úhel ϕ, otáčí i libovolný vektor x o úhel ϕ. 9

Rotace jednotkových vektorů o úhel ϕ 0 10

Matice Givensovy rotace vr 2 G(ϕ) [ 1 0 ] = [ cos ϕ sin ϕ ], G(ϕ) [ 0 1 ] = [ sin ϕ cos ϕ ], tj. [ cos ϕ sin ϕ G(ϕ) = sin ϕ cos ϕ ] Matice G(ϕ) se nazývá matice Givensovy rotace. 11

Matice Givensovy rotace vr 2 G(ϕ) [ 1 0 ] = [ cos ϕ sin ϕ ], G(ϕ) [ 0 1 ] = [ sin ϕ cos ϕ ], tj. [ cos ϕ sin ϕ G(ϕ) = sin ϕ cos ϕ ] Matice G(ϕ) se nazývá matice Givensovy rotace. Použití: Jsou-li v R 2 dány vektory x a y, x = y 0. Potom y lze získat pootočením x, y = G(ϕ)x. 11

Matice Givensovy rotace vr n Elementární Givensova rotace Rotaci v rovině dané dvojicí jednotkových vektorů {e i, e j }, i < j, o úhel ϕ ve směru od e i k e j lze realizovat pomocí 1 G i,j (ϕ) =... 1 cos ϕ 1 sin ϕ... 1 sin ϕ cos ϕ 1... 1. 12

Matice Givensovy rotace vr n Vlastnosti je ortonormální, det(g i,j (ϕ)) = 1 (cvičení). G i,j (ϕ)x modifikuje pouze i-tý a j-tý prvek vektoru x = [ξ 1,..., ξ n ] T, G i,j (ϕ) x = ξ 1. ξ i cos ϕ ξ j sin ϕ. ξ i sin ϕ + ξ j cos ϕ. ξ n i-tý řádek j-tý řádek. 13

Nulování prvků vektoru pomocí Givensových rotací Nulování vr 2 Požadujeme, aby platilo [ cos ϕ sin ϕ y = G(ϕ) x = sin ϕ cos ϕ ] [ ξ1 ξ 2 ] = [ ± ξ1 2 + ξ2 2 0 ]. 14

Nulování prvků vektoru pomocí Givensových rotací Nulování vr 2 Požadujeme, aby platilo [ cos ϕ sin ϕ y = G(ϕ) x = sin ϕ cos ϕ ] [ ξ1 ξ 2 ] = [ ± ξ1 2 + ξ2 2 0 ]. Ze vztahu dostaneme ξ 1 sin ϕ + ξ 2 cos ϕ = 0 sin ϕ = ξ 2 ξ 2 1 + ξ2 2, Ověření cos ϕ = ± ξ 1 ξ 2 1 + ξ2 2. 14

Nulování prvků vektoru pomocí Givensových rotací Nulování vr n Úloha: vynulovat n 1 složek vektoru x R n, x ± x e 1. 15

Nulování prvků vektoru pomocí Givensových rotací Nulování vr n Úloha: vynulovat n 1 složek vektoru x R n, x ± x e 1. Opakovaně aplikujeme elementární Givensovy rotace: x =.. 0... 0. 0 ± x 0. 0 = y. Nulujeme prvky na pozicích n, n 1,..., 2 (volíme např. roviny rotace span{e 1, e n },..., span{e 1, e 2 }) 15

Nulování prvků vektoru pomocí Givensových rotací Formalizace Označíme-li jednotlivé elementární Givensovy rotace jako G 1,2,..., G 1,n 1, G 1,n, potom y = Γx, kde Γ G 1,2... G 1,n 1 G 1,n. Matici Γ budeme nazývat složenou Givensovou rotací. 16

Nulování prvků vektoru pomocí Givensových rotací Formalizace Označíme-li jednotlivé elementární Givensovy rotace jako G 1,2,..., G 1,n 1, G 1,n, potom y = Γx, kde Γ G 1,2... G 1,n 1 G 1,n. Matici Γ budeme nazývat složenou Givensovou rotací. Prvky nemusíme nutně nulovat v pořadí, které jsme naznačili. 16

Nulování prvků vektoru pomocí Givensových rotací Formalizace Označíme-li jednotlivé elementární Givensovy rotace jako G 1,2,..., G 1,n 1, G 1,n, potom y = Γx, kde Γ G 1,2... G 1,n 1 G 1,n. Matici Γ budeme nazývat složenou Givensovou rotací. Prvky nemusíme nutně nulovat v pořadí, které jsme naznačili. Násobení elementárních (tedy i složených) Givensových rotací není obecně komutativní (cvičení). 16

Outline 1 Ortogonální projekce a ortogonální projektory 2 Givensovy rotace 3 Householderovy reflexe 4 QR rozklad 5 QR rozklad a Gram-Schmidtův ortogonalizační proces 6 Cena výpočtu QR rozkladu 7 Numerická stabilita QR rozkladu 8 Cvičení 17

Nulování prvků vektoru pomocí Householderových reflexí Nulování vr n Druhá základní unitární transformace je Householderova reflexe (zrcadlení, odraz). 18

Nulování prvků vektoru pomocí Householderových reflexí Nulování vr n Druhá základní unitární transformace je Householderova reflexe (zrcadlení, odraz). Úloha: Nechť je v R n dána nadrovina dimenze n 1, kterou popíšeme jejím normálovým vektorem q, q = 1, a nechť je dán vektor x R n. H(q) {z R n : z q}, 18

Nulování prvků vektoru pomocí Householderových reflexí Nulování vr n Druhá základní unitární transformace je Householderova reflexe (zrcadlení, odraz). Úloha: Nechť je v R n dána nadrovina dimenze n 1, kterou popíšeme jejím normálovým vektorem q, q = 1, a nechť je dán vektor x R n. H(q) {z R n : z q}, Cíl: nalézt zrcadlový obraz vektoru x podle nadroviny H(q) (nadrovinu H(q) nazveme nadrovinou zrcadlení). 18

Zrcadlení x q x 0 q x x q y = x 2x q x q = (qq T ) x, y = (x x q ) x q = x 2x q = (I 2qq T ) x. 19

Matice Householderovy reflexe Nechť q R n a q = 1. Pak matici H(q) = I 2qq T R n n nazýváme maticí Householderovy reflexe vzhledem k nadrovině H(q) definované normálovým vektorem q. 20

Matice Householderovy reflexe Nechť q R n a q = 1. Pak matici H(q) = I 2qq T R n n nazýváme maticí Householderovy reflexe vzhledem k nadrovině H(q) definované normálovým vektorem q. Vlastnosti: H(q) je ortonormální a symetrická, platí H 2 (q) = I, det(h(q)) = 1 (cvičení). 20

Zrcadlení x na y pomocí Householderovy reflexe Úloha: Dány x a y stejné délky, nalézt H tak, aby y = Hx. 21

Zrcadlení x na y pomocí Householderovy reflexe Úloha: Dány x a y stejné délky, nalézt H tak, aby y = Hx. Zrcadlení x na ±y vr n Nechť jsou dány dva různé vektory x R n a y R n, x = y, a nechť q 1 x y x y, q 2 x + y x + y. Potom H(q 1 )x = y, H(q 2 )x = y. 21

Zrcadlení x na y pomocí Householderovy reflexe Úloha: Dány x a y stejné délky, nalézt H tak, aby y = Hx. Zrcadlení x na ±y vr n Nechť jsou dány dva různé vektory x R n a y R n, x = y, a nechť q 1 x y x y, q 2 x + y x + y. Potom H(q 1 )x = y, H(q 2 )x = y. Důkaz: Vektor x y je kolmý k nadrovině zrcadlení vektoru x na vektor y. Podobně, vektor x + y je kolmý k nadrovině zrcadlení vektoru x na vektor y. 21

Nulování prvků vektoru pomocí Householderových reflexí Dán x R n a Hledáme H. y = ± x e 1. 22

Nulování prvků vektoru pomocí Householderových reflexí Dán x R n a Hledáme H. y = ± x e 1. Dle předchozího, pro q 1 = x x e 1 x x e 1, q 2 = x + x e 1 x + x e 1 je H(q 1 )x = x e 1, H(q 2 )x = x e 1. 22

Nulování prvků vektoru pomocí Householderových reflexí Dán x R n a Hledáme H. y = ± x e 1. Dle předchozího, pro q 1 = x x e 1 x x e 1, q 2 = x + x e 1 x + x e 1 je H(q 1 )x = x e 1, H(q 2 )x = x e 1. Je lepší zvolit q 1 nebo q 2? 22

Nulování prvků vektoru pomocí Householderových reflexí Volba vektoru q x ± x e 1 = ξ 1 ± x ξ 2. ξ n Pokud ξ 1 0, ξ 1 x, potom při odečítání ξ 1 x může dojít k vyrušení platných číslic. Navíc, ξ 1 x e 1 0, dělíme malou normou relativní zvětšení chyby vypočteného vektoru ve srovnání s chybou obsaženou v x. 23

Nulování prvků vektoru pomocí Householderových reflexí Volba vektoru q x ± x e 1 = ξ 1 ± x ξ 2. ξ n Pokud ξ 1 0, ξ 1 x, potom při odečítání ξ 1 x může dojít k vyrušení platných číslic. Navíc, ξ 1 x e 1 0, dělíme malou normou relativní zvětšení chyby vypočteného vektoru ve srovnání s chybou obsaženou v x. Kvůli numerické stabilitě, pokud ξ 1 0 pak q x + x e 1 x + x e 1. 23

Nulování prvků vektoru pomocí Householderových reflexí Volba vektoru q x ± x e 1 = ξ 1 ± x ξ 2. ξ n Pokud ξ 1 0, ξ 1 x, potom při odečítání ξ 1 x může dojít k vyrušení platných číslic. Navíc, ξ 1 x e 1 0, dělíme malou normou relativní zvětšení chyby vypočteného vektoru ve srovnání s chybou obsaženou v x. Kvůli numerické stabilitě, pokud ξ 1 0 pak q x + x e 1 x + x e 1. Analogicky pro ξ 1 < 0 volíme q = x x e 1 x x e 1. 23

Outline 1 Ortogonální projekce a ortogonální projektory 2 Givensovy rotace 3 Householderovy reflexe 4 QR rozklad 5 QR rozklad a Gram-Schmidtův ortogonalizační proces 6 Cena výpočtu QR rozkladu 7 Numerická stabilita QR rozkladu 8 Cvičení 24

QR rozklad Nechť A C n m je obecně obdélníková matice. Rozklad A = QR, kde Q je matice s ortonormálními sloupci (Q Q = I) a R má všechny prvky pod hlavní diagonálou nulové, nazveme QR rozkladem matice A. Pro n > m může QR rozklad vypadat schematicky jako A Q R = kde Q C n n a R C n m. 0, 25

QR rozklad Vynecháním posledních n m nulových řádků matice R a příslušných sloupců Q dostaneme A Q R = 0, kde Q C n m a R C m m. Tomuto QR rozkladu, jehož uložení vyžaduje méně paměťového místa než v prvním případě, se říká ekonomický QR rozklad. 26

QR rozklad Vynecháním posledních n m nulových řádků matice R a příslušných sloupců Q dostaneme A Q R = 0, kde Q C n m a R C m m. Tomuto QR rozkladu, jehož uložení vyžaduje méně paměťového místa než v prvním případě, se říká ekonomický QR rozklad. Pro n m má QR rozklad, schematicky, tvar A Q R = kde Q C n n a R C n m. 0, 26

Obecně o QR rozkladu Lze použít k numerickému řešení mnoha problémů, například problémů nejmenších čtverců Ax b nebo Ax = b. Ax = b, kde A C n n je regulární matice, Ax = b QRx = b, QRx = QQ b, Rx = Q b. Díky ortogonalitě bývá výpočet numericky stabilnější než při použití jiných druhů rozkladů (LU rozklad). Problém pro velké řídké matice požadavek ortogonality ztráta řídkosti. Algoritmů pro výpočet QR rozkladu je několik. 27

QR rozklad užitím Givensových rotací I A C n m, A = [a 1,..., a m ]. Cíl: vynulování všech prvků pod hlavní diagonálou za použití Givensových rotací, získáme Givensův QR rozklad. 28

QR rozklad užitím Givensových rotací I A C n m, A = [a 1,..., a m ]. Cíl: vynulování všech prvků pod hlavní diagonálou za použití Givensových rotací, získáme Givensův QR rozklad. Symbolem Γ 1 označíme složenou Givensovu rotaci, která realizuje transformaci a 1,1 r 1,1 a 2,1 0 a 1 =. a n,1. 0 = Γ 1a 1 r 1. 28

QR rozklad užitím Givensových rotací II Aplikujeme-li Γ 1 na A, dostaneme (r 1,1 = 0 a 1 = 0) 0 A = 0 = Γ 1 A A (1), 0 0 29

QR rozklad užitím Givensových rotací II Aplikujeme-li Γ 1 na A, dostaneme (r 1,1 = 0 a 1 = 0) 0 A = 0 = Γ 1 A A (1), 0 0 Nyní nulujeme poddiagonální prvky druhého sloupce matice A (1) = [r 1, a (1) 2,..., a(1) m ], aplikujeme n 2 rotací, a (1) 1,2 a (1) a (1) 1,2 2,2 r 2,2 a (1) a (1) 0 3,2 2 = = Γ 2 a (1) 2 r 2.. a (1) n,2.. 0 29

QR rozklad užitím Givensových rotací III Aplikací složené rotace Γ 2 na matici A (1) = Γ 1 A dostaneme A (1) = 0 0 0 0 0 0 0 0 0 0 0 = Γ 2 Γ 1 A A (2). 30

QR rozklad užitím Givensových rotací III Aplikací složené rotace Γ 2 na matici A (1) = Γ 1 A dostaneme A (1) = 0 0 0 0 0 0 0 0 0 0 0 = Γ 2 Γ 1 A A (2). V k-tém kroku, k < min{m, n}, konstruujeme složenou rotaci tak, aby nulovala n k poddiagonálních prvků sloupce a (k 1) k. Příslušná složená rotace Γ k je blokově diagonální se dvěma bloky, kde první blok je jednotková matice řádu k 1. 30

QR rozklad užitím Givensových rotací III Aplikací složené rotace Γ 2 na matici A (1) = Γ 1 A dostaneme A (1) = 0 0 0 0 0 0 0 0 0 0 0 = Γ 2 Γ 1 A A (2). V k-tém kroku, k < min{m, n}, konstruujeme složenou rotaci tak, aby nulovala n k poddiagonálních prvků sloupce a (k 1) k. Příslušná složená rotace Γ k je blokově diagonální se dvěma bloky, kde první blok je jednotková matice řádu k 1. r k,k = 0 je-li k-tý sloupec matice A lineární kombinací předchozích k 1 sloupců matice A (cvičení). 30

QR rozklad užitím Givensových rotací IV Poslední transformační maticí Γ m 1 pro n > m resp. Γ n 1 pro n m Případ n > m, platí 0 A (m 2) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 A (m 1) = Γ m 1... Γ 1 A. = A (m 1) R. 31

QR rozklad užitím Givensových rotací IV Poslední transformační maticí Γ m 1 pro n > m resp. Γ n 1 pro n m Případ n > m, platí 0 A (m 2) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 A (m 1) = Γ m 1... Γ 1 A. = A (m 1) R. Γ i jsou unitární součin je také unitární matice. Označíme-li Q Γ 1 Γ 2... Γ m 1, platí A = QR. 31

Existence a jednoznačnost QR rozkladu Existence Konstrukcí jsme získali rozklad typu A Q = R 0, resp. A = Q R 0, kde Q C n n a R C n m. Existence QR rozkladu (i ekonomického) plyne z konstrunkce. 32

Existence a jednoznačnost QR rozkladu Jednoznačnost Není obecně jednoznačný: diagonální D, D D = I, platí A = QR = (QD )(DR) = Q R. Povolíme-li na diagonále R jen kladné prvky jednoznačnost. 33

Existence a jednoznačnost QR rozkladu Jednoznačnost Není obecně jednoznačný: diagonální D, D D = I, platí A = QR = (QD )(DR) = Q R. Povolíme-li na diagonále R jen kladné prvky jednoznačnost. Jednoznačnost QR rozkladu Nechť A C n m, n m, je matice s lineárně nezávislými sloupci. Pak existuje jediná dvojice matic Q C n m a R C m m taková, že Q má ortonormální sloupce a R je horní trojúhelníková matice s kladnými diagonálními prvky a přitom A = QR. 33

QR rozklad pomocí Householderových reflexí Householderův QR rozklad konstrukčně stejný jako Givensův, pro n > m transformujeme A C n m A H 1 A... H m 1... H 2 H 1 A R, kde H k je blokově diagonální matice, první blok je jednotková matice řádu k 1, druhý blok je matice Householderovy reflexe nulující poddiagonální prvky aktuálního k-tého sloupce. Označme Q H 1 H 2... H m 1 A = QR. Analogicky QR rozklad matice A C n m pro n m. 34

Outline 1 Ortogonální projekce a ortogonální projektory 2 Givensovy rotace 3 Householderovy reflexe 4 QR rozklad 5 QR rozklad a Gram-Schmidtův ortogonalizační proces 6 Cena výpočtu QR rozkladu 7 Numerická stabilita QR rozkladu 8 Cvičení 35

QR rozklad a Gram-Schmidtův ortogonalizační proces Pro jednoduchost případ n > m a podprostor C n generovaný lineárně nezávislými vektory {a 1,..., a m }. Gram-Schmidtův ortogonalizační proces spočte ortonormální bázi {q 1,..., q m } takovou, že span{a 1,..., a k } = span{q 1,..., q k }, k = 1,..., m. 36

QR rozklad a Gram-Schmidtův ortogonalizační proces Pro jednoduchost případ n > m a podprostor C n generovaný lineárně nezávislými vektory {a 1,..., a m }. Gram-Schmidtův ortogonalizační proces spočte ortonormální bázi {q 1,..., q m } takovou, že span{a 1,..., a k } = span{q 1,..., q k }, k = 1,..., m. k = 1: q 1? span{a 1 } = span{q 1 } a q 1 = 1 q 1 = a 1 a 1. Označme r 1,1 = a 1. 36

QR rozklad a Gram-Schmidtův ortogonalizační proces Pro jednoduchost případ n > m a podprostor C n generovaný lineárně nezávislými vektory {a 1,..., a m }. Gram-Schmidtův ortogonalizační proces spočte ortonormální bázi {q 1,..., q m } takovou, že span{a 1,..., a k } = span{q 1,..., q k }, k = 1,..., m. k = 1: q 1? span{a 1 } = span{q 1 } a q 1 = 1 q 1 = a 1 a 1. Označme r 1,1 = a 1. k = 2: q 2? span{a 1, a 2 } = span{q 1, q 2 }, q 2 q 1, q 2 = 1. Odečteme projekce a 2 ve směru q 1 a normalizujeme, z = (I q 1 q 1 ) a 2 = a 2 (q 1 a 2)q 1, r 2,2 = z, q 2 = z/r 2,2. 36

Gram-Schmidtův ortogonalizační proces k-tý krok obecné k: odečteme od a k projekci na prostor generovaný sloupci [q 1,..., q k 1 ] = Q k 1 a normalizujeme k 1 z = (I Q k 1 Q k 1) a k = a k (qi a k )q i r k,k = z q k = z/r k,k. i=1 37

Gram-Schmidtův ortogonalizační proces k-tý krok obecné k: odečteme od a k projekci na prostor generovaný sloupci [q 1,..., q k 1 ] = Q k 1 a normalizujeme k 1 z = (I Q k 1 Q k 1) a k = a k (qi a k )q i r k,k = z q k = z/r k,k. i=1 Proveditelnost: Jelikož jsou vektory a 1,..., a m lineárně nezávislé, je vektor z vždy nenulový, a tudíž r k,k 0, k = 1,..., m. 37

Gram-Schmidtův ortogonalizační proces k-tý krok obecné k: odečteme od a k projekci na prostor generovaný sloupci [q 1,..., q k 1 ] = Q k 1 a normalizujeme k 1 z = (I Q k 1 Q k 1) a k = a k (qi a k )q i r k,k = z q k = z/r k,k. i=1 Proveditelnost: Jelikož jsou vektory a 1,..., a m lineárně nezávislé, je vektor z vždy nenulový, a tudíž r k,k 0, k = 1,..., m. Dosadíme-li za z vektor r k,k q k a označíme-li r i,k = q i a k, k 1 a k = r i,k q i + r k,k q k, k = 1,..., m. i=1 37

Gram-Schmidtův ortogonalizační proces QR rozklad Po rozepsání a 1 = r 1,1 q 1 a 2 = r 1,2 q 1 + r 2,2 q 2. a m = r 1,m q 1 + r 2,m q 2 + + r m,m q m. 38

Gram-Schmidtův ortogonalizační proces QR rozklad Po rozepsání a 1 = r 1,1 q 1 a 2 = r 1,2 q 1 + r 2,2 q 2. a m = r 1,m q 1 + r 2,m q 2 + + r m,m q m. S označením A = [a 1,..., a m ], Q = [q 1,..., q m ] a r 1,1 r 1,2 r 1,m 0 r 2,2 r 2,m R........ Cm m 0 0 r m,m dostáváme A = QR 38

Gram-Schmidtův ortogonalizační proces QR rozklad komentáře Narozdíl od QR rozkladu spočteného pomocí rotací či reflexí rozměr Q je n m, R má rozměr m m, pro n > m máme přímo ekonomický QR rozklad. 39

Gram-Schmidtův ortogonalizační proces QR rozklad komentáře Narozdíl od QR rozkladu spočteného pomocí rotací či reflexí rozměr Q je n m, R má rozměr m m, pro n > m máme přímo ekonomický QR rozklad. Gram-Schmidtův ortogonalizační proces vzhledem k obecnému skalárnímu součinu, : k 1 z = a k a k, q i q i, r k,k = q k = z/r k,k. i=1 z, z, {q 1,..., q k } je ortonormální báze prostoru span{a 1,..., a k }. 39

Implementace Gram-Schmidtova procesu Klasický Gram-Schmidtův algoritmus Gram-Schmidtův proces lze zapsat několika matematicky ekvivalentními způsoby. Dvě základní varianty klasický a modifikovaný algoritmus. 40

Implementace Gram-Schmidtova procesu Klasický Gram-Schmidtův algoritmus Gram-Schmidtův proces lze zapsat několika matematicky ekvivalentními způsoby. Dvě základní varianty klasický a modifikovaný algoritmus. Výpočet vektoru z v k-tém kroku lze zapsat ve tvaru kde ortogonální projektor k 1 z = (I q i qi ) a k C Q a k, i=1 k 1 C Q = I q i qi = I Q k 1Q k 1 i=1 je komplementárním projektorem k projektoru Q k 1 Q k 1. 40

Implementace Gram-Schmidtova procesu Klasický Gram-Schmidtův algoritmus Gram-Schmidtův proces lze zapsat několika matematicky ekvivalentními způsoby. Dvě základní varianty klasický a modifikovaný algoritmus. Výpočet vektoru z v k-tém kroku lze zapsat ve tvaru kde ortogonální projektor k 1 z = (I q i qi ) a k C Q a k, i=1 k 1 C Q = I q i qi = I Q k 1Q k 1 i=1 je komplementárním projektorem k projektoru Q k 1 Q k 1. Tento zápis umožňuje paralelní implementaci. 40

Klasický Gram-Schmidtův algoritmus (CGS) Operátor C Q input A = [a 1,..., a m ] r 11 := a 1 q 1 := a 1 /r 11 Q 1 := [q 1 ] for k = 2 : m do z := a k [r 1,k,..., r k 1,k ] T := Q k 1 z z := z Q k 1 [r 1,k,..., r k 1,k ] T r kk := z q k := z/r kk Q k := [Q k 1, q k ] end for 41

Implementace Gram-Schmidtova procesu Modifikovaný Gram-Schmidtův algoritmus Z ortonormality vektorů q 1,..., q k 1 plyne (cvičení) k 1 I q i qi } i=1 {{ } C Q = (I q k 1 qk 1)... (I q 2 q2)(i q 1 q1). }{{} M Q Vektor z = C Q a k lze tedy ekvivalentně spočít pomocí z = M Q a k = (I q k 1 q k 1 )... (I q 2q 2 )(I q 1q 1 ) a k. Implementace využívající M Q je sekvenční z 1 = a k z 2 = z 1 (q1 z 1) q 1,. z k = z k 1 (q k 1z k 1 ) q k 1. 42

Modifikovaný Gram-Schmidtův algoritmus (MGS) Operátor M Q input A = [a 1,..., a m ] r 11 := a 1 q 1 := a 1 /r 11 Q 1 := [q 1 ] for k = 2 : m do z := a k for i = 1 : k 1 do r ik := q i z z := z r ik q i end for r kk := z q k := z/r kk Q k := [Q k 1, q k ] end for 43

Iterační zpřesnění Vztahy používající C Q a M Q jsou matematicky ekvivalentní. Vedou však na algoritmy s různými numerickými vlastnostmi. 44

Iterační zpřesnění Vztahy používající C Q a M Q jsou matematicky ekvivalentní. Vedou však na algoritmy s různými numerickými vlastnostmi. CGS počítá méně přesněji, u MGS jsou chyby vznikající při výpočtu z částečně eliminovány, výpočet r i,k := q i z následuje až po výpočtu aktualizace. 44

Iterační zpřesnění Vztahy používající C Q a M Q jsou matematicky ekvivalentní. Vedou však na algoritmy s různými numerickými vlastnostmi. CGS počítá méně přesněji, u MGS jsou chyby vznikající při výpočtu z částečně eliminovány, výpočet r i,k := q i z následuje až po výpočtu aktualizace. Ortogonalizační krok můžeme opakovat CGS a MGS s iteračním zpřesněním ICGS, IMGS. 44

Iterační zpřesnění Vztahy používající C Q a M Q jsou matematicky ekvivalentní. Vedou však na algoritmy s různými numerickými vlastnostmi. CGS počítá méně přesněji, u MGS jsou chyby vznikající při výpočtu z částečně eliminovány, výpočet r i,k := q i z následuje až po výpočtu aktualizace. Ortogonalizační krok můžeme opakovat CGS a MGS s iteračním zpřesněním ICGS, IMGS. ICGS si zachovává hlavní výhodu CGS velmi dobře se paralelizuje a navíc redukuje ztrátu ortogonality díky opakované ortogonalizaci. 44

Iterační zpřesnění Vztahy používající C Q a M Q jsou matematicky ekvivalentní. Vedou však na algoritmy s různými numerickými vlastnostmi. CGS počítá méně přesněji, u MGS jsou chyby vznikající při výpočtu z částečně eliminovány, výpočet r i,k := q i z následuje až po výpočtu aktualizace. Ortogonalizační krok můžeme opakovat CGS a MGS s iteračním zpřesněním ICGS, IMGS. ICGS si zachovává hlavní výhodu CGS velmi dobře se paralelizuje a navíc redukuje ztrátu ortogonality díky opakované ortogonalizaci. Pro dosažení maximální přesnosti (ztráty ortogonality na úrovni úměrné strojové přesnosti) stačí jediné opakování ortogonalizace. 44

Iterační zpřesnění Vztahy používající C Q a M Q jsou matematicky ekvivalentní. Vedou však na algoritmy s různými numerickými vlastnostmi. CGS počítá méně přesněji, u MGS jsou chyby vznikající při výpočtu z částečně eliminovány, výpočet r i,k := q i z následuje až po výpočtu aktualizace. Ortogonalizační krok můžeme opakovat CGS a MGS s iteračním zpřesněním ICGS, IMGS. ICGS si zachovává hlavní výhodu CGS velmi dobře se paralelizuje a navíc redukuje ztrátu ortogonality díky opakované ortogonalizaci. Pro dosažení maximální přesnosti (ztráty ortogonality na úrovni úměrné strojové přesnosti) stačí jediné opakování ortogonalizace. Jak vypočítat zpřesněné koeficienty r i,k? 44

CGS algoritmus s opakovanou ortogonalizací První ortogonalizace: projektujeme a k z = a k [(q k 1a k ) q k 1 +... + (q 1a k ) q 1 ]. 45

CGS algoritmus s opakovanou ortogonalizací První ortogonalizace: projektujeme a k z = a k [(qk 1a k ) q k 1 +... + (q1a k ) q 1 ]. Opakovaná ortogonalizace: projektujeme z w = z [(qk 1 z) q k 1 +... + (q1 z) q 1]. 45

CGS algoritmus s opakovanou ortogonalizací První ortogonalizace: projektujeme a k z = a k [(qk 1a k ) q k 1 +... + (q1a k ) q 1 ]. Opakovaná ortogonalizace: projektujeme z w = z [(qk 1 z) q k 1 +... + (q1 z) q 1]. Dosadíme-li za z do druhého vztahu, w = a k [(qk 1a k + qk 1z) q k 1 +... + (q1a k + q1z) q 1 ]. Zpřesněné koeficienty (prvky horní trojúhelníkové R) vzniknou součtem projekcí a k a z do jednotlivých směrů. 45

Iterovaný klasický Gram-Schmidtův algoritmus input A = [a 1,..., a m ] r 11 := a 1 q 1 := a 1 /r 11 Q 1 := [q 1 ] for k = 2 : m do z := a k r := 0 for l = 1 : 2 do r := Q k 1 z z := z Q k 1 r r := r + r end for [r 1,k,..., r k 1,k ] T := r r kk := z q k := z/r kk Q k := [Q k 1, q k ] end for 46

Outline 1 Ortogonální projekce a ortogonální projektory 2 Givensovy rotace 3 Householderovy reflexe 4 QR rozklad 5 QR rozklad a Gram-Schmidtův ortogonalizační proces 6 Cena výpočtu QR rozkladu 7 Numerická stabilita QR rozkladu 8 Cvičení 47

Cena výpočtu Gram-Schmidtova procesu a QR rozkladu Čtvercová matice Měříme počtem aritmetických operací. Není třeba rozlišovat CGS a MGS (počet operací je stejný). ICGS vyžaduje přibližně dvakrát více operací než CGS a MGS. Cena k-tého kroku (cvičení): k 1 z = a k i=1 (q i a k )q i, q k = z z = z z z, 2n(k 1) + 2n násobení, (2n 1)(k 1) + n 1 sčítání nebo odčítání, jednu odmocninu a jedno dělení. Sečtením všech operací pro kroky k = 1,..., n zjistíme, že CGS (MGS) stojí približně 2n 3 aritmetických operací. 48

Cena výpočtu QR rozkladu pomocí Gram-Schmidtova procesu Operace k-tý krok celkem 2n(k 1) + 2n n 3 + n 2 +, (2n 1)(k 1) + n 1 n 3 1 2 n2 1 2 n : 1 n 1 n 49

Výpočetní ceny různých implementací QR rozkladu Obdélníková matice Algoritmus celkový počet operací n > m n = m Householderův QR rozklad 2nm 2 2m 3 /3 4/3n 3 Givensův QR rozklad 3nm 2 m 3 2n 3 CGS, MGS 2nm 2 2n 3 Počet operací u Householderových reflexí je počet operací potřebných ke spočtení rozkladu v součinovém tvaru A = H 1H 2... H m 1R, kde H i jsou jednoduché Householderovy reflexe. 50

Výpočetní ceny různých implementací QR rozkladu Obdélníková matice Algoritmus celkový počet operací n > m n = m Householderův QR rozklad 2nm 2 2m 3 /3 4/3n 3 Givensův QR rozklad 3nm 2 m 3 2n 3 CGS, MGS 2nm 2 2n 3 Počet operací u Householderových reflexí je počet operací potřebných ke spočtení rozkladu v součinovém tvaru A = H 1H 2... H m 1R, kde H i jsou jednoduché Householderovy reflexe. Explicitní znalost matice Q vyžaduje dalších 2nm 2 2m 3 /3 operací. 50

Výpočetní ceny různých implementací QR rozkladu Obdélníková matice Algoritmus celkový počet operací n > m n = m Householderův QR rozklad 2nm 2 2m 3 /3 4/3n 3 Givensův QR rozklad 3nm 2 m 3 2n 3 CGS, MGS 2nm 2 2n 3 Počet operací u Householderových reflexí je počet operací potřebných ke spočtení rozkladu v součinovém tvaru A = H 1H 2... H m 1R, kde H i jsou jednoduché Householderovy reflexe. Explicitní znalost matice Q vyžaduje dalších 2nm 2 2m 3 /3 operací. Totéž u Givensových rotací. 50

Outline 1 Ortogonální projekce a ortogonální projektory 2 Givensovy rotace 3 Householderovy reflexe 4 QR rozklad 5 QR rozklad a Gram-Schmidtův ortogonalizační proces 6 Cena výpočtu QR rozkladu 7 Numerická stabilita QR rozkladu 8 Cvičení 51

Numerická stabilita QR rozkladu Říkáme, že algoritmus je zpětně stabilní, pokud spočtené řešení dané úlohy je přesným řešením modifikované úlohy se vstupními daty, která jsou blízká původním datům dané úlohy. Nechť Q a R jsou spočtené faktory QR rozkladu matice A C n m v aritmetice s konečnou přesností. Nechť fl(u A) je spočtený výsledek aplikace elementární Givensovy rotace nebo Householderovy reflexe U na matici A v aritmetice s konečnou přesností. 52

Numerická stabilita QR rozkladu Říkáme, že algoritmus je zpětně stabilní, pokud spočtené řešení dané úlohy je přesným řešením modifikované úlohy se vstupními daty, která jsou blízká původním datům dané úlohy. Nechť Q a R jsou spočtené faktory QR rozkladu matice A C n m v aritmetice s konečnou přesností. Nechť fl(u A) je spočtený výsledek aplikace elementární Givensovy rotace nebo Householderovy reflexe U na matici A v aritmetice s konečnou přesností. Otázky: Jaká je přesnost vypočtené matice fl(u A)? Co lze říci o ortogonalitě spočtené matice Q? Jak přesně spočtený je faktor R? Do jaké míry odpovídá součin Q R matici A? 52

Aplikace Givensových rotací a Householderových reflexí v konečné aritmetice Wilkinson, Turing: Je-li U C n n matice elementární Givensovy rotace nebo Householderovy reflexe, potom fl(ua) = U(A + E), γ malá konstanta. kde E A γn2 u + O(u 2 ), Faktor n 2 je velmi pesimistický a není důležitý z hlediska pochopení fungování algoritmu v konečné aritmetice počítače. Výše zmíněný odhad normy E budeme zjednodušeně zapisovat E u A. 53

Numerická stabilita QR rozkladu Ortogonalita spočtené matice ˆQ Ztrátu ortogonality matic vypočtených v aritmetice s konečnou přesností budeme měřit pomocí 2-normy matice E Q Q Q I. Velikosti normy E Q pro jednotlivé algoritmy: Algoritmus Householderův QR rozklad Givensův QR rozklad CGS MGS ICGS E Q u u κ 2 (A) u κ(a) u u Lze matematicky dokázat. 54

Numerická stabilita QR rozkladu Stabilita výpočtu faktoru ˆR Pomocí analýzy zaokrouhlovacích chyb lze ukázat, že Householderův QR, Givensův QR a MGS jsou zpětně stabilní algoritmy v následujícím smyslu: Nechť R je spočtený trojúhelníkový faktor. Potom existuje unitární matice Q a perturbace E tak, že platí Q (A + E) = R, E F u A F. Překvapivé hlavně pro MGS, kde není zaručená ztráta ortogonality na úrovni strojové přesnosti. 55

Numerická stabilita QR rozkladu Norma rezidua A ˆQ ˆR Matice Q a R vypočtené všemi uvažovanými variantami QR rozkladů splňují A Q R u A. Platí i pro CGS, kde je ztráta ortogonality největší. 56

Outline 1 Ortogonální projekce a ortogonální projektory 2 Givensovy rotace 3 Householderovy reflexe 4 QR rozklad 5 QR rozklad a Gram-Schmidtův ortogonalizační proces 6 Cena výpočtu QR rozkladu 7 Numerická stabilita QR rozkladu 8 Cvičení 57

Cvičení 3.3 Určete vlastní čísla a determinant elementární Givensovy rotace. 3.5 Určete vlastní čísla a determinant Householderovy reflexe v reálném oboru. 3.8 Ukažte, že Householderovy reflexe odpovídající vzájemně ortogonálním normálovým vektorům jsou komutativní. 58

Cvičení 3.11 Mějme dánu matici Givensovy rotace v R 2 [ cos(ϕ) sin(ϕ) G(ϕ) = sin(ϕ) cos(ϕ) ]. Definujme dva normalizované vektory q 1 = 0.5 [ ] 1 cos(ϕ), q 1 + cos(ϕ) 2 = [ 0 1 q 1 = 1 2 (1 cos(ϕ) + 1 + cos(ϕ)) = 1 = q 2. ], Ukažte, že [ cos(ϕ) sin(ϕ) H(q 2 )H(q 1 ) = sin(ϕ) cos(ϕ) ] = G(ϕ), tedy každou Givensovu rotaci lze popsaným způsobem složit ze dvou Householderových reflexí. 59

Cvičení 3.13 Dokažte, že matici Householderovy reflexe nelze složit z Givensových rotací. Dále dokažte, že pomocí Givensových rotací nelze vyjádřit žádná matice, která je součinem lichého počtu Householderových reflexí. 3.15 Ukažte, že jsou-li vektory q 1,..., q k navzájem ortogonální, pak platí I q 1 q 1 q 2q 2... q kq k = (I q 1q 1 )(I q 2q 2 )... (I q kq k ), tedy součin na pravé straně je komutativní. 3.16 Ukažte, že cena k-tého kroku algoritmu CGS je dána cenou 2n(k 1) + 2n součinů, (2n 1)(k 1) + n 1 součtů nebo rozdílů, jednoho podílu a jednoho výpočtu odmocniny. Využijte sčítací vzorce n k = 1 n 2 n(n + 1) a k 2 = 1 n (2n + 1) (n + 1). 6 k=1 k=1 60