EndGame Databases

Discussion about development of draughts in the time of computer and Internet.
Post Reply
Rein Halbersma
Posts: 1722
Joined: Wed Apr 14, 2004 16:04
Contact:

Post by Rein Halbersma » Tue Jun 26, 2007 18:03

BertTuyt wrote:Rein, i don't make use of the symmetry concept so far.
Based on profiling I found out that the index function is consuming quite some time during the database generation, so i try to keep it as simple as possible.
Hi Bert, how did you implement your index function? Did you copy it from the 1994 paper of the Chinook team "Solving retrograde analysis ...."? In particular, do you incrementally update piece configurations to calculate the index of a board configuration?

Rein

ildjarn
Posts: 1537
Joined: Tue Aug 22, 2006 15:38
Real name: Joost de Heer

Post by ildjarn » Tue Jun 26, 2007 20:49

ildjarn wrote:There are some errors in the maximum pages. I have the full databases at work, will generate the maximum positions on tuesday (I have a day off on monday). From what I remember, the maximum length is OK, but the positions given aren't.
Here are the 3x3 stats, all other stats are correct on Michel's page.

http://sanguis.xs4all.nl/dammen/endgame/
    Lasst die Maschinen verhungern, Ihr Narren...
    Lasst sie verrecken!
    Schlagt sie tot -- die Maschinen!

    TAILLE
    Posts: 968
    Joined: Thu Apr 26, 2007 18:51
    Location: FRANCE

    Post by TAILLE » Wed Jun 27, 2007 00:22

    ildjarn wrote:
    ildjarn wrote:There are some errors in the maximum pages. I have the full databases at work, will generate the maximum positions on tuesday (I have a day off on monday). From what I remember, the maximum length is OK, but the positions given aren't.
    Here are the 3x3 stats, all other stats are correct on Michel's page.

    http://sanguis.xs4all.nl/dammen/endgame/
      In the maximum pages you can see the following position
      Image
      White to move
      My view is that this position is not a winning position. Do you agree ?
      Gérard

      User avatar
      steenslag
      Posts: 1184
      Joined: Sun Sep 21, 2003 10:09
      Contact:

      Post by steenslag » Wed Jun 27, 2007 00:37

      ildjarn wrote:
      ildjarn wrote:There are some errors in the maximum pages. I have the full databases at work, will generate the maximum positions on tuesday (I have a day off on monday). From what I remember, the maximum length is OK, but the positions given aren't.
      Here are the 3x3 stats, all other stats are correct on Michel's page.

      http://sanguis.xs4all.nl/dammen/endgame/
        Link does not work, not even with "www." inserted. Domainname does resolve to an IP-adress; just can't find anything on it.

        BertTuyt
        Posts: 1592
        Joined: Wed Sep 01, 2004 19:42

        Post by BertTuyt » Wed Jun 27, 2007 06:15

        Rein, i use the index function which was developed by Michael Grimminck.
        Because I use the databases distributed by Harm Jetten.
        You can dig into the source when you download the file from the Dragon site.
        I don't know on what work this index function was based.

        Bert

        ildjarn
        Posts: 1537
        Joined: Tue Aug 22, 2006 15:38
        Real name: Joost de Heer

        Post by ildjarn » Wed Jun 27, 2007 09:47

        steenslag wrote:
        Link does not work, not even with "www." inserted. Domainname does resolve to an IP-adress; just can't find anything on it.
        My modem's having problems. I'll fix it tonight.

        EDIT: moved the stats to another webserver: http://www.xs4all.nl/~sanguis/endgame/
          Last edited by ildjarn on Wed Jun 27, 2007 10:43, edited 1 time in total.
          Lasst die Maschinen verhungern, Ihr Narren...
          Lasst sie verrecken!
          Schlagt sie tot -- die Maschinen!

          ildjarn
          Posts: 1537
          Joined: Tue Aug 22, 2006 15:38
          Real name: Joost de Heer

          Post by ildjarn » Wed Jun 27, 2007 10:05

          TAILLE wrote:In the maximum pages you can see the following position
          Image
          White to move
          My view is that this position is not a winning position. Do you agree ?
          Gérard
          Can you indicate where black could reach a draw? I can check Michel's database to see what it says.
          Lasst die Maschinen verhungern, Ihr Narren...
          Lasst sie verrecken!
          Schlagt sie tot -- die Maschinen!

          TAILLE
          Posts: 968
          Joined: Thu Apr 26, 2007 18:51
          Location: FRANCE

          Post by TAILLE » Wed Jun 27, 2007 10:32

          ildjarn wrote:
          TAILLE wrote:In the maximum pages you can see the following position
          Image
          White to move
          My view is that this position is not a winning position. Do you agree ?
          Gérard
          Can you indicate where black could reach a draw? I can check Michel's database to see what it says.
          1.13-36 35-40 2.33-28 40-45 3.26-17 04-15 4.17-06 15-29 5.41-47 29-07 6.47-38 07-12 7.38-20 12-08 8.20-03 08-35 9.03-21 35-49 10.21-08 49-35 11.08-02 35-40 12.02-30 40-07 13.30-43 07-12 14.43-25 12-21 15.25-03 21-16 16.36-13 16-07 17.13-02 07-18 18.02-16 18-01 19.03-17 01-29 20.16-02 29-18 21.02-24 18-36 22.24-47 36-18 23.17-21
          and now not 23...18-07?? as indicated but
          18-09!! 24.21-26 09-18 25.47-33 18-04 26.33-50 04-18 27.26-21 18-04
          and black has managed to impose, just in time, 25 moves without any conversion !!!
          Surely a very remarkable draw.
          Gérard

          ildjarn
          Posts: 1537
          Joined: Tue Aug 22, 2006 15:38
          Real name: Joost de Heer

          Post by ildjarn » Wed Jun 27, 2007 10:45

          In my opinion, for a theoretical evaluation of a position, the 25 move rule shouldn't be used.
          Lasst die Maschinen verhungern, Ihr Narren...
          Lasst sie verrecken!
          Schlagt sie tot -- die Maschinen!

          TAILLE
          Posts: 968
          Joined: Thu Apr 26, 2007 18:51
          Location: FRANCE

          Post by TAILLE » Wed Jun 27, 2007 11:41

          ildjarn wrote:In my opinion, for a theoretical evaluation of a position, the 25 move rule shouldn't be used.
          Hi Ildjarn,

          I see what you mean by theoretical evaluation but can you accept to build a db giving you a “theoretical” result instead of the “real” one, taking into account all the existing rules of the game?

          Of course you can imagine changing the game rules but it is another question and I am not competent for that.

          The question is then the following :
          If you want to buy an endgame db and you have the choice between a “theoretical” db and a “real” db which one will you buy?

          The proposed position is of course very interesting because it proves that you cannot deduce easily the “real” db from the “theoretical” db !

          Gérard

          ildjarn
          Posts: 1537
          Joined: Tue Aug 22, 2006 15:38
          Real name: Joost de Heer

          Post by ildjarn » Wed Jun 27, 2007 11:58

          TAILLE wrote:
          ildjarn wrote:In my opinion, for a theoretical evaluation of a position, the 25 move rule shouldn't be used.
          Hi Ildjarn,

          I see what you mean by theoretical evaluation but can you accept to build a db giving you a “theoretical” result instead of the “real” one, taking into account all the existing rules of the game?

          Of course you can imagine changing the game rules but it is another question and I am not competent for that.

          The question is then the following :
          If you want to buy an endgame db and you have the choice between a “theoretical” db and a “real” db which one will you buy?

          The proposed position is of course very interesting because it proves that you cannot deduce easily the “real” db from the “theoretical” db !

          Gérard
          If you want to build 'real' databases, you shouldn't just build databases with the 25 move rule in your mind in the forward play, but also in the historical play. A position in which the 10 previous moves were king moves must be solved differently than the exact same position in which the previous 15 moves were king moves. In other words, a 'real' database is i.m.o. impossible to build.
          Lasst die Maschinen verhungern, Ihr Narren...
          Lasst sie verrecken!
          Schlagt sie tot -- die Maschinen!

          Ed Gilbert
          Posts: 859
          Joined: Sat Apr 28, 2007 14:53
          Real name: Ed Gilbert
          Location: Morristown, NJ USA
          Contact:

          Post by Ed Gilbert » Wed Jun 27, 2007 13:09

          ildjarn wrote:If you want to build 'real' databases, you shouldn't just build databases with the 25 move rule in your mind in the forward play, but also in the historical play. A position in which the 10 previous moves were king moves must be solved differently than the exact same position in which the previous 15 moves were king moves. In other words, a 'real' database is i.m.o. impossible to build.
          It's true that you cannot assign draw values to positions in your db with DTC less than 50 because their WLD value can depend on the path you took to get to them. But any position with a DTC value greater than 50 could be assigned as a draw. The combination of the database and your engine could then correctly navigate towards a drawn solution, even in positions where your db might say its a loss. I did not do anything about this 50 ply rule in my db, and I do not think it is worth troubling over. The number of DTC > 50 positions in the 7-piece db is small, and the probability of playing into one of these in a game is pretty close to 0.

          -- Ed

          ildjarn
          Posts: 1537
          Joined: Tue Aug 22, 2006 15:38
          Real name: Joost de Heer

          Post by ildjarn » Wed Jun 27, 2007 13:25

          Ed Gilbert wrote:The number of DTC > 50 positions in the 7-piece db is small, and the probability of playing into one of these in a game is pretty close to 0.
          And the probability that players actually play these kind of endgames perfectly is even smaller.

          For computer-tourneys the 25-move rule would be useless anyway, because all programs use databases nowadays (or is that forbidden during a computer tourney? Not likely but you never know...)
            Lasst die Maschinen verhungern, Ihr Narren...
            Lasst sie verrecken!
            Schlagt sie tot -- die Maschinen!

            TAILLE
            Posts: 968
            Joined: Thu Apr 26, 2007 18:51
            Location: FRANCE

            Post by TAILLE » Wed Jun 27, 2007 13:45

            Ed Gilbert wrote:
            ildjarn wrote:If you want to build 'real' databases, you shouldn't just build databases with the 25 move rule in your mind in the forward play, but also in the historical play. A position in which the 10 previous moves were king moves must be solved differently than the exact same position in which the previous 15 moves were king moves. In other words, a 'real' database is i.m.o. impossible to build.
            It's true that you cannot assign draw values to positions in your db with DTC less than 50 because their WLD value can depend on the path you took to get to them. But any position with a DTC value greater than 50 could be assigned as a draw. The combination of the database and your engine could then correctly navigate towards a drawn solution, even in positions where your db might say its a loss. I did not do anything about this 50 ply rule in my db, and I do not think it is worth troubling over. The number of DTC > 50 positions in the 7-piece db is small, and the probability of playing into one of these in a game is pretty close to 0.

            -- Ed
            Hi Ed, Ildjarn
            I don't see your point. Why a real db is impossible to build?

            My view is that it is very easy to take into account the 25 moves rule and, in addition it is faster for the generation process itself ! So why introduce some errors in the db saying that the concerned positions remains exeptionnal ?

            If you have just made 15 moves without any conversion you are in fact in the db for 15 moves.
            The point is the following : the moment you enter the db you use in fact only the "real WLD db" then, after a non conversion move, you have to take into account the "DTC db" with witch you can take into account the historical play.

            Starting with the following position
            Image
            After 1.13-36 the real WLD db tells us that 1…35-40! is the only move to obtain the draw then after 2.33-28 the real WLD db tells us that 40-45! is again the only move to obtain the draw. After 3.26-17 we reach a key point. The WLD real db tells us that the position is lost for black (witch looks like a contradiction) but, due to the fact that the previous move was not a conversion move, we have here to use the DTC db. This DTC db tells us that it remains 49 plies before the next conversion and the main engine can then conclude that black can obtain the draw by playing 04-15!!
            After 4.17-06 15-29 5.41-47 29-07 6.47-38 07-12 7.38-20 12-08 8.20-03 08-35 9.03-21 35-49 10.21-08 49-35 11.08-02 35-40 12.02-30 40-07 13.30-43 07-12 14.43-25 12-21 15.25-03 21-16 16.36-13 16-07 17.13-02 07-18 18.02-16 18-01 19.03-17 01-29 20.16-02 29-18 21.02-24 18-36 22.24-47 36-18 23.17-21
            though the WLD db continues to tell us that the position is lost for black, the DTC db tells us that it remains 9 plies before the next conversion and that means that the position is a draw due to the existence of the 41 last moves without any conversion. 23…18-09!! is the only move to obtain this draw.

            Do you think there is something wrong here ? With a good use of “real” WLD db and DTC db it seems to me that it is possible to build a “real” db.
            Gérard

            TAILLE
            Posts: 968
            Joined: Thu Apr 26, 2007 18:51
            Location: FRANCE

            Post by TAILLE » Wed Jun 27, 2007 14:02

            ildjarn wrote:
            Ed Gilbert wrote:The number of DTC > 50 positions in the 7-piece db is small, and the probability of playing into one of these in a game is pretty close to 0.
            And the probability that players actually play these kind of endgames perfectly is even smaller.

            For computer-tourneys the 25-move rule would be useless anyway, because all programs use databases nowadays (or is that forbidden during a computer tourney? Not likely but you never know...)
              Just a theretical question for computer tournament. Let's suppose that the position
              Image
              white to move
              is reach at the exact moment we have to stop the game and to ask the referee for the result (typically 75 moves have been played).
              What will be the decision of the referee seeing that different db give different results ? I do not know, but I guess he will let the game continue waiting for a clear win or an application of the 25 move rule ?
              What will you do yourself as referee ?
              Gérard

              Post Reply