Aleph Naught
This project, currently a Proof of Concept, is a Chess Engine that does not use an evaluation function, as seemingly every Chess Engine has done since Alan Turing devised an engine in pseudo-code, but rather Aleph Naught utilises a conjecture of mine that Chess players fundamentally understand chess in the same way a language is stood.
Someone is said to be fluent in a language when they are able to think in this language and I would make the argument that the way high level grandmasters fundamentally understand Chess is akin to this. And that the various levels between noobie and Grandmaster is an indicator of fluency, mannerisms, etc.
Consequently, Aleph Naught models chess play as if it were a language (modeled on an LSTM) rather than positionally analyzing a board to the n-th ply.
Why?
I first set out to develop this model so that I can further prove my conjecture and allow for future research - both into the conjecture itself and in its consequence in Chess Engines). Aside from my own interest, by developing a model that is trained to speak/play like a human rather than produce calculated moves, two important things arise:
- When playing the Engine, it is more like playing a human and so is better apt for training
- One can train the Engine, to be as fluent as a particular individual to then train against. The latter, for instance, would allow me to play against someone that is similar to the people that have been beating me in tournaments.
Areas for improvement
- Although seemingly functional, I would like to train it on a larger dataset of pgn games for a longer time - time was a major constraint when it came to training during the hackathon.
- I might try other network types - specifically a gated convolutional neural network
- Although I don't wish to add an evaluation function - defeating what makes this engine great, I may consider creating a more custom training method to spot tactics (or obvious moves like takebacks) and train the model dependent on how regularly the player from the pgn does.
Log in or sign up for Devpost to join the conversation.