On Tue, Jun 25, 2024 at 06:07:15AM +1200, Joseph Heled wrote: > Move filters are very tricky. > I am pretty sure the testing I did 20+ years ago, when I developed them, > should be repeated with the current net and taking the huge advance in cpu > speed into account.
I just ran some experiments to see how adding some filtering at 1 ply and/or making the filters narrower would improve speed and what the accuracy cost would be. As a baseline, World class and Supremo are respectively: Move filter for 2 ply: keep the first 0 0-ply moves and up to 8 more moves within equity 0.16 Skip pruning for 1-ply moves. and Move filter for 2 ply: keep the first 0 0-ply moves and up to 16 more moves within equity 0.32 Skip pruning for 1-ply moves. The chequer play errors cost in the Depreli benchmark and timing for a small sample of matches analyses are: World class chequer play cost -16.74 38.72s Supremo chequer play cost -16.14 70.39s Supremo is only slightly better but almost twice as slow. Filtering at 1ply looks promising. Various settings gave results varying from close to Supremo in strength and WC in speed: chequer play cost -16.10 40.94s to close to WC in speed but substantially faster: chequer play cost -16.74 29.08s The one I liked best is at the average in strength but 20% faster than WC and more than twice as Supremo: chequer play cost -16.45 31.74s Move filter for 2 ply: keep the first 0 0-ply moves and up to 12 more moves within equity 0.24 keep the first 0 1-ply moves and up to 6 more moves within equity 0.12 There is probably less potential at 3ply (or 4, not tested). The filter is: Move filter for 3 ply: keep the first 0 0-ply moves and up to 16 more moves within equity 0.32 Skip pruning for 1-ply moves. keep the first 0 2-ply moves and up to 4 more moves within equity 0.08 and I would be reluctant to decrease "more moves" to less that 4, the tightening would be limited to "within equity". Still, a filter like: Move filter for 3 ply: keep the first 0 0-ply moves and up to 16 more moves within equity 0.32 keep the first 0 1-ply moves and up to 8 more moves within equity 0.16 keep the first 0 2-ply moves and up to 4 more moves within equity 0.06 is almost 20% faster with no significant change in strength (less than 1% in the Depreli benchmark, no change at all in the sample match analyses final result). If you or other list subscribers have suggestions, I can easily test 2ply setups (running the benchmark takes a few minutes) or 3ply ones (takes 1 hour), but 4 ply would need about one day.
