Stockfish 12 est sorti

Posté par  (site Web personnel) . Édité par Benoît Sibaud, Davy Defaud et Pierre Jarillon. Modéré par patrick_g. Licence CC By‑SA.
Étiquettes :
49
5
sept.
2020
Jeu

Ô bienheureux qui jouez aux échecs, un de vos puissants adversaires algorithmique vient de sauter encore plus haut. Le logiciel libre (GPLv3+) Stockfish est devenu beaucoup plus fort dans sa nouvelle version 12 sortie le 2 septembre 2020. Combien plus fort ? « A lot! » comme disait un Monthy Python. Et en effet, les résultats des tests sont impressionnants !

Progrès continus de Stockish chess depuis la version 7

D’où vient le bond soudain de Stockfish ? C’est la question que je laisse en suspens pour l’aborder en deuxième partie.

Stockfish était déjà très très fort, et encore manque‑t‑on de superlatif à ce niveau du classement (environ 3 500 Elo pour Stockfish 9). Il est depuis 2005 dans le trio des meilleurs moteurs d’échecs. En 2017 le programme Alphazero l’avait toutefois écrasé, après seulement quelques heures d’apprentissage. Apprentissage ? Eh oui, comme dans Les Conquérants de l’impossible chers à ma jeunesse, vous pouvez maintenant prendre en stop un cerveau, lui apprendre les échecs et perdre à plate couture le lendemain.1

Les réseaux de neurones

On le dit, on le répète depuis des années, grâce aux réseaux de neurones l’ordinateur fera un jour les madeleines mieux que votre grand‑mère. AlphaZero en est une éclatante démonstration : initialement, le réseau de neurones ne savait rien d’autre que les règles du jeu et il a progressé en jouant contre lui‑même. Mais en attendant ma grand‑mère, l’énergie dissipée suffit à chauffer le four puisque Alphazero tourne sur une grosse bécane à base de processeurs pas très ordinaires. C’est normal, le réseau utilise TensorFlow.

Stockfish donc, utilise maintenant une double évaluation de position : celle de son moteur classique, qui a progressé, et celle apportée par un réseau de neurones actualisable efficacement (NNUE). Ces évaluations donnent une valeur de position, valeur utilisée plus tard dans une recherche de score alpha‑bêta du type PVS (Principal Variation Search) pour trouver le meilleur mouvement. C’est simple et compliqué, mais ce sont les notes du commit ! Le moteur classique calcule cette valeur en fonction de plusieurs algorithmes d’échecs conçus par des experts, testés et améliorés avec Fishtest, un outil à la SETI@home (qui est fini). L’évaluation NNUE calcule cette valeur avec un réseau de neurones basé sur des entrées simples. Le réseau est optimisé et entraîné par les évaluations de millions de positions à une profondeur modérée.
Le correctif vient du Japon, pas étonnant puisqu’il a d’abord été testé avec le jeu Shogi. L’évaluation NNUE est efficace sur des processeurs ordinaires et exploite le fait que seules des parties du réseau de neurones doivent être mises à jour après un mouvement d’échec classique. Ça ne cuira pas les madeleines mais ça tourne aussi sur vos mobiles.


  1. Lire Le Robot qui vivait sa vie de Philippe Ébly, publié chez Hachette — Paris (1978). 

Aller plus loin

  • # Les conquérants de l'impossible

    Posté par  . Évalué à 5 (+3/-0).

    C'était pas mal du tout, ça ferait une bonne série pour Netflix.

    Concernant les moteurs, les commentaires des parties entre StockFish et Leela sur YouTube sont assez instructifs et on voit maintenant certains GM adopter des lignes qui ont été d'abord utilisées par les machines. Malheureusement, le "gambit Jérôme" est toujours considéré comme pourrave.

  • # Fascinant

    Posté par  . Évalué à 8 (+6/-0). Dernière modification le 05/09/20 à 21:44.

    C'est quand même un sacré retournement de situation! On a tellement pensé que le calcul profond était la seule stratégie valable pour qu'un ordinateur gagne aux échecs.

    Est-ce qu'on va de notre vivant connaitre la résolution du jeu d'échecs? Ça serait quand même une sacrée bombe (*). Il me semble que les tables de fin de partie montent à 8 ou 9 pièces maintenant (même si je ne pense pas que les moteurs utilisent ces tables); il va forcément arriver un moment où des lignes complètes depuis l'ouverture jusqu'à la finale vont être explorées; si la fonction d'évaluation est fiable, les positions défavorables vont pouvoir être négligées avec très peu de risque d'erreur. Je me demande même si avec une stratégie participative impliquant des millions d'ordinateurs, ça ne pourrait pas commencer à être tenté.

    (*) Et alors si c'est les noirs qui gagnent, ça serait certainement l'évènement le plus inattendu de l'histoire des jeux de stratégie.

    • [^] # Re: Fascinant

      Posté par  (site Web personnel) . Évalué à 4 (+1/-0).

      Est-ce qu'on va de notre vivant connaitre la résolution du jeu d'échecs?

      Si on ne fait pas le calcul à 100 %, je suppose qu'on ne peut pas. Et vu l'explosion combinatoire, ça n'est pas faisable avec des ordinateurs classiques.

      Quelqu'un sait si une méthode qui n'explore par la totalité des solutions permet de résoudre ce jeu ?

      • [^] # Re: Fascinant

        Posté par  . Évalué à 5 (+5/-2).

        Si ta fonction d'évaluation est fiable, tu peux fortement raccourcir les branches non-exploitables. Si j'ai bien compris, les progrès du nouveau Stockfish, c'est la fonction d'évaluation. C'est difficile d'évaluer, tu ne peux pas juste compter les pièces, il faut évaluer l'avantage positionnel et les éventuelles compensations. Si ta fonction d'évaluation est naïve, il faut aller à une grosse profondeur pour être certain que tu n'es pas passé à côté d'un avantage positionnel qui se traduirait par un avantage matériel des dizaines de coups plus loin. Mais si tu peux bien évaluer une position sans calcul, alors ça réduit considérablement les besoins d'exploration. En fait, ce qu'il te faut surtout, c'est une bonne fiabilité sur les mauvaises positions : il faut être certain que la position est mauvaise et qu'il ne faut pas creuser dans cette direction.

        Bien sûr, sans ordi quantique, on ne pourra jamais explorer toutes les positions des échecs. Mais par contre, si pour une position 20 coups sont possibles, sur les 20 coups, il y a quoi, en moyenne, 3 ou 4 coups potables, 1 ou 2 coups douteux (sacrifices aux avantages positionnels incertains…), et 15 coups perdants. Si tu peux identifier les coups perdants sans y glisser dedans des coups douteux potentiellement très forts à long terme, le défi est tout à fait possible.

      • [^] # Re: Fascinant

        Posté par  (site Web personnel) . Évalué à 5 (+4/-0).

        Un article qui explique diverses stratégies pouvant être mises en œuvre pour se rapprocher de la résolution du jeu d'échecs, et que non, il n'est pas nécessaire d'explorer la totalité des parties pour y arriver :

        https://www.societe-informatique-de-france.fr/wp-content/uploads/2015/07/1024-no6-lemoine-viennot.pdf

        En particulier, il ne faut pas imaginer que la bonne stratégie serait de remplir des tables de fin de partie jusqu'à retomber sur la position de départ. On peut faire bien plus efficace.

        • [^] # Re: Fascinant

          Posté par  (site Web personnel) . Évalué à 3 (+0/-0). Dernière modification le 10/09/20 à 03:52.

          J'ai mis du temps à piger.

          Je tente de résumer : pour résoudre le jeu d'échec (et bien d'autres) il « suffit » de trouver un seul chemin qui fait gagner un camp à coup sûr.
          Je n'entre pas dans les détails expliqués dans le papier, mais ça réduit effectivement beaucoup les recherches, et effectivement un logiciel imparfait comme Stockfish aide à réduire les calculs.

          Par contre ça ne fonctionne pas si la résolution donne nul ? Dans ce cas seul le parcours exhaustif est valable. Comme c'est considéré comme assez probable, ou qu'il faille chercher presque jusqu'à la fin de chaque partie pour savoir si c'est nul ou pas, il y a pas mal de chances que ce ne soit pas accessible en 2037. J'ai raté quelque chose ?

          • [^] # Re: Fascinant

            Posté par  . Évalué à 3 (+1/-0). Dernière modification le 10/09/20 à 08:57.

            Suite à cette discussion, j'ai parcouru le papier publié dans Science en 2007 qui annonçait la résolution du jeu de dames (en nulle). Je ne suis pas sûr d'avoir tout compris; c'est basé sur une analyse à l'envers (ils partent d'une base de fins de partie et remontent le jeu). J'imagine que tu dois pouvoir analyser les collisions entre les trajectoires nulles et les trajectoires de victoire pour les blancs par exemple, dès que ta trajectoire de victoire blanche rencontre une nulle, alors tu sais qu'à un moment, les noirs ont un coup qui fait nulle, et ça élimine la branche "victoire blanche". Ils ont de nombreuses ouvertures qui sont classées "nulle ou perte", ce qui semble confirmer qu'ils ont validé la résolution en nulle en montrant que les branches "gain blanc" rencontrent une nulle quelque part en remontant le jeu (et du coup, on ne peut pas savoir si c'est nul ou perdant).

            Notez que les dames sont "résolues" dans le sens où on connait le résultats quand les deux joueurs jouent parfaitement, mais je ne pense pas qu'il existe un programme parfait (qui joue parfaitement dans toutes les positions), parce que la stratégie de résolution est basée sur l'élimination de nombreuses branches.

            Pas sûr qu'on puisse utiliser cette stratégie pour les échecs, parce qu'aux échecs une partie peut se terminer avant la finale (et il existe donc de nombreuses fins de partie qui ne sont pas dans les tables), alors qu'aux dames, par définition, tous les gains se terminent quand il n'y a plus de pièces pour un camp. Pour les nulles, je pense que ça n'arrive également que lorsqu'il reste peu de pièces.

            • [^] # Re: Fascinant

              Posté par  (site Web personnel) . Évalué à 1 (+0/-0).

              pour résoudre le jeu d'échec (et bien d'autres) il « suffit » de trouver un seul chemin qui fait gagner un camp à coup sûr

              Ce n'est pas vraiment «un chemin». On peut représenter l'ensemble des parties d'échecs possibles par un «arbre de jeu» : à la racine, on met la position initiale, à l'étage 1, les coups jouables à partir de la position initiale, etc. Il n'est pas possible de développer tout l'arbre qui contient bien trop de positions (voir https://fr.wikipedia.org/wiki/Nombre_de_Shannon) ; mais pour résoudre le jeu d'échecs, seule la connaissance d'une partie de cet arbre de jeu est nécessaire (ce qu'on appelle un «arbre solution»). La question est : existe-t-il des arbres solutions du jeu d'échecs assez petits pour être calculables ? (et si oui, arrivera-t-on à les trouver…)

              Par contre ça ne fonctionne pas si la résolution donne nul ?

              Si, pas besoin de parcours exhaustif dans ce cas. Un moyen simple de s'en tirer : tu changes légèrement les règles du jeu d'échecs en «Blanc est déclaré vainqueur s'il gagne ou si ça finit en nul, Noir est le vainqueur sinon». Tu fais le calcul. Puis tu changes à nouveau les règles : «Blanc est déclaré vainqueur s'il gagne, Noir est déclaré vainqueur s'il gagne ou si ça finit en nul». Tu refais le calcul. Si Blanc est en position de force dans le premier calcul, et Noir dans le deuxième calcul, c'est que deux joueurs jouant parfaitement feront nul. Et tu as obtenu ce résultat en deux «petits» calculs, ce qui est bien meilleur que le développement de tout l'arbre de jeu.

              Notez que les dames sont "résolues" dans le sens où on connait le résultats quand les deux joueurs jouent parfaitement, mais je ne pense pas qu'il existe un programme parfait (qui joue parfaitement dans toutes les positions)

              Effectivement, Schaeffer a produit ce qu'on appelle une «résolution faible», mais pas une «résolution forte» : https://fr.wikipedia.org/wiki/Jeu_r%C3%A9solu

              Pas sûr qu'on puisse utiliser cette stratégie pour les échecs, parce qu'aux échecs une partie peut se terminer avant la finale (et il existe donc de nombreuses fins de partie qui ne sont pas dans les tables)

              Schaeffer a utilisé une base de fin de parties en précalculant le résultat de toutes les positions avec <= 10 pièces encore en jeu. Ça lui a probablement permis un petit gain de temps, mais c'est l'élément le moins important de son calcul. Le fait de ne pas disposer d'une base complète de positions finales aux échecs n'empêche pas d'appliquer la même stratégie : quand on rencontre une position, au lieu de la chercher dans la grande base de données de positions finales, il suffit de tester si c'est un mat. On perd certes un peu de temps de calcul, mais les mêmes algorithmes peuvent être utilisés.

              • [^] # Re: Fascinant

                Posté par  (site Web personnel) . Évalué à 3 (+0/-0).

                Par contre ça ne fonctionne pas si la résolution donne nul ?

                pas besoin de parcours exhaustif dans ce cas. Un moyen simple de s'en tirer […]

                Je n'ai pas compris ta démonstration.
                Si à partir d'un premier déplacement en particulier on trouve nul avec ta méthode, ça ne prouve pas que les
                19 autres premiers déplacements possibles donnent nul.

                • [^] # Re: Fascinant

                  Posté par  (site Web personnel) . Évalué à 1 (+0/-0).

                  L'idée, c'est qu'à l'aide d'un premier calcul, tu identifies qu'un des 20 coups de départ est "gagnant ou nul" pour le premier joueur. Il suffit de trouver un des 20 coups, on peut ignorer les 19 autres ; et ensuite, pour chacune des réponses du 2e joueur, il faut à nouveau trouver une bonne réponse pour le premier joueur. Ainsi, un étage sur deux, il faut étudier toutes les réponses, mais un étage sur deux, il suffit de n'étudier qu'un seul coup : c'est pourquoi les arbres solutions sont bien plus petits que les arbres de jeu (de l'ordre de la racine carrée en général, parfois encore mieux quand les arbres de jeu sont déséquilibrés).

                  Il faut ensuite faire un deuxième calcul, mais visant à montrer que la position de départ est "gagnante ou nulle" pour le deuxième joueur, cette fois-ci. Donc les rôles sont inversés : au premier étage, il faut étudier chacun des 20 coups du premier joueur, mais au deuxième étage, il suffit de trouver une unique bonne réponse du deuxième joueur. Et ainsi de suite. On obtient un deuxième arbre solution, lui aussi bien plus petit que l'arbre de jeu.

                  Si tu obtiens ces deux arbres solutions, alors tu as prouvé que la position de départ est "gagnante ou nulle" pour le premier joueur, et aussi "gagnante ou nulle" pour le deuxième joueur : elle est donc nulle.

                  • [^] # Re: Fascinant

                    Posté par  (site Web personnel) . Évalué à 3 (+0/-0).

                    Comment tu passes de
                    « tel premier déplacement conduit uniquement à des nuls » (si on joue parfaitement)
                    à
                    « le jeu d'échec est résolu à nul » (c'est à dire que les 19 autres premiers déplacement conduisent uniquement à des nuls)
                    ?

                    • [^] # Re: Fascinant

                      Posté par  (site Web personnel) . Évalué à 2 (+1/-0).

                      Je ne passe pas de ta première phrase à la deuxième, car la première phrase n'implique pas la deuxième. Si tel premier déplacement conduit à un nul en jouant parfaitement, alors on peut seulement en déduire que la valeur théorique du jeu d'échecs est "victoire des blancs ou nul".

                      Pour montrer que le jeu est résolu à "nul", il faut deux choses :
                      * démontrer qu'un certain premier déplacement, unique, est "gagnant ou nul" pour les blancs (ce dont est chargé un premier calcul).
                      * démontrer que tous les 20 premiers déplacements sont "gagnant ou nul" pour les noirs (ce dont est chargé un deuxième calcul, indépendant du premier).

                      Dit autrement, la valeur théorique de la position de départ est 1 (victoire du premier joueur s'il joue parfaitement), ou 0 (nul), ou -1 (victoire du second joueur). Tu fais tourner ton ordinateur pendant x jours pour démontrer que la valeur théorique est >=0, puis tu recommences un calcul totalement différent pour démontrer qu'elle est <=0. Si tu arrives à faire ça, alors tu sais que la valeur est 0 (nul).

                      • [^] # Re: Fascinant

                        Posté par  (site Web personnel) . Évalué à 3 (+0/-0).

                        On tourne en rond, tu donnes la même explication, j'en déduis la même conclusion :-)
                        As-tu un lien vers cette explication par une autre personne ?

                        Titre de l'image

                        Ce que je comprends, c'est que tu explores la branche b1-1 (qui donne nul).

                        • [^] # Re: Fascinant

                          Posté par  (site Web personnel) . Évalué à 2 (+1/-0).

                          On tourne en rond, tu donnes la même explication, j'en déduis la même conclusion :-)

                          En effet, mais c'est pour deux raisons : parce que la répétition est la base de la pédagogie, mais aussi, parce que la répétition est la base de la pédagogie :-)

                          Ce que je comprends, c'est que tu explores la branche b1-1 (qui donne nul).

                          Si je comprends bien la notation (sur chaque feuille, on indique la valeur théorique de cette feuille), ce n'est pas un bon exemple, car la valeur théorique de cette position est «blancs». En effet, en jouant b1-3, blanc est certain de gagner. Il faudrait un exemple dont la valeur théorique est «nul».

                          En voici un. Si tu reprends l'article que j'ai cité ci-dessus, regarde la figure 15 : elle démontre, à l'aide de deux arbres solutions, que la valeur théorique du Tic-Tac-Toe est «nul». L'arbre solution de gauche montre que le premier joueur (celui à la croix) peut s'assurer au minimum le nul (il peut même gagner si l'autre fait une erreur, c'est ce que montre la branche de droite de cet arbre). L'arbre solution de droite montre que le deuxième joueur (celui au rond) peut lui aussi s'assurer au minimum le nul (d'ailleurs lui aussi peut gagner si son adversaire joue mal, c'est ce que montrent les deux positions marquées de fourchettes). Conclusion, le Tic-Tac-Toe est «nul», et ceci a été démontré en n'étudiant qu'une petite partie de toutes les positions possibles du jeu.

                          Est-ce que cela te convainc ?

                          • [^] # Re: Fascinant

                            Posté par  (site Web personnel) . Évalué à 3 (+0/-0).

                            Si tu reprends l'article que j'ai cité ci-dessus, regarde la figure 15

                            C'est clair maintenant, je pige où étais mon incompréhension.
                            J'avais compris que tu n'analysais qu'une seule branche, forcément ça ne prouvait pas fonctionner.
                            Et du coup je ne comprenais pas que tu ne comprenais pas. Donc nous comprenions que nous ne nous comprenions pas. En gros hein :-)

                             

                            Ce que je comprends de la figure 15, c'est qu'elle est plus courte que l'arbre total car les symétries et autres simplifications permettent d'élaguer (par exemple ne sont pas montrés les coups forcés, qui n'ont en réalité rien d'évident puisqu'il faut parcourir les sous-branches pour savoir que ce sont des coups forcés). En dehors de ces simplifications, l'arbre complet est exploré.

                             

                            Je refais mon schéma. Les 4 branches de départ   b1-1   b1-2   b1-3   et   b1-4   donnent nul :

                            Titre de l'image

                            Je ne saisi pas comment ta méthode fait l'économie du parcours intégral de mon schéma.
                            Sachant que chaque embranchement n'est qu'une position de départ comme une autre, il faut refaire la méthode à chaque fois de manière récursive, du moins à chaque mouvement blanc.

                            • [^] # Re: Fascinant

                              Posté par  (site Web personnel) . Évalué à 1 (+0/-0).

                              En dehors de ces simplifications, l'arbre complet est exploré.

                              Ici, tu te fourvoies. Considère par exemple la position qui consiste en une croix dans le coin supérieur gauche, et un rond dans une des deux cases adjacentes à ce coin. Tu ne la trouveras pas dans la figure 15. C'est un exemple parmi de multiples positions qui ne sont pas explorées.

                              Je refais mon schéma.

                              arbre 1

                              arbre 2

                              Voici deux arbres solutions. Le premier montre que Blanc peut s'assurer au moins «Nul». Le second montre que Noir peut s'assurer au moins «Nul». Et beaucoup de positions de l'arbre de départ ne sont jamais explorées. Convaincu ?

    • [^] # Re: Fascinant

      Posté par  (site Web personnel) . Évalué à 3 (+1/-0).

      L'avis de nombreux forts joueurs va de "les blancs gagnent" à "nulle", une majorité de nulles je crois, personne ne croit à un gain noir. Comme disait un champion du monde (Lasker ? Steinitz ?)

      Avec les les blancs je gagne parce que j'ai les blancs, avec les noirs parce que je m'appelle Lasker/Steinitz

      ウィズコロナ

      • [^] # Re: Fascinant

        Posté par  (site Web personnel) . Évalué à 4 (+2/-0).

        « Comme disait un champion du monde (Lasker ? Steinitz ?) »

        Ou plutôt Trump ? À non c'est un autre domaine :-(

        ----> []

        « IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace

      • [^] # Re: Fascinant

        Posté par  . Évalué à 4 (+3/-1).

        L'avis de nombreux forts joueurs va de "les blancs gagnent" à "nulle", une majorité de nulles je crois, personne ne croit à un gain noir.

        Oui oui, c'est pour ça que je disais que ça serait vraiment très frappant, comme résultat. Pourtant, un gain noir est loin d'être impossible; quand on prend une position symmétrique en finale, les noirs sont assez souvent gagnants (par zugzwang). Il faudrait faire des stats sur les bases de données de fin de partie pour savoir à quel point ça arrive souvent, mais c'est loin d'être impossible. Du coup, à moins de penser qu'il y a quelque chose de particulier avec les fins de partie, il semble tout à fait possible que les noirs soient gagnants dès le début.

        Je pense qu'on est simplement sur une erreur basique d'interprétation des "sondages". Si, en gros, on évalue à 40% la probabilité d'un gain blanc, 35% une nulle, et 25% un gain noir, on va répondre un gain blanc. Si tous les grands maitres ont à peu près la même évaluation (et en effet, il serait assez étrange dans le cadre de nos connaissances actuelles de mettre un gain noir avant un gain blanc), alors personne ne va répondre "gain aux noirs". Pourtant, ça ne veut pas du tout dire que les GM pensent qu'il n'y a aucune chance pour que le gain noir soit la solution des échecs, c'est juste qu'aucun GM ne pense que c'est le plus probable.

        • [^] # Re: Fascinant

          Posté par  (site Web personnel) . Évalué à 4 (+2/-0).

          Si j'ai bien compris, la résolution du jeu d'échecs correspond à connaitre le résultat de la partie opposant deux joueurs qui pratiqueraient chacun une stratégie optimale. Il ne suffirait pas d'apprendre par cœur cette partie pour gagner à coup sûr, encore faudrait il comprendre suffisamment profondément le jeu pour réfuter tous les coups non optimum joués par un adversaire qui ne suivrait pas ladite stratégie.

          Dès lors l'idée même qu'il soit possible de résoudre le jeu d'échecs à l'aide d'un ordinateur, se heurterait assez vite à un autre mur: celui de comprendre le sens de cette solution.

          Vlad Tkachiev
          , très fort joueur, aurait dit que les ordinateurs sont des dieux: ils nous montrent ce que nous devons faire sans que nous puissions comprendre pourquoi.

          Aujourd'hui les programmes ont atteint un tel niveau, quasiment mille elos de plus que le meilleur joueur du monde, qu'il est hors des capacités d'un être humain de comprendre la solution du jeu, si toutefois elle existe.

          • [^] # Re: Fascinant

            Posté par  . Évalué à 5 (+4/-1). Dernière modification le 08/09/20 à 10:11.

            Résoudre le jeu d'échec ne veut certainement pas dire qu'il serait possible pour un humain de gagner à tous les coups. Techniquement, ça ne veut même pas dire qu'un ordinateur serait capable de le faire, il existe des cas où il est possible de prouver mathématiquement qu'un gain certain existe sans pour autant savoir comment l'obtenir.

            Par contre, ça rendrait probablement un ordinateur imbattable. Si pour sortir des branches qu'il connait il faut sacrifier une dame, l'ordinateur passerait sur un mode de calcul habituel, et avec 1000 Elo et une dame en plus, la victoire serait systématique.

            Même si un humain connaissait la suite de coups parfaits, il ne pourrait pas connaitre toutes les réfutations aux coups sub-optimaux de son adversaire. C'est pour ça qu'un joueur moyen peut faire illusion plus longtemps face à un grand maître dans l'ouverture : on peut facilement apprendre la meilleure suite de coups sans savoir comment réagir quand notre adversaire joue une variante inhabituelle.

            Pour "le sens" des coups, ça dépend. D'un côté, il y a parfois des coups proposés par l'ordinateur qui semblent assez obscurs, mais il semble que la plupart des très bons joueurs arrivent à comprendre la logique. Il suffit de trainer sur Youtube, il y a de nombreux joueurs excellents (dont le champion du monde Magnus Carlsen) qui commentent leurs parties, quitte à recourir à l'analyse par ordinateur pour déchiffrer certaines positions et vérifier si ce qu'ils ont joué étaient le meilleur coup. Et quand ça n'était pas le meilleur coup, ils disent en général "aaaahhh ok oui bien sûr", donc ils comprennent pourquoi l'ordinateur joue ça.

            Les moteurs qui reposent sur l'IA, comme Alpha zero ou Leela, jouent parfois des coups positionnels très étonnants (en particuliers, des sacrifices positionnels), mais paradoxalement, les bons joueurs sont souvent capables de comprendre ces sacrifices bien mieux que les coups tactiques ou prophylactiques. Cependant, ces IA ne respectent parfois pas les grands principes échiquéens (équilibre des forces, conquête du centre, protection du roi…), ce qui voudraient dire que les heuristiques utilisées depuis des siècles ne seraient que des rèlges générales pour ne pas jouer trop mal, mais qu'il existe de meilleures stratégies.

            Après, il y a eu de vraies surprises, notamment en fin de partie, avec des positions qui étaient connues comme des nulles théoriques qui se sont avérées gagnantes, ou des gains beaucoup plus compliqués que prévus (avec des enchaînements de plus de 150 coups, ce qui rend caduque la règle d'une partie nulle après 50 coups sans prise). Mais si on regarde le verre à moitié plein, la théorie des échecs a quand même bien résisté à ces moteurs qui surpassent de 1000 Elo les meilleures joueurs. En gros, les moteurs ne jouent pas fondamentalement différemment des humains, les ouvertures qu'ils pratiquent sont complètement standard; quand ils jouent entre eux, ils font beaucoup de parties nulles (comme les humains); contrairement aux humains, ils ne sont jamais destabilisés et ne font jamais d'erreurs, ce qui leur permet de gagner à tous les coups.

  • # Hello ?

    Posté par  (site Web personnel) . Évalué à 8 (+5/-0).

    Je vois que le ELO de Stockfish 12 est de 380 sur l'image illustrant la dépêche. Ce qui est très faible, donc ça ne me semble pas possible.
    Du coup quelle est la bonne valeur ?

     

    Pour ceux qui ne connaissent pas, le ELO donne grosso-modo une évaluation de la performance.
    Un enfant débutant est vers 1000.
    Un joueur en club est entre 1500 et 2000.
    Les 1000 meilleurs du monde sont autour de 2500.
    Il y a 5 ou 10 personnes ayant dépassé 2800.
    Le record humain est 2882.

    À comparer avec Stockfish 9 (sur un ordinateur personnel ?) qui tape à 3500 selon la dépêche :)

    • [^] # Re: Hello ?

      Posté par  (site Web personnel) . Évalué à 8 (+6/-0). Dernière modification le 05/09/20 à 22:59.

      Il me semble que c'est un ELO propre aux tests avec Fishtest. Comme ils ne servent qu'à comparer les évolutions de Stockfish entre elles, il n'a pas besoin d'être lié au classement des joueurs d'échecs. Son mode de calcul particulier est donné dans la dernière formule de http://hardy.uhasselt.be/Fishtest/brownian_approximation.pdf

      "La liberté est à l'homme ce que les ailes sont à l'oiseau" Jean-Pierre Rosnay

    • [^] # Re: Hello ?

      Posté par  . Évalué à 10 (+8/-0).

      Bah du coup Stockfish 12 serait à 3750, par là. Après, je ne suis pas sûr que le classement ELO soit fiable avec autant d'écart entre les meilleurs; si Stockfish est tellement bon qu'il ne perd jamais contre les versions précédentes, on ne peut pas calculer d'ELO…

  • # mauvais lien

    Posté par  . Évalué à 7 (+6/-0).

    Le lien wikipedia dans l'article pointe vers le filet de poisson (https://fr.wikipedia.org/wiki/Stockfisch) et non vers le jeu d'échec (https://fr.wikipedia.org/wiki/Stockfish_(programme_d%27%C3%A9checs)).

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n’en sommes pas responsables.