本技術(shù)涉及集群調(diào)度,尤其涉及一種機(jī)器人集群調(diào)度方法、裝置及設(shè)備。
背景技術(shù):
1、機(jī)器人集群調(diào)度指的是對(duì)組成集群的多個(gè)機(jī)器人進(jìn)行統(tǒng)一的管理和協(xié)調(diào),以實(shí)現(xiàn)多個(gè)機(jī)器人能夠在同一空間中協(xié)調(diào)移動(dòng),確保在不發(fā)生碰撞的情況下完成各自的任務(wù)。常見(jiàn)的機(jī)器人包括用于制造和生產(chǎn)過(guò)程的工業(yè)機(jī)器人(關(guān)節(jié)機(jī)器人、直角坐標(biāo)機(jī)器人等),用于家庭清潔、陪護(hù)的服務(wù)機(jī)器人(陪護(hù)機(jī)器人、教育機(jī)器人、餐廳服務(wù)機(jī)器人等),用于醫(yī)學(xué)治療的醫(yī)療機(jī)器人(手術(shù)機(jī)器人、康復(fù)機(jī)器人、遠(yuǎn)程診斷機(jī)器人等),用于農(nóng)業(yè)生產(chǎn)的農(nóng)業(yè)機(jī)器人(種植機(jī)器人、收割機(jī)器人、無(wú)人機(jī)噴灑系統(tǒng)等)等等。
2、在這些機(jī)器人執(zhí)行任務(wù)的過(guò)程中需要考慮每個(gè)機(jī)器人的任務(wù)分配、路徑規(guī)劃、避障和通信等多個(gè)方面,現(xiàn)有的機(jī)器人集群調(diào)度方法主要有:集中式調(diào)度方法、分布式調(diào)度方法、遺傳算法調(diào)度方法、強(qiáng)化學(xué)習(xí)調(diào)度方法。集中式調(diào)度方法是由一個(gè)中心調(diào)度器收集所有機(jī)器人的狀態(tài)信息,并根據(jù)這些信息從全局優(yōu)化任務(wù)分配和路徑規(guī)劃。但是這種方法高度依賴于中央調(diào)度器,易出現(xiàn)單點(diǎn)故障,且中央調(diào)度器處理的數(shù)據(jù)量較大,會(huì)影響整個(gè)集群的響應(yīng)速度和效率。此外,這種調(diào)度方法的通信開(kāi)銷(xiāo)大,需要所有機(jī)器人將狀態(tài)信息實(shí)時(shí)發(fā)送到中心調(diào)度器,這增加了通信網(wǎng)絡(luò)的負(fù)擔(dān)和延遲。分布式調(diào)度方法中每個(gè)機(jī)器人都是自主的,通過(guò)各自局部通信來(lái)完成任務(wù),即使部分機(jī)器人出現(xiàn)故障,其他機(jī)器人仍然可以繼續(xù)工作。但是每個(gè)機(jī)器人只能根據(jù)局部信息做出決策,難以實(shí)現(xiàn)全局最優(yōu)解。遺傳算法調(diào)度方法通過(guò)模擬自然選擇和遺傳變異的過(guò)程來(lái)優(yōu)化任務(wù)分配和路徑規(guī)劃,可以在沒(méi)有先驗(yàn)知識(shí)的情況下找到近似最優(yōu)解。但是遺傳算法調(diào)度方法因?yàn)樾枰M多代進(jìn)化過(guò)程,所以需要較長(zhǎng)的計(jì)算時(shí)間。強(qiáng)化學(xué)習(xí)調(diào)度方法通過(guò)讓機(jī)器人在與環(huán)境的交互中學(xué)習(xí)最優(yōu)策略來(lái)完成任務(wù),可以適應(yīng)動(dòng)態(tài)變化的環(huán)境和任務(wù)需求,但需要大量的訓(xùn)練數(shù)據(jù)和時(shí)間。
3、綜上,現(xiàn)有的機(jī)器人集群調(diào)度方法的復(fù)雜度較高,通信開(kāi)銷(xiāo)較大,導(dǎo)致服務(wù)器壓力較大。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)實(shí)施例通過(guò)提供一種機(jī)器人集群調(diào)度方法、裝置及設(shè)備,解決了現(xiàn)有技術(shù)中的機(jī)器人集群調(diào)度方法的復(fù)雜度較高,且通信開(kāi)銷(xiāo)較大的問(wèn)題。
2、第一方面,本技術(shù)實(shí)施例提供了一種機(jī)器人集群調(diào)度方法,包括:獲取機(jī)器人集群的集群信息與任務(wù)信息;其中,所述任務(wù)信息包括任務(wù)環(huán)境、障礙物信息、任務(wù)坐標(biāo)與約束條件;執(zhí)行任務(wù)規(guī)劃步驟,直至各初始任務(wù)路線之間不存在沖突,得到全局最優(yōu)路線;其中,所述任務(wù)規(guī)劃步驟,包括:根據(jù)所述集群信息與所述任務(wù)信息為機(jī)器人規(guī)劃初始任務(wù)路線;遍歷所述初始任務(wù)路線,并判斷各所述初始任務(wù)路線之間是否存在沖突;若各所述初始任務(wù)路線之間存在沖突,則更新沖突處的所述約束條件;對(duì)更新所述約束條件的所述初始任務(wù)路線對(duì)應(yīng)的機(jī)器人,重新執(zhí)行所述任務(wù)規(guī)劃步驟;基于所述全局最優(yōu)路線調(diào)度機(jī)器人集群執(zhí)行任務(wù)。
3、結(jié)合第一方面,在一種可能的實(shí)現(xiàn)方式中,所述集群信息包括所述機(jī)器人集群中機(jī)器人的數(shù)量以及各機(jī)器人的當(dāng)前位置。
4、結(jié)合第一方面,在一種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述集群信息與所述任務(wù)信息為機(jī)器人規(guī)劃初始任務(wù)路線,包括:執(zhí)行優(yōu)先規(guī)劃步驟,直至遍歷完?duì)顟B(tài)序列表,得到各機(jī)器人的初始任務(wù)路線;其中,所述優(yōu)先規(guī)劃步驟,包括:根據(jù)所述集群信息與所述任務(wù)信息確定各機(jī)器人的當(dāng)前狀態(tài)與任務(wù)坐標(biāo);其中,所述當(dāng)前狀態(tài)表示為(x,y,t),(x,y)表示當(dāng)前位置,t表示當(dāng)前時(shí)間步;根據(jù)各機(jī)器人的所述當(dāng)前狀態(tài)與所述任務(wù)坐標(biāo)確定其實(shí)際路徑代價(jià)與預(yù)估最小代價(jià);基于所述實(shí)際路徑代價(jià)與所述預(yù)估最小代價(jià)確定當(dāng)前啟發(fā)值;根據(jù)所述當(dāng)前啟發(fā)值確定各機(jī)器人的當(dāng)前優(yōu)先級(jí),并以所述當(dāng)前優(yōu)先級(jí)為序,將機(jī)器人的所述當(dāng)前狀態(tài)存入狀態(tài)序列表;在所述狀態(tài)序列表中確定目標(biāo)狀態(tài),基于機(jī)器人的動(dòng)作更新所述目標(biāo)狀態(tài),并基于更新后的所述目標(biāo)狀態(tài),更新所述狀態(tài)序列表,直至目標(biāo)狀態(tài)中的當(dāng)前位置與所述任務(wù)坐標(biāo)重合;回溯所述狀態(tài)序列表,得到目標(biāo)狀態(tài)對(duì)應(yīng)的機(jī)器人的初始任務(wù)路線。
5、結(jié)合第一方面,在一種可能的實(shí)現(xiàn)方式中,所述執(zhí)行優(yōu)先規(guī)劃步驟前,包括:獲取各機(jī)器人的初始狀態(tài),并對(duì)所述初始狀態(tài)進(jìn)行合法性檢測(cè);設(shè)置所述初始狀態(tài)的初始實(shí)際路徑代價(jià),并預(yù)測(cè)所述初始狀態(tài)的初始預(yù)測(cè)最小代價(jià);根據(jù)所述初始實(shí)際路徑代價(jià)計(jì)算所述初始狀態(tài)的初始啟發(fā)值;將所述初始狀態(tài)與所述初始啟發(fā)值放入所述狀態(tài)序列表。
6、結(jié)合第一方面,在一種可能的實(shí)現(xiàn)方式中,所述基于機(jī)器人的動(dòng)作更新所述目標(biāo)狀態(tài),包括:根據(jù)機(jī)器人的所有可能動(dòng)作定義機(jī)器人的空間動(dòng)作集;基于所述目標(biāo)狀態(tài)在所述空間動(dòng)作集中遍歷,得到多個(gè)新位置;檢查所述新位置是否在有效范圍內(nèi),檢查所述新位置在當(dāng)前時(shí)間步的下一個(gè)時(shí)間步是否受約束,以確定當(dāng)前動(dòng)作;基于所述當(dāng)前動(dòng)作更新所述目標(biāo)狀態(tài)。
7、結(jié)合第一方面,在一種可能的實(shí)現(xiàn)方式中,所述基于機(jī)器人的動(dòng)作更新所述目標(biāo)狀態(tài),還包括:確定更新后的所述目標(biāo)狀態(tài)的實(shí)際路徑代價(jià);若更新后的所述目標(biāo)狀態(tài)的實(shí)際路徑代價(jià)大于或等于已知的到達(dá)更新后的所述目標(biāo)狀態(tài)的當(dāng)前位置的最優(yōu)路徑成本,則退回更新前的所述目標(biāo)狀態(tài);若更新后的所述目標(biāo)狀態(tài)的實(shí)際路徑代價(jià)小于已知到達(dá)更新后的所述目標(biāo)狀態(tài)的最優(yōu)路徑成本,則將更新前的所述目標(biāo)狀態(tài)設(shè)置為更新后的所述目標(biāo)狀態(tài)的父狀態(tài)。
8、結(jié)合第一方面,在一種可能的實(shí)現(xiàn)方式中,所述判斷各所述初始任務(wù)路線之間是否存在沖突,包括:遍歷所有機(jī)器人的所述初始任務(wù)路線,檢測(cè)其中是否存在頂點(diǎn)沖突和/或邊沖突。
9、結(jié)合第一方面,在一種可能的實(shí)現(xiàn)方式中,所述若各所述初始任務(wù)路線之間存在沖突,則更新沖突處的所述約束條件,包括:基于每個(gè)沖突生成多個(gè)子節(jié)點(diǎn),并對(duì)每個(gè)子節(jié)點(diǎn)分別施加對(duì)立的約束;根據(jù)施加的所述對(duì)立的約束,更新對(duì)應(yīng)機(jī)器人的所述約束條件。
10、第二方面,本技術(shù)實(shí)施例提供了一種機(jī)器人集群調(diào)度裝置,包括:獲取模塊,用于獲取機(jī)器人集群的集群信息與任務(wù)信息;其中,所述任務(wù)信息包括任務(wù)環(huán)境、障礙物信息、任務(wù)坐標(biāo)與約束條件;任務(wù)規(guī)劃模塊,用于執(zhí)行任務(wù)規(guī)劃步驟,直至各初始任務(wù)路線之間不存在沖突,得到全局最優(yōu)路線;其中,所述任務(wù)規(guī)劃步驟,包括:根據(jù)所述集群信息與所述任務(wù)信息為機(jī)器人規(guī)劃初始任務(wù)路線;遍歷所述初始任務(wù)路線,并判斷各所述初始任務(wù)路線之間是否存在沖突;若各所述初始任務(wù)路線之間存在沖突,則更新沖突處的所述約束條件;更新模塊,用于對(duì)更新所述約束條件的所述初始任務(wù)路線對(duì)應(yīng)的機(jī)器人,重新執(zhí)行所述任務(wù)規(guī)劃步驟;任務(wù)模塊,用于基于所述全局最優(yōu)路線調(diào)度機(jī)器人集群執(zhí)行任務(wù)。
11、第三方面,本技術(shù)實(shí)施例提供了一種設(shè)備,所述設(shè)備包括:處理器;用于存儲(chǔ)處理器可執(zhí)行指令的存儲(chǔ)器;所述處理器執(zhí)行所述可執(zhí)行指令時(shí),實(shí)現(xiàn)如第一方面或第一方面任一種可能實(shí)現(xiàn)的方式所述的方法。
12、本技術(shù)實(shí)施例中提供的一個(gè)或多個(gè)技術(shù)方案,至少具有如下技術(shù)效果或優(yōu)點(diǎn):
13、本技術(shù)實(shí)施例通過(guò)將任務(wù)路線規(guī)劃與路線沖突判斷分離,在規(guī)劃出所有機(jī)器人的初始任務(wù)路線后,對(duì)所有的初始任務(wù)路線進(jìn)行沖突判斷,能夠?qū)⑷蝿?wù)分離,降低計(jì)算復(fù)雜度,增強(qiáng)方案的可擴(kuò)展性,也不需要各個(gè)機(jī)器人進(jìn)行頻繁通信,降低了通信開(kāi)銷(xiāo),僅對(duì)約束條件更新的機(jī)器人重新執(zhí)行任務(wù)規(guī)劃步驟,能夠提高方案的容錯(cuò)率,減少計(jì)算開(kāi)銷(xiāo)。有效解決了現(xiàn)有技術(shù)中的機(jī)器人集群調(diào)度方法的復(fù)雜度較高,且通信開(kāi)銷(xiāo)較大的問(wèn)題。進(jìn)而減少了服務(wù)器壓力,提高了方案的魯棒性。