ソフト人材を求める製造業、競技プログラミングに熱視線組み込み開発ニュース(1/2 ページ)

ソフトウェア人材の獲得競争が激化している。特に新卒人材の獲得は企業の将来競争力に直結することもあり、各社は工夫をこらした取り組みを進める。その中でも、競技プログラミングに活路を見出す製造業企業が増えている。

» 2019年01月22日 08時00分 公開
[松本貴志MONOist]

 ソフトウェア人材の獲得競争が激化している。特に新卒人材の獲得は企業の将来競争力に直結することもあり、各社は工夫をこらした取り組みを進める。その中でも、競技プログラミング(プログラミングコンテスト)に活路を見出す製造業企業が増えている。


 ディスカバリー・ジャパンとディスコは2019年1月19日、プログラミング能力を競うコンテスト「DISCO Presents ディスカバリーチャンネルコードコンテスト2019(DDCC2019)」を開催した。同コンテストは今回で4回目。JavaやC++、Python、Rubyなど各自が得意とするプログラミング言語で参加でき、課題を素早く正確に解くことを競い合う。

 また、DDCC2019から「コード部門」に加えて新たに「装置実装部門」を設けた。装置実装部門は同コンテストのために用意された“溶液撹拌(かくはん)装置”に参加者が自ら開発した制御用コードを組み込み、制限時間当たりの溶液生成量を競うものとなる。

 同コンテストの会場となったディスコ本社には1000人ほどで争われたWeb予選を勝ち抜いた200人が集まった。参加者の半数は2020年4月に就職を迎える大学、専門学校などの新卒学生。残りの半数は年齢や所属もさまざまで社会人の姿もみられた。最も若い参加者は中学生という。

 本戦では午前中にコード部門、昼食をはさんで午後に装置実装部門が行われた。コード部門は制限時間120分で5問の問題を解く。計算機科学や数学の知識を用いながらアルゴリズムを構築する課題が出題された。

コード部門本戦で出題された課題(クリックでWebサイトへ)

 装置実装部門の本戦は200人の参加者全員で争う第1次のシミュレーター問題と、第1次の成績上位10人が参加する決勝の実機問題で行われた。参加者が制御する装置と課題の概要は以下の通りだ。

溶液生成装置の概要。バルブ付きカップは溶液タンクと溶液A、Bバルブの間を制限時間内に複数回往復する(クリックで拡大、MONOist編集部作成)
  • 参加者は溶液を生成する装置を制御し、制限時間(1分間)で生成した溶液量を競う
  • 装置には液Aと液B(実際にはどちらも水)を流すバルブ2個、液AおよびBを撹拌するとともに溶液タンクまで運搬するバルブ付きカップ、溶液タンク(実際にはメスシリンダー)が備えられている。参加者が制御する対象はバルブ2個とバルブ付きカップとなる
  • 液AおよびBを流すバルブの流量は30mL/秒、溶液は液AとBの1:1で生成しなければならない。バルブ付きカップの容量は与えられていないが、上面と下面の面積および高さが与えられている
  • 参加者は液AおよびBを流すバルブの開時間、バルブ付きカップの動作(加減速度、最高速度、移動方向など)、バルブ付きカップのバルブ開時間を制御できる
第1次のシミュレーター問題に取り組む参加者(クリックで拡大)

 決勝参加者の10人は、シミュレーター問題で作成したコードを20分で実機仕様に変更し、実機を用いたテスト動作を行った。テスト動作ではバルブ付きカップから溶液を大幅にこぼす参加者が続出。実機が持つ機械的な誤差や物理現象を考慮したコーディングに苦慮し溶液量が160mL程度にとどまる参加者がいる一方で、テスト動作時点で400mL以上の溶液生成に成功する参加者もいた。

ある参加者のプログラムによるテスト動作の様子。溶液タンクへバルブ付きカップが到着するときの減速で少し水がこぼれているが、参加者によっては盛大にこぼしていた(クリックで動画再生)
       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.