mctrust 0.2.0

Production-grade Monte Carlo Tree Search with UCT, RAVE, and pluggable environments
Documentation
# mctrust

Monte Carlo Tree Search. UCT, RAVE, progressive widening, configurable policies, optional parallelism. Implement the `Environment` trait for your domain and the search handles the rest.

```rust
use mctrust::{Environment, GameState, SearchConfig, GameSearch, Reward};

// Define your domain
impl Environment for MyGame {
    type Action = usize;
    fn legal_actions(&self) -> Vec<usize> { /* ... */ }
    fn apply(&mut self, action: &usize) { /* ... */ }
    fn evaluate(&self) -> GameState { /* ... */ }
}

// Search
let config = SearchConfig::builder().iterations(10_000).build();
let mut search = GameSearch::new(game, config);
let best_move = search.run();
```

## Not just for games

MCTS works anywhere you have a state space to explore: hyperparameter tuning, robot path planning, scan strategy optimization, molecular design, theorem proving. The `Environment` trait is generic.

## TOML configuration

```toml
iterations = 50000
exploration_constant = 1.41
max_depth = 100
```

## Contributing

Pull requests are welcome. There is no such thing as a perfect crate. If you find a bug, a better API, or just a rough edge, open a PR. We review quickly.

## License

MIT. Copyright 2026 CORUM COLLECTIVE LLC.