《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于二倍體顯性機(jī)制的DNA算法研究
基于二倍體顯性機(jī)制的DNA算法研究
?徐凱,,陳賢富
(中國(guó)科學(xué)技術(shù)大學(xué) 電子科學(xué)與技術(shù)系,安徽 合肥 230027)
摘要: 有鑒于傳統(tǒng)遺傳算法與生物DNA遺傳機(jī)制機(jī)理差異較大,,依據(jù)生物遺傳的DNA遺傳特性,,提出并研究設(shè)計(jì)了一種基于二倍體顯性機(jī)制的DNA遺傳計(jì)算方法(AO方法),,分析了AO交叉方法的模式抽樣特性,并結(jié)合若干典型測(cè)試函數(shù)的遺傳優(yōu)化問(wèn)題設(shè)計(jì)了相關(guān)DNA算法,,開展了相關(guān)實(shí)驗(yàn)研究工作,。理論分析與實(shí)驗(yàn)結(jié)果顯示,本文提出的這種DNA遺傳計(jì)算方法在綜合優(yōu)化效率方面明顯優(yōu)于Holland傳統(tǒng)遺傳算法,。
中圖分類號(hào):TP301
文獻(xiàn)標(biāo)識(shí)碼:A
DOI: 10.19358/j.issn.2096-5133.2018.07.011
中文引用格式:徐凱,,陳賢富.基于二倍體顯性機(jī)制的DNA算法研究[J].信息技術(shù)與網(wǎng)絡(luò)安全,2018,37(7):46-49.
?Study on DNA algorithm based on diploid dominant mechanism
?Xu Kai, Chen Xianfu
(Department of Electronic Science and Technology, University of Science & Technology of China,Hefei 230027,,China)
Abstract: In view of the large difference between traditional genetic algorithm and genetic mechanism of biological DNA, we proposed and designed a DNA genetic calculation method based on diploid dominant mechanism. We analyzed the pattern sampling characteristics of the AO cross method, designed related DNA algorithm combining with several typical test functions, and carried out the related experimental research. Both theoretical analysis and experimental results show that the DNA genetic algorithm proposed in this paper is superior to Holland's traditional genetic algorithm in terms of comprehensive optimization efficiency.
Key words : diploid dominant mechanism; genetic manipulation; DNA calculation; genetic optimization

0  引言

生物學(xué)中,,二倍體是指含有兩個(gè)同源基因組的個(gè)體[1]。根據(jù)孟德?tīng)柗蛛x定律可知,,當(dāng)兩個(gè)同源基因組其中之一為顯性時(shí),,該基因?qū)?yīng)的性狀表現(xiàn)為顯性。僅當(dāng)兩個(gè)同源基因組均為隱性時(shí),,表現(xiàn)型為隱性,,如圖1[1]所示?;蛑亟M是保持生物特性世代遺傳的基本方式,,也是獲取大量遺傳變異的主要源泉。遺傳算法[2]中的交叉操作可視為對(duì)生物遺傳過(guò)程中基因重組的直接模擬,,交叉算子選擇得好壞直接影響算法的性能,。對(duì)于占主流的二值編碼(0/1編碼)方法來(lái)說(shuō),目前最常用的交叉方法主要有以下兩類:

(1)一點(diǎn)交叉,、兩點(diǎn)交叉與多點(diǎn)交叉[1,3-4]

一點(diǎn)交叉(one-point crossover)又叫簡(jiǎn)單交叉,。具體操作是:在個(gè)體串中隨機(jī)設(shè)定一個(gè)交叉點(diǎn),實(shí)行交叉時(shí),,該點(diǎn)前或后的兩個(gè)個(gè)體的部分結(jié)構(gòu)進(jìn)行互換,,并生成兩個(gè)新個(gè)體。

兩點(diǎn)交叉(two-point crossover)方法與一點(diǎn)交叉類似,,只是多設(shè)置了1個(gè)交叉點(diǎn),,交叉時(shí),A,、B兩個(gè)體中位于這兩個(gè)交叉點(diǎn)之間的碼串相互交換,,其余碼串不變。

多點(diǎn)交叉(multi-point crossover) 是前述兩種交叉的推廣,,有時(shí)又被稱為廣義交叉(generalized crossover),,一點(diǎn)交叉和兩點(diǎn)交叉可視為多點(diǎn)交叉的特殊形式,。

微信截圖_20181026111037.png

(2)一致交叉[2]

所謂一致交叉(uniform crossover)是指通過(guò)設(shè)定屏蔽字(mask)來(lái)決定子個(gè)體的哪些基因繼承父本A 中的對(duì)應(yīng)基因,哪些基因繼承父本B 中的對(duì)應(yīng)基因,。一般來(lái)說(shuō),,點(diǎn)數(shù)較多的交叉操作可提供更加豐富的遺傳變異材料,有利于維護(hù)種群基因型的多樣性,,但對(duì)關(guān)鍵模式的保護(hù)能力較差,,收斂的速度也較慢。從模式(schemata)處理角度看,,一點(diǎn),、兩點(diǎn)及多點(diǎn)交叉方法存在著“位置相關(guān)”的缺陷。在此情況下,,短模長(zhǎng)模式比長(zhǎng)模長(zhǎng)模式有更大的存活概率,,而對(duì)于很多應(yīng)用問(wèn)題,因領(lǐng)域知識(shí)較少,,基因間的關(guān)系密切程度不易確定,,人為的基因編碼排列方案可能極不合理,這將影響多點(diǎn)交叉操作的效果和GA搜索的效率,。

與多點(diǎn)交叉方法相比,,一致交叉由于平等對(duì)待所有的模式,因而克服了多點(diǎn)交叉方法存在的“位置相關(guān)”缺陷,,但在種群基因型相似性較高的情況下,,由于隨機(jī)交換發(fā)生在相同基因座之間的概率較高,故存在優(yōu)化后期階段進(jìn)化遲鈍,、搜索效率欠佳的缺陷,。

針對(duì)上述問(wèn)題,參照生物DNA遺傳機(jī)制機(jī)理,,提出并研究設(shè)計(jì)了一類擬合生物遺傳二倍體顯性機(jī)制的新型DNA遺傳算法,。

1  二倍體顯性遺傳算子

一點(diǎn)交叉、多點(diǎn)交叉及一致交叉方法的共同之處在于均繼承了兩父串的相同基因,,差異僅在于對(duì)父串不同基因的處理方式,。二倍體顯性遺傳算子也可以繼承親本同型等位基因,而對(duì)雜型等位基因則按“與”和“或”邏輯分別進(jìn)行處理,。例如,,若兩父串為:

F1: 0100101101

F2: 1101110100

則由“與/或”交叉方法產(chǎn)生的兩子串分別為:

C1: 0100100100

C2: 1101111101

顯然,這一遺傳操作方法使子代繼承了雙親的同型基因,;對(duì)于雙親的雜型基因,,“與/或”交叉方法采取了兩種不同的“強(qiáng)調(diào)”策略:“與”運(yùn)算強(qiáng)調(diào)0基因的作用,而“或”運(yùn)算則強(qiáng)調(diào)1基因 的作用,。這種交叉方法較為逼真地模擬了生物DNA遺傳的顯性(dominance)機(jī)制,,“與”運(yùn)算將1視為隱性基因,,而“或”運(yùn)算將0視為隱性基因。

2  二倍體顯性遺傳計(jì)算模式分析

為便于對(duì)AO交叉方法進(jìn)行模式分析,,這里參照Holland模式分析方法,,先定義幾個(gè)有關(guān)基因型模式的概念。

定義1: 0_模式由字符集{*0*}構(gòu)成的字符串稱作0_模式,,記為H0。其中,,字符0為反映模式結(jié)構(gòu)特征的確定性信息,,*為反映模式結(jié)構(gòu)特征的不確定性信息。

定義2: 1_模式由字符集{*1*}構(gòu)成的字符串稱作1_模式,,記為H1,。其中,字符1為反映模式結(jié)構(gòu)特征的確定性信息,,*為反映模式結(jié)構(gòu)特征的不確定性信息,。

有了這些定義,再參考 Holland模式分析方法[1,3-4],,不難得出二倍體顯性遺傳計(jì)算在模式形成和增長(zhǎng)方面具有如下特性:

(1)1階優(yōu)模式的數(shù)目(數(shù)學(xué)期望)在連續(xù)后代中按式(1)增長(zhǎng):

微信截圖_20181026112418.png

(2)高于種群的平均適應(yīng)度的1階0_模式在連續(xù)后代中按式(2)增長(zhǎng):

微信截圖_20181026112424.png

(3)高于種群的平均適應(yīng)度的1階1_模式在連續(xù)后代中按式(3)增長(zhǎng):

微信截圖_20181026112434.png

其中,,H表示某個(gè)模式,m(H,t)表示在t代種群中隱含模式H的串的個(gè)數(shù),,m(H,t+1)表示在t+1代種群中隱含模式H的串的個(gè)數(shù)(數(shù)學(xué)期望),,微信截圖_20181026114251.png為t代種群中含模式H個(gè)體的平均適應(yīng)度,f為t代種群中所有個(gè)體的平均適應(yīng)度,,Pm為變異概率,,ο(H)為模式H的模階。

很明顯,,與 Holland標(biāo)準(zhǔn)GA相比,,基于二倍體顯性機(jī)制的DNA遺傳計(jì)算(AO交叉)對(duì)于適應(yīng)度高于種群平均適應(yīng)度的0_模式和1_模式有較強(qiáng)的保護(hù)能力。而對(duì)于0,、1混雜的一般模式,,AO交叉方法對(duì)模式H的破壞作用除了與變異概率以及模階的高低相關(guān)外,還與模式H中的0和1個(gè)數(shù)之比相關(guān),。當(dāng)模式H中0和1個(gè)數(shù)相等時(shí),,AO交叉對(duì)模式H的破壞作用最大。

模式H中0和1在數(shù)目上相差越大,,AO交叉對(duì)模式H的破壞作用越?。划?dāng)模式H中的確定信息位全為0或全為1時(shí),,AO交叉對(duì)模式H無(wú)破壞作用,。由此不難推測(cè)AO交叉操作在搜索,、優(yōu)化應(yīng)用中可能具有如下特點(diǎn):

(1)當(dāng)問(wèn)題全局最優(yōu)解的基因編碼為全0或全1時(shí),由于AO交叉對(duì)0_模式和1_模式無(wú)破壞作用,,因此,,采用AO交叉的GA可能會(huì)以相當(dāng)高的速度搜索到問(wèn)題的全局最優(yōu)解。

(2)當(dāng)問(wèn)題全局最優(yōu)解的基因編碼0,、1個(gè)數(shù)在數(shù)量比上相差很大時(shí),,由于AO交叉對(duì)這類0、1混雜優(yōu)模式破壞作用較小,,因此,,與一點(diǎn)交叉等方法相比,采用AO交叉的GA可能會(huì)以相對(duì)較快的速度搜索到問(wèn)題的全局最優(yōu)解,。

(3)當(dāng)問(wèn)題全局最優(yōu)解的基因編碼0,、1個(gè)數(shù)在數(shù)量比上相差不大直至相等時(shí),由于AO交叉對(duì)這類0,、1混雜優(yōu)模式破壞作用較大,,此時(shí),采用AO交叉的GA的收斂可能比較慢,,甚至不及一點(diǎn)交叉或一致交叉等方法,。

3  遺傳優(yōu)化實(shí)驗(yàn)

為了檢驗(yàn)AO交叉方法的優(yōu)化性能,本文選擇了易于采用 0/1二值編碼方案的典型優(yōu)化問(wèn)題進(jìn)行實(shí)驗(yàn),,即Bohachevsky函數(shù)優(yōu)化問(wèn)題,。

實(shí)驗(yàn)環(huán)境為:Inter(R) Core(TM) i5-7300U CPU @2.6 GHz 2.71 GHz筆記本電腦,Windows 10,,Visio Studio 2010,。

Bohachevsky函數(shù)[5-7]為:

微信截圖_20181026114655.png

優(yōu)化目標(biāo)為求Bohachevsky函數(shù)的全局最小值。由數(shù)學(xué)分析方法可知Bohachevsky函數(shù)的最小值為0,,發(fā)生在(0,0)點(diǎn),。該函數(shù)三維形狀如圖2所示。

微信截圖_20181026114810.png

實(shí)驗(yàn)?zāi)康脑谟跈z測(cè)AO交叉方法的性能,,選用一點(diǎn)交叉作為比較對(duì)象,,GA的配種選擇機(jī)制采用正比于適應(yīng)度的賭輪隨機(jī)選擇方式。為了與AO交叉法的邏輯操作形式相一致,,這里的變異操作采用“異或/異或非”方式,,其效果等同于位點(diǎn)變異方法。實(shí)驗(yàn)中的變異概率為0.05,,交叉概率為1.00,,種群規(guī)模為400,種群更新方式采用最佳保留方式。采用二進(jìn)制編碼方式,,實(shí)驗(yàn)結(jié)果如表1所示,,表中列出的優(yōu)化時(shí)間為20次實(shí)驗(yàn)的平均值。

微信截圖_20181026114957.png

從實(shí)驗(yàn)結(jié)果可以看出各種不同的交叉算子在Bohachevsky函數(shù)優(yōu)化中均能搜索到全局最優(yōu)解但優(yōu)化效率有差異,。AO 交叉操作方法在優(yōu)化效率方面明顯高于一點(diǎn)交叉方法,。根據(jù)前文對(duì)AO交叉方法的分析,AO交叉的優(yōu)化性能可能還與問(wèn)題最優(yōu)解的編碼特性(0和1的數(shù)量比)相關(guān),。為此,,本文通過(guò)設(shè)置最小極值點(diǎn)發(fā)生的位置來(lái)改變?nèi)〉米顑?yōu)解時(shí)自變量編碼的0和1的個(gè)數(shù)。為檢測(cè)最優(yōu)解的編碼特性對(duì)AO交叉法優(yōu)化性能的影響,,令:

          x1=y1-m                      (5)

           x2=y2-m                      (6)

這樣,,如果針對(duì)自變量y1、y2進(jìn)行遺傳優(yōu)化,,則Bohachevsky函數(shù)的最小極值點(diǎn)發(fā)生在(m,m)。實(shí)驗(yàn)中,,y1,、y2的編碼方式為二進(jìn)制編碼方式,位長(zhǎng)均為30位,。適應(yīng)度函數(shù)設(shè)計(jì)為:

           f(x1,x2)=1/(F(x1,x2)0.000 001)   (7)

為了調(diào)整最優(yōu)解的編碼特性,,本文將m線性映射到30位二進(jìn)制編碼空間,00…00對(duì)應(yīng)于 -1.00,11…11對(duì)應(yīng)于+1.00,;實(shí)驗(yàn)中的其他參數(shù)設(shè)計(jì)與前述Bohachevsky函數(shù)優(yōu)化相同,。實(shí)驗(yàn)結(jié)果表明,采用AO交叉法的GA算法能搜索到Bohachevsky函數(shù)不同位置的全局最優(yōu)解,,但優(yōu)化所需時(shí)間有較大差異,。圖3顯示了不同m值下, AO交叉法的優(yōu)化時(shí)間曲線,,其中,,縱坐標(biāo)為優(yōu)化到最優(yōu)解所需的時(shí)間(20次實(shí)驗(yàn)的平均值),橫軸為m在二進(jìn)制編碼中所含0的個(gè)數(shù),,自0直到30,。

微信截圖_20181026115552.png

從圖3可以看出,AO交叉方法的優(yōu)化效率隨著0,、1數(shù)目的變化有很大差異,;在m值(二進(jìn)制碼)為00…00和11…11時(shí),AO交叉方法的優(yōu)化效率最高,,而當(dāng)m中的0,、1個(gè)數(shù)比接近于1時(shí),AO交叉的優(yōu)化效率最低。

4  結(jié)束語(yǔ)

與流行的一點(diǎn)交叉和一致交叉等方法相比,,本文提出并研究設(shè)計(jì)的二倍體顯性DNA遺傳計(jì)算方法在模式抽樣機(jī)理方面有其獨(dú)特性,,主要表現(xiàn)在對(duì)優(yōu)質(zhì)0_模式和優(yōu)質(zhì)1_模式有較強(qiáng)的保護(hù)作用。實(shí)驗(yàn)結(jié)果顯示,,這種抽樣特性導(dǎo)致AO交叉的優(yōu)化效率隨最優(yōu)解(二值編碼)的0,、1分布變化而發(fā)生變化;最優(yōu)解包含的0和1的個(gè)數(shù)相差越大,,則優(yōu)化效率越高,,反之,則優(yōu)化效率越低,。實(shí)驗(yàn)結(jié)果也顯示出在最優(yōu)解包含的0和1的個(gè)數(shù)之比接近于1.00的較小范圍內(nèi),,AO交叉方法的優(yōu)化效率較低。如果假定最優(yōu)解所包含的0(或1)個(gè)數(shù)呈均勻分布,,則AO交叉方法將在總體優(yōu)化效率上明顯超越一點(diǎn)交叉等傳統(tǒng)遺傳算法,,統(tǒng)計(jì)實(shí)驗(yàn)結(jié)果有力支持了上述理論分析與算法設(shè)計(jì)思想。

需要特別指出的是,,生物DNA遺傳過(guò)程除了多倍體顯性機(jī)制機(jī)理外,,還特別依賴于DNA雙螺旋結(jié)構(gòu)。生物DNA雙螺旋二倍體染色體結(jié)構(gòu)在群體遺傳基因多樣性維護(hù)方面有著獨(dú)特的功效,。限于篇幅,,有關(guān)二倍體雙螺旋結(jié)構(gòu)的DNA模擬計(jì)算研究在此不做贅述。

參考文獻(xiàn)

[1] GLODBERG D E.Genetic algorithms in search, optimization & machine learning[M].Addison-Wesley, Reading, Mass, 1989.

[2] Peng Hu,Wu Zhijian,Zhou Xinyu, et al.Dynamic differential evolution algorithm based on elite local learning[J].Acta Electronica Sinica,2014,,42 (8) : 1522-1530.

[3] 魯宇明,黎明,李凌.一種具有演化規(guī)則的元胞遺傳算法[J].電子學(xué)報(bào),2010,38 (7) : 1603-1607.

[4] 劉淵,楊永輝,張春瑞,等. 一種基于遺傳算法的Fuzzing測(cè)試用例生成新方法[J].電子學(xué)報(bào),2017,45(3):552-556.

[5] FOGEL G, FOGEL D.Continous evolutionary programming:analysis and experiments[J].Journal of Cybernetics and Systems,1994,26(1):79-90.

[6] 李柱.基于自適應(yīng)遺傳算法的軟件測(cè)試用例自動(dòng)生成[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2016,25(1):192-196

[7] 陳賢富, 莊鎮(zhèn)泉,王煦法.遺傳算法的自適應(yīng)進(jìn)化策略及TSP問(wèn)題的遺傳優(yōu)化[J]. 電子學(xué)報(bào), 1997,25 (7):111-114.

(收稿日期:2018-04-11)

 

作者簡(jiǎn)介:

徐凱(1991-),,女,碩士研究生,,主要研究方向:深度學(xué)習(xí)與人工智能,。

陳賢富(1963-),男,,副教授,,主要研究方向:復(fù)雜系統(tǒng)與計(jì)算智能。

 


此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。