ひよこカルロ将棋neo v1.71がR2100を突破

まだ対戦数が少ないので、このあと下がるかも知れませんが、ひよこカルロ将棋neoは瞬間的であれR2100を超えたことはなかったと思うので、以前のバージョンよりは強くなっていることは間違いなさそうです。

ついでに、ひよこカルロ将棋v1.71の実行ファイルを公開しておきました。

駒得のみ+αでgps_normalに迫る勢いです。dfpnを並列化したり(いまはdfpnはシングルスレッドでやっているので他スレッドが待たされていることがあります)、なんやかやするとまだR50か100ぐらいは伸ばせると思うので、頑張ればgps_normal(R2150)と互角ぐらいにはなりそうです。(こちらはCore i7 860、あちらは昔のOpteron 1コアだった気がするのでマシンスペックは全然互角じゃないです。念のため。)

dfpnの並列化は結構大変なんですが…GPS将棋はやっているんですよね。さすがです。

あとは前向き枝刈りもざっくざくにやってみたいのですが、前向き枝刈り、駒得のみの評価関数ですと下手にやると逆効果になる気がしてあまりやってないのです。このへんもうまくいけばさらにR50か100ぐらい伸びるとは思います。(私の力でそこまで伸ばせるかどうかはわかりませんが)

駒得のみ+αの評価関数のワールドレコード(そんなのあるのか?)を更新しつづけるひよこカルロ将棋neoの今後の活躍にご期待ください。

プログラムを書かずして対Bonanzaで勝率8割にする方法

インチキ全開の方法なのでここに書かないほうがいいのかどうかは知りませんが、世界コンピューター将棋選手権用で優勝を狙っている人に向けて。

まず、序盤早々に角交換します。そうしますと角換り腰掛け銀同型になる可能性が極めて高いです。

そのあと、角換り腰掛け銀の同型の局面からBonanzaと対戦を進めます。Bonanzaのほうは思考時間をいろいろ変えつつ、Bonanzaの指した手とこちらは1手10分ずつぐらいかけて指した手を定跡DBに書いていきます。10分もあればiterationは20〜25回ぐらい回るでしょう。

そうやって、Bonanzaが指しそうな手をすべて定跡DBに書きだして、詰みの局面まで定跡DBを作ってしまいます。

仮に、Bonanza7になって、この定跡DB通りに進行しないとしても、途中まではこの定跡DB通りに進行するはずで、その間、こちらはノータイム(正確には1手1秒)で指せるのに対して、Bonanzaのほうは湯水のように時間を消費します。

おそらく定跡DBから外れるまでにBonanzaのほうは半分ぐらいの時間を使い果たしており、こちらは時間をほぼ丸々残している状態になります。それもこちらは1手10分ぐらい考えた指し手なので定跡DBから外れた時点では、多くの場合こちらが有利な局面でのスタートとなります。

思考時間が倍も違うと同ソフト対決では勝率8割程度になる上に、こちらが有利な局面でスタートするですから、8割かもしくは9割ぐらい勝ち越してもおかしくありません。

なお、この方法は公開されているソフトすべてに通用します。

Bonanzaライブラリ使用(ライブラリ使用というか、プログラム無改造で、定跡ファイルの編集のみなのですが)であれば、プログラムを一行も書かずとも出場できますし、この方法で優勝できる可能性も高いです。

石にかじりついてでも勝ちたいという方はやってみてはいかがでしょうか。(会場で罵倒されたりブログが炎上したりするかも知れませんが、そのへんは自己責任で…)


くどいようですが、私は選手権に出る予定はいまのところありません。

接待ひよこ将棋 v1.71 32bit版を公開しました

「接待ひよこ将棋の32bit版を用意してくれ!!」という声が聞こえてきたので公開します。

Windows7 x86にて動作確認しました。ただし、CPU自体はSSE4.1対応でなければなりません。

もともと64bitOS用に特化して設計していたので、それを無理やり32bit OS用にしているので64bit版に比べると2,3割ぐらい遅いようです。

まあ、もともと接待用ですので弱くともそれほど問題はないかも知れませんが。

ひよこカルロ将棋neoがR2150を突破!!

ひよこカルロ将棋neoがR2100を超えて、まぐれかなーと思っていたら、gps_normalに2-0-0で勝ち越して、現在R2166。

このあとgps_normalとSunfish1.10Test_7との戦績次第では一気に落ちる可能性もありますが、もしかしたらgps_normal(R2150)は超えたのかも知れません。

興味深いので、あと2,3日このまま投入しておきます。

自己対戦の勝率だけが上がっているのかと思っていたのですが、ひよこカルロ将棋neoの場合はそうでもなかったようです。

こうなったら、ひよこカルロ将棋neoの次の目標はSunfish(現R2220)ですね。Sunfishに勝ち越せるようになるまでひよこカルロ将棋neoの開発を続けます!!

ひよこ将棋は良きライバルに恵まれて幸せです!!

難問題集が解けるようになる日

コメント欄でいただいたコメントに返信を書いていたらあまりの長文になったので、コメント欄ではなくここで返信させていただきます。

通りすがり 2011/12/03 22:18
順調に強くなってますね凄いです !
ちょっと質問なのですが、ひよこの作者様の技術ならコンピュータ将棋の苦手な寄せの入口の発見は可能になりますか? 難問題集なんかをやらせてみると、数手進めてやらないと正解が分からないみたいなんですが、いかがでしょうか?

数手進めれば正解がわかる場合というのは、読みの深さ(≒読むための時間)が足りていないということなので、PCのスペックが上がれば自然とそういう問題も解けるようになります。

PCスペックが上がらずともソフトの改良によってそういう問題が解けるようになるかというのがご質問の意図だと思うのですが、これは、ソフトの改良が一概に難問題集の正答率アップにつながるとは限らないです。

なぜなら、難問題集は、tacticalな(戦術的な)問題が多く、実戦に現れないような筋がたくさん出てくるからです。ソフトの改良とはいわば実戦に向けてチューンし、実戦での勝率アップを目標とする場合がほとんどですから、ソフトを改良すればするほど、そういったtacticalな問題は解けにくくなります。

以上は、私の持論ではなく一般論かと思います。


ただし、dfpnによる詰将棋探索などはそういう戦術的な問題のうち、詰み/不詰めが絡む場合になら有効に作用することが多々あるので、そういう終盤向けの改良は、終盤の難問題に対しては正答率アップにつながるのではないでしょうか。

あとは最近の研究では詰将棋のみならず必死ルーチンの研究もさかん(?)で、必死ルーチンを搭載すれば、その手の難問題のうち、必死が絡むケースの正答率が目に見えて上がるでしょうね。

ただ、dfpnの詰将棋ルーチンが実戦で使い所が非常に難しい(たとえばBonanza6ではdfpnの詰将棋ルーチンを実装してあるにも関わらず、通常の探索時にはそれを使用していません。クラスター化のときに補助的にしか使っていません)というのはあって、必死ルーチンはdfpnの詰将棋ルーチンよりさらに使い所が難しいでしょうから、必死ルーチンを組み込んだコンピューター将棋プログラムというのが本当に強いのかどうかはいまの私にはよくわかりません。

それとは別に、dfpnの詰将棋ルーチン、呼び出すタイミング、呼び出すときの探索資源配分が非常に難しいのですが、ひよこカルロ将棋neoではそのへん比較的うまくいきまして、dfpnを使わなかったとき(R2050相当?)よりも50か100ぐらいRがあがっているのは、主にそのおかげだと思います。

週刊ひよこ将棋のほうは、まだfloodgateでの対戦数が少なくよくわかりませんが、あまりうまく行っていない印象は受けます。これは、評価関数がそこそこまともですと、自然と詰みやすいほうを優先して探索するようになり(王の危険度みたいなのを評価するので)、普通に探索していれば詰みを発見できるからだと思います。

また詰将棋ルーチンでは、必死やN手すきみたいなのを判定できませんので、結局は普通に探索するほうが効率的にも優れているというのはあるのかも知れません。しかし、これに関しては私はまだ始めたばかりですので、よくわかりません。

ともかく、このようにdfpnの詰将棋ルーチンをうまいタイミングで呼び出して、終盤を強化し、総合棋力をアップさせるための研究というのはまだこれからでして、同様に、必死ルーチンをうまく通常探索に活用できるようになるのも、まだまだこれからだと思います。

そのへんの改良がうまくなされれば、いま「数手進めてやらないと正解が分からない」ような難問題も(終盤のものに限って言えば)現行のPCで解けるようになるのでしょうね。

とひとごとのように書いていますが、これらは私自身のこれからの課題でもあるので、頑張ります!!