Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You can imagine playing chess as a tree. You start with a game state, and every possible move is an edge to a new game state. Unfortunately, the amount of game states grows approximately exponentially (e.g. for every game state there are approximately 40 moves to play, thus every extra move multiplies #(game states) by 40, approximately). This neural engine is a trick so that Stockfish does not have to simulate all 40 moves every game states. The neural net outputs the moves that are most likely to be strong moves, and Stockfish will only consider those moves. Of course, this is a very basic explanation and there are many more optimisations Stockfish uses, though the ultimate goal of almost every optimisation is to reduce the amount of simulation Stockfish has to do.


"This neural engine is a trick so that Stockfish does not have to simulate all 40 moves every game states."

This optimization always done by chess engines, it's called pruning (they'd be quite crippled without it).

Maybe the neural network component is now in charge of it, but it's not a new thing.


Of course, I had accumulated all other pruning strategies under the "other optimisations".


From the article:

> it’s a simple feedforward network with... a single scalar output to give a numerical score for the position, indicating how favourable it is for the player about to move.

The search algorithm proposes moves, computes the board state resulting from them, and evaluates each state.

This may seem like a trivial distinction, but it's important. The Stockfish method requires knowing the rules of the game; networks that output a move directly do not.


>> The neural net outputs the moves that are most likely to be strong moves, and Stockfish will only consider those moves.

I don't think this is correct. According to the article, they are only using the neural network for evaluating the value (strength) of the positions. The search is still the same.

I believe Leela works in the manner you described.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: