/Alpha-Gobang-Zero

A gobang robot based on reinforcement learning.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

logo

Alpha Gobang Zero

A gobang robot based on reinforcement learning

Version v1.0 Python 3.8.6 PyTorch 1.8.1 PyQt 5.15.2 OS Win10 | Win 11

游戏界面

Policy-Value Net

  • Network structure
    • ConvBlock × 1
    • ResidueBlock × 4
    • PolicyHead × 1
    • ValueHead × 1
  • Network visualization
模型架构

Quick start

  1. Create virtual environment:

    conda create -n Alpha_Gobang_Zero python=3.8
    conda activate Alpha_Gobang_Zero
    pip install -r requirements.txt
  2. Install PyTorch,refer to the blog for details;

  3. Start game:

    conda activate Alpha_Gobang_Zero
    python game.py

Train model

conda activate Alpha_Gobang_Zero
python train.py

Blog

《如何使用自对弈强化学习训练一个五子棋机器人Alpha Gobang Zero》

Reference

FAQs

  • Why does the window get stuck when it is dragged?

    Because the interface background uses acrylic effect, this problem will occur for some versions of win10. There are three solutions:

    • Upgrade win10 to the latest version.
    • Uncheck the check box of Advanced system settings --> Performance --> Show window contents when dragging.
    • Turn off the option to enable acrylic background in the setting interface.
  • Why does the configuration I modified in the settings interface not take effect immediately?

    The modified configuration will take effect at the beginning of the next game.

License

Alpha-Gobang-Zero is licensed under GPLv3.

Copyright © 2021 by zhiyiYo.