UCI question

Programming Topics (Computer Chess) and technical aspects as test techniques, book building, program tuning etc

Moderator: Andres Valverde

UCI question

Postby Guest » 12 Jul 2005, 19:09

I've just started programming my own engine, and am trying to sort out the UCI protocol. After a lot of reading around I realised that I can't offer draws or resign in UCI - I wish it would make this clear in the protocol. Anyway:

After a "ponderhit" is a "go" always sent as well ? Otherwise how would I know what the time controls are ?

I have been looking for details of how to convert my program to a *.eng for Fritz, but references to this kind of information seem to have been removed from the chessbase site, is this now revoked ? I see they have several engines on their website, have they recompiled these themselves ?

TIA
Guest
 

Re: UCI question

Postby Anonymous » 12 Jul 2005, 21:02

>After a "ponderhit" is a "go" always sent as well ? Otherwise how would I know what the time controls are ?

No, go will not be sent after ponderhit. You have the times from the last go. When you receive ponderhit, your time will be the same as from the last go. Opponents time on the clock will be the opponent time you received last minus the time between last go and ponderhit. You have to track this yourself. This is indeed a difference to the WB protocol, where you get current times on the clock after every move.

Also, my reply is totally from memory - I hope I have not mixed things up.

>I have been looking for details of how to convert my program to a *.eng for Fritz, but references to this kind of information seem to have been removed from the chessbase site, is this now revoked ? I see they have several engines on their website, have they recompiled these themselves ?

You cannot create a classical CB type .eng engine yourself, without collobarating with CB. But with UCI, there is hardly the need to have this.

Regards, and good luck,
Dieter
Anonymous
 

Re: UCI question

Postby Fabien Letouzey » 13 Jul 2005, 08:53

Hi Dieter,

Dieter B?r?ner wrote:This is indeed a difference to the WB protocol, where you get current times on the clock after every move.


Are you sure about this?

The #1 problem I've got with PolyGlot is that XBoard only sends clock info just before the engine turn, not after its move which is what I would need for UCI pondering.

Is WinBoard different in that respect?

Fabien.
Fabien Letouzey
 
Posts: 110
Joined: 03 Dec 2004, 10:17
Location: France

Re: UCI question

Postby Guest » 13 Jul 2005, 22:53

This seems reasonable upon first reading, but I'm still a little confused. Suppose there are a number of movestogo before the next time control and you keep getting ponderhits, what happens when you reach the time control with a ponderhit ? Hopefully my engine will be able to play a semi reasonable game before long and I'll be able to test it out although already I see that the fritz interface sends a strange mix of go commands that seem almost random, for example demanding a depth of 3 on one reply and 5 the next and then giving time controls the next, all within a 'friend' game.
Guest
 

Re: UCI question

Postby Anonymous » 14 Jul 2005, 06:48

Fabien, you are of course right. No idea, what I thought when I wrote this. Probably I wanted to write, that you get the clock with (not after) every move.

Caesum, perhaps you should show a concrete example of the "strange mix of go commands ...".

Regards,
Dieter
Anonymous
 

Re: UCI question

Postby Fabien Letouzey » 14 Jul 2005, 08:38

Hi,

Caesum wrote:This seems reasonable upon first reading, but I'm still a little confused. Suppose there are a number of movestogo before the next time control and you keep getting ponderhits, what happens when you reach the time control with a ponderhit ?


I don't understand your question. You can never receive two "ponderhit"s in a row. Furthermore all time info was sent with the previous "go ponder", including "movestogo".

Fabien.
Fabien Letouzey
 
Posts: 110
Joined: 03 Dec 2004, 10:17
Location: France


Return to Programming and Technical Discussions

Who is online

Users browsing this forum: No registered users and 4 guests