hijkzzz / Alpha Zero Gomoku
A Multi-threaded Implementation of AlphaZero
Stars: ✭ 264
Programming Languages
python
139335 projects - #7 most used programming language
Projects that are alternatives of or similar to Alpha Zero Gomoku
Hamsters.js
100% Vanilla Javascript Multithreading & Parallel Execution Library
Stars: ✭ 517 (+95.83%)
Mutual labels: parallel, multi-threading
Quantum
Powerful multi-threaded coroutine dispatcher and parallel execution engine
Stars: ✭ 291 (+10.23%)
Mutual labels: parallel, multi-threading
Taskflow
A General-purpose Parallel and Heterogeneous Task Programming System
Stars: ✭ 6,128 (+2221.21%)
Mutual labels: multi-threading, parallel
thread-pool
BS::thread_pool: a fast, lightweight, and easy-to-use C++17 thread pool library
Stars: ✭ 1,043 (+295.08%)
Mutual labels: multi-threading, parallel
libjwdpmi
C++20 development framework for 32-bit DOS applications
Stars: ✭ 32 (-87.88%)
Mutual labels: multi-threading
Autonomx
Autonomx provides a complete testing platform for UI (Web, iOS, Android, Win) and API testing. It provides a feature rich and viable testing solution for end to end testing. It's designed to be fast, scalable, reliable and adaptable to any requirements for ever growing projects.
Stars: ✭ 14 (-94.7%)
Mutual labels: parallel
Paraphrase
Multi-core suitable Forth-like language
Stars: ✭ 27 (-89.77%)
Mutual labels: multi-threading
RcppAlgos
Tool for Solving Problems in Combinatorics and Computational Mathematics
Stars: ✭ 31 (-88.26%)
Mutual labels: parallel
trembita
Model complex data transformation pipelines easily
Stars: ✭ 44 (-83.33%)
Mutual labels: parallel
run-parallel-limit
Run an array of functions in parallel, but limit the number of tasks executing at the same time
Stars: ✭ 70 (-73.48%)
Mutual labels: parallel
TensorFlow-Input-Pipeline
TensorFlow Input Pipeline Examples based on multi-thread and FIFOQueue
Stars: ✭ 54 (-79.55%)
Mutual labels: multi-threading
node-bogota
🚀 Run tape tests concurrently with tap-spec output
Stars: ✭ 15 (-94.32%)
Mutual labels: parallel
safe
C++11 header only RAII guards for mutexes and locks.
Stars: ✭ 119 (-54.92%)
Mutual labels: multi-threading
chicken-gochan
Go-like Channels for Chicken Scheme
Stars: ✭ 18 (-93.18%)
Mutual labels: multi-threading
kinetics-downloader
Simple tool to download videos from kinetics dataset.
Stars: ✭ 28 (-89.39%)
Mutual labels: parallel
shortcut-comparison
Performance comparison of parallel Rust and C++
Stars: ✭ 74 (-71.97%)
Mutual labels: parallel
AlphaZero Gomoku
A multi-threaded implementation of AlphaZero
Features
- Free-style Gomoku
- Tree/Root Parallelization with Virtual Loss/LibTorch
- Gomoku and MCTS are written in C++
- SWIG wrap C++ extension
- Update 2019.7.10: support Ubuntu and Windows
Args
Edit config.py
Environment
- Python 3.6+
- PyGame 1.9+
- PyTorch 1.0+
- LibTorch 1.0+
- MSVC14.0/GCC6.0+
- CMake 3.8+
- SWIG 3.0.12+
Run
# Add LibTorch/SWIG to environment variable $PATH
# Compile Python extension
mkdir build
cd build
cmake .. -DCMAKE_PREFIX_PATH=path/to/libtorch -DCMAKE_BUILD_TYPE=Release
cmake --build
# Run
cd ../test
python learner_test.py train # train model
python learner_test.py play # play with human
Pre-trained models
Trained 2 days on GTX1070
Link: https://pan.baidu.com/s/1c2Otxdl7VWFEXul-FyXaJA Password: e5y4
GUI
References
- Mastering the Game of Go without Human Knowledge
- Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm
- Parallel Monte-Carlo Tree Search
- An Analysis of Virtual Loss in Parallel MCTS
- A Lock-free Multithreaded Monte-Carlo Tree Search Algorithm
- github.com/suragnair/alpha-zero-general
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].