Author: Robert Hyatt
Date: 06:53:41 09/23/04
Go up one level in this thread
On September 23, 2004 at 05:10:40, martin fierz wrote: >On September 23, 2004 at 04:14:15, Tony Werten wrote: > >>On September 23, 2004 at 04:10:18, martin fierz wrote: >> >>>[snip] >>> >>>>There is _no_ overhead. It is done only at the root, once per iteration. For a >>>>12 ply search, a total of 12 times. That won't use measurable CPU time. The >>>>point is that root move ordering is critical for efficiency.. >>> >>>exactly how critical for efficiency would you believe it to be? >> >>Depends on the bestmove. If that is constant, it's less important than after a >>rootfaillow. >> >>Tony > >ha! what kind of an answer is that :-) > >seriously though: it's clear that there is some importance to it, but can >anybody quantify it? e.g. like this: "ordering root moves by size of subtrees >gains X elo compared to constant static ordering done at ply 1". > >cheers > martin It can win or avoid losing a game. Here's how. At iteration N-1 (the last full iteration you will search) you almost change from the best move to a new best move Z, but you don't. The next iteration you burn most of your remaining time on the old best move and then start ripping through the remainder of the moves. You don't finish Z (or maybe don't even get to it) before time runs out and you make the old best move. But if you had noticed that Z had a total node count far higher than any other root move except for the first root move, and searched it second, then you would have found that better move. And avoided losing or drawing or whatever happened as a result of not finding the best move... If you _always_ finish an iteration, this is not as important although it will make the search more efficient to search Z before any other moves to establish an even better alpha bound...
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.