生成AIの台頭に伴うABCにおけるルール変更について

posted:
現在、ABCにおいて、生成AIを利用して問題を解くユーザが一定数存在し、競技性が少し失われ、レーティングの信頼性が減少しております。 生成AIは、現在のプログラミング環境から切り離すことは非常に難しく、一括禁止をするべきものではありません。ですが、生成AIに問題を解かせるだけの行為は、競技としても、ITエンジニアとしての能力証明としても価値があるとは言い難く、AtCoderとして禁止するべきだと考えております。 ## ルール 詳細なルールは以下のページをご確認ください。 [AtCoder生成AI対策ルール - 20240607版](https://info.atcoder.jp/entry/llm-abc-rules-ja) ルールの概要を説明すると、 - AtCoderから提供される問題文のテキストや画像を、直接生成AIなどのプログラムに与えることを禁止する - AtCoderの問題文を読んだ後、人間が入力した情報、またはそれを機械的に変換した情報を生成AIに与え、その出力を活用することは許可する - 翻訳など一部の用途のみの使用や、定数や固有名詞などをコピーして利用することは許可する という内容になっております。このルールは、ABCにのみ適用されます。 ### ルールの作成指針と今後のルール変更について 今回のルールは、以下の2項目を重視してルールを制定しました。 - 現在、生成AI以前と同じ形でAtCoderに取り組んでいるユーザに対して不利益をできるだけ発生させない。 - 参加者自身から見て、「ルール違反であるか否か」が容易に判定できる。 今回のルールで「人間が入力した情報は全て許可される」という点は、1番目の作成指針と完全に合うものではありません。ですが、2番目の作成指針に基づいて考えると、特定のソフトウェアの利用を完全に禁止するか、このルールを設定するかしかなく、今回はこのような形になりました。 AtCoderでは、ABC/ARC/AGCの3つのアルゴリズム系コンテストを開催しています。この3つは、難易度ではなく、問題の典型度合いに応じて問題を選択しています。 ABCは、教育的な部分を重視した問題を出題しており、典型度の高い問題しか出題しない方針となっています。そのため、既存の問題に強くなりやすい生成AIが、半分程度の問題を解けるようになっています。 ABCを生成AIを利用して解くことは、競技性の崩壊や、ユーザ全体のコンテスト体験の低下を招き、また、教育的な価値も低下してしまいます。生成AIに問題をそのまま与えて、出力されたコードをそのまま提出するという行為には、競技においてはもちろん、ITエンジニアとしても価値が全くありません。 一方、昨今のプログラミング環境において、生成AIを既に使っている人は多く、生成AIを利用したプログラミングがさらに一般化していくことが予想されます。 AtCoderがサービスとして届けたいのは、アルゴリズムを考える能力を競う競技性や、それを思いつく楽しみです。今回は生成AIに情報を与える方法を制限することで、競技としてのバランス調整を行いました。 現在、ARC/AGC については生成AIの使用制限は考えていません。これらのコンテストは、ABC よりも柔軟な発想を要求するように設計されています。そのため、過去問を見ても生成AIが解ける ARC/AGC の問題はまれにしかありません。 さらに、今後は問題選定の段階で生成AIが単独で解ける問題は ARC/AGC への出題を見送る方針となりました。 よって、ARC/AGC において生成AIを利用して有利になる場面があったとしても、それは競技性を損なうレベルには達しない、と判断しています。また別の観点として、生成AIの利用も含めた問題解決能力を競うことにも意味があると考えております。 例えば、自分のプログラムをデバッグする際に、低速な全探索解法を書いてそれと突き合わせる、という手法は一般的でしょう。ここで、問題文を生成AIに読み込ませて全探索を書かせるという戦略をとっても、それはAIを上手に利用しているだけであって、AIに頼って問題を解いているということにはならないと考えています。 無論、全探索解法がそのまま正解を獲得できてしまう場合は事情が異なりますが、ARC/AGC ではそのような問題は出題されないので影響はありません。(また逆に、そのような問題が出題されるが故に ABC では規制が行われていると言えます。) 以上の理由から、ARC/AGC においては生成AIの利用は制限しないこととしました。 今回のルールで、実際にABCで不正を行ったユーザの摘発可能かどうかの観点で言うと、正直に言えば、多くの場合可能ではありません。そもそも多人数による協力プレイなどもオンライン上においては摘発が不可能です。競技プログラミングはもともと参加者の良心のもとで成り立っている競技であると考えています。競技プログラミングの文化を守るため、ぜひ協力をお願いします。明らかにルール違反をするユーザが多く検出された場合、特定のコンテストに対してその集団からのアクセスを禁止したり、法的措置を含む厳格な対応を考えています。 最後に、今後の生成AIの進化や、多くのユーザの動向に応じて、特定のサービスの利用を禁止するなど、さらなる制限を加える可能性があります。今後もルールは分かりやすい場所に掲載するつもりでいますので、ご確認をよろしくお願いします。