Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Bitboard question

Author: Randall Jouett

Date: 08:44:20 05/27/02

Go up one level in this thread


On May 27, 2002 at 01:34:39, Russell Reagan wrote:

>On May 26, 2002 at 23:41:51, Randall Jouett wrote:
>
>>I would think that hash tables (i.e., not
>>having to re-evaluate the tree) and good heuristics in
>>EvaluatePosition() are where the true benifits would lay.
>>In other words, I think we'd all much rather have a great
>>heuristic that was slow than a bad heuristic that was fast :^).
>
>Hello Randal. Glad to see that you joined us here :)

Glad to be here! :^)

>If you are using alpha-beta, which I assume every engine is (or some variation
>of it), then the main goal is to reduce the branching factor. Dan Corbit >pointed out to me once that when you go from a high branching factor to a
>lower one (even slightly lower), the machine running the engine with the
>lower branching factor could be significantly slower than the machine running
>the engine with the higher branching factor, and the slower machine would out
>search the faster one. That's why Chess Tiger for the Palm PC can beat a lot
>of the amateur programs that are run on hardware 20 times faster than it,
>because it's move ordering and branching factor are incredible (so I've heard).


Well, I've been out of chess programming for 10 years or so -- glad to
be back! :^) -- and from your comments, it sounds like alpha-beta (and
variants) are still the way to go. I kinda figured that this was still
the situation. I guess some things never change :^).


As far as branching goes, all I can really say is that I guess there
is good branching and bad branching. For instance, I would think that
increasing the depth of the search during captures and checks are good
things, even if one line gives up the queen :^). After all, mate could
be hiding behind that queen sack :^). In other words, if we still have
captures in this particular branch, then keep on trucking. That is, we
might as well continue with this particular branch, since a computers
forte' is tactics.


OTOH, I also believe that pawn structure analysis (especially in a quiesent
position) is worth a lot more than some programs are giving credit for,
Russell. Any good decent player (above 2000 or so) will tell you that pawn
structure pretty much dictates the overall position of a game. Isolated
pawns are targets, for instance.


With all this in mind, I think my next program is going to add
some serious weight to pawn structure. Basically, I'm going to
set up the program with an outrageous starting value for pawn
structure, and every time it loses, I'm going to subtract a
point or so, eventually landing on a value that seems to be ok
for most positions. If this seems to work, I guess I could try
this with the other pieces, too. In other words, I planning on having
many, many heuristics in EvaluatePosition(), with some probably
looking like pure crapola in the begining, yet the program should
be able to figure out which heuristics really mean someting at
particular times of game, be it start, middle, or during the
end game.


Don't know if all of this will work, but I'm it's going to be
funny as hell watching the program "dive on the blade" while
it's learning (and probably teaching me a thing or two) :^).
At the very least, it's something to try, and beats the heck
out of sitting around twiddling my thumbs :^).


BTW, I was wondering if anyone has ever added a simple
heuristic because it was capable of being rolled into
a simple, quick loop? In other words, for the majority
of the loop, most of the data stayed in registers on
chip. I would think that these simple heuristics might
be worth looking into when there isn't too much happening
on the board. Why not? :^)


Nice hearing from you, Russell, and good luck with your
endeavors, bud.

NOP
--
Randall Jouett
Amateur Radio: AB5NI
I eat spaghetti code out of a bitbucket while sitting at a hashtable!



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.