Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Futility

Author: A.G.B. Bluemers

Date: 15:06:05 10/14/04

Go up one level in this thread


On October 14, 2004 at 14:03:13, Stuart Cracraft wrote:

>On October 14, 2004 at 13:50:41, Pallav Nawani wrote:
>
>>On October 14, 2004 at 10:28:16, Stuart Cracraft wrote:
>>
>>>I don't think I'm implementing it properly because my node
>>>reductions are not happening.
>>>
>>
>>Count your prunings and see if you are pruning something or not. If the pruning
>>threshold is too conservative, you might not be pruning anthing!
>>
>>Pallav
>
>It is. Here are the first 10 positions of Win at Chess on a 1
>second search with futility pruning at depth == 1 and depth == 2
>enabled. The final column (otherx) is non-zero showing futility
>pruning is happening:
>
>- 6.00/31.00 0% 0/1 ha=38 1.02 233472 233472/1/229982 9/648/0/3866/78466/986/241
>- 8.50/27.00 0% 0/2 ha=40 2.03 515072 257536/1/254141
>1883/1743/0/10028/96599/998/241
>+ 8.33/24.00 33% 1/3 ha=41 3.06 711680 237227/1/232880
>2004/2388/0/13381/171341/1118/244
>+ 6.50/19.50 50% 2/4 ha=36 3.06 711860 177965/1/232851
>2004/2388/0/13390/171344/1120/244
>+ 5.40/17.00 60% 3/5 ha=33 3.06 712036 142407/1/232829
>2004/2388/0/13398/171357/1123/244
>+ 6.50/17.83 66% 4/6 ha=39 4.07 1011044 168507/1/248489
>2045/2461/170/26468/187772/2849/342
>+ 6.71/18.00 71% 5/7 ha=40 5.07 1271140 181591/1/250605
>2166/2895/340/30082/253136/3501/438
>+ 6.88/18.75 75% 6/8 ha=42 6.08 1526116 190764/1/251184
>2195/3415/510/35943/327868/4640/2789
>+ 6.22/18.56 77% 7/9 ha=43 6.08 1527395 169711/1/251079
>2195/3415/680/36020/327931/4662/2789
>+ 6.40/18.70 80% 8/10 ha=44 7.09 1747555 174756/1/246369
>2497/4198/850/41204/410785/5048/2908
>
>Compare the above with futility pruning disabled:
>
>+ 3.00/63.00 100% 1/1 ha=21 0.32 62942 62942/0/197655 0/107/0/3778/12505/705/0
>- 7.00/43.00 50% 1/2 ha=32 1.33 344542 172271/1/259467
>1874/1202/0/9940/30638/717/0
>+ 7.33/34.67 66% 2/3 ha=35 2.33 538078 179359/1/230951
>1988/1843/0/13194/103614/840/0
>+ 5.75/27.50 75% 3/4 ha=32 2.33 538258 134564/1/230915
>1988/1843/0/13203/103617/842/0
>+ 4.80/23.40 80% 4/5 ha=29 2.33 538434 107687/0/230887
>1988/1843/0/13211/103630/845/0
>+ 6.00/23.17 83% 5/6 ha=36 3.34 837442 139574/1/250548
>2029/1911/189/26331/119352/2667/0
>+ 6.29/22.57 85% 6/7 ha=38 4.34 1096514 156645/1/252382
>2150/2345/378/29945/183543/3321/0
>+ 6.50/24.12 87% 7/8 ha=38 5.36 1349444 168680/1/251569
>2230/2830/567/36594/245744/4669/0
>+ 5.89/23.33 88% 8/9 ha=40 5.37 1350723 150080/1/251448
>2230/2830/756/36671/245807/4691/0
>+ 6.00/22.70 90% 9/10 ha=40 6.38 1511491 151149/1/236991
>2503/3434/945/40470/304424/4981/0
>pawnx/recapx/mthrx/checkx/qfutilx/onereplyx/otherx
>
>My only concern is that otherx in the first example is such a
>small number. Note that the branching factor in the former
>was 2.64 vs. without futility a branching factor of 3.82,
>further evidence.
>
>The code itself is here and encompasses at 1 ply before the
>horozion and 2 ply before the horizon.
>
>Still I think something is amiss. This code triggers it
>
>  if (FUTIL_R != 0.0) {
>    if (depth == iply-1) {
>      if (parentincheck || ml.cap!=0 || alpha < eval(bd,QUIET)+3000 ||
>incheck(bd))
>        extension = 0;
>      else
>        extension = -1;
>    } else if (depth == iply-2) {
>      if (parentincheck || ml.cap!=0 || alpha < eval(bd,QUIET)+5000 ||
>incheck(bd))
>        extension = 0;
>      else
>        extension = -1;
>    }
>  }

to see if pruning works you should check for number of nodes per depth per
position x with and without pruning ,not the total number of nodes after move
time.




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.