Autant que je sache, en gros, les moteurs d'échecs fonctionnent par:
- calculer toutes les variations possibles (arbre de jeu) jusqu'à une certaine profondeur
- évaluer la position finale en fonction de certains critères (matériau, activité de la pièce ...)
- sur la base de cette évaluation, décider du meilleur coup
Je comprends parfaitement que pour avoir un moteur efficace, il existe des moyens d'élaguer certaines lignes, de limiter la profondeur, etc. mais ce n'est pas ma question.
La question est: existe-t-il d'autres tentatives pour programmer un moteur d'échecs (pas nécessairement puissant, mais pas aléatoire non plus), qui ne suit pas ce schéma?
engines
programming
computer-chess
user1583209
la source
la source
Réponses:
Dans les premières années d'échecs informatiques, les gens ont en fait essayé d'enseigner les échecs informatiques de la même manière qu'avec les humains, expliquant des concepts stratégiques comme une structure de pion saine ou l'initiative. Ces tentatives ont été rapidement abandonnées car la méthode que vous décrivez a été beaucoup plus efficace.
Récemment, il y a eu une autre tentative pour laisser un moteur s'enseigner aux échecs via le Deep Learning (probablement encouragé par le succès de Go AI de Google ). Selon l'article auquel j'ai lié, ils ont assez bien réussi et ont réussi à atteindre la force de la messagerie instantanée.
la source
According to the article I linked to, they were quite successful and managed to reach IM strength
mais si vous lisez l'article original, vous verrez que l'article a fortement exagéré le succès.@Glorfindel n'a pas tort, mais l'approche d'apprentissage en profondeur des échecs est vraiment un terme de fantaisie pour le réglage des paramètres dans la programmation des échecs.
L'apprentissage en profondeur permet à un moteur d'échecs d'apprendre une fonction d'évaluation, quelque chose généralement écrit à la main par un programmeur. Pendant une partie, cela fonctionne comme un moteur d'échecs normal.
Autres possibilités:
la source
Certainement! SI vous voulez vraiment dire ... "en théorie, existe-t-il d'autres méthodes pour coder un moteur d'échecs?" ... Alors, oui !!
Par exemple ... on pourrait stocker une copie de toutes les positions possibles dans les échecs (un nombre énorme, je sais), et avoir une évaluation pour chacune. Ensuite, sa réponse à une question donnée (c'est-à-dire, "meilleur coup pour les blancs en position X"), sera immédiatement connue simplement en recherchant ce tableau. L'état actuel du matériel informatique est-il tel que cela aurait un sens? Non. Mais vous ne l'avez pas demandé.
la source