Computer Chess Club Archives


Search

Terms

Messages

Subject: Communicating with UCI engines

Author: Andrei Fortuna

Date: 01:10:14 08/01/05


Hi,

I was wondering what was the safest and most general way to communicate with an
UCI engine to have it analyse a position. So far I do it like this (under
WinXP):

1) load engine as a separate process, redirect it's input and output so my
initial process can communicate with it

2)in the start send:
    uci
    ucinewgame

3) for each position send:
    stop (just in case the engine was thinking)
    position fen <fen string>
    go wtime <white time in msecs> btime <black time in msecs>

4) In order to fetch best move the engine is thinking I intercept what follows
after the string " pv " or "bestmove" sent by the engine

So far this works wonderfully with Tao but I had problems with ProDeo (doesn't
seem to start analysis and crashes sometimes) and Ruffian seems to work but also
crashes at some point.

Any suggestions on what I could do different ? I want to be able to load any UCI
engine in my application and have it analyse position ...

Cheers,
Andrei






This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.