Explication
UCI est le sigle de Universal Chess Interface. Ce protocole ouvert définit la façon dont une interface utilisateur communique avec un . L’interface graphique est le programme qui affiche l’échiquier, les pendules et les commandes. Le moteur est le programme qui calcule les coups et les évaluations. UCI permet d’associer des produits conçus par des développeurs différents.
Un échange typique
- L’interface lance le moteur et envoie uci.
- Le moteur répond avec son identité, ses options configurables et uciok.
- L’interface peut modifier les options et utilise isready pour confirmer que l’initialisation est terminée.
- L’interface envoie position avec la position initiale ou une , éventuellement suivie de coups.
- La commande go lance une recherche avec des limites de temps, de profondeur ou d’autres conditions.
- Pendant le calcul, le moteur peut envoyer des lignes info. Il termine par bestmove et le coup choisi.
Les coups transmis par UCI utilisent généralement les cases de départ et d’arrivée, comme e2e4. Une promotion ajoute la pièce choisie, comme dans e7e8q. Cette forme n’est pas la même que la normalement utilisée pour lire les parties.
UCI définit un langage de communication, et non la force d’un moteur ou l’apparence d’une interface. Il diffère aussi du . Les deux répondent à un besoin similaire, mais leurs commandes ne sont pas interchangeables sans adaptateur.
Confusions fréquentes
UCI et moteur
UCI ne calcule pas de coups. C’est le protocole utilisé pour demander ces calculs à un moteur compatible.
UCI et CECP
Ce sont deux protocoles différents. Un moteur compatible avec l’un ne comprend pas nécessairement l’autre.
Voir le termeSources
- 1.UCI Protocol, Shredder Chess
- 2.UCI Protocol and Stockfish Commands, Stockfish
