亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種導(dǎo)航尋路方法、機器人及系統(tǒng)與流程

文檔序號:12717346閱讀:266來源:國知局
一種導(dǎo)航尋路方法、機器人及系統(tǒng)與流程

本發(fā)明涉及機器人技術(shù)領(lǐng)域,尤其涉及一種導(dǎo)航尋路方法、機器人及系統(tǒng)。



背景技術(shù):

在機器人技術(shù)領(lǐng)域中,機器人導(dǎo)航尋路的應(yīng)用越來越多。機器人導(dǎo)航尋路是自主移動機器人導(dǎo)航功能的重要問題之一,機器人導(dǎo)航尋路的目的是使機器人在應(yīng)用環(huán)境中,無碰撞的到達目的地。

現(xiàn)有的機器人導(dǎo)航尋路的準(zhǔn)確性有待提升。



技術(shù)實現(xiàn)要素:

本發(fā)明解決的技術(shù)問題是提升機器人導(dǎo)航尋路的準(zhǔn)確性。

為解決上述技術(shù)問題,本發(fā)明實施例提供一種導(dǎo)航尋路方法,通過采集設(shè)備采集機器人在訓(xùn)練運動過程中的環(huán)境信息,并根據(jù)所述訓(xùn)練運動過程中的環(huán)境信息生成訓(xùn)練數(shù)據(jù);利用所述訓(xùn)練數(shù)據(jù)采用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),以使訓(xùn)練后的所述深度神經(jīng)網(wǎng)絡(luò)適于根據(jù)尋路數(shù)據(jù)進行決策分析,并指示所述機器人向?qū)Ш侥繕?biāo)做尋路運動,所述尋路數(shù)據(jù)根據(jù)所述采集設(shè)備在尋路應(yīng)用過程中采集的數(shù)據(jù)和所述導(dǎo)航目標(biāo)得到。

可選的,所述采集設(shè)備包括以下一種或多種:超聲采集設(shè)備、激光采集設(shè)備、雷達、紅外采集設(shè)備、超寬帶采集設(shè)備、攝像頭和3D體感攝影機。

可選的,所述生成訓(xùn)練數(shù)據(jù)的過程包括:確定所述訓(xùn)練運動過程包含的至少一個運動操作,所述運動操作根據(jù)對應(yīng)的運動數(shù)據(jù)的指示完成;確定每一運動操作的運動前狀態(tài)數(shù)據(jù)和運動后狀態(tài)數(shù)據(jù),所述運動前狀態(tài)數(shù)據(jù)包括所述運動操作執(zhí)行前的環(huán)境信息,所述運動后狀態(tài)數(shù)據(jù)包括所述運動操作執(zhí)行后的環(huán)境信息;根據(jù)所述運動前狀態(tài)數(shù)據(jù)和所述運動后狀態(tài)數(shù)據(jù)計算反饋獎勵數(shù)值;將所述運動數(shù)據(jù)及其運動前狀態(tài)數(shù)據(jù)、運動后狀態(tài)數(shù)據(jù)以及反饋獎勵數(shù)值作為所述訓(xùn)練數(shù)據(jù)。

可選的,所述利用所述訓(xùn)練數(shù)據(jù)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)包括:將所述訓(xùn)練數(shù)據(jù)中的所述運動前狀態(tài)數(shù)據(jù)送入所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以獲取所述訓(xùn)練數(shù)據(jù)中的所述運動數(shù)據(jù)的價值函數(shù)值,所述運動數(shù)據(jù)的價值函數(shù)值用于評價所述機器人進行的運動操作在導(dǎo)航全程中對于到達訓(xùn)練目標(biāo)的價值;將所述訓(xùn)練數(shù)據(jù)中的運動后狀態(tài)數(shù)據(jù)送入所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以獲得所述深度神經(jīng)網(wǎng)絡(luò)輸出的各個所述運動數(shù)據(jù)的價值函數(shù)值;根據(jù)所述深度神經(jīng)網(wǎng)絡(luò)輸出的各個所述運動數(shù)據(jù)的價值函數(shù)值中的最大值,以及所述運動數(shù)據(jù)的反饋獎勵數(shù)值,計算目標(biāo)價值函數(shù)值;根據(jù)所述訓(xùn)練數(shù)據(jù)、所述運動數(shù)據(jù)的價值函數(shù)值以及所述目標(biāo)價值函數(shù)值進行反向傳播,以更新所述深度神經(jīng)網(wǎng)絡(luò)的參數(shù);根據(jù)上述步驟迭代更新所述深度神經(jīng)網(wǎng)絡(luò)的參數(shù),直至所述深度神經(jīng)網(wǎng)絡(luò)達到收斂。

可選的,所述計算反饋獎勵數(shù)值包括:根據(jù)所述運動前狀態(tài)數(shù)據(jù)和所述運動后狀態(tài)數(shù)據(jù),分別獲取所述運動操作前后所述機器人與障礙物的距離,并且分別獲取所述運動操作前后所述機器人與訓(xùn)練目標(biāo)信息的距離;根據(jù)所述運動操作前后所述機器人與障礙物的距離和所述運動操作前后所述機器人與訓(xùn)練目標(biāo)信息的距離,計算所述反饋獎勵數(shù)值。

可選的,依據(jù)以下公式計算所述反饋獎勵數(shù)值r:

其中,β、δ均為調(diào)整系數(shù),TD1表征所述運動操作前所述機器人與訓(xùn)練目標(biāo)的距離,TD2表征所述運動操作后所述機器人與訓(xùn)練目標(biāo)的距離,OD1表征所述機器人在執(zhí)行所述運動操作之前與障礙物的距離,OD2表征所述機器人在執(zhí)行所述運動操作之后與障礙物的距離。

可選的,在所述反向傳播的過程中采用minibatch梯度下降法。

可選的,所述深度神經(jīng)網(wǎng)絡(luò)的輸出的各個所述運動數(shù)據(jù)選自預(yù)設(shè)的運動集合。

可選的,根據(jù)貝爾曼方程計算所述目標(biāo)價值函數(shù)值。

可選的,使用貪心探索算法產(chǎn)生所述運動數(shù)據(jù)。

可選的,所述運動前狀態(tài)數(shù)據(jù)還包括以下至少一種:當(dāng)前朝向信息、當(dāng)前速度信息、當(dāng)前加速度信息、當(dāng)前位置信息、訓(xùn)練目標(biāo)信息;所述運動后狀態(tài)數(shù)據(jù)包括以下至少一種:運動后朝向信息、運動后速度信息、運動后加速度信息和運動后位置信息。

可選的,所述導(dǎo)航尋路方法還包括:a:將所述尋路數(shù)據(jù)送入訓(xùn)練后的所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以得到最優(yōu)運動數(shù)據(jù);b:使用所述最優(yōu)運動數(shù)據(jù)指示所述機器人向?qū)Ш侥繕?biāo)做尋路運動。

可選的,所述向?qū)Ш侥繕?biāo)做尋路運動之后,還包括:

確定所述機器人是否到達導(dǎo)航目標(biāo),若是,則導(dǎo)航結(jié)束;若否,則重復(fù)執(zhí)行上述步驟a和b做尋路運動,直至到達所述導(dǎo)航目標(biāo)。

可選的,所述訓(xùn)練數(shù)據(jù)和所述尋路數(shù)據(jù)中均還包括地圖數(shù)據(jù)。

本發(fā)明實施例還提供一種導(dǎo)航尋路機器人,包括:

訓(xùn)練數(shù)據(jù)生成單元,適于通過采集設(shè)備采集機器人在訓(xùn)練運動過程中的環(huán)境信息,并根據(jù)所述訓(xùn)練運動過程中的環(huán)境信息生成訓(xùn)練數(shù)據(jù);

深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練單元,適于利用所述訓(xùn)練數(shù)據(jù)采用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),以使訓(xùn)練后的所述深度神經(jīng)網(wǎng)絡(luò)適于根據(jù)尋路數(shù)據(jù)進行決策分析,并指示所述機器人向?qū)Ш侥繕?biāo)做尋路運動,所述尋路數(shù)據(jù)根據(jù)所述采集設(shè)備在尋路應(yīng)用過程中采集的數(shù)據(jù)和所述導(dǎo)航目標(biāo)得到。

可選的,所述訓(xùn)練數(shù)據(jù)生成單元包括:

運動操作確定單元,適于確定所述訓(xùn)練運動過程包含的至少一個運動操作,所述運動操作根據(jù)對應(yīng)的運動數(shù)據(jù)的指示完成;

狀態(tài)數(shù)據(jù)確定單元,適于確定每一運動操作的運動前狀態(tài)數(shù)據(jù)和運動后狀態(tài)數(shù)據(jù),所述運動前狀態(tài)數(shù)據(jù)包括所述運動操作執(zhí)行前的環(huán)境信息,所述運動后狀態(tài)數(shù)據(jù)包括所述運動操作執(zhí)行后的環(huán)境信息;

反饋獎勵數(shù)值計算單元,適于根據(jù)所述運動前狀態(tài)數(shù)據(jù)和所述運動后狀態(tài)數(shù)據(jù)計算反饋獎勵數(shù)值;

訓(xùn)練數(shù)據(jù)確定單元,適于將所述運動數(shù)據(jù)及其運動前狀態(tài)數(shù)據(jù)、運動后狀態(tài)數(shù)據(jù)以及反饋獎勵數(shù)值作為所述訓(xùn)練數(shù)據(jù)。

可選的,所述深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練單元包括:

第一前向傳播單元,適于將所述訓(xùn)練數(shù)據(jù)中的所述運動前狀態(tài)數(shù)據(jù)送入所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以獲取所述訓(xùn)練數(shù)據(jù)中的所述運動數(shù)據(jù)的價值函數(shù)值,所述運動數(shù)據(jù)的價值函數(shù)值用于評價所述機器人進行的運動操作在導(dǎo)航全程中對于到達訓(xùn)練目標(biāo)的價值;

第二前向傳播單元,適于將所述訓(xùn)練數(shù)據(jù)中的運動后狀態(tài)數(shù)據(jù)送入所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以獲得所述深度神經(jīng)網(wǎng)絡(luò)輸出的各個所述運動數(shù)據(jù)的價值函數(shù)值;

目標(biāo)價值函數(shù)值計算單元,適于根據(jù)所述深度神經(jīng)網(wǎng)絡(luò)輸出的各個所述運動數(shù)據(jù)的價值函數(shù)值中的最大值,以及所述運動數(shù)據(jù)的反饋獎勵數(shù)值,計算目標(biāo)價值函數(shù)值;

參數(shù)更新單元,適于根據(jù)所述訓(xùn)練數(shù)據(jù)、所述運動數(shù)據(jù)的價值函數(shù)值以及所述目標(biāo)價值函數(shù)值進行反向傳播,以更新所述深度神經(jīng)網(wǎng)絡(luò)的參數(shù);

迭代控制單元,適于控制所述參數(shù)更新單元基于所述第一前向傳播單元、第二前向傳播單元、目標(biāo)價值函數(shù)值計算單元更新所述神經(jīng)網(wǎng)絡(luò)的參數(shù),直至所述深度神經(jīng)網(wǎng)絡(luò)達到收斂。

可選的,所述反饋獎勵數(shù)值計算單元包括:

距離獲取單元,適于根據(jù)所述運動前狀態(tài)數(shù)據(jù)和所述運動后狀態(tài)數(shù)據(jù),分別獲取所述運動操作前后所述機器人與障礙物的距離,并且分別獲取所述運動操作前后所述機器人與訓(xùn)練目標(biāo)信息的距離;

運算單元,適于根據(jù)所述運動操作前后所述機器人與障礙物的距離和所述運動操作前后所述機器人與訓(xùn)練目標(biāo)信息的距離,計算所述反饋獎勵數(shù)值。

可選的,所述運算單元依據(jù)以下公式計算所述反饋獎勵數(shù)值r:

其中,β、δ均為調(diào)整系數(shù),TD1表征所述運動操作前所述機器人與訓(xùn)練目標(biāo)的距離,TD2表征所述運動操作后所述機器人與訓(xùn)練目標(biāo)的距離,OD1表征所述機器人在執(zhí)行所述運動操作之前與障礙物的距離,OD2表征所述機器人在執(zhí)行所述運動操作之后與障礙物的距離。

可選的,所述參數(shù)更新單元,適于在所述反向傳播的過程中采用minibatch梯度下降法。

可選的,所述深度神經(jīng)網(wǎng)絡(luò)的輸出的各個所述運動數(shù)據(jù)選自預(yù)設(shè)的運動集合。

可選的,所述目標(biāo)價值函數(shù)值計算單元,適于根據(jù)貝爾曼方程計算所述目標(biāo)價值函數(shù)值。

可選的,所述運動數(shù)據(jù)是利用貪心探索算法產(chǎn)生的。

可選的,所述運動前狀態(tài)數(shù)據(jù)還包括以下至少一種:當(dāng)前朝向信息、當(dāng)前速度信息、當(dāng)前加速度信息、當(dāng)前位置信息、訓(xùn)練目標(biāo)信息;所述運動后狀態(tài)數(shù)據(jù)包括以下至少一種:運動后朝向信息、運動后速度信息、運動后加速度信息和運動后位置信息。

可選的,所述導(dǎo)航尋路機器人還包括尋路運動指示單元,所述尋路運動指示單元包括:

最優(yōu)運動數(shù)據(jù)生成單元,適于將所述尋路數(shù)據(jù)送入訓(xùn)練后的所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以得到最優(yōu)運動數(shù)據(jù);

導(dǎo)航單元,適于使用所述最優(yōu)運動數(shù)據(jù)指示所述機器人向?qū)Ш侥繕?biāo)做尋路運動。

可選的,所述導(dǎo)航尋路機器人還包括導(dǎo)航控制單元,適于確定所述機器人是否到達導(dǎo)航目標(biāo),若是,則導(dǎo)航結(jié)束;若否,則控制所述導(dǎo)航單元繼續(xù)指示所述機器人向?qū)Ш侥繕?biāo)做尋路運動,直至到達所述導(dǎo)航目標(biāo)。

可選的,所述訓(xùn)練數(shù)據(jù)和所述尋路數(shù)據(jù)中均還包括地圖數(shù)據(jù)。

本發(fā)明實施例還提供一種導(dǎo)航尋路系統(tǒng),包括所述導(dǎo)航尋路機器人,以及所述采集設(shè)備。

可選的,所述采集設(shè)備包括以下一種或多種:超聲采集設(shè)備、激光采集設(shè)備、雷達、紅外采集設(shè)備、超寬帶采集設(shè)備、攝像頭和3D體感攝影機。

與現(xiàn)有技術(shù)相比,本發(fā)明實施例的技術(shù)方案具有以下有益效果:

本發(fā)明實施例通過采集設(shè)備采集機器人在訓(xùn)練過程中的環(huán)境信息,根據(jù)所述訓(xùn)練運動過程中的環(huán)境信息生成訓(xùn)練數(shù)據(jù),并利用所述訓(xùn)練數(shù)據(jù)采用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)采用深度強化學(xué)習(xí)的方法,使得訓(xùn)練后的深度神經(jīng)網(wǎng)絡(luò)能夠根據(jù)在尋路應(yīng)用過程中采集的數(shù)據(jù)和導(dǎo)航目標(biāo)進行尋路運動。由于導(dǎo)航尋路方法的應(yīng)用環(huán)境通常較為復(fù)雜,需要在未知環(huán)境中進行導(dǎo)航尋路,現(xiàn)有的算法通常計算量較大;在本發(fā)明實施例中,采用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),深度強化學(xué)習(xí)是可以利用神經(jīng)網(wǎng)絡(luò)將深度學(xué)習(xí)與增強學(xué)習(xí)結(jié)合起來,以實現(xiàn)從感知到動作的端對端學(xué)習(xí)的一種算法,這種算法的重要特點是機器人可以進行自主學(xué)習(xí),并且可以接收大量數(shù)據(jù)作為輸入進行訓(xùn)練,從而可以避免現(xiàn)有技術(shù)中導(dǎo)航中計算量較大和準(zhǔn)確性較差的問題。

附圖說明

圖1是現(xiàn)有技術(shù)中一種導(dǎo)航尋路方法的流程圖;

圖2是本發(fā)明實施例中一種導(dǎo)航尋路方法的流程圖;

圖3是圖2中步驟S21的一種具體實現(xiàn)的流程圖;

圖4是本發(fā)明實施例中一種計算反饋獎勵值的具體實現(xiàn)的流程圖;

圖5是本發(fā)明實施例中一種利用訓(xùn)練數(shù)據(jù)對深度神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練的具體實現(xiàn)的流程圖;

圖6是本發(fā)明實施例中一種完成導(dǎo)航尋路的方法的具體實現(xiàn)的流程圖;

圖7是本發(fā)明實施例中一種導(dǎo)航尋路機器人的結(jié)構(gòu)示意圖;

圖8是圖7中訓(xùn)練數(shù)據(jù)生成單元71的一種結(jié)構(gòu)示意圖;

圖9是圖8中反饋獎勵數(shù)值計算單元83的一種結(jié)構(gòu)示意圖;

圖10是圖7中的深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練單元72的一種結(jié)構(gòu)示意圖。

具體實施方式

如前所述,現(xiàn)有的機器人導(dǎo)航尋路的準(zhǔn)確性有待提升。具體而言,經(jīng)發(fā)明人研究發(fā)現(xiàn),現(xiàn)有的機器人導(dǎo)航尋路通?;趫D1所示的如下步驟進行計算:

步驟S11,進行環(huán)境數(shù)據(jù)采集。

步驟S12,基于所述環(huán)境數(shù)據(jù)進行特征提取,以得到環(huán)境特征;

步驟S13,根據(jù)所述環(huán)境特征進行決策分析,以進行導(dǎo)航尋路。

在現(xiàn)有技術(shù)中,由于需要基于環(huán)境數(shù)據(jù)進行特征提取,并根據(jù)提取到的環(huán)境特征進行決策分析,而在特征提取的過程中不可避免會造成數(shù)據(jù)損失,故導(dǎo)航的準(zhǔn)確性較差。

另外,由于導(dǎo)航尋路方法的應(yīng)用環(huán)境通常較為復(fù)雜,需要在未知環(huán)境中進行導(dǎo)航尋路,現(xiàn)有技術(shù)中的算法需要進行大量的特征提取,決策分析時也需要大量的計算,總的計算量較大。

而在本發(fā)明實施例中,通過利用利用所述訓(xùn)練數(shù)據(jù)采用深度強化學(xué)習(xí)(Deep Reinforcement Learning,DRL)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)的方式,使得使訓(xùn)練后的所述深度神經(jīng)網(wǎng)絡(luò)適于根據(jù)尋路數(shù)據(jù)進行決策分析,并指示所述機器人向?qū)Ш侥繕?biāo)做尋路運動。深度強化學(xué)習(xí)是可以利用神經(jīng)網(wǎng)絡(luò)將深度學(xué)習(xí)與增強學(xué)習(xí)結(jié)合起來,以實現(xiàn)從感知到動作的端對端學(xué)習(xí)的一種算法,這種算法的重要特點是機器人可以進行自主學(xué)習(xí),神經(jīng)網(wǎng)絡(luò)的訓(xùn)練結(jié)果由神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù)決定,從而可以避人為設(shè)定算法進行特征提取損失訓(xùn)練數(shù)據(jù),進一步可以提升導(dǎo)航尋路的準(zhǔn)確性。另外,由于本發(fā)明實施例中無需設(shè)計特征提取的算法,也可以減少計算量。

為使本發(fā)明的上述目的、特征和有益效果能夠更為明顯易懂,下面結(jié)合附圖對本發(fā)明的具體實施例做詳細(xì)的說明。

圖2是本發(fā)明實施例中一種導(dǎo)航尋路方法的流程圖,可以包括如下步驟:

步驟S21,通過采集設(shè)備采集機器人在訓(xùn)練運動過程中的環(huán)境信息,并根據(jù)所述訓(xùn)練運動過程中的環(huán)境信息生成訓(xùn)練數(shù)據(jù)。

步驟S22,利用所述訓(xùn)練數(shù)據(jù)采用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),以使訓(xùn)練后的所述深度神經(jīng)網(wǎng)絡(luò)適于根據(jù)尋路數(shù)據(jù)進行決策分析,并指示所述機器人向?qū)Ш侥繕?biāo)做尋路運動,所述尋路數(shù)據(jù)根據(jù)所述采集設(shè)備在尋路應(yīng)用過程中采集的數(shù)據(jù)和所述導(dǎo)航目標(biāo)得到。

其中,機器人可以是能夠進行移動的設(shè)備,其能夠完成的功能可以是多樣的。采集設(shè)備可以裝載于機器人,也可以位于機器人應(yīng)用的環(huán)境中,具體可以包括以下任一種或多種:超聲采集設(shè)備、激光采集設(shè)備、雷達、紅外采集設(shè)備、超寬帶采集設(shè)備、攝像頭和3D體感攝影機。

采集設(shè)備根據(jù)信息來源可以分為主動設(shè)備和被動設(shè)備兩種:通過發(fā)射測量信號,再接收測量信號反射信號的設(shè)備可以稱為主動設(shè)備,如激光采集設(shè)備,雷達采集設(shè)備,超聲采集設(shè)備,超寬帶(Ultra Wideband,UWB)采集設(shè)備等:通過物體自身所發(fā)出的信息進行處理的模式稱為被動模式,如攝像頭,紅外攝像頭等是通過物體反射的光線獲得的圖像信息。

環(huán)境信息可以是通過采集設(shè)備對機器人所處的環(huán)境進行采集得到的信息,具體而言,可以包括反應(yīng)機器人與環(huán)境中物體的相對關(guān)系的信息,例如可以包括反應(yīng)機器人與環(huán)境中障礙物之間的信息。

當(dāng)訓(xùn)練數(shù)據(jù)和所述尋路數(shù)據(jù)中包括地圖數(shù)據(jù)時,環(huán)境信息還可以包括地圖數(shù)據(jù)。其中,地圖數(shù)據(jù)可以是存儲于本地或云端的數(shù)據(jù),可以指示障礙物的位置,例如墻體位置等。由于地圖數(shù)據(jù)提供的障礙物位置更為精確,并且地圖數(shù)據(jù)無需通過采集設(shè)備進行采集,故當(dāng)訓(xùn)練數(shù)據(jù)和所述尋路數(shù)據(jù)中包括地圖數(shù)據(jù)時,導(dǎo)航的效率和準(zhǔn)確性可以得到進一步提升。

采集設(shè)備可以包括一種或多種設(shè)備,相應(yīng)地,環(huán)境信息中可以包括一種或多種信息。主動設(shè)備有受外界環(huán)境影響小,結(jié)果更精確的優(yōu)點,缺點是獲取信息不完整,被動設(shè)備獲取信息完整,速度快,但易受外界噪聲影響,如容易受到光照、溫度等條件的影響。

更進一步而言,每種采集設(shè)備以及對應(yīng)種類的環(huán)境信息均有各自的優(yōu)點或缺點,故若環(huán)境信息中包含多種的信息,例如包含一種或多種主動設(shè)備采集到的信息和一種或多種被動設(shè)備采集到的信息,可以更加準(zhǔn)確的對深度神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,進一步可以更加準(zhǔn)確的進行導(dǎo)航尋路。

在環(huán)境信息中包含多種信息時,更能體現(xiàn)本發(fā)明實施例中導(dǎo)航尋路方法對計算量的節(jié)省。

在現(xiàn)有技術(shù)中,若需要環(huán)境數(shù)據(jù)中包含多種信息,則需要進行信息融合。信息融合按照其所融合信息的抽象程度可以分為三個級別:數(shù)據(jù)層信息融合;特征層信息融合;決策層信息融合。根據(jù)具體問題,也可將這些融合混合使用。

其中,數(shù)據(jù)層信息融合所融合的是原始的環(huán)境數(shù)據(jù),然后根據(jù)融合后數(shù)據(jù)進行特征提取,決策分析。這種方式數(shù)據(jù)損失少,精度較高,但是只能融合同種傳感器的數(shù)據(jù),融合時需要處理好傳感器信息的不穩(wěn)定性。

特征層信息融合所融合的對象是從原始數(shù)據(jù)中提取的特征,提取后的特征信息比原始信息跟抽象,有更高的壓縮比,可以根據(jù)需求來修改特征,可以在一定程度上提高處理速度,但在融合過程中就必然會有信息丟失。

決策層信息融合是高層信息融合,可以利用各種方法進行決策分析后,對決策結(jié)果進行融合,得到最終結(jié)果。靈活性高,抗干擾能力強,但是數(shù)據(jù)信息損失嚴(yán)重。

可以看出,以上現(xiàn)有的信息融合方式都需要人為設(shè)定一定的算法或人工提取數(shù)據(jù)特征,因此必定會造成一定級別的數(shù)據(jù)損失,同時不可避免的帶來人為主觀因素的影響。

在本發(fā)明實施例中,利用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),可以無需人為設(shè)定算法進行特征提取,從而可以避免特征提取過程的數(shù)據(jù)損失。

深度強化學(xué)習(xí)是近年來興起和火熱的機器學(xué)習(xí)前沿算法,是利用神經(jīng)網(wǎng)絡(luò)將深度學(xué)習(xí)與增強學(xué)習(xí)結(jié)合起來從而實現(xiàn)從感知到動作的學(xué)習(xí)的一種算法。深度強化學(xué)習(xí)是既滿足深度學(xué)習(xí)的特點,又滿足強化學(xué)習(xí)的特點的一種學(xué)習(xí)方式,其中:

深度學(xué)習(xí)(Deep learning)的概念源于人工神經(jīng)網(wǎng)絡(luò)的研究,包含多隱層的多層感知器就是一種深度學(xué)習(xí)結(jié)構(gòu)。深度學(xué)習(xí)可以通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示;

強化學(xué)習(xí)(Reinforcement learning)也叫增強學(xué)習(xí),是一種智能系統(tǒng)從環(huán)境到行為映射的機器學(xué)習(xí)。基本原理是如果某個行為策略導(dǎo)致環(huán)境正的回饋獎勵,那么以后產(chǎn)生這個行為策略的趨勢便會加強。強化學(xué)習(xí)的目標(biāo)是在每個離散狀態(tài)發(fā)現(xiàn)最優(yōu)策略以使期望的獎勵和最大。

神經(jīng)網(wǎng)絡(luò)是一種應(yīng)用類似于大腦神經(jīng)突觸聯(lián)接的結(jié)構(gòu)進行信息處理的數(shù)學(xué)模型。這種網(wǎng)絡(luò)依靠系統(tǒng)的復(fù)雜程度,通過調(diào)整內(nèi)部大量節(jié)點之間相互連接的關(guān)系,從而達到處理信息的目的。深度神經(jīng)網(wǎng)絡(luò)(deep neural network)是神經(jīng)網(wǎng)絡(luò)的一種,具有非線性程度強,逼近能力強的特點。在具體實施中,深度神經(jīng)網(wǎng)絡(luò)可以是為3至5層,或者也可以是更多層,具體可以根據(jù)導(dǎo)航方法的需要確定。

當(dāng)環(huán)境信息中包含多種信息時,可以將根據(jù)這些信息生成的訓(xùn)練數(shù)據(jù)均作為深度神經(jīng)網(wǎng)絡(luò)的輸入,以利用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),使得神經(jīng)網(wǎng)絡(luò)可以對尋路數(shù)據(jù)進行決策分析。這種融合方式類似于現(xiàn)有技術(shù)中數(shù)據(jù)層信息融合,融合的是未經(jīng)過特征提取的數(shù)據(jù),數(shù)據(jù)損失較少,精度高,同時也無只能融合同種傳感器的數(shù)據(jù)的限制。

可以看出,由于本發(fā)明實施例中采用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),故本發(fā)明實施例中的環(huán)境信息中可以包括多種信息,可以包括由主動設(shè)備采集到的信息中的一種或多種,也可以包括由被動設(shè)備采集到的環(huán)境信息中的一種或多種,或者可以既包括由主動設(shè)備采集到的信息中的一種或多種同時也包括被動設(shè)備采集到的環(huán)境信息中的一種或多種。利用深度強化學(xué)習(xí)方法進行深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,無需人為設(shè)定算法進行特征提取,從而可以減少計算量并提升導(dǎo)航尋路方法的準(zhǔn)確性。

根據(jù)所述訓(xùn)練運動過程中的環(huán)境信息生成訓(xùn)練數(shù)據(jù)時,可以結(jié)合運動操作和運動操作前后的環(huán)境信息,以使得深度神經(jīng)網(wǎng)絡(luò)可以根據(jù)運動操作前后的環(huán)境信息和對運動操作的評價進行深度強化學(xué)習(xí),進而可以使得訓(xùn)練后的深度神經(jīng)網(wǎng)絡(luò)可以根據(jù)尋路數(shù)據(jù)進行決策分析。

根據(jù)所述訓(xùn)練運動過程中的環(huán)境信息生成訓(xùn)練數(shù)據(jù)時,也可以結(jié)合運動操作和運動操作前后的環(huán)境信息以及訓(xùn)練目標(biāo),使得訓(xùn)練后的深度神經(jīng)網(wǎng)絡(luò)對運動操作的評價是結(jié)合訓(xùn)練目標(biāo)進行的,從而可以從全局的角度評價運動操作,進一步可以使得訓(xùn)練后的神經(jīng)網(wǎng)絡(luò)能夠更加準(zhǔn)確的控制導(dǎo)航尋路過程。

具體而言,參見圖3,根據(jù)所述訓(xùn)練運動過程中的環(huán)境信息生成訓(xùn)練數(shù)據(jù)可以包括如下步驟:

步驟S31,確定所述訓(xùn)練運動過程包含的至少一個運動操作,所述運動操作根據(jù)對應(yīng)的運動數(shù)據(jù)的指示完成;

步驟S32,確定每一運動操作的運動前狀態(tài)數(shù)據(jù)和運動后狀態(tài)數(shù)據(jù),所述運動前狀態(tài)數(shù)據(jù)包括所述運動操作執(zhí)行前的環(huán)境信息,所述運動后狀態(tài)數(shù)據(jù)包括所述運動操作執(zhí)行后的環(huán)境信息;

步驟S33,根據(jù)所述運動前狀態(tài)數(shù)據(jù)和所述運動后狀態(tài)數(shù)據(jù)計算反饋獎勵數(shù)值;

步驟S34,將所述運動數(shù)據(jù)及其運動前狀態(tài)數(shù)據(jù)、運動后狀態(tài)數(shù)據(jù)以及反饋獎勵數(shù)值作為所述訓(xùn)練數(shù)據(jù)。

其中,運動操作可以包括向某個朝向以某個速度行進,運動操作對應(yīng)的運動數(shù)據(jù)可以是根據(jù)運動數(shù)據(jù)的指示完成的。在具體實施中,運動數(shù)據(jù)可以選自預(yù)設(shè)的運動集合,例如,預(yù)設(shè)的運動集合將平面運動方向分為64個,運動數(shù)據(jù)可以指示機器人向64個方向中任一個方向進行運動操作。

運動數(shù)據(jù)的生成有兩種方式,一是隨機生成的,一是在訓(xùn)練過程中,根據(jù)當(dāng)前的深度神經(jīng)網(wǎng)絡(luò)生成的。在一個非限定例子中,可以利用貪心探索算法(ε-greedy-exploration)產(chǎn)生所述運動數(shù)據(jù)。可以按照概率ε進行貪心或探索的算法,其中貪心算法返回當(dāng)前情況的最優(yōu)解,但未必是最終最優(yōu)解。

具體而言,可以按照一定概率ε使用兩種方法產(chǎn)生運動,一是產(chǎn)生隨機運動,一是采用深度神經(jīng)網(wǎng)絡(luò)計算獲得當(dāng)前的最佳的運動。根據(jù)場景不同,兩種方法所占比例不同,最初開始訓(xùn)練時,使用隨即運動的概率較高,ε較大,比如可以為0.9,隨著訓(xùn)練進行,逐步減小ε,例如可以減小直至ε為0.1。

每一運動操作的運動前狀態(tài)數(shù)據(jù)和運動后狀態(tài)數(shù)據(jù)中,均可以包括對應(yīng)的環(huán)境信息,如前所述,環(huán)境信息中可以包含體現(xiàn)機器人與環(huán)境中障礙物距離的信息。

在具體實施中,所述運動前狀態(tài)數(shù)據(jù)還包括以下至少一種:當(dāng)前朝向信息、當(dāng)前速度信息、當(dāng)前加速度信息、當(dāng)前位置信息、訓(xùn)練目標(biāo)信息,;所述運動后狀態(tài)數(shù)據(jù)包括以下至少一種:運動后朝向信息、運動后速度信息、運動后加速度信息和運動后位置信息。其中,訓(xùn)練目標(biāo)信息可以是在訓(xùn)練過程中設(shè)置的目標(biāo)位置。訓(xùn)練目標(biāo)位置信息和點云地圖信息在運動前后保持一致。

運動前狀態(tài)數(shù)據(jù)以及運動后狀態(tài)數(shù)據(jù)均可以是前述采集設(shè)備采集的數(shù)據(jù),也可以是實現(xiàn)建立的地圖數(shù)據(jù)。

反饋獎勵數(shù)值可以用來指示所述運動操作的優(yōu)劣,參見圖4,在具體實施中,可以通過如下步驟計算所述反饋獎勵值:

步驟S41,根據(jù)所述運動前狀態(tài)數(shù)據(jù)和所述運動后狀態(tài)數(shù)據(jù),分別獲取所述運動操作前后所述機器人與障礙物的距離,并且分別獲取所述運動操作前后所述機器人與訓(xùn)練目標(biāo)信息的距離;

步驟S42,根據(jù)所述運動操作前后所述機器人與障礙物的距離和所述運動操作前后所述機器人與訓(xùn)練目標(biāo)信息的距離,計算所述反饋獎勵數(shù)值。

可以理解的是,根據(jù)所述訓(xùn)練運動過程中的環(huán)境信息生成訓(xùn)練數(shù)據(jù)還可以包括數(shù)據(jù)預(yù)處理的過程,根據(jù)環(huán)境信息來源不同采用不同的數(shù)據(jù)預(yù)處理方式,例如可采用的數(shù)據(jù)預(yù)處理方式有零均值化,正則化,PCA,白化(Whitening),降噪處理等。當(dāng)采集設(shè)備的采樣頻率不一致時,可以通過緩存處理的方式,進行環(huán)境信息的預(yù)處理。

在一具體實現(xiàn)中,可以依據(jù)以下公式計算所述反饋獎勵數(shù)值r:

其中,β、δ均為調(diào)整系數(shù),TD1表征所述運動操作前所述機器人與訓(xùn)練目標(biāo)的距離,TD2表征所述運動操作后所述機器人與訓(xùn)練目標(biāo)的距離,OD1表征所述機器人在執(zhí)行所述運動操作之前與障礙物的距離,OD2表征所述機器人在執(zhí)行所述運動操作之后與障礙物的距離。

在得到訓(xùn)練數(shù)據(jù)后,可以利用訓(xùn)練數(shù)據(jù)對深度神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,在具體實施中,參見圖5,可以包括如下步驟:

步驟S51,將所述訓(xùn)練數(shù)據(jù)中的所述運動前狀態(tài)數(shù)據(jù)送入所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以獲取所述訓(xùn)練數(shù)據(jù)中的所述運動數(shù)據(jù)的價值函數(shù)值,所述運動數(shù)據(jù)的價值函數(shù)值用于評價所述機器人進行的運動操作在導(dǎo)航全程中對于到達訓(xùn)練目標(biāo)的價值;

步驟S52,將所述訓(xùn)練數(shù)據(jù)中的運動后狀態(tài)數(shù)據(jù)送入所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以獲得所述深度神經(jīng)網(wǎng)絡(luò)輸出的各個所述運動數(shù)據(jù)的價值函數(shù)值;

步驟S53,根據(jù)所述深度神經(jīng)網(wǎng)絡(luò)輸出的各個所述運動數(shù)據(jù)的價值函數(shù)值中的最大值,以及所述運動數(shù)據(jù)的反饋獎勵數(shù)值,計算目標(biāo)價值函數(shù)值;

步驟S54,根據(jù)所述訓(xùn)練數(shù)據(jù)、所述運動數(shù)據(jù)的價值函數(shù)值以及所述目標(biāo)價值函數(shù)值進行反向傳播,以更新所述深度神經(jīng)網(wǎng)絡(luò)的參數(shù);

步驟S55,判斷深度神經(jīng)網(wǎng)絡(luò)是否達到收斂,若是則結(jié)束更新,若否則根據(jù)上述步驟S51-S54迭代更新所述深度神經(jīng)網(wǎng)絡(luò)的參數(shù),直至所述深度神經(jīng)網(wǎng)絡(luò)達到收斂。

通過深度神經(jīng)網(wǎng)絡(luò)可以得到輸入運動前狀態(tài)數(shù)據(jù),可以得到輸出的各個運動數(shù)據(jù)的價值函數(shù)值。價值函數(shù)值可以是對在機器人當(dāng)前狀態(tài)下,對各個運動數(shù)據(jù)的優(yōu)劣的評價。在未經(jīng)訓(xùn)練時,得到的價值函數(shù)值對各個運動數(shù)據(jù)的優(yōu)劣的評價通常有較大偏差,對深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練的過程,即使得價值函數(shù)值趨于準(zhǔn)確的過程。

在具體實施中,深度神經(jīng)網(wǎng)絡(luò)輸出的運動數(shù)據(jù)以及訓(xùn)練數(shù)據(jù)中的運動數(shù)據(jù)可以與預(yù)設(shè)的運動集合對應(yīng),在將運動前狀態(tài)數(shù)據(jù)送入所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播后,可以得到對應(yīng)預(yù)設(shè)的運動集合的各個運動數(shù)據(jù)的價值函數(shù),故在步驟S51中可以獲取所述訓(xùn)練數(shù)據(jù)中的所述運動數(shù)據(jù)的價值函數(shù)值。

在一具體實現(xiàn)中,在步驟S53中,可以根據(jù)貝爾曼方程計算所述目標(biāo)價值函數(shù)值。貝爾曼方程(Bellman Equation)也被稱作動態(tài)規(guī)劃方程,是一種動態(tài)規(guī)劃方法,把動態(tài)最佳化問題變成簡單的子問題。具體地,依據(jù)貝爾曼方程,本發(fā)明實施例中的目標(biāo)價值函數(shù)可以表示為:r+γ*Max(Q'(s',a'))。

其中,r為反饋獎勵數(shù)值,可以由圖3中步驟S33計算得到;γ為數(shù)值在0與1之間的貼現(xiàn)因子;Max(Q’(s’,a’))為所述深度神經(jīng)網(wǎng)絡(luò)輸出的各個所述運動數(shù)據(jù)的價值函數(shù)值中的最大值。

在具體實施中,可以采用梯度下降法進行反向傳播以更新參數(shù),例如可以在所述反向傳播的過程中采用minibatch梯度下降法。梯度下降法:是一個最優(yōu)化算法,也稱為最速下降法,是用負(fù)梯度方向為搜索方向的,越接近目標(biāo)值,前進越慢。梯度下降法常用于機器學(xué)習(xí)中的最優(yōu)化問題。梯度下降法根據(jù)每次處理的數(shù)據(jù)量分為批量梯度下降法,隨機梯度下降法和minibatch梯度下降法。

為了不影響深度神經(jīng)網(wǎng)絡(luò)參數(shù)的更新,對于訓(xùn)練數(shù)據(jù)中未包含的與預(yù)設(shè)的運動集合對應(yīng)的其他運動數(shù)據(jù),其目標(biāo)價值函數(shù)值可以直接為對應(yīng)的反饋獎勵數(shù)值。

在根據(jù)步驟S51至步驟S54經(jīng)過有限次的迭代更新后,深度神經(jīng)網(wǎng)絡(luò)可以達到收斂,從而完成對深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。

參見圖6,在完成對深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練后,可以利用如下步驟完成導(dǎo)航尋路:

步驟a:將所述尋路數(shù)據(jù)送入訓(xùn)練后的所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以得到最優(yōu)運動數(shù)據(jù);

步驟b:使用所述最優(yōu)運動數(shù)據(jù)指示所述機器人向?qū)Ш侥繕?biāo)做尋路運動。

其中,尋路數(shù)據(jù)的生成過程可以相同或者類似于訓(xùn)練數(shù)據(jù)的生成過程,導(dǎo)航目標(biāo)類似于訓(xùn)練過程中的訓(xùn)練目標(biāo);生成尋路數(shù)據(jù)的過程同樣可以包括預(yù)處理的過程。

在具體實施中,將尋路數(shù)據(jù)送入訓(xùn)練后的所述深度神經(jīng)網(wǎng)絡(luò)后,可以得到對應(yīng)各個運動操作的運動數(shù)據(jù)的價值函數(shù)值,根據(jù)各個價值函數(shù)值,可以確定最優(yōu)運動數(shù)據(jù)。

在一具體實現(xiàn)中,在向?qū)Ш侥繕?biāo)做尋路運動之后,還可以確定所述機器人是否到達導(dǎo)航目標(biāo),若是,則導(dǎo)航結(jié)束;若否,則重復(fù)執(zhí)行上述步驟a和b做尋路運動,直至到達所述導(dǎo)航目標(biāo)。

在本發(fā)明實施例中,通過采集設(shè)備采集在訓(xùn)練運動過程中的環(huán)境信息,并根據(jù)所述訓(xùn)練運動過程中的環(huán)境信息生成訓(xùn)練數(shù)據(jù),生成訓(xùn)練數(shù)據(jù)的過程中環(huán)境信息并沒有被提取特征,從而可以避免環(huán)境信息的損失,進而可以提升導(dǎo)航尋路方法的準(zhǔn)確性。

采用深度強化學(xué)習(xí)的方式訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò),直接通過深度神經(jīng)網(wǎng)絡(luò)從輸入數(shù)據(jù)獲得運動數(shù)據(jù),避免了人工設(shè)計尋路避障算法,故本發(fā)明實施例中的算法不會因為環(huán)境的復(fù)雜而變得過于復(fù)雜和難以計算,因此在復(fù)雜環(huán)境中進行導(dǎo)航尋路時計算量更小。

由于本發(fā)明實施例中通過利用訓(xùn)練數(shù)據(jù)采用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),訓(xùn)練數(shù)據(jù)是根據(jù)環(huán)境數(shù)據(jù)生成的,而環(huán)境信息中可以包括多種信息,從而本發(fā)明實施例中的導(dǎo)航尋路方法可以支持多種采集設(shè)備采集到信息的融合,并且在改變采集設(shè)備的種類時,無需改變整體算法流程。

本發(fā)明實施例還提供一種導(dǎo)航尋路機器人,其結(jié)構(gòu)示意圖參見圖7,可以包括:

訓(xùn)練數(shù)據(jù)生成單元71,適于通過采集設(shè)備采集機器人在訓(xùn)練運動過程中的環(huán)境信息,并根據(jù)所述訓(xùn)練運動過程中的環(huán)境信息生成訓(xùn)練數(shù)據(jù);

深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練單元72,適于利用所述訓(xùn)練數(shù)據(jù)采用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),以使訓(xùn)練后的所述深度神經(jīng)網(wǎng)絡(luò)適于根據(jù)尋路數(shù)據(jù)進行決策分析,并指示所述機器人向?qū)Ш侥繕?biāo)做尋路運動,所述尋路數(shù)據(jù)根據(jù)所述采集設(shè)備在尋路應(yīng)用過程中采集的數(shù)據(jù)和所述導(dǎo)航目標(biāo)得到。

導(dǎo)航尋路機器人可以是能夠進行移動的設(shè)備,其能夠完成的功能可以是多樣的。采集設(shè)備可以裝載于機器人,也可以位于機器人應(yīng)用的環(huán)境中,具體可以包括以下任一種或多種:超聲采集設(shè)備、激光采集設(shè)備、雷達、紅外采集設(shè)備、超寬帶采集設(shè)備、攝像頭和3D體感攝影機。

采集設(shè)備可以包括一種或多種設(shè)備,相應(yīng)地,環(huán)境信息中可以包括一種或多種信息。主動設(shè)備有受外界環(huán)境影響小,結(jié)果更精確的優(yōu)點,缺點是獲取信息不完整,被動設(shè)備獲取信息完整,速度快,但易受外界噪聲影響,如容易受到光照、溫度等條件的影響。

更進一步而言,每種采集設(shè)備以及對應(yīng)種類的環(huán)境信息均有各自的優(yōu)點或缺點,故若環(huán)境信息中包含多種的信息,例如包含一種或多種主動設(shè)備采集到的信息和一種或多種被動設(shè)備采集到的信息,可以更加準(zhǔn)確的對深度神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,進一步可以更加準(zhǔn)確的進行導(dǎo)航尋路。

在本發(fā)明實施例中,利用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),可以無需人為設(shè)定算法進行特征提取,從而可以避免特征提取過程的數(shù)據(jù)損失。

參見圖8,圖7中的訓(xùn)練數(shù)據(jù)生成單元71可以包括:

運動操作確定單元81,適于確定所述訓(xùn)練運動過程包含的至少一個運動操作,所述運動操作根據(jù)對應(yīng)的運動數(shù)據(jù)的指示完成;

狀態(tài)數(shù)據(jù)確定單元82,適于確定每一運動操作的運動前狀態(tài)數(shù)據(jù)和運動后狀態(tài)數(shù)據(jù),所述運動前狀態(tài)數(shù)據(jù)包括所述運動操作執(zhí)行前的環(huán)境信息,所述運動后狀態(tài)數(shù)據(jù)包括所述運動操作執(zhí)行后的環(huán)境信息;

反饋獎勵數(shù)值計算單元83,適于根據(jù)所述運動前狀態(tài)數(shù)據(jù)和所述運動后狀態(tài)數(shù)據(jù)計算反饋獎勵數(shù)值;

訓(xùn)練數(shù)據(jù)確定單元84,適于將所述運動數(shù)據(jù)及其運動前狀態(tài)數(shù)據(jù)、運動后狀態(tài)數(shù)據(jù)以及反饋獎勵數(shù)值作為所述訓(xùn)練數(shù)據(jù)。

參見圖9,圖8中反饋獎勵數(shù)值計算單元83可以包括:

距離獲取單元91,適于根據(jù)所述運動前狀態(tài)數(shù)據(jù)和所述運動后狀態(tài)數(shù)據(jù),分別獲取所述運動操作前后所述機器人與障礙物的距離,并且分別獲取所述運動操作前后所述機器人與訓(xùn)練目標(biāo)信息的距離;

運算單元92,適于根據(jù)所述運動操作前后所述機器人與障礙物的距離和所述運動操作前后所述機器人與訓(xùn)練目標(biāo)信息的距離,計算所述反饋獎勵數(shù)值。

所述運算單元92可以依據(jù)以下公式計算所述反饋獎勵數(shù)值r:

其中,β、δ均為調(diào)整系數(shù),TD1表征所述運動操作前所述機器人與訓(xùn)練目標(biāo)的距離,TD2表征所述運動操作后所述機器人與訓(xùn)練目標(biāo)的距離,OD1表征所述機器人在執(zhí)行所述運動操作之前與障礙物的距離,OD2表征所述機器人在執(zhí)行所述運動操作之后與障礙物的距離。

參見圖10,圖7中的深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練單元72可以包括:

第一前向傳播單元101,適于將所述訓(xùn)練數(shù)據(jù)中的所述運動前狀態(tài)數(shù)據(jù)送入所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以獲取所述訓(xùn)練數(shù)據(jù)中的所述運動數(shù)據(jù)的價值函數(shù)值,所述運動數(shù)據(jù)的價值函數(shù)值用于評價所述機器人進行的運動操作在導(dǎo)航全程中對于到達訓(xùn)練目標(biāo)的價值;

第二前向傳播單元102,適于將所述訓(xùn)練數(shù)據(jù)中的運動后狀態(tài)數(shù)據(jù)送入所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以獲得所述深度神經(jīng)網(wǎng)絡(luò)輸出的各個所述運動數(shù)據(jù)的價值函數(shù)值;

目標(biāo)價值函數(shù)值計算單元103,適于根據(jù)所述深度神經(jīng)網(wǎng)絡(luò)輸出的各個所述運動數(shù)據(jù)的價值函數(shù)值中的最大值,以及所述運動數(shù)據(jù)的反饋獎勵數(shù)值,計算目標(biāo)價值函數(shù)值;

參數(shù)更新單元104,適于根據(jù)所述訓(xùn)練數(shù)據(jù)、所述運動數(shù)據(jù)的價值函數(shù)值以及所述目標(biāo)價值函數(shù)值進行反向傳播,以更新所述深度神經(jīng)網(wǎng)絡(luò)的參數(shù);

迭代控制單元105,適于控制所述參數(shù)更新單元104基于所述第一前向傳播單元、第二前向傳播單元、目標(biāo)價值函數(shù)值計算單元更新所述神經(jīng)網(wǎng)絡(luò)的參數(shù),直至所述深度神經(jīng)網(wǎng)絡(luò)達到收斂。

其中,參數(shù)更新單元104可以在所述反向傳播的過程中采用minibatch梯度下降法。所述深度神經(jīng)網(wǎng)絡(luò)的輸出的各個所述運動數(shù)據(jù)選自預(yù)設(shè)的運動集合。

目標(biāo)價值函數(shù)值計算單元103,可以根據(jù)貝爾曼方程計算所述目標(biāo)價值函數(shù)值。

本發(fā)明實施例中的運動數(shù)據(jù)是利用貪心探索算法產(chǎn)生的。所述運動前狀態(tài)數(shù)據(jù)還可以包括以下至少一種:當(dāng)前朝向信息、當(dāng)前速度信息、當(dāng)前加速度信息、當(dāng)前位置信息、訓(xùn)練目標(biāo)信息;所述運動后狀態(tài)數(shù)據(jù)包括以下至少一種:運動后朝向信息、運動后速度信息、運動后加速度信息和運動后位置信息。

繼續(xù)參見圖7,導(dǎo)航尋路機器人還可以包括尋路運動指示單元73,尋路運動指示單元73具體可以包括:最優(yōu)運動數(shù)據(jù)生成單元(圖未示),適于將所述尋路數(shù)據(jù)送入訓(xùn)練后的所述深度神經(jīng)網(wǎng)絡(luò)并進行前向傳播,以得到最優(yōu)運動數(shù)據(jù);導(dǎo)航單元(圖未示),適于使用所述最優(yōu)運動數(shù)據(jù)指示所述機器人向?qū)Ш侥繕?biāo)做尋路運動。

進一步,導(dǎo)航尋路機器人還可以包括導(dǎo)航控制單元(圖未示),適于確定所述機器人是否到達導(dǎo)航目標(biāo),若是,則導(dǎo)航結(jié)束;若否,則控制所述導(dǎo)航單元繼續(xù)指示所述機器人向?qū)Ш侥繕?biāo)做尋路運動,直至到達所述導(dǎo)航目標(biāo)。

本發(fā)明實施例中的深度神經(jīng)網(wǎng)絡(luò)的神經(jīng)網(wǎng)絡(luò)層數(shù)范圍為3至5層,或者也可以是更多層,具體可以根據(jù)導(dǎo)航方法的需要確定。

本發(fā)明實施例中的導(dǎo)航尋路機器人所涉及的名詞的解釋以及工作原理,可以參見導(dǎo)航尋路方法,在此不再贅述。

本發(fā)明實施例中的導(dǎo)航尋路機器人還可以包括相應(yīng)的機殼、驅(qū)動機構(gòu)、以及其他實現(xiàn)機器人具體功能的機構(gòu)。導(dǎo)航尋路機器人中的各個單元,可以是結(jié)合外部的傳感器和通用處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)或其它可編程邏輯器件、分立的門或晶體管邏輯、分立的硬件組件、或其設(shè)計成執(zhí)行本文所描述功能的任何組合來實現(xiàn)或執(zhí)行。

本發(fā)明實施例還提供一種航尋路系統(tǒng),可以包括本發(fā)明實施例中的導(dǎo)航尋路機器人,以及采集設(shè)備。

采集設(shè)備可以部署于導(dǎo)航尋路機器人的應(yīng)用環(huán)境中,可以根據(jù)需要部署多個采集設(shè)備。采集設(shè)備可以包括以下一種或多種:超聲采集設(shè)備、激光采集設(shè)備、雷達、紅外采集設(shè)備、超寬帶采集設(shè)備、攝像頭和3D體感攝影機。

由于導(dǎo)航尋路方法的應(yīng)用環(huán)境通常較為復(fù)雜,需要在未知環(huán)境中進行導(dǎo)航尋路,現(xiàn)有的算法通常計算量較大;在本發(fā)明實施例中的方法、機器人及系統(tǒng),采用深度強化學(xué)習(xí)的方法訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),深度強化學(xué)習(xí)是可以利用神經(jīng)網(wǎng)絡(luò)將深度學(xué)習(xí)與增強學(xué)習(xí)結(jié)合起來,以實現(xiàn)從感知到動作的端對端學(xué)習(xí)的一種算法,這種算法的重要特點是機器人可以進行自主學(xué)習(xí),并且可以接收大量數(shù)據(jù)作為輸入進行訓(xùn)練,從而可以避免現(xiàn)有技術(shù)中導(dǎo)航中計算量較大和準(zhǔn)確性較差的問題。

本領(lǐng)域普通技術(shù)人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲于一計算機可讀存儲介質(zhì)中,存儲介質(zhì)可以包括:ROM、RAM、磁盤或光盤等。

雖然本發(fā)明披露如上,但本發(fā)明并非限定于此。任何本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),均可作各種更動與修改,因此本發(fā)明的保護范圍應(yīng)當(dāng)以權(quán)利要求所限定的范圍為準(zhǔn)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1