黎卡提方程求解

黎卡提方程是求解最优二次型时用到的一个矩阵方程,形如

PA+A^{T}P+Q-PBR^{-1}B^{T}P=0,其中P是需要求出的矩阵。

黎卡提方程的数值迭代求解(Matlab下实现)

 for i=1:150    
     Xn=A'*X*A-A'*X*B*inv(R+B'*X*B)*B'*X*A+Q;
     Xnn=abs(X(:));
     if(max(Xnn)<eps)
         break;
     end
     X=Xn;
 end
 p=Xn;

k=inv(R)*B'*p;

经验证,使用该方法求解出的矩阵p与matlab中的dare()函数求解出的矩阵p一致。(原理不知道,先凑合着用吧)

猜你喜欢

转载自blog.csdn.net/buaazyp/article/details/83175947