Merlin is an integrated environment designed to solve optimization problems. It is devised to be easy-to-use, and implemented so as to be portable among different platforms. Another feature is that Merlin is open, i.e. a plug-in mechanism is provided so that others can easily embed their own code modules.
Merlin handles the following category of problems:
Find a local minimum of the function:
under the conditions:
This form is particularly suited when one needs to fit data points using a model function. One then minimizes the chisquare which is of the above form. In that case Merlin can calculate parabolic estimates of the confidence intervals for the model parameters as well as partial covariance matrices.
Merlin can be used both interactively and in batch. Interactively the user drives Merlin by entering commands through the keyboard. In batch Merlin reads commands from an input command file. Interactively Merlin is tolerant to errors in input and issues appropriate warning messages, while in batch aborts. There are various commands at the user's disposal that either invoke minimization algorithms or perform other auxiliary operations.
Merlin is programmable. Its programming language, MCL (Merlin Control Language), is a high level, easy to learn language. The MCL compiler takes as input a strategy (coded in MCL) and produces as output a file that contains commands that can steer Merlin appropriately. Merlin and MCL are both written in ANSI Fortran 77 to guarantee portability.