PROGRAM CREATION SUPPORT PROGRAM, PROGRAM CREATION SUPPORT DEVICE, PROGRAM CREATION SUPPORT METHOD, AND PROGRAM CREATION SUPPORT SYSTEM

JPWO2026009379A5Active Publication Date: 2026-06-09MITSUBISHI ELECTRIC CORP

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
MITSUBISHI ELECTRIC CORP
Filing Date
2024-07-04
Publication Date
2026-06-09

AI Technical Summary

Technical Problem

Existing methods for creating and modifying programs are inefficient due to the need to redefine multiple functions and algorithms for different input and output parameters, leading to increased man-hours and reduced readability.

Method used

A program creation support system that generates a model set involving multiple models with different parameters, allowing for easy switching between parameter combinations and processing methods within a single file, thereby improving program efficiency and readability.

Benefits of technology

The system reduces man-hours and improves efficiency in creating and modifying programs by allowing seamless switching between parameter combinations and processing methods, enhancing program readability and maintainability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000019_0000
    Figure 00000019_0000
  • Figure 00000019_0001
    Figure 00000019_0001
  • Figure 00000019_0002
    Figure 00000019_0002
Patent Text Reader

Abstract

A program creation assistance program that causes a computer to function as: a learning model set generation unit (11) that generates a model that processes input parameters and outputs a value, and generates a model set that combines multiple models that perform similar processing with different parameters into a single file; and a program component generation unit (16) that generates program components that add models to a target program, associating the model set and generating program components that can switch the combination of parameters and processing methods of the model to be added.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to a program creation support program, a program creation support device, a program creation support method, and a program creation support system. [Background technology]

[0002] Generally, in programming languages ​​such as C and Python, processes that are written repeatedly or that can be separated into a single function are modularized and defined as functions, or classes are created and their methods are defined, thereby improving readability, reusability, and maintainability.

[0003] Recent technological innovations have resulted in the emergence of processes in which the parameters used in internal processing differ depending on the contents of the input and output, even with the same calculation method. For example, when generating a learning model using machine learning, the parameters used in internal processing may differ because the input and output features are different, but the learning method algorithm may be the same. In this case, if conventional methods are used, it may be necessary to define multiple functions and methods with different numbers of arguments, even if the internal processing flow is the same, resulting in a program with poor readability.

[0004] Patent Document 1 discloses a method of using machine learning to determine the possibility that an abnormality has occurred in a monitored object. The learning model used in this method has multiple algorithms for determining abnormalities, and the algorithm to be used can be specified from the input value of a function block used in a program, and the algorithm can be switched according to predetermined conditions. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] JP 2020-101904 A Summary of the Invention [Problem to be solved by the invention]

[0006] In the technology described in Patent Document 1, when an abnormality occurs, a single learning model that has been trained only on data (supervised data) when no abnormality occurs in the monitored object is used to determine when an abnormality occurs. In this case, the feature values ​​used for the determination are fixed, and the parameters input to the learning model cannot be easily switched to other parameters, and when a change is required, the learning model must be created again. This increases the number of steps required for creating and modifying the program, resulting in poor efficiency.

[0007] The present disclosure has been made to solve the above-mentioned problems, and aims to reduce the number of steps and improve efficiency in creating and modifying programs. [Means for solving the problem]

[0008] In order to achieve the above object, the program according to the present disclosure causes a computer to function as a model set generation unit, a program part generation unit, an evaluation pattern generation unit, and a program evaluation unit. The model set generation unit generates a model that processes input parameters and outputs values, and The algorithm is the same A model set is generated in which a plurality of models performing processing are grouped into a single file. The program part generation unit is a program part that adds a model to a target program, and generates a program part that is capable of switching a combination of parameters of the model to be added and a processing method by associating the model set. The evaluation pattern generation unit generates an evaluation pattern that evaluates the performance of models included in the model set. The program evaluation unit evaluates the performance of the models based on the evaluation pattern. The program part generation unit generates a program part by associating a model set for parts in which models included in the model set, whose evaluation by the program evaluation unit satisfies predetermined conditions, are grouped into a single file. In order to achieve the above object, the program according to the present disclosure causes a computer connected to a control device that executes a control program for controlling an external device to function as a model set generation unit, a program part generation unit, and a control program generation unit. The model set generation unit generates a model that processes input parameters and outputs values, and generates a model that outputs values ​​when the parameters are different. The algorithm is the same A model set is generated in which multiple models to be processed are grouped into a single file. The program part generation unit generates a program part that is a program part that adds a model to a target program, and that associates the model set and can switch the combination of parameters and processing methods of the model to be added. The control program generation unit generates a control program. The program part generation unit generates a program part that adds a model to the control program. The control program generation unit generates a control program using the program parts, and when the combination of parameters and processing methods of the model to be added is switched in the program part, a simulation is performed with the switched parameters and processing method, and the values ​​of each parameter during the simulation are displayed. Effect of the Invention

[0009] According to the present disclosure, when creating and modifying a program, it becomes easy to switch the combination of parameters of a model to be added to the target program and a processing method, thereby reducing labor hours and improving efficiency. [Brief description of the drawings]

[0010] [Figure 1] FIG. 1 is a diagram showing an example of the configuration of a program creation support system according to an embodiment; [Figure 2A] FIG. 1 is a diagram showing an example of learning data for supervised learning aimed at anomaly detection according to an embodiment; [Figure 2B] FIG. 1 is a diagram showing an example of learning data for supervised learning aimed at calculating a tension value of a conveyor according to an embodiment; [Diagram 3] FIG. 13 is a diagram showing an example of a learning model creation screen for supervised learning according to an embodiment; [Figure 4] FIG. 13 is a diagram showing an example of a learning model creation screen in which a learning method and feature amounts for supervised learning according to an embodiment are set. [Diagram 5] FIG. 1 is a diagram showing an example of a learning model for supervised learning according to an embodiment; [Figure 6] FIG. 13 is a diagram showing an example of a learning model creation screen in the case where a learning method and feature amounts for supervised learning according to an embodiment are set and there are default settings for input. [Figure 7] FIG. 13 is a diagram showing an example of a learning model for supervised learning when the input has default settings according to the embodiment; [Figure 8] FIG. 1 is a diagram showing an example of learning data for unsupervised learning aimed at anomaly detection according to an embodiment; [Figure 9] FIG. 13 is a diagram showing an example of a learning model creation screen for unsupervised learning according to an embodiment; [Figure 10] FIG. 13 is a diagram showing an example of a learning model creation screen in which a learning method and feature amounts for unsupervised learning according to an embodiment are set. [Figure 11] FIG. 1 is a diagram showing an example of a learning model for unsupervised learning according to an embodiment; [Figure 12] FIG. 13 is a diagram showing an example of a learning model creation screen in which a learning method and feature values ​​for unsupervised learning according to an embodiment are set and default settings are included in the input. [Figure 13] FIG. 13 is a diagram showing an example of a learning model for unsupervised learning when the input has default settings according to the embodiment; [Figure 14] FIG. 13 is a diagram showing an example of an evaluation pattern creation screen for a learning model of unsupervised learning according to an embodiment; [Figure 15] FIG. 13 is a diagram showing a model evaluation result screen in which the performance of a learning model for unsupervised learning in the embodiment is evaluated. [Figure 16] FIG. 13 is a diagram showing an example of an evaluation pattern creation screen for a learning model of supervised learning according to an embodiment; [Figure 17] FIG. 13 is a diagram showing a model evaluation result screen in which the performance of a learning model in supervised learning according to the embodiment is evaluated. [Figure 18] FIG. 13 is a diagram showing an example of a control program creation screen according to the embodiment; [Figure 19] FIG. 13 is a diagram showing an example of a control program creation screen during a simulation according to the embodiment; [Figure 20] FIG. 13 is a diagram showing an example of a learning model selection screen according to an embodiment; [Figure 21] 1 is a flowchart showing a program part generation process according to an embodiment. [Figure 22] 1 is a flowchart showing a control program generation process according to an embodiment of the present invention; [Figure 23] FIG. 1 is a diagram showing an example of a hardware configuration of a program creation support device according to an embodiment; DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0011] Hereinafter, a program, a program creation support device, a program creation support method, and a program creation support system according to the present embodiment will be described in detail with reference to the drawings. Note that the same or corresponding parts in the drawings are given the same reference numerals. In this embodiment, an example in which the parameters are feature quantities and the model is a learning model will be described.

[0012] The configuration of a program creation support system 100 according to an embodiment will be described with reference to FIG. 1. The program creation support system 100 includes a program creation support device 1 that generates program parts that can be used in a control program executed by a control device 2, a control device 2 that controls an external device 4 to collect data on features related to the external device 4, and a collected data storage unit 3 that stores the data on features collected by the control device 2. Although one external device 4 is shown in the figure, there may be more than one. The external device 4 includes, for example, a camera, a sensor, etc., and the control device 2 collects data on features related to the external device 4 from the camera, sensor, etc. Hereinafter, the data on features collected by the control device 2 will be referred to as collected data. The control program is an example of a target program.

[0013] The program creation support device 1 is, for example, a personal computer in which an engineering tool is installed. The program creation support device 1 includes a learning model set generation unit 11 that generates a learning model based on collected data and generates a learning model set in which a plurality of learning models of similar learning methods with different feature amounts are put into one file, a learning model set storage unit 12 that stores the generated learning model set, an evaluation pattern generation unit 13 that generates an evaluation pattern that evaluates the performance of the learning model included in the learning model set, a program evaluation unit 14 that evaluates the performance of the learning model based on the evaluation pattern, and a component model set storage unit 15 that stores a component model set in which a learning model selected from the evaluated learning models is put into one file. The program creation support device 1 also includes a program part generation unit 16 that generates a program part that is a program part that adds a learning model to a control program, associates the component model set, and can switch the combination of the feature amount and the learning method, and a control program generation unit 17 that generates a control program using the program part. The learning method is an example of a processing method. The learning model set generation unit 11 is an example of a model set generation unit.

[0014] The control device 2 is, for example, a PLC (Programmable Logic Controller). The control device 2 includes a data collection unit 211 to a data collection unit 21n (n≧1) that collect data on feature quantities related to the external device 4, and a program execution unit 221 to a program execution unit 22m (m≧1) that executes a control program generated by the program creation support device 1. The data collection units 211 to 21n of the control device 2 collect sensor data, manufacturing data, time stamps, etc. from the external device 4, and store them as collected data in the collected data storage unit 3. The program execution units 221 to 22m download and execute the control program generated by the program creation support device 1 to control the external device 4.

[0015] The learning model set generation unit 11 of the program creation support device 1 generates a learning model based on the collected data stored in the collected data storage unit 3. Since the collected data cannot be used for learning as is, the learning model set generation unit 11 performs preprocessing to convert the collected data into data for learning by converting the data format and deleting unnecessary information.

[0016] First, a case where a learning model for supervised learning is generated will be described. Specific examples of learning data for supervised learning are shown in Fig. 2A and Fig. 2B. Fig. 2A is an example of learning data for supervised learning aimed at anomaly detection. Fig. 2B is an example of learning data for supervised learning aimed at calculating the tension value of a conveyor. Learning data for supervised learning is data consisting of a set of input and output, and is in a text format such as a CSV (Comma Separated Values) file. In Fig. 2A, "state" is the output, and other features are the input. In Fig. 2B, "tension" is the output, and other features are the input.

[0017] 1, the learning model set generation unit 11 displays a learning model creation screen that accepts the settings of the learning model by the user. The learning model set generation unit 11 generates a learning model based on the settings inputted to the learning model creation screen.

[0018] Here, the learning model creation screen for supervised learning will be described with reference to Fig. 3. In the example shown in Fig. 3, the learning model creation screen has a "learning method" item for setting the learning method of the learning model that the user wants to create, and a "feature" item for setting the input and output. The learning model creation screen also has a "file to generate" item for setting the name of the file to be generated, an "import" button for loading the learning data, a "start generation" button for starting generation of the learning model, and a "cancel" button for canceling generation of the learning model.

[0019] As shown in Fig. 3, in the "Learning method" item, various learning methods for supervised learning can be set. The "Learning method" item has a button that pops up a learning method detail selection screen that allows the user to specify detailed setting items (learning time, number of learning times, and prefix of the learning model to be generated) for each learning method. Note that the detailed setting items are not limited to these and may include other conditions for the learning method.

[0020] In the case of supervised learning, the "feature" item has input and output items. The input and output items have a "default" check box. If the "default" check box is enabled, that item will be included as a default feature when generating a learning model, and a learning model that does not use the feature of that item will not be generated. Learning models are generated for all combinations of the features and learning methods set in the input and output. Depending on the data format, there may be cases where the learning process cannot be performed using the method specified in "learning method" and a learning model cannot be generated, but for convenience in this embodiment, it will be described as being possible to generate a learning model using the specified learning method and feature.

[0021] Next, a method for generating a learning model for supervised learning will be described with reference to Figs. 4 and 5. Fig. 4 is an example of a learning model creation screen in which a learning method and feature amount for supervised learning are set. In the "Learning Method" item on the learning model creation screen, multiple regression, K-nearest neighbor method, random forest, and deep learning are set in learning method 1 to learning method 4, respectively. In addition, in the "Feature amount" item, feed speed, acceleration, total operation time, and total operation distance are set in input 1 to input 4, respectively, and tension is set in output 1. Note that in the case of supervised learning, one or more inputs and outputs are required, so the tension in output 1 is automatically set to the default.

[0022] When the "Import" button is pressed, the learning model set generation unit 11 searches for the header of the CSV file, and reads in the learning data of the feed rate, acceleration, total operating time, and total operating distance corresponding to inputs 1 to 4, and the learning data of the tension corresponding to output 1. When the "Start Generation" button is pressed, the learning model set generation unit 11 starts learning with a learning method corresponding to learning method 1 to learning method 4, based on the loaded learning data.

[0023] When settings are made on the learning model creation screen as shown in Figure 4, a learning model like that shown in Figure 5 is generated. Learning models are generated for multiple regression, K-nearest neighbor method, random forest, and deep learning, with all possible combinations of feed speed, acceleration, total operating time, and total operating distance as input, and tension as output. In the figure, features that are used are displayed with an "O" and features that are not used with an "X". The tension of output 1 is set to the default, so all output tensions are displayed with an "O".

[0024] Theoretically, all combinations of the generated learning model are as follows. In the case of supervised learning, at least one input and output are required, so when the number of inputs is M (M ≥ 1) and the number of outputs is L (L ≥ 1), the cases where there is no input or no output are excluded. Therefore, the total number of combinations for the input is 2 M -1 way, the total combinations for the output are 2 L -1 combinations. And the total combinations of inputs and outputs are (2 M -1) × (2 L If N learning methods are used, the final number of models generated will be N × (2 M -1) × (2 L -1).

[0025] The learning model set generation unit 11 generates a learning model set by collecting the generated learning models of supervised learning into one file, and stores the file in the learning model set storage unit 12. The learning model set with the file name AI_Sample1 shown in Fig. 5 is a collection of learning models of supervised learning aimed at calculating the tension value of a conveyor.

[0026] Generation of a learning model for supervised learning when the input has default settings will be described with reference to Figs. 6 and 7. In the learning model creation screen shown in Fig. 6, multiple regression, K-nearest neighbor method, random forest, and deep learning are set in learning method 1 to learning method 4 in the "learning method" item, respectively, as in the example of Fig. 4, and feed speed, acceleration, total operation time, and total operation distance are set in input 1 to input 4 in the "feature amount" item, respectively. In addition, tension is set as the default in output 1. In the example of Fig. 6, the feed speed of input 1 and the acceleration of input 2 are also set as the default.

[0027] When settings are made on the learning model creation screen as shown in Figure 6, a learning model like that shown in Figure 7 is generated. Learning models are generated for multiple regression, K-nearest neighbor method, random forest, and deep learning, with the input being all possible combinations of feed speed and acceleration, and the total driving time and total driving distance, and the output being tension. Since the tension in output 1 is set to the default, all output tensions are marked "○". Furthermore, since the feed speed in input 1 and the acceleration in input 2 are set to the default, the feed speed and acceleration are all marked "○", as shown by the bold line in the figure.

[0028] Theoretically, all combinations of the generated learning model are as follows. Let the number of input default settings be D (1≦D≦M), and the number of output default settings be E (1≦E≦L). In the case of supervised learning, one or more inputs and outputs are required, so when the number of inputs is M (M≧1) and the number of outputs is L (L≧1), the number of inputs is 2. M-D As shown, the output is 2 L-E Therefore, there are 2 combinations of inputs and outputs. M-D ×2 L-E If you use N different learning methods, the total number of models generated is N × 2 M-D ×2 L-E It becomes.

[0029] Next, a case where a learning model for unsupervised learning is generated will be described. FIG. 8 shows a specific example of learning data for unsupervised learning. FIG. 8 is an example of learning data for unsupervised learning aimed at anomaly detection. Learning data for unsupervised learning is input-only data, and is in a text format such as a CSV file. The learning data in FIG. 8 is data in which various feature quantities under normal conditions (correct answers) are input.

[0030] Here, the learning model creation screen for unsupervised learning will be explained with reference to FIG. 9. As shown in FIG. 9, the learning method for unsupervised learning can be set in the "Learning method" item. In the case of unsupervised learning, only input is required, so the output item in the "Features" item is not used. Learning models are generated for all combinations of the features set in the input and the learning methods. The rest of the configuration is the same as the learning model creation screen shown in FIG. 3.

[0031] Next, a method for generating a learning model for unsupervised learning will be described with reference to Figs. 10 and 11. Fig. 10 is an example of a learning model creation screen in which a learning method and feature amount for unsupervised learning are set. In the "learning method" item of the learning model creation screen, the MT method (Mahalanobis-Taguchi method), the autoencoder, and similar waveform recognition are set in learning method 1 to learning method 3, respectively. In addition, in the "feature amount" item, vibration sensor: speed, vibration sensor: acceleration, current, and temperature are set in input 1 to input 4, respectively. Vibration sensor: speed and vibration sensor: acceleration are the speed and acceleration detected by the vibration sensor, respectively.

[0032] When the "Import" button is pressed, the learning model set generation unit 11 searches the header of the CSV file, and reads the learning data of the vibration sensor: speed, the vibration sensor: acceleration, the current, and the temperature corresponding to input 1 to input 4. When the "Start Generation" button is pressed, the learning model set generation unit 11 starts learning with a learning method corresponding to learning method 1 to learning method 3 based on the loaded learning data.

[0033] When the settings are made on the learning model creation screen as shown in Fig. 10, a learning model like that shown in Fig. 11 is generated. Learning models are generated for the MT method, autoencoder, and similar waveform recognition, with the input being all possible combinations of vibration sensor: speed, vibration sensor: acceleration, current, and temperature.

[0034] Theoretically, all combinations of the generated learning model are as follows. In the case of unsupervised learning, one or more inputs are required, so when the number of inputs is M (M≧1), the total combinations of inputs are 2, excluding the case where there is no input at all. M -1. If you use N learning methods, the final number of models generated is N × (2 M -1).

[0035] The learning model set generation unit 11 generates a learning model set by collecting the generated learning models of unsupervised learning into one file, and stores the learning model set in the learning model set storage unit 12. The learning model set with the file name AI_Sample2 shown in Fig. 11 is a collection of learning models of unsupervised learning aimed at anomaly detection.

[0036] Generation of a learning model for unsupervised learning when there is a default setting for the input will be described with reference to Fig. 12 and Fig. 13. In the learning model creation screen shown in Fig. 12, as in the example of Fig. 10, the MT method, autoencoder, and similar waveform recognition are set for learning method 1 to learning method 3 in the "learning method" item, respectively, and vibration sensor: speed, vibration sensor: acceleration, current, and temperature are set for input 1 to input 4 in the "feature amount" item, respectively. Also, in the example of Fig. 12, the vibration sensor: speed of input 1 and the vibration sensor: acceleration of input 2 are set as defaults.

[0037] When settings are made on the learning model creation screen as shown in Fig. 12, a learning model like that shown in Fig. 13 is generated. Learning models are generated for the MT method, autoencoder, and similar waveform recognition, with the inputs being all combinations of vibration sensor: speed and vibration sensor: acceleration, and current and temperature. Input 1 vibration sensor: speed and input 2 vibration sensor: acceleration are set to the defaults, so vibration sensor: speed and vibration sensor: acceleration are all marked with "○", as shown by the bold line in the figure.

[0038] Theoretically, all combinations of the generated learning model are as follows. The number of default settings for inputs is D (1≦D≦M). In the case of unsupervised learning, there is no output and one or more inputs are required, so when the number of inputs is M (M≧1), the input is 2. M-D Therefore, if you use N different learning methods, the total number of models generated is N × 2 M-D It becomes.

[0039] Returning to FIG. 1, the evaluation pattern generation unit 13 performs a test to evaluate the performance of a learning model included in the learning model set stored in the learning model set storage unit 12, and generates an evaluation pattern for evaluating the test result. The program evaluation unit 14 evaluates the performance of the learning model using the evaluation pattern generated by the evaluation pattern generation unit 13. The evaluation pattern generation unit 13 displays a model evaluation pattern creation screen that accepts the user's setting of an evaluation pattern for the learning model. The evaluation pattern generation unit 13 generates a model evaluation pattern for evaluating the performance of the target learning model based on the setting inputted to the evaluation pattern creation screen.

[0040] Here, an evaluation pattern creation screen for a learning model of unsupervised learning will be described with reference to FIG. 14. In the example shown in FIG. 14, the evaluation pattern creation screen has an item of "evaluation target model set" in which a user sets a learning model set including a learning model to be evaluated, an item of "test data" in which test data to be input to the learning model is set, and an item of "evaluation target selection" in which a learning method for the learning model to be evaluated is set. In the item of "evaluation target model set", AI_Sample2, which is a learning model set of unsupervised learning for the purpose of anomaly detection, is set. In the item of "evaluation target selection", a button is provided to pop up a judgment criterion evaluation index selection screen in which a judgment criterion for a test and an evaluation index of a test result can be specified for each learning method. In the judgment criterion evaluation index selection screen shown in FIG. 14, a threshold for judging an anomaly, a correct answer rate, an F value, a LogLoss, an AUC, an RMSE, an R2, an MAE, an MAPE, a precision rate, and a recall rate can be set. In the example shown in FIG. 14, an evaluation pattern for evaluating the correct answer rate, an F value, a LogLoss, and an AUC of the MT method is set. When the "Start Evaluation" button is pressed, evaluation of the performance of the learning model begins.

[0041] The program evaluation unit 14 evaluates the performance of the learning model with the evaluation pattern set on the evaluation pattern creation screen. As shown in FIG. 14, the setting is performed on the evaluation pattern creation screen, and when the "Start evaluation" button is pressed, the program evaluation unit 14 inputs the test data Test1.csv to the learning models of the MT method, MT_model_01, MT_model_02, MT_model_03, and MT_model_04, and performs an anomaly detection test. In the example of FIG. 14, a graph of the anomaly detection test results of MT_model_01, MT_model_02, MT_model_03, and MT_model_04 is shown. Anomalies are detected in MT_model_01, MT_model_02, and MT_model_04, and no anomaly is detected in MT_model_03. The program evaluation unit 14 calculates and evaluates the accuracy rate, F value, LogLoss, and AUC of the test results of the learning model that detected anomalies.

[0042] When the program evaluation unit 14 completes the evaluation of the performance of the learning model, it displays a model evaluation result screen as shown in FIG. 15. In the example shown in FIG. 15, the model evaluation result screen displays the accuracy rate, F value, LogLoss, and AUC values ​​of MT_model_01, MT_model_02, and MT_model_04. MT_model_03, which did not detect an abnormality, is excluded from the evaluation target. The model evaluation result screen has a check box that allows the user to select a learning model to be adopted in a component model set, which is a collection of learning models used for program components. In the example shown in FIG. 15, MT_model_04 is selected. The model evaluation result screen has a "Decide" button that determines the selection of the learning model. When the "Decide" button is pressed, the program evaluation unit 14 determines the selection of the learning model and closes the model evaluation result screen.

[0043] Next, the evaluation pattern creation screen for the learning model of supervised learning will be described with reference to FIG. 16. In the example of the evaluation pattern creation screen shown in FIG. 16, AI_Sample1, which is a learning model set of supervised learning aimed at calculating the tension value of a conveyor, is set in the item of "Model set to be evaluated". In the judgment criterion evaluation index selection screen shown in FIG. 16, the error tolerance range between the test data and the output value of the learning model, the accuracy rate, the F value, the LogLoss, the AUC, the RMSE, the R2, the MAE, the MAPE, the precision rate, and the recall rate can be set. In the example of FIG. 16, an evaluation pattern for evaluating the RMSE, the R2, the MAE, and the MAPE of multiple regression and random forest is set. When the "Start evaluation" button is pressed, the evaluation of the performance of the learning model is started.

[0044] The program evaluation unit 14 evaluates the performance of the learning model with the evaluation pattern set on the evaluation pattern creation screen. As shown in FIG. 16, the setting is performed on the evaluation pattern creation screen, and when the "Start evaluation" button is pressed, the program evaluation unit 14 inputs the test data Test2.csv to the multiple regression learning models, Multi_model_01, Multi_model_02, and Multi_model_03, and the random forest learning model RF_model_01, and performs a test of the conveyor tension value calculation. In the example of FIG. 16, a graph of the test result of the conveyor tension value calculation of Multi_model_01, Multi_model_02, and Multi_model_03 is shown. Although the graph is not shown, the conveyor tension value calculation test is also performed on RF_model_01. The program evaluation unit 14 calculates and evaluates the RMSE, R2, MAE, and MAPE of the test result of each learning model.

[0045] When the program evaluation unit 14 completes the evaluation of the performance of the learning model, it displays a model evaluation result screen as shown in FIG. 17. In the example shown in FIG. 17, the model evaluation result screen displays the RMSE, R2, MAE, and MAPE values ​​of Multi_model_01, Multi_model_02, Multi_model_03, and RF_model_01. Here, all learning models are evaluated, but learning models in which the error between the test data and the output value of the learning model is equal to or greater than a set threshold value are excluded from the evaluation. In the example shown in FIG. 17, Multi_model_01, Multi_model_02, and RF_model_01 are selected as learning models to be adopted in the component model set.

[0046] 15 and 17, the user selected the learning model to be adopted in the component model set on the model evaluation result screen, but this is not limited thereto, and the program evaluation unit 14 may adopt a learning model with a high evaluation value in the component model set according to a predetermined condition. The predetermined condition is, for example, a condition that a learning model with an evaluation value equal to or greater than a threshold value is adopted in the component model set.

[0047] Returning to FIG. 1, the program evaluation unit 14 generates a component model set that combines the learning models selected on the model evaluation result screen into one file, and stores it in the component model set storage unit 15. The program component generation unit 16 generates a program component that is a program component that adds a learning model to a control program, and that is capable of switching the combination of the feature amount and learning method of the learning model to be added by associating it with the component model set stored in the component model set storage unit 15. The control program generation unit 17 displays a control program creation screen that accepts the creation of a control program that can use the program components. The control program generation unit 17 generates a control program based on the contents entered on the control program creation screen.

[0048] The control program creation screen will be described with reference to FIG. 18 and FIG. 19. In the example of the control program creation screen shown in FIG. 18, the program parts of the model set for parts are displayed in the left area (indicated by a dashed line in the figure). Here, the file name of the learning model set from which the model set for parts is extracted is used as it is as the program part name. A user can add a program part to a control program by dragging and dropping a program part name onto the right area where the control program is written. When the program part name is dragged and dropped, the program part is added to the control program, and a program part setting screen is displayed that allows switching of the combination of the feature amount and the learning model. The operation of adding a program part to a control program is not limited to the operation of dragging and dropping the program part name, and may be configured such that, for example, the program part setting screen is displayed when the program part name is clicked while the place in the control program where the program part is to be added is active.

[0049] As shown in Fig. 19, when the user switches the combination of feature quantities and learning models on the program part setting screen, the control program generation unit 17 performs a simulation and displays a program part monitor screen in which the values ​​of each feature quantity during the simulation are displayed in the area below. Setting the learning method and feature quantities of the program parts for the first time when they have not yet been set is also included in "switching".

[0050] The user can switch between the learning method and feature amount of the program part on the program part setting screen. At this time, the user may select the learning method and feature amount, or may select the learning model. In the example of the program part setting screen shown in FIG. 19, since AI_Sample1 is a part model set extracted from a learning model set generated with Speed, Acceleration, and Tension set to default, these feature amounts are not selectable.

[0051] The feature values ​​and learning methods of program parts can also be switched on the program part monitor screen, and the settings are linked to the program part setting screen. The user can switch between the learning methods and feature values ​​of program parts, check the program part monitor screen, and decide which learning method and feature value to adopt.

[0052] 19, the control program creation screen includes a "Model Selection" button for selecting a learning model for a program part, and a "Complete" button for completing the creation of the control program. When the "Model Selection" button is pressed, the control program generation unit 17 displays a learning model selection screen for accepting the selection of a learning model for the program part.

[0053] The learning model selection screen will be described with reference to FIG. 20. In the example of the learning model selection screen shown in FIG. 20, the user selects Multi_model_02, K_model_02, and K_model_04 as the learning models of the program parts of AI_Sample1, Random_model_01 and Random_model_05 as the learning models of the program parts of AI_Sample2, and GB_model1, AE_model1, and WFR_model as the learning models of the program parts of AI_Sample3. The learning model selection screen includes a "Cancel" button for canceling the selection of the learning model and a "Determine" button for determining the selection of the learning model of the program parts. When the "Determine" button is pressed, the control program generation unit 17 determines the selection of the learning model of each program part and closes the learning model selection screen. The selected learning models and the corresponding program parts are collected into one file. It is also possible to include a plurality of collected program parts and the corresponding selected learning models in one file.

[0054] Returning to FIG. 19, when the "Complete" button is pressed on the control program creation screen, the control program generation unit 17 generates a control program based on the contents input on the control program creation screen.

[0055] Returning to FIG. 1, the control program generation unit 17 downloads the generated control program to the control device 2. At this time, the control program generation unit 17 downloads a file that summarizes the program parts corresponding to the selected learning model together with the control program to the control device 2. The program execution units 221 to 22m of the control device 2 execute the control program using the file that summarizes the program parts corresponding to the selected learning model. Note that after the control device 2 downloads the control program, the user may be configured to be able to change the learning model of the program parts in the control program on the learning model selection screen displayed by the control program generation unit 17. In this case, the control program generation unit 17 downloads a file that summarizes the program parts corresponding to the learning model changed on the learning model selection screen to the control device 2. The control device 2 switches the learning model of the corresponding program parts in the control program using the downloaded file that summarizes the changed learning model and the corresponding program parts.

[0056] Here, the program part generation process executed by the program creation support device 1 will be described with reference to FIG. 21. The program part generation process shown in FIG. 21 starts, for example, when a program part generation instruction is input to the program creation support device 1. The learning model set generation unit 11 of the program creation support device 1 displays a learning model creation screen that accepts the user's settings for the learning model (step S11). If no operation is performed to start the generation of the learning model (step S12; NO), the process repeats step S12 and waits for an operation to start the generation of the learning model. If an operation is performed to start the generation of the learning model (step S12; YES), the learning model set generation unit 11 generates a learning model based on the settings input to the learning model creation screen (step S13). The examples of the learning model creation screen for supervised learning shown in FIG. 3 and the learning model creation screen for unsupervised learning shown in FIG. 9 have a "Learning Method" item for setting the learning method for the learning model the user wants to create, a "Features" item for setting the input and output, a "File to Generate" item for setting the name of the file to be generated, an "Import" button for loading the learning data, a "Start Generation" button for starting generation of the learning model, and a "Cancel" button for canceling generation of the learning model.

[0057] Returning to Fig. 21, the learning model set generation unit 11 generates a learning model set by putting the generated learning models into one file (step S14), and stores it in the learning model set storage unit 12. For example, the learning model set with the file name AI_Sample1 shown in Fig. 5 is a collection of learning models by supervised learning aimed at calculating the tension value of a conveyor. The learning model set with the file name AI_Sample2 shown in Fig. 11 is a collection of learning models by unsupervised learning aimed at detecting anomalies.

[0058] Returning to FIG. 21, the evaluation pattern generation unit 13 displays a model evaluation pattern creation screen that accepts the setting of an evaluation pattern for a learning model by the user (step S15). If an operation to start evaluation is not performed (step S16; NO), the process repeats step S16 and waits for an operation to start evaluation. If an operation to start evaluation is performed (step S16; YES), the evaluation pattern generation unit 13 generates a model evaluation pattern for evaluating the performance of a target learning model based on the setting inputted to the evaluation pattern creation screen (step S17). In the example of the evaluation pattern creation screen for a learning model of unsupervised learning shown in FIG. 14 and the evaluation pattern creation screen for a learning model of supervised learning shown in FIG. 16, there are an item of "evaluation target model set" for setting a learning model set including a learning model of a target that the user wants to evaluate, an item of "test data" for setting test data to be inputted to the learning model, and an item of "evaluation target selection" for setting a learning method of a learning model of a target that the user wants to evaluate. In addition, the item of "evaluation target selection" has a button that pops up a judgment criterion evaluation index selection screen that can specify a test judgment criterion and an evaluation index of a test result for each learning method.

[0059] Returning to FIG. 21, the program evaluation unit 14 evaluates the performance of the learning model using the evaluation pattern generated by the evaluation pattern generation unit 13 (step S18). When the program evaluation unit 14 completes the evaluation of the performance of the learning model, it displays a model evaluation result screen (step S19). In the example of the model evaluation result screen of the learning model of unsupervised learning shown in FIG. 15, MT_model_04 is selected as the learning model to be adopted in the component model set. In the example of the model evaluation result screen of the learning model of supervised learning shown in FIG. 17, Multi_model_01, Multi_model_02, and RF_model_01 are selected as the learning models to be adopted in the component model set. In the examples shown in FIG. 15 and FIG. 17, the model evaluation result screen includes a "Decide" button for deciding the selection of the learning model. When the "Decide" button is pressed, the program evaluation unit 14 decides the selection of the learning model and closes the model evaluation result screen.

[0060] Returning to Fig. 21, if no operation is performed to determine the selection of a learning model (step S20; NO), the process repeats step S20 and waits for an operation to determine the selection of a learning model. If an operation is performed to determine the selection of a learning model (step S20; YES), the program evaluation unit 14 generates a component model set that combines the learning models selected on the model evaluation result screen into one file (step S21) and stores it in the component model set storage unit 15. The program component generation unit 16 associates the component model sets stored in the component model set storage unit 15, generates program components that can switch combinations of feature amounts and learning methods (step S22), and ends the process.

[0061] Next, the control program generation process executed by the program creation support device 1 will be described with reference to Fig. 22. The control program generation process shown in Fig. 22 starts, for example, when a control program generation instruction is input to the program creation support device 1. The control program generation unit 17 of the program creation support device 1 displays a control program creation screen that accepts the creation of a control program that can use program components (step S31). In the example of the control program creation screen shown in Fig. 18, program components of a component model set are displayed in the left area. In the example of Fig. 18, a program component can be added to the control program by performing an operation of dragging and dropping the program component name onto the right area where the control program is written.

[0062] Returning to FIG. 22, if an operation to add a program part is not performed (step S32; NO), the process repeats step S32 and waits for an operation to add a program part. If an operation to add a program part is performed (step S32; YES), the control program generation unit 17 adds a program part to the control program and displays a program part setting screen that allows switching of a combination of a feature amount and a learning model (step S33). If an operation to switch a combination of a feature amount and a learning model is not performed on the program part setting screen (step S34; NO), the process repeats step S34 and waits for an operation to switch a combination of a feature amount and a learning model. If an operation to switch a combination of a feature amount and a learning model is performed (step S34; YES), the control program generation unit 17 performs a simulation and displays a program part monitor screen that displays the value of each feature amount during the simulation (step S35). In the example of the control program creation screen in FIG. 19, the feature amount and learning method of the program part can also be switched on the program part monitor screen, and the program part setting screen and the setting contents are linked.

[0063] Returning to FIG. 22, if the operation to display the learning model selection screen is not performed (step S36; NO), the control program generation unit 17 repeats step S36 and waits for an operation to display the learning model selection screen. If the operation to display the learning model selection screen is performed (step S36; YES), the control program generation unit 17 displays a learning model selection screen that accepts the selection of the learning model of the program part (step S37). If the operation to determine the selection of the learning model of the program part is not performed (step S38; NO), the control program generation unit 17 repeats step S38 and waits for an operation to determine the selection of the learning model of the program part. If the operation to determine the selection of the learning model of the program part is performed (step S38; YES), the control program generation unit 17 determines the learning model of the program part (step S39) and closes the learning model selection screen. The selected learning model and the corresponding program parts are combined into one file. In the example shown in FIG. 20, the learning model selection screen includes a "Cancel" button that cancels the selection of the learning model and a "Determine" button that determines the selection of the learning model of the program part. When the "Decide" button is pressed, the control program generation unit 17 determines the learning model for the program part and closes the learning model selection screen.

[0064] Returning to FIG. 22, if the creation of the control program is not complete (step S40; NO), the process returns to step S32, and steps S32 to S40 are repeated. If the creation of the control program is complete (step S40; YES), the control program generation unit 17 generates a control program based on the content entered on the control program creation screen (step S41). The control program generation unit 17 downloads the generated control program to the control device 2 (step S42), and ends the process. In step S42, the control program generation unit 17 downloads to the control device 2 a file that includes the program parts corresponding to the selected learning model together with the control program.

[0065] According to the program creation support device 1 of the embodiment, when creating and modifying a control program, it becomes easy to switch the combination of the feature amount of the learning model and the learning method to be added to the control program, thereby reducing the number of steps and improving the efficiency. In particular, when debugging a control program, it becomes easy to switch the combination of the feature amount of the learning model and the learning method in the control program, which is more effective.

[0066] The hardware configuration of the program creation support device 1 will be described with reference to Fig. 23. As shown in Fig. 23, the program creation support device 1 includes a temporary storage unit 101, a storage unit 102, a calculation unit 103, an input unit 104, a transmission / reception unit 105, and a display unit 106. The temporary storage unit 101, the storage unit 102, the input unit 104, the transmission / reception unit 105, and the display unit 106 are all connected to the calculation unit 103 via a BUS.

[0067] The calculation unit 103 is, for example, a CPU (Central Processing Unit). The calculation unit 103 executes the processes of the learning model set generation unit 11, the evaluation pattern generation unit 13, the program evaluation unit 14, the program part generation unit 16, and the control program generation unit 17 of the program creation support device 1 according to the control program stored in the storage unit 102.

[0068] The temporary storage unit 101 is, for example, a random-access memory (RAM). The temporary storage unit 101 loads a control program stored in the storage unit 102 and is used as a working area for the calculation unit 103.

[0069] The storage unit 102 is a non-volatile memory such as a flash memory, a hard disk, a DVD-RAM (Digital Versatile Disc - Random Access Memory), or a DVD-RW (Digital Versatile Disc - ReWritable). The storage unit 102 pre-stores a program for causing the calculation unit 103 to perform the processing of the program creation support device 1, and also supplies data stored by this program to the calculation unit 103 according to an instruction from the calculation unit 103, and stores the data supplied from the calculation unit 103. The learning model set storage unit 12 and the component model set storage unit 15 of the program creation support device 1 are configured in the storage unit 102.

[0070] The input unit 104 is an interface device that connects input devices such as a keyboard, a pointing device, and a voice input device to the BUS. Information input by a user is supplied to the calculation unit 103 via the input unit 104. The input unit 104 functions as the learning model set generation unit 11, the evaluation pattern generation unit 13, the program evaluation unit 14, and the control program generation unit 17.

[0071] The transmitting / receiving unit 105 is a network termination device or a wireless communication device that connects to the network, and a serial interface or a LAN (Local Area Network) interface that connects to them. When the control program generation unit 17 of the program creation support device 1 is configured to transmit the control program to the control device 2, the transmitting / receiving unit 105 functions as the control program generation unit 17. When the learning model set generation unit 11 of the program creation support device 1 is configured to receive collected data from the collected data storage unit 3, the transmitting / receiving unit 105 functions as the learning model set generation unit 11.

[0072] The display unit 106 is a display device such as an LCD (Liquid Crystal Display), an organic EL (electroluminescence) display, etc. The display unit 106 functions as the learning model set generation unit 11, the evaluation pattern generation unit 13, the program evaluation unit 14, and the control program generation unit 17.

[0073] The processing of the learning model set generation unit 11, learning model set memory unit 12, evaluation pattern generation unit 13, program evaluation unit 14, component model set memory unit 15, program component generation unit 16, and control program generation unit 17 of the program creation support device 1 shown in Figure 1 is executed by the control program processing using the temporary memory unit 101, calculation unit 103, memory unit 102, input unit 104, transmission / reception unit 105, display unit 106, etc. as resources.

[0074] Additionally, the above hardware configuration and flowchart are merely examples and can be changed or modified as desired.

[0075] The core parts of the program creation support device 1, such as the calculation unit 103, temporary storage unit 101, storage unit 102, input unit 104, transmission / reception unit 105, and display unit 106, can be realized by using a normal computer system, not a dedicated system. For example, the program creation support device 1 that executes the above-mentioned processes may be configured by storing and distributing a computer-readable recording medium such as a flexible disk, a CD-ROM (Compact Disc - Read Only Memory), or a DVD-ROM (Digital Versatile Disc - Read Only Memory), and installing the computer program on a computer. Alternatively, the program creation support device 1 may be configured by storing the computer program in a storage device of a server device on a communication network, such as the Internet, and downloading the computer program into a normal computer system.

[0076] In addition, when the functions of the program creation support device 1 are realized by sharing the functions between an OS (Operating System) and an application program, or by cooperation between the OS and the application program, only the application program portion may be stored in a recording medium or storage device.

[0077] It is also possible to superimpose a computer program on a carrier wave and provide it via a communication network. For example, the computer program may be posted on a bulletin board system (BBS) on the communication network and provided via the communication network. The computer program may then be started and executed under the control of the OS in the same way as other application programs, thereby enabling the above-mentioned processing to be performed.

[0078] In the above embodiment, the program creation support device 1 includes the learning model set generation unit 11, the learning model set storage unit 12, the evaluation pattern generation unit 13, the program evaluation unit 14, the component model set storage unit 15, the program part generation unit 16, and the control program generation unit 17. However, the configuration is not limited to this, and may be configured without the evaluation pattern generation unit 13, the program evaluation unit 14, and the component model set storage unit 15. In this case, the program part generation unit 16 associates the learning model sets stored in the learning model set storage unit 12 and generates program parts that can switch the combination of feature amounts and learning methods. The user can exclude learning models with low performance by checking the program part monitor screen.

[0079] In the above embodiment, the program creation support device 1 includes the control program generating unit 17, but the present invention is not limited to this, and the control program generating unit 17 may be included in an external device or system.

[0080] In the above embodiment, the program creation support device 1 includes the learning model set storage unit 12 and the component model set storage unit 15, but is not limited to this. The learning model set storage unit 12 and the component model set storage unit 15 may be provided in an external device or system. In addition, the program creation support device 1 or the control device 2 may include the collected data storage unit 3.

[0081] In the above embodiment, the learning model set generation unit 11 of the program creation support device 1 performs preprocessing to convert the collected data into learning data by converting the data format and deleting unnecessary information, but this is not limited to the above, and this preprocessing may be performed by the data collection units 211 to 21n of the control device 2 and the learning data may be stored in the collected data storage unit 3.

[0082] In the above embodiment, supervised learning and unsupervised learning have been described as examples of similar learning methods with different feature amounts, but the present invention is not limited to this. For example, the similar learning methods with different feature amounts may include reinforcement learning.

[0083] In the above embodiment, the program creation support device 1 displays a learning model creation screen, a model evaluation pattern creation screen, a control program creation screen, and a learning model selection screen, and accepts direct input from a user, but this is not limited to the above. For example, the program creation support device 1 may transmit the learning model creation screen, the model evaluation pattern creation screen, the control program creation screen, and the learning model selection screen to a user terminal used by the user to display them. In this case, the user inputs information into each screen displayed on the user terminal, and the user terminal transmits the input information to the program creation support device 1.

[0084] Although the preferred embodiments have been described in detail above, the present invention is not limited to the above-described embodiments, and various modifications and substitutions can be made to the above-described embodiments without departing from the scope of the claims.

[0085] In addition, various embodiments and modifications of the present disclosure are possible without departing from the broad spirit and scope of the present disclosure. The above-described embodiments are for explaining the present disclosure and do not limit the scope of the present disclosure. That is, the scope of the present disclosure is indicated by the claims, not the embodiments. Various modifications made within the scope of the claims and the scope of the disclosure equivalent thereto are considered to be within the scope of the present disclosure. [Explanation of symbols]

[0086] 1 Program creation support device, 2 Control device, 3 Collected data memory unit, 4 External device, 11 Learning model set generation unit, 12 Learning model set memory unit, 13 Evaluation pattern generation unit, 14 Program evaluation unit, 15 Component model set memory unit, 16 Program component generation unit, 17 Control program generation unit, 100 Program creation support system, 101 Temporary memory unit, 102 Memory unit, 103 Calculation unit, 104 Input unit, 105 Transmission / reception unit, 106 Display unit, 211-21n Data collection unit, 221-22m Program execution unit.

Claims

1. Computers, A model set generation unit generates a model that processes input parameters and outputs values, and generates a model set that combines multiple such models that perform similar processing with different parameters into a single file. A program component for adding the aforementioned model to a target program, wherein the program component generates the program component that associates the set of models and is capable of switching combinations of parameters and processing methods of the added model. An evaluation pattern generation unit that generates an evaluation pattern for evaluating the performance of the models included in the model set, and A program evaluation unit that evaluates the performance of the model based on the evaluation pattern. To make it function as, The program component generation unit generates the program component by associating a component model set, which is a single file containing models from the model set that satisfy predetermined conditions for evaluation by the program evaluation unit. Program creation support program.

2. A computer connected to a control device that executes a control program for controlling external devices, A model set generation unit generates a model that processes input parameters and outputs values, and generates a model set that combines multiple such models that perform similar processing with different parameters into a single file. A program component for adding the aforementioned model to a target program, comprising a program component generation unit that generates the program component by associating the model set and enabling switching of combinations of parameters and processing methods for the added model, and A control program generation unit that generates the aforementioned control program, To make it function as, The program component generation unit generates the program component that adds the model to the control program, The control program generation unit generates the control program using the program components, and when the combination of parameters and processing methods of the additional model in the program components is switched, it performs a simulation with the switched parameters and processing methods and displays the values ​​of each parameter during the simulation. Program creation support program.

3. The model set generation unit receives settings related to the generation of the model, including the settings for parameters and similar processing methods, and generates the model for all possible combinations of parameters and processing methods based on the input settings related to the generation of the model, and generates the model set in a single file. A program creation support program according to claim 1 or 2.

4. The evaluation pattern generation unit receives the specification of the model to be evaluated, the test judgment criteria for evaluating the performance of the model, and the evaluation index for the test results, and generates the evaluation pattern based on the specified content. A program creation support program according to claim 1.

5. The control program generation unit receives the selection of the model of the program component and generates the control program using the program component to which the selected model is added. The program creation support program according to claim 2.

6. The model set generation unit generates a learning model that learns on the input features and outputs a value, and generates a learning model set that combines multiple learning models that perform similar learning with different features into a single file. The program component generation unit associates the set of learning models and generates program components that can switch between combinations of features and learning methods of the additional learning models. A program creation support program according to claim 1 or 2.

7. A model set generation unit generates a model that processes input parameters and outputs values, and generates a model set that combines multiple such models that perform similar processing with different parameters into a single file. A program component for adding the aforementioned model to a target program, comprising: a program component generation unit that generates the program component by associating the model set and enabling switching of combinations of parameters and processing methods for the added model; An evaluation pattern generation unit that generates an evaluation pattern for evaluating the performance of the models included in the model set, A program evaluation unit that evaluates the performance of the model based on the evaluation pattern, Equipped with, The program component generation unit generates the program component by associating a component model set, which is a single file containing models from the model set that satisfy predetermined conditions for evaluation by the program evaluation unit. Program creation support device.

8. A program creation support device connected to a control device that executes a control program for controlling external devices, A model set generation unit generates a model that processes input parameters and outputs values, and generates a model set that combines multiple such models that perform similar processing with different parameters into a single file. A program component for adding the aforementioned model to a target program, comprising: a program component generation unit that generates the program component by associating the model set and enabling switching of combinations of parameters and processing methods for the added model; A control program generation unit that generates the aforementioned control program, Equipped with, The program component generation unit generates the program component that adds the model to the control program, The control program generation unit generates the control program using the program components, and when the combination of parameters and processing methods of the additional model in the program components is switched, it performs a simulation with the switched parameters and processing methods and displays the values ​​of each parameter during the simulation. Program creation support device.

9. The program creation support device executes: The steps include generating a model that processes input parameters and outputs values, and generating a model set by putting multiple such models that perform similar processing with different parameters into a single file, A program component for adding the aforementioned model to a target program, comprising the steps of generating a program component that associates the set of models and allows switching of combinations of parameters and processing methods for the added model, A step of generating an evaluation pattern for evaluating the performance of the models included in the model set, A step of evaluating the performance of the model based on the evaluation pattern, Equipped with, In the step of generating the program component, the program component is generated by associating a component model set, which is a single file containing models from the model set that satisfy predetermined conditions for evaluation in the step of evaluating the performance of the models. Program creation support methods.

10. A program creation support device connected to a control device that executes a control program for controlling external devices executes the following: The steps include generating a model that processes input parameters and outputs values, and generating a model set by putting multiple such models that perform similar processing with different parameters into a single file, A program component for adding the aforementioned model to a target program, comprising the steps of generating a program component that associates the set of models and allows switching of combinations of parameters and processing methods for the added model, The steps include generating the control program, Equipped with, In the step of generating the program component, the program component is generated to add the model to the control program, In the step of generating the control program, the control program is generated using the program components, and in the program components, the combination of parameters and processing methods of the additional model is switched, a simulation is performed with the switched parameters and processing methods, and the values ​​of each parameter during the simulation are displayed. Program creation support methods.

11. A program creation support system comprising a control device that executes a control program for controlling external devices, and a program creation support device that generates the control program, The control device is A program execution unit that executes the control program, A data acquisition unit that collects data related to the aforementioned external device, Includes, The aforementioned program creation support device is Based on the data about the external device collected by the data acquisition unit, a model set generation unit generates a model that processes the input parameters and outputs values, and generates a model set in which multiple such models that perform similar processing with different parameters are put into a single file. A program component for adding the model to the control program, comprising: a program component generation unit that generates the program component which associates the model set and can switch combinations of parameters and processing methods of the added model; A control program generation unit that generates the control program using the program components, An evaluation pattern generation unit that generates an evaluation pattern for evaluating the performance of the models included in the model set, A program evaluation unit that evaluates the performance of the model based on the evaluation pattern, Includes, The program component generation unit generates the program component by associating a component model set, which is a single file containing models from the model set that satisfy predetermined conditions for evaluation by the program evaluation unit. Program creation support system.

12. A program creation support system comprising a control device that executes a control program for controlling external devices, and a program creation support device that generates the control program, The control device is A program execution unit that executes the control program, A data acquisition unit that collects data related to the aforementioned external device, Includes, The aforementioned program creation support device is Based on the data about the external device collected by the data acquisition unit, a model set generation unit generates a model that processes the input parameters and outputs values, and generates a model set in which multiple such models that perform similar processing with different parameters are put into a single file. A program component for adding the model to the control program, comprising: a program component generation unit that generates the program component which associates the model set and can switch combinations of parameters and processing methods of the added model; A control program generation unit that generates the control program using the program components, Includes, The program component generation unit generates the program component that adds the model to the control program, The control program generation unit generates the control program using the program components, and when the combination of parameters and processing methods of the additional model in the program components is switched, it performs a simulation with the switched parameters and processing methods and displays the values ​​of each parameter during the simulation. Program creation support system.