Friday, February 14, 2020

Season 17 league 1 (CPU) after RR2

Scores after RR2
Ethereal +10, Fire KomodoMCTS +7, Xiphos rofChade +6, Laser Andscacs +4, DefenChess +2, RubiChess +1, Arasan +0, Pedone -1, Vajolet -2, Nemorino -8, Winter -9, PeSTO -10, Fizbo -17.

There is a close race at the top of the table. Ethereal has a small lead at the top, the engines in places 2-7 all have a fighting chance to end up in the top 4. The 7 engines at the top have only lost two games so far, the only 2 of 42 games within this group that were decisive. Fire improved its position in RR2 with a +5 result, Xiphos dropped a few places with a disappointing +1 result.

Things are more straightforward at the bottom of the table. The last 4 engines are heading for relegation to league 2, losing almost half of their games (46 out of 96) against the remaining engines.

The draw rate continues to be high, just under 70%.

Notable games

Game 133, Andscacs - Pedone: 3-fold draw in 18 moves.
Game 138, KomodoMCTS - Ethereal: KomodoMCTS had a pawn majority on the queen side in a RRB vs RRB position. It pushed the pawns forward gradually, Ethereal gave a bishop for two pawns to stop them. The RB vs R ending continued another 25 moves before adjudication.
Game 146, Fire - RubiChess: RubiChess pushed its king side pawns forward and its king was left without pawn support. Fire's bishop pair was strong with many open diagonals, eventually Fire came out of a complicated position a piece up in a RBB vs RB ending. It pushed a pawn forward to the 7th rank and the game was adjudicated.
Game 159, Vajolet - Fire: The game reached a NN vs BN position, Fire was down a pawn but had a passer on the 3rd rank. After exchanging a pair of knights Fire played the endgame better, it managed to capture a pawn back while Vajolet's knight blocked the passer. The game was adjudicated with equal material, the PV suggested that Fire can create a second passer to win.
Game 162, DefenChess - Vajolet: The game was heading for a draw in a RR vs RB position, Vajolet had a fortress after exchanging a pair of rooks. DefenChess avoided a 50 move draw, and as it approached for the second time DefenChess failed to make a move and lost on time. This season a loss on time is not counted as a crash.
Game 173, Winter - Arasan: Winter was up a pawn early in the game. The engines reduced to a RN vs RB position and Winter used its pawn majority on the king side to create a passer. Arasan couldn't stop the advancing passer, eventually it gave a bishop for it and that was enough for Winter to win.
Game 188, Laser - Arasan: Arasan held a draw in a Q vs RB position, despite an eval advantage close to 3 for Laser.
Game 194, Vajolet - Nemorino: Nemorino was up a pawn in a rook ending with an advanced passer. For a while it seemed Nemorino was only shuffling, eventually it found the right moves to win.
Game 197, Fire - Laser: Fire had an eval over 2.5 in a Q vs RN position, Laser blocked the a pawn on the 6th rank and was able to hold the draw.
Game 218, Fizbo - Arasan: Fizbo sacrificed a bishop and exposed the black king, evals went over 2 as it attacked but then the black king managed to escape. Arasan took the initiative and reduced to a winning QBN s QN position.
Game 221, Ethereal - RubiChess: RubiChess held a draw in a QR vs QB position with many pawns on the board, despite evals over 2.
Game 227, Pedone - Laser: Pedone had connected passers in a QRR vs QRR position, evals over 1.5, but Laser managed to reduce to a drawn queen ending.

Friday, February 7, 2020

Season 17 league 1 (CPU) after RR1

Four engines that were supposed to play in league 1 were not compatible with the new hardware: Chiron, Jonny, ChessBrain and Booot. As a result four additional engines promoted from league 2: Pedone, Nemorino, Winter and PeSTO.

This is the CPU part of league 1. There is still no update regarding the GPU hardware nor which engines will play in a GPU league 1. The rules page states that the top 4 CPU engines and 2 GPU engines are going to have a playoff to determine the 4 engines that continue to the premier division.

Scores after RR1
Ethereal +7, Xiphos +5, rofChade KomodoMCTS +4, Laser +3, Fire +2, Andscacs Arasan +1, RubiChess DefenChess 0, Vajolet -1, Pedone -2, PeSTO Nemorino Winter -5, Fizbo -9.

There are many engines in the race for the top 4 places. The first 6 engines are still without loss and they have the best chance in my opinion. Ethereal has a small gap at the top with 7 wins against lower ranking engines. rofChade is a surprise, it was close to relegation from league 1 last season, this season it seems to have improved significantly.

The lower half of the table contains 7 of the 8 engines that played in league 2. Of the 4 that were added at the last minute only Pedone is above the relegation zone. Fizbo is last with 9 losses, it has problems with the hardware and is using only 32 threads out of the possible 176.

The draw rate is just under 70%, unusually high for this stage. Comparing to previous seasons we see that draw rates this high were only seen in the premier division and superfinal stages. In 28 games within the top 8 engines in the table there are only two decisive games so far, two Ethereal wins against places 7 and 8. There are many games yet to play in the league, things may of course change.

Notable games

Game 22, rofChade - Vajolet: rofChade was a pawn down in a QRR vs QRR position, but the black king was exposed to attack. Vajolet tried to escape, rofChade avoided exchanges and gradually closed a mating net around the black king.
Game 44, Nemorino - Arasan: Nemorino had an eval over 1.5 with a lot of pressure on the black king, but Arasan defended well and countered on the queen side. Evals turned negative, Arasan doubled rooks on the 2nd rank and reduced to a QB vs QN position. Then it captured two pawns and exchanged queens for the win.
Game 46, KomodoMCTS - Fizbo: The game reached a QN vs QN position with white a pawn up. KomodoMCTS tried but couldn't find how to convert, even after it captured the knight and the game reached a 7-man tablebase win.
Game 50, Andscacs - Ethereal: Ethereal gave a pawn and exposed the white king, then created a central passer on the 3rd rank. Then Ethereal took over the 2nd rank and exchanged down to a RB vs RN position, Andscacs lost a rook for the black passer, game over.
Game 53, Arasan - Winter: The game reached a Q vs QB ending with white two pawns up. Winter managed to capture two pawns and was very close to winning, its lack of tablebase support is probably the reason it chose to exchange queens, leading to a tablebase draw.
Game 64, Xiphos - Andscacs: Andscacs held a fortress draw in a Q vs BN ending.
Game 78, Ethereal - Arasan: Ethereal created a central passer and pushed it to the 7th rank. Arasan gave a bishop to stop the passer, it was 3 pawns up in a RB vs R ending. Ethereal kept one pawn safe and gradually captured black pawns until the game was adjudicated.
Game 86, RubiChess - KomodoMCTS: RubiChess was up 3 pawns but its king was exposed to attack. The engines exchanged most pieces and only R vs RB remained, KomodoMCTS kept one pawn and that was enough to secure the win.
Game 93, Ethereal - DefenChess: DefenChess went two pawns up and its queen ended up nearly trapped in the corner. Ethereal gave a rook for a bishop and regained the pawns, it broke the black defense and reduced to a winning QB vs QB position two pawns up.
Game 108, Ethereal - Vajolet: The game reached a QN vs QR position with white two pawns up and seemed to be heading for a draw. Vajolet was not careful enough in the endgame, it let Ethereal push a passer to the 6th row and Ethereal found a way ot make it unstoppable. Vajolet started to give checks and the game was adjudicated, the PV shows that the white king eventually finds a safe spot and Ethereal can promote the pawn.
Game 116, RubiChess - Andscacs: Andscacs gave a rook for a bishop and pawns, opened the queen side and created two passers. After reducing to a QR vs QN position the passers were enough to secure the win for black.

Saturday, February 1, 2020

Season 17 CPU league 1, live blog Saturday Feb 1st 2020

We follow game 34 of the CPU league 1, Xiphos - Laser. These engines are strong candidates to advance, after 4 rounds Xiphos' score is +3 and Laser's score is +2, both are unbeaten.

move 13: The game started in a closed Ruy Lopez line that is not very popular. The engines left the Lichess book 3 moves after the 8-move Cato opening. Xiphos needs to develop the queen side while Laser needs to protect its king side, its king needs more support. Evals are low with a small advantage for white.

move 17: Xiphos took the time to shift its knight to the king side, Laser attacked the central white pawns. The black pawn on d5 looks weak, it is isolated and protected by a knight that seems wasted where it stands. Laser used about 10 minutes more than Xiphos so far.

move 23: The white queen moved forward and evals are climbing a little. The engines exchanged a pair of rooks and the dark square bishops, the white central pawns are gone, the black d5 pawn is still a weakness.

move 30: Laser pushed a pawn to g6 and this exposed the black king, Xiphos didn't think this was a good move and its eval jumped over 1. Xiphos pushed the h pawn, Laser avoided the exchange and its eval jumped over 1 as well. The black king will be in trouble if Xiphos can find a way to open the king side and/or add pieces to the attack.

move 36: More exchanges and only QB vs QB are left. Evals are coming down, the black weaknesses look less important with less material on the board.

move 42: It seems unlikely that Laser will mess this endgame up, it is still hanging on to its d5 pawn.

move 49: Evals came down and the queen side pawns are gone. Xiphos can chase the black king around the board and nothing more. Laser hasn't lowered its eval enough for the draw rule yet.

move 57: Xiphos finally took on d5, sacrificing a bishop, and started giving checks. Laser's eval dropped to 0 and it gave the bishop back. Waiting for the draw rule to stop the game.

move 63: game over, draw rule adjudication.

Sunday, January 26, 2020

Season 17 league 2, final results

Final crosstable

After removing Wasp games (crashed out) the scores are: Fire +16, DefenChess +13, RubiChess +7, Vajolet +5, Pedone +3, Nemorino Winter 0, PeSTO Gull -1, Texel -2, Minic Demolito -4, iCE -8, Igel -9, Pirarucu -15, Wasp DQ.

Fire, DefenChess, RubiChess and Vajolet advance to league 1.The race for 4th place was only determined in the last round. Fire returns to league 1 with the previous AB version, DefenChess advances for the second time this season.

Minic, Demolito, iCE, Igel, Pirarucu and Wasp relegate out of league 2. Five engines that advanced from qualification go back down, Wasp crashed out. Minic crashed in a won position against Nemorino, without this crash both would have had the same score as Texel, not sure which engine would have relegated then. Winter and PeSTO managed to stay in league 2 after advancing from qualification. Gull survived another season, perhaps the next one will be its last. 

The 4 promoting engines are planned to join KomodoMCTS, Laser, Ethereal, Xiphos, Chiron, Andscacs, Fizbo, ChessBrain, Booot, rofChafe and Arasan in league 1. According to the current season 17 engine page Jonny needs a stable update to play in the league. Other engines may fail testing, as we have seen in league 2. More engines may yet promote from league 2, the list will be finalized in a few days.

The GPU league 1 is getting closer and there has been no update about the GPU hardware planned for this season, or the candidate engines.

Notable games

Game 138, DefenChess - Vajolet: Vajolet gave a knight for pawns and attacked the white king. DefenChess defended its exposed king and slowly reduced to a RBN vs RB position, then advanced passers forced Vajolet to give its bishop and the game was over.
Game 149, RubiChess - Pirarucu: Pirarucu's king was exposed in the center, and its king side pieces were stuck. RubiChess gave material and attacked, winning in 22 moves.
Game 152, Vajolet - Nemorino: Vajolet gave a knight to open the queen side and expose the black king. Nemorino tried to give back material, the game reduced to a QR vs QBN position. Advancing passers and the exposed king were enough to give Vajolet the win.
Game 157, Pirarucu - Wasp: The game reached an unusual QB vs RNN imbalance, white with no pawns to black's six. The white pieces were very strong and Wasp gave material to reduce to a QR vs RBN with 5 pawns. Pirarucu used mating threats to capture the knight and was strong enough to win. Too bad Wasp already crashed out and this first win for Pirarucu will not be part of the final score.
Game 159, PeSTO - Demolito: Demolito gave a rook for a bishop and opened the position, PeSTO's king was exposed but it had an advancd passer. PeSTO gave its queen and promoted the pawn, it used back-rank threats to capture a piece and win.

Scores after 20 rounds: Fire +11, DefenChess +9, RubiChess +7, Pedone +6, Vajolet +5, Nemorino +1, PeSTO 0, Winter Gull -1, Texel -2, iCE Minic -4, Demolito -5, Igel -9, Pirarucu -13, Wasp DQ. Wasp crashed for the third time and is disqualified, all its games are ignored. The top 5 engines are in the race for 4 promotion spots. Three of the bottom 6 engines still have a chance of surviving,

Game 180, Demolito - Igel: Demolito gave two knights for a rook and its major pieces were less effective with many pawns on the board. Igel pushed pawns on the king side, Demolito gave material to try to stop them, enough for a black win.
Game 184, Texel - Pedone: Texel was up a pawn in a RB vs RN position. It gradually improved its position and then captured two more pawns for the win. Pedone's first loss in the league.

Scores after 24 rounds: Fire +13, DefenChess +10, RubiChess +7, Pedone Vajolet +5, Nemorino +1, Winter 0, PeSTO Gull Texel -1, Minic -4, iCE Demolito -6, Igel -9, Pirarucu -13, Wasp DQ. Pedone and Vajolet are tied in 4th place after Pedone lost its first game. At the bottom Demolito and iCE are 2.5 points away from survival, Minic still has a small chance but will lose tiebreaks due to its early crash. Only 6 rounds to go.

Game 197, Demolito - Nemorino: Demolito was up a rook for a bishop and Nemorino's bishop pair was not enough as compensation. Demolito created a passer in a RN vs BB position, Nemorino had to lose material to stop it.
Game 198, Gull - Vajolet: Gull played better in a RBB vs RBN position, it used a pawn majority on the queen side to queen a pawn while Vajolet captured a bishop and the remaining 5 pawns. Gull stopped the black pawns to win.
Game 213, Fire - Vajolet: The game reached a RBN vs RBN position, Fire's eval increased very slowly. It took more than 50 moves to capture a pawn, another 20 moves to reduce to a winning RB vs RN ending two pawns up.
Game 214, Demolito - Pedone: Demolito went up a pawn with an advanced passer early in the game. While Pedone focused on blocking the passer Demolito developed a deadly attack on the black king. Just before the game was adjudicated Pedone crashed.

Scores after 27 rounds: Fire +14, DefenChess +11, RubiChess +7, Pedone +5, Vajolet +3, PeSTO Nemorino 0, Winter Gull Texel -1, Minic -3, Demolito -4, iCE -7, Igel -9, Pirarucu -14, Wasp DQ. Three rounds to go. Vajolet is a point away from 4th place Pedone, still with a chance to promote, and with a tiebreak advantage after Pedone crashed. Minic and Demolito improved their chances of survival, but since they both have games against Wasp effectively they only have two games left to close the gap. iCE has only a theoretical chance of survival at this stage.

Game 220, Pedone - Fire: Fire went a pawn up late in the game in a QRN vs QRN position. After a long shuffle Fire exchanged queens, it took 30 more moves to reduce to a winning knight ending.

After round 28 Pedone (+4) is only 0.5 points ahead of Vajolet (+3). There is no change at the bottom of the table, Demolito had a material advantage against Texel but couldn't convert. 

Game 225, Igel - Minic: Igel gave a knight for 4 pawns and created 2 advanced passers. Minic was busy trying to stop the passers, it captured one but lost material to stop the other and the game was over.
Game 227, iCE - Nemorino: iCE was better in a QRR vs QRR position, it reduced to a rook ending a pawn up and reached a tablebase win. First win for iCE in the league.
Game 229, Winter - Pedone: Winter was up a rook for a knight, its king exposed in the center was Pedone's compensation. Winter gave the material back and reduced to a RB vs RB position with white a pawn up. After exchanging rooks the extra pawn was enough for a win.

After round 29 Vajolet (+4) overtakes Pedone (+3), the last round will determine which of them will finish 4th. The situation at the bottom is: Winter 0, PeSTO Nemorino Gull -1, Texel -2, Minic Demolito -4. Demolito's last game is against Wasp so it cannot escape relegation. Minic needs a win to reach Texel, and only if Texel crashes does Minic have a chance in the tiebreak (not sure what happens then, it is very close).

In round 30 Minic drew and relegated, Pedone drew and lost the chance to promote, then Vajolet won and increased the gap to a point.

Saturday, January 25, 2020

Season 17 league 2 statistics

A summary statistics table of previous stages and seasons. 

Draw rate, wins

Final draw rate was 56.3%.

Game termination

The three most common game termination causes were:

34.2% - TCEC win rule
30% - TCEC draw rule
21.7% - SyzygyTB

There were 6 crashes in the stage: Wasp crashed 3 times and was disqualified, Minic, Pirarucu and Pedone each crashed once.

Moves per game

Median= 58.8
Average= 63.8

There were 23 games longer than 100 moves, the longest was 141 moves (PeSTO - Igel, game 87, and Minic - RubiChess, game 201, both draws).

Time per game (hours)
Median= 1:01
Average= 1:01


There were 6-move book openings in this stage chosen by Cato. The first letter of the ECO codes was distributed as follows:

The engines had less freedom to choose the opening variant, 84.2% of the game pairs repeated the same ECO code twice, and 76.7% repeated the same opening variant. In all but one of the game pairs the ECO first letter was repeated twice.

Reverse pairs, wins

Reverse pairs, same moves 

Pairs of reverse games diverged very quickly, 39.2% diverged immediately out of book, 73.3% of the pairs diverged at most after 1 move. The longest repeated sequence of moves was 14 plys (Igel - iCE games 90 and 210, Two knights defence, two draws)

Monday, January 20, 2020

Season 17 league 2, after 15 rounds

Before the start of league 2 chess22k and Fritz crashed in testing, apparently they are not compatible with the new hardware. As a result two more engines from the qualification league were promoted to replace them, Minic and PeSTO.

The plan is to have 6 relegations and 4 promotions in League 2, there may be changes after league 1 testing.

Scores after 15 rounds
Fire +8, DefenChess +6, Pedone +5, Vajolet RubiChess +3, Nemorino +2, Winter 0, Texel Wasp Minic Gull -1, Demolito -2, PeSTO iCE -3, Igel -7, Pirarucu -8.

At the top of the table Fire, DefenChess and Pedone are without loss, all have a good chance of promoting to league 1. Fire returned to its AB version after its NN version failed miserably in season 16, which led it to league 2. Fire AB played in the premier division for many seasons, it is likely to stay in league 1 after promotion. The newcomer DefenChess continues its success in this league. There are at least 3 contenders for the 4th promotion spot, though recall that Nemorino got a free point from a crash in a losing position against Minic.

The last 5 engines in the table played in the qualification league. Igel and Pirarucu are surely on their way back down, the other engines may still avoid relegation. Gull is facing relegation like in season 16, in which case it will stop playing in TCEC because it is "abandon-ware".

Wasp crashed twice so far and is in serious danger of disqualification. Minic crashed once in round 3, but has been stable since.

Notable games

Game 5, Texel - PeSTO: 13 move miniature, 3-fold repetition.
Game 12, PeSTO - RubiChess: The game reached a RRB vs Q position, black with connected passers, one on the 2nd rank. Evals were 0, but RubiChess' play was not accurate. PeSTO used the bishop to stop the white passers, and its rooks slowly took over the game, it took 40 moves for the engines to agree PeSTO winning.
Game 17, Nemorino - Minic: Minic surprised - after qualifying 7th - when the game reached a RB vs RB position with black a pawn up. It then surprised again when it crashed just before securing the win.
Game 50, Texel - Vajolet: Vajolet gave a rook for a knight and pawns early in the game, but its passers were not strong enough. Texel reduced to a RB vs BB ending, gradually captured pawns and improved its position until the game was adjudicated.
Game 64, Pedone - Texel: Pedone outplayed Texel in a RB vs RB ending. Evals started to increase from move 75, it took 20 moves to capture a pawn, the game lasted until move 119 after Pedone captured another pawn.
Game 81, RubiChess - Minic: In a queen ending Minic captured a pawn and then reduced to a winning king and pawns ending.
Game 86, Winter - DefenChess: The game reached a drawish-looking RB vs RN position, then DefenChess found a winning path that Winter overlooked, reducing to a rook ending two pawns up.
Game 93, Vajolet - Fire: Fire was better in a RR vs BNN imbalance which turned into a QR vs QBN position. Fire went two pawns up and exchanged queens, enough for a win.
Game 102, PeSTO - Nemorino: Nemorino doubled rooks on the h file and PeSTO kept the file closed while playing on the queen side. PeSTO trapped the black king and then opened the h file for a knight. Nemorino's attack was weak while PeSTO's back-rank threat was enough to win material and the game.
Game 109, Pedone - Winter: Winter's king side rook was trapped and Pedone had a strong knight on the 6th rank. Winter freed its rook while Pedone created an advanced queen side passer. Winter gave 3 pawns to get a passer to the 2nd rank, Pedone traded passers and the remaining pieces to get a winning king and pawns ending.
Game 110, Texel - Fire: Texel gave a bishop and attacked the black king, driving it to the queen side and capturing 3 pawns. Fire stabilized the position and pushed a passer to the 2nd rank, together with the extra piece this was enough to win.

Monday, January 13, 2020

Season 17 qualification league, final results

Final crosstable

The engines that promote to league 2 are: DefenChess, Demolito, Winter, Pirarucu, Igel and iCE.

DefenChess and Demolito led the table from the start and were clearly better than the other engines. Winter started slowly and used a strong second half to reach 3rd place. The race for the remaining 3 spots was very close and continued to the very last round. Igel managed to climb up by beating its direct opponents PeSTO and iCE twice each. Minic was very close but it lost to iCE and gave it the opportunity to equalize, and then a crash in the final round meant that Minic would lose its spot on a tiebreak to iCE.

Gogobello crashed twice and was close to being removed from the competition, which would have affected all scores. However, Gogobello survived to the end. Its game against Minic in the last round ended in a crash, but it was Minic and not Gogobello that crashed.

League 2 engines other than the 6 engines promoting from the qualification league are: Pedone, Fire (old version, not NN that played in season 16), Fritz, Nemorino, Texel, Vajolet, Gull, RubiChess, Wasp and chess22k.

Notable games
Game 138, DefenChess - iCE: DefenChess opened a file on the king side and attacked the black king. The black pieces were too far and iCE preferred grabbing a rook for a bishop, then it was forced to lose material to save its king, giving DefenChess the win.
Game 139, Cheese - Gogobello: A 13-move miniature that ended in a 3-fold repetition.
Game 142, Minic - Topple: After a long shuffle the engines opened the position and reduced to a RBN vs RR endgame. Minic played better, a pawn on the 7th rank put pressure on Topple and a second passer was enough for a win.
Game 146, Pirarucu - Igel: The game reduced to a RR vs Q ending, the white rooks were very active and after capturing two pawns the game was over.
Game 150, PeSTO - Cheese: PeSTO thought it was safe in a RRN vs RRN position, ignoring the strong black central pawns. Cheese reduced to a RN vs RN ending and captured 2 pawns, PeSTO realized it was losing but too late. First real win for Cheese in the league, previous win was a Gogobello crash.

After 20 rounds the top of the table was:
DefenChess +10, Demolito +8, Pirarucu +7, Winter Minic +5, iCE Topple PeSTO +3, Marvin +2, Igel +1. The top 3 engines will probably promote, the race for the remaining 3 spots is still wide open with 10 rounds to go. Gogobello has two crashes, a third will delete all its games and could affect all scores.

Game 166, Winter - DefenChess: In a RRB vs RNN position DefenChess used an advanced passer to capture a rook. Winter was two pawns up but DefenChess kept one pawn and reduced to a winning R vs RN endgame.
Game 171, Demolito - Winter: After 60 moves of low evals Winter outplayed Demolito in a N vs BN endgame with white 3 pawns up.
Game 172, DefenChess - Topple: DefenChess was better in a closed position. It exposed the black king while Topple's pieces were too far, the game was over quickly.
Game 174, Tucano - Pirarucu: Tucano put a lot of pressure on the black king, but it couldn't find the win and Pirarucu held the draw.
Game 181, Marvin - DefenChess: DefenChess was much better, it reduced to a R vs RB endgame and won, though it took 30 moves.
Game 187, iCE - Topple: Topple's king and rook were trapped and isolated on the king side, iCE broke through with a knight sacrifice and the game was over quickly.
Game 188, Demolito - Marvin: Marvin grabbed two pawns early, Demolito's pieces were better with a passer on the 7th rank. Demolito traded the passer for a piece and reduced to a RN vs R ending two pawns down, it took 35 more move to get the win.
Game 189, DefenChess - Pirarucu: DefenChess captured a pawn in a RN vs RB position, then reduced to a winning rook endgame.

After 24 rounds the top of the table was:
DefenChess +14, Demolito +8, Pirarucu +7, Minic +6, Winter +5, iCE PeSTO +4, Igel +3, Topple Marvin +2. DefenChess is ready for league 2 with 4 straight wins. Minic and Igel improved their chances, Topple going down but still in the race. Gogobello still with 2 crashes.

Game 197, Pirarucu - Demolito:The black knights were better than the white bishop pair in a closed position. Demolito went a pawn up, then gave a rook for a bishop and two more pawns, the knights and passers gave Demolito the win in a NN vs RB position.
Game 199, Topple - Gogobello: Topple was slowly outplayed in the game, Gogobello completed the win with a mating attack on the white king.
Game 201, FabChess - Winter: The engines shuffled from move 31, avoiding the 50-move draw 3 times. When the position opened Winter played better and won after 225 moves. Could have been a draw.
Game 202, PeSTO - Topple: Topple's king was exposed, PeSTO used the open files for a quick and deadly attack with the major pieces.
Game 215, Marvin - PeSTO: PeSTO did not see the danger to its king, Marvin sacrificed a bishop to expose the black king and PeSTO was forced to lose a queen to avoid mate.
Game 216, Topple - Winter: The white king moved forward in the center, Winter opened the position and attacked with its major pieces, reaching a winning QR vs QB position.

After 27 rounds the top of the table was:
DefenChess +15, Demolito +9, Minic Winter +7, Pirarucu +6, PeSTO iCE Igel +4, Marvin +3, Topple -1. PeSTO, iCE, Igel and Marvin are all trying to get to the 6th and last qualification spot, with 3 rounds to go. Topple is probably out of the race after 3 straight losses. Gogobello still with 2 crashes.

Game 218, Winter - Marvin: Winter had a space advantage from the start. After opening the position the game reduced to a Q vs RB ending, the queen was strong enough to win.
Game 221, iCE - Igel: iCE had an advantage from the opening but couldn't improve. Then Igel took the initiative, captured a piece and reduced to a winning RN vs RBN position.

Two rounds to go: Winter +8, Minic +7, Pirarucu +6, Igel +5, PeSTO +4, iCE +3, Marvin +2. Igel's win over iCE is a dramatic result for both engines, Igel is 6th and iCE is a point away. Igel and PeSTO will play in the last round in a game that may determine the final qualifier.

Game 228, Minic - iCE: Minic was a pawn up in a RRB vs RRN position, iCE used a connected pair of passers to create a significant advantage. Minic gave material and captured one pawn, leading to a B vs R ending and a win for iCE.
Game 231, Pirarucu - Winter: Pirarucu went a pawn up and exposed the black king, Winter used the open files to threaten the white king with its major pieces. Pirarucu's king side was paralyzed, Winter gradually captured pawns and created passers that won the game.

One round to go: Winter +9, Minic +6, Pirarucu  Igel +5, PeSTO  iCE +4, Marvin +2. Winter promotes to league 2 officially, Marvin is out. After this round there are 5 engines within a point of each other, and three open qualification spots. 

Game 236, PeSTO - Igel: Igel exposed the white king and attacked, capturing a pawn in the process. Then it captured a second pawn and reduced to a winning RN vs RB ending. Igel secures a qualification spot, PeSTO is out.
Game 237, Gogobello - Minic: The engines shuffled in a RB vs RB drawn position when Minic crashed. Gogobello with two crashes survives the league
Game 238, iCE - Counter: iCE managed to turn a drawn position to a winning rook ending. The win means iCE qualifies instead of Minic, the crash in the previous game causes Minic to lose in the tiebreak.

Pirarucu and Winter won their games to qualify.