遗传算法优化的多模型预测控制方法与流程

文档序号:12459396阅读:253来源:国知局

本发明属于自动化技术领域,涉及一种遗传算法优化多模型的预测控制的方法。



背景技术:

在工业控制中通常具有非线性,大工况范围,大延迟等环节,它直接影响生产效率的高低,产品质量的好坏,为了满足工业的生产效率和提高经济效益,得到更精准的控制效果,从而获得更多研究人员的关注。在多模型的预测控制中将系统的全局模型分解为一系列的局部模型,通过在不同的工作范围点对系统中的每个模型进行加权计算从而得到系统的控制量,但是在全局的工作区间中,由于工作区间范围的差异从而导致了不同工作区间模型对系统的影响程度不同,导致在系统的加权基础上对系统中的控制量不同程度的影响。从而使系统模型集的精确性降低,主导工作区域不明显,要求从更快计算、更精准的模型集。



技术实现要素:

本发明主要是针对电加热炉温度控制系统,提出了一种遗传算法优化加权的多模型预测控制的方法。这种控制的优点在于把系统的工作区域划分为一系列的子工作区间,并分数阶模型引入到了传统的整数阶减少了模型的误差,利用遗传算法通过在建立子区间中对每个子模型的工况范围进行评估,从而得到当前时刻系统中最优的模型个数和模型的工作范围。

本发明首先将电加热炉划分为若干个子工作区间,分别建立相应的子区间上的分数阶模型,再通过Oustaloup近似方法线将其转换为高阶的整数模型,并通过遗传算法在当前模型集中选取最优的模型集和相应的工作区间范围得到一组模型集的加权控制,从而得到当前时刻的最优控制量,从而改善了系统的模型集的精度和控制的性能,减小了不相关模型对系统造成的影响。

本发明方法的步骤:

1建立被控对象的多模型。

1.1根据工作区域按照工作的温度范围进行i等分,i是要进行工作区域划分的个数。

1.2在每个工况区间中采集实际过程对象的实时阶跃响应数据,利用该数据建立被控对象的分数阶传递函数模型Mi,形式如下:

其中,Mi为第i个子模型,α1,i为第i个系统的微分阶次,T1,i为相应的系数,S为拉普拉斯变换算子,Km,i为模型比例增益系数,τm,i为模型的滞后时间常数。

1.3通过Oustaloup近似方法可以将分数阶模型数值化处理为:

其中,α为分数阶微分阶次,0<α<1,N为选定的近似阶次,Kα=Whα,Wn'=WbWu(2n-1-α)/N,Wn=WbWu(2n-1+α)/N,Wh和Wb分别为拟合频率的上限值和下限值。

1.4根据步骤1.3中Oustaloup近似方法,将步骤1.2中的分数阶模型转化为整数高阶模型,再通过采样时间TS和零阶保持器后离散化得到如下形式:

其中,fj,hj(j=1,2,…,l)均为离散近似后得到的系数,d=τ/TS为过程的滞后时间,l为离散模型的长度,y(k)为k时刻的过程模型输出,u(k-d-1)为过程模型在k-d-1时刻的输入值。

2.控制器的设计

2.1根据对象的模型和输入控制量对未来过程对象的输出进行预测:

为了减少误差通过对模型进行一阶向后差分,得到如下形式:

2.2选取系统的状态变量如下:

△Xm(k)=[△y(k),△y(k-1),…,△y(k-l),△u(k-1),…,△u(k-l+1-d)]T (5)

结合步骤1.4,得到被控对象的状态空间模型,形式如下:

其中,T为矩阵的转置符号,△Xm(k)的维数为(2l+d-1)×1;

Bm=[0 … 0 1 0 … 0]T

Cm=[1 0 … 0 0 … 0]

输出的误差可以定义为:

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

其中r(k)为参考轨迹。

2.3预测函数控制的输入量是由一组相对应的基函数线性组合,可以表述为:

u(k+i)=…=u(k) (8)

2.4由于实际的过程存在误差,实际与模型之间的误差为:

2.5通过滚动优化,为了求取当前最优的控制量,目标函数选择如下:

J=min[yr(k+p)-y(k+p)]2 (10)

因此可以得到每个控制器的控制量分别为:

u(k)=-S-1[y(k)-yr(k)+G△x(k)-L△R]+u(k-1) (11)

其中S=CAP-1B+CAP-2B+…+CB,△R=[△yr(k+1),△yr(k+2),…,△yr(k+p)]T

L=[1 1 … 1],G=CAP+CAP-1+…+CA。

3.利用遗传算法优化多模型的个数和工况点的范围。

3.1通过选取高斯核函数对每个模型的工况点进行评价。

其中y是当前时刻系统的输出量,mi是第i个模型的工作点,σi为其相应模型的核宽度。

3.2通过模型的评价函数求取系统中每个模型加权系数

其中nr为模型的个数,wi(k)为第i个模型的加权系数。

3.3设定种群染色体大小为N,进化的最大迭代次数为N1,随机初始化种群。通过适应度函数优化模型个数和核宽度可得目标函数:

其中ω为权重系数,yi(k+1)是第i个模型下一时刻的输出量,yr(k+1)是对象的参考轨迹未来预测的输出量。

3.4采用十进制编码方式对工作点范围的宽度进行编码,第i个的染色体可以表示为:

其中i=1,2,…,N,N是种群的大小,nr是模型中模型的个数,1≤nr≤D,D是模型集的最大个数。染色体Ci′中的元素为:

σi=fmin+r(fmax-fmin),1≤i≤nr (16)

其中r是位于[0,1]之间的随机变量fmax,fmin分别为核宽度的最大值和最小值。

3.5选取染色体的操作算子的具体步骤为:

3.5.1染色体交叉运算。选取交叉算子Pc,使染色体Ci′和下一个染色体Ci+1′以概率Pc进行交叉运算,产生下一代染色体。

3.5.2染色体修剪因子运算。为了得到更优的模型的个数,以Pn的概率修改模型的个数nr,进而改变染色体中的元素Ci′,从而完成染色个体变异的操作。

3.6依照步骤2.2到2.3中的步骤进行循环重复优化搜索,如果达到最大的进化次数N1结束优化搜索计算,得到经过遗传算法优化后的染色体核宽度Ci′,进而可以得到最优的模型个数nr'

3.7在求取最优的模型个数和核宽度的情况下,求取目标函数的最优值从而可以得到控制量的参数为:

3.8在下一时刻到来时依照步骤2.1到3.7中的方法求解分数阶的多模型预测函数控制器的控制量,再将控制量作用于被控对象,并按照此步骤循环操作下去。

本发明提出了一种遗传算法优化加权的多模型预测函数控制的方法,该方法首先将整数阶的多模型预测控制方法扩展到分数阶的多模型预测控制方法中,通过建立了被控对象的局部状态空间模型,将之前的非线性模型转换为了线性局部模型,再通过把遗传算法引入对局部模型集和工作区间的核宽度的选择中,从而提高了系统的局部模型的工作区域的范围,减少了当前工作的模型个数,增加了系统中主要的局部模型对系统的控制量占有率,增加了系统的控制的精度,使得装置工作效率更加高效。

这种方法与传统多模型加权控制相比较,把遗传算法引入到了系统中求取当前时刻模型最优的子模型集,对模型集中对系统存在影响的模型进行了剔除,从而增加了模型的精度,降低了模型的结构,使模型的工作区间更加紧凑,并利用分数阶模型提高了局部模型的精确度,最后通过在每个时刻根据当前最优的模型进行加权从而得到系统的最优控制量。

具体实施方式

以下结合实施例对本发明作进一步说明

1建立电加热炉的多模型。

1.1根据电加热炉的工作区域按照温度范围进行i等分,i是要进行工作区域划分的个数。

1.2在每个工况区间中采集电加热炉的实时阶跃响应数据,利用该数据建立被控对象的分数阶传递函数模型Mi,形式如下:

其中,Mi为第i个子模型,α1,i为第i个系统的微分阶次,T1,i为相应的系数,S为拉普拉斯变换算子,Km,i为模型比例增益系数,τm,i为模型的滞后时间常数。

1.3通过Oustaloup近似方法可以将分数阶模型数值化处理为:

其中,α为分数阶微分阶次,0<α<1,N为选定的近似阶次,Kα=Whα,Wn'=WbWu(2n-1-α)/N,Wn=WbWu(2n-1+α)/N,Wh和Wb分别为拟合频率的上限值和下限值。

1.4根据步骤1.3中Oustaloup近似方法,将步骤1.2中的分数阶模型转化为整数高阶模型,再通过采样时间TS和零阶保持器后离散化得到如下形式:

其中,fj,hj(j=1,2,…,l)均为离散近似后得到的系数,d=τ/TS为过程的滞后时间,l为离散模型的长度,y(k)为k时刻的过程模型输出,u(k-d-1)为过程模型在k-d-1时刻的输入值。

2.电加热炉控制器的设计

2.1根据电加热炉的局部模型和输入控制量对未来过程对象的输出进行预测:

为了减少误差通过对模型进行一阶向后差分,得到如下形式:

2.2选取系统的状态变量如下:

△Xm(k)=[△y(k),△y(k-1),…,△y(k-l),△u(k-1),…,△u(k-l+1-d)]T (5)

结合步骤1.4,得到被控对象的状态空间模型,形式如下:

其中,T为矩阵的转置符号,△Xm(k)的维数为(2l+d-1)×1;

Bm=[0 … 0 1 0 … 0]T

Cm=[1 0 … 0 0 … 0]

输出的误差可以定义为:

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

其中r(k)为参考轨迹。

2.3预测函数控制的输入量是由一组相对应的基函数线性组合,可以表述为:

u(k+i)=…=u(k) (8)

2.4由于实际的过程存在误差,实际与模型之间的误差为:

2.5通过滚动优化,为了求取当前最优的控制量,目标函数选择如下:

J=min[yr(k+p)-y(k+p)]2 (10)

因此可以得到每个控制器的控制量分别为:

u(k)=-S-1[y(k)-yr(k)+G△x(k)-L△R]+u(k-1) (11)

其中S=CAP-1B+CAP-2B+…+CB,△R=[△yr(k+1),△yr(k+2),…,△yr(k+p)]T

L=[1 1 … 1],G=CAP+CAP-1+…+CA。

3.利用遗传算法优化多模型的个数和工况点的范围。

3.1通过选取高斯核函数对每个模型的工况点进行评价。

其中y是当前时刻系统的输出量,mi是第i个模型的工作点,σi为其相应模型的核宽度。

3.2通过模型的评价函数求取系统中每个模型加权系数

其中nr为模型的个数,wi(k)为第i个模型的加权系数。

3.3设定种群染色体大小为N,进化的最大迭代次数为N1,随机初始化种群。通过适应度函数优化模型个数和核宽度可得目标函数:

其中ω为权重系数,yi(k+1)是第i个模型下一时刻的输出量,yr(k+1)是对象的参考轨迹未来预测的输出量。

3.4采用十进制编码方式对工作点范围的宽度进行编码,第i个的染色体可以表示为:

其中i=1,2,…,N,N是种群的大小,nr是模型中模型的个数,1≤nr≤D,D是模型集的最大个数。染色体Ci′中的元素为:

σi=fmin+r(fmax-fmin),1≤i≤nr (16)

其中r是位于[0,1]之间的随机变量fmax,fmin分别为核宽度的最大值和最小值。

3.5选取染色体的操作算子的具体步骤为:

3.5.1染色体交叉运算。选取交叉算子Pc,使染色体Ci′和下一个染色体Ci+1′以概率Pc进行交叉运算,产生下一代染色体。

3.5.2染色体修剪因子运算。为了得到更优的模型的个数,以Pn的概率修改模型的个数nr,进而改变染色体中的元素Ci′,从而完成染色个体变异的操作。

3.6依照步骤2.2到2.3中的步骤进行循环重复优化搜索,如果达到最大的进化次数N1结束优化搜索计算,得到经过遗传算法优化后的染色体核宽度Ci′,进而可以得到最优的模型个数nr'。

3.7在求取最优的模型个数和核宽度的情况下,求取目标函数的最优值从而可以得到控制量的参数为:

3.8在下一时刻到来时依照步骤2.1到3.7中的方法求解分数阶的多模型预测函数控制器的控制量,再将控制量作用于被控对象,并按照此步骤循环操作下去。

综上,本发明首先把整个工作的区域按照某种方法划分为若干个子工作区间,从而把原来的非线性的模型转换为了线性分数阶模型,模型的精度避免了非线性的复杂性,然后在每个子区域建立其相应的分数阶模型从而得到每个控制器的控制量,最后通过遗传算法优化求取每个模型的加权系数从而得到实际对系统影响的模型的个数和相应的加权系数。通过在遗传算法选取一组最合适的子模型,利用加权控制求取子模型的系数从而得到系统的总控制量,减少了当前时刻系统的计算量,使得子模型更加精确,控制更加有效。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1