Remove tt cutoffs, fix capture move sorting, refactor

This commit is contained in:
stefiosif
2024-11-30 00:04:53 +02:00
parent f5b7056347
commit 316f40e6e5
7 changed files with 74 additions and 99 deletions

View File

@@ -1,5 +1,3 @@
use std::time::Instant;
use crate::{
board::game::Game,
evaluation::{MAX_SCORE, MIN_SCORE},
@@ -7,8 +5,9 @@ use crate::{
};
use super::{
negamax, time::TimeInfo, transposition_table::TranspositionTable, HARD_LIMIT_DIVISION,
SOFT_EVAL_THRESHOLD, SOFT_LIMIT_DIVISION,
negamax,
time::{time_limit_reached, TimeInfo},
transposition_table::TranspositionTable,
};
pub fn iterative_deepening(
@@ -48,18 +47,6 @@ pub fn iterative_deepening(
Ok(best_move)
}
fn time_limit_reached(time: &Instant, remaining_time: u128, eval: i32) -> bool {
hard_limit(time, remaining_time) || soft_limit(time, remaining_time, eval)
}
pub fn hard_limit(time_now: &Instant, remaining_time: u128) -> bool {
time_now.elapsed().as_millis() >= remaining_time / HARD_LIMIT_DIVISION
}
pub fn soft_limit(time: &Instant, remaining_time: u128, eval: i32) -> bool {
time.elapsed().as_millis() >= remaining_time / SOFT_LIMIT_DIVISION && eval > SOFT_EVAL_THRESHOLD
}
#[cfg(test)]
mod tests {
use crate::{