test_nls


test_nls, a MATLAB code which defines a set of nonlinear least square (NLS) test problems, involving n-vector arguments x for m-dimensional objective functions f(x), for which it is desired to find the argument x* which minimizes the L2 norm of f(x*).

The typical problem comprises M functions in N variables, and it is desired to minimize the sum of squares of the values of the functions. Each problem is specified by a starting point, a function, gradient, and jacobian routines.

The problems include:

  1. Linear function, full rank
  2. Linear function, rank 1.
  3. Linear function, rank 1, zero columns and rows.
  4. Rosenbrock function.
  5. Helical valley function.
  6. Powell singular function.
  7. Freudenstein/Roth function.
  8. Bard function.
  9. Kowalik and Osborne function.
  10. Meyer function.
  11. Watson function.
  12. Box 3-dimensional function.
  13. Jennrich and Sampson function.
  14. Brown and Dennis function.
  15. Chebyquad function.
  16. Brown almost-linear function.
  17. Osborne function 1.
  18. Osborne function 2.
  19. Hanson function 1
  20. Hanson function 2
  21. McKeown function 1
  22. McKeown function 2
  23. McKeown function 3
  24. Devilliers and Glasser function 1
  25. Devilliers and Glasser function 2
  26. Madsen example

Licensing:

The information on this web page is distributed under the MIT license.

Languages:

test_nls is available in a Fortran90 version and a MATLAB version.

Related Data and Programs:

test_nls_test

theodolite, a MATLAB code which presents the problem of estimating the location of an event which occurs in the sky, atmosphere, or the heavens, using nothing but the reported angle of observation from several stations; a nonlinear least squares (NLS) solver is needed.

Reference:

  1. John Dennis, David Gay, and Phuong Vu,
    A new nonlinear equations test problem,
    Technical Report 83-16,
    Mathematical Sciences Department,
    Rice University, (1983 - revised 1985).
  2. N. de Villiers and D. Glasser,
    A continuation method for nonlinear regression,
    SIAM Journal of Numerical Analysis,
    Volume 18, pages 1139-1154, 1981.
  3. C. Fraley,
    Solution of nonlinear least-squares problems,
    Technical Report STAN-CS-1165,
    Computer Science Department,
    Stanford University, 1987.
  4. C. Fraley,
    Software performance on nonlinear least-squares problems,
    Technical Report SOL 88-17,
    Systems Optimization Laboratory,
    Department of Operations Research,
    Stanford University, 1988.
  5. JJ McKeown,
    Specialized versus general-purpose algorithms for functions that are sums of squared terms,
    Math. Prog.,
    Volume 9, pages 57-68, 1975.
  6. JJ McKeown,
    On algorithms for sums of squares problems,
    in Towards Global Optimization,
    L. C. W. Dixon and G. Szego (editors),
    North-Holland, pages 229-257, 1975.
  7. Jorge More, Burton Garbow, Kenneth Hillstrom,
    Testing unconstrained optimization software,
    ACM Transactions on Mathematical Software,
    Volume 7, Number 1, March 1981, pages 17-41.
  8. Jorge More, Burton Garbow, Kenneth Hillstrom,
    Algorithm 566: Fortran Subroutines for Testing unconstrained optimization software,
    ACM Transactions on Mathematical Software,
    Volume 7, Number 1, March 1981, pages 136-140.
  9. Douglas Salane,
    A continuation approach for solving large residual nonlinear least squares problems,
    SIAM Journal of Scientific and Statistical Computing,
    Volume 8, pages 655-671, 1987.

Source Code:

Generic functions:


Last revised on 04 March 2026.