Seite 1 von 1

Zufallszahlen!!

Verfasst: Montag 28. April 2008, 17:09
von search
Hallo zusammen,
ich beschäftige mich gerade ein wenig mit dem Thema Zufallszahlen. So wie ich das sehe, und auch gelesen habe, ist es gar nicht möglich "richtige" Zufallszahlen mit dem PC zu erzeugen. Die von Computern erzeugten Zahlen nennt man ja "Pseudozufallszahlen". Unter Python gibt es ja das random-modul!! Habe da mal ein par Sachen ausprobiert:

Code: Alles auswählen

#!/usr/bin/python
# -*- coding: utf-8 -*-

import random
zufall = random.randrange(0,2147483647)  
zufall_1 = random.randrange(0,1147483647)
ergebniss_1 = zufall ^ zufall_1
print ergebniss_1
Habt ihr für Zufallszahlen noch bessere Vorschläge, oder wie erzeugt ihr den eure Zufälle :-) ????
Gruß

Verfasst: Montag 28. April 2008, 17:19
von rayo
Ich benutze immer random.random(). Mehr nicht

Ich denke die Entwickler haben sich schon was bei dem Zufallsgenerator überlegt, da müssen wir nicht von Hand noch nachbessern.

Pseudozufallszahl bleibt eine Pseudozufallszahl, auch wenn 2mal der Generator in Anspruch genommen wird.

Gruss

Verfasst: Montag 28. April 2008, 17:21
von search
Hallo rayo, ist mir schon klar das eine pseudozahl eben nur eine pseudozahl bleibt, egal wie oft random benutzt wird. War nur so eine Idee!! Ich wollte evtl. versuchen einfach die Streuung der Zahlen zu erhöhen.
Gruß

Verfasst: Montag 28. April 2008, 18:30
von EyDu
Erstaunlich ist ja, dass immer Personen, die kaum Ahnung von Numerik haben, Zufallszahlen "zufälliger" machen wollen. Interessanterweise konvergieren diese Verfahren teilweise oder bilden ausgeprägte Cluster. Also bleib einfach mal bei der Standardimplementierung ;-) Das Erzeugen von Pseudozufallszahlen geschieht ja nicht ganz zufällig, ein wenig Mathematik steckt da schon hinter.

Verfasst: Montag 28. April 2008, 20:07
von search
Hallo EyDu, ich finde es erstaunlich, hier im Forum, dass es auf ganz normale Fragen immer irgendwelche blöden Kommentare als Antwort gibt. Ich weiß dass ich keine (oder nur sehr wenig) Ahnung von der Materie habe. Deshalb habe ich auch gefragt was ihr bei dem Thema so macht, oder wie ihr das mit den Zufalsszahlen macht!!!!
Aber es ist wohl so, dass hier im Forum nur Genies Fragen stellen dürfen, und die Dummies einfach keine (oder nur blöde) Antworten bekommen. Ich würde sagen bleibt weiterhin ruhig in eurem dähmlichen Glasturm sitzen und quatscht euch gegenseitig eure Genialität in die Ohren.
Viel Spaß dabei!!!! :evil:

Verfasst: Montag 28. April 2008, 20:31
von Leonidas
rayo hat geschrieben:Ich denke die Entwickler haben sich schon was bei dem Zufallsgenerator überlegt, da müssen wir nicht von Hand noch nachbessern.
Immerhin wird da der Mersenne Twister verwendet, welcher sicherlich zu den besseren Algorithmen zählt, die es momentan gibt.

Verfasst: Montag 28. April 2008, 20:53
von EyDu
Tut mir Leid, dass mein Kommentar falsch rübergekommen ist. Ich wollte nur deutlich machen, dass auch bei so alltäglichen Dingen wie Zufallszahlen sehr unerwartete Sachen passieren können. Und das ist sicher nicht nur bei dir so, auch allen anderen tappen mal in solche Fallen. Außer natürlich BlackJack, der macht per Definition keine Fehler :P

Verfasst: Dienstag 29. April 2008, 06:55
von search
OK, Entschuldigung angenommen. Ich bin eben neugierig und wollte einfach mehr über das Thema Zufallszahlen erfahren. Vor allem seit ich die ganzen Infos im Netz über das Thema gelesen habe, ist doch recht kompliziert!!!!
Gruß :shock:

Verfasst: Dienstag 29. April 2008, 08:21
von BlackJack
Ob man mit einem Computer "richtige" Zufallszahlen erzeugen kann, hängt nicht unwesentlich davon ab, wie man "richtig" definiert. Moderne Betriebsysteme sammeln "externe" Informationen, wie Zeiten zwischen Tastaturanschlägen oder Mausbewegungen, und stellen Zufallszahlen zur Verfügung, die diese Informationen mit einbeziehen. Diese Zahlen sind nicht so einfach vorher zu sagen, selbst wenn man den Algorithmus kennt.

@EyDu: Manchmal baue ich absichtlich Fehler ein, um zu sehen, ob's jemand merkt. ;-)

Verfasst: Dienstag 29. April 2008, 10:52
von EyDu
BlackJack hat geschrieben:@EyDu: Manchmal baue ich absichtlich Fehler ein, um zu sehen, ob's jemand merkt. ;-)
Diesen Satz müsst man eigentlich mal an den Anfang einer Klausur setzen :-)

Verfasst: Dienstag 29. April 2008, 11:19
von EnTeQuAk
Oder als Argument bei der Auswertung anbringen, warum man schon wieder ne 6 geschrieben hat :D

„Ich wollt ja nur mal sehen ob sies' auch sehen„ – kommt bestimmt gut :)

Verfasst: Dienstag 29. April 2008, 18:27
von sechsrad
ich denke die Entwickler haben sich schon was bei dem Zufallsgenerator überlegt,...
von was träumst du nachts?

Verfasst: Dienstag 29. April 2008, 18:29
von sechsrad
wie Zufallszahlen sehr unerwartete Sachen passieren können.
auf dem rechner nicht. der timer tickt immer gleich.

Verfasst: Dienstag 29. April 2008, 18:30
von sechsrad
Diesen Satz müsst man eigentlich mal an den Anfang einer Klausur setzen
6....setzen.

Verfasst: Dienstag 29. April 2008, 18:43
von EyDu
Nicht schlecht sechsrad, drei Posts und fast drei ganze Sätze ;-) Vielleicht solltest du dich wirklich mal mit der Erzeugung von Zufallszahlen befassen, bevor du hier solche Kommentare ablässt. Es ist gar nicht so einfach, eine glaubwürdige Verteilung hinzubekommen.

Verfasst: Dienstag 29. April 2008, 19:38
von search
Danke für die Info Blackjack! Damit kann ich was anfangen, sonst noch jemand mit Ideen???
Gruß

Verfasst: Dienstag 29. April 2008, 20:11
von lunar
Ich werfe nochmal meinen Lieblings-Zufallszahlen-Trick ``random = random.SystemRandom()`` in den Raum. Damit wird ``os.urandom`` zur "Erzeugung" von Zufallszahlen verwendet. Von Windows habe ich keine Ahnung, der Zufallsgenerator des Linux-Kernels, der von os.urandom indirekt angesprochen wird, ist auf jeden Fall sehr, sehr gut. Er benutzt Ereignisse in der Hardware, um Zufallszahlen zu erzeugen. Außerdem benutzt er eventuell eingebaute Zusatzhardware. Moderne Intel-Boards haben in teureren Ausführungen beispielsweise einen Hardware-Zufallszahlengenerator (fragt mich aber nicht, wie die funktionieren, ich bin Programmierung und kein E-Techniker ;) )

u

Verfasst: Dienstag 29. April 2008, 20:13
von Sr4l
sechsrad hat geschrieben:
rayo hat geschrieben: ich denke die Entwickler haben sich schon was bei dem Zufallsgenerator überlegt,...
von was träumst du nachts?
Bitte einen Link oder Quelle die belegt das die Python Entwickler bei der Implementierung der Zufallszahlen (grob)fahrlässig gehandelt haben.
Danke.

Back2Topic:
Ich habe etwas über "echten Zufall" in der Quantenphysik gesucht, aber nicht das gefunden, was ich vor einiger Zeit gelesen habe. Das folgende, was ich dann aber gefunden habe, ist auch nicht schlecht.


http://homepage.univie.ac.at/Franz.Emba ... index.html
Auszug aus der genannten Website hat geschrieben:Wir haben es hier mit einer Rolle des Zufalls zu tun, die weit über die Rolle des Zufalls in der klassischen Physik hinausgeht. Betrachten wir im Kontrast dazu den Zufall, wie er im Glücksspiel verwendet wird. Wenn wir etwa einen Würfel haben, so wird jede der Zahlen 1-6 rein zufällig auftauchen, aber im Mittel etwa gleich oft. Für jeden einzelnen Wurf könnten wir uns aber im Prinzip genau überlegen und erklären, warum gerade diese Zahl, die wir beobachten, auftritt. Dies hängt etwa ab davon, wie wir unsere Hand drehen, wie die Oberfläche des Tisches beschaffen ist usw. Es läßt sich also eine Erklärung konstruieren, auch wenn wir nicht genau wissen, wie der Prozeß tatsächlich abgelaufen ist. Der Zufall ist in diesem Fall ein subjektiver. Er ist auf nicht ausreichende Kenntnis der Details zurückzuführen. Eine solche Erklärung ist in der Quantenphysik nicht mehr möglich. Hier ist eine genaue Kenntnis der Details im Prinzip nicht möglich, da solche Details nicht existieren. Der Zufall in der Quantenphysik ist daher ein objektiver. Es ist nicht nur unser Unwissen, sondern das Verhalten des Einzelsystems ist tatsächlich in keiner Weise in der Natur vorgegeben.

Verfasst: Dienstag 29. April 2008, 20:39
von rayo
sechsrad hat geschrieben:
ich denke die Entwickler haben sich schon was bei dem Zufallsgenerator überlegt,...
von was träumst du nachts?
Was genau willst du mir sagen?

Verfasst: Dienstag 29. April 2008, 21:12
von BlackJack
@rayo: Bitte nicht füttern. :-)

Edit (Leonidas): Restliche Diskussion in "Wissenschaftliche Theorie vs. Kreationismus" abgetrennt.