mit X Würfeln >= Y 4-en würfeln

Neue Frage »

Chang Auf diesen Beitrag antworten »
mit X Würfeln >= Y 4-en würfeln
Hallo

Ich möchte in Java eine Funktion Prob(x, y) mit 2 Parametern schreiben:

x = Anzahl Würfel
y = Anzahl geworfener 4en

Die Funktion soll für eine Anzahl von x Würfeln berechnen wie wahrscheinlich es ist, dass y oder mehr 4en gewürfelt werden.

Ich habe mir überlegt, dass das gut rekursiv implementiert werden kann und ich habe bereits über mehrere Lösungsansätze nachgedacht, bin mir aber unsicher welcher der richtige bzw ob überhaupt irgendetwas richtig von dem ist, was ich mir gedacht habe :/


Lösung 1:

if(x == y)
return 1 / 6^y
else
return (1/ 6^x) + (5^y-x / 6^y-x) * Prob(x+1)


Lösung 2:

if(x == y)
return 1 / 6^y
else
return (1/ 6^x) + Prob(x+1)

Es wäre super wenn mir jemand was dazu sagen könnte, da ich mir gestern echt de Kopf zerbrochen habe und ich nicht wirklich weiter komme. Zum else Fall von Lösung 1 1/ 6^x berechnet die Wahrscheinlichkeit ein x-Pasch zu würfeln und (5^y-x / 6^y-x) berechnet die Wahrscheinlichkeit, das anschließend nicht nochmal ein passender Wurf dabei ist. Ich bin mir aber nicht sicher ob das + zwischen den beiden Termen da hingehört. Vermutlich ist das * an der Stelle richtig, da sonst ja schon jeder Wurf der den Term (5^y-x / 6^y-x) erfüllt als gültiger Wurf gewertet wird.

In Lösung 2 habe ich den 2ten Term weggelassen, da in der Aufgabenstellung steht, das auch ein 4er-Pasch >x zählt.
Leopold Auf diesen Beitrag antworten »

Wenn du schon kein Latex verwendest, solltest du Brüche und Exponenten zumindest in Klammern setzen. Sonst ist das nämlich nicht zu entziffern.

Nehmen wir einmal , also die Wahrscheinlichkeit, bei 5 Würfeln mindestens 3 Vieren zu würfeln. Die Würfel besitzen eine Identität: erster, zweiter, dritter, vierter, fünfter Würfel.

Jetzt unterscheiden wir zwei Fälle.

Fall I: der fünfte Würfel zeigt keine Vier

Die bedingte Wahrscheinlichkeit dafür ist . Wenn trotzdem mindestens 3 Vieren liegen, heißt das, daß bei den ersten vier Würfeln schon mindestens 3 Vieren liegen. Die gesamte Wahrscheinlichkeit im I. Fall ist .

Fall II: der fünfte Würfel zeigt eine Vier

Die bedingte Wahrscheinlichkeit dafür ist . Wenn insgesamt also mindestens 3 Vieren liegen, heißt das, daß bei den ersten vier Würfeln mindestens 2 Vieren liegen. Die gesamte Wahrscheinlichkeit im II. Fall ist daher .

Und da die beiden Fälle disjunkt sind, kann man die Wahrscheinlichkeiten addieren.

Allgemein hat man also die folgende Rekursion



Die Funktion muß mit Integer-Werten und aufgerufen werden. Durch den ersten Summanden wird kleiner. Bei fortgesetzter Rekursion endet das einmal damit, daß gilt. Beim zweiten Summanden wird auch kleiner. Bei fortgesetzter Rekursion endet das einmal bei . Du mußt daher die beiden Terminierungsfälle und berücksichtigen. Mit welchen Werten terminiert dann ?
 
 
Chang Auf diesen Beitrag antworten »

Hallo Leopold,

Danke für deine Hilfe!
Die Abbruchbedingungen könnten so sein:



und



und P(x, y) sollte immer Werte zwischen 0 und 1 zurück geben.
HAL 9000 Auf diesen Beitrag antworten »

Zitat:
Original von Chang

Man könnte da auch einfach schreiben. Augenzwinkern
Chang Auf diesen Beitrag antworten »

Ok stimmt, weil

ja immer 1 ist

über x = y habe ich nochmal nachgedacht und jetzt denke ich, dass es

sein muss, da es ja immer 6 günstige würfe von geben kann.
HAL 9000 Auf diesen Beitrag antworten »

Zitat:
Original von Chang
über x = y habe ich nochmal nachgedacht und jetzt denke ich, dass es

sein muss, da es ja immer 6 günstige würfe von geben kann.

Wie kommst du denn auf 6 günstige Würfe? unglücklich

bedeutet, dass alle Würfe Vieren sein müssen. D.h., unter allen Wurffolgen erfüllt nur eine einzige, nämlich (4,4,...,4) diese Bedingung.
Chang Auf diesen Beitrag antworten »

Ach Mist stimmt natürlich ist richtig.

Jetzt bleibt noch die Frage wie kommt man auf so eine Lösung. Ich will ja nicht immer hier nachfragen müssen, sondern irgendwann von selbst auf die Lösung kommen.

Ist das eine Binomialverteilung? Es gibt doch bei der Aufgabe keine Reihenfolge und die Aufgabe ist auch mit "zurücklegen", da jede Zahl ja immer wieder erneut gewürfelt werden kann, oder?
Leopold Auf diesen Beitrag antworten »

Ich bin in der Tat von den Binomialkoeffizienten aus auf die Rekursion gekommen. Wenn man als die Anzahl der -elementigen Teilmengen einer -elementigen Menge definiert, dann ist die "Regel vom Pascalschen Dreieck"



sofort einleuchtend, indem man die -elementigen Teilmengen einteilt, je nachdem, ob sie enthalten oder nicht. Und diesen Gedanken habe ich auf übertragen. Und mit kleineren Anpassungen hat das dann funktioniert.

Hier habe ich also aus meinem Erfahrungsschatz geschöpft. Im allgemeinen kann man die Frage, wie man auf eine Lösung kommt, nicht beantworten. Kreativität, und sei es nur die einfache Version, sich an etwas zu erinnern, kann man nicht algorithmisieren.
HAL 9000 Auf diesen Beitrag antworten »

Und meine Erfahrung hier im Board ist, dass die Frage "Wie kommt man auf..." oftmals eigentlich im Sinne "Warum gilt..." gemeint ist. Und in diesem Sinne beantworte ich diese Frage meistens, denn mit der ersten Frage kann ich auch nichts anfangen. smile
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »