棋譜をVTK形式で見てみる

昨年の竜王戦あたりから観る将になった。 コンピュータ将棋にも興味をもつようになった。 自分もなにかしてみようと思ったけど、人工知能に詳しいわけでもなく、プログラミングが出来るわけでもない。どちらも興味はあるし、やれば学べることは多いと思うがなにか違うことがしたい。

自分は初心者なので、将棋の対局で何が起こっているのか全然分からない。 だからまずいろいろ可視化してみようと思った。観る将から視る将へ。 とはいえプログラミング能力が低いのでなるべく手軽に手を付けたい。 vtk形式で書き出してparaviewで読み込むことにした。 vtk形式は以下を参考にした。 qiita.com

棋譜は第28回世界コンピュータ将棋選手権結晶リーグのApery対妖怪惑星Qhapaqのものを大会HPから頂戴した。 はじめてお目にかかる棋譜ファイル。CSA形式は検索したらすぐにフォーマットがわかった。 データは9×9の各マスに駒に対応する数値データを以下のようにいれていくことにした。 一手毎の各局面を積み重ねていって一番下が初期配置、一番上が投了時点の局面となっている。 空白のマス:99 歩兵FU:1、と金TO:2 香車KY:3、成香NY:4 桂馬KE:5、成桂NK:6 銀将GI:7、成銀NG:8 金将KI:9 角行KA:10、竜馬UM:11 飛車HI:12、竜王RY:13 玉将OU:14 先手駒が正の値、後手駒が不の値

f:id:kinonotofu:20180511001812p:plain

先手が青で後手が赤。空白はのセルはThreshold付けて最大値14にして見えないようにした。 んーもうちょっと感覚的にわかるようにならないものか。 きれいな絵を作るだけでもいいかもしれないけどそれはそれで難しそうだし。 一応ファイルは下から。ParaViewじゃなくてもvtk形式に対応していればたぶんみれるはず。

kifu.vti - Google ドライブ

気が向けば断面切ったりいろいろどうぞ。