APP下载

基于改进果蝇神经网络的数控工作台PID控制

2019-10-31甘润林陈良洲陈有林

组合机床与自动化加工技术 2019年10期
关键词:控制参数工作台果蝇

甘润林,陈良洲,陈有林

(华中科技大学 机械学院,武汉 430074)

0 引言

传统PID控制工作原理简单,可操作性强,适用于固定模型的线性控制,因此在工业生产中得到了广泛的应用[1-2]。数控工作台的速度控制系统其模型不固定,结构复杂,具有非线性、高阶的特点,同时对外界的干扰比较敏感,适用于线性系统的传统PID控制已经不能满足数控工作台高质量的速度控制需求。国内外学者以及科研人员对于非线性PID控制进行了大量的研究工作。文献[3]提出一种增量式PID控制方法,该方法具有误动作小,不会产生积分失控,但是该方法的缺点也很明显,其较大的积分截断效应会造成溢出影响较大。文献[4]提出了一种模糊PID控制方法,利用模糊控制理论,提高伺服控制系统的抗扰能力,减小超调,但是该方法过多依赖于初始控制参数的设置。文献[5]利用神经网络的自主学习能力,根据输出量的变化情况,智能化调控控制参数,但是在使用的过程中,神经网络存在收敛速度慢同时容易陷入局部最优值等情况。文献[6]提出利用遗传算法较好的全局搜索性能,得到最优的初始控制参数值,但该方法搜索到一定阶段后,会出现所得的参数相似度高,易收敛于全局较优解。

果蝇优化算法(FOA)是在粒子群等群智能算法的基础上发展而来,是一种基于果蝇觅食行为从而推演出寻求全局优化的新方法[7-8]。但是传统的果蝇优化算法,由于寻优步长值固定,容易陷入“早熟”,得到局部最优解,而无法寻找到全局最优解。为此,本文提出一种自适应步长果蝇优化算法(AFOA),利用该算法可以跳出局部最优,快速寻找到全局最优解,实现全局搜索能力以及搜索精度的提高。利用柯西分布和指数分布相结合的方法对果蝇优化算法的寻优步长进行改进,对神经网络的初始权值和阀值进行优化,将自主学习后的结果应用于工作台伺服控制系统中,对数控工作台实际不同的工况变化,实现工作台伺服控制系统参数的智能化控制。对比传统PID控制、普通果蝇神经网络PID控制,仿真实验结果表明改进的果蝇神经网络PID控制能够有效的提高动态响应时间,降低系统超调量。

1 数控工作台模型

数控工作台具有功率小、行程大等特点,需要较高的控制精度。控制系统一般由传动系统、工作台、检测系统、数控系统等子系统构成[9-10]。通过对检测系统传递的数据进行分析处理,控制电机运转,保证工作台安全、高效、稳定的运行。检测系统主要由速度检测和位置检测两部分构成,利用速度反馈和位置反馈实现伺服系统的双闭环控制,具体检测系统检测流程如图1所示。

图1 检测系统示意图

其中外环为位置控制环;内环为速度控制环,内环超调、跟踪等性能的好坏将直接影响到外环位置环的位置控制,在此提出将改进的果蝇神经网络作为速度内环控制策略。图2为改进果蝇神经网络PID控制系统的结构图,控制器无需被控对象提供精确的数学模型。该控制系统由传统的PID控制和改进果蝇神经网络组成,将转速偏差e(t)和偏差变化率de/dt作为该控制系统的输入变量,将控制系统的控制参数作为输出变量,针对不同的e(t)和de/dt,神经网络进行智能化参数控制,从而满足控制性能要求。

图2 改进果蝇神经网络PID复合结构

2 改进果蝇神经网络模型

BP神经网络是采用误差进行反向传播的多层前馈神经网络模型。理论上,只要BP神经网络隐含层节点数量足够多,则任意非线性系统的模型,都可以利用神经网络的自学习能力进行误差最小逼近。但是BP神经网络在使用过程中存在着收敛速度慢,容易产生局部最优值等情况。因此考虑利用改进的果蝇算法优化BP神经网络的学习过程,弥补BP神经网络的不足。

2.1 基本果蝇算法

果蝇优化算法模拟果蝇觅食的过程,利用果蝇在觅食中敏锐的嗅觉行为和视觉行为进行全局迭代寻优。该优化算法可以实现更快的寻优和更好的寻优精度,在多个领域得到了广泛的应用。针对BP神经网络存在的问题,本文提出改进的果蝇优化算法作为BP神经网络的学习算法,从而得到更好的寻优结果。根据基本果蝇算法的特点,其步骤可以分为以下几部分[6]:

(1)初始化果蝇群体规模,迭代次数以及果蝇群体位置。

(1)

(2)给果蝇个体利用嗅觉搜寻食物的随机方向与距离。

(2)

其中,η为果蝇个体利用嗅觉搜索的步长值。

(3)估计食物源与原点的距离(dist),再计算味道浓度判定值(s)。

(3)

(4)利用浓度判定函数(fun)计算果蝇个体在该位置的味道浓度(smell)。

smell(i)=fun(si)

(4)

(5)得到该果蝇群体中味道浓度最高的果蝇。

[bestSmellbestindex]=max(smell)

(5)

(6)保留最佳味道浓度值与坐标,此时果蝇群体利用视觉飞往该位置。

(6)

(7)进入迭代寻优,重复执行步骤(2)~(5),并判断味道浓度是否优于前一迭代味道浓度,若是则执行步骤(6)。

2.2 自适应步长的果蝇优化算法(AFOA)

步长值η越大,搜索空间越大,搜索能力也就越强,但局部寻优能力就会随之减弱;步长值η越小,搜索的能力就越弱,搜索时越易陷入局部最优。合理的步长值不仅需要具备较强的全局搜索能力,同时也需要具有较好的局部寻优能力。步骤(2)中,传统果蝇优化算法将步长值η设为固定值,容易造成早熟收敛,很难得到全局最优值。因此为了保证改进果蝇优化算法的有效性,选取适合的步长值至关重要。

柯西分布是统计学中一个独特的连续型分布形式,该分布具有期望、方差均不存在的特点。Liu等人说明[11],柯西变异取样的变异步长可以让算法具备更好的全局搜索能力。指数分布的步长变化可以减小搜索范围,提高搜索精度。

(7)

通过步长值η的变化来使果蝇算法的搜索半径由固定值变为自适应变化值,步长值具体变化形式如下:

(8)

η0为初始步长值;β为权重系数;gen为当前迭代次数。

显然,改进的果蝇算法在迭代初期具有最大的搜索步长,对应的搜索能力强,且在觅食末期通过缩小搜索半径,实现最大的搜索精度。进而实现全局搜索能力以及搜索精度的提高。

2.3 仿真验证

为验证改进优化的果蝇算法的寻优效果,以一个函数作为例子进行分析,如式(9):

(9)

该函数的特点是在定义域内存在一个全局最大值。在MATLAB中分别用普通果蝇算法和改进果蝇算法得到其曲线收敛如图3所示。可以看出,改进优化果蝇算法的收敛效果优于普通果蝇算法,寻优效果较好。

图3 适应度进化曲线

2.4 模型建立

本文采用单隐含层的三层神经网络结构。其中输入层有2个节点,输出层为3个节点。隐含层节点数综合考虑训练速度和预测精度,根据隐含层节点数的经验公式(10),确定最优隐含层节点数为5。

(10)

上式中,m为隐含层节点数;I为输入层节点数;O为输出层节点数;α为1~10之间的常数。

由于控制参数值不能为负值,所以输出层神经元转移函数Sigmoid函数应该取非负值而隐含层则无需考虑正负情况,所以Sigmoid函数可以选择正负对称。神经元转移函数选择Sigmoid函数:

(11)

果蝇群体初始化随机产生N个果蝇个体,每个个体X(i)=(x1,x2,…,xt)表示一组神经网络的连接权重和阈值,其中t表示权值和阈值的总个数,为2×5+5×3+5+3=33,即一共有33个参数。

改进的果蝇神经网络算法具体操作步骤如下:

(1)初始化神经网络结构。包括输入节点数、输出节点数、隐含节点数,设置果蝇群体的种群规模和最大迭代次数;

(2)利用浓度判定函数计算果蝇个体的味道浓度值,并保留最佳味道值的坐标和浓度值;

(3)果蝇群体内的各个果蝇向该位置飞去,同时迭代优化,每次优化后均判断味道浓度是否优于前一步迭代味道浓度。若是则重复执行第三步,直到达到预设迭代次数;

(4)将改进果蝇算法得到最佳的权值和阈值作为神经网络的初始权值和阈值,进行进一步的迭代操作,输出经训练后的神经网络的权值和阈值。

3 仿真研究

3.1 仿真建模及参数设置

采用MATLAB对数控工作台伺服控制系统进行仿真实验。在实验过程中,设计三个控制器,分别为传统PID控制器,普通果蝇神经网络PID控制器,改进果蝇神经网络PID控制器。其中果蝇神经网络PID控制模块采用独立的S函数封装而成,传统的PID控制器利用MATLAB自带的模块进行设计。

图4 AFOA-BP PID控制仿真模型

改进果蝇神经网络PID参数选取如下:果蝇种群规模gen=200,最大混合迭代次数maxgen=500,果蝇优化迭代步进值rand在[-1,1]内选取,设定初始最大步长η0=1,β=0.95。神经网络结构设置为2-5-3形式,即网络输入层有两个节点,分别为系统t时刻转速偏差e(t)和转速偏差变化de/dt;输出层有三个节点,代表控制器的控制参数;神经网络的最小学习速率设置为0.9,最大迭代次数为1000次,允许误差为0.0001,采样时间为0.01s。传统PID系统的控制参数根据多次实验设定为Kp=4,Ki=2,Kd=2。

3.2 仿真结果分析

考虑控制系统空载启动时的转速跟随性能,仿真得到如图6所示的系统转速阶跃响应曲线。当控制系统的转速稳定在1000r/min时,在t=2.5s时刻系统突加一个瞬时负载扰动,考察不同控制系统鲁棒性能,其对应的转速曲线如图所示。

初始转速为1000r/min,传统PID超调量为25.5%,在1.35s内达到稳定状态,FOA-BP超调量为5.21%,在1.18s内达到稳定,AFOA-BP超调量为2.02%,在0.84s内稳定。在2.5s时分别突加突减外部扰动,突加时,传统PID超调量为8.43%,1.41s内达到稳定;FOA-BP超调量为8.12%,0.87s达到稳定;AFOA-BP超调量为6.01%,0.56s达到稳定。

图5 阶跃信号响应测试结果

图6 突加负载响应测试结果

仿真结果可以看出:常规PID控制,以及普通果蝇神经网络PID控制的超调量比改进果蝇神经网络PID控制的超调量高,而且耗时时间更长。同时,对外界突加或突减的瞬时扰动,改进的果蝇神经网络PID控制可以根据实际运行工况变化情况,实时调整控制器的控制参数,相较于常规PID控制和普通果蝇神经PID控制,超调量更小同时恢复时间更短,具有更好的适应性和稳定性。

由上述实验可知,改进果蝇神经网络PID控制器的动态响应性能、超调量、调节精度,鲁棒性均优于传统PID控制系统。

4 结论

本文将改进的果蝇神经网络PID控制方法应用于数控工作台系统中,可以智能化调整控制系统的控制参数,从而满足工作台伺服系统在不同工作情况下的动态性能要求。仿真实验结果表明,采用改进的果蝇神经网络PID控制方法,可以实现更小的超调量、更快的动态响应、更强的鲁棒性以及控制精度,调节质量明显优于传统的PID控制。该方法在数控工作台的伺服控制环节具有良好的应用前景。

猜你喜欢

控制参数工作台果蝇
一种连体式硅橡胶按键加工用注塑模具
数控铣床特大型高精度回转工作台用轴承的加工要点分析
果蝇遇到危险时会心跳加速
2021年大樱桃园果蝇的发生与防控
智能工作台
闭式机械压力机自动交换工作台结构设计研究
小果蝇助力治疗孤独症
果蝇杂交实验教学的改进策略
PCB线路板含镍废水处理工艺研究
基于模糊控制的一阶倒立摆系统稳定控制研究