朱家成 田善君
(1.江漢大學(xué)數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院計(jì)算中心 武漢 430056)(2.中國(guó)地質(zhì)大學(xué)(武漢)計(jì)算機(jī)學(xué)院地質(zhì)信息技術(shù)研究所 武漢 430074)(3.山東交通學(xué)院交通土建工程學(xué)院 濟(jì)南 250000)
變差函數(shù)是Motheron在1965年提出的一種區(qū)域變化估計(jì)方法。數(shù)學(xué)解釋為區(qū)域化變量增量平方的數(shù)學(xué)期望,變差函數(shù)的實(shí)際意義是,它反映了區(qū)域化變量在某個(gè)方向上某一距離范圍內(nèi)的變化程度,是地質(zhì)統(tǒng)計(jì)學(xué)克里格方法的基礎(chǔ)操作工具,能夠有效地描述區(qū)域化變量在空間上的結(jié)構(gòu)性與隨機(jī)性[1~3],并可以在其他領(lǐng)域作為分析區(qū)域化變量隨機(jī)性和結(jié)構(gòu)性特征的有效工具。
在地質(zhì)統(tǒng)計(jì)學(xué)領(lǐng)域變差函數(shù)的實(shí)際應(yīng)用中,我們通常都將求解變差函數(shù)過(guò)程分解為實(shí)驗(yàn)變差函數(shù)計(jì)算和理論變差函數(shù)擬合,目前主流的研究都是針對(duì)理論變差函數(shù)的擬合,因?yàn)槔碚摂M合的參數(shù)好壞能決定一個(gè)變差函數(shù)應(yīng)用于地質(zhì)統(tǒng)計(jì)學(xué)的精確度。所以早期的地質(zhì)統(tǒng)計(jì)學(xué)研究領(lǐng)域主要是對(duì)變差函數(shù)理論擬合進(jìn)行優(yōu)化,很少有涉及對(duì)實(shí)驗(yàn)變差函數(shù)的計(jì)算過(guò)程進(jìn)行優(yōu)化。而得到一個(gè)穩(wěn)健的實(shí)驗(yàn)變差函數(shù)是進(jìn)行理論擬合的基礎(chǔ),且在當(dāng)前實(shí)際應(yīng)用中,局限變差函數(shù)應(yīng)用的一個(gè)主要問(wèn)題就是數(shù)據(jù)量增大時(shí),急劇下降的實(shí)驗(yàn)變差函數(shù)的計(jì)算速度。真正在地質(zhì)統(tǒng)計(jì)學(xué)的應(yīng)用中,得到一個(gè)能滿足實(shí)際生產(chǎn)應(yīng)用的實(shí)驗(yàn)變差函數(shù)結(jié)果,需要不斷進(jìn)行不同方向上多個(gè)參數(shù)下的變差函數(shù)計(jì)算調(diào)試,需要來(lái)回多次進(jìn)行實(shí)驗(yàn)結(jié)果的比對(duì),而每次計(jì)算的過(guò)程都是一次復(fù)雜的運(yùn)算[1]。
在地質(zhì)統(tǒng)計(jì)學(xué)儲(chǔ)量估算領(lǐng)域,我們會(huì)對(duì)三維空間內(nèi)的鉆孔采樣點(diǎn)建模之后進(jìn)行變差函數(shù)的計(jì)算,從而可以更加形象具體且真實(shí)的反映某個(gè)礦體的品位含量的三維空間的結(jié)構(gòu)性和隨機(jī)性,進(jìn)而估算儲(chǔ)量。而真實(shí)的地礦數(shù)據(jù)較為龐大,在實(shí)際應(yīng)用過(guò)程中,阻礙儲(chǔ)量估算的難題已經(jīng)不再是對(duì)理論變差函數(shù)擬合的優(yōu)化來(lái)提高估算精確度,而是繁瑣的實(shí)驗(yàn)變差函數(shù)計(jì)算嚴(yán)重影響了儲(chǔ)量估算的計(jì)算時(shí)間。一次完整的三維儲(chǔ)量估算過(guò)程,采用傳統(tǒng)的方法,需要多次的實(shí)驗(yàn)變差函數(shù)調(diào)試,每次調(diào)試的過(guò)程都需要大量的計(jì)算,嚴(yán)重影響了整個(gè)計(jì)算過(guò)程,所以地質(zhì)統(tǒng)計(jì)學(xué)領(lǐng)域急需一個(gè)優(yōu)化的實(shí)驗(yàn)變差函數(shù)計(jì)算算法來(lái)解決這個(gè)難題。
變差函數(shù)的基本定義是區(qū)域化變量增量平方的數(shù)學(xué)期望,也就是區(qū)域化變量增量的方差[3]。通常為了便于生產(chǎn)計(jì)算需要,一般取值半變差函數(shù),本文在計(jì)算過(guò)程中,也遵循這一規(guī)則??偟脕?lái)說(shuō)可表述為在相距為h的兩個(gè)空間點(diǎn)x和x+h的權(quán)值Z(x)和Z(x+h)之間的方差,因此可得計(jì)算公式如下:
式(1)是在理想狀態(tài)下,有無(wú)窮的樣品對(duì)參與計(jì)算,最后求出一個(gè)平均值,其中,Z(x+h),Z(x)表示在x+h與x兩個(gè)不同位置時(shí),樣品點(diǎn)的權(quán)值,而上式又稱為理論變差函數(shù)。而在實(shí)際應(yīng)用中,區(qū)域內(nèi)變量的數(shù)量是有限的,且取不同的增量值,會(huì)對(duì)樣品對(duì)數(shù)影響較大,增量值越大,樣品數(shù)越少;增量值變小,樣品數(shù)目會(huì)增多。而樣品對(duì)數(shù)越多,算出的結(jié)果才更準(zhǔn)確,有實(shí)際意義,但樣品數(shù)越多則會(huì)造成計(jì)算量的增加。而在地質(zhì)統(tǒng)計(jì)的實(shí)際應(yīng)用中,確定的空間位置點(diǎn)x0上只能有Z(x0)的一次觀測(cè)值,即樣品對(duì)的個(gè)數(shù)是有限的,故可以得到式(2)。
在式(2)中,N(h)表示相距為h的樣品對(duì)的數(shù)目,顯然可以看出,實(shí)驗(yàn)變差函數(shù)是一個(gè)根據(jù)h的變化而變化的一條函數(shù)曲線,如圖1所示。
圖1 實(shí)驗(yàn)變差函數(shù)曲線圖
在真實(shí)的環(huán)境中,樣品數(shù)據(jù)往往都是不規(guī)則分布的,這就需要我們采用一定的處理方法才能獲取能夠參與運(yùn)算的有效數(shù)據(jù)。
2.1.1 非三維空間的不規(guī)則數(shù)據(jù)處理
1)一維數(shù)據(jù)
當(dāng)數(shù)據(jù)處于一維分布,也就是待處理的數(shù)據(jù)都在一條直線上。如果我們還是按照固定的步長(zhǎng)來(lái)計(jì)算的話,能夠滿足要求的樣品對(duì)會(huì)非常少,所以我們?cè)黾釉诰嚯x上的約束,也就是兩個(gè)樣品點(diǎn)之間的距離在步長(zhǎng)的約束范圍之內(nèi)存在一定的容差,滿足容差的樣品對(duì)都屬于合格樣品對(duì)。
距離容差可以保證在一個(gè)確定的方向上增加入選的樣品對(duì),但容差也不能設(shè)置的太大,不然就會(huì)導(dǎo)致很多不符合計(jì)算要求的樣品對(duì)也被規(guī)劃進(jìn)來(lái)。
2)二維數(shù)據(jù)
當(dāng)數(shù)據(jù)處于二維分布,也就是待處理的數(shù)據(jù)都在一個(gè)平面上。那么所選樣品對(duì)除了在距離上進(jìn)行容差設(shè)計(jì)之外,還要在方向上進(jìn)行一定的容差設(shè)計(jì),也就是在方向上也要增加一定的角度范圍活動(dòng)區(qū)間,屬于該范圍內(nèi)的樣品對(duì)都屬于符合要求的樣品。如圖2所示。
圖2 角度容差示意圖
假設(shè)點(diǎn)A分別與點(diǎn)BCD來(lái)進(jìn)行角度判斷,有箭頭標(biāo)志的直線為基準(zhǔn)方向,那么樣品對(duì)(AB)、(AC)、(AD)都屬于符合基準(zhǔn)方向的樣品(假定夾角小于等于角度容差)。
2.1.2 三維空間不規(guī)則數(shù)據(jù)的處理
顯然,真實(shí)的地質(zhì)統(tǒng)計(jì)學(xué)過(guò)程中,數(shù)據(jù)都是在三維空間分布,在一維和二維的數(shù)據(jù)分析基礎(chǔ)上,把距離和角度的約束都添加進(jìn)去,為了便于進(jìn)行更好的數(shù)據(jù)結(jié)果分析比對(duì)與計(jì)算,以及算出的結(jié)果更有實(shí)際意義,可以參照自己一維,二維分布的容差涉及,在三維實(shí)際應(yīng)用中也對(duì)每次參與的樣品進(jìn)行角度和距離的容差設(shè)計(jì),便于更好地獲取能夠參與計(jì)算的樣品對(duì),如圖3所示。
圖3 三維角度距離容差示意圖
為了更好地獲得區(qū)域化變量在空間的結(jié)構(gòu)性和隨機(jī)性,以及為下一步的克里格插值做準(zhǔn)備,在進(jìn)行三維空間變差函數(shù)分析時(shí),通常會(huì)進(jìn)行三個(gè)兩兩相互垂直的方向作為求得實(shí)驗(yàn)變差函數(shù)結(jié)果的方向。這個(gè)三個(gè)方向的獲取,則是根據(jù)式(2)進(jìn)行不同方向變差函數(shù)結(jié)果的比對(duì)而來(lái)。根據(jù)以上分析我們可以得到三維穩(wěn)健實(shí)驗(yàn)變差函數(shù)結(jié)果的計(jì)算流程大致如下:
簡(jiǎn)單來(lái)說(shuō)計(jì)算流程主要可分為以下幾大步驟:
1)樣品數(shù)據(jù)模型的建立,即區(qū)域化變量的位置信息以及品位信息建模,即公式中任意樣品點(diǎn)A,B的位置xi與權(quán)值Z(xi);
2)約束范圍模型的建立,確定角度約束,距離約束,以及其他條件約束,得到約束范圍內(nèi)的兩兩樣品對(duì)庫(kù);
圖4 三維實(shí)驗(yàn)變差函數(shù)流程圖
3)計(jì)算符合約束范圍的單個(gè)實(shí)驗(yàn)變差函數(shù)值,得到當(dāng)前范圍的實(shí)驗(yàn)變差函數(shù)結(jié)果;
4)變差函數(shù)結(jié)果的調(diào)試,專家進(jìn)行當(dāng)前實(shí)驗(yàn)變差函數(shù)結(jié)果的判定是否能達(dá)到后續(xù)工作的要求,進(jìn)行不同的調(diào)試與重新計(jì)算的選擇;
5)穩(wěn)健實(shí)驗(yàn)變差函數(shù)結(jié)果的生成,進(jìn)行多次的實(shí)驗(yàn)變差函數(shù)結(jié)果的調(diào)試之后,可以先后確定三個(gè)方向上的穩(wěn)健三維空間實(shí)驗(yàn)變差函數(shù)結(jié)果。如圖所示黑色和灰色實(shí)線表示相互垂直的第一第二方向,虛線表示與前兩個(gè)方向分別垂直的第三方向。
圖5 三個(gè)相互垂直方向計(jì)算樣品圖
由以上步驟可以看出實(shí)驗(yàn)變差函數(shù)的計(jì)算中,每一個(gè)Rz的計(jì)算是在確定一個(gè)固定的參數(shù)之后繼而實(shí)施同種類型的運(yùn)算,具有模塊化和數(shù)據(jù)弱相關(guān)的特點(diǎn),符合CUDA編程模型的“數(shù)據(jù)并行處理”機(jī)制,故可以采用GPU進(jìn)行計(jì)算性能上的加速。該步驟主要體現(xiàn)在計(jì)算流程中的“計(jì)算半變差值”模塊里。
基于GPU架構(gòu)的CUDA編程模型本質(zhì)上是一種流式計(jì)算,適用于數(shù)據(jù)并行處理的問(wèn)題。數(shù)據(jù)并行是將數(shù)據(jù)劃分成子數(shù)據(jù)流,在一些相同執(zhí)行過(guò)程的程序模塊上對(duì)這些子數(shù)據(jù)流進(jìn)行處理。這種方式的并行效果并不受問(wèn)題求解步數(shù)的限制,只受制于相同處理模塊的數(shù)目和系統(tǒng)內(nèi)部的通信寬帶,并行度很高且具有良好的可擴(kuò)展性,可以構(gòu)建包含大規(guī)模運(yùn)算模塊的空間分析系統(tǒng)。
傳統(tǒng)的實(shí)驗(yàn)變差函數(shù)計(jì)算效率低下的原因在于:傳統(tǒng)的算法在實(shí)現(xiàn)時(shí)沒(méi)有考慮到整個(gè)實(shí)驗(yàn)變差函數(shù)值得計(jì)算過(guò)程所表現(xiàn)的內(nèi)在的處理并行性。
通過(guò)對(duì)式(1)變差值的計(jì)算過(guò)程,我們可以看出,每次重新約束規(guī)則進(jìn)行一次新的計(jì)算,都是進(jìn)行若干個(gè)半變差值的計(jì)算,而一個(gè)個(gè)樣品對(duì)進(jìn)行變差值的計(jì)算又是相互獨(dú)立互不影響的過(guò)程,即多次不同參數(shù)下的同種類型的運(yùn)算,故可在上述傳統(tǒng)三維穩(wěn)健實(shí)驗(yàn)變差函數(shù)的計(jì)算流程中,將計(jì)算半變差值的過(guò)程,用CUDA編程模型進(jìn)行運(yùn)算過(guò)程的加速。
圖6 運(yùn)算過(guò)程的替換
3.2.1 建立模型
建立數(shù)據(jù)模型即創(chuàng)建一個(gè)需要進(jìn)行實(shí)驗(yàn)變差函數(shù)計(jì)算的三維模型,包括幾何信息模型與屬性信息模型。為了更便于操作以及空間展示,我們將每一個(gè)樣品都設(shè)計(jì)成三維空間圓點(diǎn)或者中心線的形式,屬性信息以隱藏的方式存儲(chǔ),只有在調(diào)用的時(shí)候才展示出來(lái)。
Input:樣品的幾何信息,屬性信息。
Output:樣品數(shù)據(jù)模型。
1)創(chuàng)建樣品對(duì)象CPoint(X,Y,Z,Atr);
//其中X,Y,Z表示樣品對(duì)象的空間坐標(biāo),Atr表示該樣品對(duì)象的屬性權(quán)值;
2)依次循環(huán),將幾何信息,屬性信息讀入創(chuàng)建的每一個(gè)對(duì)象;
3)進(jìn)行數(shù)據(jù)模型信息的可視化輸出以及結(jié)構(gòu)輸出;
//可視化輸出表示對(duì)象的三維展示,結(jié)構(gòu)輸出表示記錄當(dāng)前的數(shù)據(jù)文本信息。
而建立約束模型,則需要在根據(jù)不同的專業(yè)領(lǐng)域,根據(jù)專家意見(jiàn)設(shè)定一個(gè)初步方向約束與距離約束,我們?cè)谝欢ǚ秶鷥?nèi),設(shè)定方向約束與距離約束的調(diào)試范圍。
Input:約束規(guī)則的參數(shù)值,約束的表現(xiàn)形式。
Output:樣品的約束模型。
1)創(chuàng)建約束的表現(xiàn)形式CSearchCone,Cline;
//CSearchCone,Cline分別是一個(gè)圓錐體和直線段,為方向約束與距離約束的表現(xiàn)形式
2)根據(jù)樣品數(shù)據(jù)模型的參數(shù)確定約束規(guī)則的大致參數(shù)范圍;
3)將獲取的約束規(guī)則參數(shù)值賦予以上兩個(gè)約束對(duì)象;
4)確定約束變動(dòng)的規(guī)則與范圍;
5)約束模型的可視化輸出與結(jié)構(gòu)輸出;
同樣下圖展示了約束模型在三維圖形顯示平臺(tái)中的展示形式與形態(tài),圓錐體表示方向約束,中間的直線距離約束。
在進(jìn)行約束規(guī)則更改之后,約束方向,或者約束長(zhǎng)度都可以進(jìn)行改變。
3.2.2 并行計(jì)算過(guò)程,建立樣品整體庫(kù)
并行計(jì)算的過(guò)程,實(shí)際上是計(jì)算樣品對(duì)的半變差值,樣品對(duì)空間距離以及樣品對(duì)的法向量。通過(guò)CUDA平臺(tái),編程實(shí)現(xiàn)GPU加速。
1)根據(jù)當(dāng)前硬件條件確定CUDA中的Block的尺寸,再根據(jù)數(shù)據(jù)的規(guī)模確定Block的數(shù)量;
在本次實(shí)驗(yàn)中,每個(gè)線程塊使用512個(gè)左右的線程進(jìn)行并行計(jì)算,而Block的數(shù)量可以使用文件數(shù)據(jù)量與每個(gè)線程塊線程之比來(lái)計(jì)算。
2)根據(jù)CUDA全局內(nèi)存的容量和數(shù)據(jù)的規(guī)模,確定數(shù)據(jù)分塊的大小和數(shù)目,以便完成多批次計(jì)算。具體計(jì)算方法如下:
EleNum=MaxPitch/(Z*sizeof(float))
BlkNum=(m*n+EleNum-1)/EleNum
其中MaxPitch是從CUDA函數(shù)接口獲取的允許函數(shù)最大pitch的拷貝尺寸。
3)使用CUDA函數(shù)在顯存中開(kāi)辟數(shù)據(jù)計(jì)算空間和并行計(jì)算結(jié)果空間,將層之間的數(shù)據(jù)按照分塊形式依次從內(nèi)存?zhèn)魅腼@存中,并設(shè)計(jì)核函數(shù)進(jìn)行計(jì)算;
4)使用CUDA函數(shù)將計(jì)算結(jié)果從顯存轉(zhuǎn)移至內(nèi)存,保存至文件中。
而整體樣品庫(kù)的建立,則是依據(jù)CUDA函數(shù)的輸出結(jié)果,依照樣品庫(kù)Sap=(SapBasic,SapVar,Sap?Length,SapAngle)的結(jié)構(gòu),依次將樣品庫(kù)所需要的信息錄入。
3.2.3 輸出實(shí)驗(yàn)變差函數(shù)計(jì)算結(jié)果
在以上前期工作全部完成之后,接下來(lái)就是進(jìn)行調(diào)試輸出,即根據(jù)當(dāng)前約束規(guī)則,快速得到該約束規(guī)則下的實(shí)驗(yàn)變差函數(shù)計(jì)算結(jié)果。
1)將約束規(guī)則的變化轉(zhuǎn)換成參數(shù)大小的改變;
2)將改變后的約束參數(shù)與樣品整體庫(kù)中的Sap對(duì)象進(jìn)行約束規(guī)則比對(duì),當(dāng)條件符合,則記錄下該對(duì)象;
3)把所有符合約束規(guī)則的對(duì)象進(jìn)行統(tǒng)計(jì),按照實(shí)驗(yàn)變差函數(shù)的坐標(biāo)曲線進(jìn)行結(jié)果輸出;
4)判斷當(dāng)前的結(jié)果是否符合下一步計(jì)算要求,如果符合則完成運(yùn)算,如果不符合,重復(fù)步驟1)。
圖7 輸出實(shí)驗(yàn)變差函數(shù)
上面主要介紹了GPU加速的實(shí)驗(yàn)變差函數(shù)優(yōu)化算法,并在理論上與兩種不同的計(jì)算方法進(jìn)行了對(duì)比。通過(guò)分析可以發(fā)現(xiàn),該算法比傳統(tǒng)算法在快速得出大規(guī)模數(shù)據(jù)實(shí)驗(yàn)預(yù)期結(jié)果的速度上有著顯著的提高。因此我們結(jié)合兩個(gè)算法的特點(diǎn),進(jìn)行了算法的優(yōu)缺點(diǎn)分析:
1)傳統(tǒng)算法,實(shí)質(zhì)上是按需所求的進(jìn)行計(jì)算,根據(jù)當(dāng)前約束條件,得到約束條件內(nèi)的樣品對(duì),每確認(rèn)一個(gè)樣品對(duì),進(jìn)行一次計(jì)算。該計(jì)算方法,沒(méi)有復(fù)雜的調(diào)用過(guò)程,運(yùn)算簡(jiǎn)單清晰,在不需要大量調(diào)試,數(shù)據(jù)量比較小的環(huán)境里,該算法計(jì)算速度很快,但該算法所需環(huán)境在真實(shí)工程應(yīng)用中效率會(huì)大大降低;
2)GPU加速算法,在傳統(tǒng)算法計(jì)算的基礎(chǔ)上,考慮了計(jì)算半變差值的并行特點(diǎn),在該計(jì)算過(guò)程采用GPU加速。這種方法在傳統(tǒng)的方法基礎(chǔ)上,對(duì)計(jì)算過(guò)程進(jìn)行了加速,在原始數(shù)據(jù)空間分布均勻的環(huán)境里,不需要進(jìn)行多次約束就可以快速得出穩(wěn)定的實(shí)驗(yàn)變差函數(shù)結(jié)果。
根據(jù)上面的分析,可以對(duì)以上兩種算法的優(yōu)點(diǎn)和缺點(diǎn)進(jìn)行總結(jié)如表1所示。
表1 兩種實(shí)驗(yàn)變差函數(shù)計(jì)算算法有缺點(diǎn)比較
本次試驗(yàn)所采用的數(shù)據(jù),設(shè)有試驗(yàn)?zāi)M數(shù)據(jù),真實(shí)礦山數(shù)據(jù)等,包括點(diǎn)狀樣品數(shù)據(jù)模型和線狀樣品數(shù)據(jù)模型,根據(jù)不同的規(guī)模劃分為5個(gè)數(shù)量級(jí)。
圖8 五組數(shù)據(jù)
將以上五組實(shí)驗(yàn)數(shù)據(jù)分別用本文優(yōu)化算法比較,因穩(wěn)健的實(shí)驗(yàn)變差函數(shù)結(jié)果需要專家進(jìn)行每次計(jì)算結(jié)果的分析比對(duì),故將實(shí)驗(yàn)結(jié)果分為兩部分:首次計(jì)算與調(diào)試計(jì)算,可得出實(shí)驗(yàn)結(jié)果如下:
表2 首次計(jì)算三種算法結(jié)果比對(duì)
由表2可以初步得知,在首次計(jì)算過(guò)程中,GPU加速算法和傳統(tǒng)算法,在數(shù)據(jù)量增加的過(guò)程中都有較明顯的優(yōu)勢(shì)。
由圖9也可以看出隨著數(shù)據(jù)量的增加,兩種加速算法比傳統(tǒng)算法優(yōu)勢(shì)越來(lái)越明顯,且單純GPU加速算法比整體到局部算法還稍有優(yōu)勢(shì),當(dāng)然一次完整的實(shí)驗(yàn)變差函數(shù)的計(jì)算過(guò)程,絕不可能只是一次計(jì)算就能得出正確結(jié)果,故需要進(jìn)行后期的調(diào)試計(jì)算。
圖9 算法首次運(yùn)行時(shí)間對(duì)比圖(單位:ms)
表3 調(diào)試過(guò)程一次計(jì)算耗費(fèi)時(shí)間比對(duì)
則可得相應(yīng)的對(duì)比圖如圖10所示。
圖10 調(diào)試一次耗費(fèi)時(shí)間對(duì)比圖(單位:ms)
一次完整的過(guò)程所耗費(fèi)的總時(shí)間為首次計(jì)算時(shí)間與調(diào)試時(shí)間的總合。
即TA=TF+(TD1+TD1+TD1+…+TDN),其中TA為耗費(fèi)的總時(shí)間,TF為首次計(jì)算時(shí)間,TDi為單次調(diào)試時(shí)間,調(diào)試次數(shù)N會(huì)隨著數(shù)據(jù)的改變而改變,一般情形N≥15。
表4 15次調(diào)試三種算法時(shí)間對(duì)比
從上表3、4可以看出,優(yōu)化過(guò)后的算法,在實(shí)驗(yàn)變差函數(shù)的計(jì)算過(guò)程中有著顯著的優(yōu)勢(shì),并且,當(dāng)數(shù)據(jù)量增大,優(yōu)勢(shì)會(huì)更加突出。
綜上所述,本文提出了一個(gè)三維空間實(shí)驗(yàn)變差函數(shù)優(yōu)化算法,并應(yīng)用到真實(shí)的地質(zhì)統(tǒng)計(jì)學(xué)應(yīng)用軟件中去,可以解決真實(shí)環(huán)境中實(shí)驗(yàn)變差函數(shù)計(jì)算效率低下的問(wèn)題,且通過(guò)多種數(shù)據(jù)下的實(shí)驗(yàn)驗(yàn)證了實(shí)驗(yàn)的目的。
當(dāng)然本次算法也有不足之處,通過(guò)對(duì)約束分析,我們可以看到,每次進(jìn)行一次新的約束,都可能存在著與前一次約束相同的樣品對(duì)重復(fù)計(jì)算,所以本文的算法雖然通過(guò)GPU加速,能夠提升計(jì)算效率,但仍因?yàn)橹貜?fù)的樣品對(duì),導(dǎo)致了大量的時(shí)間與空間的浪費(fèi),所以如何能夠優(yōu)化這個(gè)過(guò)程,是解決這個(gè)問(wèn)題的關(guān)鍵。一次性把所有樣品對(duì)的實(shí)驗(yàn)變差值結(jié)果通過(guò)GPU加速算法計(jì)算出來(lái),再進(jìn)行實(shí)驗(yàn)變差函數(shù)計(jì)算的約束分析之后,判定哪些計(jì)算結(jié)果是符合約束條件的樣品對(duì)是一大難題,因此以后的工作室設(shè)計(jì)一個(gè)便于后期進(jìn)行約束篩選的樣品對(duì)庫(kù)來(lái)實(shí)現(xiàn)實(shí)驗(yàn)變差函數(shù)的進(jìn)一步優(yōu)化。