吳斌
(長春科技學(xué)院智能制造學(xué)院,吉林長春,130022)
本文研究對(duì)象為“光斑在線陣CCD 上成像曲線”的優(yōu)化處理問題,該問題來源于“光反射法微摩檫測試項(xiàng)目”的光電測試系統(tǒng)[4][5]。其組成為:兩套激光發(fā)生器、準(zhǔn)直聚焦透鏡、兩套硅傳感器、兩套線陣CCD 探測器。工作原理為:激光器發(fā)出激光,經(jīng)準(zhǔn)直透鏡聚焦后入射到硅傳感器上,再經(jīng)其反射進(jìn)入線陣CCD 探測器的光敏面上,光斑在線陣CCD 上的成像曲線如圖1 所示。
圖1 光斑在CCD 上成像曲線
分析可知:成像曲線的峰值所在位置應(yīng)為線陣CCD 光敏面上的光斑反射位置。
綜上所述,該光電測試系統(tǒng)的一個(gè)重要環(huán)節(jié)就是CCD 成像曲線的優(yōu)化處理問題,如何能夠快速、精確的定位最大值點(diǎn)及計(jì)算其變化量就成為實(shí)現(xiàn)該測試系統(tǒng)高精度、高靈敏度的關(guān)鍵所在。
由圖1 可得以下數(shù)據(jù):成像曲線最大值所對(duì)應(yīng)的光強(qiáng)值約為275,對(duì)于光強(qiáng)值小于100 均認(rèn)為是光斑未照射點(diǎn),光斑成像點(diǎn)的像素寬約為200 個(gè)像素。由此該優(yōu)化求解模型可這樣建立:
(1)目標(biāo)函數(shù)
根據(jù)以上數(shù)據(jù),確定以曲線最大光強(qiáng)值275 與搜索點(diǎn)光強(qiáng)值之差為目標(biāo)函數(shù),其函數(shù)表達(dá)式為:
(2)約束條件
因?yàn)樗霉鈴?qiáng)值最大只能為275,所以確立約束條件為如下表達(dá)式:
(3)終止條件
根據(jù)實(shí)際情況,確立以差值為0 或第i 次差值等于第i-5次到i 次差值的平均值為終止條件,其函數(shù)表達(dá)式如下:
上式(1)(2)(3)參數(shù)定義如下:Δmax 為最大光強(qiáng)275,Δi 為任意取點(diǎn)得到的有效光強(qiáng),Δj 為任意取點(diǎn)的實(shí)際光強(qiáng),N 為取點(diǎn)次數(shù)。
本文提出的改進(jìn)方案是針對(duì)SGA 的終止條件進(jìn)行的,在SGA 的終止條件中結(jié)合動(dòng)態(tài)自適應(yīng)技術(shù)和閥值約束技術(shù),使得其改進(jìn)算法在此類尋優(yōu)問題上具有明顯的優(yōu)越性。
已知該系統(tǒng)的最優(yōu)值即線陣CCD 檢測的最大光強(qiáng)值約為275,光斑成像點(diǎn)的像素寬約為200 個(gè)像素,則CCD 檢測信號(hào)的最大光強(qiáng)所在位置約為該200 個(gè)像素的中間位置,由于以上兩數(shù)據(jù)已知,所以約束條件可以這樣設(shè)置:
(1)將隨機(jī)獲取的目標(biāo)值即相對(duì)光強(qiáng)值
與閥值100(光強(qiáng)值小于100 均認(rèn)為是光斑未照射點(diǎn))比較,由于最終的目標(biāo)光強(qiáng)值大約為275,所以就可以認(rèn)為大于100 光強(qiáng)的目標(biāo)值位置已經(jīng)在光斑成像點(diǎn)的200 像素寬中。如果所有個(gè)體目標(biāo)值均小于閥值100,那么系統(tǒng)重新分配,并重新獲取光強(qiáng)值繼續(xù)比較,直到其中有個(gè)體目標(biāo)值大于閥值100 為止。如果合理設(shè)置種群大小,3 次之內(nèi)就可以獲取到大于閥值100 的個(gè)體。
(2)待有個(gè)體目標(biāo)值大于閥值100 后
隨即縮小隨機(jī)分配空間,以該個(gè)體目標(biāo)值位置所對(duì)應(yīng)的像素值為中心,向前向后各開闊60 像素長度的空間(光斑所對(duì)應(yīng)的像素寬為200,一半為100,所以選取60,兩次可覆蓋最優(yōu)解整個(gè)區(qū)域),從而形成一個(gè)120 像素的分配空間,同時(shí)增加總?cè)簜€(gè)體數(shù)量和改變先前約束條件,約束條件變?yōu)楦鱾€(gè)體目標(biāo)值之間進(jìn)行大小比較,最大者保留。由于在此分配空間上獲取的個(gè)體目標(biāo)值已經(jīng)越來越接近最優(yōu)解,所以此時(shí)增加總?cè)簜€(gè)體數(shù)可以提高尋優(yōu)效率尋優(yōu)精度。按照以上方案執(zhí)行數(shù)次即可得到該曲線的最大值。
IGA 測試的對(duì)象為前文介紹模型,該模型測試曲線,屬于非線性、多極值無規(guī)律曲線,曲線有無數(shù)個(gè)局部極大點(diǎn),但僅有一個(gè)全局最大點(diǎn)。想要快速、準(zhǔn)確的得到曲線的最優(yōu)解即最大值,選用傳統(tǒng)的優(yōu)化算法求解,可能會(huì)因?yàn)樗惴ㄊ芟薜玫骄植孔顑?yōu)或者因?yàn)樗惴◤?fù)雜而使求解時(shí)間過長,運(yùn)用IGA可快速準(zhǔn)確求得最優(yōu)解。筆者分別選用IGA、SGA、SP 三種算法對(duì)該問題優(yōu)化處理。以下為具體求解及分析過程:
IGA 求解參數(shù)選取如下:初始種群大小N1=30,進(jìn)入分配空間種群大小N2=50,變量數(shù)目NVAR=2(相對(duì)光強(qiáng)值和像素值),個(gè)體的編碼串長度PRECI=10,最大遺傳代數(shù)MAXGEN=100,代 溝GGAP=0.9,交叉概率Px=0.7,變異概 率PM=0.7/(2×PRECI)=0.014,初始約束閥值TV1=100 和擴(kuò)域閥值TV2=60。
為了建立算法的可比性,取SGA 的求解參數(shù)相等于改進(jìn)算法的求解參數(shù)(種群個(gè)體N=50,其它求解參數(shù)均相等)。
經(jīng)實(shí)驗(yàn)表明:對(duì)于該模型利用SGA 求解最大值時(shí),經(jīng)過遺傳30 代后得到的最大值為271.732;同樣是求解該模型最大值,利用IGA 求解,遺傳10 代后得到的最大值為274.148,遠(yuǎn)大于SGA 遺傳30 代的最大值。由此知:IGA 與SGA 相比,前者求解速度要遠(yuǎn)快于后者。
圖2 為算法改進(jìn)前后最優(yōu)個(gè)體變化趨勢圖,從圖中可以清晰的看出:IGA 遺傳10 代就已得到最值,而相比于SGA 遺傳30 代才得到最值,并且后者得到的最值還略小于前者。對(duì)于“光反射法微摩檫測試項(xiàng)目”來說,最優(yōu)解的微誤差可能代表一個(gè)數(shù)量級(jí)的差別,所以IGA 無論從求解效率還是求解精度方面考慮都非常適用于該項(xiàng)目。
圖2 標(biāo)準(zhǔn)及改進(jìn)最優(yōu)個(gè)體變化趨勢
表1 為三種算法的具體性能分析,由下表可知:IGA 不僅在求解速度上提高了很多(快于SGA 和SP),而且在求解精度上也有改善(高于SGA)。
表1 三種算法的性能比較
GA 作為一種非確定的擬自然算法,為復(fù)雜系統(tǒng)的優(yōu)化提供了一種有效的解決方法。本文通過對(duì)傳統(tǒng)優(yōu)化算法SP 及標(biāo)準(zhǔn)遺傳算法SGA 的分析,指出了其不足,并設(shè)計(jì)一種改進(jìn)遺傳算法IGA,算法簡單易行,實(shí)用價(jià)值很高。文章最后通過應(yīng)用于實(shí)際檢測數(shù)據(jù)分析比較,證明了IGA 在尋優(yōu)問題上的優(yōu)越性,易于推廣。此實(shí)例也側(cè)面印證IGA 是一種具有定向制導(dǎo)的全局隨機(jī)搜索技術(shù)。
盡管GA 及其改進(jìn)已在諸多領(lǐng)域(函數(shù)優(yōu)化、自動(dòng)控制、人工生命、機(jī)器人學(xué)等)具備實(shí)際的應(yīng)用價(jià)值,但是要廣泛使用遺傳算法仍存在一些問題,下面2 點(diǎn)為筆者總結(jié)的遺傳算法當(dāng)前的不足之處:(1)適應(yīng)度標(biāo)定方式很多,但沒有一種簡潔、通用的方法,不利于對(duì)遺傳算法的使用。(2)快要接近最優(yōu)解時(shí)在最優(yōu)解附近左右擺動(dòng),收斂較慢。
目前,各國學(xué)者都在探索對(duì)GA 的改進(jìn)及發(fā)展,以使GA有更廣泛的應(yīng)用領(lǐng)域。我們可以肯定的是,隨著邏輯性強(qiáng)的數(shù)學(xué)方法和功能強(qiáng)大的計(jì)算機(jī)模擬工具的介入, GA 的研究必將取得更大的成就。