# [rc5] Distributed Chess camps

Ryan Krueger rskrueger at jtmd.com
Thu Oct 30 10:51:09 EST 1997

```>Actually, storing the solution is not the main problem - just figuring it
>out.

No, storing the solution IS THE problem.  We don't have enough data
available.

Look, we've baan talking about how to store the board and moves and all
that.  The realities are that we are very limited by IO.  We've got to
get a problem out to the machines to chew on and then report back in a
timely manner.  The servers can't be overburdened by IO or Data.  We've
got to find a way to minimize the data transmitted.

Computer chess has been very analyzed over the years.  We should take
advantage of that.  Here's how it goes normally:

Simply: You take your current board position and then analyze every
possible move down to a certain depth.  At the deepest part you look at
the board, apply a heuristic, which returns a number relating the value
of that board layout.  You then travel back up the tree and every move
currently possible is assigned a value.  You then do the higest valued
move.

Now, the most obvious method is to make a tree of computers each tallying
all of it's children's totals.  This will not work because of the
communication problems.  I won't go further this way--if you think this
is the way to go, think about it more.  You'll eventually figure out why
this won't work.

Another method is to look at the bottom deepest level of this tree and
divide up the problem to the computers.

Example:  if there are only ever 5 possible moves (this is way too
simple) at a depth of 6 there are 15,625 possible board positions:

5
25
125
625
3,125
15,625

if there are 20 computers working of we would have each computer check
it's portion: 781 board positions.

Understand?  I hope I explained it well.

Obviously there are a few problems:

1. Every computer is a different speed, a 486 should be responsible for
less than a G3 PPC.

2. What is there is a network glitch and the computer with the BEST
heuristic is unable to respond in time.

3. Reporting back.  We don't want ALL computers to report back, the IO
will overload the server.

Lets start talking about this.  If we get stuck on how to store the moves
and all we'll never get to this.  Besides the way that the moves are
calculated will probably change the way the data is stored anyway.

Ryan Krueger
Senior Analyst
ryan at jtmd.com
James Tower Media Design

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

```