タグ

ブックマーク / yaneuraou.yaneu.com (13)

  • 将棋のような先手必勝のゲームで後手番定跡を作るには? | やねうら王 公式サイト

    将棋は先手必勝のゲームである。将棋AIの大会上位チームの開発者でそのこと自体を疑っている開発者はたぶんいない。とりあえずは、この記事を読むにあたって、これを事実として飲み込んでいただきたい。それで、このような先手必勝のゲームにおいて、後手はどのような戦略を取ればいいのかというのを書いていく。 例えば、以下の動画の概要欄からダウンロードできる『水匠定跡』は、角換同型腰掛銀の必勝定跡であるが、後手番の時はどうすればいいのかという問題がある。(水匠定跡の後手番問題) 先日、このブログでペタショック定跡という超巨大定跡を掘っているという話を書いた。(1年かけて1億局面掘る予定。AWS換算で700万円ほどかかる見込み。) 将棋AIの2024年は大規模定跡時代 : https://yaneuraou.yaneu.com/2024/01/14/the-era-of-large-scale-book-in

    vndn
    vndn 2024/02/02
  • プロ棋士は将棋ソフトが無くても困らないのか? | やねうら王 公式サイト

    将棋AI界隈に対して、熱量の高い将棋ファンからよくわからない敵意を向けられることがある。 「長い将棋歴史のなかで、将棋ソフトなんか無い時代からプロ棋士は脈々と将棋技術を研鑽してきた。将棋ソフトなんてプロ棋士には全く不要で無くても何も困らない。将棋ソフトは将棋界に寄生するだけの寄生虫の癖にその開発者は偉そうにすんな。」みたいな意見である。 この世から将棋ソフト(将棋AI)がすべて無くなった世界と、いまの世界とを比較するならば、「将棋ソフトが無くてもプロ棋士は困らない」には私も同意する。将棋界はいままでそうして命脈を保ち、歩んできたのだから。 しかし、将棋ソフトは誕生してしまった。誰かが、トッププロより強い将棋ソフトを生み出してしまった。(その経緯についてはここで触れない。) そうすると、将棋ソフトを活用しているプロと活用してないプロとの差が生じる。そして、少しでも速いパソコンで将棋ソフト

    vndn
    vndn 2024/01/04
    勝ち負けの話と有用性の話が混ざってるように思う。
  • 第4回世界将棋AI電竜戦本戦 優勝記 | やねうら王 公式サイト

    先週末に開催された電竜戦戦で、水匠チームが優勝した。私(やねうらお)も同チームのチームメンバーとして参加し、私は探索部の改良を行った。同チームのたややんさんは、定跡と評価関数(の機械学習)を担当した。 現代の将棋AIの大会で何が起きているのかについて手短に書く。 ■ 定跡 まず、大会の水匠チームの定跡部分に関しては、たややんさんの以下の配信に詳しい。 【#電竜戦 祝勝会】水匠電竜、連覇しました!!【将棋AI水匠/たややん】 https://www.youtube.com/watch?v=lsNoVMe_wdk 配信の内容で大事なところを簡単にまとめると、 ・角換わり(38手目基図)は定跡により先手優勢までは持っていける(これは1年ぐらい前からそう) ・相掛かりも定跡で先手有利 ・おそらく将棋は先手勝ちのゲーム ・大会では、「わからん殺し」するしかない とのこと。 結局、将棋は先手勝ち

    vndn
    vndn 2023/12/10
  • 誰もdlshogiには敵わなくなって将棋AIの世界が終わってしまった件 | やねうら王 公式サイト

    いま大会上位に位置するDeep Learning系の将棋AIは、評価関数として画像認識などでよく使われているResNetを用いている。ResNetについては機械学習を齧っている人ならば誰でも知ってるぐらい有名だと思うので、詳しい説明は割愛する。(ググれば詳しい説明がいくらでも出てくる) 囲碁AIの世界では、このResNetのブロック数を大きくしていくのが一つの潮流としてある。ブロック数が多いと言うことは、より層の数が増え(よりdeepになり)、1局面の評価に、より時間を要するようになるということである。それと引き換えに評価精度がアップするから、トータルでは得をしていて、棋力が向上するというわけである。 ところが大きいブロック数になればなるほど学習に要する教師局面の数が増える。学習もブロック数に応じた時間を要するようになるから、そう簡単に大きくはできない。しかし囲碁AIの方は、中国テンセント

    vndn
    vndn 2022/06/28
  • スーパーテラショック定跡が76歩に34歩を全否定 | やねうら王 公式サイト

    前回までのあらすじ) 先手番専用定跡s-book_blackが優秀すぎた。私が2年前に開発したテラショック定跡生成手法では到底太刀打ちできなかった。そこでやねうら王プロジェクトでは、新たにスーパーテラショック定跡生成手法というのを考案し、やねうら王に実装したのであった。 前回記事 : 先手番専用定跡s-book_blackの厚い壁 https://yaneuraou.yaneu.com/2021/11/01/thick-walls-of-s-book_black/ テラショック定跡生成手法のおさらい まず簡単にテラショック定跡手法をおさらいし、何が悪かったのかを書き、今回それをどう改善したのかを書く。 テラショック定跡は与えた棋譜の各局面に対して長い時間をかけて思考させる。1局面につき探索1スレッド×1時間でやっていた。1スレッドにしているのは、将棋ソフトは並列化効率が悪いからで、スレッド

    vndn
    vndn 2021/11/06
  • 先日の電竜戦、長時間マッチで現れたやねうら王のバグについて | やねうら王 公式サイト

    二日前に電竜戦 dlshogiと水匠の長時間マッチが開催された。 最高峰将棋AIによる長時間対局、プロ棋士3名が解説 : https://yaneuraou.yaneu.com/2021/08/03/long-time-game-by-the-best-shogi-ai/ イベント的には大成功で、多くのニュースメディアでも取り上げていただいたようである。 水匠のバグについて さて、その1局目で水匠がバグと思わしき読み筋が現れた。成れないところに飛車を成るというものだ。水匠の読みの錯覚であり、それによって大きく形勢を損ねて敗北を喫した。 水匠 vs dlshogi、先手番をともに制す(コンピュータ将棋協会blog) : http://blog.computer-shogi.org/denryu-sen_channel_opening-matches_and_conference/ 水匠の探索

    vndn
    vndn 2021/08/18
  • 俺氏、将棋が二人零和有限確定完全情報ゲームでないことに気づいてしまうwww | やねうら王 公式サイト

    このブログをご覧の方は将棋が二人零和有限確定完全情報ゲームであることはご存知でしょう。これは、ゲーム理論や探索アルゴリズムの教科書にでも載っています。「二人零和有限確定完全情報ゲームって何?」って方は、Wikipediaでも見ていただくことにして話を先に進めます。 零和とは? この「零和」というのは、和が零。英語で言うとゼロサムです。 零和(「ゼロ和」と読むのが一般的だが「レイワ」とも読む):プレイヤー間の利害が完全に対立し、一方のプレイヤーが利得を得ると、それと同量の損害が他方のプレイヤーに降りかかる https://ja.wikipedia.org/wiki/二人零和有限確定完全情報ゲーム つまり、自分が勝ちなら、相手は負け。相手が勝ちなら自分は負け。勝ちを+1点、負けを-1点、引き分けを0のように定めるなら、(ゲーム終局後に)自分と相手の点数を足すと0になる。なので、ゼロサムゲーム

    vndn
    vndn 2021/02/20
    これはWCSCのルールの問題では / MTGだと「同意の上での引き分け」ができる
  • 読み筋が合流するのに評価値が違う件 | やねうら王 公式サイト

    AbemaTVの放送で、AIの出力する候補手1と2の読み筋が途中で合流して同じ局面になるはずなのに評価値が1と2で異なるという状況があったらしく、それを解説していたプロの先生が「これはおかしいですね」とか何とかおっしゃっていたそうなのですが、これについて解説します。 やねうら王を始めとするいまどきの将棋ソフトの思考エンジンは、複数の候補手を出力するMultiPVという機能があります。AbemaTVの思考エンジンもこのMultiPVを用いて出力しているのだと思われます。 予測される状況1 ところが、AbemaTVのSHOGI AIでは、複数エンジンの評価値を組み合わせて期待勝率を出しているようです。 なので、 ・エンジン1が、候補手A,B,C ・エンジン2が、候補手A,C,D ・エンジン3が、候補手A,C,D のように候補手を出力した場合、候補手Aは、3つのエンジン(が候補手Aを指した時)の

    vndn
    vndn 2020/11/01
  • やねうら王公式による定跡掘削代行はじめました | やねうら王 公式サイト

    テラショック定跡の生成部を公開したので、一般ユーザーの皆さんがコマンドを叩けば自動的にかつ効率的に掘れるようになりました。 普通、人間が手動で定跡を検討する場合、将棋所などの検討モードを用いて1つの局面を複数スレッドで探索させるのが普通かと思います。しかし、探索はスレッド数の平方根ぐらいしか実効(実際の効率)がでないので、16スレッド用いても4スレッド分の働きしかしません。3/4の計算資源は無駄になってしまうということです。16スレッド用いるのならば16局面用意して、各スレッドがそれぞれの局面を探索するのが一番効率が良いわけです。これを行えるのが、やねうら王の定跡生成コマンドです。(“makebook think”コマンドなど) そんなわけで、やねうら王の定跡生成コマンドを使うだけで、手動で1局面ずつ検討させるより、はるかに高い効率で検討が行えます。しかしご家庭のPCでやる場合、例えば8ス

    vndn
    vndn 2019/05/29
  • 3年以上誰も発見できなかった探索部のbugがRustによって見つかったという話 | やねうら王 公式サイト

    だいたいにおいて、やねうら王ほどメジャーな将棋ソフトの探索部に大きなバグを埋め込むことは常識的に考えると不可能である。多くの人が改良に参加している&参考にしているので、誰かの目に止まるはずではある。ところが、公開後、数年も誰も気づかなかったbugがつい先日見つかった。Aperyの平岡さんが、AperyをRustで書き直している時にRustのコンパイラが警告を出したので気づいたと言うのだ。(WCSC29の会場で平岡さんから直接教えてもらった。) bugの詳しい内容 ここから少し専門的な話が出てくる。プログラマでない人は次の見出しまで読み飛ばすこと推奨。 – Position::move16_to_move()のbug fix。thx.平岡さん https://github.com/yaneurao/YaneuraOu/commit/9e6ba09029839838e10cd928456935

    vndn
    vndn 2019/05/25
  • WCSC29、やねうら王優勝しました! | やねうら王 公式サイト

    第29回世界コンピュータ将棋選手権(WCSC29)で、『やねうら王 with お多福ラボ2019』は優勝しました。応援してくださった皆様、ありがとうございます。 手短にいくつか印象に残った試合と簡単な感想を書いておきます。 Qhapaq戦 Qhapaqはこちらが指し手を思考している最中に相手の指し手を別のPCで予測して、それに対するponderの指し手を探索する『Pre-ponder』という隠し球を実装しているそうでした。 QDMのクラスタはmultiponderベースだったのですが独自実装のpreponderを加えることで相手の持ち時間の120%を使えるという謎の効率化に成功しました。 — Ryoto_Sawada☀Qhapaq (@Qhapaq_49) May 5, 2019 そこで、Qhapaq戦については、SlowMover(序盤重視率)=67にして、序盤の思考時間を減らして終盤に

    vndn
    vndn 2019/05/06
  • 最新の将棋ソフトが2手目34歩を悪手だと言い始めた件 | やねうら王 公式サイト

    近年の将棋ソフトは2倍の思考時間を使えばR200程度強くなる。ということは、家庭用PCで15分切れ負けの対局でR4300程度だと言われている最新ソフトを自己対局させるとして、片方のソフトだけ持ち時間をその倍である30分を与えるとどうなるだろう? そのソフトは、見かけ上、R4300 + R200 = R4500ぐらいの強さを発揮するわけであるな。 では、もっと桁違いの時間を与えるとどうだろう? 15分切れ負けのとき、序盤の1手には10秒ぐらいしか使わないが、その序盤の特定の局面に対して、1,000倍の時間(10,000秒)を与えれば、そのときの棋力はどれだけになるだろう? log(2)1024 = 10なので、10×R200 = +R2000ぐらい強くなり、R4300 + R2000 = R6300のソフト相当になるのではなかろうか。 R6300のインパクトが強すぎてどれくらいの強さなのか想

    vndn
    vndn 2019/04/14
  • フロッピーディスクに収まる評価関数バイナリ公開しました | やねうら王 公式サイト

    NNUE評価関数は、ネットワーク構成を簡単にカスタマイズできるようになっている。 そこで、入力をK(玉のいる升)とP(どの升にどの駒がいるかに対応する値)だけにして(81升 + 1629通り = 1710)、hidden層の1層目を256×2、2層目・3層目を32にして学習させた。(K-P-256-32-32) NNUEを知らない人のために書くと、各層は全結合。 ※ 補足 : ニューラルネットの入力は、駒が存在するところを1、存在しないところを0とした1710次元のベクトル。 教師はdepth 8で生成した10億局面から学習させてみたところ、elmo – R30程度になった。 ファイルサイズは873KB。(zipで圧縮して400KB程度) 教師をもう少し深いdepthで生成すれば、まだ強くなるはず。 とりあえず公開しておいた。 https://github.com/yaneurao/Yan

    vndn
    vndn 2019/01/16
  • 1