日本選手団 団長 伊藤哲史
日本代表選手 | |||
金メダル | 村井翔悟 | 開成高等学校 3年 | |
銀メダル | 笠浦一海 | 開成高等学校 3年 | 銀メダル | 秀郁未 | 開成高等学校 3年 |
銀メダル | 劉鴻志 | 栄光学園高等学校 2年 | |
日本選手団役員 | |||
団長 | 伊藤哲史 | 京都大学准教授(IOI 1994, IOI 1995 選手) | |
副団長 | 谷聖一 | 情報オリンピック日本委員会専務理事,日本大学教授 | |
随行役員 | 副島真 | 東京大学理学部数学科 3 年(IOI 2008, IOI 2009 選手) | |
随行役員 | 滝聞太基 | 東京大学理学部数学科 3 年(IOI 2008, IOI 2009 選手) | |
随行役員 | 保坂和宏 | 東京大学理学部数学科 3 年(IOI 2008, IOI 2009 選手) |
IOI は個人戦であり公式データとしての国別順位は存在しない.公表された成績に基づいて算出したところ,メダル獲得数による国別順位は 7 位タイである(1位中国・ロシア(金4),3位ルーマニア・アメリカ(金3,銅1),5位イラン(金2,銀2),6位ベラルーシ(金2,銀1,銅1),7位日本・クロアチア・ポーランド(金1,銀3),10位ブルガリア(金1,銀2),11 位韓国・ウクライナ(金1,銀1,銅2)). また,総得点による国別順位は 4 位であり(1位中国,2位ロシア,3位アメリカ,4位日本,5位ベラルーシ,6位ポーランド,7位ルーマニア,8位イラン,9位クロアチア,10位ベトナム,11位台湾,12位韓国).IOI2011 タイ大会(金1個・銀3個,メダル数は 8 位タイ,総得点は 6 位)よりも成績を上げることができ,IOI2010 カナダ大会(金2個・銀2個,メダル数は 2 位タイ,総得点は 4 位) に匹敵する成績であった.
競技 1 日目 | 小石オドメーター |
パラシュートリング | |
ザリガニの代書 | |
競技 2 日目 | 理想の都市 |
最後の晩餐 | |
馬上試合大会 |
IOI2012 では,さすが IOI と言える,とてもよく練られた良問が出題された.各課題がいくつかの「小課題」に分けられている.「小課題」の中には,単純な実装で得点が得られるものから,高度なアルゴリズムを実装しないと得点が得られないものまで含まれている.従って,1 つの課題を丸ごと落として 0 点になってしまう可能性は少ないが,満点を取るのは難しい.また,今年は,従来型のバッチ型課題(仕様をみたすプログラムを提出して,その実行結果に基づき得点が与えられる課題)以外にも,「小石オドメーター」といった思考力を問う新傾向の課題も出題された.
このような良質の課題を準備してくれた HSC (Host Scientific Committee) の努力には敬意を払いたい.その甲斐もあり,IOI2012 では各参加者が自分の実力を発揮して競技に参加できたようだ.競技結果は極めて滑らかな分布となった(詳細は IOI2012 ホームページを参照).2 日間を通しての満点(600点満点)は Johnny Ho さん(アメリカ) 1 人のみである.3 大会連続の IOI 総合 1 位だったベラルーシの Gennady Korotkevich さんは,今年は 2 位(588 点)であり,IOI で通算 6 個目の金メダル(IOI2006 の銀メダルを含めると通算 7 個目のメダル)を獲得した.
IOI では,伝統的に,2 日間の競技を行い,各競技日には 3 題の課題が出題されている.過去には(IOI2009 ブルガリア大会,IOI2010 カナダ大会) 1 日に 4 題 (2 日間で合計 8 題) が出題されたこともあったが(ただし,4 題のうちの 1 題はとても易しい課題),IOI2011 タイ大会で以前の数に戻り,この変更は IOI2012 でも引き継がれた.
IOI の問題文には背景となる「ストーリー」が付いていることが多い.今年はイタリアを代表する芸術家レオナルド・ダ・ヴィンチにちなんだ課題が出題された.例えば,2 日目の「最後の晩餐」は絵画を描くレオナルドに対し,助手が効率良く絵の具を届ける戦略を求める課題である(これは本質的には情報量の符号化に関する課題である.課題に取り組む際には,絵画ついての知識はもちろん一切必要ない).
競技について気づいた点をいくつか述べる.
(1) スコアボードの公開 : IOI2010 カナダ大会から導入されたスコアボードは今年も継続された.今年のスコアボードサーバへのアクセスは良好で,日本も含めて,世界各地から多くの人々が IOI2012 の競技を臨場感を持って観戦してくれたようである.スポーツのオリンピックと同様,競技の生の様子を伝える試みである.
スコアボードの公開の影響として,従来は公開されることがなかった下位選手の成績が明らかになっている.この点は競技終了後の GA meeting でも議論になった.IOI では規則ではメダリスト以外の成績を公表しないこととなっている.スコアボードの公開はその規則に反するのではという意見があった.IOI2012 のホームページを見ると,最終的な競技結果("Results")のページには確かにメダリスト以外の成績は公表されていない.しかし,スコアボードを見ると,全員分の成績を(0 点の人も含めて)見ることができてしまう.今後,競技結果の公表のありかたも含めて,議論になっていくものと思われる.
(2) プロシージャ方式 : IOI2010 カナダ大会から導入された「プロシージャ方式」は今年も継続された.これは,実行可能なプログラム全体ではなく,アルゴリズムの根幹をなす「プロシージャ」のみを提出するものである.選手は入出力インターフェースを実装する必要が無く,入出力の些細なミスで失点することが防げる.一方で,開発環境に慣れていないとデバッグがやりにくいという欠点もある.GA meeting でも特に議論にはならなかったので,「プロシージャ方式」は来年以降も継続される可能性がある.なお,JOI では「プロシージャ方式」を採用しておらず,予選・本選・春合宿ともに旧来の方法(実行可能なプログラム全体を提出する)で行なっているが,特に混乱は無かった.日本選手にとって「プロシージャ方式」であるかどうかはあまり大きな問題ではないようだ.
(3) CMS (Contest Management System) : IOI2010 カナダ大会・ IOI2011 タイ大会では RunC と呼ばれるプログラミング・テスト環境が導入された.今年は RunC に代わり,CMS (Contest Management System) が導入された.これは,オープンソースのコンテスト実施環境である.
(4) トークン : IOI2010 で導入された「トークン」は今年も継続された.選手は競技中に「トークン」を使うことによって採点結果を確認できる(ただし使用可能なトークン数に制限がある).以前の IOI では選手は競技中には採点結果が分からず,些細なミスで得点を大きく落とすことがあった.「トークン」が採用された結果,このようなことが起こりにくくなり,選手がより実力を発揮できるようになった.
(5) 紙を使わないコンテスト : これは今年が初めての試みである.紙資源を節約するため,今年の IOI では問題文は PDF 形式で与えられた.ただし,選手は,必要に応じて競技中に PDF ファイルの印刷をリクエストすることができる.印刷ジョブ数から推測すると全体の 6〜7 割の選手が問題文を印刷したようだ.また,IOI 期間中に発行される Newsletter も,ウェブページを通じて PDF ファイルで配布され,紙媒体では配布されなかった.
(6) 翻訳 Wiki システム : これも今年が初めての試みである.昨年までは各選手団の団長が翻訳を紙媒体で提出していたが,今年は翻訳 Wiki システム上で翻訳を作成し電子的に提出することになった.これにより印刷や袋詰といった作業が不要になった.効率良く翻訳作業に集中できるはずだったのだが,現実には,Wiki システムのテストが不十分で戸惑うことがあった.また,IOI2012 主催者が用意した環境では PDF ファイルの日本語フォントが綺麗に表示できないことが発覚したが,結局,対策を取ることはできなかった(PDF ファイルを読むことはできたので,競技自体には支障は無かった).競技終了後の GA meeting では,新しいシステムを導入する際には事前のテストを十分に行うべきであるという意見が出た.
(7) ノートパソコンの利用 : これも今年が初めての試みである.今まで IOI はデスクトップパソコンで行われていたが,今年の競技ではノートパソコン (Acer TravelMate 5744, display 15.6″HD 16:9 WXGA, CPU: Intel i3-380M 2.53 GHz 3 MB L3 cache, OS は Ubuntu 12.04 LTS i386, Gnome Classic) が用いられた.ノートパソコンのキーボードはイタリア仕様のため,外付けキーボード(US キーボード)が全選手に支給された.また,日本選手の中にはキーボードを日本から持参した者もいた(IOI では事前に提出して検査を受けることで,キーボードの持ち込みが認められている).ノートパソコンはデスクトップに比べて画面が狭いが,競技に支障があったという話は特に聞かなかった.なお,JOI では,本選・春合宿ともに,ノートパソコンで行っている.
(8) 不正行為への対策の強化 : 今年は会場への腕時計の持ち込みが禁止された(昨年まではデータ保存機能の無い腕時計の持ち込みは許可されていた).ただし,現地のスタッフからは財布やパスポート等の貴重品も持ち込み禁止と言われたため,日本選手の中には戸惑う者もいた.現実には,財布やパスポートを(持ち込み禁止と知らずに)持ち込んでしまった選手もいたかもしれない.
(9) 競技環境にインストールされているソフトウェア : 以前より,競技中に使用できるエディタ・コンパイラは競技規則に明記されていたが,それに加えて今年は python 2.7.3, ruby 1.8.7 が使えることが明記されるようになった.競技実施前は特に気に留めなかったが,後になって考えてみると,「小石オドメーター」のような課題に取り組む際は,C/C++, Pascal だけでなく,必要に応じて python, ruby 等も組み合わせて使った方が便利だったということかもしれない.
(10) 問題文の長さについて : IOI の問題文は,ストーリーや細かい仕様が書かれていることもあり,長文になってしまうことが多い.このことは HSC (Host Scientific Committee) も認識しており,問題文を短くするように努力したようである.それでも,競技終了後の GA meeting では,問題文が長すぎるという意見が出た.問題文の原文は英語であり,英語から離れた言語を使う国・地域にとって翻訳は大きな負担となっている.日本が翻訳に苦労するのは毎年のことだが,今年は翻訳 Wiki システムに不慣れだったこともあり特に苦労した.2 日とも日本が翻訳作業を終えたのは朝 6 時を過ぎてのことである.翻訳作業は競技前日の夜遅くに開始される(今年はトラブルもあり開始が遅れることがあった).もう少し早い時間に開始できるとよいのだがと毎度のことながら思う.
IOI では,IOI2010 カナダ大会で大きな改革が行われたが,そのうちのいくつかは今年も(改良され)引き継がれた.また,新たな改革も行われ,それらのうちの多くは成功だったと思う.ただし,変更点の周知に関する連絡不徹底があった感は否めない.
GA meeting でのオーストラリアからの報告によると,「CMS」「紙を使わないコンテスト」「翻訳 Wiki システム」は来年も継続する予定とのことである.