Kennen oder haben Sie praktische, einfach zu erlernende "In-Head" -Algorithmen, mit denen Menschen Zufallszahlen erzeugen können? Mit "im Kopf" meine ich .. vorzugsweise ohne externe Werkzeuge oder Geräte. Auch eine hohe Leistung (viele Zufallszahlen pro Minute) ist wünschenswert.
Frage dies auf SO, aber es hat nicht viel Interesse bekommen. Vielleicht ist dies besser für Programmierer geeignet.
self-improvement
algorithms
random
Magnus Wolffelt
quelle
quelle
Antworten:
Hier ist ein Algorithmus von George Marsaglia :
quelle
Lesen Sie diesen Artikel über Geomantie . Insbesondere der Abschnitt zum Generieren von Geomantic-Diagrammen . Es handelt sich um eine Pseudozufallszahlen-Generierungstechnik, die Binärziffern und einige einfache rekursive Berechnungen verwendet. Es scheint, als könntest du das ziemlich einfach in deinem Kopf tun (obwohl ein Stück Papier helfen würde).
Haftungsausschluss: Ich habe es nicht selbst ausprobiert. Wenn ich eine hinreichend zufällige Zahl benötige, erhalte ich entweder eine Ausgabe von
/dev/random
, verwende dierand
Sprache, die ich zur Hand habe, oder rolle meine vertrauenswürdige d20.Wenn Sie ein Wunderkind der Mathematik sind, ist die Methode des mittleren Quadrats eine recht einfache, wenn auch merklich unzuverlässige Methode.
quelle
Ich denke, eine vernünftige Annahme ist, dass Sie sich auf die enorme Menge verbaler Informationen verlassen müssen, die Sie in Ihrem Gehirn speichern. Die Quelle kann alles sein, Songtexte, Gedichte, Monty Python-Skizzen, aber es muss etwas sein, das Sie auswendig können.
Dann müssen Sie einen ziemlich zufälligen Teil davon auswählen, um unbewusste Vorurteile so weit wie möglich zu beseitigen. Ein Weg, dies zu tun, wäre zum Beispiel, ein Lied auszuwählen, eine Zahl
k
zwischen 10 und 20 zu wählen und dann denk
th Buchstaben in seinen Texten zu finden.Dies ergibt natürlich keine einheitliche Verteilung für sich, da die Häufigkeit der Buchstaben unterschiedlich ist, es sich jedoch um einen zufälligen Buchstaben handelt oder zumindest so nahe, wie ich es ohne eine externe Quelle für möglich halte.
Update: Übrigens, wenn Leute gebeten werden, eine zufällige Folge von Münzwürfen zu schreiben, ist der weitaus häufigste Fehler, Ihre Folge "zu zufällig" zu machen: Läufe mit identischen Ergebnissen sind zu kurz, was eine einfache Lauflänge ist Analyse wird zeigen. Diese Methode zielt hauptsächlich darauf ab, diese Falle zu umgehen. Natürlich können sich aus dem Schatten dieser Lauflängenverzerrung andere Anomalien ergeben, aber Sie benötigen geeignete Experimente, um sie zu finden. Ironischerweise kann ein Algorithmus zum Erzeugen von Zufallszahlen durch alleiniges Denken nicht durch alleiniges Denken gefunden werden.
quelle
Probieren Sie Ihre Uhr.
Ich mache das, wenn ich eine Zufallszahl brauche, die einen Faktor von 60 (Sekunden) hat. Nimm das passende Modulo, egal wie spät es ist. 16:17:23 Uhr, simuliert einen Würfelwurf, wird zu 5.
quelle
Hervorragende Frage. Ich befürchte, dass sich eine gute Antwort als sehr schwierig erweisen könnte.
Aber zu Beginn ist es ziemlich einfach, eine „echte“ Zufälligkeit zu erzeugen, wenn zwei Personen beteiligt sind: Lassen Sie einfach eine der Personen lautlos in ihrem Kopfmodul eine Zahl zählen, und die andere sagt nach einem beliebigen Intervall „Stopp“. Anschließend kann diese Zahl mit Standardmethoden in andere Verteilungen umgewandelt werden.
Um diese Methode robust zu machen, darf der Modul nicht zu groß sein, da sonst eine starke Tendenz gegenüber kleinen Zahlen besteht. Es würde mich sehr interessieren, ob es Arbeiten zur Analyse der stochastischen Eigenschaften dieser Methode gibt.
quelle
Dies ist eine komplexe Frage; Ich werde versuchen, ein bisschen zu erklären, ohne zu weit ins Unkraut zu streifen.
Zuerst müssen wir fragen "Was ist wahre Zufälligkeit?" Solche Diskussionen degenerieren schnell zu philosophischen Gewässern, aber das Wesentliche ist: "Ist das Universum wirklich zufällig?" Mit anderen Worten, wenn Sie Zeit und Materie quantifizieren, können Sie den nächsten Zustand des Universums aus dem aktuellen Zustand berechnen? Wenn ja, dann ist das Universum deterministisch und es gibt keine echte Zufälligkeit (siehe, was ich mit "philosophisch" meine?)
Weil "wahre Zufälligkeit" schwer zu definieren ist, geben wir uns oft mit "Pseudozufälligkeit" zufrieden. Dies ist in der Regel erforderlich, wenn auf einem Computer "Zufallszahlen" generiert werden sollen.
Der einfachste Pseudozufallszahlengenerator wäre so etwas wie Dilberts berühmter "9 .. 9 .. 9 .." - Algorithmus. Aber intuitiv scheint es nicht sehr gut zu sein (was natürlich der Witz ist). Statistiker haben eine ganze Reihe von Tests entwickelt, um festzustellen, ob eine Folge von angeblich zufälligen Ausgaben "gut" ist. Beginnen Sie mit der Wikipedia-Seite für "Chi-Quadrat-Test" und verbringen Sie einen Nachmittag damit, über diese Tests zu lesen.
Ein einfacher Computeralgorithmus wie ein "linearer Kongruenzgenerator" erzeugt Zahlen, die gut genug für einen Chi-Quadrat-Test sind (Sie müssen diesen Algorithmus jedoch noch aus etwas "aussäen").
Der nächste Schritt bei "Güte" ist "kryptografisch starke Zufälligkeit". Dies bedeutet, dass Sie bei einer gegebenen Folge a1, a2, ... die nächste Zahl in der Folge nicht mit "angemessener Wahrscheinlichkeit" vorhersagen können, es sei denn, Sie verwenden viel Berechnung. Diese Zahlen werden manchmal als "rechnerisch pseudozufällig" bezeichnet. Ein üblicher Weg, um eine solche Sequenz zu erhalten, ist über eine "Hash-Kette" wie folgt: a1 = SHA512 (a2), a2 = SHA512 (a3), ... Da wir glauben (basierend auf Erfahrung, nicht auf mathematischen Beweisen), dass SHA512 ist Wir glauben, dass es "unmöglich" ist, vorauszusagen, wenn nur a1 gegeben ist.
Nun stellt sich die Frage, was ist das Beste, was Menschen nach den in Ihrer Frage festgelegten Regeln tun können? Menschen sind bekanntermaßen schlecht darin, Zufälligkeiten zu erzeugen. Früher gab es eine Website, auf der Sie versuchten, Münzwürfe durch "zufälliges" Eingeben von H, T, T, H, T, T usw. zu generieren, als würden Sie eine Münze werfen (aber Sie tun es in dein Kopf). Nach einer Weile begann die Website, Ihre Flips in mehr als 50% der Fälle vorherzusagen (unter Verwendung eines Hidden Markov-Modells). Wir sind einfach schlecht darin.
Es gibt Möglichkeiten, die Situation mit verschiedenen Mischtechniken zu verbessern, die wahrscheinlich in Ihrem Kopf machbar sind. Und es gibt sogar Anwendungen, die ich mir ausdenken könnte, warum Sie dies wünschen (politischer Gefangener möchte eine Nachricht an externe Verbündete verschlüsseln). Aber ich denke, dieser Beitrag ist lang genug. :)
quelle
Der eigentliche Grund für die Verbreitung von werkzeugbasierten RNGs ist, dass ein guter In-Head-Algorithmus zur Erzeugung von Zufallszahlen erst noch entwickelt werden muss .
Glücklicherweise sind tragbare Zufallszahlengeneratoren - einschließlich Münzen zum Werfen, Würfel (mit verschiedenen Facettenzahlen) zum Rollen, Karten zum Pflücken und Strohhalme zum Ziehen - relativ einfach zu geringen Kosten zu erhalten. Darüber hinaus gibt es für die Technophilen unter uns einige ziemlich gute Simulationen dieser Tools, die für die meisten mobilen Plattformen verfügbar sind.
Ich kann keines dieser Produkte jedem Fleischgeschirr vorziehen.
quelle
Hoch randomisierte, große Menge pro Minute und vom Menschen erzeugt? Wird nicht passieren
Die Hauptprobleme, auf die Sie stoßen werden, sind:
Dies führte dazu, dass viele Kryptografen die "In-Head" -Techniken zugunsten von zufälligen externen Prozessen aufgaben, da es einfach zu einfach war, Muster basierend auf "In-Head" -Zahlen zu erarbeiten.
Off-Topic aber interessant
Der Solitaire-Algorithmus (dargestellt in Neal Stephensons Cryptonomicon ) ist zwar kein Mechanismus zur Erzeugung von Zufallszahlen in Ihrem Kopf, zeigt jedoch, wie schwierig es ist, Zufallszahlen für kryptografische Zwecke zu verwenden. Es ist nur eine Packung gewöhnlicher Spielkarten erforderlich, um eine einigermaßen sichere Ausgabe zu erzielen, die Methode ist jedoch recht kompliziert.
quelle
Bitte treten Sie vom Schreibtisch weg und gehen Sie nach Las Vegas.
Die Menschheit hat Dutzende von Randomisierungsverfahren. Sie können sie alle in Las Vegas sehen.
Sie haben sich drehende Kreise. Sie haben Würfel fallen. Und Sie haben Token gemischt. Sie arbeiten alle wunderbar gut.
Würfel sind vielleicht die ältesten. Anscheinend wurden an einer Stelle langgestreckte 4-seitige Stöcke verwendet. Symmetrische Würfelknochen von Schafen waren seit Jahrtausenden beliebt. Wir verwenden diese Art von Randomisierern seit - wahrscheinlich - ungefähr zur selben Zeit, als wir die Sprache entwickelten.
http://itunes.apple.com/us/app/motionx-dice/id287509231?mt=8
"Wer arithmetische Methoden zur Erzeugung von Zufallszahlen in Betracht zieht, befindet sich natürlich in einem Zustand der Sünde"
--- John von Neumann
quelle
Mir fällt nichts ein. Tatsächlich würde ich erwarten, dass alles, was Sie sich ausgedacht haben, so viele Vorurteile enthält, dass es wertlos wäre.
Wenn ich Zufallszahlen brauche, würfle ich normalerweise.
quelle
Fragen Sie nach einem LCM, das Sie in Ihrem Kopf machen können? Beachten Sie, dass die Idee, dass dies besser ist als Würfel, absurd bleibt.
Dies ist jedoch so zufällig, wie es jeder endliche, bestimmte und effektive Algorithmus möglicherweise sein kann.
http://www.vias.org/simulations/simusoft_lincong.html
http://www1.i2r.a-star.edu.sg/~knandakumar/nrg/Tms/Probability/Probgenerator.htm
U_ {k + 1} = (a \ mal U_k + b) mod (m + 1).
Es ist einfacher zu sehen, was dies tut, wenn wir kleine Werte a = 5, b = 1 und m = 7 auswählen. Das solltest du in deinem Kopf können.
quelle