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
- Types available for use in
KV
. - Reasons for optimization algorithms to stop
- Status of optimization execution
Traits§
- An alias for float types (
f32
,f64
) which combines multiple commonly needed traits fromnum_traits
,std::fmt
and for serialization/deserialization (the latter only if theserde1
feature is enabled). It is automatically implemented for all types which fulfill the trait bounds. - Defines computation of a cost function value
- 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
- 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