From 74c0e4144f875dd0291a7ff189a0b7f3ae3b767c Mon Sep 17 00:00:00 2001 From: Eryn Wells Date: Tue, 24 Jun 2025 20:04:41 -0700 Subject: [PATCH] [position] Remove the to_move_factor from symmetric evaluation Just use material balance. --- position/src/evaluation.rs | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/position/src/evaluation.rs b/position/src/evaluation.rs index b776777..8496760 100644 --- a/position/src/evaluation.rs +++ b/position/src/evaluation.rs @@ -1,17 +1,20 @@ // Eryn Wells +use crate::Position; use chessfriend_board::Board; use chessfriend_core::{Color, Piece, Shape, score::Score}; struct Evaluator; impl Evaluator { - pub fn evaluate_symmetric_unwrapped(board: &Board, color: Color) -> Score { + pub fn evaluate_symmetric_unwrapped(position: &Position, color: Color) -> Score { + let board = &position.board; + let material_balance = Self::material_balance(board, color); - let to_move_factor = color.score_factor(); + let score = material_balance; - to_move_factor * material_balance + score } /// Evaluate a board using the symmetric evaluation algorithm defined by @@ -53,10 +56,10 @@ mod tests { #[test] fn starting_position_is_even() { - let board = Board::starting(None); + let position = Position::new(Board::starting(None)); assert_eq!( - Evaluator::evaluate_symmetric_unwrapped(&board, Color::White), - Evaluator::evaluate_symmetric_unwrapped(&board, Color::Black) + Evaluator::evaluate_symmetric_unwrapped(&position, Color::White), + Evaluator::evaluate_symmetric_unwrapped(&position, Color::Black) ); } }