Skip to content

Commit

Permalink
Remove king open/semi open penalties
Browse files Browse the repository at this point in the history
  • Loading branch information
eduherminio committed May 16, 2024
1 parent df0c6b3 commit c5c25d9
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 24 deletions.
16 changes: 8 additions & 8 deletions src/Lynx.Cli/appsettings.json
Original file line number Diff line number Diff line change
Expand Up @@ -86,14 +86,14 @@
"MG": 4,
"EG": 7
},
"SemiOpenFileKingPenalty": {
"MG": -36,
"EG": 24
},
"OpenFileKingPenalty": {
"MG": -105,
"EG": 8
},
//"SemiOpenFileKingPenalty": {
// "MG": -36,
// "EG": 24
//},
//"OpenFileKingPenalty": {
// "MG": -105,
// "EG": 8
//},
"KingShieldBonus": {
"MG": 16,
"EG": -6
Expand Down
4 changes: 2 additions & 2 deletions src/Lynx/Configuration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -217,9 +217,9 @@ public sealed class EngineSettings

public TaperedEvaluationTerm QueenMobilityBonus { get; set; } = new(4, 7);

public TaperedEvaluationTerm SemiOpenFileKingPenalty { get; set; } = new(-36, 24);
//public TaperedEvaluationTerm SemiOpenFileKingPenalty { get; set; } = new(-36, 24);

public TaperedEvaluationTerm OpenFileKingPenalty { get; set; } = new(-105, 8);
//public TaperedEvaluationTerm OpenFileKingPenalty { get; set; } = new(-105, 8);

public TaperedEvaluationTerm KingShieldBonus { get; set; } = new(16, -6);

Expand Down
28 changes: 14 additions & 14 deletions src/Lynx/Model/Position.cs
Original file line number Diff line number Diff line change
Expand Up @@ -954,24 +954,24 @@ private int QueenAdditionalEvaluation(int squareIndex)
[MethodImpl(MethodImplOptions.AggressiveInlining)]
internal int KingAdditionalEvaluation(int squareIndex, Side kingSide)
{
int packedBonus = 0;
var kingSideOffset = Utils.PieceOffset(kingSide);
//int packedBonus = 0;
//var kingSideOffset = Utils.PieceOffset(kingSide);

if (PieceBitBoards[(int)Piece.r - kingSideOffset] + PieceBitBoards[(int)Piece.q - kingSideOffset] != 0) // areThereOppositeSideRooksOrQueens
{
if (((PieceBitBoards[(int)Piece.P] | PieceBitBoards[(int)Piece.p]) & Masks.FileMasks[squareIndex]) == 0) // isOpenFile
{
packedBonus += Configuration.EngineSettings.OpenFileKingPenalty.PackedEvaluation;
}
else if ((PieceBitBoards[(int)Piece.P + kingSideOffset] & Masks.FileMasks[squareIndex]) == 0) // isSemiOpenFile
{
packedBonus += Configuration.EngineSettings.SemiOpenFileKingPenalty.PackedEvaluation;
}
}
//if (PieceBitBoards[(int)Piece.r - kingSideOffset] + PieceBitBoards[(int)Piece.q - kingSideOffset] != 0) // areThereOppositeSideRooksOrQueens
//{
// if (((PieceBitBoards[(int)Piece.P] | PieceBitBoards[(int)Piece.p]) & Masks.FileMasks[squareIndex]) == 0) // isOpenFile
// {
// packedBonus += Configuration.EngineSettings.OpenFileKingPenalty.PackedEvaluation;
// }
// else if ((PieceBitBoards[(int)Piece.P + kingSideOffset] & Masks.FileMasks[squareIndex]) == 0) // isSemiOpenFile
// {
// packedBonus += Configuration.EngineSettings.SemiOpenFileKingPenalty.PackedEvaluation;
// }
//}

var ownPiecesAroundCount = (Attacks.KingAttacks[squareIndex] & OccupancyBitBoards[(int)kingSide]).CountBits();

return packedBonus + (ownPiecesAroundCount * Configuration.EngineSettings.KingShieldBonus.PackedEvaluation);
return (ownPiecesAroundCount * Configuration.EngineSettings.KingShieldBonus.PackedEvaluation);
}

#endregion
Expand Down

0 comments on commit c5c25d9

Please sign in to comment.