Author: Alessandro Scotti
Date: 12:42:18 03/01/06
Go up one level in this thread
Yes I increment "count" every time a move is searched, and "fail_high" for moves that failed high. I actually did the implementation very quickly in order to participate to CCC (here's a quick report assuming you want to practice a little Italian before Turin! ;-) http://www.ascotti.org/programming/chess/ccc2005.htm) and with Heinz we could see it gave maybe 15-20 elo (at fast time controls). That version had validMoves >= 3 and depth >= 3 also. Later I changed both values to 4 and got another 15-20 elo. After that I decided to start working on another engine so I didn't experiment anymore with these settings. On March 01, 2006 at 15:31:22, Robert Hyatt wrote: >On March 01, 2006 at 15:26:46, Alessandro Scotti wrote: > >>Hi Bob, >>well this is almost exactly what I'm doing in Kiwi, which is actually a >>straightforward implementation of an idea I got from Uri here on the CCC. The >>only difference I see is I don't have the "another move failed high" bit, I just >>count fail highs. > >Then here is a key question: > >If you only count fail highs, how do you know whether this move fails high here >and there, or everywhere? > >That's why I decided to count fail highs, along with failed lows when another >move failed high, so I could tell the difference... > >Or are you incrementing the counter _every_ time the move is searched??? It >seems that the two counter approach provides more information, particularly in >"small cases" where you have one fail high and 1 fail low. Now you know that >this is a 50% fail high move rather than just knowing it failed high once. One >of two probably is enough to say "don't reduce" as compared to a move that did >fail high 40 times, but it was tried 5000 times... > >Or, maybe I misunderstood what your code says... > > > > >> >> int hindex = hpiece * 64 + curr.getTo(); >> >> if( haveHistoryPruning && >> depthExtension == 0 && >> validMoves >= 4 && >> ! curr.isCaptureOrPromotion() && >> ! givesCheck && >> depth >= (4*FullPlyDepth) && >> true ) >> { >> int n = histTable[ hindex ].count; >> int f = histTable[ hindex ].fail_high; >> >> if( f < (n / 8) ) { >> depthExtension = -FullPlyDepth; >> } >> }
This page took 0.04 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.