欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種運(yùn)載機(jī)器人手臂操控多點(diǎn)映射智能控制方法及系統(tǒng)與流程

文檔序號(hào):11507496閱讀:356來源:國知局
一種運(yùn)載機(jī)器人手臂操控多點(diǎn)映射智能控制方法及系統(tǒng)與流程

本發(fā)明屬于機(jī)器人控制領(lǐng)域,特別涉及一種運(yùn)載機(jī)器人手臂操控多點(diǎn)映射智能控制方法及系統(tǒng)。



背景技術(shù):

近些年來,移動(dòng)機(jī)器人被廣泛應(yīng)用于室內(nèi)運(yùn)輸,如醫(yī)院利用移動(dòng)機(jī)器人運(yùn)輸醫(yī)療設(shè)備、超市的服務(wù)型機(jī)器人、工廠制造環(huán)境下的機(jī)器人等。而機(jī)器人手臂是機(jī)器人機(jī)械系統(tǒng)的重要組成部分,也是機(jī)器人實(shí)現(xiàn)其服務(wù)功能的主要載體。

機(jī)械手臂的控制問題一直是該行業(yè)的難點(diǎn)問題。早期,大部分手臂采用pid控制,能夠?qū)崿F(xiàn)中等以下速度的跟蹤,但是在高精度、快速的場合下,傳統(tǒng)的pid控制并不能滿足其控制要求。在這種情況下,出現(xiàn)了模糊控制、神經(jīng)網(wǎng)絡(luò)控制、模糊神經(jīng)網(wǎng)絡(luò)控制、專家控制等智能控制方法。

如今神經(jīng)網(wǎng)絡(luò)廣泛應(yīng)用于機(jī)器人手臂控制:通過求解運(yùn)動(dòng)學(xué)方程來獲得訓(xùn)練樣本,利用神經(jīng)網(wǎng)絡(luò)建立手臂關(guān)節(jié)空間坐標(biāo)與笛卡爾空間坐標(biāo)的映射關(guān)系。然而通過求解運(yùn)動(dòng)學(xué)方程獲得大量樣本的方法并不實(shí)用,而且機(jī)器人手臂關(guān)節(jié)處的電機(jī)更換會(huì)使得之前構(gòu)建的神經(jīng)網(wǎng)絡(luò)需重新訓(xùn)練。因此,機(jī)器人的維護(hù)存在著極大的不便?;谏鲜鲈颍惹械匦枰环N更為智能的手臂控制方法。



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

本發(fā)明提供了一種運(yùn)載機(jī)器人手臂操控多點(diǎn)映射智能控制方法及系統(tǒng),其目的在于,克服上述現(xiàn)有技術(shù)中存在的問題,通過建立機(jī)器人基座、抓取臺(tái)之間距離與機(jī)器人手臂姿態(tài)之間的映射,避免繁瑣的運(yùn)動(dòng)學(xué)方程建立;結(jié)合抓取中關(guān)節(jié)控制值變化幅度并將關(guān)節(jié)分為三類,并且對(duì)這三類關(guān)節(jié)采用了不同的優(yōu)化算法和神經(jīng)網(wǎng)絡(luò)組合進(jìn)行訓(xùn)練和預(yù)測,提高了手臂關(guān)節(jié)的控制精度。

一種運(yùn)載機(jī)器人手臂操控多點(diǎn)映射智能控制方法,包括以下步驟:

步驟1:當(dāng)運(yùn)載機(jī)器人位于指定抓取距離區(qū)間內(nèi)的固定抓取點(diǎn)時(shí),利用遠(yuǎn)程服務(wù)器控制運(yùn)載機(jī)器人手臂進(jìn)行多次抓取訓(xùn)練,獲得運(yùn)載機(jī)器人在不同固定抓取點(diǎn)完成抓取任務(wù)的抓取樣本集;

每個(gè)抓取樣本包括運(yùn)載機(jī)器人基座所在固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離和完成抓取任務(wù)過程中所有關(guān)節(jié)的控制值矩陣,所述所有關(guān)節(jié)的控制值矩陣大小為n*m,n表示運(yùn)載機(jī)器人手臂關(guān)節(jié)個(gè)數(shù),m表示抓取過程手臂動(dòng)作次數(shù);

運(yùn)載機(jī)器人在指定抓取距離區(qū)間中某個(gè)固定點(diǎn)抓取點(diǎn)時(shí),運(yùn)載機(jī)器人基座不移動(dòng),只有手臂進(jìn)行運(yùn)動(dòng),完成抓取任務(wù);

利用遠(yuǎn)程服務(wù)器控制運(yùn)載機(jī)器人手臂進(jìn)行抓取,同時(shí)自動(dòng)記錄距離和對(duì)應(yīng)的控制值矩陣,獲取樣本的方法不同于傳統(tǒng)反求運(yùn)動(dòng)學(xué)方程的復(fù)雜方法,避免了復(fù)雜的建模和求解過程。

步驟2:依據(jù)各手臂關(guān)節(jié)控制值的變化幅度a%對(duì)抓取樣本集中進(jìn)行關(guān)節(jié)分類,獲得各類關(guān)節(jié)樣本集;

從每個(gè)抓取樣本中提取出各個(gè)關(guān)節(jié)樣本,每個(gè)關(guān)節(jié)樣本包括距離和控制值向量,所述關(guān)節(jié)樣本中的距離是指運(yùn)載機(jī)器人基座所在的固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離,所述關(guān)節(jié)樣本中的控制向量,是指運(yùn)載機(jī)器人基座位于固定抓取點(diǎn)時(shí),完成抓取任務(wù)過程中對(duì)應(yīng)的關(guān)節(jié)控制值向量,向量大小為1*m;

依據(jù)關(guān)節(jié)控制值變化幅度a%,對(duì)抓取樣本集對(duì)應(yīng)的所有關(guān)節(jié)樣本進(jìn)行分類:

若a%<20%,該類關(guān)節(jié)作為第一類關(guān)節(jié);

若20%≤a%≤50%,該類關(guān)節(jié)作為第二類關(guān)節(jié);

若a%>50%,該類關(guān)節(jié)作為第三類關(guān)節(jié);

每個(gè)關(guān)節(jié)樣本的關(guān)節(jié)控制值變化幅度a%是指每個(gè)關(guān)節(jié)在一次抓取過程所有動(dòng)作中的最大控制值和最小控制值之差與對(duì)應(yīng)關(guān)節(jié)的控制量程之比;

n組關(guān)節(jié)樣本被劃分成三類;

步驟3:利用步驟2得到的關(guān)節(jié)樣本集構(gòu)建運(yùn)載機(jī)器人手臂關(guān)節(jié)控制值的預(yù)測模型;

依次各類關(guān)節(jié)樣本集中的每個(gè)關(guān)節(jié)樣本的距離和控制值向量分別作為訓(xùn)練模型的輸入數(shù)據(jù)和輸出數(shù)據(jù)進(jìn)行訓(xùn)練,構(gòu)建預(yù)測模型,包括第一類關(guān)節(jié)預(yù)測模型、第二類關(guān)節(jié)預(yù)測模型以及第三類關(guān)節(jié)預(yù)測模型;

其中,第一類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為基于elman神經(jīng)網(wǎng)絡(luò)模型;

第二類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為多核支持向量機(jī)mksvm模型;

第三類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為小波神經(jīng)網(wǎng)絡(luò)模型;

運(yùn)用多種優(yōu)化算法和神經(jīng)網(wǎng)絡(luò)的組合對(duì)手臂的抓取進(jìn)行控制,針對(duì)不同關(guān)節(jié)選擇精度更加高的組合進(jìn)行預(yù)測,提高了系統(tǒng)的穩(wěn)定性;

步驟4:利用運(yùn)載機(jī)器人基座所在固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離作為三類關(guān)節(jié)預(yù)測模型的輸入值,分別得到各個(gè)關(guān)節(jié)的控制值,輸出運(yùn)載機(jī)器人手臂所有關(guān)節(jié)的控制值,完成抓取任務(wù)控制。

進(jìn)一步的,所述第一類關(guān)節(jié)預(yù)測模型以第一類關(guān)節(jié)樣本集中各關(guān)節(jié)樣本的距離和控制值向量分別作為elman神經(jīng)網(wǎng)絡(luò)模型的輸入數(shù)據(jù)和輸出數(shù)據(jù)進(jìn)行訓(xùn)練后,獲得的基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型;

所述基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型輸入層節(jié)點(diǎn)個(gè)數(shù)為2,隱含層個(gè)數(shù)為5,輸出層節(jié)點(diǎn)個(gè)數(shù)為2,承接層節(jié)點(diǎn)個(gè)數(shù)為5;隱含層函數(shù)采用tansig函數(shù),輸出層神經(jīng)元的傳遞函數(shù)采用logsig函數(shù);訓(xùn)練過程中的最大迭代次數(shù)設(shè)置為100,訓(xùn)練學(xué)習(xí)率為0.1,閾值為0.001;

所述基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型的權(quán)值和閾值采用自適應(yīng)慣性權(quán)重磷蝦群算法akh尋優(yōu)獲得。

進(jìn)一步的,所述基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型的權(quán)值和閾值采用自適應(yīng)慣性權(quán)重磷蝦群算法akh尋優(yōu)獲得的過程如下:

步驟3.1:以磷蝦個(gè)體位置作為基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型的權(quán)值和閾值,隨機(jī)初始化磷蝦種群并設(shè)置磷蝦種群參數(shù);

磷蝦種群包含多個(gè)磷蝦個(gè)體;

磷蝦種群規(guī)模的取值范圍為[20,200],誘導(dǎo)慣性權(quán)重wn的取值范圍為[0.5,0.7],覓食慣性權(quán)重wf的取值范圍為[0.5,0.7],最大誘導(dǎo)速度的取值范圍為[0.02,0.08],最大覓食速度的取值范圍為[0.02,0.08],最大擴(kuò)散速度的取值范圍為[0.002,0.01],步長縮放因子的取值范圍為[0.1,0.5],最大迭代次數(shù)t的取值范圍為[200,1000],搜索精度的取值范圍為[0.001,0.1];步驟3.2:設(shè)定適應(yīng)度函數(shù),并確定初始最優(yōu)磷蝦個(gè)體位置和迭代次數(shù)t,t=1;

將磷蝦個(gè)體位置對(duì)應(yīng)的權(quán)值和閾值代入基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型中,并利用磷蝦位置確定的基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型計(jì)算第一類關(guān)節(jié)樣本集中每個(gè)關(guān)節(jié)樣本的關(guān)節(jié)控制預(yù)測值,將所有關(guān)節(jié)樣本的關(guān)節(jié)控制預(yù)測值和實(shí)際值的均方差mse的倒數(shù)作為第一適應(yīng)度函數(shù)f1(x);

利用第一適應(yīng)度函數(shù)計(jì)算每個(gè)磷蝦個(gè)體位置的適應(yīng)度,以最大適應(yīng)度對(duì)應(yīng)的磷蝦個(gè)體位置作為初始最優(yōu)磷蝦個(gè)體位置

步驟3.3:利用每個(gè)磷蝦個(gè)體的當(dāng)前的誘導(dǎo)速度、覓食速度以及擴(kuò)散速度,更新每個(gè)磷蝦個(gè)體的運(yùn)動(dòng)速度和位置;

步驟3.4:對(duì)每個(gè)更新后的磷蝦個(gè)體位置進(jìn)行基于遺傳算法的交叉操作,交叉因子的取值范圍為[0.3,0.5];

進(jìn)行交叉操作,以增加種群的多樣性;

步驟3.5:計(jì)算當(dāng)前磷蝦種群中每個(gè)磷蝦個(gè)體位置的適應(yīng)度,以當(dāng)前磷蝦種群中最大適應(yīng)度對(duì)應(yīng)的磷蝦個(gè)體位置作為當(dāng)前最優(yōu)磷蝦個(gè)體位置

步驟3.6:依據(jù)當(dāng)前最優(yōu)磷蝦個(gè)體的適應(yīng)度值和前一次迭代過程中的最優(yōu)磷蝦個(gè)體的適應(yīng)度值按照以下公式,對(duì)磷蝦個(gè)體的慣性權(quán)重進(jìn)行動(dòng)態(tài)調(diào)整,并更新磷蝦個(gè)體的誘導(dǎo)速度和覓食速度:

其中,所述磷蝦個(gè)體的慣性權(quán)重包括誘導(dǎo)速度慣性權(quán)重和覓食速度慣性權(quán)重,wn和wf分別表示初始化的誘導(dǎo)速度慣性權(quán)重和覓食速度慣性權(quán)重,分別表示在第t次迭代后,磷蝦個(gè)體的誘導(dǎo)速度慣性權(quán)重和覓食速度慣性權(quán)重;

步驟3.7:判斷是否滿足達(dá)到搜索精度或者最大迭代次數(shù),若不滿足,則令t=t+1,返回步驟3.3,否則,輸出當(dāng)前最優(yōu)的磷蝦個(gè)體位置,得到基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型的最優(yōu)權(quán)值和閾值;

所述達(dá)到搜索精度是指當(dāng)前最優(yōu)磷蝦個(gè)體的適應(yīng)度值和前一次迭代過程中的最優(yōu)磷蝦個(gè)體的適應(yīng)度值之差小于設(shè)定的搜索精度。

進(jìn)一步的,所述第二類關(guān)節(jié)預(yù)測模型以第二類關(guān)節(jié)樣本集中各關(guān)節(jié)樣本的距離和控制值向量分別作為多核支持向量機(jī)mksvm模型的輸入數(shù)據(jù)和輸出數(shù)據(jù)進(jìn)行訓(xùn)練后,獲得的基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型;

所述基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型的核函數(shù)為高斯函數(shù),參數(shù)c、g和d采用改進(jìn)狼群算法尋優(yōu)獲得。

進(jìn)一步的,所述基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型的參數(shù)c、g和d采用改進(jìn)狼群算法尋優(yōu)獲得的過程如下:

步驟5.1:以個(gè)體狼的位置作為基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型的參數(shù)c、g和d,初始化狼群并設(shè)置狼群參數(shù);

狼群包含多只個(gè)體狼;

狼群規(guī)模的取值范圍為[20,200],狼的視覺半徑的取值范圍[1,5],可記憶步數(shù)為1,逃跑概率的取值范圍為[0.02,0.08],最大搜索精度的取值范圍為[0.005,0.1],最大迭代次數(shù)的取值范圍[500,1000];

步驟5.2:設(shè)定適應(yīng)度函數(shù),并確定初始最優(yōu)頭狼位置和迭代次數(shù)t,t=1;

將個(gè)體狼位置對(duì)應(yīng)的參數(shù)c、g和d代入基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型中,并利用個(gè)體狼位置確定的基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型計(jì)算第二類關(guān)節(jié)樣本集中每個(gè)關(guān)節(jié)樣本的關(guān)節(jié)控制預(yù)測值,將所有關(guān)節(jié)樣本的控制預(yù)測值和實(shí)際值的均方差mse的倒數(shù)作為第二適應(yīng)度函數(shù)f2(x);

利用第二適應(yīng)度函數(shù)計(jì)算每匹個(gè)體狼位置的適應(yīng)度,以最大適應(yīng)度對(duì)應(yīng)的個(gè)體狼位置作為初始最優(yōu)頭狼位置;

步驟5.3:尋找每匹個(gè)體狼的第一次更新位置,以第一次更新位置更新個(gè)體狼位置,并以所有個(gè)體狼的第一次更新位置,更新狼群最優(yōu)頭狼位置,j=1,j表示個(gè)體狼位置更新次數(shù);

按照公式(1)計(jì)算每匹個(gè)體狼的第一次更新位置x1(t),并判斷計(jì)算得到的第一次更新位置是否為從未達(dá)到過的新位置,若到達(dá)過,則重復(fù)步驟5.3直到重新獲得第一次更新位置,若未到達(dá)過,則利用個(gè)體狼的第一個(gè)更新位置計(jì)算得適應(yīng)度;

xj(t)=xj-1(t)+β(r)(p(t)-xj-1(t))+rand()(1)

其中,xj-1(t)和xj(t)表示個(gè)體狼在第t次迭代過程中的第j-1次更新位置和第j次更新位置,x0(t)表示個(gè)體狼在第t次迭代過程中迭代操作開始前的初始位置;β(r)為中間計(jì)算量,t和gen分別表示當(dāng)前迭代次數(shù)和最大迭代次數(shù),w為大于2的常數(shù),β0為最大激勵(lì)因子,取正數(shù),r表示當(dāng)前個(gè)體狼位置x0(t)的視野范圍內(nèi)適應(yīng)度最好的同伴個(gè)體狼位置的適應(yīng)度f2(p(t))與當(dāng)前個(gè)體狼位置的適應(yīng)度f2(x0(t))之差的絕對(duì)值,r=|f2(p(t)-f2(x0(t))|;rand()為[0,1]中的一個(gè)隨機(jī)數(shù);

更新個(gè)體狼最優(yōu)位置是指個(gè)體狼最新的位置的適應(yīng)度優(yōu)于個(gè)體狼當(dāng)前個(gè)體最優(yōu)位置的適應(yīng)度,則以最新的位置作為個(gè)體最優(yōu)位置;

更新狼群頭狼最優(yōu)位置是指狼群中某匹狼最新的位置的適應(yīng)度優(yōu)于當(dāng)前狼群最優(yōu)頭狼位置的適應(yīng)度,則以最新的位置作為狼群最優(yōu)頭狼位置;

步驟5.4:判斷每個(gè)個(gè)體狼的第一次更新位置是否滿足以下條件,進(jìn)行第二次位置更新,更新個(gè)體狼最優(yōu)位置,j=2:

第一次更新位置在其視野范圍內(nèi)且第一次更新位置的適應(yīng)度優(yōu)于其初始位置的適應(yīng)度;

若滿足,則令個(gè)體狼按照公式(1)尋找第二次更新位置x2(t),當(dāng)?shù)诙胃挛恢玫倪m應(yīng)度優(yōu)于當(dāng)前個(gè)體狼最優(yōu)位置的適應(yīng)度,利用第二次更新位置作為個(gè)體狼最優(yōu)位置,進(jìn)入步驟5.5獲取第三次更新位置;

若不滿足,則第二次更新位置與第一次更新位置相同,個(gè)體狼位置不變,并轉(zhuǎn)到步驟5.6,獲取第三次更新位置;

步驟5.5:按公式(2)尋找滿足步驟5.4中所述條件的個(gè)體狼在其視野范圍內(nèi)的第三次更新位置,更新個(gè)體狼最優(yōu)位置和狼群頭狼最優(yōu)位置,j=3,進(jìn)入步驟5.7;

x3(t)=x2(t)+rand().v.(gbest-x2(t))(2)

其中:x2(t)、x3(t)表示個(gè)體狼在第t次迭代過程中的第二次更新位置和第三次更新位置;gbest為狼群當(dāng)前最優(yōu)頭狼位置;v為狼的視覺半徑;rand()為[-1,1]中的一個(gè)隨機(jī)數(shù);

步驟5.6:按照公式(3)尋找不滿足步驟5.4中所述條件的個(gè)體狼的第三次更新位置x3(t),更新狼群頭狼最優(yōu)位置,j=3,進(jìn)入步驟5.7;

x3(t)=x2(t)+escape().s.(xc(t)-x2(t))(3)

其中,xc(t)表示第t次迭代過程中,所有個(gè)體狼進(jìn)行第二次更新后,狼群的質(zhì)心位置;s為狼的移動(dòng)步長,s≤v;escape()為隨機(jī)函數(shù);

步驟5.7依適應(yīng)度值將經(jīng)過三次更新后的所有個(gè)體狼從低到高進(jìn)行排序;

步驟5.8將排在前面的n+1個(gè)個(gè)體狼按非線性單純法nm方法搜索每個(gè)個(gè)體的最優(yōu)位置,其余的個(gè)體重復(fù)步驟5.4-步驟5.6搜索每個(gè)個(gè)體狼最優(yōu)位置,得到最優(yōu)狼群;從最優(yōu)狼群中選取全局最優(yōu)頭狼位置;

其中,n為隨機(jī)正整數(shù);

步驟5.9判斷是否達(dá)到最大迭代次數(shù)或者達(dá)到最大搜索精度,若達(dá)到,則輸出全局最優(yōu)頭狼位置對(duì)應(yīng)的基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型的參數(shù)c、g和d;否則,令t+1,轉(zhuǎn)到步驟5.3,進(jìn)行下一次迭代。

進(jìn)一步的,所述第三類關(guān)節(jié)預(yù)測模型以第三類關(guān)節(jié)樣本集中各關(guān)節(jié)樣本的距離和控制值向量分別作為小波神經(jīng)網(wǎng)絡(luò)模型的輸入數(shù)據(jù)和輸出數(shù)據(jù)進(jìn)行訓(xùn)練后,獲得的基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型;

所述基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型的輸入層節(jié)點(diǎn)個(gè)數(shù)為2,隱含層小波元個(gè)數(shù)為4,輸出層節(jié)點(diǎn)個(gè)數(shù)為4,隱層小波神經(jīng)元采用mexicanhat小波函數(shù),輸出層節(jié)點(diǎn)采用sigmoid函數(shù);訓(xùn)練過程中的最大迭代次數(shù)設(shè)置為1000,訓(xùn)練學(xué)習(xí)率為0.1,閾值為0.00004;

所述基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型的權(quán)值、閾值和伸縮平移系數(shù)采用混沌蝙蝠算法尋優(yōu)獲得。

進(jìn)一步的,所述基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型的權(quán)值、閾值和伸縮平移系數(shù)采用混沌蝙蝠算法尋優(yōu)獲得的過程如下:

步驟7.1:以蝙蝠個(gè)體位置作為基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型的權(quán)值、閾值和伸縮平移系數(shù),初始化蝙蝠種群,并設(shè)置蝙蝠種群參數(shù);

蝙蝠種群規(guī)模的取值范圍為[200,500],蝙蝠個(gè)體最大脈沖頻度r0的取值范圍為[0.25,0.5],最大脈沖聲音強(qiáng)度a0的取值范圍為[0.25,0.5],最大迭代次數(shù)的取值范圍為[150,300],搜索精度的取值范圍為[0.001,0.1],脈沖頻率的取值范圍為[0,1.5],蝙蝠搜索頻度增加系數(shù)的取值范圍為[0.02,0.08],聲音強(qiáng)度衰減系數(shù)的取值范圍為[0.8,0.96],最大迭代次數(shù)的取值范圍為[100,500],最大搜索精度的取值范圍為[0.01,0.1];

步驟7.2:設(shè)定適應(yīng)度函數(shù),并確定初始最優(yōu)蝙蝠個(gè)體位置和迭代次數(shù)t,t=1;

將蝙蝠個(gè)體位置對(duì)應(yīng)的權(quán)值、閾值和伸縮平移系數(shù)代入基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型中,并利用蝙蝠個(gè)體位置確定的基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型計(jì)算第二類關(guān)節(jié)樣本集中每個(gè)關(guān)節(jié)樣本的關(guān)節(jié)控制預(yù)測值,將所有關(guān)節(jié)樣本的控制預(yù)測值和實(shí)際值的差值e構(gòu)建第三適應(yīng)度函數(shù)f3(x),f3(x)=1/(e+1);

利用第三適應(yīng)度函數(shù)計(jì)算每只蝙蝠個(gè)體位置的適應(yīng)度,以最大適應(yīng)度對(duì)應(yīng)的蝙蝠個(gè)體位置作為初始最優(yōu)蝙蝠個(gè)體位置;

步驟7.3:利用設(shè)定的脈沖頻率對(duì)蝙蝠個(gè)體的速度以及位置進(jìn)行更新;

步驟7.4:若rand1>ri,則對(duì)處于個(gè)體最優(yōu)位置的蝙蝠進(jìn)行隨機(jī)擾動(dòng),生成蝙蝠個(gè)體的擾動(dòng)位置;

其中,rand1為在[0,1]上均勻分布的隨機(jī)數(shù),ri為第i只蝙蝠的脈沖頻度;

步驟7.5:若rand2>ai,蝙蝠個(gè)體的擾動(dòng)位置的適應(yīng)度優(yōu)于擾動(dòng)前的蝙蝠個(gè)體位置的適應(yīng)度,則將蝙蝠個(gè)體移動(dòng)到擾動(dòng)位置,否則保持原位;

其中,rand2為在[0,1]上均勻分布的隨機(jī)數(shù),ai為第i只蝙蝠的聲音強(qiáng)度;

步驟7.6:如果步驟7.5條件得到滿足,則利用蝙蝠搜索頻度增加系數(shù)和聲音強(qiáng)度衰減系數(shù)更新蝙蝠個(gè)體的脈沖頻度和脈沖脈沖聲音強(qiáng)度,并跳轉(zhuǎn)步驟7.1,否則跳轉(zhuǎn)到步驟7.7;

步驟7.7:計(jì)算當(dāng)前蝙蝠種群中每個(gè)蝙蝠個(gè)體位置的適應(yīng)度,按照由大到小的順序選出前m%個(gè)蝙蝠個(gè)體進(jìn)行位置和速度的混沌優(yōu)化,得到更新后的前m%個(gè)蝙蝠個(gè)體,m的取值范圍為[5,20];

混沌優(yōu)化使種群個(gè)體多樣性增加,跳出局部最優(yōu)繼續(xù)迭代搜索;

步驟7.8:判斷是否達(dá)到最大迭代次數(shù)或者達(dá)到最大搜索精度,若是,則從更新后的前m%個(gè)蝙蝠個(gè)體中依據(jù)適應(yīng)度值選出全局最優(yōu)蝙蝠個(gè)體,輸出全局最優(yōu)蝙蝠個(gè)體對(duì)應(yīng)的基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型的最佳權(quán)值、閾值和伸縮平移系數(shù),否則,令t=t+1,轉(zhuǎn)到步驟7.3繼續(xù)下一次迭代。

一種運(yùn)載機(jī)器人手臂操控多點(diǎn)映射智能控制系統(tǒng),采用上述的方法對(duì)運(yùn)載機(jī)器人手臂進(jìn)行控制,包括:

抓取樣本集獲取單元,通過運(yùn)載機(jī)器人位于指定抓取距離區(qū)間內(nèi)的固定抓取點(diǎn)時(shí),利用遠(yuǎn)程服務(wù)器控制運(yùn)載機(jī)器人手臂進(jìn)行多次抓取訓(xùn)練,獲得運(yùn)載機(jī)器人在不同固定抓取點(diǎn)完成抓取任務(wù)的多個(gè)抓取樣本;

每個(gè)抓取樣本包括運(yùn)載機(jī)器人基座所在固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離和完成抓取任務(wù)過程中所有關(guān)節(jié)的控制值矩陣,所述所有關(guān)節(jié)的控制值矩陣大小為n*m,n表示運(yùn)載機(jī)器人手臂關(guān)節(jié)個(gè)數(shù),m表示抓取過程手臂動(dòng)作次數(shù);

三類關(guān)節(jié)樣本集分類單元,依據(jù)各手臂關(guān)節(jié)控制值的變化幅度a%對(duì)抓取樣本集中進(jìn)行關(guān)節(jié)分類,獲得各類關(guān)節(jié)樣本集;

從每個(gè)抓取樣本中提取出各個(gè)關(guān)節(jié)樣本,每個(gè)關(guān)節(jié)樣本包括距離和控制值向量,所述關(guān)節(jié)樣本中的距離是指運(yùn)載機(jī)器人基座所在的固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離,所述關(guān)節(jié)樣本中的控制向量,是指運(yùn)載機(jī)器人基座位于固定抓取點(diǎn)時(shí),完成抓取任務(wù)過程中對(duì)應(yīng)的關(guān)節(jié)控制值向量,向量大小為1*m;

依據(jù)關(guān)節(jié)控制值變化幅度a%,對(duì)抓取樣本集對(duì)應(yīng)的所有關(guān)節(jié)樣本進(jìn)行分類:

若a%<20%,該類關(guān)節(jié)作為第一類關(guān)節(jié);

若20%≤a%≤50%,該類關(guān)節(jié)作為第二類關(guān)節(jié);

若a%>50%,該類關(guān)節(jié)作為第三類關(guān)節(jié)

每個(gè)關(guān)節(jié)樣本的關(guān)節(jié)控制值變化幅度a%是指每個(gè)關(guān)節(jié)在一次抓取過程所有動(dòng)作中的最大控制值和最小控制值之差與對(duì)應(yīng)關(guān)節(jié)的控制量程之比;

手臂關(guān)節(jié)控制值預(yù)測模型構(gòu)建單元,利用三類關(guān)節(jié)樣本集分類單元得到的各類關(guān)節(jié)樣本集分別輸入訓(xùn)練模型進(jìn)行訓(xùn)練,構(gòu)建運(yùn)載機(jī)器人手臂關(guān)節(jié)控制值的預(yù)測模型;

所述訓(xùn)練過程是指將各類關(guān)節(jié)樣本集中的每個(gè)關(guān)節(jié)樣本的距離和控制值向量分別作為訓(xùn)練模型的輸入數(shù)據(jù)和輸出數(shù)據(jù)進(jìn)行訓(xùn)練,得到預(yù)測模型;

所述手臂關(guān)節(jié)控制值預(yù)測模型包括第一類關(guān)節(jié)預(yù)測模型、第二類關(guān)節(jié)預(yù)測模型以及第三類關(guān)節(jié)預(yù)測模型;

其中,第一類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為基于elman神經(jīng)網(wǎng)絡(luò)模型;

第二類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為多核支持向量機(jī)mksvm模型;

第三類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為小波神經(jīng)網(wǎng)絡(luò)模型;

控制單元,利用運(yùn)載機(jī)器人基座所在固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離作為三類關(guān)節(jié)預(yù)測模型的輸入值,分別得到各個(gè)關(guān)節(jié)的控制值,輸出運(yùn)載機(jī)器人手臂所有關(guān)節(jié)的控制值,進(jìn)行抓取任務(wù)控制。

進(jìn)一步地,所述指定區(qū)域設(shè)置為運(yùn)載機(jī)器人基座與抓取臺(tái)底部邊緣距離18-28cm的直線區(qū)域內(nèi)。

進(jìn)一步地,所述運(yùn)載機(jī)器人基座與抓取臺(tái)底部邊緣距離采用運(yùn)載機(jī)器人自帶的超聲波傳感器進(jìn)行測量,且所述超聲波傳感器位于運(yùn)載機(jī)器人基座的兩側(cè),對(duì)稱設(shè)置。

運(yùn)載機(jī)器人基座的超聲波傳感器是一般用作避障,本發(fā)明不需要在運(yùn)載機(jī)器人身上增加任何距離測量裝置,擴(kuò)展了自帶的超聲波傳感器用途。

有益效果

1、運(yùn)用該控制方法,建立了機(jī)器人基座、抓取臺(tái)之間距離與機(jī)器人手臂姿態(tài)之間的映射,而不需要建立復(fù)雜的運(yùn)動(dòng)學(xué)方程。同時(shí),手臂關(guān)節(jié)處電機(jī)的更換不會(huì)造成神經(jīng)網(wǎng)絡(luò)訓(xùn)練的失效,方便了機(jī)器人的維護(hù)。

2、獲取樣本的方法更加便捷。利用遠(yuǎn)程服務(wù)器控制機(jī)器人手臂進(jìn)行抓取,記錄下距離和對(duì)應(yīng)的關(guān)節(jié)控制值,避免了求解動(dòng)力學(xué)方程。

3、操控精度高,控制靈活。根據(jù)樣本記錄的關(guān)節(jié)控制值,分析各個(gè)關(guān)節(jié)在抓取中的變化幅度,將關(guān)節(jié)分為三類,并且對(duì)這三類關(guān)節(jié)采用了不同的優(yōu)化算法和神經(jīng)網(wǎng)絡(luò)組合進(jìn)行訓(xùn)練和預(yù)測。

4.機(jī)器人基座的超聲波傳感器一般用作避障,本發(fā)明所述方案避開了常規(guī)思考,結(jié)合應(yīng)用需求,不需要在機(jī)器人身上增加任何裝置,將自帶的超聲波傳感器開發(fā)出一種新的用途。

附圖說明

圖1為運(yùn)載機(jī)器人抓取過程示意圖;

圖2為elman神經(jīng)網(wǎng)絡(luò)模型

圖3為小波神經(jīng)網(wǎng)絡(luò)模型

圖4為本發(fā)明所述方法的機(jī)器人手臂抓取控制流程圖

具體實(shí)施方式

下面將結(jié)合附圖和實(shí)施例對(duì)本發(fā)明做進(jìn)一步的說明。

運(yùn)載機(jī)器人抓取過程示意圖如圖1所示;機(jī)器人手臂抓取控制流程圖如圖4所示。

一種運(yùn)載機(jī)器人手臂操控多點(diǎn)映射智能控制方法,包括以下步驟:

步驟1:當(dāng)運(yùn)載機(jī)器人位于指定抓取距離區(qū)間內(nèi)的固定抓取點(diǎn)時(shí),利用遠(yuǎn)程服務(wù)器控制運(yùn)載機(jī)器人手臂進(jìn)行多次抓取訓(xùn)練,獲得包含50組運(yùn)載機(jī)器人在不同固定抓取點(diǎn)完成抓取任務(wù)的抓取樣本的樣本集;

每個(gè)抓取樣本包括運(yùn)載機(jī)器人基座所在固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離和完成抓取任務(wù)過程中所有關(guān)節(jié)的控制值矩陣,所述所有關(guān)節(jié)的控制值矩陣大小為8*10,8表示運(yùn)載機(jī)器人手臂關(guān)節(jié)個(gè)數(shù),10表示抓取過程手臂動(dòng)作次數(shù);

步驟2:依據(jù)各手臂關(guān)節(jié)控制值的變化幅度a%對(duì)抓取樣本集中進(jìn)行關(guān)節(jié)分類,獲得各類關(guān)節(jié)樣本集;

從每個(gè)抓取樣本中提取出各個(gè)關(guān)節(jié)樣本,每個(gè)關(guān)節(jié)樣本包括距離和控制值向量,所述關(guān)節(jié)樣本中的距離是指運(yùn)載機(jī)器人基座所在的固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離,所述關(guān)節(jié)樣本中的控制向量,是指運(yùn)載機(jī)器人基座位于固定抓取點(diǎn)時(shí),完成抓取任務(wù)過程中對(duì)應(yīng)的關(guān)節(jié)控制值向量,向量大小為1*10;

依據(jù)關(guān)節(jié)控制值變化幅度a%,對(duì)抓取樣本集對(duì)應(yīng)的所有關(guān)節(jié)樣本進(jìn)行分類:

若a%<20%,該類關(guān)節(jié)作為第一類關(guān)節(jié);

若20%≤a%≤50%,該類關(guān)節(jié)作為第二類關(guān)節(jié);

若a%>50%,該類關(guān)節(jié)作為第三類關(guān)節(jié);

每個(gè)關(guān)節(jié)樣本的關(guān)節(jié)控制值變化幅度a%是指每個(gè)關(guān)節(jié)在一次抓取過程所有動(dòng)作中的最大控制值和最小控制值之差與對(duì)應(yīng)關(guān)節(jié)的控制量程之比;

步驟3:利用步驟2得到的50組關(guān)節(jié)樣本集構(gòu)建運(yùn)載機(jī)器人手臂關(guān)節(jié)控制值的預(yù)測模型;

依次各類關(guān)節(jié)樣本集中的每個(gè)關(guān)節(jié)樣本的距離和控制值向量分別作為訓(xùn)練模型的輸入數(shù)據(jù)和輸出數(shù)據(jù)進(jìn)行訓(xùn)練,構(gòu)建預(yù)測模型,包括第一類關(guān)節(jié)預(yù)測模型、第二類關(guān)節(jié)預(yù)測模型以及第三類關(guān)節(jié)預(yù)測模型;

其中,第一類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為基于elman神經(jīng)網(wǎng)絡(luò)模型;

圖2所示,第一類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為基于elman神經(jīng)網(wǎng)絡(luò)模型;

第一類關(guān)節(jié)預(yù)測模型以第一類關(guān)節(jié)樣本集中各關(guān)節(jié)樣本的距離和控制值向量分別作為elman神經(jīng)網(wǎng)絡(luò)模型的輸入數(shù)據(jù)和輸出數(shù)據(jù)進(jìn)行訓(xùn)練后,獲得的基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型;

所述基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型輸入層節(jié)點(diǎn)個(gè)數(shù)為2,隱含層個(gè)數(shù)為5,輸出層節(jié)點(diǎn)個(gè)數(shù)為2,承接層節(jié)點(diǎn)個(gè)數(shù)為5;隱含層函數(shù)采用tansig函數(shù),輸出層神經(jīng)元的傳遞函數(shù)采用logsig函數(shù);訓(xùn)練過程中的最大迭代次數(shù)設(shè)置為100,訓(xùn)練學(xué)習(xí)率為0.1,閾值為0.001;

基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型的權(quán)值和閾值采用自適應(yīng)慣性權(quán)重磷蝦群算法akh尋優(yōu)獲得。

所述基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型的權(quán)值和閾值采用自適應(yīng)慣性權(quán)重磷蝦群算法akh尋優(yōu)獲得的過程如下:

步驟3.1:以磷蝦個(gè)體位置作為基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型的權(quán)值和閾值,隨機(jī)初始化磷蝦種群并設(shè)置磷蝦種群參數(shù);

磷蝦種群規(guī)模的取值范圍為[20,200],誘導(dǎo)慣性權(quán)重wn的取值范圍為[0.5,0.7],覓食慣性權(quán)重wf的取值范圍為[0.5,0.7],最大誘導(dǎo)速度的取值范圍為[0.02,0.08],最大覓食速度的取值范圍為[0.02,0.08],最大擴(kuò)散速度的取值范圍為[0.002,0.01],步長縮放因子的取值范圍為[0.1,0.5],最大迭代次數(shù)t的取值范圍為[200,1000],搜索精度的取值范圍為[0.001,0.1];

步驟3.2:設(shè)定適應(yīng)度函數(shù),并確定初始最優(yōu)磷蝦個(gè)體位置和迭代次數(shù)t,t=1;

將磷蝦個(gè)體位置對(duì)應(yīng)的權(quán)值和閾值代入基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型中,并利用磷蝦位置確定的基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型計(jì)算第一類關(guān)節(jié)樣本集中每個(gè)關(guān)節(jié)樣本的關(guān)節(jié)控制預(yù)測值,將所有關(guān)節(jié)樣本的關(guān)節(jié)控制預(yù)測值和實(shí)際值的均方差mse的倒數(shù)作為第一適應(yīng)度函數(shù)f1(x);

利用第一適應(yīng)度函數(shù)計(jì)算每個(gè)磷蝦個(gè)體位置的適應(yīng)度,以最大適應(yīng)度對(duì)應(yīng)的磷蝦個(gè)體位置作為初始最優(yōu)磷蝦個(gè)體位置

步驟3.3:利用每個(gè)磷蝦個(gè)體的當(dāng)前的誘導(dǎo)速度、覓食速度以及擴(kuò)散速度,更新每個(gè)磷蝦個(gè)體的運(yùn)動(dòng)速度和位置;

步驟3.4:對(duì)每個(gè)更新后的磷蝦個(gè)體位置進(jìn)行基于遺傳算法的交叉操作,交叉因子的取值范圍為[0.3,0.5];

步驟3.5:計(jì)算當(dāng)前磷蝦種群中每個(gè)磷蝦個(gè)體位置的適應(yīng)度,以當(dāng)前磷蝦種群中最大適應(yīng)度對(duì)應(yīng)的磷蝦個(gè)體位置作為當(dāng)前最優(yōu)磷蝦個(gè)體位置

步驟3.6:依據(jù)當(dāng)前最優(yōu)磷蝦個(gè)體的適應(yīng)度值和前一次迭代過程中的最優(yōu)磷蝦個(gè)體的適應(yīng)度值按照以下公式,對(duì)磷蝦個(gè)體的慣性權(quán)重進(jìn)行動(dòng)態(tài)調(diào)整,并更新磷蝦個(gè)體的誘導(dǎo)速度和覓食速度:

其中,所述磷蝦個(gè)體的慣性權(quán)重包括誘導(dǎo)速度慣性權(quán)重和覓食速度慣性權(quán)重,wn和wf分別表示初始化的誘導(dǎo)速度慣性權(quán)重和覓食速度慣性權(quán)重,分別表示在第t次迭代后,磷蝦個(gè)體的誘導(dǎo)速度慣性權(quán)重和覓食速度慣性權(quán)重;

步驟3.7:判斷是否滿足達(dá)到搜索精度或者最大迭代次數(shù),若不滿足,則令t=t+1,返回步步驟3否則,輸出當(dāng)前最優(yōu)的磷蝦個(gè)體位置,得到基于elman神經(jīng)網(wǎng)絡(luò)的第一類關(guān)節(jié)控制預(yù)測模型的最優(yōu)權(quán)值和閾值;

所述達(dá)到搜索精度是指當(dāng)前最優(yōu)磷蝦個(gè)體的適應(yīng)度值和前一次迭代過程中的最優(yōu)磷蝦個(gè)體的適應(yīng)度值之差小于設(shè)定的搜索精度。

第二類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為多核支持向量機(jī)mksvm模型;

所述第二類關(guān)節(jié)預(yù)測模型以第二類關(guān)節(jié)樣本集中各關(guān)節(jié)樣本的距離和控制值向量分別作為多核支持向量機(jī)mksvm模型的輸入數(shù)據(jù)和輸出數(shù)據(jù)進(jìn)行訓(xùn)練后,獲得的基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型;

所述基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型的核函數(shù)為高斯函數(shù),參數(shù)c、g和d采用改進(jìn)狼群算法尋優(yōu)獲得。

所述基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型的參數(shù)c、g和d采用改進(jìn)狼群算法尋優(yōu)獲得的過程如下:

步驟5.1:以個(gè)體狼的位置作為基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型的參數(shù)c、g和d,初始化狼群并設(shè)置狼群參數(shù);

狼群規(guī)模的取值范圍為[20,200],狼的視覺半徑的取值范圍[1,5],可記憶步數(shù)為1,逃跑概率的取值范圍為[0.02,0.08],最大搜索精度的取值范圍為[0.005,0.1],最大迭代次數(shù)的取值范圍[500,1000];

步驟5.2:設(shè)定適應(yīng)度函數(shù),并確定初始最優(yōu)頭狼位置和迭代次數(shù)t,t=1;

將個(gè)體狼位置對(duì)應(yīng)的參數(shù)c、g和d代入基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型中,并利用個(gè)體狼位置確定的基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型計(jì)算第二類關(guān)節(jié)樣本集中每個(gè)關(guān)節(jié)樣本的關(guān)節(jié)控制預(yù)測值,將所有關(guān)節(jié)樣本的控制預(yù)測值和實(shí)際值的均方差mse的倒數(shù)作為第二適應(yīng)度函數(shù)f2(x);

利用第二適應(yīng)度函數(shù)計(jì)算每匹個(gè)體狼位置的適應(yīng)度,以最大適應(yīng)度對(duì)應(yīng)的個(gè)體狼位置作為初始最優(yōu)頭狼位置;

步驟5.3:尋找每匹個(gè)體狼的第一次更新位置,以第一次更新位置更新個(gè)體狼位置,并以所有個(gè)體狼的第一次更新位置,更新狼群最優(yōu)頭狼位置,j=1,j表示個(gè)體狼位置更新次數(shù);

按照公式(1)計(jì)算每匹個(gè)體狼的第一次更新位置x1(t),并判斷計(jì)算得到的第一次更新位置是否為從未達(dá)到過的新位置,若到達(dá)過,則重復(fù)步驟5.3直到重新獲得第一次更新位置,若未到達(dá)過,則利用個(gè)體狼的第一個(gè)更新位置計(jì)算得適應(yīng)度;

xj(t)=xj-1(t)+β(r)(p(t)-xj-1(t))+rand()(1)

其中,xj-1(t)和xj(t)表示個(gè)體狼在第t次迭代過程中的第j-1次更新位置和第j次更新位置,x0(t)表示個(gè)體狼在第t次迭代過程中迭代操作開始前的初始位置;β(r)為中間計(jì)算量,t和gen分別表示當(dāng)前迭代次數(shù)和最大迭代次數(shù),w為大于2的常數(shù),β0為最大激勵(lì)因子,取正數(shù),r表示當(dāng)前個(gè)體狼位置x0(t)的視野范圍內(nèi)適應(yīng)度最好的同伴個(gè)體狼位置的適應(yīng)度f2(p(t))與當(dāng)前個(gè)體狼位置的適應(yīng)度f2(x0(t))之差的絕對(duì)值,r=|f2(p(t)-f2(x0(t))|;rand()為[0,1]中的一個(gè)隨機(jī)數(shù);

步驟5.4:判斷每個(gè)個(gè)體狼的第一次更新位置是否滿足以下條件,進(jìn)行第二次位置更新,更新個(gè)體狼最優(yōu)位置,j=2:

第一次更新位置在其視野范圍內(nèi)且第一次更新位置的適應(yīng)度優(yōu)于其初始位置的適應(yīng)度;

若滿足,則令個(gè)體狼按照公式(1)尋找第二次更新位置x2(t),當(dāng)?shù)诙胃挛恢玫倪m應(yīng)度優(yōu)于當(dāng)前個(gè)體狼最優(yōu)位置的適應(yīng)度,利用第二次更新位置作為個(gè)體狼最優(yōu)位置,進(jìn)入步驟5,獲取第三次更新位置;

若不滿足,則第二次更新位置與第一次更新位置相同,個(gè)體狼位置不變,并轉(zhuǎn)到步驟5.6,獲取第三次更新位置;

步驟5.5:按公式(2)尋找滿足步驟5.4中所述條件的個(gè)體狼在其視野范圍內(nèi)的第三次更新位置,更新個(gè)體狼最優(yōu)位置和狼群頭狼最優(yōu)位置,j=3,進(jìn)入步驟5.7;

x3(t)=x2(t)+rand().v.(gbest-x2(t))(2)

其中:x2(t)、x3(t)表示個(gè)體狼在第t次迭代過程中的第二次更新位置和第三次更新位置;gbest為狼群當(dāng)前最優(yōu)頭狼位置;v為狼的視覺半徑;rand()為[-1,1]中的一個(gè)隨機(jī)數(shù);

步驟5.6:按照公式(3)尋找不滿足步驟5.4中所述條件的個(gè)體狼的第三次更新位置x3(t),更新狼群頭狼最優(yōu)位置,j=3,進(jìn)入步驟5.7;

x3(t)=x2(t)+escape().s.(xc(t)-x2(t))(3)

其中,xc(t)表示第t次迭代過程中,所有個(gè)體狼進(jìn)行第二次更新后,狼群的質(zhì)心位置;s為狼的移動(dòng)步長,s≤v;escape()為隨機(jī)函數(shù);

步驟5.7:依適應(yīng)度值將經(jīng)過三次更新后的所有個(gè)體狼從低到高進(jìn)行排序;

步驟5.8:將排在前面的n+1個(gè)個(gè)體狼按非線性單純法nm方法搜索每個(gè)個(gè)體的最優(yōu)位置,其余的個(gè)體重復(fù)步驟5.4-步驟5.6搜索每個(gè)個(gè)體狼最優(yōu)位置,得到最優(yōu)狼群;從最優(yōu)狼群中選取全局最優(yōu)頭狼位置;

其中,n為隨機(jī)正整數(shù);

步驟5.9:判斷是否達(dá)到最大迭代次數(shù)或者達(dá)到最大搜索精度,若達(dá)到,則輸出全局最優(yōu)頭狼位置對(duì)應(yīng)的基于多核支持向量機(jī)mksvm的第二類關(guān)節(jié)控制預(yù)測模型的參數(shù)c、g和d;否則,令t+1,轉(zhuǎn)到步驟5.3,進(jìn)行下一次迭代。

第三類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為小波神經(jīng)網(wǎng)絡(luò)模型;

所述第三類關(guān)節(jié)預(yù)測模型以第三類關(guān)節(jié)樣本集中各關(guān)節(jié)樣本的距離和控制值向量分別作為小波神經(jīng)網(wǎng)絡(luò)模型的輸入數(shù)據(jù)和輸出數(shù)據(jù)進(jìn)行訓(xùn)練后,獲得的基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型,圖3所示;

所述基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型的輸入層節(jié)點(diǎn)個(gè)數(shù)為2,隱含層小波元個(gè)數(shù)為4,輸出層節(jié)點(diǎn)個(gè)數(shù)為4,隱層小波神經(jīng)元采用mexicanhat小波函數(shù),輸出層節(jié)點(diǎn)采用sigmoid函數(shù);訓(xùn)練過程中的最大迭代次數(shù)設(shè)置為1000,訓(xùn)練學(xué)習(xí)率為0.1,閾值為0.00004;

基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型的權(quán)值、閾值和伸縮平移系數(shù)采用混沌蝙蝠算法尋優(yōu)獲得。

所述基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型的權(quán)值、閾值和伸縮平移系數(shù)采用混沌蝙蝠算法尋優(yōu)獲得的過程如下:

步驟7.1:以蝙蝠個(gè)體位置作為基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型的權(quán)值、閾值和伸縮平移系數(shù),初始化蝙蝠種群,并設(shè)置蝙蝠種群參數(shù);

蝙蝠種群規(guī)模的取值范圍為[200,500],蝙蝠個(gè)體最大脈沖頻度r0的取值范圍為[0.25,0.5],最大脈沖聲音強(qiáng)度a0的取值范圍為[0.25,0.5],最大迭代次數(shù)的取值范圍為[150,300],搜索精度的取值范圍為[0.001,0.1],脈沖頻率的取值范圍為[0,1.5],蝙蝠搜索頻度增加系數(shù)的取值范圍為[0.02,0.08],聲音強(qiáng)度衰減系數(shù)的取值范圍為[0.8,0.96],最大迭代次數(shù)的取值范圍為[100,500],最大搜索精度的取值范圍為[0.01,0.1];

步驟7.2:設(shè)定適應(yīng)度函數(shù),并確定初始最優(yōu)蝙蝠個(gè)體位置和迭代次數(shù)t,t=1;

將蝙蝠個(gè)體位置對(duì)應(yīng)的權(quán)值、閾值和伸縮平移系數(shù)代入基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型中,并利用蝙蝠個(gè)體位置確定的基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型計(jì)算第二類關(guān)節(jié)樣本集中每個(gè)關(guān)節(jié)樣本的關(guān)節(jié)控制預(yù)測值,將所有關(guān)節(jié)樣本的控制預(yù)測值和實(shí)際值的差值e構(gòu)建第三適應(yīng)度函數(shù)f3(x),f3(x)=1/(e+1);

利用第三適應(yīng)度函數(shù)計(jì)算每只蝙蝠個(gè)體位置的適應(yīng)度,以最大適應(yīng)度對(duì)應(yīng)的蝙蝠個(gè)體位置作為初始最優(yōu)蝙蝠個(gè)體位置;

步驟7.3:利用設(shè)定的脈沖頻率對(duì)蝙蝠個(gè)體的速度以及位置進(jìn)行更新;

步驟7.4:若rand1>ri,則對(duì)處于個(gè)體最優(yōu)位置的蝙蝠進(jìn)行隨機(jī)擾動(dòng),生成蝙蝠個(gè)體的擾動(dòng)位置;

其中,rand1為在[0,1]上均勻分布的隨機(jī)數(shù),ri為第i只蝙蝠的脈沖頻度;

步驟7.5:若rand2>ai,蝙蝠個(gè)體的擾動(dòng)位置的適應(yīng)度優(yōu)于擾動(dòng)前的蝙蝠個(gè)體位置的適應(yīng)度,則將蝙蝠個(gè)體移動(dòng)到擾動(dòng)位置,否則保持原位;

其中,rand2為在[0,1]上均勻分布的隨機(jī)數(shù),ai為第i只蝙蝠的聲音強(qiáng)度;

步驟7.6:如果步驟7.5條件得到滿足,則利用蝙蝠搜索頻度增加系數(shù)和聲音強(qiáng)度衰減系數(shù)更新蝙蝠個(gè)體的脈沖頻度和脈沖脈沖聲音強(qiáng)度,并跳轉(zhuǎn)步驟7.4,否則跳轉(zhuǎn)到步驟7.7;

步驟7.7:計(jì)算當(dāng)前蝙蝠種群中每個(gè)蝙蝠個(gè)體位置的適應(yīng)度,按照由大到小的順序選出前m%個(gè)蝙蝠個(gè)體進(jìn)行位置和速度的混沌優(yōu)化,得到更新后的前m%個(gè)蝙蝠個(gè)體,m的取值范圍為[5,20];

步驟7.8:判斷是否達(dá)到最大迭代次數(shù)或者達(dá)到最大搜索精度,若是,則從更新后的前m%個(gè)蝙蝠個(gè)體中依據(jù)適應(yīng)度值選出全局最優(yōu)蝙蝠個(gè)體,輸出全局最優(yōu)蝙蝠個(gè)體對(duì)應(yīng)的基于小波神經(jīng)網(wǎng)絡(luò)的第三類關(guān)節(jié)控制預(yù)測模型的最佳權(quán)值、閾值和伸縮平移系數(shù),否則,令t=t+1,轉(zhuǎn)到步驟7.3繼續(xù)下一次迭代。

步驟4:利用運(yùn)載機(jī)器人基座所在固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離作為三類關(guān)節(jié)預(yù)測模型的輸入值,分別得到各個(gè)關(guān)節(jié)的控制值,輸出運(yùn)載機(jī)器人手臂所有關(guān)節(jié)的控制值(控制值是指手臂各個(gè)關(guān)節(jié)的旋轉(zhuǎn)角度,多關(guān)節(jié)旋轉(zhuǎn)角度的耦合形成整體的手臂運(yùn)動(dòng)),完成抓取任務(wù)控制。

一種運(yùn)載機(jī)器人手臂操控多點(diǎn)映射智能控制系統(tǒng),采用上述的方法對(duì)運(yùn)載機(jī)器人手臂進(jìn)行控制,包括:

抓取樣本集獲取單元,通過運(yùn)載機(jī)器人位于指定抓取距離區(qū)間內(nèi)的固定抓取點(diǎn)時(shí),利用遠(yuǎn)程服務(wù)器控制運(yùn)載機(jī)器人手臂進(jìn)行多次抓取訓(xùn)練,獲得運(yùn)載機(jī)器人在不同固定抓取點(diǎn)完成抓取任務(wù)的多個(gè)抓取樣本;

每個(gè)抓取樣本包括運(yùn)載機(jī)器人基座所在固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離和完成抓取任務(wù)過程中所有關(guān)節(jié)的控制值矩陣,所述所有關(guān)節(jié)的控制值矩陣大小為8*10,8表示運(yùn)載機(jī)器人手臂關(guān)節(jié)個(gè)數(shù),10表示抓取過程手臂動(dòng)作次數(shù);

三類關(guān)節(jié)樣本集分類單元,依據(jù)各手臂關(guān)節(jié)控制值的變化幅度a%對(duì)抓取樣本集中進(jìn)行關(guān)節(jié)分類,獲得各類關(guān)節(jié)樣本集;

從每個(gè)抓取樣本中提取出各個(gè)關(guān)節(jié)樣本,每個(gè)關(guān)節(jié)樣本包括距離和控制值向量,所述關(guān)節(jié)樣本中的距離是指運(yùn)載機(jī)器人基座所在的固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離,所述關(guān)節(jié)樣本中的控制向量,是指運(yùn)載機(jī)器人基座位于固定抓取點(diǎn)時(shí),完成抓取任務(wù)過程中對(duì)應(yīng)的關(guān)節(jié)控制值向量,向量大小為1*10;

依據(jù)關(guān)節(jié)控制值變化幅度a%,對(duì)抓取樣本集對(duì)應(yīng)的所有關(guān)節(jié)樣本進(jìn)行分類:

若a%<20%,該類關(guān)節(jié)作為第一類關(guān)節(jié);

若20%≤a%≤50%,該類關(guān)節(jié)作為第二類關(guān)節(jié);

若a%>50%,該類關(guān)節(jié)作為第三類關(guān)節(jié)

每個(gè)關(guān)節(jié)樣本的關(guān)節(jié)控制值變化幅度a%是指每個(gè)關(guān)節(jié)在一次抓取過程所有動(dòng)作中的最大控制值和最小控制值之差與對(duì)應(yīng)關(guān)節(jié)的控制量程之比;

手臂關(guān)節(jié)控制值預(yù)測模型構(gòu)建單元,利用三類關(guān)節(jié)樣本集分類單元得到的各類關(guān)節(jié)樣本集分別輸入訓(xùn)練模型進(jìn)行訓(xùn)練,構(gòu)建運(yùn)載機(jī)器人手臂關(guān)節(jié)控制值的預(yù)測模型;

所述訓(xùn)練過程是指將各類關(guān)節(jié)樣本集中的每個(gè)關(guān)節(jié)樣本的距離和控制值向量分別作為訓(xùn)練模型的輸入數(shù)據(jù)和輸出數(shù)據(jù)進(jìn)行訓(xùn)練,得到預(yù)測模型;

所述手臂關(guān)節(jié)控制值預(yù)測模型包括第一類關(guān)節(jié)預(yù)測模型、第二類關(guān)節(jié)預(yù)測模型以及第三類關(guān)節(jié)預(yù)測模型;

其中,第一類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為基于elman神經(jīng)網(wǎng)絡(luò)模型;

第二類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為多核支持向量機(jī)mksvm模型;

第三類關(guān)節(jié)預(yù)測模型使用的訓(xùn)練模型為小波神經(jīng)網(wǎng)絡(luò)模型;

控制單元,利用運(yùn)載機(jī)器人基座所在固定抓取點(diǎn)與抓取臺(tái)底端邊緣之間的距離作為三類關(guān)節(jié)預(yù)測模型的輸入值,分別得到各個(gè)關(guān)節(jié)的控制值,輸出運(yùn)載機(jī)器人手臂所有關(guān)節(jié)的控制值,進(jìn)行抓取任務(wù)控制。

所述指定區(qū)域設(shè)置為運(yùn)載機(jī)器人基座與抓取臺(tái)底部邊緣距離18-28cm的直線區(qū)域內(nèi)。

所述運(yùn)載機(jī)器人基座與抓取臺(tái)底部邊緣距離采用運(yùn)載機(jī)器人自帶的超聲波傳感器進(jìn)行測量,且所述超聲波傳感器位于運(yùn)載機(jī)器人基座的兩側(cè),對(duì)稱設(shè)置。

本文中所描述的具體實(shí)施例僅僅是對(duì)本發(fā)明精神作舉例說明。本發(fā)明所屬技術(shù)領(lǐng)域的技術(shù)人員可以對(duì)所描述的具體實(shí)施例做各種各樣的修改或補(bǔ)充或采用類似的方式替代,但并不會(huì)偏離本發(fā)明的精神或者超越所附權(quán)利要求書所定義的范圍。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
尚志市| 思茅市| 城固县| 武冈市| 巴林右旗| 耒阳市| 丹棱县| 广南县| 灯塔市| 遵义市| 西乌| 全椒县| 许昌市| 瓦房店市| 黄石市| 临澧县| 东海县| 大洼县| 平邑县| 左权县| 汶川县| 农安县| 保靖县| 渭南市| 延寿县| 桐城市| 信宜市| 连平县| 祁连县| 柏乡县| 唐海县| 盐池县| 城固县| 闵行区| 乌苏市| 东山县| 登封市| 南皮县| 北辰区| 文化| 宜州市|