Étape 0a.4 : comparaison du moteur aux références de gnubg #8

Manually merged
pierre merged 8 commits from comparaison into main 2026-11-02 18:04:53 +00:00
8 Commits
Author SHA1 Message Date
Pierre MARTINandClaude Opus 5.5 4b8e2f73cc ADR 0004 amendé : outils de l'étape 0 validés par Pierre
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 19:04:24 +01:00
Pierre MARTIN 12a90aec03 Merge remote-tracking branch 'origin/main' into comparaison 2026-11-02 19:03:47 +01:00
Pierre MARTINandClaude Opus 5.5 4dba402b74 Étape 0a.4 close : plan supprimé, feuille de route à jour
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 18:55:13 +01:00
Pierre MARTINandClaude Opus 5.5 15939802ce Plan 0a.4 : résultat
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 14:19:18 +01:00
Pierre MARTINandClaude Opus 5.5 83cb1a6f83 Tests : comparaison du moteur embarqué aux références de gnubg
tests/test_engine_reference.sh lance tests/reference/compare.py sur les
32 positions aux niveaux 0 et 2 plis. Tolérance de 0,002 mesurée et
justifiée dans tests/reference/README.md : écart maximal de 9,5e-4, avec
ou sans -ffast-math ; la cause est la sigmoïde approchée (_mm_rcp_ps) de
gnubg de bureau en SSE2, qu'un build SSE2 du moteur reproduit au bit près.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 14:18:10 +01:00
Pierre MARTINandClaude Opus 5.5 ae166d51e5 Chaîne C : Python 3 et jq ; test_reference.sh tourne dans Docker
jq n'est plus utilisé sur le PC (ADR 0004) : tests/test_reference.sh se
relance dans l'image ustagammon/build-c:2, qui contient aussi Python 3
pour le comparateur du moteur.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 14:18:10 +01:00
Pierre MARTINandClaude Opus 5.5 be6a4b4446 Moteur : classement exact de hint et commande engine-cli reference
- engine_best_moves suit hint_move de gnubg : fAnalyse vrai, seuil
  « douteux », puis RefreshMoveList (classement par niveau d'évaluation
  et départage des égalités).
- Correction : en match, l'équité des coups était convertie deux fois par
  mwc2eq (ScoreMove la convertit déjà).
- engine_cube : ajout de optimal et decision_text ; decision prend le nom
  de l'énumération cubedecision de gnubg, comme les références.
- engine-cli : commande reference (un niveau au format de
  tests/reference/) et nombres écrits avec 9 chiffres significatifs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 14:18:10 +01:00
Pierre MARTINandClaude Opus 5.5 856e4d64bd Plan de l'étape 0a.4 : comparaison aux références
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 14:04:14 +01:00