人間に勝つコンピュータ将棋の作り方

本日読了。

人間に勝つコンピュータ将棋の作り方

人間に勝つコンピュータ将棋の作り方

将棋の清水女流王将(当時)に情報処理学会公認の「あから2010」が勝利した話を軸に、トップ級のコンピュータ将棋の作者達が考えを語る。あから(阿伽羅)は10の224乗を表し、将棋の全ての局面の近似値である。あから2010は合議制を採用しており、激指、GPS将棋、Bonanza、YSSがそれぞれの結果を持ち寄り、合議して手を決めるようになっている。
コンピュータ将棋は、基本的にはミニマックスαβ法を軸に、評価関数および学習方法を工夫した作りである。読みの深さを順次反復深化することで、思考時間を調節できるとともに、読みの順序を並び替えることでαβ法の効果を最大化できる。一度読んだ局面はハッシュテーブル化することで、二度読みを防止する。優先度の高い読み筋に限定して読みの深さを深くすることで、効果的な読みが出来る。この際、0.5手ずつ読みを深くするといった手法がある。プロの棋譜を教師データとして学習するが、勝敗も考慮したり、自身の浅読みと深読みの分散を最小化したり(自身の深読みを教師データとする)などのテクニックにより、学習が最適化される。