Numerical solution of large-scale Lyapunov equations, Riccati equations, and linear-quadratic optimal control problems

Peter Benner, Jing-Rebecca Li and Thilo Penzl
2008
Publication type:
Paper in peer-reviewed journals
Journal:
Numerical Linear Algebra with Applications, vol. 15, pp. 755-777
Abstract:
We study large-scale, continuous-time linear time-invariant control systems with a sparse or structured state matrix and a relatively small number of inputs and outputs. The main contributions of this paper are numerical algorithms for the solution of large algebraic Lyapunov and Riccati equations and linear-quadratic optimal control problems, which arise from such systems. First, we review an alternating direction implicit iteration-based method to compute approximate low-rank Cholesky factors of the solution matrix of large-scale Lyapunov equations, and we propose a refined version of this algorithm. Second, a combination of this method with a variant of Newton's method (in this context also called Kleinman iteration) results in an algorithm for the solution of large-scale Riccati equations. Third, we describe an implicit version of this algorithm for the solution of linear-quadratic optimal control problems, which computes the feedback directly without solving the underlying algebraic Riccati equation explicitly. Our algorithms are efficient with respect to both memory and computation. In particular, they can be applied to problems of very large scale, where square, dense matrices of the system order cannot be stored in the computer memory. We study the performance of our algorithms in numerical experiments. Copyright © 2008 John Wiley & Sons, Ltd.
BibTeX:
@article{Ben-Li-Pen-2008,
    author={Peter Benner and Jing-Rebecca Li and Thilo Penzl },
    title={Numerical solution of large-scale Lyapunov equations, Riccati 
           equations, and linear-quadratic optimal control problems },
    doi={10.1002/nla.622 },
    journal={Numerical Linear Algebra with Applications },
    year={2008 },
    volume={15 },
    pages={755--777},
}