JP2022524584A - 自動運転シミュレーション方法及び装置、電子機器並びに記憶媒体 - Google Patents
自動運転シミュレーション方法及び装置、電子機器並びに記憶媒体 Download PDFInfo
- Publication number
- JP2022524584A JP2022524584A JP2021547822A JP2021547822A JP2022524584A JP 2022524584 A JP2022524584 A JP 2022524584A JP 2021547822 A JP2021547822 A JP 2021547822A JP 2021547822 A JP2021547822 A JP 2021547822A JP 2022524584 A JP2022524584 A JP 2022524584A
- Authority
- JP
- Japan
- Prior art keywords
- vehicle
- information
- control signal
- message manager
- simulator
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01M—TESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
- G01M17/00—Testing of vehicles
- G01M17/007—Wheeled or endless-tracked vehicles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B17/00—Systems involving the use of models or simulators of said systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/15—Vehicle, aircraft or watercraft design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
Abstract
本開示の実施例は、自動運転シミュレーション方法及び装置、電子機器並びに記憶媒体を開示し、この方法は、メッセージマネージャが車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するステップと、前記メッセージマネージャが前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに前記第2のシャーシ情報及び前記第2の測位情報を送信するステップと、前記メッセージマネージャが前記自動運転システムから送信された第1の制御信号を受信し、前記第1の制御信号にフォーマット変換を行い、前記車両シミュレータにより前記車両状態情報を更新するための第2の制御信号を得るステップと、前記メッセージマネージャが前記車両シミュレータに前記第2の制御信号を送信するステップと、を含む。【選択図】図1
Description
本開示は、2020年2月24日に中国特許局に提出された、出願番号が202010113305.9で発明の名称が「自動運転シミュレーション方法及び装置、電子機器並びに記憶媒体」の優先権を主張し、その内容の全てが援用により本開示に組み込まれる。
本開示は、シミュレータによるシミュレーションの技術分野に関し、具体的には、自動運転シミュレーション方法及び装置、電子機器並びに記憶媒体に関する。
自動運転システムは、研究開発段階において繰り返してテストする必要があるが、自動運転システムに対する路上テストの周期が長く、テスト効率が低いため、相対的に真の自動運転シミュレーションテスト装置においてテストすれば、豊富なシーンでの自動運転システムのパフォーマンスを十分にテストすることができるだけでなく、問題を適時にフィードバックし、システムのイテレーションを早めることもできる。
現在、市場では、自動運転システムのテストに用いられる車両シミュレータがたくさんあるが、具体的な自動運転プロジェクトについて、セットとなって使用可能な車両シミュレータは、通常、限られており、使用時に車両シミュレータが提供できるデータ又はデータインタフェースは、特定の自動運転システムのデータに対するニーズを満たすことができないため、自動運転システムは車両シミュレータによるテストによく適合することができない。
本開示の実施例は、自動運転シミュレーション方法及び装置、電子機器並びに記憶媒体を提供する。
本開示の実施例の第1の態様は、自動運転シミュレーション方法を提供し、前記自動運転シミュレーション方法は、
メッセージマネージャが車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するステップと、
前記メッセージマネージャが前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに前記第2のシャーシ情報及び前記第2の測位情報を送信するステップと、
前記メッセージマネージャが前記自動運転システムから送信された第1の制御信号を受信し、前記第1の制御信号にフォーマット変換を行い、前記車両シミュレータにより前記車両状態情報を更新するための第2の制御信号を得るステップと、
前記メッセージマネージャが前記車両シミュレータに前記第2の制御信号を送信するステップと、を含む。
メッセージマネージャが車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するステップと、
前記メッセージマネージャが前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに前記第2のシャーシ情報及び前記第2の測位情報を送信するステップと、
前記メッセージマネージャが前記自動運転システムから送信された第1の制御信号を受信し、前記第1の制御信号にフォーマット変換を行い、前記車両シミュレータにより前記車両状態情報を更新するための第2の制御信号を得るステップと、
前記メッセージマネージャが前記車両シミュレータに前記第2の制御信号を送信するステップと、を含む。
任意選択的な実施形態において、前記メッセージマネージャが前記車両シミュレータに前記第2の制御信号を送信した後、前記方法は、
前記メッセージマネージャが前記車両シミュレータから送信された第2の車両状態情報を受信するステップを更に含み、前記第2の車両状態情報は、前記車両シミュレータにより前記第2の制御信号に基づいて前記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
前記メッセージマネージャが前記車両シミュレータから送信された第2の車両状態情報を受信するステップを更に含み、前記第2の車両状態情報は、前記車両シミュレータにより前記第2の制御信号に基づいて前記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
任意選択的な実施形態において、前記第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ、ハンドル操舵角のうちの1つ又は複数を含み、
及び/又は、
前記第1のシャーシ情報は、速度、加速度、姿勢情報のうちの1つ又は複数を含み、
前記姿勢情報は、ヨー角、ハンドル操舵角のうちの1つ又は複数を含む。
及び/又は、
前記第1のシャーシ情報は、速度、加速度、姿勢情報のうちの1つ又は複数を含み、
前記姿勢情報は、ヨー角、ハンドル操舵角のうちの1つ又は複数を含む。
任意選択的な実施形態において、前記方法は、
前記メッセージマネージャが前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、目標車両の情報を得て、エージェントマネージャに前記目標車両の情報を送信し、前記目標車両は前記車両シミュレータにおけるシミュレーション車両であり、前記目標車両の情報は、前記エージェントマネージャが車両シミュレーションシーンをロードした場合、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられるステップと、
前記メッセージマネージャが前記第1の感知情報にフォーマット変換を行い、第2の感知情報を得て、前記自動運転システムに前記第2の感知情報を送信して、前記自動運転システムが前記第2の感知情報及び前記第2の車両状態情報に基づいて意思決定と計画を行い、前記第1の制御信号を得るステップと、を更に含む。
前記メッセージマネージャが前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、目標車両の情報を得て、エージェントマネージャに前記目標車両の情報を送信し、前記目標車両は前記車両シミュレータにおけるシミュレーション車両であり、前記目標車両の情報は、前記エージェントマネージャが車両シミュレーションシーンをロードした場合、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられるステップと、
前記メッセージマネージャが前記第1の感知情報にフォーマット変換を行い、第2の感知情報を得て、前記自動運転システムに前記第2の感知情報を送信して、前記自動運転システムが前記第2の感知情報及び前記第2の車両状態情報に基づいて意思決定と計画を行い、前記第1の制御信号を得るステップと、を更に含む。
本開示の実施例の第2の態様は、メッセージマネージャを提供し、前記メッセージマネージャは、
車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するための伝送モジュールと、
前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得るための変換モジュールと、を含み、前記伝送モジュールは更に、自動運転システムに前記第2のシャーシ情報及び前記第2の測位情報を送信するために用いられ、
前記伝送モジュールは更に、前記自動運転システムから送信された第1の制御信号を受信するために用いられ、前記変換モジュールは更に、前記第1の制御信号にフォーマット変換を行い、前記車両シミュレータにより前記車両状態情報を更新するための第2の制御信号を得るために用いられ、
前記伝送モジュールは更に、前記車両シミュレータに前記第2の制御信号を送信するために用いられる。
車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するための伝送モジュールと、
前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得るための変換モジュールと、を含み、前記伝送モジュールは更に、自動運転システムに前記第2のシャーシ情報及び前記第2の測位情報を送信するために用いられ、
前記伝送モジュールは更に、前記自動運転システムから送信された第1の制御信号を受信するために用いられ、前記変換モジュールは更に、前記第1の制御信号にフォーマット変換を行い、前記車両シミュレータにより前記車両状態情報を更新するための第2の制御信号を得るために用いられ、
前記伝送モジュールは更に、前記車両シミュレータに前記第2の制御信号を送信するために用いられる。
任意選択的に、前記伝送モジュールは更に、前記車両シミュレータに前記第2の制御信号を送信した後、前記車両シミュレータから送信された第2の車両状態情報を受信するために用いられ、前記第2の車両状態情報は、前記車両シミュレータにより前記第2の制御信号に基づいて前記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
任意選択的に、前記第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ及び/又はハンドル操舵角を含み、
及び/又は、
前記第1のシャーシ情報は、速度、加速度及び/又は姿勢情報を含み、前記姿勢情報は、ヨー角及び/又はハンドル操舵角を含む。
及び/又は、
前記第1のシャーシ情報は、速度、加速度及び/又は姿勢情報を含み、前記姿勢情報は、ヨー角及び/又はハンドル操舵角を含む。
任意選択的に、前記変換モジュールは更に、前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、目標車両の情報を得るために用いられ、前記伝送モジュールは更に、エージェントマネージャに前記目標車両の情報を送信するために用いられ、前記目標車両の情報は、前記エージェントマネージャが車両シミュレーションシーンをロードした場合、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられ、
前記変換モジュールは更に、前記第1の感知情報にフォーマット変換を行い、第2の感知情報を得るために用いられ、前記伝送モジュールは更に、前記自動運転システムに前記第2の感知情報を送信して、前記自動運転システムが前記第2の感知情報及び前記第2の車両状態情報に基づいて意思決定と計画を行い、前記第1の制御信号を得るために用いられる。
前記変換モジュールは更に、前記第1の感知情報にフォーマット変換を行い、第2の感知情報を得るために用いられ、前記伝送モジュールは更に、前記自動運転システムに前記第2の感知情報を送信して、前記自動運転システムが前記第2の感知情報及び前記第2の車両状態情報に基づいて意思決定と計画を行い、前記第1の制御信号を得るために用いられる。
本開示の実施例の第3の態様は、自動運転シミュレーションテストシステムを提供し、前記自動運転シミュレーションテストシステムは、
自動運転システムと、車両シミュレータと、上記第2の態様に記載のメッセージマネージャと、を備える。
自動運転システムと、車両シミュレータと、上記第2の態様に記載のメッセージマネージャと、を備える。
任意選択的に、前記自動運転システムは、測位モジュール、地図モジュール、意思決定と計画モジュール及びコントローラを含み、
前記地図モジュールは、地図をロードし、且つ地図に少なくとも1つの目標車両を表示するために用いられ、
前記測位モジュールは、前記メッセージマネージャからの第2のシャーシ情報及び第2の位置情報を取得し、且つ前記第2のシャーシ情報及び前記第2の位置情報に基づいて前記地図における前記目標車両の状態を確定して更新するために用いられ、前記目標車両は前記車両シミュレータにおけるシミュレーション車両であり、
前記意思決定と計画モジュールは、前記目標車両の状態及びメッセージマネージャからの第2の感知情報に基づき、前記地図における前記目標車両の運転意思決定結果を確定するために用いられ、前記コントローラは、前記目標車両の前記運転意思決定結果に基づき、第1の制御信号を得て、前記メッセージマネージャに前記第1の制御信号を送信するために用いられる。
前記地図モジュールは、地図をロードし、且つ地図に少なくとも1つの目標車両を表示するために用いられ、
前記測位モジュールは、前記メッセージマネージャからの第2のシャーシ情報及び第2の位置情報を取得し、且つ前記第2のシャーシ情報及び前記第2の位置情報に基づいて前記地図における前記目標車両の状態を確定して更新するために用いられ、前記目標車両は前記車両シミュレータにおけるシミュレーション車両であり、
前記意思決定と計画モジュールは、前記目標車両の状態及びメッセージマネージャからの第2の感知情報に基づき、前記地図における前記目標車両の運転意思決定結果を確定するために用いられ、前記コントローラは、前記目標車両の前記運転意思決定結果に基づき、第1の制御信号を得て、前記メッセージマネージャに前記第1の制御信号を送信するために用いられる。
任意選択的に、前記車両シミュレータには車両運動力学モデルが記憶されており、前記車両運動力学モデルは、実際の車両センサにより収集した車両走行中のデータに基づいて予め確立され、
前記車両シミュレータは、
前記メッセージマネージャから送信された第2の制御信号を取得し、
前記車両運動力学モデル及び前記第2の制御信号に基づいて車両状態情報を更新し、第3のシャーシ情報及び第3の測位情報を含む第2の車両状態情報を得て、
前記メッセージマネージャに前記第2の車両状態情報を送信するために用いられる。
前記車両シミュレータは、
前記メッセージマネージャから送信された第2の制御信号を取得し、
前記車両運動力学モデル及び前記第2の制御信号に基づいて車両状態情報を更新し、第3のシャーシ情報及び第3の測位情報を含む第2の車両状態情報を得て、
前記メッセージマネージャに前記第2の車両状態情報を送信するために用いられる。
任意選択的に、前記第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ及びハンドル操舵角を含み、
前記車両シミュレータは、具体的に、予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係に基づき、前記第2の制御信号におけるアクセルデータ、ブレーキデータ及びシフトレンジに対応する第1の速度及び第1の加速度を得て、
予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係に基づき、前記第2の制御信号におけるハンドル操舵角を、対応する第1の前輪操舵角に変換し、
前記目標車両の第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離を取得し、
前記測位情報、前記第1の速度、前記第1の加速度、前記第1の前輪操舵角、前記第1のヨー角、前記車両前輪の車軸の中心から車両の重心までの距離及び前記車両後輪の車軸の中心から車両の重心までの距離に基づき、前記第2の車両状態情報を得るために用いられる。
前記車両シミュレータは、具体的に、予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係に基づき、前記第2の制御信号におけるアクセルデータ、ブレーキデータ及びシフトレンジに対応する第1の速度及び第1の加速度を得て、
予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係に基づき、前記第2の制御信号におけるハンドル操舵角を、対応する第1の前輪操舵角に変換し、
前記目標車両の第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離を取得し、
前記測位情報、前記第1の速度、前記第1の加速度、前記第1の前輪操舵角、前記第1のヨー角、前記車両前輪の車軸の中心から車両の重心までの距離及び前記車両後輪の車軸の中心から車両の重心までの距離に基づき、前記第2の車両状態情報を得るために用いられる。
任意選択的に、車両運動力学モデル確立モジュールを更に備え、前記車両運動力学モデル確立モジュールは、
センサにより収集した実車が道路で走行する際の、対応関係を有するアクセルデータ、ブレーキデータと速度、加速度とを複数組含む第1のデータを取得し、
前記第1のデータに基づき、車両のアクセルデータ、ブレーキデータ、シフトレンジと速度、加速度とのマッピング関係を構築し、
センサにより収集した実車が道路で走行する際の、対応関係を有するハンドル操舵角と車両前輪操舵角とを複数組含む第2のデータを取得し、
前記第2のデータに基づき、車両のハンドル操舵角と車両前輪操舵角との回転比例関係を構築し、
前記マッピング関係及び前記回転比例関係に基づき、車両運動力学モデルを得るために用いられる。
センサにより収集した実車が道路で走行する際の、対応関係を有するアクセルデータ、ブレーキデータと速度、加速度とを複数組含む第1のデータを取得し、
前記第1のデータに基づき、車両のアクセルデータ、ブレーキデータ、シフトレンジと速度、加速度とのマッピング関係を構築し、
センサにより収集した実車が道路で走行する際の、対応関係を有するハンドル操舵角と車両前輪操舵角とを複数組含む第2のデータを取得し、
前記第2のデータに基づき、車両のハンドル操舵角と車両前輪操舵角との回転比例関係を構築し、
前記マッピング関係及び前記回転比例関係に基づき、車両運動力学モデルを得るために用いられる。
任意選択的に、
エージェントマネージャを更に備え、前記エージェントマネージャは、
少なくとも1つの車両を含むエージェントが含まれた車両シミュレーションシーンをロードし、
メッセージマネージャからの目標車両の情報を受信し、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおける前記エージェントの状態を更新し、第1の感知情報を得て、
前記メッセージマネージャに前記第1の感知情報を送信するために用いられる。
エージェントマネージャを更に備え、前記エージェントマネージャは、
少なくとも1つの車両を含むエージェントが含まれた車両シミュレーションシーンをロードし、
メッセージマネージャからの目標車両の情報を受信し、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおける前記エージェントの状態を更新し、第1の感知情報を得て、
前記メッセージマネージャに前記第1の感知情報を送信するために用いられる。
任意選択的に、前記エージェントマネージャは更に、
前記車両シミュレーションシーンにおけるシミュレーション車両の情報を前記車両シミュレーションシーンにおける他のエージェントに送信して、前記他のエージェントが前記シミュレーション車両の情報に基づいて自身の状態を更新し、前記他のエージェントの情報を前記シミュレーション車両に送信して、前記シミュレーション車両が前記他のエージェントの情報に基づいて自身の状態を更新するために用いられる。
前記車両シミュレーションシーンにおけるシミュレーション車両の情報を前記車両シミュレーションシーンにおける他のエージェントに送信して、前記他のエージェントが前記シミュレーション車両の情報に基づいて自身の状態を更新し、前記他のエージェントの情報を前記シミュレーション車両に送信して、前記シミュレーション車両が前記他のエージェントの情報に基づいて自身の状態を更新するために用いられる。
任意選択的に、前記エージェントは、非自動車、動物、歩行者、交通コーン、交通信号灯、交通標識、道路標示、車線境界線、障害物のうちの1つ又は複数を更に含む。
本開示の実施例の第4の態様は、電子機器を提供し、前記電子機器は、プロセッサ及びメモリを含み、前記メモリは、前記プロセッサにより実行されるように構成されるコンピュータプログラムを記憶するために用いられ、前記プロセッサは、本開示の実施例の第1の態様のいずれか1つの方法に記載の一部又は全部のステップを実行するために用いられる。
本開示の実施例の第5の態様は、別の電子機器を提供し、前記電子機器は、プロセッサ及びメモリを含み、前記メモリは、前記プロセッサにより実行されるように構成されるコンピュータプログラムを記憶するために用いられ、前記プロセッサは、本開示の実施例の第2の態様によるメッセージマネージャが動作するように制御し、又は、本開示の実施例の第3の態様による自動運転シミュレーションテストシステムが動作するように制御するために用いられる。
本開示の実施例の第6の態様は、コンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータ読み取り可能な記憶媒体は、コンピュータプログラムを記憶するために用いられ、前記コンピュータプログラムによって、コンピュータは、本開示の実施例の第1の態様のいずれか1つの方法に記載の一部又は全部のステップを実行し、又は、前記プロセッサは、本開示の実施例の第2の態様に記載のメッセージマネージャが動作するように制御し、又は、前記プロセッサは、本開示の実施例の第3の態様に記載のシステムが動作するように制御する。
本開示の実施例の第7の態様は、命令を含むコンピュータプログラム製品を提供し、前記コンピュータプログラム製品がコンピュータで実行される際に、コンピュータに、上記第1の態様及びその任意の1つの可能な実現形態の方法を実行させる。
本開示の実施例において、メッセージマネージャが車両シミュレータから送信された第1の車両状態情報を受信し、且つ第1の車両状態情報に含まれた第1のシャーシ情報及び第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに第2のシャーシ情報及び第2の測位情報を送信し、メッセージマネージャが更に自動運転システムから送信された第1の制御信号を受信し、第1の制御信号にフォーマット変換を行い、第2の制御信号を得て、メッセージマネージャが車両シミュレータに第2の制御信号を送信することで、車両シミュレータが第2の制御信号に基づいて車両状態情報を更新することができ、データフォーマット変換及び転送の機能が実現され、メッセージマネージャにより変換された後のデータフォーマットが転送先での受信と処理により有利であり、これにより、自動運転シミュレーションテストを迅速且つ正確に実行することができ、データ処理の安定性が高められる。例えば、メッセージマネージャは、テストすべき自動運転システムのカスタマイズされた制御信号を、車両シミュレータにより識別・処理可能な汎用の制御信号に変換することができ、車両シミュレータで自動運転シミュレーションタスクをより正確に実行しやすくなる。制御信号が主に車両のシャーシ情報及び測位情報といった簡単なパラメータを含み、解析しやすいため、メッセージマネージャは、識別及び変換を迅速に行うことができる。また、車両シミュレータと自動運転システムを合わせて開発する必要がなくなり、即ち、車両シミュレータのソースコード又は自動運転システムのソースコードを修正することなく、中間のメッセージマネージャを交換するだけで、データ交換を行うとともに、自動運転シミュレーションテストを正確に達成することができ、自動運転システムの適合性、及び自動運転シミュレーションテストシステムの汎用性が高められる。
ここの図面は、明細書に組み込まれて本明細書の一部を構成し、これらの図面は、本開示に合致する実施例を示し、明細書と共に本開示の技術的解決手段を説明するために用いられる。
本開示の実施例により開示された自動運転シミュレーション方法の流れ概略図である。
本開示の実施例により開示されたメッセージマネージャの構造概略図である。
本開示の実施例により開示された自動運転シミュレーションテストシステムのアーキテクチャ概略図である。
本開示の実施例により開示された別の自動運転シミュレーションテストシステムの構造概略図である。
本開示の実施例により開示された電子機器の構造概略図である。
以下、本開示の実施例における図面を参照しながら、本開示の実施例における技術的解決手段を明確且つ完全に説明する。明らかに、説明される実施例は、本開示の実施例の一部に過ぎず、全てではない。本開示における実施例に基づいて、当業者が創造的な労力を要さずに想到し得る他の実施例は、全て本開示の保護範囲に属する。
本開示における「及び/又は」という用語は、関連対象の関連関係を説明するためのものに過ぎず、3つの関係が存在し得ることを表し、例えば、A及び/又はBは、Aのみが存在し、A及びBが同時に存在し、Bのみが存在するという3つの場合を表すことができる。また、本明細書における「少なくとも1つ」という用語は、複数のうちの任意の1つ又は複数のうちの少なくとも2つの任意の組み合わせを表し、例えば、A、B、Cのうちの少なくとも1つを含むことは、A、B及びCからなる集合から選択された任意の1つ又は複数の要素を含むことを表すことができる。本開示の明細書と特許請求の範囲と図面における「第1」、「第2」などの用語は、異なる対象を区別するためのものであり、特定の順序を説明するためのものではない。また、「含む」と「備える」という用語及びそれらのいかなる変形は、非排他的な包含をカバーすることを意図する。例えば、一連のステップ又はユニットを含むプロセス、方法、システム、製品又は機器は、示されたステップ又はユニットに限定されるわけではなく、任意選択的に、示されていないステップ又はユニットをさらに含むか、又は、任意選択的に、これらのプロセス、方法、製品又は機器に固有の他のステップ又はユニットをさらに含む。
本明細書において「実施例」に言及する場合、実施例を参照して説明した特定の特徴、構造又は特性が本開示の少なくとも1つの実施例に含まれてよいことを意味する。明細書における各箇所に出現する当該フレーズは必ずしも同じ実施例を意味するわけではなく、他の実施例と排他的な独立した実施例又は代替の実施例でもない。当業者が明確且つ暗黙的に理解するように、本明細書に説明される実施例は、他の実施例と組み合わせることができる。
以下、本開示の実施例を詳しく説明する。
図1を参照し、図1は、本開示の実施例により開示された自動運転シミュレーション方法の流れ概略図であり、図1に示すように、この自動運転シミュレーション方法は、メッセージマネージャにより実行されてよく、具体的に以下のステップを含むことができる。
101では、メッセージマネージャが車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信する。
本開示の実施例に係る自動運転システム(Auto Driving System)は、自動運転制御システムとも呼ばれ、自動車又はロボットが無人運転制御の場合に自動的に走行するように制御するために用いられる。
車両シミュレータにより、自動運転システムの車両シミュレーションを実現し、自動運転システムの性能をテストすることができる。本開示の実施例におけるメッセージマネージャは、自動運転システムと車両シミュレータの間のデータ変換及び転送を実現することができる。
上記のメッセージマネージャはハードウェアデバイスであってもよく、この自動運転シミュレーション方法は、メッセージマネージャにおけるプロセッサがメモリに記憶されているコンピュータ読み取り可能な命令を呼び出すように実現することができる。1つの実施形態において、当該メッセージマネージャの製品の形態は、ソフトウェア、又はソフトウェアとハードウェアを一体的にした電子機器などである可能性もある。例えば、ソフトウェア側のプラットフォーム開発により、ソフトウェア側でソフトウェア形態のメッセージマネージャを得ることができ、又は、開発・設計されたソフトウェアプログラムを電子機器に配置することにより、図1の実施例におけるメッセージマネージャが実行可能な方法を実行する。
本開示の実施例において、メッセージマネージャを中間局として設けることで、データ処理及び転送を行うことができ、車両シミュレータ及び自動運転システムのデータやり取りの橋として、普通の車両シミュレータにより提供されたデータ又はデータインタフェースが特定の自動運転システムプロジェクトのデータに対するニーズを満たすことができず、両者がデータを交換できなくなるという問題を解決することができる。
具体的には、メッセージマネージャは、車両シミュレータから送信された第1の車両状態情報を受信することができ、当該第1の車両状態情報は第1のシャーシ情報及び第1の測位情報を含む。
ここでは、当該第1のシャーシ情報は、速度、加速度、姿勢情報のうちの1つ又は複数を含んでよく、姿勢情報は、ヨー角、ハンドル操舵角のうちの1つ又は複数を含む。当該第1の測位情報は目標車両の測位情報であり、具体的には座標情報又は経緯度情報などであり得る。
目標車両が今回の自動運転システム及び車両シミュレータのシミュレーション対象であることを例とし、車両シミュレータは、自動運転システムから送信された、メッセージマネージャにより変換、転送された制御信号に基づき、目標車両に車両シミュレーション処理を行い、目標車両の車両状態情報を得ることができ、ここでは、自動運転システムから出力された制御信号は、目標車両の処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ、ハンドル操舵角のうちの1つ又は複数を含んでよく、これらのデータは、自動運転システムの自動運転アルゴリズムによって得られ、且つ周期的に更新されることができる。
車両シミュレータから送信された第1の車両状態情報を受信した後、ステップ102を実行することができる。
任意選択的な実施形態において、自動運転シミュレーションタスクに対して、エージェントマネージャを設けてもよく、当該方法は、
上記メッセージマネージャが上記第1のシャーシ情報及び上記第1の測位情報にフォーマット変換を行い、目標車両の情報を得て、エージェントマネージャに目標車両の情報を送信し、当該目標車両は上記車両シミュレータにおけるシミュレーション車両であり、当該目標車両の情報は、エージェントマネージャが車両シミュレーションシーンをロードした場合、目標車両の情報に基づいて車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられるステップと、
当該メッセージマネージャが当該第1の感知情報にフォーマット変換を行い、第2の感知情報を得て、自動運転システムに当該第2の感知情報を送信して、当該自動運転システムが当該第2の感知情報及び第2の車両状態情報に基づいて意思決定と計画を行い、第1の制御信号を得るステップと、を更に含む。
上記メッセージマネージャが上記第1のシャーシ情報及び上記第1の測位情報にフォーマット変換を行い、目標車両の情報を得て、エージェントマネージャに目標車両の情報を送信し、当該目標車両は上記車両シミュレータにおけるシミュレーション車両であり、当該目標車両の情報は、エージェントマネージャが車両シミュレーションシーンをロードした場合、目標車両の情報に基づいて車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられるステップと、
当該メッセージマネージャが当該第1の感知情報にフォーマット変換を行い、第2の感知情報を得て、自動運転システムに当該第2の感知情報を送信して、当該自動運転システムが当該第2の感知情報及び第2の車両状態情報に基づいて意思決定と計画を行い、第1の制御信号を得るステップと、を更に含む。
具体的には、エージェントマネージャは、車両シミュレーションシーンをロードすることができ、当該車両シミュレーションシーンにはエージェントが含まれ、当該エージェントは少なくとも1つの車両を含み得る。任意選択的に、当該エージェントは、非自動車、動物、歩行者、交通コーン、交通信号灯、交通標識、道路標示、車線境界線、障害物のうちの1つ又は複数を更に含むが、ここで制限しない。
上記目標車両は上記車両シミュレータにおけるシミュレーション車両であり、メッセージマネージャは更に、車両シミュレータから送信された上記第1のシャーシ情報及び上記第1の測位情報を上記目標車両の情報に変換し、エージェントマネージャに当該目標車両の情報を送信することができ、エージェントマネージャが車両シミュレーションシーンをロードした場合、当該目標車両の情報に基づいて車両シミュレーションシーンにおけるエージェントの状態を更新し、上記第1の感知情報を得ることができる。エージェントマネージャは、車両シミュレータから送信された、メッセージマネージャにより変換されて転送された目標車両の情報に基づき、車両シミュレーションシーンにおけるエージェントを制御することができると理解してよく、具体的には、車両シミュレーションシーンにおける目標車両の情報を当該車両シミュレーションシーンにおける他のエージェントに送信し、他のエージェントが当該シミュレーション車両の情報に基づいて自身の状態を更新することであってよい。
当該メッセージマネージャは、当該第1の感知情報を第2の感知情報に変換した後、上記自動運転システムに第2の感知情報を送信することができる。自動運転システムは、第2の感知情報及び得られた前記第2の車両状態情報に基づいて意思決定と計画を統合的に行うことで、目標車両の走行時に周辺のエージェントの状態を考慮するように制御し、上記第1の制御信号を得ることができる。
102では、当該メッセージマネージャが当該第1のシャーシ情報及び当該第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに当該第2のシャーシ情報及び当該第2の測位情報を送信する。
メッセージマネージャは、車両シミュレータと自動運転システムの間の情報フォーマット変換を実現することができ、具体的には、メッセージマネージャにおいて、車両シミュレータと自動運転システムの間における異なるメッセージタイプのデータのフォーマットマッピング関係、及びデータインタフェースの間における異なるメッセージタイプのデータの転送マッピング関係を予め設定することができ、そのうちの一方から送信されたデータを受信した場合、まず、データを識別し、当該データのメッセージタイプを確定することができ、例えば、第1のシャーシ情報であり、シャーシ情報に属する場合、車両シミュレータと自動運転システムの間におけるシャーシ情報のフォーマットマッピング関係に基づき、当該第1のシャーシ情報に対応する変換フォーマットを確定し、フォーマット変換を実行して対応する第2のシャーシ情報を得ることができ、また、データインタフェースの間におけるシャーシ情報の転送マッピング関係に基づき、当該第1のシャーシ情報に対応する転送先が自動運転システムのデータインタフェースであると確定し、第2のシャーシ情報を得た後に当該第2のシャーシ情報を自動運転システムに送信することができる。
同様に、メッセージマネージャは、当該第1の測位情報にフォーマット変換を行い、第2の測位情報を得て自動運転システムに送信することができる。
103では、当該メッセージマネージャが当該自動運転システムから送信された第1の制御信号を受信し、当該第1の制御信号にフォーマット変換を行い、当該車両シミュレータにより当該車両状態情報を更新するための第2の制御信号を得る。
前述したステップ102において説明された方法と類似し、メッセージマネージャは、自動運転システムから送信された第1の制御信号を受信することができ、当該第1の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ、ハンドル操舵角のうちの1つ又は複数を含み得る。
同様に、目標車両が今回の自動運転システム及び車両シミュレータによりシミュレートされる車両であることを例とし、自動運転システムは、車両シミュレータから送信された、メッセージマネージャにより変換されて転送された目標車両の車両状態情報に基づいて処理し、当該目標車両の制御信号を得て、メッセージマネージャにより変換してから、車両シミュレータに転送することができる。具体的には、メッセージマネージャは、自動運転システムから送信された第1の制御信号を受信した場合、同様に、当該第1の制御信号にフォーマット変換を行い、第2の制御信号を得て、ステップ104を実行することができる。
104では、当該メッセージマネージャが当該車両シミュレータに当該第2の制御信号を送信する。
メッセージマネージャは、自動運転システムの第1の制御信号のデータフォーマットを車両マネージャによる処理に適するデータフォーマットに変換して第2の制御信号を得た後、第2の制御信号を車両シミュレータに送信して、車両シミュレータが当該第2の制御信号に基づいて目標車両の車両状態情報を更新することができる。
1つの実施形態において、ステップ104の後、当該方法は、
メッセージマネージャが車両シミュレータから送信された第2の車両状態情報を受信するステップを更に含み、当該第2の車両状態情報は、当該車両シミュレータにより上記第2の制御信号に基づいて上記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
メッセージマネージャが車両シミュレータから送信された第2の車両状態情報を受信するステップを更に含み、当該第2の車両状態情報は、当該車両シミュレータにより上記第2の制御信号に基づいて上記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
具体的には、車両シミュレータは、第2の制御信号を受信した後、第2の制御信号に基づいて車両状態情報を更新し、第3のシャーシ情報及び第3の測位情報を含む第2の車両状態情報を得て、メッセージマネージャに送信することができ、メッセージマネージャは更に、当該第2の車両状態情報を処理し、具体的にステップ101の通りであり、ここで繰り返して説明しない。前記ステップは、自動運転シミュレーションタスクが終了するまで、周期的に実行可能であることが分かる。
異なる自動運転システムに対するシミュレーションテストに適合できるように、メッセージマネージャにおいて自動運転システムのインタフェースを設定して変更することができる。同時に、車両シミュレータのインタフェースを設定して変更することもでき、それにより異なる車両シミュレータを交換して使用することができる。一般的に、従来の自動運転システムのデータインタフェースは、車両シミュレータに適合するように開発する必要があり、テストシステムにおいて他のタイプの車両シミュレータに交換すれば、新たな車両シミュレータに対して自動運転システムを改めて開発する必要があり、そうでなければ、適合できず使用できなくなり、開発コストが非常に高い。本開示では、テストシステムにメッセージマネージャを増設し、メッセージマネージャにより自動運転システムと車両シミュレータの間でやり取りをするデータの変換処理及び転送を行い、車両シミュレータを交換する必要がある場合、自動運転システムを改めて設計することなく、メッセージマネージャと車両シミュレータの間の通信インタフェース部を変更すればよく、自動運転システムの適合性が高められ、及び/又は、テストされる自動運転システムを交換する必要がある場合、車両シミュレータを新たな自動運転システムに適合する車両シミュレータに交換することなく、メッセージマネージャと自動運転システムの間の通信インタフェース部を変更すればよく、任意選択的に、テストシステムにエージェントマネージャが更に設けられており、前述した内容を基に、エージェントマネージャを交換する必要がある場合、自動運転システム及び車両シミュレータを改めて設計することなく、メッセージマネージャとエージェントマネージャの間の通信インタフェース部を変更すればよく、コストが削減され、自動運転シミュレーションテスト装置の汎用性が高められる。
本開示の実施例において、メッセージマネージャが車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信し、更に当該第1のシャーシ情報及び当該第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに当該第2のシャーシ情報及び当該第2の測位情報を送信し、メッセージマネージャが更に自動運転システムから送信された第1の制御信号を受信し、当該第1の制御信号にフォーマット変換を行い、当該車両シミュレータにより当該車両状態情報を更新するための第2の制御信号を得て、当該メッセージマネージャが当該車両シミュレータに当該第2の制御信号を送信することで、データフォーマット変換及び転送の機能を実現することができ、メッセージマネージャにより変換された後のデータフォーマットが転送先での受信と処理により有利であり、自動運転シミュレーションテストを迅速且つ正確に実行することができ、データ処理の安定性が高められる。例えば、メッセージマネージャは、テストされる自動運転システムのカスタマイズされた制御信号を、車両シミュレータにより識別・処理可能な汎用の制御信号に変換することができ、車両シミュレータで自動運転シミュレーションタスクをより正確に実行しやすくなる。制御信号が主に車両のシャーシ情報及び測位情報といった簡単なパラメータを含み、解析しやすいため、メッセージマネージャは、識別及び変換を迅速に行うことができる。同時に、車両シミュレータと自動運転システムを合わせて開発する必要がなく、即ち、車両シミュレータのソースコード又は自動運転システムのソースコードを修正することなく、中間のメッセージマネージャを交換するだけで、データ交換を行うとともに、自動運転シミュレーションテストを正確に達成することができ、自動運転システムの適合性、及び自動運転シミュレーションテストシステムの汎用性が高められる。
当業者であれば、発明を実施するための形態の方法において、各ステップの記述順序は、厳しい実行順序を意味するものではなく、実施プロセスを一切限定せず、各ステップの具体的な実行順序は、その機能及び可能な内部論理に応じて確定すべきであることを理解できる。
以上、主に方法側の実行プロセスの面から本開示の実施例の技術手段を説明した。メッセージマネージャ及び/又は自動運転シミュレーションテストシステムは、前述した機能を実現するために、各機能を実行するための対応するハードウェア構造及び/又はソフトウェアモジュールを含んでいることを理解されたい。当業者であれば、本明細書に開示された実施例に記載の各例のユニット及びアルゴリズムステップと組み合わせて、本開示は、ハードウェア又はハードウェア及びコンピュータソフトウェアの組み合わせの形態で実現可能であることを意識すべきである。ある機能が一体ハードウェアで実行されるか、それともコンピュータソフトウェアによりハードウェアをドライブするように実行されるかは、技術手段の特定の応用及び設計制約条件によるものである。当業者であれば、特定の応用に対して異なる方法で説明された機能を実現してよいが、このような実現は本開示の範囲を超えると考えられるべきではない。
本開示の実施例において、前述した方法の例に基づいてメッセージマネージャに機能ユニット(モジュール)の分割を行うことができ、例えば、各機能に対応して各機能ユニットを分割してもよく、2つ又は2つ以上の機能を1つ処理ユニットに統合してもよい。当該統合されたユニットは、ハードウェアの形態で実現されてもよく、ソフトウェア機能ユニットの形態で実現されてもよい。本開示の実施例におけるユニットに対する分割は概略的なものであり、1種の論理機能の分割に過ぎず、実際に実現する時に、別の分割形態を採用してもよいことを説明しておく。
図2を参照し、図2は、本開示の実施例により提供されるメッセージマネージャの構造概略図であり、図2に示すように、メッセージマネージャ200は、
車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するための伝送モジュール210と、
当該第1のシャーシ情報及び当該第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得るための変換モジュール220と、を含み、当該伝送モジュール210は更に、自動運転システムに当該第2のシャーシ情報及び当該第2の測位情報を送信するために用いられ、
当該伝送モジュール210は更に、当該自動運転システムから送信された第1の制御信号を受信するために用いられ、当該変換モジュール220は更に、当該第1の制御信号にフォーマット変換を行い、当該車両シミュレータにより当該車両状態情報を更新するための第2の制御信号を得るために用いられ、
当該伝送モジュール210は更に、当該車両シミュレータに当該第2の制御信号を送信するために用いられる。
車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するための伝送モジュール210と、
当該第1のシャーシ情報及び当該第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得るための変換モジュール220と、を含み、当該伝送モジュール210は更に、自動運転システムに当該第2のシャーシ情報及び当該第2の測位情報を送信するために用いられ、
当該伝送モジュール210は更に、当該自動運転システムから送信された第1の制御信号を受信するために用いられ、当該変換モジュール220は更に、当該第1の制御信号にフォーマット変換を行い、当該車両シミュレータにより当該車両状態情報を更新するための第2の制御信号を得るために用いられ、
当該伝送モジュール210は更に、当該車両シミュレータに当該第2の制御信号を送信するために用いられる。
任意選択的に、当該伝送モジュール210は更に、当該車両シミュレータに当該第2の制御信号を送信した後、当該車両シミュレータから送信された第2の車両状態情報を受信するために用いられ、当該第2の車両状態情報は、当該車両シミュレータにより当該第2の制御信号に基づいて当該車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
任意選択的に、当該第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ及び/又はハンドル操舵角を含み、
及び/又は、当該第1のシャーシ情報は、速度、加速度及び/又は姿勢情報を含み、当該姿勢情報は、ヨー角及び/又はハンドル操舵角を含む。
及び/又は、当該第1のシャーシ情報は、速度、加速度及び/又は姿勢情報を含み、当該姿勢情報は、ヨー角及び/又はハンドル操舵角を含む。
任意選択的に、当該変換モジュール220は更に、当該第1のシャーシ情報及び当該第1の測位情報にフォーマット変換を行い、目標車両の情報を得るために用いられ、当該伝送モジュール210は更に、エージェントマネージャに当該目標車両の情報を送信するために用いられ、当該目標車両の情報は、当該エージェントマネージャが車両シミュレーションシーンをロードした場合、当該目標車両の情報に基づいて当該車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられ、
当該変換モジュール220は更に、当該第1の感知情報にフォーマット変換を行い、第2の感知情報を得るために用いられ、当該伝送モジュール210は更に、当該自動運転システムに当該第2の感知情報を送信し、当該自動運転システムが当該第2の感知情報及び当該第2の車両状態情報に基づいて意思決定と計画を行い、当該第1の制御信号を得るために用いられる。
当該変換モジュール220は更に、当該第1の感知情報にフォーマット変換を行い、第2の感知情報を得るために用いられ、当該伝送モジュール210は更に、当該自動運転システムに当該第2の感知情報を送信し、当該自動運転システムが当該第2の感知情報及び当該第2の車両状態情報に基づいて意思決定と計画を行い、当該第1の制御信号を得るために用いられる。
図3を参照することができ、図3は、本開示の実施例により提供される自動運転シミュレーションテストシステムの構造概略図である。図3に示すように、自動運転シミュレーションテストシステム300は、
自動運転システム330と、車両シミュレータ320と、図2に示されるメッセージマネージャ200と、を備える。任意選択的に、当該自動運転シミュレーションテストシステムは、図1に示される実施例において言及したエージェントマネージャ340を更に備えてもよい。
自動運転システム330と、車両シミュレータ320と、図2に示されるメッセージマネージャ200と、を備える。任意選択的に、当該自動運転シミュレーションテストシステムは、図1に示される実施例において言及したエージェントマネージャ340を更に備えてもよい。
本願の実施例における自動運転シミュレーション方法及び自動運転シミュレーションテストシステムをより明らかに説明するために、図4を参照し、図4は、本開示の実施例により開示された別の自動運転シミュレーションテストシステムの構造概略図である。図4に示すように、自動運転シミュレーションテストシステムは、車両シミュレータ410と、メッセージマネージャ420と、エージェントマネージャ430と、自動運転システム440と、を備え、ここでは、自動運転システム440は、テストされるシステムである。
例を挙げれば、図1に示される実施例における具体的な説明及び図4に示される自動運転シミュレーションテストシステムのアーキテクチャによれば、その自動運転シミュレーションの流れは、具体的に以下のステップを含んでよい。
(1)車両シミュレータ410はメッセージマネージャ420から汎用の制御信号を取得して自身の位置更新を行い、同時に汎用の第1のシャーシ情報及び第1の測位情報をメッセージマネージャ420に送信することができる。
(2)メッセージマネージャ420は第1のシャーシ情報及び第1の測位情報を目標車両の情報に変換し、エージェントマネージャ430に送信し、且つ、第1のシャーシ情報及び第1の測位情報を第2のシャーシ情報及び第2の測位情報に変換し、自動運転システム440に送信することができる。
(3)エージェントマネージャ430はメッセージマネージャ420を介して目標車両の情報を得て処理し、管理されるエージェントが目標車両に応答するとともにエージェント自身の状態を更新するように制御し、第1の感知情報を得て、メッセージマネージャ420に送信する。
(4)メッセージマネージャ420は更に第1の感知情報を第2の感知情報に変換し、自動運転システム440に送信することができる。
(5)自動運転システム440は第2のシャーシ情報、第2の測位情報及び第2の感知情報に基づいて目標車両の自動運転制御を行い、第1の制御信号を出力し、メッセージマネージャ420に送信することができる。
(6)メッセージマネージャ420は第1の制御信号を第2の制御信号に変換し、車両シミュレータ410に送信することができる。車両シミュレータ410は第2の制御信号に応答して(1)に記載の処理ステップを実行することができ、即ち、自動運転シミュレーションテストが終了するまで、以上のステップ(1)~(6)を周期的に実行することができる。
任意選択的な実施形態において、自動運転システム440は、測位モジュール441、地図モジュール442、意思決定と計画モジュール443及びコントローラ444を含み、
地図モジュール442は、地図をロードし、且つ地図に少なくとも1つの目標車両を表示するために用いられ、
測位モジュール441は、メッセージマネージャからの第2のシャーシ情報及び第2の位置情報を取得し、且つ当該第2のシャーシ情報及び当該第2の位置情報に基づいて当該地図における当該目標車両の状態を確定して更新するために用いられ、当該目標車両は当該車両シミュレータにおけるシミュレーション車両であり、
意思決定と計画モジュール443は、当該目標車両の状態及びメッセージマネージャからの第2の感知情報に基づき、当該地図における当該目標車両の運転意思決定結果を確定するために用いられ、コントローラ44は、当該目標車両の当該運転意思決定結果に基づき、第1の制御信号を得て、当該メッセージマネージャに当該第1の制御信号を送信するために用いられる。
地図モジュール442は、地図をロードし、且つ地図に少なくとも1つの目標車両を表示するために用いられ、
測位モジュール441は、メッセージマネージャからの第2のシャーシ情報及び第2の位置情報を取得し、且つ当該第2のシャーシ情報及び当該第2の位置情報に基づいて当該地図における当該目標車両の状態を確定して更新するために用いられ、当該目標車両は当該車両シミュレータにおけるシミュレーション車両であり、
意思決定と計画モジュール443は、当該目標車両の状態及びメッセージマネージャからの第2の感知情報に基づき、当該地図における当該目標車両の運転意思決定結果を確定するために用いられ、コントローラ44は、当該目標車両の当該運転意思決定結果に基づき、第1の制御信号を得て、当該メッセージマネージャに当該第1の制御信号を送信するために用いられる。
具体的には、自動運転システム440における地図モジュール442は、地図をロードし、且つ地図に少なくとも1つの目標車両を表示するために用いられ、
測位モジュール441は、メッセージマネージャ420からの第2のシャーシ情報及び第2の位置情報を取得し、且つ第2のシャーシ情報及び第2の位置情報に基づいて地図における目標車両の状態を確定して更新することができ、続いて、意思決定と計画モジュール443は、当該目標車両の状態及びメッセージマネージャ420からの第2の感知情報に基づき、車両の後続の走行経路、方向、速度などを決定し、地図における目標車両の運転意思決定結果を確定し、コントローラ444は、当該運転意思決定結果に基づき、第1の制御信号を得ることができ、自動運転システム440は、メッセージマネージャ420に当該第1の制御信号を送信することができる。
測位モジュール441は、メッセージマネージャ420からの第2のシャーシ情報及び第2の位置情報を取得し、且つ第2のシャーシ情報及び第2の位置情報に基づいて地図における目標車両の状態を確定して更新することができ、続いて、意思決定と計画モジュール443は、当該目標車両の状態及びメッセージマネージャ420からの第2の感知情報に基づき、車両の後続の走行経路、方向、速度などを決定し、地図における目標車両の運転意思決定結果を確定し、コントローラ444は、当該運転意思決定結果に基づき、第1の制御信号を得ることができ、自動運転システム440は、メッセージマネージャ420に当該第1の制御信号を送信することができる。
シミュレーション結果は、テストされた自動運転システム400自体が備える可視化機能によって出力することができ、即ち、自動運転シミュレーションテストシステム400は、シミュレーションビデオ、画像などのデータを表示することができる。
任意選択的な実施形態において、車両シミュレータ410には車両運動力学モデルが記憶されており、当該車両運動力学モデルは、実際の車両センサにより収集した車両走行中のデータに基づいて予め確立され、
車両シミュレータ410は、
当該メッセージマネージャから送信された第2の制御信号を取得し、
当該車両運動力学モデル及び当該第2の制御信号に基づいて車両状態情報を更新し、第3のシャーシ情報及び第3の測位情報を含む第2の車両状態情報を得て、
当該メッセージマネージャに当該第2の車両状態情報を送信するために用いられる。
車両シミュレータ410は、
当該メッセージマネージャから送信された第2の制御信号を取得し、
当該車両運動力学モデル及び当該第2の制御信号に基づいて車両状態情報を更新し、第3のシャーシ情報及び第3の測位情報を含む第2の車両状態情報を得て、
当該メッセージマネージャに当該第2の車両状態情報を送信するために用いられる。
本開示の実施例における車両シミュレータ410は、予め設定された車両運動力学モデルを利用してシミュレーション車両の運動形態を説明することができる。実際の車両センサにより車両走行中のデータを収集し、より真の車両運動力学モデルを予め確立し、且つ当該車両シミュレータ410に応用することで、車両シミュレータ410が当該車両運動力学モデル及び受信した第2の制御信号に基づいて車両状態情報を更新し、第2の車両状態情報を得ることができる。
ここで、自動運転システム440により生成された、メッセージマネージャ420により変換されて転送された第2の制御情報のうち、アクセルデータ、ブレーキデータ、ハンドル操舵角などは、計算プロセスで十分に具現化しておらず、まず変換してから、車両シミュレータ410で演算することができる。従って、車両運動力学モデルにおいて、車両のアクセルデータ、ブレーキデータ、シフトレンジと速度、加速度とのマッピング関係を予め設定し、且つ、車両のハンドル操舵角と車両前輪操舵角との回転比例関係を予め設定することができる。
更に具体的には、当該車両運動力学モデルの確立プロセスは、
センサにより収集した実車が道路で走行する際の、対応関係を有するアクセルデータ、ブレーキデータと速度、加速度とを複数組含む第1のデータを取得し、
当該第1のデータに基づき、車両のアクセルデータ、ブレーキデータ、シフトレンジと速度、加速度とのマッピング関係を構築し、
センサにより収集した実車が道路で走行する際の、対応関係を有するハンドル操舵角と車両前輪操舵角とを複数組含む第2のデータを取得し、
当該第2のデータに基づき、車両のハンドル操舵角と車両前輪操舵角との回転比例関係を構築し、
当該マッピング関係及び当該回転比例関係に基づき、車両運動力学モデルを得ることを含む。
センサにより収集した実車が道路で走行する際の、対応関係を有するアクセルデータ、ブレーキデータと速度、加速度とを複数組含む第1のデータを取得し、
当該第1のデータに基づき、車両のアクセルデータ、ブレーキデータ、シフトレンジと速度、加速度とのマッピング関係を構築し、
センサにより収集した実車が道路で走行する際の、対応関係を有するハンドル操舵角と車両前輪操舵角とを複数組含む第2のデータを取得し、
当該第2のデータに基づき、車両のハンドル操舵角と車両前輪操舵角との回転比例関係を構築し、
当該マッピング関係及び当該回転比例関係に基づき、車両運動力学モデルを得ることを含む。
一般的に、車両シミュレータにおけるシミュレーション車両と実際にテストされる車両のパラメータ及び性能が一致していない。シミュレーションテストを行う際に、車のねじりトルク、車両のパワー、タイヤの摩擦係数などの車両の根本的なパラメータを取得する必要があり、これらのパラメータが通常得難いため、車両のシミュレーションが実際の路上テスト車両に好適にマッチングし難い。
本開示の実施例において、予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係、及び予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係は、収集された実車データを統計することで得ることができる。
具体的には、真の自動運転テスト車両を可能な限りシミュレートするために、本開示の実施例において、まず、センサ及び実車を利用し、実車を運転して道路で走行させることで、アクセルデータ、ブレーキデータと速度、加速度とを複数組ランダム且つ大量に収集することができ、ここでは、当該アクセルデータ、当該ブレーキデータと当該速度、当該加速度とは対応関係を有し、且つ、複数の車両のハンドル操舵角と車両前輪操舵角とを複数組測定することができ、当該ハンドル操舵角と当該車両前輪操舵角とは対応関係を有し、続いて、補間フィッティングの手法で、予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係、及び予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係を構築し、車両運動力学モデルの縦型の数式表現とすることで、シミュレーション車両を制御するには、加速器、ブレーキ、シフトレンジ及びハンドル操舵角といったパラメータのみが必要とされることを実現でき、計算して、車両状態メッセージを出力することができ、車両の根本的な性能パラメータを提供し難いという窮地を脱し、実際の路上テスト車両を真にシミュレートすることができる。
具体的には、第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ及びハンドル操舵角を含み、
車両シミュレータ410は、具体的に、
予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係に基づき、当該第2の制御信号におけるアクセルデータ、ブレーキデータ及びシフトレンジに対応する第1の速度及び第1の加速度を得て、
予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係に基づき、当該第2の制御信号におけるハンドル操舵角を、対応する第1の前輪操舵角に変換し、
目標車両の第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離を取得し、
測位情報、第1の速度、第1の加速度、第1の前輪操舵角、第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離に基づき、第2の車両状態情報を得るために用いられる。
車両シミュレータ410は、具体的に、
予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係に基づき、当該第2の制御信号におけるアクセルデータ、ブレーキデータ及びシフトレンジに対応する第1の速度及び第1の加速度を得て、
予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係に基づき、当該第2の制御信号におけるハンドル操舵角を、対応する第1の前輪操舵角に変換し、
目標車両の第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離を取得し、
測位情報、第1の速度、第1の加速度、第1の前輪操舵角、第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離に基づき、第2の車両状態情報を得るために用いられる。
車両シミュレータ410において、受信した制御信号に対して、予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係、及び予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係に基づき、対応する第1の速度、第1の加速度及び第1の前輪操舵角を得ることができ、車両状態の演算を行うことができる。具体的には、当該目標車両の車両前輪の車軸の中心から車両の重心までの距離、及び車両後輪の車軸の中心から車両の重心までの距離を取得することができ、当該距離は、車両シミュレータ410からローカルに得られてもよく、自動運転システム440により設定されてメッセージマネージャ420により車両シミュレータ410に送信されてもよい。車両シミュレータ410により得られた測位情報、第1の速度、第1の加速度、第1の前輪操舵角、第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離に基づき、第2の車両状態情報を得て、具体的に、第2の測位情報、第2の速度、第2の加速度及び第2のヨー角のうちの任意の1つ又は複数を含んでよい。本開示の実施例における車両の測位情報は、車両の位置座標で表すことができる。
本開示の実施例において、車両の懸架システム、タイヤモデル及び環境モデルが簡略化されており、1つの実施形態において、得られた車両運動力学モデルは、得られたマッピング関係及び回転比例関係、当該マッピング関係及び当該回転比例関係に基づく計算式を含む。ここで、提供される計算式は、具体的に以下の通りであり得る。
ここでは、(x,y)は車両の位置座標を表し、v及びaはそれぞれ車両の速度及び加速度であり、
は車両のヨー角であり、車体の向きを表し、
及び
はそれぞれ車両の重心から前輪車軸の中点及び後輪車軸の中点までの距離であり、
は車両前輪操舵角であり、反時計回りを負とするように限定してもよく、必要に応じて設定してもよい。殆どの車両の後輪が回転できないため、本開示の実施例の車両運動力学モデルでは、後輪の回転角を考慮しなくてもよく、データ処理量をある程度減少することができる。
実際の実車パラメータ及び較正関係を利用して車両運動力学モデルを得ることで、真の道路テスト用車により似ており、シミュレーションテストシーンがより豊富で、より全面的で、正確になる。
当該予め設定された車両運動力学モデルによりシミュレーション車両を制御するには、アクセルデータ、ブレーキデータ、シフトレンジ及びハンドル操舵角、及び参照である処理すべき測位情報と車両の固定パラメータ(
及び
)のみが必要とされ、それに基づいて変換操作及び計算処理を行うことができ、具体的には、マッピング関係及び回転比例関係に基づいて入力されたデータを変換し、更に、式に基づいて計算処理を行い、最終的に、車両の位置更新(第2の測位情報)、速度、加速度及び姿勢情報(第2のヨー角及びハンドル操舵角などを含む)を含む車両状態情報を出力することを含み、自動運転シミュレーションテストにおけるデータ処理を簡潔且つ正確に実現することができる。
任意選択的な実施形態において、自動運転シミュレーションテストシステム400は、エージェントマネージャ430を更に備え、エージェントマネージャ430は、
少なくとも1つの車両を含むエージェントが含まれた車両シミュレーションシーンをロードし、
メッセージマネージャ420からの目標車両の情報を受信し、目標車両の情報に基づいて車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得て、
メッセージマネージャ420に当該第1の感知情報を送信するために用いられる。
少なくとも1つの車両を含むエージェントが含まれた車両シミュレーションシーンをロードし、
メッセージマネージャ420からの目標車両の情報を受信し、目標車両の情報に基づいて車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得て、
メッセージマネージャ420に当該第1の感知情報を送信するために用いられる。
具体的には、エージェントマネージャ430は、車両シミュレータ410と組み合わせてシミュレーションシーンをシミュレートするために用いられ、当該シミュレーションシーンにおけるエージェントは、目標車両とインタラクション可能な要素であり、任意選択的に、当該エージェントは、非自動車、動物、歩行者、交通コーン、交通信号灯、交通標識、道路標示、車線境界線、障害物のうちの1つ又は複数を更に含む。設定されたシミュレーションテストにおいて注目される目標車両の以外に、他の車両がシーンにおいてシミュレートされた交通流車両であり得ることに留意されたい。
エージェントマネージャ430において、どのエージェントがシミュレーション車両とインタラクション行為をすることができるかを設定又は変更し、且つ、インタラクションルールを設定することができる。エージェントマネージャ430は、メッセージマネージャ420を介して当該目標車両の情報を得て、対応するインタラクションルールに従って、管理されるエージェントが目標車両に応答するとともに自身の状態を更新するように制御し、感知情報を得て、更にメッセージマネージャ420にフィードバックすることができる。エージェントマネージャ430における交通流車両に対して、予め設定された自動運転アルゴリズムを使用してシミュレーション走行を達成することができ、目標車両とインタラクションすることができる。
メッセージマネージャ420は、目標車両の位置するシミュレーションシーンにおけるエージェントの第1の感知情報を自動運転システム440に送信することができ、ここで、メッセージマネージャ420は、同様に、フォーマット変換を行うことができ、得られた第2の感知情報は、自動運転システム440でカスタマイズされたフォーマットに合致するデータであり、具体的には、エージェントマネージャにおけるエージェントの測位情報、速度などを含んでよい。例えば、目標車両がある交通コーンにぶつかった場合、交通コーンがこの状況に応答して自身の状態を変更し(ある方向へ倒れるか、又は、飛び出されて、ある位置まで移動するなど)、又は、交通流車両が目標車両の走行の影響を受けて自身の走行ルートを変更するなどが挙げられ、本開示の実施例において、これを制限しない。
本開示の実施例に係る汎用及びカスタマイズとは、データフォーマットのことであり、汎用フォーマットの汎用性が高いが、一般的な自動運転システムは自分のニーズに応じて自分のデータフォーマットを定義する。
任意選択的に、エージェントマネージャ430は更に、車両シミュレーションシーンにおけるシミュレーション車両の情報を車両シミュレーションシーンにおける他のエージェントに送信し、他のエージェントが当該シミュレーション車両の情報に基づいて自身の状態を更新し、且つ、他のエージェントの情報をシミュレーション車両に送信し、シミュレーション車両が他のエージェントの情報に基づいて自身の状態を更新するために用いられる。
一般的に、交通流を利用した車両シミュレーションは、スクリプトに基づくシーン構築に属し、主に交通流の再生であり、シミュレーションシーンとシミュレーション車両の間にインタラクションがなく、実際の状況と異なる。本開示の実施例において、エージェントマネージャにより、シミュレーション車両とシミュレーションシーンにおける他のエージェントを統括的に管理することができ、全ての物体が同様の状態更新インタフェースを使用することができ、シミュレーションシーンにおける物体のインタラクション、及びシミュレーションシーンにおける物体とシミュレーション車両自身とのインタラクションを実現することができる。
任意選択的に、自動運転シミュレーションテストシステム400において、少なくとも2つのシミュレーション車両を設定してシミュレーションテストを行うことができ、少なくとも2つのシミュレーション車両は、独立して自動運転シミュレーション処理を行うことができる。複数の車両のシミュレーションは、前述した1つの目標車両をシミュレーション車両とする場合のデータ処理方法と同じであってよく、同一の自動運転システム400においてそれぞれ当該少なくとも2つシミュレーション車両の情報を処理し、異なる制御信号を生成して同一の車両シミュレータ410に提供して処理することができる。
複数の車両のシミュレーションのシーンで、エージェントマネージャ430におけるシミュレーション車両と他のエージェントは同一の概念に属するため、統括的に管理し、複数の車両の同時シミュレーションを実現することができる。エージェントマネージャ430において、そのうちの一方のシミュレーション車両に対して、他方のシミュレーション車両は、他のエージェントとして見なすことができるため、エージェントマネージャ430は、複数のシミュレーション車両の間の情報インタラクションをもサポートし、対応する感知情報を生成してメッセージマネージャ420を介して自動運転システム400に提供することができる。
上記のステップによって、自動運転シミュレーションテストを迅速且つ正確に実現する前提で、シミュレーション車両とシミュレーションシーンとのインタラクションを実現することもでき、同時に、交通流車両の間の相互作用により、複雑なエージェント行為を形成し、より豊富なテストシーンを提供することができる。
車両シミュレータ410、エージェントマネージャ430及び自動運転システム440は、いずれも必要に応じて交換することができ、変更されたモジュールに対して、メッセージマネージャ420においてインタフェース通信部を対応して設定して変更することができ、各モジュール間で順調で正確なデータインタラクションを実現することができる。
任意選択的な実施形態において、自動運転シミュレーションテストシステム400は、電子機器に配置されたソフトウェアシステムであってよく、メッセージマネージャ420、車両シミュレータ410、エージェントマネージャ430及び自動運転システムは、ソフトウェアモジュールであってよく、当該自動運転シミュレーションテストシステム400は、端末機器に配置されてシミュレーションテストタスクを実行することができる。別の実施形態において、自動運転シミュレーションテストシステム400に含まれる車両シミュレータ410、エージェントマネージャ430、メッセージマネージャ420及び自動運転システム400は、いずれも物理装置であってもよい。
一般的に、従来の自動運転システムのデータインタフェースは、車両シミュレータに適合するように開発する必要があり、テストシステムにおいて他のタイプの車両シミュレータに交換すれば、新たな車両シミュレータに対して自動運転システムを改めて開発する必要があり、そうでなければ、適合できず使用できなくなり、開発コストが非常に高い。本開示では、テストシステムにメッセージマネージャを増設し、メッセージマネージャにより自動運転システムと車両シミュレータの間でインタラクションするデータの変換処理及び転送を行い、車両シミュレータを交換する必要がある場合、自動運転システムを改めて設計することなく、メッセージマネージャと車両シミュレータの間の通信インタフェース部を変更すればよく、自動運転システムの適合性が高められ、及び/又は、テストされる自動運転システムを交換する必要がある場合、車両シミュレータを新たな自動運転システムに適合する車両シミュレータに交換することなく、メッセージマネージャと自動運転システムの間の通信インタフェース部を変更すればよく、任意選択的に、テストシステムにエージェントマネージャが更に設けられており、前述した内容を基に、エージェントマネージャを交換する必要がある場合、自動運転システム及び車両シミュレータを改めて設計することなく、メッセージマネージャとエージェントマネージャの間の通信インタフェース部を変更すればよく、コストが削減され、自動運転シミュレーションテストシステムの汎用性が高められる。
図5を参照し、図5は、本開示の実施例により開示された電子機器の構造概略図である。図5に示すように、当該電子機器500は、プロセッサ501及びメモリ502を含み、ここで、電子機器500はバス503を更に含んでもよく、プロセッサ501及びメモリ502は、バス503を介して相互に接続することができ、バス503は、ペリフェラルコンポーネントインターコネクト(Peripheral Component Interconnect,PCI)バス又は拡張業界標準アーキテクチャ(Extended Industry Standard Architecture,EISA)バスなどであり得る。バス503は、アドレスバス、データバス、制御バスなどに分けられてよい。表しやすくするために、図5において1本の太線のみで表しているが、1本のバス又は1つのタイプのバスのみを有することを代表するわけではない。ここで、電子機器500は入出力デバイス504を更に含んでもよく、入出力デバイス504は、液晶ディスプレイのようなディスプレイを含んでよい。メモリ502は、コンピュータプログラムを記憶するために用いられ、プロセッサ501は、メモリ502に記憶されているコンピュータプログラムを呼び出して、図1の実施例において言及された一部又は全部の方法のステップを実行するために用いられる。図5に示される電子機器500を実施し、電子機器500は、異なる自動運転システムに対するシミュレーションテストに適合できるように、自動運転システムのインタフェースを設定して変更することができ、ここで繰り返して説明しない。
又は、プロセッサ501は、メモリ502に記憶されているコンピュータプログラムを呼び出して、図4に示される実施例における自動運転シミュレーションテストシステム400により実行される一部又は全部の方法のステップを実行するために用いられる。
本開示の実施例は、コンピュータ記憶媒体を更に提供し、当該コンピュータ記憶媒体は、コンピュータプログラムを記憶するために用いられ、当該コンピュータプログラムによって、コンピュータは、前述した方法の実施例に記載のいずれか1つの自動運転シミュレーション方法又は自動運転シミュレーションテストシステムにより実行される方法の一部又は全部のステップを実行する。
なお、前述した各方法の実施例については、説明を簡便にするために、一連の動作の組み合わせとして表現したが、本開示が説明された動作順序に限定されるものではなく、本開示により、一部のステップが他の順序で又は同時に行われてもよいことは、当業者に理解されたい。また、本明細書に説明された実施例がいずれも好ましい実施例であり、係る動作及びモジュールが必ずしも本開示に必要なものではないことは、当業者に理解されたい。
前述した実施例では、各実施例に対する説明は、いずれも重点を置き、ある実施例では詳述されない部分は、他の実施例の関連説明を参照することができる。
本開示に係るいくつかの実施例では、開示される装置は他の形態により実現することができることを理解されたい。例えば、上記した装置の実施例は、例示的なものに過ぎず、例えば、上記ユニットの分割は、論理上の機能の分割に過ぎず、実際に実現する場合に他の分割方式も可能であり、例えば、複数のユニット又はコンポーネントは、組み合わせられてもよく、別のシステムに統合されてもよく、或いは、いくつかの特徴を無視してもよく、実行しなくてもよい。また、示されるか又は議論される相互結合、直接結合又は通信接続は、いくつかのインタフェースを使用して実現でき、装置又はユニット間の間接結合又は通信接続は、電気の形態であってもよく、他の形態であってもよい。
別個の部品として説明したユニット(モジュール)は、物理的に別個であってもよく、又はそうでなくてもよく、ユニットとして示される部品は、物理的ユニットであってもよく、又はそうでなくてもよく、即ち、1つの箇所に位置してもよく、又は複数のネットワークユニットに配置されてもよい。実際の必要に応じて、それらのうちの一部又は全部のユニットを選択して本実施例の技術手段の目的を達成することができる。
また、本開示の各実施例において、各機能ユニットが1つの処理ユニットに統合されてもよく、各ユニットが別個に物理的に存在してもよく、2つ以上のユニットが1つのユニットに統合されてもよい。当該統合されたユニットは、ハードウェアの形態で実現されてもよく、ソフトウェア機能ユニットの形態で実現されてもよい。
上記統合されたユニットは、ソフトウェア機能ユニットの形態で実現され、且つ独立した製品として販売又は使用される場合、1つのコンピュータ読み取り可能なメモリに記憶されてもよい。このような理解に基づいて、本開示の技術的解決手段は、本質的に、又は、従来技術に寄与する部分又はこの技術的解決手段の全て又は一部は、ソフトウェア製品の形態で具現化されてよく、このコンピュータソフトウェア製品は、メモリに記憶されており、コンピュータ装置(パーソナルコンピュータ、サーバ、又はネットワーク装置などであってよい)に本開示の各実施例に記載の方法の全部又は一部のステップを実行させるためのいくつかの命令を含む。前述したメモリは、USBフラッシュメモリ、読み出し専用メモリ(Read-Only Memory,ROM)、ランダムアクセスメモリ(Random Access Memory,RAM)、リムーバブルハードディスク、磁気ディスク又は光ディスクなどのプログラムコードを記憶可能な様々な媒体を含む。
前述した実施例の各方法における全部又は一部のステップがプログラムにより関連ハードウェアを命令することによって実現することができ、当該プログラムがコンピュータ読み取り可能なメモリに記憶することができ、メモリがフラッシュディスク、読み取り専用メモリ、ランダムアクセスメモリ、磁気ディスク又は光ディスクなどを含み得ることは、当業者に理解されるところである。
以上、本開示の実施例を詳しく説明し、本明細書において、具体的な例を利用して本開示の原理及び実施形態について記述したが、以上の実施例の説明は、本開示の方法及びその肝心な思想を理解するためのものに過ぎない。同時に、当業者であれば、本開示の思想に基づき、発明を実施するための形態及び適用範囲のいずれに対しても変更する可能性があり、以上を纏めると、本明細書の内容は、本開示に対する制限として理解してはいけない。
本開示は、2020年2月24日に中国特許局に提出された、出願番号が202010113305.9で発明の名称が「自動運転シミュレーション方法及び装置、電子機器並びに記憶媒体」の優先権を主張し、その内容の全てが援用により本開示に組み込まれる。
本開示は、シミュレータによるシミュレーションの技術分野に関し、具体的には、自動運転シミュレーション方法及び装置、電子機器並びに記憶媒体に関する。
自動運転システムは、研究開発段階において繰り返してテストする必要があるが、自動運転システムに対する路上テストの周期が長く、テスト効率が低いため、相対的に真の自動運転シミュレーションテスト装置においてテストすれば、豊富なシーンでの自動運転システムのパフォーマンスを十分にテストすることができるだけでなく、問題を適時にフィードバックし、システムのイテレーションを早めることもできる。
現在、市場では、自動運転システムのテストに用いられる車両シミュレータがたくさんあるが、具体的な自動運転プロジェクトについて、セットとなって使用可能な車両シミュレータは、通常、限られており、使用時に車両シミュレータが提供できるデータ又はデータインタフェースは、特定の自動運転システムのデータに対するニーズを満たすことができないため、自動運転システムは車両シミュレータによるテストによく適合することができない。
本開示の実施例は、自動運転シミュレーション方法及び装置、電子機器並びに記憶媒体を提供する。
本開示の実施例の第1の態様は、自動運転シミュレーション方法を提供し、前記自動運転シミュレーション方法は、
メッセージマネージャが車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するステップと、
前記メッセージマネージャが前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに前記第2のシャーシ情報及び前記第2の測位情報を送信するステップと、
前記メッセージマネージャが前記自動運転システムから送信された第1の制御信号を受信し、前記第1の制御信号にフォーマット変換を行い、前記車両シミュレータにより前記車両状態情報を更新するための第2の制御信号を得るステップと、
前記メッセージマネージャが前記車両シミュレータに前記第2の制御信号を送信するステップと、を含む。
メッセージマネージャが車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するステップと、
前記メッセージマネージャが前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに前記第2のシャーシ情報及び前記第2の測位情報を送信するステップと、
前記メッセージマネージャが前記自動運転システムから送信された第1の制御信号を受信し、前記第1の制御信号にフォーマット変換を行い、前記車両シミュレータにより前記車両状態情報を更新するための第2の制御信号を得るステップと、
前記メッセージマネージャが前記車両シミュレータに前記第2の制御信号を送信するステップと、を含む。
任意選択的な実施形態において、前記メッセージマネージャが前記車両シミュレータに前記第2の制御信号を送信した後、前記方法は、
前記メッセージマネージャが前記車両シミュレータから送信された第2の車両状態情報を受信するステップを更に含み、前記第2の車両状態情報は、前記車両シミュレータにより前記第2の制御信号に基づいて前記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
前記メッセージマネージャが前記車両シミュレータから送信された第2の車両状態情報を受信するステップを更に含み、前記第2の車両状態情報は、前記車両シミュレータにより前記第2の制御信号に基づいて前記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
任意選択的な実施形態において、前記第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ又はハンドル操舵角の少なくとも1つを含み、
及び/又は、
前記第1のシャーシ情報は、速度、加速度又は姿勢情報の少なくとも1つを含み、
前記姿勢情報は、ヨー角又はハンドル操舵角の少なくとも1つを含む。
及び/又は、
前記第1のシャーシ情報は、速度、加速度又は姿勢情報の少なくとも1つを含み、
前記姿勢情報は、ヨー角又はハンドル操舵角の少なくとも1つを含む。
任意選択的な実施形態において、前記方法は、
前記メッセージマネージャが前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、目標車両の情報を得て、エージェントマネージャに前記目標車両の情報を送信し、前記目標車両は前記車両シミュレータにおけるシミュレーション車両であり、前記目標車両の情報は、前記エージェントマネージャが車両シミュレーションシーンをロードした場合、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられるステップと、
前記メッセージマネージャが前記第1の感知情報にフォーマット変換を行い、第2の感知情報を得て、前記自動運転システムに前記第2の感知情報を送信して、前記自動運転システムが前記第2の感知情報及び前記第2の車両状態情報に基づいて意思決定と計画を行い、前記第1の制御信号を得るステップと、を更に含む。
前記メッセージマネージャが前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、目標車両の情報を得て、エージェントマネージャに前記目標車両の情報を送信し、前記目標車両は前記車両シミュレータにおけるシミュレーション車両であり、前記目標車両の情報は、前記エージェントマネージャが車両シミュレーションシーンをロードした場合、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられるステップと、
前記メッセージマネージャが前記第1の感知情報にフォーマット変換を行い、第2の感知情報を得て、前記自動運転システムに前記第2の感知情報を送信して、前記自動運転システムが前記第2の感知情報及び前記第2の車両状態情報に基づいて意思決定と計画を行い、前記第1の制御信号を得るステップと、を更に含む。
本開示の実施例の第2の態様は、メッセージマネージャを提供し、前記メッセージマネージャは、
車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するための伝送モジュールと、
前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得るための変換モジュールと、を含み、前記伝送モジュールは更に、自動運転システムに前記第2のシャーシ情報及び前記第2の測位情報を送信するために用いられ、
前記伝送モジュールは更に、前記自動運転システムから送信された第1の制御信号を受信するために用いられ、前記変換モジュールは更に、前記第1の制御信号にフォーマット変換を行い、前記車両シミュレータにより前記車両状態情報を更新するための第2の制御信号を得るために用いられ、
前記伝送モジュールは更に、前記車両シミュレータに前記第2の制御信号を送信するために用いられる。
車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するための伝送モジュールと、
前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得るための変換モジュールと、を含み、前記伝送モジュールは更に、自動運転システムに前記第2のシャーシ情報及び前記第2の測位情報を送信するために用いられ、
前記伝送モジュールは更に、前記自動運転システムから送信された第1の制御信号を受信するために用いられ、前記変換モジュールは更に、前記第1の制御信号にフォーマット変換を行い、前記車両シミュレータにより前記車両状態情報を更新するための第2の制御信号を得るために用いられ、
前記伝送モジュールは更に、前記車両シミュレータに前記第2の制御信号を送信するために用いられる。
任意選択的に、前記伝送モジュールは更に、前記車両シミュレータに前記第2の制御信号を送信した後、前記車両シミュレータから送信された第2の車両状態情報を受信するために用いられ、前記第2の車両状態情報は、前記車両シミュレータにより前記第2の制御信号に基づいて前記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
任意選択的に、前記第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ又はハンドル操舵角の少なくとも1つを含み、
及び/又は、
前記第1のシャーシ情報は、速度、加速度又は姿勢情報の少なくとも1つを含み、前記姿勢情報は、ヨー角又はハンドル操舵角の少なくとも1つを含む。
及び/又は、
前記第1のシャーシ情報は、速度、加速度又は姿勢情報の少なくとも1つを含み、前記姿勢情報は、ヨー角又はハンドル操舵角の少なくとも1つを含む。
任意選択的に、前記変換モジュールは更に、前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、目標車両の情報を得るために用いられ、前記伝送モジュールは更に、エージェントマネージャに前記目標車両の情報を送信するために用いられ、前記目標車両の情報は、前記エージェントマネージャが車両シミュレーションシーンをロードした場合、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられ、
前記変換モジュールは更に、前記第1の感知情報にフォーマット変換を行い、第2の感知情報を得るために用いられ、前記伝送モジュールは更に、前記自動運転システムに前記第2の感知情報を送信して、前記自動運転システムが前記第2の感知情報及び前記第2の車両状態情報に基づいて意思決定と計画を行い、前記第1の制御信号を得るために用いられる。
前記変換モジュールは更に、前記第1の感知情報にフォーマット変換を行い、第2の感知情報を得るために用いられ、前記伝送モジュールは更に、前記自動運転システムに前記第2の感知情報を送信して、前記自動運転システムが前記第2の感知情報及び前記第2の車両状態情報に基づいて意思決定と計画を行い、前記第1の制御信号を得るために用いられる。
本開示の実施例の第3の態様は、自動運転シミュレーションテストシステムを提供し、前記自動運転シミュレーションテストシステムは、
自動運転システムと、車両シミュレータと、上記第2の態様に記載のメッセージマネージャと、を備える。
自動運転システムと、車両シミュレータと、上記第2の態様に記載のメッセージマネージャと、を備える。
任意選択的に、前記自動運転システムは、測位モジュール、地図モジュール、意思決定と計画モジュール及びコントローラを含み、
前記地図モジュールは、地図をロードし、且つ地図に少なくとも1つの目標車両を表示するために用いられ、
前記測位モジュールは、前記メッセージマネージャからの第2のシャーシ情報及び第2の位置情報を取得し、且つ前記第2のシャーシ情報及び前記第2の位置情報に基づいて前記地図における前記目標車両の状態を確定して更新するために用いられ、前記目標車両は前記車両シミュレータにおけるシミュレーション車両であり、
前記意思決定と計画モジュールは、前記目標車両の状態及びメッセージマネージャからの第2の感知情報に基づき、前記地図における前記目標車両の運転意思決定結果を確定するために用いられ、前記コントローラは、前記目標車両の前記運転意思決定結果に基づき、第1の制御信号を得て、前記メッセージマネージャに前記第1の制御信号を送信するために用いられる。
前記地図モジュールは、地図をロードし、且つ地図に少なくとも1つの目標車両を表示するために用いられ、
前記測位モジュールは、前記メッセージマネージャからの第2のシャーシ情報及び第2の位置情報を取得し、且つ前記第2のシャーシ情報及び前記第2の位置情報に基づいて前記地図における前記目標車両の状態を確定して更新するために用いられ、前記目標車両は前記車両シミュレータにおけるシミュレーション車両であり、
前記意思決定と計画モジュールは、前記目標車両の状態及びメッセージマネージャからの第2の感知情報に基づき、前記地図における前記目標車両の運転意思決定結果を確定するために用いられ、前記コントローラは、前記目標車両の前記運転意思決定結果に基づき、第1の制御信号を得て、前記メッセージマネージャに前記第1の制御信号を送信するために用いられる。
任意選択的に、前記車両シミュレータには車両運動力学モデルが記憶されており、前記車両運動力学モデルは、実際の車両センサにより収集した車両走行中のデータに基づいて予め確立され、
前記車両シミュレータは、
前記メッセージマネージャから送信された第2の制御信号を取得し、
前記車両運動力学モデル及び前記第2の制御信号に基づいて車両状態情報を更新し、第3のシャーシ情報及び第3の測位情報を含む第2の車両状態情報を得て、
前記メッセージマネージャに前記第2の車両状態情報を送信するために用いられる。
前記車両シミュレータは、
前記メッセージマネージャから送信された第2の制御信号を取得し、
前記車両運動力学モデル及び前記第2の制御信号に基づいて車両状態情報を更新し、第3のシャーシ情報及び第3の測位情報を含む第2の車両状態情報を得て、
前記メッセージマネージャに前記第2の車両状態情報を送信するために用いられる。
任意選択的に、前記第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ及びハンドル操舵角を含み、
前記車両シミュレータは、具体的に、予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係に基づき、前記第2の制御信号におけるアクセルデータ、ブレーキデータ及びシフトレンジに対応する第1の速度及び第1の加速度を得て、
予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係に基づき、前記第2の制御信号におけるハンドル操舵角を、対応する第1の前輪操舵角に変換し、
前記目標車両の第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離を取得し、
前記測位情報、前記第1の速度、前記第1の加速度、前記第1の前輪操舵角、前記第1のヨー角、前記車両前輪の車軸の中心から車両の重心までの距離及び前記車両後輪の車軸の中心から車両の重心までの距離に基づき、前記第2の車両状態情報を得るために用いられる。
前記車両シミュレータは、具体的に、予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係に基づき、前記第2の制御信号におけるアクセルデータ、ブレーキデータ及びシフトレンジに対応する第1の速度及び第1の加速度を得て、
予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係に基づき、前記第2の制御信号におけるハンドル操舵角を、対応する第1の前輪操舵角に変換し、
前記目標車両の第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離を取得し、
前記測位情報、前記第1の速度、前記第1の加速度、前記第1の前輪操舵角、前記第1のヨー角、前記車両前輪の車軸の中心から車両の重心までの距離及び前記車両後輪の車軸の中心から車両の重心までの距離に基づき、前記第2の車両状態情報を得るために用いられる。
任意選択的に、車両運動力学モデル確立モジュールを更に備え、前記車両運動力学モデル確立モジュールは、
センサにより収集した実車が道路で走行する際の、対応関係を有するアクセルデータ、ブレーキデータと速度、加速度とを複数組含む第1のデータを取得し、
前記第1のデータに基づき、車両のアクセルデータ、ブレーキデータ、シフトレンジと速度、加速度とのマッピング関係を構築し、
センサにより収集した実車が道路で走行する際の、対応関係を有するハンドル操舵角と車両前輪操舵角とを複数組含む第2のデータを取得し、
前記第2のデータに基づき、車両のハンドル操舵角と車両前輪操舵角との回転比例関係を構築し、
前記マッピング関係及び前記回転比例関係に基づき、車両運動力学モデルを得るために用いられる。
センサにより収集した実車が道路で走行する際の、対応関係を有するアクセルデータ、ブレーキデータと速度、加速度とを複数組含む第1のデータを取得し、
前記第1のデータに基づき、車両のアクセルデータ、ブレーキデータ、シフトレンジと速度、加速度とのマッピング関係を構築し、
センサにより収集した実車が道路で走行する際の、対応関係を有するハンドル操舵角と車両前輪操舵角とを複数組含む第2のデータを取得し、
前記第2のデータに基づき、車両のハンドル操舵角と車両前輪操舵角との回転比例関係を構築し、
前記マッピング関係及び前記回転比例関係に基づき、車両運動力学モデルを得るために用いられる。
任意選択的に、
エージェントマネージャを更に備え、前記エージェントマネージャは、
少なくとも1つの車両を含むエージェントが含まれた車両シミュレーションシーンをロードし、
メッセージマネージャからの目標車両の情報を受信し、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおける前記エージェントの状態を更新し、第1の感知情報を得て、
前記メッセージマネージャに前記第1の感知情報を送信するために用いられる。
エージェントマネージャを更に備え、前記エージェントマネージャは、
少なくとも1つの車両を含むエージェントが含まれた車両シミュレーションシーンをロードし、
メッセージマネージャからの目標車両の情報を受信し、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおける前記エージェントの状態を更新し、第1の感知情報を得て、
前記メッセージマネージャに前記第1の感知情報を送信するために用いられる。
任意選択的に、前記エージェントマネージャは更に、
前記車両シミュレーションシーンにおけるシミュレーション車両の情報を前記車両シミュレーションシーンにおける他のエージェントに送信して、前記他のエージェントが前記シミュレーション車両の情報に基づいて自身の状態を更新し、前記他のエージェントの情報を前記シミュレーション車両に送信して、前記シミュレーション車両が前記他のエージェントの情報に基づいて自身の状態を更新するために用いられる。
前記車両シミュレーションシーンにおけるシミュレーション車両の情報を前記車両シミュレーションシーンにおける他のエージェントに送信して、前記他のエージェントが前記シミュレーション車両の情報に基づいて自身の状態を更新し、前記他のエージェントの情報を前記シミュレーション車両に送信して、前記シミュレーション車両が前記他のエージェントの情報に基づいて自身の状態を更新するために用いられる。
任意選択的に、前記エージェントは、非自動車、動物、歩行者、交通コーン、交通信号灯、交通標識、道路標示、車線境界線又は障害物の少なくとも1つを更に含む。
本開示の実施例の第4の態様は、電子機器を提供し、前記電子機器は、プロセッサ及びメモリを含み、前記メモリは、前記プロセッサにより実行されるように構成されるコンピュータプログラムを記憶するために用いられ、前記プロセッサは、本開示の実施例の第1の態様のいずれか1つの方法に記載の一部又は全部のステップを実行するために用いられる。
本開示の実施例の第5の態様は、別の電子機器を提供し、前記電子機器は、プロセッサ及びメモリを含み、前記メモリは、前記プロセッサにより実行されるように構成されるコンピュータプログラムを記憶するために用いられ、前記プロセッサは、本開示の実施例の第2の態様によるメッセージマネージャが動作するように制御し、又は、本開示の実施例の第3の態様による自動運転シミュレーションテストシステムが動作するように制御するために用いられる。
本開示の実施例の第6の態様は、コンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータ読み取り可能な記憶媒体は、コンピュータプログラムを記憶するために用いられ、前記コンピュータプログラムによって、コンピュータは、本開示の実施例の第1の態様のいずれか1つの方法に記載の一部又は全部のステップを実行し、又は、前記プロセッサは、本開示の実施例の第2の態様に記載のメッセージマネージャが動作するように制御し、又は、前記プロセッサは、本開示の実施例の第3の態様に記載のシステムが動作するように制御する。
本開示の実施例の第7の態様は、命令を含むコンピュータプログラムを提供し、前記コンピュータプログラムがコンピュータで実行される際に、コンピュータに、上記第1の態様及びその任意の1つの可能な実現形態の方法を実行させる。
本開示の実施例において、メッセージマネージャが車両シミュレータから送信された第1の車両状態情報を受信し、且つ第1の車両状態情報に含まれた第1のシャーシ情報及び第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに第2のシャーシ情報及び第2の測位情報を送信し、メッセージマネージャが更に自動運転システムから送信された第1の制御信号を受信し、第1の制御信号にフォーマット変換を行い、第2の制御信号を得て、メッセージマネージャが車両シミュレータに第2の制御信号を送信することで、車両シミュレータが第2の制御信号に基づいて車両状態情報を更新することができ、データフォーマット変換及び転送の機能が実現され、メッセージマネージャにより変換された後のデータフォーマットが転送先での受信と処理により有利であり、これにより、自動運転シミュレーションテストを迅速且つ正確に実行することができ、データ処理の安定性が高められる。例えば、メッセージマネージャは、テストすべき自動運転システムのカスタマイズされた制御信号を、車両シミュレータにより識別・処理可能な汎用の制御信号に変換することができ、車両シミュレータで自動運転シミュレーションタスクをより正確に実行しやすくなる。制御信号が主に車両のシャーシ情報及び測位情報といった簡単なパラメータを含み、解析しやすいため、メッセージマネージャは、識別及び変換を迅速に行うことができる。また、車両シミュレータと自動運転システムを合わせて開発する必要がなくなり、即ち、車両シミュレータのソースコード又は自動運転システムのソースコードを修正することなく、中間のメッセージマネージャを交換するだけで、データ交換を行うとともに、自動運転シミュレーションテストを正確に達成することができ、自動運転システムの適合性、及び自動運転シミュレーションテストシステムの汎用性が高められる。
ここの図面は、明細書に組み込まれて本明細書の一部を構成し、これらの図面は、本開示に合致する実施例を示し、明細書と共に本開示の技術的解決手段を説明するために用いられる。
本開示の実施例により開示された自動運転シミュレーション方法の流れ概略図である。
本開示の実施例により開示されたメッセージマネージャの構造概略図である。
本開示の実施例により開示された自動運転シミュレーションテストシステムのアーキテクチャ概略図である。
本開示の実施例により開示された別の自動運転シミュレーションテストシステムの構造概略図である。
本開示の実施例により開示された電子機器の構造概略図である。
以下、本開示の実施例における図面を参照しながら、本開示の実施例における技術的解決手段を明確且つ完全に説明する。明らかに、説明される実施例は、本開示の実施例の一部に過ぎず、全てではない。本開示における実施例に基づいて、当業者が創造的な労力を要さずに想到し得る他の実施例は、全て本開示の保護範囲に属する。
本開示における「及び/又は」という用語は、関連対象の関連関係を説明するためのものに過ぎず、3つの関係が存在し得ることを表し、例えば、A及び/又はBは、Aのみが存在し、A及びBが同時に存在し、Bのみが存在するという3つの場合を表すことができる。また、本明細書における「少なくとも1つ」という用語は、複数のうちの任意の1つ又は複数のうちの少なくとも2つの任意の組み合わせを表し、例えば、A、B、Cのうちの少なくとも1つを含むことは、A、B及びCからなる集合から選択された任意の1つ又は複数の要素を含むことを表すことができる。本開示の明細書と特許請求の範囲と図面における「第1」、「第2」などの用語は、異なる対象を区別するためのものであり、特定の順序を説明するためのものではない。また、「含む」と「備える」という用語及びそれらのいかなる変形は、非排他的な包含をカバーすることを意図する。例えば、一連のステップ又はユニットを含むプロセス、方法、システム、製品又は機器は、示されたステップ又はユニットに限定されるわけではなく、任意選択的に、示されていないステップ又はユニットをさらに含むか、又は、任意選択的に、これらのプロセス、方法、製品又は機器に固有の他のステップ又はユニットをさらに含む。
本明細書において「実施例」に言及する場合、実施例を参照して説明した特定の特徴、構造又は特性が本開示の少なくとも1つの実施例に含まれてよいことを意味する。明細書における各箇所に出現する当該フレーズは必ずしも同じ実施例を意味するわけではなく、他の実施例と排他的な独立した実施例又は代替の実施例でもない。当業者が明確且つ暗黙的に理解するように、本明細書に説明される実施例は、他の実施例と組み合わせることができる。
以下、本開示の実施例を詳しく説明する。
図1を参照し、図1は、本開示の実施例により開示された自動運転シミュレーション方法の流れ概略図であり、図1に示すように、この自動運転シミュレーション方法は、メッセージマネージャにより実行されてよく、具体的に以下のステップを含むことができる。
101では、メッセージマネージャが車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信する。
本開示の実施例に係る自動運転システム(Auto Driving System)は、自動運転制御システムとも呼ばれ、自動車又はロボットが無人運転制御の場合に自動的に走行するように制御するために用いられる。
車両シミュレータにより、自動運転システムの車両シミュレーションを実現し、自動運転システムの性能をテストすることができる。本開示の実施例におけるメッセージマネージャは、自動運転システムと車両シミュレータの間のデータ変換及び転送を実現することができる。
上記のメッセージマネージャはハードウェアデバイスであってもよく、この自動運転シミュレーション方法は、メッセージマネージャにおけるプロセッサがメモリに記憶されているコンピュータ読み取り可能な命令を呼び出すように実現することができる。1つの実施形態において、当該メッセージマネージャの製品の形態は、ソフトウェア、又はソフトウェアとハードウェアを一体的にした電子機器などである可能性もある。例えば、ソフトウェア側のプラットフォーム開発により、ソフトウェア側でソフトウェア形態のメッセージマネージャを得ることができ、又は、開発・設計されたソフトウェアプログラムを電子機器に配置することにより、図1の実施例におけるメッセージマネージャが実行可能な方法を実行する。
本開示の実施例において、メッセージマネージャを中間局として設けることで、データ処理及び転送を行うことができ、車両シミュレータ及び自動運転システムのデータやり取りの橋として、普通の車両シミュレータにより提供されたデータ又はデータインタフェースが特定の自動運転システムプロジェクトのデータに対するニーズを満たすことができず、両者がデータを交換できなくなるという問題を解決することができる。
具体的には、メッセージマネージャは、車両シミュレータから送信された第1の車両状態情報を受信することができ、当該第1の車両状態情報は第1のシャーシ情報及び第1の測位情報を含む。
ここでは、当該第1のシャーシ情報は、速度、加速度又は姿勢情報の少なくとも1つを含んでよく、姿勢情報は、ヨー角又はハンドル操舵角の少なくとも1つを含む。当該第1の測位情報は目標車両の測位情報であり、具体的には座標情報又は経緯度情報などであり得る。
目標車両が今回の自動運転システム及び車両シミュレータのシミュレーション対象であることを例とし、車両シミュレータは、自動運転システムから送信された、メッセージマネージャにより変換、転送された制御信号に基づき、目標車両に車両シミュレーション処理を行い、目標車両の車両状態情報を得ることができ、ここでは、自動運転システムから出力された制御信号は、目標車両の処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ又はハンドル操舵角の少なくとも1つを含んでよく、これらのデータは、自動運転システムの自動運転アルゴリズムによって得られ、且つ周期的に更新されることができる。
車両シミュレータから送信された第1の車両状態情報を受信した後、ステップ102を実行することができる。
任意選択的な実施形態において、自動運転シミュレーションタスクに対して、エージェントマネージャを設けてもよく、当該方法は、
上記メッセージマネージャが上記第1のシャーシ情報及び上記第1の測位情報にフォーマット変換を行い、目標車両の情報を得て、エージェントマネージャに目標車両の情報を送信し、当該目標車両は上記車両シミュレータにおけるシミュレーション車両であり、当該目標車両の情報は、エージェントマネージャが車両シミュレーションシーンをロードした場合、目標車両の情報に基づいて車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられるステップと、
当該メッセージマネージャが当該第1の感知情報にフォーマット変換を行い、第2の感知情報を得て、自動運転システムに当該第2の感知情報を送信して、当該自動運転システムが当該第2の感知情報及び第2の車両状態情報に基づいて意思決定と計画を行い、第1の制御信号を得るステップと、を更に含む。
上記メッセージマネージャが上記第1のシャーシ情報及び上記第1の測位情報にフォーマット変換を行い、目標車両の情報を得て、エージェントマネージャに目標車両の情報を送信し、当該目標車両は上記車両シミュレータにおけるシミュレーション車両であり、当該目標車両の情報は、エージェントマネージャが車両シミュレーションシーンをロードした場合、目標車両の情報に基づいて車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられるステップと、
当該メッセージマネージャが当該第1の感知情報にフォーマット変換を行い、第2の感知情報を得て、自動運転システムに当該第2の感知情報を送信して、当該自動運転システムが当該第2の感知情報及び第2の車両状態情報に基づいて意思決定と計画を行い、第1の制御信号を得るステップと、を更に含む。
具体的には、エージェントマネージャは、車両シミュレーションシーンをロードすることができ、当該車両シミュレーションシーンにはエージェントが含まれ、当該エージェントは少なくとも1つの車両を含み得る。任意選択的に、当該エージェントは、非自動車、動物、歩行者、交通コーン、交通信号灯、交通標識、道路標示、車線境界線又は障害物の少なくとも1つを更に含むが、ここで制限しない。
上記目標車両は上記車両シミュレータにおけるシミュレーション車両であり、メッセージマネージャは更に、車両シミュレータから送信された上記第1のシャーシ情報及び上記第1の測位情報を上記目標車両の情報に変換し、エージェントマネージャに当該目標車両の情報を送信することができ、エージェントマネージャが車両シミュレーションシーンをロードした場合、当該目標車両の情報に基づいて車両シミュレーションシーンにおけるエージェントの状態を更新し、上記第1の感知情報を得ることができる。エージェントマネージャは、車両シミュレータから送信された、メッセージマネージャにより変換されて転送された目標車両の情報に基づき、車両シミュレーションシーンにおけるエージェントを制御することができると理解してよく、具体的には、車両シミュレーションシーンにおける目標車両の情報を当該車両シミュレーションシーンにおける他のエージェントに送信し、他のエージェントが当該シミュレーション車両の情報に基づいて自身の状態を更新することであってよい。
当該メッセージマネージャは、当該第1の感知情報を第2の感知情報に変換した後、上記自動運転システムに第2の感知情報を送信することができる。自動運転システムは、第2の感知情報及び得られた前記第2の車両状態情報に基づいて意思決定と計画を統合的に行うことで、目標車両の走行時に周辺のエージェントの状態を考慮するように制御し、上記第1の制御信号を得ることができる。
102では、当該メッセージマネージャが当該第1のシャーシ情報及び当該第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに当該第2のシャーシ情報及び当該第2の測位情報を送信する。
メッセージマネージャは、車両シミュレータと自動運転システムの間の情報フォーマット変換を実現することができ、具体的には、メッセージマネージャにおいて、車両シミュレータと自動運転システムの間における異なるメッセージタイプのデータのフォーマットマッピング関係、及びデータインタフェースの間における異なるメッセージタイプのデータの転送マッピング関係を予め設定することができ、そのうちの一方から送信されたデータを受信した場合、まず、データを識別し、当該データのメッセージタイプを確定することができ、例えば、第1のシャーシ情報であり、シャーシ情報に属する場合、車両シミュレータと自動運転システムの間におけるシャーシ情報のフォーマットマッピング関係に基づき、当該第1のシャーシ情報に対応する変換フォーマットを確定し、フォーマット変換を実行して対応する第2のシャーシ情報を得ることができ、また、データインタフェースの間におけるシャーシ情報の転送マッピング関係に基づき、当該第1のシャーシ情報に対応する転送先が自動運転システムのデータインタフェースであると確定し、第2のシャーシ情報を得た後に当該第2のシャーシ情報を自動運転システムに送信することができる。
同様に、メッセージマネージャは、当該第1の測位情報にフォーマット変換を行い、第2の測位情報を得て自動運転システムに送信することができる。
103では、当該メッセージマネージャが当該自動運転システムから送信された第1の制御信号を受信し、当該第1の制御信号にフォーマット変換を行い、当該車両シミュレータにより当該車両状態情報を更新するための第2の制御信号を得る。
前述したステップ102において説明された方法と類似し、メッセージマネージャは、自動運転システムから送信された第1の制御信号を受信することができ、当該第1の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ又はハンドル操舵角の少なくとも1つを含み得る。
同様に、目標車両が今回の自動運転システム及び車両シミュレータによりシミュレートされる車両であることを例とし、自動運転システムは、車両シミュレータから送信された、メッセージマネージャにより変換されて転送された目標車両の車両状態情報に基づいて処理し、当該目標車両の制御信号を得て、メッセージマネージャにより変換してから、車両シミュレータに転送することができる。具体的には、メッセージマネージャは、自動運転システムから送信された第1の制御信号を受信した場合、同様に、当該第1の制御信号にフォーマット変換を行い、第2の制御信号を得て、ステップ104を実行することができる。
104では、当該メッセージマネージャが当該車両シミュレータに当該第2の制御信号を送信する。
メッセージマネージャは、自動運転システムの第1の制御信号のデータフォーマットを車両シミュレータによる処理に適するデータフォーマットに変換して第2の制御信号を得た後、第2の制御信号を車両シミュレータに送信して、車両シミュレータが当該第2の制御信号に基づいて目標車両の車両状態情報を更新することができる。
1つの実施形態において、ステップ104の後、当該方法は、
メッセージマネージャが車両シミュレータから送信された第2の車両状態情報を受信するステップを更に含み、当該第2の車両状態情報は、当該車両シミュレータにより上記第2の制御信号に基づいて上記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
メッセージマネージャが車両シミュレータから送信された第2の車両状態情報を受信するステップを更に含み、当該第2の車両状態情報は、当該車両シミュレータにより上記第2の制御信号に基づいて上記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
具体的には、車両シミュレータは、第2の制御信号を受信した後、第2の制御信号に基づいて車両状態情報を更新し、第3のシャーシ情報及び第3の測位情報を含む第2の車両状態情報を得て、メッセージマネージャに送信することができ、メッセージマネージャは更に、当該第2の車両状態情報を処理し、具体的にステップ101の通りであり、ここで繰り返して説明しない。前記ステップは、自動運転シミュレーションタスクが終了するまで、周期的に実行可能であることが分かる。
異なる自動運転システムに対するシミュレーションテストに適合できるように、メッセージマネージャにおいて自動運転システムのインタフェースを設定して変更することができる。同時に、車両シミュレータのインタフェースを設定して変更することもでき、それにより異なる車両シミュレータを交換して使用することができる。一般的に、従来の自動運転システムのデータインタフェースは、車両シミュレータに適合するように開発する必要があり、テストシステムにおいて他のタイプの車両シミュレータに交換すれば、新たな車両シミュレータに対して自動運転システムを改めて開発する必要があり、そうでなければ、適合できず使用できなくなり、開発コストが非常に高い。本開示では、テストシステムにメッセージマネージャを増設し、メッセージマネージャにより自動運転システムと車両シミュレータの間でやり取りをするデータの変換処理及び転送を行い、車両シミュレータを交換する必要がある場合、自動運転システムを改めて設計することなく、メッセージマネージャと車両シミュレータの間の通信インタフェース部を変更すればよく、自動運転システムの適合性が高められ、及び/又は、テストされる自動運転システムを交換する必要がある場合、車両シミュレータを新たな自動運転システムに適合する車両シミュレータに交換することなく、メッセージマネージャと自動運転システムの間の通信インタフェース部を変更すればよく、任意選択的に、テストシステムにエージェントマネージャが更に設けられており、前述した内容を基に、エージェントマネージャを交換する必要がある場合、自動運転システム及び車両シミュレータを改めて設計することなく、メッセージマネージャとエージェントマネージャの間の通信インタフェース部を変更すればよく、コストが削減され、自動運転シミュレーションテスト装置の汎用性が高められる。
本開示の実施例において、メッセージマネージャが車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信し、更に当該第1のシャーシ情報及び当該第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに当該第2のシャーシ情報及び当該第2の測位情報を送信し、メッセージマネージャが更に自動運転システムから送信された第1の制御信号を受信し、当該第1の制御信号にフォーマット変換を行い、当該車両シミュレータにより当該車両状態情報を更新するための第2の制御信号を得て、当該メッセージマネージャが当該車両シミュレータに当該第2の制御信号を送信することで、データフォーマット変換及び転送の機能を実現することができ、メッセージマネージャにより変換された後のデータフォーマットが転送先での受信と処理により有利であり、自動運転シミュレーションテストを迅速且つ正確に実行することができ、データ処理の安定性が高められる。例えば、メッセージマネージャは、テストされる自動運転システムのカスタマイズされた制御信号を、車両シミュレータにより識別・処理可能な汎用の制御信号に変換することができ、車両シミュレータで自動運転シミュレーションタスクをより正確に実行しやすくなる。制御信号が主に車両のシャーシ情報及び測位情報といった簡単なパラメータを含み、解析しやすいため、メッセージマネージャは、識別及び変換を迅速に行うことができる。同時に、車両シミュレータと自動運転システムを合わせて開発する必要がなく、即ち、車両シミュレータのソースコード又は自動運転システムのソースコードを修正することなく、中間のメッセージマネージャを交換するだけで、データ交換を行うとともに、自動運転シミュレーションテストを正確に達成することができ、自動運転システムの適合性、及び自動運転シミュレーションテストシステムの汎用性が高められる。
当業者であれば、発明を実施するための形態の方法において、各ステップの記述順序は、厳しい実行順序を意味するものではなく、実施プロセスを一切限定せず、各ステップの具体的な実行順序は、その機能及び可能な内部論理に応じて確定すべきであることを理解できる。
以上、主に方法側の実行プロセスの面から本開示の実施例の技術手段を説明した。メッセージマネージャ及び/又は自動運転シミュレーションテストシステムは、前述した機能を実現するために、各機能を実行するための対応するハードウェア構造及び/又はソフトウェアモジュールを含んでいることを理解されたい。当業者であれば、本明細書に開示された実施例に記載の各例のユニット及びアルゴリズムステップと組み合わせて、本開示は、ハードウェア又はハードウェア及びコンピュータソフトウェアの組み合わせの形態で実現可能であることを意識すべきである。ある機能が一体ハードウェアで実行されるか、それともコンピュータソフトウェアによりハードウェアをドライブするように実行されるかは、技術手段の特定の応用及び設計制約条件によるものである。当業者であれば、特定の応用に対して異なる方法で説明された機能を実現してよいが、このような実現は本開示の範囲を超えると考えられるべきではない。
本開示の実施例において、前述した方法の例に基づいてメッセージマネージャに機能ユニット(モジュール)の分割を行うことができ、例えば、各機能に対応して各機能ユニットを分割してもよく、2つ又は2つ以上の機能を1つ処理ユニットに統合してもよい。当該統合されたユニットは、ハードウェアの形態で実現されてもよく、ソフトウェア機能ユニットの形態で実現されてもよい。本開示の実施例におけるユニットに対する分割は概略的なものであり、1種の論理機能の分割に過ぎず、実際に実現する時に、別の分割形態を採用してもよいことを説明しておく。
図2を参照し、図2は、本開示の実施例により提供されるメッセージマネージャの構造概略図であり、図2に示すように、メッセージマネージャ200は、
車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するための伝送モジュール210と、
当該第1のシャーシ情報及び当該第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得るための変換モジュール220と、を含み、当該伝送モジュール210は更に、自動運転システムに当該第2のシャーシ情報及び当該第2の測位情報を送信するために用いられ、
当該伝送モジュール210は更に、当該自動運転システムから送信された第1の制御信号を受信するために用いられ、当該変換モジュール220は更に、当該第1の制御信号にフォーマット変換を行い、当該車両シミュレータにより当該車両状態情報を更新するための第2の制御信号を得るために用いられ、
当該伝送モジュール210は更に、当該車両シミュレータに当該第2の制御信号を送信するために用いられる。
車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するための伝送モジュール210と、
当該第1のシャーシ情報及び当該第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得るための変換モジュール220と、を含み、当該伝送モジュール210は更に、自動運転システムに当該第2のシャーシ情報及び当該第2の測位情報を送信するために用いられ、
当該伝送モジュール210は更に、当該自動運転システムから送信された第1の制御信号を受信するために用いられ、当該変換モジュール220は更に、当該第1の制御信号にフォーマット変換を行い、当該車両シミュレータにより当該車両状態情報を更新するための第2の制御信号を得るために用いられ、
当該伝送モジュール210は更に、当該車両シミュレータに当該第2の制御信号を送信するために用いられる。
任意選択的に、当該伝送モジュール210は更に、当該車両シミュレータに当該第2の制御信号を送信した後、当該車両シミュレータから送信された第2の車両状態情報を受信するために用いられ、当該第2の車両状態情報は、当該車両シミュレータにより当該第2の制御信号に基づいて当該車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含む。
任意選択的に、当該第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ又はハンドル操舵角の少なくとも1つを含み、
及び/又は、当該第1のシャーシ情報は、速度、加速度又は姿勢情報の少なくとも1つを含み、当該姿勢情報は、ヨー角又はハンドル操舵角の少なくとも1つを含む。
及び/又は、当該第1のシャーシ情報は、速度、加速度又は姿勢情報の少なくとも1つを含み、当該姿勢情報は、ヨー角又はハンドル操舵角の少なくとも1つを含む。
任意選択的に、当該変換モジュール220は更に、当該第1のシャーシ情報及び当該第1の測位情報にフォーマット変換を行い、目標車両の情報を得るために用いられ、当該伝送モジュール210は更に、エージェントマネージャに当該目標車両の情報を送信するために用いられ、当該目標車両の情報は、当該エージェントマネージャが車両シミュレーションシーンをロードした場合、当該目標車両の情報に基づいて当該車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられ、
当該変換モジュール220は更に、当該第1の感知情報にフォーマット変換を行い、第2の感知情報を得るために用いられ、当該伝送モジュール210は更に、当該自動運転システムに当該第2の感知情報を送信し、当該自動運転システムが当該第2の感知情報及び当該第2の車両状態情報に基づいて意思決定と計画を行い、当該第1の制御信号を得るために用いられる。
当該変換モジュール220は更に、当該第1の感知情報にフォーマット変換を行い、第2の感知情報を得るために用いられ、当該伝送モジュール210は更に、当該自動運転システムに当該第2の感知情報を送信し、当該自動運転システムが当該第2の感知情報及び当該第2の車両状態情報に基づいて意思決定と計画を行い、当該第1の制御信号を得るために用いられる。
図3を参照することができ、図3は、本開示の実施例により提供される自動運転シミュレーションテストシステムの構造概略図である。図3に示すように、自動運転シミュレーションテストシステム300は、
自動運転システム330と、車両シミュレータ320と、図2に示されるメッセージマネージャ200と、を備える。任意選択的に、当該自動運転シミュレーションテストシステムは、図1に示される実施例において言及したエージェントマネージャ340を更に備えてもよい。
自動運転システム330と、車両シミュレータ320と、図2に示されるメッセージマネージャ200と、を備える。任意選択的に、当該自動運転シミュレーションテストシステムは、図1に示される実施例において言及したエージェントマネージャ340を更に備えてもよい。
本願の実施例における自動運転シミュレーション方法及び自動運転シミュレーションテストシステムをより明らかに説明するために、図4を参照し、図4は、本開示の実施例により開示された別の自動運転シミュレーションテストシステムの構造概略図である。図4に示すように、自動運転シミュレーションテストシステムは、車両シミュレータ410と、メッセージマネージャ420と、エージェントマネージャ430と、自動運転システム440と、を備え、ここでは、自動運転システム440は、テストされるシステムである。
例を挙げれば、図1に示される実施例における具体的な説明及び図4に示される自動運転シミュレーションテストシステムのアーキテクチャによれば、その自動運転シミュレーションの流れは、具体的に以下のステップを含んでよい。
(1)車両シミュレータ410はメッセージマネージャ420から汎用の制御信号を取得して自身の位置更新を行い、同時に汎用の第1のシャーシ情報及び第1の測位情報をメッセージマネージャ420に送信することができる。
(2)メッセージマネージャ420は第1のシャーシ情報及び第1の測位情報を目標車両の情報に変換し、エージェントマネージャ430に送信し、且つ、第1のシャーシ情報及び第1の測位情報を第2のシャーシ情報及び第2の測位情報に変換し、自動運転システム440に送信することができる。
(3)エージェントマネージャ430はメッセージマネージャ420を介して目標車両の情報を得て処理し、管理されるエージェントが目標車両に応答するとともにエージェント自身の状態を更新するように制御し、第1の感知情報を得て、メッセージマネージャ420に送信する。
(4)メッセージマネージャ420は更に第1の感知情報を第2の感知情報に変換し、自動運転システム440に送信することができる。
(5)自動運転システム440は第2のシャーシ情報、第2の測位情報及び第2の感知情報に基づいて目標車両の自動運転制御を行い、第1の制御信号を出力し、メッセージマネージャ420に送信することができる。
(6)メッセージマネージャ420は第1の制御信号を第2の制御信号に変換し、車両シミュレータ410に送信することができる。車両シミュレータ410は第2の制御信号に応答して(1)に記載の処理ステップを実行することができ、即ち、自動運転シミュレーションテストが終了するまで、以上のステップ(1)~(6)を周期的に実行することができる。
任意選択的な実施形態において、自動運転システム440は、測位モジュール441、地図モジュール442、意思決定と計画モジュール443及びコントローラ444を含み、
地図モジュール442は、地図をロードし、且つ地図に少なくとも1つの目標車両を表示するために用いられ、
測位モジュール441は、メッセージマネージャからの第2のシャーシ情報及び第2の位置情報を取得し、且つ当該第2のシャーシ情報及び当該第2の位置情報に基づいて当該地図における当該目標車両の状態を確定して更新するために用いられ、当該目標車両は当該車両シミュレータにおけるシミュレーション車両であり、
意思決定と計画モジュール443は、当該目標車両の状態及びメッセージマネージャからの第2の感知情報に基づき、当該地図における当該目標車両の運転意思決定結果を確定するために用いられ、コントローラ44は、当該目標車両の当該運転意思決定結果に基づき、第1の制御信号を得て、当該メッセージマネージャに当該第1の制御信号を送信するために用いられる。
地図モジュール442は、地図をロードし、且つ地図に少なくとも1つの目標車両を表示するために用いられ、
測位モジュール441は、メッセージマネージャからの第2のシャーシ情報及び第2の位置情報を取得し、且つ当該第2のシャーシ情報及び当該第2の位置情報に基づいて当該地図における当該目標車両の状態を確定して更新するために用いられ、当該目標車両は当該車両シミュレータにおけるシミュレーション車両であり、
意思決定と計画モジュール443は、当該目標車両の状態及びメッセージマネージャからの第2の感知情報に基づき、当該地図における当該目標車両の運転意思決定結果を確定するために用いられ、コントローラ44は、当該目標車両の当該運転意思決定結果に基づき、第1の制御信号を得て、当該メッセージマネージャに当該第1の制御信号を送信するために用いられる。
具体的には、自動運転システム440における地図モジュール442は、地図をロードし、且つ地図に少なくとも1つの目標車両を表示するために用いられ、
測位モジュール441は、メッセージマネージャ420からの第2のシャーシ情報及び第2の位置情報を取得し、且つ第2のシャーシ情報及び第2の位置情報に基づいて地図における目標車両の状態を確定して更新することができ、続いて、意思決定と計画モジュール443は、当該目標車両の状態及びメッセージマネージャ420からの第2の感知情報に基づき、車両の後続の走行経路、方向、速度などを決定し、地図における目標車両の運転意思決定結果を確定し、コントローラ444は、当該運転意思決定結果に基づき、第1の制御信号を得ることができ、自動運転システム440は、メッセージマネージャ420に当該第1の制御信号を送信することができる。
測位モジュール441は、メッセージマネージャ420からの第2のシャーシ情報及び第2の位置情報を取得し、且つ第2のシャーシ情報及び第2の位置情報に基づいて地図における目標車両の状態を確定して更新することができ、続いて、意思決定と計画モジュール443は、当該目標車両の状態及びメッセージマネージャ420からの第2の感知情報に基づき、車両の後続の走行経路、方向、速度などを決定し、地図における目標車両の運転意思決定結果を確定し、コントローラ444は、当該運転意思決定結果に基づき、第1の制御信号を得ることができ、自動運転システム440は、メッセージマネージャ420に当該第1の制御信号を送信することができる。
シミュレーション結果は、テストされた自動運転システム400自体が備える可視化機能によって出力することができ、即ち、自動運転シミュレーションテストシステム400は、シミュレーションビデオ、画像などのデータを表示することができる。
任意選択的な実施形態において、車両シミュレータ410には車両運動力学モデルが記憶されており、当該車両運動力学モデルは、実際の車両センサにより収集した車両走行中のデータに基づいて予め確立され、
車両シミュレータ410は、
当該メッセージマネージャから送信された第2の制御信号を取得し、
当該車両運動力学モデル及び当該第2の制御信号に基づいて車両状態情報を更新し、第3のシャーシ情報及び第3の測位情報を含む第2の車両状態情報を得て、
当該メッセージマネージャに当該第2の車両状態情報を送信するために用いられる。
車両シミュレータ410は、
当該メッセージマネージャから送信された第2の制御信号を取得し、
当該車両運動力学モデル及び当該第2の制御信号に基づいて車両状態情報を更新し、第3のシャーシ情報及び第3の測位情報を含む第2の車両状態情報を得て、
当該メッセージマネージャに当該第2の車両状態情報を送信するために用いられる。
本開示の実施例における車両シミュレータ410は、予め設定された車両運動力学モデルを利用してシミュレーション車両の運動形態を説明することができる。実際の車両センサにより車両走行中のデータを収集し、より真の車両運動力学モデルを予め確立し、且つ当該車両シミュレータ410に応用することで、車両シミュレータ410が当該車両運動力学モデル及び受信した第2の制御信号に基づいて車両状態情報を更新し、第2の車両状態情報を得ることができる。
ここで、自動運転システム440により生成された、メッセージマネージャ420により変換されて転送された第2の制御情報のうち、アクセルデータ、ブレーキデータ、ハンドル操舵角などは、計算プロセスで十分に具現化しておらず、まず変換してから、車両シミュレータ410で演算することができる。従って、車両運動力学モデルにおいて、車両のアクセルデータ、ブレーキデータ、シフトレンジと速度、加速度とのマッピング関係を予め設定し、且つ、車両のハンドル操舵角と車両前輪操舵角との回転比例関係を予め設定することができる。
更に具体的には、当該車両運動力学モデルの確立プロセスは、
センサにより収集した実車が道路で走行する際の、対応関係を有するアクセルデータ、ブレーキデータと速度、加速度とを複数組含む第1のデータを取得し、
当該第1のデータに基づき、車両のアクセルデータ、ブレーキデータ、シフトレンジと速度、加速度とのマッピング関係を構築し、
センサにより収集した実車が道路で走行する際の、対応関係を有するハンドル操舵角と車両前輪操舵角とを複数組含む第2のデータを取得し、
当該第2のデータに基づき、車両のハンドル操舵角と車両前輪操舵角との回転比例関係を構築し、
当該マッピング関係及び当該回転比例関係に基づき、車両運動力学モデルを得ることを含む。
センサにより収集した実車が道路で走行する際の、対応関係を有するアクセルデータ、ブレーキデータと速度、加速度とを複数組含む第1のデータを取得し、
当該第1のデータに基づき、車両のアクセルデータ、ブレーキデータ、シフトレンジと速度、加速度とのマッピング関係を構築し、
センサにより収集した実車が道路で走行する際の、対応関係を有するハンドル操舵角と車両前輪操舵角とを複数組含む第2のデータを取得し、
当該第2のデータに基づき、車両のハンドル操舵角と車両前輪操舵角との回転比例関係を構築し、
当該マッピング関係及び当該回転比例関係に基づき、車両運動力学モデルを得ることを含む。
一般的に、車両シミュレータにおけるシミュレーション車両と実際にテストされる車両のパラメータ及び性能が一致していない。シミュレーションテストを行う際に、車のねじりトルク、車両のパワー、タイヤの摩擦係数などの車両の根本的なパラメータを取得する必要があり、これらのパラメータが通常得難いため、車両のシミュレーションが実際の路上テスト車両に好適にマッチングし難い。
本開示の実施例において、予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係、及び予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係は、収集された実車データを統計することで得ることができる。
具体的には、真の自動運転テスト車両を可能な限りシミュレートするために、本開示の実施例において、まず、センサ及び実車を利用し、実車を運転して道路で走行させることで、アクセルデータ、ブレーキデータと速度、加速度とを複数組ランダム且つ大量に収集することができ、ここでは、当該アクセルデータ、当該ブレーキデータと当該速度、当該加速度とは対応関係を有し、且つ、複数の車両のハンドル操舵角と車両前輪操舵角とを複数組測定することができ、当該ハンドル操舵角と当該車両前輪操舵角とは対応関係を有し、続いて、補間フィッティングの手法で、予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係、及び予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係を構築し、車両運動力学モデルの縦型の数式表現とすることで、シミュレーション車両を制御するには、加速器、ブレーキ、シフトレンジ及びハンドル操舵角といったパラメータのみが必要とされることを実現でき、計算して、車両状態メッセージを出力することができ、車両の根本的な性能パラメータを提供し難いという窮地を脱し、実際の路上テスト車両を真にシミュレートすることができる。
具体的には、第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ及びハンドル操舵角を含み、
車両シミュレータ410は、具体的に、
予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係に基づき、当該第2の制御信号におけるアクセルデータ、ブレーキデータ及びシフトレンジに対応する第1の速度及び第1の加速度を得て、
予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係に基づき、当該第2の制御信号におけるハンドル操舵角を、対応する第1の前輪操舵角に変換し、
目標車両の第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離を取得し、
測位情報、第1の速度、第1の加速度、第1の前輪操舵角、第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離に基づき、第2の車両状態情報を得るために用いられる。
車両シミュレータ410は、具体的に、
予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係に基づき、当該第2の制御信号におけるアクセルデータ、ブレーキデータ及びシフトレンジに対応する第1の速度及び第1の加速度を得て、
予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係に基づき、当該第2の制御信号におけるハンドル操舵角を、対応する第1の前輪操舵角に変換し、
目標車両の第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離を取得し、
測位情報、第1の速度、第1の加速度、第1の前輪操舵角、第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離に基づき、第2の車両状態情報を得るために用いられる。
車両シミュレータ410において、受信した制御信号に対して、予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係、及び予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係に基づき、対応する第1の速度、第1の加速度及び第1の前輪操舵角を得ることができ、車両状態の演算を行うことができる。具体的には、当該目標車両の車両前輪の車軸の中心から車両の重心までの距離、及び車両後輪の車軸の中心から車両の重心までの距離を取得することができ、当該距離は、車両シミュレータ410からローカルに得られてもよく、自動運転システム440により設定されてメッセージマネージャ420により車両シミュレータ410に送信されてもよい。車両シミュレータ410により得られた測位情報、第1の速度、第1の加速度、第1の前輪操舵角、第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離に基づき、第2の車両状態情報を得て、具体的に、第2の測位情報、第2の速度、第2の加速度及び第2のヨー角のうちの任意の1つ又は複数を含んでよい。本開示の実施例における車両の測位情報は、車両の位置座標で表すことができる。
本開示の実施例において、車両の懸架システム、タイヤモデル及び環境モデルが簡略化されており、1つの実施形態において、得られた車両運動力学モデルは、得られたマッピング関係及び回転比例関係、当該マッピング関係及び当該回転比例関係に基づく計算式を含む。ここで、提供される計算式は、具体的に以下の通りであり得る。
ここでは、(x,y)は車両の位置座標を表し、v及びaはそれぞれ車両の速度及び加速度であり、
は車両のヨー角であり、車体の向きを表し、
及び
はそれぞれ車両の重心から前輪車軸の中点及び後輪車軸の中点までの距離であり、
は車両前輪操舵角であり、反時計回りを負とするように限定してもよく、必要に応じて設定してもよい。殆どの車両の後輪が回転できないため、本開示の実施例の車両運動力学モデルでは、後輪の回転角を考慮しなくてもよく、データ処理量をある程度減少することができる。
実際の実車パラメータ及び較正関係を利用して車両運動力学モデルを得ることで、真の道路テスト用車により似ており、シミュレーションテストシーンがより豊富で、より全面的で、正確になる。
当該予め設定された車両運動力学モデルによりシミュレーション車両を制御するには、アクセルデータ、ブレーキデータ、シフトレンジ及びハンドル操舵角、及び参照である処理すべき測位情報と車両の固定パラメータ(
及び
)のみが必要とされ、それに基づいて変換操作及び計算処理を行うことができ、具体的には、マッピング関係及び回転比例関係に基づいて入力されたデータを変換し、更に、式に基づいて計算処理を行い、最終的に、車両の位置更新(第2の測位情報)、速度、加速度及び姿勢情報(第2のヨー角及びハンドル操舵角などを含む)を含む車両状態情報を出力することを含み、自動運転シミュレーションテストにおけるデータ処理を簡潔且つ正確に実現することができる。
任意選択的な実施形態において、自動運転シミュレーションテストシステム400は、エージェントマネージャ430を更に備え、エージェントマネージャ430は、
少なくとも1つの車両を含むエージェントが含まれた車両シミュレーションシーンをロードし、
メッセージマネージャ420からの目標車両の情報を受信し、目標車両の情報に基づいて車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得て、
メッセージマネージャ420に当該第1の感知情報を送信するために用いられる。
少なくとも1つの車両を含むエージェントが含まれた車両シミュレーションシーンをロードし、
メッセージマネージャ420からの目標車両の情報を受信し、目標車両の情報に基づいて車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得て、
メッセージマネージャ420に当該第1の感知情報を送信するために用いられる。
具体的には、エージェントマネージャ430は、車両シミュレータ410と組み合わせてシミュレーションシーンをシミュレートするために用いられ、当該シミュレーションシーンにおけるエージェントは、目標車両とインタラクション可能な要素であり、任意選択的に、当該エージェントは、非自動車、動物、歩行者、交通コーン、交通信号灯、交通標識、道路標示、車線境界線又は障害物の少なくとも1つを更に含む。設定されたシミュレーションテストにおいて注目される目標車両の以外に、他の車両がシーンにおいてシミュレートされた交通流車両であり得ることに留意されたい。
エージェントマネージャ430において、どのエージェントがシミュレーション車両とインタラクション行為をすることができるかを設定又は変更し、且つ、インタラクションルールを設定することができる。エージェントマネージャ430は、メッセージマネージャ420を介して当該目標車両の情報を得て、対応するインタラクションルールに従って、管理されるエージェントが目標車両に応答するとともに自身の状態を更新するように制御し、感知情報を得て、更にメッセージマネージャ420にフィードバックすることができる。エージェントマネージャ430における交通流車両に対して、予め設定された自動運転アルゴリズムを使用してシミュレーション走行を達成することができ、目標車両とインタラクションすることができる。
メッセージマネージャ420は、目標車両の位置するシミュレーションシーンにおけるエージェントの第1の感知情報を自動運転システム440に送信することができ、ここで、メッセージマネージャ420は、同様に、フォーマット変換を行うことができ、得られた第2の感知情報は、自動運転システム440でカスタマイズされたフォーマットに合致するデータであり、具体的には、エージェントマネージャにおけるエージェントの測位情報、速度などを含んでよい。例えば、目標車両がある交通コーンにぶつかった場合、交通コーンがこの状況に応答して自身の状態を変更し(ある方向へ倒れるか、又は、飛び出されて、ある位置まで移動するなど)、又は、交通流車両が目標車両の走行の影響を受けて自身の走行ルートを変更するなどが挙げられ、本開示の実施例において、これを制限しない。
本開示の実施例に係る汎用及びカスタマイズとは、データフォーマットのことであり、汎用フォーマットの汎用性が高いが、一般的な自動運転システムは自分のニーズに応じて自分のデータフォーマットを定義する。
任意選択的に、エージェントマネージャ430は更に、車両シミュレーションシーンにおけるシミュレーション車両の情報を車両シミュレーションシーンにおける他のエージェントに送信し、他のエージェントが当該シミュレーション車両の情報に基づいて自身の状態を更新し、且つ、他のエージェントの情報をシミュレーション車両に送信し、シミュレーション車両が他のエージェントの情報に基づいて自身の状態を更新するために用いられる。
一般的に、交通流を利用した車両シミュレーションは、スクリプトに基づくシーン構築に属し、主に交通流の再生であり、シミュレーションシーンとシミュレーション車両の間にインタラクションがなく、実際の状況と異なる。本開示の実施例において、エージェントマネージャにより、シミュレーション車両とシミュレーションシーンにおける他のエージェントを統括的に管理することができ、全ての物体が同様の状態更新インタフェースを使用することができ、シミュレーションシーンにおける物体のインタラクション、及びシミュレーションシーンにおける物体とシミュレーション車両自身とのインタラクションを実現することができる。
任意選択的に、自動運転シミュレーションテストシステム400において、少なくとも2つのシミュレーション車両を設定してシミュレーションテストを行うことができ、少なくとも2つのシミュレーション車両は、独立して自動運転シミュレーション処理を行うことができる。複数の車両のシミュレーションは、前述した1つの目標車両をシミュレーション車両とする場合のデータ処理方法と同じであってよく、同一の自動運転システム400においてそれぞれ当該少なくとも2つシミュレーション車両の情報を処理し、異なる制御信号を生成して同一の車両シミュレータ410に提供して処理することができる。
複数の車両のシミュレーションのシーンで、エージェントマネージャ430におけるシミュレーション車両と他のエージェントは同一の概念に属するため、統括的に管理し、複数の車両の同時シミュレーションを実現することができる。エージェントマネージャ430において、そのうちの一方のシミュレーション車両に対して、他方のシミュレーション車両は、他のエージェントとして見なすことができるため、エージェントマネージャ430は、複数のシミュレーション車両の間の情報インタラクションをもサポートし、対応する感知情報を生成してメッセージマネージャ420を介して自動運転システム400に提供することができる。
上記のステップによって、自動運転シミュレーションテストを迅速且つ正確に実現する前提で、シミュレーション車両とシミュレーションシーンとのインタラクションを実現することもでき、同時に、交通流車両の間の相互作用により、複雑なエージェント行為を形成し、より豊富なテストシーンを提供することができる。
車両シミュレータ410、エージェントマネージャ430及び自動運転システム440は、いずれも必要に応じて交換することができ、変更されたモジュールに対して、メッセージマネージャ420においてインタフェース通信部を対応して設定して変更することができ、各モジュール間で順調で正確なデータインタラクションを実現することができる。
任意選択的な実施形態において、自動運転シミュレーションテストシステム400は、電子機器に配置されたソフトウェアシステムであってよく、メッセージマネージャ420、車両シミュレータ410、エージェントマネージャ430及び自動運転システムは、ソフトウェアモジュールであってよく、当該自動運転シミュレーションテストシステム400は、端末機器に配置されてシミュレーションテストタスクを実行することができる。別の実施形態において、自動運転シミュレーションテストシステム400に含まれる車両シミュレータ410、エージェントマネージャ430、メッセージマネージャ420及び自動運転システム400は、いずれも物理装置であってもよい。
一般的に、従来の自動運転システムのデータインタフェースは、車両シミュレータに適合するように開発する必要があり、テストシステムにおいて他のタイプの車両シミュレータに交換すれば、新たな車両シミュレータに対して自動運転システムを改めて開発する必要があり、そうでなければ、適合できず使用できなくなり、開発コストが非常に高い。本開示では、テストシステムにメッセージマネージャを増設し、メッセージマネージャにより自動運転システムと車両シミュレータの間でインタラクションするデータの変換処理及び転送を行い、車両シミュレータを交換する必要がある場合、自動運転システムを改めて設計することなく、メッセージマネージャと車両シミュレータの間の通信インタフェース部を変更すればよく、自動運転システムの適合性が高められ、及び/又は、テストされる自動運転システムを交換する必要がある場合、車両シミュレータを新たな自動運転システムに適合する車両シミュレータに交換することなく、メッセージマネージャと自動運転システムの間の通信インタフェース部を変更すればよく、任意選択的に、テストシステムにエージェントマネージャが更に設けられており、前述した内容を基に、エージェントマネージャを交換する必要がある場合、自動運転システム及び車両シミュレータを改めて設計することなく、メッセージマネージャとエージェントマネージャの間の通信インタフェース部を変更すればよく、コストが削減され、自動運転シミュレーションテストシステムの汎用性が高められる。
図5を参照し、図5は、本開示の実施例により開示された電子機器の構造概略図である。図5に示すように、当該電子機器500は、プロセッサ501及びメモリ502を含み、ここで、電子機器500はバス503を更に含んでもよく、プロセッサ501及びメモリ502は、バス503を介して相互に接続することができ、バス503は、ペリフェラルコンポーネントインターコネクト(Peripheral Component Interconnect,PCI)バス又は拡張業界標準アーキテクチャ(Extended Industry Standard Architecture,EISA)バスなどであり得る。バス503は、アドレスバス、データバス、制御バスなどに分けられてよい。表しやすくするために、図5において1本の太線のみで表しているが、1本のバス又は1つのタイプのバスのみを有することを代表するわけではない。ここで、電子機器500は入出力デバイス504を更に含んでもよく、入出力デバイス504は、液晶ディスプレイのようなディスプレイを含んでよい。メモリ502は、コンピュータプログラムを記憶するために用いられ、プロセッサ501は、メモリ502に記憶されているコンピュータプログラムを呼び出して、図1の実施例において言及された一部又は全部の方法のステップを実行するために用いられる。図5に示される電子機器500を実施し、電子機器500は、異なる自動運転システムに対するシミュレーションテストに適合できるように、自動運転システムのインタフェースを設定して変更することができ、ここで繰り返して説明しない。
又は、プロセッサ501は、メモリ502に記憶されているコンピュータプログラムを呼び出して、図4に示される実施例における自動運転シミュレーションテストシステム400により実行される一部又は全部の方法のステップを実行するために用いられる。
本開示の実施例は、コンピュータ記憶媒体を更に提供し、当該コンピュータ記憶媒体は、コンピュータプログラムを記憶するために用いられ、当該コンピュータプログラムによって、コンピュータは、前述した方法の実施例に記載のいずれか1つの自動運転シミュレーション方法又は自動運転シミュレーションテストシステムにより実行される方法の一部又は全部のステップを実行する。
なお、前述した各方法の実施例については、説明を簡便にするために、一連の動作の組み合わせとして表現したが、本開示が説明された動作順序に限定されるものではなく、本開示により、一部のステップが他の順序で又は同時に行われてもよいことは、当業者に理解されたい。また、本明細書に説明された実施例がいずれも好ましい実施例であり、係る動作及びモジュールが必ずしも本開示に必要なものではないことは、当業者に理解されたい。
前述した実施例では、各実施例に対する説明は、いずれも重点を置き、ある実施例では詳述されない部分は、他の実施例の関連説明を参照することができる。
本開示に係るいくつかの実施例では、開示される装置は他の形態により実現することができることを理解されたい。例えば、上記した装置の実施例は、例示的なものに過ぎず、例えば、上記ユニットの分割は、論理上の機能の分割に過ぎず、実際に実現する場合に他の分割方式も可能であり、例えば、複数のユニット又はコンポーネントは、組み合わせられてもよく、別のシステムに統合されてもよく、或いは、いくつかの特徴を無視してもよく、実行しなくてもよい。また、示されるか又は議論される相互結合、直接結合又は通信接続は、いくつかのインタフェースを使用して実現でき、装置又はユニット間の間接結合又は通信接続は、電気の形態であってもよく、他の形態であってもよい。
別個の部品として説明したユニット(モジュール)は、物理的に別個であってもよく、又はそうでなくてもよく、ユニットとして示される部品は、物理的ユニットであってもよく、又はそうでなくてもよく、即ち、1つの箇所に位置してもよく、又は複数のネットワークユニットに配置されてもよい。実際の必要に応じて、それらのうちの一部又は全部のユニットを選択して本実施例の技術手段の目的を達成することができる。
また、本開示の各実施例において、各機能ユニットが1つの処理ユニットに統合されてもよく、各ユニットが別個に物理的に存在してもよく、2つ以上のユニットが1つのユニットに統合されてもよい。当該統合されたユニットは、ハードウェアの形態で実現されてもよく、ソフトウェア機能ユニットの形態で実現されてもよい。
上記統合されたユニットは、ソフトウェア機能ユニットの形態で実現され、且つ独立した製品として販売又は使用される場合、1つのコンピュータ読み取り可能なメモリに記憶されてもよい。このような理解に基づいて、本開示の技術的解決手段は、本質的に、又は、従来技術に寄与する部分又はこの技術的解決手段の全て又は一部は、ソフトウェア製品の形態で具現化されてよく、このコンピュータソフトウェア製品は、メモリに記憶されており、コンピュータ装置(パーソナルコンピュータ、サーバ、又はネットワーク装置などであってよい)に本開示の各実施例に記載の方法の全部又は一部のステップを実行させるためのいくつかの命令を含む。前述したメモリは、USBフラッシュメモリ、読み出し専用メモリ(Read-Only Memory,ROM)、ランダムアクセスメモリ(Random Access Memory,RAM)、リムーバブルハードディスク、磁気ディスク又は光ディスクなどのプログラムコードを記憶可能な様々な媒体を含む。
前述した実施例の各方法における全部又は一部のステップがプログラムにより関連ハードウェアを命令することによって実現することができ、当該プログラムがコンピュータ読み取り可能なメモリに記憶することができ、メモリがフラッシュディスク、読み取り専用メモリ、ランダムアクセスメモリ、磁気ディスク又は光ディスクなどを含み得ることは、当業者に理解されるところである。
以上、本開示の実施例を詳しく説明し、本明細書において、具体的な例を利用して本開示の原理及び実施形態について記述したが、以上の実施例の説明は、本開示の方法及びその肝心な思想を理解するためのものに過ぎない。同時に、当業者であれば、本開示の思想に基づき、発明を実施するための形態及び適用範囲のいずれに対しても変更する可能性があり、以上を纏めると、本明細書の内容は、本開示に対する制限として理解してはいけない。
Claims (18)
- 自動運転シミュレーション方法であって、
メッセージマネージャが車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するステップと、
前記メッセージマネージャが前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得て、自動運転システムに前記第2のシャーシ情報及び前記第2の測位情報を送信するステップと、
前記メッセージマネージャが前記自動運転システムから送信された第1の制御信号を受信し、前記第1の制御信号にフォーマット変換を行い、前記車両シミュレータにより前記車両状態情報を更新するための第2の制御信号を得るステップと、
前記メッセージマネージャが前記車両シミュレータに前記第2の制御信号を送信するステップと、を含むことを特徴とする自動運転シミュレーション方法。 - 前記メッセージマネージャが前記車両シミュレータに前記第2の制御信号を送信した後、
前記メッセージマネージャが前記車両シミュレータから送信された第2の車両状態情報を受信するステップを更に含み、前記第2の車両状態情報は、前記車両シミュレータにより前記第2の制御信号に基づいて前記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含むことを特徴とする請求項1に記載の方法。 - 前記第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ、ハンドル操舵角のうちの1つ又は複数を含み、
及び/又は、
前記第1のシャーシ情報は、速度、加速度、姿勢情報のうちの1つ又は複数を含み、前記姿勢情報は、ヨー角、ハンドル操舵角のうちの1つ又は複数を含むことを特徴とする請求項1又は2に記載の方法。 - 前記メッセージマネージャが前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、目標車両の情報を得て、エージェントマネージャに前記目標車両の情報を送信し、前記目標車両は前記車両シミュレータにおけるシミュレーション車両であり、前記目標車両の情報は、前記エージェントマネージャが車両シミュレーションシーンをロードした場合、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられるステップと、
前記メッセージマネージャが前記第1の感知情報にフォーマット変換を行い、第2の感知情報を得て、前記自動運転システムに前記第2の感知情報を送信して、前記自動運転システムが前記第2の感知情報及び前記第2の車両状態情報に基づいて意思決定と計画を行い、前記第1の制御信号を得るステップと、を更に含むことを特徴とする請求項1~3のいずれか一項に記載の方法。 - メッセージマネージャであって、
車両シミュレータから送信された、第1のシャーシ情報及び第1の測位情報を含む第1の車両状態情報を受信するための伝送モジュールと、
前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、第2のシャーシ情報及び第2の測位情報を得るための変換モジュールと、を含み、前記伝送モジュールは更に、自動運転システムに前記第2のシャーシ情報及び前記第2の測位情報を送信するために用いられ、
前記伝送モジュールは更に、前記自動運転システムから送信された第1の制御信号を受信するために用いられ、前記変換モジュールは更に、前記第1の制御信号にフォーマット変換を行い、前記車両シミュレータにより前記車両状態情報を更新するための第2の制御信号を得るために用いられ、
前記伝送モジュールは更に、前記車両シミュレータに前記第2の制御信号を送信するために用いられることを特徴とするメッセージマネージャ。 - 前記伝送モジュールは更に、前記車両シミュレータに前記第2の制御信号を送信した後、前記車両シミュレータから送信された第2の車両状態情報を受信するために用いられ、前記第2の車両状態情報は、前記車両シミュレータにより前記第2の制御信号に基づいて前記車両状態情報を更新した後に得られた第3のシャーシ情報及び第3の測位情報を含むことを特徴とする請求項5に記載のメッセージマネージャ。
- 前記第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ及び/又はハンドル操舵角を含み、
及び/又は、
前記第1のシャーシ情報は、速度、加速度及び/又は姿勢情報を含み、前記姿勢情報は、ヨー角及び/又はハンドル操舵角を含むことを特徴とする請求項5又は6に記載のメッセージマネージャ。 - 前記変換モジュールは更に、前記第1のシャーシ情報及び前記第1の測位情報にフォーマット変換を行い、目標車両の情報を得るために用いられ、前記伝送モジュールは更に、エージェントマネージャに前記目標車両の情報を送信するために用いられ、前記目標車両の情報は、前記エージェントマネージャが車両シミュレーションシーンをロードした場合、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおけるエージェントの状態を更新し、第1の感知情報を得るために用いられ、
前記変換モジュールは更に、前記第1の感知情報にフォーマット変換を行い、第2の感知情報を得るために用いられ、前記伝送モジュールは更に、前記自動運転システムに前記第2の感知情報を送信して、前記自動運転システムが前記第2の感知情報及び前記第2の車両状態情報に基づいて意思決定と計画を行い、前記第1の制御信号を得るために用いられることを特徴とする請求項5~7のいずれか一項に記載のメッセージマネージャ。 - 自動運転シミュレーションテストシステムであって、
自動運転システムと、車両シミュレータと、請求項5~8のいずれか一項に記載のメッセージマネージャと、を備えることを特徴とする自動運転シミュレーションテストシステム。 - 前記自動運転システムは、測位モジュール、地図モジュール、意思決定と計画モジュール及びコントローラを含み、
前記地図モジュールは、地図をロードし、且つ地図に少なくとも1つの目標車両を表示するために用いられ、
前記測位モジュールは、前記メッセージマネージャからの第2のシャーシ情報及び第2の位置情報を取得し、且つ前記第2のシャーシ情報及び前記第2の位置情報に基づいて前記地図における前記目標車両の状態を確定して更新するために用いられ、前記目標車両は前記車両シミュレータにおけるシミュレーション車両であり、
前記意思決定と計画モジュールは、前記目標車両の状態及びメッセージマネージャからの第2の感知情報に基づき、前記地図における前記目標車両の運転意思決定結果を確定するために用いられ、
前記コントローラは、前記目標車両の前記運転意思決定結果に基づき、第1の制御信号を得て、前記メッセージマネージャに前記第1の制御信号を送信するために用いられることを特徴とする請求項9に記載のシステム。 - 前記車両シミュレータには車両運動力学モデルが記憶されており、前記車両運動力学モデルは、実際の車両センサにより収集した車両走行中のデータに基づいて予め確立され、
前記車両シミュレータは、
前記メッセージマネージャから送信された第2の制御信号を取得し、
前記車両運動力学モデル及び前記第2の制御信号に基づいて車両状態情報を更新し、第3のシャーシ情報及び第3の測位情報を含む第2の車両状態情報を得て、
前記メッセージマネージャに前記第2の車両状態情報を送信するために用いられることを特徴とする請求項9又は10に記載のシステム。 - 前記第2の制御信号は、処理すべき測位情報、アクセルデータ、ブレーキデータ、シフトレンジ及びハンドル操舵角を含み、
前記車両シミュレータは、具体的に、予め設定された車両のアクセルデータ、ブレーキデータ、シフトレンジと車両の速度、加速度とのマッピング関係に基づき、前記第2の制御信号におけるアクセルデータ、ブレーキデータ及びシフトレンジに対応する第1の速度及び第1の加速度を得て、
予め設定された車両のハンドル操舵角と車両前輪操舵角との回転比例関係に基づき、前記第2の制御信号におけるハンドル操舵角を、対応する第1の前輪操舵角に変換し、
前記目標車両の第1のヨー角、車両前輪の車軸の中心から車両の重心までの距離及び車両後輪の車軸の中心から車両の重心までの距離を取得し、
前記測位情報、前記第1の速度、前記第1の加速度、前記第1の前輪操舵角、前記第1のヨー角、前記車両前輪の車軸の中心から車両の重心までの距離及び前記車両後輪の車軸の中心から車両の重心までの距離に基づき、前記第2の車両状態情報を得るために用いられることを特徴とする請求項11に記載のシステム。 - 車両運動力学モデル確立モジュールを更に備え、前記車両運動力学モデル確立モジュールは、
センサにより収集した実車が道路で走行する際の、対応関係を有するアクセルデータ、ブレーキデータと速度、加速度とを複数組含む第1のデータを取得し、
前記第1のデータに基づき、車両のアクセルデータ、ブレーキデータ、シフトレンジと速度、加速度とのマッピング関係を構築し、
センサにより収集した実車が道路で走行する際の、対応関係を有するハンドル操舵角と車両前輪操舵角とを複数組含む第2のデータを取得し、
前記第2のデータに基づき、車両のハンドル操舵角と車両前輪操舵角との回転比例関係を構築し、
前記マッピング関係及び前記回転比例関係に基づき、車両運動力学モデルを得るために用いられることを特徴とする請求項11又は12に記載のシステム。 - エージェントマネージャを更に備え、前記エージェントマネージャは、
少なくとも1つの車両を含むエージェントが含まれた車両シミュレーションシーンをロードし、
メッセージマネージャからの目標車両の情報を受信し、前記目標車両の情報に基づいて前記車両シミュレーションシーンにおける前記エージェントの状態を更新し、第1の感知情報を得て、
前記メッセージマネージャに前記第1の感知情報を送信するために用いられることを特徴とする請求項9~13のいずれか一項に記載のシステム。 - 前記エージェントマネージャは更に、
前記車両シミュレーションシーンにおけるシミュレーション車両の情報を前記車両シミュレーションシーンにおける他のエージェントに送信して、前記他のエージェントが前記シミュレーション車両の情報に基づいて自身の状態を更新し、前記他のエージェントの情報を前記シミュレーション車両に送信して、前記シミュレーション車両が前記他のエージェントの情報に基づいて自身の状態を更新するために用いられ、
前記エージェントは、非自動車、動物、歩行者、交通コーン、交通信号灯、交通標識、道路標示、車線境界線、障害物のうちの1つ又は複数を更に含むことを特徴とする請求項14に記載のシステム。 - 電子機器であって、プロセッサ及びメモリを含み、前記メモリは、前記プロセッサにより実行されるように構成されるコンピュータプログラムを記憶するために用いられ、前記プロセッサは、請求項1~4のいずれか一項に記載の方法を実行するために用いられ、又は、前記プロセッサは、請求項5~8のいずれか一項に記載のメッセージマネージャが動作するように制御するか、又は、請求項9~15のいずれか一項に記載の自動運転シミュレーションテストシステムが動作するように制御するために用いられることを特徴とする電子機器。
- コンピュータ読み取り可能な記憶媒体であって、コンピュータプログラムを記憶するためのものであり、前記コンピュータプログラムがプロセッサにより呼び出されることで、前記プロセッサに、請求項1~4のいずれか一項に記載の方法を実行させ、又は、前記プロセッサに、請求項5~8のいずれか一項に記載のメッセージマネージャが動作するように制御させ、又は、前記プロセッサに、請求項9~15のいずれか一項に記載の自動運転シミュレーションテストシステムが動作するように制御させることを特徴とするコンピュータ読み取り可能な記憶媒体。
- コンピュータプログラム又は命令を含み、前記コンピュータプログラム又は命令がコンピュータで実行される場合、前記コンピュータに、請求項1~4のいずれか一項に記載の方法を実行させ、又は、前記コンピュータに、請求項5~8のいずれか一項に記載のメッセージマネージャが動作するように制御させ、又は、前記コンピュータに、請求項9~15のいずれか一項に記載の自動運転シミュレーションテストシステムが動作するように制御させるコンピュータプログラム製品。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010113305.9A CN111353221A (zh) | 2020-02-24 | 2020-02-24 | 自动驾驶仿真方法和装置、电子设备及存储介质 |
CN202010113305.9 | 2020-02-24 | ||
PCT/CN2020/141757 WO2021169588A1 (zh) | 2020-02-24 | 2020-12-30 | 自动驾驶仿真方法和装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022524584A true JP2022524584A (ja) | 2022-05-09 |
Family
ID=71195761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021547822A Pending JP2022524584A (ja) | 2020-02-24 | 2020-12-30 | 自動運転シミュレーション方法及び装置、電子機器並びに記憶媒体 |
Country Status (4)
Country | Link |
---|---|
JP (1) | JP2022524584A (ja) |
KR (1) | KR20210114467A (ja) |
CN (1) | CN111353221A (ja) |
WO (1) | WO2021169588A1 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111353221A (zh) * | 2020-02-24 | 2020-06-30 | 上海商汤临港智能科技有限公司 | 自动驾驶仿真方法和装置、电子设备及存储介质 |
CN112255931B (zh) * | 2020-10-10 | 2024-04-16 | 万物镜像(北京)计算机系统有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN114553972A (zh) * | 2020-11-10 | 2022-05-27 | 魔门塔(苏州)科技有限公司 | 应用于自动驾驶的数据传输装置、方法、车载终端和介质 |
CN113238933B (zh) * | 2021-04-30 | 2024-03-12 | 阿波罗智联(北京)科技有限公司 | 底盘仿真方法、装置、服务器、存储介质及程序产品 |
CN113762406A (zh) * | 2021-09-15 | 2021-12-07 | 东软睿驰汽车技术(沈阳)有限公司 | 数据的挖掘方法、装置和电子设备 |
CN113823121B (zh) * | 2021-09-18 | 2023-03-14 | 深圳须弥云图空间科技有限公司 | 一种车辆行驶配置方法及装置 |
CN114067610B (zh) * | 2021-09-22 | 2023-03-17 | 广州文远知行科技有限公司 | 一种错过岔道口事故的仿真场景构建方法及装置 |
CN113885754A (zh) * | 2021-09-30 | 2022-01-04 | 奥特酷智能科技(南京)有限公司 | 一种用于自动驾驶仿真平台的仿真器 |
CN114167752A (zh) * | 2021-12-01 | 2022-03-11 | 中汽研(天津)汽车工程研究院有限公司 | 一种车辆主动安全系统的仿真测试方法和系统装置 |
CN115277442B (zh) * | 2022-06-24 | 2023-07-28 | 重庆长安汽车股份有限公司 | 一种用于智能汽车功能验证的方法及其仿真模型车 |
CN115145246A (zh) * | 2022-06-27 | 2022-10-04 | 小米汽车科技有限公司 | 控制器的测试方法、装置、车辆、存储介质及芯片 |
CN115099070B (zh) * | 2022-08-14 | 2022-12-09 | 北京昂克科技有限公司 | 基于数字孪生的底盘数据获取方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110046833A (zh) * | 2019-05-13 | 2019-07-23 | 吉林大学 | 一种交通拥堵辅助系统虚拟测试系统 |
CN110333730A (zh) * | 2019-08-12 | 2019-10-15 | 安徽江淮汽车集团股份有限公司 | 自动驾驶算法预期功能安全的验证方法、平台及存储介质 |
JP2019185783A (ja) * | 2018-04-12 | 2019-10-24 | バイドゥ ユーエスエイ エルエルシーBaidu USA LLC | シミュレーションプラットフォームに配置された、機械学習モデルを訓練するためのシステム及び方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160182309A1 (en) * | 2014-12-22 | 2016-06-23 | Rockwell Automation Technologies, Inc. | Cloud-based emulation and modeling for automation systems |
CN107991898A (zh) * | 2016-10-26 | 2018-05-04 | 法乐第(北京)网络科技有限公司 | 一种无人驾驶车辆模拟测试装置及电子设备 |
CN109884916B (zh) * | 2019-02-26 | 2022-03-04 | 魔门塔(苏州)科技有限公司 | 一种自动驾驶仿真评估方法及装置 |
CN110209146B (zh) * | 2019-05-23 | 2020-12-01 | 杭州飞步科技有限公司 | 自动驾驶车辆的测试方法、装置、设备及可读存储介质 |
CN111353221A (zh) * | 2020-02-24 | 2020-06-30 | 上海商汤临港智能科技有限公司 | 自动驾驶仿真方法和装置、电子设备及存储介质 |
-
2020
- 2020-02-24 CN CN202010113305.9A patent/CN111353221A/zh active Pending
- 2020-12-30 JP JP2021547822A patent/JP2022524584A/ja active Pending
- 2020-12-30 KR KR1020217025610A patent/KR20210114467A/ko active Search and Examination
- 2020-12-30 WO PCT/CN2020/141757 patent/WO2021169588A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019185783A (ja) * | 2018-04-12 | 2019-10-24 | バイドゥ ユーエスエイ エルエルシーBaidu USA LLC | シミュレーションプラットフォームに配置された、機械学習モデルを訓練するためのシステム及び方法 |
CN110046833A (zh) * | 2019-05-13 | 2019-07-23 | 吉林大学 | 一种交通拥堵辅助系统虚拟测试系统 |
CN110333730A (zh) * | 2019-08-12 | 2019-10-15 | 安徽江淮汽车集团股份有限公司 | 自动驾驶算法预期功能安全的验证方法、平台及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
KR20210114467A (ko) | 2021-09-23 |
WO2021169588A1 (zh) | 2021-09-02 |
CN111353221A (zh) | 2020-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2022524584A (ja) | 自動運転シミュレーション方法及び装置、電子機器並びに記憶媒体 | |
Kaur et al. | A survey on simulators for testing self-driving cars | |
CN109781431B (zh) | 基于混合现实的自动驾驶测试方法及系统 | |
US11899457B1 (en) | Augmenting autonomous driving with remote viewer recommendation | |
JP2021526699A (ja) | データ採集方法、装置、デバイス、プログラム及びコンピュータ可読記憶媒体 | |
Chen et al. | Autonomous vehicle testing and validation platform: Integrated simulation system with hardware in the loop | |
US20200409369A1 (en) | System and Methods for Autonomous Vehicle Testing | |
US11385991B1 (en) | Collision evaluation for log-based simulations | |
CN113848855B (zh) | 车辆控制系统测试方法、装置、设备、介质及程序产品 | |
CN111665738A (zh) | 在环仿真系统及其中的信息处理方法及装置 | |
US20210056863A1 (en) | Hybrid models for dynamic agents in a simulation environment | |
US20120095740A1 (en) | Simulation device, simulation method, and recording medium storing simulation program | |
US11699062B2 (en) | System and method for implementing reward based strategies for promoting exploration | |
Hussein et al. | 3DCoAutoSim: Simulator for cooperative ADAS and automated vehicles | |
WO2021108315A1 (en) | Simulations with modified agents for testing autonomous vehicle software | |
CN110147085A (zh) | 一种自动驾驶的测试方法、测试装置及测试系统 | |
US20220204009A1 (en) | Simulations of sensor behavior in an autonomous vehicle | |
Kannapiran et al. | Go-CHART: A miniature remotely accessible self-driving car robot | |
Elmquist et al. | A software toolkit and hardware platform for investigating and comparing robot autonomy algorithms in simulation and reality | |
CN115113542A (zh) | 自动驾驶仿真方法、系统、电子设备及可读存储介质 | |
US11126763B1 (en) | Realism metric for testing software for controlling autonomous vehicles | |
AbdelHamed et al. | Simulation framework for development and testing of autonomous vehicles | |
Wang et al. | An intelligent self-driving truck system for highway transportation | |
Zhou et al. | A survey on autonomous driving system simulators | |
Heikkinen et al. | Hardware-in-the-loop platform for testing autonomous vehicle control algorithms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210830 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210830 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221101 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20230529 |