Search found 155 matches

by micron
Mon Apr 02, 2012 4:19 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: More questions that are on my mind...
Replies: 7
Views: 1478

Re: More questions that are on my mind...

When you sort moves by scores. Do you just sort the root moves? Or moves from every parent? How do you go about getting the root scores? A preliminary sort of the root moves is worthwhile and easy. Note the absence of alpha and beta variables in the pseudocode below; they are fixed at -/+INFINITY s...
by micron
Tue Mar 20, 2012 7:14 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Outpost evaluation
Replies: 18
Views: 3578

Re: Outpost evaluation

Rebel wrote: 1. Don't bonus when the opponent has less than 5 pawns
Thanks for the hint. My previous outpost code was barely effective (less than 5 Elo).
After I added that condition it began working much better, well enough to be tunable, and I ended up with nearly 20 Elo.
by micron
Tue Mar 20, 2012 6:57 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Opinions about Mac App Store and UCI user interface App?
Replies: 7
Views: 1375

Re: Opinions about Mac App Store and UCI user interface App?

What are your opinions about the likelihood of seeing a UCI User Interface released via the Mac App Store, given the following condition ( from here ; Apple Developer account required): 2.15 Apps must be self-contained, single application installation bundles, and cannot install code or resources i...
by micron
Fri Mar 16, 2012 1:29 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: RedQueen 1.1.1 on Mac OS X
Replies: 10
Views: 1506

RedQueen 1.1.1 on Mac OS X

RedQueen 1.1.1 was announced today on the General Topics forum. I built it with $ g++ -O3 -Wall *.cpp -o redqueen and the resulting executable plays very weakly, often loses on time and occasionally hangs. Here's the end of an unexpectedly short match under cutechess-cli with tc=/60+1 ... Finished g...
by micron
Mon Mar 12, 2012 4:10 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: cache alignment of tt
Replies: 16
Views: 3224

Re: cache alignment of tt

You don't need a profiler. The best and simplest method is time-to-depth, obtained with a few lines of test-harness code in main(). Reproducibility is greatly enhanced by taking the fastest of 3--5 searches. The combination of alignment and prefetching gives my engine a speedup of about 1%. __builti...
by micron
Sat Mar 10, 2012 12:38 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: How to get futility pruning to work?
Replies: 13
Views: 3369

Re: How to get futility pruning to work?

Futility pruning is highly risky. If you test it well it will for most programs not work at decent time controls of course as compared to other forward pruning methods which prune more and better. Certainly I found it a difficult and unrewarding feature to implement. First there's the speed hit (an...
by micron
Thu Mar 08, 2012 8:55 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: How to get futility pruning to work?
Replies: 13
Views: 3369

Re: How to get futility pruning to work?

I am trying to implement some bitboard routines in my engine, and have difficulty figuring out if ttd is a good measure for improvement, though I eventually test it in real games. What specific position should one choose for doing some initial test to measure ttd? One position is no good. Some or a...
by micron
Wed Mar 07, 2012 11:40 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: How to get futility pruning to work?
Replies: 13
Views: 3369

Re: How to get futility pruning to work?

More careful measurements of time-to-depth (in many positions) showed only a pathetic 3-5% speedup by my pruning, not the 15-25% claimed earlier. Duh, no wonder I couldn't get any Elo advantage from pruning, whose primary purpose is to reduce ttd significantly. I've written a new function IsMoveChec...
by micron
Mon Mar 05, 2012 10:16 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: How to get futility pruning to work?
Replies: 13
Views: 3369

Re: How to get futility pruning to work?

@Ferdinand: Thank you for a thought-provoking and comprehensive set of tips. You give 'futility reasons' and 'late move reasons' for pruning or not pruning. Right now I want to work on plain futility. Assuming some measure of success, I will surely want to add LMP later. @Don: I get a modest improve...
by micron
Mon Mar 05, 2012 5:16 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: How to get futility pruning to work?
Replies: 13
Views: 3369

How to get futility pruning to work?

My (2600 Elo) engine distressingly fails to gain from futility pruning. ev = NOT_EVALUATED; for_each_move { if ( !pvNode && depth == 1 && !inCheck && move_is_not_the_first && move_is_quiet ) { if ( ev == NOT_EVALUATED ) ev = EvalForPrune(); if ( ev + FUTILITY_MARGIN < alpha ) continue;...