Author: Ian Osgood
Date: 14:14:06 09/20/02
Go up one level in this thread
On September 20, 2002 at 12:02:34, David Hanley wrote: >Ian--i love the code and the advice. I will definitely try aspiration window; i >don't currently have that in place, but it seems to be pretty effective, and >something small that can be implemented. > >dave Also cheap and easy, with great results, were the null move heuristic (only about 20 lines added), and checking move extension (5 lines changed from out-of-check extension). Killer moves were about as easy to add as the history table, although I had to rework the move sorting mechanism to make it most efficient. (You should look at this; it would be even easier to implement in Lisp.) Also, writing in Lisp has similar problems to writing in a threaded code Forth, with similar solutions. 1. Eliminate dynamic allocation. All structures in TSCP are preallocated. Not very Lisp-like, though. 2. Use macros for small functions. I got a 12% speedup simply by inlining the one most often called function! 3. Use piece lists. This is a natural fit for Lisp. 4. Use function tables in preference to conditionals. I imagine functional solutions to problems are more natural in Lisp anyway. Ian
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.