Trait argmin::ArgminSolver [] [src]

pub trait ArgminSolver<'a> {
    type Parameter: ArgminParameter;
    type CostValue: ArgminCostValue;
    type Hessian;
    type StartingPoints;
    type ProblemDefinition;
    fn init(
        &mut self,
        _: &'a Self::ProblemDefinition,
        _: &Self::StartingPoints
    ) -> Result<(), Error>;
fn next_iter(
        &mut self
    ) -> Result<ArgminResult<Self::Parameter, Self::CostValue>, Error>;
fn run(
        &mut self,
        _: &'a Self::ProblemDefinition,
        _: &Self::StartingPoints
    ) -> Result<ArgminResult<Self::Parameter, Self::CostValue>, Error>;
fn terminate(&self) -> bool; }

Trait every solve needs to implement (in the future)

Associated Types

Parameter vector

Cost value

Hessian

Initial parameter(s)

Type of Problem (TODO: Trait!)

Required Methods

Initializes the solver and sets the state to its initial state

Moves forward by a single iteration

Run initialization and iterations at once

Handles the stopping criteria

Implementors