以下、本発明の実施形態を図面に基づいて説明する。
≪第1実施形態≫
図1は、本実施形態に係る設計支援装置100のブロック構成図である。設計支援装置100は、車両が備える機能を検証する際に用いられる設計支援装置である。設計支援装置100が対象とする車両は、自動的又は自律的に走行可能な車両である。自動的又は自律的に走行可能な車両は、いわゆる自動運転の機能を備える車両である(以降、自動運転車両と称す)。自動運転車両では、ドライバーのみならず、走行制御装置や運転支援装置と呼ばれる装置も運転の主体に含まれる。これらの装置が車両の走行を制御することで、自動運転車両は、自動的又は自律的な走行をすることができる。図1に示すように、設計支援装置100は、制御装置10を備える。設計支援装置100は、制御装置10が実行する処理によって、自動運転の機能を検証する際に用いられる設計支援装置として機能する。
図2は、本実施形態に係る制御装置10が実現する機能を模式的に表したブロック図である。制御装置10は、ハードウェア及びソフトウェアを備えたコンピュータにより構成され、プログラムを格納したROM(Read Only Memory)と、このROMに格納されたプログラムを実行するCPU(Central Processing Unit)と、アクセス可能な記憶装置として機能するRAM(Random Access Memory)とから構成されている。なお、動作回路としては、CPUに代えて又はこれとともに、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを用いることができる。図1に示す制御装置10はCPUに相当する。制御装置10は、ROM及びRAMを備えている。
なお、本実施形態では、制御装置10により実行されるプログラムがROMに予め記憶されている構成を例に挙げて説明するが、プログラムが記憶される場所はROMに限定されない。例えば、プログラムは、コンピュータが読み取ることができ、かつ、可搬型のコンピュータ読み取り可能な記録媒体(例えば、ディスクメディア、フラッシュメモリなど)に記憶されていてもよい。この場合、制御装置10は、コンピュータ読み取り可能な記録媒体からプログラムをダウンロードし、ダウンロードしたプログラムを実行する。言い換えると、設計支援装置100が動作回路のみを備え、プログラムを外部からダウンロードする構成であってもよい。
図2に示すように、制御装置10には、ユースケース生成部1と、機能要素特定部5と、記憶部6と、選定部7と、出力部8と、テストシナリオ生成部9が含まれる。これらのブロックは、ROMに確立されたソフトウェアによって、後述する各機能を実現する。
ユースケース生成部1は、車両の走行に関するユースケースを生成する。ユースケースとは、道路構造に対する車両の行動と、車両の行動に対する制約条件と、制約条件下での車両の行動を表した車両の走行パターンで構成される。一のユースケースでは、一の車両の行動、一の制約条件、及び一の車両の走行パターンが対応付けられている。ユースケースは、所定の制約条件下での理想的な車両の走行を定義した概念(走行モデルともいう)ともいえる。図2に示すように、ユースケース生成部1は、車両行動生成部2と、制約条件設定部3と、走行パターン生成部4を含む。
車両行動生成部2は、道路構造に対する車両の行動を生成する。本実施形態では、道路構造として車線を例に挙げて説明するが、道路構造は車線に限定されない。道路構造としては、例えば、車線、ガードレール、中央分離帯、縁石、路肩などが挙げられる。本実施形態に係る車両行動生成部2は、網羅的にユースケースを生成するために、車線に対する車両の行動を上位の概念で分類し、車線に対する車両の行動を生成する。
例えば、車両行動生成部2は、車線に対する車両の行動として、「車線維持」、「車線変更」、「車線を跨ぐ」、「車線分岐時の行動、車線合流時の行動(以下、総括して「車線分合流時の行動」と記載)」、「道路外へ出入り」、「駐車」という6つに分類する。なお、車両行動生成部2が分類する車両の行動の概念の大きさは特に限定されない。例えば、車両行動生成部2は、上記例で挙げた6つの車両の行動のうち「車線を跨ぐ」について、具体的にどのようにして車両が車線を跨ぐかでさらに分類することができる。例えば、車両行動生成部2は、「車線を跨ぐ」について、さらに「直進」、「運転席側に曲がる」、「助手席側に曲がる」に分類することができる。また例えば、車両行動生成部2は、上記の例で挙げた6つの車両の行動のうち「駐車」について、具体的な駐車の方法でさらに分類することができる。例えば、車両行動生成部2は、「駐車」について、さらに「前進駐車」、「後退駐車」に分類することができる。
制約条件設定部3は、車両行動生成部2で生成された車両の行動に対する制約条件を設定する。制約条件とは、車両の行動に対して課される条件(車両の行動を阻害する要因ともいう)である。制約条件設定部3は、車両行動生成部2で生成された車両の行動が複数存在する場合、車両の行動ごとに制約条件を設定する。
制約条件設定部3が設定する制約条件の数は特に限定されない。制約条件設定部3は、一の車両の行動に対して、一又は複数の制約条件を設定する。制約条件としては、例えば、環境属性に関する制約条件、道路属性に関する制約条件、物体属性に関する制約条件が挙げられる。制約条件設定部3は、環境属性、道路属性、物体属性のうち少なくとも何れか一つに基づき、制約条件を設定する。
環境属性に関する制約条件には、時間帯、天候などが含まれる。また道路属性に関する制約条件には、車線数、信号機の有無、距離の制約の有無などが含まれる。距離の制約の有無とは、車両が車線に沿って走行することに対して阻害する要因が存在するか否かのことである。また物体属性に関する制約条件には、物体の有無、物体の数、物体の状態、予測される物体の動きなどが含まれる。物体とは、車両と干渉する障害物又は車両と干渉する恐れがある障害物である。
走行パターン生成部4は、制約条件設定部3により設定された制約条件の下での車両の行動を表した車両の走行パターンを生成する。車両の行動とは、車両行動生成部2により生成された車両の行動である。車両の走行パターンとは、制約条件が課された状態での車両の行動が具体的にはどのような走行となるかを示したものである。走行パターン生成部4は、車両の行動という上位の概念を、制約条件下での具体的な車両の走行で表すことで、下位の概念に落とし込む。走行パターン生成部4は、一の制約条件に対して一の走行パターンを生成する。例えば、走行パターン生成部4は、制約条件設定部3により設定された所定の制約条件に基づき、車両の走行環境を構築する。そして、走行パターン生成部4は、構築された車両の走行環境下において、交通規則を遵守したうえで、車両が走行すべき経路を生成する。走行パターン生成部4は、生成された車両の経路を車両の走行パターンとして定義する。なお、走行パターン生成部4は、交通規則の他に、一般的なドライバーによる運転に従って、車両の経路を生成してもよい。例えば、ドライバーの運転モデルは、予め記憶装置に記憶されている。
図3を用いて、ユースケースについて説明する。図3は、ユースケースを説明するための図である。図3において、「A」部は車両行動生成部2により生成された車両の行動を示し、「B」部は制約条件設定部3により設定された制約条件を示し、「C」部は走行パターン生成部4により生成された車両の走行パターンを示す。なお、図3においては説明簡略化のために、車両の行動としての車線変更に対する制約条件を設定し、車線変更に対して設定した制約条件に対して走行パターンを生成する例を示しているが、実際には各車両の行動のそれぞれに対して制約条件が設定され、各車両の行動のそれぞれに対して設定された制約条件それぞれに対して走行パターンが設定される。
図3の例では、車両行動生成部2は、上記例で挙げた「車線維持」、「車線変更」、「車線を跨ぐ」、「車線分合流時の行動」、「道路外へ出入り」、「駐車」を上位概念での車両の行動として生成している。さらに車両行動生成部2は、「車線を跨ぐ」について、「直進」、「運転席側に曲がる」、「助手席側に曲がる」を下位概念での車両の行動として生成している。また車両行動生成部2は、「駐車」について、「前進駐車」、「後退駐車」を下位概念での車両の行動として生成している。
また図3の例では、制約条件設定部3は、「車線変更」という車両の行動に対して、車線数(「単一車線」又は「複数車線」)、信号機の有無(「信号機あり」又は「信号機なし」)、距離の制約の有無(「距離制約あり」又は「距離制約なし」)、障害物の有無(「障害物なし」、「単一障害物あり」、又は「複数障害物あり」)を制約条件として設定している。図3において、「B1」部は道路属性に関する制約条件を示し、「B2」部は物体属性に関する制約条件を示す。
また図3の例では、走行パターン生成部4は、「複数車線」、「信号機なし」、「距離制約あり」、及び「障害物なし」の制約条件下での「車線変更」を表した車両の走行パターンとして、車両の経路C1を生成している。車両の経路C1は、車両Vが走行する車線の幅員が減少するシーンで車両Vが車線変更するための経路である。また図3の例では、走行パターン生成部4は、「複数車線」、「信号機なし」、「距離制約あり」、及び「単一障害物あり」の制約条件下での「車線変更」を表した車両の走行パターンとして、車両の経路C2を生成している。車両の経路C2は、同一車線において車両Vの前方に駐車車両O1が存在するシーンで車両Vが車線変更するための経路である。また図3の例では、走行パターン生成部4は、「複数車線」、「信号機なし」、「距離制約あり」、及び「複数障害物あり」の制約条件下での「車線変更」を表した車両の走行パターンとして、車両の経路C3を生成している。車両の経路C3は、同一車線において車両Vの前方に駐車車両O1が存在し、かつ、隣接車線に並走車両O2が存在するシーンで車両Vが車線変更するための経路である。
ユースケース生成部1は、車両行動生成部2により生成された車両の行動、制約条件設定部3により設定された制約条件、及び走行パターン生成部4により生成された車両の走行パターンを対応付ける。ユースケース生成部1は、対応付けられた各種情報を一のユースケースとして生成する。図3の例では、ユースケース生成部1は、車両Vが走行する車線の幅員が減少するシーンと、当該シーンで車両Vが車線変更するための経路C1を対応付けて、ユースケースU1(以降、幅員減少時のユースケースU1ともいう)を生成する。また、ユースケース生成部1は、同一車線において車両Vの前方に駐車車両O1が存在するシーンと、当該シーンで車両Vが車線変更するための経路C2を対応付けて、ユースケースU2(以降、駐車車両回避時のユースケースU2ともいう)を生成する。また、ユースケース生成部1は、同一車線において車両Vの前方に駐車車両O1が存在し、かつ、隣接車線に並走車両O2が存在するシーンと、当該シーンで車両Vが車線変更するための経路C3を対応付けて、ユースケースU3(以降、駐車車両回避時に並走車両が存在するユースケースU3ともいう)を生成する。
図2に戻り、制御装置10が実現する機能について説明する。機能要素特定部5は、ユースケース生成部1により生成されたユースケースごとに、ユースケースを実現するために必要な機能要素を特定する。機能要素とは、自動運転車両が備える機能であって、ユースケースの実現に必要な機能である。なお、本実施形態では、機能要素は、予めリスト化されてROM等の記憶装置に記憶されている。
図4を用いて、車両の機能要素について説明する。図4は、機能要素とユースケースとの関係を示す図である。図4に示すユースケースU1~ユースケースU3は、図2に示すユースケースU1~ユースケースU3に対応する。
例えば、図4に示すように、機能要素として、「認識」及び「判断(経路生成)」が存在する場合、機能要素特定部5は、幅員減少時のユースケースU1を実現するためには、「幅員減少に対応した経路生成」の機能が必要と判定する。言い換えると、機能要素特定部5は、幅員が減少するシーンで自動運転車両が自動的又は自律的に車線変更するために必要な機能として、「幅員減少に対応した経路生成」を特定する。
また機能要素特定部5は、駐車車両回避時のユースケースU2を実現するためには、「駐車車両認識」及び「障害物に対する経路生成」の機能が必要と判定する。言い換えると、機能要素特定部5は、駐車車両を回避するシーンで字度運転車両が自動的又は自律的に車線変更するために必要な機能として、「駐車車両認識」及び「障害物に対する経路生成」を特定する。
また機能要素特定部5は、駐車車両回避時に並走車両が存在するユースケースU3を実現するためには、「駐車車両認識」、「並走車両認識」、「障害物に対する経路生成」、及び「並走車両を考慮した経路生成」の機能が必要と判定する。言い換えると、機能要素特定部5は、駐車車両回避時に並走車両が存在するシーンで自動運転車両が自動的又は自律的に車線変更するために必要な機能として、「駐車車両認識」、「並走車両認識」、「障害物に対する経路生成」、及び「並走車両を考慮した経路生成」を特定する。
機能要素特定部5は、ユースケースごとに、機能要素を特定する。なお、図4の例では、「認識」の機能要素は、「駐車車両」、「工事場所認識」、「並走車両認識」、「対向車両認識」に分けられ、「判断」の機能要素は、「幅員減少に対応した経路生成」、「障害物に対する経路生成」、「並走車両を考慮した経路生成」、「対向車両を考慮した経路生成」に分けられているが、機能要素の種別及び機能要素の数を特に限定するものではない。「認識」及び「判断」以外の機能要素が含まれていてもよいし、また「認識」及び「判断」の下位概念としてその他の要素が含まれていてもよい。
ここで、ユースケースと機能要素の関係について説明する。図4の例に示すように、機能要素の種別及び機能要素の数は、ユースケースごとに異なる。例えば、ユースケースU1を実現するための機能要素は1つ、ユースケースU2を実現するための機能要素は2つ、ユースケースU3を実現するための機能要素は4つである。また機能要素それぞれは、ユースケースによって重複する場合がある。例えば、「駐車車両認識」及び「障害物に対する経路生成」という機能要素は、ユースケースU2又はユースケースU3を実現するための機能要素であって、ユースケースU2及びユースケースU3で重複する機能要素である。本実施形態では、一のユースケースを実現するための少なくとも一つの機能要素は、他のユースケースを実現するための機能要素でもあるものとする。すなわち、本実施形態では、少なくとも一つの機能要素がユースケース間で重複しているものとする。
図4の例のように、機能要素によっては複数のユースケースで重複するため、例えば、全てのユースケースに対して機能要素の検証を行うと、検証の効率性が低下する場合がある。例えば、図4の例において、ユースケースU2に基づきテストシナリオを生成し、テストシナリオに従って、ユースケースU2を実現するための2つの機能要素を検証したとする。次に、ユースケースU3に基づきテストシナリオを生成し、テストシナリオに従って、ユースケースU3を実現するための4つの機能要素を検証したとする。この場合、ユースケースU2又はユースケースU3を実現するための「駐車車両認識」及び「障害物に対する経路生成」については、検証が重複して行われる。ユースケースU3に基づき、ユースケースU3を実現するための4つの機能要素を検証するだけで、ユースケースU2を実現するための2つの機能要素を検証できるにもかかわらず、検証が重複して行われ、検証の効率性が低下する。
本実施形態の設計支援装置100では、後述する選定部7によって、複数の代表ユースケースを選定し、検証の効率性を向上させることができる。上記の例を用いれば、設計支援装置100は、ユースケースU3を代表ユースケースとして選定する。本実施形態の設計支援装置100では、ユースケースU3を実現するための4つの機能要素の検証のみを行うことができ、検証が重複して行われることを防ぐことができる。特に市街地での自動運転車両の走行を検証する場合、多種多様な道路構造及び制約条件が存在するため、ユースケースの数は膨大になり、全てのユースケースを検証対象とすると、検証時間の長期化を招き、検証の効率が大きく低下する。そのような自動運転車両の検証においても、本実施形態に係る設計支援装置100を用いることで、検証結果に対する信頼性を維持したうえで、検証の効率性を向上させることができる。
図2に戻り、制御装置10が実現する機能について説明する。記憶部6は、ユースケース生成部1により生成されたユースケースごとに、ユースケースと、機能要素特定部5により特定された機能要素とを対応付けて記憶する。記憶部6は、ユースケースごとに機能要素の紐づけを行い、機能要素が対応付けられた複数のユースケースを記憶する。記憶部6として機能する装置は特に限定されず、記憶部6としては、例えば、データベースが挙げられる。
選定部7は、記憶部6に記憶された複数のユースケースから、複数の代表ユースケースを選定する。代表ユースケースとは、自動運転車両にとって検証すべきユースケースである。選定部7は、複数のユースケースから、代表ユースケースの一つを選定する選定処理を繰り返し実行することで、複数の代表ユースケースを選定する。
本実施形態では、選定部7は、複数のユースケースから、最も多くの機能要素で実現されるユースケースを代表ユースケースの一つとして選定する第1処理を実行する。また選定部7は、代表ユースケースを実現するための機能要素ではない機能要素を対象機能要素として特定し、最も多くの対象機能要素で実現されるユースケースを代表ユースケースの一つとして選定する第2処理を実行する。そして、選定部7は、所定条件が満たされるまで第2処理を繰り返し実行することで、複数の代表ユースケースを選定する。所定条件としては、例えば、対象機能要素が特定されない(対象機能要素が存在しない)、対象機能要素の数が所定数未満という条件挙げられる。所定数とは、第2処理の実行を終了するために予め設定された数値であり、かつ、検証結果に対する信頼性を確保することが可能な数値である。
図5A~図5Dを用いて、選定部7による複数の代表ユースケースの選定処理を説明する。図5A~図5Dは、本実施形態に係る選定部7が実行する選定処理を説明するための図である。図5A~図5Dに示すユースケースU1~ユースケースU3は、図3及び図4に示すユースケースU1~ユースケースU3に対応する。ユースケースU4は、同一車線において車両の前方に工事現場が存在するシーンと、当該シーンで車両が車線変更するための経路が対応付けられたユースケース(以降、工事場所回避のユースケースともいう)である。またユースケースU5は、同一車線において車両の前方に工事現場が存在し、かつ、隣接車線に対向車両が存在するシーンと、当該シーンで車両が車線変更するための経路が対応付けられたユースケース(以降、工事場所回避時に対向車両が存在するユースケースともいう)である。なお、機能要素は認識(A)及び判断(経路生成)(B)で構成される。認識(A)は、互いに異なる機能要素a1~機能要素a4を含み、判断(経路生成)(B)は、互いに異なる機能要素b1~機能要素b4を含む。説明の便宜上、各機能要素の説明については省略する。
選定部7は、ユースケースU1~ユースケースU5から、複数の代表ユースケースを選定する。まず、選定部7は、最も多くの機能要素で実現されるユースケースを代表ユースケースの一つとして選定する。例えば、選定部7は、ユースケースごとに機能要素数をカウントし、最も多くの機能要素で実現されるユースケースを代表ユースケースの一つとして選定する。図5Aでは、「機能要素数」の列は、ユースケースU1~ユースケースU5の機能要素数を示す。選定部7は、機能要素数が最も多いユースケースU3を代表ユースケースの一つとして選定する。図5Aの時点では、代表ユースケースは、ユースケースU3(代表ユースケース1)のみである。なお、図5Aの例では、機能要素数が最も多いユースケースとして、ユースケースU3の他にユースケースU5が存在するが、制御装置10は、機能要素数が最も多いユースケースU5を代表ユースケースの一つとして選定してもよい。
次に、選定部7は、代表ユースケースを実現するための機能要素ではない機能要素を、対象機能要素として特定する。図5Bでは、選定部7は、代表ユースケース(ユースケースU3)を実現するための機能要素(機能要素a1、a3、b2、b3)以外の機能要素(機能要素a2、a4、b1、b4)を対象機能要素として特定する。そして、選定部7は、ユースケースごとに対象機能要素の数をカウントし、最も多くの対象機能要素で実現されるユースケースを代表ユースケースの一つとして選定する。図5Bでは、「対象機能要素数」の列は、各ユースケースの対象機能要素数を示す。選定部7は、ユースケースU5を代表ユースケースの一つとして選定する。図5Bの時点では、代表ユースケースは、ユースケースU3(代表ユースケース1)及びユースケースU5(代表ユースケース2)である。なお、黒塗りの機能要素は、代表ユースケース(ユースケースU3)を実現するための機能要素であって、対象機能要素の対象から除外された機能要素である。
さらに、選定部7は、第2処理を繰り返し実行する。具体的に、選定部7は、代表ユースケースを実現するための機能要素ではない機能要素を、対象機能要素として特定する。図5Cでは、選定部7は、代表ユースケース(ユースケースU3、ユースケースU5)を実現するための機能要素(機能要素a1~a4、b2~b4)以外の機能要素(機能要素b1)を対象機能要素として特定する。そして、選定部7は、ユースケースごとに対象機能要素の数をカウントし、最も多くの対象機能要素で実現されるユースケースを代表ユースケースの一つとして選定する。図5Cでは、選定部7は、ユースケースU1を代表ユースケースの一つとして選定する。図5Cの時点では、代表ユースケースは、ユースケースU1(代表ユースケース3)、ユースケースU3(代表ユースケース1)、及びユースケースU5(代表ユースケース2)である。なお、黒塗りの機能要素は、代表ユースケース(ユースケースU3、ユースケースU5)を実現するための機能要素であって、対象機能要素の対象から除外された機能要素である。
本実施形態では、選定部7は、対象機能要素が特定されなくなるまで、既述の第2処理を繰り替えし実行する。図5Dは、対象機能要素が特定されないことを示す(対象機能要素数が「0」)。この場合、選定部7は、第2処理を終了させる。図5A~図5Dを用いた説明では、選定部7により、ユースケースU1、ユースケースU3、ユースケースU5がそれぞれ、代表ユースケース3、代表ユースケース1、代表ユースケース2として選定される。
図6A~図6Dは、本実施形態に係る選定部7が実行する選定処理を説明するための他の図である。図6A~図6Dは、図5A~図5Dに対して、機能要素に理解(C)が加わっている点で異なる。理解(C)は、互いに異なる機能要素c1及び機能要素c2を含む。機能要素c1は、例えば、「状態に基づく意図理解」であり、機能要素c2は、例えば、「リアクションに基づく意図理解」である。なお、説明の便宜上、符号で示した機能要素を用いて説明する。
選定部7は、ユースケースごとに機能要素数をカウントし、最も多くの機能要素で実現されるユースケースU3を代表ユースケースの一つして選定する(図6A)。次に、選定部7は、代表ユースケース(ユースケースU3)を実現するための機能要素(機能要素a1、a3、b2、b3、c2)以外の機能要素(機能要素a2、a4、b1、b4、c1)を対象機能要素として特定する。選定部7は、ユースケースごとに対象機能要素数をカウントし、最も多くの対象機能要素で実現されるユースケースU5を代表ユースケースの一つして選定する(図6B)。
さらに、選定部7は、代表ユースケース(ユースケースU3、ユースケースU5)を実現するための機能要素(機能要素a1~a4、b2~b4、c2)以外の機能要素(機能要素b1、c1)を対象機能要素として特定する。選定部7は、ユースケースごとに対象機能要素数をカウントし、最も多くの対象機能要素で実現されるユースケースU1を代表ユースケースの一つして選定する(図6C)。選定部7は、対象機能要素が存在しないと判定し、第2処理を終了させる(図6D)。図6A~図6Dを用いて説明したように、機能要素の種別が増えた場合であっても、選定部7は、複数の代表ユースケースを適切に選定することができる。言い換えると、選定部7は、機能要素の種別及び機能要素の数にかかわらず、複数の代表ユースケースを適切に選定することができる。
図2に戻り、制御装置10が実現する機能について説明する。出力部8は、自動運転車両にとって検証すべきユースケースとして、選定部7により選定された複数の代表ユースケースをテストシナリオ生成部9に出力する。例えば、道路構造に対する車両の行動と、車両の行動に対する制約条件と、制約条件下での車両の行動を表した車両の走行パターンをユースケース毎にリストとして出力する。
テストシナリオ生成部9は、出力部8から出力された代表ユースケースごとに、機能要素を検証するためのテストシナリオを生成する。テストシナリオは、機能要素を検証するために必要なテスト条件と、自動運転車両の実際の走行に対して想定される機能要素のアウトプット(期待値)で構成される。テストシナリオ生成部9は、代表ユースケースごとに、必要なテスト条件として上述した道路構造に対する車両の行動、制約条件を設定すると共に、例えば道路の曲率、車両の速度などの検証すべき道路環境に応じた詳細パラメータ及び期待値を設定してテストシナリオを生成する。具体的にはテストシナリオ生成部9は、代表ユースケースの一つとして図3におけるU2を選択した場合には、テスト条件としての車両の行動として「複数車線」を、制約条件として「信号機なし」、「距離制約あり」、及び「単一障害物あり」を設定する。また、検証すべき道路環境が高速道路である場合には詳細パラメータとして、車両の速度を日本国内の高速道路における制限速度50km/hから100km/hの間、道路構造令で定められた最小曲率半径である380mから最大曲率半径(無限大)の間の全域に渡って設定する。また、期待値として、設定した車両の車速に基づいて設計的に予め定められた障害物との最低距離を設定する。このように全ての代表ユースケースに対して、代表ユースケースごとにテスト条件、詳細パラメータ、及び期待値を設定してテストシナリオを生成する。テストシナリオ生成部9は、後段の検証システム(図示しない)にテストシナリオを出力する。検証システムでは、テストシナリオに従って、自動運転車両の機能要素の検証が行われる。
図7は、本実施形態の制御処理のフローを示す図である。図7に示す制御フローは、本実施形態に係る制御装置10によって実行される。
ステップS1では、制御装置10は、道路構造に対する車両の行動を生成する。例えば、制御装置10は、車線に対する車両の行動として、「車線維持」、「車線変更」、「車線を跨ぐ」、「車線分合流時の行動」、「道路外へ出入り」、及び「駐車」を生成する。また制御装置10は、各車両の行動を細分化することもできる。例えば、制御装置10は、「車線を跨ぐ」について、さらに「直進」、「運転席側に曲がる」、「助手席側に曲がる」に細分化する。また例えば、制御装置10は、「駐車」について、さらに「前進駐車」、「後退駐車」に細分化する。
ステップS2では、制御装置10は、ステップS1で生成された車両の行動ごとに、制約条件を設定する。制御装置10は、環境属性、道路属性、及び物体属性の少なくとも何れか一つに基づき、制約条件を設定する。例えば、制御装置10は、時間帯、天候などを、環境属性に関する制約条件として設定する。また例えば、制御装置10は、車線数、信号機の有無、距離の制約の有無などを、道路属性に関する制約条件として設定する。また例えば、制御装置10は、物体の有無、物体の数、物体の状態、予測される物体の動きなどを、物体に関する制約条件として設定する。
ステップS3では、制御装置10は、ステップS2で設定された制約条件下において、ステップS1で生成された車両の行動を表す車両の走行パターンを生成する。例えば、制御装置10は、「複数車線」、「信号機なし」、「距離制約あり」、及び「障害物なし」の制約条件下での「車線変更」を表した車両の走行パターンとして、車両が走行する車線の幅員が減少するシーンで車両が車線変更するための経路を生成する(図3参照)。
ステップS4では、制御装置10は、ステップS1~ステップS3での処理結果に基づき、ユースケースを生成する。制御装置10は、ステップS1で生成された車両の行動、ステップS2で設定された制約条件、及びステップS3で生成された車両の走行パターンを対応付けることで、ユースケースを生成する。例えば、制御装置10は、幅員減少時のユースケースを生成する(図3参照)。
ステップS5では、制御装置10は、ステップS1で生成した車両の行動の他に、車両の行動が存在するか否かを判定する。例えば、制御装置10は、ステップS1で車線に対する車両の行動を生成した場合、車線以外の道路構造に対する車両の行動の有無を判定する。他の車両の行動が存在しないと判定した場合、ステップS6進む。他の車両の行動が存在すると判定した場合、ステップS1に戻る。この場合、ステップS1~ステップS4の処理が繰り返され、新たなユースケースが生成される。このように、ステップS1~ステップS4の処理を繰り返し実行することで、自動運転車両の検証に必要とされる複数のユースケースを網羅的に生成することができる。
ステップS6では、制御装置10は、ステップS4で生成されたユースケースごとに、ユースケースを実現するための車両の機能要素を特定する。
ステップS7では、制御装置10は、ステップS4で生成されたユースケースと、ステップS6で特定された、当該ユースケースを実現するための車両の機能要素を対応付けてデータベース(記憶部6)に記憶させる。これにより、データベースは、ユースケースと車両の機能要素を対応付けた形式で、ユースケースごとに記憶する。
ステップS8では、制御装置10は、ステップS6で記憶した複数のユースケースから、複数の代表ユースケースを選定する。ステップS8に進むと、図8に示す選定処理のサブルーチンに進む。図8は、本実施形態に係る代表ユースケースの選定処理のフローを示す図である。
ステップS11では、制御装置10は、複数のユースケースから、最も多い機能要素で実現されるユースケースを、代表ユースケースの一つとして選定する。例えば、制御装置10は、ユースケースごとに機能要素数をカウントし、最も多い機能要素で実現される一のユースケースを特定する。制御装置10は、特定したユースケースを代表ユースケースとする。
ステップS12では、制御装置10は、ステップS11で選定した代表ユースケースを実現するための機能要素以外の機能要素を、対象機能要素として特定する。
ステップS13では、制御装置10は、ステップS12又はステップS14で特定した対象機能要素に基づき、複数のユースケースから、代表ユースケースの一つを選定する。制御装置10は、複数のユースケースから、最も多い対象機能要素で実現されるユースケースを、代表ユースケースの一つとして選定する。例えば、制御装置10は、ユースケースごとに対象機能要素数をカウントし、最も多い対象機能要素で実現される一のユースケースを特定する。制御装置10は、特定したユースケースを代表ユースケースとする。
ステップS14では、制御装置10は、ステップS11及びステップS13で選定した代表ユースケースを実現するための機能要素以外の機能要素を、対象機能要素として特定する。
ステップS15では、制御装置10は、選定処理を終了するための所定条件を満たしたか否かを判定する。所定条件としては、例えば、対象機能要素が特定されない、対象機能要素の数が所定数未満という条件挙げられる。所定数とは、第2処理の実行を終了するために予め設定された数値であり、かつ、検証結果に対する信頼性を確保することが可能な数値である。例えば、制御装置10は、ステップS14で対象機能要素が特定されない場合、所定条件を満たしたと判定する。肯定的な判定をした場合、図8に示すサブルーチンを抜け、図7に示すステップS9に進む。一方、例えば、制御装置10は、ステップS14で対象機能要素が特定された場合、所定条件を満たしていないと判定する。否定的な判定をした場合、ステップS13に戻る。この場合、ステップS13では、制御装置10は、ステップS14で特定された対象要素が最も多いユースケースを、代表ユースケースの一つとして選定する。このように、ステップS13及びステップS14の処理が繰り返し実行されるたびに、代表ユースケースの数が増え、複数の代表ユースケースが選定される。
ステップS15で肯定的な判定をした場合、図8に示すサブルーチンを抜け、図7に示すステップS9に進む。ステップS9では、制御装置10は、ステップS8で選定された複数の代表ユースケースに基づき、テストシナリオを生成する。制御装置10は、ユースケースごとにテストシナリオを生成する。ステップS9での処理が終了すると、制御装置10は、図7に示す制御処理を終了させる。
以上のように、本実施形態に係る設計支援装置100及び設計支援装置100による設計支援方法において、制御装置10は、道路構造に対する車両の行動、車両の行動に対する制約条件、及び、制約条件下での車両の行動を表した車両の走行パターンが対応付けられた複数のユースケースと、ユースケースを実現するための車両の機能要素を記憶する記憶部6から、ユースケースごとにユースケースを実現するための車両の機能要素を取得する。制御装置10は、ユースケースごとのユースケースを実現するための車両の機能要素に基づいて、最も多くの機能要素で実現されるユースケースを代表ユースケースの一つとして選定する第1処理を実行し、代表ユースケースを実現するための機能要素ではない機能要素を対象機能要素として特定し、最も多くの対象機能要素で実現されるユースケースを代表ユースケースの一つとして選定する第2処理を実行し、所定条件が満たされるまで第2処理を繰り返し実行することで、複数の代表ユースケースを選定する。制御装置10は、自動運転車両にとって検証すべきユースケースとして、複数の代表ユースケースを出力する。これにより、機能要素が重複したユースケースを検証に用いることを防ぐことができるため、検証時間の短縮化を図ることができ、検証の効率性を向上させることができる。また機能要素が重複していないユースケースを検証に用いることができるため、検証結果に対する信頼性を維持したまま、検証の効率性を向上させることができる。
また、本実施形態では、制御装置10は、自動車両にとって検証すべきユースケースごとに、車両の機能要素を検証するためのテストシナリオを生成する。代表ユースケースごとにテストシナリオが生成されるため、検証結果に対する信頼性を低下させることなく、テストシナリオの数を減らすことができ、検証の効率性を向上させることができる。
さらに、本実施形態では、制御装置10は、制約条件を、環境属性、道路属性、及び物体属性のうち少なくとも何れか一つに基づいて設定する。自動運転車両の検証において想定されるシーンを網羅したユースケースから、代表ユースケースを選定することができる。
≪第2実施形態≫
本発明の他の実施形態に係る設計支援装置について説明する。本実施形態では上述した第1実施形態に対して、選定部7による代表ユースケースの選定処理が異なる。これ以外の構成及び制御処理は上述した第1実施形態と同様であり、その記載を援用する。
本実施形態では、ユースケース生成部1により生成されたユースケースには、ユースケース生成部1により、ユースケースごとに影響度及び発生頻度が設定されており、選定部7は、影響度及び発生頻度に基づく優先順位に従い、複数の代表ユースケースを選定する。
ユースケースの影響度とは、車両の走行に対する影響度であって、予めユースケースごとに設定されている。影響度は、ユースケースを構成する走行パターンを車両が実現できない場合を想定して設定された値であり、例えば、交通規則への影響、障害物との干渉に応じて設定される。
例えば、ユースケース生成部1は、影響度を、ユースケースを構成する走行パターンを車両が実現できない場合に交通規則に則した走行の困難度合い(困難性ともいう)に応じて設定する。例えば、ユースケース生成部1は、ユースケースを構成する走行パターンを車両が実現できない場合において、交通規則に則した走行の困難度合いが高いときのユースケースの影響度を、交通規則に則した走行の困難度合いが低い(容易な)ときのユースケースの影響度よりも大きく設定する。ユースケースを構成する走行パターンを車両が実現できない場合に交通規則に則した走行が困難となるユースケースは、交通規則に則した走行が容易なユースケースよりも、影響度が大きく設定される。
また例えば、ユースケース生成部1は、影響度を、車両がユースケースを構成する走行パターンを実現できない場合に障害物と干渉する可能性が有るか否かに応じて設定する。例えば、ユースケース生成部1は、車両がユースケースを構成する走行パターンを実現できない場合において、車両が障害物と干渉する可能性が有るときのユースケースの影響度を、車両が障害物と干渉する可能性が無い(あるいは極めて低い)ときのユースケースの影響度よりも大きく設定する。ユースケースを構成する走行パターンを車両が実現できない場合に障害物と干渉するリスクを有するユースケースは、障害物と干渉するリスクを有さないユースケースよりも、影響度が大きく設定される。なお、上記の影響度の設定基準は一例であって、影響度の設定基準を限定するものではない。また影響度の表し方は特に限定されず、例えば、影響度は、数値、複数に区分けされたレベル(例えば、「大」、「中」、「小」)などで表される。
ユースケースの発生頻度とは、ユースケースが発生する頻度であって、予めユースケースごとに設定されている。例えば、ユースケース生成部1は、発生頻度を、ユースケースを構成する制約条件に応じて設定する。例えば、ユースケース生成部1は、車両の行動としては同じカテゴリに属するユースケースであっても、制約条件の数が少ないユースケースの発生頻度を、制約条件の数が多いユースケースの発生頻度よりも高く設定する。また例えば、ユースケース生成部1は、車両の行動としては同じカテゴリに属するユースケースであっても、発生確率が高い制約条件を含むユースケースの発生頻度を、発生確率が低い制約条件を含むユースケースの発生頻度よりも高く設定する。なお、上記の発生頻度の設定基準は一例であって、発生頻度の設定基準を限定するものではない。また発生頻度度の表し方は特に限定されず、例えば、発生頻度は、数値、複数に区分けされたレベル(例えば、「高」、「中」、「低」)などで表される。
影響度及び発生頻度に基づく代表ユースケースの選定処理について説明する。本実施形態に係る選定部7は、影響度が大きいユースケースほど、代表ユースケースとして優先して選定する。また本実施形態に係る選定部7は、発生頻度が高いユースケースほど、代表ユースケースとして優先して選定する。
例えば、選定部7は、ユースケースの影響度及び発生頻度に基づきユースケース生成部1により設定された優先順位に従って、優先順位が最も高い複数のユースケースを抽出する。次に選定部7は、抽出したユースケースを対象にして、第1実施形態で説明した代表ユースケースの選定処理を実行する。その後、選定部7は、優先順位が次に高い複数のユースケースを抽出する。そして、選定部7は、抽出したユースケースを対象にして、第1実施形態で説明した代表ユースケースの選定処理を実行する。このように、選定部7は、優先順位に基づくユースケースの抽出処理と、抽出したユースケースを対象として、第1実施形態で説明した代表ユースケースの選定処理とを繰り返し実行する。
ユースケース生成部1は、ユースケースの優先順位を、ユースケースの影響度及び発生頻度に基づき設定する。例えば、ユースケース生成部1は、ユースケースの影響度が大きいほど、優先順位が高くなるように、ユースケースごとに優先順位を設定する。また例えば、ユースケース生成部1は、ユースケースの発生頻度が高いほど、優先順位が高くなるように、ユースケースごとに優先順位を設定する。またユースケース生成部1は、影響度が発生頻度よりも優先されるように、ユースケースごとに優先順位を設定する。例えば、影響度が「大」、「小」で設定され、発生頻度が「高」、「中」、「低」で設定されている場合、「大」/「高」、「大」/「中」、「大」/「低」、「小」/「高」、「小」/「中」、「小」/「低」の組み合わせ順(影響度/発生頻度)に優先順位が高くなるように設定される。なお、優先順位の設定基準は一例であって、優先順位の設定基準を限定するものではない。
図9A~図9Fを用いて、選定部7による複数の代表ユースケースの選定処理を説明する。図9A~図9Fは、本実施形態に係る選定部7が実行する選定処理を説明するための図である。図9A~図9Fに示すユースケースU1~ユースケースU5と各ユースケースの機能要素は、図6A~図6Dに示すユースケースU1~ユースケースU5と各ユースケースの機能要素に対応する。各ユースケースには、影響度及び発生頻度が設定されている。
まず、選定部7は、複数のユースケースから、優先順位が高い複数のユースケースを選定する。図9Aでは、選定部7は、ユースケースU1~ユースケースU5から、影響度「大」/発生頻度「高」であるユースケースU2及びユースケースU3を抽出する。次に、選定部7は、抽出したユースケースU2及びユースケースU3を対象にして、第1実施形態で説明した代表ユースケースの選定処理を実行する。図9Aでは、選定部7は、ユースケースU2及びユースケースU3から、最も機能要素数が多いユースケースU3を代表ユースケースの一つとしてとして選定する。
次に、選定部7は、優先順位が次に高い複数のユースケースを抽出する。図9Aでは、選定部7は、ユースケースU1~ユースケースU5から、影響度「大」/発生頻度「中」であるユースケースU1を抽出する。選定部7は、既に抽出したユースケースU2及びユースケースU3と、新たに抽出したユースケースU1を対象にして、第1実施形態で説明した代表ユースケースの選定処理を実行する。選定部7は、代表ユースケースを実現するための機能要素ではない機能要素を、対象機能要素として特定する。図9Bでは、選定部7は、代表ユースケース(ユースケースU3)を実現するための機能要素(機能要素a1、a3、b2、b3、c2)以外の機能要素(機能要素a2、a4、b1、b4、c1)を対象機能要素として特定する。そして、選定部7は、抽出したユースケースごとに対象機能要素の数をカウントし、最も多くの対象機能要素で実現されるユースケースを代表ユースケースの一つとして選定する。図9Cでは、選定部7は、ユースケースU1を代表ユースケースの一つとして選定する。
さらに、選定部7は、優先順位が次に高い複数のユースケースを抽出する。図9Dでは、選定部7は、ユースケースU1~ユースケースU5から、影響度「大」/発生頻度「低」であるユースケースU4及びユースケースU5を抽出する。選定部7は、既に抽出したユースケースU1~ユースケースU3と、新たに抽出したユースケースU4及びユースケースU5を対象にして、第1実施形態で説明した代表ユースケースの選定処理を実行する。選定部7は、代表ユースケースを実現するための機能要素ではない機能要素を、対象機能要素として特定する。図9Dでは、選定部7は、代表ユースケース(ユースケースU1、ユースケースU3)を実現するための機能要素(機能要素a1、a3、b1~b3、c2)以外の機能要素(機能要素a2、a4、b4、c1)を対象機能要素として特定する。そして、選定部7は、抽出したユースケースごとに対象機能要素の数をカウントし、最も多くの対象機能要素で実現されるユースケースを代表ユースケースの一つとして選定する。図9Dでは、選定部7は、ユースケースU5を代表ユースケースの一つとして選定する。そして、選定部7は、対象機能要素が存在しないと判定し、第2処理を終了させる(図9E)。
上述の第1実施形態での図6A~図6Dを用いた説明では、ユースケースU1は代表ユースケース3(3番目に選定された代表ユースケース)であり、ユースケースU3は代表ユースケース2(2番目に選定された代表ユースケース)であった。本実施形態では、ユースケースU1は代表ユースケース2(2番目に選定された代表ユースケース)であり、ユースケースU3は代表ユースケース3(3番目に選定された代表ユースケース)であり、代表ユースケースとして選定された順序が異なる。本実施系形態では、影響度及び発生頻度に基づく優先順位に従って、優先順位が高いユースケースほど、すなわち、検証の必要性が高いユースケースほど、代表ユースケースとして選定することができる。
図10は、本実施形態に係る代表ユースケースの選定処理のフローを示す図である。図10に示す制御フローは、第1実施形態での図7に示すステップS8のサブルーチンである。図10に示す制御フローは、本実施形態に係る制御装置10によって実行される。
ステップS21では、制御装置10は、複数のユースケースから、影響度が所定値以上のユースケースを抽出する。所定値は、予め定められた値、又は後述するステップS28で設定された値である。図7に示すステップS7からステップS1に進んだ場合、制御装置10は、複数のユースケースから、影響度が予め定められた値以上のユースケースを抽出する。一方、ステップS29からステップS1に進んだ場合、制御装置10は、複数のユースケースから、影響度がステップS28で設定された値以上のユースケースを抽出する。なお、このステップでは、制御装置10は、所定値の代わりに、所定ランクを用いてもよい。例えば、制御装置10は、複数のユースケースから、影響度が所定ランクよりも高いユースケースを抽出してもよい。
ステップS22では、制御装置10は、複数のユースケースから、発生頻度が所定値以上のユースケースを抽出する。所定値は予め定められた値、又は後述するステップS28で設定された値である。図7に示すステップS7からステップS1を経てステップS2に進んだ場合、制御装置10は、複数のユースケースから、発生頻度が予め定められた値以上のユースケースを抽出する。一方、ステップS29からステップS1を経てステップS2に進んだ場合、制御装置10は、複数のユースケースから、発生頻度がステップS28で設定された値以上のユースケースを抽出する。なお、このステップでは、制御装置10は、所定値の代わりに、所定ランクを用いてもよい。例えば、制御装置10は、複数のユースケースから、発生頻度が所定ランクよりも高いユースケースを抽出してもよい。
ステップS23では、制御装置10は、代表ユースケースを選定済みであるか否かを判定する。制御装置10は、ステップS24の処理を実行していない場合、代表ユースケースを選定していないと判定する。この場合、ステップS24に進む。一方、制御装置10は、ステップS24の処理を一又は複数回実行している場合、代表ユースケースを選定していると判定する。この場合、ステップS25に進む。
ステップS23で否定的な判定をした場合、ステップS24に進む。ステップS24では、制御装置10は、ステップS21及びステップS22で抽出された一又は複数のユースケースから、最も多い機能要素で実現されるユースケースを、代表ユースケースの一つとして選定する。
ステップS25では、制御装置10は、ステップS24で選定した代表ユースケースを実現するための機能要素以外の機能要素を、対象機能要素として特定する。このステップは、図8に示すステップS12に対応する。
ステップS26では、制御装置10は、ステップS25で又はステップS27で特定した対象機能要素に基づき、複数のユースケースから、代表ユースケースの一つを選定する。制御装置10は、複数のユースケースから、最も多い対象機能要素で実現されるユースケースを、代表ユースケースの一つとして選定する。このステップは、図8に示すステップS13に対応する。
ステップS27では、制御装置10は、ステップS24及びステップS26で選定した代表ユースケースを実現するための機能要素以外の機能要素を、対象機能要素として特定する。このステップは、図8に示すステップS14に対応する。
ステップS28では、制御装置10は、選定処理を終了するための所定条件を満たしたか否かを判定する。所定条件としては、例えば、対象機能要素が特定されない(対象機能要素が存在しない)、対象機能要素の数が所定数未満という条件挙げられる。例えば、制御装置10は、ステップS27で対象機能要素が特定されない場合、所定条件を満たしたと判定する。肯定的な判定をした場合、ステップS29に進む。一方、例えば、制御装置10は、ステップS27で対象機能要素が特定された場合、所定条件を満たしていないと判定する。否定的な判定をした場合、ステップS26に戻る。この場合、ステップS26では、制御装置10は、ステップS27で特定された対象要素が最も多いユースケースを、代表ユースケースの一つとして選定する。
ステップS28で肯定的な判定をした場合、ステップS29に進む。ステップS29では、制御装置10は、ステップS21及びステップS22でのユースケースの抽出処理における抽出条件を変更する。例えば、制御装置10は、影響度の抽出条件である所定値を低く設定する、又はランクを下げて設定する。また例えば、制御装置10は、発生頻度度の抽出条件である所定値を低く設定する、又はランクを下げて設定する。
ステップS30では、制御装置10は、ステップS21及びステップS22でのユースケースの抽出処理における抽出条件について、他の条件があるか否かを判定する。他の条件とは、既に用いた抽出条件以外の条件である。抽出条件として他の条件が存在しないと判定した場合、図10に示すサブルーチンを抜け、図7に示すステップS9に進む。一方、抽出条件として他の条件が存在すると判定した場合、ステップS21に戻る。この場合、ステップS21及びステップS22では、制御装置10は、ステップS29で変更された抽出条件に従い、ユースケースを抽出する。そして、代表ユースケースの選定処理が繰り返し実行される。
以上のように、本実施形態では、制御装置10は、複数のユースケースに対し、ユースケースごとに車両の走行に対する影響度を設定し、影響度が大きいユースケースほど、代表ユースケースとして優先して選定する。これにより、車両の走行に対して影響が高いユースケースほど優先して代表ユースケースとして選定されるため、例えば、代表ユースケースが選定される度にテストシナリオを生成して検証を行った場合、優先順位が高い検証ほど早期に実施することができる。その結果、検証結果に対するデバッグ作業を早期に実施することができ、検証の効率性を向上させることができる。
また、本実施形態では、制御装置10は、車両がユースケースを構成する走行パターンを実現できない場合において、交通規則に則した走行の困難度合いが高いときのユースケースの影響度を、交通規則に則した走行が容易なユースケースの影響度よりも大きく設定する。ユースケースを構成する走行パターンを車両が実現できない場合に、交通規則に則した走行が困難となるか否かを考慮したうえで、代表ユースケースを選定することができる。上記の困難度合いが高いユースケースほど優先的に代表ユースケースとして選定されるため、優先順位が高い検証ほど早期に実施することができる。
さらに、本実施形態では、制御装置10は、車両がユースケースを構成する走行パターンを実現できない場合において、車両が障害物と干渉する可能性が有るときのユースケースの影響度を、車両が障害物と干渉する可能性が無いときのユースケースの影響度よりも大きく設定する。ユースケースを構成する走行パターンを車両が実現できない場合の障害物との干渉というリスクを考慮したうえで、代表ユースケースを選定することができる。上記のリスクが高いユースケースほど優先的に代表ユースケースとして選定されるため、優先順位が高い検証ほど早期に実施することができる。
加えて、本実施形態では、制御装置10は、複数のユースケースに対し、ユースケースごとに発生頻度を設定し、発生頻度が高いユースケースほど、代表ユースケースとして優先して選定する。発生頻度が高く優先順位が高い検証ほど早期に実施するとができる。
なお、以上に説明した実施形態は、本発明の理解を容易にするために記載されたものであって、本発明を限定するために記載されたものではない。したがって、上記の実施形態に開示された各要素は、本発明の技術的範囲に属する全ての設計変更や均等物をも含む趣旨である。
例えば、上述の実施形態では、制御装置10がユースケース生成部1及び機能要素特定部5を備える構成を例に挙げたが、制御装置10とは別の装置又はシステムがユースケース生成部1及び機能要素特定部5と同様の機能を備える構成であってもよい。この場合、これらの装置又はシステムは、制御装置10の記憶部6にユースケース及び機能要素を対応付けて記憶させる。また、上述の実施形態では、制御装置10がテストシナリオ生成部9を備える構成を例に挙げたが、制御装置10とは別の装置又はシステムがテストシナリオ生成部9と同様の機能を備える構成であってもよい。この場合、制御装置10は、出力部8により複数の代表ユースケースを別の装置又はシステムに出力する。
また例えば、上述の実施形態では、制御装置10が記憶部6を備える構成を例に挙げたが、制御装置10が記憶部6を備えることに限定されない。例えば、制御装置10とは別に記憶部6として機能するデータベースが存在する場合、制御装置10はこのデータベースから、ユースケースを実現するための車両の機能要素をユースケースごとに取得してもよい。この際に、制御装置10は、複数のユースケースも取得してもよい。例えば、制御装置10が実行する制御フローには、図7に示すステップS1~ステップS7に代えて、ユースケースごとに車両の機能要素を取得するステップが存在する。例えば、図8に示す代表ユースケースの選定処理が行われる前のステップにおいて、制御装置10は、データベースから、ユースケースごとに車両の機能要素を取得する。またこのステップにおいて、制御装置10は、データベースから、複数のユースケースも取得してもよい。