[rc5] v3

Eric Gindrup gindrup at okway.okstate.edu
Tue Oct 28 15:22:39 EST 1997

```        Board positions are generated recursively.  Each position one ply
away is evaluated by a complex evaluation function.  The best x% of
them are kept and the recursion continues.  If one branch results in
positions (a couple of plys away) that are all bad, that entire branch
is pruned.
Bad positions are usually defined as positions where:
1) I've lost.
3) All of my moves result in positions better for my opponent than for
me.
4) None of my moves increases my position without increasing my
opponent's position by at least as much.

Many programs don't use all four criteria or use extremely naive
versions.

Ideally, you take the move that minimizes the improvement that the
opponent can make (no matter which move that opponent picks).

The hard part is getting good evaluation functions.  The best known
evaluation functions vary over the duration of the game.  This is
similar to the change in character between the opening, the midgame
and the endgame.  Theoretically, exhaustive chess would permit the
construction of a perfect evaluation function that would always
immediately force the computer to pick the best move.  No one knows
how to do that, though.
-- Eric Gindrup ! gindrup at Okway.okstate.edu
-- Eric Gindrup ! gindrup at Okway.okstate.edu

Subject: Re: [rc5] v3
Author:  <rc5 at llamas.net > at SMTP
Date:    1997/10/27 14:08

JP Rosevear <webmaster at usjc.uwaterloo.ca> wrote:
] It would be an interesting experiment to see experimentally how many
] different positions current chess engines have for consideration at the end
] of x number of ply after alpha-beta pruning.  I admit I am no expert either
] (just a strong interest), but this would give an idea of how serious the
] I/O problem is.  In addition it make give us a target for ply before
] returning.  ie If 10 ply returns 1000 positions and 12 ply 100 000 then we
] stop a 10 ply say.

On my Pentium 133 with 64 MB RAM, Gnuchess 4.0.77 can look ahead 5
moves (10 ply) in no time at all (less than a second).  Hm, 10 ply
include about 30^10 positions, which is 6*10^14.

But if each board takes 200 bits to store, that's tens of thousands
of terabytes.  How do they do it?  Is there a computer chess programmer
in the house?

Sebastian

----
To unsubscribe, send email to majordomo at llamas.net with 'unsubscribe rc5' in the
body.

----
To unsubscribe, send email to majordomo at llamas.net with 'unsubscribe rc5' in the body.

```