
摘 ?要:相較國際象棋人機對戰程序的開發,中國象棋人機對戰的設計更具有難度,然而我國相關學者人數并不多,具備研發人機對戰自學習能力的學者更為缺乏。本文探究了通過激勵學習算法訓練神經網絡、利用有效的算法學習兩種中國象棋人機對戰自學習辦法,以便為中國象棋人機對戰的開發提供參考。
關鍵詞:中國象棋;人機對戰;自學習
作者簡介:馬麟(1966-),女,河北清河人,本科學歷,陜西省體育運動學校中職講師,國家級象棋大師,國家級象棋裁判,多次進入全國女子個人錦標賽前六名,研究方向:中國象棋。
[中圖分類號]:G891 ?[文獻標識碼]:A
[文章編號]:1002-2139(2015)-33--01
自從國際象棋研發人機對戰系統后,世界各國學者將研究目標轉向規則、棋路更為復雜的中國象棋。中國象棋是一種將兩軍對戰轉化為利用棋子博弈的游戲,對戰雙方在下棋時,充分活躍自身的思維,將形象思維與邏輯思維的作用發揮到極致。
一、中國象棋人機對戰的自學習的具體方法
(一)通過激勵學習算法訓練神經網絡
象棋對戰機器的學習方法共有三種:激勵學習、監督學習以及無監督學習。其中監督學習必須由導師輔助完成,導師在智能體運行狀態時,告知智能體正確動作,并要求智能體記憶。無監督學習中只存在輸入集,之后通過輸入集之上的實例進行分組學習。激勵學習是人類在智能體在接觸環境過程中,通過給予智能體即時簡單的獎勵信號,使智能體在不斷的嘗試中,逐漸趨向合理的行為。激勵學習有別于其他方法,區別在于人類并不告知智能體行為的對錯,而是讓其主動與外界接觸,不斷嘗試,借由收到的獎懲信息,積累學習經驗,以便確認哪種行為可以收到獎勵信號,從而對這種行為進行學習,無限逼近最優行為。
現今,棋類博弈算法多采用TD學習算法以及Q-學習算法。TD學習算法結合了蒙塔卡洛思想與動態規劃思想,一方面TD算法無需借助系統模型的幫助,即可從智能體所獲取的經驗中進行學習。另一方面,TD算法與動態規劃的運行過程相同,迭代通過預估所得的值函數。Q-學習算法與TD算法的主要區別在于,Q-在進行學習迭代時,采取狀態-動作對等獎賞以及采用Q*(s,a)作為估計函數,而不同于TD函數所采用的狀態獎賞和V(s),因此智能體在每次進行學習迭代時都需對行為過程進行全面考察,以保證其規范學習過程。
神經網絡應用廣泛,各種問題均可以借助神經網絡幫助解決,其作用主要有三類:分類、模式識別、函數逼近。BP神經網絡得到廣泛普及,成為目前非線性控制系統中使用的主流神經網絡模型,因其能夠解決當多層網絡存在隱層時,導致學習存在障礙的問題。BP算法屬監督學習,對神經網絡訓練而言,只能通過批量提供輸入輸出對的方法進行。然而許多實際應用的智能體不能識別最優策略,因此無法獲取輸入輸出對。因此可將BP神經網絡與激勵網絡融合為一體,形成新模型:RBP模型,該模型能夠幫助BP網絡從實際系統中獲取學習經驗,并以此作為參考改變學習策略,其過程是向最優策略無限逼近的過程,且在學習過程中無需由導師進行監督。該模型可以將所學知識用以訓練精神系統,從而使網絡逐漸達到最優狀態。現將神經網絡運用于棋類對戰機器中,使其作為棋類對戰的評估函數,機器通過不斷地對戰,利用激勵學習算法對網絡物產進行預測,進而訓練神經網絡,機器可通過誤差反向傳播的方法,對節點的權值進行反復的修正,從而使棋類評估函數愈發精確。
(二)利用有效的學習算法學習更合理的參數
無論評估函數有多復雜,都可以將其列作多項式。中國象棋的評估函數中至少含有五個方面的要點,而每一要點中又包含許多參數值,線性的將其組合在一起從而得到最終評估值。然而這樣編出的程序,其棋力的高低,完全取決于編程者對象棋的理解,之后即使通過手調節,也很難提高機器的棋力。
若評估函數由經驗累積而得,其參數也必定是由經驗的積累而產生。因此利用某種學習算法以修改評估函數中的各個參數,則能達到更為理想的效果,機器的下棋水平逐漸提升。
相機對戰機器可利用瞬時差分TD算法以尋求最為合適的參數組合。TD屬激勵學習,設計者可將全部棋子子力值配置歸一,同時結合Alpha-Beta搜索方法,利用TD算法修該棋子的子力值,以達到有過中國象棋參數的目的。
棋子子力值更新的具體公式如下:
其中:
和分別代表棋子的權值和當前局勢中該棋子對己方提供的優勢。設我方棋子“車”,計算時除以2,若你場上“車”的數量為二,而對方為一,則計算返還值為。
先將前式的梯度與求和展開:
之后讓機器進行大量的游戲對戰,為機器提供經驗值,一定數量的練習之后,即可使機器與他人對戰。
二、結束語:
就目前來說,中國象棋人機對戰博弈技術的研究尚處于探索階段,擁有極大的發展空間。由研究象棋機器博弈的所得的技術成果,不只可以用做娛樂,也可用做保護社會安全,模擬城市可能出現的危險,或進行軍事對戰模擬綜合提升我國軍事力量,人機對戰技術的研究無論理論意義或是應用前景都有其不可替代的價值。
參考文獻:
[1]陳業鵬. 基于Alpha-Beta搜索算法的中國象棋人機對戰的設計與實現[J]. 計算機光盤軟件與應用,2012,04:197-199.
[2]周明明. 基于專家系統和蒙特卡羅方法的計算機圍棋博弈的研究[D].南京航空航天大學,2012.