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

Podobné dokumenty
Floating Point. Jak je reprezentovaný a proč někdy nefunguje. 2. června 2013

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

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

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

C2115 Praktický úvod do superpočítání

Algoritmy I. Číselné soustavy přečíst!!! ALGI 2018/19

Základní principy zobrazení čísla Celá čísla s pevnou řádovou čárkou Zobrazení reálných čísel Aritmetika s binárními čísly

Numerická stabilita algoritmů

PJC Cvičení #2. Číselné soustavy a binární reprezentace proměnných

NPRG030 Programování I, 2018/19 1 / :25:37

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

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

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

Algoritmy a datové struktury

Principy počítačů I Reprezentace dat

Architektury počítačů

Aplikovaná numerická matematika

Čísla v plovoucířádovéčárce. INP 2008 FIT VUT v Brně

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

Čísla a číselné soustavy.

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

Aplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2006/2007 Radim Farana. Obsah. Obsah předmětu

Číselné soustavy v mikroprocesorové technice Mikroprocesorová technika a embedded systémy

Mikroprocesorová technika (BMPT)

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Datové typy a jejich reprezentace v počítači.

Informatika Datové formáty

Programování v jazyce C pro chemiky (C2160) 12. Specifické problémy při vývoji vědeckého softwaru

- speciální symboly + - * / =., < > <> <= >= a další. Klíčová slova jsou chráněnými útvary, které nelze použít ve významu identifikátorů.

3 Jednoduché datové typy Interpretace čísel v paměti počítače Problémy s matematickými operacemi 5

F6180 Úvod do nelineární dynamiky. F6150 Pokročilé numerické metody FX003 Plánování a vyhodnocování experimentu. F7780 Nelineární vlny a solitony

Jemný úvod do numerických metod

Superpočítač včera, dnes a zítra; v Ostravě a mimo ni

Číselné soustavy. Binární číselná soustava

Digitální učební materiál

KALKULÁTORY EXP LOCAL SIN

Struktura a architektura počítačů (BI-SAP) 6

Chyby při matematickém modelování aneb co se nepovedlo

Objektově orientovaná implementace škálovatelných algoritmů pro řešení kontaktních úloh

Zdroje chyb. Absolutní a relativní chyba. Absolutní chyba. Absolutní chyba přibližného čísla a se nazývá absolutní hodnota rozdílu přesného

Struktura a architektura počítačů (BI-SAP) 5

Digitální učební materiál

Numerické integrace některých nediferencovatelných funkcí

Paměť počítače. alg2 1

Základy matematické analýzy

Pohled do nitra mikroprocesoru Josef Horálek

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.

Racionální čísla, operátory, výrazy, knihovní funkce

Racionální čísla, operátory, výrazy, knihovní funkce

Y36SAP. Osnova. Číselné soustavy a kódy, převody, aritmetické operace Y36SAP Poziční číselné soustavy a převody.

Ahoj mami. Uložení dat v počítači. Příklady kódování dat. IAJCE Přednáška č. 4

Lze zbohatnout pomocí matematiky?

REPREZENTACE DAT. Principy počítačů I. Literatura. Literály. Typy dat. Literály. Čísla Instrukce. Znaky. Logické hodnoty

Jak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické

Principy počítačů a operačních systémů

Pokročilá algoritmizace amortizovaná složitost, Fibonacciho halda, počítačová aritmetika

Základní jednotky používané ve výpočetní technice

Modulární aritmetika, Malá Fermatova věta.

MATA Př 3. Číselné soustavy. Desítková soustava (dekadická) základ 10, číslice 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

35POS 2010 Počítačové systémy 1 Úvod, jazyk C Doc. Ing. Bayer Jiří, Csc. Ing. Pavel Píša

MATEMATIKA II. období (4. 5. ročník)

Číselné soustavy. Jedná se o způsob reprezentace čísel.

Datové struktury 2: Rozptylovací tabulky

GEODETICKÉ VÝPOČTY I.

KTE / PPEL Počítačová podpora v elektrotechnice

Architektura počítačů Logické obvody

PB002 Základy informačních technologií

Návrh Designu: Radek Mařík

Reálná čísla a výrazy. Početní operace s reálnými čísly. Složitější úlohy se závorkami. Slovní úlohy. Číselné výrazy. Výrazy a mnohočleny

Automatická detekce anomálií při geofyzikálním průzkumu. Lenka Kosková Třísková NTI TUL Doktorandský seminář,

1 Projekce a projektory

1. Základní pojmy a číselné soustavy

LEKCE 6. Operátory. V této lekci najdete:

Dosud jsme se zabývali pouze soustavami lineárních rovnic s reálnými koeficienty.

Čísla v počítači Výpočetní technika I

Michal Fusek. 10. přednáška z AMA1. Ústav matematiky FEKT VUT, Michal Fusek 1 / 62

Úvod do programování 7. hodina

OPTIMÁLNÍ SEGMENTACE DAT

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

Pokroky matematiky, fyziky a astronomie

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Praktické využití Mathematica CalcCenter. Ing. Petr Kubín, Ph.D. Katedra elektroenergetiky, ČVUT v Praze, FEL

Užití software Wolfram Alpha při výuce matematiky

Matematika a její aplikace Matematika

Číslo hodiny. Označení materiálu. 1. Mnohočleny. 25. Zlomky. 26. Opakování učiva 7. ročníku. 27. Druhá mocnina, odmocnina, Pythagorova věta

PA152. Implementace databázových systémů

Pojem algoritmus. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava

SOUSTAVY LINEÁRNÍCH ALGEBRAICKÝCH ROVNIC

Architektura počítačů Logické obvody

Obsah. Euler-Fermatova věta. Reziduální aritmetika. 3. a 4. přednáška z kryptografie

E. Pohyblivářádováčárka

AUTOMATIZACE Úvod do programování PLC

Datové typy pro reálná čísla

Číselné soustavy. Prvopočátky. Starověký Egypt a Mezopotámie. Již staří Římané

Soustavy lineárních a kvadratických rovnic o dvou neznámých

Moderní numerické metody

Seminář z IVT Algoritmizace. Slovanské gymnázium Olomouc Tomáš Kühr

1. 1 P Ř I R O Z E N Á Č Í S L A

Wolfram Alpha. v podobě html stránky, samotný výsledek je často doplněn o další informace (např. graf, jiné možné zobrazení výsledku a

TEMATICKÝ PLÁN. září říjen

Transkript:

UMÍ POČÍTAČE POČÍTAT? O ÚSKALÍCH POČÍTAČOVÉ ARITMETIKY RNDr. Iveta Hnětynková, PhD. Katedra numerické matematiky

VÝPOČTY A SIMULACE Aplikace: chemie, fyzika, lekařství, statistika, ekonomie, stojírenství,...

POČÍTAČE A VÝPOČTY 3

TOP0 POČÍTAČE PODLE VÝPOČETNÍHO VÝKONU 4

SUPERPOČÍTAČE VE SVĚTĚ (07) Výpočetní výkon: 5

SUPERPOČÍTAČE U NÁS - IT4Innovations Ostrava Superpočítač Anselm (03) 3 344 jader 94 TFLOPS (tj. 0 operací/s) výpočetní výkon Superpočítač Salomon (05) 4. v TOP500 nejrychlejších (39. při zprovoznění) 76 896 jader PFLOPS výpočetní výkon (0 5, jako zhruba 74 000 notebooků) 6

OD REÁLNÉHO PROBLÉMU K ŘEŠENÍ MODEL, METODA, PŘIBLIŽNÝ VÝSLEDEK? Přibližné řešení CHYBY Reálný problém Výpočetní metoda CHYBY Matematický model CHYBY Model = často zjednodušený popis problému jazykem matematiky (rovnice, tabulky, ) Výpočetní metoda = postup vedoucí k získání (přibližného) řešení 7

VYUŽITÍ POČÍTAČE K ŘEŠENÍ ALGORITMUS, PROGRAM Program = popis postupu řešení v jazyce počítače = sekvence instrukcí k jednoduchým operacím Počítá počítač přesně? Můžeme výsledku věřit? Co máme udělat, abychom se na výsledek mohli spolehnout? 8

JE VÝPOČET VŽDY SPOLEHLIVÝ? n n 3 4... Přesně: Matlab:,06 8 pro x,.0 Přesně: 0,5 Matlab: 0,77 cos( x) x 9

REPREZENTACE ČÍSEL V POČÍTAČI ARITMETIKA S POHYBLIVOU ČÁRKOU Číslo je uloženo v binární (dvojkové) reprezentaci v určitém počtu bajtů (4, 8, ). Jeden bajt má 8 bitů pro uložení 0 nebo. přesnost single.000 x 5 mantisa exponent max. 3 pozic mezi -6 a 7 0

PŘESNOST ČÍSEL V POČÍTAČI ZAOKROUHLOVÁNÍ Číslo 0, je binárně přibližně.00000000-4 a tedy fl (0,) ~ 0,00000038485790 chyba Větší čísla jsou uložena s menší absolutní přesností

PŘESNOST ZÁKLADNÍCH OPERACÍ ZAOKROUHLOVÁNÍ Ztráta přesnosti při operacích (sčítání, násobení, ) fl (x * y) = (x * y) ( + d), d < e ~ 0-8 přesnost single ~ 0-6 přesnost double Neplatí základní vlastnosti z přesné aritmetiky (komutativita, ). = 00 000 000 Single: fl (0, + 00 000 000 00 000 000) = 0 fl (00 000 000 00 000 000 + 0,) = 0,

JE VÝPOČET SPOLEHLIVÝ? SČÍTÁNÍ ČÍSEL RŮZNÉHO ŘÁDU n n 3 4... 0 000000000... 5 6 Počítač (přesnost single): 5,40 Počítač (přesnost double):,06 fl A B A 3

JE VÝPOČET SPOLEHLIVÝ? ODČÍTÁNÍ BLÍZKÝCH ČÍSEL cos( x) 8 Počítač (přesnost single): 0 0,5 pro x,.0 x Počítač (přesnost double): 0,77 Přesně: Double: cos( x) cos( x) cos( x) 0,99999999999999998 0,99999999999999989 0,700000000000000.0 cos( x),030465565.0-6 -6 fl A B? 4

ZTRÁTA PŘESNOSTI OPERACÍ ČEMU SE VYHNOUT fl A B A ztráta přesnosti zaokrouhlováním fl A B? ztráta přesnoti rušením platých cifer a dalším obdobným situacím. 5

JAK SNÍŽIT CHYBY? VHODNÁ VÝPOČETNÍ METODA Chceme nalézt metodu, která nebude citlivá na zaokrouhlovací chyby. Použijeme-li cos( x) sin x / vyhneme se odčítaní blízkých čísel cos( x) x sin x / / x / Počítač (přesnost single): 0,5 Počítač (přesnost double): 0,5 6

JAK SNÍŽIT CHYBY? VHODNÁ VÝPOČETNÍ METODA Výpočet kořenů x 56x 0 pomocí r, ( b b 4ac) /(a) Počítač (double): r 8 7,98 r je OK, ztráta přesnosti jen v r, Využijeme-li vztahy r r b /, a rr c /, r / 55,98 0, 07869 a 7

REÁLNÝ PROBLÉM SEKVENCE OPERACÍ CHYBY SE MOHOU KUMULOVAT Přesné řešení Spolehlivý postup: Matematika + Informatika Reálné výpočty = miliardy operací v aritmetice s konečnou přesností Nespolehlivý postup 8

REÁLNÝ PROBLÉM KUMULACE CHYB VÁLKA V PERSKÉM ZÁLIVU Americká raketa Patriot minula iráckou raketu Scud (5..99), která následně zasáhla americká kasárna (8 mrtvých). Příčinou byla kumulace zaokrouhlovacích chyb při výpočtu času. Systém: odpalovací zařízení + radar + řídící stanice Vlastní hodiny měřili čas jako celé číslo reprezentující desítky sekund od zapnutí systému. Pak dělili 0. 9

REÁLNÝ PROBLÉM KUMULACE CHYB VÁLKA V PERSKÉM ZÁLIVU Výpočet: 4 bitová (fixed point) reprezentace čísla 0, 0, ~ 0.00000000000000000 chyba ~ 0.000000095 Po 00 hodinách provozu vracely hodiny již velká čísla chyba ~ 00*60*60*0*0.000000095 s ~ 0,34 s Za 0,34 s uletěla raketa Scud 570 metrů. 0

ZVYŠOVÁNÍ PŘESNOSTI ARITMETIKY NEMUSÍ ŘEŠIT PROBLÉM a 0, a, a 34 n an 3 a n rychle klesající posloupnost, a n n Nevýhody zvyšování přesnosti aritmetiky: zvyšuje paměťové náklady zpomaluje výpočet nemusí řešit problém

ZVYŠOVÁNÍ PŘESNOSTI ARITMETIKY NEMUSÍ ŘEŠIT PROBLÉM u( x, y) Výpočet pro 333,75y x 6 x (x y y 7767, y 33096 6 y 4 ) 5,5 y a různou přesnost: 8 x y Single,7603 Double,7603940053 Quadruple,7603940053788760 Přesně: -0,87396 Výsledek se zdánlivě zpřesňuje, ale je zcela chybný. Těžko identifikujeme chybu.

JAK SNÍŽIT CHYBY? VHODNÁ VÝPOČETNÍ METODA u( x, y) 333,75y 6 x (x y y 6 y 4 ) 5,5 y 8 x y odčítáme blízká velká čísla, dochází ke ztrátě platných cifer u( x, y) 333,75y 6 x (x y y 6 y 4 ) 5,5 y 8 x y OK 3

KONTROLA VÝSLEDKU A ODHADY CHYB a e, a ( n n a n ) klesající posloupnost, kde a n Výpočet a 5 pro různou decimální přesnost: 0 65990,4339-4457,988593 95,3744940 4 40,638707 5-6,7348 a a a fl fl fl n a ( a a n fl E ) n! E E a! E E chyba 4

REÁLNÝ PROBLÉM HLEDÁNÍ PŘIBLIŽNÉHO ŘEŠENÍ Základní suroviny: Vhodná výpočetní metoda Vhodná implementace na počítači stabilita výpočtu Zpětná kontrola spolehlivosti výsledku odhady chyb 5

DĚKUJI ZA POZORNOST 6