Generátor pseudonáhodných čísel: Porovnání verzí

Smazaný obsah Přidaný obsah
Dopsání článku z anglického originálu 2
m Přidání odkazu na překlad a oprava chyb
Řádek 10:
 
== Periodicita ==
{{Překlad|jazyk=en |článek=Pseudorandom number generator |revize=574204384}}<references /><br/>
Generátor pseudonáhodných čísel může začítzačíná z jakéhokoliv výchozího stavu použitím [[Random seed|random seed]] (náhodné číslo - počáteční stav). Poté vždy vyprodukuje stejnou sekvenci čísel, pokud je inicializován se stejným počátečním stavem. Perioda generátoru pseudonáhodných čísel je definována jako maximum nad všemi počátečními stavy délky neopakující se sekvence. Perioda je omezena velikostí stavu měřeného v bitech. Nicméně od té doby, co se délka periody potencionálně zdvojnásobuje s každým stavovým bitem. Potom je snadné vytvořit generátor pseudonáhodných čísel s periodou dostatečně dlouhou pro praktické aplikace.
 
Pokud vnitřní stav generátoru pseudonáhodných čísel obsahuje ''n'' bitů, pak jeho perioda nemůže být delší než 2<sup>n</sup> výsledných stavů, ale může být mnohem kratší. Pro některé generátory je možné délku periody vypočítat bez procházení skrze celou periodu. [[Linear feedback shift register|Linear Feedback Shift Registers]] jsou obvykle voleny s periodou 2<sup>n</sup>-1.[[Linear congruential generator|Linear congruential generators]] mají periodu, která může být vypočítána faktorizací. Přestože generátor pseudonáhodných čísel bude opakovat výsledky, poté co dosáhne konce periody, opakovaný výsledek nezaručuje dosažení konce periody, poněvadž jeho vnitřní stav může být větší než výsledný. To je zřejmé zejména u generátoru pseudonáhodných čísel s 1-bitovým výstupem.
Řádek 17 ⟶ 18:
 
== Problémy s deterministickými generátory ==
{{Překlad|jazyk=en |článek=Pseudorandom number generator |revize=574204384}}<references /><br/>
V praxi výstup z mnoha běžných generátorů pseudonáhodných čísel vykazuje [[:en:Artifact (error)|anomálii]], která způsobuje jejich selhání při statistické detekci vzoru.
Například:
* kratší než očekávané periody pro některé výchozí stavy jsou kratší než očekáváme (takové stavy mohou být nazvány "slabými", v tomto kontextu)
* chybějící rovnoměrnost rozdělení pro velké množství generovaných čísel
* korelace úspěšných hodnot
Řádek 28 ⟶ 30:
 
== Rané způsoby ==
{{Překlad|jazyk=en |článek=Pseudorandom number generator |revize=574204384}}<references /><br/>
Raný, počítačově založený generátor pseudonáhodných čísel, navržen [[John von Neumann|Johnem von Neumannem]] roku 1946, je znám pod názvem [[Middle-square method]]. Algoritmus funguje takto: vezmi jakékoliv číslo, umocni ho nadruhou, vezmi prostřední číslice výsledného čísla jako "náhodné číslo", poté použij číslo jako výchozí stav pro generátor. Například: umocníme číslo "1111",získáme "1234321", které může být zapsáno jako "01234321", čili osmiciferné číslo, které je druhou mocninou čtyřciferného čísla. Vezmeme střední cifry, což je "2343", tedy máme "náhodné" číslo. Opakováním této procedury získáme "4896" jako další výsledek atd. Von Neumann používal deseticiferná čísla, ale proces byl totožný.
 
Problém s touto metodou je ten, že všechny sekvence se nakonec opakují. Některé se opakuji velmi rychle, například: "0000". Von Neumann se toho obával, avšakže našelby způsobmatematické dostatečnýúpravy propouze jehochyby úmysly,schovaly alea bylneodstranily znepokojen tímje, žeavšak matematickénašel úpravyzpůsob bydostatečný pouzepro chybyjeho schovaly a neodstranily jeúmysly.
 
Von Neumann usoudil, že převést do hardwaru generátor pseudonáhodných čísel je nemístné, protože když nemohli bychom zaznamenávat generovaný výstup, nemohli bychom později testovat chyby. Pokud by v té době zaznamenávali výsledné hodnoty, vyčerpali by tak paměť počítače a ten by pak nadále nebyl schopen číst a zapisovat čísla. Jestliže by byly čísla "vděrovány" do štítků, trvalo by čtení a psaní pro tehdejší počítače velmi dlouho. Na počítači [[ENIAC]], který používal,byla [[Middle-square method]] generující čísla zhruba stokrát rychlejší než načítání z [[Děrný štítek|děrných štítků]].
 
Od té doby byla [[Middle-square method]] nahrazena více komplikovanými generátory.