othello/src/main.rs
2025-03-04 13:42:16 -05:00

47 lines
1.2 KiB
Rust

use elo::run;
use game::Game;
use logic::{ChildrenEvalMethod, FutureMoveConfig};
use repr::Piece;
mod agent;
mod complexagent;
mod elo;
mod game;
mod game_inner;
mod logic;
pub mod repr;
// TODO! make this agent configuration a config option via `clap-rs`
fn main() {
run();
return;
let player1 = complexagent::ComplexAgent::new(
Piece::Black,
FutureMoveConfig {
max_depth: 20,
min_arena_depth: 14,
top_k_children: 2,
up_to_minus: 10,
max_arena_size: 100_000_000,
do_not_prune: false,
print: true,
children_eval_method: ChildrenEvalMethod::Max,
},
);
// let player2 = complexagent::ComplexAgent::new(
// Piece::White,
// FutureMoveConfig {
// max_depth: 20,
// min_arena_depth_sub: 14,
// top_k_children: 2,
// up_to_minus: 10,
// max_arena_size: 50_000_000,
// do_not_prune: false,
// },
// );
let player2 = agent::ManualAgent::new(Piece::White);
let mut game = Game::new(Box::new(player1), Box::new(player2));
game.game_loop();
}