Wrong draw claim by Naum 4.2 ?
Moderators: hgm, Harvey Williamson, bob
Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
- Matthias Gemuh
- Posts: 3234
- Joined: Thu Mar 09, 2006 8:10 am
- Contact:
Wrong draw claim by Naum 4.2 ?
Maybe someone should inform Naumov.
[D]8/4B3/8/1k6/3p4/3K4/8/2n5 w - - 4 116
In this position, Naum 4.2 played Kxd4 and immediately claimed draw by sending
"1/2-1/2 {Insufficient material}" to ChessGUI.
ChessGUI penalized Naum with a loss becaused a checkmate is theoretically possible.
Naum ran as UCI engine. Though the UCI protocol does not support claiming a draw, some UCI engines claim draws anyway.
Was ChessGUI wrong to penalize Naum ?
[D]8/4B3/8/1k6/3p4/3K4/8/2n5 w - - 4 116
In this position, Naum 4.2 played Kxd4 and immediately claimed draw by sending
"1/2-1/2 {Insufficient material}" to ChessGUI.
ChessGUI penalized Naum with a loss becaused a checkmate is theoretically possible.
Naum ran as UCI engine. Though the UCI protocol does not support claiming a draw, some UCI engines claim draws anyway.
Was ChessGUI wrong to penalize Naum ?
My engine was quite strong till I added knowledge to it.
http://www.chess.hylogic.de
http://www.chess.hylogic.de
-
Martin Thoresen
- Posts: 1833
- Joined: Wed Jun 21, 2006 10:07 pm
Re: Wrong draw claim by Naum 4.2 ?
I have informed Alex.
- Matthias Gemuh
- Posts: 3234
- Joined: Thu Mar 09, 2006 8:10 am
- Contact:
Re: Wrong draw claim by Naum 4.2 ?
I have a brilliant idea with the side effect that you guys may wait one hour or longer for an engine move that may never be played.
ChessGUI shall optionally allow UCI engines to play on after they declare "end of game" by claiming a draw. Some engines can play on. Those that cannot, will keep you waiting till they lose on time.
"Optionally" means the GUI operator shall decide.
So nobody should ever blame me again for penalizing a wrong claim not supported by the UCI protocol. I mean after I implement the feature
Matthias.
ChessGUI shall optionally allow UCI engines to play on after they declare "end of game" by claiming a draw. Some engines can play on. Those that cannot, will keep you waiting till they lose on time.
"Optionally" means the GUI operator shall decide.
So nobody should ever blame me again for penalizing a wrong claim not supported by the UCI protocol. I mean after I implement the feature
Matthias.
My engine was quite strong till I added knowledge to it.
http://www.chess.hylogic.de
http://www.chess.hylogic.de
-
Tord Romstad
- Posts: 1808
- Joined: Wed Mar 08, 2006 8:19 pm
- Location: Oslo, Norway
Re: Wrong draw claim by Naum 4.2 ?
In my opinion, as Matthias already knows (this thread originated from a discussion between Matthias and myself on ChessBomb), it is clearly wrong. UCI engines can't claim a draw. The protocol simply does not provide a way for the engine to claim draws. The string "1/2-1/2 {Insufficient material}" has no meaning in UCI, and falls under the category described as followed in the protocol definition:Matthias Gemuh wrote:Maybe someone should inform Naumov.
[D]8/4B3/8/1k6/3p4/3K4/8/2n5 w - - 4 116
In this position, Naum 4.2 played Kxd4 and immediately claimed draw by sending
"1/2-1/2 {Insufficient material}" to ChessGUI.
ChessGUI penalized Naum with a loss becaused a checkmate is theoretically possible.
Naum ran as UCI engine. Though the UCI protocol does not support claiming a draw, some UCI engines claim draws anyway.
Was ChessGUI wrong to penalize Naum ?
Therefore, if we follow the protocol strictly, the string "1/2-1/2 {Insufficient material}" from the engine should therefore be ignored by the GUI. Matthias' counterargument was that engines that print output like this will usually crash, make illegal moves or lose on time if the GUI tries to make the game continue. In my opinion it is unfair to adjudicate the game as a loss for an engine just because its output resembles that seen from other engines just before they are about to crash.if the engine or the GUI receives an unknown command or token it should just ignore it and try to parse the rest of the string.
What do the rest of you think?
And please, everyone: Don't let this thread degenerate into yet another UCI vs XBoard protocol war. I'm dead tired of those. Let's keep this thread focused on UCI. If you feel a strong desire to argue about UCI vs XBoard yet again, please start your own thread. I'd also appreciate if we could keep all discussion about Fruit, Rybka, Houdini and who cloned whom out of this thread, but I understand that this is probably too much to ask for.
Re: Wrong draw claim by Naum 4.2 ?
Tord Romstad wrote: I'd also appreciate if we could keep all discussion about Fruit, Rybka, Houdini and who cloned whom out of this thread, but I understand that this is probably too much to ask for.
- hgm
- Posts: 22274
- Joined: Fri Mar 10, 2006 9:06 am
- Location: Amsterdam
- Full name: H G Muller
- Contact:
Re: Wrong draw claim by Naum 4.2 ?
In WinBoard I only offer the option /testClaims, which would indeed forfeit the engine in this case, (KBKN), when switched on. To end the game here is a violation of FIDE rules. When switched off, WB would unconditionally obey any engine claim, even if the engine announced that it had won here. But people that think that claiming a draw here should be accepted, but not a win, have an alternative: They can switch /trivialDraws adjudication on. In that case the GUI would already adjudicate draw on the move, before the engine could claim.
Of course another question is if the engine should be penalized for protocol violation, even if the claim had been correct (e.g. third repetition). In WB this issue does not come up, as it never deals directly with UCI engines. But from what Tord says I guess that a protocol violation cn only manifest itself in a time loss.
Of course another question is if the engine should be penalized for protocol violation, even if the claim had been correct (e.g. third repetition). In WB this issue does not come up, as it never deals directly with UCI engines. But from what Tord says I guess that a protocol violation cn only manifest itself in a time loss.
Re: Wrong draw claim by Naum 4.2 ?
I agree, the GUI should simply ignore the claim.Tord Romstad wrote:Therefore, if we follow the protocol strictly, the string "1/2-1/2 {Insufficient material}" from the engine should therefore be ignored by the GUI.
And by all means the game result should be a draw.
Robert
Re: Wrong draw claim by Naum 4.2 ?
I think it is fair to adjudicate the loss, but not technically correct. Leo Dijskman had some draconian rules in his tournament that favored the whole CC community for years. The bottom line is "Get the author to fix the damn bug". The option is, allow engines like this not to lose the game, but if it loses on time wasting tester resources, take them out of tournament. That is Leo's (even more draconian rule) that served everybody well.Tord Romstad wrote:In my opinion, as Matthias already knows (this thread originated from a discussion between Matthias and myself on ChessBomb), it is clearly wrong. UCI engines can't claim a draw. The protocol simply does not provide a way for the engine to claim draws. The string "1/2-1/2 {Insufficient material}" has no meaning in UCI, and falls under the category described as followed in the protocol definition:Matthias Gemuh wrote:Maybe someone should inform Naumov.
[D]8/4B3/8/1k6/3p4/3K4/8/2n5 w - - 4 116
In this position, Naum 4.2 played Kxd4 and immediately claimed draw by sending
"1/2-1/2 {Insufficient material}" to ChessGUI.
ChessGUI penalized Naum with a loss becaused a checkmate is theoretically possible.
Naum ran as UCI engine. Though the UCI protocol does not support claiming a draw, some UCI engines claim draws anyway.
Was ChessGUI wrong to penalize Naum ?
Therefore, if we follow the protocol strictly, the string "1/2-1/2 {Insufficient material}" from the engine should therefore be ignored by the GUI. Matthias' counterargument was that engines that print output like this will usually crash, make illegal moves or lose on time if the GUI tries to make the game continue. In my opinion it is unfair to adjudicate the game as a loss for an engine just because its output resembles that seen from other engines just before they are about to crash.if the engine or the GUI receives an unknown command or token it should just ignore it and try to parse the rest of the string.
What do the rest of you think?
Do not say Beetlejuice three times!!!! oopss. I said it once...
And please, everyone: Don't let this thread degenerate into yet another UCI vs XBoard protocol war. I'm dead tired of those. Let's keep this thread focused on UCI. If you feel a strong desire to argue about UCI vs XBoard yet again, please start your own thread. I'd also appreciate if we could keep all discussion about Fruit, Rybka, Houdini and who cloned whom out of this thread, but I understand that this is probably too much to ask for.
Threads like this should be in the technical subforum to make sure it does not get flushed down the toilet with a gazillion R vs anti-R gallons of dirty water.
Miguel
- Matthias Gemuh
- Posts: 3234
- Joined: Thu Mar 09, 2006 8:10 am
- Contact:
Re: Wrong draw claim by Naum 4.2 ?
You mean that the game result should be a draw, even if the engine loses on time by not playing on ?Houdini wrote:I agree, the GUI should simply ignore the claim.Tord Romstad wrote:Therefore, if we follow the protocol strictly, the string "1/2-1/2 {Insufficient material}" from the engine should therefore be ignored by the GUI.
And by all means the game result should be a draw.
Robert
My engine was quite strong till I added knowledge to it.
http://www.chess.hylogic.de
http://www.chess.hylogic.de
- Matthias Gemuh
- Posts: 3234
- Joined: Thu Mar 09, 2006 8:10 am
- Contact:
Re: Wrong draw claim by Naum 4.2 ?
The problem is: the bulk of people in chat rooms who have an opinion about this topic, don't visit the technical subforum.michiguel wrote: Threads like this should be in the technical subforum to make sure it does not get flushed down the toilet with a gazillion R vs anti-R gallons of dirty water.
Miguel
Matthias.
My engine was quite strong till I added knowledge to it.
http://www.chess.hylogic.de
http://www.chess.hylogic.de


