
では、Apex.AIは何を売り物にする会社か。近未来の自動車用のソフトウエア開発に有効なツールを提供する会社である。自動車用のソフトウエアはもはや数千万行ものプログラムを書かなければならない時代に入っている。でもどうやってそれを書くのか?もちろんそれを1社が書けるサイズではない。一般にソフトウエアは、CPUに最も近い基本的なOS(Operating System)、その上にミドルウエア、さらに最もユーザーに近いアプリケーション(通称アプリ)、というレイヤーに分かれている。OSとミドルウエアがしっかり未来を見つめた構造になっていれば、この先も安心してアプリケーションの開発だけに集中できるようになる。アプリケーションだけなら少ない行数のプログラムで済む。
このようなソフトウエア開発の階層構造はスマートフォンとよく似ており、iPhoneのOSやAndroidは、ミドルウエアを含んだ総合的なOSとして機能しており、アプリケーションは含まない。アプリケーションを開発するのはAppleでもSamsungでもない。ユーザーなら誰でも開発できる。こういった構造と同様に、クルマメーカーやそのソフト開発パートナーはアプリだけを開発すればよいのだ。こうなるとソフトウエア定義のクルマ作りの開発スピードはぐんと上がる。Apex.AIのCEO兼共同創業者のJan Becker氏によると、3~8倍も開発スピードが速くなるという。
同社には実際に多数のVC(ベンチャーキャピタル)や企業キャピタルが出資しており、トヨタベンチャーズやHella Venture、Airbus Venturesなどの企業キャピタルや、Daimler TruckやVolvo、Jaguar Land Roverなどの自動車メーカー(OEM)、ContinentalやZFなどのティア1サプライヤーなどが顔を連ねている(図2)。そうそうたるクルマ向けの出資社ばかりだ。それだけみんながソフトウエア定義のクルマ(Software-Defined Vehicle:SD-V)に関心が高いということだ。

では、どのようなミドルウエアか。Apex.AI社が開発したSDKは、ロボット用OSの最新版ROS 2をベースにしたミドルウエアにISO26262 ASIL Dという安全認証を得たツールである。ROSはもともと大学などアカデミック分野でPoC(Proof of Concept)など実証するために用いられてきたが、開発用のROSをベースにアプリケーションソフトを作る場合には試作し検証し製品化するのに開発時間がかかっていた。これに対してROS 2は産業向けに開発されたロボットOSで、実用化しやすい。自動車用のソフトウエアには、ハードウエアと同様、安全認証が求められる。
Apex.AIが開発したROS 2ベースのSDKである「Apex.Grace」は、開発期間を3~8倍以上短縮する。このSDKは開発効率を高めるために使うミドルウエアであり、すべてのソフトウエア部品や機能を含む各種ライブラリやソフトウエア開発ツール、各種トレーニング用ドキュメントなどを揃えている(図3)。

Apex.AIが持つミドルウエアはこれだけではない。高性能なデータを安全でセキュアに転送するためのツールであるApex.Idaも提供する(図4)。このミドルウエアは車内外の通信インターフェイスをほとんどカバーしている。車内ではLINやCANなどの低速インターフェイスからFlexRay,さらにEthernetなどADAS(先進ドライバー支援システム)やインフォテインメント系の高速インターフェイスへと広がってきており、すべてに対応しなくてはならなくなっている。Apex.Idaはクルマ用のインターフェイスやプロトコルを全て集積しており、開発者はインターフェイスやプロトコルを気にすることなく、アプリケーションを開発できる。Apex.Idaは多数のインターフェイスから所望のインターフェイスを一つ自動的に選択機能がある。

Apex.AI社は、ミドルウエアApex.Graceと通信用Apex.AIをバンドルして、Apex OSとして提供することもできる。3月にはInfineonの上位マイクロコントローラである「Aurix TC3x」にApex.AIのSDKを組み込むことで、OEMのソフトウエア開発を加速することができることを発表している。
これからの自動運転や、ECUをいくつかまとめたドメインコントローラ、中央コンピュータ、ゲートウェイなどSD-Vの早期開発に向け、こういったミドルウエアによってアプリの開発が早まる。SD-Vの時代がこれから始まるだろう。