In a previous paper we presented an algorithm for solving the large nonlinear problems that arise in dynamic state and parameter estimation. These problems are described by a set of Ordinary Differential Equations (ODE) subject to initial values, discretized and solved under a simultaneous solution strategy within an Error-in-all-Variable-Measurements (EVM) framework. In this paper, we extend this work to systems described by Differential and Algebraic Equations (DAE), for both initial value (IVP) and boundary value (BVP) problems. The resulting discretized NLP problems are usually large both in the number of variables and the number of degrees-of-freedom, and the size of the problem grows linearly with the number of data samples or the number of discretizations, making them difficult to solve with general purpose NLP solvers. We discretize the DAE model with an implicit Runge-Kutta scheme (IRK) so that higher index and stiff problems can be solved, and use the SQP method to solve the resulting NLP. Under the assumption that the measurement errors are independently distributed, the optimality conditions for each data set at the QP subproblem level are decoupled so that the first order conditions in the state variables, input variables and the stage derivatives can be solved recursively and expressed as functions of the optimality conditions in the parameters, thus reducing the size of the QP subproblem and turning the solution effort linear with both the number of sample points and the number of discretization points. We use two decoupling procedures depending on whether the DAE system is expressed as an IVP or a BVP. For the IVP we extend the technique used in our previous paper and use an affine transform which expresses the directions in the variables and the multipliers as functions of the steps in the parameters. For the BVP we use a selected variable elimination procedure so that the optimality conditions in the state and input variables, stage derivatives and multipliers of the QP subproblem will be transformed into an almost block diagonal system of linear equations. We then solve this system using SOLVEBLOCK, a solution method linear with the number of blocks to reduce the size of the QP subproblem to the dimension of the parameters. As seen in our examples, these approaches are therefore much faster than general purpose NLP solvers. In this paper we also present a case where an IVP is unstable and difficult to solve, but stable and well behaved when rewritten as a BVP.
Read full abstract