私の家の先月の電気代の請求が来ました。消費電力から計算してみると定跡生成のために使用したPCの電気代はおおよそ5万円。まだ1ヶ月ほど回さないと思っているところまで生成が終わらないので結局定跡生成には10万円ほどかかる見込みです。
投稿者「やねうらお」のアーカイブ
Stockfish DD – movegen 指し手生成
今回はStockfishの指し手生成についてです。チェスと将棋では駒の特性が全く違うので、チェスを将棋に変更する場合、この部分は全面的に書き直しが必要となります。
面白いことにチェスではポーン(pawn = 将棋で言う歩)以外は移動に上下の対称性があるので先後の区別がありません。先手も後手も盤上で同じ動きをするので、将棋のように先手用の指し手生成と後手用の指し手生成とを分ける必要がありません。
続きを読む
やねうら王が弱すぎた件
今回、電王戦でponanzaと戦う村山慈明(むらやま やすあき)七段の電王戦公式動画が非常に興味深いです。
村山七段「ポナンザとやるっていうのがちょっと誤算なんですね。ポナンザ以外だと結構僕も勝率良かったんですよ。やねうら王とか習甦とかもよくやってたんですけど。(電王戦出場が)決まる前に。やねうら王とか全然…少なくともその入っているパソコンで勝負した感じは全然僕のほうが強かったですね。ポナンザは全然次元が違うんですよ。強さの次元も違う上に感覚の次元が違いすぎて、ついていけないんですよ。」
続きを読む
トップコーダーはいまこそ将棋ソフトの開発に参加すべき
最強最速アルゴリズマー養成講座 プログラミングコンテストTopCoder攻略ガイドの著者として名高い高橋 直大さんがコンピューター将棋の開発に興味を持っておられるようです。
それ本当に過学習?
prediction(棋譜との指し手一致率)が上がっている限り棋力は上がっていくと言う話をpredictionと棋力との関係に書きました。
ボナメソで学習させるとしてもiterationが50を超えた辺りからpredictionの伸びは非常にゆるやかになっていきます。ついでに言うと、条件によっては、このあと学習させればさせるほど弱くなっていきます。
人はこれを過学習と呼ぶかも知れません。
しかし本当にこれは過学習でしょうか?
将棋電王戦リベンジマッチ観戦記
日頃、私が大変お世話になっているライターの坂本寛さんが将棋電王戦リベンジマッチの観戦記を書かれたようです。
書きました! / コンピュータに対するプロ棋士の秘策とは!? 将棋電王戦リベンジマッチ観戦記 | 日刊SPA! : http://t.co/Br8Q41sP7r
— 坂本寛 (@skmt164) January 6, 2015
Stockfish DD – notation 指し手文字列に変換
今回は指し手をUCIの指し手文字列に変換する部分を見ていきます。将棋ではUCIではなくUSIプロトコルとなっています。以下、UCIと書いてある部分はUSIと読み換えて理解してください。
UCIプロトコルでは、思考を開始する局面は、普通、startpos(平手の初期局面)からの指し手を示す文字列が送られてきます。と言うことは、常識的には、UCI表記での指し手文字列を思考エンジンが内部で使っている指し手構造体に変換する必要があります。ところが、Stockfishにはこの変換をダイレクトに行なう関数は存在しません。さて、どうやっているのでしょうか。
MultiPVと手加減モードとの関係
コンピューター将棋が強くなりすぎた結果、相手が人間(アマチュア)の場合は、手加減しないと勝負にならなくなってきました。
従来、探索深さを浅くしたり(depth limit)、探索ノード数を制限したり(nodes limit)、思考時間を制限したり(time limit)することによって弱さを実現してきましたが、それだと自然な弱さにはなりませんでした。(序盤がすごく弱いのに終盤だけが相対的に強いというような…)
ブラウザ版やねうら王のサイト名を募集しています!
「ブラウザ版やねうら王について」に書いた通り、ブラウザ版のやねうら王を作ることに決まったのですが、このやねうら王公式サイトにぶら下げるとアクセスを捌き切れない可能性があるので専用のサイトを作ろうと思います。 しかし、私がサイト名を考えると『裏王倶楽部24』とか『裏王ウォーズ』とかになって、どこかの会社から怒られかねないので、サイト名を今日のコメント欄もしくはツイッターにて募集します。