Amazon Web Services ブログ

AWS でのデジタルツイン: L4 Living Digital Twins で価値を推進

このブログは、Adam Rasheed と David Sauerwein とSeibou Gounten と Pablo Hermoso Moreno によって書かれた Digital Twins on AWS: Driving Value with L4 Living Digital Twins を翻訳したものです。

イントロダクション

お客様と協力する中で、what-if シナリオ分析を通じて実用的な洞察を促進するために望ましいデジタルツインのユースケースについて耳にすることがよくあります。これらのユースケースには通常、運用効率管理、フリート管理、障害予測、保守計画などが含まれます。お客様がこの分野をナビゲートできるように、簡潔な定義と、お客様のアプリケーションと一致する 4 レベルのデジタルツインレベリングインデックスを開発しました。以前のブログで、お客様が目的のビジネス価値を達成するために必要なユースケースとテクノロジを理解するのに役立つ 4 レベルのインデックス (下の図を参照) について説明しました。

このブログでは、L4 Living Digital Twins を使用して、固有の動作が時間とともに進化する物理システムの動作をモデル化する方法を説明します。電気自動車 (EV) のバッテリーの例を続けて、時間の経過に伴うバッテリーの劣化の予測に焦点を当てます。以前のブログで、L1 DescriptiveL2 Informative、および L3 Predictive レベルについて説明しました。このブログでは、L4 Living Digital Twin ソリューションの作成とサポートに必要なデータ、モデル、テクノロジー、AWS サービス、およびビジネスプロセスについて学びます。

L4 Living Digital Twin

L4 Living Digital Twin は、実世界のデータを使用してモデルパラメーターを更新することで、時間の経過とともに変化する物理システムの動作をモデル化することに重点を置いています。実世界の運用データの例には、連続データ (時系列)、測定 (センサー)、または観測 (目視検査データまたはストリーミングビデオ) が含まれます。モデルを更新する機能により、モデルが物理システムと同期されるので、モデルが「生きている」ようになります。これは、L3 Predictive Digital Twin とは対照的です。L3 Predictive Digital Twin では、運用データが静的な事前トレーニング済みモデルへの入力として使用され、応答出力が取得されます。

L4 デジタルツインを作成して運用化するためのワークフローを次の図に示します。最初のステップは、第一原理手法 (「物理学ベース」)、過去の運用データ、またはハイブリッドモデリング手法を使用してモデルを構築することです。2 番目のステップは、モデルパラメーターの感度分析を実行して、更新可能なパラメーターを選択し、選択したサブセットが実際のデータの変動を捉えていることを確認することです。その後、確率的キャリブレーションアルゴリズムを使用してモデルのパラメーターがキャリブレーションされ、モデルを運用環境にデプロイできます。

本番環境では、デプロイされたモデルを使用して測定値を予測し、実際の測定値と比較して誤差項を計算します。誤差が事前設定されたしきい値よりも小さい場合、調整は行われず、モデルを使用して次の測定値が予測されます。誤差がしきい値よりも大きい場合、確率ベイジアンキャリブレーションアルゴリズムを使用して、最新のデータ観測を反映するモデルパラメーターを更新します。この更新機能が、L4 Digital Twin を「living」と称している所以です。

お客様が L4 Digital Twins を構築してデプロイできるように、AWS(Iankoulski, Balasubramaniam, and Rajagopalan) はAWS Samples でオープンソースにて aws-do-pm フレームワークを公開しました。技術的な詳細は、GitHub の readme ファイルと、このブログで活用する EV バッテリー劣化の実装例を示す詳細な 3 部構成のブログで提供されています。要約すると、aws-do-pm フレームワークにより、お客様は分散コンピューティングアーキテクチャ全体に予測モデルを大規模にデプロイできます。このフレームワークにより、ユーザーは、バージョン管理のために完全に監査可能な履歴を維持しながら、実世界のデータを使用して確率論的にモデルパラメーターを更新し、予測の不確実性を計算することもできます。

この例では、aws-do-pm フレームワークを使用して EV バッテリーフリート用の L4 デジタルツインを作成し、それを AWS IoT TwinMaker と統合する方法を示します。これらの L4 デジタルツインは、時間の経過に伴うバッテリーの劣化を考慮して、走行する各ルート内のバッテリー電圧を予測します。各車両は異なるルートをたどり、数か月にわたる充電と放電のサイクルが異なるため、各車両のバッテリーの劣化は異なります。EV バッテリーのデジタルツインには 2 つの属性が必要です。1) EV バッテリー DT は、バッテリーごとに個別化する必要があります。2) EV バッテリーの DT は、バッテリーの寿命にわたって更新して、性能の低下を正確に反映する必要があります。

初期のモデル構築とキャリブレーション

まず、運用データセットが必要です。この例では、aws-do-pm GitHub で Iankoulski、Balasubramaniam、および Rajagopalan によって公開された同じ EV フリート モデルをのサンプルコードを使用します。ドキュメントに従って、それぞれが 100 のルートを運転する 100 台の車両の運用を模倣する 2 つの合成データセットを作成しました。実際には、これらのデータセットは実際に運用されている車両から取得されます。最初の合成データセットは、各車両が移動するルートを模倣しています。各ルートは、各特性の確率分布からサンプリングすることによって事前に割り当てられた、走行距離、走行時間、平均速度、平均荷重 (重量)、転がり摩擦、および空力抵抗によって特徴付けられます。ルートが設定されると、2 番目の合成データセットは、100 のルートを移動する際の 100 台の車両それぞれのバッテリー放電曲線を計算します。各車両には、最初は新しいバッテリーが搭載されていると想定されています。実際のバッテリーの劣化を模倣するために、この例では単純な現象論的劣化モデルを使用して、各車両が 100 のルートを走行する際の電圧放電曲線に乗数として適用しました。劣化モデルは、ルートの所要時間、ルートの距離、および平均負荷の関数であるため、各車両はその運転履歴に応じて異なる劣化を経験します。各車両のバッテリー放電の劣化に関するこの合成時系列データセットは、実際の運用データを模倣する出発点です。下の図は、車両 1 が割り当てられた 100 のルートを数か月にわたって走行したときの完全な電圧と時間の充放電サイクルを示しており、バッテリーが時間の経過とともにどのように劣化するかがわかります。

代表的な運用データが得られたので、最初のステップは、車両がルートに沿って走行する際の電圧を予測するモデルを構築することです。モデルはいくつかの方法で構築できます。モデル方程式の関数形式が基礎となる科学的原理に基づく物理学に着想を得たモデル、モデル方程式の関数形式が曲線適合に基づく純粋に経験的なモデル、ニューラルネットワークなどの厳密にデータ駆動型のモデル、または物理学に着想を得たニューラルネットワークなどのハイブリッドモデルである可能性があります。いずれの場合も、モデル係数またはパラメータが公開され、モデルのキャリブレーションに使用できます。この例では、新しいバッテリーの動作を表すために、100 台の車両それぞれの最初のトリップを使用してニューラルネットワークをトレーニングしました。このモデルの詳細については、aws-do-pm ブログをご覧ください。

2 番目のステップは、感度分析を実行して、キャリブレーションするモデルパラメーターを決定することです。aws-do-pm フレームワークは、多変量入力空間全体で感度を測定し、主効果と双方向の相互作用を特定できるため、感度分析用に Sobol インデックスを実装します。詳細は、aws-do-pm のドキュメント対応するテクニカルブログで説明されています。左側のグラフは主効果プロットの結果を示しており、trip_dist_0、bias_weight_array_2、bias_weight_array_4 がキャリブレーションに含める必要がある重要なパラメーターであることを示しています。右側のグラフは、キャリブレーションに含める追加パラメータを示す双方向相互作用のコードプロットを示しています。

3 番目のステップは、出力電圧に最も大きな影響を与えたパラメーターを使用してバッテリーモデルを調整することです。aws-do-pm のモデル調整では、Unscented Kalman Filter (UKF) メソッドを採用しています。これは、非線形システム動作のパラメーター推定のためのベイジアン手法です。UKF は一般的に、車両の誘導、ナビゲーション、制御、ロボットの動作計画、軌道の最適化に適用されます。これらはすべて、実世界のデータを使用してシステムの制御を更新するユースケースを表しています。このアプリケーションでは、同様の方法で UKF を使用していますが、今回は、実世界のデータを使用して L4 Digital Twins のモデルパラメーターを更新します。aws-do-pm フレームワーク内でキャリブレーションを実行する方法の詳細は、aws-do-pm のドキュメントと、対応するテクニカルブログで説明されています。

本番環境での L4 EVバッテリーデジタルツインのデプロイ

各車両の新しいバッテリーのトレーニングとキャリブレーションを行ったモデルができたので、モデルを本番環境にデプロイします。以下のアーキテクチャ図に示すように、このソリューションは AWS IoT SiteWiseAWS IoT TwinMaker を使用して作成され、L3 Predictive レベル用に開発されたソリューションに基づいています。

走行距離、走行時間、平均速度、平均積載量 (重量)、および追加のパラメーターを含む車両データは、AWS IoT SiteWise を使用して収集および保存されます。過去のメンテナンスデータと今後予定されているメンテナンスアクティビティは、AWS IoT Core で生成され、Amazon Timestream に保存されます。AWS IoT TwinMaker は、組み込みの AWS IoT SiteWise コネクタを介して AWS IoT SiteWise に保存された時系列データにアクセスし、Timestream のカスタムデータコネクタを介してメンテナンスデータにアクセスできます。予測モデリングでは、EV データを Amazon Simple Storage Service (Amazon S3) にエクスポートして CSV 形式のデータセットを生成し、そこから aws-do-pm が取得します。

Aws-do-pm は、Amazon Elastic Kubernetes Service (Amazon EKS) クラスターでサービスを実行し、個々のバッテリーモデルの更新、異なるデータストア間の永続性と同期などのタスクの実行を担当します。Amazon S3 に配置された新しい走行データを定期的にチェックするカスタムタスクを追加しました。このデータは、新しい予測を実行し、必要に応じて個々のバッテリーモデルを更新するために使用されます。その後、予測は S3 バケットにフィードバックされ、次に AWS IoT SiteWise にフィードバックされます。そこから AWS IoT TwinMaker に転送され、Amazon Grafana ダッシュボードに表示されます。

以前に生成された合成データセットに従って、車両がルートを「走行」することで、本番環境での運用をシミュレートしました。次に、新しい EV バッテリーのキャリブレーション済みモデルを、前述の予測-測定-再キャリブレーションのループで使用しました。このように、各車両の EV バッテリーモデルは時間の経過とともに進化し、走行ルートに基づいて異なるモデルパラメータが推定されます。たとえば、次の図は、モデル予測と、多くのルートの 3 つの異なるポイントで測定された電圧との間で計算されたモデルエラーを示しています。各ルートの最後でエラーが計算され (青い点)、エラーがしきい値を超えると、モデルの更新がトリガーされる (赤い点) ことがわかります。更新されていないモデルの予測 (青い線) の誤差はより高くドリフトしますが、更新されたモデルの予測はしきい値付近またはしきい値未満のままです。

上記の図の 1 つのルートの完全な電圧対時間履歴を以下に示します。左の図は、更新されていないモデルの予測 (赤い線) と予測の不確実性バンド (赤い陰影部分) を示しており、実際の観測データ (破線) よりもかなり上にあります。右の図は、更新されたモデルの予測 (青線) と不確実性バンド (青の網掛け部分) が観測データ (破線) と重なっている様子を示しています。

このブログでは、走行ルートによって変わるバッテリー残量をポイントごとに予測するユースケースを説明することで、L4 Living レベルについて説明しました。以前のブログでは、L1 Descriptive、L2 Informative、および L3 Predictive レベルについて説明しました。AWS では、4 つのデジタルツインレベル を横断したデジタルツインジャーニーに乗り出すお客さまに協力できることを楽しみにしており、ウェブサイトにある新しい AWS IoT TwinMaker サービスと、オープンソースの aws-do-pm フレームワークについて詳しく知ることをお勧めします。

まとめ

このブログでは、走行ルートによって変わるバッテリー残量をポイントごとに予測するユースケースを説明することで、L4 Living レベルについて説明しました。以前のブログでは、L1 DescriptiveL2 Informative、および L3 Predictive レベルについて説明しました。AWS では、4 つのデジタルツインレベル を横断したデジタルツインジャーニーに乗り出すお客さまに協力できることを楽しみにしており、ウェブサイトにある新しい AWS IoT TwinMaker サービスと、オープンソースの aws-do-pm フレームワークについて詳しく知ることをお勧めします。

著者について

Adam Rasheed 博士は、AWS の自律コンピューティングの責任者であり、自律システムの HPC-ML ワークフローの新しい市場を開発しています。彼は、航空、エネルギー、石油およびガス、再生可能エネルギー業界でのデジタルツインの開発を含む、産業分野とデジタル分野の両方にまたがる中期ステージの開発で 25 年以上の経験があります。Rasheed 博士はカリフォルニア工科大学で博士号を取得しました。そこでは、実験的な超高速大気熱力学(軌道再突入加熱)を研究しました。MIT Technology Review Magazine によって「世界のトップ 35 イノベーター」の 1 人として認められ、航空学における初期のキャリア貢献に対して業界賞である AIAA ローレンススペリー賞も受賞しました。彼は、産業分析、運用最適化、人工リフト、パルスデトネーション、超音波、衝撃波誘起混合、宇宙医学、およびイノベーションに関連する 32 以上の特許と 125 以上の技術出版物を発行しています。
David Sauerwein 博士は、AWS Professional Services のデータサイエンティストであり、お客様が AWS クラウドで AI/ML ジャーニーに出られるようにしています。デビッドは、予測、デジタルツイン、量子計算に焦点を当てています。彼は量子情報理論の博士号を取得しています。
Seibou Gounteni は、Amazon Web Services(AWS)の IoT のスペシャリストソリューションアーキテクトです。彼は、お客様が AWS プラットフォーム機能の深さと幅を使用してスケーラブルで非常に革新的なソリューションを設計、開発、運用し、測定可能なビジネス成果を提供するのを支援します。Seibou は、デジタルプラットフォーム、スマート製造、エネルギー管理、産業自動化、さまざまな業界の IT/OT システムで 10 年以上の経験を持つ計装エンジニアです。
Pablo Hermoso Moreno は、AWS プロフェッショナルサービスチームのデータサイエンティストです。彼はさまざまな業界のクライアントと協力して、機械学習を使用してデータでストーリーを伝え、より多くの情報に基づいたエンジニアリング上の意思決定をより迅速に行います。Pablo のバックグラウンドは航空宇宙工学であり、モータースポーツ業界で働いていた経験から、物理学とドメインの専門知識を ML で橋渡しすることに関心があります。余暇には、ボートを漕いだり、ギターを弾いたりしています。

このブログは、ソリューションアーキテクトの戸塚智哉が翻訳しました。