Skip to main content

Module selector

Module selector 

Source
Expand description

Selectors for entities, values, and moves.

Selectors enumerate the elements that the solver considers when exploring the solution space.

Re-exports§

pub use entity::AllEntitiesSelector;
pub use entity::EntityReference;
pub use entity::EntitySelector;
pub use entity::FromSolutionEntitySelector;
pub use k_opt::DefaultDistanceMeter;
pub use k_opt::KOptConfig;
pub use k_opt::KOptMoveSelector;
pub use k_opt::ListPositionDistanceMeter;
pub use k_opt::NearbyKOptMoveSelector;
pub use list_change::ListChangeMoveSelector;
pub use list_reverse::ListMoveListReverseSelector;
pub use list_reverse::ListReverseMoveSelector;
pub use list_ruin::ListRuinMoveSelector;
pub use list_swap::ListMoveListSwapSelector;
pub use list_swap::ListSwapMoveSelector;
pub use mimic::MimicRecorder;
pub use mimic::MimicRecordingEntitySelector;
pub use mimic::MimicReplayingEntitySelector;
pub use nearby::NearbyDistanceMeter;
pub use nearby::NearbyEntitySelector;
pub use nearby::NearbySelectionConfig;
pub use nearby_list_change::CrossEntityDistanceMeter;
pub use nearby_list_change::DefaultCrossEntityDistanceMeter;
pub use nearby_list_change::ListMoveNearbyListChangeSelector;
pub use nearby_list_change::NearbyListChangeMoveSelector;
pub use nearby_list_swap::ListMoveNearbyListSwapSelector;
pub use nearby_list_swap::NearbyListSwapMoveSelector;
pub use pillar::DefaultPillarSelector;
pub use pillar::Pillar;
pub use pillar::PillarSelector;
pub use pillar::SubPillarConfig;
pub use ruin::RuinMoveSelector;
pub use sublist_change::ListMoveSubListChangeSelector;
pub use sublist_change::SubListChangeMoveSelector;
pub use sublist_swap::ListMoveSubListSwapSelector;
pub use sublist_swap::SubListSwapMoveSelector;
pub use typed_move_selector::ChangeMoveSelector;
pub use typed_move_selector::EitherChangeMoveSelector;
pub use typed_move_selector::EitherSwapMoveSelector;
pub use typed_move_selector::ListMoveKOptSelector;
pub use typed_move_selector::ListMoveListChangeSelector;
pub use typed_move_selector::ListMoveListRuinSelector;
pub use typed_move_selector::MoveSelector;
pub use typed_move_selector::SwapMoveSelector;
pub use typed_value::FromSolutionTypedValueSelector;
pub use typed_value::StaticTypedValueSelector;
pub use typed_value::TypedValueSelector;

Modules§

decorator
Move selector decorators for filtering, limiting, and transforming moves.
entity
Entity selectors for iterating over planning entities
k_opt
K-opt move selector for tour optimization.
list_change
List change move selector for element relocation.
list_reverse
List reverse move selector for 2-opt optimization.
list_ruin
List ruin move selector for Large Neighborhood Search on list variables.
list_swap
List swap move selector for element exchange.
mimic
Mimic selectors for synchronized selection across multiple selectors.
nearby
Nearby selection for distance-based filtering of candidates.
nearby_list_change
Nearby list change move selector for distance-pruned element relocation.
nearby_list_swap
Nearby list swap move selector for distance-pruned element exchange.
pillar
Pillar selector for selecting groups of entities with the same variable value.
ruin
Ruin move selector for Large Neighborhood Search.
sublist_change
Sublist change move selector for segment relocation (Or-opt).
sublist_swap
Sublist swap move selector for segment exchange.
typed_move_selector
Typed move selectors for zero-allocation move generation.
typed_value
Typed value selectors for high-performance value iteration.

Enums§

SelectionOrder
Defines the order in which elements are selected from a selector.