【第三回】豊田自動織機主催ソフトウェア開発インターンシップ 優秀チームインタビュー
例年好評を博している豊田自動織機主催・チーム制ソフトウェア開発インターンシップが、さらにパワーアップした課題内容となって、2023年11月8日(水)、9日(木)、10日(金)の3日間にわたり開催された。
プログラムは、1~2日目にハッカソン、3日目は社員交流の2部構成だ。初日と2日目のハッカソンでは、同社の幅広い分野の中でも産業車両・物流ソリューションの部門にフォーカス。参加者は数名のチーム単位で活動し、強化学習の手法を用いて、シミュレータ上でフォークリフトの自動運転に挑戦した。豊田自動織機の現役社員がメンターとして参加しいつでもアドバイスが受けられたほか、多様なスキル・バックボーンを持つ参加者同士で知識を出し合い、相互に学び合う環境が整えられた。最終日はソフトウェアエンジニアとの座談会や、プロジェクトマネージャーから技術開発への想いを聞き交流する機会が設けられた。
株式会社豊田自動織機は、社祖・豊田佐吉が発明したG型自動織機の製造・販売のため1926年に創業。その後、事業の多角化を進め、繊維機械、自動車、産業車両、エレクトロニクスと事業領域を拡大。世界各地にグループ会社を保有するグローバル企業でもあり、関係会社数は2022年度末時点で289社を超え、従業員数74,887名のうち半分以上の従業員が海外にて活躍する。
学生たちは3日間、自動運転フォークリフトの開発体験や、産業車両・物流の未来に触れるコンテンツを通じて、同社の価値創造のプロセスや最先端技術への取り組みなどを学んだ。チームで難題に挑戦し、コンテンツや先輩社員から新たな知識を得られ、自分自身の今後の活躍の可能性を伸ばすことのできるプログラムとなっていた。
本インタビューでは、1~2日目のハッカソンにおいて最優秀賞に輝いたチームの皆さんにお話を伺った。
最優秀チームメンバー
齋藤 稜太さん–名古屋工業大学 工学研究科 物理工学専攻
畔柳 愛子さん–奈良女子大学 人間文化総合科学研究科 情報衣環境学専攻
山口 颯斗さん–金沢大学 自然科学研究科 フロンティア工学専攻
井出 翔太さん–静岡大学 総合科学技術研究科 工学専攻
普段の研究内容と、今回のテーマとの関連性について教えてください。
齋藤さん:
私はガラスの内部構造をコンピューターシミュレーションで再現して解析する研究を行なっています。解析の際にPythonと機械学習を用いており、強化学習ではありませんが、機械学習という点では関連性があると思います。
畔柳さん:
今年の四月から、YOLOというアルゴリズムを用いて文字認識に特化した物体検出器を作る研究をしています。私も強化学習は初めての経験でした。
山口さん:
自動運転技術において、点描データをもとに深層学習(ディープラーニング)を利用して物体の検出精度を向上させる研究を行なっています。強化学習は今回のハッカソンで初めて取り扱いました。
井出さん:
電気接点の接触現象とその信頼性向上に関する研究をしています。研究の一環として、ソフトウェア開発や設計の経験が少しあります。普段の研究と強化学習はほとんど関係がなく、教材で少し学んだ程度です。
ハッカソンの率直な感想を教えてください。
齋藤さん:
参加前は、強化学習もハッカソンも未経験で非常に不安だったのですが、とても良い経験になったと思っています。
元々興味のあった豊田自動織機がPythonを使うインターンシップを開催すると知り、普段の研究でもPythonを用いているのでぜひ参加したいと思って応募しました。
チームの雰囲気がとても良く全員フラットに意見を出し合えていたのが印象的でした。楽しく取り組めたことに加えて、最終的に優勝という良い結果を得られたので、参加して本当によかったです。
畔柳さん:
とても楽しかったです。
参加した理由は元々自動運転に興味があったことと、純粋に楽しそうだったからです。強化学習は初めてでしたが、参加する前の心理的なハードルはあまりありませんでした。機械学習や強化学習という言葉を聞くだけでワクワクする性格であるのと、チーム形式で他の方と協力しながら進められるだろうと思っていたからです。実際にチームの方にはたくさん助けていただきました。
大学の研究では実用化を考慮しないことも多く、自分の学んでいる技術を社会実装するにはどうすればよいのかという疑問がありました。このハッカソンで実務に近い開発フローを体験して、社会実装方法の具体的なイメージを持つことができ、今まで以上に研究を頑張ろうと思えるようになりました。
山口さん:
前のお二人と同じく、非常に楽しい経験でした。
参加するインターンシップ・イベントを探す中で自分の研究分野である自動運転がテーマになった今回のイベントを見つけ、応募しました。
当日は、課題の洗い出しから役割分担・課題解決までチームの皆さんがしっかりと計画を立ててくれたおかげで、非常にスムーズに開発を進められました。また、お互いに意見を出しやすい雰囲気があり、全員で意見を出し合えたことも良い結果に繋がったと考えています。
井出さん:
機械学習の経験はなく、自動運転というテーマに惹かれて挑戦してみたいと思い参加しました。
最初は配布されたソースコードの内容が全くわからず、他にもわからないことばかりで非常に不安でしたが、チームの皆さんがとても親切に教えてくださいました。また、意見を出しやすい空気を作ってくださっていて、良いチームだったと感じています。
優勝という好成績をおさめられましたが、工夫された点や良かったと思う点はありますか。
山口さん:
全員で意見を出し合った上で役割分担をして、それぞれがその役割に全力で取り組んだことが一番の要因だと感じています。具体的には、井出さんと私がゴール(フォークリフトがピックアップするパレット)までの経路最適化を極めるチーム、畔柳さんと齋藤さんが障害物を避ける(*1)方法を極めるチームに分かれて取り組んでいました。
*1 課題となったシミュレーションではフォークリフトがピックアップするパレットの前に障害物が配置されており、障害物を避けてパレットまで到着する必要があった。
畔柳さん:
山口さんと同じ意見で、結果としてチームを二つに分けたことが良かったと思っています。チームを分けることで個々の能力を活かしつつ、チームとしてよい成果を出せました。また、役割分担しつつも定期的に四人で集まってコミュニケーションを取り、行き詰まっていた部分を解決したり、分担した部分以外のところの変更について話し合ったりできていたのも良かったです。
単純に二手に分かれれば四人で取り組むよりも学習できる回数が増えるので、時間の制約がある中で有効な手段だったと考えています。
齋藤さん:
役割分担でそれぞれがソースコードのどこを編集するか明確に決めて、共通の部分は変更しないようにしていました。
分担以外の点だと、チーム全員が意見を気軽に出し合える雰囲気だったことが良かったです。最初のアイデア出しの時から色々な案が出ていて、その中から効果的な意見を話し合って選べたので、話しやすい空気感は本当に大事だったと思います。
井出さん:
二手に分かれてそれぞれで実行した際には、役割ごとの目標はクリアしつつも、最終的な課題(障害物を避けながらパレットにたどり着く)は達成できていませんでした。ですが、二つのコードを組み合わせると非常にうまくいきました。役割分担をする前の課題設定や、問題点の抽出が上手にできていたからだと思います。
他には、全員でシミュレーションの動画を見て、随時出る報酬の値を確認しつつ問題点を正しく洗い出せたのも良かったです。
二手に分かれて作業した際の、ペア相手の印象をお聞かせください。
齋藤さん:
チームの皆さん全員明るい方だったのですが、畔柳さんは特に挨拶や声かけ・リアクションをたくさんしてくださっていました。明るい雰囲気を作ってくださっていたなと思います。
畔柳さん:
斉藤さんは、頼りになる方でした。私がまだ自分でも整理できていない状態で言ったアイデアを、斉藤さんが要点を掴んで他の皆さんにも分かる言葉で伝えてくださったり、方針を示してくださったりしたのがとても助かりました。コードを書くのも、修正すべき箇所を見つけるのも素早くて、本当に感謝しています。
山口さん:
井出さんも鋭い意見・真を突くようなアイデア出してくださったのがとても印象的でした。そういうアイデアを出してくださった後、いざコード書く時も、丁寧にコードを確認されていて。自分が(コードを)書いて足りない部分も、的確にアドバイスしてくださいました。お互いに補い合えて、非常に良いペアだったのではないかと感じます。
井出さん:
山口さんは、私の意見を否定せず、一方で間違っていることは優しくきちんと教えてくれました。発想も柔軟で、とても凄かったです。何度も助けてもらいました。
チーム全体で言えば、他の皆さんが話していた通り、ワーク開始直後から暖かい雰囲気があり、取り組みやすい・楽しいと感じていました。
主催企業である豊田自動織機やメンターさんについての率直な印象をお聞かせください。
齋藤さん:
インターン中、社員の方同士で楽しそうに会話されているのを見て、とても良い雰囲気の会社だと感じました。
メンターさんもとても明るくて話しかけやすい方でした。メンタリングの内容も直接的ではない、ちょうど良いラインのアドバイスをしてくださり、大変助かりました。特に、効率良く開発を進める方法について教えていただいたことが印象に残っています。
畔柳さん:
過去に豊田自動織機の別のイベントに参加したことがあり、暖かい職場なのだろうと感じていました。このハッカソンで前回よりも密に関わらせていただいて、そのイメージが一層強くなりました。また、社員の方同士の信頼関係の深さや風通しの良さも印象に残っています。
メンターさんは、答えをただ伝えるのではなく、行動の指針のような形でアドバイスしてくださいました。そのお陰でスムーズに開発ができたと感じています。
山口さん:
私も豊田自動織機のワークショップや会社見学会などに参加したことがあり、暖かい雰囲気を感じていました。今回のハッカソンでもメンターさんが非常に親身に相談に乗ってくださったり、気軽に話しかけたりしてくださいました。そうしてメンターさんが関わってくださったことも、チームが良い雰囲気でワークできた要因のひとつだったと思います。良い意味で、参加前と参加後の印象は変わらなかったです。
井出さん:
同じく過去にワークショップへ参加しています。その時から暖かく働きやすい環境という印象を持っていました。今回のハッカソンでもメンターさんととても楽しく会話することができたので、さらに良いイメージになりました。
今後どのようなことにチャレンジしていきたいですか。
齋藤さん:
今回のテーマである強化学習と普段の研究に直接の関わりはありませんが、機械学習へのモチベーションが上がりました。
また、意見交換しやすい雰囲気づくりは非常に大事だと実感しました。大学の先輩との共同研究でも学年や立場にとらわれずどんどん意見交換しようと思います。
ハッカソンを通じてチームで協力することの良さを感じられたので、これからの研究の際も意識していきたいです。
畔柳さん:
大学院修了までに、今研究している画像認識・物体認識の分野なら誰にも負けないような知識や技術を身につけたいです。
そして今回のハッカソンで、個人の技術力以上にどれだけ人と協力できる体制を作るかが大切だと感じました。技術力だけではなく、色々な人たちと関わることで人間力も磨いていきたいと思います。
山口さん:
エンジニアとして様々な知識や技術を身につけることは非常に大事だと思っているので、今回参加できてよかったです。
学びになったのは、積極的にアイデアを出すことの大切さです。話す前から消極的にならずに、一旦実現可能性を忘れて自分の意見を出してみると、その中に良いアイデアがあるかもしれないと実感しました。
今後の研究でも、研究室の先輩や同期たちと相談する際に活かしたいです。
井出さん:
今回は特に強化学習がテーマでしたが、機械学習全般への熱意が深まりました。研究でも少しデータを扱うことがあり、今後そこに機械学習や他の新しい技術を導入できればと考えています。
また、作業の効率化の方法やチーム開発の進め方も学べたので、今後の研究に役立てていきたいです。