This is a julia implementation of HexWuZi, including MCTS algorithm in julia and GameClient in python.
This julia version is much faster than python with numba
version, see Performance comparison of each version
section for more detail.
Since the old version can't run well on my new macbook, I write a new julia program to host a web server to communicate between julia backend and python fontend instead. This new version can run well both on macos and windows.
-
Start the
BackendServer
with running theBackendServer.jl
julia BackendServer.jl
-
Start the
GameClient
with running theGameClient.py
python GameClient.py
However, you should install all dependency first, please follow Requirement
section to install them well.
Go to Juila Official Website to download and install one.
We use Oxygen
package for web development in julia, you have to install it first.
import Pkg
Pkg.add("Oxygen")
Since the old version with
julia
package in python andPyCall.jl
in julia can't run well on my new macbook, I write a new julia program to host a web server to communicate between julia backend and python fontend instead.
Version | Perfomance(times of simulation in 5 seconds) |
---|---|
"Pure Python" | 800-900 |
Python with Numba | 8k-9k |
Pure Julia | 35k-40k |
Why there is quotation mark around "Pure Python"?
Because if you use NumPy, then it's not pure any more since NumPy is written in C.