Upjers kann nicht rechnen - bitte Mathematiker einstellen!

Gast

Upjers kann nicht rechnen - bitte Mathematiker einstellen!

Beitrag von Gast » Do 18. Okt 2012, 10:16

Hallo!

Ja, es geht um das leidige Thema Zucht. Ja, ich weiß, es ist alles Zufall und man kann es nicht beeinflussen. Aber man kann den Zufallsgenerator derart falsch programmieren, so dass die angegebenen Zuchtwahrscheinlichkeiten nicht stimmen. Und ich kann mittlerweile mit statistischer Sicherheit behaupten, dass Upjers hier auf jeden Fall dringend nachbessern muß.

Ich züchte mit voll ausgebautem Zuchtzentrum und habe meist Wasserstelle & Behausung im Gehege. Aktuell geht es um meine am Sonntag (14.10.) gestartete Wochenaufgabe, wo ich unter anderem 2x Papageien züchten soll. Ich habe zwei Papageiengehege (Wald) - eines mit Behausung und Wasserstelle, das andere nur mit Wasserstelle. Damit komme ich auf 35% sowie 25% Zuchterfolg. Das heißt durchschnittlich 30%. Da ich Mathematik studiert und beruflich als Dozent an Fachhochschulen, Universtitäten und einem privaten Institut tätig bin, habe ich natürlich bei solchen Geschichten immer ein großes mathematisches Interesse.

Nun weiß ja bereits jeder 10. Klässler eines Gymnasiums, das die Zuchterfolge mit der zugehörigen Zuchtwahrscheinlichkeit binomialverteilt sind (Erfolg/Misserfolg). Nun züchte ich seit Sonntag jeden Tag in beiden Papageien-Gehegen jeweils einen Papagei mit durchschnittlich 30% Erfolgsquote. Bis einschließlich gestern (Mittwoch, 17.10.) sind dies also 4 Tage à 2 Züchtungen, d.h. 8 Zuchtversuche. Davon hat bis heute kein einziger geklappt. Nun zur Rechnung.

Der Erwartungswert des Experiments ist µ = n * p also µ = 0.30 * 8 = 2.4. Das heißt, ich müßte längst 2.4 Papagei-Babys im Zoo begrüßen dürfen. Jetzt mag man behaupten, es gibt ja auch statistische Schwankungen - aber wie wahrscheinlich diese vom Erwartungswert abweichen, kann man folgendermaßen berechnen.

Mit der allseits bekannten Formel der Binomialverteilung B(n,p,k) = (n "über" k) * p^k * (1-p)^(n-k) läßt sich ermitteln:

0 Papagei(en) gezüchtet : B(8,0.3,0) = 0.0576
1 Papagei(en) gezüchtet : B(8,0.3,1) = 0.1977
2 Papagei(en) gezüchtet : B(8,0.3,2) = 0.2965
3 Papagei(en) gezüchtet : B(8,0.3,3) = 0.2541
4 Papagei(en) gezüchtet : B(8,0.3,4) = 0.1361

Benutzen wir nun die summierte/kumulierte Binomialverteilung bzw. entsprechende Gegenwahrscheinlichkeiten ergibt sich für

mehr als 0 Papagei(en) gezüchtet : B_sum(8,0.3,1,8) = 0.9424
mehr als 1 Papagei(en) gezüchtet : B_sum(8,0.3,2,8) = 0.7447
mehr als 2 Papagei(en) gezüchtet : B_sum(8,0.3,3,8) = 0.4482
mehr als 3 Papagei(en) gezüchtet : B_sum(8,0.3,4,8) = 0.1941

Das heißt also, ich hätte mit erschlagend erfolgreichen 95% bereits mindestens einen Papagei und mit 75% bereits 2 Papageien gezüchtet und somit die Wochenaufgabe erfüllt. Fakt ist aber, dass ich bisher keinen einzigen Papagei erfolgreich gezüchtet habe! Sollten heute wieder beide Papageienzüchtungen fehlschlagen, liegt die Wahrscheinlichkeit bei 10 Versuchen mindestens einen Papagei zu züchten bereits bei über 97%!

Oder um es übertrieben anschaulich zu machen: Jeder, der mal versucht hat, eine Münze 8x zu werfen und dabei 8x Kopf und kein einziges Mal Zahl erhält, würde doch eher instinktiv an eine gefälschte Münze als an Zufall glauben. Klar, die Münze hat 0.5 Wahrscheinlichkeit und der Papagei 0.3, aber es ist verhältnismäßig nah beieinander.

Kein einziger Baby-Papagei bei 8 Zuchtversuchen mit 0.3 Erfolgsquote läßt für mich nur einen Schluß zu : Upjers hat den Zufall falsch programmiert! Daher meine Bitte um eine dringende Überprüfung des Zuchtalgorithmus (insbesondere für Papageien). Von den ganzen Diamanteinnahmen sollte es kein Problem sein, mal für ein paar Stunden einen fähigen Mathematiker zu bezahlen, der das für Upjers implementiert. Würde man einen Hypothesentest bei einer größeren Stichprobenanzahl durchführen, könnte man dies sogar mit einem statistischen Signifikanzniveau von 95% belegen, dass die angegebene Zuchtwahrscheinlichkeit von 30% für die Papageien nicht stimmt und die wahre Quote deutlich darunter liegt. Der alpha-Fehler sowie beta-Fehler wären dabei immernoch gering.

Für mich ist bei 5% jedenfalls der Punkt überschritten, an dem ich noch vom "seltenen Ereignis" ausgehen kann. Es ist keine "normale Abweichung" vom zufälligen Erwartungswert mehr. Upjers möge sich bitte hierzu äußern und im Zweifelsfall den Code für den Zufallsgenerator offenlegen, um jegliche Bedenken auszuräumen.

Danke & viele Grüße




Update 23.10.2012

Um zu belegen, dass meine fehlgeschlagene Papageienzucht kein zufälliger Ausreißer war, kann ich gleich mit Nashörnern nachlegen. Es ist wirklich unglaublich! In der Zeit vom 14.-20. Oktober hatte ich neben den 2 Papageien auch den Auftrag, 2 Nashörner in meiner "silbernen" Wochenaufgabe zu züchten. Dafür habe ich ebenfalls zwei Gehege aufgebaut: eines mit Wasserstelle und Behausung (35%) und eines nur mit Behausung (30%). Ich habe alle 7 Tage für jeweils 2 Nashorn-Zuchten genutzt (14 Versuche), wobei jede Nashornzucht im Schnitt mit 32.5% Wahrscheinlichkeit hätte ein Baby-Nashorn ergeben müssen, wenn die Zufallsgeneratoren stimmen. Das heißt, ich hätte µ = n * p = 0.325 * 14 = 4.55 Nashörner im Mittelwert erhalten sollen. Tja und jeder kann sich denken, wie viele es waren. Genau: kein einziges!

Die Wahrscheinlichkeit dafür, dass man bei 14 Versuchen mit 32.5% Basiswahrscheinlichkeit keinen einzigen Treffer (Zuchterfolg) landet, liegt bei erschreckenden:

B(14,0.325,0) = 0.0041 (0.41%). Sprich, in 1000 Fällen sollte das nur 4x passieren!

Oder anders ausgedrückt: mit B_sum(14,0.325,1,14) = 0.9959, d.h. mit 99.6% Wahrscheinlichkeit hätte ich bei 14 Versuchen mindestens ein einziges Nashorn haben müssen und mit B_sum(14,0.325,2,14) = 0.9684, d.h. mit 96.9% sogar beide für die Wochenaufgabe notwendigen Nashorn-Babys. Dem war aber nicht so.

Wenn man das noch angesichts der Tatsache betrachtet, dass meine Papageienzucht ebenfalls zu einem derart seltenen Ende gefunden hat und die beiden Wahrscheinlichkeiten multipliziert, wird das ganze absurd selten. Es kann einfach nicht stimmen, dass die angegebenen Zuchtwahrscheinlichkeiten der Wahrheit entsprechen!
Zuletzt geändert von Gast am Di 23. Okt 2012, 13:05, insgesamt 1-mal geändert.

EddyKira
Beiträge: 221
Registriert: Mi 7. Dez 2011, 21:46

Re: Upjers kann nicht rechnen - bitte Mathematiker einstelle

Beitrag von EddyKira » Do 18. Okt 2012, 11:32

und genau deswegen hasse ich browsergames. man kann sie errechnen.

b2T: recht hast du. in allem. absolut.

trotzdem wegen dem mathemist hasse ich brwosergames. im ernst. alles errechenbar.

Benutzeravatar
SaiZero
Beiträge: 6696
Registriert: Fr 16. Sep 2011, 11:08

Re: Upjers kann nicht rechnen - bitte Mathematiker einstelle

Beitrag von SaiZero » Do 18. Okt 2012, 11:36

Ich glaube, du benutzt hier lediglich die falsche Berechnung. Die Zucht funktioniert im Prinzip so (ich nehme mal das Beispiel der Bälle aus dem Topf):

Papagei mit 30% Wahrscheinlichkeit:

100 Bälle, davon 70 Nieten und 30 Treffer. Bei jeder Zucht ziehst du. Allerdings quasi mit Zurücklegen. D.h. es sind immer 100 Bälle da, immer im gleichen Verhältnis. Die Wahrscheinlichkeit steigt nicht, je öfter du ziehst. In deinem konkreten Fall wären es sogar zwei Töpfe, einmal mit 25 Treffer und 75 Nieten und mit 30 Treffern und 70 Nieten.

Falls dich die Formel genauer interessiert, gibt es noch einen Wikipedia Artikel zum entsprechenden Algorithmus: Mersenne-Twister
Bild <- Anklickbar
Bitte seid so nett und schreibt eure an mich gerichteten Anfragen grundsätzlich an das Supportformular.

Gast

Re: Upjers kann nicht rechnen - bitte Mathematiker einstelle

Beitrag von Gast » Do 18. Okt 2012, 12:06

SaiZero hat geschrieben:Papagei mit 30% Wahrscheinlichkeit:

100 Bälle, davon 70 Nieten und 30 Treffer. Bei jeder Zucht ziehst du. Allerdings quasi mit Zurücklegen. D.h. es sind immer 100 Bälle da, immer im gleichen Verhältnis. Die Wahrscheinlichkeit steigt nicht, je öfter du ziehst.
Richtig, das was Du beschreibst ist genau die Bionomialverteilung wie sie bereits von Francis Galton im 19. Jahrhundert beschrieben wurde und wie ich es oben vorgerechnet habe. Die Wahrscheinlichkeit bleibt bei jedem Zug immer gleich, des ändert sich nur die Anzahl der Versuche. Das ist Schulmathematik der 10. Klasse, da braucht es keinen Mersenne-Twister mit dem ich ganz zufällig gut vertraut bin. ;) Dieser ist ohnehin nur ein Seed-gesteuerter Pseudo-Zufallszahlen-Generator, der zwar kein schlechter ist, aber falsch implementiert eben zu solch kuriosen Fehlverteilungen führt. Auch das ist - wenngleich höhere - Mathematik. Wenn Du mir eine falsche Berechnung unterstellen möchtest, unterstelle ich Dir das Fehlen von Kenntnissen in den Grundlagen der Stochastik. :)

Ich habe ja ein paar ganz einfache Vermutungen:

(1) Upjers hat den Algorithmus falsch implementiert.

(2) Upjers hat weiterhin Probleme mit der richtigen Zuchtchance. Es gab ja bis zuletzt das Problem der falschen Anzeige der Zuchtwahrscheinlichkeit. Zwar wurde immer betont, dass dies nur ein Anzeigefehler ist, ich glaube aber, der Fehler steckt tiefer im Detail und wirkt sich auch auf die Zuchtwahrscheinlichkeit selbst aus.

(3) Upjers wählt den Seed falsch. Ich kann mir übertrieben gesagt gut vorstellen, dass ein Pratikant mal eben meinte, die IP wäre ein guter Wert (meinetwegen noch die Uhrzeit). Das Problem was bei mir auftritt, ist, dass ich hinter einem Kabelmodem immer die gleiche IP bekomme (zumindest wenn ich keinen großen Aufwand mit neuen MAC Adressen betreiben will) und jeden morgen auf +/- 10 Minuten genau um die gleiche Uhrzeit meine Züchtungen starte. Und zufälligerweise klappen bei mir manche Züchtungen dauerhaft gar nicht und andere mit vorhersagbarer Regelmäßigkeit überraschend gut. Das ist ein deutlicher Hinweis auf "falschen" Zufall.

Ich halte alle 3 Fehlerquellen für möglich und vermutlich liegen sie sogar gleichzeitig vor. Und der Vorschlag, ich möge meine Züchtungen mal zu einer anderen Uhrzeit starten, hebt sich von selbst aus, da Upjers ja durch die Blockade des Zuchtslots für 24h bzw. bis zum Reset einen regelrecht dazu zwingt, immer zur gleichen, möglichst frühen Uhrzeit zu züchten. Ein Seed, der richtig berechnet wird und sich aus mehr als IP und Uhrzeit zusammensetzt, wäre mehr als wünschenswert und dringend angebracht.

Gast

Re: Upjers kann nicht rechnen - bitte Mathematiker einstelle

Beitrag von Gast » Do 18. Okt 2012, 12:20

Also um der Sache wirklich auf den Grund zu gehen müsste man ja einen statistischen Signifikanztest auf Basis eines Hypothesentests durchführen.

Statistik hat's ja echt in sich - ich hab mich selbst sehr lang damit auf wissenschaftlicher Basis heraumgeschlagen, und oftmals sind die tatsächliche Wahrscheinlichkeiten dann doch ganz andere, als man gefühlsmäßg erwartet hätte, insbesondere wenn man einen recht kleine Stichprobe hat - und 8 Test sind eine recht kleine Stichprobe - da ist das Ergebnis durchaus noch mit signifikanter Unsicherheit belastet.

Deswegen würde ich vorschlagen, an die Sache nicht mit der Schulstatistik heranzugehen, sondern wirklichen einen ordentlichen Hypothesentest aufzusetzten, z.B. einen einseitigen t-Test, mit einem Konfidenzwert von vllt. 97%; um zu ermitteln wie hoch die Wahrscheinlichkeit wirklich ist, dass die angegebene Wahrscheinlichkeit der tatsächlichen entspricht. Erst dann haben wir etwas, worüber wir sprechen können. Alles andere sind Spekulationen.

Und wenn sich durch so einen Nachweis rausstellen sollte, dass es eine signifikante Abweichung gibt, lässt sich auch viel besser argumentieren, dass etwas geändert werden muss. ;-)

Gast

Re: Upjers kann nicht rechnen - bitte Mathematiker einstelle

Beitrag von Gast » Do 18. Okt 2012, 12:26

maru2 hat geschrieben: (3) Upjers wählt den Seed falsch. Ich kann mir übertrieben gesagt gut vorstellen, dass ein Pratikant mal eben meinte, die IP wäre ein guter Wert (meinetwegen noch die Uhrzeit). Das Problem was bei mir auftritt, ist, dass ich hinter einem Kabelmodem immer die gleiche IP bekomme (zumindest wenn ich keinen großen Aufwand mit neuen MAC Adressen betreiben will) und jeden morgen auf +/- 10 Minuten genau um die gleiche Uhrzeit meine Züchtungen starte. Und zufälligerweise klappen bei mir manche Züchtungen dauerhaft gar nicht und andere mit vorhersagbarer Regelmäßigkeit überraschend gut. Das ist ein deutlicher Hinweis auf "falschen" Zufall.
Das mit der Uhrzeit ist auf jeden Fall mal ein guter Gedanke. ^^ Zumindest würde das erklären, warum bei so vielen Leuten (siehe Thread Zuchterfahrung) die Mehrfachzuchten am Tag laufen haben (bspw. 2mal Giraffe oder 3mal Kroko oder was auch immer), entweder beide fehlschlagen oder beide gelingen.
Das Phänomen fiel mir öfters auf:
Zum Beispiel bei den Stachelschweinen, die haben ja nur gut 6 h Zuchtzeit, d.h. da kann man nacheinander 2 Zuchten am Tag anschmeißen.

Wenn ich sie zeitgleich starte ist das Ergebnis immer (bisher zumindest) identisch 2mal funktioniert es oder 2mal Fehlschlag - Wenn ich sie aber nacheinander anschmeiße kommt es häufig zu abweichenden Ergebnissen 1mal klappts und einmal nicht.

>>>> Wenn es also bei allen Spielern zu solchen Ergebnissen kommt, dann kann man den Zufall schon mal ausschliessen. :D

Gast

Re: Upjers kann nicht rechnen - bitte Mathematiker einstelle

Beitrag von Gast » Do 18. Okt 2012, 12:48

dsara hat geschrieben: 8 Test sind eine recht kleine Stichprobe - da ist das Ergebnis durchaus noch mit signifikanter Unsicherheit belastet.

Deswegen würde ich vorschlagen, an die Sache nicht mit der Schulstatistik heranzugehen, sondern wirklichen einen ordentlichen Hypothesentest aufzusetzten, z.B. einen einseitigen t-Test, mit einem Konfidenzwert von vllt. 97%; um zu ermitteln wie hoch die Wahrscheinlichkeit wirklich ist, dass die angegebene Wahrscheinlichkeit der tatsächlichen entspricht.
Da stimme ich Dir vollkommen zu. Dennoch funktioniert ja ein einseitiger Hypothesentest durchaus auch schon bei einer Stichprobengröße von ca. 10 ganz gut. Deswegen macht man ihn ja, um eben nicht alle Exemplare testen zu müssen. Mehr ist immer besser, das ist rein statistisch vollkommen klar. :)

Und ja, es kann durchaus immer mal zu solchen raren Ausreißer-Fällen kommen. Das Problem ist aber, das ich das ganze schon länger beobachte. Ich starte am Tag immer alle 6 Züchtungen, bevorzugt in Gehegen mit 30-40% Zuchtchance. Also grob 33%. Das heißt, ich müsste auf lange Sicht mit 2 Züchtungen (6 * 1/3) pro Tag nach Hause gehen - egal welche Tierart. Und seit Monaten schon ist es eher so, dass alle 2 Tage ingesamt 1 oder 2 Tiere herausspringen - also 1/12 (8.3%) bzw. 1/6 (16.7%), was deutlich unter dem Erwartungswert auf lange Sicht liegt.

Mit den Papageien ist mir das nur derart extrem aufgefallen jetzt, dass ich mir mal Luft machen musste. So kann das jedenfalls nicht weitergehen. Oder Upjers soll fair angeben, dass sie uns lieber wie Kühe weiter unsere €'s abmelken möchten und die realen Zuchtchancen vielleicht nur halb oder ein drittel so groß sind wie angegeben - dann weiß man zumindest, woran man ist, auch wenn es nicht erfreulich ist.

jasonlee
Beiträge: 1087
Registriert: Do 22. Mär 2012, 02:17

Re: Upjers kann nicht rechnen - bitte Mathematiker einstelle

Beitrag von jasonlee » Do 18. Okt 2012, 13:07

Ich bekomme auch vieeeeeel weniger Babys heraus als es nach den % sein müßte. Mein erstes Biberkind war nun nach ich weiß nich 12/13 Versuchen. Otter und Seebär war noch nie was. Luchs von 7 Zuchten 1 Baby. Alles voll ausgebaut.

Gast

Re: Upjers kann nicht rechnen - bitte Mathematiker einstelle

Beitrag von Gast » Do 18. Okt 2012, 13:11

maru2 hat geschrieben: Da stimme ich Dir vollkommen zu. Dennoch funktioniert ja ein einseitiger Hypothesentest durchaus auch schon bei einer Stichprobengröße von ca. 10 ganz gut. Deswegen macht man ihn ja, um eben nicht alle Exemplare testen zu müssen. Mehr ist immer besser, das ist rein statistisch vollkommen klar. :)
Naja . es ist schon so, dass sich die Beweislage (eben die Konfidenzwerte) einens Hypothesentests verbessern, wenn du größere Stichproben hast - das ist ja gerade das Elegante am Gesetz der Großen Zahlen :mrgreen: Und auch rein intutiv ist ja klar, dass man mit viel mehr Sicherheit sagen kann, dass etwas daneben liegt, wenn mann es in 100.000 Fällen beobachtet und nicht in nur 10 oder so. Alle Hypothesentest werden umso genauer je mehr Stichproben du hast.
Und ja, es kann durchaus immer mal zu solchen raren Ausreißer-Fällen kommen. Das Problem ist aber, das ich das ganze schon länger beobachte. Ich starte am Tag immer alle 6 Züchtungen, bevorzugt in Gehegen mit 30-40% Zuchtchance. Also grob 33%. Das heißt, ich müsste auf lange Sicht mit 2 Züchtungen (6 * 1/3) pro Tag nach Hause gehen - egal welche Tierart. Und seit Monaten schon ist es eher so, dass alle 2 Tage ingesamt 1 oder 2 Tiere herausspringen - also 1/12 (8.3%) bzw. 1/6 (16.7%), was deutlich unter dem Erwartungswert auf lange Sicht liegt.
Es kann aber auch sein, dass es sich nicht nur um Ausreißer handelt, sondern dass das ganze Feld woanders liegt als gesagt wird, und genau das prüft ja der Statistiktest.

Es ist ja auch nur eine Überlegung, eine Anrgegung für euch. Wenn du deine Beobachtungen mal durch einen einseitigen t-Test analysisiert hast du halt den Vorteil, dass du genau angeben kannst, mit welcher Wahrscheinichkeit hier tatsächlich eine Abweichung vorliegt und mit welcher Wahrscheinlichkeit es sich nur um echten, ehrlichen Zufall handelt, dass deine Ergebniss so ausgefallen sind. Das ist einfach etwas präziser als Beweislage, deswegen würde ich das empfehlen.

Benutzeravatar
JFK
Beiträge: 158
Registriert: Di 14. Feb 2012, 12:13

Re: Upjers kann nicht rechnen - bitte Mathematiker einstelle

Beitrag von JFK » Do 18. Okt 2012, 13:14

Richtige Zufallszahlen gibt es in der IT nicht, nur Pseudo-Zufallszahlen aus Umgebungsrauschen.
Die Methode mit der das Spiel Zahlen ermittelt ist grundlegend http://de.wikipedia.org/wiki/Mersenne-Twister
genaugenommen nutzen wir eine Funktion bei der 1. (falsch umgesetzt) und 3. (falscher/kein Seed) nicht passieren sollte.
http://de.php.net/mt_rand
Diese Methode wird oft genutzt (bei anderen Webseiten) und bisher gibt es keine bekannten signifikanten Fehler.

Testen kann man den Zufallszahlengenerator des Server unter:
http://www.myfreezoo.de/random/

Ob eine Zucht klappt ist relativ einfach:
Wenn Prozentwert >= (Zahl zwischen 0 und 100)

Es gibt keine Zusammenhänge zwischen Zuchterfolg und Uhrzeit - IP - Sonnenflecken - Anzahl der Zucht - Level - usw...
Es gibt nur die % vom Tier selber, die Gehege-Objekte und das Futter usw...

//@Edit: Zuchtplätze vergessen
Mit freundlichen Grüßen,
JFK
Entwickler-Team
Wo gehts zum Upjers Support?

Antworten