Feike Boomstra 's Horizon Draughts Program

Discussion about development of draughts in the time of computer and Internet.
Post Reply
TAILLE
Posts: 968
Joined: Thu Apr 26, 2007 18:51
Location: FRANCE

Re: Feike Boomstra 's Horizon Draughts Program

Post by TAILLE » Mon Mar 28, 2011 09:09

Hi Bert,
BertTuyt wrote:This weekend I read an interesting analysis from Ton Sijbrands (interesting as usual).
He discussed the game Mor Seck - Baljakin.
Especially the next position is interesting (black to play)

Image

The (apparently) winning move from Baljakin was 16-21!!.
Although a sacrifice, basically now with 2 black man , 5 white man are trapped ( so very much in line with our recent discussion that it is important to detect these type of patterns).

Damage did not find this winning move, and also did not find a draw in the later moves.

Maybe other programs do better here.

Bert
In the following diagram (built by removing white 16 and black 1, after the sacrifice 16-21) Damy is now able to detect that 5 white men are trapped by 2 black men and the static Damy evaluation concludes to a small advantage for black though black is a man down.

Image

By adding the white man on 16 (and the black man on 1) the curent Damy calculation is not (yet) able to recognize that 5 white men are still trapped by 2 black men. I continue to work on the automatic pattern detection but a lot of problem have to be solved. Anyway I am very optimistic.
Gérard

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

Re: Feike Boomstra 's Horizon Draughts Program

Post by BertTuyt » Thu Apr 14, 2011 22:08

I'm now working on a new GUI based on the older Damage 2000 version.
Later I will built a wrapper around Horizon so it can communicate via the (TCP/IP) GUIDE-protocol.
Hope to have a beta available around Jun for download.
In the next months I will also work on a DGT (digital Draughts Board) implementation.

Will keep you all posted...

Bert

[img]
http://members.chello.nl/h.tuyt/Damage2000.jpg
[/img]

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

Re: Feike Boomstra 's Horizon Draughts Program

Post by BertTuyt » Mon Aug 01, 2011 22:15

I have now made a Hybrid Version of Horizon (based on Damage Search & MoveGen and Horizon Evaluation), which I want to distribute.
The Hybrid uses a conversion routine as the Damage bit-numbering is slightly different , and as I didn't want to change the Horizon eval, I needed to fill the complete node structure.

I guess I can also redefine the FLDs defines in Horizon, but as a first start I did not do this.

To test robustness and to get an initial idea of the Hybrid strength, which I called Horizon 4.0, I played a 158 games match against Kingsrow.
Settings 10 minutes for 65 moves, no pondering. Single thread search. Kingsrow used the 6p DB, whereas Horizon 4.0 used the 7p DB (i still need to add the option to set the piece-level of an endgame DB).

Games were played via DXP. The new Damage 2011 GUI does not have this option yet, but the DXP routines are also included in the engine.
Both programs were 64bit versions, and the computer was equipped with 12 MByte Memory, and a i7 940 2.9 Ghz Intel processor.
Horizon was the initiator, Kingsrow follower.
I found out (but maybe it was my fault, using wrong settings) that in following mode, Kingsrow does not save games (?), and also does not update the Match stats.
On the other hand, Kingsrow still stops games based on own analysis (like D W L). As a side result almost all the games in the pdn have an unknown results, ans I had to browse trough all games to find the result.

Anyway , the match result is : KingsRow - Horizon: 103 draws and 55 wins for Kingsrow.

As i have seen in between strange scores from Horizon, there is obviously room for improvement.
Also (think Ed also observed this), the Horizon eval is quite heavy.
Compared with Damage i lost almost 50% of the nodes/second ( so now slightly above 1MNodes/second)!

But the good news, both programs did not crash!
So apparently the implementation seems to be stable...

Bert

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

Re: Feike Boomstra 's Horizon Draughts Program

Post by Ed Gilbert » Tue Aug 02, 2011 14:02

Hi Bert,

Thanks for posting the match results. About the games and stats file for kingsrow as follower, you will find them in a subdirectory under your user documents directory. It has all the games and the correct WLD result pdn headers. It also sends the result codes to the initiator in the DXP_GAMEEND message when it decides to adjudicate a game, so your initiator code can capture these and be aware of the current match stats as they are updated.

-- Ed

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

Re: Feike Boomstra 's Horizon Draughts Program

Post by BertTuyt » Tue Aug 02, 2011 19:46

Thanks Ed.

I have found the directory, but..... only could find a file with 1 pdn :)
So i might have overwritten the old result, or whatever.

Anyway 50+ losses is something to work on, as I want to be on par with Truus/Flits.
To beat Kingsrow in a match, is for the time being, a bridge too far.

Whats the ballpark figure I need to compete with the 2 mentioned programs?
And whats based on calculations now the Elo-difference between Horizon 4.0 and Kingsrow?
Whats your Hybrid result, I guess somewhat better as I believe your search is sill better compared with Damage?

Bert

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

Re: Feike Boomstra 's Horizon Draughts Program

Post by Ed Gilbert » Wed Aug 03, 2011 01:03

Bert,

A couple of months ago I distributed an updated and stronger version of kingsrow. As part of the testing, I played a large number of games against truus and flits. The pdn files of all the games, and a readme file that describes the setup and parameters for the matches can be found in this zip file: http://www.edgilbert.org/InternationalD ... 0flits.zip
Results:
Kingsrow 1.50c vs Truus: 58 wins, 2 losses, 98 draws, 0 unknowns
Kingsrow 1.50c vs Truus: 43 wins, 0 losses, 114 draws, 1 unknowns
Kingsrow 1.50c vs Truus: 48 wins, 0 losses, 108 draws, 2 unknowns
Kingsrow 1.50c vs Truus: 41 wins, 1 losses, 115 draws, 1 unknowns
Kingsrow 1.50c vs Truus: 40 wins, 1 losses, 115 draws, 2 unknowns
Kingsrow 1.51 vs Truus: 48 wins, 0 losses, 109 draws, 1 unknowns

Kingsrow 1.51 vs Flits: 33 wins, 0 losses, 124 draws, 1 unknowns
Kingsrow 1.51 vs Flits: 32 wins, 0 losses, 126 draws, 0 unknowns
Kingsrow 1.51 vs Flits: 37 wins, 0 losses, 121 draws, 0 unknowns
Kingsrow 1.51 vs Flits: 23 wins, 4 losses, 131 draws, 0 unknowns
Kingsrow 1.51 vs Flits: 35 wins, 0 losses, 123 draws, 0 unknowns
Kingsrow 1.51 vs Flits: 37 wins, 2 losses, 118 draws, 1 unknowns

Your hybrid results are in the same ballpark as truus, but as you can see there is a lot of variation in the matches and you really need to play more games. Also I think it is difficult to compare one lopsided result against another. You will probably get a better indication of relative strengths by playing the hybrid directly against truus and flits.

I used to get about a 3:1 ratio of wins to losses playing kingsrow against the hybrid of kingsrow search and horizon eval, but with the updated kingsrow the ratio increased to something between 4:1 and 5:1. It was several months ago and I cannot remember the exact results now. It was a lot of games, 988 x 8 = 7904, at short time controls, playing 8 parallel matches on an 8-core machine.

-- Ed

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

Re: Feike Boomstra 's Horizon Draughts Program

Post by BertTuyt » Fri Aug 26, 2011 23:01

I have now a beta version available of the Hybrid Horizon/Damage Engine (Horizon Eval from Feike Boomstra, and Search/Movegen from Damage) named Horizon 4.0 and the new Damage 2011 GUI.

I don't have a install package yet (just a zip file).
Included (only) a few DB-files (2P, 3P and 4P) to limit the size of the download (although the DB-handler is able to process the 7P DB).
Guess there are still several bugs (known :D and unknown :( .
If someone is interested in testing just drop me a line ( h.tuyt AT chello.nl), and I will sent the link and/or the zip-file.

For developers, I will also share the engine sources (Search, Eval, Movegenerator) for who is interested.......

Note: The engine only runs on Windows 64Bit (and around 2 GByte memory), as I did not yet optimize the (64Bit) bit-operations for WIN32.

Bert

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

Re: Feike Boomstra 's Horizon Draughts Program

Post by BertTuyt » Sat Aug 27, 2011 13:28

Maybe not difficult to find, and the position was already quite bad, but I was at least a little surprised when the program announced absolute win....

Bert

Image

Black to play:

34. ........ 27-32
35. 38x16 28-32
36. 37x17 18-23
37. 29x 9 20x49
38. 9x20 15x24
39. 30x19 8-12
40. 17x 8 7-11
41. 16x 7 26-31
42. 36x27 49x46

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

Re: Feike Boomstra 's Horizon Draughts Program

Post by BertTuyt » Wed Aug 31, 2011 22:24

Thanks to the feedback of several testers, I have encountered a few problems/bugs in both the GUI as the Engine (and most likely not the last ones):

- The GUI does activate the engine, and the Engine goes through its normal start-up sequence (ending with engineok) , but then the GUI crashes and/or disappears. At least in Windows 7 64 bit edition.
- In Windows XP 64 an error message in seen during startup.

At least I could reproduce the Windows 7 error when I deleted the Damage2011 entry in the registry. As for most users (who did not install a previous older version of the Damage2011 GUI) this is the case, I at least can try do dig into this issue. I normally don't see this as i'm developing for quite some time with a filled Registry.

- The Horizon 4.0 Engine uses some SSE4 instructions (for example _popcnt ) which are available on new intel i7 processors (like my i7 940), but not on older quadcores like the Q6600. I tried to remove the SSE4 instructions, but need final confirmation that all now works (from an Engine perspective).

Will keep you all posted, when i have uploaded a modified (and I hope) improved version.

Bert

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

Re: Feike Boomstra 's Horizon Draughts Program

Post by BertTuyt » Thu Sep 01, 2011 23:10

At least there is now 1 tester who succeeded to run the most recent version in Windows 7 64bit. So I hope that this will be confirmed by other testers with this Windows Version.
The version does not work (yet) on Ed's computer, so we hope to learn and improve also in that case.

Next to the "obvious" part in getting the programs ( GUI & Engine) to run on all the different systems (for the time being 64bit), also functionality will be tested, and I expect several bugs will be found.
For people who want to have the download address, just drop me an email at h.tuyt AT chello.nl.

Keep you all posted,

Bert

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

Re: Feike Boomstra 's Horizon Draughts Program

Post by BertTuyt » Fri Dec 16, 2011 00:14

I'm now going in detail trough my search routines (as they are both used in Damage as the hybrid version) to find improvement opportunities and/or bugs.
Within this context i was wondering what (in your programs) typical values are ( in % ) for hash-cut and hash-move in comparison with the total number of hash-reads.

In the current set-up a 8M/entry hash Table is used, with 16Byte for every entry (2 * 8, so 8 for the key, and 8 for the data), so my other question is/was if others use "far larger" hash-tables, with a noticeable effect on program search efficiency.

In the past I increased memory size for the hash table , but if i remember well with a minor effect.
It also could have been related to the search speed, which nowadays is far higher.
Or to the fact that I clear the table in between moves (i kept this habit, so i could easily retrace and replay bugs and wrong moves after a tournament).

Especially when memory is ultra-cheap these days, and with 4 GByte or 8 GByte for a DIMM, you can easy plug in 16 + GByte into one desktop PC, a 1 GByte Hash table is no problem.....

Bert

Krzychumag
Posts: 145
Joined: Tue Sep 01, 2009 17:31
Real name: Krzysztof Grzelak

Re: Feike Boomstra 's Horizon Draughts Program

Post by Krzychumag » Tue Mar 06, 2012 19:25

Bert.

Please write at present what latest version of the program is Horizon Draughts , which is acting under Windows 7 64-bit.

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

Re: Feike Boomstra 's Horizon Draughts Program

Post by BertTuyt » Sun Mar 18, 2012 18:18

A new version (still a beta release) of the Horizon Engine with the Damage GUI will be made available mid April ( 2012 :) .
I will inform all within this forum, so for those who are interested to test, and support me in finding/reporting bugs, i will forward the download link.

Bert

Krzychumag
Posts: 145
Joined: Tue Sep 01, 2009 17:31
Real name: Krzysztof Grzelak

Re: Feike Boomstra 's Horizon Draughts Program

Post by Krzychumag » Sun Mar 18, 2012 19:20

BertTuyt wrote:A new version (still a beta release) of the Horizon Engine with the Damage GUI will be made available mid April ( 2012 :) .
I will inform all within this forum, so for those who are interested to test, and support me in finding/reporting bugs, i will forward the download link.

Bert
I thank for the reply Bert. I am waiting impatiently on new versions acting under Windows 7 64-bit.

Krzychumag
Posts: 145
Joined: Tue Sep 01, 2009 17:31
Real name: Krzysztof Grzelak

Re: Feike Boomstra 's Horizon Draughts Program

Post by Krzychumag » Sat Apr 21, 2012 08:40

I apologize Bert that ask. This program will be in April, whether it won't be.

Post Reply