Programs in Physics & Physical Chemistry
|[Licence| Download | New Version Template] aatu_v1_0.gz(5 Kbytes)|
|Manuscript Title: A routine for parameter optimization using an accelerated grid-search method.|
|Authors: Z. Basrak|
|Program title: POAGS|
|Catalogue identifier: AATU_v1_0|
Distribution format: gz
|Journal reference: Comput. Phys. Commun. 46(1987)149|
|Programming language: Fortran.|
|Computer: CYBER 845.|
|Operating system: NOS2.4 VERSION 2 L642, RTE-IVB.|
|RAM: 23K words|
|Word size: 60|
|Keywords: General purpose, Parameter optimization, Non-linear, Least squares, Fit, Root mean square, Minimization, Accelerated grid search.|
Nature of problem:
In some physical applications, sophisticated routines for parameter optimization fail to find a solution. For such ill-conditioned minimization problems, a safe way of finding a solution is to use a simple but quite slow grid-search procedure. The code POAGS (Parameter Optimization by Accelerated Grid Search) automatically searches for a set of parameters which yields the optimal least-squares fit to the data using an accelerated grid search; that considerably reduces the time needed to get the job done. The POAGS can be adapted to any program without much difficulty.
The mean-squares deviation between data and calculation is minimized for each parameter using a simple step-wise grid-search procedure. Slow stepping towards a minimum is accelerated by extrapolation of each parameter value with the help of the parabola defined in the x**2 vs parameter plane by three successive grid-search cycles.
The routine POAGS itself does not possess any unusual feature, in contrast to the test run example. The test run is immediately executable on CDC machines, but contains, as comments, a few instructions characteristic of HP 1000 computers. These instructions are labelled by CHP at the beginning of lines for easier identification. If the test run example is to be run on a HP 1000 machine, the actual PROGRAM statement must be deleted and the CHP label must be removed from the lines containing executable statements.
The running time depends strongly on the number of parameters to be optimized, the number of data points, the number of iterations needed to achieve the desired accuracy and on the time needed for the evaluation of the function chosen to fit the data. The running time for the test run (6 parameters and 50 data points) on the CYBER 845 is 4.68s of CPU time, while on the HP 1000 is 49.2 s of CPU time.
|Disclaimer | ScienceDirect | CPC Journal | CPC | QUB|