• Nie Znaleziono Wyników

Zastosowania warto ´sci i wektorów własnych macierzy

N/A
N/A
Protected

Academic year: 2021

Share "Zastosowania warto ´sci i wektorów własnych macierzy"

Copied!
139
0
0

Pełen tekst

(1)

Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska

Metody numeryczne algebry - wykłady

Alicja Smoktunowicz

(2)

Metody numeryczne algebry

Zagadnienie własne (wprowadzenie)

Wydział Matematyki i Nauk Informacyjnych

Politechnika Warszawska

Alicja Smoktunowicz

(3)

Zastosowania warto ´sci i wektorów własnych macierzy

W wyszukiwarkach internetowych (np. w Google wyznaczenie PageRank– ustalenie wa˙zno´sci strony internetowej).

Przy badaniu bezpiecze ´nstwa samolotów, okr ˛etów, pociagów, mostów etc.

W statystyce matematycznej.

W teorii sterowania i równaniach ró˙zniczkowych przy badaniu stabilno´sci układów.

Przy badaniu zbie˙zno´sci metod iteracyjnych rozwi ˛azywania wielkich układów równa ´n liniowych.

W genetyce.

Ciekawe zastosowania praktyczne podaj ˛a:

[1] B. N. Datta, Numerical Linear Algebra and Applications, SIAM, 2010,

[2] P. Krzy˙zanowski, Obliczenia in˙zynierskie i naukowe. Szybkie, skuteczne, efektowne, PWN 2011.

(4)

Macierze symetryczne

Warto´sci własne λ1, λ2, . . . , λn macierzy symetrycznej A ∈ Rn×n s ˛a rzeczywiste.

Ponadto istnieje baza ortonormalna {q1, q2, . . . , qn} przestrzeni Rn zło˙zona z wektorów własnych A.

Wtedy Aqi = λiqi dla i = 1, . . . , n, qTi qi = 1 oraz qTi qj = 0 dla i 6= j.

Rozkład spektralny macierzy symetrycznej A:

A = QDQT, D = diag(λ1, . . . , λn), gdzie Q = (q1, . . . , qn) jest macierz ˛a ortogonaln ˛a.

W pakiecie MATLAB rozkład spektralny macierzy A mo˙zna

(5)

Macierz stowarzyszona i pierwiastki wielomianu

Dany jest wielomian w(t) = p1tn + p2tn−1 + . . . + pnt + pn+1, gdzie p1 6= 0.

Ciekawy fakt: pierwiastki t1, t2, . . . , tn wielomianu w(t) s ˛a warto´sciami własnymi macierzy stowarzyszonej C postaci

C =

pp2

1 pp3

1 pp4

1 . . . pn+1p

1

1 0 0 . . . 0

0 1 0 . . . 0

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

0 0 0 . . . 1

W pakiecie MATLAB warto´sci własne t1, t2, . . . , tn macierzy C mog ˛a by´c obliczane poleceniem t=eig(C), a pierwiastki

t1, t2, . . . , tn wielomianu w(t) poleceniem t=roots(p).

(6)

Jak nie powinno si ˛e oblicza ´c warto ´sci własnych macierzy?

Dla danej macierzy A ∈ Cn×n szukamy liczby λ ∈ C oraz niezerowego wektora x ∈ Cn, dla których zachodzi rowno´s´c Ax = λx. Liczb ˛e λ nazywamy warto´sci ˛a własn ˛a, a x– wektorem własnym macierzy A.

Liczba λ jest warto´sci ˛a własn ˛a macierzy A wtedy i tylko wtedy, gdy λ jest pierwiastkiem wielomianu charakterystycznego

macierzy A, tj.

w(λ) = det(A − λI) = 0.

Istniej ˛a zatem liczby pi ∈ C takie, ˙ze

w(t) = det(A − tI) = p1tn + p2tn−1 + . . . + pnt + pn+1. Czy ta posta´c wielomianu w(t) zawsze nadaje si ˛e do

numerycznego obliczania warto´sci własnych macierzy?

(7)

Ciekawy przykład (1)

Chcemy obliczy´c warto´sci własne λi macierzy diagonalnej A = diag(1, 2, . . . , n).

Jest to bardzo proste zadanie, gdy˙z λi = i dla i = 1, . . . , n.

Zobaczmy teraz, jakie wyniki numeryczne otrzymamy, je´sli

najpierw wyznaczymy współczynniki pi postaci jawnej wielomianu charakterystycznego

w(t) = det(A − tI) = p1tn + p2tn−1 + . . . + pnt + pn+1, a nast ˛epnie obliczymy numerycznie pierwiastki wielomianu w(t).

Zauwa˙zmy, ˙ze współczynniki pi s ˛a liczbami całkowitymi i mog ˛a by´c bardzo du˙ze. Na przykład, |pn+1| = n!.

W literaturze wn(t) = (t − 1)(t − 2) . . . (t − n) = (−1)nw(t) nazywa si ˛e wielomianem Wilkinsona (lub wielomianem

perfidnym). Czy zasługuje na t ˛e nazw ˛e? Spójrzmy na wyniki testów numerycznych!

(8)

Testy dla n=23

Aby obliczy´c warto´sci własne macierzy A = diag(1, 2, . . . , 23), skorzystamy z nast ˛epuj ˛acego kodu w pakiecie MATLAB:

n=23;

z=1:n; %z=[1,2,...,n]

p=poly(z); %p=[p(1),p(2),...,p(n+1)]

r=roots(p);

Precyzja oblicze ´n: εM ≈ 2.2e−16.

Oto obliczone przybli˙zenia kilku warto´sci własnych macierzy A:

22.9599 22.2648

20.9035 + 0.9420i 20.9035 - 0.9420i 18.8006 + 1.6438i 18.8006 - 1.6438i

(9)

Ciekawy przykład (2)

Chcemy obliczy´c warto´sci własne macierzy jednostkowej I(10 × 10).

Macierz I ma jedn ˛a warto´s´c własn ˛a λ = 1 o krotno´sci 10.

Korzystamy z nast ˛epuj ˛acego kodu w pakiecie MATLAB:

n=10;

z=ones(1,n); %z=[1,1,...,1]

p=poly(z); %p=[p(1),p(2),...,p(n+1)]

r=roots(p);

Precyzja oblicze ´n: εM ≈ 2.2e−16.

Oto obliczone 4 przybli˙zenia warto´sci własnej λ = 1:

1.0562 + 0.0187i 1.0562 - 0.0187i 1.0336 + 0.0482i 1.0336 - 0.0482i

(10)

Metody numeryczne algebry

Plan wykładów

Wydział Matematyki i Nauk Informacyjnych Politechnika

Warszawska

Alicja Smoktunowicz

(11)

Plan

Tematy wykładów.

Literatura w j ˛ezyku polskim.

Literatura w j ˛ezyku angielskim.

Regulamin zaliczenie przedmiotu.

(12)

Tematy wykładów

1 Zagadnienie własne (wprowadzenie).

2 Uogólnione zagadnienie własne.

3 Lokalizacja warto´sci własnych macierzy.

4 Metody wyznacznikowe.

5 Metoda pot ˛egowa i jej warianty.

6 Klasyczna metoda Grama–Schmidta.

7 Zmodyfikowana metoda Grama–Schmidta.

8 Kwadratury Gaussa, wielomiany ortogonalne i warto´sci własne macierzy.

9 Uogólnione odwrotno´sci macierzy.

10 Tematy wykładów.

(13)

Literatura w j ˛ezyku polskim

1. G. Dahlquist and Å. Björck, Metody numeryczne, PWN, Warszawa, 1987 (wyd. 2).

2. J. i M. Jankowscy (M.Dryja), Przegl ˛ad metod i algorytmów numerycznych, cz. 1 i 2, WNT, Warszawa, 1988 (wyd. 2).

3. A. Ma´ckiewicz, Algorytmy algebry liniowej. Metody bezpo´srednie, Wyd. Politechniki Pozna ´nskiej, Pozna ´n 2002.

4. P. Krzy˙zanowski, Obliczenia in˙zynierskie i naukowe. Szybkie, skuteczne, efektowne, PWN 2011.

5. Praca zbiorowa pod red. J.W ˛asowskiego: ´Cwiczenia

laboratoryjne z metod numerycznych, OWPW, Warszawa 2002.

6. D. Kincaid, W. Cheney: Analiza numeryczna, WNT, Warszawa 2005.

(14)

Literatura w j ˛ezyku angielskim

1. B. N. Datta, Numerical Linear Algebra and Applications, PA, SIAM, 2010.

2. Å. Björck, Numerical Methods for Least Squares Problems, SIAM, PA, USA, 1996.

3. J. W. Demmel, Applied Numerical Linear Algebra, SIAM, PA, USA, 1997.

4. N. J. Higham, Accuracy and stability of numerical algorithms, SIAM, PA, USA, 1996.

5. Ilse C. F. Ipsen, Numerical Matrix Analysis: Linear Systems and Least Squares, SIAM, PA, USA, 2009.

6. G. H. Golub and Ch. F. Van Loan, Matrix Computations, Third Edition, The Johns Hopkins University Press, Baltimore and London, 1996.

7. R. S. Varga, Geršgorin and his circles, Springer-Verlag, Berlin,

(15)

Regulamin zaliczenia przedmiotu

Warunkiem zaliczenia przedmiotu jest uzyskanie co najmniej 51

punktów na 100 mo˙zliwych.

Z ´cwicze ´n mo˙zna otrzyma´c 50 punktów (2 sprawdziany oceniane po 25 punktów).

Z zaj ˛e´c laboratoryjnych mo˙zna zdoby´c tak˙ze 50 punktów

(aktywno´s´c na zaj ˛eciach laboratoryjnych - 2 pkt., sprawozdanie z projektów w LaTeX-u- po 2 pkt. z ka˙zdego projektu, czyli w sumie 4 pkt. oraz 2 projekty po 22 punkty).

Ostateczna ocena z przedmiotu wynika z sumy punktów uzyskanych z ´cwicze ´n i zaj ˛e´c laboratoryjnych:

51-60pkt. =⇒ dostateczny,

61-70pkt. =⇒ trzy i pół,

71-80pkt. =⇒ dobry,

81-90pkt. =⇒ cztery i pół,

od 91pkt. =⇒ bardzo dobry.

(16)

Metody numeryczne algebry

Uogólnione zagadnienie własne

Wydział Matematyki i Nauk Informacyjnych

Politechnika Warszawska

Alicja Smoktunowicz

(17)

Podstawy teoretyczne

Podamy podstawowe informacje o uogólnionym zagadnieniu własnym.

Dla danych macierzy A, B ∈ Cn×n szukamy liczby λ ∈ C i niezerowego wektora x ∈ Cn, dla których zachodzi rowno´s´c

Ax = λBx jest uogólnion ˛a warto´sci ˛a własn ˛a, a x– uogólnionym wektorem własnym). taki, ˙ze Ax = λBx.

Takie zagadnienia pojawiaj ˛a si ˛e w wielu in˙zynierskich i

naukowych problemach. Na ogół warto´sci własne λ reprezentuj ˛a pewien rodzaj drga ´n.

W praktyce obliczeniowej (np. w analizie stanów nieustalonych w polu elektromagnetycznym, w projektowaniu rezonatorów

kwarcowych) bardzo istotn ˛a cech ˛a jest konstrukcja algorytmów o dobrych własno´sciach numerycznych.

Je´sli B jest macierz ˛a jednostkow ˛a (B = I), to mamy do czynienia z klasycznym zagadnieniem własnym: Ax = λx.

(18)

Uogólnione warto ´sci własne

Zbiór macierzy postaci A − tB, przy dowolnych warto´sciach t, gdzie t ∈ C, nosi nazw ˛e wi ˛azki macierzy przyporz ˛adkowanej parze (A, B) (ang. pencil). Dla uproszczenia równie˙z par ˛e uporz ˛adkowan ˛a (A, B) b ˛edziemy nazywa´c wi ˛azk ˛a macierzy.

Niech spect(A, B) oznacza zbiór wszystkich warto´sci własnych wi ˛azki (A, B), tzn.

spect(A, B) = {λ ∈ C : det(A − λB) = 0}.

Je´sli detB 6= 0, to zadanie uogólnione Ax = λBx jest równowa˙zne klasycznemu zagadnieniu własnemu B1Ax = λx. W praktyce obliczeniowej nie nale˙zy jednak stosowa´c tego sposobu, je´sli macierz B jest ´zle uwarunkowana.

Je´sli detB = 0, to spect(A, B) mo˙ze by´c zbiorem pustym, sko ´nczonym lub zawiera´c niesko ´nczenie wiele elementów.

(19)

Przykład 1

Niech

A = 2 1 0 1

!

, B = 1 0 0 0

! .

Wtedy

w(λ) = det(A − λB) = 2 − λ, zatem

spect(A, B) = {2}.

Wyniki obliczone w pakiecie MATLAB poleceniem e=eig(A,B): e(1) = 2, e(2) = Inf.

(20)

Przykład 2

Niech

A = 2 1 0 0

!

, B = 1 0 0 0

! .

Wtedy

w(λ) = det(A − λB) = 0, zatem

spect(A, B) = C.

Wyniki obliczone w pakiecie MATLAB poleceniem e=eig(A,B): e(1) = 2, e(2) = NaN.

(21)

Przykład 3

Niech

A = 1 1 0 1

!

, B = 0 1 0 0

! .

Wtedy

w(λ) = det(A − λB) = 1, zatem

spect(A, B) = Φ.

Wyniki obliczone w pakiecie MATLAB poleceniem e=eig(A,B): e(1) = Inf, e(2) = Inf.

(22)

Algorytm QZ

Uogólnione warto´sci własne mo˙zna obliczy´c, stosuj ˛ac algorytm QZ.

Algorytm QZ stanowi uogólnienie algorytmu qr dla klasycznego zagadnienia własnego Ax = λx.

Podstaw ˛a tego algorytmu jest nast ˛epuj ˛ace twierdzenie, stanowi ˛ace uogólnienie twierdzenia Schura.

Twierdzenie 1. Dla dowolnych macierzy A, B ∈ Cn×n istniej ˛a macierze

unitarne Q i Z takie, ˙ze

QHAZ = S oraz QHBZ = T,

gdzie S i T s ˛a macierzami trójk ˛atnymi górnymi.

Wówczas

spect(A, B) = {s /t : t 6= 0}.

(23)

Symetria nie wystarcza!

Okazuje si ˛e, ˙ze je´sli macierze rzeczywiste A i B s ˛a symetryczne, to uogólnione warto´sci własne dla zadania Ax = λBx nie musz ˛a by´c rzeczywiste!

Przykład 4.

Niech

A = 1 0

0 −1

!

, B = 0 1 1 0

! . Wtedy

w(λ) = det(A − λB) = −1 − λ2, zatem

spect(A, B) = {−i, i}.

(24)

Wi ˛ecej o symetrii...

Okazuje si ˛e, ˙ze je´sli zało˙zymy dodatkowo, ˙ze macierz B jest dodatnio okre´slona, to uogólnione warto´sci własne dla zadania Ax = λBx b ˛ed ˛a rzeczywiste.

(Rozkład Cholesky’ego–Banachiewicza).

Je´sli B ∈ Rn×n jest symetryczna i dodatnio okre´slon ˛a, to istnieje macierz trójk ˛atna dolna L ∈ Rn×n z dodatnimi elementami na przek ˛atnej, ˙ze

B = LLT.

Wtedy zagadnienie własne Ax = λBx jest równowa˙zne

klasycznemu zadaniu własnemu Cy = λy, gdzie y = LTx, a C jest macierz ˛a symetryczn ˛a postaci

C = L1A(L1)T.

(25)

Twierdzenie o symetrii

Twierdzenie 2. Je´sli

A, B ∈ Rn×n s ˛a symetryczne oraz

B jest macierz ˛a dodatnio okre´slon ˛a, to

uogólnione warto´sci własne dla wi ˛azki (A, B) s ˛a rzeczywiste oraz istnieje n liniowo niezale˙znych wektorów własnych {u1, u2, . . . , un}

tworz ˛acych układ B–ortonormalny w Rn, tzn.

Aui = λiBui,

uTi Buj = δi,j.

(26)

Metody numeryczne algebry

Lokalizacja warto ´sci własnych macierzy

Wydział Matematyki i Nauk Informacyjnych

Politechnika Warszawska

Alicja Smoktunowicz

(27)

O twierdzeniu Gerszgorina

S. A. Gerszgorin (1901–1933) w roku 1931 opublikował wa˙zne twierdzenie o lokalizacji warto´sci własnych macierzy.

Twierdzenie Gerszgorina ma znaczenie teoretyczne (por.

Przykład 4) oraz praktyczne.

Olga Taussky wykorzystywała je w roku 1947 przy badaniu bezpiecze ´nstwa lotów (przy falowaniu skrzydeł samolotów)!

Rys. 1. S.A. Gerszgorin.

(28)

Twierdzenie Gerszgorina (1931)

Twierdzenie 1. Je´sli λ∈ C jest warto´sci ˛a własn ˛a macierzy A ∈ Cn×n, to istnieje

i ∈ {1, . . . , n} takie, ˙ze

λ ∈ Gi = {z ∈ C : |z − aii| ≤

Xn j=1,j6=i

|aij|},

gdzie Gi jest i-tym kołem Gerschgorina. Mamy wi ˛ec spect(A) ⊂

n

[

i=1

Gi = G(A). (1)

Ponadto, je´sli s kół tworzy zbiór rozł ˛aczny z innymi kołami, to w zbiorze tym znajduje si ˛e dokładnie s warto´sci własnych macierzy A.

(29)

Przykład 1

Pewne koła Gerszgorina mog ˛a nie zawiera´c ˙zadnych warto´sci własnych danej macierzy.

Oto ciekawy przyklad takiej macierzy (por. R. S. Varga, Geršgorin and his circles, Springer-Verlag, Berlin, Germany, 2004).

Warto´sci własne macierzy s ˛a zaznaczone symbolem "x".

A1 =

0 4 0 0 0 0 0

1 2 0 0 0 0 0

0 1 −2 0 0 0 0

0 0 1/8 −i 1/8 0 0

0 0 0 1/4 −2 ∗ i 1/4 0

0 0 0 0 0 9/2 1/2

0 0 0 0 0 1/2 −9/2

(30)

Przykład 1

−5 −4 −3 −2 −1 0 1 2 3 4 5

−5

−4

−3

−2

−1 0 1 2 3 4 5

Rys. 2. Koła Gerszgorina dla macierzy A1.

(31)

Przykład 2 (macierz magiczna)

A2 = magic(4) =

16 2 3 13

5 11 10 8

9 7 6 12

4 14 15 1

−30 −20 −10 0 10 20 30 40

−30

−20

−10 0 10 20 30

Rys. 3. Koła Gerszgorina macierzy A2.

(32)

Przykład 3

A3 =

7 0 1

i/2 5 −i/2

0 1 1

0 1 2 3 4 5 6 7 8

−4

−3

−2

−1 0 1 2 3 4

Rys. 3. Koła Gerszgorina macierzy A3.

(33)

Wska´znik uwarunkowania macierzy

Twierdzenie Gerszgorina mo˙ze by´c u˙zyteczne przy szacowaniu wska´znika uwarunkowania macierzy A ∈ Rn×n.

Jak wiadomo, wska´znik uwarunkowania macierzy (cond(A)) stanowi miar ˛e wra˙zliwo´sci rozwi ˛azania układu równa ´n liniowych Ax = b na małe wzgl ˛edne zaburzenia macierzy A.

Je´sli A jest symetryczna i dodatnio okre´slona, to

cond(A) = kAk2 kA1k2 = λmaxmin, gdzie λmax jest najwi ˛eksz ˛a warto´sci ˛a własn ˛a A, a λmin- najmniejsz ˛a warto´sci ˛a własn ˛a.

Podamy przykład takiej macierzy A(n × n).

(34)

Przykład 4

Niech

A =

n 1 . . . 1 1 n 1 . . . 1 . . . . . . . . . . . .

1 1 . . . n

.

Z twierdzenie Gerszgorina wynika, ˙ze wszystkie koła Gerszgorina s ˛a takie same, zatem je´sli λ jest warto´sci ˛a własn ˛a A, to

− n| ≤ n − 1.

Macierz A jest symetryczna, wi ˛ec jej warto´sci własne s ˛a rzeczywiste, zatem 1 ≤ λ ≤ 2n − 1, a wi ˛ec A jest dodatnio okre´slona. Mamy wi ˛ec

cond(A) = λmaxmin ≤ 2n − 1.

(35)

Kryterium residualne

Twierdzenie 2. Je´sli A ∈ Rn×n jest macierz ˛a symetryczn ˛a o warto´sciach własnych

λ1, . . . ,λn, wtedy dla dowolnej liczby α ∈ R i dowolnego wektora x ∈ Rn takiego,

˙ze kxk2 = 1, mamy

i=1,...,nmin i α| ≤ kAx − αxk2.

Przykład 4. Je´sli

A =

4 1 0 1 4 1 0 1 4

, α = 5, x =

3

3 (1, 1, 1)T,

to kAx − αxk2 =

3

3 ≈ 0.5774. Przybli˙zone warto´sci własne A, obliczone w pakiecie MATLAB, wynosz ˛a 2.5858, 4.0000, 5.4142, zatem

mini=1,...,n i α| ≈ 0.4142.

(36)

Metody numeryczne algebry

Metody wyznacznikowe

Wydział Matematyki i Nauk Informacyjnych

Politechnika Warszawska

Alicja Smoktunowicz

(37)

Idea metod wyznacznikowych

Nie nale˙zy (na ogół) oblicza´c numerycznie warto´sci własnych macierzy A(n × n) z postaci naturalnej wielomianu

charakterystycznego

w(t) = det(A − tI) = p1tn + p2tn−1 + . . . + pnt + pn+1. Idea metod wyznacznikowych polega na zastosowaniu metod iteracyjnych wyznaczania zer funkcji w(t) = det(A − tI) (np.

metody siecznych, Newtona, Halleya). Konstruuje si ˛e ci ˛ag {tk}, który przy pewnych dodatkowych zało˙zeniach jest zbie˙zny do pewnej warto´sci własnej macierzy A. Przy obliczaniu warto´sci w(tk) w kolejnych krokach iteracyjnych stosuje si ˛e metody na obliczenie wyznaczników macierzy A − tkI.

Ze wzgl ˛edu na koszt oblicze ´n metody wyznacznikowe stosuje si ˛e głównie dla macierzy strukturalnych, np. dla macierzy

trójdiagonalnych i prawie trójk ˛atnych (Hessenberga).

(38)

Metoda siecznych dla w(t) = det(A − tI)

Dane s ˛ a dwa przybli˙zenia t

0

i t

1

.

Zakładamy, ˙ze w(t

0

) 6= w(t

1

) . Dla k = 1, 2, . . . oblicz

t

k+1

= t

k

− w(t

k

)(t

k

− t

k−1

)

w(t

k

) − w(t

k−1

) .

(39)

Metoda stycznych (Newtona) dla

w(t) = det(A − tI)

Dane jest przybli˙zenie t

0

.

Zakładamy, ˙ze w

(t

0

) 6= 0 .

Dla k = 1, 2, . . . oblicz

t

k+1

= t

k

− w(t

k

)

w

(t

k

) .

(40)

Algorytm dla macierzy trójdiagonalnej

Jak obliczy ´c warto ´sci w(t) = det(A − tI) i w(t) dla danego t? Zakładamy, ˙ze A(n × n) jest macierz ˛a trójdiagonaln ˛a postaci

A =

a1 b1 0 . . . 0 c1 a2 b2 . . . 0 . . . . . . . . . . . . 0

0 0 cn−2 an−1 bn−1

0 0 0 cn−1 an

.

Niech wi = wi(t) b ˛edzie i. minorem głównym macierzy A − tI. Algorytm: w0 = 1, w1 = a1 − t,

wi = (ai − t)wi−1 bi−1ci−1wi−1, i = 2, 3, . . . , n,

(41)

Algorytm dla macierzy trójdiagonalnej

Jak obliczy ´c warto ´s ´c pochodnej w(t)?

Niech wi = wi(t) b ˛edzie i. minorem głównym macierzy A − tI. Niech pi = pi(t) b ˛edzie pochodn ˛a wielomianu wi(t) (pi = wi).

w0 = 1, w1 = a1 − t, p0 = 0, p1 = −1, Dla i = 2, 3, . . . , n oblicz

wi = (ai − t)wi−1 bi−1ci−1wi−1,

pi = (ai − t)pi−1 − wi−1 bi−1ci−1pi−1. w(t) = det(A − tI) = wn, w(t) = pn.

Koszt: O(n) operacji arytmetycznych.

(42)

Algorytm Hymana dla macierzy Hessenberga

Omówimy teraz algorytm Hymana obliczenia warto´sci wielomianu charakterystycznego w(t) = det(A − tI) i jego pochodnej w(t).

Zakładamy, ˙ze A(n × n) jest macierz ˛a Hessenberga postaci

A =

a11 a12 . . . a1,n−1 a1n b2 a22 . . . a2,n−1 a2n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

0 0 bn−1 an−1,n−1 an−1,n

0 0 0 bn ann

.

Koszt algorytmu Hymana: O(n) operacji arytmetycznych.

(43)

Dekompozycja zadania

Zakładamy, ˙ze bi 6= 0 dla i = 2, . . . , n.

Je´sli ten warunek nie jest spełniony, to

A − tI = A1 − tI A2 0 A3 − tI

! , gdzie A1 i A3 s ˛a macierzami Hessenberga.

Wtedy

spect(A) = spect(A1) ∪ spect(A3), gdy˙z

det(A − tI) = det(A1 − tI)det(A3 − tI).

(44)

Idea algorytmu Hymana dla n = 3

Wyznacznik macierzy A − tI nie ulegnie zmianie, gdy do ostatniej kolumny A − tI dodamy kombinacj ˛e liniow ˛a pozostałych kolumn.

Po tym przekształceniu mamy w(t) = det(A − tI) = det(A − tI),˜ gdzie

A − tI =˜ x1

a11 − t b2

0

+ x2

a12 a22 − t

b3

+

a13 a23 a33 − t

.

Chcemy tak dobra´c współczynniki x1 i x2, aby ostatnia kolumna macierzy A − tI˜ miała posta´c

K

0

.

(45)

Idea algorytmu Hymana dla n = 3

Wtedy

A − tI =˜

a11 − t a12 K b2 a22 − t 0

0 b3 0

,

zatem

w(t) = det(A − tI) = (−1)˜ 3+1K(b2b3).

(46)

Idea algorytmu Hymana dla n = 3

St ˛ad dostajemy zale˙zno´sci

a23 + b2x1 + x2(a22 − t) = 0, (a33 − t) + x2b3 = 0.

Poniewa˙z b2 6= 0 6= b3, zatem

x2 = −(a33 − t) b3 ,

x1 = −(a23 + x2(a22 − t))

b2 .

Widzimy, ˙ze

K = a13 + x1(a11 − t) + x2a12,

(47)

Metoda Hymana dla dowolnego n

W tym przypadku macierz A − tI jest macierz ˛a Hessenberga postaci

A − tI =

a11 − t a12 . . . a1,n−1 a1n b2 a22 − t . . . a2,n−1 a2n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

0 0 bn−1 an−1,n−1 − t an−1,n

0 0 0 bn ann − t

.

Zakładamy, ˙ze bi 6= 0 dla i = 2, . . . , n.

(48)

Metoda Hymana obliczenia

w(t) = det(A − tI)

Mamy

xn−1 = −(ann − t) bn

Dla i = n − 1, n − 2, . . . , 2 wyznaczamy

xi−1 = −(ain + xi(aii − t) + Pn

j=i+1 aijxj) bn

Obliczamy

K = a1n + x1(a11 − t) + x2a12 + . . . + xn−1a1,n−1. St ˛ad

w(t) = (−1)n+1K(b b . . .b ).

(49)

Metoda Hymana obliczenia

w(t)

Chcemy obliczy´c warto´s´c w(t), gdzie w(t) = det(A − tI).

Niech yi = xi dla i = 1, . . . , n − 1 (pochodne wzgl ˛edem t).

yn−1 = 1 bn

Dla i = n − 1, n − 2, . . . , 2 wyznaczamy

yi−1 = −(yi(aii − t) − xi + Pn

j=i+1 aijyj) bn

Obliczamy

K = y1(a11 − t) − x1 + y2a12 + . . . + yn−1a1,n−1, a nast ˛epnie

w(t) = (−1)n+1K(b2b3 . . . bn).

(50)

Metody numeryczne algebry

Metoda pot ˛egowa i jej warianty

Wydział Matematyki i Nauk Informacyjnych

Politechnika Warszawska

Alicja Smoktunowicz

(51)

Idea metody pot ˛egowej

Za twórc ˛e metody pot ˛egowej (Power Iteration) jest uwa˙zany Richard Edler Von Mises (1883-1953).

Chcemy wyznaczy´c dominuj ˛ac ˛a warto´s´c własn ˛a λ1 macierzy A ∈ Cn×n i odpowiadaj ˛acy jej wektor własny p1.

Niech A ∈ Cn×n ma warto´sci własne λ1, λ2, . . . , λn.

Mówimy, ˙ze λ1 jest dominuj ˛ac ˛a warto´sci ˛a własn ˛a A, je´sli

1| > |λ2| ≥ . . . ≥ |λn|. (1)

Zakładamy, ˙ze A jest macierz ˛a diagonalizowaln ˛a (podobn ˛a do macierzy diagonalnej), tj. istnieje macierz nieosobliwa P taka, ˙ze

A = PDP1, D = diag(λ1, λ2, . . . , λn). (2)

Kolumny p1, p2, . . . , pn macierzy P s ˛a zatem wektorami własnymi macierzy A i s ˛a liniowo niezale˙zne.

(52)

Idea metody pot ˛egowej

Dany jest wektor pocz ˛atkowy z0 ∈ Cn. Tworzymy ci ˛ag wektorów {zk}:

zk = Akz0, k = 1, 2, . . . . Co mo˙zna powiedzie´c o zbie˙zno´sci ci ˛agu {zk}?

Przedstawmy z0 w bazie wektorów własnych {p1, p2, . . . , pn}:

z0 = c1p1 + c2p2 + . . . + cnpn. Wtedy dla k = 1, 2, . . . mamy

zk = c1Akp1 + c2Akp2 + . . . + cnAkpn.

Zakładamy dodatkowo, ˙ze wektor z0 nie posiada niezerowej

(53)

Idea metody pot ˛egowej

Poniewa˙z Api = λipi, wi ˛ec Akpi = λki pi, a zatem

zk = c1λ1kp1 + c2λ2kp2 + . . . + cnλnkpn, zk

λ1k = c1p1 + c2 λ2 λ1

k

p2 + . . . + cn λn λ1

k pn.

Poniewa˙z |λλi

1| < 1 dla i = 2, . . . , n, wi ˛ec

k→ ∞lim

 λi λ1

k

= 0, i = 2, . . . , n.

St ˛ad dostajemy

k→ ∞lim

zk

λ1k = c1p1.

(54)

Iloraz Rayleigha

W praktyce obliczeniowej normuje si ˛e wektory zk, aby unikn ˛a´c nadmiaru.

Jak obliczy´c przybli˙zenie warto´sci własnej λ1?

Zdefiniujmy iloraz Rayleigha dla dowolnego wektora z ∈ Cn takiego, ˙ze kzk2 = 1:

R(z) = zAz.

Zauwa˙zmy, ˙ze je´sli p1 jest wektorem własnym A dla λ1, tj.

Ap1 = λ1p1, kp1k2 = 1, to

(55)

Praktyczny algorytm metody pot ˛egowej

Dany jest wektor q0 ∈ Cn taki, ˙ze kq0k2 = 1.

Dla k = 1, 2, . . .

oblicz zk = Aqk−1, oblicz qk = zk/kzkk2,

oblicz αk = R(qk) = qkAqk.

WARUNKI STOPU:

k+1 − αk| ≤ tol,

k N- ograniczenie na liczb ˛e iteracji.

(56)

Zbie˙zno ´s ´c metody pot ˛egowej

Twierdzenie.

Zakładamy, ˙ze A ∈ Cn×n jest diagonalizowalna (A = PDP1, D = diag(λi)) oraz posiada dominuj ˛ac ˛a warto´s´c własn ˛a λ1:

1| > |λ2| ≥ . . . ≥ |λn|. (3)

Zakładamy, ˙ze wektor pocz ˛atkowy q0 posiada niezerow ˛a

współrz˛edn ˛a c1 w kierunku wektora własnego p1 (Ap1 = λ1p1).

Wówczas metoda pot ˛egowa jest zbie˙zna, tj.

k→ ∞lim αk = λ1 (4)

oraz

dist{span{q }, span{p }} = O |λ2|k

.

Cytaty

Powiązane dokumenty

do postaci trójdiagonalnej metodą Lanczosa Naszym zadaniem jest znalezienie wartości i wektorów własnych macierzy stopnia n. Jeśli jednak n jest bardzo duże (np.rzędu ~10 5 ) a

Zapisać do pliku tekstowego wektory własne macierzy

Rozkłady macierzy używane do rozwiązywanie układów liniowych równań algebraicznych..

[r]

Macierze symetryczne

wykład z algebry liniowej Warszawa, listopad 2012. Mirosław Sobolewski (UW) Warszawa,listopad 2012 1

22 Redukcja macierzy (rzadkiej) hermitowskiej do postaci trójdiagonalnej metodą Lanczosa Naszym zadaniem jest znalezienie wartości i wektorów własnych macierzy stopnia n. Jeśli jednak

włączając dwa „winampy” jednocześnie i z jednego podając sygnał użyteczny, a z drugiego jakieś zakłócenie mamy możliwość generacji sygnału zakłóconego, sygnał