Timing Actions in Games through Bio-InspiredReinforcement Learning
通過生物啟發式強化學習在游戲中定時動作
https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10766547
摘要
一種受生物啟發的強化學習(RL)版本可以用于在完全神經形態的機器人中學習規劃動作,允許感知、處理、動作規劃和控制,同時保持端到端的脈沖信號。這樣的智能體可以充分利用稀疏、低功耗的編碼,并揭示生物智能的秘密。當前神經形態RL的最先進水平使用神經元群體來實現傳統的RL方程,結合新穎的脈沖狀態表示方法,并通過在一個8×8網格世界中離散狀態定義下更新神經連接權重來實現學習。我們調整并擴展了該算法,使其適用于能夠玩高度動態游戲的全神經形態機器人。在本文中,我們將RL算法與一個空氣曲棍球機器人模擬器集成在一起;將維度加倍,現在狀態是連續的。我們展示了我們可以調整該方法以學習精確的“擊打時機”,當冰球在機器人前面移動時,機器人必須選擇正確的時機攔截冰球,并將其擊向對手的球門。我們還引入了一種發展性的學習方法——課程學習(CL),使機器人首先學習簡單的任務,然后可以將其推廣并完善為更復雜的場景。簡化的空氣曲棍球場景展示了未來全神經形態管道的良好前景。
I. 引言
由于生物體在現實環境中的高效性和適應性,它們為解決機器人技術中的動態任務提供了靈感。這一洞察推動了神經形態機器人的發展,這些機器人利用大腦啟發的計算原理進行感知、知覺和控制。一個例子是神經形態iCub[1],配備了事件驅動的神經形態視覺和觸覺傳感器,被用作驗證神經形態技術和計算在機器人技術中的平臺。目標是開發一條從感知到控制的全神經形態管道,使像iCub這樣的機器人能夠有效地與動態環境互動,如圖1所示。
iCub機器人[1]嵌入了被稱為事件相機[2]的生物啟發視覺傳感器,其輸出類似于人類視網膜在光感受器/電路檢測到像素級別的顯著亮度變化時發出的脈沖。這種感知模式能高效捕捉目標動態,因為它們具有低延遲、高時間分辨率和數據壓縮的特點。
盡管生物啟發的感知和知覺已經被廣泛研究[2],但這里關注的是使用強化學習(RL)的生物啟發決策算法。為此,Bartlett等人[3]應用了類似網格細胞的生物啟發表示形式,在Gym Minigrid任務[4]中應用于RL,展示了比傳統表示方法在收斂時間和效率方面的優勢。然而,所提出的方法僅在小規模Minigrid任務中進行了評估,其中智能體在一個離散網格中導航至目標,只需要少量的狀態維度。
為了驗證使用事件相機作為輸入和生物啟發RL模型的全神經形態系統iCub玩空氣曲棍球的能力,我們評估了Minigrid變體[3]是否可以擴展到這樣一個具有挑戰性的任務,使用由達姆施塔特工業大學[5]發布的挑戰提供的空氣曲棍球模擬器。雖然我們尚未成功訓練機器人玩完整的空氣曲棍球游戲,但我們專注于讓機器人沿著單一軌跡學習精確的擊打時機,但速度和起始位置有所變化。
空氣曲棍球任務提供了比Minigrid任務大得多的狀態空間(見圖2)。在Minigrid[3]的情況下,智能體是一個非完整移動機器人,使用三維狀態(x, y, θ)描述其當前位置和方向,并在一個離散的8x8網格中導航。而在空氣曲棍球場景中,智能體是一個三自由度(DoF)平面臂,滑動末端執行器抓住的球棒沿桌面移動。由于環境復雜性的增加,網絡需要更具描述性的狀態,包括諸如末端執行器和冰球位置以及冰球速度等變量。
狀態空間的更高維度(從三個維度增加到六個維度)使得學習變得更加困難且耗時更長,實驗結果也證明了這一點。因此,我們還探索了使用課程學習(CL)[6]的有效性,我們在其中訓練RL網絡先掌握簡單任務,然后再應對更困難的任務。這種方法模仿了生物體學習新技能的過程,通過分解問題來解決復雜性逐漸增加的任務[7],[8]。
本工作的主要貢獻是:
? 將Bartlett等人[3]實施的神經網絡集成并在空氣曲棍球挑戰Mujoco環境中重新調整。代碼公開可訪問。
? 訓練這種網絡進行精確的時間動作以攔截移動的冰球。
? 確定最佳的網絡參數和超參數,使其與更高維度的狀態表示兼容。
? 展示了CL與生物啟發表示相結合的優勢。
? 使用空間表示法,迄今為止僅用于描述位置信息,以編碼間接依賴于位置的速度。
盡管空氣曲棍球挑戰要求智能體在游戲中運用所有策略,例如進攻或防守,但我們專注于一個測試案例,冰球沿直線水平移動,機器人有兩個可用操作來構建軌跡。
這種設置提供了一個可重復的基準實驗,可以變得越來越復雜。最終目標是證明生物啟發可能是提高學習動作時機效率的關鍵。
II. 方法
我們使用的神經形態強化學習(RL)[3]包含三個組成部分:狀態表示、突觸權重更新(學習)以及策略估計。一個機器人模擬器在根據策略執行的動作與下一時間步的更新狀態之間形成閉環(見圖5)。隨著權重的更新,機器人的動作策略會進行調整,從而改善行為以隨著時間推移獲得更多獎勵。圖3展示了這些組件是如何連接的。
A. 狀態表示
從機器人模擬器中提取的環境狀態被轉換為一組活躍神經元的生物學啟發式表示形式,如文獻[3]所述。對于空氣曲棍球任務,末端執行器和冰球的位置及速度都會影響所選擇的動作,因此狀態 (X) 定義如下:
在深度強化學習方法中,上述狀態表示將是神經網絡的輸入,該網絡被訓練以輸出任務的正確策略。然而,這將要求網絡學習策略以及一個合適的神經狀態表示,以便能夠表達該策略。在本文采用的基于生物學的表示方法中,我們利用對大腦機制的理解,將狀態編碼為一種神經表示,使得第一層神經元已經具有靈活且有用的狀態表示。特別是,連續狀態輸入被轉換為一種稱為空間語義指針(Spatial Semantic Pointer,簡稱SSP)的高維向量表示[9],該表示又由一群神經元表示。
先前的研究探索了獨熱編碼[10],其中編碼是唯一的。然而,位的利用率低,以及SSP表示[3]、[11],其中產生的神經活動類似于網格細胞[12]、[9],均勻覆蓋狀態空間,并與使用的自我中心狀態空間完美對齊,即 。SSP統一了數據驅動和認知方法,允許在適合神經網絡的向量空間中操縱和組合特征空間以形成更復雜的結構[13]、[14]。作為一種受生物學啟發的方法,SSP在較小的任務中已被證明是有效的,而這項工作將其應用擴展到處理空氣曲棍球挑戰所需的更大狀態空間。
我們的任務超越了這三個維度,并結合了兩個不同的代理[3]。我們使用神經群體來表示狀態,其優點是仍然實現了編碼空間的高利用率(即與使用獨熱編碼相比),但神經活動仍然保證是稀疏的。因此,高輸入狀態維度可以在群體中相對較少的神經元中編碼。雖然先前的工作[3]已經表明這種表示風格在減少所需學習試驗的數量和學習魯棒性方面是有利的,但本文是首次在更復雜的機器人任務中使用這種方法。
SSP通過分數綁定實現連續值狀態信息的編碼到向量S中,分數綁定通過圓周卷積[15]實現。對于狀態的每個元素(例如,),定義一個高維單位向量 [X, Y] 并計算其傅里葉變換 F(X),然后將其提升到指數 x,即 。然后將所有轉換后的分量相乘,并取逆傅里葉變換,即:
S的大小表示可以表示的輸入空間的大小,而不會發生重復使用值的情況,這在使用的圓周卷積中可能會發生。然后,隨機的SSP通過一組固定的權重(Wencoders)和一個修正線性激活函數來激活狀態神經元,從而激活大小為N的神經群體。(CreateAMind)
B. 學習
學習是通過更新產生策略的值數組 V(s) 的輸出權重來實現的。重要的是,由于我們已經通過SSP方法得到了一個有用的神經表示,因此只需要學習神經網絡的輸出權重。這使得學習規則成為一個簡單的基于增量的學習規則,并避免了對誤差反向傳播的需求。因此,我們用來估計的方程是傳統強化學習(RL)的方程,但學習結果是通過網絡權重更新實現的。我們使用了一個演員-評論家(actor-critic)框架,其中評論家模塊評估性能,而演員(即代理)模塊選擇動作以最大化獎勵。評論家的權重估計價值函數:
C. 策略估計和機器人動作
策略定義了機器人對于任何輸入狀態將采取的動作。定義了一個離散的動作空間 A ,并且基于當前策略做出動作選擇,使得:
這提供了在利用和探索之間的權衡,隨著權重的收斂,這種權衡會隨著時間的推移而衰減。
在我們實驗中,機器人的動作被定義為目標末端執行器的位置。由于機器人在連續空間中操作,無法在網絡的單個更新步驟中到達這些位置,因此必須在多個時間步驟中選擇正確的動作以獲得獎勵并成功執行。使用模擬器中機器人模型提供的逆運動學和PID控制來移動機器人,并且在機器人運動時可以更改目標位置。代理還應該在沒有任何先驗知識的情況下考慮動態效應,如慣性。
D. 課程學習
在強化學習策略中需要克服的一個困難是探索高維狀態在計算上過于昂貴,以至于在合理的學習時間內難以實現。像通過示范教學這樣的方法,是一條捷徑,它通過提供一個非最優但合理的解決方案來簡化對整個狀態空間的探索,機器人可以在此基礎上進行改進。課程學習(Curriculum Learning,簡稱CL)是另一種方法,旨在通過逐步增加問題的復雜性來提高學習速率。問題的整個復雜性最初對系統是隱藏的,機器人能夠解決一個更簡單的問題,并將簡單的解決方案適應到更復雜的問題上。受人類學習機制的啟發,CL在各種機器學習應用中已被證明是有效的[19]。
我們通過讓網絡接觸實驗任務的兩個步驟來實現CL。一旦在第一步中學會了簡單的問題,第二步就引入了更難的問題(即任務的其余部分)。為此,代理必須在以前未見過的狀態中重新應用已知的策略。雖然傳統的RL具有獨立值的離散狀態[16],但所提出方法的神經編碼部分地重用了已經訓練過的神經元,允許在這些新狀態上應用先前的策略,而無需對這些新狀態進行任何學習。
我們通過重新設計實驗過程,而不是修改網絡架構或步驟更新,來實現系統的CL。
E. 網絡調優
空氣曲棍球任務代表了對MiniGrid挑戰[3]的顯著擴展,考慮到環境的連續性和更高維度的空間,以及因此增加的陷入次優動作的概率。
III. 實驗
實驗是使用提出的強化學習方法與空氣曲棍球游戲環境的模擬器集成進行的。模擬的3自由度機器人臂學會了以精確的時機擊打移動的冰球。
仿真環境由達姆施塔特工業大學提供,該大學組織了一個機器人空氣曲棍球挑戰賽[5],提供了一個開放的Python仿真環境,該環境利用MuJoCo作為實時物理引擎。表II顯示了模擬器的規格。
所有實驗的設置都是相同的,機器人末端執行器從桌子上的一個固定點開始,空氣曲棍球冰球以恒定速度水平穿過桌子,如圖4所示。機器人被限制在垂直于冰球路徑的直線上移動,因此機器人的任務是學會在末端執行器和冰球路徑的交點處以精確的時機擊打冰球。
對于機器人任務,可能的動作集合 A被定義為機器人控制器應嘗試到達的空氣曲棍球桌上的位置。通常,機器人需要超過一個時間步長才能完成動作。因此,機器人的位置和運動存在于連續空間中。由于這種連續性,代理可以通過從一個動作切換到另一個動作來調節末端執行器的軌跡,使得動作序列的選擇對于獲得獎勵至關重要。定義了兩個最終位置,如圖4所示:
在所有場景中,網絡的行為都由一個相同的獎勵系統 R(s, a) 指導,該系統以分段函數描述:
在整個回合中,網絡一直保持零獎勵,直到球桿擊中冰球使其向對手的球門方向移動時,代理將獲得1的獎勵。
進行了三個實驗,并在表III中進行了總結:
實驗1:驗證了在所提出環境中的學習。網絡學習1500次試驗,每次試驗包括100個步驟。在每次試驗中,初始冰球速度在1.5到1.8米/秒的區間內隨機變化,而初始y位置是恒定的,等于-0.3米。在1500次試驗結束后,網絡權重被凍結,最終策略被評估。
實驗2:研究了使用CL的RL與不使用CL的RL的能力。沒有CL的網絡必須學習一個復雜的任務,即在單次運行中隨機位置和速度,而使用CL的網絡則分兩個階段學習。在第一階段,網絡被訓練以擊打以固定速度移動的冰球。當獎勵和執行時間(以仿真時間步數衡量)都收斂時,網絡停止并將權重保存。保存的權重被用作起點,以解決更復雜的任務,其中冰球速度在1.5到1.8米/秒的范圍內變化,初始位置范圍從-0.3米到0.3米。
實驗3:旨在使用CL學習更廣泛的速度范圍,與第二個實驗相比,每次試驗隨機選擇在1到2米/秒之間。鑒于在隨機速度上學習的權重,網絡在第二次運行中被訓練在-0.3米到0.3米之間的位置,每次試驗隨機選擇。由于冰球可以達到比實驗2更慢的速度,一次試驗的步數從100增加到200,允許代理觀察完整的軌跡。
IV. 結果
實驗1:學習
網絡在不到700個訓練周期內收斂到一個穩定的策略,實現了最大獎勵,之后機器人能夠持續擊中冰球,如圖5a所示。在同一時間點,執行擊打所需的步驟數下降到一個穩定的值,少于25步,如圖5b所示。這意味著機器人能夠精確估計何時以及如何移動以在第一個可能的實例中擊中冰球。
圖5c顯示了單個訓練周期中末端執行器位置的示例,比較了第25個(未訓練)周期和第150個(半訓練)周期的擊打動作。代理在第25個周期中大約需要60步才能擊中冰球,末端執行器軌跡反映了一種探索性策略。相比之下,經過150個周期的訓練后,代理能夠在少于25步內準確擊中冰球。因此,通過交替使用可用的動作(見第三部分),網絡學會了在精確的空間和時間攔截冰球,以最大化冰球沿正x分量軌跡移動的機會。這種方法允許代理優化動作時機。
實驗1:執行
訓練完成后,機器人能夠在1.5至1.8米/秒的速度范圍內正確擊中冰球,如圖6所示。因此,網絡能夠區分冰球速度的差異,并產生適當的擊打時機策略。對于較慢的冰球初始速度,網絡在起始位置等待的時間步數比對于較快的冰球速度要多,并選擇正確的時間開始擊打動作。
實驗2:課程學習
圖7顯示了使用CL的影響,將收斂時間從861個周期減少到359個周期,節省了58%。收斂被定義為代理在100步內持續擊中冰球的試驗之后。因此,CL是訓練所提出的生物啟發式強化學習的一個有價值的方法,可能允許復雜任務以減少的訓練周期數量逐步學習。
實驗3:擴展場景中的課程學習
在實驗2中CL顯示出有希望的結果之后,我們擴展了問題的復雜性,學習更廣泛的速度范圍,并應用了CL。圖8顯示了在兩個連續運行中,獎勵和步驟數隨試驗變化的趨勢,首先訓練隨機冰球速度,然后訓練隨機冰球位置和速度,從第一次運行中學到的權重開始。在CL的第一階段(見圖8a),代理在大約300次試驗中獲得一致的高獎勵,大約需要30步就能用末端執行器擊中冰球。在CL的第二階段,也是更困難的階段(見圖8b),代理在1500次試驗后獲得高獎勵。在這種情況下,完成擊打任務大約需要50步,這比預期的要多,因為機器人必須等待更多的步數來應對速度較慢的冰球,大約在1米/秒左右。
實驗3:執行
在訓練后獲得結果之后,網絡在推理中進行了測試。圖9a顯示了代理能夠擊中它已經訓練過的冰球位置,但對于未知的初始位置,即在訓練期間未考慮的位置,代理不能輕易擊中冰球。圖9b驗證了最終網絡對所有測試的初始冰球位置和速度表現出適當的行為。繪制的末端執行器軌跡確保了網絡不僅僅是重放每個場景中學到的動作序列,而是根據各種起始冰球位置和速度調整其行為。
V. 結論
這項工作展示了利用生物啟發式強化學習(RL)在復雜動態環境中為機器人提供概念驗證。我們集成了一個神經網絡和一個機器人模擬器,使用生物啟發式狀態表示,即隨機空間語義指針(SSP),作為網絡的輸入。這種新穎的應用比之前的工作解決了更復雜的問題,之前的工作集中在更簡單、低維的狀態空間上。
選擇了空氣曲棍球挑戰[5]來探索具有同時代理和目標運動的實際應用。我們的實驗將游戲限制為以隨機初始速度和位置擊打冰球。神經網絡與空氣曲棍球模擬器的集成可作為未來研究的基準。
結果表明,在700-861個周期內成功學習,推理確認機器人能夠在25個時間步內定時動作。引入課程學習(CL)將收斂時間減少到359次試驗。進一步的CL探索顯示了稍高的收斂時間(300次和1500次試驗),這是由于冰球軌跡的變異性增加,機器人大約在50步內擊中冰球。CL優化支持生物啟發式學習的效率。
未來的工作可以將此設置推廣到更復雜的場景,包括具有更多自由度的機器人平臺,如神經形態iCub,以及各種目標運動。這將涉及定義更多的動作并擴大神經元數量以覆蓋完整的狀態空間。在神經形態硬件上部署網絡將加速學習和推理。
彌合仿真與現實之間的差距,初始冰球位置和速度將由高頻事件驅動的跟蹤器估計,使用iCub進行測試[22]。
此外,單層SSP編碼是有效的,因為我們假設我們可以直接從模擬器觀察機器人和冰球的狀態。根據傳感器對狀態的可觀測性,可能需要進一步開發系統(例如添加潛在神經元層)以適應現實世界的RL。
這些步驟旨在開發一個具有生物啟發式傳感器的完全神經形態系統,實現類似于人類的高效決策、規劃和動作執行。了解神經形態強化學習與傳統方法和基本啟發式方法相比的性能優勢也將是有趣的。最終,這種方法可能會徹底改變自主機器人系統在動態環境中的能力。
原文鏈接:https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10766547
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.