Metody numeryczne. materiały do wykładu dla studentów



Podobne dokumenty
5. Rozwiązywanie układów równań liniowych

Zaawansowane metody numeryczne

Metody numeryczne Wykład 4

3. Macierze i Układy Równań Liniowych

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Rozwiązywanie układów równań liniowych

Treść wykładu. Układy równań i ich macierze. Rząd macierzy. Twierdzenie Kroneckera-Capellego.

Układy równań i nierówności liniowych

Układy równań liniowych. Krzysztof Patan

Metoda eliminacji Gaussa. Autorzy: Michał Góra

2. Układy równań liniowych

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ...

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

1 Układy równań liniowych

Układy równań liniowych

UKŁADY RÓWNAŃ LINIOWYCH

dr Mariusz Grządziel 15,29 kwietnia 2014 Przestrzeń R k R k = R R... R k razy Elementy R k wektory;

Wykład 5. Metoda eliminacji Gaussa

, A T = A + B = [a ij + b ij ].

Macierze. Rozdział Działania na macierzach

Zaawansowane metody numeryczne

; B = Wykonaj poniższe obliczenia: Mnożenia, transpozycje etc wykonuję programem i przepisuję wyniki. Mam nadzieję, że umiesz mnożyć macierze...

3. Wykład Układy równań liniowych.

Analiza numeryczna Kurs INP002009W. Wykłady 6 i 7 Rozwiązywanie układów równań liniowych. Karol Tarnowski A-1 p.

Metoda eliminacji Gaussa

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu

15. Macierze. Definicja Macierzy. Definicja Delty Kroneckera. Definicja Macierzy Kwadratowej. Definicja Macierzy Jednostkowej

1 Macierz odwrotna metoda operacji elementarnych

Układy równań liniowych i metody ich rozwiązywania

Układy równań liniowych. Ax = b (1)

O MACIERZACH I UKŁADACH RÓWNAŃ

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

det[a 1,..., A i,..., A j,..., A n ] + det[a 1,..., ka j,..., A j,..., A n ] Dowód Udowodniliśmy, że: det[a 1,..., A i + ka j,..., A j,...

Funkcje wymierne. Jerzy Rutkowski. Działania dodawania i mnożenia funkcji wymiernych określa się wzorami: g h + k l g h k.

III TUTORIAL Z METOD OBLICZENIOWYCH

Wykład 14. Elementy algebry macierzy

3. FUNKCJA LINIOWA. gdzie ; ół,.

Układy równań liniowych

Wstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe. P. F. Góra

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

Metody numeryczne. materiały do wykładu dla studentów

Funkcje wymierne. Funkcja homograficzna. Równania i nierówności wymierne.

UKŁADY RÓWNAŃ LINIOWYCH - Metody dokładne

1 Zbiory i działania na zbiorach.

Własności wyznacznika

Wykład 4. Określimy teraz pewną ważną klasę pierścieni.

Programowanie celowe #1

Met Me ody numer yczne Wykład ykład Dr inż. Mic hał ha Łanc Łan zon Instyt Ins ut Elektr Elektr echn iki echn i Elektrot Elektr echn olo echn

04 Układy równań i rozkłady macierzy - Ćwiczenia. Przykład 1 A =

UKŁADY RÓWNAŃ LINIOWYCH -Metody dokładne

Układy równań liniowych

Wartości i wektory własne

Całka nieoznaczona, podstawowe wiadomości

MACIERZE I WYZNACZNIKI

Funkcje liniowe i wieloliniowe w praktyce szkolnej. Opracowanie : mgr inż. Renata Rzepińska

Analiza matematyczna i algebra liniowa Macierze

Metody numeryczne w przykładach

Co to jest wektor? Jest to obiekt posiadający: moduł (długość), kierunek wraz ze zwrotem.

Metody numeryczne. materiały do wykładu dla studentów

Metody numeryczne. materiały do wykładu dla studentów

13 Układy równań liniowych

Wykład 1. Na początku zajmować się będziemy zbiorem liczb całkowitych

1 Macierze i wyznaczniki

Znaleźć wzór ogólny i zbadać istnienie granicy ciągu określonego rekurencyjnie:

MATEMATYKA I SEMESTR ALK (PwZ) 1. Sumy i sumy podwójne : Σ i ΣΣ

METODY NUMERYCZNE. wykład. konsultacje: wtorek 10:00-11:30 środa 10:00-11:30. dr inż. Grażyna Kałuża pokój

Wstęp do metod numerycznych Uwarunkowanie Eliminacja Gaussa. P. F. Góra

macierze jednostkowe (identyczności) macierze diagonalne, które na przekątnej mają same

DB Algebra liniowa semestr zimowy 2018

Metody numeryczne. materiały do wykładu dla studentów. 1. Teoria błędów, notacja O

Analiza numeryczna Lista nr 3 (ćwiczenia) x x 2 n x.

A A A A A A A A A n n

Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych

0 + 0 = 0, = 1, = 1, = 0.

Algebra WYKŁAD 3 ALGEBRA 1

NUMERYCZNE METODY ROZWIĄZYWANIA ROWNAŃ LINIOWYCH. PRZYGOTOWAŁA: ANNA BANAŚ KoMBo, WILiŚ

Matematyka stosowana i metody numeryczne

Egzamin z Metod Numerycznych ZSI, Egzamin, Gr. A

ECTS (Część 2. Metody numeryczne) Nazwa w języku angielskim: Algorithms and data structures.

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn a 1j a 2j R i = , C j =

Zad. 3: Układ równań liniowych

Równania liniowe. Rozdział Przekształcenia liniowe. Niech X oraz Y będą dwiema niepustymi przestrzeniami wektorowymi nad ciałem

Rozwiązania, seria 5.

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH

Definicja i własności wartości bezwzględnej.

Zadanie 3 Oblicz jeżeli wiadomo, że liczby 8 2,, 1, , tworzą ciąg arytmetyczny. Wyznacz różnicę ciągu. Rozwiązanie:

RÓWNANIA RÓŻNICZKOWE WYKŁAD 2

Algorytmy i struktury danych. Wykład 4

Treści programowe. Matematyka. Efekty kształcenia. Literatura. Terminy wykładów i ćwiczeń. Warunki zaliczenia. tnij.org/ktrabka

Wyk lad 5 W lasności wyznaczników. Macierz odwrotna

ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH

Wykład 6. Metoda eliminacji Gaussa: Eliminacja z wyborem częściowym Eliminacja z wyborem pełnym

Wykład 4. Informatyka Stosowana. Magdalena Alama-Bućko. 25 marca Magdalena Alama-Bućko Wykład 4 25 marca / 25

= Zapiszemy poniższy układ w postaci macierzy. 8+$+ 2&=4 " 5 3$ 7&=0 5$+7&=4

Ekoenergetyka Matematyka 1. Wykład 3.

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

Wyk lad 4 Macierz odwrotna i twierdzenie Cramera

Algebra liniowa. Macierze i układy równań liniowych

"Bieda przeczy matematyce; gdy się ją podzieli na więcej ludzi, nie staje się mniejsza." Gabriel Laub

Krótkie wprowadzenie do macierzy i wyznaczników

Transkrypt:

Metody numeryczne materiały do wykładu dla studentów. Metody dokładne rozwiązywania układów równań liniowych.. Układy równań o macierzach trójkątnych.. Metoda eliminacji Gaussa.3. Metoda Gaussa-Jordana.4. Algorytm Google PageRank.5. Rozkład macierzy na iloczyn macierzy trójkątnych.6. Metoda Cholesky ego.7. Metoda Banachiewicza Materiały przygotowane w ramach projektu Uruchomienie unikatowego kierunku studiów Informatyka Stosowana odpowiedzią na zapotrzebowanie rynku pracy ze środków Programu Operacyjnego Kapitał Ludzki współfinansowanego ze środków Europejskiego Funduszu Społecznego nr umowy UDA POKL.4..--/9-

. Metody dokładne rozwiązywania układów równań liniowych Metody rozwiązywania układów równań liniowych dzielą się na dwie grupy: metody dokładne i metody przybliżone (iteracyjne). Metody dokładne polegają na tym, że po skończonej liczbie działań arytmetycznych na współczynnikach układu równań otrzymujemy rozwiązanie tego układu. Słowo dokładne nie ma nic wspólnego z dokładnością uzyskanego rozwiązania, gdyż jest ono obarczone błędami wynikającymi z konieczności zaokrąglania liczb stanowiących wyniki działań pośrednich. Metody przybliżone (iteracyjne) polegają na sekwencyjnym postępowaniu, w wyniku którego otrzymujemy rozwiązanie układu równań, z tym że w każdym kroku uzyskujemy kolejno przybliżenie szukanego rozwiązania. Metody te są procesami nieskończonymi, przerywanymi w momencie, gdy zostaje osiągnięta zadana dokładność rozwiązania. Dla metod iteracyjnych istotna jest sprawa dotycząca zbieżności ciągu kolejnych przybliżeń... Układy równań o macierzach trójkątnych Weźmy pod uwagę układ = (.) gdzie jest macierzą trójkątną górną, czyli układ: + + + + = + + + = + = = (.) Zakładamy, że elementy głównej przekątnej macierzy są różne od zera, tzn. dla =,,,. Wówczas układ równań (.) ma dokładnie jedno rozwiązanie, bo. Rozwiązanie znajdujemy w sposób rekurencyjny zaczynając od ostatniego równania: = Wstawiając do równania przedostatniego mamy: i tak postępujemy kolejno. = Uniwersytet Ekonomiczny w Krakowie 9

Przykład.. Rozwiązać układ równań: +4! +6 # = 5 5 +! + # = 9 3! # = 4 # = Z ostatniego równania # =, wstawiając do równania trzeciego! = # =.! I kolejno = '( =, ) = )*((+ = 4. Analogicznie postępujemy w przypadku, gdy macierz współczynników układu jest macierzą trójkątną dolną... Metoda eliminacji Gaussa Rozważmy układ równań liniowych:, +, + +, =, +, + +, =, +, + +, = W postaci macierzowej układ ten zapisać można jako: - = gdzie - jest macierzą współczynników, - wektorem niewiadomych, zaś - wektorem wyrazów wolnych:,,,,,, - =. / =. / =. /,,, Aby układ ten miał rozwiązanie potrzeba i wystarcza, aby wyznacznik macierzy - był różny od zera. Metoda eliminacji Gaussa jest uogólnieniem metody przeciwnych współczynników na przypadek dowolnej liczby równań. Dla ułatwienia zapisu oznaczmy elementy wektora wyrazów wolnych przez,,( (gdzie =,,, ). Wówczas nasz układ przyjmie postać:, +, + +,, +, + +, (.3), +, + +, =,,( Uniwersytet Ekonomiczny w Krakowie

Na układzie tym wykonywać będziemy trzy rodzaje operacji: - przestawienie dowolnych równań, - pomnożenie równania przez liczbę różną od zera, - dodanie do danego równania dowolnego innego równania przemnożonego przez stałą różną od zera. Etap. Bez straty ogólności możemy założyć, że, (ewentualnie przestawiamy wiersze, by tak było). Element ten nazywamy elementem głównym. Wykorzystując pierwsze równanie eliminujemy z kolejnych równań niewiadomą przemnażając je odpowiednio przez stałe: i dodając do kolejnych równań. 3 33, 43 33,, 53 33 W wyniku tych operacji uzyskujemy układ równań: gdzie:, +, + +, =,,(, + +,, + +,, 8 =, 8,,, 8 ( =,3,,; : =,3,,+) Etap ; ( ; ). Niech teraz, ==. Podobnie jak w kroku pierwszym eliminujemy teraz niewiadomą = z kolejnych ; równań uzyskanych w poprzednim etapie (; ). Otrzymujemy układ równań:, +, + +, = = +,,=( =( + +,, == = +, =,=( =( + +, = =, =,(, =(,=( =( + +, =(, =, =(,( =( + +, =,,(,,=( gdzie:, 8 =, 8, =,, =8 == ( = ;+,,; : = ;+,,+) Uniwersytet Ekonomiczny w Krakowie

Etap. Po krokach uzyskujemy układ równań w postaci trójkątnej:, +, + +, =,,(, + +,, który rozwiązujemy od ostatniego równania do pierwszego. Przykład.. Wykorzystując metodę eliminacji Gaussa rozwiązać układ równań: +! # = +! + # = # = +! + # = Etap. Skoro,, to możemy przystąpić do eliminacji zmiennej z równań do 4. W tym celu od drugiego równania odejmujemy równanie, do trzeciego dodajemy to samo równanie, a od czwartego odejmujemy pierwsze równanie przemnożone przez stałą. W wyniku tych operacji uzyskujemy układ: +! # = +! + 4 # =! 4 # = +! +7 # = Etap. Teraz,, wobec tego wykorzystujemy równanie drugie, by wyeliminować zmienną z dwóch ostatnich równań: do równania trzeciego dodajemy to równanie, a od czwartego je odejmujemy: +! # = +! + 4 # =! =! +3 # = Etap 3. Kolejny element na przekątnej jest różny od w związku z czym do ostatniego wiersza dodajemy wiersz trzeci. +! # = +! + 4 # =! = 3 # = Uniwersytet Ekonomiczny w Krakowie

Etap 4. Pozostaje rozwiązać układ równań o macierzy trójkątnej. Z ostatnich dwóch równań od razu otrzymujemy: # = oraz! =, co podstawiając do równania drugiego daje nam = 5. W ostatnim kroku znajdujemy z równania pierwszego =. Rozwiązaniem zadanego układu jest wektor: =? 5 @ Powyższe obliczenia można prościej zapisać w postaci następującej tablicy (wypisujemy tylko elementy macierzy pomijając niewiadome, po prawej notujemy współczynniki przez które przemnażaliśmy wiersz wiodący): A 4 A 4 7 4 A 3 4 A 3 ( ) ( ) ( ) Metoda Gaussa pozwala nam także w prosty sposób obliczyć wyznacznik macierzy skojarzonej z zadanym układem równań. Wystarczy wymnożyć wartości przekątnej ostatniej macierzy, gdyż zgodnie z odpowiednimi twierdzeniami wyznacznik macierzy trójkątnej jest równy iloczynowi elementów przekątnej..3. Metoda Gaussa-Jordana Metoda Gaussa-Jordana jest bardzo podobna do metody Gaussa. W tym przypadku celem operacji elementarnych wykonywanych na macierzy współczynników jest uzyskanie nie macierzy trójkątnej, ale macierzy jednostkowej, dzięki czemu wektor wyrazów wolnych przekształcimy w wektor rozwiązania. Rozważmy jeszcze raz układ (.3). Uniwersytet Ekonomiczny w Krakowie 3

Etap. Podobnie jak w przypadku metody Gaussa bez straty ogólności możemy założyć, że,. Dzielimy pierwsze równanie przez, oraz eliminujemy zmienną z pozostałych równań. Uzyskujemy układ równań: gdzie: +, + +,, + +,, + +,, 8 =, 8 (: =,,,,+),, 8 =, 8,,, 8 ( =,3,,; : =,3,,+) Etap ; ( ; ). Niech teraz, ==. Podobnie jak w kroku pierwszym eliminujemy teraz niewiadomą = z kolejnych równań uzyskanych w poprzednim etapie (; ). Otrzymujemy układ równań: gdzie: + +,,=( =( + +, = +, =,=( =( + +, = =, =,(, =(,=( =( + +, =(, =, =(,( =( + +, =,,(,,=(, 8 =, 8, =,, =8 == ( =,,;,;+,,; : =;+,,+), =8 =, =8 (: =;,,+), == Etap. Po krokach uzyskujemy układ równań w postaci: + +, =,,( + +, =,,(, który przekształcamy podobnie jak w kroku ;-tym do układu: Uniwersytet Ekonomiczny w Krakowie 4

Współczynniki,,( =,,( dla =,, są współrzędnymi wektora rozwiązania. Przykład.3. Wykorzystując metodę Gaussa-Jordana rozwiązać układ równań z przykładu.. Posłużymy się schematem obliczeniowym podobnym do tego zastosowanego w przykładzie.. Rozwiązaniem jest wektor =? 5 @. A 4 A 4 7 4 A 3 4 A 3 A 5 ( ) ( ) ( ) ( ) () ( 3) (4 3) Uniwersytet Ekonomiczny w Krakowie 5

.4. Algorytm Google PageRank Rozważmy teraz jedno z najważniejszych (i najbardziej intratnych) zastosowań algebry liniowej, a dokładnie metod rozwiązywania układów równań, czyli algorytm Google PageRank, wykorzystywany przez wyszukiwarkę Google do pozycjonowania stron internetowych. Co prawda, szczegóły całego algorytmu nigdy nie zostały upublicznione, a do tego algorytm jest prawdopodobnie poprawiany na bieżąco by uniknąć manipulacji wynikami wyszukiwania, ale podstawowa idea stojąca za tą procedurą opiera się na (możliwie szybkim) rozwiązaniu układu równań liniowych. Załóżmy, że chcemy znaleźć strony, które zawierają dane słowo i poszeregować je względem ważności (popularności). O ile wyszukanie stron na których występuje dane słowo jest (przynajmniej teoretycznie) sprawą prostą, to już znacznie bardziej problematyczne jest samo sprecyzowanie, co rozumiemy przez ważność danej strony. Najpierw uznawano zazwyczaj, że ważność strony jest określona przez liczbę stron, które do niej kierują bezpośrednim linkiem. Niestety, takie podejście nie dawało dobrych rezultatów: jeżeli na daną stronę wskazuje choćby tylko jedna strona, którą wszyscy znają, to taka strona ma większe znaczenie, niż strona, do której prowadzi wiele linków z miejsc, gdzie nikt nigdy nie zagląda. Co więcej, taka klasyfikacja zachęcałaby do nadużyć - żeby dobrze wypozycjonować stronę w przeglądarce wystarczyłoby stworzyć odpowiednio dużo witryn, zawierających jedynie link do niej. Sergey Brin i Larry Page, twórcy algorytmu PageRank, stwierdzili, że strona jest ważna, gdy na innych ważnych stronach znajdują się odnośniki do niej. Mówiąc precyzyjniej, przyjęli oni następujące (pozornie oczywiste) założenie: ważność/waga danej strony jest wprost proporcjonalna do sumy ważności/wag wszystkich stron które na nią wskazują. Załóżmy więc, że chcemy uszeregować w kolejności od najbardziej do najmniej istotnej strony C,C,,C o wagach D,D,,D >. Wtedy powyższy warunek oznacza: D =F =:IJ I L D =, gdzie F jest współczynnikiem proporcjonalności, a zapis C = C oznacza, że na stronie C = znajduje sie link do strony C. Powyższy warunek można zmodyfikować, biorąc pod uwagę fakt, że im więcej linków wychodzi z danej strony, tym mniejsze znaczenie ma każdy z nich: po prostu mniejsza jest szansa, że zainteresowany tematyką internauta wybierze akurat tę stronę docelową. Przyjmując, że M = oznacza liczbę linków wychodzących z k-tej strony, będziemy rozpatrywać układ: N D =F J =:I J I L, (.4) Zapiszmy powyższy układ w postaci macierzowej P = QR 8 S gdzie O J Uniwersytet Ekonomiczny w Krakowie 6

, gdy C O 8 C T R 8 = 8 =. (.5), w pozostałych przypadkach Innymi słowy, j-ty element i-tego wiersza opisuje prawdopodobieństwo, z jakim użytkownik za chwile przejdzie na stronę i, jeśli obecnie jest na stronie j - przy założeniu, że użytkownik na kolejną stronę przechodzi jedynie za pomocą linków ze strony, na której aktualnie się znajduje (wkrótce zobaczymy, jak Page i Brin poradzili sobie z usunięciem tego nierealistycznego założenia). Jeśli na stronie :-tej nie ma linków do innych stron, zakładamy, że użytkownik może za chwilę przenieść się na dowolną inną stronę z tym samym prawdopodobieństwem : nie pozostanie przecież wiecznie na tej stronie, pomimo braku,,wyjść, a z drugiej strony, nie mamy żadnych wskazówek dotyczących tego, gdzie za chwilę się znajdzie. Macierz P opisaną równością (.5) będziemy nazywać uproszczoną macierzą Google. Przykład.4. Zapisać uproszczoną macierz Google dla sieci złożonej ze stron ponumerowanych od do 4, połączonych następującymi linkami:, 3,3, 3,3 4. Układ równań (.5) można zapisać w postaci D =FPD, (.6) gdzie D = VD,,D W X. Mnożąc obie strony powyższej równości przez Y = Z, otrzymujemy: YD =PD. (.7) Uniwersytet Ekonomiczny w Krakowie 7

Jak się przekonamy w rozdziale 4, liczbę Y w takiej sytuacji nazywamy wartością własną, a wektor D wektorem własnym macierzy P, o ile D. Obliczenie wektora D na podstawie układu równań (.7) napotyka na pewne problemy. Przede wszystkim rozwiązanie zależy od Y, które na razie jest nieznane. Ponadto, z kursu algebry i analizy wiemy, że dla tego typu równań zachodzi jeden z dwóch przypadków: albo jedynym rozwiązaniem jest D =, albo układ równań (.7) ma nieskończenie wiele rozwiązań. W pierwszym przypadku, rozwiązanie zerowe nie przybliża nas do celu, którym jest ustalenie wag poszczególnych stron. W drugim, bez dodatkowych informacji, moglibyśmy nie wiedzieć, które z rozwiązań tworzy właściwy ranking stron. By pokonać te trudności, skorzystamy z elementów teorii wartości własnych, które szerzej omówimy w rozdziale 4. Przede wszystkim, aby otrzymać rozwiązanie niezerowe, musimy założyć, że Y istotnie jest wartością własną, a więc spełnia tzw. równanie charakterystyczne: det(p Y^)=, gdzie ^ jest macierzą jednostkową odpowiedniego wymiaru. W ten sposób zapewnimy sobie istnienie nieskończenie wielu rozwiązań układu (.7). Pewnego rodzaju jednoznaczność rozwiązania zapewnia nam poniższe twierdzenie: Twierdzenie.. (Szczególny przypadek twierdzenia Frobeniusa-Perrona) Dla uproszczonej macierzy Google P lub dla uogólnionej macierzy Googla (którą za chwilę zdefiniujemy): a) Y = zawsze jest wartością własną. b) Z dokładnością do przemnożenia przez dodatni skalar, wektor własny D odpowiadający wartości własnej jest wyznaczony jednoznacznie i ma wszystkie współrzędne tego samego znaku. W konsekwencji, uporządkowanie wag D, z których ten wektor się składa, jest zadane jednoznacznie. Zatem, po pierwsze, w układzie równań (.7) możemy podstawić Y = (wybór Y zależy od początkowego wyboru współczynnika proporcjonalności F, więc nie jesteśmy tu w żaden sposób ograniczani), otrzymując układ równań: (P ^)D =. (.8) Po drugie, jako, że rozwiązanie układu (.8) jest jednoznaczne z dokładnością do przemnożenia przez dodatni skalar, za jedną ze współrzędnych wektora D można podstawić dowolną, dodatnią liczbę i odrzucić jedno równanie z układu, w którym ta współrzędna występuje z niezerowym współczynnikiem. Podstawienie innej liczby prowadzi do innego rozwiązania, ale rozwiązanie to zadaje to samo uporządkowanie wag D. Uniwersytet Ekonomiczny w Krakowie 8

By zakończyć rozwiązywanie zadania, wystarczy uszeregować strony w kolejności od największej do najmniejszej wagi. Przykład.5. Uporządkować strony w kolejności wag, jeśli zadane są następujące linki pomiędzy nimi:, 3,3, 3,3 4. Uwaga.. W praktyce, zamiast macierzy P, Brin i Page jako macierzy Google używali: = _P+ ( _)`, Uniwersytet Ekonomiczny w Krakowie 9

gdzie ` jest macierzą o wymiarach złożoną z samych jedynek, natomiast _ jest parametrem, który określa prawdopodobieństwo, że internauta jako następną odwiedzoną stronę wybierze którąś ze wskazywanych przez linki znajdujące się na danej stronie. Ta modyfikacja pozwala uniknąć pewnych problemów matematycznych (więcej o tym w rozdziale 4), a ponadto uchyla nierealistyczne założenie, że użytkownik na kolejną stronę wchodzi jedynie na podstawie linków ze strony, na której aktualnie jest. Na podstawie różnych badań Page i Brin przyjęli _ =,85 i prawdopodobnie zbliżona wartość jest używana w algorytmie wyszukiwania do dziś. Uwaga.. W praktyce macierze Google mogą mieć olbrzymie rozmiary. Dlatego ważne jest poznanie sposobów znacznie szybszego rozwiązywania dużych układów równań liniowych niż metody Gaussa i Gaussa-Jordana, nie mówiąc już o wyznacznikowej. Szczególnie użyteczne w tym przypadku są metody iteracyjne, które poznamy w rozdziale 3..5. Rozkład macierzy na iloczyn macierzy trójkątnych Twierdzenie.. Jeżeli macierz - jest macierzą kwadratową stopnia, której wszystkie minory główne kątowe są różne od zera, to istnieją macierze trójkątna dolna g i trójkątna górna (obie stopnia ), takie że: - =g (.9) Rozkład ten nie jest jednoznaczny. Jeśli jednak założymy, że wszystkie elementy głównej przekątnej są równe np., to otrzymany rozkład jest jednoznaczny.,,,! e! c,,,! d=ce e d c! d,!,!,!! e! e! e!! Etap. Wyznaczamy pierwszą kolumnę macierzy g i pierwszy wiersz macierzy. Etap. Wyznaczamy drugą kolumnę macierzy g i drugi wiersz macierzy. Etap -ty. Wyznaczamy -tą kolumnę macierzy g oraz -ty wiersz macierzy. Uniwersytet Ekonomiczny w Krakowie 3

e e e!,,,! g =? e e +e e! +e! @=c,,,! d (.) e! e! +e! e!! +e!! +e!!,!,!,!! Porównując elementy obu macierzy otrzymujemy równości: e =,, e =,, e! =,!, e =, = 3 i 33, e! =,!! = 34 i 33, e +e =, e =, e, (.) e! +e! =,! e! =,! e!, e! +e! =,!! = 4i 3 j 34 i, e!! +e!! +e!! =,!! e!! =,!! e!! e!!. Oczywiście nie ma potrzeby zapamiętywania powyższych wzorów. Aby wyznaczyć macierze g i wystarczy, tak naprawdę, w odpowiedniej kolejności sprawdzać czy iloczyn powstających macierzy g i daje w rezultacie macierz -. Przykład.6. Przedstawić macierz - w postaci iloczynu macierzy trójkątnych. - = c 5 d Uniwersytet Ekonomiczny w Krakowie 3

Jeżeli macierz - dodatkowo (oprócz założenia o minorach kątowych głównych) jest macierzą symetryczną, czyli - = - X to można ją przedstawić w postaci iloczynu dwóch macierzy trójkątnych, z których jedna jest transponowana względem drugiej, a więc: Np. dla macierzy stopnia trzeciego: - = X (.),,,!! c,,,! d = c d c! d,!,!,!!!!!!!! Elementy macierzy wyliczamy z równości: =,, =,,! =,!, =,, (.3) +! +! =,!, =,!!.! +! +!! W tym wypadku również nie ma potrzeby zapamiętywania powyższych wzorów. Aby wyznaczyć macierz, wystarczy, tak naprawdę, w odpowiedniej kolejności sprawdzać czy iloczyn powstających macierzy X i daje w rezultacie macierz -. Przykład.7. Macierz - przedstawić w postaci iloczynu X. Wówczas: = =, = = =,! - = c 5 d =c d c! d 4!!!!!!! =! = =, + =5 = 5 4 = =,! +! =! = k = 4,! +! +!! =4!! =4 4 6=4!! =. Uniwersytet Ekonomiczny w Krakowie 3

Czyli: c 5 d = c d c 4 d 4 4 W oparciu o te dwie metody rozkładu macierzy na iloczyn macierzy trójkątnych mamy dwie metody dokładne rozwiązywania układów równań liniowych: metodę Cholesky ego i metodę Banachiewicza..6. Metoda Cholesky ego Mamy do rozwiązania układ równań: - =. M Macierz - przedstawiamy w postaci iloczynu macierzy trójkątnych g i, czyli - =g. Wówczas: - = g = gm = = m (.4) Zatem rozwiązujemy dwa układy równań o macierzach trójkątnych. Przykład.8. Rozwiązać układ równań metodą Cholesky ego. +! = o +5! = 5 +! =5 Uniwersytet Ekonomiczny w Krakowie 33

.7. Metoda Banachiewicza W metodzie Banachiewicza wykorzystujemy rozkład macierzy - na iloczyn X. - = X = X m = =m (.5) Przykład.9. Rozwiązać układ równań metodą Banachiewicza. +! = o +5 = 5 + 4! = - = c 5 d = X =c d c 4 d (obliczenia w przykładzie.7). 4 4 Zamiast układu wyjściowego rozwiązujemy dwa układy równań: p = o p + p = 5 p +4p +p! = i kolejno otrzymujemy: p =, p =, p! = 6,! = 3, =, = 3. oraz +! = p o +4! = p! = p! Dodatkowa informacja złożoność obliczeniowa Przedstawione powyżej algorytmy znacząco przyspieszają rozwiązywanie dużych układów równań. Złożoność obliczeniowa rozwiązywania takich układów przez wyznaczniki wynosi bowiem q(!), natomiast metodom z tego rozdziału wystarczy czas q(! ), gdzie jest rozmiarem macierzy. W praktycznej implementacji metoda Banachiewicza działa około razy szybciej niż metoda Cholesky ego, zaś ta kilka razy szybciej od metod eliminacji Gaussa i Gaussa-Jordana. Ponadto, znana jest drobna modyfikacja metod Cholesky ego i Banachiewicza, która pozwala obniżyć złożoność obliczeniową do q(,!s+ ). Tym samym, są to najszybsze znane metody rozwiązywania układów równań liniowych. Mimo to, dla szczególnie dużych układów równań, wszystkie metody te mogą być wciąż zbyt wolne. W następnym rozdziale przekonamy się, jak rozwiązać ten problem. Uniwersytet Ekonomiczny w Krakowie 34