本發(fā)明涉及無人艇控制技術(shù)領(lǐng)域,具體涉及一種基于增強(qiáng)學(xué)習(xí)算法的無人船側(cè)向控制方法。
背景技術(shù):
海底地形地貌是一切海洋開發(fā)和利用活動的基礎(chǔ),其信息獲取是海洋測繪中最基礎(chǔ)的工作。近年來,隨著衛(wèi)星導(dǎo)航定位、聲學(xué)探測、數(shù)據(jù)通訊、計(jì)算機(jī)數(shù)據(jù)處理與可視化、圖像學(xué)和圖形學(xué)以及現(xiàn)代測量數(shù)據(jù)處理理論和方法等相關(guān)領(lǐng)域的發(fā)展,我國的海底地形地貌信息獲取技術(shù)正在向高精度、高分辨率、自主集成、綜合化和標(biāo)準(zhǔn)化方向發(fā)展。
無人船是一種多用途的觀測平臺。可搭載多種海洋測量傳感器用于實(shí)施多種專業(yè)測量,無人水面測量船作為一種執(zhí)行實(shí)時、無人、自動測量的綜合作業(yè)平臺,將測量人員從繁重的水下地形測量工作中解脫出來、是現(xiàn)代海洋測量技術(shù)裝備發(fā)展的必然趨勢。
無人船需要在復(fù)雜的海洋環(huán)境中自主航行和作業(yè),因此無人船對操縱性、控制性能和可靠性均提出了更為苛刻的要求。為了保證無人船安全、可靠、自主地完成各種復(fù)雜任務(wù),這就要求自主地完成各種復(fù)雜任務(wù),這就要求它具備靈活機(jī)動性和環(huán)境適應(yīng)能力,為了更好的完成任務(wù)就需要研究更加先進(jìn)的無人船智能運(yùn)動控制技術(shù)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的就是要針對現(xiàn)有裝置的不足,其能夠優(yōu)化無人船側(cè)向控制器的設(shè)計(jì),提高無人船的控制性能,獲得更好的控制效果。
為實(shí)現(xiàn)上述目的,本發(fā)明所涉及的一種基于增強(qiáng)學(xué)習(xí)算法的無人船側(cè)向控制方法,包括如下步驟:
步驟1:建立無人船行駛的動力學(xué)模型,采用簡化的船體-路徑一體化模型;
步驟2:根據(jù)無人船側(cè)向控制性能的要求,選擇無人船側(cè)向控制器的設(shè)計(jì)方案;
步驟3:無人船側(cè)向控制器中增強(qiáng)學(xué)習(xí)控制器采用actor-critic結(jié)構(gòu),分為執(zhí)行器網(wǎng)絡(luò)和評價器網(wǎng)絡(luò);
步驟4:設(shè)計(jì)無人船的側(cè)向偏差參考模型;
步驟5:通過對性能指標(biāo)的優(yōu)化,實(shí)現(xiàn)系統(tǒng)狀態(tài)或輸出對參考模型狀態(tài)的跟隨,進(jìn)而保證了系統(tǒng)的性能優(yōu)化。
進(jìn)一步地,所述步驟1:
采用如下簡化的船體-路徑一體化模型:
其中:y為路徑跟蹤的側(cè)向偏差,θ為方向角偏差,即船體的縱軸方向與期望路徑切線方向的偏差;a(t)為轉(zhuǎn)向舵偏角,ac(t)為轉(zhuǎn)向舵偏角的控制量;τa(t)為方向控制的時間常數(shù);ρ為路徑曲率。
更進(jìn)一步地,所述步驟2:
所述基于增強(qiáng)學(xué)習(xí)的自適應(yīng)pid控制律具有如下形式:
其中:kp0,ka0,kd和ki為固定增益常數(shù),根據(jù)手工調(diào)整的pid參數(shù)設(shè)定;δka,δkp為執(zhí)行器神經(jīng)網(wǎng)絡(luò)的輸出。
進(jìn)一步地,所述步驟3:
所述評價器網(wǎng)絡(luò)采用cmac網(wǎng)絡(luò),第一層特征映射cqn→f1是由輸入狀態(tài)空間到狀態(tài)空間檢測器的層疊式編碼映射,在狀態(tài)空間檢測器中有c個針對整個狀態(tài)空間量化編碼結(jié)構(gòu)a1,a2,a3,……,ac,第二層狀態(tài)特征映射f2對每個狀態(tài)檢測器單元計(jì)算唯一的物理地址,此時需要的物理地址單元總數(shù)為cqn,最后一層映射為輸出映射,該映射通過對被激活的物理地址單元中的權(quán)值求和來計(jì)算輸出,學(xué)習(xí)算法采用td(λ)學(xué)習(xí)算法,選擇算法的關(guān)鍵參數(shù)折扣因子和適合度軌跡參數(shù);
更進(jìn)一步地,所述步驟3:
所述執(zhí)行器網(wǎng)絡(luò)采用兩個多層前饋神經(jīng)網(wǎng)絡(luò),采用高斯行為分布來確定實(shí)際控制量,多維高斯分布進(jìn)行執(zhí)行器網(wǎng)絡(luò)輸出的隨機(jī)探索:
其中:
其中:v(δy)為評價器對當(dāng)前狀態(tài)的值函數(shù)估計(jì);σ1,σ2為常數(shù),
進(jìn)一步地,所述步驟3:
所述執(zhí)行器網(wǎng)絡(luò)的學(xué)習(xí)算法采用如下近似策略梯度估計(jì)算法:
其中:
更進(jìn)一步地,所述步驟4:
為實(shí)現(xiàn)路徑跟蹤性能的優(yōu)化,考慮采用如下形式的側(cè)向偏差性能參考模型:
其中:b>0為常數(shù)。
進(jìn)一步地,所述步驟4中:
所述參考模型的基礎(chǔ)上,對回報函數(shù)的設(shè)計(jì)如下:
其中:e1、e2和c為常數(shù),且0≤e2≤e1;k<0為回報比例系數(shù)。
更進(jìn)一步地,所述步驟5:
在設(shè)計(jì)具有期望性能的參考模型的基礎(chǔ)上,對回報函數(shù)的設(shè)計(jì)需要考慮系統(tǒng)狀態(tài)或輸出對參考模型的跟隨性能,通??梢圆捎萌缦碌母S誤差線性函數(shù)形式:rt=c|δy|
其中:c為比例系數(shù),可以為常數(shù)或分段常數(shù),
由于采用了actor-critic結(jié)構(gòu),則增強(qiáng)學(xué)習(xí)控制器的優(yōu)化目標(biāo)是下面的折扣回報指標(biāo):
其中:γ為折扣因子,通常選擇為接近1的常數(shù),
通過對性能指標(biāo)j的優(yōu)化,實(shí)現(xiàn)系統(tǒng)狀態(tài)或輸出對參考模型狀態(tài)的跟隨,進(jìn)而保證了系統(tǒng)的性能優(yōu)化。
本發(fā)明的優(yōu)點(diǎn)在于:增強(qiáng)學(xué)習(xí)基于動物學(xué)習(xí)心理學(xué)的“試誤法”原理,使得無人船能夠在與環(huán)境的交互過程中根據(jù)評價性的反饋信號實(shí)現(xiàn)序貫決策的優(yōu)化,從而可以用于解決某些監(jiān)督學(xué)習(xí)難以應(yīng)用的優(yōu)化控制問題。
附圖說明
圖1為本發(fā)明中自適應(yīng)pid控制器的結(jié)構(gòu)圖;
圖2為actor-critic結(jié)構(gòu)圖。
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施例對本發(fā)明作進(jìn)一步的詳細(xì)描述:
如圖1~2,一種基于增強(qiáng)學(xué)習(xí)算法的無人船側(cè)向控制方法,包括如下步驟:
步驟1:建立無人船行駛的動力學(xué)模型,采用如下簡化的船體-路徑一體化模型:
其中:y為路徑跟蹤的側(cè)向偏差,θ為方向角偏差,即船體的縱軸方向與期望路徑切線方向的偏差;a(t)為轉(zhuǎn)向舵偏角,ac(t)為轉(zhuǎn)向舵偏角的控制量;τa(t)為方向控制的時間常數(shù);ρ為路徑曲率;
步驟2:根據(jù)無人船側(cè)向控制性能的要求,選擇無人船側(cè)向控制器的設(shè)計(jì)方案,基于增強(qiáng)學(xué)習(xí)的自適應(yīng)pid控制律具有如下形式:
其中:kp0,ka0,kd和ki為固定增益常數(shù),根據(jù)手工調(diào)整的pid參數(shù)設(shè)定;δka,δkp為執(zhí)行器神經(jīng)網(wǎng)絡(luò)的輸出;
步驟3:無人船側(cè)向控制器中增強(qiáng)學(xué)習(xí)控制器采用actor-critic結(jié)構(gòu),分為執(zhí)行器網(wǎng)絡(luò)和評價器網(wǎng)絡(luò);
評價器網(wǎng)絡(luò)采用cmac網(wǎng)絡(luò),第一層特征映射cqn→f1是由輸入狀態(tài)空間到狀態(tài)空間檢測器的層疊式編碼映射,在狀態(tài)空間檢測器中有c個針對整個狀態(tài)空間量化編碼結(jié)構(gòu)a1,a2,a3,……,ac,第二層狀態(tài)特征映射f2對每個狀態(tài)檢測器單元計(jì)算唯一的物理地址,此時需要的物理地址單元總數(shù)為cqn,最后一層映射為輸出映射,該映射通過對被激活的物理地址單元中的權(quán)值求和來計(jì)算輸出,學(xué)習(xí)算法采用td(λ)學(xué)習(xí)算法,選擇算法的關(guān)鍵參數(shù)折扣因子和適合度軌跡參數(shù);
執(zhí)行器網(wǎng)絡(luò)采用兩個多層前饋神經(jīng)網(wǎng)絡(luò),采用高斯行為分布來確定實(shí)際控制量,多維高斯分布進(jìn)行執(zhí)行器網(wǎng)絡(luò)輸出的隨機(jī)探索:
其中:
其中:v(δy)為評價器對當(dāng)前狀態(tài)的值函數(shù)估計(jì);σ1,σ2為常數(shù),學(xué)習(xí)算法采用如下近似策略梯度估計(jì)算法:
其中:
步驟4:設(shè)計(jì)無人船的側(cè)向偏差參考模型,為實(shí)現(xiàn)路徑跟蹤性能的優(yōu)化,考慮采用如下形式的側(cè)向偏差性能參考模型:
其中:b>0為常數(shù);
在參考模型的基礎(chǔ)上,對回報函數(shù)的設(shè)計(jì)如下:
其中:e1、e2和c為常數(shù),且0≤e2≤e1;k<0為回報比例系數(shù);
步驟5:在設(shè)計(jì)具有期望性能的參考模型的基礎(chǔ)上,對回報函數(shù)的設(shè)計(jì)需要考慮系統(tǒng)狀態(tài)或輸出對參考模型的跟隨性能,通常可以采用如下的跟隨誤差線性函數(shù)形式:rt=c|δy|
其中:c為比例系數(shù),可以為常數(shù)或分段常數(shù),
由于采用了actor-critic結(jié)構(gòu),則增強(qiáng)學(xué)習(xí)控制器的優(yōu)化目標(biāo)是下面的折扣回報指標(biāo):
其中:γ為折扣因子,通常選擇為接近1的常數(shù),
通過對性能指標(biāo)j的優(yōu)化,可以實(shí)現(xiàn)系統(tǒng)狀態(tài)或輸出對參考模型狀態(tài)的跟隨,進(jìn)而保證了系統(tǒng)的性能優(yōu)化。
本發(fā)明實(shí)際使用時:
對于無人船的側(cè)向控制問題,基于增強(qiáng)學(xué)習(xí)的自適應(yīng)pid控制律具有如下形式:
其中:kp0,ka0,kd和ki為固定增益常數(shù),根據(jù)手工調(diào)整的pid參數(shù)設(shè)定;δka,δkp為執(zhí)行器神經(jīng)網(wǎng)絡(luò)的輸出,分別用于對方向角偏差和側(cè)向偏差的比例增益進(jìn)行自適應(yīng)調(diào)整。
基于上述自適應(yīng)pid控制律,增強(qiáng)學(xué)習(xí)控制器由一個評價器網(wǎng)絡(luò)和一個執(zhí)行器網(wǎng)絡(luò)構(gòu)成。
評價器網(wǎng)絡(luò)的輸入為系統(tǒng)的狀態(tài),包括:側(cè)向偏差y及其變化率
執(zhí)行器網(wǎng)絡(luò)的輸入與評價器相同,輸出用于確定pid控制器的可變增益,采用兩個多層前饋神經(jīng)網(wǎng)絡(luò),中間層節(jié)點(diǎn)數(shù)為6。δka,δkp由高斯分布進(jìn)行行為探索,高斯分布的均值由執(zhí)行器網(wǎng)絡(luò)輸出確定。設(shè)兩個執(zhí)行器網(wǎng)絡(luò)的輸出分別為z1,z2(0≤z1,z2≤1),則δka,δkp的均值由如下公式?jīng)Q定:
其中:uδp,uδa分別可變增益kp,ka的變化范圍。
為實(shí)現(xiàn)路徑跟蹤性能的優(yōu)化,考慮采用如下形式的側(cè)向偏差性能參考模型:
其中:b>0為常數(shù)。以上參考模型對側(cè)向偏差的變化給出了一種指數(shù)收斂的性能指標(biāo)曲線,適當(dāng)?shù)剡x擇常數(shù)b可以進(jìn)一步對系統(tǒng)性能進(jìn)行優(yōu)化。
在設(shè)計(jì)了參考模型的基礎(chǔ)上,對回報函數(shù)的設(shè)計(jì)如下:
其中:e1、e2和c為常數(shù),且0≤e2≤e1;k<0為回報比例系數(shù)。以上回報函數(shù)的設(shè)計(jì)使為了盡量是系統(tǒng)側(cè)向偏差的變化接近給定的參考模型,即具有指數(shù)收斂的性能。
根據(jù)技術(shù)方案的步驟5,基于增強(qiáng)學(xué)習(xí)的自適應(yīng)pid控制器的算法描述:
給定回報函數(shù)r(δy),由執(zhí)行器網(wǎng)絡(luò)和評價器網(wǎng)絡(luò)構(gòu)成的增強(qiáng)學(xué)習(xí)控制器,單次運(yùn)行的時間長度t。
1、初始化學(xué)習(xí)控制器的參數(shù),包括神經(jīng)網(wǎng)絡(luò)的權(quán)值,折扣因子γ,時域差值學(xué)習(xí)算法的有關(guān)控制參數(shù)(λ,p0或α),執(zhí)行器網(wǎng)絡(luò)的學(xué)習(xí)因子β,評價器網(wǎng)絡(luò)權(quán)值的適合度軌跡向量,學(xué)習(xí)次數(shù)n=0。
2、循環(huán),直到滿足算法停止的條件。
(1)初始化控制對象的狀態(tài),控制時間步t=0。
(2)根據(jù)當(dāng)前的控制對象狀態(tài)和參考模型狀態(tài),計(jì)算模型跟隨誤差;
(3)根據(jù)當(dāng)前時刻的模型跟隨誤差δyt,計(jì)算執(zhí)行器網(wǎng)絡(luò)輸出k和評價網(wǎng)絡(luò)的輸出v(δyt);
(4)計(jì)算實(shí)際的pid參數(shù)整定δk(t),從而計(jì)算pid控制器的控制量輸出u;
(5)將輸出u作用于控制對象,觀測下一采樣時刻的對象狀態(tài)和參考模型狀態(tài),計(jì)算新的模型跟隨誤差,同時計(jì)算回報函數(shù)rt;
(6)對評價器網(wǎng)絡(luò)的權(quán)值,利用td(λ)算法進(jìn)行時域差值學(xué)習(xí),對執(zhí)行器網(wǎng)絡(luò),計(jì)算策略梯度估計(jì),進(jìn)行權(quán)值的迭代;
(7)t=t+1,若t=t,則n=n+1,返回b),否則,返回c)。
上述算法停止的準(zhǔn)則可以選擇為系統(tǒng)性能指標(biāo)達(dá)到給定要求或?qū)W習(xí)次數(shù)達(dá)到給定的最大值。
最后,應(yīng)當(dāng)指出,以上實(shí)施例僅是本發(fā)明較有代表性的例子。顯然,本發(fā)明不限于上述實(shí)施例,還可以有許多變形。凡依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對以上實(shí)施例所做的任何簡單修改、等同變化及修飾,均應(yīng)認(rèn)為屬于本發(fā)明的保護(hù)范圍。