移動機器人是機器人的重要研究領(lǐng)域,人們很早就開始移動機器人的研究。
世界上臺真正意義上的移動機器人是斯坦福研究院(SRI)的人工智能中心于1966年到1972年研制的,名叫Shakey,它裝備了電視攝像機、三角測距儀、碰撞傳感器、驅(qū)動電機以及編碼器,并通過無線通訊系統(tǒng)由二臺計算機控制,可以進行簡單的自主導(dǎo)航。Shakey的研制過程中還誕生了兩種經(jīng)典的導(dǎo)航算法:A*算法(the A* search algorithm)和可視圖法(the visibility graph method)。
雖然Shakey只能解決簡單的感知、運動規(guī)劃和控制問題,但它卻是當(dāng)時將AI應(yīng)用于機器人的為成功的研究平臺,它證實了許多通常屬于人工智能(Aritificial Intelligence, AI)領(lǐng)域的嚴(yán)肅的科學(xué)結(jié)論。從20世紀(jì)70年代末開始,隨著計算機的應(yīng)用和傳感技術(shù)的發(fā)展,以及新的機器人導(dǎo)航算法的不斷推出,移動機器人研究開始進入快車道。
移動機器人智能的一個重要標(biāo)志就是自主導(dǎo)航,而實現(xiàn)機器人自主導(dǎo)航有個基本要求——避障。下面讓我們來了解一下移動機器人的避障,避障是指移動機器人根據(jù)采集的障礙物的狀態(tài)信息,在行走過程中通過傳感器感知到妨礙其通行的靜態(tài)和動態(tài)物體時,按照一定的方法進行有效地避障,后達到目標(biāo)點。
實現(xiàn)避障與導(dǎo)航的必要條件是環(huán)境感知,在未知或者是部分未知的環(huán)境下避障需要通過傳感器獲取周圍環(huán)境信息,包括障礙物的尺寸、形狀和位置等信息,因此傳感器技術(shù)在移動機器人避障中起著十分重要的作用。避障使用的傳感器主要有超聲傳感器、視覺傳感器、紅外傳感器、激光傳感器等。
移動機器人避障常用的傳感器
1、激光傳感器
激光測距傳感器利用激光來測量到被測物體的距離或者被測物體的位移等參數(shù)。
比較常用的測距方法是由脈沖激光器發(fā)出持續(xù)時間極短的脈沖激光,經(jīng)過待測距離后射到被測目標(biāo),回波返回,由光電探測器接收。根據(jù)主波信號和回波信號之間的間隔,即激光脈沖從激光器到被測目標(biāo)之間的往返時間,就可以算出待測目標(biāo)的距離。
由于光速很快,使得在測小距離時光束往返時間極短,因此這種方法不適合測量精度要求很高的(亞毫米級別)距離,一般若要求精度非常高,常用三角法、相位法等方法測量。
2、視覺傳感器
視覺傳感器的優(yōu)點是探測范圍廣、獲取信息豐富。
實際應(yīng)用中常使用多個視覺傳感器或者與其它傳感器配合使用,通過一定的算法可以得到物體的形狀、距離、速度等諸多信息。或是利用一個攝像機的序列圖像來計算目標(biāo)的距離和速度,還可采用SSD算法,根據(jù)一個鏡頭的運動圖像來計算機器人與目標(biāo)的相對位移。
但在圖像處理中,邊緣銳化、特征提取等圖像處理方法計算量大,實時性差,對處理機要求高。且視覺測距法檢測不能檢測到玻璃等透明障礙物的存在,另外受視場光線強弱、煙霧的影響很大。
3、紅外傳感器
大多數(shù)紅外傳感器測距都是基于三角測量原理。
紅外發(fā)射器按照一定的角度發(fā)射紅外光束,當(dāng)遇到物體以后,光束會反射回來,如圖所示。反射回來的紅外光線被CCD檢測器檢測到以后,會獲得一個偏移值L,利用三角關(guān)系,在知道了發(fā)射角度α,偏移距L,中心矩X,以及濾鏡的焦距f以后,傳感器到物體的距離D就可以通過幾何關(guān)系計算出來了。
紅外傳感器的優(yōu)點是不受可見光影響,白天黑夜均可測量,角度靈敏度高、結(jié)構(gòu)簡單、價格較便宜,可以快速感知物體的存在,但測量時受環(huán)境影響很大,物體的顏色、方向、周圍的光線都能導(dǎo)致測量誤差,測量不夠。
4、超聲波傳感器
超生波傳感器檢測距離原理是測出發(fā)出超聲波至再檢測到發(fā)出的超聲波的時間差,同時根據(jù)聲速計算出物體的距離。由于超聲波在空氣中的速度與溫濕度有關(guān),在比較的測量中,需把溫濕度的變化和其它因素考慮進去。超聲波傳感器一般作用距離較短,普通的有效探測距離都在5-10m之間,但是會有一個小探測盲區(qū),一般在幾十毫米。由于超聲傳感器的成本低,實現(xiàn)方法簡單,技術(shù)成熟,是移動機器人中常用的傳感器。
機器人避障算法有哪些?
目前移動機器人的避障根據(jù)環(huán)境信息的掌握程度可以分為障礙物信息已知、障礙物信息部分未知或*未知兩種。
傳統(tǒng)的導(dǎo)航避障方法如可視圖法、柵格法、自由空間法等算法對障礙物信息己知時的避障問題處理尚可,但當(dāng)障礙信息未知或者障礙是可移動的時候,傳統(tǒng)的導(dǎo)航方法一般不能很好的解決避障問題或者根本不能避障。
而實際生活中,絕大多數(shù)的情況下,機器人所處的環(huán)境都是動態(tài)的、可變的、未知的,為了解決上述問題,人們引入了計算機和人工智能等領(lǐng)域的一些算法。同時得益于處理器計算能力的提高及傳感器技術(shù)的發(fā)展,在移動機器人的平臺上進行一些復(fù)雜算法的運算也變得輕松,由此產(chǎn)生了一系列智能避障方法,比較熱門的有:遺傳算法、神經(jīng)網(wǎng)絡(luò)算法、模糊算法等,下面分別加以介紹。
1、基于遺傳算法的機器人避障算法
遺傳算法(genetic algorithm ,簡稱GA )是計算數(shù)學(xué)中用于解決*化的搜索算法,是進化算法的一種。進化算法是借鑒了進化生物學(xué)中的遺傳、突變、自然選擇以及雜交等現(xiàn)象而發(fā)展起來的。 遺傳算法采用從自然進化中抽象出來的幾個算子對參數(shù)編碼的字符串進行遺傳操作 ,包括復(fù)制或選擇算子(Reproduction or Select)、交叉算子(Crossover)、變異算子(Mutation)。
遺傳算法的主要 優(yōu)點 是:采用群體方式對目標(biāo)函數(shù)空間進行多線索的并行搜索,不會陷入局部極小點;只需要可行解目標(biāo)函數(shù)的值,而不需要其他信息,對目標(biāo)函數(shù)的連續(xù)性、可*沒有要求,使用方便;解的選擇和產(chǎn)生用概率方式,因此具有較強的適應(yīng)能力和魯棒性。
2、基于神經(jīng)網(wǎng)絡(luò)算法的機器人避障方法
神經(jīng)網(wǎng)絡(luò)(neural network,縮寫NN),是一種模仿生物神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)和功能的數(shù)學(xué)模型或計算模型。神經(jīng)網(wǎng)絡(luò)由大量的人工神經(jīng)元聯(lián)結(jié)進行計算。大多數(shù)情況下人工神經(jīng)網(wǎng)絡(luò)能在外界信息的基礎(chǔ)上改變內(nèi)部結(jié)構(gòu),是一種自適應(yīng)系統(tǒng)。人工神經(jīng)網(wǎng)絡(luò)通常通過一個基于數(shù)學(xué)統(tǒng)計學(xué)類型的學(xué)習(xí)方法優(yōu)化,是一種非線性統(tǒng)計性數(shù)據(jù)建模工具,可以對輸入和輸出間復(fù)雜的關(guān)系進行建模。
傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)路徑規(guī)劃方法往往是建立一個關(guān)于機器人從初始位置到目標(biāo)位置行走路徑的神經(jīng)網(wǎng)絡(luò)模型,模型輸入是傳感器信息和機器人前一位置或者前一位置的運動方向,通過對模型訓(xùn)練輸出機器人下一位置或者下一位置的運動方向。
可以建立基于動態(tài)神經(jīng)網(wǎng)絡(luò)的機器人避障算法, 動態(tài)神經(jīng)網(wǎng)絡(luò)可以根據(jù)機器人環(huán)境狀態(tài)的復(fù)雜程度自動地調(diào)整其結(jié)構(gòu),實時地實現(xiàn)機器人的狀態(tài)與其避障動作之間的映射關(guān)系,能有效地減輕機器人的運算壓力。 還有研究通過使用神經(jīng)網(wǎng)絡(luò)避障的同時與混合智能系統(tǒng)(HIS)相連接,可以使移動機器人的認(rèn)知決策避障能力和人相近。
3、基于模糊控制的機器人避障算法
模糊控制(fuzzy control)是一類應(yīng)用模糊集合理論的控制方法,它沒有像經(jīng)典控制理論那樣把實際情況加以簡化從而建立起數(shù)學(xué)模型,而是通過人的經(jīng)驗和決策進行相應(yīng)的模糊邏輯推理,并且用具有模糊性的語言來描述整個時變的控制過程。
對于移動機器人避障用經(jīng)典控制理論建立起的數(shù)學(xué)模型將會非常粗糙,而模糊控制則把經(jīng)典控制中被簡化的部分也綜合起來加以考慮。
對于移動機器人避障的模糊控制而言,其關(guān)鍵問題就是要建立合適的模糊控制器,模糊控制器主要完成障礙物距離值的模糊化、避障模糊關(guān)系的運算、模糊決策以及避障決策結(jié)果的非模糊化處理(化)等重要過程,以此來智能地控制移動機器人的避障行為。利用模糊控制理論還可將專家知識或操作人員經(jīng)驗形成的語言規(guī)則直接轉(zhuǎn)化為自動控制策略。通常使用模糊規(guī)則查詢表,用語言知識模型來設(shè)計和修正控制算法。
除此之外還有啟發(fā)式搜索算法、基于行為的路徑規(guī)劃算法、基于再激勵學(xué)習(xí)的路徑規(guī)劃算法等避障算法,也都在移動機器人的避障研究中取得了很好的成果。
展望
隨著計算機技術(shù)、傳感器技術(shù)、人工智能的發(fā)展,移動機器的避障及自主導(dǎo)航技術(shù)已經(jīng)取得了豐碩的研究成果,應(yīng)用領(lǐng)域也在不斷地擴大,應(yīng)用復(fù)雜程度也越來越高。移動機器人的自主尋路要求已經(jīng)從之前簡單的功能實現(xiàn)提升到可靠性、通用性、率上來,因此對其相關(guān)技術(shù)提出了更高的要求。
然而至今沒有任何一種方法能夠在任意環(huán)境使機器人進行有效地避障,如何克服相關(guān)算法的局限性是今后工作的研究方向之一。可以看出不管是傳統(tǒng)算法還是新興的智能算法都有其適用與不適用的環(huán)境,通過傳統(tǒng)算法與智能算法及智能算法之間的相互融合,克服單個算法的缺陷,增強整體的適用性,現(xiàn)在已經(jīng)有很多這方面的研究,以后仍將是研究熱點之一。