Computer Chess Club Archives


Search

Terms

Messages

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

Author: Dann Corbit

Date: 23:52:36 06/03/02

Go up one level in this thread


On June 04, 2002 at 02:33:55, Russell Reagan wrote:

>On June 04, 2002 at 02:26:57, Dann Corbit wrote:
>
>>You can do things in parallel.  When you are bored with search, work on eval.
>>When you are bored with eval, work on search.  A lot of time will be spent
>>removing bugs.
>
>What exactly is there to work on in terms of search?

Here is some goo from Dark Thought:
DARKTHOUGHT is a fast yet sophisticated alpha-beta searcher using PVS/NEGASCOUT
[51,174] with state-of-the-art enhancements like normal futility pruning,
internal iterative deepening [7,184], dynamic move ordering (history+killer
heuristic) [3,76,180,183,191], recursive null-move pruning [20,62,77], selective
extensions [7,17], interior-node recognizers [94], and an extended transposition
table [161,191]. On average, all enhancements taken together reduce the
effective branching factor of DARKTHOUGHT to 2-3 and its search-tree size to
roughly 55% of that of the according minimal tree [124].

Try to do all of these:
http://www.ast.cam.ac.uk/~cmf/chess/theory.html

You could get fancy with TD-Lambda learning.

You might try conspiracy search for a mate finding mode.

Add multiple threads.

Here is a list of cool stuff:
Iterative deepening, transposition (hash)tables, evaluation
hashtables, piece-value tables, refutation tables, history
heuristic, killer heuristic, full/ partial move ordering,
quiecence search, null move/ rule-based/ other forward
pruning, principle variation search, alpha-beta algorithm,
full/ aspiration/ null window search, negascout algorithm,
which end-game databases, egdb-validated rules/ chunking,
MTD(f), singular/ check/ (re-)capture/ (mate-, king-,
promotion-)threat/ attack evading/ probcut extensions,
internal iterative deepening, razoring, SSS */ conspiracy/
proof number search, hand-tuned/ genetic/ neural network
guided optimisation, chess opponent modelling, YBWC/
PV-split/ CN /Abdada/ Jamboree work -stealing scheduler
parallel algorithm.


Myabe you can invent a new idea.

Pondering and time control are also very important.  In fact, probably a lot
more important than most people think.

Here is stuff for the evaluation...

Get a series of books like this:
1.   Winning Chess Openings (Winning Chess)
by Yasser Seirawan

2.   Winning Chess Strategies : Proven Principles from One of the U.S.A.'s Top
Chess Players (Winning Chess)
by Yasser Seirawan

3.   Winning Chess Tactics (Winning Chess)
by Yasser Seirawan

4.   Playing Winning Chess (Winning Chess)
by Yasser Seirawan

5.   Winning Chess Brilliancies (Winning Chess)
by Yasser Seirawan

6.   Winning Chess Endings (Winning Chess)
by Yasser Seirawan

and code up everything he says.

>Does this include things
>like move ordering?

Move ordering is not part of the evaluation, but it will strongly affect the
speed of the search.  You must search the best move first or alpha-beta goes
right back into the mini-max toilet.

>Other than that, it sounds like somewhat of a black art.
>Like you say that the "limit" is the number of nodes in the principle variation,
>so theoretically there is a TON of room for improvement, but it also seems like
>there isn't any clear way of achieving that. So it sounds like other than move
>ordering, it's kind of a research area, unless I'm missing some other things
>that are included in the area of "search", when you speak of improving it.

Lots of stuff is published.  Enough to keep you busy for years implementing it.
By the time you have it all implemented, there will be enough stuff in your
cranium that you might start inventing stuff.



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.