Difference between revisions of "FastChess"

From Chessprogramming wiki
Jump to: navigation, search
(Created page with "'''Home * Engines * FastChess''' FILE:FastChessScreen.jpg|border|right|thumb|link=https://github.com/thomasahle/fastchess/blob/master/README.md| FastChess...")
 
Line 1: Line 1:
 
'''[[Main Page|Home]] * [[Engines]] * FastChess'''
 
'''[[Main Page|Home]] * [[Engines]] * FastChess'''
  
[[FILE:FastChessScreen.jpg|border|right|thumb|link=https://github.com/thomasahle/fastchess/blob/master/README.md| FastChess Screen <ref>[https://github.com/thomasahle/fastchess/blob/master/README.md  fastchess/README.md at master · thomasahle/fastchess · GitHub]</ref> ]]  
+
[[FILE:FastChessScreen.jpg|border|right|thumb|link=https://github.com/thomasahle/fastchess/blob/master/README.md#screenshot| FastChess Screen <ref>[https://github.com/thomasahle/fastchess/blob/master/README.md#screenshot fastchess/README.md at master · thomasahle/fastchess · GitHub - Screenshot]</ref> ]]  
  
 
'''FastChess''',<br/>
 
'''FastChess''',<br/>
 
a didactic [[:Category:Open Source|open source chess engine]] by [[Thomas Dybdahl Ahle]], written in [[Python]], licensed under the [[Free Software Foundation#GPL|GPL v3.0]].
 
a didactic [[:Category:Open Source|open source chess engine]] by [[Thomas Dybdahl Ahle]], written in [[Python]], licensed under the [[Free Software Foundation#GPL|GPL v3.0]].
 
FastChess predicts the next move by probing a one-layer [[Neural Networks|neural network]] [https://en.wikipedia.org/wiki/Softmax_function softmax] model, using the [https://en.wikipedia.org/wiki/FastText fastText] text classification library.
 
FastChess predicts the next move by probing a one-layer [[Neural Networks|neural network]] [https://en.wikipedia.org/wiki/Softmax_function softmax] model, using the [https://en.wikipedia.org/wiki/FastText fastText] text classification library.
The model takes the board state as input, and outputs a vector of probabilities for each possible move. That simple linear model might further be combined with a [[Monte-Carlo Tree Search|Monte-Carlo tree search]] along with the [[Christopher D. Rosin#PUCT|PUCT]] selection to improve the quality of play.
+
The model takes the board state as input, and outputs a vector of probabilities for each possible move. That simple linear model might further be combined with a [[Monte-Carlo Tree Search|Monte-Carlo tree search]] along with the [[Christopher D. Rosin#PUCT|PUCT]] selection to improve the quality of play <ref>[https://github.com/thomasahle/fastchess/blob/master/README.md#teaching-fasttext-to-play-chess fastchess/README.md at master · thomasahle/fastchess · GitHub - Teaching FastText to play Chess]</ref>.
  
 
=Training=
 
=Training=

Revision as of 15:45, 17 September 2020

Home * Engines * FastChess

FastChess Screen [1]

FastChess,
a didactic open source chess engine by Thomas Dybdahl Ahle, written in Python, licensed under the GPL v3.0. FastChess predicts the next move by probing a one-layer neural network softmax model, using the fastText text classification library. The model takes the board state as input, and outputs a vector of probabilities for each possible move. That simple linear model might further be combined with a Monte-Carlo tree search along with the PUCT selection to improve the quality of play [2].

Training

FastChess' model is trained by feeeding a set of pgn files to a special training procedure, creating the neural network weights in form of a model.bin file, which is later used to play chess [3].

Tuning

FastChess' hyperparameters can be tuned with black box optimization through scikit optimize [4].

See also

Forum Posts

External Links

References

Up one level