Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Application of Chess Programming Techniques to Other Games

Author: David Eppstein

Date: 14:09:52 04/07/99

Go up one level in this thread


On April 07, 1999 at 12:10:20, Roberto Waldteufel wrote:
> I wonder how many here have programmed other games besides chess.

I have written a non-chess game (Fanorona, see
http://www.ics.uci.edu/~eppstein/180a/projects/fanorona/) and have run
a project class where undergraduate groups program games like
checkers, connect-4, go-moku, etc.
On the other hand, I have never written a chess program -- I read this
board primarily for programming tips that will help with other games,
although I also like to play through the various computer-gm games etc.

> In fact, I used bitboards for my first ever
> attempt at checkers before knowing about their widespread use in chess, so
> when I came to program chess I was naturally inclined to lean heavily in the
> direction of bitboard representations of information.

My impression is that bitboards work even better for other games than they do
for chess, because of the lack of so many different kinds of pieces.  My
Fanorona program is bitboard based.  It is hard to persuade the undergrads to
use bitboards, because bit-parallel programming is so unfamiliar, but I think it
is a powerful way of programming that can be used in many areas (e.g. I also
recently wrote a bit-parallel graph traversal code as part of a fast cellular
automaton spaceship searching code).

> On 24 April there is to be a match between my program
> and Nexus99, one of the top commercial checkers programs.

Please do let us know how this works out.
You're using the chinook endgame dbs?

What sort of knowledge goes into your eval?
My undergrads last quarter just counted pieces and kings but found that the
program moved really erratically in the endgame when it ran out of trades --
their program would really have benefited from some knowledge of the opposition,
or space control, or both.

> I think the same techniques that have proved themselves in computer chess are
> applicable to several other games, such as Shogi, Go and of course checkers
> too.

Historically alpha-beta hasn't worked for go, but it does seem to work for many
other games.  The usual explanation is go's high branching factor, but I don't
believe that because gomoku has the same branching factor and alpha-beta works
ok for that game.



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.