[−][src]Struct vrp_solver::Solver
A skeleton of metaheuristic with default ruin and recreate implementation.
Fields
selection: Box<dyn Selection>
mutation: Box<dyn Mutation>
acceptance: Box<dyn Acceptance>
termination: Box<dyn Termination>
quota: Option<Box<dyn Quota + Sync + Send>>
initial: Option<InsertionContext>
logger: Box<dyn Fn(String)>
Methods
impl Solver
[src]
pub fn new(
selection: Box<dyn Selection>,
mutation: Box<dyn Mutation>,
acceptance: Box<dyn Acceptance>,
termination: Box<dyn Termination>,
quota: Option<Box<dyn Quota + Sync + Send>>,
initial: Option<InsertionContext>,
logger: Box<dyn Fn(String)>
) -> Self
[src]
selection: Box<dyn Selection>,
mutation: Box<dyn Mutation>,
acceptance: Box<dyn Acceptance>,
termination: Box<dyn Termination>,
quota: Option<Box<dyn Quota + Sync + Send>>,
initial: Option<InsertionContext>,
logger: Box<dyn Fn(String)>
) -> Self
Creates a new instance of Solver
.
pub fn solve(
&mut self,
problem: Arc<Problem>
) -> Option<(Solution, Box<dyn ObjectiveCost + Send + Sync>, usize)>
[src]
&mut self,
problem: Arc<Problem>
) -> Option<(Solution, Box<dyn ObjectiveCost + Send + Sync>, usize)>
Solves given problem and returns solution, its cost and generation when it is found. Return None if no solution found.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for Solver
impl !Send for Solver
impl !Sync for Solver
impl Unpin for Solver
impl !UnwindSafe for Solver
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,
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, 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.
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.
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>,