All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
As long as the mayor version is 0
, the API is not stable and may change with minor versions.
The minor version will be incremented if any of the following changes:
- The HTTP API
- The C API
- The inputs for the neural networks
This means you can reuse the same neural networks between for example 0.2.0 and 0.2.1, but not between 0.1.0 and 0.2.0.
changed
Default neural nets are now compiled into the executable
added
Batch inference of neural networks.changed
Improved selection of positions for rollouts via self play.changed
Different neural networks for contact and race.changed
Rollout data is now stored with GnuBG position IDs.changed
UseHardsigmoid
instead ofReLU
for hidden layers.changed
UseAdamW
instead ofSGD
as PyTorch Optimizer.changed
UseL1Loss
instead ofMSELoss
as loss function during supervised training.added
The C API now supports raw evaluation of positions.changed
The C API doesn't need to reload the neural nets for every call.added
Documentation forengine
and the training process.
Initial release of wildbg
.
added
Move generation.added
Finding positions for rollouts via self play.added
Rollouts with fixed number of 1296 games for generating training data.added
Training of new neural networks withPyTorch
.added
Inference of existing neural networks withtract
.added
Comparison of neural networks by playing against each other.added
Implementation of the GnuBG position ID.added
HTTP API for moves and cubes.added
Simple C API for best move in 1-pointer.