AISimmunity
所属分类:matlab编程
开发工具:matlab
文件大小:10KB
下载次数:17
上传日期:2008-12-21 17:09:59
上 传 者:
happyjyc888
说明: 人工免疫交叉算法等,适用于基础开发于应用等
(Artificial Immune cross-algorithm, applicable to the infrastructure development in the application)
文件列表:
immunity\best.m (266, 2005-03-06)
immunity\calfitvalue.m (324, 2005-03-02)
immunity\calobjvalue.m (521, 2005-04-06)
immunity\code.txt (2731, 2005-11-29)
immunity\crossover.m (629, 2005-03-01)
immunity\decodebinary.m (447, 2005-02-27)
immunity\decodechrom.m (611, 2005-02-27)
immunity\hjjsort.m (492, 2005-03-02)
immunity\initpop.asv (479, 2005-12-06)
immunity\initpop.m (479, 2005-12-06)
immunity\main.m (3177, 2005-12-06)
immunity\mutation.m (407, 2004-12-12)
immunity\resultselect.m (558, 2005-03-03)
immunity\selection.asv (878, 2008-10-23)
immunity\selection.m (879, 2008-10-23)
immunity (0, 2008-10-23)
算法过程:
1.设置各参数
2.随机产生初始群体――pop=initpop(popsize,chromlength)
3.故障类型编码,每一行为一种!code(1,:),正常;code(2,:),50%;code(3,:),150%。实际故障测得数据编码,这里Unnoralcode,188%
4.开始迭代(M次):
1)计算目标函数值:欧氏距离[objvalue]=calobjvalue(pop,i)
2)计算群体中每个个体的适应度fitvalue=calfitvalue(objvalue)
3)选择newpop=selection(pop,fitvalue); objvalue=calobjvalue(newpop,i); %
交叉newpop=crossover(newpop,pc,k); objvalue=calobjvalue(newpop,i); %
变异newpop=mutation(newpop,pm); objvalue=calobjvalue(newpop,i); %
5.求出群体中适应值最大的个体及其适应值
6.迭代停止判断。
近期下载者:
相关文件:
收藏者: