logo资料库

论文研究-基于遗传算法优化神经网络PID在啤酒发酵中的应用 .pdf

第1页 / 共9页
第2页 / 共9页
第3页 / 共9页
第4页 / 共9页
第5页 / 共9页
第6页 / 共9页
第7页 / 共9页
第8页 / 共9页
资料共9页,剩余部分请下载后查看
中国科技论文在线 http://www.paper.edu.cn 基于遗传算法优化神经网络 PID 在啤酒发 酵中的应用 吕宁,徐佳* 5 10 15 (哈尔滨理工大学自动化学院,哈尔滨 150080) 摘要:针对啤酒发酵过程中的温度控制的大时滞、非线性、时变性等特点,传统的 PID 无 法满足要求,添加了 BP 神经网络的概念,结合传统的 PID 控制,设计了 BP 神经网络 PID 控制器,并在结构上进行了一定的改进。为了减少初始权值对经验的依赖性,用遗传算法优 化初始的 BP 神经网络的权值。先进行全局搜索,然后再进行 BP 神经网络 PID 的在线整定, 并结合啤酒发酵罐的特点,选择分阶段的初始遗传算法优化权值,再进行在线整定。最后使 用 MATLAB 中的 M 文件对啤酒发酵罐进行了仿真,并通过 VB 编写相应的控制算法在实物 上进行验证,实验的结果验证了它具有实时性强、超调量小、抗干扰性强等优点。 关键词:啤酒发酵;BP 神经网络;遗传算法;分阶段的初始优化;VB6.0 中图分类号:TP273 Genetic algorithm optimization neural network based in beer fermentation applications Lv Ning, Xu Jia 20 (School of Automation, Harbin University Of Science and Technology, Harbin 150080) 25 30 Abstract: In view of the great inertia large time delay and nonlinear characteristics in the process of the beer fermentation temperature control. Traditional PID not meet the requirements, adding the concept of BP neural network and combining with traditional PID control, design of BP neural network PID controller and the structure has been some improvement. In order to reduce dependence on the initial weights of experience, the right use genetic algorithm to optimize the value of the initial BP neural network. Firstly, it begin to get on global searching. Secondly, system start BP neural network PID tuning online. Combining with the characteristics of the beer fermentation tank weights to select the initial stages of genetic optimization algorithm, and then line setting. Finally using the MATLAB M-files for beer fermentation tank simulation. To verify the physical in preparation of the corresponding control algorithm in VB software. The experimental results proved this controller had the advantages of real-time, small overshoot, interference and other advantages. Key words: beer fermentation; bp neural network; genetic algorithms; the initial stages of the optimization;VB6.0 35 0 引言 发酵作为啤酒生产工艺中重要的一步,其本身是一个复杂的生物化学反应,这一过程具 有大时滞、非线性、时变性等特点[1],温度控制是关键。传统的 PID 无法满足求,神经网络 具有自学习的能力,通过改变网络层之间的权值,进而达到改变输出控制参数,这一点正好 40 可以弥补 PID 的不足,解决了时变性和大时滞的问题。但是神经网络初始权值在实际的生 产或实验中往往需要一定的经验,为此引入了遗传算法优化权值的概念,在啤酒发酵的不同 阶段,优化初始权值,完成整个温度的控制过程。本文提出遗传算法优化的 BP 神经网络 PID 控制,该方法实时的改变 PID 控制器的参数,使得系统准确的跟踪上工艺曲线的要求,良 作者简介:吕宁(1970-),男,吉林省吉林市人,哈尔滨理工大学教授,工学博士,主要研究方向为智能 控制、故障诊断、数字像处理等. E-mail: 528757048@qq.com - 1 -
中国科技论文在线 好的满足这个啤酒发酵的控制要求。 45 1 发酵的环境分析 http://www.paper.edu.cn 啤酒的整个发酵过程是在发酵罐中进行的,整个过程可以分为自然升温、保温、降温等 过程[2,3]。理想的时刻温度曲线如下: 图 1 理想温度曲线图 50 2 改进的 BP 神经网络 PID 控制器 2.1 BP 神经网络的基本结构 神经网络与 PID 进行结合,使用其自身学习的特点,实时动态的改变输出参数值。 网络的隐含层输入为: (1) 55 输出为: (2) 隐含层神经元的激活函数使用正负对称的 Sigmoid 函数[4]: (3) 网络的输出层的输入为: (4) Q 为隐含层神经元的个数。 60 输出为: 、 、 (5) r=1,2,3 输出层的输入节点分别对应着 3 个参数 , , 。 65 这里面的指标函数取: (6) 为给定的输入,yout(k)为系统的输出。 2.2 对输出层的激活函数进行改进 通常输出层的神经元的激活函数取非负的 Sigmoid 函数: - 2 - 4 6 8101226101418-2 0时间/天温度/℃2)1(0)2()2()(jMjijiOknet))(()()2()2(knetfkOiixxxxeeeexxf)tanh()()()(0)2()3()3(kOknetQiirir))(()()3()3(knetgkOrrpkkO)()3(1ikkO)()3(2dkkO)()3(3pkikdk2))()((21)(kyoutkrinxJ)(krin
中国科技论文在线 http://www.paper.edu.cn 70 (7) 但是由于该函数存在很多的饱和区(比如接近边界 0 1 处),这时的权值变化量就会接近 零,使得收敛速度大大降低,为此将激活函数改为: (8) (0.5 可以换成[-1,1]的其它数,该激活函数满足激活函数的要求,而且导数多了 75 (9) 这一项,可以快速摆脱误差曲线的平坦区域,加快收敛速度,而且可以避免陷入局部最优。 2.3 下降方法的改进 一般型的 BP 算法采用的是负梯度算法[5],其权值和阀值按照网络性能函数的的负梯度 方向进行调整,并附加一使搜索快速收敛的全局极小的惯性项 80 (10) 式中 ——隐层第 i 个神经元到输出层的第 r 个神经元的权系数; ——学习速率; ——惯性系数。但是这里的下降方法却不一定是最速下降方法,为了能更好的寻到最优解, 下降方法采用共轭梯度法,这里下降的方向会具有一定的共轭性,进而提高算法的准确性和 可靠性。 85 这里面采用了 Polak-Ribiere 线性搜索方法,本文就是在原来权值的改变量上面乘以一个 量 (搜索方向),用于修正权值,其中的 式中: 为 E(rin(理想输入)-yout(实际输出)对 (权值)的梯度 。 为 (11) 共轭因子, 90 其它的参数不变。 (12) 3 选用遗传算法优化 BP 神经网络的权值 遗传算法[6]是基于仿生物种进化的思想进而提出的全局搜索算法。选用选择、交叉、变 异等基于遗传算法操作的进化过程来选取最优解[7]。本文使用遗传算法来对神经网络 PID 的 权值进行优化,从而解决 BP 神经网络的权值初始值需要经验选择这一缺点。对于啤酒的发 95 酵过程来说,它是分为好几个阶段的,不同的阶段都会让 BP 神经网络 PID 需要不同的初始 权值,为此应在每个发酵阶段的初始都进行遗传算法的优化,对于遗传算法的具体过程如下: 3.1 编码方法 在本论文中需要优化的有输入层与隐含层的权值和隐含层与输出层的权值,用二进制的 100 编码方式,编出一条链 S=R*S1+S1*S2+S1+S2(这里面的 S 为整个链,R、S1、S2 分别为 - 3 - xxxeeexxg))tanh(1(21)()sin(*5.0)(xxeeexgxxx)(sin)cos(*)sin(*5.02xxxx)1()()()3()3()3(kkJkiriri)3(rikP1kkkkPgPkgk)(kEk111)(kTkkkTkkggggg
中国科技论文在线 输入层、隐含层、输出层的神经元个数)。 3.2 适应度函数 http://www.paper.edu.cn 适应度函数[8,9]是评价染色体优化优劣程度的,它设计的好坏关系到遗传算法能否正确 的进行全局搜索。在啤酒的发酵过程中控制器的稳定性、快速性、稳态误差都非常的重要, 105 为此加入惩罚措施,在适应度函数的分母中加入输出超调和上升时间,使系统更好的满足控 制要求,适应度函数设计如下: (tss 为上升时间相关的变量,es 为均方差的和, v 为超调量相关的变量,在 tss 的值小于 SE=es +tss+v (13) 设定的值的时候就变为 0) 110 3.3 gaot 工具箱 本文的遗传算法使用了 gaot 工具箱,调用函数的语句如下:[x,endPop,bPop, trace]=ga(aa,‘gabpEval’,[],initPpp,[1e-6 1 1],'maxGenTerm‘,gen’,normGeomSelect‘, [0.09],['arithXover'],[2],'nonUnifMutation’,[2 gen 3]),其中的交叉、变异的概率分别为 0.95、 0.08。 115 3.4 算法的流程 流程如下: (1)、将 BP 神经网络 PID 分成信息前馈过程和误差反馈过程,首先只进行前馈过程, 随机输入权值。 (2)、建立初始的种群,随机的产生一组数值分布,对神经网络开始输入的权值进行 120 编码,形成一个字符串,进而产生一个初始码链。 (3)、染色体目标函数的选取将非常的重要,为了满足控制要求(快速性、稳定性、 稳态误差),里面包括误差平方差和上升时间和超调相关的变量,对每一项进行相应的权重 分配(根据每项参数对系统性能的影响程度来进行选择),相应的适应度函数取目标函数的 倒数。 125 (4)、在种群中选出最优体(就是相应的适应度最大的个体),将它遗传到下一代。 (5)、对当前一代的个体进行选择、交叉、变异等操作,直到产生下一代群体。 (6)、如果群体的适应度满足要求,或则达到了进化的代数就停止进化,否则再回到 第三步。 (7)、将种群中最后适应度最优的个体进行解码处理,然后再用这些解码后的值作为 130 BP 神经网络的初始权值(此前的过程在啤酒的实际发酵中对应的是需要提前用已知数据用 遗传算法和神经网络进行优化和训练,从而得到不同阶段的初始权值),这时候开始进行误 差反馈调节(进行神经网络的在线整定过程),这时候再进行 BP 神经网络的局部寻优过程, 进行 BP 神经网络 PID 的在线整定。(此时并不需要遗传算法的参与)。 遗传算法算法优化神经网络 PID 的结构图如下: 135 - 4 -
中国科技论文在线 http://www.paper.edu.cn 图 2 遗传算法优化神经网络 PID 控制器 3.5 仿真实验部分 本实验采用原型是微型的啤酒生产系统 ,数学模型为 : 140 (14) 其中的 为发酵液温度℃, 为冷媒流量 。先进行信息前馈过称,用遗 传算法进行全局寻优,再用优化好的权值进行神经网络 PID 的在线整定过程,神经网络 PID 的输入为 r(给定的输入)、y(实际的输出)、e(给定输入与实际输出的误差),1(起到 稳定系统的作用)中间的隐含层的神经元的个数为 5 个,输出为 、 、 三个参数,输 145 出的参数是通过在线的误差值来进行调整。 整个的仿真是在 Matlab 中的 m 文件中进行的,运行时间为 4000s.在将近 2200s 的时候 加入高度为 0.5 的扰动信号。下面为遗传算法的适应度值的图像和对阶跃信号的跟踪图像。 150 图 3 适应度曲线 Fig. 3 Adaptation Curve - 5 - PID被控对象执行器BP-NN+eKpKiKduyGA优化BP神经网络的权值导入优化好的权值只进行前馈过程,用遗传算法进行全局寻优加入误差反馈调节r-8712()1.0457()()656.5s63.41sVseGsQss)(1s)(sQvsm/3pkikdk01020304050607080901000.240.260.280.30.320.340.360.380.40.42GenerationFittness
中国科技论文在线 http://www.paper.edu.cn 155 控制器 超调量 上升时间 峰值时间 图 4 扰动信号参与的响应曲线 Figure 4 Response Curve of Disturbance signal Participation 表 1 控制器的动态性能指标 Tab. 1 Controller Dynamic Performance Index PID 15% 221s 420s BP-PID 2% 140s 320s GA-BP-PID 1.4% 110s 270s 从图和表不难发现传统的 PID 的温度控制的误差非常的大,用遗传算法优化的 BP 神经 160 网络 PID 最快跟踪上,在快速性上有了一定的提高,超调量也有了一定的减小,在受到扰 动的情况下能快速的恢复稳定,鲁棒性较强,所以能满足啤酒设备的要求,从而解决了传统 PID 的时滞大,非线性能力差和传统 BP 神经网络 PID 容易陷入局部极小值的缺点,使系统 的收敛速度得到提高。满足快速性、稳定性、稳态误差的几项指标要求,仿真的结果证明该 算法的适用性和有效性。 165 4 智能控制算法在啤酒发酵温度控制中的实际应用 4.1 微型啤酒生产装置介绍 本实验选取微型啤酒生产线。 170 Fig. 5 Beer Production Plant Physical Diagram 图 5 啤酒生产装置实物图 - 6 - 0500100015002000250030003500400000.20.40.60.81仿真时间(s)幅值 响应曲线图  PID  BP PID  GA BP PIDPID BP PIDGA BP PID
中国科技论文在线 http://www.paper.edu.cn 电脑通过温度传感器获知发酵罐内的温度,并在组态王上进行记录,通过 DDE 通信连 接[9],将温度数据与 VB 软件共享。组态王负责监控、记录实时的现场数据、故障报警提示 功能;VB 进行控制算法计算,输出对应控制信号的功能。 组态王监控画面如下: 175 图 6 组态王监控界面 Fig. 6 Kingview Monitoring Interface 与理想工艺曲线作比较,计算出误差。然后通过误差反向调节修改神经网络之间的权值, 反复训练学习,最后输出 PID 控制参数。由于遗传算法优化所需时间较长,所以没有编写 180 在程序中,在实际实验中,控制算法采用神经网络 PID 和 PID 相结合的方式。遗传算法用 于离线优化处理,整个流程如下图所示: 图 7 啤酒发酵过程温度控制流程图 Fig.7 Beer Fermentation Temperature Control Flow Chart 185 控制算法计算出对应时刻输出的控制量,以线性关系转换成数字电压信号,通过 PLC 和 PLC 模块转换成控制变频器频率的信号,利用变频调速的概念,使酒精泵中的电机转速 发生改变,从而改变酒精水的流速,进而降温,循环进行着,使得温度控制在理想的范围内。 整个发酵温度的控制过程如下图所示: - 7 - 是否有偏差控制算法每秒执行一次开始控制信号是否过高停止限幅初始化,设计工艺曲线否是是采集发酵罐温度与工艺曲线对应时刻温度作比较否是否满足设定条件否反向调节修改权值
中国科技论文在线 http://www.paper.edu.cn 190 图 8 啤酒发酵过程系统示意图 Fig. 8 Beer Fermentation System Diagram 4.2 啤酒发酵实际运行测试 由于啤酒发酵所需的时间较长(一般会持续 15 天左右),所以实验的次数并不多。本 文的主要目的是验证所提出的控制算法是否具有可行性。下图为完整的发酵过程温度曲线。 195 图 9 神经网络 PID 控制发酵罐温度的实时曲线 Figure 9 Real-time Fermenter Temperature Curve of Neural Network PID Control 从图可知,采用遗传算法优化的神经网络 PID 控制算法可以良好的完成对温度曲线的 控制,除自然升温阶段产生最大误差为 0.6℃,其它阶段误差基本保持在 0.4℃以内,满足发 200 酵过程温度控制的要求。 5 结论 本文针对啤酒发酵过程大惯性、大时滞、非线性、等特点,提出了可以应对啤酒发 酵过程的控制算法,对不同阶段的温度进行不同的权值优化过程,通过改变神经网络权值使 得输出 PID 参数实时的发生改变,从而得到更好的控制参数。对啤酒发酵的数学模型进行 205 了 MATLAB 仿真,仿真结果证明了它具有实时性强、超调量小、抗干扰性强等优点,并将 算法在实际设备上进行应用,实验结果证明遗传算法优化的神经网络 PID 控制算法可以满 足啤酒发酵温度控制的要求。 210 - 8 - 离心式水泵酒精水发酵罐变频器PLC模拟IO口220V交流电控制信号传感器PLCPLCPLC输入模块电脑组态王监控软件VB程序软件DDE
分享到:
收藏