/Gebeta

reinforcement learning agent playing Gebeta

Primary LanguagePython

Gebeta-ገበጣ

Gabata (also spelled "Gebeta") is the generic term for mancala games played in Ethiopia and Eritrea. It is used for many two-row games, but also for several three-rank mancala games.i devloped a reinforcement learning agent that play with itself and learns how to play gebeta

TODO

  • pygame gui for the Board (DONE)
  • self play (random) (DONE)
  • deep reinforcement learning and Q table implementation (DONE)
  • better function approximator
  • muZero implementaion

[RULES] ("https://www.youtube.com/watch?v=c62_xn8XC2g")

Usage

git clone http://github.com/robelkebede/gebeta.git
pip install -r requirements.txt
cd ./gebeta	

./grid.py

Self Play

cd ./gebeta	

pytorch
TORCH=1 ./agent.py --epsodes=[NUM_EPSODES]

tensorflow
./agent.py --epsodes=[NUM_EPSODES]

Screenshot

Alt text

Game Score (500 GAMES)

Alt text

Contributing

Pull requests are welcome