Computer Chess Club Archives


Search

Terms

Messages

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

Author: martin fierz

Date: 00:53:31 11/25/03

Go up one level in this thread


On November 25, 2003 at 02:59:12, Mig Greengard wrote:

>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.

agreed - but it's the "quick fix" and there are many others in the same
direction: evaluating the position as bad if there are many pawns (or many
blocked pawns / pawn chains) on the board, evaluating king safety asymmetrically
(being more afraid about your own king in order to recognize long-term king
attacks by the opponent), then there are some ideas of hard-coding moves to be
bad, e.g. crafty recognizes trojans (white B/N on g5, white pawn h4, black pawn
h6, black castled) and will not capture on g5, even if it might be good. fritz
had an anti-nemeth code which stopped it from capturing *free* pawns on e4 to
avoid the nemeth gambit.

all of these things are short-term fixes to computer chess problems. all of them
work somewhere between reasonably and extremely well, but i feel uncomfortable
with all of them. they are all trying to avoid getting into positions the
machines don't understand, instead of making the machines understand these
positions (of course that's much much harder...).

>Have their been significant projects
>without books? Or with computer-only generated and tuned books?

in computer checkers, we are generating our own opening books by a process
called dropout expansion. it works very well there. the idea is based on a paper
by thomas lincke, who tried building such a book for chess using crafty
(probably version 15 or 16 something) - which didn't work at all. he used a
cluster of computers at the university to compute a couple of millions of
positions and the book was terrible.
i don't think it had anything to do with crafty - it has much more to do with
the game of chess itself: in more or less any normal opening, you can play h3 as
white and lose a tempo. chess engines will think that this drops perhaps 5
centipawns in evaluation or so, but nothing dramatic. so this automated process
of looking at all "decent" moves within a certain limit will also have to look
at such a move - we humans will say: this wastes a tempo and achieves nothing,
end of the story.
checkers is a much more forcing game, and therefore this method works much
better there.
i thought it would help to let the chess book search more forcing lines, but
when we had it look at a ultra-sharp variation of the dragon, it produced
nothing but crap :-(

cheers
  martin




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.