How long to look to all positions ?

Today , the opening book databases reach a total of 700 millions positions ( only 15%-16% of them have been analyzed). What if you want to look to all of them. If you take 1 second per position, it would take you about 22 years to check all positions ( 24h/day).

Each day more than 1 millions position are created. Good luck if you want to see all of them.


Major milestone reached: 100 millions positions.

This weekend, we have reached the 100 millions milestone! Thanks to all of you who have help in a way or another.

To give you a idea, it’s about 25x the size of nilatac’s one. Currently it took about 3 seconds to compute a position. So this means that a lot of CPU time have been give to this project, but the results can be use by all.

For now, just my own suicide chess engine use it, hoping to put them back online soon.

I know that recently I didn’t add new features or update azor, I wish to be able to pass more time on it,but for now it’s hard. Hopefully it’ll be better this summer.

An engines tourney, and some toughts about openings.

Yesterday, I make a suicide engine tourney on one of my computer between 4 engines:

  • Sjeng (version 11.2), the most popular suicide engine. I used it with his default settings, default opening book and 3 piece egtb. (link)
  • Wizard (version 3.1), the demo / free version. Default settings (link)
  • Pulsar (version 2009-9b) , with his default settings. (link)
  • Nessjeng, a version of sjeng (11.2) that I have made, default settings and 3 pieces egtb
  • I was sure that my own version of sjeng will finish higher that sjeng, but I wanted to compare with others.
    The tourney was a 50 games Round-robin of 1 minute with 1 second incremental.

    Here the result:
    Nessjeng 117.5 / 150
    Wizard 94 / 150
    Sjeng 87.5 / 150
    Pulsar 10 / 150

    All games can be download in one big .pgn file here.

    What changes have I made to sjeng ?
    Simply, a way better opening book. Ok, I must confess that isn’t a simple handmade opening book, I had connect a sjeng on the huge opening book of .
    I got this idea several months ago, when I started to program a opening book layer of StayAlive( a wizard engine running on FICS) for Neca.
    Recently for the job, I needed to do some C/C++ programming. It was my first real C/C++ program. When I looked that Sjeng source code, I saw that could be easy to connect it to the opening book database.

    I knew that Sjeng and wizard have some weakness in their openings, but I didn’t tough that will be that much.

    There’s a lot of better chess engine programmer than me, but many underestimate the importance of the opening. I strongly suggest to new engine programmer to invest their time in all game phase: opening, middle game and endgame. It’s true not only for the suicide variant, but for all chess variant.

    Currently, i’m only under windows, so I can’t compare these engines vs linux engines. But if you know others engines to throw-in, I can easily run others tourney.

    Some news (bad and good ones)

    On August 1st, my main computer/server for suicidechess had crash as you already know. Sadly, it was the 1st of each month that I took backups.

    After several attempt, I wasn’t able to restore the database as it was. So I got no choice to restore the backup for the 1st of July.
    That’s the saddest part, we must re-do all works of July. And I have lost all forum discussion :S

    The good news now:
    The opening book is back online!
    Most of services (Main server, gore, azor,etc) are back online too.
    My main computer (previously known as NetBombe) got replaced by a new computer (AMD Phenom II X6 1090 with 8Gb of ram) so we’ll be able to work quickly!

    A good way to learn: Lose a game

    In real life, we learn from our mistakes. It’s truth in suicidechess too.

    In a suicide game, we often lose on a single move. You need to know which one. Sometime it’s obvious, you can see it in a second after your move, but it’s not the case, you need to know. In regular chess, the one who make the last mistake loss the game, in a suicide game, the one who make the first one usually lost the game.

    To spot your mistake, you can use several tools: a opening book, a suicide chess engine or end game table. You can also ask someone to help you, most of suicide player are willing to help / analyze game.

    You have spot your mistake, now you can do two things:

  • Just remember it, to not do it again
  • or learn how to win the game if your opponent does this mistake
  • The first one it’s easier, and you can continue playing game. The second one may take a lot more time. Example 1.e3 b5 2.Bxb5 Bb7 is lost for black, learning to not play it as black it’s easy, but learning how to win this as white, it’s very hard : only suicide engine can play it perfectly. So you may ask : »When should I learn to win a lost position? » There’s no perfect answer. Just try, if after a amount of time / asking other suicide player , you don’t see the win, just pass over and go play some game.

    In the last few week, I have learned a lot mostly by losing a lot of games against Nilatac and StayAlive. Against them, you can know right a way when you made a mistake: Nilatac is telling you, and StayAlive start to play very fast.

    Analyze one game can help you more than a hundred games…

    How to win against (part4)

    Today, it’s Nilatac turn.

    Nilatac is a strong suicide chess engine, it’s the big brother of Catnail(cover in part 2).

    I prefer to tell you right now:
    « It’s very tough to beat him, you will need a lot of practice« .

    Nilatac have a big opening book, that you can explore on his website. When I mean big, I mean more than 4 millions different lines. Just to compare Sjeng engine have only 25 lines in his default opening book.

    In middle game, Nilatac use several algorithms mainly: Alpha-Beta , Proof-number and Pn^2.
    In endgame, Nilatac have all 4 pieces tablebase.

    So where can you take advantage on Nilatac?

    Probably in middle game. To beat Nilatac, you’ll not just need to play good in middle game. First you’ll need to learn a lot of openings, because Nilatac use a lot of them. I think that Nilatac won most of his game in the opening. Nilatac is fair enough to tell you as soon as you are in a lost positions. So you’ll see a lot of « I got lucky« . If you survive after the opening, congrats! Now the important part of the game is coming. As soon the game « quit » the nilatac opening book, you must do the best move, but I know it’s hard to know which one is the best.

    Some rules that you must follow:

  • Do not engage any Queen race. With the proof-number search algorithm, it’s sure that Nilatac will win.
  • Do not sacrifice your piece too quickly. This a general rule for any suicide game.
  • Push your pawn forward. Chess engine have bit difficulty to plan all promotion, but do it safely.
  • Take your time. You will probably loss in the next few move, so think carefully.
  • Avoid the endgame as long you can. I don’t know any human that remember all endgame positions with 4 pieces, but Nilatac does.
  • Even with those tips, you can’t manage to beat him? It’s normal, Nilatac have a higher ELO than any human on FICS. I suggest to play a lot against him in rated or unrated game, you’ll learn a lot. It may be take more than 250 games before a single win. To beat any high computer, I suggest longer time control, even if Nilatac propose only 3 0 games, you can challenge him with a longer time control, to give you time to think about your move.