時間:2023-04-01 10:06:31
導語:在遺傳算法論文的撰寫旅程中,學習并吸收他人佳作的精髓是一條寶貴的路徑,好期刊匯集了九篇優秀范文,愿這些內容能夠啟發您的創作靈感,引領您探索更多的創作可能。

關鍵詞:遺傳算法,混沌,優化方法
0引言
遺傳算法是一種較新的全局優化搜索算法,它使用了群體搜索技術,用種群代表一組問題解,通過對當前種群施加選擇、交叉和變異等一系列遺傳操作,從而產生新的一代種群,并逐漸使種群進化到包含最優解或近似最優解的狀態。但由于算法復雜度的限制, 遺傳算法雖然能以概率收斂到全局最優解,其局部搜索速度和精度并不能得到很好的保證。近幾年來遺傳算法作為優良的全局尋優方法日趨成熟,尤其是和其他尋優方法的結合,進一步提高了遺傳算法的性能,其中借助于混沌改進遺傳算法的性能,是近年來遺傳算法領域研究的熱點之一,遺傳算法和混沌優化的組合,可以使遺傳算法的全局尋優能力,搜索精度,搜索速度等幾方面得到較明顯的改進。
1混沌的特征和蟲口方程
混沌是存在于非線形系統中的一種較為普遍的現象。混沌并不是一片混亂,而是有著精致內在結構的一類現象。混沌運動具有遍歷性、隨機性等特點,混沌運動能在一定的范圍內按照其自身的規律不重復地遍歷所有狀態。因此,如果利用混沌變量進行優化搜索,無疑會比隨機搜索更具有優越性。
描述生態學上的蟲口模型Logistic映射自May于1976年開始研究以來,受到了非線形科學家的高度關注,Logistic映射是混沌理論發展史上不可多得的典范性的混沌模型,如下式所示:
2混沌遺傳算法
GA較傳統數學優化方法更易找到全局最優解,但對于一些問題也存在過早收斂、收斂速度較慢、難以找到較精確解的情況。因此,本文通過Logistic映射及相關混沌理論提出了一種運算性能較好的混沌遺傳函數優化算法。混沌遺傳算法(CGA)的主要步驟如下:
1.初始化:預先確定運行參數,包括:種群規模M,交叉概率pc,變異概率pm,最大迭代次數n。隨機產生一個分布均勻的初始群體(包含n個初始解),計算各個個體的適應度值;
2.采用比例選擇算子對當前種群進行選擇操作,實現強留劣汰;
3.對當前種群進行交叉運算。將種群內個體兩兩隨機組合,對每個配對的組合,首先由系統隨機生成一個(0,1)之間的數,由交叉概率決定是否交叉。論文參考。論文參考。若交叉,則采用映射生成的序列經簡單映射后利用高斯函數來決定交叉位置,否則,看下一對組合。所有的交叉位置由一個混沌序列即可決定;
5.若終止條件滿足,則算法中止,否則轉向步驟(2)。
本文嘗試在將改進后的遺傳算法與混沌優化算法相結合,提出一種基于混沌理論的混合遺傳算法,算法的流程如下頁流程圖所示:
圖1 改進后的混沌遺傳算法(ICGA)流程圖
3仿真分析
本文選用一維和多維多峰值函數為例,見表1,用遺傳算法(GA)、混沌遺傳算法(CGA)和本文算法(ICGA)進行比較研究。
表1 測試函數
實驗結果比較如下(以下圖縱坐標表示最大適應值,橫坐標表示演化代數)
圖2 f2實驗結果比較示意圖圖3 f3實驗結果比較示意圖
從圖2、圖3的比較結果看,本文中算法初始種群較好,進化開始就能找到高的最大值,加快搜索的速度,整個算法的尋優結果比遺傳算法好。論文參考。考慮到算法中使用了隨機操作,僅僅由一次實驗得到的結果是不能夠充分說明問題的,因此,再進行統計比較。本文中進行了20次統計實驗。比較結果如表2
表2 比較結果
【關鍵詞】免疫遺傳算法 粗糙集 屬性約簡
1 前言
對于一個粗糙集決策屬性表,人們總是期望能找出所有約簡或最小約簡,然而一個信息表的屬性約簡并不是唯一的,得到信息表的包含最少條件屬性的約簡已被證明是NP 完全問題。由于免疫遺傳算法在NP問題領域取得了比較好的效果,論文提出了一種基于免疫遺傳算法的粗糙集屬性約簡算法,實驗結果證明該算法是有效的,可快速收斂到全局最優解。
2 屬性約簡的免疫遺傳算法設計
2.1 染色體編碼
采用傳統的二進制編碼,即若決策表中有N個待約簡的條件屬性,算法產生一個長度為N的0-1二進制串,每一位代表一種對條件屬性的取舍,1表示采用該位上的條件屬性,0則表示不采用。
2.2 初始種群的產生
初始種群設置的好壞直接影響到最后的求解效果。任何一個信息表或決策表的相對核都包含在所有相對約簡當中,即具有唯一性。因此考慮在產生初始種群的時候使每個染色體都含有相對屬性核。
2.3 適應度函數的構造
適應度函數用來評價染色體的優劣,在對每一個染色體進行適應度評價前,先要對每個染色體進行一定的調整。調整是基于屬性重要度相關的某種啟發式信息,給出染色體的調整步驟:
(1)計算決策表S中條件屬性集C關于決策屬性集D的重要度γc(D);
(2)設C'為當前染色體采用的條件屬性集,計算條件屬性集C'關于決策屬性集D的重要度γc'(D);
(3)比較γc(D)和γc'(D)的大小,若γc'(D)
(4)對任意屬性ai(∈C-C')(1=1,2,…,|C-C'|),計算每一個μD(ai),令j={j|μD(aj)=max(μD (ai))},然后將染色體上第j位上的0置為1,并且C'=C'∪{aj},轉到步驟②;
(5)調整過程結束。當染色體經過如上調整以后,就可以應用適應度函數對該染色體進行評價,適應度函數的計算公式為:
F=|C|-|C'| (5.16)
則染色體中采用的條件屬性個數越少,該染色體的適應度函數值就越高,個體就越優良。
2.4 抗體產生的促進和抑制
要使適應度高的抗體進行促進,濃度高的抗體進行抑制。
抗體相似性通過抗體編碼的Manhattan距離來度量。抗體X={a1,a2,…an}與抗體Y={b1,b2,…bn}之間的相似度為:
d值越大,表示兩者的相似程度越低,如果d=0,則表示兩個抗體完全相同。故抗體X的濃度定義為:
其中,函數D(X)表示抗體X相似度小于λ的抗體數目,λ為一給定的閾值
2.5 基于收縮精度的逐級進化策略
可以用收縮精度作為算法的停止準則,即當收縮精度小于某個比較小的正數K時算法停止進化。假設優化目標為求目標函數F的最大值,在不同的進化時期適應度函數J采用不同的形式如下:
式中α、β、k1 和k1為正數,根據優化目標的需要取不同的值。其中α 和β是為了在算法的中后期拉大群體內個體之間的差距,α
3 實例分析
在某次戰斗任務中,我方使用各種常規武器對敵方6處戰場目標實施打擊。參與毀傷效果評估計算的我方武器“投入”和“產出”數據離散化得出一個毀傷評估決策信息表。應用改進的遺傳算法進行屬性約簡。圖1所示為免疫遺傳算法求解最優約簡屬性向量的迭代過程。改進后的基于收縮精度的遺傳算法在進化15代以后即停止搜索,得出了近似最優解。
由圖1可以看出在算法的進化過程中,迭代曲線每隔幾代都會變化一次。并且在算法的中后期,曲線依然出現明顯變化。一方面說明算法自始自終都實現了對解空間的有效搜索,另一方面與傳統算法相比,沒有出現過早收斂的現象。說明改進后免疫遺傳算法的科學性和有效性。
參考文獻
[1]曾子林,張宏軍,張睿,邢英.變精度粗糙集的邏輯解釋及其約簡[J].計算機應用研究,2013(05).
[2]肖大偉,王國胤,胡峰.一種基于粗糙集理論的快速并行屬性約簡算法[J].計算機科學,2009(03).
作者單位
關鍵詞:靜態調度;公共交通系統;免疫遺傳算法
中圖分類號:G650 文獻標識碼:A 文章編號:1003-2851(2012)-09-0180-01
遺傳算法[(genetic algorithm,GA)是一種自適應大規模并行搜索優化算法,較以往傳統的搜索算法具有使用方便、魯棒性強、便于并行處理等特點,因而廣泛應用于解決搜索和優化的問題。但由于遺傳算法不能很好地維持解種群中個體的多樣性,易趨于“早熟”收斂而陷入局部最優解。因此,遺傳算法不能保證一定能找到問題的全局最優解,目前公交公司各車隊的排班主要依靠工作人員的經驗手工進行,雖然它具有一定的實用性,但它存在著明顯的不足,很難保證排班的結果在運營效率等方面是最優或者接近最優的。為滿足實際應用需求,采用智能化算法來求解車輛調度優化問題,在有限的算法步驟內,找出所有滿足約束條件的排班方案中的最優方案或接近最優的方案。
一、遺傳算法
1.遺傳算法簡介
遺傳算法(Genetic Algorithms,GA)是一種基于自然選擇和基因遺傳學原理的自適應全局優化概率搜索方法。它的創立有兩個研究目的:一是抽象和嚴謹地解釋自然界的適應過程;二是為了將自然生物系統的重要機理運用到工程系統中。GA從許多點開始并行操作,在解空間進行高效啟發式搜索,因而可以有效地防止搜索過程收斂于局部最優解;遺傳算法在計算機上模擬生物的進化過程和基因的操作,通過目標函數來計算適配值,并不需要對象的特定知識,它具有全局尋優的能力,能解決高度復雜的問題,被廣泛應用于自動控制、圖形處理、電力調度等方面。
2.建立調度的數學模型
調度系統所采用的數學模型對運行環境做了簡化:車的速度恒定,保持勻速行駛,無特殊事件發生;以分鐘作為最小的時間單位,這對安排時刻表是合理的;假設客流模型能反映該段線路上的日常客流量(我們假設到站乘客服從均勻分布,在不同時段有不同的分布密度)。
首班車發車時刻為早上6點整,末班車發車時刻為22點整,所有運營車都在整分鐘時刻發車,一天之內的總班次為m,總時間為16小時,即960分鐘。用xm表示第m輛運營車發車時刻距首發時刻的時間,以分鐘為單位。決策變量為X=[x1,x2,…xn];染色體X是一個完整的發車時刻表,其中的每個基因為一個車輛的發車時刻。
免疫算法效仿生物免疫系統,把外來侵犯的抗原和免疫產生的抗體分別與實際求解問題的目標函數以及問題的解相對應,生成的抗體能有效地排除抗原,也就相當于求得了問題的最優解;對與抗原親和力高的抗體進行記憶能促進快速求解。
二、IGA應用于公交動態調度
現仍采用上面建立的數學模型,初始規模N仍為200且不隨進化代數而發生變化,便于IGA和GA比較。現利用IGA來進行優化的步驟為:
1.在解空間內隨機生成初始群體,并計算其適應度,確定最優個體x0best,并給出的取值?滓0,A取為1,?滓0i取為3,?滓?孜取為0。
2.根據式(4.7)進行進化操作,在解空間內生成子代群體,規模為N。
3.計算子代群體的適應度,確定最優個體xt+1best,若f(xt+1best)>f(xtbest),則選定最優個體為xt+1best,否則最優個體為xtbest。
4.重復執行步驟2和3,直至達到終止條件,這里T取為100,選擇最后一代的最優個體作為尋優的結果。
本文在遺傳算法的基礎上采用了一種較新的混合遺傳算法——免疫遺傳算法對公交靜態調度進行了研究,并對二者的應用結果進行了仿真和比較,結果表明IGA有效的克服了簡單GA的不足之處,并提高了尋優過程當中目標函數的收斂速度,并得到了合理的發車時刻表,可以提高公交企業的服務水平,對改善城市交通問題和節約市民出行時間有相當的實際意義。
參考文獻
[1]倪長健.免疫進化算法研究及其在水問題中的應用[D].四川大學博士論文,2003:50-51.
【關鍵詞】DNA遺傳算法;型遺傳算子
DNA計算中的DNA是重要的遺傳物質攜帶著生物體的所有遺傳信息,而遺傳算法也是采用生物的遺傳信息進行操作的算法,其不同是DNA計算是實驗室中進行的而遺傳算法是在計算機上編程進行的,將二者混合使用可以使遺傳算法在生物的遺傳調控機理中更深層次的進行模擬,從而使遺傳算法的計算性能得到進一步的提升。由于遺傳算法的優越性和良好的性能,將其混合到DNA計算中可以突破其計算的局限性[1]【2】。因此學者開始對該混合的DNA遺傳算法進行深入的研究,并取得了一定的成果。本文是在前人研究的基礎之上,對遺傳算法和DNA計算的混合使用中的算子進行了深入的研究。
1.算法中改進的新型算子的提出
1.1 改進算子中的采用技術
受到DNA分子結構的啟發,本文將用DNA的四種堿基對問題的潛在解進行編碼,由于DNA的編碼方式不能直接被計算機處理,本文將使用二進制表示的數0123對堿基進行編碼。在這種編碼方式中,令0與鳥嘌呤相對應,1與腺嘌呤對應,2與胸腺嘧啶對應,3與胞嘧啶對應,并且0、1、2、3四個整數將采用二進制的形式進行表示。為了在在編碼中實現簡易的數學和邏輯操作,將二進制數中的第一位作為區分嘌呤和嘧啶的編碼位即0代表嘌呤而1代表嘧啶。同時與互補堿基對對應的代碼也呈現互補關系,如堿基對C和G互補組合由0(00)與3(11)構成,而1(01)與2(10)構成的A和T堿基對。這樣的互補配對關系,有助于新操作算子的設計。
下面是以上面的編碼方式為依據的一個n維的最小化問題:
示長度為的四進制數字串,單個個體的編碼長度為,每個變量編碼精度由求得。
DNA-GA與遺傳算法用二進制進行計算編碼時的解碼方式相似。其均是以n維十進制向量的形式對個體進行解碼,其中:
上公式中的為整數串中的第維第列的數字。因為變量取值范圍的不同,所以按比例將變量進行轉換,這樣就可以得到對應問題的解。
按照這種模式進行編碼,就可以引入更多的基因操作到遺傳算法中,這樣就可以設計算法效率更高更有效的算子。
本文所采用的適應度函數和選擇算子是原遺傳算法中所采用的,這里就不再贅述。
1.2 改進的新型算子
1.2.1 交叉算子
交叉操作是遺傳操作中的重要的生物信息遺傳操作,故本文對現有的交叉算子進行了改進,在其中加入了DNA計算中的生物操作技術,形成了新的算子。
(1)移位交叉算子
移位交叉的父體為一個,操作過程如圖1所示。移位操作是移換個體中的堿基子序列。設父代的基因為ATCGGTACAT,在父代中隨機選取一段子序列,這段子序列所包含的堿基數目和所選堿基的位置也是隨機選定的。然后將該段子序列移動到一個新的位置,形成一個新的個體。移位交叉算子的執行概率為。如所選子序列是CGGT將其移動到C的后面形成新的個體。
(2)對換交叉算子
對換交叉操作在兩個隨機配對的個體之間進行,操作過程如圖2所示。首先在優質的群體中隨機挑選兩個個體作為對換交叉操作的父體。然后在兩個父體中分別隨機選取一段堿基序列,且命名這個堿基序列為轉座子。如圖2,在兩個父體中隨機選擇兩段個數相同的堿基序列,交換這兩個父體所選中的堿基序列,形成新的個體。對換交叉操作的執行概率為。
(3)抽換交叉算子
抽換交叉操作是需要從種群中選取兩個個體作為父代。而抽換交叉的目的就是改變個體之間的相似性,因此該操作中所選的父代不是隨機的,而是選擇兩個相似的個體。首先在適應度較好的優秀種群中隨機選取一個個體作為父代之一,在隨機選取兩個個體作為候選父代。然后通過對比候選父體與已知父體的相似度,選擇與已知父體更相似的個體作為抽換交叉操作的另一個父體。操作過程如圖3所示。抽換交叉算子的執行概率為。
以上三種算子,都可以對單個的DNA序列進行操作,而且各有特點。但是同時執行三種算子將大大增加計算復雜度。本文將對換算子作為基本的交叉算子,移位算子和抽換算子則依據概率執行。
1.2.2 新型變異算子
與以往的同變異算子不同,本文所提出的變異算子是以生物體內的DNA轉錄成RNA并且通過其配對的反密碼子決定蛋白質肽鏈的合成過程,并且計算在反密碼子中各個堿基所出現的概率,然后用低概率替換高概率或者高概率替換低概率的最大最小變異算子,最后形成新的DNA分子。生成一個新的個體。其變異概率為。其過程如圖4所示。
2.新提算子的運算步驟
步驟1:在運行算法之前,先對算法中所涉及到的參數進行設置,如種群大的大小、終止闕值、最大進化代數和所改進新型算子的運行概率,普通變異概率等。
步驟2:隨機產生size個個體,組成初始種群,并將當前的進化代數設置為1.
步驟3:對個體進行編碼串解碼,求出各個個體的適應度值。
步驟4:按照適應度值的大小將種群中的個體分為高適應度個體和低適應度個體,令交叉后產生的新個體數為Ncnew,并且從第一代交叉算起,不交叉時Ncnew為0。
步驟5:對種群中進行交叉操作,選擇個體為父代個體,按其隨機產生的概率數與交叉。
概率、,進行比較,所產生的隨機數小于哪個交叉算子的概率就執行哪個交叉算子,最后產生新的個體,并且此時產生的新個體數為+1。
步驟6:對經過交叉操作產生的個體以概率進行變異操作。產生新個體。
步驟7:對經過交叉和變異操作產生的個體用精英保留選擇機制進行選擇保留,選出適應度大的個體,此時進化代數加1.
步驟8:判斷是否終止運行,其判斷條件是最大進化代數或者是最大進化代數的闕值。滿足就結束,輸出結果;否則返回步驟3繼續進行。
3.實驗測試
為了測試出本文所提出的DNA遺傳算法的有效性和搜索性能,從以往的文獻中選取了兩個具有代表性的無約束的函數作為測試函數。本文使用改進的DNA遺傳算法求解從文獻中選取的測試函數,它們的局部最優點較多,欺騙性很強,一般的算法不易求解到這兩個函數的全局最優點。其中,的最優解為3600,在點(0,0)處取得,而的最優解在點(0,0)處取得。
將這兩個函數分別用未經過改進的遺傳算法、基于進化策略的遺傳算法(EGA)[3]和本文所提出的新的混合DNA遺傳算法(DNA-GA)進行求解,并將所得到的結果進行比較,三種算法的種群大小均為60,當最大的進化代數時終止運算。
為了對三種算法都進行比較,在三種不同的算法下每個函數都運行了50次,三種算法的對比結果如表1、表2所示。
綜上所述,可以發現,本文所設計的遺傳算子對提高DNA遺傳算法的搜索性能有了很大的作用。對于和兩個函數而言,新型的變異算子在算法求解問題的收斂速度等方面提高比新型的交叉算子作用更大,因此將兩種新型的算子配合一起來使用,可以進一步提高DNA遺傳算法性能。
4.結束語
本文在前人研究的基礎前提之上,對已有的算法進行了改進與創新,通過實驗函數的驗證本文所設計的遺傳算子對提高DNA遺傳算法的搜索性能有了很大的作用。
但是本文所改進提出的新型算子還是只用于實驗研究,需要進一步的使用實踐來證明與改進。
參考文獻
[1]余文,李人厚.一種有效地雙向進化算法[J].小型微型計算機系統,2003,24(3):527-530.
[2]陳霄.DNA遺傳算法及其應用研究[D].浙江科技大學博士論文,2010.
[3]王四春.GP算法中適應度函數的光滑擬合與調整參數方法研究[J].自動化學報,2006(3):23-30.
[4]陶吉利.基于DNA計算的遺傳算法及應用研究[D].杭州:浙江大學博士論文,2007.
關鍵詞 全局最優;混合算法;遺傳算法;powell方法
1 引言
不可微非線性函數優化問題具有廣泛的工程和應用背景,如結構設計中使得結構內最大應力最小而歸結為極大極小優化(minmax)問題、數據魯棒性擬合中采取最小絕對值準則建立失擬函數等。其求解方法的研究越來越受到人們的重視,常用的算法有模式搜索法、單純形法、powell方法等,但是這些方法都是局部優化方法,優化結果與初值有關。
近年來,由holland研究自然現象與人工系統的自適應行為時,借鑒“優勝劣汰”的生物進化與遺傳思想而首先提出的遺傳算法,是一種較為有效的求不可微非線性函數全局最優解的方法。以遺傳算法為代表的進化算法發展很快,在各種問題的求解與應用中展現了其特點和魅力,但是其理論基礎還不完善,在理論和應用上暴露出諸多不足和缺陷,如存在收斂速度慢且存在早熟收斂問題[1,2]。為克服這一問題,早在1989年goldberg就提出混合方法的框架[2],把ga與傳統的、基于知識的啟發式搜索技術相結合,來改善基本遺傳算法的局部搜索能力,使遺傳算法離開早熟收斂狀態而繼續接近全局最優解。近來,文獻[3]和[4]在總結分析已有發展成果的基礎上,均指出充分利用遺傳算法的大范圍搜索性能,與快速收斂的局部優化方法結合構成新的全局優化方法,是目前有待集中研究的問題之一,這種混合策略可以從根本上提高遺傳算法計算性能。文獻[5]采用牛頓-萊佛森法和遺傳算法進行雜交求解旅行商問題,文獻[6]把最速下降法與遺傳算法相結合來求解連續可微函數優化問題,均取得良好的計算效果,但是不適于不可微函數優化問題。
本文提出把powell方法融入浮點編碼遺傳算法,把powell方法作為與選擇、交叉、變異平行的一個算子,構成適于求解不可微函數優化問題的混合遺傳算法,該方法可以較好解決遺傳算法的早熟收斂問題。數值算例對混合方法的有效性進行了驗證。
2 混合遺傳算法
編碼是遺傳算法應用中的首要問題,與二進制編碼比較,由于浮點編碼遺傳算法有精度高,便于大空間搜索的優點,浮點編碼越來越受到重視[7]。考慮非線性不可微函數優化問題(1),式中 為變量個數, 、 分別是第 個變量 的下界和上界。把powell方法嵌入到浮點編碼遺傳算法中,得到求解問題(1)如下混合遺傳算法:
min (1)
step1 給遺傳算法參數賦值。這些參數包括種群規模m,變量個數n,交叉概率pc、變異概率pm,進行powell搜索的概率ppowell和遺傳計算所允許的最大代數t。
step2 隨機產生初始群體,并計算其適應值。首先第i個個體適應值取為fi’=fmax - fi,fi是第i個個體對應的目標函數值,fmax為當前種群成員的最大目標函數值,i=1,2,…,m。然后按goldberg線性比例變換模型[2] 式(2)進行拉伸。
fi’= a×fi’+b ( fi ³ 0 ) (2)
step3 執行比例選擇算子進行選擇操作。
step4 按概率 執行算術交叉算子進行交叉操作。即對于選擇的兩個母體 和 ,算術交叉產生的兩個子代為 和 , 是[0,1]上的隨機數,1 , 。
step5 按照概率 執行非均勻變異算子[8]。若個體 的元素 被選擇變異, ,則變異結果為 ,其中 ,
(3)
(4)
返回區間[ , ]里的一個值,使 靠近0的概率隨代數 的增加而增加。這一性質使算子在初始階段均勻地搜索空間,而在后面階段非常局部化。 是[ , ]之間的隨機數, 為最大代數, 為決定非均勻度的系統參數。
step6 對每個個體按照概率ppowell進行powell搜索。若個體 被選擇進行powell搜索操作,則以 作為初始點執行powell方法得 ,若 則把所得計算結果 作為子代 ,否則,若 取 = ;若 取 = ,1 。
step7 計算個體適應值,并執行最優個體保存策略。
step8 判斷是否終止計算條件,不滿足則轉向step3,滿足則輸出計算結果。
作為求解無約束最優化問題的一種直接方法,powell法的整個計算過程由若干輪迭代組成,在每一輪迭代中,先依次沿著已知的n個方向搜索,得一個最好點,然后沿本輪迭代的初始點與該最好點連線方向進行搜索,求得這一階段的最好點。再用最后的搜索方向取代前n個方向之一,開始下一階段的迭代。為了保持算法中n個搜索方向是線性無關的,保證算法的收斂性,對替換方向的規則進行改進,在混合法的計算步驟step6中采用文[9]中的改進powell方法,其求解過程如下:
(1) 變量賦初值 ,n個線性無關的n個方向 , ,…, ,和允許誤差ε>0,令k=1。
(2) 令 ,從 出發,依次沿方向 , ,…, 作一維搜索,得到點 , ,…, 求指標m,使得 - =max { - },令 。若 ε,則powell方法計算結束,否則,執行(3)。
(3) 求 使得 =min ,令 = = ,若 ,則powell方法計算結束,得點 ;否則,執行(4)。
(4) 若 ,令 ,否則令 ( ),然后置 ,轉(2)。
3 算例
t [-500,500]
圖1 函數f(x)特性示意圖
函數f(x)有相當多的極小點,全局極小點是 =-420.97, =1,2,…, ,最優值為-837.97;次最優點為 ={( , ,…, ): =-420.97, , =302.52}, =1,2,…, ,次優值-719.53。變量個數n=2時函數f(x) 特性如圖1示。程序編制和運行環境采用fortran power station 4.0,隨機數由內部隨機函數產生,在奔騰133微機上運行。
采用改進的powell方法計算100次,初值在區間[-500,500]內隨機產生,只有6次(即以概率0.06)搜索到全局最優,計算成功的概率極低。
holland建立的標準(或簡單)遺傳算法,其特點是二進制編碼、賭輪選擇方法、隨機配對、一點交叉、群體內允許有相同的個體存在。取種群規模m=30,交叉概率pc=0.95、變異概率pm=0.05,最大進化代數t=1000,每個變量用串長為l=16的二進制子串表示。二進制編碼比浮點編碼遺傳算法計算精度低,對于標準遺傳算法以目標函數小于-800為搜索成功,標準遺傳算法運行100次。當取最大進化代數為t=200時,40次(以概率0.40)搜索到全局最優,平均計算時間為0.51秒;當取t=500時,51次(以概率0.51)搜索到全局最優,平均計算時間為1.13秒。
采用本文混合法計算,取m=30, pc=0.85、pm=0.2,t=100,進行powell搜索的概率ppowell取不同值,混合法運行100次,計算結果見如表1。對于這個具有多極值的算例,多次計算表明ppowell=0.3時,混合法能以完全概率搜索到全局最優的準確值,但是此時混合法計算時間約為標準遺傳算法取t=500時計算時間的4/5。對應的浮點編碼遺傳算法,取m=30,pc=0.85、pm=0.2,t=100,運行100次,82次(以概率0.82)搜索到全局最優(如表1中ppowell =0所示),計算時間約為標準遺傳算法取t=500時計算時間的1/8,但是搜索到全局最優的概率卻遠遠高于標準遺傳算法。
表1 ppowell取不同值時混合法的計算結果
ppowell
0.0
0.02
0.05
0.1
0.2
0.3
求得最優解的次數
82
85
89
94
98
100
求得最優解的概率
0.82
0.85
0.89
0.94
0.98
1.00
平均計算時間/ 秒
0.14
0.20
0.31
0.47
0.68
0.87
4 結束語
針對不可微函數的全局優化問題,本文提出一種把powell方法與浮點編碼遺傳算法相結合的混合遺傳算法,該算法兼顧了遺傳算法全局優化方面的優勢和powell方法局部搜索能力較強的特點,提高求得全局解的概率。計算結果表明混合法優于遺傳算法和powell法,可以可靠地搜索到具有多個局部極值的函數優化問題的全局解。由于計算中只用到函數值信息,本文混合法不僅適用于不可微函數優化問題,也適合可微函數全局優化問題。
參考文獻
[1] 周明,孫樹林.遺傳算法原理及應用[m].北京:國防工業出版社,1999.
[2] goldberg d e. genetic algorithms in search, optimization and machine learning[m]. reading, ma: addison wesley,1989.
[3] 孟慶春,賈培發.關于genetic算法的研究及應用現狀[j].清華大學出版社,1995,35(5):44-48.
[4] 戴曉暉,李敏強,寇紀松.遺傳算法理論研究綜述[j].控制與決策,2000,15(3):263-268.
[5] lin w,delgado-frias j g.hybrid newton-raphson genetic algorithm for traveling salesman problem[j]. cybernetics and systems, 1995,26(5):387-412.
[6] 趙明旺.連續可微函數全局優化的混合遺傳算法[j] .控制與決策,1997,12(5):589-592.
[7] goldberg d e.real-code genetic algorithm,virtual alphabets and blocking[j]. complex systems,1991,5:139-167.
[8] michalewicz z.a modified genetic algorithm for optimal control problems[j].computers math. application,1992,23(12):83-94.
[9] 陳寶林.最優化理論與算法[m].北京:清華大學出版社,1989.
[10] 俞紅梅.全過程系統能量綜合方法的研究[d].大連理工大學博士學位論文,1998.
hybrid approach for global optima of indifferentiable nonlinear function abstract a hybrid computational intellective algorithm for locating the global optima of indifferentiable nonlinear function was put forward by setting the powell algorithm in real-code genetic algorithm. the hybrid approach improved the local searching ability of the genetic algorithm and promoted the probability for the global optima greatly. because only the objective values are used, the hybrid approach is a generalized genetic algorithm for global optima of differentiable and indifferentiable nonlinear functions.
關鍵字:遺傳算法;地理信息系統;公交線路網
中圖分類號:TP183 文獻標識碼:A文章編號:1007-9599 (2010) 15-0000-02
GIS Bus Line Network Optimization Model Based on Genetic Algorithm
Yuan Hua1,Yu Xinshui2,Tang Weidong3
(1.Southwest Forestry University,Kunming650224,China;2.Forest Resources Management Station of Baoshan,Baoshan678000,China;
3.Forestry Administration Office of Nujiang,Nujiang673100,China)
Abstract: This paper studies the optimization strategy for the city bus lines.Traffic problems in urban public transport the city has been plagued,a difficult problem to solve the problem of urban public transport operation and improve the efficiency of urban transport,vehicle scheduling to improve the efficiency of public transport,this paper presents a genetic algorithm based optimization strategy for GIS bus lines. The strategy for geographic information system (GIS) as a platform,the genetic algorithm optimization model for the spatial layout of the bus transport network optimized layout algorithm.
Keywords:Genetic algorithms;Geographic information system;Bus lines network
隨著社會的快速發展,公共交通工具已逐漸成為人們日常出行的主要交通工具,我國各城市的公交系統也迅速發展,公眾出行較為通暢、便利。但與此同時,搭乘公交時,乘客也面臨著多條線路的選擇問題。在這種情況下,研制開發出一個解決公交線路選擇問題的自主查詢計算機系統,已成為一個非常值得研究與探討的問題。公交線路選擇問題的研究,涉及乘客心理、路段流量、公交容量、換乘耗時、及站點分配等諸多因素。這些因素彼此約束,內在聯系較為細微,各種因素難以精確分析并予以量化,處理起來較為復雜。而由于大中型城市的公交線路數、站點數都已達到百、千數量級,數據處理的繁瑣性進一步增大了問題本身的難度。
地理信息系統(GIS)是以計算機技術為基礎的信息管理技術,它主要是完成空間數據的采集、維護、存儲、分析、輸出和等功能。GIS和空間分析一方面通過記錄地物的坐標值定量化了空間位置,另一方面又通過存儲這些地物的屬性表格描述了地物特性。它能夠全面的分析這些地物的空間關系和相互影響,并能夠直觀和靈活的顯示空間數據和空間分析結果。因此,GIS已經成為解決涉及空間相關問題的唯一方案。目前GIS已經被廣泛的應用到各個領域。本文針對城市公交交通問題一直困擾城市一大難題,是為了解決城市公共交通運行問題,改善城市交通運行效率,提高公共交通車輛調度效率,本文提出了基于遺傳算法GIS公交線路網優化策略。該策略以地理信息系統(GIS)為平臺,遺傳算法為空間布局優化模型的公交車交通網優化布局算法。
一、遺傳算法
遺傳算法(GA)提供了一種受生物進化啟發的學習方法。它不再是從一般到特殊或從簡單到復雜地搜索假設,而是通過變異和重組當前已知的最好假設來生成后續的假設。在每一步,被稱為當前群體(population)的一組假設被更新,方法是通過使用目前適應度最高的假設的后代替代群體的某個部分。這個過程形成了對假設的生成并測試(generate-and-test)柱狀搜索(beam-search),其中若干個最佳當前假設的變體最有可能。采用遺傳算法主要有以下幾個優點:
(一)將搜索過程作用在編碼后的字符串上,不直接作用在優化問題的具體變量上,在搜索中用到的是隨機的變換規則,而不是確定的規則。它在搜索時采用啟發式的搜索,而不是盲目的窮舉,因而具有更高所搜索效率。
(二)現行的大多數優化算法都是基于線性、凸性、可微性等要求,而遺傳算法只需要適合度信息,不需要導數等其他輔助信息,對問題的依賴性較小,因而具有高度的非線性,適用范圍更廣。此外還可以寫出一個通用算法,以求解許多不同的優化問題。
(三)遺傳算法從一組初始點開始搜索,而不是從某一個單一的初始點開始搜索。而且給出的是一組優化解 ,而不是一個優化解,這樣可以給設計者更大的選擇余地。它能在解空間內充分搜索,具有全局優化能力。
(四)遺傳算法具有很強的易修改性。即使對原問題進行很小的改動 ( 比如目標函數的改進 ),現行的大多數算法就有可能完全不能使用 ,而遺傳算法則只需作很小的修改就完全可以適應新的問題。
(五)遺傳算法具有很強的可并行性,可通過并行計算來提高計算速度, 因而更適用于大規模復雜問題的優化。
二、遺傳算法GIS公交線路網優化模型
(一)模型的建立
設城市公交系統共有 個站點,(本問題中 ), 條公交線路,設站點和線路通過一個3維的0-1矩陣來表達。設
這樣該城市的公交網絡通過該0-1矩陣能完全表達。
設決策變量為 ,意義為:
則當站點i和j之間無第k條線路時,i和j之間則不能通過第k條線路到達,因此有:
(1)
設起始點為a,目標點為b,我們目的是在在a和b之間插入r個站點 ,使得a, ,b構成一個可到達的線路。即:
(2)
目標函數我們考慮費用最小,時間最小和換乘次數最小三個目標。
設 ,表示線路 是否需要通過 換乘。當 則線路 不換乘;當 則線路 換乘。
則換乘次數最少的目標為
要求時間最小,則有:
其中 為經過站點數, 為坐車時間; 表示換乘時間.二者之和為總時間。設線路a, ,b計算得到費用為Cost,計算方法根據一元制和分段計價制度的規則進行計算總費用最小的目標函數為:
最后得到的總模型為:換乘次數最少
時間最少
費用最小
(3)
對該模型的求解,我們可以根據換乘次數最少得到最優結果,也可以根據時間最少得到最優結果,還也可以根據費用最少得到最優結果。把三種情況下的最好結果都可以提供給顧客考慮,由顧客根據自己的需要選擇。當然有的結果會是兩種或三種目標最小情況下的解,這樣就更好。
(二)模型求解
基于本文前面所提到的遺傳算法GIS公交線路網優化模型,設計出公交線路網的求解的流程圖如圖1所示,同時以地理信息系統(GIS)平臺,選取了蘇州市公交網絡作為實驗數據。
三、結束語
為了解決城市公共交通運行擁擠問題,改善城市交通運行效率,提高公共交通車輛調度效率,本文提出了基于遺傳算法GIS公交線路網優化策略。構建了公交系統的數學模型,并提出了采用遺傳算法求解該模型,該策略以地理信息系統(GIS)為平臺,遺傳算法為空間布局優化模型的公交車交通網優化布局算法。
參考文獻:
[1]徐士偉.等.GIS技術在公共交通規劃中的應用[D].同濟大學道路與交通工程系碩士學位論文,2000
[2]劉光明,蔡先華.一種城市公交查詢的算法及其應用[J].交通運輸工程與信息學報,2005,3(2):87-91
[3]曹桂發,傅俏梅.城市交通信息系統的設計研制[J].系統工程理論與實踐,1997,(1):105-109
[4]時敬梁,田世峰.遺傳算法在公交車輛智能排班系統中的應用研究.人工智能與識別技術,2007(5):1679-1681
資助項目:西南林業大學森林經理學國家林業局重點學科資助(XKZ200901),云南省省級重點建設專業西南林業大學林學專業資助。
關鍵詞:入侵檢測器;量子遺傳算法;協同進化
中圖分類號:TP274文獻標識碼:A文章編號:1009-3044(2012)13-3199-03
Research on Generating Method of Detector in IDS
LI Lu-lu
(College of Computer Science and Engineering Institute, Yulin Normal College, Yulin 537000, China)
Abstract: The generation of intrusion detection device is the core o f the intrusion detection system, In place of com plex problem of optimizaion, quantum genetic algorithm has strong searching capabilities and the most optimal performance. In this paper a quantum genetic algorithm coevolution detector generation method is proposed. The population needing to evolve is divided to some child population by simulating nature cooperative coevolution mechanism, and each population using quantum genetic algorithm to optimize, making whole intrusion detection system has good adaptability and diversity.
Key words: intrusion detection device; quantum genetic algorithm; cooperative coevolution
1概述
隨著網絡和計算機技術的不斷發展,網絡安全性問題日益突出起來,入侵檢測系統是一種重要的安全防范技術,已成為網絡安全的重要保障之一[1-2]。目前各種不同的攻擊方式不斷出現,因此入侵檢測中的有關智能性研究逐漸成為入侵檢測系統研究領域中的一個重要方向。而入侵檢測系統的主要部件是檢測器,檢測器生成算法是生成有效檢測器的關鍵,是檢測異常變化的核心所在[3-4]。檢測器的設計對入侵檢測系統的性能有著重要的影響,其從產生到成熟再到被丟棄,有自身固有的過程和生命周期,可以利用遺傳算法來生成一個成熟檢測器集,采用交叉、變異等遺傳操作對其進行進化,使成熟檢測器群體向“非我”進化。但隨著問題規模的不斷擴大和搜索空間的更加復雜,遺傳算法在實際應用中有一定的局限性,不能表現出算法的優越性,出現迭代次數多、收斂速度慢、易陷入局部最優值和過早收斂等問題。
量子遺傳算法結合了量子計算和遺傳算法的優點,它將量子所具有的獨特計算能力和遺傳算法的全局尋優能力結合起來,提升了算法的優化性能,比傳統遺傳算法具有更高的搜索效率[5]。該文在現在有研究的基礎上提出一種檢測器生成方法,該算法通過對自然界中的協同進化機制進行模擬,首先將要進化的種群劃分為多個子種群,然后各個種群再分別利用量子遺傳算法進行優化,使整個入侵檢測系統具有良好的自適應性和多樣性。
2相關知識
量子遺傳算法本質上是種概率優化方法,其基本思想是基于量子計算原理,用量子比特編碼來表示染色體,充分利用量子態的疊加性和相干性,以當前最優個體的信息為指導,通過量子門來完成種群的更新操作,以此來促進算法的收斂,從而來實現目標的最后優化求解。
2.1量子比特
通常在計算機中用二進制0和1來表示信息單元,而在量子計算機中是用一個雙態量子系統即量子比特來表示信息單元。量子比特作為信息單位,形式上表示為兩種基態|0>和|1>,一般用|0>表示0,用|1>表示1。與經典比特不同,量子比特不僅可以處于兩種基態|0>和|1>,而且還可以處在中間態,也就是|0>和|1>的不同疊加態。因此,量子比特的狀態可用下式表示:
2.2量子染色體[6]
量子遺傳算法是采用量子比特的編碼方式,用一個復數對(α,β)表示一個量子比特。若一個量子染色體包含m個量子比特,則由m個復數對組成。這個染色體編碼形式如下:
2.3量子旋轉門
在量子遺傳算法中量子染色體一般是糾纏或疊加的,所以可以用量子門來表示染色體的各個糾纏態或疊加態;父代群體不能決定子代個體的產生,個體的產生是通過父代的最優個體以及它們狀態的概率幅決定的。用構造的量子門表示量子疊加態或糾纏態的基態,它們彼此干涉使相位發生改變,以此達到改變各個基態的概率幅的目的。因此,如何構造合適的量子門是量子遺傳操作和量子遺傳算法亟待解決的關鍵問題,量子門構造的是否合適會影響到遺傳算法的性能。目前在量子遺傳算法中通常采用量子旋轉門U,U可表示為
,θ為旋轉角。
2.4量子變異[7]
通常情況下在遺傳算法中,算法的局部搜索能力以及阻止未成熟染色體收斂這些操作都是通過變異作用實現的,量子變異必須達到量子遺傳算法對變異操作的要求,這里我們這樣定義量子比特的變異操作:
(1)從種群中以給定的概率pi隨機地選擇若干個體;
(2)確定變異位,以確定的概率對從(1)中選擇的個體隨機地確定變異位;(3)對換操作,對換選中位量子比特的概率幅。
2.5協同進化算法[8]
進化算法的本質是優化,是為了使物種在激烈的競爭中能夠具備生存的本領以致在競爭中能夠生存下來。在一般的遺傳算法中要么只涉及到個別群或個體的進化,要么只是涉及種群之間的競爭,幾乎沒有顧及到個體與個體,種群與種群之間互惠寄生的協同關系。基于以上原因,提出了協同進化算法。協同進化是生態系統中眾多進化方式中的一種,進化中種群要生存下來不僅要受自身因素的影響,同時也受周圍同類或異類的相互影響,在這些因素的影響下能夠生存下來。在進化的過程中種群的個體之間及其與其它種群之間都要進行相互作用相互影響。
3基于量子遺傳算法的協同進化檢測器生成算法設計思路
算法的基本思想:首先對隨機生成的種群進行種群分割,將種群分成若干個子種群。利用空間形態學的原理,根據種群中各個自體間的距離來判斷它們是否屬于一個分割,各個子群之間互相協作,以確保整個系統的適應度不斷提高;用量子遺傳算法對單個子群進行進化。量子遺傳算法優化檢測器的入侵檢測模型如圖1所示。圖1量子遺傳算法優化檢測器的入侵檢測模型
(1)種群的初始化策略
在量子遺傳算法中種群初使化操作通常是這樣進行的,各個體的量子位概率幅() 2,也就是說各個體的全部狀態出現的概率相同。協同進化需要多個種群,因此必須增加種群的多樣性,所以在初始化時我們將量子位概率空間平均分為N個,即體表N個子群,0、1極限概率為δ,用公式(1)來初始化第k個子種群,也就是將同子種群內的每個個體初始化為量子染色體,每個量子染色體的概率相同,不同子種群個體的狀態以不同概率出現,以此來達到增加初始化個體多樣性的目的。(2)量子門更新策略
采用進化方程的方式來調整量子門的旋轉角大小和方向。這樣做有兩個好處:一是減少了參數的個數,同時算法的結構也得到了簡化;另一個是利用進化方程的記憶的,可以利用個體自身的局部最優信息,鄰域種群的最優信息,以及整個種群最優狀態的信息,從而使旋轉角θ能夠得到更加合理的調整,還能夠更好地跳出局部極值。進化方程可定義為:U=?
p -xi,其中k1,k2,k3,k4為影響因子,pi,pj是左右鄰域種群極值,pm為個體所在種群極值,p為全局極值。
(3)具體實現步驟
Step1:將量子位概率空間平均分為N個,即體表N個子群,0、1極限概率為δ,用公式子種群,也就是將同子種群內的每個個體初始化為量子染色體,每個量子染色體的概率相同,不同子種群個體的狀態以不同概率出現,以此增加初始化個體的多樣性。
Step2:初始化步驟1中的每一個子群Qi( )
Step4:依次對Pi( ) t進行適應度評估;
Step6:保留步驟5中得到的N個最佳個體,如果此時得到了滿意解,則算法終止,否則轉入Step7;
Step7:采用(2)中定義的量子門U( )
Step8:以確定的概率進行量子變異;
Step9:對于每個新的子代Qi() t+1,算法轉至Step4繼續進行。
4結論
檢測器集的好壞決定了入侵檢測系統的性能,因而檢測器集的生成算法是入侵檢測系統開發中最核心的部分。該文引入量子遺傳算法來實現檢測器的優化過程,設計了基于遺傳算法的檢測器生成算法。該算法通過模擬自然界協同進化機制,把需要進化的種群劃分為多個子種群,各個種群采用量子遺傳算法進行優化,使整個入侵檢測系統具有良好的自適應性和多樣性。在接下來的研究中,將重點研究侵檢測器中各參數的影響程度的問題,以提高入侵檢測系統的自適應性和有效性,進一步提高入侵檢測的準確率。
參考文獻
[1]卿斯漢,蔣建春,馬恒太,等.入侵檢測技術研究綜述[J].通信學報,2004(7):19-29.
[2]林果園,黃皓,張永平.入侵檢測系統研究進展[J].計算機科學,2008,35(2):69-74.
[3]葛麗娜,鐘誠.基于人工免疫入侵檢測檢測器生成算法[J].計算機工程與應用,2005(23):150-152.
[4]楊東勇,陳晉因.基于多種群遺傳算法的檢測器生成算法研究[J].自動化學報,2009,35(4):425-432.
[5]羅文堅,曹先彬,王煦法.檢測器自適應生成算法研究[J].自動化學報,2005,35(6):907-916.
[6]趙麗,李智勇.求解入侵檢測問題的量子免疫算法[J].計算機工程與應用,2011,47(11).
眾所周知,配電網系統規模較大、信息聚集點眾多、結構組成復雜,因此與其相配的繼電保護裝置也隨之分布在配電網系統中不同的位置,其應用范圍上至變電站下到變電站內部與配電系統直接相關聯的設備,以及在電網中開閉所、中壓配電饋線、低壓配電網以及配變站等。繼電保護裝置長久以來就是配電網中的重要組成部分,其發展經歷與電力系統中的繼保裝置是完全相同的,由最初的電磁型繼電保護裝置,發展至晶體管型繼電保護裝置,在電力電子器件廣泛應用后又出現了集成電路型繼電保護裝置。時至今日,伴隨計算機技術的日新月異,所使用的繼電保護裝置多數屬于微機型繼電保護裝置,但仍有各種類型的繼電保護裝置應用于不同的配電網系統中以適用不同層次電網的要求。伴隨著微機系統繼電保護裝置性能更加優良、操作更加方便、維護更加簡單,其在高壓特高壓電網中的推廣逐漸成功,其應用日益廣泛,更加深得人心。越來越多地適用于中低壓配電網的繼電保護裝置也被不斷開發應用。
2配電網保護存在的問題
電力系統繼電保護的主要工作任務是切除系統中的故障設備以保障系統的正常運行。由于技術等各方面的原因,由常規繼電保護裝置構成的繼電保護系統是一種非自適應繼電保護系統,其動作特性不能隨著電力系統的運行方式的變化而自行改變。常規繼電保護的整定值是按照離線最嚴重的情況進行的,而且在運行中基本保持不變。因此,在常規繼電保護整定計算過程中不得不按照每套保護對應的電力系統最大運行方式來計算保護的動作值,按照每套保護對應的電力系統最小運行方式來校驗保護的靈敏度。這種按最嚴重的運行條件確認保護整定值的方法,雖可保證在電力系統各種運行方式下發生故障時,繼電保護能正確動作,但同時存在著兩個缺點:一是按照該方法確定的繼電保護整定值,對電力系統其它運行方式來講不是最佳的整定值;二是在電力系統最小運行方式下最不利的故障時,繼電保護系統的性能會嚴重變壞甚至導致拒動現象。這兩個缺點不但限制了電網運行的靈活性,而且也降低了電網運行的穩定性。正是在這樣的背景下提出了自適應保護的概念。自適應保護是指根據電力系統運行方式和故障狀態的變化能實時改變保護性能、特性或定值的保護。隨著具有高速運算和邏輯判斷能力、強大的記憶能力以及其固有的可編程性的微機保護在電力系統中的廣泛應用和通信手段與通信技術的不斷發展與進步,實現自適應繼電保護已成為可能。
3遺傳算法的配電網自適應保護
自適應繼電保護是在上世紀80年代提出的一個較新的研究課題。它的最主要任務就是解決目前繼電保護裝置中所無法解決的問題,使得繼電保護裝置更趨于完善,現在所研制的適用于輸電線路和配電系統元件的各類型微機繼電保護裝置,已經具備完全取代傳統裝置的能力,能夠迅速將電力系統中發生故障的電氣元件進行切除,使其免于遭受損壞,并使得其它無故障線路迅速恢復正常運行。遺傳算法,是建立于達爾文的生物論以及孟德爾遺傳學說基礎之上的一種借鑒生物界自然選擇和自然遺傳機制的高度并行、隨機、自適應搜索算法,具有堅實的生物學基礎。遺傳算法強調從生物群體觀點出發,看待種群優化問題。依據遺傳算法的思想,我們把所求問題中的每一個點都看做是一個個體,這些個體組成了群體,正因為如此,種群中的每一個個體都可以代表一個優化問題的可行解。本論文提出的基于遺傳算法的配電網自適應繼電保護,該保護是利用電網全局信息、保護定值在線整定的新型保護。
4基于Matlab算法的仿真和分析
在實際應用過程中,第一階段的預測模型在處理高維度、非線性數據時,無法獲得優質結果;而神經網絡模型在學習樣本數量有限時,學習過程誤差易收斂于局部極小點,預測精度難以保證;學習樣本變量很多時,又容易陷入維數災難。由于影響機制復雜,考慮到支持向量機是建立在結構化風險最小化原則之上,可以有效地減少經驗風險帶來的影響,不僅對小樣本數據表現出良好的擬合精度,還對獨立的測試集表現出較小的誤差,在一定程度上對學習機的泛化能力有所提升,而且支持向量機算法是一個凸優化問題,在物流需求預測方面具有較明顯的優勢,本文采用基于支持向量機學習理論的物流園區需求預測方法對成都市貨運量進行預測。
支持向量機參數的選取直接影響模型的預測精度,傳統的網格搜索參數組合已經無法滿足對區域物流需求預測的精度要求,本文采用遺傳算法對支持向量機進行參數尋優,構建GA-SVM區域物流需求預測模型,并對成都市物流需求進行預測,結果證明GA-SVM預測模型的預測精度要優于傳統的SVM預測模型。
2 GA-SVM預測模型的算法設計
2.1 支持向量機
支持向量機(Support Vector Machine,SVM),是Vapnik在20世紀90年代中期以統計學為基礎提出的一種新型機器學習方法,作為統計學理論中比較年輕和實用的理論,已經在實際應用中得到很大的發展,尤其是在小樣本、非線性及高維分類和回歸問題中表現出了比較出色的效果。
相較于多項式核函數和Sigmoid核函數,徑向基核函數在先驗知識不足的情況下,擁有更好的預測精度。因此,本文GA-SVM預測模型采用徑向基核函數作為預測模型的核函數。則SVM模型的待優化參數有:核函數參數、不敏感函數參數和懲罰參數C。核函數參數是映射函數的參數,通過改變函數關系來影響映射的特征空間,表示映射規律的復雜程度;不敏感函數參數表示所能容忍的最高誤差,影響支持向量的個數;懲罰參數C是在確定的特征空間中調節學習機器的置信范圍和經驗風險的比例,對模型的泛化能力有很大影響。為了控制GA-SVM模型的誤差容忍范圍,在后續試驗中,本文將不敏感函數參數確定為0.001。
2.2 遺傳算法
遺傳算法(Genetic Algorithm)是由Holland教授模擬達爾文生物進化理論的自然選擇和遺傳學機制的生物進化過程而創造出的計算模型,是一種通過模擬自然進化過程搜索最優解的方法。遺傳算法以它的實用、高效和魯棒性強等特點深受國內外學者的青睞。
與其他傳統方法不同的是,遺傳算法并不依賴梯度信息和其他任何外部信息,而是通過模擬自然進化過程來搜索最優解,以適應度函數作為搜索方向的引導,用選擇算子選擇親代和子代,用交叉和變異算子保證種群的多樣性。遺傳算法作為啟發式算法的一種,具有對可行解表示的廣泛性和不易陷入局部最優解的特點,同時采用自然進化的原理來表示復雜的現象,能夠快速可靠地解決非常困難的問題。隱含的并行性也使算法在計算上的時間大大縮短。本文正是借助遺傳算法的這些特點,通過全局優化能力來對支持向量機的參數進行優化。
2.3 GA-SVM預測模型算法實現
將遺傳算法與支持向量機算法相結合,提出一種基于GA-SVM的預測模型。支持向量機算法的核函數采用徑向基核函數(RBF),利用二進制編碼對支持向量機模型的參數進行編碼,通過遺傳算法的迭代尋優得出最優解,從而確定最優的懲罰函數C、核函數參數,最后通過支持向量機模型得到最后的預測結果。
具體的模型實現步驟如下:
(1)確定支持向量機參數的取值范圍。
(2)確定遺傳算法運行參數的大小。
(3)以二進制編碼方式建立NL矩陣作為種群,并隨機生成初始種群。
(4)將初始種群中的每個個體,利用支持向量回歸機程序進行計算,將輸出結果與原數據進行對比,計算出訓練樣本的預測精度,從而得出每個個體的適應度大小。
(5)如此循環N次,直到每個個體都計算出相應的適應度。
(6)對整個種群進行遺傳操作(選擇、交叉、變異),獲得新種群。
(7)當滿足終止條件時(達到最大進化次數或適應度連續系帶沒有變化),停止計算;否則轉到步驟(4),直到結果滿足終止條件。
(8)滿足終止條件獲得的輸出就是最優解的懲罰函數C、核函數參數。將最優參數輸入支持向量回歸機,對數據樣本進行預測。
具體算法流程如圖1所示。
3 實例分析
為了驗證GA-SVM算法的預測精度,本文使用MatlabR2013a作為編程工具對GA-SVM算法進行了實現。同時選擇臺灣大學林智仁教授(Chih-Jen Lin)等開發的支持向量機軟件Libsvm-2.88來做實驗結果的比對。
本文采用成都市貨運量作為被解釋變量,根據主成分分析法,選擇出相應的指標體系:第一產業產值、第二產業產值、第三產業產值、社會消費品零售總額、進出口貿易總額、城鎮居民可支配收入、農村居民可支配收入、成都市貨運量。以19962010年的數據樣本作為訓練數據,以20112014年的數據樣本作為測試數據進行實驗。為了提高測試結果的可信程度,本文分別用兩種方法對數據樣本進行多次實驗和比對。
為了避免經驗風險帶來的預測誤差,本文通過調節懲罰函數C、核函數參數兩參數的范圍多次測試獲取預測精度較高的參數范圍:CE[0.1,100],6E[0.01,1000]。最終預測結果如表2所示。
根據表2可知,GA-SVM模型在2013年貨運量的預測中達到最低的相對誤差-0.231%,在2012年、2013年、2014年的相對誤差都在10%以內達到了較高的預測精度。反觀SVM模型,除了2014年的相對誤差在10%以內,其余各年份都超過了這個標準,在2011年的預測中達到了最高的-61.807%,很明顯GA-SVM的預測精度要優于SVM的預測精度,如圖2所示。