周國明
四川大學(xué) 電子信息學(xué)院 四川 成都 610000
深度強(qiáng)化學(xué)習(xí)[1](deep reinforcement learning ,DRL)是機(jī)器學(xué)習(xí)[2]的重要分支,它是在與環(huán)境交互中尋找最優(yōu)策略的一類方法。DRL中智能體的目標(biāo)是獲得最大獎(jiǎng)勵(lì),環(huán)境可以提供密集的獎(jiǎng)勵(lì)信號(hào)時(shí)DRL可以工作得很好,然而在許多實(shí)際問題中,獎(jiǎng)勵(lì)是稀疏的,稀疏獎(jiǎng)勵(lì)導(dǎo)致智能體無法有效的學(xué)習(xí)。實(shí)際上稀疏獎(jiǎng)勵(lì)問題會(huì)導(dǎo)致強(qiáng)化學(xué)習(xí)算法迭代緩慢、難以收斂,甚至根本無法進(jìn)行學(xué)習(xí)[3]。因此,如何解決稀疏獎(jiǎng)勵(lì)帶來的負(fù)面影響,研究稀疏獎(jiǎng)勵(lì)環(huán)境下的強(qiáng)化學(xué)習(xí)算法,至關(guān)重要。本文提出了一個(gè)使用智能體相鄰兩個(gè)狀態(tài)之間的距離來作為智能體的內(nèi)在獎(jiǎng)勵(lì)以驅(qū)動(dòng)智能體對環(huán)境進(jìn)行探索的方
由此可見,獎(jiǎng)勵(lì)在強(qiáng)化學(xué)習(xí)中起著非常重要的作用,它指導(dǎo)著智能體的學(xué)習(xí)。然而,在許多實(shí)際生活場景中,獎(jiǎng)勵(lì)是稀疏的,這意味著智能體很難獲得獎(jiǎng)勵(lì),甚至需要正確執(zhí)行很長序列的動(dòng)作才能得到環(huán)境的反饋,導(dǎo)致智能體很難學(xué)到解決目標(biāo)任務(wù)所需要做的動(dòng)作,無法學(xué)習(xí)到給定的任務(wù)。另一方面,由于缺少獎(jiǎng)勵(lì)信號(hào),智能體需要與環(huán)境做大量的交互,獲取足夠多的樣本數(shù)據(jù),這會(huì)導(dǎo)致算法訓(xùn)練的非常緩慢,甚至無法收斂。因此,本文考慮如何為智能體提供額外的獎(jiǎng)勵(lì)信號(hào)來源,稱之為內(nèi)在獎(jiǎng)勵(lì)[1]。
特征提取模塊中使用的是不進(jìn)行參數(shù)更新的卷積神經(jīng)網(wǎng)絡(luò)。卷積神經(jīng)網(wǎng)絡(luò)是一種特殊的神經(jīng)網(wǎng)絡(luò)模型,專門用于處理具有相似網(wǎng)格結(jié)構(gòu)的數(shù)據(jù)。卷積是圖像處理中一種有效的特征提取方法,而我們的實(shí)驗(yàn)環(huán)境為Atari視頻游戲,它的表現(xiàn)形式是一幀幀的圖像,所以我們使用卷積神經(jīng)網(wǎng)絡(luò)提取狀態(tài)的特征。不進(jìn)行參數(shù)更新的原因在于,首先我們需要穩(wěn)定的內(nèi)在獎(jiǎng)勵(lì)項(xiàng),由于卷積神經(jīng)網(wǎng)絡(luò)是固定的,所以在整個(gè)訓(xùn)練過程中,提取到的所有狀態(tài)的特征向量都是通過同一個(gè)范式得到的,保證了用特征向量做差得到的內(nèi)在獎(jiǎng)勵(lì)項(xiàng)是穩(wěn)定的;其次,如果要訓(xùn)練特征提取模塊中使用的卷積神經(jīng)網(wǎng)絡(luò),是比較困難的,雖然我們可以采取ICM模型[5],但這會(huì)大大增加模型的量。
為了測試本文提出的基于內(nèi)在獎(jiǎng)勵(lì)機(jī)制的算法的有效性,必須要有一個(gè)合適的環(huán)境來進(jìn)行測試。由于我們的算法是稀疏獎(jiǎng)勵(lì)相關(guān)的,我們需要外在獎(jiǎng)勵(lì)稀少的場景。本文從Open AI Gym工具包中選擇了Atari視頻游戲中的Space Invaders和Freeway。
Space Invaders提供的是一個(gè)具有相對密集的獎(jiǎng)勵(lì)反饋的環(huán)境,而Freeway則提供的是一個(gè)智能體進(jìn)行需要搜索才能得到獎(jiǎng)勵(lì)的稀疏獎(jiǎng)勵(lì)環(huán)境[6]。我們選擇這兩個(gè)環(huán)境,一個(gè)獎(jiǎng)勵(lì)信號(hào)相對密集,另一個(gè)獎(jiǎng)勵(lì)信號(hào)稀疏,可以更好地看到本文所提出的內(nèi)在獎(jiǎng)勵(lì)生成算法在稀疏獎(jiǎng)勵(lì)環(huán)境下的優(yōu)越性。
選擇的基礎(chǔ)強(qiáng)化學(xué)習(xí)算法為A2C,它是在Actor-Critic算法的基礎(chǔ)上,使用優(yōu)勢函數(shù)代替Critic網(wǎng)絡(luò)中的原始回報(bào)[7]。比較原始A2C算法與添加了內(nèi)在獎(jiǎng)勵(lì)機(jī)制的A2C算法(稱之為IBA2C算法),分別在Space Invaders和Freeway下的表現(xiàn)效果。需要注意的是,由于智能體的目標(biāo)是最大化來自環(huán)境的獎(jiǎng)勵(lì)信號(hào)值,所以在實(shí)驗(yàn)結(jié)果對比中,只使用了外在獎(jiǎng)勵(lì)值,內(nèi)在獎(jiǎng)勵(lì)項(xiàng)是沒有使用的。
從實(shí)驗(yàn)結(jié)果可看出,在Space Invaders場景中,A2C算法IBA2C算法基本上有相同的性能表現(xiàn),IBA2C算法的表現(xiàn)稍稍優(yōu)于A2C算法,兩者都能夠很快地到達(dá)一個(gè)很好的收斂。這表明,在外在獎(jiǎng)勵(lì)密集的場景下,智能體無須做很多的探索,僅僅依靠外在獎(jiǎng)勵(lì)信號(hào)的指導(dǎo),就能夠?qū)W會(huì)完成目標(biāo)任務(wù)。在外在獎(jiǎng)勵(lì)稀疏的Freeway場景中, A2C算法的表現(xiàn)很糟糕,智能體基本上無法獲得任何的外在獎(jiǎng)勵(lì),而IBA2C算法表現(xiàn)優(yōu)異,在經(jīng)過大約2.4e7個(gè)時(shí)間步的訓(xùn)練后,可以快速得到一個(gè)很好的效果。實(shí)驗(yàn)結(jié)果表明,本文提出的內(nèi)在獎(jiǎng)勵(lì)機(jī)制在稀疏獎(jiǎng)勵(lì)場景下可以顯著提高性能。
本文針對稀疏獎(jiǎng)勵(lì)場景下的內(nèi)在獎(jiǎng)勵(lì)機(jī)制進(jìn)行了研究。引入內(nèi)在激勵(lì)機(jī)制,提出了一種新的內(nèi)在獎(jiǎng)勵(lì)生成算法。本文提出的內(nèi)在獎(jiǎng)勵(lì)生成算法利用一個(gè)固定的卷積神經(jīng)網(wǎng)絡(luò)提取狀態(tài)的特征向量,把相鄰的兩個(gè)狀態(tài)的狀態(tài)特征向量的歐式距離作為內(nèi)在獎(jiǎng)勵(lì)項(xiàng)。將內(nèi)在獎(jiǎng)勵(lì)與外在獎(jiǎng)勵(lì)合成為一個(gè)獎(jiǎng)勵(lì),使用這個(gè)合成的獎(jiǎng)勵(lì)信號(hào)來指導(dǎo)智能體的學(xué)習(xí)。最后,把提出的內(nèi)在獎(jiǎng)勵(lì)生成算法與A2C算法結(jié)合在一起,在Atari視頻游戲場景Space Invaders和Freeway中進(jìn)行了對比試驗(yàn),實(shí)驗(yàn)結(jié)果表明,本文提出的內(nèi)在獎(jiǎng)勵(lì)生成算法可以顯著地提高智能體在稀疏獎(jiǎng)勵(lì)環(huán)境下的表現(xiàn)。