【IT】学生プログラマーの日本一決定戦!「CODE VS」開催!!

1:依頼27-138@pureφ ★:2012/01/22(日) 23:08:24.34 ID:???

学生プログラマーの日本一は誰だ? 

1_1


1_2


リクルートのMedia Technology Labで開催されたCODE VSの決勝戦の様子(写真は準決勝戦) 

学生プログラマーの日本一を決めるだなんて触れ込みだったから、どうやってその勝敗を 
決めるのか興味があった。だって、聴衆の前で決戦が行われて腕利きのプログラマーを 
決めるってどういうことなんだろうみんなも不思議に思うだろう。だから、僕は昨日開催された 
CODE VS(コードバーサスと読む)の決勝戦に出向いてきた。CODE VSはチームラボや 
Pixiv、サイバーエージェントなど8社が開催した学生プログラマーを日本一を決める大会だ。 
これが第1回の大会となる。 

この大会では、タワーディフェンスというコンピュータゲームを題材にしてプログラマーに勝負 
させている。タワーディフェンスは限られたマスの中にエイリアンを攻撃するユニットを配置して、 
エイリアンの侵入を防ぐというゲームなのだが、限られた時間で効率よくエイリアンを攻撃 
できるアルゴリズムを実装できたプログラマーが勝者となる。最初、僕はこの話を聞いて 
ピンとこなかったのだが、たとえると、30×30のマスの中で始点と終点が決められたときに 
最長ルートを導き出して効率よく攻撃できるようにするのが命題なのだそうだ。 

つまり、エイリアンが自分の陣地に容易に近づかないように迂回させるルートを導き出すアル 
ゴリズムをつくるということだ。最短ルートを導きだすアルゴリズムは教科書にものっていたり、 
あるいはカーナビなどの最短ルート探索などでいろいろと実装されていて、最適解を求める 
のは簡単なのだそうだが、逆に最長ルートをみつけるのは非常に莫大な計算量となって最適 
解を見つけることは不可能だそうだ。なので、アイデアを駆使してそれらしい解を見つけるアル 
ゴリズムを実装したプログラムを作ることになる。プログラマーたちはこの日までに自分たちが 
寝ずにつくってきたプログラムを持ち寄って参加している。 

決勝戦では1対1で同じゲーム(命題)に対して、同時に互いにプログラムを走らせて、結果 
がよかったものが勝者となる。決勝戦は8人のトーナメント戦で競われた。正直言えば、 
実際のバトルタイム(つまり、プログラムがゲームをしている時間)はゲームが画面に表示 
されているものの、高速に進んで何が起きているのかわからなかったし、音楽や解説がなけ 
れば、無味で地味な勝負だっただろうが、ルールを理解しているプログラマーたちが参加して 
いるためか、不思議な盛り上がりを見せていた。 

そして、800人以上の応募があったこの栄えある第1回大会の勝者となったのは東京大学 
大学院でシステム情報学を専攻して音声について研究している修士課程1年の吉里幸太 
さんだった。 

こういったある難しい命題をプログラマーに解かせるプログラミングコンテストは「競技プログラ 
ミング」と言われるジャンルのものなんだそうだ。プログラミング技能だけじゃなくて数学的知識 
や論理的思考なんかが重要になってくる。米国ではヘルスケア分野で300万ドルの賞金を 
賭けたコンテストなんかも開催されいるし、Googlde Code JamやNetflix Prize(すでに 
継続は中止)なんかが知られている。また、TopCoderという競技プログラミングを競い合う 
サイトもある。TopCoderでは世界中の優秀なプログラマーその技能を競い合っていて、 
中でもすぐれたプログラマーはレッドコーダーと呼ばれる300人ほどの人たちだという。今回 
優勝した吉里さんもレッドコーダーだし、競技後にこういった背景を教えてくれた運営事務 
局のサポートをする慶應大学環境情報学部4年の高橋直大さんもレッドコーダーだそうだ。 

最近は特に企業にとってエンジニアの需要が高まっているが、僕はこういったエンジニアが 
活躍する大会や人物がもっと表舞台になってもいいと思っている。それはスポーツ選手並の 
勝算賞賛を得てもいいはずだ。そのためにはもっと注目を集める大会やそこに登場して脚光 
を浴びる人のロールモデルが必要になってくるが、たぶんそんな時代もこれからやってくるの 
かもしれない(すでにプログラマーたちの間ではリスペクトされる人たちはたくさんいるのだが)。 

コーディングできるプログラマーたちの重要性に気がついた日本の企業も多いから、これから 
競技プログラミングの大会も日本でも増えていくんだろう。日本にもプログラマーの時代が 
やっとやってくるね。 

学生プログラマ日本一決定戦 CODE VS(コードバーサス) 
http://codevs.jp/ 

Ryuichi Nishida/TechCrunch 2012年1月15日 
http://jp.techcrunch.com/archives/jp20120114who-is-the-best-student-programmer-in-japan/ 



3:名無しのひみつ:2012/01/22(日) 23:23:04.02 ID:0nzNUsYo

本当に上手い人はこんな大会に出ないと思う 



4: 忍法帖【Lv=19,xxxPT】 :2012/01/22(日) 23:34:25.65 ID:ZsmeMgfK

プログラムではなく、アルゴリズムの勝負だと思う。 



5:名無しのひみつ:2012/01/22(日) 23:34:33.08 ID:NOD/mCcj

最高にクールな奴は人に評価されるためにやってねえから。

ガキをダシにする汚いクソ企業つぶれろ。



7:名無しのひみつ:2012/01/22(日) 23:51:51.28 ID:oEVQowtU

プログラム得意な奴だって
誰かに評価されたいに決まってるだろ



8:名無しのひみつ:2012/01/22(日) 23:52:01.68 ID:nU4Mg1UT

プログラミングの巧さって旬があるよね。
ある程度のポテンシャルの人の中で、そのときのコンテキストに
一番アツくなれた人が、一番巧いみたいな。
能力あっても、いつも絶対的に巧いわけじゃない。



23:名無しのひみつ:2012/01/23(月) 01:00:05.20 ID:pPO9Sxpt

>>8
やっぱ学生んときが一番熱かったよな、頭柔らかいし。
金無かったから、コンテストあったらでてたと思う。



9:名無しのひみつ:2012/01/22(日) 23:56:33.39 ID:RJTRxIVw

OSを作れたり一つのソフトウェアを作るプログラマって司法試験とか合格する
ような人達と同じくらいの頭脳集団だと思う。
自分はプログラマは心底尊敬する、自分じゃなれるような頭もってないから。
プログラミングは覚えること多すぎて難しすぎる。



11:名無しのひみつ:2012/01/22(日) 23:58:10.51 ID:oEVQowtU

>>9
試験脳と応用の脳は別だからそうとも限らない



14:名無しのひみつ:2012/01/23(月) 00:11:51.10 ID:JTCVkPv0

>>9
OS作るのは司法試験どころの話じゃないよ・・・
つくづく世間のIT業界に対する見方の低さを思い知る
多分OSを一から自分で作れるレベルの人は100万人に1人もいないくらい
500人に1人が合格できる司法試験と比べるだけアホらしい
というか司法試験は過大評価され過ぎ
野球で言えば500人に1人って地元のそこそこ強豪校でベンチ入りするほうが難しいレベルだよ
野球の競争率はマジで半端ないからね



34:名無しのひみつ:2012/01/23(月) 04:01:01.68 ID:anSyB8Zd

>>14
OSと言ってもピンキリだからなぁ。
Windowsのような皆さんもよくご存じの物から、
BIOSにちょっと化粧したようなシングルタスクの物まで多種多様。



10:名無しのひみつ:2012/01/22(日) 23:57:49.10 ID:obKrYvzr

ロボコン並みに発展してほしいな。



13:名無しのひみつ:2012/01/23(月) 00:07:02.35 ID:QK8Df7rm

この手のプログラミング大会って、プログラミング能力の一部しか見てないよね。

プログラマの能力としてはすごいアルゴリズム思いつくかどうかより、
巨大になっても破綻しない設計ができるかどうかが重要だったりするし。
(もしくは、設計が破綻してるのを力技で完成させるための腕力か)



22:名無しのひみつ:2012/01/23(月) 00:46:10.32 ID:IYrWyia2

>>13
それはどちらかというとシステムエンジニアの能力
今回みたいな大会ではそもそも議論する能力ではない

システム開発だと概ね前者の能力が問われるけど、
科学技術分野では「斬新な」アルゴリズムを生み出す能力が必要とされる場合もあるの、というかそちらのほうが重要



25:名無しのひみつ:2012/01/23(月) 01:09:45.00 ID:QK8Df7rm

>>22
斬新なアルゴリズムを考えることで飯食ってるのはざっくりというと
情報工学の研究者であって、プログラマとはちょっと違う。



26:名無しのひみつ:2012/01/23(月) 01:19:58.52 ID:cLjGsCcC

ある領域を超えると数学者みたいなものだから
変人というか社会性と引き換えに能力を得てる人間が多い

なので社会としてリソースがより不足してるのは
そいつらを上手く扱えるマネージャだと思うね
漫画家における編集者的な立ち位置というか



27:名無しのひみつ:2012/01/23(月) 01:33:43.70 ID:uKXnKO9q

多分この記者Ryuichi Nishidaは騙されたか勘違いしてるな
最長ルートを探すってのは巡回サラリーマン問題の範疇であって30×30マスっていったら未来の量子コンピューターでさえ現実時間内に解を見つけ出すのは不可能
タワーディフェンスの場合はプログラマの与えたパターンどおりに配置させるだけであってアルゴリズムというよりパターンの勝負


巡回セールスマン問題(じゅんかいセールスマンもんだい、Traveling Salesman Problem、TSP)は、都市の集合と各2都市間の移動コストが与えられたとき、全ての都市をちょうど一度ずつ巡り出発地に戻る巡回路のコストすなわち総移動距離が最小のものを求める(セールスマンが所定の数の都市を1回だけ巡回する場合の最短経路を求める)組合せ最適化問題combinatorial optimization problem である。

問題例の大きさは、都市の数で表される。この問題は、計算複雑性理論において、NP困難と呼ばれる問題のクラスに属する。すなわち、問題例の大きさに関する決定性の多項式時間アルゴリズムが見つかりそうにない、計算量的に困難な問題である。

引用 Wikipedia-巡回セールスマン問題 




31:名無しのひみつ:2012/01/23(月) 02:39:13.67 ID:fH18uiDc

日本の大半のプログラマには関係ないし、盛り上がらないと思う。
勝手にやってくださいレベル。
一部の研究者しか興味ないでしょ。



36:名無しのひみつ:2012/01/23(月) 05:32:54.97 ID:Nq4bf40x

他人が見て分かりにくいプログラムはある意味、保守性が高いとも言える



37:名無しのひみつ:2012/01/23(月) 06:24:58.72 ID:gw4KTjLT

誰も優勝者を素直に褒めようとしないのが2chらしいね



38:名無しのひみつ:2012/01/23(月) 07:12:09.38 ID:g9+wI7qd

>>37
べつに優秀だとおもわないし。

ソフト開発における命題到達へのアプローチはいくつもあろうが、
どれを選んでも結果がキッチリしていればそれでメシくえるし。

これってただの自己満足とコンテスト主催企業の宣伝じゃん



40:名無しのひみつ:2012/01/23(月) 08:07:13.25 ID:YEMfObsV

>>38
自分は賢いと思ってる。
同僚を馬鹿にしてる
だけど同僚から馬鹿にされてる
IQテストを信じない。
自分がやればもっとうまく出来るけどやらない
そのために価値が無いことにしたい。
そんなところだろう



39:名無しのひみつ:2012/01/23(月) 07:31:04.96 ID:Enn/z8Dc

セキュリティ部門とハッキング部門で競わせたら相互に発展すんじゃねぇの?
他の企業も金出すべ



44:名無しのひみつ:2012/01/23(月) 10:57:29.09 ID:60xIjYzD

問題はその「日本一のプログラム」の腕が、
企業が求めるような物を作る事が出来るかどうかだ。
もし出来ないなら、ぶっちゃけ無用。



46:名無しのひみつ:2012/01/23(月) 11:23:42.23 ID:7hFPs6Qp

これだけ探索空間に魅力の無い設定は珍しいw
空間R2(2次現ユークリッド空間)において、a*探索で最適解(=最短到達経路)の区間集合 (a,b]があったとして
その補集合{a*,b*}は、結局のところ有界であっても、限りなく上限か無限になる。



48:名無しのひみつ:2012/01/23(月) 16:22:51.69 ID:+MtA8hNe

優勝者のアルゴリズムはどっかにないの?



43:名無しのひみつ:2012/01/23(月) 10:40:26.79 ID:iUOnlBGQ

チェックの服じゃないと参加できないのか? 



ラビット速報からのお知らせ







今月の人気記事ランキング!


     コメント一覧 (17)

      • 1.
      • 2012年01月24日 09:10
      • すごく閉鎖的な思考傾向にあるのかしら。学生コンテストは最近の潮流だし、各々が自分本位に活動する業界で敢えて競技化することにはメリットあると思うけど。ビジコンの感覚に近いんでしょ。
      • 2. 名無しのうさぎさん
      • 2012年01月24日 09:37
      • クズだからしょうがない
        認められないんだよ 自分達の身近にある存在なだけに
      • 3. 名無しのうさぎさん
      • 2012年01月24日 09:50
      • プログラマの地位と扱いがいかに低いかが伝わってくるな
      • 4. 名無しのうさぎさん
      • 2012年01月24日 09:54
      • この記事を見て初めに受ける感情はみんな同じ。「嫉妬」。
        そのインプットされた感情が、どんな処理を通ってアウトプットされるのかは人によって違ってくる。



      • 5.
      • 2012年01月24日 10:02
      • 司法試験はローに入れなかった奴と受験まで辿り着けなかった奴の倍率を忘れてる。会計士だって6%だけど母集団がほぼ早慶って時点でただの6%じゃない。
        逆に行書が3%とか宅建が10%とか低いが母集団が底辺だらけで難易度は低い。

        表面化ら数字拾ってくる奴はただの阿呆
      • 6. あ
      • 2012年01月24日 11:03
      • 2chの連中っていつもプログラマに限らず研究の成果に対しても大したことないだの実用性がないだの難癖つけるよね。
      • 7. 名無しのうさぎさん
      • 2012年01月24日 12:07
      • 2chっていうか日本だろ
        理系の扱いが低いから、海外行っちゃうんだよな
      • 8. 名無しのうさぎさん
      • 2012年01月24日 13:25
      • 批判だけは立派なんだよね。
        何でも馬鹿にして自分はニートのキモオタ。
      • 9. 名無しのうさぎさん
      • 2012年01月24日 13:39
      • どこの田舎者か知らないけど
        語尾に「べ」をつけるのやめろ
      • 10. 名無しのうさぎさん
      • 2012年01月24日 14:43
      • 経路長も重要だが、単位時間当たりのダメージ量や、同時分散攻撃の効率性が重要。
        かなりゲームシステムに依存している。
        >>46は経路長さだけを問題にしても、間違ってる。R^2探索じゃなくて、R->Rの多価関数空間の探索。上限が有界なのはあってるが。
        >>27も巡回セールスマンの範疇というのは違う。厳密解の探索問題ではなく、パターンアルゴリズムの勝負というのは同意。
      • 11. 名無しのうさぎさん
      • 2012年01月24日 15:34
      • へんなウイルス作って世界中に感染させウイルスソフトの会社と
        裏で繋がっているプロなら無名だけど天才だと思う
      • 12. 名無しのうさぎさん
      • 2012年01月24日 23:49
      • 巡回セールスマン問題も,今は数万くらいなら現実的な時間で解けるんじゃないか。
      • 13. 名無しのうさぎさん
      • 2012年01月25日 15:26
      • 学生って言うから高校生ぐらいまでだと思ってたら、
        優勝者修士生かよ
        もう大人じゃねーか、同世代で本職の奴ら腐るほどいるだろ
      • 14. 名無しのうさぎさん
      • 2012年01月26日 00:26
      • 勝者となったのは東京大学 大学院でシステム情報学を専攻して...
        ※13のいうように、確かに高校生くらいまでじゃないとなんか違う気するわw 大学で主催すればいいけど年齢がなぁ。
      • 15. 名無しのうさぎさん
      • 2012年01月26日 17:56
      • 決勝戦の日とセンター試験の日がかぶってて、
        むしろ高校生お断りの大会だった様です。
      • 16. 名無しのうさぎさん
      • 2012年01月27日 17:19
      • ただの大会ではなくて、優秀なプログラマを濾し取るために賞金とゲームで集めたんだろ。
        ここの上位陣は、後で企業からオファーが来るんだろうさ。
        ゲーム鑑賞中の態度とかも、コソッとチェックされてそうだよね。
      • 17. 名無しのうさぎさん
      • 2012年02月05日 04:25
      • これの予選に参加したけど、いくら賢いアルゴリズムを考えても、
        それだけじゃクリアできない(=決勝には進めない)んだよね。

        実は予選における各マップの初期配置はパターンが数種類しかなく、おまけに敵の配置はすべて変わらない。
        なので何度も同じステージに挑戦して、各マップの配置パターンをすべて記録し、
        それに合わせて手動で迷路を作って配置するだけで全クリ出来る。

        逆に言うと、手動配置をやらないと全クリは不可能です。
        初期配置が数パターンしかないことに気が付かなかった人は例外なく予選落ち。
        どんなアルゴリズムでもあの制限時間では全クリできません。

        まぁ何が言いたいのかというと、問題を解く時はデータをきちんと見ましょうね。
    コメントする
    名前
    Related Posts Plugin for WordPress, Blogger...