Skip to main content

solverforge_solver/heuristic/
mod.rs

1//! Heuristic components for solving
2//!
3//! This module contains:
4//! - Moves: Operations that modify planning variables
5//! - Selectors: Components that enumerate entities, values, and moves
6
7pub mod r#move;
8pub mod selector;
9
10// Re-export move types
11pub use r#move::k_opt_reconnection;
12pub use r#move::{
13    ChangeMove, CompositeMove, CutPoint, EitherMove, KOptMove, ListChangeMove, ListMoveImpl,
14    ListReverseMove, ListRuinMove, ListSwapMove, Move, MoveArena, PillarChangeMove, PillarSwapMove,
15    RuinMove, SubListChangeMove, SubListSwapMove, SwapMove,
16};
17
18// Re-export selector types
19pub use selector::{
20    AllEntitiesSelector, ChangeMoveSelector, CrossEntityDistanceMeter,
21    DefaultCrossEntityDistanceMeter, DefaultDistanceMeter, DefaultPillarSelector,
22    EitherChangeMoveSelector, EitherSwapMoveSelector, EntityReference, EntitySelector,
23    FromSolutionEntitySelector, FromSolutionTypedValueSelector, KOptConfig, KOptMoveSelector,
24    ListChangeMoveSelector, ListMoveKOptSelector, ListMoveListChangeSelector,
25    ListMoveListReverseSelector, ListMoveListRuinSelector, ListMoveListSwapSelector,
26    ListMoveNearbyListChangeSelector, ListMoveNearbyListSwapSelector,
27    ListMoveSubListChangeSelector, ListMoveSubListSwapSelector, ListPositionDistanceMeter,
28    ListReverseMoveSelector, ListRuinMoveSelector, ListSwapMoveSelector, MimicRecorder,
29    MimicRecordingEntitySelector, MimicReplayingEntitySelector, MoveSelector, NearbyDistanceMeter,
30    NearbyEntitySelector, NearbyKOptMoveSelector, NearbyListChangeMoveSelector,
31    NearbyListSwapMoveSelector, NearbySelectionConfig, Pillar, PillarSelector, RuinMoveSelector,
32    SelectionOrder, StaticTypedValueSelector, SubListChangeMoveSelector, SubListSwapMoveSelector,
33    SubPillarConfig, SwapMoveSelector, TypedValueSelector,
34};