pub trait Optimizer {
// Required method
fn optimize<O: ObjectiveFunction>(
&self,
config: &OptimizationConfig,
objective: &O,
) -> Vec<CandidateResult>;
// Provided method
fn best<O: ObjectiveFunction>(
&self,
config: &OptimizationConfig,
objective: &O,
) -> Option<CandidateResult> { ... }
}Expand description
Trait for optimization algorithms.
Required Methods§
Sourcefn optimize<O: ObjectiveFunction>(
&self,
config: &OptimizationConfig,
objective: &O,
) -> Vec<CandidateResult>
fn optimize<O: ObjectiveFunction>( &self, config: &OptimizationConfig, objective: &O, ) -> Vec<CandidateResult>
Runs the optimization and returns ranked candidates.
Provided Methods§
Sourcefn best<O: ObjectiveFunction>(
&self,
config: &OptimizationConfig,
objective: &O,
) -> Option<CandidateResult>
fn best<O: ObjectiveFunction>( &self, config: &OptimizationConfig, objective: &O, ) -> Option<CandidateResult>
Returns the best candidate.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".