Ce n'est pas la première fois que je trouve un mouvement bien supérieur à celui du moteur d'échecs, il leur faut même un certain temps pour comprendre ces mouvements après les avoir faits.
Par exemple, le déplacement 15 ... Bf2
dans le jeu ci-dessous:
Le mouvement reste inaperçu par le moteur pendant un certain temps, ce n'est que lorsque je bouge qu'il commence à voir le reste de l'iceberg.
Je sais que tout dépend du temps que vous leur accordez pour analyser, mais il est inacceptable que parfois les humains parviennent à trouver ces mouvements en moins de temps que les ordinateurs.
- Pourquoi les moteurs d'échecs ne parviennent-ils pas à repérer les bons coups dans certaines positions? (J'ai lu une fois quelque chose sur un «effet d'horizon», peut-être que c'est lié?)
- Y a-t-il d'autres exemples notables? (Par exemple, ce fameux puzzle , il faut du temps aux ordinateurs pour le résoudre)
Ces questions contiennent des informations utiles pour expliquer partiellement certains facteurs qui pourraient être à l'origine de cette anomalie: Quels algorithmes et heuristiques sont populaires dans les échecs informatiques? , Lorsque vous jouez contre un adversaire informatique, quelles situations dois-je créer pour me donner une meilleure chance de gagner? , Évaluations informatiques: sont-elles fiables?
Remarques: Le piège est connu sous le nom de Fishing Pole , je sais que j'ai raté un compagnon en 3 (et un compagnon en 7) :(, la limite de temps par coup était de jours (correspondance par échecs) mais cela m'a pris environ 5-10 minutes pour finir de tout calculer.
la source
15... Bf2
du tout après 5 minutes.Réponses:
La raison en est appelée techniques d'élagage avant (voir http://chessprogramming.wikispaces.com/Pruning ) avec ProbCut en première ligne.
Le coup 15 ... Bf2 est taillé sur des profondeurs peu profondes car il inclut le sacrifice 16.Rxf1 sans retrouver quelque chose de concret avec des preuves immédiatement après. Le matenet est également difficile à voir, car il comprend d'autres mouvements `` silencieux '' comme par exemple 17 ... Ke7, et oui aussi les moteurs, non seulement les humains ont des difficultés à voir les mouvements silencieux à distance car ils sont souvent taillés.
Dans ce cas concret on ne peut même pas dire que les moteurs ne parviennent pas à repérer les bons coups, car aussi la suite 15 ... Rh3h1 est un très bon coup et conduit à une position absolument gagnée.
Enfin, vous devez vous rappeler que la force d'un moteur est toujours mesurée en termes d'élasticité et non en fonction de la capacité à trouver le chemin le plus court pour gagner. Peu importe, si un moteur gagne en 8 coups ou en 25 coups. Chercher trop pour la victoire la plus courte signifierait une perte de temps, car la plupart du temps, il n'existe pas du tout un bon coup secret. Et la perte de temps nuirait aux moteurs ELO-Rating.
la source
J'essaye ceci avec Houdini 1.5 (la version gratuite). Au début 15 ... Bf2 n'apparaît pas dans les 5 premiers mouvements, puis quand il atteint la profondeur 15, il apparaît, comme # 1. Prend environ 19 secondes sur mon ordinateur de quatre ans, pas si longtemps.
Il ne manque donc pas de le repérer, il le considère au contraire comme le meilleur mouvement une fois la profondeur 15 atteinte. Apparemment, tant qu'il ne semble profond que de 14 plis, les autres mouvements sont meilleurs (comme le 15 ... f5 + également gagnant).
Apparemment 15 ... Bf2 est un maté en 8, qui est de 15 plis (8 mouvements en noir, 7 en blanc). Mais au début, il le considère comme +10 environ, puis +20, puis s'accoupler en 10, puis s'accoupler en 8.
Le compagnon en 8 lignes est:
Clairement, lorsque Houdini 1.5 pense à 15 plis de profondeur, il ne prend pas en compte toutes les lignes possibles qui sont à 15 plis de profondeur, ou il verrait le compagnon en 8 au moment où il a terminé sa recherche à 15 plis de profondeur.
Je pense que c'est à cause de l' élagage , il arrête de regarder certaines lignes quand il pense qu'elles ne sont pas assez prometteuses. De cette façon, il peut passer plus de temps sur les lignes prometteuses et le programmeur pense que les avantages l'emportent sur les inconvénients. Mais je n'ai pas de réponse en ce moment sur ce qu'il décide de tailler ici (il prend probablement des millions de décisions de taille distinctes en profondeur 15).
Cela peut avoir à voir avec les mouvements silencieux ... Ke7 et ... Rah8, deux non-captures non-check dans une ligne où le noir est un morceau vers le bas. Il est probable qu'il décide quelque part qu'il n'est pas utile de continuer à chercher dans cette ligne. Ce n'est que plus tard, quand il continue la ligne et trouve le compagnon à la fin, que d'autres lignes qui prolongent le jeu (avec 18.Rh1 Rxh1 et ainsi de suite) apparaissent alors.
Quoi qu'il en soit, on sait que cela ne fonctionne pas si bien de laisser un ordinateur réfléchir pendant quelques secondes que si vous voulez aller au fond de quelque chose, quelques minutes, c'est mieux.
la source
après avoir lu toutes les réponses et d'autres sources, je comprends maintenant qu'ils ne «manquent» pas ou choisissent de manquer ces mouvements, les humains les ont programmés de telle manière qu'ils suivent un schéma spécifique sur (où / comment / quand + à) rechercher et plus important encore quand suspendre la recherche et rechercher des lignes plus prometteuses afin d'économiser des ressources.
Mais avec suffisamment de temps, un ordinateur finira toutes les combinaisons possibles sur une certaine profondeur.
TL; DR
la source
Je pense que tout le monde manque un compagnon beaucoup plus rapide. Lors de la vérification de la position avec Houdini 3, le noir a en fait un compagnon en 3 au coup 13. Au lieu de Bf1 +, le noir aurait dû jouer Bf2, et il se contente de 14. d3 bf1 + 15. Bh6 Rxh6 #. Donc, dans une réponse inhabituelle à votre question, certains moteurs n'ont peut-être pas vu votre mouvement tout de suite, mais, dans le cas de Houdini 3, il a trouvé un partenaire beaucoup plus rapide.
la source