本申請涉及參數(shù)擬合技術(shù)領(lǐng)域,更具體地說,涉及一種基于粒子群優(yōu)化算法的參數(shù)擬合方法及參數(shù)擬合系統(tǒng)。
背景技術(shù):
隨著半導(dǎo)體工藝節(jié)點向前推進,芯片設(shè)計與制造工藝之間的耦合大大加深。芯片電學(xué)特性往往受到工藝條件和版圖結(jié)構(gòu)的雙重影響,從而造成系統(tǒng)性和隨機性的工藝偏差,影響芯片的性能和良率?;瘜W(xué)機械拋光(chemicalmechanicalpolishing,cmp)作為半導(dǎo)體制造中的關(guān)鍵步驟,廣泛應(yīng)用于器件和互連的制造流程中,而cpm后的芯片表面形貌依賴于cmp模型。想要獲得比較好的表面形貌,需要對cmp模型中的部分未知參數(shù)進行參數(shù)擬合。而cmp模型中的部分公式的非線性發(fā)生過程的特性使得這些公式在進行參數(shù)擬合時需要耗費大量的計算資源和大量的計算時間。
目前常用的優(yōu)化擬合算法有單純形法、共軛梯度法、牛頓收斂法和最小二乘法。這些算法的共同特點是通過不斷的迭代,從局部迭代優(yōu)化(尋找極大值)向全局迭代(尋找最值),最后從所有的極大值中得到滿足精度的最優(yōu)解(最值)。然而在cmp模型的實際應(yīng)用過程中,上述傳統(tǒng)的優(yōu)化擬合算法需要經(jīng)過大量精確迭代,從而耗費了大量的計算資源和大量的計算時間。
技術(shù)實現(xiàn)要素:
為解決上述技術(shù)問題,本發(fā)明提供了一種基于粒子群優(yōu)化算法的參數(shù)擬合方法及參數(shù)擬合系統(tǒng)以實現(xiàn)降低參數(shù)擬合過程中耗費的計算資源和計算時 間的目的。
為實現(xiàn)上述技術(shù)目的,本發(fā)明實施例提供了如下技術(shù)方案:
一種基于粒子群優(yōu)化算法的參數(shù)擬合方法,包括:
設(shè)定粒子群的解域范圍,所述粒子群由多個粒子構(gòu)成,所述粒子為待擬合參數(shù);
設(shè)置粒子群參數(shù),所述粒子群參數(shù)包括種群規(guī)模、粒子加速度、迭代終止條件和各粒子的權(quán)重;
更新粒子群狀態(tài);
根據(jù)所述粒子群參數(shù)進行迭代,計算各粒子的估測函數(shù)值;
將每個粒子的估測函數(shù)值與歷史最好位置進行對比,更新所述歷史最好位置,每個粒子更新后的歷史最好位置構(gòu)成第一集合;
對所述第一集合進行評估,判斷所述第一集合的解集是否滿足所述迭代終止條件,如果是,則將所述第一集合的解集作為最終結(jié)果;
如果否,則判斷是否需要對第二集合進行更新,如果是則更新第二集合后返回更新粒子群狀態(tài)的步驟,如果否,則返回更新粒子群狀態(tài)的步驟;所述第二集合由粒子群經(jīng)歷過的歷史最佳位置構(gòu)成。
優(yōu)選的,設(shè)定粒子群的解域范圍為根據(jù)測試數(shù)據(jù)種類判斷粒子群的解域范圍。
優(yōu)選的,設(shè)置粒子群參數(shù)包括:
設(shè)置粒子群的種群規(guī)模、粒子的加速度以及迭代終止條件;
計算粒子群中各粒子權(quán)重。
優(yōu)選的,計算粒子群中各粒子權(quán)重包括:
采用相關(guān)度最高準則計算粒子群中各粒子權(quán)重。
優(yōu)選的,更新粒子群狀態(tài)包括:
設(shè)置粒子群的初始位置以及初始速度。
優(yōu)選的,將每個粒子的估測函數(shù)值與歷史最好位置進行對比,更新所述歷史最好位置包括:
判斷每個粒子的估測函數(shù)值是否優(yōu)于該粒子歷史最好位置,如果是,則用該粒子的估測函數(shù)值作為該粒子的歷史最好位置;如果否,則保持該粒子的歷史最好位置不變。
優(yōu)選的,所述迭代終止條件為滿足精度要求或達到迭代次數(shù)上限。
一種基于粒子群優(yōu)化算法的參數(shù)擬合系統(tǒng),包括:
解域確定模塊,用于設(shè)定粒子群的解域范圍,所述粒子群由多個粒子構(gòu)成,所述粒子為待擬合參數(shù);
參數(shù)設(shè)定模塊,用于設(shè)置粒子群參數(shù),所述粒子群參數(shù)包括種群規(guī)模、粒子加速度、迭代終止條件和各粒子的權(quán)重;
狀態(tài)更新模塊,用于更新粒子群狀態(tài);
迭代模塊,用于根據(jù)所述粒子群參數(shù)進行迭代,計算各粒子的估測函數(shù)值;
判斷模塊,用于將每個粒子的估測函數(shù)值與歷史最好位置進行對比,更新所述歷史最好位置,每個粒子更新后歷史最好位置構(gòu)成第一集合;
評估模塊,用于對所述第一集合進行評估,判斷所述第一集合的解集是否滿足所述迭代終止條件,如果是,則將所述第一集合的解集作為最終結(jié)果;
如果否,則判斷是否需要對第二集合進行更新,如果是則更新第二集合后返回更新粒子群狀態(tài)的步驟,如果否,則返回更新粒子群狀態(tài)的步驟;所述第二集合由粒子群經(jīng)歷過的歷史最佳位置構(gòu)成。
優(yōu)選的,所述解域確定模塊用于根據(jù)測試數(shù)據(jù)種類判斷粒子群的解域范圍。
優(yōu)選的,所述參數(shù)設(shè)定模塊包括:
參數(shù)設(shè)定單元,用于設(shè)置粒子群的種群規(guī)模、粒子的加速度以及迭代終止條件;
計算單元,用于計算粒子群中各粒子權(quán)重。
優(yōu)選的,所述計算單元采用相關(guān)度最高準則計算粒子群中各粒子權(quán)重。
優(yōu)選的,所述迭代終止條件為滿足精度要求或達到迭代次數(shù)上限。
從上述技術(shù)方案可以看出,本發(fā)明實施例提供了一種基于粒子群優(yōu)化算法的參數(shù)擬合方法及參數(shù)擬合系統(tǒng),其中,所述參數(shù)擬合方法基于粒子群優(yōu)化算法實現(xiàn),在擬合過程中引入各粒子的估測函數(shù)值從而實現(xiàn)對各粒子在迭代過程中的表現(xiàn)進行評估,去除掉走向偏離的迭代過程,從而大大降低了整個擬合過程中的計算量;并且所述粒子群參數(shù)中具有各粒子的權(quán)重,根據(jù)所述各粒子的權(quán)重進行迭代更容易找到符合擬合要求的第一集合的解集,當?shù)谝患系慕饧瘽M足所述迭代終止條件時即將所述第一集合的解集作為最終結(jié)果,進一步降低了整個擬合過程中的計算量,從而降低了利用所述參數(shù)擬合方法進行擬合所消耗的計算資源和計算時間。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
圖1為本申請的一個實施例提供的一種基于粒子群優(yōu)化算法的參數(shù)擬合方法的流程示意圖;
圖2為本申請的一個實施例提供的一種基于粒子群優(yōu)化算法的參數(shù)擬合系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
本申請實施例提供了一種基于粒子群優(yōu)化算法的參數(shù)擬合方法,如圖1所示,包括:
s101:設(shè)定粒子群的解域范圍,所述粒子群由多個粒子構(gòu)成,所述粒子為待擬合參數(shù)。
需要說明的是,一般根據(jù)擬合經(jīng)驗確定粒子群x=[α1,α2,α3…αn]大致的解域范圍,其中α1,α2,α3…αn為所述粒子,即待擬合參數(shù)。
在上述實施例的基礎(chǔ)上,在本申請的一個實施例中,設(shè)定粒子群的解域范圍為根據(jù)測試數(shù)據(jù)種類判斷粒子群的解域范圍。
在本實施例中,可以通過往常擬合經(jīng)驗根據(jù)測試數(shù)據(jù)種類判斷粒子群的解域范圍。例如當多次進行某一類型測試數(shù)據(jù)的擬合或者通過其他途徑獲知某一類型測試數(shù)據(jù)的擬合中大致的解域范圍為1.5左右,那么可以將所述解域范圍設(shè)置在1.5左右。
s102:設(shè)置粒子群參數(shù),所述粒子群參數(shù)包括種群規(guī)模、粒子加速度、迭代終止條件和各粒子的權(quán)重。
需要說明的是,設(shè)置各粒子的權(quán)重可以在接下來的擬合過程中更容易找到符合擬合要求的第一集合的解集,當?shù)谝患系慕饧瘽M足所述迭代終止條件時即將所述第一集合的解集作為最終結(jié)果,進一步降低了整個擬合過程中的計算量,從而降低了利用所述參數(shù)擬合方法進行擬合所消耗的計算資源和計算時間。
在上述實施例的基礎(chǔ)上,在本申請的另一個實施例中,設(shè)置粒子群參數(shù)包括:
設(shè)置粒子群的種群規(guī)模、粒子的加速度以及迭代終止條件;
計算粒子群中各粒子權(quán)重。
需要說明的是,在本申請的一個優(yōu)選實施例中,采用相關(guān)度最高準則計算粒子群中各粒子權(quán)重。即采用統(tǒng)計學(xué)原理,使在cmp模型中待擬合公式中出現(xiàn)次數(shù)最多的粒子的權(quán)重最高,以線性計算為例:
ω=m/n-1,其中,ω表示粒子權(quán)重,m表示所有粒子在待擬合公式中出現(xiàn)的總次數(shù),n表示該粒子在待擬合公式中出現(xiàn)的次數(shù)。
s103:更新粒子群狀態(tài)。
其中,更新粒子群狀態(tài)一般包括設(shè)置粒子群的初始位置以及初始速度。初始位置表示一輪迭代過程中的粒子群的開始位置,初始速度表示該輪迭代過程中的迭代走向。例如當所述初始速度的取值為+0.1時,在該輪迭代的第一次迭代過后,將所述粒子群的初始位置+0.1后進行第二次迭代。
s104:根據(jù)所述粒子群參數(shù)進行迭代,計算各粒子的估測函數(shù)值。
計算各粒子的估測函數(shù)值的目的是對每輪迭代的走向進行判斷,以去除走向偏離的迭代過程,大大減少整個擬合過程中的計算量。
可以根據(jù)cmp模型的特性選取不同函數(shù)作為所述估測函數(shù),所述估測函數(shù)可以采用最小平方差和σ(y*-y)2,在本申請的其他實施例中,所述估測函數(shù)還可以為絕對差值的和σ|y*-y|。本申請對所述估測函數(shù)的具體類型并不做限定,具體視實際情況而定。
s105:將每個粒子的估測函數(shù)值與歷史最好位置進行對比,更新所述歷史最好位置,每個粒子更新后的歷史最好位置構(gòu)成第一集合。
在上述實施例的基礎(chǔ)上,在本申請的又一個實施例中,將每個粒子的估測函數(shù)值與歷史最好位置進行對比,更新所述歷史最好位置包括:
判斷每個粒子的估測函數(shù)值是否優(yōu)于該粒子歷史最好位置,如果是,則用該粒子的估測函數(shù)值作為該粒子的歷史最好位置;如果否,則保持該粒子的歷史最好位置不變。
s106:對所述第一集合進行評估,判斷所述第一集合的解集是否滿足所述迭代終止條件,如果是,則將所述第一集合的解集作為最終結(jié)果;
如果否,則判斷是否需要對第二集合進行更新,如果是則更新第二集合后返回更新粒子群狀態(tài)的步驟,如果否,則返回更新粒子群狀態(tài)的步驟;所述第二集合由粒子群經(jīng)歷過的歷史最佳位置構(gòu)成。
在本實施例中,步驟s106對粒子群優(yōu)化算法中容易出現(xiàn)的早熟收斂進行了收斂判定,當所述第一集合的解集滿足所述迭代終止條件時即將所述第一集合的解集作為最終結(jié)果,避免了普通的粒子群優(yōu)化算法容易出現(xiàn)的陷入局部最優(yōu)解以及局部循環(huán)迭代導(dǎo)致效率下降的問題。并且在步驟s104中的迭代過程中引入了各粒子的權(quán)重,使得滿足所述迭代終止條件的結(jié)果更容易出現(xiàn),從而大量的降低了擬合過程中的計算量,進而實現(xiàn)降低參數(shù)擬合過程中耗費的計算資源和計算時間的目的。
一般而言,所述迭代終止條件為滿足精度要求或達到迭代次數(shù)上限。在本申請的一個實施例中,以cmp模型的工業(yè)生產(chǎn)要求為例,精度要求設(shè)定為0.0001,迭代次數(shù)上限設(shè)置為10000。當?shù)^程中得到的第一集合的解集滿足精度要求時即可停止整個擬合過程,獲得最終結(jié)果,若一直沒有得到滿足精度要求的第一集合的解集,當?shù)螖?shù)達到10000次時也將停止整個擬合過程,避免陷入死循環(huán)。
相應(yīng)的,本申請實施例還提供了一種基于粒子群優(yōu)化算法的參數(shù)擬合系統(tǒng),如圖2所示,包括:
解域確定模塊a100,用于設(shè)定粒子群的解域范圍,所述粒子群由多個粒子構(gòu)成,所述粒子為待擬合參數(shù);
參數(shù)設(shè)定模塊a200,用于設(shè)置粒子群參數(shù),所述粒子群參數(shù)包括種群規(guī)模、粒子加速度、迭代終止條件和各粒子的權(quán)重;
狀態(tài)更新模塊a300,用于更新粒子群狀態(tài);
迭代模塊a400,用于根據(jù)所述粒子群參數(shù)進行迭代,計算各粒子的估測函數(shù)值;
判斷模塊a500,用于將每個粒子的估測函數(shù)值與歷史最好位置進行對比,更新所述歷史最好位置,每個粒子更新后歷史最好位置構(gòu)成第一集合;
評估模塊a600,用于對所述第一集合進行評估,判斷所述第一集合的解集是否滿足所述迭代終止條件,如果是,則將所述第一集合的解集作為最終結(jié)果;
如果否,則判斷是否需要對第二集合進行更新,如果是則更新第二集合后返回更新粒子群狀態(tài)的步驟,如果否,則返回更新粒子群狀態(tài)的步驟;所述第二集合由粒子群經(jīng)歷過的歷史最佳位置構(gòu)成。
需要說明的是,一般根據(jù)擬合經(jīng)驗確定粒子群x=[α1,α2,α3…αn]大致的解域范圍,其中α1,α2,α3…αn為所述粒子,即待擬合參數(shù)。
在上述實施例的基礎(chǔ)上,在本申請的一個實施例中,設(shè)定粒子群的解域范圍為根據(jù)測試數(shù)據(jù)種類判斷粒子群的解域范圍。
在本實施例中,可以通過往常擬合經(jīng)驗根據(jù)測試數(shù)據(jù)種類判斷粒子群的解域范圍。例如當多次進行某一類型測試數(shù)據(jù)的擬合或者通過其他途徑獲知某一類型測試數(shù)據(jù)的擬合中大致的解域范圍為1.5左右,那么可以將所述解域范圍設(shè)置在1.5左右。
設(shè)置各粒子的權(quán)重可以在接下來的擬合過程中更容易找到符合擬合要求的第一集合的解集,當?shù)谝患系慕饧瘽M足所述迭代終止條件時即將所述第 一集合的解集作為最終結(jié)果,進一步降低了整個擬合過程中的計算量,從而降低了利用所述參數(shù)擬合方法進行擬合所消耗的計算資源和計算時間。
在上述實施例的基礎(chǔ)上,在本申請的另一個實施例中,所述參數(shù)設(shè)定模塊a200包括:
參數(shù)設(shè)定單元,用于設(shè)置粒子群的種群規(guī)模、粒子的加速度以及迭代終止條件;
計算單元,用于計算粒子群中各粒子權(quán)重。
需要說明的是,在本申請的一個優(yōu)選實施例中,所述計算單元采用相關(guān)度最高準則計算粒子群中各粒子權(quán)重。即采用統(tǒng)計學(xué)原理,使在cmp模型中待擬合公式中出現(xiàn)次數(shù)最多的粒子的權(quán)重最高,以線性計算為例:
ω=m/n-1,其中,ω表示粒子權(quán)重,m表示所有粒子在待擬合公式中出現(xiàn)的總次數(shù),n表示該粒子在待擬合公式中出現(xiàn)的次數(shù)。
更新粒子群狀態(tài)一般包括設(shè)置粒子群的初始位置以及初始速度。初始位置表示一輪迭代過程中的粒子群的開始位置,初始速度表示該輪迭代過程中的迭代走向。例如當所述初始速度的取值為+0.1時,在該輪迭代的第一次迭代過后,將所述粒子群的初始位置+0.1后進行第二次迭代。
計算各粒子的估測函數(shù)值的目的是對每輪迭代的走向進行判斷,以去除走向偏離的迭代過程,大大減少整個擬合過程中的計算量。
可以根據(jù)cmp模型的特性選取不同函數(shù)作為所述估測函數(shù),所述估測函數(shù)可以采用最小平方差和∑(y*-y)2,在本申請的其他實施例中,所述估測函數(shù)還可以為絕對差值的和σ|y*-y|。本申請對所述估測函數(shù)的具體類型并不做限定,具體視實際情況而定。
在上述實施例的基礎(chǔ)上,在本申請的又一個實施例中,將每個粒子的估測函數(shù)值與歷史最好位置進行對比,更新所述歷史最好位置包括:
判斷每個粒子的估測函數(shù)值是否優(yōu)于該粒子歷史最好位置,如果是,則用該粒子的估測函數(shù)值作為該粒子的歷史最好位置;如果否,則保持該粒子的歷史最好位置不變。
在本實施例中,所述評估模塊a600對粒子群優(yōu)化算法中容易出現(xiàn)的早熟收斂進行了收斂判定,當所述第一集合的解集滿足所述迭代終止條件時即將所述第一集合的解集作為最終結(jié)果,避免了普通的粒子群優(yōu)化算法容易出現(xiàn)的陷入局部最優(yōu)解以及局部循環(huán)迭代導(dǎo)致效率下降的問題。并且在所述迭代模塊a400執(zhí)行的迭代過程中引入了各粒子的權(quán)重,使得滿足所述迭代終止條件的結(jié)果更容易出現(xiàn),從而大量的降低了擬合過程中的計算量,進而實現(xiàn)降低參數(shù)擬合過程中耗費的計算資源和計算時間的目的。
一般而言,所述迭代終止條件為滿足精度要求或達到迭代次數(shù)上限。在本申請的一個實施例中,以cmp模型的工業(yè)生產(chǎn)要求為例,精度要求設(shè)定為0.0001,迭代次數(shù)上限設(shè)置為10000。當?shù)^程中得到的第一集合的解集滿足精度要求時即可停止整個擬合過程,獲得最終結(jié)果;若一直沒有得到滿足精度要求的第一集合的解集,當?shù)螖?shù)達到10000次時也將停止整個擬合過程,避免陷入死循環(huán)。
綜上所述,本發(fā)明實施例提供了一種基于粒子群優(yōu)化算法的參數(shù)擬合方法及參數(shù)擬合系統(tǒng),其中,所述參數(shù)擬合方法基于粒子群優(yōu)化算法實現(xiàn),在擬合過程中引入各粒子的估測函數(shù)值從而實現(xiàn)對各粒子在迭代過程中的表現(xiàn)進行評估,去除掉走向偏離的迭代過程,從而大大降低了整個擬合過程中的計算量;并且所述粒子群參數(shù)中具有各粒子的權(quán)重,根據(jù)所述各粒子的權(quán)重進行迭代更容易找到符合擬合要求的第一集合的解集,當?shù)谝患系慕饧瘽M足所述迭代終止條件時即將所述第一集合的解集作為最終結(jié)果,進一步降低了整個擬合過程中的計算量,從而降低了利用所述參數(shù)擬合方法進行擬合所消耗的計算資源和計算時間。
本說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。
對所公開的實施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實施例的多種修改對本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實施例中實現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的范圍。