連曉峰,郭衛平,廉小親,蘇 中,趙 旭
(1.北京工商大學 計算機與信息工程學院,北京100048;2.北京信息科技大學高動態導航技術北京市重點實驗室,北京100101)
傳統的蛇形機器人控制方法是通過運動學及動力學建模來確定機器人的運動控制規律,但該方法實現復雜,穩定性差。研究人員希望能通過模擬生物的節律運動來實現蛇形機器人的控制。為此,提出一種基于中樞模式發生器(CPG)的節律控制方法,這是一種通過由神經元組成的網絡來產生生物的節律運動控制信號,即使在缺乏外部反饋控制信號的情況下也能自動產生穩定的節律信號,實現不同的運動方式,其還具有結構簡單、適應性強等優點[1]。
Harris Warrick等在研究鰻鱺神經元過程中提出第一個CPG 模型。自此以后,大量研究人員研究開發了各種CPG模型以用于仿生機器人的研究。Hagiwara等基于CPG 模型通過多目標遺傳算法實現四足機器人的步態控制[2];王龍等根據Fukuoka等提出的四神經元CPG 控制模型實現了對仿生機器魚的運動控制[3];王偉等基于CPG 模型設計了類魚機器人的運動控制器[4]。另外,基于CPG 模型的相關研究也廣泛應用于蛇形機器人的運動控制與設計。Matsuo等利用神經振蕩器來調節蛇形機器人的步態控制相位差[5];Hasanzadeh等基于CPG 模型研究了蛇形機器人的一種新的步態[6];馬書根等基于CPG 模型對蛇形機器人的控制進行了深入研究[7-9];Nachstedt等利用一種螺旋驅動機制實現了蛇形機器人的自適應神經振蕩器[10]。
本文采用循環抑制的CPG 網絡模型對蛇形機器人進行運動控制,研究了基于遺傳算法的CPG 控制模型的參數優化系統,解決了CPG 控制模型中參數確定困難,輸出不穩定等問題。
采用循環抑制的CPG 模型,通過鏈式連接構建CPG網絡,其網絡輸出信號控制蛇形搜救機器人的各關節的節律運動。采用遺傳算法根據網絡輸出信號的穩定程度優化CPG參數和各CPG間連接權重。最終得到一組最優的CPG 網絡參數,該組參數對應的CPG 網絡輸出信號直接用于控制蛇形機器人關節的轉動角度。其控制模型如圖1所示。
圖1 CPG 控制模型總體方案
中樞模式發生器 (CPG)是產生生物體節律行為的低級神經中樞,其中核心在于利用中間神經元構成一個局部網絡,然后通過各個神經元之間的相互抑制,從而實現自激振蕩以產生控制生物關節節律運動的激勵信號。CPG 網絡則是將多個CPG 相互連接,針對蛇形機器人在搜救領域的應用,本文采用最直接的串聯鏈式連接。
本文參考Matsuoka提出的振蕩器模型。該振蕩器的特點在沒有外部激勵或激勵過小時,只需穩定的恒定激勵就能產生穩定的振蕩器輸出,若外部激勵大于某一閾值,則振蕩器輸出能夠反映出外部的激勵信號。圖2即是采用三神經元相互連接構成的循環抑制CPG 模型[11]。
圖2 循環抑制CPG 模型
該模型對應的數學表達式如下
其中,u{e,f,m}為CPG 的伸肌神經元、屈肌神經元和中間神經元的薄膜潛能;v{e,f,m}為CPG 上述神經元的調整程度;y{e,f,m}為CPG 上述神經元的輸出;u0{e,f,m}為相應神經元的激勵;w{e,f,m}為相應神經元的連接權重;β為自約束程度對內部狀態影響的參數;Tr為薄膜潛能時間常量;Ta為調整程度時間常量;y 為CPG 的最終輸出。
根據本文所采用的蛇形機器人結構,構建CPGs網絡,其中,共有5個CPG 輸出,各自作為蛇形機器人各關節的控制信號。此模型結構簡單,且經過調節Tr、Ta、w{e,f,m},i、u0,{e,f,m},i、wij、β可以產生穩定的振蕩輸出,其模型如圖3所示[10]。
該CPG 網絡對應的數學表達式如下
其中,i表示第i個CPG,n=5,wij為第i個CPG 與第j個CPG 之間的連接權重;yi為第i 個CPG 的最終輸出,其余參數與3.1節中相同。
圖3 CPG 網絡模型
由2.2中微分方程組可知,CPG 中參數包含外部激勵信號u0,{e,f,m},i、自約束參數β、神經元間連接權重w{e,f,m},i、各CPG 中連接權wij、首個CPG 中自抑制系數w00、薄膜潛能時間常量Tr和調整程度時間常量Ta。針對蛇形機器人,鏈式CPG 網絡的目標是各CPG 都能輸出穩定的節律信號,并且各個信號間存在適當的相位差。因此在參數調節中,設置各CPG 中的u0,{e,f,m},i,β,w{e,f,m},i,wij(i≠0,j≠0),Tr,Ta均保持相同值。
參數間約束條件為
本文所采用的CPG 網絡結構是單向循環抑制的CPG結構,主要是通過神經元之間的相互抑制實現自振蕩,而不注重神經元的調整功能。因此可以根據薄膜潛能U 的狀態方程 (式 (1)),在假設調整程度系數β =0 的條件下,求出系數矩陣的特征值。根據經典控制理論,系統穩定的條件是:系數矩陣的特征值具有非負實部,由此可初步確定神經元間的連接權重W{e,f,m},i>2。各參數對輸出結果的影響見表1。
表1 CPG 網絡參數與輸出信號關系
由于最終網絡輸出信號y =max(0,u),因此Tr對輸出穩定振蕩信號的調整時間有較大影響。
遺傳算法 (genetic algorithm)最初由J.Holland提出,是一種通過模擬生物自然進化過程的最優解搜索算法。現已廣泛應用于機器學習、智能控制、系統模型優化等領域,用以解決啟發式優化和搜索問題。
在此,采用遺傳算法對CPG 網絡參數進行優化。首先對表1所示的所需優化的7個參數進行二進制編碼。具體編碼方法如下:
(1)根據產生振蕩波形的條件,首先確定各變量的取值范圍。
(2)根據范圍,利用8位二進制數表示各個參數,基因串長度為56,所得到的實際參數值精確到小數點后4位。
(3)若參數X ∈(a,b),則參數實際值為[a+(ba)/2(8)-1]×M ,其中,M 為8 位二進制碼對應的十進制數。
利用適應度函數來評價種群中個體的優劣。所選取的適應度函數可直接影響遺傳算法的收斂速度和最優解。本文中,由于優化目標是獲取一組CPG 的參數值使得最終的5個輸出信號達到綜合最穩定狀態。因此,分別獲得5 個CPG 穩定輸出時的峰值,并選取這組峰值中的最小方差作為評價函數
式中:f(x)——適應度函數,var——MATLAB 中的方差求解函數,max(yi)——第i個CPG 的穩定輸出峰值。
根據上述過程,具體仿真實現的流程如圖4所示。
根據3.2所述,利用遺傳算法對CPG 網絡參數進行優化過程如下:
(1)首先進行參數初始化設置,設初始進化迭代次數為0,最大迭代次數為200,染色體長度為56,初始種群P(0)為隨機生成的100個個體,選擇概率為0.5,交叉概率為0.6,變異概率0.01。
(2)個體評價:計算種群P(t)中單個個體的適應度,并將適應度按從大到小依次排序。
(3)選擇運算:將當代種群中適應度較高100*0.5個個體遺傳到下一代,重復100次,得到新的種群。
圖4 CPG 模型輸出算法
(4)交叉運算:對種群采用線性交叉算子,即父代種群中的個體兩兩隨機配對,對每對個體進行線性交叉。
(5)變異運算:對種群中的每個個體執行非均勻變異算子,即改變群體中個體串的某些基因值。
(6)當代種群P(t)經選擇、交叉、變異運算后更新得到下一代種群P(t+1)。
(7)終止條件判斷:若初始進化跌打次數達到設定最大值,則將所得到的適應度最小的個體作為輸出的最優解,并終止計算過程。具體流程如圖5所示。
圖5 遺傳算法流程
通過參數分析與實驗調整,在以下參數設定下 (見表2),波形較為穩定。其對應的CPG 輸出信號如圖6 所示。其中,圖6 (a)為整體輸出信號,圖6 (b)為穩定時的信號放大圖。
表2 實驗法確定參數
圖6 CPG 輸出結果
圖6中橫坐標X 為積分次數,縱坐標Y 表示CPG 輸出幅值。X×T(積分時間)即為總時間值,Y×λ(固定比值)即為蛇形機器人的轉角位移。
采用遺傳算法的網絡輸出如圖6 (c)所示,而求解得到的CPG 最優參數見表3。
表3 遺傳算法確定的最優參數
通過表3和表2中的參數值以及圖6 (c)和圖6 (b)的對比可知,兩種方法的參數中Tr、Ta、a、w 值基本相近,對應的輸出信號均是穩定的。由3.1 節的分析可知,這幾個參數正是決定整個CPG 輸出的關鍵參數。實驗法是在分析的基礎上進行反復的調試而得出結果,其工作量大,難度高且繁瑣,并存在大量偶然因素。通過遺傳算法,在初步確定參數范圍的條件下,可快速獲得一組理想值。由此可見,該方法能夠有效解決CPG 控制模型中參數整定效率低、不穩定的問題。
本文在采用循環抑制的CPG 網絡模型對蛇形機器人進行運動控制的基礎上,介紹了以鏈式CPG 網絡實現節律輸出的蛇形搜救機器人控制系統總體方案,并基于遺傳算法對CPG 控制模型的參數進行優化。仿真結果表明,本文提出的基于遺傳算法的參數優化方法能夠對CPG 網絡模型參數進行有效優化,成功解決了CPG 控制模型中參數整定效率低、不穩定的問題。其中,針對各個CPG 網絡參數對實驗結構影響的分析非常重要,需要多次反復實驗才能確定。另外,本文只是針對蛇形機器人的蜿蜒步態控制進行了研究,今后將繼續研究蠕動、橫滾等步態控制。
[1]FU Jiang.A research on the control method of robot behavior selection and movement based on the biological mechanism [D].Nanjing:Nanjing University of Science and Technology,2012(in Chinese).[伏姜.一種基于生物機理的機器人行為選擇與運動控制方法研究 [D].南京:南京理工大學,2012.]
[2]Hagiwara,Ryota.CPG-based locomotion learning of four-legged robot by multi-objective GA [J].ICIC Express Letters,Part B:Applications,2014,5 (1):103-109.
[3]WANG Long,TAN Min,CAO Zhiqiang,et al.CPG based motion control of biomimetic robotic fish [J].Control Theory&Applications,2007,24 (5):749-755 (in Chinese). [王龍,譚民,曹志強,等.基于CPG 模型的仿生機器魚運動控制 [J].控制理論與應用,2007,24 (5):749-755.]
[4]Wang Wei,Xie Guangming.CPG-based locomotion controller design for a boxfish-like robot [J].International Journal of Advanced Robotic Systems,2014,11 (1):1-11.
[5]Matsuo Takayuki,Ishii,Kazuo.The adjustment system of phase difference using neural oscillator network for a snake-like robot [C]//Proceedings of the SICE Annual Conference,2012:502-507.
[6]Hasanzadeh Shahir·Akabrzadeh Alireza.Development of a new spinning gait for a planar snake robot using central pattern generatorsl[J].Intelligent Serive Robotics,2013,6 (2):109-120.
[7]TANG Chaoquan,MA Shugen,LI Bin,et al.Self-adaptable biomimetic control strategy for snake robots based on neural stepping stimulation mechanism [J].Journal of Mechanical Engeineering,2013,49 (1):53-62 (in Chinese). [唐超權,馬書根,李斌,等.基于神經步進激勵機制的蛇形機器人環境自適應仿生控制策略 [J].機械工程學報,2013,49 (1):53-62.]
[8]LU Zhenli,MA Shugen,LI Bin,et al.3-dimensional locomotion of a snake-like robot controlled by cyclic inbitory CPG model[J].ACTA Automatica Sinica,2007,33 (1):54-58 (in Chinese).[盧振利,馬書根,李斌,等.基于循環抑制CPG模型控制的蛇形機器人三維運動 [J].自動化學報,2007,33(1):54-58.]
[9]Wu Xiaodong,Ma Shugen.CPG-based control of serpentine locomotion of a snake-like robot [J].Mechatronics,2010(20):326-334.
[10]Nachstedt Timo,Worgotter Florentin,Manoonpong Poramate,et al.Adaptive neural osillators with synaptic plasticity for locomotion control of a snak-like robot with screw-drive mechanism [C]//IEEE international Conference on Robotics and Automation,2013:3389-3395.
[11]WANG Feifei,ZHANG Qizhi,ZHOU Yali.Introduction of nonlinear oscillator model of CPGs[J].Joutnal of Beijing Institute of Machinery,2007,22 (4):31-36(in Chinese). [王斐斐,張奇志,周亞麗.構成CPGs的非線性振蕩器模型的介紹 [J].北京機械工業學院學報,2007,22 (4):31-36.]