[發明專利]一種基于強化學習的愛恩斯坦棋博弈算法在審
| 申請號: | 201910375250.6 | 申請日: | 2019-05-07 |
| 公開(公告)號: | CN110119804A | 公開(公告)日: | 2019-08-13 |
| 發明(設計)人: | 袁儀馳;吳蕾;姚超超;李學俊;陸夢宣;沈恒恒 | 申請(專利權)人: | 安徽大學 |
| 主分類號: | G06N3/04 | 分類號: | G06N3/04;G06N3/08;A63F11/00 |
| 代理公司: | 合肥方舟知識產權代理事務所(普通合伙) 34158 | 代理人: | 朱榮 |
| 地址: | 230601 安*** | 國省代碼: | 安徽;34 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 博弈算法 強化學習 棋盤 價值評估 強化學習算法 樹搜索算法 策略計算 動作選擇 進化機制 人類水平 網絡參數 行為策略 博弈 訓練集 自學習 對弈 下棋 學習 | ||
1.一種基于強化學習的愛恩斯坦棋博弈算法,該博弈算法包括以下步驟:
(1)神經網絡初始化:
系統初始化時創建神經網絡;隨機初始化或者從文件讀取神經網絡參數;初始化博弈樹;初始化樣本收集器;其中,所述的神經網絡包括策略網絡與價值網絡;
所述的策略網絡包含輸入層、隱層、輸出層;所述的輸入層包含42個神經元;所述的隱層有3層,每層包含20個神經元,激活函數為所述的輸出層包含18個神經元,激活函數為Softmax;
所述的價值網絡包含輸入層、隱層、輸出層;所述的輸入層包含36個神經元;所述的隱層有3層,每層包含20個神經元,激活函數為所述的輸出層包含1個神經元,激活函數為
(2)算法執行:
當學習標志為真時,系統進行計算機自對弈模擬,對弈雙方共用所述的神經網絡,均使用APV-MCTS算法進行動作選擇;模擬完一盤棋后,所述的樣本收集器會收集下棋動作的樣本,并將收集的樣本送往價值網絡和策略網絡的訓練集,隨機選取一定量的數據對神經網絡進行訓練,然后進行下一盤棋的模擬;
其中,所述的APV-MCTS算法每次Rollout的步驟分為選擇動作、擴展、賦值、更新反饋;
當執行APV-MCTS算法時,
所述的選擇動作的公式為a=argmax(V(s')+U(s,a))。其中V(s')為基于狀態s執行動作a后到達的狀態s'的價值;其中c為探索系數,設定值為c=5;P(s,a)為策略網絡計算輸出的概率因子,a為基于當前狀態s所產生的動作;N(s)為狀態s訪問次數;N(s')為基于狀態s執行動作a后達到的狀態s'的訪問次數;
所述的擴展是在搜索到博弈樹的葉子節點LeafNode時,計算葉子節點所表示的棋盤狀態能進行的所有下棋動作,以及這些動作執行后的棋盤狀態,將這些狀態作為新的節點擴展為葉子節點LeafNode的子節點;
所述的賦值是在博弈樹進行節點擴展以后,直接通過價值網絡計算擴展后得到的節點所表示的棋盤特征來計算節點的價值V(s),s為當前棋盤狀態;
所述的更新反饋時V(s)的更新公式為V(s)=(V(s)*N(s)+Vleaf)/(N(s)+1),其中,所訪問節點的訪問次數N(s)=N(s)+1,Vleaf為最近一次Rollout所擴展選擇的葉子節點Node的價值;
當蒙特卡洛樹搜索過程結束后,選擇執行下棋動作公式為a=argmaxP(root,a),其中P(root,a)=Na^(1/t)/∑Nb^(1/t),其中Na代表表示動作a執行后所達棋盤狀態s'的節點的訪問次數;Nb表示基于此動作執行前的棋盤狀態s通過執行合法下棋動作所能達到的所有棋盤狀態的節點的訪問次數之和;t為溫度,當訓練時t→0,以增加神經網絡收斂時的穩定性,下棋時t=1;為確保訓練時每種動作都會被嘗試到,加入狄利克雷噪聲,此時P(root,a)=(1-ε)Pa+εηa,其中η~Dir(0.03),ε=0.25;
訓練時每次執行APV-MCTS算法選擇下棋動作后,樣本收集器記錄下棋前的棋盤狀態和骰子點數,并將其分別轉換為策略網絡和價值網絡的輸入特征向量,并記錄每個根節點的子節點的訪問次數并將其轉換為概率t存儲在策略網絡的訓練集中作為樣本的輸出標簽向量;
每一盤游戲結束后,通過游戲結果對棋盤價值賦標簽值z,贏家為1,輸家為-1,存入所述的價值網絡的訓練集中作為對應樣本的輸出標簽向量;設一盤游戲的下棋步數為n,樣本采集結束后,在價值網絡和策略網絡的訓練集中分別隨機選擇n個樣本對網絡進行訓練;
所述的策略網絡的損失函數為loss=-t*logp+c||W||2,所述的價值網絡的損失函數為loss=(z-v)2+c*||W||2,L2正則化參數為c=0.0001;學習率α的初始值為0.01,使用學習率遞減,每隔1000盤降為原來的1/10;
當算法的博弈水平或者訓練時間達到人為設定的設定閾值時,系統停止自對弈過程并停止數據的收集以及神經網絡的訓練,存儲神經網絡參數文件;
當需要用到此算法進行博弈時,選用此算法策略的電腦玩家加載已存儲的神經網絡參數,并使用APV-MCTS算法進行動作計算以選取下棋動作。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于安徽大學,未經安徽大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910375250.6/1.html,轉載請聲明來源鉆瓜專利網。





