24小时热门版块排行榜    

查看: 1014  |  回复: 0

jjliu2012

新虫 (小有名气)

[求助] 【求助 一个关于最优控制的matlab问题(新手,请大家多多帮助)

Sample Text
最速下降法求最优控制u的matlab算法,各位大侠能否把这个主循环补充一下,不知道怎么回事,运行不了 。是附件里文献的例子2,在第7页,多谢
%%%%%%%%%%%%%%%%%%%%%%
for i = 1:max_iteration
% 1) start with assumed control u and move forward
[Tx,X] = ode45(@(t,x) stateEq(t,x,u,Tu), [t0 tf], ...
initx, options);
% 2) Move backward to get the trajectory of costates
x1 = X(:,1); x2 = X(:,2);
[Tp,P] = ode45(@(t,p) costateEq(t,p,u,Tu,x1,x2,Tx), ...
[tf t0], initp, options);
p1 = P(:,1);
% Important: costate is stored in reverse order. The dimension of
% costates may also different from dimension of states
% Use interploate to make sure x and p is aligned along the time axis
p1 = interp1(Tp,p1,Tx);
% Calculate deltaH with x1(t), x2(t), p1(t), p2(t)
dH = pH(x1,p1,Tx,u,Tu);
H_Norm = dH'*dH;

% Calculate the cost function
J(i,1) = tf*(((x1')*x1 + (x2')*x2)/length(Tx) + ...
0.1*(u*u')/length(Tu));
% if dH/du < epslon, exit
if H_Norm < eps
% Display final cost
J(i,1)
break;
else
% adjust control for next iteration
u_old = u;
u = AdjControl(dH,Tx,u_old,Tu,step);
end;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% State equations
function dx = stateEq(t,x,u,Tu)
dx = zeros(2,1);
u = interp1(Tu,u,t); % Interploate the control at time t
dx(1) = -2*(x(1) + 0.25) + (x(2) + 0.5)*exp(25*x(1)/(x(1)+2)) ...
- (x(1) + 0.25).*u;
dx(2) = 0.5 - x(2) -(x(2) + 0.5)*exp(25*x(1)/(x(1)+2));
%%%%%%%%%%%%%%%%%%%%%%%
% Costate equations
function dp = costateEq(t,p,u,Tu,x1,x2,xt)
dp = zeros(2,1);
x1 = interp1(xt,x1,t); % Interploate the state varialbes
x2 = interp1(xt,x2,t);
u = interp1(Tu,u,t); % Interploate the control
dp(1) = p(1).*(u + exp((25*x1)/(x1 + 2)).*((25*x1)/(x1 + 2)^2 - ...
25/(x1 + 2))*(x2 + 1/2) + 2) - ...
2*x1 - p(2).*exp((25*x1)/(x1 + 2))*((25*x1)/(x1 + 2)^2 - ...
25/(x1 + 2))*(x2 + 1/2);
dp(2) = p(2).*(exp((25*x1)/(x1 + 2)) + 1) - ...
p(1).*exp((25*x1)/(x1 + 2)) - 2*x2;
%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Partial derivative of H with respect to u
function dH = pH(x1,p1,tx,u,Tu)
% interploate the control
u = interp1(Tu,u,tx);
R = 0.1;
dH = 2*R*u - p1.*(x1 + 0.25);
%%%%%%%%%%%%%%%%%%%%%%%%%
% Adjust the control
function u_new = AdjControl(pH,tx,u,tu,step)
% interploate dH/du
pH = interp1(tx,pH,tu);
u_new = u - step*pH;
%%%%%%%%%%%%%%%%
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : SolvingoptimalcontrolproblemswithMATLAB.pdf
  • 2013-09-01 16:16:28, 1.95 M

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

智能机器人

Robot (super robot)

我们都爱小木虫

找到一些相关的精华帖子,希望有用哦~

科研从小木虫开始,人人为我,我为人人
相关版块跳转 我要订阅楼主 jjliu2012 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 C79jjtjAKjEn 2026-09-15 3/150 2026-09-18 03:40 by cITaGg3p5edr
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 5BDX0d0WFp7t 2026-09-15 3/150 2026-09-18 03:16 by cITaGg3p5edr
[硕博家园] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 mibUvS8DDCwf 2026-09-15 3/150 2026-09-18 03:04 by cITaGg3p5edr
[找工作] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 vZfe6xYu34yj 2026-09-15 3/150 2026-09-18 02:40 by cITaGg3p5edr
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 vZfe6xYu34yj 2026-09-14 3/150 2026-09-18 02:06 by cITaGg3p5edr
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +6 s3fFTmArrBt6 2026-09-13 6/300 2026-09-17 23:28 by cuPZTDXS3VOd
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 5BDX0d0WFp7t 2026-09-15 4/200 2026-09-17 16:29 by 0ngsZVSCTS7z
[考博] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +5 40ms4Wlo4umh 2026-09-14 5/250 2026-09-17 14:05 by ObVzqQQh1rrE
[找工作] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 s3fFTmArrBt6 2026-09-14 5/250 2026-09-17 12:39 by ObVzqQQh1rrE
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 6F5UbRU2I5hL 2026-09-14 3/150 2026-09-17 03:16 by Tql5LQhh5rLK
[考研] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 6F5UbRU2I5hL 2026-09-14 5/250 2026-09-17 03:14 by Tql5LQhh5rLK
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +6 6F5UbRU2I5hL 2026-09-14 6/300 2026-09-17 03:04 by Tql5LQhh5rLK
[公派出国] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +6 s3fFTmArrBt6 2026-09-14 6/300 2026-09-17 02:38 by Tql5LQhh5rLK
[公派出国] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 s3fFTmArrBt6 2026-09-13 7/350 2026-09-17 02:14 by Tql5LQhh5rLK
[考研] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +7 3n8v2C8RimXI 2026-09-13 8/400 2026-09-17 01:38 by Tql5LQhh5rLK
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +7 QUjhNVAcOSff 2026-09-13 7/350 2026-09-16 14:36 by i3KBRD19ERkG
[考博] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +5 3n8v2C8RimXI 2026-09-13 5/250 2026-09-16 02:50 by DgNGHc3h5tPl
[考博] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +6 s3fFTmArrBt6 2026-09-14 7/350 2026-09-15 16:47 by CgyNCDVNhGVg
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 s3fFTmArrBt6 2026-09-14 5/250 2026-09-15 16:35 by CgyNCDVNhGVg
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +4 6F5UbRU2I5hL 2026-09-14 4/200 2026-09-15 08:02 by C79jjtjAKjEn
信息提示
请填处理意见