沈佳杰,江 紅,王 肅
(華東師范大學(xué)信息科學(xué)技術(shù)學(xué)院,上海200241)
差分進(jìn)化算法(differential evolution,DE)是由D.Storn和K.Price在1995年共同提出的一個(gè)在連續(xù)空間內(nèi)啟發(fā)式搜索的隨機(jī)算法[1,2]。由于其優(yōu)良的可擴(kuò)展性和對(duì)于不同的優(yōu)化問題的通用性,已經(jīng)廣泛應(yīng)用到各個(gè)領(lǐng)域。
本文中通過引入速度概率和自適應(yīng)速度值,提出了一種改進(jìn)的二進(jìn)制離散差分進(jìn)化算法,通過理論推導(dǎo)改進(jìn)的離散二進(jìn)制差分進(jìn)化算法較傳統(tǒng)的離散差分進(jìn)化算法在復(fù)雜的問題環(huán)境下,可以找到更好的問題最優(yōu)解。通過對(duì)于經(jīng)典的0-1背包問題的測(cè)試,改進(jìn)的離散二進(jìn)制差分進(jìn)化算法較標(biāo)準(zhǔn)的離散差分進(jìn)化算法較明顯的改進(jìn),從而驗(yàn)證了本文中提出的速度概率和自適應(yīng)速度值的差分進(jìn)化算法的可行性。
差分進(jìn)化算法是基于群體智能的進(jìn)化算法,其主要的操作有變異操作、交叉操作和選擇操作,通過這3種不同操作,標(biāo)準(zhǔn)的差分進(jìn)化算法[1,2]可以高效地找出函數(shù)的最優(yōu)值,其主要定義如下:
個(gè)體種群由N個(gè)獨(dú)立的個(gè)體組成,記為
其中N為種群數(shù)。
每一個(gè)個(gè)體i是一個(gè)D維向量,記為
其中D為問題維數(shù)。
類似于遺傳算法,需要通過差分進(jìn)化算法中的變異、交叉和選擇操作對(duì)種群進(jìn)行變換,從而找出最優(yōu)值點(diǎn)。
1.1.1 變異操作
變異操作的主要作用是對(duì)于不同個(gè)體進(jìn)行差分變換,從而產(chǎn)生新的變異個(gè)體。變異公式如下所示
新的變異個(gè)體Vi由3個(gè)不同的個(gè)體通過式(3)計(jì)算而得。
1.1.2 交叉操作
交叉操作的主要作用是生成的實(shí)驗(yàn)個(gè)體與原個(gè)體進(jìn)行交叉操作,從而生成新的變異個(gè)體。交叉操作如下所示
其中rand(0,1)為[0,1]之間隨機(jī)數(shù),CR為交叉概率其取值在[0,1]之間,rnbr(i)是指第i個(gè)個(gè)體的向量標(biāo)號(hào)。
如式(4)所示,交叉操作的本質(zhì)是將變異個(gè)體與原個(gè)體在各個(gè)維度向量上以一定的概率進(jìn)行交叉,生成新的實(shí)驗(yàn)個(gè)體ui。
1.1.3 選擇操作
選擇操作的主要作用是在個(gè)體進(jìn)入下一步迭代時(shí),在現(xiàn)在個(gè)體和實(shí)驗(yàn)個(gè)體中選擇一個(gè)適應(yīng)度較高的個(gè)體生成下一代的種群。選擇操作如下所示
如式(5)所示,當(dāng)改進(jìn)實(shí)驗(yàn)個(gè)體的適應(yīng)度大于原來個(gè)體適應(yīng)度值,則采用改進(jìn)后的實(shí)驗(yàn)個(gè)體,其他情況下采用原來個(gè)體。
標(biāo)準(zhǔn)差分算法步驟如下:
步驟1 初始化種群X1進(jìn)入差分進(jìn)化算法,確定CR,將迭代步數(shù)t設(shè)為1,同時(shí)設(shè)定最大迭代步數(shù)tmax。
步驟2 調(diào)用變異操作。通過式(3),計(jì)算所有個(gè)體的變異個(gè)體
步驟3 調(diào)用交叉操作。通過式(4),生成所有個(gè)體的實(shí)驗(yàn)個(gè)體
步驟4 調(diào)用選擇操作。通過式(5),判斷生成的實(shí)驗(yàn)個(gè)體是否比現(xiàn)存?zhèn)€體的適應(yīng)度高,如果適應(yīng)度高于現(xiàn)存?zhèn)€體,則讓實(shí)驗(yàn)個(gè)體代替當(dāng)前個(gè)體;否則,保留,生成下一代
步驟5 判斷是否已經(jīng)達(dá)到最優(yōu)值或迭代步驟數(shù)是已經(jīng)超過最大迭代步驟數(shù),如果是,轉(zhuǎn)向步驟6;否則轉(zhuǎn)向步驟2。
步驟6 輸出最優(yōu)值點(diǎn)。
由于標(biāo)準(zhǔn)的差分進(jìn)化算法主要是處理連續(xù)優(yōu)化問題,不同的學(xué)者對(duì)標(biāo)準(zhǔn)的差分進(jìn)化算法進(jìn)行了改進(jìn)以適應(yīng)離散的優(yōu)化問題的環(huán)境,如文獻(xiàn)[3]通加入了貪心機(jī)制、文獻(xiàn)[4]通過改進(jìn)編碼方式將差分進(jìn)化算法應(yīng)用到離散問題中,而對(duì)于進(jìn)化算法本身的改進(jìn),如在差分進(jìn)化算法中加入不同的機(jī)制[5,6]以及改進(jìn)差分進(jìn)化算法的算子[7,8]。于此同時(shí),也有不少的文獻(xiàn)也對(duì)于差分進(jìn)化算法的研究現(xiàn)狀進(jìn)行了總結(jié)[9,10],同時(shí)對(duì)于進(jìn)化算法對(duì)于多目標(biāo)問題的適用性也有許多文獻(xiàn)進(jìn)行了討論,如文獻(xiàn)[11]主要對(duì)于多目標(biāo)收斂性進(jìn)行了討論,文獻(xiàn)[12,13]主要對(duì)于主要對(duì)于多目標(biāo)問題的描述和主要的進(jìn)化解決算法進(jìn)行了描述。下面我們主要介紹一種離散二進(jìn)制的差分進(jìn)化算法。
由于標(biāo)準(zhǔn)的差分進(jìn)化算法,對(duì)于連續(xù)問題進(jìn)行求解,所以已經(jīng)有了許多的文獻(xiàn)對(duì)于如何將差分進(jìn)化算法應(yīng)用離散問題進(jìn)行討論[3,4]。
這里我們主要介紹文獻(xiàn)[3]中的離散差分進(jìn)化算法。其與標(biāo)準(zhǔn)的差分進(jìn)化算法的主要差別是將變異算子改進(jìn)成如下公式
文獻(xiàn)[3]中的二進(jìn)制差分進(jìn)化算法步驟數(shù)如下:
步驟1 初始種群X1進(jìn)入差分進(jìn)化算法,確定CR,將迭代步數(shù)t設(shè)為1,同時(shí)設(shè)定最大迭代步數(shù)tmax。
步驟6 判斷是否已經(jīng)達(dá)到最優(yōu)值或迭代步驟數(shù)是已經(jīng)超過最大迭代步驟數(shù),如果是,轉(zhuǎn)向步驟7;否則轉(zhuǎn)向步驟2。
步驟7 輸出最優(yōu)值。
本文中的算法的假設(shè)以及定義如下:
假設(shè)1:局部最優(yōu)值的鄰域內(nèi)出現(xiàn)全局最優(yōu)值的概率大于不是局部最優(yōu)值點(diǎn)出現(xiàn)全局最優(yōu)值的概率。
假設(shè)2:算法找到全局的最優(yōu)值點(diǎn)可能需要不止一步迭代步驟。
假設(shè)3:在迭代步驟的過程中個(gè)體的適應(yīng)度可能下降,且隨著離散問題的擴(kuò)大離散問題的局部最優(yōu)解會(huì)增多。
定義1 對(duì)于每一個(gè)粒子點(diǎn)軌跡最優(yōu)值點(diǎn)存在一個(gè)最優(yōu)值向量,記為
定義2 對(duì)于每一個(gè)粒子的每一維為存在一個(gè)速度值,這個(gè)速度值與迭代的步驟數(shù)成正比,稱為自適應(yīng)速度值,記為
由以上的定義可知,如果當(dāng)?shù)趇粒子的第k維為0時(shí),以上函數(shù)為正,而當(dāng)?shù)趇粒子的第k維為1時(shí),以上函數(shù)為負(fù),所以式(8)可以變形為
本文中的改進(jìn)的變異算子是由定義1和定義2疊加組成,其變異個(gè)體的生成公式如下所示
其中ki為縮放比例因子,為第t步時(shí)第r1個(gè)個(gè)體的位置、為第t步時(shí)第r2個(gè)個(gè)體的個(gè)體、為當(dāng)前粒子的位置、為xid的取反、rd為一個(gè)[0,1]之間的隨機(jī)數(shù)。
定義3 當(dāng)實(shí)驗(yàn)個(gè)體優(yōu)于原個(gè)體時(shí),有一定的較小的概率選擇原個(gè)體,而較大的概率選擇實(shí)驗(yàn)個(gè)體,而當(dāng)原個(gè)體優(yōu)于實(shí)驗(yàn)個(gè)體時(shí),有一定的較小的概率選擇實(shí)驗(yàn)個(gè)體,而較大的概率選擇原個(gè)體的選擇算子,稱為概率選擇算子,記為
其中rd為一個(gè)(0,1)之間的隨機(jī)數(shù),thmax為[0,1]之間的一個(gè)數(shù),thmin為[0,1]之間的一個(gè)數(shù),thmax+thmin=1,thmax>>thmin。
本文中算法步驟如下:
步驟1 初始種群X1進(jìn)入差分進(jìn)化算法,確定CR,將迭代步數(shù)t設(shè)為1,同時(shí)設(shè)定最大迭代步數(shù)tmax。
步驟3 根據(jù)式(10)以及式(11),調(diào)用變異算子,計(jì)算速度概率以及變異個(gè)體。
步驟5 根據(jù)式(12),調(diào)用概率選擇操作,比較生成的實(shí)驗(yàn)個(gè)體與原來個(gè)體,選擇較優(yōu)者生成下一代的個(gè)體。
步驟6 判斷是否已經(jīng)達(dá)到最優(yōu)值或迭代步驟數(shù)是已經(jīng)超過最大迭代步驟數(shù),如果是,轉(zhuǎn)向步驟7;否則轉(zhuǎn)向步驟2。
步驟7 輸出最優(yōu)值。
本文中算法的性質(zhì)以及定理證明:
定理1 如果所有的都在一步之內(nèi)實(shí)驗(yàn)個(gè)體都不優(yōu)于原個(gè)體的情況下,標(biāo)準(zhǔn)的離散差分進(jìn)化算法將很難找到最優(yōu)值點(diǎn)。
證明:
由于在標(biāo)準(zhǔn)的離散差分進(jìn)化算法中,最后的選擇算子,會(huì)比較實(shí)驗(yàn)個(gè)體與原個(gè)體并選擇適應(yīng)度較高的個(gè)體,如果所有的實(shí)驗(yàn)個(gè)體的適應(yīng)值都小于原來的,則用于進(jìn)化的實(shí)驗(yàn)個(gè)體將不會(huì)替換原來的個(gè)體,即陷入局部最優(yōu)值,所以標(biāo)準(zhǔn)的離散差分進(jìn)化算法將很難找到最優(yōu)值點(diǎn)。
定理1說明標(biāo)準(zhǔn)的離散差分進(jìn)化算法,如果個(gè)體種群生成的實(shí)驗(yàn)個(gè)體如果都小于,則算法會(huì)陷入局部最優(yōu)解,這在一定的程度限制了標(biāo)準(zhǔn)的離散差分進(jìn)化算法在高維環(huán)境下,找到全局最優(yōu)解的能力。
推論1:如果問題規(guī)模過大的情況下,標(biāo)準(zhǔn)的離散差分進(jìn)化算法已陷入早熟將很難找到全局最優(yōu)值。
證明:
因?yàn)殡S著問題規(guī)模的變大,離散問題的局部解將增多,所以當(dāng)所有的個(gè)體都陷入局部最優(yōu)解的情況下,生成實(shí)驗(yàn)個(gè)體極可能小于原個(gè)體,而在這種情況下,算法將維持原始個(gè)體,即沒有個(gè)體更新,因此標(biāo)準(zhǔn)的離散差分進(jìn)化算法已陷入早熟將很難找到全局最優(yōu)值。
定理2 本文改進(jìn)的離散二進(jìn)制差分進(jìn)化算法,在所有的實(shí)驗(yàn)個(gè)體都不優(yōu)于原個(gè)體的情況下,依然可以繼續(xù)搜索全局最優(yōu)值。
證明:
由于改進(jìn)的離散二進(jìn)制差分進(jìn)化算法中的概率選擇算子,有一定的概率選擇適應(yīng)度較差的個(gè)體,所以即使實(shí)驗(yàn)個(gè)體的適應(yīng)度小于原個(gè)體的適應(yīng)度,本文改進(jìn)的概率選擇算子依然又會(huì)有一定的概率選擇適應(yīng)度較差的實(shí)驗(yàn)個(gè)體以保證算法對(duì)于最優(yōu)值搜索的進(jìn)行。
由定理2可知,即使是在實(shí)驗(yàn)個(gè)體都不優(yōu)于原先個(gè)體的情況下,依然可以繼續(xù)進(jìn)行全局最優(yōu)值搜索,所以本文中離散二進(jìn)制差分進(jìn)化算法可以持續(xù)的進(jìn)行最優(yōu)值搜索。
推論2:改進(jìn)的離散二進(jìn)制差分進(jìn)化算法,當(dāng)個(gè)體數(shù)量和迭代步驟數(shù)足夠的情況下,改進(jìn)的離散二進(jìn)制差分進(jìn)化算法可以找到較好的全局最優(yōu)值。
證明:
由于本文中的的離散二進(jìn)制差分進(jìn)化算法由于引入了概率選擇算子,所以在個(gè)體陷入局部最優(yōu)值的情況下,依然可以在一定的概率下,選擇適應(yīng)度較差的實(shí)驗(yàn)個(gè)體,所以算法容易跳出局部最優(yōu)值,因此本文中的改進(jìn)的離散二進(jìn)制差分進(jìn)化算法,當(dāng)個(gè)體數(shù)量和迭代步驟數(shù)足夠的情況下,可以找到較好的全局最優(yōu)值。
本文中使用經(jīng)典的0-1背包問題進(jìn)行測(cè)試[5],本文對(duì)于物品數(shù)為10、20、50、60、100、500、1000八種不同的測(cè)試問題,在交叉概率為0.9、0.8、0.7、0.6這4種不同的條件下,分別進(jìn)行10次獨(dú)立的實(shí)驗(yàn),表1中展示了本文中的4個(gè)測(cè)試用例,其中5-8問題用例中的數(shù)據(jù)隨機(jī)生成。表2中主要展示了在不同問題用例下,標(biāo)準(zhǔn)的離散二進(jìn)制優(yōu)化算法和本文中改進(jìn)的離散二進(jìn)制算法的10次算法迭代中的所找到最優(yōu)解,平均解和最差解以及各個(gè)不同的最優(yōu)解之間的方差以及找到最優(yōu)解時(shí),二進(jìn)制離散差分算法經(jīng)過的最小、最大和平均的迭代步驟數(shù)。
其中SDE表示標(biāo)準(zhǔn)的離散粒子群算法,IDE表示本文中改進(jìn)的離散二進(jìn)制粒子群算法。
由表2可知,改進(jìn)的離散二進(jìn)制差分進(jìn)化算法較標(biāo)準(zhǔn)的離散差分進(jìn)化算法,在問題規(guī)模比較小的情況下(如問題實(shí)例1),標(biāo)準(zhǔn)的離散差分進(jìn)化算法和本文中離散二進(jìn)制差分進(jìn)化算法都可以找到較好的最優(yōu)值,而當(dāng)問題規(guī)模較大時(shí)(如問題實(shí)例5-8),改進(jìn)的離散二進(jìn)制差分進(jìn)化算法較標(biāo)準(zhǔn)的離散差分進(jìn)化算法在最優(yōu)值和標(biāo)準(zhǔn)方差穩(wěn)定性方面具有一定的優(yōu)勢(shì),在部分問題實(shí)例中(如問題5)最優(yōu)值的差距接近于一倍。
圖1(a)主要展示了在算法迭代終止時(shí),不同的問題規(guī)模與算法找到的平均最優(yōu)值之間的關(guān)系,圖1(b)中主要展示了在算法迭代終止時(shí),不同的交叉概率的條件下,不同的交叉概率與算法找到的平均最優(yōu)值之間的關(guān)系。
表1 本文中實(shí)驗(yàn)中測(cè)試用例
表2 標(biāo)準(zhǔn)的離散二進(jìn)制差分進(jìn)化算法和本文中改進(jìn)的離散二進(jìn)制差分進(jìn)化算法性能對(duì)比
SDE 2 20 0.9 1016 855 957.8 5 723 153.2 57.71539 0.8 1024 915 972.6 3 620 132.4 40.73819 0.7 1018 910 971.6 4 362 105.5 29.38329 0.6 1024 940 1000 14 678 229 28.61623 IDE 0.9 1024 1024 1024 14 33 25.4 0 0.8 1024 1024 1024 11 42 24.5 0 0.7 1024 1024 1024 10 51 22.6 0 0.6 1024 1024 1024 11 50 20.7 0 SDE 3 50 0.9 3006 2855 2936.7 49 779 430.5 43.10465 0.8 3004 2885 2934.6 142 956 575.6 32.73191 0.7 3015 2911 2963.7 84 943 580.2 32.28364 0.6 2987 2917 2952.3 107 955 407.1 20.14972 IDE 0.9 3098 3071 3087.7 93 897 354.1 7.04036 0.8 3103 3084 3093 153 620 281.5 5.291503 0.7 3096 3070 3086.3 158 970 398.1 8.340663 0.6 3097 3076 3089.6 215 624 319.5 6.221825 SDE 4 60 0.9 7914 6400 7149.4 3 490 145 608.2869 0.8 7916 7012 7447.5 3 343 89.6 287.5804 0.7 7959 6890 7396.7 2 220 40.7 362.5502 0.6 7839 7173 7545.2 5 712 159 254.933 IDE 0.9 8362 8354 8359.8 97 452 153.8 3.583915 0.8 8362 8344 8356.6 114 174 148.7 5.738757 0.7 8362 8354 8360 98 228 165.3 3.265986 0.6 8362 8354 8358 142 225 169.7 3.527668 SDE 5 100 0.9 5394 713 3369.5 7 26 14.5 1454.455 0.8 5654 2068 4373.5 2 34 16.8 1273.546 0.7 6855 3691 5041.5 8 50 25.4 1028.763 0.6 6598 3326 4926.4 3 70 29.8 1103.259 IDE 0.9 10502 10091 10256.4 185 374 255.9 127.1807 0.8 10490 9792 10071 208 548 346.3 226.2511 0.7 10129 8840 9728.8 144 343 232.9 362.696 0.6 9974 8999 9441.9 178 387 277.7 300.0305 SDE 6 200 0.9 24076 20968 22480.8 123 993 569.2 770.8438 0.8 23826 22123 22969.8 29 982 420.4 519.5534 0.7 23596 22770 23114.9 400 994 720.5 302.0873 0.6 24796 22736 23567.3 124 980 539.1 569.758 IDE 0.9 30488 29837 30157.4 410 994 715.2 195.8294 0.8 30420 30117 30227.1 535 992 778 90.94253 0.7 30132 29624 30027.4 648 987 809.8 151.4891 0.6 30419 29244 29891.7 504 931 713.9 339.7175 SDE 7 500 0.9 33750 28506 31500.9 1 138 42.4 1723.221 0.8 33194 29644 31457.2 1 105 20.3 1088.771 0.7 33798 28428 31362.5 1 134 30.7 1640.353 0.6 36657 28726 32200.3 1 178 40.8 2509.981 IDE 0.9 53152 49793 51774.5 417 940 619.9 1043.984 0.8 50265 48049 49018.1 309 506 397.2 868.6936 0.7 48489 41765 45598.5 171 443 318.3 2205.574 0.6 45096 40719 42920.5 108 464 256.3 1440.184 SDE 8 1000 0.9 35564 6079 28177.4 3 28 11.3 9625.978 0.8 40030 30536 35194.8 4 149 40.3 2747.1 0.7 42518 27695 35712.8 10 247 74.8 3816.219 0.6 41995 24885 35128.9 8 268 58.6 4260.846 IDE 0.9 59411 44256 53365.8 133 504 360.4 4130.141 0.8 52247 43864 47340.1 148 425 247.5 3432.584 0.7 45719 38008 41860 23 335 152.4 2724.898 0.6 41011 36177 38429.3 10 92 33.6 1552.747
圖1 迭代終止時(shí),差分進(jìn)化算法平均最優(yōu)值的對(duì)比
如圖1(a)可知,在問題規(guī)模較小時(shí),標(biāo)準(zhǔn)的離散差分進(jìn)化算法和改進(jìn)的離散二進(jìn)制差分進(jìn)化算法都可以在算法迭代終止時(shí)找到比較好的最優(yōu)值,而當(dāng)問題規(guī)模比較大的情況下(問題實(shí)例5-8),改進(jìn)的差分進(jìn)化算法較標(biāo)準(zhǔn)的差分進(jìn)化算法有較大的優(yōu)勢(shì),在問題實(shí)例7、8中本文中的差分進(jìn)化算法找到的最優(yōu)值與標(biāo)準(zhǔn)的差分進(jìn)化算法的最優(yōu)值差距達(dá)到了近一倍。如圖1(b)所示在不同交叉概率的條件下,改進(jìn)的離散二進(jìn)制差分進(jìn)化算法比標(biāo)準(zhǔn)的離散差分進(jìn)化算法更好的平均最優(yōu)值。
圖2主要展示了在部分問題實(shí)例中,標(biāo)準(zhǔn)的離散二進(jìn)制差分進(jìn)化算法和改進(jìn)離散二進(jìn)制差分進(jìn)化算法迭代步驟數(shù)與算法所能找到平均最優(yōu)值之間的關(guān)系:
如圖2所示,在問題規(guī)模較小的情況下,改進(jìn)的離散二進(jìn)制差分進(jìn)化算法與標(biāo)準(zhǔn)的離散差分進(jìn)化算法都可以找到幾乎相同的平均最優(yōu)值,如圖2(a)中標(biāo)準(zhǔn)的離散差分進(jìn)化算法和本改進(jìn)的離散二進(jìn)制差分進(jìn)化算法都可以在算法迭代的過程中找到較好的平均最優(yōu)值,隨著問題規(guī)模的擴(kuò)大(如圖2(b)-(d)),改進(jìn)的離散二進(jìn)制差分進(jìn)化算法和標(biāo)準(zhǔn)的離散差分進(jìn)化算法相同的迭代步驟數(shù)中,可以找到更好的最優(yōu)值而平均最優(yōu)值之間的差距逐步擴(kuò)大,如圖2(c)(d)中,當(dāng)本文中的改進(jìn)的離散二進(jìn)制差分進(jìn)化算法與標(biāo)準(zhǔn)的離散差分進(jìn)化算法算法收斂時(shí),兩者之間的差距達(dá)到了將近一倍。
圖2 算法迭代步驟數(shù)與平均最優(yōu)值之間的關(guān)系
本文中通過速度概率和自適應(yīng)速度值,提出了一個(gè)改進(jìn)的差分進(jìn)化算法,通過理論推導(dǎo)和實(shí)驗(yàn)證明改進(jìn)的離散二進(jìn)制差分進(jìn)化算法較傳統(tǒng)離散差分進(jìn)化算法在問題規(guī)模較大時(shí),可以在相同的優(yōu)化條件下取得更好的最優(yōu)化結(jié)果。
本文中雖然提出了一個(gè)改進(jìn)的離散二進(jìn)制差分進(jìn)化算法并進(jìn)行了理論證明以及實(shí)驗(yàn)驗(yàn)證,但是由于實(shí)驗(yàn)有限是否可以找到一種不同的實(shí)驗(yàn)問題條件下,通用的離散二進(jìn)制差分進(jìn)化算法,依然是一個(gè)值得研究的問題。
[1]Storn R,PRICE K.Differential evolution-a simple and efficient heuristic for global optimization over continuous spaces[J].Journal of Global Optimization,1997(11):341-359.
[2]Storn R,Price K.Minimizing the real functions of the ICEC'96 contest by differential evolution[C]//Evolutionary Computation,1996.
[3]MIAO Shiqing,GAO Yuelin.Discrete differential evolution algorithm for solving 0/1 knapsack problem[J].Journal of Chinese Computer Systems,2009,30(9):1828-1830(in Chinese).[苗世清,高岳林.求解0/1背包問題的離散差分進(jìn)化算法[J].小型微型計(jì)算機(jī)系統(tǒng),2009,30(9):1828-1830.]
[4]HE Yichao,WANG Xizhao,KOU Yingzhan.A binary differential evolution algorithm with hybrid encoding[J].Journal of Computer Research and Development,2007,44(9):1476-1484(in Chinese).[賀毅朝,王熙照,寇應(yīng)展.一種具有混合編碼的二進(jìn)制差分演化算法[J].計(jì)算機(jī)研究與發(fā)展,2007,44(9):1476-1484.]
[5]WU Lianghong,WANG Yaonan,YUAN Xiaofang,et al.Differential evolution algorithm with adaptive second mutation[J].Control and Decision,2006,21(8):898-902(in Chinese).[吳亮紅,王耀南,袁小芳,等.自適應(yīng)二次變異差分進(jìn)化算法[J].控制與決策,2006,21(8):898-902.]
[6]SHAO Liang.Differential evolution algorithm based on indivi-dual ordering and sampling[J].Computer Engineering and Application,2012,48(1):49-52(in Chinese).[邵梁.基于排序采樣策略的差分演化算法[J].計(jì)算機(jī)工程與應(yīng)用,2012,48(1):49-52.]
[7]Epitropakis M G,Pavlidis N G,Plagianakos V P,et al.Enhancing differential evolution utilizing proximity-based mutation operators[J].Evolutionary Computation,2011,15(1):99-119.
[8]Zaharie D.Influence of crossover on the behavior of differential evolution algorithms[J].Applied Soft Computing,2009,9(3):1126-1138.
[9]YANG Qiwen,CAI Liang,XUE Yuncan.A survey of differential evolution algorithms[J].Pattern Recognition and Artificial Intelligence,2008,21(4):506-513(in Chinese).[楊啟文,蔡亮,薛云燦.差分進(jìn)化算法綜述[J].模式識(shí)別與人工智能,2008,21(4):506-513.]
[10]LIU Bo,WANG Ling,JIN Yihui.Advances in differential evolution[J].Control and Decision,2007,22(7):721-729(in Chinese).[劉波,王凌,金以慧.差分進(jìn)化算法研究進(jìn)展[J].控制與決策,2007,22(7):721-729.]
[11]ZHOU Yuren,MIN Huaqin,XU Xiaoyuan,et al.A multi-objective evolutionary algorithm and its convergence[J].Chinese Journal of Computer,2004,27(10):1415-1421(in Chinese).[周育人,閔華清,許孝元,等.多目標(biāo)演化算法的收斂性研究[J].計(jì)算機(jī)學(xué)報(bào),2004,27(10):1415-1421.][12]XIE Tao,CHEN Huowang,KANG Lishan.Evolutionary algorithms of multi-objective optimization problems[J].Chinese Journal of Computer,2003,26(8):997-100(in Chinese).[謝濤,陳火旺,康立山.多目標(biāo)優(yōu)化的演化算法[J].計(jì)算機(jī)學(xué)報(bào),2003,26(8):997-100.]
[13]GONG Maoguo,JIAO Licheng,YANG Dongdong,et al.Research on evolutionary multi-objective optimization algorithms[J].Journal of Software,2009,20(2):271-289(in Chinese).[公茂果,焦李成,楊咚咚,等.進(jìn)化多目標(biāo)優(yōu)化算法研究[J].軟件學(xué)報(bào),2009,20(2):272-289.]