diff options
Diffstat (limited to 'engine/src/main.rs')
| -rw-r--r-- | engine/src/main.rs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/engine/src/main.rs b/engine/src/main.rs new file mode 100644 index 0000000..59002ec --- /dev/null +++ b/engine/src/main.rs @@ -0,0 +1,22 @@ +use engine::{negamax, CheckersBitBoard, TranspositionTable}; + +const DEPTH: u8 = 18; + +fn main() { + let board = CheckersBitBoard::starting_position(); + let mut table = TranspositionTable::new(50_000); + let mut alpha = -1.0; + let mut beta = 1.0; + for i in 0..DEPTH { + let mut eval = negamax(i, alpha, beta, board, table.mut_ref()); + + if (eval <= alpha) || (eval >= beta) { + eval = negamax(i, -1.0, 1.0, board, table.mut_ref()); + } + + alpha = f32::max(eval + 0.125, -1.0); + beta = f32::min(eval + 0.125, 1.0); + } + + println!("{:?}", negamax(DEPTH, alpha, beta, board, table.mut_ref(),)); +} |
