本發(fā)明涉及動(dòng)態(tài)避障與路徑規(guī)劃算法優(yōu)化,具體為基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障方法及系統(tǒng)。
背景技術(shù):
1、隨著機(jī)器人技術(shù)的快速發(fā)展,動(dòng)態(tài)避障技術(shù)已成為自動(dòng)化巡檢、物流運(yùn)輸和服務(wù)機(jī)器人等領(lǐng)域的核心研究方向。當(dāng)前,動(dòng)態(tài)避障方法通常結(jié)合全局路徑規(guī)劃和局部避障策略,以提升機(jī)器人在復(fù)雜動(dòng)態(tài)環(huán)境中的導(dǎo)航能力。其中,a*算法以其路徑搜索效率高、易于實(shí)現(xiàn)的優(yōu)勢(shì)被廣泛用于全局路徑規(guī)劃,而勢(shì)場(chǎng)法因其實(shí)時(shí)性和局部避障能力在動(dòng)態(tài)環(huán)境下得到重視。近年來,為應(yīng)對(duì)多變的環(huán)境和實(shí)時(shí)性要求,研究者嘗試通過改進(jìn)傳統(tǒng)算法或引入智能優(yōu)化機(jī)制,提高動(dòng)態(tài)避障的效率與安全性,進(jìn)一步推動(dòng)了相關(guān)技術(shù)的應(yīng)用與發(fā)展。
2、盡管上述方法取得了一定的成效,但現(xiàn)有技術(shù)在實(shí)際應(yīng)用中仍面臨諸多挑戰(zhàn)與不足。首先,傳統(tǒng)a*算法在全局路徑規(guī)劃中生成的路徑可能難以應(yīng)對(duì)動(dòng)態(tài)環(huán)境中快速變化的障礙物分布,導(dǎo)致路徑失效或規(guī)劃效率低下;其次,經(jīng)典勢(shì)場(chǎng)法雖然適用于局部避障,但存在局部最優(yōu)解問題,使得機(jī)器人可能陷入死鎖區(qū)域或循環(huán)軌跡,難以實(shí)現(xiàn)全局目標(biāo)。此外,現(xiàn)有技術(shù)普遍缺乏有效的全局與局部算法協(xié)同機(jī)制,當(dāng)機(jī)器人在執(zhí)行任務(wù)過程中面臨障礙物密集分布或動(dòng)態(tài)障礙物時(shí),算法切換往往缺乏實(shí)時(shí)性和魯棒性,導(dǎo)致避障效果難以保障。另一方面,許多現(xiàn)有方法對(duì)環(huán)境數(shù)據(jù)依賴較高,缺乏適應(yīng)不同場(chǎng)景的通用性,尤其在動(dòng)態(tài)障礙物高速運(yùn)動(dòng)或復(fù)雜場(chǎng)景下,難以實(shí)現(xiàn)高效的路徑調(diào)整與避障。
技術(shù)實(shí)現(xiàn)思路
1、鑒于上述存在的問題,提出了本發(fā)明。
2、因此,本發(fā)明解決的技術(shù)問題是:現(xiàn)有的動(dòng)態(tài)避障與路徑規(guī)劃方法存在全局路徑規(guī)劃無(wú)法適應(yīng)動(dòng)態(tài)環(huán)境,局部避障算法易陷入局部最優(yōu),全局與局部算法協(xié)同缺乏實(shí)時(shí)性與魯棒性,以及如何實(shí)現(xiàn)動(dòng)態(tài)環(huán)境下高效避障和路徑優(yōu)化的問題。
3、為解決上述技術(shù)問題,本發(fā)明提供如下技術(shù)方案:一種基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障方法,包括基于a*算法進(jìn)行路徑規(guī)劃;根據(jù)局部改進(jìn)勢(shì)場(chǎng)法避障;依據(jù)判斷切換全局與局部算法機(jī)制進(jìn)行協(xié)同工作。
4、作為本發(fā)明所述的基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障方法的一種優(yōu)選方案,其中:所述基于a*算法進(jìn)行路徑規(guī)劃包括將巡檢機(jī)器人的作業(yè)場(chǎng)景抽象為一個(gè)網(wǎng)格化的地圖模型,根據(jù)現(xiàn)場(chǎng)的信息,設(shè)定網(wǎng)格地圖的精細(xì)程度和整體覆蓋范圍;
5、在網(wǎng)格地圖上標(biāo)注出靜態(tài)障礙物的位置及輪廓形狀;
6、將巡檢機(jī)器人作業(yè)場(chǎng)景建模為網(wǎng)格地圖m,每個(gè)網(wǎng)格代表一個(gè)區(qū)域;
7、m[i][j]的值用于區(qū)分可通行區(qū)域和障礙物區(qū)域表示為:
8、
9、其中,m[i][j]表示區(qū)分可通行區(qū)域和障礙物區(qū)域;
10、根據(jù)現(xiàn)場(chǎng)環(huán)境數(shù)據(jù),標(biāo)注靜態(tài)障礙物的輪廓和位置,精細(xì)程度由網(wǎng)格的分辨率決定,分辨率需平衡精度和計(jì)算代價(jià)。
11、作為本發(fā)明所述的基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障方法的一種優(yōu)選方案,其中:所述基于a*算法進(jìn)行路徑規(guī)劃包括明確巡檢機(jī)器人的出發(fā)點(diǎn)和目的地,采用a*算法在已經(jīng)構(gòu)建的網(wǎng)格地圖上進(jìn)行路徑搜索,輸出最優(yōu)行進(jìn)路線;
12、路徑代價(jià)函數(shù)表示為:
13、f(n)=g(n)+h(n)
14、其中,g(n)表示起點(diǎn)到當(dāng)前節(jié)點(diǎn)的實(shí)際代價(jià),h(n)表示當(dāng)前節(jié)點(diǎn)到目標(biāo)點(diǎn)的估算代價(jià);
15、采用曼哈頓距離計(jì)算h(n)表示為:
16、
17、其中,xn、yn表示當(dāng)前節(jié)點(diǎn)的橫豎坐標(biāo),xt、yt表示目標(biāo)點(diǎn)節(jié)點(diǎn)的橫豎坐標(biāo);
18、基于代價(jià)函數(shù)的最小值搜索,從起點(diǎn)s到目標(biāo)點(diǎn)t生成一條全局最優(yōu)路徑p表示為:
19、p={p1,p2,…,pk}
20、其中,p1,p2,…,pk表示路徑點(diǎn);
21、采用可視圖法和dijkstra算法,對(duì)路徑進(jìn)行優(yōu)化。
22、作為本發(fā)明所述的基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障方法的一種優(yōu)選方案,其中:所述根據(jù)局部改進(jìn)勢(shì)場(chǎng)法避障包括在巡檢機(jī)器人遭遇動(dòng)態(tài)障礙物的情況下,依據(jù)障礙物與機(jī)器人之間的相對(duì)空間位置以及相對(duì)運(yùn)動(dòng)速度,輸出斥力勢(shì)場(chǎng)的,表示為:
23、
24、其中,表示斥力勢(shì)場(chǎng),krep表示斥力常數(shù),d(xr,yr,xo,yo)表示機(jī)器人當(dāng)前位置與障礙物的距離,d0表示影響斥力的最大距離閾值,表示從機(jī)器人指向障礙物的單位向量,表示斥力的方向;
25、斥力勢(shì)場(chǎng)的強(qiáng)度隨障礙物與機(jī)器人的距離變化而動(dòng)態(tài)變化;
26、當(dāng)障礙物遠(yuǎn)近與斥力強(qiáng)度成反比;
27、引力勢(shì)場(chǎng)的強(qiáng)度與機(jī)器人當(dāng)前位置到目標(biāo)點(diǎn)的距離成反比。
28、作為本發(fā)明所述的基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障方法的一種優(yōu)選方案,其中:所述根據(jù)局部改進(jìn)勢(shì)場(chǎng)法避障包括當(dāng)巡檢機(jī)器人在路徑規(guī)劃過程中遭遇局部最優(yōu)解問題,導(dǎo)致無(wú)法直接朝向最終目標(biāo)前進(jìn)時(shí),采用自適應(yīng)子目標(biāo)點(diǎn)設(shè)定的策略;
29、通過傳感器采集機(jī)器人周圍的障礙物信息,建立障礙物集o=
30、{o1,o2,…,on},每個(gè)障礙物i的位置為(xoi,yoi);
31、障礙物區(qū)域定義為機(jī)器人無(wú)法通行的空間范圍,使用距離函數(shù)d(r,0i)表示機(jī)器人與障礙物0i的最近距離,根據(jù)機(jī)器人當(dāng)前位置和周圍障礙物的分布,生成一個(gè)子目標(biāo)點(diǎn)候選集;
32、確保候選子目標(biāo)點(diǎn)距離機(jī)器r不超過規(guī)定范圍dmax,保證子目標(biāo)點(diǎn)的合理性:
33、d(r,ti)≤dmax
34、其中,d(r,ti)表示機(jī)器人與障礙物ti的最近距離,dmax表示規(guī)定范圍;
35、確保子目標(biāo)點(diǎn)ti不位于障礙物區(qū)域內(nèi)部:
36、
37、其中,rsafe表示安全距離閾值,d(ti,oj)表示障礙物ti與障礙物oj的最近距離,oj表示障礙物;
38、通過方向向量夾角θ限制候選點(diǎn)表示為:
39、
40、其中,表示機(jī)器人運(yùn)動(dòng)方向向量,表示機(jī)器人運(yùn)動(dòng)目標(biāo)方向向量。
41、作為本發(fā)明所述的基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障方法的一種優(yōu)選方案,其中:所述根據(jù)局部改進(jìn)勢(shì)場(chǎng)法避障包括應(yīng)用模糊控制機(jī)制,根據(jù)機(jī)器人與障礙物之間的相對(duì)距離、相對(duì)速度以及相對(duì)方向,輸出危險(xiǎn)評(píng)估指標(biāo);
42、模糊控制依據(jù)危險(xiǎn)評(píng)估指標(biāo)的變化,調(diào)整斥力勢(shì)場(chǎng)和引力勢(shì)場(chǎng)的各項(xiàng)參數(shù);
43、輸入變量相對(duì)距離,輸出變量斥力調(diào)節(jié)系數(shù);
44、將輸入和輸出變量模糊化,定義語(yǔ)言變量及隸屬函數(shù),輸入變量模糊化,輸出變量模糊化;
45、隸屬函數(shù)表示為:
46、
47、其中,d表示相對(duì)距離,dnear_max表示相對(duì)距離最大值,dnear_min表示相對(duì)距離最小值,μnear(d)表示隸屬函數(shù);
48、根據(jù)經(jīng)驗(yàn)或場(chǎng)景分析,建立模糊規(guī)則庫(kù);
49、基于模糊規(guī)則,采用模糊推理方法計(jì)算輸出隸屬度:
50、輸出每條規(guī)則的前提隸屬度,根據(jù)前提隸屬度確定規(guī)則適用程度,綜合所有規(guī)則,輸出模糊集。
51、作為本發(fā)明所述的基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障方法的一種優(yōu)選方案,其中:所述依據(jù)判斷切換全局與局部算法機(jī)制進(jìn)行協(xié)同工作包括系統(tǒng)因障礙物情況自動(dòng)從全局a*算法切換到局部改進(jìn)勢(shì)場(chǎng)法;
52、基于實(shí)時(shí)環(huán)境感知與分析,判斷當(dāng)前是否需要從全局a*算法切換到局部改進(jìn)勢(shì)場(chǎng)法,或反向切換;
53、當(dāng)障礙物密集度超過設(shè)定的閾值時(shí),表明機(jī)器人處于障礙物密集區(qū),需要切換到局部改進(jìn)勢(shì)場(chǎng)法;
54、當(dāng)機(jī)器人到障礙物的最短距離小于安全距離時(shí),觸發(fā)切換到局部改進(jìn)勢(shì)場(chǎng)法;
55、若障礙物為動(dòng)態(tài)障礙物,且其相對(duì)速度超過閾值,也需要切換到局部改進(jìn)勢(shì)場(chǎng)法;
56、如果機(jī)器人靠近目標(biāo)區(qū)域,且全局a*規(guī)劃的剩余路徑長(zhǎng)度已小于閾值,切換到局部改進(jìn)勢(shì)場(chǎng)法完成最終調(diào)整;
57、定義綜合狀態(tài)指標(biāo)s來量化機(jī)器人當(dāng)前環(huán)境的復(fù)雜度,表示為:
58、
59、其中,α1、α2、α3、α4表示權(quán)重參數(shù),dobs表示障礙物密集度,dmin表示機(jī)器人到障礙物的最短距離,vobs表示障礙物速度,pprogress表示路徑規(guī)劃階段性完成度;
60、當(dāng)s>st時(shí),切換到局部改進(jìn)勢(shì)場(chǎng)法;
61、當(dāng)s≤st且障礙物稀疏時(shí),切換回全局a*算法。
62、本發(fā)明的另外一個(gè)目的是提供一種基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障系統(tǒng),其能通過局部改進(jìn)勢(shì)場(chǎng)法避障,解決了目前的動(dòng)態(tài)避障與路徑規(guī)劃含有局部避障算法易陷入局部最優(yōu)的問題。
63、作為本發(fā)明所述的基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障系統(tǒng)的一種優(yōu)選方案,其中:包括路徑規(guī)劃模塊,場(chǎng)法避障模塊,協(xié)同工作模塊;所述路徑規(guī)劃模塊用于采用全局a*算法路徑規(guī)劃;所述場(chǎng)法避障模塊用于基于局部改進(jìn)勢(shì)場(chǎng)法避障;所述協(xié)同工作模塊用于根據(jù)全局與局部算法協(xié)同工作。
64、一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器和處理器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序是實(shí)現(xiàn)基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障方法的步驟。
65、一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障方法的步驟。
66、本發(fā)明的有益效果:本發(fā)明提供的基于全局算法與局部改進(jìn)勢(shì)場(chǎng)法的動(dòng)態(tài)避障方法運(yùn)用a*算法執(zhí)行全局路徑規(guī)劃任務(wù),通過對(duì)路徑的實(shí)際代價(jià)與至目標(biāo)點(diǎn)的預(yù)估代價(jià)進(jìn)行綜合考量,精準(zhǔn)定位從起始點(diǎn)至目標(biāo)點(diǎn)的最短路徑,從而保障了全局路徑規(guī)劃的最優(yōu)化。a*算法展現(xiàn)出了卓越的適應(yīng)性,靈活應(yīng)對(duì)各種規(guī)模和復(fù)雜程度的地圖環(huán)境。無(wú)論面對(duì)的是空曠無(wú)阻的開闊地帶,還是錯(cuò)綜復(fù)雜的室內(nèi)或室外空間,a*算法均能高效地完成路徑規(guī)劃工作,展現(xiàn)出其廣泛的適用性和強(qiáng)大的處理能力。在局部路徑規(guī)劃層面,采用了經(jīng)過優(yōu)化的人工勢(shì)場(chǎng)法,該方法巧妙地構(gòu)建了引力場(chǎng)與斥力場(chǎng),以此作為引導(dǎo)機(jī)器人向目標(biāo)點(diǎn)行進(jìn)的驅(qū)動(dòng)力,確保其能夠有效規(guī)避障礙物。通過這一改進(jìn),成功克服了傳統(tǒng)人工勢(shì)場(chǎng)法易陷入局部極小值的難題。當(dāng)機(jī)器人不慎陷入局部最優(yōu)解時(shí),該改進(jìn)方法智能地引導(dǎo)機(jī)器人從當(dāng)前位置逃脫,并前往預(yù)設(shè)的子目標(biāo)點(diǎn),進(jìn)而重新啟動(dòng)路徑規(guī)劃過程,直至順利抵達(dá)終點(diǎn)。在應(yīng)對(duì)動(dòng)態(tài)障礙物方面,融入了模糊控制理念,設(shè)計(jì)了一套針對(duì)移動(dòng)障礙物的風(fēng)險(xiǎn)評(píng)估機(jī)制,以此為基礎(chǔ)動(dòng)態(tài)地調(diào)整實(shí)時(shí)的路徑規(guī)劃策略。該調(diào)整機(jī)制賦予了機(jī)器人在遭遇動(dòng)態(tài)障礙物時(shí)迅速應(yīng)變的能力,確保它能夠即時(shí)規(guī)避碰撞風(fēng)險(xiǎn),并有效防止因障礙物移動(dòng)而導(dǎo)致的規(guī)劃失效情況。該方法巧妙融合了a*算法的全局路徑優(yōu)化優(yōu)勢(shì)與動(dòng)態(tài)窗口法的局部靈活規(guī)劃能力,實(shí)現(xiàn)了全局視野與局部精細(xì)調(diào)整的完美銜接,顯著提升了路徑規(guī)劃的整體效率與即時(shí)響應(yīng)速度。優(yōu)化后的人工勢(shì)場(chǎng)法具備快速計(jì)算與高效執(zhí)行的特性,能在極短時(shí)間內(nèi)確定局部最優(yōu)行進(jìn)路線,提高了路徑規(guī)劃的效率。該方法能夠處理不同規(guī)模和復(fù)雜度的地圖環(huán)境,無(wú)論是簡(jiǎn)單的空曠環(huán)境還是復(fù)雜的室內(nèi)或室外場(chǎng)景,都能有效地進(jìn)行路徑規(guī)劃和動(dòng)態(tài)避障。