周立平
一类广义代数Riccati方程的数值求解算法
周立平
(湖南科技学院 理学院,湖南 永州 425199)
广义代数Riccati方程的数值方法在非稳定系统模型降阶,滤波和动力系统控制中有十分重要的作用。本文基于牛顿迭代法设计了一种求解代数Riccati方程的预条件共轭算法,数值实验验证了该方法具有良好的收敛性。
代数Riccati方程;牛顿迭代法;预条件共轭梯度法
本文旨在研究如下一类广义代数 Riccati 方程(ARE)的数值解:
ARE(1.1)的求解在非稳定系统模型降阶,滤波,线性二次校正问题和动力系统控制中有十分重要的作用。ARE(1.1)是二次矩阵方程,且是非线性的,在一定条件下,ARE(1.1)具有唯一的半正定解[1]。
目前,对ARE进行数值求解大多是在Newton迭代法框架下进行。如Chandrasekhar迭代法[3,4]和NM-Kleinman 迭代法[5,6]等,它们的主要思想是将二次方程线性化后再求解. 为给出Peter Benner等人在文[7]中给出了低秩Newton Cholesky因子法(LRCF-NM)和低秩Newton Galekin-ADI 方法(LRCF-NM-GP-ADI)。PFADI
基于Newton迭代法框架求解ARE(1.1),通常会导出一系列Lyapunov方程。因此,针对这些Lyapunov方程的高效稳定算法成为求解ARE(1.1)的关键。目前,已有一系列研究成果[8,9]。最近,Lin与V.Simoncini在文[10]中提出了基于最小残差法(MINRES)求解大规模Lyapunov 方程的方法。受此启发,本文将在Newton迭代法框架下,结合MINRES方法和预条件共轭最小二乘法(PCGLS)求解Lyapunov方程,进而得到ARE(1.1)的数值解。
算法2.1
不失一般性,去掉方程(2.)的各项下标,得到如下一般形式的(广义)Lyapunov方程
对于方程(2.2),现在最常用的方法是Krylov子空间方法[12-14]。本文取一种简单Krylov子空间为
(2.3)
注意到方程(2.3)的解其实质就是使残差范数最小,设方程(2.3)的近似解为,则它可作为如下优化问题的解
引入算子
,
则(2.4)等价为
对于方程(2.5),为加快收敛速度,本文采用采用预条件共轭梯度最小二乘方法(PCGLS)求(2.5)的解。事实上,利用拉直算子可将(2.5)化为矩阵-向量方程形式,但为了避免计算结束时再次对向量形式的解进行转换,我们直接使用其矩阵-矩阵形式。记算子的伴随算子为,则。记预条件子为,求解 (2.5) 的PCGLS算法[10]。可描述如下:
算法 2.2
需要指出的是,布尔量flag用于标记Krylov 子空间的基是否能满足算法 2.2的收敛性要求。
结合算法2.1和2.2,我们得到了如下求解ARE(1.1)的基于最小残差的预条件共轭最小二乘牛顿迭代算法。
算法 2.3
下面我们将给出运用算法2.3求解ARE(1.1)的实例。为简单起见,取ARE(1.1)中为单位矩阵。考察如下二维抛物型偏微分方程
调用Lyapack 软件包[2]中的子程序fdm_matrix和fdm_vector对方程 (5.1) 运用有限差分法进行离散化后生成的网格矩阵..
因此,可取算子M满足
.
模型(3.1)的数值结果如下:
阶数残差向量范数迭代次数 328.2952e-0123 641.0045e-0117 1287.6582-01112
[1]P.Lancaster and L.Rodman.The Algebraic Riccati Equation[M].Oxford University Press:Oxford,1995.
[2]T.Penzl.LYAPACK:A MATLAB toolbox for large Lyapunov and Riccati equations,model reduction problems,and linear-quadratic optimal control problems,users’ guide (ver.1.0).2000[J].Available at: www. tu-chemnitz.de/sfb393/lyapack.
[3]H.T.Banks,K.Ito.A numerical algorithm for optimal feedback gains in high dimensional linear quadratic regulator problems [J].SIAM J.Control.Optim.,1991,29(3):499-515.
[4]J.A.Burns,K.P.Hulsing.Numerical methods for approximating functional gains in LQR boundary control problems [J].Mathematical and Computer Modelling,2001,33(1):89-100.
[5] D.Kleinman.On an Iterative Technique for Riccati Equation Computations [J].IEEE Transactions on Automat.Control.,1968, 13(1):114-115.
[6]I.G.Rosen and C.Wang.A multilevel technique for the approximate solution of operator Lyapunov and algebraic Riccati equations [J].SIAM J.Numer.Anal.,1995,32(2):514-541.
[7]P.Benner and J.Saak. A Galerkin-Newton-ADI method for solving large-scale algebraic Riccati equations[R].Technical Report SPP1253-090,Deutsche Forschungsgemeinschaft - Priority Program 1253,2010.
[8]Gajic Z,Qureshi M.Lyapunov Matrix equation in system stability and control [M].Academic Press:San Diego,1995.
[9]P.Benner,J.R.Li,T.Penzl.Numerical solution of large-scale Lyapunov equations,Riccati equations,and linear-quadratic optimal control problems [J].Numer.Linear Algebra Appl.,2008,15(9):755–777.
[10]Lin Y,V.Simoncini. Minimal residual methods for large scale Lyapunov equations[J].Appl.Numer.Math.,2013,72(2):52-71.
[11]Badía J M,Benner P,Mayo R,et al.Parallel Solution of Large-Scale and Sparse Generalized Algebraic Riccati Equations[C].International Conference on Parallel Processing.Springer-Verlag,2006:710-719.
[12]Y.Saad.Iterative methods for sparse linear systems [M].2nd ed..Society for Industrial and Applied Mathematics:Philadelphia,PA, 2003.
[13]Kemin Zhou,John C.Doyle,Keith Glover.Robust and optimal control[M].New Jersey:Prentice Hall,2007.
[14]V.Simoncini.A new iterative method for solving large-scale Lyapunov matrix equations [J].SIAM J.Sci.Comput.,2007, 29(3):1268–1288.
(责任编校:何俊华)
2017-03-20
湖南省教育厅资助科研项目(项目编号12C0688)。
周立平(1978-),男,湖南永州人,副教授,硕士,研究方向为数值代数和偏微分方程数值解。
O241.6/O151.21
A
1673-2219(2017)06-0001-04