弹性网络建模且基于遗传算法的风机多目标优化控制方法与流程

文档序号:18217688发布日期:2019-07-19 22:45阅读:187来源:国知局
弹性网络建模且基于遗传算法的风机多目标优化控制方法与流程

本发明属于风机运行过程的控制技术和工业过程的模拟仿真领域,涉及一种基于弹性网络建模且基于遗传算法的风机多目标优化控制方法。



背景技术:

风机是通过输入的机械能,将进气压力提高并排出的流体机械。主要由叶轮、叶片、电机、传动件组成。

风机给如电厂中烟风系统提供动力,它的运行工况与电厂高效的运行和节能有着巨大的联系。如果能够有效的对风机进行控制,将其高效率范围扩大以提高其效率,降低机械能的消耗,这将提高整个工业过程的工作效率。对日常生活区域如地铁站等都将降低能源消耗。风机各控制参数的改变对风机性能是一种综合效应。即当各操作参数改变时,风机各目标参数的变化趋势并不一致。所以,我们不仅是优化效率,同时也是对风压和风量的优化。因为风量越大,空气分子的流动性越好。风压越大,空气分子局部密度越大,空气分子能流向更远处。但是,随着流速增大时,阻力也增大,使局部和流动的损失增加,效率降低。所以需要通过多目标优化方法,在满足实际工作得要求下,获得一组最优的控制参数组合。

风机的运行过程是一个紊乱的流体流动过程和复杂的能量传递过程。传统的多目标计算实际是对单目标计算的加权计算,权值的取值与工作人员经验有很大关联,难以实现最精确、高效的控制。若通过cfd方法即计算流体力学,以电子计算机为工具,应用各种离散化的数学方法,得到控制方程的近似解,其过程不仅复杂而且耗时较长,在现场控制时我们需要在在几秒钟内给出结果时,并不适用。而目前的智能优化算法包括遗传算法、粒子群算法等拥有快速的全局寻优能力,已广泛用于解决多目标优化问题。



技术实现要素:

为了克服已有风机控制方法的精度较低、效果较差、耗时较长等不足之处,本发明提供一种精度较高、效果较好、耗时短的以弹性网络建模且基于遗传算法的风机多目标优化控制方法。

本发明解决其技术问题所采用的技术方案是:

一种弹性网络建模且基于遗传算法的风机多目标优化控制方法,包括以下步骤:

步骤一:获取对风机运行效率和风压或效率和风量影响非常大的操作变量,并给定风压和风量变化范围;再根据风机实际运行要求选取风机运行效率和风压或效率和风量这两种组合中的某一种组合,并令为目标变量;其中操作变量和目标变量所组成的数据样本可通过实验获得。

步骤二:令操作变量为输入变量、目标变量为输出变量,对数据样本进行训练,完成弹性网络模型的建立,其中采用弹性bp方法进行权值和阈值的更新;

步骤三:建立遗传算法模型,其中采用非支配排序算子、拥挤度比较算子和精英策略设计算子;

步骤四:将第二步建立的弹性网络模型用于计算风压、效率和风量等性能参数的预测值,并将预测值用于遗传算法模型中目标函数值的求取,来获得多目标最优解;最后将最优解反归一化得到优化的操作参数,并将该值传输给风机操作机构进行实际控制。

进一步,所述步骤一中,所述的变量选取如下:选择动叶安装角、转速作为操作变量,并令为神经网络模型的输入变量;选择效率和风压或效率和风量的一种组合作为目标变量,并令为神经网络模型的输出变量,其中,组合的选取由风机运行的实际要求来确定。

所述步骤二,对弹性神经网络模型的建立、初始化、训练过程如下:先对样本数据进行处理;然后,通过处理后的数据来计算神经网络隐含层结点和输出层结点分别对应输入值和输出值;最后,根据弹性网络中权值与阈值的更新公式,更新神经网络的权值与阈值;经过若干次循环,若误差处于要求的误差范围或已到达最大循环次数,则训练停止。

所述步骤二的处理步骤如下:

2.1数据处理

收集步骤一中相关参数即动叶安装角、转速、效率、风量或风压,并对动叶安装角、转速和风量或风压进行归一化处理,使其到[0,1]之间,公式如下:

其中,k为归一化后的数据,x为被归一化数据,xmin为被归一化数据中的最小值,xmax为被归一化数据中最大值;

2.2数据的分类

将处理后得到的数据集划分为两部分,其中,随机选取数据集中70%作为训练集,再将剩下30%的数据作为测试集;

2.3网络的初始化

假设输入层的节点个数为n,隐含层的节点个数为l,输出层的节点个数为m,令隐含层层数为一层,节点数根据经验公式:其中a为常数取1~10,循环次数设置为n次,输入层到隐含层的权值为wij,隐含层到输出层的权值为wjk,输入层到隐含层的阈值为aj,隐含层到输出层的阈值为bk,各层权值初始值取[-1,1]之间的随机数,学习速率为η,取值为0.1~0.2,激励函数为g(x),其中激励函数取sigmoid函数。形式为:

2.4训练神经网络;

2.5数据测试

完成所有训练集的数据训练后,用测试集的数据对神经网络进行测试。若误差在规定范围内,则弹性神经网络完成建模,即神经网络模型的输入和输出满足映射关系。

所述2.4中,训练神经网络的过程如下:

2.4.1信号的正向传播

2.4.1.1隐含层的输出:

xi为输入层的输入的数据,hj为隐含层结点的输出;

2.4.1.2输出层的输出:

ok为输出层结点的输出。

2.4.1.3误差的计算:

ek=ok-yk

以上公式中,i=1...n,j=1...l,k=1...m,yk为实际输出数据;

通过比较输出层的实际输出与期望输出,获得两者的误差,若误差未处于要求的误差范围内,则转入误差反向传播。

2.4.2信号(误差)的反向传播

弹性bp算法的权值和阈值的更新如下公式:

w(t+1)=w(t)+δw(t)

其中t为迭代次数,δw(t)为第t代权值得修正量,梯度即只对权值调整的方向起作用。若连续两次调整的方向相同,就增加δt,此时一般α选为1.2。若连续两次调整的方向相反,就减小δt,此时一般β选为0.8。其他情况下,不进行更新;

重复步骤2.4.1-2.4.2中的所有步骤,若误差处于要求的误差范围或循环次数超过设置上限为止,则训练停止。

所述步骤三中,遗传算法的步骤如下:

3.1生成父代种群pt,种群大小为n;

3.2计算父代种群pt中个体的非支配级别、拥挤距离;

3.3再进行选择、交叉、变异,生成初代子群qt;

3.4将初代子群qt和父代种群pt合并,生成新父代种群pt+1,种群大小为2n;

3.5计算新父代种群pt+1中个体的非支配级别、拥挤距离;

3.6对新父代种群pt+1进行选择、交叉、变异,生成新父代子群qt+1,种群大小为n;

3.7判断进化代数是否小于最大代数g,若否,则输出qt+1;若是,则t=t+1,回到第四步继续进行循环。

进一步,所述第一步中,种群编码方式采用实数编码,种群规模设为n、进化代数设为t、交叉概叉概率设为20%~50%,变异概率设为1%~10%。

再进一步,所述第二步和第五步中,采用快速非支配排序算子和拥挤度比较算子,将神经网络模型的预测值作为遗传算法中目标函数值得计算。

其中,快速非支配排序的原理为:首先找出种群中非支配解集,记为第一非支配层f1,其非支配序数为irank=1,并将f1除去再找出剩下的种群的非支配解集,记为f2。依次如此。非支配序数较高的个体优先被选取。

拥挤度:目标空间上与i相邻的2个个体i+1和i-1之间的距离。在同一非支配层f(i)中,利用这两个属性作为个体胜出标准,使准paroet域中的个体能扩展到整个pareto域,均匀分布,保持了种群的多样性。

更进一步,所述第三步和第六步中,选择是指通过快速非支配排序算子、拥挤度比较算子进行选择;交叉是指通过染色体的交叉组合,产生新的个体;变异是指从群体中任选一个个体,对所选择的染色体中某段编码进行变异以产生更优秀的个体,采用实数交叉法进行交叉操作;采用第i个个体的第j个基因aij进行变异操作,变异方法如下:

aij=aij+(aij-amax)*f(g)r>0.5

aij=aij+(amin-aij)*f(g)r≤0.5

式中,r为[0,1]间的随机数,amax为基因的上届,amin为基因的下届;f(g)=rand×(1-g/gmax)2;rand为[0,1]间的随机数;g为当前迭代次数;gmax为最大进化次数。

再更进一步,所述第四步中,采用精英策略设计算子,即将父代种群与其产生的子代种群组合,通过快速非支配排序算子和拥挤度比较算子进行选择,产生下一代种群;这有利于保持父代中的优良个体进入下一代,保证种群中的最优个体不会丢失。

所述步骤四中,过程如下:先通过对数据样本的训练,完成弹性神经网络模型的建立,该模型拟合出了良好的输入和输出变量的映射关系;然后将神经网络的预测值用于遗传算法中目标函数值的求取;最后通过遗传算法进行全局寻优,找出风机运行效率和风压或效率和风量的最理想点即pareto最优点;由于所述模型得到的最终值为归一化后的值,故需要再对pareto最优点所对应的操作变量值进行反归一化处理,转化为真实值,其公式如下:x=k·(xmax-xmin)+xmin。

本发明的技术构思为:不仅需要选取合适的算法,还需要有对目标变量的预测模型。人工神经网络通过仿生学,对生物神经网络进行抽象并建立简单模型,其具有高度的非线性映射能力,自学习能力等已应用于很多领域。其中,弹性网络除去了bp神经网络中对误差梯度幅度的复杂计算,使收敛速度更快。将遗传算法和神经网络结合,能够有效的提高算法收敛速度和参数的精确度,快速获得最优的控制变量数值,对风机进行高效的控制。

本发明的有益效果主要表现在:精度较高、效果较好、耗时短。

附图说明

图1是本发明的弹性网络建模且基于遗传算法的风机多目标优化控制方法的流程图。

具体实施方式

下面结合附图对本发明作进一步描述。

参照图1,一种弹性网络建模且基于遗传算法的风机多目标优化控制方法,包括以下步骤:

步骤一:获取对风机运行效率和风压或效率和风量影响非常大的操作变量,并给定风压和风量变化范围;再根据风机实际运行要求选取风机运行效率和风压或效率和风量这两种组合中的某一种组合,并令为目标变量;其中操作变量和目标变量所组成的数据样本可通过实验获得。

步骤二:令操作变量为输入变量、目标变量为输出变量,对数据样本进行训练,完成弹性网络模型的建立,其中采用弹性bp方法进行权值和阈值的更新;

步骤三:建立遗传算法模型,其中采用非支配排序算子、拥挤度比较算子和精英策略设计算子;

步骤四:将第二步建立的弹性网络模型用于计算风压、效率和风量等性能参数的预测值,并将预测值用于遗传算法模型中目标函数值的求取,来获得多目标最优解;最后将最优解反归一化得到优化的操作参数,并将该值传输给风机操作机构进行实际控制。

进一步,所述步骤一中,操作变量:动叶安装角、转速、导叶扭曲角等,所述的变量选取如下:选择动叶安装角、转速作为操作变量,并令为神经网络模型的输入变量;选择效率和风压或效率和风量的一种组合作为目标变量,并令为神经网络模型的输出变量,其中,组合的选取由风机运行的实际要求来确定。

所述步骤二,对弹性神经网络模型的建立、初始化、训练过程如下:先对样本数据进行处理;然后,通过处理后的数据来计算神经网络隐含层结点和输出层结点分别对应输入值和输出值;最后,根据弹性网络中权值与阈值的更新公式,更新神经网络的权值与阈值;经过若干次循环,若误差处于要求的误差范围或已到达最大循环次数,则训练停止。

所述步骤二的处理步骤如下:

2.1数据处理

收集步骤一中相关参数即动叶安装角、转速、效率、风量或风压,并对动叶安装角、转速和风量或风压进行归一化处理,使其到[0,1]之间,公式如下:

其中,k为归一化后的数据,x为被归一化数据,xmin为被归一化数据中的最小值,xmax为被归一化数据中最大值;

2.2数据的分类

将处理后得到的数据集划分为两部分,其中,随机选取数据集中70%作为训练集,再将剩下30%的数据作为测试集;

2.3网络的初始化

假设输入层的节点个数为n,隐含层的节点个数为l,输出层的节点个数为m,令隐含层层数为一层,节点数根据经验公式:其中a为常数取1~10,循环次数设置为n次,输入层到隐含层的权值为wij,隐含层到输出层的权值为wjk,输入层到隐含层的阈值为aj,隐含层到输出层的阈值为bk,各层权值初始值取[-1,1]之间的随机数,学习速率为η,取值为0.1~0.2,激励函数为g(x),其中激励函数取sigmoid函数。形式为:

2.4训练神经网络,过程如下:

2.4.1信号的正向传播

2.4.1.1隐含层的输出:

xi为输入层的输入的数据,hj为隐含层结点的输出;

2.4.1.2输出层的输出:

ok为输出层结点的输出。

2.4.1.3误差的计算:

ek=ok-yk

以上公式中,i=1...n,j=1...l,k=1...m,yk为实际输出数据;

通过比较输出层的实际输出与期望输出,获得两者的误差,若误差未处于要求的误差范围内,则转入误差反向传播。

2.4.2信号(误差)的反向传播

弹性bp算法的权值和阈值的更新如下公式:

w(t+1)=w(t)+δw(t)

其中t为迭代次数,δw(t)为第t代权值得修正量,梯度即只对权值调整的方向起作用。若连续两次调整的方向相同,就增加δt,此时一般α选为1.2。若连续两次调整的方向相反,就减小δt,此时一般β选为0.8。其他情况下,不进行更新;

重复步骤2.4.1-2.4.2中的所有步骤,若误差处于要求的误差范围或循环次数超过设置上限为止,则训练停止;

2.5数据测试

完成所有训练集的数据训练后,用测试集的数据对神经网络进行测试。若误差在规定范围内,则弹性bp神经网络完成建模,即神经网络模型的输入和输出满足映射关系。

所述步骤三中,遗传算法的步骤如下:

3.1生成父代种群pt,种群大小为n;

3.2计算父代种群pt中个体的非支配级别、拥挤距离;

3.3再进行选择、交叉、变异,生成初代子群qt;

3.4将初代子群qt和父代种群pt合并,生成新父代种群pt+1,种群大小为2n;

3.5计算新父代种群pt+1中个体的非支配级别、拥挤距离;

3.6对新父代种群pt+1进行选择、交叉、变异,生成新父代子群qt+1,种群大小为n;

3.7判断进化代数是否小于最大代数g,若否,则输出qt+1;若是,则t=t+1,回到第四步继续进行循环。

进一步,所述第一步中,种群编码方式采用实数编码,种群规模设为n、进化代数设为t、交叉概叉概率设为20%~50%,变异概率设为1%~10%。

再进一步,所述第二步和第五步中,采用快速非支配排序算子和拥挤度比较算子,将神经网络模型的预测值作为遗传算法中目标函数值得计算。

其中,快速非支配排序的原理为:首先找出种群中非支配解集,记为第一非支配层f1,其非支配序数为irank=1,并将f1除去再找出剩下的种群的非支配解集,记为f2。依次如此。非支配序数较高的个体优先被选取。

拥挤度:目标空间上与i相邻的2个个体i+1和i-1之间的距离。在同一非支配层f(i)中,利用这两个属性作为个体胜出标准,使准paroet域中的个体能扩展到整个pareto域,均匀分布,保持了种群的多样性。

更进一步,所述第三步和第六步中,选择是指通过快速非支配排序算子、拥挤度比较算子进行选择;交叉是指通过染色体的交叉组合,产生新的个体;变异是指从群体中任选一个个体,对所选择的染色体中某段编码进行变异以产生更优秀的个体,采用实数交叉法进行交叉操作;采用第i个个体的第j个基因aij进行变异操作,变异方法如下:

aij=aij+(aij-amax)*f(g)r>0.5

aij=aij+(amin-aij)*f(g)r≤0.5

式中,r为[0,1]间的随机数,amax为基因的上届,amin为基因的下届;f(g)=rand×(1-g/gmax)2;rand为[0,1]间的随机数;g为当前迭代次数;gmax为最大进化次数。

再更进一步,所述第四步中,采用精英策略设计算子,即将父代种群与其产生的子代种群组合,通过快速非支配排序算子和拥挤度比较算子进行选择,产生下一代种群;这有利于保持父代中的优良个体进入下一代,保证种群中的最优个体不会丢失。

所述步骤四中,过程如下:先通过对数据样本的训练,完成弹性神经网络模型的建立,该模型拟合出了良好的输入和输出变量的映射关系;然后将神经网络的预测值用于遗传算法中目标函数值的求取;最后通过遗传算法进行全局寻优,找出风机运行效率和风压或效率和风量的最理想点即pareto最优点;由于所述模型得到的最终值为归一化后的值,故需要再对pareto最优点所对应的操作变量值进行反归一化处理,转化为真实值,其公式如下:x=k·(xmax-xmin)+xmin。

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