本發(fā)明涉及紅外光譜定性分析領(lǐng)域,具體涉及一種基于LM-GA算法的紅外光譜定性分析方法。
背景技術(shù):
:在對傅里葉變換紅外光譜進(jìn)行組分定量分析時(shí),首先需要解決的問題是清楚地知道其吸收的組分,亦即需要先對其進(jìn)行定性分析。隨著傅里葉變換紅外光譜定性分析算法的發(fā)展,現(xiàn)有技術(shù)已經(jīng)有多種算法可以對傅里葉變換紅外光譜進(jìn)行定性分析:如光譜差減法、經(jīng)典最小二乘回歸法(CLS)、主成分回歸(PCR)、偏最小二乘法(PLS)、人工神經(jīng)網(wǎng)絡(luò)算法(ANN)、基于朗博比爾定律的遺傳算法(GA)等,然后基于這些算法對紅外光譜進(jìn)行定性分析時(shí)都存在著一定的缺陷。比如,采用光譜差減法來實(shí)現(xiàn)光譜組分識(shí)別時(shí)候需要一個(gè)有經(jīng)驗(yàn)的操作者設(shè)置有效的縮放因子,隨著算法的發(fā)展,有些算法雖然可以實(shí)現(xiàn)縮放因子的自動(dòng)設(shè)置,但是當(dāng)光譜組分變得復(fù)雜時(shí),通常自動(dòng)設(shè)置縮放因子的方式得到的結(jié)果無效;又如,采用CLS來進(jìn)行組分識(shí)別時(shí),首先需要選出所考察波段所有光譜的吸光度數(shù)據(jù),但是所有光譜數(shù)據(jù)最后都能影響到該算法的識(shí)別結(jié)果,而在采用PLS建模進(jìn)行定性分析時(shí),新組分的出現(xiàn)將會(huì)降低識(shí)別的準(zhǔn)確度。近年來人工神經(jīng)網(wǎng)絡(luò)算法發(fā)展迅速,但是該算法需要復(fù)雜的訓(xùn)練過程,并且單一人工神經(jīng)網(wǎng)絡(luò)算法只能對單一組分進(jìn)行定性識(shí)別。相比來說,基于朗博比爾定律的遺傳算法可以為優(yōu)化LM神經(jīng)網(wǎng)絡(luò)算法設(shè)計(jì)優(yōu)秀的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),因此遺傳算法能對紅外光譜數(shù)據(jù)中多組分進(jìn)行同時(shí)識(shí)別,但是在儀器參數(shù)等帶來的光譜漂移以及低分辨率的情況下,傅里葉變換紅外光譜的吸收會(huì)偏離朗博比爾定律,從而造成識(shí)別的準(zhǔn)確度較差。為此,對于組分復(fù)雜的樣品來說,要想實(shí)現(xiàn)紅外光譜的準(zhǔn)確定性分析,目前來說還尚有難度?,F(xiàn)有技術(shù)中,張長勝等人2008年的吉林大學(xué)學(xué)報(bào)上公開了一篇名稱為“一種基于遺傳算法和LM算法的混合學(xué)習(xí)方法”的論文,該論文公開的方法首先是通過遺傳算法進(jìn)行粗調(diào)得到一個(gè)全局近似解,然后以此為初值再通過遺傳算法和LM算法交替進(jìn)行訓(xùn)練,直到達(dá)到所限制的精度或最大交替步數(shù)為止,雖然該論文中公開了遺傳算法和LM算法的混合算法,但是該方法中LM算法與GA算法是充當(dāng)相同的功能,兩者是等價(jià)的,即GA算法尋找全局最優(yōu)解,LM算法尋找局部最優(yōu)解,具體來說,該方法中LM算法與GA算法是并行運(yùn)算用來訓(xùn)練ANN算法的參數(shù),實(shí)際上,LM算法是高斯-牛頓迭代算法的改進(jìn)算法,其對初值根本就不敏感,因此該論文既然是依據(jù)這點(diǎn)來使用GA算法進(jìn)而克服高斯牛頓迭代算法對初值的依賴性的話,而實(shí)際運(yùn)算過程中采用的仍是LM算法,那么GA算法在其GALM算法中也是無足輕重的。另外,申請人經(jīng)試驗(yàn)驗(yàn)證表明該論文公開的算法結(jié)構(gòu)并不適用于紅外光譜的定性分析。因此,如何實(shí)現(xiàn)紅外光譜的實(shí)時(shí)、準(zhǔn)確分析,這還有待研究。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的是提供一種操作簡單、分析準(zhǔn)確度高的基于LM-GA算法的紅外光譜定性分析方法。為實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案是:一種基于LM-GA算法的紅外光譜定性分析方法,一種基于LM-GA算法的紅外光譜定性分析方法,其步驟如下:1)提取待測樣品的紅外光譜數(shù)據(jù),建立參數(shù)文件,然后讀取參數(shù)文件并對紅外光譜數(shù)據(jù)的有效性進(jìn)入判斷,若有效,則進(jìn)入步驟2),否則結(jié)束程序并輸出報(bào)告;所述的參數(shù)文件包括:分子光譜數(shù)據(jù)庫個(gè)數(shù)、類型及其路徑信息;待處理光譜數(shù)據(jù)路徑信息;分析波段信息(起始波段、終止波段、擴(kuò)展波數(shù)信息);波數(shù)漂移初始值信息;切趾函數(shù)修正類型以及修正初始值信息;基線擬合階數(shù)以及其初始值信息;環(huán)境信息(溫度、壓強(qiáng)等);GA參數(shù);LM參數(shù);2)通過讀取分子光譜數(shù)據(jù)庫中所有組分的吸收光譜數(shù)據(jù),總數(shù)量為M。隨機(jī)生成N個(gè)基因個(gè)體,每個(gè)基因個(gè)體的長度為M?;蛎恳晃环謩e代表一種組分,當(dāng)該位為0時(shí),表示不存在該組分,當(dāng)該位為1是表示存在該組分。同時(shí)建立起種群數(shù)據(jù)庫,種群數(shù)據(jù)庫包括三個(gè)部分,當(dāng)前基因集合,淘汰基因集合,無效基因集合。將隨機(jī)生成的N各基因個(gè)體放入到當(dāng)前基因;;3)采用LM算法計(jì)算每個(gè)基因個(gè)體的適應(yīng)度;4)若當(dāng)前迭代次數(shù)≥最大迭代次數(shù),則結(jié)束計(jì)算并輸出報(bào)告,否則迭代次數(shù)加1并進(jìn)入步驟5);5)對種群數(shù)據(jù)庫中的有效基因個(gè)體進(jìn)行交叉、變異運(yùn)算,分析選擇;6)若出現(xiàn)程序設(shè)定的最優(yōu)解,則結(jié)束程序并輸出報(bào)告,否則返回到步驟4),所謂的最優(yōu)解也即是擬合誤差小于參數(shù)中設(shè)定的最小誤差,最小誤差的設(shè)定大小直接常規(guī)定義即可,一般來說,最小誤差都設(shè)定在10-6~10-10的范圍內(nèi)。采用上述技術(shù)方案產(chǎn)生的有益效果在于:本發(fā)明結(jié)合了LM算法的多參數(shù)擬合能力以及GA算法的全局最優(yōu)搜索能力對傅里葉變換紅外光譜進(jìn)行定性分析,經(jīng)實(shí)際應(yīng)用表明該方法能快速準(zhǔn)確識(shí)別傅里葉變換紅外光譜中的吸收組分,與現(xiàn)有技術(shù)相比,采用本發(fā)明公開的方法定性分析紅外光譜中的吸收組分不僅操作簡單,而且事先無需建模和基線校正等繁瑣的數(shù)據(jù)預(yù)處理步驟,其可以實(shí)時(shí)在線自動(dòng)分析譜圖,分析結(jié)果快速、準(zhǔn)確。另外,與張長勝等人公開的LMGA算法相比,本發(fā)明所述分析方法中涉及的LM算法是為GA算法服務(wù),LM算法參與GA算法中適應(yīng)度的計(jì)算,因此本發(fā)明與現(xiàn)有的上述算法結(jié)構(gòu)本身就完全不同。需要說明的是,本發(fā)明公開的方法對待測樣品的物理性質(zhì)沒有限制,也即是說,對于固體、熔融狀以及氣體待測樣品來說,本發(fā)明公開的方法均可以對其紅外光譜進(jìn)行定性分析。具體的方案,步驟3)中基因個(gè)體的適應(yīng)度的計(jì)算步驟為:a)抽取一個(gè)基因個(gè)體的基因數(shù)據(jù),采用二進(jìn)制編碼解析基因,提取數(shù)據(jù)庫中對應(yīng)組分在分析波段的光譜數(shù)據(jù);b)初始化LM算法的倍數(shù)因子Rampt、增長因子Beta以及最大迭代次數(shù)B;c)擬合測量光譜,計(jì)算當(dāng)前均方根誤差F(k),其中k為當(dāng)前迭代次數(shù);d)計(jì)算迭代補(bǔ)償,然后計(jì)算均方根誤差F(k+1);e)判斷是否達(dá)到終止條件:(|(F(k)-F(k+1)|)/F(k+1)是否小于最小誤差,若是進(jìn)入步驟f),否則進(jìn)入步驟k),最小誤差一般都設(shè)定為10-9左右;f)若F(k+1)<F(k),則進(jìn)入步驟g),否則進(jìn)入步驟i);g)更新Rampt=Rampt/Beta。h)更新迭代結(jié)果,k=k+1,并返回到步驟d);i)更新Rampt=Rampt*Beta。j)迭代結(jié)果保持不變,返回到步驟d);k)判斷是否已經(jīng)計(jì)算到最后一個(gè)基因個(gè)體,若是進(jìn)入步驟l),否則返回到步驟a);l)計(jì)算每個(gè)基因個(gè)體的適應(yīng)度:基因個(gè)體的基因型的標(biāo)準(zhǔn)差定義為:StdE(Gi)=1n-1Σj=1n(yc(vj)-ym(vj))2,]]>式中:StdE(Gi)表示第Gi個(gè)基因型的標(biāo)準(zhǔn)差;yc(vj)、ym(vj)分別表示實(shí)際測量光譜和計(jì)算光譜在第j個(gè)波數(shù)處的光強(qiáng),n表示測量光譜數(shù)據(jù)中的點(diǎn)個(gè)數(shù),j表示波數(shù)位置;基因個(gè)體的第Gi個(gè)基因型的適應(yīng)度定義為:F(i)=1/StdE(Gi)Σ1/StdE(Gi).]]>實(shí)際上對于適應(yīng)度的計(jì)算,本發(fā)明并未具體說明其擬合計(jì)算方法,但是本領(lǐng)域技術(shù)人員在已知測量光譜數(shù)據(jù)以及建立的基因個(gè)體的基因型的基礎(chǔ)上均可知采用上述公式以及擬合計(jì)算光譜的數(shù)學(xué)模型實(shí)現(xiàn)基因個(gè)體的適應(yīng)度的計(jì)算。具體來說,步驟1)中紅外光譜數(shù)據(jù)的有效性判斷步驟為:①、提取待測樣品的紅外光譜數(shù)據(jù),剔除無效的環(huán)境信息,若存在有效的環(huán)境信息,則進(jìn)入步驟②,否則結(jié)束程序并輸出報(bào)告;②、組件有效的波段信息,若其波段信息有效,則進(jìn)入步驟③,否則結(jié)束程序并輸出報(bào)告,也就是說對提取的待測樣品的紅外光譜來說,先要對其相應(yīng)的圖譜進(jìn)行初步的判定確定其是否是有效的;③、提取數(shù)據(jù)庫中的吸收光譜數(shù)據(jù)并轉(zhuǎn)換,若其存在有效的分子吸收光譜數(shù)據(jù)信息,則進(jìn)入步驟2),否則結(jié)束程序并輸出報(bào)告。也就是說,在對待測樣品的紅外光譜進(jìn)行定性分析時(shí)需要做些參數(shù)的準(zhǔn)備工作,即在分析前先要判定其紅外檢測時(shí)的溫度、大氣壓強(qiáng)、光程信息等環(huán)境信息以及波段信息等是否在有效范圍內(nèi),若無誤,則進(jìn)行接下來的分析工作,否則直接退出程序,具體可以見圖1所示,這些參數(shù)準(zhǔn)備工作實(shí)際上對紅外光譜進(jìn)行定性分析前的初期準(zhǔn)備工作,只有滿足了是有效的紅外光譜數(shù)據(jù),接下來對其進(jìn)行定性分析才有意義。具體的,步驟4)中最大迭代次數(shù)是基因個(gè)體長度的0.5-1倍。作為進(jìn)一步的優(yōu)選方案,步驟5)分析選擇的步驟為:第一步,將種群數(shù)據(jù)庫中的有效基因個(gè)體交叉、變異運(yùn)算生成的子代種群基因個(gè)體與種群數(shù)據(jù)庫比對,剔除子代種群基因個(gè)體中的重復(fù)基因個(gè)體;第二步,計(jì)算子代基因個(gè)體的適應(yīng)度,然后將子代基因個(gè)體和種群數(shù)據(jù)庫中的有效基因個(gè)體的適應(yīng)度一并按從大到小的順序排列,只保留適應(yīng)度大的前N個(gè)基因個(gè)體作為種群數(shù)據(jù)庫中的當(dāng)前有效基因。這樣通過迭代重復(fù)運(yùn)算分析即可得到最優(yōu)解。另外,優(yōu)選的,第一步在計(jì)算基因個(gè)體適應(yīng)度過程中,將出現(xiàn)的奇異解或者離散解(例如某些組分光譜數(shù)據(jù)在分析波段是線性相關(guān)的時(shí)候會(huì)出現(xiàn)奇異解)歸類為無效基因個(gè)體,第二步中剔除的適應(yīng)度小的基因個(gè)體歸類為非候選基因個(gè)體的淘汰基因個(gè)體,所述的無效基因個(gè)體、淘汰基因個(gè)體分別被納入無效基因集合和淘汰基因集合中,程序控制基因個(gè)體交叉、變異運(yùn)算生成的子代基因個(gè)體與無效基因集合及淘汰基因集合中的基因個(gè)體相異。這樣對于種群數(shù)據(jù)庫中新一代有效基因來說,可以有效避免其在運(yùn)算中產(chǎn)生無效基因或淘汰基因,進(jìn)而提高運(yùn)算的效率。附圖說明圖1是本發(fā)明的方法分析的基本流程圖;圖2是基于LM算法圖1中的基因個(gè)體的適應(yīng)度計(jì)算流程圖;圖3是混合氣體的紅外光譜圖。具體實(shí)施方式以下通過1個(gè)實(shí)施例來對本發(fā)明公開的技術(shù)方案作進(jìn)一步的說明:實(shí)施例1:紅外光譜的定性分析1)采用傅里葉變換紅外光譜儀采集一條混合氣體組分光譜圖,光譜圖如圖3所示;2)建立參數(shù)文件:確定有效的分析波段1900cm-1-2145cm-1,擴(kuò)展波數(shù)為10cm-1,擬合波數(shù)漂移并設(shè)置初始值為0,擬合函數(shù)采用諾頓比爾切趾函數(shù),擬合基線初始值設(shè)置為1,0,0,0,設(shè)置環(huán)境信息溫度、壓強(qiáng)為當(dāng)前實(shí)際環(huán)境信息;設(shè)置GA參數(shù)中的初始種群數(shù)目N為10,最大迭代次數(shù)為10,基因突變幾率為0.9,設(shè)置LM參數(shù)中的最大迭代次數(shù)B為50;3)程序讀取光譜,將待測樣品光譜的起始波段,終止波段,以及光強(qiáng)信息讀入。4)驗(yàn)證輸入的環(huán)境信息,無誤;5)驗(yàn)證參數(shù)中的波段信息,無誤;6)分析數(shù)據(jù)庫信息(本次實(shí)施例提取的是HITRAN高分辨率光譜數(shù)據(jù)庫中的波段新新),并提取數(shù)據(jù)庫中對應(yīng)波段1900cm-1~2145cm-1的光譜數(shù)據(jù),數(shù)據(jù)庫中此波段所包含的光譜數(shù)據(jù)組分共19種,如表1所示;7)隨機(jī)生成10個(gè)基因個(gè)體,建立初始種群數(shù)據(jù)庫,基因個(gè)體中的基因數(shù)目為數(shù)據(jù)庫中對應(yīng)波段的組分個(gè)數(shù),即19個(gè),采用二進(jìn)制編碼將種群數(shù)據(jù)庫中基因個(gè)體的19種表現(xiàn)型解碼成二進(jìn)制基因型,如表2所示,其中二進(jìn)制基因型中的1表示包含該組分,0表示不包含該組分,表1中的各表現(xiàn)組分(按H2O,CO2,O3,……,HBr,HI,OCS,……,NO+的順序)與表2-11中的基因型均按順序一一對應(yīng),這樣建立的初始種群數(shù)據(jù)庫中的當(dāng)前有效基因個(gè)體為10,另外初始種群數(shù)據(jù)庫中的無效基因集合以及淘汰基因集合中的個(gè)體數(shù)目均為0;8)計(jì)算當(dāng)前有效基因里面的每一條基因個(gè)體的適應(yīng)度:a)抽取有效基因里面一個(gè)基因個(gè)體的基因數(shù)據(jù),其二進(jìn)制編碼以及數(shù)據(jù)庫中對應(yīng)波段的光譜數(shù)據(jù)的分析選擇已在步驟6)、7)中完成;b)初始化LM算法參數(shù),倍數(shù)因子Rampt=0.01,增長因子Beta=10,由于程序的編排,有些參數(shù)條件的設(shè)置順序可以適度的調(diào)整,但是不影響本發(fā)明的分析方法的具體應(yīng)用,比如LM算法的最大迭代次數(shù)B在步驟2)中已直接在程度中設(shè)定為50,因此圖1、2中給出的計(jì)算步驟只是為了便于理解,其與要求保護(hù)的步驟并沒有沖突;c)擬合測量光譜,計(jì)算當(dāng)前均方根誤差F(k),其中k為當(dāng)前迭代次數(shù);d)計(jì)算迭代補(bǔ)償,然后計(jì)算均方根誤差F(k+1),迭代補(bǔ)償?shù)挠?jì)算采用LM算法中的常規(guī)計(jì)算方法即可;e)判斷是否達(dá)到終止條件,即(|(F(k)-F(k+1)|)/F(k+1)是否小于最小誤差,若是進(jìn)入步驟f),否則進(jìn)入步驟k),其中最小誤差的設(shè)定本領(lǐng)域技術(shù)人員根據(jù)經(jīng)驗(yàn)值很容易確定,具體要看實(shí)際基因個(gè)體以及個(gè)體中基因型的數(shù)目,本次實(shí)施例中設(shè)定最小誤差為10-6;f)若F(k+1)<F(k),則進(jìn)入步驟g),否則進(jìn)入步驟i);g)更新Rampt=Rampt/Beta。h)更新迭代結(jié)果,k=k+1,并返回到步驟d);i)更新Rampt=Rampt*Beta。j)迭代結(jié)果保持不變,返回到步驟d);k)判斷是否已經(jīng)計(jì)算到最后一個(gè)基因個(gè)體,若是進(jìn)入步驟l),否則返回到步驟a);l)計(jì)算每個(gè)基因個(gè)體的適應(yīng)度:基因個(gè)體的基因型的標(biāo)準(zhǔn)差定義為:StdE(Gi)=1n-1Σj=1n(yc(vj)-ym(vj))2,]]>式中:StdE(Gi)表示第Gi個(gè)基因型的標(biāo)準(zhǔn)差;yc(vj)、ym(vj)分別表示實(shí)際測量光譜和計(jì)算光譜在第j個(gè)波數(shù)處的光強(qiáng),n表示混合氣體分析波段的測量光譜數(shù)據(jù)中的點(diǎn)個(gè)數(shù),j表示波數(shù)位置,該實(shí)施例中n=2197;i為1,2,……,19;基因個(gè)體的第Gi個(gè)基因型的適應(yīng)度定義為:F(i)=1/StdE(Gi)Σ1/StdE(Gi);]]>9)若當(dāng)前迭代次數(shù)≥10,則結(jié)束計(jì)算并輸出報(bào)告,否則迭代次數(shù)加1并進(jìn)入步驟10);10)對種群數(shù)據(jù)庫中的有效基因個(gè)體進(jìn)行交叉、變異運(yùn)算生成的子代種群基因個(gè)體,與種群數(shù)據(jù)庫比對,剔除子代種群基因個(gè)體中的重復(fù)基因個(gè)體;按照步驟8)的方法計(jì)算子代基因個(gè)體的適應(yīng)度,然后將子代基因個(gè)體和種群數(shù)據(jù)庫中的有效基因個(gè)體的適應(yīng)度一并按從大到小的順序排列,只保留適應(yīng)度大的前10個(gè)基因個(gè)體作為種群數(shù)據(jù)庫中的當(dāng)前有效基因,同時(shí)將計(jì)算過程中出現(xiàn)的奇異解或者離散解納入無效基因集合,將剔除的適應(yīng)度小的基因個(gè)體相應(yīng)地納入種群數(shù)據(jù)庫的或淘汰基因集合;11)本次實(shí)施例設(shè)定遺傳算法的最小誤差為10-10,其迭代計(jì)算10次,直至GA算法結(jié)束,提取種群數(shù)據(jù)庫中當(dāng)前有效基因里面的最優(yōu)解作為識(shí)別結(jié)果。如表2-11所示的是GA算法的迭代計(jì)算過程中每一代的當(dāng)前基因個(gè)體以及每個(gè)基因個(gè)體的標(biāo)準(zhǔn)差值,從迭代第10次的表11中可以看出,最優(yōu)解為基因編號(hào)1,其基因型為:1100100101000111001,對該基因個(gè)體的基因型對照表1進(jìn)行解碼可知,采用上述方法分析出來的組分有9種(基因型中的1代表包含表1中對應(yīng)的組分)H2O、CO2、CO、NH3、HBr、HCN、C2H2、PH3,NO+,而試驗(yàn)中可以確定混合氣體中包含的組分為H2O,CO2,CO,NH3,而其它5種組分均是空氣中含量較少的常見組分,并且在此分析波段并不具有強(qiáng)烈紅外吸收,相比之下只是作為干擾組分出現(xiàn),故可忽略,由此證明采用上述方法定性分析混合氣體的紅外光譜準(zhǔn)確性高。表1光譜數(shù)據(jù)庫中波段1900cm-1~2145cm-1所包含的光譜數(shù)據(jù)組分H2OCO2O3N2OCOCH4NONH3OHHBrHIOCSN2HCNC2H2PH3COF2H2SNO+表2迭代次數(shù)1表3迭代次數(shù)2表4迭代次數(shù)3表5迭代次數(shù)4表6迭代次數(shù)5表7迭代次數(shù)6表8迭代次數(shù)7表9迭代次數(shù)8表10迭代次數(shù)9表11迭代次數(shù)10當(dāng)前第1頁1 2 3