test_min


test_min, a Fortran77 code which defines problems involving the minimization of a scalar function of a scalar argument.

The code can be useful for testing algorithms that attempt to minimize a scalar function of a scalar argument. Each problem has an index number, and there are a corresponding set of routines, with names beginning with the index number, to:

There is also a "generic" problem interface, whose routines all begin with "P00". This allows the user to call all possible problems in a single simple loop, by passing the desired index number through the generic interface.

The functions can be invoked by an index number, and include:

  1. f(x) = ( x - 2 )^2 + 1;
    a PNG image;
  2. f(x) = x^2 + exp ( -x );
    a PNG image;
  3. f(x) = x^4 + 2x^2 + x + 3;
    a PNG image;
  4. f(x) = exp ( x ) + 0.01 / x;
    a PNG image;
  5. f(x) = exp ( x ) - 2 * x + 0.01 / x - 0.000001 / x^2;
    a PNG image;
  6. f(x) = 2 - x;
    a PNG image;
  7. f(x) = ( x + sin ( x ) ) * exp ( -x^2 );
    a PNG image;
  8. f(x) = 3 * x^2 + 1 + ( log ( ( x - pi )^2 ) ) / pi^4;
    a PNG image;
  9. f(x) = x^2 - 10 sin ( x^2 - 3x + 2);
    a PNG image;
  10. f(x) = cos(x)+5*cos(1.6*x)-2*cos(2*x)+5*cos(4.5*x)+7*cos(9*x);
    a PNG image;
  11. f(x) = 1+|3x-1|;
    a PNG image;
  12. f(x) = x^2+sin(53*x);
    a PNG image;
  13. f(x) = 2*x^4-7*x^2+3*x+5;
    a PNG image;
  14. f(x) = 1.0 / ( ( x - 0.3 )^2 + 0.01 ) + 1.0 / ( ( x - 0.9 )^2 + 0.04 ) - 6.0;
    a PNG image;

Licensing:

The computer code and data files described and made available on this web page are distributed under the MIT license

Languages:

test_min is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and an Octave version and a Python version.

Related Data and Programs:

test_min_test

brent, a Fortran77 library which contains Richard Brent's routines for finding the zero, local minimizer, or global minimizer of a scalar function of a scalar argument, without the use of derivative information.

Reference:

  1. Isabel Beichl, Dianne O'Leary, Francis Sullivan,
    Monte Carlo Minimization and Counting: One, Two, Too Many,
    Computing in Science and Engineering,
    Volume 9, Number 1, January/February 2007.
  2. Richard Brent,
    Algorithms for Minimization without Derivatives,
    Dover, 2002,
    ISBN: 0-486-41998-3,
    LC: QA402.5.B74.
  3. David Kahaner, Cleve Moler, Steven Nash,
    Numerical Methods and Software,
    Prentice Hall, 1989,
    ISBN: 0-13-627258-4,
    LC: TA345.K34.
  4. Arnold Krommer, Christoph Ueberhuber,
    Numerical Integration on Advanced Computer Systems,
    Springer, 1994,
    ISBN: 3540584102,
    LC: QA299.3.K76.
  5. Dianne O'Leary,
    Scientific Computing with Case Studies,
    SIAM, 2008,
    ISBN13: 978-0-898716-66-5,
    LC: QA401.O44.
  6. LE Scales,
    Introduction to Non-Linear Optimization,
    Springer, 1985,
    ISBN: 0-387-91252-5,
    LC: QA402.5.S33.

Source Code:


Last revised on 09 December 2023.