WO2019142728A1 - 制御装置、制御方法およびプログラム記録媒体 - Google Patents
制御装置、制御方法およびプログラム記録媒体 Download PDFInfo
- Publication number
- WO2019142728A1 WO2019142728A1 PCT/JP2019/000648 JP2019000648W WO2019142728A1 WO 2019142728 A1 WO2019142728 A1 WO 2019142728A1 JP 2019000648 W JP2019000648 W JP 2019000648W WO 2019142728 A1 WO2019142728 A1 WO 2019142728A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- control
- input
- simulator
- model
- information
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive 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
Definitions
- the present invention relates to a control device that controls a system, a control method, and a program.
- control for a real environment or a system (hereinafter simply referred to as a system) is roughly divided into a feedback method and a feed forward method.
- the feedback method observation data in the past is acquired from the system, and the system is controlled based on the acquired data and predetermined rules.
- the feed forward method a future model is predicted to control the system by a prediction model which predicts the next state of the system.
- Patent Document 1 discloses a control device that controls a supply chain that transports a product produced at a supply location to a demand location.
- the device of Patent Document 1 changes the production plan based on the production amount, the order receipt amount, and the inventory amount of the product to be produced and transported based on the previously generated production plan and transport plan.
- Patent Document 2 discloses a method of creating a simulation model for unifying creation of a model for simulating operations ranging from parts of one function to a machine combining many parts and a system combining a plurality of machines. Is disclosed. According to the method of Patent Document 2, when any one of a plurality of functional reproduction models includes a non-linear characteristic element, the non-linear characteristic element is replaced with a predetermined linear element, and then the plurality of models are integrated and integrated. Link the non-linear characteristic element to the predetermined linear element in According to the method of Patent Document 2, it is possible to unifyly simulate the operation of a system composed of various physical systems.
- Patent Document 3 discloses an information processing apparatus that predicts a future state to determine an operation amount.
- the apparatus of Patent Document 3 includes information storage means, prediction formula set learning generation means, and operation amount determination means.
- the information storage means stores control target information including information on the control target and its surrounding environment.
- the prediction equation set learning generation means learns / generates a prediction equation set used to determine the operation amount for the control object based on the control object information stored in the information storage means.
- the operation amount determining means constructs a prediction control model to be controlled based on the prediction equation set, the control object information and the input information, and determines the operation amount to be used for control of the control object. According to the device of Patent Document 3, it is possible to automatically construct a predictive control model so as to reduce a gap between the predictive control model and the real world.
- Patent Document 4 discloses a data processing apparatus for plant control.
- the apparatus of Patent Document 4 includes a physical model parameter estimation unit and an output variation calculation unit.
- the physical model parameter estimation unit estimates physical model parameters of the control target model of the plant and variations of the physical model parameters based on operation data of the plant.
- the output variation calculation unit calculates the variation of a predetermined output from the control target model when the selected predetermined control parameter is input to the control target model, based on the variation of the physical model parameter. According to the device of Patent Document 4, the control parameter can be optimized so that the variation of the predetermined output is reduced.
- Patent Document 5 discloses a simulation system capable of continuing the simulation under different simulation conditions while executing the simulation.
- the system of Patent Document 5 includes a host computer including a simulation condition setting unit and a simulation control unit, and a simulation apparatus including a communication processing unit and a simulation execution unit.
- the simulation condition setting unit sets simulation conditions based on an operation by the operator.
- the simulation control unit transmits the set simulation conditions to the simulation apparatus to start the simulation.
- the communication processing unit divides the plurality of simulation conditions transmitted from the host computer into the storage unit and stores them. While executing simulation based on the first simulation condition stored in the predetermined area, the simulation execution unit switches to simulation based on the second simulation condition stored in another area to continue the simulation.
- a simulation model that describes the behavior of a system mathematically includes the approximations used in the mathematical description, uncertainty that real time and spatial information can not be accurately obtained, and temporal changes. Due to the influence of parameters that can be obtained, it is not always possible to reproduce reality accurately. That is, since there is often a difference between a real system and its simulation model, control based on that simulation is not always appropriate. Therefore, the techniques disclosed in Patent Document 1 and Patent Document 2 have a problem that it is not always possible to generate a control model for a system including uncertainty and time variation.
- the device of Patent Document 3 it is possible to automatically construct a prediction control model based on control object information from the past to the present, and to determine the manipulated variable of the control object using the constructed prediction control model.
- the device of Patent Document 3 determines the operation amount based on the input information input through the input device, the operation amount can not be determined when it is not connected to the control target. That is, the device of Patent Document 3 has a problem that the operation amount can not be determined based on the predictive control model when the connection with the control target is not established and the control target includes uncertainty.
- the object of the present invention is to control the control target to a target state even if the control target incorporates uncertainty and time fluctuation in order to solve the above-mentioned problems. It is in providing a control device.
- the control device stores control input information for controlling a control target system and simulator information on a simulation model of the control target system, and inputs the information to a simulator that executes simulation based on the simulation model.
- a simulator input condition is set based on control input information, and a simulation is executed using the simulator input condition and the simulator information to generate a data set between the input and output of the simulator, and data from the data generation unit A set is obtained and stored, control objective information on the control target system and optimal control conditions of the control target system are stored, and any simulator output included in the data set is used as an evaluation index based on the control objective information.
- a control model representing the relationship between the input and output of the simulator is generated using the data set corresponding to the index and the evaluation index, and the optimal control input of the controlled system is selected using the generated control model and the optimal control condition. And a model generation unit.
- simulator input conditions to be input to a simulator that executes a simulation based on a simulation model of the control target system are set.
- the simulation is executed using the simulator information on the simulation model of the control target system and the simulator input conditions to generate a data set between the input and output of the simulator, and any of the data set is included based on the control purpose information on the control target system
- Control output representing the relationship between the input and output of the simulator using the data set corresponding to the selected evaluation index and the evaluation index, and the generated control model and control target Optimal system of system Selecting an optimum control input of the control systems by using the condition.
- a program sets a simulator input condition to be input to a simulator that executes a simulation based on a simulation model of a control target system based on control input information for controlling the control target system; Processing to execute a simulation using simulator information on a simulation model of a control target system and simulator input conditions to generate a data set between the input and output of the simulator, and included in the data set based on control purpose information on a control target system A process of selecting any one of the simulator outputs as an evaluation index, a process of generating a control model representing the relationship between the input and output of the simulator using the data set corresponding to the selected evaluation index and the evaluation index, and Control model To perform the optimum control condition of the control systems and process of selecting the optimal control input of the control systems using the computer.
- control device capable of controlling the control target to a target state even when the control target incorporates uncertainty and time fluctuation. Become.
- control device according to a first embodiment of the present invention will be described with reference to the drawings.
- a control target of the control device of the present embodiment a system such as a manufacturing line and a supply chain is assumed and described.
- the control object of the control apparatus of this embodiment is not limited to these systems.
- the control device of the present embodiment can acquire a state as observation data by a sensor or the like and any system that operates based on a control input, any system can be set as a control target.
- FIG. 1 is a block diagram showing an example of the configuration of the control device 1 of the present embodiment. As shown in FIG. 1, the control device 1 includes a data generation unit 10 and a model generation unit 20.
- the data generation unit 10 stores information (hereinafter referred to as control input information) such as the type and range of control input related to a control target system (hereinafter referred to as a target system). Further, the data generation unit 10 stores information on a simulation model (hereinafter also referred to as simulator information).
- the data generation unit 10 sets conditions (hereinafter also referred to as simulator input conditions) to be input to the simulator based on the control input information.
- the data generation unit 10 executes a simulation using the simulator input conditions and the simulator information to generate a data set between the input and output of the simulator (hereinafter referred to as a data set).
- a data set is a set of input data to a simulator and output data (also called simulator output) obtained by simulation using the input data.
- the data generation unit 10 outputs the generated data set to the model generation unit 20.
- the model generation unit 20 acquires a data set from the data generation unit 10.
- the model generation unit 20 stores the data set acquired from the data generation unit 10.
- the model generation unit 20 stores information (hereinafter, also referred to as control purpose information) regarding a target variable or value of control of the target system.
- the model generation unit 20 also stores the optimal control condition of the target system (hereinafter also referred to as the optimal control condition).
- the model generation unit 20 selects any one of the simulator outputs included in the data set as an evaluation index based on the control purpose information.
- the model generation unit 20 generates a control model representing the relationship between the simulator input and output, using the data set corresponding to the selected evaluation index and the evaluation index.
- the model generation unit 20 selects an optimum control input (hereinafter also referred to as an optimum control input) using the generated control model and the optimum control condition.
- the optimum control input selection unit 26 stores the selected optimum control input. For example, the optimal control input stored in the model generation unit 20 is transmitted to a target system (not shown).
- FIG. 2 is a block diagram showing an example of the detailed configuration of the data generation unit 10. As shown in FIG. As shown in FIG. 2, the data generation unit 10 includes a control input information storage unit 11, an input condition setting unit 12, a simulator information storage unit 13, and a data set generation unit 14.
- the control input information storage unit 11 stores control input information on a target system.
- the control input information storage unit 11 controls information on types of manufacturing process, manufacturing apparatus, manufacturing process, etc. in a manufacturing line, manufacturing amount, manufacturing frequency, adjustment items such as manufacturing speed, and information on the range of those values. It is stored as input information.
- the control input information stored in the control input information storage unit 11 may be information on individual manufacturing lines or processes, or may be information on each process or flow in the supply chain.
- the range of values may be information set as a plan or a range of data that can be input to the device. In addition, when the range is not determined, the range may be determined from specific values as appropriate.
- the control input information is not limited to the example described above.
- the input condition setting unit 12 sets a simulator input condition based on the control input information stored in the control input information storage unit 11.
- the input condition setting unit 12 separates the time-evolving state variable, the control input, and the fixed or time-varying characteristic parameter out of all the variables in the simulator, and inputs the state space model of any form into the simulator input. Set as a condition.
- f time be a function that develops state variable x in the simulator from time t-1 to time t
- x t be a state variable vector at time t.
- the state variable vector at the previous time t-1 can be expressed as the following equation 1 using xt-1 .
- time t-1 corresponds to the time when the previous simulation was performed.
- a control input at time t is u t
- a fixed or time-varying characteristic parameter at time t is ⁇ t .
- the input condition setting unit 12 sets values and ranges of the control input ut and the characteristic parameter ⁇ ⁇ ⁇ ⁇ ⁇ t among the input variables to the state space model. For example, the input condition setting unit 12 sets the production amount as a control input as 0 to 2 times the standard amount, and sets the production efficiency (also called efficiency) as a characteristic parameter as 0 to 1 times a standard value.
- the information on the simulator input conditions by the input condition setting unit 12 is not limited to the above-described example.
- the simulator information storage unit 13 stores information on a simulation model (also referred to as simulator information).
- the simulator information is a rule indicating time evolution of an equation or a state variable, an execution environment for executing the simulator, information on a necessary data set, and the like.
- the mapping (function) f time representing the time evolution of the simulator corresponds to the simulator information.
- a simulation model a time evolution formula based on a model in which each manufacturing process is viewed macroscopically.
- a model which macroscopically looks at each manufacturing process a relative velocity model, a buffered production line model, a fluid model and the like can be mentioned as an example.
- a simulation model a time evolution formula based on a model in which each manufacturing process is viewed microscopically.
- a multi-agent model is mentioned as an example as a model which sees each manufacturing process micro-wise.
- the simulation model that can be applied in the present embodiment is not limited to the above-described model as long as the target output (hereinafter referred to as the target output) can be obtained from the control input.
- the data set generation unit 14 acquires simulator input conditions from the input condition setting unit 12. Further, the data set generation unit 14 acquires simulator information for executing a simulation from the simulator information storage unit 13. Furthermore, the data set generation unit 14 includes a simulator not shown. The data set generation unit 14 executes a simulation using the acquired simulator input condition and simulator information to generate a data set between the input and output of the simulator.
- Data set generating unit 14 based mapping (function) f time representing the time evolution corresponding to the simulator information, at least one of the control input u t and characteristic parameters theta t, simulate the range specified and the number Do.
- the data set generation unit 14 a control input information, such as the control input u t and characteristic parameter theta t inputted, obtains all data sets of the output data is a simulation result using the control input information. At this time, the data set acquired by the data set generation unit 14 is a data set between input and output of the simulator. Then, the data set generation unit 14 outputs the acquired data set to the model generation unit 20.
- a control input information such as the control input u t and characteristic parameter theta t inputted
- the matrix collect the output data output at time t is expressed as y t *, representing a control input u t and characteristic parameters theta t is simulator input conditions and x t *.
- a data set between input and output at a target time can be expressed by the following equation 3 using the control input ut at time t and the characteristic parameter ⁇ t .
- simulation is performed multiple times using a probability density such as a Gaussian function as a variable to be set in the simulator, or a probabilistic method such as ensemble approximation represented by superposition of a plurality of delta functions.
- a probability density such as a Gaussian function as a variable to be set in the simulator
- a probabilistic method such as ensemble approximation represented by superposition of a plurality of delta functions.
- FIG. 3 is a block diagram showing an example of a detailed configuration of the model generation unit 20.
- the model generation unit 20 includes a data set storage unit 21, a control purpose information storage unit 22, a control model generation unit 23, a control model information storage unit 24, an optimal control condition storage unit 25, and an optimal control input selection unit. 26, and an optimum control input information storage unit 27.
- the data set storage unit 21 stores a data set generated by the data generation unit 10. That is, the data set storage unit 21 stores a data set calculated by the data set generation unit 14 of the data generation unit 10. The data set storage unit 21 stores a data set between input and output regarding all simulator outputs as shown in Equation 3.
- the control purpose information storage unit 22 stores information (also referred to as control purpose information) regarding a variable or a value to be controlled.
- the control model generation unit 23 refers to the data set storage unit 21 and the control purpose information storage unit 22 and generates a control model representing the relationship between the simulator input and output.
- the control model generation unit 23 selects a simulator output included in the data set stored in the data set storage unit 21 as an evaluation index. That is, the control model generation unit 23 selects, as an evaluation index, a target variable of control stored in the control purpose information storage unit 22 among the simulator outputs, that is, an output desired to satisfy a specific criterion according to the purpose. Do.
- control model generation unit 23 acquires control object information stored in the control object information storage unit 22, and one of the simulator outputs stored in the data set storage unit 21 based on the acquired control object information Select as an evaluation index.
- control model generation unit 23 calculates a specific output value (element y * j, t of the matrix y t * ) included in the matrix y t * obtained by collecting simulator outputs at time t, as shown in Equation 4 below. It is selected as an evaluation index J t at time t.
- control model generation unit 23 is expressed by superimposing a plurality of output values using a weighting factor w from a matrix y t * that collects simulator outputs at time t, as shown in the following Equation 5. that the output value ⁇ w k y * k, may be selected t as an evaluation index J t.
- the control model generation unit 23 generates a control model representing the relationship between the simulator input and output using the data set stored in the data set storage unit 21 and the generated evaluation index J.
- the control model generation unit 23 stores the generated control model in the control model information storage unit 24.
- Equation 6 a symbol with a wavy line above H is a vector that relates the multidimensional vector x t * to the one-dimensional evaluation index J t .
- Equation 6 et is an error term.
- the relationship expressed by the relational expression such as Equation 6 will be referred to as a control model.
- control model receives the control input u and the characteristic parameter ⁇
- control model can be expressed as the following equation 7 using the mapping m cont. Representing the control model.
- the mapping m cont. Used in Equation 7 can be obtained by a method such as Gaussian process regression.
- Gaussian process regression GPR: Gaussian Process Regression
- the evaluation index J is expressed as the following equation 8.
- m (u, ⁇ ) is an average value (expected value)
- k (u, ⁇ , u ′, ⁇ ′) is a dispersion represented using a kernel function k.
- the control model information storage unit 24 stores a control model represented by Equation 6 or Equation 7. In other words, the control model information storage unit 24 stores the control model generated by the control model generation unit 23.
- the method of generating the control model stored in the control model information storage unit 24 is not limited to the methods of Equations 6 to 8. Further, in the present embodiment, the influence of the difference in control model on the control characteristics and the appropriateness of control is not considered.
- the optimum control condition storage unit 25 stores conditions (hereinafter, also referred to as optimum control conditions) for optimally controlling the target system.
- the optimal control input selection unit 26 acquires the optimal control conditions stored in the optimal control condition storage unit 25 and the control model stored in the control model information storage unit 24.
- the optimum control input selection unit 26 selects an optimum control input (also referred to as an optimum control input) using the acquired optimum control conditions and the control model.
- the optimum control input selection unit 26 stores the selected optimum control input in the optimum control input information storage unit 27.
- the relational expression (also referred to as a control model expression) of the control model represented by Expression 6 or Expression 7 stored in the control model information storage unit 24 is a form of obtaining the evaluation index J with the control input u and the characteristic parameter ⁇ as inputs. It has become. Therefore, the control model equation stored in the control model information storage unit 24 is suitable as a format for confirming the range of the input value and the range and the response of the value of the evaluation index J with respect to the fluctuation.
- Equation 9 is an equation for determining the evaluation index J as the optimum evaluation index J opt and calculating the control input u and the characteristic parameter ⁇ .
- ⁇ in Equation 9 below is a parameter in the inverse function.
- Expression 9 corresponds to the inverse function of Expression 6 and Expression 7.
- the procedure for calculating the equation 9 corresponding to the inverse function after obtaining the relational equation of the equation 6 and the equation 7 has been described, but the equation 9 may be obtained directly from the data set and the evaluation index J .
- the optimum control input selection unit 26 solves the equation 9 to calculate the control input u and the characteristic parameter ⁇ .
- the optimal evaluation index J opt is defined by the information stored in the optimal control condition storage unit 25.
- the control model information storage unit 24 stores the control input u calculated by determining the optimum evaluation index J opt in the optimum control input information storage unit 27 as an optimum control input.
- the optimal control input information storage unit 27 stores the optimal control input derived by the optimal control input selection unit 26.
- the evaluation index J of the equation 6 or 7 represents the manufacturing efficiency
- a value at which the manufacturing efficiency is maximized can be set as the optimum evaluation index J opt .
- the evaluation index J represents an inventory amount
- a value at which the inventory amount is minimum can be set as the optimum evaluation index J opt .
- the control conditions for setting the optimal evaluation index J opt may be set according to the control target, purpose, time, etc., and may be temporally changed.
- the information regarding control conditions is not limited to the example mentioned above.
- FIG. 4 is a flowchart for explaining the operation of the control device 1 of the present embodiment. In the description following the flowchart of FIG. 4, the control device 1 will be described as the subject of the operation.
- the control device 1 sets simulator input conditions including a data set input to the simulator and simulator information including an operation condition of the simulator from the range of control input corresponding to the target system to be controlled. (Step S11).
- control device 1 executes a simulation using the simulator input conditions and the simulator information to generate a data set (step S12).
- the control device 1 stores the generated data set.
- the control device 1 may repeatedly execute the simulation using different simulator input conditions and simulator information.
- control device 1 extracts an evaluation index from among the simulator outputs included in the data set based on the stored control purpose information (step S13).
- control device 1 generates a control model that satisfies the relationship between the control input information to the simulator and the evaluation index, using the stored data set and the extracted evaluation index (step S14).
- the control device 1 stores the generated control model.
- control device 1 calculates an optimal control input that satisfies the stored control conditions and control model (step S15).
- control device of the present embodiment can control a target system including uncertainty and time fluctuation according to the features described below.
- the first feature does not generate a model that can reproduce the behavior of the target system completely and precisely, but instead models the target system by modeling the relationship between the target state and the control input of the controllable controller. It is to control to the target state.
- the second feature is that the relationship between the target state and the control input necessary for modeling the target system is generated using a simulator that mimics the behavior of the real system, not the observation data of the real system. Therefore, the control device of the present embodiment can also execute probabilistic simulation when there is an uncertain execution condition or when the accuracy is insufficient.
- control device of the present embodiment can generate a model specialized for the purpose of control from the execution result of the simulator.
- the control device of the present embodiment can execute generation and correction of the control model only by changing the setting of the simulation execution condition without relying on acquisition of observation data depending on the observation environment and the operating condition of the actual system. That is, according to the control device of the present embodiment, it is possible to more appropriately control the control target system including the uncertainty and the time fluctuation to the target state.
- FIG. 5 is a conceptual diagram for explaining a typical system control method according to the related art.
- FIG. 6 is a conceptual diagram for explaining the system control method according to the first embodiment.
- control methods for an environment or a system are roughly classified into a feedback method and a feed forward method as shown in FIG.
- a feedback method past observational data on the system is acquired by a sensor or the like, and the system is controlled based on the acquired observational data and a predetermined rule.
- a feed forward method a future model is predicted to control the system by a prediction model which predicts the next state of the system. As shown in FIG. 5, observation data of the system is required in any control method.
- the first situation is a situation in which there is no observation data that is essential for the generation of a feedback or prediction model or there is a clear shortage.
- the type of missing data or the range of data values may not be clear.
- the second situation is the situation where control is being performed.
- the problem is that it is not possible to obtain data on fixed or time-varying characteristics that characterize the behavior when not controlling the system.
- the control device of the first embodiment does not generate a simulation model or a prediction model that can reproduce the behavior of the target system completely and accurately in control of the target state of the target system.
- the control device of the first embodiment reveals the relationship between the control input of the controllable controller and the state of the target by generating a control model that represents the relationship between the control input and the target output of the target system. Make it According to the control device of the first embodiment, it is possible to generate a control model of simulation even for a system in which the control object includes uncertainty and time fluctuation, and complete / high-precision modeling is substantially impossible.
- data necessary for simulation can be acquired in real time by a controller, a sensor and the like installed in an actual system.
- the control device of each embodiment generates a control input and data of a target output according to a simulation model that simulates the behavior of the system. There is a difference between the real system and the simulation model.
- the control device of each embodiment generates a simulation model for obtaining a plurality of data sets combining possible control inputs and outputs for the control inputs, instead of using simulation models for system behavior and prediction. Do. That is, the control device of each embodiment uses, for control, calculation data generated based on a simulation model instead of observation data used for simulation in the related art.
- the control model focusing on the relationship between the input and output of the actual system is generated. Do. Then, in the first embodiment, data required to generate a control model is generated by a simulation model.
- FIG. 7 is a block diagram showing an example of the configuration of the control device 2 of the present embodiment.
- the control device 2 includes a data generation unit 10 and a model generation unit 20-2.
- the model generation unit 20-2 includes a data set storage unit 21, a control purpose information storage unit 22, a control model generation unit 23, a control model information storage unit 24, an optimal control condition storage unit 25, an optimal control input selection unit 26, and an optimal control.
- a validity determination unit 28 is provided.
- the control device 2 differs from the control device 1 of the first embodiment in that the control device 2 includes a model generation unit 20-2 including a validity determination unit.
- the control device 2 is the same as the control device 1 of the first embodiment except that it includes the validity determination unit 28. Therefore, detailed description of the configuration other than the validity determination unit 28 will be omitted.
- the validity determining unit 28 determines the validity of the control model. That is, in the validity determination unit 28, the control model generation unit 23 determines the validity of the generated control model. When the validity determination unit 28 determines that the control model is not appropriate, the validity determination unit 28 outputs an instruction to correct the simulator input condition to the data generation unit 10. On the other hand, when the validity determining unit 28 determines that the control model is valid, the optimum control input selecting unit 26 selects the optimum control input using the control model determined as being valid and the optimum control condition. Do.
- the input condition setting unit 12 acquires an instruction to correct the simulator input condition from the validity determination unit 28, the control input input input to the simulator, the value of the characteristic In the following, it will be called "inappropriate value”.
- the input condition setting unit 12 corrects the input condition regarding the identified inappropriate value.
- the input condition setting unit 12 newly adds the production frequency as the control input as 0 to 1 times the standard value, or the production efficiency as the characteristic parameter is 0 to 1.5 as the standard value. Make corrections such as changing to double.
- the validity determination unit 28 determines the validity of the control model generated by the control model generation unit 23.
- the appropriateness determination unit 28 specifies an inappropriate value among the control input input to the simulator and the value or range of the characteristic parameter. And correct the simulator input conditions. For example, the following two viewpoints can be considered about the determination method of the validity by the validity determination part 28.
- the first aspect is the range of input values included in the data set input to the simulator.
- the validity determination unit 28 sets the valid range of the function assumed by the control model equation and the controller that is actually to be controlled. Alternatively, it is determined whether there is a difference with respect to the range of values to be set.
- the range of values assumed in the control model equation is the range of values of the control input u and the characteristic parameter ⁇ as the effective range of the function.
- the model generation unit 20-2 determines the range of the value actually set and the value in the control model equation. Identify the range of differences. Then, the model generation unit 20-2 causes the input condition setting unit 12 to set a new simulator input condition based on the specified range.
- the second aspect is the response characteristics of the evaluation index to changes in input.
- the second aspect is divided into a first point of uniquely determining an optimal control value and a second point of stably maintaining the state of the optimal control value.
- the first point of the second aspect is that the optimum control input selection unit 26 determines the value of the control input to be input at the next step of the target system or any designated time, or calculates the value of the characteristic parameter Related to the action to be done.
- the first necessary condition is that the optimal control condition storage unit 25 stores an appropriate optimal evaluation index J opt .
- the second requirement is that the form of the function of Equation 6 or Equation 7 exhibits, for example, a convex function or unimodality, or has a maximum value or a minimum value.
- the output value is different for the combination of the control input u different in a predetermined range and the characteristic parameter ⁇
- the control device 1 can not generate the target output if the above-described requirements are not satisfied.
- the control input u and the characteristic parameter ⁇ can be specified from among a plurality of combinations by performing restriction such as specifying a predetermined range, for example, by the parameter 9 in Equation 9 corresponding to the inverse function. . Even if this can not be specified, or if there is no information about the predetermined range in advance, the above-mentioned requirements will not be satisfied.
- control is performed to return the output value to the optimal value when the combination of the control input u and the characteristic parameter ⁇ deviates or when the system characteristic deviates.
- the state in which the input u acts is called stable.
- a control model equation such as equation 6 or equation 7 can be differentiated twice continuously in a predetermined range
- the control model equation is a function that is convex downward if the second order differential value becomes a positive value. And become stable when the output value is minimized.
- the input condition setting unit 12 corrects the setting and generates the control model generation source. Change the input / output data to the simulator.
- the range of values of input / output data set to be used, the form of kernel function, etc. may be restricted or appropriately selected. You should do it.
- the determination method of the validity of the control model and the correction method based on the determination result are not limited to the examples described above.
- FIG. 8 is a flowchart for explaining the operation of the control device 2 of the present embodiment. In the description according to the flowchart of FIG. 8, the control device 2 will be described as the subject of the operation.
- the control device 2 sets simulator input conditions including a data set to be input to the simulator and simulator information including operation conditions of the simulator from the range of control input corresponding to the target system to be controlled. (Step S21).
- control device 2 executes a simulation using the simulator input conditions and the simulator information to generate a data set (step S22).
- the control device 2 stores the generated data set.
- the control device 2 may repeatedly execute the simulation multiple times using different simulator input conditions and simulator information.
- control device 2 extracts an evaluation index from the simulator output included in the data set based on the stored control purpose information (step S23).
- control device 2 generates a control model that satisfies the relationship between the control input information to the simulator and the evaluation index, using the stored data set and the extracted evaluation index (step S24).
- the control device 2 stores the generated control model.
- control device 2 determines the validity of the generated control model (step S25). For example, as described above, the control device 2 determines the validity of the control model by evaluating the response characteristics of the evaluation index with respect to the range of the input value and the change in the input.
- control device 2 determines that the control model is not appropriate (No in step S25)
- the control device 2 identifies an inappropriate value, and calculates a simulator input condition corrected for the identified inappropriate value (step S26). Then, the control device 2 sets the corrected simulator input condition as a new simulation input condition, executes the processing of step S21 to step S24 again, generates a control model, and determines the validity of the control model ( Step S25).
- control device 2 calculates an optimal control input that satisfies the stored control conditions and the control model (step S27).
- the control device of the present embodiment has a third feature described below in addition to the first and second features of the control device of the first embodiment.
- the third feature is that, when modeling of the relationship between the target state and the control input is not appropriate, the execution condition of the simulator can be changed to correct the data set used for modeling.
- generation and correction of the control model are executed only by changing the setting of the simulation execution condition without relying on the acquisition of observation data depending on the observation environment and the operating condition of the actual system. it can.
- control device of the present embodiment not only data necessary for generating the control model can be generated by the simulation model, but also the control model can be corrected by judging the validity of the generated control model.
- FIG. 9 is a block diagram showing the configuration of the control device 3 of the present embodiment. As shown in FIG. 9, the control device 3 includes a model updating unit 30 in addition to the data generating unit 10 and the model generating unit 20.
- the control device 3 differs from the control device 1 of the first embodiment in that the control device 3 includes a model updating unit 30.
- the control device 3 is the same as the control device 1 of the first embodiment except that the control device 3 includes the model update unit 30, and thus the detailed description of the configuration other than the model update unit 30 is omitted.
- FIG. 10 is a block diagram showing an example of the configuration of the model updating unit 30. As shown in FIG. As shown in FIG. 10, the model updating unit 30 includes a control model updating unit 31 and an observation data storage unit 32.
- the control model update unit 31 acquires the optimal control input calculated by the model generation unit 20 and applied as the control input. Further, the control model updating unit 31 observes the output value of the system when the acquired optimum control input is input to the target system, and stores at least a part of the observed output value in the observation data storage unit 32 as observation data. Do.
- the observation data includes at least information on part of the output value of the target system.
- the observation data includes information equivalent to the evaluation index J expressed by Equation 4 or Equation 5.
- the control model updating unit 31 acquires, as observation data, data acquired by a measuring instrument such as a sensor installed in the target system, and data manufactured in terms of manufacturing amount, speed, and hands or automatically.
- a measuring instrument such as a sensor installed in the target system
- data manufactured in terms of manufacturing amount, speed, and hands or automatically it is not limited to the example mentioned here.
- the control model updating unit 31 updates the control model based on the acquired optimum control input and the observation data stored in the observation data storage unit 32.
- the control model update unit 31 outputs the updated control model to the model generation unit 20.
- the control model update unit 31 stores the updated control model in the control model information storage unit 24 of the model generation unit 20.
- control model updating unit 31 stores the observation data on the output value when the optimum control input is input to the target system.
- the control model update unit 31 updates the control model of the target system based on the optimum control input input from the model generation unit 20 and the observation data stored in the observation data storage unit 32. For example, there are the following three methods for updating the control model for the target system.
- the first update method is a method of generating a new control model from the combination of the input optimum control input and observation data.
- the control model can be generated by the same method as in the first embodiment.
- a control model is generated using the input / output data set from the simulator expressed by Equation 3 and the evaluation index based on the control purpose.
- a control model is generated using the value of the control input used for control and the output value of the system under the control input. That is, in the first embodiment, the control model is generated using virtual data by simulation, whereas in the model update of the present embodiment, the control input values actually input and the actually observed observation data are generated. Use to generate a control model.
- the sources of data for generating the control model are different, and the types of data are the same. Therefore, also in this embodiment, the control model can be generated by the same method as that of the first embodiment.
- the first updating method is effective when applied to the case where the behavior of the output with respect to the control input of the target system has a large difference compared with the behavior of the control model generated based on the simulator before updating.
- the second update method is a method of generating a new control model based on a data set for the combination of the input optimum control input and observation data and a data set obtained by simulation of the data generation unit 10. .
- the actual control input and observation data are added to the information on each of the control input and the evaluation index based on the data set obtained by the simulation of the data generation unit 10, and they are regarded as homogeneous data to generate a control model Do. That is, the control model is generated by combining the data obtained by simulation and the data to be measured.
- the second update method only generates two data sources, and the types of data used to generate the control model are the same, so the control model is generated in the same manner as in the first embodiment. it can.
- the second update method is effective when there is little observation data immediately after the start of control or the like, or when the frequency of observation is low.
- the control model can be corrected little by little based on the actually measured observation data while using the control model generated by the simulator as a basis. Therefore, it is effective to apply the second update method when there is not much difference between the behavior of the target system and the behavior of the control model generated based on the simulator before update.
- the third updating method constructs a state space model by regarding the future optimal control input as the time evolution of the value so far and regarding the future evaluation index as the observation data, and configures the control input information as the observation data It is a method to update.
- the following calculation time step for the control input u t and characteristic parameters theta t at the time t expressed by Equation 3, i.e. the control input of the future values each u t + 1 and characteristic parameter theta t + 1 to.
- the state variable vector x t + 1 at time t + 1 one time after time t can be expressed as being generated from the state variable vector x t at time t, as shown in Equation 10 below.
- M represents a variable to be predicted or estimated in a state vector other than variables represented by control input u and characteristic parameter ⁇ .
- a parameter also referred to as a hyper parameter for adjusting the variance of the error term e of the control model is assumed.
- Equation 10 Assuming that a mapping representing time evolution of Equation 10 is f and an error in the time evolution, so-called system noise is v t + 1 , the expression of Equation 10 is generalized as Equation 11 below.
- Equation 11 If Equation 11 is applied to Equation 6, the control model can be expressed as Equation 12 below.
- the evaluation index J t + 1 at time t + 1 is a value output from the system when the control input ut + 1 at the calculated next time step is input to the target system. That is, the evaluation index J t + 1 is a value based on the information stored in the observation data storage unit 32.
- the calculated value in the next time step of the control input, the parameter included in the mapping f, and the system noise can be obtained as a posterior distribution updated by observation data by treating each variable as shown in Equation 13 below.
- the first term on the right side of Equation 13 is a likelihood representing the likelihood of the calculated control input ut + 1 .
- the value of the first term on the right side of Equation 13 is, for example, the result of converting the calculated control input u t + 1 into an evaluation index using the vector H with an upper wavy line described in Equation 12, and the actually observed evaluation It can be calculated based on the difference from the index.
- the second term on the right side of Equation 13 is the prior distribution of the control input ut + 1 , that is, the calculation result.
- the third updating method updates the value of the control input based on the information stored in the observation data storage unit 32. Thereafter, each time observation data is stored in the observation data storage unit 32, the control model shown in Expression 12 is updated.
- the control input is automatically updated in accordance with the obtained observation data. Therefore, the third update method is effective when applied when the accuracy of the initial control model is insufficient. Also, the third update method is applied when there is a difference between the actually observed system behavior and the control model behavior generated based on the simulator before update, and there is some regularity or trend Then it is effective.
- control model update means is not limited to these.
- FIG. 11 is a flowchart for explaining the operation of the control device 3 of the present embodiment. In the description following the flowchart of FIG. 11, the control device 3 will be described as the subject of the operation.
- the control device 3 sets simulator input conditions including a data set to be input to the simulator and simulator information including an operation condition of the simulator from the range of control input corresponding to the target system to be controlled. (Step S31).
- control device 3 executes a simulation using the simulator input conditions and the simulator information to generate a data set (step S32).
- the control device 3 stores the generated data set.
- the control device 3 may repeatedly execute the simulation using different simulator input conditions and simulator information.
- control device 3 extracts an evaluation index from the simulator output included in the data set based on the stored control purpose information (step S33).
- control device 3 generates a control model that satisfies the relationship between the control input information to the simulator and the evaluation index, using the stored data set and the extracted evaluation index (step S34).
- the control device 3 stores the generated control model.
- control device 3 calculates an optimal control input that satisfies the stored control conditions and control model (step S35).
- control device 3 determines whether or not the output value from the target system is observed as observation data by inputting the optimum control input value into the target system (step S36).
- step S36 When new observation data is observed (Yes in step S36), the control device 3 updates the control model based on the control input and the observation data (step S37). After step S37, the process returns to step S35.
- control input conditions for controlling the target system are not acquired in real time.
- the optimal control input set based on the control model is input to the target system, and the control model is updated using the output value of the target system controlled by the optimal control input.
- control device of the present embodiment performs different processing in the case where observation data of the actual system is not used (hereinafter also referred to as offline) and in the case where actual control and sensor data acquisition are used (hereinafter referred to as online). Run.
- the control device of the present embodiment specifies the relationship between the control input and the target output, and sets the input condition of the simulation model for obtaining the relationship.
- the control device of the present embodiment updates or corrects the control model that has already been generated, using observation data such as actual control values and sensor data.
- control device of the present embodiment not only data necessary for generation of a control model can be generated by a simulation model, but also the control model can be updated based on observation data of a real system.
- FIG. 13 is a block diagram showing the configuration of the control device 4 of the present embodiment. As illustrated in FIG. 13, the control device 4 includes a data generation unit 10, a model generation unit 20-2, and a model update unit 30.
- the control device 4 has a configuration in which the model generation unit 20 of the control device 3 of the third embodiment is replaced with the model generation unit 20-2 of the second embodiment. Note that each component of the control device 4 is the same as the configuration shown in any of the first to third embodiments, so the description of the configuration will be omitted.
- FIG. 14 is a flowchart for explaining the operation of the control device 4 of the present embodiment. In the description along the flowchart of FIG. 14, the control device 4 will be described as the subject of the operation.
- the control device 4 sets simulator input conditions including a data set to be input to the simulator and simulator information including operation conditions of the simulator from the range of control input corresponding to the target system to be controlled. (Step S41).
- control device 4 executes a simulation using the simulator input conditions and the simulator information to generate a data set (step S42).
- the control device 4 stores the generated data set.
- the control device 4 may repeatedly execute the simulation multiple times using different simulator input conditions and simulator information.
- control device 4 extracts an evaluation index from among the simulator outputs included in the data set based on the stored control purpose information (step S43).
- control device 4 generates a control model that satisfies the relationship between the control input information to the simulator and the evaluation index, using the stored data set and the extracted evaluation index (step S44).
- the control device 4 stores the generated control model.
- control device 4 determines the validity of the generated control model (step S45). For example, the control device 4 determines the validity of the control model by evaluating the response characteristics of the evaluation index with respect to the range of the input value and the change in the input.
- control device 4 determines that the control model is not appropriate (No in step S45)
- the control device 4 identifies an inappropriate value, and calculates a simulator input condition corrected with respect to the identified inappropriate value (step S46). Then, the control device 4 sets the corrected simulator input condition as a new simulation input condition, executes the processing of step S41 to step S44 again, generates a control model, and determines the validity of the control model ( Step S45).
- control device 4 calculates an optimal control input that satisfies the stored control conditions and the control model (step S47).
- control device 4 determines whether or not the output value from the target system is observed as observation data by inputting the optimum control input value into the target system (step S48).
- step S48 When new observation data is observed (Yes in step S48), the control device 4 updates the control model based on the control input and the observation data (step S49). After step S47, the process returns to step S45.
- control device of the present embodiment not only data necessary for generating the control model can be generated by the simulation model, but also the control model can be corrected by judging the validity of the generated control model. Furthermore, according to the control device of the present embodiment, the control model can be updated based on observation data of the actual system.
- FIG. 15 is a block diagram showing the configuration of a system 100 of the present embodiment.
- the system 100 includes a control device 110 and a control target system 120.
- the control device 110 is any of the control devices of the first to fourth embodiments.
- the system 100 includes a control target system 120 in addition to the control device 110 corresponding to any of the first to fourth embodiments.
- the control device 110 transmits the optimal control input generated by the own device to the control target system 120.
- the controlled system 120 receives the optimal control input from the controller 110.
- the control target system 120 is set based on the received optimum control input, and operates based on the set optimum control input.
- the control target system 120 transmits, to the control device 110, an output value that is a result of operation based on the optimal control input.
- the control device 110 updates the control model of the control target system 120 using observation data included in the output value of the control target system 120.
- control device capable of controlling the control target system to the target state and the control target system can be configured as a single system.
- the control target system may include the control device to constitute a single system.
- the computer 90 in FIG. 16 is a configuration example for executing the processing of the control device of each embodiment, and does not limit the scope of the present invention.
- the computer 90 includes a processor 91, a main storage 92, an auxiliary storage 93, an input / output interface 95, and a communication interface 96.
- the interface is abbreviated as I / F (Interface).
- the processor 91, the main storage unit 92, the auxiliary storage unit 93, the input / output interface 95 and the communication interface 96 are communicably connected to each other via a bus 99.
- the processor 91, the main storage device 92, the auxiliary storage device 93, and the input / output interface 95 are connected to a network such as the Internet or an intranet via the communication interface 96.
- the processor 91 deploys the program stored in the auxiliary storage device 93 or the like in the main storage device 92, and executes the deployed program.
- a software program installed in the computer 90 may be used.
- the processor 91 executes processing by the control device according to the present embodiment.
- the main storage device 92 has an area in which a program is expanded.
- the main storage device 92 may be, for example, a volatile memory such as a dynamic random access memory (DRAM).
- a non-volatile memory such as a magnetoresistive random access memory (MRAM) may be configured and added as the main storage device 92.
- DRAM dynamic random access memory
- MRAM magnetoresistive random access memory
- the auxiliary storage device 93 stores various data.
- the auxiliary storage device 93 is configured by a local disk such as a hard disk or a flash memory. Note that various data may be stored in the main storage unit 92, and the auxiliary storage unit 93 may be omitted.
- the input / output interface 95 is an interface for connecting the computer 90 and peripheral devices.
- the communication interface 96 is an interface for connecting to an external system or device through a network such as the Internet or an intranet based on standards and specifications.
- the input / output interface 95 and the communication interface 96 may be common as an interface connected to an external device.
- the computer 90 may be configured to connect input devices such as a keyboard, a mouse, and a touch panel as necessary. Those input devices are used to input information and settings. Note that in the case where the touch panel is used as an input device, the display screen of the display device may serve as an interface of the input device. Data communication between the processor 91 and the input device may be performed by the input / output interface 95.
- the computer 90 may also be equipped with a display device for displaying information.
- the computer 90 is preferably provided with a display control device (not shown) for controlling the display of the display device.
- the display device may be connected to the computer 90 via the input / output interface 95.
- the computer 90 may be equipped with a disk drive as needed.
- the disk drive is connected to the bus 99.
- the disk drive mediates reading of a data program from the recording medium, writing of the processing result of the computer 90 to the recording medium, and the like between the processor 91 and a recording medium (program recording medium) (not shown).
- the recording medium can be realized by, for example, an optical recording medium such as a CD (Compact Disc) or a DVD (Digital Versatile Disc).
- the recording medium may be realized by a semiconductor recording medium such as a Universal Serial Bus (USB) memory or a Secure Digital (SD) card, a magnetic recording medium such as a flexible disk, or another recording medium.
- USB Universal Serial Bus
- SD Secure Digital
- the above is an example of the hardware configuration for enabling the control device according to each embodiment of the present invention.
- the hardware configuration in FIG. 16 is an example of the hardware configuration for executing the processing of the control device according to each embodiment, and does not limit the scope of the present invention.
- a program that causes a computer to execute the process related to the control device according to each embodiment is also included in the scope of the present invention.
- a program recording medium recording the program according to each embodiment is also included in the scope of the present invention.
- the components of the control device of each embodiment can be arbitrarily combined.
- the components of the control device of each embodiment may be realized by software or may be realized by a circuit.
- control device 10 data generation unit 11 control input information storage unit 12 input condition setting unit 13 simulator information storage unit 14 data set generation unit 20 model generation unit 21 data set storage unit 22 control purpose information storage unit 23 Control model generation unit 24 Control model information storage unit 25 Optimal control condition storage unit 26 Optimal control input selection unit 27 Optimal control input information storage unit 28 Validity determination unit 30 Model update unit 31 Control model update unit 32 Observation data storage unit 100 System 110 control device 120 controlled system
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
制御対象が不確実性や時間変動を内包していた場合であっても、その制御対象を目的とする状態に制御するために、シミュレータに入力するシミュレータ入力条件を制御入力情報に基づいて設定し、シミュレータ入力条件とシミュレータ情報とを用いてシミュレーションを実行して、シミュレータの入出力間のデータセットを生成するデータ生成部と、制御目的情報に基づいてデータセットに含まれるいずれかのシミュレータ出力を評価指標として選択し、選択した評価指標に対応するデータセットと評価指標とを用いてシミュレータの入出力間の関係性を表す制御モデルを生成し、生成した制御モデルと最適制御条件とを用いて制御対象システムの最適制御入力を選択するモデル生成部とを備える制御装置とする。
Description
本発明は、システムを制御する制御装置、制御方法およびプログラムに関する。
一般に、実環境やシステム(以降、単にシステムと記載する)に対する制御は、フィードバック方式とフィードフォワード方式とに大別される。フィードバック方式では、システムから過去の観測データを取得し、取得されたデータと所定規則とに基づいてシステムを制御する。フィードフォワード方式では、システムの次の状態を予測する予測モデルにより、将来の状態を予測してシステムを制御する。
不確実性や時間変動を内包するシステムを制御対象とする場合、以下のような課題がある。例えば、不確実性を内包するシステムには、フィードバックまたは予測モデルの生成に不可欠な観測データが不足しているという課題がある。不確実性を内包するシステムには、不足しているデータの種類やデータの値の範囲が明らかでない場合もある。また、例えば、時間変動を内包するシステムには、制御が行われている状況では、システムの非制御時の振る舞いを特徴付ける静的または動的な特性についてデータを取得できないという課題がある。
特許文献1には、供給地で生産した製品を需要地へ輸送するサプライチェーンを制御する制御装置について開示されている。特許文献1の装置は、予め生成された生産計画および輸送計画に基づいて生産・輸送される製品の生産量、受注量および在庫量に基づいて、生産計画を変更する。特許文献1の装置によれば、生産計画および輸送計画を変更することによって、計算負荷の高いシミュレーションを繰り返すことなく生産計画を変更できる。
特許文献2には、1つの機能の部品から多くの部品を組み合わせた機械、さらに複数の機械を組み合わせたシステムに至るまでの動作をシミュレートするためのモデルを統一的に作成するシミュレーションモデル作成方法について開示されている。特許文献2の方法では、複数の機能再現モデルのうちいずれかのモデルが非線形特性要素を含む場合に、非線形特性要素を所定線形要素に置き換えてから複数のモデル間を統合し、統合されたモデル内の所定線形要素に非線形特性要素をリンクさせる。特許文献2の方法によれば様々な物理系から構成されるシステムの動作を統一的にシミュレーションできる。
特許文献3には、将来の状態を予測して操作量を決定する情報処理装置について開示されている。特許文献3の装置は、情報蓄積手段と、予測式集合学習生成手段と、操作量決定手段とを含む。情報蓄積手段は、制御対象およびその周辺環境に関する情報を含む制御対象情報を蓄積する。予測式集合学習生成手段は、情報蓄積手段に蓄積された制御対象情報に基づいて制御対象に対する操作量の決定に用いる予測式集合を学習・生成する。操作量決定手段は、予測式集合と制御対象情報と入力情報とに基づいて制御対象の予測制御モデルを構築して、制御対象の制御に用いられる操作量を決定する。特許文献3の装置によれば、予測制御モデルと現実世界との間のかい離を小さくするように、予測制御モデルを自動的に構築できる。
特許文献4には、プラント制御用のデータ処理装置について開示されている。特許文献4の装置は、物理モデルパラメータ推定部と、出力ばらつき演算部とを備える。物理モデルパラメータ推定部は、プラントの運転データに基づいて、プラントの制御対象モデルの物理モデルパラメータと当該物理モデルパラメータのばらつきとを推定する。出力ばらつき演算部は、選択された所定の制御パラメータを制御対象モデルに入力した場合における制御対象モデルからの所定の出力のばらつきを、物理モデルパラメータのばらつきに基づいて演算する。特許文献4の装置によれば、所定の出力のばらつきが小さくなるように制御パラメータを最適化できる。
特許文献5には、シミュレーションの実行中に異なるシミュレーション条件でシミュレーションを継続可能なシミュレーションシステムについて開示されている。特許文献5のシステムは、シミュレーション条件設定部とシミュレーション制御部とを含むホストコンピュータと、通信処理部とシミュレーション実行部とを含むシミュレーション装置とを備える。シミュレーション条件設定部は、オペレータによる操作に基づいてシミュレーション条件を設定する。シミュレーション制御部は、設定されたシミュレーション条件をシミュレーション装置に送信して、シミュレーションを起動する。通信処理部は、ホストコンピュータから送信された複数のシミュレーション条件を記憶部に領域区分して格納する。シミュレーション実行部は、所定領域に記憶された第一のシミュレーション条件に基づくシミュレーションの実行中に、他の領域に記憶された第二のシミュレーション条件に基づくシミュレーションに切り替えてシミュレーションを継続する。
システムの振る舞いを数理的に記述したシミュレーションモデルは、その数理的な記述の際に使われた近似や、現実の時間や空間的な情報が正確に得られない不確実性、時間的に変化しうるパラメータの影響により、現実を正確に再現できるとは限らない。すなわち、現実のシステムとそのシミュレーションモデルとの間には差異があることが多いので、そのシミュレーションに基づく制御は必ずしも適切であるとは限らない。そのため、特許文献1および特許文献2に開示された技術では、不確実性や時間変動を内包するシステムを対象とする制御モデルを生成できるとは限らないという問題点があった。
特許文献3の装置によれば、過去から現在までの制御対象情報に基づいて予測制御モデルを自動的に構築し、構築した予測制御モデルを用いて制御対象の操作量を決定できる。ところで、特許文献3の装置は、入力装置を介して入力される入力情報に基づいて操作量を決定するため、制御対象と接続されていない場合には操作量を決定できない。すなわち、特許文献3の装置には、制御対象との接続が確立されず、制御対象に不確実性が内包される場合、予測制御モデルに基づいて操作量を決定できないという問題点があった。
特許文献4の装置によれば、プラントの制御対象モデルの物理モデルパラメータと当該物理モデルパラメータのばらつきとを推定し、推定したばらつきを考慮して制御パラメータを最適化できる。しかしながら、特許文献4の装置には、プラントの運転データに基づいて物理モデルパラメータのばらつきを推定するため、プラントが予期せぬ状態になった際に最適な制御パラメータを設定できるとは限らないという問題点があった。
特許文献5のシステムによれば、第一のシミュレーション条件に基づくシミュレーションの実行中に、他の領域に記憶された第二のシミュレーション条件に基づくシミュレーションに切り替えてシミュレーションを継続できる。しかしながら、特許文献5のシステムは、システムの状況変化に応じてシミュレーション条件を動的に変更できないため、システムの状況変化に追従しながらシミュレーションを継続できないという問題点があった。
本発明の目的は、上述した課題を解決するために、制御対象が不確実性や時間変動を内包していた場合であっても、その制御対象を目的とする状態に制御することが可能な制御装置を提供することにある。
本発明の一態様の制御装置は、制御対象システムを制御するための制御入力情報と、制御対象システムのシミュレーションモデルに関するシミュレータ情報とを格納し、シミュレーションモデルに基づいたシミュレーションを実行するシミュレータに入力するシミュレータ入力条件を制御入力情報に基づいて設定し、シミュレータ入力条件とシミュレータ情報とを用いてシミュレーションを実行して、シミュレータの入出力間のデータセットを生成するデータ生成部と、データ生成部からデータセットを取得して記憶するとともに、制御対象システムに関する制御目的情報と、制御対象システムの最適制御条件とを記憶し、制御目的情報に基づいてデータセットに含まれるいずれかのシミュレータ出力を評価指標として選択し、選択した評価指標に対応するデータセットと評価指標とを用いてシミュレータの入出力間の関係性を表す制御モデルを生成し、生成した制御モデルと最適制御条件とを用いて制御対象システムの最適制御入力を選択するモデル生成部とを備える。
本発明の一態様の制御方法においては、制御対象システムを制御するための制御入力情報に基づいて、制御対象システムのシミュレーションモデルに基づいたシミュレーションを実行するシミュレータに入力するシミュレータ入力条件を設定し、制御対象システムのシミュレーションモデルに関するシミュレータ情報とシミュレータ入力条件とを用いてシミュレーションを実行してシミュレータの入出力間のデータセットを生成し、制御対象システムに関する制御目的情報に基づいてデータセットに含まれるいずれかのシミュレータ出力を評価指標として選択し、選択した評価指標に対応するデータセットと評価指標とを用いてシミュレータの入出力間の関係性を表す制御モデルを生成し、生成した制御モデルと制御対象システムの最適制御条件とを用いて制御対象システムの最適制御入力を選択する。
本発明の一態様のプログラムは、制御対象システムを制御するための制御入力情報に基づいて、制御対象システムのシミュレーションモデルに基づいたシミュレーションを実行するシミュレータに入力するシミュレータ入力条件を設定する処理と、制御対象システムのシミュレーションモデルに関するシミュレータ情報とシミュレータ入力条件とを用いてシミュレーションを実行してシミュレータの入出力間のデータセットを生成する処理と、制御対象システムに関する制御目的情報に基づいてデータセットに含まれるいずれかのシミュレータ出力を評価指標として選択する処理と、選択した評価指標に対応するデータセットと評価指標とを用いてシミュレータの入出力間の関係性を表す制御モデルを生成する処理と、生成した制御モデルと制御対象システムの最適制御条件とを用いて制御対象システムの最適制御入力を選択する処理とをコンピュータに実行させる。
本発明によれば、制御対象が不確実性や時間変動を内包していた場合であっても、その制御対象を目的とする状態に制御することが可能な制御装置を提供することが可能になる。
以下に、本発明を実施するための形態について図面を用いて説明する。ただし、以下に述べる実施形態には、本発明を実施するために技術的に好ましい限定がされているが、発明の範囲を以下に限定するものではない。なお、以下の実施形態の説明に用いる全図においては、特に理由がない限り、同様箇所には同一符号を付す。また、以下の実施形態において、同様の構成・動作に関しては繰り返しの説明を省略する場合がある。また、図面中の矢印の向きは、一例を示すものであり、構成要素間の信号の向きなどを限定するものではない。
(第1の実施形態)
まず、本発明の第1の実施形態に係る制御装置について図面を参照しながら説明する。以下においては、本実施形態の制御装置の制御対象として、製造ラインやサプライチェーンなどのシステムを想定して説明する。なお、本実施形態の制御装置の制御対象は、これらのシステムに限定されない。例えば、本実施形態の制御装置は、センサなどによって状態を観測データとして取得でき、制御入力に基づいて動作するシステムであれば、任意のシステムを制御対象とすることができる。
まず、本発明の第1の実施形態に係る制御装置について図面を参照しながら説明する。以下においては、本実施形態の制御装置の制御対象として、製造ラインやサプライチェーンなどのシステムを想定して説明する。なお、本実施形態の制御装置の制御対象は、これらのシステムに限定されない。例えば、本実施形態の制御装置は、センサなどによって状態を観測データとして取得でき、制御入力に基づいて動作するシステムであれば、任意のシステムを制御対象とすることができる。
図1は、本実施形態の制御装置1の構成の一例を示すブロック図である。図1のように、制御装置1は、データ生成部10とモデル生成部20とを備える。
データ生成部10は、制御対象システム(以下、対象システムと呼ぶ)に関する制御入力の種類や範囲などの情報(以下、制御入力情報と呼ぶ)を格納する。また、データ生成部10は、シミュレーションモデルに関する情報(以下、シミュレータ情報とも呼ぶ)を格納する。
データ生成部10は、制御入力情報に基づいて、シミュレータに入力する条件(以下、シミュレータ入力条件とも呼ぶ)を設定する。データ生成部10は、シミュレータ入力条件とシミュレータ情報とを用いてシミュレーションを実行し、シミュレータの入出力間のデータセット(以下、データセットと呼ぶ)を生成する。データセットは、シミュレータへの入力データと、その入力データを用いたシミュレーションによって得られる出力データ(シミュレータ出力とも呼ぶ)とのセットである。データ生成部10は、生成したデータセットをモデル生成部20に出力する。
モデル生成部20は、データセットをデータ生成部10から取得する。モデル生成部20は、データ生成部10から取得したデータセットを記憶する。また、モデル生成部20は、対象システムの制御の目的とする変数や値に関する情報(以下、制御目的情報とも呼ぶ)を記憶する。また、モデル生成部20は、対象システムの最適な制御条件(以下、最適制御条件とも呼ぶ)を記憶する。
モデル生成部20は、制御目的情報に基づいて、データセットに含まれるいずれかのシミュレータ出力を評価指標として選択する。モデル生成部20は、選択した評価指標に対応するデータセットとその評価指標とを用いて、シミュレータ入出力間の関係性を表す制御モデルを生成する。モデル生成部20は、生成した制御モデルと最適制御条件とを用いて最適な制御入力(以下、最適制御入力とも呼ぶ)を選択する。最適制御入力選択部26は、選択した最適制御入力を格納する。例えば、モデル生成部20に格納された最適制御入力は、図示しない対象システムに送信される。
次に、データ生成部10およびモデル生成部20の詳細構成について一例を挙げて説明する。
〔データ生成部〕
図2は、データ生成部10の詳細構成の一例を示すブロック図である。図2のように、データ生成部10は、制御入力情報記憶部11、入力条件設定部12、シミュレータ情報記憶部13、データセット生成部14を有する。
図2は、データ生成部10の詳細構成の一例を示すブロック図である。図2のように、データ生成部10は、制御入力情報記憶部11、入力条件設定部12、シミュレータ情報記憶部13、データセット生成部14を有する。
制御入力情報記憶部11には、対象システムに関する制御入力情報が記憶される。例えば、制御入力情報記憶部11には、製造ラインにおける製造工程や製造装置、製造プロセスなどの種類に関する情報、製造量や製造頻度、製造速度などの調整項目、それらの値の範囲の情報が制御入力情報として格納される。制御入力情報記憶部11に格納される制御入力情報は、個別の製造ラインやプロセスに関する情報であってもよいし、サプライチェーンにおける各工程やフローに関する情報であってもよい。値の範囲は、計画として設定された情報であってもよいし、装置に入力可能なデータの範囲などであってもよい。また、範囲が定まっていない場合は、適宜、特定の値から範囲を定めてもよい。なお、制御入力情報は、上述した例に限定されない。
入力条件設定部12は、制御入力情報記憶部11に記憶された制御入力情報に基づいて、シミュレータ入力条件を設定する。入力条件設定部12は、シミュレータにおける全ての変数のうち、時間発展する状態変数と、制御入力と、固定的または時間変化する特性パラメータとに分離して、任意の形式の状態空間モデルをシミュレータ入力条件として設定する。
例えば、シミュレータ内の状態変数xを時刻t-1から時刻tへ時間発展させる関数をftime、時刻tの状態変数ベクトルをxtとすると、状態空間モデルの時間発展は、時刻tの1時刻前の時刻t-1の状態変数ベクトルをxt-1を用いて、以下の式1のように表現できる。ただし、時刻t-1は、前回のシミュレーションを行った時刻に相当する。
ここで、時刻tの制御入力をut、時刻tの固定的または時間変化する特性パラメータをθtとする。そして、時間発展する状態変数と、制御入力と、固定的または時間変化する特性パラメータとに分離した後の状態変数をxtの上に波線を付した記号で表現する。このとき、時刻tの時間発展する状態変数は、時刻tよりも1時刻前の時刻t-1の時間発展する状態変数と、時刻tの制御入力と、時刻tの固定的または時間変化する特性パラメータとを用いて、以下の式2のように表現できる。
入力条件設定部12は、シミュレーションを実行するために、状態空間モデルへの入力変数のうち、制御入力utと特性パラメータθtのそれぞれの値と範囲とを設定する。例えば、入力条件設定部12は、制御入力として製造量を標準量の0~2倍、特性パラメータとして製造能率(効率とも呼ぶ)を標準値の0~1倍といった範囲で設定する。なお、入力条件設定部12は、制御入力情報記憶部11に格納された制御入力情報に関して、設定する値の粒度や刻み幅などに指定がない場合は、制御入力utと特性パラメータθtのそれぞれの値と範囲とを任意に設定できる。ただし、入力条件設定部12によるシミュレータ入力条件に関する情報は、上述した例に限定されない。
シミュレータ情報記憶部13には、シミュレーションモデルに関する情報(シミュレータ情報とも呼ぶ)が格納される。例えば、シミュレータ情報とは、方程式や状態変数の時間発展を表す規則や、シミュレータを実行するための実行環境、必要なデータセットに関する情報などである。前述の式1においては、シミュレータの時間発展を表す写像(関数)ftimeがシミュレータ情報に相当する。
製造ラインの例では、各製造工程をマクロ的に見るモデルを基本形とした時間発展式をシミュレーションモデルとして適用できる。例えば、各製造工程をマクロ的に見るモデルとしては、相対速度モデルや、Buffered Production lineモデル、流体モデルなどが一例として挙げられる。また、各製造工程をミクロ的に見るモデルを基本形とした時間発展式をシミュレーションモデルとして適用できる。例えば、各製造工程をミクロ的に見るモデルとしては、マルチエージェントモデルが一例として挙げられる。なお、制御入力から目的とする出力(以下、目的出力と呼ぶ)を得ることさえできれば、本実施形態で適用できるシミュレーションモデルは上述のモデルに限定されない。
データセット生成部14は、入力条件設定部12からシミュレータ入力条件を取得する。また、データセット生成部14は、シミュレーションを実行するためのシミュレータ情報をシミュレータ情報記憶部13から取得する。さらに、データセット生成部14は、図示しないシミュレータを含む。データセット生成部14は、取得したシミュレータ入力条件とシミュレータ情報とを用いてシミュレーションを実行し、シミュレータの入出力間のデータセットを生成する。
データセット生成部14は、シミュレータ情報に相当する時間発展を表す写像(関数)ftime、制御入力utおよび特性パラメータθtとの少なくともいずれかに基づいて、指定の範囲および回数でシミュレーションを実行する。
そして、データセット生成部14は、入力した制御入力utや特性パラメータθtなどの制御入力情報と、その制御入力情報を用いたシミュレーション結果である出力データとのデータセットを全て取得する。このとき、データセット生成部14が取得するデータセットが、シミュレータの入出力間のデータセットである。そして、データセット生成部14は、取得したデータセットをモデル生成部20に出力する。
例えば、時刻tに出力された出力データを集めた行列をyt
*と表し、シミュレータ入力条件である制御入力utおよび特性パラメータθtをxt
*と表す。このとき、対象とする時間(時刻t0から時刻Tまで)における入出力間のデータセットは、時刻tにおける制御入力utおよび特性パラメータθtを用いて、以下の式3で表現できる。
以上が、シミュレーションを確定論的に実行する例についての説明である。
ところで、制御入力情報記憶部11に格納された制御入力情報や、シミュレータ情報記憶部13に格納されたシミュレータ情報だけでは、シミュレーションの実行に必要な情報が不足していたり、シミュレーションの精度が低かったりする場合もある。このような場合には、データセット生成部14においてシミュレーションを確率的に実行することも可能である。
例えば、シミュレータに設定する変数をガウス関数などの確率密度や、複数のデルタ関数の重ね合わせで表されたアンサンブル近似などの確率的な手法を用いたシミュレーションを複数回実行する。その結果、式3で表される入出力間のデータセットを確率的に得ることができる。なお、確率密度分布の平均値を用いる場合も、上述の確定論的にシミュレーションを実行する場合と同様の手順でデータセットを生成できる。
〔モデル生成部〕
図3は、モデル生成部20の詳細構成の一例を示すブロック図である。図3のように、モデル生成部20は、データセット記憶部21、制御目的情報記憶部22、制御モデル生成部23、制御モデル情報記憶部24、最適制御条件記憶部25、最適制御入力選択部26、最適制御入力情報記憶部27を有する。
図3は、モデル生成部20の詳細構成の一例を示すブロック図である。図3のように、モデル生成部20は、データセット記憶部21、制御目的情報記憶部22、制御モデル生成部23、制御モデル情報記憶部24、最適制御条件記憶部25、最適制御入力選択部26、最適制御入力情報記憶部27を有する。
データセット記憶部21には、データ生成部10によって生成されるデータセットが記憶される。すなわち、データセット記憶部21には、データ生成部10のデータセット生成部14が算出するデータセットが格納される。データセット記憶部21には、式3のように、全てのシミュレータ出力に関する入出力間のデータセットが格納される。
制御目的情報記憶部22には、制御の目的とする変数や値に関する情報(制御目的情報とも呼ぶ)が記憶される。
制御モデル生成部23は、データセット記憶部21と制御目的情報記憶部22とを参照し、シミュレータ入出力間の関係性を表す制御モデルを生成する。
制御モデル生成部23は、データセット記憶部21に格納されたデータセットに含まれるシミュレータ出力の中から評価指標として選択する。すなわち、制御モデル生成部23は、シミュレータ出力のうち、制御目的情報記憶部22に格納された制御の目的とする変数、すなわち目的に応じて特定の基準を満たすようにしたい出力を評価指標として選択する。
言い換えると、制御モデル生成部23は、制御目的情報記憶部22に格納された制御目的情報を取得し、取得した制御目的情報に基づいてデータセット記憶部21に格納されたいずれかのシミュレータ出力を評価指標として選択する。
また、例えば、制御モデル生成部23は、以下の式5のように、時刻tにおけるシミュレータ出力を集めた行列yt
*から、重み付けの係数wを用いて複数の出力値の重ね合わせによって表現される出力値Σwky*
k,tを評価指標Jtとして選択してもよい。
制御モデル生成部23は、データセット記憶部21に格納されたデータセットと、生成した評価指標Jとを用いて、シミュレータ入出力間の関係性を表す制御モデルを生成する。制御モデル生成部23は、生成した制御モデルを制御モデル情報記憶部24に記憶させる。
制御入力utと特性パラメータθtとを多次元のベクトルxt
*で表現する場合、ベクトルxt
*と評価指標Jtとの関係は、以下の式6のように表現できる。ただし、式6において、Hの上に波線を載せた記号は、多次元のベクトルxt
*と、1次元の評価指標Jtとを関係付けるベクトルである。また、式6において、etは誤差項である。これ以降、式6のような関係式で表現される関係を制御モデルと呼ぶ。
例えば、式7に用いられる写像mcont.は、ガウス過程回帰などの手法によって得ることができる。制御入力uと特性パラメータθとを変数とするガウス過程回帰(GPR:Gaussian Process Regression)を用いると、評価指標Jは、以下の式8のように表現される。ただし、式8において、m(u,θ)は平均値(期待値)、k(u,θ,u’,θ’)はカーネル関数kを用いて表現される分散である。
制御モデル情報記憶部24には、式6や式7で表現される制御モデルが格納される。言い換えると、制御モデル情報記憶部24には、制御モデル生成部23によって生成される制御モデルが記憶される。なお、制御モデル情報記憶部24に格納される制御モデルの生成方法は、式6~式8の手法に限定されない。また、本実施形態においては、制御モデルの違いによる制御特性や制御の妥当性への影響については考慮しない。
最適制御条件記憶部25には、対象システムを最適に制御するための条件(以下、最適制御条件とも呼ぶ)が記憶される。
最適制御入力選択部26は、最適制御条件記憶部25に格納された最適制御条件と、制御モデル情報記憶部24に格納された制御モデルとを取得する。最適制御入力選択部26は、取得した最適制御条件と制御モデルとを用いて最適な制御入力(最適制御入力とも呼ぶ)を選択する。最適制御入力選択部26は、選択した最適制御入力を最適制御入力情報記憶部27に格納する。
ここで、最適制御入力選択部26が最適制御入力を選択する一連の動作について説明する。
制御モデル情報記憶部24に格納された式6または式7で表される制御モデルの関係式(制御モデル式とも呼ぶ)は、制御入力uと特性パラメータθとを入力として評価指標Jを得る形式になっている。そのため、制御モデル情報記憶部24に格納された制御モデル式は、入力された値の範囲や変動に対する評価指標Jの値の範囲や応答を確認する形式としては適している。しかし、対象システムの次ステップまたは任意の指定の時刻に入力すべき制御入力uの値や、特性パラメータθの値を算出したりするためには、評価指標Jを最適評価指標Joptに定める必要がある。以下の式9は、評価指標Jを最適評価指標Joptに定めて、制御入力uや特性パラメータθを算出するための式である。なお、下記の式9のΛは、逆関数内のパラメータである。式9は、式6や式7の逆関数に相当する。なお、ここでは式6や式7の関係式を求めてから、その逆関数に相当する式9を算出する手続きを説明したが、データセットと評価指標Jから直接に式9を求めてもよい。
最適制御入力選択部26は、式9を解いて、制御入力uや特性パラメータθを算出する。最適評価指標Joptは、最適制御条件記憶部25に格納された情報によって規定される。制御モデル情報記憶部24は、最適評価指標Joptを定めて算出された制御入力uを最適制御入力として最適制御入力情報記憶部27に格納する。
最適制御入力情報記憶部27には、最適制御入力選択部26によって導出される最適制御入力が記憶される。
例えば、式6または式7の評価指標Jが製造効率を表す場合、製造効率が最大になるときの値を最適評価指標Joptに設定できる。また、評価指標Jが在庫量を表す場合、在庫量が最小になるときの値を最適評価指標Joptに設定できる。このように、最適評価指標Joptを設定するための制御条件は、制御対象や目的、時間などに合わせて設定すればよく、時間的に変化してもよい。なお、制御条件に関する情報は、上述した例に限定されない。
以上が、本実施形態の制御装置1の構成についての説明である。続いて、本実施形態の制御装置1の動作について図面を参照しながら説明する。
(動作)
図4は、本実施形態の制御装置1の動作について説明するためのフローチャートである。なお、図4のフローチャートに沿った説明においては、制御装置1を動作の主体として説明する。
図4は、本実施形態の制御装置1の動作について説明するためのフローチャートである。なお、図4のフローチャートに沿った説明においては、制御装置1を動作の主体として説明する。
図4において、まず、制御装置1は、制御対象である対象システムに対応する制御入力の範囲から、シミュレータに入力するデータセットを含むシミュレータ入力条件と、シミュレータの動作条件を含むシミュレータ情報とを設定する(ステップS11)。
次に、制御装置1は、シミュレータ入力条件とシミュレータ情報とを用いてシミュレーションを実行し、データセットを生成する(ステップS12)。制御装置1は、生成したデータセットを格納する。なお、制御装置1は、異なるシミュレータ入力条件やシミュレータ情報を用いてシミュレーションを繰り返し実行してもよい。
次に、制御装置1は、格納している制御目的情報に基づいて、データセットに含まれるシミュレータ出力の中から評価指標を抽出する(ステップS13)。
次に、制御装置1は、格納しているデータセットと、抽出した評価指標とを用いて、シミュレータへの制御入力情報と評価指標との関係性を満たす制御モデルを生成する(ステップS14)。制御装置1は、生成した制御モデルを格納する。
次に、制御装置1は、格納している制御条件と制御モデルとを満たす最適制御入力を算出する(ステップS15)。
以上が、図4のフローチャートに沿った制御装置1の動作に関する説明である。
一般に、不確実性や時間変動を内包する対象システムの場合には、制御や予測のために必要となる実際のシステム(以下、実システムと呼ぶ)に関する観測データの取得に課題がある。本実施形態の制御装置は、以下に示す特徴によって、不確実性や時間変動を内包する対象システムを制御できる。
第1の特徴は、対象システムの振る舞いを完全・高精度に再現可能なモデルを生成せず、目的の状態と制御可能な制御器の制御入力との関係をモデル化することによって、対象システムを目的とする状態に制御することである。
第2の特徴は、対象システムのモデル化で必要な目的状態と制御入力との関係を、実システムの観測データではなく、実システムの振る舞いを模倣するシミュレータを用いて生成することである。そのため、本実施形態の制御装置は、不確実な実行条件がある場合や、精度が不十分な場合には、確率的なシミュレーションを実行することもできる。
以上のように、本実施形態の制御装置は、シミュレータの実行結果から制御の目的に特化したモデルを生成できる。その結果、本実施形態の制御装置は、実システムの観測環境や動作状況に依存した観測データの取得に頼ることなく、シミュレーションの実行条件の設定変更のみによって制御モデルの生成や修正を実行できる。すなわち、本実施形態の制御装置によれば、不確実性や時間変動を内包する制御対象システムを、より適切に目的の状態へ制御できる。
(関連技術)
次に、図面を参照しながら、本発明の各実施形態と関連技術とを比較して説明する。
次に、図面を参照しながら、本発明の各実施形態と関連技術とを比較して説明する。
図5は、関連技術による典型的なシステム制御方法について説明するための概念図である。図6は、第1の実施形態によるシステム制御方法について説明するための概念図である。
一般に、環境またはシステム(以降、単にシステムと記載する)に対する制御方式は、図5のように、フィードバック方式とフィードフォワード方式とに大別される。フィードバック方式では、システムに関する過去の観測データをセンサなどによって取得し、取得した観測データと所定の規則とに基づいてシステムを制御する。フィードフォワード方式では、システムの次の状態を予測する予測モデルによって、将来の状態を予測してシステムを制御する。図5に示すように、いずれの制御方式においてもシステムの観測データが必要である。
しかしながら、一般的な制御方式には、不確実性や時間変動を内包するシステムを対象とした場合、以下のような状況においては適切な制御を実行できない。
第1の状況は、フィードバックまたは予測モデルの生成に不可欠な観測データがなかったり、明らかに不足していたりする状況である。第1の状況においては、不足しているデータの種類やデータの値の範囲が明らかでない場合もある。
第2の状況は、制御が行われている状況である。第2の状況においては、システムを制御していないときの振る舞いを特徴付ける固定的または時間変化する特性についてのデータを取得できないという課題がある。
図6のように、第1の実施形態の制御装置は、対象システムの目的とする状態への制御において、そのシステムの振る舞いを完全・高精度に再現可能なシミュレーションモデルまたは予測モデルを生成しない。第1の実施形態の制御装置は、対象システムの制御入力と目的出力との間の関係を表す制御モデルを生成することによって、制御可能な制御器の制御入力と目的の状態との関係を明らかにする。第1の実施形態の制御装置によれば、制御対象が不確実性や時間変動を内包し、完全・高精度なモデル化が実質的に不可能なシステムに関してもシミュレーションの制御モデルを生成できる。
また、図5に示す関連技術によれば、実際のシステムに設置された制御器とセンサなどによって、シミュレーションに必要なデータをリアルタイムで取得できる。しかし、図5のような関連技術では、対象システムが、センサからの情報を十分に得られていない場合や、不確実性や時間変動を内包する場合は、実際のシステムから取得される観測データに信頼性が得られない場合がある。
各実施形態の制御装置は、制御入力と、目的とする出力のデータとを、そのシステムの振る舞いを模したシミュレーションモデルによって生成する。なお、現実のシステムとシミュレーションモデルとの間には差異がある。各実施形態の制御装置は、システムの振る舞いや予測にシミュレーションモデルを用いるのではなく、可能性のある制御入力とその制御入力に対する出力とを組み合わせた複数のデータセットを得る目的のシミュレーションモデルを生成する。すなわち、各実施形態の制御装置は、関連技術においてシミュレーションに用いる観測データの代わりに、シミュレーションモデルに基づいて生成する計算データを制御に用いる。
以上のように、第1の実施形態では、不確実性や時間変動を内包するシステムを対象とした場合の課題を解決するために、実際のシステムの入出力の関係に着目した制御モデルを生成する。そして、第1の実施形態では、制御モデルの生成に必要なデータをシミュレーションモデルによって生成する。
(第2の実施形態)
次に、本発明の第2の実施形態に係る制御装置について図面を参照しながら説明する。
次に、本発明の第2の実施形態に係る制御装置について図面を参照しながら説明する。
図7は、本実施形態の制御装置2の構成の一例を示すブロック図である。図7のように、制御装置2は、データ生成部10とモデル生成部20-2とを備える。モデル生成部20-2は、データセット記憶部21、制御目的情報記憶部22、制御モデル生成部23、制御モデル情報記憶部24、最適制御条件記憶部25、最適制御入力選択部26、最適制御入力情報記憶部27に加えて、妥当性判定部28を有する。
制御装置2は、妥当性判定部28を含むモデル生成部20-2を備える点で、第1の実施形態の制御装置1とは異なる。なお、制御装置2は、妥当性判定部28を含む点以外は第1の実施形態の制御装置1と同様なので、妥当性判定部28以外の構成については詳細な説明を省略する。
〔妥当性判定部〕
妥当性判定部28は、制御モデル情報記憶部24に制御モデルが格納されると、その制御モデルの妥当性について判定する。すなわち、妥当性判定部28は、制御モデル生成部23は生成した制御モデルの妥当性について判定する。妥当性判定部28は、制御モデルが妥当でないと判定した場合、シミュレータ入力条件を修正する指示をデータ生成部10に出力する。一方、妥当性判定部28によって制御モデルが妥当であると判定された場合、最適制御入力選択部26は、妥当であると判定された制御モデルと最適制御条件とを用いて最適制御入力を選択する。
妥当性判定部28は、制御モデル情報記憶部24に制御モデルが格納されると、その制御モデルの妥当性について判定する。すなわち、妥当性判定部28は、制御モデル生成部23は生成した制御モデルの妥当性について判定する。妥当性判定部28は、制御モデルが妥当でないと判定した場合、シミュレータ入力条件を修正する指示をデータ生成部10に出力する。一方、妥当性判定部28によって制御モデルが妥当であると判定された場合、最適制御入力選択部26は、妥当であると判定された制御モデルと最適制御条件とを用いて最適制御入力を選択する。
入力条件設定部12は、妥当性判定部28からシミュレータ入力条件を修正する指示を取得すると、シミュレータに入力された制御入力、特性パラメータの値および範囲の中から不適切または不足している値(以下、不適値とよぶ)を特定する。入力条件設定部12は、特定した不適値に関して入力条件を修正する。
例えば、製造ラインの例においては、入力条件設定部12は、制御入力として新たに製造頻度を標準値の0~1倍として加えたり、特性パラメータである製造能率を標準値の0~1.5倍に変更したりする修正を加える。
ここで、制御モデル生成部23によって生成される制御モデルの妥当性について妥当性判定部28が判定する例について説明する。
妥当性判定部28は、制御モデル情報記憶部24に格納された制御モデルが妥当でないと判定した場合に、シミュレータへ入力された制御入力や、特性パラメータの値または範囲のうち、不適値を特定してシミュレータ入力条件を修正する。例えば、妥当性判定部28による妥当性の判定方法については、以下の2つの観点が考えられる。
一つ目の観点は、シミュレータに入力するデータセットに含まれる入力値の範囲である。妥当性判定部28は、式6または式7のような制御モデル式を求めた際に、その制御モデル式で想定した関数の有効な範囲と、実際に制御対象である制御器に対して設定または設定予定の値の範囲とに関して、相違がないか判定する。ただし、制御モデル式で想定した値の範囲とは、関数の有効な範囲としての制御入力uおよび特性パラメータθの値の範囲である。例えば、モデル生成部20-2は、制御モデル式における入力値の範囲が実際に設定する範囲からずれていた場合には、実際に設定する値の範囲と制御モデル式で有効であった値の差の範囲とを特定する。そして、モデル生成部20-2は、特定した範囲に基づいた新たなシミュレータ入力条件を入力条件設定部12に設定させる。
二つ目の観点は、入力の変化に対する評価指標の応答特性である。この二つ目の観点は、最適な制御値を一意に決定するという第一の点と、その最適な制御値の状態を安定的に保つという第二の点とに分けられる。
二つ目の観点のうち第一の点は、最適制御入力選択部26が、対象システムの次ステップまたは任意の指定の時刻に入力すべき制御入力の値を決めたり、特性パラメータの値を算出したりする動作に関係する。式6または式7のような制御モデル式を用いて、一意の最適値を決定するためには、少なくとも二つの必要条件がある。一つ目の必要条件は、最適制御条件記憶部25に適切な最適評価指標Joptが格納されていることである。二つ目の必要条件は、式6または式7の関数の形が、例えば、凸関数または単峰性を示すか、極大値または極小値を持つことである。言い換えると、式6または式7のような制御モデル式を用いて最適値を一意に決定するためには、所定の範囲の異なる制御入力uと特性パラメータθとの組み合わせに対して出力値が異なる必要がある。この条件が満たされない場合は、最適評価指標Joptを満たす制御入力uと特性パラメータθとの組み合わせが複数通り存在する可能性があるため、最適値を一意に決定することができない。すなわち、制御装置1は、上述の必要条件が満たされない場合、目的出力を生成できない。ただし、逆関数に相当する式9内のパラメータΛによって、例えば所定の範囲を指定するなどの制限を行うことで、制御入力uや特性パラメータθを複数通りの組み合わせの中から特定することもできる。これでも特定ができない、または所定の範囲についての情報が事前に無い場合は、上述の必要条件が満たされないこととなる。
二つ目の観点のうち第二の点に関して、一般に、制御入力uと特性パラメータθとの組み合わせがずれた場合、またはシステムの特性がずれた場合に、出力値を最適値に戻す方向に制御入力uが作用する状態を安定という。例えば、式6または式7のような制御モデル式が、所定の範囲において2回連続微分可能であるとき、その2階微分値が正の値となれば、制御モデル式は下に凸な関数となり、出力値を最小化する場合において安定となる。
妥当性判定部28は、上記のような入力の変化に対する評価指標の応答特性の観点で制御モデルが妥当でないと判定した場合、入力条件設定部12に設定を修正させ、制御モデル生成の元となるシミュレータへの入出力データを変更する。また、式8のようにガウス過程回帰などの手法を用いて制御モデル式を生成する際には、用いる入出力データセットの値の範囲やカーネル関数の形などに制限を加えたり、適切に選択したりすればよい。なお、制御モデルの妥当性の判定方法と、その判定結果に基づく修正方法は、上述した例に限定されない。
以上が、本実施形態の制御装置2の構成についての説明である。続いて、本実施形態の制御装置2の動作について図面を参照しながら説明する。
(動作)
図8は、本実施形態の制御装置2の動作について説明するためのフローチャートである。なお、図8のフローチャートに沿った説明においては、制御装置2を動作の主体として説明する。
図8は、本実施形態の制御装置2の動作について説明するためのフローチャートである。なお、図8のフローチャートに沿った説明においては、制御装置2を動作の主体として説明する。
図8において、まず、制御装置2は、制御対象である対象システムに対応する制御入力の範囲から、シミュレータに入力するデータセットを含むシミュレータ入力条件と、シミュレータの動作条件を含むシミュレータ情報とを設定する(ステップS21)。
次に、制御装置2は、シミュレータ入力条件とシミュレータ情報とを用いてシミュレーションを実行し、データセットを生成する(ステップS22)。制御装置2は、生成したデータセットを格納する。なお、制御装置2は、異なるシミュレータ入力条件やシミュレータ情報を用いてシミュレーションを複数回繰り返し実行してもよい。
次に、制御装置2は、格納している制御目的情報に基づいて、データセットに含まれるシミュレータ出力の中から評価指標を抽出する(ステップS23)。
次に、制御装置2は、格納しているデータセットと、抽出した評価指標とを用いて、シミュレータへの制御入力情報と評価指標との関係性を満たす制御モデルを生成する(ステップS24)。制御装置2は、生成した制御モデルを格納する。
ここで、制御装置2は、生成した制御モデルの妥当性を判定する(ステップS25)。例えば、制御装置2は、前述したとおり、入力値の範囲と入力の変化に対する評価指標の応答特性を評価することによって、制御モデルの妥当性を判定する。
制御装置2は、制御モデルが妥当ではないと判定した場合(ステップS25でNo)、不適値を特定し、特定した不適値に関して修正されたシミュレータ入力条件を算出する(ステップS26)。そして、制御装置2は、修正されたシミュレータ入力条件を新しいシミュレーション入力条件に設定して、ステップS21~ステップS24の処理を再び実行して制御モデルを生成し、制御モデルの妥当性を判定する(ステップS25)。
一方、制御装置2は、制御モデルが妥当であると判定した場合(ステップS25でYes)、格納している制御条件と制御モデルとを満たす最適制御入力を算出する(ステップS27)。
以上が、図8のフローチャートに沿った制御装置2の動作に関する説明である。
本実施形態の制御装置は、第1の実施形態の制御装置の第1および第2の特徴に加えて、以下に示す第3の特徴を有する。
第3の特徴は、目的状態と制御入力との関係のモデル化が妥当でない場合には、シミュレータの実行条件を変更して、モデル化に用いるデータセットを修正可能なことである。その結果、本実施形態の制御装置によれば、実システムの観測環境や動作状況に依存した観測データの取得に頼ることなく、シミュレーションの実行条件の設定変更のみによって制御モデルの生成および修正を実行できる。
以上のように、本実施形態の制御装置によれば、制御モデルの生成に必要なデータをシミュレーションモデルによって生成できるだけではなく、生成した制御モデルの妥当性を判定して制御モデルを修正できる。
(第3の実施形態)
次に、本発明の第3の実施形態に係る制御装置について図面を参照しながら説明する。
次に、本発明の第3の実施形態に係る制御装置について図面を参照しながら説明する。
図9は、本実施形態の制御装置3の構成を示すブロック図である。図9のように、制御装置3は、データ生成部10とモデル生成部20とに加えて、モデル更新部30を備える。
制御装置3は、モデル更新部30を備える点で、第1の実施形態の制御装置1とは異なる。なお、制御装置3は、モデル更新部30を備える点以外は第1の実施形態の制御装置1と同様なので、モデル更新部30以外の構成については詳細な説明を省略する。
〔モデル更新部〕
図10は、モデル更新部30の構成の一例を示すブロック図である。図10のように、モデル更新部30は、制御モデル更新部31と観測データ記憶部32とを有する。
図10は、モデル更新部30の構成の一例を示すブロック図である。図10のように、モデル更新部30は、制御モデル更新部31と観測データ記憶部32とを有する。
制御モデル更新部31は、モデル生成部20によって算出され、制御入力として適用された最適制御入力を取得する。また、制御モデル更新部31は、取得した最適制御入力が対象システムに入力された際のシステムの出力値を観測し、観測した出力値の少なくとも一部を観測データとして観測データ記憶部32に格納する。
観測データには、対象システムの出力値の一部に関する情報が少なくとも含まれる。特に、観測データには、式4または式5で表現される評価指標Jと同等の情報が含まれる。例えば、制御モデル更新部31は、対象システムに設置されたセンサなどの計測器によって取得されるデータや、製造量、速度、人手または自動的に算出されるデータを観測データとして取得する。なお、観測データの種類や取得方法については、ここで挙げた例に限定されない。
制御モデル更新部31は、取得した最適制御入力と、観測データ記憶部32に格納された観測データとに基づいて制御モデルを更新する。制御モデル更新部31は、更新された制御モデルをモデル生成部20に出力する。具体的には、制御モデル更新部31は、更新された制御モデルをモデル生成部20の制御モデル情報記憶部24に格納する。
観測データ記憶部32には、制御モデル更新部31によって、最適制御入力が対象システムに入力された際の出力値に関する観測データとして格納される。
次に、制御モデル更新部31の動作について詳細に説明する。制御モデル更新部31は、モデル生成部20から入力された最適制御入力と、観測データ記憶部32に格納された観測データとに基づいて対象システムの制御モデルを更新する。例えば、対象システムに関する制御モデルの更新方法については、以下の3通りの方法がある。
第1の更新方法は、入力された最適制御入力と観測データとの組み合わせから新たな制御モデルを生成する方法である。例えば、第1の実施形態と同様の方法によって制御モデルを生成できる。第1の実施形態では、式3で表されるシミュレータからの入出力データセットおよび制御目的に基づいた評価指標を用いて制御モデルを生成する。本実施形態では、制御に用いた制御入力の値と、その制御入力の下でのシステムの出力値を用いて制御モデルを生成する。すなわち、第1の実施形態では、シミュレーションによる仮想的なデータを用いて制御モデルを生成するのに対し、本実施形態のモデル更新では、実際に入力された制御入力値と実測された観測データを用いて制御モデルを生成する。第1の実施形態の方法と本実施形態の方法では、制御モデルを生成するためのデータの起源が異なり、データの種類は同等である。そのため、本実施形態においても、第1の実施形態と同様の方法で制御モデルを生成できる。第1の更新方法は、対象システムの制御入力に対する出力の振る舞いが、更新前のシミュレータに基づいて生成した制御モデルによる振る舞いと比べて差異が大きい場合に適用すると効果的である。
第2の更新方法は、入力された最適制御入力と観測データとの組み合わせについてのデータセットと、データ生成部10のシミュレーションによって得られるデータセットとに基づいて新たな制御モデルを生成する方法である。例えば、制御入力および評価指標のそれぞれに関する情報に、データ生成部10のシミュレーションによって得られるデータセットを基本として実際の制御入力および観測データを追加し、それらを同種のデータとみなして制御モデルを生成する。すなわち、シミュレーションによって得られるデータと、実測されるデータとを合わせて制御モデルを生成する。なお、第2の更新方法は、データの起源が2つになるだけであり、制御モデルの生成に用いるデータの種類は同等であるため、第1の実施形態と同様の方法で制御モデルを生成できる。第2の更新方法は、制御開始直後などの観測データが少ないときや、観測の頻度が少ない場合などに有効である。また、第2の更新方法では、シミュレータによって生成された制御モデルを基本としながら、実測された観測データによって少しずつ制御モデルを修正できる。そのため、第2の更新方法は、対象システムの振る舞いと、更新前のシミュレータに基づいて生成した制御モデルによる振る舞いとに大差がない場合に適用すると効果的である。
第3の更新方法は、未来の最適制御入力をこれまでの値の時間発展とみなすとともに、未来の評価指標を観測データとみなすことによって状態空間モデルを構成し、制御入力情報を観測データによってベイズ更新する方法である。例えば、式3で表現される時刻tにおける制御入力utおよび特性パラメータθtに対する次の計算時間ステップ、すなわち未来値をそれぞれ制御入力ut+1および特性パラメータθt+1とする。この場合、以下の式10のように、時刻tより1時刻後の時刻t+1における状態変数ベクトルxt+1は、時刻tにおける状態変数ベクトルxtから生成されるように表現できる。なお、式10において、Mは、制御入力uと特性パラメータθ以外で表される変数以外の、状態ベクトルに含めて予測または推定する変数を表す。例えば、Mには、制御モデルの誤差項eの分散を調整するパラメータ(ハイパーパラメータとも言われる)などが想定される。
一般に、式10のように表現する場合、マルコフ性が成り立つ必要がある。しかし、値の変化が十分小さくなるように計算時間ステップを設定できれば、必ずしもマルコフ性が成り立たなくてもよい。
時刻t+1の評価指標Jt+1は、計算された次時間ステップにおける制御入力ut+1が対象システムに入力された際にそのシステムから出力される値である。すなわち、評価指標Jt+1は、観測データ記憶部32に格納される情報に基づいた値である。制御入力の次時間ステップにおける計算値、写像fに含まれるパラメータ、システムノイズは、以下の式13のように各変数を確率的に扱い、観測データによって更新された事後分布として求めることができる。
状態ベクトルx*の要素である制御入力uについて説明すると、式13の右辺第一項は、計算された制御入力ut+1の確からしさを表す尤度である。式13の右辺第一項の値は、例えば計算された制御入力ut+1を式12に記載された上波線付きベクトルHを用いて評価指標に変換した結果と、実際に観測された評価指標との差に基づいて算出することができる。式13の右辺第2項は、制御入力ut+1の事前分布、すなわち計算結果である。
このように、第3の更新方法は、観測データ記憶部32に格納された情報に基づいて、制御入力の値を更新する。以降、観測データ記憶部32に観測データが格納されるたびに、式12で示す制御モデルの更新が行われる。第3の更新方法は、得られた観測データに合わせて制御入力が自動的に更新される。そのため、第3の更新方法は、初期の制御モデルの精度が不十分である場合に適用すると効果的である。また、第3の更新方法は、実際に観測されたシステムの振る舞いと、更新前のシミュレータに基づいて生成した制御モデルによる振る舞いとの間に差異があり、何らかの規則性やトレンドがある場合に適用すると効果的である。
以上のように、制御モデル更新部31における対象システムに関する制御モデルの更新方法について、3種類の更新方法を挙げて説明した。これらの方法は、上述したように、観測データ記憶部32に格納された観測データの取得量や頻度などの情報と、制御モデル生成部23で生成された制御モデルの精度などの情報とに基づいて選択すればよい。また、上記の3つの更新方法は例示であって、制御モデルの更新手段はこれらに限定されない。
以上が、本実施形態の制御装置3の構成についての説明である。続いて、本実施形態の制御装置3の動作について図面を参照しながら説明する。
(動作)
図11は、本実施形態の制御装置3の動作について説明するためのフローチャートである。なお、図11のフローチャートに沿った説明においては、制御装置3を動作の主体として説明する。
図11は、本実施形態の制御装置3の動作について説明するためのフローチャートである。なお、図11のフローチャートに沿った説明においては、制御装置3を動作の主体として説明する。
図11において、まず、制御装置3は、制御対象である対象システムに対応する制御入力の範囲から、シミュレータに入力するデータセットを含むシミュレータ入力条件と、シミュレータの動作条件を含むシミュレータ情報とを設定する(ステップS31)。
次に、制御装置3は、シミュレータ入力条件とシミュレータ情報とを用いてシミュレーションを実行し、データセットを生成する(ステップS32)。制御装置3は、生成したデータセットを格納する。なお、制御装置3は、異なるシミュレータ入力条件やシミュレータ情報を用いてシミュレーションを繰り返し実行してもよい。
次に、制御装置3は、格納している制御目的情報に基づいて、データセットに含まれるシミュレータ出力の中から評価指標を抽出する(ステップS33)。
次に、制御装置3は、格納しているデータセットと、抽出した評価指標とを用いて、シミュレータへの制御入力情報と評価指標との関係性を満たす制御モデルを生成する(ステップS34)。制御装置3は、生成した制御モデルを格納する。
次に、制御装置3は、格納している制御条件と制御モデルとを満たす最適制御入力を算出する(ステップS35)。
ここで、制御装置3は、対象システムに最適制御入力値が入力されたことによって、対象システムからの出力値が観測データとして観測されているか否かを判定する(ステップS36)。
制御装置3は、新たな観測データが観測されている場合(ステップS36でYes)、制御入力と観測データとに基づいて制御モデルを更新する(ステップS37)。ステップS37の後は、ステップS35に戻る。
一方、制御装置3は、新たな観測データが観測されていない場合(ステップS36でNo)、動作を終了とする。
以上が、図11のフローチャートに沿った制御装置3の動作に関する説明である。
ここで、図12を用いて、本実施形態の制御装置の効果について説明する。第1の実施形態のシステム制御方法については図6を用いて説明した。図6の例では、対象システムを制御するための制御入力条件をリアルタイムで取得するわけではない。それに対し、図12の例では、制御モデルに基づいて設定された最適制御入力を対象システムに入力し、その最適制御入力によって制御された対象システムの出力値を用いて制御モデルを更新する。
すなわち、本実施形態の制御装置は、実システムの観測データを用いない場合(以下、オフラインとも呼ぶ)と、実際の制御やセンサデータ取得を用いる場合(以下、オンラインとも呼ぶ)とで異なる処理を実行する。オフラインの場合、本実施形態の制御装置は、制御入力と目的出力との関係を特定し、その関係を得るためのシミュレーションモデルの入力条件を設定する。一方、オンラインの場合、本実施形態の制御装置は、実際の制御値やセンサデータなどの観測データを用いて、既に生成された制御モデルを更新または修正する。
以上のように、本実施形態の制御装置によれば、制御モデルの生成に必要なデータをシミュレーションモデルによって生成できるだけではなく、実システムの観測データに基づいて制御モデルを更新できる。
(第4の実施形態)
次に、本発明の第4の実施形態に係る制御装置について図面を参照しながら説明する。
次に、本発明の第4の実施形態に係る制御装置について図面を参照しながら説明する。
図13は、本実施形態の制御装置4の構成を示すブロック図である。図13のように、制御装置4は、データ生成部10と、モデル生成部20-2と、モデル更新部30とを備える。
制御装置4は、第3の実施形態の制御装置3のモデル生成部20を第2の実施形態のモデル生成部20-2に置換させた構成を有する。なお、制御装置4の各構成要素は、第1~第3の実施形態のいずれかにおいて示した構成と同様なので、構成についての説明は省略する。
(動作)
図14は、本実施形態の制御装置4の動作について説明するためのフローチャートである。なお、図14のフローチャートに沿った説明においては、制御装置4を動作の主体として説明する。
図14は、本実施形態の制御装置4の動作について説明するためのフローチャートである。なお、図14のフローチャートに沿った説明においては、制御装置4を動作の主体として説明する。
図14において、まず、制御装置4は、制御対象である対象システムに対応する制御入力の範囲から、シミュレータに入力するデータセットを含むシミュレータ入力条件と、シミュレータの動作条件を含むシミュレータ情報とを設定する(ステップS41)。
次に、制御装置4は、シミュレータ入力条件とシミュレータ情報とを用いてシミュレーションを実行し、データセットを生成する(ステップS42)。制御装置4は、生成したデータセットを格納する。なお、制御装置4は、異なるシミュレータ入力条件やシミュレータ情報を用いてシミュレーションを複数回繰り返し実行してもよい。
次に、制御装置4は、格納している制御目的情報に基づいて、データセットに含まれるシミュレータ出力の中から評価指標を抽出する(ステップS43)。
次に、制御装置4は、格納しているデータセットと、抽出した評価指標とを用いて、シミュレータへの制御入力情報と評価指標との関係性を満たす制御モデルを生成する(ステップS44)。制御装置4は、生成した制御モデルを格納する。
ここで、制御装置4は、生成した制御モデルの妥当性を判定する(ステップS45)。例えば、制御装置4は、入力値の範囲と入力の変化に対する評価指標の応答特性を評価することによって、制御モデルの妥当性を判定する。
制御装置4は、制御モデルが妥当ではないと判定した場合(ステップS45でNo)、不適値を特定し、特定した不適値に関して修正されたシミュレータ入力条件を算出する(ステップS46)。そして、制御装置4は、修正されたシミュレータ入力条件を新しいシミュレーション入力条件に設定して、ステップS41~ステップS44の処理を再び実行して制御モデルを生成し、制御モデルの妥当性を判定する(ステップS45)。
一方、制御装置4は、制御モデルが妥当であると判定した場合(ステップS45でYes)、格納している制御条件と制御モデルとを満たす最適制御入力を算出する(ステップS47)。
ここで、制御装置4は、対象システムに最適制御入力値が入力されたことによって、対象システムからの出力値が観測データとして観測されているか否かを判定する(ステップS48)。
制御装置4は、新たな観測データが観測されている場合(ステップS48でYes)、制御入力と観測データとに基づいて制御モデルを更新する(ステップS49)。ステップS47の後は、ステップS45に戻る。
一方、制御装置4は、新たな観測データが観測されていない場合(ステップS48でNo)、動作を終了とする。
以上が、図14のフローチャートに沿った制御装置4の動作に関する説明である。
以上のように、本実施形態の制御装置によれば、制御モデルの生成に必要なデータをシミュレーションモデルによって生成できるだけではなく、生成した制御モデルの妥当性を判定して制御モデルを修正できる。さらに、本実施形態の制御装置によれば、実システムの観測データに基づいて制御モデルを更新できる。
(第5の実施形態)
次に、本発明の第5の実施形態に係るシステムについて図面を参照しながら説明する。図15は、本実施形態のシステム100の構成を示すブロック図である。図15のように、システム100は、制御装置110と制御対象システム120とを備える。制御装置110は、第1~第4の実施形態の制御装置のいずれかである。
次に、本発明の第5の実施形態に係るシステムについて図面を参照しながら説明する。図15は、本実施形態のシステム100の構成を示すブロック図である。図15のように、システム100は、制御装置110と制御対象システム120とを備える。制御装置110は、第1~第4の実施形態の制御装置のいずれかである。
システム100は、第1~第4の実施形態のいずれかに相当する制御装置110に加えて、制御対象システム120を含むものである。制御装置110は、自装置で生成した最適制御入力を制御対象システム120に送信する。制御対象システム120は、制御装置110から最適制御入力を受信する。制御対象システム120には、受信した最適制御入力に基づいた設定がなされ、設定された最適制御入力に基づいて動作する。
第3および第4の実施形態の制御装置で制御装置110を構成する場合、制御対象システム120は、最適制御入力に基づいて動作した結果である出力値を制御装置110に送信する。制御装置110は、制御対象システム120の出力値に含まれる観測データを用いて、制御対象システム120の制御モデルを更新する。
以上が、本実施形態のシステムについての説明である。本実施形態のシステムによれば、制御対象システムを目的の状態へ制御できる制御装置と、制御対象システムとを単一のシステムで構成できる。なお、制御対象システムに制御装置を含ませて、単一のシステムとして構成してもよい。
(ハードウェア)
ここで、本発明の各実施形態に係る制御装置を実現するハードウェア構成について、図16のコンピュータ90を一例として挙げて説明する。なお、図16のコンピュータ90は、各実施形態の制御装置の処理を実行するための構成例であって、本発明の範囲を限定するものではない。
ここで、本発明の各実施形態に係る制御装置を実現するハードウェア構成について、図16のコンピュータ90を一例として挙げて説明する。なお、図16のコンピュータ90は、各実施形態の制御装置の処理を実行するための構成例であって、本発明の範囲を限定するものではない。
図16のように、コンピュータ90は、プロセッサ91、主記憶装置92、補助記憶装置93、入出力インターフェース95および通信インターフェース96を備える。図16においては、インターフェースをI/F(Interface)と略して表記する。プロセッサ91、主記憶装置92、補助記憶装置93、入出力インターフェース95および通信インターフェース96は、バス99を介して互いにデータ通信可能に接続される。また、プロセッサ91、主記憶装置92、補助記憶装置93および入出力インターフェース95は、通信インターフェース96を介して、インターネットやイントラネットなどのネットワークに接続される。
プロセッサ91は、補助記憶装置93等に格納されたプログラムを主記憶装置92に展開し、展開されたプログラムを実行する。本実施形態においては、コンピュータ90にインストールされたソフトウェアプログラムを用いる構成とすればよい。プロセッサ91は、本実施形態に係る制御装置による処理を実行する。
主記憶装置92は、プログラムが展開される領域を有する。主記憶装置92は、例えばDRAM(Dynamic Random Access Memory)などの揮発性メモリとすればよい。また、MRAM(Magnetoresistive Random Access Memory)などの不揮発性メモリを主記憶装置92として構成・追加してもよい。
補助記憶装置93は、種々のデータを記憶する。補助記憶装置93は、ハードディスクやフラッシュメモリなどのローカルディスクによって構成される。なお、種々のデータを主記憶装置92に記憶させる構成とし、補助記憶装置93を省略することも可能である。
入出力インターフェース95は、コンピュータ90と周辺機器とを接続するためのインターフェースである。通信インターフェース96は、規格や仕様に基づいて、インターネットやイントラネットなどのネットワークを通じて、外部のシステムや装置に接続するためのインターフェースである。入出力インターフェース95および通信インターフェース96は、外部機器と接続するインターフェースとして共通化してもよい。
コンピュータ90には、必要に応じて、キーボードやマウス、タッチパネルなどの入力機器を接続するように構成してもよい。それらの入力機器は、情報や設定の入力に使用される。なお、タッチパネルを入力機器として用いる場合は、表示機器の表示画面が入力機器のインターフェースを兼ねる構成とすればよい。プロセッサ91と入力機器との間のデータ通信は、入出力インターフェース95に仲介させればよい。
また、コンピュータ90には、情報を表示するための表示機器を備え付けてもよい。表示機器を備え付ける場合、コンピュータ90には、表示機器の表示を制御するための表示制御装置(図示しない)が備えられていることが好ましい。表示機器は、入出力インターフェース95を介してコンピュータ90に接続すればよい。
また、コンピュータ90には、必要に応じて、ディスクドライブを備え付けてもよい。ディスクドライブは、バス99に接続される。ディスクドライブは、プロセッサ91と図示しない記録媒体(プログラム記録媒体)との間で、記録媒体からのデータ・プログラムの読み出し、コンピュータ90の処理結果の記録媒体への書き込みなどを仲介する。記録媒体は、例えば、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光学記録媒体で実現できる。また、記録媒体は、USB(Universal Serial Bus)メモリやSD(Secure Digital)カードなどの半導体記録媒体や、フレキシブルディスクなどの磁気記録媒体、その他の記録媒体によって実現してもよい。
以上が、本発明の各実施形態に係る制御装置を可能とするためのハードウェア構成の一例である。なお、図16のハードウェア構成は、各実施形態に係る制御装置の処理を実行するためのハードウェア構成の一例であって、本発明の範囲を限定するものではない。また、各実施形態に係る制御装置に関する処理をコンピュータに実行させるプログラムも本発明の範囲に含まれる。さらに、各実施形態に係るプログラムを記録したプログラム記録媒体も本発明の範囲に含まれる。
各実施形態の制御装置の構成要素は、任意に組み合わせることができる。また、各実施形態の制御装置の構成要素は、ソフトウェアによって実現してもよいし、回路によって実現してもよい。
以上、実施形態を参照して本発明を説明してきたが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2018年1月16日に出願された日本出願特願2018-004884を基礎とする優先権を主張し、その開示の全てをここに取り込む。
1、2、3、4 制御装置
10 データ生成部
11 制御入力情報記憶部
12 入力条件設定部
13 シミュレータ情報記憶部
14 データセット生成部
20 モデル生成部
21 データセット記憶部
22 制御目的情報記憶部
23 制御モデル生成部
24 制御モデル情報記憶部
25 最適制御条件記憶部
26 最適制御入力選択部
27 最適制御入力情報記憶部
28 妥当性判定部
30 モデル更新部
31 制御モデル更新部
32 観測データ記憶部
100 システム
110 制御装置
120 制御対象システム
10 データ生成部
11 制御入力情報記憶部
12 入力条件設定部
13 シミュレータ情報記憶部
14 データセット生成部
20 モデル生成部
21 データセット記憶部
22 制御目的情報記憶部
23 制御モデル生成部
24 制御モデル情報記憶部
25 最適制御条件記憶部
26 最適制御入力選択部
27 最適制御入力情報記憶部
28 妥当性判定部
30 モデル更新部
31 制御モデル更新部
32 観測データ記憶部
100 システム
110 制御装置
120 制御対象システム
Claims (10)
- 制御対象システムを制御するための制御入力情報と、前記制御対象システムのシミュレーションモデルに関するシミュレータ情報とを格納し、前記シミュレーションモデルに基づいたシミュレーションを実行するシミュレータに入力するシミュレータ入力条件を前記制御入力情報に基づいて設定し、前記シミュレータ入力条件と前記シミュレータ情報とを用いて前記シミュレーションを実行して、前記シミュレータの入出力間のデータセットを生成するデータ生成手段と、
前記データ生成手段から前記データセットを取得して記憶するとともに、前記制御対象システムに関する制御目的情報と、前記制御対象システムの最適制御条件とを記憶し、前記制御目的情報に基づいて前記データセットに含まれるいずれかのシミュレータ出力を評価指標として選択し、選択した前記評価指標に対応する前記データセットと前記評価指標とを用いて前記シミュレータの入出力間の関係性を表す制御モデルを生成し、生成した前記制御モデルと前記最適制御条件とを用いて前記制御対象システムの最適制御入力を選択するモデル生成手段とを備える制御装置。 - 前記データ生成手段は、
前記制御対象システムに関する前記制御入力情報が記憶される制御入力情報記憶手段と、
前記制御入力情報記憶手段に記憶された制御入力情報に基づいて前記シミュレータ入力条件を設定する入力条件設定手段と、
前記シミュレーションモデルに関する前記シミュレータ情報を記憶させるシミュレータ情報記憶手段と、
前記入力条件設定手段から前記シミュレータ入力条件を取得するとともに、前記シミュレーションを実行するための前記シミュレータ情報を前記シミュレータ情報記憶手段から取得し、取得した前記シミュレータ入力条件と前記シミュレータ情報とを用いて前記シミュレーションを実行し、前記シミュレータの入出力間の前記データセットを生成するデータセット生成手段とを有する請求項1に記載の制御装置。 - 前記データ生成手段によって生成される前記データセットが記憶されるデータセット記憶手段と、
前記制御対象システムの前記制御目的情報が記憶される制御目的情報記憶手段と、
前記制御目的情報記憶手段に記憶された前記制御目的情報を取得し、取得した前記制御目的情報に基づいて前記データセット記憶手段に記憶された前記データセットに含まれるいずれかのシミュレータ出力を前記評価指標として選択し、前記データセット記憶手段に記憶された前記データセットと、生成した前記評価指標とを用いて、前記シミュレータの入出力間の関係性を表す制御モデルを生成する制御モデル生成手段と、
前記制御モデル生成手段によって生成される前記制御モデルが記憶される制御モデル情報記憶手段と、
前記制御対象システムを最適に制御するための前記最適制御条件が記憶される最適制御条件記憶手段と、
前記最適制御条件記憶手段に格納された前記最適制御条件と、前記制御モデル情報記憶手段に格納された前記制御モデルとを取得し、取得した前記最適制御条件と前記制御モデルとを用いて前記制御対象システムの前記最適制御入力を選択する最適制御入力選択手段と、
前記最適制御入力選択手段によって選択される前記最適制御入力が記憶される最適制御入力情報記憶手段とを有する請求項1または2に記載の制御装置。 - 前記モデル生成手段は、
前記制御モデルの妥当性を判定する妥当性判定手段を有し、
前記妥当性判定手段によって前記制御モデルが妥当でないと判定された場合、前記シミュレータ入力条件を修正する指示を前記データ生成手段に出力し、
前記妥当性判定手段によって前記制御モデルが妥当であると判定された場合、妥当であると判定された前記制御モデルと前記最適制御条件とを用いて前記最適制御入力を選択する請求項1乃至3のいずれか一項に記載の制御装置。 - 前記データ生成手段は、
確率的な手法を用いた前記シミュレーションを複数回実行することによって前記シミュレータの入出力間の前記データセットを生成する請求項1乃至4のいずれか一項に記載の制御装置。 - 前記モデル生成手段は、
特定の時刻における前記シミュレータの出力を集めた行列に含まれる特定の出力値を前記評価指標として選択する請求項1乃至5のいずれか一項に記載の制御装置。 - 前記モデル生成手段によって選択される前記最適制御入力を取得するとともに、前記制御対象システムに前記最適制御入力が入力された際の前記制御対象システムの出力値に関する観測データを記憶し、前記最適制御入力と前記観測データとに基づいて前記制御モデルを更新し、更新された前記制御モデルを前記モデル生成手段に出力するモデル更新手段を備え、
前記モデル生成手段は、
前記モデル更新手段によって前記観測データが取得された場合、前記観測データに基づいて前記モデル更新手段によって更新された前記制御モデルを用いて前記最適制御入力を選択し、
前記モデル更新手段によって前記観測データが取得されていない場合、前記モデル生成手段が生成する前記制御モデルに基づいて前記最適制御入力を選択する請求項1乃至6のいずれか一項に記載の制御装置。 - 請求項7に記載の制御装置と、
前記制御装置によって制御される前記制御対象システムとによって構成され、
前記制御装置は、
前記制御対象システムの前記最適制御入力を前記制御対象システムに出力し、
前記制御対象システムは、
前記制御装置から取得される前記最適制御入力に基づいて動作した結果を前記観測データとして前記制御装置に出力するシステム。 - 制御対象システムを制御するための制御入力情報に基づいて、前記制御対象システムのシミュレーションモデルに基づいたシミュレーションを実行するシミュレータに入力するシミュレータ入力条件を設定し、
前記制御対象システムのシミュレーションモデルに関するシミュレータ情報と前記シミュレータ入力条件とを用いて前記シミュレーションを実行して前記シミュレータの入出力間のデータセットを生成し、
前記制御対象システムに関する制御目的情報に基づいて前記データセットに含まれるいずれかのシミュレータ出力を評価指標として選択し、
選択した前記評価指標に対応する前記データセットと前記評価指標とを用いて前記シミュレータの入出力間の関係性を表す制御モデルを生成し、
生成した前記制御モデルと前記制御対象システムの最適制御条件とを用いて前記制御対象システムの最適制御入力を選択する制御方法。 - 制御対象システムを制御するための制御入力情報に基づいて、前記制御対象システムのシミュレーションモデルに基づいたシミュレーションを実行するシミュレータに入力するシミュレータ入力条件を設定する処理と、
前記制御対象システムのシミュレーションモデルに関するシミュレータ情報と前記シミュレータ入力条件とを用いて前記シミュレーションを実行して前記シミュレータの入出力間のデータセットを生成する処理と、
前記制御対象システムに関する制御目的情報に基づいて前記データセットに含まれるいずれかのシミュレータ出力を評価指標として選択する処理と、
選択した前記評価指標に対応する前記データセットと前記評価指標とを用いて前記シミュレータの入出力間の関係性を表す制御モデルを生成する処理と、
生成した前記制御モデルと前記制御対象システムの最適制御条件とを用いて前記制御対象システムの最適制御入力を選択する処理とをコンピュータに実行させるプログラムを記録させたプログラム記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019566443A JP7036128B2 (ja) | 2018-01-16 | 2019-01-11 | 制御装置、制御方法およびプログラム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018-004884 | 2018-01-16 | ||
JP2018004884 | 2018-01-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019142728A1 true WO2019142728A1 (ja) | 2019-07-25 |
Family
ID=67302280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/000648 WO2019142728A1 (ja) | 2018-01-16 | 2019-01-11 | 制御装置、制御方法およびプログラム記録媒体 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7036128B2 (ja) |
WO (1) | WO2019142728A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778063A (zh) * | 2021-09-16 | 2021-12-10 | 四川中鼎智能技术有限公司 | 基于纵向特征数据的设备控制方法及装置 |
WO2024041305A1 (zh) * | 2022-08-22 | 2024-02-29 | 无锡先导智能装备股份有限公司 | 涂布控制方法、装置、控制设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001249705A (ja) * | 2000-03-03 | 2001-09-14 | Toshiba Corp | プロセスシミュレータ応用非線形制御装置およびその方法 |
JP2007271187A (ja) * | 2006-03-31 | 2007-10-18 | Hitachi Ltd | 燃焼装置を有する制御対象物の制御装置、及びボイラを有するプラントの制御装置 |
JP2012064245A (ja) * | 2005-09-30 | 2012-03-29 | Fisher-Rosemount Systems Inc | バッチプロセスを制御するためのシステムおよび方法 |
JP2014206870A (ja) * | 2013-04-12 | 2014-10-30 | 横河電機株式会社 | プラントモデル管理装置及び方法 |
WO2017109820A1 (en) * | 2015-12-25 | 2017-06-29 | Nec Corporation | Cost function design system, cost function design method, and cost function design program |
-
2019
- 2019-01-11 JP JP2019566443A patent/JP7036128B2/ja active Active
- 2019-01-11 WO PCT/JP2019/000648 patent/WO2019142728A1/ja active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001249705A (ja) * | 2000-03-03 | 2001-09-14 | Toshiba Corp | プロセスシミュレータ応用非線形制御装置およびその方法 |
JP2012064245A (ja) * | 2005-09-30 | 2012-03-29 | Fisher-Rosemount Systems Inc | バッチプロセスを制御するためのシステムおよび方法 |
JP2007271187A (ja) * | 2006-03-31 | 2007-10-18 | Hitachi Ltd | 燃焼装置を有する制御対象物の制御装置、及びボイラを有するプラントの制御装置 |
JP2014206870A (ja) * | 2013-04-12 | 2014-10-30 | 横河電機株式会社 | プラントモデル管理装置及び方法 |
WO2017109820A1 (en) * | 2015-12-25 | 2017-06-29 | Nec Corporation | Cost function design system, cost function design method, and cost function design program |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778063A (zh) * | 2021-09-16 | 2021-12-10 | 四川中鼎智能技术有限公司 | 基于纵向特征数据的设备控制方法及装置 |
CN113778063B (zh) * | 2021-09-16 | 2023-06-27 | 四川中鼎智能技术有限公司 | 基于纵向特征数据的设备控制方法及装置 |
WO2024041305A1 (zh) * | 2022-08-22 | 2024-02-29 | 无锡先导智能装备股份有限公司 | 涂布控制方法、装置、控制设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2019142728A1 (ja) | 2020-12-17 |
JP7036128B2 (ja) | 2022-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019176370A1 (ja) | 将来状態推定装置および将来状態推定方法 | |
JP7044077B2 (ja) | モデル推定システム、方法およびプログラム | |
JP2020052737A (ja) | 製品設計装置および該方法 | |
WO2019142728A1 (ja) | 制御装置、制御方法およびプログラム記録媒体 | |
JPWO2018143019A1 (ja) | 情報処理装置、情報処理方法およびプログラム | |
JP6718425B2 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
Soni et al. | Digital twin: intersection of mind and machine | |
JP2020119189A (ja) | 流体解析システム、流体解析方法、および流体解析プログラム | |
JP4698578B2 (ja) | 共線性を検出し、検証し、かつ修復するための方法と物品 | |
JP2019053593A (ja) | 方策改善プログラム、方策改善方法、および方策改善装置 | |
JP7264845B2 (ja) | 制御システム及び制御方法 | |
CN111684365A (zh) | 学习装置、学习方法及其程序 | |
Sydney White et al. | Observations on modelling strategies for vendor‐managed inventory | |
JP5969734B2 (ja) | 分散モデル同定 | |
US11670403B2 (en) | Method and apparatus for generating chemical structure using neural network | |
WO2019235608A1 (ja) | 分析装置、分析方法および記録媒体 | |
Duvivier et al. | A fast multicriteria decision-making tool for industrial scheduling problems | |
JP7336425B2 (ja) | モデル学習装置、制御装置、モデル学習方法、および、コンピュータプログラム | |
JP7060130B1 (ja) | 運用支援装置、運用支援方法及びプログラム | |
JP7489876B2 (ja) | モデル解析装置、モデル解析方法、及びプログラム | |
JP7396478B2 (ja) | モデル訓練プログラム、モデル訓練方法および情報処理装置 | |
JP7336477B2 (ja) | 学習装置、評価装置、評価システム、学習方法、学習プログラム、評価方法、および評価プログラム | |
JP6999207B1 (ja) | データ解析方法、データ解析装置、及び、データ解析プログラム | |
WO2024075251A1 (ja) | データ生成システム、産業機械、データ生成方法、およびデータ生成プログラム | |
WO2023085195A1 (ja) | モデル生成装置、モデル生成方法及びデータ推定装置 |
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: 19741869 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2019566443 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19741869 Country of ref document: EP Kind code of ref document: A1 |