Scilab Home Page | Wiki | Bug Tracker | Forge | Mailing List Archives | Scilab Online Help | File Exchange
ATOMS : Unconstrained Optimization details
Login with GitLab

Unconstrained Optimization

Provide 35 unconstrained optimization problems
(2373 downloads for this version - 20761 downloads for all versions)
Details
Version
0.2.1
A more recent valid version exists: 0.2.3
Authors
Michael Baudin
Benoit Hamelin
Jean-Pierre Dussault
Chaya Gurwitz
Livia Klein
Madhu Lamba
John Burkardt
Jorge More
Burton Garbow
Kenneth Hillstrom
Owner Organization
DIGITEO
Maintainer
Michael BAUDIN
Category
License
Creation Date
November 24, 2011
Source created on
Scilab 5.4.x
Binaries available on
Scilab 5.4.x:
Windows 64-bit Windows 32-bit Linux 64-bit Linux 32-bit macOS
Install command
--> atomsInstall("uncprb")
Description
            Purpose

The goal of this toolbox is to provide unconstrained optimization problems
in order to test optimization algorithms.

The More, Garbow and Hillstrom collection of test functions is widely used
in testing unconstrained optimization software.  The code for these problems
is available in Fortran from the netlib software archives.

The port from Fortran to Matlab was done by two undergraduate students at
Brooklyn College,
Livia Klein and Madhu Lamba, under the supervision of Chaya Gurwitz.

Benoit Hamelin did the port from Matlab to Scilab v4 with m2sci and
did some manual tuning of the result.

Michael Baudin did the port from Scilab v4 to Scilab v5.
I renamed the functions to avoid naming conflicts.
I formatted the help pages to generate automatically the xml from the
sources.

 * Provides 35 unconstrained optimization problems.
 * Provides the function value, the gradient, the function vector, the
Jacobian.
 * Provides the Hessian matrix for 18 problems.
 * Provides the starting point for each problem.
 * Provides the optimum function value and the optimum point x for many
problems.
 * Provides finite difference routines for the gradient, the Jacobian and the
Hessian matrix.
 * Macro based functions : no compiler required.
 * All function values, gradients, Jacobians and Hessians are tested.


Features
--------

 * uncprb_overview — An overview of the Unconstrained Optimization Problems
toolbox.
 * uncprb_getclass — Returns the name.
 * uncprb_getfunc — Returns the function vector, the Jacobian and, if
available, the Hessian.
 * uncprb_getgrdfcn — Returns the gradient.
 * uncprb_getgrdfd — Compute the gradient by finite differences.
 * uncprb_gethesfcn — Returns the function value.
 * uncprb_gethesfd — Compute the Hessian by finite differences.
 * uncprb_getinitf — Returns the starting point.
 * uncprb_getinitpt — Returns the starting point.
 * uncprb_getname — Returns the name.
 * uncprb_getobjfcn — Returns the function value.
 * uncprb_getopt — Returns the name.
 * uncprb_getproblems — Lists the problems.
 * uncprb_getvecfcn — Returns the function vector and the Jacobian.
 * uncprb_getvecjac — Returns the Jacobian.
 * uncprb_getvecjacfd — Compute the Jacobian by finite differences
 * Benchmark
   * uncprb_computestatus — Computes the status of an optimization.
   * uncprb_leastsqfun — Returns the residual vector for the leastsq
function.
   * uncprb_leastsqget — Get the fields of the internal data for
uncprb_leastsqfun.
   * uncprb_leastsqinit — Initialize the internal data for uncprb_leastsqfun
   * uncprb_leastsqjac — Returns the Jacobian matrix for the leastsq
function.
   * uncprb_lsqrsolvefun — Returns the residual vector for the lsqrsolve
function.
   * uncprb_lsqrsolveget — Get the fields of the internal data for
uncprb_lsqrsolve.
   * uncprb_lsqrsolveinit — Initialize the internal data for uncprb_lsqrsolve
   * uncprb_lsqrsolvejac — Returns the Jacobian matrix for the lsqrsolve
function.
   * uncprb_optimfun — Returns f and g for the optim function.
   * uncprb_optimget — Get the fields of the internal data for
uncprb_optimfun.
   * uncprb_optiminit — Initialize the internal data for uncprb_optimfun
   * uncprb_printsummary — rtolF, atolF, rtolX, atolX, fmt)

Demos
-----

 * checkAlgo566_UNC : compare the output of uncprb against Algo 566 on UNC
problems
 * checkAlgo566_NLEQ : compare the output of uncprb against Algo 566 on NLEQ
problems
 * bench_problems : Compare performances of the functions of the test problems
 * bench_optim : Test the optim function on this benchmark.
 * bench_lsqrsolve : Test the lsqrsolve function on this benchmark.
 * bench_leastsq : Test the leastsq function on this benchmark.
 * bench_ntrust : Test the ntrust function (from optkelley) on this benchmark.
 * bench_fminsearch : Test the fminsearch function on this benchmark.
 * bench_bfgswopt : Test the bfgswopt function (from optkelley) on this
benchmark.

References
----------

"Algorithm 566: FORTRAN Subroutines for Testing Unconstrained Optimization
Software", ACM Transactions on Mathematical Software (TOMS), Volume 7 , 
Issue 1, March 1981, Pages: 136 - 140, J. J. Moré, Burton S. Garbow, Kenneth E.
Hillstrom

"HESFCN - A Fortran Package Of Hessian Subroutines For Testing Nonlinear
Optimization
Software", Victoria Averbukh, Samuel Figueroa, And Tamar Schlick Courant
Institue Of Mathematical Sciences

http://www.dmi.usherb.ca/~hamelin/autodiff/html/sciad_en.html

Authors
-------

Scilab v5 port and update: 2010, Michael Baudin
Scilab port: 2000-2004, Benoit Hamelin, Jean-Pierre Dussault
Matlab port: Chaya Gurwitz, Livia Klein, and Madhu Lamba
2000 - John Burkardt (optimum points for problem #20)
Fortran 77: Jorge More, Burton Garbow and Kenneth Hillstrom

            
Files (2)
[193.59 kB]
Source code archive
Same sources as in previous toolbox version, updated to make it available for
Scilab 5.4.0
[352.06 kB]
OS-independent binary for Scilab 5.4.x
Binary version
Automatically generated by the ATOMS compilation chain

News (0)
Comments (0)
Leave a comment
You must register and log in before leaving a comment.
Login with GitLab
Email notifications
Send me email when this toolbox has changes, new files or a new release.
You must register and log in before setting up notifications.