Game adjudication error in engine match

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

Colin-G
Posts: 191
Joined: Mon Oct 31, 2016 6:30 pm
Location: England

Game adjudication error in engine match

Post by Colin-G »

I had this error in a game today.
White was Tao 5.6, Black was ProDeo 2.2
In this position Black played the only move which does not lose.
i.e. 65...h1=N+
[d]8/8/8/6p1/p7/6K1/2R4p/6k1 b - - 3 65
The game then immediately ended with the message
"Arena Adjudication. Illegal move!" with a win for Black!

I manually corrected the result to be a draw.
GUI was Arena 3.50 in Windows XP.
Am I correct in assuming it was a problem with Tao rather than Arena?
User avatar
hgm
Posts: 28514
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Game adjudication error in engine match

Post by hgm »

Without seeing a log you can never be sure. But it is likely that Tao played Rc1#, because it was not aware black promoted to Knight. This again can be a fault in its move parser, or because Arena did not sent it properly.
Guenther
Posts: 4718
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: Game adjudication error in engine match

Post by Guenther »

Colin-G wrote:I had this error in a game today.
White was Tao 5.6, Black was ProDeo 2.2
In this position Black played the only move which does not lose.
i.e. 65...h1=N+
[d]8/8/8/6p1/p7/6K1/2R4p/6k1 b - - 3 65
The game then immediately ended with the message
"Arena Adjudication. Illegal move!" with a win for Black!

I manually corrected the result to be a draw.
GUI was Arena 3.50 in Windows XP.
Am I correct in assuming it was a problem with Tao rather than Arena?
I checked it with Tao 5.6 and it really does not know underpromotion to N at least. It plays an illegal move after this with Rc1+ ignoring the check.
Actually Arena should tell what illegal move happened (and by whom).

BTW you should not adjudicate this as a draw after Tao played an illegal move. Normally this must be adjudicated in favor of ProDeo.
(You always lose after forfeiting by an illegal move as long as the other side has mating material)

Code: Select all

1488566403.575 POLYGLOT FEN 8/8/8/6p1/p7/6K1/2R5/6kn w - - 0 2
1488566403.575 Adapter->Engine: position fen 8/8/8/6p1/p7/6K1/2R4p/6k1 b - - 3 1 moves h2h1n
1488566403.575 Adapter->Engine: go wtime 600000 btime 600000 movestogo 39
1488566403.575 Engine->Adapter: info string Time[600000] MTG[40] Base[15000] Inc[0] Total[15000]
1488566403.575 Adapter->GUI: 1 +0 0 0 Time[600000] MTG[40] Base[15000] Inc[0] Total[15000]
1488566403.575 Engine->Adapter: info string Time[600000] MTG[40] TT[14500]
1488566403.576 Adapter->GUI: 1 +0 0 0 Time[600000] MTG[40] TT[14500]
1488566403.665 Engine->Adapter: info depth 1 seldepth 2 time 78 score mate 1 nodes 1 pv c2c1 
1488566403.665 Adapter->GUI: 1 +9999 8 1 
1488566403.665 Engine->Adapter: bestmove c2c1
1488566403.665 Adapter->GUI: 0-1 {polyglot: resign (illegal engine move by white: c2c1)}
1488566403.665 POLYGLOT FEN 8/8/8/6p1/p7/6K1/2R5/6kn w - - 0 2
User avatar
hgm
Posts: 28514
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Game adjudication error in engine match

Post by hgm »

I suppose that the fact it adjudicates a win for black implies that white made the illegal move. But you are right, it is very bad that itArena doesn't mention what that move was.
Colin-G
Posts: 191
Joined: Mon Oct 31, 2016 6:30 pm
Location: England

Re: Game adjudication error in engine match

Post by Colin-G »

Thank you for your replies.
Both of you are correct. I set up the position in Arena.
Tao (as Black) evaluates the position as Mate in 15 for White and would play Kf1 as Black.
It obviously does not know about under promotion to a knight (h1=N+) which would save the game.
In Arena, using analysis mode, I made the move h1N+ and Tao (as White) immediately replied with Rc1+
There was no illegal move message.
In normal play mode, I played h1N+ and got the illegal move message.
I could not find any log/error files associated with the actual game.

ProDeo, not using table bases, evaluates the position before h1=N+ at +0.37 pawns
Stockfish immediately evaluates it as a draw at 0.00

Out of curiousity I did a search for "=N" (Knight under-promotion) in my 28000+ engine match Scid database. There were 275 games, i.e. about 1%
Searching for "=N+" (Knight under-promotion giving check) found 127 games.
I was surprised there were so many of such games.