□ 張晨光
隨著現代科技的不斷發展,計算機通信網絡也在不斷更新變化,網絡的模塊越來越多,這樣就會使網絡的規模不斷擴大,根支眾多,使計算機網絡的結構也越來越復雜,造成了數據在傳輸的過程中轉接點增多,傳遞的速度比較緩慢,同樣使得在維護計算機網絡方面的難度也在加大,這就會使現代通信網絡的建設和管理的難度系數增大。對計算機網絡通信的優化不但可以使信息的傳遞更加快速和可靠,還可以避免和最大限度地減少因為網絡終端和時間延遲而帶來的損失。
網絡優化的傳統方法大多是在經驗的基礎上,人們通過一些比較簡單的計算方法來完成網絡的優化,這種方法在簡化網絡的優化問題的同時,也存在著顯而易見的缺點,那些容易被人們無視掉的網絡因素將會使計算機網絡的經濟性犧牲掉。相對于傳統的優化方法,采用遺傳算法解決計算機通信網的優化問題有著傳統方法不可比較的優點:當搜索比較大的區域時,遺傳算法可以在該區域的范圍內準確尋找到該問題解決方法,并且還有比較大的操作空間。
對于計算機網絡的優化問題而言,它的本質是尋找到解決復雜網絡問題的最佳方法。到目前為止,我們已經找到了很多的方法去解決一些網絡問題,但是問題的類型在不斷增多,規模也在不斷擴大,一般的傳統方法已經不能很好地給出問題的次優解或者最優解。例如,在搜索復雜問題的最佳方法時,特別是有著很多的局部方法的網絡問題,傳統的優化算法給出的答案往往都不是很理想。雖然有很多的傳統優化問題的方法,例如梯度法、爬山法等等,但是,它們一般都是需要人們具有操作經驗,這樣在造成它們具有很大的局限性的同時,算法的過程也比較繁瑣,在一定的條件下不能很好地發揮出自身的作用。
而目前被廣泛運用的遺傳算法是從問題的解的串集來開始進行搜索的,不是從單個的解開始搜索的,覆蓋的面積比較大,利于全局的擇優規則。這一點就很好地體現了遺傳算法與傳統的優化算法的區別所在。遺傳算法還可以對群體中的多個小個體在同一時間內進行處理,對多個解進行同時的評估。
(一)遺傳算法的生物學基礎。在自然界中,生物在長期的進化過程中,在同環境進行對抗的同時,還會有意識地改變自身的情況來適應自身所在的環境。在生物圈中存在著適應環境的生存,不能適應環境的消亡這種優勝劣汰的生存規則,有的生物對環境的適應能力強,在和環境抗爭的同時改變自身的條件適應環境,得到生存的機會;有的生物適應的能力較弱,不能很好地適應環境,只能被環境滅亡。生物實現了漫長的由簡單到復雜,由低級到高級的生存進化。簡單來說,能適應環境的一些好的性狀總是會通過個體以較大的機會保存下來,并且使這種良好的性狀在長時間里得到積累。
(二)遺傳算法的思想。對于計算機通信網優化中的遺傳算法是人們根據生物圈中的生存法則受到的啟發,模擬生物的基因進化工程,而開發出來的一種全局隨機的搜索方法。相較于傳統的優化方法,遺傳算法在優化復雜問題的解答中占有了不可取代的超大優勢。遺傳算法的基本原理是群體延續的一種過程,當隨機選取一個群體時,按照生物圈中優勝劣汰的生存競爭的規則,通過一次次的更替和競爭等一系列的活動,從中得到具有更強生存能力的新一代,如此循環下去,在最后得到可以適應當前環境的一個新的群體。遺傳算法的基本思想是把已經進行優化的目標函數認為成是已經可以很好地適應環境的一個生物的種群,要實現的函數目標就是對個體的適應度的一個標準,如果個體想具有很強的適應能力,只有去努力達到這個標準,相反的話適應能力就會越小。而且,還可以把優化的標量和生物個體相對應,從當前的一個種群開始,通過利用生存法則來使一個新的群體出現,將不斷進行循環操作,直到符合標準為止,在最后,整個過程循環下來,最接近標準的那個解就是整個問題的最佳答案。
(一)代碼。在計算機的編碼中,遺傳算法在大多數的情況下使用的是計算機的鄰接矩陣的編碼方法,在一般的情況下使用的是一維編碼方式,它的長度為2N,特別的情況下有可能會采用兩維的編碼方式。在編碼的本質上,這兩種編碼方式沒有區別,但是,相對于一維的編碼方式而言,兩維的編碼方式更為直觀一些,還便于計算機網絡中的計算。
(二)種群的初始化。在遺傳算法中,通常會采用隨機初始化的方式,也可能會采用啟發式初始化的方式。雖然啟發式的初始化的方式在提高搜索的效率上有著一定的優勢,但是這一優勢對于最終的算法結果是不產生直接影響的。
1.交叉。交叉分為兩種主要的交叉方式,一種是點隨機的交叉方式,即隨機選擇交叉的節點。第二種是窗口交叉的方式,即可以選擇多個交叉的節點,每個節點交叉的是部分數據。
2.種群的變異。這種變異方式的本質是計算機網絡通信的優化問題的一個整體規劃,而一般的遺傳算法的變異是一種隨機選擇的編碼的方式。在保證計算機網絡通信的全局性能時,為了避免局部的極值,一般變異的頻率比較大。
3.操作。選擇的操作與普通的遺傳算法的操作基本相同。
遺傳算法和普通的算法相比具有一些優點。在進行問題優化的選擇這個過程中,相較于普通的算法,遺傳算法操作的對象是已經全部進行優化的編碼,在優化的編碼中搜索最優解。遺傳算法在計算機通信網絡中的應用是從一個群體到另外一個群體的方式來進行搜索的,這樣的方式使搜索的范圍更加廣泛,搜索的效率也更高。遺傳算法在整個尋找最優解的過程中,只會使用目標函數的值,除了它的值以外不會再利用一些其他的信息。遺傳算法適應了函數的確定,在計算機網絡優化的問題中,遺傳算法適應了函數的確定影響計算機優化的進行目標和優化的方向,決定了進化的效率。簡單的網絡優化與網絡連接的成本,適應函數可以簡單地設為費用的倒數。
在當代的社會中,科技在不斷發展,計算機技術日新月異,人與人之間的通信也在不斷擴大,需求在不斷增多,傳統的計算機算法已經不能很好地實現網絡通信的優化,與傳統的計算機通信網絡優化相比,計算機網絡通信的遺傳算法是一種新的網絡優化的方法,當搜索比較大的區域時,遺傳算法可以在很短的時間內在該區域的范圍內找到最有效的解決方法,為計算機網絡通信的工作提供實際的需要,在計算機網絡中應用遺傳算法來對網絡進行網絡的優化布置,所需的數據量很少,操作也很簡單,適應能力強,尋找最優解的效率高,穩定性較傳統的算法而言也比較好。計算機遺傳算法在計算機通信網絡中的應用更好地體現出了遺傳算法的優勢和價值。
[1]柴項羽.計算機算法動態系統中關鍵技術的設計與實現[J].計算機光盤軟件與應用,2013,22
[2]李肯立,郭里,唐卓.一種求解Ramsey數的DNA計算機算法[J].計算機研究與發展,2011,3
[3]李肯立,姚鳳娟,李仁發.基于分治的背包問題DNA計算機算法[J].計算機研究與發展,2007,6