張小川,魏建新,郭 魯,吳 杰
(重慶理工大學(xué)人工智能系統(tǒng)研究所,重慶 400054)
近年來(lái),國(guó)際上流行的機(jī)器人足球比賽成為人工智能的標(biāo)準(zhǔn)研究平臺(tái)之一,是研究多機(jī)器人合作與多智能體系統(tǒng)的載體,融合了機(jī)器人學(xué)、人工智能、模式識(shí)別、圖像處理、自動(dòng)控制、通訊、傳感等多個(gè)學(xué)科的知識(shí)。目前,國(guó)際上有組織的機(jī)器人足球比賽有FIRA和RoboCup兩大系列,它們最大區(qū)別在于FIRA主要是采用集中控制方式來(lái)控制足球機(jī)器人,RoboCup主要是采用分布式控制方式來(lái)控制足球機(jī)器人。近年,F(xiàn)IRA也在朝分布式方向發(fā)展。足球機(jī)器人通常包括視覺(jué)、通信、決策和控制子系統(tǒng),其中控制子系統(tǒng)是其最基本、也是最重要的一環(huán)[1]。本文針對(duì)FIRA系列半自主型機(jī)器人足球比賽,探討了足球機(jī)器人如何提高運(yùn)動(dòng)控制性能的問(wèn)題。
足球機(jī)器人運(yùn)動(dòng)控制的目的是使之能精確且快速地實(shí)現(xiàn)點(diǎn)到點(diǎn)以及任意轉(zhuǎn)角的運(yùn)動(dòng),其控制方法通常采用PID控制、模糊控制等。2種控制方法各有優(yōu)缺點(diǎn)。筆者查閱到的研究文獻(xiàn)通常是將它們作為獨(dú)立的控制策略加以應(yīng)用,而沒(méi)有考慮將它們進(jìn)行融合使用。因此,本研究嘗試將PID控制和模糊控制2種策略相結(jié)合,利用遺傳算法優(yōu)化模糊控制規(guī)則和隸屬度函數(shù),提高FIRA MiroSot足球機(jī)器人的運(yùn)動(dòng)控制性能。
在足球機(jī)器人運(yùn)動(dòng)過(guò)程控制中需要考慮的因素很多,但主要因素是偏差e和偏差變化率ec,其中偏差e是變化的,不同位置偏差e值是不同的。在FIRA MiroSot項(xiàng)目中,基本工作流程如圖1所示。
圖1 FIRA MiroSot工作流程簡(jiǎn)圖
圖1中,足球機(jī)器人通過(guò)攝像頭獲取圖像信息,在上位計(jì)算機(jī)(含機(jī)器視覺(jué)識(shí)別系統(tǒng))處理后獲得球場(chǎng)的位置信息,再通過(guò)無(wú)線信號(hào)發(fā)送給下位足球機(jī)器人(含運(yùn)動(dòng)控制器)。上位機(jī)與下位機(jī)信息交互之后,下位機(jī)對(duì)球的信息和足球機(jī)器人的速度進(jìn)行模糊決策[2],依據(jù)決策結(jié)果對(duì)機(jī)器人進(jìn)行實(shí)時(shí)運(yùn)動(dòng)控制,從而實(shí)現(xiàn)機(jī)器人位移的精確控制[3]。本文的足球機(jī)器人模糊PID控制器和工作步驟如圖2所示。
圖2 足球機(jī)器人的模糊PID控制模型
通常PID控制器的控制算式為[4]
比例系數(shù)kp:用于加快系統(tǒng)的響應(yīng)速度,提高系統(tǒng)的調(diào)節(jié)精度。kp越大,系統(tǒng)的響應(yīng)速度越快、調(diào)節(jié)精度越高,但易產(chǎn)生超調(diào)導(dǎo)致系統(tǒng)不穩(wěn)定;kp取值過(guò)小,系統(tǒng)的調(diào)節(jié)精度和響應(yīng)速度都會(huì)下降,延長(zhǎng)調(diào)節(jié)時(shí)間,使系統(tǒng)靜態(tài)、動(dòng)態(tài)誤差特性變壞。
積分系數(shù)ki:用于消除系統(tǒng)的穩(wěn)態(tài)誤差。ki越大,系統(tǒng)的靜態(tài)誤差消除越快,但ki過(guò)大將使響應(yīng)過(guò)程的初期產(chǎn)生積分飽和從而引起較大的超調(diào);ki過(guò)小將使系統(tǒng)的靜態(tài)誤差難以消除,影響系統(tǒng)的調(diào)節(jié)精度。
微分系數(shù)kd:用于改善系統(tǒng)的動(dòng)態(tài)特性。在響應(yīng)過(guò)程中抑制偏差向任何方向的交化,對(duì)偏差變化進(jìn)行提前預(yù)報(bào)。但kd過(guò)大會(huì)使響應(yīng)過(guò)程提前制動(dòng),從而延長(zhǎng)調(diào)節(jié)時(shí)間,降低系統(tǒng)的抗干擾性能。
3個(gè)參數(shù)對(duì)整個(gè)系統(tǒng)控制精度的影響是相互制約和相互影響的。下面綜合考慮系統(tǒng)的穩(wěn)定性、響應(yīng)速度、超調(diào)量和穩(wěn)態(tài)精度,分析不同的e和 ec對(duì)參數(shù) kp、ki、kd調(diào)整的規(guī)則。
1)當(dāng)|e|很大時(shí),控制器的輸出按最大(或最小)輸出,以迅速調(diào)整誤差,使誤差絕對(duì)值以最大速度減小,同時(shí),為了防止積分飽和,應(yīng)取較大kp和較小 kd,ki取零。
2)當(dāng)e*ec>0時(shí),誤差絕對(duì)值朝增大方向變化。應(yīng)加強(qiáng)控制作用,使誤差絕對(duì)值朝減小方向變化,這時(shí)應(yīng)取較大kp(但kd不能太大),同時(shí)取較小 ki。
3)當(dāng)e*ec<0或e=0時(shí),誤差絕對(duì)值朝減小的方向變化或已達(dá)到平衡狀態(tài)。此時(shí)可保持控制器輸出不變。
4)當(dāng)e*ec=0,e≠0時(shí),系統(tǒng)曲線與理論曲線平行或一致。為使系統(tǒng)具有良好的穩(wěn)態(tài)性能,應(yīng)采取較大kp和ki值,同時(shí)為避免在設(shè)定值附近振蕩,并考慮系統(tǒng)的抗干擾性能,適當(dāng)選取kd值。
基于上述考慮,將偏差e和偏差變化率ec作為模糊控制器的輸入,PID控制器的3個(gè)參數(shù)kp、ki和kd作為輸出。設(shè)定輸入變量e和ec語(yǔ)言值的模糊子集為{負(fù)大,負(fù)中,負(fù)小,零,正小,正中,正大},簡(jiǎn)記為{NB,NM,NS,Z,PS,PM,PB}。同樣,設(shè)定輸出量 kp、ki和 kd的模糊子集為{NB,NM,NS,Z,PS,PM,PB}。輸入輸出變量的隸屬函數(shù)的論域均定為[-6,6]。隸屬函數(shù)均選為靈敏度高且在論域范圍內(nèi)均勻分布、等距離的三角形函數(shù)。kp、ki和 kd的模糊控制規(guī)則分別對(duì)應(yīng)于表1~3。
表1 kp的模糊控制規(guī)則
表2 ki的模糊控制規(guī)則
表3 kd的模糊控制規(guī)則
遺傳算法是模仿生物遺傳學(xué)和自然選擇機(jī)理,通過(guò)人工方式構(gòu)造的一類優(yōu)化搜索算法,是對(duì)生物進(jìn)化過(guò)程進(jìn)行的一種數(shù)學(xué)仿真[5-15]。遺傳算法基本思想是:模擬生物系統(tǒng)“適者生存”的原理,通過(guò)選擇、交叉和變異等簡(jiǎn)單操作的多次重復(fù)來(lái)達(dá)到優(yōu)勝劣汰的目的,從而獲得問(wèn)題的最優(yōu)解。遺傳算法的實(shí)現(xiàn)由2部分組成:一是編碼與解碼;二是遺傳操作。遺傳算法作為較早產(chǎn)生的一種進(jìn)化算法,對(duì)對(duì)象模型難于建立、搜索空間非常龐大的復(fù)雜問(wèn)題的優(yōu)化求解有很強(qiáng)的魯棒性和全局收斂性。遺傳算法流程[16]如圖3所示。
本文通過(guò)遺傳算法優(yōu)化模糊PID控制器中的控制規(guī)則和隸屬函數(shù)來(lái)實(shí)現(xiàn)對(duì)機(jī)器人控制系統(tǒng)的優(yōu)化控制。原理如圖4所示。
隸屬度函數(shù)一般根據(jù)實(shí)驗(yàn)逐步修正取得,很難獲得最優(yōu)。模糊隸屬度函數(shù)的常見(jiàn)形式有三角型、正態(tài)型、尖型和梯型等。本文采用三角型,其模糊隸屬度函數(shù)可表示為
其中(ai,mi,bi)為隸屬度函數(shù)參數(shù)。對(duì)n維輸入狀態(tài)(x1,x2,…,xn),依據(jù)規(guī)則集合中第 i條規(guī)則,其模糊輸出的模糊隸屬度為:
u由隸屬函數(shù)的參數(shù)(ai,mi,bi)和輸入狀態(tài)(x1,x2,…,xn)共同決定。在系統(tǒng)輸入變量數(shù)目確定的情況下,合理選擇隸屬函數(shù)的參數(shù)(ai,mi,bi)可使式(4)中J最小。在式(4)中,yi表示系統(tǒng)實(shí)際輸出表示系統(tǒng)理想輸出。
一個(gè)模糊控制系統(tǒng)涉及多個(gè)模糊變量,每個(gè)模糊變量有數(shù)個(gè)子集,每個(gè)子集的模糊隸屬函數(shù)又有n個(gè)參數(shù)。因此,對(duì)整個(gè)系統(tǒng)隸屬函數(shù)參數(shù)優(yōu)化的問(wèn)題就轉(zhuǎn)為滿足式(2)、(3)約束的J最小值的多維尋優(yōu)問(wèn)題。因此遺傳算法可以發(fā)揮其尋優(yōu)作用。本文利用遺傳算法的尋優(yōu)步驟為:
1)確定編碼方案,以待尋優(yōu)的各參數(shù)編碼形成個(gè)體。
2)確定各參數(shù)的變化范圍,建立基因與參數(shù)間的一一對(duì)應(yīng)關(guān)系。
3)按系統(tǒng)尋優(yōu)目標(biāo),構(gòu)造適應(yīng)度函數(shù)F。
4)利用遺傳算法尋優(yōu)求解,得到滿足系統(tǒng)性能指標(biāo)的最優(yōu)隸屬函數(shù)參數(shù)。
2.4.1 模糊PID控制規(guī)則的編碼方式
在該系統(tǒng)優(yōu)化設(shè)計(jì)中,采用二進(jìn)制編碼[17]字符串來(lái)編碼。待優(yōu)化的規(guī)則共49條,將每條控制規(guī)則用4位二進(jìn)制數(shù)表示,其中第1位為控制位,另3位為規(guī)則表示位,然后串接成一條染色體。這樣,控制規(guī)則經(jīng)過(guò)二進(jìn)制編碼得到的規(guī)則染色體是由49位控制基因和3×49位規(guī)則基因構(gòu)成。將前面的模糊語(yǔ)言值{NB,NM,NS,Z,PS,PM,PB}分別用3位二進(jìn)制數(shù)表示為{000,001,010,011,100,101,110},通過(guò)控制基因?qū)崿F(xiàn)對(duì)規(guī)則基因的單層控制,即:第1位為“0”代表不起作用,為“1”代表起作用。
2.4.2 體適應(yīng)度函數(shù)F的確定
遺傳算法在優(yōu)化搜索中基本不利用外部信息,僅以適應(yīng)值函數(shù)為依據(jù),利用種群中每個(gè)個(gè)體的適應(yīng)度值進(jìn)行搜索。適應(yīng)度函數(shù)的選取直接影響到遺傳算法的收斂速度以及能否找到最優(yōu)解[18],這里目標(biāo)函數(shù)采用ITAE積分性能指標(biāo)
這種目標(biāo)函數(shù)用于控制系統(tǒng)的優(yōu)化,綜合評(píng)價(jià)控制系統(tǒng)的響應(yīng)時(shí)間、超調(diào)量等。由于遺傳操作是根據(jù)適值大小進(jìn)行的,且適值是非負(fù)的,而目標(biāo)函數(shù)的優(yōu)化方向應(yīng)對(duì)應(yīng)于適值增加的方向,所以選用Fcn的負(fù)值作為適值函數(shù),即F=-J。
運(yùn)行參數(shù)包括群體大小M、遺傳代數(shù)T、變異概率pm、交叉概率pc等。根據(jù)實(shí)際情況,本文M=100,T=50,pm=0.008,pc=0.9。
FIRA MiroSot足球機(jī)器人是一個(gè)體積為7.5 cm ×7.5 cm ×7.5 cm 的雙輪小車,驅(qū)動(dòng)部件為直流電機(jī)。為了檢驗(yàn)遺傳算法模糊PID控制系統(tǒng)的性能,實(shí)驗(yàn)中用系統(tǒng)偏差e和偏差變化率ec分別表示足球機(jī)器人輪速變化量和輪加速度變化量,并將其作為模糊控制器的輸入,進(jìn)行了大量的仿真實(shí)驗(yàn)。下面以一階時(shí)滯系統(tǒng)作為被控對(duì)象進(jìn)行仿真實(shí)驗(yàn)。設(shè)被控對(duì)象為
在速度控制中單一的PID控制與遺傳算法模糊PID控制的效果比較如圖5所示。從圖5中可以看出,遺傳算法模糊PID控制系統(tǒng)超調(diào)量小、響應(yīng)快、穩(wěn)態(tài)誤差小,性能遠(yuǎn)遠(yuǎn)優(yōu)于傳統(tǒng)PID控制。
圖5 轉(zhuǎn)速控制啟動(dòng)的曲線
本文以FIRA MiroSot足球機(jī)器人為研究平臺(tái),引進(jìn)遺傳算法,改進(jìn)了模糊PID控制系統(tǒng),提高了足球機(jī)器人的魯棒性能。從仿真結(jié)果可以看出,引入遺傳算法之后的模糊PID控制與常規(guī)PID控制相比,控制調(diào)節(jié)更平穩(wěn),控制速度更快。即使在系統(tǒng)控制參數(shù)發(fā)生變化或擾動(dòng)時(shí),該控制系統(tǒng)的動(dòng)態(tài)品質(zhì)劣化程度也較小,克服了系統(tǒng)時(shí)滯、非線性等缺點(diǎn),增強(qiáng)了足球機(jī)器人運(yùn)動(dòng)系統(tǒng)的準(zhǔn)確性和穩(wěn)定性,縮短了動(dòng)態(tài)調(diào)整時(shí)間。
[1]高大志.機(jī)器人足球,智能機(jī)器人的新領(lǐng)域[C]//機(jī)器人足球研討班論文集.沈陽(yáng):[出版者不詳],1998.
[2]GAO Yong-yan,F(xiàn)RANK P M.Analysis and synthesis of nonlinear time-delay systems via fuzzy control approach[J].IEEE Trans on Fuzzy Systems,2002,3(2):200-211.
[3]UDDIN M N,ABIDO M A.Real-time performance evaluation of a genetic algorithm based fuzzy logic controller for IPM motor drivers[J].IEEE Trans on Ind Applicat,2005,41(1):246-252.
[4]吳全玉,張曉東,晁曉琪,等.基于經(jīng)典PID算法的智能車系統(tǒng)研究[J].自動(dòng)化與儀器儀表,2011(1):25-26.
[5]李祖樞,謝汝林,張小川,等.人工生命體行為選擇及其進(jìn)化研究[J].模式識(shí)別與人工智能,2005,18(3):303-309.
[6]張小川,陳光年.六子棋博弈評(píng)估函數(shù)的研究[J].重慶理工大學(xué)學(xué)報(bào):自然科學(xué)版,2010(2):64-68.
[7]邊霞,米良.遺傳算法理論及其應(yīng)用研究進(jìn)展[J].計(jì)算機(jī)應(yīng)用研究,2010,27(7):18-23.
[8]郝艷偉.李祖樞.一種改進(jìn)的遺傳規(guī)劃算法[J].重慶理工大學(xué)學(xué)報(bào):自然科學(xué)版,2011(4):74-78.
[9]王越,許全文,黃麗豐.基于改進(jìn)遺傳算法的連續(xù)函數(shù)優(yōu)化[J].重慶理工大學(xué)學(xué)報(bào):自然科學(xué)版,2011(2):62-67.
[10]張勇,王新賽,賀菁.基于遺傳算法的戰(zhàn)時(shí)維修保障力量分配方法[J].四川兵工學(xué)報(bào),2011(2):130-131.
[11]朱文斌,李國(guó)林.遺傳算法在武器裝備保障資源優(yōu)化中的應(yīng)用[J].四川兵工學(xué)報(bào),2011(5):85-87.
[12]路彬彬,賈振紅,何迪.基于新的遺傳算法的模糊C均值聚類用于遙感圖像分割[J].激光雜志,2010(6):15-17.
[13]范巧艷,艾斯卡爾·艾木都拉.遺傳算法優(yōu)化RBF網(wǎng)絡(luò)的圖像雜波抑制技術(shù)研究[J].激光雜志,2010(2):11-13.
[14]劉文濤.基于改進(jìn)遺傳算法的網(wǎng)絡(luò)入侵檢測(cè)[J].重慶工商大學(xué)學(xué)報(bào):自然科學(xué)版,2010(5):476-480.
[15]李宏偉.基于改進(jìn)遺傳算法的電力系統(tǒng)無(wú)功優(yōu)化的研究[J].自動(dòng)化與儀器儀表,2011(6):7-11.
[16]周宜今.遺傳算法原理及應(yīng)用實(shí)例[M].北京:兵器工業(yè)出版社,2010.
[17]王晶,李玉蘭,蔡自興,等.基于遺傳算法的模糊系統(tǒng)優(yōu)化設(shè)計(jì)方法[J].控制理論與應(yīng)用,1999,16(5):699-704.
[18]馬長(zhǎng)華,于世海,朱傳興,等.基于遺傳算法的模糊控制規(guī)則優(yōu)化的研究[J].江蘇大學(xué)學(xué)報(bào):自然科學(xué)版,2003,24(4):69-73.