WO2019176772A1 - 学習装置、学習方法、及びそのプログラム - Google Patents

学習装置、学習方法、及びそのプログラム Download PDF

Info

Publication number
WO2019176772A1
WO2019176772A1 PCT/JP2019/009335 JP2019009335W WO2019176772A1 WO 2019176772 A1 WO2019176772 A1 WO 2019176772A1 JP 2019009335 W JP2019009335 W JP 2019009335W WO 2019176772 A1 WO2019176772 A1 WO 2019176772A1
Authority
WO
WIPO (PCT)
Prior art keywords
correction amount
control
learned model
learning
command value
Prior art date
Application number
PCT/JP2019/009335
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 オムロン株式会社
Priority to CN201980011789.1A priority Critical patent/CN111684365B/zh
Priority to EP19767608.3A priority patent/EP3767400B1/en
Priority to US16/968,164 priority patent/US11480931B2/en
Publication of WO2019176772A1 publication Critical patent/WO2019176772A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • G05B13/027Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0205Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
    • G05B13/024Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system in which a parameter or coefficient is automatically adjusted to optimise the performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33027Artificial neural network controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33034Online learning, training

Definitions

  • the present invention relates to a learning device, a learning method, and a program thereof.
  • Patent Document 1 discloses a press system capable of reducing the influence of variations in plate thickness when manufacturing a press-processed product.
  • the press system of Patent Document 1 includes a press machine and a supply device that supplies a work to the press machine, and obtains plate thickness information of the work before pressing by the press machine, Die height setting means for setting the die height (H) of the press machine based on the board thickness information from the board thickness obtaining means.
  • a die height adjustment amount (correction amount) is calculated using a learned model that has been learned to output a control amount such as an appropriate die height according to the parameters of the processing object. It is possible to set. In this case, it is conceivable to use data including the parameters of the processing object and an appropriate correction amount as the teacher data, and actually perform processing such as processing and assembly on the processing object such as a press machine.
  • the appropriate value of the control amount such as die height is not limited to the plate thickness but is affected by various parameters such as the hardness, temperature, and material of the processing object. Therefore, in order to confirm whether or not the correction amount used as the teacher data is appropriate, it is necessary to perform trial and error with respect to various objects to be processed, which requires an enormous amount of time.
  • the present invention provides a technique for efficiently learning an appropriate correction amount for generating a command value to be given to a control target in predictive control of a control system that performs processing such as processing and assembly on the processing target.
  • the purpose is to provide.
  • a learning device is a controller that outputs a command value obtained by correcting a target value based on a correction amount, and a control object that is controlled to perform a predetermined process on a processing object.
  • a control system comprising a control object to which a command value output from the controller is input and a control amount is output as a response to the command value, a predetermined value is given to the controller based on a specific parameter of the processing object
  • a learning device that provides the learned model for an adjuster including a learned model that has been learned to output the correction amount, and obtains operation data including a target value, a command value, and a control amount Then, based on the evaluation unit that evaluates the quality of the control amount and the operation data, a correction amount candidate is generated, and the generated correction amount candidate and a specific parameter of the processing target are used as teacher data.
  • the learning device when the learning device generates a correction amount candidate without actually operating the control target, the learning device outputs an appropriate correction amount to the learned model generated using the correction amount candidate. Acceptance can be determined after confirming whether or not. Thereby, it is possible to eliminate an inappropriate learned model while performing learning more efficiently while actually operating the control target.
  • the “parameter” includes a feature amount or physical amount of the processing object and other arbitrary numerical information.
  • the feature quantity is, for example, the material of the processing object
  • the physical quantity is, for example, the hardness or temperature of the processing object.
  • the setting unit outputs the correction amount output by the generated learned model when the specific parameter of the processing target given to the control target is equal to the parameter for which the generated learned model is not evaluated. May be output to the controller, and the evaluation unit may evaluate the quality.
  • the learning unit is configured to perform learning again when the quality evaluated based on the correction amount output by the generated learned model is less than the allowable range, and to regenerate the learned model. Also good. Thereby, an inappropriate learned model can be excluded.
  • the learning unit may be configured to generate the correction amount candidate by data drive control.
  • Data drive control may be either VRFT, FRIT, or ERIT.
  • the learning unit can generate a correction amount candidate without generating a dynamic characteristic model to be controlled and generate teacher data by using a data drive control method such as VRFT, FRIT, or ERIT. It becomes possible.
  • the learning device can generate correction amount candidates without repeatedly performing the actual operation of the control target. As a result, the learning device can perform learning more efficiently without preparing or damaging the processing object.
  • a learning method includes a controller that outputs a command value obtained by correcting a target value based on a correction amount, and a control object that is controlled to perform a predetermined process on the processing object. And a control object that receives a command value output from the controller and outputs a control amount as a response to the command value.
  • a program includes a controller that outputs a command value obtained by correcting a target value based on a correction amount, and a control target that is controlled to perform a predetermined process on a processing target. And a control target to which a control amount is output as a response to the command value, a predetermined correction is made to the controller based on a specific parameter of the processing object.
  • a technique for efficiently learning an appropriate correction amount for generating a command value to be given to a control target in predictive control of a control system that performs processing such as processing and assembly on the processing target can be provided.
  • this embodiment an embodiment according to an aspect of the present invention (hereinafter also referred to as “this embodiment”) will be described with reference to the drawings.
  • the embodiments described below are merely examples of the present invention in all respects. It goes without saying that various improvements and modifications can be made without departing from the scope of the present invention. That is, in implementing the present invention, a specific configuration according to the embodiment may be adopted as appropriate.
  • data appearing in this embodiment is described in a natural language, more specifically, it is specified by a pseudo language, a command, a parameter, a machine language, or the like that can be recognized by a computer.
  • FIG. 1 is a diagram showing an example of the configuration of a control system 1 according to the present invention.
  • the control system 1 includes a controller 10, a servo mechanism 20, an adjuster 30, and a learning device 40.
  • the controller 10 generates a command value u (t) obtained by correcting the target value r (t) based on the correction amount ⁇ output from the adjuster 30 and outputs the command value u (t) to the servo mechanism 20.
  • the target value r (t) may be generated by the controller 10 (including using the stored target value), or may be given to the controller 10 from the outside.
  • the controller 10 generates the command value u by performing the calculation shown in the following equation (1).
  • ⁇ Controller calculation formula> u (t) C ( ⁇ ) ⁇ r (t) (1)
  • the servo mechanism 20 is controlled by the controller 10 so as to perform predetermined processing on a processing target (hereinafter also referred to as “work”).
  • the servo mechanism 20 is given a command value u (t) from the controller 10 and outputs a control amount y (t) as a response to the input value.
  • the servo mechanism 20 shows an example of a press machine that presses a workpiece with a predetermined amount of pressure, but is not limited thereto.
  • the servo mechanism 20 is an example of the “control target” in the present invention.
  • the adjuster 30 outputs the correction amount ⁇ given to the controller 10.
  • the adjuster 30 has a learned model learned so that an appropriate correction amount is output based on a specific parameter among parameters of the workpiece.
  • the thickness of the workpiece may be a specific parameter.
  • the learned model may be provided from the learning device 40.
  • the adjuster 30 may acquire a workpiece parameter from a sensor (not shown). The sensor may be included in the servo mechanism 20, for example.
  • the learning device 40 In generating the learned model, the learning device 40 first operates the control system for the processing target having a certain parameter ⁇ once, and then sets the target value r (t) and the command value u. The relationship between (t) and the controlled variable y (t) is acquired. Next, the learning device 40 calculates a correction amount candidate ⁇ * corresponding to the parameter ⁇ from these three values. The learning device 40 generates teacher data based on the calculated correction amount candidate ⁇ * and the parameter ⁇ . By executing this process for a plurality of parameters, the learning device 40 can generate a plurality of teacher data having each parameter and a correction amount candidate corresponding to the parameter. Then, the learning device 40 generates a learned model by performing learning using the generated one or more teacher data. It should be noted that whether or not the generated teacher data is actually used for learning may be determined in light of a predetermined employment standard.
  • the learning device 40 may use a data-driven control method such as VRFT (Virtual Reference Feedback Tuning), FRIT (Fictitious Reference Iterative Tuning), or ERIT (Estimated Response Iterative Turning). it can.
  • the control parameter can be set using the obtained data without obtaining the dynamic characteristic model of the control target (in the present embodiment, the servo mechanism 20).
  • a correction amount candidate ⁇ * is generated from a set of operation data without repeating experiments, that is, without repeating the actual operation of the servo mechanism 20, and this is used as teacher data. Use as This shortens the time required to generate appropriate teacher data and enables efficient generation of a learned model for outputting an appropriate correction amount.
  • the learning device 40 when the correction amount candidate ⁇ * generated using the data drive control method is learned as teacher data, the learned model obtained by learning does not necessarily output an appropriate correction amount. Therefore, the learning device 40 generates the learning model 40 when the learned model is evaluated and it is confirmed that a control amount of a predetermined quality can be obtained before setting the learned model in the adjuster 30.
  • a learned model may be set in the adjuster 30. For example, it is assumed that learning is performed using the parameter ⁇ of the workpiece X and the correction amount candidate ⁇ * as teacher data, and a newly learned model LM * is generated.
  • the learning device 40 when another work having the same parameter ⁇ as the work X is given to the servo mechanism 20, the learning device 40 generates the correction amount ⁇ ⁇ using the learned model LM * generated earlier, Provided to the controller 10.
  • the controller 10 generates a command value u (x) based on the correction amount [rho alpha, servomechanism 20 outputs a control amount y (x) in response to the command value u (x).
  • the quality evaluation unit 42 evaluating the quality of the control amount y (x)
  • the learning device 40 is newly generated in the adjuster 30.
  • the learned model LM * may be set.
  • the setting unit 44 may not update the learned model. Accordingly, when the learning device 40 generates a correction amount candidate without actually operating the control target, the learning device 40 outputs an appropriate correction amount for the learned model generated using the correction amount candidate. Therefore, it is possible to determine whether or not to adopt, so that it is possible to eliminate inappropriate learned models while performing learning more efficiently. As a result, the learning device can perform learning more efficiently without preparing or damaging the processing object.
  • FIG. 2 is a functional block diagram illustrating an example of a functional configuration of the learning device 40.
  • the learning device 40 includes a storage unit 41, a quality evaluation unit 42, a learning unit 43, and a setting unit 44.
  • the storage unit 41 stores a reference model Td and a management table.
  • the reference model Td represents an ideal response transfer function of the control amount y (t) with respect to the target value r (t).
  • target response an ideal control amount (hereinafter also referred to as “target response”) yd (t) with respect to the target value r (t) is expressed by the following equation (3).
  • ⁇ Expression of reference model Td> yd (t) Td ⁇ r (t) (3)
  • the reference model Td is not limited to a transfer function, and is generated by machine learning based on the target value r (t) and the control amount y (t) when the servo mechanism 20 is operated without a workpiece.
  • a model may be used.
  • FIG. 3 is a diagram illustrating an example of the management table.
  • the teacher data includes, for each workpiece, parameters of the workpiece (hardness in the example of FIG. 3) as input data and an optimal correction amount (hereinafter referred to as “optimal correction” when outputting a command value to the workpiece as output data. Is also referred to as “amount”).
  • the result of evaluation of the quality of the control amount output by the servo mechanism 20 in response to the command value generated based on the optimum correction amount associated with each work is associated.
  • the optimum correction amount is only an example of the correction amount, and it is not essential to use the optimum correction amount.
  • the servo mechanism 20 After the new teacher data record is added to the management table, if the servo mechanism 20 has not yet processed the work corresponding to the record, for example, the evaluation result column of the management table is not yet displayed. Implementation may be registered.
  • the management table manages the teacher data used by the learning unit 43 for learning and the evaluation results of the learned model newly generated (or updated) using the teacher data. .
  • the learned model LM generated by the learning unit 43 is stored in the storage unit 41.
  • the storage unit 41 preferably stores a plurality of generations of learned models generated by the learning unit 43.
  • the quality evaluation unit 42 acquires operation data from the controller 10 and the servo mechanism 20 and evaluates the quality of the control amount. As an example, the case where the quality evaluation unit 42 outputs a control amount y (t) from the servo mechanism 20 as a response to the command value u (t) given to the target value r (t) will be described. At this time, the quality evaluation unit 42 inputs the target value r (t) to the reference model Td, and acquires the target response yd (t) for the target value r (t).
  • the quality evaluation unit 42 performs quality conversion on the target response yd (t) and the control amount y (t) to calculate an alternative index of quality.
  • the quality evaluation unit 42 performs quality conversion on the target response yd (t) and the control amount y (t) to calculate the bottom dead center position and settling time. More specifically, the quality evaluation unit 42 calculates the bottom dead center position from the maximum values of the target response yd (t) and the control amount y (t). The quality evaluation unit 42 subtracts the time when the command value reaches the target position from the time when the target response yd (t) enters the target position and the time when the control amount y (t) enters the target position. Thus, each settling time is calculated.
  • the bottom dead center position is a position where the stroke length of the servo mechanism 20 is maximized.
  • the settling time is an elapsed time from when the stroke length of the servo mechanism 20 enters the settling width to when it reaches the target position.
  • the settling width is a width within a predetermined range from the target position (for example, the target position). ⁇ 10 ⁇ m).
  • the quality evaluation unit 42 evaluates the quality of the control amount y (t) based on the bottom dead center position and the settling time, which are alternative indices calculated by converting the quality. For example, the quality evaluation unit 42 determines that the control amount y (t) has a predetermined tolerance based on whether the bottom dead center position matches the target position and whether the bottom dead center position is included in the settling width. It is possible to evaluate the quality by determining whether or not it is within the range.
  • the quality evaluation unit 42 may evaluate the quality of the control amount y (t) using the X bar -R control chart.
  • the X bar -R control chart is a control chart for managing the change of the average value and the change of the quality evaluation target.
  • FIG. 4 shows an example of an x control chart among the X bar -R control charts used by the quality evaluation section 42 for quality evaluation.
  • the vertical axis represents the stroke length.
  • Graphs L1 and L2 are averages of the bottom dead center positions calculated by quality conversion for each control amount y (t) when the servo mechanism 20 processes a plurality of lots of workpieces in each lot. It is an example of what plotted the value.
  • FIG. 1 is averages of the bottom dead center positions calculated by quality conversion for each control amount y (t) when the servo mechanism 20 processes a plurality of lots of workpieces in each lot. It is an example of what plotted the value.
  • the solid line indicates the upper limit and the lower limit of the standard value L3, and the broken line L4 indicates the upper limit and the lower limit of the management value.
  • the standard value is, for example, a request value of a customer who requested machining for a workpiece.
  • the management value is a value for managing so as not to exceed the standard value.
  • the target value of quality is shown at the center of the graph.
  • the graph L2 shows an example when the quality is within the range of the management value
  • the graph L1 shows an example when the quality does not fall within the standard value.
  • the example of FIG. 4 has shown the example which plotted the graph for every lot, the value of each plot is not limited to the value calculated per lot, It is based on the process with respect to 1 or several workpiece
  • quality-converted values may be used.
  • the quality evaluation unit 42 determines whether the bottom dead center position of the control amount y (t) is within the range of the management value or whether it is within the range of the standard value. Based on this, the quality may be evaluated by determining whether or not the control amount y (t) is within a predetermined allowable range. For example, based on whether or not the control amount y (t) is within a predetermined allowable range as a result of quality evaluation using the X bar -R control chart shown in FIG. The result of quality evaluation may be registered. More specifically, for example, when responding to a command value generated based on the optimum correction amount candidate (0.5 mm in the example of FIG.
  • the control amount y ( ⁇ ) is output.
  • it is based on whether the bottom dead center position of the control amount y ( ⁇ ) is within the range of the management value or whether it is within the range of the standard value.
  • the result of the quality evaluation of the control amount y ( ⁇ ) is registered as the result of the quality evaluation in the record in the first row of the management table in FIG.
  • the learning unit 43 generates teacher data based on the correction amount candidate ⁇ * calculated using the operation data, and generates a learned model.
  • the learning unit 43 preferably uses data drive control such as VRFT, FRIT, and ERIT in calculating the correction amount candidate ⁇ *.
  • Data drive control is a method of setting control parameters using data without obtaining a dynamic characteristic model of a control target (in the present embodiment, the servo mechanism 20).
  • Data drive control such as VRFT, FRIT, and ERIT is a method that can specify a correction amount from a set of operation data without performing repeated experiments.
  • the set of operation data includes a target value r, a command value given based on the target value, and a control amount output as a response to the command value.
  • the correction amount candidate generation process of the learning unit 43 will be described in more detail.
  • the learning unit 43 refers to the reference model Td, and the operation data when the servo mechanism 20 performs an operation on an arbitrary work (hereinafter referred to as “work X”) based on an arbitrary command value uini.
  • work X an arbitrary work
  • operation data Y an example of generating the correction amount candidate ⁇ * based on the operation data when the operation is performed on the workpiece X based on the arbitrary command value uini.
  • operation data Y an example of generating the correction amount candidate ⁇ * based on the operation data when the operation is performed on the workpiece X based on the arbitrary command value uini.
  • the command value uini is generated by correcting the target value r based on a certain correction amount ⁇ ini.
  • the motion data Y is represented by ⁇ r, uini, yini ⁇ . .
  • the learning unit 43 first calculates a virtual reference signal using the inverse model Td ⁇ 1 of the reference model Td according to the following equation (4).
  • the learning unit 43 calculates a correction amount candidate ⁇ * that minimizes the evaluation function Jv ( ⁇ ) represented by the following equation (5).
  • C ( ⁇ ) represents the transfer function of the controller 10 described above.
  • the learning unit 43 first calculates a pseudo reference signal according to the following equation (6).
  • C ( ⁇ ) ⁇ 1 represents the inverse transfer function of the controller 10.
  • the learning unit 43 calculates a correction amount candidate ⁇ * that minimizes the evaluation function Jf ( ⁇ ) represented by the following expression (7).
  • the learning unit 43 adds the calculated correction amount candidate ⁇ * as the optimum correction amount ⁇ ′, associates the parameter of the work X with the parameter of the work X, and adds it as teacher data to the management table.
  • the learning unit 43 may be configured to determine whether or not to adopt the correction amount candidate ⁇ * as the optimum correction amount ⁇ ′. In this case, the learning unit 43 determines whether or not the calculated correction amount candidate ⁇ * satisfies a predetermined adoption criterion, and when it satisfies, adopts the optimum correction amount ⁇ ′ and adds it to the management table.
  • the adoption criterion is, for example, whether or not the calculated correction amount candidate ⁇ * is a value (for example, an outlier) that is a predetermined value or more away from the optimal correction amount included in the teacher data registered in the management table.
  • the adoption criterion is that the correction amount candidate ⁇ * is not a value that is a certain value or more away from the average value of the optimum candidate amount included in the teacher data, or is a certain value or more from the maximum value or the minimum value of the optimum candidate amount. It may be a distant value.
  • the adoption criterion may be whether or not the calculated correction amount candidate ⁇ * is included in the range of the optimum correction amount included in the teacher data registered in the management table.
  • the learning unit 43 performs learning based on the teacher data registered in the management table, and generates a learned model LM *. For example, an existing neural network or regression analysis technique can be used for learning performed when generating a learned model.
  • the learning unit 43 adds and stores the learned model LM * generated this time in the storage unit 41.
  • the learning unit 43 may be configured to overwrite the learned model LM stored in the storage unit 41 with the learned model LM * generated this time.
  • the learning unit 43 may be configured to determine whether or not learning is necessary when generating the correction amount candidate ⁇ *. In this case, the learning unit 43 determines whether or not a predetermined learning necessity determination criterion is satisfied, and when satisfied, generates a correction amount candidate ⁇ * for performing learning.
  • the predetermined learning necessity determination criterion is, for example, whether or not the result of the quality evaluation unit 42 for the operation data Y is within an allowable range. Further, the predetermined learning necessity determination criterion may be whether or not the parameter of the workpiece X has been learned in the past, that is, whether or not it is outside the range of the parameter learned in the learned model currently set in the adjuster 30. .
  • the predetermined learning necessity determination criterion may be whether or not the external environment of the servo mechanism 20 has changed from the previous external environment when the workpiece X is operated.
  • the learning unit 43 may detect a change in the external environment based on an arbitrary input from the user, or obtain image data including the external environment of the servo mechanism 20 from the sensor, and obtain the acquired image data. Based on the above, a change in the external environment may be detected.
  • the setting unit 44 sets the learned model LM * generated by the learning unit 43 in the adjuster 30. At this time, the setting unit 44 may evaluate the learned model LM * before setting the learned model LM *, and may determine whether to set to the adjuster 30 based on the evaluation result.
  • the setting unit 44 performs control using the learned model LM *, and determines whether or not to set the learned model LM * in the adjuster 30 based on the quality evaluation for the controlled result. it can. Specifically, for example, it is assumed that the learning unit 43 performs additional learning using the parameter ⁇ of the workpiece X and the correction amount candidate ⁇ * as teacher data, and newly generates a learned model LM *. Setting unit 44 at this time, when the workpiece with alpha similar to the workpiece X parameter is given to the servo mechanism 20, by using the learned model LM *, generates a correction amount [rho alpha.
  • the learned model LM * is based on the correction amount [rho alpha generated to generate a command value u (x), and outputs to the servo mechanism 20.
  • the quality evaluation unit 42 evaluates the quality of the control amount y (x) output as a response to the command value u (x) by the servo mechanism 20. If the control amount y (x) is within a predetermined allowable range as a result of the quality evaluation, the setting unit 44 can set the newly generated learned model LM * in the adjuster 30. On the other hand, when the predetermined allowable range is not reached, the setting unit 44 may use the model already set in the adjuster 30 without updating the learned model.
  • the setting unit 44 evaluates the learned models LM * in the order in which they are newly generated, for example, A learned model LM * whose result is within an allowable range may be first selected and set in the adjuster 30. Further, for example, the setting unit 44 may evaluate all the learned models LM *, select the learned model LM * with the best evaluation result, and set it in the adjuster 30.
  • the setting unit 44 may delete the learned model LM * whose evaluation did not satisfy the predetermined allowable range from the storage unit 41.
  • the setting unit 44 performs an evaluation on the newly generated (or updated) learned model LM * before actually setting the adjusted model LM * in the adjuster 30, so that the learned model with insufficient quality is obtained. Is not set in the adjuster 30, it is possible to prevent the processing accuracy of the control system 1 from being lowered.
  • the learning device 40 generates a reference model Td (S101). At this time, the learning device 40 obtains reference operation data [r, yd].
  • the reference operation data may be, for example, the target value r and the control amount y of the servo mechanism 20 when an operation without a workpiece is performed. Based on the acquired motion data [r, yd], the learning device 40 generates a reference model Td.
  • a correction amount q for the target value is set (S102).
  • the correction amount q may be set manually by the user, or when a learned model is already set in the adjuster 30, the learned model may be generated.
  • the controller 10 generates a command value u based on the set correction amount q and outputs it to the servo mechanism 20.
  • a control amount y is output as a response to the command value u.
  • the learning device 40 acquires the operation data [r, u, y] at this time (S103).
  • the learning unit 43 can determine whether or not the acquired operation data [r, u, y] is necessary based on the result of the quality evaluation performed by the quality evaluation unit 42.
  • the criterion for determining whether learning is necessary is not limited to this, and whether the parameter of the current work is within the range of previously learned parameters or whether the external environment has changed may be used as the criterion. Good. Further, for example, a person may determine whether or not learning is necessary.
  • the process returns to S102 and the next workpiece is processed.
  • the learning unit 43 refers to the reference model Td and generates a correction amount candidate ⁇ * (S105).
  • the learning unit 43 can use a data drive control method such as VRFT, FRIT, or ERIT when generating the correction amount candidate ⁇ *.
  • the learning unit 43 determines whether or not to add the generated correction amount candidate ⁇ * and the work parameter given to the servo mechanism 20 in S102 as teacher data (S106).
  • the adoption criterion for determining whether or not to add is, for example, whether or not the calculated correction amount candidate ⁇ * is a value that is not more than a predetermined value away from the correction amount included in the teacher data registered in the management table. is there. Further, for example, the adoption criterion may be whether or not the calculated correction amount candidate ⁇ * is included in the correction amount range included in the teacher data registered in the management table.
  • the learning unit 43 sets the generated correction amount candidate ⁇ * as the optimum correction amount ⁇ ′ as the teacher data, and the workpiece parameter ⁇ given to the servo mechanism 20 in S102. A record is generated in association with and added to the management table (S201). On the other hand, if it is determined not to be added (S106: NO), the process returns to S101 and the process is performed on the next workpiece. Note that the learning unit 43 may be configured to generate the teacher data and add it to the management table as the optimum correction amount ⁇ ′ as it is without performing the determination of S106 and using the generated correction amount candidate ⁇ * as it is.
  • the learning unit 43 When the teacher data is added based on the parameter ⁇ and the optimal correction amount candidate ⁇ ′, the learning unit 43 performs additional learning and newly generates (or updates) a learned model LM * (S202).
  • the setting unit 44 determines whether or not to set the generated learned model in the adjuster 30 (S205). .
  • the case where it is equal to the parameter ⁇ is not limited to the case where it is the same as the parameter ⁇ , but includes the case where the parameter ⁇ is approximated. Whether or not the parameters are approximate may be determined by whether or not a specific parameter is included in a predetermined range.
  • the setting unit 44 determines whether to set based on a result of control using the learned model LM *. Specifically, the setting unit 44, giving the parameter alpha to the trained model LM * to generate a correction amount [rho alpha. And a correction amount ⁇ corrected command value based on alpha, the control quantity when given to the servo mechanism 20, based on the evaluation result of the quality of the quality evaluation unit 42 sets the learned model regulator 30 It may be determined whether or not.
  • the setting unit 44 sets the newly generated learned model in the adjuster 30 (S206).
  • the learning unit 43 acquires the current operation data and newly generates a correction amount candidate ⁇ * (S204). At this time, the learning unit 43 determines whether or not the regenerated correction amount candidate ⁇ * satisfies the employment standard, similar to S106. If the employment standard is satisfied, the correction amount candidate ⁇ * is optimally corrected. As a quantity ⁇ ′, the process returns to S201, and a learned model is generated again.
  • the setting unit 44 sets the learned model generated by the learning unit 43 in the adjuster 30. At this time, the setting unit 44 evaluates the learned model before setting the learned model, and determines whether or not to set in the adjuster 30 based on the evaluation result. That is, according to the learning device 40 according to the present embodiment, learning is performed using the correction amount candidates generated based on the motion data, and the setting unit 44 evaluates the generated learned model. For example, the setting unit 44 evaluates the quality of the learned model based on the result of control using the generated learned model. Accordingly, the learning device 40 can use the correction amount candidate as the teacher data without repeatedly performing an experiment, that is, the actual operation of the control target, and shortens the time required to generate appropriate teacher data. be able to.
  • the computer 800 includes a processor 801, a memory 803, a storage device 805, an input I / F unit 807, a data I / F unit 809, a communication I / F unit 811, and a display device 813.
  • the processor 801 controls various processes in the computer 800 by executing a program stored in the memory 803.
  • the quality evaluation unit 42, the learning unit 43, the setting unit 44, and the like of the learning device 40 can be realized as a program that mainly operates on the processor 801 after being temporarily stored in the memory 803. That is, the processor 801 interprets and executes the program temporarily stored in the memory 803, thereby realizing the functions of the quality evaluation unit 42, the learning unit 43, and the setting unit 44.
  • the memory 803 is a storage medium such as a RAM (Random Access Memory).
  • the memory 803 temporarily stores a program code of a program executed by the processor 801 and data necessary for executing the program.
  • the storage device 805 is a non-volatile storage medium such as a hard disk drive (HDD) or flash memory.
  • the storage device 805 stores an operating system and various programs for realizing the above-described configurations.
  • the storage device 805 can also store a reference model Td and a management table. Such programs and data are referred to by the processor 801 by being loaded into the memory 803 as necessary.
  • the input I / F unit 807 is a device for receiving input from the user. Specific examples of the input I / F unit 807 include a keyboard, a mouse, a touch panel, various sensors, and a wearable device. The input I / F unit 807 may be connected to the computer 800 via an interface such as USB (Universal Serial Bus).
  • USB Universal Serial Bus
  • the data I / F unit 809 is a device for inputting data from the outside of the computer 800.
  • Specific examples of the data I / F unit 809 include a drive device for reading data stored in various storage media.
  • the data I / F unit 809 may be provided outside the computer 800. In this case, the data I / F unit 809 is connected to the computer 800 via an interface such as a USB.
  • the communication I / F unit 811 is a device for performing data communication with an external device of the computer 800 via the Internet N by wire or wireless.
  • the communication I / F unit 811 may be provided outside the computer 800. In that case, the communication I / F unit 811 is connected to the computer 800 via an interface such as a USB.
  • the display device 813 is a device for displaying various information. Specific examples of the display device 813 include a liquid crystal display, an organic EL (Electro-Luminescence) display, and a wearable device display.
  • the display device 813 may be provided outside the computer 800. In that case, the display device 813 is connected to the computer 800 via, for example, a display cable.
  • FIG. 7 is a diagram illustrating an example of the configuration of the control system 2. Note that description of matters common to the above-described embodiment is omitted, and only different points will be described. In particular, the same reference numerals are given to the above-described configurations, and the same functions and effects of the similar configurations will not be sequentially described for each embodiment.
  • the control system 2 has a controller 11 instead of the controller 10 in the control system 1. Further, the adjuster 30 inputs the correction amount ⁇ to the controller 11. Other configurations and functions are the same as those of the above-described embodiment.
  • the command value can be calculated by simply adding the target value and the correction amount without using the transfer function. This eliminates the need for a transfer function design, and thus facilitates the design of the control model.
  • the learning device 40 has been described as a configuration for newly generating a learned model, but may be configured to update an existing learned model.
  • the learning device 40 performs learning using a data set obtained by adding the newly generated teacher data to the teacher data used when the existing learned model is generated. A new learned model can be generated.
  • the learning device 40 can update the learned model by additionally learning the existing learned model using the newly generated teacher data. it can.
  • a control system (1) comprising: For a regulator (30) including a learned model learned to output a predetermined correction amount ( ⁇ ) to the controller (10) based on specific parameters of the processing object, A learning device (40) for providing the learned model, An evaluation unit (42) for obtaining operation data including the target value (r), the command value (u), and the control amount (y), and evaluating the quality of the control amount (y); Based on the operation data, a correction amount candidate ( ⁇ *) is generated, learning is performed using the generated correction
  • the evaluation unit (42) evaluates based on the control amount (y) when the command value (u) corrected based on the correction amount output by the generated learned model is given to the control target.
  • a learning device (40) comprising: (Appendix 2) The setting unit (44) When a specific parameter of the processing object given to the control object is equal to a parameter for which the evaluation of the generated learned model is not performed, the controller outputs the correction amount output by the generated learned model. And the evaluation unit (42) evaluates the quality.
  • the learning device (40) according to appendix 1.
  • the learning unit (43) When the quality evaluated based on the correction amount ( ⁇ ) output by the generated learned model is less than the allowable range, learning is performed again, and the learned model is generated again.
  • the learning unit (43) generates the correction amount candidate ( ⁇ *) by data drive control.
  • the learning device (40) according to any one of appendices 1 to 3.
  • the data drive control is one of VRFT, FRIT, or ERIT.
  • a control system (1) comprising: For a regulator (30) including a learned model learned to output a predetermined correction amount ( ⁇ ) to the controller (10) based on specific parameters of the processing object, A learning method executed in a learning device (40) that provides the learned model, The learning device (40) Obtaining operation data including the target value (r), the command value (u), and the control amount (y), and evaluating the quality of the control amount (y); Based on the operation data, a correction amount candidate ( ⁇ *) is generated, learning is performed using the generated correction amount candidate ( ⁇ *) and a specific parameter of the processing target as teacher data, and a
  • a control system (1) comprising: For a regulator (30) including a learned model learned to output a predetermined correction amount ( ⁇ ) to the controller (10) based on specific parameters of the processing object, A program for causing a learning device (40) that provides the learned model to function, The learning device (40) Means for obtaining operation data including the target value (r), the command value (u), and the control amount (y), and evaluating the quality of the control amount (y); Based on the operation data, a correction amount candidate ( ⁇ *) is generated, learning is performed using the
  • Evaluation is performed in the evaluation unit based on a control amount when a command value obtained by correcting a target value based on a correction amount candidate output by the generated learned model is given to the control target.

Landscapes

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

Abstract

補正量に基づいて目標値を補正した指令値を出力するコントローラと、処理対象物に対して所定の処理をするよう制御される制御対象と、を備える制御系において、処理対象物の特定のパラメータに基づいて、コントローラに対して所定の補正量を出力するように学習された学習済みモデルを含む調整器に対して学習済みモデルを提供する学習装置が、目標値、指令値及び制御量を含む動作データを取得して制御量の品質を評価する評価部と、動作データに基づいて、補正量候補を生成し、生成した補正量候補と、処理対象物の特定のパラメータとを教師データとして学習を行い、学習済みモデルを生成する学習部と、生成された学習済みモデルによって出力された補正量に基づいて目標値を補正した指令値を制御対象に与えたときの制御量に基づいて、評価部において評価された品質が予め定められた許容範囲内であるときに学習済みモデルを前記調整器に提供する設定部と、を備える。

Description

学習装置、学習方法、及びそのプログラム
 本発明は、学習装置、学習方法、及びそのプログラムに関する。
 プレス機械等の制御装置を用いて材料の加工・組立等を行った場合、通常、一度加工等を行った材料は元に戻せない。したがって、同一の材料に対して繰り返し加工等を行いながら、適切に制御量を調整することはできない。そのため、材料の性質と制御入力の関係を定量化し、新しく加工等を行うときに適切な制御入力を与え、適切な制御量を得ることが重要となる。
 例えば特許文献1には、プレス加工品を製造するにあたり、板厚のばらつきの影響を低減可能なプレスシステムが開示されている。特許文献1のプレスシステムは、プレス機械と、このプレス機械にワークを供給する供給装置とから構成されており、ワークの板厚情報をプレス機械によるプレス前に入手する板厚入手手段と、当該板厚入手手段からの板厚情報によりプレス機械のダイハイト(H)を設定するダイハイト設定手段とを備えている。
特開2005-211928号公報
 ところで、特許文献1に記載されるプレスシステムでは、想定されるすべての板厚ごとに、実際のプレス機械で複数回試行錯誤することによって、設定すべき最適なダイハイトを調整する必要がある。このようなプレスシステムのような制御系において、処理対象物のパラメータに応じて、適切なダイハイト等の制御量を出力するよう学習した学習済みモデルを用いて、ダイハイトの調整量(補正量)を設定することが考えられる。この場合、教師データとして、処理対象物のパラメータと、適切な補正量とを含むデータを用いることが考えられるところ、実際にプレス機械等の処理対象物に対して加工・組立等の処理を行う制御系において、ダイハイト等の制御量の適性値は、板厚に限らず、処理対象物の硬度や温度、材質等の様々なパラメータの影響を受ける。したがって、教師データとする補正量が適切かどうかを確認するには、さまざまな処理対象物に対して試行錯誤する必要があり膨大な時間を要してしまう。
 そこで、本発明は、処理対象物に対して加工・組立等の処理を行う制御系の予測制御において、制御対象に与える指令値を生成するための適切な補正量を効率的に学習する技術を提供することを目的とする。
 本発明の一側面に係る学習装置は、補正量に基づいて目標値を補正した指令値を出力するコントローラと、処理対象物に対して所定の処理をするよう制御される制御対象であって、コントローラから出力される指令値が入力され、当該指令値の応答として制御量が出力される制御対象と、を備える制御系において、処理対象物の特定のパラメータに基づいて、前記コントローラに対して所定の前記補正量を出力するように学習された学習済みモデルを含む調整器に対して、前記学習済みモデルを提供する学習装置であって、目標値、指令値及び制御量を含む動作データを取得して、制御量の品質を評価する評価部と、動作データに基づいて、補正量候補を生成し、生成した補正量候補と、処理対象物の特定のパラメータとを教師データとして学習を行い、学習済みモデルを生成する学習部と、生成された学習済みモデルによって出力された補正量に基づいて目標値を補正した指令値を制御対象に与えたときの制御量に基づいて、評価部において評価された品質が予め定められた許容範囲内であるときに、前記学習済みモデルを前記調整器に提供する設定部と、を備える。この態様によると、学習装置は、制御対象を実際に動作させることなく補正量候補を生成したときに、当該補正量候補を用いて生成された学習済みモデルを、適切な補正量を出力するか否かを確認してから採否を判定することができる。これにより、実際に制御対象を動作させながら、より効率的に学習を行いつつ、不適切な学習済みモデルを排除することができる。なお、「パラメータ」は、処理対象物の特徴量や物理量、その他の任意の数値情報を含む。特徴量は、例えば処理対象物の材質等であり、物理量は例えば、処理対象物の硬度や温度等である。
 また、設定部は、制御対象に与えられた処理対象物の特定のパラメータが、生成された学習済みモデルの評価が未実施のパラメータに等しいとき、生成された学習済みモデルによって出力された補正量をコントローラに対して出力し、評価部において品質を評価させる構成でもよい。また、学習部は、生成された学習済みモデルが出力した補正量に基づいて評価させた品質が、許容範囲に満たないときに改めて学習を行い、学習済みモデルを生成し直すように構成されてもよい。これにより、不適切な学習済みモデルを排除することができる。
 また、上記学習部は、データ駆動制御によって前記補正量候補を生成するように構成されてもよい。データ駆動制御は、VRFT、FRIT又はERITのいずれかでもよい。この態様によると、学習部は、VRFTやFRIT、ERIT等のデータ駆動制御の手法を用いることにより、制御対象の動特性モデルを求めることなく補正量候補を生成し、教師データを生成することが可能となる。これによって、学習装置は、制御対象の実際の動作を繰り返し行うことなく補正量候補を生成することが可能になる。この結果、学習装置は、処理対象物を準備したり破損させたりすることなく、より効率的に学習を行うことができる。
 本発明の一側面に係る学習方法は、補正量に基づいて目標値を補正した指令値を出力するコントローラと、処理対象物に対して所定の処理をするよう制御される制御対象であって、コントローラから出力される指令値が入力され、当該指令値の応答として制御量が出力される制御対象と、を備える制御系において、処理対象物の特定のパラメータに基づいて、コントローラに対して所定の補正量を出力するように学習された学習済みモデルを含む調整器に対して、学習済みモデルを提供する学習装置で実行される方法であって、学習装置が、目標値、指令値及び制御量を含む動作データを取得して、制御量の品質を評価するステップと、動作データに基づいて、補正量候補を生成し、生成した補正量候補と、処理対象物の特定のパラメータとを教師データとして学習を行い、学習済みモデルを生成するステップと、生成された学習済みモデルによって出力された補正量に基づいて目標値を補正した指令値を制御対象に与えたときの制御量に基づいて、評価するステップにおいて評価された品質が予め定められた許容範囲内であるときに、前記学習済みモデルを前記調整器に提供するステップと、を実行する。
 本発明の一側面に係るプログラムは、補正量に基づいて目標値を補正した指令値を出力するコントローラと、処理対象物に対して所定の処理をするよう制御される制御対象であって、コントローラから出力される指令値が入力され、当該指令値の応答として制御量が出力される制御対象と、を備える制御系において、処理対象物の特定のパラメータに基づいて、コントローラに対して所定の補正量を出力するように学習された学習済みモデルを含む調整器に対して、学習済みモデルを提供する学習装置を機能させるプログラムであって、学習装置を、目標値、指令値及び制御量を含む動作データを取得して、制御量の品質を評価する手段、動作データに基づいて、補正量候補を生成し、生成した補正量候補と、処理対象物の特定のパラメータとを教師データとして学習を行い、学習済みモデルを生成する手段、及び前記生成された学習済みモデルによって出力された補正量に基づいて目標値を補正した指令値を制御対象に与えたときの制御量に基づいて、評価する手段において評価された品質が予め定められた許容範囲内であるときに、学習済みモデルを前記調整器に提供する手段して機能させる。
 本発明によれば、処理対象物に対して加工・組立等の処理を行う制御系の予測制御において、制御対象に与える指令値を生成するための適切な補正量を効率的に学習する技術を提供することができる。
本発明の一実施形態に係る制御システムのシステム構成例を示す模式図である。 本発明の一実施形態に係る学習装置の機能構成例を示すブロック図である。 本発明の一実施形態に係る管理テーブルの一例を示す図である。 本発明の一実施形態に係る管理図の一例を示す図である。 本発明の一実施形態に係る学習装置の処理の一例を説明するためのフローチャートである。 本発明の一実施形態に係る学習装置のハードウェア構成を示す模式図である。 本発明の別の実施形態に係る制御システムのシステム構成例を示す模式図である。
[実施形態]
 以下、本発明の一側面に係る実施の形態(以下「本実施形態」とも表記する)を、図面に基づいて説明する。ただし、以下で説明する実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
 §1 適用例
 まず、図1を参照しながら、本発明が適用される場面の一例について説明する。図1は本発明に係る制御システム1の構成の一例を示す図である。制御システム1は、コントローラ10と、サーボ機構20と、調整器30と、学習装置40とを備えている。
 コントローラ10は、調整器30から出力された補正量ρに基づいて目標値r(t)を補正した指令値u(t)を生成して、サーボ機構20に出力する。目標値r(t)は、コントローラ10によって生成(記憶された目標値を用いることを含む)されてもよいし、外部からコントローラ10に与えられてもよい。コントローラ10の伝達関数C(ρ)とすると、コントローラ10では、以下の式(1)に示す演算を行うことで、指令値uを生成する。
<コントローラの演算式>
u(t)=C(ρ)×r(t)・・・式(1)
 サーボ機構20は、コントローラ10によって、処理対象物(以下「ワーク」ともいう。)に対して所定の処理をするように制御される。サーボ機構20には、コントローラ10から指令値u(t)が与えられ、当該入力値の応答として制御量y(t)が出力される。サーボ機構20の伝達関数をPとすると、制御量y(t)は、以下の式(2)で表される。
<サーボ機構の演算式>
y(t)=P×u(t) ・・・式(2)
 なお、本実施形態では、サーボ機構20は、ワークに対して所定量の圧力でプレスするプレス機械の例を示すが、これに限られない。なお、サーボ機構20は、本発明の「制御対象」の一例である。
 調整器30は、コントローラ10に与える補正量ρを出力する。本実施形態において、調整器30は、ワークが有するパラメータのうち、特定のパラメータに基づいて適切な補正量が出力されるように学習された学習済みモデルを有している。例えば、ワークの板厚の大きさを特定のパラメータとしてもよい。また、この学習済みモデルは、学習装置40から提供されるものであってよい。また、調整器30は、センサ(不図示)からワークのパラメータを取得してもよい。なお、センサは例えばサーボ機構20が有してもよい。
 学習装置40は、学習済みモデルを生成するにあたり、まず、あるパラメータαを有する処理対象物に対して、制御系を一度実際に動作させて、そのときの目標値r(t)、指令値u(t)、及び制御量y(t)の関係を取得する。次に、学習装置40は、これら3つの値からパラメータαに対応する補正量候補ρ*を算出する。算出した補正量候補ρ*とパラメータαとに基づいて、学習装置40は教師データを生成する。この処理を複数のパラメータについて実行することで、学習装置40は、各パラメータとそれに対応する補正量候補とを有する教師データを複数生成することができる。そして、学習装置40は、生成した一又は複数の教師データを用いて学習を行うことで、学習済みモデルを生成する。なお、生成された教師データを実際に学習に用いるか否かは、所定の採用基準に照らし合わせて決定されてもよい。
 補正量候補ρ*を生成するにあたり、学習装置40は、VRFT(Virtual Reference Feedback Tuning)やFRIT(Fictitious Reference Iterative Tuning)、ERIT(Estimated Response Iterative Turning)等の、データ駆動制御の手法を用いることができる。データ駆動制御は、制御対象(本実施形態の場合、サーボ機構20である。)の動特性モデルを求めることなく、得られたデータを用いて制御パラメータを設定することができる。データ駆動制御の手法を用いることにより、反復実験を行うことなく、すなわちサーボ機構20の実際の動作を繰り返し行うことなく、一組の動作データから補正量候補ρ*を生成し、これを教師データとして利用する。これによって、適切な教師データを生成するまでの時間を短縮し、適切な補正量を出力するための学習済みモデルの効率的な生成を可能としている。
 ここで、データ駆動制御の手法を用いて生成された補正量候補ρ*を教師データとして学習した場合、学習により得られる学習済みモデルは、必ずしも適切な補正量を出力するとは限らない。そこで、学習装置40は、学習済みモデルを調整器30へ設定する前に、学習済みモデルを評価し、所定の品質の制御量を得られることを確認できたときに、学習装置40が生成した学習済みモデルを調整器30へ設定してもよい。
 例えば、ワークXのパラメータαと補正量候補ρ*とを教師データとして学習を行い、新たに学習済みモデルLM*を生成したとする。このとき学習装置40は、ワークXと同様のパラメータαを有する別のワークがサーボ機構20に与えられた際に、先に生成した学習済みモデルLM*を用いて補正量ραを生成し、コントローラ10に提供する。コントローラ10は、補正量ραに基づいて指令値u(x)を生成し、サーボ機構20が指令値u(x)への応答として制御量y(x)を出力する。ここで、品質評価部42が制御量y(x)の品質を評価した結果、制御量y(x)が所定の許容範囲内であれば、学習装置40は調整器30に新たに生成された学習済みモデルLM*を設定するものとしてよい。他方、所定の許容範囲に満たなかった場合、すでに調整器30に学習済みモデルが設定されている場合には、設定部44は学習済みモデルの更新を行わなくてもよい。これにより、学習装置40は、制御対象を実際に動作させることなく補正量候補を生成したときに、当該補正量候補を用いて生成された学習済みモデルを、適切な補正量を出力するか否かを確認してから採否を判定することができるため、より効率的に学習を行いつつ、不適切な学習済みモデルを排除することができる。この結果、学習装置は、処理対象物を準備したり破損させたりすることなく、より効率的に学習を行うことができる。
 §2 構成例
 図2乃至図4を参照して、学習装置40の機能構成の一例を説明する。図2は、学習装置40の機能構成の一例を示す機能ブロック図である。図2に示すように、学習装置40は、記憶部41と、品質評価部42と、学習部43と、設定部44とを有している。
 記憶部41には、参照モデルTdと、管理テーブルとが記憶されている。
 参照モデルTdとは、目標値r(t)に対する制御量y(t)の理想的な応答の伝達関数を示したものである。参照モデルTdを用いると、目標値r(t)に対する理想的な制御量(以下「目標応答」ともいう。)yd(t)は次式(3)で表される。
<参照モデルTdの式>
yd(t)=Td×r(t) ・・・(3)
 なお、参照モデルTdは伝達関数に限定されず、サーボ機構20をワークのない状態で動作させた際の、目標値r(t)、制御量y(t)に基づいて、機械学習により生成されるモデルを用いてもよい。
 管理テーブルには、学習部43が学習に用いる教師データが管理されている。図3は、管理テーブルの一例を示す図である。教師データは、ワークごとに、入力データとして当該ワークのパラメータ(図3の例では硬さ)と、出力データとして当該ワークに対して指令値を出力する際の最適な補正量(以下「最適補正量」ともいう。)と、が対応付けられたデータである。管理テーブルには、各ワークに対応付けられた最適補正量に基づいて生成された指令値に応答してサーボ機構20が出力した制御量の品質の評価の結果が対応付けられている。なお、最適補正量は、補正量の一例にすぎず、最適な補正量を用いることは必須ではない。
 なお、管理テーブルに新たな教師データのレコードが追加された後、当該レコードに対応するワークについて、サーボ機構20が処理をまだ行っていない場合には、管理テーブルの評価結果の欄には例えば未実施が登録されてもよい。
 このように、管理テーブルには、学習部43が学習に用いた教師データと、当該教師データを用いて新たに生成された(又は更新された)学習済みモデルの評価の結果が管理されている。
 さらに、記憶部41には、学習部43が生成した学習済みモデルLMが記憶されている。記憶部41は、学習部43が生成した学習済みモデルの複数の世代を記憶していることが好ましい。
 品質評価部42は、コントローラ10及びサーボ機構20から動作データを取得して、制御量の品質を評価する。一例として、品質評価部42は目標値r(t)に対して与えられた指令値u(t)への応答としてサーボ機構20から制御量y(t)が出力された場合について説明する。このとき、品質評価部42は、目標値r(t)を参照モデルTdに入力し、目標値r(t)に対する目標応答yd(t)を取得する。
 次に、品質評価部42は、目標応答yd(t)、制御量y(t)について品質換算を行い品質の代替指標を算出する。例えば品質評価部42は、目標応答yd(t)、制御量y(t)に対して品質換算を行い下死点位置や整定時間を算出する。より詳細には、品質評価部42は、目標応答yd(t)、制御量y(t)の最大値から下死点位置を算出する。また、品質評価部42は、目標応答yd(t)が目標位置に入った時刻、及び制御量y(t)が目標位置に入った時刻のそれぞれから指令値が目標位置に到達した時刻を減算することで、それぞれの整定時間を算出する。なお、下死点位置は、サーボ機構20のストローク長が最大となった位置である。また、整定時間は、サーボ機構20のストローク長が整定幅に入ったときから、目標位置に到達するときまでの経過時間であり、整定幅は、目標位置から所定の範囲の幅(例えば目標位置±10μmである)をいう。
 品質評価部42は、品質換算して算出した代替指標である下死点位置と整定時間に基づいて、制御量y(t)の品質の評価を行う。例えば、品質評価部42は、下死点位置が目標位置と一致しているか否かや、下死点位置が整定幅に含まれるか否かに基づいて制御量y(t)が所定の許容範囲内か否かを判定することで品質の評価をすることができる。
 また、例えば、品質評価部42は、Xbar-R管理図を用いて制御量y(t)の品質の評価を行ってもよい。Xbar-R管理図は、品質評価対象の平均値の変化とばらつきの変化を管理するための管理図である。図4は、品質評価部42が品質の評価に用いるXbar-R管理図のうちx管理図の一例を示している。図4において、縦軸はストローク長を示している。グラフL1、L2は、複数のロット分のワークに対してサーボ機構20が処理を行った際のそれぞれの制御量y(t)について品質換算して算出した下死点位置の、各ロットにおける平均値をプロットしたものの一例である。図4において、実線は規格値L3の上限及び下限を示し、破線L4は管理値の上限及び下限を示している。規格値は例えば、ワークについて加工を依頼した顧客の要求値である。管理値は、規格値を超えないように管理するための値である。グラフの中心には、品質の目標値が示されている。グラフL2は、品質が管理値の範囲内にある場合の一例を示すものであり、グラフL1は、品質が規格値内に納まらなかった場合の一例を示すものである。なお、図4の例では、ロットごとにグラフのプロットを行った例を示しているが、各プロットの値はロット単位で算出された値に限定されず、1又は複数のワークに対する処理に基づいて品質換算された値を用いてもよい。品質評価部42は、図4に示すXbar-R管理図において、制御量y(t)の下死点位置が、管理値の範囲内か否かや、規格値の範囲内か否かに基づいて、制御量y(t)が所定の許容範囲内か否かを判定することで品質の評価をしてもよい。例えば、図4に示すXbar-R管理図等を用いて品質評価を行った結果、制御量y(t)が所定の許容範囲内か否かに基づいて、上述した図3の管理テーブルにおける品質の評価の結果が登録されてもよい。より詳細には、例えば図3の1行目のレコードに登録されている最適補正量候補(図3の例では0.5mm)に基づいて生成された指令値に応答した際に、サーボ機構20から制御量y(β)が出力されたとする。このとき、図4に示すXbar-R管理図を用いて、制御量y(β)の下死点位置が管理値の範囲内か否かや、規格値の範囲内か否かに基づいて、制御量y(β)の品質評価が行われた結果が、図3の管理テーブルの1行目のレコードにおける品質の評価の結果として登録される。
 学習部43は、動作データを用いて算出した補正量候補ρ*に基づいて教師データを生成し、学習済みモデルを生成する。学習部43は、補正量候補ρ*を算出するにあたり、VRFTやFRIT、ERIT等の、データ駆動制御を用いることが好ましい。データ駆動制御は、制御対象(本実施形態の場合、サーボ機構20である。)の動特性モデルを求めることなくデータを用いて制御パラメータを設定する手法である。VRFT、FRIT及びERIT等のデータ駆動制御は、反復実験を行うことなく、一組の動作データから補正量を特定可能な手法である。一組の動作データは、目標値rと、当該目標値に基づいて与えられた指令値と、指令値の応答として出力された制御量である。
 学習部43の補正量候補生成処理について、より詳細に説明する。例えば、学習部43は、参照モデルTdを参照し、サーボ機構20が任意のワーク(以下「ワークX」という。)に対して、任意の指令値uiniに基づいて動作を行った場合の動作データ(以下、ワークXに対して任意の指令値uiniに基づいて動作を行った場合の動作データを特に「動作データY」という。)に基づいて、補正量候補ρ*を生成する例について説明する。この指令値uiniは、ある補正量ρiniに基づいて目標値rを補正して生成されるものとする。ここで、動作データYに含まれる目標値を目標値rとし、指令値を指令値uiniとし、制御量を制御量yiniとすると、動作データYは、{r,uini,yini}で表される。
 学習部43は、VRFTを用いて補正量候補ρ*を算出する場合、参照モデルTdの逆モデルTd-1を用いて、以下の式(4)により、まず、仮想参照信号を算出する。
Figure JPOXMLDOC01-appb-M000001
 さらに学習部43は、以下の式(5)で表される評価関数Jv(ρ)を最小化する補正量候補ρ*を算出する。なお、式(5)において、C(ρ)は、上述のコントローラ10の伝達関数を示している。
Figure JPOXMLDOC01-appb-M000002
 他方、学習部43は、FRITを用いて補正量候補ρ*を算出する場合、以下の式(6)により、まず、疑似参照信号を算出する。なお、式(6)において、C(ρ)-1はコントローラ10の逆伝達関数を示している。
Figure JPOXMLDOC01-appb-M000003
 さらに学習部43は、以下の式(7)で表される評価関数Jf(ρ)を最小化する補正量候補ρ*を算出する。
Figure JPOXMLDOC01-appb-M000004
 学習部43は、算出した補正量候補ρ*を最適補正量ρ´として、ワークXのパラメータとを対応付けて教師データとして管理テーブルに追加する。なお、学習部43は、補正量候補ρ*を最適補正量ρ´に採用するか否かを判定する採否判定を行う構成でもよい。この場合、学習部43は、算出した補正量候補ρ*が所定の採用基準を満たすか否かを判定し、満たした場合に最適補正量ρ´として採用し、管理テーブルに追加する。採用基準は、例えば、算出した補正量候補ρ*が、管理テーブルに登録されている教師データに含まれる最適補正量から所定の値以上離れた値(例えば外れ値)でないか否かである。なお、採用基準は、補正量候補ρ*が、上記の教師データに含まれる最適候補量の平均値から一定値以上離れた値ではないか、最適候補量の最大値又は最小値から一定値以上離れた値ではないか、でもよい。また、例えば、採用基準は、算出した補正量候補ρ*が、管理テーブルに登録されている教師データに含まれる最適補正量の範囲に含まれるか否かでもよい。
 学習部43は、管理テーブルに登録された教師データに基づいて学習を実行し、学習済みモデルLM*を生成する。なお、学習済みモデルを生成する際に行う学習には、例えば既存のニューラルネットワークや回帰分析の技術を用いることができる。学習部43は、記憶部41に今回生成した学習済みモデルLM*を追加して記憶させる。なお、学習部43は、記憶部41に記憶されている学習済みモデルLMを今回生成した学習済みモデルLM*で上書きする構成でもよい。
 なお、学習部43は、補正量候補ρ*を生成するにあたり、学習要否判定を行う構成でもよい。この場合、学習部43は、所定の学習要否判定基準を満たすか否かを判定し、満たしたときに、学習を行うために補正量候補ρ*を生成する。所定の学習要否判定基準は、例えば、動作データYに対する品質評価部42の結果が許容範囲内であるか否かである。また、所定の学習要否判定基準は、ワークXのパラメータが過去に学習した、すなわち、現在、調整器30に設定されている学習済みモデルにおいて学習したパラメータの範囲外であるか否かでもよい。他にも、所定の学習要否判定基準は、ワークXに対して動作を行った際にサーボ機構20の外部環境が、それ以前の外部環境から変化したか否かでもよい。この場合、学習部43は、ユーザの任意の入力に基づいて、外部環境の変化を検出してもよいし、サーボ機構20の外部環境を含む画像データをセンサから取得して、取得した画像データに基づいて、外部環境の変化を検出してもよい。
 設定部44は、学習部43が生成した学習済みモデルLM*を調整器30へ設定する。このとき設定部44は、学習済みモデルLM*を設定する前に、学習済みモデルLM*を評価し、評価結果に基づいて、調整器30に設定するか否かを判定してもよい。
 例えば、設定部44は、学習済みモデルLM*を用いて制御を行い、制御した結果に対する品質の評価に基づいて、学習済みモデルLM*を調整器30に設定するか否かを判定することができる。具体的には、例えば、ワークXのパラメータαと補正量候補ρ*とを教師データとして、学習部43が追加学習を行い、新たに学習済みモデルLM*を生成したとする。このとき設定部44は、ワークXと同様のパラメータαを有するワークがサーボ機構20に与えられた際に、学習済みモデルLM*を用いて、補正量ραを生成する。コントローラ10では、学習済みモデルLM*が生成した補正量ραに基づいて指令値u(x)を生成し、サーボ機構20に出力する。サーボ機構20が指令値u(x)への応答として出力した制御量y(x)について、品質評価部42が品質の評価を行う。品質の評価の結果、制御量y(x)が所定の許容範囲内であれば、設定部44は調整器30に新たに生成された学習済みモデルLM*を設定することができる。他方、所定の許容範囲に満たなかった場合、設定部44は学習済みモデルの更新を行なわず、すでに調整器30に設定されているモデルをそのまま使用してよい。
 なお、記憶部41に評価が未実施の学習済みモデルLM*が複数登録されている場合には、設定部44は、例えば、新しく生成された順に学習済みモデルLM*の評価を行い、評価の結果が最初に許容範囲内に納まった学習済みモデルLM*を選択して調整器30に設定してもよい。また例えば、設定部44は、すべての学習済みモデルLM*の評価を実施して、評価結果がもっともよかった学習済みモデルLM*を選択して調整器30に設定してもよい。
 なお、設定部44は、評価が所定の許容範囲に満たなかった学習済みモデルLM*を記憶部41から削除してもよい。
 このように設定部44が、新たに生成(又は更新)された学習済みモデルLM*について、調整器30に実際に設定する前に、評価を実施することで、品質が不十分な学習済みモデルは調整器30に設定されないため、制御システム1の処理精度が低下してしまうことを防ぐことができる。
 §3 動作フロー
 図5を参照して、本実施形態に係る制御システム1の処理フローの一例について説明する。まず、学習装置40は、参照モデルTdを生成する(S101)。このとき、学習装置40は、基準とする動作データ[r、yd]を取得する。基準となる動作データは、例えば、ワークなし動作を行った場合の、目標値rと、サーボ機構20の制御量yとしてよい。取得した動作データ[r、yd]に基づいて、学習装置40は、参照モデルTdを生成する。
 サーボ機構20にワークが与えられると、目標値に対する補正量qを設定する(S102)。補正量qは、ユーザが手動で設定してもよいし、すでに調整器30に学習済みモデルが設定されている場合には、当該学習済みモデルが生成してもよい。
 コントローラ10では、設定された補正量qに基づいて指令値uが生成され、サーボ機構20に出力される。サーボ機構20では、指令値uへの応答として制御量yが出力される。学習装置40は、このときの動作データ[r,u,y]を取得する(S103)。
 次に、学習の要否が判定される(S104)。例えば、学習部43は、取得された動作データ[r,u,y]について、品質評価部42が行った品質の評価の結果に基づいて、要否を判定することができる。なお、学習の要否の判定基準はこれに限定されず、今回のワークのパラメータが過去に学習したパラメータの範囲内か否かや、外部環境が変化したか否かを判定基準に用いてもよい。また例えば、学習の要否は人が判定してもよい。
 学習が不要と判定された場合(S104:NO)には、S102に戻り、次のワークに対して処理が行われる。他方、学習が必要と判定された場合(S104:YES)には、学習部43は、参照モデルTdを参照し、補正量候補ρ*を生成する(S105)。学習部43は補正量候補ρ*を生成する際に、VRFTやFRIT、ERIT等のデータ駆動制御の手法を用いることができる。
 次に、学習部43は、生成した補正量候補ρ*と、S102でサーボ機構20に与えられたワークのパラメータとを対応付けて教師データとして追加するか否かを判定する(S106)。追加するか否かを判定する採用基準は、例えば、算出した補正量候補ρ*が、管理テーブルに登録されている教師データに含まれる補正量から所定の値以上離れた値でないか否かである。また、例えば、採用基準は、算出した補正量候補ρ*が、管理テーブルに登録されている教師データに含まれる補正量の範囲に含まれるか否かでもよい。
 追加すると判定した場合(S106:YES)には、学習部43は、教師データとして、生成した補正量候補ρ*を最適補正量ρ´として、S102でサーボ機構20に与えられたワークのパラメータαと対応付けてレコードを生成し、管理テーブルに追加する(S201)。他方、追加しないと判定した場合(S106:NO)には、S101に戻り、次のワークに対して処理が行われる。なお、学習部43は、S106の判定を行わず、生成した補正量候補ρ*はそのまま最適補正量ρ´として、教師データを生成し、管理テーブルに追加する構成でもよい。
 パラメータαと最適補正量候補ρ’とに基づいて教師データを追加すると、学習部43は、追加学習を実施して、学習済みモデルLM*を新たに生成(又は更新)する(S202)。
 次に、再度、与えられたワークのパラメータがパラメータαに等しい場合(S203:YES)、設定部44は、生成された学習済みモデルを調整器30に設定するか否かを判定する(S205)。なお、パラメータαに等しい場合とは、パラメータαと同一の場合に限定されず、パラメータαに近似する場合も含む。パラメータが近似するか否かは、予め定められた範囲に特定のパラメータが含まれるか否かで判断してもよい。一例として、設定部44は、学習済みモデルLM*を用いて制御を行った結果に基づいて、設定するか否かを判定する。具体的には、設定部44は、学習済みモデルLM*にパラメータαを与えて補正量ραを生成する。そして補正量ραに基づいて補正された指令値を、サーボ機構20に与えたときの制御量について、品質評価部42の品質の評価結果に基づいて、学習済みモデルを調整器30に設定するか否かを判定してもよい。
 品質の評価が所定の許容範囲内である場合には、設定部44は、新たに生成された学習済みモデルを調整器30に設定する(S206)。他方、品質の評価が許容範囲に満たない場合(S205:NO)には、学習部43が、今回の動作データを取得して、新たに補正量候補ρ*を生成し直す(S204)。このとき、学習部43はS106と同様の生成し直した補正量候補ρ*が採用基準を満たすか否かの判定を行い、採用基準を満たした場合には、補正量候補ρ*を最適補正量ρ’として、S201に戻り、再度学習済みモデルを生成し直す。
 §4 利点
 本実施形態に係る制御システム1では、設定部44は、学習部43が生成した学習済みモデルを調整器30へ設定する。このとき設定部44は、学習済みモデルを設定する前に、学習済みモデルを評価し、評価結果に基づいて、調整器30に設定するか否か判定を行う。すなわち、本実施形態に係る学習装置40によると、動作データに基づいて生成された補正量候補を用いて学習を行い、生成された学習済みモデルに対して設定部44が評価を行う。例えば設定部44は、生成された学習済みモデルを用いた制御の結果に基づいて、学習済みモデルの品質の評価を行う。これによって、学習装置40は、反復実験、すなわち制御対象の実際の動作を繰り返し行うことなく補正量候補を教師データとして用いることが可能になり、適切な教師データを生成するまでの時間を短縮することができる。
 §5 ハードウェア構成
 次に、図6を参照しながら、上述してきた学習装置40をコンピュータ800により実現する場合のハードウェア構成の一例を説明する。なお、それぞれの装置の機能は、複数台の装置に分けて実現することもできる。
 図6に示すように、コンピュータ800は、プロセッサ801、メモリ803、記憶装置805、入力I/F部807、データI/F部809、通信I/F部811、及び表示装置813を含む。
 プロセッサ801は、メモリ803に記憶されているプログラムを実行することによりコンピュータ800における様々な処理を制御する。例えば、学習装置40の品質評価部42と、学習部43と、設定部44などは、メモリ803に一時記憶された上で、主にプロセッサ801上で動作するプログラムとして実現可能である。すなわち、プロセッサ801がメモリ803に一時記憶されたプログラムを解釈実行することにより、品質評価部42と、学習部43と、設定部44の働きが実現される。
 メモリ803は、例えばRAM(Random Access Memory)等の記憶媒体である。メモリ803は、プロセッサ801によって実行されるプログラムのプログラムコードや、プログラムの実行時に必要となるデータを一時的に記憶する。
 記憶装置805は、例えばハードディスクドライブ(HDD)やフラッシュメモリ等の不揮発性の記憶媒体である。記憶装置805は、オペレーティングシステムや、上記各構成を実現するための各種プログラムを記憶する。この他、記憶装置805は、参照モデルTdや管理テーブルを記憶することも可能である。このようなプログラムやデータは、必要に応じてメモリ803にロードされることにより、プロセッサ801から参照される。
 入力I/F部807は、ユーザからの入力を受け付けるためのデバイスである。入力I/F部807の具体例としては、キーボードやマウス、タッチパネル、各種センサ、ウェアラブル・デバイス等が挙げられる。入力I/F部807は、例えばUSB(Universal Serial Bus)等のインタフェースを介してコンピュータ800に接続されても良い。
 データI/F部809は、コンピュータ800の外部からデータを入力するためのデバイスである。データI/F部809の具体例としては、各種記憶媒体に記憶されているデータを読み取るためのドライブ装置等がある。データI/F部809は、コンピュータ800の外部に設けられることも考えられる。その場合、データI/F部809は、例えばUSB等のインタフェースを介してコンピュータ800へと接続される。
 通信I/F部811は、コンピュータ800の外部の装置と有線又は無線により、インターネットNを介したデータ通信を行うためのデバイスである。通信I/F部811は、コンピュータ800の外部に設けられることも考えられる。その場合、通信I/F部811は、例えばUSB等のインタフェースを介してコンピュータ800に接続される。
 表示装置813は、各種情報を表示するためのデバイスである。表示装置813の具体例としては、例えば液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ、ウェアラブル・デバイスのディスプレイ等が挙げられる。表示装置813は、コンピュータ800の外部に設けられても良い。その場合、表示装置813は、例えばディスプレイケーブル等を介してコンピュータ800に接続される。
 §6 他の実施形態
 図7を参照して、本発明の他の実施形態に係る制御システム2の構成を説明する。図7は、制御システム2の構成の一例を示す図である。なお、既述の実施形態と共通の事柄についての記述は省略し、異なる点についてのみ説明する。特に、既述の構成には同様の符号を付し、同様の構成による同様の作用効果については実施形態毎には逐次言及しない。
 制御システム2は、制御システム1におけるコントローラ10に代えて、コントローラ11を有している。また、調整器30は、コントローラ11に対して補正量ρを入力する。その他の構成、機能は既述の実施形態と同様である。
 コントローラ11は、調整器30から入力された補正量ρを、生成した目標値r(t)に加えて指令値u(t)を生成し、サーボ機構20に入力する。つまり、コントローラ11の演算式は以下の式(8)である。
u(t)=r(t)+ρ・・・式(8)
 コントローラ11によると、伝達関数を用いずに、単純に目標値と補正量とを加算して指令値を算出することができる。これにより伝達関数の設計が不要になるため、制御モデルの設計が容易になる。
 以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。
 なお、前述までの説明では、学習装置40は、学習済みモデルを新たに生成する構成として説明したが、既存の学習済みモデルを更新する構成としてもよい。学習済みモデルを新たに生成する構成の場合、学習装置40は、既存の学習済みモデルを生成したときに用いた教師データに、今回新たに生成した教師データを加えたデータセットを用いた学習により、新たな学習済みモデルを生成することができる。他方、学習済みモデルを更新する構成の場合、学習装置40は、既存の学習済みモデルに対して、今回新たに生成した教師データを用いて追加学習させることで、学習済みモデルを更新することができる。
 前述の実施形態の一部又は全部は、以下の付記のように記載され得るが、以下には限定されない。
 (付記1)
 補正量(ρ)に基づいて目標値(r)を補正した指令値(u)を出力するコントローラ(10)と、
 処理対象物に対して所定の処理をするよう制御される制御対象(20)であって、前記コントローラ(10)から出力される指令値(u)が入力され、当該指令値(u)の応答として制御量が出力される制御対象(20)と、
を備える制御系(1)において、
 前記処理対象物の特定のパラメータに基づいて、前記コントローラ(10)に対して所定の前記補正量(ρ)を出力するように学習された学習済みモデルを含む調整器(30)に対して、前記学習済みモデルを提供する学習装置(40)であって、
 前記目標値(r)、前記指令値(u)及び前記制御量(y)を含む動作データを取得して、前記制御量(y)の品質を評価する評価部(42)と、
 前記動作データに基づいて、補正量候補(ρ*)を生成し、生成した補正量候補(ρ*)と、前記処理対象物の特定のパラメータとを教師データとして学習を行い、学習済みモデルを生成する学習部(43)と、
 前記生成された学習済みモデルによって出力された前記補正量に基づいて補正した指令値(u)を前記制御対象に与えたときの制御量(y)に基づいて、前記評価部(42)において評価された品質が予め定められた許容範囲内であるときに、前記学習済みモデルを前記調整器(30)に提供する設定部(44)と、
を備える学習装置(40)。
(付記2)
 前記設定部(44)は、
 前記制御対象に与えられた処理対象物の特定のパラメータが、前記生成された学習済みモデルの評価が未実施のパラメータに等しいとき、前記生成された学習済みモデルによって出力された補正量を前記コントローラに対して出力し、前記評価部(42)において品質を評価させる、
付記1に記載の学習装置(40)。
(付記3)
 前記学習部(43)は、
 前記生成された学習済みモデルが出力した補正量(ρ)に基づいて評価させた品質が前記許容範囲に満たないときに改めて学習を行い、学習済みモデルを生成し直す、
付記2に記載の学習装置(40)。
(付記4)
 前記学習部(43)は、データ駆動制御によって前記補正量候補(ρ*)を生成する、
付記1乃至3の何れか一項に記載の学習装置(40)。
(付記5)
 前記データ駆動制御は、VRFT、FRIT又はERITのいずれかである、
付記4に記載の学習装置(40)。
(付記6)
 補正量(ρ)に基づいて目標値(r)を補正した指令値(u)を出力するコントローラ(10)と、
 処理対象物に対して所定の処理をするよう制御される制御対象(20)であって、前記コントローラ(10)から出力される指令値(u)が入力され、当該指令値(u)の応答として制御量が出力される制御対象(20)と、
を備える制御系(1)において、
 前記処理対象物の特定のパラメータに基づいて、前記コントローラ(10)に対して所定の前記補正量(ρ)を出力するように学習された学習済みモデルを含む調整器(30)に対して、前記学習済みモデルを提供する学習装置(40)において実行される学習方法であって、
 前記学習装置(40)が、
 前記目標値(r)、前記指令値(u)及び前記制御量(y)を含む動作データを取得して、前記制御量(y)の品質を評価するステップと、
 前記動作データに基づいて、補正量候補(ρ*)を生成し、生成した補正量候補(ρ*)と、前記処理対象物の特定のパラメータとを教師データとして学習を行い、学習済みモデル(LM*)を生成するステップと、
 前記生成された学習済みモデルによって出力された補正量に基づいて目標値を補正した指令値を前記制御対象に与えたときの制御量に基づいて、前記評価するステップにおいて評価された品質が予め定められた許容範囲内であるときに、前記学習済みモデルを前記調整器に提供するステップと、
を実行する学習方法。
(付記7)
 補正量(ρ)に基づいて目標値(r)を補正した指令値(u)を出力するコントローラ(10)と、
 処理対象物に対して所定の処理をするよう制御される制御対象(20)であって、前記コントローラ(10)から出力される指令値(u)が入力され、当該指令値(u)の応答として制御量が出力される制御対象(20)と、
を備える制御系(1)において、
 前記処理対象物の特定のパラメータに基づいて、前記コントローラ(10)に対して所定の前記補正量(ρ)を出力するように学習された学習済みモデルを含む調整器(30)に対して、前記学習済みモデルを提供する学習装置(40)を機能させるプログラムであって、
 前記学習装置(40)を、
 前記目標値(r)、前記指令値(u)及び前記制御量(y)を含む動作データを取得して、前記制御量(y)の品質を評価する手段、
 前記動作データに基づいて、補正量候補(ρ*)を生成し、生成した補正量候補(ρ*)と、前記処理対象物の特定のパラメータとを教師データとして学習を行い、学習済みモデルを生成する手段、及び
 前記生成された学習済みモデルによって出力された補正量候補に基づいて目標値を補正した指令値を前記制御対象に与えたときの制御量に基づいて、前記評価する手段において評価された品質が予め定められた許容範囲内であるときに、前記学習済みモデル(LM*)を前記調整器に提供する手段、
として機能させるプログラム。

Claims (7)

  1.  補正量に基づいて目標値を補正した指令値を出力するコントローラと、
     処理対象物に対して所定の処理をするよう制御される制御対象であって、前記コントローラから出力される指令値が入力され、当該指令値の応答として制御量が出力される制御対象と、
    を備える制御系において、
     前記処理対象物の特定のパラメータに基づいて、前記コントローラに対して所定の前記補正量を出力するように学習された学習済みモデルを含む調整器に対して、前記学習済みモデルを提供する学習装置であって、
     前記目標値、前記指令値及び前記制御量を含む動作データを取得して、前記制御量の品質を評価する評価部と、
     前記動作データに基づいて、補正量候補を生成し、生成した補正量候補と、前記処理対象物の特定のパラメータとを教師データとして学習を行い、学習済みモデルを生成する学習部と、
     前記生成された学習済みモデルによって出力された補正量に基づいて目標値を補正した指令値を前記制御対象に与えたときの制御量に基づいて、前記評価部において評価された品質が予め定められた許容範囲内であるときに、前記学習済みモデルを前記調整器に提供する設定部と、
    を備える学習装置。
  2.  前記設定部は、
     前記制御対象に与えられた処理対象物の特定のパラメータが、前記生成された学習済みモデルの評価が未実施のパラメータに等しいとき、前記生成された学習済みモデルによって出力された補正量を前記コントローラに対して出力し、前記評価部において品質を評価させる、
    請求項1に記載の学習装置。
  3.  前記学習部は、
     前記生成された学習済みモデルが出力した補正量に基づいて評価させた品質が、前記許容範囲に満たないときに改めて学習を行い、学習済みモデルを生成し直す、
    請求項2に記載の学習装置。
  4.  前記学習部は、データ駆動制御によって前記補正量候補を生成する、
    請求項1乃至3の何れか一項に記載の学習装置。
  5.  前記データ駆動制御は、VRFT、FRIT又はERITのいずれかである、
    請求項4に記載の学習装置。
  6.  補正量に基づいて目標値を補正した指令値を出力するコントローラと、
     処理対象物に対して所定の処理をするよう制御される制御対象であって、前記コントローラから出力される指令値が入力され、当該指令値の応答として制御量が出力される制御対象と、
    を備える制御系において、
     前記処理対象物の特定のパラメータに基づいて、前記コントローラに対して所定の前記補正量を出力するように学習された学習済みモデルを含む調整器に対して、前記学習済みモデルを提供する学習装置で実行される方法であって、
     前記学習装置が、
     前記目標値、前記指令値及び前記制御量を含む動作データを取得して、前記制御量の品質を評価するステップと、
     前記動作データに基づいて、補正量候補を生成し、生成した補正量候補と、前記処理対象物の特定のパラメータとを教師データとして学習を行い、学習済みモデルを生成するステップと、
     前記生成された学習済みモデルによって出力された補正量に基づいて目標値を補正した指令値を前記制御対象に与えたときの制御量に基づいて、前記評価するステップ部において評価された品質が予め定められた許容範囲内であるときに、前記学習済みモデルを前記調整器に提供するステップと、
    を実行する方法。
  7.  補正量に基づいて目標値を補正した指令値を出力するコントローラと、
     処理対象物に対して所定の処理をするよう制御される制御対象であって、前記コントローラから出力される指令値が入力され、当該指令値の応答として制御量が出力される制御対象と、
    を備える制御系において、
     前記処理対象物の特定のパラメータに基づいて、前記コントローラに対して所定の前記補正量を出力するように学習された学習済みモデルを含む調整器に対して、前記学習済みモデルを提供する学習装置を機能させるプログラムであって、
     前記学習装置を、
     前記目標値、前記指令値及び前記制御量を含む動作データを取得して、前記制御量の品質を評価する手段、
     前記動作データに基づいて、補正量候補を生成し、生成した補正量候補と、前記処理対象物の特定のパラメータとを教師データとして学習を行い、学習済みモデルを生成する手段、及び
     前記生成された学習済みモデルによって出力された補正量に基づいて目標値を補正した指令値を前記制御対象に与えたときの制御量に基づいて、前記評価する手段において評価された品質が予め定められた許容範囲内であるときに、前記学習済みモデルを前記調整器に提供する手段、
    として機能させるプログラム。
PCT/JP2019/009335 2018-03-15 2019-03-08 学習装置、学習方法、及びそのプログラム WO2019176772A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201980011789.1A CN111684365B (zh) 2018-03-15 2019-03-08 学习装置、学习方法及其存储介质
EP19767608.3A EP3767400B1 (en) 2018-03-15 2019-03-08 Learning device, learning method and program therefor
US16/968,164 US11480931B2 (en) 2018-03-15 2019-03-08 Learning device, learning method, and program therefor

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-047865 2018-03-15
JP2018047865A JP6536978B1 (ja) 2018-03-15 2018-03-15 学習装置、学習方法、及びそのプログラム

Publications (1)

Publication Number Publication Date
WO2019176772A1 true WO2019176772A1 (ja) 2019-09-19

Family

ID=67144669

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/009335 WO2019176772A1 (ja) 2018-03-15 2019-03-08 学習装置、学習方法、及びそのプログラム

Country Status (5)

Country Link
US (1) US11480931B2 (ja)
EP (1) EP3767400B1 (ja)
JP (1) JP6536978B1 (ja)
CN (1) CN111684365B (ja)
WO (1) WO2019176772A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7484382B2 (ja) 2020-04-24 2024-05-16 横河電機株式会社 制御装置、制御方法および制御プログラム
JP7275389B2 (ja) * 2020-06-05 2023-05-17 三菱電機株式会社 サーボ制御装置
US11814053B2 (en) * 2021-10-20 2023-11-14 Micron Technology, Inc. Vehicle occupant emergency monitoring

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07105159A (ja) * 1993-09-30 1995-04-21 Omron Corp 情報処理装置
JP2000330610A (ja) * 1999-05-19 2000-11-30 Matsushita Electric Ind Co Ltd 学習制御装置および学習制御方法
JP2005211928A (ja) 2004-01-29 2005-08-11 Komatsu Sanki Kk プレスシステム
JP2008102720A (ja) * 2006-10-18 2008-05-01 Omron Corp 制御装置、制御パラメータの調整装置、制御パラメータの調整方法およびプログラム
JP2015018388A (ja) * 2013-07-10 2015-01-29 東芝三菱電機産業システム株式会社 制御パラメータ調整システム
JP2017068658A (ja) * 2015-09-30 2017-04-06 ブラザー工業株式会社 パラメータ更新方法、パラメータ更新装置、及びプログラム
JP2018036773A (ja) * 2016-08-30 2018-03-08 国立大学法人広島大学 データ指向型フィードバック制御装置およびデータ指向型フィードバック制御方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2656637B2 (ja) * 1989-11-22 1997-09-24 株式会社日立製作所 プロセス制御システム及び発電プラントプロセス制御システム
JPH06314106A (ja) * 1993-04-28 1994-11-08 Yaskawa Electric Corp 学習制御装置
JP3191836B2 (ja) * 1993-05-12 2001-07-23 株式会社安川電機 学習制御装置
US5704011A (en) 1994-11-01 1997-12-30 The Foxboro Company Method and apparatus for providing multivariable nonlinear control
JP2000089525A (ja) * 1998-09-07 2000-03-31 Toshiba Corp 調整制御システム
JP2000339005A (ja) 1999-05-28 2000-12-08 Yamaha Motor Co Ltd 制御対象の最適化制御方法及び制御装置
GB0113627D0 (en) 2001-06-05 2001-07-25 Univ Stirling Controller and method of controlling an apparatus
US7451004B2 (en) * 2005-09-30 2008-11-11 Fisher-Rosemount Systems, Inc. On-line adaptive model predictive control in a process control system
JP2008234326A (ja) * 2007-03-20 2008-10-02 Masami Saeki Pid制御器の制御パラメータの調整方法及び調整装置
JP4427074B2 (ja) * 2007-06-07 2010-03-03 株式会社日立製作所 プラントの制御装置
JP4876057B2 (ja) * 2007-11-20 2012-02-15 株式会社日立製作所 プラントの制御装置、及び火力発電プラントの制御装置
EP2409048B1 (en) 2009-03-17 2013-05-29 Flander's Mechatronics Technology Centre v.z.w. Method for controlling a torque transmitting device with learning function
JP5759206B2 (ja) * 2011-03-01 2015-08-05 東芝三菱電機産業システム株式会社 学習係数制御装置
JP6147687B2 (ja) * 2014-02-28 2017-06-14 株式会社東芝 制御パラメータ調整装置、および制御パラメータ調整プログラム
JP6544219B2 (ja) * 2015-11-30 2019-07-17 オムロン株式会社 制御装置
JP6650786B2 (ja) * 2016-03-03 2020-02-19 三菱日立パワーシステムズ株式会社 制御パラメータ自動調整装置、制御パラメータ自動調整方法、及び制御パラメータ自動調整装置ネットワーク
JP6514257B2 (ja) * 2017-03-29 2019-05-15 ファナック株式会社 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
JP6603260B2 (ja) * 2017-04-27 2019-11-06 ファナック株式会社 数値制御装置
JP6519896B1 (ja) * 2018-03-15 2019-05-29 オムロン株式会社 学習装置、学習方法、及びそのプログラム
JP6748135B2 (ja) * 2018-03-19 2020-08-26 ファナック株式会社 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
JP6740279B2 (ja) * 2018-04-13 2020-08-12 ファナック株式会社 調整装置及び調整方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07105159A (ja) * 1993-09-30 1995-04-21 Omron Corp 情報処理装置
JP2000330610A (ja) * 1999-05-19 2000-11-30 Matsushita Electric Ind Co Ltd 学習制御装置および学習制御方法
JP2005211928A (ja) 2004-01-29 2005-08-11 Komatsu Sanki Kk プレスシステム
JP2008102720A (ja) * 2006-10-18 2008-05-01 Omron Corp 制御装置、制御パラメータの調整装置、制御パラメータの調整方法およびプログラム
JP2015018388A (ja) * 2013-07-10 2015-01-29 東芝三菱電機産業システム株式会社 制御パラメータ調整システム
JP2017068658A (ja) * 2015-09-30 2017-04-06 ブラザー工業株式会社 パラメータ更新方法、パラメータ更新装置、及びプログラム
JP2018036773A (ja) * 2016-08-30 2018-03-08 国立大学法人広島大学 データ指向型フィードバック制御装置およびデータ指向型フィードバック制御方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3767400A4

Also Published As

Publication number Publication date
CN111684365A (zh) 2020-09-18
US20210041838A1 (en) 2021-02-11
JP2019160017A (ja) 2019-09-19
CN111684365B (zh) 2022-10-21
US11480931B2 (en) 2022-10-25
EP3767400B1 (en) 2023-05-10
EP3767400A1 (en) 2021-01-20
EP3767400A4 (en) 2021-11-17
JP6536978B1 (ja) 2019-07-03

Similar Documents

Publication Publication Date Title
WO2019176655A1 (ja) 学習装置、学習方法、及びそのプログラム
WO2019176772A1 (ja) 学習装置、学習方法、及びそのプログラム
US20190054700A1 (en) Machine learning for additive manufacturing
JP2020515963A (ja) 設計ツールからのデータおよびデジタルツイングラフからの知識を用いた自律生成設計合成システム
US11508170B2 (en) Digital handwriting synthesis
WO1992014197A1 (en) Model forecasting controller
KR102577188B1 (ko) 목표 시스템에 대한 제어 시스템 생성
WO2019176370A1 (ja) 将来状態推定装置および将来状態推定方法
JP2020052737A (ja) 製品設計装置および該方法
US20180285317A1 (en) Model generation system and model generation method
JP2019053593A (ja) 方策改善プログラム、方策改善方法、および方策改善装置
JP2021043574A (ja) 設計方法、制御方法、及びコンピュータプログラム
WO2021176566A1 (ja) 特徴変換装置、画像認識システム、特徴変換方法および非一時的なコンピュータ可読媒体
JPH06332506A (ja) 非線形制御装置
WO2019142728A1 (ja) 制御装置、制御方法およびプログラム記録媒体
US10871416B2 (en) Calibration work support device, calibration work support method, and non-transitory computer readable storage medium
JP7360162B2 (ja) 制御系設計方法及び制御装置
WO2015083333A1 (ja) 性能予測装置、性能予測方法、及び、コンピュータ・プログラムが格納された記憶媒体
JP2006338673A (ja) 設備を調整するデータ処理システムおよび方法
JP7414289B2 (ja) 状態推定装置、状態推定方法及びプログラム
JP6999207B1 (ja) データ解析方法、データ解析装置、及び、データ解析プログラム
JPH07191967A (ja) 関数近似装置及び電力需要予測装置
JP2021140216A (ja) 制御システム及び制御方法
Biehler et al. RETROFIT: Real-Time Control of Time-Dependent 3D Point Cloud Profiles
CN118094105A (zh) 基于动态信息的模型增量微调方法、系统、设备及介质

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2019767608

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2019767608

Country of ref document: EP

Effective date: 20201015