2018-09-30

Lc0 v0.18.0 has been released.

v0.18.0 is out of "release candidate" status, and now is fully released!

Can be downloaded here.

It has no changes relative to RC2. For the list of differences relative to v0.17, see posts for v0.18.0-rc1 and v0.18.0-rc2.

For people contributing training games, there's no need to rush to upgrade, it's fine to use v0.17.


There is a small known issue with time management. The version v0.18.0 times out sometimes when all of the following is true:
  • Ponder is ON
  • Time is added every X moves (e.g. every 40)
  • There is per move increment
Most probably there will be v0.18.1 soon where this issue is fixed.


2018-09-28

TCEC Cup in the next days!



 The TCEC(Top Chess Engine Championship) tournament is currently running with engines playing in the premier division and this division will finish in a few days. But this time, after premier division end, there would not be an immediate starting of the superfinal between the top 2 placed engines in premier, but a new tournament is going to happen that Chessdom has announced, the TCEC CUP, with all engines of TCEC but in a different format, that of knockout games, one that brings in mind the traditional Cup competitions of football.
(TCEC superfinal will he held after the TCEC Cup of course)

2018-09-27

CCCC Leela-Komodo event for 3rd place and Chess variants tournament!




Chess.com has announced that after the CCCC superfinal between Stockfish and Houdini(Stockfish is ahead 27.5-20.5 till now) will finish, then 30 games of Komodo versus Leela will be played to determine the 3rd place.
This is a surprise since there were no such plans initially announced, but it is welcomed for Leela and Komodo fans. Probably Chess.com did it since Leela fan base is high and they want to take advantage of this.

The most interesting thing on the announcement is that the top 6 engines, Stockfish, Houdini, Komodo, Leela, Ethereal and Fire, will play a 10x Round-Robin tournament from each of the following 5 predefined positions/Chess variants.
Each engine will play one with white and one with black from each position in a total of 50 games for each engine(50 rounds).

And here comes the dangerous part about Leela.

2018-09-26

Lc0 v0.18.0-rc2 has been released.

The "Release Candidate 2" for the Lc0 version v0.18 has been published!
Available to download here.

Change:
  • Fixed a severe race condition bug when only happened when --out-of-order-eval is on (which is the default value now).
    Could produce incorrect search results.

CCCC stage 2 ended. Leela 4th with a good performance! Stockfish undefeated!



Chess.com Computer Chess Championship stage 2 has finally ended. After a 280 games battle only the top 2 engines will continue to the superfinal.
Stockfish and Houdini for a 200 games "fight". Well no one really expects it would be a fight and Stockfish will probably win this by a huge margin.


Leela finished 4th, with 37.5 points, in a strong position where it was very close just 1 point short to the 3rd Komodo and a comfortable 6.5 points ahead of the 5th Ethereal. Fire was 6th with 29 points and Booot and Andscacs took the last 2 places with 25.5 and 24.5 point respectively.
Houdini with 43 points won easily the 2nd place 4.5 point ahead of Komodo while Stockfish remained undefeated with an easy lead 8 full points ahead of the 2nd Houdini!
So till now Stockfish has not lose a single game out of the 116 of stage 1 and 2. Let's see if it will lose in the 200 games of the superfinal. Logic says it will but Stockfish on CCCC hardware appears to be invincible! Even though it should definitely had lost one game against Leela since they reached a dead-won endgame position.


Leela managed against the big 3 to have a fantastic score in this tournament of 2 wins, 3 losses and 31 draws!! While against Stockfish she was the only engine in this tournament that lost just 1 time as it had 1 loss and 11 draws against the mighty Stockfish.

In stage 2 there were also some really dubious predefined opening lines, like one that Leela had to deal with in 2 games against Ethereal(the lines always had been played on reverse too so for a specific pair of engines would not be unfair) the 1.e4 Nf6 2.e5 Ne4? line where Leela won with white while she lost with black. Other 2 such dubious lines had been played but Leela did not have any of the other.

From the 280 played games, white won the 80(28.6%), black only the 23(8%) and 177(63%) ended in a draw.


2018-09-24

Lc0 v0.18.0-rc1 has been released.

The release candidate of a new Leela version has been released:

v0.18.0-rc1

We expect testing phase to last around 7-10 days, after which proper v0.18.0 will be released.

Download and full changelog here. Please test it thoroughly and report any bugs that you find.

Please don't use release candidates to generate training games. We only use stable versions for that.

Change highlights:

  • Full Syzygy tablebase support (both WDL and DTZ) (read here for more context what it is).
  • MultiPV support is added.
  • Time management is optimized. Leela should take more time in first half of the game now, and insta-move rarer.

2018-09-21

GUIDE: Setting up Leela on a Chess GUI.





 Leela Chess Zero is a project started before some months inspired by Deepmind's papers about AlphaGO Zero and AlphaZero, which is based on a new paradigm of Chess engines by not using traditional AlphaBeta search with handcrafted evaluation function but uses a variant of MCTS search called puct and for evaluation function it uses a self-taught neural network that learns by deep learning methods by playing against itself million times.

Now after 6.5 months of training it seems that it has reached a place among the top 5 strongest engines available.

 Its use is not that straightforward like traditional engines since it requires some extra things one that has to make in order to run it. It's easy thought. This guide will be about running it on Microsoft Windows on various GUIs.


Leela Chess Zero works with the help of 2 things:

CCCC stage 2 continues.... Leela 3rd place. Missed 2 chances to beat Stockfish!





Stage 2 continues with Leela doing excellently being 3rd, half a point ahead of Komodo!
Stockfish
continues its unbeaten run, being the only engine with no loss, stage 1 and 2 combined!

This definitely comes as a surprise since Komodo one of the big 3 engines in the Chess world, after 31 games should already be ahead in a well defined top 3 but Leela persists to not lose! She now had in the last 17 games, 2 wins and 15 draws. 
Komodo even had 15 consecutive draws!

 She only lost once from Andscacs and that was only because of a heavy blunder of her in an equal position, while she has 13 draws with the big 3 engines Komodo, Houdini and Stockfish and if we count stage 1 results too she has 19 draws out of 19 games with the big 3.  Also, she beat Fire twice in 2 excellent games outplaying Fire, but the big games were the 2 Leela versus Stockfish games where Leela was close enough to beat Stockfish in the first and one small step for that in the 2nd. Leela outplayed Stockfish in these 2 games especially in the 2nd, to reach winning positions.
 In the first as we mentioned in the previous post, she missed a nice move that other nets find(e.g the strong 11250 finds it after 1.5 million nodes) that would lead to a huge advantage and perhaps a win if Leela could convert, but in the second Leela was really close to beating Stockfish! That would be the first loss of Stockfish in this tournament. But Leela blundered and lost the win. Afterwards analysis show that this 11089(CCCC) net with endgame tablebases would not be able to beat SF from that position while net 11250 with endgame tablebases would do it rather easily.

Fire is also underperforming being currently last in 8th position while Booot continues to surprise being 6th for now.
Stockfish is a clear leader 3 points ahead of 2nd, wining against everyone except Leela.



Standings so far:

2018-09-19

CCCC Stage 2 has started and running.....





Stage 2 of CCCC has already started before 2 days. Not without problems initially with repeating restarts but at last now it's running flawlessly.
Stockfish continues to be invincible! As it hasn't lost a single game in the first 46 games of stage 1 plus the 15th till now in stage 2.
While the so far unbeatable too Komodo, in this stage lost to Houdini.

Leela on the other hand had after 6 games with the big 3, 6 draws as in stage 1. So now she is the only engine that has not lost a game from the big 3. She is going fine also generally till now since she won 4 games also and shares 3rd place with Komodo. She lost 1 game though due to a huge blunder with a blind spot of her in an equal position.

Every engine will play 10 times all the other so 70 games for each engine will be played in this stage.
Top 2 will promote to the super final.


Below are the results, the games of Leela with some comments as also the standings and ratings.

2018-09-16

CCCC rounds 43,44 and 45. First stage is over!




1st stage is almost over, 1 round remains but the top 8 engines that will participate in stage 2 are known.
Stockfish, Komodo, Houdini, Leela, Fire, Ethereal, Andscacs and Boot promote to next round.
Next round, unlike this round, would be without pondering and every engines will play every other 10 times so we would have a total of 70 games per engine.

Andscacs won Arasan in the final round so Shredder has no hope to promote.



ROUND 43
 In this round Leela destroyed Shredder's hopes for promotion by winning him after a superb game where it completely outplayed Shredder with a startling exchange sacrifice that Shredder(as also other engines like the mighty Stockfish) had no idea about it. The defense that would lead to draw was very thin and Shredder didn't manage to find it. To him as also to other engines most moves drew easily. But that was not the case as the genius Leela knew in this game!

TB Rescoring

While test20 runs, we are running test30 in parallel to test two ideas. First test30 uses a different method to initialize the first random net, and a slightly different LR (Learning Rate) strategy for the first few nets. The idea is to see if this eliminates the large spikes seen in some key metrics -- policy loss, mse loss, reg term (see our expanded glossary).

The second idea is to test TB (Endgame Tablebase) rescoring. This may improve the accuracy of the value head. The procedure is:

  • Clients continue generating self-play games as before, no TB involved.
  • The data from these games are sent to the server.
  • The server parses these games, and when a position reaches a new WDL entry, the game result for all positions up to that point is changed to the TB result.
  • An WDL entry is when there are 5 or fewer pieces and a capture or pawn push just happened, and neither side can castle (9000 internet points for anyone who can find an Lc0 self-play game where the castling exception applies!)
  • The game is parsed for the next WDL entry, and again all positions in this new section are marked with the TB result.

This is an alternative to doing temperature reduction or other similar methods, but does not require changing the way clients generate data. So it’s easier to test and compare with and without this method. Also by doing this on the server side we don’t require all users to download TBs.

2018-09-15

CCCC quiz. 12 impressive moves!




In CCCC there have been played some very nice games and moves till now.
Can you find them? Play the move on the board and if it's correct it will show the game continuation with a comment. If not, go back with arrows and try again or press show solution if you can't find it.

CCCC rounds 37 to 42. Leela promoted to 2nd stage!





CCCC continues and Leela, along with Stockfish, Houdini, Komodo and Fire, already has secured a place in the 2nd stage.
Ethereal after a strong finish, mainly winning in the last games, has almost secured the promotion. Booot has also many chances.
While Shredder and Andscacs are the ones that are competing for the final 8th place right now with Shredder to be ahead, but having difficult opponents to face in the next 4 rounds.



ROUND 37
 Leela won a fine game against Fritz with an opposite colors Bishops ending with Rooks also. Leela outplayed Fritz that made some mistakes being short on time since it played in the beginning very slowly.

2018-09-13

CCCC rounds 32,33,34,35 and 36. Leela with 5 draws and an "almost win" against mighty Komodo!





First round CCCC approaches to its end and situation is clear by now.
Houdini, Komodo and Stockfish will be in top 3 advancing to stage 2, with Stockfish and Komodo to fight for the 1st place in this 1st stage, thatdoesn't mean much anyway, Fire and Leela would most probably advance to the next round also with some minor chances of not achieving it, and Shredder, Booot, Ethereal and Andscacs will fight for the other 3 places for stage 2.

Leela had 5 draws in these 5 rounds with 2 easy and 3 very hard opponents and she has 7 consecutive draws.

Simulations using Bayeselo give right now(after and the Andscacs-Inavhoe 1-0 game of round 37):
Probability to promote:
Stockfish 100 %
Komodo    100 %
Houdini   100 %
Fire      100 %
Lc0       99.67 %
Shredder  90.33 %
Booot     81.67 %
Andscacs  77.67 %
Ethereal  44.67 %


ROUND 32
Leela had an extra-disastrous opening with Senpai and never managed to recover so it ended in a draw. Against the very weak in this CCCC Senpai, Leela had to win but the selection of the opening moves was a nightmare and even with Senpai playing sub optimal moves, Leela never really managed to get an advantage so it was easy draw.

2018-09-12

A Standard Dataset

When doing machine learning it helps to use a standardized dataset such that methods can be compared in an objective manner. For machine vision, one of the earliest standard datasets is MNIST, a set of handwritten characters that was also used in the (arguably) first deep learning paper.

We should define such a dataset in the world of chess programming as we try to improve training algorithms for our new chess engines based on neural networks. This blogpost introduces such a dataset called the CCRL Dataset (also giving a huge hint as to where it comes from).

Introducing the CCRL Dataset

This dataset was constructed from CCRL 40/40 and 40/4 data combined. It consists of 2'500'000 games, 20% of which is the testset and 80% the trainingset. You can download the dataset in pgn-format (539M) and v3-format (11G).



This figure shows a distribution of all the gameover types within the testset of this data. Games with over 500 plies have been excluded from this figure to keep it readable, and as such the game count is slightly smaller than 500'000 with 0.02% ignored. The double bands for black/white wins show wins on checkmates and resignations. 38% was won with white, 30% with black and 32% draw. Finally, the testset has ~86% unique positions (including history planes).

Baseline results

For training a simple baseline network the following yaml scheme was used as input to train.py:

%YAML 1.2 --- name: '128x10-base' gpu: 0
dataset: num_chunks: 2500000
train_ratio: 0.80
input_train: '/home/fhuizing/Downloads/chess/computer/cclr/v3/train/'
input_test: '/home/fhuizing/Downloads/chess/computer/cclr/v3/test/'
training: batch_size: 1024
num_batch_splits: 1
test_steps: 1000
train_avg_report_steps: 500
total_steps: 200000
checkpoint_steps: 10000
shuffle_size: 250000
lr_values: - 0.1
- 0.01
- 0.001
- 0.0001
lr_boundaries: - 80000
- 140000
- 180000
policy_loss_weight: 1.0 value_loss_weight: 0.01 path: '/mnt/storage/home/fhuizing/chess/networks'
model: filters: 128
residual_blocks: 10
...

This resulted in an accuracy of 47.0583%, policy loss of 1.591 and mse loss of 0.10882. The network can be downloaded as ccrl-baseline.pb.gz. The tensorboard graphs can be downloaded as leelalogs-base.tgz.

Potential ideas

For inspiration, here's a list of ideas where using such a dataset may be useful:
  • Testing a multigpu training algorithm
  • Different neural network architectures
  • Different input encoding (e.g. removing history planes)
  • Different move encoding on the policy head
  • Finishing resign or adjudicated games to get more endgame data with n-man tablebases
And much more...

Final notes

This dataset is very different from our selfplay data runs which improve over time through reinforcement learning. Sliding a training window across the vast number of games produced by clients as new networks are trained. As such one can only test a subset of ideas/parameters using this data. Still, it's probably safe to say one should never regress in terms of performance on this dataset.

Have fun experimenting and please share your results (good or bad, as both can be very useful)!

2018-09-11

CCCC rounds 28, 29, 30 and 31. Leela draws Stockfish and wins in drawn position again!




 It seems Leela is hiding something that is beyond us. How else can be explained that after Fizbo a 3325 CCRL Elo engine with endgame tablebases in a dead 4-men position lost to Leela, now Leela in another dead draw position made Xiphos, a 3200 CCRL Elo engines, to lose!
At round 29 there was the first loss in this tournament of one of the big 3, as Houdini with black lost to Ethereal!


ROUND 28
Andscacs lost to Stockfish and lost ground for the battle of 8th place but Ethereal and Booot lost to Komodo and Leela respectively so they did not took advantage of it so things remained the same.
Fire won against Ivanhoe so now it has a comfortable place inside top 8.

 Leela playing with Booot a French defense(what else?) opening, she took a very easy win by playing simple Chess. She initially pushed all her Pawns, h4,f4,g4, in from of the castled King gaining all the space in Kingside and first thoughts were that she is planning an attack. But suddenly she forced the
exchange of Queens getting a huge Knight on d6 and from then on some almost forced trades have been made going to an endgame that as it seems it was almost lost for black since its King was too far away and white had a 3-2 Pawn majority on Queenside.

2018-09-10

CCCC rounds 26 and 27. Leela with a crazy game as also her first loss!




Leela had its first loss in the tournament after 27 games that went undefeated. It lost against Ethereal with black after she blundered in endgame.
But before that, a real circus game happened in the Leela game of course again. It was the Leela-Fisbo game with Fizbo the known drawmaster with 19 draws out of 25 games but Leela managed to hypnotize Fizbo to lose, while Fizbo was playing with tablebases and the position was a drawn with just 4 pieces remaining!


ROUND 26
In this round Arasan upset Shredder by drawing him, while the big 3 won their games as usual and Fire won against Nemorino. While for the battle of the top 8 place Booot, Ethereal and Andscacs won their games, even though all had the black pieces.

The real craziness happened in the Leela-Fisbo game. Fizbo till now is drawing most of its games with 19 draws out of 25 games and 9 draws out of the last 10!

2018-09-09

CCCC rounds 23, 24 and 25. Leela with 2 nice wins.




ROUND 23
Andscacs won Arasan in an important win for top8 place, while Ethereal and Booot drew their games.
Top 3 continued with wins but Shredder drew.
Leela took advantage of it and won against Laser so she is now alone in 4th place. Leela's game was great, since while in the opening the game seemed dry with no much play but Leela dominated with clever Pawn moves and showing great long term understanding of the position it created a positionaly winning position.
Fizbo after 9 consecutive draws (17th in the tournament so far) it couldn't hold and lost against the mighty Stockfish.


265 Andscacs vs Arasan 1-0
266 Xiphos vs Booot 1/2-1/2
267 Crafty vs Wasp 1/2-1/2
268 Vajolet vs Ethereal 1/2-1/2
269 Fire vs Texel 1-0
270 Stockfish vs Fizbo 1-0
271 Fritz vs Shredder 1/2-1/2
272 Senpai vs Gull 0-1
273 Houdini vs Pedone 1-0
274 Nirvana vs Ivanhoe 1-0
275 Komodo vs Nemorino 1-0
276 Lco vs Laser 1-0

First half of CCCC ended. 23/46 rounds. Leela is 4th! Results and conclusions....


First half of the CCCC tournament has ended.
It's a 46 rounds tournament and so 23 rounds have been played. Time control is 15'+5" and engines will play all against all twice, one with black and one with white, while pondering is on and no opening books are used and 6 pieces tablebases are being used.
Top 8 engines promote to next round.


Till now there are 4 distinctive groups that have been formed. The top 3 that are consisted of the known "big 3" of computer Chess this moment and for the last 4-5 years, Stockfish, Komodo and Houdini, the other group the engines that fight for the top 8, Leela, Shredder are the leaders of this group that show they might have the advantage and the other Fire, Booot, Ethereal and Andscacs.
There is a group 8-9 engines that seems to just be in the middle without having any prospects of going to top 8 and there is the low end of the tournament that does not do that good.
There are 4 engines that till now haven't lost any game so far. Stockfish, Houdini, Komodo and Leela.


The standings after round 23, finishing the first half of the tournament.

2018-09-08

CCCC rounds 20, 21 and 22. Leela with 3 draws.




As it seems 6 engines will fight hard for 5 places that lead to next stage provided that Stockfish, Houdini and Komodo will have no problems to get the 3 top places.
Leela, Shredder, Fire, Andscacs, Ethereal and Boot will fight for the other 5. Booot actually came out of nowhere to fight for getting in the top 8 and right now seems the outsider even though it has a good performance thus far. Leela and Shredder seem a bit safe right now but with 23 more rounds remaining everything is possible.

After Komodo beat Shredder in round 21, now the only undefeated engines are Stockfish, Komodo, Houdini and Leela.


ROUND 20
This round had Ethereal beating Andscacs and now it took its place on the 8th place where it gives the promotion.
Wasp after drawing Leela, managed to get a draw with white from Houdini also. Laser also with white drew its mighty opponent Stockfish also.

While Leela having black played with Shredder a sharp Sicilian Najdorf variation with opposite castles, Leela gave the exchange giving her Rook for a Bishop trying to attack but the defense of Shredder was spectacular and there was no way for Leela to continue the attack. But the exposed white King gave no way to Shredder to try for an advantage due to being an exchange up so game ended with 50 move rule shuffling.

2018-09-07

CCCC rounds 17, 18 and 19. Leela with 2 wins and 1 draw.



 CCCC continues with Houdini on the lead a full point ahead of the 2nd Stockfish. Houdini till now seems unstoppable and is killing every other engine except for the top ones. Leela is 5th for now even though she won 2 games and drew the other.

ROUND 17
Houdini won against Fire in a nice game where after just a single mistake of Fire leaving its Rook in b2 Houdini took the chance and punished it winning the exchange of a Rook for a Knight and after some deep maneuvering it won a Pawn also and the game was essentially over.

CCCC standings, ratings and statistics after round 17.


Chess.com Computer World Championship continues with engines battling for the first 8 positions that would bring them to next stage.
Round 17 has been completed out of 46 that will be played.

Here are some statistics from the games so far:

The crosstable of the engines. Only the first 8 promote to the next round.

2018-09-06

CCCC rounds 14,15 and 16. Leela draws against Crafty....



After another 3 rounds have completed and we reached round 16 of 46 that would be played, Houdini continues its comfortable lead being 1 full point ahead of the second. Leela had a nice win against Fritz but didn't manage to win against the weakest engine of the tournament Crafty!


ROUND 14


The round of draws. Out of 12 games, the 10 were drawn and only 2 were decided.
Leela was one of them by winning against Fritz. A nice game where in late middlegame she outplayed Fritz creating a strong Kingside attack step by step, with Fritz making not optimal moves and losing tempos for Leela to obtain a Kingside attack.

Another clash of titans with Houdini-Komodo game where in a Ruy Lopez, after all Bishops were traded already in the opening, it got an interesting position with black to have a pressure with double Rooks on the Kingside but white was very solid and black couldn't make any progress so it ended quickly with a draw. Not that quickly over the board of course, since even though after move 68 it was a dead draw for these engines, they were forced to play till insufficient material till move 135.
Shredder while in first 6 games with white had 6 wins, it now dropped another half point with white by drawing with Booot.

157 Ivanhoe vs Andscacs  1/2-1/2
158 Houdini vs Komodo 1/2-1/2
159 Laser vs Gull 1/2-1/2
160 Fritz vs Lco 0-1
161 Nemorino vs Fizbo 1/2-1/2
162 Fire vs Nirvana 1-0
163 Pedone vs Ethereal 1/2-1/2
164 Crafty vs Senpai 1/2-1/2
165 Shredder vs Booot 1/2-1/2
166 Arasan vs Stockfish 1/2-1/2
167 Texel vs Xiphos 1/2-1/2
168 Wasp vs Vajolet 1/2-1/2

Analysis of the Leela-Fritz very nice game:

2018-09-05

Time management

As many of you have noticed, Leela's thinking time allocation seems suboptimal for during the CCCC games. It almost doesn't spend any time in the opening, and spends a lot in the endgame.

It's not completely clear whether time management is really as bad as it looks though. In this post I'll explain the time allocation algorithm, its parameters and explain effects that we see.

There are 7 parameters which affect time allocation:

  • --time-curve-peak
  • --time-curve-left
  • --time-curve-right
  • --slowmover
  • --move-overhead
  • --futile-search-aversion
  • --ponder
I agree that 7 parameters is too much, but there are attempts to add some more!

CCCC rounds 11, 12 and 13. Leela 3 draws against top opponents.





ROUND 11
 This round saw Leela drawing rather not that comfortably a strong engine and currently in the top 8 engines(the top 8 of 24 engines are promoted to next round) Andscacs. In a strange game in semi-Slav, Meran variation, Leela playing black actually lost the Queenside and was strong in the center opposite of what one actually expects in this opening. By move 30 position for white seemed very good with total dominance on the Queenside and a Pawn of black ready to fall. Yet Leela defended very well and gave the exchange sacrifice giving her Rook for a Knight and because of the exposed white King managed to make a difficult draw.

 Shredder continued its superb performance by having another win with black. While Stockfish managed to get a miraculous save against Fritz, in a game with opposite color Bishops that looked very drawish, it played excellently and finally managed to win. It was the first loss of Fritz that till now had 2 wins and 8 draws!
Ethereal continues to underperform by not managing to win against the weaker Wasp engine.


121 Andscacs vs Lco 1/2-1/2
122 Laser vs Nemorino 1-0
123 Nirvana vs Komodo 0-1
124 Ivanhoe vs Pedone  1/2-1/2
125 Senpai vs Houdini 0-1
126 Gull vs Shredder 0-1
127 Stockfish vs Fritz 1-0
128 Fizbo vs Texel 1/2-1/2
129 Vajolet vs Fire 1/2-1/2
130 Ethereal vs Wasp 1/2-1/2
131 Xiphos vs Crafty 1-0
132 Booot vs Arasan 1/2-1/2

2018-09-04

CCCC statistics.


Some statistics about Chess.com Computer Chess Championship till now.

 
                                  Game length                  Frequency      
                                 1-0   =-=    0-1            1-0      =-=     0-1 
 All games                 78     94     76         33.8%   46.2%   19.8%


 



  











Shortest wins (White)

  1:  1-0(35) Pedone 1.8 3090 - Crafty 25.2 3283
  2:  1-0(42) Lc0 17.11089 3300 - Nirvana 2.4 3090
  3:  1-0(51) Ethereal 10.88 3283 - Crafty 25.2 3099
  4:  1-0(53) Shredder 13 3287 - Nemorino 5.00 3287
  5:  1-0(53) Xiphos 0.3.17 3179 - Nirvana 2.4 3099

   Shortest wins (Black)
  1:  0-1(38) Nirvana 2.4 3186 - Booot 6.3.1 3013
  2:  0-1(40) Laser 1.6 3226 - Komodo 2118.00 3226
  3:  0-1(50) Nemorino 5.00 3099 - Fire 7.1 3259
  4:  0-1(61) Vajolet 2.6 3101 - Lc0 17.11089 3226
  5:  0-1(65) Senpai 2.0 3112 - Stockfish 220818 3144


CCCC rounds 9 and 10. Leela with the Knight underpromotion win!




ROUND 9

It was the round of draws, with only 4 games to be decided and 8 draws. All top 6 engines drew their games.
Ethereal had a pleasant game as it crashed the aging Crafty while Shredder couldn't take anything out of the opening it had and Laser had no problems so game ended a draw.
A clash of titans happened in this round between Stockfish and Komodo, in a game where Stockfish created a very good attacking position though a little closed and Komodo deployed a very good defense. Stockfish tried for the breakthrough but Komodo defended excellently and the game ended in a draw.
 Leela played against Senpai with black and while it managed to create a complicated game with attacking prospects against Senpai's King, never really managed to go beyond that due to some inaccuracies by playing many moves with her King and delaying the attack. Yet after some shuffling she had a chance to try to push for the win with 59...Kf8! but Leela missed it and played 59...Rc1? that is a drawish.

Results:
97 Andscacs vs Nirvana 1-0
98 Nemorino vs Pedone  1/2-1/2
99 Senpai vs Lco  1/2-1/2
100 Laser vs Shredder 1/2-1/2
101 Stockfish vs Komodo 1/2-1/2
102 Ivanhoe vs Texel 1/2-1/2
103 Vajolet vs Houdini 1/2-1/2
104 Gull vs Wasp 1-0
105 Xiphos vs Fritz 1/2-1/2
106 Fizbo vs Arasan 0-1
107 Booot vs Fire  1/2-1/2
108 Ethereal vs Crafty 1-0

2018-09-03

CCCC rounds 6,7 and 8....




The Chess.com computer Chess championship continued with most top engines winning their games so little things changed in the top positions.
Leela had a good performance winning 2 games and drawing the 3rd against the mighty Stockfish! It was a boring draw though, with no big fights whatsoever.


ROUND 6

 Leela played a very good game against Xiphos that till now has a good performance. On a semi-slav a normally complicated position arose and when black castled long Leela showed it understands the position very well. After some piece trade Leela immediately started to play on the queenside to expose black's position. It's incredible that she has shown big positive evaluations from the very early showing that she knew this is winning. And white was winning because after destroying black's queenside, black had some bad isolated Pawn islands and white a super strong play in Kingside where he could march his Pawns if heavy pieces are traded.

Ethereal on the other side managed with black to have an easy draw, with another French in this tournament, against the co-leader Houdini, while Shredder continued its excellent tournament winning against the strong Andscacs on another French obtaining a strong kingside attack.

The results:
61 Shredder vs Andscacs 1-0
62 Senpai vs Stockfish 0-1
63 Texel vs Pedone 1/2-1/2
64 Nirvana vs Vajolet 0-1
65 Wasp vs Nemorino 1/2-1/2
66 Lco vs Xiphos 1-0
67 Arasan vs Laser  1/2-1/2
68 Komodo vs Booot 1-0
69 Crafty vs Ivanhoe  1/2-1/2
70 Houdini vs Ethereal 1/2-1/2
71 Fire vs Gull 1-0
72 Fritz vs Fizbo 1/2-1/2


Leela Chess Zero - difficult positions. The new world of NN engines!



 Traditional Chess engines with classic Alpha-Beta search, sometimes have huge problems with some positions that require deep planning and understanding of the position. This is because they try to search all possible moves in a position and then their replies and then all the replies of the replies, etc. They discard most moves of course with clever algorithms that prune almost all moves but a few that they focus on. With a cost of course to discard a move, not good looking at first sight, but that after many moves ahead it proves to be a very good one. Traditional engines also have a handcrafted evaluation function. That means in order to judge a position they have to rely on human rules for it, e.g bonus for Rook on open file, bonus if a Pawn is on 6th rank etc, etc.

 Neural net engines with latest advances Deepmind brought with deep learning techniques used to train convolutional neutral networks, like Leela, on the other hand use a much more powerful evaluation function. One that acquired Chess knowledge about every single aspect of Chess by playing against itself millions of games. No need to manually put hundreds instructions like "if it's a closed position then Knight value increases and Rook's decreases" etc. You let them play against itself and they create by themselves millions of such "rules". Leela also uses a MCTS(Monte Carlo Tree Search) type of search that is completely different than traditional AlphaBeta search.



So it's no wonder that Leela plays very frequently now, moves that other top engines like Stockfish, Komodo, Houdini etc, can't find.
In some cases like these that would be shown here, it even plays moves that not a single one traditional engine can find, or that they need very long searching to do!
Of course that doesn't mean Leela finds most deep testpositions because this is not true. Leela is still not that good anyway in testpositions that require tactics. But when long strategical thinking is required without so much immediate tactics, then Leela usually shines!

Test position 1.

White to play.

White has created a nice concentration of its pieces in the Kingside but has many problems to solve, especially with Bxa3 pending that will destroy white's position. Defensive resources of black are big and King's position seems very solid. The c2 Knight is very annoying too for white. Most traditional engines give here black slightly better or even a lot better or even winning!
And want to play moves like Rh6, Bf2, Nd2. Moves that lead nowhere for white and probably are losing.







 But if you let Leela analyze the position(since Leela Chess Zero is just the project name, by saying LCZero, we're referring to the body of her the Lc0 binary that takes the neural net and provides the search, plus the brain of her, and that is the nets/weights, and here i tried about 9 nets and all find the same move) you will see her after only something less than 1 second of thought proposing Qf6+ sacrificing the Queen with a big plus score for white!!
And not only this but she is finding the correct continuation of Ng5 later on that white has to play!  h5 Bxh5 that she is playing are the correct move for black also(the toughest defense) and the best reply by white.

2018-09-02

CCCC rounds 3, 4 and 5. Leela with a beautiful win!


CCCC rounds 3 and 4 and 5 were finished. Houdini is on the lead with 5.0/5 while Leela is doing well with 4.0/5.

In round 3 Leela with black against Fizbo, reached a material imbalanced position but with her King exposed she couldn't avoid a perpetual check with a draw.
 One of Leela's weak spots is that she is too weak in recognizing perpetual checks that lead to draw, but in this game this wasn't an issue since it didn't cost her anything because the position was draw anyway.
Xiphos with white also drew Stockfish.

The game of Leela against Fizbo:
[Event "CCCC 1: Rapid Rumble (15|5) Stage 1"] [Site "Chess.com"] [Date "2018.09.01"] [Round "?"] [White "Fizbo 1.9"] [Black "Lc0 17.11089"] [Result "1/2-1/2"] [ECO "B50"] [WhiteElo "3259"] [BlackElo "3226"] [PlyCount "83"] [EventDate "2018.??.??"] [EventType "rapid"] 1. e4 c5 2. Nf3 d6 3. c3 Nf6 4. Be2 g6 5. O-O Bg7 6. Bb5+ Nc6 7. d4 O-O 8. d5 a6 9. Bd3 Na5 10. Bg5 h6 11. Bh4 b5 12. Nbd2 e6 13. b4 Nb7 14. a4 bxa4 15. Rxa4 cxb4 16. cxb4 exd5 17. exd5 a5 18. Ne4 g5 19. Nexg5 hxg5 20. Bxg5 Bd7 21. b5 Nc5 22. Rf4 Nxd3 23. Qxd3 a4 24. Nd4 a3 25. Bxf6 Bxf6 26. Nc6 Bxc6 27. Rg4+ Bg7 28. Qd4 f6 29. Rxg7+ {Leela is very frequently missing these draws from perpetual checks. Here though, she probably didn't lose any half point because of that, since the position was relatively drawish anyway.} Kxg7 30. Qg4+ Kh6 31. Qf4+ Kh7 32. Qf5+ Kh6 33. Qf4+ Kg6 34. Qg4+ Kf7 35. Qh5+ Kg7 36. Qg4+ Kh8 37. Qh5+ Kg8 38. Qg6+ Kh8 39. Qh6+ Kg8 40. Qg6+ Kh8 41. Qh6+ Kg8 42. Qg6+ 1/2-1/2


In round 4 Leela had a good moment in this tournament as she outplayed Ethereal in a French game providing a very nice win. Some of its moves were very spectacular attacking Chess of deep positional understanding.
Shredder had its first non win result also and Houdini again won with white against Gull so it had 4 points out of 4 games.

2018-09-01

CCCC rounds 1, 2 and 3.....


CCCC continues running and we are on round 3 currently. The level of play is very high as it was expected and interesting games and positions arise.
Shredder is on the lead now with 3 points out of 3 games but other engines can reach that too(Komodo, Houdini).

First 2 rounds, were not without many adventures for Leela since in the first round it was winning with black against Ivanhoe, but for some reason game crashed. It was not because of any engine's fault. Leela was clearly winning and Stockfish with 7-man tablebases show a win for black so this is a won position. Of course nothing says Leela would actually win the game.