朱曼曼, 杜 煜, 張永華, 宋曉帥, 李 強(qiáng)
(1. 北京聯(lián)合大學(xué) 信息學(xué)院, 北京 100101; 2. 北京聯(lián)合大學(xué) 機(jī)器人學(xué)院, 北京 100101)
?
基于模糊邏輯的智能車局部路徑規(guī)劃
朱曼曼1, 杜 煜2, 張永華1, 宋曉帥1, 李 強(qiáng)1
(1. 北京聯(lián)合大學(xué) 信息學(xué)院, 北京 100101; 2. 北京聯(lián)合大學(xué) 機(jī)器人學(xué)院, 北京 100101)
為進(jìn)行智能車局部路徑規(guī)劃,提出了基于模糊邏輯的路徑規(guī)劃。針對模糊邏輯在智能車局部路徑規(guī)劃中存在的問題,引入多次轉(zhuǎn)動避障的策略,使智能車有效避免死鎖發(fā)生,進(jìn)而實(shí)現(xiàn)智能車的路徑規(guī)劃。
智能車;局部路徑規(guī)劃;模糊邏輯;多次轉(zhuǎn)動避障
在智能車技術(shù)領(lǐng)域中,路徑規(guī)劃是不可或缺的組成部分。智能車的路徑規(guī)劃主要解決三個(gè)問題:[1]使智能車從起始點(diǎn)到達(dá)目標(biāo)點(diǎn);運(yùn)動過程中,安全無碰撞地避開所有的障礙物;運(yùn)動軌跡達(dá)到最優(yōu)或次優(yōu)的狀態(tài)。簡言之,路徑規(guī)劃就是在具有障礙物的環(huán)境下,尋找一條從起始點(diǎn)到目標(biāo)點(diǎn)的最優(yōu)或次優(yōu)的無碰撞路徑。根據(jù)智能車對環(huán)境信息的獲取情況,路徑規(guī)劃分為環(huán)境信息完全已知的全局路徑規(guī)劃和部分已知或完全未知的局部路徑規(guī)劃。由于前者生成的是一粗略路徑,而在智能車正常行駛時(shí),必須結(jié)合局部環(huán)境信息和智能車自身狀態(tài)信息,動態(tài)規(guī)劃出無碰撞局部路徑。[2]
針對現(xiàn)有算法VFH局部路徑規(guī)劃的環(huán)境分辨率高與信息存儲量大的矛盾、會使智能車陷入局部震蕩與死鎖的狀況及在不考慮智能車寬度等特性的前提下把智能車當(dāng)作一個(gè)點(diǎn)來處理的問題,模糊邏輯則占一定的優(yōu)勢?;趥鞲衅鞲兄沫h(huán)境信息,模糊邏輯模擬駕駛員的駕駛思想進(jìn)行局部環(huán)境的路徑規(guī)劃。在避開傳統(tǒng)算法定位精度敏感、環(huán)境信息依賴性強(qiáng)等缺點(diǎn)的情況下,模糊邏輯存在著“對稱無法確定”的問題[3],通過多次轉(zhuǎn)動避障,彌補(bǔ)了死鎖發(fā)生后再去解決的傳統(tǒng)解決死鎖模式[4],規(guī)劃出更優(yōu)的智能車局部路徑。
模糊控制器的設(shè)計(jì)原理如圖1所示,通過確定模糊控制器的輸入輸出變量、模糊語言及隸屬度函數(shù),建立模糊控制規(guī)則,然后模糊推理輸出量的隸屬度,最后通過解模糊過程將模糊推理結(jié)果轉(zhuǎn)化為精確值,進(jìn)而控制或驅(qū)動執(zhí)行結(jié)構(gòu)。
在整個(gè)模糊控制器的設(shè)計(jì)中,模糊推理模型采用Mamdani算法的簡單模糊推理模型,多維、多重或多維多重的模糊推理模型均可以轉(zhuǎn)換為簡單模糊推理模型。簡單模糊推理模型FMP常被表達(dá)為:A*ο(A→B)=A*οR=B*,其中“ο”表示推理合成算法,A和A*是論域U的模糊子集,B和B*是論域V的模糊子集,A—>B通??醋鲝腢到V的一個(gè)模糊關(guān)系R。根據(jù)Mamdani模糊推理方法便可以求取模糊關(guān)系矩陣。
Mamdani的關(guān)系生成算法取為min運(yùn)算:R(x,y)=(A→B)(x,y)=A(x)∧B(y)=(A×B)(x,y),即來自U和V的一對元素(x,y)有Fuzzy關(guān)系R=A→B,其程度為R(x,y)=(A→B)(x,y)=A(x)∧B(y)=min{A(x),B(y)}。
推理合成算法取為max-min復(fù)合運(yùn)算:B*(y)=(A*οR)(y)=∨[A*(x)∧R(x,y)],即B*(y)=[A*ο(A→B)](y)=∨[A*(x)∧(A→B)(x,y)],其中x∈U。
將關(guān)系生成算法與推理合成算法合并到一起即得
(1)
2.1 輸入輸出變量的確立及模糊語言描述
整個(gè)模糊控制系統(tǒng)構(gòu)成了一個(gè)有2個(gè)輸入、1個(gè)輸出的多輸入單輸出模糊系統(tǒng),取智能車前進(jìn)方向的左、前、右三面障礙物與智能車的最近距離D=min{Dl,Df,Dr}和最近障礙物相對于目標(biāo)方向之間的夾角α={αlorαforαr}作為控制器的輸入,輸出則為智能車舵機(jī)輸出轉(zhuǎn)角β,詳見圖2。
取D的范圍為[0,20],α的范圍為[-180°,180°],β的范圍為[-45°,45°],由于各變量取值范圍各異,故首先將各基本論域量化到一個(gè)標(biāo)準(zhǔn)化論域上,將它們均量化到[-4,4]區(qū)間內(nèi),論域是[-4,-3,-2,-1,0,1,2,3,4]。定義變量D的模糊語言為{VS,S,M,B,VB},變量α、β的為{NB,NS,Z,PS,PB},字母含義為(V:Very,M:Middle,S:Small,B:Big,N:Negative,Z:Zero,P:Positive),規(guī)定目標(biāo)在障礙物右側(cè)為正,左側(cè)為負(fù),智能車舵機(jī)向右轉(zhuǎn)動角度為正,否則為負(fù)。
2.2 隸屬度函數(shù)的選擇
取各個(gè)變量的隸屬度函數(shù)形狀為對稱的三角形且模糊分割是對稱的,變量D的隸屬度函數(shù)如圖3所示,變量α及β的隸屬度函數(shù)相同,如圖4所示。
2.3 模糊控制規(guī)則的建立
基于專家知識經(jīng)驗(yàn),模糊控制系統(tǒng)采用一系列的語言來描述模糊控制規(guī)則。建立模糊控制規(guī)則是一個(gè)核心問題。[5]確定模糊控制規(guī)則的原則必須保證控制器的輸出能夠使系統(tǒng)輸出響應(yīng)的動靜態(tài)特性達(dá)到最佳。依據(jù)障礙物位置、目標(biāo)方位角的傳感器信息,給出機(jī)器人到達(dá)目標(biāo)的策略。當(dāng)探測到障礙物接近機(jī)器人時(shí),機(jī)器人通過改變運(yùn)動軌跡來避免碰撞。具體控制規(guī)則見表1,供推理使用。借助Matlab 2014仿真平臺中的模糊推理輸入輸出曲面觀察器[6],可以觀測到輸入輸出關(guān)系圖,如圖5所示。
表1 模糊控制規(guī)則表
2.4 模糊推理及解模糊
模糊推理,是進(jìn)行關(guān)系生成及推理合成問題的解決。[7]它是模糊控制器的核心,具有模擬人的基于模糊概念的推理能力。在模糊推理中,存在著多種不同的關(guān)系生成及推理合成算法。本文通過Mamdani模糊推理方法求取模糊關(guān)系矩陣,如式(1)。在Mamdani模糊推理中,關(guān)系生成算法取為min運(yùn)算;推理合成算法取為max-min復(fù)合運(yùn)算。
通過模糊推理得到的是模糊量,只有將模糊量轉(zhuǎn)換成清晰量才可以施加于對象,因此清晰化(亦作去模糊)便扮演重要轉(zhuǎn)換角色。其實(shí),清晰化就是將模糊推理后得到的模糊集轉(zhuǎn)換為用作控制的數(shù)字值的過程。其涉及的方法很多,比如最大隸屬度法、加權(quán)平均法(亦稱重心法、質(zhì)心法或面積中心法)等。程序仿真采用加權(quán)平均法,它是所有解模糊方法中最為合理、流行和引人關(guān)注的方法。
多次轉(zhuǎn)動避障,即當(dāng)智能車根據(jù)舵機(jī)打角β轉(zhuǎn)動后,并不立即前進(jìn)某一固定步長,而是探測前方障礙物距離是否大于某一固定步長,若大于,則前進(jìn),否則不前進(jìn),并按一定方向(假定向右)連續(xù)偏轉(zhuǎn)一定角度繼續(xù)探測,直到找到一個(gè)安全的前進(jìn)方向。至于智能車向左還是向右偏轉(zhuǎn),則引入一轉(zhuǎn)向標(biāo)志F,如果F=1,則智能車向右偏轉(zhuǎn),如果F=-1,則智能車向左偏轉(zhuǎn),初始化F=0。根據(jù)F的取值,智能車做出相應(yīng)的動作。談及F的1或-1取值,模糊輸出的舵機(jī)打角β起到一定的決定作用。當(dāng)β為正值時(shí),設(shè)置F為1,智能車向右偏轉(zhuǎn)一定的角度。反之,設(shè)置F為-1。
當(dāng)智能車探測到危險(xiǎn)區(qū)域時(shí),通過設(shè)置F值將模糊避障與多次轉(zhuǎn)動避障相結(jié)合,使智能車沿障礙物邊緣行走繞出障礙物,達(dá)到預(yù)防死鎖的目的。
在多次轉(zhuǎn)動避障運(yùn)行的時(shí)候,如果連續(xù)N次轉(zhuǎn)動轉(zhuǎn)角β后智能車都是直接前進(jìn)某一固定步長,則認(rèn)為智能車已成功避開危險(xiǎn)區(qū)域,將轉(zhuǎn)向標(biāo)志F置為0,解除多次轉(zhuǎn)動避障的機(jī)制。根據(jù)障礙物的危險(xiǎn)等級,默認(rèn)N=3,如果連續(xù)4次都是經(jīng)過多次轉(zhuǎn)動避障后智能車才前進(jìn)某一固定步長的,則N=6,此時(shí)障礙物邊緣很長,危險(xiǎn)性高。
在采用模糊避障與多次轉(zhuǎn)動避障相結(jié)合進(jìn)行路徑規(guī)劃的情況下,通過理論知識的描述,借助Microsoft Visual Studio 2010平臺及Opencv跨平臺計(jì)算機(jī)視覺庫,智能車局部路徑規(guī)劃的實(shí)驗(yàn)仿真便得以實(shí)現(xiàn)。在仿真中,首先需要建立環(huán)境地圖,包括智能車可能遇到的障礙物的坐標(biāo)、尺寸等;其次,模擬智能車的初始位置、目的地的位置等信息;最后,基于模糊邏輯設(shè)計(jì)智能車控制器,進(jìn)而得到智能車的驅(qū)動指令。算法仿真結(jié)果大致如圖6、圖7、圖8所示。
由于符合人類思維習(xí)慣,模糊邏輯不需要建立精確的數(shù)學(xué)模型。在將專家知識經(jīng)驗(yàn)直接轉(zhuǎn)換為控制信號的優(yōu)點(diǎn)之下,模糊邏輯已經(jīng)成為智能車導(dǎo)航的一種重要方法,并得到了廣泛的應(yīng)用。智能車從局部最優(yōu)進(jìn)行路徑規(guī)劃,即在當(dāng)前看來是最好的選擇,從而使最終結(jié)果接近最優(yōu)路徑。在處理死鎖問題時(shí),采用模糊避障與多次轉(zhuǎn)動避障相結(jié)合的預(yù)防死鎖機(jī)制,有效避免死鎖的發(fā)生。實(shí)驗(yàn)表明,在采用模糊邏輯的前提下,智能車能規(guī)劃出一條安全有效的無碰撞路徑。
[1] 鄒小兵,蔡自興.基于傳感器信息的環(huán)境非光滑建模[J].自然科學(xué)進(jìn)展,2002,12(11):1188-1192.
[2] 龍飛.動態(tài)未知環(huán)境中的機(jī)器人路徑規(guī)劃方法研究[D].武漢:華中科技大學(xué),2005:23.
[3] Goodridge S G.A fuzzy behavior-based nervous system for an autonomous mobile robot[D].Raleigh:Department of Electrical and Computer Engineering,North Carolina State University, 1994.
[4] 李鵬,溫素芳.基于模糊控制的路徑規(guī)劃算法的實(shí)現(xiàn)[J].杭州電子科技大學(xué)學(xué)報(bào),2007,27(6):82.
[5] 高慶吉,雷亞莉,胡丹丹,等.基于自適應(yīng)感知復(fù)位算法的移動機(jī)器人定位[J].電子學(xué)報(bào), 2007, 35(11): 2166-2171.
[6] 諸靜.模糊控制原理與應(yīng)用——電氣自動化新技術(shù)叢書[M].北京:機(jī)械工業(yè)出版社,2005.
[7] 鄭亞林,黃德隆,郭健.Fuzzy推理的Mamdani算法[J].寶雞文理學(xué)院學(xué)報(bào):自然科學(xué)版,2001,21(3):168-173.
(責(zé)任編輯 李亞青)
Local Path Planning of Smart Car Based on Fuzzy Logic Method
ZHU Man-man1, DU Yu2, Zhang Yong-hua1, Song Xiao-shuai1, Li Qiang1
(1. School of Information, Beijing Union University, Beijing 100101, China; 2. Robotics Institute, Beijing Union University, Beijing 100101, China)
In order to do the local path planning for smart car, this paper proposed a path planning based on fuzzy logic method. By repeatedly turning for obstacle avoidance, because of the existing problems of fuzzy logic method used in the local path planning, the smart car can avoid the deadlock efficiently to achieve goal of path planning for smart car successfully.
Smart car; Local path planning; Fuzzy logic method; Repeatedly turn for obstacle avoidance
10.16255/j.cnki.ldxbz.2016.04.005
2015-05-29
朱曼曼(1990—),女,山東菏澤人,北京聯(lián)合大學(xué)信息學(xué)院碩士研究生,主要研究方向?yàn)橹悄軟Q策。
U 495
A
1005- 0310(2016)04- 0029- 04