In a given situation, can we assume that a chess engine is tactically perfect - meaning that it can find all possible tactics which are there in that position. Is it possible for the best of modern chess engines to miss a tactic in a given position? Has this ever been observed in any recent game?

EDIT: @Henry Keiter: For the purpose of this question, I would define tactic as a combination or sequence of moves which wins material(if playing the winning side), or a combination or sequence of moves which defends a difficult position successfully (meaning preventing a loss of material which seems imminent). I know that the general definition is broader but for the purpose of this question the meaning can be taken as defined above.

EDIT 2: The reason I am asking this question is I am actually curious if a chess engine really does find all the possible tactics in a given position, or if it just manages to find many more tactics than a human being would find.

  • 1
    Chess engines are by no means tactically perfect. See chess.stackexchange.com/questions/1970/…. – firtydank Mar 27 '14 at 14:05
  • 4
    Part of the problem with this question is that it's difficult to define. In order to answer this, you must first precisely define what a "tactic" is, and I'm not sure how anyone would go about doing that. Where do you draw the line? You then have to clarify what you mean by "able to find" a tactic. Any naive brute-force search is "able" to find every move, by definition, so what do you actually mean here? That the computer recommends all possible tactics? – Henry Keiter Mar 27 '14 at 17:06
  • Down-voting has to be accompanied by a comment or some sort of feedback. In general, I would say that down-voting isn't very productive. Cheers. – Rauan Sagit Mar 27 '14 at 23:11
  • @HenryKeiter In this context, I understand tactics as a combination that leads to winning material or delivering checkmate. In general, I don't like the term "tactics" because it can mean different things in different contexts. So I prefer to separate it into "dynamic play", "combination" and "calculation method". In this case, "combination" seems to be the most suitable. – Rauan Sagit Mar 27 '14 at 23:21

The quality and depth of an engine's calculation depends on the

  1. Performance of the machine the engine is running on
  2. Quality of its algorithms in terms of calculation and performance
  3. Time span allowed for calculating the position

It is generally considered that tactics (i.e. combinations that lead to winning material or delivering checkmate) are the engines' speciality. There is a double difficulty of calculating variations. First, to find the best sequence of moves for both sides. Second, to evaluate the final positions after the combination is completed. Todays state of the art engines are excellent at both. I would say that

Todays best engines will not miss a single tactic.

Most probably, there are "tactical benchmark data sets" of positions that engines constantly are tested against. I don't recall any cases where engines missed tactics. But by going through the game databases, especially from engine versus engine tournaments, there should be examples of one engine calculating better than its opponent engine.


Is it possible for the best of modern chess engines to miss a tactic in a given position?

This question boils down to

Is it possible for the best of modern chess engines to have a bug in their calculation or evaluation module?

Technically, yes. Sometimes, there are bugs which are extremely hard to detect unless they first occur and are caught. But it seems rather unlikely that such bugs will exist in the best engines which I am sure go through extremely thorough testing; that's one of the reasons why they are the best! :)


In objective terms, the game of chess is nothing but tactics. So the question of tactically perfect play is just the question of optimal play. Given sufficient time for any given position, then yes, any competently-built engine would indeed be tactically perfect, because it could search the entire game tree from the position and play optimally.

But here's the thing: in general, the problem of determining optimal play is computationally unfeasible, so we don't even have a way to determine in general whether a tactic has been missed or not. For all we know, 1.a3 from the start position is the only winning move in a mate-in-80 tactics puzzle. If that is the case, then any time an engine chooses to play another move it is missing a tactic. We have no way to prove that isn't the case.



In the game 0s and Xs the best move is obvious and unique (if you rotate the board you'll find that the positions all have rotational symmetry, so for example if the first move is a corner (centre FTW BTW!) you may say "there are 4 moves", but really there is only one as is you rotate the board... )

This lets you define the idea of a perfect move, of which chess has no obvious candidate. Which is why it is not known if chess is a fair game (that is no advantage is given to the player who moves first), despite being perfect (no non-deterministic elements, and full knowledge of positions).

What are the first moves chosen (White), by brute force chess engines? my answer here mentions this WRT openings

Is there a chess engine that does NOT use brute-force search? bit more about how they work and think - pertaining to tactics.

  • 1
    This is not what the question asks about. The asker wants to know if engines are tactically "perfect (as defined in the question)", not whether they can find a "perfect" move in the general case. – Henry Keiter Mar 27 '14 at 17:04
  • @HenryKeiter a tactical move cannot be perfect unless the computer plans both sides with the same degree of care and finds a checkmate at the end. Example, queen F7 checkmate, tactically perfect? Only 4 moves. – Alec Teal Mar 27 '14 at 17:06
  • 1
    The asker isn't requesting whether a computer can find "the perfect tactic". He defined "tactically perfect" as able to find all possible tactics in a given position. There's no question here about evaluating whether the tactics themselves are "perfect"; just whether a computer can somehow "find" them. – Henry Keiter Mar 27 '14 at 17:10
  • @HenryKeiter all possible tactics? Oh in that case yes! It can quite easily and quickly consider all the moves it can make 1 ply deep? That would cover all tactical moves! Also all crap moves. – Alec Teal Mar 27 '14 at 17:11
  • Yes, that and the fact that there's no obvious critical distinction between what is and is not a "tactic" is why I think this question needs more definition: see my comment on the question itself. – Henry Keiter Mar 27 '14 at 17:12

One of the most famous computer mistakes was in game 2 of the 1997 rematch between Deep Blue and Kasparov. Deep Blue won that game, but it made a mistake which should have allowed Kasparov to force a draw.

This is possible because Deep Blue moved 44.Kf1 instead of an alternate move of its king. Regarding the end of game 2 and 44.Kf1 in particular, chess journalist Mig Greengard in the Game Over film states, "It turns out, that the position in, here at the end is actually a draw, and that, one of Deep Blue's final moves was a terrible error, because Deep Blue has two choices here. It can move its king here or move its king over here. It picked the wrong place to step." Another in that film, four-time US champion Yasser Seirawan, then concludes that, "The computer had left its king a little un-defended. And Garry could have threatened a perpetual check, not a win but a perpetual check."

Whether or not you consider Deep Blue from 1997 "modern" is your call.

Here's some kibitzing about that game.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.