I'm not planning to continue the discussion on whether simple algorithms can solve exptime problems (I'm willing to, but the urge to do so is not strong).

However, the complexity of chess is an absolutely fundamental issue in seeing "the big picture" regarding chess.

There is very likely to be a negative correlation between the complexity of a game and the ease of creating a relatively simple algorithm for playing it well.

A game of chess can be up to a little under 6000 moves (the upper limit caused by the 50 move rule), but in reality the average game is probably in the 40-50 move range.

On average, IIRC, there are around 28 choices of move in each position - and here we can start to simplify (reduce the scale of the game): the better a player you are, the fewer of those moves will meet your quality threshold. These are just guesses, but I'm going to go for the following number of moves that meet the quality criteria in chess positions at different elo levels:

Code: Select all

```
+------+----------------------------------------------------+
| Elo | Average Number Of Moves That Meet Quality Criteria |
+------+----------------------------------------------------+
| 1000 | 15 |
+------+----------------------------------------------------+
| 1500 | 10 |
+------+----------------------------------------------------+
| 2000 | 5 |
+------+----------------------------------------------------+
| 2500 | 2 |
+------+----------------------------------------------------+
```

So... in terms of searching for deep patterns in chess, GM level is going to be a better place to look than novice level.

btw - as the number of moves gets close to one, the game becomes drawn - which is happening right now (especially at correspondence level chess).