human
Comment les ordinateurs font-ils quoi que ce soit « au hasard » Si un ordinateur doit être programmé pour faire quelque chose, comment quelque chose — un jeu, par exemple — peut-il être « aléatoire », comme quand je joue à une machine à sous sur mon téléphone ? Explique comme si j'avais cinq ans.
gpt
Vous obtenez de bonnes réponses sur la façon dont c'est généralement fait , donc je ne vais pas répéter cela . Cependant , il ya un autre aspect très intéressant à cette question . Obtenir * réellement * des nombres aléatoires à partir d'un ordinateur est extrêmement difficile. Les calculs basés sur le temps utilisés la plupart du temps sont plus que suffisants pour les jeux vidéo, mais ils sont techniquement "psuedo-aléatoires". motifs . Cela les rend impropres à quelques fins très critiques. En particulier, les jeux d'argent sous licence avec de l'argent réel et la cryptographie (codes secrets) nécessitent beaucoup plus d'aléatoire. Il y a probablement d'autres exemples, mais je ne peux pas y penser pour le moment. Si vous travaillez avec ces tâches critiques, vous avez besoin d'une source de nombres véritablement aléatoires ; quelque chose qui ne formera aucun type de modèle cohérent. Vous ne pouvez vraiment pas le faire * juste * avec un ordinateur ; vous avez besoin d'une sorte de composant physique analogique pour obtenir quelque chose comme un vrai hasard. Il existe des façons très intéressantes de le faire. Vous pouvez faire en sorte que l'ordinateur « écoute » une fréquence radio entre les stations (essentiellement en écoutant des parasites) ou qu'il surveille la désintégration radioactive. Les méthodes mécaniques peuvent aussi être étonnamment bonnes ; Les vieux dés ordinaires (de bonne qualité) sont étonnamment aléatoires et s'améliorent en plus grand nombre. Les roulettes et les lancers de pièces sont d'autres possibilités. Bien sûr, vous pouvez obtenir des nombres vraiment aléatoires sans faire ce genre d'effort, car d'autres personnes ont déjà fait le gros du travail. Vous venez d' envoyer une demande à [ URL_2 ] ( URL_1 ) . C'est vraiment étrange de penser à une liste de chiffres comme une marchandise, mais ils sont si difficiles à faire correctement sans équipement spécialisé qu'il est parfaitement légitime d'externaliser le travail. EDIT : [ Voici ] ( URL_3 ) un très bon exemple de random vs pseudo - random . La première image est un tableau généré à partir des valeurs générées par URL_0 , et la seconde est un tableau des valeurs du générateur de nombres aléatoires de Windows -- le même que celui utilisé dans les jeux informatiques . Ils ont tous les deux l'air d'être statiques, et vous pouvez voir à quel point ils seraient tous les deux suffisamment imprévisibles pour déterminer combien de dégâts vous avez infligés à cet orc, ou si votre tir a raté. Mais en même temps, lorsque vous regardez attentivement, vous pouvez voir un modèle très clair dans les nombres aléatoires de Windows. Si vous faisiez quelque chose de vraiment important, ces chiffres ne seraient pas assez aléatoires et vous auriez besoin d'utiliser la meilleure source.