法律状态公告日
法律状态信息
法律状态
2020-06-23
未缴年费专利权终止 IPC(主分类):G05B13/04 授权公告日:20160928 终止日期:20190709 申请日:20140709
专利权的终止
2016-09-28
授权
授权
2014-12-10
实质审查的生效 IPC(主分类):G05B13/04 申请日:20140709
实质审查的生效
2014-11-05
公开
公开
技术领域
本发明涉及一种基于模糊神经网络的室温控制算法,属于空调自动控制领域。
背景技术
空调房间系统是一个复杂的控制对象,具有非线性、大时滞、强耦合以及时变的特性,且还受到很多不确定性干扰,如室内人员流动,各种电器设备发热以及门窗的开闭等。
目前,PID控制因其原理简单、适用性强、鲁棒性强而被广泛应。但是,PID在控制非线性、时变、耦合以及参数和机构不确定的复杂过程时,表现较差。
智能控制具有自学习和自适应能力,对线性与非线性系统都有较好的控制效果,能很好解决空调系统这种复杂系统的控制。其中,神经网络和模糊控制是智能控制两个重要的分支。
神经网络是模仿生物神经网络结构和功能的一种运算模型,由大量神经元联结而成,是一种非线性动力学系统。神经网络具备非线性逼近能力、学习能力、自适应能力和容错能力。但是,神经网络不适合表达基于规则的知识。
模糊控制以模糊逻辑与推理模拟人类思维并进行知识处理,它是基于语言型控制规则的控制,对动态特性不易掌握或变化显著的控制对象很适用。但是,由于模糊性的增加会丢掉部分信息,且难以进行学习并建立完善的控制规则,缺乏自适应能力。
发明内容
本发明提供了一种模糊神经网络算法,通过该算法对空调房间温度进行实时控制。本发明采用的技术方案如下:
基于模糊神经网络的室温控制算法,包括以下步骤:
1)构建模糊神经网络控制器;
2)采用遗传算法-粒子群算法进行离线学习;
3)采用BP算法,并引入动量项,建立所述步骤1)的控制器中的连接权值,高斯铃型隶属度函数的中心值及宽度的自适应学习算法,在线实时调整所述步骤1)的控制器,使控制器适应房间温度变化并跟踪温度设定值。
前述的步骤1)的模糊神经网络控制器由前件网络和后件网络构成,
所述前件网络包括四层网络结构如下:
第一层:输入层,用于输入变量x1,x2,表达式如下:
>
其中,x1为跟踪误差,c(t)为温度设定值,y(t)为温度实际检测值,x2为跟踪误差的导数;
第二层:模糊化层,用于将输入变量x1、x2分别划分7个模糊子集,所述模糊子集的隶属度函数均采用高斯铃型函数,分别为:
>
其中,cij和σij(i=1,2,…,n,j=1,2,…,mi)分别为隶属度函数的中心和宽度,n为输入变量个数,mi为输入变量xi的模糊分割数;
第三层:模糊规则计算层,用于完成模糊推理操作,采用的模糊算子为连乘算子,计算公式如下:
>
其中,j1=j2=j,i=1,2,…,m,m=m1×m2;
第四层:归一化层,用于实现归一化操作,计算公式如下:
>
所述前后件网络包括三层网络结构如下:
第一层:输入层,该层共有3个节点,第一个节点的输入值为x0=1,第二、三个节点分别输入变量x1,x2;
第二层:用于计算每一条规则后件,即
>
>为连接权值;
第三层:用于计算控制器输出y:
>
前述的步骤2),离线学习包括以下步骤:
2-1)进行种群参数初始化;
2-2)根据式(9)计算粒子适应度F;
F=abs(y-c) (9)
2-3)寻找个体极值和群体极值;
2-4)进行速度更新和位置更新;
2-5)计算速度和位置更新后的粒子适应度;
2-6)更新个体极值和群体极值;
2-7)当前个体与个体极值交叉,适应度值减小,则接受;
2-8)当前个体与群体极值交叉,适应度值减小,则接受;
2-9)当前个体自身进行变异,适应度值减小则接受;
2-10)满足最大进化代数则结束,否则返回步骤4)。
前述的步骤3)中,
连接权值
>
中心值cij的学习算法为:
cij(k+1)=cij(k)+Δcij(k+1)+υ(cij(k)-cij(k-1)) (20)
宽度σij的学习算法为:
σij(k+1)=σij(k)+Δσij(k+1)+υ(σij(k)-σij(k-1)) (21)
其中,υ为动量因子,k为第k个样本,E为误差代价函数:
本发明把神经网络的学习与计算功能融入模糊系统,将模糊系统类人的IF-Then规则嵌入神经网络,在保持模糊控制系统较强的知识表达能力的同时又提高其自适应能力,并具有自学习能力。
附图说明
图1为本发明的基于模糊神经网络的室温控制算法框图;
图2为本发明的模糊神经网络结构示意图;
图3为本发明的GA-PSO离线学习算法流程图。
具体实施方式
下面结合附图和具体实施方式详细说明本发明。
如图1所示,本发明的基于模糊神经网络的室温控制算法,主要内容如下:
设计一个双输入单输出的模糊神经网络控制器,通过实时检测房间温度跟踪输出与温度设定值,结合在线学习机制实时调整控制器中可调参数,使之适应房间温度变化并跟踪温度设定值。图中,u(t)表示控制量,此处du/dt表示后移算子的功能,亦即求取u(t-1),上一时刻的控制量。FNN表示模糊神经网络控制器。K表示模糊神经网络控制器的比例系数,该参数根据运行结果不断调整。
本发明的双输入单输出的模糊神经网络控制器的结构可根据模糊规则及其物理意义确定。
控制器的学习阶段分为离线学习与在线学习阶段。离线学习阶段是通过对以前系统运行数据的学习来初步确定该模糊神经网络中需要学习的权值和隶属度函数中心和宽度。这些确定值并不十分精确,然后将这个参数结构初步确定的控制器通过在线学习阶段的BP算法来精确调整,使控制性能更优。离线学习采用改进粒子群算法,即遗传算法-粒子群算法,在线学习为BP算法。BP算法过度依赖网络初始值,不佳的初始值可能导致效果很差或根本不收敛。此外,BP算法全局搜索能力较差,极易陷入局部极小。将PSO与BP算法结合,既能保证学习全局收敛性,又可克服梯度法对初始值的依赖和局部收敛问题,还克服了单纯粒子群算法造成的随机性、概率性问题。
如图2所示,模糊神经网络有由前件网络和后件网络构成,前件网络匹配模糊规则前件,后件网络产生模糊规则后件。
前件网络为四层网络结构。
第一层:输入层,此处输入变量x1,x2,该层节点数N1=2。
>
其中,x1为跟踪误差,c(t)为温度设定值,y(t)为温度实际检测值,x2为跟踪误差的导数。
第二层:模糊化层,将输入变量x1、x2分别划分7个模糊子集{NB,NM,NS,O,PS,PM,PB},作为该层的节点,每个节点代表一个语言变量值。它们的隶属度函数均采用高斯铃型函数,各语言变量的隶属度函数分别为:
>
式中,cij和σij分别为隶属度函数的中心和宽度。i=1,2,…,n;j=1,2,…,mi。n为输入变量个数,本发明中,n=2;mi为输入变量xi的模糊分割数,本发明中,m1=m2=7。该层节点数N2=m1+m2=14。
第三层:模糊规则计算层,该层完成模糊推理操作,由于有x1,x2两个输入,故模糊推理操作便是将两个模糊化后的输入量进行连乘运算,采用的模糊算子为连乘算子。
>
式中,αi(i=1,2,…,m)表示模糊推理操作的计算结果,j1=j2=1,2,…,7;,m=m1×m2=7×7=49。该层节点数N3=m=49。
第四层:归一化层,该层节点数与第三层节点数相同,N4=N3=49,主要实现归一化操作。
>
后件网络如图2所示为三层网络结构。
第一层:输入层,它是将输入变量传递给第二层。该层共有3个节点,输入层中第一个节点的输入值为x0=1,它的作用是提供模糊规则后件中的常数项,第二、三个节点分别输入x1,x2。
第二层:共有49个节点,每个节点代表一条规则,该层作用是计算每一条规则后件,即
>
>为连接权值,是待学习的量。
第三层:计算控制器输出y:
>
易知,模糊神经网络输出y是各个模糊规则后件的加权,加权系数是各个模糊规则归一化后的使用度,也即前件网络的输出为后件网络的连接权值。
T-S模糊神经网络学习算法的离线学习阶段:离线学习阶段是为了给在线学习时提供一个优良的网络初值,因为在线学习算法—BP算法非常依赖初始值的选取,初值较优训练效果更好。离线学习采用改进的粒子群算法,即GA-PSO算法。
粒子群算法是一种群智能优化算法,最早由Kennedy和Eberhart于1995年提出。它源于对鸟类捕食行为的研究,鸟类捕食时,每只鸟找到食物的方法就是搜寻当前距离食物最近的鸟的周边区域。
标准粒子群算法首先在可行解空间中随机初始化一群粒子,每个粒子都代表极值优化问题的一个潜在最优解,用位置、速度和适应度值三项指标表示该粒子特征,适应度值由适应度函数计算得到,其值的好坏表示粒子的优劣。粒子在解空间中运动,通过跟踪个体极值Pbest和群体极值Gbest更新个体位置,个体极值Pbest表示个体所经历位置中适应度值最优的位置,群体极值Gbest表示种群所有粒子搜索到的适应度值最优的位置。
假设在一个D维的搜索空间中,由n个粒子组成的种群X=(X1,X2,…,Xn),其中第i个粒子表示为一个D维的向量Xi=(xi1,xi2,…,xiD)T,代表第i个粒子在D维搜索空间中的位置,也代表问题的一个潜在解。第i个粒子的速度为Vi=(Vi1,Vi2,…,ViD)T,其个体极值Pi=(Pi1,Pi2,…,PiD)T,种群全局极值Pg=(Pg1,Pg2,…,PgD)T。
标准粒子群算法的速度和位置更新公式如下:
>
>
式中,ω为惯性权重;d=1,2,…,D;i=1,2,…,n;k是当前迭代次数;Vid为粒子的速度;c1和c2是加速度因子,为非负常数;r1和r2为分布于[0,1]的随机数。
本发明采用的适应度函数为预测输出和期望输出之间的误差绝对值作为个体适应度值F,计算公式为:
F=abs(y-c) (9)
其中,y为预测输出,c为期望输出。
标准粒子群算法通过追随个体极值和群体极值完成极值寻优,虽然操作简单,能快速收敛,但是随迭代次数的递增,在种群收敛集中的同时,各粒子也越来越相似,可能在局部最优解附近无法跳出。混合粒子群算法摒弃标准粒子群算法中的通过跟踪极值来更新粒子位置的方法,而是引入了遗传算法中的交叉和变异操作,通过粒子同个体极值和群体极值的交叉以及粒子自身变异的方式来搜索最优解。
交叉操作采用实数交叉法,随机选择第i个个体极值和群体极值与第i个个体的交叉位j,然后进行交叉,方法如下:
xij=xij(1-b)+Pijb (10)
xij=xij(1-b)+Pgj (11)
式中,b为[0,1]间的随机数。
粒子自身变异操作先随机选取第i个个体变异位置j,然后进行变异,方法如下:
>
式中,xmax为xij的上界;xmin为xij的下界;f(g)=r2(1-g/Gmax)2;r2为一个随机数;g是当前迭代次数;Gmax是最大进化次数;r为[0,1]的随机数。
本发明的遗传算法-粒子群算法的具体过程如图3所示,主要步骤为:
1)进行种群参数初始化,本发明的种群参数为各个粒子的初始位置;
2)根据式(9)计算粒子适应度;
3)寻找个体极值和群体极值,即找出个体最小适应度值和全局最小适应度值;
4)根据式(7),(8)进行速度更新和位置更新;
5)根据式(9)计算粒子适应度;
6)根据式(7),(8)更新个体极值和群体极值;
7)根据式(10),当前个体与个体极值交叉,适应度值减小,则接受;
8)根据式(11),当前个体与群体极值交叉,适应度值减小,则接受;
9)根据式(12),当前个体自身进行变异,适应度值减小则接受;
10)满足最大进化代数则结束,否则返回步骤4)。
T-S模糊神经网络学习算法的在线学习阶段:在线学习采用BP算法。
由于各输入变量的模糊分割数预先确定,故需学习的参数主要是后件网络的连接权值
定义误差代价函数E为:
式中,c为期望输出,y为实际输出。
关于连接权值
>
>
其中,j=1,2,…,m;i=1,2;k=1,2,…,r,k为第k个样本,r是训练样本总数。
然后探讨中心值cij和宽度σij的学习算法。此时连接权值
>
>
>
>
以上各式中,η>0为学习速率。
标准BP算法收敛速度较慢、目标函数存在局部极小问题。如今已有多种方法可对以上问题进行改进,比较常用的方法有两种:当引入动量项时,BP算法可以找到更优解;当引进自适应学习速率后,BP算法可适当缩短训练时间。故本文将两者结合,此时,连接权值中心值cij和宽度σij的学习算法为:
>
cij(k+1)=cij(k)+Δcij(k+1)+υ(cij(k)-cij(k-1)) (20)
σij(k+1)=σij(k)+Δσij(k+1)+υ(σij(k)-σij(k-1)) (21)
式中,υ为动量因子,>>
机译: 基于2型模糊神经网络的废水处理过程的合作控制方法
机译: 基于模糊神经网络的水平预测和控制水位的方法
机译: 基于2型模糊神经网络的污泥膨胀智能识别方法。