alsora / deep-briscola

Tensorflow Deep Reinforcement Learning agents playing Briscola card game
21 stars 6 forks source link
briscola card-game deep-reinforcement-learning tensorflow

deep-briscola

Tensorflow deep reinforcement learning agent playing Briscola card game.

What is Briscola??

This repository contains a Briscola game environment where different agents can play.

Dependencies

sudo apt-get update && sudo apt-get install -y \
  python-dev \
  python3-pip

sudo pip install \
  tensorflow \
  hyperopt \
  matplotlib \
  pandas

Alternatively, a Dockerfile with all the dependencies installed is provided in this repo. To use it:

Install Docker on Ubuntu

$ bash docker/build.sh
$ bash docker/run.sh

Usage

Train a model
$ python3 train.py --network dqn --saved_model saved_model_dir
Play against trained deep agent
$ python3 human_vs_ai.py --network dqn --saved_model saved_model_dir
Play against AI Agent
$ python3 human_vs_ai.py

Features

Different networks implemented

Specify the network type using --network command line argument

Self Play

Train multiple agents using the self_train.py python script.

$ python3 self_train.py --network dqn --saved_model saved_model_dir

Results