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.

    What happen in 2009

    The end of the year arrive, so it’s time to look what happen in 2009 about the suicide variant and in SuicideChess project.

    When 2009 started, Azor was still in version 10, and now it’s the version 16.8 that’s currently running. Many things have improved between these versions : en-passant rule, auto-update, speed increase, better connexion’s stability and EGTB capacities. I’m impress how much azor improve this year.

    About the website, end game section have appear, to help players with suicide end game. That’s not the only section being created, the blog and forum too! In the opening book section, it’s now possible to add comments about a position. And since few, it’s now possible to register / login on the website.

    About the opening book, it increase a lot this year. At the start of the year, there was about 8.5 millions calculated positions in the database; at the end of the year, it will be about 37.5 millions. So 29 millions positions have been compute this year. Thanks to everyone who ran/run an azor. To give you a idea, to compute 29 millions positions on some cloud computing program like Amazon EC2, that would cost me more about 6000$.

    At the begin of the year, I have complete the transfer the hosting of the website from my home computer on a real web server, host by SliceHost.

    All my Java source code for my project have been release open-source this year too.

    About Suicide variant in general, you have seen new computers accounts on FICS like nakshatra. And StayAlive have now a way better opening book, than before, he almost reach the 2600+ rating in suicide. The Cyanide Sandwiches tourney have been moved from Tuesday to Wednesday.

    This is what I remember so far… oh what a year ! 🙂
    Hoping to see what will happen in 2010.

    Happy New Year all!

    Compressing suicide EGTB

    A big problem with EGTB is their size.

    When I start to do suicide EGTB, I know that I can apply symmetry to reduce the size, but it was hard to program. So I decide to let them big, because the need of EGTB was more important.

    Now we have all EGTB up to 4 pieces, but the size is way to big to able to transfer them easily. 34.5 Gb is too big. So if I want to transfer them, or even think to generate 5 piece EGTB, I need first to reduce the size.

    I finally apply the symmetry to them, and modify the reader to be able to read them. Here some fact

    In Non-Compress form:
    all 2 piece EGTB : 216 Kb
    all 3 piece EGTB : 88.5 Mb
    all 4 piece EGTB : 34.5 Gb

    In Compress form:
    all 2 piece EGTB : 66.7 Kb (reduction of 69%)
    all 3 piece EGTB : 31.3 Mb (reduction of 64,6%)
    all 4 piece EGTB : 9.94 Gb (reduction of 71%).

    At this we can add regular compression like .zip , .bzip or .rar . I hope that will result in less than 1.5 Gb in total.

    About 5 piece EGTB with symmetry it still about 2.3 Tb so even with .zip compression it will be about 221 Gb.

    I wonder how Angrim was able to do 5 piece EGTB in about 57 Gb. I think I’m able to do a another symmetry reduction for EGTB with pawn, but even with that I will reach about 107 Gb.

    Solving techniques, and 8 solved positions.

    Recently, I found a document that explain how the team of University of Alberta manage to solve Checkers.

    They use a proof procedure that had 4 different algorithm/data components:
    1-Endgame Database
    2-Proof tree manager
    3-Proof solver
    4-Expert Seeding.

    I was happy to see that we use all these components and even more, let explain this.

    1-Endgame Database, currently all Azor use at minimum the 3 pieces EGTB, and some use the 4 pieces EGTB. All 4 pieces positions are directly send to Azor who have the 4 pieces EGTB. It sure that I need to reduce EGTB size to be able to send all 4 pieces EGTB to all Azor, and to be able to generate the 5 pieces EGTB. So at least we use this components for solving, but need improvements.

    2-Proof tree manager, it’s the name give from University of Alberta, to something like the opening book. This permit to see the progress of the solving tree. Recently we start to use symmetry in the opening book to reduce the search tree. It’s useful in near end game. Like for the checker , here on suicidechess, we use this tree as a transposition table, to avoid recalculate the same positions many times, and to reduce the search tree again. The proof tree manager it’s the visible part of the project.

    3- Proof solver. On suicidechess we call it Azor. Currently Azor use only one algorithm , the Proof-Number Search. This algorithm have been great for any Suicide chess engine. To quote Stanisvla Goldovski: « To restrict your opponent, you will not only need material advantage, but also advantage in mobility and space. » That exactly the purpose of Proof-Number Search. In a unclear position, the Proof-Number Search will give advantage to the player who have more mobility. The Azor is made to be able to install on most computer, to increase the speed of solving.

    4-Expert Seeding. Even with a good algorithm, and a lot of CPU power, nothing can beat the knowledge of human. Human can give advice, that it will be prove as right after a lot of cpu cycle. That’s why on suicidechess, users can choose what will be next position to be calculate. Some suicide expert said that giving your b-pawn at the start of the game is dangerous, current analyses like the opening 1.b4 or 1.e3 b5 tend to prove it.

    Solving suicide chess, is a long task to do. For checker which is a simpler game in term of complexity, it took 18 years. So even with better CPU power, I think we won’t be able to do it in less time. Suicidechess project had start in June 2007 , even if we took the same amount of time to solve it, that lead use to 2025. But even checker are solve, there still exist world championship of checker, because human can memorize all positions, and in these competition, the first three move are random ( up to 174 different position). In chess, you can use the 960 different starting position also known as Fisher chess. I don’t know if I’ll be alive to see all 960 positions solved, but at least I already saw 8 of these positions solved. Yep you read it right, 8 starting positions are solved are the list:
    bbnrkqnr/pppppppp/8/8/8/8/PPPPPPPP/BBNRKQNR
    bbrnkqnr/pppppppp/8/8/8/8/PPPPPPPP/BBRNKQNR
    brnbkqnr/pppppppp/8/8/8/8/PPPPPPPP/BRNBKQNR
    brnkqbnr/pppppppp/8/8/8/8/PPPPPPPP/BRNKQBNR
    rnqkrnbb/pppppppp/8/8/8/8/PPPPPPPP/RNQKRNBB
    rnqknrbb/pppppppp/8/8/8/8/PPPPPPPP/RNQKNRBB
    rnqkbnrb/pppppppp/8/8/8/8/PPPPPPPP/RNQKBNRB
    rnbqknrb/pppppppp/8/8/8/8/PPPPPPPP/RNBQKNRB

    As you may saw 4 last one are symmetry of the 4 first one. A other proof that symmetry is important.

    Finally some news

    Last few weeks, I didn’t program a lot, because some sickness. But now I’m back on track.

    Today, I had release the version 16.6. Few changes , but nothing big. This afternoon, I found a bug in nessegrev / Azor that existed since the beginning. So a 16.7 will be release soon. Before this I have to test and make some choice like speed vs depth search.

    I need to release a new update for StayAlive too, but that will be quick to do.

    There’s so many things to do for suicidechess, I hope to do as much I can, before I got a real job.

    I still have some future dream about suicide:
    1- I wish to make a suicide engine that will merge nessegrev, with the Wizard engine. The wizard engine will provide more strategies in middle game, while nessegrev will bring his opening book, his quick way to find win path and his endgame play.
    2-I wish to make a new nessegrev, that will be multi-core, to take advantage of new cpu
    3-Finish a suicide applet to provide a web version of nessegrev.
    4-If I got a better budget for suicidechess, I hope to remove the database of my personal computer to put it on maybe a Amazon service. This will provide a better stability and less latency, so this will help the speed of the website.
    5-Provide even more services for any suiciders.

    About suicide in general, I like to see that suiciders try more different opening. Recently I saw some interesting games between Amitj and Gasgo, most of them were 1.a3 opening. Even if this opening isn’t rate good on suicidechess and nilatac book, but this opening provide many nice middle game positions.

    Hopefully I wish to see more high-ranked suiciders to participate to Fics suicide tourney, but I tend to agree with many of them, that 3 0 or 5 0 games are too short. Longer games are way more interesting.

    Time to go back to jub-hunting…

    4 pieces EGTB completed and the Bb7 solved.

    All 4 pieces EGTB have been generated. But they are huge :34,5 Gb.

    For now, you can search / practice endgame position with any 4 pieces.

    With the 4 pieces EGTB helps, the B01 Classical Defense , also known as the Bb7 line have been solved in the opening book.
    What’s the next one? 1.h3 , 1.b4 or 1.e3 c6 ?

    I’ll now try to reduce the egtb size to be able to share them to all azors.

    Coming next on the website: User comments in the opening, favorite positions, and egtb practice scoreboard.