Expand description
argmin optimization toolbox core
This module contains the traits and types necessary for implementing optimization algorithms and tools for observing the state of optimization runs and checkpointing.
Re-exports
pub use crate::solver::conjugategradient::beta::NLCGBetaUpdate;
pub use crate::solver::linesearch::LineSearch;
pub use crate::solver::trustregion::TrustRegionRadius;
Modules
Checkpointing
Macros
Observers
Convenience utilities for testing
Structs
The Error
type, a wrapper around a dynamic error type.
Solves an optimization problem with a solver
Maintains the state from iteration to iteration of a solver
A simple key-value storage
Maintains the state from iteration to iteration of a solver
Result of an optimization returned by after running an Executor
.
Maintains the state from iteration to iteration of a population-based solver
Wrapper around problems defined by users.
Enums
Argmin error type
Reasons for optimization algorithms to stop
Traits
An alias for float types (f32
, f64
) which combines multiple commonly needed traits from
num_traits
, std::fmt
and for serialization/deserialization (the latter only if the serde1
feature is enabled). It is automatically implemented for all types which fulfill the trait
bounds.
Defines computation of a cost function value
Trait alias for serde
s DeserializeOwned
.
Defines the computation of the gradient.
Defines the computation of the Hessian.
Defines the computation of the Jacobian.
Defines a linear Program
Defines the application of an operator to a parameter vector.
Trait alias for Send
Trait alias for serde
s Serialize
.
The interface all solvers are required to implement.
Minimal interface which struct used for managing state in solvers have to implement.
Trait alias for Sync