Wenn Bot B auf Muster reagiert, wieso ist er dann anfällig(er) für Angriffe von Bot A? Wie kann sich A dadurch einen Vorteil verschaffen?
A kann sich einen Vorteil dadurch verschaffen, dass B jetzt berechenbar spielt, da er auf das Muster von A reagiert. Das könnte also sozusagen eine "Falle" sein. Aber selbst wenn das nicht geplant ist, macht sich B in jedem Fall anfälliger, wenn er vom Zufall abweicht - Ob A das ausnutzen kann, ist eine andere Frage.
Es ist also kein Vorteil, wie du es ausdrückst, aber eine eventuelle Chance.
Wenn A zufällig spielt, kann B kein Muster erkennen und folgt damit selber auch keinem erkennbaren Muster: beide sind also zufällig
Stimmt genau. Außer ein Bot erkennt fälschlicherweise ein Muster, welches aber nur zufallsbedingt entstanden ist.
Gegen ein simples `randint(1, 3)` könnte man versuchen den zugrunde liegenden Seed-Wert heraus zu bekommen und wenn man den hat, 100% der Züge des Gegners vorher zu sagen.
Okay ich gehe aber mal davon aus, dass das nicht bei 1000 Spielen möglich sein wird, oder?
Es geht in dem Contest darum besser als 50% zu sein. Und das geht eben nur wenn du nicht mehr total zufällig spielst, sondern versuchst das Spielsystem des Gegners zu entschlüsseln.
Das ist mir klar.
Ich weiß nicht genau, wie ich das erklären soll.
Das ganze funktioniert doch nur genau dann, wenn mindestens ein "Idiot" bei dem Contest mitmacht, der eben NICHT auf Zufall setzt.
Gehen wir mal davon aus, dass 10 Mathematiker dieses Problem überdenken und ihre Schlussfolgerungen
immer richtig sind.
Zu welchem Schluss käme einer von ihnen dann wohl?
Er muss davon ausgehen, dass die Gegner keine Schwachstellen bieten wollen und wird denken, dass sie kein Muster implementieren, sondern komplett zufällig spielen.
So jetzt ist es vollkommen egal was man selbst macht, wenn man davon ausgeht, dass der Gegner komplett zufällig spielt.
Immer Schere, abwechselnd Schere und Stein, auch komplett zufällig ... Es wird sich immer auf 1:1 belaufen.
Da er aber weiß, dass die anderen das selbe von ihm erwarten, wie er von ihnen, wird er auf keinen Fall ein Muster bieten, denn die anderen könnten dafür einen Konter eingebaut haben.
Ergo: Der Contest dürfte normalerweise nicht auf komplexe Bots hinauslaufen, wenn es alle "richtig" machen würden.
Aber klar, da nicht alle so spielen - wär ja langweilig - lassen sich komplexe Bots bauen, die solche "dummen" Bots mit einem Muster schlagen können.
Das Motto könnte also Lauten "Wer macht die meisten Idioten fertig, die nicht zufällig spielen?"
Das ist eben mein Problem mit dem Contest, da es erst jemanden geben muss, der "dumm" (ohne Zufall) spielt, damit sich andere Bots absetzen können.