So, der Tipp-Bot ist nun endlich in einer benutzbaren Version (ich sage nicht “fertig”, evtl. könnend a ja nach und nach noch Komponenten eingebaut werden, fürs Erste sollte das aber reichen) vorhanden, er basiert vage auf diesem Vorschlag von Volker, ich habs aber doch noch etwas modifiziert.
Erst nochmal zur Klärung: Wofür braucht man diesen Bot eigentlich?
Ganz einfach: Er gibt automatisch Tipps ab, wenn man das mal vergessen hat. Und damit er nicht irgendwie tippt, kann man ihn nach seinen Vorstellungen konfigurieren.
Was unterscheidet Bot-Tipps von richtigen Tipps?
Da Bot-Tipps ja nicht bewusst gesetzt wurden, werden sie für die Berechnung der Jokerpunkte nicht herangezogen, d.h. man kann zum einen den Bot keinen Joker settzen lassen und zum anderen beeinflussen die Bot-Tipps nicht die Punkte, die andere für Joker bekommen.
Optisch lassen sich die Tipps auch unterscheiden: Sie sind in der Tippübersicht leicht ausgegraut dargestellt und in den Balkendiagrammen zu den einzelnen Spielen auch gesondert hervorgehoben.
Und jetzt wirds spannend: Wie konfiguriert man den Bot?
Grundätzlich ist es so, dass man jeder Mannschaft zwei Stärkewerte zuweist. Einmal die Heimstärke und dann die Auswärtsstärke. Dies können beliebige ganze, positive Zahlen sein.
Treffen nun zwei Mannschaften aufeinander, werden die jeweiligen Werte verglichen und mit weiteren Werten berechnet.
Hier mal ein Beispiel (den Rechenweg auf gelbem Hintergrund kann man sich übrigens bei der Konfiguration zu jedem Tipp anzeigen lassen, wenn man auf das Fragezeichen hinter der Partie klickt):
- Leverkusen spielt also zu hause gegen Mainz. Leverkusen hat als Heimstärke 20 Punkte, Mainz auswärts nur 6.
- Diese Punkte werden nun noch mit einem Faktor multipliziert. Wofür ist der gut? Zum einen, kann es sein, dass man einfach die Differenz generell größer ausfallen lassen will (da nur mit Ganzzahlen gerechnet werden kann, kann das wichtig sein), zum anderen will ich mir offen halten, dass es neben den Teamstärken auch noch andere Faktoren geben kann (z.B. die Wettquote), die man dann mit diesen Faktoren nach Belieben miteinander gewichten und verrechnen kann. Aber das ist Zukunftsmusik.
Im Beispiel ist der Faktor auf 1 gesetzt, d.h. da ändert sich nichts. - Nun wird nur noch die Differenz der beiden Zahlen betrachtet. Die ist 14 und wird der stärkeren Mannschaft zugewiesen. Leverkusen hat also 14 Punkte, Mainz 0.
- Als nächstes wurde eine Toleranzgrenze von 2 eingestellt. D.h. dass ein Spiel dann unentschieden ausgeht, wenn die Stärken der beiden Mannschaften maximal 2 Punkte auseinander liegen. Zur weiteren Berechnung ziehen wir den Toleranzwert von der höheren Zahl ab, kleiner als 0 kann ein Wert natürlich nicht werden. Leverkusen hat also noch 12 Punkte.
- Jetzt werden die übrig gebliebenen Punkte in Tore umgerechnet. Dafür gibt man an, für je wie viel angefangene Punkte es ein Tor für die stärkere Mannschaft geben soll. In diesem Fall für 10, d.h. Leverkusen bekommt für die 12 Punkte 2 Tore gut geschrieben.
- Um nicht in unrealistische Werte abzudriften, kann man nun die maximale Tordifferenz bestimmen. Die liegt hier bei 2, das passt also noch. Hätte Leverkusen 42 Punkte mehr als Mainz gehabt, wären die zuvor ermittelten 5 Tore also hier auch wieder auf 2 gedrosselt worden.
- Und schließlich gibt es noch Basistore, die jeder Mannschaft zugeschrieben werden. So kann man den Bot dazu bringen, nicht immer nur “1:0″, sondern das punkteträchtigere “2:1″ zu tippen. Hier ist 1 Basistor anzugeben, aus dem 2:0 für Leverkusen wird also ein 3:1
Was sind das denn für Werte, die da jetzt bei mir schon eingetragen sind?
Standardmäßig sind bei jedem erstmal als Stärke die Punkte eingetragen, die die entsprechende Mannschaft in der Hinrunde zuhause bzw. auswärts eingefahren hat. Da diese Stärken auf den Ergebnissen der Hinrunde basieren, ist es klar, dass der Bot die Hinrunde daher sehr gut getippt hätte und in unserem Tippspiel mit 307 Punkten auf Platz 1 stehen würde. Ob die Einstellungen aber auch für die Rückrunde so gut sind, wird sich erst noch zeigen…
Wie ein Bot diese Saison abgeschnitten hätte und wie er zukünftige Spieltage tippen würde, kann man übrigens auf der Konfigurations-Seite direkt sehen, während man den Bot konfiguriert. bei jeder Änderung wird die Ansicht automatisch aktualisiert.
Das sollte euch aber nicht davon abhalten, auch am Ende auf “Speichern” zu klicken, denn sonst werden die Daten eben nicht gespeichert!
Heißt das, ich muss jetzt 36 Werte ändern, wenn ich z.B. will, dass alle Spiele “2:1″ getippt werden?
Nein, dafür gibt es Ausfüllhilfen, die das für einen übernehmen. So kann an z.B. ganz schnell dafür sorgen, dass immer ein bestimmtes Ergebnis getippt wird, oder feste Werte (Anzahl der Punkte oder der geschossenen Tore) aus vergangenen Spieltagen eingetragen werden.
Da steht oben im Bild was von “statischen” Team-Punkten. Gibt es dann auch dynamische?
Ja, die gibt es auch.
Hier kann man dann sagen, dass für einen Tipp als Teamstärke immer die Punkte oder geschossenen Tore aus den vorhergehenden Spielen genutzt werden soll.
Von welchen Spielen werden die Punkte oder Tore denn dabei genommen?
Für die Heimmanschaft werden die Tore ihrer letzten X Heimspiele genommen, bei der Auswärtsmannschaft entsprechend die Tore der letzten X Auswärtsspiele. Hierbei werden nur die Spiele der aktuellen Saison betrachtet, für die ersten Spiele der Saison stehen also nicht wirklich Daten zu Verfügung. Diese Strategie macht erst später Sinn.
Warum kommt bei der dynamischen Teamstärke nicht das Selbe raus, wie wenn ich die gleichen Werte bei den statischen Punkten eintragen lassen (über die Ausfüllhilfe)?
Ganz einfach: Angenommen, wir haben gerade den 18. Spieltag vor uns und wir füllen nun die statischen Werte mit den Toren des letzten Spiels. Dann heißt das, dass hierfür in der Regel Tore aus den Spieltagen 16. und 17. herangezogen werden (je nach dem, wann die Mannschaft zuletzt ein Heim. oder Auswärtsspiel hatte). Und genau diese Werte werden nun auch zur Berechnung aller anderen Spieltage (also die vergangenen und die noch kommenden) hergenommen.
Nutzt man allerdings den dynamischen Modus, so ist die Basis für jeden Spieltag eine andere. Für die Berechnung des 4. Spieltags werden also i.d.R die Tore aus Spieltag 2 oder 3 genommen.
Kann ich mehrere Bots haben?
Nein. Wäre sicher kein Problem, das zu programmieren, aber ich hab mich dagegen entscheiden, da es sich hier um ein Tippspiel handelt. Der Bot soll eigentlich wirklich nur dafür da sein, vergessene Tipps aufzufangen. Es wird keine Bot-Liga oder sonstwas geben.
Kann ich mir die Tipps vom Bot bei der Tippabgabe als Hilfe anzeigen lassen?
Hier auch ein Nein, vor allem keinen Button, um die Tipps gleich auch noch einzutragen. Denn dann können wir es auch gleich dabei belassen, dass jeder einen Bot programmiert und fertig. Wie gesagt: Eigentlich sollen damit nur vergessene Tipps aufgefangen werden, alles andere ist Spielerei (z.B. um Sachen wie “Wie würde jemand dastehen, der immer nur 2:1 getippt hat” durchzuspielen).
Wann tippt der Bot
Um ehrlich zu sein: Noch gar nicht, aber das sollte sich im laufe des Tages noch ändern. Und dann wird er immer nachts die Spiele des nächsten Tages tippen. D.h. wenn ich Samstag Mittags noch am Bot rumspiele, hat das keine Auswirkungen auf die Tipps, die er für die Samstagsspiele abgeben würde, da diese schon getätigt sind. Aber wer Samstag Mittags am Bot werkelt, sollte auch seine Tipps nicht vergessen haben, ansonsten hat er Pech gehabt, wenn ihm der Bot wichtiger als das Tippen ist…
Woran erkennt man vor dem Spiel, dass der Bot getippt hat?
Gar nicht. Alles sieht noch so aus, als hätte der Spieler noch nicht getippt. Erst, wenn die Tippzeit vorbei ist, erscheinen die Bot-Tipps in der Tippübersicht (ausgegraut, wie oben beschrieben).
Noch Fragen?
Sehr cool. So ähnlich hatte ich es mir vorgestellt. Ich denke mal, dass das auch für Nicht-Informatiker einigermaßen verständlich und bedienbar sein sollte. Vor allem die Möglichkeiten zur automatischen Einstellung und die Tabelle “Wie würde der Bot tippen” finde ich sehr gelungen.
Kleine Verbesserungsvorschläge:
1) Es wäre schön, wenn die bereits vorhandenen Ergebnisse bei “Wie würde der Bot tippen” mitangezeigt würden (am besten farblich markiert nach richtig/falsch). Um den Bot zu optimieren, wäre es glaube ich sehr hilfreich, wenn man relativ einfach sehen könnte, welche Fehler er gemacht hat/hätte.
2) Nachdem das System ja jetzt doch ziemlich ausgefeilt ist, stört es mich etwas, dass man Gegentore nur global festlegen kann. Hier würde sich doch anbieten auch eine Toleranzgrenze (“Gegentor ab X Gesamtstärkepunkten”) und eine Einstellung “1 Gegentor je angefangene X Punkte über der Schwelle” einzuführen. Das könnte man zusätzlich oder auch ersetzend zu dem Basistorwert einführen. Damit könnte man noch etwas schönere Tipps hinbekommen (sehen dann nicht alle so gleich aus… ).
3) Verkünsteln könnte man das Ganze auch noch indem man die Torstatistiken mit einbezieht. Aber da fällt mir jetzt nichts ein, was konfigurierbar wäre und nicht die Anzahl der möglichen Einstellungen massiv aufblähen würde.
4) Frage: Wozu könnte man rein praktisch den Team-Wert Faktor brauchen? Könnte man das nicht über die Schwellenwerte auch “alles” hinbekommen?
@Volker: Dankeschön. Zu deinen Punkten:
1) Stimmt, das wäre schön, wird gemacht, sollte dieses Wochenende da sein.
2) Die “Gegentore” werden dann aber beiden Mannschaften angerechnet, damit die Differenz wieder stimmt, oder? Sonst könnte es ja sogar passieren, dass ein sehr starker Gegner auf einmal mehr Gegentore schießt als der noch stärkere Gegner…
Und wenn du nicht so eintönige Tipps haben willst, musst du ja nur die Tore pro Unterschied runter- und die Maximaldifferenz hochsetzen, da kommen dann schon viele unterschiedliche Sachen raus…
3) Was für Torstatistiken? Die Anzahl der geschossenen Tore kann man ja als “Teamstärke” nutzen. Oder beziehst du das jetzt noch auf die Berechnung der Gegentore? Dürfte dann echt zu kompliziert werden…
4) Die Frage hab ich oben eigentlich beantwortet. Aber hier nochmal:
Der Faktor hat bisher nur einen Sinn: Wenn die Stärken zweier Teams (nach Abzug des Schwellwertes) nur ein einziger Punkt ist, wirst du es mit all den anderen Werten (aufgrund der Beschränkung auf Ganzzahlen) nicht schaffen, dass das stärkere Team mit mehr als einem Tor Abstand gewinnt. Multiplizierst du nun aber den Wert mit 2, kriegst du immerhin schon zwei Tore Abstand hin.
Aber klar, du könntest einfach auch alle Werte von Hand verdoppeln, dann bräuchtest du den Faktor nicht. Hier ist also Bequemlichkeit das Argument.
Der zweite Punkt ist wichtiger, spielt aber momentan noch kein Rolle.
Angenommen, irgendwann kann man auch andere Sachen zur Berechnung ranziehen (wie z.B. die Wettquote), dann werden die Werte der einzelnen Bereiche erst mit dem zugehörigen Faktor multipliziert, dann addiert und schließlich mit den allgemeinen Werten verrechnet. So kannst du über die Faktoren dann steuern, wie stark die einzelnen Bereiche ins Endergebnis einfließen sollen.
Wenn dieses Bot-Tippen so optimale Quoten erzielen kann, dann lebe hoch die Tipp-Sorglosigkeit!
@Babba: Wie oben geschrieben: Es ist klar, dass der Bot die Hinrunde so gut tippt, wenn seine Einstellungen ja eben auf deren Ergebnisse basieren. Hinterher hätte ich auch besser getippt, sogar noch viel besser, nämlich jedes Spiel exakt richtig, das kann der Bot nicht.
Ich behaupte also mal, dass der Bot mit diesen Einstellungen die Rückrunde nicht besser tippen wird, als mancher von uns es tun wird.
@Babba: Ich habe mir mal die Mühe gemacht, die Tabelle vom 12. Spieltag einzutippen und dann komem ich (natürlich abhängig von den anderen Einstellungen) auf einen Durchschnittswert von ca. 12 Punkten für die Spieltage 13-17. Damit kann man keinen Blumentopf gewinnen… aber es ist ganz ok und so soll es ja sein.
@admin: zu 2) Klar – die dynamischen Gegentore ändern nichts an der bisherigen Differenzberechnung. zu 3) Ich denke eine weitere Ausbaustufe wäre, wenn man Heim/Auswärtssiege und Heim/Auswärtstore zur Berechnung nutzen kann. Dann bräuchte man aber wahrscheinlich einen Formeleditor oder man stellt es über Gewichte ein. Logisch wäre es, wenn die Punkte nur über Sieg/Niederlage entscheiden und man für die Berechnung, die ich unter 2) vorgeschlagen habe dann die Torstatistik mit einbezieht… aber das ist wohl zu kompliziert und ich wüsste jetzt auch spontan keine Formel die sinnvoll wäre.
zu 4) ok danke – die Erläuterung habe ich oben übersehen.
So, die Ansicht, wie die vergangenen Spiele denn wirklich ausgegangen sind, ist jetzt auch im Tipp-Bot integriert, direkt mit farbiger Hervorhebung, ob der Bot richtig oder falsch getippt hätte.
Und dann gabs beim “Wie hätte der Bot diese Saison abgeschnitten?”-Sektor noch zwei Fehler. Zum einen hat der Bot für exakt richtige Unentschieden-Tipps nur drei (statt fünf) Punkte bekommen und zum anderen wurden bei den eigenen Tipps auch die Jokerpunkte mit angerechnet. Also nicht wirklich ein fairer Vergleich.
Jetzt sollte es stimmen.
Was auf jeden Fall fehlt, ist eine Kommentarfunktion zu jedem Spieltag. So bin ich der erste Mensch, der an einem Spieltag ein negatives Gesamtergebnis schafft und es gibt nicht mal einen Ort, an dem ich mich vernünftig drüber aufregen kann…
@Schnitzel: Ja, das hab ich auch schon länger (eigentlich von Anfang an) im Hinterkopf (wie noch manch andere Sachen), wird auf jeden Fall kommen.
Bevor ich aber die nächsten Neuerungen implementiere, will ich die alten Sachen erstmal mehr mit Hilfetexten versehen.
Und hey: Der Spieltag ist noch nicht vorbei, da ist noch “alles” drin, Kopf hoch!
@donvanone: Ja, wie man gesehen hat, hat das auch nichts mehr gebracht. Sieht man mal von Manu am 7. Spieltag ab (da hat er alle Spiele 1:1 getippt und -3 Punkte gehabt), habe ich das schlechteste Ergebnis bisher. Aber ich habe schon einen Sündenbock gefunden: Der neue Arbeitskollege hatte sich als vermeintlicher Fußballexperte mit Ratschlägen nicht zurückgehalten. Da er HSV-Fan ist, hätte ich wissen müssen, dass es um seinen Sachverstand nicht besonders gut bestellt sein kann. Zum Glück ist er noch in der Probezeit. ;)
Rege an, mal drüber nachzudenken, eventuell dem Tipp-Bot einen Platz auf der Mitspielerliste einzuräumen.
@Babba: Naja, “den” Tippbot gibt es ja nicht, den kann sich ja jeder individuell einstellen. Aber auf der Konfigurationsseite kannst du ja sehen, wie viele Punkte dein Tippbot bisher gemacht hätte und kannst ihn dann selber in die Mitspielerliste einsortieren. Fairerweise solltest du aber nur die Rückrunde betrachten, da der Bot in der Vorrunde ja geschummelt hat und die Ergebnisse vorher schon kannte…