Les ordinateurs peuvent depuis longtemps jouer aux échecs en utilisant une technique de «force brute», en cherchant à une certaine profondeur puis en évaluant la position. Cependant, l'ordinateur AlphaGo n'utilise qu'un ANN pour évaluer les positions (il ne fait aucune recherche en profondeur pour autant que je sache). Est-il possible de créer un moteur d'échecs qui joue aux échecs de la même manière que AlphaGo joue Go? Pourquoi personne n'a fait ça? Ce programme fonctionnerait-il mieux que les meilleurs moteurs d'échecs (et les joueurs d'échecs) d'aujourd'hui?
32
Réponses:
EDIT (après avoir lu le document):
J'ai lu attentivement le journal. Commençons par ce que Google a affirmé dans le document:
Malheureusement, je ne pense pas que ce soit un bon journal. Je vais vous expliquer avec des liens (donc vous savez que je ne rêve pas):
https://chess.stackexchange.com/questions/19360/how-is-alpha-zero-more-human a ma réponse sur la façon dont AlphaZero a joué comme un humain
Le match était injuste , fortement biaisé. Je cite Tord Romstad, le programmeur original de Stockfish.
Stockfish n'aurait pas pu jouer les meilleurs échecs avec seulement une minute par coup. Le programme n'a pas été conçu pour cela.
Une table de hachage de 1 Go est absolument inacceptable pour un match comme celui-ci. Le stockfish rencontrait fréquemment une collision de hachage. Il faut des cycles CPU pour remplacer les anciennes entrées de hachage.
CONCLUSION
Google n'a pas prouvé sans doutes que ses méthodes sont supérieures à Stockfish. Leur nombre est superficiel et fortement biaisé vers AlphaZero. Leurs méthodes ne sont pas reproductibles par un tiers indépendant. Il est encore un peu tôt pour dire que le Deep Learning est une méthode supérieure à la programmation d'échecs traditionnelle.
EDIT (déc 2017):
Il y a un nouveau document de Google Deepmind ( https://arxiv.org/pdf/1712.01815.pdf ) pour l'apprentissage par renforcement profond dans les échecs. D'après l'abstrait, le moteur d'échecs numéro un mondial Stockfish a été "de manière convaincante" vaincu. Je pense que c'est la réalisation la plus importante des échecs informatiques depuis le match Deep Blue de 1997. Je mettrai à jour ma réponse une fois que j'aurai lu le document en détail.
Original (avant décembre 2017)
Clarifions votre question:
ANN peut être utilisé pour les moteurs d'échecs:
Giraffe joue à peu près au niveau Internation Master, qui correspond à la cote FIDE 2400. Cependant, Stockfish, Houdini et Komodo jouent tous à environ FIDE 3000. C'est un grand écart. Pourquoi? Pourquoi pas Monte-Carlo Tree Search?
Il y a eu des recherches selon lesquelles Monte Carlo Tree Search n'est pas bien adapté aux échecs. Go est un jeu différent aux échecs. Les algorithmes d'échecs ne fonctionnent pas pour Go car les échecs reposent sur des tactiques brutales. La tactique est sans doute plus importante dans les échecs.
Maintenant, nous avons établi que les SCTM fonctionnent bien pour AlphaGo mais moins pour les échecs. L'apprentissage en profondeur serait plus utile si:
Si l'apprentissage en profondeur peut atteindre les objectifs suivants, il battra l'algorithme traditionnel:
Permettez-moi de souligner:
un de plus:
Référence:
Je cite:
la source
DeepBlue a déjà battu Kasparov, donc ce problème est résolu avec une approche beaucoup plus simple. Cela a été possible parce que le nombre de coups possibles aux échecs est beaucoup plus faible que lors des mises , c'est donc un problème beaucoup plus simple. De plus, notez que NN et la force brute ont besoin d'énormes ressources informatiques ( ici vous pouvez trouver une photo de l'ordinateur derrière AlphaGo, notez qu'il n'utilise même pas de GPU, mais de TPU pour le calcul). Tout le problème avec go était que lorsque Deep Blue a battu Kasparov, la communauté go a fait valoir que ce ne serait pas possible avec go (pour de nombreuses raisons différentes, mais pour résumer les arguments, je devrais donner une introduction détaillée au jeu). d'aller). Oui, vous pouvez apprendre à NN à jouer aux échecs, Mario , ou essayer de lui apprendre à jouerStarcraft ...
Je suppose que la raison en est que vous n'entendez tout simplement pas souvent dans les médias grand public des cas où les gens résolvent des problèmes qui ont déjà été résolus.
De plus, votre prémisse est fausse, le Deep Learning est utilisé pour jouer aux échecs, par exemple comme décrit dans Deep Learning Machine Teaches Itself Chess in 72 Hours, Plays at International Master Level . Voir également l'article correspondant, Giraffe: Utilisation de l'apprentissage par renforcement profond pour jouer aux échecs .
la source