solverforge_solver/phase/partitioned/mod.rs
1/* Partitioned search phase for parallel solving.
2
3Partitioned search splits a large problem into independent sub-problems
4(partitions) that can be solved in parallel, then merges the results.
5
6# Usage
7
81. Define a partitioner that knows how to split and merge your solution type
92. Create a partitioned search phase with child phases
103. The phase will partition the solution, solve each partition, and merge
11
12# Example
13
14```
15use solverforge_solver::phase::partitioned::{PartitionedSearchConfig, ThreadCount};
16
17let config = PartitionedSearchConfig {
18thread_count: ThreadCount::Specific(4),
19log_progress: true,
20};
21```
22*/
23
24mod child_phases;
25mod config;
26mod partitioner;
27mod phase;
28
29pub use child_phases::ChildPhases;
30pub use config::PartitionedSearchConfig;
31pub use partitioner::{FunctionalPartitioner, SolutionPartitioner, ThreadCount};
32pub use phase::PartitionedSearchPhase;