摘 要:隨著社會經(jīng)濟(jì)的不斷進(jìn)步與發(fā)展,計算機(jī)技術(shù)的不斷創(chuàng)新改革,計算機(jī)算法受到了越來越多生物信息學(xué)者的關(guān)注和重視。計算機(jī)算法作為生物信息學(xué)中的重中之重,是一個必不可缺的關(guān)鍵組成部分,生物信息學(xué)中的問題具有數(shù)量繁多、計算量大的鮮明特征,必須采用最先進(jìn)合理的計算機(jī)算法,才能不斷提高處理生物信息學(xué)問題的效率。文章將進(jìn)一步的對計算機(jī)算法在生物信息學(xué)中的應(yīng)用展開分析和探討。
關(guān)鍵詞:計算機(jī)算法;生物信息學(xué);應(yīng)用研究
引言
生物信息學(xué)作為一門新興的交叉學(xué)科,它涵蓋了計算機(jī)科學(xué)、生物學(xué)以及統(tǒng)計學(xué)等不同的學(xué)科。它的主要研究內(nèi)容是通過應(yīng)用計算機(jī)對各種生物數(shù)據(jù)信息進(jìn)行檢索、分析以及儲存。在生物信息學(xué)中,它的各種組合問題都具有數(shù)量繁多、計算量大的鮮明特征,為了能有效地解決各類組合難問題,就必須不斷提高計算的處理速度,創(chuàng)新計算機(jī)算法,保證各算法和程序的高效性。
1 在生物信息學(xué)中普遍被應(yīng)用的計算機(jī)算法
在生物信息學(xué)中那些常見NP-難的組合優(yōu)化問題可以分為以下幾個:群體單體型檢測問題、個體單體型檢測問題、多元聚合酶鏈反應(yīng)引物集設(shè)計問題、標(biāo)簽SNPs選擇問題、序列比對問題以及基因芯片的探針設(shè)計問題[1]。這些問題都具有大量的信息數(shù)據(jù),對于計算機(jī)的處理速度要求偏高。所以,必須不斷優(yōu)化計算機(jī)算法,對計算機(jī)算法在生物信息學(xué)中的應(yīng)用展開分析和研究。通常來說,生物信息學(xué)中組合優(yōu)化問題采用的計算機(jī)算法主要包括以下幾種:近似算法、精確算法、啟發(fā)式算法以及參數(shù)化算法等。采用近似算法通??梢缘玫捷^為滿意的時間復(fù)雜度。精確算法則是生物信息學(xué)中遇到難度大組合問題的首要選擇,然而它具備偏高的時間復(fù)雜度[2]。啟發(fā)式算法相對于傳統(tǒng)的計算機(jī)算法,前者獲得解的收斂速度會快很多。參數(shù)化算法通過從組合問題的參數(shù)特性研究分析入手,建立出多維的數(shù)學(xué)模型,從而有效地解決問題。
2 啟發(fā)式算法在生物信息學(xué)中的應(yīng)用
啟發(fā)式算法通常被普遍應(yīng)用于較大規(guī)模生物信息學(xué)的組合問題中,啟發(fā)式算法具體包括了以下幾種不同的算法:粒子群優(yōu)化算法、神經(jīng)網(wǎng)絡(luò)算法、遺傳算法、混沌免疫進(jìn)化算法、模擬退火算法。
粒子群優(yōu)化算法又可以稱為微粒群算法或者微粒群優(yōu)化算法,它是通過模擬鳥群尋食行為而不斷發(fā)展起來的一種基于群體合作的隨機(jī)搜索的優(yōu)化算法。通常情況下,可以將它歸類為群集智能的一種,被納入了多主體優(yōu)化系統(tǒng)。粒子群優(yōu)化算法的主要發(fā)明者為Kennedy教授和Eberhart教授。在解決組合優(yōu)化問題過程中,粒子群優(yōu)化算法通過將問題的每一個解相對應(yīng)的找出空間中某只鳥的位置,將空間中所有的鳥統(tǒng)稱為粒子,每一個粒子的飛行都通過隊員的飛行經(jīng)驗以及自身的飛行經(jīng)驗進(jìn)行適當(dāng)?shù)恼{(diào)整。當(dāng)某個粒子在實(shí)際的飛行過程中遇到最佳的飛行位置,這個就是粒子的最優(yōu)解,也就是個體的極值。而如果是整個集體的最優(yōu)解,也就是群體的極值,它為每個粒子所遇到過的最佳位置總和。在實(shí)際的算法操作過程中,粒子是否處于較優(yōu)的位置需要通過優(yōu)化函數(shù)決定的適應(yīng)度來確定。與此同時,粒子的飛行速度直接關(guān)系到每個粒子的飛行距離以及方向。粒子群優(yōu)化算法最大的優(yōu)勢就在于它不需要依靠大量的經(jīng)驗參數(shù),簡捷實(shí)用、適用于并行處理、具備較快的收斂速度等[3],而它的弊端則是收斂精度不夠高、容易局限于局部的極值。
神經(jīng)網(wǎng)絡(luò)算法在生物信息學(xué)中的主要作用是用來對生物神經(jīng)系統(tǒng)信息處理過程的模擬。神經(jīng)網(wǎng)絡(luò)算法主要可以分為兩個層面,一個為輸出層面,另一個為輸入層面。在這兩個層面中間還存在些許隱藏的學(xué)習(xí)層面,這些學(xué)習(xí)層面中又包含了很多的結(jié)點(diǎn)[4]。不同結(jié)點(diǎn)之間的連接方式多種多樣,與此同時,每個結(jié)點(diǎn)如何把輸入信號轉(zhuǎn)換為輸出信號的選擇性也有很多[5]。要想對神經(jīng)網(wǎng)絡(luò)進(jìn)行有效的訓(xùn)練,就必須提供大量的數(shù)據(jù)信息。神經(jīng)網(wǎng)絡(luò)在得到訓(xùn)練后,就能夠起到從相同類型沒有處理過的數(shù)據(jù)中獲取信息的作用。神經(jīng)網(wǎng)絡(luò)算法最大的不足在于,無法從大量的生物信息數(shù)據(jù)參數(shù)中提取出最簡單的知識。
3 參數(shù)化算法
參數(shù)化算法作為一種先進(jìn)的計算機(jī)算法,通過將計算實(shí)踐和計算理論有效地結(jié)合在一起,從而不斷提高解決生物信息學(xué)組合問題的效率。通過學(xué)習(xí)參數(shù)計算理論可以知道,在生物信息學(xué)中的某些NP-難問題能夠?qū)嵭袇?shù)化,簡單來說就是合理設(shè)計出算法復(fù)雜度為“0”的計算方法。在這個過程中,c作為一個常數(shù),n則作為問題的規(guī)模,k是一個參數(shù),這個參數(shù)的變化過程只能保持在一個小的范圍中。一旦常數(shù)c的數(shù)值較小,參數(shù)化算法就能充分的抓住k作為一個小參數(shù)的特性,較為快速的破解掉生物信息學(xué)中的NP-難問題。
4 結(jié)束語
綜上所述,要想大力發(fā)展生物信息學(xué),就必須將生物學(xué)和計算機(jī)學(xué)緊密的結(jié)合在一起。既要加強(qiáng)生物學(xué)方面知識的學(xué)習(xí),還要不斷對計算機(jī)算法進(jìn)行改革創(chuàng)新,提高計算機(jī)算法的運(yùn)行速度以及精確度,共同促進(jìn)生物信息學(xué)穩(wěn)定持續(xù)的發(fā)展。
參考文獻(xiàn)
[1](沙特) Alsuw aiyel M H.算法設(shè)計技巧與分析[M].吳偉昶,方世昌,等,譯.北京:電子工業(yè)出版社,2008:371-407.
[2](美) Baxevanis And reas D,F(xiàn) rancis Ouellette B F.生物信息學(xué):基因和蛋白質(zhì)分析的實(shí)用指南[M].李衍達(dá),孫之榮,等,譯.北京:清華大學(xué)出版社,2008:13-120.
[3]楊久俊,鄧輝文,滕姿.基于混沌免疫進(jìn)化算法的聚類算法分析[J].計算機(jī)科學(xué),2008,8:154-156.
[4]謝民主.單體型組裝問題參數(shù)化建模及算法研究[D].長沙:中南大學(xué),2008.
[5]黃艷新,周春光,鄒淑雪,等.一種求解類覆蓋問題的混合算法[J].軟件學(xué)報,2009,16(4):513-522.
作者簡介:苗濤(1991-),男,漢族,陜西省榆林市人,江南大學(xué)理學(xué)院2011級本科在讀,研究方向:計算機(jī)算法、數(shù)學(xué)。