Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: UCI - Worth Implementing?

Author: Odd Gunnar Malin

Date: 10:39:17 12/07/02

Go up one level in this thread


On December 07, 2002 at 05:44:35, David Rasmussen wrote:

>I am considering implementing UCI. But first of all, is it worth it? And also,
>are there any problems with the protocol? Specifically, are somethings smarter
>in the xboard protocol, or is UCI the better protocol throughout?
>Are there any free UCI interfaces that will let my engine play on chess servers
>like zippy on winboard?

Hi.

I think you have to define the use for the engine before implementing the
protocol.

If you want it to be used in human-comp games from inside Fritz with friends,
then the positive with the protocol is much more than the negative.

Some points:

Learning (result).
Positional learning is a much more needed feature than book learning since the
user most probably want it to repeat openings. Here it is nice if it variate
it's play after the opening moves and positional learning let it do it on a
human way (plays better these more games it play).
In comp-comp matches you want the engine to repeat winning lines and avoid
losing lines so a aggresive book learning is preferable.

Missing draw feature.
It seems like the gui check your score to decide if it should accept/offer a
draw so you shoud adjust the score before you send it to the gui.
score+=drawscore
Now the user can enable/disable this from the gui without going into some
cryptic personality setting.

Since the booklearning don't work like you would like it to do it is preferable
(by design) to use the gui book. This isn't any drawback in human-comp game
because this give the user more control and can create his training book for all
his training engine at once.
This isn't legal of course in comp-comp tournament if your not on the
book-programmers team so all such feature have to be disabled and you could sit
with a prety dumb book and therefor forced to use your own book.

The ponder issue isn't easy to fix without changing the protocol. You are forced
to have the pondermove ready when you send the move so I don't know how to fix
it when you have to make a shallow search for pondermove because your last
search failed high or something. Such small strength variation isn't important
in human-comp games, he would hardly see any difference when the elo variate
+-20 point.

All this adjustable option from inside the gui is possible from a WB-gui too if
it's made for it.
I you own ChessPartner you could download
http://home.online.no/~malin/sjakk/download/PolarEngine13.zip and see an example
of this. Just install it without any fidling with the ini files.

I have implemeted a uci-light plus full winboard support in my engine, where the
uci-light means that I react as a pure search engine without any knowlege that a
game is going on (keep pos learning intact).

Odd Gunnar



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.