15.01.2015 Views

x - fyzikazeme.sk

x - fyzikazeme.sk

x - fyzikazeme.sk

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Prednáška č. 5<br />

Numerické metódy matematiky I<br />

Riešenie sústav lineárnych rovníc<br />

(pokračovanie )


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

• Metóda najväčšieho spádu<br />

• Metóda združených (konjugovaných) gradientov (CG)<br />

• Zovšeobecnenia metódy CG<br />

• Konvergencia metódy CG<br />

• Predpodmienenie (preconditioning)<br />

• Zhrnutie<br />

2. Metóda singulárneho rozkladu<br />

3. QR-rozklad<br />

4. Literatúra


Gradientné iteračné metódy<br />

Gradientné iteračné metódy sú zvlášť atraktívne<br />

pre riedke systémy lineárnych rovníc,<br />

pretože často využívajú<br />

len násobenie matice sústavy vektorom.<br />

Základné metódy tejto <strong>sk</strong>upiny sú vhodné<br />

na riešenie sústavy<br />

so symetrickou a pozitívne definitnou maticou<br />

a využívajú fakt,<br />

že riešenie takejto sústavy je<br />

jediným minimom formy<br />

1 T T<br />

Q ( x)<br />

= x Ax- x b .<br />

2<br />

Definícia: Matica A je pozitívne definitná, ak<br />

pre ľubovoľný nenulový vektor x platí<br />

T<br />

x<br />

⋅A⋅ x ><br />

0


Gradientné iteračné metódy<br />

Postupnosť vektorov,<br />

ktorá konverguje k presnému riešeniu danej sústavy<br />

sa dá potom konštruovať tak,<br />

že za predpokladu,<br />

že k-tá aproximácia x (k) je už určená,<br />

sa zvolí smer v (k) a určí číslo α k tak,<br />

aby vektor x (k) + α k v (k)<br />

minimalizoval formu Q na priamke x (k) + α k v (k)<br />

a položí sa<br />

( k 1) ( k) ( k)<br />

x + = x +α k v<br />

.<br />

Špeciálnou voľbou smerov v (k)<br />

v jednotlivých krokoch<br />

dostávame konkrétne metódy.


Gradientné iteračné metódy<br />

Ak za smery v (1) ,v (2) ,... volíme postupne vektory<br />

v smere prvej, druhej, ... súradnice,<br />

dostaneme Gauss-Seidlovu metódu.<br />

Jednu iteráciu (v zmysle Gauss-Seidlovej metódy)<br />

dostaneme až po vyčerpaní všetkých súradníc.


Gauss-Seidlova metóda<br />

Pripomeňme si Gauss-Seidlovu metódu<br />

1<br />

( 1) 1<br />

⎛ i−<br />

n ⎞<br />

k+ ( k+<br />

1) ( k)<br />

xi = bi aijxj aijx j , i 1, 2,..., n .<br />

a<br />

−∑<br />

− ∑<br />

=<br />

ii ⎜⎝<br />

j= 1 j= i+<br />

1 ⎠⎟<br />

Gauss-Seidlova metóda konverguje,<br />

keď A je rýdzo diagonálne dominantná<br />

alebo<br />

pozitívne definitná.


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

• Metóda najväčšieho spádu<br />

• Metóda združených (konjugovaných) gradientov (CG)<br />

• Zovšeobecnenia metódy CG<br />

• Konvergencia metódy CG<br />

• Predpodmienenie (preconditioning)<br />

• Zhrnutie<br />

2. Metóda singulárneho rozkladu<br />

3. QR-rozklad<br />

4. Literatúra


Metóda najväčšieho spádu<br />

V tejto metóde sa volí smer v (k) tak,<br />

aby súhlasil so smerom gradientu funkcie Q.<br />

Príslušné vzorce sú<br />

( kT ) ( k)<br />

( 1) ( )<br />

x + = x + r r r<br />

( kT ) ( k)<br />

r Ar<br />

( )<br />

k k k<br />

,<br />

kde vektor r (k) sa nazýva<br />

rezíduum k-tej aproximácie<br />

a je daný vzťahom<br />

( k) ( k) = − .<br />

r b Ax


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

• Metóda najväčšieho spádu<br />

• Metóda združených (konjugovaných) gradientov (CG)<br />

• Zovšeobecnenia metódy CG<br />

• Konvergencia metódy CG<br />

• Predpodmienenie (preconditioning)<br />

• Zhrnutie<br />

2. Metóda singulárneho rozkladu<br />

3. QR-rozklad<br />

4. Literatúra


Metóda združených (konjugovaných) gradientov (CG)<br />

V tejto metóde sa volia vektory v (k) tak,<br />

že vzniknú A-ortogonalizáciou vektora rezíduí.<br />

A-ortogonalizácia<br />

(pri danej symetrickej a pozitívne definitnej matici A)<br />

je postup,<br />

pomocou ktorého<br />

sa z postupnosti lineárne nezávislých vektorov u (1) , ... , u (n)<br />

zostrojí iná postupnosť lineárne nezávislých vektorov v (1) , ... , v (n) tak,<br />

že platí<br />

v ( i )T Av ( j ) = 0<br />

pre i ≠ j .


Metóda združených (konjugovaných) gradientov (CG)<br />

To vedie na algoritmus popísaný rovnicami:<br />

( 1) ( 1) ( 1)<br />

v = r = b−Ax<br />

,<br />

α<br />

=<br />

( kT ) ( k)<br />

k kT k<br />

v<br />

v<br />

r<br />

( ) ( )<br />

Av<br />

,<br />

( k+<br />

1) ( k) ( k)<br />

x = x + α v<br />

k<br />

,<br />

( k+<br />

1) ( k) ( k)<br />

r = r −α<br />

Av<br />

β<br />

v<br />

= −<br />

v<br />

( kT ) ( k+<br />

1)<br />

k kT k<br />

( ) ( )<br />

( k+ 1) ( k+<br />

1) ( k)<br />

v = r + β v<br />

k<br />

Ar<br />

Av<br />

k<br />

,<br />

,<br />

.


Metóda združených (konjugovaných) gradientov (CG)<br />

Z podstaty algoritmu vyplýva,<br />

že po n iteráciách<br />

dostaneme presné riešenie systému rovníc<br />

a teda nejde v pravom zmysle slova<br />

o iteračnú metódu.<br />

To by však platilo len v prípade,<br />

že by sme sa nedopúšťali zaokrúhľovacích chýb.<br />

Preto je nutné pozerať sa na MCG ako na iteračnú metódu<br />

a definovať kritériá na zastavenie iterácií.


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

• Metóda najväčšieho spádu<br />

• Metóda združených (konjugovaných) gradientov (CG)<br />

• Zovšeobecnenia metódy CG<br />

• Konvergencia metódy CG<br />

• Predpodmienenie (preconditioning)<br />

• Zhrnutie<br />

2. Metóda singulárneho rozkladu<br />

3. QR-rozklad<br />

4. Literatúra


Zovšeobecnenia metódy CG<br />

V prípade nesymetrických<br />

a nie nutne pozitívne definitných matíc<br />

používame<br />

metódu bikonjugovaných gradientov<br />

(napr. subroutina linbcg z Numerical Recipes).<br />

Obyčajná metóda konjugovaných gradientov je<br />

jej špeciálnym prípadom.


Zovšeobecnenia metódy CG<br />

Iný variant pre symetrické, ale nie pozitívne definitné matice A<br />

dostaneme ak v obyčajnej metóde CG<br />

zameníme všetky maticové násobenia<br />

a . b za a . A . b .<br />

Táto metóda sa nazýva algoritmus minimálnych rezíduí,<br />

pretože zodpovedá postupným minimalizáciám funkcie<br />

1 T 1 2<br />

Q ( x)<br />

= r ⋅ r= A⋅x- b .<br />

2 2<br />

Zovšeobecnenie tohto algoritmu pre nesymetrické matice vedie na<br />

metódu zovšeobecnených minimálnych rezíduí (GMRES).


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

• Metóda najväčšieho spádu<br />

• Metóda združených (konjugovaných) gradientov (CG)<br />

• Zovšeobecnenia metódy CG<br />

• Konvergencia metódy CG<br />

• Predpodmienenie (preconditioning)<br />

• Zhrnutie<br />

2. Metóda singulárneho rozkladu<br />

3. QR-rozklad<br />

4. Literatúra


Konvergencia metódy CG<br />

Nech x (k) je približné riešenie v k-tom kroku CG<br />

a nech x* je presné riešenie.<br />

Pre symetrickú, pozitívne definitnú maticu definujme<br />

číslo podmienenosti matice κ(A)<br />

a A-normu ľubovoľného vektrora z :<br />

( )<br />

( ) : λ max A<br />

κ A = , z : = ( Az , z) 1/2<br />

λ<br />

.<br />

A<br />

A<br />

min<br />

( )<br />

Potom<br />

⎡<br />

( k) κ ( ) 1⎤<br />

2<br />

A −<br />

x* −x ≤ x* −x<br />

A ⎢ κ ( A)<br />

+ 1<br />

⎣ ⎦<br />

⎥<br />

k<br />

() 1<br />

A<br />

Pri κ(A) >> 1 je konvergencia veľmi pomalá.


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

• Metóda najväčšieho spádu<br />

• Metóda združených (konjugovaných) gradientov (CG)<br />

• Zovšeobecnenia metódy CG<br />

• Konvergencia metódy CG<br />

• Predpodmienenie (preconditioning)<br />

• Zhrnutie<br />

2. Metóda singulárneho rozkladu<br />

3. QR-rozklad<br />

4. Literatúra


Predpodmienenie (preconditioning)<br />

Účelom predpodmienenia je<br />

zvýšiť rýchlosť konvergencie iteračnej metódy tak,<br />

že sa rieši náhradný systém lineárnych rovníc,<br />

v ktorom má nová matica sústavy<br />

nižšie číslo podmienenosti κ<br />

než pôvodná matica.<br />

Nech A.x = b je pôvodný lineárny systém.<br />

Ľavé predpodmienenie definujeme nasledovne:<br />

Nech matica M je regulárna a „blízka“ k matici A.<br />

Potom riešime sústavu<br />

-1 -1<br />

M Ax<br />

=<br />

M b<br />

Pravé predpodmienenie definujeme nasledovne:<br />

Nech matica M je regulárna. Potom riešime sústavu<br />

-1 −1<br />

AM u = b, x = M u .


Predpodmienenie v metóde CG<br />

Pôvodný algoritmus CG:<br />

( 1) ( 1)<br />

r = b−Ax<br />

v<br />

() 1 () 1<br />

α<br />

=<br />

=<br />

r<br />

v<br />

( kT ) ( k)<br />

k kT k<br />

v<br />

( ) ( )<br />

( k+<br />

1) ( k) ( k)<br />

x = x + α v<br />

( k+<br />

1) ( k) ( k)<br />

r<br />

Av<br />

r = r −α<br />

Av<br />

k<br />

k<br />

Algoritmus predpodmienenej CG:<br />

( 1) ( 1) ( 1) ( 1)<br />

r = b−Ax<br />

v<br />

() 1 () 1<br />

α<br />

=<br />

=<br />

z<br />

( kT ) ( k)<br />

k kT k<br />

v<br />

z<br />

r<br />

( ) ( )<br />

Av<br />

( k+<br />

1) ( k) ( k)<br />

x = x + α v<br />

k<br />

,<br />

−1<br />

( k+<br />

1) ( k) ( k) ( k+ 1) ( k+<br />

1)<br />

r = r −α<br />

Av<br />

k<br />

z = M r<br />

,<br />

−1<br />

z = M r<br />

β<br />

v<br />

= −<br />

v<br />

( kT ) ( k+<br />

1)<br />

Ar<br />

k kT k<br />

( ) ( )<br />

Av<br />

β<br />

k<br />

=<br />

z<br />

( k+<br />

1) T ( k+<br />

1)<br />

z<br />

r<br />

( k) T ( k)<br />

r<br />

( k+ 1) ( k+<br />

1) ( k)<br />

v = r + β v<br />

k<br />

v<br />

( k+ 1) ( k+<br />

1) ( k)<br />

= z + β v<br />

k


Jacobiho predpodmieňovač (preconditionner)<br />

Najjednoduchším predpodmieňovačom je diagonálna matica,<br />

ktorá je tvorená len diagonálnymi členmi matice A<br />

M<br />

ij<br />

=<br />

{<br />

A ak i=<br />

j<br />

ii<br />

0 ak<br />

i<br />

≠<br />

j<br />

M<br />

Potom<br />

− 1 ij<br />

ij = δ<br />

Aii<br />

.<br />

Takéto predpodmienenie sa nazýva<br />

Jacobiho predpodmienenie<br />

alebo<br />

diagonálne škálovanie.<br />

Výhody Jacobiho predpodmienenia sú<br />

v ľahkej implementácii a<br />

nízkych pamäťových nárokoch.


Iné typy predpodmienenia<br />

Viac sofistikované voľby predpodmieňovača<br />

musia byť kompromisom<br />

medzi redukciou čísla podmienenosti matice<br />

a tým rýchlejšou konvergenciu<br />

a<br />

časom potrebným na vypočítanie inverznej matice M -1 .<br />

Viac informácií je možné nájsť v prehľade<br />

M. Benzi (2002):<br />

Preconditioning Techniques for Large Linear Systems: A Survey<br />

Journal of Computational Physics 182, 418-477<br />

doi: 10.1006/jcph.2002.7176


Príklad


Príklad


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

• Metóda najväčšieho spádu<br />

• Metóda združených (konjugovaných) gradientov (CG)<br />

• Zovšeobecnenia metódy CG<br />

• Konvergencia metódy CG<br />

• Predpodmienenie (preconditioning)<br />

• Zhrnutie<br />

2. Metóda singulárneho rozkladu<br />

3. QR-rozklad<br />

4. Literatúra


Zhrnutie<br />

• Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

• Metóda najväčšieho spádu<br />

• Metóda konjugovaných gradientov.<br />

Smerové vektory vzniknú A-ortogonalizáciou vektora rezíduí.<br />

• Zovšeobecnenia metódy CG<br />

• metóda bikonjugovaných gradientov<br />

• metóda GMRES<br />

• Konvergencia metódy CG – závislosť na<br />

čísle podmienenosti matice<br />

• Predpodmienenie CG<br />

• Jacobiho predpodmienenie


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

2. Metóda singulárneho rozkladu (SVD)<br />

• Úvod<br />

• SVD štvorcovej matice<br />

• SVD pre menej rovníc ako neznámych<br />

• SVD pre viac rovníc ako neznámych<br />

3. QR-rozklad<br />

4. Literatúra


Terminológia a základné vzťahy<br />

Majme štvorcovú maticu A.<br />

Jej vlastné čísla budeme označovať λ n a<br />

pravé resp. ľavé vektory x a y,<br />

pre ktoré platí<br />

( A λI)<br />

det − = 0<br />

Ax<br />

= λ x<br />

i i i<br />

T T<br />

i = λiyi<br />

y A<br />

A ∈R<br />

potom λ i , x i ≡ y i<br />

∈R<br />

Ak platí, že a je symetrická,<br />

vlastné vektory generujú ortogonálnu bázu.<br />

Podobnostná transformácia P -1 AP<br />

nemení vlastné čísla matice A.<br />

a


Terminológia a základné vzťahy<br />

Reálna ortogonálna matica je taká štvorcová matica Q,<br />

ktorej transponovaná matica je jej inverznou maticou.<br />

T<br />

T<br />

Q ⋅ Q= Q⋅ Q = I<br />

Ak Q je obdĺžniková matica,<br />

potom podmienky<br />

T<br />

Q ⋅ Q= I a Q⋅ Q = I<br />

nie sú ekvivalentné.<br />

Podmienka Q T .Q = I hovorí, že<br />

matica Q je stĺpcovo ortogonálna.<br />

T<br />

Podmienka Q .Q T = I hovorí, že<br />

matica Q je riadkovo ortogonálna.


Metóda singulárneho rozkladu - úvod<br />

Ak je počet rovníc sústavy M menší ako počet neznámych N,<br />

alebo ak M = N ale rovnice sú lineárne závislé,<br />

potom sústava nemá žiadne riešenie<br />

alebo<br />

má viac než jedno riešenie.<br />

V druhom prípade priestor riešení tvorí<br />

partikulárne riešenie<br />

pripočítané k ľubovoľnej lineárnej kombinácii N - M vektorov.<br />

Úlohu nájsť priestor riešení matice A<br />

je možné riešiť metódou<br />

singulárneho rozkladu matice A.


Metóda singulárneho rozkladu - úvod<br />

Ak je počet rovníc sústavy M väčší ako počet neznámych N,<br />

vo všeobecnosti neexistuje vektor riešenia a<br />

sústave rovníc sa hovorí preurčená.<br />

Môžeme ale nájsť najlepšie „kompromisné“ riešenie,<br />

ktoré je „najbližšie“ k tomu,<br />

aby vyhovovalo všetkým rovniciam.<br />

Ak „najbližšie“ definujeme v zmysle najmenších štvorcov,<br />

t.j. že suma kvadrátu rozdielov<br />

medzi ľavou a pravou stranou rovnice je najmenšia,<br />

potom sa preurčený systém redukuje<br />

na (zvyčajne) riešiteľný problém<br />

nazývaný metóda najmenších štvorcov.


Metóda singulárneho rozkladu - úvod<br />

Redukovaný systém rovníc môžeme zapísať ako<br />

systém N x N rovníc<br />

(<br />

T<br />

) (<br />

T<br />

A ⋅A ⋅ x= A ⋅b)<br />

.<br />

Tieto rovnice voláme normálne rovnice<br />

problému najmenších štvorcov.<br />

Metóda singulárneho rozkladu má veľa spoločného<br />

s problémom najmenších štvorcov,<br />

čo si ukážeme ne<strong>sk</strong>ôr.<br />

Priame riešenie normálnych rovníc nie je vo všeobecnosti<br />

najlepším spôsobom hľadania riešenia najmenších štvorcov.


Metóda singulárneho rozkladu<br />

V mnohých prípadoch,<br />

keď GEM alebo LU rozklad zlyhajú,<br />

metódy singulárneho rozkladu<br />

(singular value decompisition, SVD)<br />

presne diagnostikujú, v čom je problém<br />

a v mnohých prípadoch tiež<br />

po<strong>sk</strong>ytnú vhodné numerické riešenie.<br />

SVD je tiež metóda<br />

na riešenie mnohých problémov typu najmenších štvorcov.


Metóda singulárneho rozkladu<br />

SVD je založená na nasledujúcej teoréme lineárnej algebry:<br />

Každá matica A typu M x N,<br />

ktorej počet riadkov M je väčší alebo rovný počtu stĺpcov N,<br />

môže byť zapísaná ako súčin<br />

stĺpcovo-ortogonálnej matice U typu M x N,<br />

diagonálnej matice W typu N x N<br />

s kladnými alebo nulovými prvkami (singulárnymi hodnotami)<br />

a transponovanej ortogonálnej matice V typu N x N.


Metóda singulárneho rozkladu<br />

Ortogonálnosť matíc U a V môžeme zapísať nasledovne


Metóda singulárneho rozkladu<br />

SVD dekompozícia môže byť vykonaná aj keď M < N.<br />

V takom prípade singulárne hodnoty w j<br />

sú všetky nulové<br />

ako aj odpovedajúce stĺpce matice U.<br />

pre j = M+1, …, N<br />

Existuje viacero algoritmov na SVD,<br />

osvedčená je subroutina svdcmp z Numerical Recipes.


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

2. Metóda singulárneho rozkladu (SVD)<br />

• Úvod<br />

• SVD štvorcovej matice<br />

• SVD pre menej rovníc ako neznámych<br />

• SVD pre viac rovníc ako neznámych<br />

3. QR-rozklad<br />

4. Literatúra


Metóda singulárneho rozkladu štvorcovej matice<br />

Aj je matica A štvorcová, povedzme typu N x N,<br />

potom U , W a V sú všetko štvorcové matice typu N x N.<br />

Keďže U a V sú ortogonálne,<br />

ich inverzné matice sú rovné ich transponovaným maticiam.<br />

Potom môžeme písať vzťah pre inverznú maticu A<br />

A − 1<br />

diag( 1/ )<br />

T<br />

= V ⋅ ⎡ w ⎤<br />

j ⋅ U<br />

⎢⎣<br />

⎥⎦<br />

SVD dáva jasnú diagnostiku situácie,<br />

ak sú niektoré singulárne hodnoty nulové<br />

alebo blízke nule.


Metóda singulárneho rozkladu štvorcovej matice<br />

Pripomeňme jednu z definícií<br />

čísla podmienenosti matice κ(A):<br />

( A)<br />

κ : =<br />

max<br />

min<br />

{ w }<br />

j<br />

{ w }<br />

j<br />

Matica je singulárna ak je jej číslo podmienenosti nekonečno.<br />

Matica je zle podmienená<br />

ak prevrátená hodnota jej čísla podmienenosti<br />

je blízka strojovej presnosti počítača,<br />

t.j. menšia než 10 -6 pre jednoduchú presnosť alebo<br />

10 -12 pre dvojnásobnú presnosť.


Metóda singulárneho rozkladu štvorcovej matice<br />

Prípad sústavy lineárnych rovníc<br />

Ax ⋅ = b<br />

v ktorej matica A je singulárna:<br />

,<br />

Naj<strong>sk</strong>ôr sa pozrime na prípad homogénnej sústavy,<br />

t.j. prípad keď b=0.<br />

SVD dáva priamo riešenie – každý stĺpec matice V,<br />

ktorého zodpovedajúca singulárna hodnota w j je nulová<br />

je riešením.


Metóda singulárneho rozkladu štvorcovej matice<br />

Hľadané riešenie systému s nenulovou pravou stranou<br />

pomocou SVD nájdeme nasledovne:<br />

• nahradíme 1/w j nulou ak w j =0<br />

• potom počítame (sprava doľava)<br />

x = V ⋅⎡diag 1/ ⎤<br />

⎢ ⎥<br />

⋅ ⋅<br />

⎣ ⎦<br />

U b<br />

( ) (<br />

T<br />

w )<br />

j<br />

Ak partikulárne riešenie leží v rozsahu (range) A,<br />

2<br />

potom má najmenšiu veľkosť x .<br />

Ak partikulárne riešenie neleží v rozsahu (range) A,<br />

r : =<br />

Ax ⋅ −b<br />

potom x minimalizuje rezíduum riešenia .


Metóda singulárneho rozkladu štvorcovej matice<br />

Matica A nie je singulárna


Metóda singulárneho rozkladu štvorcovej matice<br />

Matica A je singulárna


Metóda singulárneho rozkladu štvorcovej matice<br />

Doteraz sme uvažovali len o krajných prípadoch<br />

a to že matica sústavy je alebo nie je singulárna.<br />

Numericky je častý prípad,<br />

že singulárne hodnoty w j sú veľmi malé, no nenulové,<br />

takže matica je zle podmienená.<br />

V takom prípade môžu priame metódy<br />

po<strong>sk</strong>ytnúť formálne riešenie,<br />

ale vektor riešenia má nezmyselne veľké prvky,<br />

ktoré pri algebraickom krátení počas násobení maticou A<br />

dajú veľmi zlú aproximáciu vektora pravej strany.<br />

Vtedy je často lepšie malé hodnoty w j vynulovať a<br />

riešenie určiť podľa vzorca<br />

(s tým, že 1/w j nahradíme nulou ak w j =0)<br />

x diag( 1/ ) (<br />

T<br />

= V ⋅⎡<br />

w ⎤<br />

)<br />

⎢<br />

j ⎥<br />

⋅ ⋅<br />

⎣ ⎦<br />

U b<br />

Je nutné byť ale opatrný a<br />

dobre zvoliť prahovú hodnotu nulovania veličín w j


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

2. Metóda singulárneho rozkladu (SVD)<br />

• Úvod<br />

• SVD štvorcovej matice<br />

• SVD pre menej rovníc ako neznámych<br />

• SVD pre viac rovníc ako neznámych<br />

3. QR-rozklad<br />

4. Literatúra


Metóda singulárneho rozkladu pre menej rovníc ako neznámych<br />

Ak máme menej rovníc ako neznámych<br />

neočakávame jediné riešenie.<br />

Obyčajne existuje celý N - M rozmerný priestor riešení,<br />

ktorý chceme nájsť.<br />

SVD dá v takomto prípade<br />

N - M nulových alebo zanedbateľne malých hodnôt w j .<br />

Ak niektoré z M rovníc degenerujú,<br />

môžeme zí<strong>sk</strong>ať ďalšie nulové w j .<br />

Potom tie stĺpce matice V,<br />

ktorých zodpovedajúca singulárna hodnota w j je nulová<br />

tvoria bázové vektory hľadaného priestoru riešení.<br />

Partikulárne riešenie nájdeme aplikovaním vzorca<br />

x = V ⋅⎡diag 1/ ⎤<br />

⎢ ⎥<br />

⋅ ⋅<br />

⎣ ⎦<br />

U b<br />

( ) (<br />

T<br />

w )<br />

j


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

2. Metóda singulárneho rozkladu (SVD)<br />

• Úvod<br />

• SVD štvorcovej matice<br />

• SVD pre menej rovníc ako neznámych<br />

• SVD pre viac rovníc ako neznámych<br />

3. QR-rozklad<br />

4. Literatúra


Metóda singulárneho rozkladu pre viac rovníc ako neznámych<br />

Ak máme viac rovníc ako neznámych<br />

hľadáme riešenie,<br />

v zmysle problému najmenších štvorcov.<br />

Riešime teda sústavu, zapísanú tabuľkovo nasledovne:


Metóda singulárneho rozkladu pre viac rovníc ako neznámych<br />

Po aplikácii SVD na maticu A dostaneme<br />

riešenie v tvare<br />

V tomto prípade nie je zvyčajne nutné nulovať hodnoty w j<br />

avšak neobvykle malé hodnoty indikujú, že<br />

dáta nie sú citlivé na niektoré parametre.


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

2. Metóda singulárneho rozkladu (SVD)<br />

• Úvod<br />

• SVD štvorcovej matice<br />

• SVD pre menej rovníc ako neznámych<br />

• SVD pre viac rovníc ako neznámych<br />

3. QR-rozklad<br />

4. Literatúra


QR rozklad<br />

Podobne ako LU rozklad matice,<br />

existuje aj tzv. QR rozklad matice<br />

A = Q.R<br />

kde R je hornátrojuholníkovámatica a<br />

Q je ortogonálna matica, teda platí<br />

Q T .Q = I.<br />

Riešenie sústavy rovníc nájdeme riešením<br />

R.x = Q T .b<br />

QR rozklad vyžaduje asi 2-krát viac operácií<br />

ako LU rozklad,<br />

ale existujú špeciálne typy rovníc,<br />

v ktorých je výhodnejšie ho použiť.


Prednáška č. 5<br />

OBSAH<br />

1. Gradientné iteračné metódy riešenia<br />

systému lineárnych rovníc<br />

• Metóda najväčšieho spádu<br />

• Metóda združených (konjugovaných) gradientov (CG)<br />

• Zovšeobecnenia metódy CG<br />

• Konvergencia metódy CG<br />

• Predpodmienenie (preconditioning)<br />

• Zhrnutie<br />

2. Metóda singulárneho rozkladu (SVD)<br />

• Úvod<br />

• SVD štvorcovej matice<br />

• SVD pre menej rovníc ako neznámych<br />

• SVD pre viac rovníc ako neznámych<br />

3. QR-rozklad<br />

4. Literatúra


Literatúra


Literatúra


Literatúra

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!