韓海濤,譚力寧,馬紅光,朱曉菲,楊東東
(1.第二炮兵工程大學(xué)701教研室,陜西 西安 710025;2.第二炮兵工程大學(xué)101教研室,陜西 西安 710025)
Volterra級數(shù)是非線性系統(tǒng)建模的重要工具,其Volterra核辨識是一個復(fù)雜和困難的問題[1]。Volterra核辨識對激勵信號選擇有嚴(yán)格的要求,如果激勵信號選擇不當(dāng)則激發(fā)不出系統(tǒng)的特征,不能準(zhǔn)確地對Volterra核進(jìn)行辨識。傳統(tǒng)Volterra核辨識方法往往采用高斯白噪聲作為系統(tǒng)激勵,通過時域自適應(yīng)學(xué)習(xí)的方法來辨識Volterra核,這種方法存在的問題是,首先是產(chǎn)生高斯白噪聲激勵對設(shè)備硬件要求比較高,其次辨識出的核是局部有效的[2]?;诙嘁艏罘ǖ南到y(tǒng)辨識為Volterra核辨識提供了一條便捷方法,然而該方法對多音激勵信號的頻域成分的選擇以及相位都有的要求。文獻(xiàn)[3]僅從頻率成分的選擇方面進(jìn)行了論述,然而多音激勵信號的相位也是一個必須考慮的重要因素,本文擬加入相位因素考慮多音激勵信號的設(shè)計問題。
多音激勵信號可以很好地激發(fā)出系統(tǒng)的動態(tài)特性,是一種廣泛使用的測試激勵信號[4-7]。多音信號是由在一定頻帶范圍內(nèi)的多個正弦信號疊加產(chǎn)生。但如果沒有合理的選擇相位,多個正弦信號的疊加會造成多音信號在時域上出現(xiàn)很強(qiáng)的波峰,這種現(xiàn)象的出現(xiàn)對系統(tǒng)測試是不利的,一是系統(tǒng)對激勵信號的幅度有限制要求,如果波峰超過系統(tǒng)的響應(yīng)范圍可能會對系統(tǒng)產(chǎn)生損傷以至于破壞系統(tǒng)結(jié)構(gòu),還有可能人為的引入一些非線性因素;二是使系統(tǒng)的信噪比SNR(signal-to-noise ratio)下降,使測試容易受測量誤差的影響。測試過程中對于干擾噪聲的敏感性與測試信號的SNR 成反比[8],因此提高測試信號的SNR 是提高測量精度的有效手段。波峰因子CF(crest factor)是衡量多音激勵信號性能的一個重要指標(biāo),CF 越大說明多音激勵信號的波峰就越明顯。降低多音激勵信號的CF 可顯著提高信號的SNR,在不改變多音激勵信號頻譜特征的情況下如何降低多音激勵信號的CF 是多音激勵信號設(shè)計中面臨關(guān)鍵的問題。目前這一問題還沒有得到有效解決,是國內(nèi)外學(xué)者共同探討一個熱點問題[8-13]。
文獻(xiàn)[8]基于無窮范數(shù)提出了一種構(gòu)造多音激勵信號相位的方法,可以有效降低CF;文獻(xiàn)[9]依據(jù)多音激勵信號中每個頻率成分的功率,選定該頻率成分的相位及持續(xù)的時間,然后將多個時間段的信號疊加來構(gòu)造多音激勵信號,在一定程度降低了CF;文獻(xiàn)[10]提出了一種時頻域結(jié)合的方法來進(jìn)行多音激勵信號相位的選取,該方法首先從頻域上構(gòu)造多音激勵信號的頻譜,選定多音信號的頻率成分及初始相位,其次對構(gòu)造出來的信號頻譜求反傅里葉變換得到時域信號,然后對時域中出現(xiàn)的波峰進(jìn)行裁剪,并對裁剪后信號作傅里葉變換,校正多音激勵信號的幅度及相位,以此達(dá)到降低多音激勵信號CF的目的;文獻(xiàn)[11]采用了多相互補(bǔ)碼對的方法研究了多音信號峰值因子的減少作用;文獻(xiàn)[12-13]將多音激勵信號相位的選擇看成一個求解最優(yōu)化問題,采用隨機(jī)嘗試法和遺傳算法來解決該問題,獲得比較理想的實驗效果。然而目前存在的方法使CF 降低的同時,使多音激勵信號的功率譜有所失真不利于系統(tǒng)辨識。本文以Volterra核辨識的多音激勵設(shè)計為目的,從多音激勵信號的頻率成分和相位兩個因素考慮,采用優(yōu)化遺傳算法方法解決多音激勵信號的相位選擇問題,經(jīng)實驗結(jié)果驗證該方法可以有效降低多音激勵信號的CF,保證信號的功率譜不失真。
對于任意連續(xù)的時不變?nèi)醴蔷€性動態(tài)系統(tǒng),可以用N階Volterra級數(shù)近似描述
式中:yn(t)——系統(tǒng)的第n階輸出響應(yīng),hn(τ1,τ2,…,τn)——第n階Volterra時域核,或稱廣義脈沖響應(yīng)函數(shù)。hn(τ1,τ2,…,τn)的多維傅立葉變換為
Hn(ω1,ω2,…,ωn)稱為非線性系統(tǒng)的第n 階Volterra頻域核,或稱為第n階廣義頻率響應(yīng)函數(shù)GFRF(Generalized Frequency Response Function)
K 音的多音激勵信號可用式(4)表示
式中:Yn(jωM)——yn(t)的傅里葉變換中頻率成為ωM的分量,φ(ωM)——Hn(ω1,ω2,…,ωn)的相位,angle——提取相位的函數(shù)。
波峰因子CF 定義為
Volterra核辨識的多音激勵信號必須要滿足兩個條件,如式(8),條件一是同一階核對應(yīng)輸出的頻率成分沒有重復(fù),條件二是θi在0到π選取合適的值以使CF 最小
關(guān)于Volterra核辨識多音激勵信號頻率成分的選擇問題,已經(jīng)在文獻(xiàn)[3]中進(jìn)行了論述,本節(jié)主要針對多音激勵的相位的選取問題進(jìn)行討論。Schroeder法[9]是最早提出的降低多音激勵信號波峰因子的方法,后來的改進(jìn)方法都是按此方法的思路進(jìn)行設(shè)計。
Schroeder法是一種有效的多音激勵信號相位的選取方法,可以使CF 得到很大幅度地降低,設(shè)計出來信號如式(9)所示
式中:T——周期,N——多音激勵信號r(t)頻率成分的個數(shù),tk可按式(11)計算
那么r(t)瞬時相位為
由式(10)和r(t)的連續(xù)性可得
可以看出Schroeder法的特點是對多音激勵的頻率和幅度都有確定要求,即頻率和幅度不能隨意選取。這一特點也是該方法的缺陷,顯然通過這種方式設(shè)計的多音信號不能用于Volterra頻域核辨識。
2.2.1 遺傳算法
遺傳算法(genetic algorithm,GA)是將生物學(xué)的遺傳進(jìn)化原理和最優(yōu)化技術(shù)相結(jié)合的產(chǎn)生,它以自然選擇和遺傳理論為基礎(chǔ),將生物進(jìn)化過程中適者生存規(guī)則與群體內(nèi)部的染色體的隨機(jī)信息交換相結(jié)合的高效全局尋優(yōu)搜索算法[14]。GA 將待解決問題的參數(shù)按照一定規(guī)則編碼,由若干基因組成一個染色體,對群體進(jìn)行選擇、交叉和變異運算,經(jīng)過多次重復(fù)迭代直至得到最后的優(yōu)化結(jié)果。遺傳算法需要解決以下問題:
一是編碼問題,即如何將待求解的問題用一定編碼規(guī)則來表達(dá),這是GA 理論的基礎(chǔ),基本的編碼形式有二進(jìn)制碼、格雷碼、浮點數(shù)碼、多參數(shù)級別聯(lián)編碼及多參數(shù)交叉編碼等,編碼應(yīng)滿足完備性、健全性和非冗余性等規(guī)范。二是選擇算子的實現(xiàn)問題,選擇算子是在群體中選擇生命力強(qiáng)(即適應(yīng)度高)的個體產(chǎn)生新群體的過程,這樣使群體中適應(yīng)度高的個體得到保留和發(fā)展,適應(yīng)度低的個體逐漸被淘汰。選擇算子應(yīng)恰當(dāng),如果選擇不當(dāng)會導(dǎo)致算法早熟。三是交叉算子的實現(xiàn)問題,交叉算子是以較大的概率從群體中抽選兩個個體的染色體,交換染色體的某個或某些位,該算子決定了GA的全局搜索能力。交叉運算包括交叉點位置的確定問題和部分基因交換的實現(xiàn)問題兩個方面的內(nèi)容。交叉運算可分單點交叉、兩點交叉、多點交叉、均勻交叉與算術(shù)交叉。單點交叉與兩點交叉的實現(xiàn)如圖1所示。三是變異算子的實現(xiàn)問題,該算子是以一個小概率對個體染色體編碼串上的某個或某些位值進(jìn)行突然改變。變異是產(chǎn)生新個體的有效手段,其可以有效改善遺傳算法的局部搜索能力和維持群體的多樣性;四是是適應(yīng)度函數(shù)的實現(xiàn)問題,其適應(yīng)度決定個體遺傳到下一代的概率。適應(yīng)度函數(shù)是評價群體中各個個體在優(yōu)化算法中能達(dá)到或接近最優(yōu)解的優(yōu)良程度,其設(shè)計應(yīng)滿足單值、連續(xù)、非負(fù)、最大化、合理、一致性、計算量小及通用性強(qiáng)等原則。
此外還應(yīng)合理的選擇GA的控制參數(shù)如:群眾規(guī)模N、編碼長度、交叉概率Pc和變異概率Pm等,這些控制參數(shù)的選擇決定著GA的性能。群體規(guī)模N的大小直接影響到遺傳算法的收斂性或計算效率,一般在10~200之間選取,交叉概率Pc一般取值范圍為0.4~0.99,變異概率Pm一般取值范圍為0.0001~0.1。
2.2.2 算法設(shè)計
基于多音激勵的非線性系統(tǒng)的Volterra核辨識,首先需要確定多音激勵信號的頻帶范圍,通常的做法是對待辨識的非線性系統(tǒng)進(jìn)行掃頻分析,確定系統(tǒng)有效頻率響應(yīng)范圍;其次在帶寬響應(yīng)范圍內(nèi)以同一階輸出頻率成分不重合作為選擇標(biāo)準(zhǔn)進(jìn)行頻率搜索,設(shè)搜索出的頻率成分組成的集合為WM;最后確定WM中每一個頻率分量的相位,使WM對應(yīng)多音激勵信號的CF 達(dá)到最小。
圖1 交叉運算
以CF 最小化作為目標(biāo)函數(shù),如果多音激勵含有K個頻率分量,那么可將CF 看成含有K個變量的函數(shù),如式(7)所示,θi(i=1,…,K)在0到π 之間取值使CF的取值最小。將變量θi按一定規(guī)則進(jìn)行編碼,形成一個基因,將K個基因組合在一體形成一個染色體。隨機(jī)生成一個種群,群體的規(guī)模為N,該群體按照選擇、交叉、變異等運算進(jìn)行進(jìn)化,該流程可用圖2表示。
圖2 遺傳算法實現(xiàn)流程
基于Volterra 核的多音激勵信號設(shè)計可按以下步驟實現(xiàn):
步驟1 對待測試系統(tǒng)進(jìn)行掃頻分析確定有效頻率響應(yīng)范圍B,在B 內(nèi)通過文獻(xiàn)[3]提出的方法搜索多音激勵信號的頻率成分,頻率成分組成的集合為WM,如果WM頻率成分的個數(shù)為K,確定式(7)中變量的個數(shù)為K,轉(zhuǎn)到步驟2;
步驟2 確定遺傳算法的控制參數(shù),如群眾規(guī)模N、編碼規(guī)則、交叉概率Pc和變異概率Pm,轉(zhuǎn)到步驟3;
步驟3 初始種群由式(7)中每個變量在0到π 之間隨機(jī)取值產(chǎn)生。后面種群的規(guī)模和個體差異均由進(jìn)化規(guī)律決定,轉(zhuǎn)到步驟4;
步驟4 以式(8)中條件二作為目標(biāo)函數(shù),對種群進(jìn)行適應(yīng)度評價。按編碼規(guī)范進(jìn)行編碼,對種群中每個個體進(jìn)行編碼,多個變量對應(yīng)的編碼組合形成染色體;
步驟5 根據(jù)每個個體適應(yīng)度,對種群進(jìn)行選擇操作。為了提高整體和局部搜索能力,分別對群體進(jìn)行交叉和變異操作,轉(zhuǎn)到步驟6;
步驟6 算法進(jìn)化是否滿足收斂條件,或者進(jìn)化次數(shù)是否滿足設(shè)定的次數(shù),如果滿足條件則輸出結(jié)果,反之轉(zhuǎn)到步驟3。
通過兩次實驗驗證本文提出的方法,實驗一為仿真實驗,和文獻(xiàn)[3]提出的設(shè)計方法進(jìn)行了對比;實驗二是通過對一非線性模擬電路的多音激勵信號進(jìn)行設(shè)計,驗證提出方法的有效性。
實驗1Schroeder法設(shè)計的多音激勵信號如式(9)所示,假設(shè)有16個諧波分量,如式(14)所示
如果將θk都設(shè)為0,得到多音激勵信號和功率譜如圖3所示,從圖3(a)中可以看出相位為0時,激勵信號產(chǎn)生尖峰很大,達(dá)到2.5V,經(jīng)計算CF為5.101;采用Schroeder法,按照式(13)選擇θk,得到信號和其功率譜如圖4所示,從圖4(a)中可以看出激勵信號平滑,產(chǎn)生的波峰比較小,CF為1.620,但從圖4(b)中可以看出,與圖3(b)比較,Schroeder法設(shè)計出多音激勵信號功率譜失真嚴(yán)重;如果采用本文提出的遺傳算法得到的結(jié)果如圖5所示,從圖5(a)可以看出產(chǎn)生的多音激勵信號沒有產(chǎn)生很強(qiáng)波峰,信號比較平滑,CF為1.247,圖5(b)與圖3(a)相比較可以功率譜幾乎沒有失真。從而可以看出本文提出的方法在降低CF的同時,信號功率譜沒有失真,從而驗證了該方法的有效性。
實驗2 圖6為一非線性模擬電路,u為輸入激勵信號,流過R1電流為i1,流過R2的電流為i2,由于R2與C1并聯(lián),它們兩端的電壓同為u1,u1為系統(tǒng)輸出,非線性電阻R2的伏安特性為:i2=0.001(u1+5u12),電路對u 幅度要求為5V。
圖5 遺傳算法設(shè)計多音激勵信號及其功率譜
圖6 非線性模擬電路
采用文獻(xiàn)[3]提出的方法設(shè)計出多音激勵信號的頻率,結(jié)果為WM={11,511,1013,1517,2025,2553,3093}Hz,WM中每個頻率分量幅度選為1,采用本文提出方法進(jìn)行相位選擇,優(yōu)化出的相位為{-1.693,-3.008,2.548,0.744,-0.456,0.277,-3.086}rad,未經(jīng)優(yōu)化的激勵信號如圖7(a)所示,其幅度已經(jīng)超過5V,對應(yīng)的CF為3.300,優(yōu)化過的激勵信號如圖7(b)所示,幅度控制在了4幅度以內(nèi),對應(yīng)的CF為2.133。
從系統(tǒng)的輸入輸出數(shù)據(jù)辨識Volterra核,辨識結(jié)果的準(zhǔn)確度依賴于激勵信號的選擇。多音激勵下的Volterra核辨識是一種簡單易行的方法,然而關(guān)于多音激勵如何選擇問題,目前還沒有得到有效解決。本文在多音激勵信號頻率成分選擇的基礎(chǔ)上,提出一種基于遺傳算法的相位優(yōu)化方法,在保證多音激勵信號功率譜不失真的情況下可以有效的降低的波峰因子。實驗驗證了所提方法的有效性。該方法可廣泛應(yīng)用于系統(tǒng)辨識及動態(tài)特性測試,具有重要的應(yīng)用價值。
圖7 關(guān)于Volterra核辨識的多音激勵信號設(shè)計
[1]HAN Haitao,MA Hongguang,Li Fei,et al.Research on nonlinear system based on output frequency response function[J].Journal of Engineering Design,2011,18(5):373-377(in Chinese).[韓海濤,馬紅光,李飛,等.基于系統(tǒng)輸出頻率響應(yīng)函數(shù)的非線性系統(tǒng)研究[J].工程設(shè)計學(xué)報,2011,18(5):373-377.]
[2]MA Hongguang,HAN Chongzhao,KONG Xiangyu,et al.The GFRF identification model of radar fuze receiver[J].Journal of System Simulation,2004,16(6):1143-1146(in Chinese).[馬紅光,韓崇昭,孔祥玉,等.基于電路仿真的接收機(jī)中頻放大器的GFRF模型[J].系統(tǒng)仿真學(xué)報,2004,16(6):1143-1146.]
[3]HAN Haitao,MA Hongguang,HAN Kun,et al.Multitone stimulus signal design for identifying Volterra frequency domain kernels[J].Journal of Engineering Design,2012,19(2):123-127(in Chinese).[韓海濤,馬紅光,韓琨,等.關(guān)于Volterra頻域核辨識的多音激勵信號設(shè)計[J].工程設(shè)計學(xué)報,2012,19(2):123-127.]
[4]LUO Hui,WANG Youren,LIN Hua,et al.Test stimulus optimization design of analog circuit based on random periodic stimulus function[J].Acta Electronica Sinica,2011,39(8):1950-1954(in Chinese).[羅慧,王友仁,林華,等.任意周期激勵函數(shù)的模擬電路測試激勵優(yōu)化設(shè)計[J].電子學(xué)報,2011,39(8):1950-1954.]
[5]JIANG Yuanyuan,WANG Youren,CUI Jiang,et al.Analog circuit test stimuli optimal method based on fault detectable analysis and genetic algorithm[J].Application Research of Computers,2011,28(3):930-934(in Chinese).[姜媛媛,王友仁,崔江,等.基于故障可診性與遺傳算法的模擬電路測試激勵優(yōu)化方法[J].計算機(jī)應(yīng)用研究,2011,28(3):930-934.]
[6]LUO Hui,WANG Youren,CUI Jiang,et al.Evolutionary generation of multi-tone sine stimulus for analog circuits based on fault distinguishable analysis[J].Journal of Astronautics,2011,32(9):2051-2058(in Chinese).[羅慧,王友仁,崔江,等.基于故障可診斷性的模擬多音正弦測試信號進(jìn)化生成[J].宇航學(xué)報,2011,32(9):2051-2058.]
[7]Steve Temme,Pascal Brunet.A new method for measu-ring distortion using a multitone stimulus and noncoherence[J].Journal of Audio Engineering Society,2008,56(3):176-188.
[8]Patrick Guillaume,Johan Schoukens,Rik Pintelon,et al.Crestfactor minimization using nonlinear Chebyshev approximation methods[J].IEEE Transactions on Instrumentation and Measurement,1991,40(6):982-989.
[9]Schroeder M.Synthesis of low-peak-factor signals and binary sequences with low autocorrelation[J].IEEE Transactions on Information Theory,1970,16(1):85-89.
[10]Edwin Van Der Ouderaa,Johan Schoukens,Jean Renneboog.Peak factor minimization using a time-frequency domain swapping algorithm[J].IEEE Transactions on Instrumentation and Measurement,1988,37(1):145-147.
[11]YAN Biao,WANG Haiyang,ZHU Yihuan.Multiphase complementary codes and their effect on reducing crestfactor of multitone signals[J].Journal of Electronic Measurement and Instrument,2007,21(2):49-53(in Chinese).[顏彪,王海洋,朱一歡.多相互補(bǔ)碼及其對多音頻信號峰值因子的減少作用[J].電子測量與儀器學(xué)報,2007,21(2):49-53.]
[12]MENG Xiaofeng,ZHANG Fengjun,F(xiàn)U Luping.A study on numerical synthesis of low-peak-factor multisine signals[J].Chinese Journal of Scientific Instrument,2002,23(5):515-517(in Chinese).[孟曉風(fēng),張鳳均,付魯平.低波峰因數(shù)多頻正弦信號數(shù)字合成算法的研究[J].儀器儀表學(xué)報,2002,23(5):515-517.]
[13]Aadrew Horner,James Beauchamp.A genetic algorithm-based method for synthesis of low peak amplitude signals[J].Journal of Audio Engineering Society,1996,99(1):433-443.
[14]LEI Yingjie,ZHANG Shanwen,LI Xuwu.Genetic algorithm toolbox and its application MATLAB[M].Xi’an:Xi’an Electronic and Science University Press,2006:1-30(in Chinese).[雷英杰,張善文,李續(xù)武.MATLAB 遺傳算法工具箱及應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2006:1-30.]