こまおの棋力は何級なのか

結論

大体18級くらいではないかと思います。

ただ、そもそも級位の尺度は色々あり、とくに低い級位については統一された基準というのがあまりありません。(一応断っておくと、少なくとも将棋倶楽部24の級位ではありません。)これだけだとなんだかよくわからないですよね。過程や背景が気になる人は、以下に進んでください。

背景

初心者の練習相手としては、かつてはハム将棋が良く挙げられていました。このハム将棋に駒落ちで指導してもらい、いよいよ平手で勝てるようになってから対人戦デビュー(=「指す将」へ)、というのが常道でした。このハム将棋は「弱さ」の加減が絶妙である一方、まったくの初心者が勝てるようになるのは中々に大変という問題がありました。その問題を解決するため、さらに弱い練習相手として作られたのが「こまお」です。

usapyon.game.coocan.jp

このこまおはハム将棋とは比べ物にならないほど弱いものの、駒の損得の判断が正確であり、実はこれでも初心者が勝つのは大変です。ハム将棋より圧倒的に弱いこまおですら、勝つのが大変。これこそが、「観る将」が「指す将」になるハードルの高さではないか?そう思い、こまおの棋力、ひいてはさらに弱い将棋ソフトの棋力を定量的に測定することで、このハードルの高さを可視化しようと考えました。

棋力の測定方法の概要

棋力の定量化として広く用いられるレーティングをここでも使用します。

多数の将棋ソフトを複数回戦わせ、ソフト同士の勝率を算出し、これをもとに相対的なレーティング差を統計的に測定します。
これを「ソフトレート」に変換し、一部将棋倶楽部24レートを経由して、81dojoのレーティングシステム(将棋倶楽部24の段級位、道場の段級位、およびレーティングの関係性について定期的にアンケート調査されるため、信頼度が高い)と照合して段級位に変換します。

ここで「ソフトレート」とは、Ryoto_Sawada氏(Qhapaq開発者)による「コンピュータ将棋 まとめサイト」に基づくものです。

ソフトレート等の計測結果

結果は以下のとおりです。

ソフト名 ソフトR 誤差 24R 24段級 81R 81段級
Bonanza 6.0 D1 1,101 +0/0 483 11級 1,453 1級
将皇(WebGL版) レベル1 1,067 +17/-16 412 12級 1,426 1級
ぴよ将棋w Lv15 ひよん (R750 3級) 1,035 +23/-21 345 13級 1,400 2級
きのあ将棋 ブラウザ版 テストロボ 強さ2 1,017 +20/-14 307 13級 1,385 2級
Lesserkaikai Lv7 993 +18/-19 256 13級 1,366 2級
きのあ将棋 ブラウザ版 クッキー 968 +29/-15 202 14級 1,345 3級
BlunderXX2012 D1 908 +14/-14 #N/A #N/A 1,331 3級
きのあ将棋 ブラウザ版 空 だめ子 808 +16/-24 #N/A #N/A 1,249 5級
Lesserkaikai Lv6 787 +19/-19 #N/A #N/A 1,231 5級
将皇(WebGL版) レベル0 730 +13/-25 #N/A #N/A 1,184 6級
ぴよ将棋w Lv12 ピヨ介 (R570 6級) 653 +16/-27 #N/A #N/A 1,120 7級
ハム将棋 594 +19/-25 #N/A #N/A 1,072 8級
Lesserkaikai Lv5 555 +20/-26 #N/A #N/A 1,039 9級
きのあ将棋 ブラウザ版 のゆぽん(偶数日) 402 +30/-28 #N/A #N/A 913 10級
ぴよ将棋w Lv10 ピヨ太 (R450 8級) 340 +21/-23 #N/A #N/A 862 11級
きのあ将棋 ブラウザ版 のゆぽん(奇数日) 325 +20/-29 #N/A #N/A 849 11級
Lesserkaikai Lv4 243 +24/-27 #N/A #N/A 782 12級
Lesserkaikai Lv3 229 +27/-26 #N/A #N/A 770 12級
きのあ将棋 ブラウザ版 ザザルオ -69 +30/-27 #N/A #N/A 524 14級
ぴよ将棋w Lv7  ひよ奈 (R270 11級) -117 +32/-27 #N/A #N/A 484 15級
Lesserkaikai Lv2 -234 +35/-33 #N/A #N/A 388 16級
ぴよ将棋w Lv5  ひより (R150 13級) -443 +29/-44 #N/A #N/A 215 17級
こまお -510 +26/-44 #N/A #N/A 159 18級
ぴよ将棋w Lv4  ピヨ之 (R120 13級) -738 +36/-49 #N/A #N/A -29 20級
Lesserkaikai Lv1 -798 +40/-35 #N/A #N/A -78 20級
ぴよ将棋w Lv3  ひよ香 (R90 14級) -921 +45/-41 #N/A #N/A -180 21級
ぴよ将棋w Lv2  ピヨ作 (R60 14級) -1,089 +51/-55 #N/A #N/A -319 23級
きのあ将棋 ブラウザ版 クラリア -1,225 +50/-53 #N/A #N/A -431 24級
ぴよ将棋w Lv1  ひよこ (R30 15級) -1,750 +63/-89 #N/A #N/A -865 28級
Lesserkaikai Lv0 -1,962 +96/-116 #N/A #N/A -1,040 30級

以下、作成過程の説明を行います。

将棋ソフト同士のレート差の測定

こまおや近い棋力の将棋ソフトを戦わせ、uuunuuun氏のスクリプト※によりレート差を計測します。
※以下のサイトのOneDriveのRating site data.zipを勝手ながら使用させていただきました。この場をお借りして感謝申し上げます。

uuunuuun.wixsite.com

対象ソフトは後述。概ねレート差400以内の組み合わせについて、それぞれ先後入れ替えながら30戦を目安に戦わせます。(少ないので今後増やしたいですが、ブラウザ版ソフトを多数参戦させる都合上、サーバー負荷なども考えればどうしてもじっくり積み上げる必要があります。) 

細かいですが、千日手持将棋、1000手を超えた試合は無効試合とし、勝率計算には含めません。

なお、レート差と勝率の関係は以下を参照ください。

https://uuunuuun.wixsite.com/shogi-engines/blank-7

ソフトレートの計測

上記の手段によりソフト間の相対的なレート差は求まりますが、絶対的な数値として算出するためには基準を定める必要があります。そこで、Bonanza6 D1のソフトレートを基準に、つまりBonanza6 D1のレート=1101と固定して算出します。

基準としてBonanza6 D1を選んだ理由は次のとおりです。

  • ソフトレート計測時の状況再現が容易(多くの将棋ソフトはCPUの性能によって思考時間を調節する必要があり、ソフトレート計測時の状況の再現が容易でない)
  • 対局数が多くソフトレートが収束していると考えられる
  • 適度に弱い(といっても1~2級ほどの実力はあります。あくまで相対的に)
  • 定跡により開始局面からの指し手のランダム性がある程度高い(ブラウザ版ソフトを混ぜるため、互角局面集を使うといった対応は難しいです)
  • 意外に不自然な手が少なく、どのソフトともバランスよく戦えそう

なお、もととなるソフトレートの表は以下です。

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

採用ソフト

こまおとBonanza D1のみでは棋力が離れすぎていてレーティングの測定が困難なため、他のソフトを多数追加して間を埋めることにします。

同じく練習用将棋ソフトとして名高い、ぴよ将棋きのあ将棋将皇のそれぞれブラウザ版を戦わせます。また、ブラウザではなくFlash Playerで再生することによりハム将棋も参戦させます。

www.studiok-i.net

syougi.qinoa.com

ken1shogi.sakura.ne.jp


加えて、USI対応ソフトも参戦させます。ソフトレート保持者としてBonanza6 D1のほかにBlunderXX2012 D1も参戦させます。なお、Blunderをレートの基準にしてもよいのですが、Bonanza6 D1に比べて対戦数が少なく、ソフトレートが安定していないと考えました。

さらに弱いLesserkaiやgseは明らかにバグのような手を指すため採用を見送ります。

f:id:vtnt:20220130220948p:plain

LesserKaiのバグ

Lesserkaiのバグとは不自然な探索打ち切りで、具体的には上図のような場面で発生します。深さ4まで探索する設定になっていますが、なぜか▲2三歩が読めていません。棋力は6級くらいのはずですが、その棋力で飛車先を受けないのはありえません。

また、gseは思考打ち切り処理がおかしいのか、駒が取られそうになったときに何もせずに放置する大悪手をしばしば指してくるため、深さ8~9ほどまで読んでいるのにLesserkaiよりもはるかに弱くなっています。

 

結果としてこまおに近い棋力のソフトがぴよ将棋ときのあ将棋のザザルオ、クラリアくらいしかなく、ソフト間の相性がレーティング計測に影響を及ぼしやすいと考えたため、Lesserkaiの改造版(Lesserkaikai)を8種類投入しました(棋力は30~2級ほど)。
主な改造点は、バグの修正、ノード数や乱数による棋力調節機能の追加と、駒得に偏りすぎていた評価値の調整(駒組みの評価値の重み引き上げ、玉の危険度、大駒の利きによる評価の追加)などです。

ソフトレートと24レートの関係性

以下の記事と同様に、双方のレートが既知の将棋ソフトを抽出して、2次曲線によるフィッティングを行います。

将棋倶楽部24レートとの比較(最終版)

ただし、ソフトレートがこの記事とは相違しているため、回帰係数を求めなおします。
結果は以下のとおりです。
(24レート)=-0.000323692(ソフトレート)^2 +2.78451(ソフトレート)-2190.26

なお、用いたデータとグラフは次のとおりです。

ソフト名 ソフトレート 24レート
Lv3(24R2783) 2,575 2,783
Lv3a(24R2648) 2,377 2,648
Lv2(24R2098) 1,997 2,098
Lv2a(24R1890) 1,810 1,890
Lv1(24R1310) 1,605 1,310
Lv1a(24R988) 1,354 988
kaitei_sdt5(24R783) 1,261 783
kaitei-wcsc27(24R321) 1,005 321

f:id:vtnt:20220130212342p:plain

ソフトレートと24レートの関係

24レートと段級位との関係性

81Dojoの段級位が一般的に用いられる段級位と近いと考えられることから、81Dojoのレートに変換する事で24レートと段級位の関係性を求めます。

81Dojoのレート・段級位、および24レートの段級位の対応は、以下のページに基づきます。

81dojo.com

このうち、81Dojoと24の段級位対応表を階級別のレート中央値で対応付け、1次関数によるフィッティングを行います。

将棋倶楽部24 将棋倶楽部24レート 81Dojo 81Dojoレート
段級位 下端 上端 中央値 段級位 下端 上端 中央値
五段~七段 2,400 2,900 2,650 六段 2,200 2,300 2,250
五段~四段 2,100 2,400 2,250 五段 2,100 2,200 2,150
三段~二段 1,800 2,100 1,950 四段 1,950 2,100 2,025
二段~2級 1,350 1,800 1,575 三段 1,800 1,950 1,875
3~6級 950 1,350 1,150 二段 1,650 1,800 1,725
7~9級 650 950 800 初段 1,500 1,650 1,575
10~14級 150 650 400 1~3級 1,300 1,500 1,400

結果、以下の関係式を得ます。
(81Dojoレート)=0.382837(24レート)+1267.85

グラフにすると次のとおりです。

f:id:vtnt:20220130214256p:plain

24レートと81Dojoレートの関係

ただし、この関係式を用いるのは24レート200以上に限定します。理由は24レート200以下はレートの更新式が異なっており、そのまま外挿したときの変換結果の違和感が大きかったためです。
また、81六段以上もこの関係式を用いるべきではありませんが、記事のスコープ的にはあまり関係ないため置いておきます。

なお、81Dojoの段級位対応表については、記事作成(2022年2月)時点では2020年4月4日に改定された基準が用いられています。

https://81dojo.com/jp/news.html?release=200404

しかし、81Dojoの段級位と町道場の段級位について定量的に言及されたのは以下の2014年の記事が最後のようです。

https://81dojo.com/jp/news.html?release=140906

以降、運営側でどの程度の規模の調査が行われているのかは定かではないですが、将棋連盟による免状発行に用いられること、上記2020年の改定には24レートなど他の基準との照合結果が前提にあると考えられることから、信頼度は記事作成時点でもある程度維持されていると考えます。

24レート200以下の層について

これらの層については級の定義がそもそもあいまいであり、81Dojoの級に変換すること自体に疑義がありますが、とりあえず置いといてまずはレートの変換を行います。

24レート200相当以上のソフトレート⇔81レートの関係式をそのまま適用することも考えられますが、基本は両方とも同じイロレーティングであるため、以降の部分は並行移動させることも考えられます。

ただ、ソフトレート側は本来のイロレーティングよりも「伸びて」いる可能性があります。すなわち、同系のソフトとの対戦を多く含み、相性によりレート差が拡大されている可能性があります。そこで、単に並行移動するのではなく、ソフトレート⇔81レートの関係式の端点付近の傾きのまま直線補外することにしました。(実際の傾きはΔ81レート/Δソフトレート = 0.8263くらいです)

結果、ソフトレートと81レートの関係は以下のようなグラフになりました。

f:id:vtnt:20220130225518p:plain

81Dojoレートとソフトレートの関係

※マーカーはその段位のレート下端

これで81Dojo基準の15級までは対応付けが完了しました。しかしさらに低い級位についても今回は考慮に入れる必要があります。81Dojoの10級以下ではレート100ごとに1級ずつ上がっているので、これをそのまま適用し続けたと仮定して16級以下を設定しました。

 

さて、この級の定義について少し考えてみます。

81Dojoによる道場段級位との対応付けアンケートでは10級までを対象としています。そのため、10級まではおそらく世間一般的な基準になっているのだろうと思います。

問題になるのは以降の級位です。すなわち、1級差=レート差100(高いほうが大体勝率6~7割くらい)という仮定での拡張が妥当かということです。

参考にできそうなのは将棋倶楽部24のレートです。「初心」という段位を15級の下に設定したことを踏まえれば、創設時はちゃんと世間の段級位と対応付けながら、はじめたばかりの初心者も指せるようにするつもりだったのではないかと考えられます。その際に、レート差100=1級差というのが初心者層での妥当な間隔だというコンセンサスがどこかで得られていたはずです。

さらに、81Dojoの10級以下の間隔を敢えて9級以上とは異なるものにしていることから、これについても何らかのコンセンサスが得られていたのではないかと考えます。

したがって、この拡張にあまり違和感はないものと考えます。

 

なお、初心者の級位については以下の記事でも詳しく述べられていてますが、そこでも同じ仮定が置かれています。

shogi.zukeran.org

 

レート対応表まとめ

以上によってソフトレート、81Dojoレート、将棋倶楽部24レート、そして段級位が対応付けられました。これをまとめると次のとおりです。これで、こまお含めた将棋ソフトの段級位を設定することができました。

段位 ソフトレート 81Dojoレート 24レート
  下端 上端 下端 上端 下端 上端
七段 2,456 - 2,300 - 2,696 -
六段 2,249 2,456 2,200 2,300 2,435 2,696
五段 2,061 2,249 2,100 2,200 2,174 2,435
四段 1,805 2,061 1,950 2,100 1,782 2,174
三段 1,574 1,805 1,800 1,950 1,390 1,782
二段 1,360 1,574 1,650 1,800 998 1,390
初段 1,161 1,360 1,500 1,650 606 998
1級 1,066 1,161 1,425 1,500 410 606
2級 974 1,066 1,350 1,425 215 410
3級 913 974 1,300 1,350 #N/A 215
4級 853 913 1,250 1,300 #N/A #N/A
5級 792 853 1,200 1,250 #N/A #N/A
6級 732 792 1,150 1,200 #N/A #N/A
7級 671 732 1,100 1,150 #N/A #N/A
8級 611 671 1,050 1,100 #N/A #N/A
9級 550 611 1,000 1,050 #N/A #N/A
10級 429 550 900 1,000 #N/A #N/A
11級 308 429 800 900 #N/A #N/A
12級 187 308 700 800 #N/A #N/A
13級 66 187 600 700 #N/A #N/A
14級 -55 66 500 600 #N/A #N/A
15級 -176 -55 400 500 #N/A #N/A
16級 -297 -176 300 400 #N/A #N/A
17級 -418 -297 200 300 #N/A #N/A
18級 -539 -418 100 200 #N/A #N/A
19級 -660 -539 0 100 #N/A #N/A
20級 -781 -660 -100 0 #N/A #N/A
21級 -902 -781 -200 -100 #N/A #N/A
22級 -1,023 -902 -300 -200 #N/A #N/A
23級 -1,144 -1,023 -400 -300 #N/A #N/A
24級 -1,265 -1,144 -500 -400 #N/A #N/A
25級 -1,386 -1,265 -600 -500 #N/A #N/A
26級 -1,507 -1,386 -700 -600 #N/A #N/A
27級 -1,628 -1,507 -800 -700 #N/A #N/A
28級 -1,749 -1,628 -900 -800 #N/A #N/A
29級 -1,870 -1,749 -1,000 -900 #N/A #N/A
30級 -1,991 -1,870 -1,100 -1,000 #N/A #N/A

 

おわりに

このように、初心者向けといわれた将棋ソフトが3~30級程度に分布しており、その実かなりの実力差があることがわかりました。

 

初心者の級位については先ほど紹介した記事では30級以上と考察されていますが、駒落ちに基づいて考察された以下の記事もあり、こちらでもおおよそ30級ほどとされています。

shogi.zukeran.org

今回測定した級位での30級というのがこの初心者の棋力に相当しているかは定かではないものの、「初心者」とされる棋力の幅広さと、ネット対戦デビュー可能な実力(8~9級)までのあまりの道のりの長さが改めて浮き彫りになったのではないかと思います。

それでも、ぴよ将棋を初めとしてこれらの棋力帯に対応したスマホアプリやブラウザソフトが整備されてきたのは非常に評価されるべき動きだと思います。ハム将棋1強だったころからずいぶん変わりました。自分が初心者のころにこんなソフトに出会えていれば、と思うソフトばかりです。この記事は、そういったソフトにスポットライトを当てる意味合いもあります。

※もちろんちゃんと探せばそれらの棋力のソフトはいくらでもあるものの、事前に強さがわからない(ただ弱いとだけ書かれている)、いちいちDLしないといけない、有料であるなどの点で、初心者が気軽に手を出すにはハードルが高いものがこれまでは多かったように思います。