童友波
(合肥職業(yè)技術(shù)學(xué)院 信息工程與傳媒學(xué)院,安徽 合肥 238000)
目前,路徑記憶算法被廣泛應(yīng)用于各大領(lǐng)域,尤其是移動(dòng)機(jī)器人與人工智能領(lǐng)域,例如智能車、智能機(jī)器人等。隨著智能車的興起以及我國(guó)越來(lái)越復(fù)雜的交通情況,對(duì)路徑記憶算法的需求也在逐漸的提升,對(duì)路徑記憶算法相關(guān)的指標(biāo)要求也在不斷的增長(zhǎng),如何對(duì)路徑記憶算法進(jìn)行優(yōu)化是現(xiàn)今研究的重點(diǎn)問(wèn)題之一[1]。
協(xié)同神經(jīng)網(wǎng)絡(luò)是在20世紀(jì)80年代末期由Haken教授提出的,主要是將協(xié)同學(xué)與神經(jīng)網(wǎng)絡(luò)進(jìn)行了有效的結(jié)合,形成了新的概念——協(xié)同神經(jīng)網(wǎng)絡(luò)。協(xié)同神經(jīng)網(wǎng)絡(luò)運(yùn)行過(guò)程主要包括兩個(gè)階段,第一階段為網(wǎng)絡(luò)的學(xué)習(xí)訓(xùn)練階段,第二階段為網(wǎng)絡(luò)的識(shí)別階段[2]。協(xié)同神經(jīng)網(wǎng)絡(luò)與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)相比具備更多的功能與優(yōu)勢(shì),例如協(xié)同神經(jīng)網(wǎng)絡(luò)模式訓(xùn)練時(shí)間短,網(wǎng)絡(luò)學(xué)習(xí)速度快,網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜程度低,聯(lián)想效果好,無(wú)偽狀態(tài)等。因此,將其引入到路徑記憶算法中,可以對(duì)路徑記憶算法進(jìn)行極大的優(yōu)化。
傳統(tǒng)智能車行駛路徑記憶算法由于路徑信息計(jì)算量大、計(jì)算過(guò)程復(fù)雜,導(dǎo)致算法的效率較低,從而使智能車的行駛速度降低,為此提出基于協(xié)同神經(jīng)網(wǎng)絡(luò)的智能車行駛路徑記憶算法優(yōu)化研究[3]。通過(guò)優(yōu)化智能車行駛路徑記憶算法,提高算法的效率,使智能車達(dá)到穩(wěn)定、較快行駛速度的控制目的。設(shè)計(jì)仿真實(shí)驗(yàn)對(duì)優(yōu)化的智能車行駛路徑記憶算法性能進(jìn)行驗(yàn)證,主要是將傳統(tǒng)智能車行駛路徑記憶算法與優(yōu)化的智能車行駛路徑記憶算法應(yīng)用到智能車競(jìng)速導(dǎo)航中。結(jié)果表明,相同距離導(dǎo)航時(shí)間較少的優(yōu)化智能車行駛路徑算法具備更好的性能[4]。
智能行駛路徑記憶算法主要是對(duì)智能車行駛路徑的長(zhǎng)度與轉(zhuǎn)角值進(jìn)行記憶,通過(guò)路徑記憶對(duì)智能車的行駛路徑與速度等進(jìn)行控制。傳統(tǒng)智能車行駛路徑記憶算法最大的問(wèn)題就是效率低,因此主要是對(duì)智能行駛路徑記憶算法的效率進(jìn)行優(yōu)化。通過(guò)簡(jiǎn)化算法的計(jì)算過(guò)程、減小路徑信息可存儲(chǔ)空間、增強(qiáng)響應(yīng)的實(shí)時(shí)性等對(duì)算法的效率進(jìn)行提升[5]。優(yōu)化智能行駛路徑記憶算法如下所示。
采用傳感器對(duì)智能車行駛圖像信息進(jìn)行采集,通過(guò)圖像特征提取與圖像處理得到路徑邊緣信息,為下述智能車行駛路徑信息的獲取提供準(zhǔn)備。具體的準(zhǔn)備過(guò)程如下所示。
表1 下位機(jī)圖像信息發(fā)送流程表Table 1 Under a machine image information flow table
傳統(tǒng)智能行駛路徑記憶算法主要是采用攝像頭對(duì)智能車行駛圖像信息進(jìn)行采集,由于傳輸信息量過(guò)大導(dǎo)致響應(yīng)速度過(guò)慢。而優(yōu)化智能行駛路徑記憶算法主要采用傳感器對(duì)圖像信息進(jìn)行采集,只需要對(duì)圖像的邊緣信息進(jìn)行提取,通過(guò)邊緣信息就可以得到響應(yīng)的智能車行駛路徑信息。
選中傳感器界面上的接收邊緣線選項(xiàng),同時(shí)對(duì)傳感器中的上位機(jī)與下位機(jī)的圖像大小進(jìn)行相應(yīng)的設(shè)置。由于上位機(jī)需要在接收到邊緣線后對(duì)其進(jìn)行還原,因此,將上位機(jī)與下位機(jī)的圖像大小設(shè)置為相同。若是設(shè)置為不同,上位機(jī)還原得到的邊緣線位置就會(huì)發(fā)生改變。
傳感器中下位機(jī)采集的圖像大小為130像素×50像素,采用ImageData二維數(shù)組對(duì)圖像進(jìn)行存儲(chǔ),SendByte()為發(fā)送函數(shù)[6]。采用發(fā)送函數(shù)將下位機(jī)采集的圖像信息傳輸給上位機(jī)。下位機(jī)圖像信息發(fā)送流程如表1所示。
設(shè)置上位機(jī)的圖像大小為130像素×50像素,對(duì)下位機(jī)發(fā)送的圖像信息進(jìn)行接收,采用擬合方法對(duì)圖像邊緣信息進(jìn)行提取。首先將圖像的方向圖與梯度圖采用擬合方法進(jìn)行擬合,以梯度圖導(dǎo)數(shù)的最大值作為圖像邊緣信息的臨界值[7]。圖像梯度向量求取過(guò)程為:首先對(duì)圖像進(jìn)行灰度描述,具體表示為
f(x,y)=ax+by+c
(1)
其中,f(x,y)表示的是圖像信息;a,b,c分別表示的是需要設(shè)置的變換函數(shù)。
設(shè)置原點(diǎn)為圖像的中心,采用下述公式可以對(duì)a,b值進(jìn)行求取,公式為
(2)
則圖像梯度的大小與角度分別為
(3)
根據(jù)公式(3)可以得到圖像的方向圖與梯度圖,對(duì)其進(jìn)行擬合,設(shè)定灰度閾值,采用圖像二值化方法對(duì)其進(jìn)行逐層處理,得到圖像邊緣信息[8]。為下述智能車行駛路徑信息的獲取提供信息支撐。
以得到的圖像邊緣信息為基礎(chǔ),采用曲率計(jì)算公式對(duì)智能車行駛路徑的曲率與轉(zhuǎn)角信息進(jìn)行計(jì)算,從而得到智能車行駛路徑完整信息,為下述智能車行駛路徑信息的記憶做準(zhǔn)備[9]。
轉(zhuǎn)角信息求解過(guò)程為:根據(jù)圖像邊緣信息得到路徑中線圖像,將路徑中線的中點(diǎn)設(shè)置為A,路徑的端點(diǎn)設(shè)置為B和C,則A,B,C可以形成一個(gè)三角形,則三角形面積為
(4)
其中,|AB|與|AC|表示的是邊AB與AC的長(zhǎng)度。若是三角形是以順時(shí)針的方向分布的,其面積為負(fù),反之則為正。根據(jù)三角形面積的符號(hào)對(duì)智能車進(jìn)行左、右轉(zhuǎn)向的控制[10]。
智能車行駛路徑的曲率指的是三角形的外接圓半徑,其計(jì)算公式為
(5)
根據(jù)得到的曲率信息對(duì)智能車行駛路徑的轉(zhuǎn)角信息進(jìn)行計(jì)算。首先對(duì)閾值進(jìn)行設(shè)定,將路徑信息的有效值作為控制值,將控制值的最小值與閾值進(jìn)行比較。若是控制值大于閾值,則認(rèn)為當(dāng)前的控制值最小值即為轉(zhuǎn)向偏差。若是控制值小于閾值,則認(rèn)為閾值為轉(zhuǎn)向偏差。則轉(zhuǎn)角為
(6)
通過(guò)上述過(guò)程的計(jì)算,得到了智能車行駛路徑的曲率與轉(zhuǎn)角信息,也就是說(shuō)得到了智能車行駛路徑的完整信息,為下述智能車行駛路徑信息記憶的實(shí)現(xiàn)做準(zhǔn)備。
以上述得到的智能車行駛路徑信息為基礎(chǔ),采用協(xié)同神經(jīng)網(wǎng)絡(luò)對(duì)其進(jìn)行記憶,為智能車導(dǎo)航系統(tǒng)提供支撐,保障智能車穩(wěn)定、高速的行駛[11]。
采用協(xié)同神經(jīng)網(wǎng)絡(luò)對(duì)智能車行駛路徑進(jìn)行記憶,主要采用的是路徑分段形式,這樣的分段路徑記憶方式,不僅提高了智能車運(yùn)行速度,而且保證智能車穩(wěn)定運(yùn)行[12]。協(xié)同神經(jīng)網(wǎng)絡(luò)記憶過(guò)程如圖1所示。
圖1 協(xié)同神經(jīng)網(wǎng)絡(luò)記憶過(guò)程圖Fig.1 Collaborative neural metwork memory process diagram
協(xié)同神經(jīng)網(wǎng)絡(luò)具有自學(xué)習(xí)能力,可以對(duì)輸入的信息進(jìn)行自動(dòng)分類建立相應(yīng)的學(xué)習(xí)矩陣,并對(duì)識(shí)別出的信息進(jìn)行反饋學(xué)習(xí),以此來(lái)對(duì)智能車行駛路徑進(jìn)行記憶。同時(shí)該方法還具備一定的適應(yīng)能力,主要表現(xiàn)在優(yōu)化重構(gòu)序參量的過(guò)程中,使其識(shí)別能力更強(qiáng)、更精準(zhǔn),另外該網(wǎng)絡(luò)可以減少迭代的次數(shù),提高路徑信息的識(shí)別速度,從而提升智能車行駛路徑記憶的效率[13]。
為了滿足智能車行駛路徑信息的記憶,采用協(xié)同分類器對(duì)輸入的智能車行駛路徑信息格式進(jìn)行轉(zhuǎn)換,使其格式為標(biāo)準(zhǔn)格式,以信息屬性為標(biāo)準(zhǔn)對(duì)其進(jìn)行分類形成相應(yīng)的學(xué)習(xí)矩陣,然后對(duì)其進(jìn)行反饋?zhàn)詫W(xué)習(xí)[14]。則智能車行駛路徑記憶步驟如下所示:
步驟一:以上述得到的智能車行駛路徑信息為基礎(chǔ),采用協(xié)同分類器對(duì)其格式進(jìn)行轉(zhuǎn)換,得到標(biāo)準(zhǔn)格式的路徑信息為
X(i)=(x1,x2,…,xn)
(7)
以屬性為依據(jù)進(jìn)行分類,分類結(jié)果為
(8)
步驟二:將學(xué)習(xí)矩陣進(jìn)行原型聚合,并適當(dāng)?shù)貙?duì)其進(jìn)行修改;
步驟三:對(duì)上述原型聚合后的學(xué)習(xí)矩陣進(jìn)行歸一化預(yù)處理;
步驟四:采用相似度序參量重構(gòu)法對(duì)初始序參量進(jìn)行構(gòu)造;
步驟五:采用網(wǎng)絡(luò)識(shí)別模式,對(duì)上述序參量進(jìn)行識(shí)別,從而實(shí)現(xiàn)智能車行駛路徑的記憶[15]。
通過(guò)上述過(guò)程完成了對(duì)智能車行駛路徑的記憶,為智能車導(dǎo)航系統(tǒng)提供數(shù)據(jù)信息的支撐,保障智能車的穩(wěn)定行駛。
上述過(guò)程對(duì)智能車行駛路徑記憶算法進(jìn)行了優(yōu)化,但對(duì)其優(yōu)化效果還有待檢驗(yàn)。智能車行駛路徑記憶算法主要應(yīng)用于智能車的導(dǎo)航系統(tǒng),導(dǎo)航系統(tǒng)可以通過(guò)該算法對(duì)智能車進(jìn)行相應(yīng)的控制。因此,將傳統(tǒng)智能車行駛路徑記憶算法與優(yōu)化智能車行駛路徑記憶算法引入到導(dǎo)航系統(tǒng)中,并保持導(dǎo)航系統(tǒng)其它部件完全一致進(jìn)行實(shí)驗(yàn)。
在實(shí)驗(yàn)過(guò)程中,將兩輛采用不同智能車行駛路徑記憶算法的智能車放置于同一賽道進(jìn)行比賽。為了方便路徑記憶,將賽道分成直道A,S型彎道B,左轉(zhuǎn)彎道C,右轉(zhuǎn)彎道D,左彎道轉(zhuǎn)至右彎道的過(guò)渡賽道E,右彎道轉(zhuǎn)至左彎道的過(guò)渡賽道F,其他彎道G。賽道總計(jì)長(zhǎng)度為500 km。采用兩輛智能車進(jìn)行比賽實(shí)驗(yàn),哪輛智能車使用的時(shí)間少,則說(shuō)明其采用的智能車行駛路徑記憶算法效率高。
當(dāng)智能車低速賽試跑時(shí),兩輛智能車使用時(shí)間對(duì)比圖如圖2所示。當(dāng)智能車競(jìng)速賽跑時(shí),兩輛智能車使用時(shí)間對(duì)比圖如圖3所示。
圖2 低速試跑使用時(shí)間對(duì)比圖Fig.2 Comparison of using time of low-speed test run
圖3 競(jìng)速試跑使用時(shí)間對(duì)比圖Fig.3 Racing try run time contrast figure
為了方便實(shí)驗(yàn)結(jié)論的描述,將上述采用傳統(tǒng)智能車行駛路徑記憶算法的智能車稱為對(duì)照組,將采用優(yōu)化智能車行駛路徑記憶算法的智能車稱為實(shí)驗(yàn)組。如圖2所示,實(shí)驗(yàn)組的使用時(shí)間普遍低于對(duì)照組;經(jīng)計(jì)算,智能車在低速試跑時(shí),實(shí)驗(yàn)組使用時(shí)間的平均值比對(duì)照組少了1.8 h。如圖3所示,實(shí)驗(yàn)組的使用時(shí)間普遍低于對(duì)照組;智能車在競(jìng)速賽跑時(shí),實(shí)驗(yàn)組使用時(shí)間的平均值比對(duì)照組少了2.1 h。
由上述兩個(gè)實(shí)驗(yàn)結(jié)果可知,采用優(yōu)化智能車行駛路徑記憶算法的智能車使用時(shí)間更少,充分說(shuō)明優(yōu)化智能車行駛路徑記憶算法具備更高的效率。
優(yōu)化的智能車行駛路徑記憶算法極大地提升了算法的效率,為智能車安全、穩(wěn)定行駛提供有力的保障。但是在實(shí)驗(yàn)過(guò)程中,由于忽略了干擾因素的影響導(dǎo)致實(shí)驗(yàn)結(jié)果產(chǎn)生少許的偏差,因此需要對(duì)智能車行駛路徑記憶算法進(jìn)行進(jìn)一步的研究與探索。