Maturski rad iz modelovanja u fizici generatori pseudo slu ajnih brojeva
This presentation is the property of its rightful owner.
Sponsored Links
1 / 60

Maturski rad iz modelovanja u fizici: Generatori pseudo – slučajnih brojeva PowerPoint PPT Presentation


  • 96 Views
  • Uploaded on
  • Presentation posted in: General

Maturski rad iz modelovanja u fizici: Generatori pseudo – slučajnih brojeva. Mentor : Jugoslav Karamarkovi ć Strahinja Bonić. Slučajne promenljive. Slučajna promenljiva je veličina koja na numerički način opisuje ishod nekog eksperimenta (ogleda) sa slučajnim ishodom.

Download Presentation

Maturski rad iz modelovanja u fizici: Generatori 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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Maturski rad iz modelovanja u fizici generatori pseudo slu ajnih brojeva

Maturski rad iz modelovanja u fizici:Generatori pseudo – slučajnih brojeva

Mentor:

Jugoslav Karamarković Strahinja Bonić


Slu ajne promenljive

Slučajne promenljive

  • Slučajna promenljiva je veličina koja na numerički način opisuje ishod nekog eksperimenta (ogleda) sa slučajnim ishodom.

  • Slučajne promenljive se dele na diskretne i kontinualne. Ako je skup ishoda ogleda konačan ili prebrojivo beskonačan onda je u pitanju diskretna, a ako je neprebrojivo beskonačan u pitanju je kontinualna slučajna promenljiva.


Slu ajne promenljive1

Slučajne promenljive

  • Posmatrajmo kontinualnu slučajnu promenljivu x koja može da uzme bilo koju vrednost iz intervala (x1,x2).

  • Ako postoji funkcija g(x) definisana na intervalu (x1,x2) takva da g(x1)dx predstavlja verovatnoću da slučajna promenljiva uzme vrednost u interva-lu (x1, x1+dx) onda se funkcija g(x) naziva funkcija gustine raspodele.


Slu ajni brojevi

Slučajni brojevi

  • Definicija: Slučajna promenljiva Z sa uniformnom raspodelom na intervalu (0,1) naziva se slučajan broj.

  • funkcija gustine f(z)={ 0z<0

    10<z<1

    0z>0


Slu ajni brojevi1

Slučajni brojevi

  • Uopšteno govoreći, postoje tri načina za generisanje slučajnih brojeva:

  • 1) tablice - mana tablica je ograničena dužina i glomaznost

  • 2) slučajni procesi u prirodi (poput šuma u elektronskoj spravi)

  • 3) kompjuterski generisani "pseudo-slučajni" brojevi


Pseudoslu ajni brojevi

Pseudoslučajni brojevi

  • Pseudoslučajni brojevi su oni koji se dobijaju po nekoj formuli ili algoritmu i koji imitiraju vrednosti slučajne promen-ljive Z sa uniformnom raspodelom na intervalu (0,1) u smislu da zadovoljavaju niz testova koje zadovoljavaju i slučajni brojevi.


Pseudoslu ajni brojevi1

Pseudoslučajni brojevi

  • Da bi se ubrzao proces generisanja, napisani su kompjuterski softveri za dobijanje nizova slučajnih brojeva. Međutim, kako je kompjuter deterministička mašina, sam koncept "slučajnog" na njega je neprimenljiv.


Pseudoslu ajni brojevi2

Pseudoslučajni brojevi

  • Ovi softveri zapravo samo simuliraju nizove slučajnih brojeva, obzirom da je niz koji se dobija potpuno određen relativno malim brojem zadatih početnih vrednosti i nakon nekog broja elemenata počinje periodično da se ponavlja.


Pseudoslu ajni brojevi3

Pseudoslučajni brojevi

  • Na osnovu metoda koji koriste, ovi softveri mogu se podeliti na:

  • Linear congruential generator - linearni generator slučajnih brojeva

  • Lagged Fibonacci generator –koristi se formula slična onoj za dobijanje Fibonačijevog niza

  • Linear shift register generator - brojevi se ne dobijaju aritmetičkim već logičkim operacijama.


Pseudoslu ajni brojevi4

Pseudoslučajni brojevi

  • Mnogo kvalitetniji nizovi se dobijaju kada na računaru postoji neki modul koji daje slučajne brojeve prikupljene iz istinski stohastičkih događaja koji se događaju na mikronivou. Neka od mogućih rešenja su data ispod:

  • 1) hardverske mogućnosti:

    • sistemski sat

    • korišćenje audio ulaza na zvučnoj kartici

    • merenje vremena između klikova mišem ili praćenje kretanja kursora

  • 2) upotreba privremenih podataka:


Pseudoslu ajni brojevi5

Pseudoslučajni brojevi

  • Primena generatora slučajnih brojeva može se podeliti na dve grupe:

  • kriptografija (šifrovanje):

  • računarska simulacija (opisivanje realnog događaja uz pomoć brojeva)


Pseudoslu ajni brojevi metod sredina kvadrata nojman

Pseudoslučajni brojeviMetod sredina kvadrata (Nojman)

  • Zk=0,w1,w2,...w2m

  • Zk2=0, u1,u2,...u4m

  • Zk+1=0, um+1,um+2,...u3m

(0.3762)2

0.1415264

0.1526


Pseudoslu ajni brojevi decimale broja

Pseudoslučajni brojeviDecimale broja π

  • π/10=0.314159...

  • Primer: k=0.0003 (10000*k=3 (od treće značajne cifre broja π/10))

  • 0.314159265358 979323846264338327950288...

  • Z0=0,w1,w2,...w10=0.4159265358

  • Z1=0,w11,w12,...w20=0.9793238462

  • Z2=0,w21,w22,...w30=0.6433832795


Pseudoslu ajni brojevi generator wolfram mathematica

Pseudoslučajni brojeviGenerator ,,Wolfram Mathematica”

  • Programski paket ,,Wolfram Mathematica”, kao i mnogi drugi programi danas, koriste generator ,,Mersenne twister” koji su 1997. godine isprogramirali Makoto Matsumoto i Takuji Nishimura. Generator se bazira na matričnoj linearnoj rekurenciji nad binarnim poljem.


Testovi pseudo slu ajnih brojeva

Testovi (pseudo)slučajnih brojeva

  • Test uniformnosti (bin test)

  • Test korelacije (test dupleta, tripleta, kvadripleta,...)

  • Test srednjih vrednosti kvadrata, kubova...


Testovi pseudo slu ajnih brojeva1

Testovi (pseudo)slučajnih brojeva

  • Za različite ulazne podatke generisana su po 3 niza za svaki od prethodno navedenih generatora

  • Vrši se upoređivanje sva 3 generatora pomoću 3 različita testa. Testovi se rade za svaki od 3 niza navedenih generatora

  • Za test dupleta i test uniformnosti generisani su nizovi od po 10000 brojeva, a za test srednjih vrenosti kvadrata po 1000 brojeva


Test dupleta

Test dupleta

  • Zamislimo kvadrat stranice a=1 i podelimo ga na npr. P =20x20=400 jednakih delova (ćelija).

  • Uočimo jednu ćeliju. Verovatnoća da se generacija slučajnog para (z1,z2) poklopi sa tom ćelijom jednaka je 1/P. Ako se opit ponavlja N=kP puta, verovatnoća da će ćelija ostati nepogođena jednaka je

    p=(1-1/P)kP=exp(-k)


Test dupleta1

Test dupleta

  • a očekivani broj nepogođenih ćelija je

    Pexp(-k)

  • Test prati broj nepogođenih ćelija i upoređuje ga sa teorijskom vrednošću.


Test dupleta2

Test dupleta

  • Loš genrator tipa 1:

  • Teži da što pre popuni sva polja pa se može pretpostaviti da u sledećem koraku par neće popuniti neko od već popunjenih polja

  • Loš generator tipa 2:

  • Vrlo sporo popunjava prazna polja jer se parovi grupisu oko određenih polja (koordinata) pa se u sledećem koraku može predvideti par u nekom od tih polja


Test dupleta3

Test dupleta


Test dupleta4

Test dupleta


Test dupleta5

Test dupleta


Test dupleta6

Test dupleta


Test dupleta7

Test dupleta

  • Što se tiče metoda sredina kvadrata, on daje dobre vrednosti samo u početku i to samo za neke ulazne vrednosti. U naredna tri grafika vidi se da ovaj metod daje dobre rezultate za prvih 50 parova, dok za vise od 500 parova pokazuje velika odstupanja. Ostala dva generatora daju jako dobre rezultate.


Test srednje vrednosti kvadrata

Test srednje vrednosti kvadrata

  • Izračunava se srednja vrednost kvadrata za prvih 10 članova (Xsr10 =(Z1+...+ Z10

  • )/10), pa zatim za 20 (Xsr20), pa za 30...

  • Pokazuje se da kod beskonačo dugih nizova slučajnih brojeva (sa uniformnom raspodelom) važi:

  • Xsr ∞=1/3=0.333


Test srednje vrednosti kvadrata1

Test srednje vrednosti kvadrata


Test srednje vrednosti kvadrata2

Test srednje vrednosti kvadrata


Test srednje vrednosti kvadrata3

Test srednje vrednosti kvadrata


Test srednje vrednosti kvadrata4

Test srednje vrednosti kvadrata

  • Sa prethodnih grafika se vidi da sva tri generatora daju dobre rezultate, s tim što metod sredina kvadrata pokazuje izvesna odstupanja od teorijske vrednosti.


Test uniformnosti

Test uniformnosti

  • Test uniformnosti (bin test): Interval (0,1) se podeli na m jednakih podintervala i pro-verava da li je verovatnoća pojavljivanja slučajnog broja u svakom podintervalu 1/m.

  • U našem slučaju je m=10


Test uniformnosti1

Test uniformnosti


Test uniformnosti2

Test uniformnosti


Test uniformnosti3

Test uniformnosti


Test uniformnosti4

Test uniformnosti

  • Sa prethodnih grafika se vidi da π-generator i Mathematica daju dobre rezultate, dok metod sredina kvadrata pokazuje izvesna odstupanja.


Provera generatora pseudo slu ajnih brojeva

Provera generatora pseudo-slučajnih brojeva

  • Jednodimenzionalna slučajna šetnja:

    Čestica se nalazi u koordinatnom početku x-ose. Ona može da se kreće jediničnim koracima levo (xi=-1) i desno (xi=+1). Pre svakog koraka verovatnoća kretanja u desno je p, a verovatnoća kretanja u levo q (q=1-p). Slučajna promenljiva X definiše se kao položaj čestice nakon n koraka:

    X=x1+x2+...+xn


Provera generatora pseudo slu ajnih brojeva1

Provera generatora pseudo-slučajnih brojeva

  • Pretpostavimo sada da je p=q=0.5. Intuitivno je jasno da je E(X)=0. Potražimo D(X):

  • Onda je: σ=n^(1/2)


Provera generatora pseudo slu ajnih brojeva2

Provera generatora pseudo-slučajnih brojeva

  • Kako shvatiti ovaj rezultat?

  • Ako posmatramo m čestica, svaka od čestica će se posle definisanog broja koraka (n) naći u nekoj tački xi koja ne mora biti nula: n>=xi>=-n (i=1,m). Međutim, ako izvršimo usrednjavanje po svim česticama, imaćemo:


Provera generatora pseudo slu ajnih brojeva3

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva4

Provera generatora pseudo-slučajnih brojeva

  • Modelovanje jednodimenzionalne slučajne šetnje pomoću generatora se vrši na sledeći način:

  • 1) Ako se slučajni broj Zi nalazi u intervalu (0.0,0.5) čestici se dodeljuje korak xi = -1

  • 2) Ako se slučajni broj Zi nalazi u intervalu (0.5,1.0) čestici se dodeljuje korak xi = +1


Provera generatora pseudo slu ajnih brojeva5

Provera generatora pseudo-slučajnih brojeva

  • Za modelovanje je korišćen generator programskog paketa ,,Wolfram Mathematica” i π-generator. Na graficima su prikazani rezultati matematičkog očekivanja i disperzije za slučaj od m=10,20,50,100 čestica u n=100 koraka, prvo za Mathematicu, a onda za π-generator, naizmenično:


Provera generatora pseudo slu ajnih brojeva6

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva7

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva8

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva9

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva10

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva11

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva12

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva13

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva14

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva15

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva16

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva17

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva18

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva19

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva20

Provera generatora pseudo-slučajnih brojeva


Provera generatora pseudo slu ajnih brojeva21

Provera generatora pseudo-slučajnih brojeva


Zaklju ak

Zaključak

  • Na osnovu rezultata svih prethodnih testova, kao i modelovanja jednodimenzionalne slučajne šetnje možemo reći da je generator programskog paketa ,,Wolfram Mathematica“ opravdao svoja očekivanja. Von Neumann-ov generator je pokazao svoje slabosti, ali ipak ostaje neuporedivo brži i jednostavniji od ostala dva.


Zaklju ak1

Zaključak

  • Jako dobre rezultate je pokazao i π-generator, što je još jedan dokaz da decimale broja π ne pokazuju skoro nikakvu pravilnost, tj. broj π je iracionalan. Ipak, bez obzira na sva istraživanja, otvoreno pitanje o ovom broju koje najviše pritiska jeste da li je π ,,normalan broj.


Zaklju ak2

Zaključak

  • Definicija ,,normalnog broja“ bi bila sledeća:

  • Broj je ,,normalan u osnovi b” ako za svaki prirodan broj m i za svaki niz cifara s dužine m važi:

  • gde N(n,s) predstavlja broj pojavljivanja niza cifara s u prvih n cifara datog broja (u osnovi b). Broj je „apsolutno normalan“ (ili samo „normalan“) ako je normalan u svim prirodnim osnovama.


Zaklju ak3

Zaključak

  • Dakle, danas ovo predstavlja otvoren problem i jedan od najistraživanijih (ako ne i najistraživaniji) vezanih za broj π, tj. da li je π normalan broj (ili, specijalan slučaj, da li je normalan u bazi 10). Dokle su matematičari stigli sa ovim pitanjem? Pa, ne baš daleko - još uvek nije poznato čak ni to da li se sve cifre javljaju beskonačan broj puta!


  • Login