Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] aaxw_v1_0.gz(65 Kbytes)
Manuscript Title: MERLIN: a portable system for multidimensional minimization.
Authors: G.A. Evangelakis, J.P. Rizos, I.E. Lagaris, I.N. Demetropoulos
Program title: MERLIN
Catalogue identifier: AAXW_v1_0
Distribution format: gz
Journal reference: Comput. Phys. Commun. 46(1987)401
Programming language: Fortran.
Computer: CDC CYBER -171.
Operating system: NOS 2.4.1 630/628.
RAM: 28K words
Word size: 60
Peripherals: disc.
Keywords: General purpose, Minimization, Data fitting, Simplex, Dfp, Bfgs, Variable metric, Stochastic search, Line search, Numerical Differentiation.
Classification: 4.9.

Nature of problem:
A lot of problems in physics, chemistry, applied mathematics as well as in engineering and in other fields, are quite often reduced to minimizing a function of several variables. MERLIN is a system designed to minimize a multidimensional function.

Solution method:
Six algorithms are implemented. Three of them make use of the function's gradient and hence are suitable for minimizing differentiable functions, the rest three do not use derivatives at all and so are applicable to non-differentiable functions as well. The first three are the quasi-Newton methods known as DFP. BFGS and the conjugate gradient method of Polak and Ribiere. The SIMPLEX method of Nedler and Mead, corrected as suggested by Mike and Chaves, a random search and an ad hoc method, which use only function values, are implemented as well.

Restrictions:
Currently MERLIN is dimensioned to handle up to 150 variables. However by redimensioning a few arrays it can easily be enhanced or reduced according to the user's needs, as described in the provided manual.

Unusual features:
Apart from being a minimization program. MERLIN is designed to be easily further developed by the user and evolve in different directions. Hence it can serve as a testing found of different trial algorithms and can be seen as an optimization development system.

Running time:
Since housekeeping operations are quite fast, running time haeavily depends on the complexity of the objective function. The provided test run, took 7.12 CPU seconds on a CDC CYBER-171.