|
Les modules savent-ils calculer? par Slucaino le
[Aller à la fin] |
| Informatique | |
C'est clairement leur point fort, pourtant...lorsque j'ai proposé à plusieurs d'entre eux de résoudre le mat en 4 coups qui suit, ils ont tous trouvé un mat en 5 à la place. Il n'y a que Stockfish 1.91 ja, testé par Tantale, qui trouve le mat en 4 coups (en moins de 5 secondes). Savez-vous d'où vient ce mystère?
Problème de Schoenberger, 1934
Les Blancs jouent et font mat en 4 coups
|
|
Pour des résolutions de mat, il y a des modules spécialisés comme celui qui est livré avec les interfaces ChessBase ou ChestUCI 5.2, GoliathMate 1.0 beta3, Mater UCI 3.2, Popeye 1.7, pour ne citer que ceux qui fonctionne comme UCI Engines.
Le but du jeu est de gagner donc faire mat. Pour un module de jeu, il ne s'agit pas répondre à une questin du genre "Mat en 3" mais de trouver n'importe quel moyen de gagner.
|
|
Si je comprends bien:
- dans le cas où le mat en 4 serait la seule façon de gagner, les modules de jeu le trouveraient rapidement
- dans le diagramme ci-dessus, après avoir trouvé un mat en 5, les modules se mettent en quelque sorte "en veille"
Est-ce à peu près ça?
|
|
http://www.france-echecs.com/article.php?art=20080907210948682
|
|
A Slucaino.
Concernant le diagamme ci-dessus, n'y a-t-il pas mat en 2 ?
|
|
Le premier coup blanc est bien Rb3 ?
EDIT : Blaise, je pense que les noirs peuvent roquer...
|
|
D'accord.
|
|
@ Slucaino: Oui ce raisonnement est juste pour les modules de jeu.
Pour les modules spécialisés en recherche de mat, par contre on leur demande de trouver un mat en 4 alors qu'il existe un mat en 3, ils l'indiqueront.
Les deux types de modules sont des modules d'échecs par contre les uns sont là pour enfoncer un clou, les autres pour scier le bois.
Le tout est de savoir s'il faut garder le manche au marteau ou à la scie.
|
|
C'est dû à la fausse répétition de position. Si on rajoute un pion noir en b4, les modules trouvent instantanément.
|
|
C'est vrai, Petiteglise. Et si on joue 1.Rb4, comme je l'ai essayé, le module rectifie aussitôt ses vues sur la position.
Merci lefouduroi pour ces explications. Merci aussi TrueMadness pour le lien, avec la connaissance duquel je n'aurai pas créé de fil.
Je suis maintenant un peu mieux équipé pour entretenir une relation juste avec le module de jeu et comprendre davantage son fonctionnement. En effet, dans les positions traditionnelles, il donne son évaluation et précise ce à quoi il pense, mais dès qu'il y a mat, il fait son annonce et "se tait"...alors si en plus il se trompe, c'est utile d'avoir des éclaircissements.
|
|
Juste une remarque.
S'il est normal qu'un module parties se contente de trouver un gain et n'annonce pas le mat le plus court, il en est différemment des modules problèmes.
L'un d'eux, nommé "mate 2.16" est bien un module problèmes, puisqu'il est très exactement, comme il a été dit, le "module problèmes" de Fritz 11.
Or, non seulement il ne résout pas le 4# de Schoenberger, se plaçant d'emblée en recherche de 5#, mais il se révèle incapable de résoudre des mats aidés en 3 coups, voire en 2 coups.
Ce n'est plus "l'ami" Fritz, mais un poids mort. Pauvres Erckmann et Chatrian...
Voir aussi quelques compléments d'information.
|
|
Ce qui est courant c'est de voir un module annoncer un mat en 5 coups par exemple puis finalement un mat en 4 coups quand il augmente sa profondeur de calcul.
|
|
Ce qui se passe exactement avec un moteur de jeu :
Quand il trouve un mat qu'il croit forcé (c'est-à-dire que toutes les défenses qu'il a examiné mènent au mat), il continue à réfléchir sur cette suite, pour voir s'il a manqué des défenses.
Ca arrive : vous avez déjà dû voir des modules annoncer brièvement un mat en 6, puis se raviser, quitte parfois à annoncer un autre mat forcé plus tard.
Bref, quand un module de jeu évalue à +M6, ce n'est pas forcément une certitude, juste qu'à cet instant il ne voit de défense adverse parant ce mat ou même le retardant.
Ici, ayant par exemple trouvé un mat en 5 commençant par 1 Rb3 0-0 2 2 Dh2 (ou 2 Ra3+), il va chercher des défenses noires, en vain, et ne va donc jamais se donner la peine d'examiner 1 Rb4.
|
|
En revanche un module de résolution de problèmes va calculer exhaustivement (en gros) les possibilités d'atteindre le but donné et n'annoncera la solution qu'une fois qu'il aura "démontré" que le mat est inéluctable dans le nombre de coups imparti, pas un de plus !
Ici, ce qui manque au module défectueux cité par erony, c'est sans doute la gestion de la modification du droit au roque en cours de solution. Problémiste avait ce même bug, je crois qu'il est corrigé désormais.
|
|
Je crains qu'il y ait d'autres "bugs" dans le moteur fritzien. Deux exemples.
Considérez ce charmant 6# donné il y a trois semaines au tournoi de solutions, où l'on amène astucieusement un "Novotny" au 5e coup. Le moteur s'abîme plusieurs heures dans la contemplation de 1 axb4?, le plus stupide coup qui soit dans la position, puisqu'après 1...cxb4 le RN a du champ, sans aucun bénéfice.
Mat en 6 (D. Kutzborski & St. Eisert, 1980).
8/b1p2R2/P1k1B3/2p4r/PpNp2N1/P6P/4P1b1/K7
|
|
Je disais dans l'article en lien que les modules n'aiment pas les zugzwangs et les batteries. Sans doute pas non plus les clouages et les femmes à barbe. Voici un exemple caricatural.
Voyez cet aidé 2# de notre ami Eric Huber, habitué de FE. Il a deux solutions. Le module cité n'en trouve qu'une. Il sèche sur celle qui me paraît la plus facile.
Mat aidé en 2 -- 2 solutions -- (E. Huber, 2003).
3k4/1p1qp3/3N2R1/4B3/2K5/8/8/8
|
|
Un nouvel exemple, cet aidé inédit que j'ai résolu pour m'entraîner. Sur les 4 solutions (et 4 mats modèles) deux se terminent par des "mats normaux", mais deux autres par des mats de batteries. Le "moteur problèmes" de Fritz ne trouve que les deux premières.
Mat aidé en 3, 4 solutions (J. Kupper, the Problemist 2012).
1B6/4np2/1p4R1/2bb1qn1/K3k3/1rp5/8/8
|
|
La solution du premier diagramme est-elle : 1.Rb4 Th4+ 2.Rb3 Tb4+ (ou Ta4) 3.Rxb4 suivi de 4.Da8# ? Ca me semble laid.
|
|
Il y'a 3...c5+ dans ta variante Oimsi :-)
|
|
Pourquoi ne pas utiliser un outil adapté, comme Popeye, qui est en plus gratuit ?
Par curiosité j'ai testé le premier problème, Popeye termine en indiquant :
solution finished. Time = 0.118 s
Il trouve donc 40 fois plus rapidement que Stockfish...
Pour le #6 suivant c'est bien sûr beaucoup plus long, la clé (assez diabolique) est quand même trouvée en moins de 2 minutes.
|
|
En fait c'est l'inverse qui aurait été étonnant, que des modules fabriqués pour la partie puissent être efficaces pour les problèmes. Cela procède de la même naïveté que croire que les très forts joueurs sont forcément des bons solutionnistes.
|
|
Merci True Madness. En plus je n'arrêtais pas de surveiller ce coup, pfff. Bon du coup la solution est bien plus élégante en effet pour empêcher les noirs de roquer :)
|
|
Oui Nicolas, mais certains modules fabriqués pour le problème sont... inefficaces pour les problèmes.
|
|
|