hlynurd / open-mtg

A python implementation of Magic: The Gathering with an AI that plays it using Monte Carlo move evaluation.
MIT License
140 stars 32 forks source link

Stock MCTS with UCT leaks hidden information (aka cheats) #4

Closed Meerkov closed 6 years ago

Meerkov commented 6 years ago

Hi, it looks like this algorithm performs a MCTS rollout on a game with hidden information. This leaks information back up the tree about the hidden state of the decks and hands. Thus the AI is actually able to play as if there was no hidden information in the game, which is probably not what you intended.

hlynurd commented 6 years ago

Thank you for the feedback. All hidden information is randomized before each rollout.

Meerkov commented 6 years ago

Hi, yes, you can randomize, but you can't do it the way you are doing. See the other issues I filed.