I have watched many of GM Daniel King's videos where he analyzes games. He is always saying "the position is complicated" or "the position is fantastically complicated".

But what does this mean?

If I, eg, put such positions into a chess engine (such as Stockfish) how do I see the complexity factor? Normally all I see is a simple +.nn number that completely characterizes the best next move.

  • Speculation: "difficult" is a polite euphemism for "bad". – Andrew Grimm Jul 24 '15 at 3:50
  • As a note, the +.nn identifying the best move is based no the heuristics used internally by stockfish. In a real game, you may value positions differently based on your individual play style. Don't assume a number is enough to "completely characterize" a position. Even within the tool, they are rolling up at least dozens of other numbers, each of which corresponds to a facet of how the game is played. – Cort Ammon Jul 24 '15 at 4:23

Well, according to Merriam Webster:

difficult to analyze, understand, or explain

Unfortunately, you have to trust the GM on this (unless you are a strong player yourself). There is no way of using a chess engine to determine this. What is complicated for a human (positions with a lot of tactics, with a lot of possible capture sequences) might be very easy for a computer, and complicated positions for a computer (strategic battles) might be a lot easier for humans to judge.

  • 1
    I'd add that complicated situations are those where it is not always immediately clear how to value one move over another. Tools like stockfish are happy to simply test millions and millions of moves, and they'll give some metric as to which ones are good, but understanding WHY they are good, or how to play that position without a computer at your side, those are questions stockfish does not answer. – Cort Ammon Jul 24 '15 at 4:22

I think strong human players find positions complicated where a lot of pieces are en prise, or one side's king is exposed, or there are a lot of possible captures.

Chess engines don't provide information on complexity directly. They do report "depth", i.e. how many moves into the future they are calculating each line before they evaluate it. In positions where many lines lead into positions with a lot of possible checks or captures, an engine will often take longer to move to the next depth as they have to extend each line beyond the reported depth in order to reach a quiet (quiescent) position. You can use the speed at which the depth goes up as a rough gauge to what positions an engine finds calculation-heavy.

It is worth noting that sometimes an engine will move through the depths quickly in positions that a human player would consider complicated, for example if the captures/checks peter out after a few moves or if there are tactics where quiet moves are key. Alternately, an engine may do a lot of calculation in positions where a GM sees a clear strategic goal that takes priority.


Assessing the complexity of a position without relying on human expertise is a difficult problem. It is also a relevant problem if one wants to assess the playing level of a human player automatically, which is often used today in the detection of computer cheating. Accuracy of play is easily determined, but only accuracy relative to complexity gives an idea of playing strength.

There are some ideas to do this:

  • The bigger the difference between the scores of the best moves, the more complex the position. (There are exceptions, like retaking a piece etc.)
  • Material imbalances with a score that doesn't reflect those imbalances makes for a complex position.
  • If a zero move is heavily punished, the position might be complex.
  • If the engine changes its mind, i.e the best move and especially the score changes a lot, the position is obviously complex.

It means that OTB it would take you a long time to figure out the best move and that you are still likely to choose the wrong one.

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.