Je suis tombé sur tout un bogue dans Houdini, version 1.5. Regardez bien le problème suivant:
Trait aux blancs
Toute une étude de V. Korolkov, qu'Averbakh utilise dans son livre (chess tactics) pour jaser d'attaque double. Voyons voir:
1. f7 Ta6+ (1....Tf6 2.Fb2 et 1... Tg8 2.fxg8=D+ Rxg8 3.Ce7+ Rg7 4.Cxc8 avec une finale gagnante)
2.Fa3 (2.Rb2? et là 2...Tf6) 2...Txa3+ 3.Rb2 Ta2+ 4.Rc1 Ta1+ Et maintenant, les blancs n'ont qu'à aller se cacher bien à l'abri en g5, n'est-ce pas?
5.Rd2 Ta2+ 6.Re3 Ta3+ 7.Rf4 Ta4+ 8.Rg5 Enfin arrivés:
Trait aux noirs
8...Tg4+! La tour est imprenable et va finalement revenir défendre la promotion en se sacrifiant en g8 mais...
9.Rh6! Tg8 10.Ce7! Fe6 11.fxg8=Q+ Fxg8 12.Cg6#
Jolie séquence avec plusieurs tentatives surprenantes de la part des noirs, qui passent très près de s'en sortir.
Donc, le problème que j'ai remarqué, c'est que Houdini 1.5 évalue la position initiale comme étant nulle. Un gros 0.00. Je me dis, diantre, aurait-il trouvé un trou dans les variantes? Houdini est toujours très fort pour annuler. Bref, je suis passé à travers cette variante, coup par coup et l'évaluation restait toujours à 0.00, même juste avant le 12e coup. Houdini a un mat en 1 sur l'échiquier et ne le voit pas!!
Ma théorie, c'est que Houdini 1.5 est programmé pour donner du 0.00 dès qu'une finale fou contre cavalier apparaît ET que cette instruction arrive avant la considération du mat dans l'algorithme. C'est très drôle, au 12e coup des noirs, voici le output de Houdini:
= (0.00) 12.Cxg8
= (0.00) 12.Cc8
= (0.00) 12.Cg6#
= (0.00) 12.Cc6
et ça continue comme ça
Houdini voit le mat, mais ne daignera pas l'exécuter car de toutes façons, son algorithme lui dit que c'est une nulle.
Est-ce que quelqu'un détecte le même problème dans une version plus récente? Ou avec un autre engin?
Trait aux blancs
Toute une étude de V. Korolkov, qu'Averbakh utilise dans son livre (chess tactics) pour jaser d'attaque double. Voyons voir:
1. f7 Ta6+ (1....Tf6 2.Fb2 et 1... Tg8 2.fxg8=D+ Rxg8 3.Ce7+ Rg7 4.Cxc8 avec une finale gagnante)
2.Fa3 (2.Rb2? et là 2...Tf6) 2...Txa3+ 3.Rb2 Ta2+ 4.Rc1 Ta1+ Et maintenant, les blancs n'ont qu'à aller se cacher bien à l'abri en g5, n'est-ce pas?
5.Rd2 Ta2+ 6.Re3 Ta3+ 7.Rf4 Ta4+ 8.Rg5 Enfin arrivés:
Trait aux noirs
8...Tg4+! La tour est imprenable et va finalement revenir défendre la promotion en se sacrifiant en g8 mais...
9.Rh6! Tg8 10.Ce7! Fe6 11.fxg8=Q+ Fxg8 12.Cg6#
Jolie séquence avec plusieurs tentatives surprenantes de la part des noirs, qui passent très près de s'en sortir.
Donc, le problème que j'ai remarqué, c'est que Houdini 1.5 évalue la position initiale comme étant nulle. Un gros 0.00. Je me dis, diantre, aurait-il trouvé un trou dans les variantes? Houdini est toujours très fort pour annuler. Bref, je suis passé à travers cette variante, coup par coup et l'évaluation restait toujours à 0.00, même juste avant le 12e coup. Houdini a un mat en 1 sur l'échiquier et ne le voit pas!!
Ma théorie, c'est que Houdini 1.5 est programmé pour donner du 0.00 dès qu'une finale fou contre cavalier apparaît ET que cette instruction arrive avant la considération du mat dans l'algorithme. C'est très drôle, au 12e coup des noirs, voici le output de Houdini:
= (0.00) 12.Cxg8
= (0.00) 12.Cc8
= (0.00) 12.Cg6#
= (0.00) 12.Cc6
et ça continue comme ça
Houdini voit le mat, mais ne daignera pas l'exécuter car de toutes façons, son algorithme lui dit que c'est une nulle.
Est-ce que quelqu'un détecte le même problème dans une version plus récente? Ou avec un autre engin?
Comment