世界のスーパーコンピュータとそれを動かす人々


8月 15, 2013

プログラミング・コンテスト、学生を「おたく化」させ重要なスキルセットを身に着けさせる

HPCwire Japan

バイナリ・サーチ・ツリー、ダイナミック・アレイ、マトリックス乗算 – これらは7月に50人以上の学生達がサンディエゴで開催された第二回XSEDE(Extreme Science and Engineering Discovery Environment)会議に集った理由だ。

学生達はまた、XSEDE13学生プログラミング・コンテストの終了後、プールや観光で楽しんだ。XSEDE13学生プログラミング・コンテストは、ポスターセッション、論文、メンタープログラム、チュートリアルおよびジョブフェアを含んだ全体的な学生プログラムの主要な焦点であった。

学生プログラミング・コンテストは2011年に始まり、当時、全米科学財団(NSF)サイバーインフラストラクチャ・イニシアティブがTeraGridとして知られた時だ。この年にAnge Mason、少数の献身的な先生方、それからShodor(訳注:計算科学教育を行うNPO)、コントラコスタ・コミュニティ大学、ワシントン大学、ルイジアナ州立大学およびLouisiana School of Math, Science and the Artsからの支援代表者の指導の下で成熟したものだ。

「学生達がこのコンテストに参加する際に、分析的な思考で彼らの可能性を実現して欲しいのです。」と、XSEDE13の学生プログラムのチェアであり、サンディエゴスーパーコンピュータセンターで教育および援助活動コーディネーターであるMasonは語っている。「学生達が自らに挑戦して、快適なゾーンの外側に行くような正しい方向に、このコンテストが後押しすることを望んでいます。」

合計10チームが終日のコンテストに参加した。チームが挑戦したのはいくつもの計算問題だ。シンプルな曲線の領域を計算する微積分ベースのアプローチ、演算集約型タスクに利用できる十分に大きい素数の生成、期待される結果の確率分布を生成するためにアンサンブル・ベースのアプローチを使うことなどだ。問題を解く過程の中で、学生達はエンジニアリング・ジャーナルのドキュメント作成、アルゴリズムの作成、コードの作成およびコードの実行時間の計測を行う。C、C++、Fortran、Perl、Python、Javaなど様々なプログラミング言語を使用できる。

Masonによれば、参加した学生達は必ずしもSTEM(Sieence,Technology,Engineering,Mathmatics)仕事を続けていくものばかりではない。そのため、このコンテストを恒例イベントとし、イベントを改良するために学生達の意見を聞き、ソーシャルメディアを使って学生達の参加を促すのことが今年は重要だった。58以上の研究機関が、女性、ヒスパニック系、アフリカ系およびネイティブ・アメリカンなど伝統的に過小評価されている学生を含んだ混成チームであったことが印象的だ。

カリフォルニアにあるコントラコスタ・コミュニティ大学の数学の教師でありコンピュータ科学者であるTom Murphyによれば、コンピューティングにおいて最も取り残されている学生達の頭では「出来ない。」という声が響いている。

「だからこそ、支援活動という意味において私どもが行っているコンテストは大きな勝利なのです。」とMurphyは語っている。「学生達はこのコンテストで行った以上のものを持ち帰っています。壁に頭を打ちつけることも多くありましたたが、また多くの成功もありました。競争することは学生達を違った方法で教育に集中させます。学生達が問題を解決する方法で教育が行われ、これを教室に持ち帰ることができるならば、学生達は人生において大きな部分を持つこととなります。」

ボルチモア郡にあるメリーランド大学のコンピュータサイエンスの大学院生であり、XSEDEの奨学生でもあるGenaro Hernandez Jrは一回目の参加であった。「我々のチームは人間のバックグラウンドによる多くの強さを持ったチームでした。」とHernandezは語った。「一人は並列化ができてコードの高速化でき、もう一人は数学の名人であり、ほとんどの人が課題を解決したがり、そして何人かはコードを書くのが得意でした。」

Hernandezのチームは10個の課題の内7個を解くことができた。- 悪くはない。だが、プログラミング・コンテストを長年運営してきた中で、Murphyが知る限り8時間の制限時間内に10個のすべての課題を完成させたチームは無い。彼は2005年からこれらのコンテストに関与している。

「私どもの哲学は、彼らが出来る以上の方法を彼らに与えましょう。」とMurphyは語っている。「すべての課題に答えることが出来たら、それは退屈な競技会になるかもしれません。常に学生達には彼らのリーチを伸ばして欲しいのです。」

プログラミング・コンテストに参加することは学生達にとって莫大な価値がある。他の人たちの面前でプログラムできるか?プレッシャー下で、解決策を見出しプログラムを書けるか?チームとして動けるか?

Brad BurkmanはXSEDEキャンパス・チャンピオンであり、Louisiana School for Math, Science and the Artsの数学教師である。彼が例える。「私は高度な計算リソースを高校の授業で使うことが出来ることを気づいてもらいたいのです。」と彼は語った。

Faith Singer-Villalobos, Texas Advanced Computing Center

Burkmanがいる学校では”Littele Fe”コンピュータ(訳注:教育用並列コンピュータhttp://littlefe.net/)を持った最初の高校である。この素晴らしい「ボックス型スーパーコンピュータ」はそれ以来、彼の教室にある。彼はこの”Little Fe”を使って、並列プログラミング・コースを1週間にわたって教えている。学生達は、Burkmanのキャンパス・チャンピオンによる割当を介してXSEDEのリソースにアクセスできる。Burkmanによれば、高校生達は”正当に強力なプログラム”を開発することが可能で、次にそのプログラムをXSEDEのリソースに移動させることができる。彼が助言者となって付き添った高校生チームは、競技会でで”最も創造的なソリューション”のカテゴリーを勝ち取った。

「XSEDEは科学を起こす素晴らしいリソースです。」とBurkmanは締めくくった。

最後に、XSEDE学生プログラミング・コンテストは学生達が問題解決能力を習得することを支援している。問題を解決する一つの方法を覚えることがゴールではない。「如何に問題を解決するか、何故私が学生達にスキルセットを持たせたいかを正当化しています。かれらは論じることで称賛を得、並列解法の適用によってエクストラ・ポイントを得ます。」

何故、XSEDEは学生プログラミング・コンテストを継続的に主催してるのだろうか?

「それは学生達を変えるからです。」とMurphyは述べた。「学生達にスーパーコンピュータを使って欲しいけれど、彼らは教育を見る方法を変える必要があります。科学者、アーティストまたは経済学者であるかどうかに関わらず、かれらはインパクトのある貢献者になれる可能性があります。そして、計算はすべての分野に影響するのです。」