本發(fā)明實(shí)施例涉及農(nóng)業(yè)種植,尤其涉及一種復(fù)雜區(qū)域下農(nóng)業(yè)多機(jī)器人全覆蓋路徑規(guī)劃方法。
背景技術(shù):
1、隨著全球農(nóng)業(yè)現(xiàn)代化的不斷推進(jìn),農(nóng)業(yè)機(jī)器人作為提高農(nóng)業(yè)生產(chǎn)種植效率和精準(zhǔn)度的關(guān)鍵工具,其重要性日益凸顯。
2、在農(nóng)業(yè)生產(chǎn)種植中,單一機(jī)器人往往難以應(yīng)對大規(guī)模、復(fù)雜化的作業(yè)任務(wù)。而多機(jī)器人協(xié)同作業(yè),則可以通過合理的任務(wù)分配和路徑規(guī)劃,實(shí)現(xiàn)高效、協(xié)同的作業(yè),而全覆蓋路徑規(guī)劃是確保農(nóng)業(yè)機(jī)器人高效、無遺漏地完成作業(yè)任務(wù)的關(guān)鍵。傳統(tǒng)的農(nóng)業(yè)作業(yè)方式往往存在效率低、遺漏率高、資源浪費(fèi)等問題。而現(xiàn)在的全覆蓋路徑規(guī)劃技術(shù)將可種植區(qū)域劃分為多個子區(qū)域,進(jìn)而分配給多個機(jī)器人,通過合理規(guī)劃機(jī)器人的作業(yè)路徑,可以顯著降低地頭轉(zhuǎn)彎次數(shù),減少遺漏面積,提高作業(yè)效率和質(zhì)量。但目前的方法仍存在一些缺陷:
3、(1)子區(qū)域劃分不合理:現(xiàn)有方法在劃分可種植區(qū)域時,可能導(dǎo)致子區(qū)域數(shù)量過多,增加了管理和調(diào)度的復(fù)雜性。這種不合理的劃分會導(dǎo)致資源的浪費(fèi)和作業(yè)效率的降低。
4、(2)優(yōu)化目標(biāo)之間的沖突:子區(qū)域的分配與種植順序往往需要考慮多個優(yōu)化目標(biāo),例如工作量的均衡分配、轉(zhuǎn)彎次數(shù)的最小化和路徑長度的最短化。在進(jìn)行多目標(biāo)優(yōu)化時,現(xiàn)有技術(shù)常常難以平衡多個目標(biāo),這可能導(dǎo)致在滿足某一目標(biāo)時,其他目標(biāo)受到影響,從而影響整體作業(yè)效率,因此,在滿足單個優(yōu)化目標(biāo)的前提下同時優(yōu)化多個目標(biāo)仍需要進(jìn)一步完善。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本發(fā)明實(shí)施例提供一種復(fù)雜區(qū)域下農(nóng)業(yè)多機(jī)器人全覆蓋路徑規(guī)劃方法,以至少解決上述問題。
2、本發(fā)明實(shí)施例提供了一種復(fù)雜區(qū)域下農(nóng)業(yè)多機(jī)器人全覆蓋路徑規(guī)劃方法,包括通過改進(jìn)的maklink線分解法將指定農(nóng)業(yè)種植區(qū)域分解為若干個凸子區(qū)域;通過夾逼法確定所述若干個凸子區(qū)域中各凸子區(qū)域的最小寬度方向;基于所述最小寬度方向,采用往復(fù)式覆蓋模式規(guī)劃所述各凸子區(qū)域內(nèi)部的種植路徑;采用dijkstra方法規(guī)劃所述若干個凸子區(qū)域中任意兩個凸子區(qū)域之間的連接路徑;基于所述各凸子區(qū)域內(nèi)部的種植路徑和所述任意兩個凸子區(qū)域之間的連接路徑,構(gòu)建以所有機(jī)器人的總連接路徑最短、所有機(jī)器人的工作量分配均衡為目標(biāo)函數(shù)的全覆蓋路徑規(guī)劃模型;通過改進(jìn)nsga-ⅱ算法求解所述全覆蓋路徑規(guī)劃模型,得到多機(jī)器人全覆蓋路徑結(jié)果。
3、在一種實(shí)現(xiàn)方式中,所述通過改進(jìn)的maklink線分解法將指定農(nóng)業(yè)種植區(qū)域分解為若干個凸子區(qū)域,包括:步驟1:獲取所述指定農(nóng)業(yè)種植區(qū)域的包含所有障礙物多邊形頂點(diǎn)的集合,在所述包含所有障礙物多邊形頂點(diǎn)的集合中選擇一個頂點(diǎn);步驟2:判斷選擇的所述頂點(diǎn)是否為凹頂點(diǎn),若是凹頂點(diǎn)則執(zhí)行步驟1,否不是凹頂點(diǎn)則執(zhí)行步驟3;步驟3:作出所述頂點(diǎn)到所述指定農(nóng)業(yè)種植區(qū)域的工作區(qū)域邊界的最近鏈接線,以及所述頂點(diǎn)與除所述頂點(diǎn)所在障礙物多邊形外的其余障礙物多邊形頂點(diǎn)的所有鏈接線;步驟4:刪除所述頂點(diǎn)的鏈接線中穿過障礙物多邊形的所有鏈接線,并將剩余鏈接線從短到長排序,生成頂點(diǎn)鏈接線集合;步驟5:按從短到長的排序從所述頂點(diǎn)鏈接線集合中取出一條鏈接線,判斷此時所述頂點(diǎn)的外角,若所述頂點(diǎn)的外角均不超過180°則執(zhí)行步驟7,若不存在所述鏈接線,則執(zhí)行步驟6;步驟6:按從短到長的排序從所述頂點(diǎn)鏈接線集合中取出兩條鏈接線,判斷此時所述頂點(diǎn)的外角,若所述頂點(diǎn)的外角均不超過180°,則執(zhí)行步驟7;步驟7:保留當(dāng)前鏈接線,并且忽略所述頂點(diǎn)的其余鏈接線;步驟8:重復(fù)執(zhí)行步驟1-7,直至考慮到所述頂點(diǎn)鏈接線集合中的所有頂點(diǎn);步驟9:通過所有保留的鏈接線使所述指定農(nóng)業(yè)種植區(qū)域被分解為所述若干個凸子區(qū)域。
4、在另一種實(shí)現(xiàn)方式中,通過以下方法判斷選擇的所述頂點(diǎn)是否為凹頂點(diǎn):針對障礙物多邊形中的選擇的所述頂點(diǎn),利用向量叉乘結(jié)果的正負(fù)進(jìn)行凹點(diǎn)判斷,具體為:
5、將所述頂點(diǎn)分別與其相鄰點(diǎn)和組成兩個向量和,根據(jù)向量叉乘的定義:
6、
7、如果,則所述頂點(diǎn)為凸頂點(diǎn);
8、如果,則所述頂點(diǎn)為凹頂點(diǎn)。
9、在另一種實(shí)現(xiàn)方式中,所述采用dijkstra方法規(guī)劃所述若干個凸子區(qū)域中任意兩個凸子區(qū)域之間的連接路徑,包括:將所述若干個凸子區(qū)域中任意兩個凸子區(qū)域之間的最短零重復(fù)覆蓋率連接路徑問題簡化為尋找二維無向圖中任意兩頂點(diǎn)間的最短路徑;將所述指定農(nóng)業(yè)種植區(qū)域的信息描述為鄰接矩陣,通過求解所述鄰接矩陣,得到所述二維無向圖中任意兩頂點(diǎn)間的最短路徑,其中設(shè)圖包含個頂點(diǎn),圖的鄰接矩陣為階矩陣:
10、
11、其中,表示節(jié)點(diǎn)和節(jié)點(diǎn)之間的距離,當(dāng)時,,當(dāng)節(jié)點(diǎn)和節(jié)點(diǎn)不直接相連時,。
12、在另一種實(shí)現(xiàn)方式中,所述全覆蓋路徑規(guī)劃模型以所有機(jī)器人的總連接路徑最短為目標(biāo)函數(shù),公式如下:
13、
14、其中,為所述指定農(nóng)業(yè)種植區(qū)域中待種植的子區(qū)域任務(wù)序號,子區(qū)域總數(shù)為,為所有待種植子區(qū)域的集合,為種植機(jī)器人序號,機(jī)器人總數(shù)為,為所有種植機(jī)器人的集合;為子區(qū)域的覆蓋方式,共四種,為子區(qū)域以第種覆蓋方式路徑規(guī)劃,為機(jī)器人完成一次任務(wù)的起點(diǎn),即倉庫,為機(jī)器人以第種覆蓋方式種植子區(qū)域,子區(qū)域是機(jī)器人種植的第個區(qū)域,為機(jī)器人種植完成第個區(qū)域到開始種植第個區(qū)域之間的連接路徑長度,為分配給機(jī)器人的所有待種植子區(qū)域的集合,集合元素個數(shù)為;
15、所述全覆蓋路徑規(guī)劃模型以所有機(jī)器人的工作量分配均衡為目標(biāo)函數(shù),公式如下:
16、
17、其中,為機(jī)器人的所有種植子區(qū)域的面積和,為所有機(jī)器人的種植面積均值;
18、所述全覆蓋路徑規(guī)劃模型的約束條件為:
19、子區(qū)域全部分配:;
20、子區(qū)域無重復(fù)分配:。
21、在另一種實(shí)現(xiàn)方式中,所述通過改進(jìn)nsga-ⅱ算法求解所述全覆蓋路徑規(guī)劃模型,得到多機(jī)器人全覆蓋路徑結(jié)果,包括:步驟1、計(jì)算距離權(quán)重矩陣,即通過dijkstra算法計(jì)算所述若干個凸子區(qū)域中各凸子區(qū)域間的距離權(quán)重矩陣;步驟2、初始化種群,即基于所述各凸子區(qū)域內(nèi)部的種植路徑和所述任意兩個凸子區(qū)域之間的連接路徑隨機(jī)生成多組路徑方案,將所述多組路徑方案將作為算法的起點(diǎn),代表多機(jī)器人在目標(biāo)區(qū)域內(nèi)的不同覆蓋路徑,其中,通過染色體編碼將所述多組路徑方案表示為適合算法處理的數(shù)據(jù)結(jié)構(gòu);步驟3、根據(jù)改進(jìn)后的目標(biāo)函數(shù)對種群進(jìn)行非支配排序和擁擠度計(jì)算;步驟4、通過選擇操作、優(yōu)質(zhì)基因片段交叉操作和變異操作生成下一代種群,其中,通過染色體解碼參與生成下一代種群;步驟5、將初始化種群和生成的下一代種群合并,形成合并后的種群;步驟6、根據(jù)改進(jìn)后的目標(biāo)函數(shù)對合并后的種群進(jìn)行非支配排序和擁擠度計(jì)算,生成新種群;步驟7、重復(fù)步驟3-7,直到改進(jìn)nsga-ⅱ算法達(dá)到預(yù)設(shè)的迭代次數(shù),輸出所述改進(jìn)nsga-ⅱ算法的最優(yōu)解,即得到多機(jī)器人全覆蓋路徑結(jié)果。
22、在另一種實(shí)現(xiàn)方式中,所述計(jì)算距離權(quán)重矩陣,包括:將所述各凸子區(qū)域視為二維無向圖中的節(jié)點(diǎn),采用dijkstra算法計(jì)算次后,得到區(qū)域間距離權(quán)重矩陣為階矩陣:
23、
24、其中,表示子區(qū)域和子區(qū)域之間的距離權(quán)重,當(dāng)兩區(qū)域相鄰時,;
25、當(dāng)時,;
26、當(dāng)兩區(qū)域不直接相連時,表示兩區(qū)域連通至少需要跨過的子區(qū)域邊界數(shù)量。
27、在另一種實(shí)現(xiàn)方式中,本發(fā)明方法還包括:基于所述區(qū)域間距離權(quán)重矩陣,構(gòu)造約束加權(quán)函數(shù)如下:
28、
29、其中,為調(diào)節(jié)加權(quán)權(quán)重的可變參數(shù),,加權(quán)后的目標(biāo)函數(shù)為:
30、
31、其中,為所述指定農(nóng)業(yè)種植區(qū)域中待種植的子區(qū)域任務(wù)序號,子區(qū)域總數(shù)為,為所有待種植子區(qū)域的集合,為種植機(jī)器人序號,機(jī)器人總數(shù)為,為所有種植機(jī)器人的集合,為子區(qū)域的覆蓋方式,共四種,為子區(qū)域以第種覆蓋方式路徑規(guī)劃,為機(jī)器人完成一次任務(wù)的起點(diǎn),即倉庫,為機(jī)器人以第種覆蓋方式種植子區(qū)域,子區(qū)域是機(jī)器人種植的第個區(qū)域,為機(jī)器人種植完成第個區(qū)域到開始種植第個區(qū)域之間的連接路徑長度,為分配給機(jī)器人的所有待種植子區(qū)域的集合,集合元素個數(shù)為,表示機(jī)器人種植的第個區(qū)域和第個區(qū)域之間連通至少需要跨過的子區(qū)域邊界數(shù)量。
32、與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果為:
33、(1)合理劃分種植區(qū)域:本發(fā)明通過改進(jìn)的maklink線分解法,將指定農(nóng)業(yè)種植區(qū)域分解為若干個凸子區(qū)域,可以有效避免不合理的子區(qū)域劃分,減少管理復(fù)雜性,并提升資源利用效率。
34、(2)優(yōu)化路徑規(guī)劃:本發(fā)明基于最小寬度方向的往復(fù)式覆蓋模式,使得各凸子區(qū)域內(nèi)部的種植路徑更加合理,減少轉(zhuǎn)彎次數(shù),降低作業(yè)時間,提高作業(yè)效率。
35、(3)平衡工作量分配:本發(fā)明通過構(gòu)建以所有機(jī)器人的總連接路徑最短和工作量分配均衡為目標(biāo)函數(shù)的全覆蓋路徑規(guī)劃模型,可以有效解決多機(jī)器人作業(yè)中的負(fù)載不均問題,提升作業(yè)效率。
36、(4)多目標(biāo)優(yōu)化:本發(fā)明采用改進(jìn)的nsga-ⅱ算法進(jìn)行求解,可以實(shí)現(xiàn)多目標(biāo)優(yōu)化,綜合考慮路徑長度、工作量和作業(yè)效率等多方面因素,從而得到更為優(yōu)質(zhì)的全覆蓋路徑規(guī)劃結(jié)果。