パスワードを忘れた? アカウント作成
63306 story

最強ランクの将棋ソフト「Bonanza」、ソースコードを公開 78

ストーリー by kashibat-svt
さらなる高みへ登り詰めるのか 部門より

otk 曰く、

CNET/Venture Viewの記事より。“最強ランク”の1つに数えられるコンピュータ将棋プログラム「Bonanza(ボナンザ)」(開発者=保木邦仁氏)のソースコードが公開されている。ここには思考ルーチンのコードも含まれており、将棋ソフト開発者の間では「ソースを再利用すべきか」「Bonanzaクローンが蔓延するのではないか」といった声があがっているという。

Bonanzaは2006年の「第16回世界コンピュータ将棋選手権」において初出場で優勝するなど、個人が開発するソフトでありながら“最強ランク”の1つに数えられる将棋ソフト(2008年の第18回大会では第3位)。従来はバイナリのみの配布だったが、1月29日公開のv4.0.3よりソースコードも含め配布されるようになったようだ。

(追記:2009/02/22 12:02)公式サイトからのダウンロードはかなり重いので、入手したい場合は窓の杜からのダウンロードを推奨します(#1518125のコメント、ありがとうございます)(by otk)

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2009年02月20日 23時13分 (#1518036)

    コンピュータ将棋協会のサイトを巡っていたら、
    既に、次回大会で使用可能なライブラリとして認められていたようです。

    第19回(2009年)コンピュータ将棋選手権使用可能ライブラリ
    開発者名 : 保木邦仁
    ライブラリ名 : Bonanza Version 4.0.3
    ライブラリ一覧 [computer-shogi.org]

  • アルゴリズムがキモ (スコア:4, すばらしい洞察)

    by SkyAngel (9501) on 2009年02月20日 21時24分 (#1517986)

    この種のソフトは,マシンパワーもさることながら,
    「よりよい手を探すアルゴリズム」
    がキモだと思うのです.碁や将棋は,たとえばチェスよりも遥かに広い確率空間をもつので,
    要するに総当たり戦が使えないのです(よね?).

    より良いアルゴリズムを作るのは,その素質のある人に限られる,と私は考えています.
    企業がプロジェクトチームで作ろうが,名棋士を呼ぼうが,一人のアルゴリズムの天才にはかないません.

    したがって,ソースを公開したことで模倣者が出てきたとしても,再利用するしか能がない模倣者は,
    次のよりよいアルゴリズムにはかなわないのではないでしょうか.

    --
    そうじゃないだろう!
    • by Anonymous Coward on 2009年02月21日 11時55分 (#1518198)

      > 要するに総当たり戦が使えないのです(よね?).

      従来の強い将棋ソフトはアルゴリズム重視でしたが、Bonanzaは総当たり探索が大きな特徴ですよ。ある意味先行する他のソフトはCPUが遅かったころから開発されていたのに対して、後続の強みが発揮されている点だと思っています。

      Bonanza:思考ルーチン/Wikipedia [wikipedia.org]
      全幅検索
              Bonanza以前のコンピュータ将棋ソフトでは、その局面で可能なすべての指し手を評価する(全幅検索)のではなく、駒を取るなどの自然な指し手を重視して検索していた。これはすべての指し手を評価すると選択肢が膨大になり、現実的ではないと考えられていたからである。Bonanzaはその常識を覆し、全幅検索を実現することでこれまでのソフトが見落としていた(あるいは軽視していた)指し手に高い評価を与えることが可能となった。

      親コメント
  • そして究極の域へ・・・ (スコア:4, おもしろおかしい)

    by Anonymous Coward on 2009年02月20日 23時13分 (#1518037)

    長い年月をかけ、幾多のアレゲな者たちの知恵を受け継ぎ、
    いつの日か究極の進化を遂げた Bonanza は悟る。
    対局開始時の盤面こそが最強である、と!

    後手の場合:
    対戦相手の初手のあと「おまえはもう負けている」と呟き、凄まじい勢いで手を打ちつづけ、勝つ。

    先手の場合:
    一手も打てず時間切れ「参りました orz」

    # 究極って「窮極」とも書くんだね。

  • by Anonymous Coward on 2009年02月20日 19時49分 (#1517941)

    世界コンピュータ将棋選手権は「参加プログラムは、思考部を自作し、
    かつそれにオリジナリティがあるものに限る」というルールを掲げていてるので、
    Bonanzaを若干チューニングしたものがぞろぞろ出てきた時に、
    困っちゃうんだろうね

    将棋ソフトの発展のために作られたルールだけど、
    有名な強豪ソフトのソース公開で、
    この発展の方法論に見直しを迫られることになるかも

  • 蔓延しちゃまずいの? (スコア:2, すばらしい洞察)

    by Anonymous Coward on 2009年02月20日 19時49分 (#1517942)
    > 「Bonanzaクローンが蔓延するのではないか」
    蔓延したとして、どういったことが問題になるのでしょうか?
    Bonanzaのサイトにアクセスが集中しているのか、ダウンロードがまったく進まない状態なのでライセンスを確認できていませんが、ライセンス違反があったとしたらそれはもちろん問題です。
    ただ、それ以外に、Bonanzaおよびそのクローンが広まることで起きる問題って何がありますか?
    将棋のソフトを販売している人や会社は困るかも知れませんが、Bonanzaの強さや無料という魅力に負けたのならそれはしかたないことだろうし。
  • by Anonymous Coward on 2009年02月20日 20時10分 (#1517959)
    どなたか解説してほしい。懸念する声がある一方で、熱望する人たちもいたってことなんだろうか。それとも開発者の哲学とか
  • 無敵のレベル6になるには (スコア:2, おもしろおかしい)

    by Anonymous Coward on 2009年02月20日 21時57分 (#1517999)
    20000体のBonanzaクローンを倒せばいいのかな。とBonanzaは分析します。
  • とりあえず保存 (スコア:1, 参考になる)

    by Anonymous Coward on 2009年02月20日 16時58分 (#1517843)

    参考になるソースか見てみよう。と思ってダウンロードしてみました。
    (まだ解凍もしてませんが)

    ダウンロード中に、ページをみていたのですが
    >なお,v4.0 から 200MByte 程度メモリを使用するようになりました.ご注意ください.
    ・・・うちの想定してる環境じゃ、そんなにメモリが取れませんよ。

  • by Anonymous Coward on 2009年02月20日 17時39分 (#1517868)

    子プロセスとして生成(起動)したbonanza プロセスと通信するライブラリが含まれていますね。
    Bonanzaには手を加えず、上物だけ開発してBonanzaエンジンを利用出来るみたい
    といっても、インタフェースを変えるくらいしか思い付きませんが

    本格的にいじるなら、並列化とか分散とかその辺は面白そう
    Bonanza自体は材料になっちゃいますけど

    • by flutist (16098) on 2009年02月20日 17時51分 (#1517875)

      bonanza が決めた手に乱数を加えて指す手を決める「きまぐれモード」とか作って、対局者をどのくらいかく乱できるかとか試すと、楽しいかも。

      並列化して、将棋界の Deep Blue を目指すのも悪くないかもね。

      親コメント
      • Re:お手軽利用? (スコア:4, おもしろおかしい)

        by sinkope (230) on 2009年02月20日 18時15分 (#1517891) 日記

        対抗して人類側も並列化すればいいかも。
        つまりA級棋士+タイトル保持者で集まって相談しながら次の手を決めるという……。

        親コメント
        • Re:お手軽利用? (スコア:5, おもしろおかしい)

          by shinshimashima (9763) on 2009年02月20日 20時00分 (#1517952) 日記
          今ならA級から振り飛車党がいなくなりそうなんで話が合いやすいかも
          (最終局、タニーと地道が勝つこと前提)

          と思ったけど、やっぱり話が合わないかも。
          序盤:モテ変態流炸裂
          中盤:木村顔面受け
          終盤:藤井ファンタジスタ!
          親コメント
        • Re:お手軽利用? (スコア:4, おもしろおかしい)

          by Anonymous Coward on 2009年02月20日 20時48分 (#1517971)
          A:この手が良いだろう。
          B:いや、こっちの方が。
          C:俺の手の方が絶対に良いって。

          A:こうなったら、誰の手を打つか勝負して決めよう。
          B:何で勝負する?
          C:この3人が集まったんだから将棋に決まってるだろjk

          こうして、次の一手を決める将棋トーナメントが始まった。
          親コメント
    • Re:お手軽利用? (スコア:1, おもしろおかしい)

      by Anonymous Coward on 2009年02月21日 17時11分 (#1518357)

      どこかのエロゲが搭載するんですね。

      親コメント
  • by Anonymous Coward on 2009年02月20日 18時58分 (#1517919)
    コンピュータの場合、特にコンピュータ同士の場合、
    「制限時間」の代わりに「制限処理量」を設定すべきなのではないかと思ったり。
    時間だと、それこそハードウェアの進歩次第で、力押しで全ての手を解析とか出来そうなわけで。

    #将棋の腕もプログラムの腕もほぼ皆無なので、スコア0スタートの為にAC

    ##+1の設定であれば逆に-1になるような「カルマボーナスを逆向きに使う」とかあればいいのに。
  • by shogiee (36271) on 2009年02月20日 20時50分 (#1517972)
    難度的にどんなもんでしょうか?>識者の皆様

    これまでは皆Wineで遊んでたみたいですが。
  • by shix (37604) on 2009年02月20日 23時16分 (#1518039)
    重すぎる 言語はCでした。 速度的に考えたら当然なんでしょうね
  • 参考文献 (スコア:1, 参考になる)

    by Anonymous Coward on 2009年02月21日 2時06分 (#1518082)

    直接の参考文献では無いけれど、一応参考までに [amazon.co.jp]

    #いつの間にか増えてる。

  • by grep (21372) on 2009年02月21日 10時03分 (#1518145) 日記

    ボナンザは、今まで手で調整していた特徴パラメタの重みを、プロ棋士の棋譜から機械学習で自動調整できるようにしたところに特徴があるわけですよね。

    だから、(すでにパラメタ設定された)遊べるようになってる将棋ソフトそのものよりも、パラメタ調整用のときに使った棋譜学習プログラムの方が肝心だと思うのですが、そちらは公開されたのでしょうか。

typodupeerror

UNIXはただ死んだだけでなく、本当にひどい臭いを放ち始めている -- あるソフトウェアエンジニア

読み込み中...