Kezdőoldal » Tudományok » Alkalmazott tudományok » A számítógép hogy kalkulál...

A számítógép hogy kalkulál véletlen számot?

Figyelt kérdés
Hogy tud ugyanarra a parancsra más-más eredményt kiadni? (ha lehet egyszerűen magyarázzatok :D )
2020. dec. 2. 14:48
1 2
 11/14 anonim ***** válasza:
57%
Valódi véletlenszámot jelenleg nem lehet generálni. Minden megoldás pszeudorandom, azaz látszólagos véletlenszám. Általában van egy kezdőérték (seed), amiből egy algoritmus generálja a további értékeket. Sok esetben ugyanazon seed esetén ugyanaz a sorozat fog létrejönni.
2020. dec. 3. 09:27
Hasznos számodra ez a válasz?
 12/14 anonim ***** válasza:
100%
11. Az alapelv igaz, de hogy ne lehetne valódi véletlenszámot generálni? Van egy halom olyan tényező, amiket megmérhetünk, amik igen változékonyak, és azokból számoltathatjuk ki a véletlenszámot. A gép bekapcsolása óta eltelt idő tizedmásodpercekben, a hőmérséklet, a dátum, az idő. Két billentyűleütés közben eltelt idő, a legutóbb leütött billentyűk kódjai,stb. Ezeket mind számba lehet venni a véletlenszám generálásakor és még ezer más dolgot is. Már önmagában az idő másodpercre pontosan is változatos eredményeket adhat, hát még ha kombináljuk mondjuk még legalább egy dologgal!
2020. dec. 3. 09:52
Hasznos számodra ez a válasz?
 13/14 anonim ***** válasza:

Igaz, hogy fizikálisan is valódi véletlenszámot csak hardveresen lehet generálni (pl. elektronikus zajgenerátorral, radioaktív eszközzel, stb.), de azért egy alap PC hardverrel is igen jól közelíthető a véletlen sorozat.


"When read, the /dev/random device will only return random bytes within the estimated number of bits of noise in the entropy pool. /dev/random should be suitable for uses that need very high quality randomness such as one-time pad or key generation. When the entropy pool is empty, reads from /dev/random will block until additional environmental noise is gathered."

"The kernel random-number generator is designed to produce a small amount of high-quality seed material to seed a cryptographic pseudo-random number generator (CPRNG)."

[link]

2020. dec. 3. 10:21
Hasznos számodra ez a válasz?
 14/14 anonim ***** válasza:
76%

Írtatok itt jókat, kevésbé jókat , féligazságot is.

Szóval alapvetően kettő osztályba szedném a számítástechnikailag generált véletlen szám generátorok osztályait.

(Amiket lehet tovább bontani további osztályokra, persze)


Az egyik fajta szerint a generátor indítása előtt inicializálva van egy kezdeti seed értékkel.

Amiből kiszámít a generátor egy belső állapotot (vagy direktbe egyből a belső állapot kerül beállításra seed nélkül.)

Ezt a belső állapotot egy vagy több szám reprezentál (generátortól függ hogy hány szám írja le a belső állapotát).

Majd amikor véletlen számot kérünk tőle akkor egy előre jól megtervezett függvény szerint kiszámít ebből egy számot a függvény és egy új belső állapotot.

Ekkor az új belső állapotot veszi fel a generátor és a kiszámított véletlen számot adja eredményül. Ami igazából csak álvéletlen.

Majd minden egyes új (ál)véletlen szám számításakor ezt megismétli.

A kezdeti inicializálási seed értéket veheti az aktuális pontos idő mikroszekundum pontossággal, vagy számos egyéb paraméterből is kikeverheti.

Támogatni szokták az implementációk a seed érték közvetlen megadását, lehet mindig ugyan az is, ekkor mindig ugyanazt a sorozatot fogja adni a generátor indításától számítva.

Ez jól jöhet szimulációknál, ha pontosan megismételhetőre akarunk csinálni valami szimulációt. Továbbá az aktuális belső állapotot is ki lehet menteni, majd később újra azt betölteni és onnan folytatja akkor a generátor ahol máskor meg abbahagyta.

Ez szintén szimulációknál hasznos tud lenni.


A másik osztályba sorolt véletlen szám generátorok alapvetően abban különböznek hogy nem elég nekik egyetlen kezdeti seed érték.

Folyamatosan táplálni kell a generátort külső forrásból. Alapvetően úgy működnek mint az első osztály szerintiek, csak

ez esetben mindig hozzá keveri a belső állapotának beállításához a külső forrásból származtatott számszerű értékeket.

A külső forrásból származtatott számszerű értéketeknek kell olyannak lennie hogy azok lehetőleg egyediek és megismételhetetlenek legyenek.

A külső forrásból származtatott leképező függvénynek teljesíteni a lavina effektust. Ami azt jelenti, hogy nagyon érzékenynek kell lennie nagyon kis változásra. Ami akkor maximális ha leképező függvény bemenete csak egyetlen bitben tér el mint előzőleg akkor statisztikailag igaz a kimeneti minden bitjére, hogy 50% valószínűséggel lesz az mint előzőleg volt.

Persze ezt úgy kell érteni hogy természetesen determinisztikus ez a leképező függvény. Csak ha statisztikai tesztekkel teszteljük ezt a leképezést akkor e szerint az egyenletességi hipotézis szerint várhatók értelem szerűen a tesz eredményei.

Az is már tudomány hogy hány bites bemenetből hány bites kiemenet kell milyen esetben, vagyis hogy az adott bemenetnek mekkora az entrópiája, inkább becsüljük alul mint túl, ekkor lesz valóban előre megjósolhatatlan (persze ez a külső forrástól is függ, de ezért kell így csinálni a lavina effektus szerint, ezért mérjünk pl mikorszekundom helyett akár nanoszekundum pontosan és mérjünk hőmérségletet fok helyett ezred fok pontosan vagy még pontosabban stb).

Ezt a külső ugye lehet cpu hőmérséglet, futó folyamatok, hálózati forgalom stb. A random.org például légköri zajokat használ fel, de vannak külön hardveres random generátorok. Amiknek már külön kvantummechanikai okai vannak hogy miként működnek.

2020. dec. 3. 13:03
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!