Monday, May 30, 2016

Season 9, stage 1b rounds 1-3

After waiting for about a week, finally stage 1b started. This group features Stockfish, the very popular open-source engine which tends to finish second in TCEC. Will this season be different? There are more newcomers in this group, though less than in group 1a. Andscacs and Vajolet2 may be strong, we'll have to follow their performance to see.

Important note: I will be on vacation for a few days, and will not follow TCEC closely. The next post will therefore be late and will not cover all the games in the coming rounds. I hope I don't miss anything important.

Table after 3 rounds:

Draw rate is 8/24 (33%), more draws than in the first group but still early for a real comparison. Anton (tournament director) predicted that the race for qualification will be tougher in this group, based on the testing runs he did. Looking at the current top eleven engines, of the 11 games played within this group so far 7 have been draws. Anton may have a point.
Stockfish performance is disappointing so far, starting with two draws. Naum is the only engine with a perfect score, and even this is due to Fire crashing in a winning position against Naum.

Some of the game highlights:

In Andscacs first game against Jonny white seemed to have a significant advantage after the opening, perhaps due to black not castling. However, Jonny developed a significant counterattack on the white king which equalized and even gave the advantage to black. The RB vs RB ending was drawn, but it took a while for Jonny to realize that.

Vajolet2 got a draw against Stockfish !! Stockfish fans (and me) waited to see the eval explode each time Vajolet2 moved not according to the Stockfish PV, but the evals converged to 0 very quickly. Stockfish couldn't create anything in the rook ending until a tablebase draw was reached. Vajolet2 is doing alright in the first game, but is Stockfish weaker than was expected?

Arasan-The Baron was intriguing since Arasan had a respectable first stage last season and I think its TCEC rating underestimates its strength. After a balanced start Arasan gave a knight for three pawns and attack chances on the black king. The QR vs QRN ending was very tricky and Arasan handled it very well. The white pawns became too strong in the end, forcing a white win.

Fruit-Fire reached a bishop and pawns ending with a small black advantage, but Fire's superior endgame abilities were enough to get a win. Fruit isn't playing too bad, considering its ranking.

Fire-Naum was the first crash of the stage. Naum tried a pawn attack which left its own king exposed. Fire's counter attack was deadly and soon the evals indicated a quick win, and then Fire crashed... I hope this is not going to be a problem. It would be a shame if Fire has stablity problems this season.

The Baron played a long game against Fruit, reaching a 7-man rook endgame. The position looked drawn but Fruit blundered and lost the game.

Chiron was never in trouble as black against Stockfish, the game was a very long draw with mainly shuffling moves. Stockfish avoided the 50-move rule for as long as it could, playing on increments, but there was nothing to do. Stockfish fans are getting restless...

Chiron beat Critter, and it was a bit of a surprise because Critter has a higher TCEC rating. Critter got in trouble early in the game. The material was equal but in the RRN vs RRN endgame Chiron had better pieces and pawn structure. Chiron's eval increased slowly but steadily, reaching a winning 7-man RN vs R position. At 6-men Chiron could use the tablebase, but it kept choosing moves that were not the shortest path to victory. Eventually Critter realized it was lost.

Featured game: Arasan - Stockfish
Stage 1b, round 3
Link to game on TCEC

After two draws there were questions about Stockfish's strength this season. Arasan's low rating of 2732 gave hope that Stockfish will get an easy win. It should be noted that Arasan's rating may be highly underrated, in season 8 it had a very respectable performance in stage 1a, well above its rating.

The game started very balanced, the evals staying close to 0. An hour and a half into the game the fans were getting restless, the position was getting closed and drawish. Not another draw...

Arasan made a few bad choices (according to Stockfish's PV) and got its queen into some trouble on the king side. Stockfish's response was quick and deadly. The center cleared and suddenly the white king was in danger with weak pawn and piece defenses.

Stockfish gave a rook to eliminate the knight, leaving Arasan with only the queen to defend against the attack. The evals shot up with more and more threats against the white king and queen.

In the aftermath of this attack the pieces left were RR vs RBN with two passed pawns on the king side for Stockfish. The game was adjudicated after a few more moves, with a Stockfish win. A first win this season for Stockfish !!

Sunday, May 22, 2016

Season 9, stage 1a stats

Draw rate, wins
Game termination

The three most common game termination causes were:
64.2% - TCEC win rule
12.5% - TCEC draw rule
11.7% - TB position

There 2 losses on time and 3 crashes. Not bad for stage 1.

Moves per game

median = 59.75
average = 64.32

Time per game

median = 4:00
average = 3:57


Cato used 2-move openings for this stage, repeats were allowed but not for the same engine. Two moves direct the opening but usually allow a lot of freedom for development.

Using ECO codes there were 76 different openings played. The top 3 ECO codes were:
B22 6 times - Sicilian, Alapin's variation
D02 5 times - Queen's pawn game
B30 4 times - Sicillian Defense
D30 4 times - QGD

Using full opening name there were 112 different openings, so almost no repeated opening. No opening was repeated more than twice.

Using only the first letter of the ECO codes we get the following distribution:

I think this reflects Cato's choices more than the engines' choices, less open games and almost no Indian defenses.

If we use the opening 'family name' (using format FAMILY_NAME: VARIANT....) the top 3 are:
Sicillian - 23 times
Queen's Pawn - 10 times
Reti -  10 times

Saturday, May 21, 2016

Season 9 stage1a, rounds 13-15

Final standings,stage 1a:

Qualifiers are: Komodo, Houdini, Rybka, Protector, Gull, Ginkgo, Hannibal, Raptor. The race for 8th place was close and was only decided in the last game of the stage.

The final draw rate for stage 1a is 34/120 (28%).

Some of the game highlights: 

Ginkgo-Rybka was down to RRBB vs RRNN very early. Rybka had a pawn advantage, and with 13 pawns on the board Ginkgo's bishop pair wasn't very strong. The game was not static with many pawn advances and exchanges, and neither side could get an advantage. After more than 30 moves the first piece was exchangedLater when the first rook pair was exchanged both engines lowered their evals and a draw was adjudicated.

Gull-Hannibal was a long game, important for Hannibal's chances of qualifying. Gull thought it had a small advantage in a RRBB vs RRBN position, with all pieces behind pawn lines. The position opened up 40 moves later, with no eval improvement, reduced to a RB vs RB with opposite color bishops and very few pawns. When it was down to one last white pawn the draw was certain, since black could sacrifice a bishop and get a tablebase position RB vs R. Gull wouldn't stop for another 70 moves though...

Fizbo lost to Protector, making the game against Hannibal its last chance of qualifying (I doubt Hannibal will lose against Fridolin, and Fizbo has Rybka left).

In the battle for last place, Fridolin reached a drawn rook ending against Myrrdin, and then instead of getting its first (and only) score Fridolin lost on time!! What a tragedy...

Hakkapeliitta managed to hold off Komodo for over 45 moves, but as usual Komodo found the win in the endgame. Another respectful performance by Hakka (with one cpu).

Bobcat played well against Raptor. Starting from a small advantage in the opening Bobcat reached a RRBB vs RRNN position. Its pieces were more active than Raptor's and it was able to get a decisive two pawn advantage in a double rook ending. This was a bit of a surprise for Raptor, hurting its qualification chances.

Raptor's next opponent was Houdini. Raptor was dreaming it was ahead when Houdini sacrificed a knight for 3 pawns, but it was not a match to Houdini's endgame abilities. When the game reached a RRBN vs RRB position Houdini was firmly in the lead. After an exchange of a rook for a knight and two more pawns Raptor couldn't stop the advancing pawns even with an extra rook. Another blow for Raptor, two losses in a row.

Hannibal-Fizbo was crucial for the qualification chances of both engines. It started with a small advantage for white, and very quickly Hannibal was able to put a lot of pressure on the black king. As a result Fizbo gave a rook for a knight, leading to a RR vs RB endgame. This time Hannibal was able to convert the win, even without tablebase support. This secured Hannibal's qualification, Fizbo's probability to advance became very low.

Rybka-Gull was a bit of a surprise since Gull lost quite easily. It made some bad choices in the opening, leading to a position with an uncastled king and a pawn down. This was a big enough advantage for Rybka to win, even if it took a long time to finish. Considering Gull's record from season 8 it is a bit surprising that it lost to Rybka and Houdini in season 9. All three engines have not changed for a while, is it the hardware? Just plain bad luck?

Last round: Raptor, Fizbo and Texel on 6.5 points, Bobcat with 6, are still in the race for the last qualifying place. Bobcat will surely win against Myrrdin, and it has a better SB score than the rest. Can one of the other contestants win the last game? My bet is on Raptor against DisasterArea, the last game of the stage.

Texel lost to Gull, and won't qualify.Texel had some hope of a draw while the position was closed, but Gull's eval jumped when it sacrificed a knight and attacked the black king. Texel had to lose material to get out of trouble, and the endgame of RRB vs RNN was not easy, but Gull managed to get the win.

Fizbo-Rybka started with a small eval advantage for white, but Rybka turned the game around and was a pawn up. WIth very few pieces remaining Fizbo was able to equalize and reach a 6-man drawn position, and then Fizbo crashed. Not again!! The engines seem to be losing their mind these last rounds. A draw would probably not be enough to qualify, but now Fizbo is also out.

In the Hakkapeliitta-Protector both engines thought white had a significant advantage when a RRB vs RRB ending was reached on move 28, with Hakka a passed pawn up. The evals dropped after the rooks were exchanged, leading to a opposite color bishop ending, where one pawn is usually not enough. Did Hakka blunder the endgame?

In the last game of the stage Raptor beat DisasterArea in black to qualify for stage 2. The game reached a RRB vs RRN ending after 25 moves. Raptor's pawn attack on the king side trapped DA's king and allowed Raptor to create a passed pawn on the queen side. DA was forced to lose a bishop to avoid queening, losing the game.

Featured game: Houdini - Komodo
Stage 1a, round 15
Link to game on TCEC

This was the game that decided who will finish first in stage 1a. Komodo was 0.5 points ahead so Houdini needed a win. Komodo is usually stronger but in one game anything can happen.

In the first 20 moves the game was very balanced with evals close to 0. The game seemed to be heading for a draw, but Komodo's evals were slightly in its favor. Houdini's pieces were a bit cramped on the back row, but could Komodo find a crack in the position?

There followed a few inaccuracies by Houdini, at least considering what Komodo recommended as well as the resulting position. Komodo was able to concentrate all its firepower on the king side with open files ready to attack. Houdini's defense was looking shaky and vulnerable.

Houdini tried to defend as best it could, but in the aftermath of the attack Komodo was a pawn up, still threatening the white king and with too many pawns that had to be blocked.

Houdini continued to lose material and the game ended a few moves later. Komodo is the unbeaten champion of stage 1a !!!

Tuesday, May 17, 2016

Season 9 stage 1a, rounds 10-12

Table after 12 rounds

The draw rate is now 30/96 (31%).

With 3 rounds remaining the qualification race is focused around Raptor, Hannibal and Fizbo, tied with 6.5/12 points in 7-9th position. Only two of these can qualify. This makes the Hannibal-Fizbo game in round 14 crucial, especially if it ends decisively. It should be remembered that Hannibal crashed one game (only crash so far in this stage), making it an automatic loser in tiebreaks. Fizbo may end up the loser since it has very tough matches against Protector and Rybka, while Raptor and Hannibal have only one super strong opponent left to play.

Some of the game highlights:

Houdini kept a small advantage over Hakkapeliitta for a long time, before Hakka broke down in a QRB vs QBN endgame. Hakkapeliitta is doing alright for a one cpu engine.

Fridolin nearly managed to get a draw with black against DisasterArea, but in the end it was DisasterArea's tablebases (or endgame knowledge) that let it win in a rook ending. Fridolin's last reasonable chance to avoid a scoreless stage is the game against Myrrdin in stage 13.

Komodo-Gull was a draw, mostly uneventful. Gull is still a tough nut to crack.

Hannibal reached a RN vs R endgame against Rybka, facing three connected passers. Starting from an eval of 0 for both engines Rybka outplayed Hannibal in the endgame, another blow for Hannibal's qualification chances.

Bobcat pressed hard against Houdini, pushing a pawn to the 7th row. The struggle surrounding this pawn ended in a subtle RN vs RB ending, and Bobcat was able to get a draw. A respectable result for Bobcat, the third draw against a top 4 engine in this stage.

Raptor-Hakkapeliitta started with an advantage for white, Hakka exchanged a rook for a bishop to lower the pressure and open up the position. Eventually the game reached a RRB vs RBB endgame, and the Hakka bishop pair began dominating the board and black had the advantage. In the end the game was drawn after 111 moves.

Myrrdin reached a RRN vs RRB ending against Fizbo after 24 moves, but Fizbo was able to get the win in the end. Not sure how Fizbo will handle the much tougher engines it still has to play in the stage.

Protector-Gull was a long and dull draw. This is Protector's 7th draw against potential qualifiers, and it hasn't lost a single game yet. This result is very good for stage 2 qualification, but I doubt that it will be enough for stage 3.

Rybka exchanged a knight for three pawns in the game against Texel. The resulting RRBB vs RRBBN position started out with a small advantage for white, but Rybka slowly and consistently increased its eval. After a few exchanges the white pawns became too strong, and Texel lost a piece to stop them from queening, leading to a Rybka win.

Featured game: Hannibal - Ginkgo
Stage 1a, round 12
Link to game on TCEC

Hannibal was a point behind in the qualification race at this point, 1.5 points behind Ginkgo. Based on its performance so far I didn't expect Hannibal to get more than a draw in this game.

The game started quietly, reaching an RN vs RN position after 27 moves. Ginkgo was a little more cramped with its pieces on the back row and Hannibal had a two against one pawn advantage on the queen side. However, with evals so close to zero there was no hint of anything happening in the game.

Then Ginkgo's eval started climbing, and Hannibal's eval not far behind. Tension was building on the queen side but it was not clear how Hannibal would get a clear advantage. Both engines were playing without tablebases so it was possible they would reach a drawn endgame even with high evals.

When Hannibal managed to get the rook to the 7th row its path to victory became clearer. Ginkgo lost the a pawn, and in a desperate move tried to counter with mating threats with a king and rook attack.

Hannibal was careful to avoid mate though.The threat of queening cost Ginkgo its knight, and then Hannibal created more queening threats on both sides of the board, forcing the win.

Friday, May 13, 2016

Season 9, stage 1a, rounds 7-9

Table after 9 rounds

The draw rate is now 20/72 (28%).

Nothing is clear in the middle section of the table. Hannibal has improved its position while Bobcat and DisasterArea are over 1.5 points back with only six games left. It looks like a race between Fizbo, Hannibal, Raptor and Texel for the last two qualifying places.Of these Raptor has the easiest games left, and it may be the surprise qualifier of the round.

Some of the game highlights: 

Hannibal struggled a little against weaker Myrrdin, but managed to get a win with better endgame skills.

Rybka held off Komodo in a closed position, but when files started to open Komodo's king side attack was deadly. 

Texel had illusions of winning against Raptor but could only reach a drawn queen endgame with a pawn advantage.

Houdini beat Gull decisively in black. In season 8 Gull performed better than Houdini, and was slightly better in their head-to head games (1 win and 7 draws). I don't think they changed since then, so it was a bit of a surprise to see Gull lose in this way.

Raptor gained a valuable half point drawing against Ginkgo. Ginkgo had the advantage of a bishop pair in an BN vs BB endgame, but Raptor was able to exchange down so that black was left with only a bishop, leading to a tablebase draw.

Hannibal demolished Laser after a classic case of taking a poisoned pawn. Hannibal is improving its chances of qualification to stage 2.

Ginkgo-Komodo was a great battle. Komodo sacrificed two pawns and Ginkgo thought it had an advantage, even though the position was closed and the extra pawns were both doubled. When the position opened Komodo had the advantage and Ginkgo had to defend its king. With the eval increasing Ginkgo held on for 30 more moves, exchanging pieces and pawns when it could. In the end the position reached a 6-man rook ending which was won for black. Komodo showing its strength against a worthy opponent.

Raptor survived another tough match, this time playing black against Gull. Gull had an eval advantage for a while but could not find a weakness in a QBBN vs QBBN position.

Fizbo thought it had an advantage over DisasterArea when DA sacrificed a knight for pawns. Fizbo's eval climbed to over 5 in the resulting QRN vs QR position, but this was just lack of endgame knowledge and no tablebases. The game ended in a 5-man tablebase draw, with Fizbo a knight up.

Hakkapeliitta surprised Bobcat (and everyone else) with a rook sacrifice leading to a pawn on the 7th row. This led to a deadly attack on the king and a material imbalance of QN vs RRB. The PVs of both engines showed a won Q vs R endgame. This was a blow to Bobcat's qualification hopes.

Featured game: DisasterArea - Gull
Stage 1a, round 8
Link to game on TCEC

DisasterArea reached a balanced RRN vs RRB and pawns endgame against Gull by move 36, could it hold the position despite the big ELO gap between the engines?

The pawns started to be exchanged and Gull's rooks became more active. Gull's eval gradually increased reaching over 1. At some point DA chose to exchange a rook for a bishop, hoping to reach a drawn ending.

After a while Gull was able to get a pawn back while exchanging rooks, leading to an 8-man NPP vs RPP position.

Playing without tablebases Gull managed to convert a win. The startegy was to force the white king to protect g4, bring the black king around to the first row, and force a knight sacrifice to avoid mate. Tricky and slow, but Gull nailed it.

Tuesday, May 10, 2016

Season 9, stage 1a, rounds 4-6

Table after 6 rounds:

The draw rate has increased to 13/48 (27%).

The top 7 places are looking good for qualification. There may be a battle for stage 2 qualification between Raptor, Texel, Bobcat, DisasterArea and Hannibal.

There have been some website malfunctions causing archive and live viewing problems. We get these every season, sad but to be expected. 

Some of the game highlights: 

Laser - Fizbo started with a small eval advantage for white, in a more or less stable position until move 56. With time running out and after a few exchanges Fizbo's eval climbed over 2.2 for black, but only temporarily. Fizbo exchanged a knight for three pawns but in the QRN vs QR endgame with connected passers could not get more than perpetual check. Laser's first score !

Hakkapeliitta is struggling although it has a rating close to 3000, probably because it is running on a single cpu and not taking advantage of the monster computer running TCEC. Playing against Ginkgo it tried to push a passing pawn but could not get enough protection for the queening square. When the effort was over Ginkgo's defense left it two pawns up, an easy win.

Houdini beat Rybka in a B vs N endgame. Two champions of the past that can still play well.

Protector's eval jumped to 'sure win' in an endgame against Raptor, when in fact it had a wrong colored bishop and a rook pawn. And it was using tablebases (only 5 men). Shame!

Myrddin also had its first score in a draw against Laser. I don't think either has a chance to get to the next stage.

Protector survived in a draw against Komodo, defending against Komodo can be frightening, so well done Protector.

Texel seemed to be ahead in a closed position against Houdini. When the position opened up Texel chose to exchange two rooks for a queen, but it played the resulting QBB vs RRNN badly and Houdini was the winner in the end.

DisasterArea - Texel reached a RRB vs QB endgame and for a long time appeared to be drawn with a small advantage for black. However, Texel under time pressure played inaccurately, and DisasterArea's eval started to jump. A mating threat forced Texel to exchange its queen for a bishop. It got a queen back through queening but the resulting RR vs Q with two white pawns was a 7-man tablebase for white, easy enough for both engines to recognize.

Featured game: Houdini - Ginkgo
Stage 1a, round 6
Link to game on TCEC

This game was rather boring in terms of evals. Both engines thought the game was a draw with evals close to 0, and these are strong engines with a reliable position evaluation. However, the actual moves on the board were very exciting.

Ginkgo held on to an initial pawn advantage while Houdini's development was better at the start of the game. On move 13 Houdini sacrificed a knight and threw all its pieces at the black king. The resulting position a few moves later is a pin masterpiece:

Look at all the threats, pinned pieces and unguarded pieces, almost llike a theoretical chess problem. According to Cato this position was already seen a few years ago in a Houdini-Stockfish match. In any case, Houdini had three pawns as compensation for the knight, and the attack was over. The white pieces backed down carefully, allowing Ginkgo to regroup. Ginkgo then gave a bishop back for pawns but gained the initiative.

Now it looked that black had threats on the king side. This attack was not effective either, resulting in a series of exchanges that left a RB vs RB endgame.

The position became actually boring, and a draw was adjudicated shortly afterward. A good game that started with a bang and ended in a whimper.

Thursday, May 5, 2016

Season 9, stage 1a, rounds 1-3

Season 9 is live !!

The first stage contains 32 engines fighting for 16 spots in the next stage. The stage is divided into two groups of 16 engines, each group playing a single round robin. Group 1a is live at the moment, including familiar favorites like Komodo and Houdini, as well as 8 newcomers (at least they are new to me and TCEC) such as Fizbo, Hakkapeliitta and DisasterArea.

Table after 3 rounds:

So far there have been 5/24 draws, 12/24 white wins, 7/24 black. The draw rate is remarkably low.

Some of the game highlights:

Fridolin lost on time against Rybka in a drawn bishop ending.  Too bad for Fridolin, overcoming a huge ELO gap only to lose on a technicality.

Komodo - DisasterArea was replayed, due to a wrong parameter setting in DisasterArea. Komodo won both games easily.

Laser fought hard to stay in the game against Gull, but lost a RB vs RN endgame (both engines playing without tablebases). Laser was also very close to a draw with Komodo, with an effective blockade for over 60 moves. Komodo's tablebase advantage became clear in the end, Laser did not see that allowing the liquidation of all pieces will lead to a won QP vs Q ending.

Bobcat managed to squeeze a win against Hannibal out of a game that looked drawn from move 20, in a QRRN vs QRRN game with almost all pawns. At move 80 Bobcat gave a rook for a knight, but gained a crucial advanced passed pawn. Eventually Hannibal was forced to give a rook to avoid queening, leading to a won endgame for Bobcat.

Raptor reached a RN vs BB endgame against Komodo which appeared drawn. Komodo's eval was 0 for over 30 moves while Raptor thought it had an advantage, over 1 at times. However, Raptor did not handle the endgame accurately, allowing Komodo to take the initiative and win.

Hannibal crashed playing Houdini, in a game that appeared to be headed for a draw. Hannibal is underperforming so far with a 1/3 score.

Featured game: Fizbo - Ginkgo
Stage 1a, round 2
link to game on TCEC

Ginkgo played in season 8, and Fizbo is a newcomer to TCEC. Their ratings are similar, both over 3000, and my expected outcome was a draw.

After the opening black was a pawn up with an active queen wihtout support. White had control of the center and more pieces developed. Fizbo thought it had an advantage and Ginkgo had an eval of 0, which engine was right?

After both engines castled Fizbo concentrated all its pieces on the king side. Ginkgo's king side pawns held the defense while it advanced on the queen side in an attempt to develop counterplay. Ginkgo's eval started to increase, sensing the danger to its king.

The speed with which Fizbo secured a win was amazing. In four moves it drove the black queen away and blocked its way back with the center pawns.

There were too many threats to defend and black's position collapsed quickly. Once the king was exposed it could not escape without losing a lot of material.