Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Why use opening books in machine-machine competitions?

Author: Bob Durrett

Date: 19:59:38 11/25/03

Go up one level in this thread


On November 25, 2003 at 22:33:28, Bob Durrett wrote:

>On November 25, 2003 at 02:59:12, Mig Greengard wrote:
>
>>Having debated both sides of the issue in regard to man-machine play, I'm left
>>wondering why opening books are used in computer-only competitions. It's one
>>thing to say that a Kasparov has his own mental book and preparation so the
>>computer should too. But what is the point of proving you can hire a better book
>>preparer and where is the programming glory of winning on a cooked opening line
>>whether by design or by chance against another machine?
>>
>>Doesn't it make sense to just dump the books and start letting these things play
>>the opening on their own? Or if that's too dramatic and/or ugly, to play
>>Nunn-style matches with balloted openings? Otherwise it seems to me that you
>>just try to cover up the weaknesses of your program by tweaking the book to
>>avoid the positions it doesn't handle. And that should be contrary to the goal
>>of making a good chessplaying machine. Have their been significant projects
>>without books? Or with computer-only generated and tuned books?
>>
>>I don't doubt this has been touched on often here but I didn't find much in the
>>way of good answers to this in the archives. Is the continued use of opening
>>books just sheer inertia, the quest to play better chess or more human chess, or
>>are there other reasons? Too hard to regulate the definition of "book"? It's
>>obvious that books are becoming more and more important and the teams are
>>investing more work (and money) into them to be successful in computer-computer
>>play. This all seems like a massive wrong turn or at best a distraction.
>>
>>One of the many suggestions for the next man-machine match is to let the human
>>access a his own database, perhaps a limited number of times. That way it's not
>>just a battle of human memory versus a specially prepared book with three
>>million positions entered by humans. If and when that happens, the book
>>advantage will be back on the human side. So it seems to me that the computer
>>folks (i.e. you guys) could head that plan off by curtailing the use of books or
>>eliminating. Instead you are increasingly dependent on them, particularly
>>against humans.
>>
>>But that's another thread and I'd love to hear some answers on why books are
>>still used in computer-computer play. I may quote you for an article, so shout
>>out if you don't wish your name to be used for whatever reason. Thanks, Mig
>
>I believe that the premise of your question is false.  We do not have engine vs
>engine competitions.  We have, instead, competitions between programs which play
>chess.  SSDF does limit themselves to testing of software which runs on a PC,
>and that is their choice.  It is misleading, however, to say that SSDF is
>engaged in engine vs engine testing.
>
>Please review what Derek Paquette said in
>http://www.talkchess.com/forums/1/message.html?330349.
>
>He pointed out that his engine, using some sort of learning, started with a
>large opening database and then modified it after oodles of games.  The new
>opening book produced in that manner automatically adjusted to compensate for
>the weaknesses in the search and position evaluation.  For example, if the
>engine has trouble with a particular late opening or early middlegame position,
>the learning feature simply made the necessary adjustment to avoid that problem
>position.
>
>One could give many engines the SAME large opening book and then have each
>engine play a huge number of games with that book eventually converging on a
>book optimized for that particular engine.  Not that I am recommending this, but
>it could be done.
>
>The objection to using an opening book is really an objection to using "learned"
>information.  In this case, we are talking to learning in the opening, but the
>same idea could apply to position evaluation functions designed to learn.  The
>"learning" cannot be entirely done by silicon.  The programmer does that too,
>and his/her learned information does find it's way into the software.
>
>One practical problem is that information stored in a chess engine cannot be
>entirely learned from scratch by the engine.  [I assume that this is true.] The
>programmer puts knowledge into the engine in one way or another.  Subsequent
>play of the engine could alter the information put into it by the programmer,
>but I am unable to see how the engine could start from absolutely nothing and
>then produce something out of that nothing.  There is knowledge stored even in
>the search algorithms, not to mention the position evaluation.
>
>In summary, one must accept the idea that some information must be fed into an
>engine by the programmer, IMHO.  This "feeding" may occur during the coding
>process or be done later.
>
>Objecting to a chess-playing program having knowledge would be a bad idea.  The
>idea that it's OK if in the middlegame and maybe endgame but not in the opening
>seems somewhat hard to justify.
>
>Bob D.

Incidentally, one may start with two identically same chess-playing programs,
with identically same opening books and identical in every possible way, but if
the program is capable of learning, then if the data inputs from the program's
chess opponents are different, then the two initially identically the same will
eventually converge to two different "educated" programs.  The game data itself
is a source of learning.  It is what the program learns from.

Identical twin human infants always grow up to be different because their
experiences are different.  The same would apply to the maturing chess program
if it had a built-in learning capability.

Would it make sense to limit competitions to "newborn" chess programs?  : )

Bob D.



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.