2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AtCoderインフレの主因は中国人か (中国人er vs 日本人er) レートデフレ対策は妥当か (ロールバック vs 初参加者内部レート上げ)

Last updated at Posted at 2025-12-26

みなさん競プロ楽しんでいますか。数回レートを吸っては爆死していく承認欲求型低知能テロリストが何十人といても、別に問題を解く楽しさ自体は変わらないので内的喜びを感じ続けられる限り腐らず続けていきましょうね(そして実際調べてみて分かりましたが案外彼らが我々のレートに与える悪影響は小さく実は十数しかなさそうです)。生成AIはAtCoderBeginnerContestを実際に破壊しているのか生成AIはAtCoderBeginnerContestのインフレを加速させたか生成AIのAtCoderBeginnerContestへの影響分析まとめと3回にわたってAtCoderの実力インフレ(レートデフレ)と生成AIとの関連について分析してきましたが今回は「chokudai御代の宣う"中国人のせいでABCが苛烈になっている"は真か」と「かのレートデフレ対策の妥当性に物申す」がテーマです。結論を先に述べてしまうと

・ 中国人参加者の増加が実力インフレおよびABC苛烈化の主因である可能性が高い(10倍の人数いる集団の上澄み層が参加しているであろう中国人参加者はそもそもAI以前から日本人参加者よりも成長が早く到達レートも高い)

・ 数回毎のロールバックを仮に導入したとしても上がるレートは知れており、また実際に初参加者の実力はAIに関係なく上昇しているのでレートデフレ対策は数回毎のロールバックより初参加者の内部レート上げのほうが有効

それではまず面白いfigureを5個ほどどうぞ

中国人参加者は日本人参加者よりも強いか

growth_curve_combined_ci.png

はい、圧倒的に強いです。この図はABC211以前のABCへの参加が無いユーザーに関してrated出場回数ごとの終了後レートをプロットしたもの(実線は最高到達レートが800以上の者に限定、点線はrated出場回数が212から430で5回以上の者に限定)ですが、ご覧の通りAI以前から成長速度も到達レートも中国人erの方が断然上です。ただ人口が10倍で参加者数が同程度であれば、中国人の上澄みが参加していると仮定するなら10倍濃縮マンらと戦っている我ら日本人も捨てたものではないでしょう。その証拠に中国人参加者が増えるにつれて中国人の平均成長速度は徐々に落ち、日本人との成長速度の差は小さくなっています。あと、生成AIにより成長がブーストされた痕跡は無くむしろ競争の苛烈化によってか成長速度は下がっています(点線参照)。

ABC国別参加者数およびunrated含む順位100位以内の色割合

top100_analysis_all.png

分析しはじめの時にお世話になった【AtCoderを分析】Webデータを分析して公開するための基本を網羅してみたToastUzさんが上げておられたABCトップ100色別分析は視覚的に非常にわかりやすく面白かったので私も国ごとに分析してみて、参加者数も併記してみました。

  • 日本人は参加者数、100位以内シェアともに下落傾向   
  • 中国人は参加者の増加とともにひたすら寒色層が分厚くなり続けている(ABCでしか勝てないシステマティック詰め込み勢?もしくは日本人と違って暖色になるとABCに出なくなる?)
  • インド人は弱い上に不正多そう

などが言えそう。

初参加者のパフォーマンス推移(初参加者の実力を800 → 1200とする施策の是非)

true_first_timer_analysis.png

初参加者のパフォーマンス(正確にはABC042~211に名前が無いユーザーについて、それ以降で最初にratedで出場した時のパフォーマンス)の平均と95%CIをまとめただけの図。ただしコンテストごとのjsonファイルに記述されたパフォーマンスは上は2400でキャップされているが下はマイナスまでとりうるため、上限2400到達者の割合も併記した(2段目)。ついでに総rated参加者数と初参加者数の各平均も(3段目)。これを見ると、ここ半年は確かに初参加勢が非常に強いが、過去に例を見ないほど強すぎるとも言い難く(つまり最初から上手に(BANされず)不正するような輩は観測できるほど多くはない)、また4年で100以上は上がっているようにも見えるため、6年ぶりの改変で+400というのは妥当かむしろ上げすぎに感じる

例の長期安定者のパフォーマンス低下は、ロールバック導入で緩和されるか

performance_timeseries_dual.png

chokudai社長も30問くらいあれば不正検出しやすい(正確には「atcoderでは30問くらい解かないとまともなレートに達しないがそれだけの材料があれば不正検出はしやすい」)と過去に言及しており、実際に即BANされずとも数週間後に見ると名前が黒くなっている(普通に考えれば後のコンテストでBANされたであろう)参加者が上位にも多く観測される昨今、このクズどもを除いたレート再計算を5-10回ごとに行ういわゆるロールバックを行えば不正の影響はかなり取り除けるのではないか、つまり仮にAI不正によるレートデフレが露骨に存在するのだとすれば初参加者の推定パフォ上げではなくロールバックこそ最善のデフレ対策なのではないか。ということで調べたが、正直ロールバックしたところで上がるパフォーマンスはかなり過大に見積もって20程度であり効果は限定的。

performance_timeseries_dual.png

さらには衝撃的なことに、単純に中国人の増加と長期安定者のパフォーマンス低下が関連しているのではないかという表が出ました

要点まとめ

以上から分析手法詳細を待たず先に要点を述べてしまえば、

  • 中国人参加者はAI以前から成長速度、到達レートともに日本人参加者より上。元々上澄みが参加していたためと考えられ、現に中国人参加者増加に伴い成長速度の開きは縮小してきている。
  • ABCでは中国人参加者数増加に伴い寒色を中心に高パフォ増加が目立つ。インド人は現状弱い上に不正も多いと推察できる
  • 初参加者のパフォーマンス上昇が6年越しで+400というのは妥当かむしろ上げすぎである。また生成AI推論モデル普及後に初参加者パフォーマンスが目立って急上昇したとは言い難い
  • 数回毎ロールバックの効果は限定的なのでデフレ対策としてはあまり期待できない。ただしそれは一発ではなく数回の出場でBANされる程度の絶妙な露骨不正使用の影響がパフォーマンスにして過大に見積もっても20程度と限定的であることを示しているのみであり、考察やバグ潰しのみに使用するようなBANの難しいこっそり使用の影響は不明。
  • 長期パフォーマンス安定者のパフォ低下は主に中国人参加者の増加で説明可能そう

要するにですね、ABCが苛烈になった主因はやはり中国人増加と言えそうで、100位以内に占める色のシェアも併せて考えると、
「元々日本人参加者よりも濃縮度が高く強い人の割合の高い中国人参加者が爆増しABCが苛烈化している。露骨AI不正のレートへの影響は限定的」
というのが個人的な見解です。中国人はAI不正が上手であるという可能性も存在しますが(一年越しでBANされた?ewrewrは記憶に新しい)、インド人見て分かる通り普通は数回で飽きるか撃墜されるので、おそらく主因はどちらかといえば選別と教育だと考えます。

分析方法詳細

ここからは物好きしか読まないのでしょうおそらく。端折りながらいきます。コードは基本的にgemini pro 3.0に書いてもらって、少し手直ししたりしています。

解析コードおよびfigure

ABC国別参加者数およびunrated含む順位100位以内の色割合

これのテーマは先の通りToastUzさんの投稿の焼き直しで、順位表汚染(昔のABCは100位以内を主に暖色が埋めていた印象だったが最近は寒色や黒も目立つ)の分析です。

手法としてはシンプルに、コンテストごとのjsonファイル(例:ABC430)の順位(Place)≦100を10コンテスト区切りで国別、色別(OldRatingつまり参加前の色)にまとめただけです。

top100_analysis_all.png

しかし思いの外考察の捗るfigureで、順位表汚染に見える今の状況というのは生成AIによる不正の影響も当然多少はありますが、実は参加者数が中国人>日本人となったことが主因のようです。何故なら中国人は何故かもともと日本人より圧倒的にABC上位における寒色の割合が大きく、そのような特性の国の参加者が増えれば必然上位は寒色で埋め尽くされがちになるのです。

このABC上位において中国人の寒色の割合が大きい理由として

  • レート2000以上になるとABCに出なくなる(黄色は日本人の3倍、橙赤は日本人の1.5倍居るので可能性は高い)
  • システマティック競プロ詰め込み教育により典型に強い層が厚い

などが考えられそうですが、詳細は不明です。chokudai社長ならば後者を推すでしょう

ちなみに先の社長の発言から概ねBAN可能と推察できる出場5回(35問)を目安に、それ以上参加している者だけを抽出したバージョンも作ってみました。(ABC212以降でのユーザー名出現回数をカウントし5回以上となった回以降をプロット対象とする)

top100_analysis_veterans.png

傾向に大きな変化は見られない点からやはり不正の影響は少なくともtop100については軽微ではないでしょうか。ただしご覧の通り5回以内の出場でtop100を取る人間は明らかに最近増加しており(All regionsの合計数が1000から徐々に乖離してきており、この欠けた分が5回以内にtop100を取っている人の数ということです)、これは流石に不正の影響があると言わざるを得ないのかもしれません。

中国人は強いのか

上記のような結果を見ると気になるのは、結局中国人参加者は日本人参加者よりも強いのかという民族間の競争を煽るような疑問ですが、正直に言うと中国人参加者の方が成長速度も到達レートも日本人参加者より高いと言わざるを得ません(人口が10倍なのに参加者が同程度ならば、中国人の上澄みが参加していると考えれば別に日本人自体が劣っているとは全く考えません)。

分析手法としてはこれも極力シンプルに、ABC042-211のjsonファイル(例:ABC430)に名前のない者についてABC212以降のrated参加を対象とし参加回数ごとの参加後のレートを調べています。レート800以上に到達したことある者のみの分析(実線)と、計5回以上rated出場している者のみの分析(点線)を行っています。

growth_curve_combined_ci.png

なかなか衝撃的ですが、AI以前から中国人まじで成長速いです。これ見れば中国人参加者が爆増する中、中国人の寒色が上位を取り日本人がABCで勝てなくなるのも分からなくはないです。あとABC391以降で点線(5回以上rated参加の者すべて)の傾きは急峻になっている様子はなく、AIにより急成長する人間が増えたとは言いづらいです(個人は別です、不正してでもレートを上げる承認欲求まみれのカスが少なくないのもまた事実です)。

初参加者のパフォーマンス上昇

皆思ったはずです。かの初参加者の内部レート引き上げ通達の時に、初参加者のパフォーマンス上昇の主因はAIではないのかと。しかし実は違いそうなのです。

true_first_timer_analysis.png

分析概要としては、コンテストごとのjsonファイル(例:ABC430)を分析し、ABC042~211に名前が無いユーザーについて、それ以降で最初にratedで出場した時を初参加と見なし、そのパフォーマンスを集計しました。コンテストごとのjsonファイルに記述されたパフォーマンスは、上は2400でキャップされているが下はマイナスまでとりうるため、上限2400到達者の割合も併記しました(2段目)。ついでに総rated参加者数と初rated参加者数の各平均もつけてあります(3段目)。

見て分かる通り、たしかに411以降の初参加者の平均パフォーマンスは高いですが過去に例を見ないほど高いとはいえず、カンストパフォも特段増えてはいないです。どうやら初参加者のパフォーマンスが急に上がったというのは主張しづらそうで、むしろ長年かけて上がっており初参加者の内部レート上げは妥当と言えそうです(400は上げすぎかもしれません)。

debut_perf_violin.png
一応初参加者のパフォーマンス分布も主参加者である日本人と中国人については確認しましたが、変化は無さそうです。

長期パフォ安定者のパフォーマンス低下の主因はAI<中国人増

前回の分析で私は長期パフォーマンス安定者のABC391からのパフォーマンスの急激な低下を暴きましたが、これを補正するには長期ロールバックが有効ではないかと考え以下のような手法を考案しました。
・2025/12時点でatcoderランキングのレート400以上に名前の無いユーザーを一律にBANされたと見なす(当然自主的なアカウント削除の可能性もあるので正確な方法ではなく、過剰にパフォーマンスを上方補正する可能性が高いです)
・ABC371以降に関してac-predictorの(jsonファイル)[https://data.ac-predictor.com/aperfs/abc430.json]にあるaperfを利用して、2000位以内に居る上記BANユーザーを除いたパフォーマンスを再計算(こうして順位を絞ることも過剰にパフォーマンスを上方補正する方向に働きます)し、さらにその再計算されたパフォーマンスを次以降のaperfの補正に用いる(+差分*(0.9^経過回数)で補正、ABC以外への出場も考慮し、連続する出場回でNewRatingとOldRatingが異なっている場合には1回ARCもしくはAGCに出たと見なした)

上記の通りかなり恣意的に371以降の生存ユーザーのパフォーマンスを上方補正する方法です。

performance_timeseries_dual.png

しかしこれをもってしても長期パフォ安定者のパフォーマンスは20程しか補正されませんでした。

むしろここまでの分析から分かる通り中国人で説明するほうが自然なのではないかと考え、中国人rated参加者の数をプロットしてみると

performance_timeseries_dual.png

まあ完全にこれなんですよね。長期パフォ安定者のレートが急激に低下したのは中国人参加者増加のせいです。はい、完。
(勿論この図から主張できるのは相関関係がありそうだということであり、因果関係ではないのであくまで類推です)

しかしABC391以降変なインド人とかが1位になってしらける中で参加者が爆増する中国って…皆一体どういうモチベで新規参入しているのでしょうか。謎は深まるばかりです。

かのレート変動の分散分布を見るやつ

前回のレート変動の分散を調べるやつは個人的に非常に興味深かったため421-430も追加しておきました。
rating_abs_deviation_plot_japan.png
rating_abs_deviation_plot_china.png

  • 日本人は相変わらずの低分散です。国民的な教育水準の高さを反映しているのでしょうか。
  • 中国人は分散が爆増してきています。大量に流入した人の中で頭角を表す者が出始めただけか、はたまた潜在不正erとそうでないものに2極化されはじめたのか。前者だと思いたいですね。

まとめ

中国人参加者の増加が実力インフレおよびABC苛烈化の主因である可能性が高い(10倍の人数いる集団の上澄み層が参加しているであろう中国人参加者はAI以前から日本人参加者よりも成長が早く到達レートも高い)

数回毎のロールバックを仮に導入したとしても上がるレートは知れており、また実際に初参加者の実力はAIに関係なく上昇しているのでレートデフレ対策は数回毎のロールバックより初参加者の内部レート上げのほうが有効

chokudai御代疑ってすみませんでした、この分析で完全に考えを改めました、御代の仰ることが正しいです。結局私が3月から4回に分けて分析してきた内容というのは、一番最初の回に前提として置いた「特定の集団の急激な流入が無いと仮定すると」という部分が偽だったという結論に至りました。レート低下をAIのせいにせず、正々堂々せまりくる中国人とバトルしましょう。

2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?