AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Wie zufällig ist Random(x)?

Ein Thema von Touchdown · begonnen am 15. Jun 2004 · letzter Beitrag vom 7. Sep 2004
Antwort Antwort
Seite 1 von 5  1 23     Letzte »    
Touchdown

Registriert seit: 17. Feb 2003
227 Beiträge
 
#1

Wie zufällig ist Random(x)?

  Alt 15. Jun 2004, 23:35
Eigentlich ist doch alles recht logisch in der Programmierung, doch eine Funktion die irgendeine Zahl zurück geben soll ist doch eigentlich absolut untypisch.

Wie würdet ihr Random nachschreiben (hätte da leichte Probleme sowas unlogisches zu coden )?

Falls ihr was habt, wie zufällig ist diese Zahl dann. Oder gibt es dann immer noch Zahlen die öfter vorkommen als andere?

Wie schauts mit Random aus, absolut zufällig oder bedarf es einer neuen Version?
function getallfornothing: TGoldesel;
begin
result := TGoldesel.create;
end;
  Mit Zitat antworten Zitat
Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#2

Re: Wie zufällig ist Random(x)?

  Alt 15. Jun 2004, 23:38
Darüber habe ich auch schon oft nachgedacht.

Wie zufällig ist zufällig?

Irgendwie muss der Computer ja auch "zufällige" Zahlen berechnen. Aber nach welchem Schema oder nach welchem Verfahren?

MfG Florian
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#3

Re: Wie zufällig ist Random(x)?

  Alt 15. Jun 2004, 23:44
eine möglichkeit von vielen ist das rauschen einer diode ( mit einer elektronischen schaltung ) zu digitalisieren und dadurch die gewünschten zufallszahlen zu erzeugen

könnte vielleicht in der FPU stecken oder sonstwo im prozessor.. weil auf rein programmiertechnischer weise lässt sich das wohl nicht "zufällig genug" lösen.. gibt ja immerhin sehr viele security algorithmen die darauf aufsetzen und dadurch sicher sein müssen.. ja es gibt auch extra hardware die noch zufälligere und sichere zufallszahlen erzeugt.. aber das is eher was für bank servern und hochsicherheits anwendungen

wie das im pc haargenau funzt kann ich nur vermuten
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Wie zufällig ist Random(x)?

  Alt 15. Jun 2004, 23:52
Letzten Endes kann ein Computer nur pseudozufällige Zahlen liefern die, so man das Verfahren + Startwert/Randbedingungen kennt, völlig deterministisch sind. Das ist nun mal prinzipbedingt (auch wenn man hier und da mal meint ein PC hätte mehr mit Unlogik zu tun als anders herum )

Soweit ich das beurteilen kann liefert die Random-Funktion in Delphi eine sehr homogene Verteilung der Werte (bei scheinbar beliebigen Mengen an generierten Werten), und erweckt einen sehr guten Anschein von Zufälligkeit. Das Verfahren ist imho auch nicht wirklich trivial und ist schon eine ordentliche Denkleistung gewesen (es hat auch glaube ich einen Namen - der mir aber leider entfallen ist...)

Mich persönlich dürstet es nicht unbedingt nach Ersatz, wobei es aber niemals schaden kann die Wahl zu haben

gruss,
dizzy

\\edit: Diodenrauschen ist eine schöne Sache, da es sich meine ich um einen Quanteneffekt handelt (jede elektrische Leitung rauscht immer und minimal dadurch). Das wäre dann nur noch seeeehr seeeehr schlecht vorhersehbar (Bleibt generell die Frage: Wie "zufällig" kann überhaupt etwas sein? Aber nu, ist ja kein Philosophie-Forum hier )
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Wie zufällig ist Random(x)?

  Alt 15. Jun 2004, 23:56
Dann stellt sich mir aber doch die (philosophische) Frage ob es überhaupt Zufälle gibt.
Seit Newton wissen wir, dass actio = reactio gilt.
Demzufolge gibt es keine Zufälle oder die Zufälle sind Reaktionen auf Ereignisse... Oder?

MfG Florian

[edit] Jetzt editiert der da noch meine Frage mit rein... [/edit]
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Wie zufällig ist Random(x)?

  Alt 16. Jun 2004, 00:01
Zitat von flomei:
[edit] Jetzt editiert der da noch meine Frage mit rein... [/edit]
Nana, "der da"...
Aber die Frage zwang sich einem so schön auf *g*
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Benutzerbild von Stefan Hueg
Stefan Hueg

Registriert seit: 13. Jun 2004
Ort: Gießen
187 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Wie zufällig ist Random(x)?

  Alt 16. Jun 2004, 00:02
Wie Zufallszahlen generiert werden steht hier ausführlichst. Sie werden kompliziert mathematisch berechnet und weisen nach genügend langer Ausführungszeit eine gewisse Regelmäßigkeit auf. Sie werden auch Pseudozufallszahlen (siehe wikipedia) genannt da sie durch einen determinantischen Algorithmus generiert werden (siehe wikipedia).

Es gibt jedoch neuerdings eine PCI-Steckkarte, die Zufallszahlen generieren kann. Dabei werden Photonen durch ein halb-durchlässiges Plättchen (keine Ahnung welcher Stoff) geschossen. Da aus einer Lichtquelle die Photonen zufällig austreten, bedeutet dies dass die Zufallszahl einzigartig und nicht linear ist. Der Auftreffpunkt ist die Zufallszahl (wenn ich mich richtig erinnere). Wurde mal bei Heise gepostet, ich finde den Link aber nicht mehr.

Eine weitere interessante Sache ist Quantenkryptographie. Siehe hier.

So ich hoffe ich konnte Licht ins Dunkel bringen Hab mir auch viel Mühe geben ^^
Stefan Hueg
  Mit Zitat antworten Zitat
Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#8

Re: Wie zufällig ist Random(x)?

  Alt 16. Jun 2004, 05:22
also ich weiß nur das sich delphi beim zufall die Uhrzeit zu hilfe nimmt
Nico Müller
  Mit Zitat antworten Zitat
Tubos

Registriert seit: 25. Feb 2004
Ort: Yspertal (Niederösterreich)
1.014 Beiträge
 
Delphi 7 Personal
 
#9

Re: Wie zufällig ist Random(x)?

  Alt 16. Jun 2004, 06:18
Wobei GetTickCount auch wieder ungenau wäre, das geht ja nur auf 5 ms.
Und wenn man schnell hintereinander die random-funktion aufruft und die mit GetTickCount funktioniert, ist es auch wieder nicht mehr so zufällig.
Ich glaube aber auch nicht, dass sie das mit QueryPerformanceCounter gemacht haben...aber irgendwie sind die Zahlen dann doch zufällig
Lukas
  Mit Zitat antworten Zitat
Brüggendiek

Registriert seit: 13. Dez 2002
Ort: Dortmund
275 Beiträge
 
Delphi 5 Standard
 
#10

Re: Wie zufällig ist Random(x)?

  Alt 16. Jun 2004, 07:25
Hallo!

Zitat von Nicodius:
also ich weiß nur das sich delphi beim zufall die Uhrzeit zu hilfe nimmt
Das ist so nicht richtig!

Die Funktion "Random" berechnet den nächsten Wert aus der globalen Variablen "RandSeed". Bei gleichem Wert von RandSeed und gleichem Wertebereich kommt immer dasselbe heraus!

Die Prozedur "Randomize" setzt RandSeed auf einen aus der Uhrzeit stammenden Wert.
Folge: Randomize vor jedem Random erzeugt bei hinreichend schnellem Aufruf mehrfach dieselbe Zahl (Uhrzeit hat sich zwischen den Aufrufen nicht geändert).

Das manuelle Setzen von RandSeed vor den Randoms auf einen festen Wert ergibt bei jedem Programmaufruf dieselbe Folge von "Zufallszahlen". Allerdings weist Borland darauf hin, daß bei späteren Delphi-Versionen die Implementierung von Randon geändert werden könnte, so daß dann die Zahlenfolge eine andere wäre (Programm kann nicht auf neuere Versionen portiert werden).

Gruß

Dietmar Brüggendiek
Dietmar Brüggendiek
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 5  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz