Tuesday, January 17, 2012

[csozsogh] Computer chess 1-ply play out

A chess program plays a game against another program.  We will call the sequence of moves played the "main line".   For each position on the main line, the computers also play out a complete game starting with every other alternative move from that position.  For an N move game, there are 2N "alternate histories". These side lines do NOT have further side lines played out.

In essence, we are answering, "How would the game have turned out if some other move were played instead of the main line move?"  This kind of counterfactual analysis is possible for computer players, so provides an extra dimension of entertainment for watching a computer tournament that is not possible for a human tournament.

This also provides data for program improvement.  A programmer can look over a game for which the main line turned out worse than one of the side lines, e.g., the main line was a loss, but an alternative move would have won, and ask, why did my program choose the bad main line move instead of the better side line? (The answer might be, the played move was objectively better; the side line merely exposed a flaw in the opponent.)

I estimate such a tournament will take 1000 times more CPU than just playing the main line, but it seems a worthy thing to try once in a rare while, say at a prestigious computer chess tournament.

Previously, same idea to annotating human moves.

No comments :