Numerická stabilita algoritmů

Podobné dokumenty
3. Ortogonální transformace a QR rozklady

Interpolace, ortogonální polynomy, Gaussova kvadratura

Arnoldiho a Lanczosova metoda

Aplikovaná numerická matematika

Základy matematické analýzy

1 Projekce a projektory

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Četba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).

1. Chyby vstupních dat metody převedení úlohy na numerickou (řád použité metody) zaokrouhlovací reprezentace čísel v počítači

Úloha - rozpoznávání číslic

Přednáška 9, 28. listopadu 2014 Část 4: limita funkce v bodě a spojitost funkce

Matematika I 12a Euklidovská geometrie

FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

K oddílu VI.1 obecné slabé topologie Příklad 1. Necht X = C([0, 1]) s topologií bodové konvergence na [0, 1]. Popište všechny

Četba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).

Kapitola 12: Soustavy diferenciálních rovnic 1. řádu

Učební texty k státní bakalářské zkoušce Matematika Skalární součin. študenti MFF 15. augusta 2008

maticeteorie 1. Matice A je typu 2 4, matice B je typu 4 3. Jakých rozměrů musí být matice X, aby se dala provést

9. přednáška 26. listopadu f(a)h < 0 a pro h (0, δ) máme f(a 1 + h, a 2,..., a m ) f(a) > 1 2 x 1

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Co je obsahem numerických metod?

4. Trojúhelníkový rozklad p. 1/20

1.1 Existence a jednoznačnost řešení. Příklad 1.1: [M2-P1] diferenciální rovnice (DR) řádu n: speciálně nás budou zajímat rovnice typu

stránkách přednášejícího.

4. LU rozklad a jeho numerická analýza

Zákony hromadění chyb.

Kapitola 11: Lineární diferenciální rovnice 1/15

Apriorní rozdělení. Jan Kracík.

UMÍ POČÍTAČE POČÍTAT?

Necht L je lineární prostor nad R. Operaci : L L R nazýváme

Téma 22. Ondřej Nývlt

Datové struktury 2: Rozptylovací tabulky

10 Funkce více proměnných

Úlohy nejmenších čtverců

Aplikovaná numerická matematika

Numerické řešení nelineárních rovnic

6 Skalární součin. u v = (u 1 v 1 ) 2 +(u 2 v 2 ) 2 +(u 3 v 3 ) 2

Markov Chain Monte Carlo. Jan Kracík.

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

Numerické metody a programování. Lekce 7


Četba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

4. Aplikace matematiky v ekonomii

Úvod do problematiky numerických metod. Numerické metody. Ústav matematiky. 6. února 2006

Úročení a časová hodnota peněz

Skalární součin je nástroj, jak měřit velikost vektorů a úhly mezi vektory v reálných a komplexních vektorových prostorech.

Exponent. Integer 4 bajty až Double Integer 8 bajtů až

Přednáška 6, 6. listopadu 2013

Lineární algebra : Metrická geometrie

Digitální učební materiál

Tematický plán Obor: Informační technologie. Vyučující: Ing. Joanna Paździorová

Numerické řešení diferenciálních rovnic

2. Schurova věta. Petr Tichý. 3. října 2012

22 Základní vlastnosti distribucí

Příloha č. 1. amplitudová charakteristika filtru fázová charakteristika filtru / frekvence / Hz. 1. Určení proudové hustoty

f(c) = 0. cn pro f(c n ) > 0 b n pro f(c n ) < 0

MATURITNÍ TÉMATA Z MATEMATIKY

0.1 Úvod do matematické analýzy

Podobnostní transformace

Symetrické a kvadratické formy

Texty k přednáškám z MMAN3: 4. Funkce a zobrazení v euklidovských prostorech

Numerické metody optimalizace - úvod

Matematika (KMI/PMATE)

Klasifikace a rozpoznávání. Lineární klasifikátory

PRIMITIVNÍ FUNKCE. Primitivní funkce primitivní funkce. geometrický popis integrály 1 integrály 2 spojité funkce konstrukce prim.

Greenova funkce pro dvoubodové okrajové úlohy pro obyčejné diferenciální rovnice

Lineární algebra : Skalární součin a ortogonalita

Funkce jedn e re aln e promˇ enn e Derivace Pˇredn aˇska ˇr ıjna 2015

Princip řešení soustavy rovnic

Doporučené příklady k Teorii množin, LS 2018/2019

Derivace funkce. Přednáška MATEMATIKA č Jiří Neubauer

6. přednáška 5. listopadu 2007

Fakt. Každou soustavu n lineárních ODR řádů n i lze eliminací převést ekvivalentně na jednu lineární ODR

Numerické metody a programování. Lekce 4

Limita a spojitost funkce. 3.1 Úvod. Definice: [MA1-18:P3.1]

Agent pracující v částečně pozorovatelném prostředí udržuje na základě senzorického modelu odhaduje, jak se svět může vyvíjet.

ALGORITMY A DATOVÉ STRUKTURY

Katedra aplikované matematiky FEI VŠB Technická univerzita Ostrava

Funkce a limita. Petr Hasil. Podpořeno projektem Průřezová inovace studijních programů Lesnické a dřevařské fakulty MENDELU v Brně (LDF)

Numerické metody a programování

Program SMP pro kombinované studium

Aplikovaná numerická matematika - ANM

Hledání kořenů rovnic jedné reálné proměnné metoda půlení intervalů Michal Čihák 23. října 2012

Odhad stavu matematického modelu křižovatek

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

PRIMITIVNÍ FUNKCE DEFINICE A MOTIVACE

Limita a spojitost funkce a zobrazení jedné reálné proměnné

Připomenutí co je to soustava lineárních rovnic

Matematika 5 FSV UK, ZS Miroslav Zelený

NUMERICKÉ METODY. Problematika num. řešení úloh, chyby, podmíněnost, stabilita algoritmů. Aproximace funkcí.

5. Lokální, vázané a globální extrémy

Základní spádové metody

METRICKÉ A NORMOVANÉ PROSTORY

Matematika PRŮŘEZOVÁ TÉMATA

Diferenˇcní rovnice Diferenciální rovnice Matematika IV Matematika IV Program

Maturitní témata z matematiky

Maturitní okruhy z matematiky - školní rok 2007/2008

1 Báze a dimenze vektorového prostoru 1

Transkript:

Numerická stabilita algoritmů Petr Tichý 9. října 2013 1

Numerická stabilita algoritmů Pravidla v konečné aritmetice Pro počítání v konečné aritmetice počítače platí určitá pravidla, která jsou důležitá z matematického hlediska. Standardní model konečné aritmetiky předpokládá fl(x y) = (x y)(1 + ǫ), ǫ u, kde zastupuje operace +,,, / a fl( ) označuje, že výpočet byl proveden v konečné aritmetice počítače. 2

Numerická stabilita algoritmů Přímá a zpětná analýza chyb Uvažujme algoritmus, který řeší daný matematický problém. Použijeme-li tento algoritmus k výpočtu v aritmetice s pohyblivou řádovou čárkou, můžeme vlivem zaokrouhlovacích chyb získat nepřesné výsledky. Úkolem numerické analýzy je zjistit, jakým způsobem funguje daný algoritmus v prostředí konečné aritmetiky, a jak nepřesné výsledky může algoritmus generovat. Jinak řečeno, ptáme se, zda je algoritmus spolehlivý (zda dává rozumné výsledky) i v případě, kdy počítá s nepřesnými čísly. 3

Numerická stabilita algoritmů Přesnost výpočtu, absolutní a relativní chyba Nechť f(x) reprezentuje výsledek spočtený přesným algoritmem a fl(f(x)) výsledek spočtený algoritmem v konečné aritmetice (x reprezentuje vstupní data). Přesnost výpočtu můžeme měřit v absolutním smyslu pomocí f(x) fl(f(x)), kde je vhodná norma, nebo v relativním smyslu pomocí f(x) fl(f(x)). f(x) V této přednášce budeme k měření přesnosti algoritmu používat relativní chybu. Relativní chyba výpočtu v nejlepším případě úměrná strojové přesnosti f(x) fl(f(x)) = O(u). f(x) 4

Numerická stabilita algoritmů Význam O(u) O(u) označuje neurčité číslo, jehož velikost lze omezit pomocí O(u) Ku. K nezávisí na datech, může záviset na dimenzi úlohy. Závislost K na dimenzi problému je obvykle lineární, kvadratická či kubická v nejhorším případě. Pokud je závislost K na n například exponenciální (např. K = 2 n ) numerická nestabilita s rostoucím n. 5

Numerická stabilita algoritmů Analýza chyb Smyslem analýzy chyb je zjistit, jaké (největší) chyby se algoritmus může při výpočtu v konečné aritmetice dopustit. To, jak algoritmus v konečné aritmetice chybuje lze měřit a analyzovat dvěma základními způsoby. Přímá analýza chyb. Postupujeme podle algoritmu a snažíme se popsat šíření elementárních zaokrouhlovacích chyb. Efektivní přímý odhad chyby je však možný jen zřídka. Zpětná analýza chyb. Hledáme modifikovaná vstupní data úlohy tak, aby přibližné řešení spočtené algoritmem v konečné aritmetice počítače bylo přesným řešením té samé úlohy, avšak s modifikovanými vstupními daty. Cíl: interpretovat zaokrouhlovací chyby vzniklé při výpočtu pomocí změn vstupních dat. 6

Numerická stabilita algoritmů Analýza chyb 7

Příklad Přímá a zpětná analýza chyb při výpočtu skalárního součinu Pokud máme posloupnost operací jako např. s = x T y, x, y F n, kde F n označuje vektory délky n, jejichž prvky jsou čísla v pohyblivé řádové čárce (x i F, y i F, i = 1,..., n), potom budeme výsledek spočtený algoritmem 01 s = 0 02 for j = 1 : n do 03 s = s + x j y j 04 end v konečné aritmetice počítače zapisovat ve tvaru s = fl(x T y). 8

Analýza chyb při výpočtu skalárního součinu Zpětná analýza chyb I s 0 = 0, nechť s j je hodnota s na konci j-tého cyklu, s j = fl(s j 1 + x j y j ). Podle pravidla o chybě vzniklé při jedné operaci dostáváme s j = [s j 1 + x j y j (1 + ε j )](1 + δ j ), kde ε j u, δ j u. Indukcí plyne n n s n = x j y j (1 + ε j ) (1 + δ i ), j=1 i=j přičemž δ 1 = 0 a kde ε j u, δ j u. Definujme n µ j (1 + ε j ) (1 + δ i ) 1. i=j 9

Analýza chyb při výpočtu skalárního součinu Zpětná analýza chyb II Potom platí n s n = x j y j (1 + µ j ). j=1 Vypočtený výsledek jsme vyjádřili jako přesný výsledek skalárního součinu s perturbovanými (modifikovanými) daty, s n = x T ŷ, kde x = x a ŷ má prvky ŷ j = y j (1 + µ j ). Toto je příklad zpětné analýzy chyb, Vypočtený výsledek = přesný výsledek na perturbovaných datech. Úkolem zpětné analýzy chyb je odhadnout velikosti µ j a vyjádřit relativní vzdálenosti přesných a perturbovaných dat. 10

Analýza chyb při výpočtu skalárního součinu Přímá analýza chyb Dále lze ukázat, že s n = x T y + z, z = Přímá analýza chyb: vyjádřili jsme n x j y j µ j. j=1 Vypočtený výsledek = přesný výsledek + chyba. Úkolem přímé analýzy chyb je odhadovat velikost chyby z. Přímá a zpětná analýza chyb reprezentují dva pohledy, jak interpretovat chyby při výpočtech. 11

Odhady chyb při výpočtu skalárního součinu Nechť α i u, i = 1,..., n a nechť n u < 0.01. Potom platí n (1 + α i ) = 1 + β n, i=1 kde β n 1.01 n u (Lemma (Higham 2002)). Použitím tohoto lemmatu lze ukázat, že platí µ j 1.01 n u fl(x T y) x T y 1.01 n u x T y. Odtud již lehce plyne, že platí fl(x T y) = x T ŷ, kde x x x = 0 a y ŷ y 1.01 n u. 12

Zpětná stabilita algoritmu Přímá analýza chyb nám obvykle dává odpověď na otázku jak přesný je algoritmus v konečné aritmetice. Na základě zpětné analýzy chyb dospějeme často k poznání, že spočtené řešení úlohy lze interpretovat jako přesné řešení úlohy pro modifikovaná (perturbovaná) počáteční data, která jsou v jistém smyslu blízká původním počátečním datům. Definice: Algoritmus f(x) je zpětně stabilní, pokud platí fl(f(x)) = f( x) pro nějaké x splňující x x x = O(u), Z předchozího, výpočet skalárního součinu je zpětně stabilní. 13

Přesnost zpětně stabilního algoritmu Algoritmus f popis, jak řešit daný problém p. Problém p lze přitom vidět jako zobrazení, které vstupním datům z normovaného vektorového prostoru X přiřazuje řešení z normovaného vektorového prostoru Y, p : X Y. p je obvykle nelineární, ale bývá alespoň spojité. Dobře podmíněný problém je takový, že malé změny vstupních dat x vedou na malé změny v p(x). Špatně podmíněný problém je takový, že malé změny vstupních dat x vedou na velké změny v p(x). Lze ukázat, že pokud je algoritmus f řešící problém p zpětně stabilní a má-li problém p(x) podmíněnost κ(x), pak fl(f(x)) f(x) f(x) κ(x)o(u). 14