張 雷,程春華
(1.武警海警學院艦艇指揮系,浙江 寧波 315801;2.海軍航空大學,山東 青島 266041)
在實際控制系統中,輸入和輸出間往往存在某種未知的參考軌跡關系。這種關系表明,在輸入作用下,系統的輸出軌跡中會出現唯一的全局最優輸出值(可能是極大值或極小值)[1]。如何使用適當的控制方法,讓系統的輸出始終保持在全局最優狀態,這屬于極值搜索算法研究的范疇[2]。
傳統的極值搜索算法只考慮目標函數含有單個極值的情況。為了解決這個問題,Ying Tan 等基于簡單極值搜索算法提出了1 種簡單半全局極值搜索算法[3]。該算法采用平均化理論證明了半全局漸近穩定性,但該算法對目標函數和狀態變量都有一些特殊要求,這在實際工程應用中很難滿足[4-8]。因此,該算法的實際應用性受到一定限制。文獻[9]融合多單元和半全局極值搜索算法,提出了用于靜態系統的多單元半全局極值搜索算法,能夠快速收斂至目標函數的全局極值。在此基礎上,文獻[10-11]還對目標函數含有2 個變量和3 個變量的情況進行了研究。文獻[12]對單變量多單元半全局極值搜索算法進行了擴展,以應用于動態系統,并且給出了穩定性證明,但仍局限于單變量系統研究。
隨著對極值搜索算法的深入研究,人們將數學優化算法和導數估計算法、參數估計算法等相結合,得到了各種類型的極值搜索算法[13]。目前,極值搜索算法仍在不斷創新,如無限維拋物線偏微分方程系統的梯度極值搜索[14]、時變時滯系統的未知高階導數最大化[15]、控制方向未知的滑模極值搜索[16]、基于李括號逼近的極值搜索[17]、基于合作并行學習的極值搜索[18]等。這些方法采取了滑模控制、參數估計等控制方法,為本文研究提供了參考依據。
本文綜合文獻[12]的穩定性分析方法和文獻[16]的控制律設計思路,將雙變量多單元半全局極值搜索算法擴展到動態系統,提出了1 種新的李亞普諾夫函數,并針對動態系統進行了算法穩定性證明,解決了傳統雙變量多單元半全局極值搜索算法僅適用于靜態系統的問題。最后,基于通用多極值測試函數進行了數字仿真研究。
在系統單元的動態優化問題中,需要對其進行數學建模。具體來說,可以對系統單元的動態行為進行數學描述:
式(1)中:x ∈?n為系統狀態;um∈?2為系統輸入;y ∈? 為系統輸出;f 、h 為光滑函數,分別代表狀態方程和輸出方程。
針對無約束的情況,假設2 個動態系統組成的單元完全相同,分別為單元a 和單元b,u1a和u2a為單元a 的兩輸入,u1b和u2b為單元b 的兩輸入。
假設兩動態單元的控制律為:
式(2)中:α(· ,·) 是光滑函數;ua∈?2、ub∈?2是輸入變量向量組。
將式(2)代入式(1),可得到兩單元的閉環系統:
以下是兩單元動態單元系統需要滿足的3個假設條件。
假設1:存在某光滑輸入u:?2→?n,使得
成立。
假設2:任意u ∈?2,系統(3)將漸近收斂至其平衡點x=u 處。
假設3:對于式(1),定義Q(·) =(h °u ),存在唯一的全局最大值。其對應的∈? 和∈? 使下式成立:
雙變量多單元半全局極值搜索算法主要思想是引入2 個完全相同的單元a 和單元b,使雙變量沿著圓周搜索全局極值,將最優值保持在所搜索的圓內,并單調減小圓的半徑至0,趨使u1、u2沿圓周向目標函數收斂至全局最優值所對應的輸入值附近。雙變量多單元半全局極值搜索算法結構見圖1。
雙變量多單元半全局極值搜索算法中,參數間隔會逐漸減小到接近于0,這個過程不是根據梯度來確定步長,而是通過調整參數間隔來實現的。在算法開始時,參數間隔會先按照預設形式進行設置,然后慢慢縮小。現分3步給出算法自適應律。
第1步:沿著圓周進行對比搜索。
考慮圓心為輸入值(u1,u2),半徑為r 的圓,多單元半全局極值搜索算法沿著半徑不斷縮小的圓周反復搜索全局極值,θa和θb為兩單元輸入的夾角。
2個單元的輸入為:
沿著圓周搜索的自適應律為:
式(8)~(10)中:Δθ為θa和θb之間的夾角;βθ>0 是影響Δθ下降速度的參數,即沿著半徑為Δ、角度為θ 的圓周搜索最優值;Δθ下降周期T 是提前設定遞減至εθ的,周期為,
其搜索過程如圖2所示。

圖2 沿全局優化點收縮圓的半徑變化過程Fig.2 Changes of contraction circle radius along global optimal point
第2步:遞歸全局優化。
設i(i=0,1,2,…) 代表第i 次迭代,每次迭代開始,Δθ初始值都重新選取為到π,以使確保搜索軌跡為完整的圓周。θ 初始值選取為優化點為圓心的圓內的一點。在開始迭代時,i=0,θm0初始值設為0。第m次迭代中,θmi根據前一次θa和θb的值進行計算,算法表示如下:
沿著圓周進行搜索的過程以T 為周期反復搜索,θmi將在εθ=0 時的第i-1次迭代收斂至最優值。
第3步:減小圓的半徑。
假設全局可行優化點位于初始圓內,即初始輸入(u1( 0 ),u2( 0 ))為圓心,r( 0 )為半徑的圓內,并且半徑單調遞減至0。
式(13)中:β >0 是決定r 遞減速度的參數。當r 遞減至某個極小的值ε 時,算法停止搜索。這意味著算法總的搜索時間為:
式(15)中:θmi與式(12)中的迭代值相關,則以r 為半徑,(u1,u2)為圓心按自適應律(15)使圓緊縮過程中可確保能搜索到全局極值。保持(u1m,u2m)在同一個圓內,使(u˙1m,u˙2m)=( 0,0 ),自適應律為:
沿著圓周進行全局優化緊縮過程如圖3所示。圓的圓心隨著r 的遞減收縮至非線性目標函數的全局極值點。

圖3 沿著圓周進行全局優化過程Fig.3 Global optimization process along circle
注1:為了能夠在系統中運用雙變量多單元半全局極值搜索算法,控制參數必須滿足條件β ?βθ,βθ決定沿圓周搜索速度,β 決定半徑收縮速度,即沿圓周搜索速度較快,半徑遞減速度較慢。
同一動態系統單元的輸入u1和u2不斷自適應變化的同時,系統動態也不斷演化,且滿足如果系統響應穩定且快速,那么在系統狀態從初始狀態到穩定狀態的變化過程中,可以近似地認為這個過程是瞬間完成的,也就是說狀態誤差ξ=x-xˉ的收斂過程是瞬間完成的。由假設1 和假設2 可知,當系統達到穩定狀態時,存在成立。給定系統動態x和其對應的穩定狀態xˉ,則有:
如果系統響應穩定且迅速,那么系統狀態從初始狀態到穩定狀態的收斂時間會非常短,則可以認為x ≈演化速度非常快,即h( x )≈演化速度非常快。為達到此目的,系統動態需要滿足一定的假設條件。
假設4:針對動態系統(1),存在Lyapunov 函數W(ξ,u1,u2),滿足,
式(18)中:c1~c5為固定正值;為使ξ 滿足式(17)的可行域;U 為使u 滿足假設1 至假設3 的輸入可行域。
注2:雙變量多單元半全局極值搜索算法的主要優點在于收斂時間較短,且無輸出顫振。其不足點為假設兩單元完全相同,這是一較強的假設,另外對動態系統的動態特性要求也較為嚴格。
引理1[10]:考慮如圖1所示的雙變量多單元半全局極值搜索算法,采用公式(6)~(16),且系統滿足以下條件。
假設5:系統存在初始值和初始間隔,使ε=0 ,εθ=0,目標函數h( x )存在唯一的全局最大值,參數β和βθ滿 足β ?βθ, 同 時 滿 足
接下來,對算法的穩定性進行分析,選取Lyapunov函數為:
由式(19)可知,系統穩定性的主要影響因素為(uia-)、(uib-)、ξa和ξb,其中,i=1,2。系統穩定時,有ui=和ξa=ξb=0 ,此時V=0 ,其中,i=1,2 。 進 一 步 由 假 設 4 中 的c1‖ ξ‖2≤W(ξ,u1,u2)≤c2‖ ξ‖2,c1和c2是固定正值,同時成立,知V ≥0 成立,且只有系統到達穩定狀態時,有V=0 。從而,證明了V( u,ξ )的正定性。
將式(17)代入式(19)后,對式(19)微分可得:
將式(18)代入式(20)可得:
對式(21)化簡,可得:
將式(8)~(16)代入式(6)(7)可得:
由式(8)~(10)可得:
當ha( x )<hb( x )時,由式(12)可得θmi=θa,由式(23)~(28)可得u˙1a=0、u˙2a=0,即‖ ξa‖=0 成立,代入式(22),可得:
當ha( x )>hb( x )時,由式(12)可得θmi=θb,由式(23)~(28)可得u˙1b=0、u˙2b=0,即‖ ξb‖=0 成立,代入式(22),可得:
由式(31)可得:
由式(17)可得:
由式(31)(33)可得:
對式(34)積分可得:
綜上所述,可以得到如下定理。
定理1:假設系統滿足假設1 至假設5,且控制律采用式(6)~(10),則式(1)所示的優化問題中,如果選擇輸入初始值使得滿足假設5,則有以下結論。
1)雙單元狀態誤差和輸入誤差均收斂至系統原點的某鄰域:
2)以下不等式成立:
兩單元輸入單輸出系統的狀態方程為:
式(39)中:x1、x2、x3和x4為系統狀態變量;和為輸入量。單元a 選用控制律=20(u1a-x1) -9x2與=35(u2a-x3)-15x4;單元 b 選用控制律為=20(u1b-x1) -9x2與=35(u2b-x3)-15x4。選取通用典型雙變量目標函數Ackley函數進行仿真驗證。
當u1=u2=0 時,兩單元的狀態x1=x3=0,其目標函數含有唯一全局極小值min h(x1,x3)=0。雙變量目標函數軌跡如圖4所示。

圖4 目標函數軌跡圖Fig.4 Objective function diagram
系統初始條件分別為x1( 0 )=3 、x2( 0 )=0 、x3( 0 )=-2 、 x4( 0 )=0 、u1( 0 )=-1 、u2( 0 )=-2 ,Δ初始=5。全局最小值位于(u1( 0 ),u2( 0 ))為圓心,r0=5 為半徑的圓內,參數 β=0.03 、βθ=2 ,θ( 0 )=0 ,ε=εθ=0.001。當系統達到u1=0、u2=0 時,兩單元的狀態達到x1=0、x3=0,此時目標函數收斂至全局最小值。
使用雙變量多單元半全局極值搜索算法,對方程組(39)(40)描述的系統進行仿真驗證。單元a 的狀態x1如圖5所示;單元b 的狀態x1如圖6所示;單元a的狀態x3如圖7所示;單元b 的狀態x3如圖8所示;單元a 的u1a和u2a沿圓周變化軌跡如圖9 所示;單元b的u1b和u2b沿圓周變化軌跡如圖10 所示;u1和u2軌跡如圖11所示;圓心軌跡如圖12所示。

圖5 單元a 的狀態x1 仿真圖Fig.5 State x1 simulation result of unit a

圖6 單元b 的狀態x1 仿真圖Fig.6 State x1 simulation result of unit b

圖7 單元a 的狀態x3 仿真圖Fig.7 State x3 simulation result of unit a

圖9 單元a 的u1a 和u2a 沿圓周變化軌跡圖Fig.9 Diagram of trajectory changes of u1 and u2 along circle for unit a

圖10 單元b 的u1b 和u2b 沿圓周變化軌跡圖Fig.10 Diagram of trajectory changes of u1 and u2along circle for unit b

圖11 u1 和u2 軌跡圖Fig.11 Diagram of trajectories of u1 and u2

圖12 圓心軌跡圖Fig.12 Diagram of trajectories of circle center
通過圖5~12 所示仿真結果可知,單元a 和單元b的狀態x1和x3最終都達到了最優狀態。單元a 的u1a和u2a沿圓周順時針變化最終收斂至( )0,0 點;單元b的u1b和u2b沿圓周逆時針變化最終收斂至( 0,0 )點。u1和u2也各自達到了最優值,圓周的圓心最終達到( 0,0 )點。兩單元的目標函數最終達到了全局最小值min ha(x1,x3)=hb(x1,x3)=0。
本文突破多單元半全局極值搜索系統針對單變量進行研究的局限,對雙變量系統進行研究,綜合滑模控制和極值搜索控制方法進行控制律設計。利用單元的輸入和動態誤差項構造李亞普諾夫函數,證明了本文算法適用于動態極值搜索系統,基于通用多極值測試函數進行了數字仿真研究也證明了本文方法是可行的。