コンピュータ将棋の調べもの(主に自分用メモ)

新しい取り組みをするときに先行者の成果を調査します。

研究者だとサーベイと言われるやつです。(今頃ですんません)

 

ハードウェアの話。

電王トーナメントと異なりコンピュータ将棋選手権ではハードウェアが統一されていないため色物のハードウェアを持ち込むことが可能です。

今回コンピュータ将棋のネタでFPGAを使おうと思ったのですが,既に相当の完成度のものをボンクラーズやPuella αで有名な伊藤さんがA級リーグ指し手1号として実装されています。ということでアルゴリズム的に全然違うとしてもぱっと見ウケのFPGA実装はあんまり面白くないってことで。(そういえばSDT5の懇親会でPuella αのソース見ておいてはどうかとどなたかにアドバイス頂いてた。)

A級リーグ指し手1号

(今まで知らんかったんかと言われそうw)

 

探索部の話。

Stockfishってのがチェス界ではレジェンドでしてこのソースを参考にするのが将棋でも相当有効ってことで随分引っ張ったようです。近頃はそうでもないらしく,やねうら王はかなり独自の進化を遂げているようです。(大変荒い説明)

Stockfishがもたらさなかったもの | やねうら王 公式サイト

Stockfish DD – search 探索部 | やねうら王 公式サイト

 

1月の勉強会でも話したネタなんですが,チェスと囲碁と違って将棋はちょっと人間とコンピュータで違う雰囲気になっています。チェスについては駒の動かし方程度しか知らなかったのですが,最近少し学んだところ結構争点の作り方の難しいゲームでうっかりすると盤上の駒が減って引き分けが多くなるようです。囲碁は盤上に石が詰まってきて終局です。それに比べ将棋は駒の数が40枚で終始変わりません。

つまりチェスと囲碁は比較的単調に終局に向かい,ある程度手数が予測される。将棋は状況次第では手数が伸びて,場合によっては終盤に見えたものが中盤に戻るなどの展開も珍しくない。取った駒を打つルールのためです。特に攻め駒を相手の守り駒と交換し自陣を堅める展開は長期戦になりますね。

(そういえばプロの対局でも何か壮絶なヤツがこの前ありましたね)

コンピュータの場合,疲れを知らないので長期戦でのミスというと残り時間が不足して探索が甘くなる展開が考えられます。まぁ,そういうのを狙ってやってるのが昨今のコンピュータ将棋の争点のひとつになります。

有効な手筋のみを選んで深く読むのが枝狩り,序盤中盤終盤の時間配分の制御も重要な課題です。極論時間さえ無限にあればこれらは不要となります。

 

評価関数の話。

ここは色々とあるのですが,ざっくりBonanza以前以後で切って良いと思います。

そもそも探索と評価は対になるものです。終局まで読める探索があれば途中評価は不要で,一手先の完璧な評価が可能であれば深い探索など不要なのです。で,妥協点を探すわけなのですが,玉形,駒の働き・・・と人間の知見に基づく数値化の歴史にかなりドライな評価を入れたのがBonanzaで三駒関係と言われるものです。上記にあるとおり将棋は40枚の駒で局面が作られます。このうち玉を含めた三駒の位置関係に評価値を与え総和を取ったものがBonanzaの評価関数です。現在のコンピュータ将棋においてもこの考えが引き継がれて,これに手番を加えた形で利用されています。

次にこの評価関数の作り方ですが,Bonanzaにおいてはプロのデータに基づいて数値を定めていたようです。NDFが深く読んだ評価値を浅い評価値で予測可能とする手法で革新を起こし,さらにwcsc27のelmoがこれに勝敗補正の項を追加したものになっているようです。現在では補正項の入れ方や学習用の局面の準備法などが争点となっているようです。そういえば,読み太さんは進行度入れてますね。

この辺の最新事情はかっぱさんのブログが詳しいですね。

qhapaq’s diary

 

クラスタリングの話。

計算機を束ねることで速度アップを図ろうとする試みですね。随分前から半分仕事半分趣味で取り組んでいるのでちょっと詳しいおじさんなわけですが,木探索においては使いにくいですね。

実際wcsc27において,さくらインターネットの高火力サーバを用い総計1092CPUコア・128GPUを動員したPonanza ChainerやAWSで64並列でc4.8xlargeを動員した技巧であっても,elmoのm4.16xlargeの1ノードに及ばなかったわけです。

(クジラちゃんは何と表現したらいいんだろう。)

まぁ,うちは少しはアイデアがあるんで上手に使えたら少しは役に立つような気もします。問題はクラスタリングで強くなるかどうかのテストを行うには膨大な金がかかるってこと,というか当日の対戦だけでも諭吉さんがフライアウェイな感じでしょ。物量の勝負したくないなぁって感じですね。

 

ブログに書いてるけど,これアピール文書書く前の頭の整理だよなぁ。

まだ,何か抜けてる気がするが追記する予定でww

(間違いの訂正に関してツッコミ大歓迎)