人工知能(AI)を活用したトラック走行シミュレーションの高速化とは?

Kosuke_IKEDA
Kosuke_IKEDA
Altair Employee

本記事はSonu Manjhiによるブログ

How to speed up truck handling simulation using Artificial Intelligence?

を和訳したものです。

 

もし、あなたが何かの最適化に取り組んでいて、各反復にそれなりの時間がかかっているのなら、以下の状態に共感できるものがあるはずです。このような場合、昼寝の時間を見つけるか、ただじっと地面を見つめて宇宙を考えたり、床にあるランダムなものからパターンを作ったりすることになります。

 

image

 

今回の記事は、トラックモデルのハンドリング・操安性を最適化するという案件です。 


 

まず疑問に思うのは、なぜトラックのシミュレーションは乗用車に比べて計算に時間がかかるのか、ということです。その答えは、「リーフスプリング・サスペンション」が入っているからです。では、リーフスプリングとは何か、そしてなぜ解くのに時間がかかるのでしょうか?

 image

画像 - トラックのリーフスプリングサスペンション

 

画像 – ビーム要素を用いたリーフスプリングの離散化モデル

 

以下では、MotionView/MotionSolveのようなマルチボディダイナミックモデリングツールを使用して、このようなサスペンションをモデリングする方法を報告します。

まず、リーフスプリングを各リーフに分割し、さらに各リーフをボディに分割する必要があります。材料挙動をモデル化するために、厚みと幅が異なるビーム要素を使用する必要があります。リーフ間の接触と摩擦をモデル化するために、3次元接触を使用しなければなりません。1組のリーフスプリングを作成するために入力しなければならないパラメータの数がわかりますか? 試験装置に載せて荷重-たわみ曲線を抽出するまでに、1組のリーフスプリングを作成するのに膨大な時間がかかるでしょう。この時間を短縮できるでしょうか? はい。MotionViewのLeaf Spring Builderを用いることで短縮できます。

 

 image

MotionViewのLeaf Spring Builderを用いることで、荷重-たわみ曲線の生成にかかる時間が大幅に短縮できました。さて、次はどうしますか? もちろんハンドリング操作です。1つのハンドリング操作を解くのに15分くらいかかりますし、さらに、15個以のハンドリング操作を解かなければなりません。しかも、この作業を繰り返し行わなければなりません。この時間も短縮できるでしょうか?

そこで、romAIを紹介しましょう。機械学習ベースのツールで、このような問題に対して、膨大な時間を節約しながら、ロバストな解決策を提供することができます。

 

romAIについて

このアプリケーションは、人工知能とシステムモデリング技術を組み合わせて、学習データから再利用可能な連続な動的モデルを極めて時間効率よく生成します。これらのモデルは、システム設計や最適化解析を高速化するためのReduced-Order Modelsとして、あるいは今回の課題のようなリアルタイム制御アプリケーションにおけるDigital Twinsの基盤として利用することが可能です。     

このツールは、主に次のような構成になっています:

- romAIを生成するためのGUI(Altair Compose® と Altair Activate®でご利用いただけます)

 

- 生成されたromAIを使用するためのブロック(Altair Activate®でご利用いただけます)

 

romAIブロックはAltair Activate®で直接使用できるほか、ライセンスされたFMUやDLLとしてエクスポートし、サードパーティソフトで使用することも可能です。

 

リーフスプリング・サスペンションの低次元化モデル(romAIベース)を作成する手順を以下に示します。

 

 

1. MotionView/MotionSolve の試験装置モデルを用いたトレーニングデータセットの生成

このステップでは、学習データセットの生成に進む前に、いくつかの質問に答える必要があります。

リーフスプリング・サスペンションのどのようなデータを取得しようとしているのか?リーフスプリングサスペンションの低次元モデルの入力と出力は何か?そして、どの程度までテストする必要があるのか?


 

リーフの束とシャックルをシステムとして考え、このシステムの入力と出力を確認してみましょう。

入力 - 車軸のX,Y,Z方向の変位量

出力 - 各点のX、Y、Z方向の荷重:

  1. シャシーと回転ジョイントで結合するフロントアイの荷重
  2. シャシーと回転ジョイントで結合するシャックルの荷重
  3. ボトムリーフのアクスル位置の荷重

システムへの入力は合計3つ、システムからの出力は合計9つです。

 

学習データセットを作成するために、MotionViewのリーフスプリング試験装置モデルを使用し、車軸/ジャッキをX、Y、Z方向に動かして数回の試験を行います。その時のフロントアイ、シャックル、車軸/ジャッキにかかる力を測定します。

これらのシナリオで学習した機械学習モデルは、見たことのない結果を出すことができないため、実施するテストには実世界のシナリオ(シングルレーンチェンジ、定常円旋回、直進ブレーキなどのハンドリング操作の場合の車軸の動き)が含まれていることを確認します。

これでcsv形式の学習データセットが手に入ったので、このデータセットを使ってromAIモデルを学習させる必要があります。

 

2. romAIモデルのトレーニング


 

X、Y、Zの各コンポーネントを別々に学習させることが有効であることがわかりました。

 

3. romAI modelの検証

テストは3つのフェーズで行われます。テストと並行して、romAIモデルをハンドリング操作で使用するのに適したものに調整していきます。

 

 

1. リーフスプリングROMの予測値をトレーニングデータセットでテストします(Activateのcsvブロックを使用)。スーパーブロックの結果が出力に近ければ、このリーフスプリングROMのFMUを作成し、MotionViewの中で2回目のテストに使用することができます。

2. このテストは、トレーニングデータセットを作成した時と同じ試験装置で行われますが、ROMの汎化能力を確認するために異なる入力信号を用いています。

車軸に動きを与えて試験を行い、出力される力を比較します。この段階では、リーフスプリングのサスペンションの挙動に合うように、人工的なダンピングを追加して、romAIのモデルを微調整することができます。

3. リーフスプリングROMに減衰力を付加したものをフルトラックモデル内で使用します。

 

まとめ

  1. ビームベースのリーフスプリング・サスペンションと比較して、約30倍の性能向上を実現しました。
  2. 学習用データセットを作成するために必要なテストは3回のみです(学習時間は約20分)。
  3. このプロセスは機械的に実行できるため、自動化することができます。

 

使用製品:Altair ActivateAltair MotionSolveromAIAIによる設計