T-S模糊系统结论参数的MATLAB仿真研究(2)
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:
或QQ:
处理(尽可能给您提供完整文档),感谢您的支持与谅解。

在产生大种群后,对个体进行初步筛选,去掉一些适应度差的个体,剩下的作为初始种群进行遗传操作,这种方法可以使种群在保持多样性的同时,节省计算时间。进化代数的确定,一般是根据问题所要求的精度来确定,精度低,进化的代数就可以少一些,反之则多一些。
适应度函数是衡量个体优劣的指标,为了达到寻优的目标,适应度函数一般是通过目标函数变换而来的,这里对T-S模型的参数进行辨识,采用的目标函数为均方误差:
(1)
其中:t(k)为由辨识的模糊模型计算出的第k个采样时刻的输出值,α(k)为第k 个采样时刻的实际输出值,Q为总的采样次数。
在进行选择操作时,是按照适应度越大,被选择的概率越大,所以,这里选用的适应度函数为:
(2)
其中ε是一个较小的正实数,目的是为了避免除数为零的情况发生
[3]。其主要代码如下:
for i=1:1:Size %以下为初始筛选
cansu=Kpar(i,:);
code=cansu;
rmse=computeitae(code);%计算均方误差;
BsJ=rmse;
BsJi(i)=BsJ;%将均误差赋给BsJi
end
fi=1./BsJi;% 求适应度的值
[Oderfi,Indexfi]=sort(fi)%对适应度值由小到大排列
sortrsa=Kpar(Indexfi(Size),:);
for s=2:1:selectsize
shuijirsa=Kpar(Indexfi(Size-s+1),:);
sortrsa=[sortrsa shuijirsa];
end
sortrsa
Kpar=sortrsa
Size=selectsize
遗传操作一般包括选择,交叉和变异。选择方法采用蒙特卡罗法,按比例的适应度分配。若某个个体i ,其适应度为f
i , 则其被选择的概率表示为:
(3)
由于在进行遗传操作前,已经对个体进行了初步的筛选,所以为了避免对种群中优良个体的破坏,这里采用单点交叉的方法,随机选择交叉点之后,将两个个体的交叉点后面的基因进行交换。变异采用实值变异的方法,随机选择染色体的某个基因,由于用实数编码的方法,每个基因就是一个要辨识的参数值,所以可以用一个函数实现在参数范围内适当改变该参数值的大小,从而达到保持种群多样性的目的。为了使寻优不过早的收敛到次优解,随着进化代数的增加,需要适当增大变异率,其实现方法只需用一个函数来表示变异率:
pm=0.1 + [1:1:G]×0.1/G (4)
式中:
pm表示变异率,G代表进化代数。[1:1:G]表示一个数组,变化的范围为[1,G],步长为1。为了避免破坏优良个体,变异率不宜取的过大。通过实验得知,在第一代时,可取变异率
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说计算机T-S模糊系统结论参数的MATLAB仿真研究(2)在线全文阅读。
T-S模糊系统结论参数的MATLAB仿真研究(2).doc
将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
下载失败或者文档不完整,请联系客服人员解决!