FER, ZEMRIS
>>Algoritmi generiranja slučajnih brojeva

*korišteni dijelovi seminarskog rada Željka Markića

Linearni generatori slučajnih brojeva
(Linear congruential generator: LCG)

 Linearne generatore slučajnih brojeva (LCG) je smislio Lehmer 1948. Ovaj generator pseudoslučajnih brojeva se služi sljedećom rekurzijom:
yn+1=ayn+b (mod m).
Početni yo i ostali parametri se zadaju sa:
LCG (m, a, b, yo).

Više...

Kombinirani LCGovi (cLCG)

 Kombiniranjem različitih nizova (xn(j))n ³ 0, 1£ j £ r,  koje dobivamo od raznih LCGova, možemo dobiti novi niz (xn)n ³ 0,
xn = xn(j) + ... + xn(j) (mod 1), te time postižemo duže periode, a smanjujemo vrijeme izračuna.

Više...

Inverzivni generatori

Inverzivni generatori pseudoslučajnih brojeva (Inversive Congruential Generators) (ICG) su djelo Eichenauera i Lehna (1986). Trebamo izabrati modul p, množitelj a, dodatni uvjet b i početnu vrijednost y0.
Za zadani prirodni broj p, i za c
Î Zp,
c':= 0 ako je c=0, te
c':=c-1 ako je c
¹0.
To znači da je c' jednako broju cp-2 (mod p).
 Sada možemo zadati jednakost:
 yn+1 = ay'n + b (mod p), n
³0
 
da dobijemo pripadni niz pseudoslučajnih brojeva u {0, 1, … , p-1}.
Zapis ovog generatora je:
 
ICG(p, a, b, y0)

 Više...

Kaotični generatori slučajnih brojeva

Ovo je nova klasa pseudoslučajnih brojeva, sa random veličinom ciklusa. Također se vrši rotacija bitova, ili mjenjanje bitova, da bi se dobio što slučajniji niz.
RANROT tip A rotira bitove poslije zbrajanja
RANROT tip B rotira bitove prije zbrajanja
RANROT tip B3 rotira bitove poslije zbrajanja
RANROT tip W rotira dijelove bitova neovisno

Više...


© Zavod za Elektroniku, Mikroelektroniku, Računalne i Inteligente Sustave