Turinys QR algoritmas 4 paskaita Olga Štikonienė Diferencialinių lygčių ir skaičiavimo matematikos katedra, MIF VU 4 5 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 Ortogonaliosios transformacijos Apibrėžimas m n matrica Q (m n) yra ortogonalioji, jei gali transformuoti vektorius įvairiais būdais, pavyzdžiui, posūkiu arba atspindžiu Jos nekeičia vektoriaus ilgio ir kampu yra labai svarbios skaitiniuose metoduose, nes jų savybė išsaugoti norma reiškia, kad paklaidos nedidėja Ortogonalizavimo metodai ženkliai brangesni skaičiavimo prasme, nei metodai, pagrįsti Gauso metodu Q Q = I Vienetinė matrica I yra ortogonali Nulinė matrica O nėra ortogonali, nes O O = O I ( ) cos α sin α Q =, A = sin α cos α TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 4 / 40 Ortogonaliujų matricų savybės Ortogonaliujų matricų savybės Q Q = I Matricos Q stulpeliai q, q,, q n R m yra ortonormuoti, ty jų skaliarinė sandauga Kai Q yra kvadratinė q i, q j = q i q j = δ ij Q = Q, I = Q Q = QQ = ( Q ) Q, Q irgi ortogonalioji matrica matricos Q eilutės yra ortonormuotos n n q ij = q ij = Determinantas i= = det I = det ( QQ ) = det Q det Q = (det Q) det Q = ± TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 5 / 40 Lema Matrica Q yra ortogonali Qx = x x R n Ty atvaizdis Q išsaugo vektoriaus euklidinę norma x = x, x Įrodymas Tegul S := Q Q Qx = Qx, Qx = Q Qx, x := Sx, x Jei Q yra ortogonali, tai S = I Tada Qx = x, x = x Iš kitos puses, jei Q išsaugo norma, tai Sx, x = x, x x R n ir S = S Tegul x = e i, tada s ii = (Se i, e i ) =, Tegul x = e i + e j s ii + s ij + s jj =, s ij = 0, ie, S = I TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 6 / 40 Ortogonaliujų matricų savybės Ortogonalieji operatoriai Atvaizdis, išsaugantis atstuma tarp dviejų taškų (kaip ortogonalusis atvaizdis Q) vadinamas izometrija Akivaizdu, kad dviejų izometrijų kompozicija yra izometrija Apibrėžimas Tiesinis operatorius Q : E E Euklido erdvėje E yra ortogonalusis operatorius (ortogonalioji transformacija), jei jis išsaugo skaliarinę sandauga, ty Lema Jei P ir Q yra ortogonalios PQ irgi yra ortogonali x, y E Qx, Qy = x, y TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 7 / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 8 / 40
Ortogonalieji operatoriai (geometrinė prasmė plokštumoje) Tegul Q : R R ortogonalusis operatorius Jo matrica ( ) q q Q = q q q + q =, q + q =, q q + q q = 0 Galima parodyti, kad ortogonalioji matrica yra ( ) cos α sin α Q α = sin α cos α arba Q = ( 0 0 čia α [0, π) Q α yra posūkio kampu α matrica, o Q yra atspindžio ašies atžvilgiu matrica Išvada Plokštumoje ortogonalusis operatorius yra arba plokštumos posūkis kampu α, arba atspindys ašies atžvilgiu, arba šių operatorių kompozicija TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 9 / 40 ), Ortogonaliosios transformacijos m n matricos A The Full QR Factorization Q yra ortogonalioji m m matrica, Let A be an m n matrix The full QR factorization of A is the factorization A = QR, where A = QR RQ yra is m mm unitary n viršutinė trikampė matrica, t y r ij = 0, kai i > j R is m n upper-triangular Bet kuri matrica turi QR skaidinį (nevienintelį!) The Reduced = QR Factorization A more compact representation is the Reduced QR Factorization A = ˆQ ˆR, where A (for m n) Q R 0 Matricos ˆQ isrm apatinės n and ˆR is m neilutės yra nulinės stulpeliai q n+,, q m nereikalingi užrašant skaidinį galima užrašyti sumažinta (redukuota) : = (Skinny A QR) ˆQ ˆR TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 0 / 40 Teorema Kiekviena matrica A turi QR skaidinį Jei det A 0, išskaidimas A = QR yra vienintelis Teorema Kiekviena matrica A turi QR skaidinį Jei det A 0, išskaidimas A = QR yra vienintelis Įrodymas Yra trys QR faktorizavimo algoritmai Gramo ir Šmidto ortogonalizavimo procesas Hausholderio transformacijos Tegul A = QR ir det A 0 Tada A A = R R yra teigiamai apibrėžta! Choleckio faktorizacija A = LL R = L nustatoma vienareikšmiškai TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 QR skaidinio interpretacija Taikymai Tegul m n Pažymėkime matricų A ir Q stulpelius a, a,, a n ir q, q,, q m, atitinkamai Tada A = QR: r r r n 0 r ( ) ( ) a a a n = q q q m, 0 r nn 0 0 Kai m = n nulinių eilučių nėra Tada k a k = r jk q j, j =,,, n Matricos Q savybė: kiekvienas k-asis matricos A stulpelis yra matricos Q pirmųjų k stulpelių tiesinė kombinacija TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 TLS sprendimas, kai m = n Tegul yra žinomas matricos A QR skaidinys Galima užrašyti Ax = b QRx = b Kadangi Q = Q Rx = Q b y = Q b reikalauja O(n ) veiksmų x apskaičiuojamas iš Rx = Q b O(n ) veiksmų Nereikalingas pagrindinio elemento parinkimas Pastaba QR skaidinio algoritmas yra du kartus brangesnis nei LU algoritmas TLS sprendimas mažiausių kvadratų metodu, kai m > n Kai matrica A yra m n, bendru atveju neegzistuoja TLS Ax = b sprendinys Dažnai reikia rasti vektorių x, kuris minimizuoja norma Ax b Sprendinį x patogu rasti taikant QR skaidinį Tikrinių reikšmių uždavinys, optimizavimas ir kiti uždaviniai TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 QR faktorizavimo algoritmai QR faktorizavimo algoritmai Norint rasti matricos A QR skaidinį reikia nuosekliai paversti nuliais matricos elementus stulpeliuose po pagrindinę įstrižainę, suvedant matrica į viršutinę trikampę forma Vietoj elementarių pertvarkimų (Gauso metodas) naudojamos ortogonaliosios transformacijos (panašu į LU skaidinį) Ortogonalizavimo algoritmai Gramo ir Šmidto ortogonalizavimo procesas Hausholderio transformacijos QR-skaidinį lengviausiai apskaičiuoti naudojant Gramo ir Šmidto ortogonalizavima, tačiau šis algoritmas skaitiškai nestabilus Tikslesni algoritmai apskaičiuojant QR-skaidinį yra Hausholderio transformacijos ir Hausholderio transformacijos stabilumas yra geresnis nei Gramo ir Šmidto proceso Bet Gramo ir Šmidto procesas gauna j-ajį ortogonalujį vektorių po j-sios iteracijos, o ortogonalizavimas naudojant Hausholderio transformacijas visus ortogonaliuosius vektorius tik pačioje pabaigoje Gramo ir Šmidto procesas labiau taikomas iteraciniuose metodose (pvz, Arnoldi iteracijos tikrinių reikšmių uždaviniui) TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 4 / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 5 / 40
Gram Schmidt process (angl) Tiesinė algebra: Apibrėžimai: Dviejų vektorių v ir w skaliarinė sandauga vadinamas skaičius v, w = v w ( v, w = v w kompleksiniu atveju) Gramo ir Šmidto algoritmas (R ) Least Squares Data Fitting Existence, Uniqueness, and Conditioning Solving Linear Least Squares Problems Normal Equations Orthogonal Methods SVD Gram-Schmidt Orthogonalization Given vectorsortonormuosime a and a, we seek vektorius orthonormal a vectors ir a kaip q vektorius q ir q tame and q having same span pačiame poerdvyje This can be accomplished by subtracting from second vector its projection Tai galima onto first gauti vector atimant and normalizing iš vektoriaus both a jo projekcija į vektoriaus resulting vectors, a kryptį as shown ir normuojant in diagram gautus vektorius Vektorių sistema {u,, u m } yra ortogonali, jeigu bet kurių dviejų skirtingų sistemos vektorių skaliarinė sandauga u i, u j = 0 i, j : i j Bet kuria tiesiškai nepriklausomų vektorių sistema v,, v m galima ortogonalizuoti Gramo ir Šmidto metodu u,, u m Tai daroma k-me etape projektuojant v k ortogonaliai į poerdvį generuojama vektoriais {u,, u k } ir po to apibrėžiant u k kaip skirtuma tarp v k ir jo projekcijos TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 6 / 40 < interactive example > Michael T Heath Scientific Computing 44 / 6 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 7 / 40 Gramo Šmidto ortogonalizavimas Teorema Tegul a,, a n R m tiesiškai nepriklausomi vektoriai Tada q,, q n R m tokie, kad k r jkq j = a k, k =,, n, (q i, q j ) = δ ij, i, j =,, n Įrodymas Pagal indukcija Iš () (k = ): kadangi a 0 r q = a, q = r = (a, a ), r = a, q = a a Tarkime, kad jau sukonstruoti q,, q k, kurie tenkina teoremos salygas Tada q k turi būti ortonormuotas ir teisinga lygybė () r kk q k + r jk q j = a k () TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 8 / 40 Skaliariškai dauginame () lygybę iš q j r kk q k, q j + r jk q j, q j = a k, q j, iš čia ir iš vektorių ortogonalumo r jk = a k, q j, j =,, k r kk q k = a k a k, q j q j =: b k r kk = b k q k = b k b k Kiekvienas q j yra vektorių a i, i j tiesinė kombinacija, todėl b k := a k c j a j 0, nes a,, a k tiesiškai nepriklausomi vektoriai, ty q k apibrėžtas korektiškai TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 9 / 40 Algoritmas r = a =, q = a = ; r r = q, a =, b = a r q = 4 = ; TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 0 / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 r = a =, q = a = ; r r = q, a =, b = a r q = 4 = ; r = a =, q = a = ; r r = q, a =, b = a r q = 4 = ; r = b =, q = b = ; r r = b =, q = b = ; r r = q, a =, r = q, a =, b = a r q r q = 5 = ; r = q, a =, r = q, a =, b = a r q r q = 5 = ; r = b =, q = b = ; r TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40
r = a =, q = a = ; r r = q, a =, b = a r q = 4 = ; r = b =, q = b = ; r r = q, a =, r = q, a =, b = a r q r q = 5 = ; r = b =, q = b = ; r A = = } {{ }} {{ } Q R TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 Skaitinis stabilumas Gramo ir Šmidto algoritmas yra labai nestabilus: Apvalinamos paklaidos kaupiasi labai greitai ir, netgi nedideliems n matrica Q tampa neortogonali Geresni algoritmai: matrica Q konstruojama kaip tam tikrų elementarių atvaizdžių kompozicija Atvaizdis, išsaugantis atstuma tarp dviejų taškų (kaip ortogonalusis atvaizdis Q) vadinamas izometrija Dviejų izometrijų kompozicija yra izometrija (ortogonaliujų matricų savybė) Paprasčiausios izometrijos yra posūkiai ir atspindžiai Dviejų algoritmų idėja yra geometrinė: turint vektorių seka a i, visada galima nustatyti elementarių posūkių (atspindžių) seka, kuri suveda vektorių a i koordinates į trikampes formos matrica TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 bendras atvejis Uždavinys: Duoti a, b R Reikia rasti c, s R tokius, kad su kokiu nors r tenkintų ( ) ( ) ( ) c + s c s a r =, = s c b 0 Sprendinys visada egzistuoja a c = ± a + b =: cos ϕ, s = ± b =: sin ϕ a + b James Wallace Givens, Jr (4 December 90 5 March 99) TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 6 / 8 Bet kuriam vektoriui a p R n galima rasti tokia matrica Ω [p,q], kad 0 0 0 a p a p 0 c s 0 a pp r p Ω [p,q] a p = =, 0 s c 0 a qp 0 q 0 0 p 0 q a np a np a pp a qp c =, s = a pp + a qp a pp + a qp Matrica Ω [p,q] vadinama Givenso posūkiu Atvaizdis Ω [p,q] suka vektorius dvimačiame poerdvyje, apibrėžtame nepriklausomais vektoriais e p ir e q (pagal laikrodžio rodyklę kampu ϕ), todėl jis yra ortogonalusis TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 4 / 40 Lema Tegul A yra m n matrica ir bet kuriems p q m à = Ω [p,q] A Tada ã qp = 0; p-oji ir q-oji matricos à eilutės yra tiesinės kombinacijos p-osios ir q-osios matricos A eilučių; visos kitos matricos à eilutės sutampa su matricos A eilutėmis Įrodymas seka iš matricos Ω [p,q] formos Iš lemos seka, kad galima nuosekliai paversti nuliais elementus po pagrindine įstrižaine stulpeliuose Teorema Bet kuriai matricai A egzistuoja Givenso matricos Ω [p,q] tokios, kad ( Ω [m,m] ) (Ω [,m] Ω [,])( Ω [,m] Ω [,] Ω [,]) A = R yra viršutinė trikampė matrica elementai pasikeitė po atliekamo vieno posūkio, elementai išlieka tie patys TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 5 / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 6 / 40 pavyzdys A = pavyzdys A = r = a =, q = a = ; r r = q, a =, b = a r q = 4 = ; r = a =, q = a = ; r r = q, a =, b = a r q = 4 = ; r = b =, q = b = ; r r = q, a =, r = q, a =, b = a r q r q = 5 = ; TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 7 / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 7 / 40
pavyzdys A = pavyzdys A = r = a =, q = a = ; r r = q, a =, b = a r q = 4 = ; r = a =, q = a = ; r r = q, a =, b = a r q = 4 = ; r = b =, q = b = ; r r = b =, q = b = ; r r = q, a =, r = q, a =, b = a r q r q = 5 = ; r = q, a =, r = q, a =, b = a r q r q = 5 = ; r = b =, q = b = ; r r = b =, q = b = ; r A = = } {{ }} {{ } Q R TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 7 / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 7 / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 8 / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 9 / 40 Skaičiavimo apimtis Yra mažiau nei mn posūkių, o kiekvienas posūkis pakeičia dvi eilutes, naudojant jų tiesinę kombinacija, bendra skaičiavimo R apimtis yra O(mn ) Jei matrica Q naudojama daug kartų, pvz, spręndžiant sistema su skirtingomis dešiniosiomis pusėmis, tuomet imame Ω = I ir po kiekvieno posūkio keičiame Ω į Ω [p,q] Galutinė Ω yra visų posūkių sandauga, ir Q = Ω Papildomas veiksmų skaičius yra O(m n) Jei reikalingas tik vienas vektorius Q b O(mn) Kai m = n kiekvienas posūkis reikalauja keturis kartus daugiau daugybų, nei spręndžiant Gauso metodu Todėl bendra apimtis yra 4 n + O(n ), keturis kartus brangiau Tačiau QR faktorizavimas paprastai yra stabilesnis nei LU išskaidimas TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 0 / 40 Apibrėžimas Bet kuriam duotam nenuliniam vektoriui u R m, m m matrica H = H u = I u uu vadinama arba Hausholderio atspindys N u u x x N x-x u x u Kadangi Hu = u, Hv = v, jei u v = 0, ši transformacija atvaizduoja bet kokį vektorių x R m simetriškai (m )-matę hiperplokštumos ortogonaliosios u atžvilgiu Matrica H yra simetrinė ir ortogonalioji (nes atspindys yra izometrija) TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 Lema Bet kuriems vienodo ilgio vektoriams a ir b Hausholderio transformacija Definition H u su u = a b atvaizduoja a į b Atskiru atveju, a R m, parinkus b = γe gauname For w R n, w 0, the Householder matrix H(w) R n n is the matrix HH(w) u a = Iγe, w T w wwt u = a γe, γ = ± a Teorema matricai A Hausholderio matricos H k tokios, kad yra viršutinė trikampė matrica H n H H =: R Įrodymas Tegul H = H u su vektoriumi u = a γe ir a yra matricos A pirmasis stulpelis, ty u = a ± ( m a ) /, i ui = a i, i > k i= Rockford, Illinois, USA, 5 May 904 Malibu, California, USA, 4 July 99 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40 9 / 8 Tada γe yra matricos H A pirmasis stulpelis Tarkime, kad pirmieji k stulpeliai matricos à = H k H H A sudaro viršutinę trikampę matrica TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas / 40
Tegul ã yra k-sis matricos A stulpelis Paimkime sekantį H k = H u su tokiu u u i = 0, i < k, u k = ã k ± ( m ã ) /, i ui = ã i, i > k Dėl nulinių elementų, toks u yra ortogonalus pirmiems k matricos A stulpeliams Todėl jie nesikeičia (invariantas) po atspindžio H k A ( taip pat ir pirmosios k matricos A eilutės) Apatinės m k komponentės H k A tampa nuliais pagal lema i=k TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 4 / 40 Q ir Q b skaičiavimas Jei matrica Q naudojama daug kartų, imkime Ω = I ir po kiekvieno sėkmingo atspindžio, pakeičiame Ω į H u Ω Kaip ir Givenso posūkio atveju pabaigoje gaunama Q = Ω Tas pats algoritmas naudojamas apskaičiuojant vektorių c = Q b Pastaba Praktiniuose skaičiavimuose matricai B ir vektoriui x reikia apskaičiuoti sandaugas H u B ir H u x kaip H u B = B u u( u B ), H u B = B u x u u Pasirinkimas tarp Givenso ir Hausholderio transformacijų: Bendru atveju patogiau naudoti Hausholderio atspindžius Givenso posūkius patogiau naudoti, kai matricos A eilutėse yra daug (leading) nulinių elementų Kraštutiniu atveju, jei n n matrica A turi nulius žemiau pirmosios podiagonalės, juos reikia "pasukti" tik per n Givenso posūkių Tai tik O(n ) aritmetinių veiksmų TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 5 / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 6 / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 7 / 40 - taikymai Skaičiavimo apimtis Geometrinėje optikoje veidrodinis atspindys gali būti išreikštas Hausholderio atspindžiai gali būti naudojami siekiant rasti QR išskaidyma Jie taip pat plačiai naudojami simetrinių matricų tridiagonalizacijai ir nesimetrinių matricų suvedimui į Hessenberg o forma Daugybų/dalybų, reikalingų n n matricos suvedimui į viršutinį trikampį pavidala, apytikslus skaičius: Gaussian elimination (scaled partial pivoting) n / Gram-Schmidt procedure (classical and modified) n Householder reduction n / Givens reduction 4n / TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 8 / 40 TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 9 / 40 Skaitinio stabilumo suvestinė Gauso metodas su daliniu pagrindinio elemento parinkimu (with scaled partial pivoting ) teoriškai yra nestabilus, bet praktiškai stabilus, ty stabilus daugeliui praktinių uždavinių Pilnas pagrindinio elemento parinkimas padaro Gauso metoda besalygiškai stabiliu nėra stabilus QR faktorizavimui, bet modifikuotas Gramo ir Šmidto algoritmas yra stabilus, sprendžiant mažiausių kvadratų metodu (regresija) Hausholderio ir Givenso metodai yra besalygiškai stabilūs algoritmai, apskaičiuojant TA skaitiniai metodai ( MIF VU) Tiesinių lygčių sistemų sprendimas 40 / 40