摘 要:提出一種基于增強學習的雙輪驅動移動機器人路徑跟隨控制方法,通過將機器人運動控制器的優化設計問題建模為Markov決策過程,采用基于核的最小二乘策略迭代算法(KLSPI)實現控制器參數的自學習優化。與傳統表格型和基于神經網絡的增強學習方法不同,KLSPI算法在策略評價中應用核方法進行特征選擇和值函數逼近,從而提高了泛化性能和學習效率。仿真結果表明,該方法通過較少次數的迭代就可以獲得優化的路徑跟隨控制策略,有利于在實際應用中的推廣。
關鍵詞:移動機器人; 動力學模型; 運動控制; 非完整系統; 增強學習; 策略迭代
中圖分類號:TP242.6文獻標志碼:A
文章編號:1001-3695(2009)06-2310-04
doi:10.3969/j.issn.1001-3695.2009.06.094
Learning controller design for class of two-wheeled mobile robots
ZHANG Hong-yu, XU Xin, ZHANG Peng-cheng, LIU Chun-ming, SONG Jin-ze
(Institute of Automation, College of Mechatronics Engineering Automation, National University of Defense Technology, Changsha 410073, China)
Abstract:
This paper proposed a novel self-learning path-following control method based on reinforcement learning for a class of two-wheeled mobile robots. The path-following control problem of autonomous vehicles was modelled as a Markov decision process (MDP) and by using the kernel least-squares policy iteration (KLSPI) algorithm, the lateral control performance of the two-wheeled mobile robot could be optimized in a self-learning style. Unlike traditional table-based reinforcement learning (RL) and RL based on neural networks, KLSPI used kernel methods with automatic feature selection and value function approximation in policy evaluation so that better generalization performance and learning efficiency could be obtained. Simulation results show that the proposed method can obtain an optimized path-following control policy only in a few iterations, which will be very practical for real applications.
Key words:mobile robot; dynamic model; motion control; nonhonolomic systems; reinforcement learning; policy iteration
0 引言
隨著人類生產的發展和科學技術的進步,移動機器人系統在工業、建筑、交通等實際領域具有越來越廣泛的應用背景和需求。由于模型的復雜性以及動態環境帶來的不確定擾動,使得移動機器人的運動控制器設計仍具挑戰性。作為一種重要的學習控制方法,近年來增強學習[1]及其在移動機器人學習控制的應用[2]成為機器學習與智能控制研究的熱點領域。與傳統控制器設計方法不同,學習控制方法適用于對象模型未知或者部分已知的情況,因此在移動機器人運動控制中具有廣泛的應用前景。
與監督學習不同,增強學習強調在與環境的交互中學習,學習過程中僅要求獲得評價性的反饋信號,以極大化未來的回報為學習目標。增強學習不需要給定各種狀態下的教師信號,在控制對象模型很難分析和獲得時,增強學習為求解最優控制與決策問題提供了一個有效的方法。因此,推廣增強學習在實際優化決策問題中的應用,具有重要的學術和工程價值。
近年來,增強學習方法在機器人控制系統中的應用已取得若干研究進展。文獻[3]研究了自主車在高速和高曲率公路情況下的運動控制,并基于自主車動力學模型,提出了一種應用增強學習求解車與道路之間作用力的方法,從而實現自主車運動控制器的設計。文獻[4]提出了一種利用增強學習調節模糊控制器參數的方法,其結構由Q函數的估計網絡(QEN)和Takagi-Sugeno模糊參考系統(TSK-FIS)組成。這種方法不同于通常的模糊Q學習方法,強調從TSK-FIS中直接獲得控制輸出。QEN 和FIS參數的學習算法分別基于時域差值(TD)和梯度下降算法,并通過車輛縱向控制系統的研究說明了該設計方法的有效性。文獻[2]研究了增強學習在移動機器人路徑跟蹤控制器設計和優化中的應用,提出了一種基于增強學習的自適應PID 控制器設計方法。該方法通過神經網絡增強學習算法實現了PID增益的自適應優化,具有不依賴機器人動力學模型、能夠實現控制器自學習優化的特點。由于移動機器人面臨環境的動態性和復雜性,如何提高增強學習算法的學習效率和泛化性能是今后的重點研究方向之一。
雙輪驅動移動機器人是輪式移動機器人的典型代表,故對其路徑跟隨進行理論方法研究具有重要的工程實踐意義。本文提出一種基于增強學習的雙輪驅動移動機器人學習控制方法。仿真研究表明,本文提出的方法能夠實現移動機器人運動控制器的快速優化。
1 問題描述
1.1 研究對象
輪式移動機器人是一類具有非完整約束和強耦合特性的非線性多輸入多輸出系統。在移動機器人運動控制的理論研究中,一般假設系統的非完整約束是一種理想約束,即輪子與地面為點接觸,且接觸點處只有純滾動而不發生相對滑動(包括側向和縱向滑動)。有關移動機器人非完整約束理論及其運動控制器設計方法的研究成果可參見文獻[5]。由于測量和建模的不確定性,以及負載的變化和外界干擾,基于解析模型和非完整約束理論的反饋控制器設計方法在實際應用中存在一定的局限性。在本文研究的雙輪移動機器人控制器設計中,將考慮在模型未知條件下,利用觀測數據和增強學習算法實現控制器的學習優化。
本文研究的雙輪驅動式移動機器人的幾何簡化模型如圖1所示。用向量(x y θ)T來表示移動機器人重心點P在笛卡爾坐標系{X Y O}中的位姿。其中:(x y)表示點P在笛卡爾坐標系中的坐標;θ表示機器人坐標系與笛卡爾坐標系之間的夾角。移動機器人的運動學方程為
x#8226;y#8226;θ#8226;=cos θ0sin θ000vpwp(1)
其中:vP表示P處的線速度;ωP表示P處的角速度。
1.2 移動機器人動力學模型
根據拉格朗日力學分析方法[5],可以得出非完整約束移動機器人動力學模型的公式:
M(q)q#8226;#8226;+Vm(q,q#8226;)q#8226;+F(q#8226;)+G(q)+τd=B(q)τ-AT(q)λ(2)
其中:q為移動機器人位姿向量; M(q)為對稱正定矩陣; Vm(q,q#8226;)q#8226;為向心力和哥氏力項;F(q#8226;)為摩擦力項; G(q)為重力項;τd為未知的有界擾動;A(q)為約束矩陣;λ為約束力; B(q)為輸入變換矩陣;τ為機器人轉矩。
在對雙輪驅動移動機器人非完整約束特性進行分析的基礎上,可以通過引入驅動電機和車體的動力學特性,建立機器人系統的動力學模型。根據文獻[6]的研究結果,本文考慮采用如下的雙輪驅動移動機器人動力學模型:
X#8226;(t)=AX(t)+Bu(t)(3)
其中:狀態向量X=[v θ ω]T,v表示線速度,θ表示機器人坐標系與笛卡爾坐標系之間的夾角,ω為角速度,控制向量u=[τ1 τ2],τ1和τ2為左右輪的輸入轉矩。
A=a10000100a2,
B=b1b100b2-b2
a1=-2c/(Mr2+2Iω),a2=-2cl2/(Ivr2+2Iωl2)
b1=kr/(Mr2+2Iω),b2=krl/(Ivr2+2Iωl2)
其中:驅動輪的間距為2l;驅動輪直徑為r;機器人質量為M;機器人轉動慣量為Iv;驅動輪的轉動慣量為Iω;驅動輪的粘性摩擦系數為c;驅動增益系數為k。
本文假設移動機器人動力學模型未知,控制器的學習優化通過數據驅動來實現。動力學模型僅在仿真中用來產生與移動機器人運動狀態的相關數據。
1.3 控制器的學習優化
移動機器人學習控制系統具有如圖2所示的結構圖,其中電機控制器采用固定的PD控制或者計算力矩控制,學習控制器用于根據當前狀態誤差生成期望的縱向速度和角速度。在控制器學習優化中,參考路徑事先給定,性能優化目標為最小化路徑跟蹤誤差。為實現控制器解耦,本文考慮縱向速度為常數的情形,學習控制器通過改變期望角速度來實現路徑跟蹤控制性能的優化。在移動機器人學習控制模塊中,移動機器人的期望角速度采用PID控制,側向控制律為
ωp(t)=kpe(t)+kde#8226;(t)+ki∑ti=0e(i)(4)
其中:e(t)和e#8226;為移動機器人運動軌跡與期望軌跡的跟隨誤差及其導數;kp 、kd 、ki分別表示跟隨誤差的比例、微分、積分系數。學習控制器通過系數選擇來實現控制器優化。電機控制器采用固定參數的比例控制:
u=Kvω-vdωdT(5)
其中:u為電機扭矩控制向量;K為電機比例控制系數;v、ω為電機輸出的線速度和角速度;vd、ωd為期望的線速度和角速度。
2 移動機器人的學習控制器設計
2.1 移動機器人學習控制的MDP建模
本文首先把移動機器人運動控制器的優化設計問題建模為一個Markov決策問題(Markov decision problem)。馬爾可夫決策問題是以求解馬爾可夫決策過程最優值函數和最優策略為目標的序貫優化決策問題,通常可以定義為五元組(S,A,P,R,γ)。其中:S為狀態空間;A為行為空間;P是馬爾可夫轉移矩陣;R是回報函數;γ是對未來回報的折扣因子。馬爾可夫決策問題的策略定義為π:S→Pr(A)。其中:Pr(A)為在狀態空間的分布概率。
針對雙輪驅動移動機器人的學習控制問題,MDP的狀態定義為三維向量s(t)=[ex,ey,eθ], [ex,ey,eθ]為機器人實際位姿與期望位姿之間的誤差;A={a1,a2,…,an}為有限的動作序列,PID參數采用自學習優化策略,MDP的行為定義為一系列候選PID參數a(t)∈[(kp1,kd1), (kp2,kd2),…,(kpn,kdn)]。根據預先定義的回報函數,通過選擇合適行為來優化移動機器人側向控制性能。為優化雙輪驅動移動機器人路徑跟隨性能,回報函數和目標函數選擇為
rt=c|et|(6)
J=∑Tt=0γtrt(7)
其中:e(t)為移動機器人的路徑跟隨誤差;c為負常數;γ為接近1的折扣因子。優化策略π滿足方程:
Jπ=maxπ Jπ=maxπ Eπ[∑∞t=0γtrt](8)
其中:Jπ為期望總回報。
為逼近MDP最優策略,應用時域差值(temporal difference, TD)方法來逼近值函數。對策略π的值函數和優化策略的優化值函數定義為
Vπ(s)=Eπ[∑∞t=0γtrt|s0=s](9)
V(s)=Eπ*[∑∞t=0γtrt|s0=s](10)
最優狀態—行為值函數采用如下形式:
Q(s,a)=maxπ Qπ(s,a)(11)
通過對最優狀態—行為值函數的逼近Q~(s,a),獲得近似最優策略:
π~(s)=arg maxa Q~π(s,a)(12)
2.2 基于KLSPI的移動機器人學習控制
在將控制器優化設計問題建模為Markov決策過程后,移動機器人學習控制的目標是逼近最優狀態—行為值函數。其主要手段是利用觀測數據{s,a,r,s′,a′}(s′和a′表示(s,a)下一個采樣時刻的狀態和行為)和引入回報函數來實現逼近近似最優策略和最優值函數。利用增強學習算法是解決以上問題的基本手段,但需要研究實現大規模連續空間的策略逼近與泛化問題。
采用傳統函數逼近器的增強學習算法中存在著兩個主要缺點:a)局部收斂性,如基于梯度的學習算法;b)利用值函數逼近器時,其結構難以確定,而結構的好壞直接影響到算法最后的性能。針對移動機器人學習控制的目標,本文提出采用基于核的策略迭代KLSPI算法[7]。在基于KLSPI的增強學習中,利用再生核Hilbert 空間的最小二乘TD 學習(KLSTD-Q)實現高精度的行為值函數逼近,從而有效地保證了算法的收斂速度和對最優策略的逼近能力;另外,在KLSTD-Q 算法中集成了基于近似線性相關分析(ALD)的核稀疏化方法,從而減小核方法的計算與存儲代價,實現了基于核的特征向量的自動構造與優化,降低了算法的復雜性且提高了算法泛化性能。
與文獻[8]中提出的最小二乘策略迭代算法(LSPI)相比,KLSPI很好地解決了特征選擇和優化效率,克服了LSPI算法中需要進行大量手工特征選擇與優化的困難。
下面對用于移動機器人學習控制的KLSPI算法進行簡要分析,有關詳細討論可參見文獻[7]。
KLSPI是一類近似策略迭代方法,由兩個主要組成部分:a)策略評價模塊,是估計一定策略下的狀態—行為的值函數;b)策略改進模塊,是基于對狀態—行為值函數估計來獲得貪心策略。如果基于時域差值學習的策略評價能夠以高精度逼近每次迭代的行為值函數,則策略迭代算法能夠在很少的迭代次數內收斂到馬氏決策過程的近似最優策略。在KLSPI算法中,通過在策略迭代過程中引入Mercer核函數及其對應的再生核Hilbert空間,KLSPI算法可以看做是已有線性空間策略迭代算法的核化算法。通過應用KLSTD-Q算法,行為值函數Q(s,a)的逼近形式為
Q~(s,a)=∑ti=1αik(s(x,a),s(xi,ai))(13)
其中:s(x,a)為狀態—行為對(x,a)的聯合特征;αi(i=1,2,…,t)為加權系數;(xi,ai) (i=1,2,…,t)為采樣數據集合中的樣本點。可以利用公式:
AT=∑Ti=1k(si)[kT(Si)-γkT(Si+1)](14)
bT=∑Ti=1k(si)ri(15)
k(si)=(k(s1,si),k(s2,si),…,k(sT,si))T(16)
求解得出KLSTD-Q中的系數向量:
α=A-1TbT(17)
在KLSPI中需要解決的另一方面的關鍵問題是如何保證解的稀疏性?;诮凭€性相關分析,可以得到一個近似線性無關的維數較低的數據詞典,而其他樣本點則可以通過數據詞典中樣本數據的線性組合近似表示,因此利用數據詞典可以代替原來高維的樣本數據集合。設Dt-1={xj}(j=1,2,…,dt-1)為已經得到的數據詞典集合,則對于一個新的數據樣本(xt),其近似線性相關性可以通過如下不等式進行計算:
δt=minc ‖∑jci(xj)-(xt)‖2≤μ(18)
其中:c=[cj];μ為確定稀疏化程度和線性逼近精度的閾值參數, 通過對參數的選擇,可以有效地實現對核矩陣的稀疏化。
下面給出了KLSPI算法的主要流程。核策略迭代KLSPI算法流程描述如下:
a)給定:正定核函數k(#8226;,#8226;)及其參數;算法的停止條件(如最大迭代次數或者連續兩次策略的誤差)以及稀疏化閾值μ;初始化策略π0,可以隨機生成;馬氏決策過程在初始化策略π0條件下產生的觀測數據集合{(xi,ai,ri,xi+1,ai+1)}。
b)算法初始化:設迭代次數 t=0。
c)循環:
(a) 對于當前的數據集合,采用集成了近似線性相關分析的KLSTD-Q算法進行策略值函數的估計。
(b)計算策略的優化與改進,生成一個新的在當前值函數估計下的貪心策略πt+1。
(c) 利用策略πt+1生成新的數據樣本集合。
(d) t=t+1,返回(a)。
直到滿足算法停止條件,循環結束。
采用上述KLSPI求解得到的策略序列將收斂到一個包含近似最優策略的局部策略空間,其中的近似最優策略與最優策略的性能誤差由KLSTD-Q算法的行為值函數逼近誤差確定的上界。可以得出KLSTD-Q 算法對真實行為值函數的逼近誤差上界公式。
引理[8] 設π[0], π[1], π[2], …, π[m]為策略迭代算法生成的策略序列, Q~1, Q~2,…, Q~m為對應的近似值函數估計,令δ為各次迭代行為值函數逼近誤差的上界,即
m,‖Q~m-Q‖∞≤δ(19)
則策略迭代算法生成的策略序列將最后收斂于一個近似最優策略,且該策略與最優策略的性能誤差具有如下形式的上界:
lim supm→∞‖Q~m-Q‖∞≤2γδ/(1-γ)2(20)
3 仿真研究
為說明應用KLSPI方法設計的學習控制器在雙輪驅動式移動機器人路徑跟隨控制中的效果,本文進行了路徑跟隨控制的仿真研究。
在移動機器人仿真中,機器人的物理模型參數如下:Iv=2.64×10-5kgm2;M=0.07 kg;l=0.025 m;k=68.0;Iω=2.2×10-6kgm2;c=1.0×10-7kgm2/s; r=0.0075 m。仿真中,每個學習周期的初始狀態是隨機的,并在15 s后結束,其中采樣間隔0.05 s。這樣在每個學習周期中采集了300個樣本點。在KLSPI每次迭代中,策略評價用10個周期的采樣數據。為最小化跟隨誤差,MDP的回報函數為
rt=-0.1×|et| |et|>0.0010|et|≤0.001(21)
在仿真中,移動機器人電機控制器采用典型的比例控制實現,其中電機比例控制參數K=0.7。在移動機器人學習控制器中,取ki=0.000 1,在典型的PD參數中選取三組值作為可選參數:{(kpi,kdi)}={(0.6,0.8), (0.7,0.7), (0.8,0.6)}。
學習過程開始的初始策略是隨機產生的,即每組參數的選擇概率一樣。在有先驗知識的情況下,也可以指定初始策略來提高學習過程。在KLSPI中策略評價采用的徑向基核函數的寬度常數設為1.0, 核稀疏化閾值參數為0.01,在基于ALD的核稀疏化過程完成后,自動構造得到維數為184的核特征向量。以跟隨直線為例,在初始側向誤差為0.3 m,速度為0.1 m/s,且速度有擾動情況下進行路徑跟隨控制。在沒有先驗知識情況下,初始策略是隨機選擇PD參數的。KLSPI第一次迭代后側向跟隨誤差,學習控制器的性能雖不讓人很滿意,但在一次學習后性能要比隨機策略好。在七次迭代后,KLSPI方法收斂到近似最優控制策略。
為了比較說明,圖3中顯示用傳統固定參數PD控制方法與本文提出的學習控制方法進行了路徑跟隨效果的對比。圖中橫坐標表示時間(單位:s);縱坐標表示移動機器人在笛卡爾坐標系下y軸坐標值;虛線2、3、4分別表示三組PD參數下路徑跟隨曲線;實線1表示學習后的路徑跟隨曲線。可以明顯地看出,學習控制器可以得到比傳統PD控制更好的路徑跟隨性能。圖4顯示KLSPI在七次迭代后的控制行為,圖中橫坐標表示時間(單位:s);縱坐標表示離散行為;坐標值1、2、3分別代表三組不同的PD系數。可以看出,學習控制器通過較少的迭代就得到優化策略。而且,自學習控制方法更突出的優點是在缺少對移動機器人動力學知識的情況下能通過數據驅動完成自動優化。
4 結束語
路徑跟隨控制是成功應用移動機器人的一個關鍵問題。目前,盡管學術界在路徑跟隨控制方面進行了廣泛的研究,但現有的方法在優化性能方面還有待改進。最近幾年,在增強學習和近似動態規劃方面的研究取得很大的進展,為求解復雜、不確定系統優化控制問題提供了廣闊的應用空間。本文將KLSPI算法應用到雙輪驅動移動機器人路徑跟隨控制中,提出一種新穎的學習控制器設計方法,可以在缺乏機器人動力學先驗模型知識的情況下利用觀測數據來優化控制器性能。對比之前的學習控制方法,應用KLSPI的學習控制器設計方法在特征選擇和學習效率方面具有優勢。
參考文獻:
[1]SUTTON R S, BARTO A G, WILLIAMS R J. Reinforcement lear-ning is direct adaptive optimal control [J]. IEEE Control Syst Mag, 1992,12(2):19-22.
[2]徐昕.增強學習及其在移動機器人導航與控制中的應用研究[D].長沙:國防科技大學,2002.
[3]OH S Y, LEE J H, CHOI D H. A new reinforcement learning vehicle control architecture for vision-based road following [J].IEEE Trans on Vehicular Technology, 2000,49(3):997-1005.
[4]DAI Xiao-hui, LI C K. An approach to tune fuzzy controllers based on reinforcement learning for autonomous vehicle control [J].IEEE Trans on Intelligent Transportation Systems, 2005,6(3):285-293.
[5]DeWIT C C, SORDALEN O J. Exponential stabilization of mobile robots with nonholonomic constraints [J].IEEE Trans on Automatic Control, 1992,37(11):1791-1797.
[6]WATANABE K, IZUMI K. A fuzzy behavior-based control for mobile robots using adaptive fusion units [J].Journal of Intelligent and Robotic Systems, 2005,42(1):27-49.
[7]XU X, HU D W.Kernel-based least-squares policy iteration for reinforcement learning [J].IEEE Trans on Neural Networks, 2007,18(4):937-992.
[8]LAGOUDAKIS M G, PARR R.Least-squares policy iteration [J]. Journal of Machine Learning Research, 2003,4:1107-1149.