Ero sivun ”Näennäissatunnaislukugeneraattori” versioiden välillä
[arvioimaton versio] | [arvioimaton versio] |
Poistettu sisältö Lisätty sisältö
p ei tynkä |
Ei muokkausyhteenvetoa |
||
Rivi 1:
'''Näennäissatunnaislukugeneraattori''' on matemaattinen [[algoritmi]], joka annetun siemenen perusteella pyrkii luomaan mahdollisimman satunnaisen luvun. Luonnollisesti pelkillä matemaattisilla
Tyypillinen näennäissatunnaislukugeneraattori tuottaa tasajakautuneella [[todennäköisyys|todennäköisyydellä]] lukuja välillä 0...1, jonka jälkeen arvottu luku voidaan muokata jonkun muun jakauman mukaiseksi.
Satunnaislukugeneraattorin tasoa arvioidaan sen perusteella, kuinka sen tuottama satunnaislukujono käyttäytyy. Hyvä generaattori pystyy tuottamaan suunnattoman määrän toisistaan riippumattomia satunnaislukuja joiden jakauma noudattaa satunnaisjakaumaa. Huono generaattori tuottaa vain esim. tuhannen luvun jonon, jonka jälkeen lukujono alkaa toistaa itseään. Tällöin myös merkkijonon jakauma on epätasainen, ja satunnaisuuden näennäinen matkiminen ei toteudu.
Rivi 7:
== Käytännön satunnaislukugeneraattorit ==
Tyypillinen näennäissatunnaislukugeneraattori laskee seuraavan arvon edellisestä satunnaisluvusta
jollain sopivalla
x<sup>n+1</sup> = f(x<sup>n</sup>)
Ensimmäinen luku on valittava, ja sitä sanotaan '''siemeneksi'''.
Rivi 17:
x<sup>n+1</sup> = c * x<sup>n</sup> mod m
Jotta jaksosta saadaan mahdollisimman pitkä, luvut c ja m on valittava erittäin hyvin. Käytännössä parhaat tulokset on mahdollista saavuttaa [[alkuluku|alkuluvuilla]].
Esimerkiksi arvoilla c=23 ja n=101 ja siemenen ollessa 1:
|