Prednáška č. 7 Numerické metódy matematiky I Riešenie sústav lineárnych rovníc ( pokračovanie )
Prednáška č. 7 OBSAH 1. Metóda singulárneho rozkladu (SVD) Úvod SVD štvorcovej matice SVD pre menej rovníc ako neznámych SVD pre viac rovníc ako neznámych 2. QR-rozklad 3. Literatúra
Terminológia a základné vzťahy Majme štvorcovú maticu A. Jej vlastné čísla budeme označovať λ n a pravé resp. ľavé vektory x a y, Ak platí, že pre ktoré platí A potom λ i, x i y i a je symetrická, vlastné vektory generujú ortogonálnu bázu. Podobnostná transformácia P -1 AP nemení vlastné čísla matice A. det A λi 0 Ax λ x i i i T T i λiyi y A a
Terminológia a základné vzťahy Reálna ortogonálna matica je taká štvorcová matica Q, ktorej transponovaná matica je jej inverznou maticou. T T Q Q QQ I Ak Q je obdĺžniková matica, potom podmienky T Q Q I a QQ I nie sú ekvivalentné. T Podmienka Q T.Q = I hovorí, že matica Q je stĺpcovo ortogonálna. Podmienka Q.Q T = I hovorí, že matica Q je riadkovo ortogonálna.
Metóda singulárneho rozkladu - úvod Ak je počet rovníc sústavy M menší ako počet neznámych N, alebo ak M = N ale rovnice sú lineárne závislé, potom sústava nemá žiadne riešenie alebo má viac než jedno riešenie. V druhom prípade priestor riešení tvorí partikulárne riešenie pripočítané k ľubovoľnej lineárnej kombinácii N - M vektorov. Úlohu nájsť priestor riešení matice A je možné riešiť metódou singulárneho rozkladu matice A.
Metóda singulárneho rozkladu - úvod Ak je počet rovníc sústavy M väčší ako počet neznámych N, vo všeobecnosti neexistuje vektor riešenia a sústave rovníc sa hovorí preurčená. Môžeme ale nájsť najlepšie kompromisné riešenie, ktoré je najbližšie k tomu, aby vyhovovalo všetkým rovniciam. Ak najbližšie definujeme v zmysle najmenších štvorcov, t.j. že suma kvadrátu rozdielov medzi ľavou a pravou stranou rovnice je najmenšia, potom sa preurčený systém redukuje na (zvyčajne) riešiteľný problém zvaný metóda najmenších štvorcov.
Metóda singulárneho rozkladu - úvod Redukovaný systém rovníc môžeme zapísať ako systém N x N rovníc T T A A x A b. Tieto rovnice voláme normálne rovnice problému najmenších štvorcov. Metóda singulárneho rozkladu má veľa spoločného s problémom najmenších štvorcov, čo si ukážeme neskôr. Priame riešenie normálnych rovníc nie je vo všeobecnosti najlepším spôsobom hľadania riešenia najmenších štvorcov.
Metóda singulárneho rozkladu V mnohých prípadoch, keď GEM alebo LU rozklad zlyhajú, metódy singulárneho rozkladu (singular value decompisition, SVD) presne diagnostikujú, v čom je problém a v mnohých prípadoch tiež poskytnú vhodné numerické riešenie. SVD je tiež metóda na riešenie mnohých problémov najmenších štvorcov.
Metóda singulárneho rozkladu SVD je založená na nasledujúcej teoréme lineárnej algebry: Každá matica A typu M x N, ktorej počet riadkov M je väčší alebo rovný počtu stĺpcov N, môže byť zapísaná ako súčin stĺpcovo-ortogonálnej matice U typu M x N, diagonálnej matice W typu N x N s kladnými alebo nulovými prvkami (singulárnymi hodnotami) a transponovanej ortogonálnej matice V typu N x N.
Metóda singulárneho rozkladu Ortogonálnosť matíc U a V môžeme zapísať nasledovne
Metóda singulárneho rozkladu SVD dekompozícia môže byť vykonaná aj keď M < N. V takom prípade singulárne hodnoty w j sú všetky nulové pre j = M+1,, N ako aj odpovedajúce stĺpce matice U. Existuje viacero algoritmov na SVD, osvedčená je subroutina svdcmp z Numerical Recipes.
Prednáška č. 7 OBSAH 1. Metóda singulárneho rozkladu (SVD) Úvod SVD štvorcovej matice SVD pre menej rovníc ako neznámych SVD pre viac rovníc ako neznámych 2. QR-rozklad 3. Literatúra
Metóda singulárneho rozkladu štvorcovej matice Aj je matica A štvorcová, povedzme typu N x N, potom U, W a V sú všetko štvorcové matice typu N x N. Keďže U a V sú ortogonálne, ich inverzné matice sú rovné ich transponovaným maticiam. Potom môžeme písať vzťah pre inverznú maticu A A 1 diag 1/ T V U w j SVD dáva jasnú diagnostiku situácie, ak sú niektoré singulárne hodnoty nulové alebo blízke nule.
Metóda singulárneho rozkladu štvorcovej matice Norma matice A A max Ax max UwV x x 1 x 1 T
Metóda singulárneho rozkladu štvorcovej matice Norma matice A A max Ax max UwV x x 1 x 1 keďže pre Euklidovskú normu platí, že T T U Ux Ux
Metóda singulárneho rozkladu štvorcovej matice Norma matice A A max Ax max UwV x x 1 x 1 keďže pre Euklidovskú normu platí, že T T U Ux Ux T potom A max wv x max wy max x 1 y 1 w j
Metóda singulárneho rozkladu štvorcovej matice Norma matice A -1 1 1 1 A max A x max Vw U x x 1 x 1 T
Metóda singulárneho rozkladu štvorcovej matice Norma matice A -1 1 1 1 A max A x max Vw U x x 1 x 1 podobne potom 1 1 T 1 A max w U x max w y min x 1 y 1 T w 1 j
Metóda singulárneho rozkladu štvorcovej matice Pripomeňme jednu z definícií čísla podmienenosti matice κ(a): κ A : A A 1 max min w w j j Matica je singulárna ak je jej číslo podmienenosti nekonečno. Matica je zle podmienená ak prevrátená hodnota jej čísla podmienenosti je blízka strojovej presnosti počítača, t.j. menšia než 10-6 pre jednoduchú presnosť alebo 10-12 pre dvojnásobnú presnosť.
Metóda singulárneho rozkladu štvorcovej matice Prípad sústavy lineárnych rovníc Ax b v ktorej matica A je singulárna:, Najskôr sa pozrime na prípad homogénnej sústavy, t.j. prípad keď b=0. Inými slovami hľadáme nulový priestor A
Metóda singulárneho rozkladu štvorcovej matice Prípad sústavy lineárnych rovníc Ax b v ktorej matica A je singulárna:, Najskôr sa pozrime na prípad homogénnej sústavy, t.j. prípad keď b=0. Inými slovami hľadáme nulový priestor A n : n T : null A x Ax 0 x UwV x 0 n T T : n T x U UwV x 0 x : wv x 0
Metóda singulárneho rozkladu štvorcovej matice Prípad sústavy lineárnych rovníc Ax b v ktorej matica A je singulárna:, Najskôr sa pozrime na prípad homogénnej sústavy, t.j. prípad keď b=0. SVD dáva priamo riešenie každý stĺpec matice V, ktorého zodpovedajúca singulárna hodnota w j je nulová je riešením.
Metóda singulárneho rozkladu štvorcovej matice Prípad sústavy lineárnych rovníc Ax b v ktorej matica A je singulárna:, Teraz sa pozrime aký je rozsah (range) matice A
Metóda singulárneho rozkladu štvorcovej matice Prípad sústavy lineárnych rovníc Ax b v ktorej matica A je singulárna:, Teraz sa pozrime aký je rozsah (range) matice A : n T : n : n range A Ax x UwV x x Uwy y T y V x
Metóda singulárneho rozkladu štvorcovej matice Prípad sústavy lineárnych rovníc Ax b v ktorej matica A je singulárna:, Teraz sa pozrime aký je rozsah (range) matice A Range matice A je tvorený obalom (span) stĺpcov matice U, ktorých zodpovedajúca singulárna hodnota w j je nenulová.
Metóda singulárneho rozkladu štvorcovej matice Hľadané riešenie systému s nenulovou pravou stranou pomocou SVD nájdeme nasledovne: nahradíme 1/w j nulou ak w j =0 potom počítame (sprava doľava) x V diag 1/ U b T w j Ak partikulárne riešenie leží v rozsahu (range) A, 2 potom má najmenšiu veľkosť x. Ak partikulárne riešenie neleží v rozsahu (range) A, r : Ax b potom x minimalizuje rezíduum riešenia.
Metóda singulárneho rozkladu štvorcovej matice Matica A nie je singulárna
Metóda singulárneho rozkladu štvorcovej matice Matica A je singulárna
Metóda singulárneho rozkladu štvorcovej matice Doteraz sme uvažovali len o krajných prípadoch a to že matica sústavy je alebo nie je singulárna. Numericky je častý prípad, že singulárne hodnoty w j sú veľmi malé, no nenulové, takže matica je zle podmienená. V takom prípade môžu priame metódy poskytnúť formálne riešenie, ale vektor riešenia má nezmyselne veľké prvky, ktoré pri algebraickom krátení počas násobení maticou A dajú veľmi zlú aproximáciu vektora pravej strany. Vtedy je často lepšie malé hodnoty w j vynulovať a riešenie určiť podľa vzorca (s tým, že 1/w j nahradíme nulou ak w j =0) x diag 1/ T V w j U b Je nutné byť ale opatrný a dobre zvoliť prahovú hodnotu nulovania veličín w j
Prednáška č. 7 OBSAH 1. Metóda singulárneho rozkladu (SVD) Úvod SVD štvorcovej matice SVD pre menej rovníc ako neznámych SVD pre viac rovníc ako neznámych 2. QR-rozklad 3. Literatúra
Metóda singulárneho rozkladu pre menej rovníc ako neznámych Ak máme menej rovníc ako neznámych neočakávame jediné riešenie. Obyčajne existuje celý N - M rozmerný priestor riešení, ktorý chceme nájsť. SVD dá v takomto prípade N - M nulových alebo zanedbateľne malých hodnôt w j. Ak niektoré z M rovníc degeerujú, môžeme získať ďalšie nulové w j. Potom tie stĺpce matice V, ktorých zodpovedajúca singulárna hodnota w j je nulová tvoria bázové vektory hľadaného priestoru riešení. Partikulárne riešenie nájdeme aplikovaním vzorca x V diag 1/ U b T w j
Prednáška č. 7 OBSAH 1. Metóda singulárneho rozkladu (SVD) Úvod SVD štvorcovej matice SVD pre menej rovníc ako neznámych SVD pre viac rovníc ako neznámych 2. QR-rozklad 3. Literatúra
Metóda singulárneho rozkladu pre viac rovníc ako neznámych Ak máme viac rovníc ako neznámych hľadáme riešenie, v zmysle problému najmenších štvorcov. Riešime teda sústavu, zapísanú tabuľkovo nasledovne:
Metóda singulárneho rozkladu pre viac rovníc ako neznámych Po aplikácii SVD na maticu A dostaneme riešenie v tvare V tomto prípade nie je zvyčajne nutné nulovať hodnoty w j avšak neobvykle malé hodnoty indikujú, že dáta nie sú citlivé na niektoré parametre.
Prednáška č. 7 OBSAH 1. Metóda singulárneho rozkladu (SVD) Úvod SVD štvorcovej matice SVD pre menej rovníc ako neznámych SVD pre viac rovníc ako neznámych 2. QR-rozklad 3. Literatúra
QR rozklad Podobne ako LU rozklad matice, existuje aj tzv. QR rozklad matice A = Q.R kde R je horná trojuholníková matica a Q je ortogonálna matica, teda platí Q T.Q = 1. Riešenie sústavy rovníc nájdeme riešením R.x = Q T.b QR rozklad vyžaduje asi 2-krát viac operácií ako LU rozklad, ale existujú špeciálne typy rovníc, v ktorých je výhodnejšie ho použiť.
Prednáška č. 7 OBSAH 1. Metóda singulárneho rozkladu (SVD) Úvod SVD štvorcovej matice SVD pre menej rovníc ako neznámych SVD pre viac rovníc ako neznámych 2. QR-rozklad 3. Literatúra
Literatúra
Literatúra
Literatúra