解説記事を出すぜ、の件

とりあえず作ってみたので、配布されたスペック表*1にこっそり書いて運営の方に提出したところ、基本的に今日は拾わないらしかったので、ここでちょっとだけアピールしてみる*2

システムの概要は以下のとおりです。

入出力は以下のとおり。

入力:csa形式の棋譜ファイル
出力:して読み筋と評価値を記載したcsvファイルと解説記事のcsvファイル。

棋譜を評価値の動きによって以下の5パターンに分類する。

一方的:評価値が、勝った手番側で常に推移しており、最大評価値が300より大きい
中逆転:評価値が、負けた手番側に300-1000点内で推移した後、勝利する
大逆転:評価値が、負けた手番側に1000点以上に推移した後、勝利する
良い勝負:評価値が60手まで-300-+300で推移する
その他:上記のパターン以外

そのパターンごとに対局のポイントとなった「ポイント手」を定義し、そのときの手と読み筋を抽出する。その手が勝った手番が指した手であれば「好手」、負けた手番であれば「悪手」であるとする。

一方的:勝った手番側に最も評価値が大きく変化したときの手とする
中逆転:負けた手番の最大評価値になった後、初めて負けた手番の最大評価値のx%の値まで戻したときの手とする
大逆転:負けた手番の最大評価値になった後、初めて負けた手番の最大評価値のx%の値まで戻したときの手とする
良い勝負:勝った手番の最大評価値のx%の値になったときの手とする

上記で取得した情報(その他総手数など)を構造体にパックし、記事を生成する関数に渡す。
テンプレを用意しておいて、そのテンプレに構造体の情報を代入し、htmlファイルとして出力する。


ということで、評価値が正しく出ない弱いプログラムだと上手くいかないのです。
だからなんか変な結果が多かったです。
しかも、詰まされてから自滅手さすバグのおかげで、対局後にまともに棋譜を出せなかったです。
だからあまり記事出力を紹介するタイミングなかったです。
やらかしたなー、せっかく独創賞あったのにチャンス逃した気がする。

あと、ポイント手の出力条件はもう少し考えないとだめだなー。
出せた記事今見てるけど、評価値の大小だけだと上手くいかないということが判明したので。

*1:参加者に渡される使ってる技術を追記する紙

*2:アピールしなかった自分が悪いのです

なんということでしょう

今日のの通信テストで千日手がぜんぜんできていなかったことが判明。
千日手であることすら認識されてなかったな・・・、なぜだろう・・・。

hashの計算をしていないモードだと、千日手認識できないんだけど、たぶんそんなモードになってないと思うんだよな。
明日現場で確認してみよう。

白砂将棋 vs さわにゃんRL

なんかこの対局で試してみたら、それっぽいのができたので、一部だけ紹介してみる。
ちなみに日本語がつたないのは、将棋の記事とか読んだことがほぼないので、コロケーション合ってるのとか、将棋用語あってるのとかいろいろ調べてたら日本語直すの面倒になったから、というのは内緒です。

しかし・・・、しょぼいな・・・。
明日だけでなんとかなるんかな・・・*1
ところで、さわにゃんがやらかした対局だからさわにゃんさんに了承得てからブログに上げるべきなのでしょうが、さわにゃんさんだから許してくれると信じてみます。

第22回コンピュータ将棋選手権におけるさわにゃんRLと白砂将棋の対局が5月3日(木)に、東京都調布市電気通信大学で行われた。
振り駒の結果先手さわにゃんRL、後手白砂将棋と決まった。
勝負審判の開始の合図に合わせさわにゃんRLが68王と初手を指し、厳かな雰囲気の中対局が始まった。

序盤から対局はさわにゃんRLの一方的な展開となった。
みるみると差を広げるさわにゃんRLの見事な指し回しに白砂将棋の勝機はないとの見解を持った方がほとんどだったのではないだろうか。
さわにゃんRL優勢のまま対局は進み、そのままさわにゃんRLが押し切るかと思われたが、ここで形勢を一変させる一手が指されることになった。
69手目の32飛打である。

図より△69桂成▲22全△79金打という展開が考えられ、さわにゃんRLにとって分が悪い展開となった。
思わぬ形で出てしまったこのミスにより、形勢はじわじわと白砂将棋へと傾いていくことになった。
このまま白砂将棋のペースで対局は進んでいき、活路を見出すべく粘りを見せたさわにゃんRLだったが時すでに遅し、80手目87金を静かに見届け、投了となった。
序中盤の明らかな劣勢から驚異的な粘りを見せ大逆転を演じた、白砂将棋の名局となった*2

*1:無理です♪

*2:「〜の名局となった」って将棋記事として正しい表現なのかしら

とりあえず、意味があるかわかんないけど、たたきだけ作ってみた

棋譜解析から新聞記事もどきを作る件、叩きだけどできた!
後はランダムで何パターンか用意すればそれっぽくごまかせるはずだ!
あしたのぼくがんばろう。
ただあまりにもしょぼいので人に見せたくないぞ問題が発生しているのだけれどどうしよう。

ところで、棋譜でポイントとなる手が悪手か良手か判定させていたんだけど、なんか今のアルゴリズムだとほぼ悪手になるようで。

つまり、
ほとんどの将棋は悪手で形勢が変わるのだ。
という話になりそう。

まあだいたいあってるのかも。

いまさら

強くするのは難儀なので、OCしてみたらYSSベンチで5.7s→5.2sになった・・・。
これは・・・、突き進むべきか・・・。

去年はやりすぎたら稀に落ちたので、それなりの値に自重したのでした。

そもそもその2

wimaxの接続状況が悪すぎて、ネットにつながらない時間のほうが圧倒的に長い環境に引っ越したせいで
皆さんのブログにコメント載せるぜと宣言しているにも関わらず、全然書いてないなあと、口ばっかりだなあ、
と思ったので、調子のよい今日を使ってご挨拶に回ってみたいと思ってみたり(一文が長い)。

そもそも

そもそも独創賞なんて今年あるのかどうかわからない中で、去年の5/24に独創賞取るぜと宣言してしまっているのに、
何もやらないのはあまりにもイカんでしょ、という意味を込めて、
棋譜解析機能から、対局のタイプ分けおよび対局のポイントとなる着手の抽出機能を付けてみた(一文が長い)。

タイプごとにポイントとなる手が異なるので、それぞれガリガリ条件わけして書いている。
とりあえず、記事っぽい出力ができるところまで来ればいいなあと、思って残り実質一週間なのですよ。

とまあここまで作っても、激指の解析機能と雲泥の差があるわけで。