用MATLAB解线性二次型最优控制问题答案.pptxVIP

用MATLAB解线性二次型最优控制问题答案.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1解线性二次型最优控制问题 一般情况的线性二次问题可表示如下: 设线性时变系统的方程为其中, 为 维状态向量, 为 维控制向量, 为 维输出向量。 寻找最优控制,使下面的性能指标最小其中, 是 对称半正定常数阵, 是 对称半正定阵, 是 对称正定阵。第1页/共42页第一页,共43页。 2解线性二次型最优控制问题我们用最小值原理求解上述问题,可以把上述问题归结为求解如下黎卡提(Riccati)矩阵微分方程:可以看出,上述的黎卡提矩阵微分方程求解起来非常困难,所以我们往往求出其稳态解。例如目标函数中指定终止时间可以设置成 ,这样可以保证系统状态渐近的趋近于零值,这样可以得出矩阵趋近于常值矩阵 ,且 ,这样上述黎卡提矩阵微分方程可以简化成为:这个方程称为代数黎卡提方程。代数黎卡提方程的求解非常简单,并且其求解只涉及到矩阵运算,所以非常适合使用MATLAB来求解。第2页/共42页第二页,共43页。 3解线性二次型最优控制问题方法一:求解代数黎卡提方程的算法有很多,下面介绍一种简单的迭代算法来解该方程。令 ,则可以写出下面的迭代公式如果 收敛于一个常数矩阵,即 ,则可以得出代数黎卡提方程的解为:其中第3页/共42页第三页,共43页。 4解线性二次型最优控制问题%*************MATLAB程序*************%I=eye(size(A));iA=inv(I-A);E=iA*(I+A);G=2*iA^2*B;H=R+B*iA*Q*iA*B;W=Q*iA*B;P0=zeros(size(A));i=0;第4页/共42页第四页,共43页。 5解线性二次型最优控制问题while(1),i=i+1; P=E*P0*E-(E*P0*G+W)* inv(G*P0*G+H)*(E*P0*G+W)+Q; if(norm(P-P0)eps),break; else,P0=P; endendP=2*iA*P*iA;我们把这个文件命名为mylq.m,方便我们以后调用来求解代数黎卡提方程。第5页/共42页第五页,共43页。 6解线性二次型最优控制问题方法二:在MATLAB的控制系统工具箱中提供了求解代数黎卡提方程的函数 lqr(),其调用的格式为: [K,P,E]=lqr(A,B,Q,R)式中,输入矩阵为A,B,Q,R,其中(A,B)为给定的对象状态方程模型,(Q,R)分别为加权矩阵Q和R;返回矩阵K为状态反馈矩阵,P为代数黎卡提方程的解,E为闭环系统的极点。第6页/共42页第六页,共43页。 7解线性二次型最优控制问题这里的求解是建立在MATLAB的控制系统工具箱中给出的一个基于Schur分解的黎卡提方程求解函数are()基础上的,该函数的调用格式为: X=are(M,T,V)其中, 矩阵满足下列代数黎卡提方程,are是Algebraic Riccati Equation的缩写。 对比前面给出的黎卡提方程,可以容易得出第7页/共42页第七页,共43页。 8解线性二次型最优控制问题方法三:我们也可以采用care()函数对连续时间代数黎卡提方程求解,其调用方法如下:[P,E,K,RR]=care(A,B,Q,R,zeros(size(B)),eye(size(A)))式中,输入矩阵为A,B,Q,R,其中(A,B)为给定的对象状态方程模型,(Q,R)分别为加权矩阵Q和R;返回矩阵P为代数黎卡提方程的解,E为闭环系统的极点,K为状态反馈矩阵,RR是相应的留数矩阵Res的Frobenius范数,其值为:sqrt(sum(diag(Res’*Res))) 或者用Norm(Res’, ‘fro’)计算第8页/共42页第八页,共43页。 9解线性二次型最优控制问题采用care函数的优点在于可以设置P的终值条件。例如,可以在下面的程序中设置P的终值条件为[0.2;0.2]。 [P,E,K,RR]=care(A,B,Q,R,[0.2;0.2],eye(size(A)))采用lqr()函数不能设置代数黎卡提方程的边界条件。第9页/共42页第九页,共43页。 10解线性二次型最优控制问题例 已知线性系统为目标函数确定最优控制。第10页/共42页第十页,共43页。 11解线性二次型最优控制问题解:方法一:A=[0 1;-

文档评论(0)

kuailelaifenxian + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体太仓市沙溪镇牛文库商务信息咨询服务部
IP属地上海
统一社会信用代码/组织机构代码
92320585MA1WRHUU8N

1亿VIP精品文档

相关文档