![]() |
Hoe kiest een computer random?
Als je een computer de opdracht geeft om uit bijvoorbeeld A B C D een random letter te kiezen, hoe doet hij dat dan? Volgens mij kunnen computers zelf niet "kiezen", omdat ze alleen kunnen doen wat ze geprogameerd zijn, en een random optie kiezen kan toch niet geprogameerd zijn...
|
Ze kunnen ook niet willekeurig kiezen. Toeval bestaat niet, als je er over nadenkt. Dus ook niet voor computers!
Wat computers doen, is uit een hele lange rij getallen, een getal kiezen. Vaak wordt die rij getallen bij het opstarten van het besturingssysteem opnieuw aangemaakt door een ingewikkelde formule waar de computer iedere keer (voorgeprogrammeerde) getallen invult, zodat er meer variatie is. De computer kiest dus niet maar haalt eigenlijk gewoon een getal uit de uitkomst van een ingewikkelde formule. Het lijkt volkomen toevallig, die getallen, maar het is gewoon uit een onsamenhangende rij genomen. Je kunt dus ook geen verband tussen die getallen zien, zo ingewikkeld is die uitkomst van die formule. Het is een beetje onduidelijke omschrijving, maar get the point? |
fijn dat je even poneert dat toeval niet bestaat.
dan ben je nl. verder dan de huidige quantumfysici. :cool: (y) maar computers bepalen meestal aan de hand van een seed (getal wat gebruikt wordt om de 'willekeur' te 'initialiseren', meestal wordt hiervoor de huidige systeemklok gebruikt (redelijk nauwkeurig ding, dus veel mogelijke seeds)) een random getal. op die seed worden een aantal arbitraire operaties uitgevoerd, waardoor je een zogenaamd pseudo-random getal krijgt. verder is het trouwens ook mogelijk dat een of ander apparaat bij het berekenen van een willekeurig getal ook bijvoorbeeld voltages van zijn eigen elektronica in de berekening opneemt, of bijvoorbeeld een gemeten temperatuur (mbv sensoren enzo), maar dit wordt nog niet echt op grote schaal toegepast. |
Oh... Zoiets dacht ik al :) .
Wel een ingewikkeld proces :eek: |
Citaat:
|
Citaat:
|
Ik gebruik met C++ als seed altijd de datum en tijd.
|
Citaat:
|
Citaat:
Komt nog eens bij dat radioactieve isotopen vervallen in andere (vaak radioactieve) isotopen. Je hebt dus nooit een pure stof. Ideaal dus :) |
Citaat:
|
Citaat:
maar die 3e alinea vertelde ik toch al maar met andere woorden :s |
Citaat:
Ik heb geen verstand van natuurkunde of wat t ook is maar dat kan iedereen je vertellen. |
Citaat:
|
Citaat:
'NIET TE BEINVLOEDEN DOOR TEMPERATUUR DRUK ETC'.. |
Citaat:
Neem maar eens 1 enkel atoom. Die heeft elk moment X kans om te vervallen. Ga jij voorspellen wanneer dat is? Op dat soort kansen, maar dan in positie/moment/energie etc, is de hele quantumfysica gebouwd. Het vervallen van een enkel atoom is praktisch volledig random. Die halfwaardetijd is gewoon een stukje statistiek. Als je op een paar gram radioactief materiaal let zul je die ene atoom meer of minder niet opmerken. M.a.w.: De natuur is volledig random, alleen merken wij het niet zo vaak in ons dagelijks leven. Alleen streng gelovigen zullen je anders vertellen. Einstein zei hierover eens: "God dobbelt niet" . Toen geloofde hij zelf niet in een van zijn eigen ontdekkingen. |
Citaat:
|
Citaat:
|
Citaat:
|
Newtons wetten zijn absoluut. In theorie kunnen we, als we alle data hebben, alles wat in het helaal gebeurd tot in het oneindige voorspellen.
Maar door het onzekerheidsprincipe hebben alle quantummechanische effecten een statistische kans. Of god dobbelt, of er zijn verborgen variabelen in subatomaire deeltjes. We weten bijvoorbeeld nog steeds niet hoe die werken, we weten niets van de interne mechanisme(misschien loop ik achter dus corrigeer me even, voor zover ik weet weet men dat nog niet). |
Citaat:
|
Citaat:
|
Als je wil weten hoe een computer een 'random' getal krijgt, bijvoorbeeld als gebruik voor de schade in een op D&D bebaseerd computerspel dan gebruikt men hiervoor nu eenmaal geen radioactief isotoop...
:rolleyes: |
Citaat:
maargoed dit kan ik natuurlijk niet hard maken. |
Je mag alle factoren niet kennen. :)
Ten minste, niet te precies. Er is altijd onzekerheid in de quantummechanica. Einstein vond dit niet leuk, hij zei "God does not play dice." Maar dit was natuurlijk een hele onwetenschappelijke filosofische uitspraak. Het is gewoon wachten op een theorie die op een nog lager niveau als quantummechanica werkt. |
Citaat:
Citaat:
|
Citaat:
|
Citaat:
Een radioactief atoom heeft op elk moment een kans van 0 om te vervallen. Ja, dat is onmogelijk. (de reden hierachter is meer wiskundig dan natuurkundig, maar desalniettemin erg logisch... ik wil hier niet al te diep op ingaan, als je het wil weten PM je maar) Een radioactief atoom heeft slechts een kans om te vervallen binnen een bepaald tijdsinterval. |
Citaat:
|
Ja, bijvoorbeeld.
Maar zegt die theorie al iets over de aard van de onzekerheid in kwantum mechanica? |
Citaat:
|
String theorie is zelf ook een quantumtheorie.
De theorie is fundamenteler in de zin van dat het een groter gebied van de fysica beschrijft (nl. quantumgravitatie). Verder heb je, in tegenstelling tot het huidige Standaardmodel, maar te maken met 1 soort deeltje: de string/snaar. De snaar nemen we waar als een elementair deeltje, afhankelijk van de manier waarop de snaar trilt. Je kan dit bijvoorbeeld opvatten als volgt: hoe meer de snaar trilt, des te meer energie het heeft. Aangezien E=mc2 heb je dan te maken met een zwaarder deeltje. Op dit gebied is de snaartheorie dus wel fundamenteler. Maar net als in de quantummechanica, heb je bij snaartheorie nog steeds te maken met zaken als operatoren en commutatoren. En het zijn juist deze begrippen die voor de onzekerheidsrelaties zorgen. Op dit gebied is de snaartheorie dus niet fundamenteler. |
Er zijn aanwijzingen dat random bij computers niet zo random is als algemeen werd aangenomen.
Computers blijken een neiging te hebben om vaker een 0 te ´kiezen`dan een 1. (of andersom) Of zoiets, ben niet zo into informatica, maar heb er eens wat over gelezen. Waarom dit zo is, weet men (nog) niet. Groetjes Ben(die absoluut niet van programmeren houdt :) |
Ik vind dit wel een interessant onderwerp maar we zijn nu een beetje aan het afdwalen.
Het is nu duidelijk dat computers random-getallen berekenen en niet zoals mensen gewoon een getal kiezen. Een formule bepaalt welk getal er gekozen wordt. Nu komen we bij het punt dat dat programma/formule geschreven is door iemand die vanuit zijn eigen beeld een randomgetal genereert. Als men die formule erbij pakt kan men het randomgetal voorspellen, zeker als de formule gebruik maakt van de systeemklok. Hoe random zijn die getallen dan eigenlijk? Verder kan het geen kwaad zolang het programma maar goed functioneert (niet de hele tijd hetzelfde getal kiezen). Iemand die een RANDOM gebruikt in zijn programma zal hier van bewust zijn en zal geen belangrijke waarden aan deze functie toekennen, belangrijke waarden in de zin van beveiliging van banken, militaire toepassingen, enz. Wie het programma in handen krijgt kan er ook achter komen welk random getal er gekozen gaat worden op een bepaald moment. |
Dat ligt er maar aan. Het feit dat de systeemklok wordt gebruikt wil niet direct zeggen dat je het resultaat kunt voorspellen - tenminste niet zonder de formule te kennen.
|
Ik heb er nooit uitgebreid mee getest maar volgens mij zijn de getallen random in de zin dat de kansen voor alle mogelijkheden gelijk zijn. Maar dan weer niet random omdat ze niet willekeurig maar uit een 'seed' (de systeemklok/datum enz) worden gehaald.
|
Citaat:
het is 100% afhankelijk van het algoritme dat de uitkomst bepaald, en in hoeverre dat algoritme willekeurige uitkomsten kan geven. alle uitkomsten en hun berekeningen zijn van tevoren geprogrammeerd, maar als ze complex genoeg, niet te voorspellen zijn (bijv omdat je niet weet hoe het algoritme in elkaar steekt) dan is dit net zogoed als willekeurige uitkomsten. |
Citaat:
Maar voor de rest klopt het wel wat ik zeg. Er zijn boeken over te vinden...lees ze maar eens. Groetjes Ben(die graag onzin verkondigd :p |
Citaat:
Hoewel de kans dat een deeltje vervalt binnen een bepaalde tijd constant is, is het aantal vervallende atomen binnen een bepaalde tijdsspanne wel random, binnen bepaalde grenzen. Dat 'getal' wordt dus als random seed gebruikt. Zo werken de meeste 'echte' RNGs. Encryptie-hardware heeft zelfs vaak wat radioactieve stof + geigerteller aan boord, specifiek voor de RNG. |
Citaat:
Inderdaad, dat is wiskundig (voor de niet-zo-beta's: de kans wordt uitgerekend mbv een integraal, en als je een "moment" bekijkt, geeft die integraal altijd 0, omdat je dan het interval t tot t+dt bekijkt, met dt -> 0, en de waarden op die tijden moet je van elkaar aftrekken, dus f(t)-f(t) en dat is altijd 0). |
Een infinitesimaal interval is ook een interval en dus heeft een radioactief atoom ook een kans te vervallen in dat interval. Dit wordt vaak genoteerd als dP (infinitesimale kans, dus iets heel anders dan een kans van 0).
|
Alle tijden zijn GMT +1. Het is nu 17:12. |
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.