nounai.output(spaghetiThinking);

趣味と実益を兼ねて将棋プログラム(研究ツールなど)を作ってみたいと思う私の試行錯誤とか勉強したことを綴ってゆく予定です。 主目的はプログラミングの経験値稼ぎですが、コンピュータ将棋の製作も目指してみたいとも考えています。

MVCっぽい考察

前回前々回の実装を通して、将棋をするための基盤(Model)部分の設計についてそれなり考えられるようになってきました。前回前々回にやってたことはMVCにおけるModel部分ですが、今回は盤の部分や駒の操作(Moveみたいなこと)についてです。MVCのVも絡んだ、視点的にはちょびっとマクロな話題になります。思いついたことを書き殴っておくことにします。


続きを読む

81Dojoブログパーツの導入

最近は将棋ウォーズよりも81Dojoを使うことが多いです。なにより秒読みがあるのが嬉しいですよね。将棋ウォーズは持ち時間が短すぎて、どうしてもひらめきで指さざるを得ないので。
ときに、森下九段は米長先生の研究会で「10秒将棋は将棋が弱くなるからやりたくない」と発言しておられるようです。深く考える習慣や力がなくなるから、といった理由だったと記憶していますが、私も最近は同じことを感じています。10秒将棋然り、10分切れ負け然り、超が付くレベルの早指しは正直辛いです。その点81Dojoは非常に良い。個人的にはCSAフォーマットにも対応して頂けると最高です。

で、本題。ブログパーツがリリースされたという一文を見つけたので早速ここでも入れてみました。多分、PCであればページ右側にそれっぽいのがあるはずです。


続きを読む

棋譜フォーマットについて[JSON]

このような棋譜フォーマットに関する提案を見つけました。基本的に知恵袋はあまり好きではないんですが、これに関しては非常に面白かったので取り上げてみます。


続きを読む

csaファイルの読み込み - 改行コードとか前段階的な処理とか

改行コードの判別+各行のふるい分け(バージョン/開始局面など)を簡易的に実装してみた。

OS標準の改行コードと、棋譜データ内で使用される改行コードは必ずしも同一ではない、ってことがちょっとやっかいですね。私がコード書いてる環境はLinux(改行=LF)ですが、棋譜データはたいていwindows(改行=CR+LF)上で作成されているため、若干めんどくさいことになっていました。


続きを読む