本發(fā)明提供一種基于深度增強(qiáng)學(xué)習(xí)的家用掃地機(jī)器人的設(shè)計(jì)方法,屬于智能家居領(lǐng)域。
背景技術(shù):
目前,使用掃地機(jī)器人的家庭越來越多?,F(xiàn)在市場上的掃地機(jī)器人進(jìn)入一個(gè)新的環(huán)境工作時(shí),首先要按照算法對(duì)整個(gè)房間進(jìn)行遍歷,完成建圖和定位。然后構(gòu)建語義地圖,最后進(jìn)行路徑規(guī)劃,然后再開始對(duì)房間的清潔。其中,遍歷房間的方法往往是掃地機(jī)器人一直貼著一條墻壁走,形成一個(gè)閉合回路后,再逐漸填補(bǔ)中間空白位置,這種做法路程較長,會(huì)花費(fèi)大量的時(shí)間。同樣,路徑規(guī)劃算法不僅復(fù)雜、需要大量的計(jì)算和人力工程,而且不夠完善,不能使掃地機(jī)器人以最優(yōu)路徑工作。
近年來,深度增強(qiáng)學(xué)習(xí)發(fā)展迅速,在棋類博弈和一些模擬游戲中取得了很好的表現(xiàn)。本發(fā)明構(gòu)建掃地機(jī)器人智能體,通過給予智能體獎(jiǎng)勵(lì)和懲罰信息,使其知道自身行為的正確與否。智能體通過我們給予的獎(jiǎng)勵(lì)和懲罰信息進(jìn)行長時(shí)間的學(xué)習(xí),最終具有自主決策的能力,能自如的躲避障礙、規(guī)劃路徑,并對(duì)房間進(jìn)行高效的清掃。
技術(shù)實(shí)現(xiàn)要素:
1.目的:
本發(fā)明的目的是提供一種基于深度增強(qiáng)學(xué)習(xí)的家用掃地機(jī)器人的設(shè)計(jì)方法。該方法以激光雷達(dá)為傳感器,對(duì)掃地機(jī)器人進(jìn)行實(shí)時(shí)定位以及對(duì)掃地機(jī)器人周圍的二維水平平面空間進(jìn)行地圖構(gòu)件(即slam),以slam圖像作為卷積循環(huán)神經(jīng)網(wǎng)絡(luò)(即cnn+lstm神經(jīng)網(wǎng)絡(luò))的輸入,該網(wǎng)絡(luò)產(chǎn)生控制掃地機(jī)器人動(dòng)作的指令。通過一種通用深度增強(qiáng)學(xué)習(xí)算法(a3c算法)對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,最終可以使掃地機(jī)器人以較短路徑遍歷房間,并能夠自主躲避障礙、規(guī)劃路徑和清理垃圾。通過該方法設(shè)計(jì)的掃地機(jī)器人具有學(xué)習(xí)能力、自主決策能力和任務(wù)遷移能力。
2.技術(shù)方案:本發(fā)明是一種基于深度增強(qiáng)學(xué)習(xí)的家用掃地機(jī)器人的設(shè)計(jì)方法,該方法具體步驟包括:
步驟1,掃地機(jī)器人通過激光雷達(dá)采集掃地機(jī)器人周圍的房間水平剖面的原始圖像,并對(duì)該數(shù)據(jù)進(jìn)行解碼,將原始數(shù)據(jù)通過無線串口回傳給計(jì)算機(jī)(即pc機(jī));
步驟2,對(duì)步驟1中獲得的原始數(shù)據(jù)進(jìn)行slam,完成對(duì)掃地機(jī)器人的實(shí)時(shí)定位與對(duì)房間的地圖構(gòu)圖,之后系統(tǒng)對(duì)房間的構(gòu)圖進(jìn)行最大值池化(即maxpooling)處理,生成168×168的二維數(shù)組;
步驟3,建立cnn+lstm神經(jīng)網(wǎng)絡(luò),將步驟2中生成的二維數(shù)組作為神經(jīng)網(wǎng)絡(luò)的輸入,cnn+lstm神經(jīng)網(wǎng)絡(luò)輸出控制掃地機(jī)器人運(yùn)動(dòng)的指令;
步驟4,通過a3c算法對(duì)掃地機(jī)器人進(jìn)行訓(xùn)練,根據(jù)掃地機(jī)器人的運(yùn)動(dòng)是否滿足設(shè)計(jì)預(yù)期要求,對(duì)神經(jīng)網(wǎng)絡(luò)給出相應(yīng)的回報(bào),以此來更改神經(jīng)網(wǎng)絡(luò)參數(shù)。經(jīng)過一定時(shí)間的訓(xùn)練后,掃地機(jī)器人便能夠進(jìn)行自主決策;
其中,在步驟1中所述的“解碼”是指根據(jù)激光雷達(dá)通信協(xié)議將串口數(shù)據(jù)轉(zhuǎn)換成角度和距離信息。
其中,在步驟2中所述的“對(duì)掃地機(jī)器人的實(shí)時(shí)定位與對(duì)房間的地圖構(gòu)圖”,構(gòu)建過程如下:對(duì)原始數(shù)據(jù)進(jìn)行特征提取,利用牛頓高斯方法計(jì)算變換矩陣,再進(jìn)行濾波等處理,完成建圖。
其中,步驟4中“對(duì)掃地機(jī)器人進(jìn)行訓(xùn)練”中的訓(xùn)練包括模擬訓(xùn)練和真實(shí)訓(xùn)練,比例為10:1。模擬訓(xùn)練指的是:在pc端構(gòu)建一個(gè)與真實(shí)環(huán)境高度一致的仿真環(huán)境,并在這個(gè)環(huán)境中訓(xùn)練神經(jīng)網(wǎng)絡(luò);真實(shí)訓(xùn)練指的是:通過將掃地機(jī)器人放置在各種真實(shí)的場景中自主運(yùn)動(dòng),對(duì)掃地機(jī)器人中的神經(jīng)網(wǎng)絡(luò)進(jìn)行不斷的訓(xùn)練,以使掃地機(jī)器人快速的適應(yīng)周圍的環(huán)境,及時(shí)完成清掃任務(wù)。經(jīng)過一定時(shí)間的訓(xùn)練,掃地機(jī)器人便能夠進(jìn)行自主決策。
通過以上步驟,掃地機(jī)器人能夠在陌生場景中,在較短的時(shí)間內(nèi)找到目標(biāo)物體,同時(shí)可以躲避障礙,自行規(guī)劃路徑,以該方法設(shè)計(jì)的掃地機(jī)器人具有一定的通用性和任務(wù)遷移性。
3、優(yōu)點(diǎn)及效果:本發(fā)明是一種基于深度增強(qiáng)學(xué)習(xí)的家用掃地機(jī)器人的設(shè)計(jì)方法,具有以下幾個(gè)優(yōu)點(diǎn):
(1)本發(fā)明減少了設(shè)計(jì)掃地機(jī)器人過程中的工程量,在本發(fā)明中,只需要將雷達(dá)采集到的圖像輸入系統(tǒng),就可以使掃地機(jī)器人進(jìn)行正常的工作,降低了算法的難度,同時(shí)省去了一定的人力工程。
(2)本發(fā)明提供的設(shè)計(jì)方法可以使掃地機(jī)器人具有自主決策能力,掃地機(jī)器人的整個(gè)運(yùn)動(dòng)過程都是由自身的學(xué)習(xí)實(shí)現(xiàn)的,掃地機(jī)器人的行為方式與人類的行為方式相仿。
(3)本發(fā)明中,由于神經(jīng)網(wǎng)絡(luò)具有一般性,當(dāng)掃地機(jī)器人面對(duì)不同的任務(wù)要求時(shí),系統(tǒng)只需相應(yīng)地改變回報(bào)值,掃地機(jī)器人就可以完成不同的任務(wù)。因此,該方法設(shè)計(jì)的掃地機(jī)器人具有很高的通用性和任務(wù)遷移性。
(4)本發(fā)明能夠使掃地機(jī)器人在陌生場景中,在較短的時(shí)間內(nèi)找到目標(biāo)物體,同時(shí)可以躲避障礙,記憶周圍空間地圖。
附圖說明
圖1是本發(fā)明所述方法工作流程框圖。
圖中序號(hào),符號(hào),代號(hào)所代表的意義如下:
1:家用掃地機(jī)器人
2:cnn+lstm神經(jīng)網(wǎng)絡(luò)
3:原始數(shù)據(jù)
4:空間模型
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的說明。
本發(fā)明是一種基于深度增強(qiáng)學(xué)習(xí)的家用掃地機(jī)器人的設(shè)計(jì)方法,掃地機(jī)器人工作流程如
圖1所示,具體包括如下步驟:
步驟1,掃地機(jī)器人通過激光雷達(dá)采集原始圖像數(shù)據(jù),該數(shù)據(jù)指的是在以激光雷達(dá)為原點(diǎn)、以水平面為平面建立的極坐標(biāo)系上,每一個(gè)坐標(biāo)角度上激光雷達(dá)到障礙物的距離。掃地機(jī)器人對(duì)該數(shù)據(jù)進(jìn)行解碼后,將原始數(shù)據(jù)通過無線串口回傳給pc機(jī);
步驟2,通過breezyslam算法庫,系統(tǒng)對(duì)步驟1中的獲得的原始數(shù)據(jù)進(jìn)行特征提取,計(jì)算變換矩陣,濾波后,完成對(duì)掃地機(jī)器人的實(shí)時(shí)定位與對(duì)房間的構(gòu)圖。之后系統(tǒng)對(duì)構(gòu)圖進(jìn)行maxpooling,將房間的構(gòu)圖池化為168×168的二維數(shù)組;
步驟3,使用谷歌研發(fā)的第二代人工智能學(xué)習(xí)系統(tǒng)(即tensorflow)建立cnn+lstm神經(jīng)網(wǎng)絡(luò)。該神經(jīng)網(wǎng)絡(luò)中,卷積層的個(gè)數(shù)為5,卷積核的大小為8×8×32,lstm網(wǎng)絡(luò)的大小為256。將步驟2中生成的二維數(shù)組作為該神經(jīng)網(wǎng)絡(luò)的輸入,該神經(jīng)網(wǎng)絡(luò)輸出控制掃地機(jī)器人運(yùn)動(dòng)的指令。該指令包括向前移動(dòng)、向后移動(dòng)、向左移動(dòng)、向右移動(dòng)、左轉(zhuǎn)、右轉(zhuǎn)和清理。掃地機(jī)器人產(chǎn)生移動(dòng)后,會(huì)采集新的數(shù)據(jù),并再次將采集到的新的數(shù)據(jù)輸入cnn+lstm神經(jīng)網(wǎng)絡(luò),神經(jīng)網(wǎng)絡(luò)會(huì)再輸出新的控制指令,使掃地機(jī)器人產(chǎn)生新的移動(dòng)。
步驟4,通過a3c算法對(duì)掃地機(jī)器人進(jìn)行訓(xùn)練,根據(jù)掃地機(jī)器人的運(yùn)動(dòng)是否滿足設(shè)計(jì)預(yù)期要求,對(duì)神經(jīng)網(wǎng)絡(luò)給出相應(yīng)的回報(bào),以此來修正神經(jīng)網(wǎng)絡(luò)參數(shù)。比如:當(dāng)掃地機(jī)器人碰到了障礙物時(shí),回報(bào)值為0;當(dāng)其清理了一份垃圾時(shí),回報(bào)值為1;當(dāng)其運(yùn)動(dòng)到一塊新的區(qū)域時(shí),回報(bào)值為1。對(duì)掃地機(jī)器人的訓(xùn)練包括模擬訓(xùn)練和真實(shí)訓(xùn)練,比例為10:1。模擬訓(xùn)練指的是:在pc端構(gòu)建一個(gè)與真實(shí)環(huán)境高度一致的仿真環(huán)境,并在這個(gè)環(huán)境中訓(xùn)練神經(jīng)網(wǎng)絡(luò);真實(shí)訓(xùn)練指的是:通過將掃地機(jī)器人放置在各種真實(shí)的場景中自主運(yùn)動(dòng),對(duì)掃地機(jī)器人中的神經(jīng)網(wǎng)絡(luò)進(jìn)行不斷的訓(xùn)練,以使掃地機(jī)器人快速的適應(yīng)周圍的環(huán)境,及時(shí)完成清掃任務(wù)。經(jīng)過一定時(shí)間的訓(xùn)練,掃地機(jī)器人便能夠進(jìn)行自主決策。
綜上所述,本發(fā)明提供一種基于深度增強(qiáng)學(xué)習(xí)的家用掃地機(jī)器人設(shè)計(jì)方法。本發(fā)明以slam圖像作為神經(jīng)網(wǎng)絡(luò)的輸入,施加一定的回報(bào)并進(jìn)行一定時(shí)間的訓(xùn)練,可以使掃地機(jī)器人以較短路徑遍歷房間,并能夠自主躲避障礙、規(guī)劃路徑和清理垃圾。