Skip to main content

solverforge_solver/phase/construction/
mod.rs

1/* Construction heuristic phase
2
3Builds an initial solution by assigning values to uninitialized
4planning variables one at a time.
5*/
6
7mod config;
8mod decision;
9mod evaluation;
10mod forager;
11mod forager_impl;
12mod forager_step;
13mod frontier;
14pub(crate) mod grouped_scalar;
15mod phase;
16mod placer;
17mod runtime_slots;
18mod slot;
19
20pub use config::{ConstructionHeuristicConfig, ForagerType};
21pub use forager::{
22    BestFitForager, ConstructionChoice, ConstructionForager, FirstFeasibleForager, FirstFitForager,
23    StrongestFitForager, WeakestFitForager,
24};
25pub(crate) use frontier::ConstructionFrontier;
26pub(crate) use grouped_scalar::{
27    build_scalar_group_construction, record_scalar_assignment_remaining,
28    scalar_group_work_remaining,
29};
30pub use phase::ConstructionHeuristicPhase;
31pub(crate) use placer::ConstructionTarget;
32pub use placer::{
33    EntityPlacer, EntityPlacerCursor, Placement, QueuedEntityPlacer, SortedEntityPlacer,
34};
35pub(crate) use runtime_slots::{
36    FrozenRuntimeListConstructionSlot, FrozenScalarOrMixedConstruction, ScalarConstructionSchedule,
37    ScalarOrMixedSlotOrder,
38};
39pub(crate) use slot::{
40    ConstructionGroupSlotId, ConstructionGroupSlotKey, ConstructionListElementId,
41    ConstructionSlotId,
42};