最优控制的西珥RK4方法问题更新

24 Ansichten(30天)的
背板siachouli
背板siachouli 我2020年8月12日
Kommentiert: mallela ankamma饶我2022年7月26日
大家好,
我想实现一个最优控制问题使用龙格-库塔4一个西珥模型有两个不同的类别。我的代码运行,提供了一种最优控制状态变量S, E,我和R仍然发生如果没有干预,这意味着第二部分的更新是不知何故没有实现呢?我不明白问题在哪里。我跑了几次,结果好然后突然就给我年代,E,我和R如果没有对控制模型。你能请您看一看吗? 代码如下所示
函数y = odeNEW
测试= 1;
T = 400;
deltaError = 0.001;
M = 1000;
t = linspace (0, t, M + 1);
h = T / M;
h2 = h / 2;
C = 0.001;K = 1000;B = 1;
g = 0.0625;bcc = 0.25;bca = 0.11;bac = 0.11;baa = 0.34;
Sc = 0 (M + 1);
Sa = 0 (M + 1);
Ic = 0 (M + 1);
Ia = 0 (M + 1);
Rc = 0 (M + 1);
Ra = 0 (M + 1);
%初始化
Sc (1) = 0.199;Sa (1) = 0.699;集成电路(1)= 0.001;Ia (1) = 0.001;类风湿性关节炎(1)= 0;Rc (1) = 0;
u = 0 (M + 1);
LSc = 0 (M + 1);LSa = 0 (M + 1);地方政府投资公司= 0 (M + 1);LIa = 0 (M + 1);
%最后一次
LSc (M + 1) = 0;文理学院(M + 1) = 0;地方政府投资公司(M + 1) = 0;投资局(M + 1) = 0;
J = 0 (M + 1);
而(测试< 0)
oldu = u;
oldSc = Sc;
oldSa = Sa);
oldIc = Ic;
oldIa = Ia;
oldRc = Rc;
oldRa =类风湿性关节炎;
oldLSa =文理学院;
oldLSc = LSc;
oldLIc =地方政府投资公司;
oldLIa = LIa;
i = 1: M
m11公路= - u (i) * * * * Sc (i) *集成电路(i) bca * u (i) * Sc(我)* Ia(我);
m12 u (i) = * * * * Sc (i) *集成电路(我)+ bca * u (i) * Sc (i) * Ia (i) - g *集成电路(我);
m13 = g *集成电路(我);
m14 u (i) = bac * * Sa (i) *集成电路(i) baa * u (i) * Sa(我)* Ia(我);
m15 u (i) = bac * * Sa (i) *集成电路(i) + baa * Sa (i) * u (i) * Ia (i) - g * Ia(我);
m16 = g * Ia(我);
%
辅助= 0.5 * (u(我)+ u (i + 1));
m21 =辅助* * * * (Sc(我)+ h2 * m11公路)* (Ic(我)+ h2 * m12) bca *辅助* (Sc(我)+ h2 * m11公路)* (Ia(我)+ h2 * m15);
锰=辅助* * * * (Sc(我)+ h2 * m11公路)* (Ic(我)+ h2 * m12) + bca *辅助* (Sc(我)+ h2 * m11公路)* (Ia(我)+ h2 * m15) - g * (Ic(我)+ h2 * m12);
m23 = g * (Ic(我)+ h2 * m12);
bac m24 =辅助* * (Sa(我)+ h2 * m14) * (Ic(我)+ h2 * m12) baa *辅助* (Sa(我)+ h2 * m14) * (Ia(我)+ h2 * m15);
m25公路= bac *辅助* (Sa(我)+ h2 * m14) * (Ic(我)+ h2 * m12) + baa *辅助* (Sa(我)+ h2 * m14) * (Ia(我)+ h2 * m15) - g * (Ia(我)+ h2 * m15);
m26 = g * (Ia(我)+ h2 * m15);
%
m31 =辅助* * * * (Sc(我)+ h2 * m21) * (Ic(我)+ h2 *锰)bca *辅助* (Sc(我)+ h2 * m21) * (Ia(我)+ h2 * m25公路);
两个同伴m32 =辅助* * * * (Sc(我)+ h2 * m21) * (Ic(我)+ h2 *锰)+ bca *辅助* (Sc(我)+ h2 * m21) * (Ia(我)+ h2 * m25公路)- g * (Ic(我)+ h2 *锰);
m33 = g * (Ic(我)+ h2 *锰);
bac m34 =辅助* * (Sa(我)+ h2 * m24) * (Ic(我)+ h2 *锰)baa *辅助* (Sa(我)+ h2 * m24) * (Ia(我)+ h2 * m25公路);
国防军m35 =投入正式bac *辅助* (Sa(我)+ h2 * m24) * (Ic(我)+ h2 *锰)+ baa *辅助* (Sa(我)+ h2 * m24) * (Ia(我)+ h2 * m25公路)- g * (Ia(我)+ h2 * m25公路);
m36 = g * (Ia(我)+ h2 * m25公路);
%
辅助= u (i + 1);
m41 =辅助* * * * (Sc(我)+ h * m31) * (Ic(我)+ h *两个同伴m32) bca *辅助* (Sc(我)+ h * m31) * (Ia(我)+ h *国防军m35)投入正式;
m42 =辅助* * * * (Sc(我)+ h * m31) * (Ic(我)+ h *两个同伴m32) + bca *辅助* (Sc(我)+ h * m31) * (Ia(我)+ h *国防军m35)投入正式- g * (Ic(我)+ h *两个同伴m32);
m43 = g * (Ic(我)+ h *两个同伴m32);
m44 =辅助* bac * (Sa(我)+ h * m34) * (Ic(我)+ h *两个同伴m32) baa *辅助* (Sa(我)+ h * m34) * (Ia(我)+ h *国防军m35)投入正式;
m45 = bac *辅助* (Sa(我)+ h * m34) * (Ic(我)+ h *两个同伴m32) + baa *辅助* (Sa(我)+ h * m34) * (Ia(我)+ h *国防军m35)投入正式- g * (Ia(我)+ h *国防军m35)投入正式;
m46 = g * (Ia(我)+ h *国防军m35)投入正式;
%
Sc (i + 1) = Sc(我)+ (h / 6) * (m11公路+ 2 * m21 + 2 * m31 + m41);
集成电路(i + 1) = Ic(我)+ (h / 6) * (m12 + 2 *锰+ 2 *两个同伴m32 + m42);
Rc (i + 1) = Rc(我)+ (h / 6) * (m13 + 2 * m23 + 2 * m33 + m43);
Sa (i + 1) = Sa(我)+ (h / 6) * (m14 + 2 * m24 + 2 * m34 + m44);
Ia (i + 1) = Ia(我)+ (h / 6) * (m15 + 2 * m25公路+ 2 *国防军m35 + m45投入正式);
风湿性关节炎风湿性关节炎(i + 1) = (1) + (h / 6) * (m16 + 2 * m26 + 2 * m36 + m46);
结束
i = 1: M %落后
j = M + 2 i;
n11 = LSc (j) * (bcc * u (j) *集成电路(j) + bca * u (j) * Ia (j))地方政府投资公司(j) * (bcc * u (j) *集成电路(j) + bca * u (j) * Ia (j));
auxx = B * K * exp (K * (C - (Ic (j) + (Ia (j)))));
n12 = auxx + LSc (j) * * * * u (j) * Sc (j)——地方政府投资公司(j) * (bcc * u (j) * Sc (j) + bca * u (j) * Sc (j) - g) + bac LSa (j) * * Sa (j) * u (j) + LIa (j) * (bac * Sa (j) * u (j));
n13 = LSa (j) * (bac * u (j) *集成电路(j) + baa * u (j) * Ia (j)) lia (j) * (bac * u (j) *集成电路(j) + baa * u (j) * Ia (j) - g);
n14 = auxx + LSc (j) * bca * u (j) * Sc (j)地方政府投资公司(j) * bca * u (j) * Sc (j) + LSa (j) * baa * u (j) * Sa (j)——LIa (j) * (baa * u (j) * Sa (j) - g);
%
n21 = (LSc (j) h2 * n11) * (bcc * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ic (j) + Ic (j - 1))) + (bca * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ia (j) + Ia (j - 1)))——(LIc (j) h2 * n12) * * * * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ic (j) + Ic (j - 1)) + bca * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ia (j) + Ia (j - 1));
auxx = B * K * exp (K * (C - (Ic (j) + Ic (j - 1) + (Ia (j) + Ia (j - 1)))));
n22 = auxx + (LSc (j) h2 * n11) * * * * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Sc (j) + Sc (j - 1))——(LIc (j) h2 * n12) * * * * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Sc (j) + Sc (j - 1)) + bca * 0.5 * (u (j) + u (j - 1)) * (0.5 * (Sc (j) + Sc (j - 1)) - g) + (LSa (j) h2 * n13) * bac * 0.5 * (Sa (j) + Sa (j - 1)) * 0.5 * (u (j) + u (j - 1)) + (LIa (j) h2 * n14) * (bac * 0.5 * (Sc (j) + Sc (j - 1)));
n23 = (LSa (j) h2 * n13) * (bac * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ic (j) + Ic (j - 1)) + baa * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ia (j) + Ia (j - 1)))——(LIa (j) h2 * n14) * (bac * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ic (j) + Ic (j - 1)) - g);
n24 = auxx + (LSc (j) h2 * n11) * bca * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Sc (j) Sc (j - 1))——(LIc (j) h2 * n12) * bca * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Sc (j) Sc (j - 1)) + (LSa (j) h2 * n13) * baa * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Sa (j) + Sa (j - 1))——(LIa (j) h2 * n14) * baa * 0.5 * (u (j) + u (j - 1)) * (0.5 * (Sa (j) + Sa (j - 1)) - g);
%
n31 = (LSc (j) h2 * n21) * * * * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ic (j) + Ic (j - 1)) + bca * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ia (j) + Ia (j - 1))——(LIc (j) h2 * n22) * * * * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ic (j) + Ic (j - 1)) + bca * 0.5 * (u (j) - u (j - 1)) * 0.5 * (Ia (j) + Ia (j - 1));
auxx = B * K * exp (K * (C - (0.5 * (Ic (j) + Ic (j - 1)) + 0.5 * ((Ia (j) + Ia (j - 1))))));
n32 = auxx + (LSc (j) h2 * n21) * * * * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Sc (j) + Sc (j - 1))——(LIc (j) h2 * n22) * (bcc * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Sc (j) + Sc (j - 1)) + bca * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Sc (j) + Sc (j - 1)) - g) + (LSa (j) h2 * n23) * bac * 0.5 * (Sa (j) + Sa (j - 1)) + (LIa (j) h2 * n24) * (bac * 0.5 * (Sc (j) + Sc (j - 1)));
n33 = (LSa (j) h2 * n23) * (bac * 0.5 * (u (j) + u (j - 1)) * (0.5 * (Ic (j) + Ic (j - 1)) + baa * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ia (j) + Ia (j - 1))))——(LIa (j) h2 * n24) * (bac * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Ic (j) + Ic (j - 1)) - g);
n34 = auxx + LSc (j) * bca * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Sc (j) + Sc (j - 1))——(LIc (j) h2 * n22) * bca * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Sc (j) Sc (j - 1)) + (LSa (j) h2 * n23) * baa * 0.5 * (u (j) + u (j - 1)) * 0.5 * (Sa (j) + Sa (j - 1))——(LIa (j) h2 * n24) * baa * 0.5 * (u (j) - u (j - 1)) * (0.5 * (Sa (j) + Sa (j - 1)) - g);
%
n41 = (LSc (j) - h * n31) * (bcc * u (j - 1) *集成电路(j - 1) + bca * u (j - 1) * Ia (j - 1))——(LIc (j) - h * n32) u (j - 1) * * * * *集成电路(j - 1) + bca * u (j - 1) * Ia (j - 1);
auxx = B * K * exp (K * (C - (Ic (j - 1) + Ia (j - 1))));
n42 = auxx + (LSc (j) - h * n31) u (j - 1) * * * * * Sc (j - 1) - (LIc (j) - h * n32) * (bcc * u (j - 1) * Sc (j - 1) + bca * u (j - 1) * Sc (j - 1)) + (LSa (j) - h * n33) * bac * Sa (j - 1) + (LIa (j) - h * n34) * (bac * Sc (j - 1));
n43 = (LSa (j) - h * n33) * (bac * u (j - 1) *集成电路(j - 1) + baa * u (j - 1) * (Ia (j - 1) - g));
n44 = auxx + (LSc (j) - h * n31) * bca * u (j - 1) * Sc (j - 1) - (LIc (j) - h * n32) * bca * u (j - 1) * Sc (j - 1) + (LSa (j) - h * n33) * baa * u (j - 1) * Sa (j - 1) - (LIa (j) - h * n34) * (baa * u (j - 1) * Sa (j - 1) - g);
%
LSc (j - 1) = LSc (j)——(h / 6) * (n11 + 2 * n21 + 2 * n31 + n41);
地方政府投资公司(j - 1) =地方政府投资公司(j)——(h / 6) * (n12 + 2 * n22 + 2 * n32 + n42);
文理学院(j - 1) = LSa (j)——(h / 6) * (n13 + 2 * n23 + 2 * n33 + n43);
投资局(j - 1) = LIa (j)——(h / 6) * (n14 + 2 * n24 + 2 * n34 + n44);
结束
%的新控制向量
因为我= 1:M + 1
沃克斯(i) = 0.5 * (bcc * LSc (i) * Sc (i) *集成电路(我)+ bca * Sc (i) * Ia (i)地方政府投资公司(我)* (bcc * Sc (i) *集成电路(我)+ bca * Sc (i) * Ia(我))+ LSa (i) * (bac * Sa (i) *集成电路(我)+ baa * Sc (i) * Ia(我)lia(我)* (bac * Sa (i) *集成电路(i) + baa * Sa (i) * Ia (i)));
auxU = min([马克斯([0沃克斯(i))) 0.9]);
你(我)= 0.5 * (auxU + oldu(我));
结束
b = 10 ^ 2;
J = Ic (M + 1) + Rc (M + 1) + Ia (M + 1) + Ra (M + 1) -trapz (t, b * (u。^ 2));
%的绝对误差收敛
temp1 = deltaError *总和(abs (Sc)和(abs (oldSc-Sc));
temp2 = deltaError *总和(abs (Sa)和(abs (oldSa-Sa));
temp3 = deltaError *总和(abs (Ic)和(abs (oldIc-Ic)));
temp4 = deltaError *总和(abs (Ia))和(abs (oldIa-Ia));
temp5 = deltaError *总和(abs (u)和(abs (oldu-u));
temp6 = deltaError *总和(abs (LSc))和(abs (oldLSc-LSc));
temp7 = deltaError *总和(abs (LSa))和(abs (oldLSa-LSa));
temp8 = deltaError *总和(abs (LIc))和(abs (oldLIc-LIc));
% temp11 = deltaError *总和(abs(领头)和(abs (oldLRc-LRc));
% temp12 = deltaError *总和(abs (LRa))和(abs (oldLRa-LRa));
temp9 = deltaError *总和(abs (Rc))和(abs (oldRc-Rc));
temp10 = deltaError *总和(abs (Ra)和(abs (oldRa-Ra));
测试= min (temp1, min (temp2 min (temp3、最小值(temp4、最小值(temp5、最小值(temp6、最小值(temp7、最小值(temp8、最小值(temp9 min (temp10))))))))));
情节(t, u)
结束
4 Kommentare
mallela ankamma饶
mallela ankamma饶 我2022年7月26日
晚上好先生
我也做SEIAQHR covid-19最优控制理论模型
我不如何绘制图表的感染,感染控制,没有像jpg
如果你能给这些图相关的代码,我将非常感激你。
如果可能的话请发送任何参考代码图邮件id ushanand.mallela@gmail.com
感谢你

Melden您西奇,嗯祖茂堂kommentieren。

Antworten (0)

Kategorien

找到更多的在生物和健康科学帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的