W tym rozdziale zajmiemy się jeszcze innymi nich dotychczas poznanymi metodami znajdowania wartości i wektorów własnych. Ponieważ duże znaczenie mają w nich obroty płaszczyzn, zaczniemy właśnie od definicji tych przekształceń, ich własności i pierwszych zastosowań.
Macierz obrotu o kąt
Macierz ta różni się od jednostkowej jedynie wyrazami
W obliczeniach numerycznych macierze obrotu służą najczęściej
do wyzerowania określonej współrzędnej danego wektora.
Rzeczywiście, obracając wektor
Stąd, przyjmując
albo liczby do nich przeciwne, dostajemy
Przekształcenia tak określone nazywamy obrotami Givensa.
Zauważmy, że stosując obroty Givensa kolejno
w płaszczyznach rozpiętych na wektorach
Takie operacje wymagają wykonania
Przypuśćmy, że chcemy zastosować serię obrotów Givensa
jest zerowa. Pomysł modyfikacji polega na przedstawieniu każdego z obrotów w postaci
gdzie
Macierze diagonalne
Dla uproszczenia zapisu podstawimy
Przypomnijmy, że obrót
mamy
Stąd warunek
Jeśli teraz
Mamy teraz dwa przypadki.
(i) Jeśli
gdzie
(ii) Jeśli
gdzie
Macierz
Zauważmy, jeszcze, że takie rozbicie na przypadki (i) i (ii) pozwala
nie tylko uniknąć dzielenia przez zero, ale również uniknąć
możliwego niedomiaru. Wielkość
Możnaby się spytać gdzie jest zysk obliczeniowy. Na końcu procesu
dysponujemy bowiem jedynie macierzą
Na przykład, jeśli chcemy przekształcić dany wektor
jedynie pierwsza współrzędna otrzymanego wektora nie jest zerowa.
Mnożenie przez
Podobnie, używając obrotów Givensa można kosztem porównywalnym do
algorytmu bazującego na odbiciach Householdera przekształcić daną
nieosobliwą macierz kwadratową
gdzie
Metoda Jacobiego jest najstarszą z istniejących metod numerycznych znajdowania wartości własnych macierzy symetrycznych. Ma jednak nie tylko znaczenie historyczne. Chociaż jest stosunkowo wolno zbieżna to można ją stosować gdy chcemy obliczyć wartości własne z bardzo dobrą dokładnością w obecności błędów zaokrągleń.
Zakładamy, że
składającej się z wartości własnych
Oznaczając
Jako miarę odchylenia od macierzy diagonalnej
gdzie
i
gdzie
Wyrazy diagonalne macierzy
Stąd wniosek, że poszczególne obroty
Zauważmy, że mnożenie z lewej strony przez obrót
a stąd
i podobnie
Dla danych
Jeśli
Stąd równość
Jeśli podstawimy
Rozwiązując otrzymujemy następujące wzory:
Zauważmy jeszcze, że taka postać rozwiązania pozwala obliczyć
Pozostaje do ustalenia jak wybierać kolejne
Ponieważ wtedy
(4.1) |
Mamy więc zapewnioną zbieżność liniową, chociaż iloraz
zbieżności jest bliski jedynce dla dużych wymiarów
i dalej cyklicznie, aż do osiągnięcia żądanej dokładności.
W tym przypadku kłopot polega na tym, że obroty wykonuje się
również wtedy, gdy
Metodę Jacobiego stosuje się do pełnej, rzeczywistej macierzy
symetrycznej. W tym podrozdziale zatrzymamy się na przypadku, gdzie
Przypomnijmy, że każdą macierz symetryczną można sprowadzić
do postaci trójdiagonalnej przez podobieństwa ortogonalne.
W rozdziale 2.1.1 pokazaliśmy jak to zrobić przy pomocy
odbić Householdera. Ale równie dobrze możemy użyć obrotów
Givensa. Rzeczywiście, najpierw wybieramy obroty
spowodowało wyzerowanie kolejno elementów
wyzerowane elementy w pierwszej kolumnie się nie zmienią. Dalej
postępujemy indukcyjnie dla kolejnych kolumn, od
przy czym mnożenie z lewej przez
Oczywiście, wszystkie metody dla macierzy pełnej można stosować również dla macierzy trójdiagonalnej. Jednak ze względu na prostszą strukturę macierzy niektóre metody znacznie się upraszczają. Pokażemy to na przykładzie metody QR z rozdziału 3.2.
W oryginalnej metodzie QR (z przesunięciami lub bez) rozkład
ortogonalno-trójkątny macierzy
jest macierzą trójkątną górną. Teraz istotne jest, że po wykonaniu drugiego kroku metody QR, czyli mnożenia
otrzymana macierz
Koszt jednego kroku metody QR dla symetrycznej macierzy
trójdiagonalnej
Mamy własność ogólniejszą. W procesie iteracyjnym metody QR
macierz trójdiagonalna pozostaje w każdym kroku trójdiagonalna
niezależnie od zastosowanego algorytmu rozkładu na iloczyn
ortogonalno-trójkątny. Wynika to w szczególności stąd, że,
jak pamiętamy, rozkład taki jest wyznaczony jednoznacznie
z dokładnością do macierzy diagonalnej z elementami
Oczywiście wszystkie pozostałe fakty na temat metody QR pokazane wcześniej dla macierzy pełnych, w szczególności te dotyczące wyboru przesunięcia i szybkości zbieżności, pozostają w mocy gdy macierz jest trójdiagonalna.
Na końcu serii wykładów na temat zadania własnego zajmiemy się znajdowaniem wartości szczególnych danej macierzy, a to dlatego, że zadanie to i metody jego rozwiązania wiążą się ściśle z zadaniem i metodami znajdowania wartości własnych macierzy symetrycznych.
Najpierw przypomnimy twierdzenie o rozkładzie według wartości
szczególnych, czyli SVD (ang. Singular Value Decomposition).
Będziemy zakładać, bez zmniejszenia ogólności, że liczba kolumn
macierzy
Dla dowolnej macierzy
gdzie
Ponieważ macierz
przy czym
To oznacza, że wektory
Zdefiniujmy teraz macierze ortogonalne
Wtedy, oznaczając
albo, równoważnie,
Wielkości
Porównując wyrazy diagonalne po obu stronach powyższej równości
dostajemy
Zanotujmy jeszcze, że mając rozkład SVD można np. łatwo rozwiązać liniowe
zadanie najmniejszych kwadratów, tzn. znaleźć wektor
Z dowodu twierdzenia 4.1 wynika, że
Niech
Z uwagi na możliwą zmianę rzędu macierzy, jak w przytoczonym przykładzie,
stosuje się nieco zmodyfikowane algorytmy znajdowania wartości własnych,
które unikają jawnych mnożeń
Przypomnijmy, że metoda Jacobiego zastosowana bezpośrednio do macierzy
które można obliczyć korzystając z powyższych wzorów.
W tym podrozdziale pokażemy algorytm, który można traktować jako wariant
metody QR zastosowanej do macierzy
Niech
(i) wybiera przesunięcie
(ii) dokonuje rozkładu Banachiewicza-Cholesky'ego
gdzie
(iii) produkuje
(Przypomnijmy, że rozkładu Banachiewicza-Cholesky'ego dokonujemy zmodyfikowanym
algorytmem eliminacji Gaussa.) Oczywiście, macierze
Zachodzi ciekawsza własność.
Dwa kroki iteracji LR z tym samym przesunięciem
Bez zmniejszenia ogólności przyjmijmy, że
Wobec jednoznaczności rozkładu Banachiewicza-Cholesky'ego mamy więc
jak w tezie lematu.
∎Powyższy lemat pokazuje, że rozważania teoretyczne dotyczące iteracji QR można przenieść na iteracje LR. Dlatego dalej nie będziemy się już zajmować analizą teoretyczną LR, a przejdziemy do opisu algorytmu te iteracje wykorzystującego.
Zakładamy, że
Oczywiście, wobec kolumnowej regularności macierzy mamy
Algorytm działa podobnie jak iteracje LR z przesunięciami, ale zamiast tworzyć
jawnie macierze
jest macierzą trójdiagonalną. Zobaczmy teraz jak mając macierz dwudiagonalną
Porównując wyrazy przekątniowe po obu stronach tej równości otrzymujemy
a porównując wyrazy nad przekątną
Stąd, podstawiając
i na końcu
Ponieważ obliczanie pierwiastków jest stosunkowo kosztowne, wzory te
opłaca się zmodyfikować tak, aby nie obliczać pierwiastków w każdej
iteracji, a jedynie na końcu całego procesu iteracyjnego. Można to
osiągnąć pracując na kwadratach
. | begin | ||
. | . | for | |
. | . | begin | |
. | . | . | |
. | . | . | |
. | . | end; | |
. | . | ||
. | end; |
A co jeśli
która jest już dwudiagonalna. Jeśli teraz
Zanotujmy jeszcze, że dowolną macierz można sprowadzić w podobny sposób
do postaci dwudiagonalnej przy pomocy obrotów Givensa. Zarówno w przypadku
zastosowania obrotów Givensa jak i odbić Householdera koszt jest
proporcjonalny do
Treść automatycznie generowana z plików źródłowych LaTeXa za pomocą oprogramowania wykorzystującego LaTeXML.
strona główna | webmaster | o portalu | pomoc
© Wydział Matematyki, Informatyki i Mechaniki UW, 2009-2010. Niniejsze materiały są udostępnione bezpłatnie na licencji Creative Commons Uznanie autorstwa-Użycie niekomercyjne-Bez utworów zależnych 3.0 Polska.
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego.
Projekt współfinansowany przez Ministerstwo Nauki i Szkolnictwa Wyższego i przez Uniwersytet Warszawski.