How Human-Like Chess Bots Are Built, and Why It Matters for Learning

We write for players, not search engines — add us as a preferred source to support what we're doing.
For decades, chess bots had one job: find the strongest move. The strongest engines got better by searching more positions, faster. A newer kind of chess bot has a different goal. It tries to predict the move a player of a given rating would choose, mistakes included. That shift, from perfect play to human-like play, is changing how people practice the game.

How a classic chess engine finds a move

Stockfish is the chess world’s reference point for engine strength. It is free and open source, and grandmasters and major chess platforms use it for analysis, according to its project site.

Stockfish works the way engines have worked for decades. It evaluates a position and searches for the strongest continuation. 

The current version combines two techniques. Alpha-beta search prunes branches of the game tree that cannot change the result, so the engine can look many moves ahead without checking every line. Efficiently Updatable Neural Networks, or NNUE, then score each position quickly, using patterns learned from billions of positions.

Together, these techniques make Stockfish extremely strong. They do not make it play like a person. A beginner who faces a full-strength engine will usually just lose, with little sense of why.

How human-like chess bots learn from people

A different approach started at the University of Toronto. Researchers there, working with Cornell University and Microsoft Research, built Maia, a chess engine trained to play like a human rather than to win. The team presented it at KDD 2020, a leading data mining conference, in a paper titled Aligning Superhuman AI with Human Behavior: Chess as a Model System.

Maia uses the same deep learning methods as a superhuman engine. The difference is the training goal. Instead of learning purely from self-play, Maia trains on real games played on Lichess, the online chess server. The original nine Maia versions were each trained on 12 million human games, per the University of Toronto. The model learns to predict the next move a human would make, not the strongest one available. Later versions can target any rating from 600 to 2600 on the Lichess scale, according to Maia Chess, and three of the bots, rated 1100, 1500 and 1900, are free to challenge there.

Why predicting mistakes is the hard part

Finding the strongest move and predicting a human move are different problems. A rating-conditioned model is trained to reproduce the patterns typical of a given skill level, blunders included. That is deliberate. “If we algorithmically captured human style, human ability, and crucially, human errors, maybe we would have a chess AI that was much easier to learn from and play with,” Ashton Anderson, the project’s lead researcher, told University of Toronto News.

The Toronto team makes a similar point about feedback. A standard engine can flag every move that falls short of perfect, but it cannot tell a player which of those slips are typical for their level. A model trained on players at that level can point to the repeated mistakes that are common for them.

What this means for practice

A perfect opponent never misplays a position. A rating-matched bot does. It still makes plans and still punishes obvious errors, but it also drifts and slips the way a similarly rated person would. The game can feel closer to playing a peer than a machine.

A handful of platforms have built products around this idea. Chessiverse, for example, runs a roster of 1,000+ chess bots, each with its own rating and personality. Its FAQ places each bot on axes such as defensive versus aggressive play and solid versus sharp openings. According to its FAQ, free accounts get unlimited casual and rated games against the free-tier bots. The point is an opponent worth losing to: a defeat against a human-like bot shows a pattern, not just a number.

The limits of human-like chess bots

Human-like models are not people. They are statistical approximations of how a rating band tends to behave. A model trained on 1,500-rated games plays like a composite of many such players, not one specific person, and it will still make choices no individual would make in that position.

The training data also shapes the result. A model is only as representative as the games it learns from, and Lichess players are not a perfect stand-in for everyone. A bot is a tool for practicing specific skills, not a replacement for a human opponent.

Chess engines and human-like chess bots are not competing for the same job. One is built to find the objectively strongest move in any position. The other is built to feel like an opponent at a specific level, flaws and all. Use an engine to check your homework. Use a human-like bot to play a game.

Sources

Keep AllClash one tap awayAdd it to your home screen and it opens full screen, like an app.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.