Simple extensions?

Discussion of chess software programming and technical issues.

Moderator: Ras

tpetzke
Posts: 686
Joined: Thu Mar 03, 2011 4:57 pm
Location: Germany

Re: Simple extensions?

Post by tpetzke »

agree, but I programmed a little GUI for my engine too. In fact my first approach was a combined GUI/engine program till I realized how it should be done so I already had the EPD code programmed.

You save a lot of hassle if you let the GUI do the EPD parsing, as always when you do it yourself, you are a tiny bit more flexible.

Example: In the STS test suite the EPD c0 parameter is used to tell acceptable moves beyond the best move and assigns scores to them. As I had my own EPD parser I could program that c0 format in, so I don't have to add the sub scores by hand.

I confess I did not look whether an available GUI is already doing that, I though the use case to be to special, so I guessed other GUIs did not implement it.

Thomas...
User avatar
hgm
Posts: 28395
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Simple extensions?

Post by hgm »

Well, WinBoard currently does not support EPD suites at all, and I have been reluctant to implement it for two reasons:
1) I have no idea what people really expect from it, in terms of reporting
2) It seems the best way to implement this is not through a GUI but through an engine.

My idea was that you could have a dedicated 'tester engine' which you would pit against the engine under test in a normal match, the tester aborting the game after it receives the first move, with a game-end message specifying a result depending on if the move matched the solution. The GUI 'match result' would then directly reflect the score on the test suite. (Each correct solution would be a win, each incorrect one a loss, and draws could be used to count alternatives.)

You would then just set up a match (or a gauntlet, if you wanted to test more engines) against 'STS' or 'WAC' (which would be the tester engine configured to run the corresponding test suite).