OJBench: A Competition Level Code Benchmark For Large Language Models

本論文は、NOI や ICPC からの 232 問の競技プログラミング問題を収録した新しいベンチマーク「OJBench」を提案し、最先端の推論モデルさえも高度な競技レベルのコード推論において大きな課題を抱えていることを示した。

Zhexu Wang, Yiping Liu, Yejie Wang, Wenyang He, Bofei Gao, Muxi Diao, Yanxu Chen, Kelin Fu, Flood Sung, Zhilin Yang, Tianyu Liu, Weiran Xu

公開日 2026-03-03
📖 1 分で読めます☕ さくっと読める

Each language version is independently generated for its own context, not a direct translation.

この論文は、**「AI にとっての『オリンピック』のような、超難関なプログラミングテスト」**を作ったというお話です。

タイトルは**「OJBench(オー・ジェイ・ベンチ)」**です。

これまでの AI(大規模言語モデル)は、普通のプログラミング問題ならよく解けるようになりました。でも、それは「学校の定期試験」や「就職試験」レベルの話。本当に頭が良いかどうかを測るには、もっとレベルの高い「世界大会」のようなテストが必要だったんです。

この論文では、その「世界大会」をどう作ったか、そして最新の AI がそこでどう戦ったかを報告しています。

1. なぜ新しいテストが必要だったの?(「練習試合」と「本番」の違い)

これまでの AI のプログラミング能力を測るテスト(LiveCodeBench など)は、どちらかというと**「就職面接で出されるような、基礎的な問題」**が多かったです。

  • 今の状況: 多くの AI が「面接問題」なら満点を取れるようになり、もう誰が優れているか分かりにくくなってしまいました。
  • 必要なもの: 世界中のトッププログラマーが挑む**「NOI(中国の全国情報オリンピック)」「ICPC(国際大学生プログラミングコンテスト)」**のような、本当に難しい問題です。

この論文の著者たちは、**「AI に『面接問題』ではなく、『オリンピック本番』を解かせてみよう!」**と考えました。

2. OJBench とはどんなテスト?(「232 問の鬼門」)

彼らは、過去に人間が解いた232 問の超難問を集めてテストを作りました。

  • 出題元: 中国の全国大会(NOI)と、世界の大学生の大会(ICPC)の問題。
  • 難易度: 「簡単」「中級」「難問」に分類されています。特に「難問」は、人間でも解くのに苦労するレベルです。
  • 厳しさ: 正解かどうかは、単に「答えが合ってるか」だけでなく、**「すべてのテストケース(入力データ)」**をクリアしないと合格になりません。少しのバグでもアウトです。

3. 37 種類の AI に挑戦させた結果(「天才でも苦戦」)

彼らは、最新の「推論型 AI( reasoning-oriented models)」と呼ばれる、よく考える AI を含め、合計 37 種類の AI にこのテストを受けさせました。

  • 結果: 残念ながら、「最強の AI」でも、難問はほとんど解けませんでした。
    • 例え OpenAI の「o4-mini」や Google の「Gemini」のような最新モデルでも、難問の正解率は低く、「オリンピック本番」ではまだ人間に勝てないことが分かりました。
    • 簡単な問題は解けるのに、複雑な論理が必要になるとつまずく傾向がありました。

4. 面白い発見:言語によって強さが違う(「Python」vs「C++」)

AI にプログラミングをさせる際、どの言語を使うかも重要でした。

  • 人間の常識: プログラミング大会では、**C++**という言語が主流で、高速に動きます。
  • AI の傾向: 多くの AI は、普段はPythonという書きやすい言語で練習していますが、OJBench という「本番」では、C++ で書いたほうが正解率が高くなることが分かりました。
    • これは、C++ が計算速度に優れているため、時間制限の厳しい大会問題には向いているからです。
    • ただし、学習データに Python が多すぎる AI は、C++ だと逆に下手になることもありました。

5. 修正機能の効果(「エラーメッセージで直す」)

人間がプログラミングをするとき、エラーが出たら直して再挑戦しますよね。AI も同じようにできるか試しました。

  • 結果: AI はエラーメッセージを見て、**「コンパイルエラー(文法ミス)」**はすぐに直せます。
  • しかし: **「時間制限超過(TLE)」のような、「アルゴリズム(考え方の仕組み)が非効率すぎる」**というエラーは、AI には直すのが非常に難しいことが分かりました。
    • これは、AI が「もっと賢い解き方」を自分で考え直すのが苦手だからです。ここが今後の AI が伸びるポイントかもしれません。

まとめ:この論文が教えてくれたこと

  1. AI は「面接」には強いが、「オリンピック」には弱い。
    今の AI は、基礎的なコードは書けますが、複雑な論理を駆使する超難問にはまだ追いついていません。
  2. 新しいテスト「OJBench」ができた。
    これからは、AI の本当の力を測るには、この「オリンピックレベル」のテストを使うべきです。
  3. 言語と思考の重要性。
    高速な言語(C++)を使うことや、エラーから学ぶ能力を高めることが、AI をさらに強くする鍵になります。

つまり、**「AI はすでにすごい秀才ですが、まだ『天才プログラマー』にはなれていません。でも、この新しいテストを使って鍛えれば、いつかその壁を越えられるかもしれませんよ!」**という前向きな研究結果です。