WO2021256215A1 - 制御装置、上位コントローラ、制御方法、及び制御プログラム - Google Patents

制御装置、上位コントローラ、制御方法、及び制御プログラム Download PDF

Info

Publication number
WO2021256215A1
WO2021256215A1 PCT/JP2021/020335 JP2021020335W WO2021256215A1 WO 2021256215 A1 WO2021256215 A1 WO 2021256215A1 JP 2021020335 W JP2021020335 W JP 2021020335W WO 2021256215 A1 WO2021256215 A1 WO 2021256215A1
Authority
WO
WIPO (PCT)
Prior art keywords
prediction model
control
condition
prediction
controlled
Prior art date
Application number
PCT/JP2021/020335
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 オムロン株式会社
Publication of WO2021256215A1 publication Critical patent/WO2021256215A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring

Definitions

  • the present invention relates to a control device, a host controller, a control method, and a control program.
  • a controller such as a PLC (programmable logic controller) is generally used to control the operation of the device to be controlled.
  • PLC programmable logic controller
  • the controller is configured to control the operation of the controlled device by a relatively simple control method such as PID (Proportional-Integral-Differential) control. rice field.
  • PID Proportional-Integral-Differential
  • Patent Document 1 proposes a method of implementing a prediction model in a PLC used for controlling a factory process such as a chemical plant or a refinery. Specifically, it collects data showing the operation results of the system process, generates a prediction model that predicts the state of the system based on the obtained data, and uses the generated prediction model to control the system. It has been proposed to optimize. According to this method, by utilizing the predictive model, it is possible to optimize the process of the production line and reduce the probability that a poor quality product is manufactured. In addition, by using the prediction model, it is possible to shorten the time required for starting up or changing the setup of the production line.
  • Patent Document 2 proposes to exclude outliers when generating and using a prediction model.
  • the machine learning device proposed in Patent Document 2 has a state observation unit that acquires input data, an input safety circuit that detects an abnormality in the input data and outputs safe input data, and a safe input. Based on the data, learning of the learning model and inference using the learning model are executed, the machine learning unit that outputs the inference data as the inference result, and the output that detects the abnormality in the inference data and outputs the safe inference data. It includes a safety circuit and an output unit that outputs output data based on safe inference data. According to this device, the stability of the operation control of the controlled device can be ensured by not using the abnormal value.
  • the control method using the prediction model has the following problems in addition to the problem of the above-mentioned abnormal values. That is, the performance of the predictive model depends on the training data used to generate the predictive model. In addition, the internal behavior of the prediction model is often hidden, and even if outliers are excluded, the prediction by the prediction model can be erroneous. If the result of an erroneous prediction is used as it is, an inappropriate control command may be generated, which causes a problem that the operation control of the controlled device becomes unstable. Will end up.
  • the present invention has been made in view of such circumstances on one aspect, and an object of the present invention is to provide a technique for improving the stability of operation control of a controlled object device using a prediction model. ..
  • the present invention adopts the following configuration in order to solve the above-mentioned problems.
  • the control device is the future of the controlled object device from the acquired measured value using the acquisition unit for acquiring the measured value regarding the state of the controlled object device and the prediction model.
  • a prediction unit that predicts an operation or a state and a result of the prediction are used to determine a control command for the controlled target device, and the operation of the controlled target device is controlled based on the determined control command. It includes an operation control unit and an evaluation unit for determining whether or not the condition for using the prediction model satisfies the reliability condition. Then, when it is determined that the condition for using the prediction model does not satisfy the reliability condition, the operation control unit stops using the result of the prediction.
  • the process of the controlled device can be optimized by using the prediction model. For example, when the controlled device is a production device, the probability that a poor quality product is manufactured can be reduced. Further, by using the prediction model, it can be expected that the time required for starting up or changing the setup of the controlled target device can be shortened. Further, in the configuration, it is determined whether or not the condition for using the prediction model satisfies the reliability condition, and if it is determined that the condition is not satisfied, the use of the prediction result is stopped. As a result, it is possible to prevent the operation control using the prediction result from being executed in the situation where the prediction by the prediction model is likely to be erroneous.
  • whether or not the condition for using the prediction model satisfies the reliability condition is whether or not the measured value acquired belongs to the range of the training data used for generating the prediction model. It may be determined based on whether or not.
  • the performance of the predictive model depends on the training data. The more the value of the explanatory variable deviates (ie, is unknown) from the range of training data used to generate the predictive model, the less likely it is that the predictive model will be less accurate with respect to the value of the explanatory variable.
  • the value of the explanatory variable belongs to the range of the training data, it is natural that the prediction accuracy of the prediction model is high. According to this configuration, the reliability of the conditions for using the prediction model can be appropriately evaluated based on this viewpoint, thereby improving the stability of the operation control of the controlled device using the prediction model. Can be planned.
  • the range of the training data may be expressed by a data distribution, and whether or not the measured value belongs to the range of the training data is whether or not the measured value is included in the data distribution. It may be determined based on whether or not.
  • the range of the training data by the data distribution, it is possible to facilitate the calculation of whether or not the measured value belongs to the range of the training data. As a result, it can be expected that the load of information processing for evaluating the reliability of the prediction model will be reduced and the speed will be increased.
  • whether or not the condition for using the prediction model satisfies the reliability condition is determined by using the operation condition of the controlled device when controlling the operation to generate the prediction model.
  • the determination may be made based on whether or not the learning data belongs to the range of the operating conditions of the controlled device at the time of collecting the data.
  • the more the environment in which the prediction model is used deviates from the learning environment the more likely it is that events that are not taken into consideration when generating the prediction model will occur, and as a result, the prediction accuracy of the prediction model is likely to decrease.
  • the environment in which the prediction model is used is in the category of the learning environment, such an event is unlikely to occur, and it is natural that the prediction accuracy of the prediction model is high. According to this configuration, the reliability of the conditions for using the prediction model can be appropriately evaluated based on this viewpoint, thereby improving the stability of the operation control of the controlled device using the prediction model. Can be planned.
  • the measured value regarding the state of the controlled target device may be a measured value of the controlled amount of the controlled target device. According to this configuration, it is possible to improve the stability of the operation control of the controlled object device using the prediction model in the form of predicting the future operation or state of the controlled object device from the measured value of the controlled variable.
  • the prediction result regarding the future operation or state of the control target device is the predicted value of the control amount of the control target device, the correction value for the target value of the control amount, and the control target device. It may be composed of either a predicted value of the operation amount or a correction value for the operation amount.
  • predictive control is performed based on any of the predicted value of the controlled amount of the controlled target device, the corrected value for the target value of the controlled amount, the predicted value of the manipulated amount for the controlled target device, and the corrected value for the manipulated amount. In this embodiment, it is possible to improve the stability of the operation control of the controlled target device using the prediction model.
  • the control device includes an operation control unit that controls the operation of the device to be controlled.
  • the present invention is not limited to such a form.
  • One aspect of the present invention may be configured by replacing the operation control unit of the control device according to any one of the above embodiments with an operation determination unit that outputs a control command to a lower controller.
  • the host controller uses an acquisition unit that acquires a measured value regarding the state of the controlled object device and a prediction model, and from the acquired measured value, the future of the controlled object device.
  • a prediction unit that predicts an operation or a state, an operation determination unit that determines a control command for the controlled device using the prediction result, and outputs the determined control command to a lower controller, and the prediction unit. It is provided with an evaluation unit for determining whether or not the condition for using the model satisfies the reliability condition. When it is determined that the condition for using the prediction model does not satisfy the reliability condition, the operation determination unit stops using the result of the prediction.
  • one aspect of the present invention may be an information processing method or a program that realizes each of the above configurations. It may be a storage medium that stores such a program and can be read by a computer or the like.
  • the storage medium that can be read by a computer or the like is a medium that stores information such as a program by electrical, magnetic, optical, mechanical, or chemical action.
  • the computer obtains the measured value regarding the state of the controlled target device, and the control target device is controlled from the measured value obtained by using the prediction model.
  • a step of making a prediction about a future operation or a state a step of determining a control command for the controlled target device by using the result of the prediction, and an operation of the controlled target device based on the determined control command.
  • the control target is obtained from the measurement value acquired by using the step of acquiring the measurement value regarding the state of the control target device and the prediction model in the computer.
  • It is a program for executing a step of controlling the operation and a step of determining whether or not the condition for using the prediction model satisfies the reliability condition, and the condition for using the prediction model is the reliability condition.
  • This is a program that causes the computer to stop using the result of the prediction when it is determined that the above conditions are not satisfied.
  • FIG. 1 schematically illustrates an example of a situation in which the present invention is applied.
  • FIG. 2 schematically illustrates an example of the hardware configuration of the control device according to the embodiment.
  • FIG. 3A schematically illustrates an example of the controlled object device according to the embodiment.
  • FIG. 3B schematically illustrates an example of the controlled object device according to the embodiment.
  • FIG. 4 schematically illustrates an example of the hardware configuration of the model generator according to the embodiment.
  • FIG. 5 schematically illustrates an example of the software configuration of the control device according to the embodiment.
  • FIG. 6 schematically illustrates an example of the software configuration of the model generator according to the embodiment.
  • FIG. 7 is a flowchart showing an example of the processing procedure of the model generator according to the embodiment.
  • FIG. 8A schematically illustrates an example of actual data according to the embodiment.
  • FIG. 8B schematically illustrates an example of learning data according to the embodiment.
  • FIG. 8C schematically illustrates an example of data distribution information according to the embodiment.
  • FIG. 8D schematically illustrates an example of collection condition information according to the embodiment.
  • FIG. 9 is a flowchart showing an example of the processing procedure of the control device according to the embodiment.
  • FIG. 10A schematically illustrates an example of a method of determining a control command using the result of prediction by the prediction model according to the embodiment.
  • FIG. 10B schematically illustrates an example of a method of determining a control command using the result of prediction by the prediction model according to the embodiment.
  • FIG. 10C schematically illustrates an example of a method of determining a control command using the result of prediction by the prediction model according to the embodiment.
  • FIG. 10A schematically illustrates an example of a method of determining a control command using the result of prediction by the prediction model according to the embodiment.
  • FIG. 10B schematically illustrates an example of a method of determining
  • FIG. 10D schematically illustrates an example of a method of determining a control command using the result of prediction by the prediction model according to the embodiment.
  • FIG. 11 schematically illustrates an example of a method for generating a discriminative model of a data distribution according to another form.
  • FIG. 12A schematically illustrates an example of a method for generating an encoder according to another embodiment.
  • FIG. 12B schematically illustrates an example of a method for generating an encoder according to another embodiment.
  • FIG. 13A schematically illustrates an example of data distribution in the feature space mapped by the encoder according to another form.
  • FIG. 13B schematically illustrates an example of a processing process for determining whether or not the reliability condition according to another embodiment is satisfied.
  • FIG. 14 schematically illustrates an example of the software configuration of the host controller according to another form.
  • the present embodiment an embodiment according to one aspect of the present invention (hereinafter, also referred to as “the present embodiment”) will be described with reference to the drawings.
  • the embodiments described below are merely examples of the present invention in all respects. Needless to say, various improvements and modifications can be made without departing from the scope of the present invention. That is, in carrying out the present invention, a specific configuration according to the embodiment may be appropriately adopted.
  • the data appearing in the present embodiment are described in natural language, but more specifically, they are specified in a pseudo language, a command, a parameter, a machine language, etc. that can be recognized by a computer.
  • FIG. 1 schematically illustrates an example of an application situation of the control system according to the present embodiment.
  • the control system according to the present embodiment includes a control device 1 and a model generation device 2.
  • the control device 1 is a computer configured to perform predictive control of the controlled target device 6 by using the predictive model M.
  • the control device 1 acquires the measured value 40 regarding the state of the controlled device 6.
  • the control device 1 uses the prediction model M to make a prediction regarding the future operation or state of the controlled device 6 from the acquired measured value 40.
  • the control device 1 determines the control command 50 for the control target device 6 by using the prediction result 45 by the prediction model M, and controls the operation of the control target device 6 based on the determined control command 50. do.
  • the control device 1 according to the present embodiment carries out predictive control of the controlled target device 6 by using the predictive model M.
  • control device 1 determines whether or not the condition for using the prediction model M satisfies the reliability condition when the prediction control of the control target device 6 is performed.
  • Reliability conditions are appropriately defined to evaluate from the conditions in which the prediction model M is used, whether or not the prediction model M can correctly execute the prediction (that is, whether or not the prediction accuracy of the prediction model M is significantly reduced). good.
  • the control device 1 stops using the prediction result 45 in the operation control of the control target device 6.
  • the type of the controlled object device 6 may be appropriately selected according to the embodiment as long as the operation can be controlled by the computer.
  • the controlled device 6 may be a relatively small-scale production device used in a production line such as a web transfer device, a press machine, an injection molding machine, an NC lathe, an electric discharge machine, or a packaging machine.
  • the type and format of the measured value 40 may not be particularly limited as long as it can be used as an explanatory variable for prediction of the future operation or state of the controlled device 6, and may be appropriately selected according to the embodiment. good.
  • the measured value 40 may be, for example, a measured value of a controlled amount.
  • the measured value 40 may include those converted into feature quantities.
  • the type and type of the prediction result 45 may not be particularly limited as long as it can be used for the prediction control of the control target device 6, and may be appropriately selected depending on the embodiment.
  • the prediction result 45 is composed of, for example, one of a predicted value of the controlled amount of the controlled target device 6, a correction value for the target value of the controlled amount, a predicted value of the manipulated variable for the controlled target device 6, and a correction value for the manipulated variable. May be done.
  • the controlled amount is, for example, an amount to be controlled such as the rotation angle and the rotation speed of the motor.
  • the operation amount is, for example, an amount given to a controlled target device such as a motor voltage.
  • a web transfer device is adopted as a control target device 6 and the position in the width direction of the web is predicted and controlled will be described as an example of the present embodiment. Details will be described later.
  • the model generation device 2 is a computer configured to generate a prediction model M that can be used for the prediction control.
  • the model generator 2 collects the training data 31.
  • the model generation device 2 uses the obtained learning data 31 to generate a prediction model M.
  • the prediction model M is generated to acquire the ability to make predictions about future movements or states of the controlled device 6 based on the training data 31.
  • the configuration of the prediction model M is not particularly limited and may be appropriately selected according to the embodiment.
  • the prediction model M may be composed of, for example, a data table, a function expression, a rule, or the like.
  • the prediction model M may be configured by a machine learning model having one or more arithmetic parameters. The type of machine learning model may be arbitrarily selected.
  • Examples of machine learning models include regression models, neural networks, decision tree models, support vector machines, and the like.
  • the method for generating the prediction model M may be appropriately selected depending on the configuration of the prediction model M.
  • the prediction model M may be generated by, for example, a method such as manual rule making or machine learning. As a result, a prediction model M that can be used for the prediction control is generated.
  • the control device 1 determines whether or not the condition for using the prediction model M satisfies the reliability condition. Then, when it is determined that the condition for using the prediction model M does not satisfy the reliability condition, the control device 1 stops using the prediction result 45 for determining the control command 50. As a result, the control device 1 according to the present embodiment stops the execution of the prediction control by the prediction model M in the situation where the operation control of the controlled target device 6 tends to be unstable due to the prediction by the prediction model M being erroneous. Can be done. Therefore, according to the present embodiment, in the control device 1, it is possible to improve the stability of the operation control of the control target device 6 using the prediction model M.
  • control device 1 and the model generation device 2 are connected to each other via a network.
  • the type of network may be appropriately selected from, for example, the Internet, a wireless communication network, a mobile communication network, a telephone network, a dedicated network, and the like.
  • the method of exchanging data between the control device 1 and the model generation device 2 does not have to be limited to such an example, and may be appropriately selected depending on the embodiment.
  • data may be exchanged between the control device 1 and the model generation device 2 using a storage medium.
  • control device 1 and the model generation device 2 are each configured by a separate computer.
  • the configuration of the control system according to the present embodiment does not have to be limited to such an example, and may be appropriately determined according to the embodiment.
  • the control device 1 and the model generation device 2 may be an integrated computer.
  • at least one of the control device 1 and the model generation device 2 may be configured by a plurality of computers.
  • FIG. 2 schematically illustrates an example of the hardware configuration of the control device 1 according to the present embodiment.
  • the control unit 11 the storage unit 12, the communication interface 13, the external interface 14, the input device 15, the output device 16, and the drive 17 are electrically connected. It is a computer.
  • the communication interface and the external interface are described as "communication I / F" and "external I / F". The same notation is used in the following figures.
  • the control unit 11 includes a CPU (Central Processing Unit), RAM (RandomAccessMemory), ROM (ReadOnlyMemory), etc., which are hardware processors, and is configured to execute information processing based on a program and various data.
  • the storage unit 12 is an example of a memory, and is composed of, for example, a hard disk drive, a solid state drive, or the like. In the present embodiment, the storage unit 12 stores various information such as the control program 81, the learning result data 225, the data distribution information 33, and the collection condition information 35.
  • the control program 81 is a program for causing the control device 1 to execute information processing (FIG. 9) described later regarding the operation control of the controlled device 6.
  • the control program 81 includes a series of instructions for the information processing.
  • the training result data 225 shows information about the prediction model M.
  • the data distribution information 33 indicates information regarding the range of the training data 31.
  • the collection condition information 35 indicates information regarding the operating conditions of the controlled target device 6 when the learning data 31 used for generating the prediction model M is collected. Details will be described later.
  • the communication interface 13 is, for example, a wired LAN (Local Area Network) module, a wireless LAN module, or the like, and is an interface for performing wired or wireless communication via a network.
  • the control device 1 can execute data communication via a network with another information processing device by using the communication interface 13.
  • the external interface 14 is, for example, a USB (Universal Serial Bus) port, a dedicated port, or the like, and is an interface for connecting to an external device.
  • the type and number of external interfaces 14 may be arbitrarily selected.
  • the control device 1 is connected to the controlled device 6 via the external interface 14.
  • the control device 1 can control the operation of the control target device 6 by transmitting the control command 50 to the control target device 6.
  • the connection method between the control device 1 and the control target device 6 does not have to be limited to such an example.
  • the control device 1 may be connected to the control target device 6 via the communication interface 13 or the like.
  • the input device 15 is, for example, a device for inputting a mouse, a keyboard, or the like.
  • the output device 16 is, for example, a device for outputting a display, a speaker, or the like. An operator such as a user can operate the control device 1 by using the input device 15 and the output device 16.
  • the drive 17 is, for example, a CD drive, a DVD drive, or the like, and is a drive device for reading various information such as a program stored in the storage medium 91.
  • the storage medium 91 performs electrical, magnetic, optical, mechanical or chemical action on the information of the program or the like so that the computer or other device, the machine or the like can read various information of the stored program or the like. It is a medium that accumulates by.
  • At least one of the control program 81, the learning result data 225, the data distribution information 33, and the collection condition information 35 may be stored in the storage medium 91.
  • the control device 1 may acquire at least one of the control program 81, the learning result data 225, the data distribution information 33, and the collection condition information 35 from the storage medium 91. Note that FIG.
  • the type of the storage medium 91 is not limited to the disc type, and may be other than the disc type.
  • a storage medium other than the disk type for example, a semiconductor memory such as a flash memory can be mentioned.
  • the type of the drive 17 may be arbitrarily selected according to the type of the storage medium 91.
  • the control unit 11 may include a plurality of hardware processors.
  • the hardware processor may be composed of a microprocessor, FPGA (field-programmable gate array), DSP (digital signal processor), or the like.
  • the storage unit 12 may be composed of a RAM and a ROM included in the control unit 11. At least one of the communication interface 13, the external interface 14, the input device 15, the output device 16, and the drive 17 may be omitted.
  • the control device 1 may be composed of a plurality of computers. In this case, the hardware configurations of the computers may or may not match. Further, the control device 1 may be a PLC (programmable logic controller), a desktop PC (Personal Computer), a tablet PC, or the like, in addition to an information processing device designed exclusively for the provided service.
  • PLC programmable logic controller
  • desktop PC Personal Computer
  • Controlled device> 3A and 3B schematically illustrate an example of the hardware configuration of the web transfer device 60 according to the present embodiment.
  • the web transfer device 60 is an example of the control target device 6.
  • the web transport device 60 is configured to transport the web 69 while adjusting the position of the end portion of the web 69 in the width direction.
  • the web transfer device 60 includes a supply roll 61 for supplying the web 69 and a collection roll 66 for collecting the supplied web 69.
  • the type of web 69 may be arbitrarily selected.
  • the web 69 may be, for example, a resin film such as a polyethylene film.
  • Servo motors (611, 661) are attached to the rotating shafts of the supply roll 61 and the recovery roll 66, respectively. As a result, by driving each servomotor (611, 661), the web 69 is unwound from the supply roll 61, and the supplied web 69 is wound up on the recovery roll 66.
  • Three driven rollers (62, 63, 641) are arranged between the supply roll 61 and the recovery roll 66.
  • the driven roller 641 is provided with a correction mechanism 64 configured to correct (ie, displace) the position of the end of the web 69.
  • the correction mechanism 64 includes a driven roller 641 and an actuator 643.
  • the driven roller 641 has a shaft 642 and is rotatably configured around the shaft 642 to convey the web 69.
  • an actuator 643 is attached to the shaft 642, and the driven roller 641 is configured to be slidable in the axial direction by driving the actuator 643.
  • the position of the end portion of the web 69 can be corrected by sliding the driven roller 641 in the axial direction by driving the actuator 643.
  • the position of the end portion of the web 69 can be displaced in the sliding direction of the driven roller 641 according to the amount of sliding.
  • An edge sensor 65 is arranged near the correction mechanism 64.
  • the edge sensor 65 is arranged on the recovery roll 66 side (downstream side) of the driven roller 641 provided with the correction mechanism 64 with respect to the transport direction of the web 69.
  • the edge sensor 65 is configured to detect the position of the end of the conveyed web 69.
  • the edge sensor 65 is an optical sensor and is configured to be able to measure the position of the end of the web 69 passing between the U-shapes.
  • the type of the edge sensor 65 is not limited to such an example and may be arbitrarily selected.
  • the web transport device 60 is provided with the correction mechanism 64 and the edge sensor 65, so that the position of the end portion of the web 69 in the width direction is measured and the position of the end portion is adjusted. At the same time, it is configured to carry the web 69.
  • the control device 1 adjusts the position of the end portion of the web 69 so that the position of the end portion of the web 69 is kept constant.
  • the operation of adjusting the position of the end portion of the web 69 is an example of the operation to be the target of predictive control.
  • the position of the end portion in the width direction of the web 69 is an example of the control amount, and the drive amount (for example, voltage) of the actuator 643 is an example of the operation amount.
  • the position of the end of the web 69 may be expressed as a meandering amount (ie, the amount of deviation of the end with respect to a predetermined position).
  • the configuration of the web transfer device 60 does not have to be limited to such an example.
  • components can be omitted, replaced, and added as appropriate according to the embodiment.
  • the operation to be the target of the predictive control is not limited to the adjustment of the position of the end portion in the width direction of the web 69, and may be appropriately selected depending on the device to be controlled. Further, even when the web transfer device is selected as the control target device, the operation to be the target of the predictive control is not limited to the adjustment of the position of the end portion in the width direction of the web 69.
  • the operation targeted for predictive control may be, for example, adjustment of the transport speed of the web 69 by operating each servomotor (611, 661).
  • FIG. 4 schematically illustrates an example of the hardware configuration of the model generator 2 according to the present embodiment.
  • the control unit 21, the storage unit 22, the communication interface 23, the external interface 24, the input device 25, the output device 26, and the drive 27 are electrically connected. It is a computer that has been used.
  • the control units 21 to drive 27 and the storage medium 92 of the model generation device 2 may be configured in the same manner as the control units 11 to drive 17 and the storage medium 91 of the control device 1, respectively.
  • the control unit 21 includes a CPU, RAM, ROM, etc., which are hardware processors, and is configured to execute various information processing based on programs and data.
  • the storage unit 22 is composed of, for example, a hard disk drive, a solid state drive, or the like. In the present embodiment, the storage unit 22 stores various information such as the model generation program 82, the learning data 31, the learning result data 225, the data distribution information 33, and the collection condition information 35.
  • the model generation program 82 is a program for causing the model generation device 2 to execute information processing (FIG. 7) described later regarding the generation of the prediction model M.
  • the model generation program 82 includes a series of instructions for the information processing.
  • the training data 31 is used to generate the prediction model M.
  • the training result data 225 may be generated as a result of executing the model generation program 82.
  • the data distribution information 33 and the collection condition information 35 may be generated at any timing in the process of generating the prediction model M.
  • At least one of the model generation program 82 and the training data 31 may be stored in the storage medium 92. Further, the model generation device 2 may acquire at least one of the model generation program 82 and the learning data 31 from the storage medium 92.
  • the control unit 21 may include a plurality of hardware processors.
  • the hardware processor may be composed of a microprocessor, FPGA, DSP and the like.
  • the storage unit 22 may be composed of a RAM and a ROM included in the control unit 21. At least one of the communication interface 23, the external interface 24, the input device 25, the output device 26, and the drive 27 may be omitted.
  • the model generator 2 may be composed of a plurality of computers. In this case, the hardware configurations of the computers may or may not match.
  • the model generation device 2 may be a general-purpose server device, a general-purpose PC, or the like, in addition to an information processing device designed exclusively for the provided service.
  • FIG. 5 schematically illustrates an example of the software configuration of the control device 1 according to the present embodiment.
  • the control unit 11 of the control device 1 expands the control program 81 stored in the storage unit 12 into the RAM. Then, the control unit 11 controls each component by interpreting and executing the instruction included in the control program 81 expanded in the RAM by the CPU.
  • the control device 1 according to the present embodiment operates as a computer including the acquisition unit 111, the prediction unit 112, the operation control unit 113, and the evaluation unit 114 as software modules. That is, in the present embodiment, each software module of the control device 1 is realized by the control unit 11 (CPU).
  • the acquisition unit 111 acquires the measured value 40 regarding the state of the controlled device 6.
  • the prediction unit 112 includes a prediction model M by holding the learning result data 225.
  • the prediction unit 112 uses the prediction model M to predict the future operation or state of the controlled device 6 from the acquired measured value 40.
  • the operation control unit 113 determines the control command 50 for the control target device 6 by using the prediction result 45. Then, the operation control unit 113 controls the operation of the controlled object device 6 based on the determined control command 50.
  • the evaluation unit 114 determines whether or not the condition for using the prediction model M satisfies the reliability condition.
  • the reliability conditions may be appropriately defined so as to provide a criterion on which the prediction model M can carry out the prediction with a certain degree of reliability.
  • the performance of the predictive model can depend on the training data. Therefore, as an example, the reliability condition may be defined based on the range of the training data 31 used to generate the prediction model M. That is, whether or not the condition for using the prediction model M satisfies the reliability may be determined based on whether or not the measured value 40 belongs to the range of the training data 31 used for generating the prediction model M. Data distribution information 33 may be used for this determination.
  • the performance of the predictive model may depend on the environment in which it is used. The more the environment in which the prediction model is used deviates from the learning environment, the more likely it is that events that are not taken into consideration when generating the prediction model will occur, and as a result, the prediction accuracy of the prediction model is likely to decrease. Therefore, as another example, the reliability condition may be defined based on the learning environment (that is, the condition when the learning data 31 is collected). That is, whether or not the condition for using the prediction model M satisfies the reliability is determined when the operation condition of the controlled target device 6 for controlling the operation collects the learning data 31 used for generating the prediction model M. It may be determined based on whether or not it belongs to the range of the operating conditions of the controlled object device 6. Collection condition information 35 may be used for this determination.
  • the operation control unit 113 executes the operation control of the controlled target device 6 using the result 45 of the above prediction.
  • the motion control unit 113 stops using the prediction result 45 in the motion control.
  • the motion control unit 113 determines the control command 50 without using the prediction result 45, and controls the operation of the controlled target device 6 based on the determined control command 50.
  • FIG. 6 schematically illustrates an example of the software configuration of the model generation device 2 according to the present embodiment.
  • the control unit 21 of the model generation device 2 expands the model generation program 82 stored in the storage unit 22 into the RAM. Then, the control unit 21 controls each component by interpreting and executing the instruction included in the model generation program 82 expanded in the RAM by the CPU.
  • the model generation device 2 according to the present embodiment includes the data collection unit 211, the data generation unit 212, the learning processing unit 213, the information generation unit 214, and the storage processing unit 215 as software modules. Operates as a equipped computer. That is, in the present embodiment, each software module of the model generation device 2 is also realized by the control unit 21 (CPU) in the same manner as the control device 1.
  • the data collection unit 211 collects the actual data 30 regarding the result of controlling the operation of the control target device 6.
  • the data generation unit 212 generates the learning data 31 used to generate the prediction model M from the actual data 30.
  • the learning processing unit 213 uses the learning data 31 to generate the prediction model M.
  • the prediction model M is composed of a machine learning model such as a regression model, a neural network, or a decision tree model
  • the learning processing unit 213 performs machine learning using the training data 31.
  • the learning processing unit 213 can generate a trained prediction model M that has acquired the ability to make predictions regarding future movements or states of the controlled device 6.
  • the learning processing unit 213 generates learning result data 225 for reproducing the generated prediction model M.
  • the information generation unit 214 generates information indicating the reliability condition when using the prediction model M.
  • the information generation unit 214 may generate the data distribution information 33 from the training data 31 used to generate the prediction model M.
  • the data distribution information 33 may be appropriately generated so as to indicate the range of the learning data 31.
  • the information generation unit 214 may generate the collection condition information 35 from the actual data 30.
  • the collection condition information 35 may be appropriately generated so as to indicate the range of operating conditions of the controlled target device 6 when the learning data 31 used for generating the prediction model M is collected as the actual data 30.
  • the storage processing unit 215 stores various generated information such as learning result data 225, data distribution information 33, and collection condition information 35 in a predetermined storage area.
  • each software module of the control device 1 and the model generation device 2 will be described in detail in an operation example described later.
  • an example in which each software module of the control device 1 and the model generation device 2 is realized by a general-purpose CPU is described.
  • some or all of the software modules may be implemented by one or more dedicated processors. That is, each of the above modules may be realized as a hardware module.
  • software modules may be omitted, replaced, or added as appropriate according to the embodiment.
  • FIG. 7 is a flowchart showing an example of a processing procedure for generating a prediction model M by the model generation device 2 according to the present embodiment.
  • the processing procedure of the model generator 2 is only an example, and each step may be changed as much as possible. Further, regarding the following processing procedure of the model generation device 2, it is possible to omit, replace, and add steps as appropriate according to the embodiment.
  • Step S201 the control unit 21 operates as the data collection unit 211 and collects the actual data 30 regarding the result of controlling the operation of the control target device 6.
  • the data items to be collected as the actual data 30 may be appropriately selected so that the training data 31 can be generated (that is, the data regarding the explanatory variables and the objective variables of the prediction are included).
  • the data to be collected includes, for example, a measured value of the controlled amount when controlling the operation of the controlled device 6, a target value of the controlled amount, a command value of the operated amount, a measured value of the controlled amount after controlling the operation, and the like. It's fine.
  • the data to be collected may include, for example, data related to correction such as a correction value for a target value of a controlled variable and a corrected value for a manipulated variable when predictive control is performed or assuming predictive control.
  • the data related to the correction may be appropriately determined by an actual machine or a simulation.
  • the actual data 30 includes data related to the operating conditions (profile information) of the controlled target device 6 when the data of each item is obtained, in addition to the data of each item. It's fine.
  • the operating conditions may be defined by, for example, the attributes of the controlled device 6, disturbance conditions, and the like.
  • the attributes of the controlled device 6 may include, for example, an identifier (ID), a model number, a type, an operating parameter, and the like.
  • ID an identifier
  • the attribute of the controlled target device 6 may include the attribute of the work.
  • the attributes of the control target device 6 may include, for example, the type of the web 69, the transport speed, and the like.
  • the method of collecting the actual data 30 does not have to be particularly limited.
  • the control unit 21 may collect the actual data 30 by directly driving the control target device 6.
  • another computer may generate the actual data 30 by driving the controlled object device 6.
  • the control unit 21 may collect the actual data 30 from another computer via the network, the storage medium 92, or the like. After collecting the actual data 30, the control unit 21 proceeds to the next step S202.
  • step S202 the control unit 21 operates as the data generation unit 212, and selects data to be used as the learning data 31 from the collected actual data 30.
  • the data to be used may be selected by any method.
  • the control unit 21 may select data to be used from the actual data 30 according to the operator's designation via the input device 25. Further, for example, the control unit 21 may automatically select data to be used from the actual data 30 according to a predetermined standard.
  • the control unit 21 selects data to be used by excluding data that corresponds to conditions that are not desirable for use as learning data, such as outliers and abnormal operations. May be good.
  • the control unit 21 operates as the data generation unit 212, and determines the explanatory variables and the objective variables of the prediction model M from each item of the selected data.
  • the control unit 21 may determine an explanatory variable and an objective variable according to the operator's designation. The number of each variable may be arbitrarily selected.
  • the learning data 31 can be generated by the processing up to step S203.
  • the control unit 21 proceeds to the next step S204. If the explanatory variables and the objective variables are predetermined, the process of step S203 may be omitted.
  • Step S204 and Step S205 the control unit 21 operates as the information generation unit 214 to generate information indicating reliability conditions when using the prediction model M.
  • step S204 the control unit 21 generates collection condition information 35 indicating the operating conditions of the controlled target device 6 when the learning data 31 (actual data 30) is collected.
  • the collection condition information 35 may be appropriately generated from the corresponding portion of the selected data in the actual data 30.
  • the process of step S204 may be executed at any timing. Further, in the form in which the collection condition information 35 is not used, the process of step S204 may be omitted.
  • step S205 the control unit 21 generates data distribution information 33 indicating the range of the generated learning data 31.
  • the data distribution information 33 may be appropriately generated so as to indicate the numerical range of the explanatory variables of the generated learning data 31.
  • the process of step S205 may be executed at an arbitrary timing after the learning data 31 is generated.
  • the process of step S205 may be executed before the process of step S204. Further, in the form in which the data distribution information 33 is not used, the process of step S205 may be omitted.
  • Example of various information schematically illustrate examples of various information (actual data 30, learning data 31, collection condition information 35, and data distribution information 33) obtained in the case of the web transfer device 60.
  • the data formats of various information described below are merely examples.
  • the data format of various information is not limited to the following examples, and may be appropriately changed according to the embodiment.
  • the actual data 30 is configured in a table format.
  • One record corresponds to the time series data of the operation results obtained in one or more control cycles.
  • Each record stores information related to the explanatory variable or objective variable of prediction (for example, meandering amount, time, etc.) and information related to operating conditions (for example, device ID, transport speed, work type, etc.).
  • the learning data 31 is configured in a table format like the actual data 30.
  • One record (row data) corresponds to one training data set and has a field for storing the value of each variable.
  • each value of the explanatory variable corresponds to the training data (input data), and each value of the objective variable corresponds to the correct answer data (teacher signal, label).
  • the explanatory variable may be composed of, for example, the current or past meandering amount (the position of the end portion in the width direction of the web 69).
  • the explanatory variables may be composed of meandering amounts for multiple current or past cycles.
  • the explanatory variable may be composed of a feature quantity calculated from the meandering quantity.
  • the objective variable may be composed of, for example, one of a future meandering amount, a correction value for the future meandering amount for the target value, a future driving amount for the actuator 643, and a correction value for the future driving amount.
  • the training data 31 may be configured to include a plurality of training data sets each composed of a combination of such training data and correct answer data.
  • the control unit 21 may generate data distribution information 33 from the obtained learning data 31.
  • the control unit 21 may generate the data distribution information 33 so as to express the range of the learning data 31 (the numerical range of the explanatory variables) by the data distribution.
  • the generation method first, the control unit 21 divides the data space representing the set of explanatory variables into a plurality of partitions. The division method and size (roughness of division) of the division may be arbitrarily determined.
  • the control unit 21 lists each section and initializes the attribute information of each section. For example, the control unit 21 stores a value indicating that the learning data 31 does not exist in the field of each partition in the partition list.
  • the control unit 21 plots the training data 31 on the data space divided into a plurality of sections. Then, the control unit 21 stores a value indicating that the training data 31 exists in the field of the plotted section of the training data 31 in the section list (that is, changes the value of the field of the corresponding section).
  • the control unit 21 can issue the information of the section list generated by these series of processes as the data distribution information 33.
  • the generated data distribution information 33 can indicate the range (data distribution) of the training data 31 in units of sections.
  • the hatched range corresponds to the range determined to belong to the range of the learning data 31.
  • the control unit 21 may generate the collection condition information 35 from the corresponding portion of the data selected as the learning data 31 of the actual data 30.
  • the control unit 21 extracts the data of the corresponding portion used for determining the reliability condition from the actual data 30 configured in the table format.
  • the control unit 21 can generate the collection condition information 35 configured in the table format exemplified in FIG. 8D (in FIG. 8D, the scene in which the transfer speed, the type of work, etc. are selected as the determination items). To exemplify).
  • the data structure of the collection condition information 35 does not have to be limited to such an example.
  • the collection condition information 35 may be configured to indicate the range of operating conditions of the controlled target device 6 at the time of data collection in the same format as the data distribution information 33.
  • the control unit 21 proceeds to the next step S206.
  • Step S206 the control unit 21 operates as the storage processing unit 215 and stores the generated data distribution information 33 and the collection condition information 35 in a predetermined storage area.
  • the predetermined storage area may be, for example, a RAM in the control unit 21, a storage unit 22, an external storage device, a storage medium, or a combination thereof.
  • the storage medium may be, for example, a CD, a DVD, or the like, and the control unit 21 may store the data distribution information 33 and the collection condition information 35 in the storage medium via the drive 27.
  • the external storage device may be, for example, a data server such as NAS (Network Attached Storage).
  • the control unit 21 may store the data distribution information 33 and the collection condition information 35 in the data server via the network by using the communication interface 23.
  • the external storage device may be, for example, an external storage device connected to the model generation device 2 via the external interface 24.
  • the storage destinations of the data distribution information 33 and the collection condition information 35 may be the same or different from each other.
  • step S206 The processing timing of step S206 does not have to be limited to such an example.
  • the process of storing the data distribution information 33 may be executed at an arbitrary timing after the data distribution information 33 is generated by the process of step S205.
  • the process of storing the collection condition information 35 may be executed at any timing after the collection condition information 35 is generated by the process of step S204.
  • Step S207 the control unit 21 operates as the learning processing unit 213 and uses the learning data 31 obtained by the above processing to generate the prediction model M.
  • the prediction model M has the ability to make predictions about the future operation or state of the controlled device 6 based on the training data 31, that is, to derive each value of the objective variable from each value of the explanatory variables of each training data set. It may be appropriately generated to be acquired.
  • the method of generating the prediction model M does not have to be particularly limited.
  • the prediction model M may be generated manually by the operator.
  • the prediction model M may be composed of, for example, a data table, a function expression, a rule, or the like.
  • the prediction model M may be generated by machine learning.
  • the prediction model M may be configured by a machine learning model having one or more arithmetic parameters adjusted by machine learning.
  • the machine learning model may be composed of, for example, a regression model, a neural network, a decision tree model, a support vector machine, or the like.
  • the machine learning method may be appropriately selected according to the configuration of the machine learning model.
  • the prediction model M may be composed of a regression model such as an autoregressive model.
  • the regression model may be composed of a regression equation that sums one or more terms including the regression coefficient.
  • the regression coefficient and the like in each term are examples of calculation parameters.
  • the control unit 21 uses the learning data 31 to perform regression analysis such as the least squares method. This makes it possible to generate a trained predictive model M that has acquired the above abilities.
  • the prediction model M may be configured by a neural network.
  • the number and types of layers constituting the neural network may be appropriately selected according to the embodiment.
  • a neural network comprises one or more layers containing one or more neurons (nodes).
  • nodes When a plurality of layers are provided, typically, each layer is arranged from the input side to the output side, and neurons included in the adjacent layers are appropriately connected to each other.
  • a weight (bonding load) is set for each bond.
  • a threshold is set for each neuron, and the output of each neuron is determined by whether or not the sum of the products of each input and each weight exceeds the threshold.
  • the threshold value may be expressed by an activation function.
  • the control unit 21 inputs each value of the explanatory variable to the neural network for each learning data set, and executes the arithmetic processing of the forward propagation of the neural network. As a result of this arithmetic processing, the control unit 21 acquires an output value (that is, a prediction result) for each value of the explanatory variable. Subsequently, the control unit 21 calculates an error between the obtained output value and the value of the corresponding objective variable, and further calculates the gradient of the calculated error.
  • control unit 21 adjusts the values of the calculation parameters such as the weight of the connection between each neuron and the threshold value of each neuron by back-propagating the gradient of the error calculated by the error back-propagation method.
  • the control unit 21 repeats adjusting the value of the calculation parameter so that the calculated error value becomes small (for example, repeats a predetermined number of times, until the error value becomes equal to or less than the threshold value). This makes it possible to generate a trained predictive model M that has acquired the above abilities.
  • the control unit 21 When the generation of the prediction model M is completed, the control unit 21 generates the learning result data 225 indicating the generated prediction model M.
  • the configuration of the learning result data 225 is not particularly limited as long as it can retain the information for executing the calculation of the prediction, and may be appropriately determined according to the embodiment.
  • the training result data 225 may be composed of information indicating the values of arithmetic parameters such as regression coefficients derived by the machine learning.
  • the training result data 225 contains the values of arithmetic parameters (for example, the weight of the connection between each neuron, the threshold value of each neuron, etc.), and the structure of the neural network.
  • the control unit 21 proceeds to the next step S208.
  • Step S208 the control unit 21 operates as the storage processing unit 215 and stores the result of generating the prediction model M, that is, the learning result data 225 in a predetermined storage area.
  • the predetermined storage area may be, for example, a RAM in the control unit 21, a storage unit 22, an external storage device, a storage medium, or a combination thereof.
  • the storage destination of the learning result data 225 may be the same as or different from the storage destination of the data distribution information 33 or the collection condition information 35.
  • the control unit 21 ends the processing procedure according to this operation example.
  • the generated data distribution information 33, collection condition information 35, and learning result data 225 may be provided to the control device 1 at any timing.
  • the control unit 21 may transfer the data distribution information 33, the collection condition information 35, and the learning result data 225 to the control device 1 as or separately from the processes of steps S206 and S208.
  • the control device 1 may acquire each data by receiving this transfer. Further, for example, the control device 1 may acquire the respective data by accessing the model generation device 2 or the data server via the network by using the communication interface 13. Further, for example, the control device 1 may acquire each data via the storage medium 91. Further, for example, each data may be incorporated in the control device 1 in advance.
  • the methods of providing the data distribution information 33, the collection condition information 35, and the learning result data 225 may be the same or different from each other.
  • control unit 21 may update or newly generate the data distribution information 33, the collection condition information 35, and the learning result data 225 by repeating the processes of steps S201 to S208 periodically or irregularly. At the time of this repetition, at least a part of the actual data 30 and the learning data 31 may be changed, modified, added, deleted, or the like as appropriate. Then, the control unit 21 may provide the updated or newly generated data distribution information 33, the collection condition information 35, and the learning result data 225 to the control device 1 by any method. As a result, each data held by the control device 1 may be updated.
  • FIG. 9 is a flowchart showing an example of a processing procedure related to operation control of the controlled target device 6 by the control device 1 according to the present embodiment.
  • the following processing procedure of the control device 1 is an example of the control method. However, the following processing procedure of the control device 1 is only an example, and each step may be changed as much as possible. Further, regarding the following processing procedure of the control device 1, it is possible to omit, replace, and add steps as appropriate according to the embodiment.
  • the control target device 6 whose operation is controlled by the control device 1 may or may match as an individual with the control target device 6 used for collecting the learning data 31 (actual data 30). It does not have to be.
  • Step S101 the control unit 11 operates as the acquisition unit 111 and acquires the measured value 40 regarding the state of the control target device 6.
  • the type and format of the measured value 40 may be appropriately determined according to the explanatory variables of the prediction model M to be used.
  • the measured value 40 is, for example, a measured value of a controlled amount.
  • a sensor (not shown) may be appropriately used to acquire the measured value 40.
  • the control unit 11 may acquire the measured value 40 directly or indirectly from the sensor.
  • the measured value 40 may be the value of the position (meandering amount) of the end portion in the width direction of the web 69 measured by the edge sensor 65.
  • the control unit 11 can acquire the measured value 40 from the edge sensor 65.
  • the measured value 40 may be composed of measured values of controlled quantities for a plurality of current or past cycles.
  • the measured value 40 may be composed of a feature amount calculated from the measured value of the obtained controlled amount.
  • Step S102 the control unit 11 operates as the evaluation unit 114, and determines whether or not the condition for using the prediction model M (hereinafter, also referred to as “use condition”) satisfies the reliability condition.
  • the control unit 11 can carry out the determination by using at least one of the data distribution information 33 and the collection condition information 35.
  • the control unit 11 refers to the data distribution information 33 and based on whether or not the measured value 40 belongs to the range of the training data 31 used to generate the prediction model M. It is determined whether or not the usage condition of the prediction model M satisfies the reliability condition.
  • the range of the training data 31 is represented by the data distribution
  • whether or not the measured value 40 belongs to the range of the training data 31 may be determined based on whether or not the measured value 40 is included in the data distribution. ..
  • the control unit 11 determines that the usage condition of the prediction model M satisfies the reliability condition.
  • the control unit 11 determines that the usage condition of the prediction model M does not satisfy the reliability condition.
  • the range of the training data 31 is represented by a partitioned data distribution.
  • the control unit 11 identifies the section to which the measured value 40 belongs and refers to the field of the specified section of the data distribution information 33.
  • the control unit 11 determines that the measured value 40 belongs to the range of the training data 31 (that is, the usage condition of the prediction model M determines the reliability condition. Satisfy).
  • the control unit 11 does not belong to the measured value 40 in the range of the training data 31 (that is, the usage condition of the prediction model M). Does not meet the reliability condition).
  • the range of the training data 31 may be represented by the data distribution in this way, it is possible to facilitate the calculation of determining whether or not the measured value 40 belongs to the range of the training data 31.
  • the operation of the determination can be achieved only by referring to the corresponding field of the compartment list. Therefore, by adopting this embodiment for the determination calculation, it can be expected that the load of information processing in step S102 will be reduced and the speed will be increased.
  • the control unit 11 refers to the data distribution information 33, and the operation condition of the controlled target device 6 when controlling the operation is the learning data 31 used to generate the prediction model M. It is determined whether or not the usage condition of the prediction model M satisfies the reliability condition based on whether or not it belongs to the range of the operating condition of the controlled target device 6 at the time of collecting.
  • the operating conditions for controlling the operation are also described as “operating conditions during control”
  • the operating conditions when the training data 31 used for generating the prediction model M are collected are also referred to as "operating conditions during learning”. Describe.
  • Information indicating the operating conditions at the time of control may be appropriately acquired.
  • a sensor (not shown) may be appropriately used to acquire information indicating operating conditions during control.
  • the control unit 11 determines that the usage condition of the prediction model M satisfies the reliability condition. On the other hand, when the operating condition at the time of control does not belong to the range of the operating condition at the time of learning, the control unit 11 determines that the usage condition of the prediction model M does not satisfy the reliability condition.
  • control unit 11 proceeds to the next step S103.
  • step S103 the control unit 11 determines the branch destination of the process according to the result of the determination in step S102.
  • the control unit 11 advances the processing to step S104 and executes the operation control processing using the prediction result 45 by the prediction model M.
  • step S106 the control unit 11 advances the processing to step S106 to execute the operation control processing that does not use the prediction result 45.
  • step S104 the control unit 11 operates as the prediction unit 112, and sets the prediction model M with reference to the learning result data 225. Then, the control unit 11 inputs the measured value 40 into the prediction model M and executes the arithmetic processing of the prediction model M.
  • the arithmetic processing may be appropriately executed according to the configuration of the prediction model M.
  • the control unit 11 substitutes the measured value 40 into the corresponding term of the regression equation and executes the calculation of the regression equation.
  • the control unit 11 inputs the measured value 40 to the input layer of the neural network and executes the arithmetic processing of the forward propagation of the neural network.
  • the control unit 11 can predict the future operation or state of the controlled target device 6 by using the prediction model M. That is, the control unit 11 can acquire the output value corresponding to the prediction result 45 from the prediction model M.
  • the prediction result 45 is any of a predicted value of the controlled amount of the controlled target device 6 in the future control cycle, a correction value for the target value of the controlled amount, a predicted value of the manipulated variable for the controlled target device 6, and a correction value for the manipulated variable. It may be composed of.
  • step S105 the control unit 11 operates as the operation control unit 113, and determines the control command 50 by using the prediction result 45.
  • the method for determining the control command 50 may be appropriately selected according to the configuration of the prediction result 45.
  • four methods that can be adopted in this embodiment will be illustrated as methods for determining the control command 50.
  • FIG. 10A schematically illustrates an example of a method for determining a control command 50 when the prediction result 45 is composed of a predicted value 451 of a controlled variable.
  • the prediction model M1 is configured to predict the value of the control amount in the future control cycle from the measured value of the current or past control amount.
  • This prediction model M1 is an example of the prediction model M.
  • the control unit 11 calculates the predicted value 451 of the control amount in the future control cycle from the measured value 40 of the current or past control amount by using the prediction model M1 by the process of step S104. Further, the control unit 11 acquires the target value 51 of the controlled variable.
  • the method for acquiring the target value 51 is not particularly limited and may be appropriately selected depending on the embodiment.
  • the target value 51 may be stored in a predetermined storage area such as a storage unit 12 or a storage medium 91. In this case, the control unit 11 can acquire the target value 51 from the predetermined storage area.
  • the target value 51 may be specified by the operator. The target value 51 may be given for each control cycle.
  • the control unit 11 corrects the target value 51 according to the predicted value 451.
  • the relationship between the predicted value 451 and the correction amount with respect to the target value 51 may be appropriately determined according to the embodiment.
  • the fact that the predicted value 451 obtained by the prediction model M1 deviates from the target value 51 means that even if the controlled target device 6 is controlled as it is based on the target value 51, the controlled target device 6 behaves deviating from the target value 51.
  • the relationship between the predicted value 451 and the correction amount with respect to the target value 51 is such that when the predicted value 451 is smaller than the target value 51, the target value 51 is corrected to a larger value, and the predicted value 451 is larger than the target value 51.
  • the target value 51 When is large, it may be appropriately determined to correct the target value 51 to a smaller value. As a result, the target value 51 can be corrected so that the controlled object device 6 operates in the behavior desired by the original target value 51.
  • the following formula 1 shows an example of a calculation formula for calculating such a correction amount.
  • R (t) shows the value (correction value 521) of the correction amount at time t.
  • r indicates a constant of proportionality.
  • E (t) indicates a target value 51 at time t.
  • P (t) indicates a predicted value 451 at time t.
  • s indicates a constant term.
  • the degree of correction is determined by the values of the proportionality constant r and the constant term s.
  • the proportionality constant r and the constant term s are examples of correction weights, respectively.
  • the values of the proportionality constant r and the constant term s may be given as appropriate.
  • the values of the proportionality constant r and the constant term s may be given by the operator's specification.
  • the values of the proportionality constant r and the constant term s may be determined based on the result of driving the web transfer device 60 by an actual machine or a simulation. The values of the proportionality constant r and the constant term s may be given for each control cycle.
  • the control unit 11 substitutes the acquired predicted value 451 (P (t)) and the target value 51 (E (t)) into each term of the formula 1 and calculates the calculation formula of the formula 1 to obtain a correction value.
  • 521 (R (t)) is calculated. That is, the control unit 11 calculates the difference between the predicted value 451 and the target value 51, calculates the product of the calculated difference and the proportional constant r, and adds the constant term s to the calculated product.
  • the correction value 521 is calculated. Then, the control unit 11 calculates the corrected target value 523 by adding the calculated correction value 521 to the target value 51. This addition process may be replaced with a subtraction process.
  • the control unit 11 determines the control command 50 for the controlled target device 6 according to the corrected target value 523 and the measured value 40.
  • the control unit 11 calculates the difference between the corrected target value 523 and the measured value 40, and determines the command value 501 of the operation amount according to the calculated difference.
  • a method for determining the command value 501 for example, a known method such as PID control or PI control may be adopted.
  • the command value 501 is an example of the control command 50. In the first method, the control command 50 can be determined by utilizing the prediction result 45 by a series of these processes.
  • the configuration of the control command 50 does not have to be limited to such an example.
  • the control command 50 may be configured with a corrected target value 523.
  • FIG. 10B schematically illustrates an example of a method for determining the control command 50 when the prediction result 45 is composed of a correction value 452 with respect to the target value 51 of the controlled variable.
  • the prediction model M2 is configured to predict the correction amount of the target value of the control amount in the future control cycle from the measured value of the control amount in the present or the past.
  • This prediction model M2 is an example of the prediction model M. That is, the second method corresponds to a form in which the correction value 521 indirectly calculated from the prediction result of the prediction model M1 is directly derived in the first method.
  • step S104 the control unit 11 calculates a correction value 452 for the target value 51 of the control amount in the future control cycle from the measured value 40 of the current or past control amount by using the prediction model M2. .. Further, the control unit 11 appropriately acquires the target value 51 of the control amount, as in the first method. Subsequent processing may be the same as the processing after obtaining the correction value 521 of the first method. That is, the control unit 11 calculates the corrected target value 525 by adding the calculated correction value 452 to the target value 51. This addition process may be replaced with a subtraction process. Next, the control unit 11 determines the control command 50 for the controlled target device 6 according to the corrected target value 626 and the measured value 40.
  • control unit 11 calculates the difference between the corrected target value 525 and the measured value 40, and determines the command value 501 of the operation amount according to the calculated difference.
  • the control command 50 can be determined by utilizing the prediction result 45 by a series of these processes.
  • the control command 50 may be configured with the corrected target value 525.
  • FIG. 10C schematically illustrates an example of a method for determining the control command 50 when the prediction result 45 is composed of the predicted value 453 of the manipulated variable.
  • the prediction model M3 is configured to predict the value of the manipulated variable in the future control cycle from the measured value of the current or past controlled variable. This prediction model M3 is an example of the prediction model M.
  • the control unit 11 calculates the predicted value 453 of the manipulated variable in the future control cycle from the measured value 40 of the current or past controlled variable using the prediction model M3 by the process of step S104. Further, the control unit 11 appropriately acquires the target value 51 of the control amount, as in the first method and the like. Subsequently, the control unit 11 determines the reference value 53 of the operation amount for the controlled target device 6 according to the measured value 40 and the target value 51. As an example, the control unit 11 calculates the difference between the target value 51 and the measured value 40, and determines the reference value 53 of the manipulated variable according to the calculated difference. As a method for determining the reference value 53, for example, a known method such as PID control or PI control may be adopted in the same manner as the first method or the like.
  • the control unit 11 determines the command value 501 of the operation amount by correcting the reference value 53 according to the obtained predicted value 453.
  • the relationship between the predicted value 453 and the correction amount with respect to the reference value 53 may be appropriately determined according to the embodiment.
  • the value of the correction amount (correction value 541) with respect to the reference value 53 may be determined so as to reduce the deviation between the predicted value 453 and the reference value 53.
  • the control unit 11 may calculate the difference between the predicted value 453 and the reference value 53, and multiply the calculated difference by the proportionality constant. Subsequently, the control unit 11 may calculate the correction value 541 by adding a constant term to the obtained product.
  • control unit 11 can calculate the command value 501 (corrected command value) of the operation amount by adding the calculated correction value 541 to the reference value 53. Note that this addition process may be replaced with a subtraction process.
  • the control command 50 can be determined by utilizing the prediction result 45 by a series of these processes.
  • FIG. 10D schematically illustrates an example of a method for determining the control command 50 when the prediction result 45 is composed of the correction value 454 for the manipulated variable.
  • the prediction model M4 is configured to predict the correction amount of the manipulated variable in the future control cycle from the measured value of the current or past controlled variable.
  • This prediction model M4 is an example of the prediction model M. That is, the fourth method corresponds to a form in which the correction value 541 indirectly calculated from the prediction result of the prediction model M3 by the third method is directly derived.
  • the control unit 11 calculates a correction value 454 with respect to the reference value 53 of the manipulated variable in the future control cycle from the measured value 40 of the current or past controlled variable using the prediction model M4. ..
  • the reference value 53 may be appropriately calculated from the target value 51 and the measured value 40 in the same manner as in the third method.
  • Subsequent processing may be the same as the processing after obtaining the correction value 541 of the third method. That is, the control unit 11 can calculate the command value 501 (corrected command value) of the operation amount by adding the calculated correction value 454 to the reference value 53. Note that this addition process may be replaced with a subtraction process.
  • the control command 50 can be determined by utilizing the prediction result 45 by a series of these processes.
  • control unit 11 can determine the control command 50 by using the prediction result 45 by adopting any of the above four methods.
  • control unit 11 proceeds to the next step S107.
  • Step S106 the control unit 11 operates as the motion control unit 113, and determines the control command 50 without using the prediction result 45 by the prediction model M.
  • the control command 50 may be determined by any method.
  • the control command 50 may be determined by the same method as the method for determining the reference value 53. That is, the control unit 11 may appropriately acquire the target value of the control amount. Then, the control unit 11 may calculate the difference between the measured value 40 and the target value, and determine the command value of the operation amount according to the calculated difference.
  • a method for determining this command value for example, a known method such as PID control or PI control may be adopted.
  • the operation amount command value is an example of the control command 50.
  • the control unit 11 may configure the control command 50 based on the acquired target value of the control amount. When the control command 50 is determined, the control unit 11 proceeds to the next step S107.
  • Step S107 the control unit 11 operates as the operation control unit 113, and controls the operation of the control target device 6 based on the determined control command 50.
  • the control unit 11 transmits the control command 50 to the control target device 6.
  • the control target device 6 receives the control command 50 and operates in accordance with the received control command 50.
  • the control target device 6 may drive an operation element (operation unit) such as a motor according to the given command value.
  • the controlled variable device 6 commands the manipulated variable according to the measured value of the controlled variable and the given target value by the same method as described above. The value may be determined. Then, the controlled object device 6 may drive the operating element according to the determined command value. Thereby, the operation of the controlled object device 6 can be controlled.
  • the position (meandering amount) of the end portion in the width direction of the web 69 can be controlled by driving the actuator 643 of the correction mechanism 64 based on the control command 50.
  • the control unit 11 ends the processing procedure according to this operation example.
  • control unit 11 may repeat the execution of the processes of steps S101 to S107. As a result, the control device 1 can continuously control the operation of the controlled device 6.
  • the control device 1 determines whether or not the usage conditions of the prediction model M satisfy the reliability condition by the processing of step S102. Then, when it is determined that the usage condition of the prediction model M does not satisfy the reliability condition, the control device 1 avoids the execution of the processes of step S104 and step S105, so that the prediction result 45 by the prediction model M 45. Stop using. As a result, the control device 1 according to the present embodiment stops the execution of the prediction control by the prediction model M in the situation where the operation control of the controlled target device 6 tends to be unstable due to the prediction by the prediction model M being erroneous. Can be done. Therefore, according to the present embodiment, in the control device 1, it is possible to improve the stability of the operation control of the control target device 6 using the prediction model M.
  • the measured value of the controlled variable is input to the prediction model M.
  • the input of the prediction model M does not have to be limited to such an example.
  • Other information other than the measured value of the controlled variable may be further input to the prediction model M.
  • the prediction model M may be configured to further accept input of information regarding operating conditions in addition to the measured value of the controlled variable. This can be expected to improve the prediction accuracy of the prediction model M.
  • the data distribution information 33 indicates the range of the training data 31 by the partitioned data distribution.
  • the method of expressing the range of the training data 31 does not have to be limited to such an example.
  • a method for expressing the range of the training data 31 for example, a k-means method, a k-nearest neighbor method, a LOF (local outlier factor) method, or the like may be adopted.
  • step S205 the control unit 21 first plots the learning data 31 on the data space.
  • the control unit 21 divides the training data 31 into an arbitrary number (k) of clusters, and searches for a valid representative point of each cluster from each plot point.
  • the control unit 21 determines the distance from each representative point (hereinafter, referred to as “threshold distance”) in order to define the range of each cluster.
  • the number of clusters, representative points and threshold distances may be determined as appropriate.
  • the control unit 21 issues information indicating the range of each cluster, that is, information indicating the coordinates of each representative point and the threshold distance as data distribution information 33.
  • step S102 the control unit 11 calculates the distance between the representative point of each cluster and the point corresponding to the measured value 40, and compares the calculated distance with the threshold distance of each cluster.
  • the control unit 11 can determine that the measured value 40 belongs to the range of the learning data 31.
  • the control unit 11 can determine that the measured value 40 does not belong to the range of the learning data 31.
  • step S205 the control unit 21 first plots the learning data 31 on the data space. Next, the control unit 21 determines the number (k) of the nearest neighbor points used for calculating the outlier score. Further, the control unit 21 appropriately generates a pseudo input. Then, the control unit 21 calculates an outlier score from the generated pseudo input point and k plot points closest to the input point, and based on the calculated outlier score, the learning data 31 A threshold value (hereinafter referred to as "score threshold value”) that defines the range of the above is determined. The number of nearest emphasis marks and the score threshold may be appropriately determined.
  • the control unit 21 issues information indicating the coordinates of each plot point of the learning data 31, the number of nearest neighbor points (k), and the score threshold value as the data distribution information 33.
  • the control unit 11 extracts k plot points closest to the points corresponding to the measured values 40 from each plot point of the training data 31.
  • the control unit 11 calculates the outlier score of the measured value 40 from the extracted k plot points and the points corresponding to the measured value 40.
  • the control unit 11 compares the calculated outlier score with the score threshold value. When the calculated outlier score is equal to or less than the score threshold value, the control unit 11 can determine that the measured value 40 belongs to the range of the learning data 31. On the other hand, when the calculated outlier score is larger than the score threshold value, the control unit 11 can determine that the measured value 40 does not belong to the range of the learning data 31.
  • the trained model generated by machine learning may be used for the process of determining whether or not the measured value 40 belongs to the range of the training data 31 used to generate the prediction model M. ..
  • the model generator 2 uses the training data 31 (specifically, the data used as training data in the machine learning of the prediction model 5) to generate a one-class classifier such as a one-class support vector machine. You may.
  • the data distribution information 33 may include information for reproducing the generated one-class classifier.
  • the control device 1 may use this one-class classifier to determine whether or not the measured value 40 belongs to the range of the training data 31 used to generate the prediction model M.
  • FIG. 11 schematically illustrates an example of a method for generating a trained model that can be used as a one-class classifier.
  • the generative model 331 is configured to generate pseudo data from noise (latent variables).
  • the discriminative model 332 is configured to identify the origin of the input data (whether the input data is pseudo data from the learning data 31).
  • the model generator 2 uses the pseudo data and the training data 31 generated by the generated model 331 as input data, and trains the discriminative model 332 so that the error of the result of identifying the input data is small. ..
  • the model generation device 2 trains the generation model 331 so that the identification model 332 generates pseudo data in which the identification is erroneous (that is, the discrimination error with respect to the pseudo data becomes large).
  • the generative model 331 and the discriminative model 332 may be configured by any machine learning model such as a neural network.
  • the machine learning model comprises one or more arithmetic parameters. In each training, the values of the arithmetic parameters are adjusted to obtain the desired output.
  • a known method such as an error back propagation method may be adopted.
  • the discriminative model 332 acquires the ability to discriminate whether or not the input data belongs to the learning data 31 according to the ability to generate the pseudo data of the generation model 331.
  • the generation model 331 acquires the ability to generate pseudo data similar to the training data 31 according to the discriminative ability of the discriminative model 332.
  • the model generation device 2 alternately and repeatedly executes the training of the discriminative model 332 and the generation model 331. That is, the model generator 2 performs hostile learning between the generative model 331 and the discriminative model 332.
  • the generative model 331 acquires the ability to generate pseudo data very close to the training data 31, and the discriminative model 332 accurately identifies whether or not the input data belongs to the training data 31. Acquire abilities.
  • This trained discriminative model 332 can be used as a one-class discriminator. That is, the model generator 2 may issue data distribution information 33 including information for reproducing the trained discriminative model 332.
  • the control device 1 inputs the measured value 40 into the trained discriminative model 332 and executes the arithmetic processing of the trained discriminative model 332. Based on the output of the trained discriminative model 332 obtained by this arithmetic processing, the control device 1 determines whether or not the measured value 40 belongs to the range of the training data 31 used for generating the prediction model M. May be good.
  • the measured value 40 is directly used for determining whether or not the learning data 31 belongs to the range.
  • the method for determining whether or not the measured value 40 belongs to the range of the training data 31 does not have to be limited to such an example.
  • the training data 31 and the measured value 40 may be mapped to the feature space. In this case, it may be determined whether or not the measured value 40 belongs to the range of the learning data 31 in the feature amount space.
  • FIGS. 12A and 12B schematically illustrate an example of a method of generating an encoder 334 for mapping into a feature space by machine learning.
  • the decoder 335 and the discriminative model 336 are also trained.
  • the encoder 334 is configured to convert the input data into a feature amount.
  • the decoder 335 is configured to decode the original input data from the features obtained by the encoder 334.
  • the discriminative model 336 is configured to discriminate input data based on the features obtained by the encoder 334.
  • the model generator 2 uses the training data 31 (specifically, the data used as training data in the machine learning of the prediction model 5) of the encoder 334 and the decoder 335. Perform self-supervised learning. That is, the model generation device 2 converts the learning data 31 into a feature amount by giving the learning data 31 to the encoder 334. The model generation device 2 generates decoded data by giving the obtained features to the decoder 335. The model generator 2 trains the encoder 334 and the decoder 335 so that the error (ie, reconstruction error) between the generated decoded data and the training data 31 is small.
  • the error ie, reconstruction error
  • the model generator 2 uses the training data 31 to perform hostile learning of the encoder 334 and the discriminative model 336. Specifically, the model generation device 2 converts the training data into a feature amount by giving the training data to the encoder 334. The model generation device 2 obtains the result of discriminating the training data by giving the obtained feature amount to the discriminative model 336. The model generator 2 trains the discriminative model 336 so that the error between the discriminative result and the correct answer becomes small after fixing the values of the arithmetic parameters of the encoder 334.
  • the discriminative content of the discriminative model 336 is not particularly limited and may be appropriately selected.
  • the discriminative model 336 may be configured to identify, for example, objective variables, collection conditions, other environments (eg, date and time when data was acquired, location, etc.), and information indicating the correct answer (correct answer data, label, etc.). (May be referred to as a teacher signal or the like) may be appropriately associated with the training data.
  • the model generation device 2 converts the training data into a feature amount by giving the training data to the encoder 334.
  • the model generation device 2 obtains the result of discriminating the training data by giving the obtained feature amount to the discriminative model 336.
  • the model generator 2 fixes the values of the arithmetic parameters of the discriminative model 336, and then trains the encoder 334 so that the discriminative result is erroneous.
  • dummy information different from the correct answer information may be appropriately given.
  • the dummy information may be composed of, for example, correct answer information of different data sets, arbitrary information (for example, randomly generated numerical information), and the like.
  • the model generator 2 may train the encoder 334 so that the error between the identification result and the dummy information is small.
  • the training method of the encoder 334 does not have to be limited to such an example.
  • the model generator 2 may train the encoder 334 so that the error between the identification result and the correct answer is large.
  • the model generator 2 alternately and repeatedly executes training of the discriminative model 336 and training of the encoder 334. As a result, the model generator 2 uses the training data 31 to perform hostile learning of the encoder 334 and the discriminative model 336.
  • the encoder 334, the decoder 335, and the discriminative model 336 may be configured by any machine learning model such as a neural network.
  • the machine learning model comprises one or more arithmetic parameters.
  • the values of the arithmetic parameters are adjusted to obtain the desired output.
  • a known method such as an error back propagation method may be adopted.
  • the order of each training of the encoder 334, the decoder 335, and the discriminative model 336 may be arbitrary.
  • the processing of each training may be performed at least partially simultaneously. Each training may be performed repeatedly.
  • the decoder 335 acquires the ability to decode the training data 31 (training data) from the feature amount by training the encoder 334 and the decoder 335, useful information for decoding the training data 31 (training data) is obtained.
  • the encoder 334 acquires the ability to convert the input data into the feature quantity so as to be included in the feature quantity.
  • the discriminative model 336 due to the hostile learning of the encoder 334 and the discriminative model 336, it becomes difficult for the feature amount obtained by the encoder 334 to include information useful for the discriminative model 336.
  • the discriminative model 336 is configured to identify the environment of the input data, the features obtained by the encoder 334 are less likely to include information about that environment. Therefore, it is preferable that the discriminative content of the discriminative model 336 is selected with respect to the bias to be removed from the feature amount.
  • FIG. 13A schematically illustrates an example of the feature space mapped by the trained encoder 334.
  • the trained encoder 334 maps the data belonging to the training data 31 to a position close to the identification hyperplane (for example, the point s1 in the figure), whereas the unknown data does not belong to the training data 31. Is mapped to a position away from the identification hyperplane (eg, point s2 in the figure). Therefore, according to the features obtained by the trained encoder 334, it is based on the distance between the distribution of the features obtained from the discriminant superplane or the training data 31 and the features obtained from the target data (measured value 40). Therefore, it can be determined whether or not the target data belongs to the training data 31.
  • the threshold may be determined as appropriate.
  • the model generator 2 includes a trained encoder 334, a distribution of training data 31 in the feature space, or a discriminant hyperplane of the trained discriminant model 336, and a data distribution containing information indicating a threshold.
  • Information 33 may be issued.
  • the feature quantity space is represented by two dimensions (x1 and x2 indicate the feature quantity dimension), and the discriminative hyperplane of the trained discriminative model 336 is represented by an arc.
  • the dimension of the feature space may be selected as appropriate.
  • the discriminating hyperplane may be determined as appropriate as a result of the above training.
  • step S102 the control device 1 uses the trained encoder 334 to determine whether or not the measured value 40 belongs to the range of the training data 31 used to generate the prediction model M.
  • An example of the processing process is schematically illustrated.
  • the control unit 11 converts the measured value 40 into a feature amount by giving the measured value 40 to the trained encoder 334. Then, the control unit 11 operates as a determination device 337, calculates the distance between the obtained feature amount and the distribution of the discrimination hyperplane or the learning data 31, and compares the calculated distance with the threshold value. The control unit 11 determines whether or not the measured value 40 belongs to the range of the learning data 31 according to the result of this comparison.
  • the control unit 11 can determine that the measured value 40 belongs to the range of the learning data 31.
  • the control unit 11 can determine that the measured value 40 does not belong to the range of the learning data 31.
  • the above methods such as the k-means method, the k-nearest neighbor method, and the LOF (local outlier factor) method may be used for the determination.
  • the determination device 337 may be configured by a one-class classifier such as a one-class support vector machine. In this case, the model generator 2 may generate the determiner 337 along with the generation of the trained encoder 334.
  • the determination device 337 may be configured by any machine learning model.
  • the data distribution information 33 may be configured to include information for reproducing the trained encoder 334 and the determiner 337.
  • the controlled object device 6 does not have to be limited to the web transport device 60, the controlled object does not have to be limited to the position of the end portion in the width direction of the web 69, and the operating element is the correction mechanism 64. It does not have to be limited to the actuator 643 of.
  • the controlled object device 6 may be a press machine driven by a servomotor. In this case, the operation amount may be the position of the mold by the servomotor (slider position), and the control amount may be the thickness of the product by compression processing.
  • step S102 when it is determined in step S102 that the condition for using the prediction model M does not satisfy the reliability condition, the control device 1 processes the step S106 and gives a control command without using the prediction result 45. 50 has been decided.
  • the form of stopping the use of the prediction result 45 does not have to be limited to such an example.
  • the control device 1 may omit the processes of steps S106 and S107 and stop the process itself for controlling the operation of the controlled device 6.
  • the arithmetic processing of the prediction model M may be executed.
  • the control device 1 is configured to determine the control command 50 and control the operation of the controlled target device 6 based on the determined control command 50.
  • the configuration of the control device 1 does not have to be limited to such an example.
  • the process of determining the control command 50 and the process of controlling the operation of the controlled object device 6 may be executed by separate computers.
  • the control device 1 is composed of a higher-level controller configured to determine the control command 50 and a lower-level controller configured to control the operation of the controlled target device 6 in response to the determined control command 50. good.
  • Each controller may be composed of one or a plurality of computers.
  • FIG. 14 schematically illustrates an example of the software configuration of the upper controller 1A according to this modification.
  • the upper controller 1A is connected to the lower controller 101, and the lower controller 101 is connected to the controlled device 6.
  • the hardware configuration of the upper controller 1A and the lower controller 101 may be the same as that of the control device 1 according to the above embodiment.
  • the software configuration of the host controller 1A may be the same as that of the control device 1 according to the above embodiment, except that the operation control unit 113 is replaced with the operation determination unit 113A.
  • the operation determination unit 113A is configured to output the determined control command 50 to the lower controller 101 instead of the processing of the operation control unit 113 that controls the operation of the control target device 6. Except for this point, the operation determination unit 113A is configured to execute the same processing as the operation control unit 113. That is, the operation determination unit 113A is configured to determine the control command 50 for the control target device 6 by using the prediction result 45.
  • the lower controller 101 is configured to execute the processing of the operation control unit 113 that controls the operation of the controlled target device 6. That is, the lower controller 101 is configured to receive the control command 50 from the upper controller 1A and control the operation of the controlled target device 6 based on the control command 50.
  • the host controller 1A executes the processes of steps S101 to S106 in the same manner as in the above embodiment.
  • step S105 and step S106 the control unit of the host controller 1A operates as the operation determination unit 113A and determines the control command 50.
  • the control unit of the upper controller 1A outputs the determined control command 50 to the lower controller 101 instead of the process of step S107.
  • the control unit of the lower controller 101 acquires the control command 50 from the upper controller 1A, and controls the operation of the controlled target device 6 based on the acquired control command 50.
  • a conventional controller can be used for the lower controller 101. Therefore, the introduction cost of the present invention can be suppressed.
  • Preservation processing unit 225 ... Learning result data, 30 ... Actual data, 31 ... Learning data, 33 ... Data distribution information, 35 ... Collection condition information, 40 ... measured value, 45 ... (predicted) result, 50 ... Control command, 6 ... Control target device, M ... Prediction model

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Feedback Control In General (AREA)

Abstract

本発明の一側面に係る制御装置は、制御対象装置の状態に関する測定値を取得し、予測モデルを使用して、取得された測定値から未来の動作又は状態に関する予測を行い、予測の結果を利用して、制御対象装置に対する制御指令を決定することで、予測制御を実施可能に構成される。更に、制御装置は、予測モデルの使用条件が信頼性条件を満たすか否かを判定し、信頼性条件を満たさないと判定される場合に、予測の結果の利用を停止することで、予測制御の実施を回避可能に構成される。

Description

制御装置、上位コントローラ、制御方法、及び制御プログラム
 本発明は、制御装置、上位コントローラ、制御方法、及び制御プログラムに関する。
 制御対象装置の動作を制御するために、PLC(programmable logic controller)等のコントローラが一般的に利用されている。従来、コントローラの計算能力が限られていたため、コントローラは、PID(Proportional-Integral-Differential)制御等の演算の比較的に簡単な制御方法により、制御対象装置の動作を制御するように構成されていた。しかしながら、近年、コントローラの計算能力が向上したことにより、予測モデルを利用した高度な制御方法の実装が可能となった。
 例えば、特許文献1では、化学プラント、製油所等の工場プロセスの制御に利用するPLCに予測モデルを実装する方法が提案されている。具体的には、システムプロセスの動作結果を示すデータを収集し、得られたデータに基づいて、システムの状態を予測する予測モデルを生成し、生成した予測モデルを利用して、システムの制御を最適化することが提案されている。この方法によれば、予測モデルを利用することで、生産ラインのプロセスを最適化し、品質の悪い製品が製造される確率を低減することができる。また、予測モデルを利用することで、生産ラインの立ち上げ又は段取り替えにかかる時間の短縮化を図ることができる。
 しかしながら、予測モデルによりシステムの状態を予測する際に、ノイズ等に起因する異常値(外れ値)を利用すると、制御対象装置の動作が不安定になってしまう可能性がある。そこで、特許文献2では、予測モデルの生成及び使用の際に異常値を除外することが提案されている。具体的には、特許文献2で提案される機械学習装置は、入力データを取得する状態観測部と、入力データにおける異常を検出し、安全な入力データを出力する入力安全回路と、安全な入力データに基づいて、学習モデルの学習及び学習モデルを用いた推論を実行し、推論結果としての推論データを出力する機械学習部と、推論データにおける異常を検出し、安全な推論データを出力する出力安全回路と、安全な推論データに基づく出力データを出力する出力部と、を備える。この装置によれば、異常値を用いないことにより、制御対象装置の動作制御の安定性を確保することができる。
米国特許出願公開第2014/0297002号明細書 特開2019-086928号公報
 本件発明者らは、予測モデルを利用した制御方法には、上記異常値の問題以外に、次のような問題があることを見出した。すなわち、予測モデルの性能は、予測モデルの生成に使用された学習データに依存する。また、予測モデルの内部的な振る舞いは隠蔽されることが多く、異常値を除外しても、予測モデルによる予測には誤りが生じ得る。誤った予測の結果をそのまま利用した場合には、適切でない制御指令を生成してしまう可能性があり、これに起因して、制御対象装置の動作制御が不安定になってしまうという問題が生じてしまう。
 本発明は、一側面では、このような事情を鑑みてなされたものであり、その目的は、予測モデルを用いた制御対象装置の動作制御の安定性の向上を図る技術を提供することである。
 本発明は、上述した課題を解決するために、以下の構成を採用する。
 すなわち、本発明の一側面に係る制御装置は、制御対象装置の状態に関する測定値を取得する取得部と、予測モデルを使用して、取得された前記測定値から、前記制御対象装置の未来の動作又は状態に関する予測を行う予測部と、前記予測の結果を利用して、前記制御対象装置に対する制御指令を決定し、かつ決定された制御指令に基づいて、前記制御対象装置の動作を制御する動作制御部と、前記予測モデルを使用する条件が信頼性条件を満たすか否かを判定する評価部と、を備える。そして、前記予測モデルを使用する条件が信頼性条件を満たさないと判定された場合に、前記動作制御部は、前記予測の結果の利用を停止する。
 当該構成によれば、予測モデルを利用することで、制御対象装置のプロセスを最適化することができる。例えば、制御対象装置が生産装置である場合、品質の悪い製品が製造される確率を低減することができる。また、予測モデルを利用することで、制御対象装置の立ち上げ又は段取り替えにかかる時間の短縮化を期待することができる。更には、当該構成では、予測モデルを使用する条件が信頼性条件を満たすか否かを判定し、満たさないと判定された場合には、予測結果の利用を停止する。これにより、予測モデルによる予測が誤りやすい場面において、その予測結果を利用した動作制御が実施されないようにすることができる。すなわち、制御対象装置の動作制御が不安定になりやすい場面において、予測モデルによる予測制御の実施を停止することができる。したがって、本実施形態によれば、予測モデルを用いた制御対象装置の動作制御の安定性の向上を図ることができる。
 上記一側面に係る制御装置において、前記予測モデルを使用する条件が信頼性条件を満たすか否かは、前記予測モデルの生成に使用された学習データの範囲に取得された前記測定値が属するか否かに基づいて判定されてよい。一般的に、予測モデルの性能は、学習データに依存する。予測モデルの生成に使用された学習データの範囲から説明変数の値が逸脱する(すなわち、未知である)ほど、その説明変数の値に対する予測モデルの予測精度は低くなる可能性が高い。一方で、説明変数の値が学習データの範囲に属する場合には、予測モデルの予測精度が高くなるのは当然である。当該構成によれば、この観点に基づいて、予測モデルを使用する条件の信頼性を適切に評価することができ、これによって、予測モデルを用いた制御対象装置の動作制御の安定性の向上を図ることができる。
 上記一側面に係る制御装置において、前記学習データの範囲はデータ分布により表現されてよく、前記学習データの範囲に前記測定値が属するか否かは、前記データ分布に前記測定値が含まれるか否かに基づいて判定されてよい。当該構成によれば、学習データの範囲をデータ分布により表現することで、学習データの範囲に測定値が属するか否かの演算を容易化することができる。これにより、予測モデルの信頼性を評価する情報処理の負荷の低減及び高速化を期待することができる。
 上記一側面に係る制御装置において、前記予測モデルを使用する条件が信頼性条件を満たすか否かは、動作を制御する際の前記制御対象装置の動作条件が、前記予測モデルの生成に使用された学習データを収集した際の制御対象装置の動作条件の範囲に属するか否かに基づいて判定されてよい。予測モデルを使用する環境が学習環境から乖離するほど、予測モデルの生成の際に考慮されていない事象が生じやすく、これに起因して、予測モデルの予測精度は低くなる可能性が高い。一方で、予測モデルを使用する環境が学習環境の範疇であれば、そのような事象は生じ難く、予測モデルの予測精度が高くなるのは当然である。当該構成によれば、この観点に基づいて、予測モデルを使用する条件の信頼性を適切に評価することができ、これによって、予測モデルを用いた制御対象装置の動作制御の安定性の向上を図ることができる。
 上記一側面に係る制御装置において、前記制御対象装置の状態に関する前記測定値は、前記制御対象装置の制御量の測定値であってよい。当該構成によれば、制御対象装置の未来の動作又は状態に関する予測を制御量の測定値から行う形態において、予測モデルを用いた制御対象装置の動作制御の安定性の向上を図ることができる。
 上記一側面に係る制御装置において、前記制御対象装置の未来の動作又は状態に関する予測の結果は、前記制御対象装置の制御量の予測値、制御量の目標値に対する補正値、前記制御対象装置に対する操作量の予測値、及び操作量に対する補正値のいずれかにより構成されてよい。当該構成によれば、制御対象装置の制御量の予測値、制御量の目標値に対する補正値、制御対象装置に対する操作量の予測値、及び操作量に対する補正値のいずれかに基づいて予測制御を行う形態において、予測モデルを用いた制御対象装置の動作制御の安定性の向上を図ることができる。
 上記各形態に係る制御装置は、制御対象装置の動作を制御する動作制御部を備えている。しかしながら、本発明は、このような形態に限られなくてよい。本発明の一側面は、上記いずれかの形態に係る制御装置の動作制御部を、制御指令を下位コントローラに出力する動作決定部に置き換えることで構成されてよい。例えば、本発明の一側面に係る上位コントローラは、制御対象装置の状態に関する測定値を取得する取得部と、予測モデルを使用して、取得された前記測定値から、前記制御対象装置の未来の動作又は状態に関する予測を行う予測部と、前記予測の結果を利用して、前記制御対象装置に対する制御指令を決定し、かつ決定された制御指令を下位コントローラに出力する動作決定部と、前記予測モデルを使用する条件が信頼性条件を満たすか否かを判定する評価部と、を備える。前記予測モデルを使用する条件が信頼性条件を満たさないと判定された場合に、前記動作決定部は、前記予測の結果の利用を停止する。
 また、上記各形態に係る制御装置及び上位コントローラの別の態様として、本発明の一側面は、以上の各構成を実現する情報処理方法であってもよいし、プログラムであってもよいし、このようなプログラムを記憶した、コンピュータ等が読み取り可能な記憶媒体であってもよい。ここで、コンピュータ等が読み取り可能な記憶媒体とは、プログラム等の情報を、電気的、磁気的、光学的、機械的、又は、化学的作用によって蓄積する媒体である。
 例えば、本発明の一側面に係る制御方法は、コンピュータが、制御対象装置の状態に関する測定値を取得するステップと、予測モデルを使用して、取得された前記測定値から、前記制御対象装置の未来の動作又は状態に関する予測を行うステップと、前記予測の結果を利用して、前記制御対象装置に対する制御指令を決定するステップと、決定された制御指令に基づいて、前記制御対象装置の動作を制御するステップと、前記予測モデルを使用する条件が信頼性条件を満たすか否かを判定するステップと、を実行する情報処理方法であって、前記予測モデルを使用する条件が信頼性条件を満たさないと判定された場合に、前記コンピュータは、前記予測の結果の利用を停止する、情報処理方法である。
 また、例えば、本発明の一側面に係る制御プログラムは、コンピュータに、制御対象装置の状態に関する測定値を取得するステップと、予測モデルを使用して、取得された前記測定値から、前記制御対象装置の未来の動作又は状態に関する予測を行うステップと、前記予測の結果を利用して、前記制御対象装置に対する制御指令を決定するステップと、決定された制御指令に基づいて、前記制御対象装置の動作を制御するステップと、前記予測モデルを使用する条件が信頼性条件を満たすか否かを判定するステップと、を実行させるためのプログラムであって、前記予測モデルを使用する条件が信頼性条件を満たさないと判定された場合に、前記コンピュータに、前記予測の結果の利用を停止させる、プログラムである。
 本発明によれば、予測モデルを用いた制御対象装置の動作制御の安定性の向上を図ることができる。
図1は、本発明が適用される場面の一例を模式的に例示する。 図2は、実施の形態に係る制御装置のハードウェア構成の一例を模式的に例示する。 図3Aは、実施の形態に係る制御対象装置の一例を模式的に例示する。 図3Bは、実施の形態に係る制御対象装置の一例を模式的に例示する。 図4は、実施の形態に係るモデル生成装置のハードウェア構成の一例を模式的に例示する。 図5は、実施の形態に係る制御装置のソフトウェア構成の一例を模式的に例示する。 図6は、実施の形態に係るモデル生成装置のソフトウェア構成の一例を模式的に例示する。 図7は、実施の形態に係るモデル生成装置の処理手順の一例を示すフローチャートである。 図8Aは、実施の形態に係る実績データの一例を模式的に例示する。 図8Bは、実施の形態に係る学習データの一例を模式的に例示する。 図8Cは、実施の形態に係るデータ分布情報の一例を模式的に例示する。 図8Dは、実施の形態に係る収集条件情報の一例を模式的に例示する。 図9は、実施の形態に係る制御装置の処理手順の一例を示すフローチャートである。 図10Aは、実施の形態に係る予測モデルによる予測の結果を利用して制御指令を決定する方法の一例を模式的に例示する。 図10Bは、実施の形態に係る予測モデルによる予測の結果を利用して制御指令を決定する方法の一例を模式的に例示する。 図10Cは、実施の形態に係る予測モデルによる予測の結果を利用して制御指令を決定する方法の一例を模式的に例示する。 図10Dは、実施の形態に係る予測モデルによる予測の結果を利用して制御指令を決定する方法の一例を模式的に例示する。 図11は、他の形態に係るデータ分布の識別モデルを生成する方法の一例を模式的に例示する。 図12Aは、他の形態に係るエンコーダを生成する方法の一例を模式的に例示する。 図12Bは、他の形態に係るエンコーダを生成する方法の一例を模式的に例示する。 図13Aは、他の形態に係るエンコーダにより写像される特徴量空間におけるデータ分布の一例を模式的に例示する。 図13Bは、他の形態に係る信頼性条件を満たすか否か判定する処理過程の一例を模式的に例示する。 図14は、他の形態に係る上位コントローラのソフトウェア構成の一例を模式的に例示する。
 以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。ただし、以下で説明する本実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
 §1 適用例
 図1は、本実施形態に係る制御システムの適用場面の一例を模式的に例示する。図1に示されるとおり、本実施形態に係る制御システムは、制御装置1及びモデル生成装置2を備えている。
 本実施形態に係る制御装置1は、予測モデルMを用いて、制御対象装置6の予測制御を実施するように構成されたコンピュータである。まず、制御装置1は、制御対象装置6の状態に関する測定値40を取得する。続いて、制御装置1は、予測モデルMを使用して、取得された測定値40から、制御対象装置6の未来の動作又は状態に関する予測を行う。そして、制御装置1は、予測モデルMによる予測の結果45を利用して、制御対象装置6に対する制御指令50を決定し、決定された制御指令50に基づいて、制御対象装置6の動作を制御する。これらの一連の処理により、本実施形態に係る制御装置1は、予測モデルMを用いて、制御対象装置6の予測制御を実施する。
 更に、本実施形態に係る制御装置1は、上記制御対象装置6の予測制御を実施する際に、予測モデルMを使用する条件が信頼性条件を満たすか否かを判定する。信頼性条件は、予測モデルMが正しく予測を実行可能か否か(すなわち、予測モデルMの予測精度が著しく低下しないかどうか)、予測モデルMを使用する条件から評価するように適宜規定されてよい。予測モデルMを使用する条件が信頼性条件を満たさないと判定された場合、制御装置1は、上記制御対象装置6の動作制御における予測の結果45の利用を停止する。
 なお、制御対象装置6は、コンピュータにより動作を制御可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。制御対象装置6は、例えば、ウェブ搬送装置、プレス機、射出成形機、NC旋盤、放電加工機、包装機等の生産ラインで利用される比較的に小規模な生産装置であってもよい。測定値40は、制御対象装置6の未来の動作又は状態に関する予測に説明変数として利用可能であれば、その種類及び形式は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。測定値40は、例えば、制御量の測定値であってよい。測定値40は、特徴量に変換されたものを含んでもよい。予測の結果45は、制御対象装置6の予測制御に利用可能であれば、その種類及び形式は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。予測の結果45は、例えば、制御対象装置6の制御量の予測値、制御量の目標値に対する補正値、制御対象装置6に対する操作量の予測値、及び操作量に対する補正値のいずれかにより構成されてよい。制御量は、例えば、モータの回転角度、回転速度等の制御の対象となる量である。操作量は、例えば、モータの電圧等の制御対象装置に与える量である。以下では、説明の便宜上、本実施形態の一例として、ウェブ搬送装置を制御対象装置6に採用し、ウェブの幅方向の位置を予測制御する事例を説明する。詳細は後述する。
 一方、モデル生成装置2は、上記予測制御に利用可能な予測モデルMを生成するように構成されたコンピュータである。モデル生成装置2は、学習データ31を収集する。モデル生成装置2は、得られた学習データ31を使用して、予測モデルMを生成する。予測モデルMは、学習データ31に基づいて、制御対象装置6の未来の動作又は状態に関する予測を行う能力を獲得するように生成される。当該能力を獲得可能であれば、予測モデルMの構成は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。予測モデルMは、例えば、データテーブル、関数式、ルール等により構成されてよい。予測モデルMは、1つ以上の演算パラメータを備える機械学習モデルにより構成されてよい。機械学習モデルの種類は、任意に選択されてよい。機械学習モデルの一例として、例えば、回帰モデル、ニューラルネットワーク、決定木モデル、サポートベクタマシン等を挙げることができる。予測モデルMを生成する方法は、予測モデルMの構成に応じて適宜選択されてよい。予測モデルMは、例えば、人手によるルール化、機械学習等の方法により生成されてよい。これにより、上記予測制御に利用可能な予測モデルMが生成される。
 以上のとおり、本実施形態では、制御装置1は、予測モデルMを使用する条件が信頼性条件を満たすか否かを判定する。そして、予測モデルMを使用する条件が信頼性条件を満たさないと判定した場合には、制御装置1は、制御指令50を決定するのに予測の結果45を利用することを停止する。これにより、本実施形態に係る制御装置1は、予測モデルMによる予測が誤ることで制御対象装置6の動作制御が不安定になりやすい場面において、予測モデルMによる予測制御の実施を停止することができる。したがって、本実施形態によれば、制御装置1において、予測モデルMを用いた制御対象装置6の動作制御の安定性の向上を図ることができる。
 なお、図1の例では、制御装置1及びモデル生成装置2は、ネットワークを介して互いに接続されている。ネットワークの種類は、例えば、インターネット、無線通信網、移動通信網、電話網、専用網等から適宜選択されてよい。ただし、制御装置1及びモデル生成装置2の間でデータをやりとりする方法は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御装置1及びモデル生成装置2の間では、記憶媒体を利用して、データがやりとりされてよい。
 また、図1の例では、制御装置1及びモデル生成装置2は、それぞれ別個のコンピュータにより構成されている。しかしながら、本実施形態に係る制御システムの構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。たとえば、制御装置1及びモデル生成装置2は一体のコンピュータであってもよい。また、例えば、制御装置1及びモデル生成装置2のうちの少なくとも一方は、複数台のコンピュータにより構成されてもよい。
 §2 構成例
 [ハードウェア構成]
 <制御装置>
 図2は、本実施形態に係る制御装置1のハードウェア構成の一例を模式的に例示する。図2に示されるとおり、本実施形態に係る制御装置1は、制御部11、記憶部12、通信インタフェース13、外部インタフェース14、入力装置15、出力装置16、及びドライブ17が電気的に接続されたコンピュータである。なお、図2では、通信インタフェース及び外部インタフェースを「通信I/F」及び「外部I/F」と記載している。以降の図でも同様の表記を用いている。
 制御部11は、ハードウェアプロセッサであるCPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を含み、プログラム及び各種データに基づいて情報処理を実行するように構成される。記憶部12は、メモリの一例であり、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。本実施形態では、記憶部12は、制御プログラム81、学習結果データ225、データ分布情報33、収集条件情報35等の各種情報を記憶する。
 制御プログラム81は、制御対象装置6の動作制御に関する後述の情報処理(図9)を制御装置1に実行させるためのプログラムである。制御プログラム81は、当該情報処理の一連の命令を含む。学習結果データ225は、予測モデルMに関する情報を示す。データ分布情報33は、学習データ31の範囲に関する情報を示す。収集条件情報35は、予測モデルMの生成に使用された学習データ31を収集した際の制御対象装置6の動作条件に関する情報を示す。詳細は後述する。
 通信インタフェース13は、例えば、有線LAN(Local Area Network)モジュール、無線LANモジュール等であり、ネットワークを介した有線又は無線通信を行うためのインタフェースである。制御装置1は、通信インタフェース13を利用して、他の情報処理装置との間で、ネットワークを介したデータ通信を実行することができる。
 外部インタフェース14は、例えば、USB(Universal Serial Bus)ポート、専用ポート等であり、外部装置と接続するためのインタフェースである。外部インタフェース14の種類及び数は任意に選択されてよい。図2の例では、制御装置1は、外部インタフェース14を介して、制御対象装置6に接続される。これにより、制御装置1は、制御対象装置6に制御指令50を送信することで、制御対象装置6の動作を制御することができる。なお、制御装置1及び制御対象装置6の間の接続方法は、このような例に限定されなくてもよい。他の一例として、制御装置1は、通信インタフェース13等を介して、制御対象装置6に接続されてもよい。
 入力装置15は、例えば、マウス、キーボード等の入力を行うための装置である。また、出力装置16は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。ユーザ等のオペレータは、入力装置15及び出力装置16を利用することで、制御装置1を操作することができる。
 ドライブ17は、例えば、CDドライブ、DVDドライブ等であり、記憶媒体91に記憶されたプログラム等の各種情報を読み込むためのドライブ装置である。記憶媒体91は、コンピュータその他装置、機械等が、記憶されたプログラム等の各種情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的又は化学的作用によって蓄積する媒体である。上記制御プログラム81、学習結果データ225、データ分布情報33及び収集条件情報35の少なくともいずれかは、記憶媒体91に記憶されていてもよい。制御装置1は、この記憶媒体91から、上記制御プログラム81、学習結果データ225、データ分布情報33及び収集条件情報35の少なくともいずれかを取得してもよい。なお、図2では、記憶媒体91の一例として、CD、DVD等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体91の種類は、ディスク型に限られなくてもよく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。ドライブ17の種類は、記憶媒体91の種類に応じて任意に選択されてよい。
 なお、制御装置1の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部11は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA(field-programmable gate array)、DSP(digital signal processor)等で構成されてよい。記憶部12は、制御部11に含まれるRAM及びROMにより構成されてもよい。通信インタフェース13、外部インタフェース14、入力装置15、出力装置16及びドライブ17の少なくともいずれかは省略されてもよい。制御装置1は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。また、制御装置1は、提供されるサービス専用に設計された情報処理装置の他、PLC(programmable logic controller)、デスクトップPC(Personal Computer)、タブレットPC等であってよい。
 <制御対象装置>
 図3A及び図3Bは、本実施形態に係るウェブ搬送装置60のハードウェア構成の一例を模式的に例示する。ウェブ搬送装置60は、制御対象装置6の一例である。本実施形態では、ウェブ搬送装置60は、ウェブ69の幅方向における端部の位置を調節しながら、ウェブ69を搬送するように構成される。
 具体的には、図3Aに示されるとおり、本実施形態に係るウェブ搬送装置60は、ウェブ69を供給する供給ロール61、及び供給されたウェブ69を回収する回収ロール66を備えている。ウェブ69の種類は任意に選択されてよい。ウェブ69は、例えば、ポリエチレンフィルム等の樹脂フィルムであってよい。供給ロール61及び回収ロール66の回転軸にはそれぞれサーボモータ(611、661)が取り付けられている。これにより、各サーボモータ(611、661)を駆動することで、供給ロール61からウェブ69が繰り出され、供給されたウェブ69が回収ロール66に巻き取られる。供給ロール61及び回収ロール66の間には、3つの従動ローラ(62、63、641)が配置されている。これらのうち従動ローラ641において、ウェブ69の端部の位置を修正する(すなわち、変位させる)ように構成された修正機構64が設けられている。
 図3Bに示されるとおり、修正機構64は、従動ローラ641及びアクチュエータ643を備えている。従動ローラ641は、軸642を有し、ウェブ69を搬送するように軸642の周りに回転可能に構成されている。また、軸642にはアクチュエータ643が取り付けられており、従動ローラ641は、このアクチュエータ643の駆動により、軸方向にスライド可能に構成されている。この修正機構64によれば、アクチュエータ643の駆動により、従動ローラ641を軸方向にスライドさせることで、ウェブ69の端部の位置を修正することができる。従動ローラ641をスライドさせた方向に、そのスライドさせた分に応じて、ウェブ69の端部の位置を変位させることができる。
 修正機構64付近には、エッジセンサ65が配置されている。本実施形態では、エッジセンサ65は、ウェブ69の搬送方向に対して、修正機構64を備える従動ローラ641より回収ロール66側(下流側)に配置されている。エッジセンサ65は、搬送されるウェブ69の端部の位置を検出するように構成される。図3Bの例では、エッジセンサ65は、光学センサであり、コの字型の間を通過するウェブ69の端部の位置を測定可能に構成されている。ただし、エッジセンサ65の種類は、このような例に限定されなくてよく、任意に選択されてよい。
 以上のとおり、本実施形態に係るウェブ搬送装置60は、修正機構64及びエッジセンサ65を備えていることで、ウェブ69の幅方向における端部の位置を測定し、その端部の位置を調節しながら、ウェブ69を搬送するように構成される。本実施形態に係る制御装置1は、予測制御の一例として、ウェブ69の端部の位置が一定に保たれるようにウェブ69の端部の位置を調節する。このウェブ69の端部の位置を調節する動作は、予測制御の対象となる動作の一例である。ウェブ69の幅方向における端部の位置が制御量の一例であり、アクチュエータ643の駆動量(例えば、電圧)が操作量の一例である。ウェブ69の端部の位置は、蛇行量(すなわち、所定の位置に対する端部のずれの量)で表現されてもよい。
 なお、ウェブ搬送装置60の構成は、このような例に限定されなくてもよい。ウェブ搬送装置60の構成に関して、実施の形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。予測制御の対象となる動作は、このウェブ69の幅方向における端部の位置の調節に限られなくてよく、制御対象装置に応じて適宜選択されてよい。また、制御対象装置としてウェブ搬送装置が選択される場合であっても、予測制御の対象となる動作は、ウェブ69の幅方向における端部の位置の調節に限られなくてよい。その他の一例として、予測制御の対象となる動作は、例えば、各サーボモータ(611、661)を操作することによるウェブ69の搬送速度の調節であってもよい。
 <モデル生成装置>
 図4は、本実施形態に係るモデル生成装置2のハードウェア構成の一例を模式的に例示する。図4に示されるとおり、本実施形態に係るモデル生成装置2は、制御部21、記憶部22、通信インタフェース23、外部インタフェース24、入力装置25、出力装置26、及びドライブ27が電気的に接続されたコンピュータである。
 モデル生成装置2の制御部21~ドライブ27及び記憶媒体92はそれぞれ、上記制御装置1の制御部11~ドライブ17及び記憶媒体91それぞれと同様に構成されてよい。制御部21は、ハードウェアプロセッサであるCPU、RAM、ROM等を含み、プログラム及びデータに基づいて各種情報処理を実行するように構成される。記憶部22は、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。本実施形態では、記憶部22は、モデル生成プログラム82、学習データ31、学習結果データ225、データ分布情報33、収集条件情報35等の各種情報を記憶する。
 モデル生成プログラム82は、予測モデルMの生成に関する後述の情報処理(図7)をモデル生成装置2に実行させるためのプログラムである。モデル生成プログラム82は、当該情報処理の一連の命令を含む。学習データ31は、予測モデルMの生成に使用される。学習結果データ225は、モデル生成プログラム82を実行した結果として生成されてよい。データ分布情報33及び収集条件情報35は、予測モデルMを生成する過程における任意のタイミングで生成されてよい。モデル生成プログラム82及び学習データ31の少なくとも一方は、記憶媒体92に記憶されていてもよい。また、モデル生成装置2は、モデル生成プログラム82及び学習データ31の少なくとも一方を記憶媒体92から取得してもよい。
 なお、モデル生成装置2の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部21は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA、DSP等で構成されてよい。記憶部22は、制御部21に含まれるRAM及びROMにより構成されてもよい。通信インタフェース23、外部インタフェース24、入力装置25、出力装置26、及びドライブ27の少なくともいずれかは省略されてもよい。モデル生成装置2は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。また、モデル生成装置2は、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
 [ソフトウェア構成]
 <制御装置>
 図5は、本実施形態に係る制御装置1のソフトウェア構成の一例を模式的に例示する。制御装置1の制御部11は、記憶部12に記憶された制御プログラム81をRAMに展開する。そして、制御部11は、RAMに展開された制御プログラム81に含まれる命令をCPUにより解釈及び実行して、各構成要素を制御する。これにより、図5に示されるとおり、本実施形態に係る制御装置1は、取得部111、予測部112、動作制御部113、及び評価部114をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、制御装置1の各ソフトウェアモジュールは、制御部11(CPU)により実現される。
 取得部111は、制御対象装置6の状態に関する測定値40を取得する。予測部112は、学習結果データ225を保持することで、予測モデルMを備えている。予測部112は、予測モデルMを使用して、取得された測定値40から、制御対象装置6の未来の動作又は状態に関する予測を行う。動作制御部113は、予測の結果45を利用して、制御対象装置6に対する制御指令50を決定する。そして、動作制御部113は、決定された制御指令50に基づいて、制御対象装置6の動作を制御する。
 評価部114は、予測モデルMを使用する条件が信頼性条件を満たすか否かを判定する。信頼性条件は、ある程度の信頼性をもって予測モデルMが予測を遂行可能である基準を与えるように適宜規定されてよい。
 一般的に、予測モデルの性能は、学習データに依存し得る。そこで、一例として、信頼性条件は、予測モデルMの生成に使用された学習データ31の範囲を基準に規定されてよい。すなわち、予測モデルMを使用する条件が信頼性を満たすか否かは、予測モデルMの生成に使用された学習データ31の範囲に測定値40が属するか否かに基づいて判定されてよい。この判定には、データ分布情報33が利用されてよい。
 また、一般的に、予測モデルの性能は、使用する環境にも依存し得る。予測モデルを使用する環境が学習環境から乖離するほど、予測モデルの生成の際に考慮されていない事象が生じやすく、これに起因して、予測モデルの予測精度は低くなる可能性が高い。そこで、その他の一例として、信頼性条件は、学習環境(すなわち、学習データ31を収集した際の条件)を基準に規定されてよい。すなわち、予測モデルMを使用する条件が信頼性を満たすか否かは、動作を制御する際の制御対象装置6の動作条件が、予測モデルMの生成に使用された学習データ31を収集した際の制御対象装置6の動作条件の範囲に属するか否かに基づいて判定されてよい。この判定には、収集条件情報35が利用されてよい。
 予測モデルMを使用する条件が信頼性条件を満たすと判定された場合、動作制御部113は、上記予測の結果45を利用した制御対象装置6の動作制御を実行する。一方、予測モデルMを使用する条件が信頼性条件を満たさないと判定された場合、動作制御部113は、上記動作制御において予測の結果45を利用することを停止する。本実施形態では、動作制御部113は、予測の結果45を利用せずに制御指令50を決定し、決定された制御指令50に基づいて、制御対象装置6の動作を制御する。
 <モデル生成装置>
 図6は、本実施形態に係るモデル生成装置2のソフトウェア構成の一例を模式的に例示する。モデル生成装置2の制御部21は、記憶部22に記憶されたモデル生成プログラム82をRAMに展開する。そして、制御部21は、RAMに展開されたモデル生成プログラム82に含まれる命令をCPUにより解釈及び実行して、各構成要素を制御する。これにより、図6に示されるとおり、本実施形態に係るモデル生成装置2は、データ収集部211、データ生成部212、学習処理部213、情報生成部214、及び保存処理部215をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、モデル生成装置2の各ソフトウェアモジュールも、制御装置1と同様に、制御部21(CPU)により実現される。
 データ収集部211は、制御対象装置6の動作を制御した結果に関する実績データ30を収集する。データ生成部212は、予測モデルMの生成に使用する学習データ31を実績データ30から生成する。学習処理部213は、学習データ31を使用して、予測モデルMを生成する。予測モデルMが、例えば、回帰モデル、ニューラルネットワーク、決定木モデル等の機械学習モデルにより構成される場合、学習処理部213は、学習データ31を使用して、機械学習を実施する。これにより、学習処理部213は、制御対象装置6の未来の動作又は状態に関する予測を行う能力を獲得した訓練済みの予測モデルMを生成することができる。学習処理部213は、生成された予測モデルMを再生するための学習結果データ225を生成する。
 情報生成部214は、予測モデルMを使用する際の信頼性条件を示す情報を生成する。一例として、情報生成部214は、予測モデルMの生成に使用された学習データ31からデータ分布情報33を生成してもよい。データ分布情報33は、学習データ31の範囲を示すように適宜生成されてよい。その他の一例として、情報生成部214は、実績データ30から収集条件情報35を生成してもよい。収集条件情報35は、予測モデルMの生成に使用された学習データ31を実績データ30として収集した際の制御対象装置6の動作条件の範囲を示すように適宜生成されてよい。保存処理部215は、学習結果データ225、データ分布情報33、収集条件情報35等の生成された各種情報を所定の記憶領域に保存する。
 <その他>
 制御装置1及びモデル生成装置2の各ソフトウェアモジュールに関しては後述する動作例で詳細に説明する。なお、本実施形態では、制御装置1及びモデル生成装置2の各ソフトウェアモジュールがいずれも汎用のCPUによって実現される例について説明している。しかしながら、上記ソフトウェアモジュールの一部又は全部が、1又は複数の専用のプロセッサにより実現されてもよい。すなわち、上記各モジュールは、ハードウェアモジュールとして実現されてもよい。また、制御装置1及びモデル生成装置2それぞれのソフトウェア構成に関して、実施形態に応じて、適宜、ソフトウェアモジュールの省略、置換及び追加が行われてもよい。
 §3 動作例
 [モデル生成装置]
 図7は、本実施形態に係るモデル生成装置2による予測モデルMの生成に関する処理手順の一例を示すフローチャートである。ただし、モデル生成装置2の処理手順は、一例に過ぎず、各ステップは可能な限り変更されてよい。また、以下のモデル生成装置2の処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
 (ステップS201)
 ステップS201では、制御部21は、データ収集部211として動作し、制御対象装置6の動作を制御した結果に関する実績データ30を収集する。
 実績データ30として収集するデータの項目は、学習データ31を生成可能なように(すなわち、予測の説明変数及び目的変数に関するデータを含むように)適宜選択されてよい。収集するデータは、例えば、制御対象装置6の動作を制御する際の制御量の測定値、制御量の目標値、操作量の指令値、動作を制御した後の制御量の測定値等を含んでよい。予測制御を実施している場合又は予測制御を想定して、収集するデータは、例えば、制御量の目標値に対する補正値、操作量に対する補正値等の補正に関するデータを含んでよい。補正に関するデータは、実機又はシミュレーションにより適宜決定されてよい。
 また、収集条件情報35を生成する形態では、実績データ30は、上記各項目のデータの他に、各項目のデータを得た際の制御対象装置6の動作条件(プロファイル情報)に関するデータを含んでよい。動作条件は、例えば、制御対象装置6の属性、外乱条件等により規定されてよい。制御対象装置6の属性は、例えば、識別子(ID)、型番、種類、動作パラメータ等を含んでよい。制御対象装置6の動作に関連するワークが存在する場合、制御対象装置6の属性は、ワークの属性を含んでもよい。上記ウェブ搬送装置60の場合、制御対象装置6の属性は、例えば、ウェブ69の種類、搬送速度等を含んでよい。
 実績データ30の収集方法は、特に限定されなくてよい。一例として、制御対象装置6がモデル生成装置2に接続されている場合には、制御部21は、制御対象装置6を直接的に駆動することで、実績データ30を収集してもよい。その他の一例として、他のコンピュータが、制御対象装置6を駆動することで、実績データ30を生成してもよい。この場合、制御部21は、ネットワーク、記憶媒体92等を介して、他のコンピュータから実績データ30を収集してもよい。実績データ30を収集すると、制御部21は、次のステップS202に処理を進める。
 (ステップS202及びステップS203)
 ステップS202では、制御部21は、データ生成部212として動作し、収集された実績データ30から学習データ31として利用するデータを選定する。利用するデータは、任意の方法で選定されてよい。例えば、制御部21は、入力装置25を介したオペレータの指定に応じて、実績データ30から利用するデータを選定してもよい。また、例えば、制御部21は、所定の基準に従って、実績データ30から利用するデータを自動的に選定してもよい。一例として、制御部21は、例えば、外れ値を含む、異常な動作を行った等、学習データとして使用するには望ましくない条件に該当するデータを除外することで、利用するデータを選定してもよい。
 次のステップS203では、制御部21は、データ生成部212として動作し、選定されたデータの各項目のうちから予測モデルMの説明変数及び目的変数を決定する。一例として、制御部21は、オペレータの指定に応じて、説明変数及び目的変数を決定してよい。各変数の数は、任意に選択されてよい。ステップS203までの処理により、学習データ31を生成することができる。説明変数及び目的変数を決定すると、制御部21は、次のステップS204に処理を進める。なお、説明変数及び目的変数が予め定められている場合、ステップS203の処理は省略されてよい。
 (ステップS204及びステップS205)
 ステップS204及びステップS205では、制御部21は、情報生成部214として動作し、予測モデルMを使用する際の信頼性条件を示す情報を生成する。
 まず、ステップS204では、制御部21は、学習データ31(実績データ30)を収集した際の制御対象装置6の動作条件を示す収集条件情報35を生成する。本実施形態では、収集条件情報35は、実績データ30のうちの選定されたデータの該当部分から適宜生成されてよい。なお、ステップS204の処理は、任意のタイミングで実行されてよい。また、収集条件情報35を利用しない形態では、ステップS204の処理は省略されてよい。
 ステップS205では、制御部21は、生成された学習データ31の範囲を示すデータ分布情報33を生成する。本実施形態では、データ分布情報33は、生成された学習データ31の説明変数の数値範囲を示すように適宜生成されてよい。なお、ステップS205の処理は、学習データ31が生成された後の任意のタイミングで実行されてよい。ステップS205の処理は、ステップS204の処理よりも前に実行されてもよい。また、データ分布情報33を利用しない形態では、ステップS205の処理は省略されてよい。
 (各種情報の一例)
 図8A~図8Dは、上記ウェブ搬送装置60の場合に得られる各種情報(実績データ30、学習データ31、収集条件情報35及びデータ分布情報33)の一例を模式的に例示する。なお、以下で説明する各種情報のデータ形式は、あくまで一例に過ぎない。各種情報のデータ形式は、以下の例に限定されなくてよく、実施の形態に応じて適宜変更されてよい。
 図8Aの例では、実績データ30は、テーブル形式で構成されている。1つのレコード(行データ)は、1回以上の制御サイクルで得られる動作実績の時系列データに対応する。各レコードは、予測の説明変数又は目的変数に関連する情報(例えば、蛇行量、時間等)、及び動作条件に関連する情報(例えば、装置ID、搬送速度、ワークの種類等)それぞれを格納するフィールドを有している。ステップS202及びステップS203の処理をこの実績データ30に対して実行することで、図8Bに例示される学習データ31を生成することができる。
 図8Bの例では、学習データ31は、実績データ30と同様に、テーブル形式で構成されている。1つのレコード(行データ)は、1つの学習データセットに対応し、各変数の値を格納するフィールドを有する。機械学習により予測モデルMを生成する場合には、説明変数の各値は、訓練データ(入力データ)に対応し、目的変数の各値は、正解データ(教師信号、ラベル)に対応する。上記ウェブ搬送装置60の場合、説明変数は、例えば、現在又は過去の蛇行量(ウェブ69の幅方向における端部の位置)により構成されてよい。説明変数は、現在又は過去の複数サイクル分の蛇行量により構成されてよい。説明変数は、蛇行量から算出された特徴量により構成されてもよい。目的変数は、例えば、未来の蛇行量、未来の蛇行量の目標値に対する補正値、アクチュエータ643に対する未来の駆動量、及び未来の駆動量に対する補正値のいずれかにより構成されてよい。学習データ31は、このような訓練データ及び正解データの組み合わせによりそれぞれ構成される複数の学習データセットを備えるように構成されてよい。
 上記ステップS205では、制御部21は、得られた学習データ31からデータ分布情報33を生成してもよい。このとき、制御部21は、学習データ31の範囲(説明変数の数値範囲)をデータ分布により表現するようにデータ分布情報33を生成してもよい。生成方法の一例として、まず、制御部21は、説明変数の集合を表現するデータ空間を複数の区画に分割する。区画の分割方法及び大きさ(分割の粗さ)は任意に決定されてよい。次に、制御部21は、各区画をリスト化し、各区画の属性情報を初期化する。例えば、制御部21は、区画リストにおいて、学習データ31が存在していないことを示す値を各区画のフィールドに格納する。続いて、制御部21は、複数の区画に分割されたデータ空間上に学習データ31をプロットする。そして、制御部21は、区画リストにおいて、学習データ31のプロットされた区画のフィールドに学習データ31が存在することを示す値を格納する(すなわち、該当区画のフィールドの値を変更する)。制御部21は、これらの一連の処理により生成された区画リストの情報をデータ分布情報33として発行することができる。図8Cに例示されるとおり、生成されたデータ分布情報33は、学習データ31の範囲(データ分布)を区画単位で示すことができる。なお、図8Cの例では、ハッチングされた範囲が、学習データ31の範囲に属すると判定される範囲に該当する。
 上記ステップS204では、制御部21は、実績データ30のうちの学習データ31として選定されたデータの該当部分から収集条件情報35を生成してもよい。一例として、制御部21は、テーブル形式で構成された実績データ30から信頼性条件の判定に利用する該当部分のデータを抽出する。これにより、制御部21は、図8Dに例示されるテーブル形式で構成された収集条件情報35を生成することができる(図8Dは、搬送速度、ワークの種類等が判定項目として選択された場面を例示する)。なお、収集条件情報35のデータ構成は、このような例に限定されなくてよい。収集条件情報35は、上記データ分布情報33と同様の形式で、データ収集の際の制御対象装置6の動作条件の範囲を示すように構成されてよい。
 以上により、データ分布情報33及び収集条件情報35を生成することができる。データ分布情報33及び収集条件情報35を生成すると、制御部21は、次のステップS206に処理を進める。
 (ステップS206)
 ステップS206では、制御部21は、保存処理部215として動作し、生成されたデータ分布情報33及び収集条件情報35を所定の記憶領域に保存する。
 所定の記憶領域は、例えば、制御部21内のRAM、記憶部22、外部記憶装置、記憶メディア又はこれらの組み合わせであってよい。記憶メディアは、例えば、CD、DVD等であってよく、制御部21は、ドライブ27を介して記憶メディアにデータ分布情報33及び収集条件情報35を格納してもよい。外部記憶装置は、例えば、NAS(Network Attached Storage)等のデータサーバであってよい。この場合、制御部21は、通信インタフェース23を利用して、ネットワークを介してデータサーバにデータ分布情報33及び収集条件情報35を格納してもよい。また、外部記憶装置は、例えば、外部インタフェース24を介してモデル生成装置2に接続された外付けの記憶装置であってもよい。データ分布情報33及び収集条件情報35の保存先は互いに同一であってもよいし、或いは異なっていてもよい。
 データ分布情報33及び収集条件情報35の保存が完了すると、制御部21は、次のステップS207に処理を進める。なお、ステップS206の処理タイミングは、このような例に限定されなくてよい。データ分布情報33を保存する処理は、ステップS205の処理によりデータ分布情報33を生成した後の任意のタイミングで実行されてよい。同様に、収集条件情報35を保存する処理は、ステップS204の処理により収集条件情報35を生成した後の任意のタイミングで実行されてよい。
 (ステップS207)
 ステップS207では、制御部21は、学習処理部213として動作し、上記の処理により得られた学習データ31を使用して、予測モデルMを生成する。予測モデルMは、学習データ31に基づいて、制御対象装置6の未来の動作又は状態に関する予測を行う、すなわち、各学習データセットの説明変数の各値から目的変数の各値を導出する能力を獲得するように適宜生成されてよい。
 予測モデルMを生成する方法は、特に限定されなくてよい。例えば、予測モデルMは、オペレータの手作業により生成されてよい。この場合、予測モデルMは、例えば、データテーブル、関数式、ルール等により構成されてよい。或いは、予測モデルMは、機械学習により生成されてよい。この場合、予測モデルMは、機械学習により調整される1つ以上の演算パラメータを備える機械学習モデルにより構成されてよい。機械学習モデルは、例えば、回帰モデル、ニューラルネットワーク、決定木モデル、サポートベクタマシン等により構成されてよい。機械学習の方法は、機械学習モデルの構成に応じて適宜選択されてよい。
 一例として、予測モデルMは、例えば、自己回帰モデル等の回帰モデルにより構成されてよい。回帰モデルは、回帰係数を含む1又は複数の項を総和する回帰式により構成されてよい。各項における回帰係数等が、演算パラメータの一例である。この場合、制御部21は、学習データ31を使用して、最小二乗法等の回帰分析を実行する。これにより、上記能力を獲得した訓練済みの予測モデルMを生成することができる。
 その他の一例として、予測モデルMは、ニューラルネットワークにより構成されてよい。ニューラルネットワークを構成する層の数及び種類は、実施の形態に応じて適宜選択されてよい。基本的には、ニューラルネットワークは、1又は複数のニューロン(ノード)を含む1又は複数の層を備える。複数の層を備える場合、典型的には、入力側から出力側に各層は配置され、隣接する層に含まれるニューロン同士は適宜結合される。各結合には重み(結合荷重)が設定される。各ニューロンには閾値が設定されており、各入力と各重みとの積の和が閾値を超えているか否かによって各ニューロンの出力が決定される。閾値は、活性化関数により表現されてよい。このニューラルネットワークの構成要素のうち、各ニューロン間の結合の重み、各ニューロンの閾値等が、演算パラメータの一例である。この場合、制御部21は、各学習データセットについて、説明変数の各値をニューラルネットワークに入力し、ニューラルネットワークの順伝播の演算処理を実行する。この演算処理の結果、制御部21は、説明変数の各値に対する出力値(すなわち、予測結果)を取得する。続いて、制御部21は、得られた出力値と対応する目的変数の値との誤差を算出し、算出された誤差の勾配を更に算出する。そして、制御部21は、誤差逆伝播法により、算出された誤差の勾配を逆伝播することで、各ニューロン間の結合の重み、各ニューロンの閾値等の演算パラメータの値を調整する。制御部21は、算出される誤差の値が小さくなるように演算パラメータの値の調整を繰り返す(例えば、所定回数繰り返す、誤差の値が閾値以下になるまで繰り返す)。これにより、上記能力を獲得した訓練済みの予測モデルMを生成することができる。
 予測モデルMの生成が完了すると、制御部21は、生成された予測モデルMを示す学習結果データ225を生成する。上記予測の演算を実行するための情報を保持可能であれば、学習結果データ225の構成は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。一例として、予測モデルMが回帰モデルにより構成される場合、学習結果データ225は、上記機械学習により導出された回帰係数等の演算パラメータの値を示す情報により構成されてよい。その他の一例として、予測モデルMがニューラルネットワークにより構成される場合、学習結果データ225は、演算パラメータ(例えば、各ニューロン間の結合の重み、各ニューロンの閾値等)の値、及びニューラルネットワークの構造(例えば、層の数、各層の種類、各層に含まれるニューロンの数、隣接する層のニューロン同士の結合関係等)を示す情報により構成されてよい。ニューラルネットワークの構造が共通化される場合には、ニューラルネットワークの構造を示す情報は学習結果データ225から省略されてよい。学習結果データ225の生成が完了すると、制御部21は、次のステップS208に処理を進める。
 (ステップS208)
 ステップS208では、制御部21は、保存処理部215として動作し、予測モデルMを生成した結果、すなわち、学習結果データ225を所定の記憶領域に保存する。上記のとおり、所定の記憶領域は、例えば、制御部21内のRAM、記憶部22、外部記憶装置、記憶メディア又はこれらの組み合わせであってよい。学習結果データ225の保存先は、データ分布情報33又は収集条件情報35の保存先と同一であってもよいし、或いは異なっていてもよい。学習結果データ225の保存が完了すると、制御部21は、本動作例に係る処理手順を終了する。
 なお、生成されたデータ分布情報33、収集条件情報35及び学習結果データ225は、任意のタイミングで制御装置1に提供されてよい。例えば、制御部21は、ステップS206及びステップS208の処理として又はこれらの処理とは別に、データ分布情報33、収集条件情報35及び学習結果データ225を制御装置1に転送してもよい。制御装置1は、この転送を受信することで、それぞれのデータを取得してもよい。また、例えば、制御装置1は、通信インタフェース13を利用して、モデル生成装置2又はデータサーバにネットワークを介してアクセスすることで、それぞれのデータを取得してもよい。また、例えば、制御装置1は、記憶媒体91を介して、それぞれのデータを取得してもよい。また、例えば、それぞれのデータは、制御装置1に予め組み込まれてもよい。データ分布情報33、収集条件情報35及び学習結果データ225の提供方法は互いに同一であってもよいし、或いは異なっていてもよい。
 更に、制御部21は、上記ステップS201~ステップS208の処理を定期又は不定期に繰り返すことで、データ分布情報33、収集条件情報35及び学習結果データ225を更新又は新たに生成してもよい。この繰り返しの際に、実績データ30及び学習データ31の少なくとも一部の変更、修正、追加、削除等が適宜実行されてよい。そして、制御部21は、更新した又は新たに生成したデータ分布情報33、収集条件情報35及び学習結果データ225を任意の方法で制御装置1に提供してもよい。これにより、制御装置1の保持するそれぞれのデータを更新してもよい。
 [制御装置]
 図9は、本実施形態に係る制御装置1による制御対象装置6の動作制御に関する処理手順の一例を示すフローチャートである。以下の制御装置1の処理手順は、制御方法の一例である。ただし、以下の制御装置1の処理手順は、一例に過ぎず、各ステップは可能な限り変更されてよい。また、以下の制御装置1の処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。なお、制御装置1により動作を制御される制御対象装置6は、上記学習データ31(実績データ30)の収集に利用された制御対象装置6と個体として一致していてもよいし、或いは一致していなくてもよい。
 (ステップS101)
 ステップS101では、制御部11は、取得部111として動作し、制御対象装置6の状態に関する測定値40を取得する。
 測定値40の種類及び形式は、使用する予測モデルMの説明変数に応じて適宜決定されてよい。測定値40は、例えば、制御量の測定値である。測定値40の取得には、センサ(不図示)が適宜用いられてよい。制御部11は、センサから直接的又は間接的に測定値40を取得してもよい。上記ウェブ搬送装置60の例では、測定値40は、エッジセンサ65により測定されるウェブ69の幅方向における端部の位置(蛇行量)の値であってよい。この場合、制御部11は、エッジセンサ65から測定値40を取得することができる。なお、上記のとおり、測定値40は、現在又は過去の複数サイクル分の制御量の測定値により構成されてよい。測定値40は、得られた制御量の測定値から算出された特徴量により構成されてよい。測定値40を取得すると、制御部11は、次のステップS102に処理を進める。
 (ステップS102)
 ステップS102では、制御部11は、評価部114として動作し、予測モデルMを使用する条件(以下、「使用条件」とも記載する)が信頼性条件を満たすか否かを判定する。本実施形態では、制御部11は、データ分布情報33及び収集条件情報35の少なくともいずれかを利用することにより、当該判定を実施することができる。
 データ分布情報33を利用する場合、制御部11は、データ分布情報33を参照して、予測モデルMの生成に使用された学習データ31の範囲に測定値40が属するか否かに基づいて、予測モデルMの使用条件が信頼性条件を満たすか否かを判定する。学習データ31の範囲がデータ分布により表現される場合、学習データ31の範囲に測定値40が属するか否かは、当該データ分布に測定値40が含まれるか否かに基づいて判定されてよい。学習データ31の範囲に測定値40が属する場合、制御部11は、予測モデルMの使用条件が信頼性条件を満たすと判定する。一方、学習データ31の範囲に測定値40が属さない場合、制御部11は、予測モデルMの使用条件が信頼性条件を満たさないと判定する。
 上記図8Cの例では、学習データ31の範囲は、区画化されたデータ分布により表現されている。この場合、制御部11は、測定値40の属する区画を特定し、データ分布情報33の特定された該当区画のフィールドを参照する。学習データ31が存在することを示す値が参照フィールドに格納されている場合、制御部11は、学習データ31の範囲に測定値40が属する(すなわち、予測モデルMの使用条件が信頼性条件を満たす)と判定する。一方、学習データ31が存在していないことを示す値が参照フィールドに格納されている場合、制御部11は、学習データ31の範囲に測定値40が属さない(すなわち、予測モデルMの使用条件が信頼性条件を満たさない)と判定する。
 本実施形態では、このように学習データ31の範囲がデータ分布により表現されてよいことで、学習データ31の範囲に測定値40が属するか否かの判定の演算を容易化することができる。特に、図8Cに示される区画化によれば、区画リストの対応するフィールドを参照するだけで、当該判定の演算を達成することができる。したがって、判定の演算に本形態を採用することにより、ステップS102の情報処理の負荷の低減及び高速化を期待することができる。
 収集条件情報35を利用する場合、制御部11は、データ分布情報33を参照して、動作を制御する際の制御対象装置6の動作条件が、予測モデルMの生成に使用された学習データ31を収集した際の制御対象装置6の動作条件の範囲に属するか否かに基づいて、予測モデルMの使用条件が信頼性条件を満たすか否かを判定する。以下、動作を制御する際の動作条件を「制御時の動作条件」とも記載し、予測モデルMの生成に使用された学習データ31を収集した際の動作条件を「学習時の動作条件」とも記載する。制御時の動作条件を示す情報は適宜取得されてよい。制御時の動作条件を示す情報の取得にはセンサ(不図示)が適宜用いられてよい。制御時の動作条件が学習時の動作条件の範囲に属する場合、制御部11は、予測モデルMの使用条件が信頼性条件を満たすと判定する。一方、制御時の動作条件が学習時の動作条件の範囲に属さない場合、制御部11は、予測モデルMの使用条件が信頼性条件を満たさないと判定する。
 予測モデルMの使用条件が信頼性条件を満たすか否かの判定が完了すると、制御部11は、次のステップS103に処理を進める。
 (ステップS103)
 ステップS103では、制御部11は、ステップS102の判定の結果に応じて、処理の分岐先を決定する。予測モデルMの使用条件が信頼性条件を満たすと判定した場合、制御部11は、ステップS104に処理を進めて、予測モデルMによる予測の結果45を利用した動作制御の処理を実行する。他方、予測モデルMの使用条件が信頼性条件を満たさないと判定した場合、制御部11は、ステップS106に処理を進めることで、予測の結果45を利用しない動作制御の処理を実行する。
 (ステップS104及びステップS105)
 ステップS104では、制御部11は、予測部112として動作し、学習結果データ225を参照して、予測モデルMの設定を行う。そして、制御部11は、予測モデルMに測定値40を入力し、予測モデルMの演算処理を実行する。
 演算処理は、予測モデルMの構成に応じて適宜実行されてよい。一例として、予測モデルMが回帰モデルにより構成される場合、制御部11は、回帰式の対応する項に測定値40を代入し、回帰式の演算を実行する。その他の一例として、予測モデルMがニューラルネットワークにより構成される場合、制御部11は、ニューラルネットワークの入力層に測定値40を入力し、ニューラルネットワークの順伝播の演算処理を実行する。
 この演算処理の実行により、制御部11は、予測モデルMを使用して、制御対象装置6の未来の動作又は状態に関する予測を行うことができる。すなわち、制御部11は、予測の結果45に対応する出力値を予測モデルMから取得することができる。予測の結果45は、未来の制御サイクルにおける制御対象装置6の制御量の予測値、制御量の目標値に対する補正値、制御対象装置6に対する操作量の予測値、及び操作量に対する補正値のいずれかにより構成されてよい。
 ステップS105では、制御部11は、動作制御部113として動作し、予測の結果45を利用して、制御指令50を決定する。制御指令50を決定する方法は、予測の結果45の構成に応じて適宜選択されてよい。以下、制御指令50を決定する方法として本実施形態で採用可能な4つの方法を例示する。
 (1)第1の方法
 図10Aは、予測の結果45が制御量の予測値451で構成される場合における制御指令50の決定方法の一例を模式的に例示する。予測モデルM1は、現在又は過去の制御量の測定値から未来の制御サイクルにおける制御量の値を予測するように構成される。この予測モデルM1は、予測モデルMの一例である。
 制御部11は、上記ステップS104の処理により、予測モデルM1を使用して、現在又は過去の制御量の測定値40から、未来の制御サイクルにおける制御量の予測値451を算出する。また、制御部11は、制御量の目標値51を取得する。目標値51を取得する方法は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。一例として、目標値51は、例えば、記憶部12、記憶媒体91等の所定の記憶領域に保存されていてよい。この場合、制御部11は、所定の記憶領域から目標値51を取得することができる。その他の一例として、目標値51はオペレータにより指定されてもよい。目標値51は、制御サイクル毎に与えられてもよい。
 次に、制御部11は、予測値451に応じて目標値51を補正する。予測値451及び目標値51に対する補正量の関係は、実施の形態に応じて適宜決定されてよい。予測モデルM1により得られた予測値451が目標値51から乖離することは、目標値51に基づいて制御対象装置6をそのまま制御しても、目標値51からずれた挙動で制御対象装置6が動作することが予測されたことに対応する。そこで、一例として、予測値451及び目標値51に対する補正量の関係は、目標値51よりも予測値451が小さい場合に目標値51をより大きな値に修正し、目標値51よりも予測値451が大きい場合に目標値51をより小さい値に修正するように適宜決定されてよい。これにより、本来の目標値51により所望される挙動で制御対象装置6を動作させるように、目標値51を補正することができる。以下の式1は、このような補正量を算出するための計算式の一例を示す。
Figure JPOXMLDOC01-appb-M000001
 なお、R(t)は、時刻tにおける補正量の値(補正値521)を示す。rは、比例定数を示す。E(t)は、時刻tにおける目標値51を示す。P(t)は、時刻tにおける予測値451を示す。sは、定数項を示す。この計算式では、比例定数r及び定数項sの値により、補正の度合いが決定される。比例定数r及び定数項sはそれぞれ補正の重みの一例である。比例定数r及び定数項sそれぞれの値は、適宜与えられてよい。例えば、比例定数r及び定数項sそれぞれの値は、オペレータの指定により与えられてよい。また、例えば、比例定数r及び定数項sそれぞれの値は、実機又はシミュレーションによりウェブ搬送装置60を駆動した結果に基づいて決定されてよい。比例定数r及び定数項sの値は、制御サイクル毎に与えられてもよい。
 制御部11は、取得された予測値451(P(t))及び目標値51(E(t))を式1の各項に代入し、式1の計算式を演算することで、補正値521(R(t))を算出する。すなわち、制御部11は、予測値451及び目標値51の間の差分を算出し、算出された差分と比例定数rとの積を算出し、算出された積に定数項sを加えることにより、補正値521を算出する。そして、制御部11は、算出された補正値521を目標値51に加えることで、補正された目標値523を算出する。この加算処理は、減算処理に置き換えられてよい。
 次に、制御部11は、補正された目標値523及び測定値40に応じて、制御対象装置6に対する制御指令50を決定する。一例として、制御部11は、補正された目標値523及び測定値40の間の差分を算出し、算出された差分に応じて操作量の指令値501を決定する。この指令値501を決定する方法には、例えば、PID制御、PI制御等の公知の方法が採用されてよい。指令値501は、制御指令50の一例である。第1の方法では、これらの一連の処理により、予測の結果45を利用して、制御指令50を決定することができる。
 なお、この第1の方法を採用する場合に、制御指令50の構成は、このような例に限定されなくてよい。その他の一例として、制御対象装置6が制御量の目標値に応じて動作を実行するように構成される場合、制御指令50は、補正された目標値523により構成されてよい。
 (2)第2の方法
 図10Bは、予測の結果45が制御量の目標値51に対する補正値452で構成される場合における制御指令50の決定方法の一例を模式的に例示する。予測モデルM2は、現在又は過去の制御量の測定値から未来の制御サイクルにおける制御量の目標値の補正量を予測するように構成される。この予測モデルM2は、予測モデルMの一例である。すなわち、第2の方法は、第1の方法では予測モデルM1の予測結果から間接的に算出された補正値521を直接的に導出する形態に相当する。
 制御部11は、上記ステップS104の処理により、予測モデルM2を使用して、現在又は過去の制御量の測定値40から、未来の制御サイクルにおける制御量の目標値51に対する補正値452を算出する。また、制御部11は、上記第1の方法と同様に、制御量の目標値51を適宜取得する。以降の処理は、上記第1の方法の補正値521を得た後の処理と同様であってよい。すなわち、制御部11は、算出された補正値452を目標値51に加えることで、補正された目標値525を算出する。この加算処理は、減算処理に置き換えられてよい。次に、制御部11は、補正された目標値626及び測定値40に応じて、制御対象装置6に対する制御指令50を決定する。一例として、制御部11は、補正された目標値525及び測定値40の間の差分を算出し、算出された差分に応じて操作量の指令値501を決定する。第2の方法では、これらの一連の処理により、予測の結果45を利用して、制御指令50を決定することができる。なお、制御指令50の構成の他の一例として、第2の方法においても、第1の方法と同様に、制御指令50は、補正された目標値525により構成されてよい。
 (3)第3の方法
 図10Cは、予測の結果45が操作量の予測値453で構成される場合における制御指令50の決定方法の一例を模式的に例示する。予測モデルM3は、現在又は過去の制御量の測定値から未来の制御サイクルにおける操作量の値を予測するように構成される。この予測モデルM3は、予測モデルMの一例である。
 制御部11は、上記ステップS104の処理により、予測モデルM3を使用して、現在又は過去の制御量の測定値40から、未来の制御サイクルにおける操作量の予測値453を算出する。また、制御部11は、上記第1の方法等と同様に、制御量の目標値51を適宜取得する。続いて、制御部11は、測定値40及び目標値51に応じて、制御対象装置6に対する操作量の基準値53を決定する。一例として、制御部11は、目標値51及び測定値40の間の差分を算出し、算出された差分に応じて操作量の基準値53を決定する。この基準値53を決定する方法には、上記第1の方法等と同様に、例えば、PID制御、PI制御等の公知の方法が採用されてよい。
 次に、制御部11は、得られた予測値453に応じて、基準値53を補正することにより、操作量の指令値501を決定する。予測値453及び基準値53に対する補正量の関係は、実施の形態に応じて適宜決定されてよい。例えば、基準値53に対する補正量の値(補正値541)は、予測値453及び基準値53の間の乖離を減らすように決定されてよい。演算処理の一例として、制御部11は、予測値453及び基準値53の間の差分を算出し、算出された差分に比例定数を掛け算してもよい。続いて、制御部11は、得られた積に定数項を加算することで、補正値541を算出してもよい。そして、制御部11は、算出された補正値541を基準値53に加算することで、操作量の指令値501(補正された指令値)を算出することができる。なお、この加算処理は、減算処理に置き換えられてよい。第3の方法では、これらの一連の処理により、予測の結果45を利用して、制御指令50を決定することができる。
 (4)第4の方法
 図10Dは、予測の結果45が操作量に対する補正値454で構成される場合における制御指令50の決定方法の一例を模式的に例示する。予測モデルM4は、現在又は過去の制御量の測定値から未来の制御サイクルにおける操作量の補正量を予測するように構成される。この予測モデルM4は、予測モデルMの一例である。すなわち、第4の方法は、第3の方法で予測モデルM3の予測結果から間接的に算出された補正値541を直接的に導出する形態に相当する。
 制御部11は、上記ステップS104の処理により、予測モデルM4を使用して、現在又は過去の制御量の測定値40から、未来の制御サイクルにおける操作量の基準値53に対する補正値454を算出する。基準値53は、上記第3の方法と同様に、目標値51及び測定値40から適宜算出されてよい。以降の処理は、上記第3の方法の補正値541を得た後の処理と同様であってよい。すなわち、制御部11は、算出された補正値454を基準値53に加算することで、操作量の指令値501(補正された指令値)を算出することができる。なお、この加算処理は、減算処理に置き換えられてよい。第4の方法では、これらの一連の処理により、予測の結果45を利用して、制御指令50を決定することができる。
 以上のとおり、本実施形態では、制御部11は、上記4つの方法のいずれかの方法を採用することで、予測の結果45を利用して、制御指令50を決定することができる。制御指令50を決定すると、制御部11は、次のステップS107に処理を進める。
 (ステップS106)
 ステップS106では、制御部11は、動作制御部113として動作し、予測モデルMによる予測の結果45を使用せずに、制御指令50を決定する。
 この場合、制御指令50は任意の方法で決定されてよい。一例として、上記基準値53を決定した方法と同様の方法により、制御指令50を決定してもよい。すなわち、制御部11は、制御量の目標値を適宜取得してよい。そして、制御部11は、測定値40及び目標値の間の差分を算出し、算出された差分に応じて操作量の指令値を決定してもよい。この指令値を決定する方法には、例えば、PID制御、PI制御等の公知の方法が採用されてよい。操作量の指令値は、制御指令50の一例である。その他の一例として、制御部11は、取得された制御量の目標値により制御指令50を構成してもよい。制御指令50を決定すると、制御部11は、次のステップS107に処理を進める。
 (ステップS107)
 ステップS107では、制御部11は、動作制御部113として動作し、決定された制御指令50に基づいて、制御対象装置6の動作を制御する。
 本実施形態では、制御部11は、制御指令50を制御対象装置6に送信する。これに応じて、制御対象装置6は、制御指令50を受信し、受信した制御指令50に従って動作する。例えば、制御指令50が操作量の指令値により構成される場合、制御対象装置6は、与えられた指令値に従って、モータ等の操作要素(操作部)を駆動してもよい。また、例えば、制御指令50が制御量の目標値により構成される場合、制御対象装置6は、上記と同様の方法により、制御量の測定値及び与えられた目標値に応じて操作量の指令値を決定してもよい。そして、制御対象装置6は、決定された指令値に従って操作要素を駆動してもよい。これによって、制御対象装置6の動作を制御することができる。上記ウェブ搬送装置60の例では、制御指令50に基づいて修正機構64のアクチュエータ643を駆動することにより、ウェブ69の幅方向における端部の位置(蛇行量)を制御することができる。制御対象装置6の動作の制御が完了すると、制御部11は、本動作例に係る処理手順を終了する。
 なお、制御部11は、ステップS101~ステップS107の処理の実行を繰り返してもよい。これにより、制御装置1は、制御対象装置6の動作を継続的に制御することができる。
 [特徴]
 以上のとおり、本実施形態では、制御装置1は、ステップS102の処理により、予測モデルMの使用条件が信頼性条件を満たすか否かを判定する。そして、予測モデルMの使用条件が信頼性条件を満たさないと判定した場合には、制御装置1は、ステップS104及びステップS105の処理の実行を回避することで、予測モデルMによる予測の結果45の利用を停止する。これにより、本実施形態に係る制御装置1は、予測モデルMによる予測が誤ることで制御対象装置6の動作制御が不安定になりやすい場面において、予測モデルMによる予測制御の実施を停止することができる。したがって、本実施形態によれば、制御装置1において、予測モデルMを用いた制御対象装置6の動作制御の安定性の向上を図ることができる。
 §4 変形例
 以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
 <4.1>
 上記実施形態では、制御量の測定値が予測モデルMに入力されている。しかしながら、予測モデルMの入力は、このような例に限定されなくてもよい。予測モデルMには、制御量の測定値以外の他の情報が更に入力されてよい。一例として、予測モデルMは、制御量の測定値の他、動作条件に関する情報の入力を更に受け付けるように構成されてよい。これにより、予測モデルMの予測精度の向上を期待することができる。
 <4.2>
 上記実施形態では、データ分布情報33は、区画化されたデータ分布により学習データ31の範囲を示している。しかしながら、学習データ31の範囲を表現する方法は、このような例に限定されなくてよい。その他の一例として、学習データ31の範囲を表現する方法には、例えば、k-means法、k近傍法、LOF(local outlier factor)法等の方法が採用されてよい。
 その他の一例として、k-means法を採用する場合、上記ステップS205では、制御部21は、まず、学習データ31をデータ空間上にプロットする。次に、制御部21は、学習データ31を任意数(k個)のクラスタに分割し、各クラスタの妥当な代表点を各プロット点から探索する。そして、制御部21は、各クラスタの範囲を規定するために、各代表点からの距離(以下、「閾値距離」と記載する)を決定する。クラスタの数、代表点及び閾値距離は適宜決定されてよい。制御部21は、各クラスタの範囲を示す情報、すなわち、各代表点の座標及び閾値距離を示す情報をデータ分布情報33として発行する。この場合、上記ステップS102では、制御部11は、各クラスタの代表点と測定値40に対応する点との間の距離を算出し、算出された距離を各クラスタの閾値距離と比較する。算出された距離がいずれかのクラスタの閾値距離以下である場合、制御部11は、学習データ31の範囲に測定値40が属すると判定することができる。一方、算出された距離がいずれのクラスタの閾値距離よりも大きい場合、制御部11は、学習データ31の範囲に測定値40は属さないと判定することができる。
 更にその他の一例として、LOF法を採用する場合、上記ステップS205では、制御部21は、まず、学習データ31をデータ空間上にプロットする。次に、制御部21は、外れ値スコアの算出に利用する最近傍点の個数(k個)を決定する。また、制御部21は、疑似的な入力を適宜生成する。そして、制御部21は、生成された疑似的な入力の点及びその入力点に最近傍のk個のプロット点から外れ値スコアを算出し、算出された外れ値スコアに基づいて、学習データ31の範囲を規定する閾値(以下、「スコア閾値」と記載する)を決定する。最近傍点の個数及びスコア閾値は適宜決定されてよい。制御部21は、学習データ31の各プロット点の座標、最近傍点の個数(k個)及びスコア閾値を示す情報をデータ分布情報33として発行する。この場合、上記ステップS102では、制御部11は、学習データ31の各プロット点から測定値40に対応する点に最近傍のk個のプロット点を抽出する。制御部11は、抽出されたk個のプロット点及び測定値40に対応する点から測定値40の外れ値スコアを算出する。そして、制御部11は、算出された外れ値スコアをスコア閾値と比較する。算出された外れ値スコアがスコア閾値以下である場合、制御部11は、学習データ31の範囲に測定値40が属すると判定することができる。一方、算出された外れ値スコアがスコア閾値より大きい場合、制御部11は、学習データ31の範囲に測定値40は属さないと判定することができる。
 <4.3>
 上記実施形態において、予測モデルMの生成に使用された学習データ31の範囲に測定値40が属するか否かを判定する処理には、機械学習により生成された訓練済みモデルが使用されてもよい。モデル生成装置2は、学習データ31(具体的には、予測モデル5の機械学習において訓練データとして使用されるデータ)を使用して、例えば、1クラスサポートベクタマシン等の1クラス識別器を生成してもよい。この場合、データ分布情報33は、生成された1クラス識別器を再生するための情報を含んでよい。上記ステップS102において、制御装置1は、この1クラス識別器を使用して、予測モデルMの生成に使用された学習データ31の範囲に測定値40が属するか否かを判定してもよい。
 図11は、1クラス識別器として利用可能な訓練済みモデルを生成する方法の一例を模式的に例示する。生成モデル331は、ノイズ(潜在変数)から疑似データを生成するように構成される。識別モデル332は、入力データの由来(入力データが学習データ31から疑似データか)を識別するように構成される。この一例では、モデル生成装置2は、生成モデル331により生成される疑似データ及び学習データ31を入力データとして使用して、入力データを識別した結果の誤差が小さくなるように識別モデル332を訓練する。また、モデル生成装置2は、識別モデル332が識別を誤るような疑似データを生成する(すなわち、疑似データに対する識別誤差が大きくなる)ように生成モデル331を訓練する。生成モデル331及び識別モデル332は、ニューラルネットワーク等の任意の機械学習モデルにより構成されてよい。機械学習モデルは、1つ以上の演算パラメータを備える。各訓練では、所望の出力が得られるように演算パラメータの値が調整される。各訓練の方法として、誤差逆伝播法等の公知の方法が採用されてよい。
 識別モデル332は、生成モデル331の疑似データを生成する能力に応じて、入力データが学習データ31に属するデータか否かを識別する能力を獲得する。一方、生成モデル331は、識別モデル332の識別能力に応じて、学習データ31に類似する疑似データを生成する能力を獲得する。モデル生成装置2は、この識別モデル332及び生成モデル331の訓練を交互に繰り返し実行する。すなわち、モデル生成装置2は、生成モデル331及び識別モデル332の間で敵対的学習を実行する。これにより、生成モデル331は、学習データ31に極めて近い疑似データを生成する能力を獲得するのに応じて、識別モデル332は、入力データが学習データ31に属するデータか否かを精度よく識別する能力を獲得する。この訓練済みの識別モデル332を1クラス識別器として使用することができる。すなわち、モデル生成装置2は、訓練済みの識別モデル332を再生するための情報を含むデータ分布情報33を発行してもよい。上記ステップS102において、制御装置1は、訓練済みの識別モデル332に測定値40を入力し、訓練済みの識別モデル332の演算処理を実行する。制御装置1は、この演算処理により得られる訓練済みの識別モデル332の出力に基づいて、予測モデルMの生成に使用された学習データ31の範囲に測定値40が属するか否かを判定してもよい。
 また、上記実施形態では、学習データ31の範囲に属するか否かの判定に測定値40が直接的に使用されている。しかしながら、学習データ31の範囲に測定値40が属するか否かを判定する方法は、このような例に限定されなくてよい。学習データ31及び測定値40は特徴量空間に写像されてよい。この場合、特徴量空間において、学習データ31の範囲に測定値40が属するか否かの判定が行われてよい。
 図12A及び図12Bは、特徴量空間に写像するためのエンコーダ334を機械学習により生成する方法の一例を模式的に例示する。この機械学習の一例では、エンコーダ334と共に、デコーダ335及び識別モデル336も訓練される。エンコーダ334は、入力データを特徴量に変換するように構成される。デコーダ335は、エンコーダ334により得られた特徴量から元の入力データを復号化するように構成される。識別モデル336は、エンコーダ334により得られた特徴量に基づいて入力データを識別するように構成される。
 まず、図12Aに示されるとおり、モデル生成装置2は、学習データ31(具体的には、予測モデル5の機械学習において訓練データとして使用されるデータ)を使用して、エンコーダ334及びデコーダ335の自己教師あり学習を実行する。すなわち、モデル生成装置2は、学習データ31をエンコーダ334に与えることで、学習データ31を特徴量に変換する。モデル生成装置2は、得られた特徴量をデコーダ335に与えることで、復号化データを生成する。モデル生成装置2は、生成された復号化データ及び学習データ31の間の誤差(すなわち、再構成誤差)が小さくなるようにエンコーダ334及びデコーダ335を訓練する。
 次に、図12Bに示されるとおり、モデル生成装置2は、学習データ31を使用して、エンコーダ334及び識別モデル336の敵対的学習を実行する。具体的に、モデル生成装置2は、訓練データをエンコーダ334に与えることで、訓練データを特徴量に変換する。モデル生成装置2は、得られた特徴量を識別モデル336に与えることで、訓練データを識別した結果を取得する。モデル生成装置2は、エンコーダ334の演算パラメータの値を固定した上で、識別結果と正解との間の誤差が小さくなるように、識別モデル336を訓練する。識別モデル336の識別内容は、特に限定されなくてよく、適宜選択されてよい。識別モデル336は、例えば、目的変数、収集条件、その他の環境(例えば、データを取得した日時、場所等)等を識別するように構成されてよく、その正解を示す情報(正解データ、ラベル、教師信号等と称されてよい)は、訓練データに適宜関連付けられてよい。
 また、モデル生成装置2は、訓練データをエンコーダ334に与えることで、訓練データを特徴量に変換する。モデル生成装置2は、得られた特徴量を識別モデル336に与えることで、訓練データを識別した結果を取得する。モデル生成装置2は、識別モデル336の演算パラメータの値を固定した上で、識別結果が誤るようにエンコーダ334を訓練する。この訓練方法の一例として、正解情報とは異なるダミー情報が適宜与えられてよい。ダミー情報は、例えば、異なるデータセットの正解情報、任意の情報(例えば、ランダムに生成された数値情報)等により構成されてよい。この場合、モデル生成装置2は、識別結果とダミー情報との間の誤差が小さくなるように、エンコーダ334を訓練してもよい。ただし、エンコーダ334の訓練方法は、このような例に限定されなくてよい。その他の一例として、モデル生成装置2は、識別結果と正解との間の誤差が大きくなるように、エンコーダ334を訓練してもよい。
 モデル生成装置2は、識別モデル336の訓練及びエンコーダ334の訓練を交互に繰り返し実行する。これにより、モデル生成装置2は、学習データ31を使用して、エンコーダ334及び識別モデル336の敵対的学習を実行する。
 エンコーダ334、デコーダ335及び識別モデル336は、例えば、ニューラルネットワーク等の任意の機械学習モデルにより構成されてよい。機械学習モデルは、1つ以上の演算パラメータを備える。各訓練では、所望の出力が得られるように演算パラメータの値が調整される。各訓練の方法として、誤差逆伝播法等の公知の方法が採用されてよい。エンコーダ334、デコーダ335及び識別モデル336の各訓練の順番は任意でよい。各訓練の処理は少なくとも部分的に同時に実行されてよい。各訓練は繰り返し実行されてよい。
 上記エンコーダ334及びデコーダ335の訓練により、特徴量から学習データ31(訓練データ)を復号化する能力をデコーダ335が獲得するのに応じて、学習データ31(訓練データ)の復号に有益な情報が特徴量に含まれるように入力データを特徴量に変換する能力をエンコーダ334が獲得する。一方、エンコーダ334及び識別モデル336の敵対的学習により、エンコーダ334により得られる特徴量には、識別モデル336の識別に有益な情報が含まれ難くなる。例えば、識別モデル336が入力データの環境を識別するように構成される場合、エンコーダ334により得られる特徴量には、その環境に関する情報が含まれ難くなる。そのため、識別モデル336の識別内容には、特徴量から取り除くバイアスに関するものが選択されるのが好ましい。
 図13Aは、訓練済みのエンコーダ334により写像される特徴量空間の一例を模式的に例示する。エンコーダ334により得られる特徴量が識別モデル336の識別超平面上に位置すると、その特徴量に基づく識別が困難になるため、識別モデル336の識別が誤る可能性が高くなる。つまり、上記識別モデル336の識別が誤るようにエンコーダ334を訓練した結果、訓練済みのエンコーダ334により学習データ31を変換することで得られる特徴量は、識別モデル336の識別超平面付近に分布するようになる。その結果、訓練済みのエンコーダ334により、学習データ31に属するデータは、識別超平面に近い位置(例えば、図の点s1)に写像されるのに対して、学習データ31に属さない未知のデータは、識別超平面から離れた位置(例えば、図の点s2)に写像される。したがって、訓練済みのエンコーダ334により得られる特徴量によれば、識別超平面又は学習データ31から得られる特徴量の分布と対象データ(測定値40)から得られる特徴量との間の距離に基づいて、対象データが学習データ31に属するか否かを判定することができる。閾値は、適宜決定されてよい。
 上記各訓練が完了した後、モデル生成装置2は、訓練済みのエンコーダ334、特徴量空間における学習データ31の分布又は訓練済みの識別モデル336の識別超平面、及び閾値を示す情報を含むデータ分布情報33を発行してよい。なお、図13Aの例では、特徴量空間は、2次元(x1及びx2は、特徴量の次元を示す)で表現され、訓練済みの識別モデル336の識別超平面は円弧で表現されている。しかしながら、これらは、説明の便宜のための一例に過ぎない。特徴量空間の次元は適宜選択されてよい。識別超平面は、上記訓練の結果として適宜決定されてよい。
 図13Bは、上記ステップS102において、制御装置1が、訓練済みのエンコーダ334を使用して、予測モデルMの生成に使用された学習データ31の範囲に測定値40が属するか否かを判定する処理過程の一例を模式的に例示する。制御部11は、訓練済みのエンコーダ334に測定値40を与えることで、測定値40を特徴量に変換する。そして、制御部11は、判定器337として動作し、得られた特徴量と上記識別超平面又は学習データ31の分布との間の距離を算出し、算出された距離と閾値とを比較する。制御部11は、この比較の結果に応じて、学習データ31の範囲に測定値40が属するか否かを判定する。すなわち、算出された距離が閾値以下である場合、制御部11は、学習データ31の範囲に測定値40が属すると判定することができる。一方、算出された距離が閾値より大きい場合、制御部11は、学習データ31の範囲に測定値40は属さないと判定することができる。なお、学習データ31の分布との間の距離を算出する場合、当該判定には、例えば、k-means法、k近傍法、LOF(local outlier factor)法等の上記方法が用いられてよい。また、判定器337は、例えば、1クラスサポートベクタマシン等の1クラス識別器により構成されてよい。この場合、モデル生成装置2は、訓練済みのエンコーダ334の生成と共に判定器337を生成してもよい。判定器337は、任意の機械学習モデルにより構成されてよい。データ分布情報33は、訓練済みのエンコーダ334及び判定器337を再生するための情報を含むように構成されてよい。
 <4.4>
 上記実施形態において、制御対象装置6は、ウェブ搬送装置60に限定されなくてよく、制御対象は、ウェブ69の幅方向における端部の位置に限定されなくてよく、操作要素は、修正機構64のアクチュエータ643に限定されなくてもよい。他の一例として、制御対象装置6は、サーボモータにより駆動されるプレス機であってもよい。この場合、操作量は、サーボモータによる金型の位置(スライダ位置)であってよく、制御量は、圧縮加工による製品の厚みであってよい。
 <4.5>
 上記実施形態では、ステップS102において、予測モデルMを使用する条件が信頼性条件を満たさないと判定した場合、制御装置1は、ステップS106の処理により、予測の結果45を利用せずに制御指令50を決定している。しかしながら、予測の結果45の利用を停止する形態は、このような例に限定されなくてもよい。その他の一例として、制御装置1は、ステップS106及びステップS107の処理を省略し、制御対象装置6の動作を制御する処理そのものを停止してもよい。なお、予測モデルMを使用する条件が信頼性条件を満たさないことにより予測の結果45を利用しないと判定された場合でも、予測モデルMの演算処理は実行されてもよい。ただし、情報処理の負荷を軽減する観点からは、この予測モデルMの演算処理は省略されることが好ましい。
 <4.6>
 上記実施形態では、制御装置1は、制御指令50を決定し、かつ決定された制御指令50に基づいて、制御対象装置6の動作を制御するように構成されている。しかしながら、制御装置1の構成は、このような例に限定されなくてよい。制御指令50を決定する処理及び制御対象装置6の動作を制御する処理は別々のコンピュータで実行されてよい。例えば、制御装置1は、制御指令50を決定するように構成された上位コントローラ及び決定された制御指令50に応じて制御対象装置6の動作を制御するように構成された下位コントローラにより構成されてよい。各コントローラは、1又は複数台のコンピュータにより構成されてよい。
 図14は、本変形例に係る上位コントローラ1Aのソフトウェア構成の一例を模式的に例示する。本変形例では、上位コントローラ1Aは、下位コントローラ101に接続され、下位コントローラ101は、制御対象装置6に接続される。上位コントローラ1A及び下位コントローラ101のハードウェア構成は、上記実施形態に係る制御装置1と同様であってよい。上位コントローラ1Aのソフトウェア構成は、動作制御部113が動作決定部113Aに置き換わる点を除き、上記実施形態に係る制御装置1と同様であってよい。
 動作決定部113Aは、制御対象装置6の動作を制御する動作制御部113の処理に代えて、決定された制御指令50を下位コントローラ101に出力するように構成される。この点を除いて、動作決定部113Aは、動作制御部113と同様の処理を実行するように構成される。つまり、動作決定部113Aは、予測の結果45を利用して、制御対象装置6に対する制御指令50を決定するように構成される。一方、下位コントローラ101は、制御対象装置6の動作を制御する動作制御部113の処理を実行するように構成される。すなわち、下位コントローラ101は、上位コントローラ1Aから制御指令50を受信し、かつ制御指令50に基づいて、制御対象装置6の動作を制御するように構成される。
 本変形例では、上位コントローラ1Aは、上記実施形態と同様に、ステップS101~ステップS106の処理を実行する。ステップS105及びステップS106では、上位コントローラ1Aの制御部は、動作決定部113Aとして動作し、制御指令50を決定する。そして、上位コントローラ1Aの制御部は、ステップS107の処理に代えて、決定された制御指令50を下位コントローラ101に出力する。これに応じて、下位コントローラ101の制御部は、上位コントローラ1Aから制御指令50を取得し、取得された制御指令50に基づいて、制御対象装置6の動作を制御する。当該変形例によれば、下位コントローラ101に従来のコントローラを利用することができる。そのため、本発明の導入コストを抑えることができる。
 1…制御装置、
 11…制御部、12…記憶部、13…通信インタフェース、
 14…外部インタフェース、
 15…入力装置、16…出力装置、17…ドライブ、
 81…制御プログラム、91…記憶媒体、
 111…取得部、112…予測部、
 113…動作制御部、114…評価部、
 2…モデル生成装置、
 21…制御部、22…記憶部、23…通信インタフェース、
 24…外部インタフェース、
 25…入力装置、26…出力装置、27…ドライブ、
 82…モデル生成プログラム、92…記憶媒体、
 211…データ収集部、212…データ生成部、
 213…学習処理部、214…情報生成部、
 215…保存処理部、
 225…学習結果データ、
 30…実績データ、31…学習データ、
 33…データ分布情報、35…収集条件情報、
 40…測定値、45…(予測の)結果、
 50…制御指令、
 6…制御対象装置、M…予測モデル

Claims (15)

  1.  制御対象装置の状態に関する測定値を取得する取得部と、
     予測モデルを使用して、取得された前記測定値から、前記制御対象装置の未来の動作又は状態に関する予測を行う予測部と、
     前記予測の結果を利用して、前記制御対象装置に対する制御指令を決定し、かつ決定された制御指令に基づいて、前記制御対象装置の動作を制御する動作制御部と、
     前記予測モデルを使用する条件が信頼性条件を満たすか否かを判定する評価部と、
    を備える制御装置であって、
     前記予測モデルを使用する条件が信頼性条件を満たさないと判定された場合に、前記動作制御部は、前記予測の結果の利用を停止する、
    制御装置。
  2.  前記予測モデルを使用する条件が信頼性条件を満たすか否かは、前記予測モデルの生成に使用された学習データの範囲に取得された前記測定値が属するか否かに基づいて判定される、
    請求項1に記載の制御装置。
  3.  前記学習データの範囲はデータ分布により表現され、
     前記学習データの範囲に前記測定値が属するか否かは、前記データ分布に前記測定値が含まれるか否かに基づいて判定される、
    請求項2に記載の制御装置。
  4.  前記予測モデルを使用する条件が信頼性条件を満たすか否かは、動作を制御する際の前記制御対象装置の動作条件が、前記予測モデルの生成に使用された学習データを収集した際の制御対象装置の動作条件の範囲に属するか否かに基づいて判定される、
    請求項1に記載の制御装置。
  5.  前記制御対象装置の状態に関する前記測定値は、前記制御対象装置の制御量の測定値である、
    請求項1から4のいずれか1項に記載の制御装置。
  6.  前記制御対象装置の未来の動作又は状態に関する予測の結果は、前記制御対象装置の制御量の予測値、制御量の目標値に対する補正値、前記制御対象装置に対する操作量の予測値、及び操作量に対する補正値のいずれかにより構成される、
    請求項1から5のいずれか1項に記載の制御装置。
  7.  制御対象装置の状態に関する測定値を取得する取得部と、
     予測モデルを使用して、取得された前記測定値から、前記制御対象装置の未来の動作又は状態に関する予測を行う予測部と、
     前記予測の結果を利用して、前記制御対象装置に対する制御指令を決定し、かつ決定された制御指令を下位コントローラに出力する動作決定部と、
     前記予測モデルを使用する条件が信頼性条件を満たすか否かを判定する評価部と、
    を備える上位コントローラであって、
     前記予測モデルを使用する条件が信頼性条件を満たさないと判定された場合に、前記動作決定部は、前記予測の結果の利用を停止する、
    上位コントローラ。
  8.  前記予測モデルを使用する条件が信頼性条件を満たすか否かは、前記予測モデルの生成に使用された学習データの範囲に取得された前記測定値が属するか否かに基づいて判定される、
    請求項7に記載の上位コントローラ。
  9.  前記予測モデルを使用する条件が信頼性条件を満たすか否かは、動作を制御する際の前記制御対象装置の動作条件が、前記予測モデルの生成に使用された学習データを収集した際の制御対象装置の動作条件の範囲に属するか否かに基づいて判定される、
    請求項7に記載の上位コントローラ。
  10.  コンピュータが、
     制御対象装置の状態に関する測定値を取得するステップと、
     予測モデルを使用して、取得された前記測定値から、前記制御対象装置の未来の動作又は状態に関する予測を行うステップと、
     前記予測の結果を利用して、前記制御対象装置に対する制御指令を決定するステップと、
     決定された制御指令に基づいて、前記制御対象装置の動作を制御するステップと、
     前記予測モデルを使用する条件が信頼性条件を満たすか否かを判定するステップと、
    を実行する制御方法であって、
     前記予測モデルを使用する条件が信頼性条件を満たさないと判定された場合に、前記コンピュータは、前記予測の結果の利用を停止する、
    制御方法。
  11.  前記予測モデルを使用する条件が信頼性条件を満たすか否かは、前記予測モデルの生成に使用された学習データの範囲に取得された前記測定値が属するか否かに基づいて判定される、
    請求項10に記載の制御方法。
  12.  前記予測モデルを使用する条件が信頼性条件を満たすか否かは、動作を制御する際の前記制御対象装置の動作条件が、前記予測モデルの生成に使用された学習データを収集した際の制御対象装置の動作条件の範囲に属するか否かに基づいて判定される、
    請求項10に記載の制御方法。
  13.  コンピュータに、
     制御対象装置の状態に関する測定値を取得するステップと、
     予測モデルを使用して、取得された前記測定値から、前記制御対象装置の未来の動作又は状態に関する予測を行うステップと、
     前記予測の結果を利用して、前記制御対象装置に対する制御指令を決定するステップと、
     決定された制御指令に基づいて、前記制御対象装置の動作を制御するステップと、
     前記予測モデルを使用する条件が信頼性条件を満たすか否かを判定するステップと、
    を実行させるための制御プログラムであって、
     前記予測モデルを使用する条件が信頼性条件を満たさないと判定された場合に、前記コンピュータに、前記予測の結果の利用を停止させる、
    制御プログラム。
  14.  前記予測モデルを使用する条件が信頼性条件を満たすか否かは、前記予測モデルの生成に使用された学習データの範囲に取得された前記測定値が属するか否かに基づいて判定される、
    請求項13に記載の制御プログラム。
  15.  前記予測モデルを使用する条件が信頼性条件を満たすか否かは、動作を制御する際の前記制御対象装置の動作条件が、前記予測モデルの生成に使用された学習データを収集した際の制御対象装置の動作条件の範囲に属するか否かに基づいて判定される、
    請求項13に記載の制御プログラム。
PCT/JP2021/020335 2020-06-17 2021-05-28 制御装置、上位コントローラ、制御方法、及び制御プログラム WO2021256215A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020104364A JP2021196999A (ja) 2020-06-17 2020-06-17 制御装置、上位コントローラ、制御方法、及び制御プログラム
JP2020-104364 2020-06-17

Publications (1)

Publication Number Publication Date
WO2021256215A1 true WO2021256215A1 (ja) 2021-12-23

Family

ID=79195704

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/020335 WO2021256215A1 (ja) 2020-06-17 2021-05-28 制御装置、上位コントローラ、制御方法、及び制御プログラム

Country Status (2)

Country Link
JP (1) JP2021196999A (ja)
WO (1) WO2021256215A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023176324A (ja) * 2022-05-31 2023-12-13 アサヒビール株式会社 コントローラ、制御方法およびプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1074188A (ja) * 1996-05-23 1998-03-17 Hitachi Ltd データ学習装置およびプラント制御装置
JP2019179468A (ja) * 2018-03-30 2019-10-17 オムロン株式会社 制御装置、制御方法、及び制御プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1074188A (ja) * 1996-05-23 1998-03-17 Hitachi Ltd データ学習装置およびプラント制御装置
JP2019179468A (ja) * 2018-03-30 2019-10-17 オムロン株式会社 制御装置、制御方法、及び制御プログラム

Also Published As

Publication number Publication date
JP2021196999A (ja) 2021-12-27

Similar Documents

Publication Publication Date Title
EP3809220B1 (en) Method and system for semi-supervised deep anomaly detection for large-scale industrial monitoring systems based on time-series data utilizing digital twin simulation data
Zhao et al. Deep multi-scale convolutional transfer learning network: A novel method for intelligent fault diagnosis of rolling bearings under variable working conditions and domains
US10831577B2 (en) Abnormality detection system, abnormality detection method, abnormality detection program, and method for generating learned model
Wu et al. Cloud-based parallel machine learning for tool wear prediction
CN107944563B (zh) 机械学习装置以及机械学习方法
Souza et al. Variable and delay selection using neural networks and mutual information for data-driven soft sensors
EP3805875B1 (en) Control system and method for controlling the operation of a production device
JP2021512422A (ja) ファンの動作やファン配置を最適化する方法
EP4068140A1 (en) Method and system for optimizing a simulation model using machine learning
Wang et al. A method for predicting hobbing tool wear based on CNC real-time monitoring data and deep learning
JP7081728B1 (ja) 運転支援装置、運転支援方法及びプログラム
Wu et al. Control chart pattern recognition using an integrated model based on binary-tree support vector machine
WO2021256215A1 (ja) 制御装置、上位コントローラ、制御方法、及び制御プログラム
Zermane et al. Development of an efficient cement production monitoring system based on the improved random forest algorithm
Sayyad et al. Tool wear prediction using long short-term memory variants and hybrid feature selection techniques
Lerra et al. Prediction of micro-scale forces in dry grinding process through a FEM—ML hybrid approach
Brunner et al. Online sensor validation in sensor networks for bioprocess monitoring using swarm intelligence
Shukla et al. Digital twin-based prediction for CNC machines inspection using blockchain for industry 4.0
JP6201556B2 (ja) 予測モデル学習装置、予測モデル学習方法およびコンピュータプログラム
Zouhri et al. Identification of the key manufacturing parameters impacting the prediction accuracy of support vector machine (SVM) model for quality assessment
JP7006640B2 (ja) 制御装置、制御方法、及び制御プログラム
CN116720079A (zh) 基于多特征融合的风力发电机故障模式识别方法及系统
Ogorodnyk et al. Prediction of width and thickness of injection molded parts using machine learning methods
Pooyandeh et al. Smart Lithium-Ion Battery Monitoring in Electric Vehicles: An AI-Empowered Digital Twin Approach
Sharma et al. Hybrid Multi-Scale Convolutional Long Short-Term Memory Network for Remaining Useful Life Prediction and Offset Analysis

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: 21826895

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21826895

Country of ref document: EP

Kind code of ref document: A1