Metody rozwiązywania układów równań liniowych

Slides:



Advertisements
Podobne prezentacje
OBLICZENIA NUMERYCZNE
Advertisements

Wykład 4 2. Przykłady ruchu 1.5 Prędkość i przyśpieszenie c.d.
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.
Wykład no 11.
Dwie metody rozwiązywania układów równań liniowych:
Metoda węzłowa w SPICE.
Dwie metody rozwiązywania układów równań liniowych:
Materiały pochodzą z Platformy Edukacyjnej Portalu
Podstawy rachunku macierzowego
1.
Metoda simpleks opracowanie na podstawie „Metody wspomagające podejmowanie decyzji w zarządzaniu” D. Witkowska, Menadżer Łódź Simpleks jest uniwersalną.
OPORNOŚĆ HYDRAULICZNA, CHARAKTERYSTYKA PRZEPŁYWU
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.
Metoda różnic skończonych I
KINEMATYKA MANIPULATORÓW I ROBOTÓW
Układy równań 23x - 31 y = 1 x – y = - 8 x = -1 y - x = 1 x + y = 11
odwracania macierzy. Macierz odwrotna Sposoby Postaraj się przewidzieć
Obserwatory zredukowane
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
II Zadanie programowania liniowego PL
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
Zakładamy a priori istnienie rozwiązania α układu równań.
MECHANIKA NIEBA WYKŁAD r.
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
Rozwiązywanie liniowych układów równań metodami iteracyjnymi.
KONKURS ZANIM ROZPOCZNIEMY PREZENTACJĘ ZAPRASZAMY DO WZIĘCIA UDZIAŁU W KONKURSIE NA NAJSZYBSZE ROZWIĄZANIE UKŁADU RÓWNAŃ.
II Zadanie programowania liniowego PL
Materiały pochodzą z Platformy Edukacyjnej Portalu
METODA ELIMINACJI GAUSSA
Metody numeryczne szukanie pierwiastka metodą bisekcji
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
Metody Numeryczne Ćwiczenia 9
Tematyka zajęć LITERATURA
Wykłady z matematyki „W y z n a c z n i k i”
Materiały pochodzą z Platformy Edukacyjnej Portalu
Wstęp do metod numerycznych
Wstęp do metod numerycznych
Zagadnienie i algorytm transportowy
Trochę algebry liniowej.
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.
Regresja liniowa Dany jest układ punktów
METODY NUMERYCZNE Katedra Mikroelektroniki i Technik Informatycznych
SciLab.
D. Ciołek BADANIA OPERACYJNE – wykład 2
DALEJ Sanok Spis treści Pojęcie funkcji Sposoby przedstawiania funkcji Miejsce zerowe Monotoniczność funkcji Funkcja liniowa Wyznaczanie funkcji liniowej,
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Ń
Rozwiązywanie układów równań Radosław Hołówko Konsultant: Agnieszka Pożyczka.
Opracowanie Joanna Szymańska Konsultacja Bożena Hołownia.
Rozpatrzmy następujące zadanie programowania liniowego:
Zapis prezentacji:

Metody rozwiązywania układów równań liniowych

Parę słów o macierzach Macierz m´n: tablica m na n (m wierszy n kolumn) liczb (np. tabliczka mnożenia). Macierz kwadradowa: m=n Macierz symetryczna (zawsze kwadratowa): aij=aji Macierz transponowana AT: (AT)ij=aji Macierz nieosobliwa: macierz o niezerowym wyznaczniku. Macierz dodatnio określona: xTAx>0 dla każdego niezerowego wektora x. Norma euklidesowa macierzy: Norma spektralna macierzy Wskaźnik uwarunkowania macierzy

Metody skończone: Metoda Gaussa Metoda Gaussa-Jordana Metody Choleskiego Metoda Householdera Metoda sprzężonych gradientów Metody iteracyjne dla dużych układów równań: Metoda Jacobiego Metoda Gaussa-Seidla

Metoda eliminacji Gaussa z wyborem elementu głównego w kolumnie Układ równań sprowadzamy do postaci trójkątnej Układ z macierzą trójkątną można następnie łatwo rozwiązać zaczynając od obliczenia wartości xn z n-tego równania, następnie wstawić xn do równania n-1 i wyliczyć z niego xn-1, następnie wstawić xn oraz xn-1 do równania n-2 i wyliczyć xn-2 aż do dotarcia do równania pierwszego i wyznaczenia x1.

Wybieramy równanie i takie, że |ai1| jest największym elementem w pierwszej kolumnie po czym przestawiamy i-te równanie na początek i eliminujemy x1 z równań od 2 do n. Procedurę powtarzamy z macierzą A(1) o rozmiarach (n-1)x(n-1) i wektorem b(1) o rozmiarze n-1, eliminując z nich drugą zmienną i otrzymując macierz A(2) o rozmiarach (n-2)x(n-2) i wektor b(2) o rozmiarze n-2. W ten sam sposób postępujemy z kolejnymi macierzami A(2), A(3),..., A(n-1) oraz wektorami b(2), b(3),..., b(n-1).

Dla j-tego kroku Po zakończeniu operacji otrzymujemy układ równań z macierzą trójkątną p jest liczbą przestawień wierszy macierzy A podczas sprowadzania układu równań do postaci trójkątnej.

Z otrzymanego układu równań z macierzą trójkątną wyznaczamy po kolei xn, xn-1,..., x1. Wysiłek obliczeniowy (liczba mnożeń i dzieleń) w metodzie eliminacji Gaussa: Faktoryzacja macierzy A: n(n2-1)/3 operacji Przekształcenie wektora b: n(n-1)/2 operacji Obliczenie x: n(n+1)/2 operacji. Razem: n3/3+n2-n/3≈n3/3 operacji. Kod źródłowy metody eliminacji Gaussa.

Zastosowania metody eliminacji Gaussa i innych metod rozwiązywania układów równań liniowych. 1. Odwracanie macierzy Należy więc jednocześnie rozwiązać n układów równań z wektorami jednostkowymi poszczególnych osi w przestrzeni n-wymiarowej jako wyrazami wolnymi. Wszystkie wektory wyrazów wolnych przekształca się jednocześnie w czasie faktoryzacji macierzy A. Koszt obliczeniowy operacji wynosi (4/3)n3-n/3 operacji.

2. Mnożenie macierzy przez macierz odwrotną Jeżeli macierz A ma rozmiar nxn to macierz B musi mieć n wierszy (liczba kolumn może być dowolna, np. m). Zagadnienie sprowadza się do jednoczesnego rozwiązania m układów równań liniowych, których wektory wyrazów wolnych są równe kolejnym kolumnom macierzy B. Podobie jak przy odwracaniu macierzy podczas faktoryzacji A jednocześnie przekształcamy wszystkie kolumny macierzy B. Wysiłek obliczeniowy wynosi n3/3-n/3+mn2 operacji.

Metoda Gaussa-Jordana W odróżnieniu od metody eliminacji Gaussa eliminujemy poszczególne zmienne nie tylko z równań następujących po danym równaniu ale również z równań je poprzedzających. W wyniku tej operacji końcowy układ równań ma postać diagonalną a w kroku j-1 ma on następującą postać:

Dla dużych n metoda Gaussa-Jordana wymaga ok. n3/2 operacji.

Metody typu Choleskiego dla macierzy symetrycznych silnie nieosobliwych LT D L L klasyczna metoda Choleskiego tylko dla macierzy dodatnio określonych.

Postępowanie przy rozwiązywaniu układów równań metodą faktoryzacji Choleskiego. Wyznaczenie faktorów L i D. Układ przyjmuje postać LDLTx=b 2. Obliczenie pomocniczego wektora w. w=L-1b przez rozwiązanie układu równań Lw=b. Ponieważ L jest macierzą trójkątną dolną układ ten rozwiązuje się wyliczając kolejno w1, w2,…, wn podobnie jak w koncowym etapie eliminacji Gaussa. 3. Obliczenie z=D-1w (D jest macierzą diagonalną więc po prostu dzielimy wi przez dii. Ten etap nie występuje w klasycznej metodzie Choleskiego. 4. Obliczenie x poprzez rozwiązanie układu równań z macierzą trójkątną górną LTx=z Ten etap jest identyczny z ostatnim etapem metody eliminacji Gaussa. Metoda wymaga ok. n3/6 operacji (2 razy mniej niż metoda eliminacji Gaussa). Uwaga: klasyczna metoda Choleskiego wymaga ponadto n pierwiastkowań.

Klasyczna faktoryzacja Choleskiego (A=LLT)

Faktoryzacja “bezpierwiastkowa” kod źródłowy

Metoda Householdera

Iteracyjna poprawa rozwiązania układu równań liniowych Proces kończymy gdy

Metoda sprzężonych gradientów Rozwiązanie układu równań przedstawiamy jako rozwiązanie zagadnienia minimalizacji funkcji E(x), której gradient jest różnicą pomiędzy lewą a prawą stroną układu równań. Metoda polega na wykonaniu n kroków w kierunkach d0, d1,…, dn-1 stopniowo zbliżających się do kierunku jednej z osi hiperparaboloidy E(x); długość kroku w każdym kierunku jest tak dobrana aby zlokalizować minimum E na tym właśnie kierunku. Poszczególne kierunki są A-ortogonalne, tj. dk+1Adk=0

Wybieramy punkt startowy x0. Obliczamy d0=-g0=b-Ax0. Jeżeli Wybieramy punkt startowy x0. Obliczamy d0=-g0=b-Ax0. Jeżeli g0=0 procedura jest zakończona. W kroku k=0,1,…,n-1 obliczamy Wstawiamy xk+1=xk+akdk Wstawiamy gk+1=gk+akAdk. Jeżeli ||gk+|||<e kończymy proces, w przeciwnym wypadku wstawiamy a następnie wstawiamy dk+1=-gk+1+bkdk Procedura jest teoretycznie zawsze zbieżna w n krokach (0,1,…,n-1). Dla dobrze uwarunkowanego zadania zbieżność jest szybsza a dla źle uwarunkowanego zadania często występują oscylacje. Kod źródłowy metody sprzężonych gradientów.

Metody iteracji Jacobiego oraz iteracji Gaussa-Seidla Metody te stosuje się dla dużych układów równań, pojawiających się przykładowo przy rozwiązywaniu równań różniczkowych cząstkowych lub równań całkowych. Iteracja Jacobiego Wyznaczamy przybliżenie początkowe x(0) Kolejne przybliżenia x(1), x(2),…, obliczamy wyznaczając xi z i-tego równania dla i=1,2,…,n a następnie podstawiając po prawej stronie poprzednie przybliżenie x. 3. Proces kończymy jeżeli ||x(p+1)-x(p)||<d.

Metoda iteracji Gaussa-Seidla. Metoda ta różni się od metody iteracji Jacobiego tym, że kolejne przybliżenie i-tej współrzędnej wektora x obliczamy wykorzystując przybliżenia x1,…,xi-1 wyliczone w aktualnej iteracji oraz przybliżenia xi+1,…,xn z poprzedniej iteracji. Metoda iteracji Gaussa-Seidla jest zawsze zbieżna dla macierzy dodatnio określonych.

Wartość czynnika relaksacji łatwa do obliczenia. Optymalna wartość czynnika relaksacji; l1 jest największą wartością własną macierzy B=B(l)+B(r) Wartość czynnika relaksacji łatwa do obliczenia. Kod źródłowy metody Gaussa-Seidla.