施建中, 梁绍华
(南京工程学院能源与动力工程学院, 南京 211167)
神经网络由于其较强的学习能力,被广泛应用于非线性系统辨识与控制中,而实际对象充满了不确定因素,很多问题往往不能用精确的数学模型来描述.模糊系统利用专家的知识经验,通过自然语言去解决数学问题,自从自适应模糊神经网络(adaptive-network-based fuzzy inference system, ANFIS)提出以来[1],该理论的研究与应用得到了长足的发展。很长时间内模糊设计网络都是基于传统的一型模糊逻辑系统,随着模糊集合理论的发展以及一型模糊逻辑系统在描述客观世界不确定性的不足,二型模糊逻辑系统理论和应用近些年成为模糊理论的研究热点。二型模糊集合理论最早由Zadeh[2]于1975年提出,其最早应用于词计算方面。Mendel[3]将二型模糊集合理论做了深入研究,将其研究领域扩展到控制领域。
随着二型模糊逻辑系统在非线性系统辨识与控制方面的研究深入,关于二型模糊神经网络在非线性系统辨识与控制的研究逐渐增多[4-6]。目前二型模糊神经网络的结构主要包括固定网络结构[7-8]、结构自调整二型模糊神经网络[9-10]、自进化二型模糊神经网络[11-12]、自组织区间二型模糊神经网络[13-15]等。区间二型模糊神经网络的结构一旦确定,接下来就需要进行网络参数的学习,目前使用最多的参数学习算法为反向传播(back propagation,BP)算法,但是BP算法对初值敏感,不恰当的初值会导致算法发散或者收敛于非最优解。
区间二型模糊逻辑系统与传统模糊逻辑系统的结构类似,但其需要一个关键步骤,即降阶。降阶过程首先将二型模糊集合降为一型模糊集合,在利用常规的一型模糊集合的解模糊化方法得到最终区间二型模糊系统的精确输出。目前大部分的区间二型模糊神经网络系统都采用Karnik-Mendel (KM)降阶算法[16],该降阶算法是一迭代寻优算法,首先需要进行离散点的按大小排序,这样与之对应的隶属度也要做相应的改动,降阶得到两个切换点,且每次的切换点不一定相同,这样利用BP算法学习参数的时候,过程较为烦琐,没有统一的学习公式。
现提出一种基于模糊C均值(fuzzy C means, FCM)聚类算法的区间二型模糊神经网络辨识算法,利用FCM算法得到训练数据的最佳聚类数目,该数目也即神经网络的层数。模糊隶属度函数选择高斯型,FCM算法得到的聚类中心用来初始化高斯隶属度函数的中心,而高斯隶属度函数的宽度则通过FCM聚类算法的聚类中心和训练数据针对每一类的隶属度计算得到。本文算法首先通过FCM聚类算法确定二型模糊神经网络的结构,然后利用一种直接降阶算法,避免KM降阶算法的迭代过程,简化BP算法的学习过程。通过2个非线性系统的辨识结果表明,本文提出的算法简化了区间二型模糊神经网络的结构辨识以及BP算法的学习过程,具有较高的辨识精度以及较快的收敛速度。
区间二型模糊神经网络的结构和传统的神经网络结构类似,分为四层,第一层为输入层,第二层为隶属度函数层,该层的输入为系统的输入,输出为输入变量的隶属度函数,由于是区间二型模糊集合,那么该隶属度输出为一区间。第三层为模糊推理层,输入为规则中输入变量的二型模糊隶属度,输出为规则的激发隶属度,同样也为一区间。第四层为输出层,输入为规则的激发隶属度,输出为系统的输出,第三层和第四层的连接权重即为模糊规则的后件参数。按照后件参数的不同,区间二型模糊系统分为Mandani和T-S模糊模型形式,本文的模糊模型后件参数为Mandani形式,一般的区间二型模糊神经网络的结构如图1所示。
图1 二型模糊神经网络结构图Fig.1 Structure of interval type 2 fuzzy neural network
假设二型模糊神经网络有M条规则,第k个规则Rk可表示为
考虑多输入单输出二型模糊神经网络,一共为四层,多输入多输出二型模糊神经网络可通过多个多输入单输出网络组成,结构类似。
多输入单输出神经网络每层分别描述如下。
(1)
高斯型二型隶属度函数可通过模糊化中心mki或者宽度σki表示,如果模糊化中心mki,则隶属度函数的上、下限可分别表示为
(2)
(3)
如果模糊化中心σki,则隶属度函数的上、下限可分别表示为
(4)
(5)
现选择第二种形式的高斯型隶属度函数,即式(4)和式(5)。
第三层为模糊推理层:神经元个数为M个,每个神经元输出可表示为
(6)
(7)
yl和yr通过区间二型模糊集合的KM降阶算法求出,具体KM降阶算法可参考文献[16]。
模糊C均值聚类算法是一种无监督学习算法,其目标函数为
s.t.U∈Mfc
(8)
根据拉格朗日乘子法,FCM聚类算法其具体的实现步骤如下。
初始化:给定聚类类别数c,2≤c≤n,n是样本个数,设定给定停止阈值ε、最大迭代次数Cmax、初始化聚类中心P0,设置迭代计数器r=0。
步骤1用式(9)计算第r+1次迭代的模糊划分矩阵U(r+1)。
(9)
步骤2用式(10)计算第r+1次迭代的聚类中心P(r+1):
(10)
步骤3如果‖P(r+1)-P(r)‖<ε或者迭代次数大于Cmax,那么算法停止,最后一次迭代的值就是模糊划分矩阵U和聚类中心P,否则令r=r+1,转向步骤1,其中‖·‖为某种合适的矩阵范数。
本文提出的区间二型模糊神经网络参数训练方法利用BP算法,优化的目标函数为
(11)
(12)
(13)
(14)
(15)
(16)
根据复合函数求导,各参数的学习算法分别为
(17)
(18)
(19)
(20)
(21)
(1)设置二型模糊神经网络的模糊规则数目M。
(3)利用式(22)初始化高斯隶属度函数的参数:
(22)
(5)如果所有训练数据的误差平方根(root square error, RSE)之和J,如式(23)所示,小于给定的截止误差ε或者迭代次数达到了最大迭代次数I,则结束训练过程;否则t=t+1,转步骤(4)。
(23)
本例选择如下离散非线性动态系统:
(24)
图2 本文算法和原系统输出曲线Fig.2 Algorithm of this paper and original system outputs curves
图3 本文算法和原系统误差曲线Fig.3 Algorithm of this paper and original system errors curve
图4 本文算法性能曲线(均方根误差)Fig.4 Algorithm of this paper performance curve (root mean square error)
表1显示了本文算法和其他辨识算法的基于均方根误差的性能比较结果。比较的准则选择的是训练数据和验证数据的均方根误差。
表1中比较的辨识算法包括文献[17]提出的基于BP和混合训练算法的区间二型模糊神经网络(interval type 2 fuzzy neural networks, IT2FNN),文献[18]提出的动态模糊神经网络(dynamic fuzzy neural networks, DFNN),文献[19]提出的广义动态模糊神经网络(generalized dynamic fuzzy neural networks, GDFNN),文献[20]提出的自组织模糊神经网络(self-organizing fuzzy neural networks, SOFNN),文献[21]提出的基于遗传算法的自组织模糊神经网络(self-organizing fuzzy neural networks based on genetic algorithms, SOFNNGA)以及文献[6]提出的自组织区间二型模糊神经网络(self-organizing interval type-2 fuzzy-neural-network, SOIT2FNN)。
本例选择如下离散非线性动态系统:y(k+1)=g[y(k),y(k-1),y(k-2),u(k),u(k-1)],其中,g
表1 不同辨识算法性能比较Table 1 Different identification methods performance comparison
注:“-”代表相关数据缺失。
共选择900组训练数据组,前350组的输入信号u(k)为均匀分布在[-1,1]上的随机数,剩下的输入信号u(k)为1.05sin(πk/45)。验证数据的输入信号u(k)描述为
(26)
在仿真中,模糊规则数目M=4。图5显示了验证数据本文算法的模糊神经网络输出和原系统的输出曲线,图6显示了验证数据二者的误差曲线,图7显示了迭代次数的目标函数曲线。
图5 本文算法和原系统输出曲线Fig.5 Algorithm of this paper and original system outputs curves
图6 本文算法和原系统误差曲线Fig.6 Algorithm of this paper and original system errors curve
图7 本文算法性能曲线(均方根误差)Fig.7 Algorithm of this paper performance curve (root mean square error)
表2显示了本文算法和其他辨识算法的性能比较。比较的准则选择的是验证数据的均方根误差。
表2中比较的辨识算法包括文献[22]提出的基于TSK模型的递归模糊神经网络(TSK-type recurrent fuzzy network, TRFN-S),文献[23]提出的递归自进化模糊神经网络(recurrent self-evolving fuzzy neural network, RSEFNN),文献[24]提出的基于TSK和FUL(functional-link-based)模型的交互递归自进化模糊神经网络(interactively recurrent self-evolving fuzzy neural network, IRSFNN)以及文献[25]提出的同步递归区间2型神经模糊系统(mutually recurrent interval type-2 neural fuzzy system,MRIT2NFS)。
针对区间二型模糊神经网络结构辨识复杂以及BP参数依赖初始值的问题,提出了一种基于FCM聚类算法的区间二型模糊神经网络辨识算法。首先利用FCM聚类算法得到训练数据的中心和隶属度,将其赋初值给二型模糊系统的高斯隶属度函数的中心和宽度以及后件参数。其次利用一种直接二型模糊集合的降阶算法,简化了BP算法训练网络参数的流程。仿真结果表明,本文提出的算法学习过程简单,辨识精度较好,收敛速度较快。
表2 不同辨识算法性能比较Table 2 Different identification methods performance comparison