nlstac: Non-Gradient Separable Nonlinear Least Squares Fitting

A new package for nonlinear least squares fitting is introduced in this paper. This package implements a recently developed algorithm that, for certain types of nonlinear curve fitting, reduces the number of nonlinear parameters to be fitted. One notable feature of this method is the absence of initialization which is typically necessary for nonlinear fitting gradient-based algorithms. Instead, just some bounds for the nonlinear parameters are required. Even though convergence for this method is guaranteed for exponential decay using the max-norm, the algorithm exhibits remarkable robustness, and its use has been extended to a wide range of functions using the Euclidean norm. Furthermore, this data-fitting package can also serve as a valuable resource for providing accurate initial parameters to other algorithms that rely on them.

J. A. F. Torvisco (Facultad de Ciencias, Universidad de Extremadura) , R. Benítez (Departmento de Matemáticas para la Economía y la Empresa, Universidad de Valencia) , M. R. Arias (Facultad de Ciencias, Universidad de Extremadura) , J. Cabello Sánchez (Facultad de Ciencias, Universidad de Extremadura)
2023-11-08

0.1 Supplementary materials

Supplementary materials are available in addition to this article. It can be downloaded at RJ-2023-040.zip

R. K. Arora. Optimization. Algorithms and applications. Taylor & Francis Group, LLC, 2015.
D. Bates, K. M. Mullen, J. C. Nash and R. Varadhan. Minqa: Derivative-free optimization algorithms by quadratic approximation. 2014. URL https://CRAN.R-project.org/package=minqa. R package version 1.2.4.
C. Bendtsen. Pso: Particle swarm optimization. 2022. URL https://CRAN.R-project.org/package=pso. R package version 1.0.4.
Björck. Numerical methods for least squares problems. 1st ed United States of America: Society for Industrial; Applied Mathematics, 1996. URL https://epubs.siam.org/doi/abs/10.1137/1.9781611971484.
B. Christoffersen. Psqn: Partially separable quasi-newton. 2022. URL https://CRAN.R-project.org/package=psqn. R package version 0.3.1.
E. L. T. Conceicao. DEoptimR: Differential evolution optimization in pure r. 2022. URL https://CRAN.R-project.org/package=DEoptimR. R package version 1.0-10.
A. Coppola, B. Stewart and N. Okazaki. Lbfgs: Limited-memory BFGS optimization. 2022. URL https://CRAN.R-project.org/package=lbfgs. R package version 1.2.1.2.
M. Corporation and S. Weston. doParallel: Foreach parallel adaptor for the ’parallel’ package. 2022. URL https://CRAN.R-project.org/package=doParallel. R package version 1.0.17.
G. H. Golub and V. Pereyra. The differentiation of pseudo-inverses and nonlinear least squares problems whose variables separate. SIAM Journal on Numerical Analysis, 10: 413–432, 1973. DOI 10.1137/0710036.
G. Golub and V. Pereyra. Separable nonlinear least squares: The variable projection method and its applications. Inverse Problems, 19: R1–R26(1), 2003.
Microsoft and S. Weston. Foreach: Provides foreach looping construct. 2022. URL https://CRAN.R-project.org/package=foreach. R package version 1.5.2.
K. M. Mullen and I. H. M. van Stokkum. TIMP: An r package for modeling multi-way spectroscopic measurements. Journal of Statistical Software, 18(3): 2007. DOI 10.18637/jss.v018.i03.
J. C. Nash and D. Murdoch. Nlsr: Functions for nonlinear least squares solutions - updated 2022. 2023. URL https://CRAN.R-project.org/package=nlsr. R package version 2023.5.8.
J. Nocedal and S. J. Wright. Numerical optimization. second New York, NY, USA: Springer, 2006.
R. Pruim, D. Kaplan and N. Horton. mosaicData: Project MOSAIC data sets. 2022. URL https://CRAN.R-project.org/package=mosaicData. R package version 0.20.3.
R Core Team. R: A language and environment for statistical computing. Vienna, Austria: R Foundation for Statistical Computing, 2021. URL https://www.R-project.org/.
R. R. Rhinehart. Nonlinear regression modeling for engineering applications: Modeling, model validation, and enabling design of experiments. John Wiley & Sons, 2016.
L. Scrucca. GA: A package for genetic algorithms in R. Journal of Statistical Software, 53(4): 1–37, 2013. DOI 10.18637/jss.v053.i04.
J. A. F. Torvisco, M. R. Arias and J. Cabello Sánchez. A new algorithm to fit exponential decays without initial guess. Filomat, 32: 4233–4248, 2018. DOI 10.2298/FIL1812233T.
G. Vega Yon and E. Muñoz. ABCoptim: An implementation of the artificial bee colony (ABC) algorithm. 2017. URL https://github.com/gvegayon/ABCoptim. R package version 0.15.0.
H. Wickham. ggplot2: Elegant graphics for data analysis. Springer-Verlag New York, 2016. URL https://ggplot2.tidyverse.org.
M. Wilson. Spant: An r package for magnetic resonance spectroscopy analysis. Journal of Open Source Software, 6(67): 3646, 2021. DOI 10.21105/joss.03646.
Y. Xiang, S. Gubian, B. Suomela and J. Hoeng. Generalized simulated annealing for efficient GlobalOptimization: The GenSA package for r. The R Journal, 5/1: 2013. URL https://journal.r-project.org.
H. Xu, F. Ding and E. Yang. Modeling a nonlinear process using the exponential autoregressive time series model. Nonlinear Dynamics, 95: 2019. DOI 10.1007/s11071-018-4677-0.

References

Reuse

Text and figures are licensed under Creative Commons Attribution CC BY 4.0. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".

Citation

For attribution, please cite this work as

Torvisco, et al., "nlstac: Non-Gradient Separable Nonlinear Least Squares Fitting", The R Journal, 2023

BibTeX citation

@article{RJ-2023-040,
  author = {Torvisco, J. A. F. and Benítez, R. and Arias, M. R. and Cabello Sánchez, J.},
  title = {nlstac: Non-Gradient Separable Nonlinear Least Squares Fitting},
  journal = {The R Journal},
  year = {2023},
  note = {https://doi.org/10.32614/RJ-2023-040},
  doi = {10.32614/RJ-2023-040},
  volume = {15},
  issue = {2},
  issn = {2073-4859},
  pages = {5-24}
}