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...
Simple extensions?
Moderator: Ras
-
- Posts: 28395
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Simple extensions?
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).
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).