Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Beginner's guide?

Author: Don Dailey

Date: 14:04:00 05/14/98

Go up one level in this thread


On May 14, 1998 at 13:34:54, Will Singleton wrote:

>
>On May 14, 1998 at 05:32:13, frank phillips wrote:
>
>>Can anyone point me in the direction of explanations of the techniques
>>used in chess programming.   Having learnt a bit of C this year and with
>>the help of articles found on the Net about search algorithms managed to
>>write crude connect4 and othello programs,  I would now appreciate some
>>pointers to simple but thorough and complete explanations of  bitboards
>>and hashtables.  Several articles I have found partially explain these
>>topics but usually assume that the reader has more knowledge than I do,
>>perhaps because they assume a basic programming background which I do
>>not have.  The source code to Crafty (thanks Bob) is well documented but
>>beyond me at the moment.  On a specific issue, I would be grateful for
>>an explanation of how to get a pv out of the (alpha/beta negamax)
>>search.  Everything I have tried so far based on storing the best move
>>in an array pv[depth] has failed, so I seem to be missing a fundamental
>>point - or am just plain stupid :-/
>
>Hi Frank,
>
>As you know, you can find a wealth of material on the net.  Here's one
>that's useful: http://www.xs4all.nl/~verhelst/chess/.
>
>If you really want to get into it, you can order back issues or a
>complete set of the ICCA Journal.  Look at
>http://www.dcs.qmw.ac.uk/~icca/.
>
>There are also some chess programming books at Amazon, do a search over
>there.
>
>Re your question on the pv, take a look at Tom Kerrigan's Simple Chess
>Program.  Much better than crafty for the novice :)
>
>I hope you know what you're getting into.  Actually, you probably don't.
> I was where you are about a year and a half ago (chess
>programming-wise).  And I've learned most stuff the hard way.  Not every
>algorithm or idea works the same in every program, a lot depends on the
>interaction of the parts.  And sometimes, it's just plain magic that it
>works at all.
>
>btw, does everyone down your way say "learnt?"
>
>Will


Frank,

Pv's are a little tricky but you can do it.  You must think of them
recursively.
In other words DON'T try to see the whole picture, but concentrate
on each single part.  Each node has a responsibility to KNOW what
it's own pv is and TRUSTS the child to return a legitimate one
to it.  Make sure each node returns a correct PV and the problem
will take care of itself.   And don't forget to TERMINATE them
correctly, or you will get garbage at the end of PV's.

I hope this helps some.  If you still have trouble I will try to
write a tiny psudo code fragment for you.

- Don



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.