Difference between revisions of "Centipawns"
GerdIsenberg (talk | contribs) |
GerdIsenberg (talk | contribs) |
||
Line 45: | Line 45: | ||
=References= | =References= | ||
<references /> | <references /> | ||
− | |||
'''[[Score|Up one level]]''' | '''[[Score|Up one level]]''' | ||
+ | [[Category:Quotes]] | ||
+ | [[Category:Hyatt Quotes]] | ||
[[Category:Ian Carr]] | [[Category:Ian Carr]] | ||
[[Category:Karl Jenkins]] | [[Category:Karl Jenkins]] | ||
[[Category:John Marshall]] | [[Category:John Marshall]] | ||
[[Category:Keith Tippett]] | [[Category:Keith Tippett]] |
Revision as of 14:46, 7 December 2019
Home * Search * Score * Centipawns
Centipawns, (Centi-pawns)
a score unit which corresponds approximately to one hundredth of a pawn unit. Fixed point representation with centipawn fractions allows a smooth relation of all piece values with a reasonable granularity to distinguish positional scores. 16 or even 15 bits are sufficient to store signed centipawn ranges in hash tables, while sign extension to the common 32-bit integer range is convenient to avoid overflows in scaling terms like in the tapered eval, even with an internal finer granularity used inside the evaluation [2] .
Contents
Quotes
Robert Hyatt
Robert Hyatt on score grain in Crafty [3]:
Having done all three, my take on the issue is this:
-
Decipawns (0.1) is too coarse. Not every positional consideration is worth 0.1 pawns, so you either have to round the score up to 0.1, or else throw it out since it would be zero.
-
Millipawns (0.001) is too fine. I do not believe that my evaluation has any .001 accuracy ideas in it. As you spread the evaluation scores out, your tree search becomes less efficient (for example, compare a program with no positional scoring to one with, with respect to tree size).
-
Centipawns (0.01) is reasonable. One could make the argument that maybe .05 is better (1/20th of a pawn). Or some other number. But my intuition after trying all three during the development of Crafty is that the right value lies in the interval {0.01, 0.1}. Whether it is on one end or the other, or somewhere in the middle, is a point for conjecture. It is too hard to test the idea, although I suppose I could just do a normal eval and then at the end, reduce it to the accuracy needed. But it is not easy to test for smaller than .01 increments since no increments in crafty would be smaller than .01...
Aske Plaat
Aske Plaat's implementation tip on MTD(f) [4]:
The coarser the grain of eval, the less passes MTD(f) has to make to converge to the minimax value. Some programs have a fine grained evaluation function, where positional knowledge can be worth as little as one hundredth of a pawn. Big score swings can become inefficient for these programs. It may help to dynamically increase the step size: instead of using the previous bound, one can, for example, add an extra few points in the search direction (for failing high, or searching upward, adding the bonus, and for failing low, or searching downward, subtracting the bonus) every two passes or so. (Don Dailey found that a scheme like this works well in a version of Cilkchess.) At the end, if you overshoot the minimax value, you have to make a small search in the opposite direction, using the previous search bound without an extra bonus, to make the final convergence. Also, it can be quite instructive to experiment with different evaluation function grain sizes. Sometimes coarse grain functions work better than fine grain, both for NegaScout and MTD(f).
See also
Forum Posts
- Performance of MTD(f) versus eval granularity? by Werner Mühlpfordt, CCC, November 01, 2001 » MTD(f)
- Centipawns and Millipawns by Ricardo Gibert, CCC, September 08, 2009
- Winning percentage and centipawns by Luca Hemmerich, CCC, November 18, 2009
- xboard protocol and centipawn by Joshua Shriver, CCC, October 17, 2010
- Evaluations in centipawns and symbols by Marek Soszynski, CCC, October 23, 2012
- Is centipawn the right unit for measuring the score? by Karol Majewski, CCC, August 09, 2016
External Links
- Centipawn - WikiChess
- centi- - Wiktionary
- Centi- from Wikipedia
- Fixed-point arithmetic from Wikipedia
- Granularity from Wikipedia
- Resolution from Wikipedia
- Rounding from Wikipedia
- Centipede - Septober Energy, 1971 (edited), YouTube Video
- feat. Keith Tippett, Ian Carr, Karl Jenkins, John Marshall, Roy Babbington, ...
References
- ↑ Centipede in peat marshlands of Kawai Nui, O'ahu, Hawai'i photographed by Eric Guinther, Centipede from Wikipedia
- ↑ Re: Centipawns and Millipawns by Don Dailey, CCC, September 08, 2009
- ↑ Re: Centipawns and Millipawns by Robert Hyatt, CCC, September 09, 2009
- ↑ MTD(f) - A Minimax Algorithm faster than NegaScout by Aske Plaat, December 3, 1997