(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-12-24
(45)【発行日】2026-01-08
(54)【発明の名称】シミュレーション装置、シミュレーション方法及びプログラム
(51)【国際特許分類】
G06F 30/27 20200101AFI20251225BHJP
G06F 30/10 20200101ALI20251225BHJP
【FI】
G06F30/27
G06F30/10 200
(21)【出願番号】P 2025155894
(22)【出願日】2025-09-19
【審査請求日】2025-09-26
【早期審査対象出願】
(73)【特許権者】
【識別番号】399104844
【氏名又は名称】SCSK株式会社
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】門脇 新伍
(72)【発明者】
【氏名】加茂 司
(72)【発明者】
【氏名】長野 慎
【審査官】岡田 大樹
(56)【参考文献】
【文献】特開2023-76222(JP,A)
【文献】特開2007-310670(JP,A)
【文献】特開2007-188179(JP,A)
【文献】特開2005-327094(JP,A)
【文献】特開平11-213031(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 30/00 - 30/398
(57)【特許請求の範囲】
【請求項1】
シミュレーションによってコンピュータシステムの仕様の検証を行うシミュレーション装置であって、
シミュレーションの対象範囲、目的、及び観点のうちの少なくとも1つを含むシミュレーション条件の入力を受け付けるシミュレーション条件受付部と、
AIエージェントによって、仕様書データから、前記シミュレーション条件に関連する情報を抽出する仕様書情報抽出部と、
抽出した情報に基づいて、シミュレーション用のモデルを生成するモデル生成部と、、を備えるシミュレーション装置。
【請求項2】
前記仕様書データから、前記シミュレーション条件に関連する情報を抽出する前段階として、AIエージェントによる前記仕様書データの記載漏れ及び/又は整合性のチェックを実施する仕様書確認部を備える、請求項1に記載のシミュレーション装置。
【請求項3】
AIエージェントによって生成された成果物と、対応する仕様書データの情報を利用者が比較できるように提示するレビュー支援部を備える、請求項1または2に記載のシミュレーション装置。
【請求項4】
自然言語による仕様書を、複数種類の図面によって仕様を表現する形式の仕様書データに変換する仕様書変換部を備え、
前記仕様書確認部は、
図面の種類に応じた記載漏れ及び/又は整合性のチェックを実施する、請求項2に記載のシミュレーション装置。
【請求項5】
前記仕様書変換部は、
AIエージェントによって、自然言語による仕様書をSysMLの形式に変換する、請求項4に記載のシミュレーション装置。
【請求項6】
前記仕様書情報抽出部は、
前記仕様書データを機能単位に分割し、前記シミュレーション条件に基づいて、機能単位でモデル化が必要か否かを判断する、請求項1または2に記載のシミュレーション装置。
【請求項7】
前記仕様書情報抽出部は、
前記シミュレーション条件に基づいて、前記仕様書データから抽出する情報を特定するための検索キーワードを決定する、請求項1または2に記載のシミュレーション装置。
【請求項8】
前記レビュー支援部は、
前記成果物と前記仕様書データのトレーサビリティを確保するための情報を保持する、請求項3に記載のシミュレーション装置。
【請求項9】
前記レビュー支援部は、
前記トレーサビリティを確保するための情報に基づいて、前記利用者が前記成果物が規格に準拠しているか否かを確認可能なユーザインタフェースを提供する、請求項8に記載のシミュレーション装置。
【請求項10】
生成した前記モデルを用いてシミュレーションによる検証を実施するシミュレーション実行部を備える、請求項1に記載のシミュレーション装置。
【請求項11】
シミュレーションによってコンピュータシステムの仕様の検証を行うコンピュータが、
シミュレーションの対象範囲、目的、及び観点のうちの少なくとも1つを含むシミュレーション条件の入力を受け付けるシミュレーション条件受付工程と、
AIエージェントによって、仕様書データから、前記シミュレーション条件に関連する情報を抽出する仕様書情報抽出工程と、
抽出した情報に基づいて、シミュレーション用のモデルを生成するモデル生成工程と、
生成した前記モデルを用いてシミュレーションによる検証を実施するシミュレーション実行工程と、を含むシミュレーション方法。
【請求項12】
シミュレーションによってコンピュータシステムの仕様の検証を行うコンピュータを、
シミュレーションの対象範囲、目的、及び観点のうちの少なくとも1つを含むシミュレーション条件の入力を受け付けるシミュレーション条件受付部と、
AIエージェントによって、仕様書データから、前記シミュレーション条件に関連する情報を抽出する仕様書情報抽出部と、
抽出した情報に基づいて、シミュレーション用のモデルを生成するモデル生成部と、
生成した前記モデルを用いてシミュレーションによる検証を実施するシミュレーション実行部として、機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、シミュレーション装置、シミュレーション方法及びプログラムに関する。
【背景技術】
【0002】
自動車には、エンジン、ブレーキ、トランスミッション等、様々な機能を制御するための複数のECU(Electronic Control Unit)が搭載されている。製品の出荷前には、各ECU間の仕様不整合などをテストにより確認する必要がある。
【0003】
従来は、例えば特許文献1に記載されているように、実装されたECUを用いて動作確認のテストが実施されていた。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、実装されたECUを用いたテストにより不整合が検出された場合には、手戻りが発生するため、車両の開発全体の進捗への影響が大きかった。
【0006】
そこで、本発明は、ECU間の仕様不整合による手戻りが、開発全体に及ぼす影響を削減することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一態様に係るシミュレーション装置は、シミュレーションによってコンピュータシステムの仕様の検証を行うシミュレーション装置であって、シミュレーションの対象範囲、目的、及び観点のうちの少なくとも1つを含むシミュレーション条件の入力を受け付けるシミュレーション条件受付部と、AIエージェントによって、仕様書データから、前記シミュレーション条件に関連する情報を抽出する仕様書情報抽出部と、抽出した情報に基づいて、シミュレーション用のモデルを生成するモデル生成部と、生成した前記モデルを用いてシミュレーションによる検証を実施するシミュレーション実行部と、を備えるものである。
【0008】
本発明の一態様に係るシミュレーション方法は、シミュレーションによってコンピュータシステムの仕様の検証を行うコンピュータが、シミュレーションの対象範囲、目的、及び観点のうちの少なくとも1つを含むシミュレーション条件の入力を受け付けるシミュレーション条件受付工程と、AIエージェントによって、仕様書データから、前記シミュレーション条件に関連する情報を抽出する仕様書情報抽出工程と、抽出した情報に基づいて、シミュレーション用のモデルを生成するモデル生成工程と、生成した前記モデルを用いてシミュレーションによる検証を実施するシミュレーション実行工程と、を含むものである。
【0009】
本発明の一態様に係るプログラムは、シミュレーションによってコンピュータシステムの仕様の検証を行うコンピュータを、シミュレーションの対象範囲、目的、及び観点のうちの少なくとも1つを含むシミュレーション条件の入力を受け付けるシミュレーション条件受付部と、AIエージェントによって、仕様書データから、前記シミュレーション条件に関連する情報を抽出する仕様書情報抽出部と、抽出した情報に基づいて、シミュレーション用のモデルを生成するモデル生成部と、生成した前記モデルを用いてシミュレーションによる検証を実施するシミュレーション実行部として、機能させるものである。
【発明の効果】
【0010】
本発明によれば、ECU間の仕様不整合による手戻りが、開発全体に及ぼす影響を削減することができる。
【図面の簡単な説明】
【0011】
【
図1】本実施形態に係るシミュレーションシステム1の構成を示す図。
【
図2】本実施形態に係るシミュレーション装置10の構成を示すブロック図。
【
図3】本実施形態に係るユーザ端末20の構成を示すブロック図。
【
図4】本実施形態に係るシミュレーション装置10のプロセッサ11によって実行されるプログラムの機能モジュールを示すブロック図。
【
図5】本実施形態に係るシミュレーションシステム1による、シミュレーションの大まかな流れを示すフローチャート。
【
図6】本実施形態に係るシミュレーションシステム1による、各工程における処理を具体的に示すフローチャート。
【
図7】本実施形態に係るシミュレーションシステム1による、各工程における処理を具体的に示すフローチャート。
【発明を実施するための形態】
【0012】
次に、本発明を実施するための形態について、図面を参照して詳細に説明する。
図1は、本発明の実施の形態によるシミュレーション装置10を含むシミュレーションシステム1の構成を例示する図である。シミュレーションシステム1は、コンピュータシステムの仕様にしたがって動作のシミュレーションを実行し、仕様の不具合を検出するためのシステムである。本実施形態では、例として自動車に搭載される複数のECUの仕様間の不整合を検出する。
【0013】
図1に示すように、シミュレーションシステム1は、シミュレーションを実行するシミュレーション装置10と、利用者がシミュレーション装置10に指示内容等を入力したり、シミュレーション結果を確認したりするためのユーザ端末20を備えている。シミュレーション装置10は、ユーザ端末20とインターネット等の通信ネットワークNを介して接続されている。
【0014】
図2は、シミュレーション装置10の構成を示すブロック図である。シミュレーション装置10は汎用的なコンピュータであってよく、1台のコンピュータで構成されていてもよいし、通信ネットワークN上に分散する複数のコンピュータから構成されていてもよい。シミュレーション装置10は、企業等の管理センターに設置されていてもよいし、クラウド上に構築されていてもよい。また、シミュレーション装置10の機能がユーザ端末20に実装されていてもよい。
【0015】
図2に示すように、シミュレーション装置10は、プロセッサ11、メインメモリ12、入出力インタフェース13、通信インタフェース14、記憶装置15を備えている。記憶装置15は、半導体メモリ(例えば、揮発性メモリや不揮発性メモリ)、またはディスク媒体(例えば、磁気記録媒体や光磁気記録媒体)などのコンピュータ読み取り可能な記録媒体である。記憶装置15には、プロセッサ11に実行させるためのプログラムや、各種データ等が記憶されている。プログラムは、記憶装置15からメインメモリ12に読み込まれ、プロセッサ11により解釈及び実行されることにより、各種機能が実行される。
【0016】
図3は、ユーザ端末20の構成を示すブロック図である。ユーザ端末20は、パーソナルコンピュータ(PC)、ノートPC、タブレット端末、スマートフォンなど、通信ネットワークNを介してシミュレーション装置10とデータの授受が可能なあらゆる端末装置を利用することができる。
【0017】
図3に示すように、ユーザ端末20は、プロセッサ21、キーボードやマウス、各種操作ボタンやタッチパネルなどの入力装置22、液晶ディスプレイなどの表示装置23、通信ネットワークNに接続するための通信インタフェース24、ディスクドライブまたは半導体メモリ(ROM、RAMなど)などの記憶装置25を備えている。記憶装置25には、プロセッサ21が実行する各種プログラムや、各種データが記憶されていてもよい。ユーザ端末20には、シミュレーションシステム1を利用するためのユーザインタフェース等を提供するアプリケーションが実装されていてよい。
【0018】
図4は、シミュレーション装置10のプロセッサ11によって実行されるプログラムの機能モジュールを示すブロック図である。
図4に示すように、シミュレーション装置10のプロセッサ11によって実行される機能モジュールには、仕様書入力受付部101、仕様書変換部102、仕様書確認部103、シミュレーション条件受付部104、仕様書情報抽出部105、モデル生成部106、レビュー支援部107、シミュレーション実行部108、シミュレーション結果出力部109が含まれる。なお、本実施形態におけるシミュレーション装置10の機能がユーザ端末20に実装されていてもよい。
【0019】
次に、シミュレーションシステム1によるシミュレーションの大まかな流れについて
図5のフローチャートを用いて説明する。まず、シミュレーション装置10に検証対象となるECUの仕様書データが入力され、仕様書入力受付部101が入力を受け付ける(ステップST1)。仕様書データは利用者がユーザ端末20を介して仕様書データの保存場所(データベース等)を指定したり、保存場所から取得した仕様書データをアップロードしたりすることによって入力することができる。仕様書データはテキストデータ、表形式データ、画像データ等を含んでいてよい。また、仕様書データは自然言語で記述されたものであってよい。
【0020】
次に、仕様書変換部102において、入力された自然言語による仕様書データを、所定のモデリング言語などの形式に変換する(ステップST2)。本実施形態では、一例としてSysML(登録商標)に変換するが、システムやソフトウェアの仕様を視覚的かつ明確に表現できるものであれば、他の人工言語であってもよい。モデリング言語への変換は、専用の学習済AIによって行うようにしてよい。仕様書変換部102は、仕様書データをSysML形式の要求図、シーケンス図、データフロー図等に変換し、変換結果は構造化されたモデルとして扱うことができる。
【0021】
次に、仕様書確認部103において、SysML形式に変換した仕様書のチェックを行う(ステップST3)。仕様書チェックは、専用の学習済みのAIエージェントによって行うようにしてよい。AIエージェントは、図面の種類毎に、記載漏れ、整合性等をチェックする。また、不足項目があれば、補完内容の候補を提示するようにしてもよい。
【0022】
次に、シミュレーション条件受付部104において、シミュレーションの対象範囲、目的、及び観点のうちの少なくとも1つを含むシミュレーション条件の入力を受け付ける(ステップST4)。シミュレーション条件は、利用者がユーザ端末20を介して入力することができる。具体的には、シミュレーションの目的(例:通信タイミングの検証)、シミュレーションの対象範囲(例:パワートレイン系のECU)、確認観点(例:状態遷移、エラー処理)等について指定する。条件の指定は、提示される選択項目の中から選択するようにしてもよいし、フリーワードで入力できるようにしてもよい。例えば、目的を指定すると、その目的に関連する対象範囲が一覧表示され、対象範囲を選択すると、関連する確認観点が一覧表示されるようにしてもよい。フリーワードで入力した場合には、AIが内容を解釈するようにしてもよい。
【0023】
次に、仕様書情報抽出部105において、学習済みのAIエージェントが、SysMLに変換された仕様書データから、指定されたシミュレーション条件に関連する情報を抽出する(ステップST5)。AIエージェントは、元の自然言語の仕様書の章に対応する単位で解析を行い、対象となる章を抽出するようにしてもよい。また、直接対象とはならなくても、必要に応じて構造上関連する章も抽出してもよい。
【0024】
次に、モデル生成部106において、抽出した情報に基づいて、学習済みのAIエージェントが、シミュレーション用のモデルを生成する(ステップST6)。AIエージェントは、抽出された章をSysMLベースでモデル化する。さらにモデル化された章を集約して、目的に応じた最小構成のバーチャルECU(以下、vECU)を生成する。これにより、モデルの肥大化を防ぎ、モデルの生成とシミュレーションの速度を向上させることができる。
【0025】
次に、レビュー支援部107において、生成したモデルと、対応する仕様書データの情報を利用者が比較できるように提示する(ステップST7)。これは、ISO26262(自動車に搭載するE/Eシステム(電気/電子システム)についての、機能安全規格)に準拠するための支援機能であり、利用者が元の仕様書と生成モデルとの対応関係を確認できるようにする機能である。
【0026】
次に、シミュレーション実行部108において、生成したモデルを用いてシミュレーションによる検証を実施する(ステップST8)。シミュレーションの結果は、ログデータ、グラフやレポートの形式で出力される。
【0027】
最後に、シミュレーション結果出力部109において、シミュレーション結果の出力を行う(ステップST9)。シミュレーション結果をもとに、仕様の修正を実施し、修正後の仕様データを用いて再度ステップST1~ST9を繰り返すようにしてもよい。
【0028】
次に、
図6~7のフローチャートを用いて各工程における処理についてより具体的に説明する。
<ステップST1:仕様書入力>
図6に示すように、仕様書は、例えばWord(登録商標)、Excel(登録商標)、PDF(登録商標)などの形式のファイルで、自然言語によって記述されたデータが入力される。データは複数であってよい。仕様書解析を行うAIエージェントは、解析結果に基づいて、LLMで自然言語によるアウトプットを作成し、チェック結果として利用者に提示する。利用者は、チェック結果に基づいて仕様書修正を行い、修正後の仕様書を再度入力する。仕様書の修正が不要になるまでこの工程を繰り返し、最終的に修正済の仕様書データが次工程に供給される。
【0029】
<ステップST2:SysMLへの変換>
次に、修正済の仕様書をAIエージェントが、SysMLの形式に変換する。具体的には、仕様書の内容に基づいて、要求図などの要求モデル、ブロック定義図などの構造モデル、データフロー図、シーケンス図、トレーサビリティ情報などの振る舞いモデルをそれぞれ生成する。
【0030】
<ステップST3:仕様チェック>
次に、仕様チェックを行うAIエージェントが、ST2で生成した各モデルを分析し、仕様のチェックを行う。チェック結果は自然言語で出力される。仕様に考慮漏れや記載抜けがあった場合には、それらを補完する候補が提示されるようにしてもよい。利用者がモデルの補完を指示すると、対象となるモデルが補完され、補完済の各図が出力される。
【0031】
この段階で仕様の考慮漏れや記載抜けへの対応を実施することは、ECUの開発コストや期間の増加を防止する上で重要である。そもそも開発初期段階では仕様書の記載は不完全であることが多く、不完全な仕様書のままで作業を進めると、以下のような問題が発生することが予想される。
・記載漏れや曖昧表現により、vECUが生成できない。
・vECUによるシミュレーションが行えず、仕様の検証ができない。
・その結果、後工程での手戻りや不具合が発生し、開発コストや期間が増加する。
【0032】
上記のことから、仕様書の品質を事前にチェックし、記載漏れや考慮不足を早い段階で検出し、補完する仕組みの導入が重要となる。一方で、一般に、仕様書のチェックには、以下のような技術的な課題がある。
・自然言語で記述された仕様書は、構造が曖昧で機械的な解析が困難。
・人手によるレビューは時間と工数がかかり、属人性が高い。
・vECU作成の前提として、仕様の網羅性と整合性の確保が必要。
【0033】
上記の技術的な課題を解決するため、本実施形態では、以下の1~4の仕組みにより、仕様書チェックを行う。
1.AIエージェントによる自然言語解析
仕様書をAIエージェントが解析し、記載漏れや考慮不足を自動的に検出する。
【0034】
2.SysMLへの変換による構造化
仕様書を一度SysMLに変換する。SysMLは以下のような図面記法を採用しており、仕様の構造化に適している。構造化することで、より精度の高いチェックが可能となる。
・要求図
・シーケンス図
・データフロー図
・ブロック定義図
【0035】
3.専門のAIエージェントによる図面別のチェック
SysMLの各図について、専用の機械学習を行ったAIエージェントがチェックを実施する。
【0036】
4.役割分担による精度向上
AIエージェントは目的別に分割・設計されており、役割を明確化することで解析精度を向上させている。例えば、要求図のチェックに特化したAIエージェント、インタフェースの整合性チェックに特化したAIエージェントなどが挙げられる。
【0037】
上記の仕組みにより、以下のような効果が期待される。
・vECUを作成する前に、仕様書を自動的に評価し、補完することができる。
・人手によるレビューの工数を削減し、属人性を排除することができる。
・仕様書の構造化により、後続工程(モデル生成・シミュレーション実行)の効率化が可能となる。
・結果として、開発初期段階での不具合発生の予防と作業の手戻りの削減につながる。
【0038】
上記のとおり、AIエージェントによる仕様書(自然言語)の解析と、SysMLへの変換を組み合わせることにより、人手による自然言語ベースでの仕様書チェックよりも高精度で効率的なチェックが可能となる。
【0039】
<ステップST4:シミュレーション条件入力>
次に、利用者がシミュレーション条件(対象範囲・目的・観点等)を入力する。
<ステップST5:対象章の抽出・モデル化>
次に、
図7に示すように、ステップST4で入力されたシミュレーション条件に基づいて、AIエージェントがvECUのモデル生成に必要な構成要素をSysMLに変換された仕様書から抽出する。具体的には、AIエージェントが、入力された条件に基づいて、SysMLの図面種別、検索キーワード、確認観点を決定する。さらに、ステップST3で出力された補完済の各図から、対象範囲と追加必要要素を抽出する。さらに、対象範囲外の仕様を除いた形で、再度SysML形式のモデル化を行う。これにより、抽出された対象範囲で再構成された各図(要求図、ブロック定義図、データフロー図、シーケンス図、トレーサビリティ情報)が出力される。さらに、入力されたシミュレーション条件に基づいて、シミュレーションを行う際のテストシナリオが生成される。
【0040】
<ステップST6:vECU構成の最適化・生成>
次に、ステップST6で再構成されたSysMLのモデルに基づいて、AIエージェントが、シミュレーションの目的に応じて最適化されたvECUを生成する。AIエージェントは、生成したvECUと共に、トレーサビリティ情報を出力する。
【0041】
(シミュレーションの対象範囲に応じたvECUの生成)
ステップST4~6で示すとおり、本実施形態では、シミュレーションの条件を指定した上で、シミュレーションの目的に合わせて最適化されたvECUを生成している。vECUによる仕様検証では、仕様に基づくモデルの詳細度が検証精度とシミュレーションの実行速度に大きく影響する。モデルの詳細度が高いほど検証の精度は高くなるが、代わりに以下のような課題が発生する。
・実行速度の低下:詳細なモデルは処理負荷が高く、シミュレーションに要する時間が長くなる。
・仕様書の情報量の増加:詳細なモデルには多くの設計情報が必要となり、仕様書の補完作業が増加する。
・開発初期段階では詳細な情報が不足しているため、そもそもモデル化が難しい。
【0042】
すなわち、vECUを用いたシミュレーションには、以下のような課題がある。
・シミュレーションの目的に対して、どの程度詳細なモデルが必要かを判断する基準が曖昧。
・モデル化の対象範囲が広すぎると、シミュレーションでの不要な処理が増え、効率が低下する。
【0043】
上記の課題を解決するため、本実施形態では、以下のような仕組みを導入している。
1.シミュレーション条件のインプット(ステップST4)
利用者が、以下の条件を入力できるようにする。
・シミュレーションの対象範囲
・確認したい観点(例:通信タイミング、状態遷移、エラー処理等)
【0044】
2.仕様書の章単位の分割と判定(ステップST5)
仕様書を章単位(機能単位)に分割し、各章に対して以下の事項を判定する。
・入力条件に基づくvECU化の要否
・vECU化に構造上必要な章の追加判定
【0045】
3.AIエージェントによるモデル化と集約
・対象と判定された章をAIエージェントがSysMLベースでモデル化する(ステップST5)。
・生成されたモデルを集約してvECUを生成する(ステップST6)。
これにより、必要最小限の構成で最適な詳細度のvECUを生成することができる。
【0046】
上記の仕組みにより、以下のような効果が期待される。
・シミュレーションの目的に応じて、最適なモデルの詳細度を自動的に決定できる。
・不要な章(機能)のモデル化を回避し、シミュレーション速度と検証精度のバランスを確保できる。
・仕様書の補完作業を最小限に抑え、開発初期段階でも検証を行うことができる。
以上のとおり、シミュレーションの目的に応じた柔軟なモデルの構成が可能となり、実用的なシミュレーションが可能となる。
【0047】
(仕様書の一元管理と目的に応じたvECUの生成)
また、本実施形態によれば、仕様書とvECUの関係を柔軟かつ効率的に管理することができる。vECUを用いたシミュレーションは、目的に応じて必要な機能や公正が異なるが、シミュレーションの目的が多岐にわたる場合には、モデルが肥大化し、以下のような問題が発生する。
・モデルの規模が大きくなることでシミュレーション速度が低下する。
・モデルの構成が複雑化し、保守性や再利用性が低下する。
・モデルに対応して仕様書の分割が必要となり、仕様書の一貫性の維持や可読性の確保が困難になる。すなわち、仕様書を分割すると、情報の重複や整合性の欠如、レビューが困難になる等の問題が発生する。
以上のことから、本実施形態では、仕様書は分割せずに一元管理し、vECUのみを目的に合わせて最適化して生成するようにした。具体的には、以下の仕組みによって、シミュレーション目的に応じた必要最小限のvECUを生成するための構成を自動的に抽出できるようにした。
【0048】
1.シミュレーション目的のインプット(ステップST4)
利用者が、シミュレーションの目的(例:通信タイミングの検証、エラー処理の確認など)を入力する。
【0049】
2.AIエージェントによる解析と抽出(ステップST5)
AIエージェントが、入力された目的に基づいて、以下の事項を決定する。
・SysMLの図面種別(例:要求図、シーケンス図など)
・検索キーワード(例:CAN通信、状態遷移など)
・確認観点(例:タイミング整合性、エラー処理の有無など)
【0050】
3.仕様書内の対象範囲の抽出(ステップST5)
・上記の検索キーワードを用いて、仕様書からシミュレーションに必要な章・記述を抽出する。この際、仕様書自体は分割せず、検索によって必要な情報を抽出するのみとする。
【0051】
4.vECU生成への連携(ステップST5)
抽出された仕様書の対象範囲からモデルを再構成し、vECUの生成工程(ステップST6)に引き渡す。これにより、目的に応じた軽量でかつ高精度なvECUが生成可能となる。
【0052】
以上のとおり、上記の仕組みにより以下の効果が期待される。
・シミュレーションの目的に応じて最適化されたvECUを生成することができる。
・仕様書の一元管理を維持し、モデルの肥大化を防止できる。
・モデルと仕様の対応関係が明確になり、レビューや保守が容易になる。
・シミュレーション速度の向上と開発効率の改善が実現される。
【0053】
<ステップST7:成果物レビュー>
次に、利用者は生成されたvECUのレビューを行う。具体的には、ステップST6で作成されたトレーサビリティ情報を利用して、修正済の仕様書との比較を行い、レビュー結果を出力する。
【0054】
本実施形態では、AIエージェントを活用してvECUを生成し、シミュレーションを行うことで、開発初期段階での仕様検証を効率化している。しかし、車載ECUの開発においては、機能安全企画であるISO26262への準拠が求められる。ISO26262では、開発に使用するツールに対して「Tool Confidence Level(TCL)」の評価が必要となる。しかし、AIエージェントを活用すると、以下の理由によりTCLの評価が困難になる。
・AIの判断ロジックがブラックボックス化しているため、出力の根拠が不明瞭である。
・自動生成された成果物に対して、人間による確認が省略されると安全性が担保できない。
【0055】
本実施形態では、以下の仕組みによって、AIを活用した自動化とISO26262におけるツール認定要件とを両立させ、自動生成された成果物の信頼性とトレーサビリティを確保している。
【0056】
1.成果物のレビュープロセスの組み込み
vECU生成工程(ステップST6)において、AIエージェントが出力した中間生成物を利用者が確認・承認するステップを設けることにより、AIエージェントの出力に対して人間による評価を行うことができる。
【0057】
2.トレーサビリティの確保
元の仕様書(自然言語)とAIエージェントによる成果物の間に、明確な対応関係(トレーサビリティ)を保持する。
例:SysMLの各図が、仕様書のどの部分の記述に基づいて生成されたかを記録・表示する。
【0058】
3.レビュー支援機能の導入
トレーサビリティ情報を活用して、利用者がAIエージェントによる成果物の妥当性を効率的に確認できるユーザインタフェースや支援ツールを提供する。
例:差分表示、根拠リンク、変更履歴の可視化など。
【0059】
支援ツールの一例として、生成されたvECUをSimulink(登録商標)のような、ソースコードの一歩手前の形式で提示し、対応する仕様書の記述と比較できるようにしてもよい。ソースコードよりも抽象的で把握しやすい形式で成果物を表示することにより、利用者にも成果物の妥当性が確認しやすく、レビュー後にすぐにvECUを生成してシミュレーションを実行することができるという利点もある。
【0060】
以上の仕組みにより、下記の効果が期待される。
・ISO26262におけるツール認定のハードルを下げる。
・AIエージェントによる自動化と、安全性・信頼性の確保を両立する。
・トレーサビリティの確保により、成果物の品質保証のためのレビューを効率化する。
【0061】
<ステップST8:シミュレーション実行>
次に、ステップST6で生成されたvECUを用いて、ステップST5で作成されたテストシナリオに従ってシミュレーションを実行し、シミュレーション結果を出力する。
【0062】
<ステップST9:結果確認・フィードバック>
最後に、利用者は出力されたシミュレーション結果を確認する。
【0063】
以上のように、本実施形態によれば、ECUを用いたシミュレーションの条件に基づいて、AIエージェントが仕様書から必要な情報を抽出し、抽出した情報からシミュレーション用のvECUを生成するようにしたので、シミュレーションの目的に応じた必要な構成と精度を備え、かつ不要な機能は省いた構成のモデルを生成することができる。これにより、シミュレーションにかかるコストや工数を抑えつつ、開発の初期段階から仕様の検証を実施することができる。これにより、仕様の不整合による手戻りによって、開発全体に遅れが生じることを防ぐことができる。
【0064】
また、AIエージェントによって自然言語による仕様書をSysMLなどの形式に変換し、不整合のチェックや記載漏れの補完などを行うようにしたので、シミュレーションを実施する前に、効率的に仕様を修正することができる。
【0065】
また、AIエージェントによる成果物と、元の自然言語による仕様書の対応関係を確認するためのユーザインタフェースを提供するようにしたので、製品開発において必須となるISO等の規格への準拠にも対応することができる。
【0066】
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態で説明したフローチャート、シーケンス、実施形態が備える各要素の具体例等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
【符号の説明】
【0067】
1…シミュレーションシステム、10…シミュレーション装置、11…プロセッサ、12…メインメモリ、13…入出力インタフェース、14…通信インタフェース、15…記憶装置、20…ユーザ端末、21…プロセッサ、22…入力装置、23…表示装置、24…通信インタフェース、25…記憶装置、101…仕様書入力受付部、102…仕様書変換部、103…仕様書確認部、104…シミュレーション条件受付部、105…仕様書情報抽出部、106…モデル生成部、107…レビュー支援部、108…シミュレーション実行部、109…シミュレーション結果出力部
【要約】
【課題】ECU間の仕様不整合による手戻りが、開発全体に及ぼす影響を削減する。
【解決手段】シミュレーションによってコンピュータシステムの仕様の検証を行うシミュレーション装置であって、シミュレーションの対象範囲、目的、及び観点のうちの少なくとも1つを含むシミュレーション条件の入力を受け付けるシミュレーション条件受付部と、AIエージェントによって、仕様書データから、シミュレーション条件に関連する情報を抽出する仕様書情報抽出部と、抽出した情報に基づいて、シミュレーション用のモデルを生成するモデル生成部と、生成したモデルを用いてシミュレーションによる検証を実施するシミュレーション実行部と、を備える。
【選択図】
図5