レート4390ぐらい(今のSOTA+20-30)の評価関数orqha1018を公開します

将棋ソフトのレーティングサイト基準で、最強格と言われる評価関数に55%〜60%程度勝ち越せる評価関数orqha1018を公開します。

 

ダウンロードは此方のページからお願いします。

https://www.qhapaq.org/shogi/kifdb/

 

【使い方】

使い方は下記サイトを参考にすると良いでしょう。

migigyoku.com

【主な測定結果】

レーティングはこちら

illqha3(今のSOTA)に対して 278-232

QQR(KPPTのSOTA) に対して 228-96

 

【以下、ポエム】

orqhaはillqha1からの追加学習で作られています。WCSC29のルール的にorqha1018を直接用いることは(流用は勿論、追加学習の元としても、教師生成の元としても) 難しいと思われます。大会ルールで解らない点は大会運営にお問い合わせください。

 

【謝辞】

illqhaの開発者のめきっとさん、測定に協力してくださったロタさん、素晴らしいライバルであるたややんさん、NNUEの開発者であるtnkチームの皆さん、やねうら王の開発者やねうらおさん、その他コンピュータ将棋を盛り上げてくれた皆様にお礼申し上げます。楽しんでいただければ幸いです。

コンピュータ将棋のセミナー@東大 で出てきた Q&A 抜粋

コンピュータ将棋セミナー@東大に参加してくださった皆様、ありがとうございました。

www.issp.u-tokyo.ac.jp

備忘録を兼ねて、セミナーで出てきたQ&A(のうち、比較的単体で理解できそうなもの)を書き下していきます。

 

# 質問、回答ともに解説記事向けに内容を編集しています

# 何となく数学ネタを中心に集めましたが、「この質問も加えてちょ」的なコメントをツイッタか何かでいただければ追記します

 

こうしてみてみると、今回の参加者の数学レベル超高いな......

 

Q. NNUEの非線形性はどのように機能しているのでしょうか?

A. 3駒以上からなる重要な特徴量を扱えている可能性が高いと考えています。表現力として過不足がないかを確かめる方法は現在のQhapaqの研究対象の一つです。愚直にやるならback propagationですが、それで十分なのかなど。

 

Q. 探索部の最適なパラメタは評価関数の質に依存するのではないでしょうか?

A. 依存すると思われます。それ故に、探索パラメタの最適化の高速化は重要な課題です。

 

Q. 過学習回避のために行う、特徴量の出現回数を利用したフィルタリングについて、ノイズの大きさの絶対量ではなく、S/N比を指標としているのなぜでしょうか?

A. 3駒関数では学習にAdaGradを使っていて、目標関数の勾配の絶対量が各ステップの特徴量の変位には影響しないからです。即ち、AdaGradを使わないような問題については別の方法(学習率の調整など)で対応する必要があります。

 

Q. 正規化の代わりにフィルタリングを使う理由はなぜでしょうか?

A. 現状の強化学習の関数の多くが正規化を用いておらず(経験的にそのほうが強い)、極端に少ないデータで学習をする際に正規化を行うと本来消してはいけないデータも消えてしまいかねないからです。

 

Q. 評価関数の教師の質の良し悪しを神の評価値と深く読んだ場合の評価値の差の絶対値で現すとして、その関数の形を明確に定義する(一次関数かも知れないし、logかもしれない)のは困難なのではないでしょうか。その条件下でも出現回数によるフィルタリングは機能すると言えるのでしょうか?

A. 関数の形の定義は困難だと思います。故に、神の評価値と深く読んだ評価値の差が平均値0の分布を持っていることを仮定する必要があります(そんなに無理な仮定ではないと思っています)。この仮定を認めれば、中心極限定理を用いることで、ノイズの大きさをガウス分布に焼き直すことができます。

 

Q. 定跡生成のアルゴリズムから量子アニーリング感があんまりしない気がします

A. 確かにそうですね。モデルを構築する際は定跡の固有状態とか、定跡のエネルギーを決めるハミルトニアンとかを定義していたのですが、最終的なアルゴリズムの形は進化アルゴリズムに近く、アルゴリズムの頑強性を量子アニーリングのアナロジーで確認しているという方が正しいかも知れません。

 

Q. AlphaZeroの論文と比べ、生成された定跡の手が広い気がしますが、学習の長さやランダム項の大きさの違いなどが原因でしょうか?

A. 将棋は囲碁に比べると定跡空間が狭く、相手と定跡が被るリスクが高いです。故に、AlphaZeroのような比較的一般的な戦型は相手にも対策されている可能性があります。大会では相手によって定跡を切り替えることが許されているので定跡の手は広く確保しておくのが大会戦略として実戦的なのです。

 

Q. 持ち時間制御について、序盤中盤終盤の割り振りの他に各手の複雑さに起因した割り振りも必要なのではないでしょうか?

A. その通りです。現在の将棋ソフトの時間の割り振りは、1.残り時間から消費時間の指標値を決める 2.消費時間の指標値から、読み筋のブレの許容値(消費時間の指標値に反比例)を決める 3.探索の過程の中で手のブレ幅モニタし、2の許容値を下回ったら探索を終える という作りになっています。ブレ幅の定義や導出は割愛しますが、消費時間の指標値を一定にすることで、局面の複雑さが変化するような場合でも、各手の消費時間の増加に対する勝率の上昇値は一定にすることが出来ます。

 

Q. 数理を用いてゲームAIに進出する上で問題の難易度を見積もるにはどんな指標がありますか?

A. 合法手の多さ、局面を表現する要素の多さ、エミュレータの作成の難しさが指標になると思います。

東大(柏キャンパス)でコンピュータ将棋のセミナーをやります

【注意】場所が変更になりました

場所 : 東大柏キャンパス物性研究所本館6階 第5セミナー室 (A615)→ 物性研究所本館6階 大講義室(A632)
※:同じフロアの大きい部屋になりました
 

 

嘗て物理を学んだ柏キャンパスに凱旋できるとは感慨深い......

www.issp.u-tokyo.ac.jp 

日程 : 2019年1月28日(月) 16:00 - 17:00
場所 : 物性研究所本館6階 大講義室(A632) (同じフロアの広い部屋に変更になりました)
注:柏キャンパスです。千葉です。駅から遠いです。徒歩だと20分位掛かります
注:誰でも参加できます。よろしやす
 
【講義の内容】
コンピュータ将棋の数理をお題にゲームAI開発に殴り込む方法を紹介したいと思います。数学レベル的には大学生〜大学院生を主な対象としています。
 
昨今のAlphaZeroなどの躍進で、機械学習強化学習を知っている人が増えている一方で、問題への優れた知見(例えば将棋の有段者であるとか)を持つ人や、高度な数学を使いこなせる人がAI開発に乗り込むのには未だ大きな課題が残っています。
 
私が特に足りていないと感じているのは、AI開発における水面下の戦いに関する情報です。水面下の戦いは悪く言えばマニアックですが、マニアックだからこそ、多様な人材が多様なスキルを駆使して殴り込む余地があるとも言えます。
 
そこで本公演ではQhapaqがこれまで水面下で使ってきた小技を中心に、コンピュータ将棋に潜む豊かな技術課題を紹介していきたいと思います。
 
 
【スライドのサンプル】
# 既に60ページぐらい創っていますが現在未だ改良中です
 

長文を3行ぐらいで纏めてくれるエンジン IMAKITAを作ってみました

まさかのGigazineデビューをしました。ありがとうございます!!

 

gigazine.net

 

唐突ですが皆様は偉い人の長話に苛々したことはないでしょうか。言いたいことは短いのに枝葉をつけた長文を送られるのにウンザリしたことはないでしょうか。

 

そんな皆様の声(?)を受けて、長文を3行ぐらいで纏めてくれる(厳密には、文章全体の中で特に重要度の高い文を抽出してくれる)エンジン IMAKITAを作ってみました。

https://www.qhapaq.org/imakita/

 

使い方:

・テキストボックスに文章を入れる(日本語は「。」/「!」/「?」、中国語は「。」区切り、英語、スペイン語、ドイツ語、フランス語、ポルトガル語、イタリア語は「.」区切り。日本語のみ改行も区切る機能を試験的に導入中)

・Squeezeボタンを押す

・結果を楽しむ

 

使用上の注意:

・無保証です

・文章が長すぎると落ちます(nginxの仕様と思われる)

・稀にpythonが文字列の処理をしくじるようです

・日本語、英語以外の言語は動作チェック以上のことをしていないので酷い挙動をしているかも知れません

# 何らかの動作不良を起こした方、ご報告いただけると幸いです

 

【使い方の一例】

キング牧師の演説を5行に要約すると

・しかし100年を経た今日、黒人は依然として自由ではない。
・今日、私には夢がある。
・この信念があれば、われわれ は、いつの日か自由になると信じて、共に働き、共に祈り、共に闘い、共に牢獄に入り、共に自由のために立ち上がることができるだろう。
・自由の鐘を鳴り響かせよう。
・われわれはつい に自由になったのだ!」。

 

になります。英語原文だと

 

・But one hundred years later, the Negro still is not free.
・And they have come to realize that their freedom is inextricably bound to our freedom.
・It is a dream deeply rooted in the American dream.
・Let freedom ring from every hill and molehill of Mississippi.
・From every mountainside, let freedom ring.

 

となります。論文、演説、ニュースあたりが得意なようです。逆に[1]のような記号が入ってしまうwikiや小説の類はあまり得意ではないようです。

 

上手く行った一例を挙げるとDeepMind社が出したAlphaZeroの論文

 

We apply AlphaZero to the games of chess and shogi as well as Go, using the same algorithm and network architecture for all three games.
In chess, AlphaZero first outperformed Stockfish after just 4 hours (300,000 steps); in shogi, AlphaZero first outperformed Elmo after 2 hours (110,000 steps); and in Go, AlphaZero first outperformed AlphaGo Lee (9) after 30 hours (74,000 steps).
In Go, AlphaZero defeated AlphaGo Zero (9), winning 61% of games.
In chess, AlphaZero defeated Stockfish, winning 155 games and losing 6 games out of 1,000 (Fig.
In shogi, AlphaZero defeated Elmo, winning 98.

 

と要約してくれます。

 

アルゴリズムについて】

AI屋の受けが意外と良かったのを受けて、現在論文執筆中です。ご意見、アドバイス、質問などお気軽にお願いします。

 

Chrome拡張について】

IMAKITAのChrome拡張をリリースしました。ソースコードつきです。逐一webサイトを開かなくても要約を楽しめます。

 

qhapaq.hatenablog.com

 

AlphaZeroに投了宣言しないといけないかも知れない

AlphaZeroの論文が出てきました。arxivに出してた論文はイケてなかったですが今回のはイケてます。

 

前回の論文に対しては今の御時世でWCSC27のelmoに勝ったぐらいで convincingly defeated a world champion program とか言わないでよとか、投了の基準が900点なの意味がわからんとか、定跡はどうしたのかとか、棋譜がないのはどういうことかとか散々な評価をした記憶があります。

 

が、なんと今回は棋譜があります。しかも羽生竜王棋譜コメを貰ったようです。棋譜の公開に伴い、戦型の分布も明らかになりました。Zero言いながらちゃんと居飛車を指します。WCSC28でCrazyShogiも矢倉組んでたので驚くほどではないかも知れません。

 

そして、棋譜の公開と同じくらいイケてるのがaperypaq(Apery-Qhapaq関数、略してaperypaq。2017年末から2018年頭ぐらいにかけてsotaだった)を相手にも対局をしていることです。というのも、AlphaZeroとやねうら王+KPPTとでは探索も評価も異質であるため、AlphaZeroとやねうら王系列のレートを同じ土俵で扱って良いのか解らなかったからです。

 

QRLのレーティングではelmoとaperypaqのレート差は170程度、AlphaZeroとelmoのレート差が(勝率91%、400ちょい。なおelmoもaperypaqも探索部のバージョンが4.79にあがっている)なので、AlphaZeroとaperypaqのレート差は230程度となり、AlphaZeroの勝率は80%程度と予想されます。aperypaqを相手にした勝率は図でしか与えられていませんが

 

f:id:qhapaq:20181207215404p:plain

 

こんな感じになっており、図の長さから測定すると約88%(勝率から換算されるレートはaperypaq+340)程度の勝率であると推測できます。測定誤差の範囲かもしれませんが、KPPT同士の対局で強くなってもAlphaZeroに対する勝率があまり上がらないことが示唆されています。

 

個人的にそれに輪をかけてきな臭いのが先手の圧倒的な勝率の高さです。今のコンピュータ将棋が先手ゲーであることは間違いないですが、先後のレート差は精々50程度(先手6割行かないかなぐらい)です。しかし、AlphaZeroの先手は後手に比べてレートに換算して100程度の上昇を果たしています。未だ我々が知らないだけで将棋は想像以上に先手ゲーなのかも知れません。AlphaZero同士の対局での先手勝率が知りたい!!

 

さて、こうなるとorqhaやnnuekai7がelmoに対して90%前後の勝率を出していたとしても、AlphaZeroにはすり潰されてしまう危険があります。後手番なんて特に危ないでしょう。

 

が、このまま引き下がるのも悔しいので手元に潜ませているもっと強いorqha(レートnnuekai7+40ぐらい)の棋譜を公開します(ロタさんありがとう!)。orqhaでもelmoに9割は勝ちます。しかもTPUを買わなくてもサクサク動く。凄い!

 

CPUとTPUの差とか電気代とか学習コストとかを考えるとAlphaZeroの convincingly defeated a world champion program はある程度は話を盛っている気がしますが、前回の論文と違って今回の論文を読んだ感じ、予算度外視で戦えばAlphaZeroが勝つだろうと言わざるを得ません(前の論文の時はそこまで強そうじゃなかったんですが)。即ち相手としてAlphaZeroは追わねばならない存在なのだなと感じました。お見事。

 

【余談】

視力の良い人なら気付くかもしれませんが、前回の論文ではelmoがElmoとtypoされていましたが、今回の論文でもaperyqhapaqがaperyphapaqとtypoされています。あとelmoもElmoのままです。AlqhaZEroェ......

 

これを機にコム将棋海外勢が増えたら良いなと思い、将棋ソフト導入wikiを創ってみました。良ければ編集よろ

コンピュータ将棋wiki強化月間開始のお知らせ

平素よりQhapaq Research Labをご愛顧いただきありがとうございます。

 

コンピュータ将棋の情報を纏めるべく運用を開始したwikiですが、現状記事が集まらなくて苦慮している状態です。

 

特に大きな問題となっているのは、各ソフトの基本情報が纏めきれていないことです。より具体的には、各ソフトが何処でダウンロードできるかや、各ソフトの歴代成績、アピール文のリンクが足りていません。

 

コレがあるだけでも大分、情報量が変わってくる(そして、将棋ソフトに興味を持ってくれた人の役に立つ)と考えています。ソフトの解説を書こうとすると難しくて手が止まってしまう(かくいう私もだ)かもしれませんが、情報を纏めるでよければ敷居は大分下がるでしょう。

 

そこで、コンピュータ将棋wikiの強化月間と称し、10月30日までに将棋ソフトの情報を書き入れてくれた人にamazonギフト券によるギャラを支払うことにしました!

 

【注意】

amazonギフトのメール形式以外での支払は対応していません

・大会出場ソフトではないソフトについてはギャラ支払の対象外です

・最初に必要なリンクを全て揃えた人にのみギャラが支払われます。書くなら一度に書きましょう

wikiのコンフリクトは保証の対象外です。お許しください

・1ソフトに付き200円のギャラが出ます

・既に必要なリンクが揃っているソフトも対象外です

・纏めて支払を行いたいため支払が遅れる可能性があります

 

【記事の書き方】

例:Ponanzaについて書くとこんな感じになります

・コンピュータ将棋wiki上でユーザを作ってください

・コンピュータ将棋wikiのアカウントにギャラ支払用のメールアドレスを登録してください

・開発者の名前、大会成績、開発者webページヘのリンク、アピール文章へのリンクを将棋wiki上に書いてください

・開発者のwebページは代表開発者(開発者名の一番最初に書かれてる人)だけでokです。

・大会成績、アピール文は直近の6大会分まででokです(6回以上参加してないソフトについては全部書いてください)

・将棋ソフト一覧の後ろにある*印を除去してください

・記事を執筆した旨を管理者のメールアドレス

f:id:qhapaq:20180424225620p:plain

までご連絡ください(私自身もwikiの履歴は見ますが、見落とす可能性も高いので申告していただいたほうが確実です)

 

【その他】

・既に記事を書いてくれた方

生まれたばかりの胡散臭いwikiの執筆に時間を費やしてくれた方々にこそ一番感謝をするべき、ということで、遡ってのギャラの支払をする予定です。ギャラの額は記事によって変わる予定ですが、兎に角支払います。履歴を遡るのが困難であるため、やはり連絡頂けると助かります。

 

・解説文章

解説文にもギャラが出るかも知れません。ただし時価です。ハイテク株依存ですし、額も保証できません。申し訳ないです。

 

・なんでこんな企画をやるのか

理由1:wikiを触るという経験を皆様にしてもらいたいから

理由2:技術書典の泡銭を使いたいから

理由3:ソフトの紹介文を書きたいけど、ソフトの情報(アピール文とか大会成績とか)を調べるのが面倒だという人(私含む)が少なからず居ると思うから

【10月25日まで】技術書典5で頒布した科学するコンピュータ将棋シリーズのweb販売を行います

締めきりました。ありがとうございます。

 

技術書典5で頒布した「科学するコンピュータ将棋」のweb販売を行います。

 

頒布物のアピール文

techbookfest.org

 

注意:技術書典4で頒布した科学するコンピュータ将棋を購入された方(現地、web販売問わず)は、科学するコンピュータ将棋LTS版は無料でアップデート可能です。頒布したDLサイトに最新のLTS版が置かれています。

 

注意2:今回は頒布物が2種類あります。お間違えのないようご注意ください。

注意3:圧縮形式の問題で一部環境でファイルが回答できないという問題がありました。お詫び申し上げます(現在は解決しているようです)

 

 

 

【おしながき】

科学するコンピュータ将棋LTS版(コンピュータ将棋の歴史や学習の理論が中心) ...... 700円

立ち読みはこちら(注:技術書典4で頒布した第一版です)

 

科学するコンピュータ将棋別冊Qha学習(最新のライブラリの導入や、今流行している学習手法の動かし方が中心) ...... 300円

立ち読みはこちら

 

【お買い求め方法】

1.amazonギフトメール(メールタイプ)をお送りください送り先は

f:id:qhapaq:20180424225620p:plain

です

 

2.お買い求めいただく冊子をメッセージに添えてください

今回は700円の既刊、300円の新刊の2種類が有ることに注意してください。

 

3.アマゾンギフトのレスポンス機能を経由してDLコード、および、パスワードをお送りします。

注意:アマゾンギフトのレスポンスは一度しか打ち込めず、購入者の連絡先は私の方では解らない仕様です。私の操作ミスなどにより、正しくデータが届かなかった方は、お手数ですが上記メアドまでご連絡ください。

 

4.お問い合わせの際にはamazonギフト購入時の注文番号を添えていただけるとより迅速な対応が可能です

 

皆様、よろしくお願いします!