![]() ![]() After the discussion, I will buy that given more memory than we can possibly dream of, all these paths could be found. I guess my thought experiment was that whenever a branch in the tree is taken, then the algorithm (or memorized paths) must find a path to a mate (without getting mated) for any possible branch on the opponent moves. My original assertion is probably wrong, but then again I think I've pointed out something that is not yet satisfactorily proven (formally). I would argue that chess is a bit more complicated than checkers in that a win is not necessarily by numerical exhaustion of pieces, but by a mate. Thinking about it again, it seems like there is no theoretical problem with solving a finite game like chess. Again, the endgame in question is avoidable though.Įdit: Hmm. Most chess computers try to match a possible end game to the game in progress, which is essentially a dynamic programming traceback. Even if you know everything, your next move is greedy in matching a heuristic. However, being a programmer who has taken CS, I know that even your good choices - given a wise opponent - can force you to make "mistake" moves in the end. My friend thought, to the contrary, that a computer would always win or tie if it never made a "mistake" move (however do you define that?). ![]() Being based on a heuristic, it does not necessarily beat ALL of the moves that the opponent could do. I think that, even if you search the entire space of all combinations of player1/2 moves, the single move that the computer decides upon at each step is based on a heuristic. I argued that there could not exist a deterministic Turing machine that always won or stalemated at chess. I'm not well versed in theory, but think I know enough. It's this sort of position which seems perfectly tailored to exploit Stockfish's materialistic nature.I was recently in a discussion with a non-coder person on the possibilities of chess computers. You're far more likely to see them sacrifice material for a long-term positional advantage, like a great human player would.įrom my experience looking at Alpha Zero and LCZero wins against Stockfish, one of the more common patterns I see is a sacrifice by the AI which gives such a dominant position that one or more of Stockfish's pieces become uselessly trapped behind their own pawns. The traditional engine tends to be extremely conservative and materialistic, only playing a sacrifice when it has calculated a line which recovers the material with interest (or forces checkmate). If you ask any of the top players who have spent time reviewing games by chess engines, I think you'll find a consensus around the belief that Alpha Zero and LCZero play far more human-like moves than do engines like Stockfish. On the other hand, they happen to be great judges of human- vs engine- style of play. For one, because chess players are hardly judges of what is and what isn't AI. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |