トヨタのコネクティッドカーや未来都市をソフトウェアエンジニアがアジャイル、オープンソースを活用して作っている話を聞く


電気自動車(EV)、MaaS(Mobility as a Service)、自動運転、スマートシティといったキーワードを報道で目にしない日はありません。今、クルマは「CASE」という大きな変革期にいます。「CASE」の中心には「人」がいて、人が様々なモノやコトと「つながる」ことで便利で豊かな社会が実現するといわれています。

トヨタ自動車のコネクティッドカンパニーは、このような「つながる」ための技術を研究開発し、「人」が安全にクルマを扱うために、いかにシンプルな形で提供するか――というテーマに日々取り組んでいます。

2020年10月29日、オンラインイベント「トヨタの車はソフトウェアエンジニアが作る ~Why Simple is So Complex~」が開かれました。このイベントに同社のBR-OTA推進室 室長の村田 賢一氏が登壇され、トヨタのソフトウェア技術の研究・開発に関する取り組みについてご紹介くださいました。今回はこのイベントの概要をお伝えします。

プロフィール

村田 賢一 (むらた けんいち)
トヨタ自動車株式会社 コネクティッドカンパニー
BR-OTA推進室 室長 / ITS・コネクティッド統括部 主査(コネクティッド戦略担当) / コネクティッド先行開発部 主査(コネクティッド先端技術担当)
2008年にトヨタ自動車へ中途入社。 前職は大手家電メーカーのソフトウェア開発を担当。BSデジタルテレビの初号機に搭載するソフトウェアや世界的なヒットを記録したゲーム機の開発にも携わる。トヨタに転職した理由は、知人から「クルマの電子化・情報化という大きなチャンスに関わってみないか」と誘われて。入社後はコネクティッド技術の先駆者として様々な活動を展開。現在の愛車はトヨタ・ハリアー。

今、なぜ自動車業界でソフトウェアエンジニアが注目されているのか?

『Why Simple is So Complex』に込めた想い

イベント「トヨタのクルマはソフトウェアエンジニアが作る ~Why Simple is So Complex~」は登壇者・村田 賢一氏の自己紹介からスタートしました。大手家電メーカーでソフトウェアを開発していた村田氏が、トヨタへ中途入社したのは、クルマの情報化・ソフトウェア化の波を受け、基幹産業である自動車産業で日本に貢献したいとの想いがあったからだそうです。

サブタイトルの「Why Simple is So Complex」は、トヨタがやりたいことや、ユーザーが求めることはシンプルでも、それを実現するためには根気強く複雑な取り組みが必要という意味。その視点から、トヨタというクルマを作るハード会社で、どんなソフトウェア技術が使われ、エンジニアがどう活躍をしているかを紹介するのが今回のテーマです。

自動車産業が置かれている環境「CASE」

「今、自動車業界はどんな環境に置かれていているのか?」「なぜ、自動車業界でソフトウェアエンジニアが注目されているのか?」という疑問を解く上で重要なキーワードが「CASE」だと村田氏は説明します。

「CASE」とは、「Connected(コネクティッド化)」「Autonomous(自動運転化)」「Shared(シェア)」「Electric(電動化)」の頭文字をつなげた造語。これらは、トヨタなど自動車メーカーが「移動」に関わるあらゆるサービスを提供する未来的な「モビリティカンパニー」へと変革していくために取り組まねばならない課題を示しています。このすべてにソフトウェア領域が深く関わっています。

「すべての人に移動の自由と楽しさを」というトヨタが描く未来のモビリティを支えるのはソフトウェアであり、「CASE」のなかでも「C(Connected)」の部分が重要だと村田氏はいいます。

トヨタが目指す未来の世界とは

トヨタは「すべての人に幸せを」もたらすヒューマンコネクティッドな社会の実現を目指しています。目指しているのは、モビリティを通じて「事故ゼロ」はもちろん、便利で安心・安全な社会を提供すること。つまり、リアルな社会の能力を広げていくことにあります。

2020年1月にアメリカ・ラスベガスで行われたCESでトヨタは「Woven City(ウーブンシティ)」というスマートシティ実証実験の実施を発表。2018年には、MaaS向けの多目的EV自動運転車「e-Palette」が登場しています。このような取り組みができるのは、長年、クルマをはじめとするモノづくりに取り組んできたトヨタだからこそだと村田氏は指摘しました。

リアルとバーチャルとをつないで、リアルな社会をよくしていくためにソフトウェアの重要性は増しています。なぜなら、実際にモノを動かすためには、ソフトウェアがその動作を制御し、クラウドから情報を得る時代になっているからです。これからの時代は、ソフトウェアを用いて、より速く、よりアダプティブにモノ(ハードウェア)とコト(ソフトウェア)の進化に寄り添うことが重要になっていると示されました。

クルマの価値を上げるソフトウェア開発への取り組みとは?

「UX/UI」「マルチメディア」「エージェント」の重要性について

コネクティッドカーとは、無線通信機(DCM:Data Communication Module)が搭載されたクルマのこと。通信事業者等のネットワークを通じてクラウドセンター、コールセンター、家、都市(スマートシティ)などリアルな社会につながります。

コネクティッドカーなどクルマの価値を引き出すためにはソフトウェアの力が必須です。例えば、コクピット周辺に関するUX/UI、運転をサポートする言語エージェントや、ナビなどのマルチメディア、それらを動かすOSといったソフトウェアがあると村田氏はいいます。

現在、車には必ず運転手がいます。そのため、運転手のユーザーエクスペリエンス(UX)とコクピット周辺のUIの向上させるのは安全第一という観点から見ると、大変重要です。将来、自動運転が実現した際にはコクピット周辺のUX/UIも大きく変化することが想定されており、その変化を見据えながらアジャイルでUX/UI開発を進めているそうです。

コクピット周辺のUX/UIは、デザインの設計とソフトウェアを実装することの2面から、アジャイルで繰り返し評価をしながら改善をして最終的な形を作り、リリース後も、ユーザーの使い方を見ながら、より良いものに更新していく取り組みがなされているといいます。

ここで、インタラクティブなUIシステムの例として、コンセプトカー「LQ」に搭載されたAIエージェント「YUI」が示されました。このように、会話に答えるだけでなく、モノを動かしてフィードバックしたり、人や状況に応じた適切なアクションをとったりする総合的なUX/UIの開発が進められているそうです。

車載器のミドルウェア・OSをオープンソースで開発

カーナビなど、車載器にはSoC(System-on-a-chip)を搭載し、パソコンなみの処理能力を持ったハードウェアが登場しています。当然ながら、これらには、PCのOSに匹敵する規模のソフトウェアが搭載されています。3,000万行を超えるWindows等OSクラスのソフトウェアもあるそうです。

これだけ巨大化すると、自動車会社1社で車載器のOSやミドルウェア開発をすることは難しい状況であるといいます。
OSやミドルウェアはクラウドやスマホとの連携の核になりますが、もはや企業間で差別化する部分ではなく、非競争領域になっていると村田氏はいいます。現在は、その上で動作するアプリケーションやデータ分析といった要素での差別化が求められる時代になっているというわけです。

そこで、2012年にはトヨタが中心となり、Linuxをベースにコネクティッドカーなどクルマに活用するオープンプラットフォームを開発する「Automotive Grade Linux(AGL)」が設立されました。現在、AGLは、スズキ、マツダ、ホンダ、スバル等、国内外の自動車メーカー11社を含む140社超で構成されており、「Linux Foundation Projects」の傘下で、オープンソースソフトウェア(OSS)の活動をしていると村田氏は話してくださいました。

データから新しい価値を生み出すソフトウェア作り

機能の進化にあわせて、データ転送量は飛躍的に増加

コネクティッドカーが増え、機能が進化すると、「掛け算」でデータの転送量が大幅に増加していきます。予想されるデータ量は月あたり1エクサバイト(EB)という大変なものになり(1024TB = 1PB、1024PB = 1EB)、今後は、それに対応したクラウド・データ開発基盤、データハンドリングが重要になっていくと村田氏は話します。「膨大なデータを適切なタイミングで、適切なところで、適切に処理し続けること」が現在の課題となっているといいます。

このジャンルは、非常に進化・変化が早いため、オープンソースを活用してソフトウェアのメンテナンスを進めているそうです。トヨタはアジャイル開発を積極的に取り入れ、サーバーレス化を進めて負荷を下げるといった環境づくりにも取り組んでいます。クルマの場合、使われるのがほとんど昼間のため、必要なときだけサーバーが起動する仕組みを取り入れることで無駄を省くことができ、運用コストの50%減を達成しています。

この結果を受け、これまで運用・管理をしていた人材をソフトウェア開発に振り替えることで開発力を強化。1ヶ月あたりのデプロイ数624個を達成したこともあるそうです。開発環境においても、フラットなチームづくりを推進。プロジェクトオーナーを4年目の社員が担うなど、柔軟な体制で開発を進めているそうです。この社員の活躍に興味のある方は「トヨタ 浦山」でぜひ検索してみてほしい、とのことでした。

【課題】CloudNativeな基盤が物理層でどう動くかの理解

大量のデータを扱うようになると、過去にクリアしたと考えていた問題の再発など、思わぬトラブルが発生することがあると村田氏は語ります。このようなトラブルを未然に防ぎ、あるいは発生しても対応できるよう、新しい技術システムの世界的な動向を知り、ソフトウェア内部を知り、学ぶためにトヨタは「CLOUD NATIVE COMPUTING FOUNDATION」「SODA Foundation」といったコンソーシアムに積極的に参加しているといいます。

今後は、CloudNativeな開発を進め、新しい価値を最小限の労力で、頻繁かつ予想通りに提供することが大切であると村田氏は強調されました。

トヨタ生産方式(TPS)とアジャイル開発

村田氏はここで余談と前置きされて、「アジャイル」「CloudNative」「DevOps」といった最新のソフトウェア開発手法は、その源流をさかのぼるとトヨタ生産方式(TPS:Toyota Production System)に大いに通ずるものがあると話されました。

そのため、トヨタではTPSを理解した上でソフトウェア開発について学ぶと自然に「アジャイル」や「DevOps」も身に付くと考えられており、「ソフトウェア開発のTPS化」と捉えられているということでした。

コネクティッドシステムを支えていくソフトウェア・技術

5G通信環境は不可欠

先述したように、コネクティッドカーの普及が進むと、扱うデータ量が爆発的に増加します。これをどう処理し、捌いていくかが今後の大きな課題になります。これに対応するための代表的な技術は「通信」「エッジコンピューティング」と「OTA-SU(Over The Air – Software Update)」だと村田氏は話します。

通信では、5Gの通信網整備がポイントになります。高速、大容量、低遅延、そして同時に数多くの端末が接続可能という5Gの特長を活かし、有効活用することが大切だといいます。しかし、データ量が大幅に増加するコネクティッドカーでは、データのすべてを5Gネットワーク経由で1ヶ所に取得するのは難しい面があります。そのため、フィルターをかけるといった対策が必要になります。

データ量を減らすためのエッジコンピューティング

エッジコンピューティングでは、コネクティッドカーのデータを1ヶ所に集約するのではなく、エッジクラウドに集約することで必要なデータだけをクラウドに集め、データ量を減らします。

例えば、東京・渋谷駅を走っているクルマとその周辺を走っているクルマのデータ比較は必要でも、同じ東京であっても日本橋を走っているクルマとはデータを比較する必要はないので、近い地点のデータを比較した結果だけを集約し、データ量を減らすのがエッジコンピューティングの考え方だと村田氏は説明してくださいました。

この分野についても、トヨタは、2018年にAECC(Automotive Edge Computing Consortium)を設立して、参画する様々な企業と共同研究・開発を続けているといいます。

自動車会社がクラウドに積極的に取り組む理由について、村田氏は、大量のデータを捌くことが、ヒューマンコネクティッドな社会や安心・安全・快適なクルマを使ったユースケースの実現につながるからだと話しました。

さらにインタラクティブな分散協調システム「End-to-End コンピューティング」の活用も視野にあるといいます。クルマとクラウド間でデータ量を調整・削減しながら必要なものを使っていく手法は、トヨタ生産方式(TPS)の考え方の1つ「ジャスト・イン・タイム」に似ていると村田氏は指摘されています。

東京・お台場で、NTTグループと5Gと実車を使い検証

トヨタは、クルマの通信とデータ量に関する検証をNTTグループ各社と共同で進めています。東京・お台場では、実験用の5Gのネットワークを準備して、5Gネットワークとの相性を含めて検証しています。トヨタには「現地・現物」の考え方があり、検証をしないと納得できないカルチャーがあるため、このように実証を続けているのだと村田氏はいいます。

検証では、走行データ等をクラウドに収集してコネクティッドカー・自動運転車に必要なユースケースを検証するフィールドテスト、500万台規模の車両を想定した基盤負荷検証等が行われています。

ユースケースとして、車載カメラが撮影する動画データを活用した、リアルタイムの地図生成や障害物検知が実験されています。障害物検知が意外と難しいことを、村田氏は「焼き芋屋問題」を例に説明してくださいました。これは、目の前にクルマの列が渋滞か、店に入る順番待ちかを判断したり、ゆっくり走るクルマが障害物なのか、焼き芋屋、竿竹屋なのかを判定したりするのが難しいと問題のことで、AIの活用や5G等の通信環境の整備で解決できると期待されています。

また、こういった技術を活用すると「危険運転エリア」の通知の精度向上や災害時の活用ができます。実際の活用例として示されたのが、トヨタが各社と連携して作ったのが「通れた道マップ」です。

これは、自然災害の際に通行の実績がある道を表示するマップで、クルマが1つの道を3台以上通過したら、そこを「通れる道」と判定して情報公開するものです。北海道札幌市では、凍結路の見える化にも取り組んでおり、今後、より精度を上げる試みがされていきます。

OTA-SU(Over the AIR Software Update)の難しさ

OTA-SUとは、通信機等を通じて、無線通信でクルマのECU(engine control unit)ソフトウェアを継続的に更新する機能です。現代のパソコンやスマートフォンでは、もはや「当たり前」ともいる機能ですが、これをクルマでやるのがOTA-SUです。既に一部の市販車にも搭載されており、ナビのOSやミドルウェアのアップデートを無線で行うことができます。

OTA-SUは、パソコンやスマートフォンのように簡単ではないと村田氏は指摘します。なぜなら、バグ1つで大きな問題につながるからです。ソフトウェアの不具合が故障・事故を引き起こし、悪意を持った外部からの侵入を許してしまうと人の命にも関わるだけに大変危険です。そのため、機能安全規格(ISO26262)等への対応が必須であるといいます。

「自動車のソフトウェア」は、絶対に失敗しない、失敗してもちゃんとリカバーできる、あるいは失敗を検知できるといった安全に関わる部分が非常に難しいと村田氏は話します。しかし、そこがソフトエンジニアとしての腕の見せどころであり、面白いところ、やりがいが感じられるところでもあるようです。

「Connected」はソフトウェアエンジニアにとって社会に貢献できる「大きなチャンス」であると村田氏はまとめてくださいました。

質疑応答

【質問】トヨタがソフトウェアエンジニアに求めるスキルセット・マインドは?

トークセッション終了後、村田氏と参加者との質疑応答が行われました。そのなかで、トヨタがエンジニアに求めるスキルセット・マインドに関する質問がありました。

村田氏は、分析しながらソフトウェアで「コト作り」を進めて社会に貢献し、未来を創る意志を持っていることが最低条件であるといいます。その上でソフトフェアを実際に触って理解を深め、さらに興味を持って前進していくことが求められていると答えてくださいました。

【質問】トヨタでコーディングを行っていますか?

トヨタでコーディングをしているのかという質問に対し、村田氏は、部署によって様々だが、1からコーディングを行っている部署もあるといいます。

実際に、村田氏自身がバグチェックに入ることもあるそうです。最新のソフトウェアに触れて、自分自身のスキルセットを高め、本質を理解しておく必要があると考えていることも、その理由のようです。

【質問】セキュリティの脆弱性への取り組みはどうなっていますか?

セキュリティについて、トヨタは真剣に向かい合っており、2010年から自動車会社としてはおそらく唯一TCG(Trusted Computing Group)に参画して、セキュリティ要件の定義、ISO化に取り組んでいると村田氏は答えてくださいました。

【質問】コネクティッド領域におけるトヨタの強みと未来の課題とは?

トヨタは、いち早くIT、ICTに通信を含めて取り組んでおり、ITS(インテリジェント・トランスポーテーション・システム)の開発もはじめています。今回のイベントには登場しませんでしたが、情報化、データ分析も他社に先駆けて開発をしていました。

一例として、カーナビの地図のアップデートをオンラインで実行するマップオンデマンドがあると村田氏はいいます。これは氏がトヨタに入社する前の2007年から開始されています。ただ、早くても社会に認識されていなかった面があると村田氏は話します。

これまで、トヨタは対外的なアピールが得意ではなかったという振り返りから、コネクティッドカー作りや、ヒューマンコネクティッドな社会を実現していくことに関しては、今回のイベントのような活動を通じて、仲間作りを進め、他社とも協業していきたいと語ってくださいました。

ソフトウェア開発のために「トヨタへ行く」選択

村田氏は、ソフトウェア、ハードウェアは対立軸のようにいわれることが多いが、ソフトウェアは柔らかいものではなく、しっかり作りこんでいくもので、世の中の需要を素早く掴んでいけるのが魅力だと考えているといいます。

これを機に、読者の皆さんもソフトウェア、リアルを融合するソフトウェアに関して興味を持っていただいて、さらにそれを広げ、日本の産業の発展につないでほしいと希望されていました。もし、そのためにトヨタに来たいと思っていただけたらうれしいと村田氏は最後にまとめてくださいました。

編集後記

トヨタが目指すヒューマンコネクティッドな社会の実現。コネクティッドカーはその社会を「移動」で支える重要なツールです。未来の予測は難しいですが、いずれ、コネクティッドカーが主流となれば、クルマの情報化、ソフトウェア化の流れは今よりさらに加速します。そのときには、日本の基幹産業である自動車産業も大きく様変わりしているはずです。

トヨタはその流れを先取りして、ソフトウェア技術を活用してオープンな道を切り拓いていこうとしていることが今回のイベントで分かりました。私自身、勉強不足で知らなかったことが多かったのですが、トヨタは想像の遙か先を行っていることも分かりました。そして、ソフトウェアエンジニアにとって魅力的な「場」であることを知りました。興味を持たれた方は、ぜひWEBサイトでトヨタのソフトウェアエンジニア情報を確認されてはいかがでしょうか。

文:神田 富士晴


「Qiita×TOYOTA」コラボレーションサイト公開中!

「未来のモビリティ社会を実現」をテーマとしたトヨタ自動車とのコラボレーションサイト公開中!
トヨタ自動車の最新技術情報や取り組み事例などを紹介しています
コラボレーションサイトへ

  1. ノード、ストレージ、ネットワーク…コンポーネントごとにチェック。自社に最適なAzure Stack HCIのサイジングと導入・設定のポイント
  2. トヨタのUX/UIソフトウェア技術が、クルマの「運転席」をヒューマンコネクティッド社会に進むコクピットへと変える