Yoshiki's notes
   


About
Open source software, shogi and my life outside of workplace.

Yoshiki Hayashi

Subscribe
RSS

Flavours

  • index
  • circa 1993
  • RSS
  • February
    Sun Mon Tue Wed Thu Fri Sat
           
    21 22 23 24
    25 26 27 28      


    Categories

           
    Mon, 09 Jan 2006

    Qt 4.0.1
    GPS 将棋 viewer を Qt 3.3.3 と Qt 4.1.0 では build できるようにしたけど、 ThinkPad に入れてる Debian unstable に入っていた Qt 4.0.1 で build しようとしたら FORM3 が無いらしく ビルドできなかった。QApplication の setMainWidget が無いなんてのも 言われた。ちょうど久々に aptitude から package を更新したら Qt 4.1 になったので面倒そうな Qt 4.0 はステ。

    [/shogi] permanent link

    Sat, 07 Jan 2006

    Mac OS X とGPS将棋 Viewer
    Mac OS X native の Qt で GPS 将棋の viewer を動かせるようにしてみた。 まぁ、開発のほとんどは実は Qt3 から Qt4 への port で、OS X への port で はまったのは動的ライブラリの search path だけだったりするけど。結局 bundle に放り込んでごにょごにょというのが面倒なので static link にして回避してしまった。 Viewer 自身よりは、OSL を compile するために boost-jam を fink の unstable から install して boost を source から build したり、 Qt for Mac を source から build したり、といった方が面倒だった。

    Qt3 と Qt4 はソースレベルでも非互換なので、移植を簡単にするために Qt3 support ライブラリが用意されているとはいえ、なかなか面倒だ。 しかも、全面的に移行するわけではなく、Qt3 でも build できるように しようとしたのでさらに面倒になった。一番面倒だったのは、 Qt の meta object compiler が cpp 使わないで字面だけ見て meta object を 作成するので、Qt4 用と Qt3 用の signal と slot の定義を書かなかければ いけなかったことかな。

    [/shogi] permanent link

    Sat, 29 Oct 2005

    GPS将棋と対局
    この前の王者戦のときに、自分のプログラムに勝てる人はいるのか、という竜王の 質問に対して手を挙げるほど自信がなかったので、久々に普通に対局してみる (GPS 将棋の大部分は自分の開発じゃないけど)。 どうしても GPS 君と指すと読み筋が外れまくるために適当に読んで指し始めて 悪くなる、というパターンそのまままに、何かふと良さそうな手が目に入ったので 当初の読み筋から変えて指してみると、自分が歩を取ったためにその筋に相手の 歩が打てるようになり、角が死んでしまうというひどい見落としをして負け。

    で、気をとりなおしてもう一局指してみる。今度は、相手が手損で駒組みが 不十分な間に、雀刺しで特攻をかけて勝ち。これまた適当に攻め過ぎたせいで 切れないかひやひやしたが、GPS はこういうのをちゃんと受けるのは非常に 苦手としているので大丈夫だった。しかし、徐々に接戦になってきているような 気がする。まだ5分以上には戦えると信じたい。ちなみに、5月の選手権バージョンの 激指には勝てる気がしない。ラッキーパンチの入りやすい環境でたまたま一回 勝ったけど、差はまだまだ大きい。

    相変わらず、相手が水平線でうろうろしている間に組み上げて粉砕か、 万全の態勢で無理攻めを誘って撃破というパターンでいくらでも勝てそうな気は するけど、追い抜かれる日は近いんだろうな。まぁ、そうなるように開発している わけではあるけど。

    開発者とプログラムが協力して指すような大会があれば、結構優勝の可能性が あるんじゃないか、と思ったけど、現状だともっと将棋強い人がだめプログラムと 一緒にでて、プログラムの指し手を全部無視して指した方が強いことに気がついた。:-)

    [/shogi] permanent link

    歩の価値
    やはり、歩切れペナルティは駒台の2枚目以降の価値とあってるのが良かったみたいだ。 実は、進行度の関係で駒1枚の価値は約16倍にインフレしているのを忘れていたせいで、 2枚目以降の歩の価値は当初目論んだ半分ではなく、1/32になってしまっている。 そこで、1/16, 1/8, 1/4 と実験してみたところ、全部12勝8敗で現行のものに 勝ち越すという嫌がらせみたいな成績。たかだか20局で6割だと誤差みたいなもんだし、 どうしたものか。

    [/shogi] permanent link

    Thu, 27 Oct 2005

    歩切れペナルティ
    歩切れでかつ歩の総数で負けていたときに歩の1/32のペナルティを与えるようにしたら 12勝6敗2千日手だったので採用。久々のダブルスコアだけど、なんか納得行かない。 2枚目以降の持ち歩の減点が最大歩の1/32でそれに合うようになったのが良かったの だろうか。

    Local maximum に向かってまっしぐら、という気もしなくもないがしばらくは 地道に強くしてみよう。

    [/shogi] permanent link

    Mon, 24 Oct 2005

    コンピュータ将棋王者決定戦
    重役出勤で会場に着いてみると、なんと苦手の TACOS 相手に勝っているのを発見。 しかし、後で聞いてみると、実は必敗の局面で最後のお願い王手をしているときに TACOS が落ちてしまったとのこと。実質 TACOS には3連敗。 次はちゃんとした将棋を指して勝ちたいものだ。

    次の備後将棋戦もへろへろで、普通に完敗してしまった。KCC や IS に善戦した 昨日の勢いはどこへ行ってしまったのだろうか。まぁ、実力発揮といったところだろうか。 もっと強くしないと。今回の大会はマシンの性能とか、いろいろ制約のせいで 皆本来の実力は発揮できていなかったようだ。上の方も、普通に読みが足りなくて 一発カウンターパンチを喰らって沈むというのが頻発していた感じ。 中盤で気が付くと大差になってる将棋も多かったし、ちゃんと opteron で チューニングされた探索深さまで行かないと厳しいみたい。まぁ、こういうことを 言ってると今回の大会の意義はなんだったんだろう、という気もしないでもないが、 十分に探索できなければ上位も圧倒的な強さではないということがわかったのが 成果かな。

    今日は午前中で終わりのため、他のメンバーが OS 再インストールとかをしている 間に重役らしく :-p プロ棋士の指導将棋を見てまわる。こういう将棋を見たのも 10数年ぶりでかなり新鮮。実力差があったり、駒落ちで ハンデがあったりしても斬り合いになれば不利な方に勝ち目がでてくというのは コンピュータのと同じ。

    飛び入りで千葉さんがコンピュータ将棋の解説をしてくださったのだが、 千葉さんの解説がテレビのより輪をかけて爆笑なのを知っていれば指導対局にも 申し込んだのに、という気分。ブランクがあるとはいえ、飛車落ちか 角落ちくらいだと将棋になるんじゃないかなぁ。駒落ちの定跡は2枚落ちしか 知らないけど。

    [/shogi] permanent link

    Sun, 23 Oct 2005

    Embarassingly Parallel
    全然依存関係がなくて、ほぼ完全に並列に走らせられる問題のこと。

    やっても研究成果とかにはならないので誰もあえて言ったりしないけど、並列に走らせると当然一番効率が良い。並列実行の話で耳にたこができるくらい聞くAmdahl の法則参照。 例えば、将棋の問題集の問題をたくさん解く場合、2CPUを使って一つの問題を 並列探索をするよりも それぞれの CPU に別々の問題を解かせた方がトータルでは速い (問題の数が1でなければ)。

    とかいううんちくは置いといて、opteron 16 個もあるのに使わないのはもったいない、 ということで rsh 呼びまくる ruby script を書いて mtdfstat (gpsshogi の問題解く用プログラム) を実行させてみる。 今 4 CPU を使ってるけど、簡単に実現可能で単純にほぼ1/4に時間が短縮されるというのは すばらしい。

    ちなみに今は GPS 将棋の改良の評価方法はだいたいが自己対戦で、ときどき 問題集という感じ。これでもうちょっと問題集による評価の回数も増やすことが できるかな。問題集は問題点の発見と regression test みたいな感じで使えるのがよい。 さすがに自己対戦で棋譜を眺めるのは時間がかかるので。強くなってきてしまったので、 ちゃんと考えないで指摘できるような問題点は減ってきているし。

    [/shogi] permanent link

    コンピュータ将棋王者決定戦
    朝行ってみると、何と激指相手に善戦していた。ちょうど着いたところで 勝又さんのこれは逆転か、という解説が聞こえてきて、やっぱりだめだったか と思ったら逆転していたのは GPS 将棋の方だった。

    前回の選手権に続いて初戦から大金星。前回の優勝者に宣言して初戦で勝って 隅一というジンクスを作りそうだったが、初日最終日の竜の卵戦にも勝って 隅一のジンクスは無くなった。(金子さんによる宣言は冗談だったはず なんだけど...)

    将棋まつり系のイベントにでるのは15年ぶりくらいの気がするけど、 交通の便がそんなに良くないからか、会場自体がでっかいからか それほど入りが良くないように見えた。 昔行ったことのあるデパートで開催されているのは、会場自体が狭かったのも あるだろうけど、人でいっぱいでもっと活気があったような気がするなぁ。 子供の数も少い気がする。お子さんのいらっしゃる皆様、集中力を 養うのに効果的なので是非将棋を教えてあげましょう。

    [/shogi] permanent link

    Tue, 30 Aug 2005

    JavaScript を使った編集可能な将棋盤
    棋譜再生の次の段階として、盤面編集用将棋盤を 作ってみた。CSA 形式の盤面の読み込み、書き出しが可能。 全然プログラムが美しくないが、とりあえずは気にしないことにした。 そのうち気が向けば綺麗に書き直されるであろう、たぶん。

    [/shogi] permanent link

    Sat, 30 Jul 2005

    JavaScript を使った棋譜再生可能な将棋盤
    一応基本的な機能は実装したので、JavaScript による棋譜再生可能な 将棋盤を公開。

    駒は手書きのをちょっとだけ綺麗にしたものなのであんまり綺麗でなかったり、 あんまり見栄えに手を入れてなかったりするけど、まぁ実用には供するのでは ないかと。

    [/shogi] permanent link