Simulator using a neural network

Abstract: A simulator includes a modelling simulate section (120) in which properties of an apparatus to be controlled are modelled. In addition, this simulator includes a neural network (130) in which learning is performed depending on a real control quantity for the apparatus to be controlled. A correction value relative to a simulation control quantity for the modelling simulate section (120) is calculated in response to a process quantity output from a controlling unit (10) into the neural network (120). Thereafter, the simulation control quantity is corrected depending on the calculated correction value. In practice, learning is performed in the neural network (130) by changing synapse loads (T₁₀, T₁₁, ---, T 1n ) based on a real control quantity for the apparatus to be controlled. As a result of the foregoing correction, the simulator can simulate the real apparatus more accurately.

Description: The present invention relates to a simulator for simulating an object to be controlled such as a plant or the like and a controlling unit. More particularly, the present invention relates to a simulator for reproducing operations to be performed by a real at a higher accuracy. A simulator is used for simulating operations to be performed by the real machine when a large-sized machine is designed and adjusted, when various kinds of processes are researched and tested, or when an operator of a real machine with danger and difficulty is trained. To facilitate understanding of the present invention, a typical example of a conventional simulator will be described below with reference to Fig. 1 wherein it is assumed that the simulator is used for a water supply control process in a power station. Fig. 1 is a block diagram of the conventional simulator which is for a water supply control process. An output from a controlling unit 10 is input into a simulator 20. The controlling unit 10 is constructed of a comparing/calculating circuit 11 and a processing/calculating circuit 12. As is apparent from the drawing, a target value a of an object to be controlled and an output from the simulator 20 are input into the comparing/calculating circuit 11. In response to the input signals, the comparing/calculating circuit 11 calculates a differential control signal f . This differential control signal f is specifically processed in the processing/calculating circuit 12, and thereafter, it is input into the simulator 20 in the form of a processed quantity g . Fig. 2 is a block diagram which schematically shows the structure of the simulator 20, particularly illustrating a simulating performance of the same. As shown in the drawing, the simulator 20 has processing delay characteristic 21, pump delay characteristic 22 and pump rotational speed vs discharge flow rate characteristic 23. A simulation control quantity d is calculated in the simulator 20 based on the process quantity g , and thereafter, it is output therefrom. In case that a modelled simulator as described above is used, an output signal from the controlling unit 10 is input to the simulator 20 in the form of a process quantity g . The controlling unit 10 operates so as to cause the simulation control quantity d fed back from the simulator 20 to coincide with the target value a . Each object to be controlled which is simulated by the simulator 20 is modelled with respect to the processing delay characteristic 21, the pump delay characteristic 22 and the pump rotational speed vs discharge flow rate characteristic 23. Properties of the resultant model are previously determined before a real machine is designed. In practice, however, the simulator 20 does not completely simulate the properties of the real machine. Thus, there often arises a malfunction that the properties of each model do not coincide with those of the real machine when water supply control is simulated with the aid of the controlling unit 10 and the simulator 20. For example, a case that a plant is controlled is taken into consideration. In this case, each actuator has not only delay but also back-lash, and moreover, there arises a problem that properties of the actuator in the opening direction differ from those in the closing direction. Further, since pump properties of each modeled do not completely coincide with those of the real machine, there arises another problem that a flow rate of supply water of the model differs from that of the real machine. Fig. 3 is a graph which shows characteristic curves representing pump NQ characteristics, particularly illustrating a difference between designed values and practically measured values. In the drawing, a characteristic curve A represents designed values and a characteristic curve B represents practically measured values. It is apparent from the drawing that the designed values of the pump NQ characteristics differ considerably from the practically measured values of the same. Due to the difference as mentioned above, the simulator 20 can not completely simulate the real machine. with respect to an operation training simulator which is constructed such that operations of a controlling unit are performed with the aid of a simulation circuit or a software wherein merely an operation panel of a model is designed in the same manner as that of a real machine, there appears a problem that each operation training can not correctly be achieved. As mentioned above, a model representing properties of a real machine is previously prepared for the conventional simulator and each simulating operation is performed with the simulator using the foregoing model. Thus, there often arises a malfunction that the properties of the model do not coincide with those of the real machine. Use of a neural network to control a machine is known by EP 0432267. It does not disclose a simulator for simulating conditions without operating the machine. Use of neural network at a process simulator is known from JP 64-148673. It does not disclose a modelling simulate section being supplemented by a neural network. The present invention has been made in consideration of the aforementioned background. An object of the present invention is to provide a simulator which assures that operations of a real machine can be simulated at a higher accuracy. The present invention provides a simulator using a neural network wherein an output from a modelling simulate section for modelling properties of a real machine is corrected by the neural network. Learning is performed in the neural network based on a control quantity given from the real machine. Each learning is achieved in accordance with a learning algorithm such as a back-propagation algorithm or the like by correcting and fixing synapse loads of the neural network, in order to simulate the properties of the real machine at a higher accuracy. Fig. 1 is a block diagram of the conventional simulator which is used for a water supply control process. Fig. 2 is a block diagram which shows the properties of the conventional simulator. Fig. 3 is a graph which shows pump NQ characteristic diagrams, particularly illustrating a difference between designed values and actually measured values. Fig. 4 is a block diagram which schematically shows the structure of a simulator in accordance with an embodiment of the present invention. Fig. 5 is an illustrative view which schematically shows the structure of a neural network which can process time series signals. Fig. 6 is an illustrative view which schematically shows the structure of a neuron. Fig. 7 is a block diagram which schematically shows the structure of a simulator in accordance with other embodiment of the present invention. Fig. 8 is an illustrative view which schematically shows the structure of a neural network 130a used for a simulator 100a shown in Fig. 7. Fig. 9 is a block diagram which schematically shows the structure of a simulator in accordance with another embodiment of the present invention. Fig. 10 is an illustrative view which schematically shows the structure of a neural network 130b used for a simulator 100b shown in Fig. 9. Fig. 11 to Fig. 16 are block diagrams each of which schematically shows the structure of a simulator in accordance with further another embodiment of the present invention. Fig. 17 is a block diagram which shows a simulator system employable for, e.g., a water supply controlling apparatus including a plurality of objects to be controlled. Fig. 18 is a flowchart which schematically shows a series of operations to be performed by the simulator shown in Fig. 4 with the aid of a software. The present invention will now be described below hereinafter with reference to the accompanying drawings which illustrate preferred embodiments thereof. Fig. 4 is a block diagram which schematically shows the structure of a simulator in accordance with an embodiment of the present invention. Same parts or components as those in Fig. 1 are designated by the same reference numerals, and repeated description on them is neglected for simplification. A simulator 100 is constructed of a data recorder 110 in which control quantities of a real machine are recorded, a modelling simulating section 120 having the same structure as the simulator 20 shown in Fig. 2, a neural network 130, an adder 140 and an error calculator 150. A process quantity signal g output from a processing/calculating circuit 12 of a controlling unit 10 is input into the modelling simulating section 120 and the neural network 130. An output signal h from the modelling simulation section 120 and an output signal i from the neural network 130 are input into the adder 140 in which they are processed by adding, and thereafter, a simulated control quantity signal d is output from the adder 140. The simulated control quantity signal d is input into the error calculator 150, while it is fed back to the controlling unit 10. The error calculator 150 calculates an error of the simulated control quantity signal d deviating from a control quantity b of a real machine stored in the data recorder 110 and then outputs a learning signal e therefrom. The learning signal e is input into the neural network 130 in which it is used as a signal for executing a back-propagation algorithm to be described later. Fig. 5 is an illustrative view which schematically shows the structure of the neural network 130 in which time series signals can be processed. As shown in the drawing, the neural network 130 is constructed of a plurality of differentiating circuits 131 for sequentially differentiating the process quantity g input thereinto, a plurality of neurons 132 and a plurality of synapse connections 133 by way of which the differentiating circuits 131 and neurons 132 are connected. In the drawings, reference character g 0 designates a zero-dimension differentiated value of the processed quantity g (equal to the processed quantity g ), reference character g 1 designates a one-dimension differentiated value of the same, and reference character g n designates a n-dimension differentiated value of the same. Fig. 6 is an illustrative view which schematically shows the structure of each neuron 132 in the neural network 130. In the drawing, T 10 , T 11 , ---, T 1n designate synapse loads, respectively. Next, an operation of the simulator as shown in Fig. 4, Fig. 5 and Fig. 6 will be described below. First, when a target value a of the control quantity is input into the controlling unit 10, the controlling unit 10 outputs a process quantity g . This process quantity g is then input into the modelling simulate section 120 and the neural network 130 in the simulator 100. The process quantity g input into the modelling simulate section 120 is processed based on the properties of a modelled object to be controlled, and thereafter, a signal h is output from the modelling simulate section 120. On the other hand, the properties of a real machine are reflected in the neural network 130 by learning the properties of the real machine, as will be described later. The process quantity g is processed in the neural network 130 depending on the properties of the real machine, and thereafter, a signal i is output from the neural network 130. This signal i and the output signal h from the modelling simulate section 120 are added to each other in the adder 140, whereby the properties of the real machine are properly corrected. The thus corrected signal is output in the form of a simulation control quantity d . In addition, this simulation control quantity d is fed back to the controlling unit 10, and then, the latter controls the process quantity g that is an output signal from the controlling unit 10. Next, a mode of learning the properties of the real machine in the neural network 130 will be described below. A control quantity b for the real machine is previously stored in the data recorder 110. The control quantity b for the real machine stored in the data recorder 110 and a simulation control quantity for the same are input into the error calculator 150 during the simulation. A differential signal of the former from the latter is learnt as a learning signal e in the error calculator 150 with reference to the control quantity b for the real machine processed in the neural network 130. This learning is achieved in accordance with a back-propagation algorithm or the like. Values of the synapse loads T 10 , T 11 , ---, T 1n are preset such that an output from the neural network 130 becomes zero during the initial period of learning. The foregoing presetting causes the output generated by the simulation in the modelling simulation section 120 to be output as a simulation control quantity d therefrom as it is. An error of the simulation control quantity d deviating from the control quantity b for the real machine is calculated in the error calculator 150 each time learning is performed. Then, this error is input into the neural network 130 in the form of a leaning signal e . In response to the learning signal e , the values of the synapse loads T 10 , T 11 , ---, T 1n of the neurons 132 are updated in the neural network 130. As the learning is repeatedly performed, the values of the synapse loads T 10 , T 11 , ---, T 1n of the neurons 132 are renewed with the result that the neural network 130 outputs a signal i such that the learning signal e becomes gradually small. After the learning is sufficiently achieved by repetition as mentioned above, the values of the synapse loads T 10 , T 11 , ---, T 1n are kept fixed. As learning is repeatedly performed in the neural network 130 using the control quantity of the real machine in the above-described manner, an output h from the modelling simulation section 120 is corrected. Therefore, the output h is involved by the properties of the real machine. Consequently, simulation can be achieved at a higher accuracy. The object to be controlled is modelled in the modelling simulation section 120 based on the design data. Thus, even though the data on the control quantity b of the real machine stored in the data recorder 110 are not present over the whole control range, uncontinuity on the simulation model does not occur. Thus, simulation can be accomplished over the whole control range. In the aforementioned embodiment, data on the control quantity of the real machine are previously stored in the data recorder 110 so that learning is performed based on the stored data. Alternatively, data on the control quantity for the real machine may be input into the error calculator 150 on the real time basis for the same purpose. As is apparent from the above description, the simulator 100 simulates the real machine more accurately by correcting the output from the modelling simulation section 120 in the neural network 130. In addition, since the output from the modelling simulate section 120 is corrected in the neural network 130, this makes it possible to perform simulation even when the data on the control quantity of the real machine are not present over the whole operation range. Fig. 7 is a block diagram which schematically shows the structure of a simulator in accordance with other embodiment of the present invention. Same or similar portions to those shown in Fig. 4 are represented by the same reference numerals, and repeated description on them is neglected for simplification. In this embodiment, a simulator 100a is constructed such that not only a control quantity b for a real machine but also a process quantity c for the same are stored in a data recorder 110a. Thus, a process quantity g output from the controlling unit 10 and the process quantity c for the real machine are input into a neural network 130a having two input terminals. Learning is performed in the neural network 130 based on the control quantity b for the real machine. Fig. 8 is an illustrative view which schematically shows the structure of the neural network 130a for the simulator 100a shown in Fig. 7. As is apparent from Fig. 8, in contrast with the neural network 130 shown in Fig. 5, the neural network 130 is additionally provided with a shift switch 134 for shifting one input signal to other one and vice versa. In the simulator according to the embodiment shown in Fig. 7, when learning is performed in the neural network 130a, the process quantity c for the real machine is selected by the shift switch 134. Learning is executed in the neural network 130a based on the input process quantity c . After learning is repeatedly executed by a predetermined number of times, the process quantity g output from the controlling unit 10 is selected by the shift switch 134 again. Subsequently, learning is executed in the neural network 130a based on the input process quantity g . In this manner, learning can be achieved at a high speed so as to allow the neural network 130a to execute learning. Fig. 9 is a block diagram which schematically shows the structure of a simulator in accordance with another embodiment of the present invention. Same parts or components as those shown in Fig. 4 are represented by same reference numerals, and repeated description of them is neglected for simplification. In a simulator 100b according to this embodiment, not only a process quantity g of the controlling unit 10 but also an output signal h from a modelling simulate section 120 are input into a neural network 130b having two input terminals. Fig. 10 is an illustrative view which schematically shows the structure of the neural network 130b used for the simulator 100b shown in Fig. 9. Same portions as those constituting the neural network 130 shown in Fig. 5 are represented by the same reference numerals, and repeated description of them is neglected for simplification. The process quantity g of the controlling unit 10 and the output signal h from the modelling simulate section 120 are input into the neural network 130b. A zero-dimension differentiated value to a n-dimension differentiated value are calculated by a plurality of differentiating circuits 131, and thereafter, the calculated values are input into a plurality of neurons 132. In Fig. 10, reference character h 0 designates a zero-dimension differentiated value of the output signal h from the modelling simulating section 120 (corresponding to the output signal h ), reference character h 1 designates a one-dimension differentiated value of the same, and reference character h n designates a n-dimension differentiated value of the same. In this manner, with the simulator 100b shown in Fig. 9, since the neural network 130b operates based on an output from the modelling simulate section 120 in addition to the process quantity g that is an output signal from the controlling unit 10, a learning accuracy and a learning speed can be improved. Alternatively, the simulator 100b may be provided with a shift switch for shifting the process quantity g that is an input signal from the controlling unit 10 to a process quantity c for the real machine and vice versa as shown in Fig. 7, in order to effect the shifting in that way in the course of learning. Fig. 11 is a block diagram which schematically shows the structure of a simulator in accordance with further another embodiment of the present invention, same or similar portions as those constituting the simulator shown in Fig. 4 are represented by the same reference numerals, and repeated description on them is neglected for simplification. In a simulator 100c constructed according to this embodiment, a signal to be input into the neural network 130 for the simulator 100 shown in Fig. 4 is not prepared in the form of a process quantity g that is an output signal from the controlling unit 10 but in the form of an output signal h from a modelling simulate section 120. Fig. 12 is a block diagram which schematically shows the structure of a simulator in accordance with further another embodiment of the present invention. Same portions as those shown in Fig. 4 are represented by the same reference numerals, and repeated description on them is neglected for simplification. In contrast with the simulator 100 constructed in accordance with the embodiment of the present invention as shown in Fig. 4 wherein the adder 140 is disposed on the output side of the modelling simulate section 120, a simulator 100d is provided with an adder 140 on the input side of a modelling simulate section 120. An output from the modelling simulating section 120 is input into an input terminal of a neural network 130. An output signal j from the neural network and a process quantity g that is an output signal from the controlling unit 10 are added to each other in the adder 140, and the result from the addition in the adder 140 is then output to the modelling simulate section 120. In this embodiment, the neutral network 130 carries out feedback control for the modelling simulate section 120. The data stored in a data recorder 110 are data each representing a control quantity for the real machine. Fig. 13 is a block diagram which schematically shows the structure of a simulator in accordance with further another embodiment of the present invention. Same portions as those shown in Fig. 12 are represented by the same reference numerals, and repeated description on them is neglected for simplification. In a simulator 100e constructed in accordance with the embodiment of the present invention, the neural network 130d in the simulator 100d shown in Fig. 12 is modified to a neural network 130e including two input terminals in the same manner as shown in Fig. 8 so that a control signal b for the real machine is input into one of the two input terminals. When learning is performed in the neural network 130e, the control quantity b for the real machine is selectively used as an input. After learning is repeatedly performed in the neural network 130e by a predetermined number of times, an output from the neural network 130e is selectively used as an input for a modelling simulate section 120. Fig. 14 is a block diagram which schematically shown the structure of a simulator in accordance with further another embodiment of the present invention. Same portions as those shown in Fig. 12 are represented by the same reference numeral, and repeated description on them is neglected for simplification. In a simulator 130 constructed in accordance with the embodiment of the present invention, the neural network 130 in the simulator 100d shown in Fig. 12 is modified to a neural network 130f including two input terminals in the same manner as that shown in Fig. 12 so that a process quantity g that is an output signal from the controlling unit 10 is input into one of the two input terminals. Fig. 15 is a block diagram which schematically shows the structure of a simulator in accordance with further another embodiment of the present invention. Same portions as those shown in Fig. 4 are represented by the same reference numerals, and repeated description on them is neglected for simplification. In a simulator 100g constructed in accordance with the embodiment of the present invention, a process quantity c for the real machine is stored in a data recorder 110g. The process quantity c for the real machine and a process quantity g output from the controlling unit 10 are input into an error calculator 150, and the differential signal between the foregoing quantities is input into a neural network 130 as a learning signal e . Specifically, in the simulator constructed according to the embodiment of the present invention, learning is performed in the neural network 130 such that the process quantity g from the control unit 10 is equalized to the process quantity c for the real machine in order to properly correct operations of modelling simulate section 120. Fig. 16 is a block diagram which schematically shows the structure of a simulator in accordance with further another embodiment of the present invention. Same portions as those constituting the simulator shown in Fig. 4 are represented by the same reference numerals, and repeated description on them is neglected for simplification. A simulator 100h shown in the drawing is constructed such that the modelling simulate section 120 and the adder 140 shown in Fig. 4 are removed therefrom and simulation is achieved merely by a neural network 130h including two input terminals similar to that shown in Fig 8. A control quantity b and a process quantity c for the real machine are stored in a data recorder 110h. When learning is performed in a neural network 130h, the process quantity c for the real machine is selectively used as an input signal. After completion of the learning, an output signal i is output from the neural network 130h as a simulation control quantity d . A difference between the control quantity b for the real machine stored in the data recorder 110h and the simulation control quantity d is processed in an error calculator 150. The signal representing the foregoing difference is fed to the neural network 130h as a learning signal e . Learning is performed in the neural network 130h in accordance with a learning algorithm such as a back-propagation algorithm or the like in such a manner as to reduce the learning signal e . In this embodiment, the simulator 100h does not require such a modelling simulate section as the modelling simulate section 120 shown in Fig. 4. Thus, a cost required for constructing the simulator 100h can be reduced, and moreover, a process for designing the modelling simulate section 120 can be eliminated. Fig. 17 is a block diagram which shows a simulator system employable for, e.g., a water supply controlling apparatus including a plurality of objects to be controlled. This simulator system is constructed of a motor driven pump simulator 210, a turbine driven water supply pump simulator 220, a water supply tube boiler simulator 230 and a controlling unit 200 for the simulators as mentioned above. It should be noted that each of the motor driven pump simulator 210, the turbine driven pump simulator 220 and the water supply tube boiler simulator 230 is constructed by one of the simulators in accordance with the aforementioned embodiments. In this embodiment, the simulator system is constructed by three simulators. Alternatively, it may be constructed by four or more simulators. In addition, a part of the simulator system may be constructed by a hardware for training operators using an operation panel. In this case, the remaining part of the simulator system including the controlling unit and the simulators is constructed by a software which operates with the aid of a computer. Fig. 18 is a flowchart which shows a series of operations to be performed by the simulator shown in Fig. 4 wherein it is constructed by a software. First, a target value a and simulation control quantity d are input into the simulator (step S1). Next, the target value a is compared with the simulation control quantity d to calculate a control deviation f (step S2). A process quantity g is determined based on the control deviation f (step S3). Calculation is performed based on the process quantity g in accordance with a model representing preset properties. On completion of the calculation, a result h can be obtained (step S4). In case that learning is effected (step S5), a control quantity b for the real machine is compared with a simulation control quantity d to calculate an error e (step S6). Learning is performed in the neural network 130 in accordance with an algorithm such as a back-propagation algorithm or the like using the foregoing error e (step S7). Subsequently, a correction value i is calculated in the neural network 130 with reference to the process quantity g (step S8), and the correction value i is then added to the calculation result h (step S9). On the other hand, in case that no learning is effected (step S5), the program jumps directly to step S8 at which it is executed again. Subsequently, simulation is repeatedly executed by performing the steps S1 to S9 in the aforementioned manner. Inputs g , c and h are sequentially differentiated in a plurality of differentiating circuits 131 of the neural network as shown in Fig. 5, Fig. 8 and Fig. 10. Alternatively, delay circuits may be substituted for the differentiating circuits. In addition, the aforementioned inputs may sequentially be sampled in sampling circuits. As described above, the simulators are able to simulate real machine more accurately by correcting outputs from the modeling simulate section 120. In addition, since each output from the modelling simulate section is corrected in the neural network, it is possible to accomplish simulation even in case that data representing the real machine are not present over the whole operation range. In case that simulation is performed in the neural network instead of the modelling simulate section, it is possible to accomplish simulation without any necessity for preparing a model.

Claims: A simulator (100) for simulating properties of an apparatus to be controlled wherein said simulator includes a modelling simulate section (120) from which a first simulation control quantity (h) is output by calculating a process quantity from a controlling unit (10) based on a property model in which properties of said apparatus to be controlled are preset, characterized in that the simulator further comprises a neural network (130) in which learning is performed depending on a real control quantity for said apparatus to be controlled, and subsidiary calculation for the modelling simulate section (120), said neural network (130) calculating a correction value (i) relative to said first simulation control quantity from said modelling simulation section (120) based on said process quantity; and means (140) for adding said correction value (i) to said first simulation control quantity (h); and for outputting a resultant quantity as the second simulation quantity (d). A simulator according to claim 1, wherein the simulator further comprises adding means (140) including two input terminals and disposed at the preceding stage of said modelling simulate section (120), one of said input terminals being such that said process quantity from said controlling unit (10) is input thereinto and the other of said two input terminals being such that said correction value is input thereinto so as to allow a result of addition to be output to said modelling simulate section (120). A simulator according to claim 1 or 2 further comprising error calculating means (150) for calculating an error of said real control quantity deviating from said simulating control quantity and for feeding said error to said neural network (130a). A simulator according to claim 3, wherein a real process quantity is input into the neural network. A simulator according to claim 4, wherein said simulator further includes selecting means (134) for selecting said real process quantity during an initial period of learning performed in said neural network (130a), and thereafter, selecting said process quantity from said controlling unit (10) so as to allow said process quantity from said controlling unit (10) to be input into said neural network (130a). A simulator system including a plurality of simulators (210, 220 and 230) according to any one of claims 1 to 5, and a controlling unit (200) for controlling said plurality of simulators (210, 220, 230). A simulator according to claim 3, wherein said simulator further includes; storing means (110) for storing said real control quantity for said apparatus to be controlled on a time series basis. A simulator as claimed in claim 6, wherein synapse loads (T 10 , T 11 , ---, T ln ) of respective neurons (132) in said neural network (130) are changed in accordance with a back-propagation algorithm in response to said learning signal. A method of simulating properties of an apparatus to be controlled wherein said method includes a step (S4) of outputting a first simulation control quantity (h) by calculating a process quantity output from a controlling unit (10) based on a property model in which said properties of said apparatus to be controlled are preset, a step (S8) of calculating a correction value (i) relative to said first simulation control quantity by calculating said process quantity from said controlling unit (10) by using a neural network (130) in which learning is performed depending on a real control quantity for said apparatus to be controlled, and a step (S9) of outputting a second simulation control quantity (d) corrected by said correction value. A method as claimed in claim 9, characterized in that said method further includes a step (S7) of changing synapse load (T 10 , T 11 , ---, T ln ) of respective neurons (132) in said neural network (130) in accordance with a back-propagation algorithm in response to a learning signal.

Inventors: ONO KAZUTERU, YANIGISAWA TADAHIRO, ONO, KAZUTERU, YANIGISAWA, TADAHIRO, Ono, Kazuteru, c/o Intellectual Property Div., Yanigisawa, Tadahiro, c/o Intellectual Pty Div.
Applicants: TOSHIBA KK, KABUSHIKI KAISHA TOSHIBA
Application year: 1992
Main classification: G05B23
IPC codes: G05B13, G05B17