1 / 23

Postupci i algoritmi generiranja (pseudo)slučajnih brojeva

Postupci i algoritmi generiranja (pseudo)slučajnih brojeva. Projekt iz predmeta Slučajni procesi u sustavima Davor Ćosić Borislav Đurđinovski Bojan Gašpar Denis Jakuš Gordan Markuš 10. siječanj 2012. Generatori pseudo(slučajnih) brojeva. Uređaj generator istinskih slučajnih brojeva

emma-hinton
Télécharger la présentation

Postupci i algoritmi generiranja (pseudo)slučajnih brojeva

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Postupci i algoritmi generiranja(pseudo)slučajnih brojeva Projekt iz predmeta Slučajni procesi u sustavima Davor Ćosić Borislav Đurđinovski Bojan Gašpar Denis Jakuš Gordan Markuš 10. siječanj 2012.

  2. Generatori pseudo(slučajnih) brojeva • Uređaj • generator istinskih slučajnih brojeva • fenomeni iz fizičkog svijeta • Termički šum otpornika ili diode • Radioaktivni raspad čestica • Nestabilnost frekvencije slobodnog oscilatora • Zvuk iz mikrofona ili slika iz kamere • Algoritam • generator pseudoslučajnih brojeva • deterministička priroda računala → prefiks pseudo • Izlaz → statistički potpuno nezavisne i nepredvidljive vrijednosti u obliku brojevnog niza

  3. PRNG algoritmi • Primjer

  4. PRNG algoritmi • Lehmerov LCG • Multiplikativni linearni kongruentni algoritam • Rekurzivna relacija: • m → prost broj (modul) • a → cijeli broj iz intervala 2,3,...,m −1 (množitelj) • Park-Miller • a = 16807 = 75 • m= 231 −1 (a) paralelno vanjsko magnetsko polje (b) okomito vanjsko magnetsko polje (c) ovisnost otpora o kutu

  5. PRNG algoritmi • Mersenneov uvijač • Period generatora je Mersseneov broj • Matrica linearnih ponavljanja nad konačnim binarnim poljem • Uvijen generaliziran povratni posmačni registar (engl. kratica TGFSR) • Rekurzivna relacija: • Uvijena transformacija A • ZAHTJEV: 2nw−r −1 je Mersenneov broj • Period doseže teorijsku gornju granicu 2nw−r −1 • Ekvidistribucija u n dimenzija

  6. PRNG algoritmi • Mersenneov uvijač • w: veličina riječi (broj bitova) • n: stupanj ponavljanja • m: srednja riječ ili broj paralelnih odjeljenja 1 ≤ m ≤ n • r: broj bitova donje maske bitova 0 ≤r ≤w −1 • a: koeficijent matrice uvijanja • b,c: TGFSR(R) bitovne maske • s,t: TGFSR(R) posmaci bitova • u,l: dodatni posmaci bitova

  7. PRNG algoritmi • Mersenneov uvijač • Uvijena transformacija A • Iw −1jedinična matrica dimenzija (w−1) × (w−1)

  8. PRNG algoritmi • Mersenneov uvijač inačica MT19937 • Period generatora: 219937 −1 • (w,n,m,r) = (32,624,397,31) • a= 9908B0DF16 • u= 11 • (s,b) = (7, 9D2C568016 ) • (t,c) = (15, EFC6000016 ) • l = 18

  9. Pokazatelji slučajnosti • Očekivanje • Idealni generator: E[X] = 0.5 • Varijanca • Idealni generator: σ2 ≈ 0.0833 • Entropija • Mjera nepredvidljivosti slučajne varijable

  10. Testovi slučajnosti • Histogram • Test izvršen nad 100 000 uzoraka

  11. Testovi slučajnosti • Autokorelacija • Autokorelacijska ploha Park-Millerova generatora

  12. Testovi slučajnosti • Autokorelacija • Autokorelacijska ploha Mersenneova uvijača

  13. Testovi slučajnosti • Hi-kvadrat test • Neparametarski test • Testiramo nultu hipotezu →uzorak ima određenu (teorijsku) razdiobu • Jedan ishod → k razreda • nishoda • psvjerojatnost da ishod pada u razreds • Ysstvarna vrijednost ishoda koji su ušli u razred s

  14. Testovi slučajnosti • Hi-kvadrat test • Statistička vrijednost V uspoređuje se s onim danim u tablici • ν= k −1 (stupanj slobode) • Vrijednosti χ2distribucije isključivo ovise o stupnju slobode, a ne o broju ishoda i njihovoj vjerojatnosti • testiranja uniformnosti →pizmeđu p = 25% i p = 75%

  15. Testovi slučajnosti • Hi-kvadrat test • Test je izvršen 4 puta • n= 10000 slučajnih brojeva, smještenih uk= 31 razred

  16. Testovi slučajnosti • Kolmogorov-Smirnov test • Neparametarski test • Usporedbi funkcija kumulativne raspodjele (CDF) • Empirijska vs. Teorijska • Statističke vrijednosti K+ni K−n(devijacije)

  17. Testovi slučajnosti • Kolmogorov-Smirnov test • Uzimamo maksimalnu devijaciju • Usporedba vrijednosti → nivo značajnosti testa (α) • Distribucije su indentične uz navedeni nivo značajnosti • Test je izvršen za dvadeset različitih funkcija distribucije

  18. Testovi slučajnosti • Kolmogorov-Smirnov test • α = 99% za Mersenneov uvijač • α = 95% za Park-Millerov generator

  19. Testovi slučajnosti • Kolmogorov-Smirnov test

  20. TRNG sklopovlje • Princip rada • Lavinski šum tranzistora • Reverzno polariziran PN spoj emiter-baza • PIC mikrokontroler • Analizu izvora šuma • Serijsko slanje slučajnih podataka

  21. TRNG sklopovlje • Princip rada • PIC 16F648A mikrokontroler→komparator • Signal→ brze promjene razine između 1V i 2V tešiljci do 3V • Šiljak → prekid • Broj šiljaka neparan → logička jedinica • Broj šiljaka paran → logička nula • Sklopka za način rada • Slučajni bajtovi • ASCII znakovi’1’ i ’0’ • Sklopka za XOR masku • XOR nad izlaznim podacima koristeći alternirajući niz jedinica i nula (counter)

  22. Primjena • Statističko uzorkovanje • Razne računalne simulacije • Monte Carlo • debugging • Kriptografija • generiranje lozinki • Kockanje • Preslušavanje muzike • shuffle • Ostala područja gdje je poželjan nepredvidiv rezultat

  23. Kraj "The generation of random numbers is too important to be left to chance.“ −RobertR. Coveyou, Oak Ridge National Laboratory

More Related