專利名稱:基于神經(jīng)網(wǎng)絡(luò)的機(jī)器人強(qiáng)化學(xué)習(xí)初始化方法
技術(shù)領(lǐng)域:
本發(fā)明涉及將先驗知識融入到移動機(jī)器人學(xué)習(xí)系統(tǒng)中,對機(jī)器人強(qiáng)化學(xué)習(xí)過程中 Q值初始化的方法,屬于機(jī)器學(xué)習(xí)技術(shù)領(lǐng)域。
背景技術(shù):
隨著機(jī)器人應(yīng)用領(lǐng)域的不斷拓展,機(jī)器人所面臨的任務(wù)也越來越復(fù)雜,盡管很多情況下研究人員可以對機(jī)器人可能執(zhí)行的重復(fù)行為進(jìn)行預(yù)編程,但為實現(xiàn)整體的期望行為而進(jìn)行行為設(shè)計變得越來越困難,設(shè)計人員往往不可能事先對機(jī)器人的所有行為做出合理的預(yù)測。因此,能夠感知環(huán)境的自治機(jī)器人必須能夠通過與環(huán)境的交互在線學(xué)習(xí)獲得新的行為,使得機(jī)器人能夠根據(jù)特定的任務(wù)選擇能達(dá)到目標(biāo)的最優(yōu)動作。強(qiáng)化學(xué)習(xí)利用類似于人類思維中的試錯(trial-and-error)的方法來發(fā)現(xiàn)最優(yōu)行為策略,目前已經(jīng)在機(jī)器人行為學(xué)習(xí)方面展現(xiàn)出了良好的學(xué)習(xí)性能。Q學(xué)習(xí)算法是求解信息不完全Markov決策問題的一種強(qiáng)化學(xué)習(xí)方法,根據(jù)環(huán)境狀態(tài)和上一步學(xué)習(xí)獲得的立即回報,修改從狀態(tài)到動作的映射策略,以使行為從環(huán)境中獲得的累積回報值最大,從而獲得最優(yōu)行為策略。標(biāo)準(zhǔn)Q學(xué)習(xí)算法一般將Q值初始化為Q或隨機(jī)數(shù),機(jī)器人沒有對環(huán)境的先驗知識,學(xué)習(xí)的初始階段只能隨機(jī)地選擇動作,因此,在復(fù)雜環(huán)境中算法收斂速度較慢。為了提高算法收斂速度,研究人員提出了許多改進(jìn)Q學(xué)習(xí)的方法,提高算法學(xué)習(xí)效率,改善學(xué)習(xí)性能。通常情況下,加速Q(mào)學(xué)習(xí)收斂速度的方法主要包括兩個方面一種方法是設(shè)計合適的回報函數(shù),另一種方法是合理初始化Q函數(shù)。目前,研究人員已經(jīng)提出了許多改進(jìn)的Q 學(xué)習(xí)算法,使機(jī)器人在強(qiáng)化學(xué)習(xí)的過程中能夠獲得更加有效的回報,主要包括關(guān)聯(lián)Q學(xué)習(xí)算法、惰性Q學(xué)習(xí)算法、貝葉斯Q學(xué)習(xí)算法等。其主要目的就是將對于機(jī)器人有價值的隱含信息融入到回報函數(shù)中,從而加速算法收斂速度。關(guān)聯(lián)Q學(xué)習(xí)將當(dāng)前回報與過去時刻的立即回報進(jìn)行比較,選擇回報值更大的動作,通過關(guān)聯(lián)回報方法能夠改善系統(tǒng)的學(xué)習(xí)能力,減少獲得最優(yōu)值所需要的迭代步數(shù)。惰性Q學(xué)習(xí)的目標(biāo)是提供一種預(yù)測狀態(tài)立即回報的方法,學(xué)習(xí)過程中利用信息延遲原則,在必要的情況下對新的目標(biāo)進(jìn)行預(yù)測,動作比較器檢查每一種情形的期望回報,然后選擇期望回報最大的動作執(zhí)行。貝葉斯Q學(xué)習(xí)利用概率分布描述機(jī)器人狀態(tài)-動作對Q值的不確定性估計,學(xué)習(xí)過程中需要考慮前一時刻Q值的分布, 并利用機(jī)器人學(xué)習(xí)到的經(jīng)驗對先前的分布進(jìn)行更新,利用貝葉斯變量表示當(dāng)前狀態(tài)的最大累積回報,貝葉斯方法從本質(zhì)上改進(jìn)了 Q學(xué)習(xí)的探索策略,改善了 Q學(xué)習(xí)的性能。由于標(biāo)準(zhǔn)強(qiáng)化學(xué)習(xí)中強(qiáng)化信號都是由狀態(tài)值函數(shù)計算得到的標(biāo)量值,無法將人的知識形態(tài)和行為模式融入到學(xué)習(xí)系統(tǒng)中。而在機(jī)器人學(xué)習(xí)過程中,人往往具有相關(guān)領(lǐng)域的經(jīng)驗和知識,因此,在學(xué)習(xí)過程中將人的認(rèn)知和智能以強(qiáng)化信號的形式反饋給機(jī)器人,能夠減小狀態(tài)空間維數(shù),加快算法收斂速度。針對標(biāo)準(zhǔn)強(qiáng)化學(xué)習(xí)在人機(jī)交互過程中存在的問題, Thomaz等在機(jī)器人強(qiáng)化學(xué)習(xí)過程中由人實時地給出外部強(qiáng)化信號,人根據(jù)自身經(jīng)驗調(diào)整訓(xùn)練行為,引導(dǎo)機(jī)器人進(jìn)行前瞻性探索。Arsenio提出了一種對訓(xùn)練數(shù)據(jù)進(jìn)行在線、自動標(biāo)注的學(xué)習(xí)策略,在人機(jī)交互過程中通過觸發(fā)特定的事件獲得訓(xùn)練數(shù)據(jù),從而將施教者嵌入到強(qiáng)化學(xué)習(xí)的反饋回路。Mirza等提出了基于交互歷史的體系結(jié)構(gòu),機(jī)器人能夠利用與人進(jìn)行社會性交互的歷史經(jīng)驗進(jìn)行強(qiáng)化學(xué)習(xí),使機(jī)器人能夠在與人進(jìn)行的簡單游戲中逐漸獲得合適的行為。另一種改善Q學(xué)習(xí)算法性能的方法就是將先驗知識融入到學(xué)習(xí)系統(tǒng)中,對Q值進(jìn)行初始化。目前,對Q值進(jìn)行初始化的方法主要包括近似函數(shù)法、模糊規(guī)則法、勢函數(shù)法等。 近似函數(shù)法利用神經(jīng)網(wǎng)絡(luò)等智能系統(tǒng)逼近最優(yōu)值函數(shù),將先驗知識映射成為回報函數(shù)值, 使機(jī)器人在整個狀態(tài)空間的子集上進(jìn)行學(xué)習(xí),從而能夠加快算法收斂速度。模糊規(guī)則法根據(jù)初始環(huán)境信息建立模糊規(guī)則庫,然后利用模糊邏輯對Q值進(jìn)行初始化。利用這種方法建立的模糊規(guī)則都是根據(jù)環(huán)境信息人為設(shè)定的,往往不能客觀地反映機(jī)器人的環(huán)境狀態(tài),造成算法不穩(wěn)定。勢函數(shù)法在整個狀態(tài)空間定義相應(yīng)的狀態(tài)勢函數(shù),每一點勢能值對應(yīng)于狀態(tài)空間中某一離散狀態(tài)值,然后利用狀態(tài)勢函數(shù)對Q值進(jìn)行初始化,學(xué)習(xí)系統(tǒng)的Q值可以表示為初始值加上每次迭代的改變量。在機(jī)器人的各種行為當(dāng)中,機(jī)器人必須遵守一系列的行為準(zhǔn)則,機(jī)器人通過認(rèn)知與交互作用涌現(xiàn)出相應(yīng)的行為與智能,機(jī)器人強(qiáng)化學(xué)習(xí)Q值初始化就是要將先驗知識映射成為相應(yīng)的機(jī)器人行為。因此,如何獲得先驗知識的規(guī)則化表達(dá)形式,特別是實現(xiàn)領(lǐng)域?qū)<业慕?jīng)驗與常識知識的機(jī)器推理,將人的認(rèn)知和智能轉(zhuǎn)化為機(jī)器的計算和推理的人機(jī)智能融合技術(shù)是機(jī)器人行為學(xué)習(xí)急需解決的問題。
發(fā)明內(nèi)容
針對現(xiàn)有機(jī)器人強(qiáng)化學(xué)習(xí)技術(shù)的研究現(xiàn)狀及存在的不足,本發(fā)明提出一種能夠有效提高初始階段的學(xué)習(xí)效率、加快收斂速度的基于神經(jīng)網(wǎng)絡(luò)的機(jī)器人強(qiáng)化學(xué)習(xí)初始化方法,該方法通過Q值初始化能夠?qū)⑾闰炛R融入到學(xué)習(xí)系統(tǒng)中,對機(jī)器人初始階段的學(xué)習(xí)進(jìn)行優(yōu)化,從而為機(jī)器人提供一個較好的學(xué)習(xí)基礎(chǔ)。本發(fā)明的基于神經(jīng)網(wǎng)絡(luò)的機(jī)器人強(qiáng)化學(xué)習(xí)初始化方法,神經(jīng)網(wǎng)絡(luò)與機(jī)器人工作空間具有相同的拓?fù)浣Y(jié)構(gòu),每一個神經(jīng)元對應(yīng)于狀態(tài)空間中的一個離散的狀態(tài)。首先根據(jù)已知的部分環(huán)境信息對神經(jīng)網(wǎng)絡(luò)進(jìn)行演化,直到達(dá)到平衡狀態(tài),這時每個神經(jīng)元輸出值就代表其所對應(yīng)狀態(tài)能夠獲得的最大累積回報,然后將當(dāng)前狀態(tài)的立即回報加上后繼狀態(tài)遵循最優(yōu)策略獲得的最大折算累積回報(最大累積回報乘以折算因子),即可對所有狀態(tài)-動作對的Q(s,a)設(shè)定合理的初始值,通過Q值初始化能夠?qū)⑾闰炛R融入到學(xué)習(xí)系統(tǒng)中,對機(jī)器人初始階段的學(xué)習(xí)進(jìn)行優(yōu)化,從而為機(jī)器人提供一個較好的學(xué)習(xí)基礎(chǔ);具體包括以下步驟(1)建立神經(jīng)網(wǎng)絡(luò)模型神經(jīng)網(wǎng)絡(luò)與機(jī)器人工作的結(jié)構(gòu)空間具有相同的拓?fù)浣Y(jié)構(gòu),每個神經(jīng)元只與其局部鄰域內(nèi)的神經(jīng)元相連接,連接形式都相同,連接權(quán)都相等,神經(jīng)元之間信息的傳播是雙向的,神經(jīng)網(wǎng)絡(luò)具有高度并行的體系結(jié)構(gòu),每個神經(jīng)元對應(yīng)于機(jī)器人工作空間的一個離散的狀態(tài),整個神經(jīng)網(wǎng)絡(luò)由NXN個神經(jīng)元組成二維拓?fù)浣Y(jié)構(gòu),神經(jīng)網(wǎng)絡(luò)在演化過程中根據(jù)每一個離散狀態(tài)的輸入更新其鄰域內(nèi)的狀態(tài),直到神經(jīng)網(wǎng)絡(luò)達(dá)到平衡狀態(tài),達(dá)到平衡狀態(tài)時,神經(jīng)網(wǎng)絡(luò)中神經(jīng)元輸出值就形成一個單峰值的曲面,曲面上每一點的值就表示所對應(yīng)狀態(tài)能夠獲得的最大累積回報;
(2)設(shè)計回報函數(shù)在學(xué)習(xí)過程中,機(jī)器人能夠在4個方向上移動,在任意狀態(tài)選擇上下左右4個動作,機(jī)器人根據(jù)當(dāng)前狀態(tài)選擇動作,如果該動作使機(jī)器人到達(dá)目標(biāo)則獲得的立即回報為1, 如果機(jī)器人與障礙物或其他機(jī)器人發(fā)生碰撞則獲得立即回報為-0. 2,如果機(jī)器人在自由空間移動則獲得的立即回報為-ο. 1 ;(3)計算最大累積回報初始值神經(jīng)網(wǎng)絡(luò)達(dá)到平衡狀態(tài)時,定義每個神經(jīng)元相對應(yīng)的狀態(tài)的最大累積回報 V*Init(Si)等于該神經(jīng)元輸出值Xi,其關(guān)系公式如下
權(quán)利要求
1. 一種基于神經(jīng)網(wǎng)絡(luò)的機(jī)器人強(qiáng)化學(xué)習(xí)初始化方法,神經(jīng)網(wǎng)絡(luò)與機(jī)器人工作空間具有相同的拓?fù)浣Y(jié)構(gòu),每一個神經(jīng)元對應(yīng)于狀態(tài)空間中的一個離散的狀態(tài),首先根據(jù)已知的部分環(huán)境信息對神經(jīng)網(wǎng)絡(luò)進(jìn)行演化,直到達(dá)到平衡狀態(tài),這時每個神經(jīng)元輸出值就代表其所對應(yīng)狀態(tài)能夠獲得的最大累積回報,然后將當(dāng)前狀態(tài)的立即回報加上后繼狀態(tài)遵循最優(yōu)策略獲得的最大折算累積回報,即可對所有狀態(tài)-動作對的Q(s,a)設(shè)定合理的初始值,通過 Q值初始化能夠?qū)⑾闰炛R融入到學(xué)習(xí)系統(tǒng)中,對機(jī)器人初始階段的學(xué)習(xí)進(jìn)行優(yōu)化,從而為機(jī)器人提供一個較好的學(xué)習(xí)基礎(chǔ);具體包括以下步驟(1)建立神經(jīng)網(wǎng)絡(luò)模型神經(jīng)網(wǎng)絡(luò)與機(jī)器人工作的結(jié)構(gòu)空間具有相同的拓?fù)浣Y(jié)構(gòu),每個神經(jīng)元只與其局部鄰域內(nèi)的神經(jīng)元相連接,連接形式都相同,連接權(quán)都相等,神經(jīng)元之間信息的傳播是雙向的,神經(jīng)網(wǎng)絡(luò)具有高度并行的體系結(jié)構(gòu),每個神經(jīng)元對應(yīng)于機(jī)器人工作空間的一個離散的狀態(tài), 整個神經(jīng)網(wǎng)絡(luò)由NXN個神經(jīng)元組成二維拓?fù)浣Y(jié)構(gòu),神經(jīng)網(wǎng)絡(luò)在演化過程中根據(jù)每一個離散狀態(tài)的輸入更新其鄰域內(nèi)的狀態(tài),直到神經(jīng)網(wǎng)絡(luò)達(dá)到平衡狀態(tài),達(dá)到平衡狀態(tài)時,神經(jīng)網(wǎng)絡(luò)中神經(jīng)元輸出值就形成一個單峰值的曲面,曲面上每一點的值就表示所對應(yīng)狀態(tài)能夠獲得的最大累積回報;(2)設(shè)計回報函數(shù)在學(xué)習(xí)過程中,機(jī)器人能夠在4個方向上移動,在任意狀態(tài)選擇上下左右4個動作,機(jī)器人根據(jù)當(dāng)前狀態(tài)選擇動作,如果該動作使機(jī)器人到達(dá)目標(biāo)則獲得的立即回報為1,如果機(jī)器人與障礙物或其他機(jī)器人發(fā)生碰撞則獲得立即回報為-0. 2,如果機(jī)器人在自由空間移動則獲得的立即回報為-0.1;(3)計算最大累積回報初始值神經(jīng)網(wǎng)絡(luò)達(dá)到平衡狀態(tài)時,定義每個神經(jīng)元相對應(yīng)的狀態(tài)的最大累積回報V*Init (Si)等于該神經(jīng)元輸出值Xi,其關(guān)系公式如下
全文摘要
本發(fā)明提出了一種基于神經(jīng)網(wǎng)絡(luò)的機(jī)器人強(qiáng)化學(xué)習(xí)初始化方法,神經(jīng)網(wǎng)絡(luò)與機(jī)器人工作空間具有相同的拓?fù)浣Y(jié)構(gòu),每個神經(jīng)元對應(yīng)于狀態(tài)空間的一個離散狀態(tài)。首先根據(jù)已知的部分環(huán)境信息對神經(jīng)網(wǎng)絡(luò)進(jìn)行演化,直到達(dá)到平衡狀態(tài),這時每個神經(jīng)元的輸出值就代表相應(yīng)狀態(tài)遵循最優(yōu)策略可獲得的最大累積回報。然后定義Q函數(shù)初始值為當(dāng)前狀態(tài)的立即回報加上后繼狀態(tài)遵循最優(yōu)策略可獲得的最大折算累積回報。神經(jīng)網(wǎng)絡(luò)將已知環(huán)境信息映射成為Q函數(shù)初始值,從而將先驗知識融入到機(jī)器人學(xué)習(xí)系統(tǒng)中,提高了機(jī)器人在強(qiáng)化學(xué)習(xí)初始階段的學(xué)習(xí)能力,與傳統(tǒng)Q學(xué)習(xí)算法相比,本發(fā)明能夠有效提高初始階段的學(xué)習(xí)效率,加快算法收斂速度。
文檔編號G06N3/08GK102402712SQ201110255530
公開日2012年4月4日 申請日期2011年8月31日 優(yōu)先權(quán)日2011年8月31日
發(fā)明者宋勇, 李彩虹, 李彬, 李貽斌, 榮學(xué)文 申請人:山東大學(xué)