PolyGlot used with Winboard

Discussions about Winboard/Xboard. News about engines or programs to use with these GUIs (e.g. tournament managers or adapters) belong in this sub forum.

Moderator: Andres Valverde

PolyGlot used with Winboard

Postby ComeNPlay » 03 Jun 2008, 21:00

Hello everybody.

This is my first post here and it is about a program called PolyGlot. I used the search feature but found now thread for this program alone. If this on a wrong section or has an older thread already, please move it.

I am operating a computer account on a chess server but as of yet I have only been able to run WB based engines. I would like to try an UCI engine while running it via Winboard. I downloaded the PolyGlot program but haven't been able to utilize it. I lack the know-how of how to operate it. Could somebody help me with step-to-step instructions of getting it to work. I know practically nothing about programming and I am new with Winboard and Zippy, so please bear with me and be patient.

Currently I use Zippy with Winboard to run engines. I am fairly satisfied with my settings at the moment so I wouldn't want to change anything except for try a new engine. This winboard engine is totally fine but I noticed on online analysis of GMs that new UCI engines reach greater depths signifficantly faster. That's why I'm interested in trying them also.

I'd ge grateful for help. Thank you.
ComeNPlay
 
Posts: 3
Joined: 03 Jun 2008, 20:40

Re: PolyGlot used with Winboard

Postby Volker Pittlik » 03 Jun 2008, 21:26

UCI engines work exactly the same way as WB engines. The only difference is possibly the path to the engine. The readme file of PolyGlot is fine. Just try it offline and when you figured it out it'll works on servers too.
User avatar
Volker Pittlik
 
Posts: 1031
Joined: 24 Sep 2004, 10:14
Location: Murten / Morat, Switzerland

Re: PolyGlot used with Winboard

Postby Olivier Deville » 03 Jun 2008, 21:37

ComeNPlay wrote:Hello everybody.

This is my first post here and it is about a program called PolyGlot. I used the search feature but found now thread for this program alone. If this on a wrong section or has an older thread already, please move it.

I am operating a computer account on a chess server but as of yet I have only been able to run WB based engines. I would like to try an UCI engine while running it via Winboard. I downloaded the PolyGlot program but haven't been able to utilize it. I lack the know-how of how to operate it. Could somebody help me with step-to-step instructions of getting it to work. I know practically nothing about programming and I am new with Winboard and Zippy, so please bear with me and be patient.

Currently I use Zippy with Winboard to run engines. I am fairly satisfied with my settings at the moment so I wouldn't want to change anything except for try a new engine. This winboard engine is totally fine but I noticed on online analysis of GMs that new UCI engines reach greater depths signifficantly faster. That's why I'm interested in trying them also.

I'd ge grateful for help. Thank you.


Welcome to the Winboard Forum :)

The search tool is not totally functional at the moment, We are working on fixing it.

First of all, an old cygwin1.dll is needed for polyglot, namely 1005.17.0.0 if you play with ponder on.

Now, how to use Polyglot :

Let's say I want Hamsters 0.6 to work under Winboard, and the exe is called Hamsters_06

I will need to add in the Hamsters folder :

cygwin1.dll
polyglot.exe (I will rename it Hamsters_polyglot.exe)
polyglot.ini
a book file in polyglot format (performance.bin, or one that you found on the internet or you made yourself. My book is called gm2001.bin)

Here is my polyglot.ini for Hamsters :


[PolyGlot]

EngineDir = .
EngineCommand = Hamsters_06.exe

Book = true
BookFile = gm2001.bin

Resign = true
ResignScore = 900

[Engine]

Hash = 128

NalimovPath = C:\TBs
NalimovCache = 32

OwnBook = true


Of course, the last 3 commands are not needed, since Hamsters does not support tablebases and has no ownbook. But they are harmless.

You can add other UCI options as well in the Engine field.

And now just load Hamsters_polyglot like any Winboard engine, and you are done !

Olivier
User avatar
Olivier Deville
 
Posts: 1176
Joined: 26 Sep 2004, 19:54
Location: Aurec, France

Re: PolyGlot used with Winboard

Postby ComeNPlay » 04 Jun 2008, 09:31

Thank you very much Oliver for your thorough reply. It really helped me getting on track with UCI engines. I wonder why they had to make different communication protocols for engines like this...

However, I seem to have problems with this engine's response to moves which ponder did not predict correctly. I have tried to turn ponder off by adding a line 'Ponder = 0' in the polyglot.ini file, I have tried another cygwin1.dll -file too that I found online, I have tested another UCI engines too but nothing seems to work...

Firstly, the engine does not just lose time on evaluating some move best which opponent doesn't make after all. That is normal and can't be called a problem. Yet, the engine loses many seconds in a bullet game (up to 5 seconds and more) while recovering from its "shock" of having to have to respond to another move than the ponder predicted. There seems to be massive delay/lag caused by something. For example one game I was on M1 position and had 3 seconds on the clock but yet didn't manage to mate the opponent and lost. It climbs up further and further into greater depths while the opponent had made an obviously different move than it's calculating on. Then it resets the process and starts all over and many valuable seconds are lost.

Also, the evaluation process jams to odd depths at first, starting at depth 5-8 till it suddenly jumps to 12-14. Now that might be ok in standard games but I tested with bullet time control and it means a certain forfeit on time loss every time unless I manage to mate in let's say 15-20 moves. :D From my experience of engines, I have seen nothing like this before.

Since these are my first times connecting to a server while using PolyGlot, I have no idea what might cause this.
ComeNPlay
 
Posts: 3
Joined: 03 Jun 2008, 20:40

Re: PolyGlot used with Winboard

Postby Robindu Guha » 04 Jun 2008, 10:01

Hello ComeNPlay

your understanding that UCI engines reach higher depths faster,is wrong in the first place. UCI or Winboard,for engines is just a protocol..

Or in easy language,it the Language that Engines use to communicate with the GUI.

As for the Polygot,i will be glad to help you.

First lets start with a check-list,here are the files you need to have :-

Polyglot.exe
cygwin1.dll (use the one found on http://wbec-ridderkerk.nl) newer versions have problems with Ponder ON mode,IIRC
PolyGlot.ini

the above 3 files are absolutly MUST.

Now you need to Edit Polyglot.ini to your needs...

here is a basic polyglot.ini

*******************************************************
[PolyGlot]

EngineDir = Put your engine directory here(i.e C:\Engines)
EngineCommand = engine executable name here (i.e Oxygen.exe)

Book = true/false,as per your need,this is strictly for Polyglot book.not the engine book.
BookFile = Performance.bin ; same directory as INI file, use full path otherwise

[Engine] {under this you can add other engine specific options}

Hash = 64
EGTBPath = C:\Tablebases

*************************************************************
Best,
Robindu
User avatar
Robindu Guha
 
Posts: 7
Joined: 25 May 2008, 12:14
Location: India

Re: PolyGlot used with Winboard

Postby Charles Browne » 04 Jun 2008, 10:10

ciao
Last edited by Charles Browne on 04 Jun 2008, 17:26, edited 1 time in total.
Charles Browne
 
Posts: 209
Joined: 26 May 2008, 00:30

Re: PolyGlot used with Winboard

Postby ComeNPlay » 04 Jun 2008, 10:49

Robindu Guha wrote:Hello ComeNPlay

your understanding that UCI engines reach higher depths faster,is wrong in the first place.

*************************************************************


Hello Robindu, thank you for answering. Firstly I want to correct one thing: my original sentence was: "- - new UCI engines reach greater depths signifficantly faster." If you miss that short word "NEW" in the beginning, you might misunderstand the whole phrase. :wink: By that I meant that for example, let's say a WB engine is programmed in 2005 or early 2006 and some UCI engine releases update in mid 2008, it might be possibly that the UCI engine's search efficiency has somewhat improved, making the difference clearly visible in analysis usage. What the 1-3 ply increase means to playing strength I can't tell. Thank you for all the others too, it's great to have an atmosphere where more experienced users are not unwilling to help less experienced users.

I need to test furthermore. Earlier I tested vs 1 single computer account which always makes its move immediately while now, after playing human and other computer opponent my recent games show no lag problem even with 1/1 bullet time controls. Strange! The only difference now is that the opponent does not make IMMEDIATELY its move like the earlier opponent always did. The engine still seems to "jam" to even level 5-6 in depth but then it suddenly jumps to depths of some 14-16 and makes its move (CPU usage freezes evaluation line showage?).

I will test more as soon as possible. At the moment it seems good.
ComeNPlay
 
Posts: 3
Joined: 03 Jun 2008, 20:40

Re: PolyGlot used with Winboard

Postby Marc Lacrosse » 04 Jun 2008, 11:24

ComeNPlay wrote: I have tried to turn ponder off by adding a line 'Ponder = 0' in the polyglot.ini file


This is erroneous.

Correct syntax is "Ponder = false" in the [Engine] section of the .ini file.

Whenever you have doubts regarding the precise syntax of a given engine's UCI options, you may launch engine executable in a dosbox and then if you type "uci" (+ enter) you get the full list of possible parameters with the precise syntax to use in a polyglot ini file for that engine.

Marc
Marc Lacrosse
 
Posts: 116
Joined: 29 Jan 2005, 09:04
Location: Belgium

Re: PolyGlot used with Winboard

Postby Tord Romstad » 04 Jun 2008, 13:24

Marc Lacrosse wrote:
ComeNPlay wrote: I have tried to turn ponder off by adding a line 'Ponder = 0' in the polyglot.ini file


This is erroneous.

Correct syntax is "Ponder = false" in the [Engine] section of the .ini file.



Actually, this is erroneous, too. What you should do is to start XBoard with the -xponder switch.

Tord
User avatar
Tord Romstad
 
Posts: 639
Joined: 09 Oct 2004, 12:49
Location: Oslo, Norway

Re: PolyGlot used with Winboard

Postby Robindu Guha » 04 Jun 2008, 13:27

ComeNPlay wrote:"- - new UCI engines reach greater depths signifficantly faster." If you miss that short word "NEW" in the beginning, you might misunderstand the whole phrase. :wink: By that I meant that for example, let's say a WB engine is programmed in 2005 or early 2006 and some UCI engine releases update in mid 2008


Winboard Protocol is still very much on & infact many programmers,like myself like the winboard protocol over UCI.

My Engine,Oxygen written in 2007 & even developed currently supports only winboard protocol :-)

Engines like The Baron,Frenzee,Scorpio are extremely strong winboard engines,& they do have very modern search,i am sure :-)

2nd,I am glad that my post was found to be useful

The behavior you report,about no update of PV on your machine,is not produced here,but maybe it could be you using too much Hash tables,so that GUI gets no RAM or maybe you even set the process priority of you Engine process to High,causing that...

also the problem can be different,but that was my feel of your problem,let me know how you get on.
Best,
Robindu
User avatar
Robindu Guha
 
Posts: 7
Joined: 25 May 2008, 12:14
Location: India

Re: PolyGlot used with Winboard

Postby Marc Lacrosse » 04 Jun 2008, 14:22

Tord Romstad wrote:
Marc Lacrosse wrote:
ComeNPlay wrote: I have tried to turn ponder off by adding a line 'Ponder = 0' in the polyglot.ini file


This is erroneous.

Correct syntax is "Ponder = false" in the [Engine] section of the .ini file.



Actually, this is erroneous, too. What you should do is to start XBoard with the -xponder switch.

Tord


Sorry but I do not agree Tord.

The -xponder switch on winboard or xboard command line is just another way to get the same result : avoiding engine pondering during opponent's thinking time.

In case of an UCI engine that is driven through the polyglot adaptor, a "ponder = false" line in the polyglot ini file will give the same result.

So my answer was _not_ erroneous.

But yours is just off-topic : my purpose was just to point that ComeNplay's syntax could not work, not to discuss any other way to implement "ponder off".


Regards

Marc

PS By the way I see no possible advantage in selecting "ponder off" for engine online play.
Marc Lacrosse
 
Posts: 116
Joined: 29 Jan 2005, 09:04
Location: Belgium

Re: PolyGlot used with Winboard

Postby Tord Romstad » 04 Jun 2008, 14:47

Marc Lacrosse wrote:
Tord Romstad wrote:
Marc Lacrosse wrote:
ComeNPlay wrote: I have tried to turn ponder off by adding a line 'Ponder = 0' in the polyglot.ini file


This is erroneous.

Correct syntax is "Ponder = false" in the [Engine] section of the .ini file.



Actually, this is erroneous, too. What you should do is to start XBoard with the -xponder switch.

Tord


Sorry but I do not agree Tord.

The -xponder switch on winboard or xboard command line is just another way to get the same result : avoiding engine pondering during opponent's thinking time.


No, setting "Ponder = false" in the .ini file will not work. If you don't start XBoard with the -xponder switch, it will send the command "hard" to PolyGlot, which will then set the "Ponder" UCI parameter to "true", regardless of whether you have "Ponder = false" in the .ini file. I just verified this (with Polyglot 1.4), just to be 100% sure.

But yours is just off-topic : my purpose was just to point that ComeNplay's syntax could not work, not to discuss any other way to implement "ponder off".


That's true, the syntax was wrong. But in the case of "Ponder", it doesn't matter, putting it in the .ini file has no effect.

Tord
User avatar
Tord Romstad
 
Posts: 639
Joined: 09 Oct 2004, 12:49
Location: Oslo, Norway

Re: PolyGlot used with Winboard

Postby Marc Lacrosse » 04 Jun 2008, 18:12

Tord Romstad wrote:
(...) setting "Ponder = false" in the .ini file will not work. If you don't start XBoard with the -xponder switch, it will send the command "hard" to PolyGlot, which will then set the "Ponder" UCI parameter to "true", regardless of whether you have "Ponder = false" in the .ini file. I just verified this (with Polyglot 1.4), just to be 100% sure.

(...) But in the case of "Ponder", it doesn't matter, putting it in the .ini file has no effect.

Tord


You are right (I just rechecked myself with winboardX and Polyglot 1.4) and I am confused that I did not see this sooner...

My feeling is that this is annoying : if I switch from one GUI to another I cannot be sure that PG .ini parameters regarding pondering will be effective or not.

As WB itself does not let PG "decide" regarding pondering I would prefer that any WB-able GUI would do the same ...

Do you have any info on this regarding Arena, Mathias' GUI or other GUIS ?

Marc
Marc Lacrosse
 
Posts: 116
Joined: 29 Jan 2005, 09:04
Location: Belgium

Re: PolyGlot used with Winboard

Postby Tord Romstad » 04 Jun 2008, 18:49

Marc Lacrosse wrote:You are right (I just rechecked myself with winboardX and Polyglot 1.4) and I am confused that I did not see this sooner...

My feeling is that this is annoying : if I switch from one GUI to another I cannot be sure that PG .ini parameters regarding pondering will be effective or not.


Actually, any other behavior would be a serious bug in PolyGlot. An UCI engine running under PolyGlot is supposed to behave exactly like an WB engine. In other words, it should follow the WB protocol. The WB protocol contains two commands from the GUI to the engine, "hard" and "easy", which instructs the engine to switch pondering on and off. When PolyGlot receives this command, it has to inform the UCI engine that pondering has been switched on or off.

If putting "Ponder = false" in the polyglot.ini file did what you thought it did, it would mean that the "hard" command from the GUI wouldn't work as specified by the Winboard protocol. Similarly, if "Ponder = true" ensured that pondering was always on, the "easy" command wouldn't work correctly. Therefore, the way PolyGlot currently handles this is the only possible way if it wants to follow the WB protocol.

As WB itself does not let PG "decide" regarding pondering I would prefer that any WB-able GUI would do the same ...

Do you have any info on this regarding Arena, Mathias' GUI or other GUIS ?


I don't, but if they behave differently from WB in this respect, these GUIs have a bug. A WB compatible GUI always has to send "hard" and "easy" to the engine when switching pondering on and off. If it doesn't, neither real WB engines nor UCI engines running through PolyGlot will ponder correctly.

Tord
User avatar
Tord Romstad
 
Posts: 639
Joined: 09 Oct 2004, 12:49
Location: Oslo, Norway

Re: PolyGlot used with Winboard

Postby Marc Lacrosse » 04 Jun 2008, 22:32

Tord Romstad wrote:
Actually, any other behavior would be a serious bug in PolyGlot. An UCI engine running under PolyGlot is supposed to behave exactly like an WB engine. In other words, it should follow the WB protocol. The WB protocol contains two commands from the GUI to the engine, "hard" and "easy", which instructs the engine to switch pondering on and off.

Tord


OK.

Then it should be better to have a notice in Polyglot doc regarding the fact that the "Ponder" uci option cannot be tuned effectively in a PG ini file in the most common case where the game is managed by a WB GUI.

Thanks for making me aware of this point, Tord.

Regards

Marc
Marc Lacrosse
 
Posts: 116
Joined: 29 Jan 2005, 09:04
Location: Belgium


Return to Winboard and related Topics

Who is online

Users browsing this forum: No registered users and 28 guests

cron