I purchased a Chessnut Go a few weeks ago and have played one or two games on it each day since. Although I like to mix it up I'm finding I enjoy playing Maia more than Stockfish. Stockfish seems to make the occasional silly move in order to play down to my relatively low level whereas Maia just seems to pick maybe the second or third best move occasionally to do the same. Chessnut have done a great job with their software. It makes it so easy to cut and paste recorded games into a variety of analysis programmes and the Career Mode is a great way to measure ones progress but I try not to get too hung up on ratings and simply enjoy the games.
Chessnut EVO and Maia / Stockfish
"Maia" is trained on the more then 2 millions of the human games and that's why her errors are also human.
Maia 1: 1100-1200: is trained just on human games in that rating range
Maia 2: 1200-1300: trained just via human games in that range
... etc... same for the other levels
Hi,
I can speak about Maia and its implementation on platforms different from the Chessnut board. I'm not familiar with how Maia has been implemented by the guys at Chessnut, so I will discuss here some aspects that may or may not be relevant to you. In the best case, you may pick some of these info and use them to "tweak" Maia on your platform.
In principle, Maia's performance, playing style, responsiveness, speed of play, etc etc etc are determined by the following chain of things:
a) Opening book
b) Neural net
c) Lc0 configurable parameters
As far as Opening Book is concerned, Maia will of course play the lines in the opening book. To reach the point where Maia plays as much humanly possible, I created for myself a Polyglot book made of chess games played by people who are (both) between 1000 and 1999 ELO FIDE. This way, you'll obtain an opening book suited to "Club Players" and "Strong Club Players". This is the level at which I play. In creating such book, I _do not_ filter out lines or games where a bad/dubious line was played. I simply eliminated games that ended before move 10.
As far as the nets are concerned, there's not much to say. Maia comes with several nets that you can select and employ to play at the desired level. I did not create a net myself, as the supplied ones play at the right level for me. I currently play against the 1600 one, and I find it good for my playing level. I'm officially a 1500 FIDE ELO player.
As far as the Lc0 parameters, this would go a long story. Maia is essentially an Lc0 engine, with some special nets (see above) and with its search depth set to zero. This setup brings with it some negative effects, the most abvious are that its play becomes deterministic, and that it plays almost immeditately. To correct these effects, some special tweaks of the Lc0 params is needed. I won't get into more details since I don't know if Chessnut allows you to see and tweak such parameters. In case it does, and there's enough interest, I can continue the thread here and post some suggestions on what parameters need to be modified.
Hope this helps
AG
That's very interesting AG. The new Chessnut app has three flavours of bot straight out of the box. Maia, Stockfish (version 17 I think) and Lc0. Engine search depth can be configured using a slider control. As far as I can see you don't need a Chessnut board to use the app with these bots. You can also play Chess 960 and there is a board editor. The app will also save any games played. It's worth checking out. It's available for most operating systems.
Thanks AG for posting!
As @jonthescone mentioned, the Android Chessnut App delivers this Evo feature to the Chessnut Air/Air+ and Pro by using downloadable Lc0 engine network runs like, T60 and others, for use in bot play. Your posting explains a lot, thank you!
You're welcome guys.
I'm used to use Maia on my windows PC (within the Chessbase Fritz GUI) and on my Android device, with an App called "Acid Ape Chess". Both these GUIs allow access to the Lc0 (Maia's) configuration file. This is where the magic happens, if you want to tweak Maia to the maximum extent, to reach a level at which Maia becomes a joy to play against, since it is very hard to distinguish Maia's play from a human play. This is the success of the Maia's project, as they really wanted to reach such level of play.
In their original form, the creators of Maia wanted to build an engine capable of "simulate" human mistakes (that is: mistakes which are typical of humans, at a specific ELO). In other words. Maia at 1600 ELO, as an example, should have played making the same mistakes you would expect from a 1600 ELO human player.
If you're interested, there's some material to read here: https://www.maiachess.com/
As we mentioned previously, Maia showed a couple annoying side effects with it, e.g. the deterministic play and the immediate play, under certain conditions.
People like myself on a windows platform, and others, on other platforms, came up with some tweaking suggestions, to counter the above defects. You can read more, if interested, here: https://gist.github.com/laserbat/ecff7754965eae004549c3ead950099c#file-uci_options . There are also a bunch of threads/posts from me both here and on the lichess site that speak about Maia tweaking.
While I was composing this reply, I visited the Maia website (which I did not visit since quite some time) and discovered that the folks who created the Maia nets, are working on a new version of Maia. I guess those folks are putting their hands to the config files and to the nets, hopefully fixing the initial negative effects, and gifting us with an even more human-style engine!
In an attempt to share some information about Maia, I forgot to reply to the initial specific question by the OP Agrippa29, which raised some doubts about the "playing style" and "strenght" of the C.com bots.
On to some tech details, for those who like them.
CC bots are built using the Komodo Dragon engine. Recently, someone raised the idea that the engine behind those bots is now CC's newest engine (="Torch"), however there's no evidence of that, so let's continue with saying that Dragon is still the engine.
Pretty much every engine (let Maia apart) is built to play as best as possible. They have the best nets, the best algorithms, etc. If you need to build a bot that plays worse than that, you need to employ some methods to do so. Again, let's not confuse this with Maia: Maia is specifically built to NOT play the best of the best.
Dragon, the CC bots, therefore, make use of Dragon's implementation of their "method" to play at levels lower than a superhuman being, that is a set of parameters that decrease the engine strenght.
These "methods", needless to say, bring with them some negative side effects.
Taken directly from Komodo Dragon's help file:
"The mechanism by which strength is reduced when Elo is set is a combination of reduced search and increasing randomness added to eval. Above 1900 elo with NNUE or 1600 without, the depth of search is the dominant factor; below those values the randomness becomes increasingly important. So at 2000 elo it should not often make really obvious blunders, whereas at 1000 elo it will often do so."
Translated into a language that all of us can understand: "sorry guys, we created a method by which you can run the engine at a lower strenght, but expect stupid blunders".
This is in a nutshell the reason why you don't like how the "usual bots" (=non Maia) play at lower strenght, trying to simulate a human. Because they are not created initially to play at lower strenght, in a human way, but they are super-strong-engines, artificially tweaked to play sub-optimal moves.
Hope this helps!
AG
Thanks again AG for your very informative post!
I expect soon we will see some Chesscom Bots reprogrammed to use the new NNUE kid on the block, the Chesscom Torch Chess Engine.
Check out the video Hikaru vs Torch Bot in this article:
https://www.chess.com/news/view/torch-engine-available-on-chesscom
I am particularly impressed with the integration with CC. It works seamlessly. I have been playing the Stockfish and Maia AIs that come with the EVO and importing the games into CC for review.
It is on the subject of those AIs that I have questions. There are tonnes of posts here about the inaccurate ratings of the CC bots. I am curious as to how accurate the Stockfish and Maia bots are. They seem to be tougher than CC, but I am still batting above my weight.
Does anyone have a view and/or experience with playing Maia?
Many thanks and happy New Year.