Dwie metody rozwiązywania układów równań liniowych:

Slides:



Advertisements
Podobne prezentacje
OBLICZENIA NUMERYCZNE
Advertisements

Modelowanie i symulacja
Macierze i wyznaczniki
Metody numeryczne część 1. Rozwiązywanie układów równań liniowych.
Macierze, wyznaczniki, odwracanie macierzy i wzory Cramera
Metoda simpleks Simpleks jest uniwersalną metodą rozwiązywania zadań programowania liniowego. Jest to metoda iteracyjnego poprawiania wstępnego rozwiązania.
Metody rozwiązywania układów równań liniowych
Wzory Cramera a Macierze
Badania operacyjne. Wykład 2
Metody numeryczne wykład no 2.
Metody Numeryczne Wykład no 3.
Problemy nieliniowe Rozwiązywanie równań nieliniowych o postaci:
Liniowość - kryterium Kryterium Znane jako zasada superpozycji
Metoda węzłowa w SPICE.
Problemy nieliniowe Rozwiązywanie równań nieliniowych o postaci:
Dwie metody rozwiązywania układów równań liniowych:
Sortowanie Zajęcia 13.
Wyrównanie metodą zawarunkowaną z niewiadomymi Wstęp
1.
Metoda simpleks opracowanie na podstawie „Metody wspomagające podejmowanie decyzji w zarządzaniu” D. Witkowska, Menadżer Łódź Simpleks jest uniwersalną.
Zapis informacji Dr Anna Kwiatkowska.
Metody matematyczne w Inżynierii Chemicznej
Metody numeryczne Wykład no 2.
Grupa 1 Sposoby rozwiązywania układów równań stopnia I z dwiema i z trzema niewiadomymi. Wykresy funkcji w szkole ponadgimnazjalnej.
Matematyka.
Układy równań 23x - 31 y = 1 x – y = - 8 x = -1 y - x = 1 x + y = 11
Zbiór do posortowania mieści się w pamięci
Matematyka Architektura i Urbanistyka Semestr 1
Wyrażenia algebraiczne
Wykład III Sygnały elektryczne i ich klasyfikacja
Teoria sterowania 2012/2013Sterowanie – użycie obserwatorów pełnych II Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 1 Sterowanie.
Obserwatory zredukowane
II Zadanie programowania liniowego PL
Równania rekurencyjne
Metody iteracyjne rozwiązywania układów równań liniowych
Sterowanie – metody alokacji biegunów II
Algebra Przestrzenie liniowe.
Źródła błędów w obliczeniach numerycznych
Materiały pochodzą z Platformy Edukacyjnej Portalu Wszelkie treści i zasoby edukacyjne publikowane na łamach Portalu
Matematyka i system dwójkowy
Rozwiązywanie liniowych układów równań metodami iteracyjnymi.
II Zadanie programowania liniowego PL
Materiały pochodzą z Platformy Edukacyjnej Portalu
METODA ELIMINACJI GAUSSA
Rozwiązywanie układów równań liniowych różnymi metodami
METODA ELIMINACJI GAUSSA ASPEKTY NUMERYCZNE
Wyznaczniki, równania liniowe, przestrzenie liniowe Algebra 1
Wstęp do metod numerycznych
opracowała: Anna Mikuć
Metody Numeryczne Ćwiczenia 9
Metody Numeryczne Ćwiczenia 10 Rozwiązywanie liniowych układów równań metodą LU.
Tematyka zajęć LITERATURA
Wykłady z matematyki „W y z n a c z n i k i”
Wstęp do metod numerycznych
Wstęp do metod numerycznych
Zagadnienie własne Macierz wektorów własnych V=(v1,v2,...,vn) przekształca zatem macierz A do postaci diagonalnej: W większości zastosowań w chemii i fizyce.
Metody rozwiązywania układów równań nieliniowych
Metody nieinkluzyjne: Metoda iteracji prostej.
Matematyka Ekonomia, sem I i II.
Metody rozwiązywania układów równań liniowych
Wykład Rozwinięcie potencjału znanego rozkładu ładunków na szereg momentów multipolowych w układzie sferycznym Rozwinięcia tego można dokonać stosując.
METODY NUMERYCZNE Katedra Mikroelektroniki i Technik Informatycznych
SciLab.
 Formuła to wyrażenie algebraiczne (wzór) określające jakie operacje ma wykonać program na danych. Może ona zawierać liczby, łańcuchy znaków, funkcje,
Modele nieliniowe sprowadzane do liniowych
Wyrażenia algebraiczne
Treść dzisiejszego wykładu l Postać standardowa zadania PL. l Zmienne dodatkowe w zadaniu PL. l Metoda simpleks –wymagania metody simpleks, –tablica simpleksowa.
ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ
Rozpatrzmy następujące zadanie programowania liniowego:
Elementy cyfrowe i układy logiczne
Zapis prezentacji:

Dwie metody rozwiązywania układów równań liniowych: Bezpośrednie Iteracyjne

Metody bezpośrednie Transformują układ równań na inny układ równań (prostszy do rozwiązania) Transformacjom podlegają równocześnie lewa i prawa strona równania:

Metody bezpośrednie Operacje wykorzystywane w przekształceniach:

Dekompozycja LU Potrzeba: układy równań rozwiązywane wielokrotnie, dla różnych wektorów danych bi (RHS – prawe strony równań) Uzupełnienie macierzy A o wszystkie wektory bi:

Dekompozycja LU W fazie eliminacji Gaussa-Jordana przekształceniom podlegają wszystkie wektory bi, Faza wstecznego podstawiania jest realizowana dla każdego bi osobno Dekompozycja LU oferuje bardziej ekonomiczny i elastyczny schemat (nie trzeba znać z góry bi)

Dekompozycja LU Dekompozycja LU kwadratowej macierzy A: gdzie L – macierz trójkątna dolna, U – macierz trójkątna górna:

Dekompozycja LU Dekompozycja nie jest unikalna (nieskończenie wiele możliwych) Niektóre ograniczenia dają metodę z nazwą:

Dekompozycja LU Idea zastosowania: Najpierw rozwiązanie Ly=b (podstawianie wprzód) Następnie rozwiązanie Ux=y (podstawianie wstecz) Gdy już są znane L, U, to dla każdego wektora bi potrzebne są dwa tanie procesy podstawiania

Dekompozycja Doolittle Dekompozycja ma ścisły związek z eliminacją Gaussa Po dekompozycji: Przed dekompozycją:

Dekompozycja Doolittle Zastosowanie eliminacji Gaussa: A(2,:)=A(2,:)-L21 A(1,:) A(3,:)=A(3,:)-L31 A(1,:) A(3,:)=A(3,:)-L32 A(2,:)

Dekompozycja Doolittle Macierz U uzyskiwana w trakcie eliminacji Gaussa-Jordana jest identyczna, jak w dekompozycji Doolittle Macierz L dekompozycji Doolittle składa się ze współczynników używanych do eliminacji kolejnych równań w metodzie Gaussa-Jordana Dekompozycję Doolittle można więc zrealizować poprzez eliminację Gaussa-Jordana, w której mnożniki używane do eliminacji tworzą macierz L

Dekompozycja Doolittle Mnożniki eliminacyjne można zapisywać w miejsce zer w przekształcanej macierzy A

Dekompozycja Doolittle

LU: rozwiązanie układu I

LU: rozwiązanie układu II

Dekompozycja Cholesky’ego Dekompozycja o postaci: Macierz A musi być: Symetryczna Dodatnio określona Takie macierze pojawiają się w wielu zastosowaniach, jak choćby w metodzie najmniejszych kwadratów (później w tym semestrze)

Cholesky

Cholesky Macierz A jest symetryczna, więc można się zajmować tylko częścią trójkątną dolną Sześć równań

Cholesky pierwsza kolumna: druga kolumna: trzecia kolumna:

Specjalne rodzaje macierzy Macierze rzadkie – większość elementów ma wartość zero Macierze wstęgowe – macierze rzadkie, w których elementy niezerowe są położone tylko na głównej przekątnej i przekątnych przyległych

Macierze rzadkie Macierz trójprzekątniowa – elementy tylko na głównej przekątnej i dwóch przekątnych przyległych

Macierz trójprzekątniowa Bardzo mało kosztowne pod względem pamięci (np. dla m=n=100, 298 vs. 10000 liczb)

Dekompozycja LU 3-diag A(k,:)=A(k,:)-c(k-1)/d(k-1)*A(k,:), k=2,3...n e(k) nie ulega zmianie, mnożnik eliminacyjny jest zapisywany w pozycji c(k-1):

Dekompozycja LU 3-diag

Rozwiązanie po dekompozycji Faza Ly=b:

Rozwiązanie po dekompozycji Faza Ux=y:

Metody iteracyjne

Algorytm Gaussa-Seidela Algebraiczny zapis i-tego równania Wyłączając komponent xi:

Algorytm Gaussa-Seidela Rozwiązując: Pomysł na schemat iteracyjny:

Algorytm Gaussa-Seidela Procedura startuje z pewnego wstępnie wybranego (np. losowo) oszacowania rozwiązania xo Zastosowanie wzoru: poprawia oszacowanie i tworzy jeden cykl algorytmu Procedura jest powtarzana dotąd, aż zmiana xp w stosunku do xp-1 w kolejnej iteracji p jest nieznaczna

Gauss-Seidel - relaksacja Wartość xp w kolejnej iteracji jest sumą ważoną: ω jest współczynnikiem relaksacji: Gdy ω=1 – efektywnie brak relaksacji Gdy ω < 1 – interpolacja Gdy ω >= 1 - ekstrapolacja

Gauss-Seidel

Dobieranie współczynnika ω Zazwyczaj stosuje się przepis: gdzie: jest przeregulowaniem w k-tej iteracji bez relaksacji, k powinno być rzędu 10, a p >= 1

Gauss-Seidel z relaksacją Przeprowadzić k (np. k=10) iteracji bez relaksacji, czyli dla ω = 1, zarejestrować Δx(k) Przeprowadzić dodatkowe p (p >= 1) iteracji bez relaksacji, zarejestrować Δx(k+p) Z podanego wzoru wyznaczyć ωopt i resztę obliczeń przeprowadzać z relaksacją ωopt

Piwot - motywacja Kolejność używania równań może mieć decydujący wpływ na rozwiązanie

Piwot - motywacja Przykład. (rozwiązanie  x1=x2=x3=1 „Dobre” uporządkowanie: Algorytm Gaussa-Jordana zawiedzie (dzielenie przez zero w pierwszej operacji) „Złe” uporządkowanie:

Dwa ostatnie równania są sprzeczne Piwot - motywacja A gdyby to nie było zero, ale bardzo mała wartość... 1/ε, 2/ε jest bardzo duże Dwa ostatnie równania są sprzeczne Po eliminacji pierwszego równania:

Piwot - motywacja Jeśli nawet zła kolejność rozwiązywania nie prowadzi do takich krytycznych sytuacji, to akumulacja błędów zaokrąglania czyni często rozwiązanie całkowicie bezwartościowym

Diagonalna dominacja Stosując piwot, dążymy do uzyskania diagonalnej dominacji Macierz wykazuje d.d., jeśli w każdym wierszu wyraz na przekątnej jest większy od sumy pozostałych wyrazów (w sensie wartości bezwzględnych):

Diagonalna dominacja Przykład: Macierz nie wykazuje d.d.: ... ale po przestawieniu wierszy wykazuje:

Skalowany piwot Jak poprzestawiać wiersze, żeby uzyskać d.d. (wtedy najmniej podatne na problemy rozwiązanie) Przydatne też, aby wyraz na przekątnej miał nie tylko wartość dominującą w wierszu, ale i możliwie jak największą z wszystkich dostępnych w macierzy

Skalowany piwot Dodatkowy wektor kolumnowy współczynników skalujących: Wyznaczony przez:

Skalowany piwot Rozstrzygnięcia posługują się relatywną wielkością wyrazów: Eliminacja przy użyciu wiersza k: Zamiast akceptować automatycznie Akk jako dzielnik, poszukiwany jest poniżej lepszy wiersz piwotowy (dlaczego tylko poniżej?)

Skalowany piwot Wybierany jest wiersz p, w którym Apk ma największą względną wielkość: Po znalezieniu takiego wiersza, zamienia się go miejscami z wierszem k (stosowna zamiana musi też być dokonana w wektorze współczynników skalujących s)

Skalowany piwot

Skalowany piwot Pomocnicza funkcja swapRows:

Dekompozycja Doolittle W piwocie zamieniamy miejscami wiersze, dbając to, żeby zamiana dotyczyła także wektora b (RHS) Przy dekompozycji LU szykujemy się na „przyszłe” wektory bj, ale ich wyrazy będą uporządkowane wg pierwotnej kolejności Wyrazy wektorów bj przed rozwiązaniem korzystającym z LU należy poddać przestawieniu takiemu samemu, jak w czasie eliminacji Gaussa

Dekompozycja Doolittle W algorytmie Gaussa z piwotem potrzebny jest dodatkowy wektor permutacyjny p, wstępnie równy (1:n)’ Zamiana wierszy miejscami dotyczy także wektora p Po zakończonym algorytmie G.-J. Wektor p wskazuje kolejność wierszy Uporządkowanie „przyszłych” wektorów b  w zapisie Matlab: b(p)