陳杰 程勝 徐夢
摘要:模糊控制是相對于傳統(tǒng)自動控制領(lǐng)域精確控制而言的一種非線性的系統(tǒng)智能控制方法,模糊控制通過對觀測量進(jìn)行模糊化,建立模糊控制規(guī)則以及模糊推理三個步驟實(shí)現(xiàn)模糊??刂啤=Y(jié)合智能算法進(jìn)行智能體的控制方法的研究一直是國內(nèi)外學(xué)者熱切關(guān)注的問題,本文針對智能體的追蹤問題提出了一種使用模糊控制的方法進(jìn)行目標(biāo)的追蹤。試驗(yàn)結(jié)果證明,本文提出的方法能夠有效地實(shí)現(xiàn)智能體的目標(biāo)追蹤。
關(guān)鍵詞:模糊控制;模糊推理;智能體;追蹤
中圖分類號:TP13 文獻(xiàn)標(biāo)識碼:A
在經(jīng)典的控制領(lǐng)域里,控制系統(tǒng)的優(yōu)劣的最重要的評價標(biāo)準(zhǔn)是控制系統(tǒng)動態(tài)模式是否精確或是控制精度的高低,系統(tǒng)的動態(tài)控制信息越詳細(xì),就越能使控制更加精確。通常地,對于復(fù)雜的系統(tǒng),由于變量太多,難以精確地描述動態(tài)系統(tǒng),于是工程師便利用各種方法來簡化系統(tǒng)動態(tài),以達(dá)成控制的目的,但卻不盡理想。換言之,傳統(tǒng)的控制理論對于明確系統(tǒng)有強(qiáng)而有力的控制能力,但對于過于復(fù)雜或難以精確描述的系統(tǒng),則顯得無能為力,因此就會使用模糊控制的方法進(jìn)行智能體的控制[1,2]。智能體的決策與控制在軍事、生活、生產(chǎn)領(lǐng)域應(yīng)用廣泛,如在多機(jī)器人協(xié)同運(yùn)動、無人機(jī)編隊(duì)飛行等[3~8]。
參考文獻(xiàn)[9]采用了一種變論域自適應(yīng)模糊控制的方法實(shí)現(xiàn)了四級倒立擺的仿真控制試驗(yàn),并且通過試驗(yàn)驗(yàn)證了該方法不僅可以使得倒立擺小車行走到指定的位置還具有良好的穩(wěn)定性與魯棒性。參考文獻(xiàn)[10]使用了一種基于遺傳算法自動尋優(yōu)隸屬度函數(shù)參數(shù)和模糊控制規(guī)則的水下機(jī)器人模糊控制器的智能控制方法,最后通過仿真試驗(yàn)驗(yàn)證了所提出的方法相比傳統(tǒng)的模糊控制方法具有相應(yīng)快、超調(diào)小的特點(diǎn)。參考文獻(xiàn)[11]以移動機(jī)器人導(dǎo)航問題為研究背景,提出了一種基于強(qiáng)化學(xué)習(xí)的機(jī)器人模糊邏輯控制器,解決了移動機(jī)器人在未知環(huán)境下的導(dǎo)航問題,同時該控制器在未知環(huán)境下具有較強(qiáng)的適應(yīng)性。
本文針對智能體的二維平面控制方法進(jìn)行研究,傳統(tǒng)的自動化控制方法需要構(gòu)建精準(zhǔn)的控制模型,但是構(gòu)建模型往往需要投人較多的時間和成本,因此,本文提出了一種基于模糊理論的智能體控制方法,并在追蹤場景中進(jìn)行了驗(yàn)證。根據(jù)模糊控制的相關(guān)原理,首先定義一組觀測量,然后對觀測量進(jìn)行模糊化,并將觀測量輸入到模糊控制器中。模糊控制器得到輸出值經(jīng)過一種基于加權(quán)平均法的模糊決策方法計(jì)算得到了最終的決策量,進(jìn)而控制智能體的合理運(yùn)動。
1 模糊控制與智能體平面運(yùn)動算法
1.1 模糊控制
對于一些具體的工程應(yīng)用問題,有些難以使用精確控制的方法進(jìn)行控制,因此通常使用模糊控制的方法進(jìn)行控制。模糊控制器[4]包括以下4部分。
(1)模糊化
主要作用是選定模糊控制器的輸入量,并將其轉(zhuǎn)換為系統(tǒng)可識別的模糊量,具體包含以下三步:第一,對輸入量進(jìn)行滿足模糊控制需求的處理;第二,對輸入量進(jìn)行尺度變換;第三,確定各輸入量的模糊語言取值和相應(yīng)的隸屬度函數(shù)。
(2)規(guī)則庫
根據(jù)人類專家的經(jīng)驗(yàn)建立模糊規(guī)則庫。模糊規(guī)則庫包含眾多控制規(guī)則,是從實(shí)際控制經(jīng)驗(yàn)過渡到模糊控制器的關(guān)鍵步驟。
(3)模糊推理
主要實(shí)現(xiàn)基于知識的推理決策[5]。
儼)解模糊
主要作用是將推理得到的控制量轉(zhuǎn)化為控制輸出。
1.2 智能體的平面運(yùn)動控制算法
如圖1所示,被追蹤智能體(紅球)在平面內(nèi)做勻速圓周運(yùn)動,運(yùn)動半徑為0.15,運(yùn)動軌跡與x軸與y軸相切,智能體的初始位置是(0.3,0)?;驹砣缦?。
在任意時刻,智能體的坐標(biāo)使用參數(shù)方程表示為:
x=R+Rcosθ
y=R十Rsinθ
代碼實(shí)現(xiàn):
Alphas=PI/50;//運(yùn)動角度,調(diào)節(jié)可以控制速度
cs=cos(alphas);//cos
ss=sin(alphas);//sin
x0=0.15+radiums*cs; //radiums為半徑
y0=0.15+radiums*ss;//獲得位置坐標(biāo)
SetBalllPos(x0,y0);//發(fā)布位置信息
SetBalllPos(x0,y0)函數(shù)在ShareSection.h中注冊與實(shí)現(xiàn)
FUZZY_EXPORT_API void SetBalllPOS(double x,double y);
void SetBa111Pos(doublex,doubley)
{
BaIIO_x=x;
Ba110_y=y;
}
對于物理運(yùn)動來說,運(yùn)動有合成和分解的性質(zhì)[6],針對要分別控制x軸和y軸上的加速度,所以本文對于整個運(yùn)動的控制也分為x方向和y方向。以下的敘述說明中,本文將以x軸為主導(dǎo)'y軸同理。
2 模糊化
2.1 定義觀測量和控制量
在兩個智能體之間,我們定義兩個觀測量,分別是兩智能體的相對位置distance和相對速度speed(相對位置的變化量)。本文中的相對的意義是追擊智能體減去被追擊智能體的相對量。定義控制量為控制第二個智能體在x方向上的加速度。
2.2 模糊化
2.2.1 觀測量1
兩智能體的相對位置distance x表示:
定義相對位置以在x軸上的相對位置為例,y軸上相同,觀測量為正大(PBd)、正小(PSd)、零(Zd)、負(fù)?。∟Sd)、負(fù)t(NBd)這5個元素組成的模糊集合,其中:
x={-0.3,-0.2,-0.1,0,0.1,0.2,0.3}
隸屬函數(shù)見表1。
2.2.2 觀測量2
相對速度speed∈Y表示:
定義相對速度以在x軸上的相對速度為例}Y軸上相同,觀測量為正大(PBS)、正小PSS(PSS)、零Zs(Zs)、負(fù)?。∟Ss)、負(fù)大NBs(NBs)這5個元素組成的模糊集合,其中:
y={-0.003,-0.002,-0.001,0,0.001,0.002,0.003}
隸屬函數(shù)見表2。
控制量:輸出的控制量為智能體在x方向的加速度分量,對于a∈Z,它的模糊集合的論域?yàn)椋?/p>
z={-0.002,-0.0005,-0.0001,0,0.0001,0.0002,0.0005}
追擊智能體可以分解為在x軸與Y軸的加速度,考慮在x軸的加速度,y軸同理。加速度為PBa、PSa、Za、NSa、NBa這5個元素的模糊集合。隸屬度函數(shù)見表3。
3 建立模糊規(guī)則
本文中所采用的模糊控制器為雙輸入單輸出的模糊控制器[7],模糊控制器的控制規(guī)則采用模糊條件語句:若A且B則C。根據(jù)前面定義的觀測量和控制量的表示符號,得到如表4所示的控制規(guī)則表。
由表4可得25條模糊規(guī)則:
規(guī)則1:若NBd且PBs,則PSa
規(guī)則2:若NSd且PBs,則PSash
…
…
規(guī)則25:若PBd且NBs,則NSa
上面的每一個模糊規(guī)則都對應(yīng)一個模糊關(guān)系,如規(guī)則1:若NBd且PBs,則PSa就對應(yīng):
R=s(NBd·PBs)·PSa(2)式中:s(NBd·PBs)表示將矩陣NBd·PBs“拉直”為單列。這樣,25條模糊規(guī)則對應(yīng)25個模糊關(guān)系:R1、R2,…,R25,而總的模糊關(guān)系R為:
R=R1UR2U...UR25(3)
對于任意的觀測量distance和speed,我們把它模糊化后分別化為x、y后:
Ace=t(x·y)·R式中:Acc為加速度,t(X·Y)表示把x·Y拉直為行矢量。
4 模糊決策
本文采用的決策方法是加權(quán)平均法,選取元素的隸屬度為權(quán)系數(shù)。則有最終的決策量為:
使用模糊控制進(jìn)行智能體追蹤的基本框架如圖2所示。
5 試驗(yàn)分析
試驗(yàn)在VC++6.0[8]下進(jìn)行,首先搭建智能體追擊仿真平臺,在平面內(nèi)有紅球作為被追蹤目標(biāo),黃球作為追擊球,紅球在平面內(nèi)作勻速圓周運(yùn)動,黃球進(jìn)行追蹤,試驗(yàn)截圖如圖3所示。
在智能體追蹤試驗(yàn)中,紅球做勻速圓周運(yùn)動,初始位置為(0.3,0);運(yùn)動半徑為0.15,以恒定的線速度運(yùn)動,使用模糊控制控制黃球?qū)t球進(jìn)行追蹤,在追蹤過程中,黃球始終保持在紅球的附近,對紅球“窮追不舍”。同時在試驗(yàn)中當(dāng)紅球距離黃球很遠(yuǎn)時,紅球加速追擊,當(dāng)距離較近時,黃球加速度減小,當(dāng)紅球運(yùn)動速度改變頻繁時,追擊球也就是黃球會出現(xiàn)“來回?fù)u擺”的現(xiàn)象。這種現(xiàn)象說明模糊控制容易出現(xiàn)抖動,這是由于模糊控制是一種非線性的控制方式,而并非是一種精確的控制方式導(dǎo)致,但是這種波動是在可以接受的范圍內(nèi)。當(dāng)加速度論域選擇過小時,黃球有追擊的趨勢,但是始終很難追擊到,論域選擇過大時,黃球可能會出現(xiàn)“追過頭”的情況,追蹤效果不好,因此選擇合理的論域很重要。
6 結(jié)束語
在非線性復(fù)雜系統(tǒng)的控制中,經(jīng)典的自動控制方需要建立精確的運(yùn)動控制模型,但是建立模型往往需要花費(fèi)很多的時間和成本,而模糊控制相對于經(jīng)典的自動化控制方法不需要事先建立精準(zhǔn)的控制模型。本文提出了一種使用模糊控制理論的智能體追蹤控制方法。該方法通過設(shè)計(jì)模糊輸入、模糊控制規(guī)則、模糊決策三個模塊構(gòu)建了一套完整的模糊控制器,并通過試驗(yàn)驗(yàn)證了本文提出方法具有良好的效果。隨著模糊控制技術(shù)的不斷進(jìn)步,模糊控制理論將會在機(jī)器人與自動化控制中有著越來越廣泛的應(yīng)用。
參考文獻(xiàn)
[1]楊倫樂.基于T-S模糊雙線性模型的非線性系統(tǒng)分析與控制[D].西安:西安電子科技大學(xué),2011.
[2]苗紅宇.基于PLC的模糊控制在香皂生產(chǎn)電氣控制系統(tǒng)中的應(yīng)用[D].天津:天津大學(xué),2007.
[3]康元磊.基于蜂擁控制算法的多智能體編隊(duì)控制研究[D].北京:北京交通大學(xué),2013.
[4]張曉倩,宋曉茹.基于T-S模糊控制器的網(wǎng)絡(luò)控制系統(tǒng)仿真研究[J].計(jì)算技術(shù)與自動化,2017,36(2):37-40.
[5]張永亮,趙廣超,陳希亮,等.基于知識的指控系統(tǒng)智能決策關(guān)鍵技術(shù)研究[J].微型機(jī)與應(yīng)用,2017,36(2):56-59.
[6]Yan B T,Gao X Y,Zhang B Q,et al.Movement decompositionmeasurement of human energy expenditure and efficiency[J].Chinese Journal of Clinical Rehabilitation,2006,10(40):34-36.
[7]Tairidis G,F(xiàn)outsitzi G,Koutsianitis P,et al.Fine tuning of afuzzy controller for vibration suppression of smart plates usinggenetic algorithms[J].Advances in Engineering Software,2016,101(03):123-135.
[8]Pan Jiateng.wC/OS-11 Porting feasibility analysis based on VC6.0[R].Shanghai Maritime University,2018.
[9]李洪興,苗志宏,王加銀,等.四級倒立擺的變論域自適應(yīng)模糊控制[J].中國科學(xué):技術(shù)科學(xué),2002,32(1):65-75.
[10]于華男,戴軍,徐玉如,等.基于遺傳算法的水下機(jī)器人模糊控制器優(yōu)化設(shè)計(jì)[J].哈爾濱工程大學(xué)學(xué)報,2002,23(5):12-15.
[11]段勇,劉興剛,徐心和.基于強(qiáng)化學(xué)習(xí)的機(jī)器人模糊控制系統(tǒng)設(shè)計(jì)[J].系統(tǒng)仿真學(xué)報,2006,18(6):182-185.