PatrickKorus / mcts-general

General Python implementation of Monte Carlo Tree Search for the use with Open AI Gym environments.
GNU General Public License v3.0
34 stars 15 forks source link

Monte Carlo Tree Search for Simultaneous-Move Imperfect-Information Games #1

Closed Zachary-Fernandes closed 1 year ago

Zachary-Fernandes commented 1 year ago

Hello,

I have been thinking of training different artificial intelligence algorithms for use in Pokémon Showdown, which is a game with simultaneous moves and imperfect information. The package I would use - poke-env - can expose an OpenAI Gym wrapper, which is what makes me think it should be possible to use this repository's implementation of Monte Carlo Tree Search (MCTS). The agent would use self-play on a local Showdown server to train and then ideally be evaluated by challenging opponents on the main Showdown server.

I wanted to ask some questions before I started experimenting. First, Pokémon is a simultaneous-move game, and I understand this is a departure from sequential-move games the original AlphaZero model worked on like Go. Does this MCTS implementation in its current state support training on simultaneous-move games through self-play?

Second, Pokémon is an imperfect-information game. There is a large amount of uncertainty in this game. How does this MCTS implementation work with uncertainty? What changes might you recommend making to address uncertainty?

Third, this would be a new environment used through Gym, so I would hope it is simple to add the environment to this package. What advice would you give for adding the environment and/or tuning the hyperparameters? Thank you in advance.

PatrickKorus commented 1 year ago

Hello,

thank you for your interest. MCTS is a framework that is designed for sequential-move games. Adapting MCTS to simultaneous moves is a tricky topic itself, see for example this paper https://ieeexplore.ieee.org/abstract/document/6932889 for ideas on how to adapt it. The implementation as provided here does not support it and it is not planned to expand it.

Hope that helped.

Regards, Patrick