徐通福,李秀英
(上海應(yīng)用技術(shù)大學(xué),上海 201418)
迭代學(xué)習(xí)控制(iterative learning control,ILC)利用有限時間內(nèi)先前迭代的信息來提高重復(fù)操作系統(tǒng)的跟蹤性能[1]。它已經(jīng)廣泛應(yīng)用于機(jī)器人、劃片機(jī)、紅外相機(jī)和列車等重復(fù)系統(tǒng)[2-5]。對于大多數(shù)現(xiàn)有的迭代學(xué)習(xí)控制方法,控制器的設(shè)計和穩(wěn)定性的分析需要知道被控對象的動態(tài)模型。從這個角度來看,它們被認(rèn)為是基于模型的ILC?;谀P偷腎LC是使用基本原理或辨識方法對被控對象建模。如果對象是復(fù)雜的,那么基于模型設(shè)計的控制律的結(jié)構(gòu)也會變得復(fù)雜,這導(dǎo)致控制器設(shè)計耗時、低效,甚至在某些實(shí)際情況下是不可能的。
為了解決基于模型的ILC 帶來的一些問題,數(shù)據(jù)驅(qū)動的控制方法近年來吸引了越來越多的關(guān)注。李佳偉等在迭代學(xué)習(xí)控制的基礎(chǔ)上引入遺忘因子,減少了系統(tǒng)的超調(diào)和振蕩[6]。薄雨蒙等將基函數(shù)前饋調(diào)參技術(shù)和ILC 技術(shù)結(jié)合,有效地提高了對時變的期望軌跡的控制精度[7]。梁建智等利用數(shù)據(jù)驅(qū)動迭代控制大大減小了數(shù)控機(jī)床位置跟蹤誤差[8]。
數(shù)據(jù)驅(qū)動的迭代學(xué)習(xí)控制方法雖然消除了基于模型的控制方案的一些問題,但是仍然存在一些關(guān)鍵的問題。例如:學(xué)習(xí)控制器的設(shè)計通常是根據(jù)經(jīng)驗(yàn)或一些系統(tǒng)知識確定的;學(xué)習(xí)控制增益沒有精確地校準(zhǔn),只是采用固定的學(xué)習(xí)控制增益,該增益通常在迭代過程中啟發(fā)式地確定。對此,本文對一般的未知非線性重復(fù)系統(tǒng),提出了一種新的數(shù)據(jù)驅(qū)動迭代學(xué)習(xí)控制方法。首先,基于非線性理想學(xué)習(xí)控制器的動態(tài)數(shù)據(jù)模型,確定帶有學(xué)習(xí)控制增益向量的迭代學(xué)習(xí)律。然后,利用改進(jìn)的無模型自適應(yīng)迭代學(xué)習(xí)控制(improved model free adaptive iterative learning control,IMFAILC)方案對學(xué)習(xí)控制增益向量中的復(fù)雜非線性進(jìn)行估計,IMFAILC 方案的引入提高了被控對象的非線性跟蹤能力。
考慮未知的重復(fù)離散時間非線性非仿射單輸入單輸出系統(tǒng)
假設(shè)1:非線性系統(tǒng)(1)在迭代域中滿足廣義利普希茨條件,也就是說,對于任意時刻k 和迭代i,如果,那么有一個未知的常數(shù)b>0 使得
備(1),理想的學(xué)習(xí)控制器可以表示為
由于理想學(xué)習(xí)控制器式(3)的結(jié)構(gòu)是未知的,所以它只是一個理論表達(dá)式。在實(shí)踐中,通常根據(jù)經(jīng)驗(yàn)或使用一些系統(tǒng)知識來選擇具有先驗(yàn)確定結(jié)構(gòu)的迭代學(xué)習(xí)控制律。然而,當(dāng)被控系統(tǒng)的動態(tài)是未知的,并且可能是復(fù)雜的,具有強(qiáng)非線性和時變參數(shù)、階數(shù)和結(jié)構(gòu)時,很難確定所設(shè)計的ILC 在實(shí)踐中是否有效。因此,需要尋求一種系統(tǒng)的方法來設(shè)計專門針對未知受控對象的迭代學(xué)習(xí)控制律。
定理1:對于滿足假設(shè)1 和假設(shè)2 的理想學(xué)習(xí)控制器式(3),如果,那么式(3)可以等價地變換為下面的動態(tài)線性化學(xué)習(xí)控制器(dynamic linearization learning controller,DLLC)[9]
應(yīng)迭代學(xué)習(xí)控制[10-11]。假設(shè)3 表明控制器輸出的無界變化不能由先前迭代中e(·)和u(·)的有界變化產(chǎn)生。許多方法,如P 型迭代學(xué)習(xí)控制和牛頓型迭代學(xué)習(xí)控制[12],都滿足這些假設(shè)。
所得到的DLLC 式(5)在數(shù)學(xué)表達(dá)式上是式(3)的等價,且受控系統(tǒng)式(1)的非線性包含在學(xué)習(xí)控制增益向量中,因此,可以被認(rèn)為是一個非線性函數(shù)。為了估計DLLC 式(5)中的可以使用估計算法,例如投影算法[13]。然而,當(dāng)受控設(shè)備式(1)的物理動態(tài)具有強(qiáng)非線性和時變結(jié)構(gòu)、順序和參數(shù)時,這種參數(shù)估計算法可能導(dǎo)致較差的跟蹤性能。本文為了估計,設(shè)計如下準(zhǔn)則函數(shù)
式中,α 是權(quán)重因子,用來限制控制輸入量的變化。等式右邊的第1 項(xiàng)是基于傳統(tǒng)的參數(shù)估計準(zhǔn)則函數(shù)即最小化真實(shí)值與估計值之差的平方,然而,僅僅應(yīng)用此類準(zhǔn)則函數(shù)推導(dǎo)出的估計算法,其參數(shù)估計值會對某些不準(zhǔn)確的采樣數(shù)據(jù)過于敏感,基于此,設(shè)計了等式右邊的第2 項(xiàng)。此外,等式右邊的第2 項(xiàng)包含了跟蹤誤差,即在設(shè)計控制增益時,考慮了全局的優(yōu)化性能。
式中,γ 和δ 代表步長因子,加入γ、δ 使該算法具有更強(qiáng)的靈活性和一般性。
為了增加估計算法式(7)對時變參數(shù)的跟蹤能力,設(shè)置如下重置算法
同樣為了使估計算法式(9)對時變參數(shù)具有跟蹤能力,設(shè)置如下重置算法
根據(jù)式(12),式(5)可重寫為
式(8)、式(10)~式(13)共同組成了系統(tǒng)的學(xué)習(xí)控制律,本文稱其為基于動態(tài)線性化學(xué)習(xí)控制器的改進(jìn)的無模型自適應(yīng)迭代學(xué)習(xí)控制(improved model free adaptive iterative learning control based on dynamic linearization learning controller,IMFAILC-DLLC)。
與現(xiàn)有的數(shù)據(jù)驅(qū)動控制方法相比,所提出的方法的主要優(yōu)點(diǎn)在于,通過基于所建立的動態(tài)線性化數(shù)據(jù)模型優(yōu)化控制目標(biāo)函數(shù),以系統(tǒng)的方式設(shè)計學(xué)習(xí)控制器,獨(dú)立于被控對象的動態(tài)特性,并且沿著迭代軸使用動態(tài)線性化方法直接構(gòu)造,而不是間接地基于對象的特定模型。另一個改進(jìn)是利用IMFAILC 方案對理想學(xué)習(xí)控制器增益進(jìn)行自適應(yīng)逼近,提高了被控對象的跟蹤性能。
本章給出了兩個例子來證明IMFAILC-DLLC迭代學(xué)習(xí)控制的有效性。第1 個例子是在一個復(fù)雜的非線性SISO 系統(tǒng)上進(jìn)行的,該系統(tǒng)具有時變的參數(shù)、階數(shù)和結(jié)構(gòu)。第2 個例子是通過一個類似于高速列車模型進(jìn)行的,這是一個典型的非線性SISO 系統(tǒng)[9]。為了與本文提出的IMFAILC-DLLC 迭代學(xué)習(xí)控制相比,MFAILC[14]和RBF-DLLC 迭代學(xué)習(xí)控制[9]也用于這兩個例子。此外,初始控制器和被控對象的輸入輸出數(shù)據(jù)通過無模型自適應(yīng)控制來產(chǎn)生[15]。
考慮以下非線性系統(tǒng)[9]
式中,是時變參數(shù)。期望輸出為
圖1~圖3 是IMFAILC-DLLC 迭代學(xué)習(xí)控制、RBF-DLLC 迭代學(xué)習(xí)控制和無模型自適應(yīng)迭代學(xué)習(xí)控制在第1,20,40 和100 次迭代時的跟蹤性能。第1 次迭代的跟蹤誤差由無模型自適應(yīng)控制產(chǎn)生,以保證3 種迭代學(xué)習(xí)控制方法具有相同的跟蹤性能。結(jié)果表明,IMFAILC-DLLC 迭代學(xué)習(xí)控制與RBF-DLLC 迭代學(xué)習(xí)控制在第20 次迭代后的大部分時間間隔內(nèi)具有令人滿意的跟蹤性能,而無模型迭代學(xué)習(xí)控制與期望軌跡仍有較大偏差,特別是在500 時刻以前。
圖1 IMFAILC-DLLC ILC 跟蹤性能Fig.1 Tracing performance of IMFAILC-DLLCILC
圖2 RBF-DLLC ILC 跟蹤性能Fig.2 Tracing performance of RBF-DLLC ILC
圖3 MFAILC 跟蹤性能Fig.3 Tracing performance of MFAILC
圖4 迭代過程最大誤差Fig.4 Maximum error of iterative process
圖1~圖4 的仿真結(jié)果表明,對于參數(shù)、階數(shù)和結(jié)構(gòu)隨時間變化的復(fù)雜非線性SISO 系統(tǒng),所提出的IMFAILC-DLLC 迭代學(xué)習(xí)控制優(yōu)于RBF-DLLC迭代學(xué)習(xí)控制和無模型自適應(yīng)迭代學(xué)習(xí)控制。
高速列車的動態(tài)離散時間模型如下所示[9]
其中,系統(tǒng)輸出v(k)(m/s)是高速列車的速度,控制輸入F(k)(N/kg)是單位質(zhì)量上的牽引/制動力,ts=1(s)是采樣時間,fb(k)(N/kg)表示單位質(zhì)量上的基本阻力,fa(k)(N/kg)表示特定線路中單位質(zhì)量上的附加阻力。
式中,a(k)是滾動阻力系數(shù);b(k)是與摩擦和列車振動相關(guān)的阻力系數(shù);c(k)是空氣動力阻力系數(shù)。
對于IMFAILC-DLLC 迭代學(xué)習(xí)控制、RBFDLLC 迭代學(xué)習(xí)控制和無模型自適應(yīng)迭代學(xué)習(xí)控制,高速列車的速度跟蹤性能分別如圖5~圖8 所示,其中,vd為高速列車的期望速度。
圖5 IMFAILC-DLLC ILC 跟蹤性能Fig.5 Tracing performance of IMFAILC-DLLC ILC
圖6 RBF-DLLC ILC 跟蹤性能Fig.6 Tracing performance of RBF-DLLC ILC
圖7 MFAILC 跟蹤性能Fig.7 Tracing performance of MFAILC
圖8 迭代過程最大誤差Fig.8 Maximum error of iterative process
仿真結(jié)果表明,迭代3 次后,3 種迭代學(xué)習(xí)控制方法都表現(xiàn)出了出色的跟蹤性能,經(jīng)過10 次迭代后,IMFAILC-DLLC 迭代學(xué)習(xí)控制和RBF-DLLC 學(xué)習(xí)控制的收斂誤差分別從大于5 m/s 降低到小于0.015 m/s,以及從大于5 m/s 降低到小于0.03 m/s,而MFAILC 的收斂誤差在10 次迭代后仍大于0.1 m/s,如圖8 所示。實(shí)驗(yàn)還表明,經(jīng)過10 次迭代后,IMFAILC-DLLC 迭代學(xué)習(xí)控制和RBF-DLLC 迭代學(xué)習(xí)控制的收斂誤差接近。由此可以看出,對于控制輸入飽和的高速列車模型,所提出的IMFAILCDLLC 迭代學(xué)習(xí)控制比RBF-DLLC 迭代學(xué)習(xí)控制和自適應(yīng)迭代學(xué)習(xí)控制具有更好的跟蹤和學(xué)習(xí)性能。
本文研究了一種新的數(shù)據(jù)驅(qū)動迭代學(xué)習(xí)控制方案。通過將DL 技術(shù)應(yīng)用于迭代域中的未知理想學(xué)習(xí)控制器,系統(tǒng)地設(shè)計了具有動態(tài)結(jié)構(gòu)的迭代學(xué)習(xí)控制律。應(yīng)用改進(jìn)的無模型自適應(yīng)迭代學(xué)習(xí)控制算法,對包含在學(xué)習(xí)控制增益向量中的受控系統(tǒng)的非線性進(jìn)行估計,仿真結(jié)果表明,所提出的數(shù)據(jù)驅(qū)動迭代學(xué)習(xí)控制方案具有優(yōu)異的跟蹤性能和良好的收斂速度。