Fat Fritz 2: The Best of Both Worlds

by Albert Silver
2/11/2021 – In a field that many thought had seen its final major upheaval with AlphaZero, Japanese programmers have now introduced a new neural network technology that reaches peak performance on just a regular CPU. First implemented in chess in Stockfish 12, now it powers the new Fat Fritz 2, a neural network twice its size, which takes it to the next level – vast chess knowledge paired with lightning speed. This is arguably the strongest entity that has ever played chess.

ChessBase 16 - Mega package Edition 2021 ChessBase 16 - Mega package Edition 2021

Your key to fresh ideas, precise analyses and targeted training!
Everyone uses ChessBase, from the World Champion to the amateur next door. It is the program of choice for anyone who loves the game and wants to know more about it. Start your personal success story with ChessBase and enjoy the game even more.

More...

It has been an extraordinary year for everyone, but no less so in computer chess. You would be forgiven for thinking we had seen the last major revolution in the field, thanks to AlphaZero and all the works it inspired and spawned. The neural network technology they created was staggering and incredible, and while it is still being explored and worked on, a new development has come to the chess world thanks to chess’s Japanese sibling, Shogi.

The AlphaZero revolution

Although the AlphaZero neural network is extremely powerful overall, and consequently Leela and Fat Fritz, it is held back by the need to use a GPU (graphics processor) to read it, slowing it down by over a thousand times compared to traditional speed demons such as Stockfish and Komodo. That it could still compete with them on equal terms in spite of this handicap speaks volumes on just how powerful those neural networks are.

Still, this came at a price too. The nature of its search, averaging the various outcomes, good or bad, led to a strongly exploitative style, but could fail in technical endgames or positions where surgical precision was needed. The dream of combining a large and powerful neural network with the speed and accuracy of Stockfish’s search seemed just that: a dream.

Enter NNUE.

NNUE - no need for a GPU

As chess players we naturally think of AlphaZero as a chess engine development first and foremost, whilst acknowledging Go was its originator. It is easy to forget that the AlphaZero paper described its applications to three strategy games, not two, the third being the Japanese chess game known as Shogi.

Unsurprisingly, the shogi world was no less shaken up by the AlphaZero paper, but instead of just trying to reproduce it, a Japanese programmer, Yu Nasu, developed and published a groundbreaking paper for a different neural network architecture known as NNUE, inspired by DeepMind’s success, which ran at full strength exclusively on a computer processor with no need for a video card.

Just as AlphaZero and the first edition of Fat Fritz, NNUE also builds it own chess knowledge by learning from chess positions and evaluations. NNUE completely revolutionized Shogi programs, leading to leaps of well over 100 Elo! It was their developers who shared their work with the chess world by adapting their open source Shogi NNUE code to the open source program Stockfish. Based on the success of Stockfish 12, the first chess engine to implement NNUE, numerous other engine authors have also added NNUE into their work, such as the recently released "Dragon" by the Komodo team.

Order Fat Fritz 2 in the ChessBase Shop now

Fat Fritz 2 - bigger and better

Fat Fritz 2 is trained and developed using this NNUE technology, running inside the open source Stockfish binary, but with a completely new and different neural network that differs significantly from Stockfish's on a couple of key points: 

  • The first is that the evaluations and positions did not come from a brute force engine such as Stockfish or Komodo, but rather came from our original neural network Fat Fritz.

After all, if an elite neural network could be trained from just Stockfish evaluations, imagine what it could do with the sophisticated knowledge of Fat Fritz! To this end, some four billion positions were generated on thousands of hours of the most powerful graphics cards to train it.

  • The second key difference is that the neural network in Fat Fritz 2 is double the size of Stockfish 12, using 512 neurons instead of 256, offering the opportunity for double the knowledge and understanding.

So what was the result of this larger neural network with deeper chess knowledge? In a large test at 1 minute plus 1 second, Fat Fritz 2 scored +42 Elo over Stockfish 12. Click to download the PGN games.

Score of Fat Fritz 2 vs Stockfish 12:

286 wins / 99 losses / 1167 draws

Elo difference: 42.1 +/- 8.5, LOS: 100.0 %, DrawRatio: 75.2 %
1552 of 1552 games finished.

Note: the reason for the odd number of games is that the suite used has 776 positions, which with reversed colours leads to 1552 games. 

Endgame gold

Also, there is reason to believe that its endgame play is superior overall, though even if true, exceptions will no doubt be found. Here are a few examples:

 

This has often been a very tough one for engines, even when enjoying all the tablebases available. Using a modest six cores to emulate laptop users or those with less than premium desktops, here are the results of Stockfish 12 and Fat Fritz 2:

Analysis by Stockfish 12

While taking 37 seconds might not seem like a big deal, most people will not spend that long with an engine on a position unless they already suspect there might be something to uncover.

Analysis by Fat Fritz 2

Five seconds! True, this is but a single position, yet there is a reason Shirov's move remains in modern test sets to this day.

Another curiosity actually comes from an article published a few months ago by GM Karsten Mueller. He had asked for the analysis of a development version of Fat Fritz 2, and in it one of his moves had been refuted badly... much to his delight. The reason for his pleasure was that it showed new engines might become even more valuable tools in complex endgames.

 

Here Fat Fritz 2 gave a winning line starting with 52...♝e7.

This same position was then shown to Stockfish 12, which had access to 30 threads, 7-piece tablebases, and after nine billion nodes it declared 52.♝d6 was winning and its choice.

There doesn't seem to be much doubt with such a high evaluation, does there?

Was this a case of more than one move doing the job? 52.♝d6 was then shown to Fat Fritz 2, but it declared this move and line a draw! According to it, there was a blunder just five plies into Stockfish's 50-ply mainline.

 

Instead of 56.h3? as shown above, Fat Fritz 2's 56.Nb4! saves the game. Granted, none of this is absolute proof, but this sort of thing has been common enough to stand out. 

Regardless, it is clear Fat Fritz 2 is an enormous step forward, and will offer fantastic analysis and pleasure to all who use it. Anyone who felt left out, due to the previous need to use a powerful video card to reap the benefits of a world-class neural network, can now rejoice as this is no longer required.

Order Fat Fritz 2 in the ChessBase Shop now
(best by download, to get it immediately)

Acknowledgements

No such work is the result of one person, whether directly or indirectly, and this is no less true of Fat Fritz 2.

Deepest thanks and gratitude go to my friend Daniel Uranga, a brilliant Argentinian programmer who helped realize and test every mad idea I came up with, and there were many. His help was invaluable and his skill has now been deservedly recognized by Amazon who recently hired him and brought him to the UK.

Also, warmest thanks to my friend Dietrich Kappe who is an endless source of useful scripts and ideas, and who helped take the project to the next level. His friendship and generosity cannot be overstated.

Finally, where would any of this be without the fabulous Stockfish team and their legion of contributors, as well as Yu Nasu for his groundbreaking NNUE work, and Tanuki (nodchip) for his translation of the Shogi code for use in chess.


Born in the US, he grew up in Paris, France, where he completed his Baccalaureat, and after college moved to Rio de Janeiro, Brazil. He had a peak rating of 2240 FIDE, and was a key designer of Chess Assistant 6. In 2010 he joined the ChessBase family as an editor and writer at ChessBase News. He is also a passionate photographer with work appearing in numerous publications.
Discussion and Feedback Join the public discussion or submit your feedback to the editors