テラショック定跡の生成部を公開したので、一般ユーザーの皆さんがコマンドを叩けば自動的にかつ効率的に掘れるようになりました。
普通、人間が手動で定跡を検討する場合、将棋所などの検討モードを用いて1つの局面を複数スレッドで探索させるのが普通かと思います。しかし、探索はスレッド数の平方根ぐらいしか実効(実際の効率)がでないので、16スレッド用いても4スレッド分の働きしかしません。3/4の計算資源は無駄になってしまうということです。16スレッド用いるのならば16局面用意して、各スレッドがそれぞれの局面を探索するのが一番効率が良いわけです。これを行えるのが、やねうら王の定跡生成コマンドです。(“makebook think”コマンドなど)
そんなわけで、やねうら王の定跡生成コマンドを使うだけで、手動で1局面ずつ検討させるより、はるかに高い効率で検討が行えます。しかしご家庭のPCでやる場合、例えば8スレ程度のPCでやる場合ですと、ワットパフォーマンスがよろしくありません。要するにかける電気代のわりにはあまり定跡が生成できません。8スレ程度のPCで定跡を生成するのならば(そのPCの部品が破損するなどの費用も込みで考えると)、AWSのスポットインスタンスを用いるほうがコスパが良いはずです。
なのでプロ棋士の方とか、アマ高段者の方は、AWSを使って課題局面を研究すればいいじゃない?ということになるのですが、AWSはWindowsを借りるのとLinuxを借りるのとを比較すると、前者のほうが3倍ぐらいのお値段がします。AWSでWindows環境を借りると大赤字になりかねません。かと言ってITに詳しくない人がLinuxのインスタンスを借りて、そこでやねうら王のソースコードをコンパイルして…という作業ができるかというと、それはちょっと難しいのではと思います。
そこで、AWSを使うよりもっとリーズナブルな料金で課題局面の研究、定跡の生成ができないかと考え、やねうら王公式による定跡の掘削代行をはじめることにしました。
試しにプロ棋士の千田翔太先生に課題局面(50~70手目付近)を10個ほど頂戴して、そこからMultiPV 4(各局面の候補手4手)でdepth 36(相当)で5手ほど掘り進めてみました。
・評価値が-400より悪い候補手は延長しない
・千日手スコアがついている候補手は千日手スコア以外になるまでMultiPV1で延長する(大抵は延長を繰り返していくと千日手局面に到達します)
課題局面が中終盤でしたのでなかなか掘り進まなかったのですが、AWS換算で20万円ぐらいで掘れました。つまりは1局面につき2万円程度です。
掘り進めた定跡を千田先生に見ていただいたところ、「この出来で1局面2万円なら良いのでは?」みたいな回答が得られました。
そこで、上の条件と同じ掘り方をするとして、その掘削代行をしようと思います。
・局面を指定してもらう(その局面までの棋譜をKIF/CSA形式などでもらう)
・その局面までMultiPV 4で掘ります(サービス)
・その局面からMultiPV 4 , depth 36(相当)で5手先まで掘り進めます(このとき、最大で4手×4手×4手×4手×4手 = 1024局面について探索します)
・評価値が-400より悪い候補手は延長しない(その先を調べません)
・千日手スコアがついている候補手は千日手スコア以外になるまでMultiPV1で延長する
・納品形式はやねうら王の標準定跡フォーマットになります(やねうら王から使えます)
そして気になるお値段ですが、1局面につき、1万円、前払いです(`・ω・´)b
なんとAWSを利用する半額です。もっと深くまで掘って欲しいだとか、MultiPV 10にして欲しいなどは要相談で。
いずれにせよ、AWSを利用する場合の半額ぐらいで掘ります。
その代わりと言ってはなんですが、ここで掘った定跡は、ご依頼を受けてから半年以上経過した時点でテラショック定跡として公開したり、『将棋神 やねうら王』の商用版にバンドルしたりします。公開NGの場合は、料金50%上乗せとなります。(その場合でもAWSを借りた場合の75%程度の金額なので安いと言えば安いはずです。)
ご注文は、私までメールでお願いします。(yaneurao@gmail.com)
あと、プロ棋士の先生とやねうら王、そして、スポンサー企業様との3者がタッグを組んで課題局面を研究するという試みをやっていきたいと思っています。
スポンサーについても良いよという企業様は、私までご連絡いただければと。年間予算、50万円~100万円ぐらいあれば、それなりに定跡を作れるはずで、その定跡の指し手がタイトル戦などで指されて「これは、インテル品川定跡ですね」だとか「この戦型はさくらインターネットの定跡研究によって息を吹き返した」だとか、そういうのがテレビ中継で流れれば大きな宣伝になると思いますし、将棋史にも名が残ると思います。
興味のある企業様は、私にメールいただければと。
■ 追記[2019/05/30 22:00]
Q) 依頼は匿名でできますか?
A) いまのところメールでの受付けのみなので匿名では出来ませんが、依頼主の名前は依頼主からの許可がない限り公表はしません。
Q) この依頼をした場合、その定跡の著作権は誰に帰属しますか?
A) 私は棋譜や指し手自体には著作権は無いという立場なので、お渡しした納品物はご自由にお使いいただいて構いませんし、私のほうでも公開NGという指定がない限り、ご依頼から6ヶ月すぎた時点で、その納品データ自体は自由に使わせていただきます。(そのままの形での配布はしませんが、テラショック定跡にマージするなどして、公開することがあります。)
https://twitter.com/mecha_sayurin/status/1134728026313318404
勝又せんせーには「まずは、やねさんのブログを読んで理解を出来るところまでにはなろうか」(菩薩のよーに生暖かい目で)とアドバイス貰えたので、そこからお勉強しないとダメみたいです。
因みにNNUEて、ヌエって読むんだ!?に、勝又せんせーは白目向いてた— 気軽にさゆ殿と呼んで (@mecha_sayurin) June 1, 2019
お疲れ様です。いよいよ将棋界にもAWSを投入して検討するに値する時代になったんですね。やねさんのご貢献ははかり知れませんね…。
もし宜しければ、定跡を含む将棋神やねうら王(1)のいろんな意味でのアップデートもご検討頂ければ幸いです。
敢えて(1)と追記せざるを得ないのは、ユーザーとして複雑な心境ですが…。
フリーザならこう言うでしょう。『将棋神やねうら王(1)』は変身(大型アップデート)をあと2回もオレは残している。
6月に1回、8月に1回ぐらいを予定してます。
そのアップデートで『将棋神やねうら王(1)』は完全体(謎)になります。
定跡まわりの処理は、大改造になるので(コンピューター側の戦型指定機能や定跡の閲覧機能など)、そのへんは『将棋神やねうら王2』ですね…。
お疲れ様です。
・定跡掘削というより、課題局面解析というべきでは。
・課題局面がほぼ互角とは限らないのでは。(多くはそうでしょうが)
・フォームで匿名で依頼できるようにすべきでは。支払いはPaypalなどで。
で、dbに依頼が格納されて支払い確認順に自動で処理して結果をメール。
待ち行列が20件以上あると自動でお断り?
・もしくは、誰がどの局面解析を依頼したかについて守秘義務をさだめるべきような。しかし管理面倒いのでなるべく個人名取らない方が。
・このサービスは予告なく停止し、または仕様変更することがあります。受付済みで代金支払済みの分については、解析結果を戻せない場合には返金します。とか。(匿名で受けてると返金つらそう。匿名依頼で2ヶ月以内に確定できず返金出来なかった部分はCSAに寄付?と予め承諾?)
・公開NG指定でも他で掘り進めて結果的に局面接続する、または他の公開OK指定で同一局面解析の依頼がくることがあり得るので、その際はその接続後または他のOK依頼での局面解析結果を公開する事となるとお断り(確認的な明確化)すべき。
> ・定跡掘削というより、課題局面解析というべきでは。
おー、なるほど…。まあ、いいやw
> ・課題局面がほぼ互角とは限らないのでは。(多くはそうでしょうが)
評価値が-400以上の枝は延長するのでプロ的にはそれぐらいで十分のようです。
例えば、角換わりのほぼ互角の局面からMultiPV 4で掘った場合、平均分岐数は3ぐらいになります。
また、評価値X以上の枝を延長してくれというような注文も可能です(`・ω・´)b
※ その場合は掘る時間が増えるので料金少し割増になります。
> ・フォームで匿名で依頼できるようにすべきでは。支払いはPaypalなどで。
注文増えてきたら自動化したいところです。そんなに増えてくるのか、増える前にスポンサー企業がつくのかはわかりませんが…。
> ・公開NG指定でも他で掘り進めて結果的に局面接続する、または他の公開OK指定で同一局面解析の依頼がくることがあり得るので、その際はその接続後または他のOK依頼での局面解析結果を公開する事となるとお断り(確認的な明確化)すべき。
公開NGの場合は注文ごとに定跡ファイル分けておくのでそのへんは大丈夫かと。(すでに探索済みの局面がある場合は少し無駄になりますけども、まあ誤差かと…)
数年後には定跡採掘課金額で勝負が左右されるソシャゲみたいになりそう
研究だけで勝てるような甘い世界ではないと思いますが、しかし、地力のあるプロ棋士がAIをパートナーに引き入れたときは確かに課金額勝負になる可能性はありますね。
AWSの約半額とのことですが、それはAWSのWindowsインスタンスに対してでしょうか? それともLinuxインスタンスに対してでしょうか?
もちろん、Linuxかつスポットインスタンスに対してです(`・ω・´)b
私の自宅のPCを稼働させるならば、AWSの1/3ぐらいの金額になるので(電気代 + 機材の減価償却費 + 破損するパーツの代金)、私の手間賃を足してAWSの半額ならば、まあ、赤字にはならないかなと。
おぉ! Windowsのインスタンスに対しては約1/6の金額ですね!
ここは仮想通貨発掘に似た報酬型にするのは?
1.課題局面
2.報酬額
…を受け付け、余剰マシンを有する人達で「発掘」してもらい、探索量に応じて報酬の一部を受け取る…とか?
家庭用PC(10コア以下)の場合、電気代 + PCのパーツの修繕代のほうが報酬を上回りますけどね…。
課題局面なんて山ほどあるわけでプロ棋士でも1局面1万って結構高いよね。しかも人間だと-400からが本番だからねえw
5手先ではなく4手先まででよければ1局面あたり、その1/10の価格(2500円)になりますし、depthを2個下げてよければ、そのまた1/3ぐらいの値段になりますし、まあ、活用の仕方次第ではないですかね。
たくさんの人が使えば同じ局面の依頼も増えるだろうからそうしたらぼろ儲けだね。
問い合わせ一件も来てない現在、全くの画餅ですけどもw
面白い!
逆説的にテラショック定跡の太っ腹っぷりが分かる
テラショック定跡の採掘だけでWCSC29の優勝賞金(100万円)をすべて溶かしてしまう男
YaneuraOu-2018-Otafuku-learn.exe Hash 4096 , Threads 8 , bookfile no_book , MultiPV 5 , makebook think bw read-b.sfen read-w.sfen 7T12.db startmoves 7 moves 6 depth 30 , quit
と、バッチファイルに書いて実行すると、total 0 nodesと出て定跡が出来ません。何故でしょうか?
startmoves 1なら問題ないのですが….
movesで6手目までと指定しているのに、startmovesで7手目以降を対象としようとしているから?
moves 6 が7手目から6手分とかんちがいしていた様です。
どうも有難う御座います。
(`・ω・´)b 解決したようで何より