Played test games on LB (Little Blitzer), I notice arasan 17.5 has illegal moves.
1) When given a position with the side to move already has 3 same position Arasan will just send bestmove 0000. LB considers this as illegal. In analysis mode in arena (pressing analyze button), arasan still refuses to analyze and just sent bestmove 0000.
[pgn]
[Event "?"]
[Site "Home"]
[Date "2015.05.19"]
[Round "?"]
[White "*"]
[Black "Arasan 17.5"]
[Result "*"]
[ECO "C45"]
[Opening "Scotch"]
[SetUp "1"]
[FEN "r1bqk1nr/pppp1ppp/2n5/2b5/3NP3/8/PPP2PPP/RNBQKB1R w KQkq - 0 1"]
1. Be3 Qf6 2. c3 Nge7 3. Bc4 Ne5 4. Be2 O-O 5. O-O d5 6. Nd2 Bb6 7. a4 N5c6
8. Bd3 Ne5 9. Be2 N5c6 10. Bd3 Ne5 11. Be2 *[/pgn]
2. Also under LB, when given drawn position by material, it also sent bestmove 0000. Same with analysis mode.
[d]8/8/8/4b3/8/8/2KB1k2/8 w - - 1 1
Arasan, repetition and insufficient material
Moderator: Ras
-
Ferdy
- Posts: 4853
- Joined: Sun Aug 10, 2008 3:15 pm
- Location: Philippines
-
hgm
- Posts: 28480
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Arasan, repetition and insufficient material
This seems a Little-Blitzer problem. Arasan is well within his (FIDE) rights to refuse moving in positions that are already draw, or where the game has already finished. What does Little Blitzer say when you start Arasan in a position where it is stalemated?
-
Ferdy
- Posts: 4853
- Joined: Sun Aug 10, 2008 3:15 pm
- Location: Philippines
Re: Arasan, repetition and insufficient material
Indeed LB has a problem here. Most uci engines will play legal move here, even if it is drawn by repitition.hgm wrote:This seems a Little-Blitzer problem. Arasan is well within his (FIDE) rights to refuse moving in positions that are already draw, or where the game has already finished.
It will send bestmove 0000.What does Little Blitzer say when you start Arasan in a position where it is stalemated?
What concerns me is its analysis ability, except those stalemate positions.
-
hgm
- Posts: 28480
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Arasan, repetition and insufficient material
Why should analysis be any different? If playing a move from a rep-draw position is losing, why should analysing that position suggest a losing move if claiming a draw is the only sound option? The insufficient-material position is logically equivalent to the stalemate, as both are positions in which according to FIDE rules the game has already ended. It is not a valid position to start from. You might as well set up a position without King.
-
Ferdy
- Posts: 4853
- Joined: Sun Aug 10, 2008 3:15 pm
- Location: Philippines
Re: Arasan, repetition and insufficient material
What I mean is when you do an analysis, load a pgn then load Arasan, then you go thru the games, create variation, takeback, then you stumble into a position where there is repetition, arasan should not give bestmove 0000, it should just give its bestmove with draw score, same with drawn position with low material as long as there is legal move.hgm wrote:Why should analysis be any different? If playing a move from a rep-draw position is losing, why should analysing that position suggest a losing move if claiming a draw is the only sound option? The insufficient-material position is logically equivalent to the stalemate, as both are positions in which according to FIDE rules the game has already ended. It is not a valid position to start from. You might as well set up a position without King.
-
hgm
- Posts: 28480
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Arasan, repetition and insufficient material
That would be wrong. Best is to claim the draw without moving. Why should the engine ly about it? A move with a draw score should mean that you only fulfill the draw condition after moving.
-
Ferdy
- Posts: 4853
- Joined: Sun Aug 10, 2008 3:15 pm
- Location: Philippines
Re: Arasan, repetition and insufficient material
So you mean to say that the engine will claim draw by insufficient material or repetition in analysis mode and just send bestmove 0000 to the gui
.
-
jdart
- Posts: 4429
- Joined: Fri Mar 10, 2006 5:23 am
- Location: http://www.arasanchess.org
Re: Arasan, repetition and insufficient material
UCI puts the GUI in charge of draws and game termination generally. So in playing a game the engine shouldn't be asked to move in a stalemate situation or in a draw by material.
Analysis mode though is different because the GUI can ask the engine to analyze in a position that is a legal draw.
The reason "bestmove 0000" is sent is because UCI is very strict about requiring "bestmove" after "stop". "bestmove" does not just convey the move the engine wants to play, it also is a flag indicating that the engine has received "stop" and is now ready for another command. So in case of stalemate "bestmove 0000" is an appropriate response IMO. But in other draw situations I think it should send a valid move when in analysis mode. This is apparently what other engines do.
--Jon
Analysis mode though is different because the GUI can ask the engine to analyze in a position that is a legal draw.
The reason "bestmove 0000" is sent is because UCI is very strict about requiring "bestmove" after "stop". "bestmove" does not just convey the move the engine wants to play, it also is a flag indicating that the engine has received "stop" and is now ready for another command. So in case of stalemate "bestmove 0000" is an appropriate response IMO. But in other draw situations I think it should send a valid move when in analysis mode. This is apparently what other engines do.
--Jon
-
hgm
- Posts: 28480
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Arasan, repetition and insufficient material
That seems the logical interpretation of the UCI specs. If you cannot move, you have the choice to play an illegal move or 0000. Playing an illegal move seems just wrong, but 0000 according to the specs stands for null move, i.e. make no move at all. Which is exactly what you should do if there is no move to play. Or if you don't want to play one.Ferdy wrote:So you mean to say that the engine will claim draw by insufficient material or repetition in analysis mode and just send bestmove 0000 to the gui.
Other engines apparently just do it wrong.
-
mar
- Posts: 2681
- Joined: Fri Nov 26, 2010 2:00 pm
- Location: Czech Republic
- Full name: Martin Sedlak
Re: Arasan, repetition and insufficient material
I just looked up a mail conversation I had with Nathan back in 2011. I told him about a problem where LB wasn't detecting some draws by insufficient material.hgm wrote:That seems the logical interpretation of the UCI specs. If you cannot move, you have the choice to play an illegal move or 0000. Playing an illegal move seems just wrong, but 0000 according to the specs stands for null move, i.e. make no move at all. Which is exactly what you should do if there is no move to play. Or if you don't want to play one.
Other engines apparently just do it wrong.
It was kbkb with bishops of same color and Nathan told me he was going to fix it.
Anyway I worked around the problem by not doing cutoffs by insufficient material at root.
I don't know if LB is still being actively developed or not, I switched to cutechess-cli long time ago.
So I personally don't think there's anything wrong with playing any move in such drawn positions if the GUI/user wants to,
UCI engines really don't have that many options to claim draw and they have to rely on the GUI to adjudicate the game in such cases.
From my POV, this is a better solution than losing such drawn games due to GUI(=LB in this case) bugs.
Which doesn't mean I advocate fixing GUI bugs in engines (I did this twice actually, another example was Arena and FRC).