Das Random-Darter-Modell

  • Umfrage quer nutzen!

  • Ich müsste nachschauen, ob ich direkt eine Zahl aus der Verteilung ziehe, oder ob ich es über die Wahrscheinlichkeit (0...1) und der CDF berechne. Ist 3 Jahre her, dass ich das eingebaut habe. Es ist auf jeden Fall validiert.


    Wenn ich das Programm doch mal fertig bekäme, würde mich ohnehin zu manchen Dingen eine Meinung interessieren. Aber das ist dann auch ein anderes Thema.


    Edit: wahrscheinlich hast du Recht, ich ziehe direkt aus der Normalverteilung und erhalte dadurch den Abstand zum Target, danach prüfe ich geometrisch, in welches Feld der Bot dadurch getroffen hat.

  • offy Vielen Dank für die vielen Informationen. Ich selber bin auch kein Statistiker, kenne mich auch deutlich weniger aus als Mischka der Bär und bin "Hobbyprogrammierer", arbeite hauptsächlich mit Python (vorher Basic (mit Zeilennummern!), Pascal, VisualBasic, Java).


    Ich wollte dich auch schon fragen, wie du den Bot programmierst. Man könnte ja auch "scheibenunabhängig" einen Score ermitteln; wenn man den Average und die Standardabweichung "kennt", könnte man ja für jede Aufnahme eine Zahl ermitteln. Und zum "Finishen" das Gleiche mit den Doppelstatistiken. Das wäre jetzt mein naiver Ansatz gewesen. Könnte mir vorstellen, dass der eine oder andere Dart-Bot so funktioniert, oder?


    Wie du jetzt die verschiedenen Bot-Typen beschreibst, kommt mir sofort ein anderer Thread in den Sinn, wo es um eine Dart-Software mit Turnierfunktion und Karrieremodus ging. Wo man also eine Art FIFA xx spielt und sich in einer Rangliste gegen verschiedene Computer-Gegner hocharbeiten kann.


    Hast du auch schon mal überlegt, deine Bots gegen die Daten echter Spiele laufen zu lassen, z.B. gegen

    die CPU-Gegner der MyDartsTraining-App?


    Spannendes Thema, wie ich finde.

    Meine Lieblings-26er: T5-D5-S1, T1-T1-S20, S13-S12-S1, D12-S1-S1

  • Ich habe selbst auch hunderte Ideen. Aber ich erinnere mich, als ich die letzte Idee angefügt habe und vom starren 1vs1 zu einer Eingabemaske von beliebig vielen Spielern gewechselt habe. Das hat die komplette Struktur über den Haufen geworfen. Weil ich eben kein Informatiker bin und selbst nur stümperhaft Klassen und Funktionen definiere. Das Ding ist jetzt schon völlig explodiert, ich muss eher sehen, dass ich mal einen Schlussstrich darunter ziehen kann. Aber der Kern, der wirkt auf mich einigermaßen solide!


    Zitat von biopio26

    Hast du auch schon mal überlegt, deine Bots gegen die Daten echter Spiele laufen zu lassen, z.B. gegen

    die CPU-Gegner der MyDartsTraining-App?

    Das verstehe ich jetzt leider nicht. Mein Bot wäre also der vermeintlich menschliche Gegner des Bots von MyDartsTraining? Welche Erkenntnisse sollte ich daraus ziehen können?

  • Ich habe selbst auch hunderte Ideen.

    Sorry, das war nur Brainstorming, ich hatte mich aktuell in dem KP-Dart-Thread beteiligt und für so ein Programm braucht man ja auch verschieden starke Bots, idealerweise mit einer eigenen Persönlichkeit, wie du es ja für deine Bots beschrieben hast. Ich hab nicht gemeint, dass du das irgendwie umsetzten sollst. Das Problem mit Programmen, die irgendwie nie fertig werden, kenne ich selber zur Genüge ;(

    Das verstehe ich jetzt leider nicht. Mein Bot wäre also der vermeintlich menschliche Gegner des Bots von MyDartsTraining? Welche Erkenntnisse sollte ich daraus ziehen können?

    Eigentlich meinte ich, deine Bots gegen echte Spieler, unter Ausnutzung von aufgezeichneten Daten. MyDartsTraining habe ich genannt, weil das ja eben kein Bot verwendet, sondern tatsächlich die Würfe aus ehemaligen Spielen verwendet. Die Idee war, mal zu schauen, wie so ein Bot mit den Daten X, Y, Z, ... sich in das reale Leben einordnet. Ganz simpel gesagt: ist ein Bot, den du so eingestellt hat, dass er deiner Meinung nach z.B. Kreisliga-Niveau hat, auch wirklich so schlecht (oder gut). Das kommt wieder aus meiner Erfahrung mit der Dartsliebe-App, wo der Bot meines Erachtens zu stark auf den Doppeln ist.

    Aber auch hierfür gilt wieder: Du sollst das nicht machen, wollte nur wissen, ob das für dich ein Punkt ist, oder auch für andere, die hier mitdiskutieren.

    Würd mich z.B. auch interessieren, wie der Bot bei Lidarts programmiert ist (obwohl ich das noch nicht gespielt habe).

    Meine Lieblings-26er: T5-D5-S1, T1-T1-S20, S13-S12-S1, D12-S1-S1

  • Rock your Dart!
  • biopio26: Das sind schon interessante Ideen und Fragen. Ich denke, ich werde mich einfach bald mal wieder aufraffen und wenn ich eine Version habe, die einigermaßen passt, stelle ich sie für alle Interessierten mal rein und öffne dabei einen neuen Thread zum Diskutieren - würde mich natürlich freuen!


    Um den Bogen zum Thema zu spannen: wenn man im oben genannten Verfahren das Target auf das innere Bull setzt, bleibt immer noch die Frage, wie groß die Standardabweichung für r und Phi ist um als "Random-Wurfstil" bezeichnet werden zu können. Theoretisch kann ich die Glockenkurve so weit machen, dass ein Treffer in die Wand rechts von mir fast genau so wahrscheinlich ist wie ein Treffer ins Bull's Eye. Also welche Standardabweichung entspricht denn einem "Random Wurfstil"?

  • Das mit der Standardverteilung ist so eine Sache. Vor ein paar Jahren war mal ein guter Artikel über mehrdimensionale Wahrscheinlichkeitsverteilungen im Spektrum der Wissenschaft. Die Anzahl der Dimensionen des Trefferraumes spielt eine entscheidende Rolle. Dass die Standardverteilung in der Mitte ein Maximum (Glockenkurve) hat, gilt nämlich nur im eindimensionalen Fall. Beim zweidimensionalen Fall könnte man meinen, dass sich die Wahrscheinlichkeiten von X und Y multiplizieren, man also eine Gaußkurve im Quadrat erhält. Das ist aber ein Trugschluss. Dass nämlich X und Y gleichzeitig genau in der Mitte liegen, ist nämlich extrem unwahrscheinlich, auch wenn die Einzelwahrscheinlichkeiten dort maximal sind. Simuliert man es mit vielen zufällig verteilten X und Y-Werten durch, kommt man darauf, dass die Verteilung des Abstands (Polarkoordinaten) zum idealen Zielpunkt eine Delle in der Mitte hat. Es ist also wahrscheinlicher, knapp daneben zu treffen, als genau ins Zentrum.


    Das wird mit zunehmender Anzahl an Dimnensionen immer schlimmer. Das wurde in dem Artikel ua. damit erklärt, dass eine mehrdimensionale Kugel (also die Menge der Punkte mit Abstand zum Mittelpunkt <= sigma) relativ zum Volumen (sigma hoch Dimensionsanzahl) immer kleiner wird. Während ein Kreis pi/4 der Fläche des umschließenden Quadrats einnimmt, hat eine Kugel nur pi/6 des Volumens des umschließenden Würfels. Bei 100 Dimensionen ist das Volumen der 100D-Kugel nur noch ein verschwindender Bruchteil.


    Wie ist das beim Darts? Man denkt sofort: 2 Dimensionen, aber das ist nur die untere Grenze durch das Board. Es gibt ja noch viel mehr Faktoren, die zu Abweichungen führen, als die X/Y-Bewegung des Wurfarms. Ein Drehimpuls (Nick/Gierbewegung) hat nochmal zwei unabhängige Koordinaten zu denen des Richtungsvektors der Flugbahn des Schwerpunkts. Wenn die Darts nicht 100%ig parallel auf das Board treffen, führt das nochmal zu einer kleinen, zusätzlichenAbweichung.


    Dazu kommt noch die "ungerechte" Verteilung der Punkte auf der Scheibe. Ein Darter, der häufiger die 12 und 18 trifft, kann einen höheren Average haben, als einer, der "nur" in die 1 und 5 streut. Demensprechend kommt es recht häufig vor, dass man einen Average deutlich unter dem "Random Darter" haben kann, auch wenn man relativ gut ist.

  • RainerZufall: Das ergibt auch intuitiv Sinn. Landet ein Pfeil optisch genau im Zentrum vom Bullseye, dann wird das von Kommentatoren meistens gelobt/betont, weil es gar nicht so oft bei Bullseyetreffern vorkommt. Wenn man in zwei Dimensionen unabhängig sampelt (wie offy), dann passt das so auch.


    Ich stimme nicht ganz mit den "Mehrdimensionen" zu. Hier im Thread wird nur über das Ergebnis (= Boardtreffer) diskutiert. Die Ursache, also Faktoren beim Stand oder Wurf, ist dafür irrelevant und sollte auch nicht mit dem Ergebnis gemeinsam modelliert werden. Klar ist: Man kann durch die vielen Ursachenfaktoren kein 100% genaues Modell abbilden, wenn man nur vier Parameter hat. Da gibt es bestimmt bessere Ansätze. Man könnte mit Machine Learning ein Modell mit vielen Parametern trainieren, aber die Erkenntnisse daraus dürften sich in Grenzen halten.

  • Wie ist das beim Darts? Man denkt sofort: 2 Dimensionen, aber das ist nur die untere Grenze durch das Board. Es gibt ja noch viel mehr Faktoren, die zu Abweichungen führen, als die X/Y-Bewegung des Wurfarms. Ein Drehimpuls (Nick/Gierbewegung) hat nochmal zwei unabhängige Koordinaten zu denen des Richtungsvektors der Flugbahn des Schwerpunkts. Wenn die Darts nicht 100%ig parallel auf das Board treffen, führt das nochmal zu einer kleinen, zusätzlichenAbweichung.

    Das impliziert, dass wir EINE Bewegung habe, die richtig ist. Also wenn wir hiervon Abweichen, wir dann zwangsläufig einen Fehler produzieren. Zum Glück ist unsere Bewegung nicht so limitiert.


    Chissy nickt und giert da in ganz anderen Sphären :)


    Zu dem Thema von mir als Statistiklaien:


    Aus meiner Sicht müsste man auch in Abhängigkeit der Situation Veränderungen der Trefferwahrscheinlichkeit mit einbeziehen.

    Oft gesehene mentale Situationen, wie der Übergang vom Score in den Checkbereich. Konnte man bei der Q-School sehr gut beobachten, wie da immer wieder Aufnahmen < 50 produziert wurden.


    Oder die Tatsache, dass sich ein Dart auf Doppel bei einem Stand von 5:5 im Decider vom Stressniveau ganz anders anfühlt, als bei einem 5:1. Da sind die Abweichungen selbst bei den Profis sehr gut wahrnehmbar.


    Ich arbeite gerade an einer Sache, wo ich unterschiedliche Drucksituationen motorisch bewerte und mir Spieler und deren Wurfabweichungen dazu anschaue. Das ist sehr interessant wie groß da in unterschiedlichen Situationen plötzlich die Abweichungen sind.

  • Rock your Dart!
  • Genau das habe ich in meinem DartBot abgebildet. Allerdings stützen sich meine Zahlen rein auf willkürlichen Werten. Beim Erstellen des Bots gibt man einen Wert für mentale Stärke an (-25 bis +25). Bei 0 reagiert er gar nicht auf irgendeinen Druck. Im Negativen wird er bei Druck schlechter, bei positiven wird er bei Druck stärker. Die Drucksituationen sind: Gegner holt ihn ein (Delta verkürzt sich), Gegner ist im CO-Bereich < auf einem 2-Dart-Finish < unter 80 < unter 60 < auf einem schwachen Finish (38, 14, ...) > starken Finisch (32, 16, 40, 20, 36, 24). Bot hat die Möglichkeit zum Checken für Leg < Set < Match.


    Das macht das Spiel mit dem Bot bereits attraktiver, als ein reiner "Würfel-Bot", aber trotzdem ist es noch nicht die wirkliche Abbildung.

    Ich finde es deshalb total interessant, was du für die Motorik untersuchen möchtest. Manchmal hat man als Zuschauer ja das Gefühl "oh weh, das Doppel macht der nicht aus", bereits wenn der Spieler zum Board geht. Ich frage mich, ob das reine selektive Wahrnehmung ist, oder ob es wirklich Körpersprache gibt, die man hier intuitiv bewertet.


    RainerZufall: Das ist ein interessanter Aspekt, den ich so gar nicht bedacht habe. Aber es macht natürlich Sinn... im Kopf und auch beim Training am Board hat man gefühlt die beiden Stellschrauben r und phi. Man ärgert sich wahlweise darüber, dass man die T20 in der Höhe nicht getroffen hat, oder im Winkel (was meist ärgerlicher ist) oder in beidem. Ob das für das "Random Darter" Modell von Belang ist, weiß ich nicht, aber die Topspieler, die ihre Wurfbilder analysieren lassen, die können davon garantiert profitieren. Ich meine Rob Cross hat z.B. mit SAP zusammen gearbeitet und dabei auch technische Unterstützung fürs Training bekommen mit genau solchen Analysen.

  • Hier noch ein bisschen Lesefutter. Ist recht neu und wurde, glaube ich, hier noch nicht genannt:


    Play Like the Pros? Solving the Game of Darts as a Dynamic Zero-Sum Game


    In Auszügen: Play Like the Pros? Solving the Game of Darts as a Dynamic Zero-Sum Game


    Hier wird die Saison 2019 der Top-16-PDC-Spieler ausgewertet. Die Mathematik ist jenseits meiner Fähigkeiten, aber trotzdem sehr interessant, weil auch immer wieder auf reale Situationen Bezug genommen wird.

    Meine Lieblings-26er: T5-D5-S1, T1-T1-S20, S13-S12-S1, D12-S1-S1

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!