Monte Carlo Tree Search or other algorithms for a stochastic card game?

I am currently working on a 2-game card game with a stunt and pattern similar to 66 or Schnapsen. Basically you need to collect points by winning tricks, and although there are cards in the pack, both players draw a card after each round.

I am at the point of programming a good AI for a game that does not fool, but really calculates the best moves, using only the information available in this state of the game. I was stuck deciding which algorithm or logic would be best used. I decided against algorithms such as Alpha-Beta pruning, because there is too much hidden information especially at the beginning of the game. I read a lot of interesting things about searching in Monte Carlo and corresponding searching in UCT, but since there are stochastic elements in the game, the tree that needed to be searched would increase in a short period.

Which algorithm or approach is best to use?

+6
source share
2 answers

MCTS will definitely be better. No matter which one you choose, you will have to deal with incomplete information, which is a central issue here.

+1
source

Here's a link to the UCT app on Klondike Solitaire. MCTS is ideally suited for the problem, as it can handle stochasticity well.

You can look at the sparse method described inside the paper to limit the width of the tree.

+1
source

Source: https://habr.com/ru/post/918085/


All Articles