• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于改進(jìn)遺傳算法的移動(dòng)機(jī)器人路徑規(guī)劃

    2019-04-28 12:24:23宋宇王志明
    現(xiàn)代電子技術(shù) 2019年24期
    關(guān)鍵詞:路徑優(yōu)化路徑規(guī)劃移動(dòng)機(jī)器人

    宋宇 王志明

    摘要:將遺傳算法用于路徑規(guī)劃時(shí),傳統(tǒng)算法雖然簡(jiǎn)單,但不適用轉(zhuǎn)彎情況較多的復(fù)雜地圖。針對(duì)這一問(wèn)題,首先將RRT算法用于柵格環(huán)境下產(chǎn)生初始路徑,其次提出一種新的插入算子,最后進(jìn)行路徑優(yōu)化。根據(jù)不同地圖與其他文獻(xiàn)中的改進(jìn)遺傳算法,進(jìn)行對(duì)比研究與分析,制定路徑長(zhǎng)度與算法用時(shí)2個(gè)指標(biāo)來(lái)評(píng)判算法的優(yōu)劣。仿真結(jié)果表明,改進(jìn)算法得到的路徑長(zhǎng)度縮短了70%,路徑長(zhǎng)度達(dá)到最優(yōu)的用時(shí)減少了8%。

    關(guān)鍵詞:移動(dòng)機(jī)器人;遺傳算法;路徑規(guī)劃;算法評(píng)判;插入算子;路徑優(yōu)化

    中圖分類號(hào):TN820.4-34;TP301.6

    文獻(xiàn)標(biāo)識(shí)碼:A

    文章編號(hào):1004-373X(2019)24-0172-04

    遺傳算法是一種模擬自然界選擇進(jìn)化的全局優(yōu)化算法,利用遺傳算法求解最優(yōu)問(wèn)題是通過(guò)選擇交叉變異算子不斷迭代來(lái)實(shí)現(xiàn)的。采用遺傳算法路徑規(guī)劃的文獻(xiàn)并不少見[1-5]。文獻(xiàn)[1]提出了人工勢(shì)場(chǎng)法與遺傳算法相結(jié)合的方法,使得算法得到的路徑平滑度較高;文獻(xiàn)[2]采用了Dijstar算法初始化種群,用遺傳算法得到了安全度較高的路徑;文獻(xiàn)[5]提出了根據(jù)種群的適應(yīng)度方差自適應(yīng)選擇的選擇策略;文獻(xiàn)[6]在遺傳算法得到的路徑上重新排列基因優(yōu)化了路徑長(zhǎng)度與路徑平滑度;文獻(xiàn)[7]采用了在當(dāng)前點(diǎn)附近產(chǎn)生個(gè)體的方法,以距離為適應(yīng)度函數(shù),用遺傳算法進(jìn)行了路徑規(guī)劃。

    1 基于改進(jìn)遺傳算法的路徑規(guī)劃

    在傳統(tǒng)遺傳算法柵格路徑規(guī)劃的基礎(chǔ)上提出了新的初始化方式、變異方式以及插入方式,改善了全局尋優(yōu)效果。

    1.1 柵格模型

    首先將給定地圖柵格化,將障礙物所占的柵格用黑色柵格表示,自由空間用白色柵格表示,圖1中黑色曲線表示一條典型的柵格環(huán)境路徑,該路徑是由從起點(diǎn)到終點(diǎn)的一系列路徑點(diǎn)組成的路徑規(guī)劃算法的任務(wù),即尋找從起點(diǎn)到終點(diǎn)的一系列連續(xù)路徑點(diǎn),使得連接路徑點(diǎn)的路徑長(zhǎng)度或安全度最優(yōu)。路徑點(diǎn)的位置可以用直角坐標(biāo)或柵格序號(hào)表示,給定柵格中心點(diǎn)的柵格序號(hào)P(i,j)與直角坐標(biāo)[X(i,j ),Y(i,j)]的轉(zhuǎn)換關(guān)系如下:

    X(i,j)= mod (P(i,j),10)- 0.5

    Y(i,j)= floor (P(i,J),10)+ 0.5

    (1)

    P(i,j)=X(i,j)+0.5+10(1,(i,j)一0.5)

    圖1中的路徑點(diǎn)組成的路徑點(diǎn)集合為{1,12,23,24,25,26,36,46,56,67,68,69,80,90,1001,移動(dòng)機(jī)器人的起點(diǎn)序號(hào)為1,終點(diǎn)序號(hào)為100。遺傳算法中的個(gè)體用路徑序號(hào)組成的向量表示,1個(gè)個(gè)體代表一條無(wú)碰撞路徑。

    1.2 遺傳算法初始化

    傳統(tǒng)遺傳算法用于柵格路徑規(guī)劃時(shí),在初始化中采用較多的是中點(diǎn)插值法,即隨機(jī)產(chǎn)生一定數(shù)量的路徑點(diǎn),在每?jī)蓚€(gè)路徑點(diǎn)之間采用中點(diǎn)插值的方式進(jìn)行路徑插補(bǔ)。文中將RRT算法用于遺傳算法種群的初始化,給定起點(diǎn)與終點(diǎn),從起點(diǎn)開始產(chǎn)生隨機(jī)樹并不斷生長(zhǎng),直到此隨機(jī)樹到達(dá)終點(diǎn)。

    文中算法產(chǎn)生一條路徑的具體步驟如下:

    1)將起點(diǎn)坐標(biāo)(如圖1中的[1,1])加入隨機(jī)樹中;

    2)在地圖范圍內(nèi)以50%的概率產(chǎn)生1個(gè)隨機(jī)點(diǎn)作為目標(biāo)點(diǎn),其余50%的概率以終點(diǎn)為目標(biāo)點(diǎn),計(jì)算得到距離此目標(biāo)點(diǎn)最近的樹節(jié)點(diǎn)P(x,y);

    3)在P(x,y)所在柵格的鄰居?xùn)鸥裰羞x出所有非障礙物柵格,若P(x,y)的所有鄰居?xùn)鸥穸荚谡系K物中,則跳到步驟2);

    4)在步驟3)產(chǎn)生的滿足條件的鄰居?xùn)鸥裰?,選擇距離步驟2)產(chǎn)生的隨機(jī)點(diǎn)最近的柵格中心點(diǎn),若此點(diǎn)已經(jīng)在樹中,跳到步驟2),若此點(diǎn)不在樹中,將此點(diǎn)作為樹節(jié)點(diǎn),即將此距離最近的點(diǎn)加入樹中。

    5)檢查步驟4)新加入樹中的點(diǎn)的所有鄰居?xùn)鸥瘢艚K點(diǎn)在這些鄰居?xùn)鸥駜?nèi),算法結(jié)束。若終點(diǎn)不在柵格內(nèi),跳到步驟2)。

    按照上述算法產(chǎn)生種群數(shù)量的路徑,初始化結(jié)束。

    1.3 適應(yīng)度函數(shù)

    文中適應(yīng)度函數(shù)選擇為路徑長(zhǎng)度。

    1.4 選擇算子

    文中采用文獻(xiàn)[5]提出的自適應(yīng)選擇算法,個(gè)體被選擇的概率為:

    P=α (1- a)i-l(2)式中:i為按個(gè)體距離長(zhǎng)度排序后的個(gè)體序號(hào)值;α為:

    產(chǎn)生個(gè)體概率后,使用隨機(jī)遍及取樣(SUS)算法選擇個(gè)體。

    1.5 交叉算子

    文中采用單點(diǎn)交叉算法,即在種群內(nèi)隨機(jī)選擇2個(gè)待交叉?zhèn)€體,找到這兩個(gè)個(gè)體的除起點(diǎn)與終點(diǎn)外的公共點(diǎn),隨機(jī)選擇公共點(diǎn)中的一個(gè)點(diǎn),交換這兩個(gè)個(gè)體選擇到的點(diǎn)的后半部分路徑點(diǎn)產(chǎn)生兩個(gè)新的個(gè)體。個(gè)體交叉示意圖如圖2所示,圖中前兩個(gè)地圖中的個(gè)體在序號(hào)為56的點(diǎn)處交叉,產(chǎn)生后兩個(gè)個(gè)體。

    1.6 變異算子

    文中提出的變異算子步驟如下:

    1)在種群中隨機(jī)選擇一個(gè)個(gè)體,在此個(gè)體中隨機(jī)選擇除起點(diǎn)與終點(diǎn)外的一個(gè)路徑點(diǎn)[X,Y],此路徑點(diǎn)將個(gè)體分為前半段路徑與后半段路徑;

    2)以50%的概率選擇坐標(biāo)X進(jìn)行變異,其余50%的概率選擇坐標(biāo)Y進(jìn)行變異,即在點(diǎn)[x,y]的同行或同列中選擇一個(gè)非障礙物柵格作為變異后的點(diǎn);

    3)在前半段路徑中隨機(jī)選擇一個(gè)路徑點(diǎn)[X1,Y1],在后半段路徑中隨機(jī)選擇一個(gè)路徑點(diǎn)[X2,Y2],使用插入算子連接[X1,Y1]與[X,Y],[X,Y]與[X2,Y2】,若兩段路徑都連接成功,將原個(gè)體中的起點(diǎn)到點(diǎn)[X1,Y1]的路徑與[X1,Y1]與[x,y]的路徑和[X,Y]與[X2,Y2]與原個(gè)體中的點(diǎn)[X2,Y2]到終點(diǎn)的路徑拼接產(chǎn)生變異后的新個(gè)體,若兩段路徑有1段連接失敗,則令新個(gè)體與原個(gè)體相同。

    1.7 插入算予

    對(duì)于給定的兩個(gè)點(diǎn),稱為start點(diǎn)與goal點(diǎn),令start點(diǎn)為當(dāng)前點(diǎn),創(chuàng)建一個(gè)鄰居列表(此時(shí)為空數(shù)組),創(chuàng)建一個(gè)與地圖同型的考察標(biāo)志矩陣(此時(shí)只有start點(diǎn)處的值為1,其余為0),創(chuàng)建一個(gè)路徑點(diǎn)列表(此時(shí)為空)。

    1)檢查當(dāng)前點(diǎn)的8個(gè)鄰居?xùn)鸥?,將不在障礙物中且未考察過(guò)的點(diǎn)加入鄰居列表,同時(shí)令這些點(diǎn)的考察標(biāo)志為1。

    2)如果鄰居列表為空,則插入失敗,算法結(jié)束,否則繼續(xù)執(zhí)行步驟3)。

    3)如果goal點(diǎn)在鄰居列表中,插入成功,算法結(jié)束;如果goal點(diǎn)不在鄰居列表中,從鄰居列表中選擇距離goal點(diǎn)最近的點(diǎn)P,將點(diǎn)P從鄰居列表刪除。

    4)若點(diǎn)P與當(dāng)前點(diǎn)是相鄰柵格,則令點(diǎn)P為當(dāng)前點(diǎn),同時(shí)將點(diǎn)P加入路徑點(diǎn)列表,跳到步驟1);若點(diǎn)P與當(dāng)前點(diǎn)不是相鄰柵格,連接失敗,算法結(jié)束。

    1.8 刪除算子

    刪除算子是將個(gè)體中相同路徑點(diǎn)之間的路徑點(diǎn)與這兩個(gè)相同路徑點(diǎn)中的一個(gè)刪除,去除了冗余路徑點(diǎn)。

    1.9 優(yōu)化算子

    優(yōu)化算子是檢查個(gè)體中連接第i個(gè)路徑點(diǎn)(path(i))的前一個(gè)路徑點(diǎn)(path(i-l))與后一個(gè)路徑點(diǎn)(path(i+l))的直線是否經(jīng)過(guò)障礙物柵格,若不經(jīng)過(guò),則將此指定點(diǎn)從個(gè)體中刪除。優(yōu)化算子的偽代碼如下:

    flag=1;

    while flag==l

    for i=2: size( path, 2)-1

    if deletable(i,path)

    delete path(i)from path

    flag=1;

    break

    end

    flag=0;

    end

    end

    其中deletable(i,path)指的是判斷第i個(gè)路徑點(diǎn)是否可刪除。

    1.10 改進(jìn)遺傳算法柵格法路徑規(guī)劃流程

    1)路徑初始化,產(chǎn)生給定數(shù)量的個(gè)體;

    2)使用選擇算子產(chǎn)生下一代個(gè)體;

    3)從種群中隨機(jī)選擇2個(gè)個(gè)體,使用交叉算子進(jìn)行交叉;

    4)從種群中隨機(jī)選擇一個(gè)個(gè)體,使用變異算子進(jìn)行變異;

    5)對(duì)種群中所有個(gè)體分別調(diào)用刪除算子,優(yōu)化算子,若未達(dá)到指定迭代次數(shù),跳到步驟2),否則,算法結(jié)束。

    2 仿真

    在Matlab 2014a,13 -4000M的CPU環(huán)境下進(jìn)行仿真。仿真部分比較了文中算法與文獻(xiàn)[3]算法在3個(gè)地圖環(huán)境下得到的路徑長(zhǎng)度與路徑達(dá)到最優(yōu)所用時(shí)間(算法效率),如圖3、表1所示。

    起點(diǎn)為左下角柵格,終點(diǎn)為右上角柵格,種群大小為5,迭代次數(shù)500。在地圖3中,由于文獻(xiàn)[3]算法初始化方法只選擇固定幾個(gè)方向進(jìn)行移動(dòng),故對(duì)轉(zhuǎn)彎過(guò)多的環(huán)境不適用,從地圖3可以看出文中算法在復(fù)雜環(huán)境下的可行性。

    3 結(jié)語(yǔ)

    根據(jù)本文提出的初始化方式,變異及插入與優(yōu)化算子,在Matlab中與文獻(xiàn)[3]中的改進(jìn)遺傳算法對(duì)比,仿真結(jié)果表明本文提出的算法在不同環(huán)境下得到的路徑可行、有效。

    注:本文通訊作者為王志明。

    參考文獻(xiàn)

    [1]喬莎莎,吳勇,張建東,等,基于遺傳算法和人T勢(shì)場(chǎng)法的路徑規(guī)劃[J]現(xiàn)代電子技術(shù),2012,35(12):75-78.

    QIAO Shasha. WU Yong, ZHANG Jiandong, et aI.Path plan-ning based on genetic algorithm and artificial potential fieldmethod[J]. Modern electronics technique, 2012, 35( 12): 75-78.

    [2]盧月品,趙陽(yáng),孟躍強(qiáng),等.基于改進(jìn)遺傳算法的狹窄空間路徑規(guī)劃[J]計(jì)算機(jī)應(yīng)用研究,2015,32(2):413-418.

    LU Yuepin. ZHAO Yang, MENG Yueqiang, et al.Path plan-ning in narrow space by improved genetic algorithm [J]. Appli-cation research of computers, 2015, 32(2):413-418.

    [3]田欣,劉廣瑞,周文博,等.基于改進(jìn)白適應(yīng)遺傳算法的機(jī)器人路徑規(guī)劃研究[J]機(jī)床與液壓,2016,44( 17):24-28.

    TIAN Xin. LIU Guangrui, ZHOU Wenbo. et al.Research ofrobot path planning based on improved adaptive genetic algo-rithm [J]. Machine tool and hydraulics, 2016. 44(17) : 24-28.

    [4]楊獻(xiàn)峰,付俊輝 .移動(dòng)機(jī)器人路徑規(guī)劃的仿真研究[J]. 計(jì)算機(jī)仿真, 2012.29( 7) :223-226.

    YANG Xianfeng, FU Junhui. Mobile robot path planning basedon grid algorithm and CGA [J]. Computer simulation. 2012, 29(7) : 223-226.

    [5] KARAMI A H. HASANZADEH M. An adaptive genetic algo-rithm for robot motion planning in 2D complex environments[J]. Computers & electrical engineering, 2015. 43 : 317-329.

    [6] 11 M F, WANG C J, CHEN Z Q, et al. Pathplanning of mo-hile rohot based on genetic algorithm and gene rearrangement[C]// Chinese Automation Congress. Jinan: IEEE, 2017: 6999- 7004.

    [7] ARORA T, GIGRAS Y, ARORA V. Robotic path planning us-ing genetic algorithm in dynamic environment [J]. Internationaljournal of computer applications , 2014. 89( 11 ) : 8-12.

    [8] FU B. CHEN L, ZHOU Y T, et al. An improved A' algorithmfor the industrial robot path planning with high success rateand shortlength [J]. Robotics & autonomous systems. 2018,106: 26-37.

    [9] PATLE B K. PARHI D R K. JAGADEESH A. et al. Matrix-Binary codes based Genetic Algorithm for path planning of mo-bile robot [J]. Computers & electrical engineering, 2017. 45 : 1-

    [10] ISLAM F, NASIR J. MALIK U. et al. RRT#-Smart: Rapidconvergence implementation of RRT* towards optimal solution[C]// International Conference on Mechatronics and Automa-tion. Chengdu : IEEE . 2012 : 1651-1656.

    作者簡(jiǎn)介:宋宇(1969-),男,黑龍江呼蘭人,教授,主要研究領(lǐng)域?yàn)榍度胧较到y(tǒng)設(shè)計(jì)與研究。

    王志明(1991-),男,山西神池人,碩士研究生,主要研究領(lǐng)域?yàn)槁窂揭?guī)劃。

    猜你喜歡
    路徑優(yōu)化路徑規(guī)劃移動(dòng)機(jī)器人
    移動(dòng)機(jī)器人自主動(dòng)態(tài)避障方法
    基于Twincat的移動(dòng)機(jī)器人制孔系統(tǒng)
    經(jīng)濟(jì)發(fā)展方式轉(zhuǎn)變背景下流通體系路徑優(yōu)化策略探討
    山西省異地就醫(yī)直接結(jié)算路徑優(yōu)化研究
    CVRP物流配送路徑優(yōu)化及應(yīng)用研究
    清掃機(jī)器人的新型田埂式路徑規(guī)劃方法
    自適應(yīng)的智能搬運(yùn)路徑規(guī)劃算法
    科技視界(2016年26期)2016-12-17 15:53:57
    基于B樣條曲線的無(wú)人車路徑規(guī)劃算法
    基于意義建構(gòu)視角的企業(yè)預(yù)算管理優(yōu)化路徑探究
    基于改進(jìn)的Dijkstra算法AGV路徑規(guī)劃研究
    科技視界(2016年20期)2016-09-29 12:00:43
    出国| 城步| 兰州市| 烟台市| 营山县| 驻马店市| 揭西县| 诸暨市| 肃北| 邹平县| 嵊州市| 长宁区| 玉树县| 泗水县| 大同县| 临桂县| 五台县| 宁明县| 泊头市| 广丰县| 武山县| 洛宁县| 汉阴县| 铁力市| 陇南市| 临安市| 慈利县| 克拉玛依市| 乐昌市| 萨嘎县| 乌恰县| 南通市| 喀什市| 玉屏| 张家川| 新野县| 卫辉市| 青岛市| 浦城县| 罗源县| 安吉县|