張 欣, 薄迎春
(中國(guó)石油大學(xué) 信息與控制工程學(xué)院, 山東 青島 266580)
因?yàn)樵诮档蛿?shù)據(jù)傳輸次數(shù)和計(jì)算量的同時(shí)還能保證具有較好的控制性能,因此,事件驅(qū)動(dòng)控制近年來(lái)一直是控制領(lǐng)域的研究熱點(diǎn)。與傳統(tǒng)的采樣方法不同,事件驅(qū)動(dòng)提供了一個(gè)只在狀態(tài)采樣點(diǎn)更新的非周期策略。只有當(dāng)事件觸發(fā)條件不被滿足時(shí),對(duì)系統(tǒng)狀態(tài)進(jìn)行采樣, 更新系統(tǒng)的控制率。在2次更新之間采用零階保持器保證控制器的輸出。
目前,已有許多文獻(xiàn)利用事件驅(qū)動(dòng)控制方案解決不同的控制問(wèn)題[1-5]。文獻(xiàn)[3]研究了線性系統(tǒng)的周期事件驅(qū)動(dòng)控制。文獻(xiàn)[4]將事件驅(qū)動(dòng)控制擴(kuò)展到了離散非線性系統(tǒng)中。Tallaprogada等在文獻(xiàn)[5]中給出了事件驅(qū)動(dòng)方法在非線性跟蹤問(wèn)題上的控制方案。為了在事件驅(qū)動(dòng)控制機(jī)制下研究系統(tǒng)的最優(yōu)控制問(wèn)題, 近期很多學(xué)者開(kāi)始將自適應(yīng)動(dòng)態(tài)規(guī)劃(adaptive dynamic programming, ADP)方法引入到事件驅(qū)動(dòng)控制方案中。ADP作為解決非線性系統(tǒng)最優(yōu)控制問(wèn)題的有效方法得到了廣泛關(guān)注[6-9]。文獻(xiàn)[10]求解了連續(xù)非線性系統(tǒng)的事件驅(qū)動(dòng)自適應(yīng)最優(yōu)控制。S.Jagannathan等[11]研究了不確定連續(xù)非線性系統(tǒng)的事件驅(qū)動(dòng)控制方法。王鼎等在文獻(xiàn)[12]中針對(duì)連續(xù)系統(tǒng)的H∞控制問(wèn)題, 提出了基于混合數(shù)據(jù)和事件驅(qū)動(dòng)的控制方案。文獻(xiàn)[13]研究了離散非線性系統(tǒng)的自適應(yīng)事件驅(qū)動(dòng)控制方法。
為了降低數(shù)據(jù)傳輸次數(shù)、計(jì)算量和神經(jīng)網(wǎng)絡(luò)權(quán)值的訓(xùn)練量,針對(duì)離散非線性系統(tǒng)的最優(yōu)控制問(wèn)題, 提出了一種基于單網(wǎng)絡(luò)值迭代算法的事件驅(qū)動(dòng)控制方案。充分發(fā)揮了ADP算法、事件驅(qū)動(dòng)控制和神經(jīng)網(wǎng)絡(luò)各自的優(yōu)勢(shì)。與典型的ADP算法相比, 舍棄了用3個(gè)神經(jīng)網(wǎng)絡(luò)分別構(gòu)建模型網(wǎng)、控制網(wǎng)和評(píng)價(jià)網(wǎng)的架構(gòu)。只利用一個(gè)神經(jīng)網(wǎng)絡(luò)來(lái)構(gòu)建評(píng)價(jià)網(wǎng), 繼而省略了模型網(wǎng)和控制網(wǎng)的神經(jīng)網(wǎng)絡(luò)權(quán)值訓(xùn)練量。并且引入事件驅(qū)動(dòng)控制機(jī)制來(lái)有效地降低控制策略的計(jì)算次數(shù)以及系統(tǒng)狀態(tài)和控制器之間的數(shù)據(jù)傳輸。
考慮如下的離散非線性系統(tǒng):
xk+1=f(xk)+g(xk)u(xk)
(1)
相應(yīng)的性能指標(biāo)函數(shù)為普通二次型形式:
(2)
將性能指標(biāo)函數(shù)(2)展開(kāi), 可得
(3)
根據(jù)Bellman最優(yōu)性原理[14],最優(yōu)值函數(shù)V*(xk)是時(shí)變的, 并且滿足離散HJB方程:
(4)
最優(yōu)控制策略u(píng)*(xk)應(yīng)該保證HJB方程一階導(dǎo)數(shù)為零, 可求得
‖ek‖≤eT,k∈[ki,ki+1)
其中:ek=xki-xk為事件驅(qū)動(dòng)誤差;eT為事件驅(qū)動(dòng)閾值。僅當(dāng)‖ek‖>eT時(shí), 觸發(fā)條件不被滿足,事件驅(qū)動(dòng)狀態(tài)誤差被重置為零,同時(shí)更新控制策略μ(xki)?u(xki),并且通過(guò)零階保持器保證在k∈[ki,ki+1]時(shí)間段內(nèi)系統(tǒng)的控制策略不變,直到下一次事件觸發(fā)。因此, 系統(tǒng)狀態(tài)方程(1)重寫為
xk+1=f(xk)+g(xk)μ(ek+xk),k∈[ki,ki+1)
(5)
最優(yōu)狀態(tài)反饋控制策略應(yīng)該表示為
(6)
假設(shè)1 存在正數(shù)L, 滿足[13]
‖xk+1‖≤L‖ek‖+L‖xk‖
由于ek+1=xki-xk+1,k∈[ki,ki+1),根據(jù)假設(shè)1,可得
因此,定義事件驅(qū)動(dòng)閾值為
其中常數(shù)α∈(0,1]為事件驅(qū)動(dòng)閾值適應(yīng)率,主要用來(lái)調(diào)節(jié)采樣頻率。
定理1 對(duì)于離散非線性系統(tǒng)(5),相應(yīng)的性能指標(biāo)函數(shù)為(2),當(dāng)采用公式(6)中的事件驅(qū)動(dòng)最優(yōu)控制策略時(shí),則閉環(huán)系統(tǒng)(5)是漸近穩(wěn)定的。
證明 選取Lyapunov函數(shù)為
該Lyapunov函數(shù)的一階差分方程為ΔV=V(xk+1)-V(xk)。
情況1 事件沒(méi)有觸發(fā),?k∈[ki,ki+1)
對(duì)于任意xk≠0,有ΔV<0,即Lyapunov函數(shù)的一階差分方程是負(fù)定的。
情況2 事件被觸發(fā),?k=ki+1
對(duì)于任意xki+1≠0,有ΔV<0。綜合情況1和情況2可得,Lyapunov函數(shù)的一階差分方程是負(fù)定的,根據(jù)Lyapunov理論可得,閉環(huán)系統(tǒng)(5)是漸近穩(wěn)定的。證明完畢。
事件驅(qū)動(dòng)機(jī)制將整個(gè)控制過(guò)程分為了若干部分,控制輸入僅在采樣時(shí)刻更新,其他時(shí)刻保持不變,因此當(dāng)k∈[ki,ki+1)時(shí),控制策略為
其中V*(x)需要通過(guò)求解離散HJB方程(4)來(lái)獲得。而對(duì)于離散非線性系統(tǒng)來(lái)說(shuō),HJB方程(4)的解析解很難直接求解。因此本文將采用單網(wǎng)絡(luò)值迭代的ADP算法來(lái)求解HJB方程,進(jìn)而獲得事件驅(qū)動(dòng)近似最優(yōu)控制策略。
單網(wǎng)絡(luò)值迭代算法僅利用一個(gè)神經(jīng)網(wǎng)絡(luò)來(lái)構(gòu)建評(píng)價(jià)網(wǎng),省略了典型ADP算法中的執(zhí)行網(wǎng)。如果系統(tǒng)動(dòng)態(tài)已知,那么模型網(wǎng)也可以省略。典型ADP算法中執(zhí)行網(wǎng)的輸出可以直接通過(guò)公式(6)計(jì)算獲得,系統(tǒng)狀態(tài)可以通過(guò)方程(5)計(jì)算得出。
采用一個(gè)三層神經(jīng)網(wǎng)絡(luò)來(lái)構(gòu)建評(píng)價(jià)網(wǎng)
(7)
典型ADP值迭代算法是通過(guò)在序列Vj(xk)和序列uj(xk)之間反復(fù)迭代獲得最優(yōu)值函數(shù)和最優(yōu)控制策略。在單網(wǎng)絡(luò)值迭代算法中,序列Vj(xk)為評(píng)價(jià)網(wǎng)輸出
其中:j代表迭代次數(shù);k表示時(shí)間步,xk表示k時(shí)刻系統(tǒng)的狀態(tài);uj(xk)表示k時(shí)刻第j次迭代的控制策略;Vj(xk)表示k時(shí)刻第j次迭代的值函數(shù)。當(dāng)?shù)螖?shù)j→∞時(shí),序列Vj(xk)收斂到離散HJB方程(4)的解,即V∞(xk)=V*(xk),序列uj(xk)收斂到最優(yōu)的控制策略,即u∞(xk)=u*(xk)[15]。
定義評(píng)價(jià)網(wǎng)的訓(xùn)練誤差為
其中Δεc(k)=εc(k+1)-εck。
接下來(lái),證明評(píng)價(jià)網(wǎng)權(quán)值估計(jì)誤差的收斂性。在證明開(kāi)始之前,給出下列假設(shè)條件。
假設(shè)2 1) 評(píng)價(jià)網(wǎng)激活函數(shù)有界,φcm≤‖φc(·)‖≤φcM;
2) Δεc(k)具有上界,滿足‖Δεc(k)‖≤εcM。
定理2 評(píng)價(jià)網(wǎng)的權(quán)值更新規(guī)則為式(8)和式(9),如果下列不等式滿足
證明 選取Lyapunov函數(shù)為
根據(jù)柯西不等式和公式(10),Lyapunov函數(shù)的一階差分為
(13)
基于上述事件驅(qū)動(dòng)機(jī)制和單網(wǎng)絡(luò)值迭代算法,可以獲得離散非線性系統(tǒng)的近似最優(yōu)控制策略為
(14)
該單網(wǎng)絡(luò)值迭代事件驅(qū)動(dòng)控制方案具體的執(zhí)行步驟如下:
步驟2 令j=0,V0(xk)=0,計(jì)算u0(xk);
步驟3j=j+1;
步驟5 如果‖Vj+1(xk)-Vj(xk)‖<ξ或者j>jmax,跳轉(zhuǎn)步驟6,否則跳轉(zhuǎn)步驟3;
步驟6 令i=0,k=0;
步驟7 計(jì)算事件觸發(fā)誤差ek和閾值eT;
步驟8 判斷‖ek‖是否大于eT, 如果大于執(zhí)行步驟9, 如果小于等于跳轉(zhuǎn)步驟10;
步驟9 令i=i+1,xki=xk,ek=0,由公式(14)計(jì)算事件驅(qū)動(dòng)最優(yōu)控制策略u(píng)*(k);
步驟10 由公式(5)計(jì)算系統(tǒng)狀態(tài)xk+1;
步驟11 如果‖xk+1‖≤或者i>imax,跳轉(zhuǎn)步驟12,否則跳轉(zhuǎn)步驟7;
步驟12 算法結(jié)束。
評(píng)價(jià)網(wǎng)訓(xùn)練了1 500次,前500次中加入了持續(xù)激勵(lì)。圖2為事件驅(qū)動(dòng)誤差的范數(shù)‖ek‖和閾值eT軌跡。圖3展示了本文所提事件驅(qū)動(dòng)ADP算法(ET-ADP)與典型ADP算法系統(tǒng)狀態(tài)的對(duì)比情況。圖4為近似最優(yōu)控制輸入軌跡。
仿真結(jié)果表明,本文所提的ET-ADP算法需要經(jīng)過(guò)619步達(dá)到ò=10-5的穩(wěn)態(tài)精度,但事件觸發(fā)次數(shù)僅為81次,與傳統(tǒng)的ADP算法相比,大大地降低了數(shù)據(jù)傳輸、控制輸入的計(jì)算和神經(jīng)網(wǎng)絡(luò)的訓(xùn)練量,同時(shí)保持了良好的控制效果。
圖1 評(píng)價(jià)網(wǎng)絡(luò)權(quán)值收斂軌跡
圖2 事件驅(qū)動(dòng)誤差和閾值軌跡Fig.2 Trajectories of the ET error and threshold
圖3 系統(tǒng)狀態(tài)軌跡Fig.3 Trajectories of the system states
圖4 控制輸入軌跡Fig.4 Trajectories of the control input
本文研究了離散非線性系統(tǒng)的近似最優(yōu)控制問(wèn)題。結(jié)合ADP算法、事件驅(qū)動(dòng)控制和神經(jīng)網(wǎng)絡(luò)思想,提出了一種基于單網(wǎng)絡(luò)值迭代算法的事件驅(qū)動(dòng)控制方案。首先,定義了新型的事件驅(qū)動(dòng)閾值;然后,采用單網(wǎng)絡(luò)值迭代算法,僅利用一個(gè)神經(jīng)網(wǎng)絡(luò)來(lái)構(gòu)建評(píng)價(jià)網(wǎng),利用Lyapunov理論證明了閉環(huán)系統(tǒng)的穩(wěn)定性和評(píng)價(jià)網(wǎng)權(quán)值的收斂性;最后,將該方法應(yīng)用到非線性系統(tǒng)的控制仿真實(shí)驗(yàn)中。結(jié)果表明所提方法有效,并成功地降低了數(shù)據(jù)傳輸次數(shù)、計(jì)算量以及神經(jīng)網(wǎng)絡(luò)權(quán)值的訓(xùn)練量。