PAREST is a direct multiple shooting method designed to solve parameter estimation and optimal control problems in systems of differential-algebraic equations or ordinary differential equations [1], [2].
In parameter estimation problems
(also called parameter identification problems), parameters of the
dynamic model are fitted to a set of measurements of
(functions of) the state variables
by minimizing a nonlinear least squares objective.
In optimal control problems the control variables
are computed which minimize a performance index.
In both cases,
inequality constraints may be imposed on the
state and control variables as well.
PAREST is a direct transcription method.
I.e. a multiple shooting approach is used to
discretize and
solve the boundary value problem.
The control variables are discretized by
piecewise linear functions.
Generalized Gauss-Newton methods [12] and
Sequential Quadratic Programming methods [9] are used
to solve the resulting nonlinearly constrained least squares problems
and nonlinearly constrained optimization problems.
Version 1.0 of the software consists of a numerical core written in Fortran77 and a main program written in C for handling input and output. The user must provide subroutines that define the model functions (objective, differential equations, boundary conditions, nonlinear inequality constraints). This is usually done by editing the pre-defined subroutines in the file uspec.f (Fortran77). Further informations on the problem (as the dimensions of the problem, specifications of the numerical methods, lower and upper bounds for all variables, optional scaling, the three time grids (of the multiple shooting discretization, of the control discretization, and of the times of measurements (only in parameter identification)) as well as initial estimates of state and control variables, the measurement values (only in parameter estimation)) have to be supplied by editing the input file start.dat.
A supplementary program PGRAPH is provided which supports a visualization of the numerical results using the LRZ-graphics library [3].