Gradiva o naključnih številih: kako generatorji delujejo in kje odpovejo

Naključno število je videti kot najpreprostejša stvar, ki jo računalnik lahko ustvari, hkrati pa je ena tistih, pri katerih je najlažje narediti neopazno napako. Gradiva v tem razdelku pojasnjujejo, od kod števila izvirajo, kaj ločuje zanesljiv generator od tistega, na katerega se ne morete opreti, in po katerem orodju poseči, ko mora rezultat zdržati — pri žrebanju v razredu, nagradni igri ali testnem naboru podatkov.

Kje začeti

Preberite, kaj je generator naključnih števil: strojni, psevdonaključni in kriptografsko varni generatorji, zakaj se števila ponavljajo in kaj ponuja brskalnik. Ko potrebujete števila namesto razlage, jih generator naključnih števil ustvari v vašem brskalniku v poljubnem razponu, s ponavljanjem ali brez njega.

Kje generatorji neopazno odpovejo

Močan vir naključnosti je le polovica naloge. Druga polovica je preslikava njegovih surovih vrednosti v vaš razpon, in prav tu mnogi doma narejeni generatorji odpovejo. Uporaba ostanka pri deljenju z velikostjo razpona (modulo) je samoumeven pristop, ki pa je neopazno pristranski: razen če velikost razpona deli izhodni prostor vira brez ostanka, se najnižja števila v razponu pojavljajo nekoliko pogosteje kot ostala. Ta napaka se imenuje pristranskost modula (modulo bias). Ena od rešitev je vzorčenje z zavračanjem (rejection sampling): zavrzite vrednosti, ki padejo v neenakomerni ostanek, in žrebajte znova. Naš generator deluje prav tako, zato ima vsako število v vašem razponu pri vsakem žrebu enako možnost.

Enak premislek izključuje tudi bližnjice, po katerih ljudje posežejo najprej. Math.random() ne zagotavlja nobene varnosti, funkcije v preglednicah, kot sta RAND() in RANDBETWEEN(), pa spadajo v isti razred: primerne so za grobo premešanje, neprimerne pa za karkoli, kar bi kdo lahko izpodbijal.

Števila, seznami in kocke

Generator naključnih števil vrača števila iz razpona, ki ga sami določite. Naključni izbor s seznama deluje na seznamu, ki ga prilepite — imenih, vnosih, možnostih —, tako da vam števil nikoli ni treba ročno povezovati z vrsticami. Pri družabnih igrah metanje kock vrže kocke in sešteje skupne vrednosti, za izbiro med dvema možnostma pa zadostuje metanje kovanca. Kadar mora naključnost nekaj zaščititi in ne le odločiti, uporabite zanesljiv generator gesel. Vsi ti generatorji črpajo iz istega kriptografsko varnega vira v vašem brskalniku.

Ste pripravljeni preizkusiti orodje?

Preizkusite naše brezplačno in varno orodje Generator naključnih števil neposredno v svojem brskalniku.

Odpri orodje