孫 敏, 孫洪春, 葛 靜
(①棗莊學(xué)院數(shù)學(xué)與統(tǒng)計學(xué)院,277160,棗莊市;②臨沂大學(xué)數(shù)學(xué)學(xué)院,276000,山東省臨沂市)
科學(xué)研究離不開數(shù)學(xué),而數(shù)學(xué)模型是自然科學(xué)與社會科學(xué)領(lǐng)域中許多實際問題的數(shù)學(xué)描述.在各類數(shù)學(xué)模型中,方程是一類最基礎(chǔ),也是應(yīng)用最廣泛的數(shù)學(xué)模型之一,其不僅可以直接描述自然規(guī)律,而且也是其他一些數(shù)學(xué)模型的等價形式,因而方程的理論與算法研究具有基礎(chǔ)、底層研究的意義.各類方程的研究,尤其是算法研究,吸引了眾多學(xué)者的目光,相應(yīng)的研究成果不可勝數(shù).
眾所周知,運(yùn)動是絕對的,靜止是相對的,因而動態(tài)的世界要求我們用動態(tài)變化的眼光去看問題.于是學(xué)者們提出了一類描述動態(tài)問題的時變數(shù)學(xué)模型,包括時變線性方程、時變非線性方程及時變最優(yōu)化問題等[1,2].本文擬研究時變非線性方程問題的數(shù)值求解算法.作為一個特殊的遞歸神經(jīng)網(wǎng)絡(luò),歸零神經(jīng)網(wǎng)絡(luò)(ZNN)是求解各類時變問題的一個標(biāo)準(zhǔn)算法,該方法由張雨濃教授于2002年首次應(yīng)用到求解時變問題中[3].連續(xù)時間ZNN算法是基于放射性元素衰變的微分方程,該微分方程的解以指數(shù)速度快速收斂到零.以該微分方程為控制律,將時變問題的殘差代入后可得到連續(xù)時間ZNN算法.因此從理論上只要微分方程的解收斂到零,則該微分方程都可以作為控制律而得到一個連續(xù)時間ZNN算法.早期ZNN的研究主要集中在將其應(yīng)用到各種時變問題的求解中.在2010年之后,借助各類一步前向差商公式,學(xué)者們又提出了各類離散時間ZNN算法.這里面比較有代表性的成果包括:基于一步差商公式,Zhang等[4]首次提出了一類離散時間ZNN算法,并將其應(yīng)用到求解時變四次根的求解問題中;為了提高求解精度,基于三步差商公式,Jin和Zhang[5]提出了一類三步離散時間ZNN算法,并將其應(yīng)用到機(jī)械臂路徑規(guī)劃中.而后,具有更高精度的離散時間ZNN算法陸續(xù)被提出,2019年Sun等[6]給出的一般六步離散時間ZNN算法.在離散時間ZNN算法中,步長是一個很重要的參數(shù),其取值過大,則離散時間ZNN算法可能不收斂,取值過小則計算量太大.Jin和Zhang[7]首先關(guān)注了這個問題并給出了步長的有效范圍,而后Sun等[6,8,9]對該問題進(jìn)行了細(xì)致的研究,借助Jury穩(wěn)定判據(jù),給出了一般的一步到六步離散時間ZNN算法步長的有效區(qū)間.
在ZNN算法的研究過程中,另一個重要的突破是由Jin和Zhang[10]提出的帶積分項的連續(xù)時間ZNN算法,該算法最大的優(yōu)點(diǎn)是可以完全抑制模型的常數(shù)噪聲,并且線性噪聲下該算法產(chǎn)生的穩(wěn)態(tài)誤差反比于設(shè)計參數(shù).該算法激起了ZNN算法研究的一次熱潮,學(xué)者們陸續(xù)提出了許多不同類型的抗噪聲ZNN算法,有一些甚至可以加速到有限時間收斂(理論上)或完全抑制線性噪聲.最近的研究文獻(xiàn)雖然也提出了一些噪聲環(huán)境下的離散時間ZNN算法,但是這些算法都是將積分-微分型連續(xù)時間ZNN算法轉(zhuǎn)化成一個一階微分方程組,進(jìn)而對微分方程組中的導(dǎo)數(shù)采用一步前向差商進(jìn)行近似,這與無噪聲環(huán)境下的處理方式是完全一樣的.這樣處理產(chǎn)生了3個問題:(1)所設(shè)計的離散時間ZNN算法的變量個數(shù)增加了一倍,這使得問題的規(guī)模變大了.(2)所設(shè)計的離散時間ZNN算法中含有未知噪聲,而在實際問題中噪聲只是客觀存在的,但其具體表達(dá)式往往是無法直接觀測的.(3)無法分析所設(shè)計離散時間ZNN算法中參數(shù)的取值范圍,這主要是因為微分方程組中各個微分方程的系數(shù)是不一樣的,并且變量是耦合的,所以我們無法將其轉(zhuǎn)化一個具有同樣系數(shù)的差分方程組,進(jìn)而無法利用Jury穩(wěn)定判據(jù)給出參數(shù)的有效范圍.在數(shù)值實驗部分我們將通過具體例子來說明如果這些離散時間ZNN算法參數(shù)取的不合適,則其是發(fā)散的.
本文將對這些問題給出一個系統(tǒng)的解決方案,提出了一類常數(shù)噪聲環(huán)境下的離散時間ZNN算法.具體的,我們利用一步前向差商近似CT-ZNN的導(dǎo)數(shù),利用左(右)矩形公式近似CT-ZNN的積分,得到了一個抗常數(shù)噪聲的離散時間ZNN算法.進(jìn)而,我們利用Jury穩(wěn)定判據(jù)給出了該離散時間ZNN算法中參數(shù)取值范圍的估計,同時證明了其它數(shù)值積分公式導(dǎo)出的離散時間ZNN算法是不穩(wěn)定的.最后,我們將所提出的離散時間ZNN算法應(yīng)用到了時變非線性方程問題.
本文考慮時變非線性方程(time-varying nonlinear equation,TVNE),其具有如下數(shù)學(xué)結(jié)構(gòu):求x(t)∈Rn滿足
f(x,t)=0,t∈[0,tf]
(1)
其中映射f:Rn+1→Rn關(guān)于變量x,t可導(dǎo),tf>0表示所研究問題的最終時間節(jié)點(diǎn).
在處理實際問題時經(jīng)常會遇到各種噪聲,比如常數(shù)噪聲(模型誤差)、線性動態(tài)噪聲(偏置誤差)、有界隨機(jī)動態(tài)誤差(高斯白噪聲)等[11].文獻(xiàn)[10]提出了如下抗噪聲的模型
(2)
其中γ>0,λ>0是兩個設(shè)計參數(shù).令e(t)=f(x,t)表示問題(1)的殘差向量,并將其代入上式得求解問題(1)的抗噪聲連續(xù)時間ZNN算法
(3)
定理1.1無論未知向量N的分量有多大,抗噪聲連續(xù)時間ZNN算法(3)的解序列全局收斂于問題(1)的理論解.
由于算法(3)是一個積分-微分模型,一個通常的處理方式是將其化成一個微分方程組,即令
(4)
(4)式仍然是一個微分方程,并且變量的維數(shù)增加了一倍.一些經(jīng)典的求解微分方程數(shù)值解的算法,比如龍格-庫塔算法,往往需要利用未來時刻節(jié)點(diǎn)處的信息,這在一些未來型的時變問題中是不被允許的.因此有必要設(shè)計只使用當(dāng)前時刻節(jié)點(diǎn)及其之前節(jié)點(diǎn)信息的算法,這也是在離散化連續(xù)時間ZNN算法時采用一步前向差商的原因.
本節(jié)將提出一類可以抑制常數(shù)的離散時間ZNN算法.首先考慮時刻tk=kτ的帶噪聲的模型(2),即
(5)
代替;對于右邊的定積分,采用復(fù)化左矩形公式
于是有
即
(6)
利用(6)式減上式得
(7)
對于常數(shù)噪聲n(t)≡N∈Rn,(7)式變成了一個齊次線性差分方程,其特征多項式是
h(z)=z2+(-2+γτ)z+(1-γτ+λτ2).
(8)
λ>0,4-2γτ+λτ2>0,(γ-λτ)(2-γτ+λτ2)>0.
(9)
證明根據(jù)Jury穩(wěn)定判據(jù),要證明這個結(jié)論只需要保證特征方程(8)的根全落在單位圓內(nèi)即可.于是根據(jù)Jury穩(wěn)定表格,只需要保證
其中ai是(8)式中zi(i=0,1,2)的系數(shù).于是有
h(1)=λτ2>0,
(-1)2h(-1)=4-2γτ+λτ2>0,
b0=τ(γ-λτ)(2-γτ+λτ2)>0.
對上面的不等式組整理即可得本命題的結(jié)論.
注2.1滿足(9)式的參數(shù)是存在的,比如γ=λ=1,τ=0.1.另一方面,γ=25,λ=1,τ=0.1不滿足(9)式.
在(5)式中令ek=f(xk,tk),有
(10)
利用上面的差商與復(fù)化左矩形公式得第一個離散時間ZNN算法
(11)
其中參數(shù)γ,λ,τ滿足(9)式.
注2.2由于公式(11)中含有噪聲nk,因此其只適用于噪聲已知的情況.
由于左矩形公式的截斷誤差比復(fù)化左矩形公式的低一個數(shù)量級,下面直接利用左矩形公式來近似定積分.同時對導(dǎo)數(shù)采用如下具有二階截斷誤差的差商來近似(5)式,即
由于(5)式對下標(biāo)k-1也成立,于是有
用(5)式與上式相減,得
(12)
利用差商與左矩形公式,(12)式可以寫成
整理得
2ek+1+(-5+2γτ)ek+(5-2γτ+2λτ2)ek-1-3ek-2+ek-3=nk-nk-1.
(13)
對于常數(shù)噪聲n(t)≡N∈Rn,(13)式變成了一個齊次線性差分方程,其特征多項式是
h(z)=2z4+(-5+2γτ)z3+(5-2γτ+2λτ2)z2-3z+1.
(14)
(15)
證明根據(jù)Jury穩(wěn)定判據(jù),要證明這個結(jié)論,只需要保證特征方程(14)的根全落在單位圓內(nèi)即可.于是根據(jù)Jury穩(wěn)定表格,只需要保證h(1)>0,(-1)4h(-1)>0以及Jury穩(wěn)定表格的第3,5,7行的第一個元素是嚴(yán)格大于零的.經(jīng)過計算有
對上面的不等式組整理即可得本命題的結(jié)論.
注2.3滿足(15)式的參數(shù)是存在的,比如γ=λ=1,τ=0.1.另一方面,γ=11,λ=1,τ=0.1不滿足(15)式.
根據(jù)上面推導(dǎo)參數(shù)范圍的步驟,我們可以得到另一個離散時間ZNN算法.因為(10)式對下標(biāo)k-1也成立,于是有
(16)
利用(10)~(16)得
當(dāng)n(t)≡N∈Rn時,利用上面的差商與左矩形公式得第二個離散時間ZNN算法
(17)
其中參數(shù)γ,λ,τ滿足(15).
注2.4與文獻(xiàn)[11]中提出的抗噪聲離散時間ZNN算法不同,本文提出的算法(11)與(17)的變量個數(shù)沒有增加.同時利用右矩形公式可以得到類似的離散時間ZNN算法.
下面討論在未知線性噪聲n(t)=at+b∈Rn環(huán)境下的離散時間ZNN算法.此時,(7)式變成
同理有
上兩式相減得
(18)
其特征多項式是
h(z)=z3+(-3+γτ)z2+(3-2γτ+λτ2)z-(1-γτ+λτ2).
(19)
注2.5定理2.3的結(jié)論與文獻(xiàn)[10]里的結(jié)果是相對應(yīng)的.對于抗線性噪聲的連續(xù)時間ZNN算法[10],證明了其產(chǎn)生的穩(wěn)態(tài)誤差與其設(shè)計參數(shù)成反比,因此只有當(dāng)設(shè)計參數(shù)趨于正無窮時,穩(wěn)態(tài)誤差才趨于零.
最后來討論具有三階截斷誤差的梯形積分公式是否可以生成收斂的離散時間ZNN算法. 同時對導(dǎo)數(shù)采用如下具有三階截斷誤差的差商來近似[12]
將上面的差商與梯形積分公式代入(12)式得
-γek+γek-1-λτek-1+nk-nk-1,
整理得
同樣地,對于常數(shù)噪聲n(t)≡N∈Rn,上式變成了一個齊次線性差分方程,其特征多項式是
h(z)=11z5+(-11+24γτ)z4+(-6-24γτ+24λτ2)z3-2z2+11z-3.
證明根據(jù)定理2.1的證明過程,容易得到本定理的結(jié)論成立.
由此可以得到第3個離散時間ZNN算法
(20)
其中γ=1,λ=1,τ=0.1或0.01.
本節(jié)給出3個數(shù)值實驗來驗證所提離散時間ZNN算法的有效性.將離散時間ZNN算法(11),(17),(20)分別記為DT-ZNN1,DT-ZNN2,DT-ZNN3,并將文獻(xiàn)[11]中的離散時間ZNN算法記為DT-ZNNQ.
問題1考慮單變量時變非線性方程
f(x,t)=2x+sin(x)-t,t∈[0,20].
顯然該時變非線性方程問題在每個時刻點(diǎn)都是有解的.我們先使用DT-ZNNQ求解該問題,目的是為了說明當(dāng)參數(shù)取的不合適時,DT-ZNNQ可能是發(fā)散的.噪聲n(t)≡1,初始條件均設(shè)為0,參數(shù)h=0.1,ρ=1或10,實驗結(jié)果見圖1,其中縱坐標(biāo)表示殘量,定義是(Res)k=‖fk‖.
圖1 DT-ZNNQ求解問題1的結(jié)果(左:ρ=1,右:ρ=10)
由圖1的兩個子圖可以看出,當(dāng)ρ=1時DT-ZNNQ收斂,但是當(dāng)ρ=10時DT-ZNNQ發(fā)散,因此當(dāng)設(shè)計參數(shù)取的不合適時,DT-ZNNQ可能是發(fā)散的.下面我們利用DT-ZNN1來求解問題1,初始條件x0=0,實驗結(jié)果見圖2,其中γ=λ=1,τ=0.1.
由圖2可以看出,當(dāng)參數(shù)γ,λ,τ滿足(9)式時,DT-ZNN1是收斂的. 注2.1指出γ=25,λ=1,τ=0.1不滿足(9)式,此時DT-ZNN1應(yīng)該是發(fā)散的,這與圖3的觀察是一致的.
圖2 DT-ZNN1求解問題1的結(jié)果 圖3 DT-ZNN1求解問題1的結(jié)果(γ=25,λ=1,τ=0.1)
問題2考慮時變線性方程組問題
初始條件均設(shè)為0,參數(shù)γ=λ=1,τ=0.1,實驗結(jié)果見圖4.
圖4 DT-ZNN2求解問題2的結(jié)果 圖5 DT-ZNN2求解問題2的結(jié)果(γ=11,λ=1,τ=0.1)
由圖4可以看出,當(dāng)參數(shù)γ,λ,τ滿足(15)式時,DT-ZNN2是收斂的.注2.3指出γ=11,λ=1,τ=0.1不滿足(15)式,此時DT-ZNN2應(yīng)該是發(fā)散的,這與圖5的觀察是一致的.
問題3考慮時變非線性方程組問題
我們利用DT-ZNN3求解這個問題,參數(shù)γ=λ=1,τ=0.1,初始值均取為零,求解的結(jié)果顯示在圖6中.
由圖6可以看出,當(dāng)參數(shù)γ=λ=1,τ=0.1時,DT-ZNN3是收斂的. 注2.6指出當(dāng)γ=10,λ=1,τ=0.1時,DT-ZNN3應(yīng)該是發(fā)散的,這與圖7的觀察是一致的.
圖6 DT-ZNN3求解問題3的結(jié)果 圖7 DT-ZNN3求解問題3的結(jié)果(γ=10,λ=1,τ=0.1)
本文對常數(shù)噪聲下的離散時間ZNN算法進(jìn)行了研究,提出了3種離散時間ZNN算法.本文的一個最大成果是對噪聲環(huán)境下的離散時間ZNN算法的參數(shù)研究提供了一種系統(tǒng)的研究思路,按著這個研究思路可以提出更多的具有收斂性質(zhì)的離散時間ZNN算法.下一步的研究方向包括:(1)研究線性噪聲或隨機(jī)有界噪聲下的離散時間ZNN算法. (2)借助于具有更高階的數(shù)值積分方法,研究具有更高精度的離散時間ZNN算法.