Expand description
Clean-room Rust implementation of R-compatible
stats::optim(..., method = "L-BFGS-B") semantics.
The crate focuses on R-style wrapper behavior: fnscale, parscale,
ndeps, bounds, optional gradients, typed errors, and R-like result fields.
It does not call R at runtime.
use rcompat_lbfgsb::{optim_lbfgsb, Bounds, OptimControl};
let result = optim_lbfgsb(
vec![0.0],
Bounds::new(vec![-10.0], vec![10.0])?,
|p| (p[0] - 2.0).powi(2),
OptimControl::default_for_dimension(1),
)?;
assert!((result.par[0] - 2.0).abs() < 1e-5);Structs§
- Bounds
- Lower and upper bounds for each parameter.
- Optim
Control - R-like controls for L-BFGS-B optimization.
- Optim
Counts - R-like function and gradient evaluation counts.
- Optim
Result - R-like optimization result.
Enums§
- Optim
Error - Error returned when optimization inputs are invalid or evaluation fails.
Functions§
- optim_
lbfgsb - Optimizes an objective using R-compatible L-BFGS-B wrapper semantics.
- optim_
lbfgsb_ with_ gradient - Optimizes an objective with a user-supplied gradient.