Add MCTS agent
One of the most promising AI algorithms for the Pokémon TCG is MCTS (and its variants). Implement it as a game agent.
The agent could first be based on the PlayerController class, but would benefit from a rewrite of the PlayerController into agents more fit for AIs.
The MCTS Python library mcts-simple could be used since it is well documented and complete. Maybe more advanced algorithms or better optimizations will be needed further down the line, but it should do for a first implementation.
The following must be defined:
- the MCTS game state (must be hashable)
- how to compute possible actions (actions should be strings, see mcts-simple documentation)
- how to simulate game rollouts
Since the design for this issue is complex, a research / design document will be committed.