WO2022091530A1 - 推定装置、推定方法及びプログラムが格納された非一時的なコンピュータ可読媒体 - Google Patents

推定装置、推定方法及びプログラムが格納された非一時的なコンピュータ可読媒体 Download PDF

Info

Publication number
WO2022091530A1
WO2022091530A1 PCT/JP2021/030250 JP2021030250W WO2022091530A1 WO 2022091530 A1 WO2022091530 A1 WO 2022091530A1 JP 2021030250 W JP2021030250 W JP 2021030250W WO 2022091530 A1 WO2022091530 A1 WO 2022091530A1
Authority
WO
WIPO (PCT)
Prior art keywords
value
manipulated variable
estimation
target
estimated value
Prior art date
Application number
PCT/JP2021/030250
Other languages
English (en)
French (fr)
Inventor
修 長谷川
雄一 梅津
洸輔 井加田
Original Assignee
Soinn株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Soinn株式会社 filed Critical Soinn株式会社
Publication of WO2022091530A1 publication Critical patent/WO2022091530A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring

Definitions

  • the present invention relates to an estimation device, an estimation method and a program.
  • Patent Document 1 a method of PID controlling the operation amount of a valve attached to a pipe for supplying a heating liquid and a cooling liquid to be supplied to the polishing pad.
  • Patent Document 1 the surface temperature of the polishing pad is measured, and the operation amount of the heating liquid flow rate adjusting valve and the operating amount of the coolant second flow rate adjusting valve are PID controlled based on the difference between the measured value and the target temperature. There is. This makes it possible to suppress variations in polishing performance between polishing units.
  • Patent Document 2 a method of introducing reinforcement learning has been proposed in a control device that outputs an operation amount for a controlled object and makes the controlled amount of the controlled object follow a target value.
  • the target value time series which is the time series of the target value
  • the look-ahead length indicating the time width for pre-reading the target value
  • the target value is pre-read among the plurality of target values included in the time series of the target value.
  • the look-ahead target value indicating the target value after the look-ahead length indicating the time width to be performed is acquired.
  • the look-ahead target deviation which is the difference between the look-ahead target value and the current control amount of the controlled object, is calculated.
  • the look-ahead target deviation was corrected to the difference between the predicted value after the look-ahead length of the control amount and the look-ahead target value based on the response model of the controlled object and the amount of change in the past manipulated variable up to the present.
  • the correction target deviation is calculated.
  • a new operation amount is learned and calculated by reinforcement learning. As a result, flexible control by deep reinforcement learning is realized while ensuring the control characteristics of the controlled object.
  • the present invention has been made in view of the above circumstances, and estimates an operation amount similar to a human operation as an operation amount of an operation performed to maintain a target amount of a controlled object at a target value. With the goal.
  • the estimation device determines the operation amount for aiming at the target amount which is the output of the control target, regardless of the operation history of the operator to be controlled.
  • a first estimation unit that estimates information
  • a second estimation unit that estimates a second operation amount estimation value that imitates the operation of the operator based on the operation history of the operator to be controlled, the determination information, and the above.
  • It has an estimation value determining unit that determines a third operation amount estimation value for aiming at the target amount of the controlled object based on the second operation amount estimation value.
  • the estimation device is the above-mentioned estimation device, which estimates the determination information, estimates the second operation amount estimation value, and determines the third operation amount estimation value. It is desirable that the cycle be repeated. As a result, it is possible to sequentially obtain a third manipulated variable estimated value which is an manipulated variable that is close to a human operation.
  • the estimation device is the above-mentioned estimation device, and the first estimation unit is a target amount which is an output of the control target regardless of the operation history of the operator to be controlled.
  • the first operation amount estimation value which is the operation amount for setting the target value, is estimated, and the estimated value determination unit determines the first operation amount estimation value and the second operation amount estimation value with respect to the reference operation amount.
  • the operation amount estimated value of is changed, the first operation amount estimated value is output as the latest third operation amount estimated value, and the first operation amount is relative to the reference operation amount.
  • the third manipulated quantity estimated value determined in the previous cycle may be output as the latest third manipulated quantity estimated value. desirable. This makes it possible to set the third manipulated variable estimated value to an appropriate value according to the first manipulated variable estimated value and the second manipulated variable estimated value.
  • the estimation device is the above-mentioned estimation device, and the first estimation unit determines the difference between the target amount of the control target at the time of estimation and the target value.
  • the estimated value determination unit calculates and changes the first operation amount estimation value with respect to the reference operation amount, and the second operation amount estimation value with respect to the reference operation amount. If does not change, it is determined whether or not the difference falls within a predetermined range, and if the difference does not fall within a predetermined range, the first operation amount estimation is used as the third operation amount estimation value. When the value is output and the difference falls within the predetermined range, it is desirable to output the third operation amount estimation value determined in the previous cycle as the latest third operation amount estimation value. .. This makes it possible to set the third manipulated variable estimated value to a more appropriate value according to the first manipulated variable estimated value and the second manipulated variable estimated value.
  • the estimation device is the above-mentioned estimation device, and the first estimation unit is based on the target amount of the controlled object at the time of estimation and the target value.
  • the permissible range of the second operation amount estimation value including the first operation amount estimation value is calculated as the determination information, and the estimated value determination unit determines the second operation amount with respect to the reference operation amount.
  • the second operation amount estimated value is output as the latest third operation amount estimated value, and when the change amount of the second operation amount estimated value falls within the allowable range, the previous time. It is desirable to output the third operation amount estimation value determined in the cycle as the latest third operation amount estimation value. This makes it possible to set the third manipulated variable estimated value to a more appropriate value according to the first manipulated variable estimated value and the second manipulated variable estimated value.
  • the estimation device is the above estimation device, and the permissible range is a range defined by the lower limit value and the upper limit value of the second manipulated variable estimation value.
  • the second manipulated variable estimated value when the second manipulated variable estimated value is smaller than the lower limit value or larger than the upper limit value, the second manipulated variable estimated value does not fall within the permissible range. It is desirable to judge that. Thereby, the change of the second manipulated variable estimated value can be appropriately determined.
  • the estimation device is the above estimation device, and the permissible range is defined as a range defined by the lower limit value and the upper limit value of the change amount of the second manipulated variable estimation value.
  • the estimated value determining unit determines the second manipulated variable. It is desirable to determine that it does not fall within the permissible range. Thereby, the change of the first manipulated variable estimated value and the second manipulated variable estimated value can be appropriately determined.
  • the estimation device is the above-mentioned estimation device, the permissible range is set as the direction of change of the second manipulated variable estimated value, and the estimated value determining unit is the above-mentioned.
  • the direction of change of the second manipulated variable estimate is different from the direction defined by the permissible range, it is desirable to determine that the second manipulated variable estimate does not fall within the permissible range. Thereby, the change of the first manipulated variable estimated value and the second manipulated variable estimated value can be appropriately determined.
  • the estimation method is a determination for determining an operation amount for aiming at a target amount which is an output of the control target, regardless of the operation history of the operator to be controlled.
  • the information is estimated, the second operation amount estimation value imitating the operation of the operator is estimated based on the operation history of the operator to be controlled, and the second operation amount estimation value is estimated based on the determination information and the second operation amount estimation value.
  • the third operation amount estimation value for aiming at the target amount of the controlled object is determined. Thereby, by using not only the first operation amount estimation value but also the second operation amount estimation value, the third operation amount estimation value can be estimated as an operation amount similar to the operation by a human.
  • the program according to the embodiment of the present invention has determination information for determining an operation amount for aiming at a target amount which is an output of the control target, regardless of the operation history of the operator to be controlled.
  • the computer is made to execute a process of determining a third operation amount estimated value for aiming at the target amount of the controlled object.
  • the third operation amount estimation value can be estimated as an operation amount similar to the operation by a human.
  • an operation amount similar to a human operation as an operation amount of an operation performed to maintain a target amount of a controlled object at a target value.
  • FIG. It is a figure which shows an example of the system configuration for realizing the estimation apparatus which concerns on Embodiment 1.
  • FIG. It is a figure which shows the outline of the machine learning in the estimation apparatus which concerns on Embodiment 1.
  • FIG. It is a figure which shows the outline of the prediction processing in the estimation apparatus which concerns on Embodiment 1.
  • FIG. It is a figure which shows typically the structure of the estimation apparatus which concerns on Embodiment 1.
  • FIG. It is a flowchart of the estimation process of the estimation apparatus which concerns on Embodiment 1.
  • FIG. It is a figure which shows the relationship between the time t for acquiring a state quantity and a target quantity, and the time t'when the operation quantity is output.
  • FIG. 1 It is a figure which shows the prediction processing in the 2nd estimation part. It is a judgment table which shows the judgment rule of the estimated value determination part. It is a figure which shows typically the structure of the 2D inverted pendulum. It is a figure which shows the fluctuation of the operation amount of a two-dimensional inverted pendulum. It is a figure which shows the example of the operation quantity estimated value at the time of controlling a two-dimensional inverted pendulum by the estimation apparatus which concerns on Embodiment 1.
  • FIG. It is a figure which shows the result of having tried the experiment of a two-dimensional inverted pendulum 10 times. It is a figure which shows the number of changes of a command value in the experiment shown in FIG.
  • FIG. It is a figure which shows typically the structure of the estimation apparatus which concerns on Embodiment 2. It is a flowchart of the estimation process of the estimation apparatus which concerns on Embodiment 2.
  • FIG. It is a figure which shows the result of having tried the experiment of a two-dimensional inverted pendulum 10 times. It is a figure which shows the number of changes of a command value in the experiment shown in FIG. It is a figure which shows the example of the operation quantity estimated value at the time of controlling a two-dimensional inverted pendulum by the estimation apparatus which concerns on Embodiment 2.
  • FIG. It is a figure which shows typically the structure of the estimation apparatus which concerns on Embodiment 3.
  • FIG. It is a flowchart of the estimation process of the estimation apparatus which concerns on Embodiment 3.
  • FIG. 1 It is a figure which shows an example of the relationship between the target quantity y (t) at time t, and the operation quantity estimated value z 1 (t') at time t'. It is a figure which shows the calculation method of the permissible range by the permissible range calculation part which concerns on Embodiment 3.
  • FIG. It is a figure which shows the result of having tried the experiment of a two-dimensional inverted pendulum 10 times. It is a figure which shows the number of changes of a command value in the experiment shown in FIG. 27. It is a figure which shows the example of the operation quantity estimated value at the time of controlling a two-dimensional inverted pendulum by the estimation apparatus which concerns on Embodiment 3.
  • FIG. 1 is a diagram showing an example of a system configuration for realizing the estimation device according to the first embodiment.
  • the estimation device 100 can be realized by a computer 10 such as a dedicated computer or a personal computer (PC).
  • the number of computers does not have to be physically single, and may be multiple when performing distributed processing.
  • the computer 10 has a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, and a GPU (Graphics Processing Unit) 21, which are buses 14. They are connected to each other via.
  • the description of the OS software for operating the computer is omitted, it is assumed that the computer that constructs this estimation device also has it.
  • the input / output interface 15 is also connected to the bus 14.
  • the input / output interface 15 includes, for example, an input unit 16 including a keyboard, a mouse, and a sensor, a display including a CRT and an LCD, an output unit 17 including headphones and speakers, and a storage unit 18 including a hard disk.
  • a communication unit 19 composed of a modem, a terminal adapter, etc. is connected.
  • the CPU 11 executes various processes according to various programs stored in the ROM 12 or various programs loaded from the storage unit 18 into the RAM 13, and in the present embodiment, for example, processes each part of the estimation device 100 described later.
  • the GPU 21 also performs various processes according to various programs stored in the ROM 12 or various programs loaded from the storage unit 18 into the RAM 13, and in the present embodiment, for example, each part of the estimation device 100 described later. Execute the process.
  • the GPU 21 is suitable for applications in which routine processing is performed in parallel, and by applying it to learning processing or the like described later, it is possible to improve the processing speed as compared with the CPU 11.
  • the RAM 13 also appropriately stores data and the like necessary for the CPU 11 and the GPU 21 to execute various processes.
  • the communication unit 19 performs communication processing via the Internet (not shown), transmits data provided by the CPU 11, and outputs data received from the communication partner to the CPU 11, RAM 13, and storage unit 18.
  • the storage unit 18 communicates with the CPU 11 and stores / erases information.
  • the communication unit 19 also performs communication processing of an analog signal or a digital signal with another device.
  • the input / output interface 15 also requires a computer program to which a drive 20 is connected as needed, and for example, a magnetic disk 20A, an optical disk 20B, a flexible disk 20C, a semiconductor memory 20D, or the like is appropriately mounted and read from them. It is installed in the storage unit 18 according to the above.
  • the estimation device 100 has a node described by an n (n is an integer of 1 or more) dimensional vector, and the information of the node is stored in a storage unit such as a RAM 13.
  • the input data is input as an n-dimensional input vector.
  • the input vector is stored in a temporary storage unit (for example, RAM 13).
  • Machine learning is applied in the control system explained below, but as a premise, the outline of machine learning will be explained.
  • the general machine learning described below is merely a prerequisite for understanding the control system described in the following embodiments, and the machine learning applied to the control system is not limited thereto.
  • Machine learning is roughly divided into supervised learning and unsupervised learning. The outline of each method will be described below.
  • supervised learning learning is performed to predict a certain variable (objective variable) from a given variable (explanatory variable). More specifically, supervised learning is a method of learning the relationship between input data and correct answer data by giving correct answer data (objective variable) to input data (explanatory variable).
  • the correct answer data is a continuous value
  • learning by regression analysis is performed.
  • the method of learning continuous data is not limited to regression analysis (for example, linear regression).
  • regression analysis by fitting the input data with various functions, it is possible to predict the output corresponding to the input data.
  • learning by classification for example, methods such as regression (logistics regression, support vector machine), tree (decision tree, random forest), neural network, clustering (k-nearest neighbor method, etc.) are used.
  • Unsupervised learning the characteristics of the input data are learned without the correct answer data being given.
  • Unsupervised learning methods include clustering represented by the k-means method and the SOINN method, dimension reduction such as the PCA method, and abnormality detection such as the T2 method of hoteling . For example, in clustering, it is possible to extract and group data that are similar and have characteristics from the input data.
  • the target system 1000 holds a state quantity X, which is a variable indicating a state, and outputs a target quantity Y. Further, the operation amount Z, which is a variable indicating the operation performed on the target system 1000 corresponding to the state amount X and the target amount Y, is input to the target system 1000.
  • the target quantity is shown as a quantification of the operating purpose of the target system 1000, and is, for example, a value acquired by a sensor provided in the target system 1000.
  • the target system 1000 operates to reach and maintain a predetermined target value or target range for this target amount.
  • the state quantity is shown as being directly or indirectly related to the target quantity, and is, for example, a value acquired by a sensor provided in the target system 1000.
  • the operation amount is, for example, an amount indicating an operation performed by the operator on the target system 1000 at the timing when the state amount or the target amount is acquired by the sensor.
  • the state amount and the target amount can be acquired as time-series data by monitoring the target system 1000, and the operation amount can be acquired as corresponding to the time-series data of the state amount.
  • the operation on the target system 1000 is performed artificially, it is not always performed, but is performed intermittently. Therefore, in the case of human operation, the operation amount has a characteristic that it fluctuates only intermittently.
  • the target system is a speed adjusting device such as a vehicle
  • the speed corresponds to the target amount
  • the intake amount, the fuel injection amount, the engine rotation speed, etc. correspond to the state amount
  • the amount of depression of the accelerator corresponds to the amount of operation.
  • the target system is a polishing machine temperature control device
  • the temperature of the polishing pad corresponds to the target amount
  • the rotation speed of the polishing device, the load of the polishing pad, etc. correspond to the state amount.
  • the degree of opening and closing of the valve attached to the pipe that supplies the heating liquid and the cooling liquid that supplies the polishing pad corresponds to the operation amount.
  • FIG. 3 shows an outline of the estimation device 100 according to the first embodiment.
  • the estimation device 100 is configured to be able to predict the operation amount z or the operation change amount ⁇ z from the output target amount y of the target system 1000, the target value y trg of the target amount, and additionally the state amount x in some cases.
  • the state quantity and the manipulated quantity consist of one or more variables, that is, they may be scalar quantities or vector quantities. This estimation is performed based on the data of the target quantity Y, the target quantity target value Y trg , the state quantity X, and the operation quantity Z obtained when the target system 1000 is in operation.
  • the machine learning described above is used when creating this estimation system.
  • the target amount target value Y trg is often a fixed value, that is, a value that does not depend on time, but it may be time-dependent.
  • the data used for learning is written in uppercase letters
  • the data used for prediction is written in lowercase letters.
  • FIG. 4 schematically shows the configuration of the estimation device 100 according to the first embodiment.
  • FIG. 5 shows a flowchart of the estimation process of the estimation device 100 according to the first embodiment.
  • the estimation device 100 includes a first estimation unit 1, a second estimation unit 2, and an estimation value determination unit 3.
  • the first estimation unit 1 is configured to refer to the target amount of the target system and estimate the operation amount required to realize the target value of the target amount of the target system.
  • the first estimation unit is configured as an estimator that estimates the manipulated variable by, for example, reinforcement learning or PID (Proportional-Integral-Differential) control.
  • PID Proportional-Integral-Differential
  • the manipulated variable may be estimated by referring to other data such as the state quantity and the manipulated variable up to the present time. good.
  • the first estimation unit 1 is necessary when performing an operation at the present time (at the time of estimation) by inputting input data such as the current target amount and the target amount target value into the algorithm prepared in advance. The amount of operation to be performed can be estimated.
  • the data used by the first estimation unit 1 for estimating the operation amount may be stored in a storage unit (for example, a storage unit 18 shown in FIG. 1) (not shown).
  • the first estimation unit 1 can read data used for estimation from the storage unit and write data such as an estimation result to the storage unit, if necessary.
  • the second estimation unit 2 is configured to perform machine learning using the target amount of the target system as an explanatory variable and the operation history by the operator as the objective variable, and estimate the operation amount that imitates the operation of the operator based on the learning result. .. If necessary, the second estimation unit 2 may use the explanatory variable as the state quantity at the time of estimation instead of the target quantity, or may use both the target quantity and the state quantity as the explanatory variables.
  • the input data used by the second estimation unit 2 for machine learning may be stored in a storage unit (for example, a storage unit 18 shown in FIG. 1) (not shown).
  • the second estimation unit 2 can read the data used for estimation from the storage unit and write the data such as the estimation result to the storage unit, if necessary.
  • the estimated value determination unit 3 includes a first manipulated variable estimated value z 1 (t) estimated by the first estimation unit 1 and a second manipulated variable estimated value z 2 (t) estimated by the second estimation unit 2. , The third manipulated variable estimated value z 0 (t) is output.
  • the data used by the estimated value determination unit 3 for determination may be stored in a storage unit (for example, a storage unit 18 shown in FIG. 1) (not shown).
  • the estimated value determination unit 3 can read the data used for the determination from the storage unit and write the determination result and the like to the storage unit, if necessary.
  • the learning and estimation of the estimation device 100 will be specifically described.
  • the time and data in the input data used in learning are shown in uppercase letters, and the time and data used in prediction are shown in lowercase letters.
  • the first estimation unit 1 estimates the first operation amount estimation value z1 for realizing the target value of the target amount without using the operation history by the operator as the correct answer (step S11 in FIG. 5). At this time, the first estimation unit 1 estimates an appropriate operation amount at the current time, for example, based on the information up to the current time. However, in reality, as shown in FIG. 6, the time for acquiring the state quantity and the target quantity and the time for outputting the manipulated variable do not become the same time, and a predetermined time lag occurs.
  • the first estimation unit 1 may estimate an appropriate operation amount at a future time in advance based on the information up to the current time. Also in this case, as shown in FIG. 6, a predetermined time lag occurs between the time for acquiring the state quantity and the target quantity and the time for outputting the manipulated variable.
  • the time for acquiring the state quantity and the target quantity is described as t
  • the time for outputting the manipulated variable is described as t'. That is, the time t'is a time advanced by a predetermined time lag from the time t. It was
  • the first estimation unit 1 estimates the operation amount for realizing the target value of the target amount from the target amount at time t.
  • the manipulated variable z 1 (t'at the time t'in the future from the time t from the target quantity y (t) at the time t and the target value y trg . ) Can be estimated.
  • the target amount target value y trg is a fixed value, but it may be in the form of y trg (t) as it has a time dependence.
  • the function f sets the manipulated variable z 1 (t') at time t'when the difference between the target quantity y (t) at time t and the target value y trg is greater than or equal to a predetermined value. It may be in the form of a judgment condition such as "to make a value", or it may be a continuous function. In other words, f can be set based on general knowledge.
  • FIG. 7 shows a case where the relationship between the target quantity y (t) at time t and the manipulated variable z 1 (t') to be operated at time t'is a linear linear function.
  • the manipulated variable z 1 (t') at time t' can be obtained by specifying the target quantity y (t).
  • the manipulated variable z trg when the target quantity is y trg means the manipulated variable to be output when the target quantity reaches the target value.
  • the state quantity it becomes possible to perform an operation corresponding to the change in the target quantity prior to the change in the target quantity, and in some cases, it becomes possible to perform an operation corresponding to an important event that is not directly related to the target quantity.
  • the operation amount it is possible to prevent duplicate operations when the operations are already performed according to the situation.
  • Equation [2] shows the estimation by the first estimation unit 1 when PID control is used.
  • k p , k I , and k D are parameters for PID control.
  • the parameter setting of PID control may be set by finding an appropriate value by trial and error, or the parameter may be systematically designed using a mathematical model to be controlled.
  • the target quantity at the future time t + t f is estimated, and the target value of the target quantity is realized from the target quantity at the estimated time t + t f . May be preferable to estimate.
  • t f can be analyzed according to each task and an appropriate value can be set.
  • the first estimation unit 1 when the estimation target quantity of time t + t f is used in the equation [3] is shown.
  • the function f a function as described in the equation [1] or the equation [2] can be used.
  • the target quantity y (t + t f ) at the future time t + t f needs to be estimated and obtained.
  • the input data IN i used in the learning process is composed of an explanatory variable E i and an objective variable P i as described by the equation [4].
  • the objective variable E i is a state quantity X, an operation quantity Z, and a target quantity Y in a predetermined time width from a certain time Ti to a time Ti ⁇ T p (T p ⁇ 0 ).
  • the objective variable P i is composed of the objective quantity of the future time Ti + T f (Tf> 0) as described in the equation [6].
  • T f Tf> 0
  • the subscript i is added as a sample thereof. For example, when there are N input data (N is an integer of 1 or more), i is an integer of 1 or more and N or less.
  • the learning model is in the form of a function as shown in equation [7].
  • M is a learning model, and various models can be applied. It may be used properly according to the characteristics of the target quantity such as linear regression, logistic regression, random forest, support vector machine, neural network, self-organizing neural network (SOINN: Self-Organizing Incremental Neural Network), and the like.
  • P ⁇ is an estimated value of the objective variable derived from the model.
  • the estimated value P ⁇ obtained when E of the input data IN is input to the equation [7] is compared with the objective variable P, and the parameters of the learning model M are optimized so as to minimize the error and cost. ..
  • neurons nodes
  • the objective variable Pi corresponding to various explanatory variables E i can be output.
  • the model is optimized, and the target quantity y (t + t f ) at the future time t + t f can be estimated as in the equation [8].
  • the relationship between the estimated target quantity y (t + t f ) at the time t + t f and the manipulated variable z (t) at the time t is defined. It is also possible to acquire the manipulated variable z 1 (t') at time t'so that the estimated target value y (t + t f ) at t + t f is the target value.
  • the target quantity target value y trg is substituted into the estimated target quantity y (t + t f ) at the time t + t f in the equation [8], and the explanatory variables other than the manipulated variable z (t) at the time t are input. Then, by substituting the operation amount z (t) at the time t with the operation amount z 1 (t') at the time t'and solving it, the operation amount z 1 (t') at the time (t') can be obtained. You can ask.
  • the manipulated variable z 1 (t') at the time (t') thus obtained is expressed by the equation [9].
  • the value of the formula [9] may be used instead of the formula [3].
  • the first estimation unit 1 may estimate the operation amount by learning the operation by so-called reinforcement learning, in which a reward is given when the target amount is in the optimum range and no reward is given otherwise. ..
  • reinforcement learning there is, for example, Q-learning.
  • Q-learning a value Q is set for each action in each state, and the action is determined so as to take a high-value action.
  • the value Q is updated by executing the action many times, and is updated to the appropriate value action value function Q.
  • the update formula of the action value function in Q-learning is expressed by the following formula [10].
  • t n is the acquisition timing of the next target quantity and state quantity at time t. More specifically, at a timing when the target amount acquired at a certain time t and the operation amount based on the state amount are output at time t'and the influence of the operation based on the output operation amount is reflected in the state. The next target quantity and state quantity will be acquired.
  • the action value function Q is determined, and the operation can be estimated as in the equation [11].
  • the estimated amount of the first estimation unit 1 is assumed to be the manipulated variable, but the change amount of the manipulated variable may be estimated as needed.
  • the change amount of the operation can be defined as the difference between the operation amount output at a certain time and the operation amount output before that time. This may be effective when the change in the operation amount directly affects the target amount.
  • the input data used in the learning process in the second estimation unit 2 is composed of an explanatory variable E i and an objective variable Pi as described in the equation [4].
  • the objective variable E i consists of the objective quantity Y in a predetermined time width from a certain time Ti to the time Ti ⁇ T p2 (T p2 ⁇ 0), and the objective variable P i is.
  • it consists of the operation amount Z at the time Ti + T q (T q ⁇ 0 ).
  • the operation performed by the operator as a reaction to the state quantity Y causes a time lag in the thinking time, the operation time, and the like.
  • T q is determined in consideration of the time lag.
  • the operation amount in the next step (that is, the next state quantity acquisition time) Ti + 1 at the time Ti is set to Z ( Ti + 1 ) as shown in the equation [14].
  • the explanatory variables may be changed to the state quantity X or the past manipulated variable Z, or the state quantity X or the past manipulated variable Z may be added to the explanatory variables.
  • the target amount target value y trg may be added as an explanatory variable.
  • the learning model is in the form of a function as shown in equation [7], as described above.
  • M is a learning model and various models can be applied. It may be used properly according to the characteristics of the target amount such as linear regression, logistic regression, random forest, support vector machine, neural network, self-organizing neural network (SOINN: Self-Organizing Incremental Neural Network), and the like.
  • P ⁇ is an estimated value of the objective variable derived from the model.
  • the estimated value P ⁇ obtained when the input data IN is input to the equation [7] is compared with the correct value P, and the parameters of the learning model M are optimized so as to minimize the error and cost.
  • neurons nodes
  • the objective variable Pi corresponding to various explanatory variables E i can be output.
  • FIG. 10 shows an image of the machine learning result of the second estimation unit 2.
  • the operator performs an operation in order to suppress the increase of the state quantity X.
  • the operator performs an operation when the state quantity X reaches the value X a at the time Ta , so that the manipulated variable Z changes from the value Z a to the value Z b .
  • the state quantity X starts to decrease due to the operation, and when the value X a is reached at the time T b , the operator performs an operation to change the manipulated variable from the value Z b to the value Z a .
  • the relationship between the state quantity X and the manipulated variable Z can be learned as shown in FIG.
  • FIG. 11 shows the prediction processing in the second estimation unit 2.
  • the second estimation unit 2 has learned the target quantity y in a predetermined time width from the time of estimation (also referred to as the current time) t to the time tt p2 (t p2 ⁇ 0) by machine learning.
  • the operation amount in the next step at the current time t is estimated (step S12 in FIG. 5).
  • the learning processing unit in order to consider the time lag of human operation, the operation amount in the next step of the current time t is estimated, but in reality, the operation responds to the state of the current time. Therefore, there is no problem even if it is considered that the operation should be performed at the current time.
  • this estimated value is set as the second manipulated variable estimated value z 2 (t') at time t'by the second estimation unit 2.
  • the second manipulated variable estimated value z 2 (t') is expressed by the function h as in the following equation [16].
  • the estimated amount of the second estimation unit 2 has been described as the manipulated variable, but the change amount of the manipulated variable may be estimated.
  • the second estimation unit 2 may estimate only the direction of the operation. Specifically, it may be an estimator that estimates the direction of operations such as increasing or decreasing the operation amount. As will be described later, what is required of the second estimation unit 2 is an estimator that can estimate the operation amount in consideration of the time lag before the output of the operation amount, such as an operation performed by a human. To create an estimator that outputs the directionality, in the objective variable Pi described in the equation [13], for example, input the raising operation as 0 and the lowering operation as 1, and perform machine learning as a classification problem. Just do it.
  • the first estimation unit 1 and the second estimation unit 2 sequentially execute the operation amount estimation process described above at predetermined timings, for example, in minutes. Then, the first manipulated variable estimated value z 1 (t') and the second manipulated variable estimated value z 2 (t') obtained sequentially are, for example, a storage unit (for example, a storage unit 18 shown in FIG. 1) (not shown). Etc.).
  • the first manipulated variable estimated value in the present embodiment is used as determination information for verifying the validity of the manipulated variable.
  • the first manipulated variable estimation value itself is used as a comparison target in a predetermined determination range.
  • Step S13 in FIG. 5 determines whether the first manipulated variable estimated value z 1 (t') has changed significantly (step S13 in FIG. 5) or the second manipulated variable estimated value z 2 (t') is significant. (Step S14 in FIG. 5) is determined.
  • the determination of whether or not the operation amount has changed is performed by comparing the operation amount and the information based on the operation amount with the determination range and determining whether or not the operation amount falls within the determination range.
  • the estimated value determination unit 3 sets the first manipulated variable estimated value z 1 (t') and the second manipulated variable estimated value z 2 (t') at the time t'as the manipulated variable at the current time (t). That is, it can be determined whether or not these estimated values are significantly changed by comparing with the determination range). Further, for example, when the first operation amount estimation value and the second operation amount estimation value estimate the operation change amount, the estimated value determination unit 3 has an absolute value and a predetermined value (that is, a determination range). It can be determined by comparison whether the change is significant.
  • the estimation value determination unit 3 determines whether or not the direction is continuously estimated for a predetermined time and the direction (the direction). That is, it can be determined that the probability of the determination range) is significantly changed by the determination such as a predetermined value or more.
  • Case 1 is a case where the first manipulated variable estimated value z 1 and the second manipulated variable estimated value z 2 change significantly. That is, in this case, both the first estimation unit 1 that estimates without being based on the operation history of the operator and the second estimation unit 2 that performs estimation based on the operation history of the operator change the operation amount. I have decided that it should be done. Therefore, it is considered appropriate to change the operation amount.
  • the first operation amount estimated value z 1 is the operation amount for realizing the target quantity target value
  • the second operation amount estimated value z 2 is the operation amount based on the operation history of the operator.
  • the estimated value determination unit 3 outputs the first manipulated variable estimated value z 1 as the third manipulated variable estimated value z 0 (step S15 in FIG. 5).
  • the manipulated variable estimate changes significantly when the absolute value of the change amount of the manipulated variable is larger than a predetermined threshold value. .. Specifically, when the absolute value of the change amount of the first manipulated variable estimated value z 1 is larger than the threshold value TH 1 (however, the threshold value TH 1 is a positive value), the manipulated variable estimated value z 1 changes significantly. It is judged as a thing. Further, when the absolute value of the change amount of the second manipulated variable estimated value z 2 is larger than the threshold value TH2 (however, the threshold value TH2 is a positive value), it is determined that the manipulated variable estimated value z2 changes significantly. Will be done.
  • a determination range for the amount of change in the estimated manipulated variable may be provided, and when the amount of change in the estimated manipulated variable deviates from the determination range, it may be determined that the amount changes significantly. Specifically, when the amount of change in the first manipulated variable estimated value z 1 does not fall within the determination range VL1 to VH1, in other words, when it is smaller than the value VL1 or larger than the value VH1, it changes significantly. It is judged as to be done.
  • the value VL1 and the value VH1 may be positive or negative, but when the value VH1 is larger than the value VL1 and the value VL1 is a negative value, the value VH1 is positive. It is desirable to be a value.
  • the value VL2 and the value VH2 may be a positive value or a negative value, but when the value VH2 is a value larger than the value VL2 and the value VL2 is a negative value, the value VH2 Is preferably a positive value.
  • the estimated value determining unit 3 assumes that it is not necessary to change the third manipulated variable estimated value z 0 , and determines the target quantity estimated in the previous estimation process as it is. Maintain (step S16 in FIG. 5). The reason will be described below.
  • Case 2 is a case where the first manipulated variable estimated value z 1 does not change significantly and the second manipulated variable estimated value z 2 changes significantly. That is, the first estimation unit 1 that estimates without being based on the operation history of the operator determines that the target amount can be set as the target value without changing the operation amount, whereas the operation history of the operator. The second estimation unit 2 that performs estimation based on the above selects to change the operation amount. In this case, the operation based on the operation history of the operator may not contribute to the realization of the target amount target value, and it can be considered that it is not necessary to change the operation amount. Therefore, the estimated value determination unit 3 maintains the target quantity estimation determined in the previous estimation process as it is, assuming that it is not necessary to change the third manipulated variable estimated value z 0 .
  • Case 3 is a case where the first manipulated variable estimated value z 1 changes significantly and the second manipulated variable estimated value z 2 does not change significantly. That is, the first estimation unit 1 that estimates without being based on the operation history of the operator determines that the operation amount should be changed in order to set the target amount as the target value, whereas the operation history of the operator is used. The second estimation unit 2 that performs the estimation based on the determination determines that it is not necessary to change the operation amount. In this case, the estimation of the first estimation unit 1 may deviate from the experience and sensation of the operator, and based on the experience and sensation of the operator, the target amount target value can be realized without performing an operation. It can be considered possible.
  • the estimation device 100 aims to estimate the amount of operation that is close to the operation by a human, operations that may deviate from the experience and sensation of a person and operations that do not need to be performed should be suppressed. I can think of it. Therefore, the estimated value determination unit 3 maintains the target quantity estimation determined in the previous estimation process as it is, assuming that it is not necessary to change the third manipulated variable estimated value z 0 .
  • Case 4 is a case where both the first manipulated variable estimated value z 1 and the second manipulated variable estimated value z 2 do not change significantly. That is, both the first estimation unit 1 and the second estimation unit 2 have determined that it is not necessary to change the operation amount. Therefore, the estimated value determination unit 3 maintains the target quantity estimation determined in the previous estimation process as it is, assuming that it is not necessary to change the third manipulated variable estimated value z 0 .
  • the operation amount is changed only when the estimation based on the operation history of the operator and the estimation based on the operation history of the person match or are close to each other. In other cases, the amount of operation can be maintained. This makes it possible to realize a control state close to the experience and feeling of the operator when controlling the target system.
  • FIG. 13 schematically shows the configuration of a two-dimensional inverted pendulum.
  • the rod 32 stands upright on the operation table 31.
  • the operation table 31 can be moved left and right.
  • the rod 32 is rotatably held in the left-right direction around the contact portion with the operation table 31, in other words, around the axis in the normal direction of the paper surface of FIG. 13 passing through the contact portion.
  • the operation table 31 has a predetermined force (that is, acceleration) to the right.
  • the operation of moving to the left is the same.
  • the target amount is the angle of the rod 32 with respect to the upper surface of the operation table 31.
  • the state quantity is the position of the operating table 31, the speed of the operating table 31, and the angular velocity of the rod.
  • the target value is that the rod 32 is in an upright state, for example, the rotation angle is 0 °.
  • FIG. 14 shows fluctuations in the amount of operation of the two-dimensional inverted pendulum.
  • a general control method such as PID control in the upper stage
  • agile control is continuously performed in order to stabilize the position of the rod 32, and the operation amount (that is, the first operation amount estimation value z 1 ) is frequent. It fluctuates to.
  • the operation amount is longer than that of the general control method, in other words, the operation amount is sparser (that is, the second operation amount estimation value z 2 ). Changes. That is, it is easy to understand that the two control methods are completely different.
  • FIG. 15 shows an example of an operation amount estimated value when the two-dimensional inverted pendulum is controlled by the estimation device 100 according to the first embodiment. It can be seen that the operation is performed in a longer time span than the general control method, as in the case of manual control.
  • FIG. 16 shows the results of 10 trials of a two-dimensional inverted pendulum experiment.
  • FIG. 17 shows the number of changes in the command value in the experiment shown in FIG. One trial is 10 seconds, and if the stick is not tilted for 10 seconds, it is displayed as ⁇ , and if it is tilted, it is displayed as ⁇ .
  • PID control is compared with Comparative Example 1 (that is, control using only the first estimation unit), and control by imitation learning that imitates a human operation is compared with Comparative Example 2 (that is, the second). It is displayed as control using only the estimation unit).
  • Comparative Example 2 the number of operation changes is small. This indicates that the control is similar to that shown in FIG. 14 because it imitates a human operation. However, there are cases where the rod is knocked down and proper operation is not performed.
  • the control is successful without the rod falling in all the trials, and the number of times the command value is changed (the number of operations) is also Comparative Example 2.
  • the output is suitable for human operation. This is done while suppressing the number of operations by changing the operation only when the output result of the first operation amount estimated value z 1 and the output result of the second operation amount estimated value z 2 match or approximate. This is also considered to be because a suitable amount of operation can be output.
  • Embodiment 2 The estimation device according to the second embodiment will be described.
  • the estimation device 200 according to the second embodiment is configured as a modification of the estimation device 100 according to the first embodiment.
  • the manipulated variable estimates to be output are determined based on whether or not the two manipulated variable estimates change significantly.
  • estimation based only on significant changes is not sufficient to achieve the target value. For example, if the operator is not skilled in operation, a situation may occur in which the operator is left unattended without appropriate operation change for realizing the target amount target value. If the second estimation unit learns the operation history of such an operator, the estimation device 100 according to the first embodiment may not be able to output an appropriate operation amount. Therefore, in the present embodiment, in the case of Case 3, a estimation device that performs more detailed estimation will be described.
  • FIG. 18 schematically shows the configuration of the estimation device 200 according to the second embodiment.
  • FIG. 19 shows a flowchart of the estimation process of the estimation device 200 according to the second embodiment.
  • the estimation device 200 has a configuration in which the first estimation unit 1 and the estimation value determination unit 3 of the estimation device 100 according to the first embodiment are replaced with the first estimation unit 4 and the estimation value determination unit 5, respectively. Note that steps S21 and S23 to S25 in FIG. 19 are the same as steps S11 to S14 in FIG. 5, respectively.
  • the configuration and operation will be described focusing on the differences from the estimation device 100 according to the first embodiment.
  • the first estimation unit 4 refers to the target amount of the target system and estimates the operation amount required to realize the target value of the target amount of the target system. In addition, it has a difference calculation unit 4B.
  • the difference calculation unit 4B obtains the difference ⁇ y between the target quantity y (t) at the time t and the target quantity target value y trg . (Step S22 in FIG. 19).
  • the target amount target value y trg is a fixed value and the difference is obtained, but it may be time-dependent. In that case, the difference may be calculated according to the time of the target amount to be compared.
  • the difference calculation unit 4B is a part of the first estimation unit 4, it may exist as a part different from the first estimation unit 4.
  • the case 3 is a case where the first manipulated variable estimated value z 1 is significantly changed and the second manipulated variable estimated value z 2 is not significantly changed.
  • the determination unit 3 has been described as maintaining the third manipulated variable estimated value z 0 as the previously determined value.
  • the difference ⁇ y calculated by the difference calculation unit 4B has a certain large value, it can be considered that the target quantity target value y trg may not be realized unless the operation amount is changed. That is, there is a possibility that the estimation of the second estimation unit 2 based on the operation history of the operator is an inappropriate result.
  • the estimated value determining unit 5 determines whether the absolute value of the difference ⁇ y of the target amount is larger than the predetermined threshold value th (step S27 in FIG. 19).
  • the estimated value determination unit 5 has the first manipulated variable estimated value z 1 regardless of the estimation result of the second estimation unit 2. Is determined to be an appropriate estimated value, and the first manipulated variable estimated value z 1 is output as the third manipulated variable estimated value z 0 , as in the case of Case 1 (step S26 in FIG. 19).
  • the estimated value determining unit 5 When the absolute value of the difference ⁇ y of the target amount is equal to or less than the predetermined threshold value th or less, the estimated value determining unit 5 previously determines the third manipulated amount estimated value z0 , as in the case 2 in the first embodiment. The value is maintained at the same value (step S28 in FIG. 19).
  • FIG. 20 shows the results of 10 trials of a two-dimensional inverted pendulum experiment.
  • FIG. 21 shows the number of changes in the command value in the experiment shown in FIG. Similar to the first embodiment, one trial is set to 10 seconds, and if the rod does not fall for 10 seconds, ⁇ is displayed, and if the rod falls within 10 seconds, ⁇ is displayed.
  • the control by imitation learning that imitates the operation of an unskilled person is displayed as the comparative example 3 (that is, the control of only the second estimation unit 2).
  • Comparative Example 4 the case of being controlled by the estimation device 100 according to the first embodiment is displayed as Comparative Example 4. Similar to Comparative Example 3, the second estimation unit 2 in Comparative Example 4 and the second embodiment is an estimator by imitation learning that imitates the operation of an unskilled person.
  • Comparative Example 3 has a considerably small number of operation changes, and is also smaller than Comparative Example 2 (Embodiment 1). It can be assumed that this is because the operation history of an unskilled operator was learned, so that a situation occurred in which the operation was left unattended without appropriate operation change for realizing the target amount target value. In fact, there is a situation where the stick is knocked down at the frequency of arrival, and it is not considered to be an appropriate operation. Comparative Example 4 has better results than Comparative Example 3, but for the same reason, a situation occurred in which the rod was knocked down.
  • the inverted pendulum is successfully controlled without the rod falling in all the trials.
  • the number of operations in the estimation device 200 according to the second embodiment shown in FIG. 21 is also the same as that of Table 2 and Comparative Example 2 of the first embodiment, although the number of operations is larger than that of Comparative Example 3 and Comparative Example 4. It can be assumed that it is close to human operation.
  • FIG. 22 shows an example of an operation amount estimation value when the two-dimensional inverted pendulum is controlled by the estimation device 200 according to the second embodiment. As can be seen from FIG. 22, it is similar to the manual control method shown in FIG. 14, and it can be understood that the operation similar to the manual operation is realized.
  • Embodiment 3 The estimation device according to the third embodiment will be described.
  • the estimation device 300 according to the third embodiment is a modification of the estimation device 100 according to the first embodiment, and is a function for verifying the validity of the second operation amount estimation value z2 output by the second estimation unit 2. Is configured to have.
  • FIG. 23 schematically shows the configuration of the estimation device 300 according to the third embodiment.
  • FIG. 24 shows a flowchart of the estimation process of the estimation device 300 according to the third embodiment.
  • the estimation device 300 has a configuration in which the first estimation unit 1 and the estimation value determination unit 3 of the estimation device 100 according to the first embodiment are replaced with the first estimation unit 6 and the estimation value determination unit 7, respectively.
  • steps S32, S34 and S36 in FIG. 16 are the same as steps S12, S14 and S16 in FIG. 5, respectively.
  • the configuration and operation will be described focusing on the differences from the estimation device 100 according to the first embodiment.
  • the operation changes only in the case 1 in which the first manipulated variable estimated value z 1 and the second manipulated variable estimated value z 2 change significantly, and the estimated value determining unit 3 determines the estimated value.
  • the first manipulated variable estimated value z 1 was output as the third manipulated variable estimated value z 0 .
  • the third manipulated variable estimated value z 0 is based on the comparison with the permissible range output by the first estimation unit. Is output. In the present embodiment, this permissible range is used as the second manipulated variable estimated value z 2 or the determination information for which information is compared based on the second manipulated variable estimated value z 2.
  • the second operation amount estimated value z 2 is estimated based on the operation history of the operator, it can be assumed that the estimation result is not always appropriate. Therefore, in the following, a configuration will be described in which it is verified whether or not the second manipulated variable estimated value z 2 is an appropriate value, and the third manipulated variable estimated value z 0 is output based on the verification result. ..
  • the first estimation unit 6 has a permissible range calculation unit 6A.
  • the permissible range calculation unit 6A refers to the target amount of the target system, etc., determines the permissible range AR of the operation allowed to maintain the target value of the target amount of the target system, and outputs it (FIG. 24). Step S31).
  • the permissible range AR may be in the form of a judgment condition such as "when the difference between y and y trg becomes a predetermined value or more, the manipulated variable range is a or more and b or less", or the continuous y indicating the upper and lower limits. It may be an operation amount range sandwiched between a plurality of functions. Further, the allowable range AR may be defined as a change amount of the operation amount, or may be defined as an operation direction such as "an operation for increasing the operation amount”.
  • determination conditions and functions may be set by various methods such as general knowledge and PID control as described for the first estimation unit 1 according to the first embodiment, or may be set by combining them. May be good.
  • the operation range corresponding to the target amount target range is calculated from the correlation between the target amount and the operation, and the allowable range AR is calculated. It is also possible to.
  • equations [1], [2], and [9] can be used for the correlation between the target amount and the operation.
  • the allowable range AR including the first manipulated variable estimated value z 1 is determined and output. good.
  • the permissible range AR may be, for example, a predetermined range having the first manipulated variable estimated value z 1 as the median, or the first manipulated variable estimated value at an arbitrary position between the lower limit value and the upper limit value. It may be a range including z 1 .
  • a storage unit for example, a storage unit 18 shown in FIG. 1 (not shown).
  • the permissible range calculation unit 6A can read the data to be used from the storage unit and write the calculated data such as the permissible range AR to the storage unit, if necessary.
  • the estimated value determination unit 7 receives the allowable range AR from the first estimation unit 6, and receives the second manipulated variable estimated value z 2 (estimated in step S32 in FIG. 24) from the second estimation unit 2. Then, the estimated value determination unit 7 determines whether or not the second manipulated variable estimated value has changed significantly. (Step S33 in FIG. 24).
  • the second manipulated variable estimated value z 2 When it is determined that the second manipulated variable estimated value z 2 is significantly changed, it is determined whether the operation based on the second manipulated variable estimated value z 2 satisfies the determination criterion (step S34 in FIG. 16). ). Specifically, when the determination criterion is given as the allowable range defined as the range of the manipulated variable, the second manipulated variable estimated value z 2 is larger than the lower limit value of the allowable range and larger than the upper limit value. Determine if it is small. When the criterion is given as the permissible range defined by the range of change in the manipulated variable, the amount of change in the operation by the second estimated manipulated variable z 2 (that is, the difference from the current manipulated variable) is permissible.
  • the range is larger than the lower limit and smaller than the upper limit.
  • the criterion is defined by the directionality of the manipulated variable (ie, whether it is a positive value or a negative value)
  • the change in the manipulated variable due to the second operation estimated value z2 that is, the current value. It is determined whether or not the directionality of (difference from the operation value) matches the directionality of the criterion.
  • the change amount of the manipulated variable may be estimated as needed. Even in this case, it is sufficient to determine whether the estimated change in the manipulated variable satisfies the determination criteria. Specifically, when the judgment criterion is given as the allowable range defined as the range of the manipulated variable, the value obtained by adding the amount of change in the estimated manipulated variable to the manipulated variable at the time of estimation is the lower limit of the allowable range. It is determined whether it is larger than or smaller than the upper limit.
  • the judgment criterion is given as an allowable range defined by the range of change in the manipulated variable, it is determined whether the estimated change in the manipulated variable is larger than the lower limit of the allowable range and smaller than the upper limit. do.
  • the criterion is defined by the direction of change in the manipulated variable (that is, whether it is a positive value or a negative value)
  • the directionality of the estimated change in the manipulated variable is the directionality of the allowable range AR. To determine if it matches.
  • the direction of change in the manipulated variable may be estimated. Specifically, it is estimated whether the operation is an operation of increasing the operation amount (positive direction) or an operation of decreasing the operation amount (minus direction). In this case as well, it may be determined whether the directionality of the estimated change in the manipulated variable satisfies the determination criteria. Specifically, it may be determined whether the direction of change in the estimated manipulated variable is closer to the permissible range under the condition that the determination criterion is given as the permissible range defined as the range of the manipulated variable. .. Further, it may be determined whether the direction of the estimated change in the manipulated variable is close to the center value of the allowable range.
  • the criterion is given as an allowable range defined by the range of change in the manipulated variable, or when the criterion is the direction of change in the manipulated variable (ie, whether it is a positive value or a negative value). If specified, it is determined whether the estimated change direction of the manipulated variable matches the direction of the specified allowable range or the specified change direction of the manipulated variable.
  • the current operation value may be added to the determination. That is, when the current operation value is already within the allowable range AR, it is determined that the operation based on the second operation amount estimated value z 2 does not satisfy the judgment criteria, and the operation is maintained as the previous operation. It may be determined to. This makes it possible to exclude operations that may be considered unnecessary.
  • the estimated value determination unit 7 approximates the estimation not based on the operator's operation history and the estimation based on the operator's operation history to an acceptable extent. Therefore, it is determined that the second operation amount estimated value z 2 is an appropriate operation. In this case, the estimated value determination unit 7 outputs a value based on the second manipulated variable estimated value z 2 as the third manipulated variable estimated value z 0 (step S35 in FIG. 24).
  • the second manipulated variable estimated value z 2 is output as the third manipulated variable estimated value z 0 .
  • the second manipulated variable estimated value z 2 is estimated as the manipulated variable change, the sum of the current manipulated variable and the estimated variable is set as the third manipulated variable z 0 .
  • Output When the second manipulated variable estimated value z 2 is estimated as the direction of the operation, an arbitrary value within the permissible range AR is output as the third manipulated variable estimated value z 0 .
  • these are examples of the case of outputting as an operation amount estimated value, and may be output according to the format (operation change amount, directionality, etc.) required for output as appropriate.
  • the estimated value determining unit 7 uses the second manipulated variable estimated value z 2 estimated based on the operation history of the operator. It is judged that the value deviates to an unacceptable degree from the first estimated operation amount z 1 estimated regardless of the operation history of the operator, and is an inappropriate value. In this case, the estimated value determination unit 7 does not determine the third manipulated variable estimated value z 0 based on the second manipulated variable estimated value z 2 , but instead determines the third manipulated variable estimated value z. 0 is maintained at the value at the previous estimation (step S36 in FIG. 24). This allows you to rule out inappropriate operations.
  • a predetermined value within the permissible range AR may be output as the third manipulated variable estimated value z 0 .
  • appropriate operations within the permissible range are performed without increasing the frequency of operations, which is useful for achieving the target value of the target amount.
  • the third manipulated variable estimated value z0 is set to the previous time based on the determination result. It may be determined whether to keep the value estimated in the above or to output a predetermined value in the allowable range AR as the third manipulated variable estimated value z 0 .
  • FIG. 26 shows a method of calculating the allowable range AR by the allowable range calculation unit 6A according to the present embodiment.
  • the range of operation is specified based on the absolute value v of the speed of the operation table and the angle deg p . It should be noted that the velocity v and the angle deg p at a predetermined future time may be predicted and calculated.
  • FIG. 27 shows the results of 10 trials of a two-dimensional inverted pendulum experiment.
  • FIG. 28 shows the number of changes in the command value in the experiment shown in FIG. 27. Similar to the first embodiment, one trial is set to 10 seconds, and if the rod does not fall for 10 seconds, ⁇ is displayed, and if the rod falls within 10 seconds, ⁇ is displayed.
  • control is successful without the rod falling in all trials, and the number of times the command value is changed. (Number of operations) is also about the same as that of the first embodiment, and as shown in FIG. 29, it can be understood that the output is suitable for human operation. This is an operation like a human operation by changing the operation so that the output of the second operation amount estimated value z 2 falls within the allowable range AR of the estimation operation calculated by the first estimation unit 6. It is considered that this is because a suitable amount of operation can be output.
  • the third operation amount is not included in the AR.
  • the present invention is not limited to the above embodiments, and can be appropriately modified without departing from the spirit.
  • the magnitude determination of the two values has been described, but this is merely an example, and the case where the two values are equal in the magnitude determination of the two values may be handled as necessary. good. That is, the determination of whether the first value is greater than or equal to the second value or less than the second value, and whether the first value is greater than or less than the second value or less than or equal to the second value. As for the determination of, any of them may be adopted as necessary.
  • Determining whether the first value is less than or equal to the second value or greater than the second value, and whether the first value is less than the second value or greater than or equal to the second value Any of these may be adopted. In other words, when the magnitude of two values is determined to obtain two determination results, the case where the two values are equal may be included in any of the two determination results as necessary.
  • Non-temporary computer-readable media include various types of tangible storage media (tangible studio media). Examples of non-temporary computer-readable media include magnetic recording media (eg, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (eg, magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, etc.
  • the program may also be supplied to the computer by various types of temporary computer-readable media.
  • temporary computer readable media include electrical, optical, and electromagnetic waves.
  • the temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Feedback Control In General (AREA)

Abstract

制御対象の目的量を狙い値に維持するめに行われる操作の操作量として、人による操作に近似した操作量を推定する。第1推定部(1)は、制御対象のオペレータの操作履歴によらずに、制御対象の出力である目的量(y)を将来の時点で狙い値(ytrg)とするため操作量である第1の操作量推定値(z1)を推定する。第2推定部(2)は、制御対象のオペレータの操作履歴に基づいて、オペレータの操作を模倣した第2の操作量推定値(z2)を推定する。推定値決定部(3)は、第1の操作量推定値(z1)及び第2の操作量推定値(z2)に基づいて、制御対象の目的量(y)を狙い値(ytrg)とするための第3の操作量推定値(z0)を決定する。

Description

推定装置、推定方法及びプログラムが格納された非一時的なコンピュータ可読媒体
 本発明は、推定装置、推定方法及びプログラムに関する。
 様々な装置やシステムを制御するために、例えば、PID制御や強化学習といった様々な制御方式が用いられている。こうした様々な制御方式を用いて、装置又はシステムの制御対象量である目的量を狙い値に制御するために、例えばバルブの開閉量などの操作量を自動的に制御することが広く行われている。
 例えば、研磨装置において、研磨パッドの温度を目標温度とするために、研磨パッドへ供給する加熱液及び冷却液を供給する管に取り付けられたバルブの操作量をPID制御する手法が提案されている(特許文献1)。この手法では、研磨パッドの表面温度を測定し、測定値と目標温度との差に基づいて、加熱液の流量調整バルブの操作量及び冷却液第2流量調整バルブの操作量をPID制御している。これにより、研磨ユニット間の研磨性能のばらつきを抑制することが可能となる。
 また、制御対象に対する操作量を出力して、制御対象の制御量を目標値に追従させる制御装置において、強化学習を導入する手法が提案されている(特許文献2)。目標値の時系列である目標値時系列と、目標値を先読みする時間幅を示す先読み長とが入力されると、目標値の時系列に含まれる複数の目標値のうち、目標値を先読みする時間幅を示す先読み長の後の目標値を示す先読み目標値が取得される。そして、先読み目標値と制御対象の現在の制御量との差である、先読み目標偏差が算出される。次いで、制御対象の応答モデルと、現在に至るまでの過去の操作量の変化量とに基づいて、先読み目標偏差を、制御量の先読み長後における予測値と先読み目標値との差へと補正した補正目標偏差が算出される。算出した補正目標偏差に基づいて、強化学習によって、新たな操作量を学習及び算出する。これにより、制御対象の制御特性を担保しつつ、深層強化学習による柔軟な制御が実現される。
特開2020-109839号公報 特開2020-95352号公報
 上述のようなPID制御や強化学習といった自動的制御方式では、一般に、制御対象量、すなわち目的量を狙い値に安定させるため、継続的かつ機敏な制御が行われる。その結果、操作量が頻繁に変動する傾向がある。しかし、装置やシステムの制御においては、全自動制御だけでなく、人(例:オペレータ)が行う操作、例えば自動車の自動運転などをアシストするために、こうした自動的制御方式が用いられることが有る。このような場合には、いかなる操作を行うかを最終的に判断するのは人であるので、人が装置やシステムの挙動を把握して制御しやすいようにするため、自動的制御によって行われる操作は、人が行う操作と近似していることが望ましい。
 しかし、上述したように、PID制御や強化学習などの自動的制御方式では、継続的かつ機敏な制御が行われる結果、操作量が頻繁に変動する。このような操作量の変動は、比較的長い時間的スパンで、換言すればより疎なタイミングで行われる人手による操作量の変動とは異なるものである。つまり、自動的制御方式と人手による制御とは近似しているとは認められず、人の操作を適切にアシストできない場合が有る。
 本発明は、上記の事情に鑑みて成されたものであり、制御対象の目的量を狙い値に維持するために行われる操作の操作量として、人による操作に近似した操作量を推定することを目的とする。
 本発明の一実施の形態にかかる推定装置は、制御対象のオペレータの操作履歴によらずに、前記制御対象の出力である目的量を狙い値とするための操作量の判定を行うための判定情報を推定する第1推定部と、前記制御対象のオペレータの操作履歴に基づいて、前記オペレータの操作を模倣した第2の操作量推定値を推定する第2推定部と、前記判定情報及び前記第2の操作量推定値に基づいて、前記制御対象の目的量を狙い値とするための第3の操作量推定値を決定する推定値決定部と、有するものである。これにより、判定情報及び第2の操作量推定値を用いることで、第3の操作量推定値を人による操作に近似した操作量として推定することができる。
 本発明の一実施の形態にかかる推定装置は、上記の推定装置であって、前記判定情報の推定、前記第2の操作量推定値の推定及び前記第3の操作量推定値の決定を行うサイクルが繰り返し行われることが望ましい。これにより、人による操作に近似した操作量である第3の操作量推定値を逐次に得ることができる。
 本発明の一実施の形態にかかる推定装置は、上記の推定装置であって、前記第1推定部は、前記制御対象のオペレータの操作履歴によらずに、前記制御対象の出力である目的量を狙い値とするための操作量である第1の操作量推定値を推定し、前記推定値決定部は、基準となる操作量に対して、前記第1の操作量推定値及び前記第2の操作量推定値が変化した場合に、前記第1の操作量推定値を最新の前記第3の操作量推定値として出力し、前記基準となる操作量に対して、前記第1の操作量推定値又は前記第2の操作量推定値が変化しなかった場合に、前回のサイクルで決定された前記第3の操作量推定値を前記最新の第3の操作量推定値として出力することが望ましい。これにより、第1の操作量推定値及び第2の操作量推定値に応じて、第3の操作量推定値を適切な値とすることが可能となる。
 本発明の一実施の形態にかかる推定装置は、上記の推定装置であって、前記第1推定部は、推定を行う時点での前記制御対象の目的量と、前記狙い値と、の差分を算出し、前記推定値決定部は、前記基準となる操作量に対して前記第1の操作量推定値が変化し、かつ、前記基準となる操作量に対して前記第2の操作量推定値が変化しなかった場合に、前記差分が所定の範囲に収まるかを判定し、前記差分が所定の範囲に収まらない場合には、前記第3の操作量推定値として前記第1の操作量推定値を出力し、前記差分が前記所定の範囲に収まる場合には、前回のサイクルで決定された前記第3の操作量推定値を前記最新の第3の操作量推定値として出力することが望ましい。これにより、第1の操作量推定値及び第2の操作量推定値に応じて、第3の操作量推定値をより適切な値とすることが可能となる。
 本発明の一実施の形態にかかる推定装置は、上記の推定装置であって、前記第1推定部は、推定を行う時点での前記制御対象の目的量と、前記狙い値と、から、前記第1の操作量推定値を包含する、前記第2の操作量推定値の許容範囲を前記判定情報として算出し、前記推定値決定部は、基準となる操作量に対して、前記第2の操作量推定値が変化した場合に、前記第2の操作量推定値の変化量が前記許容範囲に収まるかを判定し、前記第2の操作量推定値の変化量が前記許容範囲に収まらない場合には、前記第2の操作量推定値を最新の前記第3の操作量推定値として出力し、前記第2の操作量推定値の変化量が前記許容範囲に収まる場合には、前回のサイクルで決定された前記第3の操作量推定値を最新の前記第3の操作量推定値として出力することが望ましい。これにより、第1の操作量推定値及び第2の操作量推定値に応じて、第3の操作量推定値をより適切な値とすることが可能となる。
 本発明の一実施の形態にかかる推定装置は、上記の推定装置であって、前記許容範囲は、前記第2の操作量推定値の下限値と上限値とで規定される範囲であり、前記推定値決定部は、前記第2の操作量推定値が前記下限値よりも小さい場合、又は、前記上限値よりも大きい場合に、前記第2の操作量推定値が前記許容範囲に収まらないものと判定することが望ましい。これにより、第2の操作量推定値の変化を適切に判定することができる。
 本発明の一実施の形態にかかる推定装置は、上記の推定装置であって、前記許容範囲は、前記第2の操作量推定値の変化量の下限値及び上限値で規定される範囲として規定される範囲であり、前記推定値決定部は、前記第2の操作量推定値が前記下限値よりも小さい場合、又は、前記上限値よりも大きい場合に、前記第2の操作量推定値が前記許容範囲に収まらないものと判定することが望ましい。これにより、第1の操作量推定値及び第2の操作量推定値の変化を適切に判定することができる。
 本発明の一実施の形態にかかる推定装置は、上記の推定装置であって、前記許容範囲は、前記第2の操作量推定値の変化の方向として設定され、前記推定値決定部は、前記第2の操作量推定値の変化の方向が、前記許容範囲で規定される方向と異なる場合に、前記前記第2の操作量推定値が前記許容範囲に収まらないものと判定することが望ましい。これにより、第1の操作量推定値及び第2の操作量推定値の変化を適切に判定することができる。
 本発明の一実施の形態にかかる推定方法は、制御対象のオペレータの操作履歴によらずに、前記制御対象の出力である目的量を狙い値とするための操作量の判定を行うための判定情報を推定し、前記制御対象のオペレータの操作履歴に基づいて、前記オペレータの操作を模倣した第2の操作量推定値を推定し、前記判定情報及び前記第2の操作量推定値に基づいて、前記制御対象の目的量を狙い値とするための第3の操作量推定値を決定するものである。これにより、第1の操作量推定値だけでなく第2の操作量推定値を用いることで、第3の操作量推定値を人による操作に近似した操作量として推定することができる。
 本発明の一実施の形態にかかるプログラムは、制御対象のオペレータの操作履歴によらずに、前記制御対象の出力である目的量を狙い値とするための操作量の判定を行うための判定情報を推定する処理と、前記制御対象のオペレータの操作履歴に基づいて、前記オペレータの操作を模倣した第2の操作量推定値を推定する処理と、前記判定情報及び前記第2の操作量推定値に基づいて、前記制御対象の目的量を狙い値とするための第3の操作量推定値を決定する処理と、をコンピュータに実行させるものである。これにより、第1の操作量推定値だけでなく第2の操作量推定値を用いることで、第3の操作量推定値を人による操作に近似した操作量として推定することができる。
 本発明によれば、制御対象の目的量を狙い値に維持するために行われる操作の操作量として、人による操作に近似した操作量を推定することができる。
実施の形態1にかかる推定装置を実現するためのシステム構成の一例を示す図である。 実施の形態1にかかる推定装置での機械学習の概要を示す図である。 実施の形態1にかかる推定装置での予測処理の概要を示す図である。 実施の形態1にかかる推定装置の構成を模式的に示す図である。 実施の形態1にかかる推定装置の推定処理のフローチャートである。 状態量及び目的量を取得する時刻tと操作量が出力される時刻t’との関係を示す図である。 時刻tでの目的量y(t)と時刻t’での操作量推定値z(t’)との関係が一次線形関数だった場合を示す図である。 状態量及び目的量を取得する時刻t、操作量が出力される時刻t’及び次のステップの状態量及び目的量を取得する時刻tの関係を示す図である。 状態量及び目的量を取得する時刻tと、オペレータの思考時間及び操作時間を考慮した場合の操作量が出力される時刻t+tqとの関係を示す図である。 第2推定部の機械学習のイメージを示す図である。 第2推定部での予測処理を示す図である。 推定値決定部の判定ルールを示す判定表である。 2次元倒立振り子の構成を模式的に示す図である。 2次元倒立振り子の操作量の変動を示す図である。 実施の形態1にかかる推定装置によって2次元倒立振り子を制御する場合の操作量推定値の例を示す図である。 2次元倒立振り子の実験を10回試行した結果を示す図である。 図16に示す実験における指令値の変更回数を示す図である。 実施の形態2にかかる推定装置の構成を模式的に示す図である。 実施の形態2にかかる推定装置の推定処理のフローチャートである。 2次元倒立振り子の実験を10回試行した結果を示す図である。 図20に示す実験における指令値の変更回数を示す図である。 実施の形態2にかかる推定装置によって2次元倒立振り子を制御する場合の操作量推定値の例を示す図である。 実施の形態3にかかる推定装置の構成を模式的に示す図である。 実施の形態3にかかる推定装置の推定処理のフローチャートである。 時刻tでの目的量y(t)と時刻t’での操作量推定値z(t’)との関係の一例を示す図である。 実施の形態3にかかる許容範囲算出部による許容範囲の算出方法を示す図である。 2次元倒立振り子の実験を10回試行した結果を示す図である。 図27に示す実験における指令値の変更回数を示す図である。 実施の形態3にかかる推定装置によって2次元倒立振り子を制御する場合の操作量推定値の例を示す図である。
 以下、図面を参照して本発明の実施の形態について説明する。各図面においては、同一要素には同一の符号が付されており、必要に応じて重複説明は省略される。
 実施の形態1
 図1は、実施の形態1にかかる推定装置を実現するためのシステム構成の一例を示す図である。推定装置を100は、専用コンピュータ、パーソナルコンピュータ(PC)などのコンピュータ10により実現可能である。但し、コンピュータは、物理的に単一である必要はなく、分散処理を実行する場合には、複数であってもよい。図1に示すように、コンピュータ10は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13及びGPU(Graphics Processing Unit)21を有し、これらがバス14を介して相互に接続されている。尚、コンピュータを動作させるためのOSソフトなどは、説明を省略するが、この推定装置を構築するコンピュータも当然有しているものとする。
 バス14には、入出力インターフェイス15も接続されている。入出力インターフェイス15には、例えば、キーボード、マウス、センサなどよりなる入力部16、CRT、LCDなどよりなるディスプレイ、並びにヘッドフォンやスピーカなどよりなる出力部17、ハードディスクなどより構成される記憶部18、モデム、ターミナルアダプタなどより構成される通信部19などが接続されている。
 CPU11は、ROM12に記憶されている各種プログラム、又は記憶部18からRAM13にロードされた各種プログラムに従って各種の処理、本実施の形態においては、例えば後述する推定装置100の各部の処理を実行する。GPU21も、CPU12と同様に、ROM12に記憶されている各種プログラム、又は記憶部18からRAM13にロードされた各種プログラムに従って各種の処理、本実施の形態においては、例えば後述する推定装置100の各部の処理を実行する。なお、GPU21は、定型的な処理を並列的に行う用途に適しており、後述する学習処理などに適用することで、CPU11に比べて処理速度を向上させることも可能である。RAM13には又、CPU11及びGPU21が各種の処理を実行する上において必要なデータなども適宜記憶される。
 通信部19は、例えば図示しないインターネットを介しての通信処理を行ったり、CPU11から提供されたデータを送信したり、通信相手から受信したデータをCPU11、RAM13、記憶部18に出力したりする。記憶部18はCPU11との間でやり取りし、情報の保存・消去を行う。通信部19は又、他の装置との間で、アナログ信号又はディジタル信号の通信処理を行う。
 入出力インターフェイス15はまた、必要に応じてドライブ20が接続され、例えば、磁気ディスク20A、光ディスク20B、フレキシブルディスク20C、又は半導体メモリ20Dなどが適宜装着され、それらから読み出されたコンピュータプログラムが必要に応じて記憶部18にインストールされる。
 続いて、本実施の形態にかかる推定装置100における各処理について説明する。推定装置100は、n(nは、1以上の整数)次元ベクトルで記述されるノードを有し、ノードの情報は、例えばRAM13などの記憶部に格納されている。
 入力データは、n次元の入力ベクトルとして入力される。例えば、入力ベクトルは一時記憶部(例えばRAM13)に格納される。
 以下で説明する制御システムにおいては機械学習が適用されるが、その前提として、機械学習の概要について説明する。以下で説明する一般的な機械学習は、あくまで以下の実施の形態で説明する制御システムの理解の前提に過ぎず、制御システムに適用される機械学習がこれに限定されるものではない。
 機械学習は、教師あり学習と教師なし学習とに大別される。以下、それぞれの手法の概要について説明する。
 一般に、教師あり学習では、与えられた変数(説明変数)からある変数(目的変数)を予測するための学習が行われる。より具体的には、教師あり学習は、入力データ(説明変数)に対して正解データ(目的変数)を与えて、入力データと正解データとの関係性を学習する手法である。
 例えば、正解データが連続値である場合には回帰分析による学習が行われる。なお、連続データの学習の手法は、回帰分析(例えば、線形回帰)に限られるものではない。回帰分析においては、入力データを各種の関数によってフィッティングすることで、入力データに対応する出力を予測することが可能となる。
 また、入力データに対する正解データがラベル情報である場合には、分類による学習が行われる。分類による学習においては、例えば、回帰(ロジスティクス回帰、サポートベクターマシン)、木(決定木、ランダムフォレスト)、ニューラルネットワーク、クラスタリング(k近傍法など)等の手法が用いられる。
 教師なし学習では、正解データが与えられない状態で、入力データの特徴を学習するものである。教師なし学習の手法としては、k-means法やSOINN法に代表されるクラスタリング、PCA法などの次元削減、ホテリングのT法などの異常検知などがある。例えば、クラスタリングでは、入力データから近似し特徴を有するものを抽出してグループ化することが可能である。
 以上、機械学習の概要について説明したが、本実施の形態では、あるシステムの出力を示す目的値やシステムの状態を示す状態量から、機械学習を応用してシステムへの入力を示す操作量もしくは操作変化量を算出する推定装置について説明する。
 まず、制御対象となるシステム(以下、対象システム)1000について説明する。図2に示すように、対象システム1000は、状態を示す変数である状態量Xを保持しており、目的量Yを出力する。また、状態量Xや目的量Yに対応して対象システム1000に対して行われた操作を示す変数である操作量Zが対象システム1000に入力される。
 目的量は、対象システム1000の稼働目的を定量化したものとして示され、例えば、対象システム1000に設けられたセンサによって取得された値である。対象システム1000は、この目的量を所定の狙い値ないしは狙い範囲に到達させ、維持するために稼働する。状態量は、目的量と直接ないしは間接的に関連するものとして示され、例えば、対象システム1000に設けられたセンサによって取得された値である。
 操作量は、例えば、センサによって状態量や目的量が取得されたタイミングで、オペレータが対象システム1000に対して行った操作を示す量である。なお、状態量や目的量については、対象システム1000をモニタすることで時系列データとして取得され、操作量については状態量の時系列データに対応するものして取得可能である。ただし、対象システム1000に対する操作は人為的に行われるものであるので、常に行われるものではなく、間欠的に行われるものである。したがって、人の操作による場合には、操作量は間欠的にしか変動しないという特徴を有する。
 例えば、対象システムが車両などの速度調整装置である場合には、速度が目的量に該当し、吸気量、燃料噴射量、エンジン回転数などが状態量に該当する。また、アクセル踏込量などが操作量に該当する。
 また、例えば、対象システムが研磨機温度調節装置である場合には、研磨パッドの温度が目的量に該当し、研磨装置の回転数や研磨パッドの荷重などが状態量に該当する。研磨パッドへ供給する加熱液及び冷却液を供給する管に取り付けられたバルブの開閉度などが操作量に該当する。
 次に、図3に、実施の形態1にかかる推定装置100の概要を示す。推定装置100は、出力された対象システム1000の目的量y、目的量の狙い値ytrg、場合によって追加で状態量xから、操作量zもしくは操作変化量Δzを予測可能に構成される。なお、状態量及び操作量は1以上の変数からなり、すなわちスカラー量であってもよいし、ベクトル量であってもよい。この推定は、対象システム1000の稼働時に得られた目的量Y、目的量狙い値Ytrg、状態量X、操作量Zのデータに基づいて実行される。上記で説明した機械学習はこの推定するシステム作成時に使用される。ここで目的量狙い値Ytrgは固定値、すなわち時間に依存しない値となる場合が多いが、時間に依存していても良い。ここでは、上記の通り、区別のため、学習で用いるデータについては大文字のアルファベットで表記し、予測で用いるデータについては小文字で表記する。
 次いで、実施の形態1にかかる推定装置100の構成について説明する。図4に、実施の形態1にかかる推定装置100の構成を模式的に示す。図5に、実施の形態1にかかる推定装置100の推定処理のフローチャートを示す。推定装置100は、第1推定部1、第2推定部2及び推定値決定部3を有する。
 第1推定部1は、対象システムの目的量などを参照し、対象システムの目的量の狙い値を実現するために必要な操作量を推定するものとして構成される。第1推定部は、例えば、強化学習やPID(Proportional-Integral-Differential)制御によって、操作量を推定する推定器として構成される。なお、以下では、目的量を参照して操作量を推定する例について説明するが、必要に応じて、現時点までの状態量や操作量など他のデータを参照して操作量を推定してもよい。このように、第1推定部1は、予め準備されたアルゴリズムに現時点での目的量及び目的量狙い値といった入力データを入力することで、現時点(推定する時点)で操作を行う場合に必要とされる操作量を推定することができる。
 第1推定部1が操作量の推定に用いるデータは、図示しない記憶部(例えば、図1に示す記憶部18など)に格納されてもよい。第1推定部1は、必要に応じて、推定に用いるデータを記憶部から読み出し、かつ、推定結果などのデータを記憶部に書き込むことができる。
 第2推定部2は、対象システムの目的量を説明変数、オペレータによる操作履歴を目的変数として機械学習し、学習結果に基づいて、オペレータの操作を模倣した操作量を推定するものとして構成される。なお、第2推定部2は、必要に応じて、説明変数を目的量ではなく、推定を行う時点での状態量としてもよいし、目的量及び状態量の両方を説明変数としてもよい。
 第2推定部2が機械学習に用いる入力データは、図示しない記憶部(例えば、図1に示す記憶部18など)に格納されてもよい。第2推定部2は、必要に応じて、推定に用いるデータを記憶部から読み出し、かつ、推定結果などのデータを記憶部に書き込むことができる。
 推定値決定部3は、第1推定部1が推定した第1の操作量推定値z(t)と、第2推定部2が推定した第2の操作量推定値z(t)と、に基づいて第3の操作量推定値z(t)を出力する。推定値決定部3が判定に用いるデータは、図示しない記憶部(例えば、図1に示す記憶部18など)に格納されてもよい。推定値決定部3は、必要に応じて、判定に用いるデータを記憶部から読み出し、かつ、判定結果などを記憶部に書き込むことができる。
 次いで、推定装置100の学習及び推定について、具体的に説明する。なお、以下では、区別のため、学習で用いる入力データでの時刻及びデータは大文字で示し、予測で用いる時刻及びデータは小文字で示す。
 第1推定部1は、オペレータによる操作履歴を正解とすることなく、目的量の狙い値を実現するための第1の操作量推定値zを推定する(図5のステップS11)。このとき、第1推定部1は、現在時刻までの情報に基づいて、例えば現在時刻に適切な操作量を推定する。しかし、実際には図6のように、状態量及び目的量を取得する時刻と操作量を出力する時刻とは同じ時刻にはならず、所定のタイムラグが発生する。
 また、第1推定部1は、現在時刻までの情報に基づいて、あらかじめ将来時刻に適切な操作量を推定してもよい。この場合も図6のように、状態量及び目的量を取得する時刻と操作量を出力する時刻との間には所定のタイムラグが発生する。
 本発明では、状態量及び目的量を取得する時刻をtと記載し、操作量を出力する時刻をt’と記載する。つまり、時刻t’は、時刻tから所定のタイムラグ分だけ進んだ時刻である。 
 第1推定部1は、時刻tの目的量から目的量の狙い値を実現するための操作量を推定する。以下の式[1]に示す関数fのように、時刻tでの目的量y(t)及び目的量狙い値ytrgから、時刻tよりも将来の時刻t’における操作量z(t’)を推定することが可能である。ここで、目的量狙い値ytrgは固定値としたが、時間依存性を有するものとして、ytrg(t)の形式としてもよい。
Figure JPOXMLDOC01-appb-M000001
 関数fは、例えば、「時刻tでの目的量y(t)と目的量狙い値ytrgとの差分が所定以上の場合に、時刻t’での操作量z(t’)を所定の値にする」などの判定条件の形式でもよいし、連続な関数でもよい。換言すれば、fは、一般的な知見に基づいて設定することができる。図7に、時刻tでの目的量y(t)と時刻t’に操作すべき操作量z(t’)との関係が一次線形関数である場合を示す。この関数においては、目的量y(t)を特定することで時刻t’での操作量z(t’)を取得できる。目的量がytrgの場合の操作量ztrgは、目的量が狙い値になった場合に出力する操作量を意味する。
 なお、上述したように、時刻tでの目的量y(t)だけでなく、時刻(t)までの状態量や操作量も併せて入力して、時刻(t’)での操作量z(t’)を推定してもよい。状態量を含めることで、目的量の変化に先立って目的量の変化に対応する操作が可能になり、目的量とは直接結びつかない重要な事象に対応する操作が可能になる場合もある。また、操作量を含めることで、既に状況に見合った操作がされている場合に、重複した操作を防ぐことが可能となる。
 より複雑な系などで繊細な制御が求められる場合は、例えばPID制御を利用してもよい。式[2]に、PID制御を使用する場合の第1の推定部1での推定を示す。
Figure JPOXMLDOC01-appb-M000002
ここで、k,k,kは、PID制御のパラメータである。PID制御のパラメータを設定することで、時刻tの目的量y(t)から目的量の狙い値ytrgを実現するための、時刻(t’)の操作量z(t’)を推定する。PID制御のパラメータ設定は、試行錯誤的に適切な値を見つけて設定してもよいし、制御対象の数学モデルを用いて系統的にパラメータの設計を行ってもよい。
 また、操作が目的量に対して影響を与えるまでにタイムラグがある場合、将来の時刻t+tの目的量を推定し、推定した時刻t+tでの目的量から目的量の狙い値を実現する操作を推定する方が好ましい場合がある。tは各タスクに応じて解析を行い、適切な値を設定できる。
 式[3]に時刻t+tの推定目的量を使用する場合の第1推定部1を示す。関数fとして、式[1]や式[2]で説明したような関数を使用することができる。
Figure JPOXMLDOC01-appb-M000003
 この場合には、将来の時刻t+tの目的量y(t+t)は、推定して求める必要がある。これは機械学習処理によって推定器を作成することで可能である。以下、推定器作成の学習処理の一例を示す。学習処理で用いられる入力データINは、式[4]で記述するように、説明変数Eと、目的変数Pとからなる。目的変数Eは式[5]に記述するように、ある時刻T~時刻T-T(T≧0)までの所定の時間幅における状態量X、操作量Z及び目的量Yからなり、目的変数Pは、式[6]に記述するように、将来の時刻T+T(Tf>0)の目的量からなる。
Figure JPOXMLDOC01-appb-M000004
Figure JPOXMLDOC01-appb-M000005
Figure JPOXMLDOC01-appb-M000006
ここで、入力データは複数あり、式[4]~[6]ではそのサンプルとして添字iを付している。例えば、入力データがN個(Nは1以上の整数)ある場合には、iは1以上N以下の整数となる。
 学習モデルとしては、式[7]のような関数の形になる。Mは学習モデルであり、様々なモデルが適応可能である。線形回帰やロジスティック回帰やランダムフォレスト、サポートベクトルマシンやニューラルネットワーク、自己組織化ニューラルネットワーク(SOINN:Self-Organizing Incremental Neural Network)等、目的量の特性などに応じて使い分ければよい。P^はモデルから導き出される目的変数の推定値である。
Figure JPOXMLDOC01-appb-M000007
 入力データINのEを式[7]に入力した時得られる推定値P^と目的変数であるPとを比較し、誤差やコストが最小になるように学習モデルMのパラメータを最適化していく。SOINNの場合は、入力データINを入力していくことでニューロン(ノード)を増殖させていき、様々な説明変数Eに対応する目的変数Pを出力できるようになっていく。
 以上の学習処理により、モデルが最適化され、式[8]のように将来の時刻t+tの目的量y(t+t)を推定することができる。
Figure JPOXMLDOC01-appb-M000008
なお、式[8]から分かるように、時刻t+tでの推定目的量y(t+t)と時刻tでの操作量z(t)との関係が定められているので、この関係から、時刻t+tでの推定目的値y(t+t)を狙い値とするような、時刻t’での操作量z(t’)を取得することも可能である。具体的には、式[8]の時刻t+tでの推定目的量y(t+t)に目的量狙い値ytrgを代入し、時刻tでの操作量z(t)以外の説明変数を入力して、時刻tでの操作量z(t)を時刻t’での操作量z(t’)に置きかえて解くことで、時刻(t’)での操作量z(t’)を求めることができる。このようにして求まる時刻(t’)での操作量z(t’)は、式[9]で表される。
Figure JPOXMLDOC01-appb-M000009
なお、式[9]の値を、式[3]の代わりに用いてもよい。
 さらに、第1推定部1は、目的量が最適な範囲にある場合に報酬を与え、そうでない場合は報酬を与えない、いわゆる強化学習により操作を学習させることで操作量を推定してもよい。強化学習の方法としては、例えばQ学習などがある。Q学習では、各状態の各行動に価値Qが設定され、価値が高い行動を取るように行動が決定される。価値Qは何度も動作を実行することで更新され、適切な価値行動価値関数Qへと更新されていく。Q学習における行動価値関数の更新式は、以下の式[10]で表される。
Figure JPOXMLDOC01-appb-M000010
Q(X,Z)は、状態量Xと操作量Zとにおける行動価値関数、Rは貰える報酬、ηは学習率、γは時間割引率である。報酬Rは、目的量が狙い値に維持されていれば与えられる。また、状態量Xには目的量Yを含めてもよい。tは、図8のように、時刻tの次の目的量及び状態量の取得タイミングである。より具体的に説明すると、ある時刻tに取得した目的量及び状態量に基づいた操作量が時刻t’で出力され、出力された操作量に基づく操作の影響が状態に反映されたタイミングで、次の目的量及び状態量を取得することになる。
 以上の学習により、行動価値関数Qが決定され、式[11]のように操作の推定が可能となる。
Figure JPOXMLDOC01-appb-M000011
なお、本実施の形態では第1推定部1の推定量が操作量であるものとして説明したが、必要に応じて、操作量の変化量を推定してもよい。操作の変化量としては、ある時刻に出力した操作量とその前に出力した操作量の差分として定義できる。操作量の変化が目的量に対して直接的に影響を与える場合などではこちらが有効になる場合がある。
 次いで、第2推定部2での学習処理と予測処理とについて説明する。
学習処理
 第2推定部2での学習処理で用いられる入力データは、式[4]で記述したように、説明変数Eと目的変数Pとからなる。目的変数Eは式[12]に記述するように、ある時刻T~時刻T-Tp2(Tp2≧0)までの所定の時間幅における目的量Yからなり、目的変数Pは式[13]に記述するように時刻T+T(T≧0)での操作量Zからなる。
Figure JPOXMLDOC01-appb-M000012
Figure JPOXMLDOC01-appb-M000013
 状態量Yに対する反応としてオペレータがなす操作は、図9に示すように、思考時間や操作時間などでタイムラグが発生する。そのタイムラグを考慮してTを決定する。本実施の形態では、時刻Tの次のステップ(つまり次の状態量取得時間)Ti+1における操作量を、式[14]に示すように、Z(Ti+1)とした。
Figure JPOXMLDOC01-appb-M000014
なお、必要に応じて、説明変数を状態量Xや過去の操作量Zに変更してもよいし、状態量Xや過去の操作量Zを説明変数に追加してもよい。例えば、状態量Xを説明変数にした場合は、式[15]に示すようになる。
Figure JPOXMLDOC01-appb-M000015
また、必要に応じて、説明変数として目的量狙い値ytrgを追加してもよい。
 学習モデルとしては、上述と同様に、式[7]のような関数の形になる。Mは学習モデルであり様々なモデルが適応可能である。線形回帰やロジスティック回帰やランダムフォレスト、サポートベクトルマシンやニューラルネットワーク、自己組織化ニューラルネットワーク(SOINN:Self-Organizing Incremental Neural Network)等、目的量の特性などに応じて使い分ければよい。P^はモデルから導き出さる目的変数の推定値である。
 入力データINを式[7]に入力した時得られる推定値P^と正解の値であるPとを比較し、誤差やコストが最小になるように学習モデルMのパラメータを最適化していく。SOINNの場合は、入力データINを入力していくことでニューロン(ノード)を増殖させていき、様々な説明変数Eに対応する目的変数Pを出力できるようになっていく。
 図10に、第2推定部2の機械学習結果のイメージを示す。図10の例では、対象システムの状態量Xが時間とともに単調に増加しているため、状態量Xの増加を抑制するためにオペレータが操作を行った場合を想定している。この場合、オペレータは、状態量Xが時刻Tで値Xとなったときに操作を行うことで、操作量Zが値Zから値Zに変化している。その後、操作によって状態量Xが減少に転じて、時刻Tで値Xとなったときにオペレータが操作を行い、操作量を値Zから値Zに変化させている。この場合、学習を行うことで、図10に示すように、状態量Xと操作量Zとの関係を学習することができる。
 以上で説明した入力データを機械学習することで、オペレータの操作を模倣し、現在時刻における操作量推定値を推定可能な学習済みモデルを得ることができる。
予測処理
 図11に、第2推定部2での予測処理を示す。第2推定部2は、推定を行う時刻(現在時刻とも称する)t~時刻t-tp2(tp2≧0)までの所定の時間幅における目的量yを、機械学習によって得られた学習済みモデルに入力することで、現在時刻tの次ステップにおける操作量を推定する(図5のステップS12)。学習処理部で説明したように、人の操作のタイムラグを考慮するため、現在時刻tの次ステップでの操作量を推定することになっているが、実際には現在時刻の状態に反応した操作であると考えられるため、現在時刻で操作すべきものであると考えても問題ない。よって、この推定値を、第2推定部2による時刻t’での第2の操作量推定値z(t’)とする。第2の操作量推定値z(t’)は、以下の式[16]のように、関数hで表される。
Figure JPOXMLDOC01-appb-M000016
なお、本実施の形態では第2推定部2の推定量を操作量として説明したが、操作量の変化量を推定してもよい。
 また、第2推定部2は、操作の方向性のみを推定するものとしても良い。具体的には、操作量を上げるか、下げるかなどの操作の方向を推定する推定器としてもよい。後述するように、第2推定部2に求められるのは、人が行うような操作の様に操作量の出力までにタイムラグを考慮して操作量を推定できる推定器であればよい。方向性を出力する推定器を作成するには、式[13]に記載されている目的変数Pにおいて、例えば上げる操作を0、下げる操作を1として入力し、分類問題として機械学習を実施すればよい。
 第1推定部1及び第2推定部2は、上述で説明した操作量の推定処理を、所定のタイミング、例えば分単位で逐次実行する。そして、逐次得られる第1の操作量推定値z(t’)及び第2の操作量推定値z(t’)は、例えば、図示しない記憶部(例えば、図1に示す記憶部18など)に格納される。本実施の形態における第1の操作量推定値は、操作量の妥当性を検証するための判定情報として用いられる。本実施の形態においては第1の操作量推定値自体が、所定の判定範囲の比較対象として用いられる。
 次いで、推定値決定部3について説明する。推定値決定部3は、第1の操作量推定値z(t’)が有意に変化しているか(図5のステップS13)、第2の操作量推定値z(t’)が有意に変化しているか(図5のステップS14)を判定する。操作量が変化しているか否かの判定は、操作量及び操作量に基づく情報を判定範囲と比較し、判定範囲に収まるか否かを判定することで行われる。
 例えば、推定値決定部3は、時刻t’での第1の操作量推定値z(t’)及び第2の操作量推定値z(t’)を、現在時刻での操作値(すなわち、判定範囲)と比較することで、これらの推定値が有意に変化しているかを判定することができる。また、例えば、推定値決定部3は、第1の操作量推定値、第2の操作量推定値が操作変化量を推定したものの場合、その絶対値と所定値(すなわち、判定範囲)との比較で有意に変化しているかを判定することができる。さらに、例えば、推定値決定部3は、第2推定部2が操作の方向性のみを出力する推定器の場合は、ある方向を所定時間連続して推定し続けているかどうかやその方向性(すなわち、判定範囲)の確率が所定値以上などの判定で有意に変化していると判定することができる。
 以下、判定結果とこれに伴う推定値決定部3の動作について、図12の推定値決定部3の判定ルールを示す判定表を参照して説明する。
ケース1
 ケース1は、第1の操作量推定値z及び第2の操作量推定値zが有意に変化する場合である。つまり、この場合には、オペレータの操作履歴に基づかずに推定を行う第1推定部1と、オペレータの操作履歴に基づいて推定を行う第2推定部2とが、両方とも、操作量を変化させるべきと判断している。よって、操作量を変化させることが適正と考えられる。変化させる操作量に関しては、第1の操作量推定値zは目的量狙い値を実現するための操作量であり、第2の操作量推定値zはオペレータの操作履歴に基づいた操作量であるため、第1の操作量推定値zの方が、目的量狙い値を実現する観点から適切な値であると考えられる。よって、推定値決定部3は、第3の操作量推定値zとして、第1の操作量推定値zを出力する(図5のステップS15)。
 操作量推定値が有意に変化するか否かの判定については、例えば、操作量推定値の変化量の絶対値が所定の閾値よりも大きい場合に、有意に変化するものとして判定してもよい。具体的には、第1の操作量推定値zの変化量の絶対値が閾値TH1(ただし、閾値TH1は正の値)よりも大きな場合に、操作量推定値zが有意に変化するものとして判定される。また、第2の操作量推定値zの変化量の絶対値が閾値TH2(ただし、閾値TH2は正の値)よりも大きな場合に、操作量推定値zが有意に変化するものとして判定される。
 また、例えば、操作量推定値の変化量の判定範囲を設け、操作量推定値の変化量が判定範囲から外れた場合に、有意に変化するものとして判定してもよい。具体的には、第1の操作量推定値zの変化量が判定範囲VL1~VH1に収まらない場合、換言すれば、値VL1よりも小さいか、値VH1よりも大きな場合に、有意に変化するものとして判定される。なお、値VL1及び値VH1は正の値でも負の値でもよいが、値VH1は値VL1よりも大きな値であり、かつ、値VL1が負の値である場合には、値VH1は正の値であることが望ましい。同様に、第2の操作量推定値zの変化量が判定範囲VL2~VH2に収まらない場合、換言すれば、値VL2よりも小さいか、値VH2よりも大きな場合に、有意に変化するものとして判定される。この場合においても、値VL2及び値VH2は正の値でも負の値でもよいが、値VH2は値VL2よりも大きな値であり、かつ、値VL2が負の値である場合には、値VH2は正の値であることが望ましい。
 なお、説明した操作量推定値が有意に変化するか否かの判定方法については、例示に過ぎず、適宜他の方法を用いてもよい。
 推定値決定部3は、ケース1以外のケース2~4の場合には、第3の操作量推定値zを変化させる必要はないものとして、前回の推定処理で決定した目的量推定をそのまま維持する(図5のステップS16)。以下、その理由について説明する。
ケース2
 ケース2は、第1の操作量推定値zが有意な変化をせず、かつ、第2の操作量推定値zが有意に変化した場合である。つまり、オペレータの操作履歴に基づかずに推定を行う第1推定部1は、操作量を変化させずとも目的量を狙い値とすることができると判断しているのに対し、オペレータの操作履歴に基づいて推定を行う第2推定部2は、操作量を変化させることを選択している。この場合、オペレータの操作履歴に基づく操作は、目的量狙い値の実現には寄与しないおそれが有り、操作量を変化させる必要はないものと考え得る。よって、推定値決定部3は、第3の操作量推定値zを変化させる必要はないものとして、前回の推定処理で決定した目的量推定をそのまま維持する。
ケース3
 ケース3は、第1の操作量推定値zが有意に変化し、かつ、第2の操作量推定値zが有意な変化をしなかった場合である。つまり、オペレータの操作履歴に基づかずに推定を行う第1推定部1は、目的量を狙い値とするためには操作量を変化させるべきと判断しているのに対し、オペレータの操作履歴に基づいて推定を行う第2推定部2は、操作量を変化させる必要は無いと判断している。この場合、第1推定部1の推定はオペレータの経験及び感覚からは乖離しているおそれがあり、オペレータの経験及び感覚に基づけば、操作を行わずとも目的量狙い値を実現することができる可能性が有ると考え得る。 推定装置100は、人による操作に近似した操作量を推定することを目的としているため、人の経験及び感覚から乖離しているおそれの有る操作や、行わずともよい操作は、抑制すべきであると考え得る。よって、推定値決定部3は、第3の操作量推定値zを変化させる必要はないものとして、前回の推定処理で決定した目的量推定をそのまま維持する。
ケース4
 ケース4は、第1の操作量推定値z及び第2の操作量推定値zの両方が有意な変化をしなかった場合である。つまり、第1推定部1及び第2推定部2の両方が、操作量を変化させる必要は無いと判断している。よって、推定値決定部3は、第3の操作量推定値zを変化させる必要はないものとして、前回の推定処理で決定した目的量推定をそのまま維持する。
 以上説明したように、本構成によれば、オペレータの操作履歴によらない推定と、人の操作履歴に基づく推定と、が一致ないしは近似している場合にだけ操作量を変化させる旨の推定を行い、それ以外の場合には操作量を維持することができる。これにより、対象システムを制御するにあたり、オペレータの経験や感覚に近い制御状態を実現することが可能となる。
 次いで、2次元倒立振り子の実施例に基づいて、推定装置100の利点について説明する。図13に、2次元倒立振り子の構成を模式的に示す。2次元倒立振り子では、操作台31の上に棒32が直立している。操作台31は左右に移動可能である。棒32は操作台31との接触部を中心として左右方向に、換言すれば接触部を通る図13の紙面の法線方向の軸のまわりに回転可能に保持されている。
 操作量は、操作台31の右への移動及び操作台31の左への移動の2種類とし、右への移動の操作が出力されている限り操作台には右側へ所定の力(つまり加速度)が作用して右側への移動が助長される。左への移動の操作も同様である。目的量は、操作台31の上面に対する棒32の角度とする。状態量は、操作台31の位置、操作台31の速度、及び、棒の角速度とする。目的量狙い値は、棒32を直立状態、例えば回転角が0°であることとする。 
 図14に、2次元倒立振り子の操作量の変動を示す。上段のPID制御などの一般的な制御方法では、棒32の位置を安定させるために、継続的に機敏な制御が行われ、操作量(つまり、第1の操作量推定値z)が頻繁に変動する。これに対し、人手で制御を行う場合には、一般的な制御方法と比べて長い時間的スパンで、換言すればより疎なタイミングで操作量(つまり、第2の操作量推定値z)が変化する。つまり、両者の制御方式は全く異なることが容易に理解できる。
 これに対し、本構成によれば、両方の操作量の推定が一致ないしは近似するときに、操作量が変化する。図15に、実施の形態1にかかる推定装置100によって2次元倒立振り子を制御する場合の操作量推定値の例を示す。人手で制御した場合と同様に、一般的な制御方法と比べて長い時間的スパンで操作を実施していることがわかる。
 図16に、2次元倒立振り子の実験を10回試行した結果を示す。図17に、図16に示す実験における指令値の変更回数を示す。1回の試行は10秒とし、10秒間棒を倒さなければ○、倒れれば×と表示している。実施の形態1の構成に対する比較例として、PID制御を比較例1(つまり、第1推定部のみを用いた制御)、人の操作を模倣した模倣学習による制御を比較例2(つまり、第2推定部器のみを用いた制御)として表示している。
 図16及び図17に示される結果から分かるように、比較例1は全ての試行において棒が倒れずに制御に成功しているが、操作の変更回数は比較的に多い。これは、図14に示すように、継続的に機敏な制御が行われることで少しの変化にも対応しているためと想定できる。これは、制御としては申し分ないが、人による操作に近似した操作にはなっていない。
 一方、比較例2は、操作の変更回数は少なくなっている。これは、人の操作を模倣しているため、図14に近似した制御が行われていることを示している。しかし、棒を倒してしまう事態が生じており、適切な操作を行えていない場合がある。
 これらに対して、実施の形態1にかかる推定装置100によれば、全ての試行において棒が倒れずに制御に成功しており、かつ、指令値の変更回数(操作の回数)も比較例2と同じ程度であり、図15に示した通り、人の操作に好適に近似した出力ができていることが理解できる。これは、第1の操作量推定値zの出力結果と第2の操作量推定値zの出力結果とが一致又は近似する場合にのみ操作を変更することで、操作数を抑制しながらも、好適な操作量を出力できているためと考えられる。
 以上、本構成によれば、オペレータの操作履歴によらない推定とオペレータの操作履歴に基づいた推定とを折衷して、操作量推定値を推定することができる。これにより、人の経験や感覚に反する操作量の変化を抑制し、より人が関与しやすい方式でシステムを制御することが可能となる。
 よって、システムの制御に問題が生じた場合でも、オペレータが割り込んでシステムの制御状態をより容易に是正することができる。
 実施の形態2
 実施の形態2にかかる推定装置について説明する。実施の形態2にかかる推定装置200は、実施の形態1にかかる推定装置100の変形例として構成される。実施の形態1では、2つの操作量推定値が有意に変化するか否かに基づき、出力すべき操作量推定値を決定した。しかし、有意な変化にのみ基づく推定では、目的量狙い値の実現には十分でない場合が想定される。例えば、オペレータが操作に熟練していない場合、目的量狙い値の実現のための適切な操作変更がなされずに放置してしまうなどの事態が発生し得る。このようなオペレータの操作履歴を第2推定部が学習してしまうと、実施の形態1にかかる推定装置100では適切な操作量を出力できない場合がある。そこで、本実施の形態では、ケース3の場合において、より詳細な推定を行う推定装置について説明する。
 図18に、実施の形態2にかかる推定装置200の構成を模式的に示す。図19に、実施の形態2にかかる推定装置200の推定処理のフローチャートを示す。推定装置200は、実施の形態1にかかる推定装置100の第1推定部1及び推定値決定部3を、それぞれ第1推定部4及び推定値決定部5に置換した構成を有する。なお、図19のステップS21及びS23~S25は、図5のステップS11~S14とそれぞれ同様である。以下、構成及び動作について、実施の形態1にかかる推定装置100と相違する点に着目して説明する。
 第1推定部4は、第1推定部1と同様に、対象システムの目的量などを参照し、対象システムの目的量の狙い値を実現するために必要な操作量を推定する操作推定器4Aに加えて、差分算出部4Bを有する。
 差分算出部4Bは、時刻tでの目的量y(t)と目的量狙い値ytrgの差分Δyを求める。(図19のステップS22)。本実施の構成では、目的量狙い値ytrgは固定値として差分を求めたが、時間依存していてもよい。その場合には、比較する目的量の時刻に合わせて差分を算出するなどすればよい。また、差分算出部4Bは、第1推定部4の一部としたが、第1推定部4とは別の部分として存在していてもよい。
 実施の形態1では、ケース3は、第1の操作量推定値zが有意に変化し、かつ、第2の操作量推定値zが有意な変化をしなかった場合であり、推定値決定部3は、第3の操作量推定値zを前回の決定した値のまま維持するものとして説明した。しかし、差分算出部4Bが算出する差分Δyがある程度大きな値を有するときには、操作量を変化させなければ目的量狙い値ytrgを実現できないおそれが有ると考え得る。これは、つまり、オペレータの操作履歴に基づく第2推定部2の推定が不適切な結果となっているおそれが有る。
 そこで、推定値決定部5は、ケース3の場合において、目的量の差分Δyの絶対値が所定の閾値ythよりも大きいかを判定する(図19のステップS27)。目的量の差分Δyの絶対値が所定の閾値ythよりも大きい場合には、推定値決定部5は、第2推定部2での推定結果に関係なく、第1の操作量推定値zが適正な推定値であると判断して、ケース1の場合と同様に、第1の操作量推定値zを第3の操作量推定値zとして出力する(図19のステップS26)。
 目的量の差分Δyの絶対値が所定の閾値yth以下の場合には、推定値決定部5は、実施の形態1におけるケース2と同様に、第3の操作量推定値zを前回決定した値のままで維持する(図19のステップS28)。
 次いで、2次元倒立振り子の実施例に基づいて、推定装置200の利点について説明する。図20に、2次元倒立振り子の実験を10回試行した結果を示す。図21に、図20に示す実験における指令値の変更回数を示す。実施の形態1と同様に、1回の試行は10秒とし、10秒間棒が倒れなければ○、10秒以内に棒が倒れれば×を表示している。実施の形態2にかかる構成に対する比較例として、熟練していない人の操作を模倣した模倣学習による制御を比較例3(つまり、つまり第2推定部2のみの制御)として表示している。また、実施の形態1にかかる推定装置100によって制御した場合を、比較例4として表示している。比較例4及び実施の形態2における第2推定部2は、比較例3と同様に、熟練していない人の操作を模倣した模倣学習による推定器となっている。
 図21に示すように、比較例3は操作の変更回数としてはかなり少なく、比較例2(実施の形態1)と比べても少ない。これは、熟練していないオペレータの操作履歴を学習したため、目的量狙い値の実現のための適切な操作変更をせずに放置してしまうなどの事態が発生したためと想定し得る。実際に、想到の頻度で棒を倒してしまう事態が生じ、適切な操作とは考えられない。比較例4は、比較例3よりも良好な結果であるが、同様の理由で、棒を倒してしまう事態が生じた。
 これに対して、実施の形態2では、全ての試行において、棒が倒れることなく、倒立振り子の制御に成功していることが分かる。図21に示した実施の形態2にかかる推定装置200での操作回数も、比較例3や比較例4などと比べると回数は多いものの、実施の形態1の表2や比較例2とは同等であり、人の操作に近いと想定し得る。
 図22に、実施の形態2にかかる推定装置200によって2次元倒立振り子を制御する場合の操作量推定値の例を示す。図22から分かるように、図14に示した人手による制御方法と近似しており、人による操作に近似した操作が実現されていることが理解できる。
 これは、第1の操作量推定値zの出力結果と第2の操作量推定値zの出力結果とが一致又は近似する場合のみ操作を行うだけでなく、目的量狙い値を実現するには明らかに不適切な操作量を是正することで、操作数をなるべく抑制しながらも最適な操作を出力することに繋がっているためと考えられる。
 以上、本構成によれば、オペレータの操作履歴に基づく第2推定部2の推定が不適切であり、操作量を変化させた方がよいと考え得る場合を検出し、より精度よく、かつ、より確実に、目的量狙い値を実現することが可能となる。
 実施の形態3
 実施の形態3にかかる推定装置について説明する。実施の形態3にかかる推定装置300は、実施の形態1にかかる推定装置100の変形例であり、第2推定部2が出力する第2の操作量推定値zの妥当性を検証する機能を有するものとして構成される。
 図23に、実施の形態3にかかる推定装置300の構成を模式的に示す。図24に、実施の形態3にかかる推定装置300の推定処理のフローチャートを示す。推定装置300は、実施の形態1にかかる推定装置100の第1推定部1及び推定値決定部3を、それぞれ第1推定部6及び推定値決定部7に置換した構成を有する。なお、図16のステップS32、S34及びS36は、図5のステップS12、S14及びS16とそれぞれ同様である。以下、構成及び動作について、実施の形態1にかかる推定装置100と相違する点に着目して説明する。
 実施の形態1では、操作が変化するのは、第1の操作量推定値z及び第2の操作量推定値zが有意に変化したケース1のみであり、推定値決定部3は、第1の操作量推定値zを第3の操作量推定値zとして出力した。これに対し、本実施の形態では、第2の操作量推定値zが有意に変化した場合に、第1推定部が出力する許容範囲との比較に基づき第3の操作量推定値zを出力する。本実施の形態では、この許容範囲が、第2の操作量推定値z又はこれに基づく情報比較される判定情報として用いられる。
 なお、第2の操作量推定値zはオペレータの操作履歴に基づいて推定されたものであるが、その推定結果が常に適切であるとは限らないことが想定し得る。そこで、以下では、第2の操作量推定値zが適切な値であるか否かを検証し、その検証結果に基づいて、第3の操作量推定値zを出力する構成について説明する。
 第1推定部6は、許容範囲算出部6Aを有する。許容範囲算出部6Aは、対象システムの目的量などを参照し、対象システムの目的量の狙い値を維持するために許容される、操作の許容範囲ARを決定して、出力する(図24のステップS31)。
 許容範囲ARとしては、例えば、「yとytrgの差分が所定以上になったら、操作量範囲はa以上b以下」などの判定条件の形式でもよいし、上下限を示す連続的なyに関する複数関数に挟まれる操作量範囲などでもよい。また、許容範囲ARとしては、操作量の変化量として定義されてもよいし、「操作量を増加させる操作」など操作の方向性として定義してもよい。
 これらの判定条件や関数は、一般的な知見や実施の形態1にかかる第1推定部1について説明したようなPID制御など種々の方法で設定してもよいし、これらを組み合わせて設定してもよい。
 また、図25に示すように、目的量狙い値に狙いの範囲が存在する場合は、目的量と操作の相関関係から目的量の狙い範囲に対応する操作範囲を算出し、それを許容範囲ARとすることも可能である。目的量と操作の相関関係は、例えば、式[1]、式[2]及び式[9]などを使用することが可能である。
 また、実施の形態1及び2のように、第1の操作量推定値zを算出したのち、第1の操作量推定値zが含まれる許容範囲ARを決定して、出力してもよい。許容範囲ARは、例えば第1の操作量推定値zを中央値とする所定の範囲であってもよいし、下限値と上限値との間の任意の位置に第1の操作量推定値zが含まれる範囲であってもよい。 
 なお、許容範囲算出部6Aが許容範囲ARの決定に用いる所定の範囲、下限値及び上限値などのデータは、図示しない記憶部(例えば、図1に示す記憶部18など)に格納されてもよい。許容範囲算出部6Aは、必要に応じて、用いるデータを記憶部から読み出し、かつ、算出した許容範囲ARなどのデータを記憶部に書き込むことができる。
 次に、推定値決定部7について説明する。推定値決定部7は、第1推定部6から許容範囲ARを受け取り、第2推定部2から第2の操作量推定値z(図24のステップS32で推定される)を受け取る。そして、推定値決定部7は、第2の操作量推定値が有意に変化しているかを判定する。(図24のステップS33)。
 第2の操作量推定値zが有意に変化していると判定された場合、第2の操作量推定値zに基づいた操作が判定基準を満たすかを判定する(図16のステップS34)。具体的には、判定基準が操作量の範囲として規定された許容範囲として与えられる場合には、第2の操作量推定値zが許容範囲の下限値よりも大きく、かつ、上限値よりも小さいかを判定する。判定基準が操作量の変化量の範囲で規定される許容範囲として与えられる場合には、第2の操作量推定値zによる操作の変化量(つまり、現在の操作値との差分)が許容範囲の下限値よりも大きく、かつ、上限値よりも小さいかを判定する。判定基準が操作量の方向性(すなわち、正の値であるか負の値であるか)で規定される場合には、第2の操作推定値zによる操作量の変化(つまり、現在の操作値との差分)の方向性が判定基準の方向性と合致しているかどうかを判定する。
 なお、上記では第2推定部2の推定量が操作量であるものとして説明したが、必要に応じて、操作量の変化量を推定してもよい。この場合においても、推定した操作量の変化量が判定基準を満たすかを判定すればとよい。具体的には、判定基準が操作量の範囲として規定された許容範囲として与えられる場合には、推定した時点での操作量に推定した操作量の変化量を加算した値が許容範囲の下限値よりも大きく、かつ、上限値よりも小さいかを判定する。判定基準が操作量の変化量の範囲で規定される許容範囲として与えられる場合には、推定した操作量の変化量が許容範囲の下限値よりも大きく、かつ、上限値よりも小さいかを判定する。判定基準が操作量の変化の方向性(すなわち、正の値であるか負の値であるか)で規定される場合には、推定した操作量の変化の方向性が許容範囲ARの方向性と合致しているかどうかを判定する。
 また、第2推定部2の推定量として、操作量の変化の方向性を推定してもよい。具体的には、操作量を増加させる操作(プラスの方向性)であるか操作量を減少させる操作(マイナスの方向性)であるかを推定する。この場合においても、推定した操作量の変化の方向性が判定基準を満たすかを判定すればよい。具体的には、判定基準が操作量の範囲として規定された許容範囲として与えられた条件下で、推定した操作量の変化の方向性が許容範囲に近づく方向性であるかを判定すればよい。また、推定した操作量の変化の方向性が許容範囲の中心値に近づく方向性であるかを判定してもよい。判定基準が操作量の変化量の範囲で規定される許容範囲として与えられる場合、又は、判定基準が操作量の変化の方向性(すなわち、正の値であるか負の値であるか)で規定される場合には、推定した操作量の変化の方向性が、規定された許容範囲の方向性又は規定された操作量の変化の方向性と合致しているかを判定する。
 また、現在の操作値を判定に加えてもよい。すなわち、現在の操作値がすでに許容範囲ARに収まっている場合は、第2の操作量推定値zに基づいた操作は判定基準を満たさないと判断し、前回の操作のままで維持する方向に判定してもよい。これにより、不必要と考え得る操作を除外することができる。
 第2の操作量推定値zが許容範囲ARに収まる場合には、推定値決定部7は、オペレータの操作履歴によらない推定とオペレータの操作履歴に基づく推定とが許容し得る程度に近似しており、第2の操作量推定値zが適切な操作であると判断する。この場合、推定値決定部7は、第3の操作量推定値zとして、第2の操作量推定値zに基づいた値を出力する(図24のステップS35)。
 具体的には、第2の操作量推定値zが操作量として推定されている場合には、第2の操作量推定値zを第3の操作量推定値zとして出力する。第2の操作量推定値zが操作量の変化量として推定されている場合には、現在の操作量と推定した変化量とを合算した値を、第3の操作量推定値zとして出力する。第2の操作量推定値zが操作の方向性として推定されている場合には、許容範囲AR内の任意の値を第3の操作量推定値zとして出力する。しかし、これらは操作量推定値として出力する場合の一例であり、出力として求められている形式(操作変化量、方向性など)に適宜合わせて出力すればよい。
 これに対し、第2の操作量推定値zが許容範囲ARに収まらない場合には、推定値決定部7は、オペレータの操作履歴に基づいて推定した第2の操作量推定値zがオペレータの操作履歴によらずに推定した第1の操作量推定値zから許容し得ない程度に逸脱しており、不適切な値であるものと判断する。この場合、推定値決定部7は、第2の操作量推定値zに基づいて第3の操作量推定値zを決定することはせず、代わりに、第3の操作量推定値zを前回の推定での値のままで維持する(図24のステップS36)。これにより、不適切な操作を除外できる。
 しかし、これに限らず、許容範囲AR内の所定の値を第3の操作量推定値zとして出力してもよい。この場合には、操作の頻度を増やさずに許容範囲内の適切な操作を行って、目的量狙い値の実現に役立つと考えられる。
 なお、実施の形態2のように、目的量の差分Δyに基づいて現在の操作量を変化させるべきかどうかを判定し、その判定結果に基づいて、第3の操作量推定値zを前回の推定での値のままで維持するか、又は、許容範囲AR内の所定の値を第3の操作量推定値zとして出力するかを決定してもよい。
 次いで、2次元倒立振り子の実施例に基づいて、推定装置300の利点について説明する。図26に、本実施の形態にかかる許容範囲算出部6Aによる許容範囲ARの算出方法を記載する。操作台の速度の絶対値vと角度degに基づき、操作の範囲を指定する。なお、所定の将来時刻での速度vや角度degを予測して算出してもよい。
 図27に、2次元倒立振り子の実験を10回試行した結果を示す。図28に、図27に示す実験における指令値の変更回数を示す。実施の形態1と同様に、1回の試行は10秒とし、10秒間棒が倒れなければ○、10秒以内に棒が倒れれば×を表示している。
 図27及び図28に示される結果から分かるように、実施の形態3にかかる推定装置300によれば、全ての試行において棒が倒れずに制御に成功しており、かつ、指令値の変更回数(操作の回数)も実施の形態1と同じ程度であり、図29に示した通り、人の操作に好適に近似した出力ができていることが理解できる。これは、第2の操作量推定値zの出力において、第1の推定部6により算出される推定操作の許容範囲ARに収まるように操作を変更することで、人の操作の様に操作をしながら、好適な操作量を出力できているためと考えられる。
 以上、本構成によれば、オペレータの操作履歴に基づいて推定した第2の操作量推定値zを第3の操作量推定値zとして用いることが可能である。
 また、上述したように、オペレータの操作履歴に基づいて行われた不適切な推定結果が得られ、その結果、第2の操作量推定値zが許容範囲ARに収まらない場合でも、第3の操作量推定値zを維持又は所定の値とすることで、第3の操作量推定値zを適切と考え得る値として推定することが可能となる。
その他の実施の形態
 なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述の実施の形態において、2つの値の大小判定について説明したが、これは例示に過ぎず、2つの値の大小判定において2つの値が等しい場合については、必要に応じて取り扱ってもよい。すなわち、第1の値が第2の値以上であるか又は第2の値よりも小さいかの判定と、第1の値が第2の値よりも大きいか又は第2の値以下であるかの判定とについては、必要に応じていずれを採用してもよい。第1の値が第2の値以下であるか又は第2の値よりも大きいかの判定と、第1の値が第2の値よりも小さいか又は第2の値以上であるかの判定については、いずれを採用してもよい。換言すれば、2つの値の大小判定を行って2つの判定結果を得る場合、2つの値が等しい場合については、必要に応じて2つの判定結果のいずれに含めてもよい。
 上述の実施の形態では、本発明を主にハードウェアの構成として説明したが、これに限定されるものではなく、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。この場合、コンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
 以上、実施の形態を参照して本願発明を説明したが、本願発明は上記によって限定されるものではない。本願発明の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2020年11月2日に出願された日本出願特願2020-183556を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 1 第1推定部
 2 第2推定部
 3 推定値決定部
 4 第1推定部
 5 推定値決定部
 6 第1推定部
 7 推定値決定部
 4A 目的量予測器
 4B 差分算出部
 6A 許容範囲算出部
 10 コンピュータ
 11 CPU
 12 ROM
 13 RAM
 14 バス
 15 入出力インターフェイス
 16 入力部
 17 出力部
 18 記憶部
 19 通信部
 20 ドライブ
 20A      磁気ディスク
 20B      光ディスク
 20C      フレキシブルディスク
 20D 半導体メモリ
 21 GPU
 31 操作台
 32 棒
 100 推定装置
 200 推定装置
 300 推定装置
 1000 対象システム

Claims (10)

  1.  制御対象のオペレータの操作履歴によらずに、前記制御対象の出力である目的量を狙い値とするための操作量の判定を行うための判定情報を推定する第1推定部と、
     前記制御対象のオペレータの操作履歴に基づいて、前記オペレータの操作を模倣した第2の操作量推定値を推定する第2推定部と、
     前記判定情報及び前記第2の操作量推定値に基づいて、前記制御対象の目的量を狙い値とするための第3の操作量推定値を決定する推定値決定部と、を備える、
     推定装置。
  2.  前記判定情報の推定、前記第2の操作量推定値の推定及び前記第3の操作量推定値の決定を行うサイクルが繰り返し行われる、
     請求項1に記載の推定装置。
  3.  前記第1推定部は、前記制御対象のオペレータの操作履歴によらずに、前記制御対象の出力である目的量を狙い値とするための操作量である第1の操作量推定値を推定し、
     前記推定値決定部は、
     基準となる操作量に対して、前記第1の操作量推定値及び前記第2の操作量推定値が変化した場合に、前記第1の操作量推定値を最新の前記第3の操作量推定値として出力し、
     前記基準となる操作量に対して、前記第1の操作量推定値又は前記第2の操作量推定値が変化しなかった場合に、前回のサイクルで決定された前記第3の操作量推定値を前記最新の第3の操作量推定値として出力する、
     請求項2に記載の推定装置。
  4.  前記第1推定部は、推定を行う時点での前記制御対象の目的量と、前記狙い値と、の差分を算出し、
     前記推定値決定部は、
      前記基準となる操作量に対して前記第1の操作量推定値が変化し、かつ、前記基準となる操作量に対して前記第2の操作量推定値が変化しなかった場合に、前記差分が所定の範囲に収まるかを判定し、
      前記差分が所定の範囲に収まらない場合には、前記第3の操作量推定値として前記第1の操作量推定値を出力し、
      前記差分が前記所定の範囲に収まる場合には、前回のサイクルで決定された前記第3の操作量推定値を前記最新の第3の操作量推定値として出力する、
     請求項3に記載の推定装置。
  5.  前記第1推定部は、推定を行う時点での前記制御対象の目的量と、前記狙い値と、から、前記第2の操作量推定値の許容範囲を前記判定情報として算出し、
     前記推定値決定部は、
      基準となる操作量に対して、前記第2の操作量推定値が変化した場合に、前記第2の操作量推定値が前記許容範囲に収まるかを判定し、
       前記第2の操作量推定値が前記許容範囲に収まらない場合には、前記第2の操作量推定値を最新の前記第3の操作量推定値として出力し、
       前記第2の操作量推定値が前記許容範囲に収まる場合には、前回のサイクルで決定された前記第3の操作量推定値を最新の前記第3の操作量推定値として出力する、
     請求項2に記載の推定装置。
  6.  前記許容範囲は、前記第2の操作量推定値の下限値と上限値とで規定される範囲であり、
     前記推定値決定部は、前記第2の操作量推定値が前記下限値よりも小さい場合、又は、前記上限値よりも大きい場合に、前記第2の操作量推定値が前記許容範囲に収まらないものと判定する、
     請求項5に記載の推定装置。
  7.  前記許容範囲は、前記第2の操作量推定値の変化量の下限値及び上限値で規定される範囲として規定される範囲であり、
     前記推定値決定部は、前記第2の操作量推定値が前記下限値よりも小さい場合、又は、前記上限値よりも大きい場合に、前記第2の操作量推定値が前記許容範囲に収まらないものと判定する、
     請求項5に記載の推定装置。
  8.  前記許容範囲は、前記第2の操作量推定値の変化の方向として設定され、
     前記推定値決定部は、前記第2の操作量推定値の変化の方向が、前記許容範囲で規定される方向と異なる場合に、前記前記第2の操作量推定値が前記許容範囲に収まらないものと判定する、
     請求項5に記載の推定装置。
  9.  制御対象のオペレータの操作履歴によらずに、前記制御対象の出力である目的量を狙い値とするための操作量の判定を行うための判定情報を推定し、
     前記制御対象のオペレータの操作履歴に基づいて、前記オペレータの操作を模倣した第2の操作量推定値を推定し、
     前記判定情報及び前記第2の操作量推定値に基づいて、前記制御対象の目的量を狙い値とするための第3の操作量推定値を決定する、
     推定方法。
  10.  制御対象のオペレータの操作履歴によらずに、前記制御対象の出力である目的量を狙い値とするための操作量の判定を行うための判定情報を推定する処理と、
     前記制御対象のオペレータの操作履歴に基づいて、前記オペレータの操作を模倣した第2の操作量推定値を推定する処理と、
     前記判定情報及び前記第2の操作量推定値に基づいて、前記制御対象の目的量を狙い値とするための第3の操作量推定値を決定する処理と、をコンピュータに実行させる、
     プログラムが格納された非一時的なコンピュータ可読媒体。
PCT/JP2021/030250 2020-11-02 2021-08-18 推定装置、推定方法及びプログラムが格納された非一時的なコンピュータ可読媒体 WO2022091530A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020183556 2020-11-02
JP2020-183556 2020-11-02

Publications (1)

Publication Number Publication Date
WO2022091530A1 true WO2022091530A1 (ja) 2022-05-05

Family

ID=81382242

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/030250 WO2022091530A1 (ja) 2020-11-02 2021-08-18 推定装置、推定方法及びプログラムが格納された非一時的なコンピュータ可読媒体

Country Status (1)

Country Link
WO (1) WO2022091530A1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03166601A (ja) * 1989-11-27 1991-07-18 Hitachi Ltd 制御支援装置
WO2015118686A1 (ja) * 2014-02-10 2015-08-13 三菱電機株式会社 階層型ニューラルネットワーク装置、判別器学習方法および判別方法
WO2016047118A1 (ja) * 2014-09-26 2016-03-31 日本電気株式会社 モデル評価装置、モデル評価方法、及び、プログラム記録媒体
JP2019159675A (ja) * 2018-03-12 2019-09-19 三菱重工業株式会社 プラント運転支援装置、プラント運転支援方法、およびプラント運転支援プログラム
JP2019159902A (ja) * 2018-03-14 2019-09-19 オムロン株式会社 異常検知システム、サポート装置およびモデル生成方法
JP2020166421A (ja) * 2019-03-28 2020-10-08 日立造船株式会社 情報処理装置、情報処理方法、情報処理プログラム、およびゴミ焼却プラント
WO2020203651A1 (ja) * 2019-03-29 2020-10-08 国立大学法人筑波大学 皮膚疾患解析プログラム、皮膚疾患解析方法、皮膚疾患解析装置及び皮膚疾患解析システム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03166601A (ja) * 1989-11-27 1991-07-18 Hitachi Ltd 制御支援装置
WO2015118686A1 (ja) * 2014-02-10 2015-08-13 三菱電機株式会社 階層型ニューラルネットワーク装置、判別器学習方法および判別方法
WO2016047118A1 (ja) * 2014-09-26 2016-03-31 日本電気株式会社 モデル評価装置、モデル評価方法、及び、プログラム記録媒体
JP2019159675A (ja) * 2018-03-12 2019-09-19 三菱重工業株式会社 プラント運転支援装置、プラント運転支援方法、およびプラント運転支援プログラム
JP2019159902A (ja) * 2018-03-14 2019-09-19 オムロン株式会社 異常検知システム、サポート装置およびモデル生成方法
JP2020166421A (ja) * 2019-03-28 2020-10-08 日立造船株式会社 情報処理装置、情報処理方法、情報処理プログラム、およびゴミ焼却プラント
WO2020203651A1 (ja) * 2019-03-29 2020-10-08 国立大学法人筑波大学 皮膚疾患解析プログラム、皮膚疾患解析方法、皮膚疾患解析装置及び皮膚疾患解析システム

Similar Documents

Publication Publication Date Title
US11574192B2 (en) Controller training based on historical data
JP4952025B2 (ja) 運転制御方法,運転制御装置及び運転制御システム
US10353351B2 (en) Machine learning system and motor control system having function of automatically adjusting parameter
US10796226B2 (en) Laser processing apparatus and machine learning device
JP5345551B2 (ja) 計算機支援による技術システムの開ループ制御および/または閉ループ制御のための方法
US10576628B2 (en) Controller and machine learning device
CN110688920B (zh) 一种无人驾驶控制方法、装置及服务器
CN113874865A (zh) 借助于贝叶斯优化方法确定技术系统的调节策略的模型参数的方法和装置
CN108803348B (zh) 一种pid参数的优化方法及pid参数的优化装置
US20030028267A1 (en) Method and system for controlling setpoints of manipulated variables for process optimization under constraint of process-limiting variables
JP6721121B2 (ja) 制御カスタマイズシステム、制御カスタマイズ方法および制御カスタマイズプログラム
WO2022091530A1 (ja) 推定装置、推定方法及びプログラムが格納された非一時的なコンピュータ可読媒体
US10372089B2 (en) Predicted value shaping system, control system, predicted value shaping method, control method, and predicted value shaping program
WO2021186500A1 (ja) 学習装置、学習方法、及び、記録媒体
US11556111B2 (en) Human-plausible automated control of an industrial process
CN110893515B (zh) 加工条件调整装置以及机器学习装置
Nguyen-Tuong et al. Sparse online model learning for robot control with support vector regression
JPH10254504A (ja) 自律的制御方法および制御システム
CN110705159A (zh) 一种热源模型参数的求解方法、装置、设备及存储介质
JPH09174128A (ja) 圧延材の形状制御方法
Rix et al. Models of human learning applicable to the vehicle steering task
Ruan et al. Human operator decision support for highly transient industrial processes: a reinforcement learning approach
JP2000054032A (ja) 焼鈍炉燃焼制御装置
KR20200010972A (ko) 자동 제어 인공지능 장치 및 제어 함수의 업데이트 방법
WO2023162124A1 (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: 21885651

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21885651

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP