yimmon / dots-and-boxes

A simple Dots and Boxes AI.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Qdab

Qdab is a simple Dots and Boxes AI. It is written in golang and python2.7. The basic idea is straightforward, UCT plus ANN.
Qdab can reach a high level. I compared Qdab with dabble.exe(http://www.mathstat.dal.ca/~jpg/dabble/) and PRsBoxes.exe(http://www.dianneandpaul.net/PRsBoxes/), the result is Qdab won them in most cases.

Running

I have compiled Qdab for Windows and Linux users, please download correct version before running. You can find it in directory release.

Note: Please make sure you have seen "Server is running at 127.0.0.1:12345" after run Qdab and before any other operation.

Windows

Uncompress the .zip file, and double click Qdab.bat.

Linux

First, make sure you have already installed python2.7, gtk, and python-simplejson in your computer.
Second, uncompress the .tar.bz2 file and make Qdab.sh executable.
Finally, go to the directory containing Qdab.sh, run ./Qdab.sh.

Screenshot

Compilation

If you are interested in this program, you can make some changes and compile your version.
For Linux:
1. Install FANN 2.2.0 and golang1.2.2 (must be version 1.2), the setup files are in directory env, and configure your Go environment.
2. Run the ./install.sh to compile all modules whith will make directory bin.
3. Simply copy directory AnnModel from my release version to your directory ./bin or train your own ANN models, to get it you need to understand my code.
4. The binary file needed to run Qdab is ./bin/server and ./src/guiclient/guiclient.py, please note `pwd` must be directory bin when you run the server.

About

A simple Dots and Boxes AI.


Languages

Language:Go 89.9%Language:Python 9.5%Language:Shell 0.6%