Metody numeryczne i symulacja

Slides:



Advertisements
Podobne prezentacje
Zakład Mechaniki Teoretycznej
Advertisements

Modelowanie i symulacja
Modelowanie i symulacja
Modelowanie i symulacja
Rozwiązywanie równań różniczkowych metodą Rungego - Kutty
Metody numeryczne część 1. Rozwiązywanie układów równań liniowych.
Wybrane zastosowania programowania liniowego
IV Tutorial z Metod Obliczeniowych
DYSKRETYZACJA SYGNAŁU
Zadanie z dekompozycji
Badania operacyjne. Wykład 1
Badania operacyjne. Wykład 2
Metody numeryczne Wykład no 1.
Wykład no 11.
Przetwarzanie sygnałów (wstęp do sygnałów cyfrowych)
Liniowość - kryterium Kryterium Znane jako zasada superpozycji
Metoda węzłowa w SPICE.
Modelowanie i symulacja
Statystyka w doświadczalnictwie
Ekonometria wykladowca: dr Michał Karpuk
Systemy dynamiczne 2010/2011Systemy i sygnały - klasyfikacje Kazimierz Duzinkiewicz, dr hab. inż.Katedra Inżynierii Systemów Sterowania 1 Dlaczego taki.
1.
Metody numeryczne w chemii
Algorytmy i struktury danych
Korelacje, regresja liniowa
Metody Symulacyjne w Telekomunikacji (MEST) Wykład 4: Generowanie zdarzeń  Dr inż. Halina Tarasiuk p. 337, tnt.tele.pw.edu.pl.
Matematyka.
AGH Wydział Zarządzania
POJĘCIE ALGORYTMU Pojęcie algorytmu Etapy rozwiązywania zadań
Elementy Rachunku Prawdopodobieństwa i Statystyki
AUTOMATYKA i ROBOTYKA (wykład 5)
Zakładamy a priori istnienie rozwiązania α układu równań.
Częstotliwość próbkowania, aliasing
METODY NUMERYCZNE I OPTYMALIZACJA
II. Matematyczne podstawy MK
EXCEL Wykład 4.
Wprowadzenie do ODEs w MATLAB-ie
Liczby całkowite dodatnie BCN
Źródła błędów w obliczeniach numerycznych
Stało- i zmiennopozycyjna reprezentacja liczb binarnych
MS Excel - wspomaganie decyzji
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
Metody numeryczne metody rozwiązywania problemów matematycznych za pomocą operacji na liczbach. Otrzymywane tą drogą wyniki są na ogół przybliżone, jednak.
Algorytmika.
przetwarzanie sygnałów pomiarowych
Metody numeryczne szukanie pierwiastka metodą bisekcji
WYKŁAD 3 Temat: Arytmetyka binarna 1. Arytmetyka binarna 1.1. Nadmiar
METODA ELIMINACJI GAUSSA ASPEKTY NUMERYCZNE
Wstęp do metod numerycznych
EXCEL Wstęp do lab. 4. Szukaj wyniku Prosta procedura iteracyjnego znajdowania niewiadomej spełniającej warunek będący jej funkcją Metoda: –Wstążka Dane:
Tematyka zajęć LITERATURA
Wybrane aspekty programowania w C++ (i nie tylko)
Warstwowe sieci jednokierunkowe – perceptrony wielowarstwowe
Wybrane zagadnienia inteligencji obliczeniowej Zakład Układów i Systemów Nieliniowych I-12 oraz Katedra Mikroelektroniki i Technik Informatycznych proponują.
Grafika 2d - Podstawy. Kontakt Daniel Sadowski FTP: draver/GRK - wyklady.
GeneracjeTechnologia Architektura przetwarzania 0. Przekaźniki elektromechaniczne 1. Lampy elektronowe 2. Tranzystory 3. Układy scalone 3.5.Układy dużej.
© Prof. Antoni Kozioł, Wydział Chemiczny Politechniki Wrocławskiej MATEMATYCZNE MODELOWANIE PROCESÓW BIOTECHNOLOGICZNYCH Temat – 5 Modelowanie różniczkowe.
e.fr/~peyre/download/ Wykład 7 Jak można wykorzystać.
STATYSTYKA – kurs podstawowy wykład 11
Jak można wykorzystać swoją wiedzę z Matlaba
Komputerowe systemy pomiarowe
Podstawowe rodzaje modeli rozmytych
Systemy neuronowo – rozmyte
Analiza numeryczna i symulacja systemów
Podstawy automatyki I Wykład /2016
MATEMATYCZNE MODELOWANIE PROCESÓW BIOTECHNOLOGICZNYCH
Wstęp do Informatyki - Wykład 6
Sterowanie procesami ciągłymi
* PROCESÓW TECHNOLOGICZNYCH
POJĘCIE ALGORYTMU Wstęp do informatyki Pojęcie algorytmu
Zapis prezentacji:

Metody numeryczne i symulacja WYKŁAD 1

Metody numeryczne i symulacja dr inż. Piotr Gołąbek pgolab@poczta.onet.pl amanda.radom.net/~pgolab/ login: nummod hasło: nummod 30 godzin wykładu 30 godzin laboratorium zaliczenie laboratorium – projekty w Scilab zaliczenie wykładu – egzamin

Zagadnienia MODELOWANIE Zjawisko rzeczywiste Środowisko Skutki PSEUDOLOSOWE GENERATORY DANYCH SYMULACJA MODEL Generator danych Wyniki symulacji

Zagadnienia Zjawisko rzeczywiste Środowisko Skutki MODEL Generator danych Wyniki symulacji

Narzędzie SciLab – wzoruje się na pakiecie MATLAB, www.scilab.org MATLAB = Matrix Laboratory (Laboratorium macierzowe) Jedna z realizacji szerokiej klasy programów implementujących BLAS BLAS = Basic Linear Algebra System Linear Algebra (Algebra Liniowa) – jedna z fundamentalnych metod matematycznych stosowana w naukach przyrodniczych Inny klon: OCTAVE - http://www.octave.org/

Literatura Dryja M., Jankowscy J. i M.: „Przegląd metod i algorytmów numerycznych”, WNT, Warszawa 1989 Fortuna Z., Macukow B., Wąsowski J.: „Metody numeryczne”, WNT, Warszawa 1989 Stoer J., Burlisch R.: „Wstęp do analizy numerycznej”, PWN, Warszawa 1987 Osowski S.: "Modelowanie układów dynamicznych z zastosowaniem języka SIMULINK", Oficyna Wydawnicza Politechniki Warszawskiej, Warszawa 1999 Palczewski A.: "Równania różniczkowe zwyczajne", WNT, Warszawa 1999. Perkowski P.: "Technika symulacji cyfrowej", Wydawnictwo Naukowo-Techniczne, Warszawa 1980 Morisson F.: "Sztuka modelowania układów dynamicznych.", Wydawnictwo Naukowo-Techniczne, Warszawa 1996

Model zjawiska/systemu/procesu rzeczywistego Konkretny, materialny twór, naśladujący rzeczywiste zjawisko - model fizyczny, materialny, eksperyment – np. model do badań w tunelu aerodynamicznym albo „test dummies” – manekiny używane w symulacjach zderzeń samochodowych

Model zjawiska/systemu/procesu rzeczywistego Abstrakcyjny opis zjawiska rzeczywistego, wyrażony w jakimś formalnym systemie, najczęściej za pomocą aparatu matematycznego, ale niekoniecznie (np. jako program w języku programowania) matematyka jest językiem

Modele analogowe Szczególna klasa modeli fizycznych – konstrukcja urządzenia, które zachowuje się „tak samo” jak pierwowzór

Modele analogowe

Modele analogowe

Modele z założenia są uproszczone ? =

Modele z założenia są uproszczone Nie jest to wada tej metody, tylko jej istota, odpowiadająca celom modelowania Pomijanie pewnych szczegółów obserwowanego zjawiska aby wychwycić istotne jego aspekty jest podstawową cechą umysłu ludzkiego. Nazywa się to umiejętnością abstrakcji lub umiejętnością generalizacji

Cele modelowania Te same cele, dla których zjawiska rzeczywiste są w ogóle badane: zrozumienie zjawiska – dlaczego się zdarzyło, dlaczego miało taki przebieg i skutki optymalizacja rozwiązania problemu - jak sprawić, żeby zjawisko miało przebieg korzystny z punktu widzenia pewnego kryterium przewidywanie zjawiska – jak na podstawie przyczyn określić możliwe skutki „odwrotne” prognozowanie – jak na podstawie skutków określić możliwe przyczyny

Dlaczego stosowane są modele Najogólniej - koszt gromadzenia danych (obserwacji) o rzeczywistym zjawisku może być zbyt duży w sensie dosłownym w sensie sytuacji krytycznych koszt „nieskończony” – jeśli np. zjawisko było jednokrotne w sensie czasu – kontrakcja i ekspansja Modelowanie może być etapem procesu projektowania

Zjawiska „rzeczywiste” Akt obserwacji – tworzenie modelu Nauka – tworzenie modelu (Heraklit) Inteligencja – tworzenie modelu

Przebieg modelowania Co będzie modelowane - zakres? Czy wzrost populacji w Europie czy tylko w Polsce? Czy przepustowość sieci komputerowej czy średni czas propagacji pakietu z pewnej stacji do innej? Które wielkości (zmienne) odgrywają rolę jakościową na zjawisko i jaki jest ich ilościowy wpływ Optymalny kąt nachylenia wyrzutni: siła wiatru, siła grawitacji? Kształtowanie się kursu akcji: komunikat RPP? wskaźniki GUS?

Przebieg modelowania Jakie są zależności między wyspecyfikowanymi zmiennymi: jakościowe: reguły typu jeśli – to ilościowe: konkretne wielkości i zależności

Przebieg modelowania Formalny zapis relacji między zmiennymi: algebraiczne równania i nierówności równania różniczkowe z jedną niezależną zmienną (najczęściej czasem) - zwyczajne równania różniczkowe z więcej niż jedną niezależnymi zmiennymi (np. położenie i czas) – cząstkowe automaty, diagramy stanu grafy obrazujące zależności ilościowe zależności probabilistyczne, sieci probabilistyczne systemy reguł, np. modele rozmyte modele statystyczne, jak np. sieci neuronowe

Przebieg modelowania Analiza modelu czy istnieje rozwiązanie? czy rozwiązanie jest unikalne? czy istnieją stany stacjonarne? czy są cykle w grafie? czy występują oscylacje między różnymi stanami? Jaka jest czułość modelu na zmianę warunków (wielkości wejściowych/parametrów)

Kilka generalnych aspektów modelowania matematycznygo Zjawiska/modele liniowe vs nieliniowe Zjawiska/modele statyczne vs dynamiczne Reprezentacja ciągła/dyskretna (rozwiązanie symboliczne vs numeryczne)

Liniowość - kryterium Kryterium Znane jako zasada superpozycji W istocie: dwa warunki:

Kryterium rozstrzygające Zjawisko, które nie spełnia kryterium liniowości jest nieliniowe

Przykład W elektrotechnice obwody RLC są nazywane liniowymi Rezystor R: tgα=1/R

Przykład Co mówi kryterium?

Przykład: cewka Cewka: Prawo znane jako reguła Lenza – rozłączanie i załączanie obwodów indukcyjnych jest ryzykowne (przepięcia)

Przykład: cewka Kryterium:

Ćwiczenie Czy kondensator jest też elementem liniowym? Kondensator:

Przykład To jest układ liniowy R=1/D

Przykład To też jest układ liniowy (zasada superpozycji)

Przykłady Nie są liniowe np. zjawiska na giełdzie papierów wartościowych: „jeśli w ciągu miesiąca te akcje przyniosły 3 tys. zł, to w ciągu roku przyniosą 36 tys. zł. zysku (rzucam pracę!)” – niestety, nie.

Dlaczego tak ważne, żeby rozróżniać? Nałożenie warunku na układ to stworzenie równania lub nierówności Np.: „Przez ten rezystor (1kΩ) nie może płynąć prąd większy niż 100mA”: (czyli przypadek graniczny:)

Dlaczego tak ważne ...? Rozwiązanie równania to wyznaczenie jakiegoś interesującego parametru: Jeżeli mamy kilka zmiennych niezależnych, i nałożymy na nie kilka warunków ograniczających i wiążących je ze sobą, to powstanie zbiór (układ) równań

Dlaczego tak ważne ...? Układ równań opisujących zjawiska liniowe będzie układem równań liniowych Jeśli choć jeden fragment systemu ma charakter nieliniowy – powstanie układ równań nieliniowych Na rozwiązywanie równań/układów równań liniowych jest dobra metoda, w przypadku równań/układów równań nieliniowych – jest dużo gorzej

Równania liniowe/nieliniowe Bez problemu można rozwiązać liniowe równanie: Niektóre równania nieliniowe można rozwiązać również dość łatwo:

Równania liniowe/nieliniowe Większość jednak równań nieliniowych dostarcza nam dużo większych kłopotów:

Układy równań liniowych Na rozwiązywanie układów równań liniowych są metody, których mają trzy ważne cechy: Algorytm zawsze kończy pracę w obrębie ściśle określonego limitu liczby kroków obliczeniowych Algorytm zawsze znajduje unikalne rozwiązanie lub potrafi stwierdzić, że takiego rozwiązania nie ma Dokładność wyznaczenia rozwiązania jest związana z dokładnością obliczeń maszyny liczącej a nie jest cechą algorytmu (można więc w pewnym sensie powiedzieć, że algorytm wyznacza rozwiązanie dokładne)

Reprezentacja ciągła i dyskretna „Świat jest ciągły” (czy aby na pewno?) atomy kwanty

Paradox Zenobiusza Czy Achilles dogoni ślimaka? Nie: gdy Achilles znajdzie się w miejscu, gdzie chwilowo był ślimak, ślimak będzie już troszkę dalej...

Ciągłość

Ciągłość ε ε δ δ? Definicja: funkcja f(x) jest ciągła w punkcie x0

Ciągłość Liczby rzeczywiste – pomiędzy dowolnymi dwiema różnymi liczbami rzeczywistymi jest nieskończenie wiele innych liczb rzeczywistych Ciągłość ma dla ludzi wielkie znaczenie – bez założenia ciągłości nie można podejmować żadnych decyzji

Dyskretyzacja Ograniczenie nieskończonej ilości danych potrzebnych do opisania ciągłego obiektu Opis ciągły – tylko symbolicznie, np.: Jak to jest zapisane na płycie CD?

Dyskretyzacja Próbkowanie – mierzenie wartości sygnału w określonych, regularnych chwilach czasu (nie musi być czas, nie musi być regularnie)

Dyskretyzacja amplitudy - kwantyzacja Amplituda też jest ciągła

Dyskretyzacja, kwantyzacja To samo można oczywiście zrobić w innych dziedzinach niż tylko czas, np. w przestrzeni (obraz) Dość oczywista utrata danych, która może się dość nieprzyjemnie zamanifestować

Dyskretyzacja, kwantyzacja Niejednoznaczność uzyskanej informacji (np. tzw. aliasing, albo tzw. szum kwantyzacji):

Dyskretyzacja, kwantyzacja Utrata informacji o istotnych cechach sygnału (np. max. amplituda)

Dyskretyzacja, kwantyzacja

Dyskretyzacja, kwantyzacja Tak więc zabieg kwantyzacji i dyskretyzacji jest konieczny ... ... ale równie konieczne jest określenie związanych z tym błędów

Dyskretyzacja Problemy z aliasingiem – odpowiednia częstotliwość próbkowania, zgodnie z kryterium Nyquista, max częstotliwość, która może być reprezentowana przy próbkowaniu z częstotliwością fs to fs /2

Dyskretyzacja Problem utraty informacji o wartości ekstremalnej – odpowiedni układ próbkowania (np. tzw. track & hold)

Dyskretyzacja W każdym razie zawsze po próbkowaniu mamy pewną nieoznaczoność w czasie: próbka to wartość, która w próbkowanej funkcji leży gdzieś wewnątrz przedziału próbkowania

Kwantyzacja Typowa operacja kwantyzacyjna stosowana w praktyce symulacyjnej to reprezentacja liczb za pomocą arytmetyki komputerowej o skończonej dokładności: jako liczb całkowitych o różnej długości reprezentacji (8-, 16-, 32-bitowe – char, short int, int) jako liczb niecałkowitych o różnej długości reprezentacji – tzw. arytmetyka zmiennoprzecinkowa (32-bitowe – single oraz 64-bitowe – double)

Arytmetyka zmiennoprzecinkowa Każda liczba rzeczywista da się wyrazić, jako: (zakładając, że s jest nieskończone) Ciąg cyfr d (liczba mniejsza od 1) to tzw. mantysa, e to tzw. wykładnik (eksponent). Eksponent jest liczbą całkowitą ze znakiem. Taka sama reprezentacja jest możliwa w innych bazach, nie tylko dziesiętna.

Arytmetyka zmiennoprzecinkowa Reprezentacja o skończonej precyzji: s jest skończone, e ma ograniczony zakres: m < e < M

Arytmetyka zmiennoprzecinkowa Taka reprezentacja ma pewną określoną dokładność – liczba wyrażona w ten sposób reprezentuje pewien zakres liczb rzeczywistych. Oczywiście zbiór liczb w tej arytmetyce jest skończony. Liczby w tej arytmetyce nie są równomiernie rozłożone.

Arytmetyka zmiennoprzecinkowa Np. dla s=1, w bazie β=4 dla wykładnika w zakresie od m=-1 do M=1: ±0.9*4 –1, ±0.9* 4 0 , ± 0.9*4 1, ± 0.8*4 1,...

Arytmetyka zmiennoprzecinkowa W komputerach PC często stosuje się standard IEEE768, w którym bazą reprezentacji jest baza dwójkowa, i zdefiniowane są dwie precyzje: pojedyncza, łącznie 32 bity na liczbę: mantysa ma 24 bity (włączając bit znaku), wykładnik – 8 bitów (włączając bit znaku) podwójna, 64 bity: mantysa 53 bity, wykładnik 11 bitów

Arytmetyka zmiennoprzecinkowa Reprezentacja liczb w tej arytmetyce obarczona jest oczywistym błędem skończonej precyzji, tzw. błędem zaokrąglenia lub błędem obcięcia Prawdziwym jednak problemem są błędy występujące przy realizacji procedury obliczeniowej: tzw. overflow (przepełnienie), underflow, błędy akumulacji i kasowania

Overflow, underflow Występowanie błędu overflow jest związane z tym, że reprezentacja zmiennoprzecinkowa ma swoją maksymalną wartość: 0.9999(...)* β M Jeśli cząstkowy wynik obliczeń przekroczy tę wartość, wystąpi błąd przepełnienia

Overflow Wcale nietrudno o wystąpienie takiej sytuacji, a co gorsza, zależy to od sekwencji obliczeń

Overflow Np. obliczanie wyznacznika macierzy obejmuje obliczenie iloczynu liczb, powiedzmy: Jeśli np.: a M=100, to iloczyn nie da się wyliczyć, a iloczyn: - da

Overflow Dość typowa operacja, wyznaczenie normy (wielkości) jakiegoś wektora, np. normy Euklidesowej: (przypadek szczególny):

Underflow Błąd typu underflow jest mniej „gwałtowny”, zawsze może być naprawiony poprzez założenie wyniku równego zero

Underflow ale, np. test zmiany znaku dla procedury szukania miejsca zerowego:

Obcinanie, zaokrąglenie Zaokrąglanie: najpierw do liczby należy dodać , później dokonać obcinania β

Błędy Absolutny: prawdziwa wartość – przybliżona wartość Względny: (prawdziwa wartość – przybliżona wartość) / przwdziwa wartość

Względne błędy obcięcia i przybliżenia Błąd obcięcia Błąd przybliżenia

Błędy Każda liczba rzeczywista jest związana ze swoim przybliżeniem zmiennoprzecinkowym relacją: gdzie:

Błędy bezwzględne Często stawiany jest wymóg bezwzględnej dokładności rozwiązania (zwłaszcza procedury iteracyjne): Odpowiada to żądaniu błędu względnego:

Utrata znaczących cyfr przy dodawaniu Przykład

Akumulacja błędów

Akumulacja błędu obcinania jeśli jest używane zaokrąglanie, to błędy trochę się kasują (chociaż standardowa dewiacja rośnie), jeśli obcinanie – to jest tendencja do przesunięcia błędu w jedną stronę 0.8132*0.6135 (do czterech cyfr z obcinaniem)=0.4988 (0,0197%) 0.8132*0.6135*0.2103=0,1048 (0,1127%) 0.8132*0.6135*0.2103*0,8425 = 0,0882 (0,219%)