INTRODUCTION

在這個資訊爆炸的時代,人工智慧的研究正如火如荼的展開,其中最受到大家關注的就是強化學習(Reinforcement Learning,簡稱RL)的發展與應用。在這股潮流之中,理應對其有所瞭解,再加上如今網路上各種開源資源唾手可得,我們便打算利用這些資源,探索這個領域,以加深對其的認識。

想要對RL有透徹的理解,實作絕對不可或缺。因此,我們從OpenAI這個開源環境中的眾多Atari games裡選擇了Pong這個遊戲作為訓練的對象。這是一個類似乒乓球的遊戲,玩家有一個競爭對手,雙方互相擊球,先取得21分者獲勝。之所以選擇Pong,是因為它勝負明確、富挑戰性,卻又不至於太過複雜,很適合做為RL實作的環境。

我們使用了名為Tensorflow的機器學習開源軟體庫,因為相較於其他同類型的軟體庫,Tensorflow較新且資源較多。至於RL方法則是選擇了Deep-Q-Network (DQN) 和Asynchronous Advantage Actor-Critic (A3C) 兩種。兩個方法都是使用Convolutional Neural Network (CNN) 作架構,觀察遊戲畫面並決定下一步的行動。

經過一段時間後,我們所訓練的玩家已經可以每一局都獲得勝利,且幾乎不會讓對手得到分數。

DQN的理論與實作方面參考了Volodymyr Mnih等人於2015年發表的論文,以及Ziyu Wang等人的論文。A3C則是Volodymyr Mnih等人在2016年6月發表的論文。


Fig. 1


Fig. 2


Fig. 3

心得感想

雖然在這次的專題研究中,我們並沒有做出多大的成果,但還是獲益良多。不僅對於強化學習有了更深入的了解,對於做研究的方法也有了更深刻的體驗,寫code、debug和讀paper的能力也上升許多。老師和學長在過程中非常照顧我們,給了我們很多幫助和鼓勵。儘管現在的我們還有許多地方需要加強,希望未來能持續進步,變得獨當一面。