提出
在生命科學領域中,人們已經對遺傳(Heredity)與免疫(Immunity)等自然現象進行了廣泛深入的研究。六十年代Bagley和Rosenberg等先驅在對這些研究成果進行分析與理解的基礎上,借鑑其相關內容和知識,特別是遺傳學方面的理論與概念,並將其成功套用於工程科學的某些領域,收到了良好的效果。時至八十年代中期,美國Michigan大學的Hollan教授不僅對以前的學者們提出的遺傳概念進行了總結與推廣,而且給出了簡明清晰的算法描述,並由此形成目前一般意義上的遺傳算法(GeneticAlgorithm)GA。由於遺傳算法較以往傳統的搜尋算法具有使用方便、魯棒性強、便於並行處理等特點,因而廣泛套用於組合最佳化、結構設計、人工智慧等領域。另一方面,Farmer和Bersini等人也先後在不同時期、不同程度地涉及到了有關免疫的概念。遺傳算法是一種具有生成+檢測(generateandtest)的疊代過程的搜尋算法。從理論上分析,疊代過程中,在保留上一代最佳個體的前提下,遺傳算法是全局收斂的。然而,在對算法的實施過程中不難發現兩個主要遺傳運算元都是在一定發生機率的條件下,隨機地、沒有指導地疊代搜尋,因此它們在為群體中的個體提供了進化機會的同時,也無可避免地產生了退化的可能。在某些情況下,這種退化現象還相當明顯。另外,每一個待求的實際問題都會有自身一些基本的、顯而易見的特徵信息或知識。然而遺傳算法的交叉和變異運算元卻相對固定,在求解問題時,可變的靈活程度較小。這無疑對算法的通用性是有益的,但卻忽視了問題的特徵信息對求解問題時的輔助作用,特別是在求解一些複雜問題時,這種忽視所帶來的損失往往就比較明顯了。實踐也表明,僅僅使用遺傳算法或者以其為代表的進化算法,在模仿人類智慧型處理事物的能力方面還遠遠不足,還必須更加深層次地挖掘與利用人類的智慧型資源。從這一點講,學習生物智慧型、開發、進而利用生物智慧型是進化算法乃至智慧型計算的一個永恆的話題。所以,研究者力圖將生命科學中的免疫概念引入到工程實踐領域,藉助其中的有關知識與理論並將其與已有的一些智慧型算法有機地結合起來,以建立新的進化理論與算法,來提高算法的整體性能。基於這一思想,將免疫概念及其理論套用於遺傳算法,在保留原算法優良特性的前提下,力圖有選擇、有目的地利用待求問題中的一些特徵信息或知識來抑制其最佳化過程中出現的退化現象,這種算法稱為免疫算法(ImmuneAlgorithm)IA。下面將會給出算法的具體步驟,證明其全局收斂性,提出免疫疫苗的選擇策略和免疫運算元的構造方法,理論分析和對TSP問題的仿真結果表明免疫算法不僅是有效的而且也是可行的,並較好地解決了遺傳算法中的退化問題。相關概念
抗原
在生命科學中,是指能夠刺激和誘導機體的免疫系統使其產生免疫應答,並能與相應的免疫應答產物在體內或體外發生特異性反應的物質。在我們的算法中,是指所有可能錯誤的基因,即非最佳個體的基因。抗體
在生命科學中,是指免疫系統受抗原刺激後,免疫細胞轉化為漿細胞並產生能與抗原發生特異性結合的免疫球蛋白,該免疫球蛋白即為抗體。在本文中是指根據疫苗修正某個個體的基因所得到的新個體。其中,根據疫苗修正某個個體基因的過程即為接種疫苗,其目的是消除抗原在新個體產生時所帶來的負面影響。免疫疫苗
根據進化環境或待求問題,所得到的對最佳個體基因的估計。免疫運算元
同生命科學中的免疫理論類似,免疫運算元也分兩種類型:全免疫和目標免疫,二者分別對應於生命科學中的非特異性免疫和特異性免疫。其中,全免疫是指群體中每個個體在變異操作後,對其每一環節都進行一次免疫操作的免疫類型;目標免疫則指個體在進行變異操作後,經過一定判斷,個體僅在作用點處發生免疫反應的一種類型。前者主要套用於個體進化的初始階段,而在進化過程中基本上不發生作用,否則將很有可能產生通常意義上所說的“同化現象”;後者一般而言將伴隨群體進化的全部過程,也是免疫操作的一個常用運算元。免疫調節
在免疫反應過程中,大量的抗體的產生降低了抗原對免疫細胞的刺激,從而抑制抗體的分化和增殖,同時產生的抗體之間也存在著相互刺激和抑制的關係,這種抗原與抗體、抗體與抗體之間的相互制約關係使抗體免疫反應維持一定的強度,保證機體的免疫平衡。免疫記憶
指免疫系統將能與抗原發生反應的抗體作為記憶細胞保存記憶下來,當同類抗原再次侵入時,相應的記憶細胞被激活而產生大量的抗體,縮短免疫反應時間。抗原識別
通過表達在抗原表面的表位和抗體分子表面的對位的化學基進行相互匹配選擇完成識別,這種匹配過程也是一個不斷對抗原學習的過程,最終能選擇產生最適當的抗體與抗原結合而排除抗原。算法流程
1.隨機產生初始父代種群A1,根據先驗知識抽取疫苗;2.若當前群體中包含最佳個體,則算法停止運行並輸出結果;否則,繼續;
3.對當前第k代父本種群Ak進行交叉操作,得到種群Bk;
4.對Bk進行變異操作,得到種群Ck;
5.對Ck進行接種疫苗操作,得到種群Dk;
6.對Dk進行免疫選擇操作,得到新一代父本Ak+1,轉至第二步。
發展
免疫算法和免疫系統的理論與套用的研究歷史較短。相關理論可追溯到1958年澳大利亞學者Burnet[1]率先提出了克隆選擇原理,1960年因此獲得諾貝爾獎。1974年,諾貝爾獎得主,生物學家、醫學家、免疫學家Jerne[2]提出了免疫網路理論並建立了數學模型,奠定了免疫計算的基礎。之後Farmer、Perelson、Bersini、Varela等學者分別在1986年、1989年和1990年發表了有關論文,在免疫系統啟發實際工程套用方面做出了突出貢獻,他們的研究工作為建立有效的基於免疫原理的計算系統和智慧型系統開闢了道路。1990年,Bersini首次使用免疫算法來解決問題。20世紀末,Forrest等開始將免疫算法套用於計算機安全領域。近年來,免疫理論和算法已經引起了相關研究人員的極大關注。
1996年,在日本舉行了基於免疫系統的國際專題討論會,首次提出了“人工免疫系統”的概念。1997年和1998年IEEE Systems, Man and Cybernetics國際會議還組織了相關專題討論,並成立了“人工免疫系統及套用分會”。目前,世界上絕大多數人工免疫系統研究成果出自美國、英國和日本。而巴西Campinas大學的De Castro博士最早在其博士論文中總結了人工免疫系統,並試圖建立人工免疫系統的統一框架結構。取得顯著成績的主要有:利用免疫系統原理研究計算機安全的美國New Mexico大學計算機科學系的Forrest博士;研究基於免疫原理的計算機安全和異常檢測及工業套用的Missouri大學計算機與數學系的Dasgupta博士;研究數據分析的英國Kent大學的Timmis博士;研究計算機網路入侵的King’s學院的Kim博士;威爾斯大學E.hunt和Densie Cooke領導的ISYS研究小組等。
在我國,西南交通大學的靳蕃教授等在1990年前後就已經指出“免疫系統所具有的信息處理與肌體防衛功能,從工程角度來看,具有非常深遠的意義”。1998年西安電子科技大學王磊、焦李成等在ICSP’98上首先提出了一種免疫遺傳算法並套用於典型最佳化問題TSP的求解中。目前,國內在免疫最佳化算法理論與套用方面的研究成果具有鮮明特色。其中,中國科學技術大學王煦法教授在國內較早開展免疫最佳化算法方面的研究,並擴展到基於免疫計算的人工生命、進化硬體領域;西安電子科技大學焦李成教授提出了具有較完備理論基礎的免疫克隆算法及一系列改進,也在國際上較早提出了新穎的免疫遺傳算法。
分析
一般免疫算法
一般免疫算法是模仿免疫系統抗原識別、抗原與抗體結合及抗體產生過程,並利用免疫系統多樣性和記憶機理抽象得到的一種免疫算法,它在人工免疫系統發展的早期階段形成。典型算法有Chun等提出的免疫遺傳算法、Mori、Endoh等。
陰性選擇和克隆選擇算法
D’haeseleer等開發了一種陰性選擇算法用於監測數據改變,其中抗體(問題解答)與抗原(問題)的匹配採用Forrest提出的部分匹配規則。目前,免疫最佳化計算的大部分成果是基於Burnet[1]提出的克隆選擇學說,其選擇過程本質上是微觀世界的達爾文進化過程。基於克隆選擇原理,巴西Campinas大學的De Castro博士提出了一種克隆選擇算法,其核心是採用了比例複製運算元和比例變異運算元。對比遺傳算法,該克隆選擇算法在編碼機制和評價函式的構造上基本一致,但搜尋的策略和步驟有所不同,主要表現在通過在候選解的鄰域內產生一個變異解的群體,從而擴大搜尋範圍以加強局部搜尋和通過替換群體中低親和度的抗體來維持抗體的多樣性,避免過早收斂從而實現全局最佳化。通過驗證該算法在解決複雜機器學習問題,如模式識別和多模式最佳化上有很好的效果,但是該算法容易產生多樣性差、算法實現過程困難的缺點。在此之前Weinland、Forrest、Fukuda等人也分別從不同的角度模擬了克隆選擇機理,並將其用於最佳化或模式識別等問題,但是由於過於複雜並未引起研究人員的廣泛關注。Timmis等人同樣基於克隆選擇機理提出了B-Cell算法,Cutello等人基於CLONALG設計了不同的高頻變異操作,提出了用於最佳化的免疫算法opt-IA。
此外,西電焦李成教授領導的研究組在對免疫選擇機理深入研究的基礎上,提出了自適應多克隆規划算法、自適應動態克隆算法、免疫優勢克隆算法等多種高級免疫克隆選擇算法。
免疫網路學說與人工免疫網路模型
人工免疫網路模型將AIS視為一個由節點(淋巴細胞)組成的網路結構,通過節點之間的信息傳遞和相互作用達到識別、回響、記憶等免疫系統功能。目前,主要的人工免疫網路模型有Ishiguro提出的用於機器人行走控制和規劃的互聯耦合網路模型、Tang提出的用於字元識別的多值網路模型、De Castro提出的用於無監督學習的ABNET抗體網路模型和用於數據聚類分析的aiNET免疫網路模型及Ishida提出的用於以聯想記憶為基礎的分布診斷的PDP(parallel Distributed processing)免疫網路模型等。獨特型網路調節(Idcotypic Network Regulation——INR)理論[2]由N.K.Jerne於1974年提出,主要與抗體有關。針對GA在進化過程後期多樣性逐漸降低的缺陷,可用INR網路模型改進GA。用群體適應度的增量對應抗原,抗體對應待求解問題的候選解(待進化個體),則算法保證在每次群體適應度改變時,進化個體都構成分散式網路並相應調節,從而維持了群體收斂性和個體多樣性之間的動態平衡。
混合免疫算法
結合各種智慧型算法,研究人員通過利用AIS的有關原理對其他智慧型計算方法進行改進和加強,或將AIS與其他智慧型算法加以融合從而發展得到了各種混合免疫算法,如免疫進化算法、免疫神經網路、AIS與螞蟻算法的混合算法等。使得多種智慧型算法集成的免疫算法成為AIS算法研究的熱點和重要發展方向之一。分析及套用的主要進展
免疫最佳化計算理論分析的主要進展體現在基於馬爾科夫鏈的收斂性分析和非線性動力學模型等方面,對免疫最佳化算法的非線性隨機分析可能是未來研究的難點之一。目前,免疫算法已經套用於各種單目標、多目標最佳化及工程最佳化之中。例如用於異常和故障診斷、機器人行為仿真、機器人控制、網路入侵檢測、神經網路設計等領域,並表現出較卓越的性能和效率。此外,免疫算法還被套用於數據挖掘、信息處理、聯想記憶、銀行識別抵押詐欺等方面。
未來展望
一方面,由於對人工免疫系統的研究還處於起步階段;另一方面,由於免疫機理複雜、系統龐大,甚至連免疫學家對免疫現象的認識和描述都比較困難,人工免疫系統可以借鑑的成果還不多,因此人工免疫系統不論在模型建立、算法等方面都存在諸多問題。
1) 免疫算法性能研究。免疫算法性能至少應該包括收斂性、動態性能以及有效性。目前相關討論甚少,藉助進化算法以及人工神經網路的相關研究成果,可能是有效途徑之一。
2) 免疫算法與進化算法等其他智慧型算法的對比研究。這不僅是深入認識人工免疫系統特點的需要,也是多種智慧型策略互補融合的需要。
3) 免疫算法在網路、智慧型系統和魯棒系統中的套用。神經網路、內分泌及免疫這三大調節系統相互聯繫、相互補充和配合、相互制約的機理為基於人工免疫系統的智慧型綜合集成提供了生物學基礎,網路和智慧型成為免疫算法發展的不可缺少的特徵,也是其重要套用領域。免疫算法能增強系統的魯棒性,而且免疫性與魯棒性之間存在的必然聯繫使得免疫算法將在魯棒系統中得到較好的套用。歐盟的“IMCOMP”(EU Project IST-2000-26016)已經將研製免疫晶片(immuno-chips)作為其項目的主要創新之一,而且A.Tarakanov等一批國外學者已經開始相關研究。