(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-08-26
(45)【発行日】2025-09-03
(54)【発明の名称】自然言語で書かれた要件に基づく自動化車両テストシステム
(51)【国際特許分類】
G06F 11/36 20250101AFI20250827BHJP
G06F 8/61 20180101ALI20250827BHJP
G06F 11/30 20060101ALI20250827BHJP
B60R 16/02 20060101ALN20250827BHJP
【FI】
G06F11/3698
G06F8/61
G06F11/30 140D
B60R16/02 660Z
【外国語出願】
(21)【出願番号】P 2024117101
(22)【出願日】2024-07-22
【審査請求日】2024-07-22
(32)【優先日】2023-08-31
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】521042770
【氏名又は名称】ウーブン・バイ・トヨタ株式会社
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100092624
【氏名又は名称】鶴田 準一
(74)【代理人】
【識別番号】100147555
【氏名又は名称】伊藤 公一
(74)【代理人】
【識別番号】100123593
【氏名又は名称】関根 宣夫
(74)【代理人】
【識別番号】100133835
【氏名又は名称】河野 努
(74)【代理人】
【識別番号】100120499
【氏名又は名称】平山 淳
(72)【発明者】
【氏名】橋本 大輔
【審査官】新井 則和
(56)【参考文献】
【文献】米国特許出願公開第2016/0283353(US,A1)
【文献】国際公開第2014/115189(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/36
G06F 8/61
G06F 11/30
B60R 16/02
(57)【特許請求の範囲】
【請求項1】
プロセッサによって実行される、車両アプリケーションをテストする方法であって、前記方法は、
チケットを生成することであって、前記チケットは、少なくとも1つの自然言語のテスト要件記述及び/又は少なくとも1つの自然言語のインシデントシナリオ記述を備える、ということと、
車両から収集されたセンサデータが、前記チケットにおける少なくとも1つの人間が読めるように書かれたインシデントシナリオ記述又は自然言語のテスト要件記述と一致するかどうかを判定することと、
前記車両から前記収集されたセンサデータが、前記少なくとも1つの人間が読めるように書かれたインシデントシナリオ記述又は自然言語のテスト要件記述と一致するという判定に基づいて、
前記チケット及び車両から収集されたセンサデータに基づいて要件ファイル(RaCファイル)を生成すること、並びに
前記RaCファイルに基づいてMLモデルを評価して、前記MLモデルが前記テスト要件を達成するかどうかを判定することであって、前記MLモデルは、車両アプリケーションを実装するために使用される、ということと、
を含む、方法。
【請求項2】
前記チケットは、自然言語で書かれたインシデント記録(IR)チケット及び自然言語で書かれた要件記述(RD)チケットに基づいて生成される、請求項1に記載の方法。
【請求項3】
前記チケットは、チケットデータベースに記憶され、前記収集されたセンサデータは、車両データのデータベースから取得される、請求項1又は2に記載の方法。
【請求項4】
車両から収集されたセンサデータが、前記チケットにおける記述と一致するかどうかを判定することは、センサデータ分類器及び/又はニューラルネットワークを使用して行われる、請求項1又は2に記載の方法。
【請求項5】
前記RaCファイルは、チケット識別子と、ファイル識別子と、コード化されたテスト要件と、前記収集されたセンサデータに対するリンクと、を備える、請求項1又は2に記載の方法。
【請求項6】
前記RaCファイルを生成することは、前記少なくとも1つの自然言語のテスト要件記述をコード化されたテスト要件に変換することを含む、請求項5に記載の方法。
【請求項7】
前記RaCファイルに基づいた前記MLモデルの評価が完了すると、前記車両アプリケーションは、前記車両内に展開される、請求項1又は2に記載の方法。
【請求項8】
前記RaCファイルに基づいた前記MLモデルの評価が完了すると、前記チケットの状況は、前記評価の結果に基づいて更新される、請求項1又は2に記載の方法。
【請求項9】
前記チケットの生成が完了すると、前記チケットは、前記車両におけるチケット受信機によって受信され、前記センサデータ分類器及び/又は前記ニューラルネットワークは、前記車両に実装されている、請求項4に記載の方法。
【請求項10】
前記車両から前記収集されたセンサデータが、前記少なくとも1つの自然言語のインシデントシナリオ記述と一致するという判定に基づいて、前記収集されたセンサデータは、前記車両におけるデータ送信機によって車両データのデータベースに送信される、請求項9に記載の方法。
【請求項11】
車両アプリケーションをテストする装置であって、前記装置は、
コンピュータ実行可能命令を記憶する少なくとも1つのメモリと、
少なくとも1つのプロセッサと、
を備え、前記少なくとも1つのプロセッサは、前記コンピュータ実行可能命令を実行して、
チケットを生成することであって、前記チケットは、少なくとも1つの自然言語のテスト要件記述及び/又は少なくとも1つの自然言語のインシデントシナリオ記述を備える、ということと、
車両から収集されたセンサデータが、前記チケットにおける少なくとも1つの人間が読めるように書かれたインシデントシナリオ記述又は自然言語のテスト要件記述と一致するかどうかを判定することと、
前記車両から前記収集されたセンサデータが、前記少なくとも1つの人間が読めるように書かれたインシデントシナリオ記述又は自然言語のテスト要件記述と一致するという判定に基づいて、
前記チケット及び車両から収集されたセンサデータに基づいて要件ファイル(RaCファイル)を生成すること、並びに
前記RaCファイルに基づいてMLモデルを評価して、前記MLモデルが前記テスト要件を達成するかどうかを判定することであって、前記MLモデルは、車両アプリケーションを実装するために使用される、ということと、
を行うように構成されている、装置。
【請求項12】
前記チケットは、自然言語で書かれたインシデント記録(IR)チケット及び自然言語で書かれた要件記述(RD)チケットに基づいて生成される、請求項11に記載の装置。
【請求項13】
前記チケットは、チケットデータベースに記憶され、前記収集されたセンサデータは、車両データのデータベースから取得される、請求項11又は12に記載の装置。
【請求項14】
車両から収集されたセンサデータが、前記チケットにおける記述と一致するかどうかを判定することは、センサデータ分類器及び/又はニューラルネットワークを使用して行われる、請求項11又は12に記載の装置。
【請求項15】
前記RaCファイルは、チケット識別子と、ファイル識別子と、コード化されたテスト要件と、前記収集されたセンサデータに対するリンクと、を備える、請求項11又は12に記載の装置。
【請求項16】
前記少なくとも1つのプロセッサは更に、前記コンピュータ実行可能命令を実行して、前記少なくとも1つの自然言語のテスト要件記述をコード化されたテスト要件に変換することによって前記RaCファイルを生成するように構成されている、請求項15に記載の装置。
【請求項17】
前記RaCファイルに基づいた前記MLモデルの評価が完了すると、前記車両アプリケーションは、前記車両内に展開される、請求項11又は12に記載の装置。
【請求項18】
前記RaCファイルに基づいた前記MLモデルの評価が完了すると、前記チケットの状況は、前記評価の結果に基づいて更新される、請求項11又は12に記載の装置。
【請求項19】
前記チケットの生成が完了すると、前記チケットは、前記車両におけるチケット受信機によって受信され、前記センサデータ分類器及び/又は前記ニューラルネットワークは、前記車両に実装されている、請求項14に記載の装置。
【請求項20】
前記車両から前記収集されたセンサデータが、前記少なくとも1つの自然言語のインシデントシナリオ記述と一致するという判定に基づいて、前記収集されたセンサデータは、前記車両におけるデータ送信機によって車両データのデータベースに送信される、請求項19に記載の装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の例示的な実施形態と整合するシステム及び方法は、自然言語で書かれた要件に基づく自動化車両テストに関する。
【背景技術】
【0002】
関連技術では、自動化車両システムのテストは、自動化車両の動作に関する様々なタスクを自動化するために使用され得る機械学習(ML)モデルを使用して実装され得る。この目的で、車両アプリケーションをテストするために、テストデータを収集することが必要である。
【0003】
通常、当該車両は、データを収集するためにセンサ(例えば、カメラ、加速度計など)を用いて実装され得、その後、オペレータ/製造者は、テストのために収集データを処理し得る。この目的で、センサによって収集されるデータは、(例えば、MLモデルを使用して実装され得る)車両アプリケーションに入力され得る。
【0004】
関連技術では、データは、ルールベースのトリガ条件に基づいて、車両から収集されてテスト車両アプリケーションに入力される。特に、当該ルールベースのトリガ条件は、センサデータが車両からデータベース/サーバに収集される条件に関する明示的で、決定的で、且つ明確な定義を必要とする。当該ルールベースのトリガ条件は、数値基準及び厳密な条件分岐と共に明確に指定される必要があり、したがって、不明確性を全く含み得ない。データを収集するためのこのような厳密な条件により、テストするのに必要なデータの収集の欠如をもたらす場合があり、収集中の偽陽性/偽陰性につながる場合がある。
【0005】
したがって、あまり厳密でない方法でテスト要件が指定されるのを可能にし得る、データを収集するシステムが必要である。
【発明の概要】
【0006】
1つ以上の例示的な実施形態によれば、自然言語に基づいた自動化車両テストのための装置及び方法が提供される。特に、課題管理システムのチケットは、自然言語で書かれたテスト要件及びインシデントシナリオ記述に基づいて生成され得る。車両から収集されたセンサデータに対する当該チケットの一致に基づいて、コード化されたファイル(例えば、要件がコード化されたファイル(Requirement as Code(RaC)ファイル))が生成され得、(車両アプリケーションを実装し得る)機械学習(ML)モデルは、コード化されたファイルに基づいて、当該MLモデルがテスト要件に適合するかどうかに関して評価され得る。したがって、テスト要件及びインシデントシナリオは、人間が読めるように書かれた後にコード化されたファイルへ変換されるため、オペレータ/開発者は、曖昧性を許容する自然言語でテスト要件およびインシデントシナリオを指定することにより、データが収集され得る条件及び要件を容易に且つ幅広く指定し得る。したがって、データを収集する条件は、あまり厳密でなくてもよく、偽陽性/偽陰性が回避され得る。
【0007】
実施形態によれば、車両アプリケーションをテストする方法が提供され得る。方法は、チケットを生成することであって、チケットは、少なくとも1つの人間が読めるように書かれたテスト要件及び少なくとも1つの自然言語のインシデントシナリオ記述を備える、ということと、車両から収集されたセンサデータが、チケットにおける少なくとも1つの人間が読めるように書かれたインシデントシナリオ記述と一致するかどうかを判定することと、車両から収集されたセンサデータが、少なくとも1つの人間が読めるように書かれたインシデントシナリオ記述と一致するという判定に基づいて、チケット及び車両から収集されたセンサデータに基づいて要件ファイル(RaCファイル)を生成すること、並びにRaCファイルに基づいてMLモデルを評価して、MLモデルがテスト要件を達成するかどうかを判定することであって、MLモデルは、車両アプリケーションを実装するために使用される、ということと、を含み得る。実施形態によれば、チケットは、自然言語で書かれたインシデント記録(IR)チケット及び自然言語で書かれた要件記述(RD)チケットに基づいて生成され得る。チケットは、課題管理システム(例えば、新しい課題を解決する必要があるときにチケットを開いて管理し得るシステム)などのチケットデータベースに記憶され得、収集されたセンサデータは、車両データのデータベースから取得される。車両から収集されたセンサデータが、チケットにおける記述と一致するかどうかを判定することは、画像分類器及び/又はニューラルネットワークを使用して行われ得る。
【0008】
実施形態によれば、RaCファイルは、チケット識別子と、ファイル識別子と、コード化されたテスト要件と、収集されたセンサデータに対するリンクと、を含み得る。RaCファイルの生成は、少なくとも1つの人間が読めるように書かれたテスト要件をコード化されたテスト要件に変換することを含み得る。
【0009】
実施形態によれば、RaCファイルに基づいたMLモデルの評価が完了すると、車両アプリケーションは、車両内に展開される。RaCファイルに基づいたMLモデルの評価が完了すると、チケットの状況は、評価の結果に基づいて更新され得る。
【0010】
実施形態によれば、チケットの生成が完了すると、チケットは、車両におけるチケット受信機によって受信され、画像分類器及び/又はニューラルネットワークは、車両に実装されている。車両から収集されたセンサデータが、少なくとも1つの人間が読めるように書かれたインシデントシナリオ記述と一致するという判定に基づいて、収集されたセンサデータは、車両におけるデータ送信機によって車両データのデータベースに送信され得る。
【0011】
追加の態様は、部分的に以下の説明で記載され、部分的に当該説明から明らかになるか、又は本開示の提示される実施形態の実施によって実現され得る。
【図面の簡単な説明】
【0012】
本開示の特定の好ましい実施形態の特徴、態様、及び利点は、添付図面を参照して以下に記載され、当該添付図面では、同様の参照番号は同様の要素を示す。
【
図1】
図1は、例示的な実施形態に係るデバイスの例示的な構成要素の図である。
【
図2】
図2は、1つ以上の例示的な実施形態に係るシステムアーキテクチャ図である。
【
図3】
図3は、1つ以上の例示的な実施形態に係る代替的なシステムアーキテクチャ図である。
【
図4】
図4は、1つ以上の例示的な実施形態に係るチケットに基づいて車両アプリケーションをテストする方法を示すフローチャート図である。
【発明を実施するための形態】
【0013】
例示的な実施形態の以下の詳細な説明は、添付図面を参照する。本開示は、例示及び説明を提供するが、網羅的であることを意図したものでもなく、1つ以上の例示的な実施形態を、開示される正確な形態に限定することを意図したものでもない。修正及び変形は、本開示を鑑みて可能であるか、又は1つ以上の例示的な実施形態の実施から習得され得る。更に、例示的な一実施形態の1つ以上の特徴又は構成要素は、別の例示的な実施形態(若しくは別の例示的な実施形態の1つ以上の特徴)に組み込まれ得るか、又はそれと組み合わされ得る。更に、本明細書で提供される動作のフローチャート及び説明において、1つ以上の動作が省略されてもよく、1つ以上の動作が追加されてもよく、1つ以上の動作が(少なくとも部分的に)同時に行われてもよく、1つ以上の動作の順序が切り替えられてもよいことが理解される。
【0014】
本明細書に記載されるシステム及び/若しくは方法並びに/又は非一時的コンピュータ可読記憶媒体の例示的な実施形態は、ハードウェア、ファームウェア、又はハードウェア及びソフトウェアの組み合わせの様々な形態で実装され得ることが明らかであろう。当該システム及び/又は方法を実装するために使用される実際の専用の制御ハードウェア又はソフトウェアコードは、1つ以上の例示的な実施形態の限定ではない。したがって、システム及び/若しくは方法並びに/又は非一時的コンピュータ可読記憶媒体の動作及び挙動は、特定のソフトウェアコードを参照することなく本明細書に記載される。ソフトウェア及びハードウェアは、本明細書の説明に基づいてシステム及び/又は方法を実装するように設計され得ることが理解される。
【0015】
特徴の特定の組み合わせが特許請求の範囲で列挙され及び/又は本明細書に開示されていても、当該組み合わせは、可能性のある例示的な実施形態の開示を限定することを意図したものではない。実際、当該特徴の多くは、具体的に特許請求の範囲で列挙されていない方法及び/又は本明細書に開示されていない方法で組み合わされ得る。以下に列挙される各従属請求項は、1つの請求項のみに直接的に従属し得るが、可能性のある例示的な実施形態の開示は、請求項のセットにおける全ての他の請求項と組み合わされた各従属請求項を含む。
【0016】
本明細書で使用される要素、行為、又は命令は、特に明示的に記載されていない限り、重要又は必須であると解釈されるべきではない。また、本明細書で使用される冠詞「a」及び「an」は、1つ以上の事項を含むことを意図したものであり、「1つ以上」と交換可能に使用され得る。1つの事項のみを意図したものである場合、「1つ」という用語又は同様の用語が使用される。また、本明細書で使用される用語「有する(has)」、「有する(have)」、「有している(having)」、「含む(include)」、「含んでいる(including)」、又は同種のものは、オープンエンドの用語であることを意図したものである。更に、「~に基づいて」というフレーズは、特に明示的に述べられていない限り、「~に少なくとも部分的に基づいて」を意味することを意図したものである。更に、「[A]及び[B]のうちの少なくとも一方」又は「[A]又は[B]のうちの少なくとも一方」などの表現は、Aのみ、Bのみ、又はA及びBの両方を含むものとして理解されるべきである。
【0017】
図1は、車両テストデバイス100の例示的な構成要素の図である。
図1に示されるように、車両テストデバイス100は、バス110と、プロセッサ120と、メモリ130と、ストレージ部140と、入力部150と、出力部160と、通信インターフェース170と、を含み得る。
【0018】
バス110は、車両テストデバイス100の構成要素間の通信を可能にする構成要素を含む。プロセッサ120は、ハードウェア、ファームウェア、又はハードウェア及びソフトウェアの組み合わせで実装され得る。プロセッサ120は、中央処理装置(CPU)、画像処理装置(GPU)、加速処理装置(APU)、マイクロプロセッサ、マイクロコントローラ、デジタルシグナルプロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、又は別のタイプの処理構成要素であり得る。1つ以上の例示的な実施形態では、プロセッサ120は、機能を行うようにプログラム可能な1つ以上のプロセッサを含む。メモリ130は、プロセッサ220による使用のために情報及び/又は命令を記憶する、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、並びに/又は別のタイプの動的若しくは静的記憶デバイス(例えば、フラッシュメモリ、磁気メモリ、及び/若しくは光メモリ)を含む。
【0019】
ストレージ部140は、車両テストデバイス100の動作及び使用に関する情報及び/又はソフトウェアを記憶する。例えば、ストレージ部140は、対応するドライブと共に、ハードディスク(例えば、磁気ディスク、光ディスク、光磁気ディスク、及び/若しくはソリッドステートディスク)、コンパクトディスク(CD)、デジタルバーサタイルディスク(DVD)、フロッピディスク、カートリッジ、磁気テープ、並びに/又は別のタイプの非一時的コンピュータ可読媒体を含み得る。入力部150は、ユーザ入力などを介して情報を車両テストデバイス100が受信することを可能にする構成要素(例えば、タッチスクリーンディスプレイ、キーボード、キーパッド、マウス、ボタン、スイッチ、及び/又はマイク)を含む。更に又は代替的に、入力部150は、情報を検知するセンサ(例えば、グローバルポジショニングシステム(GPS)構成要素、加速度計、ジャイロスコープ、及び/又はアクチュエータ)を含み得る。出力部160は、車両テストデバイス100からの出力情報を提供する構成要素(例えば、ディスプレイ、スピーカ、及び/又は1つ以上の発光ダイオード(LED))を含む。
【0020】
通信インターフェース170は、有線接続、無線接続、又は有線及び無線接続の組み合わせなどを介して車両テストデバイス100が他のデバイスと通信することを可能にする送受信機のような構成要素(例えば、送受信機及び/又は別々の受信機及び送信機)を含む。通信インターフェース170は、車両テストデバイス100が別のデバイスから情報を受信すること及び/又は情報を別のデバイスに提供することを可能にし得る。例えば、通信インターフェース170は、イーサネットインターフェース、光インターフェース、同軸インターフェース、赤外線インターフェース、無線周波数(RF)インターフェース、ユニバーサルシリアルバス(USB)インターフェース、Wi-Fiインターフェース、セルラネットワークインターフェース、又は同種のものを含み得るが、これらに限定されない。
【0021】
車両テストデバイス100は、本明細書に記載される1つ以上の例示的なプロセスを行い得る。1つ以上の例示的な実施形態によれば、車両テストデバイス100は、メモリ130及び/又はストレージ部140などの非一時的コンピュータ可読媒体によって記憶されたソフトウェア命令をプロセッサ120が実行したことに応じて当該プロセスを行い得る。コンピュータ可読媒体は、本明細書において非一時的メモリデバイスとして定められる。メモリデバイスは、単一の物理記憶デバイス内のメモリ空間、又は複数の物理記憶デバイスに及ぶメモリ空間を含む。
【0022】
ソフトウェア命令は、通信インターフェース170を介して別のコンピュータ可読媒体から又は別のデバイスからメモリ130及び/又はストレージ部140に読み込まれ得る。メモリ130及び/又はストレージ部140に記憶されたソフトウェア命令は、実行されると、本明細書に記載される1つ以上のプロセスをプロセッサ120に行わせ得る。
【0023】
更に又は代替的に、ハードワイヤード回路は、本明細書に記載される1つ以上のプロセスを行うために、ソフトウェア命令の代わりに、又はソフトウェア命令と組み合わされて使用され得る。したがって、本明細書に記載される1つ以上の例示的な実施形態は、ハードウェア回路及びソフトウェアのどの特定の組み合わせにも限定されない。
【0024】
図1に示される構成要素の数及び配置は、一例として提供される。実際、車両テストデバイス100は、
図1に示されるものと比べて、追加の構成要素、より少ない構成要素、異なる構成要素、又は異なって配置された構成要素を含み得る。更に又は代替的に、車両テストデバイス100の構成要素(例えば、1つ以上の構成要素)のセットは、車両テストデバイス100の構成要素の別のセットによって行われるものとして記載される1つ以上の機能を行い得る。
【0025】
図2は、1つ以上の例示的な実施形態に係るシステムアーキテクチャ図である。特に、
図2は、機械学習(ML)モデルを使用して実装された車両アプリケーションがテストされる実施形態を示す。
【0026】
実施形態によれば、サーバ14と通信する車両13が提供され得る。サーバ14は、特定の実装態様に応じて、単一のサーバで実装され得るか、複数のサーバとして実装され得るか、又はクラウドアプリケーションを使用して実装され得ることを理解されたい。オペレータ15及び製品の所有者/開発者/ユーザ16は、サーバ14とやり取りすることが可能であり得る。
【0027】
車両13は、少なくとも1つのセンサ17と車両アプリケーション20とを含み得る。特に、少なくとも1つのセンサ17は、カメラ、加速度計、ジャイロスコープ、IRセンサなどを含み得るが、これらに限定されない。少なくとも1つのセンサ17は、車両のテストに関するデータを収集する役割を担い得る。少なくとも1つのセンサ17は、サーバ14に配置された車両データのデータベース3に収集されたデータを送信することが可能であり得る。車両アプリケーション20は、車両13の動作に関する(例えば、車両13のステアリング又は加速に関する)任意のアプリケーションであり得る。車両アプリケーション20は、機械学習(ML)モデルを使用して実装され得る。
【0028】
サーバ14は、インシデント記録サーバ11と、要件管理ダッシュボード12と、を含み得る。インシデント記録サーバ11は、自然言語でオペレータ15によって入力され得るインシデントシナリオの集合を含み得る。特に、自然言語は、任意の既知の人間の言語におけるものであり得、一部の実施形態によれば、それは、コードを解釈する方法に関する知識を必ずしも有していない場合がある人によって容易に理解され得る構造で書かれ得る。換言すれば、自然言語は、解釈されるときに(例えば、会話又は読解時に)通常の人によって理解されるであろう人間の言語を包含し得る。インシデントシナリオは、車両13を動作させる方法に関する決定を車両アプリケーション20が行う必要がある状況を指定し得、例えば、左側の2車線から任意の水平及び垂直距離以内で接近している車両が存在することを指定し得る。人間が読めるように書かれたインシデントシナリオの集合に基づいて、インシデント記録サーバは、自然言語に関するものでもあるインシデント記録(IR)チケット4を生成/記憶/出力することが可能であり得る。インシデントシナリオは、現実のシナリオ又はテストシナリオを含み得るが、必ずしもこれらに限定されるわけではないことを理解されたい。
【0029】
要件管理ダッシュボード12(一部の実施形態では、それ自体のサーバとして実装され得る)は、製品の所有者/開発者/ユーザ16によって自然言語で入力され得るテスト要件の集合を含み得る。テスト要件は、テストターゲット、テスト条件、又は車両13の動作に関するテスト基準を指定し得る。テスト要件の集合に基づいて、要件管理ダッシュボードは、自然言語で記述された要件記述(RD)チケット5を生成/記憶/出力することが可能であり得る。インシデントシナリオは、例えば車両13に係る事故・問題・不具合に関する情報を含んで良い。
【0030】
IRチケット4及びRDチケット5に基づいて、チケット6は、(例えば、IRチケット4及びRDチケット5を組み合わせることによって)生成され得、それに従って、サーバ14内のチケットデータベース7に記憶され得る。各チケット6は、それ自体の固有識別子(ID)を有し得る。データベースが指定されているが、他の記憶手段(例えば、クラウドストレージ、コンテンツ配信ネットワーク)もチケットを記憶するために実装され得ることを理解されたい。
【0031】
センサデータ分類器1もサーバ14に提供され得る。収集されたセンサデータが画像である一部の実施形態によれば、センサデータ分類器1は、ニューラルネットワーク2を利用して実装される画像分類器であり得る。センサデータ分類器1は、特定の収集されたセンサデータがチケット6におけるインシデントシナリオ記述及び/又はテスト要件記述と一致するかどうかを判定するように、車両データのデータベース3から取得される収集されたセンサデータとチケット6を比較するために使用され得る。この動作を行うために画像分類器及び/又はニューラルネットワークが使用され得るが、チケット6におけるインシデントシナリオ記述に対する収集されたセンサデータの比較に関する他の手段が使用され得ることを理解されたい。
【0032】
チケット6の記述と車両データのデータベース3からの収集されたセンサデータとの間の一致を判定すると、一致したデータに対するリンク(すなわち、URL)及びチケット6は、サーバ14に配置された要件ファイル(RaCファイル)生成器8に送信され得、RaCファイル生成器8は、収集されたセンサデータに対するリンク及びチケット6に基づいてRaCファイル9を生成し得る。
【0033】
RaCファイル9は、(例えば、チケット6に関連する)チケットIDと、(RaCファイル9を一意に識別するために使用され得る)固有ファイルIDと、チケット6に書かれた自然言語からコードに変換されたテスト要件(テストターゲット、テスト条件、テスト基準など)と、車両データのデータベース3に記憶された収集されたセンサデータに対するリンク(URL)と、を含み得る。
【0034】
RaCファイル9は、MLモデルの期待される挙動を記憶する役割を担い得る。期待される挙動は、テスト要件を備え得る。特に、テスト要件は、例えば、達成される必要がある特定の性能指標の数値、達成される必要がある基準、テストのタイプなどに基づいて、テストされる必要があるMLモデルの性能指標を指定し得る。それに従って、RACファイル9は、ML評価プロセス中に使用される、テストパラメータ、テストターゲット、テストデータのURL又はファイルパス、要件、合格基準、テスト条件、受け入れ要件、受け入れ基準をテスト要件として含み得る。このような要件、テストターゲット、テストデータのファイルパス、合格基準、及びテスト条件は、どのようにMLモデルのMLテスト及び評価がML評価パイプラインによって実行され、その後ML評価パイプライン10によって実行されるべきかを決定するために(例えば、ML評価パイプライン10によって)容易に解釈され得る。例えば、RaCファイル9は、コードの形態の基準を含み得、ML評価パイプラインは容易に、当該コードを、MLモデルのML評価を実行する方法に関する命令に解釈し得る。RaCファイル9は、YAMLフォーマット又はドメイン固有言語(DSL)フォーマットなどのフォーマットであり得る。RaCファイル9はまた、PYTHON(登録商標)などのプログラミング言語のフォーマットであり得る。RaCファイル9は、ML評価を実際に実行するために使用されるコードとは別であるため、ML評価プロセス内に要件を「ハードコード」する必要をなくし得る。
【0035】
ML評価パイプライン10は、RaCファイル9に基づいてMLモデルをテストするために提供され得る。ML評価パイプラインは、RaCファイル9で指定された要件を解釈するためのインターフェースと、解釈された要件に基づいてMLモデルを評価するためのインターフェースと、を含み得る。ML評価パイプライン10は、テスト中に車両データのデータベース3から収集されたセンサデータを取得するために、RaCファイル9内の収集されたセンサデータに対するリンク(URL)、ファイルパス、又は固有キーを使用し得る。ML評価の結果に基づいて、テストされたMLモデルは、展開前のアプリケーション20-1を生成するために使用され、次いで、その後車両アプリケーション20として車両13内に展開され得る。ML評価パイプライン10はまた、ML評価の結果に基づいてチケットデータベース7内のチケット6の状況を更新し得る。ML評価パイプライン10が指定されているが、実施形態によれば、RaCファイルから要件を解釈し、解釈された要件に基づいてMLモデルを評価する任意の適切な手段が使用され得ることを理解されたい。
【0036】
図3は、1つ以上の例示的な実施形態に係る代替的なシステムアーキテクチャ図である。特に、
図3は、車両データが収集され、それに従って車両アプリケーションをテストするために使用される例示的な実施形態を示す。
図2と同様の構成要素が含まれ、したがって、冗長な説明は、読みやすくするために除外され得る。
【0037】
特に、
図2に示される実施形態に対して、
図3に示される実施形態は、チケット受信機31、データ送信機34、並びにサーバ14ではなく車両13に配置されたセンサデータ分類器1及び/又はニューラルネットワーク2を更に含む車両13を提供する。チケット受信機31は、チケットデータベース7からチケット6を受信することが可能であり得る。一部の実施形態によれば、チケット6は、圧縮フォーマット、暗号化フォーマット、又は特徴マップに部分的に組み込まれたフォーマットで受信され得ることを理解されたい。
【0038】
センサデータ分類器1及び/又はニューラルネットワーク2は同様に、少なくとも1つのセンサ17から取得される収集されたセンサデータがチケット6の記述と一致するかどうかを判定するように構成され得る。それが一致する場合、データ送信機34は、収集されたセンサデータを車両データのデータベース3に送信することが可能であり得る。サーバ14がデータ送信機34から収集されたセンサデータを受信すると、受信データのURLは、RaCファイル生成器8に送信され得る。したがって、
図3に示される実施形態では、チケット6に書かれた要件又はインシデントシナリオをテストするための収集されるテストデータの数が増加すると、チケット6に対応するテストの数も増加する。
【0039】
図4は、1つ以上の例示的な実施形態に係るチケットに基づいて車両アプリケーションをテストする方法400を示すフローチャート図である。一部の実施形態によれば、方法400を実装するために、
図2及び
図3に示されるシステムアーキテクチャが使用され得ることを理解されたい。
【0040】
図4を参照して、動作S410で、人間が読めるように書かれた少なくとも1つのテスト要件及び人間が読めるように書かれた少なくとも1つのインシデントシナリオ記述を含むチケット6が生成され得る。一部の実施形態によれば、これは、自然言語で書かれた、インシデント記録サーバ11から取得されるインシデント記録(IR)チケット4、及び要件管理ダッシュボード12から取得される要件記述(RD)チケット5を組み合わせることによって行われ得る。一部の実施形態によれば、チケット6は、チケットデータベース7に記憶され得る。
【0041】
一部の実施形態によれば、チケット6は、車両13におけるチケット受信機31によって受信され得る。
【0042】
動作S420で、車両(すなわち、車両13)からの収集されたセンサデータが、チケット6における少なくとも1つの人間が読めるように書かれたインシデントシナリオ記述及び/又はテスト要件記述と一致するかどうかに関して判定され得る。一部の実施形態によれば、これは、センサデータ分類器1及び/又はニューラルネットワーク2を使用して行われ得る。実施形態によれば、収集されたセンサデータは当初、車両データのデータベース3に記憶され得る。一部の実施形態によれば、センサデータ分類器1及び/又はニューラルネットワーク2は、車両に実装され得る。
【0043】
動作S430で、RaCファイル9は、チケット6及び収集されたセンサデータに基づいて生成され得る。実施形態によれば、動作S430は、収集されたセンサデータとチケット6からのインシデント記述シナリオとの間に一致が存在することが動作S420で判定された場合にのみ行われ得る。RaCファイル9は、(チケット6におけるものと同じものであり得る)チケット識別子と、ファイル識別子と、コード化されたテスト要件と、収集されたセンサデータに対するリンクと、を含み得る。コード化されたテスト要件は、チケット6からの人間が読めるように書かれたテスト要件の変換に基づいて生成され得る。実施形態によれば、動作S430は、RaCファイル生成器8によって行われ得る。
【0044】
一部の実施形態によれば、車両13からの収集されたセンサデータが、少なくとも1つの自然言語のインシデントシナリオ記述及び/又はテスト要件記述と一致するという判定に基づいて、収集されたセンサデータは、車両13におけるデータ送信機34によって車両データのデータベース3に送信され得る。
【0045】
動作S440で、(車両アプリケーション20を実装するために使用され得る)MLモデルは、動作S430で生成されるようなRaCファイル9に基づいて評価され得る。特に、これは、MLモデルが、チケット6において当初指定された(RaCファイル9から解釈されるような)テスト要件を達成するかどうかに関して評価し得る。動作S440は、RaCファイル9からの要件を解釈し、解釈された要件に基づいて評価を実行し得るML評価パイプライン10を使用して実装され得る。一部の実施形態によれば、動作S440が完了すると、車両アプリケーションは、車両13内に実装及び展開され得る。一部の実施形態では、動作S440が完了すると、チケット6の状況は、評価の結果として更新され得る。
【0046】
上記実施形態に基づいて、人間が読めるように書かれたテスト要件及び人間が読めるように書かれたインシデントシナリオ記述のコード化されたファイルへの変換が行われるため、オペレータ/開発者は、処理前の自然言語に関するものであるということから、データが収集され得る条件及び要件を容易に且つ幅広く指定し得る。したがって、データを収集する条件は、あまり厳密でなくてもよく、偽陽性/偽陰性が回避され得る。
【0047】
以上の開示は、例示及び説明を提供するが、網羅的であることを意図したものでもなく、1つ以上の例示的な実施形態を、開示される正確な形態に限定することを意図したものでもない。修正及び変形は、本開示を鑑みて可能であるか、又は1つ以上の例示的な実施形態の実施から習得され得る。
【0048】
1つ以上の例示的な実施形態は、統合の任意の可能性のある技術的詳細レベルにおけるシステム、方法、及び/又はコンピュータ可読媒体に関し得る。更に、上述の構成要素のうちの1つ以上は、コンピュータ可読媒体において記憶され少なくとも1つのプロセッサによって実行可能な命令として実装され得る(及び/又は少なくとも1つのプロセッサを含み得る)。コンピュータ可読媒体は、プロセッサに動作を実行させるコンピュータ可読プログラム命令を有するコンピュータ可読非一時的記憶媒体(又は媒体(複数))を含み得る。
【0049】
コンピュータ可読記憶媒体は、命令実行デバイスによって使用される命令を保持及び記憶し得る有形デバイスであり得る。コンピュータ可読記憶媒体は、例えば、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、又は以上の任意の好適な組み合わせであり得るが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストは、以下、すなわち、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、消去可能なプログラマブルリードオンリーメモリ(EPROM又はフラッシュメモリ)、静的ランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスクリードオンリーメモリ(CD-ROM)、デジタルバーサタイルディスク(DVD)、メモリスティック、フロッピディスク、命令が記録されたパンチカード又は溝内の隆起構造などの機械的に符号化されたデバイス、及び以上の任意の好適な組み合わせを含む。本明細書で使用されるコンピュータ可読記憶媒体は、電波若しくは他の自由に伝播する電磁波、導波路若しくは他の送信媒体を通じて伝播する電磁波(例えば、光ファイバケーブルを通過する光パルス)、又はワイヤを通じて送信される電気信号などの、一時的な信号自体であると解釈されるべきではない。
【0050】
本明細書に記載されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれの計算/処理デバイスにダウンロードされ得るか、又はネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、及び/若しくは無線ネットワークを介して外部コンピュータ若しくは外部記憶デバイスにダウンロードされ得る。ネットワークは、銅送信ケーブル、光送信ファイバ、無線送信、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、及び/又はエッジサーバを備え得る。各計算/処理デバイス内のネットワークアダプタカード又はネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれの計算/処理デバイス内のコンピュータ可読記憶媒体に記憶するためにコンピュータ可読プログラム命令を転送する。
【0051】
動作を実行するコンピュータ可読プログラムコード/命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路用の構成データ、又は1つ以上のプログラミング言語の任意の組み合わせで書かれたソースコード若しくはオブジェクトコードであり得、当該1つ以上のプログラミング言語は、Smalltalk、C++、又は同種のものなどのオブジェクト指向プログラミング言語と、「C」プログラミング言語又は同様のプログラミング言語などの手続き型プログラミング言語と、を含む。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で完全に実行され得るか、ユーザのコンピュータ上で部分的に実行され得るか、スタンドアロンソフトウェアパッケージとして実行され得るか、ユーザのコンピュータ上で部分的に且つリモートコンピュータ上で部分的に実行され得るか、又はリモートコンピュータ若しくはサーバ上で完全に実行され得る。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク(LAN)若しくはワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを通じてユーザのコンピュータに接続され得るか、又は(例えば、インターネットサービスプロバイダを使用してインターネットを通じて)外部コンピュータへの接続が行われ得る。1つ以上の例示的な実施形態では、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)、又はプログラマブルロジックアレイ(PLA)を含む電子回路は、態様又は動作を行うために、コンピュータ可読プログラム命令の状態情報を利用して電子回路をパーソナライズすることによってコンピュータ可読プログラム命令を実行し得る。
【0052】
当該コンピュータ可読プログラム命令は、マシンを生成するために汎用コンピュータ、専用コンピュータ、又は他のプログラマブルデータ処理装置のプロセッサに提供され得、その結果、コンピュータ又は他のプログラマブルデータ処理装置のプロセッサを介して実行される命令は、フローチャート及び/又はブロック図のブロック若しくはブロック(複数)において指定される機能/行為を実装する手段を生成する。当該コンピュータ可読プログラム命令はまた、コンピュータ、プログラマブルデータ処理装置、及び/又は他のデバイスに特定の方法で機能するように指示し得るコンピュータ可読記憶媒体に記憶され得、その結果、命令が内部に記憶されたコンピュータ可読記憶媒体は、フローチャート及び/又はブロック図のブロック若しくはブロック(複数)において指定される機能/行為の態様を実装する命令を含む製造物品を備える。
【0053】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブルデータ処理装置、又は他のデバイス上にロードされて、コンピュータ、他のプログラマブル装置、又は他のデバイス上で一連の動作ステップを行わせて、コンピュータ実装プロセスを生成し得、その結果、コンピュータ、他のプログラマブル装置、又は他のデバイス上で実行される命令は、フローチャート及び/又はブロック図のブロック若しくはブロック(複数)において指定される機能/行為を実装する。
【0054】
図におけるフローチャート及びブロック図は、1つ以上の例示的な実施形態に係るシステム、方法、及びコンピュータ可読媒体の可能性のある例示的な実施形態のアーキテクチャ、機能、及び動作を示す。この点に関して、フローチャート又はブロック図における各ブロックは、指定された論理機能を実装する1つ以上の実行可能命令を備える、マイクロサービス、モジュール、セグメント、又は命令の一部を表し得る。方法、コンピュータシステム、及びコンピュータ可読媒体は、図面で描写されるものと比べて、追加のブロック、より少ないブロック、異なるブロック、又は異なって配置されたブロックを含み得る。1つ以上の代替的な例示的実施形態では、ブロックに記される機能は、図に記される順序と関係なく生じ得る。例えば、連続して示される2つのブロックは実際、同時に若しくは実質的に同時に実行され得るか、又はブロックは、関連する機能に応じて、逆の順序で実行されることもあり得る。ブロック図及び/又はフローチャート図の各ブロック、並びにブロック図及び/又はフローチャート図のブロックの組み合わせは、指定された機能若しくは行為を行うか又は専用のハードウェア及びコンピュータ命令の組み合わせを実行する、専用のハードウェアベースのシステムによって実装され得ることにも留意されたい。
【0055】
本明細書に記載されるシステム及び/又は方法は、ハードウェア、ファームウェア、又はハードウェア及びソフトウェアの組み合わせの様々な形態で実装され得ることが明らかであろう。当該システム及び/又は方法を実装するために使用される実際の専用の制御ハードウェア又はソフトウェアコードは、1つ以上の例示的な実施形態の限定ではない。したがって、システム及び/又は方法の動作及び挙動は、特定のソフトウェアコードを参照することなく本明細書に記載されており、ソフトウェア及びハードウェアは、本明細書の説明に基づいてシステム及び/又は方法を実装するように設計され得ることが理解される。