From 94f3df190a91898eb344b9214a57eb31792bcb1c Mon Sep 17 00:00:00 2001 From: Dylan Date: Thu, 5 Nov 2026 13:46:28 +1300 Subject: feat: Neural network opponent trained by self-play - NeuralPlayer: a MinimaxPlayer that scores positions with a small MLP (network.rs, hand-written backprop and Adam, no new dependencies) - train subcommand: self-play with TD(lambda) targets, cut at random exploration moves so sheep blunders don't bias the net towards tigers - neural subcommand: play against a trained network - evaluate now gets the side to move - Board symmetries; the search cache keys by the canonical board, which halves the depth-9 bench time with identical moves and scores Co-Authored-By: Claude Opus 5.5 --- .gitignore | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to '.gitignore') diff --git a/.gitignore b/.gitignore index 52b5187..5016e06 100644 --- a/.gitignore +++ b/.gitignore @@ -9,4 +9,6 @@ /.direnv # Temporary removing github workflows -.github \ No newline at end of file +.github +# Trained networks (cargo run --release -- train) +/weights -- cgit v1.3.1