ドライブ・モード向けエッジAIの導入
TinyMLが走行状態検知をどう変えるか
TinyMLが走行状態検知をどう変えるか
最新の調査によると、究極のドライブ体験を追求する自動車メーカーにとっては、「ドライブ・モード」が新しい宝の山となる可能性があります。
2021年に発表された論文[1]では、特定のドライブ・モードを使った場合には、高速道路を走行する電気自動車(EV)の消費電力が15%増加して30%になる可能性が示されています。
2023年のJ.D. Powerの調査によると、消費者はまだ走行距離の面で不安を感じているため、最適ケースでバッテリ寿命をおよそ3分の1向上させることができれば、顧客満足度が大幅に高まる可能性があります。ドライブ・モードは、濡れた道路、凍結道路、雪道といった危険な状況にも対応し、安全性の高い運転を実現します。問題は、モード切り替えの適切な設定を運転者自身が手動で選択する必要があることです。
[1] Claire Sugihara、Katrina Sutton、Adam Davis、Vaishnavi Karanam、Gil Tal.From sport to eco: A case study of driver inputs on electric vehicle efficiency.Transportation Research Part F: Traffic Psychology and Behaviour.Volume 82.2021. Pages 412-428. doi.org/10.1016/j.trf.2021.09.007
簡単に言うと、ドライブ・モードとは、特定のドライブ体験を創出または強調するさまざまなドライブトレイン構成のことを指します。例えば、ステアリング・コラムの反応、サスペンションの柔軟性、または回生制動の活動性を変更することで、システムは特定の目的に焦点を絞った大きく異なるドライブ体験を生み出します。
従来のエコ・モードは、応答性のレベルを抑えギア比を変更することで省エネルギーを優先させますが、コンフォート・モードは、サスペンションの調整によってバンプを多く吸収します。逆にスポーツ・モードは、強力なスロットル、重いステアリング、過酷なサスペンションを確保することで、走行というよりはレースに近い体験を運転者に提供します。
自動車メーカーはモード間の移行を自動化していません。各モード間には際立った違いがあり、自動的に移行すると運転者を動揺させる可能性があるからです。しかし、現代の高速道路を一度に長時間走行するケースでもない限り、走行状態が均一であることはほとんどありません。
よくあるシナリオとして、ユーザは低速トラフィックでエコ・モードを体験した後、大きな工事現場のでこぼこ道に遭遇するとコンフォート・モードが最適になるケースが考えられます。停止しがちな状態から抜け出すために急加速が必要な場合には、スポーツ・モードのショート・バーストが大いに役立ち、その後、またエコ・モードに戻るケースもあるでしょう。しかも、以上のシナリオでは天候の急変などの要素は想定されていません。スノー・モードではトランスミッションの調整を通じ、スロットルの反応が抑えられ、パワーとトルクも下げられます。その目的は、悪天候や車の破損から運転者を守り、車を立ち往生させないことです。応答速度を下げ、加速を強制的に安定化させることで、運転者が突然アクセルを踏み込んでも、雪の中に車輪が埋まってしまうリスクをシステムが制限します。
しかし、道路に集中している運転者が、ドライブ・モードの切り替えまで考える必要性はあるでしょうか。天候が急変した場合には、ユーザが周囲の状況に集中できるよう車が手助けしなければならず、逆にモードや設定で気が散るようなことがあってはなりません。
AI vs 人間
この問題の解決策は、機械学習にあるかもしれません。無数のセンサのおかげで、車はどんな人間よりも正確に道路、天候、その他の条件を検出できるようになりました。実際、滑りやすい路面状態や危険な状況に対する自動車の管理能力は非常に正確かつ機敏になっています。 トラクション・コントロールやアンチロック・ブレーキング・システムなどの機能は、今まで数十年間にわたって必須装備として使われてきました。
システムのスマート化も進み、トラクション・コントロールは通常状態でも運転者を支援し、コーナーでのアンダーステアやオーバーステアを防げるようになっています。つまり、機械学習を利用して道路の状態を検出し、最適なモードを自動選択することは、車を形成してきた長年の技術革新の流れからも自然な進化だと言えます。
しかし、自動のドライブ・モード・システムと道路検出メカニズムを構築するのは難しいと見られており、多くのエンジニアはどこから着手すべきか手探りの状況です。ここでは、プロジェクトを正しい方向に進めるための簡単な3つのステップを示します。これによって製品を市場に投入するまでの時間も短縮できます。
機械学習アプリケーションの作成は困難なタスクであるように思われます。データの収集、ニューラル・ネットワークの学習、マイクロコントローラでのアルゴリズムの実装について考え出すと、最初の概念実証を行う前に気持ちがくじけてしまうチーム・メンバーもいるかもしれません。
中小企業ではデータ・サイエンティストが組織に存在せず、ニューラル・ネットワークの専門家もいない場合があります。そこで弊社は、このプロセスの初期段階の問題解決を支援するため、AEKD-AICAR1評価キットをリリースしました。
このバンドルには、AEK-CON-SENSOR1コネクタ・ボードとAIS2DW12 3軸加速度センサが含まれています。マザーボードそのものに4MBのFlashメモリ搭載のSPC58EC Chorusマイクロコントローラが収納されており、学習済みのニューラル・ネットワークも装備されています。簡単に言えば、AEKD-AICAR1センサ・ノード・キットには、開発者が機械学習アプリケーションを開始する上で必要なすべてのものが備わっているのです。
さらに、車の状態を表すシンプルなUIのディスプレイも提供しており、チームは概念実証のデモを非常に容易に行うことができます。システム全体に12Vのバッテリ(標準)または8個のAAバッテリから給電する設定も用意されているため、全体的なモビリティも高められます。
デフォルトで、学習済みのニューラル・ネットワークは、通常の路面、悪路、スリップ、駐車という4つの状態を認識できます。さらに、これらの状態を追加の状況と組み合わせて、通常状態の路面でスリップ、悪路でスリップ、エンジンをかけたまま駐車、エンジンを止めて駐車などの状態を認識することもできます。スリップ
もちろん、このアプリケーションはデモ目的専用のため、小さいトレーニング・データ・セットが使用されています。しかし、最初に非常に限られたトレーニング・データしか使用できなくても、一部の条件を追加するだけで、94%という成功率を実現しています。つまり、チームはもっと大規模な情報や複雑なアルゴリズムを使って、さらに有用な機能を実現できる可能性をも思い描けるのです。
モデルのテストを開始する際、開発者はAutoDevKit StudioおよびSPC5-STUDIO-AIプラグインを入手できます。これによって、最も一般的なディープ・ラーニング・フレームワーク(KerasやTensorFlow Liteなど)をインポートできます。STプラグインは、ニューラル・ネットワークを検証し、マイクロコントローラ上でパフォーマンスをシミュレーションすることもできます。これにより開発者は、必要なメモリ・フットプリントや推論時間を把握することができます。
このステップは、チームの専門知識レベルに関係なく重要ですが、経験の少ないエンジニアにとっては特に役立つでしょう。エッジで機械学習を操作する想定の場合、RAMや計算スループットの要件を過大に見積もりがちです。弊社のツールを使用すれば、アプリケーションのハードウェア・ニーズの正確な全体像を迅速に把握できるようになります。
次のステップでは、AEKD-AICAR1を運転者側の床の上に、車両の前方に向けて配置し、アルゴリズムをテストしてデータをさらにキャプチャします。実際、ここでは現実世界の性能を再現し、さらに多くの情報を収集できます。つまり、エンジニアは単によりスマートな走行条件検出を設計するだけでなく、同時にそれを完成品に仕上げていくことができるのです。
キットに接続された加速度センサやその他のセンサからチームが集めるデータが多ければ多いほど、より多くの路面状況を正確に検出できるようになり、真にインテリジェントなドライブ・モード選択への可能性が拓かれます。弊社のユーザ・マニュアルにはPythonスクリプトやGoogle Colabの概要も記載されているので、データ・サイエンスの経験がほとんどない方でも着手できます。
次の資料も参照してください:AEKD-AICAR1- Machine Learning in cars with an ST board to avoid mindless hype and being left behind
これら3つのステップに従うことで、チームは正しい方向へスタートを切れるようになります。開発者はそれでもなお、ソリューションを最適化し、競争力の高い製品を市場に投入する道を見つける必要があります。しかし、STはサポートを提供するだけではありません。専門知識を持つ企業からなる完全なパートナー・プログラムにより、独自の方法でお客様を優位に立たせます。まとめると、問題は、機械学習によってドライブ・モード選択や路面状況検出を自動化できるかどうかではなく、誰がそれを最初に実装するかなのです。