mirror of
https://github.com/sockspls/badfish
synced 2025-04-30 16:53:09 +00:00
Simplify scale factor computation
Minor non-functional simplifications in computing the scale factor. In my opinion, the code is now slightly more readable: - remove one condition which can never be satisfied. - immediately return instead of assigning the sf variable. Tested for non-regression: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 62162 W: 11166 L: 11115 D: 39881 No functional change Closes #992
This commit is contained in:
parent
0553b46829
commit
5205d44f87
1 changed files with 4 additions and 6 deletions
|
@ -755,8 +755,7 @@ namespace {
|
|||
|
||||
// If we don't already have an unusual scale factor, check for certain
|
||||
// types of endgames, and use a lower scale for those.
|
||||
if ( ei.me->game_phase() < PHASE_MIDGAME
|
||||
&& (sf == SCALE_FACTOR_NORMAL || sf == SCALE_FACTOR_ONEPAWN))
|
||||
if (sf == SCALE_FACTOR_NORMAL || sf == SCALE_FACTOR_ONEPAWN)
|
||||
{
|
||||
if (pos.opposite_bishops())
|
||||
{
|
||||
|
@ -764,19 +763,18 @@ namespace {
|
|||
// is almost a draw, in case of KBP vs KB, it is even more a draw.
|
||||
if ( pos.non_pawn_material(WHITE) == BishopValueMg
|
||||
&& pos.non_pawn_material(BLACK) == BishopValueMg)
|
||||
sf = more_than_one(pos.pieces(PAWN)) ? ScaleFactor(31) : ScaleFactor(9);
|
||||
return more_than_one(pos.pieces(PAWN)) ? ScaleFactor(31) : ScaleFactor(9);
|
||||
|
||||
// Endgame with opposite-colored bishops, but also other pieces. Still
|
||||
// a bit drawish, but not as drawish as with only the two bishops.
|
||||
else
|
||||
sf = ScaleFactor(46);
|
||||
return ScaleFactor(46);
|
||||
}
|
||||
// Endings where weaker side can place his king in front of the opponent's
|
||||
// pawns are drawish.
|
||||
else if ( abs(eg) <= BishopValueEg
|
||||
&& pos.count<PAWN>(strongSide) <= 2
|
||||
&& !pos.pawn_passed(~strongSide, pos.square<KING>(~strongSide)))
|
||||
sf = ScaleFactor(37 + 7 * pos.count<PAWN>(strongSide));
|
||||
return ScaleFactor(37 + 7 * pos.count<PAWN>(strongSide));
|
||||
}
|
||||
|
||||
return sf;
|
||||
|
|
Loading…
Add table
Reference in a new issue