Flits Dxp Server
-
- Posts: 190
- Joined: Sun Sep 13, 2009 23:33
- Real name: Jan-Jaap van Horssen
- Location: Zeist, Netherlands
Re: Flits Dxp Server
Ed,
Great job! Thanks N times! (where N equals the number of automatic games, 42 so far...)
The Truus DXP server works fine.
Two remarks about the Flits DXP server:
1. The -i option doesn't seem to work properly.
flits_dxp_server -i doesn't initiate a 158 game match
flits_dsp_server -c -h 127.0.0.1 on the other hand does, even without -i
This is not a big problem.
2. It seems impossible to play a single game where Flits plays white (GAMEREQ with follower color 'W').
The first move from Flits is not seen by flits_dxp_server and not sent to the other program.
This is a pity!
I also noticed Flits making terrible moves every once in a while. Usually in endgame positions, but how about this one:
[FEN "B:W27,28,32,34,35,37,38,39,40,43,48:B3,6,8,13,15,16,19,20,21,23,24."]
34...23-29?? 35.34x25
My program ABCdam (new name Maximus) is under construction. When I have a new version to test I will play the 158 game matches against Truus and Flits.
Jan-Jaap
Great job! Thanks N times! (where N equals the number of automatic games, 42 so far...)
The Truus DXP server works fine.
Two remarks about the Flits DXP server:
1. The -i option doesn't seem to work properly.
flits_dxp_server -i doesn't initiate a 158 game match
flits_dsp_server -c -h 127.0.0.1 on the other hand does, even without -i
This is not a big problem.
2. It seems impossible to play a single game where Flits plays white (GAMEREQ with follower color 'W').
The first move from Flits is not seen by flits_dxp_server and not sent to the other program.
This is a pity!
I also noticed Flits making terrible moves every once in a while. Usually in endgame positions, but how about this one:
[FEN "B:W27,28,32,34,35,37,38,39,40,43,48:B3,6,8,13,15,16,19,20,21,23,24."]
34...23-29?? 35.34x25
My program ABCdam (new name Maximus) is under construction. When I have a new version to test I will play the 158 game matches against Truus and Flits.
Jan-Jaap
www.maximusdraughts.org
-
- Posts: 859
- Joined: Sat Apr 28, 2007 14:53
- Real name: Ed Gilbert
- Location: Morristown, NJ USA
- Contact:
Re: Flits Dxp Server
Hi Jan-Jaap,
I am glad to hear that you are using the dxp servers. It certainly is a lot easier to use DamExchange than to play a large number of games manually.
It has already played a few games, the follower color has alternated after each game. Also, whenever I play a long match between kingsrow and flits, I usually make kingsrow the initiator and flits the follower, and these games also alternate the follower color every game. If you like I can try to help you get this going. Tell me what command line you used to start the flits server, what the Initiator program is (ABCDam or something else), what startup messages are exchanged, etc.
-- Ed
I am glad to hear that you are using the dxp servers. It certainly is a lot easier to use DamExchange than to play a large number of games manually.
You are right in one sense. The -i (Iniitiator) option does not work properly unless the flits server is also acting as the client and the remote program is already listening for a connection. So if you use -i along with -c, -h, -m, and -t, then the match will start up properly. If you use -i by itself, that is asking the flits server to be an Initiator but also be a listener (server) to establish the connection. In that mode it does not start up correctly as an Initiator, and also if it receives a GAMEREQ message it will probably switch to acting as a follower. I apologize for not documenting that combination.Two remarks about the Flits DXP server:
1. The -i option doesn't seem to work properly.
flits_dxp_server -i doesn't initiate a 158 game match
flits_dsp_server -c -h 127.0.0.1 on the other hand does, even without -i
This is not a big problem.
I cannot reproduce this problem. I just started a match against kingsrow using this command line:2. It seems impossible to play a single game where Flits plays white (GAMEREQ with follower color 'W').
The first move from Flits is not seen by flits_dxp_server and not sent to the other program.
This is a pity!
Code: Select all
flits_dxp_server -i -c -h 127.0.0.1 -t 5 -m 75
Wow, that's terrible! Flits is a good program though in spite of these occasional glitches. It's stronger than Truus and has a nicer user interface.I also noticed Flits making terrible moves every once in a while. Usually in endgame positions, but how about this one:
I hope to see it some time. What can you tell us about ABCdam or Maximus? What language is it written in? What framework (if any) is the user interface using?My program ABCdam (new name Maximus) is under construction. When I have a new version to test I will play the 158 game matches against Truus and Flits.
-- Ed
-
- Posts: 190
- Joined: Sun Sep 13, 2009 23:33
- Real name: Jan-Jaap van Horssen
- Location: Zeist, Netherlands
Re: Flits Dxp Server
Hi Ed,
No apologies necessary
What I was trying to do is:
1. start Flits (with the recommended GUI settings)
2. start flits_dxp_server (without any parameters)
3. start Maximus and connect to flits_dxp_server
This all works fine.
4. initiate a (one) new game against Flits from the Maximus GUI, with Flits either black (works) or white (does not work)
In the latter case, Flits playing white, the dxp server says something like
GAMEREQ from Maximus; time 1; moves 75; start position is GAYP; Flits plays white
Sent: "AFlits...0"
to flits: fw
and waits for Flits to move. However, When Flits plays its move (1.34-30), nothing happens. When Flits plays black, it works.
I did some more testing and found out that I can play one game (Maximus being the initiator) and Flits playing white - if I use a setup with one of the 79 ballots. (nice feature by the way)
So it happens only if the position is GAYP and Flits has to play white. So this is not a big problem either.
I agree on Truus and Flits. What hash table settings do you use for Flits?
ABCdam and Maximus are written in Java. For a screenshot of ABCdam see Leo Nagels site http://home.planet.nl/~nagel580/Compdam/hs3180.htm.
The user interface was built using the Netbeans GUI builder (Matisse). I wrote my own Java implementation of DamExchange (and PDN). I posted my perft results before (still waiting for the 64-bit Java compiler).
ABCdam competed in the Leiden 2009 tournament (9th place). It used a simple parallel search algorithm (PVsplit). It also still counted capture moves in the search depth, followed by a quiescence search. Probably due to my past as a chess player and programmer. Two years ago I rediscovered this old hobby making a cat-and-mouse game for my son, then just for fun added a move generator for draughts (which is played on the same bord) and then you know what happens.
Yes, I look forward to playing Kingsrow in the future!
Jan-Jaap
No apologies necessary
I meant one game, apart from a match. Playing matches works fine, both Flits-Truus and Flits-Maximus, tested for a couple of games with Flits playing white and black.It seems impossible to play a single game where Flits plays white ...
What I was trying to do is:
1. start Flits (with the recommended GUI settings)
2. start flits_dxp_server (without any parameters)
3. start Maximus and connect to flits_dxp_server
This all works fine.
4. initiate a (one) new game against Flits from the Maximus GUI, with Flits either black (works) or white (does not work)
In the latter case, Flits playing white, the dxp server says something like
GAMEREQ from Maximus; time 1; moves 75; start position is GAYP; Flits plays white
Sent: "AFlits...0"
to flits: fw
and waits for Flits to move. However, When Flits plays its move (1.34-30), nothing happens. When Flits plays black, it works.
I did some more testing and found out that I can play one game (Maximus being the initiator) and Flits playing white - if I use a setup with one of the 79 ballots. (nice feature by the way)
So it happens only if the position is GAYP and Flits has to play white. So this is not a big problem either.
I agree on Truus and Flits. What hash table settings do you use for Flits?
ABCdam and Maximus are written in Java. For a screenshot of ABCdam see Leo Nagels site http://home.planet.nl/~nagel580/Compdam/hs3180.htm.
The user interface was built using the Netbeans GUI builder (Matisse). I wrote my own Java implementation of DamExchange (and PDN). I posted my perft results before (still waiting for the 64-bit Java compiler).
ABCdam competed in the Leiden 2009 tournament (9th place). It used a simple parallel search algorithm (PVsplit). It also still counted capture moves in the search depth, followed by a quiescence search. Probably due to my past as a chess player and programmer. Two years ago I rediscovered this old hobby making a cat-and-mouse game for my son, then just for fun added a move generator for draughts (which is played on the same bord) and then you know what happens.
Yes, I look forward to playing Kingsrow in the future!
Jan-Jaap
www.maximusdraughts.org
-
- Posts: 859
- Joined: Sat Apr 28, 2007 14:53
- Real name: Ed Gilbert
- Location: Morristown, NJ USA
- Contact:
Re: Flits Dxp Server
Hi Jan-Jaap,
I think I understand the problem now. I never use the normal start position in my testing, always the 2-move ballots, so no doubt there is some bug in setting the follower color with the GAYP start.
Thanks for the info about Maximus. It looks nice, and even a parallel search!
-- Ed
I think I understand the problem now. I never use the normal start position in my testing, always the 2-move ballots, so no doubt there is some bug in setting the follower color with the GAYP start.
I have been using 64mb which I assume is sufficient for relatively quick games of 5min/75 moves.I agree on Truus and Flits. What hash table settings do you use for Flits?
Thanks for the info about Maximus. It looks nice, and even a parallel search!
-- Ed
-
- Posts: 62
- Joined: Mon Apr 20, 2009 01:10
- Contact:
Re: Flits Dxp Server
There a way to watch the games as a spectator?
Re: Flits Dxp Server
No there is not a possibility to watch as a spectator (only possible for the computer(s) involved ).
However I hope (some day) that we are able to play Tournaments via the Internet , where all can watch , and can participate.
Hope that Ed has some spare time to program this in an afternoon
Bert
However I hope (some day) that we are able to play Tournaments via the Internet , where all can watch , and can participate.
Hope that Ed has some spare time to program this in an afternoon
Bert
-
- Posts: 859
- Joined: Sat Apr 28, 2007 14:53
- Real name: Ed Gilbert
- Location: Morristown, NJ USA
- Contact:
Re: Flits Dxp Server
Jan-Jaap, I fixed the 2 bugs you reported. I'll update the files on the web after I've had a chance to run it through all the various combinations of black/white, initiator/follower, client/server, gayp/2-move, etc.
-- Ed
-- Ed
-
- Posts: 859
- Joined: Sat Apr 28, 2007 14:53
- Real name: Ed Gilbert
- Location: Morristown, NJ USA
- Contact:
Re: Flits Dxp Server
Hi Ed,
-- Ed
Unfortunately no, that would be nice though. If you want to see what an engine match looks like you can run your copy of kingsrow against dam2.2. Dam isn't as strong as flits but it is a free download and it has a nice implementation of DamExchange. Look under DamExchange in the kingsrow help for info on starting a match. A specific example is given of running a match against dam2.2.There a way to watch the games as a spectator?
-- Ed
-
- Posts: 859
- Joined: Sat Apr 28, 2007 14:53
- Real name: Ed Gilbert
- Location: Morristown, NJ USA
- Contact:
Re: Flits Dxp Server
I put a new Flits dxp server package at the web site. It fixes the 2 bugs that Jan-Jaap reported, and I also added a "new match" (-n) option that deletes at startup the two files that the server writes.
-- Ed
-- Ed
-
- Posts: 190
- Joined: Sun Sep 13, 2009 23:33
- Real name: Jan-Jaap van Horssen
- Location: Zeist, Netherlands
Re: Flits Dxp Server
Ed,
Thanks, everything works fine now.
What hash table settings do you recommend for a match between Truus and Flits @ 75 moves in 9 minutes?
And how many positions do you think they can store in 1 Mb? Java (Maximus) has more memory overhead I guess.
Do you know the effect of changing the Truus 'Partijen Database Ruimte' from 4 M to the maximum of 35 M?
My copy of Flits was damaged (I have to wait for a new CD) so I could only do a partial installation. It seems to run correctly though, after I copied the missing .dat files from Turbo Dambase Flits. Does it have an opening book? This seems empty.
It keeps making these terrible mistakes.
69. 1-34?? 30x39
Four of those in 20 games Flits versus Maximus! (score not public yet
This is pretty significant. Do you count these as losses or do you correct for glitches?
Jan-Jaap
Thanks, everything works fine now.
What hash table settings do you recommend for a match between Truus and Flits @ 75 moves in 9 minutes?
And how many positions do you think they can store in 1 Mb? Java (Maximus) has more memory overhead I guess.
Do you know the effect of changing the Truus 'Partijen Database Ruimte' from 4 M to the maximum of 35 M?
My copy of Flits was damaged (I have to wait for a new CD) so I could only do a partial installation. It seems to run correctly though, after I copied the missing .dat files from Turbo Dambase Flits. Does it have an opening book? This seems empty.
It keeps making these terrible mistakes.
69. 1-34?? 30x39
Four of those in 20 games Flits versus Maximus! (score not public yet
This is pretty significant. Do you count these as losses or do you correct for glitches?
Jan-Jaap
www.maximusdraughts.org
-
- Posts: 859
- Joined: Sat Apr 28, 2007 14:53
- Real name: Ed Gilbert
- Location: Morristown, NJ USA
- Contact:
Re: Flits Dxp Server
Hi JJ,
-- Ed
I use 8000 16K blocks (~128mb). I have no idea how big a hashtable entry is in Truus. IIRC I just kept increasing this setting until it would not accept a larger number . The docs on Truus are very skimpy.What hash table settings do you recommend for a match between Truus and Flits @ 75 moves in 9 minutes?
And how many positions do you think they can store in 1 Mb? Java (Maximus) has more memory overhead I guess.
I have no idea, but I set this to 64mb, assuming that this is the egdb cache size and the bigger the better.Do you know the effect of changing the Truus 'Partijen Database Ruimte' from 4 M to the maximum of 35 M?
If you have any question about missing files I can email you my Flits directory listing and also send you any files that might still be missing. I have not been successful in enabling an opening book in either Flits or Truus, although I have certainly tried and also asked for help doing it here on this forum. Truus obviously has a large database of games which it could use as an opening book, and I think it had some commands that looked like they were opening book commands, but I could never get it to play moves from that database.It seems to run correctly though, after I copied the missing .dat files from Turbo Dambase Flits. Does it have an opening book? This seems empty.
I wonder if the frequency of these errors is related to the hashtable or egdb cache size, as I see them with much lower frequency. Another possibility is that I terminate games much sooner than you because I am usually using a large endgame database, so I might be avoiding these bugs by not playing out the endings. I do not correct for these, I count them as they occur. I typically see only 2 or 3 in a match of 158 games, based on a couple of matches where I actually checked to see how many occured. I don't usually take the trouble to check though, so I may have had matches where there are more.Four of those in 20 games Flits versus Maximus! (score not public yet
This is pretty significant. Do you count these as losses or do you correct for glitches?
-- Ed
Re: Flits Dxp Server
I get the impression (but i might be wrong), that these errors occur when (for what ever reason) Flits plays a tempo (so without thinking).
Good you confirm this (difficult when you don't observe directly all games during a match)...
Bert
Good you confirm this (difficult when you don't observe directly all games during a match)...
Bert
-
- Posts: 859
- Joined: Sat Apr 28, 2007 14:53
- Real name: Ed Gilbert
- Location: Morristown, NJ USA
- Contact:
Re: Flits Dxp Server
Bert, I think you are right, when I have seen these errors playing games manually it seems that Flits was pondering the move kingsrow made so it was able to move as soon as I entered kingsrow's move. Maybe a pondering bug. A pity that pondering cannot be turned off...BertTuyt wrote:I get the impression (but i might be wrong), that these errors occur when (for what ever reason) Flits plays a tempo (so without thinking).
Good you confirm this (difficult when you don't observe directly all games during a match)...
-- Ed
-
- Posts: 190
- Joined: Sun Sep 13, 2009 23:33
- Real name: Jan-Jaap van Horssen
- Location: Zeist, Netherlands
Re: Flits Dxp Server
Ed,
Bert,
Jan-Jaap
The documentation says this is for the file trubase.tp, so using the file size of 35,342 K is sufficient.I have no idea, but I set this to 64mb, assuming that this is the egdb cache size and the bigger the better.
That would be great!If you have any question about missing files I can email you my Flits directory listing and also send you any files that might still be missing.
I think so too. It mainly happens in/near 6 piece endings. The one in my first post is the exception.Another possibility is that I terminate games much sooner than you because I am usually using a large endgame database, so I might be avoiding these bugs by not playing out the endings.
Bert,
I watched it happen a couple of times when Flits used a lot of time, seeing the right (winning) move/value, then suddenly changed its mind and played a losing move.I get the impression (but i might be wrong), that these errors occur when (for what ever reason) Flits plays a tempo (so without thinking).
Good you confirm this (difficult when you don't observe directly all games during a match)...
Jan-Jaap
www.maximusdraughts.org
-
- Posts: 190
- Joined: Sun Sep 13, 2009 23:33
- Real name: Jan-Jaap van Horssen
- Location: Zeist, Netherlands
Re: Flits Dxp Server
Hi all,
Credits to Ed, Bert and Harm, I played a "litte" 158 ballot game DamExchange tournament with Flits, Truus and Dam2.2 (free download). The results I would like to share with you.
The computer I used is a desktop Intel core duo E8400 3.0GHz with 4Gb RAM, running Windows XP pro x64.
Program settings
- Flits : 75 moves in 9 min (and pondering), 6p databases, 128Mb hash table (160 Mb vs. Dam2.2)
- Truus : 75 moves in 9 min (and pondering), 6p databases, 128Mb hash table (160 Mb vs. Dam2.2)
- Dam2.2: 75 moves in 12 min (no pondering), 6p databases, 24Mb hash table
The matches Truus vs. Dam2.2 and Flits vs. Dam2.2 were played with Dam2.2 as initiator, using the file 2move_ballots.pdn. Using setup positions seems to disable the Dam2.2 opening book, so in fact none of the three programs uses an opening book. Dam2.2 stops a game when there are 6 or less pieces on the board, giving reliable game results.
The match Flits vs. Truus was played with the truus_dxp_server -a option. I checked the outcomes and had to correct 7 results from draws into wins/losses.
Here are the results of the tournament.
Round 1. Truus vs. Dam2.2 60 wins, 2 losses, 96 draws
Round 2. Flits vs. Dam2.2 78 wins, 6 losses, 74 draws
Round 3. Flits vs. Truus 13 wins, 10 losses, 135 draws
The games between Flits and Dam2.2 were played "to the end" (6 pieces or less). This gives Flits the opportunity to make more glitches. I found 5, all in/near database positions. All causing a draw position to be lost. I only found one glitch by Flits vs. Truus, again making a losing move in a draw ending (#6 below).
Final standings (Flits glitches not corrected):
1. Flits 391 pts 1.237 avg
2. Truus 371 pts 1.174 avg
3. Dam2.2 186 pts 0.583 avg
To see if having a much larger hash table makes a big difference, I also played a match Truus vs. Dam2.2 with a Truus hash table of 24Mb, equal to Dam2.2. (At the same time raising the 'partijendatabase ruimte' from 4 to 36Mb, effect unknown to me.) The result shows little difference:
Truus/24Mb vs. Dam2.2 57 wins, 0 losses, 101 draws
I noticed a difference with the Flits vs. Truus match played by Ed, more draws on my side. It would be interesting if a number of people could repeat this experiment, so we can see if there is much difference (randomness) in the outcomes.
Maybe we can even make a benchmark out of this: see how many points a program scores on the 474 game FTD benchmark (under some standard conditions) gives a good indication of its playing strength. In addition to internet engine matches, this can help in determining more reliable and up to date estimates for program ratings.
Anyway, it is great that any draughts programmer implementing DamExchange now can run automated matches against these programs!
Jan-Jaap
P.S.
In case somebody is interested in the glitch positions:
1. [FEN "B:W29,32,34:B8,13,31."] 1. ... 31-37
2. [FEN "B:W6,34,38:B12,13,26,28."] 1. ... 28-32 2. 38x27 26-31 3. 27x36
3. [FEN "B:W18,23,36,39:B1,3,6,35."] 1. ... 35-40 2. 39-34 40x29 3. 23x34 6-11
4. [FEN "W:W29,37,47:B17,19,36."] 1. 47-41
5. [FEN "W:W31,39,50:B8,24,45."] 1. 50-44
6. [FEN "B:W14,21,40:B6,11,24."] 1. ... 24-30
Credits to Ed, Bert and Harm, I played a "litte" 158 ballot game DamExchange tournament with Flits, Truus and Dam2.2 (free download). The results I would like to share with you.
The computer I used is a desktop Intel core duo E8400 3.0GHz with 4Gb RAM, running Windows XP pro x64.
Program settings
- Flits : 75 moves in 9 min (and pondering), 6p databases, 128Mb hash table (160 Mb vs. Dam2.2)
- Truus : 75 moves in 9 min (and pondering), 6p databases, 128Mb hash table (160 Mb vs. Dam2.2)
- Dam2.2: 75 moves in 12 min (no pondering), 6p databases, 24Mb hash table
The matches Truus vs. Dam2.2 and Flits vs. Dam2.2 were played with Dam2.2 as initiator, using the file 2move_ballots.pdn. Using setup positions seems to disable the Dam2.2 opening book, so in fact none of the three programs uses an opening book. Dam2.2 stops a game when there are 6 or less pieces on the board, giving reliable game results.
The match Flits vs. Truus was played with the truus_dxp_server -a option. I checked the outcomes and had to correct 7 results from draws into wins/losses.
Here are the results of the tournament.
Round 1. Truus vs. Dam2.2 60 wins, 2 losses, 96 draws
Round 2. Flits vs. Dam2.2 78 wins, 6 losses, 74 draws
Round 3. Flits vs. Truus 13 wins, 10 losses, 135 draws
The games between Flits and Dam2.2 were played "to the end" (6 pieces or less). This gives Flits the opportunity to make more glitches. I found 5, all in/near database positions. All causing a draw position to be lost. I only found one glitch by Flits vs. Truus, again making a losing move in a draw ending (#6 below).
Final standings (Flits glitches not corrected):
1. Flits 391 pts 1.237 avg
2. Truus 371 pts 1.174 avg
3. Dam2.2 186 pts 0.583 avg
To see if having a much larger hash table makes a big difference, I also played a match Truus vs. Dam2.2 with a Truus hash table of 24Mb, equal to Dam2.2. (At the same time raising the 'partijendatabase ruimte' from 4 to 36Mb, effect unknown to me.) The result shows little difference:
Truus/24Mb vs. Dam2.2 57 wins, 0 losses, 101 draws
I noticed a difference with the Flits vs. Truus match played by Ed, more draws on my side. It would be interesting if a number of people could repeat this experiment, so we can see if there is much difference (randomness) in the outcomes.
Maybe we can even make a benchmark out of this: see how many points a program scores on the 474 game FTD benchmark (under some standard conditions) gives a good indication of its playing strength. In addition to internet engine matches, this can help in determining more reliable and up to date estimates for program ratings.
Anyway, it is great that any draughts programmer implementing DamExchange now can run automated matches against these programs!
Jan-Jaap
P.S.
In case somebody is interested in the glitch positions:
1. [FEN "B:W29,32,34:B8,13,31."] 1. ... 31-37
2. [FEN "B:W6,34,38:B12,13,26,28."] 1. ... 28-32 2. 38x27 26-31 3. 27x36
3. [FEN "B:W18,23,36,39:B1,3,6,35."] 1. ... 35-40 2. 39-34 40x29 3. 23x34 6-11
4. [FEN "W:W29,37,47:B17,19,36."] 1. 47-41
5. [FEN "W:W31,39,50:B8,24,45."] 1. 50-44
6. [FEN "B:W14,21,40:B6,11,24."] 1. ... 24-30
www.maximusdraughts.org