JP7465147B2 - Vehicle control device, server, verification system - Google Patents

Vehicle control device, server, verification system Download PDF

Info

Publication number
JP7465147B2
JP7465147B2 JP2020084293A JP2020084293A JP7465147B2 JP 7465147 B2 JP7465147 B2 JP 7465147B2 JP 2020084293 A JP2020084293 A JP 2020084293A JP 2020084293 A JP2020084293 A JP 2020084293A JP 7465147 B2 JP7465147 B2 JP 7465147B2
Authority
JP
Japan
Prior art keywords
verification
vehicle
application program
driving environment
information
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.)
Active
Application number
JP2020084293A
Other languages
Japanese (ja)
Other versions
JP2021179762A (en
Inventor
雄介 宇治土公
勇樹 堀田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Astemo Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Astemo Ltd filed Critical Hitachi Astemo Ltd
Priority to JP2020084293A priority Critical patent/JP7465147B2/en
Priority to PCT/JP2021/003606 priority patent/WO2021229861A1/en
Priority to DE112021001592.3T priority patent/DE112021001592T5/en
Publication of JP2021179762A publication Critical patent/JP2021179762A/en
Application granted granted Critical
Publication of JP7465147B2 publication Critical patent/JP7465147B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable

Landscapes

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

Description

本発明は、車載制御装置、サーバ、および検証システムに関する。 The present invention relates to an on-board control device, a server, and a verification system.

自動運転を実現する制御アプリケーションは、車両の周辺の多様な情報である車両周辺環境データに対して正しく動作するよう検証する必要がある。車両周辺環境データとは、車両の周辺に存在する障害物の情報や、車両の周辺における道路の特徴を示す特徴物等の情報等である。将来的には自動運転車が普及すると見込まれるため、自動運転中に得られる車両周辺環境データを用いて検証を行うことが考えられる。しかし自動運転中には、自動運転のアプリケーション処理でCPUリソースが使用されるため、検証に対して用いることが可能なCPUリソースが限られている。CPUリソースが限られている中にあっても、効率的にアプリケーションの検証を行う必要を行うことが求められる。特許文献1には車載情報システムのハードウエア環境およびソフトウェア環境をエミュレートするエミュレート手段と、車載情報システム用に開発されたプログラムを受け取るプログラム受信手段と、車載情報システムのリソース状態および環境状態を制約条件として保持する制約条件保持手段と、前記制約条件保持手段に保持された制約条件に基づいて前記プログラムの動作を制限するプログラム実行制限手段と、前記エミュレート手段によって提供されるリソースを用いて、前記プログラム受信手段から受け取ったプログラムを、前記プログラム実行制限手段による制限にしたがって実行するプログラム実行手段とを備えたプログラム提供装置が開示されている。 Control applications that realize autonomous driving need to be verified to ensure that they operate correctly with respect to vehicle surroundings data, which is a variety of information about the vehicle's surroundings. Vehicle surroundings data includes information about obstacles around the vehicle and information about features that indicate the characteristics of the roads around the vehicle. Since autonomous vehicles are expected to become more widespread in the future, it is conceivable that verification will be performed using vehicle surroundings data obtained during autonomous driving. However, during autonomous driving, CPU resources are used to process autonomous driving applications, so the CPU resources available for verification are limited. Even with limited CPU resources, it is necessary to efficiently verify applications. Patent Document 1 discloses a program providing device that includes an emulation means for emulating the hardware and software environments of an in-vehicle information system, a program receiving means for receiving a program developed for the in-vehicle information system, a constraint condition storage means for storing the resource and environmental conditions of the in-vehicle information system as constraint conditions, a program execution restriction means for restricting the operation of the program based on the constraint conditions stored in the constraint condition storage means, and a program execution means for executing the program received from the program receiving means using the resources provided by the emulation means in accordance with the restrictions imposed by the program execution restriction means.

特開2011-146068号公報JP 2011-146068 A

特許文献1に記載されている発明では、複数の検証アプリケーションプログラムの検証において改善の余地がある。 The invention described in Patent Document 1 leaves room for improvement in the verification of multiple verification application programs.

本発明の第1の態様における車載制御装置は、車両に搭載される車載制御装置であって、前記車両の走行制御に関する基本アプリケーションプログラムは異なる複数の検証アプリケーションプログラム、前記検証アプリケーションプログラムを検証する前記車両に関する条件である走行環境条件、および前記検証アプリケーションプログラムと前記走行環境条件の組に対する検証優先度を含む検証計画情報と前記基本アプリケーションプログラムとを格納する車載記憶部と、前記基本アプリケーションプログラムおよび前記検証アプリケーションプログラムを実行可能なCPUと、前記走行環境条件および前記検証優先度に基づき、前記検証アプリケーションプログラムの検証の実行を制御する検証実行制御部と、を備え、前記検証計画情報には、前記検証アプリケーションプログラムおよび前記走行環境条件の組み合わせ毎に前記検証優先度が格納され、前記検証実行制御部は、前記走行環境条件が満たされた前記検証アプリケーションプログラムのうち前記検証優先度が高い検証アプリケーションプログラムほど優先して検証する。
本発明の第2の態様におけるサーバは、車両と通信可能なサーバであって、前記車両において検証されるアプリケーションプログラムである検証アプリケーションプログラム、および前記検証アプリケーションプログラムを検証する前記車両に関する条件である走行環境条件を格納するサーバ記憶部と、前記車両から取得した車両情報基づき前記検証アプリケーションプログラムと前記走行環境条件の組に対する検証優先度を決定し、前記走行環境条件と、前記検証アプリケーションプログラムと、前記検証優先度と、を含む検証計画情報を生成する検証計画情報生成部と、前記検証計画情報を前記車両に出力する検証計画情報出力部と、を備え前記車両情報は、前記車両において実行された前記検証アプリケーションプログラムの検証結果を含み、前記検証計画情報生成部は、前記検証アプリケーションプログラムの検証結果に基づき前記検証アプリケーションプログラムに関する検証の進捗を示す検証進捗情報を更新し、前記検証進捗情報に基づいて前記検証アプリケーションプログラムと前記走行環境条件の組に対する前記検証優先度を決定する。
本発明の第3の態様におけるサーバは、車両と通信可能なサーバであって、前記車両において検証されるアプリケーションプログラムである検証アプリケーションプログラム、および前記検証アプリケーションプログラムを検証する前記車両に関する条件である走行環境条件を格納するサーバ記憶部と、前記車両から取得した車両情報に基づき前記検証アプリケーションプログラムと前記走行環境条件の組に対する検証優先度を決定し、前記走行環境条件と、前記検証アプリケーションプログラムと、前記検証優先度と、を含む検証計画情報を生成する検証計画情報生成部と、前記検証計画情報を前記車両に出力する検証計画情報出力部と、前記車両情報に基づき、前記車両の走行環境が前記検証計画情報に含まれる走行環境条件に合致するタイミングを予測する走行環境条件成立予測部と、をさらに備え、前記検証計画情報生成部は、前記予測したタイミングに基づき、前記検証アプリケーションプログラムと前記走行環境条件の組に対する前記検証優先度を決定する。
本発明の第4の態様における検証システムは、車両に搭載される車載制御装置および前記車載制御装置と通信可能なサーバを含む、検証システムであって、前記サーバは、前記車両において検証されるアプリケーションプログラムである検証アプリケーションプログラム、および前記検証アプリケーションプログラムを検証する車両に関する条件である走行環境条件を格納するサーバ記憶部と、前記車両から取得した車両情報基づき前記検証アプリケーションプログラム前記走行環境条件の組に対する検証優先度を決定し、前記走行環境条件と、前記検証アプリケーションプログラムと、前記検証優先度と、を含む検証計画情報を生成する検証計画情報生成部と、前記検証計画情報を前記車両に出力する検証計画情報出力部と、を備え、前記車載制御装置は、前記サーバが出力した前記検証計画情報を取得する検証計画情報取得部と、
前記車両の走行制御に関する基本アプリケーションプログラムと並行して、前記検証アプリケーションプログラムの検証の実行を前記走行環境条件と前記検証優先度に基づき制御する検証実行制御部と、を備え、前記車両情報は、前記車両において実行された前記検証アプリケーションプログラムの検証結果を含み、前記検証計画情報生成部は、前記検証アプリケーションプログラムの検証結果に基づき前記検証アプリケーションプログラムに関する検証の進捗を示す検証進捗情報を更新し、前記検証進捗情報に基づいて前記検証アプリケーションプログラムと前記走行環境条件の組に対する前記検証優先度を決定する
本発明の第5の態様における検証システムは、車両に搭載される車載制御装置および前記車載制御装置と通信可能なサーバを含む、検証システムであって、前記サーバは、前記車両において検証されるアプリケーションプログラムである検証アプリケーションプログラム、および前記検証アプリケーションプログラムを検証する車両に関する条件である走行環境条件を格納するサーバ記憶部と、前記車両から取得した車両情報基づき前記検証アプリケーションプログラム前記走行環境条件の組に対する検証優先度を決定し、前記走行環境条件と、前記検証アプリケーションプログラムと、前記検証優先度と、を含む検証計画情報を生成する検証計画情報生成部と、前記検証計画情報を前記車両に出力する検証計画情報出力部と、前記車両情報に基づき、前記車両の走行環境が前記検証計画情報に含まれる走行環境条件に合致するタイミングを予測する走行環境条件成立予測部と、を備え、前記車載制御装置は、前記サーバが出力した前記検証計画情報を取得する検証計画情報取得部と、前記車両の走行制御に関する基本アプリケーションプログラムと並行して、前記検証アプリケーションプログラムの検証の実行を前記走行環境条件と前記検証優先度に基づき制御する検証実行制御部と、を備え、前記検証計画情報生成部は、前記予測したタイミングに基づき、前記検証アプリケーションプログラムと前記走行環境条件の組に対する前記検証優先度を決定する
The in-vehicle control device in a first aspect of the present invention is an in-vehicle control device mounted on a vehicle, and comprises an in-vehicle memory unit that stores a plurality of verification application programs different from a basic application program related to driving control of the vehicle, verification plan information including driving environment conditions that are conditions related to the vehicle for verifying the verification application programs , and verification priorities for pairs of the verification application programs and the driving environment conditions, and the basic application programs, a CPU capable of executing the basic application programs and the verification application programs, and a verification execution control unit that controls the execution of verification of the verification application programs based on the driving environment conditions and the verification priorities, wherein the verification plan information stores the verification priority for each combination of the verification application program and the driving environment conditions, and the verification execution control unit prioritizes verification of verification application programs with higher verification priorities among the verification application programs for which the driving environment conditions are satisfied .
A server in a second aspect of the present invention is a server capable of communicating with a vehicle, and includes a server memory unit that stores a verification application program, which is an application program to be verified in the vehicle, and driving environment conditions, which are conditions related to the vehicle for verifying the verification application program , a verification plan information generation unit that determines a verification priority for a set of the verification application program and the driving environment conditions based on vehicle information acquired from the vehicle, and generates verification plan information including the driving environment conditions, the verification application program, and the verification priority, and a verification plan information output unit that outputs the verification plan information to the vehicle, wherein the vehicle information includes verification results of the verification application program executed in the vehicle, and the verification plan information generation unit updates verification progress information indicating the progress of verification related to the verification application program based on the verification results of the verification application program, and determines the verification priority for the set of the verification application program and the driving environment conditions based on the verification progress information.
A server in a third aspect of the present invention is a server capable of communicating with a vehicle, and further includes a server memory unit that stores a verification application program, which is an application program to be verified in the vehicle, and driving environment conditions, which are conditions related to the vehicle for verifying the verification application program, a verification plan information generation unit that determines a verification priority for a pair of the verification application program and the driving environment conditions based on vehicle information acquired from the vehicle, and generates verification plan information including the driving environment conditions, the verification application program, and the verification priority, a verification plan information output unit that outputs the verification plan information to the vehicle, and a driving environment condition establishment prediction unit that predicts, based on the vehicle information , the timing when the driving environment of the vehicle will match the driving environment conditions included in the verification plan information, and the verification plan information generation unit determines the verification priority for the pair of the verification application program and the driving environment conditions based on the predicted timing.
A verification system according to a fourth aspect of the present invention includes an on-board control device mounted on a vehicle and a server capable of communicating with the on-board control device, the server including: a server storage unit that stores a verification application program, which is an application program to be verified in the vehicle, and driving environment conditions, which are conditions related to the vehicle for verifying the verification application program; a verification plan information generation unit that determines a verification priority for a pair of the verification application program and the driving environment conditions based on vehicle information acquired from the vehicle, and generates verification plan information including the driving environment conditions, the verification application program, and the verification priority; and a verification plan information output unit that outputs the verification plan information to the vehicle, the on-board control device including: a verification plan information acquisition unit that acquires the verification plan information output by the server;
a verification execution control unit that controls the execution of verification of the verification application program based on the driving environment conditions and the verification priority in parallel with a basic application program related to driving control of the vehicle, wherein the vehicle information includes verification results of the verification application program executed in the vehicle, and the verification plan information generation unit updates verification progress information indicating the progress of verification of the verification application program based on the verification results of the verification application program, and determines the verification priority for a pair of the verification application program and the driving environment conditions based on the verification progress information .
A verification system according to a fifth aspect of the present invention includes an on-board control device mounted on a vehicle and a server capable of communicating with the on-board control device, the server including a server storage unit that stores a verification application program, which is an application program to be verified in the vehicle, and driving environment conditions, which are conditions related to the vehicle for verifying the verification application program; a verification plan information generation unit that determines a verification priority for a pair of the verification application program and the driving environment conditions based on vehicle information acquired from the vehicle, and generates verification plan information including the driving environment conditions, the verification application program, and the verification priority; the vehicle control device comprises a verification plan information output unit that outputs verification plan information to the vehicle, and a driving environment condition establishment prediction unit that predicts, based on the vehicle information, the timing when the vehicle's driving environment will match the driving environment conditions included in the verification plan information; the on-board control device comprises a verification plan information acquisition unit that acquires the verification plan information output by the server, and a verification execution control unit that controls the execution of verification of the verification application program based on the driving environment conditions and the verification priority in parallel with a basic application program related to driving control of the vehicle; and the verification plan information generation unit determines the verification priority for a pair of the verification application program and the driving environment conditions based on the predicted timing .

本発明によれば、複数の検証アプリケーションプログラムを効率よく検証できる。 The present invention allows multiple verification application programs to be verified efficiently.

検証システムのブロック図Verification system block diagram 車両のブロック図Vehicle Block Diagram データの流れを示す図Data flow diagram 走行環境条件の一例を示す図FIG. 1 shows an example of driving environment conditions. 検証計画情報の一例を示す図A diagram showing an example of verification plan information 予測情報の一例を示す図FIG. 13 is a diagram showing an example of prediction information. 検証実行スケジュールの定義処理を示すフローチャートFlowchart showing the process of defining a verification execution schedule 進捗情報の一例を示す図A diagram showing an example of progress information 検証計画情報の生成処理を示すフローチャートFlowchart showing verification plan information generation processing

自動運転を実現する制御アプリケーションは、車両の周辺の多様な車両周辺環境データに対して正しく動作する必要がある。アプリケーションの正常動作確認を担保するため、アプリケーション開発中に、車両周辺環境データを入力とした検証を行う必要がある。検証に用いる車両周辺環境データを用意する方法としては、実車を使い車両周辺環境データを収集することや、シミュレータを用いて人工的に生成することが挙げられる。車両周辺環境データとしては、歩行者、車両、道路状況、天候をはじめとして、実世界の多様な状況を想定する必要があり、そのような車両周辺環境データをシミュレータだけで網羅的に模擬するのは一般的に困難とされている。そのため、実際の車両において走行中に得られる車両周辺環境データを活用しての検証は欠かせないと考えられている。 Control applications that realize autonomous driving need to operate correctly with respect to a variety of vehicle surroundings data. To ensure that applications operate normally, verification using vehicle surroundings data as input is required during application development. Methods for preparing vehicle surroundings data for verification include collecting vehicle surroundings data using an actual vehicle, or artificially generating the data using a simulator. Vehicle surroundings data needs to assume a variety of real-world conditions, including pedestrians, vehicles, road conditions, and weather, and it is generally considered difficult to comprehensively simulate such vehicle surroundings data using a simulator alone. For this reason, verification using vehicle surroundings data obtained while the actual vehicle is running is considered essential.

実車において収集したデータを活用する検証タイミングとして、リアルタイムに検証するオンライン検証と、ログデータをデータセンタ側に送って、データセンタ側でアプリケーションの検証を行うオフライン検証の2通り存在する。オフライン検証では、アプリケーションの検証に用いるデータをデータセンタ側に送る際の、データ量が膨大であり通信負荷が大きいことが欠点としてあるため、本発明では、オンライン検証を扱う。 There are two types of verification timing that utilize data collected in an actual vehicle: online verification, which is performed in real time, and offline verification, in which log data is sent to a data center and the application is verified there. A drawback of offline verification is that when sending data used to verify the application to the data center, the amount of data is huge, resulting in a large communication load. Therefore, this invention deals with online verification.

オンライン検証の場合にも、実車走行が手動運転されている場合と自動運転となっている場合で、検証の課題が異なる。人が運転する手動運転の場合は、検証に対して用いることができる余剰のCPUリソースが潤沢にある。一方で自動運転の場合は、自動運転のアプリケーション処理でCPUリソースが使用されるため、検証に対して用いられるCPUリソースが手動運転時に比べ小さい。将来的には自動運転車が普及すると見込まれるため、この自動運転中に得られる車両周辺環境データを用いて、CPUリソースが小さい中にあっても、効率的にアプリケーションの検証を行う必要がある。本形態では、車載制御装置上で複数のアプリケーションの複数の走行環境条件において検証のスケジュールを制御する技術を説明する。 Even in the case of online verification, the verification challenges differ depending on whether the actual vehicle is being driven manually or autonomously. When the vehicle is being driven manually by a human, there are ample surplus CPU resources that can be used for verification. On the other hand, in the case of autonomous driving, CPU resources are used for autonomous driving application processing, so the CPU resources used for verification are smaller than in manual driving. Since autonomous vehicles are expected to become more common in the future, it is necessary to efficiently verify applications even with limited CPU resources, using vehicle surrounding environment data obtained during autonomous driving. In this embodiment, a technology is described that controls the verification schedule for multiple applications under multiple driving environment conditions on an on-board control device.

以下、図面を参照して、車両群を跨いで検証を管理する検証管理サーバと演算装置である車載制御装置からなる検証システムの実施の形態を説明する。なお、本実施形態では、本発明の適用先の車載制御装置の一例として、先進運転支援システム(ADAS:Advanced Driver Assistance Systems)や自動運転システムにおいて車両の運転支援又は走行制御を処理する装置を扱うが、これに限らず他のシステムであってもよい。 Below, with reference to the drawings, an embodiment of a verification system consisting of a verification management server that manages verification across a fleet of vehicles and an on-board control device that is a computing device will be described. Note that in this embodiment, as an example of an on-board control device to which the present invention is applied, a device that processes driving assistance or driving control of a vehicle in an advanced driver assistance system (ADAS) or an autonomous driving system is treated, but the present invention is not limited to this and may be other systems.

―第1の実施の形態―
以下、図1~図9を参照して、検証システムの第1の実施の形態を説明する。
-First embodiment-
A first embodiment of a verification system will be described below with reference to FIGS.

(システム構成)
図1は、本発明による検証システム1の構成の一例を示すブロック図である。ただし図1では作図の都合により車両2の構成を簡略して記載しており、詳細は図2に記載する。
(System configuration)
Fig. 1 is a block diagram showing an example of the configuration of a verification system 1 according to the present invention. However, for convenience of drawing, the configuration of a vehicle 2 is shown in a simplified manner in Fig. 1, and the details are shown in Fig. 2.

図1に示すように、本実施例に係る検証システム1は、1台以上の車両2と、1台以上の車両2に対して車載アプリケーションの検証を管理する検証管理サーバ10とを含んで構成される。それぞれの車両2と検証管理サーバ10は、ネットワーク3を経由して接続される。まず図2を参照して車両2の構成を説明する。 As shown in FIG. 1, the verification system 1 according to this embodiment includes one or more vehicles 2 and a verification management server 10 that manages the verification of in-vehicle applications for the one or more vehicles 2. Each vehicle 2 and the verification management server 10 are connected via a network 3. First, the configuration of the vehicle 2 will be described with reference to FIG. 2.

(車両の構成)
車両2は、車載制御装置21と、無線通信装置20と、外界センサ群22と、車両センサ群23と、アクチュエータ群24と、車載ネットワーク25と、を有する。
(Vehicle configuration)
The vehicle 2 has an on-board control device 21 , a wireless communication device 20 , a group of external sensors 22 , a group of vehicle sensors 23 , a group of actuators 24 , and an on-board network 25 .

(車載制御装置の構成)
車載制御装置21は、例えば、車両2に搭載されたECU(Electronic Control Unit)等であり、処理部220と、車載記憶部210と、通信部230と、を有する。なお、車載制御装置21の形態に特に制限はなく、例えば、車両2の位置推定を行うための車両位置推定装置でもよいし、車両2のADASを実現するための走行制御装置でもよい。さらに車載制御装置21は、外界センサから取得した周辺環境データから周辺物体の検出を行う周辺物体検出処理装置でもよいし、車両2のユーザが車両2の内部ネットワークに接続したスマートフォン等の外部装置でもよい。
(Configuration of the on-board control device)
The on-board control device 21 is, for example, an ECU (Electronic Control Unit) mounted on the vehicle 2, and includes a processing unit 220, an on-board storage unit 210, and a communication unit 230. The form of the on-board control device 21 is not particularly limited, and may be, for example, a vehicle position estimation device for estimating the position of the vehicle 2, or a driving control device for realizing an ADAS of the vehicle 2. Furthermore, the on-board control device 21 may be a surrounding object detection processing device that detects surrounding objects from surrounding environment data acquired from an external sensor, or may be an external device such as a smartphone connected to the internal network of the vehicle 2 by a user of the vehicle 2.

処理部220は、例えば、CPU(Central Processing Unit:中央演算処理装置)及びRAM(Random Access Memory)などを含んで構成され、所定の動作プログラムを実行することで、車載制御装置21の機能を実現する処理を行う。また、処理部220には、機能ブロックとして、センサ入力部221、アクチュエータ出力部222、基本アプリ実行制御部223、検証アプリ実行制御部224、検証計画情報取得部225、検証結果出力部226、および走行環境条件成立予測部227、を備える。処理部220は、車載制御装置21に外部から停止命令が入力されると、センサ入力部221、アクチュエータ出力部222、基本アプリ実行制御部223、検証アプリ実行制御部224、検証計画情報取得部225、検証結果出力部226、走行環境条件成立予測部227に停止命令を出力する。 The processing unit 220 is configured to include, for example, a CPU (Central Processing Unit) and a RAM (Random Access Memory), and performs processing to realize the functions of the in-vehicle control device 21 by executing a predetermined operating program. The processing unit 220 also includes, as functional blocks, a sensor input unit 221, an actuator output unit 222, a basic application execution control unit 223, a verification application execution control unit 224, a verification plan information acquisition unit 225, a verification result output unit 226, and a driving environment condition establishment prediction unit 227. When a stop command is input from outside to the in-vehicle control device 21, the processing unit 220 outputs a stop command to the sensor input unit 221, the actuator output unit 222, the basic application execution control unit 223, the verification application execution control unit 224, the verification plan information acquisition unit 225, the verification result output unit 226, and the driving environment condition establishment prediction unit 227.

センサ入力部221は、車両の周辺に関連する周辺環境情報と、車両の動きに関連する車両センサ情報とを外界センサ群22および車両センサ群23から取得して、これらを車載記憶部210に不図示のアプリケーション入出力データ群として格納する。周辺環境情報とは、たとえば車両の周辺に存在する障害物の情報や、車両の周辺における道路の特徴を示す特徴物等の情報等である。なお車両の周辺に存在する障害物とは、たとえば車両の周囲を移動している他車両、自転車、歩行者等の移動体や、車両の周囲の道路上で静止している駐車車両、落下物、設置物等である。車両センサ情報とは、たとえば車両の位置、走行速度、操舵角、アクセルの操作量、ブレーキの操作量等である。センサ入力部221により取得された周辺環境情報と車両センサ情報は、アプリケーション入出力データ群として車載記憶部210に格納される。 The sensor input unit 221 acquires surrounding environment information related to the surroundings of the vehicle and vehicle sensor information related to the movement of the vehicle from the external sensor group 22 and the vehicle sensor group 23, and stores them as application input/output data groups (not shown) in the in-vehicle storage unit 210. The surrounding environment information is, for example, information on obstacles present around the vehicle and information on features indicating the characteristics of the road around the vehicle. Note that obstacles present around the vehicle are, for example, other vehicles, bicycles, pedestrians, and other moving objects moving around the vehicle, parked vehicles stationary on the road around the vehicle, fallen objects, installed objects, etc. The vehicle sensor information is, for example, the vehicle position, driving speed, steering angle, accelerator operation amount, brake operation amount, etc. The surrounding environment information and vehicle sensor information acquired by the sensor input unit 221 are stored in the in-vehicle storage unit 210 as application input/output data groups.

アクチュエータ出力部222は、車載記憶部210に格納される不図示のアプリケーション入出力データ群から制御情報を取得し、車載ネットワーク25に接続されたアクチュエータ群24に対して出力する。 The actuator output unit 222 acquires control information from a group of application input/output data (not shown) stored in the in-vehicle memory unit 210, and outputs the information to the actuator group 24 connected to the in-vehicle network 25.

基本アプリ実行制御部223は、車載記憶部210に格納されている基本アプリケーションプログラム211の実行スケジュールに基づいて、車載制御装置21上の1つ以上のCPU上で基本アプリケーションプログラム211を実行および制御する。基本アプリケーションプログラム211とは、検証が完了しており車載制御装置上でメインのアプリケーションとして実行されるプログラムである。基本アプリケーションプログラム211は、検証が既に完了している点で、検証アプリケーションプログラム212とは異なる。 The basic application execution control unit 223 executes and controls the basic application program 211 on one or more CPUs on the in-vehicle control device 21 based on the execution schedule of the basic application program 211 stored in the in-vehicle storage unit 210. The basic application program 211 is a program that has been verified and is executed as the main application on the in-vehicle control device. The basic application program 211 differs from the verified application program 212 in that verification has already been completed.

基本アプリケーションプログラム211はたとえば、位置推定を行うための車両位置推定アプリケーション、先進運転支援システムを実現するための走行制御アプリケーション、完全自動運転を実現するための自動運転アプリケーション、および外界センサから取得した周辺環境データから周辺物体の検出を行う周辺物体検出アプリケーションのいずれかである。 The basic application program 211 is, for example, a vehicle position estimation application for performing position estimation, a driving control application for implementing an advanced driving assistance system, an autonomous driving application for implementing fully autonomous driving, or a surrounding object detection application for detecting surrounding objects from surrounding environment data acquired from an external sensor.

基本アプリケーションプログラム211の実行スケジュールとは、アプリケーションを逐次的または並列的に動作させるときの動作開始や終了のタイミング、および動作周期等が定義されたものである。たとえば、周期が10msと設定されたアプリケーションに対しては、基本アプリ実行制御部223が10msで当該アプリケーションを実行する。たとえば、データ並列化が設定されたアプリケーションに対しては、1つ以上のCPU上でアプリケーションを決められたタイミングで実行する等の制御を基本アプリ実行制御部223が行う。なお基本アプリケーションプログラム211の実行スケジュールは、不図示である。 The execution schedule of the basic application program 211 defines the timing of operation start and end, and the operation period when the application is operated sequentially or in parallel. For example, for an application with a period set to 10 ms, the basic application execution control unit 223 executes the application at 10 ms. For example, for an application set for data parallelization, the basic application execution control unit 223 controls the execution of the application on one or more CPUs at a determined timing. Note that the execution schedule of the basic application program 211 is not shown.

検証アプリ実行制御部224は、車載記憶部210の検証計画情報213に格納されている検証アプリケーションプログラム212を、車載制御装置21上の1つ以上のCPU上で実行および制御する。検証アプリケーションプログラム212は、検証管理サーバ10からネットワーク3を経由して、検証計画情報取得部225にて取得される。検証アプリケーションプログラム212は、後に詳述する検証実行スケジュール219Aに基づき実行される。 The verification application execution control unit 224 executes and controls the verification application program 212 stored in the verification plan information 213 of the in-vehicle storage unit 210 on one or more CPUs on the in-vehicle control device 21. The verification application program 212 is acquired by the verification plan information acquisition unit 225 from the verification management server 10 via the network 3. The verification application program 212 is executed based on the verification execution schedule 219A, which will be described in detail later.

検証アプリケーションプログラム212は、基本アプリケーションプログラム211と同一のCPU上で実行されてもよく、また異なるCPU上で実行されるよう隔離されていてもよい。また、検証アプリケーションプログラム212および基本アプリケーションプログラム211は、同一のOS上で実行されてもよいし、また異なるOS上で実行されるよう隔離されていてもよい。 The verification application program 212 may be executed on the same CPU as the basic application program 211, or may be isolated so as to be executed on a different CPU. Also, the verification application program 212 and the basic application program 211 may be executed on the same OS, or may be isolated so as to be executed on different OSs.

この検証アプリケーションプログラム212のそれぞれには検証優先度215が設定されており、車載制御装置21は検証優先度215にしたがって検証を行う。検証優先度215は、検証管理サーバ10が、車両2では不可知の情報や複数の車両2での検証の進捗等に基づいて作成するので、車載制御装置21は効率よく検証を実行できる。 A verification priority 215 is set for each of these verification application programs 212, and the in-vehicle control device 21 performs verification according to the verification priority 215. The verification priority 215 is created by the verification management server 10 based on information unknown to the vehicle 2 and the progress of verification in multiple vehicles 2, so that the in-vehicle control device 21 can perform verification efficiently.

検証計画情報取得部225は、検証管理サーバ10から検証アプリケーションプログラム212と、検証方法定義214と、走行環境条件216と、検証優先度215とを含む検証計画情報213を取得し、車載記憶部210に格納する。検証計画情報213は、たとえばテーブルのフォーマットで表され、複数のエントリを有する。このエントリを以下では「検証計画エントリ」とも呼ぶ。検証計画エントリは、検証アプリケーションプログラム212と走行環境条件216の組合せごとに作成され、各検証計画エントリは、検証方法定義214と検証優先度215とを含む。 The verification plan information acquisition unit 225 acquires verification plan information 213 including a verification application program 212, a verification method definition 214, driving environment conditions 216, and a verification priority 215 from the verification management server 10, and stores the information in the on-board storage unit 210. The verification plan information 213 is represented, for example, in a table format, and has multiple entries. These entries are also referred to as "verification plan entries" below. A verification plan entry is created for each combination of a verification application program 212 and driving environment conditions 216, and each verification plan entry includes a verification method definition 214 and a verification priority 215.

検証方法定義214は、検証アプリケーションプログラム212の検証方法の定義である。検証方法定義214の例としては、アプリケーションの出力値が直接定義されていてもよく、また基本アプリケーションプログラム211の出力値との比較で定義されていてもよい。走行環境条件216とは、検証アプリケーションプログラム212の検証を行うべき、車両の内外の環境条件である。 The verification method definition 214 is a definition of the verification method of the verification application program 212. As an example of the verification method definition 214, the output value of the application may be directly defined, or may be defined by comparison with the output value of the basic application program 211. The driving environment conditions 216 are the environmental conditions inside and outside the vehicle under which the verification of the verification application program 212 should be performed.

検証結果出力部226は、検証アプリケーションプログラム212に関する検証の結果を検証結果218として検証アプリ実行制御部224から取得し、車両2に関する車両情報219とともに検証管理サーバ10へ出力する。検証結果218には、例えば1つ以上の検証アプリケーションプログラム212ごとの検証の進捗情報が含まれる。車両情報219には、車両2の位置、速度、操舵情報、走行軌道情報、走行ルート情報を含む、車両2にて取得される車両2に関する情報が含まれる。この車両情報219は、例えば、検証アプリケーションプログラム212または基本アプリケーションプログラムが出力する情報でもよく、車両センサ群23や外界センサ群22やアクチュエータ群24が出力する情報でもよい。 The verification result output unit 226 obtains the result of the verification related to the verification application program 212 as the verification result 218 from the verification application execution control unit 224, and outputs it to the verification management server 10 together with vehicle information 219 related to the vehicle 2. The verification result 218 includes, for example, verification progress information for each of one or more verification application programs 212. The vehicle information 219 includes information related to the vehicle 2 obtained by the vehicle 2, including the position, speed, steering information, driving track information, and driving route information of the vehicle 2. This vehicle information 219 may be, for example, information output by the verification application program 212 or the basic application program, or information output by the vehicle sensor group 23, the external sensor group 22, or the actuator group 24.

走行環境条件成立予測部227は、走行環境条件216が成立するタイミングおよび成立しなくなるタイミングを事前に予測し、走行環境条件予測情報217を作成して車載記憶部210に格納する。走行環境条件成立予測部227は例えば、車両情報219と、走行環境条件216を照らし合わせて予測を行う。 The driving environment condition satisfaction prediction unit 227 predicts in advance the timing when the driving environment condition 216 will be satisfied and the timing when it will no longer be satisfied, and creates driving environment condition prediction information 217 and stores it in the in-vehicle storage unit 210. The driving environment condition satisfaction prediction unit 227 makes predictions, for example, by comparing the vehicle information 219 with the driving environment condition 216.

車載記憶部210は、たとえば、HDD(HARD Disk Drive)やフラッシュメモリである。ただしROM(Read Only Memory)を含んで構成されてもよい。車載記憶部210には、処理部100がその機能を実現するために実行するプログラム、周期的に実行されるアプリケーションプログラム、車載制御装置21が動作するために必要なデータ群などが格納される。具体的には、車載記憶部210には、基本アプリケーションプログラム211、検証アプリケーションプログラム212、検証計画情報213、検証方法定義214、検証優先度215、走行環境条件216、走行環境条件予測情報217、検証結果218、車両情報219、および検証実行スケジュール219Aが格納される。 The on-board storage unit 210 is, for example, a hard disk drive (HDD) or a flash memory. However, it may also be configured to include a read-only memory (ROM). The on-board storage unit 210 stores programs executed by the processing unit 100 to realize its functions, application programs executed periodically, and data groups necessary for the on-board control device 21 to operate. Specifically, the on-board storage unit 210 stores a basic application program 211, a verification application program 212, verification plan information 213, a verification method definition 214, a verification priority 215, driving environment conditions 216, driving environment condition prediction information 217, verification results 218, vehicle information 219, and a verification execution schedule 219A.

基本アプリケーションプログラム211は、ADASや自動運転向けの制御プログラムなどである。基本アプリケーションプログラム211はたとえば、位置推定を行うための車両位置推定アプリケーション、先進運転支援システムを実現するための走行制御アプリケーション、完全自動運転を実現するための自動運転アプリケーション、および外界センサから取得した周辺環境データから周辺物体の検出を行う周辺物体検出アプリケーションのいずれかである。 The basic application program 211 is a control program for ADAS or autonomous driving. For example, the basic application program 211 is any one of a vehicle position estimation application for performing position estimation, a driving control application for implementing an advanced driving assistance system, an autonomous driving application for implementing fully autonomous driving, and a surrounding object detection application for detecting surrounding objects from surrounding environment data acquired from an external sensor.

基本アプリケーションプログラム211は、不図示のアプリケーション入出力データ群を入出力する。このアプリケーション入出力データ群は、基本アプリケーションプログラム211に入力される情報、およびアプリケーションから出力される情報である。具体的にはアプリケーション入出力データ群は、車両の周辺に関連する周辺環境情報や、車両の動きに関連する車両センサ情報、およびアプリケーションがそれらを処理した情報である。このアプリケーション入出力データ群に含まれる、所定の対象要素に対応するデータの集合を、「オブジェクトデータ」と呼称し、このオブジェクトデータを単位としてデータの管理及び操作を行う。 The basic application program 211 inputs and outputs a group of application input/output data (not shown). This group of application input/output data is information input to the basic application program 211 and information output from the application. Specifically, the group of application input/output data is surrounding environment information related to the vehicle's surroundings, vehicle sensor information related to the movement of the vehicle, and information processed by the application. A collection of data included in this group of application input/output data that corresponds to a specific target element is called "object data", and data is managed and manipulated using this object data as a unit.

ここで、「対象要素」とは、オブジェクトデータとして一纏めにした個々の情報要素が共通して表現する概念的な対象である。対象要素とは例えば、センサの検出対象やアクチュエータの制御対象、さらにはアプリケーションの演算処理結果である。好ましくは、特に、外界センサにおいては、認識された個々の環境要素(障害物、道路形状、交通ルール等)が対象要素に該当する。即ち本実施の形態では、外界センサというハードウエアそのものを抽象化するのではなく、検出対象である環境要素を単位として、データを抽象化する方式を採る。なお、内界センサについては、自車両という概念でオブジェクトデータを構成してもよいし、個々の検出対象ごと、たとえば車速センサであれば車速情報ごとにオブジェクトデータを構成してもよい。以下では、オブジェクトデータをデータと呼ぶ。 Here, a "target element" is a conceptual object commonly expressed by individual information elements grouped together as object data. Target elements are, for example, the detection target of a sensor, the control target of an actuator, and even the results of computational processing by an application. Preferably, in particular in the case of an external sensor, each recognized environmental element (obstacle, road shape, traffic rules, etc.) corresponds to the target element. That is, in this embodiment, instead of abstracting the hardware itself, which is the external sensor, a method is adopted in which data is abstracted in units of environmental elements that are detection targets. Note that, for internal sensors, object data may be configured based on the concept of the vehicle itself, or object data may be configured for each individual detection target, for example, for a vehicle speed sensor, for each vehicle speed information. Hereinafter, object data will be referred to as data.

検証アプリケーションプログラム212は、基本アプリケーションプログラム211と異なり検証を要するプログラムである。検証アプリケーションプログラム212は、検証管理サーバ10からネットワーク3を経由して、検証計画情報取得部225にて取得される。検証アプリケーションプログラム212は、検証計画情報取得部225にて取得された検証計画情報213に基づいて、実行がスケジューリングされる。 The verification application program 212 is a program that requires verification, unlike the basic application program 211. The verification application program 212 is acquired by the verification plan information acquisition unit 225 from the verification management server 10 via the network 3. The execution of the verification application program 212 is scheduled based on the verification plan information 213 acquired by the verification plan information acquisition unit 225.

検証アプリケーションプログラム212は、基本アプリケーションプログラム211と同一のCPU上で実行されてもよく、また異なるCPU上で実行されるよう隔離されていてもよい。また検証アプリケーションプログラム212は、基本アプリケーションプログラム211と同一のOS上で実行されてもよいし、基本アプリケーションプログラム211とは異なるOS上で実行されるように隔離されてもよい。 The verification application program 212 may be executed on the same CPU as the basic application program 211, or may be isolated so as to be executed on a different CPU. The verification application program 212 may be executed on the same OS as the basic application program 211, or may be isolated so as to be executed on a different OS from the basic application program 211.

検証計画情報213は後述する図4に示すデータフォーマットからなるデータであり、各検証計画エントリには、検証アプリケーションプログラム212と、検証方法定義214と、検証優先度215と、走行環境条件216とを含む。 The verification plan information 213 is data in the data format shown in FIG. 4, which will be described later, and each verification plan entry includes a verification application program 212, a verification method definition 214, a verification priority 215, and driving environment conditions 216.

検証方法定義214は、検証計画エントリごとに定義される、アプリケーションの検証方法の定義である。この定義は、想定される正常な出力値の範囲でもよいし、出力が同一となるべき基本アプリケーションプログラム211を特定する情報でもよい。たとえば検証アプリケーションプログラム212が、特定の基本アプリケーションプログラム211(以下、「同一機能基本アプリ」と呼ぶ)と同一の機能を有し、アルゴリズムを改善して実行速度を向上させた場合には、その検証アプリケーションプログラム212の検証方法定義214はたとえば、”同一機能基本アプリと出力が同一”と定義される。この既存のアプリケーションの出力値は、基本アプリケーションプログラム211として走行中に動作させその結果を逐次比較してもよく、また、事前に既存のアプリケーションの出力値を検証方法定義として保持しておき、それと比較することでもよい。 The verification method definition 214 is a definition of the verification method for an application, defined for each verification plan entry. This definition may be a range of expected normal output values, or may be information that specifies the basic application program 211 that should have the same output. For example, if the verification application program 212 has the same function as a specific basic application program 211 (hereinafter referred to as the "basic application with the same function") and has an improved algorithm to increase execution speed, the verification method definition 214 of the verification application program 212 is defined as, for example, "output is the same as the basic application with the same function." The output value of this existing application may be run while running as the basic application program 211, and the results may be compared sequentially, or the output value of the existing application may be stored in advance as a verification method definition and compared with that.

検証優先度215は、検証計画エントリごとに定義される。この検証優先度215は、検証管理サーバ10から取得されて、車載制御装置21の車載記憶部210に格納される。検証アプリ実行制御部224は、この検証優先度215を含む検証計画情報213に基づいて、検証実行スケジュール219Aを作成することで、検証アプリケーションプログラム212の実行をスケジューリングする。 The verification priority 215 is defined for each verification plan entry. This verification priority 215 is obtained from the verification management server 10 and stored in the in-vehicle memory unit 210 of the in-vehicle control device 21. The verification application execution control unit 224 schedules the execution of the verification application program 212 by creating a verification execution schedule 219A based on the verification plan information 213 including this verification priority 215.

走行環境条件216は、検証アプリケーションプログラム212に対して定義される1つ以上の、検証を行うべき走行環境を定義した設定情報である。この走行環境条件216と検証アプリケーションプログラム212との組に対して、各検証計画エントリが存在する。例えば、検証アプリケーションプログラム212が認知アプリケーションプログラムの場合は、走行環境条件216は、”交差点領域にいる場合”などの走行環境が設定されている。 The driving environment condition 216 is setting information that defines one or more driving environments in which verification should be performed, which are defined for the verification application program 212. Each verification plan entry exists for a pair of this driving environment condition 216 and the verification application program 212. For example, if the verification application program 212 is a recognition application program, the driving environment condition 216 is set to a driving environment such as "when in an intersection area."

走行環境条件予測情報217は、走行環境条件216が成立するタイミングおよび成立しなくなるタイミングに関する情報が記載されている。走行環境条件予測情報217は、走行環境条件成立予測部227により作成される。こ走行環境条件成立予測部227は例えば、車両情報219と、走行環境条件216とを照らし合わせて走行環境条件予測情報217を作成する。この走行環境条件予測情報217は、走行環境条件216が成立する将来時間や、非成立になる将来時間、成立頻度や持続時間、成立確率などの情報を含む。 The driving environment condition prediction information 217 contains information regarding the timing when the driving environment condition 216 will be satisfied and the timing when it will no longer be satisfied. The driving environment condition prediction information 217 is created by the driving environment condition satisfaction prediction unit 227. For example, the driving environment condition satisfaction prediction unit 227 compares the vehicle information 219 with the driving environment condition 216 to create the driving environment condition prediction information 217. This driving environment condition prediction information 217 includes information such as the future time when the driving environment condition 216 will be satisfied, the future time when it will not be satisfied, the frequency of satisfaction, the duration, and the probability of satisfaction.

検証結果218は、検証計画情報213の検証計画エントリごとの、検証の成否や進捗を示す情報である。検証アプリ実行制御部224により、検証方法定義214に従って検証の成否が記される。また検証が完了する前でも、検証方法定義214に従って、検証アプリ実行制御部224により検証の進捗情報が記される。この検証結果218は検証結果出力部226から検証管理サーバ10へ出力される。 The verification result 218 is information indicating the success or failure and progress of the verification for each verification plan entry in the verification plan information 213. The verification application execution control unit 224 records the success or failure of the verification in accordance with the verification method definition 214. Even before the verification is completed, the verification application execution control unit 224 records the progress information of the verification in accordance with the verification method definition 214. The verification result 218 is output from the verification result output unit 226 to the verification management server 10.

車両情報219は、車両2の位置、速度、操舵情報、走行軌道情報、走行ルート情報などが含まれ、車両2にて取得される車両2に関する車両情報が含まれる。この車両情報219は、例えば、検証アプリケーションプログラム212または基本アプリケーションプログラムが出力する情報でもよく、車両センサ群23や外界センサ群22やアクチュエータ群24が出力する情報でもよい。 The vehicle information 219 includes the position, speed, steering information, driving trajectory information, driving route information, etc. of the vehicle 2, and includes vehicle information related to the vehicle 2 acquired by the vehicle 2. This vehicle information 219 may be, for example, information output by the verification application program 212 or the basic application program, or information output by the vehicle sensor group 23, the external sensor group 22, or the actuator group 24.

検証実行スケジュール219Aは、検証アプリケーションプログラム212を実行するスケジュールの情報である。検証実行スケジュール219Aは、検証アプリ実行制御部224により作成される。この作成には、検証アプリケーションプログラム212と、走行環境条件216と、検証優先度215と、走行環境条件216と、走行環境条件予測情報217と、を含む情報が利用される。なお以下では、検証実行スケジュール219Aを作成、更新、変更することを「検証スケジュールを行う」や「検証のスケジューリングを実行する」とも表現する。 The verification execution schedule 219A is information about the schedule for executing the verification application program 212. The verification execution schedule 219A is created by the verification application execution control unit 224. This creation uses information including the verification application program 212, the driving environment conditions 216, the verification priority 215, the driving environment conditions 216, and the driving environment condition prediction information 217. Note that below, creating, updating, and changing the verification execution schedule 219A is also expressed as "performing verification scheduling" or "performing verification scheduling."

通信部230は、例えば、イーサネット(登録商標)又はCAN(Controller Area Network)等の通信規格に準拠したネットワークカード等を含んで構成される。通信部230は、車両2に搭載された他の装置と各種プロトコルに基づきデータの送受信を行う。なお、通信部230と車両2に搭載された他の装置との間の接続形態は、イーサネットのような有線接続に限定されることはなく、Bluetooth(登録商標)や無線LAN(Local Area Network)などの近距離無線接続であってもよい。 The communication unit 230 is configured to include, for example, a network card conforming to a communication standard such as Ethernet (registered trademark) or CAN (Controller Area Network). The communication unit 230 transmits and receives data to and from other devices mounted on the vehicle 2 based on various protocols. Note that the connection between the communication unit 230 and other devices mounted on the vehicle 2 is not limited to a wired connection such as Ethernet, and may be a short-range wireless connection such as Bluetooth (registered trademark) or wireless LAN (Local Area Network).

無線通信装置20は、例えば、LTE(Long Term Evolution)等の長距離無線通信規格、または無線LANやDSRC(Dedicated Short Range Communications)等の近距離無線通信規格に準拠したネットワークカード等を有する。無線通信装置20はたとえば、検証管理サーバ10、1台又は複数台の他車両に搭載された無線通信装置20、1台又は複数台の人等が保有する不図示の通信端末等、とデータ通信が可能に構成される。 The wireless communication device 20 has a network card or the like that complies with a long-distance wireless communication standard such as LTE (Long Term Evolution) or a short-distance wireless communication standard such as wireless LAN or DSRC (Dedicated Short Range Communications). The wireless communication device 20 is configured to be capable of data communication with, for example, the verification management server 10, wireless communication devices 20 mounted on one or more other vehicles, and one or more communication terminals (not shown) held by people, etc.

無線通信装置20は、検証管理サーバ10とネットワーク3を介してデータ通信を行う。無線通信装置20は、好ましくは、長距離無線通信を用いてネットワーク3に接続し、例えば、IP(Internet Protocol)系の各種プロトコルなどに基づいて生成されたデータの送受信を行う。なお、無線通信装置20は、長距離無線通信に限らず、近距離無線通信を用いてネットワーク3に直接接続しても良いし、路側機等の他の通信装置を介してネットワーク3に接続しても良い。 The wireless communication device 20 communicates data with the verification management server 10 via the network 3. The wireless communication device 20 preferably connects to the network 3 using long-distance wireless communication, and transmits and receives data generated based on various IP (Internet Protocol)-based protocols, for example. Note that the wireless communication device 20 is not limited to long-distance wireless communication, and may be directly connected to the network 3 using short-distance wireless communication, or may be connected to the network 3 via another communication device such as a roadside unit.

外界センサ群22は、車両周辺の一定範囲の障害物、たとえば他車両、歩行者、物体などや、道路標識や白線などの特徴物を認識するセンサ群である。外界センサ群22は、たとえば、カメラ、レーダ、ライダ等により構成される。外界センサ群22は、検出した車両周辺の障害物や特徴物の情報、たとえば車両からの相対距離と相対角度などを、外界センサ群22や車載制御装置21が接続されている車載ネットワーク25に出力する。車載制御装置21は、この車載ネットワーク25を介して外界センサ群22からの出力結果を取得できる。なお本実施の形態では、外界センサ群22で障害物や特徴物を検出する処理を実施する構成になっているが、外界センサ群22から出力される信号やデータを用いて車載制御装置21や他装置でこれらの検出処理を行ってもよい。 The external sensor group 22 is a group of sensors that recognize obstacles within a certain range around the vehicle, such as other vehicles, pedestrians, objects, and features such as road signs and white lines. The external sensor group 22 is composed of, for example, a camera, a radar, a lidar, and the like. The external sensor group 22 outputs information on the detected obstacles and features around the vehicle, such as the relative distance and relative angle from the vehicle, to the in-vehicle network 25 to which the external sensor group 22 and the in-vehicle control device 21 are connected. The in-vehicle control device 21 can acquire the output results from the external sensor group 22 via the in-vehicle network 25. Note that in this embodiment, the external sensor group 22 is configured to perform processing to detect obstacles and features, but the in-vehicle control device 21 or another device may perform these detection processes using signals and data output from the external sensor group 22.

車両センサ群23は、車両の動きに関する情報、たとえば走行速度、操舵角、アクセルの操作量、ブレーキの操作量などを検出する装置群である。車両センサ群23は、たとえば、車載ネットワーク25上に検出したこれらの状態量を出力する。車載ネットワーク25に接続された車載制御装置21や他装置は、この車載ネットワーク25を通じて、車両センサ群23から出力された各種部品の状態量を取得する。 The vehicle sensor group 23 is a group of devices that detect information related to the movement of the vehicle, such as the driving speed, steering angle, accelerator operation amount, brake operation amount, etc. The vehicle sensor group 23 outputs these detected state quantities, for example, onto the in-vehicle network 25. The in-vehicle control device 21 and other devices connected to the in-vehicle network 25 acquire the state quantities of various parts output from the vehicle sensor group 23 via this in-vehicle network 25.

アクチュエータ群24は、車両の動きを決定する操舵、ブレーキ、アクセル等の制御要素を制御する装置群である。アクチュエータ群24は、運転者によるハンドル、ブレーキペダル、アクセルペダル等の操舵情報や、車載制御装置21から出力される目標制御値に基づいて車両の動きを制御する。 The actuator group 24 is a group of devices that control the control elements such as steering, braking, and accelerator that determine the movement of the vehicle. The actuator group 24 controls the movement of the vehicle based on steering information of the steering wheel, brake pedal, accelerator pedal, etc. by the driver and target control values output from the on-board control device 21.

ネットワーク3は、無線および有線の少なくとも一方を媒体とする回線交換網又はパケット交換網の任意の組み合わせで構成される通信ネットワークである。ネットワーク3は、検証管理サーバ10と車両2に搭載された無線通信装置20とが相互にデータを送受信可能となるように構成される。車載制御装置21は、無線通信装置20を介して、ネットワーク3を経由して検証管理サーバ10と通信する。 Network 3 is a communication network consisting of any combination of circuit-switched networks or packet-switched networks using at least one of wireless and wired communication as a medium. Network 3 is configured to enable data transmission and reception between the verification management server 10 and the wireless communication device 20 mounted on the vehicle 2. The on-board control device 21 communicates with the verification management server 10 via the wireless communication device 20 and through network 3.

(検証管理サーバの構成)
図1に戻って検証管理サーバ10の構成を説明する。検証管理サーバ10は、車両2の車載制御装置21で動作するアプリケーションプログラムの検証を計画し、その進捗を管理する。なお図1では検証管理サーバ10は1つのハードウエア装置として記載しているが、複数のハードウエア装置から構成されてもよい。検証管理サーバ10は、処理部100とサーバ記憶部110と通信部120と、を有する。
(Verification management server configuration)
Returning to Fig. 1, the configuration of the verification management server 10 will be described. The verification management server 10 plans the verification of an application program that runs on the on-board control device 21 of the vehicle 2 and manages the progress of the verification. Although the verification management server 10 is depicted as a single hardware device in Fig. 1, it may be composed of multiple hardware devices. The verification management server 10 has a processing unit 100, a server storage unit 110, and a communication unit 120.

処理部100は、例えば、CPU及びRAMなどを含んで構成され、所定の動作プログラムを実行することで、検証管理サーバ10の機能を実現する。また、処理部100には、機能ブロックとして、1つ以上の車両2から検証結果情報を受信する検証結果取得部102や走行環境条件成立予測部104を有する。また処理部100には、検証アプリケーションプログラムごとの検証計画情報を生成する検証計画情報生成部103、検証計画情報を車両2に送信する検証計画情報出力部101等が含まれる。 The processing unit 100 is configured to include, for example, a CPU and RAM, and realizes the functions of the verification management server 10 by executing a predetermined operating program. The processing unit 100 also has, as functional blocks, a verification result acquisition unit 102 that receives verification result information from one or more vehicles 2, and a driving environment condition establishment prediction unit 104. The processing unit 100 also includes a verification plan information generation unit 103 that generates verification plan information for each verification application program, a verification plan information output unit 101 that transmits verification plan information to the vehicle 2, etc.

検証計画情報出力部101は、車両2に対して、サーバ記憶部110に格納されている検証アプリケーションプログラム111と、検証方法定義112と、検証優先度113と、走行環境条件114とを含む検証計画情報213を出力する。 The verification plan information output unit 101 outputs to the vehicle 2 verification plan information 213 including a verification application program 111, a verification method definition 112, a verification priority 113, and driving environment conditions 114 stored in the server memory unit 110.

検証結果取得部102は、車両2から送信された、検証アプリケーションプログラム111に関する検証結果情報を取得し、車両2に関する車両情報とともにサーバ記憶部110に格納する。検証結果情報には、1つ以上の検証アプリケーションプログラム212ごとの検証の進捗情報が含まれる。 The verification result acquisition unit 102 acquires verification result information related to the verification application program 111 transmitted from the vehicle 2, and stores the information in the server storage unit 110 together with vehicle information related to the vehicle 2. The verification result information includes verification progress information for each of one or more verification application programs 212.

検証計画情報生成部103は、検証進捗情報115と走行環境条件予測情報116に基づき、検証計画情報117を生成する。この検証計画情報117の各エントリには検証アプリケーションプログラム、検証方法定義、走行環境条件、検証優先度、等が含まれる。 The verification plan information generation unit 103 generates verification plan information 117 based on the verification progress information 115 and the driving environment condition prediction information 116. Each entry of this verification plan information 117 includes a verification application program, a verification method definition, driving environment conditions, verification priority, etc.

走行環境条件成立予測部104は、1または複数の車両2から車両情報219を受け取る。走行環境条件成立予測部104は、検証アプリケーションプログラム111の走行環境条件114が、いずれの車両2にて近い将来に満たされるかを予測し、走行環境条件予測情報116を検証計画情報生成部103に渡す。この走行環境条件成立予測部104では、車両2では不可知の情報と、車両2の車両情報219を用いて、走行環境条件114の成立予測を行ってよい。例えば検証管理サーバ10が、車両2は不可知の、特定地域の渋滞情報を保持していた場合、その渋滞情報と車両2の車両情報を用いて走行環境条件の成立予測を行ってよい。 The driving environment condition satisfaction prediction unit 104 receives vehicle information 219 from one or more vehicles 2. The driving environment condition satisfaction prediction unit 104 predicts which vehicle 2 will satisfy the driving environment condition 114 of the verification application program 111 in the near future, and passes driving environment condition prediction information 116 to the verification plan information generation unit 103. This driving environment condition satisfaction prediction unit 104 may predict the satisfaction of the driving environment condition 114 using information unknown to the vehicle 2 and the vehicle information 219 of the vehicle 2. For example, if the verification management server 10 holds congestion information for a specific area that is unknown to the vehicle 2, the congestion information and the vehicle information of the vehicle 2 may be used to predict the satisfaction of the driving environment condition.

サーバ記憶部110は、例えば、HDD、フラッシュメモリ、ROMなどの記憶装置を含んで構成され、処理部100が実行するプログラム、及び本システムの実現に必要なデータ群などが格納される。本実施例では、特に、検証アプリケーションプログラム111、検証方法定義112、検証優先度113、走行環境条件114、検証進捗情報115、走行環境条件予測情報116、および検証計画情報117がサーバ記憶部110に格納される。 The server storage unit 110 includes, for example, a storage device such as an HDD, a flash memory, or a ROM, and stores the programs executed by the processing unit 100 and a set of data necessary to realize the present system. In this embodiment, in particular, the verification application program 111, the verification method definition 112, the verification priority 113, the driving environment conditions 114, the verification progress information 115, the driving environment condition prediction information 116, and the verification plan information 117 are stored in the server storage unit 110.

検証アプリケーションプログラム111は、車載制御装置21上の検証アプリケーションプログラム212と同様に、車載制御装置21上で検証を要するものである。検証アプリケーションプログラムごとに走行環境条件114、検証方法定義112、検証優先度113、等が定義されている。検証管理サーバ10が検証アプリケーションプログラム111を車載制御装置21上へ送信する。 The verification application program 111, like the verification application program 212 on the vehicle control device 21, requires verification on the vehicle control device 21. For each verification application program, driving environment conditions 114, verification method definition 112, verification priority 113, etc. are defined. The verification management server 10 transmits the verification application program 111 to the vehicle control device 21.

検証方法定義112は、車載記憶部210に格納される検証方法定義214と同様であってよい。検証優先度113は車載記憶部210に格納される検証優先度215と同様であってよい。走行環境条件114は、車載記憶部210に格納される走行環境条件216と同様であってよい。走行環境条件114には、検証管理サーバ10にのみ知ることができ意味がある情報が含まれてもよい。 The verification method definition 112 may be the same as the verification method definition 214 stored in the on-board storage unit 210. The verification priority 113 may be the same as the verification priority 215 stored in the on-board storage unit 210. The driving environment conditions 114 may be the same as the driving environment conditions 216 stored in the on-board storage unit 210. The driving environment conditions 114 may include meaningful information that can only be known by the verification management server 10.

検証進捗情報115は、例えば進捗値で表され、検証の進捗を示す。この値の進捗表現値は検証アプリケーションプログラム212に依存し、検証アプリケーションプログラム212のカバレッジを示す場合や、検証アプリケーションプログラム212を検証動作させる目標時間に対するその時の検証実行時間の割合を示す場合がある。 The verification progress information 115 is expressed, for example, as a progress value, and indicates the progress of the verification. The progress representation value of this value depends on the verification application program 212, and may indicate the coverage of the verification application program 212 or the ratio of the verification execution time at that time to the target time for verifying the verification application program 212.

走行環境条件予測情報116は、走行環境条件114が成立するタイミングおよび成立しなくなるタイミングを示す情報である。検証計画情報117は、検証計画情報生成部103が生成する情報であり、検証アプリケーションプログラム111と、検証方法定義112と、検証優先度113と、走行環境条件114とを含む。 The driving environment condition prediction information 116 is information that indicates the timing when the driving environment condition 114 is satisfied and the timing when it is no longer satisfied. The verification plan information 117 is information generated by the verification plan information generation unit 103, and includes the verification application program 111, the verification method definition 112, the verification priority 113, and the driving environment condition 114.

通信部120は、例えば、イーサネット又はCAN等の通信規格に準拠したネットワークカード等を含んで構成され、検証管理サーバ10に搭載された他の装置と各種プロトコルに基づきデータの送受信を行う。なお、通信部120と検証管理サーバ10に搭載された他の装置との間の接続形態は、イーサネットのような有線接続に限定されることはなく、Bluetoothや無線LANなどの近距離無線接続であってもよい。 The communication unit 120 is configured to include, for example, a network card conforming to a communication standard such as Ethernet or CAN, and transmits and receives data based on various protocols with other devices mounted on the verification management server 10. Note that the connection between the communication unit 120 and other devices mounted on the verification management server 10 is not limited to a wired connection such as Ethernet, and may be a short-range wireless connection such as Bluetooth or wireless LAN.

図3は、検証システム1における検証管理サーバ10の処理部100と、車両2の車載制御装置21の処理部220との間のデータの流れを示す図である。 Figure 3 is a diagram showing the flow of data between the processing unit 100 of the verification management server 10 in the verification system 1 and the processing unit 220 of the on-board control device 21 of the vehicle 2.

検証管理サーバ10は、車載制御装置21に対して検証計画情報240を送信する。この通信のタイミングは、車両2が検証管理サーバ10に対して送信要求を出した際に車両2から送信してもよく、また検証管理サーバ10が任意のタイミングで車両2に対して送信してもよい。また、複数の車両2に対して同時に送信してもよい。ただし、すべての車両2に対して送信する必要はなく、いずれかの1台以上の車両に送信する。また、検証管理サーバ10から車両2に直接の送信を行わず、別の車両や別のサーバを経由して車両2に到達してもよい。検証管理サーバ10は、送信先のすべての車両2に対して同一の検証計画情報240を送信してもよいし、車両2ごとに異なる検証計画情報240を送信してもよい。 The verification management server 10 transmits the verification plan information 240 to the on-board control device 21. The timing of this communication may be from the vehicle 2 when the vehicle 2 issues a transmission request to the verification management server 10, or the verification management server 10 may transmit to the vehicle 2 at any timing. Also, the information may be transmitted simultaneously to multiple vehicles 2. However, it is not necessary to transmit to all vehicles 2, and the information may be transmitted to one or more vehicles. Also, the verification management server 10 may not transmit directly to the vehicle 2, but may reach the vehicle 2 via another vehicle or another server. The verification management server 10 may transmit the same verification plan information 240 to all destination vehicles 2, or may transmit different verification plan information 240 for each vehicle 2.

車両2上の車載制御装置21は、検証管理サーバ10に対して検証結果218と車両情報219を送信する。この通信のタイミングは、検証管理サーバが車両2に対して送信要求を出した際に車両2から送信しても、また車両2が任意のタイミングで検証管理サーバ10に送信してもよい。また、車両2から別の車両やサーバを経由して検証管理サーバ10へ到達してもよい。 The on-board control device 21 on the vehicle 2 transmits the verification result 218 and the vehicle information 219 to the verification management server 10. The timing of this communication may be such that the vehicle 2 transmits the verification result 218 and the vehicle information 219 when the verification management server issues a transmission request to the vehicle 2, or the vehicle 2 may transmit the verification result 218 and the vehicle information 219 to the verification management server 10 at any timing. The verification result 218 and the vehicle information 219 may also reach the verification management server 10 via another vehicle or server from the vehicle 2.

検証管理サーバ10の検証結果取得部102は、1または複数の車両2から検証結果218を受け取る。この検証結果218には1または複数の検証アプリケーションプログラム212に関する検証結果として検証の成否または進捗情報が格納されている。検証結果取得部102は、検証進捗情報115として検証計画情報生成部103に渡す。 The verification result acquisition unit 102 of the verification management server 10 receives the verification results 218 from one or more vehicles 2. The verification results 218 store the success or failure of the verification or progress information as the verification results related to one or more verification application programs 212. The verification result acquisition unit 102 passes this to the verification plan information generation unit 103 as verification progress information 115.

走行環境条件成立予測部104は、1または複数の車両2から車両情報219を受け取る。走行環境条件成立予測部104は、走行環境条件114がいずれの車両2にて近い将来に満たされるかを予測して走行環境条件予測情報116を生成し、走行環境条件予測情報116を検証計画情報生成部103に渡す。走行環境条件成立予測部104では、車両2では不可知の情報と、車両2の車両情報219とを用いて、走行環境条件の成立予測を行ってよい。例えば、車両2は不可知の、特定地域の渋滞情報を検証管理サーバ10が保持していた場合、その渋滞情報と車両2の車両情報を用いて走行環境条件の成立予測を行ってよい。この成立予測に基づいて検証計画情報生成部103で検証優先度を定義することにより、検証アプリケーションプログラム212の検証をさらに効率化できる。 The driving environment condition satisfaction prediction unit 104 receives vehicle information 219 from one or more vehicles 2. The driving environment condition satisfaction prediction unit 104 predicts which vehicle 2 will satisfy the driving environment condition 114 in the near future, generates driving environment condition prediction information 116, and passes the driving environment condition prediction information 116 to the verification plan information generation unit 103. The driving environment condition satisfaction prediction unit 104 may predict the satisfaction of the driving environment condition using information unknown to the vehicle 2 and the vehicle information 219 of the vehicle 2. For example, if the verification management server 10 holds traffic congestion information for a specific area that is unknown to the vehicle 2, the traffic congestion information and the vehicle information of the vehicle 2 may be used to predict the satisfaction of the driving environment condition. The verification plan information generation unit 103 defines a verification priority based on this prediction, thereby making it possible to further improve the efficiency of the verification of the verification application program 212.

検証計画情報生成部103は検証進捗情報115と走行環境条件予測情報116とに基づき、検証計画情報117を生成する。この検証計画情報117の各エントリには検証アプリケーションプログラム、検証方法定義、走行環境条件、検証優先度、等が含まれる。車載制御装置21の検証計画情報取得部225は、検証計画情報117を取得する。 The verification plan information generation unit 103 generates verification plan information 117 based on the verification progress information 115 and the driving environment condition prediction information 116. Each entry of this verification plan information 117 includes a verification application program, a verification method definition, driving environment conditions, verification priority, etc. The verification plan information acquisition unit 225 of the vehicle control device 21 acquires the verification plan information 117.

走行環境条件成立予測部227は、車両情報219と検証計画エントリに含まれる走行環境条件216が満たされるか否か予測し、走行環境条件予測情報217を生成する。この際、検証管理サーバ10で予測された走行環境条件予測情報116を車載制御装置21が予め受信し、この走行環境条件予測情報116と組み合わせて走行環境条件予測情報217を生成してもよい。 The driving environment condition fulfillment prediction unit 227 predicts whether the driving environment conditions 216 included in the vehicle information 219 and the verification plan entry will be satisfied, and generates driving environment condition prediction information 217. At this time, the driving environment condition prediction information 116 predicted by the verification management server 10 may be received in advance by the on-board control device 21, and the driving environment condition prediction information 217 may be generated by combining this driving environment condition prediction information 116.

検証アプリ実行制御部224は、検証計画情報213をもとに検証アプリケーションプログラム212の検証を行う。その際に検証アプリ実行制御部224は、基本アプリ実行制御部223からデータの入出力を受けてもよい。また図3には記載していないが、検証アプリ実行制御部224は検証アプリケーションプログラム212の検証を行う際に外界センサ群22や車両センサ群23からデータの入力を受けてもよい。検証アプリ実行制御部224は、検証の結果を検証結果218として生成する。この検証結果218には、1つ以上の検証計画情報213ごとの検証の進捗情報が含まれる。検証結果出力部226は、検証結果218を検証アプリ実行制御部224から受け取り、車両情報219とともに検証管理サーバ10へ送信する。 The verification application execution control unit 224 verifies the verification application program 212 based on the verification plan information 213. At that time, the verification application execution control unit 224 may receive input and output of data from the basic application execution control unit 223. Although not shown in FIG. 3, the verification application execution control unit 224 may receive data input from the external sensor group 22 and the vehicle sensor group 23 when verifying the verification application program 212. The verification application execution control unit 224 generates the result of the verification as the verification result 218. This verification result 218 includes verification progress information for one or more pieces of verification plan information 213. The verification result output unit 226 receives the verification result 218 from the verification application execution control unit 224 and transmits it to the verification management server 10 together with the vehicle information 219.

図4は、検証管理サーバ10のサーバ記憶部110に格納される走行環境条件114のデータのフォーマットの一例を示す図である。このフォーマットは、車載記憶部210の走行環境条件216に格納されているデータのフォーマットと同一である。走行環境条件114は1以上のエントリを有し、各エントリは検証アプリケーションプログラム名301と走行環境条件302のフィールドを有する。 Figure 4 shows an example of the format of the data of the driving environment conditions 114 stored in the server memory unit 110 of the verification management server 10. This format is the same as the format of the data stored in the driving environment conditions 216 of the in-vehicle memory unit 210. The driving environment conditions 114 have one or more entries, and each entry has fields for the verification application program name 301 and the driving environment conditions 302.

検証アプリケーションプログラム名301のフィールドには、検証対象となる検証アプリケーションプログラム212を特定する1または複数の名称が格納される。この識別子は車両2が一意に特定することができればよく、自然言語でなく識別子でもよい。 The verification application program name 301 field stores one or more names that identify the verification application program 212 to be verified. This identifier only needs to be uniquely identifiable by the vehicle 2, and may be an identifier other than a natural language.

走行環境条件302のフィールドには、検証アプリケーションプログラム212の検証を実行すべき走行環境の条件が格納される。同一の検証アプリケーションプログラム名301に対して、複数の走行環境条件302を設定可能である。検証アプリケーションプログラム名301と走行環境条件302の組で一意となっている必要がある。この走行環境条件302は自然言語で設定されており検証アプリ実行制御部224で解析してもよいし、コンピュータで処理する特定の言語体系で記載されていてもよい。 The driving environment conditions 302 field stores the conditions of the driving environment in which the verification of the verification application program 212 should be performed. Multiple driving environment conditions 302 can be set for the same verification application program name 301. The pair of the verification application program name 301 and the driving environment conditions 302 must be unique. The driving environment conditions 302 are set in a natural language and may be analyzed by the verification application execution control unit 224, or may be written in a specific language system that is processed by a computer.

走行環境条件302はたとえば、場所の条件として「車両が交差点領域にいる場合」、「車両が高速道にいる場合」、「車両がXX国にいる場合」等がある。この判定条件となる車両の位置情報は、走行中にセンサ群または基本アプリケーションプログラムから提供される。また、周辺環境の条件として「周辺車両がX台存在する場合」、「歩行者がY人存在する場合」等がある。この判定条件となる周辺環境に関する情報は、走行中にセンサ群や基本アプリケーションプログラム211から提供される。また、車種に関する条件として設定してもよく、例えば「車種XX上で動作する場合」などと条件が指定されてもよい。また、天候等の条件として「曇り」「雨」などの条件を指定してもよい。また、日付や時刻で指定してもよく、例えば「Y時~Z時」などの条件で指定してもよい。 The driving environment conditions 302 include, for example, location conditions such as "when the vehicle is in an intersection area," "when the vehicle is on a highway," and "when the vehicle is in XX country." The vehicle's position information, which is the condition for this judgment, is provided from the sensor group or the basic application program while driving. The surrounding environment conditions include "when there are X number of surrounding vehicles," "when there are Y number of pedestrians," and so on. The information on the surrounding environment, which is the condition for this judgment, is provided from the sensor group or the basic application program 211 while driving. The vehicle type may also be set as a condition, and for example, a condition such as "when operating on vehicle type XX" may be specified. Weather conditions such as "cloudy" and "rainy" may also be specified. The date and time may also be specified, and for example, a condition such as "Y o'clock to Z o'clock" may also be specified.

また、複数の条件を統合して記載してもよく、例えば「高速道にいる場合かつY時~Z時の間」などの条件で指定してもよく、「高速道にいる場合またはY時~Z時の間」などの条件で指定してもよい。また、基本アプリケーションプログラムや他の検証アプリケーションプログラムの出力や入力を監視し、その入出力データを走行環境条件としてもよい。例えば走行環境条件を「基本アプリケーションプログラムの認知アプリCが、特定のデータDを出力している場合」としてもよい。また、基本アプリケーションプログラム211や他の検証アプリケーションプログラム212の実行を監視し、その実行状況を走行環境条件としてよく、例えば「検証アプリケーションプログラムDが動作している場合」などと指定してもよい。 In addition, multiple conditions may be written in an integrated manner, for example, by specifying a condition such as "if on a highway and between Y o'clock and Z o'clock", or by specifying a condition such as "if on a highway or between Y o'clock and Z o'clock". In addition, the output or input of the basic application program or other verification application programs may be monitored, and the input/output data may be used as the driving environment condition. For example, the driving environment condition may be "if the recognition application C of the basic application program is outputting specific data D". In addition, the execution of the basic application program 211 or other verification application programs 212 may be monitored, and the execution status may be used as the driving environment condition, for example, by specifying "if the verification application program D is running".

この走行環境条件302は、アプリケーションの開発者が手動で設定してもよいし、検証計画情報生成部103が検証アプリケーションプログラム111を解析して自動で設定されてもよい。例えば、プログラム上のすべての分岐をカバーするように走行環境条件302が自動で設定されてもよい。 The driving environment conditions 302 may be set manually by the application developer, or may be set automatically by the verification plan information generating unit 103 by analyzing the verification application program 111. For example, the driving environment conditions 302 may be set automatically to cover all branches in the program.

この走行環境条件114は、検証アプリケーションプログラム212や走行環境条件302が細かく設定されるとサイズが大きくなるため、検証管理サーバ10ではオリジナルの走行環境条件114を保持しておくものの、車載制御装置21へ送信される走行環境条件114は、検証実行が行われるアプリケーションプログラムに関する設定のみ抽出されたサブセットだけであってもよい。 The size of the driving environment conditions 114 increases when the verification application program 212 and the driving environment conditions 302 are set in detail. Therefore, the verification management server 10 stores the original driving environment conditions 114, but the driving environment conditions 114 sent to the vehicle control device 21 may be only a subset that contains only the settings related to the application program for which verification is performed.

図5は、検証管理サーバ10の検証計画情報生成部103で生成される検証計画情報213の一例を示す図である。検証計画情報213は複数のエントリを含み、各エントリは検証アプリケーションプログラム名301と、走行環境条件302と、空きCPUリソース条件403と、優先度404と、検証方法定義405とを含む。検証計画情報213は必ずしも一つのデータとして統合されている必要はなく、複数のデータ群として存在しそれらが紐づいている形で存在していてもよい。例えば、図4に記載の走行環境条件114と、各走行環境条件に対する優先度と、空きCPUリソース条件と、検証方法定義とが別個に定義されていてもよい。また、CPUリソース条件403、優先度404、および検証方法定義405は、静的に定義されている必要はなく、例えば車両2の車種ごとに異なる設定情報として保持されてもよい。ここでは図5の記載に沿って説明する。 5 is a diagram showing an example of the verification plan information 213 generated by the verification plan information generating unit 103 of the verification management server 10. The verification plan information 213 includes multiple entries, and each entry includes a verification application program name 301, a driving environment condition 302, an available CPU resource condition 403, a priority 404, and a verification method definition 405. The verification plan information 213 does not necessarily need to be integrated as one piece of data, and may exist as multiple data groups that are linked together. For example, the driving environment condition 114 shown in FIG. 4, the priority for each driving environment condition, the available CPU resource condition, and the verification method definition may be defined separately. In addition, the CPU resource condition 403, the priority 404, and the verification method definition 405 do not need to be statically defined, and may be held as different setting information for each vehicle model of the vehicle 2, for example. Here, the description will be given along with the description in FIG. 5.

検証計画情報213のそれぞれの検証計画エントリは、検証アプリケーションプログラム名401と走行環境条件402の組合せに対して一意に存在する。各検証計画エントリには、優先度404と空きCPUリソース条件403と検証方法定義405とがそれぞれ設定される。優先度404、空きCPUリソース条件403、および検証方法定義405は同一の内容が設定されていても構わない。検証アプリケーションプログラム名301および走行環境条件302は図4において説明したとおりなので説明を省略する。 Each verification plan entry in the verification plan information 213 exists uniquely for each combination of the verification application program name 401 and the running environment conditions 402. A priority 404, free CPU resource conditions 403, and a verification method definition 405 are set in each verification plan entry. The priority 404, free CPU resource conditions 403, and verification method definition 405 may be set to the same contents. The verification application program name 301 and the running environment conditions 302 are as described in FIG. 4, so their description will be omitted.

空きCPUリソース条件403は、検証計画情報117や検証計画情報213に含まれるデータ要素であり、検証アプリケーションプログラム212の検証を行う際に必要となるCPUリソースを示すものである。空きCPUリソース条件403に記載される値は、事前に計測した、または走行中に更新された、検証時に消費されるCPUリソースの平均値や最大値などの値である。空きCPUリソース条件403の値が大きいほど検証には多くのCPUリソースを消費することを意味する。 The free CPU resource condition 403 is a data element included in the verification plan information 117 and the verification plan information 213, and indicates the CPU resources required when verifying the verification application program 212. The value described in the free CPU resource condition 403 is a value such as the average or maximum value of the CPU resources consumed during verification, measured in advance or updated during running. The larger the value of the free CPU resource condition 403, the more CPU resources will be consumed for verification.

優先度404は、車載制御装置21上の検証アプリ実行制御部224が、検証実行スケジュール219Aの作成の際に参照する情報であり、これに基づいて、検証アプリケーションプログラム212を検証する順序を決定する。優先度404の値が大きいほど優先して検証が行われる。例えば、走行環境条件402が満たされており、さらに空きCPUリソース条件403も満たされているときには、検証アプリケーションプログラム212のうち優先度が高いものから検証が行われる。 The priority 404 is information that the verification app execution control unit 224 on the in-vehicle control device 21 refers to when creating the verification execution schedule 219A, and based on this, determines the order in which the verification application programs 212 are verified. The higher the value of the priority 404, the higher the priority of the verification. For example, when the driving environment condition 402 is satisfied and the free CPU resource condition 403 is also satisfied, the verification application programs 212 with the highest priority are verified first.

例えば、検証計画情報213が図5に示す例のとおりであり、天気が曇りであり、かつ空きCPUリソースが10%以上存在している場合には、優先度が「20」の「認知アプリA」ではなく、優先度が「30」の「認知アプリB」の検証が優先的にスケジューリングされる。ただし検証のスケジューリング方法は、優先度だけでなく他の情報も併せて、検証アプリ実行制御部224にて特定のアルゴリズムで制御されてもよい。この優先度の定義は検証管理サーバ10の検証計画情報生成部103にて行われてもよいし、車載制御装置21上の走行環境条件成立予測部で、成立予測に基づいて定義を修正してもよい。 For example, when the verification plan information 213 is as shown in the example in FIG. 5, the weather is cloudy, and there are 10% or more free CPU resources, verification of "cognitive application B" with a priority of "30" is scheduled preferentially rather than "cognitive application A" with a priority of "20". However, the method of scheduling the verification may be controlled by a specific algorithm in the verification application execution control unit 224 in combination with not only the priority but also other information. This definition of the priority may be performed by the verification plan information generation unit 103 of the verification management server 10, or the definition may be modified based on the prediction of fulfillment by the driving environment condition fulfillment prediction unit on the in-vehicle control device 21.

検証方法定義405は、検証アプリケーションプログラム212の検証方法の定義である。検証アプリ実行制御部224は、この検証方法定義405に従って、実行した検証アプリケーションプログラム212の検証成否および進捗情報を管理する。検証方法定義405はアプリケーションに依存して設定される項目である。例えば検証方法定義405には、検証アプリケーションプログラム212の適切な出力値の範囲が直接定義されてもよい。また検証方法定義405には、出力が同一になるべき基本アプリケーションプログラム211が指定されてもよい。具体例を説明する。 The verification method definition 405 is a definition of the verification method of the verification application program 212. The verification application execution control unit 224 manages the verification success/failure and progress information of the executed verification application program 212 according to this verification method definition 405. The verification method definition 405 is an item that is set depending on the application. For example, the verification method definition 405 may directly define the range of appropriate output values of the verification application program 212. The verification method definition 405 may also specify a basic application program 211 whose output should be the same. A specific example will be described.

ここでは、検証アプリケーションプログラム212が既存の基本アプリケーションプログラム211を改良したものであるケースを想定する。この場合に、改良が機能自体は変更がなく、アルゴリズムが簡略化や効率化された場合などにはこの出力値を基本アプリケーションプログラム211の出力値と比較するのみで問題ないケースが多い。その一方で、改良が機能の変更である場合には、単純に基本アプリケーションプログラムのとの出力値の比較では対応できないことがある。その際には、検証アプリケーションプログラム212の適切な出力値を予め検証方法定義405に記載しておく。 Here, we consider the case where the verification application program 212 is an improvement of the existing basic application program 211. In this case, if the improvement does not change the function itself, but simplifies or streamlines the algorithm, it is often sufficient to simply compare this output value with the output value of the basic application program 211. On the other hand, if the improvement is a change in function, it may not be possible to simply compare the output value with that of the basic application program. In such cases, the appropriate output value of the verification application program 212 is written in advance in the verification method definition 405.

さらに検証方法定義405には次のケースも考えられる。例えば、3つのアプリケーションプログラムである検証アプリケーションプログラムA、B、Cの検証を次のように省力化できる。検証アプリケーションプログラムA、B、Cを複数連成して動作させる場合に、アプリケーションプログラムCの出力値を厳密にチェックすることで、前段のアプリケーションプログラムA、Bの検証を実質的には検証を済ませることが考えられる。 Furthermore, the following case can be considered for the verification method definition 405. For example, the verification of three application programs, verification application programs A, B, and C, can be simplified as follows. When multiple verification application programs A, B, and C are operated in conjunction with each other, it is possible to essentially complete the verification of the preceding application programs A and B by strictly checking the output value of application program C.

図6(a)~(c)は検証管理サーバ10における走行環境条件予測情報116と、車載制御装置21上の走行環境条件予測情報217のデータのフォーマットの例を3つ示す図である。ここでは代表して走行環境条件予測情報116のフォーマットとして説明する。検証管理サーバ10における走行環境条件予測情報116と、車載制御装置21上の走行環境条件予測情報217のデータのフォーマットとは、同一でもよいし異なってもよい。 Figures 6(a) to (c) are diagrams showing three examples of the data format of the driving environment condition prediction information 116 in the verification management server 10 and the driving environment condition prediction information 217 on the in-vehicle control device 21. Here, the format of the driving environment condition prediction information 116 will be explained as a representative example. The data formats of the driving environment condition prediction information 116 in the verification management server 10 and the driving environment condition prediction information 217 on the in-vehicle control device 21 may be the same or different.

図6(a)に示す例では、走行環境条件予測情報217をテーブルの形態で保持している場合のフォーマットを示す。走行環境条件予測情報217は、検証アプリケーションプログラム名511と、走行環境条件512と、直近の成立タイミング513と、直近の不成立タイミング514と、のカラムを含む。走行環境条件512に対して、直近の成立タイミング513と、直近の不成立タイミング514が定義されている。 The example shown in FIG. 6(a) shows a format in the case where the driving environment condition prediction information 217 is stored in the form of a table. The driving environment condition prediction information 217 includes columns for a verification application program name 511, a driving environment condition 512, a most recent fulfillment timing 513, and a most recent failure timing 514. For the driving environment condition 512, the most recent fulfillment timing 513 and the most recent failure timing 514 are defined.

図6(a)の1行目の例では、走行環境条件512が「交差点領域にいる場合」と定義されており、直近の不成立タイミングが5秒後、と定義されている。これは、この走行環境条件の内容が成立しており、はじめて不成立になるタイミングが5秒後であることを示している。車載制御装置21上の検証アプリ実行制御部224は、例えば、この情報を用いて検証アプリケーションプログラム212が「認知アプリA」と走行環境条件216が「交差点領域にいる場合」の組に対する検証優先度215の値を大きくし、直近に優先的に検証が実行されるように調整する。これにより、将来の不成立がわかっているアプリケーションプログラムの走行環境条件に対して、優先的に検証を実行する制御が可能となる。 In the example of the first line in FIG. 6(a), the driving environment condition 512 is defined as "when in an intersection area", and the timing of the most recent failure is defined as 5 seconds later. This indicates that the content of this driving environment condition is satisfied, and the timing of the first failure is 5 seconds later. The verification application execution control unit 224 on the in-vehicle control device 21 uses this information, for example, to increase the value of the verification priority 215 for the combination of the verification application program 212 "cognition application A" and the driving environment condition 216 "when in an intersection area", and adjusts so that verification is executed with priority in the near future. This makes it possible to control the execution of verification with priority for driving environment conditions of application programs that are known to be failed in the future.

図6(a)の2行目の例では走行環境条件512が「周辺車両がX台存在する場合」と定義されており、直近の成立タイミングが5秒後、と定義されている。車載制御装置21上の検証アプリ実行制御部224は、例えば、「認知アプリA」の走行環境条件216に対して検証を行いたい場合には、5秒後に検証スケジューリングを再実行するようにタイマーをかけることが考えられる。またその際に、検証計画情報213の優先度404を上げることが考えられる。これにより、走行環境条件216が不成立だったアプリケーションプログラムに対して、走行環境条件216が成立してから最短で優先的に実行するような制御が可能となる。 In the example of the second line in FIG. 6(a), the driving environment condition 512 is defined as "when there are X surrounding vehicles", and the timing of the most recent fulfillment is defined as 5 seconds later. For example, when the verification application execution control unit 224 on the in-vehicle control device 21 wishes to verify the driving environment condition 216 of "cognition application A", it can set a timer to re-execute the verification schedule in 5 seconds. At that time, it can also raise the priority 404 of the verification plan information 213. This makes it possible to control the application program for which the driving environment condition 216 was not satisfied to be executed as quickly as possible after the driving environment condition 216 is satisfied.

図6(b)に示す例では、特定の検証アプリケーションプログラム212と走行環境条件216の組合せを対象とする走行環境条件予測情報217を、成立または非成立の2値の時系列データとして保持している。この例では、図6(a)に示す例では不可能であった、走行環境条件の複数回の成立および不成立を表現することができる。これにより例えば、現状成立しており5秒後に非成立し、6秒後にすぐ再度成立するケースにおいて、図6(a)の説明において述べたような優先度を上げる制御を行う必要がないことが表現できる。このように図6(b)に示す例では、将来の一定期間における成立・非成立の頻度や成立時間の情報を保持できるので、これを用いた検証スケジュールの制御が可能となる。 In the example shown in FIG. 6(b), driving environment condition prediction information 217 for a combination of a specific verification application program 212 and driving environment condition 216 is stored as binary time series data of true or false. In this example, it is possible to express multiple instances of a driving environment condition being true or false, which was not possible in the example shown in FIG. 6(a). This makes it possible to express, for example, that in a case where a condition is currently true, false after 5 seconds, and then true again immediately after 6 seconds, there is no need to perform control to raise the priority as described in the explanation of FIG. 6(a). In this way, the example shown in FIG. 6(b) can store information on the frequency of true/false and the time of true for a certain period of time in the future, making it possible to control the verification schedule using this information.

図6(c)に示す例では、特定の検証アプリケーションプログラム212と走行環境条件216の組合せを対象とする走行環境条件予測情報217を、成立確率の時系列データとして保持している。走行環境条件の成立予測を、例えば基本アプリケーションプログラム211の認知アプリケーションの結果を用いて行う場合に、その認知アプリケーションが出力を確率として表現する際に、それをそのまま予測情報として用いることができる。もし図6(b)の例のように2値で表現せざるを得ない場合、例えば成立確率が0.5として本来存在する場合に、その情報を切り上げや切り捨てを行うので正確な情報を失ってしまう。予測情報としてそのまま確率として保持することができれば、より正確な予測情報に基づいて検証スケジュールの制御が可能となる。 In the example shown in FIG. 6(c), driving environment condition prediction information 217 for a combination of a specific verification application program 212 and driving environment conditions 216 is stored as time-series data of probability of occurrence. When predicting whether a driving environment condition will occur using, for example, the results of a recognition application of the basic application program 211, when the recognition application expresses the output as a probability, this can be used as the prediction information as is. If it is necessary to express it as a binary value as in the example of FIG. 6(b), for example when the probability of occurrence is originally 0.5, the information will be rounded up or down, resulting in loss of accurate information. If it can be stored as a probability as prediction information, it becomes possible to control the verification schedule based on more accurate prediction information.

図7は、検証アプリ実行制御部224による検証アプリケーションプログラム212の検証実行スケジュール219Aの定義処理を示すフローチャートである。なお図7は、検証実行スケジュール219Aの作成処理や修正処理を示すフローチャートとも呼べる。検証アプリ実行制御部224は、まずステップS500において、実行スケジューリング要求を受けてステップS501に進む。 Figure 7 is a flowchart showing the process of defining the verification execution schedule 219A of the verification application program 212 by the verification application execution control unit 224. Note that Figure 7 can also be called a flowchart showing the process of creating or modifying the verification execution schedule 219A. First, in step S500, the verification application execution control unit 224 receives an execution scheduling request and proceeds to step S501.

ステップS500を詳述すると、検証アプリ実行制御部224は、車載制御装置21のミドルウェアやOS、アプリケーションのいずれからこの要求を受けてもよい。この要求を受けるタイミングは起動時、停止中、走行中のいずれでもよい。さらに検証アプリ実行制御部224は、検証管理サーバ10から動的に要求を受けてもよい。例えば、優先度の高い検証アプリケーションプログラム212が検証管理サーバ10で定義された際に、検証管理サーバ10から各車両2の検証実行スケジュール219Aを変更するように要求されることが考えられる。また、走行環境条件216の成立が困難である場合には、検証管理サーバ10が成立条件を予測した場合にスケジューリングを要求することがありうる。 To explain step S500 in more detail, the verification application execution control unit 224 may receive this request from any of the middleware, OS, or application of the in-vehicle control device 21. The timing of receiving this request may be at startup, while stopped, or while driving. Furthermore, the verification application execution control unit 224 may dynamically receive a request from the verification management server 10. For example, when a high-priority verification application program 212 is defined by the verification management server 10, the verification management server 10 may request that the verification execution schedule 219A of each vehicle 2 be changed. Furthermore, when it is difficult to satisfy the driving environment conditions 216, the verification management server 10 may request scheduling when it predicts the conditions to be satisfied.

検証アプリ実行制御部224は、ステップS501において、検証計画情報213を読み込む。この検証計画情報213は例えば図5に図示したデータフォーマットで構成され、各エントリに検証アプリケーションプログラム名、走行環境条件、検証方法定義、検証優先度などを含む。もし、最新の検証計画情報を検証管理サーバ10から受け取って一定の時間が経過していた場合には、検証アプリ実行制御部224は検証管理サーバ10に検証計画情報213を要求してもよい。検証アプリ実行制御部224は、ステップS502において、走行環境条件予測情報217を読み込む。この走行環境条件予測情報217は走行環境条件に関して、走行環境条件成立予測部227が作成した予測情報である。 In step S501, the verification application execution control unit 224 reads the verification plan information 213. This verification plan information 213 is configured, for example, in the data format shown in FIG. 5, and each entry includes the verification application program name, driving environment conditions, verification method definition, verification priority, etc. If a certain amount of time has passed since the latest verification plan information was received from the verification management server 10, the verification application execution control unit 224 may request the verification plan information 213 from the verification management server 10. In step S502, the verification application execution control unit 224 reads the driving environment condition prediction information 217. This driving environment condition prediction information 217 is prediction information created by the driving environment condition establishment prediction unit 227 regarding the driving environment conditions.

検証アプリ実行制御部224は、ステップS503において、走行環境条件予測情報217に基づいて検証計画エントリの優先度を更新してステップS504に進む。この更新の一例を説明する。図6(a)に示す例のように、走行環境条件512が「交差点領域にいる場合」と定義されており、直近の不成立タイミングが5秒後、と定義されている場合を想定する。この場合に検証アプリ実行制御部224は、例えば、走行環境条件予測情報217を用いてこのアプリケーションプログラムと走行環境条件512の組に対する検証優先度215の値を大きくし、直近に優先的に検証が実行されるように調整する。これにより、将来の不成立がわかっている検証アプリケーションプログラム212の走行環境条件に対して、優先的に検証を実行する制御が可能となる。 In step S503, the verification application execution control unit 224 updates the priority of the verification plan entry based on the driving environment condition prediction information 217, and proceeds to step S504. An example of this update will be described. As shown in the example of FIG. 6(a), assume that the driving environment condition 512 is defined as "when in an intersection area" and the timing of the most recent failure is defined as 5 seconds later. In this case, the verification application execution control unit 224 uses, for example, the driving environment condition prediction information 217 to increase the value of the verification priority 215 for the pair of this application program and driving environment condition 512, and adjusts so that the verification is executed with priority in the near future. This makes it possible to control the execution of verification with priority for driving environment conditions of the verification application program 212 that are known to be failed in the future.

優先度の更新の別の例を、図6(b)を参照して説明する。図6(b)に示す例では、ある走行環境条件が現状成立しており5秒後に非成立し、6秒後にすぐ再度成立する。この場合には、優先度を上げる制御を行う必要がないため、優先度を下げることが考えられる。 Another example of updating the priority will be described with reference to FIG. 6(b). In the example shown in FIG. 6(b), a certain driving environment condition is currently satisfied, becomes non-satisfied after 5 seconds, and is satisfied again immediately after 6 seconds. In this case, since there is no need to perform control to increase the priority, it is possible to lower the priority.

検証アプリ実行制御部224は、ステップS504において、検証計画情報213の中で優先度の高い検証計画エントリから順に走査し、走行環境条件402を満たす検証計画エントリを抽出する。走行環境条件402を満足するか否かの具体例を説明する。まず走行環境条件402が場所に関する条件である「交差点領域にいること」である場合の例を説明する。この場合にはたとえば、基本アプリケーションプログラム211の自己位置推定アプリケーションの出力する自己位置データをもとに判断する。車両2が交差点領域にいる場合であれば走行環境条件402を満たしたものとして、ステップS505に進む。車両2が交差点領域にいない場合には走行環境条件402を満たさないので、次に優先度の高い走行環境条件に移る。 In step S504, the verification application execution control unit 224 scans the verification plan information 213, starting with the verification plan entry with the highest priority, and extracts a verification plan entry that satisfies the driving environment condition 402. A specific example of whether or not the driving environment condition 402 is satisfied will be described. First, an example will be described in which the driving environment condition 402 is "being in an intersection area", which is a location-related condition. In this case, for example, the determination is made based on the self-position data output by the self-position estimation application of the basic application program 211. If the vehicle 2 is in the intersection area, it is determined that the driving environment condition 402 is satisfied, and the process proceeds to step S505. If the vehicle 2 is not in the intersection area, the driving environment condition 402 is not satisfied, and the process moves to the driving environment condition with the next highest priority.

ステップS504の別な具体例を説明する。走行環境条件402に例えば、「車種XXであること」等の車両に関する条件が設定されている場合には、例えば、車両情報219に基づいて判断する。車両情報219に含まれる車種の情報が「車種XX」に合致する場合には走行環境条件402を満たしたものとして、ステップS505に進む。車両情報219に含まれる車種の情報が「車種XX」に合致しない場合には走行環境条件402を満たさないので、次に優先度の高い走行環境条件に移る。 Another specific example of step S504 will be described. If a vehicle-related condition, such as "must be vehicle model XX," is set in driving environment condition 402, a judgment is made, for example, based on vehicle information 219. If the vehicle model information included in vehicle information 219 matches "vehicle model XX," it is deemed that driving environment condition 402 is satisfied, and the process proceeds to step S505. If the vehicle model information included in vehicle information 219 does not match "vehicle model XX," driving environment condition 402 is not satisfied, and the process moves to the driving environment condition with the next highest priority.

ステップS504のさらに別な具体例を説明する。走行環境条件402に例えば、「天気が曇りであること」等の天候に関する条件が設定されている場合には、例えば、基本アプリケーションプログラム211の画像認識アプリケーションが出力する天候情報をもとに判断する。天候情報が曇りの場合には、走行環境条件402を満たしたものとして、ステップS505に進む。天候情報が曇り以外の場合には走行環境条件402を満たさないので、次に優先度の高い走行環境条件に移る。もし、走行環境条件が存在しない場合はステップS507へ進む。 Another specific example of step S504 will be described. If a weather-related condition such as "the weather is cloudy" is set in the driving environment condition 402, a judgment is made based on weather information output by the image recognition application of the basic application program 211, for example. If the weather information is cloudy, it is assumed that the driving environment condition 402 is satisfied, and the process proceeds to step S505. If the weather information is other than cloudy, the driving environment condition 402 is not satisfied, and the process moves to the driving environment condition with the next highest priority. If there is no driving environment condition, the process proceeds to step S507.

なおステップS504において優先度が同じ値の検証計画エントリが複数存在する場合には、任意の検証計画エントリから選択してもよいし、検証に要するCPUリソースが大きいものから走査してもよい。このように、検証アプリケーションプログラム212の走行環境条件216を優先度の高いものから空きCPUリソース条件に基づいて判断することで、CPUリソースが少ない環境においても、優先度の高いアプリケーションの検証を優先的に完了することができる。 If there are multiple verification plan entries with the same priority value in step S504, any verification plan entry may be selected, or the verification plan entries requiring the most CPU resources may be scanned first. In this way, by determining the running environment conditions 216 of the verification application program 212 based on the free CPU resource conditions starting with the highest priority, the verification of high priority applications can be completed preferentially even in an environment with few CPU resources.

検証アプリ実行制御部224は、ステップS505において、CPUリソース条件や、予測情報などに基づいて、タスクに対して検証アプリケーションプログラム212の実行を割り当てる。この割り当てとは、検証実行スケジュール219Aに書き込みを行うことである。予測情報に基づく割り当てとは、例えば、走行環境条件の成立がXXms後に成立することが予測されている場合は、そのXXmsの経過後に実行されるように割り当てられるのが望ましい。また逆に、YYms後に不成立となることが予測されている場合は、そのYYmsの経過前に割当てられるのが望ましい。さらに、長時間成立しないことが予測されている場合には、当該アプリケーションプログラムは検証のためのタスクに割当てずに、他の検証アプリケーションプログラム212に譲るようにしてもよい。検証アプリ実行制御部224は、車載制御装置21上のCPUリソース状態の情報を受け取り、CPUリソース条件403に記載された数値との大小関係を比較することで、CPUリソース条件403を満足するか否かを判断する。 In step S505, the verification application execution control unit 224 assigns the execution of the verification application program 212 to the task based on the CPU resource conditions and the prediction information. This assignment is to write to the verification execution schedule 219A. For example, when it is predicted that the driving environment conditions will be satisfied after XX ms, it is desirable to assign the execution after the XX ms have elapsed. Conversely, when it is predicted that the driving environment conditions will not be satisfied after YY ms, it is desirable to assign the execution before the YY ms have elapsed. Furthermore, when it is predicted that the conditions will not be satisfied for a long time, the application program may not be assigned to a task for verification, but may be handed over to another verification application program 212. The verification application execution control unit 224 receives information on the CPU resource status on the vehicle control device 21, and compares the magnitude relationship with the numerical value described in the CPU resource condition 403 to determine whether the CPU resource condition 403 is satisfied.

検証アプリ実行制御部224は、続くステップS506において、検証用のCPUリソースの空きが存在するか否かを判断する。検証アプリ実行制御部224は、リソースの空きが存在しないと判断する場合はステップS507に進み、リソースの空きが存在すると判断する場合にはステップS504に戻り、次に優先度の高い検証アプリケーションプログラムの割り当てを試みる。 In the next step S506, the verification application execution control unit 224 determines whether or not there is free CPU resource for verification. If the verification application execution control unit 224 determines that there is no free resource, it proceeds to step S507, and if it determines that there is free resource, it returns to step S504 and attempts to allocate the next highest priority verification application program.

検証アプリ実行制御部224は、ステップS507において、検証実行スケジュール219Aを確定して車載記憶部210に格納して図7に示す処理を終了する。検証アプリ実行制御部224は、この検証実行スケジュール219Aに基づいて検証アプリケーションプログラム212を実行する。 In step S507, the verification application execution control unit 224 finalizes the verification execution schedule 219A, stores it in the in-vehicle storage unit 210, and ends the process shown in FIG. 7. The verification application execution control unit 224 executes the verification application program 212 based on this verification execution schedule 219A.

図8は、検証管理サーバ10における検証進捗情報115の一例を示す図である。図8では検証進捗情報115がテーブルのフォーマットで表され、複数のエントリを有する。このエントリを以下では「進捗情報エントリ」とも呼ぶ。この進捗情報エントリは、検証計画情報117の検証計画エントリに対応して存在する。 Figure 8 is a diagram showing an example of verification progress information 115 in the verification management server 10. In Figure 8, the verification progress information 115 is represented in a table format and has multiple entries. These entries are also referred to as "progress information entries" below. These progress information entries exist in correspondence with the verification plan entries of the verification plan information 117.

進捗情報エントリは検証アプリケーションプログラム名710と、走行環境条件711と、進捗値712と、を含む。このエントリに検証経過時間713が含まれていてもよい。検証アプリケーションプログラム名710と走行環境条件711の組は、検証計画エントリに存在するものと対応する。進捗情報エントリの進捗値712は、検証の進捗を示す。この値の進捗表現値は検証アプリケーションプログラムに依存し、検証アプリケーションプログラムのカバレッジを示す場合や、検証アプリケーションプログラムを検証動作させる目標時間に対するその時の検証実行時間の割合を示す場合を示す。この検証進捗情報115は車載制御装置21の検証アプリ実行制御部224において作られる。 The progress information entry includes a verification application program name 710, driving environment conditions 711, and a progress value 712. This entry may also include a verification elapsed time 713. The pair of the verification application program name 710 and the driving environment conditions 711 corresponds to those present in the verification plan entry. The progress value 712 of the progress information entry indicates the progress of the verification. This progress expression value depends on the verification application program, and may indicate the coverage of the verification application program or the ratio of the verification execution time at that time to the target time for verifying the verification application program. This verification progress information 115 is created in the verification application execution control unit 224 of the vehicle control device 21.

進捗情報エントリの検証経過時間713は、当該アプリケーションプログラムと走行環境条件が検証計画情報として初めて車載制御装置21上でスケジューリングされてから経過した時間を示す。なお、検証管理サーバ10上での経過時間が検証進捗情報115に含まれてもよい。 The verification elapsed time 713 of the progress information entry indicates the time that has elapsed since the application program and the driving environment conditions were first scheduled on the in-vehicle control device 21 as verification plan information. Note that the elapsed time on the verification management server 10 may also be included in the verification progress information 115.

図9は、検証計画情報生成部103による検証計画情報117の生成処理を示すフローチャートである。検証計画情報生成部103は、まずステップS800において、検証計画情報生成要求を受ける。検証計画情報生成部103は、ステップS801において、検証の検証進捗情報115と走行環境条件予測情報116を受け取る。検証進捗情報115は検証結果取得部102から受け取り、走行環境条件予測情報116は走行環境条件成立予測部104から受け取る。 Figure 9 is a flowchart showing the process of generating verification plan information 117 by the verification plan information generation unit 103. First, in step S800, the verification plan information generation unit 103 receives a request to generate verification plan information. In step S801, the verification plan information generation unit 103 receives verification progress information 115 and driving environment condition prediction information 116. The verification progress information 115 is received from the verification result acquisition unit 102, and the driving environment condition prediction information 116 is received from the driving environment condition establishment prediction unit 104.

検証計画情報生成部103は、ステップS802において、検証計画情報213を生成する。検証計画情報生成部103は、それぞれの検証計画エントリに対して、検証進捗情報115に基づいて検証経過時間に対して進捗値が小さいものの優先度を上げてもよい。また、検証経過時間に対して進捗値が大きいものの優先度を下げてもよい。また、検証管理サーバ10における走行環境条件予測情報116に基づき、直近で不成立であるが将来的に成立見込みのある検証計画エントリを優先度下げてもよいし、逆に直近は成立するが、将来的に不成立見込みのある検証計画エントリの優先度を上げてもよい。 In step S802, the verification plan information generating unit 103 generates the verification plan information 213. For each verification plan entry, the verification plan information generating unit 103 may increase the priority of the verification plan entry with a small progress value relative to the verification elapsed time based on the verification progress information 115. The verification plan information generating unit 103 may also decrease the priority of the verification plan entry with a large progress value relative to the verification elapsed time. Furthermore, based on the driving environment condition prediction information 116 in the verification management server 10, the verification plan information generating unit 103 may decrease the priority of a verification plan entry that has not been satisfied recently but is likely to be satisfied in the future, or conversely, may increase the priority of a verification plan entry that has been satisfied recently but is likely to be satisfied in the future.

上述した第1の実施の形態によれば、次の作用効果が得られる。
(1)車載制御装置21は、車両2に搭載され、車両2の走行制御に関する基本アプリケーションプログラム211、複数の検証アプリケーションプログラム212、検証アプリケーションプログラム212を検証する車両2に関する条件である走行環境条件216、および走行環境条件216の検証優先度215、を格納する車載記憶部210と、走行環境条件216および検証優先度215に基づき、検証アプリケーションプログラム212の検証の実行を制御する検証アプリ実行制御部224と、を備える。そのため車載制御装置21は、検証する条件と優先度を考慮して、複数の検証アプリケーションプログラム212の検証を効率よく実行できる。
According to the above-described first embodiment, the following advantageous effects can be obtained.
(1) The in-vehicle control device 21 is mounted on the vehicle 2 and includes an in-vehicle storage unit 210 that stores a basic application program 211 related to driving control of the vehicle 2, multiple verification application programs 212, driving environment conditions 216 that are conditions related to the vehicle 2 for verifying the verification application programs 212, and verification priorities 215 of the driving environment conditions 216, and a verification application execution control unit 224 that controls execution of verification of the verification application programs 212 based on the driving environment conditions 216 and the verification priorities 215. Therefore, the in-vehicle control device 21 can efficiently verify the multiple verification application programs 212 in consideration of the conditions and priorities to be verified.

(2)車載制御装置21は、車載記憶部210に、走行環境条件216における検証方法を定義した検証方法定義214が格納される。検証アプリ実行制御部224は、さらに検証方法定義214に基づき検証アプリケーションプログラム212の検証の実行を制御する。そのため車載制御装置21は、検証アプリケーションプログラム212の検証の成否を容易に判断できる。たとえば検証アプリケーションプログラム212が、既存の基本アプリケーションプログラム211と同一の機能を有し、アルゴリズムを改善して実行速度を向上させた場合には、既存の基本アプリケーションプログラム211と出力値が一致するか否かを検証する。 (2) In the on-board control device 21, a verification method definition 214 that defines a verification method under driving environment conditions 216 is stored in the on-board storage unit 210. The verification application execution control unit 224 further controls the execution of the verification of the verification application program 212 based on the verification method definition 214. Therefore, the on-board control device 21 can easily determine whether the verification of the verification application program 212 has been successful. For example, if the verification application program 212 has the same functions as the existing basic application program 211 and the algorithm has been improved to increase the execution speed, it is verified whether the output value matches that of the existing basic application program 211.

(3)検証アプリ実行制御部224は、検証アプリケーションプログラム212の検証に必要なデータを基本アプリケーションプログラム211から取得する。そのため検証アプリ実行制御部224は、データ処理の一部を省略でき、効率よく検証を実行できる。 (3) The verification application execution control unit 224 obtains data necessary for verifying the verification application program 212 from the basic application program 211. Therefore, the verification application execution control unit 224 can omit a part of the data processing and can perform the verification efficiently.

(4)車載制御装置21は、車両2の走行環境が、検証計画情報213に含まれる走行環境条件216に合致するタイミングを予測する走行環境条件成立予測部227を備える。検証アプリ実行制御部224は、走行環境条件成立予測部227が予測した走行環境条件予測情報217に基づき、検証アプリケーションプログラム212の検証の実行を制御する。検証アプリ実行制御部224は、走行環境条件成立予測部227の予測に基づき検証実行スケジュール219Aを作成し、検証実行スケジュール219Aに従って検証を行うので、たとえば車両2の進行予定にあわせて複数の検証アプリケーションプログラム212を効率よく検証できる。 (4) The on-board control device 21 includes a driving environment condition satisfaction prediction unit 227 that predicts the timing when the driving environment of the vehicle 2 will match the driving environment conditions 216 included in the verification plan information 213. The verification application execution control unit 224 controls the execution of the verification of the verification application program 212 based on the driving environment condition prediction information 217 predicted by the driving environment condition satisfaction prediction unit 227. The verification application execution control unit 224 creates a verification execution schedule 219A based on the prediction of the driving environment condition satisfaction prediction unit 227 and performs verification according to the verification execution schedule 219A. Therefore, for example, multiple verification application programs 212 can be efficiently verified in accordance with the planned progress of the vehicle 2.

(5)検証管理サーバ10は、車両2と通信可能である。検証管理サーバ10は、車両2において検証されるアプリケーションである検証アプリケーションプログラム111、および検証アプリケーションプログラム111を検証すべき条件である走行環境条件114を格納するサーバ記憶部110と、車両2から取得した車両情報219および走行環境条件114に基づき検証アプリケーションプログラム212の検証優先度113を決定し、走行環境条件114と、検証アプリケーションプログラム212と、検証優先度113と、を含む検証計画情報117を生成する検証計画情報生成部103と、検証計画情報117を車両2に出力する検証計画情報出力部101と、を備える。そのため検証管理サーバ10は、車両2から取得した車両情報219および走行環境条件114に基づき検証アプリケーションプログラム212の検証優先度113を決定するので、複数の検証アプリケーションプログラム212の検証を効率よく実行させることができる。 (5) The verification management server 10 is capable of communicating with the vehicle 2. The verification management server 10 includes a server storage unit 110 that stores a verification application program 111, which is an application to be verified in the vehicle 2, and a driving environment condition 114, which is a condition under which the verification application program 111 should be verified; a verification plan information generating unit 103 that determines a verification priority 113 of the verification application program 212 based on the vehicle information 219 and the driving environment condition 114 acquired from the vehicle 2, and generates verification plan information 117 including the driving environment condition 114, the verification application program 212, and the verification priority 113; and a verification plan information output unit 101 that outputs the verification plan information 117 to the vehicle 2. Therefore, the verification management server 10 determines the verification priority 113 of the verification application program 212 based on the vehicle information 219 and the driving environment condition 114 acquired from the vehicle 2, and therefore can efficiently execute the verification of multiple verification application programs 212.

(6)車両情報219は、車両2において実行された検証アプリケーションプログラム212の検証結果を含む。検証計画情報生成部103は、検証アプリケーションプログラム212の検証結果に基づき検証アプリケーションプログラム212の検証進捗情報115を更新し、検証進捗情報115に基づいて検証アプリケーションプログラム111の検証優先度113を決定する。そのため検証管理サーバ10は、進捗にあわせて検証優先度113を操作することで、一部の検証アプリケーションプログラム212だけが著しく遅れる事態を回避できる。さらに、検証管理サーバ10に複数の車載制御装置21が接続されている場合には、複数の車載制御装置21における検証の進捗をもとに検証優先度113を操作するので、1台の車載制御装置21だけでは不可能な、検証システム1の全体としての最適化ができる。 (6) The vehicle information 219 includes the verification results of the verification application program 212 executed in the vehicle 2. The verification plan information generating unit 103 updates the verification progress information 115 of the verification application program 212 based on the verification results of the verification application program 212, and determines the verification priority 113 of the verification application program 111 based on the verification progress information 115. Therefore, the verification management server 10 can avoid a situation where only some of the verification application programs 212 are significantly delayed by manipulating the verification priority 113 according to the progress. Furthermore, when multiple vehicle control devices 21 are connected to the verification management server 10, the verification priority 113 is manipulated based on the progress of the verification in the multiple vehicle control devices 21, so that the verification system 1 can be optimized as a whole, which is not possible with only one vehicle control device 21.

(7)検証管理サーバ10は、車両情報219に基づき、車両2の走行環境が検証計画情報117に含まれる走行環境条件に合致するタイミングを予測する走行環境条件成立予測部104を備える。検証計画情報生成部103は、予測したタイミングに基づき、検証アプリケーションプログラム111の検証優先度113を決定する。そのため検証管理サーバ10は、それぞれの車載制御装置21に最適な検証アプリケーションプログラム212の検証を担当させ、検証システム1の全体としての最適化ができる。 (7) The verification management server 10 includes a driving environment condition satisfaction prediction unit 104 that predicts the timing when the driving environment of the vehicle 2 will match the driving environment conditions included in the verification plan information 117 based on the vehicle information 219. The verification plan information generation unit 103 determines the verification priority 113 of the verification application program 111 based on the predicted timing. Therefore, the verification management server 10 assigns each on-board control device 21 to verify the optimal verification application program 212, thereby optimizing the verification system 1 as a whole.

(8)検証システム1は、車両2に搭載される車載制御装置21および車載制御装置21と通信可能な検証管理サーバ10を含む。検証管理サーバ10は、車両2において検証されるアプリケーションである検証アプリケーションプログラム111、および検証アプリケーションプログラム212を検証すべき条件である走行環境条件114を格納するサーバ記憶部110と、車両2から取得した車両情報219および走行環境条件114に基づき検証アプリケーションプログラム212の検証優先度113を決定し、走行環境条件114と、検証アプリケーションプログラム111と、検証優先度113と、を含む検証計画情報117を生成する検証計画情報生成部103と、検証計画情報117を車両2に出力する検証計画情報出力部101と、を備える。車載制御装置21は、検証管理サーバ10が出力した検証計画情報117を取得する検証計画情報取得部225と、車両2の走行制御に関する基本アプリケーションプログラム211と並行して、検証アプリケーションプログラム212の検証の実行を走行環境条件216と検証優先度215に基づき制御する検証アプリ実行制御部224と、を備える。そのため検証システム1は、複数の検証アプリケーションプログラム212の検証を効率よく実行できる。 (8) The verification system 1 includes an on-board control device 21 mounted on the vehicle 2 and a verification management server 10 capable of communicating with the on-board control device 21. The verification management server 10 includes a server memory unit 110 that stores a verification application program 111, which is an application to be verified in the vehicle 2, and driving environment conditions 114, which are conditions under which the verification application program 212 should be verified, a verification plan information generation unit 103 that determines a verification priority 113 of the verification application program 212 based on vehicle information 219 and the driving environment conditions 114 acquired from the vehicle 2, and generates verification plan information 117 including the driving environment conditions 114, the verification application program 111, and the verification priority 113, and a verification plan information output unit 101 that outputs the verification plan information 117 to the vehicle 2. The in-vehicle control device 21 includes a verification plan information acquisition unit 225 that acquires the verification plan information 117 output by the verification management server 10, and a verification application execution control unit 224 that controls the execution of the verification of the verification application program 212 based on the driving environment conditions 216 and the verification priority 215 in parallel with the basic application program 211 related to the driving control of the vehicle 2. Therefore, the verification system 1 can efficiently execute the verification of multiple verification application programs 212.

(変形例1)
車載制御装置21における優先度の更新量と、検証管理サーバ10における優先度の更新量の配分はシステム全体で事前に調整してもよい。例えば、車載制御装置21における優先度の更新を全く行わず、検証管理サーバ10でのみ優先度の更新するようにしてもよい。もしくは、例えば、検証管理サーバ10で優先度を更新し、さらに車両2での予測の結果に基づいて、細かく調整可能としてもよい。なお車載制御装置21における優先度の更新を行わない場合には、図7のステップS503の処理を行わない。
(Variation 1)
The distribution of the amount of priority updates in the on-board control device 21 and the amount of priority updates in the verification management server 10 may be adjusted in advance for the entire system. For example, the priority updates may not be performed at all in the on-board control device 21, and the priority updates may be performed only in the verification management server 10. Alternatively, for example, the priority updates may be performed in the verification management server 10, and further fine adjustments may be made based on the results of predictions in the vehicle 2. Note that if the priority updates are not performed in the on-board control device 21, the process of step S503 in FIG. 7 is not performed.

(変形例2)
図7に示した検証実行スケジュール219Aの定義処理は次の(A)~(C)のように変更してもよい。
(Variation 2)
The definition process of the verification execution schedule 219A shown in FIG. 7 may be modified as follows (A) to (C).

(A)図7では、ステップS504において、優先度の高い検証計画エントリから走査し、実行スケジュールを割り当てた。しかし別の方法として、優先度ではなく検証に必要とするCPUリソースが大きいものから走査してもよい。
(B)図7では、ステップS504において、優先度の高い検証計画エントリから走査した。しかしこの段階でCPUリソース条件403を確認し、CPUリソースを満たさないエントリについては無視してもよい。
(C)図7では検証計画情報213は読み込むのみであった。しかし、検証実行スケジュール219Aの定義が繰り返された際に、割り当てられない検証アプリケーションプログラム212に対して、優先度を大きくする処理を追加してもよい。それにより、一向に実行がスケジュールされない検証アプリケーションプログラム212の実行を保証することができる。
7, in step S504, the verification plan entries with the highest priority are scanned first, and an execution schedule is assigned. However, as an alternative method, the verification plan entries may be scanned in order of the CPU resources required for verification, rather than the priority.
7, in step S504, the verification plan entries with higher priority are scanned first. However, at this stage, the CPU resource condition 403 may be checked, and entries that do not satisfy the CPU resource requirement may be ignored.
7, the verification plan information 213 is only read. However, when the definition of the verification execution schedule 219A is repeated, a process may be added to increase the priority of the verification application program 212 that is not assigned. This makes it possible to guarantee the execution of the verification application program 212 that is never scheduled for execution.

(変形例3)
検証計画情報213には、検証方法定義214が含まれなくてもよい。この場合には車載制御装置21は、検証アプリケーションプログラム212の実行結果、たとえばプログラムが出力する情報を検証管理サーバ10に送信することで、検証の代替とすることができる。
(Variation 3)
The verification plan information 213 may not include the verification method definition 214. In this case, the in-vehicle control device 21 can substitute for the verification by transmitting the execution result of the verification application program 212, for example, information output by the program, to the verification management server 10.

(変形例4)
車載制御装置21は、走行環境条件成立予測部227を備えなくてもよい。この場合には車載制御装置21は、検証する検証アプリケーションプログラム212の順番を予め既定の手法またはランダムに決定してもよい。または車載制御装置21は、所定の時間間隔ごとに走行環境条件216の成立を判断し、そのときに成立している走行環境条件216を有する検証アプリケーションプログラム212を実行してもよい。
(Variation 4)
The on-board control device 21 may not include the driving environment condition satisfaction prediction unit 227. In this case, the on-board control device 21 may determine the order of the verification application programs 212 to be verified in advance using a predetermined method or randomly. Alternatively, the on-board control device 21 may determine whether the driving environment conditions 216 are satisfied at predetermined time intervals, and execute the verification application program 212 having the driving environment conditions 216 that are satisfied at that time.

(変形例5)
検証管理サーバ10の検証計画情報生成部103は、検証結果218に基づく検証優先度113の更新を行わなくてもよい。
(Variation 5)
The verification plan information generating unit 103 of the verification management server 10 does not need to update the verification priority 113 based on the verification result 218 .

(変形例6)
検証管理サーバ10は、走行環境条件成立予測部104を備えなくてもよい。この場合には検証管理サーバ10は、たとえばそれぞれの車載制御装置21にランダムに検証アプリケーションプログラム212の検証を割り当てる。
(Variation 6)
The verification management server 10 may not include the driving environment condition satisfaction prediction unit 104. In this case, the verification management server 10 randomly assigns the verification of the verification application program 212 to each on-board control device 21, for example.

上述した各実施の形態および変形例において、機能ブロックの構成は一例に過ぎない。別々の機能ブロックとして示したいくつかの機能構成を一体に構成してもよいし、1つの機能ブロック図で表した構成を2以上の機能に分割してもよい。また各機能ブロックが有する機能の一部を他の機能ブロックが備える構成としてもよい。 In each of the above-described embodiments and variations, the functional block configurations are merely examples. Several functional configurations shown as separate functional blocks may be configured together, or a configuration shown in a single functional block diagram may be divided into two or more functions. In addition, some of the functions of each functional block may be provided by other functional blocks.

車載制御装置21が不図示の入出力インタフェースを備え、必要なときに入出力インタフェースと車載制御装置21が利用可能な媒体を介して、他の装置からプログラムが読み込まれてもよい。ここで媒体とは、たとえば入出力インタフェースに着脱可能な記憶媒体、または通信媒体、すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号、を指す。また、プログラムにより実現される機能の一部または全部がハードウエア回路やFPGAにより実現されてもよい。上述した複数の変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。 The vehicle control device 21 may have an input/output interface (not shown), and a program may be loaded from another device via the input/output interface and a medium available to the vehicle control device 21 when necessary. The medium here refers to, for example, a storage medium that is detachable from the input/output interface, or a communication medium, i.e., a wired, wireless, optical, or other network, or a carrier wave or digital signal that propagates through the network. In addition, some or all of the functions realized by the program may be realized by a hardware circuit or an FPGA. The above-mentioned multiple modified examples may be combined with each other. Although various embodiments and modified examples have been described above, the present invention is not limited to these. Other aspects that are conceivable within the technical concept of the present invention are also included in the scope of the present invention.

上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。 The above-mentioned embodiments and modifications may be combined with each other. Although various embodiments and modifications have been described above, the present invention is not limited to these. Other aspects that are conceivable within the scope of the technical concept of the present invention are also included within the scope of the present invention.

10…検証管理サーバ
21…車載制御装置
101…検証計画情報出力部
102…検証結果取得部
103…検証計画情報生成部
104…走行環境条件成立予測部
110…サーバ記憶部
111、212…検証アプリケーションプログラム
112、214…検証方法定義
113、215…検証優先度
114、216…走行環境条件
115…検証進捗情報
116…走行環境条件予測情報
117、213…検証計画情報
210…車載記憶部
211…基本アプリケーションプログラム
217…走行環境条件予測情報
218…検証結果
219…車両情報
219A…検証実行スケジュール
220…処理部
221…センサ入力部
222…アクチュエータ出力部
223…基本アプリ実行制御部
224…検証アプリ実行制御部
225…検証計画情報取得部
226…検証結果出力部
227…走行環境条件成立予測部
10... Verification management server 21... On-board control device 101... Verification plan information output unit 102... Verification result acquisition unit 103... Verification plan information generation unit 104... Driving environment condition establishment prediction unit 110... Server storage unit 111, 212... Verification application program 112, 214... Verification method definition 113, 215... Verification priority 114, 216... Driving environment condition 115... Verification progress information 116... Driving environment condition prediction information 117, 213... Verification plan information 210... On-board storage unit 211... Basic application program 217... Driving environment condition prediction information 218... Verification result 219... Vehicle information 219A... Verification execution schedule 220... Processing unit 221... Sensor input unit 222... Actuator output unit 223... Basic application execution control unit 224... Verification application execution control unit 225... Verification plan information acquisition unit 226... Verification result output unit 227... Driving environment condition establishment prediction unit

Claims (8)

車両に搭載される車載制御装置であって、
前記車両の走行制御に関する基本アプリケーションプログラムは異なる複数の検証アプリケーションプログラム、前記検証アプリケーションプログラムを検証する前記車両に関する条件である走行環境条件、および前記検証アプリケーションプログラムと前記走行環境条件の組に対する検証優先度を含む検証計画情報と前記基本アプリケーションプログラムとを格納する車載記憶部と、
前記基本アプリケーションプログラムおよび前記検証アプリケーションプログラムを実行可能なCPUと、
前記走行環境条件および前記検証優先度に基づき、前記検証アプリケーションプログラムの検証の実行を制御する検証実行制御部と、を備え
前記検証計画情報には、前記検証アプリケーションプログラムおよび前記走行環境条件の組み合わせ毎に前記検証優先度が格納され、
前記検証実行制御部は、前記走行環境条件が満たされた前記検証アプリケーションプログラムのうち前記検証優先度が高い検証アプリケーションプログラムほど優先して検証する車載制御装置。
An on-board control device mounted on a vehicle,
an in-vehicle storage unit that stores a plurality of verification application programs different from a basic application program related to driving control of the vehicle, verification plan information including driving environment conditions that are conditions related to the vehicle for verifying the verification application programs, and verification priorities for pairs of the verification application programs and the driving environment conditions, and the basic application programs ;
a CPU capable of executing the basic application program and the verification application program;
a verification execution control unit that controls execution of the verification application program based on the driving environment conditions and the verification priority ;
the verification plan information stores the verification priority for each combination of the verification application program and the driving environment condition;
The verification execution control unit prioritizes verification of a verification application program having a higher verification priority among the verification application programs for which the driving environment condition is satisfied .
請求項1に記載の車載制御装置であって、
前記車載記憶部に、さらに前記走行環境条件における検証方法を定義した検証方法定義が格納され、
前記検証実行制御部は、さらに前記検証方法定義に基づき前記検証アプリケーションプログラムの検証の実行を制御する車載制御装置。
The on-board control device according to claim 1 ,
The vehicle-mounted storage unit further stores a verification method definition that defines a verification method under the driving environment conditions,
The verification execution control unit further controls the execution of the verification of the verification application program based on the verification method definition.
請求項1に記載の車載制御装置であって、
前記検証実行制御部は、前記検証アプリケーションプログラムの検証に必要なデータを前記基本アプリケーションプログラムから取得する車載制御装置。
The on-board control device according to claim 1 ,
The verification execution control unit obtains data necessary for verifying the verification application program from the basic application program.
請求項1に記載の車載制御装置であって、
前記車両の走行環境が、前記走行環境条件に合致するタイミングを予測する走行環境条件成立予測部をさらに備え、
前記検証実行制御部は、さらに前記走行環境条件成立予測部が予測した予測情報に基づき、前記検証アプリケーションプログラムの検証の実行を制御する車載制御装置。
The on-board control device according to claim 1 ,
A driving environment condition satisfaction prediction unit predicts a timing when the driving environment of the vehicle matches the driving environment condition,
The verification execution control unit is an in-vehicle control device that further controls the execution of verification of the verification application program based on prediction information predicted by the driving environment condition satisfaction prediction unit.
車両と通信可能なサーバであって、
前記車両において検証されるアプリケーションプログラムである検証アプリケーションプログラム、および前記検証アプリケーションプログラムを検証する前記車両に関する条件である走行環境条件を格納するサーバ記憶部と、
前記車両から取得した車両情報基づき前記検証アプリケーションプログラムと前記走行環境条件の組に対する検証優先度を決定し、前記走行環境条件と、前記検証アプリケーションプログラムと、前記検証優先度と、を含む検証計画情報を生成する検証計画情報生成部と、
前記検証計画情報を前記車両に出力する検証計画情報出力部と、を備え
前記車両情報は、前記車両において実行された前記検証アプリケーションプログラムの検証結果を含み、
前記検証計画情報生成部は、前記検証アプリケーションプログラムの検証結果に基づき前記検証アプリケーションプログラムに関する検証の進捗を示す検証進捗情報を更新し、前記検証進捗情報に基づいて前記検証アプリケーションプログラムと前記走行環境条件の組に対する前記検証優先度を決定するサーバ。
A server capable of communicating with a vehicle,
a server storage unit that stores a verification application program that is an application program to be verified in the vehicle, and a driving environment condition that is a condition related to the vehicle for verifying the verification application program;
a verification plan information generating unit that determines a verification priority for a set of the verification application program and the driving environment conditions based on vehicle information acquired from the vehicle, and generates verification plan information including the driving environment conditions, the verification application program, and the verification priority;
a verification plan information output unit that outputs the verification plan information to the vehicle ,
the vehicle information includes a verification result of the verification application program executed in the vehicle;
The verification plan information generation unit updates verification progress information indicating the progress of verification regarding the verification application program based on the verification results of the verification application program, and determines the verification priority for the pair of the verification application program and the driving environment conditions based on the verification progress information.
車両と通信可能なサーバであって、
前記車両において検証されるアプリケーションプログラムである検証アプリケーションプログラム、および前記検証アプリケーションプログラムを検証する前記車両に関する条件である走行環境条件を格納するサーバ記憶部と、
前記車両から取得した車両情報に基づき前記検証アプリケーションプログラムと前記走行環境条件の組に対する検証優先度を決定し、前記走行環境条件と、前記検証アプリケーションプログラムと、前記検証優先度と、を含む検証計画情報を生成する検証計画情報生成部と、
前記検証計画情報を前記車両に出力する検証計画情報出力部と、
前記車両情報に基づき、前記車両の走行環境が前記検証計画情報に含まれる走行環境条件に合致するタイミングを予測する走行環境条件成立予測部と、をさらに備え、
前記検証計画情報生成部は、前記予測したタイミングに基づき、前記検証アプリケーションプログラムと前記走行環境条件の組に対する前記検証優先度を決定するサーバ。
A server capable of communicating with a vehicle,
a server storage unit that stores a verification application program that is an application program to be verified in the vehicle, and a driving environment condition that is a condition related to the vehicle for verifying the verification application program;
a verification plan information generating unit that determines a verification priority for a set of the verification application program and the driving environment conditions based on vehicle information acquired from the vehicle, and generates verification plan information including the driving environment conditions, the verification application program, and the verification priority;
a verification plan information output unit that outputs the verification plan information to the vehicle;
A driving environment condition satisfaction prediction unit that predicts a timing when the driving environment of the vehicle matches a driving environment condition included in the verification plan information based on the vehicle information ,
The verification plan information generating unit is a server that determines the verification priority for a pair of the verification application program and the driving environmental conditions based on the predicted timing.
車両に搭載される車載制御装置および前記車載制御装置と通信可能なサーバを含む、検証システムであって、
前記サーバは、
前記車両において検証されるアプリケーションプログラムである検証アプリケーションプログラム、および前記検証アプリケーションプログラムを検証する車両に関する条件である走行環境条件を格納するサーバ記憶部と、
前記車両から取得した車両情報基づき前記検証アプリケーションプログラム前記走行環境条件の組に対する検証優先度を決定し、前記走行環境条件と、前記検証アプリケーションプログラムと、前記検証優先度と、を含む検証計画情報を生成する検証計画情報生成部と、
前記検証計画情報を前記車両に出力する検証計画情報出力部と、を備え
前記車載制御装置は、
前記サーバが出力した前記検証計画情報を取得する検証計画情報取得部と、
前記車両の走行制御に関する基本アプリケーションプログラムと並行して、前記検証アプリケーションプログラムの検証の実行を前記走行環境条件と前記検証優先度に基づき制御する検証実行制御部と、を備え、
前記車両情報は、前記車両において実行された前記検証アプリケーションプログラムの検証結果を含み、
前記検証計画情報生成部は、前記検証アプリケーションプログラムの検証結果に基づき前記検証アプリケーションプログラムに関する検証の進捗を示す検証進捗情報を更新し、前記検証進捗情報に基づいて前記検証アプリケーションプログラムと前記走行環境条件の組に対する前記検証優先度を決定する検証システム。
A verification system including an on-board control device mounted in a vehicle and a server capable of communicating with the on-board control device,
The server,
a server storage unit that stores a verification application program, which is an application program to be verified in the vehicle, and a driving environment condition, which is a condition related to the vehicle for verifying the verification application program;
a verification plan information generating unit that determines a verification priority for a set of the verification application program and the driving environment conditions based on vehicle information acquired from the vehicle, and generates verification plan information including the driving environment conditions, the verification application program, and the verification priority;
a verification plan information output unit that outputs the verification plan information to the vehicle ,
The in-vehicle control device includes:
a verification plan information acquisition unit that acquires the verification plan information output by the server;
a verification execution control unit that controls execution of the verification application program based on the driving environment conditions and the verification priority in parallel with a basic application program related to driving control of the vehicle,
the vehicle information includes a verification result of the verification application program executed in the vehicle;
The verification plan information generation unit updates verification progress information indicating the progress of verification regarding the verification application program based on the verification results of the verification application program, and determines the verification priority for the pair of the verification application program and the driving environment conditions based on the verification progress information .
車両に搭載される車載制御装置および前記車載制御装置と通信可能なサーバを含む、検証システムであって、
前記サーバは、
前記車両において検証されるアプリケーションプログラムである検証アプリケーションプログラム、および前記検証アプリケーションプログラムを検証する車両に関する条件である走行環境条件を格納するサーバ記憶部と、
前記車両から取得した車両情報基づき前記検証アプリケーションプログラム前記走行環境条件の組に対する検証優先度を決定し、前記走行環境条件と、前記検証アプリケーションプログラムと、前記検証優先度と、を含む検証計画情報を生成する検証計画情報生成部と、
前記検証計画情報を前記車両に出力する検証計画情報出力部と、
前記車両情報に基づき、前記車両の走行環境が前記検証計画情報に含まれる走行環境条件に合致するタイミングを予測する走行環境条件成立予測部と、を備え、
前記車載制御装置は、
前記サーバが出力した前記検証計画情報を取得する検証計画情報取得部と、
前記車両の走行制御に関する基本アプリケーションプログラムと並行して、前記検証アプリケーションプログラムの検証の実行を前記走行環境条件と前記検証優先度に基づき制御する検証実行制御部と、を備え、
前記検証計画情報生成部は、前記予測したタイミングに基づき、前記検証アプリケーションプログラムと前記走行環境条件の組に対する前記検証優先度を決定する検証システム。
A verification system including an on-board control device mounted in a vehicle and a server capable of communicating with the on-board control device,
The server,
a server storage unit that stores a verification application program, which is an application program to be verified in the vehicle, and a driving environment condition, which is a condition related to the vehicle for verifying the verification application program;
a verification plan information generating unit that determines a verification priority for a set of the verification application program and the driving environment conditions based on vehicle information acquired from the vehicle, and generates verification plan information including the driving environment conditions, the verification application program, and the verification priority;
a verification plan information output unit that outputs the verification plan information to the vehicle;
a driving environment condition satisfaction prediction unit that predicts a timing when the driving environment of the vehicle satisfies a driving environment condition included in the verification plan information based on the vehicle information,
The in-vehicle control device includes:
a verification plan information acquisition unit that acquires the verification plan information output by the server;
a verification execution control unit that controls execution of the verification application program based on the driving environment conditions and the verification priority in parallel with a basic application program related to driving control of the vehicle,
The verification system , wherein the verification plan information generating unit determines the verification priority for a pair of the verification application program and the driving environmental conditions based on the predicted timing .
JP2020084293A 2020-05-13 2020-05-13 Vehicle control device, server, verification system Active JP7465147B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020084293A JP7465147B2 (en) 2020-05-13 2020-05-13 Vehicle control device, server, verification system
PCT/JP2021/003606 WO2021229861A1 (en) 2020-05-13 2021-02-01 In-vehicle control device, server, and verification system
DE112021001592.3T DE112021001592T5 (en) 2020-05-13 2021-02-01 IN-VEHICLE CONTROL DEVICE, SERVER AND VERIFICATION SYSTEM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020084293A JP7465147B2 (en) 2020-05-13 2020-05-13 Vehicle control device, server, verification system

Publications (2)

Publication Number Publication Date
JP2021179762A JP2021179762A (en) 2021-11-18
JP7465147B2 true JP7465147B2 (en) 2024-04-10

Family

ID=78511488

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020084293A Active JP7465147B2 (en) 2020-05-13 2020-05-13 Vehicle control device, server, verification system

Country Status (3)

Country Link
JP (1) JP7465147B2 (en)
DE (1) DE112021001592T5 (en)
WO (1) WO2021229861A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12045602B2 (en) 2022-03-25 2024-07-23 Woven By Toyota, Inc. Correctness verification system, method, device, and program
JP2024008515A (en) * 2022-07-08 2024-01-19 日立Astemo株式会社 Vehicle control device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012121533A (en) 2010-12-10 2012-06-28 Toyota Motor Corp Apparatus and method for managing additional function of on-board equipment
JP2014516850A (en) 2011-03-17 2014-07-17 トヨタ モーター エンジニアリング アンド マニュファクチャリング ノース アメリカ,インコーポレイティド Application interface for vehicle operation
JP2017122996A (en) 2016-01-06 2017-07-13 東日本旅客鉄道株式会社 Test case creation device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011146068A (en) 2011-03-25 2011-07-28 Mitsubishi Electric Corp Program providing device and in-vehicle information system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012121533A (en) 2010-12-10 2012-06-28 Toyota Motor Corp Apparatus and method for managing additional function of on-board equipment
JP2014516850A (en) 2011-03-17 2014-07-17 トヨタ モーター エンジニアリング アンド マニュファクチャリング ノース アメリカ,インコーポレイティド Application interface for vehicle operation
JP2017122996A (en) 2016-01-06 2017-07-13 東日本旅客鉄道株式会社 Test case creation device

Also Published As

Publication number Publication date
DE112021001592T5 (en) 2023-03-02
JP2021179762A (en) 2021-11-18
WO2021229861A1 (en) 2021-11-18

Similar Documents

Publication Publication Date Title
US11302031B2 (en) System, apparatus and method for indoor positioning
US10629080B2 (en) Autonomous vehicles featuring vehicle intention system
US10202127B2 (en) User profile-based automatic parameter tuning system for connected vehicles
CN111357021B (en) System and method for matching an autonomous vehicle with a rider
US11574538B2 (en) Method and apparatus for perception-sharing between vehicles
US20210101619A1 (en) Safe and scalable model for culturally sensitive driving by automated vehicles
CN109789842B (en) Vehicle-mounted processing device
US11897505B2 (en) In-vehicle operation of simulation scenarios during autonomous vehicle runs
KR20180088789A (en) Method and system for predicting at least one trajectory of a vehicle based on a context around the vehicle
JP2019506647A (en) Driving method and system for autonomous vehicle based on motion plan
US11162798B2 (en) Map updates based on data captured by an autonomous vehicle
CN112400192A (en) Method and system for multi-modal deep traffic signal control
JP7465147B2 (en) Vehicle control device, server, verification system
US10999719B1 (en) Peer-to-peer autonomous vehicle communication
CN112249035B (en) Automatic driving method, device and equipment based on general data flow architecture
WO2022166326A1 (en) Method and apparatus for updating map tile
JP2022041923A (en) Vehicle path designation using connected data analysis platform
US20200209856A1 (en) Autonomous driving computing and storage expansion device with flexible host and client configuration
US11993287B2 (en) Fleet-level AV simulation system and method
US20230205951A1 (en) Simulation obstacle vehicles with driving styles
CN117529429A (en) Method and system for predicting behavior of an actor in an autonomous vehicle environment
US20220250636A1 (en) Resolving vehicle application version differences
US20220009483A1 (en) Methods and Systems for Prioritizing Computing Methods for Autonomous Vehicles
US11673577B2 (en) System and methods of adaptive relevancy prediction for autonomous driving
US20230256994A1 (en) Assessing relative autonomous vehicle performance via evaluation of other road users

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231212

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20240208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240307

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240319

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240329

R150 Certificate of patent or registration of utility model

Ref document number: 7465147

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150