刘畔畔,桑海风,赵 盈,王 尧
(1.北华大学数学与统计学院,吉林 吉林 132013;2.北华大学机械工程学院,吉林 吉林 132021)
在模型降价和控制论[1-2]等领域中,许多问题都可以归结为求解Sylvester矩阵方程AX+XB=C的问题.本文研究计算此矩阵方程近似对称解X的可信验证方法,其中A,B和C均为n×n阶的实矩阵.为了验证Sylvester矩阵方程的解,将AX+XB=C改写成Px=c的形式,其中P=In⊗A+BT⊗In,x=vec(X),c=vec(C),⊗表示Kronecker积,vec表示按列拉直算子.
本文将在Sylvester矩阵方程的系数矩阵不可对角化时,利用可信验证算法获得该方程的近似对称解及其误差界,得到一个可信验证算法,使其精确解存在于近似解的误差界内.
求解此类问题,一般可以考虑利用verifyless函数来验证线性方程Px=c的解,得到可信区间向量x,再将其还原为n×n阶矩阵,最终得到方程AX+XB=C的可信区间矩阵X.但是,此方法计算量非常大.为了解决这个问题,本文将提出一种算法,该算法可以降低验证的时间,提高计算效率.
假设Sylvester方程有唯一解,且矩阵A和B不可对角化,对A和B作如下分解[3]:
A=V1D1W1,其中V1,D1,W1∈n×n,V1W1=I,
B=V2D2W2,其中V2,D2,W2∈n×n,V2W2=I,
其中D1和D2都是块对角的矩阵并且每个对角块都是上三角的或下三角的,这个过程可以通过标准正交化和酉三角化来实现.为了表达方便,假设D1的每个对角块都是上三角的,D2的每个对角块都是下三角的,那么
P=In⊗A+BT⊗In=
为了计算方便,令
则可以把线性方程组Px=c改写为Qy=f.
每一个块又都可以表示为块上三角形,以第一块为例
那么如果D1和D2中所有的块都是2×2的,则Δ的稀疏结构如下:
引理1[4]设A,B,C是可乘的区间矩阵,那么
引理2[5]设A,T∈n×n,b∈n,x∈为线性系统Ax=b的近似解.若区间判定条件成立,则存在矩阵使得并且矩阵A,T都是非奇异的,其中int(x)表示x的内部.
引理3[6]给定区间矩阵A∈n×n和区间向量b∈n,若函数verifylss运行成功,则该函数计算得到的区间向量x⊂n满足Σ(A,b)={x∈n:Ax=b,A∈A,b∈b}∈x.
由引理1得
vec(M)⊇{(In⊗(D1-S1))z:z∈z,S1∈S1},
vec(N)⊇{((D2-S2)T⊗Im)z:z∈z,S2∈S2}.
因为
{(Δ-Q)z:z∈z}⊆vec(M)+vec(N),
进而{Δ-1(Δ-Q)z:z∈z}={(I-Δ-1Q)z:z∈z}⊆Δ-1(vec(M)+vec(N)).又由
可用Matlab中INTLAB软件包的verifyless函数来实现线性方程组的可信验证.定义如下符号:
M(X)=ATAX+ATXB+AXBT+XBBT+XATA+BTXA+BXAT+BBTX,
G=ATC+CBT+CTA+BCT,P(X)=G-M(X),Pk=P(Xk).
利用文献[7]中对称解求解的方法和引理3,设计可信验证算法如下:
算法1
输入:n阶矩阵A,B,C,X0, 随机对称矩阵X1,最大迭代次数N和容差ε;
3)计算
转2).
4)对A和B进行如下分解:A=V1D1W1,B=V2D2W2.
5)由verifyless函数计算区间矩阵W1和W2,使得W1∈W1,V2∈W2.
7)计算区间矩阵
S1=(W1A)W1,S2=V2(BV2),u=Δ-1vec(T),U=vec-1(u).
8.1)如果iter≤15, 则执行下面步骤,否则“失败”.
8.3)计算M=(D1-S1)Z,N=Z(D2-S2),u=Δ-1vec(T+M+N),U=vec-1(u).
基于Windows 7操作系统,利用MATLAB R2011a(INTLAB V6)软件进行下面的数值实验.对下面的矩阵方程执行可信验证算法,可以计算得到线性矩阵方程的近似对称解和对应的可信误差界.
例1给定矩阵
考虑Sylvester矩阵方程AX+XB=C对称解的可信区间.
输入:X1=0,N=1 000,ε=10-5.
输出:通过115次数值迭代得到近似对称解:
计算区间矩阵
矩阵方程AX+XB=C的唯一精确解
存在于如下可信区间解中: