0 Daumen
108 Aufrufe

Aufgabe: Simulation einer Molekülbewegung mit Zufallszahlen


Problem/Ansatz:

Ein Molekül bewege sich pro Sekunde einmal in eine der vier Richtungen oben, unten, rechts, links. Wie groß ist die Wahrscheinlichkeit, dass es sich nach 10 Sekunden noch immer im rot umrandeten Bereich aufhält?

Man stelle sich ein Schachbrettfeld aus 21x21 Feldern vor. Das Molekül befindet sich in der Mitte dieses Schachfeldes und der der ror umrandete Bereich besteht aus 5x5 Feldern; das bedeutet, dass das Molekül den rot umrandeten Bereich verlässt, sobald es 3 Bewegungen in dieselbe Richtung gemacht hat. Alles klar?

Ich habe das Problem so gelöst, dass ich den 4 möglichen Bewegungen 8 Ziffern zugeordnet habe und habe dann mit Excel Zufallszahlen erzeugt und dann ausgewertet. Nach 25 "Versuchen" komme ich 14 mal außerhalb und 11 mal innerhalb, also ist p = 0,44.

Frage: Reichen 25 Versuche schon, um eine Wahrscheinlichkeit zu berechnen? Gibt es eine elegantere Methode?

Ergänzung: Nach 50 Versuchen komme ich auf p=0,34.

von

Weiß man beiläufig warum 4 Richtungen in 8 Ziffern übersetzt werden.

Und was sind 10 Sekunden? 10 Moves?

Ich sehe einen 4er Würfel in x Würfen und einen 3er Pasch?

Die Festlegung den 4 Richtungen 8 verschiedene Ziffern zu zuordnen ist willkürlich von mir getroffen. Natürlich hätte man den 4 Richtungen auch nur 4 Ziffern zuordnen brauchen. Mit meiner Festlegung brauche ich nicht so viele Zufallszahlen, da ich nur 2 Ziffern ignoriere. Bei 4 relevanten Ziffern, sind ja 6 Ziffern zu ignorieren. An der Simulation ändert das aber nichts.

Wie in der Aufgabe steht ist jede Sekunde eine Bewegung, also 10 Schritte insgesamt.

Wie sieht ein 4er-Würfel aus? Ich dachte, ein Würfel hat 6 Seiten.

1 Antwort

0 Daumen

Ein 4er Würfel

A1:=REST(GANZZAHL((ZEILE()-1)/4^(SPALTE()-1));4)+1

hat 4 Seiten (Tetraeder) mit den Augen 1...4.

Nach 3 mal die gleiche Augenzahl (3er Pasch) ist er raus

Nach dem 9. Move ist er sicher raus (p=1), weil bei 4 Freiheitsgraden spätestens der 9. Wurf einen 3er Pasch erzeugt

12341234?

25 Simulations-Schritte sind nicht aussagekräftig - kostet ja nix z.B. 10^n Schritte auszuwerten

von 14 k

Wieso ist das Molekül auf jeden Fall nach dem 9. Schritt raus? Es kann sich doch hin und her bewegen, also zB 4 mal nach rechts, 3 mal nach links, 2 mal nach oben, 1 mal nach unten. Dann befindet es sich von der Ursprungsposition nur 1 Schritt nach rechts und 1 Schritt nach oben, da die anderen Schritte sich aufheben.

Daher gibt es eine Wahrscheinlichkeit von ca 34% (nach meinen Simulationen), dass es nach 10 Schritten noch innerhalb des rot markierten Quadrats ist.

Ach so, es darf wieder zurück kommen?

Davon war nicht die Rede, hab ich flasch verstanden....

Darf es sich über die diagonale bewegen oder wirklich nur rauf,runter, rechts, links? Muß es sich bewegen oder kann es ruhen?

Mir ist es schwer gefallen die 14 Out zu bekommen: ohne Ruheschritt

1 rauf, 2 rechts, 3 runter, 4 links ==> K, Gesamt Rauf/runter, L Gesamt Links/rechts:

blob.png

Exakt: n=1048576, out = 476032 ~ 0,45397949

Deine Tabelle kann ich nicht nachvollziehen.

Hier ist meine Tabelle, wie ich auf 0,34 komme bei 50 Versuchen:

blob.png

HM,

so gehts mir mit Deiner Tabelle ;-). Und 50 Versuche sind nicht aussagekräftig - Du mußt schon ein paar hundert machen um was sehen zu können, gern auch ein paar tausend...

Bei mir liegt die Simulation nahe an der Gesamtbetrachtung: bei out~45.4%.

Zum einen kannst Du mit meiner Formel oben, 10 mal kopieren auf A1:J1 und über 1048576 Zeilen alle möglichen Moves darstellen und dann auswerten

1234 Richtungen zuordnen

Exakt: n=1048576, out = 476032 ~ 0,45397949

Eine Simulation hab ich mit

A1:J1==ZUFALLSBEREICH(1;4)

gemacht. Wie gesagt

1 rauf, 2 rechts, 3 runter, 4 links
(Übertag:1->1, 3->-1, 2->1,4->-1 und rauf/runter, links/rechts aufaddieren)

2332112441 = →↓↓→↑↑→←←↑ = ↑→ = 1 1

==> K, Gesamt Rauf/runter, L Gesamt Links/rechts:

Wenn abs(K,L)>=3 dann ist er raus


Am schnellsten ist ein Makro

1 rauf, 2 runter, 3 rechts, 4 links

Option Explicit
Option Base 1

Function würfelmove(k As Integer, n As Integer)
Dim i As Long, R As Long, j As Integer, s As Integer, ou As Integer, rl As Integer
Dim V
V = Array(1, -1, 1, -1)

For i = 0 To k ^ n - 1
  ou = 0
  rl = 0
  For j = 0 To n - 1
      s = (Int(i / k ^ j) Mod k) + 1
      If s < 3 Then
          ou = ou + V(s)
      Else
          rl = rl + V(s)
      End If
  Next
  If Abs(rl) > 2 Or Abs(ou) > 2 Then
      R = R + 1
  End If
Next

würfelmove = R

End Function

---

=würfelmove(4;10)

Ich hab mal die ActiveCell (grün gerahmt) auf die Reise geschickt, also was zum Zugucken:

RREF.gif

Da bekommt man einen halbwegs erkennbaren Trend ab ca. 120..200 moves:

Bei über 1000-1500 moves bist du so gut wie sicher in der nähe meines Prognosewertes!

blob.png
blob.png

10 x 240 moves
0,470833333
0,4375
0,433333333
0,516666667
0,458333333
0,508333333
0,4125
0,420833333
0,516666667
0,4125
Mean
0,45875

nach 240 moves ist noch nicht mal die nachkommastelle zuverlässig, also liegt das ziel wert intervall zwischen 40%-50%. und wenn man diese simulation oft genug wiederholt werden sich auch ausreißer einstellen, die weiter von ziel intervall abweichen.

2400 moves ==> 0,4525

Danke für die Mühe!

Aber bitte...

Ich hab meinen Makro mal die Endpositionen markieren und zählen lassen, weil ich mir überlegt hab, dass mit geradzahligen moves nicht alle Felder zu erreichen sind - und so isses auch:

blob.png


Gegenbeispiel mit 11 movesblob.png

Vielleicht sollte ich mal alle 4^10 move positionen eintragen lassen - scheint so eine Art Galtonbrett in 2 Dimmensionen als Raute zu sein. Könnte man eine Formel draus machen?

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community