Computer Chess Club Archives


Search

Terms

Messages

Subject: Non Recursive Search

Author: rasjid chan

Date: 02:01:54 04/15/04



After reading the recent post on non-recursive search, I decided to
implement it. My guess is that maybe search function call overhead
may be too high as I have a host of local variables that cannot be reduced.

My approach is direct and simple, an attempt to immitate recursion by
creating my own search stack and managing it instead of allowing C function
call to do it. The idea itself in this approach is nothing complicated
but then it could be tedious to debug if we make a mess of it as I did
in the first attempt in too great a hurry. I have mdt(f), null-move, eval()
at every node, selective prune, extentions, lazy-eval, ETC and none of
them cause any exceptional difficulty. The main thing is using y = x
at the proper place and what y and x should be. Also proper management
of three pointers G0, G, G9 to the move_stack[MAX_PLY].

I have yet to clean it further and cannot now confirm if it is faster as I
created one sticky bug in the process, the same bug always, the king causing
an illegal move going into the attacks of P/N/K. It basically now searches
to about the same depth, nothing ridiculous happen yet.

So those who think it could be faster should try as I can do it.
As Vincent mentioned, few years back no commercial chess program use
recursive search. Why should they now and why should DEEP DIEP be using
non recursive search if there is no SPEEDWIN. Ha Ha!

Best Regards.
Rasjid




This page took 0.01 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.