Hashin in QS in crafty
Moderator: Ras
-
jwes
- Posts: 778
- Joined: Sat Jul 01, 2006 7:11 am
Hashin in QS in crafty
Bob, when you went to a two level qsearch, did you try using hash tables in the first level ?
-
Don
- Posts: 5106
- Joined: Tue Apr 29, 2008 4:27 pm
Re: Hashin in QS in crafty
What is a 2 level quies search?jwes wrote:Bob, when you went to a two level qsearch, did you try using hash tables in the first level ?
-
bob
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: Hashin in QS in crafty
Yes. Hurt performance slightly. But the RepetitionCheck() helped just a bit so I did leave that in.jwes wrote:Bob, when you went to a two level qsearch, did you try using hash tables in the first level ?
-
bob
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: Hashin in QS in crafty
Checks in 1st level, explicit full-width search after a check at the 1st level, then just normal captures beyond that.Don wrote:What is a 2 level quies search?jwes wrote:Bob, when you went to a two level qsearch, did you try using hash tables in the first level ?
Once I did the Cray Blitz approach of a 3-level search. First N plies exhaustive, next M plies were things like checks and passed pawn pushes, or captures near opponent king, etc, then the normal capture-only q-search (although in Cray Blitz) we went probably too far in the q-search as we did SEE > 0 captures, plus SEE >= 0 checks, and a full width search to escape check. And so long as there was no "stand pat" option for the side being checked, we continued doing checks for several plies. I didn't like the overhead in early Crafty versions and removed that last thing pretty quickly...