go.py
contains aGo
class, which can play games of Goplayers.py
,mcts.py
andmodel.py
are the files for creating Go playing agentsdownload_*.py
downloads SGF filestrain.py
trains and saves a CNN (frommodel.py
) on SGF filesplay.py
logs on to an OGS account using details inconfig.yml
, and plays games using the model saved bytrain.py
- Go Game
- Play SGF files
- Create an Agent
- Random Agent
- Webscrape SGF files
- Use proxy and multithreading
- Build AlphaZero style CNN
- Train policy and value heads
- Convert SGF files into network inputs / targets
- Greedy policy and value head agents
- MCTS
- MCTS agent
- Self-play to generate training data
- Full AlphaZero : Self-Play / Train / Evaluate
- Play Online
- https://online-go.com/api/
- https://ogs.docs.apiary.io/
- https://forums.online-go.com/t/ogs-api-notes/17136
- Create account for AI
- Log on to API
- Place a move in a game
- Load a game into Go object
- Plug in simple random agent
- Handle multiple games
- Play multiple games at once
- Pick up existing games on startup
- Pick up new games whilst running (bug?)
- Search for game when no games going on
- Multiprocessing for multiple games
- Stone removal phase
- Resign based on win chance
- Chat
- Pre-programmed messages
- More complex chat-bot model
- Optimisations
- Benchmark and optimise Go game
- Train on AWS
- Download more data and train from only dan level games
- Optimise train data selection