[go: up one dir, main page]

JP2022550058A - Safety analysis framework - Google Patents

Safety analysis framework Download PDF

Info

Publication number
JP2022550058A
JP2022550058A JP2022519120A JP2022519120A JP2022550058A JP 2022550058 A JP2022550058 A JP 2022550058A JP 2022519120 A JP2022519120 A JP 2022519120A JP 2022519120 A JP2022519120 A JP 2022519120A JP 2022550058 A JP2022550058 A JP 2022550058A
Authority
JP
Japan
Prior art keywords
scenario
data
vehicle
parameterized
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2022519120A
Other languages
Japanese (ja)
Other versions
JPWO2021061488A5 (en
JP7637673B2 (en
Inventor
バグシック ヘリット
スコット クレゴ アンドリュー
ジスラン ドゥ アントワーヌ
リアソフ ロディン
ウィリアム ベイジー フィルビン ジェームズ
ウィマーショフ マーク
クリスチャン レシュカ アンドレアス
ガジャーネン レゲ アシュトシュ
アヌラーグ モダラバラサ サイ
Original Assignee
ズークス インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US16/586,838 external-priority patent/US11625513B2/en
Priority claimed from US16/586,853 external-priority patent/US11351995B2/en
Application filed by ズークス インコーポレイテッド filed Critical ズークス インコーポレイテッド
Publication of JP2022550058A publication Critical patent/JP2022550058A/en
Publication of JPWO2021061488A5 publication Critical patent/JPWO2021061488A5/ja
Application granted granted Critical
Publication of JP7637673B2 publication Critical patent/JP7637673B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3696Methods or tools to render software testable
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/161Decentralised systems, e.g. inter-vehicle communication
    • G08G1/163Decentralised systems, e.g. inter-vehicle communication involving continuous checking
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/165Anti-collision systems for passive traffic, e.g. including static obstacles, trees
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/166Anti-collision systems for active traffic, e.g. moving vehicles, pedestrians, bikes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Traffic Control Systems (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)

Abstract

車両コントローラに関連付けられた安全性メトリックを決定するための技術が本明細書で論じられる。複雑なシステム(検査不可能の可能性がある)が安全に動作可能かどうかを決定するために、さまざまな運用体制(シナリオ)を、運用データに基づいて識別し、シナリオパラメータに関連付けて調整できる。そのようなシステムの安全な動作を検証するために、シナリオを検査のために識別し得る。システムのサブシステムのエラーメトリックを定量化できる。エラーメトリックを、他のシステム/サブシステムの確率的なエラーに加えて、シナリオに導入できる。シナリオパラメータはまた摂動を与えられ得る。任意の多数のそのような摂動をシミュレーションでインスタンス化して、例えば、車両コントローラをテストできる。車両コントローラに関連付けられた安全性メトリックを、シミュレーション、ならびに任意の障害の原因に基づいて決定できる。Techniques for determining safety metrics associated with vehicle controllers are discussed herein. Various operating regimes (scenarios) can be identified based on operational data and adjusted in relation to scenario parameters to determine whether complex systems (which may be untestable) can operate safely. . Scenarios may be identified for testing in order to verify the safe operation of such systems. Ability to quantify error metrics for system subsystems. Error metrics can be introduced into scenarios in addition to other system/subsystem probabilistic errors. Scenario parameters can also be perturbed. Any number of such perturbations can be instantiated in a simulation to test, for example, a vehicle controller. A safety metric associated with the vehicle controller can be determined based on the simulation as well as the cause of any faults.

Description

本発明は、安全性分析フレームワークに関する。 The present invention relates to a safety analysis framework.

[関連出願]
この特許出願は、2019年9月27日に出願されたシリアル番号16/586,838の「SAFETY ANALYSIS FRAMEWORK」と題された米国実用特許出願の優先権を主張し、および2019年9月27日に出願されたシリアル番号16/586,853の「ERROR MODELING FRAMEWORK」と題された米国実用特許出願の優先権を主張する。出願シリアル番号16/586,838および16/586,853は、参照により本明細書に完全に組み込まれる。
[Related Application]
This patent application claims priority to a U.S. utility patent application entitled "SAFETY ANALYSIS FRAMEWORK" with serial number 16/586,838 filed on September 27, 2019 and No. 16/586,853, entitled "ERROR MODELING FRAMEWORK," filed in U.S. Utility Patent Application No. 16/586,853. Application Serial Nos. 16/586,838 and 16/586,853 are fully incorporated herein by reference.

自律車両は、自律車両コントローラを使用して、環境を通して自律車両をガイドできる。例えば、自律車両コントローラは、計画方法、装置、およびシステムを使用して、駆動経路を決定し、動的オブジェクト(例えば、車両、歩行者、動物など)および静的オブジェクト(例えば、建物、標識、停滞車両など)を含む環境を通して自律車両をガイドできる。しかし、乗員の安全を確実にするために、コントローラの安全性を検証することが重要である。 An autonomous vehicle can use an autonomous vehicle controller to guide the autonomous vehicle through the environment. For example, autonomous vehicle controllers use planning methods, devices, and systems to determine driving paths, and control dynamic objects (e.g., vehicles, pedestrians, animals, etc.) and static objects (e.g., buildings, signs, It can guide an autonomous vehicle through an environment, including stationary vehicles, etc.). However, it is important to verify the safety of the controller to ensure the safety of the occupants.

詳細な説明は添付の図面を参照して説明される。図面において、参照番号の左端の数字は参照番号が最初に現れる図を特定している。異なる図面における同じ参照番号の使用は類似または同一のコンポーネントまたは特徴を示す。 The detailed description is described with reference to the accompanying drawings. In the drawings, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The use of the same reference numbers in different drawings indicates similar or identical components or features.

図1は、パラメータ化シナリオに基づいて、車両コントローラに関連付けられた車両性能データを生成することを示している。FIG. 1 illustrates generating vehicle performance data associated with a vehicle controller based on a parameterized scenario. 図2は、車両によって生成されたログデータに少なくとも部分的に基づいてシナリオデータを生成するコンピューティングデバイスを示しており、シナリオデータはシナリオの1つまたは複数のバリエーションを示している。FIG. 2 illustrates a computing device that generates scenario data based at least in part on log data generated by a vehicle, where the scenario data indicates one or more variations of the scenario. 図3は、車両データおよびグラウンドトゥルースデータに少なくとも部分的に基づいてエラーモデルデータを生成することを示している。FIG. 3 illustrates generating error model data based at least in part on vehicle data and ground truth data. 図4は、シミュレートされた環境に関連付けられたエラーまたは不確実性の少なくとも1つを提供することによって、シミュレーションに摂動を与えるためにエラーモデルデータを使用することを示している。FIG. 4 illustrates using error model data to perturb the simulation by providing at least one of the errors or uncertainties associated with the simulated environment. 図5は、車両によって生成されたログデータおよびグラウンドトゥルースデータに少なくとも部分的に基づいて知覚エラーモデルデータを生成するコンピューティングデバイスを示している。FIG. 5 illustrates a computing device that generates perceptual error model data based at least in part on log data and ground truth data generated by a vehicle. 図6は、パラメータ化シナリオデータに少なくとも部分的に基づいてシミュレーションデータを生成し、シミュレーションデータに少なくとも部分的に基づいて安全性メトリックデータを生成するコンピューティングデバイスを示している。FIG. 6 illustrates a computing device that generates simulation data based at least in part on the parameterized scenario data and generates safety metric data based at least in part on the simulation data. 図7は、本明細書で説明される技法を実装するための例示的なシステムのブロック図を示す。FIG. 7 shows a block diagram of an exemplary system for implementing the techniques described herein. 図8は、本開示の例による、車両コントローラに関連付けられた安全性メトリックを決定するための例示的なプロセスのフロー図を示す。FIG. 8 depicts a flow diagram of an exemplary process for determining safety metrics associated with a vehicle controller, according to examples of this disclosure. 図9は、自律車両のサブシステムに関連付けられた統計モデルを決定するための例示的なプロセスのフロー図を示している。FIG. 9 depicts a flow diagram of an exemplary process for determining statistical models associated with subsystems of an autonomous vehicle.

本明細書に記載される技術は、システムの性能メトリックを決定する様々な態様を対象とする。本明細書で説明される少なくともいくつかの例では、そのようなパフォーマンスメトリックを、例えば、他のパフォーマンスメトリックの決定と併せてシミュレーションを使用して決定し得る。シミュレーションを使用して、車両(例えば、自律車両)上で実行されるソフトウェア(例えば、車両コントローラ)を検証し、安全性メトリックを収集して、ソフトウェアがさまざまなシナリオでそのような車両を安全に制御することが可能であることを確実にできる。追加または代替の例では、シミュレーションを使用して、自律コントローラを使用する自律車両の制約について学習できる。例えば、シミュレーションを使用して、路面のコンディション、周囲のノイズ、故障したコンポーネントなどを考慮して、自律車両の動作空間(例えば、自律コントローラが自律車両を効果的に制御するエンベロープ)を理解できる。シミュレーションはまた、自律車両の動作および設計を改善するためのフィードバックを生成するのに有用であり得る。例えば、いくつかの例では、シミュレーションは、自律コントローラにおいて必要とされる冗長性の量、またはシミュレーションを通じて学習されることに基づいて自律コントローラの挙動を修正する方法を決定するために有用であり得る。さらに、追加または代替の例では、シミュレーションは、自律車両上のセンサの配置を最適化するなど、自律車両のハードウェア設計を通知するのに有用であり得る。 The techniques described herein are directed to various aspects of determining system performance metrics. In at least some examples described herein, such performance metrics may be determined using simulations in conjunction with determining other performance metrics, for example. Simulations are used to validate software (e.g. vehicle controllers) running on vehicles (e.g. autonomous vehicles) and collect safety metrics to determine how the software can safely operate such vehicles in various scenarios. You can be sure that you can control it. In an additional or alternative example, simulation can be used to learn about the constraints of autonomous vehicles using autonomous controllers. For example, simulations can be used to understand the operating space of an autonomous vehicle (eg, the envelope within which an autonomous controller effectively controls the autonomous vehicle) considering road conditions, ambient noise, failed components, etc. Simulation can also be useful in generating feedback for improving the operation and design of autonomous vehicles. For example, in some instances, simulation may be useful for determining the amount of redundancy required in the autonomous controller or how to modify the behavior of the autonomous controller based on what is learned through simulation. . Further, in additional or alternative examples, simulations may be useful in informing the hardware design of autonomous vehicles, such as optimizing the placement of sensors on autonomous vehicles.

シミュレーション環境を作成して、テストおよび検証を実行する場合、様々な具体的な例で環境を具体的に列挙することが可能である。そのような環境の各インスタンス化は一意であり、定義できる。全ての可能性のあるシナリオを手動で列挙することは過剰な時間を必要とする可能性があり、全ての可能性のあるシナリオが構築されていない場合、さまざまなシナリオがテストされない可能性がある。シナリオパラメータを使用して、シナリオ内のオブジェクトの特性および/または属性をパラメータ化し、シナリオのバリエーションを提供できる。 When creating a simulation environment to perform testing and verification, it is possible to specifically enumerate the environment with various specific examples. Each instantiation of such an environment is unique and definable. Manually enumerating all possible scenarios can take excessive time, and different scenarios may not be tested if all possible scenarios are not constructed. . Scenario parameters can be used to parameterize properties and/or attributes of objects within a scenario to provide scenario variations.

例えば、車両または複数の車両は、環境を横断し、環境に関連付けられたログデータを生成できる。ログデータは、車両の1つまたは複数のセンサによってキャプチャされたセンサデータ、車両に搭載された1つまたは複数のシステムによって識別された(または後処理段階で生成された)オブジェクトを示す知覚データ、オブジェクトの意図を示す予測データ(記録中またはその後に生成されたかどうか)、および/または車両によって生成された診断情報、軌道情報、および他の情報を示すステータスデータ、を含むことができる。車両はネットワークを介して、ログデータを格納するデータベースにおよび/またはログデータを分析するコンピューティングデバイスに、ログデータを送信できる。 For example, a vehicle or vehicles can traverse an environment and generate log data associated with the environment. Log data includes sensor data captured by one or more sensors of the vehicle, sensory data indicative of objects identified (or generated in a post-processing stage) by one or more systems onboard the vehicle, It may include predictive data indicating object intent (whether generated during or after recording), and/or status data indicating diagnostic information, trajectory information, and other information generated by the vehicle. The vehicle can transmit log data over the network to a database that stores the log data and/or to a computing device that analyzes the log data.

コンピューティングデバイスは、ログデータに基づいて、様々なシナリオ、様々なシナリオの頻度、および様々なシナリオに関連付けられた環境の領域を決定できる。いくつかの例では、コンピューティングデバイスは、ログデータ内に表される類似のシナリオをグループ化できる。例えば、シナリオを、例えば、k-meansクラスタリングを使用して、および/または環境のパラメータ(例えば、昼間、夜間、降水量、車両の位置/速度、オブジェクトの位置/速度、道路区分など)間の加重距離(例えば、ユークリッド)を評価することでグループ化できる。上述したように、類似または同様のシナリオをクラスタリングすることは、冗長なシミュレーションデータ/結果をもたらすほぼ類似のシナリオにおいて自律車両をシミュレートするのではなく、独自のシナリオで自律コントローラをシミュレートすることによって、環境内の自律コントローラをシミュレートするために必要な計算リソースの量を削減できる。理解できるように、自律コントローラは、同様のシナリオにおいて同様に実行することが期待され得る(および/または明らかに実行され得る)。 Based on the log data, the computing device can determine different scenarios, frequencies of different scenarios, and areas of the environment associated with different scenarios. In some examples, the computing device can group similar scenarios represented in the log data. For example, scenarios can be analyzed using, for example, k-means clustering and/or between parameters of the environment (e.g., daytime, nighttime, precipitation, vehicle position/speed, object position/speed, road segment, etc.) Grouping can be done by evaluating weighted distances (eg Euclidean). As mentioned above, clustering similar or similar scenarios can help simulate an autonomous controller in its own scenario, rather than simulating an autonomous vehicle in a nearly similar scenario, which would result in redundant simulation data/results. reduces the amount of computational resources required to simulate autonomous controllers in the environment. As can be appreciated, autonomous controllers may be expected to perform similarly (and/or may apparently perform) in similar scenarios.

例えば、コンピューティングデバイスは、ログデータに表される歩行者の数に基づいて、横断歩道に歩行者が現れる割合を決定できる。いくつかの例では、コンピューティングデバイスは、割合および自律車両を操作する時間期間に基づいて横断歩道で歩行者を検出する確率を決定できる。ログデータに基づいて、コンピューティングデバイスは、シナリオを決定し、シミュレーションにおいて使用できるシナリオに基づいてシナリオパラメータを識別できる。 For example, the computing device can determine the rate at which pedestrians appear in crosswalks based on the number of pedestrians represented in the log data. In some examples, the computing device can determine the probability of detecting a pedestrian in a crosswalk based on the percentage and the time period of operating the autonomous vehicle. Based on the log data, the computing device can determine scenarios and identify scenario parameters based on the scenarios that can be used in simulations.

いくつかの例では、シミュレーションを使用して、車両の欠陥のある(および/または不良がある)センサおよび/またはセンサデータの欠陥のある(および/または不良がある)処理に対する自律車両コントローラの応答をテストおよび検証できる。そのような例では、コンピューティングデバイスを、オブジェクトのシナリオパラメータに不整合性を導入するように構成できる。例えば、エラーモデルは、シナリオパラメータに関連付けられたエラーおよび/またはエラーパーセンテージを示すことができる。シナリオは、エラーおよび/またはエラーパーセンテージをシミュレートされたシナリオに組み込み、自律車両コントローラの応答をシミュレートできる。そのようなエラーは、限定することなく、グラウンドトゥルースデータ、関数(例えば、入力パラメータに基づくエラー)、またはパラメータを特定のエラーにマッピングする任意の他のモデルを使用した統計的集計に基づいて決定されたルックアップテーブルによって表され得る。少なくともいくつかの例では、そのようなエラーモデルは、特定のエラーを発生の確率/頻度でマッピングし得る。 In some examples, the simulation is used to determine the autonomous vehicle controller's response to defective (and/or defective) vehicle sensors and/or defective (and/or defective) processing of sensor data. can be tested and verified. In such examples, the computing device can be configured to introduce inconsistencies in the object's scenario parameters. For example, an error model can indicate errors and/or error percentages associated with scenario parameters. Scenarios can incorporate errors and/or error percentages into simulated scenarios to simulate the response of an autonomous vehicle controller. Such errors are determined based, without limitation, on statistical aggregation using ground truth data, functions (e.g., errors based on input parameters), or any other model that maps parameters to specific errors. can be represented by a lookup table. In at least some examples, such error models may map specific errors to their probability/frequency of occurrence.

例として、限定されないが、エラーモデルは、シミュレーション環境内のオブジェクトに関連付けられた速度などのシナリオパラメータがエラーパーセンテージに関連付けられていることを示すことができる。例えば、オブジェクトは、毎秒10メートルの速度でシミュレートされたシナリオ内を横断する可能性があり、エラーパーセンテージは、毎秒8メートル乃至毎秒12メートルの速度の範囲をもたらす20%である可能性がある。いくつかの例では、速度の範囲を、範囲の一部が範囲の他の部分よりも発生する可能性が高いことを示す確率分布に関連付けることができる。(例えば、毎秒8メートルと毎秒12メートルは15%の確率に関連付けられ、毎秒9メートルと毎秒11メートルは30パーセントの確率に関連付けられ、毎秒10メートルは10%の確率に関連付けられる)。 By way of example, and not limitation, an error model may indicate that scenario parameters such as velocities associated with objects in the simulated environment are associated with error percentages. For example, an object may traverse in a simulated scenario at a speed of 10 meters per second and the error percentage may be 20% resulting in a range of speeds from 8 meters per second to 12 meters per second. . In some examples, a range of velocities may be associated with a probability distribution that indicates that some parts of the range are more likely to occur than others. (For example, 8 meters per second and 12 meters per second are associated with a 15% probability, 9 meters per second and 11 meters per second are associated with a 30% probability, and 10 meters per second are associated with a 10% probability).

エラーモデルおよび/またはシナリオに基づいて、パラメータ化シナリオを生成できる。パラメータ化シナリオは、シナリオのバリエーションのセットを提供できる。したがって、パラメータ化シナリオにおいて自律車両コントローラをインスタンス化することおよびパラメータ化シナリオをシミュレートすることは、バリエーションの手動列挙を必要とせずに、シナリオの幅広いバリエーションを効率的にカバーできる。加えて、パラメータ化シナリオを実行することに少なくとも部分的に基づいて、シミュレーションデータは、自律車両コントローラがパラメータ化シナリオにどのように応答したか(または応答することになる)を示し、シミュレーションデータに少なくとも部分的に基づいて、成功した結果または失敗した結果を決定できる。 A parameterized scenario can be generated based on the error model and/or scenario. A parameterized scenario can provide a set of scenario variations. Therefore, instantiating an autonomous vehicle controller in a parameterized scenario and simulating the parameterized scenario can efficiently cover a wide variety of scenarios without requiring manual enumeration of variations. Additionally, based at least in part on executing the parameterized scenario, the simulation data indicates how the autonomous vehicle controller responded (or will respond) to the parameterized scenario, and the simulation data Based at least in part, a successful outcome or an unsuccessful outcome can be determined.

パラメータ化シナリオに関連するシミュレーションデータを集約することは、パラメータ化シナリオに関連付けられた安全性メトリックを提供できる。例えば、シミュレーションデータは、自律車両コントローラおよびパラメータ化シナリオの成功率および/または失敗率を示すことができる。いくつかの例では、成功率を満たすまたは超えることは自律車両コントローラの検証の成功を示すことができ、これは、その後、さらなる車両制御および動作のために車両によってダウンロードされる(またはそうでなければ転送される)ことができる。 Aggregating simulation data associated with parameterized scenarios can provide safety metrics associated with the parameterized scenarios. For example, simulation data can indicate success and/or failure rates of autonomous vehicle controllers and parameterized scenarios. In some examples, meeting or exceeding the success rate can indicate successful verification of the autonomous vehicle controller, which is then downloaded by the vehicle (or otherwise) for further vehicle control and operation. forwarded).

例えば、パラメータ化シナリオは、結果に関連付けることができる。シミュレーションデータは、自律車両コントローラが結果に一貫してまたは一貫せずに応答したことを示すことができる。例として、限定されないが、パラメータ化シナリオは、自律車両コントローラによって制御される車両がある速度で横断する、および車両の前方にあるオブジェクトの前で停止アクションを実行することを含むシミュレーション環境を表すことができる。速度を車両の速度の範囲を示すシナリオパラメータに関連付けることができる。パラメータ化シナリオは、速度の範囲に少なくとも部分的に基づいてシミュレートすることができ、車両が停止アクションを完了したときの車両とオブジェクトとの間の距離を示すシミュレーションデータを生成できる。パラメータ化シナリオは、車両とオブジェクトとの間の距離が距離閾値を満たす、または超えることを示す結果に関連付けることができる。シミュレーションデータおよびシナリオパラメータに基づいて、成功率は、車両が停止アクションを完了した合計回数と比較して、車両が停止アクションを完了したときの車両とオブジェクトとの間の距離が距離閾値を満たすまたは超える回数を示すことができる。 For example, parameterized scenarios can be associated with outcomes. Simulation data may indicate that the autonomous vehicle controller responded consistently or inconsistently to the results. By way of example, and not limitation, a parameterized scenario may represent a simulated environment that includes a vehicle controlled by an autonomous vehicle controller traversing at some speed and performing a stopping action in front of an object in front of the vehicle. can be done. Velocity can be associated with a scenario parameter that indicates a range of vehicle velocities. A parameterized scenario can be simulated based at least in part on the range of velocities and can generate simulation data indicative of the distance between the vehicle and the object when the vehicle completes the stopping action. A parameterized scenario can be associated with results indicating that the distance between the vehicle and the object meets or exceeds a distance threshold. Based on the simulation data and scenario parameters, the success rate is compared to the total number of times the vehicle completes the stop action, and the distance between the vehicle and the object when the vehicle completes the stop action satisfies the distance threshold or The number of times exceeded can be indicated.

本明細書に記載の技術は、様々な計算効率を提供する。例えば、本明細書に記載の技術を使用することによって、コンピューティングデバイスが必要とする計算リソースはより少なくなり、複数のシミュレートされたシナリオを、従来の技術を介して利用可能であるものよりも速く生成できる。従来の技術はスケーラブルではない。例えば、自律車両に搭載されたシステム(例えば、AIスタックの1つまたは複数のコンポーネント)のトレーニング、テスト、および/または検証する(例えば、そのような自律車両が対応する新しい実際の環境に配備される前に)のに必要とされる数の、固有のシミュレートされた環境のセットを生成することは、非常に長い時間がかかる可能性があり、これにより、実際のシナリオおよび/または環境に進入する前に、自律車両に搭載されたそのようなシステム(例えば、AIスタックの1つまたは複数のコンポーネント)をトレーニング、テスト、および/または検証する機能が制限される。本明細書に記載の技術は、実際の環境から収集されたセンサデータを活用し、そのデータを追加のデータで補足して、従来の技術で利用可能なものよりも実質的に正確なシミュレートされた環境をより効率的に生成する(例えば、対応する実際の環境に対して)という点で、従来にない。さらに、シナリオの様々な様態など、本明細書で説明する技法は、従来の技法で利用可能なものよりも少ない時間および少ない計算リソースで、多くのスケーラブルなシミュレートされたシナリオの生成を可能にする。 The techniques described herein provide various computational efficiencies. For example, by using the techniques described herein, a computing device may require fewer computational resources, enabling multiple simulated scenarios than is available via conventional techniques. can be generated quickly. Conventional technology is not scalable. For example, training, testing, and/or validating a system (e.g., one or more components of an AI stack) onboard an autonomous vehicle (e.g., deploying it in a new real-world environment to which such an autonomous vehicle is addressed). Generating the required number of sets of unique simulated environments (before testing) can take a significant amount of time, which makes it difficult to adapt to real-life scenarios and/or environments. Limited ability to train, test, and/or validate such systems (eg, one or more components of an AI stack) onboard an autonomous vehicle prior to entry. The techniques described herein leverage sensor data collected from real environments and supplement that data with additional data to provide substantially more accurate simulations than are available with prior art techniques. It is unconventional in that it more efficiently generates simulated environments (eg, relative to corresponding real environments). Furthermore, the techniques described herein, such as the various aspects of scenarios, enable the generation of many scalable simulated scenarios in less time and less computational resources than is available with conventional techniques. do.

さらに、本明細書に記載される技術は、安全性の向上を対象とする。すなわち、本明細書に記載される生成技術からもたらされるシミュレートされた環境を、自律車両に搭載されたシステムをテスト、トレーニング、および検証するために使用し、そのようなシステムが、実際の環境に展開されたときに自律車両を安全に動作させることができることを確実にできる。すなわち、本明細書に記載される生成技術からもたらされるシミュレートされた環境は、自律車両コントローラのプランナシステムおよび/または予測システムをテスト、トレーニング、および検証するために使用することができ、これは、自律車両によって使用されて、自律車両を実際の環境内の軌道に沿ってナビゲートできる。したがって、本明細書に記載される技術によって可能となるそのようなトレーニング、テスト、および検証は、自律車両が実際の環境で安全に動作できることを確実にする機会を提供できる。したがって、本明細書に記載される技術は、安全性を向上させ、ナビゲーションに影響を与える。 Additionally, the technology described herein is directed to improving safety. That is, the simulated environments resulting from the generation techniques described herein are used to test, train, and validate systems on board autonomous vehicles, and such systems are used in real-world environments. can ensure that autonomous vehicles can operate safely when deployed in That is, the simulated environment resulting from the generation techniques described herein can be used to test, train, and validate planner and/or predictive systems of autonomous vehicle controllers, which , can be used by autonomous vehicles to navigate them along trajectories in real environments. Accordingly, such training, testing, and validation enabled by the techniques described herein can provide an opportunity to ensure that autonomous vehicles can operate safely in real-world environments. Accordingly, the techniques described herein improve safety and affect navigation.

図1は、パラメータ化シナリオに基づいて、車両コントローラに関連付けられた車両性能データを生成する例100を示している。シナリオを生成するために、入力データ102を使用できる。入力データ102は、車両データ104および/または追加の状況データ106を含むことができる。車両データ104は、環境を通り横断する車両によってキャプチャされるログデータを含むことができる。上述したように、ログデータを使用して、自律コントローラをシミュレートするためのシナリオを識別できる。例示の目的で、車両は、ドライバー(または乗員)の車両の常時制御を期待せず、全体行程の全ての安全上重要な機能を実行可能な車両について説明する米国国家高速道路交通安全局が発行するレベル5分類に従って動作するように構成された自律車両とすることができる。このような例では、車両は全ての駐車機能を含む開始から停止までの全ての機能を制御するように構成できるので、無人化できる。これは単なる例であり、本明細書で説明するシステムおよび方法は、ドライバーが常に手動で制御する必要がある車両から、部分的または完全に自律的に制御されているものまでを含む任意の地上、空中、または水上車両に組み込むことができる。 FIG. 1 shows an example 100 of generating vehicle performance data associated with a vehicle controller based on a parameterized scenario. Input data 102 can be used to generate scenarios. Input data 102 may include vehicle data 104 and/or additional context data 106 . Vehicle data 104 may include log data captured by vehicles traversing through the environment. As noted above, log data can be used to identify scenarios for simulating autonomous controllers. For the purposes of illustration, the vehicle is published by the U.S. National Highway Traffic Safety Administration describing a vehicle capable of performing all safety-critical functions throughout its journey without the expectation of constant control of the vehicle by the driver (or occupant). It may be an autonomous vehicle configured to operate according to a level 5 classification that In such instances, the vehicle can be configured to control all functions from start to stop, including all parking functions, and thus can be unmanned. This is only an example, and the systems and methods described herein can be used on any surface, including vehicles that require manual control by the driver at all times, to those that are partially or fully autonomously controlled. , aerial or water vehicles.

車両は、知覚エンジンおよび/またはプランナを含むコンピューティングデバイスを含み、環境から収集されたセンサデータからオブジェクトを検出、識別、区分、分類、および/または追跡するなどの動作を実行することができる。例えば、歩行者、自転車/自転車乗り、オートバイ/オートバイ乗り、バス、路面電車、トラック、動物などのオブジェクトは、環境内に存在できる。 Vehicles may include computing devices that include perception engines and/or planners to perform operations such as detecting, identifying, segmenting, classifying, and/or tracking objects from sensor data collected from the environment. For example, objects such as pedestrians, cyclists/bicyclists, motorcyclists/motorcyclists, buses, trams, trucks, animals, etc. can be present in the environment.

車両が環境を通り横断するとき、センサは、環境に関連付けられたセンサデータをキャプチャできる。例えば、センサデータのいくつかを、オブジェクト(例えば、車両、自転車乗り、および/または歩行者)に関連付けることができる。いくつかの例では、センサデータを、これらに限定されないが、建物、路面、標識、障壁などを含む他のオブジェクトに関連付けることができる。したがって、いくつかの例では、センサデータを、動的オブジェクトおよび/または静的オブジェクトに関連付けることができる。動的オブジェクトを、上記のように、移動に関連付けられている(例えば、車両、オートバイ、自転車乗り、歩行者、動物など)、または環境内で移動することが可能な(例えば、駐車中の車両、立っている歩行者など)オブジェクトとすることができる。静的オブジェクトを、上述のように、例えば、建物/構造物、道路路面、道路マーカー、標識、障壁、木、歩道などの環境に関連付けられたオブジェクトとすることができる。いくつかの例では、車両コンピューティングデバイスは、バウンディングボックス、分類、区分情報などの環境内のオブジェクトに関する情報を決定できる。 As the vehicle traverses through the environment, the sensors can capture sensor data associated with the environment. For example, some of the sensor data can be associated with objects (eg, vehicles, cyclists, and/or pedestrians). In some examples, sensor data can be associated with other objects including, but not limited to, buildings, road surfaces, signs, barriers, and the like. Thus, in some examples, sensor data can be associated with dynamic and/or static objects. A dynamic object, as described above, is associated with movement (e.g., vehicles, motorcycles, cyclists, pedestrians, animals, etc.) or capable of movement within the environment (e.g., parked vehicles , a standing pedestrian, etc.). Static objects can be objects associated with the environment, such as buildings/structures, road surfaces, road markers, signs, barriers, trees, sidewalks, etc., as described above. In some examples, the vehicle computing device can determine information about objects in the environment such as bounding boxes, classifications, segmentation information, and the like.

車両コンピューティングデバイスは、センサデータを使用して車両の軌道を生成できる。いくつかの例では、車両コンピューティングデバイスはまた、車両の位置に関連付けられたポーズデータを決定できる。例えば、車両コンピューティングデバイスは、センサデータを使用して、環境内の車両の位置データ、座標データ、および/または方向データを決定できる。いくつかの例では、ポーズデータは、x-y-z座標を含むことができ、および/または車両に関連付けられたピッチ、ロール、およびヨーデータを含むことができる。 A vehicle computing device can use the sensor data to generate a trajectory for the vehicle. In some examples, the vehicle computing device can also determine pose data associated with the position of the vehicle. For example, a vehicle computing device can use sensor data to determine position, coordinate, and/or orientation data for the vehicle within the environment. In some examples, the pose data may include xyz coordinates and/or may include pitch, roll, and yaw data associated with the vehicle.

車両コンピューティングデバイスは、上述のデータを含むことができる車両データ104を生成できる。例えば、車両データ104は、センサデータ、知覚データ、計画データ、車両ステータスデータ、速度データ、意図データ、および/または車両コンピューティングデバイスによって生成された他のデータを含むことができる。いくつかの例では、センサデータは、飛行時間センサ(time-of-flight sensors)、位置センサ(GPS、コンパスなど)、慣性センサ(慣性測定装置(IMU)、加速度計、磁力計、ジャイロスコープなど)、lidarセンサ、radarセンサ、sonarセンサ、赤外線センサ、カメラ(例えば、RGB、IR、強度、深度など)、マイクセンサ、環境センサ(例えば、温度センサ、湿度センサ、光センサ、圧力センサなど)、超音波トランスデューサー、ホイールエンコーダなどのようなセンサによってキャプチャされたデータを含むことができる。センサデータは、そのようなセンサによってキャプチャされる、飛行時間データ(time-of-flight data)、位置データ、lidarデータ、radarデータ、sonarデータ、画像データ、オーディオデータなどのデータとすることができる。そのようなログデータは、これらに限定されないが、オブジェクトの検出を示すメッセージ、オブジェクトトラック、将来のオブジェクトの位置の予測、そのような検出に応答して生成された複数の軌道、コマンドを実行するために使用される1つまたは複数のシステムまたはサブシステムに渡される制御信号などを含む、車両の任意の1つまたは複数のシステムまたはサブシステムによる中間出力をさらに含み得る。いくつかの例では、車両データ104は、車両コンピューティングデバイスによって生成された他のデータに関連付けられた時間データを含むことができる。 The vehicle computing device can generate vehicle data 104, which can include the data described above. For example, vehicle data 104 may include sensor data, perception data, planning data, vehicle status data, speed data, intent data, and/or other data generated by vehicle computing devices. In some examples, sensor data may include time-of-flight sensors, position sensors (GPS, compass, etc.), inertial sensors (inertial measurement units (IMUs), accelerometers, magnetometers, gyroscopes, etc.). ), lidar sensor, radar sensor, sonar sensor, infrared sensor, camera (e.g., RGB, IR, intensity, depth, etc.), microphone sensor, environment sensor (e.g., temperature sensor, humidity sensor, light sensor, pressure sensor, etc.), It can include data captured by sensors such as ultrasonic transducers, wheel encoders, and the like. Sensor data can be data captured by such sensors, such as time-of-flight data, position data, lidar data, radar data, sonar data, image data, audio data, etc. . Such log data includes, but is not limited to, messages indicating the detection of objects, object tracks, predictions of future object locations, multiple trajectories generated in response to such detections, command execution It may further include intermediate output by any one or more systems or subsystems of the vehicle, including control signals passed to one or more systems or subsystems used for the vehicle. In some examples, vehicle data 104 may include temporal data associated with other data generated by the vehicle computing device.

いくつかの例では、入力データ102を使用してシナリオを生成できる。入力データ102は、車両データ104および/または追加の状況データ106を含むことができる。例として、限定されないが、追加の状況データ106は、第三者ソースからのインシデントレポートなどのデータを含むことができる。第三者のソースは、法執行機関、自動車部門、および/または、アクティビティおよび/またはインシデントのレポートを公開および/または格納できる安全管理を含むことができる。例えば、レポートは、アクティビティのタイプ(例えば、道路上の破片、局所的な洪水などの交通危険)、場所、および/またはアクティビティの説明を含むことができる。例として、限定されないが、レポートは、ドライバーが、車両を操作している間に、毎秒15メートルの速度で横断中に、車道の倒れた木の枝に当たったことを説明できる。レポートを使用して、シミュレーションにおいて使用できる同様のシナリオを生成できる。 In some examples, the input data 102 can be used to generate scenarios. Input data 102 may include vehicle data 104 and/or additional context data 106 . By way of example, and not limitation, additional context data 106 may include data such as incident reports from third party sources. Third-party sources may include law enforcement agencies, the motor vehicle department, and/or security administration, which may publish and/or store reports of activities and/or incidents. For example, the report may include the type of activity (eg, debris on the road, traffic hazards such as localized flooding), location, and/or description of the activity. By way of example, and not limitation, a report may describe that a driver, while maneuvering a vehicle, hit a fallen tree branch in the roadway while crossing at a speed of 15 meters per second. Reports can be used to generate similar scenarios that can be used in simulations.

いくつかの例では、追加の状況データ106はキャプチャされたセンサデータ(例えば、画像データ)を含むことができる。例として、限定されないが、車両のドライバーは、ドライバーが車両を操作する間、カメラを使用して画像データをキャプチャできる。いくつかの例では、画像データは、インシデントなどのアクティビティをキャプチャできる。例として、限定されないが、ドライバーは、ダッシュボードカメラ(例えば、車両の内部ダッシュボードに搭載されたカメラ)を使用して、ドライバーが車両を操作している間に画像データをキャプチャできる。ドライバーが車両を操作するとき、動物は車道を横切って走る可能性があり、ドライバーはすぐにブレーキをかけて車両を遅くする場合がある。ダッシュボードカメラは、車道を横切って走っている動物の画像データをキャプチャでき、車両は減速する。画像データを使用して、車道を横切って走る動物のシナリオを生成できる。上述したように、シナリオに関連付けられた確率を決定し、確率閾値を満たすまたは超える確率に基づいてシミュレーションのためのシナリオを識別できる。例として、限定されないが、シナリオに遭遇する可能性が0.001%未満である場合、0.001%の確率閾値を使用することができ、次いで、シミュレーションのために、確率の高いシナリオに優先順位を付けて、確率の高いシナリオに関連付けられた安全性メトリックを決定できる。 In some examples, additional context data 106 may include captured sensor data (eg, image data). By way of example, and not limitation, a vehicle driver may use a camera to capture image data while the driver operates the vehicle. In some examples, image data can capture activities such as incidents. By way of example, and not limitation, a driver can use a dashboard camera (eg, a camera mounted on the vehicle's internal dashboard) to capture image data while the driver is operating the vehicle. As the driver maneuvers the vehicle, animals may run across the roadway and the driver may quickly apply the brakes to slow the vehicle. A dashboard camera can capture image data of an animal running across the roadway, slowing the vehicle down. Image data can be used to generate scenarios of animals running across the roadway. As described above, probabilities associated with scenarios can be determined and scenarios can be identified for simulation based on the probabilities of meeting or exceeding probability thresholds. As an example, and not by way of limitation, if the probability of encountering a scenario is less than 0.001%, a probability threshold of 0.001% can be used, and then prioritize scenarios with higher probability for simulation. They can be ranked to determine the safety metric associated with the probable scenarios.

入力データ102、例えば、車両データ104および/または追加の状況データ106、はシナリオエディタコンポーネント108によって使用されて、初期シナリオ110を生成できる。例えば、入力データ102は、合成環境内の入力データ102の少なくとも一部を表す合成環境を生成することができるシナリオエディタコンポーネント108に入力することができる。初期シナリオ110および車両データ104に含めることができる車両によって生成されたデータなどの生成シナリオの例は、例えば、「Scenario Editor and Simulator」と題され2019年4月23日に出願された米国特許出願第16/392,094号に見出すことができ、これは参照によりその全体が組み込まれる。 Input data 102 , such as vehicle data 104 and/or additional situation data 106 , can be used by scenario editor component 108 to generate initial scenario 110 . For example, input data 102 can be input to scenario editor component 108 that can generate a synthesized environment that represents at least a portion of input data 102 within the synthesized environment. Examples of generated scenarios, such as vehicle-generated data that can be included in initial scenario 110 and vehicle data 104, are found in, for example, U.S. patent application entitled "Scenario Editor and Simulator," filed Apr. 23, 2019. 16/392,094, which is incorporated by reference in its entirety.

シナリオエディタコンポーネント108を、入力データ102をスキャンして、入力データ102に表される1つまたは複数のシナリオを識別するように構成できる。例として、限定されないが、シナリオエディタコンポーネント108は、入力データ102の一部が、通行権なし(例えば、横断歩道なし、歩行表示のない交差点など)で通りを横切る歩行者を表すと決定できる。シナリオエディタコンポーネント108は、これをシナリオ(例えば、ジェイウォーキングパラメータ)として識別し、シナリオを、例えば、ジェイウォーキングシナリオとしてラベル付け(および/または分類)できる。例えば、シナリオエディタコンポーネント108は、アクションを定義するルールを使用して、初期シナリオ110を生成できる。例として、限定されないが、ルールは、横断歩道に関連付けられていない領域内の道路を横切る歩行者がジェイウォーカー(a jaywalker)であることを定義できる。いくつかの例では、シナリオエディタコンポーネント108は、シナリオエディタコンポーネント108のユーザからラベルデータを受信して、入力データ102の一部をラベルに関連付け、初期シナリオ110を生成できる。 Scenario editor component 108 may be configured to scan input data 102 and identify one or more scenarios represented in input data 102 . By way of example, and not limitation, scenario editor component 108 may determine that a portion of input data 102 represents a pedestrian crossing a street with no right-of-way (eg, no crosswalk, no pedestrian sign, etc.). The scenario editor component 108 can identify this as a scenario (eg, jaywalking parameters) and label (and/or classify) the scenario as, for example, a jaywalking scenario. For example, scenario editor component 108 can generate initial scenario 110 using rules that define actions. By way of example, and not limitation, a rule may define that a pedestrian crossing a road in an area not associated with a crosswalk is a jaywalker. In some examples, scenario editor component 108 can receive label data from a user of scenario editor component 108 and associate portions of input data 102 with labels to generate initial scenario 110 .

いくつかの例では、シナリオエディタコンポーネント108は、入力データ102の他の部分をスキャンし、類似のシナリオを識別し、類似のシナリオに同じジェイウォーキングラベルでラベル付けできる。いくつかの例では、シナリオエディタコンポーネント108は、既存のラベルに対応しない(または除外される)シナリオを識別し、これらのシナリオの新しいラベルを生成できる。いくつかの例では、シナリオエディタコンポーネント108は、シナリオのライブラリを生成し、シナリオのライブラリをシナリオエディタコンポーネント108内のデータベースに格納できる。例として、限定されないが、シナリオのライブラリは、横断歩道シナリオ、マージシナリオ、車線変更シナリオなどを含むことができる。 In some examples, scenario editor component 108 may scan other portions of input data 102 to identify similar scenarios and label similar scenarios with the same jaywalking label. In some examples, the scenario editor component 108 can identify scenarios that do not correspond to (or are excluded from) existing labels and generate new labels for those scenarios. In some examples, scenario editor component 108 can generate a library of scenarios and store the library of scenarios in a database within scenario editor component 108 . By way of example, and not limitation, the library of scenarios may include crosswalk scenarios, merge scenarios, lane change scenarios, and the like.

少なくともいくつかの例では、そのような初期シナリオ110は手動で指定され得る。例えば、1人または複数のユーザが、テストすべき特定のシナリオを指定して、そのようなシナリオを実行するときに、以前にシナリオに遭遇したことが(またはめったに)ないにもかかわらず、車両が安全に動作できることを確実にし得る。 In at least some examples, such initial scenarios 110 may be manually specified. For example, when one or more users specify a particular scenario to test and run such a scenario, the vehicle may be tested even though it has never (or rarely) encountered the scenario before. can ensure that it can operate safely.

パラメータコンポーネント112は、シナリオエディタコンポーネント108によって識別された初期シナリオ110に関連付けられたシナリオパラメータを決定できる。例として、限定されないが、パラメータコンポーネント112は、ジェイウォーキングシナリオを分析し、歩行者の位置、歩行者のポーズ、歩行者のサイズ、歩行者の速度、歩行者の足跡、車両と歩行者の間の距離、車両の速度、道路の幅などを含むジェイウォーキングシナリオに関連付けられたシナリオパラメータを決定できる。 A parameters component 112 can determine scenario parameters associated with the initial scenario 110 identified by the scenario editor component 108 . By way of example, and not limitation, the parameters component 112 may analyze a jay-walking scenario to determine pedestrian position, pedestrian pose, pedestrian size, pedestrian speed, pedestrian footprint, distance between vehicle and pedestrian. Scenario parameters associated with the jaywalking scenario can be determined, including distance, vehicle speed, road width, and the like.

いくつかの例では、パラメータコンポーネント112は、シナリオパラメータに関連付けられた範囲または値のセットを決定できる。例えば、パラメータコンポーネント112は、初期シナリオ110内に表されるオブジェクト(例えば、歩行者)に関連付けられた分類を決定し、入力データ102内の同じ分類の他のオブジェクトを決定できる。次いで、パラメータコンポーネント112は、初期シナリオ110によって表されるように、シナリオパラメータに関連付けられた値の範囲を決定できる。例として、限定されないが、シナリオパラメータは、歩行者が毎秒0.5乃至1.5メートルの範囲の速度を有することができることを示すことができる。 In some examples, the parameter component 112 can determine ranges or sets of values associated with scenario parameters. For example, parameter component 112 can determine the classification associated with an object represented in initial scenario 110 (eg, a pedestrian) and determine other objects in input data 102 of the same classification. Parameter component 112 can then determine the range of values associated with the scenario parameters, as represented by initial scenario 110 . By way of example, and not limitation, scenario parameters may indicate that a pedestrian may have a velocity in the range of 0.5 to 1.5 meters per second.

いくつかの例では、パラメータコンポーネント112は、シナリオパラメータに関連付けられた確率を決定できる。例として、限定されないが、パラメータコンポーネント112は、ガウス分布(正規分布とも呼ばれる)などの確率分布をシナリオパラメータに関連付けることができる。いくつかの例では、パラメータコンポーネント112は、入力データ102に基づいて、シナリオパラメータに関連付けられた確率を決定できる。上述したように、パラメータコンポーネント112は、入力データ102内に表されるオブジェクトに関連付けられた分類を決定し、入力データ102および/または他のログデータ内の同じ分類の他のオブジェクトを決定できる。次いで、パラメータコンポーネント112は、入力データ102および/または他のログデータによって表されるように、オブジェクトに関連付けられたシナリオパラメータの確率分布を決定できる。 In some examples, the parameter component 112 can determine probabilities associated with scenario parameters. By way of example, and not limitation, the parameters component 112 can associate probability distributions such as Gaussian distributions (also called normal distributions) with scenario parameters. In some examples, parameter component 112 can determine probabilities associated with scenario parameters based on input data 102 . As discussed above, the parameter component 112 can determine the classification associated with objects represented in the input data 102 and can determine other objects of the same classification within the input data 102 and/or other log data. The parameter component 112 can then determine probability distributions of scenario parameters associated with the objects as represented by the input data 102 and/or other log data.

例として、限定されないが、パラメータコンポーネント112は、歩行者の30%が毎秒0.3メートル未満の速度で歩いており、歩行者の30%が毎秒1.2メートルを超える速度で歩いており、および歩行者の40%が毎秒0.3乃至1.2メートルの間の速度で歩いていると、決定できる。パラメータコンポーネント112は、ジェイウォーキングシナリオの歩行者が特定の速度で歩くであろう確率として分布を使用できる。追加の例として、限定されないが、パラメータコンポーネント112は、環境を横断する車両が環境を横断する間に5%の時間でジェイウォーカーに遭遇することを示すことができる、ジェイウォーキングシナリオ確率が1%であると決定できる。いくつかの例では、自律車両コントローラのシミュレーション中に、シナリオ確率を、シナリオ確率に関連付けられたレートにてシナリオを含めるために使用することができる。 By way of example, and not limitation, the parameter component 112 may indicate that 30% of pedestrians are walking at speeds less than 0.3 meters per second, 30% of pedestrians are walking at speeds greater than 1.2 meters per second, and 40% of pedestrians walking at a speed between 0.3 and 1.2 meters per second. The parameters component 112 can use the distribution as the probability that a pedestrian in a jaywalking scenario will walk at a particular speed. As an additional example, without limitation, parameter component 112 may indicate that a vehicle traversing the environment encounters a jaywalker 5% of the time while traversing the environment, a jaywalking scenario probability of 1%. can be determined to be In some examples, scenario probabilities may be used during simulation of an autonomous vehicle controller to include scenarios at a rate associated with the scenario probabilities.

いくつかの例では、パラメータコンポーネント112は、分布に組み込まれた補完データ114を受信できる。例として、限定されないが、パラメータコンポーネント112は、車両が毎秒15メートルの速度で移動する間、歩行者が車両までの30乃至60メートルの範囲の距離を有することができることを示す、または代替的に2乃至4秒の衝突までの時間として表される、シナリオパラメータを決定できる。補完データ114(例えば、規制またはガイドライン)は、下限(パラメータ閾値とも呼ばれる)とすることができる1.5秒の衝突までの時間で、車両がシナリオに対処しなければならないことを示すことができる。パラメータコンポーネント112は、補完データ114を組み込むことができ、1.5乃至4秒の衝突までの時間(しかし、任意の時間範囲を指定できる)を有するようにシナリオパラメータを決定できる。いくつかの例では、パラメータコンポーネント112は上述の確率分布を使用して、補完データ114に関連付けられた確率を(内挿および/または外挿技法を使用して)決定できる。 In some examples, the parameter component 112 can receive supplemental data 114 embedded in the distribution. By way of example, and not limitation, the parameter component 112 indicates that a pedestrian may have a distance to the vehicle in the range of 30-60 meters while the vehicle is traveling at a speed of 15 meters per second, or alternatively Scenario parameters can be determined, expressed as time to collision of 2-4 seconds. Complementary data 114 (e.g., regulations or guidelines) may indicate that the vehicle must handle the scenario with a time-to-crash of 1.5 seconds, which can be a lower bound (also called a parameter threshold). . The parameter component 112 can incorporate the imputed data 114 and can determine scenario parameters to have a time to impact of 1.5 to 4 seconds (although any time range can be specified). In some examples, parameter component 112 can use the probability distributions described above to determine probabilities (using interpolation and/or extrapolation techniques) associated with imputed data 114 .

エラーモデルコンポーネント116は、シナリオパラメータに関連付けられたエラーを示すことができるエラーモデルを決定できる。例えば、知覚エラーモデルは、シミュレートされたオブジェクトの知覚パラメータに関連付けられた知覚エラーを生成でき、予測エラーモデルは、シミュレートされたオブジェクトの予測パラメータに関連付けられた予測エラーを生成するなどができる。いくつかの例では、車両が環境を横断するとき、センサは誤ったセンサデータを生成する可能性があり、および/または車両のコンピューティングデバイスは、知覚エラーをもたらす可能性があるセンサデータを誤って処理する可能性がある。知覚エラーをテストおよびシミュレートすることは、潜在的な知覚エラーに関連する車両の運用マージンを示すのに役立つことができる。例えば、知覚パラメータなどのシナリオパラメータは、オブジェクトのサイズまたは環境内のオブジェクトの位置の範囲を示すことができる。エラーモデルコンポーネント116は、知覚エラーモデルを使用して、オブジェクトが環境内の実際のオブジェクトよりも大きいまたは小さいことを示す車両の知覚データをもたらすことができるオブジェクトのサイズに関連付けられた潜在的なエラーを示すことができる。 Error model component 116 can determine an error model that can indicate errors associated with scenario parameters. For example, a perceptual error model can generate perceptual errors associated with the simulated object's perceptual parameters, a prediction error model can generate prediction errors associated with the simulated object's prediction parameters, and so on. . In some examples, as the vehicle traverses the environment, the sensors may generate erroneous sensor data and/or the vehicle's computing devices may erroneously generate sensor data that may result in perceptual errors. may be processed by Testing and simulating perceptual errors can help indicate vehicle operating margins associated with potential perceptual errors. For example, scenario parameters, such as perceptual parameters, can indicate the size of an object or the range of positions of an object within the environment. The error model component 116 uses the perceptual error model to identify potential errors associated with the size of objects that can yield vehicle perception data indicating that objects are larger or smaller than actual objects in the environment. can be shown.

エラーモデルコンポーネント116は、例えば、入力データ102をグラウンドトゥルースデータと比較することによって、知覚エラーモデルを決定できる。いくつかの例では、グラウンドトゥルースデータを、手動でラベル付けおよび/または他の検証された機械学習コンポーネントから決定できる。例えば、入力データ102は、センサデータおよび/または車両によって生成された知覚データを含むことができる。エラーモデルコンポーネント116は、入力データ102を、環境内のオブジェクトの実際のパラメータを示すことができるグラウンドトゥルースデータと比較できる。入力データ102をグラウンドトゥルースデータと比較することによって、エラーモデルコンポーネント116は、知覚エラーを決定できる。例として、限定されないが、入力データ102は、歩行者が1.8メートルの高さであることを示すことができ、一方、グラウンドトゥルースデータは歩行者が1.75メートルの高さであることを示し、したがって、知覚エラーモデルは約3%の知覚エラーを示すことができる(例えば、[(1.8-1.75)/1.8]*100)。 Error model component 116 can determine a perceptual error model, for example, by comparing input data 102 to ground truth data. In some examples, ground truth data can be determined from manual labeling and/or other validated machine learning components. For example, input data 102 may include sensor data and/or sensory data generated by the vehicle. The error model component 116 can compare the input data 102 with ground truth data that can indicate the actual parameters of objects in the environment. By comparing input data 102 to ground truth data, error model component 116 can determine perceptual errors. By way of example, and not limitation, the input data 102 may indicate that the pedestrian is 1.8 meters tall, while the ground truth data indicates that the pedestrian is 1.75 meters tall. , so the perceptual error model can indicate a perceptual error of about 3% (eg, [(1.8-1.75)/1.8]*100).

いくつかの例では、エラーモデルコンポーネント116は、入力データ102内に表されるオブジェクトに関連付けられた分類を決定し、入力データ102内の同じ分類の他のオブジェクトを決定できる。次いで、エラーモデルコンポーネント116は、オブジェクトのエラーの範囲に関連付けられた確率分布(エラー分布とも呼ばれる)を決定し、確率分布を初期シナリオ110内のオブジェクトに関連付けることができる。例として、限定されないが、エラーモデルコンポーネント116は、歩行者分類を伴うオブジェクトが4%乃至6%の知覚エラーを有すること、および車両分類を伴うオブジェクトが3%乃至5%の知覚エラーを有することを決定できる。いくつかの例では、エラーモデルコンポーネント116は、例えば、閾値サイズより大きいオブジェクトがエラーを有する可能性が高いまたは低い(例えば、分類において)ことを示す確率分布を決定できる。 In some examples, the error model component 116 can determine the classification associated with objects represented in the input data 102 and determine other objects within the input data 102 of the same classification. The error model component 116 can then determine a probability distribution (also referred to as an error distribution) associated with the extent of the object's error and associate the probability distribution with the objects in the initial scenario 110 . By way of example, and not limitation, the error model component 116 determines that objects with pedestrian classification have a perceptual error of 4% to 6% and objects with vehicle classification have a perceptual error of 3% to 5%. can be determined. In some examples, the error model component 116 can, for example, determine a probability distribution indicating that objects larger than a threshold size are more or less likely to have errors (eg, in classification).

いくつかの例では、パラメータコンポーネント112は、領域データ118を使用して、シナリオおよびシナリオパラメータと互換性のある環境の領域のセットを決定できる。例として、限定されないが、シナリオは、車両が毎秒15メートルの速度を有すること、歩行者が毎秒1.5メートルの速度を有すること、および車両と歩行者との間の距離が30メートルであること、を示すことができる。パラメータコンポーネント112は、シナリオに適合する環境の領域データ118に基づいて領域を決定できる。例として、限定されないが、パラメータコンポーネント112は、シナリオ内の車両の速度がスクールゾーンに関連付けられた速度制限を超える可能性があり、したがって、シナリオがスクールゾーンで有効ではないため、スクールゾーンを除外できる。しかし、そのような車両速度(例えば、15m/s)は、農地に隣接する郡道上で妥当であり得、したがって、そのような領域は、領域のセット内で考慮され得る。 In some examples, the parameter component 112 can use the region data 118 to determine the set of regions of the environment that are compatible with the scenario and scenario parameters. By way of example and not limitation, a scenario is that the vehicle has a speed of 15 meters per second, the pedestrian has a speed of 1.5 meters per second, and the distance between the vehicle and the pedestrian is 30 meters. It can be shown that The parameter component 112 can determine the region based on region data 118 of the environment that fits the scenario. By way of example, and not limitation, the parameter component 112 may exclude school zones because the speed of vehicles in the scenario may exceed the speed limit associated with the school zone and thus the scenario is not valid in the school zone. can. However, such vehicle speeds (eg, 15 m/s) may be reasonable on county roads adjacent to farmland, so such areas may be considered within the set of areas.

いくつかの例では、パラメータコンポーネント112は、環境の駆動可能領域の区分を含む領域データ118を格納できる。運転可能な路面の区分および類似の区分、ならびに区分分類および/またはステレオタイプを識別するための技術は、例えば、「Extension of Autonomous Driving Functionality to New Regions」と題され、2019年3月19日に出願された米国特許出願第16/370,696号、および「Simulating Autonomous Driving Using Map Data and Driving Data」と題され、2019年4月5日に出願された米国特許出願第16/376,842号に見出すことができ、これらは、参照によりその全体が本明細書に組み込まれる。 In some examples, parameter component 112 can store area data 118 that includes a partition of the drivable area of the environment. Techniques for identifying drivable road surface segments and similar segments, and segment classifications and/or stereotypes, for example, entitled "Extension of Autonomous Driving Functionality to New Regions", published March 19, 2019 U.S. Patent Application No. 16/370,696, filed and U.S. Patent Application No. 16/376,842, entitled "Simulating Autonomous Driving Using Map Data and Driving Data," filed April 5, 2019; , which are incorporated herein by reference in their entireties.

例えば、環境の領域データ118を区分に解析でき、同様の区分を識別できる。いくつかの例では、区分は、ジャンクション区分、例えば、交差点、合流点など、または接続道路区分、例えば、ジャンクション間の道路の長さおよび/または幅を含むことができる。例として、限定されないが、10mphの範囲内の速度制限を有する全ての2車線道路区分を、同じステレオタイプに関連付けることができる。いくつかの例では、データを個々の区分のそれぞれに関連付けることができる。例えば、ジャンクション区分は、例えば、合流点、「T」、ラウンドアバウトなどのジャンクションタイプ、ジャンクションで集合する道路の数、例えば、ジャンクションで集合する道路間の角度であるそれらの道路の相対位置、ジャンクションでの交通制御信号に関する情報、および/または他の特徴を含むことができる。接続道路区分に関連付けられたデータは、いくつかの車線、それらの車線の幅、車線のそれぞれにおける横断の方向、駐車車線の識別、道路区分の速度制限、および/または他の特徴を含むことができる。 For example, environmental region data 118 can be parsed into segments and similar segments can be identified. In some examples, the segments may include junction segments, eg, intersections, junctions, etc., or connecting road segments, eg, lengths and/or widths of roads between junctions. By way of example, and not limitation, all two-lane road segments with speed limits within the 10 mph range can be associated with the same stereotype. In some examples, data can be associated with each individual segment. For example, a junction division may be a junction type, e.g., a junction, a "T", a roundabout, the number of roads meeting at the junction, the relative position of those roads, e.g., the angle between the roads meeting at the junction, the junction may include information about traffic control signals in the , and/or other features. Data associated with connecting road segments may include a number of lanes, widths of those lanes, direction of crossing in each of the lanes, identification of parking lanes, speed limits for road segments, and/or other characteristics. can.

いくつかの例では、駆動可能な表面の区分を、区分分類または区分ステレオタイプに従ってグループ化できる。例として、限定されないが、メトリックまたは属性のいくつかの範囲に適合する一部または全てのジャンクション区分を一緒にグループ化することができる(例えば、k-meansを使用する、区分パラメータ間の加重距離(例えば、ユークリッド)を評価する、またはそうでなければ区分パラメータに基づいてそのような区分をクラスタリングする)。 In some examples, sections of drivable surfaces may be grouped according to section classifications or section stereotypes. By way of example, and not limitation, some or all junction partitions that fit some range of metrics or attributes can be grouped together (e.g., weighted distance between partition parameters using k-means (e.g. Euclidean) or otherwise cluster such partitions based on partition parameters).

同じまたは類似のステレオタイプを含むシナリオを使用して、自律車両コントローラの機能性を検証できる。例えば、自律車両は、同じまたは類似のステレオタイプにおいて、同じことを行うことが期待され得る(および/または明らかに実行され得る)。いくつかの例では、ステレオタイプの使用は、行われるべき比較の数を減少できる。例えば、同様の領域を識別することによって、有用な情報を提供できるシミュレーションシナリオの数が減る。本明細書に記載の技術は、検証およびテストのための有用な情報を提供する特定のシナリオにわたって最適化することによって、計算の複雑性、メモリ要件、および処理時間を低減できる。 Scenarios containing the same or similar stereotypes can be used to validate the functionality of the autonomous vehicle controller. For example, autonomous vehicles may be expected (and/or apparently do) to do the same things in the same or similar stereotypes. In some instances, the use of stereotypes can reduce the number of comparisons that have to be made. For example, identifying similar regions reduces the number of simulation scenarios that can provide useful information. The techniques described herein can reduce computational complexity, memory requirements, and processing time by optimizing over specific scenarios that provide useful information for verification and testing.

パラメータ化シナリオコンポーネント120はパラメータコンポーネント112によって決定されたデータ(例えば、初期シナリオ110、シナリオパラメータ、領域のセット、および/またはエラーモデルデータ)を使用して、パラメータ化シナリオ122を生成できる。例えば、初期シナリオ110は、車線変更シナリオ、右折シナリオ、左折シナリオ、緊急停止シナリオなどのシナリオを示すことができる。シナリオパラメータは、自律車両コントローラによって制御される車両に関連付けられた速度、車両のポーズ、車両とオブジェクトとの間の距離などを示すことができる。いくつかの例では、シナリオパラメータは、オブジェクト、オブジェクトに関連付けられた位置、オブジェクトに関連付けられた速度などを示すことができる。さらに、エラーモデル(例えば、知覚エラーモデル、予測エラーモデルなど)は、シナリオパラメータに関連付けられたエラーを示し、シナリオパラメータに関連付けられた値および/または確率の範囲を提供できる。例として、限定されないが、車両の速度などのシナリオパラメータを、毎秒8乃至12メートルなどの速度の範囲に関連付けることができる。上述のように、速度の範囲を、発生する速度の範囲内の速度の確率を示す確率分布に関連付けることができる。 Parameterization scenario component 120 can use data determined by parameter component 112 (eg, initial scenario 110 , scenario parameters, a set of regions, and/or error model data) to generate parameterization scenario 122 . For example, initial scenario 110 may represent scenarios such as a lane change scenario, a right turn scenario, a left turn scenario, an emergency stop scenario, and the like. Scenario parameters may indicate the speed associated with the vehicle controlled by the autonomous vehicle controller, the pose of the vehicle, the distance between the vehicle and objects, and the like. In some examples, the scenario parameters may indicate objects, positions associated with the objects, velocities associated with the objects, and the like. Additionally, error models (eg, perceptual error models, predictive error models, etc.) can indicate errors associated with scenario parameters and provide ranges of values and/or probabilities associated with scenario parameters. By way of example, and not limitation, scenario parameters such as vehicle speed may be associated with a range of speeds, such as 8-12 meters per second. As noted above, the range of velocities can be associated with a probability distribution that indicates the probability of velocities within the range of velocities occurring.

領域のセットは、シミュレートされた環境内にオブジェクトを配置するために使用できる環境の一部を示すことができる。例えば、初期シナリオ110は、時速35マイルの速度制限に関連付けられた双方向マルチ車線駆動路面を含むシナリオを示すことができる。初期シナリオ110に基づいて、領域のセットは、例えば駐車場など、時速35マイルの制限速度に関連付けられた双方向マルチ車線駆動路面を含まないであろう領域を除外できる。パラメータ化シナリオ122を使用して、シナリオパラメータ、エラーモデル、領域データ118などによって提供されるバリエーションをカバーできる。 A set of regions can represent a portion of the environment that can be used to place objects within the simulated environment. For example, initial scenario 110 may represent a scenario involving a two-way multi-lane drive surface associated with a speed limit of 35 miles per hour. Based on the initial scenario 110, the set of regions can exclude regions that would not include a two-way multi-lane drive surface associated with a speed limit of 35 miles per hour, such as parking lots. Parameterized scenarios 122 can be used to cover variations provided by scenario parameters, error models, domain data 118, and the like.

例として、限定されないが、シナリオパラメータは、ジャンクションに接近しながら、毎秒10、11、または12メートルの速度(または任意の速度)で環境を横断する車両を含むことができる。領域のセットは、制御されていないジャンクション、4方向のストップを有するジャンクション、および交通信号を有するジャンクションを含むことができる。加えて、知覚エラーモデルは、テストされている知覚システムのために決定された知覚メトリックによって提供され得るように、1.34%の知覚エラーを示すことができる。したがって、パラメータ化シナリオ122は、シナリオパラメータおよび領域を変化させることによって、合計9つの様々なシナリオを可能にできる(例えば、3つの速度*3つの領域=9つのシナリオ/順列)。加えて、シミュレーションコンポーネント124がパラメータ化シナリオをシミュレートするとき、シミュレーションコンポーネント124は、知覚エラーモデルを使用して、車両によって決定された知覚データに関連付けられた知覚エラーを導入できる。理解できるように、これは単なる例であり、パラメータ化シナリオ122は、より多くまたはより少ない順列、ならびにシナリオパラメータの異なるタイプ、領域、および/または知覚エラーを含むことができる。 By way of example, and not limitation, scenario parameters may include a vehicle traversing the environment at a speed of 10, 11, or 12 meters per second (or any speed) while approaching a junction. The set of regions may include uncontrolled junctions, junctions with four-way stops, and junctions with traffic lights. Additionally, the perceptual error model can indicate a perceptual error of 1.34%, as can be provided by the perceptual metric determined for the perceptual system being tested. Thus, parameterized scenarios 122 can allow a total of 9 different scenarios by varying scenario parameters and regions (eg, 3 speeds*3 regions=9 scenarios/permutations). Additionally, when the simulation component 124 simulates a parameterized scenario, the simulation component 124 can use the perceptual error model to introduce perceptual errors associated with the perceptual data determined by the vehicle. As can be appreciated, this is merely an example, and the parameterized scenario 122 can include more or fewer permutations, as well as different types, domains, and/or perceptual errors of scenario parameters.

シミュレーションコンポーネント124は、パラメータ化シナリオ122をシミュレーション命令のセットとして実行し、シミュレーションデータ126を生成できる。例えば、シミュレーションコンポーネント124はシミュレートされたシナリオにおいて車両コントローラをインスタンス化できる。いくつかの例では、シミュレーションコンポーネント124は複数のシミュレートされたシナリオを同時におよび/または並行して実行できる。加えて、シミュレーションコンポーネント124はパラメータ化シナリオ122の結果を決定できる。例えば、シミュレーションコンポーネント124はテストおよび検証のためのシミュレーションにおいて使用するためのパラメータ化シナリオ122のバリエーションを実行できる。シミュレーションコンポーネント124は、自律車両コントローラがどのように実行したか(例えば、応答したか)を示すシミュレーションデータ126を生成でき、シミュレーションデータ126を所定の結果と比較し、および/またはいずれかの所定のルール/アサーションが破られた/トリガされたかどうかを決定できる。 Simulation component 124 can execute parameterized scenario 122 as a set of simulation instructions to generate simulation data 126 . For example, simulation component 124 can instantiate a vehicle controller in a simulated scenario. In some examples, simulation component 124 can run multiple simulated scenarios simultaneously and/or in parallel. Additionally, simulation component 124 can determine the outcome of parameterized scenario 122 . For example, simulation component 124 can run variations of parameterized scenarios 122 for use in simulations for testing and verification. The simulation component 124 can generate simulation data 126 that indicates how the autonomous vehicle controller performed (eg, responded), compares the simulation data 126 to predetermined results, and/or responds to any predetermined It can determine if a rule/assertion has been violated/triggered.

いくつかの例では、シミュレーションのためのバリエーションをシナリオパラメータの一般化された間隔に基づいて選択できる。例として、限定されないが、シナリオパラメータを車両の速度に関連付けることができる。加えて、シナリオパラメータを車両の値の範囲に関連付けることができる。シミュレーションのためのバリエーションを一般化された間隔に基づいて選択して、値の範囲のカバレッジを増加できる(例えば、25パーセンタイル、50パーセンタイル、75パーセンタイルなどを選択する)。いくつかの例では、バリエーションを無作為に選択でき、および/またはバリエーションを値の範囲の標準偏差内で無作為に選択できる。 In some examples, variations for simulation can be selected based on generalized intervals of scenario parameters. By way of example, and not limitation, scenario parameters may be related to vehicle speed. In addition, scenario parameters can be associated with vehicle value ranges. Variations for simulation can be selected based on generalized intervals to increase coverage of the range of values (eg, select 25th percentile, 50th percentile, 75th percentile, etc.). In some examples, variations can be randomly selected and/or variations can be randomly selected within a standard deviation of a range of values.

いくつかの例では、所定のルール/アサーションはパラメータ化シナリオ122に基づくことができる(例えば、横断歩道に関する交通ルールは、横断歩道のシナリオに基づいて有効化でき、または車線マーカーを横切ることに関する交通ルールは、停止した車両のシナリオに対して無効化できる)。いくつかの例では、シミュレーションコンポーネント124は、シミュレーションが進むにつれて動的にルール/アサーションを有効化および無効化できる。例えば、シミュレートされたオブジェクトがスクールゾーンに近づくと、シミュレートされたオブジェクトがスクールゾーンから離れるときに、スクールゾーンに関連するルール/アサーションを有効化または無効化できる。いくつかの例では、ルール/アサーションは、例えば、シミュレートされたシナリオを所与として、オブジェクトがどのくらい速く加速できるかに関連する快適性メトリックを含むことができる。少なくともいくつかの例では、ルールは、例えば、道路のルールに従うこと、オブジェクト間の安全バッファを残すことなどを含み得る。 In some examples, predetermined rules/assertions can be based on parameterized scenarios 122 (e.g., traffic rules for pedestrian crossings can be activated based on pedestrian crossing scenarios, or traffic rules for crossing lane markers can be enabled). The rule can be disabled for stationary vehicle scenarios). In some examples, the simulation component 124 can dynamically enable and disable rules/assertions as the simulation progresses. For example, rules/assertions associated with the school zone can be enabled or disabled when the simulated object approaches the school zone and when the simulated object leaves the school zone. In some examples, the rules/assertions can include, for example, comfort metrics related to how fast an object can accelerate given a simulated scenario. In at least some examples, rules may include, for example, obeying road rules, leaving safety buffers between objects, and the like.

自律車両コントローラが所定の結果と一致して実行した(すなわち、自律車両コントローラは、することが想定されていた全てのことを実行した)と決定すること、および/またはルールが破られなかった、もしくはアサーションがトリガされなかったと決定することに少なくとも部分的に基づいて、シミュレーションコンポーネント124は、自律車両コントローラが成功したと決定できる。自律車両コントローラのパフォーマンスが所定の結果と一致しなかった(つまり、自律車両コントローラは、することを想定していないことをした)と決定すること、および/またはルールが破られた、もしくはアサーションがトリガされたと決定することに少なくとも部分的に基づいて、シミュレーションコンポーネント124は自律車両コントローラが失敗したと決定できる。したがって、パラメータ化シナリオ122を実行することに少なくとも部分的に基づいて、シミュレーションデータ126は、上記のように、自律車両コントローラがパラメータ化シナリオ122の各バリエーションにどのように応答するかを示し、シミュレーションデータ126に少なくとも部分的に基づいて成功した結果または失敗した結果を決定できる。 determining that the autonomous vehicle controller performed consistent with a predetermined result (i.e., it did everything it was supposed to do) and/or that no rules were broken; Alternatively, based at least in part on determining that the assertion was not triggered, the simulation component 124 can determine that the autonomous vehicle controller was successful. determining that the performance of the autonomous vehicle controller did not match a predetermined result (i.e., the autonomous vehicle controller did something it was not supposed to do) and/or that a rule was broken or an assertion was Based at least in part on determining that it has been triggered, the simulation component 124 can determine that the autonomous vehicle controller has failed. Therefore, based at least in part on executing the parameterized scenario 122, the simulation data 126 indicates how the autonomous vehicle controller will respond to each variation of the parameterized scenario 122, and the simulation data 126, as described above. Successful or unsuccessful results can be determined based at least in part on data 126 .

分析コンポーネント128を成功または失敗の程度を決定するように構成できる。例として、限定されないが、ルールは、自律車両コントローラによって制御される車両がオブジェクトの閾値距離内で停止しなければならないことを示すことができる。シミュレーションデータ126は、パラメータ化シナリオ122の第1のバリエーションにおいて、シミュレートされた車両が閾値距離から5メートルを超えて停止したことを示すことができる。パラメータ化シナリオ122の第2のバリエーションにおいて、シミュレーションデータ126は、シミュレートされた車両が閾値距離から10メートルを超えて停止したことを示すことができる。分析コンポーネント128は、シミュレートされた車両が、第1のバリエーションにおけるシミュレートされた車両と比較して、第2のバリエーションにおいてより良好に実行したことを示すことができる。例えば、分析コンポーネント128は、シミュレートされた車両およびパラメータ化シナリオ122の関連するバリエーションを含む順序付けられたリスト(例えば、相対的な成功スケールに従って順序付けられた)を決定できる。そのようなバリエーションを使用して、シミュレートされるシステムの様々なコンポーネントの制限を決定もし得る。 Analysis component 128 can be configured to determine the degree of success or failure. By way of example, and not limitation, a rule may indicate that a vehicle controlled by an autonomous vehicle controller must stop within a threshold distance of an object. Simulation data 126 may indicate that in a first variation of parameterization scenario 122, the simulated vehicle stopped more than 5 meters from the threshold distance. In a second variation of parameterization scenario 122, simulation data 126 may indicate that the simulated vehicle has stopped more than 10 meters from the threshold distance. Analysis component 128 can indicate that the simulated vehicle performed better in the second variation compared to the simulated vehicle in the first variation. For example, analysis component 128 can determine an ordered list (eg, ordered according to relative success scale) containing associated variations of simulated vehicles and parameterized scenarios 122 . Such variations may also be used to determine limits for various components of the simulated system.

分析コンポーネント128は、シミュレーションデータ126に基づいて、パラメータ化シナリオ122の追加のバリエーションを決定できる。例えば、シミュレーションコンポーネント124によって出力されるシミュレーションデータ126は、成功または失敗に関連付けられたパラメータ化シナリオ122のバリエーション(連続した尤度として表され得る)を示すことができる。分析コンポーネント128は、失敗に関連付けられたバリエーションに基づいて、追加のバリエーションを決定できる。例として、限定されないが、失敗に関連付けられたパラメータ化シナリオ122のバリエーションは、毎秒15メートルの速度で駆動路面を横断する車両および車両の前方の20メートルの距離で駆動路面を横切る動物を表すことができる。分析コンポーネント128は、シナリオの追加のバリエーションを決定して、分析のための追加のシミュレーションデータ126を決定できる。例として、限定されないが、分析コンポーネント128は、毎秒10メートル、毎秒12.5メートル、毎秒17.5メートル、毎秒20メートルなどで横断する車両を含む追加のバリエーションを決定できる。加えて、分析コンポーネント128は、15メートル、17.5メートル、22.5メートル、および25メートルなどの距離で駆動路面を横切る動物を含む追加のバリエーションを決定できる。追加のバリエーションをシミュレーションコンポーネント124に入力して、追加のシミュレーションデータを生成できる。そのような追加のバリエーションを、例えば、シミュレーションにおいて実行されるシナリオのシナリオパラメータに対する摂動に基づいて決定できる。 Analysis component 128 can determine additional variations of parameterized scenario 122 based on simulation data 126 . For example, simulation data 126 output by simulation component 124 may indicate variations (which may be expressed as continuous likelihoods) of parameterized scenarios 122 associated with success or failure. Analysis component 128 can determine additional variations based on variations associated with failures. By way of example, and not limitation, a variation of parameterized scenario 122 associated with failure may represent a vehicle crossing the driving surface at a speed of 15 meters per second and an animal crossing the driving surface at a distance of 20 meters in front of the vehicle. can be done. Analysis component 128 can determine additional variations of scenarios to determine additional simulation data 126 for analysis. By way of example, and not limitation, analysis component 128 may determine additional variations including vehicles traversing at 10 meters per second, 12.5 meters per second, 17.5 meters per second, 20 meters per second, and so on. Additionally, the analysis component 128 can determine additional variations including animals crossing the driving surface at distances such as 15 meters, 17.5 meters, 22.5 meters, and 25 meters. Additional variations can be input to simulation component 124 to generate additional simulation data. Such additional variations can be determined, for example, based on perturbations to scenario parameters of scenarios run in the simulation.

いくつかの例では、分析コンポーネント128は、シナリオパラメータを無効にすることによって、シナリオの追加のバリエーションを決定できる。例えば、パラメータ化シナリオは、オブジェクトの速度に関連付けられた第1のシナリオパラメータおよびオブジェクトの位置に関連付けられた第2のシナリオパラメータを含むことができる。パラメータ化シナリオ122は、速度に関連付けられた値の第1の範囲および位置に関連付けられた値の第2の範囲を含むことができる。いくつかの例では、パラメータ化シナリオ122をシミュレートした後、シミュレーションデータ126は、パラメータ化シナリオ122のいくつかのバリエーションが成功した結果をもたらし、いくつかのバリエーションが失敗した結果をもたらしたことを示すことができる。次いで、分析コンポーネント128は、第1のシナリオパラメータを無効にすること(例えば、第1のシナリオパラメータに関連付けられた固定値を設定すること)を決定し、第2のシナリオパラメータに基づいてパラメータ化シナリオ122を変化させることができる。シナリオパラメータの1つを無効にすることによって、分析コンポーネント128は、シナリオパラメータおよび/またはシナリオパラメータの値が成功の結果または失敗の結果に関連付けられているかどうかを決定できる。そのようなパラメータを、失敗の可能性に基づいて、ランダムに、またはその他で、無効にし得る。例として、限定されないが、シナリオパラメータの全てを無効にした結果としてのシミュレーションデータ126は自律車両の計画コンポーネントを伴う問題を示すことができる。 In some examples, the analysis component 128 can determine additional variations of scenarios by overriding scenario parameters. For example, a parameterized scenario may include a first scenario parameter associated with object velocity and a second scenario parameter associated with object position. Parameterized scenario 122 may include a first range of values associated with velocity and a second range of values associated with position. In some examples, after simulating parameterized scenario 122, simulation data 126 indicates that some variations of parameterized scenario 122 yielded successful results and some variations yielded unsuccessful results. can be shown. Analysis component 128 then determines to override the first scenario parameter (eg, sets a fixed value associated with the first scenario parameter) and parameterizes based on the second scenario parameter. Scenario 122 can vary. By disabling one of the scenario parameters, analysis component 128 can determine whether the scenario parameter and/or the value of the scenario parameter are associated with a successful outcome or a failed outcome. Such parameters may be disabled randomly or otherwise based on the probability of failure. By way of example, and not limitation, simulation data 126 as a result of disabling all of the scenario parameters can indicate problems with planning components of autonomous vehicles.

いくつかの例では、分析コンポーネント128を使用して感度分析を実行できる。例えば、分析コンポーネント128は、シナリオパラメータを無効にし、シミュレーションコンポーネント124によって生成されたシミュレーションデータ126に基づいて、シナリオパラメータを無効にすることがシミュレーションデータ126にどのように影響するか(例えば、成功率を増加させる、成功率を減少させる、成功率に最小限の影響を与える)を決定できる。いくつかの例では、分析コンポーネント128は、シナリオパラメータを個別に無効にして、各シナリオパラメータを無効にすることがシミュレーションデータ126にどのように影響するかを決定できる。分析コンポーネント128は、個々のシナリオパラメータが多くのシミュレーションの経過にわたってシミュレーションデータ126にどのように影響するかを示す統計データを収集できる。いくつかの例では、分析コンポーネント128を、シナリオパラメータのセットを無効にする(例えば、ナイトタイム環境パラメータを無効にする、および湿潤コンディション環境パラメータを無効にする)ように構成できる。上述のように、分析コンポーネントは、シナリオパラメータのセットがシミュレーションデータ126にどのように影響するかを示す統計データを収集できる。統計データは、成功するシミュレーションをもたらす可能性を増加または減少させるシナリオパラメータを決定するために使用できる、およびシミュレーションデータ126の成功率を増加または減少させるシナリオパラメータに関連付けられた自律車両のサブシステムを識別するために使用できる。 In some examples, the analysis component 128 can be used to perform sensitivity analysis. For example, analysis component 128 disables scenario parameters and, based on simulation data 126 generated by simulation component 124, determines how disabling scenario parameters affects simulation data 126 (e.g., success rate (increase the success rate, decrease the success rate, or have a minimal impact on the success rate). In some examples, analysis component 128 can disable scenario parameters individually to determine how disabling each scenario parameter affects simulation data 126 . The analysis component 128 can collect statistical data showing how individual scenario parameters affect the simulation data 126 over the course of many simulations. In some examples, analysis component 128 can be configured to override a set of scenario parameters (eg, override nighttime environmental parameters and override wet conditions environmental parameters). As noted above, the analysis component can collect statistical data that indicates how a set of scenario parameters affect simulation data 126 . The statistical data can be used to determine scenario parameters that increase or decrease the likelihood of resulting in a successful simulation, and sub-systems of the autonomous vehicle associated with scenario parameters that increase or decrease the success rate of the simulation data 126. can be used for identification.

いくつかの例では、分析コンポーネント128は、シナリオパラメータが調整される程度を調整できる。例として、限定されないが、シナリオパラメータは、湿潤環境コンディション(例えば、雨の条件)を示すことができる。シナリオパラメータを範囲(例えば、4分の1インチの雨量、1インチの雨量など)上で調整できる。分析コンポーネント128は、シナリオパラメータの大きさ(magnitude)を調整し、シナリオパラメータの大きさに基づいて感度分析を実行して、シミュレーションの成功または失敗の結果をもたらすことができるシナリオパラメータに関連付けられた閾値を決定できる。いくつかの例では、バイナリ検索アルゴリズム、粒子フィルタアルゴリズム、および/またはモンテカルロ法を使用して、閾値を決定できるが、他の適切なアルゴリズムが企図される。 In some examples, analysis component 128 can adjust the degree to which scenario parameters are adjusted. By way of example, and not limitation, scenario parameters may indicate wet environmental conditions (eg, rainy conditions). Scenario parameters can be adjusted over a range (eg, quarter inch rainfall, 1 inch rainfall, etc.). The analysis component 128 adjusts the magnitude of the scenario parameters and performs sensitivity analysis based on the magnitudes of the scenario parameters associated with the scenario parameters that can result in success or failure of the simulation. A threshold can be determined. In some examples, binary search algorithms, particle filter algorithms, and/or Monte Carlo methods may be used to determine the threshold, although other suitable algorithms are contemplated.

車両性能コンポーネント130は、シミュレーションデータ126(および/または分析コンポーネント128からの追加のバリエーションに基づく追加のシミュレーションデータ)および失敗のタイプに基づいて、車両性能データ132を決定できる。いくつかの例では、車両性能データ132は車両が環境内でどのように機能するかを示すことができる。例として、限定されないが、車両性能データ132は毎秒15メートルの速度で横断する車両が15メートルの停止距離を有することを示すことができる。いくつかの例では、車両性能データは安全性メトリックを示すことができる。例として、限定されないが、車両性能データ132はイベント(例えば、失敗)およびイベントの原因を示すことができる。少なくともいくつかの例では、そのような表示は、バイナリ(故障の有無)、粗い(故障のレベル、例えば、「臨界」、「非臨界」、および「通過」)、または連続的(例えば、故障の可能性を表す)であり得るが、任意の他の表示が企図される。例えば、イベントタイプ1および原因タイプ1について、データ134(1)は安全性レーティングを示すことができ、データ134(2)乃至134(4)についても同様である。いくつかの例では、原因タイプ1および原因タイプ2は車両の故障またはオブジェクト(例えば、自転車乗り)の故障などの故障を示すことができる。次いで、車両性能データ132は、パラメータ化シナリオ122に関連付けられた安全性メトリックを示すことができる。いくつかの例では、車両性能コンポーネント130は、ターゲットメトリックを使用し、車両性能データ132をターゲットメトリックと比較して、安全性メトリックがターゲットメトリックを満たすまたは超えるかを決定できる。いくつかの例では、ターゲットメトリックは、自律車両に関連付けられた標準および/または規制に基づくことができる。 Vehicle performance component 130 can determine vehicle performance data 132 based on simulation data 126 (and/or additional simulation data based on additional variations from analysis component 128) and the type of failure. In some examples, vehicle performance data 132 may indicate how a vehicle performs within an environment. By way of example, and not limitation, vehicle performance data 132 may indicate that a vehicle traversing at a speed of 15 meters per second has a stopping distance of 15 meters. In some examples, vehicle performance data may indicate safety metrics. By way of example, and not limitation, vehicle performance data 132 may indicate an event (eg, failure) and the cause of the event. In at least some examples, such indications are binary (with or without fault), coarse (levels of fault, e.g., "critical," "non-critical," and "passing"), or continuous (e.g., fault ), but any other representation is contemplated. For example, for event type 1 and cause type 1, data 134(1) can indicate a safety rating, as can data 134(2)-134(4). In some examples, Cause Type 1 and Cause Type 2 may indicate failures such as vehicle failures or object (eg, bicyclist) failures. Vehicle performance data 132 may then indicate safety metrics associated with parameterized scenario 122 . In some examples, the vehicle performance component 130 can use the target metric and compare the vehicle performance data 132 to the target metric to determine if the safety metric meets or exceeds the target metric. In some examples, the target metric can be based on standards and/or regulations associated with autonomous vehicles.

いくつかの例では、車両性能データ132を、フィルタコンポーネント134に入力して、車両性能データ132に基づいてフィルタされたデータ136を決定できる。例えば、フィルタコンポーネント134を使用して、カバレッジ閾値を満たさない領域を識別するフィルタされたデータ136を決定できる。例として、限定されないが、初期シナリオ110は、時速35マイルの速度制限および領域データ118に関連付けられた双方向マルチ車線駆動路面を示すことができる。初期シナリオ110および領域データ118に基づいて、パラメータコンポーネント112は、初期シナリオ110をシミュレートするために使用できる環境の5つの領域を識別できる。パラメータ化シナリオ122をシミュレートした後、車両性能データ132は、シミュレーションデータ126が5つの領域のうちの3つに関連付けられていることを示すことができる。例えば、シミュレーションコンポーネント124は、パラメータコンポーネント112によって識別された5つの領域のうちの3つにおいて、シナリオを実行することに基づいて、シナリオをシミュレートし、シミュレーションデータ126を生成できる。フィルタコンポーネント134は、1つまたは複数のフィルタに基づいて、5つの領域の残りの2つがカバレッジ閾値(例えば、領域に関連付けられたシミュレーションの最小数)を満たさないことを示すフィルタされたデータ136を決定できる。 In some examples, vehicle performance data 132 may be input to filter component 134 to determine filtered data 136 based on vehicle performance data 132 . For example, filter component 134 can be used to determine filtered data 136 that identifies regions that do not meet a coverage threshold. By way of example, and not limitation, initial scenario 110 may indicate a speed limit of 35 mph and a two-way multi-lane drive surface associated with region data 118 . Based on initial scenario 110 and region data 118 , parameter component 112 can identify five regions of the environment that can be used to simulate initial scenario 110 . After simulating parameterized scenario 122, vehicle performance data 132 may indicate that simulation data 126 is associated with three of the five regions. For example, simulation component 124 can simulate a scenario and generate simulation data 126 based on running the scenario in three of the five regions identified by parameter component 112 . A filter component 134, based on one or more filters, produces filtered data 136 indicating that the remaining two of the five regions do not meet a coverage threshold (eg, minimum number of simulations associated with the regions). can decide.

いくつかの例では、フィルタコンポーネント134は、車両性能データ132に基づいて、イベントの発生を示すフィルタされたデータ136を決定できる。例として、限定されないが、シミュレーションデータ126は、非常停止、フラットタイヤ、駆動路面を横切る動物などのイベントの発生を含むことができる。フィルタコンポーネント134は、1つまたは複数のフィルタに基づいて、非常停止の発生を示すフィルタされたデータ136を決定できる。加えて、フィルタされたデータ136は、例えば、緊急停止に関連付けられた停止距離など、緊急停止の発生に関連付けられたシミュレーションデータ126の一部を含むことができる。 In some examples, filter component 134 can determine filtered data 136 indicative of the occurrence of an event based on vehicle performance data 132 . By way of example, and not limitation, simulation data 126 may include the occurrence of events such as emergency stops, flat tires, animals crossing a driving surface, and the like. A filter component 134 can determine filtered data 136 indicative of an emergency stop occurrence based on one or more filters. Additionally, filtered data 136 may include portions of simulation data 126 associated with occurrences of emergency stops, such as, for example, stopping distances associated with emergency stops.

図2は、車両202の例200を示しており、これは、図1を参照して説明した車両データ104を生成する車両と同様であり、車両データ104を生成し、車両データ104をコンピューティングデバイス204に送信できる。上述したように、シナリオエディタコンポーネント108を、入力データ102(例えば、車両データ104および/または追加の状況データ106)をスキャンし、入力データ102に表される1つまたは複数のシナリオを識別するように構成できる。非限定的な例として、そのようなシナリオは、例えば、ログデータのパラメータ化をクラスタリング(例えば、k平均などを使用する)することに基づいて決定され得る。いくつかの例では、シナリオエディタコンポーネント108は、シナリオ定義データ206を使用して、入力データ102に表される1つまたは複数のシナリオを識別できる。例えば、シナリオ定義データ206は、シナリオのタイプに関連付けられた特徴を識別できる。例として、限定されないが、シナリオ定義データ206は、横断歩道に関連付けられていない駆動路面の一部を歩行者が横断するなどの特徴を含むジェイウォーキングシナリオを識別できる。シナリオエディタコンポーネント108は、入力データ102をスキャンして、横断歩道に関連付けられていない駆動路面の一部を横断する歩行者の特徴を含む入力データの一部を識別して、ジェイウォーキングシナリオを決定できる。少なくともいくつかの例では、そのようなシナリオは、サードパーティのデータ(例えば、警察のレポート、一般に利用可能なビデオクリップなど)からさらに手動で入力および/または導出され得る。 FIG. 2 illustrates an example 200 of a vehicle 202, which is similar to the vehicle generating vehicle data 104 described with reference to FIG. It can be sent to device 204 . As described above, scenario editor component 108 is configured to scan input data 102 (eg, vehicle data 104 and/or additional situation data 106) and identify one or more scenarios represented in input data 102. can be configured to As a non-limiting example, such scenarios can be determined, for example, based on clustering (eg, using k-means, etc.) parameterization of the log data. In some examples, scenario editor component 108 can use scenario definition data 206 to identify one or more scenarios represented in input data 102 . For example, scenario definition data 206 can identify characteristics associated with types of scenarios. By way of example, and not limitation, scenario definition data 206 may identify jaywalking scenarios that include features such as a pedestrian crossing a portion of a driving surface that is not associated with a crosswalk. A scenario editor component 108 scans the input data 102 to identify portions of the input data that include characteristics of pedestrians crossing portions of the driving surface not associated with crosswalks to determine jaywalking scenarios. can. In at least some examples, such scenarios may also be manually entered and/or derived from third-party data (eg, police reports, publicly available video clips, etc.).

加えて、上述したように、パラメータコンポーネント112は、シナリオ内のオブジェクトのパラメータに関連付けられた値または値の範囲を示すことができるシナリオパラメータを決定できる。パラメータコンポーネント112は、図2に描写されるように、シナリオデータ208を生成できる。 Additionally, as described above, the parameter component 112 can determine scenario parameters that can indicate values or ranges of values associated with parameters of objects in the scenario. The parameter component 112 can generate scenario data 208, as depicted in FIG.

シナリオデータ208は、駆動路面に沿って横断する車両210、および車両210の近くを車両210と同じ方向に横断するオブジェクト212(異なる車両であり得る)を含むベースシナリオを示すことができる。車両210およびオブジェクト212は、横断歩道とのジャンクションに接近できる。パラメータコンポーネント112は、車両210とオブジェクト212との間の距離を、距離の範囲を有するものとして示すシナリオパラメータを決定できる。したがって、シナリオS1は、車両210とオブジェクト212との間の第1の距離を有するシナリオのセットの第1のシナリオを表すことができ、シナリオS2は、車両210とオブジェクト212との間の第2の距離を有するシナリオのセットの第2のシナリオを表すことができ、シナリオSNは、車両210とオブジェクト212との間の第Nの距離を有するシナリオのセットの第Nのシナリオを表すことができる。パラメータの追加のタイプ(属性とも称される)の例は、例えば、「Pedestrian Prediction Based on Attributes」と題され、2019年3月25日に出願された米国特許出願第16/363,541号に見出すことができ、参照によりその全体が本明細書に組み込まれる。 Scenario data 208 may represent a base scenario that includes a vehicle 210 traversing along a driving surface and an object 212 (which may be a different vehicle) traversing near vehicle 210 in the same direction as vehicle 210 . Vehicles 210 and objects 212 can approach junctions with pedestrian crossings. The parameters component 112 can determine scenario parameters that describe the distance between the vehicle 210 and the object 212 as having a range of distances. Scenario S1 may thus represent the first scenario of a set of scenarios having a first distance between vehicle 210 and object 212, and scenario S2 may represent a second distance between vehicle 210 and object 212. and scenario SN may represent the Nth scenario of the set of scenarios with the Nth distance between the vehicle 210 and the object 212. can. Examples of additional types of parameters (also referred to as attributes) are found, for example, in U.S. patent application Ser. can be found and is incorporated herein by reference in its entirety.

例えば、シナリオパラメータは、オブジェクト212の速度、オブジェクト212の加速度、オブジェクト212のx位置(例えば、グローバル位置、ローカル位置、および/または任意の他の基準フレームに対する位置)、オブジェクト212のy位置(例えば、サイズ、ポーズ、ローカル位置、グローバル位置、および/または任意の他の基準フレームに対する位置)、オブジェクト212に関連付けられたバウンディングボックス(例えば、範囲(長さ、幅、および/または高さ)、ヨー、ピッチ、ロールなど)、照明状態(例えば、ブレーキライト、ブリンカーライト、ハザードライト、ヘッドライト、リバースライトなど)、オブジェクト212のホイールの方向、マップ要素(例えば、オブジェクト212と信号機の間の距離、一時停止標識、スピードバンプ、交差点、譲歩標識など)、オブジェクト212の分類(例:車両、車、トラック、自転車、オートバイ、歩行者、動物など)、オブジェクトの特性(例えば、オブジェクトが車線を変更しているかどうか、オブジェクト212が二重駐車車両であるかどうかなど)、1つまたは複数のオブジェクト(任意の座標フレームにおける)との近接性、車線の種類(例えば、車線の方向、駐車車線など)、道路標示(例えば、通過または車線変更が許可されているかどうかなどを示す)、オブジェクト密度、などを含むことができるが、これらに限定されない。 For example, the scenario parameters may be the velocity of object 212, the acceleration of object 212, the x-position of object 212 (eg, global position, local position, and/or position relative to any other frame of reference), the y-position of object 212 (eg, , size, pose, local position, global position, and/or position relative to any other frame of reference), bounding box associated with object 212 (e.g., extent (length, width, and/or height), yaw , pitch, roll, etc.), lighting conditions (e.g., brake lights, blinker lights, hazard lights, headlights, reverse lights, etc.), direction of wheels of object 212, map elements (e.g., distance between object 212 and traffic lights, stop sign, speed bump, intersection, yield sign, etc.); object 212 classification (e.g., vehicle, car, truck, bicycle, motorcycle, pedestrian, animal, etc.); object characteristics (e.g., object changes lane); proximity to one or more objects (in any coordinate frame), lane type (eg, lane direction, parking lane, etc.) , road markings (eg, indicating whether passing or lane changes are permitted, etc.), object density, and the like.

上述したように、パラメータコンポーネント112は、車両データ104および/または他の入力データによって表されるように、シナリオパラメータに関連付けられた値の範囲を決定できる。したがって、上記で識別された例示的なシナリオパラメータのそれぞれ、ならびに他のシナリオパラメータを、シナリオのセットのシナリオがシナリオパラメータの1つまたは複数の値によって異なるシナリオのセットを生成するために使用できる値のセットまたは範囲に、関連付けることができる。 As described above, the parameter component 112 can determine ranges of values associated with scenario parameters as represented by the vehicle data 104 and/or other input data. Thus, each of the exemplary scenario parameters identified above, as well as other scenario parameters, can be used to generate a set of scenarios in which the scenarios of a set of scenarios differ by one or more values of the scenario parameters. can be associated with a set or range of

図3は、車両データおよびグラウンドトゥルースデータに少なくとも部分的に基づいてエラーモデルデータを生成する例300を示している。図3に示すように、車両202は、車両データ104を生成し、車両データ104をエラーモデルコンポーネント116に送信できる。上述したように、エラーモデルコンポーネント116は、シナリオパラメータに関連付けられたエラーを示すことができるエラーモデルを決定できる。例えば、車両データ104は、知覚システム、計画システム、追跡システム(トラッカーシステムとも呼ばれる)、予測システムなどの車両202のサブシステムに関連付けられたデータとすることができる。例として、限定されないが、車両データ104を知覚システムに関連付けることができ、車両データ104は環境内の車両202によって検出されたオブジェクトに関連付けられたバウンディングボックスを含むことができる。 FIG. 3 illustrates an example 300 of generating error model data based at least in part on vehicle data and ground truth data. As shown in FIG. 3, vehicle 202 may generate vehicle data 104 and transmit vehicle data 104 to error model component 116 . As described above, the error model component 116 can determine error models that can indicate errors associated with scenario parameters. For example, vehicle data 104 may be data associated with subsystems of vehicle 202, such as perception systems, planning systems, tracking systems (also called tracker systems), prediction systems, and the like. By way of example, and not limitation, vehicle data 104 may be associated with a sensory system, and vehicle data 104 may include bounding boxes associated with objects detected by vehicle 202 in the environment.

エラーモデルコンポーネント116は、手動でラベル付けおよび/または他の検証された機械学習コンポーネントから決定できるグラウンドトゥルースデータ302を受信できる。例として、限定されないが、グラウンドトゥルースデータ302は、環境内のオブジェクトに関連付けられた検証されたバウンディングボックスを含むことができる。車両データ104のバウンディングボックスをグラウンドトゥルースデータ302のバウンディングボックスと比較することによって、エラーモデルコンポーネント116は、車両202のサブシステムに関連付けられたエラーを決定できる。いくつかの例では、車両データ104は、検出されたエンティティおよび/またはエンティティが位置する環境に関連付けられた1つまたは複数の特性(パラメータとも呼ばれる)を含むことができる。いくつかの例では、エンティティに関連付けられた特性は、x位置(グローバル位置)、y位置(グローバル位置)、z位置(グローバル位置)、方向、エンティティタイプ(例えば、分類など)、エンティティの速度、エンティティの範囲(サイズ)などを含むことができるが、これらに限定されない。環境に関連付けられた特性は、環境内の別のエンティティの存在、環境内の別のエンティティの状態、時刻、曜日、季節、気象条件、暗闇/光の表示などを含むことができるが、これらに限定されない。したがって、エラーを、他の特性(例えば、環境パラメータ)に関連付けることができる。 The error model component 116 can receive ground truth data 302 that can be determined from manually labeled and/or other validated machine learning components. By way of example, and not limitation, ground truth data 302 can include verified bounding boxes associated with objects in the environment. By comparing the bounding box of vehicle data 104 to the bounding box of ground truth data 302 , error model component 116 can determine errors associated with subsystems of vehicle 202 . In some examples, vehicle data 104 may include one or more characteristics (also called parameters) associated with the detected entity and/or the environment in which the entity is located. In some examples, properties associated with an entity include x-position (global position), y-position (global position), z-position (global position), orientation, entity type (e.g., classification, etc.), entity velocity, It can include, but is not limited to, the extent (size) of the entity, and the like. Characteristics associated with an environment can include the presence of other entities in the environment, the state of other entities in the environment, the time of day, the day of the week, the season, weather conditions, darkness/light indications, etc. Not limited. Therefore, errors can be related to other characteristics (eg environmental parameters).

エラーモデルコンポーネント116は、複数の車両データ104および複数のグラウンドトゥルースデータ302を処理して、エラーモデルデータ304を決定できる。エラーモデルデータ304は、エラー306(1)乃至(3)として表すことができるエラーモデルコンポーネント116によって計算されたエラーを含むことができる。加えて、エラーモデルコンポーネント116は、エラーモデル310(1)乃至(3)を提示するための環境パラメータに関連付けることができる確率308(1)乃至(3)として表されるエラー306(1)乃至(3)に関連付けられた確率を決定できる。例として、限定されないが、車両データ104は、降雨を含む環境内の車両202から50メートルの距離にあるオブジェクトに関連付けられたバウンディングボックスを含むことができる。グラウンドトゥルースデータ302は、オブジェクトに関連付けられた検証されたバウンディングボックスを提供できる。エラーモデルコンポーネント116は、エラーが車両202の知覚システムに関連付けられていることを決定するエラーモデルデータ304を決定できる。50メートルの距離および降雨を環境パラメータとして使用して、エラーモデル310(1)乃至(3)のどのエラーモデルを使用するかを決定できる。エラーモデルが識別されたら、エラーモデル310(1)乃至(3)は確率308(1)乃至(3)に基づいてエラー306(1)乃至(3)を提供でき、ここで、より高い確率308(1)乃至(3)に関連付けられたエラー306(1)乃至(3)は、より低い確率308(1)乃至(3)に関連付けられたエラー306(1)乃至(3)よりも、選択される可能性が高い。 Error model component 116 can process multiple vehicle data 104 and multiple ground truth data 302 to determine error model data 304 . Error model data 304 may include errors computed by error model component 116, which may be represented as errors 306(1)-(3). In addition, the error model component 116 can generate errors 306(1)-(3) represented as probabilities 308(1)-(3) that can be associated with environmental parameters for presenting the error models 310(1)-(3). The probability associated with (3) can be determined. By way of example, and not limitation, vehicle data 104 may include bounding boxes associated with objects that are 50 meters from vehicle 202 in an environment that includes rainfall. Ground truth data 302 can provide verified bounding boxes associated with objects. Error model component 116 can determine error model data 304 that determines which errors are associated with the sensory system of vehicle 202 . A distance of 50 meters and rainfall can be used as environmental parameters to determine which of the error models 310(1)-(3) to use. Once the error model is identified, the error model 310(1)-(3) can provide the error 306(1)-(3) based on the probability 308(1)-(3), where the higher probability 308 Errors 306(1)-(3) associated with (1)-(3) are preferred over errors 306(1)-(3) associated with lower probabilities 308(1)-(3). likely to be

図4は、シミュレートされた環境に関連付けられたエラーまたは不確実性の少なくとも1つを提供することによって、シミュレーションに摂動を与えるためにエラーモデルデータを使用する例400を示している。上述したように、エラーモデルデータは、エラー306を確率308に関連付けるエラーモデルを含むことができ、エラーモデルは環境パラメータに関連付けることができる。シミュレーションコンポーネント124は、エラーモデルデータ304を使用してエラーを注入することができ、これは、シミュレーションに摂動を与えるための摂動を与えられたパラメータ化シナリオをもたらすことができる。注入されたエラーに基づいて、シミュレーションデータは、自律コントローラが注入されたエラーにどのように応答するかを示すことができる。 FIG. 4 illustrates an example 400 of using error model data to perturb a simulation by providing at least one of errors or uncertainties associated with the simulated environment. As noted above, the error model data can include error models that relate errors 306 to probabilities 308, and the error models can relate to environmental parameters. The simulation component 124 can use the error model data 304 to inject errors, which can provide perturbed parameterization scenarios for perturbing the simulation. Based on the injected error, the simulation data can show how the autonomous controller responds to the injected error.

例えば、シミュレーションコンポーネント124は、エラーをシミュレーションに連続的に注入することによってシミュレーションに摂動を与えることができる。例として、限定されないが、例402は、時間t0にてオブジェクトに関連付けられたバウンディングボックス404を示す。バウンディングボックス404は、バウンディングボックスのサイズのエラーおよび/またはバウンディングボックスの位置などのエラーを含む車両によるオブジェクトの検出を表すことができる。時間t1において、シミュレーションコンポーネント124は、オブジェクトを表し、異なるエラーを含むバウンディングボックス406を使用できる。例えば、各シミュレーション時間(例えば、t0、t1、またはt2)において、シミュレーションコンポーネント124は、エラー306に関連付けられた確率308に基づいて異なるエラー306を使用できる。時間t2において、シミュレーションコンポーネント124は、オブジェクトを表し、異なるエラーを含むバウンディングボックス408を使用できる。 For example, the simulation component 124 can perturb the simulation by continuously injecting errors into the simulation. By way of example, and not limitation, example 402 shows bounding box 404 associated with an object at time t 0 . Bounding box 404 may represent detection of an object by a vehicle that includes errors such as errors in bounding box size and/or bounding box position. At time t 1 , the simulation component 124 can use a bounding box 406 representing the object and containing different errors. For example, at each simulation time (eg, t 0 , t 1 , or t 2 ), simulation component 124 can use different error 306 based on probability 308 associated with error 306 . At time t2 , the simulation component 124 can use a bounding box 408 representing the object and containing different errors.

いくつかの例では、シミュレーションコンポーネント124は、環境内のオブジェクトを表すバウンディングボックスに関連付けられた不確実性を注入することによってシミュレーションに摂動を与えることができる。例として、限定されないが、例410は、時間t0にてオブジェクトに関連付けられたバウンディングボックス412を示す。バウンディングボックスは、5%の不確実性を含むことができ、これは、5%の量によってオブジェクトのサイズおよび/または位置の不確実性を示すことができる。加えて、不確実性は、例402に描写されるように、異なるシミュレーション時間にて、異なるエラーを注入するのではなく、時間t1およびt2を通してオブジェクトと共に存続できる。 In some examples, the simulation component 124 can perturb the simulation by injecting uncertainty associated with bounding boxes representing objects in the environment. By way of example, and not limitation, example 410 shows bounding box 412 associated with an object at time t 0 . The bounding box may contain a 5% uncertainty, which may indicate the uncertainty of the size and/or position of the object by the 5% amount. Additionally, the uncertainty can persist with the object through times t 1 and t 2 rather than injecting different errors at different simulation times, as depicted in example 402 .

図5は、車両データ104を生成し、車両データ104をコンピューティングデバイス204に送信する車両202の例500を示す。上述したように、エラーモデルコンポーネント116は、シナリオパラメータに関連付けられたエラーを示すことができる知覚エラーモデルを決定できる。上述したように、車両データ104は、車両202のセンサによって生成されたセンサデータおよび/または車両202の知覚システムによって生成された知覚データを含むことができる。知覚エラーモデルは、車両データ104をグラウンドトゥルースデータ302と比較することによって決定できる。グラウンドトゥルースデータ302を手動でラベル付けでき、環境に関連付けることができ、既知の結果を表すことができる。したがって、車両データ104内のグラウンドトゥルースデータ302からの逸脱は、車両202のセンサシステムおよび/または知覚システム内のエラーとして識別できる。例として、限定されないが、知覚システムはオブジェクトを自転車乗りとして識別する可能性があり、ここでグラウンドトゥルースデータ302はオブジェクトが歩行者であることを示している。別の例として、限定されないが、センサシステムは、オブジェクトを2メートルの幅を有するように表すセンサデータを生成でき、ここでグラウンドトゥルースデータ302はオブジェクトが1.75メートルの幅を有することを示す。 FIG. 5 illustrates an example 500 of vehicle 202 generating vehicle data 104 and transmitting vehicle data 104 to computing device 204 . As noted above, the error model component 116 can determine a perceptual error model that can indicate errors associated with scenario parameters. As noted above, vehicle data 104 may include sensor data generated by sensors of vehicle 202 and/or sensory data generated by a sensory system of vehicle 202 . A perceptual error model can be determined by comparing vehicle data 104 with ground truth data 302 . Ground truth data 302 can be manually labeled, can be related to the environment, and can represent known results. Accordingly, deviations in vehicle data 104 from ground truth data 302 can be identified as errors in the sensor and/or perception systems of vehicle 202 . By way of example, and not limitation, a perceptual system may identify an object as a cyclist, where ground truth data 302 indicates that the object is a pedestrian. As another example, and not by way of limitation, the sensor system can generate sensor data representing an object as having a width of 2 meters, where the ground truth data 302 indicates that the object has a width of 1.75 meters. .

上述したように、エラーモデルコンポーネント116は、車両データ104に表されるオブジェクトに関連付けられた分類を決定し、車両データ104および/または他のログデータ内の同じ分類の他のオブジェクトを決定できる。次いで、エラーモデルコンポーネント116は、オブジェクトに関連付けられたエラーの範囲に関連付けられた確率分布を決定できる。エラーの比較および範囲に基づいて、エラーモデルコンポーネント116は、知覚エラーモデルデータ502を決定できる。 As discussed above, the error model component 116 can determine the classification associated with objects represented in the vehicle data 104 and determine other objects of the same classification within the vehicle data 104 and/or other log data. Error model component 116 can then determine a probability distribution associated with the extent of error associated with the object. Based on the error comparison and extent, error model component 116 can determine perceptual error model data 502 .

図5に示されるように、環境504は、知覚システムによって生成されたバウンディングボックスとして表されるオブジェクト506(1)乃至(3)を含むことができる。知覚エラーモデルデータ502は、シナリオパラメータを508(1)乃至(3)として、シナリオパラメータに関連付けられたエラーを510(1)乃至(3)として、示すことができる。図5に示されるように、オブジェクト508(1)に関連付けられたエラーを環境504において、オブジェクト508(1)の寸法に関する不確実性を示すより大きなバウンディングボックス512として視覚化できる。 As shown in FIG. 5, environment 504 may include objects 506(1)-(3) represented as bounding boxes generated by the perceptual system. Perceptual error model data 502 may indicate scenario parameters as 508(1)-(3) and errors associated with the scenario parameters as 510(1)-(3). As shown in FIG. 5, the error associated with object 508(1) can be visualized in environment 504 as a larger bounding box 512 that indicates uncertainty regarding the dimensions of object 508(1).

図6は、シミュレーションデータ126を生成し、車両性能データ132を決定するコンピューティングデバイス204の例600を示す。パラメータ化シナリオコンポーネント120は、シナリオパラメータ、領域のセット、および知覚エラーモデルに基づいて、パラメータ化シナリオを決定できる。例えば、シナリオパラメータは、パラメータ化シナリオにおける、オブジェクト、オブジェクトに関連付けられた位置、オブジェクトに関連付けられた速度などを示すことができる。加えて、シナリオパラメータは、シナリオパラメータに関連付けられた値および/または確率の範囲を示す範囲を示すことができる。領域のセットは、シミュレートされた環境内にオブジェクトを配置するために使用できる環境の一部を示すことができる。さらに、知覚エラーモデルは、シナリオパラメータに関連付けられたエラーを示すことができる。これらを組み合わせて、本明細書に詳述されるように、シナリオパラメータ、領域のセット、および/または知覚エラーモデルによって提供されるバリエーションをカバーできるパラメータ化シナリオを作成できる。 FIG. 6 illustrates an example computing device 204 600 that generates simulation data 126 and determines vehicle performance data 132 . A parameterized scenario component 120 can determine a parameterized scenario based on the scenario parameters, the set of regions, and the perceptual error model. For example, the scenario parameters may indicate objects, positions associated with the objects, velocities associated with the objects, etc. in the parameterized scenario. Additionally, the scenario parameters may indicate ranges indicating ranges of values and/or probabilities associated with the scenario parameters. A set of regions can represent a portion of the environment that can be used to place objects within the simulated environment. Additionally, the perceptual error model can indicate errors associated with the scenario parameters. These can be combined to create parameterized scenarios that can cover variations provided by scenario parameters, sets of regions, and/or perceptual error models, as detailed herein.

パラメータ化シナリオをシミュレーションコンポーネント124によって使用して、パラメータ化シナリオのバリエーションをシミュレートできる。例えば、シミュレーションコンポーネント124は、テストおよび検証のためのシミュレーションにおいて使用するためのパラメータ化シナリオのバリエーションを実行できる。シミュレーションコンポーネント124は、自律車両コントローラがどのように実行したか(例えば、応答したか)を示すシミュレーションデータ126を生成でき、シミュレーションデータ126を所定の結果と比較し、および/または任意の所定のルール/アサーションが破られた/トリガされたかどうかを決定できる。 A parameterized scenario can be used by the simulation component 124 to simulate variations of the parameterized scenario. For example, the simulation component 124 can run variations of parameterized scenarios for use in simulations for testing and verification. The simulation component 124 can generate simulation data 126 that indicates how the autonomous vehicle controller performed (eg, responded), compares the simulation data 126 to predetermined results, and/or follows any predetermined rules. / can determine if an assertion has been broken/triggered.

図6に例示されるように、シミュレーションデータ126は、いくつかのシミュレーション(例えば、シミュレーション1、シミュレーション2など)およびシミュレーションの結果(例えば、結果1、結果2)を示すことができる。例えば、上述したように、結果は、破られた/トリガされたルール/アサーションに基づいて、合格または失敗を示すことができる。加えて、シミュレーションデータ126は、シナリオに遭遇する確率を示すことができる。例として、限定されないが、シミュレーションコンポーネント124は、ジェイウォーキング歩行者を含むシナリオをシミュレートできる。入力データは、車両が、1時間の運転あたり1分の割合でジェイウォーキング歩行者に遭遇することを示すことができる。これを使用して、パラメータ化シナリオのバリエーションに関連付けられた特定のシミュレーションに遭遇する確率を決定できる。いくつかの例では、シミュレーションコンポーネント124は、低い確率を有するパラメータ化シナリオのバリエーションを識別し、それらのバリエーションに対応するシミュレーションを実行できる。これは、より独特な状況における自律車両コントローラのテストおよび検証を可能にできる。 As illustrated in FIG. 6, simulation data 126 may indicate a number of simulations (eg, simulation 1, simulation 2, etc.) and simulation results (eg, result 1, result 2). For example, as described above, the results can indicate pass or fail based on the rules/assertions that were broken/triggered. Additionally, simulation data 126 can indicate the probability of encountering a scenario. By way of example, and not limitation, simulation component 124 can simulate a scenario involving a jaywalking pedestrian. The input data may indicate that the vehicle encounters jaywalking pedestrians at a rate of one minute per hour of driving. This can be used to determine the probability of encountering a particular simulation associated with variations of parameterized scenarios. In some examples, the simulation component 124 can identify variations of parameterized scenarios with low probabilities and run simulations corresponding to those variations. This can enable testing and validation of autonomous vehicle controllers in more unique situations.

加えて、シミュレーションコンポーネント124は、結果に基づいて、追加のシミュレーションのためのパラメータ化シナリオのバリエーションを識別できる。例として、限定されないが、シミュレーションの結果は、シナリオパラメータが毎秒15メートルの車両の速度に関連付けられた障害とすることができる。シミュレーションコンポーネント124は毎秒15メートルの速度に近い速度を識別して、シミュレーションが通過するであろう閾値を決定でき、これはより安全な車両コントローラの開発をさらに支援できる。 Additionally, the simulation component 124 can identify variations of parameterized scenarios for additional simulations based on the results. By way of example, and not limitation, a simulation result may be an obstacle with scenario parameters associated with a vehicle speed of 15 meters per second. The simulation component 124 can identify velocities close to 15 meters per second to determine a threshold that the simulation will pass, which can further aid in the development of safer vehicle controllers.

シミュレーションデータ126に基づいて、車両性能コンポーネント130は、車両性能データ132を生成できる。上述したように、例えば、イベントタイプ1および原因タイプ1について、データ134(1)は安全性レーティングを示すことができ、データ134(2)乃至134(4)についても同様である。いくつかの例では、イベントタイプは、コストがコスト閾値を満たしている、または超えていることを示すことができるが、他のイベントタイプが企図される。例えば、コストは、参照コスト、障害物コスト、横方向コスト、縦方向コストなどを含むことができるが、これらに限定されない。 Based on simulation data 126 , vehicle performance component 130 can generate vehicle performance data 132 . As described above, for event type 1 and cause type 1, for example, data 134(1) can indicate a safety rating, as can data 134(2)-134(4). In some examples, the event type may indicate that the cost meets or exceeds the cost threshold, although other event types are contemplated. For example, costs can include, but are not limited to, reference costs, obstacle costs, horizontal costs, vertical costs, and the like.

基準コストは、基準軌道上の点(基準点とも呼ばれる)とターゲット軌道上の対応する点(点またはターゲット点とも呼ばれる)との間の差に関連付けられたコストを含むことができ、これにより、差は、ヨー、横方向オフセット、速度、加速度、曲率、曲率レート(curvature rate)などの1つまたは複数の差を表す。いくつかの例では、基準コストに関連付けられた重みを減らすことは基準軌道から離れた距離に位置しているターゲット軌道に関連付けられたペナルティを減らすことができ、これは、より安全でおよび/またはより快適な車両操作を導くよりスムーズな移行を提供できる。 A reference cost can include a cost associated with a difference between a point on a reference trajectory (also called a reference point) and a corresponding point on a target trajectory (also called a point or target point), whereby The difference represents one or more differences in yaw, lateral offset, velocity, acceleration, curvature, curvature rate, and the like. In some examples, reducing the weight associated with the reference cost can reduce the penalty associated with the target trajectory being located at a distance from the reference trajectory, which is safer and/or It can provide a smoother transition leading to more comfortable vehicle operation.

いくつかの例では、障害物コストは、基準軌道またはターゲット軌道上の点と環境内の障害物に関連付けられた点との間の距離に関連付けられたコストを含むことができる。例として、障害物に関連付けられたポイントは、運転可能エリアの境界上のポイントに対応でき、または環境内の障害物に関連付けられたポイントに対応できる。いくつかの例では、環境内の障害物は、静的オブジェクト(例えば、建物、縁石、歩道、車線マーキング、標識、信号機、木など)または動的オブジェクト(例えば、車両、自転車乗り、歩行者、動物など)を含むことができるが、これらに限定されない。いくつかの例では、動的オブジェクトをエージェントと呼ぶこともできる。いくつかの例では、静的オブジェクトまたは動的オブジェクトを概してオブジェクトまたは障害物と呼ぶことができる。 In some examples, an obstacle cost may include a cost associated with the distance between a point on the reference or target trajectory and a point associated with the obstacle in the environment. As examples, the points associated with the obstacles can correspond to points on the boundary of the drivable area, or can correspond to points associated with obstacles in the environment. In some examples, obstacles in the environment can be static objects (e.g., buildings, curbs, sidewalks, lane markings, signs, traffic lights, trees, etc.) or dynamic objects (e.g., vehicles, cyclists, pedestrians, animals, etc.). In some examples, dynamic objects can also be called agents. In some examples, static or dynamic objects may be generally referred to as objects or obstacles.

いくつかの例では、横方向コストは、車両の速度に対する最大ステアリング入力など、車両へのステアリング入力に関連付けられたコストを指すことができる。いくつかの例では、縦方向コストは、車両の速度および/または加速度(例えば、最大ブレーキおよび/または加速度)に関連付けられたコストを指すことができる。そのようなコストを使用して、フェリーで運行されている乗客の実行可能な限度および/または快適限度内で車両が動作していることを確実できる。 In some examples, lateral costs can refer to costs associated with steering inputs to the vehicle, such as maximum steering input versus vehicle speed. In some examples, longitudinal costs may refer to costs associated with vehicle speed and/or acceleration (eg, maximum braking and/or acceleration). Such costs can be used to ensure that the vehicle is operating within the practicable and/or comfort limits of the passengers operating the ferry.

いくつかの例では、原因タイプ1および原因タイプ2は、車両の故障またはオブジェクト(例えば、自転車乗り)の故障などの故障を示すことができる。車両性能コンポーネント130は、所定のルール/アサーションを使用して故障を決定できる。例として、限定されないが、ルールは、車両が車両の後方のオブジェクトによって衝撃を受けた場合、故障をオブジェクトに関連付けることができることを示すことができる。いくつかの例では、車両が後方のオブジェクトによって衝撃を受けたときに環境を前方方向に横断しなければならないことを示すような、追加のルールを使用できる。いくつかの例では、原因タイプ(例えば、原因タイプ1および/または原因タイプ2)を、自律車両コントローラのコンポーネントに関連付けることができる。非限定的な例として、そのような原因は、知覚システム、予測システム、プランナシステム、ネットワークレイテンシー、トルク/加速障害、および/または車両の任意の他のコンポーネントまたはサブコンポーネントの障害を含み得る。 In some examples, Cause Type 1 and Cause Type 2 may indicate failures such as vehicle failures or object (eg, bicyclist) failures. Vehicle performance component 130 can determine faults using predetermined rules/assertions. By way of example, and not limitation, a rule may indicate that if a vehicle is impacted by an object behind the vehicle, the failure can be associated with the object. In some examples, additional rules can be used to indicate that the vehicle must traverse the environment in a forward direction when impacted by an object behind it. In some examples, cause types (eg, cause type 1 and/or cause type 2) may be associated with components of the autonomous vehicle controller. As non-limiting examples, such causes may include perceptual systems, predictive systems, planner systems, network latency, torque/acceleration failures, and/or failures of any other component or subcomponent of the vehicle.

上述したように、分析コンポーネントは、シミュレーションデータ126に基づいて、シナリオパラメータを無効にする(例えば、シナリオパラメータに関連付けられた固定値を設定する)ことを決定し、他のシナリオパラメータを変化させることができる。シナリオパラメータを分離することにより、分析コンポーネントは、成功または失敗の結果に関連付けられたシナリオパラメータを決定できる。次いで、車両性能データ132は、パラメータ化シナリオに関連付けられた安全性メトリックを示すことができる。加えて、分析コンポーネントは感度分析を実行して障害の原因を決定できる。例えば、分析コンポーネントは、シナリオパラメータを個別に無効にして、1つまたは複数のシナリオパラメータを分離し、シナリオパラメータを無効にすることが、自律車両の応答にどのように影響するか決定し、1つまたは複数のシナリオパラメータを無効にすることに関連付けられた統計データをキャプチャし、結果を成功または失敗した結果としてキャプチャできる。統計データは、シナリオパラメータのセットが結果にどのように影響するかを示すことができ、成功するシミュレーションがもたらされる可能性を増加または減少させるシナリオパラメータを決定するために使用でき、シミュレーションデータの成功率を増加または減少させるものとして、シナリオパラメータに関連付けられた自律車両のサブシステムを識別するために使用できる。 As described above, the analysis component determines, based on simulation data 126, to override scenario parameters (eg, set fixed values associated with scenario parameters) and to vary other scenario parameters. can be done. Separating the scenario parameters allows the analysis component to determine the scenario parameters associated with a successful or unsuccessful outcome. Vehicle performance data 132 can then indicate safety metrics associated with the parameterized scenario. Additionally, the analysis component can perform sensitivity analysis to determine the cause of failure. For example, the analysis component may individually disable scenario parameters to isolate one or more scenario parameters, determine how disabling the scenario parameters affects the response of the autonomous vehicle; Statistical data associated with disabling one or more scenario parameters can be captured and results captured as success or failure results. Statistical data can show how a set of scenario parameters affects results, can be used to determine which scenario parameters increase or decrease the likelihood of resulting in a successful simulation, and can be used to determine the success of simulation data. It can be used to identify autonomous vehicle subsystems associated with scenario parameters as increasing or decreasing rates.

図7は、本明細書で説明される技法を実装するための例示的なシステム700のブロック図を示す。少なくとも1つの例では、システム700は車両202を含むことができる。図示の例700では、車両202は自律車両であるが、車両202は任意の他のタイプの車両(例えば、様々な操作を実行することが安全であるかどうかの指標を提供し得るドライバーが制御する車両)とすることができる。 FIG. 7 shows a block diagram of an exemplary system 700 for implementing the techniques described herein. In at least one example, system 700 can include vehicle 202 . In the illustrated example 700, the vehicle 202 is an autonomous vehicle, although the vehicle 202 may be any other type of vehicle (eg, a driver-controlled vehicle that may provide an indication of whether it is safe to perform various maneuvers). vehicle).

車両202は、コンピューティングデバイス702、1つまたは複数のセンサシステム704、1つまたは複数のエミッタ706、1つまたは複数の通信接続部708(通信デバイスおよび/またはモデムとも呼ばれる)、少なくとも1つの直接接続部710(例えば、データを交換するため、および/または電力を提供するために車両202と物理的に結合するための)、および1つまたは複数の駆動システム712を含むことができる。1つまたは複数のセンサシステム704は、環境に関連付けられたセンサデータをキャプチャするように構成できる。 Vehicle 202 includes a computing device 702, one or more sensor systems 704, one or more emitters 706, one or more communication connections 708 (also called communication devices and/or modems), at least one direct Connections 710 (eg, for physically coupling with vehicle 202 to exchange data and/or provide power) and one or more drive systems 712 may be included. One or more sensor systems 704 can be configured to capture sensor data associated with the environment.

センサシステム704は、飛行時間センサ、位置センサ(例えば、GPS、コンパスなど)、慣性センサ(例えば、慣性測定装置(IMU)、加速度計、磁力計、ジャイロスコープなど)、lidarセンサ、radarセンサ、sonarセンサ、赤外線センサ、カメラ(例えば、RGB、IR、強度、深度など)、マイクセンサ、環境センサ(例えば、温度センサ、湿度センサ、光センサ、圧力センサなど)、超音波トランスデューサー、ホイールエンコーダなどを含むことができる。センサシステム704は、これらまたは他のタイプのセンサのそれぞれの複数のインスタンスを含むことができる。例えば、飛行時間センサは、車両202の角、前部、後部、側面、および/または上部に配置された個々の飛行時間センサを含むことができる。別の例として、カメラセンサは、車両202の外部および/または内部の周りの様々な場所に配置された複数のカメラを含むことができる。センサシステム704はコンピューティングデバイス702に入力を提供できる。 Sensor system 704 may include time-of-flight sensors, position sensors (eg, GPS, compass, etc.), inertial sensors (eg, inertial measurement units (IMUs), accelerometers, magnetometers, gyroscopes, etc.), lidar sensors, radar sensors, sonar sensors, infrared sensors, cameras (e.g. RGB, IR, intensity, depth, etc.), microphone sensors, environmental sensors (e.g. temperature sensors, humidity sensors, light sensors, pressure sensors, etc.), ultrasonic transducers, wheel encoders, etc. can contain. Sensor system 704 may include multiple instances of each of these or other types of sensors. For example, the time-of-flight sensors may include individual time-of-flight sensors located at the corners, front, rear, sides, and/or top of vehicle 202 . As another example, camera sensors may include multiple cameras positioned at various locations around the exterior and/or interior of vehicle 202 . Sensor system 704 can provide input to computing device 702 .

車両202はまた、光および/または音を放出するための1つまたは複数のエミッタ706を含むことができる。この例における1つまたは複数のエミッタ706は、車両202の乗客と通信するための内部オーディオおよびビジュアルエミッタを含む。例示の目的で、限定ではなく、内部エミッタは、スピーカー、光、記号、ディスプレイ画面、タッチ画面、触覚エミッタ(例えば、振動および/またはフォースフィードバック)、機械式アクチュエータ(例えば、シートベルトテンショナー、シートポジショナー、ヘッドレストポジショナーなど)などを含むことができる。この例における1つまたは複数のエミッタ706はまた、外部エミッタを含む。限定ではなく例として、この例における外部エミッタは、走行の方向または車両の作動の他のインジケータ(例えば、インジケータライト、標識、ライトアレイなど)を信号で送るためのライト、および音響ビームステアリング技術を備え得る1つまたは複数の歩行者または他の近くの車両と音声で通信するための1つまたは複数のオーディオエミッタ(例えば、スピーカー、スピーカーアレイ、ホーンなど)を含む。 Vehicle 202 may also include one or more emitters 706 for emitting light and/or sound. One or more emitters 706 in this example include internal audio and visual emitters for communicating with passengers of vehicle 202 . By way of example and not limitation, internal emitters may include speakers, lights, symbols, display screens, touch screens, tactile emitters (e.g. vibration and/or force feedback), mechanical actuators (e.g. seat belt tensioners, seat positioners). , headrest positioners, etc.). The one or more emitters 706 in this example also include external emitters. By way of example and not limitation, the external emitters in this example include lights for signaling direction of travel or other indicators of vehicle operation (e.g., indicator lights, signs, light arrays, etc.), and acoustic beam steering technology. It includes one or more audio emitters (eg, speakers, speaker arrays, horns, etc.) for audibly communicating with one or more pedestrians or other nearby vehicles that may be provided.

車両202はまた、車両202と1つまたは複数の他のローカルまたはリモートコンピューティングデバイス(例えば、リモートテレオペレーションコンピューティングデバイス)またはリモートサービスとの間の通信を可能にする1つまたは複数の通信接続部708を含むことができる。例えば、通信接続部708は車両202および/または駆動システム712上の他のローカルコンピューティングデバイスとの通信を容易にできる。また、通信接続部708は、車両202が他の近くのコンピューティングデバイス(例えば、他の近くの車両、交通信号など)と通信することを可能にできる。 Vehicle 202 also has one or more communication connections that enable communication between vehicle 202 and one or more other local or remote computing devices (e.g., remote teleoperation computing devices) or remote services. A portion 708 can be included. For example, communication connection 708 can facilitate communication with other local computing devices on vehicle 202 and/or drive system 712 . Communication connection 708 may also allow vehicle 202 to communicate with other nearby computing devices (eg, other nearby vehicles, traffic lights, etc.).

通信接続部708は、コンピューティングデバイス702を別のコンピューティングデバイスまたは1つまたは複数の外部ネットワーク714(例えば、インターネット)に接続するための物理および/または論理インターフェースを含むことができる。例えば、通信接続部708は、IEEE802.11規格によって定義された周波数を介するようなWi-Fiベースの通信、Bluetoothなどの短距離無線周波数、セルラー通信(例えば、2G、3G、4G、4GLTE、5Gなど)、衛星通信、専用狭域通信(DSRC)、またはそれぞれのコンピューティングデバイスが他のコンピューティングデバイスとインターフェースで接続することを可能にする任意の適切な有線または無線通信プロトコルを可能にできる。少なくともいくつかの例では、通信接続部708は、上記で詳細に説明したように、1つまたは複数のモデムを備え得る。 Communications connection 708 may include physical and/or logical interfaces for connecting computing device 702 to another computing device or one or more external networks 714 (eg, the Internet). For example, communication connection 708 may support Wi-Fi-based communications, such as via frequencies defined by the IEEE 802.11 standard, short-range radio frequencies such as Bluetooth, cellular communications (e.g., 2G, 3G, 4G, 4G LTE, 5G etc.), satellite communications, dedicated short range communications (DSRC), or any suitable wired or wireless communications protocol that allows each computing device to interface with other computing devices. In at least some examples, communication connection 708 may comprise one or more modems, as described in detail above.

少なくとも1つの例では、車両202は、1つまたは複数の駆動システム712を含むことができる。いくつかの例では、車両202は、単一の駆動システム712を有することができる。少なくとも1つの例では、車両202が複数の駆動システム712を有する場合、個々の駆動システム712を車両202の両端部(例えば、前部および後部など)に配置できる。少なくとも1つの例では、駆動システム712は駆動システム712および/または車両202の周囲の状態を検出するための1つまたは複数のセンサシステム704を含むことができる。限定ではなく例として、センサシステム704は、駆動システムのホイールの回転を感知するための1つまたは複数のホイールエンコーダ(例えばロータリーエンコーダー)、駆動システムの方向と加速度を測定するための慣性センサ(例えば、慣性測定ユニット、加速度計、ジャイロスコープ、磁力計など)、カメラまたはその他の画像センサ、駆動システムの周囲のオブジェクトを音響的に検出するための超音波センサ、lidarセンサ、radarセンサなどを含むことができる。一部のセンサ、ホイールエンコーダなど、は駆動システム712に固有とすることができる。いくつかのケースでは、駆動システム712上のセンサシステム704は車両202の対応するシステム(例えば、センサシステム704)と重複または補足できる。 In at least one example, vehicle 202 may include one or more drive systems 712 . In some examples, vehicle 202 may have a single drive system 712 . In at least one example, where vehicle 202 has multiple drive systems 712, individual drive systems 712 may be located at opposite ends of vehicle 202 (eg, front and rear, etc.). In at least one example, drive system 712 may include one or more sensor systems 704 for detecting conditions around drive system 712 and/or vehicle 202 . By way of example and not limitation, sensor system 704 includes one or more wheel encoders (e.g., rotary encoders) for sensing rotation of the wheels of the drive system, inertial sensors (e.g., , inertial measurement units, accelerometers, gyroscopes, magnetometers, etc.), cameras or other image sensors, ultrasonic sensors for acoustically detecting objects around the drive system, lidar sensors, radar sensors, etc. can be done. Some sensors, wheel encoders, etc. may be specific to drive system 712 . In some cases, sensor system 704 on drive system 712 may overlap or supplement a corresponding system (eg, sensor system 704) on vehicle 202 .

駆動システム712は、高電圧バッテリー、車両を推進するモーター、バッテリーからの直流を他の車両システムで使用する交流に変換するインバーター、ステアリングモーターおよびステアリングラック(電動とすることができる)を含むステアリングシステム、油圧または電気アクチュエータを含むブレーキシステム、油圧および/または空気圧コンポーネントを含むサスペンションシステム、トラクションの損失を軽減し制御を維持するブレーキ力分散用の安定性制御システム、HVACシステム、照明(例えば、車両の外部環境を照らすヘッド/テールライトなどの照明)、および1つまたは複数の他のシステム(例えば、冷却システム、安全システム、車載充電システム、DC/DCコンバーター、高電圧ジャンクション、高電圧ケーブル、充電システム、充電ポートなどの他の電装コンポーネント)を含む、多くの車両システムを含むことができる。加えて、駆動システム712は、センサシステム704からデータを受信および前処理し、様々な車両システムの操作を制御できる駆動システムコントローラを含むことができる。いくつかの例では、駆動システムコントローラは、1つまたは複数のプロセッサおよび1つまたは複数のプロセッサと通信可能に結合されたメモリを含むことができる。メモリは、駆動システム712の様々な機能を実行するための1つまたは複数のモジュールを格納できる。さらに、駆動システム712はまた、それぞれの駆動システムによる1つまたは複数の他のローカルまたはリモートコンピューティングデバイスとの通信を可能にする1つまたは複数の通信接続部を含む。 The drive system 712 includes a high voltage battery, a motor that propels the vehicle, an inverter that converts direct current from the battery to alternating current for use in other vehicle systems, a steering motor and a steering rack (which may be electric). , braking systems including hydraulic or electric actuators, suspension systems including hydraulic and/or pneumatic components, stability control systems for braking force distribution to reduce loss of traction and maintain control, HVAC systems, lighting (e.g., vehicle lighting such as head/tail lights that illuminate the external environment), and one or more other systems (e.g. cooling system, safety system, onboard charging system, DC/DC converter, high voltage junction, high voltage cable, charging system) , other electrical components such as charging ports). Additionally, drive system 712 can include a drive system controller that can receive and preprocess data from sensor system 704 and control the operation of various vehicle systems. In some examples, the drive system controller may include one or more processors and memory communicatively coupled to the one or more processors. The memory can store one or more modules for performing various functions of drive system 712 . In addition, drive system 712 also includes one or more communication connections that enable the respective drive system to communicate with one or more other local or remote computing devices.

コンピューティングデバイス702は、1つまたは複数のプロセッサ516および1つまたは複数のプロセッサ716と通信可能に結合されたメモリ518を含むことができる。例示される例では、コンピューティングデバイス702のメモリ718は、ローカリゼーションコンポーネント720、知覚コンポーネント722、予測コンポーネント724、計画コンポーネント726、および1つまたは複数のシステムコントローラ728を格納する。例示の目的でメモリ718内に存在するものとして示されているが、ローカリゼーションコンポーネント720、知覚コンポーネント722、予測コンポーネント724、計画コンポーネント726、および1つまたは複数のシステムコントローラ728は、追加的に、または代替的に、コンピューティングデバイス702にアクセス可能である(例えば、車両202の異なるコンポーネントに格納されている)、および/または車両202にアクセス可能である(例えば、遠隔に格納されている)ことができる、ことが企図される。 Computing device 702 can include one or more processors 516 and memory 518 communicatively coupled to one or more processors 716 . In the illustrated example, memory 718 of computing device 702 stores localization component 720 , perception component 722 , prediction component 724 , planning component 726 , and one or more system controllers 728 . Although shown as residing in memory 718 for purposes of illustration, localization component 720, perception component 722, prediction component 724, planning component 726, and one or more system controllers 728 may additionally or Alternatively, computing device 702 may be accessible (eg, stored in a different component of vehicle 202) and/or vehicle 202 may be accessible (eg, stored remotely). It is contemplated that it can.

コンピューティングデバイス702のメモリ718において、ローカリゼーションコンポーネント720は、センサシステム704からデータを受信して車両202の位置を決定する機能を含むことができる。例えば、ローカリゼーションコンポーネント720は、環境の3次元マップを含むおよび/または要求/受信でき、マップ内の自律車両の位置を継続的に決定できる。いくつかの例では、ローカリゼーションコンポーネント720は、SLAM(ローカリゼーションとマッピングの同時実行)またはCLAMS(キャリブレーション、ローカリゼーションとマッピングの同時実行)を使用し、飛行時間データ、画像データ、lidarデータ、radarデータ、sonarデータ、IMUデータ、GPSデータ、ホイールエンコーダデータ、またはそれらの任意の組み合わせなどを受信して、自律車両の位置を正確に決定できる。いくつかの例では、ローカリゼーションコンポーネント720は、本明細書で論じられるように、車両202の様々なコンポーネントにデータを提供し、軌道を生成するための自律車両の初期位置を決定できる。 In memory 718 of computing device 702 , localization component 720 may include functionality for receiving data from sensor system 704 to determine the location of vehicle 202 . For example, the localization component 720 can include and/or request/receive a three-dimensional map of the environment and can continuously determine the position of the autonomous vehicle within the map. In some examples, the localization component 720 uses SLAM (simultaneous localization and mapping) or CLAMS (simultaneous calibration, localization and mapping) to provide time-of-flight data, image data, lidar data, radar data, Sonar data, IMU data, GPS data, wheel encoder data, or any combination thereof, or the like, may be received to accurately determine the position of the autonomous vehicle. In some examples, localization component 720 can provide data to various components of vehicle 202 to determine an initial position of the autonomous vehicle for generating a trajectory, as discussed herein.

知覚コンポーネント722は、オブジェクトの検出、区分、および/または分類を実行するための機能を含むことができる。いくつかの例では、知覚コンポーネント722は、車両202に近接するエンティティの存在および/またはエンティティタイプ(例えば、自動車、歩行者、自転車乗り、建物、木、路面、縁石、歩道、不明など)としてのエンティティの分類を示す処理済みセンサデータを提供できる。追加および/または代替の例では、知覚コンポーネント722は、検出されたエンティティおよび/またはエンティティが配置されている環境に関連付けられた1つまたは複数の特性(パラメータとも呼ばれる)を示す処理されたセンサデータを提供できる。いくつかの例では、エンティティに関連付けられた特性は、x位置(グローバル位置)、y位置(グローバル位置)、z位置(グローバル位置)、方向、エンティティタイプ(例えば、分類など)、エンティティの速度、エンティティの範囲(サイズ)などを含むことができるが、これらに限定されない。環境に関連付けられた特性は、環境内の別のエンティティの存在、環境内の別のエンティティの状態、時刻、曜日、季節、気象条件、地理的位置、暗闇/光の表示などを含むことができるが、これらに限定されない。 Perception component 722 may include functionality for performing object detection, segmentation, and/or classification. In some examples, the perceptual component 722 detects the presence of entities in proximity to the vehicle 202 and/or their presence as entity types (e.g., cars, pedestrians, bicyclists, buildings, trees, road surfaces, curbs, sidewalks, unknown, etc.). It can provide processed sensor data that indicates the entity's classification. In additional and/or alternative examples, the sensory component 722 uses processed sensor data indicative of one or more characteristics (also called parameters) associated with the detected entity and/or the environment in which the entity is located. can provide In some examples, properties associated with an entity include x-position (global position), y-position (global position), z-position (global position), orientation, entity type (e.g., classification, etc.), entity velocity, It can include, but is not limited to, the extent (size) of the entity, and the like. Characteristics associated with an environment may include the presence of other entities in the environment, the state of other entities in the environment, time of day, day of the week, season, weather conditions, geographic location, darkness/light indications, etc. but not limited to these.

知覚コンポーネント722は、知覚コンポーネント722によって生成された知覚データを格納するための機能を含むことができる。いくつかの例では、知覚コンポーネント722は、オブジェクトタイプとして分類されたオブジェクトに対応するトラックを決定できる。例示のみを目的として、センサシステム704を使用する知覚コンポーネント722は、環境の1つまたは複数の画像をキャプチャできる。センサシステム704は、歩行者などのオブジェクトを含む環境の画像をキャプチャできる。歩行者は、時間Tにおける第1の位置に、時間T+tにおける第2の位置(例えば、時間Tの後の時間tのスパン中の移動)にいることができる。換言すれば、歩行者は、この時間期間中に第1の位置から第2の位置まで移動できる。そのような移動は、例えば、オブジェクトに関連付けられた格納された知覚データとしてログに記録できる。 Sensory component 722 may include functionality for storing sensory data generated by sensory component 722 . In some examples, the perceptual component 722 can determine tracks corresponding to objects categorized as object types. By way of example only, sensory component 722 using sensor system 704 can capture one or more images of the environment. The sensor system 704 can capture images of the environment including objects such as pedestrians. A pedestrian can be in a first position at time T and in a second position at time T+t (eg, moving during a span of time t after time T). In other words, the pedestrian can move from the first location to the second location during this time period. Such movements can be logged, for example, as stored sensory data associated with the object.

格納された知覚データは、いくつかの例では、車両によってキャプチャされた融合知覚データを含むことができる。融合知覚データは、画像センサ、lidarセンサ、radarセンサ、飛行時間センサ、sonarセンサ、グローバルポジショニングシステムセンサ、内部センサ、および/またはこれらの任意の組み合わせなどのセンサシステム704からのセンサデータの融合または他の組み合わせを含むことができる。格納された知覚データは、追加的または代替的に、センサデータに表されるオブジェクト(例えば、歩行者、車両、建物、路面など)の意味分類を含む分類データを含むことができる。格納された知覚データは、追加的または代替的に、環境を通る動的オブジェクトとして分類されるオブジェクトの動きに対応するトラックデータ(経時的なオブジェクトに関連付けられた履歴的な位置、方向、センサ特徴などの集合)を含むことができる。トラックデータは、経時的に複数の異なるオブジェクトの複数のトラックを含むことができる。このトラックデータを、オブジェクトが止まっている(例えば、静止している)または移動している(例えば、歩行、走行など)時に、特定のタイプのオブジェクト(例えば、歩行者、動物など)の画像を識別するためにマイニングすることができる。この例では、コンピューティングデバイスは、歩行者に対応するトラックを決定する。 The stored sensory data, in some examples, may include fused sensory data captured by the vehicle. Fused sensory data may be the fusion of sensor data from sensor system 704 such as image sensors, lidar sensors, radar sensors, time-of-flight sensors, sonar sensors, global positioning system sensors, internal sensors, and/or any combination thereof or other sensor data. can include a combination of The stored sensory data may additionally or alternatively include classification data including semantic classifications of objects (eg, pedestrians, vehicles, buildings, road surfaces, etc.) represented in the sensor data. The stored sensory data may additionally or alternatively be track data (historical position, orientation, sensor features associated with the object over time) corresponding to movement of the object through the environment classified as a dynamic object. etc.). Track data may include multiple tracks of multiple different objects over time. This track data is used to generate images of a particular type of object (e.g. pedestrian, animal, etc.) when the object is stationary (e.g. stationary) or moving (e.g. walking, running, etc.). It can be mined for identification. In this example, the computing device determines the track corresponding to the pedestrian.

予測コンポーネント724は、環境内の1つまたは複数のオブジェクトの可能な位置の予測確率を表す1つまたは複数の確率マップを生成できる。例えば、予測コンポーネント724は、車両202から閾値距離内にある車両、歩行者、動物などのための1つまたは複数の確率マップを生成できる。いくつかの例では、予測コンポーネント724は、オブジェクトのトラックを測定し、観測されたおよび予測された挙動に基づいて、オブジェクトの、離散化された予測確率マップ、ヒートマップ、確率分布、離散化された確率分布、および/または軌道を生成できる。いくつかの例では、1つまたは複数の確率マップは、環境内の1つまたは複数のオブジェクトの意図を表すことができる。 The prediction component 724 can generate one or more probability maps representing predicted probabilities of possible locations of one or more objects in the environment. For example, prediction component 724 can generate one or more probability maps for vehicles, pedestrians, animals, etc. within a threshold distance of vehicle 202 . In some examples, the prediction component 724 measures the track of the object and generates discretized prediction probability maps, heat maps, probability distributions, discretized probability distributions and/or trajectories can be generated. In some examples, one or more probability maps may represent intents of one or more objects in the environment.

計画コンポーネント726は環境を通り横断するために車両202が辿る経路を決定できる。例えば、計画コンポーネント726は、様々なルートおよび経路ならびに様々なレベルの詳細を決定できる。いくつかの例では、計画コンポーネント726は、第1の位置(例えば、現在の位置)から第2の位置(例えば、ターゲット位置)へ進行するためのルートを決定できる。本説明を目的に、ルートは2つの位置の間を走行するための一連の経由地点にできる。非限定的な例として、経由地点は、道路、交差点、全地球測位システム(GPS)座標などを含む。さらに、計画コンポーネント726は、第1の位置から第2の位置へのルートの少なくとも一部に沿って自律車両をガイドするための命令を生成できる。少なくとも1つの例において、計画コンポーネント726は、自律車両を一連の経由地点の第1の経由地点から一連の経由地点の第2の経由地点までどのようにガイドすべきかを決定できる。いくつかの例では、命令は経路または経路の一部とすることができる。いくつかの例では、複数の経路をreceding horizon技術に従って、実質的に同時に(すなわち、技術的許容範囲内で)生成できる。最も高い信頼水準を有するreceding data horizonにおける複数の経路の単一の経路を、車両を操作するために選択できる。 The planning component 726 can determine the route that the vehicle 202 follows to traverse through the environment. For example, planning component 726 can determine different routes and paths and different levels of detail. In some examples, planning component 726 can determine a route to travel from a first location (eg, current location) to a second location (eg, target location). For the purposes of this description, a route can be a series of waypoints for traveling between two locations. Non-limiting examples of waypoints include roads, intersections, global positioning system (GPS) coordinates, and the like. Additionally, the planning component 726 can generate instructions for guiding the autonomous vehicle along at least a portion of the route from the first location to the second location. In at least one example, the planning component 726 can determine how the autonomous vehicle should be guided from a first waypoint of the series of waypoints to a second waypoint of the series of waypoints. In some examples, an instruction may be a path or part of a path. In some examples, multiple paths can be generated substantially simultaneously (ie, within technological tolerances) according to the receding horizon technique. A single path of multiple paths in the receding data horizon with the highest confidence level can be selected to steer the vehicle.

他の例では、計画コンポーネント726は、代替的にまたは追加的に、知覚コンポーネント722からのデータを使用して、車両202が環境を通り横断するために辿る経路を決定できる。例えば、計画コンポーネント726は知覚コンポーネント722から、環境に関連付けられたオブジェクトに関するデータを受信できる。このデータを使用して、計画コンポーネント726は、環境内のオブジェクトを回避するための、第1の位置(例えば、現在の位置)から第2の位置(例えば、ターゲット位置)まで移動する経路を決定できる。少なくともいくつかの例では、そのような計画コンポーネント726はそのような衝突のない経路がないと決定し、次に車両202を全ての衝突を回避するおよび/またはそうでなければ損傷を軽減する安全な停止へ導く経路を提供し得る。 In other examples, the planning component 726 can alternatively or additionally use data from the perception component 722 to determine the path that the vehicle 202 takes to traverse through the environment. For example, planning component 726 can receive data from sensory component 722 regarding objects associated with the environment. Using this data, planning component 726 determines a path to travel from a first location (eg, current location) to a second location (eg, target location) to avoid objects in the environment. can. In at least some examples, such planning component 726 determines that there are no such collision-free paths, and then directs vehicle 202 to avoid all collisions and/or otherwise damage-mitigating safety routes. can provide a path leading to a catastrophic outage.

少なくとも1つの例では、コンピューティングデバイス702は、1つまたは複数のシステムコントローラ728を含むことができ、これは、車両202のステアリング、推進、ブレーキ、安全、エミッタ、通信、および他のシステムを制御するように構成できる。これらのシステムコントローラ728は駆動システム712の対応するシステムおよび/または車両202の他のコンポーネントと通信および/または制御でき、これは計画コンポーネント726から提供される経路に従って動作するように構成され得る。 In at least one example, computing device 702 may include one or more system controllers 728, which control steering, propulsion, braking, safety, emitters, communications, and other systems of vehicle 202. can be configured to These system controllers 728 may communicate with and/or control corresponding systems of drive system 712 and/or other components of vehicle 202 , which may be configured to operate according to the routes provided by planning component 726 .

車両202は、コンピューティングデバイス204にネットワーク514を介して接続でき、1つまたは複数のプロセッサ730および1つまたは複数のプロセッサ730と通信可能に結合されたメモリ732を含むことができる。少なくとも1つの例では、1つまたは複数のプロセッサ730はプロセッサ716と同様にすることができ、メモリ732はメモリ718と同様にすることができる。例示される例では、コンピューティングデバイス204のメモリ732は、シナリオエディタコンポーネント108、パラメータコンポーネント112、エラーモデルコンポーネント116、パラメータ化シナリオコンポーネント120、シミュレーションコンポーネント124、分析コンポーネント128、および車両性能コンポーネント130を格納する。例示的な目的でメモリ732内に存在するように描写されるが、シナリオエディタコンポーネント108、パラメータコンポーネント112、エラーモデルコンポーネント116、パラメータ化シナリオコンポーネント120、シミュレーションコンポーネント124、分析コンポーネント128、および車両性能コンポーネント130は、追加的にまたは代替的に、コンピューティングデバイス204にアクセス可能であること(例えば、コンピューティングデバイス204の異なるコンポーネントに格納される)、および/またはコンピューティングデバイス204にアクセス可能であること(例えば、リモートに格納されている)ができることが企図される。シナリオエディタコンポーネント108、パラメータコンポーネント112、エラーモデルコンポーネント116、パラメータ化シナリオコンポーネント120、シミュレーションコンポーネント124、分析コンポーネント128、および車両性能コンポーネント130は、図1のシナリオエディタコンポーネント108、パラメータコンポーネント112、エラーモデルコンポーネント116、パラメータ化シナリオコンポーネント120、シミュレーションコンポーネント124、分析コンポーネント128、および車両性能コンポーネント130と実質的に同様とすることができる。 Vehicle 202 may be connected to computing device 204 via network 514 and may include one or more processors 730 and memory 732 communicatively coupled to one or more processors 730 . In at least one example, one or more processors 730 can be similar to processor 716 and memory 732 can be similar to memory 718 . In the illustrated example, memory 732 of computing device 204 stores scenario editor component 108 , parameter component 112 , error model component 116 , parameterization scenario component 120 , simulation component 124 , analysis component 128 , and vehicle performance component 130 . do. Although depicted as residing in memory 732 for illustrative purposes, scenario editor component 108, parameter component 112, error model component 116, parameterization scenario component 120, simulation component 124, analysis component 128, and vehicle performance component 130 may additionally or alternatively be accessible to the computing device 204 (eg, stored in different components of the computing device 204) and/or be accessible to the computing device 204. (eg, stored remotely). Scenario editor component 108, parameter component 112, error model component 116, parameterized scenario component 120, simulation component 124, analysis component 128, and vehicle performance component 130 are similar to scenario editor component 108, parameter component 112, and error model component 112 of FIG. 116 , can be substantially similar to parameterization scenario component 120 , simulation component 124 , analysis component 128 , and vehicle performance component 130 .

コンピューティングデバイス702のプロセッサ716およびコンピューティングデバイス204のプロセッサ730は、本明細書で説明されるように、データを処理し動作を実施するための命令を実行可能な任意の適切なプロセッサとすることができる。限定ではなく例として、プロセッサ716および730は、1つまたは複数の中央処理装置(CPU)、グラフィック処理装置(GPU)、または電子データを処理して当該電子データをレジスタまたはメモリに格納できる他の電子データに変換する任意の他のデバイスまたはデバイスの一部を含むことができる。いくつかの例で、集積回路(例えば、ASICなど)、ゲートアレイ(例えば、FPGAなど)、および他のハードウェアデバイスはまた、それらがエンコードされた命令を実装するよう構成される限り、プロセッサとみなすことができる。 Processor 716 of computing device 702 and processor 730 of computing device 204 may be any suitable processor capable of executing instructions to process data and perform operations as described herein. can be done. By way of example and not limitation, processors 716 and 730 may be one or more central processing units (CPUs), graphics processing units (GPUs), or other devices capable of processing electronic data and storing the electronic data in registers or memory. It can include any other device or part of a device that converts to electronic data. In some examples, integrated circuits (e.g., ASICs, etc.), gate arrays (e.g., FPGAs, etc.), and other hardware devices are also processors and processors, so long as they are configured to implement the encoded instructions. can be regarded as

コンピューティングデバイス702のメモリ718およびコンピューティングデバイス204のメモリ732は、非一時的コンピュータ可読媒体の例である。メモリ718および732は、本明細書に記載の方法および様々なシステムに起因する機能を実装する、オペレーティングシステムおよび1つまたは複数のソフトウェアアプリケーション、命令、プログラム、および/またはデータを格納できる。様々な実装では、メモリ718および732を、スタティックランダムアクセスメモリ(SRAM)、シンクロナスダイナミックRAM(SDRAM)、不揮発性/フラッシュタイプメモリ、または情報を格納可能な任意の他のタイプのメモリなどの任意の適切なメモリ技術を用いて実装できる。本明細書で説明されるアーキテクチャ、システム、および個々の要素は、多くの他の論理的、プログラム的、および物理的なコンポーネントを含むことができ、添付図面に図示されるそれらは本明細書での説明に関連する単なる例にすぎない。 Memory 718 on computing device 702 and memory 732 on computing device 204 are examples of non-transitory computer-readable media. Memories 718 and 732 can store an operating system and one or more software applications, instructions, programs, and/or data that implement the methods and functions attributed to the various systems described herein. In various implementations, memories 718 and 732 may be any memory such as static random access memory (SRAM), synchronous dynamic RAM (SDRAM), non-volatile/flash type memory, or any other type of memory capable of storing information. can be implemented using any suitable memory technology. The architectures, systems, and individual elements described herein may include many other logical, programmatic, and physical components, illustrated herein in the accompanying drawings. is merely an example relevant to the description of

いくつかの例では、本明細書で説明されるコンポーネントのいくつかまたは全ての態様は、任意のモデル、アルゴリズム、および/または機械学習アルゴリズムを含むことができる。例えば、いくつかの例では、メモリ718および732内のコンポーネントを、ニューラルネットワークとして実装できる。 In some examples, aspects of some or all of the components described herein may include any models, algorithms, and/or machine learning algorithms. For example, in some examples the components in memories 718 and 732 may be implemented as neural networks.

図8は、車両コントローラに関連付けられた安全性メトリックを決定するための例示的なプロセス800を示す。プロセス800の一部または全てを、本明細書に記載されるように、図1乃至図7の1つまたは複数のコンポーネントによって実行できる。例えば、プロセス800の一部または全ては、コンピューティングデバイス204および/またはコンピューティングデバイス702によって実行できる。 FIG. 8 shows an exemplary process 800 for determining safety metrics associated with vehicle controllers. Some or all of process 800 may be performed by one or more components of FIGS. 1-7, as described herein. For example, some or all of process 800 may be performed by computing device 204 and/or computing device 702 .

例示的なプロセス800の操作802において、プロセス800は、環境内の自律車両における動作に関連付けられたログデータを受信することを含むことができる。いくつかの例では、ログデータを少なくとも環境のセンサデータをキャプチャする車両によって生成できる。 At operation 802 of exemplary process 800, process 800 can include receiving log data associated with operations in an autonomous vehicle within an environment. In some examples, log data can be generated by the vehicle capturing at least environmental sensor data.

例示的なプロセス800の操作804にて、プロセス800は、ログデータ(または他のデータ)に基づいて、シナリオのセットを決定することを含むことができ、シナリオのセットのシナリオは環境の態様に関連付けられたシナリオパラメータを含む。いくつかの例では、コンピューティングデバイスは、ログデータ内に表される類似のシナリオをグループ化できる。例えば、シナリオを、例えば、k-meansクラスタリングおよび/または環境のパラメータ間の加重距離(例えば、ユークリッド)を評価すること、を使用してグループ化できる。加えて、シナリオパラメータは、夜間環境パラメータまたは湿潤条件環境パラメータなどの環境パラメータを表すことができる。いくつかの例では、シナリオパラメータは、車両またはオブジェクト(例えば、ポーズ、速度など)に関連付けることができる。 At operation 804 of the exemplary process 800, the process 800 can include determining a set of scenarios based on the log data (or other data), the scenarios of the set of scenarios depending on aspects of the environment. Contains associated scenario parameters. In some examples, the computing device can group similar scenarios represented in the log data. For example, scenarios can be grouped using, for example, k-means clustering and/or evaluating weighted distances (eg, Euclidean) between parameters of the environment. Additionally, the scenario parameters may represent environmental parameters such as night time environmental parameters or wet condition environmental parameters. In some examples, scenario parameters may be associated with vehicles or objects (eg, pose, speed, etc.).

例示的なプロセス800の操作806において、プロセス800は、自律車両のサブシステムに関連付けられたエラーモデルを決定することを含むことができる。エラーモデルコンポーネントは、車両データ(例えば、ログデータ)をグラウンドトゥルースデータと比較して、車両データとグラウンドトゥルースデータとの間の差を決定できる。いくつかの例では、車両データは、推定位置、推定方向、推定範囲などの環境内のオブジェクトに関連付けられた推定値を表すことができ、グラウンドトゥルースデータは、オブジェクトの実際の位置、実際の方向、または実際の範囲を表すことができる。差に基づいて、エラーモデルコンポーネントは、車両のサブシステム(例えば、知覚システム、追跡システム、予測システムなど)に関連付けられたエラーを決定できる。 At operation 806 of exemplary process 800, process 800 may include determining an error model associated with a subsystem of the autonomous vehicle. An error model component can compare vehicle data (eg, log data) to ground truth data to determine differences between the vehicle data and the ground truth data. In some examples, vehicle data can represent estimates associated with objects in the environment, such as estimated position, estimated direction, and estimated range, while ground truth data can represent the object's actual position, actual direction, etc. , or can represent the actual range. Based on the differences, the error model component can determine errors associated with vehicle subsystems (eg, perception system, tracking system, prediction system, etc.).

例示的なプロセス800の操作808において、プロセス800は、シナリオパラメータおよびエラーモデルに基づいて、パラメータ化シナリオを決定することを含むことができる。これらを組み合わせて、シナリオパラメータおよび/またはエラーモデルによって提供されるバリエーションをカバーできるパラメータ化シナリオを作成できる。いくつかの例では、シナリオパラメータをランダムに選択して組み合わせて、パラメータ化シナリオを作成できる。いくつかの例では、シナリオパラメータは、同時に発生する確率に基づいて組み合わせることができる。例として、限定されないが、ログデータは、5%の運転経験が歩行者遭遇を含むことを示すことができ、パラメータ化シナリオコンポーネントは、パラメータ化シナリオコンポーネントによって生成されたパラメータ化シナリオの5%において、シナリオパラメータとして歩行者を含むことができる。いくつかの例では、パラメータ化シナリオコンポーネントは、パラメータ化シナリオを検証して、シナリオパラメータの見込みのないまたはありそうもない組み合わせを削減できる。例として、限定されないが、車両は湖に位置しておらず、歩行者は毎秒30メートルの速度で歩いていない。非限定的な例として、そのようなパラメータ化シナリオは、シナリオパラメータに少なくとも部分的に基づいて、知覚モデル、予測モデルなどのエラーの様々なガウス分布(または他の分布)を有する特定の定義された道路における車両およびジェイウォーカーの距離、速度、照明条件、気象条件などの範囲を含み得る。 At operation 808 of exemplary process 800, process 800 can include determining a parameterized scenario based on the scenario parameters and the error model. These can be combined to create parameterized scenarios that can cover variations provided by scenario parameters and/or error models. In some examples, scenario parameters can be randomly selected and combined to create a parameterized scenario. In some examples, scenario parameters can be combined based on their probabilities of co-occurrence. By way of example, and not limitation, the log data may indicate that 5% of the driving experiences include pedestrian encounters, and the parameterized scenario component generates , can include pedestrians as scenario parameters. In some examples, the parameterized scenario component can validate parameterized scenarios to reduce unlikely or improbable combinations of scenario parameters. By way of example, and not limitation, the vehicle is not located on the lake and the pedestrian is not walking at 30 meters per second. As a non-limiting example, such a parameterized scenario is a specific defined scenario with various Gaussian (or other distributions) of errors in perceptual models, predictive models, etc., based at least in part on the scenario parameters. range of vehicle and jaywalker distances, speeds, lighting conditions, weather conditions, etc. on roads.

例示的なプロセス800の操作810において、プロセス800は、エラーに少なくとも部分的に基づいて、パラメータ化シナリオ、シナリオパラメータ、またはシミュレートされた車両のコンポーネントの少なくとも1つを修正することによって、パラメータ化シナリオに摂動を与えること、を含むことができる。いくつかの例では、不確実性をシナリオパラメータに関連付けることができる。例として、限定されないが、オブジェクトの位置を5%の不確実性に関連付け、自律コントローラに環境を5%の不確実性を考慮しながらトラバースさせることができる。いくつかの例では、シミュレータは、シミュレータがシミュレーションを実行する際に、シミュレーションに組み込むエラーをエラーモデルから決定できる。 At operation 810 of the exemplary process 800, the process 800 modifies at least one of the parameterized scenario, the scenario parameters, or the components of the simulated vehicle based at least in part on the error. perturbing the scenario. In some examples, uncertainty can be associated with scenario parameters. As an example, and not by way of limitation, an object's position may be associated with a 5% uncertainty and the autonomous controller may be allowed to traverse the environment while accounting for the 5% uncertainty. In some examples, the simulator can determine from the error model which errors to incorporate into the simulation when the simulator runs the simulation.

例示的なプロセス800の操作812において、プロセス800は、摂動を与えられたパラメータ化シナリオにおいてシミュレートされた車両をインスタンス化することを含むことができる。シミュレータは、自律コントローラに関連付けることができるシミュレートされた車両を使用し、自律コントローラにシミュレートされた環境を横断させることができる。パラメータ化シナリオで自律車両コントローラをインスタンス化し、パラメータ化シナリオをシミュレートすることは、バリエーションの手動列挙を必要とせずに、シナリオの幅広いバリエーションを効率的にカバーできる。加えて、パラメータ化シナリオを実行することに少なくとも部分的に基づいて、シミュレーションデータは、自律車両コントローラがパラメータ化シナリオにどのように応答したかを示し、シミュレーションデータに少なくとも部分的に基づいて、成功した結果または失敗した結果を決定できる。 At operation 812 of exemplary process 800, process 800 may include instantiating the simulated vehicle in the perturbed parameterized scenario. The simulator uses a simulated vehicle that can be associated with an autonomous controller and allows the autonomous controller to traverse a simulated environment. Instantiating an autonomous vehicle controller in a parameterized scenario and simulating the parameterized scenario can efficiently cover a wide variety of scenarios without requiring manual enumeration of variations. Additionally, based at least in part on executing the parameterized scenario, the simulation data indicates how the autonomous vehicle controller responded to the parameterized scenario; You can determine the outcome of a failed or unsuccessful attempt.

例示的なプロセス800の操作814において、プロセスは、シミュレートされた車両が摂動を与えられたパラメータ化シナリオにどのように応答するかを示すシミュレーションデータを受信することを含むことができる。シミュレーション後、結果は、車両コントローラに関連付けられた合格(例えば、成功した結果)、失敗、および/または成功または失敗の程度を示すことができる。 At operation 814 of exemplary process 800, the process may include receiving simulation data indicating how the simulated vehicle will respond to the perturbed parameterized scenario. After simulation, the results may indicate a pass (eg, a successful result), a failure, and/or a degree of success or failure associated with the vehicle controller.

例示的なプロセス800の操作816において、プロセスは、シミュレーションデータに基づいて、車両コントローラに関連付けられた安全性メトリックを決定することを含むことができる。例えば、各シミュレーションは、成功または失敗の結果をもたらすことができる。加えて、上述したように、車両性能コンポーネントは、シミュレーションデータに基づいて、車両が環境内でどのように実行するかを示すことができる車両性能データを決定できる。感度分析に基づいて、車両性能データは、シミュレーションの結果が成功しなかったシナリオ、シミュレーションの失敗の原因、および/またはシミュレーションの結果が成功したシナリオパラメータの値を示すシナリオパラメータの境界を示すことができる。したがって、安全性メトリックは、さまざまなシミュレートされたシナリオ内の車両コントローラの合格/不合格率を示すことができる。 At operation 816 of exemplary process 800, the process may include determining a safety metric associated with the vehicle controller based on the simulation data. For example, each simulation can have a success or failure outcome. Additionally, as described above, the vehicle performance component can determine vehicle performance data that can indicate how the vehicle performs in the environment based on the simulation data. Based on the sensitivity analysis, the vehicle performance data may indicate scenario parameter boundaries that indicate scenarios for which the simulation did not result in success, reasons for the simulation failure, and/or scenario parameter values for which the simulation resulted in success. can. Thus, the safety metric can indicate the pass/fail rate of vehicle controllers in various simulated scenarios.

図9は、自律車両のサブシステムに関連付けられた統計モデルを決定するための例示的なプロセスのフロー図を示している。プロセス900の一部または全てを、本明細書に記載されるように、図1乃至図7の1つまたは複数のコンポーネントによって実行できる。例えば、プロセス900の一部または全てを、コンピューティングデバイス204および/またはコンピューティングデバイス702によって実行できる。 FIG. 9 depicts a flow diagram of an exemplary process for determining statistical models associated with subsystems of an autonomous vehicle. Some or all of process 900 may be performed by one or more components of FIGS. 1-7, as described herein. For example, some or all of process 900 may be performed by computing device 204 and/or computing device 702 .

例示的なプロセス900の操作902において、プロセス900は、自律車両のサブシステムに関連付けられた車両データ(または他のデータ)を受信することを含むことができる。車両データは、環境を通り横断する車両によってキャプチャされるログデータを含むことができる。いくつかの例では、車両データは、制御データ(例えば、ステアリング、ブレーキなどのシステムを制御するために使用されるデータ)および/またはセンサデータ(例えば、lidarデータ、radarデータなど)を含むことができる。 At operation 902 of exemplary process 900, process 900 may include receiving vehicle data (or other data) associated with a subsystem of the autonomous vehicle. Vehicle data may include log data captured by vehicles traversing through the environment. In some examples, vehicle data may include control data (eg, data used to control systems such as steering, braking, etc.) and/or sensor data (eg, lidar data, radar data, etc.). can.

例示的なプロセス900の操作904において、プロセス900は、車両データに基づいて、サブシステムに関連付けられた出力データを決定することを含むことができる。例として、限定されないが、サブシステムは知覚システムとすることができ、出力データは環境内のオブジェクトに関連付けられたバウンディングボックスとすることができる。 At operation 904 of exemplary process 900, process 900 may include determining output data associated with the subsystem based on the vehicle data. By way of example, and not limitation, the subsystem may be a perceptual system and the output data may be bounding boxes associated with objects in the environment.

例示的なプロセス900の動作906において、プロセス900は、サブシステムに関連付けられたグラウンドトゥルースデータを受信することを含むことができる。いくつかの例では、グラウンドトゥルースデータを、手動でラベル付けおよび/または他の検証された機械学習コンポーネントから決定できる。例として、限定されないが、グラウンドトゥルースデータは、環境内のオブジェクトに関連付けられた検証されたバウンディングボックスを含むことができる。 At operation 906 of exemplary process 900, process 900 can include receiving ground truth data associated with the subsystem. In some examples, ground truth data can be determined from manual labeling and/or other validated machine learning components. By way of example, and not limitation, ground truth data can include verified bounding boxes associated with objects in the environment.

例示的なプロセス900の操作908において、プロセス900は、出力データの第1の部分とグラウンドトゥルースデータの第2の部分との間の差を決定することを含むことができ、差はサブシステムに関連付けられたエラーを表す。上述したように、出力データは、車両の知覚システムによって検出された、環境内のオブジェクトに関連付けられたバウンディングボックスを含むことができ、グラウンドトゥルースデータは、オブジェクトに関連付けられた検証済みのバウンディングボックスを含むことができる。2つのバウンディングボックス間の差は、車両の知覚システムに関連付けられたエラーを示すことができる。例として、限定されないが、出力データのバウンディングボックスは検証済みのバウンディングボックスよりも大きくすることができ、知覚システムがオブジェクトは環境内よりも大きいことを検出していることを示す。 At operation 908 of the exemplary process 900, the process 900 can include determining a difference between the first portion of the output data and the second portion of the ground truth data, the difference being sent to the subsystem. Represents the associated error. As noted above, the output data may include bounding boxes associated with objects in the environment detected by the vehicle's perception system, and the ground truth data may include validated bounding boxes associated with the objects. can contain. The difference between the two bounding boxes can indicate errors associated with the vehicle's perceptual system. By way of example, and not limitation, the output data bounding box can be larger than the validated bounding box, indicating that the perceptual system is detecting that the object is larger than in the environment.

例示的なプロセス900の操作910において、プロセス900は、差に基づいて、サブシステムに関連付けられた統計モデルを決定することを含むことができる。例えば、 At operation 910 of exemplary process 900, process 900 can include determining a statistical model associated with the subsystem based on the difference. for example,

[例示的な発明内容]
A:1つまたは複数のプロセッサと、実行されると、前記システムに、環境内で自律車両を操作することに関連付けられたログデータを受信することと、前記ログデータに少なくとも部分的に基づいて、シナリオのセットを決定することであって、シナリオの前記セットのシナリオが、前記環境の態様に関連付けられたシナリオパラメータを含む、ことと、前記自律車両のサブシステムに関連付けられたエラーモデルを決定することと、前記シナリオパラメータおよび前記エラーモデルに少なくとも部分的に基づいて、パラメータ化シナリオを決定することと、摂動を与えられたパラメータ化シナリオにおいてインスタンス化される前記シナリオパラメータまたはシミュレートされた車両のコンポーネントのうちの少なくとも1つにエラーを追加することによって、前記パラメータ化シナリオに摂動を与えることであって、前記シミュレートされた車両が車両コントローラによって制御される、ことと、前記摂動を与えられたパラメータ化シナリオにおいて前記シミュレートされた車両をインスタンス化することと、前記シミュレートされた車両が前記摂動を与えられたパラメータ化シナリオにどのように応答するかを示すシミュレーションデータを受信することと、前記シミュレーションデータに少なくとも部分的に基づいて、前記車両コントローラに関連付けられた安全性メトリックを決定することと、を含む操作を実行させるコンピュータで実行可能な命令を格納した1つまたは複数のコンピュータ可読媒体と、を含むシステム。
[Exemplary Content of the Invention]
A: one or more processors and, when executed, causing the system to receive log data associated with operating an autonomous vehicle within an environment; , determining a set of scenarios, the scenarios of the set of scenarios including scenario parameters associated with aspects of the environment; and determining error models associated with subsystems of the autonomous vehicle. determining a parameterized scenario based at least in part on said scenario parameters and said error model; said scenario parameters or simulated vehicle instantiated in said perturbed parameterized scenario; wherein the simulated vehicle is controlled by a vehicle controller; instantiating the simulated vehicle in a parameterized scenario; and receiving simulation data indicating how the simulated vehicle will respond to the perturbed parameterized scenario. and determining a safety metric associated with the vehicle controller based at least in part on the simulation data. A system that includes a readable medium.

B:シナリオの前記セットを決定することが、前記ログデータをクラスタリングして、第1のセットのクラスタを決定することであって、前記第1のセットのクラスタの個々のクラスタは、個々のシナリオに関連付けられている、ことと、前記第1のセットのクラスタに少なくとも部分的に基づいて、前記個々のクラスタに関連付けられた確率を決定することと、確率閾値および前記第1のセットのクラスタに少なくとも部分的に基づいて、第2のセットのクラスタを決定することと、を含む、段落Aに記載のシステム。 B: Determining the set of scenarios is clustering the log data to determine a first set of clusters, wherein individual clusters of the first set of clusters are individual scenarios determining a probability associated with the individual cluster based at least in part on the first set of clusters; and determining a probability threshold and the first set of clusters from and determining a second set of clusters based at least in part.

C:前記エラーモデルを決定することが、前記環境に関連付けられたグラウンドトゥルースデータを受信することと、前記グラウンドトゥルースデータを前記ログデータと比較することに少なくとも部分的に基づいて、エラーを決定することと、前記エラーに少なくとも部分的に基づいて、エラー分布を決定することと、を含み、前記エラーモデルは前記エラー分布を含む、段落Aに記載のシステム。 C. Determining the error model determines an error based at least in part on receiving ground truth data associated with the environment and comparing the ground truth data to the log data. and determining an error distribution based at least in part on the error, wherein the error model includes the error distribution.

D:前記パラメータ化シナリオは第1のパラメータ化シナリオであり、前記摂動を与えられたパラメータ化シナリオは第1の摂動を与えられたパラメータ化シナリオであり、前記シミュレーションデータは第1のシミュレーションデータであり、前記操作は、前記第1のシミュレーションデータに基づいて、前記シナリオパラメータの第1のサブセットまたは前記エラーモデルの第2のサブセットのうちの少なくとも1つを含む第2のパラメータ化シナリオを決定することと、前記第2のパラメータ化シナリオに、第2の摂動を与えられたパラメータ化シナリオとして、摂動を与えることと、前記第2の摂動を与えられたパラメータ化シナリオにおいて前記シミュレートされた車両をインスタンス化することと、第2のシミュレーションデータを受信することと、前記第2のシミュレーションデータに少なくとも部分的に基づいて、前記安全性メトリックを更新することと、をさらに含む、段落Aに記載のシステム。 D: the parameterized scenario is a first parameterized scenario, the perturbed parameterized scenario is a first perturbed parameterized scenario, and the simulation data is the first simulation data A, wherein the operation determines a second parameterized scenario including at least one of a first subset of the scenario parameters or a second subset of the error model based on the first simulation data. perturbing said second parameterized scenario as a second perturbed parameterized scenario; and said simulated vehicle in said second perturbed parameterized scenario , receiving second simulation data, and updating the safety metric based at least in part on the second simulation data. system.

E:環境の一部を説明するシナリオパラメータを含むシナリオを決定することと、車両のサブシステムに関連付けられたエラーモデルを受信することと、前記シナリオ、前記シナリオパラメータ、および前記エラーモデルに少なくとも部分的に基づいて、パラメータ化シナリオを決定することと、前記パラメータ化シナリオを摂動を与えられたパラメータ化シナリオとして摂動を与えることと、前記車両の前記サブシステムが前記摂動を与えられたパラメータ化シナリオにどのように応答するかを示すシミュレーションデータを受信することと、前記シミュレーションデータに少なくとも部分的に基づいて、前記車両の前記サブシステムに関連付けられた安全性メトリックを決定することと、を含む方法。 E: determining a scenario including scenario parameters describing a portion of an environment; receiving an error model associated with a subsystem of the vehicle; determining a parameterized scenario based on an objective; perturbing said parameterized scenario as a perturbed parameterized scenario; and determining said subsystem of said vehicle in said perturbed parameterized scenario. and determining a safety metric associated with the subsystem of the vehicle based at least in part on the simulation data. .

F:前記シナリオパラメータは、オブジェクトのサイズ、オブジェクトの速度、オブジェクトのポーズ、オブジェクトの密度、車両の速度、車両の軌道の少なくとも1つに関連付けられている、段落Eに記載の方法。 F: The method of paragraph E, wherein the scenario parameters are associated with at least one of object size, object velocity, object pose, object density, vehicle velocity, vehicle trajectory.

G:前記シナリオを決定することが、自律車両に関連付けられたログデータを受信することと、前記ログデータをクラスタリングして、クラスタの第1のセットを決定することであって、クラスタの前記第1のセットの個々のクラスタは、前記シナリオに関連付けられている、ことと、クラスタの前記第1のセットに少なくとも部分的に基づいて、前記個々のクラスタに関連付けられた確率を決定することと、前記確率が確率閾値を満たすまたは超えると決定することと、を含む、段落Eに記載の方法。 G: determining the scenario comprises receiving log data associated with an autonomous vehicle; clustering the log data to determine a first set of clusters; a set of individual clusters associated with the scenario; determining probabilities associated with the individual clusters based at least in part on the first set of clusters; and determining that the probability meets or exceeds a probability threshold.

H:前記エラーモデルは、前記環境に関連付けられたグラウンドトゥルースデータを受信することと、前記グラウンドトゥルースデータを車両に関連付けられたログデータと比較することに少なくとも部分的に基づいて、エラーを決定することと、前記エラーに少なくとも部分的に基づいて、エラー分布を決定することと、に少なくとも部分的に基づいて、決定され、前記エラーモデルは前記エラー分布を含む、段落Eに記載の方法。 H: The error model determines errors based at least in part on receiving ground truth data associated with the environment and comparing the ground truth data to log data associated with the vehicle. and determining an error distribution based at least in part on said error, said error model comprising said error distribution.

I:前記パラメータ化シナリオは第1のパラメータ化シナリオであり、前記摂動を与えられたパラメータ化シナリオは第1の摂動を与えられたパラメータ化シナリオであり、前記シミュレーションデータは第1のシミュレーションデータであり、前記方法は、前記第1のシミュレーションデータに基づいて、前記シナリオパラメータの第1のサブセットまたは前記エラーモデルの第2のサブセットのうちの少なくとも1つを含む第2のパラメータ化シナリオを決定することと、前記第2のパラメータ化シナリオに摂動を与えることと、第2のシミュレーションデータを受信することと、前記第2のシミュレーションデータに少なくとも部分的に基づいて、前記安全性メトリックを更新することと、さらに含む、段落Eに記載の方法。 I: said parameterized scenario is a first parameterized scenario, said perturbed parameterized scenario is a first perturbed parameterized scenario, and said simulation data is a first simulation data; A second parameterized scenario comprising at least one of a first subset of the scenario parameters or a second subset of the error model based on the first simulation data. perturbing the second parameterized scenario; receiving second simulation data; and updating the safety metric based at least in part on the second simulation data. and further comprising the method of paragraph E.

J:前記シナリオパラメータまたは前記エラーモデルの1つの少なくとも第1の部分を無効にすることと、前記第2のシミュレーションデータを、無効にされていない前記シナリオパラメータまたは前記エラーモデルの1つの少なくとも第2の部分に関連付けることとをさらに含む段落Iに記載の方法。 J: invalidating at least a first portion of one of said scenario parameters or said error model; and transmitting said second simulation data to at least a second portion of said one of said scenario parameters or said error model not invalidated; The method of paragraph I further comprising associating with the portion of

K:前記安全性メトリックがコスト閾値を満たすまたは超える確率を示す、段落Eに記載の方法。 K: The method of paragraph E, wherein the safety metric indicates the probability of meeting or exceeding a cost threshold.

L:前記部分は第1の部分であり、前記方法が、マップデータを受信することであって、前記マップデータの第2の部分は、前記環境の前記第1の部分に関連付けられている、ことと、前記マップデータの前記第2の部分が、前記シナリオパラメータに関連付けられた閾値確率を満たすまたは超える確率に関連付けられたシナリオに関連付けられていると決定することと、をさらに含む、段落Eに記載の方法。 L: said portion is a first portion and said method is to receive map data, said second portion of said map data being associated with said first portion of said environment; and determining that the second portion of the map data is associated with scenarios associated with probabilities that meet or exceed threshold probabilities associated with the scenario parameters. The method described in .

M:命令が実行されると、プロセッサに環境の一部を説明するシナリオパラメータを含むシナリオを決定することと、車両のサブシステムに関連付けられたエラーモデルの1つまたは複数を受信すること、または決定すること、前記シナリオ、前記シナリオパラメータ、および前記エラーモデルに少なくとも部分的に基づいて、パラメータ化シナリオを決定することと、前記パラメータ化シナリオを摂動を与えられたパラメータ化シナリオとして摂動を与えることと、前記車両の前記サブシステムが前記摂動を与えられたパラメータ化シナリオにどのように応答するかを示すシミュレーションデータを受信することと、前記シミュレーションデータに少なくとも部分的に基づいて、前記車両の前記サブシステムに関連付けられた安全性メトリックを決定することと、を含む操作を実行させる、プロセッサによって実行可能な命令を格納する非一時的コンピュータ可読媒体。 M: when the instructions are executed, determining a scenario including scenario parameters that describe a portion of the environment to the processor and receiving one or more of the error models associated with the vehicle's subsystems; determining; determining a parameterized scenario based at least in part on said scenario, said scenario parameters, and said error model; and perturbing said parameterized scenario as a perturbed parameterized scenario. and receiving simulation data indicating how the subsystem of the vehicle will respond to the perturbed parameterized scenario; and based at least in part on the simulation data, the A non-transitory computer-readable medium storing processor-executable instructions for performing operations including: determining a safety metric associated with a subsystem;

N:前記シナリオパラメータは、オブジェクトのサイズ、オブジェクトの速度、オブジェクトのポーズ、オブジェクトの密度、車両の速度、車両の軌道の少なくとも1つに関連付けられている、段落Mに記載の非一時的コンピュータ可読媒体。 N: The non-transient computer readable of paragraph M, wherein the scenario parameters are associated with at least one of object size, object velocity, object pose, object density, vehicle velocity, vehicle trajectory. medium.

O:前記シナリオを決定することが、自律車両に関連付けられたログデータを受信することと、前記ログデータをクラスタリングして、クラスタの第1のセットを決定することであって、クラスタの前記第1のセットの個々のクラスタは、前記シナリオに関連付けられている、ことと、クラスタの前記第1のセットに少なくとも部分的に基づいて、前記個々のクラスタに関連付けられた確率を決定することと、前記確率が確率閾値を満たすまたは超えると決定することと、を含む段落Mに記載の非一時的コンピュータ可読媒体。 O: determining the scenario comprises receiving log data associated with an autonomous vehicle; clustering the log data to determine a first set of clusters; a set of individual clusters associated with the scenario; determining probabilities associated with the individual clusters based at least in part on the first set of clusters; determining that the probability meets or exceeds a probability threshold.

P:前記エラーモデルは、前記環境に関連付けられたグラウンドトゥルースデータを受信することと、前記グラウンドトゥルースデータを車両に関連付けられたログデータと比較することに少なくとも部分的に基づいて、エラーを決定することと、前記エラーに少なくとも部分的に基づいて、エラー分布を決定することと、に少なくとも部分的に基づいて決定され、前記エラーモデルは前記エラー分布を含む、段落Mに記載の非一時的コンピュータ可読媒体。 P: the error model determines errors based at least in part on receiving ground truth data associated with the environment and comparing the ground truth data to log data associated with the vehicle; and determining an error distribution based at least in part on said error, said error model comprising said error distribution. readable medium.

Q:前記パラメータ化シナリオは第1のパラメータ化シナリオであり、前記摂動を与えられたパラメータ化シナリオは第1の摂動を与えられたパラメータ化シナリオであり、前記シミュレーションデータは第1のシミュレーションデータであり、前記操作は、前記第1のシミュレーションデータに基づいて、前記シナリオパラメータの第1のサブセットまたは前記エラーモデルの第2のサブセットのうちの少なくとも1つを含む第2のパラメータ化シナリオを決定することと、前記第2のパラメータ化シナリオに摂動を与えることと、第2のシミュレーションデータを受信することと、前記第2のシミュレーションデータに少なくとも部分的に基づいて、前記安全性メトリックを更新することと、をさらに含む、段落Mに記載の非一時的コンピュータ可読媒体。 Q: The parameterized scenario is the first parameterized scenario, the perturbed parameterized scenario is the first perturbed parameterized scenario, and the simulation data is the first simulation data. A, wherein the operation determines a second parameterized scenario including at least one of a first subset of the scenario parameters or a second subset of the error model based on the first simulation data. perturbing the second parameterized scenario; receiving second simulation data; and updating the safety metric based at least in part on the second simulation data. The non-transitory computer-readable medium of paragraph M, further comprising:

R:前記操作が前記シナリオパラメータまたは前記エラーモデルの1つの少なくとも第1の部分を無効にすることと、前記第2のシミュレーションデータを、無効にされていない前記シナリオパラメータまたは前記エラーモデルの1つの少なくとも第2の部分に関連付けることと、をさらに含む、段落Qに記載の非一時的コンピュータ可読媒体。 R: said operation invalidates at least a first portion of said one of said scenario parameters or said error model; Associating with at least the second portion. The non-transitory computer-readable medium of paragraph Q.

S:前記安全性メトリックは、コスト閾値を満たすまたは超える確率を示す、段落Mに記載の非一時的コンピュータ可読媒体。 S: The non-transitory computer-readable medium of paragraph M, wherein the safety metric indicates a probability of meeting or exceeding a cost threshold.

T:前記エラーモデルは、前記車両の知覚システム、前記車両の予測システム、または前記車両のプランナシステムのうちの1つまたは複数に関連付けられている、段落Mに記載の非一時的コンピュータ可読媒体。 T: The non-transitory computer-readable medium of paragraph M, wherein the error model is associated with one or more of the vehicle's perception system, the vehicle's prediction system, or the vehicle's planner system.

U:1つまたは複数のプロセッサと、実行されると、前記システムに、車両データを受信することと、前記車両データの少なくとも第1の部分を自律車両のサブシステムに入力することであって、前記サブシステムは、知覚システム、計画システム、追跡システム、または予測システムのうちの少なくとも1つに関連付けられている、ことと、前記車両データの第2の部分に少なくとも部分的に基づいて、環境パラメータを決定することと、前記サブシステムから推定値を受信することと、前記サブシステムに関連付けられたグラウンドトゥルースデータを受信することと、前記推定値とグラウンドトゥルースデータとの間の差を決定することであって、前記差は、前記サブシステムに関連付けられたエラーを表す、ことと、前記差に少なくとも部分的に基づいて、前記エラーの確率を示す前記サブシステムに関連付けられた統計モデルを決定することであって、前記確率は前記環境パラメータに関連付けられている、ことと、を含む操作を実行させるコンピュータで実行可能な命令を格納した1つまたは複数のコンピュータ可読媒体と、を含むシステム。 U: one or more processors, when executed to said system, receiving vehicle data; and inputting at least a first portion of said vehicle data to a subsystem of an autonomous vehicle; wherein the subsystem is associated with at least one of a perception system, a planning system, a tracking system, or a prediction system; and based at least in part on a second portion of the vehicle data, an environmental parameter receiving an estimate from the subsystem; receiving ground truth data associated with the subsystem; and determining a difference between the estimate and the ground truth data. wherein the difference represents an error associated with the subsystem; and based at least in part on the difference, determining a statistical model associated with the subsystem indicative of the probability of the error. and one or more computer-readable media storing computer-executable instructions for performing an operation comprising: said probability being associated with said environmental parameter.

V:前記車両データが前記自律車両上のセンサからのセンサデータを含み、前記環境パラメータが、前記自律車両の速度または気象条件の1つまたは複数を含み、前記サブシステムが知覚サブシステムであり、前記推定値が、前記車両データに表されるオブジェクトの推定位置、推定方向、または推定範囲のうちの1つまたは複数であり、前記グラウンドトゥルースデータが、前記オブジェクトの実際の位置、実際の方向、または実際の範囲を表す、段落Uに記載のシステム。 V: the vehicle data comprises sensor data from sensors on the autonomous vehicle, the environmental parameters comprise one or more of speed or weather conditions of the autonomous vehicle, and the subsystem is a perception subsystem; wherein the estimate is one or more of an estimated position, an estimated orientation, or an estimated range of an object represented in the vehicle data, and the ground truth data is an actual position, actual orientation, or Or the system of paragraph U representing an actual range.

W:前記統計モデルを決定することが、前記車両データに少なくとも部分的に基づいて、前記環境パラメータに関連付けられた第1の周波数および前記差に関連付けられた第2の周波数を決定することと、前記第1の周波数および前記第2の周波数に少なくとも部分的に基づいて、前記確率を決定することと、を含む、段落Uに記載のシステム。 W: Determining the statistical model determines a first frequency associated with the environmental parameter and a second frequency associated with the difference based at least in part on the vehicle data; and determining the probability based at least in part on the first frequency and the second frequency.

X:前記操作が、シミュレートされた車両データに少なくとも部分的に基づいて、シミュレートされた環境パラメータを決定することと、前記シミュレートされた環境パラメータが前記環境パラメータに対応することを決定することと、前記シミュレートされた車両データおよび前記サブシステムに少なくとも部分的に基づいて、シミュレートされた推定値を決定することと、前記確率に少なくとも部分的に基づいて、前記エラーに少なくとも部分的に基づく対応するシミュレートされたシナリオの一部を変更することによって、前記シミュレートされた推定値に摂動を与えることと、をさらに含む、段落Uに記載のシステム。 X: the operation determines a simulated environmental parameter based at least in part on simulated vehicle data; and determining that the simulated environmental parameter corresponds to the environmental parameter. determining a simulated estimate based at least in part on the simulated vehicle data and the subsystem; and at least in part on the error based at least in part on the probability. and perturbing the simulated estimates by modifying a portion of the corresponding simulated scenario based on .

Y:車両に関連付けられたデータを受信することと、前記データの第1の部分に少なくとも部分的に基づいて、環境パラメータを決定することと、前記データの第2の部分に少なくとも部分的に基づいて、前記車両のシステムに関連付けられた出力データを決定することと、前記システムおよび前記データに関連付けられたグラウンドトゥルースデータを受信することと、前記出力データと前記グラウンドトゥルースデータとの間の差を決定することであって、前記差が前記システムに関連付けられたエラーを表す、ことと、前記差に少なくとも部分的に基づいて、前記エラーの確率を示す前記システムに関連付けられた統計モデルを決定することであって、前記確率は前記環境パラメータに関連付けられている、ことと、を含む方法。 Y: receiving data associated with a vehicle; determining an environmental parameter based at least in part on a first portion of said data; and based at least in part on a second portion of said data. determining output data associated with a system of the vehicle; receiving ground truth data associated with the system and the data; and determining a difference between the output data and the ground truth data. determining that the difference represents an error associated with the system; and based at least in part on the difference, determining a statistical model associated with the system indicative of the probability of the error. and wherein said probability is associated with said environmental parameter.

Z:前記統計モデルを決定することが、前記データに少なくとも部分的に基づいて、前記エラーに関連付けられた周波数を決定することと、を含む、段落Yに記載の方法。 Z: The method of paragraph Y, wherein determining the statistical model comprises determining frequencies associated with the errors based at least in part on the data.

AA:前記環境パラメータが、前記車両の速度、気象条件、前記車両の地理的位置、または1日の時間のうちの1つまたは複数を含む、段落Yに記載の方法。 AA: The method of paragraph Y, wherein the environmental parameters include one or more of speed of the vehicle, weather conditions, geographic location of the vehicle, or time of day.

AB:シミュレーションを生成することと、前記シミュレーションのシミュレートされた環境パラメータが前記環境パラメータに対応することを決定することと、シミュレートされたデータを前記システムに入力することと、前記システムからシミュレートされた出力を受信することと、前記確率および前記エラーに少なくとも部分的に基づいて、シミュレーションに摂動を与えることと、をさらに含む段落Yに記載の方法。 AB: generating a simulation; determining that simulated environmental parameters of said simulation correspond to said environmental parameters; inputting simulated data into said system; Y. The method of paragraph Y, further comprising: receiving a predicted output; and perturbing a simulation based at least in part on said probability and said error.

AC:前記システムが知覚システムであり、前記出力データがオブジェクトに関連付けられた第1のバウンディングボックスを含み、前記グラウンドトゥルースデータが、前記オブジェクトに関連付けられた第2のバウンディングボックスを含み、前記差を決定することが、前記第1のバウンディングボックスの第1の範囲および前記第2のバウンディングボックスの第2の範囲、または、前記第1のバウンディングボックスの第1のポーズおよび前記第2のバウンディングボックスの第2のポーズの少なくとも1つの間の前記差を決定することを含む、段落Yに記載の方法。 AC: the system is a perceptual system, the output data includes a first bounding box associated with an object, the ground truth data includes a second bounding box associated with the object, and the difference is Determining a first extent of the first bounding box and a second extent of the second bounding box, or a first pose of the first bounding box and a second extent of the second bounding box The method of paragraph Y comprising determining the difference between at least one of the second poses.

AD:前記システムはトラッカーシステムであり、前記出力データは、前記車両の計画軌道データを含み、前記グラウンドトゥルースデータは前記車両の測定軌道を含み、前記差を決定することは、前記計画軌道データと前記測定軌道との間の前記差を決定することを含む、段落Yに記載の方法。 AD: said system is a tracker system, said output data comprises planned trajectory data of said vehicle, said ground truth data comprises measured trajectory of said vehicle, and determining said difference comprises said planned trajectory data and The method of paragraph Y, comprising determining the difference between the measured trajectory.

AE:前記システムは予測システムに関連付けられ、前記データは、環境内のオブジェクトの予測軌道を含み、前記グラウンドトゥルースデータは、前記オブジェクトの観測軌道を含み、前記差を決定することは、前記予測軌道と前記観測軌道との間の前記差を決定することを含む、段落Yに記載の方法。 AE: said system is associated with a prediction system, said data includes predicted trajectories of objects in an environment, said ground truth data includes observed trajectories of said objects, and said determining the difference comprises: and the observation trajectory.

AF:前記データが第1のデータであり、前記環境パラメータが第1の環境パラメータであり、前記差が第1の差であり、前記エラーが第1のエラーであり、前記確率が第1の確率であり、前記方法は、前記車両の前記システムに関連付けられた第2のデータを受信することと、前記第2のデータに少なくとも部分的に基づいて、第2の環境パラメータを決定することと、前記出力データの第3の部分と前記グラウンドトゥルースデータの第4の部分との間の第2の差を決定することであって、前記第2の差は、前記システムに関連付けられた第2のエラーを表す、ことと、前記システムに関連付けられた前記統計モデルを更新することであって、前記統計モデルは前記第2のエラーの第2の確率を示し、前記第2の確率は前記第2の環境パラメータに関連付けられている、ことと、をさらに含む、段落Yに記載の方法。 AF: said data is a first data, said environmental parameter is a first environmental parameter, said difference is a first difference, said error is a first error, said probability is a first probability, the method comprising: receiving second data associated with the system of the vehicle; and determining a second environmental parameter based at least in part on the second data. , determining a second difference between a third portion of the output data and a fourth portion of the ground truth data, the second difference being a second and updating the statistical model associated with the system, the statistical model indicating a second probability of the second error, the second probability being the second The method of paragraph Y, further comprising: being associated with two environmental parameters.

AG:命令が実行されると、プロセッサにデータを受信することと、前記データに少なくとも部分的に基づいて、環境パラメータを決定することと、前記データおよび車両のシステムに少なくとも部分的に基づいて、出力データを決定することと、前記システムおよび前記データに関連付けられたグラウンドトゥルースデータを受信することと、前記出力データの第1の部分と前記グラウンドトゥルースデータの第2の部分との間の差を決定することであって、前記差が前記システムに関連付けられたエラーを表す、ことと、前記差に少なくとも部分的に基づいて、前記エラーの確率を示す前記システムに関連付けられた統計モデルを決定することと、前記確率を前記環境パラメータに関連付けることと、を含む操作を実行させる、前記プロセッサによって実行可能な命令を格納する非一時的コンピュータ可読媒体。 AG: when the instructions are executed, receiving data to a processor; determining an environmental parameter based at least in part on said data; based at least in part on said data and a system of the vehicle; determining output data; receiving ground truth data associated with the system and the data; determining a difference between a first portion of the output data and a second portion of the ground truth data; determining that the difference represents an error associated with the system; and based at least in part on the difference, determining a statistical model associated with the system indicative of the probability of the error. and relating said probability to said environmental parameter.

AH:前記統計モデルを決定することは、前記データに少なくとも部分的に基づいて、前記差に関連付けられた周波数を決定することと、を含む、段落AGに記載の非一時的コンピュータ可読媒体。 AH: The non-transitory computer-readable medium of paragraph AG, wherein determining the statistical model includes determining a frequency associated with the difference based at least in part on the data.

AI:前記環境パラメータは、前記車両の速度、気象条件、または1日のうちの時間のうちの1つまたは複数を含む、段落AGに記載の非一過性コンピュータ可読媒体。 AI: The non-transitory computer-readable medium of paragraph AG, wherein the environmental parameters include one or more of speed of the vehicle, weather conditions, or time of day.

AJ:前記操作がシミュレートされた車両を含むシミュレーションを生成することと、シミュレートされたデータを受信することと、シミュレートされた環境パラメータが前記環境パラメータに対応することを決定することと、前記シミュレートされたデータの少なくとも一部を前記システムに入力することと、前記システムからシミュレートされた出力データを受信することと、要求および確率およびエラーに少なくとも部分的に基づいて、前記シミュレートされた出力データを変更することと、をさらに含む段落AGに記載の非一過性コンピュータ可読媒体。 AJ: generating a simulation including a vehicle in which said manipulation is simulated; receiving simulated data; determining that simulated environmental parameters correspond to said environmental parameters; inputting at least a portion of said simulated data into said system; receiving simulated output data from said system; modifying the generated output data. The non-transitory computer-readable medium of paragraph AG.

AK:前記システムが知覚システムであり、前記データがオブジェクトに関連付けられた第1のバウンディングボックスを含み、前記グラウンドトゥルースデータが、前記オブジェクトに関連付けられた第2のバウンディングボックスを含み、前記差を決定することが、前記第1のバウンディングボックスの第1の範囲および前記第2のバウンディングボックスの第2の範囲、または、前記第1のバウンディングボックスの第1のポーズおよび前記第2のバウンディングボックスの第2のポーズの少なくとも1つの間の前記差を決定することを含む、段落AGに記載の非一時的コンピュータ可読媒体。 AK: said system is a perceptual system, said data comprises a first bounding box associated with an object, said ground truth data comprises a second bounding box associated with said object, and determining said difference a first extent of the first bounding box and a second extent of the second bounding box, or a first pose of the first bounding box and a second extent of the second bounding box; The non-transitory computer-readable medium of paragraph AG, comprising determining the difference between at least one of two poses.

AL:前記システムはトラッカーシステムであり、前記データは、前記車両の計画軌道データを含み、前記グラウンドトゥルースデータは前記車両の測定軌道を含み、前記差を決定することは、前記計画軌道データと前記測定軌道との間の前記差を決定することを含む、段落AGに記載の非一時的コンピュータ可読媒体。 AL: The system is a tracker system, the data includes planned trajectory data of the vehicle, the ground truth data includes measured trajectories of the vehicle, and determining the difference comprises combining the planned trajectory data and the The non-transitory computer-readable medium of paragraph AG, comprising determining the difference between a measured trajectory.

AM:前記システムは予測システムに関連付けられ、前記データは、環境内のオブジェクトの予測軌道を含み、前記グラウンドトゥルースデータは、前記オブジェクトの観測軌道を含み、前記差を決定することは、前記予測軌道と前記観測軌道との間の前記差を決定することを含む、段落AGに記載の非一時的コンピュータ可読媒体。 AM: said system is associated with a prediction system, said data includes predicted trajectories of objects in an environment, said ground truth data includes observed trajectories of said objects, and determining said difference is associated with said predicted trajectories; and the observed trajectory.

AN:前記データが第1のデータであり、前記環境パラメータが第1の環境パラメータであり、前記差が第1の差であり、前記エラーが第1のエラーであり、前記確率が第1の確率であり、前記操作は、前記車両の前記システムに関連付けられた第2のデータを受信することと、前記第2のデータに少なくとも部分的に基づいて、第2の環境パラメータを決定することと、前記出力データの第3の部分と前記グラウンドトゥルースデータの第4の部分との間の第2の差を決定することであって、前記第2の差は、前記システムに関連付けられた第2のエラーを表す、ことと、前記システムに関連付けられた前記統計モデルを更新することであって、前記統計モデルは前記第2のエラーの第2の確率を示し、前記第2の確率は前記第2の環境パラメータに関連付けられている、ことと、をさらに含む、段落AGに記載の非一時的コンピュータ可読媒体。 AN: the data is the first data, the environmental parameter is the first environmental parameter, the difference is the first difference, the error is the first error, and the probability is the first probability, wherein the operation includes receiving second data associated with the system of the vehicle and determining a second environmental parameter based at least in part on the second data. , determining a second difference between a third portion of the output data and a fourth portion of the ground truth data, the second difference being a second and updating the statistical model associated with the system, the statistical model indicating a second probability of the second error, the second probability being the second The non-transitory computer-readable medium of paragraph AG, further comprising: associated with two environmental parameters.

上述の例示の発明内容は1つの特定の実装に関して説明されているが、この文書のコンテキストでは、例示の発明内容はまた、方法、デバイス、システム、コンピュータ可読媒体、および/または別の実装を介して実装できることを理解されたい。さらに、例示A乃至ANのいずれかは、単独で、または任意の他の1つまたは複数の例示A乃至ANと組み合わせて実装され得る。 Although the above example subject matter has been described in terms of one particular implementation, in the context of this document the example subject matter can also be implemented through methods, devices, systems, computer-readable media, and/or other implementations. It should be understood that it can be implemented Moreover, any of the examples A-AN may be implemented alone or in combination with any other one or more of the examples A-AN.

[結論]
本明細書で説明する技術の1つまたは複数の例について説明したが、様々な変更、
追加、置換、およびそれらの同等物が、本明細書で説明する技術の範囲内に含まれる。
[Conclusion]
Although one or more examples of the techniques described herein have been described, various modifications,
Additions, permutations, and their equivalents are included within the scope of the technology described herein.

例示の説明では、本明細書の一部を形成する添付の図面を参照するが、これは例示として特許請求される主題の具体的な例を示す。他の例を使用でき、構造的変更などの変更または代替を行うことできることを理解されたい。そのような例示、変更または代替は、意図して特許請求される主題に関する範囲から必ずしも逸脱するものではない。本明細書のステップを特定の順序で提示できるが、いくつかのケースでは、説明したシステムおよび方法の機能を変更することなく、特定の入力を異なる時間または異なる順序で提供するように、順序を変更できる。開示された手順はまた異なる順序で実行できる。さらに、本明細書にある様々な計算は開示された順序で実行される必要はなく、計算の代替順序を使用する他の例を容易に実装できる。並べ替えに加えて、計算はまた同じ結果となるサブ計算に分解できる。 The illustrative description refers to the accompanying drawings, which form a part hereof and which show, by way of illustration, specific examples of the claimed subject matter. It is to be understood that other examples may be used and modifications or substitutions, such as structural changes, may be made. Such illustrations, modifications or substitutions do not necessarily depart from the scope of the intended claimed subject matter. Although the steps herein may be presented in a particular order, in some cases the order may be changed so as to provide certain inputs at different times or in a different order without changing the functionality of the systems and methods described. can be changed. The disclosed procedures can also be performed in different orders. Moreover, the various computations presented herein need not be performed in the order disclosed, and other examples using alternate orders of computations can be readily implemented. In addition to reordering, computations can also be decomposed into subcomputations with the same result.

Claims (15)

環境の部分を説明するシナリオパラメータを含むシナリオを決定することと、
車両のサブシステムに関連付けられたエラーモデルを受信することと、
前記シナリオ、前記シナリオパラメータ、および前記エラーモデルに少なくとも部分的に基づいて、パラメータ化シナリオを決定することと、
前記パラメータ化シナリオを摂動を与えられたパラメータ化シナリオとして摂動を与えることと、
前記車両の前記サブシステムが前記摂動を与えられたパラメータ化シナリオにどのように応答するかを示すシミュレーションデータを受信することと、
前記シミュレーションデータに少なくとも部分的に基づいて、前記車両の前記サブシステムに関連付けられた安全性メトリックを決定することと、
を含む方法。
determining a scenario including scenario parameters describing portions of the environment;
receiving an error model associated with a vehicle subsystem;
determining a parameterized scenario based at least in part on the scenario, the scenario parameters, and the error model;
perturbing the parameterized scenario as a perturbed parameterized scenario;
receiving simulation data indicating how the subsystems of the vehicle will respond to the perturbed parameterized scenario;
determining a safety metric associated with the subsystem of the vehicle based at least in part on the simulation data;
method including.
前記シナリオパラメータは、オブジェクトのサイズ、オブジェクトの速度、オブジェクトのポーズ、オブジェクトの密度、車両の速度、車両の軌道の少なくとも1つに関連付けられている、請求項1に記載の方法。 2. The method of claim 1, wherein the scenario parameters are associated with at least one of object size, object speed, object pose, object density, vehicle speed, and vehicle trajectory. 前記シナリオを決定することが、
自律車両に関連付けられたログデータを受信することと、
前記ログデータをクラスタリングして、クラスタの第1のセットを決定することであって、クラスタの前記第1のセットの個々のクラスタは前記シナリオに関連付けられている、ことと、
クラスタの前記第1のセットに少なくとも部分的に基づいて、前記個々のクラスタに関連付けられた確率を決定することと、
前記確率が確率閾値を満たすまたは超えると決定することと、
を含む、請求項1または2に記載の方法。
Determining the scenario includes:
receiving log data associated with the autonomous vehicle;
clustering the log data to determine a first set of clusters, wherein individual clusters of the first set of clusters are associated with the scenario;
determining probabilities associated with the individual clusters based at least in part on the first set of clusters;
determining that the probability meets or exceeds a probability threshold;
3. The method of claim 1 or 2, comprising:
前記エラーモデルは、
前記環境に関連付けられたグラウンドトゥルースデータを受信することと、
前記グラウンドトゥルースデータを車両に関連付けられたログデータと比較することに少なくとも部分的に基づいて、エラーを決定することと、
前記エラーに少なくとも部分的に基づいて、エラー分布を決定することと、
に少なくとも部分的に基づいて、決定され、
前記エラーモデルは前記エラー分布を含む、請求項1乃至3のいずれか一項に記載の方法。
The error model is
receiving ground truth data associated with the environment;
determining an error based at least in part on comparing the ground truth data to log data associated with a vehicle;
determining an error distribution based at least in part on the error;
determined, at least in part, based on
4. The method of any one of claims 1-3, wherein the error model comprises the error distribution.
前記パラメータ化シナリオは第1のパラメータ化シナリオであり、前記摂動を与えられたパラメータ化シナリオは第1の摂動を与えられたパラメータ化シナリオであり、前記シミュレーションデータは第1のシミュレーションデータであり、
前記方法は、
前記第1のシミュレーションデータに基づいて、前記シナリオパラメータの第1のサブセットまたは前記エラーモデルの第2のサブセットのうちの少なくとも1つを含む第2のパラメータ化シナリオを決定することと、
前記第2のパラメータ化シナリオに摂動を与えることと、
第2のシミュレーションデータを受信することと、
前記第2のシミュレーションデータに少なくとも部分的に基づいて、前記安全性メトリックを更新することと、
さらに含む、請求項1乃至4のいずれか一項に記載の方法。
the parameterized scenario is a first parameterized scenario, the perturbed parameterized scenario is a first perturbed parameterized scenario, the simulation data is a first simulation data, and
The method includes:
determining a second parameterized scenario including at least one of a first subset of the scenario parameters or a second subset of the error model based on the first simulation data;
perturbing the second parameterized scenario;
receiving second simulation data;
updating the safety metric based at least in part on the second simulation data;
5. The method of any one of claims 1-4, further comprising.
前記シナリオパラメータまたは前記エラーモデルの1つの少なくとも第1の部分を無効にすることと、
前記第2のシミュレーションデータを、無効にされていない前記シナリオパラメータまたは前記エラーモデルの1つの少なくとも第2の部分に関連付けることと
をさらに含む請求項5に記載の方法。
disabling at least a first portion of one of the scenario parameters or the error model;
6. The method of claim 5, further comprising associating the second simulation data with at least a second portion of one of the scenario parameters or the error model that are not overridden.
前記安全性メトリックがコスト閾値を満たすまたは超える確率を示す、請求項1乃至6のいずれか一項に記載の方法。 7. A method according to any preceding claim, wherein said safety metric indicates a probability of meeting or exceeding a cost threshold. 前記部分は第1の部分であり、
前記方法が、
マップデータを受信することであって、前記マップデータの第2の部分は、前記環境の前記第1の部分に関連付けられている、ことと、
前記マップデータの前記第2の部分が、前記シナリオパラメータに関連付けられた閾値確率を満たすまたは超える確率に関連付けられたシナリオに関連付けられていると決定することと、
をさらに含む、請求項1乃至7のいずれか一項に記載の方法。
said portion is a first portion;
said method comprising:
receiving map data, wherein a second portion of the map data is associated with the first portion of the environment;
determining that the second portion of the map data is associated with a scenario associated with a probability of meeting or exceeding a threshold probability associated with the scenario parameter;
8. The method of any one of claims 1-7, further comprising:
コンピュータ上で実行されると、請求項1乃至8のいずれかに記載の方法を実施する、コード化された命令を含むコンピュータプログラム製品。 A computer program product comprising coded instructions which, when run on a computer, implements the method of any of claims 1-8. 1つまたは複数のプロセッサと、
命令を格納した1つまたは複数の非一時的コンピュータ可読媒体と、
を含むシステムであって、
前記命令は、実行されると、前記1つまたは複数のプロセッサに、
環境の一部を説明するシナリオパラメータを含むシナリオを決定することと、
車両のサブシステムに関連付けられたエラーモデルの1つまたは複数を受信するまたは決定することと、
前記シナリオ、前記シナリオパラメータ、および前記エラーモデルに少なくとも部分的に基づいて、パラメータ化シナリオを決定することと、
前記パラメータ化シナリオを摂動を与えられたパラメータ化シナリオとして摂動を与えることと、
前記車両の前記サブシステムが前記摂動を与えられたパラメータ化シナリオにどのように応答するかを示すシミュレーションデータを受信することと、
前記シミュレーションデータに少なくとも部分的に基づいて、前記車両の前記サブシステムに関連付けられた安全性メトリックを決定することと、
を含む操作を実行させる
システム。
one or more processors;
one or more non-transitory computer-readable media storing instructions;
A system comprising
The instructions, when executed, cause the one or more processors to:
determining a scenario including scenario parameters that describe a portion of the environment;
receiving or determining one or more of the error models associated with vehicle subsystems;
determining a parameterized scenario based at least in part on the scenario, the scenario parameters, and the error model;
perturbing the parameterized scenario as a perturbed parameterized scenario;
receiving simulation data indicating how the subsystems of the vehicle will respond to the perturbed parameterized scenario;
determining a safety metric associated with the subsystem of the vehicle based at least in part on the simulation data;
A system that allows you to perform operations, including
前記シナリオパラメータは、オブジェクトのサイズ、オブジェクトの速度、オブジェクトのポーズ、オブジェクトの密度、車両の速度、車両の軌道の少なくとも1つに関連付けられている、
前記安全性メトリックは、コスト閾値を満たすまたは超える確率を示す、または
前記エラーモデルは、前記車両の知覚システム、前記車両の予測システム、または前記車両のプランナシステムの1つまたは複数に関連付けられている、
ことの少なくとも1つである、請求項10に記載のシステム。
the scenario parameters are associated with at least one of object size, object velocity, object pose, object density, vehicle velocity, vehicle trajectory;
the safety metric indicates a probability of meeting or exceeding a cost threshold; or the error model is associated with one or more of the vehicle's perception system, the vehicle's prediction system, or the vehicle's planner system. ,
11. The system of claim 10, wherein the system is at least one of:
前記シナリオを決定することが、
自律車両に関連付けられたログデータを受信することと、
前記ログデータをクラスタリングして、クラスタの第1のセットを決定することであって、クラスタの前記第1のセットの個々のクラスタは、前記シナリオに関連付けられている、ことと、
クラスタの前記第1のセットに少なくとも部分的に基づいて、前記個々のクラスタに関連付けられた確率を決定することと、
前記確率が確率閾値を満たすまたは超えると決定することと、
を含む請求項10または11に記載のシステム。
Determining the scenario includes:
receiving log data associated with the autonomous vehicle;
clustering the log data to determine a first set of clusters, wherein individual clusters of the first set of clusters are associated with the scenario;
determining probabilities associated with the individual clusters based at least in part on the first set of clusters;
determining that the probability meets or exceeds a probability threshold;
12. A system according to claim 10 or 11, comprising:
前記エラーモデルは、
前記環境に関連付けられたグラウンドトゥルースデータを受信することと、
前記グラウンドトゥルースデータを車両に関連付けられたログデータと比較することに少なくとも部分的に基づいて、エラーを決定することと、
前記エラーに少なくとも部分的に基づいて、エラー分布を決定することと、
に少なくとも部分的に基づいて決定され、
前記エラーモデルは前記エラー分布を含む、請求項10乃至12のいずれか一項に記載のシステム。
The error model is
receiving ground truth data associated with the environment;
determining an error based at least in part on comparing the ground truth data to log data associated with a vehicle;
determining an error distribution based at least in part on the error;
determined based at least in part on
13. The system of any one of claims 10-12, wherein the error model comprises the error distribution.
前記パラメータ化シナリオは第1のパラメータ化シナリオであり、前記摂動を与えられたパラメータ化シナリオは第1の摂動を与えられたパラメータ化シナリオであり、前記シミュレーションデータは第1のシミュレーションデータであり、前記操作は、
前記第1のシミュレーションデータに基づいて、前記シナリオパラメータの第1のサブセットまたは前記エラーモデルの第2のサブセットのうちの少なくとも1つを含む第2のパラメータ化シナリオを決定することと、
前記第2のパラメータ化シナリオに摂動を与えることと、
第2のシミュレーションデータを受信することと、
前記第2のシミュレーションデータに少なくとも部分的に基づいて、前記安全性メトリックを更新することと、
をさらに含む、請求項10乃至13のいずれか一項に記載のシステム。
the parameterized scenario is a first parameterized scenario, the perturbed parameterized scenario is a first perturbed parameterized scenario, the simulation data is a first simulation data, and Said operation is
determining a second parameterized scenario including at least one of a first subset of the scenario parameters or a second subset of the error model based on the first simulation data;
perturbing the second parameterized scenario;
receiving second simulation data;
updating the safety metric based at least in part on the second simulation data;
14. The system of any one of claims 10-13, further comprising:
前記操作が
前記シナリオパラメータまたは前記エラーモデルの1つの少なくとも第1の部分を無効にすることと、
前記第2のシミュレーションデータを、無効にされていない前記シナリオパラメータまたは前記エラーモデルの1つの少なくとも第2の部分に関連付けることと、
をさらに含む、請求項14に記載のシステム。
said operation invalidating at least a first portion of one of said scenario parameters or said error model;
associating the second simulation data with at least a second portion of one of the non-overridden scenario parameters or the error model;
15. The system of claim 14, further comprising:
JP2022519120A 2019-09-27 2020-09-17 Safety Analysis Framework Active JP7637673B2 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US16/586,838 2019-09-27
US16/586,853 2019-09-27
US16/586,838 US11625513B2 (en) 2019-09-27 2019-09-27 Safety analysis framework
US16/586,853 US11351995B2 (en) 2019-09-27 2019-09-27 Error modeling framework
PCT/US2020/051271 WO2021061488A1 (en) 2019-09-27 2020-09-17 Safety analysis framework

Publications (3)

Publication Number Publication Date
JP2022550058A true JP2022550058A (en) 2022-11-30
JPWO2021061488A5 JPWO2021061488A5 (en) 2023-09-27
JP7637673B2 JP7637673B2 (en) 2025-02-28

Family

ID=75166344

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022519120A Active JP7637673B2 (en) 2019-09-27 2020-09-17 Safety Analysis Framework

Country Status (4)

Country Link
EP (1) EP4034439A4 (en)
JP (1) JP7637673B2 (en)
CN (1) CN114430722A (en)
WO (1) WO2021061488A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115731695B (en) * 2021-08-31 2025-07-11 北京原创世代互动科技有限公司 A method, device, equipment and storage medium for determining scene security level
US11955001B2 (en) 2021-09-27 2024-04-09 GridMatrix, Inc. Traffic near miss collision detection
WO2023049453A1 (en) * 2021-09-27 2023-03-30 GridMatrix Inc. Traffic monitoring, analysis, and prediction
CN114104000B (en) * 2021-12-16 2024-04-12 智己汽车科技有限公司 Dangerous scene evaluation and processing system, method and storage medium
EP4238844A4 (en) * 2022-01-21 2024-10-16 Morai Inc. Method and system for evaluating performance of autonomous driving algorithm
CN116680517B (en) * 2023-07-27 2023-09-29 北京赛目科技股份有限公司 Method and device for determining failure probability in automatic driving simulation test

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008310803A (en) * 2007-06-12 2008-12-25 Palo Alto Research Center Inc Double evaluation for early collision warning
JP2015140181A (en) * 2014-01-29 2015-08-03 コンチネンタル オートモーティブ システムズ インコーポレイテッドContinental Automotive Systems, Inc. Method for minimizing brake intervention based on collision certainty factor
US20170286570A1 (en) * 2016-03-30 2017-10-05 Toyota Jidosha Kabushiki Kaisha Dynamic Virtual Object Generation for Testing Autonomous Vehicles in Simulated Driving Scenarios
US20190155291A1 (en) * 2016-12-23 2019-05-23 Faraday&Future Inc. Methods and systems for automated driving system simulation, validation, and implementation
US10373259B1 (en) * 2014-05-20 2019-08-06 State Farm Mutual Automobile Insurance Company Fully autonomous vehicle insurance pricing

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014215980B4 (en) * 2014-08-12 2025-08-14 Volkswagen Aktiengesellschaft Motor vehicle with cooperative autonomous driving mode
US9734455B2 (en) * 2015-11-04 2017-08-15 Zoox, Inc. Automated extraction of semantic information to enhance incremental mapping modifications for robotic vehicles
US10496766B2 (en) 2015-11-05 2019-12-03 Zoox, Inc. Simulation system and methods for autonomous vehicles
DE102016009762A1 (en) * 2016-08-11 2018-02-15 Trw Automotive Gmbh Control system and control method for determining a likelihood of a lane change of a preceding motor vehicle
US10481044B2 (en) * 2017-05-18 2019-11-19 TuSimple Perception simulation for improved autonomous vehicle control
US10725470B2 (en) * 2017-06-13 2020-07-28 GM Global Technology Operations LLC Autonomous vehicle driving systems and methods for critical conditions

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008310803A (en) * 2007-06-12 2008-12-25 Palo Alto Research Center Inc Double evaluation for early collision warning
JP2015140181A (en) * 2014-01-29 2015-08-03 コンチネンタル オートモーティブ システムズ インコーポレイテッドContinental Automotive Systems, Inc. Method for minimizing brake intervention based on collision certainty factor
US10373259B1 (en) * 2014-05-20 2019-08-06 State Farm Mutual Automobile Insurance Company Fully autonomous vehicle insurance pricing
US20170286570A1 (en) * 2016-03-30 2017-10-05 Toyota Jidosha Kabushiki Kaisha Dynamic Virtual Object Generation for Testing Autonomous Vehicles in Simulated Driving Scenarios
US20190155291A1 (en) * 2016-12-23 2019-05-23 Faraday&Future Inc. Methods and systems for automated driving system simulation, validation, and implementation

Also Published As

Publication number Publication date
EP4034439A4 (en) 2023-11-01
CN114430722A (en) 2022-05-03
WO2021061488A1 (en) 2021-04-01
JP7637673B2 (en) 2025-02-28
EP4034439A1 (en) 2022-08-03

Similar Documents

Publication Publication Date Title
US11625513B2 (en) Safety analysis framework
US11351995B2 (en) Error modeling framework
US11734473B2 (en) Perception error models
US11574089B2 (en) Synthetic scenario generator based on attributes
US11568100B2 (en) Synthetic scenario simulator based on events
US12097844B2 (en) Constraining vehicle operation based on uncertainty in perception and/or prediction
US11970168B2 (en) Vehicle trajectory modification for following
US11150660B1 (en) Scenario editor and simulator
JP7637673B2 (en) Safety Analysis Framework
US11628850B2 (en) System for generating generalized simulation scenarios
US11415997B1 (en) Autonomous driving simulations based on virtual simulation log data
JP2022544715A (en) Modeling and predicting yielding behavior
US11814070B1 (en) Simulated driving error models
US12296858B2 (en) Hybrid log simulated driving
US12246734B1 (en) Vehicle constraint generation
WO2020264276A1 (en) Synthetic scenario generator based on attributes
US12291240B1 (en) System for simulating an autonomous vehicle using a trajectory library and log data
US11480962B1 (en) Dynamic lane expansion
JP7662636B2 (en) Perceptual Error Model
US12451010B2 (en) Techniques for autonomous vehicle event mitigation
JP2024509086A (en) Agent transformation in driving simulation
US20240096232A1 (en) Safety framework with calibration error injection
US12499292B1 (en) Parameterized object controllers in driving simulations

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230919

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230919

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240620

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241011

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250217

R150 Certificate of patent or registration of utility model

Ref document number: 7637673

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150