Skip to main content

pounce/engine/
eval.rs

1pub mod nnue;
2
3use crate::chess::Role;
4use crate::chess::position::Position;
5use crate::engine::search::MAX_PLY;
6
7pub const INFINITY: i16 = 32_001;
8pub const MATE: i16 = 32_000;
9pub const MATE_IN_PLY: i16 = MATE - MAX_PLY as i16;
10pub const DRAW: i16 = 0;
11
12#[inline]
13pub fn score_nnue(pos: &Position, acc: &nnue::NNUEAccumulator<'_, 64>) -> i16 {
14    (acc.net.forward(acc, pos.side) * 252.0) as i16
15}
16
17pub const PIECE_VALUES: [i32; Role::NUM] = [126, 781, 825, 1276, 2538, 0];