一種水聲信號(hào)的預(yù)測(cè)方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于水聲信號(hào)處理技術(shù)領(lǐng)域,設(shè)及一種水聲信號(hào)的預(yù)測(cè)方法。
【背景技術(shù)】
[0002] 文獻(xiàn)"基于PS0和RBF神經(jīng)網(wǎng)絡(luò)的水聲信號(hào)建模與預(yù)測(cè),計(jì)算機(jī)工程,2008, Vol. 34 (23),P208-209, 213"公開了一種水聲信號(hào)建模與預(yù)測(cè)方法,在自增加聚類算法確定 RBF神經(jīng)網(wǎng)絡(luò)基函數(shù)中屯、個(gè)數(shù)的基礎(chǔ)上,運(yùn)用改進(jìn)的粒子群優(yōu)化算法對(duì)其距離闊值進(jìn)行優(yōu) 化,結(jié)合最小二乘法確定網(wǎng)絡(luò)輸出權(quán)值,并將得到的RBF網(wǎng)絡(luò)用于水聲信號(hào)預(yù)測(cè),預(yù)測(cè)值與 實(shí)際值吻合較好,其均方根誤差為0. 1659。但是需要說明的是,其建模方法并沒有給出水聲 信號(hào)的準(zhǔn)確數(shù)學(xué)表達(dá)式,另外,預(yù)測(cè)的均方根誤差較大。文獻(xiàn)"水聲信號(hào)預(yù)測(cè)的神經(jīng)網(wǎng)絡(luò)方 法,聲學(xué)技術(shù),2006, Vol. 25 (3),226-229"公開了一種水聲信號(hào)預(yù)測(cè)的神經(jīng)網(wǎng)絡(luò)方法,采用 人工神經(jīng)網(wǎng)絡(luò)技術(shù),研究了水聲信號(hào)的神經(jīng)網(wǎng)絡(luò)預(yù)測(cè),討論了預(yù)測(cè)模型的建立和網(wǎng)絡(luò)結(jié)構(gòu) 參數(shù)的設(shè)計(jì)。但是需要說明的是,該些建模方法并沒有給出水聲信號(hào)的準(zhǔn)確數(shù)學(xué)表達(dá)式。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的在于針對(duì)現(xiàn)有技術(shù)存在的缺陷和不足,提供一種基于遺傳算法的水 聲信號(hào)預(yù)測(cè)方法。
[0004] 為實(shí)現(xiàn)上述目的,本發(fā)明包括W下步驟:
[0005]步驟(a),利用遺傳算法對(duì)實(shí)測(cè)水聲信號(hào)W Volterra級(jí)數(shù)模型作為基本模型框架 建立數(shù)學(xué)模型,并對(duì)每一個(gè)可能的模型進(jìn)行遺傳編碼;
[0006] 步驟化),使用最小二乘法計(jì)算出模型系數(shù),在得到模型系數(shù)后,使用評(píng)價(jià)數(shù)據(jù)來 計(jì)算模型的預(yù)測(cè)誤差,使用該誤差作為模型好壞的評(píng)價(jià)準(zhǔn)則;
[0007] 步驟(C),進(jìn)行遺傳操作:
[0008] 交叉繁殖;將兩個(gè)模型的項(xiàng)按照一定的規(guī)律分別排序,在兩個(gè)序列中各隨機(jī)選擇 一個(gè)交叉點(diǎn),然后交換序列的后半部分,該樣便得到兩個(gè)新的模型,作為交叉繁殖的后代;
[0009] 變異;隨機(jī)生成模型的一個(gè)項(xiàng),然后隨機(jī)替換掉模型原來的一個(gè)項(xiàng),完成變異;
[0010] 步驟(d),計(jì)算水聲信號(hào)預(yù)測(cè)模型的均方根誤差與信誤比,根據(jù)定量分析該建模方 法的預(yù)測(cè)精度。
[0011] 所述步驟(a)包括;1)采用Volterra級(jí)數(shù)模型作為基本模型框架:
[0012]
[001引 對(duì)于N個(gè)變量的M階的Volterra模型,一共有1+N+N2+'''+nm項(xiàng);W Volterra模 型為基礎(chǔ),選擇一定的項(xiàng)來組成新的模型,而組成模型的項(xiàng)的選擇由遺傳算法完成;
[0014] 2)對(duì)每一項(xiàng)進(jìn)行編碼;模型的項(xiàng),有W下的通用表示:
[0017]對(duì)于巧
用向量a= (ni,ri2,…,r〇T來表示;多個(gè)向量組成一個(gè)矩陣,表 示一個(gè)模型,矩陣的每個(gè)列向量表示模型的一個(gè)項(xiàng),矩陣的列數(shù)即為模型的項(xiàng)數(shù)。
[001引所述步驟(d);
[002引式中;x (n)--n時(shí)刻的實(shí)測(cè)值;
[0024] x{n)--n時(shí)刻的預(yù)測(cè)值。
[0025] 與現(xiàn)有技術(shù)相比,本發(fā)明具有W下有益的技術(shù)效果;本發(fā)明鑒于水聲信號(hào)形成機(jī) 理較為復(fù)雜,難W建立準(zhǔn)確的數(shù)學(xué)模型及預(yù)測(cè)的均方根誤差較大該些問題,提出了基于遺 傳算法的水聲信號(hào)預(yù)測(cè)方法,對(duì)實(shí)測(cè)水聲信號(hào),利用遺傳算法來確定舍棄哪些Volterra級(jí) 數(shù)項(xiàng),保留哪些Volterra級(jí)數(shù)項(xiàng),然后通過最小二乘法計(jì)算各項(xiàng)的系數(shù),進(jìn)而得出水聲信 號(hào)的數(shù)學(xué)表達(dá)式。通過計(jì)算水聲信號(hào)預(yù)測(cè)的均方根誤差與信誤比,定量分析該建模方法的 預(yù)測(cè)精度。
[0026] 通過對(duì)實(shí)測(cè)水聲信號(hào)進(jìn)行建模和預(yù)測(cè)處理,得到了較為滿意的結(jié)果。結(jié)果表明,采 用該建模和預(yù)測(cè)方法對(duì)水聲信號(hào)進(jìn)行建模和預(yù)測(cè)處理是一種行之有效的方法,在水聲信號(hào) 的降噪、提取與分類等領(lǐng)域具有重要作用。
【附圖說明】
[0027] 圖1為本發(fā)明第一類水聲信號(hào)的實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù);
[0028] a)實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù)(2048點(diǎn));
[0029] b)實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù)(200點(diǎn));
[0030] 圖2為本發(fā)明第二類水聲信號(hào)的實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù);
[0031] a)實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù)(2048點(diǎn));
[0032] b)實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù)(200點(diǎn));
[0033] 圖3為本發(fā)明第S類水聲信號(hào)的實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù);
[0034] a)實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù)(2048點(diǎn));
[00巧]b)實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù)(200點(diǎn));
[0036] 圖4為本發(fā)明第四類水聲信號(hào)的實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù);
[0037] a)實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù)(2048點(diǎn));
[003引b)實(shí)測(cè)數(shù)據(jù)與一步預(yù)測(cè)數(shù)據(jù)(200點(diǎn))。
【具體實(shí)施方式】
[0039] 下面結(jié)合附圖和【具體實(shí)施方式】對(duì)本發(fā)明做進(jìn)一步詳細(xì)描述。
[0040] 本發(fā)明方法完整包括W下步驟:
[0041] 步驟(a),利用遺傳算法對(duì)實(shí)測(cè)水聲信號(hào)WVolterra級(jí)數(shù)模型作為基本模型框架 建立數(shù)學(xué)模型,并對(duì)每一個(gè)可能的模型進(jìn)行遺傳編碼;
[0042] 1)采用Volterra級(jí)數(shù)模型作為基本模型框架:
[0043]
[0044] 對(duì)于N個(gè)變量的M階的Volterra模型,一共有1+N+N2+... +N"項(xiàng);WVolterra模 型為基礎(chǔ),選擇一定的項(xiàng)來組成新的模型,而組成模型的項(xiàng)的選擇由遺傳算法完成;
[0045] 2)對(duì)每一項(xiàng)進(jìn)行編碼;模型的項(xiàng),有W下的通用表示:
[004引對(duì)于巧
用向量曰=相,ri2,…,r0T來表示;多個(gè)向量組成一個(gè)矩陣,表 示一個(gè)模型,矩陣的每個(gè)列向量表示模型的一個(gè)項(xiàng),矩陣的列數(shù)即為模型的項(xiàng)數(shù)。
[0049] 在了解數(shù)據(jù)形成原理過程的情況下,通??蒞根據(jù)數(shù)據(jù)的產(chǎn)生原理,建立準(zhǔn)確的 預(yù)測(cè)模型(模型參數(shù)可W待解)。但是,水聲信號(hào)的形成機(jī)理較為復(fù)雜,難W建立準(zhǔn)確的模 型。而在非線性動(dòng)力系統(tǒng)中最基本的模型是Volterra級(jí)數(shù)模型。理論上,任何非線性動(dòng)力 學(xué)系統(tǒng)都可W由Volterra級(jí)數(shù)模型來表示。特別地,當(dāng)采用Volterra級(jí)數(shù)模型來表示非 線性動(dòng)力系統(tǒng)時(shí),它的物理意義明確和普適性強(qiáng)。
[0050] 步驟化),建立模型評(píng)價(jià)標(biāo)準(zhǔn),使用最小二乘法計(jì)算出模型系數(shù),在得到模型系數(shù) 后,使用評(píng)價(jià)數(shù)據(jù)來計(jì)算模型的預(yù)測(cè)誤差,使用該誤差作為模型好壞的評(píng)價(jià)準(zhǔn)則。
[0051] 在建立實(shí)測(cè)水聲時(shí)間序列的預(yù)測(cè)模型過程中,可將預(yù)測(cè)精度作為模型好壞的評(píng)價(jià) 標(biāo)準(zhǔn)。在本模型中,使用最小二乘法來計(jì)算模型系數(shù),所W模型的預(yù)測(cè)精度一定是隨模型 項(xiàng)數(shù)的增加而增加的,但實(shí)際上增加的多項(xiàng)式項(xiàng)并不一定反映數(shù)據(jù)的真實(shí)規(guī)律。為了解決 該個(gè)問題,將選擇一部分?jǐn)?shù)據(jù)作為訓(xùn)練數(shù)據(jù),另外一部分?jǐn)?shù)據(jù)作為評(píng)價(jià)數(shù)據(jù)。即對(duì)于某一模 型,使用訓(xùn)練數(shù)據(jù),通過最小二乘法計(jì)算出模型系數(shù);在得到模型系數(shù)后,使用評(píng)價(jià)數(shù)據(jù)來 計(jì)算模型的預(yù)測(cè)誤差,將該誤差作為模型好壞的評(píng)價(jià)準(zhǔn)則。
[0052] 步驟(C),進(jìn)行遺傳操作:
[0053] 交叉繁殖;將兩個(gè)模型的項(xiàng)按照一定的規(guī)律分別排序,在兩個(gè)序列中各隨機(jī)選擇 一個(gè)交叉點(diǎn),然后交換序列的后半部分,該樣便得到兩個(gè)新的模型,作為交叉繁殖的后代;
[0054] 變異;隨機(jī)生成模型的一個(gè)項(xiàng),然后隨機(jī)替換掉模型原來的一個(gè)項(xiàng),完成變異;
[0055] 步驟(d),計(jì)算水聲信號(hào)預(yù)測(cè)模型的均方根誤差與信誤比,根據(jù)定量分析該建模方 法的預(yù)測(cè)精度。
[0060] 式中;x(n)--n時(shí)刻的實(shí)測(cè)值;
[0061] x{n)-n時(shí)