楊益洲 游文明 周益軍
(揚州職業(yè)大學機械工程學院,江蘇揚州225000)
人工智能一直是人類的追求之一。人們通過對生物大腦神經(jīng)元網(wǎng)絡的研究和仿真,提出了人工神經(jīng)網(wǎng)絡模型并獲得了巨大發(fā)展。同樣,基于Jerne提出的免疫網(wǎng)絡理論提出的人工免疫系統(tǒng)(簡稱AIS)也成為了人工智能領域研究的熱點。之后,人工免疫系統(tǒng)日益成熟。主要的有1996年Forrest提出了檢測計算機病毒的反面選擇算法[1],2000年 Timmis提出的RLAIS[2],2002 年 De Castro 提出的克隆選擇算法[3]以及aiNet等[4]。這些算法,充分借鑒了免疫系統(tǒng)中B細胞與T細胞等免疫細胞實現(xiàn)生物免疫的方式,構建了人工免疫系統(tǒng)的基礎,尤其是在計算機病毒防護等領域有了眾多應用成果。但是對于機械設備的智能診斷而言,研究的對象更加復雜,對于AIS系統(tǒng)的要求也有所不同。目前AIS的研究與應用還多集中在數(shù)據(jù)聚類方面,但是AIS尤其是克隆選擇算法具有應用靈活,適應性強的特點,很適合用于全局尋優(yōu)。傳統(tǒng)的智能算法如人工神經(jīng)網(wǎng)絡的BP算法很容易陷入局部極值,AIS在這一方面正好何其可以相輔相成。基于以上考慮,本文對如何在AIS進化過程中保持抗體的多樣性進行了研究,并在傳統(tǒng)的克隆選擇算法基礎上,提出了一種通過設定家族標記模擬姓氏繼承提高算法多樣性,有效避免過早收斂以及重復計算以提高算法速度的方法。
隨著研究的深入,克隆選擇算法也經(jīng)歷了不斷發(fā)展。De Castro提出的克隆選擇算法流程如下:
①產生候選方案的集合S(P),該集合為記憶細胞子集(M)和剩余群體(Pr)的總和(P=Pr+M);
②基于親和力度量確定群體P中的n個最佳個體Pn;
③對群體中的這n個最佳個體進行克隆(復制),生成臨時克隆群C;
④對克隆生成的群體施加變異操作,變異概率反比于抗體親和力,生成一個成熟的抗體群體C*;
⑤從C*中重新選擇改進個體組成記憶集合,P集合的一些成員可以由C*的其他改進成員加以替換;
⑥將群體中的d個低親和度的抗體予以替換,從而維持抗體的多樣性。
而與Rbdolph證明經(jīng)典遺傳算法[5]類似,可以證明若是讓每一代種群的最優(yōu)個體不參與雜交與變異過程,則算法是依概率意義收斂的。所以實際使用的克隆選擇算法通常對最優(yōu)抗體進行保留。此外為了保留抗體的多樣性,除了調用變異算子對臨時克隆群C并施加變異操作外,通常還調用交叉算子對臨時克隆群C內的個體進行基因交叉互換。總體流程圖如圖1。

而本文對于克隆選擇算法的改進主要是通過對進化過程中的臨時抗體群添加遺傳標志位,達到進一步提高抗體多樣性從而提高算法全局搜索提高算法效率的目的。具體方法如下:
①生成初始抗體群時按照生成次序標記家族標志;
②調用變異算子時,新生成的抗體繼承調用抗體家族標志;
③調用交叉算子時,新生成的抗體繼承主動調用的抗體所有的家族標志;
④在對臨時抗體群進行排序時,首先依據(jù)家族標志在各家族內按親和力進行排序;
⑤將各家族最優(yōu)抗體注入臨時抗體群(即進化池),并按照設定的最大濃度丟棄多余臨時抗體;
⑥對去除后的所有抗體再按親和力進行排序,選優(yōu)后注入進化池。
該方法主要是通過增設標志位,從而避免了抗體在局部極值點過早收斂集中造成大量無效計算,來達到提高遍歷性與算法效率的目的。其中濃度定義為某家族抗體總數(shù)在臨時抗體群所占的比率。為了對算法進行驗證,本文采用CA6140型臥式車床的加工過程振動數(shù)據(jù)的訓練過程進行了分析。
實驗通過AIS系統(tǒng)對車床加工細長軸工件時易發(fā)生的顫振故障進行了識別與預報。分別采集車床x、y、z三個方向振動信號,將各頻域段內的信號能量歸一化后作為特征值。下圖是分別增加家族標記與未增加家族標記時抗體訓練時依照進化代數(shù)的收斂結果。

如圖可以看出,以進化代數(shù)為橫坐標時,采用姓氏繼承法會延緩抗體的收斂速度,這是保持抗體多樣性帶來的代價。但是由于丟棄了部分過于集中的抗體,算法在速度上有了顯著提高。表1是采用相同樣本與其它參數(shù)條件下,姓氏繼承法不同濃度時的最大親和力與訓練所用時間(設定50個家族)。


表1 采用/不采用姓氏繼承法50代時訓練得到的最大親和力與所用時間
從表1可看出,采用姓氏繼承法后,雖然從最大親和力來看略有下降,但是降幅基本可以忽略。平均時間從不采用的6.11 s到最大濃度0.4時的5.49 s一直到采用最大濃度0.1時的3.47 s有了顯著提高。而從同樣進化50代時,臨時抗體池內抗體的分布也可看出該算法對抗體多樣性的提高。圖5是識別結果圖。


該算法進化生成的抗體能夠對機床故障進行正確識別。
本文在克隆選擇算法的基礎上提出了一種姓氏繼承算法。該算法能夠有效地提高算法的多樣性,避免進化過程中抗體過快收斂造成的重復計算,從而有效提高了算法效率。該算法作為一種人工免疫系統(tǒng)進化時的輔助算法,在進化池大小受限,或者對最優(yōu)值精度要求不高時有明顯的效果。
1 S.Forrest,S.A.Hofmeyr,A.Somayaji A.A sense of self for UNIX processes[C].In 1996 IEEE Symposium Security and Privacy,Oakland,California,1996:120-128
2 J.Timmis,M.Neal.A Resource Limited Artificial Immune Systems for Data Analysis[J].Knowledge Based Systems ,2002,14(3/4):121-130
3 D.Castro,F(xiàn).J.V.Zuben.Learning and Optimization Using the Clonal Selection Principle[J].IEEE Transactions on Evolutionary Computation,2002,6(3):239-251
4 D.Castro,J.Timmis.Convergence and Hierarchy of aiNet:Basic Ideas and Preliminary Results[C].in Proc.the 1st International Conference on Artificial Immune Systems,Canterbury,UK,2002:231-240
5 Rudolph G.Convergence properties of canonical genetic algorithms[M].IEEE Trans on Neural Networks,1994.