Hi all,
a little retrospective on the Dutch Open from our side!
The Deep Sjeng team was:
Gian-Carlo Pascutto (programmer)
Erdogan Gunes (book)
Jens Heerklotz (engine test)
Sujay Jagannathan (hw test)
Bert Leznir (book test)
After the ACCA tournament I worked for a while to fix some longstanding issues in the engine (for example to prevent the disaster we had in the last round there!) and try to tweak the single-core performance a little. I got some nice improvement but was also a bit too stubborn trying to get some things to work. Given that the Dutch Open was an unlimited tournament, and Suj has been extending his hardware store, I wanted to rework the clustering algorithm extensively to scale better over a large number of clients. Eventually it was a scramble to get the revised clustering ready in time, with some unexpected issues propping up in what is easily the most complex code I have ever written.
I wasn't able to deliver a more or less completed new version until less than a week before the tournament, which meant that again it was a total scramble to get everything tested in time. Jens, Suj, Erdo and Bert have been essentially running nonstop tests until the wee hours of morning to get both the book adapted to the new version on such short notice, and to figure out the best cluster setups. Some of you who follow playchess closely might have seen some of that. Eventually I got confirmation that both the engine was a clear single-core improvement and that (with some settings) the clustering code was giving a nice extra speedup, so we could go the tournament in the knowledge that we should be able to put up quite a fight against anyone. However I also know the other programmers have worked hard so that unpleasant surprises can always happen.
The start of the tournament was quite a let-down due to very serious issues with the internet connection, which persisted throughout the entire weekend. We eventually started much later than intended and had to play with reduced time controls to make up for the lost time. Given that I am very much not a morning person and had to get up very early to get to Leiden in time for the announced starting time this wasn't very pleasant. Not to mention - we could not go into the nice city to relax afterward.
We started the first day with a configuration of 3 x 24 core 2.4Ghz AMD machines.
- Joker played the first game without book, made some positional mistakes, and was summarily mopped up. This was not so spectacular but we were happy to confirm that the cluster seemed to be stable and no bugs with mating and hash tables showed up (unlike some other participants).
- I was happy when I saw The King joined, as it has an active-attacking playing style that mixes well with that of Sjeng, meaning games from both programs tend to be huge fights. It did not look like much was going to happen after a passive opening from the King, until it suddenly sacrificed a pawn for pressure against the white King. However, black also got his king stuck in the center and truly massive complications ensued, which even with all 72 cores we could not punch through. At move 22, Sjeng was planning f5 and a double piece sacrifice, thinking this would give white a small advantage, when suddenly the roof fell in and the score dropped by 2 pawns. (Moderators, can someone put a diagram here perhaps?) Even when going into emergency mode (fail low time extension), the complications were too much to see through, Sjeng timed out and played the best move it had so far, which was probably still not very good. The King won a quality and started trading down to a won endgame. Unfortunately for it, it traded down just a bit too eagerly and left a misplaced rook. The cluster locked on to this very quickly and our score jumped above zero again. Deep Sjeng put the rook definitely out of play, activated its king, and won the resulting endgame. Truly one of the most amazing computer chess games I have ever played.
- It was a bit sad that we met Rybka already in round 3, because this was likely to be a decisive game. On the positive side, we had the white colors. We also made some slight changes to the hardware setup and settings from the latest incoming test results, slightly reducing the number of cores to 64, but getting a better overall performance for the reduced time control (75 mins instead of 90). In the game Rybka was in book quite a while longer and seemed to exit in an equal position, where it's a question if black's space grab on the queenside provides sufficient compensation for the uncastled king. After a deep search Rybka found c3! and Sjengs score plummeted the next move. Deep Sjeng tried hard to make something of the black's king position, and scarified a piece to get to it, but in the end white didn't really seem to have something and black won being a piece up. For me at least one positive side of this game was that I had been watching Rybka's scores and they tracked Deep Sjeng's quite closely (as well as the best moves, causing us to lose lots of time when Rybka kept getting ponderhits). This seems to indicate Rybka is no longer greatly outsearching us, which opens some prospects for future face-offs.
For the second day, we again changed the hw setup and the settings based on overnight testing, although I can't remember to what

- The game against Hermann was a quite simple victory. White scarified a pawn for better development, but could not understand it's own compensation. This was a bit of a funny situation as Hermann evaluated itself at -0.6 even though Sjeng only though black had a small advantage (-0.15). As a result, white's advantage did evaporate pretty quickly and black easily won being a pawn up.
- In the game against Hansdamf, we got a typical Erdo-Sicilian. Unfortunately at some point white wanted to repeat moves, and Deep Sjeng avoided this with a positionally suspect move (Bxc3), giving up it's Dragon bishop to give white two doubled isolated pawns on an open file. (Diagram?) Although strongly condemned by Erdo and most chess players in the hall, Jeroen seemed to be more cautious as blacks compensation is indeed non-negligible. In fact Hansdamf almost instantly proceeded in the wrong way and could not defend all of it's weak pawns. Deep Sjeng snatched a few off and traded down into and endgame 2 pawns up.
We had a bye in the next round so there was some time for a walk in the city. I had not eaten anything during the second day as the games were ongoing, but this was easily fixed in the Greek restaurant Delphi in the center of Leiden, where for the first time since 3 attempts in the last years I was able to finish one of their huge and very tasty meat platters. Jummy!
In day 3, we again had a change of hw and settings, this time moving to 96 cores with fairly conservative parameters.
- In the first game against Pandix, I was somewhat concerned as Pandix was a bit of an unknown factor, but I heard several times the engine has improved tremendously, so this might well have been a very strong remaining opponent. We played a deep Spanish line, where my opponent remarked several times he prepared this opening quite deeply. Deep Sjeng was out of book first, that is to say, we still had bookmoves but Erdo had set it so the engine had to find them itself. This resulted in a lot of gloating from our opponent over his superior preparation. After his last bookmove our initial score was about -0.5 and we were already in a bit of a panic. However, during the search the cluster took a very long time over a move that left our rook hanging. After a while the score for it returned and we went from -0.5 to +1 for N3h4. After another minute the score for Nxh6 returned: +4.5. (Diagram?) The game was over at that point although our opponent played on for a while (his engine was still a piece up, after all



- The next round against Ktulu was also a quite crazy game. Our opponent was out of book quickly but found all the bookmoves for a long while. After a bit of wiggling in a balanced position Sjeng saw a way to find the advantage, but several moves into the maneuvering we suddenly had a big fail low on Qc1. Unfortunately the opponent also saw this trick and a few moves later our position was busted. Deep Sjeng thought the position was defensible (+0.2 for white) but we didn't really agree. It defended as accurately as possible, and after the opponent missed a chance to finish us off, he pushed too hard for a win, allowing us to get a single passer that outran his two connected ones (the Ktulu operator saw this problem several moves before the engine did). For the second time this tournament we ended up in a losing position, but accurate defense against opponents too eager to win allow us to turn the tables on them. I analyzed this game a bit afterward as I was not happy with the cluster missing white's trick, but Rybka 3 also did not seem to see it sufficiently ahead of time on my laptop, so I've decided not to worry about it too much. We also reached our peak NPS in this game: 110mnps, just 10mnps shy of Deep Blue's speed.
- The last game against The Baron should have been quite interesting, as The Baron has snatched away many half points from us in the past, and did in fact do so again against Rybka. The very solid search combined with a solid evaluation and a solid book ... make for a solid opponent! However the game was somewhat of a letdown. After the opening white had more space, better development and a simple and straightforward winning plan. Deep Sjeng makes no mistakes in such positions and The Baron lost without being able to put up a fight. Nevertheless a good tournament for Richard who won his first trophy.
Although we again were half a point short of stopping Rybka's winning streak, we're nevertheless very happy with our performance and look forward to the next tournament, where we will again go on a fishing expedition. There will probably be no opportunity to make sushi in Japan, but I've heard Hollandaise sauce goes pretty well with fish platters.