Computer Chess Club Archives


Search

Terms

Messages

Subject: Yippee! I'm a programmer :)

Author: Edward Seid

Date: 05:33:41 11/21/02


----- cross-posted on Winboard Forum -----

Perhaps the Subject is a bit over-enthusiastic.  Let me explain.

I've been thinking about FischerRandom lately.  There are 960 possible starting
positions.  If you turn off the opening book, and let your favorite engine
ponder the normal opening position, the evaluation will probably stay within +/-
0.25 (maybe even a smaller range).  In other words, things are about equal.

Have you ever wondered what the results would be if you let Crafty or some other
strong engine work on each of the 960 possible FischerRandom positions?  Would
the evaluations stay close to 0.00, or are there some positions that are much
better for White (or Black?).

Wouldn't it be neat if you could place an engine on auto-pilot to crunch through
each position for a fixed amount of time?  Some engines already have this
feature.  All you need is an EPD file of all the positions you want to crunch.

Does such a file exist?  A file with all 960 FischerRandom starting positions?
If there wasn't before, there is now :)

First, I'd like to say that I'm not a programmer.  You say C, I say "See what?"
You say bitboard, I say "I'm a bit bored too."  But I've always been keen to
join the ranks of the elite that hang out in the computer chess forums.  So this
is my first try at real programming (except for a little Basic on a TRS-80 in
high school).

I found an algorithm to create the FischerRandom starting positions on
http://www.chessvariants.com.  It's fairly straightforward and involves several
rolls of a 6-sided die.  The EPD specifications can be found at
http://pgn.freeservers.com

With these two reference points and "Active Server Pages for Dummies", I set out
to write a program to generate an EPD file of all 960 FR positions.

My language of choice was VBScript because I can immediately use it to makeover
my website with ASP and it builds a good foundation for learning Visual Basic.

The fruits of my labor are online to be shared with everyone.  Visit my website
at http://www.winboard.info and click on the link to the EPD.  The page uses
client-side scriping, so your browser should be VBScript-enabled.  If you "View
Source", you can see the entire code in the Script section.  Feedback is
welcomed.

A helluva lot of work went into this little program.  I had a lot of bugs,
including some faulty logic in coding the algorithm, but one by one, I solved
them all and have a great feeling of accomplishment.

The next planned project will be an addition to my website... a searchable
database of Winboard engines.

Let me know what you think.  I'm glad I can communicate talk with you all,
programmer to programmer :)

PS If anyone has a spare PC, you can try letting Crafty or Yace crunch through
the EPD.  At 3 minutes/move, it will take 2880 minutes = 48 hours.  Let me know
what you find.



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.