Un moteur d'échecs peut-il vous dire pourquoi un coup est mauvais ou bon? Par exemple, supposons qu'un moteur d'échecs indique que le score contre mon adversaire est actuellement de +2 en ma faveur. Je fais alors un mouvement et mon score baisse pour dire 1,4. Un moteur peut-il me dire ce que j'ai fait de mal, de sorte que mon score est passé de 2 à 1,4 (en supposant que je n'ai pas accroché un morceau ou un pion, etc.)
Il me semble qu'avoir des programmeurs d'échecs rendre leurs programmes encore plus forts est maintenant inutile et il serait beaucoup plus bénéfique pour le joueur d'échecs moyen s'ils pouvaient demander à leurs programmes de nous expliquer pourquoi un coup est mauvais (ou bon), en supposant qu'ils ne le peuvent pas actuellement fais ça.
Réponses:
En quelque sorte (mais pas vraiment) - et il devient en fait plus difficile pour les moteurs de le faire pour vous. Pour comprendre pourquoi, vous devez comprendre le déroulement de l'évaluation. Les moteurs peuvent généralement effectuer des évaluations instantanées sur une position donnée, ce qui lui donne une valeur brute. Puis, quelle que soit la position, ils jouent en avant, essayant de trouver la ligne en avant qui optimise ce score pour les deux côtés.
Il est important de comprendre que le score «2,0» ou «1,4» n'est pas l'évaluation / le score pour la position actuelle. Au lieu de cela, c'est l'évaluation que N se déplace le long de la ligne, chaque côté jouant le meilleur coup trouvé par le moteur. C'est pourquoi le «score d'évaluation actuel» saute pendant que l'ordinateur réfléchit. Ce n'est pas que le 'score' pour une position a changé - c'est juste qu'il a trouvé une ligne différente en avant qui s'est retrouvée dans une position différente (qui avait un score différent.)
Dans le passé, les moteurs étaient nuls. Pas seulement à cause des algorithmes sous-optimaux, mais à cause du matériel très lent - si vous pensez que l'intérêt composé est puissant, ce n'est rien comparé à la loi de Moore . Donc, les ordinateurs à l'époque ne faisaient que regarder quelques pas vers l'avenir. Ce qui a rendu relativement facile pour un humain de suivre la logique - votre score a baissé parce que vous perdez votre chevalier au tour suivant.
Mais maintenant? Si votre score est passé de «2,0» à «-0,3», il est possible que ce soit parce que, en raison de certaines tactiques inévitables au cours des 7 prochains mouvements, vous devrez abandonner l'échange afin d'éviter de perdre votre reine ou de vous faire échec et mat. . Mais il est difficile de montrer le saut de "Voici la position maintenant" et "Eh bien, j'ai évalué 20 milliards de positions à l'avenir, et croyez-moi quand je dis que vous sacrifiez la tour pour leur évêque était le meilleur que vous puissiez espérer."
la source
@D_M a mentionné Chessmaster, mais il ne signale que des fonctionnalités statiques très simples telles que:
Savez-vous pourquoi Chessmaster a fait ça? C'est parce que la mise en œuvre a été facile.
NON . Chesmaster ne peut pas faire ça. Aucun logiciel ne peut le faire. Nous n'avons pas la technologie pour le faire. Les techniques de programmation de moteur traditionnelles ne peuvent pas faire cela.
Pour faire ce que vous décrivez, nous avons besoin de modèles avancés de mathématiques / apprentissage automatique. Je ne suis pas au courant de quelque chose comme ça.
la source
En plus d'autres réponses, les moteurs n'évaluent pas les positions comme les humains, ils ne peuvent donc pas fournir une bonne explication pourquoi ils pensent que votre mouvement est inférieur (l'accent est mis sur ce qu'ils pensent, pas nécessairement).
Mais vous pouvez suivre les lignes de côté en utilisant des suggestions de moteur et comprendre pourquoi il était inférieur. C'est du moins ce que je fais.
Pourrait-il y avoir un moteur qui puisse le faire? Je suppose que oui, mais d'un point de vue commercial, probablement, un effort incroyablement énorme est nécessaire.
la source
Je pense que le moteur d'échecs peut vous «dire», mais de manière indirecte.
Ce que je ferais, c'est de jouer plusieurs coups différents à partir de la même position. Le moteur d'échecs vous donnera (vraisemblablement) un score différent pour chacun.
Cela vous permettra de "classer" les différents mouvements. Peut-être qu'un modèle émergera. Sinon, vous voudrez peut-être qu'un joueur humain (plus fort) vous explique le classement du moteur d'échecs.
la source
Oui, j'ai vu des programmes qui tentent d'expliquer pourquoi un déménagement est bon ou mauvais dans la langue. Chessmaster 9000 ferait cela.
De nombreux moteurs vous montreront la meilleure ligne pour chaque mouvement. Il peut donc vous dire que si vous jouez à g6, il s'attend à ce que le jeu passe à f5 gxf5 Nxf5, alors que si vous jouez à b6, il s'attend à ce que le jeu passe à a5 bxa5 Bxa5. Souvent à partir de là, vous pouvez voir pourquoi le déménagement a été bon ou mauvais. Mais parfois, c'est encore très subtil.
Il y a un outil ici où vous pouvez saisir une position et il vous dira exactement pourquoi Stockfish évalue la position comme il le fait. Cela ne fonctionne que pour une position statique (il ne regarde pas du tout vers l'avant), mais c'est toujours intéressant.
la source
Non. Bien que Chessmaster, comme mentionné par tout le monde, puisse vous dire certaines choses de base comme si la ligne suivante entraînera un sacrifice d'échange ou si vous risquez de perdre un pion et ainsi de suite.
Mais vous pouvez également analyser cela vous-même en minimisant les lignes. Il n'y a pas de moteur d'échecs et je n'en vois aucun dans un proche avenir qui puisse expliquer pourquoi le mouvement est bon / mauvais, sauf s'il vous en coûtera une différence matérielle. Comme un moteur peut avoir joué un coup pour améliorer sa position à l'avenir, disons comme après 50 coups. Il n'y a aucun moyen qu'il puisse vous expliquer pourquoi ce coup se traduira par une meilleure position après 50 coups.
De plus, les principaux moteurs d'échecs sur le marché comme Stockfish, etc. ne prennent même pas la peine d'inclure des fonctionnalités telles que le niveau des moteurs d'échecs sont complètement différents et très difficiles à analyser même si nous avons une explication de chaque mouvement.
la source
L'évaluation du moteur ("2" / "1.4") est en fait très similaire à la façon dont un humain évaluerait une position. Il s'agit essentiellement d'une somme de divers facteurs tels que le matériau , la sécurité du roi , l' activité des pièces , etc. évalués non pas pour la position actuelle mais pour la position, une vingtaine d'avance environ; en supposant un jeu parfait des deux côtés.
En principe, on pourrait essayer de surveiller séparément l'évolution de tous ces facteurs (au lieu de seulement leur somme comme le font les moteurs). Par exemple, si un coup conduit à une valeur inférieure pour la "sécurité du roi" par la suite par rapport au meilleur coup, on pourrait être tenté de dire à l'apprenant quelque chose comme: Votre dernier coup a rendu votre roi plus vulnérable
Cependant, je doute que cela fonctionne dans les jeux réels, car:
Pour cette raison, je doute que les ordinateurs soient capables de vous apprendre le jeu positionnel ou intuitif (basé sur des principes) au moins avec la technologie actuelle. Mieux vaut utiliser des méthodes classiques telles que d'autres humains, lire / regarder / écouter des jeux annotés, etc.
la source