Move explorer database is subtly broken and gives dangerous information, with an example

Sort:
neuralsim

Hi, I'm playing a Daily match and noticed an issue in the explorer database. It claims that games reached positions that those games never reached, and it lists the next "move" as the move it would require to bring the game into line with the position you are exploring. 

This is deceptive, because this means this move was never actually played in live chess. And sometimes it's quite a doozy, like in my example, because it implies that black made a move that could have led to en-passant, even though no such thing happened in the game!

Here's an explorer link: https://www.chess.com/explorer?moveList=d4+c5+d5+b6+e4+Bb7+Nf3+Qc7+c4&ply=9&origMoves=d4+c5+d5+b6+e4+Bb7+Nf3+Qc7+c4&ne=1

If you enter this position in move explorer, it will give you a game, and it claims the next move in the game is e5 by black. There is no such game. e5 would lead to en-passant potentially. So showing e5 as the next move gives a very bad, very wrong impression. In reality the pawn in the actual game was on e6. Not e7.

This kind of "false hit" happens a lot in the explorer database, in my experience. Players beware!

Martin_Stahl

The Explorer is position based so it is giving all positions that match with the given move even if that isn't a move played in any of the resultant games; it was a position reached through transposition.
Most database programs work the same way as the desire is to find games that have the given position in them.

neuralsim
Martin_Stahl wrote:

The Explorer is position based so it is giving all positions that match with the given move even if that isn't a move played in any of the resultant games; it was a position reached through transposition.
Most database programs work the same way as the desire is to find games that have the given position in them.

The position I posted has never been reached in a game. It's not a transposition.

Martin_Stahl
neuralsim wrote:
Martin_Stahl wrote:

The Explorer is position based so it is giving all positions that match with the given move even if that isn't a move played in any of the resultant games; it was a position reached through transposition.
Most database programs work the same way as the desire is to find games that have the given position in them.

The position I posted has never been reached in a game. It's not a transposition.

The position after e5 has been reached, it's just that the move to e5 was from e6 and the position was reached by a different move order (transposition).

Again, the Explorer database is a positional database. It doesn't care how the position was reached and the listed moves is an indication of where that piece/pawn would be in the board on the next position and not necessarily the move played in the given game. In this particular game, e5 was actually played.

https://www.chess.com/games/view/13207241

neuralsim

I understand how it is coded, I've written a chess engine myself from scratch. I also understand the issues of database false hits, and probably every single edge case involved in false hits.

My post really was to point out that there is a problem, and to make people aware of it. It would be nice if there were a checkbox to only present games that actually include the position, for example. This would not be hard to do, it would just be an extra check after the database returns the list of positions to verify that the position actually occurred in-game.

Telling me how the system works is not helpful. I know how the system works very well. Probably better than most. I'm saying it's wrong.