Author: José Carlos
Date: 23:23:32 10/13/03
Go up one level in this thread
On October 13, 2003 at 23:00:39, Vincent Diepeveen wrote: >On October 13, 2003 at 12:57:04, José Carlos wrote: > >>On October 13, 2003 at 12:03:32, Vincent Diepeveen wrote: >> >>>On October 13, 2003 at 11:31:11, Robert Hyatt wrote: >>> >>>>On October 13, 2003 at 09:29:47, Vincent Diepeveen wrote: >>>> >>>> >>>>> >>>>>there are very big differences. >>>>> >>>>> >>>> >>>>There isn't a big difference if you are only talking about the q-search. >>>> >>>>If you do a check, you have to get out and that extends. If you extend >>>>on the check you don't extend when you get out and that extends. >>>> >>>>It is different in the normal part of the search, because if you extend on >>>>a check you increase depth by one now. You might reach the q-search if you >>>>wait to extend when you escape check. but in the q-search I don't see how it >>>>is a "big difference". >>> >>>You don't have to apologize for not knowing basic tree math, you're excused. >>>Had seen already in crafty code that it was done wrong there. >>> >>>Yet i had already posted years ago at CCC that if you extend when being checked, >>>that this is better than when giving the check. >>> >>>What delivers more cutoffs for the hashtable: >>> >>>A) >>>Re5+ (5 ply remaining) >>>Kf7 (5 ply remaining) >>>Rxa5 (4 ply remaining) >>> >>>B) >>>Re5+ (5 ply remaining) >>>Kf7 (4 ply remaining) >>>Rxa5 (4 ply remaining) >>> >>>If you can answer that question then you'll know the answer to the basic tree >>>searching question. >>> >>>Best regards, >>>Vincent >> >> >> Do you cutoff in moves or in positions? >> If you cutoff in positions, then you have: >> >>Extend check: >> >>A -Re5+-> B -Kf7-> C -Rxa5-> D >>5 5 4 3 (depth remaining) >> >> >>Extend out-of-check: >> >>A -Re5+-> B -Kf7-> C -Rxa5-> D >>5 4 4 3 (depth remaining) >> >> So the only difference is position B. In the first case you store depth 5 in >>the hash table, in the sencond case, 4. >> In principle it seems that extending checks would give more cutoffs due to >>hash table, but to get to position B you need a checking move, which would >>extend (increase remaining depth) in the first case, and not extend in the >>second. >> The result seems to be that both will work the same, except for leaf nodes, as >>Bob pointed. >> >> José C. > >There is a big difference in the mainsearch. To say it in hyatt words, you fell >into the well known trap here. > >I remember how every year new amateur programmers fall into this problem. Just a >few weeks ago i explained it to Mridul who really is progressing fast with >Messchess now (his goal is to beat tiger i guess, after never receiving apology >from Christophe). > >They all extend giving check initially but after a few years they modify that to >in check when either pointed to that or when showing up at a world champ and >seeing how many nodes a ply get used versus a few strong programs there. > >You can get real weird transpositions you know. Also not everyone is extending >each check (in diep i hardly extend checks, as that's simply too expensive and i >wouldn't know a single commercial program that joins world champs 2003 that does >if so, then i will be really amazed) and there are alfabeta dependencies and >some persons forward prune, though we can also call that different ways of >counting plies. Many do reductions. Others do weird forward pruning last few >plies. > >In diep i already see now weird things like fail highs that do not result in a >new mainline just when i move from R=3 to R=3/2. There is so much going on there >that the netto effect you simply should implement to measure it. > >The trap which is there when you start extending IN check positions is that you >should not extend when depthleft <= 0. > >If you add *that* condition then you can easily test extending in check >positions is better. > >Last but least, extending in check is a hell of a lot cheaper too. > >Instead of looking whether a move gives a check you now only have to look a >single time whether you are IN check. > >Best regards, >Vincent Please, read my explanation and tell me exactly where is it wrong. José C.
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.