Monte-Carlo-Baumsuche: Welche Arten von Bewegungen können leicht gefunden werden und welche Arten machen Probleme?

10

Ich möchte mit einem Szenario beginnen, in dem ich darüber nachdachte, wie gut MCTS funktionieren kann: Nehmen wir an, es gibt eine Verschiebung, die dem Suchbaum noch nicht hinzugefügt wurde. Es sind einige Schichten / Bewegungen zu tief. Aber wenn wir diesen Zug spielen, ist das Spiel im Grunde gewonnen. Nehmen wir jedoch auch an, dass alle Züge, die stattdessen im gegebenen Spielzustand ausgeführt werden könnten, sehr, sehr schlecht sind. Nehmen wir als Argument an, es gibt 1000 mögliche Züge und nur einer davon ist gut (aber sehr gut) und der Rest ist sehr schlecht. Würde MCTS dies nicht übersehen und nichtden Suchbaum in Richtung dieser Bewegung vergrößern und auch diesen Teilbaum sehr schlecht bewerten? Ich weiß, dass MCTS schließlich zu Minimax konvergiert (und schließlich den gesamten Baum erstellt, wenn genügend Speicher vorhanden ist). Dann sollte es wissen, dass der Umzug gut ist, obwohl es viele schlechte Möglichkeiten gibt. Aber ich denke, in der Praxis kann man sich nicht darauf verlassen. Vielleicht kann mir jemand sagen, ob dies eine korrekte Bewertung meinerseits ist.

Abgesehen von diesem speziellen Szenario würde ich auch gerne wissen, ob es andere solche Szenarien gibt, in denen MCTS eine schlechte (oder außergewöhnlich gute) Leistung erbringt.

Nocta
quelle
MCTS ist probabilistisch. Als solches braucht es Hinweise oder es findet nichts. Zum Beispiel: Suche nach der Nadel im Heuhaufen. Versuchen Sie dies und Sie werden scheitern. Es wäre gut, wenn Sie ein realistischeres Beispiel finden und fragen könnten, welche Strategie für dieses Beispiel optimal wäre. Dies könnte einen Hinweis darauf geben, wie die Nadeln im Heuhaufen besser gefunden werden können.
Trilarion

Antworten:

2

Ob der Zug gefunden wird und wie schnell er gefunden wird, hängt von einigen Dingen ab. Wenn ich das richtig verstehe, gibt es eine Folge von vielen "schlechten" Zügen, die zum "großen Gewinn" führen, und Sie befürchten, dass der MCTS-Algorithmus nicht zum "großen Gewinn" kommt, weil er vielversprechender auswählt bewegt sich weiter den Baum hinauf. Einige Dinge, über die Sie nachdenken sollten (lesen Sie auch den Wikipedia MCTS-Artikel ):

  • Wenn Sie Playouts machen, können Sie Ihr Spiel nur für ein paar weitere Züge oder bis zum Ende des Spiels spielen. Nur ein paar Züge weiter zu spielen ist natürlich schneller, aber im Extremfall, den Sie beschrieben haben, wäre es nicht die beste Wahl. Wenn Sie über die Existenz solcher Szenarien Bescheid wissen, stellen Sie sicher, dass Sie das Spiel in den Playouts bis zum Ende spielen.

  • Bei Playouts können Sie Ihre Bewegungen / Aktionen entweder zufällig oder basierend auf einfachen, gierigen (schnellen) Heuristiken auswählen, die auf Ihr Problem zugeschnitten sind. Gibt es vielleicht gierige Heuristiken, die solche Szenarien für Ihr Spiel / Problem finden oder berücksichtigen sollen? Wenn ja, implementieren Sie sie. Es wird dann als "schweres Playout" bezeichnet. Vergleichen Sie die Ergebnisse mit Playouts mit zufälligen Zügen.

  • Wenn Sie die Aktionen mithilfe von UCT (Upper Confidence Bound, angewendet auf Bäume) auswählen, ist der erste Teil des Ausdrucks für die Ausnutzung verantwortlich. Züge mit hoher durchschnittlicher Gewinnquote werden bevorzugt. Der zweite Teil entspricht jedoch der Erforschung. Wenn der Explorationsparameter hoch genug eingestellt ist (empirisch auf Ihr Problem testen), werden Bewegungen mit wenigen Simulationen bevorzugt. Hohe Erkundung wäre ein weiterer Weg, um Ihren goldenen Zug zu finden, der sich nachteilig auf die Ausbeutung auswirkt (lesen Sie mehr über das Explorations- / Ausbeutungsdilemma).

Wenn Sie ein realistisches Spiel oder ein realistisches Problemszenario beschreiben, können wir Ihnen möglicherweise bei der Entwicklung einer geeigneten Strategie helfen.

AlexGuevara
quelle