WO2024084784A1 - プラント制御システム及びプラント制御方法 - Google Patents

プラント制御システム及びプラント制御方法 Download PDF

Info

Publication number
WO2024084784A1
WO2024084784A1 PCT/JP2023/029069 JP2023029069W WO2024084784A1 WO 2024084784 A1 WO2024084784 A1 WO 2024084784A1 JP 2023029069 W JP2023029069 W JP 2023029069W WO 2024084784 A1 WO2024084784 A1 WO 2024084784A1
Authority
WO
WIPO (PCT)
Prior art keywords
plant
action
value
state
learning
Prior art date
Application number
PCT/JP2023/029069
Other languages
English (en)
French (fr)
Inventor
真琴 平野
勇也 徳田
喜治 林
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Publication of WO2024084784A1 publication Critical patent/WO2024084784A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric

Definitions

  • the present invention relates to a plant control system and a plant control method.
  • reinforcement learning an AI technology
  • Reinforcement learning learns optimal control laws by searching through a trial-and-error method using simulators that mimic the controlled object.
  • the optimal control laws are those that quickly stabilize the process, in other words, a control model that can output a manipulated variable that converges the plant signal value, which is the controlled quantity, to the target value.
  • a value is defined for each manipulated variable, and by updating it using a formula called the value update formula, it is possible to learn the optimal control law.
  • the value here is a number that represents how effective a certain manipulated variable is in achieving the goal of converging the controlled variable to the target value. With the goal of converging the controlled variable to the target value, reinforcement learning is able to find the optimal operation based on the aforementioned value from the information explored, and is therefore expected to achieve highly accurate control.
  • Patent Document 1 makes it possible to reduce the value of updating when a certain output occurs frequently. This makes it possible to learn optimal control laws while evaluating the behavior of the output.
  • Patent Document 1 does not address the issue of oscillations in the manipulated variables that can cause failures during plant control.
  • the method in Patent Document 1 imposes restrictions on the number of times a certain output value occurs throughout the entire control process. As a result, this method does not take into account the oscillation frequency of the output value, making it difficult to suppress oscillations in the output value included in the control process.
  • the object of the present invention is to provide a control system and a plant control method that can output a manipulated variable that quickly converges the controlled variable to a target value while suppressing the vibration of the manipulated variable.
  • the present invention provides a plant control system that includes a learning processing device that determines the optimal action of the plant through learning, and a control processing device that controls the plant in accordance with the optimal action determined by the learning processing device, the learning processing device including a state information control unit that converts multiple plant signals into the state of the plant and defines a target state, an action value update unit that uses the state, action, and target state of the plant to determine an action value, which is the value of the state and action between the previous operation and the current operation, and an optimal action selection unit that uses the action value to determine the optimal action that achieves the target state, and is characterized in that the system determines an action that suppresses oscillations in the operating amount of the plant as the optimal action.
  • the present invention also provides a plant control method that determines the optimal action of a plant by learning, and controls the plant according to the optimal action determined by the learning process, the learning process converting a plurality of plant signals into the plant state to define a target state, determining an action value, which is the value of the state and action between the previous operation and the current operation, using the plant state, action, and target state, determining the optimal action to achieve the target state using the action value, and determining as the optimal action an action that suppresses oscillations in the plant's operating amount.
  • the present invention provides a control system that can output a manipulated variable that stabilizes the controlled variable while suppressing vibrations in the manipulated variable.
  • FIG. 1 is a diagram showing an example of the configuration of a plant control system according to a first embodiment of the present invention.
  • FIG. 4 is a diagram showing an example of the configuration of data input by a user and stored in an input information storage unit;
  • FIG. 4 is a diagram showing the relationship between the plant signal value and the state number stored in the signal information storage unit.
  • FIG. 13 is a diagram showing the relationship between the operation amount and the action number of the plant stored in the signal information storage unit.
  • FIG. 4 is a diagram showing an example of a flow of processing performed by the learning processing device.
  • FIG. 5 is a diagram showing an example of a processing flow of episode processing performed by the learning processing device in S2 of FIG. 4 .
  • FIG. 13 is a diagram showing an example of the configuration of data representing a state number and an action number of one step before stored in an action value storage unit.
  • FIG. 13 is a diagram showing an example of the configuration of data representing values according to state numbers and action numbers stored in an action value storage unit.
  • FIG. 13 is a diagram showing an example of the configuration of data representing optimal action numbers for each state number and the corresponding operation amounts.
  • FIG. 4 is a diagram showing an example of a flow of processing performed by a control processing device.
  • FIG. 4 is a diagram showing an example of a flow of processing performed by a control processing device.
  • FIG. 13 is a diagram showing an example of the configuration of some data representing control results stored in a control result storage unit
  • 10B is a diagram showing an example of the configuration of some data (a compilation of the data shown in FIG. 10B) showing the control results stored in a control result storage unit
  • FIG. 4 is a diagram showing an example of a screen into which a user inputs information required in the processing flow of the present invention.
  • FIG. 13 is a diagram showing an example of a screen displaying the relationship between the convergence time to a target state and the vibration frequency.
  • the plant control system in FIG. 1 is composed of a user input/output device 3, a signal information storage unit 2, an input information memory unit 4, a learning processing device 1, and a control processing device 5.
  • the learning processing device 1 learns the information stored in the input information memory unit 4 and provides the optimum target obtained to the control processing device 5, which then controls the plant 6 to be controlled to the optimum target based on this.
  • the plant control system can control equipment such as plants and industrial machinery as control objects, and output optimum control operation amounts with reduced vibration while converging signal values representing the state of the object to the target state.
  • the input information storage unit 4 obtains conversion information D1 indicating the relationship between the plant signal value and the state number from the signal information storage unit 2, and also receives information D2 input by the user from the user input/output device 3. The input information storage unit 4 also receives various process quantities from the control target 6.
  • FIG. 2 shows an example of information D2 input by the user and stored in the input information storage unit 4. All of this information is used by the learning processing device 1.
  • selection signals D20 selected by the user from among candidate information (e.g., plant information A, B, C). They are also set values for the discount rate ⁇ (D21), number of episodes D22, attenuation coefficient ⁇ (D23), and target value D25, which are arbitrarily set by the user. Alternatively, they are a function arbitrarily set by the user as the selection function D24 from, for example, a linear function, a quadratic function, or a step function. The types of signals to be specified are stored in the selection function D24 and target value D25 columns.
  • the present invention is characterized in that the information D2 input by the user, particularly the set values for the damping coefficient ⁇ (D23) and the target value D25, are provided in advance from the user input/output device 3.
  • the user input/output device 3 also includes an input section where the user inputs the input information D1 and D2, and a display device that displays line graphs and scatter diagrams for the user to refer to when setting parameters. The display screen will be described in detail later.
  • the signal information storage unit 2 stores conversion information D1 that indicates the relationship between the plant signal value and the state number.
  • Figure 3a is a table showing the relationship between the range of the plant signal value D1a stored in the signal information storage unit 2 and the state number D1b. The rows list the types of state numbers D1b, and the columns list all the types of signal values D1a that the plant can output. The numbers in the table indicate the range of the signal value.
  • the plant operating state D1b (states S1, S2, S3, etc.) is predefined by the magnitude of prespecified plant signal values D1a (here, signals A and B).
  • State S1 is when signal A is in the range of 1 to 2 and signal B is in the range of -5 to -4.5
  • state S2 is when signal A is in the range of 1 to 2 and signal B is in the range of -4.5 to -4
  • state S3 is when signal A is in the range of 1 to 2 and signal B is in the range of -4 to -3.5
  • state S4 is when signal A is in the range of 1 to 2 and signal B is in the range of -3.5 to -3
  • state S5 is when signal A is in the range of 2 to 3 and signal B is in the range of -5 to -4.5.
  • the input plant signal value D1a (signals A and B) is extracted as state S information D1b by referring to the table in Figure 3a, where it is converted from the plant signal value D1a to state S information D1b.
  • the information passed from the input information storage unit 4 in Figure 1 to the learning processing device 1 and the control processing device 5 is converted to state information D1b, rather than numerical information D1a.
  • the processing in the learning processing device 1 makes it possible to execute learning based on pattern processing of the plant state D1b, which is an area the learning function excels at, rather than numerical learning based on the magnitude of the plant signal value D1a.
  • the learning processing device 1 learns that the plant transitions from state S1 to state S5 when it starts up, and the learning results are reflected in the control processing device 5.
  • FIG. 3b is a conversion table showing the relationship between the range of the plant operation amount D1c stored in the signal information storage unit 2 and the action number D1d.
  • the plant's actions D1b (actions a1, a2, a3, etc.) are predefined according to the range of the magnitude of the plant's operation amount D1c specified in advance.
  • action a1 when the operation amount D1c is in the range of 1 to 1.5 action a2 when the operation amount D1c is in the range of 1.5 to 2
  • action a3 when the operation amount D1c is in the range of 2 to 2.5 action a4 when the operation amount D1c is in the range of 2.5 to 3
  • action a5 when the operation amount D1c is in the range of 3 to 3.5.
  • the input plant operation amount D1c is extracted as information for action a by referring to the table in Figure 3b, where it is converted from the plant operation amount D1c to information for action a D1d.
  • the plant operation amount D1c is also converted from numerical information into action information D1d shown as a pattern, and provided in a form suitable for learning processing.
  • state number D1b (state information) will be explained.
  • State number D1b allows multiple types of signal values to be handled one-dimensionally.
  • the plant dynamics simulator 11 outputs multiple types of signal values.
  • signal A and signal B are used in episode processing in the learning process.
  • the values of the two types of signals are 1 and -5, respectively. Since the signal values fall within the range of values indicated by state S1 in the first row of the table shown in FIG. 3a, signals A and B are defined as state S1. This allows the signals A and B to be compressed into one dimension and the processing described below to be executed. A similar compression is also performed by converting the amount of operation D1c into the action D1d.
  • the learning processing device 1 shown in FIG. 1 includes a simulator that simulates a target plant, an arithmetic processing device such as a CPU, and a storage unit such as a memory, and acquires a control law that enables output of optimal control operation amounts through repeated interactive processing with the simulator.
  • the functional components of the learning processing device 1 include a plant dynamics simulator 11, a state information control unit 12, an action value update unit 13, an action value storage unit 14, an optimal action selection unit 15, and an episode number storage unit 16.
  • the control processing device 5 shown in FIG. 1 is connected to the learning processing device 1 and the control object 6, and is a device that performs optimal control of the control object 6, which is an actual plant, based on the control rules acquired by the learning processing device 1.
  • the control processing device 5 has, as its functional components, a learning information control unit 51, a state information conversion unit 52, an input/output device 53, and a control result storage unit 54. A detailed description of the control processing device 5 will be given later.
  • FIG. 4 is a flow diagram showing the overall processing of the learning processing device 1.
  • the signal information specifically refers to the converted information (state number D1b) of FIG. 3a showing the relationship between the plant signal value D1a and state number D1b, and the converted information (action information D1d) of FIG. 3b showing the relationship between the operation amount D1c and action number D1d.
  • episode processing is carried out.
  • An episode is a term used in reinforcement learning algorithms, and learning progresses by repeating episodes.
  • an episode refers to one control simulation using the plant dynamics simulator 11.
  • processing step S3 the number of times episode processing has been performed is updated each time an episode is processed, and in processing step S4, the number of episodes D22 set by the user is compared with the number of times episode processing has been performed, and if the number of times episode processing has been performed is less than or equal to the number of episodes D22 set by the user, processing returns to step S2 and episode processing is performed again. If the number of times episode processing has been performed is greater than or equal to the number of times episode processing has been performed, processing of the learning processing device 1 is terminated. This executes learning and simulation a predetermined number of times.
  • FIG. 5 is a flow diagram showing the details of episode processing. This corresponds to processing step S2 in FIG. 4. Episode processing will be explained in detail below with reference to FIG. 5. In the following explanation, each process that constitutes one episode will be referred to as a step. The first process in a repeated process will be referred to as the initial step.
  • a plant dynamics simulator 11 that simulates the behavior of the target plant 6 generates a plant signal value D1a that represents the state of the plant 6 and an operation amount D1c that is input to the plant 6.
  • processing step S22 the output values (D1a and D1c) of the plant dynamics simulator 11 are input, and in processing step S23, the state information control unit 12 converts the plant signal value D1a into a state number D1b and the operation amount D1c into an action number D1d.
  • the state information control unit 12 converts the plant signal value D1a into a state number D1b and the operation amount D1c into an action number D1d.
  • information on the selection signal (D20 in FIG. 2) input by the user and acquired in processing step S1 in FIG. 4 is used.
  • the selection signal D20 indicates the type of signal value to be used in episode processing selected by the user from among the multiple types of signal values output by the plant dynamics simulator 11.
  • processing step S23 the plant signal value D1a output by the plant dynamics simulator is converted into a state number D1b based on the relationship between the plant signal value D1a and the state number D1b shown in FIG. 3 above.
  • the target state is defined by the state information control unit 12.
  • the target value acquired in processing step S1 in FIG. 4 (D25 in FIG. 2) and the information of the signal specified as the target value are used.
  • the target value of signal A is specified as 1.5.
  • 1.5 is a numerical value in the range of 1 or more and less than 2
  • states S1, S2, S3, and S4 in the table shown in FIG. 3a are specified as the target states.
  • the target state For example, when starting up a plant, if the state of the fluid within the equipment is defined by grouping it into temperature, pressure, and flow rate signals, and pressure is the main factor and you want to raise this value to 1.0, then only the state that satisfies a pressure of 1.0 is extracted from the multiple states, and this state is set as the target state, which means, for example, startup completion.
  • a learning process is executed in the subsequent processing, but since the learning process is better at pattern processing than numerical processing, the signal is expressed as a state rather than a magnitude, and the target value in the case of a signal is the target state in the state processing.
  • the action value update unit 13 obtains information on the state number D1b, action number D1d, and goal state in the current step from the state information control unit 12.
  • the action value update unit 13 obtains from the action value storage unit 14 the state number D1b and action number D1d of the previous step, the value corresponding to the state number D1b and action number D1d obtained in processing step S25 of the previous step, and the maximum value in the state number D1b obtained in the current processing step S25.
  • the value is the value stored according to the state number D1b and action number D1d.
  • FIG. 6a is a table showing state number D1b and action number D1d stored in the action value storage unit 14.
  • state number D1b obtained in the previous processing step S25 is state S10 and action number D1d is action a9
  • state S10 and action a9 will be stored in the table of FIG. 6a.
  • the relationship between state S10 and action a9 in the table of FIG. 6a is considered to be value Q.
  • FIG. 6b is a table showing the value Q stored in the action value storage unit 14 according to state number D1b and action number D1d.
  • processing step S26 the corresponding value is obtained from the table in FIG. 6b. If the state number D1b and action number D1d obtained in the previous processing step S25 are the previous example, 941 corresponding to Q(S10, a9) is obtained as the value according to state number D1b and action number D1d. If the state number D1b obtained in the current processing step S25 is state S1 and the action number D1d is action a2, the maximum value in state S1 is 1990 corresponding to Q(S1, a1). Here, if this processing is the initial step, the state number D1b from the previous step does not exist, so the state number D1b to be obtained is determined randomly.
  • the action value update unit 13 updates the value according to state number D1b and action number D1d.
  • equation (1) is used.
  • equation (1) used in the device of the present invention has a function f( ⁇ a) added to it in order to suppress vibrations in the manipulated variable. This is the key point of the present invention.
  • Formula (1) represents the update calculation for updating the value shown on the left side with the value calculated on the right side.
  • s represents the state number D1b of the previous step
  • s' represents the state number D1b of the current step
  • a represents the action number D1d performed in state number D1b of the previous step.
  • state number D1b of the previous step was state S10
  • action number D1d was action a9
  • state number D1b of the current step was state S1, just like the values obtained in processing step S26.
  • is the discount rate D21 mentioned in Figure 2, and is a value that can be set by the user.
  • r(s') is called the reward, and is a function that is 1000 if s' is the goal state, and 0 otherwise.
  • the state S1 of the current step is the goal state
  • r(s') is 1000.
  • Q(s, a) represents the value according to the state number D1b and action number D1d of the previous step
  • maxQ(s') represents the maximum value according to the current state number D1b.
  • Q(s, a) is 941 and maxQ(s') is 1990.
  • ) is the absolute value of the difference between the operation amount one step before and the operation amount in the current step, that is, a function of
  • ⁇ a is calculated using the operation amount one step before, the operation amount in the current step, and information showing the relationship between the operation amount and the action number obtained in processing step S1.
  • the difference ⁇ a between the operation amount corresponding to the action number one step before and the operation amount corresponding to the action number of the current step is calculated by setting the operation amount to the lower limit of the operation amount range corresponding to the action number in question in the table showing the relationship between the operation amounts shown in Figure 3b.
  • ) is a function whose value varies between 0 and 1 depending on
  • Figures 7a, 7b, and 7c show examples of the function f(
  • this device three patterns of functions are provided, from which the user can select.
  • the degree of damping can be changed by the damping coefficient ⁇ (D23). This allows the user to arbitrarily set the degree to which vibrations in the control operation value are suppressed by adjusting the damping coefficient ⁇ .
  • Fig. 7a shows the case where the user specifies a linear function as the function f(
  • ) decreases linearly as the difference between the operation amount one step before and the operation amount in the current step increases.
  • the negative slope increases as the damping coefficient ⁇ increases.
  • the function shown in Fig. 7a is expressed by equation (2).
  • Fig. 7b shows the case where the user specifies a quadratic function as the function f(
  • ) decreases quadratically as the difference between the operation amount one step before and the operation amount in the current step increases.
  • ) associated with ⁇ a also increases as the damping coefficient ⁇ increases.
  • the function shown in Fig. 7b is expressed by equation (3).
  • Fig. 7c shows the case where the user specifies a step function as the function f(
  • ) decreases in a step-like manner depending on the difference between the amount of operation one step before and the amount of operation in the current step.
  • the damping coefficient ⁇ represents the value of the change point ⁇ a of the step function.
  • the function shown in Fig. 7c is expressed by equation (4).
  • the action value storage unit 14 obtains the value updated by the action value update unit 13, the state number of the current step, and the action number.
  • Q(S10, a9), the state S1 of the current step, and the action a2 are obtained as the updated value, and the obtained information is stored in the action value storage unit 14.
  • the table showing the state numbers and action numbers shown in FIG. 6a is updated to state S1 and action a2.
  • the values corresponding to state S10 and action a9 shown in FIG. 6b are updated. In other words, the value 941 stored in Q(S10, a9) is updated to 1485.1.
  • FIG. 8 is a table that stores the optimal action for each state number and the corresponding operation amount stored in the action value storage unit 14.
  • the optimal action refers to the action number that corresponds to the maximum value among the values of each action D1d stored for a certain state number D1b.
  • action a1 (D1d) is stored as the optimal action in state S1 (D1b) in FIG. 8.
  • the optimal action selection unit 15 obtains from the action value storage unit 14 a table that stores the optimal action and its operation amount for each state number, as well as information on the state number and target state of the current step, and outputs the operation amount corresponding to the current step to the simulator. At this time, there is a 40% probability that a random operation amount is output. By outputting a random operation amount, the search space can be expanded and control precision can be improved.
  • processing step S30 the end of episode processing is determined based on whether the goal state has been reached. If the goal state has been reached, the episode processing is terminated, and if not, processing returns to processing step S21. In other words, if the state number of the current step obtained by the optimal action selection unit 15 from the action value storage unit 14 is the goal state, processing is terminated. This concludes the explanation of episode processing.
  • the episode number storage unit 16 acquires information that the episode processing is completed from the optimal action selection unit 15, and increments the number of times the episode processing has been performed stored in the episode number storage unit by +1.
  • processing step S4 if the number of times the episode processing has been performed and stored in the episode number storage unit 16 exceeds the number of episodes set by the user, the episode storage unit 16 sends a stop command to the plant dynamics simulator 11 and also sends information to the learning information control unit that the processing of the learning processing device 1 has ended. This concludes the processing flow of the learning processing device 1.
  • Figure 9 is a flow diagram of the processing of the control processing device 5.
  • the input/output device 53 acquires a plant signal value from the control object 6.
  • the control object 6 refers to the plant that is the control object.
  • the state information conversion unit 52 obtains a table showing the relationship between the plant signal value and the state number from the action value storage unit 14 via the learning information control unit 51, as well as information on the target state, which is information input by the user.
  • processing step S53 the state information conversion unit 52 converts the plant signal value into a state number.
  • processing step S54 the learning information control unit 51 obtains the state number from the state information conversion unit 52, and obtains the operation amount corresponding to the state number from the action value storage unit 14 by referring to the table shown in FIG. 8.
  • processing step S55 the input/output device 53 acquires the state number and the manipulated variable from the learning information control unit 51, and outputs the manipulated variable to the control object 6.
  • processing step S56 the input/output device 53 acquires a plant signal value from the control object 6.
  • the plant signal value acquired here represents the state of the plant that has changed in response to the manipulated variable.
  • the control result storage unit 54 acquires the state number and the manipulated variable from the input/output device 53 and stores them.
  • FIG. 10a and 10b are diagrams showing an example of the configuration of data stored in the control result storage unit 54.
  • the leftmost column in FIG. 10a stores the time when the control result storage unit 54 obtained the state number D1b and the operation amount D1d from the input/output device 53.
  • the second column from the left stores the state number D1b obtained for each time.
  • the third column from the left stores the operation amount D1d obtained for each time.
  • the rightmost column stores the number of times the operation amount has been changed. 0 is stored in the first row of this column for the number of times the operation amount has been changed. In subsequent rows, if there is a difference between the operation amount stored in the previous row and the operation amount obtained at the current time, 1 is added to the number of times the operation amount has been changed stored in the previous row and stored in the current row.
  • the leftmost column in Figure 10b stores the time when the target state was converged upon. In other words, it represents the time when the acquired state number was the target state.
  • the second column from the left stores the time from when the state number was first acquired to when the target state was acquired.
  • the rightmost column stores the number of times the manipulated variable was changed before the target state was acquired.
  • processing step S58 the input/output device 53 performs a conditional determination as to whether the state number acquired from the learning information control unit 51 is the target state. If the acquired state number is not the target state, the process returns to processing step S53. If it is the target state, the process proceeds to processing step S59.
  • processing step S59 the information stored in the control result storage unit 54 is output to the user input/output device.
  • the information to be output is the example data configuration shown in FIG. 10b. This concludes the processing flow of the control processing device 5.
  • Figure 11 is an example of a screen on which the user inputs information required to execute the processing in the learning processing device 1 and the control processing device 5 described above.
  • Item 31 displays multiple types of signals output by the plant 6, which is the object of control. The user selects the signal to be used for processing from the multiple signals in this item 31.
  • Item 32 displays an input field for the user to input the discount rate ⁇ in equation (1) used for the update calculation in the learning processing device 1. The user specifies and inputs the discount rate ⁇ at their discretion within the range of 0 to 1.
  • Item 33 displays an input field for the user to input the number of times episode processing is to be performed in the learning processing device 1.
  • Item 34 displays an input field for the user to input the attenuation coefficient ⁇ in equations (2), (3), and (4) used in the update calculations in the learning processing device 1.
  • Item 35 displays a selection field that allows the user to select the function to be used in the update calculation in the learning processing device 1 from among equations (2), (3), and (4). The user selects the function to be used in the processing from among linear functions, quadratic functions, and step functions. Item 36 selects the signal value to be converged among the types of plant signal values. By selecting the signal value, learning is performed with the aim of converging this signal in the learning processing device 1. Item 37 displays an input field that allows the user to input the value of the signal value to be converged.
  • Figure 12 is an example of a screen that displays the relationship between convergence time to the target state and vibration frequency.
  • the vertical axis represents convergence time to the target, and the horizontal axis represents vibration frequency, and the control results in the control processing device 5 are plotted on a scatter diagram.
  • Item 38 represents supplementary information that is displayed when the mouse cursor is placed over a plot point.
  • the supplementary information includes the number of plant signals selected as the state number, the number of times the episode processing entered by the user is to be performed, the convergence time to the target state, the number of vibrations per minute, the value of the damping coefficient ⁇ entered by the user, and the type of damping coefficient and associated function (damping function) selected by the user.
  • the user determines the optimal input information while checking this display screen.
  • the optimal input information here refers to a combination of information entered by the user that results in the shortest convergence time to the target state and the lowest vibration frequency. This allows the user to determine the optimal damping coefficient value, etc., through a process of error.

Landscapes

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

Abstract

操作量の振動を抑制しつつ、被制御量を目標値へ速やかに収束させるような操作量を出力可能な制御システムを提供する。プラントの最適行動を学習により求める学習処理装置と、学習処理装置で定めた最適行動に従いプラントを制御する制御処理装置を備え、学習処理装置は、複数のプラント信号をプラントの状態に変換し、目標状態を定義する状態情報制御部と、プラントの状態、行動及び目標状態を用いて、前回操作時と今回操作時の間における状態と行動の価値である行動価値を求める行動価値更新部と、行動価値を用いて目標状態を達成する最適行動を決定する最適行動選択部を備え、プラントの操作量の振動を抑制する行動を最適行動として決定することを特徴とするプラント制御システム。

Description

プラント制御システム及びプラント制御方法
 本発明はプラント制御システム及びプラント制御方法に関する。
 プラント分野では、プロセスを安定化させる制御として、AI技術の一つである強化学習が用いられることが増えている。強化学習は、制御対象を模擬したシミュレータ等を試行錯誤的に探索することによって、最適な制御則を学習する。ここでの最適な制御則とは、速やかにプロセスを安定化させること、つまり、被制御量となるプラント信号値を目標値へ収束させるような操作量を出力可能な制御モデルである。
 強化学習では、操作量毎の価値が定義され、価値の更新式と呼ばれる数式によって更新していくことで、最適な制御則を学習することができる。ここで言う価値とは、被制御量を目標値へ収束させるために、ある操作量がその目的に対してどれくらい効果的かを表した数値である。強化学習は、被制御量を目標値へ収束させることを目的として、探索した情報の中から、前述の価値を基に最適な操作を見出すことが可能なため、高精度な制御を実現することが期待できる。
 しかし、強化学習は被制御量を速やかに目標値へ収束させることができる反面、価値やその更新式に出力値の挙動を評価する機能が備わっておらず、挙動自体に制約を設けることができない。そのため、学習によって得られた制御則の出力する操作量が振動する等の課題が生じている。実機適用の際、操作量の振動は機器故障の原因となり得るため、解決する必要がある。
 このような背景から、強化学習によって獲得される制御則の出力挙動に制約を課す方法が望まれている。
 特許文献1に開示された手法では、ある出力が多発した場合に更新する価値を減衰できるようになっている。これによって、出力の挙動を評価しつつ、最適な制御則を学習することが可能である。
特開2021-77286号公報
 しかしながら、特許文献1に開示された強化学習手法では、プラント制御の際に故障の原因となり得る操作量が振動するという課題の解決には至っていない。特許文献1における手法では、制御プロセス全体で、ある出力値が発生する回数に制約を課している。そのため、本手法では出力値の振動頻度は考慮されておらず、制御プロセス中に含まれる出力値の振動を抑制することは困難である。
 本発明の目的は、操作量の振動を抑制しつつ、被制御量を目標値へ速やかに収束させるような操作量を出力可能な制御システム及びプラント制御方法を提供することである。
 以上のことから本発明においては、「プラントの最適行動を学習により求める学習処理装置と、学習処理装置で定めた最適行動に従いプラントを制御する制御処理装置を備え、学習処理装置は、複数のプラント信号をプラントの状態に変換し、目標状態を定義する状態情報制御部と、プラントの状態、行動及び目標状態を用いて、前回操作時と今回操作時の間における状態と行動の価値である行動価値を求める行動価値更新部と、行動価値を用いて目標状態を達成する最適行動を決定する最適行動選択部を備え、プラントの操作量の振動を抑制する行動を最適行動として決定することを特徴とするプラント制御システム」としたものである。
 また本発明においては、「プラントの最適行動を学習により求め、学習処理で定めた最適行動に従いプラントを制御するプラント制御方法であって、学習処理は、複数のプラント信号をプラントの状態に変換して目標状態を定義し、プラントの状態、行動及び目標状態を用いて、前回操作時と今回操作時の間における状態と行動の価値である行動価値を求め、行動価値を用いて目標状態を達成する最適行動を決定するとともに、プラントの操作量の振動を抑制する行動を最適行動として決定することを特徴とするプラント制御方法」としたものである。
 本発明によると、操作量の振動を抑制しつつ、被制御量を整定させるような操作量を出力可能な制御システムを提供することができる。
本発明の実施例1に係るプラント制御システムの構成例を示す図。 入力情報記憶部に記憶されているユーザーが入力したデータの構成例を示す図。 信号情報格納部に格納されたプラント信号値と状態番号の関係を示す図。 信号情報格納部に格納されたプラントの操作量と行動番号の関係を示す図。 学習処理装置で行う処理のフロー例を示す図。 学習処理装置が図4のS2で行うエピソード処理の処理フロー例を示す図。 行動価値格納部に格納された1ステップ前の状態番号と行動番号を表したデータの構成例を示す図。 行動価値格納部に格納された状態番号および行動番号に応じた価値を表したデータの構成例を示す図。 価値の更新式内の減衰関数(一次関数)の形状を表した概略図。 価値の更新式内の減衰関数(二次関数)の形状を表した概略図。 価値の更新式内の減衰関数(階段関数)の形状を表した概略図。 状態番号毎の最適行動番号とそれに対応する操作量を表したデータの構成例を示す図。 制御処理装置で行う処理のフロー例を示す図。 制御結果格納部に格納された制御結果を表した一部のデータの構成例を示す図。 制御結果格納部に格納された制御結果を表した一部のデータ(図10bに示すデータを纏めたもの)の構成例を示す図。 本発明の処理フロー中で必要となる情報をユーザーが入力する画面の例を示す図。 目標状態への収束時間と、振動頻度の関係を表示する画面の例を示す図。
 以下本発明の実施例について説明する。
 本発明の実施例1に係るプラント制御システムについて図1を参照して説明する。図1のプラント制御システムは、ユーザー入出力装置3と、信号情報格納部2と、入力情報記憶部4と、学習処理装置1と、制御処理装置5により構成されており、入力情報記憶部4に記憶されている情報を学習処理装置1が学習して得た最適な目標を制御処理装置5に与え、これに基づいて制御処理装置5が制御対象のプラント6を最適な目標に制御するというものである。係る構成により、プラント制御システムは、プラントや産業機器などの機器を制御対象とし、対象の状態を表す信号値を目標状態に収束させつつ、振動が抑えられた最適制御操作量を出力することが可能となる。
 このうち入力情報記憶部4は、信号情報格納部2からプラント信号値と状態番号の関係などを示した変換情報D1を入手し、またユーザー入出力装置3からユーザーが入力した情報D2を受け取る。また入力情報記憶部4には、制御対象6からの各種のプロセス量が入力されている。
 図2は、ユーザーが入力して入力情報記憶部4に保存された情報D2の一例である。いずれの情報も学習処理装置1で用いられる。これらは、ユーザーが情報の候補(例えばプラントの情報A,B,C)の中から選択した選択信号D20である。またユーザーが任意に設定した割引率γ(D21)、エピソード数D22、減衰係数η(D23)並びに目標値D25についての設定数値である。あるいは選定関数D24として例えば一次関数、二次関数、階段関数の中からユーザーが任意に設定した関数である。なお選定関数D24、目標値D25の欄には、指定する信号の種類が保存されている。
 なお本発明においては、ユーザーが入力した情報D2として特に減衰係数η(D23)並びに目標値D25についての設定数値を、予めユーザー入出力装置3から与えておく点に特徴を有するものである。またユーザー入出力装置3には、これらの入力情報D1、D2をユーザーが入力する入力部と、ユーザーがパラメータ設定を行う上で参考とするための折れ線グラフと散布図を表示する表示装置を備える。表示画面の詳細については後述する。
 これに対し信号情報格納部2は、プラント信号値と状態番号の関係などを示した変換情報D1を格納している。図3aは、信号情報格納部2に格納されたプラント信号値D1aの範囲と状態番号D1bの関係を示した表である。行には状態番号D1bの種類、列にはプラントが出力し得る信号値D1aの種類すべてが記載されている。表中の数値は、信号値の範囲を表している。
 この表記事例によれば、プラントの運転状態D1b(状態S1,S2,S3・・・)は、予め指定したプラント信号値D1a(ここでは信号Aと信号B)の大きさによりあらかじめ定義されている。信号Aが1から2の範囲でありかつ信号Bが-5から-4.5のとき状態S1、信号Aが1から2の範囲でありかつ信号Bが-4.5から-4のとき状態S2、信号Aが1から2の範囲でありかつ信号Bが-4から-3.5のとき状態S3、信号Aが1から2の範囲でありかつ信号Bが-3.5から-3のとき状態S4、信号Aが2から3の範囲でありかつ信号Bが-5から-4.5のとき状態S5のように定義されている。
 入力されたプラント信号値D1a(信号A,B)は、図3aの表を参照することにより状態Sの情報D1bとして取り出され、ここでプラント信号値D1aから状態Sの情報D1bに変換されたことになる。
 この図3aに示す変換処理により、図1の入力情報記憶部4から学習処理装置1並びに制御処理装置5に受け渡しされる情報は、数値情報としてのD1aではなく、状態情報としてのD1bとされている。学習処理装置1における処理では、プラント信号値D1aの大きさに基づいた数値学習ではなく、学習機能が得意とするプラント状態D1bによるパタン処理に基づいた学習の実行が可能となる。具体的には、例えばプラントの起動時に状態S1から状態S5に移行することを学習処理装置1において学習し、学習結果を制御処理装置5に反映することになる。
 また図3bは、信号情報格納部2に格納されたプラントの操作量D1cの範囲と行動番号D1dの関係を表した変換表である。この表記事例によれば、プラントの行動D1b(行動a1,a2,a3・・・)は、予め指定したプラントの操作量D1cの大きさの範囲によりあらかじめ定義されている。操作量D1cが1から1.5の範囲であるとき行動a1、操作量D1cが1.5から2の範囲であるとき行動a2、操作量D1cが2から2.5の範囲であるとき行動a3、操作量D1cが2.5から3の範囲であるとき行動a4、操作量D1cが3から3.5の範囲であるとき行動a5のように定義されている。
 入力されたプラント操作量D1cは、図3bの表を参照することにより行動aの情報として取り出され、ここでプラントト操作量D1cから行動aの情報D1dに変換されたことになる。
 この図3bに示す変換処理により、プラント操作量D1cもまた、数値情報からパタンで示される行動情報D1dとして学習処理に適した形態に変換され提供されることになる。
 ここで状態番号D1b(状態情報)について、説明しておくと、状態番号D1bとは、複数種類の信号値を一次元的に扱えるようにしたものである。まず、プラント動特性シミュレータ11は、複数種類の信号値を出力する。例として、信号Aおよび信号Bの2種類の信号を学習処理におけるエピソード処理で使用する場合を考える。そして、その2種類の信号値がそれぞれ1と-5だったとする。該信号値は図3aに示す表中の1行目の状態S1が示す値の範囲に収まっているため、信号Aおよびと信号Bを状態S1と定義する。
これによって、信号Aと信号Bを一次元に圧縮し、後述する処理を実行することを可能とする。同様の圧縮が操作量D1cを行動D1dに変換したことでも行われている。
 図1に示す学習処理装置1は、対象プラントを模擬したシミュレータや、CPUなどの演算処理装置とメモリなどの記憶部を備え、該シミュレータとのインタラクティブな繰り返し処理を通じて、最適制御操作量を出力可能とする制御則を獲得する。学習処理装置1の機能的な構成要素として、図1の例ではプラント動特性シミュレータ11、状態情報制御部12、行動価値更新部13、行動価値格納部14、最適行動選択部15、エピソード数記憶部16を備える。
 また図1に示す制御処理装置5は、学習処理装置1と、制御対象6に繋がれており、学習処置装置1で獲得した制御則を基に、制御対象6である実機プラントに対して最適制御を行う装置である。制御処理装置5は、その機能的な構成要素として、学習情報制御部51、状態情報変換部52、入出力装置53、制御結果格納部54を備える。制御処理装置5の詳細な説明は後述する。
 図4および図5を用いて、図1における学習処理装置1の処理の流れを説明する。図4は学習処理装置1の全体処理を表したフロー図である。図4の処理では、最初の処理ステップS1において、入力情報記憶部4を介して、学習処理装置1に、ユーザーが入力した情報D2、および信号情報を取得する。ここで信号情報とは、具体的にはプラント信号値D1aと状態番号D1bの関係を示した図3aの変換後の情報(状態番号D1b)、並びに操作量D1cと行動番号D1dの関係を示した図3bの変換後の情報(行動情報D1d)である。
 次に処理ステップS2において、エピソード処理を実施する。エピソードとは、強化学習のアルゴリズムで使われる用語であり、エピソードを繰り返すことで学習を進める。本装置におけるエピソードとは、プラント動特性シミュレータ11を用いた1回の制御シミュレーションを指す。
 処理ステップS3では、エピソード処理の都度エピソード処理実施回数を更新し、処理ステップS4ではユーザーが設定したエピソード数D22とエピソード処理を実施した回数を比較し、エピソード処理を実施した回数が、ユーザーが設定したエピソード数D22以下だった場合は、処理ステップS2に戻りエピソード処理を再度実施する。エピソード処理を実施した回数以上だった場合は、学習処理装置1の処理を終了する。これにより、所定回数の学習、シミュレーションを実行する。
 図5は、エピソード処理の詳細を示すフロー図である。図4の処理ステップS2に該当する。以下からエピソード処理について、図5を用いて詳細に説明する。以下の説明では、1エピソードを構成する各処理をステップという単位で表記する。繰り返し処理における一度目の処理を、初期ステップと表記する。
 最初の処理ステップS21では、対象プラント6の挙動を模擬したプラント動特性シミュレータ11によって、プラント6の状態を表すプラント信号値D1aおよびプラント6に入力された操作量D1cを生成する。
 処理ステップS22では、プラント動特性シミュレータ11の出力値(D1aおよびD1c)を入力して、処理ステップS23で状態情報制御部12によって、プラント信号値D1aを状態番号D1bに、操作量D1cを行動番号D1dに変換する。プラント信号値D1aを状態番号D1bに変換するにあたり、図4の処理ステップS1で取得したユーザーが入力した選択信号(図2のD20)の情報を用いる。選択信号D20とは、プラント動特性シミュレータ11が出力する複数種類の信号値の中で、ユーザーが選択したエピソード処理で用いる信号値の種類を示している。処理ステップS23では、前述の図3で示したプラント信号値D1aと状態番号D1bの関係を基に、プラント動特性シミュレータが出力したプラント信号値D1aを状態番号D1bに変換する。
 処理ステップS24では、状態情報制御部12によって、目標状態を規定する。ここでは、図4の処理ステップS1で取得した目標値(図2のD25)と、目標値として指定された信号の情報を用いる。例として、信号Aの目標値を1.5に指定したとする。その場合、1.5は1以上2未満の範囲の数値であるため、図3aに示す表中の状態S1、状態S2、状態S3、状態S4が目標状態として指定される。
 これはプラント内の状態を複数の信号の大きさにより複数の状態にグルーピングして定義した場合に、複数の信号の大きさで定まる複数の状態のうち、目標値として定められた信号の大きさの条件に合致する状態のみを抽出し、これを目標状態としたものである。例えばプラント起動時に、機器内の流体の状態を温度、圧力、流量の各信号によりグルーピングして定義し、主要因を圧力としてこの値を1.0まで立ち上げたいときに、複数の状態の中から圧力1.0を満たす状態のみを抽出し、この状態であれば例えば起動完了を意味する目標状態としたものである。
 なお本発明においては以後の処理において学習処理を実行するが、学習処理では数値処理よりもパターン処理を得意とするため、信号の大きさではなく状態として表現するものであり、信号の場合の目標値を状態での処理では目標状態としたものである。
 処理ステップS25では、行動価値更新部13が、状態情報制御部12から現ステップにおける状態番号D1b、行動番号D1d、目標状態の情報を取得する。
 処理ステップS26では、行動価値更新部13が、行動価値格納部14から1ステップ前の状態番号D1bおよび行動番号D1dと1ステップ前の処理ステップS25で取得された状態番号D1bおよび行動番号D1dに応じた価値と、現処理ステップS25で取得された状態番号D1bにおける最大価値を取得する。価値とは、状態番号D1bと行動番号D1dに応じて保存された値である。
 図6aは、行動価値格納部14に保存された状態番号D1bおよび行動番号D1dを示した表である。例として、1ステップ前の処理ステップS25で取得された状態番号D1bが状態S10、行動番号D1dが行動a9だった場合、図6aの表には状態S10、行動a9が保存されていることになる。図6aの表における状態S10と行動a9の関係が価値Qとされる。
 図6bは、行動価値格納部14に格納された、状態番号D1bおよび行動番号D1dに応じて保存された価値Qを示した表である。処理ステップS26では図6bの表中から、該当する価値を取得する。1ステップ前の処理ステップS25で取得された状態番号D1bと行動番号D1dが先の例である場合、状態番号D1bおよび行動番号D1dに応じた価値としてQ(S10,a9)に該当する941を取得する。現処理ステップS25で取得された状態番号D1bが状態S1、行動番号D1dが行動a2だった場合、状態S1における最大価値はQ(S1,a1)に該当する1990を取得する。ここで、本処理が初期ステップであった場合、1ステップ前の状態番号D1bが存在しないため、取得する状態番号D1bはランダムに決定される。
 処理ステップS27で、行動価値更新部13によって、状態番号D1bおよび行動番号D1dに応じた価値が更新される。更新の際には、(1)式が用いられる。強化学習で一般的に用いられる価値の更新式に対して、本発明装置で用いる(1)式には、操作量の振動を抑えるために関数f(Δa)が付加されている。これが本発明のポイントである。
Figure JPOXMLDOC01-appb-M000001
 (1)式による、価値の更新過程を以下詳細に説明する。(1)式は、右辺で計算された値によって、左辺に示す価値を更新するための更新計算を表している。(1)式中のsは1ステップ前の状態番号D1b、s’は現ステップの状態番号D1b、aは1ステップ前の状態番号D1bで実施した行動番号D1dを表す。
 ここでは、処理ステップS26で取得された値と同じく、1ステップ前の状態番号D1bを状態S10、行動番号D1dを行動a9、現ステップの状態番号D1bを状態S1だったと仮定する。γは図2で述べた割引率D21でありユーザーが任意に設定できる値である。
 以下の説明からはユーザーが割引率γを0.99に設定したと仮定する。r(s’)は報酬と呼ばれ、s’が目標状態であれば1000、それ以外の場合は0となる関数である。ここでは、現ステップの状態S1を目標状態と仮定し、r(s’)を1000とする。
Q(s,a)は1ステップ前の状態番号D1bと行動番号D1dに応じた価値、maxQ(s’)は現状態番号D1bに応じた最大価値を表す。ここでは、Q(s,a)を941、maxQ(s’)を1990とする。
 f(|Δa|)は、1ステップ前における操作量と現ステップにおける操作量の差の絶対値、つまり|Δa|の関数である。Δaの算出には、1ステップ前の操作量と、現ステップにおける操作量と、処理ステップS1で取得した操作量と行動番号の関係を示した情報を用いる。図3bに示す操作量の関係を示した表における、該行動番号に当たる操作量範囲の下限値を操作量とすることで、1ステップ前の行動番号に対応する操作量と現ステップの行動番号に対応する操作量の差分Δaを計算する。
 f(|Δa|)は、|Δa|に応じて、0から1の範囲で値が変わる関数である。本関数によって、操作量の振動が大きいほど、つまり操作量の差Δaが大きいほど価値が低下し、この結果、操作量の振動が抑制される。
 図7a、図7b、図7cは関数f(|Δa|)の例を表している。本装置では、3パタンの関数が用意されており、この中からユーザーが選択する。さらに、減衰係数η(D23)によって、減衰度合いが変更できる。これによって、ユーザーは減衰係数ηを調整することで、制御操作値の振動を抑える度合いを任意に設定することが可能となる。
 図7aは、ユーザーが関数f(|Δa|)として一次関数を指定した場合を表している。図7aに示す関数は、1ステップ前の操作量と現ステップにおける操作量の差が大きくなるに従い、一次関数的にf(|Δa|)の値が減少していく。本関数においては、減衰係数ηが大きくなるに従い、負の傾きが大きくなる。図7aに示す関数は(2)式で表される。
Figure JPOXMLDOC01-appb-M000002
 図7bは、ユーザーが関数f(|Δa|)として二次関数を指定した場合を表している。図7bに示す関数は、1ステップ前の操作量と現ステップにおける操作量の差が大きくなるに従い、二次関数的にf(|Δa|)の値が減少していく。本関数においては、減衰係数ηが大きくなるに従い、Δaに伴うf(|Δa|)の減少量も大きくなる。図7bに示す関数は(3)式で表される。
Figure JPOXMLDOC01-appb-M000003
 図7cは、ユーザーが関数f(|Δa|)として階段関数を指定した場合を表している。図7cに示す関数は、1ステップ前の操作量と現ステップにおける操作量の差によって、階段状にf(|Δa|)の値が減少する。本関数においては、減衰係数ηが、階段関数の変化点Δaの値を表す。図7cに示す関数は(4)式で表される。
Figure JPOXMLDOC01-appb-M000004
 (1)式による価値の更新計算の説明に戻る。関数f(|Δa|)の値が、0.5であると仮定する。(1)式の右辺に該具体数を代入すると、右辺の算出結果は1485.1(=0.5×(1000+0.99×1990))となる。よって、左辺のQ(s,a)の値は、941から1485.1に更新される。
 図5の処理フローの説明に戻る。以上の更新過程で用いた具体的な数値は以下処理フローの説明でも用いる。処理ステップS28で、行動価値格納部14が行動価値更新部13で更新された価値と、現ステップの状態番号と、行動番号を取得する。先の仮定で考えると、更新された価値としてQ(S10,a9)と、現ステップの状態S1と、行動a2を取得し、取得した情報を行動価値格納部14に保存する。図6aに示す状態番号および行動番号を示した表を状態S1、行動a2に更新する。図6bに示す状態S10および行動a9に対応する価値を更新する。つまり、Q(S10,a9)に格納されていた価値941を1485.1へ更新する。
 図8は、行動価値格納部14に保存された状態番号毎の最適行動とそれに対応する操作量を保存した表である。最適行動とは、ある状態番号D1bに対して保存された各行動D1dの価値の中で最大値に対応する行動番号を指す。具体的には、図6bに示す状態S1に保存される行動番号毎の価値の中で、最大値に対応する行動番号はa1となるため、図8の状態S1(D1b)での最適行動として行動a1(D1d)が保存される。そして、図3bに示す操作量D1cの関係を示した表における、該行動a1に当たる操作量範囲の下限値である1が操作量として図8の表に保存される。
 処理ステップS29で、最適行動選択部15が行動価値格納部14から各状態番号毎の最適行動とその操作量を保存した表と現ステップの状態番号と目標状態の情報を取得し、現ステップに対応する操作量をシミュレータへ出力する。この時、4割の確率でランダムな操作量を出力する。ランダムな操作量を出力することで、探索空間を拡大し、制御精度を高めることができる。
 処理ステップS30で、目標状態に到達したかどうかでエピソード処理の終了判定を行う。目標状態に到達した場合はエピソード処理を終了し、到達していない場合は処理ステップS21の処理に戻る。つまり、最適行動選択部15が行動価値格納部14から取得した現ステップの状態番号が目標状態ならば、処理を終了する。以上がエピソード処理の説明である。
 図4の学習処理装置1の処理フロー図の説明に戻る。処理ステップS3で、エピソード処理が終了した後、エピソード数記憶部16が最適行動選択部15からエピソード処理が終了した情報を取得し、エピソード数記憶部に記憶されたエピソード処理を実施した回数に+1する。
 処理ステップS4で、ユーザーが設定したエピソード数よりもエピソード数記憶部16に記憶されたエピソード処理を実施した回数がユーザーが設定したエピソード数を上回った場合、エピソード記憶部16がプラント動特性シミュレータ11に停止指示を送り、学習情報制御部にも学習処理装置1の処理が終了した情報を送る。以上が学習処理装置1の処理フローである。
 次に、制御処理装置5の処理の流れを説明する。図9は制御処理装置5の処理のフロー図である。図9において、最初の処理ステップS51では、入出力装置53が制御対象6からプラント信号値を取得する。制御対象6とは、制御対象であるプラントを指す。
 処理ステップS52で、状態情報変換部52が、学習情報制御部51を介して行動価値格納部14からプラント信号値と状態番号の関係を表した表とユーザーが入力した情報である目標状態の情報を取得する。
 処理ステップS53で、状態情報変換部52が該プラント信号値を状態番号へ変換する。処理ステップS54で、学習情報制御部51が、状態情報変換部52から状態番号を取得し、行動価値格納部14から、図8に示す表を参考に該状態番号に対応する操作量を取得する。
 処理ステップS55で、入出力装置53が、学習情報制御部51から状態番号と操作量を取得し、制御対象6に対して操作量を出力する。処理ステップS56で、入出力装置53が、制御対象6からプラント信号値を取得する。ここで取得するプラント信号値は、操作量を受けて変化したプラントの状態を表している。処理ステップS57で、制御結果格納部54が、入出力装置53から状態番号と操作量を取得し、格納する。
 図10aと図10bは、制御結果格納部54に格納されているデータの構成例を示す図である。図10aの左端の列には、制御結果格納部54が、入出力装置53から状態番号D1bと操作量D1dを取得した時刻が格納されている。左から2番目の列には、時刻毎に取得した状態番号D1bが格納されている。左から3番目の列には時刻毎に取得した操作量D1dが格納されている。右端の列には、操作量変更回数が格納されている。この操作量変更回数の列における1行目には0が格納される。それ以降の行においては、前の行に格納されている操作量と現時刻で取得された操作量に差がある場合に、前の行に格納されている操作量変更回数に1を加算し、現在の行に格納する。
 図10bの左端の列には、目標状態に収束した時刻が格納されている。つまり、取得した状態番号が目標状態であった時刻を表している。左から2番目の列には、最初に状態番号を取得した時刻から、目標状態を取得するまでの時間が格納されている。右端には、目標状態を取得するまでに操作量を変更した回数を格納している。
 処理ステップS58で、入出力装置53が、学習情報制御部51から取得した状態番号が目標状態であるかどうかの条件判定を行う。取得した状態番号が目標状態ではない場合、処理ステップS53の処理へ戻る。目標状態であった場合は、処理ステップS59の処理へ進む。
 処理ステップS59で、制御結果格納部54が格納されている情報をユーザー入出力装置へ出力する。ここで、出力する情報は、図10bに示すデータの構成例である。以上が制御処理装置5の処理フローである。
 次に、ユーザー入出力装置3で出力する表示画面の説明をする。図11は、前記した学習処理装置1と制御処理装置5における処理を実行する上で、必要となる情報をユーザーが入力する画面の例である。
 項目31は、制御対象であるプラント6が出力する複数種類の信号を表示する。本項目31にある複数信号から処理に用いる信号を、ユーザーは選択する。項目32は、学習処理装置1における更新計算に用いられる(1)式内の割引率γを、ユーザーが入力するための入力欄を表示する。割引率γは、0~1の範囲でユーザーが任意に指定し、入力する。
 項目33は、学習処理装置1におけるエピソード処理を実施する回数を、ユーザーが入力するための入力欄を表示する。項目34は、学習処理装置1における更新計算に用いられる(2)式、(3)式、(4)式内の減衰係数ηを、ユーザーが入力するための入力欄を表示する。
 項目35は、学習処理装置1における更新計算に用いられる関数を(2)式、(3)式、(4)式の中からユーザーが選定するための選定欄を表示する。ユーザーは、一次関数、二次関数、階段関数の中から処理に用いる関数を選定する。項目36は、プラント信号値の種類の中で収束させたい信号値を選定する。該信号値を選定することで、学習処理装置1で本信号を収束させることを目的とした学習が成される。項目37は、収束させたい該信号値の値を、ユーザーが入力するための入力欄を表示する。
 図12は、目標状態への収束時間と、振動頻度の関係を表示する画面の例である。目標への収束時間を縦軸、振動頻度を横軸にとっており、制御処理装置5における制御結果を散布図上へプロットする。
 項目38は、マウスカーソルをプロット点に合わせると表示される補足情報を表す。補足情報には、状態番号として選定したプラント信号の数、ユーザーが入力したエピソード処理を実施する回数、目標状態への収束時間、1分あたりの振動回数、ユーザーが入力した減衰係数ηの値、ユーザーが選定した減衰係数と内包する関数(減衰関数)の種類がある。ユーザーは、本表示画面を確認しつつ最適な入力情報を決定する。ここでいう最適な入力情報とは、目標状態への収束時間が短く、振動頻度が最も少なくなるような、ユーザーが入力する情報の組み合わせ方を指す。これによって、最適な減衰係数の値等を錯誤しながらユーザーが決定することができる。
 以上に述べたように、本実施例によれば、学習処理装置1における価値の更新処理過程において、操作量の振動に対してペナルティを課す理論を付加することにより、振動を抑えた操作量を出力する制御則を獲得することができる。操作量の振動はプラント機器の故障に繋がるため、本制御則を用いてプラントを制御することは、故障リスクを大きく低減することに繋がる。
1:学習処理装置
2:信号情報格納部
3:ユーザー入出力装置
4:入力情報記憶部
5:制御処理装置
6:制御対象
11:プラント動特性シミュレータ
12:状態情報制御部
13:行動価値更新部
14:行動価値格納部
15:最適行動選択部
16:エピソード数記憶部
51:学習情報制御部
52:状態情報変換部
53:入出力装置
54:制御結果格納部

Claims (9)

  1.  プラントの最適行動を学習により求める学習処理装置と、前記学習処理装置で定めた最適行動に従い前記プラントを制御する制御処理装置を備え、
     前記学習処理装置は、複数のプラント信号をプラントの状態に変換し、目標状態を定義する状態情報制御部と、プラントの状態、行動及び目標状態を用いて、前回操作時と今回操作時の間における状態と行動の価値である行動価値を求める行動価値更新部と、前記行動価値を用いて前記目標状態を達成する最適行動を決定する最適行動選択部を備え、プラントの操作量の振動を抑制する行動を最適行動として決定することを特徴とするプラント制御システム。
  2.  請求項1に記載のプラント制御システムであって、
     前記学習処理装置は、前回操作時と今回操作時の操作量の偏差が、与えられた操作量の減衰係数に対して、偏差が小さくかつ目標状態に近づく方向に価値を高める学習を行うことを特徴とするプラント制御システム。
  3.  請求項1に記載のプラント制御システムであって、
     前記学習処理装置は、操作量の振動頻度や目標状態への収束時間を規定範囲内に収め、システムを安定化させるような制御則を学習することを特徴とするプラント制御システム。
  4.  請求項1に記載のプラント制御システムであって、
     プラント制御システムは、入力部および表示部を備え、操作量の振動の度合いを示す任意の減衰係数を入力、表示できることを特徴とするプラント制御システム。
  5.  請求項4に記載のプラント制御システムであって、
     前記表示部の表示画面に、目標状態への収束時間と振動頻度の関係を出力し、前記入力部から減衰係数を入力し、振動を抑える度合いを調整することを特徴とするプラント制御システム。
  6.  請求項2に記載のプラント制御システムであって、
     前記偏差が大きくなるほど更新する価値が線形的に減衰する関数を用いて、前記偏差が極端に大きくならないように学習することで、操作量の振動を抑制することを特徴とするプラント制御システム。
  7.  請求項2に記載のプラント制御システムであって、
     前記偏差が大きくなるほど更新する価値が二次関数的に減衰する関数を用いて、前記偏差が極端に大きくならないように学習することで、操作量の振動を抑制する手段を有することを特徴としたプラント制御システム。
  8.  請求項2に記載のプラント制御システムであって、
     前記偏差が大きくなるほど更新する価値が二次関数的に減衰する関数を用いて、前記偏差が極端に大きくならないように学習することを特徴とするプラント制御システム。
  9.  プラントの最適行動を学習により求め、学習処理で定めた最適行動に従い前記プラントを制御するプラント制御方法であって、
     前記学習処理は、複数のプラント信号をプラントの状態に変換して目標状態を定義し、プラントの状態、行動及び目標状態を用いて、前回操作時と今回操作時の間における状態と行動の価値である行動価値を求め、前記行動価値を用いて前記目標状態を達成する最適行動を決定するとともに、プラントの操作量の振動を抑制する行動を最適行動として決定することを特徴とするプラント制御方法。
PCT/JP2023/029069 2022-10-19 2023-08-09 プラント制御システム及びプラント制御方法 WO2024084784A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022-167657 2022-10-19
JP2022167657A JP2024060341A (ja) 2022-10-19 2022-10-19 プラント制御システム及びプラント制御方法

Publications (1)

Publication Number Publication Date
WO2024084784A1 true WO2024084784A1 (ja) 2024-04-25

Family

ID=90737417

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/029069 WO2024084784A1 (ja) 2022-10-19 2023-08-09 プラント制御システム及びプラント制御方法

Country Status (2)

Country Link
JP (1) JP2024060341A (ja)
WO (1) WO2024084784A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019197315A (ja) * 2018-05-08 2019-11-14 千代田化工建設株式会社 プラント運転条件設定支援システム、学習装置、及び運転条件設定支援装置
JP2020067874A (ja) * 2018-10-25 2020-04-30 ファナック株式会社 出力装置、制御装置、及び学習パラメータの出力方法
JP2021077286A (ja) * 2019-11-13 2021-05-20 オムロン株式会社 ロボット制御モデル学習方法、ロボット制御モデル学習装置、ロボット制御モデル学習プログラム、ロボット制御方法、ロボット制御装置、ロボット制御プログラム、及びロボット
JP2021144287A (ja) * 2020-03-10 2021-09-24 株式会社日立製作所 制御システム及び制御方法
JP2022501671A (ja) * 2019-08-13 2022-01-06 グーグル エルエルシーGoogle LLC 信頼できるコード証明トークンによるデータの完全性の向上

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019197315A (ja) * 2018-05-08 2019-11-14 千代田化工建設株式会社 プラント運転条件設定支援システム、学習装置、及び運転条件設定支援装置
JP2020067874A (ja) * 2018-10-25 2020-04-30 ファナック株式会社 出力装置、制御装置、及び学習パラメータの出力方法
JP2022501671A (ja) * 2019-08-13 2022-01-06 グーグル エルエルシーGoogle LLC 信頼できるコード証明トークンによるデータの完全性の向上
JP2021077286A (ja) * 2019-11-13 2021-05-20 オムロン株式会社 ロボット制御モデル学習方法、ロボット制御モデル学習装置、ロボット制御モデル学習プログラム、ロボット制御方法、ロボット制御装置、ロボット制御プログラム、及びロボット
JP2021144287A (ja) * 2020-03-10 2021-09-24 株式会社日立製作所 制御システム及び制御方法

Also Published As

Publication number Publication date
JP2024060341A (ja) 2024-05-02

Similar Documents

Publication Publication Date Title
JP4542323B2 (ja) プロセス制御システムにおける統合型モデル予測制御および最適化
US9513610B2 (en) Apparatus and methods for non-invasive closed loop step testing using a tunable trade-off factor
US11442416B2 (en) Plant control supporting apparatus, plant control supporting method, and recording medium
JP7090243B2 (ja) プラント運転条件設定支援システム、学習装置、及び運転条件設定支援装置
Khamis et al. Nonlinear optimal tracking using finite-horizon state dependent Riccati equation (SDRE)
JP4952025B2 (ja) 運転制御方法,運転制御装置及び運転制御システム
JP6380552B2 (ja) 制御装置、そのプログラム、プラント制御方法
US10082773B2 (en) Formulating steady-state targets using prioritized objective functions
KR100696751B1 (ko) 프로세스 제어장치의 조정방법, 그 조정 툴 및 이를사용한 프로세스 제어장치
CN111684366A (zh) 学习装置、学习方法及其程序
US11073804B2 (en) Interface between processing environment optimization layers
Zafiriou et al. Output constraint softening for SISO model predictive control
WO2024084784A1 (ja) プラント制御システム及びプラント制御方法
JP7045857B2 (ja) モデル予測制御アプリケーションにおける最高性能値に関する優れた性能のためのシステム及び方法
JP2015084155A (ja) パラメータ調整装置、パラメータ調整方法およびパラメータ調整プログラム
US20220326665A1 (en) Control system, and control method
JP7036128B2 (ja) 制御装置、制御方法およびプログラム
US5602966A (en) Modeling device and modeling method for determining membership functions for fuzzy logic processing
Marchal et al. Decision support system based on fuzzy cognitive maps and run-to-run control for global set-point determination
US4992927A (en) Self-propagating control apparatus and method, propagating-type controller used by said apparatus, method of operating and controlling same, and supervisor
US10768586B2 (en) System and method for background element switching for models in model predictive estimation and control applications
JP7441775B2 (ja) 制御装置及び制御方法
JP7111761B2 (ja) プラント運転最適化支援装置、プラント運転最適化制御装置並びに方法
US20240160166A1 (en) Method and system for real-time industrial process guidance
Tchamna et al. Constraint handling optimal PI controller design for integrating processes: optimization-based approach for analytical design