Struct vrp_core::construction::heuristics::InsertionHeuristic [−][src]
Implements generalized insertion heuristic.
Using JobSelector
, RouteSelector
, and ResultSelector
it tries to identify next job to
be inserted until there are no jobs left or it is not possible to insert due to constraint
limitations.
Implementations
impl InsertionHeuristic
[src]
pub fn new(
insertion_evaluator: Box<dyn InsertionEvaluator + Send + Sync>
) -> Self
[src]
insertion_evaluator: Box<dyn InsertionEvaluator + Send + Sync>
) -> Self
Creates a new instance of InsertionHeuristic
.
impl InsertionHeuristic
[src]
pub fn process(
&self,
ctx: InsertionContext,
job_selector: &(dyn JobSelector + Send + Sync),
route_selector: &(dyn RouteSelector + Send + Sync),
result_selector: &(dyn ResultSelector + Send + Sync),
quota: &Option<Arc<dyn Quota + Send + Sync>>
) -> InsertionContext
[src]
&self,
ctx: InsertionContext,
job_selector: &(dyn JobSelector + Send + Sync),
route_selector: &(dyn RouteSelector + Send + Sync),
result_selector: &(dyn ResultSelector + Send + Sync),
quota: &Option<Arc<dyn Quota + Send + Sync>>
) -> InsertionContext
Runs common insertion heuristic algorithm using given selector specializations.
Trait Implementations
impl Default for InsertionHeuristic
[src]
Auto Trait Implementations
impl !RefUnwindSafe for InsertionHeuristic
impl Send for InsertionHeuristic
impl Sync for InsertionHeuristic
impl Unpin for InsertionHeuristic
impl !UnwindSafe for InsertionHeuristic
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,