Computer Chess Club Archives


Search

Terms

Messages

Subject: Search algorithm

Author: Mark Taylor

Date: 10:06:37 01/26/98


Some years ago when I was still actively working on my program I came up
with the following idea - I was never able to discuss it with anyone who
would understand, but now I can:

You perform 2 different kinds of tree search, the first is a "defensive"
search where at even plies (computers turn) moves are only searched
until a one is found that at least maintains the value of the position.
Assuming that the opponent does not have a forced gain, then most even
plies will be searched with branching factor of 1.  A 6 ply search with
average branching factor of 10, will normally be searched in 1000000
lines, but could be searched "defensively" with a total of only 10^3 =
1000 lines (ignoring alpha-beta cut-offs).

The second search is the same except is an "attacking" search with the
moves seached limited at odd plies (opponents turn).

One benefit is that if the opponent has a forced gain it found more
quickly without possibly searching many moves of your own where you
think you are doing ok, and the remaining time can be spend extending
the depth of the search to try and find a refutation.

The other benefit is that in an even position, with no forced gains,
both searches should finish in 10^3 (= 1000) each giving a total of 2000
lines searched, whereas a standard search would have to search 10^6 =
1000000 (ignoring alpha-beta).

I never tested the algorithm in my program because I ran out of memory
on the machine - the program got too big!

Comments welcome - I think that more experienced minds must have either
tried this or will be able to blow a hole in my logic.




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.