SSブログ

NanohaMini vs GPSfish [将棋]

2chにNanohaMiniがGPSFishに圧勝しているというような棋譜が貼ってあり、なんでも10回に1,2回は勝てるらしい

386 名前:名無し名人[sage] 投稿日:2015/01/02(金) 17:52:17.19 ID:SkASjRv8
なのはminiが圧勝したのですが、うちのGPSfishの設定がよくないのでしょうか?

先手:GPSfish 0.2.1+r2837 gcc 4.6.3 osl wordsize 32 gcc 4.6.3
後手:NanohaMini 0.2.1.1

▲7六歩 △3四歩 ▲2六歩 △5四歩 ▲2五歩 △5二飛
▲7八金 △5五歩 ▲2四歩 △同 歩 ▲同 飛 △5六歩
▲同 歩 △同 飛 ▲6九玉 △3二金 ▲4八銀 △6二玉
▲6六歩 △7二玉 ▲6八銀 △4二銀 ▲5八金 △5一飛
▲6七金右 △4四角 ▲4六歩 △2六歩 ▲3六歩 △3三銀
▲2五飛 △2二銀 ▲2八歩 △5五歩 ▲3五歩 △同 角
▲3六歩 △6二角 ▲6五歩 △3三桂 ▲1五飛 △4四角
▲4五歩 △6二角 ▲4四歩 △同 角 ▲6六金 △1四歩
▲5五飛 △同 角 ▲同 金 △4九飛 ▲5九銀右 △2九飛成
▲6四歩 △同 歩 ▲5四歩 △1九龍 ▲6四金 △6三歩
▲6五金 △5八歩 ▲同 玉 △5六香 ▲6七玉 △5九香成
▲5三歩成 △1七龍 ▲6六玉 △5三飛 ▲5四歩 △5一飛
▲7五歩 △5八成香 ▲6七銀 △5七銀 ▲7六玉 △6八銀成
▲8五角 △7八成銀 ▲同 銀 △9五金 ▲6三角成 △同 玉
▲6四歩 △7二玉 ▲6六金 △8四桂 ▲6五玉 △4七角
▲5六銀 △3六角成 ▲5五金 △5七成香 ▲7四歩 △5六成香
▲6三歩成 △同 玉 ▲6四歩 △7二玉 ▲6三歩成 △同 玉
▲6四金 △7二玉 ▲2七歩 △1五龍 ▲5六玉 △4五龍
▲6七玉 △4七龍 ▲5七香 △4五馬 ▲6六玉 △3六龍
▲5六香 △同 龍 ▲7七玉 △5七龍 ▲6七銀 △同 龍
まで120手で後手の勝ち

388 名前:名無し名人[sage] 投稿日:2015/01/02(金) 18:17:00.63 ID:ySF5dpcU
>>386
うちのなのはminiも10回に1~2回はGPSFishに勝つ。0.21じゃなく0.05の方だが。
それ以上極端に勝つようならGPS側の設定が悪いのだろう。ただ単になのはが勝つだけなら普通にある。


0.05ってなんだろうか。
それはともかく、SoghiGUIを使って、3秒解析で一致率でみると先手50%、後手80%だったが、要所で手が違う。

自分が適当に試した時はGPSの10-0だったので、まあそりゃそうだなと思っていたのだが、改めて確率的にどうなのか調べてみた。

そもそも、本家で公開されているバージョンはいい加減更新してほしいと思うのだが、あまりに遅い。
いろんな環境で動くようにしているのもわかるのだが・・・

複数のGPSバージョンが入っているうちの環境では何かの手違いが発生する可能性があるので、データがローカルにあるShogiGUIバージョンで試してみた。

https://sites.google.com/site/shogixyz/home/gpsfish


・使用ソフト
 NanohaMini 0.2.1
 GPSfish 0.2.1+r2837 gcc 4.8.1 osl wordsize 32 gcc 4.8.1 64bit (ShogiGUI付属)

・条件
 4スレッド
 1秒
 200手でドロー

こういうのは1秒のほうが出やすいとの本能が告げているので1秒でやってみた

・結果
 15-2-83

見事に一致

Core i7 4770@3.4GHzだったので、1秒だが、一般人が通常使うようなノートPCの場合、ごついCore i5ノートなら2コア、3GHz程度、薄型ノートならCore i7でも2.xGHzなので3秒~10秒ぐらいでも同等の結果だと思われる。
1秒なら、もっとNanohaの勝率は高くなるかもしれない。

ちなみに1コアあたりのNPSで比較すると

・やねうら王(駒得のみ)     100万NPS以上 ※不明
・NanohaMini(KP+PP)    80万NPS ※確かPGOビルド
・Bonanza(KKP+KPP)     35万NPS ※64bit SSE2
・GPSfish(いろいろ)       15万NPS ※ShogiGUI梱包
・Blunder(DANGEROUS)(?) 15万NPS ※配布版AVXビルド

となっていて、評価因子が少ないほど速いという当たり前の状況になっている。
逆に中途局面の評価の正確性は、下に行くほど正確で、一般的には下のほうが強い

また、ビルド方法によっても速度差が出てくる。

・GPSfishone(いろいろ)     17万NPS ※ShogiGUIページからダウンロード
・GPSfish(いろいろ)       15万NPS ※ShogiGUI梱包
・GPSfish(いろいろ)       11万NPS ※公式ビルド 32bit gcc 4.6.3


公式配布版は4.6.xを使っていて、あまり最適化がよろしくない。
gccはCLANGという別のコンパイラが台頭してきて、まじめにやるきになったのが4.8.xなので4.8.x使ったほうが良いと思っている。

GPSfishのソースにはGPSFISHONEビルドという隠し技を持っていて、ソースを全部ヘッダに入れてビルドするという荒業によってコンパイラに最適化を促し、5%~1割の最適化をさせる。
そうするとNPSが1割程度増えるのだが、探索深さが1,2手ぐらい上回る。これによって棋力向上があるかはよくわからない。

将棋の場合、いくらよんでもわからない場合と時間を書けたほうが良い場合があるので、速度と時間のかけかたが重要になるので、時間制御が入った10分切れ負け条件のほうが本当はよいかもしれない。

やねうらおさんもよく言われているが、強さはPCのスペックがモロ影響するので、GPSがちょっと物足りないという人はshogiGUIのほうのgpsfishoneを入れると少し強くなるかもしれない。

<追記>
NanohaMiniのソース見てたところ、KKPだけだと思ってたが、KP+PPになっていた。
KPPよりは精度は落ちるだろうが、軽量化でたくさん読めるのでトータルとして1割勝てるのも納得した。

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。