WO2022172392A1 - 検証システム、検証方法および検証プログラム - Google Patents

検証システム、検証方法および検証プログラム Download PDF

Info

Publication number
WO2022172392A1
WO2022172392A1 PCT/JP2021/005213 JP2021005213W WO2022172392A1 WO 2022172392 A1 WO2022172392 A1 WO 2022172392A1 JP 2021005213 W JP2021005213 W JP 2021005213W WO 2022172392 A1 WO2022172392 A1 WO 2022172392A1
Authority
WO
WIPO (PCT)
Prior art keywords
verification
surrogate model
unit
data
analysis target
Prior art date
Application number
PCT/JP2021/005213
Other languages
English (en)
French (fr)
Inventor
哲孝 山下
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2022581108A priority Critical patent/JPWO2022172392A1/ja
Priority to PCT/JP2021/005213 priority patent/WO2022172392A1/ja
Priority to US18/275,560 priority patent/US20240104273A1/en
Publication of WO2022172392A1 publication Critical patent/WO2022172392A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/15Vehicle, aircraft or watercraft design

Definitions

  • the present invention relates to a verification system, verification method, and verification program that perform verification using a surrogate model.
  • a method using a surrogate model is also known as a method of performing simulations at high speed.
  • a surrogate model is a model that substitutes simulation-based evaluation, and is used to derive an approximate solution at high speed.
  • Patent Literature 1 describes product design and simulation using a surrogate model.
  • an object of the present invention is to provide a verification system, a verification method, and a verification program that can reduce the cost required for a verification process using a surrogate model.
  • a verification system includes surrogate model construction means for constructing a surrogate model that simulates the behavior of the analysis target using operation data to be analyzed as learning data, and Originally, a surrogate model selection means for selecting a surrogate model that is judged to reproduce the behavior of the analysis target based on the operation data according to the verification content, and a verification means for verifying the analysis target using the selected surrogate model. characterized by comprising
  • the verification method uses operation data to be analyzed as learning data to construct a surrogate model that simulates the behavior of the analysis object, and from the operation data to be analyzed, verification content under specified conditions A surrogate model that is judged to reproduce the behavior of the analysis object most accurately based on the operation data according to the condition is selected, and the analysis object is verified using the selected surrogate model.
  • a verification program provides a computer with a surrogate model construction process for constructing a surrogate model that simulates the behavior of an analysis target using operation data to be analyzed as learning data, and a specified Under conditions, a surrogate model selection process that selects a surrogate model that is judged to reproduce the behavior of the analysis target based on the operation data according to the verification details, and the analysis target is verified using the selected surrogate model. It is characterized by executing verification processing.
  • the cost required for the verification process using surrogate models can be reduced.
  • FIG. 1 is a block diagram showing a configuration example of a first embodiment of a verification system according to the present invention
  • FIG. It is a block diagram which shows the structural example of the verification part of 1st embodiment.
  • 4 is a flow chart showing an operation example of the verification system of the first embodiment
  • 4 is a flow chart showing an operation example of a verification unit of the first embodiment
  • FIG. 4 is a block diagram showing a configuration example of a verification system according to a second embodiment of the present invention
  • FIG. 11 is a block diagram showing a configuration example of a verification unit according to the second embodiment
  • FIG. 9 is a flow chart showing an operation example of a verification unit according to the second embodiment
  • FIG. 11 is a block diagram showing a configuration example of a verification system according to a third embodiment of the present invention. It is explanatory drawing which shows the example which visualized the surrogate model of each unit.
  • FIG. 12 is a block diagram showing a configuration example of a verification unit according to the third embodiment; FIG. It is a flow chart which shows an example of operation of a verification part of a third embodiment.
  • 1 is a block diagram showing an overview of a verification system according to the invention; FIG.
  • FIG. 1 is a block diagram showing a configuration example of a first embodiment of a verification system according to the present invention.
  • the verification system 100 of this embodiment is a system that verifies an analysis target using a surrogate model. Since the surrogate model described above can be said to be a model capable of narrowing down the approximate solution, the verification system 100 of the present embodiment can be said to be a system that performs verification using the surrogate model capable of narrowing down the approximate solution.
  • the verification system 100 of the present embodiment includes a data acquisition unit 10, a data storage unit 20, a surrogate model construction unit 30, a surrogate model storage unit 40, a surrogate model evaluation unit 50, a surrogate model selection unit 60, a verification a portion 170;
  • the verification system 100 is connected to an output device 70 that outputs various processing results.
  • the output device 70 is realized by, for example, a display device or a printer. Also, the output device 70 may be realized as a control device that outputs control information according to the processing result to each unit.
  • the data acquisition unit 10 acquires data used for various processes by the verification system 100 and stores the data in the data storage unit 20 .
  • the verification system 100 is used in automobile design development. In other words, in this embodiment, the verification system 100 is used to verify the operating state of the automobile and the situation when a problem occurs.
  • the object for which the verification system 100 of the present invention is used is not limited to the design and development of automobiles, and may be, for example, the design and development of motorcycles and the design and development of various control devices.
  • the data acquisition unit 10 acquires operation data and verification data to be analyzed.
  • the operating data to be analyzed is the driving data of the automobile, the data when a problem occurs, and the like, and the verification data is the normal data of the automobile. Details of the operation data will be described later.
  • the data acquisition unit 10 may receive various data such as the state of the vehicle and the surrounding road conditions collected by the connected car as travel data.
  • the data acquisition unit 10 stores in the data storage unit 20 the operation data and the verification data to which the identification information for identifying the analysis target is added. For example, when the acquired data does not contain the identification information, the data acquisition unit 10 adds the identification information to the acquired data and stores the acquired data in the data storage unit 20 .
  • identification information information identifying a unit, which is the minimum unit of verification, and information identifying a domain grouping a plurality of units are assumed.
  • the content of each unit grouped into a domain is arbitrary, and is preset by a designer or the like and stored in the data storage unit 20 . A method of setting domains in the case of automobile design will be specifically described below.
  • the first setting method is to set a domain for each vehicle function.
  • Automobile functions include, for example, a control system, a body system, a safety system, and an information system.
  • the control system includes those that control the basic functions of the automobile such as the engine and brakes, ie, engine control, idling stop control, gear shift control, and the like.
  • the body system is not directly related to driving, but is related to the automobile, and includes, for example, an air conditioner, a headlamp, an electronic key, an electronic mirror, and the like.
  • Safety systems are those that ensure safety during driving, and include, for example, airbags, ADAS (Advanced Driver-Assistance Systems)/automated driving systems, brake control, and steering control.
  • the information system is related to so-called infotainment of automobiles, and includes, for example, a car navigation system, a communication unit between in-vehicle communication devices, a communication unit between a communication device used by a driver and an in-vehicle device, and the like.
  • the second setting method is to set the domain according to the proximity of physical locations.
  • Examples of near-position objects include the vicinity of the engine room, the underbody, the ceiling, and the vicinity of the rear.
  • a third setting method is to set the domain based on the wiring.
  • an automobile bus uses a plurality of buses such as LIN (Local Interconnect Network) and CAN (Controller Area Network), so units connected to each bus may be grouped into one domain.
  • LIN Local Interconnect Network
  • CAN Controller Area Network
  • each bus unit connected to a CGW Central Gateway
  • ECUs Electronic Control Units
  • Vehicle operation data includes, for example, operating units, used software versions, and input/output parameter information. Operation data can be classified into, for example, unit test data, integration test data, and the like.
  • the unit test data may include, for example, information on other connected units.
  • information such as position and speed obtained by GPS (Global Positioning System), video data while driving, information obtained by various sensors such as lidar (light detection and ranging), etc. be done.
  • GPS Global Positioning System
  • lidar light detection and ranging
  • the data at the time of the occurrence of the problem may also include reports obtained by interviewing the driver at a dealership.
  • the data storage unit 20 stores the operation data and verification data described above, as well as information indicating the contents of the units included in each domain.
  • the data storage unit 20 is implemented by, for example, a magnetic disk.
  • the surrogate model building unit 30 uses the operation data to be analyzed as learning data to build a surrogate model that simulates the behavior of the target to be analyzed.
  • the surrogate model construction unit 30 constructs a surrogate model for each unit or each domain.
  • the surrogate model construction unit 30 acquires learning data from the data acquisition unit 10 for each unit or domain to be analyzed that is specified based on the identification information. Then, the surrogate model construction unit 30 constructs a surrogate model for each analysis target by machine learning using the acquired learning data.
  • the surrogate model building unit 30 builds a surrogate model for each domain grouping each unit, there is no need to combine simulators for each unit and software in the integration test, so the cost required for the verification process can be reduced. .
  • the surrogate model construction unit 30 constructs a surrogate model for each domain set based on the wiring as described above, for example. This eliminates the need to combine simulators and surrogate models for individual units connected to each bus, thereby reducing the cost required for the verification process.
  • the surrogate model construction unit 30 may generate a surrogate model for each condition.
  • the condition is determined in advance by the designer or the like, and uses, for example, the area, time, environment, etc. where the learning data is acquired.
  • the surrogate model construction unit 30 may construct the surrogate model using, for example, the method described in Patent Document 1, or may construct the surrogate model using another known technique.
  • the surrogate model construction unit 30 stores the constructed surrogate model in the surrogate model storage unit 40 .
  • the surrogate model storage unit 40 stores surrogate models.
  • the surrogate model storage unit 40 may store not only surrogate models generated by the surrogate model construction unit 30 but also surrogate models created by other devices (not shown).
  • the surrogate model storage unit 40 is implemented by, for example, a magnetic disk.
  • the surrogate model evaluation unit 50 evaluates the accuracy of the constructed surrogate model.
  • the method of evaluating surrogate models is arbitrary.
  • the surrogate model evaluation unit 50 may evaluate the accuracy of the surrogate model, for example, based on the error when reproducing the original data with the constructed surrogate model.
  • an output F is obtained from parameters A through E in a surrogate model.
  • the parameters are, for example, fuel injection timing and amount, pressure, number of injections, intervals, and the like, and the output is fuel consumption, displacement, and the like.
  • the parameters A to E when the value of the output F is favorable are the optimum solutions.
  • a plurality of sets of data of parameters A to E and their outputs F are prepared, and these data are divided into a data group for learning and a data group for verification.
  • the surrogate model construction unit 30 performs learning using the learning data group to construct a surrogate model.
  • the surrogate model evaluation unit 50 applies verification parameters A to E to the constructed surrogate model to obtain an output F'.
  • the surrogate model evaluation unit 50 calculates the error F ⁇ ( ⁇ is a superscript tilde) between the obtained output F' and the original value F for each verification data group.
  • the surrogate model evaluation unit 50 calculates a predetermined verification value (for example, sum or average value) from the obtained error F , and the calculated verification value satisfies a predetermined criterion. Accuracy may be evaluated based on whether or not there is.
  • the surrogate model evaluation unit 50 instructs the surrogate model construction unit 30 to reconstruct the surrogate model. good.
  • the surrogate model construction unit 30 may reconstruct the surrogate model by adding learning data or tuning parameters (hyperparameters) during construction.
  • the surrogate model selection unit 60 receives input of analysis target data and selects a surrogate model highly relevant to the analysis target. Specifically, the surrogate model selection unit 60 selects a surrogate model that is determined to best reproduce the behavior of the analysis target based on the operation data according to the verification details under the specified conditions from the operation data to be analyzed. select.
  • the first method of determination is to select a surrogate model in which the data items to be analyzed and the input/output data items match. This is because it can be determined that a surrogate model that has been trained to obtain a desired output value from input data best reproduces the behavior of the analysis object.
  • the first method of determination is to select a surrogate model that has a similar setting environment in the simulation and the measurement environment to be analyzed.
  • the measurement environment include ambient information such as temperature, weather, and road conditions. This is because the closer the assumed environment is, the more the behavior of the analysis target can be determined to be reproduced.
  • a third judgment method there is a method of selecting a surrogate model with a small error between the simulation result of interest and the output value.
  • the surrogate model a plurality of output values are obtained, but the error of each output value is biased. Therefore, it is judged that a surrogate model constructed with emphasis on the parameter of interest reproduces the behavior of the analysis target of interest more effectively.
  • a surrogate model with the smallest error during verification For example, among the operation data to be analyzed, pairs of input data and output data are prepared. Then, when the output value is obtained by applying the input data to the surrogate model, the surrogate model having the smallest error between the output value and the output data should be selected.
  • a surrogate model whose characteristics are similar to the data items of the operation data to be analyzed and the data group used at the time of construction.
  • Information representing features includes, for example, statistical information (average and variance), input/output correlation values, correlation between specific parameters, and the like. For example, when the operation data of the analysis target is to reproduce the operation situation at a low temperature, by selecting a surrogate model trained using more operation data acquired at a low temperature, the analysis target of interest It is judged that the behavior is more reproduced.
  • the verification unit 170 verifies the analysis target using the selected surrogate model. As the contents of the verification, it is assumed that the operation verification of the analysis target, the verification of the parameters used when operating the analysis target, and the failure verification of the analysis target are performed. In the first embodiment, a case will be described in which the verification unit 170 verifies the operation and parameters of the analysis target.
  • FIG. 2 is a block diagram showing a configuration example of the verification unit 170 of this embodiment.
  • the verification unit 170 of this embodiment includes an operation verification unit 171 and a simulator operation unit 172 .
  • the motion verification unit 171 uses the selected surrogate model to verify the motion and parameters to be analyzed. Specifically, the operation verification unit 171 inputs operation data including parameters used when operating the analysis object, applies the input parameters to the selected surrogate model, and calculates an evaluation value.
  • the operation verification unit 171 repeats this verification process up to a predetermined condition, and identifies optimum parameters as verification results based on the obtained evaluation values.
  • the operation verification unit 171 may, for example, set the parameter corresponding to the most preferable evaluation value as the verification result.
  • the operation verification unit 171 may, for example, repeat the verification process until all expected parameter patterns are covered, or may repeat the verification process a predetermined number of times until a desired evaluation value is obtained.
  • the operation verification unit 171 outputs the verification result.
  • the operation verification unit 171 may output an evaluation value when the parameters are applied, information on the surrogate model used, etc., in addition to the optimum parameters at the time of verification.
  • the operation verification unit 171 uses the selected surrogate model to perform verification processing of the analysis target.
  • evaluation values can be obtained simply by applying the parameters to the surrogate model, so the cost required for the verification process can be reduced.
  • the simulator operation unit 172 applies the verification result obtained by the operation verification unit 171 to the simulator to obtain the operation result.
  • the surrogate model can be used to obtain an approximation of the optimal parameters. Therefore, the simulator operation unit 172 operates the simulator based on the obtained approximate values to derive the optimum values of the parameters with higher accuracy. Note that the simulator is prepared in advance according to the analysis target.
  • the simulator operating unit 172 operates the simulator based on the verification results derived from the surrogate model, thereby deriving the optimum values of the parameters. Therefore, compared with the case where all verification is performed using a simulator, it is possible to obtain highly accurate optimal values while reducing costs.
  • the verification unit 170 does not have to include the simulator operation unit 172 when the verification result by the operation verification unit 171 is used as it is.
  • the operation of the verification unit 170 when the analysis target is a vehicle engine will be described below using a specific example. Assume that the surrogate model that simulates the behavior of the engine of the vehicle is selected by the surrogate model selection unit 60 as a premise for the verification by the verification unit 170 .
  • the operation verification unit 171 inputs operation data to be analyzed and applies it to the parameters of the surrogate model.
  • Input parameters include the fuel injection timing (e.g., [0, 2, 4]), amount (e.g., 10L), pressure, number of times, interval, control software version (e.g., Eng-003) and the like. Then, the operation verification unit 171 outputs evaluation values when the parameters are applied.
  • Control items indicating output values include, for example, fuel consumption (km/L), displacement (cm 3 ), output, rotation speed, and temperature.
  • the operation verification unit 171 When an appropriate control item is obtained (for example, the fuel efficiency is equal to or less than a predetermined value), the operation verification unit 171 outputs the parameter at that time as the optimum value.
  • the simulator operation unit 172 applies the verification result (optimal value) obtained by the operation verification unit 171 to the simulator to derive a more accurate evaluation value. For example, when the injection timing (e.g., [0, 2, 4]) and amount (e.g., 10L) described above are output as verification results, the simulator operation unit 172 applies the verification results to the simulator, Obtain a more accurate evaluation value (for example, fuel consumption (km/L) or engine displacement (cm 3 )).
  • a more accurate evaluation value for example, fuel consumption (km/L) or engine displacement (cm 3 )
  • the data acquisition unit 10, the surrogate model construction unit 30, the surrogate model evaluation unit 50, the surrogate model selection unit 60, and the verification unit 170 (more specifically, the operation verification unit 171 and the simulator operation unit 172) , is implemented by a computer processor (for example, a CPU (Central Processing Unit)) that operates according to a program (verification program).
  • a computer processor for example, a CPU (Central Processing Unit)
  • CPU Central Processing Unit
  • the program is stored in a storage unit (not shown) of the verification system
  • the processor reads the program, and according to the program, the data acquisition unit 10, the surrogate model construction unit 30, the surrogate model evaluation unit 50, the surrogate model selection unit It may operate as unit 60 and verification unit 170 .
  • the functions of the verification system 100 may be provided in a SaaS (Software as a Service) format.
  • the data acquisition unit 10, the surrogate model construction unit 30, the surrogate model evaluation unit 50, the surrogate model selection unit 60, and the verification unit 170 (more specifically, the operation verification unit 171 and the simulator operation unit 172) , each of which may be realized by dedicated hardware. Also, part or all of each component of each device may be implemented by general-purpose or dedicated circuitry, processors, etc., or combinations thereof. These may be composed of a single chip, or may be composed of multiple chips connected via a bus. A part or all of each component of each device may be implemented by a combination of the above-described circuits and the like and programs.
  • each component of the verification system 100 when part or all of each component of the verification system 100 is realized by a plurality of information processing devices, circuits, etc., the plurality of information processing devices, circuits, etc. may be centrally arranged or distributed. may be placed.
  • the information processing device, circuits, and the like may be implemented as a form in which each is connected via a communication network, such as a client-server system, a cloud computing system, or the like.
  • the surrogate model storage unit 40, the surrogate model evaluation unit 50, the surrogate model selection unit 60, and the verification unit 170 perform verification using surrogate models. Therefore, a device including the surrogate model storage unit 40, the surrogate model evaluation unit 50, the surrogate model selection unit 60, and the verification unit 170 can be called a verification device.
  • FIG. 3 is a flowchart showing an operation example of the verification system of this embodiment.
  • the surrogate model construction unit 30 constructs a surrogate model that simulates the behavior of the analysis target using the analysis target operation data as learning data (step S11).
  • the surrogate model selection unit 60 selects, from the operation data to be analyzed, a surrogate model judged to best reproduce the behavior of the analysis object based on the operation data corresponding to the verification details under the specified conditions (step S12). .
  • the verification unit 170 verifies the analysis target using the selected surrogate model (step S13).
  • FIG. 4 is a flowchart showing an operation example of the verification unit 170 of this embodiment.
  • the operation verification unit 171 inputs operation data including parameters used when operating the analysis object, applies the input parameters to the selected surrogate model, and calculates an evaluation value (step S111).
  • the operation verification unit 171 determines whether or not a predetermined condition is satisfied (step S112). If the condition is not satisfied (No in step S112), the operation verification unit 171 repeats the process of step S111.
  • step S112 the operation verification unit 171 identifies the optimum parameter as the verification result based on the calculated evaluation value (step S113).
  • the simulator operation unit 172 applies the verification result obtained by the operation verification unit 171 to the simulator to obtain an evaluation value (step S114). After that, the final parameters are determined based on the obtained evaluation values.
  • the surrogate model construction unit 30 constructs a surrogate model using the operation data to be analyzed as learning data, and the surrogate model selection unit 60 selects the specified data from the operation data to be analyzed. Under the conditions, select a surrogate model according to the verification content. Then, the verification unit 170 verifies the analysis target using the selected surrogate model. Therefore, the cost required for the verification process using the surrogate model can be reduced.
  • the operation verification unit 171 of the verification unit 170 inputs operation data to be analyzed, applies the input operation data to the surrogate model, and calculates an evaluation value. Also, the operation verification unit 171 identifies the optimum parameter as a verification result based on the calculated evaluation value. Then, the simulator operation unit 172 applies the verification result obtained by the operation verification unit 171 to the simulator to be analyzed to obtain the operation result. Therefore, it is possible to obtain a more accurate output value while reducing the cost required for the verification process.
  • FIG. 5 is a block diagram showing a configuration example of a second embodiment of the verification system according to the present invention.
  • the verification system 200 of the present embodiment includes a data acquisition unit 10, a data storage unit 20, a surrogate model construction unit 30, a surrogate model storage unit 40, a surrogate model evaluation unit 50, a surrogate model selection unit 61, a verification a portion 270;
  • the configuration of the verification system 200 of this embodiment is different from the configuration of the first embodiment illustrated in FIG. is provided with a verification unit 270.
  • Other configurations are the same as those of the first embodiment.
  • the surrogate model selection unit 61 receives input of analysis target data and selects a surrogate model highly relevant to the analysis target. It should be noted that the surrogate model selection unit 61 of the present embodiment receives input of data at the time of failure occurrence as data to be analyzed. The method of selecting a surrogate model highly relevant to the analysis target is the same as in the first embodiment.
  • the surrogate model building unit 30 builds a surrogate model in a manner that can reproduce the original simulation to some extent.
  • the surrogate model simulates the behavior of the subject of analysis, if the accuracy of the surrogate model is high, it is possible to reproduce the situation at the time of the failure even if there is no direct data at the time of the failure. be done.
  • the surrogate model selection unit 61 may select a plurality of surrogate models highly relevant to the analysis target.
  • the surrogate model selected here may be a unit-based surrogate model or a domain-based surrogate model.
  • the surrogate model selection unit 61 may cause the verification unit 270, which will be described later, to perform verification using a plurality of surrogate models.
  • FIG. 6 is a block diagram showing a configuration example of the verification unit 270 of this embodiment.
  • the verification unit 270 of this embodiment includes a defect reproducing unit 271 and a defect estimating unit 272 .
  • the problem reproducing unit 271 reproduces the problem situation to be analyzed using the selected surrogate model. Specifically, the defect reproduction unit 271 inputs data at the time of the defect occurrence including the parameters when the defect occurred in the analysis object, applies the input parameters to the selected surrogate model, and calculates the evaluation value. do.
  • the evaluation value calculated by the defect reproduction unit 271 may also be referred to as the first evaluation value. Note that when a plurality of surrogate models are selected, the defect reproduction unit 271 calculates an evaluation value based on each surrogate model.
  • the fault estimating unit 272 applies the normal data to the surrogate model used by the fault reproducing unit 271 to reproduce the fault situation, and calculates the normal evaluation value.
  • the evaluation value calculated using normal data may be referred to as a second evaluation value.
  • the defect estimation unit 272 compares the evaluation value calculated from the data when the defect occurred and the evaluation value calculated from the data when the defect occurred, and estimates the location where the defect occurred.
  • Normal data is data that matches or is close to the operating data (driving data) items, and that no abnormality has occurred (it is not judged to be abnormal). predetermined. Further, the method of estimating the defect occurrence location is arbitrary, and the defect estimation unit 272 may estimate the defect occurrence location, for example, based on whether the difference between the two evaluation values is within a predetermined range.
  • the defect estimating unit 272 may compare the evaluation values calculated from the surrogate models to estimate the location of the defect.
  • the data acquisition unit 10, the surrogate model construction unit 30, the surrogate model evaluation unit 50, the surrogate model selection unit 61, and the verification unit 270 (more specifically, the defect reproduction unit 271 and the defect estimation unit 272) , is implemented by a computer processor that operates according to a program (verification program).
  • the operation of the verification system 200 of this embodiment is the same as the operation shown in the flowchart illustrated in FIG. More specifically, the surrogate model selection unit 61 of the present embodiment accepts input of data at the time of failure occurrence as data to be analyzed. Then, the verification unit 270 verifies the analysis target using the selected surrogate model.
  • FIG. 7 is a flowchart showing an operation example of the verification unit 270 of this embodiment.
  • the defect reproduction unit 271 inputs data at the time of defect occurrence including parameters when the defect occurred in the analysis object (step S211). Then, the defect reproduction unit 271 applies the input parameters to the selected surrogate model to calculate a first evaluation value (step S212).
  • the failure estimation unit 272 applies the normal data to the surrogate model to calculate a second evaluation value (step S213). Then, the defect estimator 272 compares the first evaluation value and the second evaluation value to estimate the defect occurrence location (step S214).
  • the defect reproduction unit 271 of the verification unit 270 inputs parameters at the time of defect occurrence, applies the input parameters to the selected surrogate model, and calculates the first evaluation value. do. Then, the fault estimating unit 272 applies the normal data to the surrogate model to calculate the second evaluation value, compares the first evaluation value and the second evaluation value, and estimates the fault occurrence location. do. Therefore, since it is possible to easily reproduce the failure occurrence situation and isolate the cause, the cost required for the verification process can be reduced.
  • HILS Hard-In-the-Loop-Simulation
  • surrogate models generated for each domain can be used, so it is easy to verify in which domain a problem has occurred.
  • Embodiment 3 Next, a third embodiment of the verification system of the present invention will be described.
  • the third embodiment shows a configuration in which the verification system of the present invention is used for operation verification of an analysis target (in particular, unit basis).
  • each unit of an automobile is manufactured by Tier 1. Even if the specifications of these units such as input and output are known, the inside is often black boxed.
  • verifying the operation of delivered parts it is necessary to confirm whether they operate according to specifications and whether there are any problems that occur in special cases. In such a case, it is possible to use a simulator, but there is a problem that the method of verifying the operation only by the simulator takes a lot of time. Therefore, by using the verification system of this embodiment, the operation verification can be easily performed.
  • FIG. 8 is a block diagram showing a configuration example of the third embodiment of the verification system according to the present invention.
  • the verification system 300 of the present embodiment includes a data acquisition unit 10, a data storage unit 20, a surrogate model construction unit 30, a surrogate model storage unit 40, a surrogate model evaluation unit 50, a surrogate model selection unit 62, a verification 370.
  • the configuration of the verification system 300 of this embodiment is different from the configuration of the first embodiment illustrated in FIG. differs in that a verification unit 370 is provided in .
  • Other configurations are the same as those of the second embodiment.
  • the surrogate model selection unit 62 receives input of analysis target data and selects a surrogate model highly relevant to the analysis target. It should be noted that the surrogate model selection unit 62 of the present embodiment receives an input of operation data for each unit as data to be analyzed. The method of selecting a surrogate model highly relevant to the analysis target is the same as in the first embodiment. In particular, in this embodiment, a unit-wise surrogate model is selected.
  • the output device 70 may visualize a combination of surrogate models of each unit used for verification.
  • FIG. 9 is an explanatory diagram showing an example of visualizing the surrogate model of each unit.
  • FIG. 9 exemplifies a combination of surrogate models assuming a power train portion of an automobile. As illustrated in FIG. 9, the output device 70 may associate and visualize related units (or domains).
  • the output device 70 may accept designation of a surrogate model used for verification by the designer from a combination of visualized surrogate models.
  • the example shown in FIG. 9 indicates that the surrogate model for evaluating the engine temperature has been selected from among the surrogate models of the engine.
  • the surrogate model selection unit 62 may specify the surrogate model selected from the output device 70 as the surrogate model used for verification by the verification unit 370, which will be described later.
  • FIG. 10 is a block diagram showing a configuration example of the verification unit 370 of this embodiment.
  • the verification unit 370 of this embodiment includes an operation verification unit 371 and a simulator operation verification unit 372 .
  • the operation verification unit 371 uses the selected surrogate model to verify the operation of the analysis target. Specifically, the operation verification unit 371 inputs evaluation data including normal parameters to be analyzed, applies the input parameters to the selected surrogate model, and calculates an evaluation value. Then, the operation verification unit 371 compares the calculated evaluation value with the evaluation value assumed in the evaluation data, and verifies whether or not a problem has occurred.
  • Any method can be used to determine whether or not a defect has occurred. For example, a method similar to the method for estimating a defect by the defect estimation unit 272 of the second embodiment (whether the difference between the two evaluation values is within a predetermined range , etc.) may be used.
  • the simulator operation verification unit 372 When it is estimated that a defect will occur based on the evaluation value, the simulator operation verification unit 372 performs operation verification using a simulator for the estimated defect location. Note that the simulator is prepared in advance according to the analysis target. Any method may be used for the simulator operation verification unit 372 to verify the operation. For example, the simulator operation verification unit 372 may obtain an operation result by applying parameters used when it is estimated that a problem will occur to the simulator. Also, the simulator operation verification unit 372 may obtain an operation result based on the parameters instructed by the designer according to the location of the estimated defect.
  • a data acquisition unit 10 a surrogate model construction unit 30, a surrogate model evaluation unit 50, a surrogate model selection unit 62, and a verification unit 370 (more specifically, an operation verification unit 371 and a simulator operation verification unit 372) is implemented by a computer processor that operates according to a program (verification program).
  • the operation of the verification system 300 of this embodiment is the same as the operation shown in the flowchart illustrated in FIG. More specifically, the surrogate model selection unit 62 of the present embodiment receives an input of operation data for each unit as data to be analyzed. Then, the verification unit 370 verifies each unit to be analyzed using the selected surrogate model.
  • FIG. 11 is a flowchart showing an operation example of the verification unit 370 of this embodiment.
  • the operation verification unit 371 inputs evaluation data including normal parameters to be analyzed (step S311).
  • the operation verification unit 371 then applies the input parameters to the selected surrogate model to calculate an evaluation value (step S312).
  • the operation verification unit 371 estimates whether or not a problem has occurred based on the evaluation value (step S313).
  • step S313 If it is estimated that no problem has occurred (No in step S313), the processes after step S311 are repeated. On the other hand, if it is estimated that a problem has occurred (Yes in step S313), the simulator operation verification unit 372 performs operation verification on the estimated problem location using the simulator to be analyzed (step S314).
  • the operation verification unit 371 of the verification unit 370 inputs evaluation data including normal parameters to be analyzed, and applies the input parameters to the selected surrogate model for evaluation. Calculate the value. Then, when it is estimated that a defect will occur based on the evaluation value, the simulator operation verification unit 372 performs operation verification using the simulator to be analyzed for the estimated defect location. Therefore, since the operation verification can be performed simply, the cost required for the verification process can be reduced.
  • the verification unit 370 of the present embodiment verifies normal data at high speed using a surrogate model, and when it is estimated that a problem will occur, verifies a more detailed operating situation using a simulator. In this way, the cost required for the verification process can be reduced because the simulator is used only for verification that requires higher accuracy.
  • FIG. 12 is a block diagram showing an overview of a verification system according to the invention.
  • a verification system 80 (for example, verification system 100) according to the present invention uses operation data (for example, running data) of an analysis target (for example, automobile) as learning data to construct a surrogate model that simulates the behavior of the analysis target.
  • the surrogate model construction means 81 (for example, the surrogate model construction unit 30) and the operation data of the analysis object are determined to reproduce the behavior of the analysis object by the operation data corresponding to the verification content under the specified conditions.
  • surrogate model selection means 82 (surrogate model selection unit 60) for selecting a surrogate model to be used, and verification means 83 (for example, verification unit 170) for verifying the analysis object using the selected surrogate model.
  • the surrogate model construction means 81 may construct a surrogate model for each domain grouping units, which are the minimum units of verification.
  • the surrogate model construction means 81 (for example, in the case of an automobile) creates a surrogate model for each domain grouping units for each function of the automobile (for example, a control system, a body system, a safety system, an information system, etc.). may be constructed.
  • the verification means 83 (for example, the verification unit 170) inputs operation data including parameters used when operating the analysis target, applies the input parameters to the selected surrogate model, and calculates an evaluation value. Then, based on the calculated evaluation value, an operation verification means (for example, an operation verification unit 171) that specifies the optimum parameter as a verification result, and the obtained verification result is applied to the simulator to be analyzed to obtain the operation result.
  • simulator operating means for example, the simulator operating unit 172 for obtaining
  • the verification means 83 (for example, the verification unit 270) inputs the data at the time of failure occurrence including the parameters when the failure occurred in the analysis object, applies the input parameters to the selected surrogate model, and applies the A defect reproducing means (for example, a defect reproducing unit 271) that calculates one evaluation value, and a second evaluation value is calculated by applying normal data to the surrogate model, and the first evaluation value and the second evaluation value are calculated. It may also include defect estimating means (for example, defect estimating section 272) for estimating a defect occurrence location by comparing the evaluation value.
  • the verification means 83 (for example, the verification unit 370) inputs evaluation data including the parameters of the normal state of the analysis target, applies the input parameters to the selected surrogate model, and calculates an evaluation value.
  • means for example, operation verification unit 371
  • simulator operation verification means for example, , simulator operation verification unit 372.
  • the surrogate model selection means 82 may select a surrogate model in which the data item to be analyzed and the input/output data item match.
  • Appendix 2 The verification system according to Appendix 1, wherein the surrogate model building means builds a surrogate model in units of domains in which units, which are minimum verification units, are put together.
  • appendix 3 The verification system according to appendix 1 or appendix 2, wherein the surrogate model construction means constructs a surrogate model in units of domains in which units are organized for each function of the automobile.
  • the verification means is Input the operation data including the parameters used when operating the analysis target, apply the input parameters to the selected surrogate model to calculate the evaluation value, and based on the calculated evaluation value, determine the optimal parameter as a verification result;
  • the verification system according to any one of Appendices 1 to 3, including a simulator operating means for applying the obtained verification result to a simulator to be analyzed to obtain an operation result.
  • the verification means is a defect reproducing means for inputting data at the time of defect occurrence including parameters when the defect occurred in the analysis target, applying the input parameters to the selected surrogate model, and calculating a first evaluation value; Defect estimating means for applying normal data to the surrogate model to calculate a second evaluation value, comparing the first evaluation value and the second evaluation value, and estimating a defect occurrence location and the verification system of any one of Clauses 1-3.
  • the verification means is an operation verification means for inputting evaluation data including parameters of a normal state to be analyzed and applying the input parameters to a selected surrogate model to calculate an evaluation value; simulator operation verification means for performing operation verification using the simulator to be analyzed for the estimated defect location when it is estimated that a defect will occur based on the evaluation value.
  • a verification system according to any one of the preceding claims.
  • Appendix 7 The verification system according to any one of Appendices 1 to 6, wherein the surrogate model selection means selects a surrogate model in which the data item to be analyzed and the input/output data item match.
  • a surrogate model building process for building a surrogate model that simulates the behavior of the analysis target using the operation data of the analysis target as learning data
  • a surrogate model selection process for selecting the surrogate model that is determined to reproduce the behavior of the analysis target according to the operation data according to the verification content most closely under specified conditions from the analysis target operation data
  • a program storage medium for storing a verification program for executing a verification process for verifying an analysis target using the selected surrogate model.
  • the program storage medium which stores a verification program for constructing a surrogate model in units of domains in which units, which are minimum verification units, are grouped together in the surrogate model construction processing.
  • a surrogate model building process for building a surrogate model that simulates the behavior of the analysis target using the operation data of the analysis target as learning data
  • a surrogate model selection process for selecting the surrogate model that is determined to reproduce the behavior of the analysis target according to the operation data according to the verification content most closely under specified conditions from the analysis target operation data
  • a verification program for executing verification processing for verifying an analysis target using the selected surrogate model.
  • a surrogate model storage means for storing a surrogate model that simulates the behavior of the analysis target, constructed using the operation data of the analysis target as learning data; a surrogate model selection means for selecting, from the operation data to be analyzed, the surrogate model that is judged to reproduce the behavior of the analysis object most accurately based on the operation data according to the verification content under specified conditions;
  • a verification device comprising verification means for verifying an analysis target using the selected surrogate model.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

サロゲートモデル構築手段81は、分析対象の稼動データを学習データとして用いて、その分析対象の挙動を模擬するサロゲートモデルを構築する。サロゲートモデル選択手段82は、分析対象の稼動データから、指定された条件のもと、検証内容に応じた稼動データによる分析対象の挙動を最も再現すると判断されるサロゲートモデルを選択する。検証手段83は、選択されたサロゲートモデルを用いて分析対象の検証を行う。

Description

検証システム、検証方法および検証プログラム
 本発明は、サロゲートモデルを用いて検証を行う検証システム、検証方法および検証プログラムに関する。
 近年、シミュレーションを活用した検証により、検証工程の負担を軽減させたり、手戻りの発生を抑制したりする開発が行われている。例えば、自動車設計開発ではMDB(Model-Based Development )による開発が進んでおり、SILS(Software In the Loop Simulation )やRCP(Rapid Control Prototyping )、HILS(Hardware In the Loop Simulation )などのシミュレーションが活用されている。
 また、シミュレーションを高速に行う方法として、サロゲートモデルを利用する方法も知られている。サロゲートモデルは、シミュレーションによる評価を代替するモデルであり、近似解を高速に導出するために用いられる。例えば、特許文献1には、サロゲートモデルを用いた製品設計およびシミュレーションについて記載されている。
特開2016-146169号公報
 例えば、上述するような自動車設計開発において、シミュレーションを繰り返すことにより検証が行われるが、大規模なシステムの場合、一般に、シミュレーションを行う時間や計算コストが膨大になる。そこで、シミュレーションの代替としてサロゲートモデルを利用することで、検証工程の計算コストを低減することが可能になる。
 一方、自動車は、多数のユニット・ソフトウェアから構成されているため、結合テストなどを行う場合、各ユニットやソフトウェアのシミュレーションを構築して、組み合わせる必要がある。特許文献1に記載されたサロゲートモデルを用いることで、検証工程における分析そのもののコストを低減することは可能である。
 しかし、上述するような多数のユニットを結合させて結合テストを行う場合、検証に用いる各ユニットのサロゲートモデルを適切に組み合わせて分析を行う必要がある。そのため、分析の前段階の作業量が増加する結果、検証工程のコストが増加してしまうという問題がある。
 また、分析対象が増加するにしたがって、用いられるサロゲートモデルの種類も増加する。そのため、多数のユニットに対応したそれぞれのサロゲートモデルが存在する場合、分析に適したサロゲートモデルを選択するのにも、やはり多くのコストがかかってしまうという問題がある。そのため、シミュレーションを活用した検証が必要な状況において、検証にサロゲートモデルを用いる場合であっても、検証工程に要するコストを低減できることが好ましい。
 そこで、本発明は、サロゲートモデルを用いた検証工程に要するコストを低減できる検証システム、検証方法および検証プログラムを提供することを目的とする。
 本発明による検証システムは、分析対象の稼動データを学習データとして用いて、その分析対象の挙動を模擬するサロゲートモデルを構築するサロゲートモデル構築手段と、分析対象の稼動データから、指定された条件のもと、検証内容に応じた稼動データによる分析対象の挙動を最も再現すると判断されるサロゲートモデルを選択するサロゲートモデル選択手段と、選択されたサロゲートモデルを用いて分析対象の検証を行う検証手段とを備えたことを特徴とする。
 本発明による検証方法は、分析対象の稼動データを学習データとして用いて、その分析対象の挙動を模擬するサロゲートモデルを構築し、分析対象の稼動データから、指定された条件のもと、検証内容に応じた稼動データによる分析対象の挙動を最も再現すると判断されるサロゲートモデルを選択し、選択されたサロゲートモデルを用いて分析対象の検証を行うことを特徴とする。
 本発明による検証プログラムは、コンピュータに、分析対象の稼動データを学習データとして用いて、その分析対象の挙動を模擬するサロゲートモデルを構築するサロゲートモデル構築処理、分析対象の稼動データから、指定された条件のもと、検証内容に応じた稼動データによる分析対象の挙動を最も再現すると判断されるサロゲートモデルを選択するサロゲートモデル選択処理、および、選択されたサロゲートモデルを用いて分析対象の検証を行う検証処理を実行させることを特徴とする。
 本発明によれば、サロゲートモデルを用いた検証工程に要するコストを低減できる。
本発明による検証システムの第一の実施形態の構成例を示すブロック図である。 第一の実施形態の検証部の構成例を示すブロック図である。 第一の実施形態の検証システムの動作例を示すフローチャートである。 第一の実施形態の検証部の動作例を示すフローチャートである。 本発明による検証システムの第二の実施形態の構成例を示すブロック図である。 第二の実施形態の検証部の構成例を示すブロック図である。 第二の実施形態の検証部の動作例を示すフローチャートである。 本発明による検証システムの第三の実施形態の構成例を示すブロック図である。 各ユニットのサロゲートモデルを可視化した例を示す説明図である。 第三の実施形態の検証部の構成例を示すブロック図である。 第三の実施形態の検証部の動作例を示すフローチャートである。 本発明による検証システムの概要を示すブロック図である。
 以下、本発明の実施形態を図面を参照して説明する。
実施形態1.
 図1は、本発明による検証システムの第一の実施形態の構成例を示すブロック図である。本実施形態の検証システム100は、サロゲートモデルを用いて、分析対象の検証を行うシステムである。上述するサロゲートモデルは近似解の絞り込みが可能なモデルと言えるため、本実施形態の検証システム100は、近似解の絞り込みが可能なサロゲートモデルを用いて検証を行うシステムと言える。
 本実施形態の検証システム100は、データ取得部10と、データ記憶部20と、サロゲートモデル構築部30と、サロゲートモデル記憶部40と、サロゲートモデル評価部50と、サロゲートモデル選択部60と、検証部170とを備えている。検証システム100は、各種処理結果を出力する出力装置70に接続される。
 出力装置70は、例えば、ディスプレイ装置や、プリンタなどにより実現される。また、出力装置70は、処理結果に応じた制御情報を、各ユニットに出力する制御装置として実現されてもよい。
 データ取得部10は、検証システム100が各種処理に用いるデータを取得して、データ記憶部20に記憶させる。なお、以下の説明では、検証システム100が自動車設計開発において利用される状況を想定する。すなわち、本実施形態では、検証システム100が自動車の稼動状態や、不具合発生時の状況を検証する場面において利用されるものとする。
 ただし、本発明の検証システム100が利用される対象は、自動車設計開発に限定されず、例えば、自動二輪車の設計開発や、各種制御装置の設計開発などであってもよい。
 データ取得部10は、具体的には、分析対象の稼動データおよび検証用データ取得する。自動車の場合、分析対象の稼動データは、自動車の走行データや、不具合発生時のデータなどであり、検証用データは、自動車の正常時データなどである。なお、稼動データの詳細については後述される。
 データ取得部10は、例えば、コネクテッドカーによって収集された車両の状態や周囲の道路状況などの様々なデータを走行データとして受信してもよい。
 そして、データ取得部10は、分析対象を識別する識別情報が付加された稼動データおよび検証データをデータ記憶部20に記憶する。例えば、取得したデータに識別情報が含まれていない場合、データ取得部10は、取得したデータに識別情報を付加してデータ記憶部20に記憶する。
 本実施形態では、識別情報として、検証の最小単位であるユニットを識別する情報と、複数のユニットをまとめたドメインを識別する情報を想定する。ドメインにまとめられる各ユニットの内容は任意であり、設計者等により予め設定され、データ記憶部20に記憶される。以下、自動車設計の場合におけるドメインの設定方法について具体的に説明する。
 第一の設定方法として、自動車の機能ごとにドメインを設定する方法が挙げられる。自動車の機能は、例えば、制御系、ボディ系、安全系、情報系などである。制御系とは、エンジンやブレーキなど、自動車の基本機能を制御するもの、すなわち、エンジン制御や、アイドリングストップ制御、変速制御などが挙げられる。また、ボディ系とは、走行には直接関わらないが、自動車に関連するものであり、例えば、エアーコンディショナー、ヘッドランプ、電子キー、電子ミラーなどが挙げられる。
 安全系とは、走行時の安全確保を行うものであり、例えば、エアバッグやADAS(Advanced Driver-Assistance Systems)/自動運転システム、ブレーキ制御、ステアリング制御などが挙げられる。情報系とは、自動車のいわゆるインフォテイメント関連のものであり、例えば、カーナビゲーション、車載通信機器同士の通信部、ドライバが用いる通信機器と車載機器との通信部などが挙げられる。
 第二の設定方法として、物理的な位置の近さに応じてドメインを設定する方法が挙げられる。位置の近い対象として、例えば、エンジンルーム付近、ボディ下、天井、リア付近などが挙げられる。
 第三の設定方法として、配線に基づいてドメインを設定する方法が挙げられる。例えば、自動車のバスにはLIN(Local Interconnect Network)やCAN(Controller Area Network )など、複数のバスが使用されているため、各バスに接続されているユニットをまとめて一ドメインとしてもよい。
 第四の設定方法として、複数のECU(Electronic Control Unit)間で行われる通信中継するCGW(Central Gateway )に接続された各バスのユニットをそれぞれ一ドメインとする方法が挙げられる。
 なお、これらの設定方法は一例であり、一連の動作を行う各ユニットをまとめて一つのドメインとして設定されていてもよい。
 自動車の稼動データには、例えば、稼動するユニットや使用されるソフトウェアのバージョン、入出力パラメータ情報などが含まれる。なお、稼動データは、例えば、単体テスト用のデータ、結合テスト用のデータなどに分類できる。単体テスト用のデータには、例えば、接続される他ユニットの情報などが含まれていてもよい。
 また、自動車の走行データとして、GPS(Global Positioning System )により取得される位置や速度などの情報、走行中の映像データ、Lidar(light detection and ranging )などの各種センサにより取得される情報などが挙げられる。
 他にも、不具合発生時のデータには、自動車から直接取得される情報のほか、ディーラーなどで運転手からヒアリングしたレポートなどが含まれていてもよい。
 データ記憶部20は、上述する稼動データおよび検証用データ、並びに、各ドメインに含まれるユニットの内容を示す情報を記憶する。データ記憶部20は、例えば、磁気ディスク等により実現される。
 サロゲートモデル構築部30は、分析対象の稼動データを学習データとして用いて、その分析対象の挙動を模擬するサロゲートモデルを構築する。なお、本実施形態では、サロゲートモデル構築部30は、ユニットごと、または、ドメインごとにサロゲートモデルを構築する。
 具体的には、サロゲートモデル構築部30は、データ取得部10から、識別情報に基づいて特定される分析対象のユニットごと、または、ドメインごとに学習データを取得する。そして、サロゲートモデル構築部30は、取得した学習データを用いた機械学習により、分析対象ごとにサロゲートモデルを構築する。
 特に、サロゲートモデル構築部30が、各ユニットをまとめたドメイン単位でサロゲートモデルを構築することで、結合テストにおいて、各ユニットやソフトウェアのシミュレータを組み合わせる必要がなくなるため、検証工程に要するコストを低減できる。
 例えば、一般的な方法で、複数のユニットとの結合を検証する場合、それらのモデルや実機の用意が必要になる。また、これらの複数のモデルを組み合わせる場合にも、モデルの選択が煩雑になってしまうという問題もある。一方、本実施形態では、サロゲートモデル構築部30が、例えば、上述するような配線に基づいて設定されたドメインごとにサロゲートモデルを構築する。そのため、各バスに接続されている個々のユニットのシミュレータやサロゲートモデルを組み合わせる必要がなくなるため、検証工程に要するコストを低減できる。
 さらに、サロゲートモデル構築部30は、条件ごとにサロゲートモデルを生成してもよい。条件は、設計者等により予め定められ、例えば、学習データの取得された地域や時間、環境などが用いられる。
 サロゲートモデル構築部30がサロゲートモデルを生成する方法は任意である。サロゲートモデル構築部30は、例えば、特許文献1に記載された方法を用いてサロゲートモデルを構築してもよく、公知の他の技術を用いてサロゲートモデルを構築してもよい。サロゲートモデル構築部30は、構築したサロゲートモデルをサロゲートモデル記憶部40に記憶させる。
 サロゲートモデル記憶部40は、サロゲートモデルを記憶する。サロゲートモデル記憶部40は、サロゲートモデル構築部30によって生成されたサロゲートモデルだけでなく、他の装置(図示せず)等で作成されたサロゲートモデルを記憶してもよい。サロゲートモデル記憶部40は、例えば、磁気ディスク等により実現される。
 サロゲートモデル評価部50は、構築したサロゲートモデルの精度を評価する。サロゲートモデルの評価方法は任意である。サロゲートモデル評価部50は、例えば、構築されたサロゲートモデルで元データを再現した際の誤差に基づいて、サロゲートモデルの精度を評価してもよい。
 以下、交差検証によりサロゲートモデルの精度を評価する一例を説明する。例えば、あるサロゲートモデルにおいて、パラメータA~Eから出力Fが得られるとする。例えば、自動車のエンジンの挙動を再現するサロゲートモデルの場合、パラメータは、例えば、燃料の噴射時期や量、圧力、回数、間隔などであり、出力は、燃費や排気量などである。なお、出力Fの値が良好であるときのパラメータA~Eが最適解になる。まず、パラメータA~Eと、その出力Fとの組のデータを複数用意し、このデータを学習用のデータ群と検証用のデータ群とに分割する。
 次に、サロゲートモデル構築部30が、学習用のデータ群を用いて学習を行い、サロゲートモデルを構築する。サロゲートモデル評価部50は、構築されたサロゲートモデルに検証用のパラメータA~Eを適用し、出力F´を得る。そして、サロゲートモデル評価部50は、得られた出力F´と、本来の値Fとの誤差Fは、上付きチルダ)を、検証用のデータ群それぞれについて算出する。サロゲートモデル評価部50は、例えば、得られた誤差Fから予め定めた検証用の値(例えば、総和や平均値)を算出し、算出された検証用の値が、所定の基準を満たしている否かで、精度を評価してもよい。
 精度が不十分である(例えば、予め定めた基準を満たしていない)と評価された場合、サロゲートモデル評価部50は、サロゲートモデル構築部30に対して、サロゲートモデルの再構築を指示してもよい。この場合、サロゲートモデル構築部30は、学習データを追加したり、構築時のパラメータ(ハイパーパラメータ)をチューニングしたりすることで、サロゲートモデルを再構築してもよい。
 サロゲートモデル選択部60は、分析対象のデータの入力を受け付け、その分析対象と関連性の高いサロゲートモデルを選択する。具体的には、サロゲートモデル選択部60は、分析対象の稼動データから、指定された条件のもと、検証内容に応じた当該稼動データによる分析対象の挙動を最も再現すると判断されるサロゲートモデルを選択する。
 分析対象の挙動を最も再現すると判断される方法として、種々の方法が挙げられる。以下、判断方法を例示するが、分析対象と関連性の高いサロゲートモデルを選択する方法は、以下に例示する判断方法に限定されない。
 第一の判断方法として、分析対象のデータ項目と入出力データ項目が一致するサロゲートモデルを選択する方法が挙げられる。入力データから、所望の出力値を得るように学習されたサロゲートモデルは、分析対象の挙動を最も再現すると判断できるからである。
 また、入出力データ項目が一致するサロゲートモデルが複数存在するような場合、第一の判断方法として、シミュレーションでの設定環境と、分析対象の測定環境が近いサロゲートモデルを選択する方法が挙げられる。測定環境として、例えば、温度や天候、路面状況などの周辺情報が挙げられる。想定する環境が近いほど、分析対象の挙動をより再現すると判断できるからである。
 また、第三の判断方法として、注目するシミュレーション結果と出力値との誤差が小さいサロゲートモデルを選択する方法が挙げられる。サロゲートモデルでは、複数の出力値が得られるが、それぞれの出力値の誤差には偏りがある。そのため、注目するパラメータを重視して構築されたサロゲートモデルは、注目する分析対象の挙動をより再現すると判断されるからである。
 また、第四の判断方法として、検証時の誤差が最も小さいサロゲートモデルを選択する方法が挙げられる。例えば、分析対象の稼動データのうち、入力データと出力データのペアを準備する。そして、サロゲートモデルに入力データを適用して出力値を得たときに、その出力値と出力データとの誤差が最も小さいサロゲートモデルを選択すればよい。
 また、第五の判断方法として、分析対象の稼動データのデータ項目と、構築時に用いたデータ群の特徴が近いサロゲートモデルを選択する方法が挙げられる。特徴を表わす情報として、例えば、統計情報(平均や分散)、入出力の相関値、特定のパラメータ間の相関などが挙げられる。例えば、分析対象の稼動データが低い温度での稼動状況を再現しようとする場合、低い温度で取得された稼動データをより多く用いて学習されたサロゲートモデルを選択することで、注目する分析対象の挙動をより再現すると判断される。
 検証部170は、選択されたサロゲートモデルを用いて分析対象の検証を行う。検証内容として、分析対象の動作検証、分析対象を稼動させる際に用いられるパラメータの検証、および、分析対象の不具合検証を行う状況などが想定される。第一の実施形態では、検証部170が、分析対象の動作検証およびパラメータの検証を行う場合について説明する。
 図2は、本実施形態の検証部170の構成例を示すブロック図である。本実施形態の検証部170は、動作検証部171と、シミュレータ動作部172とを含む。
 動作検証部171は、選択されたサロゲートモデルを用いて、分析対象の動作および パラメータの検証処理を行う。具体的には、動作検証部171は、分析対象を稼動させる際に用いられるパラメータを含む稼動データを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出する。
 動作検証部171は、この検証処理を予め定めた条件まで繰り返し、得られた評価値に基づいて最適なパラメータを検証結果として特定する。動作検証部171は、例えば、最も好ましい評価値に対応するパラメータを検証結果としてもよい。動作検証部171は、例えば、想定するパラメータのパターンを網羅するまで検証処理を繰り返してもよく、所望の評価値が得られるまで予め定めた回数分、検証処理を繰り返してもよい。
 そして、動作検証部171は、検証結果を出力する。なお、動作検証部171は、検証時の最適なパラメータの他、パラメータを適用した際の評価値、使用したサロゲートモデルの情報などを出力してもよい。
 このような検証処理を、シミュレータを使って毎回実行する一般的な方法では、多くの時間を要してしまう。一方、本実施形態では、動作検証部171は、選択されたサロゲートモデルを用いて、分析対象の検証処理を行う。これにより、パラメータをサロゲートモデルに適用するだけで、評価値を得ることができるため、検証工程に要するコストを低減できる。
 シミュレータ動作部172は、動作検証部171により得られた検証結果をシミュレータに適用して、動作結果を得る。上述するように、サロゲートモデルを用いることで、最適なパラメータの近似値を得ることができる。そこで、シミュレータ動作部172は、得られた近似値をベースにシミュレータを稼動させることで、より精度の高いパラメータの最適値を導出する。なお、シミュレータは、分析対象に応じて、予め準備される。
 このように、シミュレータ動作部172が、サロゲートモデルによって導出された検証結果に基づいて、シミュレータを稼動させることにより、パラメータの最適値を導出する。そのため、全ての検証をシミュレータを用いて実行する場合と比較し、コストを低減させつつ、精度の高い最適値を得ることが可能になる。
 なお、動作検証部171による検証結果がそのまま利用される場合、検証部170は、シミュレータ動作部172を備えていなくてもよい。
 以下、車両のエンジンを分析対象とした場合の検証部170の動作について、具体例を用いて説明する。なお、検証部170による検証の前提として、車両のエンジンの挙動を模擬するサロゲートモデルが、サロゲートモデル選択部60により選択されているとする。
 動作検証部171は、分析対象の稼動データを入力して、サロゲートモデルのパラメータに適用する。入力されるパラメータ(制御パラメータ)として、上述する燃料の噴射時期(例えば、[0,2,4])、量(例えば、10L)、圧力、回数、間隔の他、制御ソフトウェアのバージョン(例えば、Eng-003)などが挙げられる。そして、動作検証部171は、パラメータを適用した際の評価値を出力する。出力値を示す制御項目として、例えば、燃費(km/L)や排気量(cm3 )、出力、回転数、温度などが挙げられる。
 適切な制御項目が得られた場合(例えば、燃費が所定の値以下、など)、動作検証部171は、その際のパラメータを最適値として出力する。
 シミュレータ動作部172は、動作検証部171により得られた検証結果(最適値)をシミュレータに適用して、より精度の高い評価値を導出する。例えば、上述する噴射時期(例えば、[0,2,4])および量(例えば、10L)が検証結果として出力された場合、シミュレータ動作部172は、この検証結果を、シミュレータに適用して、より精度の高い評価値(例えば、燃費(km/L)や排気量(cm3 ))を得る。
 データ取得部10と、サロゲートモデル構築部30と、サロゲートモデル評価部50と、サロゲートモデル選択部60と、検証部170(より具体的には、動作検証部171と、シミュレータ動作部172)とは、プログラム(検証プログラム)に従って動作するコンピュータのプロセッサ(例えば、CPU(Central Processing Unit ))によって実現される。
 例えば、プログラムは、検証システムの記憶部(図示せず)に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、データ取得部10、サロゲートモデル構築部30、サロゲートモデル評価部50、サロゲートモデル選択部60および検証部170として動作してもよい。また、検証システム100の機能がSaaS(Software as a Service )形式で提供されてもよい。
 データ取得部10と、サロゲートモデル構築部30と、サロゲートモデル評価部50と、サロゲートモデル選択部60と、検証部170(より具体的には、動作検証部171と、シミュレータ動作部172)とは、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路(circuitry )、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。
 また、検証システム100の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
 また、サロゲートモデル記憶部40と、サロゲートモデル評価部50と、サロゲートモデル選択部60と、検証部170とにより、サロゲートモデルを用いた検証が行われる。そのため、サロゲートモデル記憶部40と、サロゲートモデル評価部50と、サロゲートモデル選択部60と、検証部170とを含む装置を、検証装置と言うことができる。
 次に、本実施形態の検証システム100の動作を説明する。図3は、本実施形態の検証システムの動作例を示すフローチャートである。サロゲートモデル構築部30は、分析対象の稼動データを学習データとして用いて、分析対象の挙動を模擬するサロゲートモデルを構築する(ステップS11)。サロゲートモデル選択部60は、分析対象の稼動データから、指定された条件のもと、検証内容に応じた稼動データによる分析対象の挙動を最も再現すると判断されるサロゲートモデルを選択する(ステップS12)。そして、検証部170は、選択されたサロゲートモデルを用いて分析対象の検証を行う(ステップS13)。
 図4は、本実施形態の検証部170の動作例を示すフローチャートである。動作検証部171は、分析対象を稼動させる際に用いられるパラメータを含む稼動データを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出する(ステップS111)。動作検証部171は、予め定められた条件を満たすか否か判断する(ステップS112)。条件を満たさない場合(ステップS112におけるNo)、動作検証部171は、ステップS111の処理を繰り返す。
 一方、条件を満たす場合(ステップS112におけるYes)、動作検証部171は、算出された評価値に基づいて、最適なパラメータを検証結果として特定する(ステップS113)。シミュレータ動作部172は、動作検証部171により得られた検証結果をシミュレータに適用して、評価値を得る(ステップS114)。その後、得られた評価値に基づいて、最終的なパラメータが決定される。
 以上のように、本実施形態では、サロゲートモデル構築部30が分析対象の稼動データを学習データとして用いてサロゲートモデルを構築し、サロゲートモデル選択部60が、分析対象の稼動データから、指定された条件のもと、検証内容に応じたサロゲートモデルを選択する。そして、検証部170が、選択されたサロゲートモデルを用いて分析対象の検証を行う。よって、サロゲートモデルを用いた検証工程に要するコストを低減できる。
 また、本実施形態では、検証部170の動作検証部171が、分析対象の稼動データを入力し、入力された稼動データをサロゲートモデルに適用して評価値を算出する。また、動作検証部171が、算出された評価値に基づいて、最適なパラメータを検証結果として特定する。そして、シミュレータ動作部172が、動作検証部171により得られた検証結果を、分析対象のシミュレータに適用して動作結果を得る。よって、検証工程に要するコストを低減しつつ、より精度の高い出力値を得ることが可能になる。
実施形態2.
 次に、本発明の検証システムの第二の実施形態を説明する。第二の実施形態では、本発明の検証システムが分析対象の不具合検証に用いられる場合の構成を示す。図5は、本発明による検証システムの第二の実施形態の構成例を示すブロック図である。
 本実施形態の検証システム200は、データ取得部10と、データ記憶部20と、サロゲートモデル構築部30と、サロゲートモデル記憶部40と、サロゲートモデル評価部50と、サロゲートモデル選択部61と、検証部270とを備えている。
 すなわち、本実施形態の検証システム200の構成は、図1に例示する第一の実施形態の構成と比較し、サロゲートモデル選択部60の代わりにサロゲートモデル選択部61を備え、検証部170の代わりに検証部270を備えている点において異なる。それ以外の構成は、第一の実施形態と同様である。
 サロゲートモデル選択部61は、分析対象のデータの入力を受け付け、その分析対象と関連性の高いサロゲートモデルを選択する。なお、本実施形態のサロゲートモデル選択部61は、分析対象のデータとして、不具合発生時のデータの入力を受け付ける。分析対象と関連性の高いサロゲートモデルを選択する方法は、第一の実施形態と同様である。
 ここで、サロゲートモデル構築部30は、元となるシミュレーションをある程度再現できる態様でサロゲートモデルを構築する。すなわち、サロゲートモデルは、分析対象の挙動を模擬するものであることから、サロゲートモデルの精度が高ければ、直接的な不具合発生時のデータがなくても、不具合発生時の状況を再現可能と考えられる。
 ただし、不具合発生時のデータを用いてサロゲートモデルを構築することで、サロゲートモデルによる不具合の再現性は向上し、同様の不具合を発生させることが容易になるため、より好ましい。
 なお、不具合発生の状況と、サロゲートモデルの構築時の環境(パラメータ)とは完全に一致しないため、誤差が生じる可能性が高い。そのため、サロゲートモデル選択部61は、分析対象と関連性の高いサロゲートモデルを複数選択してもよい。なお、ここで選択されるサロゲートモデルは、ユニット単位のサロゲートモデルであってもよく、ドメイン単位のサロゲートモデルであってもよい。そして、サロゲートモデル選択部61は、後述する検証部270に対して、複数のサロゲートモデルを用いた検証を行わせてもよい。このように複数のサロゲートモデルを選択することで、より妥当な評価値を得ることが可能になる。
 図6は、本実施形態の検証部270の構成例を示すブロック図である。本実施形態の検証部270は、不具合再現部271と、不具合推定部272とを含む。
 不具合再現部271は、選択されたサロゲートモデルを用いて、分析対象の不具合状況を再現する。具体的には、不具合再現部271は、分析対象に不具合が発生した際のパラメータを含む不具合発生時のデータを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出する。以下、不具合再現部271によって算出された評価値のことを、第一の評価値と記すこともある。なお、複数のサロゲートモデルが選択されている場合、不具合再現部271は、各サロゲートモデルによる評価値を算出する。
 不具合推定部272は、不具合再現部271が不具合状況を再現する際に用いたサロゲートモデルに、正常時のデータを適用して、正常時の評価値を算出する。以下、正常時のデータを用いて算出された評価値のことを、第二の評価値と記すこともある。そして、不具合推定部272は、不具合発生時のデータから算出された評価値と、正常時のデータから算出された評価値とを比較して、不具合発生個所を推定する。
 正常時のデータとは、稼動データ(走行時のデータ)の項目が一致または近いデータであって、異常が発生していない(異常とは判断されない)データであり、設計者等によりその基準が予め定められる。また、不具合発生個所の推定方法は任意であり、不具合推定部272は、例えば、両者の評価値の差が、所定の範囲以内か否かに基づいて、不具合発生個所を推定してもよい。
 なお、複数のサロゲートモデルにより複数の評価値が算出されている場合、不具合推定部272は、各サロゲートモデルにより算出された評価値を比較して、不具合発生個所を推定してもよい。
 データ取得部10と、サロゲートモデル構築部30と、サロゲートモデル評価部50と、サロゲートモデル選択部61と、検証部270(より具体的には、不具合再現部271と、不具合推定部272)とは、プログラム(検証プログラム)に従って動作するコンピュータのプロセッサによって実現される。
 次に、本実施形態の検証システム200の動作を説明する。本実施形態の検証システムの動作は、図3に例示するフローチャートで示す動作と同様である。より具体的には、本実施形態のサロゲートモデル選択部61は、分析対象のデータとして、不具合発生時のデータの入力を受け付ける。そして、検証部270は、選択されたサロゲートモデルを用いて分析対象の検証を行う。
 図7は、本実施形態の検証部270の動作例を示すフローチャートである。不具合再現部271は、分析対象に不具合が発生した際のパラメータを含む不具合発生時のデータを入力する(ステップS211)。そして、不具合再現部271は、入力されたパラメータを選択されたサロゲートモデルに適用して第一の評価値を算出する(ステップS212)。不具合推定部272は、サロゲートモデルに正常時のデータを適用して第二の評価値を算出する(ステップS213)。そして、不具合推定部272は、第一の評価値と第二の評価値とを比較して、不具合発生個所を推定する(ステップS214)。
 以上のように、本実施形態では、検証部270の不具合再現部271が、不具合発生時のパラメータを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して第一の評価値を算出する。そして、不具合推定部272が、サロゲートモデルに正常時のデータを適用して第二の評価値を算出し、第一の評価値と第二の評価値とを比較して、不具合発生個所を推定する。よって、不具合発生状況の再現および原因切り分けを簡易的に行うことができるため、検証工程に要するコストを低減できる。
 また、例えば、不具合発生時にHILS(Hardware-In-the-Loop-Simulation )などを活用して再現しようとする場合、多くのユニットが関連しているため、状況の際現に時間がかかるという問題がある。一方、本実施形態では、ドメイン単位で生成されたサロゲートモデルを利用できるため、どのドメインで不具合が発生したか検証することも容易になる。
実施形態3.
 次に、本発明の検証システムの第三の実施形態を説明する。第三の実施形態では、本発明の検証システムが分析対象(特に、ユニット単位)の動作検証に用いられる場合の構成を示す。
 例えば、自動車の各ユニットは、Tier1などによって製造されている。これらのユニットは、入出力などの仕様は判明していても、内部がブラックボックス化されていることも多い。納入されたパーツに対して動作検証をする場合、仕様通りに動作するか、特殊なケースで発生する不具合がないかなど、確認する必要がある。このような場合、シミュレータを活用することも考えられるが、シミュレータのみで動作検証をする方法では多くの時間を要してしまうという問題がある。そこで、本実施形態の検証システムを用いることで、動作検証を簡易的に行えるようにする。
 図8は、本発明による検証システムの第三の実施形態の構成例を示すブロック図である。本実施形態の検証システム300は、データ取得部10と、データ記憶部20と、サロゲートモデル構築部30と、サロゲートモデル記憶部40と、サロゲートモデル評価部50と、サロゲートモデル選択部62と、検証部370とを備えている。
 すなわち、本実施形態の検証システム300の構成は、図2に例示する第一の実施形態の構成と比較し、サロゲートモデル選択部61の代わりにサロゲートモデル選択部62を備え、検証部270の代わりに検証部370を備えている点において異なる。それ以外の構成は、第二の実施形態と同様である。
 サロゲートモデル選択部62は、分析対象のデータの入力を受け付け、その分析対象と関連性の高いサロゲートモデルを選択する。なお、本実施形態のサロゲートモデル選択部62は、分析対象のデータとして、ユニット単位の稼動データの入力を受け付ける。分析対象と関連性の高いサロゲートモデルを選択する方法は、第一の実施形態と同様である。特に、本実施形態では、ユニット単位のサロゲートモデルが選択される。
 なお、出力装置70は、検証に用いる各ユニットのサロゲートモデルの組み合わせを可視化してもよい。図9は、各ユニットのサロゲートモデルを可視化した例を示す説明図である。図9では、自動車のパワートレイン部分を想定したサロゲートモデルの組み合わせを例示する。図9に例示するように、出力装置70は、関連するユニット(またはドメイン)同士を関連付けて可視化してもよい。
 さらに、出力装置70は、可視化したサロゲートモデルの組み合わせから、設計者が検証に用いるサロゲートモデルの指定を受け付けてもよい。図9に示す例では、エンジンのサロゲートモデルのうち、エンジン温度を評価するサロゲートモデルが選択されたことを示す。サロゲートモデル選択部62は、出力装置70から選択されたサロゲートモデルを、後述する検証部370が検証に用いるサロゲートモデルと特定してもよい。
 図10は、本実施形態の検証部370の構成例を示すブロック図である。本実施形態の検証部370は、動作検証部371と、シミュレータ動作検証部372とを含む。
 動作検証部371は、選択されたサロゲートモデルを用いて、分析対象の動作検証を行う。具体的には、動作検証部371は、分析対象の正常時のパラメータを含む評価データを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出する。そして、動作検証部371は、算出された評価値と、評価データで想定する評価値とを比較して、不具合の発生有無を検証する。
 不具合の発生有無の判断方法は任意であり、例えば、第二の実施形態の不具合推定部272が不具合を推定する方法と同様の方法(両者の評価値の差が、所定の範囲以内か否か、など)が用いられてもよい。
 シミュレータ動作検証部372は、評価値に基づいて不具合が発生すると推定された場合、推定された不具合の個所について、シミュレータを用いた動作検証を行う。なお、シミュレータは、分析対象に応じて、予め準備される。シミュレータ動作検証部372が動作検証をする方法は任意である。シミュレータ動作検証部372は、例えば、不具合が発生すると推定された際に用いられたパラメータをシミュレータに適用して、動作結果を得てもよい。また、シミュレータ動作検証部372は、推定された不具合の個所に応じて、設計者により指示されたパラメータに基づいて、動作結果を得てもよい。
 データ取得部10と、サロゲートモデル構築部30と、サロゲートモデル評価部50と、サロゲートモデル選択部62と、検証部370(より具体的には、動作検証部371と、シミュレータ動作検証部372)とは、プログラム(検証プログラム)に従って動作するコンピュータのプロセッサによって実現される。
 次に、本実施形態の検証システム300の動作を説明する。本実施形態の検証システムの動作は、図3に例示するフローチャートで示す動作と同様である。より具体的には、本実施形態のサロゲートモデル選択部62は、分析対象のデータとして、ユニット単位の稼動データの入力を受け付ける。そして、検証部370は、選択されたサロゲートモデルを用いて、分析対象とするユニット単位の検証を行う。
 図11は、本実施形態の検証部370の動作例を示すフローチャートである。動作検証部371は、分析対象の正常時のパラメータを含む評価データを入力する(ステップS311)。そして、動作検証部371は、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出する(ステップS312)。動作検証部371は、評価値に基づいて不具合の発生有無を推定する(ステップS313)。
 不具合が発生していないと推定された場合(ステップS313におけるNo)、ステップS311以降の処理が繰り返される。一方、不具合が発生したと推定された場合(ステップS313におけるYes)、シミュレータ動作検証部372は、推定された不具合の個所について、分析対象のシミュレータを用いた動作検証を行う(ステップS314)。
 以上のように、本実施形態では、検証部370の動作検証部371が、分析対象の正常時のパラメータを含む評価データを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出する。そして、シミュレータ動作検証部372は、評価値に基づいて不具合が発生すると推定された場合、推定された不具合の個所について、分析対象のシミュレータを用いた動作検証を行う。よって、動作検証を簡易的に行うことができるため、検証工程に要するコストを低減できる。
 すなわち、本実施形態の検証部370は、正常データについてはサロゲートモデルを用いて高速に検証を行い、不具合が発生すると推定された場合に、シミュレータを用いてより詳細な動作状況を検証する。このように、より精度を求められる検証に対してのみシミュレータが用いられるため、検証工程に要するコストを低減できる。
 次に、本発明の概要を説明する。図12は、本発明による検証システムの概要を示すブロック図である。本発明による検証システム80(例えば、検証システム100)は、分析対象(例えば、自動車)の稼動データ(例えば、走行データ)を学習データとして用いて、その分析対象の挙動を模擬するサロゲートモデルを構築するサロゲートモデル構築手段81(例えば、サロゲートモデル構築部30)と、分析対象の稼動データから、指定された条件のもと、検証内容に応じた稼動データによる分析対象の挙動を最も再現すると判断されるサロゲートモデルを選択するサロゲートモデル選択手段82(サロゲートモデル選択部60)と、選択されたサロゲートモデルを用いて分析対象の検証を行う検証手段83(例えば、検証部170)とを備えている。
 そのような構成により、サロゲートモデルを用いた検証工程に要するコストを低減できる。
 また、サロゲートモデル構築手段81は、検証の最小単位であるユニットをまとめたドメイン単位でサロゲートモデルを構築してもよい。
 具体的には、サロゲートモデル構築手段81は、(例えば、自動車の場合、)自動車の機能ごと(例えば、制御系、ボディ系、安全系、情報系など)にユニットをまとめたドメイン単位でサロゲートモデルを構築してもよい。
 また、検証手段83(例えば、検証部170)は、分析対象を稼動させる際に用いられるパラメータを含む稼動データを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出し、算出された評価値に基づいて、最適なパラメータを検証結果として特定する動作検証手段(例えば、動作検証部171)と、得られた検証結果を、分析対象のシミュレータに適用して動作結果を得るシミュレータ動作手段(例えば、シミュレータ動作部172)とを含んでいてもよい。
 また、検証手段83(例えば、検証部270)は、分析対象に不具合が発生した際のパラメータを含む不具合発生時のデータを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して第一の評価値を算出する不具合再現手段(例えば、不具合再現部271)と、サロゲートモデルに正常時のデータを適用して第二の評価値を算出し、第一の評価値と、第二の評価値とを比較して、不具合発生個所を推定する不具合推定手段(例えば、不具合推定部272)とを含んでいてもよい。
 また、検証手段83(例えば、検証部370)は、分析対象の正常時のパラメータを含む評価データを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出する動作検証手段(例えば、動作検証部371)と、評価値に基づいて不具合が発生すると推定された場合、推定された不具合の個所について、分析対象のシミュレータを用いた動作検証を行うシミュレータ動作検証手段(例えば、シミュレータ動作検証部372)とを含んでいてもよい。
 また、サロゲートモデル選択手段82は、分析対象のデータ項目と入出力データ項目とが一致するサロゲートモデルを選択してもよい。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)分析対象の稼動データを学習データとして用いて、当該分析対象の挙動を模擬するサロゲートモデルを構築するサロゲートモデル構築手段と、
 分析対象の稼動データから、指定された条件のもと、検証内容に応じた当該稼動データによる分析対象の挙動を最も再現すると判断される前記サロゲートモデルを選択するサロゲートモデル選択手段と、
 選択された前記サロゲートモデルを用いて分析対象の検証を行う検証手段とを備えた
 ことを特徴とする検証システム。
(付記2)サロゲートモデル構築手段は、検証の最小単位であるユニットをまとめたドメイン単位でサロゲートモデルを構築する
 付記1記載の検証システム。
(付記3)サロゲートモデル構築手段は、自動車の機能ごとにユニットをまとめたドメイン単位でサロゲートモデルを構築する
 付記1または付記2記載の検証システム。
(付記4)検証手段は、
 分析対象を稼動させる際に用いられるパラメータを含む稼動データを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出し、算出された評価値に基づいて、最適なパラメータを検証結果として特定する動作検証手段と、
 得られた検証結果を、分析対象のシミュレータに適用して動作結果を得るシミュレータ動作手段とを含む
 付記1から付記3のうちのいずれか1つに記載の検証システム。
(付記5)検証手段は、
 分析対象に不具合が発生した際のパラメータを含む不具合発生時のデータを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して第一の評価値を算出する不具合再現手段と、
 前記サロゲートモデルに正常時のデータを適用して第二の評価値を算出し、前記第一の評価値と、前記第二の評価値とを比較して、不具合発生個所を推定する不具合推定手段とを含む
 付記1から付記3のうちのいずれか1つに記載の検証システム。
(付記6)検証手段は、
 分析対象の正常時のパラメータを含む評価データを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出する動作検証手段と、
 前記評価値に基づいて不具合が発生すると推定された場合、推定された不具合の個所について、前記分析対象のシミュレータを用いた動作検証を行うシミュレータ動作検証手段とを含む
 付記1から付記3のうちのいずれか1つに記載の検証システム。
(付記7)サロゲートモデル選択手段は、分析対象のデータ項目と入出力データ項目とが一致するサロゲートモデルを選択する
 付記1から付記6のうちのいずれか1つに記載の検証システム。
(付記8)分析対象の稼動データを学習データとして用いて、当該分析対象の挙動を模擬するサロゲートモデルを構築し、
 分析対象の稼動データから、指定された条件のもと、検証内容に応じた当該稼動データによる分析対象の挙動を最も再現すると判断される前記サロゲートモデルを選択し、
 選択された前記サロゲートモデルを用いて分析対象の検証を行う
 ことを特徴とする検証方法。
(付記9)検証の最小単位であるユニットをまとめたドメイン単位でサロゲートモデルを構築する
 付記8記載の検証方法。
(付記10)コンピュータに、
 分析対象の稼動データを学習データとして用いて、当該分析対象の挙動を模擬するサロゲートモデルを構築するサロゲートモデル構築処理、
 分析対象の稼動データから、指定された条件のもと、検証内容に応じた当該稼動データによる分析対象の挙動を最も再現すると判断される前記サロゲートモデルを選択するサロゲートモデル選択処理、および、
 選択された前記サロゲートモデルを用いて分析対象の検証を行う検証処理
 を実行させるための検証プログラムを記憶するプログラム記憶媒体。
(付記11)コンピュータに、
 サロゲートモデル構築処理で、検証の最小単位であるユニットをまとめたドメイン単位でサロゲートモデルを構築させる検証プログラムを記憶する
 付記10記載のプログラム記憶媒体。
(付記12)コンピュータに、
 分析対象の稼動データを学習データとして用いて、当該分析対象の挙動を模擬するサロゲートモデルを構築するサロゲートモデル構築処理、
 分析対象の稼動データから、指定された条件のもと、検証内容に応じた当該稼動データによる分析対象の挙動を最も再現すると判断される前記サロゲートモデルを選択するサロゲートモデル選択処理、および、
 選択された前記サロゲートモデルを用いて分析対象の検証を行う検証処理
 を実行させるための検証プログラム。
(付記13)コンピュータに、
 サロゲートモデル構築処理で、検証の最小単位であるユニットをまとめたドメイン単位でサロゲートモデルを構築させる
 付記12記載の検証プログラム。
(付記14)分析対象の稼動データを学習データとして用いて構築された、当該分析対象の挙動を模擬するサロゲートモデルを記憶するサロゲートモデル記憶手段と、
 分析対象の稼動データから、指定された条件のもと、検証内容に応じた当該稼動データによる分析対象の挙動を最も再現すると判断される前記サロゲートモデルを選択するサロゲートモデル選択手段と、
 選択された前記サロゲートモデルを用いて分析対象の検証を行う検証手段を備えた
 ことを特徴とする検証装置。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 10 データ取得部
 20 データ記憶部
 30 サロゲートモデル構築部
 40 サロゲートモデル記憶部
 50 サロゲートモデル評価部
 60,61,62 サロゲートモデル選択部
 70 出力装置
 170,270,370 検証部
 171 動作検証部
 172 シミュレータ動作部
 271 不具合再現部
 272 不具合推定部
 371 動作検証部
 372 シミュレータ動作検証部
 100,200,300 検証システム

Claims (11)

  1.  分析対象の稼動データを学習データとして用いて、当該分析対象の挙動を模擬するサロゲートモデルを構築するサロゲートモデル構築手段と、
     分析対象の稼動データから、指定された条件のもと、検証内容に応じた当該稼動データによる分析対象の挙動を最も再現すると判断される前記サロゲートモデルを選択するサロゲートモデル選択手段と、
     選択された前記サロゲートモデルを用いて分析対象の検証を行う検証手段とを備えた
     ことを特徴とする検証システム。
  2.  サロゲートモデル構築手段は、検証の最小単位であるユニットをまとめたドメイン単位でサロゲートモデルを構築する
     請求項1記載の検証システム。
  3.  サロゲートモデル構築手段は、自動車の機能ごとにユニットをまとめたドメイン単位でサロゲートモデルを構築する
     請求項1または請求項2記載の検証システム。
  4.  検証手段は、
     分析対象を稼動させる際に用いられるパラメータを含む稼動データを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出し、算出された評価値に基づいて、最適なパラメータを検証結果として特定する動作検証手段と、
     得られた検証結果を、分析対象のシミュレータに適用して動作結果を得るシミュレータ動作手段とを含む
     請求項1から請求項3のうちのいずれか1項に記載の検証システム。
  5.  検証手段は、
     分析対象に不具合が発生した際のパラメータを含む不具合発生時のデータを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して第一の評価値を算出する不具合再現手段と、
     前記サロゲートモデルに正常時のデータを適用して第二の評価値を算出し、前記第一の評価値と、前記第二の評価値とを比較して、不具合発生個所を推定する不具合推定手段とを含む
     請求項1から請求項3のうちのいずれか1項に記載の検証システム。
  6.  検証手段は、
     分析対象の正常時のパラメータを含む評価データを入力し、入力されたパラメータを選択されたサロゲートモデルに適用して評価値を算出する動作検証手段と、
     前記評価値に基づいて不具合が発生すると推定された場合、推定された不具合の個所について、前記分析対象のシミュレータを用いた動作検証を行うシミュレータ動作検証手段とを含む
     請求項1から請求項3のうちのいずれか1項に記載の検証システム。
  7.  サロゲートモデル選択手段は、分析対象のデータ項目と入出力データ項目とが一致するサロゲートモデルを選択する
     請求項1から請求項6のうちのいずれか1項に記載の検証システム。
  8.  分析対象の稼動データを学習データとして用いて、当該分析対象の挙動を模擬するサロゲートモデルを構築し、
     分析対象の稼動データから、指定された条件のもと、検証内容に応じた当該稼動データによる分析対象の挙動を最も再現すると判断される前記サロゲートモデルを選択し、
     選択された前記サロゲートモデルを用いて分析対象の検証を行う
     ことを特徴とする検証方法。
  9.  検証の最小単位であるユニットをまとめたドメイン単位でサロゲートモデルを構築する
     請求項8記載の検証方法。
  10.  コンピュータに、
     分析対象の稼動データを学習データとして用いて、当該分析対象の挙動を模擬するサロゲートモデルを構築するサロゲートモデル構築処理、
     分析対象の稼動データから、指定された条件のもと、検証内容に応じた当該稼動データによる分析対象の挙動を最も再現すると判断される前記サロゲートモデルを選択するサロゲートモデル選択処理、および、
     選択された前記サロゲートモデルを用いて分析対象の検証を行う検証処理
     を実行させるための検証プログラムを記憶するプログラム記憶媒体。
  11.  コンピュータに、
     サロゲートモデル構築処理で、検証の最小単位であるユニットをまとめたドメイン単位でサロゲートモデルを構築させる検証プログラムを記憶する
     請求項10記載のプログラム記憶媒体。
PCT/JP2021/005213 2021-02-12 2021-02-12 検証システム、検証方法および検証プログラム WO2022172392A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2022581108A JPWO2022172392A1 (ja) 2021-02-12 2021-02-12
PCT/JP2021/005213 WO2022172392A1 (ja) 2021-02-12 2021-02-12 検証システム、検証方法および検証プログラム
US18/275,560 US20240104273A1 (en) 2021-02-12 2021-02-12 Verification system, verification method, and verification program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/005213 WO2022172392A1 (ja) 2021-02-12 2021-02-12 検証システム、検証方法および検証プログラム

Publications (1)

Publication Number Publication Date
WO2022172392A1 true WO2022172392A1 (ja) 2022-08-18

Family

ID=82838542

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/005213 WO2022172392A1 (ja) 2021-02-12 2021-02-12 検証システム、検証方法および検証プログラム

Country Status (3)

Country Link
US (1) US20240104273A1 (ja)
JP (1) JPWO2022172392A1 (ja)
WO (1) WO2022172392A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760693B1 (en) * 2000-03-29 2004-07-06 Ford Global Technologies, Llc Method of integrating computer visualization for the design of a vehicle
US6850921B1 (en) * 2000-11-02 2005-02-01 Ford Global Technologies, Llc Method for cascading vehicle system targets to component level design objectives
JP2016146169A (ja) * 2014-12-18 2016-08-12 ダッソー システムズ シムリア コーポレイション データに基づくインタラクティブ3dエクスペリエンス

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760693B1 (en) * 2000-03-29 2004-07-06 Ford Global Technologies, Llc Method of integrating computer visualization for the design of a vehicle
US6850921B1 (en) * 2000-11-02 2005-02-01 Ford Global Technologies, Llc Method for cascading vehicle system targets to component level design objectives
JP2016146169A (ja) * 2014-12-18 2016-08-12 ダッソー システムズ シムリア コーポレイション データに基づくインタラクティブ3dエクスペリエンス

Also Published As

Publication number Publication date
US20240104273A1 (en) 2024-03-28
JPWO2022172392A1 (ja) 2022-08-18

Similar Documents

Publication Publication Date Title
US10816978B1 (en) Automated vehicle artificial intelligence training based on simulations
US7991583B2 (en) Diagnosis in automotive applications
JP7053147B2 (ja) 自動車特に自動車の装置のエネルギー効率を分析するためのシステムおよび方法
JP2017522212A (ja) 車両のエネルギー効率を分析するためのシステムおよび方法
US20170050590A1 (en) System for assessing and/or optimising the operating behaviour
US20160025025A1 (en) Method for optimizing vehicles and engines used for driving such vehicles
Lamberg et al. Model-based testing of embedded automotive software using MTest
Tatar Enhancing ADAS test and validation with automated search for critical situations
CN107783529B (zh) 用于验证执行器控制数据的方法
King et al. A taxonomy and survey on validation approaches for automated driving systems
US6101432A (en) Vehicle rattle detection method and system
US8751094B2 (en) Method for validation of a graphically based executable control specification using model extraction
Eisele et al. ADAS virtual prototyping with the OpenMETA toolchain
WO2022172392A1 (ja) 検証システム、検証方法および検証プログラム
Hilf et al. Automated simulation of scenarios to guide the development of a crosswind stabilization function
JP2007507765A (ja) 車両用の制御プロセスをテストするシステムおよび方法
Wehner et al. Development of driver assistance systems using virtual hardware-in-the-loop
Zander-Nowicka et al. Automotive validation functions for on-line test evaluation of hybrid real-time systems
Koller et al. Implementation of vehicle simulation model in a modern dynamometer test environment
Lauber et al. Virtual test method for complex and variant-rich automotive systems
CN113590458A (zh) 用于检查技术系统的方法和设备
CN113704085A (zh) 用于检查技术系统的方法和设备
Neubauer et al. Model-based development and simulative verification of logical vehicle functions using executable UN/ECE regulations
KR20210023722A (ko) 요구 사항에 대한 시스템의 테스트 방법
Altinger State-of-the-art tools and methods used in the automotive industry

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21925645

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022581108

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 18275560

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21925645

Country of ref document: EP

Kind code of ref document: A1