パスワードを忘れた? アカウント作成
11951586 story
ソフトウェア

コンピュータ将棋ソフトの「弱点」が見つかる? 47

ストーリー by hylom
人間の逆襲 部門より
あるAnonymous Coward 曰く、

2月28日~3月1日に行われたコンピュータ将棋ソフト対アマチュア棋士のイベント「電王AWAKEに勝てたら100万円!」企画で、コンピュータ将棋に勝利したアマチュア棋士が現れた。このこと自体は過去にもあったのだが、ここで興味深いのが「コンピュータ将棋ソフト共通の弱点」を突いて勝利した、とされている点だ(日刊SPA!の記事前編後編)。

この「弱点」という棋譜については記事を参照して欲しいが、このイベントで使われた「AWAKE」というソフトだけでなく、「ponanza」や「ツツカナ」といったほかのコンピュータ将棋ソフトでも同様に通じたそうで、再現性も高いようだ。

とはいえ、この局面になったからといって誰もが勝利できるわけではなく、その後の展開で勝つにはやはり相当の研究と実力がないと難しいようだ。実際、このイベントで同じ局面が3回出現したが、勝てたのは1人だけだったという。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • 書かざるを得ない (スコア:2, おもしろおかしい)

    by Anonymous Coward on 2015年03月06日 13時41分 (#2772970)

    やはりバッファオーバーフローの脆弱性を突かれた感じですかね。

  • 千日手含みで時間切れを狙うという

    稲庭将棋とは (イナニワショウギとは) [単語記事] - ニコニコ大百科
    http://dic.nicovideo.jp/a/%E7%A8%B2%E5%BA%AD%E5%B0%86%E6%A3%8B [nicovideo.jp]

  • by Anonymous Coward on 2015年03月06日 13時43分 (#2772971)
    電王戦のルールにおける「コードの変更禁止」っておかしいよね。特にこういうハメ手に類する時には問題に感じる。
    人間ならば新戦法や問題点が見つかったら、すぐに修正してくるのにコンピュータ側だけ修正禁止とか、何のためなんだか。
    将来的に自己学習とか作ったら、電王戦参加禁止になるのかな?
    • by ich84 (33072) on 2015年03月06日 14時15分 (#2772996)

      相手が一手打ったらそれを見て

      棋士プログラマ「おっとそうきたか。printf("4六金");っと。実行」

      って一行ずつ書き加えればOKというわけですね?

      親コメント
    • by iwakuralain (33086) on 2015年03月06日 15時36分 (#2773056)

      PC側のコード変更は脳みその入れ替えと同等
      負けた際の盤面を覚えて次に備えるのとはちょっと違う

      親コメント
      • by Anonymous Coward

        脳みその入れ替えは暴論だよ。人間の脳みそだって同じ状態には滅多にならないんだし。
        プログラムの変更によって強さが線形に変化しないのが問題なんでしょ。人間から見たら棋風が変わってしまう極端な変化があり得るから。

        • by Anonymous Coward on 2015年03月06日 22時44分 (#2773308)

          「バグ修正」とか称して探索エンジン丸ごと換装してくるようなソフトもありましたしね。
          何種類も用意しといて前日にファイル名だけ変えるような真似すらできる以上、
          コンピュータ棋士の人格を尊重するためにも不変期間は設けるべきと思ってます。

          親コメント
      • by Anonymous Coward

        ソフト名の後ろにギリシャ数字を足したバージョンで挑めばいい
        プロ棋士の子供はプロ目指しちゃいけない
        なんて法も規則もないものね

        # ジュニア、サード、フォースの加護があらんことを

    • by Anonymous Coward on 2015年03月06日 13時49分 (#2772975)

      それ、人間が打ってるのと何が違うんだという話になるんじゃない?
      あと最後の一行、意味がよくわからないよ。

      親コメント
    • by nim (10479) on 2015年03月06日 13時51分 (#2772976)

      >将来的に自己学習とか作ったら、電王戦参加禁止になるのかな?

      人間が適宜コードを変更してもいいなら、半分は人間を相手にしてるのと変わらんから、7番戦の間はプログラム自体を人間が外部から書き換えるのは禁止で妥当だと思うけど、
      自己書き換えはOKでいいんじゃないかな。それもふくめて初期プログラムのうち、だし。

      親コメント
    • by Anonymous Coward on 2015年03月06日 15時05分 (#2773036)

      >人間ならば新戦法や問題点が見つかったら、すぐに修正してくるのにコンピュータ側だけ修正禁止とか、何のためなんだか。
      そのプログラム自体と対戦しているのだよ?
      改造したら別物だろ。

      もちろんそのプログラム自体が自己学習で行うのなら問題とはされないでしょうけど。

      親コメント
    • by firewheel (31280) on 2015年03月06日 16時31分 (#2773089)

      >人間ならば新戦法や問題点が見つかったら、すぐに修正してくるのにコンピュータ側だけ修正禁止とか、何のためなんだか。

      べつにコンピューター側も学習禁止なわけじゃないでしょう。
      やりたければ学習して成長するプログラムを作ればいいだけの話。

      プログラムの外部に存在する人間が人力で学習して人力で改変するのは、
      プログラムが学習し成長してるわけじゃない。

      親コメント
      • by Anonymous Coward

        それはルールで許されていません。
        現在のコンピュータ将棋は、機械学習して評価関数を自動更新する仕組みがありますが、その学習結果を入れ替えることもできないし、プロに貸し出されている間の対戦分も反映できないです。

        • by Anonymous Coward

          学習データの外挿が禁止なのは当然として、対局中の学習は使えるだろ。
          そこが禁止なら自己学習禁止と同じになる。

          • by Anonymous Coward

            事前にプロ側に提供されたソフトに1戦毎の自己学習機能がある場合、練習対局中にソフト側も学習できますね。
            ただ、現在の電王戦に出ているような将棋ソフトにそういう機能はないようです。
            1戦1戦学習するのではなく、学習する期間と対局する期間ははっきり分かれています。
            仮に入っていたとしても、電王戦後に提供された時のソフトで本番を戦うので、練習対局での学習結果は使えません。

    • by Anonymous Coward

      対等に競技するというより人間の底力をみる興業になってるんで別にいいんじゃないでしょうか。

      • by Anonymous Coward

        > 人間の底力をみる興業
        SASUKEとかイライラ棒に挑戦するそういう感じがあってこれでいいと思う

    • by Anonymous Coward

      コードが変更可能=対局者が変更可能

      • そこまではいかないけど、その棋士の師匠が割り込んできて、解説して戦法教えるようなもんでしょうね・ω・

        親コメント
      • by matlay (32743) on 2015年03月06日 14時15分 (#2772995) 日記

        現実にあるかはともかくとして、対局者が持ち時間の中でハッキングして勝利するとかあるとドラマですね。

        相手が外から得た情報(集合知?)を使って判断しているとかだと、ダミーの情報元を作って誘導するとか、
        相手が外からアルゴリズムを差し替えるのであれば、ルーチンのソースの取得元を偽装して脆弱性を埋め込んでおくとか。
        #フィクションのネタとしての発想なので、集合知を使う事は現実的に効果的じゃなかろうとか、そもそもそういう場外乱闘的な話は意味がないというのは承知
        #そもそも、そんな場外乱闘までするほど結果のみにこだわるシチュエーションを作る必要があるので、公開されない真剣の対局という設定になるかなあ。

        --
        #存在自体がホラー
        親コメント
    • by Anonymous Coward

      >人間ならば新戦法や問題点が見つかったら、すぐに修正してくるのにコンピュータ側だけ修正禁止とか、何のためなんだか。

      人間でも負けはありうるんですが。

      なんか人間側の制限はそのままで、
      コンピュータの短所ばかり擁護するのはなんなんだろうね。

    • by Anonymous Coward

      「コードの変更禁止」にしないと、人間でいえば脳の取り換えみたいなのも可能だからでしょう。
      コードをどうしても変更可能にしたいのであれば、第三者によるコードの監査とか判定が必要でしょうね。

      • by Anonymous Coward

        棋士の方はタッグマッチで。
        #「ここはコードの変更の要求を飲もう.....。後でこちらも代打ちという逃げ道が確保できる。」

    • by Anonymous Coward

      弱点ぐらいならまだしも、ほんとにバッファオーバーフローで死ぬパターンとかだと、興ざめですわな。
      本番に変な手を打つと、その後、コンピュータ側は沈黙のまま時間を使い果たして対局終了、とか、イベントが成立しなくなる。

      • by Anonymous Coward

        いや、バッファオーバーフローを起こすような指し手を人間側が見つければ勝ちなのですから、それこそ醍醐味というものでしょう。

    • by Anonymous Coward

      コンパイル中に時間切れ?
      コンピューターの戦術決定アルゴリズムを柔軟にして局面が変われば戦術を変えるようにすればよい。

    • by Anonymous Coward

      変更する必要があるってことを人間が判断してはいけない、コンピュータ自身が考え修正するのなら、
      「コードの変更禁止」は、おかしいともいえるけど

    • by Anonymous Coward

      将来も何も、お騒がせのやねうら王は変更禁止のレギュレーションができたときからすでに自己学習を搭載していた。

    • by Anonymous Coward
      コード=人格
      ととらえているのでは。
      一人の人間が戦ってくださいね。と。

      コンパイラ変えて高速化とかはアリ?

      #もしかするとコード変更はだめだけど、
      #盤面パターンがプラグインならいいですよとかあるかも?
    • by Anonymous Coward

      「何のため」と言われると非常に簡単。
      2013年の第2回大会はソフトの事前提供も義務ではなく、東大のクラスタをネットワーク越しに使うとかすらOKというルールだった結果、
      人間側がボロ負けしたため、興業として長持ちさせるためにコンピュータに不利なルールを第3回から強いているから。

      もし今回ハメ技で人間が連勝したら「比較的暇なプロ棋士が年単位で研究すれば辛うじてコンピュータにもつけいる隙がまだある」と証明でき、それはそれで構わんでしょう。

      • by Anonymous Coward

        元が人間が不利すぎるのを正しただけじゃん

  • by Anonymous Coward on 2015年03月06日 14時28分 (#2773006)

    過去の実戦の膨大な棋譜を入力として学習してるから強く、
    だけど、実戦では入玉なんてそんなに無いから、入玉しちゃうと、おいおい聞いてねーよって隙ができちゃうって奴ですかね。

    そもそも、入玉自体が詰まれにくい状況らしいですね。
    将棋駒が前方に強いものばっかなのに、後ろからも責めないといけないとか。

  • by Anonymous Coward on 2015年03月06日 22時00分 (#2773295)

    この戦法は最初bonanza対策に考えられました。
    記事にはツツカナにも効くとかかれてますがツツカナは
    角を打ってくれないと思います。あとPona1も打ってくれませんでした。

  • by Anonymous Coward on 2015年03月07日 7時29分 (#2773406)

    ドスパラ、将棋ソフトに勝ったらノートPCをプレゼントするイベント
    http://pc.watch.impress.co.jp/docs/news/20150306_691635.html [impress.co.jp]

typodupeerror

アレゲはアレゲを呼ぶ -- ある傍観者

読み込み中...