Zaawansowane metody numeryczne Komputerowa analza zagadneń różnczkowych 1. Układy równań lnowych P. F. Góra http://th-www.f.uj.edu.pl/zfs/gora/ semestr letn 2006/07
Podstawowe fakty Równane Ax = b, x, b R N, A R N N (1) ma jednoznaczne rozwazane gdy det A 0. W praktyce numerycznej ngdy ne rozwazuje sę układu (1) metoda wyznacznkowa, bo jest ona nesłychane kosztowna. Koszt numeryczny metod dokładnych (znaczne) mnej dla macerzy rzadkch. O(N 3 ) dla macerzy pełnych, Należy unkać jawnego oblczana odwrotnośc A 1, tym bardzej, że jest to koneczność egzotyczna. Dlatego zawsze zaps typu x = A 1 b rozumeć będzemy w ten sposób, że x spełna równane (1). 1. Układy równań lnowych 2
Metody dokładne Elmnacja Gaussa, koneczne z wyborem elementu podstawowego ( pvotngem ), częścowym lub pełnym. Rozkład LU: A = LU, gdze L jest trójkatna dolna, U trójkatna górna, koneczne z częścowym wyborem elementu podstawowego (algorytm Crouta) zalecana metoda dla newelkch macerzy dobrze uwarunkowanych, bez jakchś szczególnych symetr. Koszt numeryczny rozkładu LU wynos O(N 3 ). Jeśl mamy rozkład LU A = LU, równane (1) rozwazujemy jako Uy = b (2a) Lx = y (2b) Równane (2a) rozwazujemy zaczynajac od ostatnego wersza dac do góry (backsubsttuton), równane (2b) rozwazujemy zaczynajac od perwszego wersza dac w dół (forward substtuton) w ten sposób za każdym razem rozwazujemy równane z jedna newadoma. 1. Układy równań lnowych 3
Rozkład Cholesky ego Jeżel macerz A jest symetryczna dodatno określona, zamast rozkładu LU można ( należy) używać rozkładu Cholesky ego: A = LL T, gdze L jest trójkatna dolna. Koszt rozkładu Cholesky ego jest mnej węcej o połowę mnejszy od kosztu rozkładu LU. Wersja Gaxpy: for j = 1 : n f j > 1 A(j : n, j) = A(j : n, j) A(j : n, 1 : j 1)A(j, 1 : j 1) T end end A(j : n, j) = A(j : n, j)/ A(j, j) 1. Układy równań lnowych 4
Wersja Outer product: for k = 1 : n end A(k, k) A(k, k) = A(k + 1 : n, k) = A(k + 1 : n, k)/a(k, k) for j = k + 1 : n A(j : n, j) = A(j : n, j) A(j : n, k)a(j, k) end Uwag: Przy rozkładze można nadpsywać macerz Ne da sę robć pvotngu Jeśl A pasmowa, także L jest pasmowa, o takej samej szerokośc pasma Jeśl wewnatrz pasma występuja dzury w A, w L moga one być wypełnone. 1. Układy równań lnowych 5
Norma macerzy Nech oznacza normę w przestrzen R N : Defncja: Nech A R N N będze operatorem lnowym nad przestrzena R N. Welkość A = sup x =0 Ax x (3a) nazywam norma macerzy A ndukowana przez normę wektorów. 1. Układy równań lnowych 6
Po prawej strone powyższego wyrażena występuje norma wektorów; to tłumaczy zastosowane przymotnka ndukowana. Obserwacja. Wdać, ż A = sup Ax. x =1 (3b) Twerdzene 1. Norma ndukowana jest norma w przestrzen operatorów lnowych nad R N. 1. Układy równań lnowych 7
Współczynnk uwarunkowana Rozważmy równane (1). Z własnośc normy (3) wdać, że Ax A x. (4a) Z drugej strony, na mocy (1), jeśl det A 0, x = A 1 b A 1 b, (4b) a zatem Ax A A 1 b. (4c) Wdać, że jeżel welkość A A 1 jest duża, małe zmany b moga numeryczne (w arytmetyce ze skończona dokładnośca) spowodować duże zmeny rozwazana. 1. Układy równań lnowych 8
Defncja. Nech A R N N det A 0. Welkość κ = A 1 A (5) nazywam współczynnkem uwarunkowana macerzy A. Jeżel det A = 0, przyjmuję κ =. Twerdzene 2. Nech A R N N będze macerza symetryczna, A = A T, nech lczby {λ } N =1 będ a jej wartoścam własnym. Jeżel det A 0, współczynnk uwarunkowana tej macerzy spełna κ = max λ mn λ. (6) 1. Układy równań lnowych 9
Dowód. W celu udowodnena tego twerdzena oblczmy normę macerzy A. Poneważ jest to macerz symetryczna rzeczywsta, jej wartośc własne sa rzeczywste, natomast jej unormowane wektory własne tworza bazę w R N. Oznaczmy przez y jej -ty wektor własny, Ay = λ y. Każdy wektor x R N, x = 1, można przedstawć jako kombnację lnowa x = N =1 α y, (7) przy czym warunek unormowana prowadz do następujace węzu na współczynnk tej kombnacj: N =1 α 2 = 1. (8) 1. Układy równań lnowych 10
Oblczmy teraz Ax 2 = N A =1 N =1 = max α y 2 = α λ y 2 = λ 2 N =1 N =1 N =1 α 2 = (max α Ay 2 α 2 λ2 N =1 = N =1 α 2 max α λ y λ 2 2 λ ) 2 (9) 1. Układy równań lnowych 11
Wdzmy zatem, ż x R N, x 2 = 1, zachodz Ax max λ, a zatem na mocy defncj (3) A = max λ. Poneważ det A 0, macerz A 1 stneje, jest symetryczna rzeczywsta, a jej wartoścam własnym sa lczby {1/λ } N =1. Zupełne analogczne dowodzmy, ( ) ż A 1 = max (1/ λ ) = 1/ mn λ, skad natychmast wynka teza (6). 1. Układy równań lnowych 12
Sngular Value Decomposton Twerdzene 3. Dla każdej macerzy A R M N, M N, stneje rozkład A = U [dag(w )] V T, (10) gdze U R M N jest macerza kolumnowo ortogonalna, V R N N jest macerza ortogonalna oraz w R, = 1,..., N. Rozkład ten nazywamy rozkładem względem wartośc osoblwych (Sngular Value Decomposton, SVD). Jeżel M = N, macerz U jest macerza ortogonalna. 1. Układy równań lnowych 13
Jadro zasęg operatora Nech A R M N. Jadrem operatora A nazywam Ker A = {x R N : Ax = 0}. (11) Zasęgem operatora A nazywam Range A = {y R M : x R N : Ax = y}. (12) Jadro zasęg operatora sa przestrzenam lnowym. Jeśl M = N <, dm (Ker A) + dm (Range A) = N. 1. Układy równań lnowych 14
Sens SVD Sens SVD najlepej wdać w przypadku, w którym co najmnej jedna z wartośc w = 0. Dla ustalena uwag przyjmjmy w 1 = 0, w 1 0. Po perwsze, co to jest z = [z 1, z 2,..., z n ] T = V T x? Poneważ V jest macerza ortogonalna, z jest rozkładem wektora x w baze kolumn macerzy V. Korzystajac z (10), dostajemy 0 Ax = U [dag(w )] V T x = U [dag(0, w 2,..., w N )] z = U w 2 z 2.. (13) w N z N Wynkem ostatnego mnożena będze pewen wektor z przestrzen R M. Poneważ perwszym elementem wektora [0, w 2 z 2,..., w N z N ] T jest zero, wynk ten ne zależy od perwszej kolumny macerzy U. Wdzmy zatem, że kolumny macerzy U, odpowadajace nezerowym współczynnkom w, stanowa bazę w zasęgu operatora A. Co by zaś sę stało, gdyby x był równoległy do wektora stanowacego perwsza kolumnę V? Wówczas z = 0, a wobec tego Ax = 0. Ostateczne węc wdzmy, że kolumny macerzy V, odpowadajace zerowym współczynnkom w, stanowa bazę w jadrze operatora A. 1. Układy równań lnowych 15
SVD odwrotność macerzy Nech A R N N. Zauważmy, że det A = N =1 w, a zatem det A = 0 wtedy tylko wtedy, gdy co najmnej jeden w = 0. Nech det A 0. Wówczas równane Ax = b ma rozwazane postac x = A 1 b = V [ dag(w 1 ) ] U T b. (14) Nech teraz det A = 0. Równane Ax = b także ma rozwazane, o le tylko b Range A. Rozwazane to dane jest wzorem gdze x = Ã 1 b = V [ dag( w 1 ) ] U T b. (15a) w 1 = { w 1 gdy w 0, 0 gdy w = 0. (15b) 1. Układy równań lnowych 16
SVD współczynnk uwarunkowana Twerdzene 4. Jeżel macerz A R N N posada rozkład (10) oraz det A 0, jej współczynnk uwarunkowana spełna κ = max w mn w. (16) Jeśl macerz jest źle uwarunkowana, ale formalne odwracalna, numeryczne rozwazane równana Ax = b może być zdomnowane przez wzmocnony bład zaokraglena. Aby tego unknać, często zamast (bezużytecznego!) rozwazana dokładnego (14), używa sę przyblżonego ( użytecznego!) rozwazana w postac (15) z następujac a modyfkacja w 1 = gdze τ jest pewna zadana tolerancja. { w 1 gdy w > τ, 0 gdy w τ, (17) 1. Układy równań lnowych 17