提供一個人工免疫算法源程序,其算法過程包括:
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.迭代停止判斷。
標簽:
人工免疫
算法
源程序
上傳時間:
2014-01-01
上傳用戶:trepb001