本發明屬于智能機器人定位、建圖(tu)與自主導航(hang),具體涉及一種基于非支配排序遺傳算法ii的路標地圖(tu)優化方法及系統。
背景技術:
1、在(zai)面臨復雜(za)時變(bian)的(de)環(huan)(huan)(huan)(huan)境(jing)(jing)(如建筑環(huan)(huan)(huan)(huan)境(jing)(jing))時,移(yi)動機器人(ren)難以獲(huo)得(de)穩定可靠(kao)的(de)環(huan)(huan)(huan)(huan)境(jing)(jing)地圖來完(wan)成自身安全定位(wei)與(yu)導(dao)航。同(tong)時,建筑環(huan)(huan)(huan)(huan)境(jing)(jing)的(de)大(da)尺度、空曠(kuang)特(te)性加(jia)劇(ju)移(yi)動機器人(ren)無法通過提(ti)取充足的(de)環(huan)(huan)(huan)(huan)境(jing)(jing)特(te)征信息來實(shi)現。因此,在(zai)實(shi)際作業環(huan)(huan)(huan)(huan)境(jing)(jing)過程中,應采取增設(she)路標(如反光板、反光柱)來彌補環(huan)(huan)(huan)(huan)境(jing)(jing)特(te)征不足,從而有效(xiao)提(ti)高(gao)移(yi)動機器人(ren)的(de)定位(wei)精(jing)度和系統魯(lu)棒(bang)性。
2、現有(you)技術(shu)存在(zai)的(de)(de)(de)問題是路標(biao)地(di)圖(tu)的(de)(de)(de)部(bu)署(shu)(shu)(shu)量大和移(yi)動機(ji)器人(ren)的(de)(de)(de)算力有(you)限,造成(cheng)機(ji)器人(ren)的(de)(de)(de)定(ding)位(wei)(wei)精(jing)度低。基于此,本發明在(zai)保證(zheng)機(ji)器人(ren)定(ding)位(wei)(wei)和導航(hang)精(jing)度的(de)(de)(de)前(qian)提(ti)下(xia),盡可能選(xuan)擇最(zui)(zui)少的(de)(de)(de)路標(biao)數(shu)量和最(zui)(zui)優(you)的(de)(de)(de)路標(biao)位(wei)(wei)置,以建筑環境下(xia)路標(biao)地(di)圖(tu)部(bu)署(shu)(shu)(shu)為研究對(dui)象,提(ti)出一種(zhong)路標(biao)地(di)圖(tu)部(bu)署(shu)(shu)(shu)及(ji)優(you)化技術(shu)方案,并對(dui)路標(biao)的(de)(de)(de)最(zui)(zui)少數(shu)量和最(zui)(zui)優(you)位(wei)(wei)置部(bu)署(shu)(shu)(shu)進(jin)行綜合優(you)化,以實(shi)現在(zai)特定(ding)環境中(zhong)生成(cheng)所需的(de)(de)(de)最(zui)(zui)少數(shu)量路標(biao)的(de)(de)(de)最(zui)(zui)優(you)位(wei)(wei)置。
技術實現思路
1、針對現(xian)有技術的上述現(xian)狀(zhuang),本發明提(ti)供了(le)一種(zhong)基于非支配排序遺(yi)傳(chuan)算法ii(non-dominated?sorting?genetic?algorithm?ii,nsga-ii)的路(lu)標地(di)圖優化方法及系(xi)統,其能(neng)夠有效減少路(lu)標部署數量,并(bing)有效提(ti)高機器人的定位精度(du)。
2、為了達到上述發明目(mu)的,本發明采用以下技術方案(an):
3、一(yi)種(zhong)基于非(fei)支配排序遺傳(chuan)算(suan)法ii的路標地(di)圖優化(hua)方法,其按如(ru)下步(bu)驟:
4、s1,獲取目標(biao)環(huan)境(jing)的地圖(tu)數據(ju),將地圖(tu)柵格化(hua),并識(shi)別(bie)環(huan)境(jing)中(zhong)障礙(ai)物和候選(xuan)路標(biao)點,將障礙(ai)物和候選(xuan)路標(biao)點的坐標(biao)存儲為輸入數據(ju);
5、s2,根(gen)據目標任務需求,確認移動機(ji)器人的目標定位精度和觀測到(dao)路(lu)標的最大距離;
6、s3,建(jian)立面向(xiang)路標(biao)地圖分布的多(duo)目標(biao)優化模型;
7、s4,使(shi)用(yong)nsga-ii算法對種群進行(xing)非支配排序來劃分pareto前(qian)沿(yan);
8、s5,經過(guo)優化后,選擇pareto前沿解集作為最優的路標地圖部署方案。
9、作為優(you)選,步驟s2中,移(yi)動機(ji)(ji)器人采用激(ji)光雷達(da)探測環(huan)境路(lu)標(biao)(biao),障(zhang)礙物會(hui)遮擋移(yi)動機(ji)(ji)器人對定(ding)位桿的(de)觀測,當移(yi)動機(ji)(ji)器人與路(lu)標(biao)(biao)之(zhi)間存(cun)在障(zhang)礙物時,則無(wu)法(fa)觀測路(lu)標(biao)(biao)特(te)征(zheng)導(dao)致機(ji)(ji)器人無(wu)法(fa)實現定(ding)位作業。
10、作為(wei)優選,步驟s2中,移動(dong)機器人(ren)采用最小二乘(cheng)迭代的三點定(ding)位(wei)法(fa),即(ji)選擇距離(li)移動(dong)機器人(ren)最近的3個不共線路標來輔(fu)助定(ding)位(wei)。
11、作為優選,步驟s3中(zhong),基于候(hou)選路標(biao)點隨機生成初(chu)始種群,每個個體由(you)一(yi)組路標(biao)點的坐(zuo)標(biao)組成。其中(zhong),路標(biao)數(shu)量的取值范(fan)圍(wei)從3到(dao)待測(ce)點的數(shu)量。
12、作為(wei)優選,步驟(zou)s3中,目標函(han)數(shu)分別為(wei):
13、(1)最小化路標數(shu)量(liang):
14、min?f1=nlandmark
15、其中,nlandmark為路標數量;
16、(2)最小化移動機器(qi)人全局(ju)定位誤差:
17、
18、其(qi)中,n表示可以被(bei)定位(wei)的(de)(de)點數量,ei是點i的(de)(de)定位(wei)誤差;
19、(3)最大化路標(biao)分布均(jun)勻性:
20、min?f3=-σ(dij)
21、其中,σ是標準差,dij是路標i和(he)j之間的距離。
22、作(zuo)為優選,步(bu)驟(zou)s4中(zhong),具(ju)體可(ke)分(fen)為以下步(bu)驟(zou):
23、s41,隨(sui)機生成一(yi)定數量(liang)的初始種群(qun),每(mei)個個體代表一(yi)種路(lu)標部署方案;
24、s42,基于(yu)步驟s3生(sheng)成的種群(qun)進行選(xuan)擇、交叉、變異生(sheng)成子代種群(qun);
25、s43,將子(zi)代種(zhong)群合并到(dao)步(bu)驟s3的(de)種(zhong)群中(zhong),得到(dao)合并種(zhong)群;
26、s44,對合(he)并種群進行(xing)非(fei)支(zhi)配排序,并分配到不(bu)同的前沿(yan)層(ceng)pt;
27、s45,判斷第t前(qian)沿(yan)層種(zhong)群數是否小于當前(qian)新種(zhong)群的數量,如果(guo)是,則直接放入(ru)新種(zhong)群中,得(de)到下一(yi)代(dai)種(zhong)群;否則計算擁擠(ji)度,優先選擇擁擠(ji)度大于設定(ding)值的個體放入(ru)新種(zhong)群中,得(de)到下一(yi)代(dai)種(zhong)群。
28、作為優選,基(ji)于候選路標(biao)(biao)點(dian)隨機生成初(chu)始種群,每個(ge)個(ge)體由(you)一組(zu)路標(biao)(biao)點(dian)的坐標(biao)(biao)組(zu)成。
29、作(zuo)為(wei)優(you)選(xuan),步驟s42中(zhong),nsga-ii算法通過選(xuan)擇(ze)(ze)、交叉和變異(yi)操(cao)作(zuo)優(you)化種群,使其逐(zhu)漸逼(bi)近pareto前沿。在每一代中(zhong),對(dui)新(xin)生成(cheng)的(de)個體進行優(you)先(xian)選(xuan)擇(ze)(ze)操(cao)作(zuo),確保(bao)其能滿(man)足全(quan)局定(ding)位精度的(de)約束(shu)條件。
30、作為(wei)優選,步驟s43中(zhong),評估每(mei)個個體(ti)的適應度。其(qi)中(zhong),適應度包(bao)括路標(biao)(biao)(biao)數(shu)量(liang)、全(quan)局(ju)定位誤差、路標(biao)(biao)(biao)分布均(jun)勻(yun)性和約(yue)束條件違(wei)背(bei)程度等指(zhi)標(biao)(biao)(biao)。
31、進一(yi)步的(de),步驟s43中,用約束條件(jian)違背指(zhi)標為不滿足機器人定位(wei)精度的(de)定位(wei)點個數(shu),具體(ti)表(biao)達(da)式為:
32、
33、其中,m表示定(ding)(ding)位(wei)點個數(shu),ei是點i的定(ding)(ding)位(wei)誤差,emax表示最大允許的定(ding)(ding)位(wei)誤差,1(ei>emax)表示二(er)進制函數(shu),當ei>emax時,值為1,否(fou)則為0。
34、作為(wei)優選,步驟s4中(zhong)(zhong),nsga-ii算(suan)法的優化目標(biao)為(wei)最小化路(lu)標(biao)數量、最小化全局定位誤(wu)差(cha)(cha)和路(lu)標(biao)分(fen)布均(jun)勻(yun)(yun)。其中(zhong)(zhong),最小化全局定位誤(wu)差(cha)(cha)為(wei)地(di)圖(tu)上所有點的平均(jun)定位誤(wu)差(cha)(cha);路(lu)標(biao)分(fen)布均(jun)勻(yun)(yun)通過計算(suan)路(lu)標(biao)點之間的距(ju)離標(biao)準差(cha)(cha)來衡(heng)量,標(biao)準差(cha)(cha)越小,路(lu)標(biao)分(fen)布越均(jun)勻(yun)(yun)。
35、作為優選,步驟s45中,所述的擁擠度(du)計算方法具(ju)體如下:
36、對每個目標函數值進行(xing)排序,從最(zui)小到最(zui)大(da);對排序后的(de)第(di)一(yi)個和最(zui)后一(yi)個解的(de)擁擠(ji)度(du)設為(wei)無窮大(da),表(biao)示這些(xie)解最(zui)不擁擠(ji);對于其余解的(de)擁擠(ji)度(du)公式為(wei):
37、
38、其(qi)中(zhong),擁(yong)(yong)擠度(du)(du)di是(shi)解(jie)xi的(de)擁(yong)(yong)擠度(du)(du);m是(shi)目(mu)標(biao)(biao)函(han)(han)數(shu)的(de)個(ge)(ge)數(shu);fm是(shi)第m個(ge)(ge)目(mu)標(biao)(biao)函(han)(han)數(shu);fm(xi+1)和fm(xi-1)分別是(shi)解(jie)xi在第m個(ge)(ge)目(mu)標(biao)(biao)函(han)(han)數(shu)上相鄰的(de)上一(yi)個(ge)(ge)解(jie)和下一(yi)個(ge)(ge)解(jie)的(de)目(mu)標(biao)(biao)函(han)(han)數(shu)值(zhi)(zhi)(zhi),和分別是(shi)第m個(ge)(ge)目(mu)標(biao)(biao)函(han)(han)數(shu)的(de)最大值(zhi)(zhi)(zhi)和最小(xiao)值(zhi)(zhi)(zhi)。
39、作為優(you)選,步驟s5中,對種群中的個(ge)體進行非支配排序,劃分多個(ge)pareto前沿,每個(ge)前沿包含一組不被(bei)其他個(ge)體支配的解(jie)集。
40、作(zuo)為(wei)優(you)選,步驟s5中,選擇第(di)一前(qian)沿作(zuo)為(wei)最優(you)的路(lu)標(biao)(biao)部署方案,其(qi)中第(di)一個(ge)前(qian)沿的個(ge)體(ti)在各個(ge)目標(biao)(biao)上達到最優(you)平衡。
41、作為優(you)選,步驟s5中,pareto最優(you)解(jie)是一組非(fei)支配解(jie),這(zhe)些解(jie)在(zai)各個(ge)目(mu)標上(shang)達到(dao)平衡,無法在(zai)不劣于其他目(mu)標的情況下改善某一個(ge)目(mu)標,即無法找到(dao)一個(ge)解(jie)在(zai)所有目(mu)標上(shang)都不比當(dang)前(qian)解(jie)差,且至少在(zai)一個(ge)目(mu)標上(shang)優(you)于當(dang)前(qian)解(jie)。
42、本發(fa)明還(huan)公開了一種基(ji)于非支配(pei)排序遺傳算(suan)法ii的(de)路標地圖優(you)化系統,基(ji)于上(shang)述(shu)的(de)方法,包括如下模塊(kuai):
43、地圖(tu)數(shu)據(ju)獲(huo)取模塊:獲(huo)取目標(biao)環境的地圖(tu)數(shu)據(ju),將地圖(tu)柵格化,并識別(bie)環境中障(zhang)礙物和候選路標(biao)點(dian),將障(zhang)礙物和候選路標(biao)點(dian)的坐標(biao)存儲(chu)為(wei)輸入數(shu)據(ju);
44、移(yi)動(dong)機(ji)器人定位確認模(mo)塊:確認移(yi)動(dong)機(ji)器人的(de)目標(biao)定位精度和觀測到路標(biao)的(de)最大距離(li);
45、多目(mu)標優(you)化模型(xing)(xing)建(jian)立模塊:建(jian)立面向(xiang)路標地圖分布的多目(mu)標優(you)化模型(xing)(xing);
46、pareto前沿(yan)劃分(fen)模塊(kuai):用(yong)nsga-ii算法(fa)對種群進行非支配(pei)排序來(lai)劃分(fen)pareto前沿(yan);
47、最(zui)優方案(an)選(xuan)擇(ze)模塊:選(xuan)擇(ze)pareto前沿(yan)解集作為最(zui)優的路標地圖部署方案(an)。
48、與現(xian)有技術相比,本發明具有如下技術效果:
49、路標數量(liang)最小化(hua):本發明(ming)通過多(duo)目標優化(hua)算法,在保(bao)證機器(qi)人定位精(jing)度(du)的(de)前提(ti)下,最小化(hua)所需的(de)路標數量(liang),降低路標部署成(cheng)本。
50、全局(ju)定(ding)(ding)位(wei)誤差最(zui)小化:本發(fa)明提出的(de)優化算法能夠(gou)找(zhao)到(dao)接近最(zui)優的(de)路標部署(shu)方案,使得全局(ju)定(ding)(ding)位(wei)誤差最(zui)小化,提高機器人全局(ju)定(ding)(ding)位(wei)精度。
51、路(lu)(lu)標(biao)分布均(jun)勻(yun)(yun)性:本發明采用(yong)計算路(lu)(lu)標(biao)之間距(ju)離的標(biao)準(zhun)差來衡(heng)量路(lu)(lu)標(biao)分布的均(jun)勻(yun)(yun)性,避免路(lu)(lu)標(biao)過于集中或分布不均(jun)勻(yun)(yun),從而(er)提高系統的可靠性和穩(wen)定(ding)性。