Next Step - Search

Discussion of chess software programming and technical issues.

Moderators: hgm, Harvey Williamson, bob

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
outAtime
Posts: 226
Joined: Sun Mar 08, 2009 2:08 pm
Location: Canada

Next Step - Search

Post by outAtime » Wed Dec 08, 2010 3:02 pm

Hi all, Im trying to decide the next step to take in search after having added LMR, and improved Null so it no longer is simply R = 2. What would you suggest for the next *big* improvement in search? I really dont have anything else, just very plain qsearch, null, and a pvs/lmr. The more trivial to implement the better :) Thanks!
outAtime

mcostalba
Posts: 2679
Joined: Sat Jun 14, 2008 7:17 pm

Re: Next Step - Search

Post by mcostalba » Wed Dec 08, 2010 3:12 pm

outAtime wrote:Hi all, Im trying to decide the next step to take in search after having added LMR, and improved Null so it no longer is simply R = 2. What would you suggest for the next *big* improvement in search? I really dont have anything else, just very plain qsearch, null, and a pvs/lmr. The more trivial to implement the better :) Thanks!
What is the ELO of your engine ? You should already have a good ELO with what you have, try to test against some weak engine and verify your engine arrives at the end of the match, possibly without losing too much.

This is the serious approach, instead if you are more interested in having fun then go wild adding everthing comes to your mind ;-)

outAtime
Posts: 226
Joined: Sun Mar 08, 2009 2:08 pm
Location: Canada

Re: Next Step - Search

Post by outAtime » Wed Dec 08, 2010 3:35 pm

ok, ill run some tests.
outAtime

bhlangonijr
Posts: 482
Joined: Thu Oct 16, 2008 2:23 am
Location: Milky Way
Contact:

Re: Next Step - Search

Post by bhlangonijr » Wed Dec 08, 2010 5:47 pm

outAtime wrote:Hi all, Im trying to decide the next step to take in search after having added LMR, and improved Null so it no longer is simply R = 2. What would you suggest for the next *big* improvement in search? I really dont have anything else, just very plain qsearch, null, and a pvs/lmr. The more trivial to implement the better :) Thanks!
I think futility, razoring and static null move are very easy and quick to implement and your engine can gain a significative speed up. Although find the right parameters which will better fit to your search is not that trivial. It would require a lot of tests.

But if I were you I would first write a separated function to handle root moves and also a dedicated function to order root moves. At least for me it was very important to make further improvements in the search.


Regards,

User avatar
Desperado
Posts: 638
Joined: Mon Dec 15, 2008 10:45 am

Re: Next Step - Search

Post by Desperado » Wed Dec 08, 2010 5:50 pm

Hi,

well, one of the next steps may be futility pruning (and delta pruning (QS)). Depending on the level your engine already has, this can be good
for 30-50 elo. IMHO this is easy to implement and wont take much time.

good luck and enjoy your work...

Michael

outAtime
Posts: 226
Joined: Sun Mar 08, 2009 2:08 pm
Location: Canada

Re: Next Step - Search

Post by outAtime » Wed Dec 08, 2010 5:54 pm

Thanks for the suggestions.
outAtime

zamar
Posts: 613
Joined: Sun Jan 18, 2009 6:03 am

Re: Next Step - Search

Post by zamar » Wed Dec 08, 2010 7:37 pm

outAtime wrote:Hi all, Im trying to decide the next step to take in search after having added LMR, and improved Null so it no longer is simply R = 2. What would you suggest for the next *big* improvement in search? I really dont have anything else, just very plain qsearch, null, and a pvs/lmr. The more trivial to implement the better :) Thanks!
# Fine tuning LMR (reducing several plies at the end of the move list)
# Futility pruning
# Move count based pruning
# Filtering out neg. SEE moves at qsearch
# Razoring
# static null move pruning

All are trivial to implement and should offer considerable ELO increase
Joona Kiiski

outAtime
Posts: 226
Joined: Sun Mar 08, 2009 2:08 pm
Location: Canada

Re: Next Step - Search

Post by outAtime » Wed Dec 08, 2010 8:42 pm

Thanks. I don't have SEE implemented, but I will try the others.
outAtime

outAtime
Posts: 226
Joined: Sun Mar 08, 2009 2:08 pm
Location: Canada

Re: Next Step - Search

Post by outAtime » Wed Dec 08, 2010 8:50 pm

How would you define moves at the end of the move list?
outAtime

outAtime
Posts: 226
Joined: Sun Mar 08, 2009 2:08 pm
Location: Canada

Re: Next Step - Search

Post by outAtime » Wed Dec 08, 2010 10:17 pm

Does depth need to == 1 for move count based pruning?
Thanks. Just wondering because it's hard to find examples.
outAtime

Post Reply