この「やねうら大定跡」、欲しい人がいるなら配布します。2016プロジェクトの目的やねうら大定跡とは、やねうら王を用いて長い時間をかけて深く探索し、新定跡の開拓、従来定跡を整備することを目的としたプロジェクトです。プロジェクトの内容このプロジェクトで生成された定跡自体は、やねうら王定跡フォーマット2016に従い、誰でも利用できる形で公開します。強いソフトでやったほうがいいというのはありますが、魔女≒やねうら王2016Midと、現時点で最強ソフトPonanzaとはR300程度しか(?)離れていませんから、思考時間で言うとPonanzaの3倍かければそれと同等の棋力の指し手は得られるわけです。うら王がもう少し強くなったら改めて定跡を生成しなおします。現状はコンセプトプルーフの段階だとご理解いただければと。20コアで10日ほどかかる。完了とりあえず、上記の定跡生成が終わった時点でいったん公開して、意見を募りたいと思います。32で探索させたものが欲しい。評価関数を改良してから生成しなおしたい。32で探索させたものも欲しい。32で探索させたものも欲しい。32で思考した指し手を用意しておきたい。10なので候補手10手!)が表示されると面白いかなと思っています。Midに追加しました。定跡ファイル(テキストファイル)を力技で二分探索しているので、定跡ファイルが10GBであろうと100GBであろうと、そこそこ速い(はず)です。言え、この機能を用いるときは、HDDよりはSSDのほうが(ランダムアクセス性能が桁違いに良いので)好ましいでしょう。さなどを柔軟に設定できる機能追加。その局面で、探索深さが24以下の定跡の指し手しか登録されていなければ、その局面では定跡の指し手を採用しない(思考した結果、その指し手が指されることはある。)だとか、評価値の幅がベストの指し手と、いくら以内に収まっていないと採用しないだとか。色々なオプションを追加で用意しました。うら王2016Midを用いて定跡を作る方法これは別記事にて詳しく書きます。・一人で巨大な定跡を生成するのには限度がある。クラウド化したいのですが、評価関数ファイルのアップデートや配布など、結構のサーバーを用意しないといけないですし(それを構築するのも結構の手間がかかりますし)、参加する人が増えてきたときに悪意のあるクライアントを弾くのが難しいなどの問題点があります。・思考対象とする局面は棋譜(sfen)の形で与えているが、自ら思考した指し手を定跡DBに登録するので、この定跡を用いても棋譜の進行からはすぐに外れてしまう。このDB上に存在しない局面にすぐに突入してしまいます。定跡としてはやや物足りない気がします。定跡DBにあるベストの指し手で進めたときの局面についても思考して定跡DBに登録するなど、何らかの処置が必要だと思いますが、それをやりだすと莫大な計算リソースが必要となるので現状やっていません。sfenで2ch棋譜+αを与えている以上、プロの棋譜に存在する局面であれば必ず定跡DBには指し手があり、この定跡DBに指し手が存在しない局面というのは、対戦相手のソフト(プロの棋譜をそのまま定跡として登録しているタイプのソフト)にとっても定跡DBにはないはずなので、相手のソフトだけ定跡にhitするという事態にはならないので実戦上はそこまで深刻な問題ではないのかも知れません。まとめとりあえず今年の電王トーナメントが終わったら、新しいやねうら王で定跡を生成しなおしたいですね。400HT)を1,2ヶ月ぶん回してみようかと思っています。いま実験的に生成している定跡は、あと10日ほどで上記の目標には到達するのでそれをいったんGitHubのほうで公開します。電王トーナメント参加者の方々は電王トーナメントで使っていただければと。:中々熟成してきて面白くなってきましたね。自分も何か情熱を注げるものを持ちたいものです。自分の言動で人振り回すのは得意ですけど、人の言動で振り回されるのは苦手なのです。いうことかというと、人の作ったものを自分流にアレンジするのは得意なのですが、成果物をいじるのは得意ではないのです。とも、屋根さんの成果物ですから、解析してる間にアップデートが来そうです。なったら、なかなか追いつけない感じがします。どこから手を付けるべきですかねぇ。:あれ?なんか妙なことに。メタをいじるのは好きなのですが、物理が絡むとダメなんです。なったら、なかなか追いつけない感じがします。追いつく必要はないような...。思考部はいまさらそんなドラスティックに変わらないでしょうし。:それもそうですねぇ。どこから手を付けたもんかなぁ。:USIエンジンの中に一定以上の深さで思考した場合はどこぞのサーバに送るとかでは無理ですかね。dragonfruitさんのshogi-serverは長時間対局なのでせっかく長時間思考した結果が生かせるならいい方向だと思うのですが。:なるほど、面白いアイデアですが、定跡として登録するならMultiPVであって欲しいというのもありますね。1手しかないと定跡DBとしてはその変化でハマって必勝パターンを相手に築かれてしまうのもつまらないですし。探索深さも32は欲しいですね。考えるとなかなか自然発生的には発生しないかなと。その思考エンジンを使っているときに1割のCPU資源を費やして、サーバーとやりとりして定跡生成を加担してもらう的な使い方は出来るかも知れません。そのへんは利用ユーザーが増えてこないと、なんともですね...。:なかなか難しそうですね。́・ω・`)そういえば、MultiPVで対戦させるとすぐ持ち時間使い切ってしまう問題が。:持ち時間が少ない場合には時間を節約する効果がありそうで効果が出やすいと思いますが、持ち時間が長い(例えば1手60秒とかの)場合どの位効果が出るか、興味深いです。:長い持ち時間の対局においては持ち時間を節約する効果はあまりないでしょうね...。MultiPV10で思考させてあり、序盤がバラけるので特定の定跡を狙い撃ちされないという利点はあるような。:以前、定跡を作成したことがある者です。私も最初は深い探査のほうが強いだろうと思い、作成しましたが失敗しました。深い探査では自分自身で良いと思った手をつぶしてしまい、えらく中途半端な手を連発するようになりました。(良く言えば柔軟な動き)私が見た感想は、ちょっと駒が上がった稲庭に毛の生えたような動きで、とても戦法や手筋といった概念の動きではありませんでした。相手が棒銀等の急戦に来たときに、深く読み過ぎて変な対応をしていました。24この実際に実現しやすい探査範囲の7種類を重ねた物を基本定跡とし、自己対局で悪い物を消し込みながら、勝った棋譜を定跡に追加していく方法でした。当時のソフトと最新のソフトはまったく別物ですから、また違った結果になる可能性もあるでしょうから参考までに。32で探索していればそう簡単に咎められるような指し手は指さないかと。当時、やねうら王が深い探索をして生成した定跡の指し手について、itumon先生からお褒めの言葉もいただきました。評価関数を改良してから生成しなおしたい。:>クラウド化したいのですが、...:>その思考エンジンを使っているときに1割のCPU資源を費やして、サーバーとやりとりして定跡生成を加担してもらう的な使い方は出来るかも知れません。あるならば,どのエンジンで局面評価したのかを,フォーマットバージョン情報と別に,sfen局面ごとに記載すべきように思われます。候補手ごとに記載しても面白そうですが,無駄にデータが大きくなる割に使いづらいですかね。同一エンジンでの評価値同士でないと相対比較は意味を成しませんし。あと,候補手の並びについて,先手番局面には評価値が高い順,後手番局面には評価値が低い順にソートされていることを保証したほうがベターのように思います。すれば,最初の候補手の評価値を見ればそのsfen局面自体の動的評価値がわかります。どのエンジンで局面評価したのかを,フォーマットバージョン情報と別に,まあ、ソフトの改良で年々R200ぐらい上がっている状況ですから、以前のソフトで生成した定跡自体使いたくないので、古いソフトで作った定跡は捨てて作りなおせばいいかと思ってます。あと,候補手の並びについて,先手番局面には評価値が高い順,後手番局面には評価値が低い順にソートされていることを保証したほうがベターのように思います。対局中にオンラインで定跡を検索しようと思うと、DBファイルに対して”sfen”で始まる文字列をバイナリサーチしないといけなくて、”sfen”の文字列を見つけたら次の”sfen”(もしくはeof)まで丸読みすればいいので(そこは極めて小さなコストなので)、ファイル上で指し手がソートされている価値はあまりないかと...。書き出すときにソートするか、読み込むときにソートするかの違いではありますけども。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。