Wstęp do metod numerycznych Uwarunkowanie Eliminacja Gaussa P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012
Uwarunkowanie zadania numerycznego Niech ϕ : R n R m będzie pewna funkcja odpowiednio wiele razy różniczkowalna i niech x R n. Definicja: Mówimy, że zagadnienie obliczenia ϕ(x) jest numerycznie dobrze uwarunkowane, jeżeli niewielkie względne zmiany danych daja niewielkie względne zmiany rozwiazania. Zagadnienia, które nie sa numerycznie dobrze uwarunkowane, nazywamy źle uwarunkowanymi. Copyright c 2012 P. F. Góra 2 2
Przykład Rozważmy problem znalezienia rozwiazań równania x 2 + bx + c = 0, (1) przy czym zakładamy, że b 2 4c > 0. Wiadomo, że rozwiazania maja w tym wypadku postać x 1,2 = 1 2 ( b ± ) b 2 4c. (2) Jak dobrze uwarunkowane jest zagadnienie obliczania (2)? Danymi sa tu współczynniki trójmianu, b, c. Zaburzmy te współczynniki: b b + ε 2, c c + ε 3. Copyright c 2012 P. F. Góra 2 3
Rozwiazaniami sa teraz x 1,2 = 1 2 1 2 ( b + ε 2 ± b ± (b + ε 2 ) 2 4(c + ε 3 ) b 2 4c + ε 2 ± 2bε 2 4ε 3 2 b 2, (3) 4c gdzie dokonaliśmy rozwinięcia Taylora do pierwszego rzędu w ε 1,2. Widzimy, że bład względny x 1,2 x 1,2 x 1,2 rośnie nieograniczenie, gdy b 2 4c 0 +. Problem wyznaczania pierwiastków trójmianu (1) jest wówczas numerycznie źle uwarunkowany. Problem ten jest dobrze uwarunkowany, gdy b 2 4c 0. ) (4) Copyright c 2012 P. F. Góra 2 4
Współczynnik uwarunkowania Niech ϕ : R n R m będzie pewna funkcja, x R n dokładna wartościa argumentu, a x R n znanym numerycznym przybliżeniem x. Definicja: Jeżeli istnieje κ R taka, że x, x: ϕ(x) ϕ( x) R m ϕ(x) R m κ x x R n x R n (5) nazywamy ja współczynnikiem uwarunkowania zagadnienia wyliczenia wartości ϕ( ) (względem zadanych norm). Copyright c 2012 P. F. Góra 2 5
Współczynnik uwarunkowania mówi jak bardzo bład względny wyniku obliczeń przekracza bład względny samej rónicy przybliżenia i wartości dokładnej. Spodziewamy się, że jeżeli przybliżenie znacznie różni się od wartości dokładnej, także wyniki obliczeń będa się znacznie różnić. W zagadnieniach numerycznie źle uwarunkowanych może się zdarzyć, że nawet niewielkie odchylenie przybliżenia od wartości dokładnej doprowadzi do znacznej różnicy wyników. Copyright c 2012 P. F. Góra 2 6
Układy równań liniowych Niech A R n n będzie macierza, x, b R n. Rozpatrujemy równanie Ax = b, (6) Zakładamy, że macierz A oraz wektor wyrazów wolnych b sa znane. Poszukujemy wektora x. Równanie (6) jest równoważne następujacemu układowi równań liniowych: a 11 x 1 + a 12 x 2 + a 13 x 3 +... + a 1n = b 1 a 21 x 1 + a 22 x 2 + a 23 x 3 +... + a 2n = b 2 a 31 x 1 + a 32 x 2 + a 33 x 3 +... + a 3n =....... b 3. a n1 x 1 + a n2 x 2 + a n3 x 3 +... + a nn = b n gdzie a ij sa elementami macierzy A, natomiast x j, b j sa elementami wektorów, odpowiednio, x, b. Copyright c 2012 P. F. Góra 2 7 (7)
Rozwiazywanie układów równan liniowych rzadko stanowi samoistny problem numeryczny. Zagadnienie to występuje jednak bardzo często jako pośredni etap wielu problemów obliczeniowych. Dlatego też dogłębna znajomość algorytmów numerycznego rozwiazywania układów równań liniowych jest niezwykle ważna. Copyright c 2012 P. F. Góra 2 8
Rozwiazywalność układów równań liniowych Układ równań (6) ma jednoznaczne rozwiazanie wtedy i tylko wtedy, gdy det A 0. (8) Z elementarnej algebry wiadomo, że rozwiazania można wówczas skonstruować posługujac się wzorami Cramera. Uwaga: Numeryczne korzystanie ze wzorów Cramera jest koszmarnie drogie i dlatego w praktyce korzystamy z innych algorytmów. Jak dobrze uwarunkowane jest zagadnienie rozwiazania równania (6)? Copyright c 2012 P. F. Góra 2 9
Przykład Rozważmy następujace układy równań: 2x + 6y = 8 2x + 6.00001y = 8.00001 2x + 6y = 8 2x + 5.99999y = 8.00002 Współczynniki tych układów równan różnia się co najwyżej o 0.00002 = 2 10 5. Rozwiazaniem pierwszego sa liczby (1, 1), drugiego liczby (10, 2). Widzimy, że mała zmiana współczynników powoduje, że różnica rozwiazań jest 10 6 razy większa, niż zaburzenie współczynników. Powyższe układy równań sa źle uwarunkowane. Copyright c 2012 P. F. Góra 2 10
Normy wektorów Niech x R n oraz x oznacza normę w przestrzeni R n. Najczęściej używa się jednej z trzech norm: Norma taksówkowa: Norma Euklidesowa: x 1 = x 1 + x 2 + + x n x 2 = x T x = Norma maximum (worst offender): x = x 2 1 + x2 2 + + x2 n max x i i=1,...,n (9a) (9b) (9c) Jeżeli nie zazanaczymy inaczej, przez normę wektorowa będziemy rozumieć normę Euklidesowa. Copyright c 2012 P. F. Góra 2 11
Norma macierzy Niech A R N N. Norma macierzy (indukowana) nazywam A = max { } Ax x : x RN, x 0 = max { Ax } (10) x =1 Promieniem spektralnym macierzy A R N N nazywam ρ = AA T (11) Copyright c 2012 P. F. Góra 2 12
Współczynnik uwarunkowania układu równań liniowych Rozwiazujemy układ rownań (det A 0) Ay = b (12a) Przypuśćmy, że wyraz wolny b jest obarczony jakimś błędem b, czyli rozwiazujemy Aỹ = b + b (12b) Zauważmy, że ỹ y = A 1 (b + b) A 1 y = A 1 b. Copyright c 2012 P. F. Góra 2 13
Jak bład wyrazu wolnego wpływa na rozwiazanie? Obliczamy ỹ y A 1 b A 1 b = y y y Z drugiej strony (13a) b = Ay A y skad wynika, że 1 y A b (13b) Ostatecznie ỹ y y A A 1 b }{{} b κ (13c) Copyright c 2012 P. F. Góra 2 14
Współczynnik uwarunkowania macierzy symetrycznej, rzeczywistej Niech A R N będzie odwracalna macierza symetryczna, rzeczywista. W takim wypadku jej wartości własne sa rzeczywiste a jej unormowane wektory własne {e i } n i=1 stanowia bazę w Rn. Oznaczmy wartości własne tej macierzy przez {λ i } n i=1. Weźmy dowolny x Rn taki, że x = 1. Wówczas Ax = n A i=1 n i=1 x = α i e i n i=1 α i e i, = n i=1 α i Ae i α 2 i max(λ2 i ) = max i n i=1 α 2 i = 1. (14) = n i=1 n λ i i=1 α i λ i e i = n α 2 i λ2 i i=1 α 2 i = max i λ i (15) Copyright c 2012 P. F. Góra 2 15
Uwzględniajac (10), widzimy, że A = max i λ i : norma odwracalnej macierzy symetrycznej, rzeczywistej jest równa największemu modułowi spośród jej wartości własnych. Rozważmy teraz macierz A 1. Ma ona te same wektory własne, co A, natomiast jej wartości własne sa odwrotnościami wartości własnej macierzy nieodwróconej, A 1 e i = λ 1 e i i. Postępujac jak powyżej, łatwo możemy pokazać, że A 1 = max i 1 λ i = 1 min λ i. (16) i Copyright c 2012 P. F. Góra 2 16
Uwzględniajac (13c), (15) i (16), widzimy, że zachodzi następujace Twierdzenie: Współczynnik uwarunkowania odwracalnej macierzy symetrycznej, rzeczywistej jest równy ilorazowi największego i najmniejszego modułu spośród jej wartości własnych. κ = max λ i i min λ i. (17) i Copyright c 2012 P. F. Góra 2 17
Co można zrobić z układem równań... tak, aby jego rozwiazania się nie zmieniły? Rozważam układ równań (przykład 3 3 dla oszczędności miejsca): a 11 x 1 + a 12 x 2 + a 13 x 3 = b 1 a 21 x 1 + a 22 x 2 + a 23 x 3 = b 2 (18) a 31 x 1 + a 32 x 2 + a 33 x 3 = b 3 1. Równania można zapisać w innej kolejności: a 21 x 1 + a 22 x 2 + a 23 x 3 = b 2 a 11 x 1 + a 12 x 2 + a 13 x 3 = b 1 (19) a 31 x 1 + a 32 x 2 + a 33 x 3 = b 3 Odpowiada to permutacji wierszy macierzy układu równań, z jednoczesna permutacja kolumny wyrazów wolnych. Copyright c 2012 P. F. Góra 2 18
2. Równania można dodać stronami, po pomnożeniu przez dowolna stała różna od zera: a 11 x 1 + a 12 x 2 + a 13 x 3 = b 1 a 21 x 1 + a 22 x 2 + a 23 x 3 = b 2 (z a 11 + a 31 )x 1 + (z a 12 + a 32 )x 2 + (z a 13 + a 33 )x 3 = z b 1 + b 3 (20) Odpowiada to zastapieniu jednego wiersza macierzy układu równań przez dowolna kombinację liniowa tego wiersza z innymi, z jednoczesna analigiczna operacja na kolumnie wyrazów wolnych. Copyright c 2012 P. F. Góra 2 19
3. We wszystkich równaniach można przestawić kolejność, w jakiej pojawiaja się zmienne: a 11 x 1 + a 13 x 3 + a 12 x 2 = b 1 a 21 x 1 + a 23 x 3 + a 22 x 2 = b 2 (21) a 31 x 1 + a 33 x 3 + a 32 x 2 = b 3 Odpowiada to permutacji kolumn macierzy układu równań, z jednoczesna permutacja kolumny niewiadomych. Copyright c 2012 P. F. Góra 2 20
Eliminacja Gaussa Tej części na razie? nie ma. Była na wykładzie. Copyright c 2012 P. F. Góra 2 21
Dygresja: Złożoność obliczeniowa Niech N oznacza liczbę danych wejściowych pewnego algorytmu. Niech M(N) oznacza liczbę operacji, jaka algorytm ten wykonuje dla N danych. Mówimy, że algorytm ma złożoność obliczeniowa O (P(N)) jeżeli N 0 N, A 1, A 2 > 0 N > N 0 : A 1 P(N) M(N) A 2 P(N) (22) Copyright c 2012 P. F. Góra 2 22