Lineární kongruentní generátor

Slides:



Advertisements
Podobné prezentace
GENEROVÁNÍ PSEUDONÁHODNÝCH ČÍSEL
Advertisements

Počítače a programování 1 Přednáška 13 Jiří Šebesta.
Počítačová grafika III – Monte Carlo integrování II Jaroslav Křivánek, MFF UK
Programování numerických výpočtů - návrh písemky.
15.1 Shapes Elektronická učebnice - I. stupeň Základní škola Děčín VI, Na Stráni 879/2 – příspěvková organizace Anglický jazyk Autor: Zuzana Tonderová.
Houška M.,Švasta J.: Simulační modely I
Tato prezentace byla vytvořena
Lineární regresní analýza Úvod od problému
ZÁKLADY EKONOMETRIE 2. cvičení KLRM
Medians and Order Statistics Nechť A je množina obsahující n různých prvků: Definice: Statistika i-tého řádu je i-tý nejmenší prvek, tj., minimum = statistika.
Seminář C++ 9. cvičení Šablony Ing. Jan Mikulka. Šablony ► template – vzory, podle kterých může překladač tvořit skupiny podobných tříd nebo funkcí, které.
Náhoda, generátory náhodných čísel
STANOVENÍ NEJISTOT PŘI VÝPOŠTU KONTAMINACE ZASAŽENÉHO ÚZEMÍ
Počítačová grafika III – Sekvence s nízkou diskrepancí a metody quasi-Monte Carlo Jaroslav Křivánek, MFF UK
Generování náhodných veličin (2) Spojitá rozdělení
DEKLARACE PROMĚNNÝCH A KONSTANT
Poskytuje daný generátor opravdu posloupnost náhodných čísel?
Testy náhodnosti, metody transformace náh. čísel na hodnoty náh
Systém rizikové analýzy při statickém návrhu podzemního díla Jan Pruška.
Generování náhodných čísel
Náhoda, generátory náhodných čísel
ZADÁNÍ Sestavte program, který vypočítá obvod a obsah čtverce o straně a. Zajistěte, aby výpočet byl realizován pouze v případě, kdy strana a bude mít.
Počítačová grafika III – Monte Carlo integrování II Jaroslav Křivánek, MFF UK
Generování náhodných veličin Diskrétní a spojitá rozdělení Simulační modely ek.procesů 4.přednáška.
0 / 1X36DSA 2005The complexity of different algorithms varies: O(n), Ω(n 2 ), Θ(n·log 2 (n)), … Různé algoritmy mají různou složitost: O(n), Ω(n 2 ), Θ(n·log.
Normální (Gaussovo) rozdělení. Karl Friedrich Gauss
Normální (Gaussovo) rozdělení
OSNOVA: a) Příkazy pro větvení b) Příkazy pro cykly c) Příkazy pro řízení přenosu d) Příklad Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače.
Ekonometrie „ … ekonometrie je kvantitativní ekonomická disciplína, která se zabývá především měřením v ekonomice na základě analýzy reálných statistických.
Výpočet plochy pomocí metody Monte Carlo
V. Analýza rozptylu ANOVA.
Princip maximální entropie
PPA1 – 5.cvičení Pavel Bžoch.
2. Vybrané základní pojmy matematické statistiky
C – jak na procedury Mgr. Lenka Švancarová. C – procedury #include int main() { printf("Ahoj\n"); return(0); } #include void pozdrav(void) { printf("Ahoj\n");
Generování náhodných čísel
Monte Carlo simulace Experimentální fyzika I/3. Princip metody Problémy které nelze řešit analyticky je možné modelovat na základě statistického chování.
48.1 SOUSTAVY ROVNIC Jsou dány dvě lineární rovnice se dvěma neznámými x – 2y = 1 2x + y = 2 Soustava lineárních rovnic se dvěma neznámými Které z uspořádaných.
Distribuční funkce diskrétní náhodná proměnná spojitá náhodná proměnná
Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí Zeměpis – 1. ročník 1 Arabské číslice.
Sylabus V rámci PNV budeme řešit konkrétní úlohy a to z následujících oblastí: Nelineární úlohy Řešení nelineárních rovnic Numerická integrace Lineární.
Korelace. Určuje míru lineární vazby mezi proměnnými. r < 0
Funkce náhodné proměnné nová náhodná proměnná: a stará náhodná proměnná: x hustota pravděpodobosti: f(x) hustota pravděpodobosti: g(a)
ROOT
Statistické odhady (inference) Výběr Nepotřebujeme sníst celého vola jenom proto, abychom poznali, že to jde ztuha. Samuel Johnson (anglický básník a.
Poissonovo rozdělení diskrétní náhodné veličiny
Úvod do praktické fyziky Seminář pro I.ročník F J. Englich, ZS 2003/04.
Template Method. Motivační příklad – reálný svět Čaj 1) Uvař vodu 2) Dej do hrnku sáček čaje 3) Zalij hrnek 4) Přisyp cukr a vymačkej citrón Káva 1) Uvař.
Počítačová grafika III – Monte Carlo rendering 3 Jaroslav Křivánek, MFF UK
CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Jazyk C# a platforma.NET ZS 2015/2016 Pavel Ježek
Výukový materiál zpracován v rámci projektu
Stochastické procesy a Markovovy řetězce
Výukový materiál zpracován v rámci projektu
Úvod do praktické fyziky
STATISTICKÉ CHARAKTERISTIKY
Lineární kongruentní generátor
Jméno Příjmení, další jména Ústav konstruování
Výukový materiál zpracován v rámci projektu
Různé algoritmy mají různou složitost
Opakování ze 3. cvičení deklarace proměnných výpis na monitor (výstup)
IB999 Vstupní test z programování
Rozdělení pravděpodobnosti
Náhodný proces Funkce f(t), kde f(t) je náhodná veličina.
Medián, modus Medián Pro medián náhodné veličiny x platí: Modus
Poissonovo rozdělení diskrétní náhodné veličiny
2. Vybrané základní pojmy matematické statistiky
ALG 14 Vícedimenzionální data Řazení vícedimenzionálních dat
Funkce v jazyce C = „množina“ operací, která provádí nějakou činnost s různými vstupy odstranění vícenásobného psaní či vkládání téhož kódu a lepší přehlednost.
Distribuční funkce diskrétní náhodná proměnná spojitá náhodná proměnná
Transkript prezentace:

Lineární kongruentní generátor smíšený generátor čistě multiplikativní generátor m  232 maximální perioda m I0 : semínko korelace a = 75 = 16807 m = 231- 1 = 2147483647 perioda 231- 2  2.1  109

Lineární kongruentní generátor - implementace Faktorizace m (Schragerův algoritmus) čistě multiplikativní generátor 

Lineární kongruentní generátor - implementace float ran0(int *p_i0) { #define a (16807) #define m (2147483647) #define q (127773) #define r (2836) int k,i0; float x; i0=*p_i0; k=i0/q; //[I0/q] i0=a*(i0-k*q)-r*k; //a(I0 mod q)-r[I0/q] if(i0<0) i0=i0+m; x=(float)i0/m; //converze na realne cislo z intervalu (0,1) *p_i0=i0; return(x); }

Lineární kongruentní generátor - implementace void main() { FILE *f,*g; int iseed; int i; float x; if((f=fopen("iseed.dat","r"))==NULL) iseed=123456789; else f=fopen("iseed.dat","r"); fscanf(f,"%d",&iseed); fclose(f); } g=fopen("ran0.dat","w"); for(i=0;i<1000000;i++) x=ran0(&iseed); fprintf(g,"%f\n",x); f=fopen("iseed.dat","w"); fprintf(f,"%d",iseed); fclose(g);

Lineární kongruentní generátor - implementace

Lineární kongruentní generátor – test IBM RANDU N = 104

Lineární kongruentní generátor – test IBM RANDU N = 107

Lineární kongruentní generátor – sériová korelace IBM RANDU N = 104 “ We guarantee that each number is random individually, but we don’t guarantee that more than one of them is random.”

Lineární kongruentní generátor – sériová korelace RAN0 N = 104

Lineární kongruentní generátor – posuvný registr RAN2 – L’Ecuyer N = 107 + posuv registru perioda  2.3 × 1018

Lineární kongruentní generátor – barevný test IBM RANDU ze dvou čísel generován bod ve čtverci [0,1] x [0,1] barva náhodně ze stejného generátoru, například pomocí RGB složek v rozsahu 0-255 1 1

Lineární kongruentní generátor – barevný test IBM RANDU ze dvou čísel generován bod ve čtverci [0,1] x [0,1] barva náhodně ze stejného generátoru, například pomocí RGB složek v rozsahu 0-255 0.1 0.1

Lineární kongruentní generátor – barevný test RAND( ) MS Visual C++ 6.0 ze dvou čísel generován bod ve čtverci [0,1] x [0,1] barva náhodně ze stejného generátoru, například pomocí RGB složek v rozsahu 0-255 0.1 0.1

Cauchyho rozdělení – Metoda inverzní funkce Distribuční funkce

Cauchyho rozdělení – Metoda inverzní funkce x -4 -2 2 4 0.0 0.1 0.2 0.3 0.4

Normální rozdělení – využití CLT

Normální rozdělení – ad hoc generátor

Von Neumannova zamítací metoda

Monte Carlo integrace p = 3.141592654 N = 8 × 107