How to interface to chess engines.

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

john2001plus

How to interface to chess engines.

Post by john2001plus »

It has been several years since I was last on this forum, so apparently my old account expired and I had to sign up again.

I am interested in writing a program to interface to any chess engine for the purpose of doing chess analysis. I want to create a large database of tactical problems derived from real games.

Since my own chess engine was never finished, it seems like it would be easier to use an existing engine.

My understanding is that the interface can be done using pipes. Where can I find a page that will describe how to do this?

John Coffey
Pradu
Posts: 287
Joined: Sat Mar 11, 2006 3:19 am
Location: Atlanta, GA

Re: How to interface to chess engines.

Post by Pradu »

john2001plus wrote:It has been several years since I was last on this forum, so apparently my old account expired and I had to sign up again.

I am interested in writing a program to interface to any chess engine for the purpose of doing chess analysis. I want to create a large database of tactical problems derived from real games.

Since my own chess engine was never finished, it seems like it would be easier to use an existing engine.

My understanding is that the interface can be done using pipes. Where can I find a page that will describe how to do this?

John Coffey
This depends on which platform you program for I guess. If you want to try native-control, cross-platform GUI programming with wxWidgets, try looking at wxProcess and wxExecute. I look forward to your GUI.

BTW, I really liked your "How to get to 1900" page.
john2001plus

Re: How to interface to chess engines.

Post by john2001plus »

I am not looking to create a GUI. I want to use an engine to analyze thousands of games, if not hundreds of thousands of games, looking for tactical wins.

I found some places on the web that talked about spawning processes with pipes, like the following ...

http://msdn2.microsoft.com/en-us/librar ... S.60).aspx

http://support.microsoft.com/kb/190351

Spawning processes and creating pipes is a totally new topic for me. If there were some additional help out there then I would appreciate the 411. :-)

John Coffey
jwes
Posts: 778
Joined: Sat Jul 01, 2006 7:11 am

Re: How to interface to chess engines.

Post by jwes »

Would the analysis feature in Arena work for you?
User avatar
Andres Valverde
Posts: 557
Joined: Sun Feb 18, 2007 11:07 pm
Location: Almeria. SPAIN

Re: How to interface to chess engines.

Post by Andres Valverde »

john2001plus wrote:It has been several years since I was last on this forum, so apparently my old account expired and I had to sign up again.

I am interested in writing a program to interface to any chess engine for the purpose of doing chess analysis. I want to create a large database of tactical problems derived from real games.

Since my own chess engine was never finished, it seems like it would be easier to use an existing engine.

My understanding is that the interface can be done using pipes. Where can I find a page that will describe how to do this?

John Coffey
in Winboard sources/docs it is explained quite well
Saludos, Andres
User avatar
Roman Hartmann
Posts: 295
Joined: Wed Mar 08, 2006 8:29 pm

Re: How to interface to chess engines.

Post by Roman Hartmann »

You might want to have a look at that: http://www.tim-mann.org/xboard/engine-intf.html#6

Roman
john2001plus

Re: How to interface to chess engines.

Post by john2001plus »

Roman Hartmann wrote:You might want to have a look at that: http://www.tim-mann.org/xboard/engine-intf.html#6

Roman
Yes. I saw that. What is on the Tim Mann page seems concerned with how to write the interface from the engine side, as opposed to writting the interface that talks to the engine.

There seems to be some info on the web about using pipes, plus I ordered some books. Maybe I could try to look at the winboard source code if it is available.

John Coffey
Dann Corbit
Posts: 12538
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: How to interface to chess engines.

Post by Dann Corbit »

Official Winboard source code page:
http://ftp.gnu.org/gnu/xboard/?M=D

Cool, tweaked version:
http://www.ascotti.org/programming/chess/winboard_x.htm

Java program that talks to UCI and Winboard chess programs:
http://jose-chess.sourceforge.net/

Polyglot is a UCI to Winboard translation layer:
http://wbec-ridderkerk.nl/html/details/PolyGlot.html