RcppTrust: Thread-Safe C++ Trust Region Optimizers

Thread-safe C++ trust region optimizers, each exposed both as an R function and as a C-callable entry point (with function pointers registered for other packages to call without linking against this package's shared library) so they can be used from parallel C++ code such as in 'nlmixr2est'. Includes a port of the two-derivative trust region algorithm in the 'trust' package by Charles J. Geyer; a port of the Steihaug truncated conjugate-gradient trust region method from the 'basin' Rust crate (Steihaug (1983) <doi:10.1137/0720042>); and ports of M. J. D. Powell's derivative-free BOBYQA (Powell (2009), Report DAMTP 2009/NA06) and NEWUOA (Powell (2006) <doi:10.1007/0-387-30065-1_16>) Fortran 77 code <https://github.com/libprima/prima/tree/main/fortran/original>, as modified and distributed in the 'minqa' package, whose R interface is reproduced.

Version: 0.2.0
Depends: R (≥ 4.2.0)
Imports: Rcpp
LinkingTo: Rcpp, RcppArmadillo, BH
Suggests: testthat (≥ 3.0.0), stats, knitr, rmarkdown, trust, minqa, microbenchmark
Published: 2026-10-27
DOI: 10.32614/CRAN.package.RcppTrust
Author: Charles J. Geyer ORCID iD [aut, cph], Matthew Fidler ORCID iD [aut, cre], Michael J. D. Powell [aut] (BOBYQA and NEWUOA algorithms and original Fortran 77 code), Douglas Bates [ctb, cph] (minqa), Katharine M. Mullen [ctb, cph] (minqa), John C. Nash [ctb, cph] (minqa), Ravi Varadhan [ctb, cph] (minqa), Johan Larsson [ctb, cph] (basin trust-region / Steihaug implementation)
Maintainer: Matthew Fidler <matthew.fidler at gmail.com>
License: GPL-2
Copyright: See inst/COPYRIGHTS for the sources, copyright holders and licenses of code ported from 'trust', 'basin', 'minqa' and Powell's Fortran.
RcppTrust copyright details
URL: https://github.com/nlmixr2/RcppTrust/, https://nlmixr2.github.io/RcppTrust/, http://www.stat.umn.edu/geyer/trust/
NeedsCompilation: yes
SystemRequirements: C++17
Materials: README, NEWS
In views: Optimization
CRAN checks: RcppTrust results [issues need fixing before 2026-11-17]

Documentation:

Reference manual: RcppTrust.html , RcppTrust.pdf
Vignettes: RcppTrust: A Thread-Safe C++ Trust Region Optimizer (source, R code)
More Trust-Region Methods: Steihaug, BOBYQA and NEWUOA (source, R code)

Downloads:

Package source: RcppTrust_0.2.0.tar.gz
Windows binaries: r-devel: RcppTrust_0.1.0.zip, r-release: RcppTrust_0.2.0.zip, r-oldrel: RcppTrust_0.1.0.zip
macOS binaries: r-release (arm64): RcppTrust_0.2.0.tgz, r-oldrel (arm64): RcppTrust_0.2.0.tgz, r-release (x86_64): RcppTrust_0.2.0.tgz, r-oldrel (x86_64): RcppTrust_0.2.0.tgz
Old sources: RcppTrust archive

Reverse dependencies:

Reverse imports: nlmixr2est
Reverse linking to: nlmixr2est

Linking:

Please use the canonical form https://CRAN.R-project.org/package=RcppTrust to link to this page.