
Feike Boomstra's Horizon draughts program released
-
- Posts: 43
- Joined: Thu Sep 24, 2009 18:17
Feike Boomstra's Horizon draughts program released
Dear draughts friends,
As many of you already know, Feike Boomstra, the author of the Horizon
draughts program, recently passed away.
It is the wish of his family that Horizon is made freely available to
all draughts programmers and players.
With thanks to the involvement of the KNDB it is my pleasure to announce
the availability of Horizon version 1.0 on SourceForge at the following
URL:
http://sourceforge.net/projects/horizondraughts/
The downloadable release package contains the source code and
executables in the state as Feike left them.
Horizon currently runs only on 64-bit Linux (Ubuntu), and installation
is a bit tricky - see the README file.
I would like to invite all of you to get involved in suggesting or
contributing improvements to Horizon; in particular many enthousiasts
would like to see the "Live Analysis" functionality, as used during the
World Championship 2009, being revived.
Enjoy!
Harm.
As many of you already know, Feike Boomstra, the author of the Horizon
draughts program, recently passed away.
It is the wish of his family that Horizon is made freely available to
all draughts programmers and players.
With thanks to the involvement of the KNDB it is my pleasure to announce
the availability of Horizon version 1.0 on SourceForge at the following
URL:
http://sourceforge.net/projects/horizondraughts/
The downloadable release package contains the source code and
executables in the state as Feike left them.
Horizon currently runs only on 64-bit Linux (Ubuntu), and installation
is a bit tricky - see the README file.
I would like to invite all of you to get involved in suggesting or
contributing improvements to Horizon; in particular many enthousiasts
would like to see the "Live Analysis" functionality, as used during the
World Championship 2009, being revived.
Enjoy!
Harm.
-
- Posts: 860
- Joined: Sat Apr 28, 2007 14:53
- Real name: Ed Gilbert
- Location: Morristown, NJ USA
- Contact:
Re: Feike Boomstra's Horizon draughts program released
Harm,
Thank you for your efforts to make Feike's program available.
-- Ed
Thank you for your efforts to make Feike's program available.
-- Ed
Re: Feike Boomstra's Horizon draughts program released
Harm, also from my side, thanks for this initiative.
In the mean time I have "converted" this program towards the Windows environment, and I was able to compile it without errors (some code I commented out like thread-management, for a quick start) with the Visual Studio framework.
I don't know if I'm the only one so far working on this, if there are more please let me know, so we can mutually support each other.
Where I struggle is the Python files.
Although I loaded the Python Windows version, i basically don't have a clue what to do with the Python code of Horizon, and how I should compile/execute this.
Hope some-one can help me, so i can take the next step.
I expect (as I also have normal work to do) that I can "release" a Horizon Engine for Windows around Xmas.
Keep you all posted.
Bert
In the mean time I have "converted" this program towards the Windows environment, and I was able to compile it without errors (some code I commented out like thread-management, for a quick start) with the Visual Studio framework.
I don't know if I'm the only one so far working on this, if there are more please let me know, so we can mutually support each other.
Where I struggle is the Python files.
Although I loaded the Python Windows version, i basically don't have a clue what to do with the Python code of Horizon, and how I should compile/execute this.
Hope some-one can help me, so i can take the next step.
I expect (as I also have normal work to do) that I can "release" a Horizon Engine for Windows around Xmas.
Keep you all posted.
Bert
Re: Feike Boomstra's Horizon draughts program released
As I'm not a Python specialist, i did not focus for the time being on the Horizon Python files.
I have now added a quick and (very) dirty DXP-wrapper around the main() function in Horizon.
So far I was able to play a 17 moves (each color) against Dam 2.x before the program crashes. Based on debug info this crash occurs when (for the first time) endgame DB's are approached, so i have to dig deep into this phase...
But at least, it is now (more or less) playing within the Windows 7 (64Bits) environment, and I'm confident that i will resolve the bug encountered (and the ones which will follow
).
Will keep you all posted,......
Bert
I have now added a quick and (very) dirty DXP-wrapper around the main() function in Horizon.
So far I was able to play a 17 moves (each color) against Dam 2.x before the program crashes. Based on debug info this crash occurs when (for the first time) endgame DB's are approached, so i have to dig deep into this phase...
But at least, it is now (more or less) playing within the Windows 7 (64Bits) environment, and I'm confident that i will resolve the bug encountered (and the ones which will follow

Will keep you all posted,......
Bert
Re: Feike Boomstra's Horizon draughts program released
I have implemented a very basic DXP-client in Horizon (Windows version) and I was now able to play a DXP -game against Dam.
Keep you all posted,
Bert
Keep you all posted,
Bert
Re: Feike Boomstra's Horizon draughts program released
In the days between Xmas and NewYear I did some further work on the Horizon program.
I was also able now to remove all the warnings.
I want to do a quick check if it now also works (copile and run) on another computer.
A boundary condition is the use of the Visual Studio Professional environment (im afraid I used "without knowing" some of the Microsoft specifics). Also here I hope someone can help me to make the program more compatible (robust) with different developement Windows environments.
In the present implementation I did not activate (yet) the parallel search (thats for another time).
The program is now capable of playing a DXP game (as client).
So far i used Dam 2.x for the purpose.
Maybe Ed has some free time to help me here.
If so just drop an email, and I will sent you the files, with some instructions....
And by the way, the best wishes for 2011 ....
Bert
I was also able now to remove all the warnings.
I want to do a quick check if it now also works (copile and run) on another computer.
A boundary condition is the use of the Visual Studio Professional environment (im afraid I used "without knowing" some of the Microsoft specifics). Also here I hope someone can help me to make the program more compatible (robust) with different developement Windows environments.
In the present implementation I did not activate (yet) the parallel search (thats for another time).
The program is now capable of playing a DXP game (as client).
So far i used Dam 2.x for the purpose.
Maybe Ed has some free time to help me here.
If so just drop an email, and I will sent you the files, with some instructions....
And by the way, the best wishes for 2011 ....
Bert
-
- Posts: 860
- Joined: Sat Apr 28, 2007 14:53
- Real name: Ed Gilbert
- Location: Morristown, NJ USA
- Contact:
Re: Feike Boomstra's Horizon draughts program released
Hi Bert,
I sent you an email about compiling the sources. I did not try to compile the entire horizon program for Windows as that seemed like a big project, but it was relatively easy to compile just the eval function. I created a "sparring partner" by combining the kingsrow search with the horizon eval. The result is much stronger than truus or flits, and I'm finding it useful for testing with engine matches.
-- Ed
I sent you an email about compiling the sources. I did not try to compile the entire horizon program for Windows as that seemed like a big project, but it was relatively easy to compile just the eval function. I created a "sparring partner" by combining the kingsrow search with the horizon eval. The result is much stronger than truus or flits, and I'm finding it useful for testing with engine matches.
-- Ed
Re: Feike Boomstra's Horizon draughts program released
Thanks Ed,
im now enjoying a short holiday in Amsterdam, so im not sure if im in time home to sent you the files.
Anyway tomorrow (31-Dec) will do.
Maybe I will post someday a detailed review of the Horizon program, I find the work of Feike quite interesting!
Overall the program is based on 64bit Bitboards and optimized for a 64bit-OS.
Especially the evaluation function is an impressive piece of work.
The search-routine is a straigtforward implementation of the mtdf algorithm (Aske Plaat) combined with a Glaurung implementation of parallel-search.
Endgame Databases (6-Piece) and Endgame routines are based on the work of Michel Grimminck (Dragon) and Harm Jetten (Dam 2.x).
The MoveGenerator is efficient and very logical organized with 64bit BitBoards and 64bit instruction optimizations.
All in all, Im convinced that with some further optimization (like search-routine optimization), this program could be one of the best !!
For all who want to study Draughts Programming and is thinking about writing a (bitBoard) Draughts Program or wants to optimize his/her own program, a close examination of this code is an aboslute must.
Bert
im now enjoying a short holiday in Amsterdam, so im not sure if im in time home to sent you the files.
Anyway tomorrow (31-Dec) will do.
Maybe I will post someday a detailed review of the Horizon program, I find the work of Feike quite interesting!
Overall the program is based on 64bit Bitboards and optimized for a 64bit-OS.
Especially the evaluation function is an impressive piece of work.
The search-routine is a straigtforward implementation of the mtdf algorithm (Aske Plaat) combined with a Glaurung implementation of parallel-search.
Endgame Databases (6-Piece) and Endgame routines are based on the work of Michel Grimminck (Dragon) and Harm Jetten (Dam 2.x).
The MoveGenerator is efficient and very logical organized with 64bit BitBoards and 64bit instruction optimizations.
All in all, Im convinced that with some further optimization (like search-routine optimization), this program could be one of the best !!
For all who want to study Draughts Programming and is thinking about writing a (bitBoard) Draughts Program or wants to optimize his/her own program, a close examination of this code is an aboslute must.
Bert
-
- Posts: 3574
- Joined: Sun Nov 02, 2003 13:05
- Location: Harlingen
Re: Feike Boomstra's Horizon draughts program released
Hello Bert,
Did you find in the programm (the evaluation function) also the way how Feike did the
evaluation (sending by ftp a diagram plus expected move in a .png) at some tournaments in the past?
It would be very useful at tournaments in the future maybe combined with Kingsrow (Ed).
Did you find in the programm (the evaluation function) also the way how Feike did the
evaluation (sending by ftp a diagram plus expected move in a .png) at some tournaments in the past?
It would be very useful at tournaments in the future maybe combined with Kingsrow (Ed).
https:toernooibase.kndb.nl More than 457.000 games on applet, more than 1.300.000 results, more than 23.000 games broadcasted (semi-)live, more than 13.600 inserted tournaments!
Re: Feike Boomstra's Horizon draughts program released
Piet,
so far I only focused to make the program work within Windows with the DXP-protocol.
Think the option you are referring to, is somewhere in the Python files.
So I need a closer look to really understand this concept.
Maybe some-one can explain how during tournaments this option was "organized , so i can find some clues.
Did Feike (or someone else) needed to type moves into the PC and from there a web-page was updated? Was there a direct connection with the electronic draughts boards ??
Note: I could not find the supplier of the electronic draughts boards (and the price tag). I like to add this feature (connection to the E board) in a future version of Damage.
Bert
so far I only focused to make the program work within Windows with the DXP-protocol.
Think the option you are referring to, is somewhere in the Python files.
So I need a closer look to really understand this concept.
Maybe some-one can explain how during tournaments this option was "organized , so i can find some clues.
Did Feike (or someone else) needed to type moves into the PC and from there a web-page was updated? Was there a direct connection with the electronic draughts boards ??
Note: I could not find the supplier of the electronic draughts boards (and the price tag). I like to add this feature (connection to the E board) in a future version of Damage.
Bert
-
- Posts: 1157
- Joined: Sat Jun 28, 2003 13:22
- Location: Eindhoven, The Netherlands
- Contact:
Re: Feike Boomstra's Horizon draughts program released
There is a dependency on the python package http://home.gna.org/pychart/ in Feike's code. So probably he used that to draw graphs of the evaluation. Personally I find such graphs not very informative. I prefer to see the current value and the principal variation.
-
- Posts: 1157
- Joined: Sat Jun 28, 2003 13:22
- Location: Eindhoven, The Netherlands
- Contact:
Re: Feike Boomstra's Horizon draughts program released
That would be a nice addition. The supplier of the electronic boards is DGT (http://digitalgametechnology.com/). Unfortunately there is no single board driver available yet.BertTuyt wrote: Note: I could not find the supplier of the electronic draughts boards (and the price tag). I like to add this feature (connection to the E board) in a future version of Damage.
Bert
Re: Feike Boomstra's Horizon draughts program released
Wieger,
had a quick look at the DGT side but could not find E Draughts Boards (only Chess). But maybe I did not look into detail.
In the download section , however, I found software drivers for the E-board.
Bert
had a quick look at the DGT side but could not find E Draughts Boards (only Chess). But maybe I did not look into detail.
In the download section , however, I found software drivers for the E-board.
Bert
-
- Posts: 1157
- Joined: Sat Jun 28, 2003 13:22
- Location: Eindhoven, The Netherlands
- Contact:
Re: Feike Boomstra's Horizon draughts program released
The electronic draughts boards are for sale now, they are being advertised in 'Het Damspel'.BertTuyt wrote:Wieger,
had a quick look at the DGT side but could not find E Draughts Boards (only Chess). But maybe I did not look into detail.
In the download section , however, I found software drivers for the E-board.
Bert
I just checked, and it seems there is now an alpha version of a generic board driver available (Version 0.1.1 alpha 20100106). So they seem to be working on it. Earlier versions of the driver were only usable for chess.
-
- Posts: 860
- Joined: Sat Apr 28, 2007 14:53
- Real name: Ed Gilbert
- Location: Morristown, NJ USA
- Contact:
Re: Feike Boomstra's Horizon draughts program released
I have had some preliminary email discussion with Wieger about doing this. I have added the capability for a remote client to get the search results from kingsrow over a DamExchange connection, and I have offered my 8-core 16GB machine with kingsrow for use during the world championship match this year. Of course more work needs to be done before there can be realtime search results during the match, but perhaps it will happen.It would be very useful at tournaments in the future maybe combined with Kingsrow (Ed).
-- Ed