Advertisement

Computational Experience with a Modified Newton Solver for Discrete-Time Algebraic Riccati Equations

  • Vasile SimaEmail author
  • Peter Benner
Conference paper
Part of the Lecture Notes in Electrical Engineering book series (LNEE, volume 613)

Abstract

A Newton-type algorithm and line search strategies for solving generalized discrete-time algebraic Riccati equations are dealt with. The conceptual algorithm is presented, and its main computational steps are discussed. Evaluation of residuals and closed-loop matrices at each iteration, determination of the step size, and the use of line search with backtracking, are addressed in detail. Algorithmic and implementation issues taken into account in the developed solver are described. An extensive performance investigation on a large collection of examples has been performed, and the results are summarized. Both usual line search and line search with backtracking, and either identity or diagonal performance index matrices are considered. Difficult examples are included. The results often show significantly improved accuracy, measured in terms of normalized and relative residuals, in comparison with the state-of-the-art MATLAB function. The new solver is strongly recommended for improving the solutions computed by other solvers.

Keywords

Algebraic Riccati equation Numerical linear algebra Numerical methods Optimal control Optimal estimation 

References

  1. 1.
    Abels J, Benner P (1999) CAREX—A collection of benchmark examples for continuous-time algebraic Riccati equations (Version 2.0). SLICOT Working Note 1999-14. http://www.slicot.org
  2. 2.
    Abels J, Benner P (1999) DAREX—A collection of benchmark examples for discrete-time algebraic Riccati equations (Version 2.0). SLICOT Working Note 1999-16. http://www.slicot.org
  3. 3.
    Anderson BDO (1978) Second-order convergent algorithms for the steady-state Riccati equation. Int J Contr 28(2):295–306.  https://doi.org/10.1080/00207177808922455MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Anderson BDO, Moore JB (1971) Linear Optimal Control. Prentice-Hall, Englewood CliffsCrossRefGoogle Scholar
  5. 5.
    Anderson E, Bai Z, Bischof C, Blackford S, Demmel J, Dongarra J, Du Croz J, Greenbaum A, Hammarling S, McKenney A, Sorensen D (1999) LAPACK users’ guide: third edition. Software \(\cdot \) Environments \(\cdot \) Tools. SIAM, PhiladelphiaGoogle Scholar
  6. 6.
    Armstrong ES, Rublein GT (1976) A stabilization algorithm for linear discrete constant systems. IEEE Trans Autom Contr AC-21(4):629–631.  https://doi.org/10.1109/TAC.1976.1101295MathSciNetCrossRefGoogle Scholar
  7. 7.
    Arnold WF III, Laub AJ (1984) Generalized eigenproblem algorithms and software for algebraic Riccati equations. Proc IEEE 72(12):1746–1754.  https://doi.org/10.1109/PROC.1984.13083CrossRefGoogle Scholar
  8. 8.
    Balzer LA (1980) Accelerated convergence of the matrix sign function method of solving Lyapunov, Riccati and other matrix equations. Int J Contr 32(6):1057–1078.  https://doi.org/10.1080/00207178008910040MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Benner P (1997) Contributions to the numerical solution of algebraic Riccati equations and related eigenvalue problems. Dissertation, Fakultät für Mathematik, Technische Universität Chemnitz–Zwickau, D–09107 Chemnitz, GermanyGoogle Scholar
  10. 10.
    Benner P (1998) Accelerating Newton’s method for discrete-time algebraic Riccati equations. In: Beghi A, Finesso L, Picci G (eds) Mathematical Theory of Networks and Systems, Il Poligrafo, Padova, Italy, pp 569–572. https://doi.org/10.1.1.20.7467
  11. 11.
    Benner P, Byers R (1998) An exact line search method for solving generalized continuous-time algebraic Riccati equations. IEEE Trans Autom Contr 43(1):101–107.  https://doi.org/10.1109/9.654908MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Benner P, Sima V (2003) Solving algebraic Riccati equations with SLICOT. In: The 11th Mediterranean conference on control and automation, Rhodes, Greece. https://doi.org/10.1.1.89.3409
  13. 13.
    Benner P, Mehrmann V, Sima V, Van Huffel S, Varga A (1999) SLICOT—a subroutine library in systems and control theory. In: Datta BN (ed) Applied and computational control, signals, and circuits, vol 1, Birkhäuser, Boston, MA, pp 499–539.  https://doi.org/10.1007/978-1-4612-0571-5_10CrossRefGoogle Scholar
  14. 14.
    Benner P, Kressner D, Sima V, Varga A (2010) Die SLICOT-Toolboxen für Matlab. at—Autom 58(1):15–25.  https://doi.org/10.1524/auto.2010.0814
  15. 15.
    Benner P, Sima V, Voigt M (2016) Algorithm 961: Fortran 77 subroutines for the solution of skew-Hamiltonian/Hamiltonian eigenproblems. ACM Trans Math Softw 42(3):1–26.  https://doi.org/10.1145/2818313MathSciNetCrossRefGoogle Scholar
  16. 16.
    Bini DA, Iannazzo B, Meini B (2012) Numerical solution of algebraic Riccati equations. SIAM, PhiladelphiazbMATHGoogle Scholar
  17. 17.
    Bunse-Gerstner A, Mehrmann V (1986) A symplectic QR like algorithm for the solution of the real algebraic Riccati equation. IEEE Trans Autom Contr AC–31(12):1104–1113.  https://doi.org/10.1109/TAC.1986.1104186MathSciNetCrossRefGoogle Scholar
  18. 18.
    Byers R (1987) Solving the algebraic Riccati equation with the matrix sign function. Linear Algebra Appl 85(1):267–279.  https://doi.org/10.1016/0024-3795(87)90222-9MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    Chu EW, Fan HY, Lin WW (2005) A structure-preserving doubling algorithm for continuous-time algebraic Riccati equations. Linear Algebra Appl 386:55–80.  https://doi.org/10.1016/j.laa.2004.10.010MathSciNetCrossRefzbMATHGoogle Scholar
  20. 20.
    Ciubotaru BD, Staroswiecki M (2009) Comparative study of matrix Riccati equation solvers for parametric faults accommodation. In: 10th European control conference, Budapest, Hungary, pp 1371–1376.  https://doi.org/10.23919/ECC.2009.7074597
  21. 21.
    Dongarra JJ, Du Croz J, Duff IS, Hammarling S (1990) Algorithm 679: a set of level 3 basic linear algebra subprograms. ACM Trans Math Softw 16(1):1–17, 18–28.  https://doi.org/10.1145/77626.77627CrossRefGoogle Scholar
  22. 22.
    Gardiner JD, Laub AJ (1986) A generalization of the matrix sign function solution for algebraic Riccati equations. Int J Contr 44:823–832.  https://doi.org/10.1109/CDC.1985.268700CrossRefzbMATHGoogle Scholar
  23. 23.
    Giftthaler M, Neunert M, Stäuble M, Buchli J (2018) The control toolbox—an open-source C++ library for robotics, optimal and model predictive control. https://arxiv.org/abs/1801.04290.  https://doi.org/10.1109/SIMPAR.2018.8376281
  24. 24.
    Golub GH, Van Loan CF (2013) Matrix computations, 4th edn. The Johns Hopkins University Press, BaltimorezbMATHGoogle Scholar
  25. 25.
    Guo C, Laub AJ (2000) On a Newton-like method for solving algebraic Riccati equations. SIAM J Matrix Anal Appl 21(2):694–698.  https://doi.org/10.1137/S0895479898348519MathSciNetCrossRefzbMATHGoogle Scholar
  26. 26.
    Guo CH, Iannazzo B, Meini B (2007) On the doubling algorithm for a (shifted) nonsymmetric algebraic Riccati equation. SIAM J Matrix Anal Appl 29(4):1083–1100.  https://doi.org/10.1137/060660837MathSciNetCrossRefzbMATHGoogle Scholar
  27. 27.
    Guo PC (2016) A modified large-scale structure-preserving doubling algorithm for a large-scale Riccati equation from transport theory. Numer Algorithms 71(3):541–552.  https://doi.org/10.1007/s11075-015-0008-4MathSciNetCrossRefzbMATHGoogle Scholar
  28. 28.
    Guo XX, Lin WW, Xu SF (2006) A structure-preserving doubling algorithm for nonsymmetric algebraic Riccati equation. Numer Math 103(3):393–412.  https://doi.org/10.1007/s00211-005-0673-7MathSciNetCrossRefzbMATHGoogle Scholar
  29. 29.
    Hammarling SJ (1982) Newton’s method for solving the algebraic Riccati equation. NPC report DIIC 12/82, National Physics Laboratory, Teddington, Middlesex TW11 OLW, U.KGoogle Scholar
  30. 30.
    Hewer GA (1971) An iterative technique for the computation of the steady state gains for the discrete optimal regulator. IEEE Trans Autom Contr AC–16(4):382–384.  https://doi.org/10.1109/TAC.1971.1099755CrossRefGoogle Scholar
  31. 31.
    Jónsson GF, Vavasis S (2004) Solving polynomials with small leading coefficients. SIAM J Matrix Anal Appl 26(2):400–414.  https://doi.org/10.1137/S0895479899365720MathSciNetCrossRefzbMATHGoogle Scholar
  32. 32.
    Kenney C, Laub AJ, Wette M (1989) A stability-enhancing scaling procedure for Schur-Riccati solvers. Syst Contr Lett 12:241–250.  https://doi.org/10.1016/0167-6911(89)90056-XMathSciNetCrossRefzbMATHGoogle Scholar
  33. 33.
    Kleinman DL (1968) On an iterative technique for Riccati equation computations. IEEE Trans Autom Contr AC 13:114–115.  https://doi.org/10.1109/TAC.1968.1098829CrossRefGoogle Scholar
  34. 34.
    Lancaster P, Rodman L (1980) Existence and uniqueness theorems for the algebraic Riccati equation. Int J Contr 32:285–309.  https://doi.org/10.1080/00207178008922858MathSciNetCrossRefzbMATHGoogle Scholar
  35. 35.
    Lancaster P, Rodman L (1995) The algebraic Riccati equation. Oxford University Press, OxfordzbMATHGoogle Scholar
  36. 36.
    Lancaster P, Ran ACM, Rodman L (1986) Hermitian solutions of the discrete algebraic Riccati equation. Int J Contr 44:777–802.  https://doi.org/10.1080/00207178608933632MathSciNetCrossRefzbMATHGoogle Scholar
  37. 37.
    Lancaster P, Ran ACM, Rodman L (1987) An existence and monotonicity theorem for the discrete algebraic matrix Riccati equation. Linear Multilinear Algebra 20:353–361.  https://doi.org/10.1080/03081088708817768MathSciNetCrossRefzbMATHGoogle Scholar
  38. 38.
    Lanzon A, Feng Y, Anderson BDO, Rotkowitz M (2008) Computing the positive stabilizing solution to algebraic Riccati equations with an indefinite quadratic term via a recursive method. IEEE Trans Autom Contr AC 53(10):2280–2291.  https://doi.org/10.1109/TAC.2008.2006108MathSciNetCrossRefGoogle Scholar
  39. 39.
    Laub AJ (1979) A Schur method for solving algebraic Riccati equations. IEEE Trans Autom Contr AC 24(6):913–921.  https://doi.org/10.1109/CDC.1978.267893
  40. 40.
    Leibfritz F, Lipinski W (2004) COMPl\(_e\)ib 1.0 – User manual and quick reference. Tech. rep., Department of Mathematics, University of Trier, D–54286 Trier, GermanyGoogle Scholar
  41. 41.
    Mehrmann V (1991) The autonomous linear quadratic control problem. Theory and numerical solution. In: Thoma M, Wyner A (eds) LNCIS, vol 163. Springer-Verl, HeidelbergGoogle Scholar
  42. 42.
    Mehrmann V, Tan E (1988) Defect correction methods for the solution of algebraic Riccati equations. IEEE Trans Autom Contr AC 33(7):695–698.  https://doi.org/10.1109/9.1282MathSciNetCrossRefGoogle Scholar
  43. 43.
    Pappas T, Laub AJ, Sandell NR (1980) On the numerical solution of the discrete-time algebraic Riccati equation. IEEE Trans Autom Contr AC 25(4):631–641.  https://doi.org/10.1109/TAC.1980.1102434MathSciNetCrossRefGoogle Scholar
  44. 44.
    Roberts J (1980) Linear model reduction and solution of the algebraic Riccati equation by the use of the sign function. Int J Contr 32:667–687.  https://doi.org/10.1080/00207178008922881MathSciNetCrossRefGoogle Scholar
  45. 45.
    Sima V (1996) Algorithms for linear-quadratic optimization. In: Taft EJ, Nashed Z (eds) Pure and applied mathematics: a series of monographs and textbooks, vol 200. Marcel Dekker, Inc., New YorkGoogle Scholar
  46. 46.
    Sima V (2013) Solving discrete-time algebraic Riccati equations using modified Newton’s method. In: 6th International scientific conference on physics and control, San Luis Potosí, MexicoGoogle Scholar
  47. 47.
    Sima V (2013) Solving SLICOT benchmarks for algebraic Riccati equations by modified Newton’s method. In: 17th joint international conference on system theory, control and computing, Sinaia, Romania. IEEE, pp 491–496.  https://doi.org/10.1080/00207178008922881MathSciNetCrossRefGoogle Scholar
  48. 48.
    Sima V (2014) Efficient computations for solving algebraic Riccati equations by Newton’s method. In: Matcovschi MH, Ferariu L, Leon F (eds) 2014 18th joint international conference on system theory, control and computing, Sinaia, Romania. IEEE, pp 609–614.  https://doi.org/10.1109/ICSTCC.2014.6982483
  49. 49.
    Sima V (2015) Computational experience with a modified Newton solver for continuous-time algebraic Riccati equations. In: Ferrier JL, Gusikhin O, Madani K, Sasiadek J (eds) Informatics in control, automation and robotics, LNEE, vol 325. Springer International Publishing, pp 55–71.  https://doi.org/10.1007/978-3-319-10891-9_3Google Scholar
  50. 50.
    Sima V, Benner P (2006) A SLICOT implementation of a modified Newton’s method for algebraic Riccati equations. In: 14th Mediterranean conference on control and automation, Ancona, Italy, Omnipress.  https://doi.org/10.1109/MED.2006.328740
  51. 51.
    Sima V, Benner P (2008) Experimental evaluation of new SLICOT solvers for linear matrix equations based on the matrix sign function. In: 9th IEEE international symposium on computer-aided control systems design, San Antonio, Texas, U.S.A., Omnipress, pp 601–606.  https://doi.org/10.1109/CACSD.2008.4627361
  52. 52.
    Sima V, Benner P (2014) Numerical investigation of Newton’s method for solving continuous-time algebraic Riccati equations. In: Ferrier JL, Gusikhin O, Madani K, Sasiadek J (eds) 11th international conference on informatics in control, automation and robotics, Vienna, Austria, vol 1. SciTePress, Portugal, pp 404–409.  https://doi.org/10.5220/0005117004040409
  53. 53.
    Sima V, Benner P (2015) Solving SLICOT benchmarks for continuous-time algebraic Riccati equations by Hamiltonian solvers. In: 2015 19th international conference on system theory, control and computing, Cheile Gradistei - Fundata Resort, Romania. IEEE, pp 1–6.  https://doi.org/10.1109/ICSTCC.2015.7321260
  54. 54.
    Sima V, Benner P (2018) Numerical investigation of Newton’s method for solving discrete-time algebraic Riccati equations. In: Madani K, Gusikhin OY (eds) 15th international conference on informatics in control, automation and robotics, Porto, Portugal, vol 1. SciTePress, pp 66–75Google Scholar
  55. 55.
    Van Dooren P (1981) A generalized eigenvalue approach for solving Riccati equations. SIAM J Sci Stat Comput 2(2):121–135.  https://doi.org/10.1137/0902010MathSciNetCrossRefzbMATHGoogle Scholar
  56. 56.
    Van Huffel S, Sima V, Varga A, Hammarling S, Delebecque F (2004) High-performance numerical software for control. IEEE Contr Syst Mag 24(1):60–76.  https://doi.org/10.1109/MCS.2004.1272746CrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2020

Authors and Affiliations

  1. 1.National Institute for Research and Development in InformaticsBucharestRomania
  2. 2.Max Planck Institute for Dynamics of Complex Technical SystemsMagdeburgGermany

Personalised recommendations