基于混沌優(yōu)化bp神經(jīng)網(wǎng)絡(luò)模型的江河涌潮短期預(yù)報(bào)方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于信息自動(dòng)化技術(shù)領(lǐng)域,涉及一種江河涌潮預(yù)報(bào)方法,尤其涉及一種基 于混沌優(yōu)化BP神經(jīng)網(wǎng)絡(luò)模型的江河涌潮短期潮時(shí)預(yù)報(bào)技術(shù)。
【背景技術(shù)】
[0002] 東海潮進(jìn)入杭州灣后,受杭州灣特殊的地形影響,潮差急速增大,潮波非線性變 形加劇,在澉浦上游形成水位驟然升高的漲潮波前鋒線,即為錢塘江涌潮?;旧襄X塘江 每天會(huì)有兩次的涌潮產(chǎn)生,不熟悉其漲潮時(shí)間將會(huì)人員或財(cái)產(chǎn)上的損失,所以精確的涌潮 預(yù)報(bào)技術(shù)對(duì)保障沿江居民安全、船舶航行安全以及沿岸工程設(shè)施相當(dāng)重要。實(shí)際應(yīng)用中,錢 塘江涌潮預(yù)報(bào)主要根據(jù)前一天的潮水到達(dá)時(shí)間,憑借經(jīng)驗(yàn)來預(yù)測(cè)今天潮水到達(dá)時(shí)刻;同時(shí) 也有部分學(xué)者通過計(jì)算機(jī)的仿真能力來搭建人工神經(jīng)網(wǎng)絡(luò)來預(yù)報(bào)涌潮潮時(shí),神經(jīng)網(wǎng)絡(luò)從歷 史數(shù)據(jù)中獲取知識(shí),實(shí)現(xiàn)非線性函數(shù)的逐步逼近。然而經(jīng)驗(yàn)?zāi)P鸵欢ǔ潭鹊娜趸擞砍笔?徑流、風(fēng)速和地形等方面的影響,預(yù)報(bào)模型如果一開始就忽略這些誤差存在,那么模型預(yù)報(bào) 精度是有限的;人工神經(jīng)網(wǎng)絡(luò)雖然具有高度的容錯(cuò)性、并行處理數(shù)據(jù)和強(qiáng)大的泛化能力,但 其模型的輸入結(jié)構(gòu)是決定模型預(yù)報(bào)效果好壞的關(guān)鍵技術(shù)之一,現(xiàn)階段的應(yīng)用中,大都是以 連續(xù)幾天的到潮時(shí)作為模型輸入,該方式?jīng)]有可靠的理論依據(jù),并且是以連續(xù)多少天的數(shù) 據(jù)作為輸入也沒有統(tǒng)一的說法。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的在于針對(duì)現(xiàn)有技術(shù)的不足,提出一種優(yōu)化BP神經(jīng)網(wǎng)絡(luò)模型的江河 涌潮短期預(yù)報(bào)方法,以改良原有的預(yù)報(bào)算法,提升江河涌潮潮時(shí)預(yù)報(bào)的準(zhǔn)確度。
[0004] 本發(fā)明的基于混沌優(yōu)化BP神經(jīng)網(wǎng)絡(luò)模型的江河涌潮短期預(yù)報(bào)方法,包括如下步 驟:
[0005] 步驟一:首先讀取沿江若干個(gè)水文站的歷史數(shù)據(jù),根據(jù)經(jīng)驗(yàn)?zāi)P瞳@取一段時(shí)間內(nèi) 每個(gè)水文站的到潮時(shí)差序列,具體為利用該水文站該段時(shí)間內(nèi)每天的實(shí)際到潮時(shí)間與該曰 到潮預(yù)測(cè)時(shí)間相減獲得該水文站的到潮時(shí)差序列;其中每天的到潮預(yù)測(cè)時(shí)間為前一天的實(shí) 際到潮時(shí)間;
[0006] 步驟二:判斷上述到潮時(shí)差序列是否具有混沌特性,具體方法如下:
[0007] a、作出其關(guān)于時(shí)間τ的自相關(guān)函數(shù)圖,當(dāng)函數(shù)的絕對(duì)值低于初始值的l-1/e且首 次到達(dá)最低點(diǎn)時(shí),所對(duì)應(yīng)的τ為重構(gòu)相空間的時(shí)間延遲τ;自相關(guān)函數(shù)如下:
[0008]
[0009]式中:x⑴為到潮時(shí)差序列,其中i=1,2,···,η,η是序列長度,為序列均值,C(τ)為時(shí)間延遲τ的自相關(guān)系數(shù);
[0010] b、利用飽和關(guān)聯(lián)維數(shù)法來確定嵌入維數(shù)m:設(shè)X(i)和X(j)為相空間的一對(duì)相點(diǎn), i和j不相等,相點(diǎn)的表達(dá)式如下:
[0011] X⑴=(x(i),x(i+τ),…,x(i+(m-l)τ)) (2)
[0012] (i= 1,2,…,η-(m_l)τ)
[0013] 式中:x⑴為到潮時(shí)差序列,其中i= 1,2,···,η,n是序列長度,τ為時(shí)間延遲, m為嵌入維數(shù);
[0014] 給定一臨界距離r,相空間中距離小于r的點(diǎn)對(duì)數(shù)目在所有點(diǎn)對(duì)中所占的比例即 為關(guān)聯(lián)函數(shù):
[0015]
[0016] 式中:η為總相點(diǎn)數(shù),Η(·)為Heaviside階躍函數(shù),| |X⑴_(tái)X(j) | |為兩個(gè)相點(diǎn)間 的距離,選擇無窮范數(shù);可由lnC(r,m)與lnr的關(guān)系曲線中線性段的斜率估計(jì)出關(guān)聯(lián)維數(shù) D的值;隨著m值的增加,存在一個(gè)m值,當(dāng)達(dá)到此值后,關(guān)聯(lián)維數(shù)不再隨著m的增加而變化, 則表明該事件序列為混沌系統(tǒng),此時(shí)的m為飽和嵌入維數(shù);否則,表明該序列為隨機(jī)系統(tǒng), 不具有混純特性;
[0017] 步驟三:對(duì)上述判斷為混沌系統(tǒng)的序列,根據(jù)式(2)建立該到潮時(shí)差序列的重構(gòu) 相空間;
[0018] 步驟四:訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)模型,確定內(nèi)部參數(shù);具體方法如下:
[0019] a、設(shè)置網(wǎng)絡(luò)訓(xùn)練次數(shù)、訓(xùn)練目標(biāo)誤差、訓(xùn)練速率和訓(xùn)練算法;
[0020] b、將重構(gòu)的相空間相點(diǎn)歸一化處理,以每個(gè)相點(diǎn)作為神經(jīng)網(wǎng)絡(luò)的輸入,以每個(gè)相 點(diǎn)中最大日期的下一個(gè)到潮時(shí)差值作為網(wǎng)絡(luò)的期望輸出,構(gòu)造輸入矩陣P和目標(biāo)矩陣T。
[0021] c、通過調(diào)用train函數(shù),對(duì)基于混沌優(yōu)化的人工神經(jīng)網(wǎng)絡(luò)進(jìn)行潮水到潮時(shí)差數(shù)據(jù) 訓(xùn)練直至收斂;
[0022] 步驟五:將測(cè)試樣本帶入訓(xùn)練獲得的神經(jīng)網(wǎng)絡(luò),并對(duì)結(jié)果反歸一化處理,最終輸出 測(cè)試所需的到潮時(shí)差值。
[0023] 隨著近年來混沌理論的發(fā)展,許多非線性系統(tǒng)的隨機(jī)行為被證明具有混沌特性。 混沌不是簡單的無序,而是沒有明顯的周期和對(duì)稱,但卻是具有豐富內(nèi)部層次的有序結(jié) 構(gòu),是非線性系統(tǒng)中一種新的存在形式?;趨^(qū)域模型的時(shí)間序列預(yù)報(bào)已應(yīng)用于各種混沌 動(dòng)力系統(tǒng)中,通過將單變量的時(shí)間序列映射到高維的相空間,再將其分割成幾個(gè)子空間,并 研究他們下一步演化的規(guī)律,最終通過各子空間預(yù)測(cè)值的加權(quán)疊加來等效當(dāng)前整體系統(tǒng)的 演化趨勢(shì)。在中長期內(nèi),由于狀態(tài)向量軌跡發(fā)散較大,導(dǎo)致該方法預(yù)測(cè)精度較低,但是向量 軌跡在短期內(nèi)發(fā)散較小,具有短期可預(yù)測(cè)性。本發(fā)明利用混沌理論,分析原有經(jīng)驗(yàn)?zāi)P椭?預(yù)報(bào)潮時(shí)的誤差序列,是否具有混沌特性。若有,則利用重構(gòu)相空間技術(shù)構(gòu)造一個(gè)多維的向 量,支起一個(gè)相空間,該相空間拓?fù)涞刃в谠瓉淼膭?dòng)力系統(tǒng)。然后,利用該相空間作為BP神 經(jīng)網(wǎng)絡(luò)的輸入結(jié)構(gòu),最終得出可能的潮時(shí)預(yù)報(bào)誤差,提升錢塘江涌潮的預(yù)報(bào)精度。
[0024] 本發(fā)明的有益效果是:
[0025] 1.將經(jīng)驗(yàn)?zāi)P团c非線性預(yù)報(bào)模型相結(jié)合,同時(shí)利用混沌理論優(yōu)化新模型的參數(shù)結(jié) 構(gòu),因此基于到潮時(shí)差序列的預(yù)測(cè)數(shù)據(jù)精度比現(xiàn)有預(yù)測(cè)方法的預(yù)測(cè)精度更高。
[0026] 2.可用于不同江河的潮水預(yù)測(cè),不依賴于氣象、河床等自然因素,也不依賴豐富的 預(yù)測(cè)經(jīng)驗(yàn),只需當(dāng)?shù)厮恼咎峁┏彼臍v史記錄數(shù)據(jù)。
[0027] 3.將單一的潮時(shí)數(shù)據(jù)轉(zhuǎn)變成多維數(shù)據(jù)結(jié)構(gòu),具有理論基礎(chǔ),使神經(jīng)網(wǎng)絡(luò)的預(yù)報(bào)算 法更加可靠。
【附圖說明】
[0028] 圖1為本發(fā)明實(shí)施流程圖;
[0029] 圖2為本發(fā)明實(shí)施例中四個(gè)水文站的到潮時(shí)差序列自相關(guān)圖;
[0030] 圖3為本發(fā)明實(shí)施例中四個(gè)水文站到潮時(shí)差序列混沌特性驗(yàn)證結(jié)果;
[0031] 圖4為本發(fā)明的預(yù)報(bào)結(jié)果;
【具體實(shí)施方式】
[0032] 本發(fā)明采用錢塘江沿江乍浦、澉浦、鹽官和倉前四個(gè)水文站歷史數(shù)據(jù)作為用例演 不。
[0033] 步驟一:首先讀取四個(gè)水文站的歷史數(shù)據(jù),根據(jù)經(jīng)驗(yàn)?zāi)P图蠢媒y(tǒng)一水文站前一 天的到潮時(shí)間作為今天的預(yù)測(cè)結(jié)果,再根據(jù)實(shí)際的到潮時(shí)間,兩者相減獲得到潮時(shí)差序列。 [0034] 步驟二:判斷該到潮時(shí)差序列是否具有混沌特性;具體方法如下:
[0035] a、作出其關(guān)于時(shí)間τ的自相關(guān)函數(shù)圖,當(dāng)函數(shù)的絕對(duì)值首次到達(dá)最低點(diǎn)時(shí)(必須 低于初始值的l-1/e),所得的τ為重構(gòu)相空間的時(shí)間延遲τ。自相關(guān)函數(shù)如下:
[0036]
[0037