Archive for the ‘Alphazero’ Category

How AlphaZero Learns Chess – Chess.com

AlphaZero's learning process is, to some extent, similar to that of humans. A new paper from DeepMind, which includes a contribution from the 14th world chess champion Vladimir Kramnik, provides strong evidence for the existence of human-understandable concepts in AlphaZero's network, even though AlphaZero has never seen a human game of chess.

How does AlphaZero learn chess? Why does it make certain moves? What values does it give to concepts such as king safety or mobility? How does it learn openings, and how is that different from how humans developed opening theory?

Questions like these are being discussed in a fascinating new paper by DeepMind, titled Acquisition of Chess Knowledge in AlphaZero. It was written by Thomas McGrath, Andrei Kapishnikov, Nenad Tomasev, Adam Pearce, Demis Hassabis, Been Kim, and Ulrich Paquet together with Kramnik. It is the second cooperation between DeepMind and Kramnik, after their research from last year when they used AlphaZero to explore the design of different variants of the game of chess, with different sets of rules.

In their latest paper, the researchers tried a method for encoding human conceptual knowledge, to determine the extent to which the AlphaZero network represents human chess concepts. Examples of such concepts are the bishop pair, material (im)balance, mobility, or king safety. These concepts have in common that they are pre-specified functions that encapsulate a particular piece of domain-specific knowledge.

Some of these concepts were taken from Stockfish 8's evaluation function, such as material, imbalance, mobility, king safety, threats, passed pawns, and space. Stockfish 8 uses these as sub-functions that give individual scores leading to a "total" evaluation that is exported as a continuous value, such as "0.25" (a slight advantage to White) or "-1.48" (a big advantage to Black). Note that more recent versions of Stockfish have developed into Alpha-Zero-like neural networks but were not used for this paper.

The third type of concepts encapsulates more specific lower-level features, such as the existence of forks, pins, or contested files, as well as a range of features regarding pawn structure.

Having established this wide array of human concepts, the next step for the researchers was to try and find them within the AlphaZero network, for which they used a sparse linear regression model. After that, they started visualizing the human concept learning with what they call what-when-where plots: what concept is learned when in training time where in the network.

According to the researchers, AlphaZero indeed develops representations that are closely related to a number of human concepts over the course of training, including high-level evaluation of the position, potential moves and consequences, and specific positional features.

One interesting result was about material imbalance.As was demonstrated in Matthew Sadler and Natasha Regan's award-winning book Game Changer: AlphaZeros Groundbreaking Chess Strategies and the Promise of AI (New In Chess, 2019), AlphaZero seems to view material imbalance differently from Stockfish 8. The paper gives empirical evidence that this is the case at the representational level: AlphaZero initially "follows" Stockfish 8's evaluation of material more and more during its training, but at some point, it turns away from it again.

The next step for the researchers was to relate the human concepts to AlphaZero's value function. One of the first concepts they looked at was piece value, something a beginner will first learn when starting to play chess. The classical values are nine for a queen, five for a rook, three for both the bishop and knight, and one for a pawn. The left figure below (taken from the paper) shows the evolution of piece weights during AlphaZero's training, with piece values converging towards commonly-accepted values.

The image on the right shows that during AlphaZero's training, material becomes more and more important in the early stages of learning chess (consistent to human learning) but it reaches a plateau and at some point, the values of more subtle concepts such as mobility and king safety are becoming more important while material actually decreases in importance.

Another part of the paper is dedicated to comparing AlphaZero's training to the progression of human knowledge over history. The researchers point out that there is a marked difference between AlphaZeros progression of move preferences through its history of training steps, and what is known of the progression of human understanding of chess since the 15th century:

AlphaZero starts with a uniform opening book, allowing it to explore all options equally, and largely narrows down plausible options over time. Recorded human games over the last five centuries point to an opposite pattern: an initial overwhelming preference for 1.e4, with an expansion of plausible options over time.

The researchers compare the games AlphaZero is playing against itself with a large sample taken from the ChessBase Mega Database, starting with games from the year 1475 up till the 21st century.

Humans initially played 1.e4 almost exclusively but 1.d4 was slightly more popular in the early 20th century, soon followed by the increasing popularity of more flexible systems like 1.c4 and 1.Nf3. AlphaZero, on the other hand, tries out a wide array of opening moves in the early stage of its training before starting to value the "main" moves higher.

A more specific example provided is about the Berlin variation of the Ruy Lopez (the move 3...Nf6 after 1.e4 e5 2.Nf3 Nc6 3.Bb5), which only became popular at the top level early 21st century, after Kramnik successfully used it in his world championship match with GM Garry Kasparov in 2000. Before that, it was considered to be somewhat passive and slightly better for White with the move 3...a6 being preferable.

The researchers write:

Looking back in time, it took a while for human chess opening theory to fully appreciate the benefits of Berlin defense and to establish effective ways of playing with Black in this position. On the other hand, AlphaZero develops a preference for this line of play quite rapidly, upon mastering the basic concepts of the game. This already highlights a notable difference in opening play evolution between humans and the machine.

Remarkably, when different versions of AlphaZero are trained from scratch, half of them strongly prefer 3 a6, while the other half strongly prefer 3 Nf6! It is interesting as it means that there is no "unique good chess player. The following table shows the preferences of four different AlphaZero neural networks:

The AlphaZero prior network preferences after 1. e4 e5 2. Nf3 Nc6 3. Bb5, for four different training runs of the system (four different versions of AlphaZero). The prior is given after one million training steps. Sometimes AlphaZero converges to become a player that prefers 3 a6, and sometimes AlphaZero converges to become a player that prefers to respond with 3 Nf6.

In a similar vein, AlphaZero develops its own opening "theory" for a much wider array of openings over the course of its training. At some point, 1.d4 and 1.e4 are discovered to be good opening moves and are rapidly adopted. Similarly, AlphaZero's preferred continuation after 1.e4 e5 is determined in another short temporal window. The figure below illustrates how both 2.d4 and 2.Nf3 are quickly learned as reasonable White moves, but 2.d4 is then dropped almost as quickly in favor of 2.Nf3 as a standard reply.

Kramnik's contribution to the paper is a qualitative assessment, as an attempt to identify themes and differences in the style of play of AlphaZero at different stages of its training. The 14th world champion was provided sample games from four different stages to look at.

According to Kramnik, in the early training stage, AlphaZero has "a crude understanding of material value and fails to accurately assess material in complex positions. This leads to potentially undesirable exchange sequences, and ultimately losing games on material." In the second stage, AlphaZero seemed to have "a solid grasp on material value, thereby being able to capitalize on the material assessment weakness" of the early version.

In the third stage, Kramnik feels that AlphaZero has a better understanding of king safety in imbalanced positions. This manifests in the second version "potentially underestimating the attacks and long-term material sacrifices of the third version, as well as the second version overestimating its own attacks, resulting in losing positions."

In its fourth stage of the training, has a "much deeper understanding" of which attacks will succeed and which would fail. Kramnik notices that it sometimes accepts sacrifices played by the "third version," proceeds to defend well, keep the material advantage, and ultimately converts to a win.

Another point Kramnik makes, which feels similar to how humans learn chess, is that tactical skills appear to precede positional skills as AlphaZero learns. By generating self-play games over separate opening sets (e.g. the Berlin or the Queen's Gambit Declined in the "positional" set and the Najdorf and King's Indian in the "tactical" set), the researchers manage to provide circumstantial evidence but note that further work is needed to understand the order in which skills are acquired.

For a long time, it was believed that machine-learning systems learn uninterpretable representations that have little in common with human understanding of the domain they are trained on. In other words, how and what AI teaches itself is mostly gibberish to humans.

With their latest paper, the researchers have provided strong evidence for the existence of human-understandable concepts in an AI system that wasn't exposed to human-generated data. AlphaZero's network shows the use of human concepts, even though AlphaZero has never seen a human game of chess.

This might have implications outside the chess world. The researchers conclude:

The fact that human concepts can be located even in a superhuman system trained by self-play broadens the range of systems in which we should expect to find human-understandable concepts. We believe that the ability to find human-understandable concepts in the AZ network indicates that a closer examination will reveal more.

Co-author Nenad Tomasev commented to Chess.com that for him personally, he was really curious to consider if there is such a thing as a "natural" progression of chess theory:

Even in the human contextif we were to 'restart' history, go back in timewould the theory of chess have developed in the same way? There were a number of prominent schools of thought in terms of the overall understanding of chess principles and middlegame positions: the importance of dynamism vs. structure, material vs. sacrificial attacks, material imbalance, the importance of space vs. the hypermodern school that invites overextension in order to counterattack, etc. This also informed the openings that were played. Looking at this progression, what remains unclear is whether it would have happened the same way again. Maybe some pieces of chess knowledge and some perspectives are simply easier and more natural for the human mind to grasp and formulate? Maybe the process of refining them and expanding them has a linear trajectory, or not? We can't really restart history, so we can only ever guess what the answer might be.

However, when it comes to AlphaZero, we can retrain it many timesand also compare the findings to what we have previously seen in human play. We can therefore use AlphaZero as a Petri dish for this question, as we look at how it acquires knowledge about the game. As it turns out, there are both similarities and dissimilarities in how it builds its understanding of the game compared to human history. Also, while there is some level of stability (results being in agreement across different training runs), it is by no means absolute (sometimes the training progression looks a little bit different, and different opening lines end up being preferred).

Now, this is by no means a definitive answer to what is, to me personally, a fascinating question. There is still plenty to think about here. Yet, we hope that our results provide an interesting perspective and make it possible for us to start thinking a bit deeper about how we learn, grow, improvethe very nature of intelligence and how it goes all the way from a blank slate to what is a deep understanding of a very complex domain like chess.

Kramnik commented to Chess.com:

"There are two major things which we can try to find out with this work. One is: how does AlphaZero learn chess, how does it improve? That is actually quite important. If we manage one day to understand it fully, then maybe we can interpret it into the human learning process.

Secondly, I believe it is quite fascinating to discover that there are certain patterns that AlphaZero finds meaningful, which actually make little sense for humans. That is my impression. That actually is a subject for further research, in fact, I was thinking that it might easily be that we are missing some very important patterns in chess, because after all, AlphaZero is so strong that if it uses those patterns, I suspect they make sense. That is actually also a very interesting and fascinating subject to understand, if maybe our way of learning chess, of improving in chess, is actually quite limited. We can expand it a bit with the help of AlphaZero, of understanding how it sees chess."

Read this article:
How AlphaZero Learns Chess - Chess.com

AI Topic: AlphaZero, ChatGPT, Bard, Stable Diffusion and more!

I'm in on the Bing AI (aka: ChatGPT).

I decided to have as "natural" of a discussion as I could with the AI. I already know the answers since I've done research in this subject, so I'm pretty aware of mistakes / errors as they come up. Maybe for a better test, I need to use this as a research aid and see if I'm able to pick up on the bullshit on a subject I don't know about...

Well, bam. Already Bing is terrible, unable to answer my question and getting it backwards (giving a list of RP2040 reasons instead of AVR reasons). Its also using a rather out-of-date ATMega328 as a comparison point. So I type up a quick retort to see what it says...

This is... wrong. RP2040 doesn't have enough current to drive a 7-segment LED display. PIO seems like a terrible option as well. MAX7219 is a decent answer, but Google could have given me that much faster (ChatGPT / Bing is rather slow).

"Background Writes" is a software thing. You'd need to combine it with the electrical details (ie: MAX7219).

7-segment displays can't display any animations. The amount of RAM you need to drive it is like... 1 or 2 bytes, the 264kB RAM (though an advantage to the RP2040), is completely wasted in this case.

Fail. RP2040 doesn't have enough current. RP2040 literally cannot do the job as they describe here.

Wow. So apparently its already forgotten what the AVR DD was, despite giving me a paragraph or two just a few questions ago. I thought this thing was supposed to have better memory than that?

I'll try the ATMega328p, which is what it talked about earlier.

Fails to note that ATMega328 has enough current to drive the typical 7-segment display even without a adapter like MAX7219. So despite all this rambling, its come to the wrong conclusion.

------------

So it seems like ChatGPT / Bing AI is about doing a "research", while summarizing pages from the top of the internet for the user? You don't actually know if the information is correct or not however, so that limits its usefulness.

It seems like Bing AI is doing a good job at summarizing the articles that pop up on the internet, and giving citations. But its conclusions and reasoning can be very wrong. It also can have significant blind spots (ie: RP2040 not having enough current to directly drive a 7-segment display. A key bit of information that this chat session was unable to discover, or even figure out it might be a problem).

----------

Anyone have a list of questions they want me to give to ChatGPT?

Another run...

I think I'm beginning to see what this chatbot is designed to do.

1. This thing is decent at summarizing documents. But notice: it pulls the REF1004 as my "5V" voltage reference. Notice anything wrong? https://www.ti.com/lit/ds/sbvs002/sbvs002.pdf . Its a 2.5V reference, seems like ChatGPT pattern-matched on 5V and doesn't realize its a completely different number than 2.5V (or some similar error?)

2. Holy crap its horrible at math. I don't even need a calculator, and the 4.545 kOhm + 100 Ohm trimmer pot across 5V obviously can't reach 1mA, let alone 0.9mA. Also, 0.9mA to 1.1mA is +/- 10%, I was asking for 1.000mA.

-------

Instead, what ChatGPT is "good" at, is summarizing articles that exist inside of the Bing Database. If it can "pull" a fact out of the search engine, it seems to summarize it pretty well. But the moment it tries to "reason" with the knowledge and combine facts together, it gets it horribly, horribly wrong.

Interesting tool. I'll need to play with it more to see how it could possibly ever be useful. But... I'm not liking it right now. Its extremely slow, its wrong in these simple cases. So I'm quite distrustful of it being a useful tool on a subject I know nothing about. I'd have to use this tool on a subject I'm already familiar with, so that I can pick out the bullshit from the good stuff.

See more here:
AI Topic: AlphaZero, ChatGPT, Bard, Stable Diffusion and more!

AlphaZero Tackles Chess Variants – by Dennis Monokroussos

In keeping with the tradition of (some of) his great predecessors, retired former World Chess Champion Vladimir Kramnik has spent some time the last few years devising and (lightly) promoting a number of chess variants. For Jose Raul Capablanca, the problem was the draw death of chess; for Bobby Fischer, it was the burden of opening theory and the resulting lack of creativity at the board. We can smile at their pessimism, though they may not have been so much wrong as premature, or (to my mind) a bit too sanguine about the powers of the human mind. (Lets see how bad the draw death problem will prove to be in a match between Magnus Carlsen and Stockfish.)

Back to Kramnik and his variants. The times being what they are, theres no sense in proposing something that fosters creativity and an escape from the ubiquity of the engines influence if youre not going to immediately see what AlphaZero thinks about it. Have a look at this paper (direct link to the PDF here; HT: David McCarthy), written by three members of the Deep Mind team and Kramnik himself. It starts with a bit of history and a description of the new variants, gets into some statistics, and then fairly quickly - page 17 - gets into a qualitative discussion of the new variants. Some more math follows, and starting on page 25 all the way to the end on page 98, its what we all want most: chess and lots of it - the variants, anyway. Theres a lot of fun, beauty, and humor there, so youll want to have a look.

One remark, en passant, about the earlier material. On page 16 the authors give AlphaZeros table of the pieces values, starting with normal chess and continuing with the different variants discussed in the paper. I cant speak to the assessments it makes in the variants, but Im (extremely) surprised by how highly it rates rooks in classical chess. With the pawn = 1, as usual, it gives 3.05 for the knight (no problem), 3.33 for the bishop (very plausible), 9.5 for the queen (also plausible), and 5.63 for the rook (wait, what?).

There is a bit of throat clearing there, and rightly so:

The piece values in Table 6 should not be taken as a gold standard, as the sample of AlphaZero games that they were estimated on does not fully capture the diversity of human play, and the game lengths do not correspond to that of human games, which tend to be shorter.

I think the last part in particular is crucial: computer vs. computer games often go 100 moves or more, and its in endgames where the rooks finally come into their own. As a guide for middlegame play, especially for humans, taking those figures at face value is a recipe for disaster. Experienced players know, for instance, that trading a bishop and a knight for a rook and a pawn (e.g. on f7) is generally terrible unless theres some further payoff. And no GM would dream that two bishops are only .03 better than a rook and a pawn in any sort of normal position with multiple pawns on the board. So while those numbers may be right for AlphaZero vs. Stockfish or against itself, based in part on a data set with a significant number of 150-250 move games, I would not recommend that we carbon-based players weight the rook as heavily (in general).

This is a very minor point, and not whats at the heart of the paper. So tolle lege, and enjoy.

See more here:
AlphaZero Tackles Chess Variants - by Dennis Monokroussos

AlphaZero Vs. Stockfish 8 | AI Is Conquering Computer Chess

It was a war of titans you likely never heard about. One year ago, two of the worlds strongest and most radically different chess engines fought a pitched, 100-game battle to decide the future of computer chess.

Game Changer: AlphaZero's Groundbreaking Chess Strategies and the Promise of AI

Game Changer: AlphaZero's Groundbreaking Chess Strategies and the Promise of AI

On one side was Stockfish 8. This world-champion program approaches chess like dynamite handles a boulderwith sheer force, churning through 60 million potential moves per second. Of these millions of moves, Stockfish picks what it sees as the very best onewith best defined by a complex, hand-tuned algorithm co-designed by computer scientists and chess grandmasters. That algorithm values a delicate balance of factors like pawn positions and the safety of its king.

On the other side was a new program called AlphaZero (the "zero" meaning no human knowledge in the loop), a chess engine in some ways very much weaker than Stockfishpowering through just 1/100th as many moves per second as its opponent. But AlphaZero is an entirely different machine. Instead of deducing the best moves with an algorithm designed by outside experts, it learns strategy by itself through an artificial-intelligence technique called machine learning. Its programmers merely tuned it with the basic rules of chess and allowed it to play several million games against itself. As it learned, AlphaZero gradually pieced together its own strategy.

This content is imported from youTube. You may be able to find the same content in another format, or you may be able to find more information, at their web site.

AlphaZero: Shedding new light on the grand games of chess, shogi and Go

The head-to-head battle was astonishing. In 100 games, AlphaZero never lost. The AI engine won the match (winning 28 games and drawing the rest) with dazzling sacrifices, risky moves, and a beautiful style that was completely new to the world of computer chess.

British chess grandmaster Matthew Sadler and mathematician and chessmaster Natasha Regan are still piecing together how AlphaZeros strategy works in their new book, Game Changer. Were breaking open two moves in just one of the games to show the aggressive style, what it does, and what humans can learn from our new chess champion.

Lakota Gambill

Theres a lot going on here, but focus on the pawns. Mainly, that AlphaZero has already lost one on the g file, and is sacrificing yet another with this jumpy rook move. (Stockfishs next move is a queen leap to h2, gobbling up Whites lone soldier on the h file.) Run this position though many advanced chess engines, and most will tell you that with the sacrificed pieces, AlphaZero is now losing. So why is it doing this?

Sacrifices are very common in chess, but theyre almost always offered up for an immediate tactical edge or some other obvious recompense. But again and again, this magician-like chess engine makes early sacrifices like these as part of an extremely long-term strategy whose benefit wont become clear for dozens of moves into the future.

Eventually AlphaZero is going to fill the gaps left by the missing pawns with rooks, like a double-barrel shotgun. Those pawns, AlphaZero apparently believes, are worth less than the opportunity to assault the king from even more directions.

Lakota Gambill

By move 42, AlphaZero has sacrificed even more pawns, and is marching another poor, disposable sucker toward oblivion. But this move seals AlphaZeros victory. That final pawn is about to crack open Stockfishs kings corner like a knife twisting open an oyster.

Another key element to AlphaZeros style is its absolute obsession toward attacks against the opponents kingrather than focusing on more delicate tactical plays. By move 42, both of Alpha- Zeros bishops control long open diagonals directed right at the king. Its queen is one leap away from the fray. And both rooks are likewise staring down Stockfishs defense with unholy fury.

In their book, Sadler and Regan write that its important for chess masters to embrace early strategic pawn sacrifices despite the risk: Dont rush! AlphaZero doesnt attempt to deliver checkmate immediately but ensures that all its pieces are joining into the attack.

Science & Technology Reporter

William Herkewitz is a science and technology journalist based in Berlin, Germany. He writes about theoretical physics, AI, astronomy, board games, brewing and everything in between.

See the original post:
AlphaZero Vs. Stockfish 8 | AI Is Conquering Computer Chess

Stockfish (chess) – Wikipedia

Open source chess engine

Stockfish is a free and open-source chess engine, available for various desktop and mobile platforms. It can be used in chess software through the Universal Chess Interface.

Stockfish has consistently ranked first or near the top of most chess-engine rating lists and, as of October 2022, is the strongest CPU chess engine in the world.[3] It has won the Top Chess Engine Championship 13 times and the Chess.com Computer Chess Championship 19 times.

Stockfish is developed by Marco Costalba, Joona Kiiski, Gary Linscott, Tord Romstad, Stphane Nicolet, Stefan Geschwentner, and Joost VandeVondele, with many contributions from a community of open-source developers.[4] It is derived from Glaurung, an open-source engine by Tord Romstad released in 2004.

Stockfish can use up to 1024 CPU threads in multiprocessor systems. The maximal size of its transposition table is 32 TB. Stockfish implements an advanced alphabeta search and uses bitboards. Compared to other engines, it is characterized by its great search depth, due in part to more aggressive pruning and late move reductions.[5] As of July2022[update], Stockfish 15 (4-threaded) achieves an Elo rating of 3540+1616 on the CCRL 40/15 benchmark.[6]

Stockfish supports Chess960, which is one feature that was inherited from Glaurung.[7] The Syzygy tablebase support, previously available in a fork maintained by Ronald de Man, was integrated into Stockfish in 2014.[8] In 2018 support for the 7-men Syzygy was added, shortly after becoming available.[9]

Stockfish has been a very popular engine on various platforms. On desktop, it is the default chess engine bundled with the Internet Chess Club interface programs BlitzIn and Dasher. On mobile, it has been bundled with the Stockfish app, SmallFish and Droidfish. Other Stockfish-compatible graphical user interfaces (GUIs) include Fritz, Arena, Stockfish for Mac, and PyChess.[10][11] Stockfish can be compiled to WebAssembly or JavaScript, allowing it to run in the browser. Both chess.com and Lichess provide Stockfish in this form in addition to a server-side program.[12] Release versions and development versions are available as C++ source code and as precompiled versions for Microsoft Windows, macOS, Linux 32-bit/64-bit and Android.

The program originated from Glaurung, an open-source chess engine created by Romstad and first released in 2004. Four years later, Costalba, inspired by the strong open-source engine, decided to fork the project. He named it Stockfish because it was "produced in Norway and cooked in Italy" (Romstad is Norwegian, Costalba is Italian). The first version, Stockfish 1.0, was released in November 2008.[13][14] For a while, new ideas and code changes were transferred between the two programs in both directions, until Romstad decided to discontinue Glaurung in favor of Stockfish, which was the more advanced engine at the time.[15] The last Glaurung version (2.2) was released in December 2008.

Around 2011, Romstad decided to abandon his involvement with Stockfish in order to spend more time on his new iOS chess app.[16] On 18 June 2014 Marco Costalba announced that he had "decided to step down as Stockfish maintainer" and asked that the community create a fork of the current version and continue its development.[17] An official repository, managed by a volunteer group of core Stockfish developers, was created soon after and currently manages the development of the project.[18]

Since 2013, Stockfish has been developed using a distributed testing framework named Fishtest, where volunteers can donate CPU time for testing improvements to the program.[19][20][21]

Changes to game-playing code are accepted or rejected based on results of playing of tens of thousands of games on the framework against an older "reference" version of the program, using sequential probability ratio testing. Tests on the framework are verified using the chi-squared test, and only if the results are statistically significant are they deemed reliable and used to revise the software code.

After the inception of Fishtest, Stockfish experienced an explosive growth of 120 Elo points in just 12 months, propelling it to the top of all major rating lists.[22] In Stockfish 7, Fishtest author Gary Linscott was added to the official list of authors in acknowledgement of his contribution to Stockfish's strength.

As of November2022[update], the framework has used a total of more than 9500 years of CPU time to play over 5.5billion chess games.[23]

In June 2020, an efficiently updatable neural network (NNUE) fork introduced by computer shogi programmers called Stockfish NNUE was discussed by developers.[24][25] In July 2020 chess news reported that Stockfish NNUE had "broken new ground in computer chess by incorporating a neural network into the already incredibly powerful Stockfish chess engine."[26] A NNUE merge into Stockfish was then announced and development builds became available.[27][28]

"The NNUE branch maintained by @nodchip has demonstrated strong results and offers great potential, and we will proceed to merge ... This merge will introduce machine learning based coding to the engine, thus enlarging the community of developers, bringing in new skills. We are eager to keep everybody on board, including all developers and users of diverse hardware, aiming to be an inclusive community ...the precise steps needed will become clearer as we proceed, I look forward to working with the community to make this happen!"

On 2 September 2020, the twelfth version of Stockfish was released, incorporating the aforementioned neural network improvement. According to the blog announcement, this new version "plays significantly stronger than any of its predecessors", typically winning ten times more game pairs than it loses when matched against version eleven.[29][30]

Stockfish is a TCEC multiple-time champion and the current leader in trophy count. Ever since TCEC restarted in 2013, Stockfish has finished first or second in every season except one. In TCEC Season 4 and 5, Stockfish finished runner-up, with Superfinal scores of 2325 first against Houdini 3 and later against Komodo 1142. Season 5 was notable for the winning Komodo team as they accepted the award posthumously for the program's creator Don Dailey, who succumbed to an illness during the final stage of the event. In his honor, the version of Stockfish that was released shortly after that season was named "Stockfish DD".[31]

On 30 May 2014, Stockfish 170514 (a development version of Stockfish 5 with tablebase support) convincingly won TCEC Season 6, scoring 35.528.5 against Komodo 7x in the Superfinal.[32] Stockfish 5 was released the following day.[33] In TCEC Season 7, Stockfish again made the Superfinal, but lost to Komodo with the score of 30.533.5.[32] In TCEC Season 8, despite losses on time caused by buggy code, Stockfish nevertheless qualified once more for the Superfinal, but lost the ensuing 100-game match 46.553.5 to Komodo.[32] In Season 9, Stockfish defeated Houdini 5 with a score of 54.5 versus 45.5.[32][34]

Stockfish finished third during season 10 of TCEC, the only season since 2013 in which Stockfish had failed to qualify for the superfinal. It did not lose a game, but was still eliminated because it was unable to score enough wins against lower-rated engines. After this technical elimination, Stockfish went on a long winning streak, winning seasons 11 (59 vs. 41 against Houdini 6.03),[32][35] 12 (60 vs. 40 against Komodo 12.1.1),[32][36] and 13 (55 vs. 45 against Komodo 2155.00)[32][37] convincingly.[38] In Season 14, Stockfish faced a new challenger in Leela Chess Zero, but managed to eke out a win by one game (50.549.5).[32][39] Its winning streak was finally ended in season 15, when Leela qualified again and won 53.546.5,[32] but Stockfish promptly won season 16, defeating AllieStein 54.545.5, after Leela failed to qualify for the superfinal.[32] In season 17, Stockfish faced Leela again in the superfinal, losing 52.547.5. However, Stockfish convincingly defeated Leela in the next four superfinals: 53.546.5 in season 18, 54.545.5 in season 19, 5347 in season 20, and 5644 in season 21.[32]

Stockfish also took part in the TCEC cup, winning the first edition, but was surprisingly upset by Houdini in the semifinals of the second edition.[32][40] Stockfish recovered to beat Komodo in the third place playoff.[32] In the third edition, Stockfish made it to the finals, but was defeated by Leela Chess Zero after blundering in a 7-man endgame tablebase draw. It turned this result around in the fourth edition, defeating Leela in the final 4.53.5.[32]

Ever since chess.com hosted its first Chess.com Computer Chess Championship in 2018, Stockfish has been the most successful engine. It dominated the earlier championships, winning six consecutive titles before finishing second in CCC7. Since then, its dominance has come under threat from the neural-network engines Leelenstein and Leela Chess Zero, but it has continued to perform well, reaching at least the superfinal in every edition up to CCC11. CCC12 had for the first time a knockout format, with seeding placing CCC11 finalists Stockfish and Leela in the same half. Leela eliminated Stockfish in the semi-finals. However, a post-tournament match against the loser of the final, Leelenstein, saw Stockfish winning in the same format as the main event.

Stockfish's strength relative to the best human chess players was most apparent in a handicap match with grandmaster Hikaru Nakamura (2798-rated) in August 2014. In the first two games of the match, Nakamura had the assistance of an older version of Rybka, and in the next two games, he received White with pawn odds but no assistance. Nakamura was the world's fifth-best human chess player at the time of the match, while Stockfish 5 was denied use of its opening book and endgame tablebase. Stockfish won each half of the match 1.50.5. Both of Stockfish's wins arose from positions in which Nakamura, as is typical for his playing style, pressed for a win instead of acquiescing to a draw.[141]

In December 2017, Stockfish 8 was used as a benchmark to test Google division DeepMind's AlphaZero, with each engine supported by different hardware. AlphaZero was trained through self-play for a total of nine hours, and reached Stockfish's level after just four.[142][143][144] In 100 games from the normal starting position, AlphaZero won 25 games as White, won 3 as Black, and drew the remaining 72, with 0 losses.[145] AlphaZero also played twelve 100-game matches against Stockfish starting from twelve popular openings for a final score of 290 wins, 886 draws and 24 losses, for a point score of 733:467.[146][note 2]

AlphaZero's victory over Stockfish sparked a flurry of activity in the computer chess community, leading to a new open-source engine aimed at replicating AlphaZero, known as Leela Chess Zero. By January 2019, Leela was able to defeat the version of Stockfish that played AlphaZero (Stockfish 8) in a 100-game match. An updated version of Stockfish narrowly defeated Leela Chess Zero in the superfinal of the 14th TCEC season, 50.549.5 (+10 =81 9),[32] but lost the superfinal of the next season to Leela 53.546.5 (+14 =79 -7).[32][148] The two engines remain very close in strength to each other even as they continue to improve: Leela defeated Stockfish in the superfinal of TCEC Season 17, but Stockfish won TCEC Season 18, TCEC Season 19, TCEC Season 20, and TCEC Season 21, each time defeating Leela in the superfinal.

Read the original:
Stockfish (chess) - Wikipedia