Il s'agit essentiellement de savoir quelle est la complexité du jeu d'échecs. Notez que par finitude, nous savons que les échecs sont déterminés, mais nous ne savons pas si la position de départ est une victoire pour les blancs, une victoire pour les noirs ou un match nul. La complexité du jeu d'échecs est à peu près le nombre minimum de positions que nous devons vérifier dans l'arbre de jeu pour déterminer l'état de la position initiale. C'est ce qu'on appelle le nombre de Shannon . Dans le document influent Programmer un ordinateur pour jouer aux échecs , Shannon a estimé que le nombre de Shannon était d'au moins 10 ^ {120). Notez que le nombre de particules dans l'Univers est estimé à 10 ^ (80). Pour répondre à la question, nous voulons en fait connaître la hauteurde l'arbre de jeu lorsque la position initiale est déterminée. Nous devons également diviser cette hauteur par 2, car un mouvement aux échecs est généralement considéré comme un mouvement blanc et noir. Le facteur de ramification de l'arbre est estimé à environ 30. Ainsi, nous pouvons prendre le plus grand N tel que 30 ^ (2N) <10 ^ (120).
Répondre. Au dos de l'enveloppe, N = 40 œuvres. Par coïncidence, cela se trouve être la durée d'une partie moyenne entre les grands-maîtres (bien qu'ils démissionnent souvent et ne jouent pas réellement le jeu jusqu'à la fin).
Éditer. La morale de l'histoire est que j'essayais d'estimer une borne supérieure pour votre borne inférieure. La première partie du raisonnement de Shannon n'est pas circulaire; il dit qu'il y a environ 30 coups légaux de chaque position, et ce nombre est raisonnablement constant pour la première partie d'une partie.
Ainsi, nous pouvons estimer que la valeur connue actuelle de N (qui est vraiment ce que vous demandez, appelons cela N ') pour être au plus log_30 (C) où C est égal à la quantité de puissance de calcul qui a existé dans l'histoire de l'humanité. Même avec des estimations prudentes pour C, nous obtenons quelque chose comme N 'au plus 20. En pratique, je ne pense pas que quiconque ait effectué ce calcul très haut dans l'arbre, car a priori nous savons que le calcul devient irréalisable après un très petite hauteur et il n'est pas nécessaire de rechercher exhaustivement l'arbre pour écrire de bons programmes d'échecs.
Notez cependant que vous posez une question légèrement plus faible, car il est possible que l'état initial du jeu soit un match nul avec un jeu optimal. Ainsi, on pourrait obtenir des limites pour N en écrivant un programme dont le but était de ne pas perdre le plus longtemps possible. Nous pourrions alors jouer ce programme contre les meilleurs programmes ou joueurs humains du monde et voir quelle est la durée d'une partie la plus courte. Encore une fois, cela ne répond pas correctement à la question, car nous ne pouvons pas supposer que nos adversaires jouent de manière optimale . Un vrai jeu optimal nécessite une connaissance complète de l'arbre de jeu, mais nous avons vu que cela est impossible à calculer. Ainsi, le mieux que nous puissions faire actuellement est d'approcher un adversaire jouant de manière optimale avec un Kasparov ou un très bon programme d'échecs.