Saturday, December 10, 2016

Season 9 is over !!

I'm finally done with my TCEC backlog, I was trailing the superfinal by as many as 20 games which can be frustrating. TCEC stops for no man (unless the server crashes) and we have to keep up. Now I have time for a few remarks to close the season.

This season was so long I forget how it was in the early rounds. Stockfish was dominant the whole season, as it was in season 6 when it won a TCEC superfinal for the first time. This season's superfinal seemed to be decided quite quickly. Houdini was able to win several games but Stockfish gained points much faster. For me stage 3 was more interesting to watch because of the close race for second place between Houdini and Komodo. I believe that Komodo would have been a tougher opponent for Stockfish in the superfinal, but we'll never know.

Houdini made a comeback this season. For several years it was not updated and Stockfish and Komodo were consistently better. It was even close to dropping below third place. This season in stage 3 Houdini got a new version which was much stronger, and it beat Komodo in stage 3 to reach the superfinal. There is now a new commercial version of Houdini which is available. It needs to be continually developed if it wants to stay at the top level of computer chess.

There were two controversial games this season. The first was in stage 3, where in the first game Komodo lost to the new Houdini version, but the the game was replayed since Komodo played with the wrong parameters. The second was game 17 of the superfinal where both engines thought the game was a draw but the tablebase decision was a win for Stockfish. The win disregards the 50 move draw rule, which explains why the engines ignored it. There was never an official decision about this game.

The tournament director Anton was missing in the later parts of the season, sometimes causing confusion about procedure. In particular for a long time no one knew when the superfinal would start, even if there would be a superfinal at all. The rapid tournament that followed stage 3 was also a surprise, and in my mind it should not be a part of TCEC, and especially not between stage 3 and the superfinal. I hope that season 10 will be organized better.

I celebrated a few achievments for the blog:
- more than 100 posts
- readers from all over the world, all 6 continents represented
- more than 1000 hits in one month this November
- over 7000 all time hits
- google search 'tcec statistics' and 'tcec season 9' finds the blog
All this was achieved with the help of YOU, so thanks a lot. One thing that I would like that is missing so far is feedback. If you have a suggestion, an opinion or a question regarding a post you can add it as a comment. This could enrich the blog and make it more interesting.

I need a long break from TCEC, I hope to return for season 10 to enjoy more high level computer chess.
Bye for now.

Friday, December 9, 2016

Season 9 superfinal, games 93-100

Stockfish is the winner of the season 9 superfinal !!!
We've known that would be the result for some time now, but now it is official.

After 100 games the result is 17-8 with 75 draws.

Stockfish started game 93 with an eval advantage that gradually increased. The pawn structure was a mess for both engines and both kings did not castle. Starting from move 17 the engines played out a sequence of 14 moves they both predicted, in which Stockfish sacrificed a knight and got it back, queens were exchanged, and Houdini's king side pawns were gone. At move 30 only RRB vs RRB remained.

Stockfish's connected passers were a long term threat that Houdini had to deal with. It used the rooks to make checks and attack the white pieces. Stockfish was patient and made a pawn move whenever it had a chance and only if it was safe. The pawns were half of the way across when Stockfish exchanged the bishops. 

Houdini could only delay the inevitable with its rooks. Stockfish just had to be careful not to get mated and to avoid perpetual check. Once the pawns got close enough to queening the game would be over. With this win Stockfish goes up to +10.
In the reverse game Stockfish shut down Houdini's attack very quickly. The king side pawns remained intact and both kings castled. Evals fell to 0 as the engines continued to exchange pieces, reaching  BN vs BN position on move 33. The game ended in a tablebase draw.

Game 95 started with an advantage for black, a rare occurence in the match. Houdini was a pawn up out of the opening, Stockfish gave a second pawn to get the initiative. After clearing the center there was a series of exchanges,. leading to material equality and a drawn rook ending.
Stockfish got nothing out of the opening in game 96, evals were close to 0. There was a pawn advantage for black on the queen side, but Houdini's position looked quite safe and the game seemed to be going nowhere. There was a long shuffle in which Stockfish's king walked to the queen side, preparing a break on the king side, while Houdini was getting very low on time. When the break came the evals increased to about 1 (for black), the king side opened and the game reached a double rook ending with Stockfish a pawn up. However Houdini managed to hold the position while playing on increments. It exchanged pawns and a pair of rooks to get to a rook ending with 2 vs 1 pawns on the queen side, a draw. This was probably the closest to a black win we would get in the match.

In game 97 Houdini gave a pawn and opened the center. After many exchanges the game reached a RBN vs RBB position, Stockfish a pawn up while Houdini had a passer on the queen side. To stop the passer Stockfish exchanged the minor pieces leading to a drawn rook ending.
In game 98 the position remained closed with very few exchanges. Evals remained close to 0 when the king side opened and both kings became exposed. Instead of attacking the engines settled for a repetition draw on move 35. Are the engines tired after a long match and want to go home?

Houdini's king stayed uncastled in game 99, Stockfish attacked the king side with its pawns after castling long. Stockfish sacrificed a pawn and tried to open up the king side, Houdini's defense remained strong and the result was a quick repetition draw on move 32.
In the final game 100 Stockfish castled into the pawn storm on the king side which looked dangerous. Houdini sacrificed a pawn and got a strong king side attack while trapping one of the black bishops, evals climbed above 1. Stockfish realized it was in trouble and it exchanged pieces giving a rook for a bishop and pawns to get to a RRB vs RBB position.

The black bishops were on the edge of the board and it took a few moves to put them in better positions. Meanwhile Houdini was capturing pawns, clearing the queen side and creating passers. Stockcfish tried to block the king side with its remaining pieces but it was hopeless.

The white pawns started to march and Stockfish did not have enough strength to stop all of them. It was able to trade one of its pawns for one of the passers but no more. When Houdini's remaining pawns reached the 6th rank Stockfish resigned. Houdini won the last game, but it was Stockfish that won the match.

Tuesday, December 6, 2016

Season 9, superfinal stats

Draw rate, wins

Final draw rate was 75%. In the superfinal last season it was 89%, many more decisive games this season, more fun to watch. There were no black wins, only a few of the openings (one?) had a black bias and all these games ended in draws.

Game termination

The three most common game termination causes were:
35% - TCEC draw rule
24% - TCEC win rule
24% - TB position

Moves per game


The games were a little shorter than in stage 3, draws were usually shorter than decisive games. Another example of the 'superfinal draw effect': high level + drawish games => short draws.

Time per game (hours)
Median= 5:45
Average= 5:39

Games were longer than in stage 3 by about an hour. This agrees with the addition of 30 minutes to each engine's clock. However it contradicts the 'superfinal draw effect'.


The first letter of the ECO codes of the superfinal openings was distributed as follows:
Openings were chosen by Jeroen Noonen, I assume with more human-oriented criteria than what Cato used in previous stages and seasons. As a result there were more open games (C) and Sicillians (B) and less flank openings (A).

If we use the opening 'family name' (using format FAMILY_NAME: VARIANT....) the top 3 are:
Sicillian - 14 times
French - 8 times
King's indian - 8 times
Spanish - 8 times

The number of predetermined moves varied depending on the opening, the opening lines were usually quite long. All the reverse pairs had the same ECO code, in 4 openings the full opening name was different.

Reverse pairs, wins

There were only 3 cases of an opening with two white wins, potentially a biased opening. This includes the notorious game 17. All in all excellent opening choices.

Reverse pairs, same moves

How many plys did the engines play after book until the first divergence in the reverse games?

Most games (62%) repeated at most 1 full move, only 16% repeated more than 2 moves. This is the usual outcome of the excellent opening choices in TCEC, very few forced lines or trivial continuations after the predetermined book moves. The longest repeat was 7.5 moves in games 29 and 30.

Monday, December 5, 2016

Season 9 superfinal, games 85-92

After 92 games Stockfish is leading 16-7 with 69 draws. With only 8 games left and a lead of +9 Stockfish is officially the winner of the match (if game 17 status is changed to a draw then Stockfish is still 0.5 points short).

Game 85 was a Benko Gambit, white started with a pawn up and a passer on the queen side. Stockfish had an small eval advantage after the opening and the action was focused on the open queen side. Houdini brought all its pieces there to block the white pawns. After a knight blocked the b-file and the queens were exchanged the evals started to fall to 0.  After opening the king side Stockfish got the pawn back and created passers in the center. Eventually Houdini had to give up its passer to stop the black pawns, the engines continued to exchange until reaching a drawn rook ending.
In game 86 Houdini took a different approach. It gave up the pawns advantage and the passer to open up the queen side for its queen and rook. This led to many exchanges and a RN vs RN position on move 30. Houdini's eval advantage was gone a few moves later. Stockfish exchanged the rooks and the pawns were quickly captured, when the last white pawn was gone Houdini could not win with only a knight. Two Benkos, two draws.

Game 87 started with both kings in the center and with black's king side open. Stockfish captured two pawns in the center but its king was stuck and could not castle while Houdini's king castled long. Houdini attacked through the king side with a QN combination, leading to exchanges and a RRB vs RRB position. Stockfish was still a pawn up but Houdini's rooks were more active. After exchanging a pair of rooks the extra pawn was not enough in an opposite color bishops setting.
In game 88 both kings remained in the center and queens were exchanged early. Houdini was a pawn up and Stockfish attacked through the king side, leading to a series of exchanges and a rook ending by move 28. Evals fell quickly to 0 and the game ended in a draw after most of the pawns were gone.

Game 89 started with black a pawn up, the queen attacking and pieces in awkward positions. The evals stayed low throughout the game, both kings did not castle but were relatively safe once the queens were exchanged. Only RRB vs RRN remained after move 28, and after a few pawn exchanges Stockfish ended the game with perpetual check.
In a similar position in game 90 Houdini offered a bishop sacrifice to open up the king side but Stockfish declined. After a series of exchanges Houdini was a pawn up in a double rook ending on move 31. The engines eliminated the queen side pawns, then exchanged a pair of rooks. The remaining rook ending was a draw but it took about 50 moves for the engines to agree.

Game 91 started with a closed Spanish opening, most of the pieces remained on the board with pawns mostly locked. Stockfish had a small eval advantage, perhaps a small space advantage and two knights that are stronger in closed positions. Houdini's bishops were quite miserable.

Stockfish's eval gradually increased though it was not clear why at first. Houdini exchanged knights, leaving Stockfish with one while Houdini had none. There were many weak pawns, both black and white, in particular the black b4 and g4 pawns could not be defended. After exchanging queens the black king side pawn line was broken and evals were over 1.5.

Taking its time Stockfish captured the b and g pawns, exchanging a rook pair in the process with RBN vs RBB remaining. Stockfish then sacrificed two pawns and created 3 passers across the board.

Houdini also had two passers but the white pawns were a more immediate threat. Houdini could not defend against all three without losing material. Stockfish squeezed a win out of this closed position, it is at +9.
In game 92 the engines exchanged more pawns and the position was more open. After opening the queen side both engines had a passer there. The engines exchanged queens and Stockfish gave the queen side passer and gained one in the center. Stockfish's eval at this point fell to 0, Houdini kept a small eval for a while longer. The game reached a RN vs RB position, Houdini kept one last pawn but it was not enough for a win.

Season 9 superfinal, games 77-84

After 84 games Stockfish is leading 15-7 with 62 draws. For the first time in the match Stockfish increased its lead to +8. The remaining 16 games are really a formality, the winner will be Stockfish.

Evals stayed close to 0 in game 77. Both engines seemed anxious to exchange all their pieces, so that on move 32 the game reached a rook ending. The engines continued to capture pawns until only one was left in a tablebase draw.
The reverse game was similar, reaching a RB vs RB position on move 26. Stockfish was a pawn up but the evals were at 0. For 40 moves the engines either shuffled or captured pawns until there were no more pawn moves left and the game was adjudicated a draw.

Houdini's king stayed in the center in game 79, Stockfish castled long and opened the king side for a potential attack. Evals climbed to around 1 but got no higher, Stockfish took over the g file with its rooks and queen but could not make any effective threat. After exchanging a few pieces the best Stockfish could get was a 3-fold check repetition.
Stockfish castled its king in game 80 and had to be careful about Houdini's king side pawns exposing its king. Stockfish's king used a white pawn as a shield while it developed a counter attack on the queen side against white's king. Houdini tried a rook for bishop trade to open up the king side, Stockfish gave the material back and exchanged down to a drawn RB vs RB position with opposite color bishops.

Game 81 was balanced out of the opening with a small eval advantage for Stockfish. Early in the game Houdini sacrificed a knight for pawns and created connected passers on the queen side.

Stockfish got rid of the black knight in its territory with a trade and then blocked the passers with a bishop. It then countered on the king side, causing Houdini to give up its passers. After several exchanges only RBN vs RB was left.

The extra white knight was more significant with less pieces on the board, evals were increasing rapidly. After exchanging several pawns Stockfish held on to its last one while its pieces surrounded the black king. The game ended before Houdini started to lose material. A dangerous sacrifice that backfired by Houdini. Stockfish goes up to +7 again.
The queen side was gone after 30 moves in game 82. Houdini had a small eval advantage and a weak passer, after exchanging queens only RBN vs RNN remained and Stockfish's eval fell to 0. The engines played on for another 25 moves, Houdini's eval was also 0 when only rooks remained and the game ended in a tablebase draw.

Game 83 was a Fried Liver attack line of the Two Knights defense, where white sacrificed a knight for pawns and the black king was exposed in the center. Houdini's king found refuge in the queen side surrounded by pieces while Stockfish e+f pawns looked intimidating.

Stockfish's eval increased to nearly 3 as the pieces were exchanged, Houdini gave the piece back and only QR vs QR remained with Stockfish a pawn up. Houdini's eval was only a little over 1, could it hold the endgame?

Stockfish soon took over the king side. The f pawn was on the 6th file and Houdini had to block it. When the h pawn started to march supported by the white king Houdini had no option but to resign. Stockfish's lead is +8, but can it hold this opening with the black pieces?
In the reverse game Houdini's eval rose to about 1 with its e+f passers while Stockfish had a knight advantage and its king walked to the queen side as before. However in this game after the exchanges Houdini got the material back and was two pawns up in a double rook ending. Only one of the extra pawns was a passer, the other was doubled. Stockfish was able to hold the position with a threat of perpetual check, the evals fell to 0 and a draw was agreed. Somehow Stockfish found a defense in this imbalanced opening. 

Sunday, December 4, 2016

Season 9 superfinal, games 71-76

After 76 games Stockfish is leading 13-7 with 56 draws. With 24 games to go Stockfish will almost certainly win the match. Houdini seems to have an advantage only in long games with time running out, and this doesn't happen very often.

Game 71 started with an eval advantage for Stockfish. There were many early exchanges and the game reached a RRN vs RRN position after 23 moves.

Houdini's queen side pawns were weak but the position looked defendable, not a lot Stockfish could try. Nevertheless as the game continued Stockfish's eval started to climb, it definitely saw something. At the right moment Stockfish played f5, temporarily losing a pawn and disrupting the black pawn structure.

After exchanging a pair of rooks and capturing a few pawns the white h pawn became a passer and Houdini had to keep an eye on it so it couldn't promote.

From here it was an easy win for Stockfish, Houdini was forced to lose the knight to get rid of the h pawn, and Stockfish could use the material advantage to win using the queen side pawns. Stockfish goes +7 again.
There were less exchanges after the opening of game 72, and after queens were exchanged the pawn lines became static and the engines started to shuffle.

Apart from a few pawn moves and the exchange of a pair of knights nothing happened in the game. The evals climbed above 1.5, Houdini had a space advantage and it had a few pawn moves it could make that would break the black pawn line, but it chose to wait.

The engines continued to shuffle for another 35 moves. They were getting low on time and the game entered blitz mode. Houdini opened up the queen side and brought its king to the center. After exchanging a knight for a bishop Houdini's eval started to increase. It created a passer on the queen side and exchaged down to a rook ending.

Stockfish could not stop the passer without allowing the white king to infiltrate the king side and attack the black pawns. This is the second time Houdini won by waiting for Stockfish to be low on time. Both games of this opening were a win for white, but with very different winning strategies. The lead is back to +6.

In game 73 Stockfish attacked with its king side pawns, leaving the king a little exposed. However the center was blocked and the white king was not in any danger. Houdini formed a defensive line across the board, and evals climbed above 1 when it gave a rook for one of the white bishops. After exchanging queens only RRB vs RBN remained, and Stockfish continued to shuffle since it couldn't break Houdini's line. The game was adjudicated a draw when both engines lowered their evals enough.
In the reverse game Houdini kept its king side pawns near the king, The center was wide open, white had a pawn advantage on the king side, black on the queen side. After a series of exchanges only RB vs RB remained. Houdini managed to be a pawn up but with opposite color bishops this wasn't enough to secure a win.

All the pawns were still on the board until move 25 in game 75. There were a few moves where Houdini's eval was in its favor as black, a rare event in this match. Houdini had a space advantage but nothing more, its eval got back to 0 and stayed close to it for the rest of the game. After opening a few files the engines exchanged all rooks and then shuffled until a draw was agreed.
In game 76 Stockfish seemed to develop a dangerous attack on the white king on the queen side, with the king exposed and facing a QR combination. Stockfish's eval was a constant 0 though, so it didn't believe the attack was effective. Indeed the engines exchanged pieces until only the kings and pawns were left, and draw a few moves later.

Friday, December 2, 2016

Season 9 superfinal, games 67-70

After 70 games Stockfish is leading 12-6 with 52 draws. Four of the last 8 games have been decisive, Stockfish's lead remains a constant +6.

After the opening of game 67 Stockfish's eval increased to about 1. There were several early exchanges which left Stockfish a pawn up, Houdini had a bishop pair but the bishop on h5 was close to being trapped.

The evals stayed at this level for quit a while. The complicated position was gradually simplified by exchanges, leading to a RB vs RN ending with Stockfish a pawn up.

Stockfish was a pawn up but with so few pieces on the board the game seemed to be heading for a draw. All the pieces moved toward the top left corner, Houdini's chance to hold was to block the advancing white pawns. Stockfish's eval jumped to 2 and then stayed there for 15 moves, again giving the impression that Houdini can hold.

Suddenly Stockfish saw something and its eval jumped to 9.62. BOOM. WOW !! Unbelievable, what did Stockfish see that Houdini didn't? After a6+ Stockfish quickly drove the king away from the corner leaving the a7 pawn with one less defender. The game was stopped a few moves before Stockfish was able to capture the pawn.  Did Houdini really not see this coming? Stockfish demonstrating its superior endgame skills, now its lead is +7.
In game 68 Houdini's eval advantage got up to 1 but could not go higher. Houdini tried a knight sacrifice for pawns, exposing the black king to attack. It managed to get two rooks on the 7th rank and got the material back. Stockfish eval dropped to 0 and it countered with a rook on the 2nd file. The mutual attacks canceled out and the game ended in a drawn RB vs RN position.

Game 69 started with an eval advantage for Stockfish, when unexpectedly in move 14 Houdini saw an opportunity for a QN attack on the white king that resulted in a repetition draw on move 24. Shortest game of the match so far.
In game 70 Houdini held on to a small eval advantage and there was no early draw. From move 19 the engines agreed on a long series of moves which they then played out. The evals stayed in favor of Houdini, Stockfish gave a rook for a knight and pawns and only RBN vs BNN remained.

Stockfish's bishop was almost trapped and it took a few moves to get it out of the corner. The black knights had to move away from the white king to help defend the pawns, and they couldn't find a position where they also defend each other. After Stockfish exchanged its bishop for a knight and Houdini captured a pawn Stockfish had a long think, and then its eval started to jump. Houdini's eval followed a few moves later.  

The black a pawn was about to fall, the black g pawn was not a real threat and Houdini's remaining pawn could not be stopped without losing material, a won endgame for Houdini. Stockfish is back to +6.

Tuesday, November 29, 2016

Season 9 superfinal, games 63-66

After 66 games Stockfish leads by 11-5 with 50 draws. Stockfish keeps its +6 lead while Houdini collects another win, with the help of the opening this time.

The opening of game 63 was a sharp position from the Velimirovic line in the Sicillian. When the initial storm quieted down Stockfish was up a pawn with connected passers and an exposed king on the queen side, and Houdini had a passer in the center. Stockfish had an eval advantage that went up to 1, but after exchanging a pair of rooks the evals started to go down. In a QRB vs QRB position Houdini's passer was blocked on the 3rd rank and couldn't advance while Stockfish couldn't safely capture it. The game ended in a 3-fold repetition.
In game 64 the queens were exchanged early, Houdini tried to keep its advantage by giving a rook for a knight and pawns. After a series of exchanges only B vs BN remained and Houdini was 3 pawns up, connected passers on the queen side. As the game progressed it became clear that Stockfish's extra knight was not strong enough to stop the white pawns, but with opposite color bishops Houdini could only reach the 7th file with a pawn. In the end Stockfish could sacrifice its pieces for the remaining pawns to get a pawnless draw.

Game 65 started with an eval advantage for Stockfish that gradually increased to over 1. After a series of exchanges only QRB vs QRB remained in what seemed to be a balanced position.

Material was equal and the pawn structures were identical. However, the white rook was much better placed and it could immediately block the black rook from defending the b pawn. In the long run the black b pawn was doomed. Another weakness was the black king, too far from the action and under threat of a potential back rank mate. To exploit these weaknesses Stockfish exchanged queens and captured the black b pawn. 

After exchanging the bishops the white b pawn became too strong and there was no hope of a king side counterplay. Stockfish won a few moves later.
Game 66 started similarly, with an eval advantage for Houdini of about 1. The exchanges started earlier in this game, the result of which was again a QRB vs QRB position.

There were more pawns in this position, material was equal but Houdini had a passer. The black c pawn was hard to defend and the black king was a weakness as before. After Houdini captured the c pawn and exchanged bishops the action was around the white passer. Houdini's evals were already high in the following beautiful position.

Stockfish is almost in Zugzwang: the king can't move, the queen can't move without losing the rook, moving the rook allows Qf5. Houdini just waited while Stockfish made a few pawn moves on the king side, exposing its king. The game was over very quickly. This opening was too imbalanced, both engines found ways to win as white.


Monday, November 28, 2016

Season 9 superfinal, games 55-62

After 62 games Stockfish leads 10-4 with 48 draws. Houdini, with another win, is showing that it can beat Stockfish in some positions. It is just that Stockfish beats Houdini more often, it is +6 with 38 games to go in the match.

The opening for game 55 gave white a rook advantage and a trapped knight. The starting eval was in white's favor but not overwhelming, and as the game progressed evals went down a bit. A series of exchanges left RRB vs RBB on the board, a rook pair vs a bishop pair, can Houdini hold?

Stockfish made very slow progress, the evals climbed slowly as the rooks and bishops danced on the board. After 20 moves Stockfish exchanged a pair of rooks to get a RB vs BB ending.

Evals started to climb faster, Stockfish was getting sure it would win. To me it seemed the bishop and rook dance continued as before, but now Stockfish was able to get its queen side pawns moving, capture a pawn and create a passer. From there the path to a win was clearer. Slow and beautiful RB vs BB endgame win for Stockfish.
Game 56 started with the same material advantage for white, and evals started at 1 and went down gradually. This time when most pieces were exchanged Stockfish got the material back and Houdini's advantage was a bishop pair in a RBB vs RBN position. After exchanging bishops Houdini was able to capture a pawn and create a passer, still only good for a draw. Another demonstration of Stockfish's power in an imbalanced opening.

Game 57 started with the center pawns locked and evals close to 0. The engines mostly shuffled their pieces, exchanging all the knights and stablizing their pawns. After a few pawn exchanges the engines exchanged all rooks and Houdini's queen infiltrated behind the white pawns, leading to a perpetual check draw.
In game 58 it was the bishops that were exchanged off, and from move 20 the engines started to shuffle pieces with a few pawn moves to complete the pawns lines.

After a long shuffle there were a few pawn moves and the engines continued to shuffle. Stockfish's eval was at 0, but Houdini's remained positive. When Houdini saw the 50 move rule approaching its eval gradually decreased, reaching 0 and even negative values (as a result the game was not adjudicated). To avoid a draw Houdini exchanged the knights and opened the h-file. The game passed 100 moves and the engines had under 2 minutes to play, a blitz ! Houdini used the open file to exchange a pair of rooks and suddenly it saw something in the position and its eval started to jump.

Houdini combined threats against the black pawns and a potential mate with the queen on b7, Stockfish defended as much as it could but Houdini found the winning moves. It forced the black pieces back, then brought the queen and rook to the h file forcing a rook exchange. After that the a7 pawn fell and Houdini's pawn on a6 was too strong. All this playing on increments. Houdini proved again it is better in shorter games, recall it won the rapid tournament.

In game 59 Houdini sent a bishop deep into white territory where it got trapped for 8 moves while Stockfish was unable to capture it. The bishop managed to get out of the trap unharmed. After exchanging queens only RBN vs RBN remained on move 27. Evals fell gradually to 0 as the engines exchanged a few pawns, and the game ended in a 3-fold check repetition.
Game 60 reached a rook ending by move 27, evals were at zero a few moves later. The rooks continued to capture pawns until the game reached a tablebase draw.

After the opening in game 61 Stockfish was a pawn up with a queen side passer while Houdini had a supported passer in the center. Stockfish used its knights to block the central black pawns, and together with its own pawns formed a line across the board and started to shuffle pieces behind it. Houdini's line was broken, its pieces defended the entry points dynamically. The standoff continued until reaching a 50-move draw.
In the reverse game Stockfish's eval dropped to 0 immediately. After exchanging all the rooks the black queen moved forward and threatened Houdini's king on the back rank. Houdini was forced to counter with a perpetual check draw.

Saturday, November 26, 2016

Season 9 superfinal, games 45-54

After 54 games Stockfish is leading 9-3 with 42 draws. Draw rate is going up again at 78%. Houdini is playing well, but with more than half the match over it's quite clear that Stockfish is better at finding wins. Stockfish will win the match, Houdini needs a miracle to recover from 6 games down. 

In game 45 Stockfish had an eval advantage out of the opening, a few pieces were exchanged early including the queens, both engines had passers that could be dangerous later. Houdini's bishop was trapped and could only defend pawns.

The evals started to jump when Stockfish sacrificed its passer on the d file. Through the open file Stockfish exchanged all rooks, then it regained the pawn while exchanging the bishops. Only knights remained, and Stockfish was very happy with the position.

Black's c pawn could not be defended in time, and this created a 3 to 1 pawn advantage on the queen side. Stockfish blocked the black passer with its king and Houdini could not stop the white pawns.
In the reverse game Houdini had an eval advantage that grew to about 1, with similar material composition but different pawn structure. Stockfish simplified to a RB vs RB ending with opposite color bishops, and though Houdini was a pawn up it wasn't enough. The endgame was played for almost 90 moves before both engines agreed to a draw. Houdini couldn't find a win with the help af this unbalanced opening.

In game 47 Stockfish had a small eval advantage after the opening. When pieces and pawns started to be exchanged and the position opened the evals dropped to 0. The engines exchanged down to a BN vs BB position with one pawn each, resulting in a draw.
In game 48 the evals reached 0 even faster. By move 27 on RR vs RR remained, both engines had passers but neither engine could get an advantage and the game was adjudicated when the pawns stopped moving.

In game 49 the engines castled in opposite directions, Stockfish started to attack the king side with a pawn storm and the evals started to climb. Houdini reacted by exchanging everything and after move 24 only RB vs RB remained with Stockfish a pawn up and evals at 1. Evals continued to climb for a short while, Stockfish with a passer in the center, but after exchanging rooks the evals dropped back to 0. Houdini regained the pawn and exchanged the bishops to get a draw.
In the reverse game Stockfish reacted to the pawn storm on the king side by a counter attack on the queen side. The evals fell to 0 and the engines gradually exchanged pieces until reaching a QB vs QB position. The game continued for 25 more moves but the draw was never in doubt.

In game 51 after a few piece exchanges the engines kept their remaining pieces behind their pawn lines and started to shuffle. It took almost 100 moves for the game to finally end, after a long shuffle the engines broke the pawn lines and exchanged down to a drawn queen ending.
In game 52 the engines did not form pawn lines. Through an exchange Stockfish created an advanced passer in the center and gave a rook for a bishop to keep it. Evals were close to 0 even when the pawn reached the 2nd rank. Houdini gave the material back and exchanged pieces, capturing the black passer in an opposite color bishops ending, another clear draw. Third drawn opening in a row.

There were almost no exchanges after the opening of game 53, Stockfish maintained an eval advantage as high as 0.7. The position opened a little with a few exchanges, Houdini sacrificed two pawns but the evals fell to 0. After Houdini sacrificed a third pawn the evals started to turn to its favor as it developed a dangerous attack on the white king. Stockfish gave material to stop the attack, exchanging pieces and giving a rook for a knight so that only QBN vs QRB remained. Houdini pressed on getting evals as high as 0.5, but after queens were exchanged Stockfish's king was no longer in danger. The game continued for another 25 moves before a draw was agreed. This is the first time in the match that Houdini had a serious attack playing with the black pieces.
In game 54 Houdini's eval advantage lasted longer. By move 24 it was a pawn up and had two passers, though there were still many pieces on the board and the strength of the passers was not clear yet. The evals gradually decreased as the engines fought for control of the passers. Eventually Stockfish captured one but Houdini held on to the second and it got to the 7th rank. By this time only RRN vs RRB remained and Stockfish's eval was at 0. Houdini was forced to let the passer go and the game ended in a tablebase draw. Houdini played this opening better than Stockfish in both games, still the result is two draws. Four drawn openings in a row.

Friday, November 25, 2016

Season 9 superfinal, games 37-44

After 44 games Stockfish leads 8-3 with 33 draws. Since the shocking 4-0 start of the match after 16 games the result has been 4-3 (including one contested win for Stockfish). Houdini needs a winning streak of its own to have a chance of winning this match, doesn't seem likely though.

Game 37 started with an exchange-fest, only RRB vs RRB remained by move 20. The engines shuffled for about 30 moves with a few pawn moves, Stockfish kept a small eval advantage. When the engines started to exchange pawns and pieces the evals dropped to 0, and the game reached a drawn rook ending.
In game 38 the pieces stayed on the board longer. Houdini had a small eval advantage that gradually decreased, until after about 30 moves it jumped up close to 0.8. Indeed after simplification Houdini was able to win a pawn in a RRN vs RRB position. It had two queen side passers while Stockfish had one in the center. Houdini tried hard but couldn't improve its position, one pawn was not enough. Stockfish exchanged pawns and a pair of rooks to get a drawn RN vs RB ending. The draws continue, 5 openings in a row.

Evals stayed very low in game 39, the engines were ready to declare a draw from move 23. After the queen side pawns were locked the game almost ended in 3-fold repetition, then it was almost adjudicated. The second 3-fold attempt was successful.
In game 40 the evals also stayed low. The pawn structure was different, the queen side pawns became static early in the game but Houdini had a passer in the center. After exchanging queens both engines focused their attention on this passer, eventually Houdini didn't have enough support and the pawn was captured. A few moves after that a draw was declared.

Game 41 was a miniature for this match, a 3-fold repetition draw after only 29 moves. After locking the king side pawns the engines ran out of ideas and shook hands. Game 42 was completely different. There were only a few exchanges, each engine kept its pieces behind its pawns. The evals stayed low and after the king side was blocked the game seemed to be heading for a long shuffle and a draw. Instead Houdini's eval jumped over 1 and Stockfish's eval also moved up.

Houdini had a space advantage and could plan how to break the pawn line while Stockfish could only wait. Houdini took some moves to arrange its pieces and then launched the attack. As a result the queen side opened up, all the minor pieces were gone and Houdini was a pawn up.

Evals started to climb as Houdini focused its efforts on the weak queen side pawns. For the price of two king side pawns Houdini cleared the queen side and created two passers. To finish the game Houdini exchanged two rooks for the black queen and the pawns started to march, leading to a won Q vs RR ending. Finally a win after 14 straight draws.

Game 43 started with an eval advantage for white, the engines castled in opposite directions and Stockfish had a pawn advantage on the king side. After queens were exchanged not many pieces were left on the board, Stockfish was a pawn up and the evals were at 0.8.

Houdini's king moved forward to help in stopping the white pawns. After several exchanges only RB vs RN were left. While the black king was in the king side Stockfish moved its pieces to the queen side, creating a passer.

Houdini finally took out the king side pawn that was a threat from the start, but its king was too far when Stockfish's queen side pawns started to march. It took some time but eventually Stockfish got one pawn to the 7th rank, enough for a win. Stockfish immediately strikes back after its previous loss.
The reverse game developed similarly, white had a pawn advantage on the king side and an eval advantage. However, in this game Stockfish opened up the queen side so that when the game reached a RN vs RB ending Houdini did not have any pawns there. Stockfish managed to get a draw without difficulty.

Tuesday, November 22, 2016

Season 9 superfinal, games 27-36

After 36 games Stockfish leads 7-2 with 27 draws. There have been 9 draws in the last 10 games, draw rate is increasing to 75%. At this level this is to be expected even with careful opening choices, we wouldn't want really one-sided openings that cannot be defended.
We are still waiting for a decision on Game 17.

Game 27 started with a small eval advantage for Stockfish. There were many early exchanges and at move 23 only RB vs RN left. Stockfish was up a pawn with an ugly looking pawn structure. Evals were at 1, can Stockfish get something out of the ending?

After exchanging rooks the central group of doubled pawns became strong, it guaranteed a pawn majority in the center and it was an obstacle for Houdini's pieces. Evals were gradually rising, Stockfish thought it was doing well.

At this point Houdini was having trouble finding moves to play. Its king side pawns could not advance, its king and knight had to keep an eye on the white pieces. Stockfish attempted to get its king to g4 to help its pawns advance. Houdini countered with the c pawn and forced the white king back to the center. The c pawn became another target to defend and Houdini's pieces were already overworked. Houdini was forced to allow Stockfish to play f5 but then its position collapsed. After capturing the c pawn Stockfish's king could infiltrate the king side winning the game. Well played endgame by Stockfish.
In the reverse game more pieces remained on the board. Houdini had a bishop pair against Stockfish's knight pair, both kings were a little exposed to attack. Houdini kept a small eval advantage, Stockfish's eval dropped to 0 when a series of exchanges simplified to a RBB vs RR position. When Stockfish captured the last white pawn and gave a rook for a bishop the RB vs R ending was a draw.

In game 29 the engines exchanged almost all pieces after the opening, reaching a rook endgame on move 24. Stockfish had a small eval advantage for another 10 moves, but there was no real advantage on the board resulting in a short draw.
In the reverse game the engines kept a few more pieces on the board, reaching a QRN vs QRN position on move 25.  After queens were exchanged Stockfish's eval dropped to 0. Houdini remained optimistic much longer, it traded 3 pawns for the black knight but with no pawns left it couldn't win.

Stockfish did not castle in game 31, a locked pawn line in the center made its king relatively safe. Houdini's king side pawns were far from the king and Stockfish used an open g file to make attack threats. In the end both Stockfish's threats on the king side nor Houdini's counter on the queen side were effective, the engines exchanged rooks and simplified to a QBN vs QBB position. Evals dropped nearly to 0 and a draw was agreed.
In game 32 the engines exchanged almost all the queen side pawns, Houdini castled late to find safety for its king. When the f file opened the engines placed their rooks there, leading to the rooks being exchanged. Then the game reached a BB vs BN ending with evals close to 0 and another draw.

Game 33 reached a RRB vs RRB position by move 24. Stockfish had a small eval advantage for a few more moves, but after exchanging a pair of rooks and with opposite color bishops the evals fell quickly to 0. Stockfish had to give the bishop to stop a black pawn, still a draw.
In game 34 Stockfish's eval reached 0 even faster on move 16, though there seemed to be a lot of potential in the game. Houdini lost a rook for a knight but got an active attack on Stockfish's exposed king. The game was heading for a 3-fold check repetition when Stockfish changed its mind. The draw was achieved after the queens were exchanged, Houdini won back the material reaching a drawn rook ending.

There were many exchanges after the opening of game 35, and at move 30 only QB vs QN remained. Stockfish had a small eval advantage, yet it was Houdini that had a passer in the center. Houdini's king was more exposed and Stockfish used checks to drive it to the queen side and then capture pawns on the king side. Houdini had two queen side passers to counter Stockfish's 3 to 1 pawn advantage on the king side. Here Houdini played for a draw, it blocked the white pawns, found a protected spot for its knight and defended with its queen and king. Stockfish could not break this defense and after 30 moves it gave up and agreed to a draw.
Game 36 also started with many exchanges, after move 21 only QRB vs QRB remained. Houdini won a pawn while Stockfish continued to simplify, reaching an opposite color bishop ending. One pawn was not enough and Houdini couldn't break through the black line with all the black pawns invisible to its bishop. It took 70 moves for the engines to stop their shuffling and declare a draw.

That's 4 straight openings with only draw results. Is Stockfish playing defensively waiting for the match to end? Can Houdini close the gap? Still many games to go.

Monday, November 21, 2016

Season 9 superfinal, games 21-26

After 26 games Stockfish leads 6-2 with 18 draws. Game 17 is under review and the officials may change the result to a draw. 5-2 looks a lot better for Houdini than 4-0 did. Can Houdini make a comeback?

Game 21 started with a 7-ply book of the King's Gambit Accepted. As expected evals out of the opening favored black and the fans were anxious to see how Stockfish will handle being a pawn down with a king that can't castle. However, Houdini could not find a line that would improve its position and Stockfish equalized quickly. Unexpectedly, as the game progressed evals started to suggest Stockfish was better.

The advantage seemed to be due to having more space, and it was not clear how to proceed. Evals did not move for a while as the engines shuffled pieces.Then Stockfish made a small hole in Houdini's pawn line on the king side, with evals rising above 1. Stockfish used all its pieces to apply pressure on Houdini's position through the hole.

Still Houdini's position looked solid enough, it wasn't going to fall through a direct attack on the king. Instead Stockfish attacked the center of the board causing a series of exchanges that resulted in a knight for rook trade and a QRB vs QBN position.

Using the rook and queen Stockfish could check the black king and go after the weak black pawns. It took many more moves and was far from easy but Stockfish managed to eliminate the black queen side pawns, and after queens were exchanged its passer was unstoppable. Quite a surprising win for Stockfish. Does this game show that the King's Gambit is good for white?
In the reverse game Stockfish as black had an eval advantage for a longer time and its pieces stayed active. However, it too could not find a winning line and as pieces were being exchanged the evals drifted towards 0. After exchanging queens with only RBN vs RBN left the position became static and a draw was reached. A second good result for white in the King's Gambit, I vote for having more games with this opening in TCEC.

In game 23 Stockfish seemed to sacrifice a rook and then a knight, when in fact the knight could not be taken due to a mate, and a few captures later Stockfish got the material back. It was a pawn up with evals above 1 in a QBN vs QBN position from move 28. After exchanging queens Houdini created an advanced passer, but it couldn't hold it after bishops were exchanged as well. The remaining knight ending was a draw but it took almost 50 moves for the engines to realize this.
The reverse game 24 took a different path. Houdini had a supported advanced passer in the center and Stockfish had a 3 to 1 pawn advantage on the queen side. Houdini's eval was above 1 but it did not increase, Houdini couldn't improve its pawns position. Stockfish created two passers on the queen side, one of them advanced. When the king side pawns became static both engines started to shuffle and the evals started to go down. With evals close to 0 the ending was spectacular, Stockfish sacrificed a bishop to eliminate the white pawns, then with queening threats and an attack on the white king got the material back and reached a drawn RB vs R ending.

Houdini's king remained uncastled in game 25 but Stockfish was not able to get a useful advantage. Evals were at 0 from move 27 even though Stockfish had a bishop pair and a passer. The game reached a RB vs RB ending which led to a drawn tablebase position.
Game 26 was nothing like game 25. Both engines castled quickly and there were many exchanges after the opening. After queens were exchanged Houdini had an eval advantage, with better pawns on the queen side.

Here Stockfish chose to take the d pawn and abandon its a pawn. This looked dangerous because Houdini's b pawn became a passer. After some simplification only RB vs RB were left. Did Stockfish have the power to stop the passer?

Stockfish saw it was in trouble, evals jumping high. Houdini took longer to realize it was winning, it managed to queen the pawn for the price of a bishop, forcing Stockfish to lose its rook and reaching a won R vs B ending. Houdini's second win, it is not going down without a fight.

Saturday, November 19, 2016

Season 9 superfinal, games 17-20

After 20 games Stockfish leads 5-1 with 14 draws. Or is it 4-1?. Game 17's surprising outcome has caused the first heated fan argument of the superfinal, see details below. Houdini finally managed to win a game and Stockfish is no longer unbeaten in the season.

Game 17 started with a 13 move book of the Sicilian Dragon, Yugoslav line. Stockfish had an eval advantage and a strong king side attack, and it was willing to sacrifice a bishop to put pressure on Houdini's king.

In an amazing sequence of moves that both engines saw in advance Houdini sacrificed its queen and gained a rook, then Stockfish captured a rook, and then Houdini combined its rook and two bishops to force the white king to a8 (!!) and win back a rook.

As the game continued Houdini allowed Stockfish to capture its pawns while taking the king side pawn. Stockfish slowly advanced its queen side pawns and to prevent queening Houdini traded a rook for the two. Through all of this the evals gradually decreased, and for the last 10 moves both evals were 0. Then came the shock: the game ended in a table Q vs BB position and Stockfish was given the win. Inconceivable !! Both engines used 6-man tablebases and both evaluated the position at 0 in a 5-man tablebase win ???
It turned out that the reason was simple. The win is 72 moves long, with no pawns and no captures for more than 50 moves. Thus it was a tablebase win but a draw under conventional chess rules. TCEC rules use tablebase decisions without taking into account 50 move draws (so called 'cursed wins'). Both engines were playing with the 50 move rule logic and were unaware of this rule in TCEC.

What was to be done about this? Either keep the win for Stockfish or decide it was a draw after all. A replay was also suggested but that's a different question, since any game replayed will develop in new directions, so this should be done only if there was some technical problem with the game, not really the case here. Everyone had an opinion and for days people argued about this in the TCEC chat. Some of the arguments I saw:

Stockfish win:
a) Rules are rules. This was Martin's argument and it is very strong, especially when you consider the next argument.
b) This is a known TCEC incosistency. There were previous TCEC games that ended similarly and decided by tablebase despite violating the 50-move rule.
c) The 50-move rule should be ignored altogether in engine game endings, tablebases are the real truth and should always decide.
a) Conventional chess and TCEC use the 50 move draw rule, and this should also apply to tablebase decisions.
b) Both engines considered the position a draw since they were using the 50 move rule in their logic. It is likely that the game would have continued otherwise if they knew they were heading for a white win. It is very probable that other drawing lines exist without using cursed wins.

Personally I think this should be declared a draw. I can't argue with 'rules are rules' though. In any case the match result will probably not be affected by the results of this one game.

In game 18 Houdini played with more caution, instead of an all out attack it used slow strangulation. Stockfish's pieces hardly had room to move while Houdini could plan the best way to proceed.

Houdini exchanged a few pieces and went a pawn up. The evals gradually increased to over 2. After exchanging queens only RRN vs RRN remained, Houdini's central passer looked strong.

Stockfish's position deteriorated fast. Houdini used a nice combination to fork a knight and a rook. Stockfish gave the rook for a knight and together with the advanced passer this was enough to give the win to Houdini.

There were many exchanges after the opening of game 19 and after 26 moves only QRN vs QRN were left. The engines continued to capture pawns, evals were 0 after queens were exchanged. The game ended in a tablebase draw. In game 20 the engines kept their pieces on the board and started to shuffle behind pawn lines on move 27. Stockfish had a bishop trapped in Houdini territory, but it had enough defenders so that Houdini couldn't capture it. The evals dropped to 0 when Houdini broke the blockade to avoid a 50 move draw, and the game reached a draw in a RB vs RB ending.