何德峰,馮陽(yáng)輝,穆建彬
(浙江工業(yè)大學(xué) 信息工程學(xué)院,浙江 杭州 310023)
協(xié)同自適應(yīng)巡航(Cooperative adaptive cruise control,CACC)的主要功能是基于V2V(Vehicle-to-vehicle)車(chē)載通信技術(shù),保證多輛車(chē)以相同速度在同一車(chē)道上保持近距離行駛,其對(duì)于提高交通效率和駕駛安全性有著重要意義[1-3]。相較于自適應(yīng)巡航控制(Adaptive cruise control,ACC),CACC不僅可以通過(guò)傳感器獲取前車(chē)速度和位置信息,還可以通過(guò)V2V通信獲取更多附加信息,如前車(chē)當(dāng)前的加速度信息。有效利用這些信息可以很好地提高車(chē)輛隊(duì)列的整體性能。在網(wǎng)聯(lián)車(chē)協(xié)同控制中,如何有效利用V2V的附加信息提高控制性能已經(jīng)受到了學(xué)者們的廣泛關(guān)注[4-10]。模型預(yù)測(cè)控制(Model predictive control,MPC)作為一種先進(jìn)的控制技術(shù)已被廣泛應(yīng)用于智能網(wǎng)聯(lián)車(chē)控制中,與傳統(tǒng)控制算法相比,它能夠處理飽和約束和多目標(biāo)控制問(wèn)題。然而傳統(tǒng)的MPC對(duì)模型較為依賴,當(dāng)出現(xiàn)模型外的擾動(dòng)時(shí),控制器可能違反約束,無(wú)法保證原本的控制性能[11-12]。為了解決這一問(wèn)題,提出了可以顯式處理擾動(dòng)影響的魯棒MPC算法。目前魯棒MPC主要分為min-max MPC和tube MPC。前者考慮擾動(dòng)作用下性能指標(biāo)最差的情況來(lái)求解優(yōu)化變量[13]。然而考慮到該算法在線求解的優(yōu)化問(wèn)題較為復(fù)雜,在實(shí)際應(yīng)用中實(shí)時(shí)性可能無(wú)法得到保證。而tube MPC在線計(jì)算時(shí),無(wú)須顯式處理擾動(dòng)的影響。tube MPC在離線階段已經(jīng)計(jì)算好擾動(dòng)的魯棒不變集,之后通過(guò)擾動(dòng)的魯棒不變集對(duì)名義系統(tǒng)的約束進(jìn)行緊縮處理,以確保實(shí)際系統(tǒng)在擾動(dòng)下仍滿足約束[14-15]。在車(chē)輛控制過(guò)程中擾動(dòng)是不可避免的,因此針對(duì)使用魯棒MPC處理擾動(dòng)已經(jīng)有了諸多研究成果,Lin等[16]針對(duì)ACC系統(tǒng)前車(chē)未來(lái)速度未知的情況,首先通過(guò)常數(shù)預(yù)測(cè)的方法得到前車(chē)的速度預(yù)測(cè)值,然后根據(jù)已知的物理約束條件,通過(guò)離線計(jì)算得到一個(gè)更緊湊的擾動(dòng)不變集,達(dá)到降低保守性的目的。Luo等[17]通過(guò)設(shè)計(jì)比例多重積分觀測(cè)器來(lái)估計(jì)擾動(dòng),采用前饋和干擾補(bǔ)償?shù)姆绞浇M成綜合控制律來(lái)控制PLF(Predecessor-leader-follower)通信拓?fù)湎碌能?chē)隊(duì),保證車(chē)輛在擾動(dòng)下達(dá)到控制目標(biāo)。
針對(duì)魯棒MPC在處理擾動(dòng)下的車(chē)輛隊(duì)列控制方面雖然已經(jīng)有了諸多研究,但是當(dāng)車(chē)輛通信傳遞的信息有限時(shí),如車(chē)輛只能獲取前車(chē)的當(dāng)前加速度信息,現(xiàn)有方法處理系統(tǒng)不確定性帶來(lái)的擾動(dòng)均有一定的局限性,如tube MPC具有較高的保守性,min-max MPC的計(jì)算復(fù)雜度較高、實(shí)時(shí)性難以保證。因此在通信資源和計(jì)算資源有限的情況下,如何保證車(chē)輛隊(duì)列控制在不確定工況下的實(shí)時(shí)性和穩(wěn)定性仍具有進(jìn)一步研究的意義。因此筆者針對(duì)前車(chē)未來(lái)加速度信息不確定的工況,基于管(tube)的概念,設(shè)計(jì)了一種tube MPC算法來(lái)處理車(chē)輛隊(duì)列的巡航控制問(wèn)題[12]。控制器主要由狀態(tài)反饋、前饋補(bǔ)償和tube MPC組成。筆者在Lan等[13]的研究基礎(chǔ)上用tube MPC代替了min-max MPC,在不影響控制性能的前提下,縮短了優(yōu)化問(wèn)題的在線計(jì)算時(shí)間。此外,還根據(jù)滾動(dòng)預(yù)測(cè)擾動(dòng)范圍得到了更緊湊的擾動(dòng)多面體,進(jìn)而降低了保守性,提升了控制性能。筆者首先介紹了車(chē)輛隊(duì)列的縱向運(yùn)動(dòng)學(xué)模型以及控制目標(biāo);然后介紹了算法設(shè)計(jì)并分析了遞推可行性和穩(wěn)定性;最后通過(guò)仿真驗(yàn)證了算法的有效性。
由于筆者研究的車(chē)輛隊(duì)列中車(chē)輛都行駛在同一車(chē)道,因此沒(méi)有轉(zhuǎn)向操作。假設(shè)車(chē)隊(duì)的橫向控制是穩(wěn)定的,只需考慮縱向運(yùn)動(dòng)學(xué)。假設(shè)車(chē)隊(duì)由M輛車(chē)組成,車(chē)隊(duì)的領(lǐng)航車(chē)輛編號(hào)為0,其他的跟隨車(chē)輛編號(hào)依次為1到M-1。車(chē)隊(duì)采用PF(Predecessor-follower)通信拓?fù)?即每輛車(chē)可以通過(guò)V2V接收到前車(chē)的當(dāng)前加速度信息,并將自車(chē)加速度信息發(fā)送給后車(chē),前車(chē)的未來(lái)加速度對(duì)于后車(chē)是未知的。
車(chē)輛i的縱向運(yùn)動(dòng)學(xué)模型可以表示為
(1)
式中:pi(t),vi(t)分別為車(chē)輛i在t時(shí)刻的縱向位置和速度;ai(t)為車(chē)輛i在t時(shí)刻的加速度。車(chē)輛i可以通過(guò)車(chē)載傳感器獲得前車(chē)i-1的相對(duì)速度ev,i(t)和相對(duì)位置ep,i(t),其中ev,i(t)=vi-1(t)-vi(t),ep,i(t)=pi-1(t)-pi(t)。為了便于控制器設(shè)計(jì),將原來(lái)的二階模型式(1)改寫(xiě)為誤差模型,即
(2)
式中:Δpi(t)=ep,i(t)-ds;Δvi(t)=ev,i(t)。?i∈Z[1,M-1],ds代表車(chē)輛間的安全間距。為了便于之后的算法設(shè)計(jì),選擇采樣時(shí)間為T(mén),得到對(duì)應(yīng)的離散模型,即
xi(k+1)=Axi(k)+Bui(k)+Ddi(k)
(3)
預(yù)測(cè)模型在k時(shí)刻對(duì)k+j時(shí)刻的預(yù)測(cè)表示為
(4)
(5)
因?yàn)榍败?chē)加速度的變化是有界的,所以wi(j|k)是有界的,即
wi(j|k)∈[wmin,wmax],Δwi(j|k)∈[Δwmin,Δwmax]
(6)
式中:wmin,wmax表示擾動(dòng)的極限值;Δwmin,Δwmax表示擾動(dòng)變化率的極限值。因?yàn)闊o(wú)法直接對(duì)wi(j|k)進(jìn)行建模,所以采用tube MPC對(duì)名義模型進(jìn)行控制,使名義狀態(tài)可以收斂,并將實(shí)際狀態(tài)控制在以名義軌跡為中心的“tube”內(nèi)。不考慮擾動(dòng)wi(j|k)的影響,式(3)的車(chē)輛名義模型為
(7)
為了實(shí)現(xiàn)車(chē)輛隊(duì)列穩(wěn)定跟蹤,需要滿足以下控制目標(biāo):
1) 當(dāng)車(chē)隊(duì)穩(wěn)定之后,所有跟隨車(chē)輛可以跟蹤領(lǐng)航車(chē)的速度軌跡,并且車(chē)輛之間可以保持一個(gè)固定的安全間距ds,即
(8)
2) 所有車(chē)輛的速度和加速度都滿足物理約束,即
(9)
式中:vmin,vmax分別表示速度上、下界;amin,amax分別表示加速度上、下界。
3) 車(chē)隊(duì)所有車(chē)輛的軌跡偏差ei(k)=[ep,i(k)-di,s,ev,i(k)]T需要滿足以下約束,即
(10)
式中:ep,min,ev,min均小于0;ep,max,ev,max均大于0。
4) 車(chē)輛隊(duì)列滿足ISPF(Input-to-state-leader-predecessor)弦穩(wěn)定[13],即存在一個(gè)KL函數(shù)σ1,一個(gè)K∞函數(shù)σ2和正數(shù)c1和c2,使車(chē)輛軌跡誤差ei(t)滿足
(11)
為實(shí)現(xiàn)第1節(jié)中的控制目標(biāo),筆者設(shè)計(jì)了一種由tube MPC、反饋控制和前饋補(bǔ)償組成的綜合控制策略,總體控制框架如圖1所示。車(chē)輛i的控制律表示為
(12)
圖1 控制器設(shè)計(jì)框架Fig.1 Framework of controller design
(13)
控制律式(12)要求系統(tǒng)是穩(wěn)定的,并且滿足l2增益屬性,即
(14)
(15)
式中
(16)
式中P為半正定矩陣。對(duì)于上述Riccati方程可以通過(guò)遞歸的方式來(lái)求解P[16]。當(dāng)P確定后,對(duì)應(yīng)的最優(yōu)控制增益可以表示為
(17)
從預(yù)測(cè)模型式(4)中可以看出預(yù)測(cè)模型需要使用前車(chē)的加速度信息。由于前車(chē)的未來(lái)加速度無(wú)法直接獲取,因此需要通過(guò)前車(chē)歷史加速度信息di(k)對(duì)前車(chē)未來(lái)加速度進(jìn)行預(yù)測(cè),以此得到前車(chē)的未來(lái)加速度預(yù)測(cè)序列,即
(18)
W(j|k)={w|wmin(j|k)≤w≤wmax(j|k)}
?j=0,1,…,N-1
(19)
式中
wmin(k+i|k)=min(max(0,w(k)+iΔwmax),wmax)
wmax(k+i|k)=max(min(0,w(k)+iΔwmin),wmin)
(20)
與式(6)相比,式(19)具有更緊湊的擾動(dòng)范圍。相較于k時(shí)刻,擾動(dòng)wi(1|k)在k+1時(shí)刻是可獲得的。因此不同時(shí)間擾動(dòng)多面體的關(guān)系可以表示為
W(j|k+1)?W(j+1|k) ?j=0,1,…,N-1
(21)
控制律式(13)可以保證控制目標(biāo)式(8)和式(11)的實(shí)現(xiàn),然而不能保證控制目標(biāo)式(9,10)。因此接下來(lái)需要設(shè)計(jì)tube MPC控制器使系統(tǒng)式(4)滿足物理約束和安全約束。控制目標(biāo)式(9,10)要求系統(tǒng)式(3)滿足
xi(k)∈X,ui(k)∈U,wi(j|k)∈W(j|k)
(22)
名義模型和實(shí)際模型的失配可以表示為
(23)
式中AK=A+BKx。擾動(dòng)所在的集合可以表示為
(24)
式中⊕表示Minkowski集合相加。當(dāng)R(j|k)確定后,名義模型的輸入約束和狀態(tài)約束可以表示為
(25)
(26)
為了實(shí)現(xiàn)1.2節(jié)中的式(9,10),將優(yōu)化問(wèn)題的目標(biāo)函數(shù)設(shè)計(jì)為
(27)
Vi(k)=[vi(0|k),vi(1|k),…,vi(N-1|k)]
(28)
為了使實(shí)際系統(tǒng)狀態(tài)軌跡保持在名義軌跡為中心的管上,將tube MPC的優(yōu)化問(wèn)題設(shè)計(jì)為
(29)
(30)
(31)
(32)
(33)
(34)
約束式(32)分別是名義模型的狀態(tài)約束和輸入約束,為了使綜合控制律式(9)滿足目標(biāo)式(6,7)。約束式(33)為終端約束,其作用是保證系統(tǒng)最終收斂到終端約束范圍內(nèi)。
算法1車(chē)輛i的分布式tube MPC設(shè)計(jì)
當(dāng)k≥0時(shí),循環(huán):
1) 車(chē)輛i通過(guò)雷達(dá)獲得和前車(chē)i-1的相對(duì)速度ev,i(k)和相對(duì)位置ep,i(k),將傳感器得到的當(dāng)前狀態(tài)作為名義模型的初始狀態(tài)。
6)k=k+1,返回步驟1)。
引理1如果優(yōu)化問(wèn)題式(29~34)在k-1時(shí)刻是有解的,那么系統(tǒng)對(duì)應(yīng)的狀態(tài)和控制輸入滿足控制目標(biāo)。
證明令k-1時(shí)刻優(yōu)化問(wèn)題式(29~34)的解為
(35)
名義系統(tǒng)式(7)對(duì)應(yīng)的預(yù)測(cè)控制輸入序列為
(36)
(37)
(38)
因此,對(duì)優(yōu)化問(wèn)題式(29~34)的求解可以保證實(shí)際的系統(tǒng)式(3)滿足狀態(tài)約束和輸入約束。證畢。
引理2如果優(yōu)化問(wèn)題式(29~34)在k-1時(shí)刻有解,那么在k時(shí)刻也一定有解。
證明將k-1時(shí)刻的最優(yōu)控制序列作用于k時(shí)刻,控制輸入預(yù)測(cè)序列表示為
(39)
(40)
進(jìn)一步推導(dǎo)得到
(41)
(42)
(43)
由于在k-1處的最優(yōu)解考慮了在預(yù)測(cè)時(shí)域上的擾動(dòng)影響,因此在k處的名義狀態(tài)滿足以下關(guān)系[18],即
(44)
定理1假設(shè)優(yōu)化問(wèn)題式(29~34)在初始時(shí)刻k=0有解,那么優(yōu)化問(wèn)題式(29~34)是遞推可行的。
證明根據(jù)引理1可知優(yōu)化問(wèn)題式(29~34)的解可以使原系統(tǒng)滿足約束。由引理2可知如果優(yōu)化問(wèn)題式(29~34)在k-1時(shí)刻有解,那么在k時(shí)刻也一定有解。綜上所述,若系統(tǒng)在初始時(shí)刻有解,則優(yōu)化問(wèn)題式(29~34)是遞推可行的。證畢。
(45)
(46)
(47)
式中j=0,1,…,N-1。進(jìn)一步推導(dǎo)可得
(48)
(49)
假設(shè)1加權(quán)矩陣Q和R的選取滿足
(50)
定理2若假設(shè)1成立,則系統(tǒng)式(3)在式(29~34)作用下是輸入到狀態(tài)穩(wěn)定(Input to state stability,ISS)的。
(51)
(52)
將式(45~47)帶入式(52)可得
(53)
(54)
若假設(shè)1成立,則
(55)
將式(55)帶入式(53)可得
(56)
因?yàn)閿_動(dòng)wi是有界的,所以存在一個(gè)常數(shù)λ滿足
(57)
因此
(58)
根據(jù)范數(shù)乘法性質(zhì)和幾何序列求和公式可得
(59)
選取標(biāo)量常數(shù)ξ1和ξ2,使其滿足
(60)
因此可以得到
(61)
在Matlab上考慮了由1輛領(lǐng)航車(chē)和4輛跟隨車(chē)組成的車(chē)輛隊(duì)列。車(chē)隊(duì)保持PF通信拓?fù)?每輛車(chē)可以通過(guò)V2V通信,接收到前車(chē)的加速度信息并把本車(chē)的加速度信息發(fā)送給后車(chē)。車(chē)輛的具體參數(shù)如表1所示。
表1 仿真參數(shù)
傳統(tǒng)的tube MPC和Pre tube MPC通過(guò)離線計(jì)算得到名義系統(tǒng)的終端不變集,結(jié)果如圖2所示。由圖2可知:通過(guò)滾動(dòng)預(yù)測(cè)擾動(dòng)范圍,擾動(dòng)魯棒不變集的范圍變小了,與此同時(shí)得到了更寬松的終端不變集。很明顯Pre tube MPC在傳統(tǒng)tube MPC的基礎(chǔ)上降低了保守性。
圖2 終端不變集對(duì)比Fig.2 Comparison of terminal invariant set
為了分析Pre tube MPC在車(chē)輛隊(duì)列加減速工況下的有效性,跟隨車(chē)輛的初始狀態(tài)為xi(0)=[0.2,-0.1]T,i=1,2,…,5。領(lǐng)航車(chē)有一個(gè)加減速過(guò)程,速度軌跡如圖3所示。
圖3 領(lǐng)航車(chē)速度軌跡Fig.3 The pilot vehicle speed trajectory
上述3種算法在一個(gè)5輛車(chē)隊(duì)列中的速度誤差比較如圖4所示。由圖4可知:從初始誤差的收斂性可以看出,tube MPC的收斂速度比min-max MPC的收斂速度快,當(dāng)速度變化時(shí),Pre tube MPC的收斂速度最小,這可以在緊急情況下減少不必要的加減速。3種算法的位置誤差如圖5所示。從圖5中的局部放大圖可以看出:3種算法都是ISPF穩(wěn)定的,即前車(chē)的干擾誤差不會(huì)沿著車(chē)輛隊(duì)列的方向?qū)_動(dòng)傳播給后車(chē)。在車(chē)輛減速的過(guò)程中,與傳統(tǒng)的tube MPC相比,Pre tube MPC位置誤差變化范圍較小,并且可以在短時(shí)間內(nèi)快速收斂到0,min-max MPC位置誤差變化幅度較小,然而最后會(huì)存在一個(gè)較小的恒定誤差。Pre tube MPC可以將車(chē)間距離誤差控制在更小的誤差范圍內(nèi),因此車(chē)輛間可以保持更小的車(chē)間距,這樣在長(zhǎng)度有限的車(chē)隊(duì)中可以容納更多的車(chē)輛。
圖4 速度誤差對(duì)比Fig.4 Speed error comparison
圖5 位置誤差對(duì)比Fig.5 Spacing error comparison
由圖4,5可知:Pre tube MP和min-max MPC的控制效果相差不大,兩者的線性控制部分的控制增益是一樣的,兩者區(qū)別主要在于對(duì)擾動(dòng)的處理不同,min-max MPC將前車(chē)加速度視為擾動(dòng),因此擾動(dòng)的范圍是加速度的范圍,擾動(dòng)范圍較大。而Pre tube MP對(duì)前車(chē)加速度進(jìn)行了預(yù)測(cè),將預(yù)測(cè)值和真實(shí)值的偏差視為擾動(dòng),相對(duì)來(lái)說(shuō)擾動(dòng)的范圍比直接把前車(chē)加速度視為擾動(dòng)的范圍更小。
3種算法的控制輸入比較如圖6所示。傳統(tǒng)tube MPC的控制輸入大約在7.5 s時(shí)超過(guò)加速度約束范圍,而Pre tube MPC仍然滿足控制約束。這表明Pre tube MPC的保守性較低,在處理擾動(dòng)方面更具有優(yōu)勢(shì)。3種算法的平均每步計(jì)算時(shí)間如表2所示。由表2可知Pre tube MPC的平均每步計(jì)算時(shí)間介于其他兩種算法之間。相較于min-max MPC,Pre tube MP能夠保證車(chē)輛在加性擾動(dòng)作用下可以快速收斂到平衡點(diǎn),同時(shí)具有更快的計(jì)算速度。
表2 計(jì)算時(shí)間對(duì)比
圖6 控制輸入對(duì)比Fig.6 Control input comparison
為了進(jìn)一步分析Pre tube MPC在未建模擾動(dòng)下的魯棒性能,在一個(gè)所有車(chē)輛在同一車(chē)道上都以15 m/s勻速行駛的工況中引入一個(gè)正弦衰減擾動(dòng),仿真結(jié)果如圖7所示。由圖7可知:Pre tube MPC雖然在擾動(dòng)衰減方面略低于min-max MPC,但其總體具有更好的性能。與傳統(tǒng)的tube MPC相比,筆者所提Pre tube MPC在加性擾動(dòng)下具有較好的弦穩(wěn)定性。Pre tube MPC通過(guò)滾動(dòng)預(yù)測(cè)擾動(dòng)范圍放寬了原名義系統(tǒng)約束的范圍,從而提高了魯棒性。
圖7 外部輸入擾動(dòng)下的位置誤差對(duì)比Fig.7 Spacing error comparison under external input disturbance
筆者提出了一種基于PF通信拓?fù)涞腜re tube MPC算法,該算法可以處理前車(chē)在未來(lái)加速度不確定情況下帶來(lái)的加性擾動(dòng)并實(shí)現(xiàn)ISPF弦穩(wěn)定。Pre tube MPC只需車(chē)輛通過(guò)PF通信拓?fù)鋪?lái)傳輸當(dāng)前加速度信息,因此在一定程度上降低了通信負(fù)擔(dān)。對(duì)應(yīng)設(shè)計(jì)的算法通過(guò)滾動(dòng)預(yù)測(cè)擾動(dòng)范圍降低前車(chē)未來(lái)加速度不確定的影響,相較于現(xiàn)有的tube MPC,Pre tube MPC有效降低了保守性,提升了控制性能。通過(guò)5輛車(chē)的仿真驗(yàn)證了算法的性能和實(shí)時(shí)性。此外,V2V中的通信延遲往往是不可避免的,燃油經(jīng)濟(jì)性也是一個(gè)重要的性能指標(biāo),在未來(lái)的工作中將考慮通信延遲和經(jīng)濟(jì)MPC。