水泥回转窑

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
求解二次规划问题函数,关键是构造H矩阵和f矩阵
3线性规划模型
3.1构造H矩阵和f矩阵
假设有N个训练样本,则题中模型输出与实测输出之差的平方和可表示为待定系数a,b1,b2,b3的函数,记做:
式中,Y(k)为实测输出。
化简上式可得:
=
继续化简得:
所以有:
4输出结果
使用1600组数据作为训练集时参数计算如下:
f1=zeros(4,1);
max=990;
for k=2:max
H1=2*[y(k-1)*y(k-1),u1(k-1)*y(k-1),u2(k-1)*y(k-1),u3(k-1)*y(k-1);
u1(k-1)*y(k-1),u1(k-1)*u1(k-1),u2(k-1)*u1(k-1),u3(k-1)*u1(k-1);

按照上述参数计算,模型输出与实测输出差的平方的均值为:
5程序代码
y=data(:,4);%data是dataset.xlsx的.mat格式文件
u1=data(:,2);
u2=data(:,3);
u3=data(:,1);
H=zeros(4,4);
H1=zeros(4,4);
f=zeros(4,1);
u2(k-1)*y(k-1),u1(k-1)*u2(k-1),u2(k-1)*u2(k-1),u3(k-1)*u2(k-1);
u3(k-1)*y(k-1),u1(k-1)*u3(k-1),u2(k-1)*u3(k-1),u3(k-1)*u3(k-1);];
H=H+H1;
end
for k=2:max
f1=-2*y(k)*[y(k-1),u1(k-1),u2(k-1),u3(k-1)]';
2数据描述
2.1问题简化描述
回转窑系统的输入输出动态方程如下:
(1)
其中
y(t)为t时刻的窑电流(输出量);
u1(t)为t时刻的入窑喂料量(输入量);
u2(t)为t时刻的窑头喂煤量(输入量);
u3(t)为t时刻的窑转速(输入量);
a,b1,b2,b3为待定系数。
2.2 MATLABquadprog函数
运筹学课程设计实验报告(三)
1问题定义
水泥生产过程中的一个重要工序是把生料烧制成熟料,这一工序是在回转窑中完成的。回转窑系统是一个非线性系统,但是在其处于稳态时可以用一个线性系统来近似。这一系统的输入量(控制量)主要有入窑喂料量(指生料的输入量)、窑头喂煤量、窑转速;输出量主要是窑电流,窑电流可以综合反映窑内生产状况。以模型输出(即式(1)的输出)和实测输出(即附表中窑电流数据)之差的平方和为目标函数,建立回转窑系统辨识问题(即根据实测数据辨识出式(1)中的系数a,b1,b2,b3的值)的非线性规划数学模型,并用Matlab中的quadprog函数编程求解,从而获得式(1)中的系数a,b1,b2,b3的值。用后若干条数据作为检验数据集,验证所获得的模型的准确性。
f=f+f1;
end
[x,fval,exitflag,oபைடு நூலகம்tput,lambda] = quadprog(H,f)
x=x'
for i=max+1:2000
y1=x*[y(i-1),u1(i-1),u2(i-1),u3(i-1)]';
sum = (y(i)-y1)*(y(i)-y1);
end
ave=sum/(2000-max)
相关文档
最新文档