Author: Alex Newman
Date: 20:34:44 03/09/05
Go up one level in this thread
On March 09, 2005 at 23:13:30, Anthony Cozzie wrote: >On March 09, 2005 at 22:30:05, Alex Newman wrote: > >>On March 09, 2005 at 22:10:58, Robert Hyatt wrote: >> >>>On March 09, 2005 at 21:19:51, Alex Newman wrote: >>> >>>>On March 09, 2005 at 21:12:52, Michael Yee wrote: >>>> >>>>>On March 09, 2005 at 20:27:09, Alex Newman wrote: >>>>> >>>>>>I can take the source code of Crafty and make an engine stronger then Crafty in >>>>>>less then a week. >>>>> >>>>>Not to be (too) confrontational, but have you actually accomplished this feat, >>>>>say, in a private experiment? >>>>> >>>>>There was someone here a while ago who was trying to get people to bet him a >>>>>large sum of money that he couldn't improve crafty by some amount of points >>>>>(maybe 100?). >>>>> >>>>>I'm skeptical of these kind of claims because if it were possible to improve >>>>>crafty by that much, it would almost be commercial strength (according to WBEC >>>>>ratings)... So why wouldn't that person just write a commercial-level engine >>>>>from scratch (given that he has the last "secrets" anyway)? >>>>> >>>>>Michael >>>> >>>>I didn't say 100 ELO. I just said 'improve'. >>>>No, I didn't try it. But try adding checks in quiescent, history and better >>>>futility pruning, and you should get at least 30 ELO. >>>>I think Crafty could be better in tactics. >>> >>> >>>1. crafty uses history. always has. >>> >>>2. older versions used checks in q-search. you can see from the comments in >>>main.c when they were removed. The version with was absolutely no better than >>>the version without, and the code was simpler without. >>> >>>3. "better futility pruning" I don't know about. It is already risky enough, >>>but who knows what can be improved there... >> >>Thanks for the answer Prof. Hyatt. I have a great respect for you and Crafty. >> >>- By history pruning, I mean reducing search depth for moves with low history >>value (many conditions apply of course). I know Crafty uses history for move >>ordering, but am not aware you use it for pruning (didn't check the most recent >>Crafties). >> >>- It's seems to be common experience shared by many that checks in q-search help >>tactics, but again they shouldn't be done always. Some think that using always >>R=3 and checks in q-search for null moves only is a good idea. >> >>- By better futility pruning, I mean doing pruning for nodes other then leafs, >>but with much higher material margin. > >1. History pruning does NOT seem like a good idea. The history table is >completely unrelated to the current position, and yet you want to prune based on >it? > >2. I personally use & like checks in q-search, but IMO its also possible to take >the nodes saved by not doing them and put them into recap+mate extensions. > >3. Futility pruning only works with complete beancounters that have total >positional terms of 1/2 pawn or so. Plus, Bob already does lazy eval. > >IMO you aren't going to get 100 elo (or even 40) with search tricks. You would >have to improve the evaluation, which is the primary area where it fails in >comparison to the commercials. Which is obviously doable (Shredder & Fritz are >doing something right) but not exactly 1 week's worth of work . . . > >anthony 1. History pruning is based on the probability that the move will cause a beta cutoff. You keep track of the number of beta cutoffs for the move and if history of beta cutoffs is very low, there is a good probability that move won't cause a beta cutoff this time too. It is very tricky to find a right balance of pruning benefits and errors it introduces, but it's obviously possible. 2. Why not do both, recap+mate+some (not all) q checks? 3. My tests (and it's also reported by others) indicate that futility pruning on pre-leaf nodes works, and I don't see why not do it if using a lazy eval.
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.