av网站播放,国产一级特黄毛片在线毛片,久久精品国产99精品丝袜,天天干夜夜要,伊人影院久久,av大全免费在线观看,国产第一区在线

一種機器人路徑規(guī)劃方法及裝置與流程

文檔序號:11153492閱讀:855來源:國知局
一種機器人路徑規(guī)劃方法及裝置與制造工藝

本發(fā)明屬于計算機技術(shù)領(lǐng)域,尤其涉及一種機器人路徑規(guī)劃方法及裝置。



背景技術(shù):

隨著機器人和人工智能技術(shù)的不斷發(fā)展,機器人越來越廣泛地用于到社會的各個方面,特別是應(yīng)用到人無法進入的環(huán)境場景,例如,高溫、高壓、高輻射的災(zāi)難環(huán)境。在災(zāi)難發(fā)生的初期,向災(zāi)難發(fā)生地派遣空中和地面無人機器人群體迅速協(xié)同進入災(zāi)區(qū)探測信息(圖像、位置、環(huán)境數(shù)據(jù)等)意義重大,這些機器人通常被稱為多異構(gòu)機器人。

在災(zāi)區(qū)信息探測過程中,空中和地面機器人之間需要進行信息共享和協(xié)同行動,例如,空中機器人負責(zé)提供偵測災(zāi)區(qū)現(xiàn)場的圖像信息以及救援目標(biāo)的信息,然后將這些信息提供給地面機器人,地面機器人負責(zé)完成救援任務(wù)。由于災(zāi)區(qū)環(huán)境惡劣,對機器人的行進會產(chǎn)生較大影響,因此,如何對投入到災(zāi)區(qū)的機器人進行規(guī)劃,例如,如何使投入機器人的數(shù)量最少、機器人遍歷完所有目標(biāo)位置所需的時間最短、地面機器人之間成功通信的組合最多、地面機器人探測的覆蓋面積最大、空中機器人直視到的地面機器人以及救援的目標(biāo)位置最多,即如何實現(xiàn)多個目標(biāo)的最優(yōu)化,是救災(zāi)或類似應(yīng)用場景中的重要研究方向之一。然而,當(dāng)需要達到的優(yōu)化目標(biāo)數(shù)量大于等于四個時,現(xiàn)有的規(guī)劃方法或算法的性能和效率大幅下降,難以在較短時間內(nèi)得到一個最優(yōu)的方案,以實現(xiàn)機器人的行進路徑規(guī)劃。



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

本發(fā)明的目的在于提供一種機器人路徑規(guī)劃方法及裝置,旨在解決現(xiàn)有機器人路徑規(guī)劃方法效率不高,難以在較短時間內(nèi)得到機器人的規(guī)劃路徑的問題。

一方面,本發(fā)明提供了一種機器人路徑規(guī)劃方法,所述方法包括下述步驟:

當(dāng)接收到機器人行進路徑規(guī)劃請求時,構(gòu)造機器人的行進路徑優(yōu)化目標(biāo)的多目標(biāo)函數(shù),所述行進路徑優(yōu)化目標(biāo)的數(shù)量大于等于4;

接收用戶輸入的機器人行駛區(qū)域的地圖數(shù)據(jù)以及所述行進路徑優(yōu)化目標(biāo)的約束條件;

根據(jù)所述地圖數(shù)據(jù)、所述約束條件和所述多目標(biāo)函數(shù),獲取所述多目標(biāo)函數(shù)的最優(yōu)解集,確定所述最優(yōu)解集為所述機器人的行進路徑參數(shù)。

另一方面,本發(fā)明提供了一種機器人路徑規(guī)劃裝置,所述裝置包括:

函數(shù)構(gòu)造單元,用于當(dāng)接收到機器人行進路徑規(guī)劃請求時,構(gòu)造機器人的行進路徑優(yōu)化目標(biāo)的多目標(biāo)函數(shù),所述行進路徑優(yōu)化目標(biāo)的數(shù)量大于等于4;

條件接收單元,用于接收用戶輸入的機器人行駛區(qū)域的地圖數(shù)據(jù)以及所述行進路徑優(yōu)化目標(biāo)的約束條件;以及

路徑參數(shù)確定單元,用于根據(jù)所述地圖數(shù)據(jù)、所述約束條件和所述多目標(biāo)函數(shù),獲取所述多目標(biāo)函數(shù)的最優(yōu)解集,確定所述最優(yōu)解集為所述機器人的行進路徑參數(shù)。

本發(fā)明在對機器人行進路徑進行規(guī)劃時,首先對行進路徑優(yōu)化目標(biāo)數(shù)量大于等于4的機器人的行進路徑優(yōu)化目標(biāo)的多目標(biāo)函數(shù)進行構(gòu)造,接收用戶輸入的機器人行駛區(qū)域的地圖數(shù)據(jù)以及行進路徑優(yōu)化目標(biāo)的約束條件,根據(jù)地圖數(shù)據(jù)、約束條件和多目標(biāo)函數(shù),獲取多目標(biāo)函數(shù)的最優(yōu)解集,確定最優(yōu)解集為機器人的行進路徑參數(shù),從而在機器人優(yōu)化目標(biāo)數(shù)量大于等于四個時,對機器人行進路徑進行快速規(guī)劃,提高了機器人行進路徑規(guī)劃的效率。

附圖說明

圖1是本發(fā)明實施例提供的機器人路徑規(guī)劃方法的實現(xiàn)流程圖;

圖2是本發(fā)明實施例提供的機器人路徑規(guī)劃方法中獲取多目標(biāo)函數(shù)的最優(yōu)解集的實現(xiàn)流程圖;

圖3是本發(fā)明實施例提供的機器人路徑規(guī)劃方法中計算預(yù)設(shè)存檔中每一個粒子的適應(yīng)度值的實現(xiàn)流程圖;

圖4是本發(fā)明實施例提供的機器人路徑規(guī)劃方法中對粒子群中的粒子和預(yù)設(shè)存檔進行更新的實現(xiàn)流程圖;

圖5是本發(fā)明實施例提供的機器人路徑規(guī)劃裝置的結(jié)構(gòu)示意圖;

圖6是本發(fā)明實施例提供的機器人路徑規(guī)劃裝置中路徑參數(shù)確定單元的結(jié)構(gòu)示意圖;

圖7是本發(fā)明實施例提供的機器人路徑規(guī)劃裝置中第一計算單元的結(jié)構(gòu)示意圖;以及

圖8是本發(fā)明實施例提供的機器人路徑規(guī)劃裝置中最優(yōu)解確定單元的結(jié)構(gòu)示意圖。

具體實施方式

為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。

以下結(jié)合具體實施例對本發(fā)明的具體實現(xiàn)進行詳細描述:

實施例一:

圖1示出了本發(fā)明實施例一提供的機器人路徑規(guī)劃方法的實現(xiàn)流程,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分,詳述如下:

在步驟S101中,當(dāng)接收到機器人行進路徑規(guī)劃請求時,構(gòu)造機器人的行進路徑優(yōu)化目標(biāo)的多目標(biāo)函數(shù),行進路徑優(yōu)化目標(biāo)的數(shù)量大于等于4。

本發(fā)明實施例適用于機器人,具體可用于機器人的行進路徑規(guī)劃,例如,救災(zāi)機器人的行進路徑規(guī)劃、生產(chǎn)機器人的行進路徑規(guī)劃以及清潔機器人的行進路徑規(guī)劃,以在滿足用戶多個行進路徑優(yōu)化目標(biāo)時,得到對應(yīng)的最佳路徑。

具體地,接收到的機器人行進路徑規(guī)劃請求中可包括用戶設(shè)置的多個行進路徑優(yōu)化目標(biāo),作為示例地,這些優(yōu)化目標(biāo)可以為:投入到行駛區(qū)域中空中、地上機器人數(shù)量優(yōu)化目標(biāo),地面機器人遍歷完行駛區(qū)域中目標(biāo)的時間優(yōu)化目標(biāo),地面機器人實時探測面積優(yōu)化目標(biāo),空中機器人探測到地面機器人的數(shù)量優(yōu)化目標(biāo),空中機器人實時探測行駛區(qū)域中目標(biāo)的數(shù)量,地面機器人和空中機器人可通信組合優(yōu)化目標(biāo)。

優(yōu)選地,行進路徑優(yōu)化目標(biāo)的多目標(biāo)函數(shù)為其中,m為行進路徑優(yōu)化目標(biāo)的數(shù)量,m的值為6,Ω為行駛區(qū)域的地圖數(shù)據(jù)集合,以用于限定機器人的行進或活動范圍,f1(x)為投入到行駛區(qū)域中空中、地上機器人數(shù)量優(yōu)化目標(biāo),f2(x)為地面機器人遍歷完行駛區(qū)域中目標(biāo)的時間優(yōu)化目標(biāo),f3(x)為地面機器人實時探測面積優(yōu)化目標(biāo),f4(x)為空中機器人探測到地面機器人的數(shù)量優(yōu)化目標(biāo),f5(x)為空中機器人實時探測行駛區(qū)域中目標(biāo)的數(shù)量,f6(x)為地面機器人和空中機器人可通信組合優(yōu)化目標(biāo)。通過計算F(x)的最優(yōu)解,即求解F(x)的最小值,實現(xiàn)用戶六個行進路徑優(yōu)化目標(biāo)時的路徑規(guī)劃。

在步驟S102中,接收用戶輸入的機器人行駛區(qū)域的地圖數(shù)據(jù)以及行進路徑優(yōu)化目標(biāo)的約束條件。

在本發(fā)明實施例中,進路徑優(yōu)化目標(biāo)的約束條件用于在實現(xiàn)行進路徑優(yōu)化目標(biāo)時,對各個行進路徑優(yōu)化目標(biāo)進行限定或約束。例如,投入到行駛區(qū)域中空中、地上機器人數(shù)量必須大于0并少于預(yù)設(shè)數(shù)量,地面機器人遍歷完行駛區(qū)域中目標(biāo)的時間必須小于預(yù)設(shè)時長,空中機器人實時探測行駛區(qū)域中目標(biāo)的數(shù)量必須大于預(yù)設(shè)的數(shù)量。

在步驟S103中,根據(jù)地圖數(shù)據(jù)、約束條件和多目標(biāo)函數(shù),獲取多目標(biāo)函數(shù)的最優(yōu)解集,確定最優(yōu)解集為機器人的行進路徑參數(shù)。

在本發(fā)明實施例中,最優(yōu)解集即為多目標(biāo)函數(shù)的最優(yōu)解的集合,其中的解為一套機器人行進路徑參數(shù)規(guī)劃的可行方案,例如,這些行進路徑參數(shù)可使得同時滿足投入到行駛區(qū)域中空中、地上機器人數(shù)量適當(dāng),地面機器人遍歷完行駛區(qū)域中目標(biāo)的時間越短,地面機器人實時探測面積更大,空中機器人探測到地面機器人的數(shù)量越多,空中機器人實時探測行駛區(qū)域中目標(biāo)越多,地面機器人和空中機器人可通信組合越多,從而可以根據(jù)實際情況,選擇其中一個更好符合實際情況的解(方案)來實現(xiàn)機器人行徑路徑的規(guī)劃。

實施例二:

圖2示出了本發(fā)明實施例一提供的機器人路徑規(guī)劃方法中獲取多目標(biāo)函數(shù)的最優(yōu)解集的實現(xiàn)流程,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分,詳述如下:

為了獲得機器人的行進路徑參數(shù),在獲取多目標(biāo)函數(shù)的最優(yōu)解集時,使用粒子群表示多目標(biāo)函數(shù)的解集,粒子群中的粒子表示多目標(biāo)函數(shù)的解集中的一個解,從而通過下述步驟獲取多目標(biāo)函數(shù)的最優(yōu)解集:

在步驟S201中,根據(jù)約束條件隨機生成多目標(biāo)函數(shù)的初始粒子群,初始化粒子群中每個粒子的飛行速度,將每個粒子的個體最優(yōu)解初始化為該粒子自身。

在步驟S202中,根據(jù)Pareto支配關(guān)系篩選出初始粒子群中的非支配個體,并將非支配個體保存到預(yù)設(shè)存檔中。

在本發(fā)明實施例中,粒子的飛行速度表明了搜索方向和搜索步長,預(yù)設(shè)存檔用于存儲整個算法過程中收斂性和多樣性都較好的粒子,從而保證最優(yōu)解集中解的收斂性和多樣性。

在步驟S203中,根據(jù)多目標(biāo)函數(shù)的粒子群中粒子的適應(yīng)度計算公式fit(pi,P)=α×Cd(pi,P)+β×Cv(pi,P),計算預(yù)設(shè)存檔中每一個粒子的適應(yīng)度值fit(pi,P)。

在本發(fā)明實施例中,α和β為預(yù)設(shè)參數(shù),Cv(pi,P)表示當(dāng)前計算粒子pi的收斂性距離,Cd(pi,P)表示當(dāng)前計算粒子pi的多樣性距離,P表示當(dāng)前粒子群。其中,粒子的適應(yīng)度反映了每個粒子在整個粒子群中收斂性與多樣性的相對狀態(tài),粒子的收斂性距離反映了粒子到實際真實的最優(yōu)解集端面的距離程度,粒子的多樣性距離反映了粒子在整個粒子群中的擁擠程度(或密度),通過該適應(yīng)度計算公式可得到每個粒子的收斂性和多樣性狀態(tài),從而平衡整個粒子群中粒子的收斂性和多樣性。

在步驟S204中,根據(jù)預(yù)設(shè)存檔中所有粒子的適應(yīng)度值對預(yù)設(shè)存檔中粒子進行升序排序。

在步驟S205中,檢測當(dāng)前迭代代數(shù)是否小于預(yù)設(shè)的最大迭代代數(shù),當(dāng)當(dāng)前迭代代數(shù)小于預(yù)設(shè)的最大迭代代數(shù)時,執(zhí)行步驟S206,否則執(zhí)行步驟S207。

在步驟S206中,當(dāng)當(dāng)前迭代代數(shù)小于最大迭代代數(shù)時,對粒子群中的粒子和預(yù)設(shè)存檔進行更新,對當(dāng)前迭代代數(shù)進行加1操作,并跳轉(zhuǎn)至步驟S205。

在步驟S207中,當(dāng)當(dāng)前迭代代數(shù)等于最大迭代代數(shù)時,獲取預(yù)設(shè)存檔中的粒子,并將其確定為多目標(biāo)函數(shù)的最優(yōu)解。

在本發(fā)明實施例中,通過非支配關(guān)系確定最優(yōu)解集中都是非支配解,進而通過平衡收斂性與多樣性的優(yōu)化的適應(yīng)度值計算方式確定每個粒子的狀態(tài),從而可以提高了最優(yōu)解集中解的收斂性和多樣性,實現(xiàn)了機器人超多行進路徑優(yōu)化目標(biāo)。

實施例三:

圖3示出了本發(fā)明實施例二提供的機器人路徑規(guī)劃方法中計算預(yù)設(shè)存檔中每一個粒子的適應(yīng)度值的實現(xiàn)流程,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分,詳述如下:

在步驟S301中,對粒子群中每個粒子進行歸一化操作,以得到一個歸一化的目標(biāo)空間。

在本發(fā)明實施例中,采用公式對粒子群中每個粒子進行歸一化操作,以得到一個歸一化的目標(biāo)空間,其中,fk(pi)表示粒子pi在行進路徑優(yōu)化目標(biāo)k上的值,f’k(pi)表示歸一化的值,fkmin表示粒子群中粒子在k上的最小值,fkmax表示粒子群中粒子在k上的最大值。該歸一化操作有助于消除不同幅度對多目標(biāo)優(yōu)化的影響。

在步驟S302中,根據(jù)預(yù)設(shè)的平移距離公式計算每個粒子pi的、表示該粒子在目標(biāo)空間中擁擠程度的距離,對計算得到的距離進行歸一化操作,以得到目標(biāo)空間中表示粒子多樣性的距離Cd(pi,P)。

在本發(fā)明實施例中,利用平移距離公式計算每個粒子表示該粒子在目標(biāo)空間中擁擠程度的距離,其中,在對計算得到的距離進行歸一化操作時,可使用對應(yīng)的歸一化公式進行,以得到目標(biāo)空間中表示粒子多樣性的距離Cd(pi,P)。

在步驟S303中,計算目標(biāo)空間中每個粒子pi到理想粒子之間的距離,并對該計算得到的距離進行歸一化操作,以得到目標(biāo)空間中表示粒子收斂性的距離Cv(pi,P)。

在步驟S304中,獲取每個粒子pi在直線L上的投影點到理想粒子的距離d1(pi)以及該粒子到直線L的垂直距離d2(pi),直線L為目標(biāo)空間中通過理想粒子和最差粒子的直線。

在本發(fā)明實施例中,理想粒子為所有目標(biāo)都取最優(yōu)值時的粒子,是機器人的一種最理想行進路徑(或參數(shù)),最差粒子為所有目標(biāo)都同時為最差時的粒子。

在步驟S305中,根據(jù)Cd(pi,P)、Cv(pi,P)、d1(pi)和d2(pi)將目標(biāo)空間劃分為預(yù)設(shè)數(shù)量的區(qū)域,根據(jù)每個粒子所處的區(qū)域?qū)Ζ梁挺轮颠M行設(shè)置。

在本發(fā)明實施例中,計算目標(biāo)空間中所有粒子的Cv(pi,P)距離的平均值、Cd(pi,P)距離的平均值、d1(pi)的平均值以及d2(pi)的平均值,將目標(biāo)空間中粒子的Cd(pi,P)、Cv(pi,P)、d1(pi)和d2(pi)與計算得到的對應(yīng)平均值進行比較,根據(jù)比較結(jié)果將目標(biāo)空間劃分為到對應(yīng)的區(qū)域,根據(jù)每個粒子所處的區(qū)域?qū)Ζ梁挺轮颠M行設(shè)置,從而平衡粒子群中粒子的收斂性和多樣性。

在步驟S306中,根據(jù)α、β、Cd(pi,P)和Cv(pi,P)的值,通過適應(yīng)度計算公式fit(pi,P)=α×Cd(pi,P)+β×Cv(pi,P)計算預(yù)設(shè)存檔中每一個粒子的適應(yīng)度值fit(pi,P)。

在本發(fā)明實施例中,通過上述步驟計算預(yù)設(shè)存檔中每一個粒子的適應(yīng)度值,實現(xiàn)了每個粒子的收斂性與多樣性的平衡,通過計算得到的適應(yīng)度值對不同的兩個粒子做優(yōu)劣比較,從而可以選擇比較優(yōu)的粒子進行進化操作,以對存檔進一步進行更新,并選擇比較優(yōu)的粒子作為整個粒子群的全局最優(yōu)粒子,使得整個粒子群沿著最優(yōu)的方向搜索。

實施例四:

圖4示出了本發(fā)明實施例二提供的機器人路徑規(guī)劃方法中對粒子群中的粒子和預(yù)設(shè)存檔進行更新的實現(xiàn)流程,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分,詳述如下:

在步驟S401中,從預(yù)設(shè)存檔中前預(yù)設(shè)數(shù)量個的粒子中隨機選擇一個粒子作為粒子群的全局最優(yōu)粒子,根據(jù)速度公式vi(t+1)=ωvi(t)+c1r1(Pbesti-pi(t))+c2r2(gbesti-pi(t))+c3r3(gbesti-Pbesti)更新粒子群中每個粒子的速度。

在本發(fā)明實施例中,Vi(t+1)表示下一代粒子的飛行速度,ω為隨機數(shù),表示粒子的飛行慣性參數(shù),Vi(t)為當(dāng)前代數(shù)的第i個粒子的速度,c1、c2、c3為隨機數(shù),表示粒子的學(xué)習(xí)參數(shù),r1、r2、r3為預(yù)設(shè)范圍內(nèi)的隨機數(shù),Pbesti表示當(dāng)前粒子本身的歷史最優(yōu)粒子,gbesti表示整個粒子群的全局最粒子,pi(t)表示當(dāng)前粒子。優(yōu)選地,第一預(yù)設(shè)數(shù)量為預(yù)設(shè)存檔中粒子總數(shù)的10%,從而在保證粒子群多樣性的同時,提高粒子群中粒子的收斂速度。通過該公式更新粒子群中每個粒子的速度時可提高粒子群的收斂速度,從而更快地獲取到多目標(biāo)函數(shù)的最優(yōu)解集。

在步驟S402中,根據(jù)位移公式pi(t+1)=pi(t)+vi(t+1)更新粒子群中每個粒子在目標(biāo)空間中的位置。

在本發(fā)明實施例中,pi(t+1)表示下一代(更新后的)粒子的位置,pi(t)表示當(dāng)代粒子位置(更新前的粒子),vi(t+1)表示下一代粒子的速度(更新后粒子的速度)。

在步驟S403中,若更新后得到的新粒子pinew支配更新前粒子pi,則將粒子的Pbesti更新為pinew,否則Pbesti保持不變。

在步驟S404中,根據(jù)更新后的粒子群對預(yù)設(shè)存檔進行更新。

在本發(fā)明實施例中,在對預(yù)設(shè)存檔進行更新時,首先判斷粒子群中每一個粒子是否被預(yù)設(shè)存檔中一個粒子支配,當(dāng)當(dāng)前粒子未被預(yù)設(shè)存檔中一個粒子支配時,判斷預(yù)設(shè)存檔是否已經(jīng)達到預(yù)設(shè)的最大存檔粒子數(shù),若未達到則將當(dāng)前粒子加入到預(yù)設(shè)存檔中,若已經(jīng)達到最大存檔粒子數(shù),根據(jù)適應(yīng)度計算公式計算預(yù)設(shè)存檔中每個粒子以及當(dāng)前粒子的適應(yīng)度值,根據(jù)該適應(yīng)度值判斷當(dāng)前粒子是否加入到預(yù)設(shè)存檔中,當(dāng)當(dāng)前粒子的適應(yīng)度值比預(yù)設(shè)存檔中適應(yīng)度值最大的粒子的適應(yīng)度值小時,將當(dāng)前粒子加入到預(yù)設(shè)存檔中,并刪除預(yù)設(shè)存檔中適應(yīng)度值最大的粒子。

在本發(fā)明實施例中,結(jié)合粒子間支配關(guān)系以及平衡粒子群中粒子收斂性和多樣性的適應(yīng)度值對預(yù)設(shè)存檔進行更新,從而在超多行進路徑優(yōu)化目標(biāo)(例如,目標(biāo)數(shù)量大于4的情形)的優(yōu)化過程中,可得到收斂性和多樣性更佳的最優(yōu)解集,為機器人提供更優(yōu)的行進路徑。

在本發(fā)明實施例中,進一步優(yōu)選地,將當(dāng)前粒子加入到預(yù)設(shè)存檔中,并刪除預(yù)設(shè)存檔中適應(yīng)度值最大的粒子之后,還可以對預(yù)設(shè)存檔中的粒子進行進化操作,以進一步對預(yù)設(shè)存檔中的粒子進行優(yōu)化。

具體地,對預(yù)設(shè)存檔中的粒子進行進化操作時,對預(yù)設(shè)存檔中的每個粒子與預(yù)設(shè)存檔中前第二預(yù)設(shè)數(shù)量個粒子中的一個隨機粒子進行模擬二進制交叉操作,得到一個新粒子,并對該新粒子進行變異操作,使用變異后的所有粒子對預(yù)設(shè)存檔進行更新,以得到更新后的預(yù)設(shè)存檔。

在本發(fā)明實施例中,在前述對預(yù)設(shè)存檔進行更新后,進一步通過進化操作對更新后的存檔進行再次更新,從而增加了粒子在目標(biāo)空間中的搜索方向,使得最優(yōu)解集的多樣性更佳。

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

實施例五:

圖5示出了本發(fā)明實施例五提供的機器人路徑規(guī)劃裝置的結(jié)構(gòu),為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分,其中包括:

函數(shù)構(gòu)造單元51,用于當(dāng)接收到機器人行進路徑規(guī)劃請求時,構(gòu)造機器人的行進路徑優(yōu)化目標(biāo)的多目標(biāo)函數(shù),行進路徑優(yōu)化目標(biāo)的數(shù)量大于等于4;

條件接收單元52,用于接收用戶輸入的機器人行駛區(qū)域的地圖數(shù)據(jù)以及行進路徑優(yōu)化目標(biāo)的約束條件;以及

路徑參數(shù)確定單元53,用于根據(jù)地圖數(shù)據(jù)、約束條件和多目標(biāo)函數(shù),獲取多目標(biāo)函數(shù)的最優(yōu)解集,確定最優(yōu)解集為機器人的行進路徑參數(shù)。

優(yōu)選地,如圖6所示,路徑參數(shù)確定單元53包括:

初始化單元531,用于根據(jù)約束條件隨機生成多目標(biāo)函數(shù)的初始粒子群,初始化粒子群中每個粒子的飛行速度,將每個粒子的個體最優(yōu)解初始化為該粒子自身,粒子群表示多目標(biāo)函數(shù)的解集,粒子群中的粒子表示多目標(biāo)函數(shù)的解集中的一個解;

粒子篩選單元532,用于根據(jù)Pareto支配關(guān)系篩選出初始粒子群中的非支配個體,并將非支配個體保存到預(yù)設(shè)存檔中;

第一計算單元533,用于根據(jù)多目標(biāo)函數(shù)的粒子群中粒子的適應(yīng)度計算公式fit(pi,P)=α×Cd(pi,P)+β×Cv(pi,P),計算預(yù)設(shè)存檔中每一個粒子的適應(yīng)度值fit(pi,P),其中,α和β為預(yù)設(shè)參數(shù),Cv(pi,P)表示當(dāng)前計算粒子pi的收斂性距離,Cd(pi,P)表示當(dāng)前計算粒子pi的多樣性距離,P表示當(dāng)前粒子群;

粒子排序單元534,用于根據(jù)預(yù)設(shè)存檔中所有粒子的適應(yīng)度值對預(yù)設(shè)存檔中粒子進行升序排序;

代數(shù)檢測單元535,用于檢測當(dāng)前迭代代數(shù)是否小于預(yù)設(shè)的最大迭代代數(shù);以及

最優(yōu)解確定單元536,用于當(dāng)當(dāng)前迭代代數(shù)小于預(yù)設(shè)的最大迭代代數(shù)時,對粒子群中的粒子和預(yù)設(shè)存檔進行更新,對當(dāng)前迭代代數(shù)進行加1操作,并觸發(fā)代數(shù)檢測單元535檢測所當(dāng)前迭代代數(shù)是否小于預(yù)設(shè)的最大迭代代數(shù),否則確定預(yù)設(shè)存檔中的粒子為多目標(biāo)函數(shù)的最優(yōu)解。

優(yōu)選地,如圖7所示,第一計算單元533包括:

目標(biāo)空間獲取單元5331,用于對粒子群中每個粒子進行歸一化操作,以得到一個歸一化的目標(biāo)空間;

第一距離獲取單元5332,用于根據(jù)預(yù)設(shè)的平移距離公式計算每個粒子pi的、表示該粒子在目標(biāo)空間中擁擠程度的距離,對計算得到的距離進行歸一化操作,以得到目標(biāo)空間中表示粒子多樣性的距離Cd(pi,P);

第二距離獲取單元5333,用于計算目標(biāo)空間中每個粒子pi到理想粒子之間的距離,并對該計算得到的距離進行歸一化操作,以得到目標(biāo)空間中表示粒子收斂性的距離Cv(pi,P);

第三距離獲取單元5334,用于獲取每個粒子pi在直線L上的投影點到理想粒子的距離d1(pi)以及該粒子到所述直線L的垂直距離d2(pi),直線L為目標(biāo)空間中通過理想粒子和最差粒子的直線;

參數(shù)設(shè)置單元5335,用于根據(jù)Cd(pi,P)、Cv(pi,P)、d1(pi)和d2(pi)將目標(biāo)空間劃分為預(yù)設(shè)數(shù)量的區(qū)域,根據(jù)每個粒子所處的區(qū)域?qū)Ζ梁挺轮颠M行設(shè)置;以及

計算子單元5336,用于根據(jù)α、β、Cd(pi,P)和Cv(pi,P)的值,通過適應(yīng)度計算公式fit(pi,P)=α×Cd(pi,P)+β×Cv(pi,P)計算預(yù)設(shè)存檔中每一個粒子的適應(yīng)度值fit(pi,P)。

優(yōu)選地,如圖8所示,最優(yōu)解確定單元536包括:

粒子速度更新單元5361,用于從預(yù)設(shè)存檔中前預(yù)設(shè)數(shù)量個的粒子中隨機選擇一個粒子作為粒子群的全局最優(yōu)粒子gbest,根據(jù)速度公式vi(t+1)=ωvi(t)+c1r1(Pbesti-pi(t))+c2r2(gbesti-pi(t))+c3r3(gbesti-Pbesti)更新粒子群中每每個粒子的速度;

粒子位置更新單元5362,用于根據(jù)位移公式pi(t+1)=pi(t)+vi(t+1)更新粒子群中每個粒子在目標(biāo)空間中的位置;

個體最優(yōu)解更新單元5363,用于若更新后得到的新粒子pinew支配更新前粒子pi,則將粒子的個體最優(yōu)解Pbesti更新為pinew,否則Pbesti保持不變;以及

存檔更新單元5364,用于根據(jù)更新后的粒子群對預(yù)設(shè)存檔進行更新。

在本發(fā)明實施例中,存檔更新單元5364包括:

判斷單元,用于判斷更新后的粒子群中的每一個粒子是否被預(yù)設(shè)存檔中一個粒子支配,當(dāng)當(dāng)前粒子未被預(yù)設(shè)存檔中一個粒子支配時,判斷預(yù)設(shè)存檔是否已經(jīng)達到預(yù)設(shè)的最大存檔粒子數(shù);

第二計算單元,用于若未達到則將當(dāng)前粒子加入到預(yù)設(shè)存檔中,若已經(jīng)達到最大存檔粒子數(shù),根據(jù)適應(yīng)度計算公式計算預(yù)設(shè)存檔中每個粒子以及當(dāng)前粒子的適應(yīng)度值;以及

粒子加入單元,用于當(dāng)當(dāng)前粒子的適應(yīng)度值比預(yù)設(shè)存檔中適應(yīng)度值最大的粒子的適應(yīng)度值小時,將當(dāng)前粒子加入到預(yù)設(shè)存檔中,并刪除預(yù)設(shè)存檔中適應(yīng)度值最大的粒子。

在本發(fā)明實施例中,機器人路徑規(guī)劃裝置的各單元可由相應(yīng)的硬件或軟件單元實現(xiàn),各單元可以為獨立的軟、硬件單元,也可以集成為機器人的一個軟、硬件單元,在此不用以限制本發(fā)明。上述各單元的具體實施方式可參考前述實施例中步驟的對應(yīng)描述,在此不再贅述。

以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。

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