您好, 访客   登录/注册

基于细菌群体趋药性算法的T-S模糊模型辨识

来源:用户上传      作者:明飞

  摘   要:针对T-S模糊模型参数辨识困难的问题,提出了一种基于细菌群体趋药性算法的T-S模糊模型辨识算法。利用细菌躯体趋药性算法的全局寻优能力,极大减小了常规寻优算法陷入局部最优值得几率。T-S模糊模型的后件参数采用最小二乘算法,简化了辨识步骤。仿真实验表明,本文提出的算法具有较高的辨识精度。
  关键词:T-S模糊模型  非线性辨识  细菌群体趋药性  最小二乘
  T-S模糊模型能够以任意精度逼近非线性系统[1],被广泛应用于非线性系统的辨识过程。T-S模糊模型可采用很多算法,其中应用较多的是基于模糊聚类的T-S模糊模型辨识。T-S模糊模型是由一组if-then规则来描述,if部分描述的是前件参数,then部分描述的是后件参数。T-S模糊模型的辨识包括结构辨识和参数辨识,结构辨识包括输入变量的选择,输入变量模糊空间的划分等。
  FCM是应用较为广泛的聚类算法[2],其属于无监督学习算法,不需要先验知识,通过实验或者运行数据,自动进行训练数据的分类。FCM聚类算法实现简单,在T-S模糊模型的辨识中使用较多。FCM聚类算法的基本思路是将T-S模糊系统的前件部分统一为一个向量,可以避免对单个输入变量进行划分。FCM聚类算法得到的中心即为前件参数,训练数据的隶属于第i类的隶属度即为第i条模糊规则的激发隶属度。不需要分别计算每个输入变量的隶属度,在进行“乘积”或者“取小”推理,简化了模型的辨识过程。通过模糊聚类确定T-S模糊模型的前件参数,然后通过最小二乘确定后件参数。
  但是FCM聚类算法是一牛顿迭代法,其在迭代过程中易于陷入局部极值点,这样没有得到系统最优值而提前退出迭代算法,影响了系统的辨识精度。很多文献采用群体智能算法进行FCM聚类算法的寻优,可在一定程度上降低FCM聚类算法早熟的几率。常见的群体智能算法包括遗传算法、粒子群优化算法、蚁群优化算法、细菌趋药性优化算法等。
  最开始的细菌趋药性算法与常见的智能寻优算法类似,是从细菌行为中得到的一种优化算法[3]。但其仅仅依赖于单个细菌的行动轨迹,具有较大的随机性。文献[4]对其做了改进,模拟粒子群等群体智能算法,提出了一种细菌群体趋药性算法。该算法不仅继承了传统细菌趋药性算法中利用自身运动位置进行函数优化,其可以利用其他细菌的位置进行寻优,避免了单个细菌个体的随机性,大大提高了寻优效率。文献[4]指出,细菌躯体趋药性算法能够极大提高传统细菌趋药性算法的优化能力,在某些场合,其收敛速度和优化精度上还要优于其他的群体智能算法。
  本文提出一种基于细菌群体趋药性算法的T-S名模糊模型辨识算法。该算法利用细菌群体趋药性寻优算法进行FCM聚类算法的中心和求取,避免了FCM易于陷入局部最优值的缺陷,提高了寻优效果。确定了FCM聚类算法的中西即可得到每个输入向量对每条规则的激发隶属度,这样T-S模糊模型的前进参数也随之确定,在通过最小二乘算法得到T-S模糊模型的后件参数。仿真实验表明,本文提出的算法具有较高的辨识精度。
  1  T-S模糊模型
  T-S模糊模型由一组if-then规则来描述,每条规则代表了一个线性子系统,第i条模糊规则可表示为[5]:
  T-S模糊模型的前件参数的确定,如果采用单个变量的模式,那么每个输入变量都得确定一个隶属度函数,假设采取高斯型隶属度函数的话,那么每个输入变量需要确定2个高斯隶属度变量,这样需要确定的前件参数个数为2×M×c个。前进参数确定以后,那么每个输入变量的隶属度即可得到,每条规则的激发隶属度通过输入变量的隶属度进行模糊推理得到。
  如果采用向量的模式,利用FCM聚类算法进行前进参数辨识的时候,那么总共需要确定的参数个数为M×c个。FCM聚类算法的隶属度即为模糊规则的激发隶属度。
  由前描述,通过FCM聚类算法进行T-S模糊模型的辨识,且利用输入向量的模式,不仅仅前件参数数量上较少,模糊规则的激发隶属度求取也较为简单。
  2  细菌群体趋药性算法
  细菌群体趋药性算法利用单个细菌移动轨迹的信息和感知到周围同伴的位置信息,其具有普通细菌算法不易陷入局部极值的优点,也具有群體智能算法的全局搜索能力,能够很快得到最优值。
  细菌群体趋药性算法的具体描述如下[7]:
  (1)确定细菌个数,及计算的精度ε;
  (2)初始化细菌群:根据变量范围,随机将细菌群体分布在不同的位置;
  (3)根据式(2)-(4)确定算法参数;
  (4)对处在移动步数k的细菌i,感知其周围更好位置的细菌,并确定它们的中心位置和一个假定的朝这个中心方向移动的长度,确定位置;
  (5)对处在移动步数k的细菌i,同时根据它自己记忆的上几步的位置信息按细菌趋药性算法确定第k+1步新的位置;
  (6)分别计算不同位置的目标函数值,如果的目标值小于的目标值,那么细菌在第k+1步移到,否则移到;
  (7)重复(3)-(6)步,直至精度满足条件。
  3  T-S模糊模型后件参数辨识
  本文T-S模糊模型的后件参数通过最小二乘来计算。最小二乘(Least Squares, LS)法是一种根据实验数据进行参数估计的主要方法。
  根据最小二乘算法,P的最小二乘估计为:
  初始条件P0=0,S0=αI。α一般取大于10000的实数,I是L×L的单位矩阵。
  4  仿真实例
  本文选择2个非线性系统进行辨识,仿真实例1是一个2输入、1输出的非线性对象,仿真实例2是一个混沌时间序列。
  4.1 仿真实例1
  本例选择双输入单输出非线性对象(DISO),其输入输出方程如下:
转载注明来源:https://www.xzbu.com/1/view-15273102.htm