Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Algorithms vs. knowledge - What to do next?

Author: Vincent Diepeveen

Date: 04:11:20 06/04/02

Go up one level in this thread


On June 04, 2002 at 02:11:40, Russell Reagan wrote:

To speak for diep in i-csvn2, on average i was outsearched
by 3 ply by the commercial programs i played there.

Even The King (Chessmaster) nowaday searches deeper than it used to do.
It got like 12 ply now where it in past times would have gotten
9 ply at same hardware.

One game it lost and not because it was outsearched but by its own stupidiness.

I wasn't feeling bad for getting outsearched. Instead i saw so many times
my score go up at for example 11 ply with a certain mainline. Then after
making my move opponent needed a huge number of plies more to get a fail
low and get to the same move.

Nullmove is a great enhancement of nowadays programs, but i get impression
most just prune too much. Also all preprocessors i play against get
completely annihilated. It is clear that the glory times of preprocessing
and getting a few ply more instead, that those days are over.

Nevertheless i get impression that most here do not know what is happening
last year. Last years we have seen no new ideas which were giving a
search speedup like nullmove, hashtables and alfabeta have given.

Instead everyone worked at his evaluation bigtime.



>I've always heard, better algorithms will beat the fastest code using a less
>efficient algorithm any day (IE MinMax vs. Alpha-Beta). My question is, when do
>you stop working on algorithmic type stuff and start working solely on adding
>knowledge to your program, and focus solely on the evaluation function? Or is
>there a even point at which you stop working on things like search and only
>focus on evaluation?
>
>To me, it seems like there is only so much you can do in terms of improving the
>searching methods, improving the efficiency of various other functions that are
>used often (is square attacked, make move, generate legal moves, etc.). Do you
>ever reach a point where the only thing left to significantly improve is the
>evaluation function?
>
>If someone could advise a good plan for what to work on, kind of a step by step
>thing, I would love to see what others think of this process. Maybe a sort of
>"basics" check list, like Alpha-beta, transposition table, null move, etc. I'm
>nearing the point at which my engine will be working, and I'm reaching the "what
>next?" stage. An example of what I'm thinking is "I've implemented alpha-beta.
>What am I supposed to do to improve the alpha-beta algorithm?" Perhaps I'm
>misunderstanding what people mean when they talk about "improving algorithms"
>instead of "optimizing".
>
>I'm kind of looking for some general advice as to what to do after the engine is
>successfully up and running, playing without any major known bugs. Do I take a
>step back and work on improving those often used functions, or do I move ahead
>and begin implementing new things like null move?
>
>Thanks in advance for all of your comments and advice.
>
>Russell



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.