「やねうらお」を含む日記 RSS

はてなキーワード: やねうらおとは

2022-01-07

経験から1ヶ月!Pythonで観る将ライフを向上させた話(プログラム編)

まとめ

プログラミング経験から1ヶ月ほどで、将棋評価値の新たな方法でのグラフ化を行うPythonツールを作った。

https://github.com/k-the-p/notherscore

この記事は2本立てです。プログラミングより結果のグラフ将棋に興味がある方はもう一方の将棋から読むことをおすすめします。

未経験から1ヶ月!Pythonで観る将ライフを向上させた話(将棋編)

目標

評価値以外の観る将の楽しみとして、手の広さの可視化提案する

AIはわれわれアマチュア将棋への親しみを大幅に向上させてくれた一方で、棋士が悩みに悩んだ結果として評価値が下がる手を指してしまったときに、「悪手きたwwww」と騒ぐ主にABEMAのコメント欄には忸怩たる思いがあった。

とはいえ、もう評価値を知らなかった時代に後戻りするなんてことは誰にもできないだろう。そして、電王戦から将棋にハマった自分自身としても、AI否定はしたくない。

であるなら、AIを用いた新しくよりよい将棋の楽しみ方を探っていくしかないのではないか

以前から私は、「AIの手を指せるなら人間も苦労しないんだよなあ」と思っていた。あるとき藤森哲也先生Youtubeチャンネルで言っていたことを聞いて得心がいった。「AIの一手は最強の一手なんです。確かにプラス1000点になるけど一手間違えた瞬間にマイナス何百点になるような綱渡りの手。それよりもアマチュアの皆さんにはプラス数百点で得は少ないけど安全な道、最善の一手を学んで欲しい」(大意)と。

ここで言う「最強の一手」に人間にして最も近いのは紛れもなく藤井聡太四冠であろう。藤森先生アマチュアに向けて喋っていたが、その葛藤は間違いなくプロの中でもあるはずである渡辺明三冠が言うように「藤井くんと全く同じスタイルを今から目指しても絶対藤井くんより強くなれない」のは自明であるからして。

私はここにドラマがあると思う。また、最強の一手と最善の一手が等しく「いい手」に見えてしまうわれわれアマチュアとしては、そこを機械に教えてもらえるのであれば、棋力向上にも繋がりそうである

具体的目標

第1候補手と第2候補手の評価値の差を取ってグラフ化すればよさそう?

(差が小さければ手が広い、差が大きければ絶対手に近い、綱渡り

目指すのはあくまで便利な将棋ツール将棋AIを作りたいわけではないので、将棋AI自体局面を入れたら評価値を吐く謎の箱という扱いでよい。

手法

Python一択

グラフ化や数値の扱いだけでなく、将棋AIとのやりとりをやってくれるあれこれもあるようなので。

あと習得が楽だと聞いた。その話を教えてくれた人はもう10年間英語学習法をブクマし続けてるけど。

あと「読みやすコードじゃないと動かない」って設計思想がかっこいい。ついでに言うといわゆる「おまじない」が少なそうなのも魅力。(CのHello world挫折した経験あり。studio.hって何……)

何をしたか

詳しい人に聞く

プログラム講師をやっている?方が音楽制作を初歩からやってみる、という(残念ながら)リアルタイム視聴者が俺だけしかいないような配信があったので、音楽の基礎(についての知識は持っていた)を教えてあげたお返しのような形で、「pythonでこういうことがしたくてこういうライブラリがあるのはわかった。経験HTML+CSS変数導入前、Bootstrapなんてなかった)のみ。どうしたらよいか」という質問をしたら、「progateは簡単すぎると思うのでPaizaが丁度いいのではないか」というアドバイスを頂き、比較もせずに即登録したのだが結果的にはこれがドンピシャだった。

Paizaラーニング

最近流行りの、環境構築不要で講座の内容を書いて覚えるタイプサイト

無料で入門講座の序盤を受けていたらふと目に入ったのが、「対象者:これからプログラミングを学びたい方。HTMLがどのようなものかを知っている方。」でYoutuber先生オススメ完璧か?と思った。そして実際に完璧だった。

基本的に1講座3分+演習1~2問+やりたければ問題集たくさんという形式なのだが、これが簡単すぎることなく難しすぎることもなく、俺の知識レベルベストマッチだった。基本的に毎回何か書くことになるので、変数とは~みたいな解説だけで終わる回がほぼ無いのも飽きなくてよい。

Python入門(と言ってはいるがまだこれだけで発展編はない)の見出しは「プログラミングとは」「条件分岐比較演算子」「ループ処理」「リスト」「辞書」「多次元リスト」「関数」「クラス」「クラス発展」「例外処理」に各5~8講座*3分+演習、という感じ。クラス発展の途中で行けそうだと思ったのでドロップアウトして実製作に移った。実際関数まで理解していれば、この程度の小さなツールには十分だった(もしかしたらクラスを使えば多少楽になった場面はあったかもしれないけど)。

また、これは書いてる今気づいたことだが、上のコースで学んだことで、実際に役立たなかったものほとんどなかった(強いて挙げれば辞書くらい?使えてないだけかも)。このこともコース構成の優秀さを示している。

ここまででだいたい2週間くらい。

Google colab

もともとこのサービスは知っていたのと、谷合先生が実際に使っていたように、便利そうなライブラリのcshogiが主にcolab(jupyter)上で動かすことを意図しているようだったので、まずここから入った。最初はcshogiが列挙してくれる特定局面での合法手をリストに入れて、そのリストの項目数=その局面での合法手の数を出力することから始めた。これは本当に簡単にできて興奮した。

学習と好きなことが直結してると、こんなサンプルコードみたいな簡単なことで喜べるのでコストパフォーマンスがよい。

cshogiとやねうら王をusi連携する

cshogiのチュートリアルで紹介されているレサ改というAIがどうもmultipv(有望な候補手を2手以上挙げる)に対応してないらしく、強さ的な問題でいずれ手を出すつもりだった予定を繰り上げてやねうら王との連携を試みる。

makeって何?あー、もりかしてMakefileが無いと動かない?(これを書いている今もこんな理解である)みたいな人間でもなんとかやねうら王をビルド?することはできた。レサ改をcshogiに読ませる数行のサンプルコードがとても役に立った。今でもあの完成品らしき拡張子が無いファイルがなんなのか分かってない。(なお、評価関数nn.binが無いと怒られたのでどこのご家庭にもある水匠4のそれをぶち込んだら動いた。評価関数とやねうら王の分担は今もって理解あやふや)(また、途中でAyane[やねうらお謹製ライブラリ]も使おうとしたがcolab上では上手く動かす方法が分からなかった)

一応これでcshogiで局面の最善手と次善手およびそれらの評価値を呼び出せるようになったのだが、単にdebugでずらずらと余計なものまで出力するのではなく、重要な指し手周りのinfoだけ出力するようにしようとしたが、上手いやり方がわからず、結局こうなった。

sys.stdout = open('out.txt', 'a')
engine.go(listener=print)

ここは絶対もっとマシなやり方があるはずなので、識者の教えを請いたい。

ようやくWindowsPythonVSCodeを入れる

Colab上でまあまあ目処がついたので、この辺りでPython環境を作った。ここまでそれをやっていなかった理由は、「おま環」トラブル可能性をなるだけ遠ざけておきたかたかである環境が悪いのか俺が悪いのか分からない、というのは初心者にとって限りなきストレスである。あーネットが繋がらなくてルーターの設定や接続とか支払いとか文字通り部屋をひっくり返しながら調べてたら実はフレッツ自体が落ちてた件を思い出してイライラしてきた。cshogiはJupyter上で動かすことを意図しているようなので、それで動かなければ自分の書き方が間違っているのだとほぼ確実にわかる。

まあこの辺りはいろんなサイト見ながら仮想化などしつつ普通に仮想化が何か分かってないんですけど。

Jupyter notebook

これまでColab上で書いてきたものは多少の書き換えで動いたので、ローカルにJupyter notebookをインストールして、数字計算グラフ化を試みる。

ちなみにこの時点で得られているデータはこんな感じ。

go
info depth 1 seldepth 1 score cp -47 multipv 1 nodes 483 nps 241500 time 2 pv 3c3d
info depth 1 seldepth 1 score cp -86 multipv 2 nodes 483 nps 241500 time 2 pv 4a3b
info depth 2 seldepth 2 score cp -53 multipv 1 nodes 847 nps 423500 time 2 pv 3c3d 9g9f
info depth 2 seldepth 2 score cp -68 multipv 2 nodes 847 nps 423500 time 2 pv 8c8d 7g7f
info depth 10 seldepth 17 score cp -78 multipv 1 nodes 100163 nps 1963980 time 51 pv 8c8d 2f2e 4a3b 7g7f 3c3d 2e2d 2c2d 2h2d 8d8e 6i7h 8e8f 8g8f
info depth 10 seldepth 17 score cp -111 multipv 2 nodes 100163 nps 1963980 time 51 pv 3c3d 7g7f
bestmove 8c8d ponder 2f2e
go
info depth 1 seldepth 1 score cp 117 multipv 1 nodes 206 nps 206000 time 1 pv 2f2e
info depth 1 seldepth 1 score cp 78 multipv 2 nodes 206 nps 206000 time 1 pv 7g7f
...

今回の小目標は、goで区切られた中からから2行目と3行目のcpほにゃららを取得していい感じのリストにする、というものだ。この辺りは正規表現でなんとかなるだろうと見通しを立てたが、実際そうなった。

ただ、後手が見たとき評価値が後手目線なので、それだけにマイナスをかけるのはどうするか(そうしなければ、先手+3000点の次が「後手から見て」-2900点だったりして綺麗にグラフにならないのだ)を調べるのに結構時間が掛かった。

また、詰み周りでまたプラスマイナスカンストの絡む計算をしたくないのもあり、数値にNaNを入れてグラフ表記を省略することにしたのだが、そうするとnumpyの関係整数(とNaN)しか扱わないのに浮動小数点で計算しなければいけなくなって若干気持ち悪かったり。まあ動くのでヨシ!

中間報告

この時点で、ローカルにKIFファイルを保存し、pyファイルでcshogiと水匠を動かし、Jupiter notebookを開き評価グラフと手の広さのグラフを重ねて表示する、というそれなりのものは出来上がった。

簡単に言えばpyファイルで1手10局面(森内チャンネルに出てたHEROZの方が使ってた数字をそのまま使っているので特に意味は無い)探索させ、最善手と次善手についての生の評価データを吐き出させ、ipynbでそれを整形し、グラフ化している。

基本的に全部VSCode上でできるので、慣れれば計算時間も含めて10数秒で結果が出るのだが、このワークフローはいかにも美しくない。

なので、Flaskという簡単らしいフレームワークを使ってローカルWebアプリとして使えるようにしようと思った。inputとoutputをどうにかするだけだから余裕やろ。

Google colabを触り始めてからここまで1日。圧倒的成長!

ローカルWebアプリを作る

Flaskを学ぶ

Paizaラーニング再び。後半ではデータベースとか本格的な話もあるようなのだが、txtに書き込む一行掲示板を作るまでの前半部を高速で履修(演習は全部飛ばした)。なるほどー、こうやってやりとりするのね、と最低限は完全に理解した

モジュール

Jupyter向けのコード普通Pythonに直してあっちで数字を出してこっちでそれを受けて元に戻して……とかやってると循環参照か何かで怒られることに。その対策に細かく部分を分けて関数にしたのだが、その場合ってもしかしてdefの内部しかまれない?(共通部分も読まれると思ってた)(いや、共通部分は読まれるけど他のdef内が見えないのか?何も分からん)なるほど。こうなると関数の内部から上に戻るためにクラスとか欲しくなるのかなーという感想

最終的にWebに公開しようとこの時点では思ってたので、txtに一旦出力するのが安全性的にどうかとか考えてたのだが、テキストの読み取り周りでハマる。結局抜け出せず諦めた。

以降は、HTMLダブルクオートが抜けてるのに一時間気づかないとか、FlaskのXSS対策対策をするとか、ファイル書き込み設定をミスって2万手くらい蓄積されて評価グラフが大変なことになったが、原因に気づかずひたすらグラフ生成部を調べ続けるなど、非本質的問題にかかずらっていたので書くことは特にない。

GithubVSCodeとなら連携がらくらく

なので、最初にgitignoreしてなかったせいで1万ファイルくらい上げそうになったけど、それ以外は特に問題も無く。中間報告からここまで2日ほど。結局1ヶ月かけずにプログラミングをそれなりに身につけることが出来た。「プログラムを覚えたければ作りたいものを見つければいい」というのは本当だな、と改めて思った。

で、どうなったの?

については将棋編の方で詳しく書いています

https://anond.hatelabo.jp/20220107060727

どれくらい書けるようになったのか、を見たい方は主にvalue_output.py(将棋AI思考させてデータを取り出す)とgraph.py(データを整形してグラフを書き出す)を見ていただければいいかと思います

謝辞

最初にPaizaを教えてくださったYoutuberの方、cshogiを初心者でも使いやすいように作って展示してくださったTadaoYamaoka様、水匠開発者のたややん様、水匠含めこんにちの将棋AIの基盤を作ってくださったやねうらお様、cshogiを通して利用したpython-shogiのKIFパーサーを書いてくださったTasuku SUENAGA様に、厚く御礼申し上げます

最後

私は現在仕事Twitterフォロワー募集しています

30歳無職よろしくお願いいたします。

https://twitter.com/k_the_p

2020-06-29

anond:20200629120539

やねうらお氏が言っとったけど、むしろちょっと前の将棋ソフトのほうが今回の簡単に見つけられるらしい。

枝刈りが進みすぎて将棋ソフトも「これはないな」って早々に捨てちゃってるってこと。

「ちなみにソフト10秒で6億手読むけどね」

って気を遣って言わない開発者もいれば、あえて煽るやねうらおもいる

2019-06-03

はてなーって音楽の話にはてんでついてこれてないよね

先日の吹奏楽部話題でも思ったけど、はてなーって吹奏楽部とかの悪習は知らん人多かったみたい。

やっぱり進学校ってほとんど吹奏楽とか熱心にやるほうじゃないってのが影響してるのかな。洛南ぐらいだよね。洛南進学校としては格が少し落ちる感あるし。

それだけじゃない。音楽って色んなジャンルがあるのにそれで盛り上がることもない。アニソンですらない。JASRACはクソって書けば大量の星がもらえる。

さらに言えば作曲や楽理の話題は本当に話題にならない。そのくせ数学はたまに伸びる。昔はやねうらおさんもコード進行聴覚心理考察記事とか上げてたんだけどね。

2018-05-04

やねうらおみたいに俺の箸の持ち方のほうが優れてる、っていうのもっと増えろ

http://d.hatena.ne.jp/yaneurao/20080804

2016-10-13

三浦弘行九段竜王戦出場停止について

どうも、id:BigHopeClasicです。

本当はこんな内容、自分はてなブログ投稿したほうが見た目もきれいになるしいいんでしょうが、持続できないブログを作るのも気後れするので、増田を使います

さて、掲題の件、はびこりそうな誤解がいくつかありそうなのが将棋ファンとして気になったので書こうと思ったものです。

カンニングはあったの?

本稿投稿時段階での報道を元にする限りでは、

日本将棋連盟三浦九段に対して、カンニングをしていないという悪魔の証明を求めた」

しか解釈できません。つまり将棋連盟三浦九段に対して、決定的な物証などを何一つ押さえないまま

「疑われているので潔白を証明しろ

というに等しい要求を投げかけたことになります

この点については続報を待つ必要がありますが、あくまでも現段階での私個人の感想としては

「下策中の下策、愚の骨頂」

というコメントに尽きます

なるほど確かに、三浦九段が疑わしいとする複数棋士から申し立てはあったのでしょう。

連盟がそれを黙殺すれば、その疑惑文春砲などで火を噴いた可能性も否定できません。

しかしながら、決定的な物証がなければ、いくら週刊誌が書きたてようが大きなダメージにはならないのは日本相撲協会週刊ポスト週刊現代顛末を見れば明らかです。

大相撲八百長問題警察から情報提供で明らかになる前、週刊ポストは30年にわたって角界八百長告発する記事を書き続けてきましたが、その内容は元力士らの極めて具体的かつ迫真性のある証言に基づくものはいえ、決定的な物証をおさえたものではなく、大相撲はそれによってはなんら決定的ダメージを負うことはありませんでした。

週刊ポストに対しては、日本相撲協会は徹底的に無視をし続けることで対応したのです。

また、週刊現代八百長報道に関しては相撲協会と各力士は、週刊ポストとの対応とは一転して大量の名誉毀損訴訟を起こしそのことごとくに勝訴しています週刊現代八百長報道週刊ポスト比較してもあまりにお粗末だった)。

日本将棋連盟は、こうした大相撲八百長問題におけるリスク評価対策から何も学ぶことなく、あくまでも現段階の報道に基づくところからは、およそ愚劣な対応をしたと言わざるを得ません。

スマホ将棋カンニングに使えるわけないでしょ?

さて、上記とは別にこの問題が深刻なのは、自宅にあるパソコン遠隔操作するまでもなく、2016年7月におけるスマホ将棋アプリの棋力は、渡辺明竜王佐藤天彦名人羽生善治三冠といったトップ棋士の棋力をすでに上回っているという有力な推測があるからにほかなりません。

そのような推測があるからこそ、将棋連盟12月中旬から

「対局室へのスマホを含む電子機器の持ち込み禁止、昼食休憩時における将棋会館外への外出禁止

を定め、これに違反したものは除名を含む厳しい処分を課すことを決め、さらに今週末から開幕する竜王戦では、対局者に対し対局前に金属探知機で持ち物チェックをするという対応を決めていたわけです。

新聞報道ではこの金属探知機での調査については渡辺竜王三浦挑戦者双方の同意の下とされています

(なお、上記のルール12月中旬から適用とある通り、仮にこの時点で将棋連盟不正に関する動かぬ物証をつかんでいたとしても、それを三浦九段に対して遡及適用できないことは当然です)

この件を報じた朝日新聞記事についていたブコメからいくつか代表的な反応を取り上げます

b:id:temtex 仮に事実としてもだ、たかスマホアプリでどうにかなるものなのか…と思ったら、別のとこで走らせたソフトの結果さえ判れば良いのか(但し"スマホ搭載"と記事にはある)。プロに勝てる有力なソフトってどんなの?

b:id:namnchichi スマホアプリタイトル取れるのか?

b:id:symbioticworm 現時点でスマホで走らせられる将棋ソフトなんてたかが知れてるから不正があったとすれば外部との通信必要なはずだけど。現段階では情報が少なすぎる……。

b:id:buu さすがにスマホ搭載のアプリじゃ参考にならないだろうが、協力者と連携すればカンニング可能だろう。人間よりもソフトが強くなるとどういう将棋界になるのかと興味深かったのだが、こうきたか

b:id:l0x0l スマホ将棋ソフトレベルで、プロ棋士の対局の参考になるかは疑問

b:id:kaitoster 『対局中、スマートフォンなどに搭載された将棋ソフトを使って不正をした疑い』←スマホ将棋ゲームすでにプロタイトルホルダーより強いソフトあるのかな?

なるほど、確かにプロ棋士とコンピュータ将棋が戦う電王戦ではコンピュータ将棋が大きく勝ち越しているとは言え、最新の事情を詳しくご存知でなければ上記のような反応は出てくるのが自然かもしれません。また、今回の当事者である三浦九段電王戦に出場した際の対戦相手が、東大駒場情報基盤センター学生用iMac680台をクラスタリングしたGPS将棋であったことも、上記のような反応につながるかもしれません。そこで、これらの誤解を解消するため、コンピュータ将棋の現況について説明したいと思います

ここ3年のコンピュータ将棋の強さの推移

まず、上記の三浦vsGPS将棋が行われて以降、ドワンゴ主催電王戦では使用されるCPUが制限されています。この制限に基づき電王戦で使われたCPUは、2014年がcorei7 4960X(6コア12スレッド)、2015年がcorei7 5960X(8コア16スレッド)とここまではその時点で調達可能なcorei7シリーズエクストリームエディションを使用していますが、今年2016年世代こそ最新のskylakeとなったものの4コア8スレッドcore i7 6700K、そして来年2017年使用CPUは同じく4コア8スレッドのcorei7 6700と、使用するハードウェアの性能は年ごとに抑制されるフェーズに入りました。

ではそれによってコンピュータ将棋パフォーマンスの伸びに制約がかかっているかというと、全くそんなことはありません。将棋ソフトponanza開発者山本一成さんは、2016年電王戦開幕前に「corei7 6700K1台で動くponanzaは、iMac680台をクラスタリングしたGPS将棋より遥かに強くなった」と宣言しています。これは根拠のないことではありません。

現在フリーで入手できる将棋ソフトについては、有志が統計的有意手法を用いてその相互間の強さをeloレーティングを用いて計測しています。その一例として、こちらのウェブサイトがあります。eloレーティングの仕組みについては[wikipedia:イロレーティング]を参考にしていただくとして、目安としてはレート上位から見て下位に100差あれば期待勝率64%、以下同じく200差で75%、300差で85%、400差で91%、500差で95%、600差で97%、となります

ponanzaフリーで公開されていないため、上記のウェブサイトにはレートは計算されていません。しかし、2016年電王戦に出場したponanzaは、このウェブサイトで「Apery twig」として掲載されているソフトに対し勝率97%を上げていることが、電王戦に出場した山崎隆之八段をサポートした千田翔太五段の調査によりわかっています。つまりこのponanzaのレートは「Apery twig」の3250に600を足した3850前後であろうと推定できます(なお、上記のサイト検証に用いているハードウェアIvybridgeおよびskylake世代の4コア8スレッドメモリ16GBであり、これは2016年電王戦における使用ハードと大きな差はありません)。

一方、2013年電王戦に出場して三浦九段と対戦したGPS将棋は、この表に掲載されているGPSFish(レート2879)をスレーヴとしてこれを680台クラスタリングしたものでした(厳密に言えば電王戦に出場したGPSfishはこれより一つ前のエディションですが大きな棋力向上はないもの仮定します)。この680台クラスタリングした際の棋力向上幅については、GPS将棋開発チームの田中哲朗東大准教授が、根拠は全く無く経験に基づく推測にすぎないとしながらもレートにして400程度と語っており、これを採用します。

そうすると2013年電王戦GPS将棋推定レートは3279となり、2016年電王戦ponanzaとのレート差はおよそ570、ponanzaから見た期待勝率は96%となりますわずか3年の間に、コンピュータ将棋は1台のデスクトップPCで、680台のパソコンクラスタリングした将棋システムに96%勝利する成長を遂げたのです。

(なお、コンピュータ将棋がかくも異常な速度で成長したのは、ドワンゴ電王戦において「使用ハードウェア制限」と「提出後対局まで6ヶ月間一切のアップデート不可その間棋士研究し放題」という条件をつけてしまたからだと考えています。こんな条件をつけなければ開発者はここまでしゃかりきに強化はしなかったはずです。ドワンゴがコンピュータ将棋大会に出してる優勝賞金の300万円なんて開発費の元手にもなりゃしないし、強いコンピュータ将棋を作ったって売り物にはならないので、モティベーションはこんな厳しい条件のもとで恥をかかないためにはひたすら強くするしかない、ってとこだけなんですから

将棋ソフトプロ棋士の強さの関係予測

もうひとつ、これらの将棋ソフトプロ棋士の強さの関係はどうなのだということも前提として必要になります。まず、プロ棋士レーティングについては、こちらのウェブサイト現在最も信頼され参考にされています。eloレーティングは、基準となる値を何点に設定するかで絶対値はいくらにでも設定できますが、上記の点差と期待勝率関係基準値を何点にしようが変わらないので、異なる基準値をとる異なるレート表間での比較可能になります

さて、コンピュータ将棋の公開対局場として、GPS将棋の開発チームが開設しているfloodgateというサイトがあります。ここでも参加者の対戦成績に基づいてレーティングが計測されています。また、この対局場は、コンピュータ将棋だけでなく人間も参加することができます。このfloodgateに、一時期上記の千田五段が参戦されていました。その際に記録されたレートは2800ほどでした。千田五段が参戦されていた時期のプロ棋士レーティングにおける数値と、その当時の羽生三冠との数値の比較から羽生三冠がfloodgateに参戦した場合予測されるレートは3000から3100程度だろうと見込まれています。また、先に紹介したコンピュータ将棋レーティングサイトのレートは、floodgateのレートの数値と大きく変わらないようにする工夫がされています。なお、羽生三冠のここ数年のプロ棋士レーティングは時期による前後はあれど概ね1900プラスマイナス50程度であり、佐藤天彦名人渡辺竜王の棋力もほぼこの幅に安定していて、現時点ではこの3人が名実ともにほぼ拮抗した最高レベルの棋力といえます

ここから考えた際に、2016年電王戦ponanza羽生天彦渡辺といったトップ棋士の棋力差はおよそレート差800、ponanzaの期待勝率は99%超、という推測になります第2期叡王戦本戦PV千田五段が、羽生ponanzaに対する勝率を0.5%と仮定しているのは、まずこの推測に基づくものと考えて相違ないでしょう。もちろんすべての基準となるfloodgateでの千田五段の数値は、普通プロ棋士公式戦ではありえない短い持ち時間の下で行われたものであるため、実際の羽生ponanzaの実力差はこの通りではない、という反論は容易ですが、そもそも持ち時間が9時間に増えたからと言ってレート800の差は埋まるものではなく、コンピュータ将棋も持ち時間を長くすればそれだけ強くなることを考慮すれば本質的議論とは言い難いでしょう。

やっと本題、スマホにおける将棋アプリの強さ

ここまで長い前置きを置かないと、なかなかこの本題に説得力が出ないと思いましたが、いよいよここから現在スマホ将棋アプリ話題です。

これだけ強くなったコンピュータ将棋ではありますが、これまでは基本的パソコン上で動かすものでした。スマホ用の将棋アプリも多数出てはいましたが、プロ棋士最上位に匹敵すると見られているものはありませんでした。

ところが今年の7月、android用の将棋アプリとしてshogidroidがリリースされます。これ自体将棋ソフトのGUIであって思考エンジンはないのですが、このshogidroidの売りは、今年の6月に一般公開された当時の最強フリー将棋ソフト「技巧」をandroidスマホの上で動かせるようにしたことでした。技巧の強さは先のコンピュータ将棋レーティングサイトで4コア8スレッドで動かした際に3578。ponanzaの3850には及ばないとは言え、今年6月当時ではponanzaに次ぐ2番めに強いソフトで、人間から見れば驚異的な棋力です。

もちろん、この技巧といえど、その棋力がCPUの能力に依存することは言うまでもありません。しかし、スマホ今日日クァッドコアは当たり前、Huawei P9のようにオクタコアを搭載してGeekbenchを用いたベンチマークテストで高い数値を出すスマホもある時代です。第4回将棋電王トーナメントで3位になったやねうら王の開発者で、皆様もよくご存知のやねうらおさんは、2016年9月時点のハイスペックスマホに、一切のスマホ用のチューニングを行わず思考エンジンを搭載しても、レートの落ち幅は400程度推定しています。この推定を当てはめて技巧をshogidroidで動かした時のレートを推定すると3178。やはり羽生天彦渡辺を上回っていることになります。実際にはもちろんやってみないとわかりませんが、あくまでも推測上では、すでに電王戦プロ棋士スマホで十分に成立し、それでもプロ棋士の分が悪いことが予測される段階に突入しているのです。

※ちなみに、先の電王トーナメントで優勝し来年の電王戦に出場する最新のponanzaは、今年の電王戦に出場するponanzaに9割勝つとの開発者山本さんの発言がありました。これを信じるならponanzaのレートは4200となり、スマホに積んでも3800で、やはり羽生三冠の期待勝率は1%に満たないことになります

これが2016年10月における、スマホで動かすコンピュータ将棋の現状になります恐ろしいことには、shogidroidは無料アプリであり、その思考エンジンの技巧もフリーウェア。それを最高スペックで動かすHuawei P9は54000円で買える、というところにあります。この状況をどう考えるかは皆様のご想像におまかせします。

カンニングたか検証できる?

さて、お気づきの方もいるかもしれませんが、疑われた三浦九段の棋譜をソフト検証してみれば白黒はっきりするのでは?と思われるかもしれません。しかしそれは極めて困難であると申し上げましょう。

まず、Shogidroidの上で動かせるソフトは技巧に限りません。その他のソフトも動かすことが可能です。次に、同じ将棋ソフトであっても、ある局面検討させたときに導く最善手は、CPUの性能や検討させる時間によって異なります。そもそも将棋ソフトにはある特定局面において常に同じ結果とならないよう検討においては乱数使用されており、一局の将棋の棋譜からではその人がカンニングたかを導くのは容易ではありません。

さらに、将棋は二人零和有限確定完全情報ゲームである以上、ある局面における最善解というのが必ず存在します。ということは、その最善解を自力で導いたかカンニングたか区別は、着手から「だけ」では判定できないことになります

以上の理由からカンニングたか否かの実験第三者が行っても、その結果についてはいくらでも疑義をつけることができ、有効ではないと言えましょう。

取り急ぎ、私からは以上となります

2016-09-11

やねうらおキチガイ扱いされてた時代から考えると、今の日本人はなんなんだ?

ただのユーモア溢れるおっさんじゃないかあんなの。

2015-03-17

http://anond.hatelabo.jp/20150316221119

第3局のやねうらお氏によると、そのような指し手をするプログラムにするのは

ミスをする対人間勝率が若干上がるだけで

ミスをしない対コンピューターでは無意味なのでモチベーションが低いようです

http://anond.hatelabo.jp/20150316221119

第3局のやねうらお氏によると、そのような指し手をするプログラムにするのは

ミスをする対人間勝率が若干上がるだけで

ミスをしない対コンピューターでは無意味なのでモチベーションが低いようです

2014-05-26

http://anond.hatelabo.jp/20140526004631

そんな感じで起業して、最初半年天国だったよ。

好きな時間に起きて、好きなだけ仕事して眠くなったら昼寝して起きてガンガン集中してコード書いて。

コードを書くのだけは早かったら、1週間のうち半分は受託仕事して残りは好きな物を作って、

それでも結構な金額の貯金が出来た。

で、そろそろ人を雇うかー!ってなって雇ったとたんに全てが変わった。

今は数十人規模の会社になって、なんだかんだで結構うまく行ってるんだろうけど、全然面白くないw

貴方の目指している物は多分起業じゃないんだろうけど、なんて言うんだろうね。

秀丸の作者の方とか、やねうらおさん的な生き方が近いかもしれない。

2014-04-21

やねうらお

どうしても気持ち悪い


どうしてかを考えてみたけれど、どうやら

プログラマありがちな自己顕示欲流出

文章からあふれだすそもそもの人間性が

俺には合わないからなんだろうなー


認めて欲しい、認めて欲しいって想いが

ひねくれた文章にコレでもかと詰め込まれているのは

見ていて痛々しくなる


技術の話は興味深い部分もあるだけに、

このまとわりつくようなノイズはすごく邪魔


技術屋ならもっとスマートな文章を書けばいいのに

いい年なんだろうし

2014-04-14

やねうらおってアスペなの?

終了後の会見すごかった。

全員勢揃いの場でプロ棋士にハンデ付けさせる話を長々と…(香落ちとか、初手を2手まで指させたらどうとか)

空気読めないってレベルじゃなくね?

2014-03-22

ドジ研の面々、その後

その昔2000年頃に、ドジ研という3Dプログラミングゲーム開発関連の緩いコミュニティがあった。その頃はインターネット黎明期で、ブログSNSといったものはなく、各人がホームページを作って日記を書いている時代だった。そして、omo氏がドジ研アンテナという、ホームページ更新を調べるアンテナサイトを立ち上げていた(steps to phantasien t(2003-12-13))。その後、omo氏のアンテナは閉鎖されてしまったが、Imagire氏が引き継いでt-potアンテナというアンテナサイトが動いている。

このアンテナに登録されたページがどういう基準で選択されたかはわからないけど、今となってみると、それらのサイトオーナーたちはなかなかにすごいことになっている。その昔、見始めた頃には無名(ないしは駆け出し)だった若者たちが、10年経って成長して活躍されているところを見るのは感慨深いものがある。

omo: Google.co.jpGoogle.com ?

Imagire: バンナム, CEDECでIMAGIRE DAY開催, GREE

shi3z: UEI, 未踏天才プログラマースーパークリエイター, enchantMOON

やねうらお: 第3回将棋電王戦参加、TVCM登場

DAKINI: ソシャゲ開発会社立ち上げ、買収

ABA: インディーゲームコアなファンに大人気 → Wiiに逆移植

Kaneko: Winny

Keijiro: SCEI, Unity, ボカロP

Bee: NVIDIA Fellowship, Siggraphで公演

Masa: Double STEAL, GDCCEDECで公演, シリコンスタジオ

Mitani: MSR 日本情報学研究賞

kuni: ゲームの賞多数、Wii, DSや、その他プラットフォームでのゲーム開発

(他、あげてない方々も活躍されてることと思うが、把握している方々だけ列挙しました。また、もともと有名だった人は除外しました)

2014-03-18

http://anond.hatelabo.jp/20140318023914

元増田です。完全に同意見です。

私も尊敬していました。BM98もそうですし、やねうらお氏がLS3600を名乗っていた2009年からブログは当時から何度も見ました。Bonanzaの解説は参考になりましたし、プログラム高速化への造詣の深さには感銘をうけたものでした。特に「YaneLisp」「Redundant Bitboards」の2つは本当に素晴らしい技術成果だと数年経った今でも思っています。(最近は局後学習などいろいろ言っていますが、この2つに比べたら他の技術眉唾もののように感じられます。)

 

からこそ今回行ったこと(ソフトの入れ替え、ミスリードの塊のような記事)については本当にがっかりしています

あいったPVを作ることでもしないと(ルール違反で失格にせざるを得ないので)対局自体がそもそも成立しなかったとさえ思えています

対局することを承諾した対局者である佐藤紳哉六段や運営の皆様の心中をお察しします。

http://anond.hatelabo.jp/20140317225804

やねうらお技術力はガチからマジで尊敬してたのになぁ。

なんか失望だわ。

https://twitter.com/issei_y/status/445597608271040513

>短期間であれだけすごいソフトを作れるのに、なぜこんなことをするのか理解に苦しみます

山本さんが言ってるけどほんとこれ。

こんな問題起こさずに新バージョンを次回の電王戦に出せば優勝だって狙えたかもしれないのに…。

2014-03-17

ドワンゴを責めず、自分たちの組織が認めたにも拘わらず、やねうらおだけを非難する佐藤紳哉六段に非がないとは思わない。彼は絶対にただの被害者ではない。

2014-03-16

頭沸騰しすぎだろ

ルールで決められたことを破りやがって!!!!」

って瞬発的に沸騰するんじゃなくてさ、

そのルールを決めた側が今回の改定を依頼したってことをまずは飲み込めよ。その上で、

将棋連盟側もそれを承諾したんだろうが。

なーーーーーーーーーーーにが、「口が裂けても言えない」だ。

リスクがあるんなら断りゃいいんだよ。

ルールに従っててそのルールが変わることが認められないならそれを理由に断ればいいんだよ。

サトシンは自分で判断したんだろうが。それとも何か?サトシンは将棋連盟の傀儡なのか?

自分で判断もできないのか?

本人が「ふざけたことしやがって!負けてたまるか!やってやる!!!」って判断したんだろうが。

その後もグダグダグダグダグダグダグダグダお前らが一番気持ち悪いわ。

今回、サトシン側は勝っても負けても賞賛されるだろうよ。

やねうら王側は勝とうが負けようが叩き続けられるんだよ。

ただ、こういう結果に導いたのは興行側なんだよ。

叩くなら興行側を叩け。それもドワンゴだけじゃねえぞ。

今回サトシンを守れなかった将棋連盟もキチッと叩けよ。

わかったか勘違いのクソども。

  • 追記

ルールを決めた側が今回の改定を依頼した」のソース

http://d.hatena.ne.jp/yaneurao/20140227#c1393510021

http://d.hatena.ne.jp/yaneurao/20140227#c1393567501

ただまあ、上記依頼内容以外のバグについてどのタイミングで直したか

またやねうらお側が上記依頼以前にバグ対応を申し出たかなどの時系列は不明ではあるけども

いずれにしても今回の決定に関しては興行側が認めているということをわかった上で三方叩くのが正だと思われます

http://anond.hatelabo.jp/20140316133726

http://anond.hatelabo.jp/20140316133726

「そもそも事前研究無しで勝ってこそプロ

って言われると、プロは苦しい。

そこにつけ込んでるやねうらおは本当に人間として腐ってる。

何で参加してるんだろう。

やねうらおがフェアな戦いを主張しているけど

ぜんぜんフェアじゃないだろ。

ドワンゴデバッグOK出したから、プロ棋士側には新バージョンを拒否する権利も与えていたから、って本気で言ってんの?

ドワンゴとしては本番でフリーズされても困るし「じゃあプロ棋士側にデバッグしてもいいか聞いてみますね」と言うしかないだろ。

プロ棋士側も「棋力に影響はない。ただのフリーズ対策」と要求されたら認めざるを得んだろ。

しかし結果として棋力が向上してしまった。

やねうらおとしては「フェアな戦いを求めている。よって古いバージョンに戻すことも提案した。なのにプロが拒否してきた」ってことらしい。

あのさ「デバッグを許した結果棋力が向上したため、元の弱いバージョンと戦います」なんて口が裂けても言えないでしょ。

佐藤六段が勝っても「弱いバージョンから」と言われ、負ければより叩かれる。リスクしかない。

もうフェアとかどうとか関係ないだろ。プロ棋士プライドとかそういう問題じゃねえだろ。リスク管理だろ。損得の問題だろ。

本当にフェアな戦いを望むのなら、バグのことは一生黙っていればよかったのでは?

2013-07-08

はてブの糞実装を擁護する

はてブは糞実装すぎて害悪でしかない件 - やねうらお−俺のブログがこんなによっちゃんイカなわけがない

カテゴリー判別精度が低い問題

既に気付かれたようだが、カテゴリは手動で変更できる。

URLに#が含まれている問題

ブログモードにすべき(設定>記事の設定>表示モードの選択)。

日記モードは忌まわしき黒歴史である

エントリーページの商品がデフォはてなのアフィID問題

エントリーページで商品を紹介

課金したらエントリーページで商品を紹介できるようになる」機能であって、

自動で表示される商品のアフィIDブロガーIDに変える」機能ではない。

asinを直接入力できない問題

asin記法を使うべき。

書籍・音楽・映画の紹介リンクを挿入する(isbn/asin記法) - はてなダイアリーのヘルプ

※もしやエントリーページの話だろうか。ヘルプページには「ASINコードを書き込む欄が表示されますとあるが。

ブコメに反論できない問題

ひとつひとつブコメに固定URLが割り振られているので反論できないわけではない。

URLを張ってコメント引用してidコールで通知すればOK。

あるいはメタブだ。

モバイルからアクセスするとモバイル用ページを表示してしまう問題

モバイル用ページのデザインが糞だというなら分かるが、

モバイルアクセスしてモバイル用ページが表示されるのは普通仕様だろう。

ちなみに右下にPC用ページに変更するリンクがある。

2011-08-19

mixiのアレ

5年前にかとゆー他の、某セキュリティ研究家の自宅の日記リンク元常連系の個人ニュースサイトがこぞって、当時問題を指摘していたやねうらお氏の日記とかを紹介して煽り立てていたら、展開は変わっていたのではないか

ウヨ系も同じだが、主張の有用性が完全にノイズなのにクソやかましい多数の連中を誘導するパワーは、マスゴミと同じくらいの力をあのへんのネットメディアは持ってると思う。

2010-10-19

http://anond.hatelabo.jp/20101019112933

嫌いなものに立ち向かう努力と嫌いなものから逃げる努力、どっちの方が楽だとか考えた場合に、「嫌いなものに立ち向かう努力」の方が楽だと思ったのかね。そりゃ殊勝なこった。

違います。目的を達成するために避けて通れないのです。目的は固定で動かすことはないので。

やねうらお…the "プログラミング好きな人"という感じで、あの世界にどうしても馴染める気がしないんですよねえ…。わんくまとか…。

啓蒙書的なのは何冊も読みましたが(CODEとか結構いいんじゃないだろうか)、正直苦行ですね…。

でもその本はきちんと読めればためになりそうですね。ありがとうございます

OllyDbgとかインストールするだけで面倒臭くて発狂しそうですが。(環境依存コンパイルできないとか何故か上手く動かないとか、そういうのが死ぬほど嫌いです)

2009-05-25

ひがやすをとやねうらおとたつをとただただしの見分け方を教えてください

いつもごっちゃになって困っています

ログイン ユーザー登録
ようこそ ゲスト さん