[发明专利]遗传算法优化的批次过程的线性二次容错控制方法有效

专利信息
申请号: 201410281432.4 申请日: 2014-06-20
公开(公告)号: CN104156767B 公开(公告)日: 2017-06-06
发明(设计)人: 张日东;李海生 申请(专利权)人: 杭州电子科技大学
主分类号: G06N3/12 分类号: G06N3/12;G05B19/418;G06Q50/04
代理公司: 杭州君度专利代理事务所(特殊普通合伙)33240 代理人: 杜军
地址: 310018 浙*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 遗传 算法 优化 批次 过程 线性 二次 容错 控制 方法
【权利要求书】:

1.遗传算法优化的批次过程的线性二次容错控制方法,其特征在于该方法的具体步骤是:

步骤(1).建立被控对象的扩展状态空间模型,具体是:

a.利用实时数据驱动的方法建立局部预测模型:建立批次过程的实时运行数据库,通过数据采集装置采集实时过程运行数据,将采集的实时过程运行数据作为数据驱动的样本集合其中,表示第i组工艺参数的输入值,y(i)表示第i组工艺参数的输出值,N表示采样总数;以该对象的实时过程运行数据集合为基础建立基于最小二乘算法的离散差分方程形式的局部受控自回归滑动平均模型:

其中,yL(k)表示k时刻局部预测模型的工艺参数的输出值,表示通过辨识得到的模型参数的集合,表示局部预测模型的工艺参数的过去时刻的输入和输出数据的集合,u(k-d-1)表示k-d-1时刻工艺参数对应的控制变量,d+1为实际过程的时滞,Τ为矩阵的转置符号;

采用的辨识手段为:

其中,和P为辨识中的两个矩阵,为遗忘因子,为单位矩阵;

b.利用a步骤中得到的系数,建立批次过程的差分方程模型,其形式为:

Δy(k)+HΔy(k-1)=FΔu(k-d-1)

其中,Δ是差分算子,F,H为a步骤中通过辩识得到的参数,d为时滞项;

c.根据b步骤中的差分方程,建立批次过程的状态空间模型,形式如下:

<mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mi>&Delta;</mi><mi>x</mi><mrow><mo>(</mo><mi>k</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>A</mi><mi>m</mi></msub><mi>&Delta;</mi><mi>x</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>B</mi><mi>m</mi></msub><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mi>&Delta;</mi><mi>y</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>C</mi><mi>m</mi></msub><mi>&Delta;</mi><mi>x</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced>

其中,

<mrow><mi>&Delta;</mi><mi>x</mi><mrow><mo>(</mo><mi>k</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><mfenced open = "(" close = ")"><mtable><mtr><mtd><mrow><mi>&Delta;</mi><mi>y</mi><mrow><mo>(</mo><mi>k</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mrow><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>-</mo><mi>d</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced><mo>,</mo><mi>&Delta;</mi><mi>x</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><mfenced open = "(" close = ")"><mtable><mtr><mtd><mrow><mi>&Delta;</mi><mi>y</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mrow><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>-</mo><mi>d</mi><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced></mrow>

Cm=(1 0 0 … 0)

其中,Am为(d+1)×(d+1)阶矩阵,Bm为(d+1)×1阶矩阵,Cm为1×(d+1)阶矩阵;

d.将c步骤中得到的状态空间模型转换为包含状态变量和输出跟踪误差的扩展状态空间模型,形式如下:

z(k+1)=Az(k)+BΔu(k)=Az(k)+Bu(k)-Bu(k-1)

式中,

<mrow><mi>z</mi><mrow><mo>(</mo><mi>k</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mi>&Delta;</mi><mi>x</mi><mo>(</mo><mi>k</mi><mo>+</mo><mn>1</mn><mo>)</mo></mtd></mtr><mtr><mtd><mi>e</mi><mo>(</mo><mi>k</mi><mo>+</mo><mn>1</mn><mo>)</mo></mtd></mtr></mtable></mfenced><mo>,</mo><mi>z</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mi>&Delta;</mi><mi>x</mi><mo>(</mo><mi>k</mi><mo>)</mo></mtd></mtr><mtr><mtd><mi>e</mi><mo>(</mo><mi>k</mi><mo>)</mo></mtd></mtr></mtable></mfenced></mrow>

<mrow><mi>A</mi><mo>=</mo><mfenced open = "(" close = ")"><mtable><mtr><mtd><msub><mi>A</mi><mi>m</mi></msub></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mrow><msub><mi>C</mi><mi>m</mi></msub><msub><mi>A</mi><mi>m</mi></msub></mrow></mtd><mtd><mn>1</mn></mtd></mtr></mtable></mfenced><mo>,</mo><mi>B</mi><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><msub><mi>B</mi><mi>m</mi></msub></mtd></mtr><mtr><mtd><mrow><msub><mi>C</mi><mi>m</mi></msub><msub><mi>B</mi><mi>m</mi></msub></mrow></mtd></mtr></mtable></mfenced></mrow>

e(k)=r(k)-y(k)

其中,r(k)为k时刻的理想输出值,e(k)为k时刻理想输出值与实际输出值之间的差值;

步骤(2).利用遗传算法确定目标函数中的加权矩阵Q,具体是:

a.选取批次过程的目标函数J,形式如下:

<mrow><mi>J</mi><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><msub><mi>k</mi><mn>0</mn></msub></mrow><mrow><msub><mi>k</mi><mi>f</mi></msub><mo>-</mo><mn>1</mn></mrow></munderover><mo>&lsqb;</mo><mi>z</mi><msup><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mi>T</mi></msup><mi>Q</mi><mi>z</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>+</mo><mi>&Delta;</mi><mi>u</mi><msup><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mi>T</mi></msup><mi>R</mi><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>&rsqb;</mo><mo>+</mo><mi>z</mi><msup><mrow><mo>(</mo><msub><mi>k</mi><mi>f</mi></msub><mo>)</mo></mrow><mi>T</mi></msup><msub><mi>Q</mi><mi>f</mi></msub><mi>z</mi><mrow><mo>(</mo><msub><mi>k</mi><mi>f</mi></msub><mo>)</mo></mrow></mrow>

Q=Qf=diag{qjy1,qjy2,…,qjyn,qju1,…,qjum-1,qje}

其中,Q>0,R>0,Qf>0分别过程状态的加权矩阵、输入加权矩阵和终端加权矩阵,[k0,kf]为优化时域;qjy1,qjy2,…,qjum-1为过程状态的权重系数,qje为输出跟踪误差的权重系数并且取qje=1;

b.对a步骤中Q矩阵的每个元素进行二进制编码,每一个qjy1,qjy2,…,qjyn,qju1,…,qjum-1被重新定义,定义方法如下:

qji=max(qji)×b/210(i=y1,y2,…,um-1)

其中,max(qji)表示取qji中的最大值,b表示当前qji的值;对Q中的元素编码完成后,将所有变量的二进制编码整合成一个二进制字符串,并将每一个二进制字符串看作一个个体;

c.选取遗传算法的适应度函数,并计算每个个体的适应度值,适应度函数形式如下:

f=1/[c+ο(t)+tr(t)]

其中,o(t)表示第t代的超调量,tr(t)表示第t代的上升时间,c是一个常数;当适应度函数值大于fz时,遗传算法被终止;

d.选择过程是根据自然界的优胜劣汰来进行的,采用轮转法来计算个体cl被选择的概率:

<mrow><mi>p</mi><mrow><mo>(</mo><msub><mi>c</mi><mi>l</mi></msub><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><mi>f</mi><mrow><mo>(</mo><msub><mi>c</mi><mi>l</mi></msub><mo>)</mo></mrow></mrow><mrow><munderover><mo>&Sigma;</mo><mrow><mi>l</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><mi>f</mi><mrow><mo>(</mo><msub><mi>c</mi><mi>l</mi></msub><mo>)</mo></mrow></mrow></mfrac></mrow>

其中,f(cl)是个体cl的适应度值,N是样本总数;

e.对当前的所有个体进行交叉操作,产生下一代个体;

f.按照c步骤中的方法计算每一个下一代个体的适应度值,并判断是否满足c步骤中的终止条件,如果满足,该个体就是要找的Q的最优解,进行下一步;如果不满足,则执行c到f步骤,直到找到满足终止条件的个体;

g.将满足终止条件的个体按照b步骤中的方法进行解码,解码后得到的矩阵即为最优的Q矩阵;

步骤(3).设计被控对象的遗传算法优化的批次过程的线性二次容错控制器,具体方法是:

a.选取批次过程的目标函数,形式如下:

<mrow><mi>J</mi><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><msub><mi>k</mi><mn>0</mn></msub></mrow><mrow><msub><mi>k</mi><mi>f</mi></msub><mo>-</mo><mn>1</mn></mrow></munderover><mo>&lsqb;</mo><mi>z</mi><msup><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mi>T</mi></msup><mi>Q</mi><mi>z</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>+</mo><mi>&Delta;</mi><mi>u</mi><msup><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mi>T</mi></msup><mi>R</mi><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>&rsqb;</mo><mo>+</mo><mi>z</mi><msup><mrow><mo>(</mo><msub><mi>k</mi><mi>f</mi></msub><mo>)</mo></mrow><mi>T</mi></msup><msub><mi>Q</mi><mi>f</mi></msub><mi>z</mi><mrow><mo>(</mo><msub><mi>k</mi><mi>f</mi></msub><mo>)</mo></mrow></mrow>

Q=Qf=diag{qjy1,qjy2,…,qjyn,qju1,…,qjum-1,qje}

其中,Q为遗传算法优化得到的加权矩阵;

b.利用庞特里亚金最小值原理将a步骤的目标函数写成如下形式:

<mrow><msub><mi>H</mi><mi>k</mi></msub><mo>=</mo><mo>&lsqb;</mo><mi>z</mi><msup><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mi>T</mi></msup><mi>Q</mi><mi>z</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>+</mo><msup><mi>&Delta;u</mi><mi>T</mi></msup><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mi>R</mi><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>&rsqb;</mo><mo>+</mo><msubsup><mi>p</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow><mi>T</mi></msubsup><mo>&lsqb;</mo><mi>A</mi><mi>z</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>+</mo><mi>B</mi><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>&rsqb;</mo></mrow>

其中,pk+1为拉格朗日乘子;

c.求并令其等于零,可得

<mrow><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><mo>-</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msup><mi>R</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><msup><mi>B</mi><mi>T</mi></msup><msub><mi>p</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msub></mrow>

联合进一步可以得到

<mrow><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><mo>-</mo><msup><mi>R</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><msup><mi>B</mi><mi>T</mi></msup><msup><mrow><mo>&lsqb;</mo><mi>I</mi><mo>+</mo><msub><mi>H</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn><mo>,</mo><msub><mi>k</mi><mi>f</mi></msub></mrow></msub><msup><mi>BR</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><msup><mi>B</mi><mi>T</mi></msup><mo>&rsqb;</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><msub><mi>H</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn><mo>,</mo><msub><mi>k</mi><mi>f</mi></msub></mrow></msub><mi>A</mi><mi>z</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow>

<mfenced open = "" close = ""><mtable><mtr><mtd><mrow><msub><mi>H</mi><mrow><mi>k</mi><mo>,</mo><msub><mi>k</mi><mi>f</mi></msub></mrow></msub><mo>=</mo><msup><mi>A</mi><mi>T</mi></msup><msup><mrow><mo>&lsqb;</mo><mi>I</mi><mo>+</mo><msub><mi>H</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn><mo>,</mo><msub><mi>k</mi><mi>f</mi></msub></mrow></msub><msup><mi>BR</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><msup><mi>B</mi><mi>T</mi></msup><mo>&rsqb;</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><msub><mi>H</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn><mo>,</mo><msub><mi>k</mi><mi>f</mi></msub></mrow></msub><mi>A</mi><mo>+</mo><mi>Q</mi></mrow></mtd></mtr><mtr><mtd><mrow><mo>=</mo><msup><mi>A</mi><mi>T</mi></msup><msub><mi>H</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn><mo>,</mo><msub><mi>k</mi><mi>f</mi></msub></mrow></msub><mi>A</mi><mo>-</mo><msup><mi>A</mi><mi>T</mi></msup><msub><mi>H</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn><mo>,</mo><msub><mi>k</mi><mi>f</mi></msub></mrow></msub><mi>B</mi><msup><mrow><mo>(</mo><mrow><mi>R</mi><mo>+</mo><msup><mi>B</mi><mi>T</mi></msup><msub><mi>H</mi><msub><mrow></mrow><mrow><mi>k</mi><mo>+</mo><mn>1</mn><mo>,</mo><msub><mi>k</mi><mi>f</mi></msub></mrow></msub></msub><mi>B</mi></mrow><mo>)</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><msup><mi>B</mi><mi>T</mi></msup><msub><mi>H</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn><mo>,</mo><msub><mi>k</mi><mi>f</mi></msub></mrow></msub><mi>A</mi><mo>+</mo><mi>Q</mi></mrow></mtd></mtr></mtable></mfenced>

<mrow><msub><mi>H</mi><mrow><msub><mi>k</mi><mi>f</mi></msub><mo>,</mo><msub><mi>k</mi><mi>f</mi></msub></mrow></msub><mo>=</mo><msub><mi>Q</mi><mi>f</mi></msub></mrow>

u(k)=u(k-1)+Δu(k)

其中,R-1表示输入加权矩阵的逆矩阵,I为适当维数的单位矩阵;

d.将c步骤中得到的控制量u(k)作用于被控对象;

e.在下一时刻,依照步骤(2)a到步骤(3)d的步骤继续求解新的控制量u(k+1),并依次循环。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410281432.4/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top