やねうらお について

BM98,BMSの生みの親 / ヒルズにオフィスのある某社CTO / プログラミング歴37年(5歳から) / 将棋ソフト「やねうら王」開発者 / 音楽理論ブログ / 天才(らしい) / 毎日が楽しすぎて死にそう

クレクレ乞食がうpをはじめました

私の家の先月の電気代の請求が来ました。消費電力から計算してみると定跡生成のために使用したPCの電気代はおおよそ5万円。まだ1ヶ月ほど回さないと思っているところまで生成が終わらないので結局定跡生成には10万円ほどかかる見込みです。

続きを読む

Stockfish DD – movegen 指し手生成

今回はStockfishの指し手生成についてです。チェスと将棋では駒の特性が全く違うので、チェスを将棋に変更する場合、この部分は全面的に書き直しが必要となります。

面白いことにチェスではポーン(pawn = 将棋で言う歩)以外は移動に上下の対称性があるので先後の区別がありません。先手も後手も盤上で同じ動きをするので、将棋のように先手用の指し手生成と後手用の指し手生成とを分ける必要がありません。
続きを読む

やねうら王が弱すぎた件

今回、電王戦でponanzaと戦う村山慈明(むらやま やすあき)七段の電王戦公式動画が非常に興味深いです。

村山七段「ポナンザとやるっていうのがちょっと誤算なんですね。ポナンザ以外だと結構僕も勝率良かったんですよ。やねうら王とか習甦とかもよくやってたんですけど。(電王戦出場が)決まる前に。やねうら王とか全然…少なくともその入っているパソコンで勝負した感じは全然僕のほうが強かったですね。ポナンザは全然次元が違うんですよ。強さの次元も違う上に感覚の次元が違いすぎて、ついていけないんですよ。」
続きを読む

それ本当に過学習?

prediction(棋譜との指し手一致率)が上がっている限り棋力は上がっていくと言う話をpredictionと棋力との関係に書きました。

ボナメソで学習させるとしてもiterationが50を超えた辺りからpredictionの伸びは非常にゆるやかになっていきます。ついでに言うと、条件によっては、このあと学習させればさせるほど弱くなっていきます。

人はこれを過学習と呼ぶかも知れません。
しかし本当にこれは過学習でしょうか?

続きを読む

将棋電王戦リベンジマッチ観戦記

日頃、私が大変お世話になっているライターの坂本寛さんが将棋電王戦リベンジマッチの観戦記を書かれたようです。

続きを読む

Stockfish DD – notation 指し手文字列に変換

今回は指し手をUCIの指し手文字列に変換する部分を見ていきます。将棋ではUCIではなくUSIプロトコルとなっています。以下、UCIと書いてある部分はUSIと読み換えて理解してください。

UCIプロトコルでは、思考を開始する局面は、普通、startpos(平手の初期局面)からの指し手を示す文字列が送られてきます。と言うことは、常識的には、UCI表記での指し手文字列を思考エンジンが内部で使っている指し手構造体に変換する必要があります。ところが、Stockfishにはこの変換をダイレクトに行なう関数は存在しません。さて、どうやっているのでしょうか。

続きを読む

MultiPVと手加減モードとの関係

コンピューター将棋が強くなりすぎた結果、相手が人間(アマチュア)の場合は、手加減しないと勝負にならなくなってきました。

従来、探索深さを浅くしたり(depth limit)、探索ノード数を制限したり(nodes limit)、思考時間を制限したり(time limit)することによって弱さを実現してきましたが、それだと自然な弱さにはなりませんでした。(序盤がすごく弱いのに終盤だけが相対的に強いというような…)

続きを読む

ブラウザ版やねうら王のサイト名を募集しています!

ブラウザ版やねうら王について」に書いた通り、ブラウザ版のやねうら王を作ることに決まったのですが、このやねうら王公式サイトにぶら下げるとアクセスを捌き切れない可能性があるので専用のサイトを作ろうと思います。 しかし、私がサイト名を考えると『裏王倶楽部24』とか『裏王ウォーズ』とかになって、どこかの会社から怒られかねないので、サイト名を今日のコメント欄もしくはツイッターにて募集します。

続きを読む