Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Open Source Online Judge Contest System

15,762 views

Published on

IPA Mitoh Project 2011

  • Be the first to comment

Open Source Online Judge Contest System

  1. 1. オープンソースによるオンラインジャッジシステムの開発 矢倉大夢
  2. 2. 自己紹介• 矢倉大夢 (やくら ひろむ)• Mail: hiromu1996@gmail.com • Twitter: @hiromu1996 
  3. 3. 自己紹介• 校パソコン部 部長• セキュリティ&プログラミングキャンプ • 2010年度Linuxカーネル組 • カーネルにパッチが採択される
  4. 4. 自己紹介• アジア太平洋情報オリンピック2012 • 銅メダル
  5. 5. 情報オリンピック “毎年行われる高校生を対象としたプログラミング能力を競う国際大会である” ー 国際情報オリンピック, Wikipedia
  6. 6. 競技プログラミング• 競技プログラミング • 実行時間やメモリ使用量に制限 • 問題を解くプログラムを作成 • 入力に対し正しい出力をさせる
  7. 7. 競技プログラミング• よくあるイメージ • 生産性がない • 就職に役立たない
  8. 8. 競技プログラミングは楽しい
  9. 9. やりたいこと• 楽しさを知ってもらいたい• ついでに普及して欲しい • すると就職に役立つようになるかも
  10. 10. 現状• あまり普及しているとはいえない • 知名度も低いといえる
  11. 11. Topcoder• 世界最大級のコンテスト • 1~2週に1度 Single Round Matchを開催 • NSA, Google, NASAなどがスポンサー
  12. 12. Topcoderのユーザー ユーザー数 インターネットユーザー10000人あたり日本 7297人 0.7人アメリカ 82901人 3.3人中国 64583人 1.2人インド 69052人 5.7人
  13. 13. Topcoderのユーザー• 非英語圏に比べても少ないのは明らか • 知名度が低い? • 学習環境が整っていない?
  14. 14. 学習環境• 日本語で学べる環境が少ない • 採択後に初の定期開催コンテスト • Atcoder (http://atcoder.jp)  • 月1回の開催
  15. 15. オンラインジャッジ• オンラインジャッジシステム • 競技プログラミングの学習環境 • 問題を解くと正誤判定してもらえる
  16. 16. オンラインジャッジ• 既存のものはいくつかある • Aizu Online Judge  • 会津大学が提供
  17. 17. オンラインジャッジ• 既存のものは自分で作問ができない• 自分でホスティングできない • システムが公開されているものはない
  18. 18. オンラインジャッジ• サークルでサーバーを立てて練習• 自分の作った問題を解いてもらう • こういうことができない
  19. 19. 提案システム• 誰でも使えるジャッジシステムを作成 • 手軽にインストールできるように
  20. 20. システム Web ジャッジサーバー サーバー
  21. 21. システム PHP PythonMySQL Cgroup
  22. 22. システムソースコード
  23. 23. システム ソースコード
  24. 24. システム ソースコード 実行 入力 出力
  25. 25. システム 結果
  26. 26. 既存のものとの違い• 問題を自由に作成できる • レーティング、タグ付け機能も • 問題のレベル分類などが明白 • 学習により便利に
  27. 27. 既存のものとの違い• 問題作成がしやすい環境 • 手元に環境がなくてもできるような • 入力のチェックが手軽に
  28. 28. 既存のものとの違い• 簡単なインストール • サーバーに設置 • DBの設定を行う • すると使える
  29. 29. 今後すること• まだ公開できていない • Githubのアカウントが移行中• インストーラーパッケージの公開 • .debファイルを作成 • Launchpad.netにアップロード予定
  30. 30. 今後すること• ユーザーによる評価 • 8/9~11のパソコン部合宿で使用予定
  31. 31. 今後すること• まだまだ修正する部分がある• 競技プログラミングの周知も努めたい • 今後にご期待ください
  32. 32. ご清聴ありがとうございました

×