We present our bot (based on reinforcement learning algorithms) for board card game «7 Wonders: Duel» embedded in this online platform. Our approach is similar to the DeepMind's AlphaGo solution: we use Monte Carlo Tree Search (MCTS) with Behavior Cloning (BC) finishers. For building tree search graph we use 7wd-engine (was created by @dfomin). Game finisher model was trained in supervised mode on ~7000 games of real players (data_link1, data_link2).
Game finisher is a policy model, which can choose action in some game state: Action = model(State).
Posible Action - each received card can be:
- built
- discarded for coins
- used to create a world wonder
State consist of:
- the strength of each of the players (resources, army, science etc.)
- information about spreaded cards, each card has embedding vector
- card embedding consists of semantic and informational part (semantic part depends on other builded cards - similar to word2vec)
- type of spreaded cards: open-availabled card, open-unavailabled card, closed card, builded card.
Model consis of:
- linear layers
- relu activations
- Clone https://github.com/dfomin/7wd-engine
- Add 7wd-engine to PYTHONPATH or add the path to jupyter notebook
- Dowland data for BC data_link1, data_link2