WO2023203933A1 - 情報処理方法、情報最適化方法、情報処理装置、及びプログラム - Google Patents

情報処理方法、情報最適化方法、情報処理装置、及びプログラム Download PDF

Info

Publication number
WO2023203933A1
WO2023203933A1 PCT/JP2023/010882 JP2023010882W WO2023203933A1 WO 2023203933 A1 WO2023203933 A1 WO 2023203933A1 JP 2023010882 W JP2023010882 W JP 2023010882W WO 2023203933 A1 WO2023203933 A1 WO 2023203933A1
Authority
WO
WIPO (PCT)
Prior art keywords
control parameter
evaluation
information processing
optimization process
representative
Prior art date
Application number
PCT/JP2023/010882
Other languages
English (en)
French (fr)
Inventor
太一 佐藤
太一 清水
俊 高柳
勇斗 北川
亨宗 白方
俊策 利弘
光心 甲斐
Original Assignee
パナソニックIpマネジメント株式会社
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 パナソニックIpマネジメント株式会社 filed Critical パナソニックIpマネジメント株式会社
Publication of WO2023203933A1 publication Critical patent/WO2023203933A1/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 disclosure relates to an information processing method, an information optimization method, an information processing device, and a program.
  • An object of the present disclosure is to provide an information processing method, an information optimization method, an information processing device, and a program that can efficiently generate appropriate control parameters.
  • An information processing method is an information processing method for optimizing control parameters in a device that executes a plurality of operations based on a plurality of control parameters, the information processing device
  • a representative motion that includes at least one motion out of all motions executable by the device is selected, the device is caused to execute the selected representative motion, and the device is measured during execution of the representative motion.
  • acquiring measurement data regarding the operation of the controller calculating an evaluation value of a predetermined evaluation index based on the acquired measurement data, updating the control parameter based on the calculated evaluation value, and performing the control parameter optimization process.
  • the control parameter optimization process is executed multiple times while changing the evaluation criteria.
  • an information processing device executes a first optimization process for information using a first evaluation criterion, and uses a plurality of evaluation values calculated in the first optimization process.
  • a search range for the information is set based on the search range, and a second optimization process for the information is performed using a second evaluation criterion with respect to the set search range.
  • An information processing device is an information processing device for optimizing control parameters in a device that executes a plurality of operations based on a plurality of control parameters, the information processing device includes a selection unit, a control unit, an acquisition unit, and an acquisition unit.
  • the selection unit selects a representative operation including at least one operation out of all the operations executable by the device, and the control unit includes: The selection unit causes the device to execute the representative motion selected, the acquisition unit acquires measurement data regarding the motion of the device measured in the execution of the representative motion, and the calculation unit An evaluation value of a predetermined evaluation index is calculated based on the acquired measurement data, and the updating unit updates the control parameter based on the evaluation value calculated by the calculation unit, and performs the control parameter optimization process.
  • the control parameter optimization process is executed multiple times while changing the evaluation criteria.
  • a program includes an information processing device for optimizing control parameters in a device that executes a plurality of operations based on a plurality of control parameters, a selection means, a control means, an acquisition means, a calculation means. , and a program for functioning as an updating means, wherein in the control parameter optimization process, the selection means selects a representative operation including at least one operation out of all the operations executable by the device, and The means causes the apparatus to execute the representative motion selected by the selection means, the acquisition means acquires measurement data regarding the operation of the apparatus measured in the execution of the representative motion, and the calculation means The acquisition means calculates an evaluation value of a predetermined evaluation index based on the measurement data acquired, and the update means updates the control parameter based on the evaluation value calculated by the calculation means, and optimizes the control parameter.
  • the control parameter optimization process is executed multiple times while changing the evaluation criteria for the optimization process.
  • FIG. 1 is a schematic diagram showing an overview of a control parameter generation system according to a first embodiment.
  • FIG. 2 is a block diagram showing the configuration of the control parameter generation system according to the first embodiment.
  • FIG. 3 is a perspective view showing an example of the production apparatus according to the first embodiment.
  • FIG. 4 is a data configuration diagram showing an example of control parameters stored in the memory according to the first embodiment.
  • FIG. 5 is a schematic diagram showing an example of the transition of the positional deviation of the driven object with respect to the target position.
  • FIG. 6 is a data configuration diagram showing an example of measurement data output by the sensor according to the first embodiment.
  • FIG. 7 is a flowchart of the first control parameter generation process.
  • FIG. 8 is a sequence diagram of the first control parameter generation process.
  • FIG. 9 is a schematic diagram showing an example of an image displayed by the display unit according to the first embodiment.
  • FIG. 10 is a flowchart of the condition acquisition process.
  • FIG. 11 is a schematic diagram showing an example of an image displayed by the display unit according to the first embodiment.
  • FIG. 12 is a flowchart of representative motion designation processing.
  • FIG. 13 is a schematic diagram showing an example of an image displayed by the display unit according to the first embodiment.
  • FIG. 14 is a schematic diagram showing the experimental results of experiments conducted by the inventors.
  • FIG. 15 is a block diagram showing the configuration of a control parameter generation system according to the second embodiment.
  • FIG. 16A is a schematic diagram showing an example of the transition of the positional deviation of the driven object with respect to the target position.
  • FIG. 16A is a schematic diagram showing an example of the transition of the positional deviation of the driven object with respect to the target position.
  • FIG. 16B is a schematic diagram showing an example of the transition of the positional deviation of the driven object with respect to the target position.
  • FIG. 17 is a flowchart of the second control parameter generation process.
  • FIG. 18 is a flowchart of the third control parameter generation process.
  • FIG. 19 is a schematic diagram showing an example of how the determination unit according to the third embodiment selects X representative motions from Y motions.
  • FIG. 20 is a flowchart of parameter update processing through all operations.
  • FIG. 21 is a flowchart of the first control parameter generation process.
  • FIG. 22 is a flowchart showing the flow of processing executed by the information processing section.
  • FIG. 23 is a diagram schematically showing a method of setting a search range by the generation unit.
  • FIG. 24 is a diagram showing a simplified part of the operating condition information in which execution conditions for each operation executed by the production apparatus are described.
  • FIG. 25 is a flowchart showing the flow of processing executed by the information processing unit in relation to notification of status information to the user.
  • FIG. 26 is a diagram illustrating an example of a status notification image.
  • the number of control parameters for the drive source used in production equipment may reach 50 or more.
  • the adjusted gradation may reach 100 or more gradations.
  • the number of drive source control parameters is 50
  • the control parameter adjustment gradation is 100 gradations
  • the number of these combinations is 100 50 ⁇
  • the inventors discovered that when generating control parameters for such a huge number of combinations, when using a method of searching for appropriate control parameters using machine learning models, etc., the search range is too wide. As a result, we found that there are cases where it takes a huge amount of time to search for the appropriate control parameters, or where it is not possible to arrive at the appropriate control parameters no matter how long it takes. .
  • the inventors conducted extensive experiments in order to realize a parameter generation method that can efficiently generate appropriate control parameters even when generating control parameters for a huge number of combinations. , the study was repeated.
  • the inventors found that without searching for appropriate control parameters for all of the huge combinations from the beginning, for example, when a production device performs 80 operations, the first As a step, appropriate control parameters are set for only some of these 80 operations, for example, combinations of one operation, that is, for only some combinations out of a huge number of combinations.
  • the number of operations performed by the production equipment is increased, and, for example, by targeting combinations of two operations, appropriate control parameters are searched for using the search results in the first step as a foothold.
  • the number of operations performed by the production equipment is further increased, for example, by targeting combinations of four operations, and using the search results from the previous step as a foothold, appropriate control parameters are determined.
  • appropriate control parameters for combinations of all 80 operations can be found. We have found that it can be produced more efficiently and reliably.
  • An information processing method is an information processing method for optimizing control parameters in a device that executes a plurality of operations based on a plurality of control parameters, the information processing device controlling In the parameter optimization process, a representative motion that includes at least one motion out of all the motions executable by the device is selected, the device is caused to execute the selected representative motion, and the Acquire measurement data regarding the operation of the device, calculate an evaluation value of a predetermined evaluation index based on the acquired measurement data, update the control parameter based on the calculated evaluation value, and perform the control parameter optimization process.
  • the control parameter optimization process is executed multiple times while changing the evaluation criteria.
  • control parameter optimization process is executed multiple times while changing the evaluation criteria for the control parameter optimization process. In this way, by repeatedly executing the control parameter optimization process while changing the evaluation criteria, it becomes possible to efficiently generate appropriate control parameters.
  • changing the evaluation criteria may include changing the representative motion.
  • changing the representative motion may include changing the number of motions included in the representative motion.
  • the third aspect it is possible to change the evaluation criteria by changing the number of movements included in the representative movement.
  • changing the number of operations may include increasing the number of operations.
  • the fourth aspect by repeatedly executing the control parameter optimization process while gradually increasing the number of motions included in the representative motion, it becomes possible to efficiently generate appropriate control parameters.
  • changing the representative motion may include changing the content of the motion included in the representative motion.
  • the fifth aspect it is possible to change the evaluation criteria by changing the content of the motion included in the representative motion.
  • changing the content of the operation may include complicating the content of the operation.
  • any one of the second to sixth aspects in changing the representative motion, all the motions are classified into a plurality of groups based on the degree of similarity; A motion requiring improvement is identified from among the motions included in each of the plurality of groups based on the evaluation value or its past average value, and the motion requiring improvement identified for the plurality of groups is used for the next time. It is preferable to select this as the representative motion in the control parameter optimization process.
  • the seventh aspect it is possible to efficiently generate appropriate control parameters by selecting a plurality of motions requiring improvement identified for a plurality of groups as representative motions in the next control parameter optimization process. .
  • changing the evaluation criteria may include changing the evaluation index.
  • each operation of the plurality of operations is an operation for the device to move a target object to a target position
  • the evaluation index is a It is preferable to include a settling time until the positional deviation between the position and the target position converges within an allowable range.
  • the ninth aspect by using the settling time as an evaluation index, it is possible to appropriately evaluate the control parameters.
  • each operation of the plurality of operations is an operation for the device to move a target object to a target position
  • the evaluation index is a It is preferable that the positional deviation between the position and the target position includes a deviation time or an integrated value of the positional deviation amount during which the positional deviation deviates from the allowable range.
  • the tenth aspect by using the deviation time or the integrated value of the positional deviation amount as an evaluation index, it is possible to appropriately evaluate the control parameters.
  • An information processing method in any one of the first to tenth aspects, further includes determining the next time based on the plurality of evaluation values calculated in the current control parameter optimization process. It is preferable to set a search range for the control parameters as update candidates in the control parameter optimization process.
  • control parameter search range setting information from the current control parameter optimization process to the next control parameter optimization process
  • appropriate control parameters can be efficiently determined in the next control parameter optimization process. It becomes possible to search for information.
  • An information processing method in any one of the first to eleventh aspects, further provides that, in the comprehensive evaluation process, a predetermined evaluation operation for comprehensively evaluating the operation of the device is performed on the device. obtain measurement data regarding the operation of the device measured in the execution of the evaluation operation, calculate an evaluation value of the evaluation index based on the obtained measurement data, and calculate the evaluation value of the evaluation index based on the calculated evaluation value. It is advisable to perform the comprehensive evaluation described above.
  • the evaluation operation is the entire operation.
  • the device execute all operations as evaluation operations, it is possible to perform accurate comprehensive evaluation.
  • the evaluation motion may be a differential motion between the entire motion and the representative motion immediately preceding the evaluation motion.
  • the fourteenth aspect by causing the device to execute, as the evaluation operation, a differential operation between all the operations and the most recent representative operation of the evaluation operation, the efficiency of the evaluation operation can be improved while maintaining the accuracy of the comprehensive evaluation. becomes possible.
  • the evaluation operation is a specified operation predefined from among all the operations.
  • the fifteenth aspect it is possible to improve the efficiency of the evaluation operation by causing the device to execute a predetermined operation out of all the operations as the evaluation operation.
  • control parameter optimization process may be terminated.
  • the control parameter optimization process is terminated even before the control parameter optimization process reaches the final stage. It becomes possible to shorten the time.
  • each operation of the plurality of operations is an operation in which the device moves a target object to a target position; Furthermore, the elapsed time since the start of the control parameter optimization process, the remaining time until the maximum time to continue the control parameter optimization process, and the currently executed time of the at least one operation included in the representative operation.
  • Operation conditions including at least one of identification information, movement amount, movement speed, acceleration time, and deceleration time regarding the movement, the number of movements included in the representative movement, the number of updates of the control parameter, and the control parameter. It is preferable to output status information regarding at least one of the remaining number of updates up to the maximum number of updates to notify the user.
  • the user can easily check the progress status or operating conditions of the control parameter optimization process through the notification, thereby improving user convenience. It becomes possible to improve the
  • the situation information is further updated each time the evaluation criteria are changed.
  • the eighteenth aspect by updating the situation information every time the evaluation criteria is changed, it is possible to notify the user of the latest situation information.
  • the maximum time, the operating condition, and the maximum number of times may further be set based on condition setting information input by the user.
  • the user can arbitrarily set the maximum time, operating conditions, and maximum number of times.
  • the operating conditions are set in advance for each of the devices, and further, based on device selection information input by the user, It is preferable to set the operating conditions according to the device.
  • the 20th aspect it is possible to automatically set appropriate operating conditions according to the device selected by the user.
  • An information processing method in any one of the 1st to 20th aspects, further includes information on an execution time and an operating condition for each operation executed by the device in the control parameter optimization process. It is a good idea to record operation history information including.
  • an information processing device executes a first optimization process for information using a first evaluation criterion, and calculates a plurality of evaluation values calculated in the first optimization process.
  • a search range for the information is set based on the search range, and a second optimization process for the information is performed using a second evaluation criterion with respect to the set search range.
  • the twenty-second aspect by passing the search range setting information from the first optimization process to the second optimization process, it is possible to efficiently execute the second optimization process.
  • An information processing device for optimizing a control parameter in a device that executes a plurality of operations based on a plurality of control parameters, the information processing device including a selection unit, a control unit,
  • the selection unit includes an acquisition unit, a calculation unit, and an update unit, and in the control parameter optimization process, the selection unit selects a representative operation that includes at least one operation from among all operations executable by the device, and the control unit , causing the device to execute the representative motion selected by the selecting section, the acquiring section acquiring measurement data related to the motion of the device measured during execution of the representative motion, and the calculating section causing the acquiring section to execute the representative motion.
  • the control parameter optimization process is executed multiple times while changing the evaluation criteria.
  • control parameter optimization process is executed multiple times while changing the evaluation criteria for the control parameter optimization process. In this way, by repeatedly executing the control parameter optimization process while changing the evaluation criteria, it becomes possible to efficiently generate appropriate control parameters.
  • a program includes an information processing device for optimizing control parameters in a device that executes a plurality of operations based on a plurality of control parameters, a selection means, a control means, an acquisition means, a calculation and updating means, in which in the control parameter optimization process, the selection means selects a representative operation that includes at least one operation from among all the operations executable by the device;
  • the control means causes the apparatus to execute the representative motion selected by the selection means, the acquisition means acquires measurement data regarding the motion of the apparatus measured during execution of the representative motion, and the calculation means:
  • the acquisition means calculates an evaluation value of a predetermined evaluation index based on the measurement data acquired, and the update means updates the control parameter based on the evaluation value calculated by the calculation means, and updates the control parameter based on the evaluation value calculated by the calculation means.
  • the control parameter optimization process is executed multiple times while changing the evaluation criteria for the optimization process.
  • control parameter optimization process is executed multiple times while changing the evaluation criteria for the control parameter optimization process. In this way, by repeatedly executing the control parameter optimization process while changing the evaluation criteria, it becomes possible to efficiently generate appropriate control parameters.
  • This control parameter generation system is a system that generates control parameters used in a production device that includes a drive source that drives a driven object.
  • FIG. 1 is a schematic diagram showing an overview of a control parameter generation system 1 according to the first embodiment.
  • FIG. 2 is a block diagram showing the configuration of the control parameter generation system 1.
  • control parameter generation system 1 includes a control parameter generation device 10, a production device 20, and a sensor 30.
  • the production device 20 is a device used to produce equipment, and performs mounting, processing, machining, transportation, etc. of the equipment.
  • the production device 20 is installed, for example, on a production line of a factory.
  • the production device 20 is, for example, a mounting device, a processing device, a machining device, a conveying device, or the like.
  • the production device 20 performs N operations (N is an integer of 3 or more). N is, for example, 80.
  • the production device 20 includes a memory 21, a control circuit 22, a drive source 23, and a driven object 24.
  • the operation of the drive source 23 is controlled by the control circuit 22 and drives the object 24 to be driven.
  • the drive source 23 is, for example, a servo motor, a fluid directional flow rate control valve used to control a pneumatic artificial muscle arm, or a fluid directional flow rate control valve used to control a hydraulic arm.
  • the servo motor may be, for example, a rotary motor or a linear motor.
  • the driven object 24 is an object driven by the drive source 23.
  • the driven object 24 is a head for conveying the workpiece, a nozzle attached to the head for sucking the workpiece, or the like.
  • the driven object 24 is, for example, a pneumatic artificial muscle arm, a hydraulic arm, etc. when the drive source 23 is a directional flow rate control valve.
  • FIG. 3 is a perspective view of a production apparatus 20 configured, as an example, in which the drive source 23 is a servo motor and the driven object 24 is a nozzle provided in a head.
  • the production device 20 may be, for example, a mounting device that mounts components on a board 120 placed on a machine stand 110.
  • the production device 20 functions as, for example, a nozzle 81 for sucking parts, a head 80 equipped with the nozzle 81, and a drive source 23 for moving the head 80 in the X-axis direction in a plan view of the machine 110. It includes a servo motor 23A and a servo motor 23B that functions as a drive source 23 for moving in the Y-axis direction.
  • head 80 is connected to servo motor 23A via arm 72 and servo motor 23B.
  • the control circuit 22 controls the drive source 23 by outputting a command to the drive source 23 to position the driven object 24 at a predetermined target position.
  • the command that the control circuit 22 outputs to the drive source 23 may be, for example, a position command that instructs the position of the drive source 23 or the driven object 24, or may be, for example, a torque command that instructs the torque of the drive source 23. There may be.
  • the control circuit 22 controls the drive source 23 based on the control parameters stored in the memory 21. In other words, the control circuit 22 uses the control parameters stored in the memory 21 when controlling the drive source 23.
  • the number of control parameters is, for example, 50.
  • the memory 21 stores control parameters used by the control circuit 22 to control the drive source 23.
  • the control parameters stored in the memory 21 are the control parameters output from the control parameter generation device 10.
  • the memory 21 acquires the output control parameters and updates, that is, overwrites and stores the stored control parameters with the acquired control parameters.
  • FIG. 4 is a data configuration diagram showing an example of control parameters stored in the memory 21.
  • the control parameters stored in the memory 21 include, for example, parameters a1 and a2 that adjust the vibration frequency of the driven object 24, parameters b1 and b2 that adjust the speed of the driven object 24, and parameters b1 and b2 that adjust the speed of the driven object 24.
  • the parameters include parameters c1 and c2 for adjusting the depth of a singular point in the vibration characteristics of the object 24, parameters d1 and d2 for adjusting the vibration amplitude of the driven object 24, and the like.
  • control parameters include, for example, parameters b1 and b2 that adjust speed, parameters c1 and c2 that adjust the depth of singularity in vibration characteristics, and parameters d1 and d2 that adjust vibration amplitude.
  • the sensor 30 measures the position of the driven object 24 in the production apparatus 20 that performs at least one of the N operations in time series. Then, measurement data indicating the measured position corresponding to each of at least one operation is output to the control parameter generation device 10.
  • FIG. 5 is a schematic diagram showing an example of the transition of the positional deviation of the driven object 24 with respect to the target position when the production apparatus 20 drives the driven object 24 to the target position.
  • the horizontal axis indicates time
  • the vertical axis indicates the positional deviation of the driven object 24 with respect to the target position.
  • the tolerance range refers to the range in which the positional deviation from the target position is within the required accuracy.
  • the time when the driven object 24 reaches the permissible position that can be evaluated as reaching the target position (hereinafter also referred to as “settling time”) is the time when the driven object 24 is within the permissible range. This refers to the time when the tolerance range is finally reached, when the tolerance range is no longer exceeded after reaching the tolerance range.
  • the settling time refers to the time from the start of stopping of the driven object 24 based on the command to bring the position of the driven object 24 to the target position.
  • the time required for the object to reach an allowable position that can be evaluated as reaching the target position that is, the time from the stop start time to the settling time, or the drive based on a command to bring the position of the driven object 24 to the target position. It refers to the time from the start of movement of the object 24 until the position of the driven object 24 reaches an allowable position where it can be evaluated that it has reached the target position, that is, the time from the movement start time to the settling time.
  • FIG. 6 is a data configuration diagram showing an example of measurement data output by the sensor 30.
  • the measurement data is, for example, data in which the elapsed time [ms] after the reference time and the deviation amount [mm] from the target position are associated in one-to-one correspondence.
  • the reference time is the stop start time of the driven object 24 based on a command to bring the position of the driven object 24 to the target position, or the time when the driven object 24 starts to stop based on the command to bring the position of the driven object 24 to the target position. This is the time when the movement of the driven object 24 is started.
  • the control parameter generation device 10 generates control parameters used in the production device 20.
  • the control parameter generation device 10 is realized, for example, in a computer device including a processor, a memory, and an input/output interface, by the processor executing a program stored in the memory.
  • a computer device including a processor, a memory, and an input/output interface, by the processor executing a program stored in the memory.
  • a computer device is, for example, a personal computer.
  • the control parameter generation device 10 includes an information processing section 41 such as a processor, a storage section 42 such as a memory, an input section 44 such as a mouse or a keyboard, and a display such as a liquid crystal display or an organic EL display. 17, and a communication section 43 such as a communication module.
  • an information processing section 41 such as a processor
  • a storage section 42 such as a memory
  • an input section 44 such as a mouse or a keyboard
  • a display such as a liquid crystal display or an organic EL display. 17
  • a communication section 43 such as a communication module.
  • the information processing unit 41 includes a determining unit 13, a selecting unit 19, a controlling unit 18, an acquiring unit 11, an output unit, and the like, as functions realized by a processor executing a program read from a computer-readable recording medium such as a ROM. 12, an operation receiving section 15, an image generating section 16, and a generating section 14. That is, the above program controls the information processing section 41 as an information processing device installed in the control parameter generation device 10, the judgment section 13 (judgment means), the selection section 19 (selection means), the control section 18 (control means), A program for functioning as the acquisition section 11 (acquisition means), the output section 12 (output means), the operation reception section 15 (operation reception means), the image generation section 16 (image generation means), and the generation section 14 (generation means) It is.
  • the selection unit 19 selects a representative action that includes at least one action among all the actions that the production device 20 can execute.
  • the control unit 18 causes the production apparatus 20 to execute the representative operation or all the operations selected by the selection unit 19.
  • the acquisition unit 11 acquires each measurement data output from the sensor 30 and corresponding to each of one or more operations performed by the production device 20.
  • the determination section 13 determines a command to bring the position of the driven object 24 to the target position for the motion, based on the measurement data corresponding to the motion.
  • the time from the start of stopping or the start of movement of the driven object 24 to the time when the driven object 24 reaches an allowable position where it can be evaluated as reaching the target position, that is, the settling time is determined. That is, the determination unit 13 functions as a calculation unit that calculates the evaluation value of the evaluation index (in the example of this embodiment, the settling time) based on the measurement data acquired by the acquisition unit 11.
  • the generation unit 14 generates at least one of the one or more settling times corresponding to each of the one or more movements acquired by the acquisition unit 11 and at least the most among the one or more settling times determined by the determination unit 13.
  • the control parameters are updated through optimization processing to shorten the long settling time, and updated control parameters are generated. That is, the generation unit 14 functions as an update unit that updates the control parameters based on the evaluation value calculated by the determination unit 13 as a calculation unit.
  • the generation unit 14 performs optimization using at least the longest settling time among each of the one or more settling times as an evaluation value to be optimized.
  • the average value of the settling times or the average value of the longest P of the L settling times may be used as the evaluation value.
  • the generation unit 14 has an optimization algorithm 140 that optimizes the control parameters so as to shorten the settling time. Then, the generation unit 14 uses the optimization algorithm 140 to perform optimization processing to shorten at least the longest settling time among each of the one or more settling times determined by the determination unit 13.
  • the optimization algorithm 140 may be a known algorithm such as a Bayesian optimization algorithm, an evolutionary strategy algorithm (CMA-ES), or a genetic algorithm (GA), for example. Further, the optimization process for shortening the settling time using the optimization algorithm 140 may be a known process performed using the above-mentioned known algorithm, for example.
  • the generation unit 14 may generate the update control parameters by performing the optimization process once, or may generate the update control parameters by repeatedly performing the optimization process until the optimization process termination condition is met. Good too.
  • the optimization process termination condition is, for example, a period during which the optimization process is repeated.
  • the generation unit 14 repeatedly performs the optimization process for a predetermined period.
  • the optimization process termination condition is, for example, the number of times the optimization process is repeated.
  • the generation unit 14 repeatedly performs the optimization process a predetermined number of times.
  • the optimization processing end condition is, for example, a time that one or more settling times must be satisfied.
  • the generation unit 14 repeatedly performs the optimization process until one or more settling times become equal to or less than a predetermined time.
  • the output unit 12 outputs the control parameters generated by the generation unit 14 to the production device 20 in order to store them in the memory 21.
  • the operation accepting unit 15 accepts input operations such as setting information from the input unit 44 to the control parameter generating device 10 by a user using the control parameter generating system 1.
  • the display unit 17 displays images provided to the user who uses the control parameter generation system 1. Note that the manner of notifying the user of information is not limited to image display, but may also be audio output or the like.
  • the image generation unit 16 generates an image to be displayed on the display unit 17.
  • the control parameter generation system 1 performs a first control parameter generation process, a condition acquisition process, and a representative motion designation process.
  • the first control parameter generation process is a process for generating control parameters used in the production apparatus 20.
  • the first control parameter generation process is started, for example, when a user using the control parameter generation system 1 performs an operation on the operation reception unit 15 to start the first control parameter generation process. .
  • FIG. 7 is a flowchart of the first control parameter generation process
  • FIG. 8 is a sequence diagram of the first control parameter generation process.
  • the operation reception unit 15 starts a predetermined program for executing the first control parameter generation process (step S5 ).
  • the output unit 12 When the predetermined program is started, the output unit 12 outputs the initial values of the control parameters to the memory 21 (step S10). At this time, the output unit 12 may, for example, output an initial value of the control parameter consisting of a predetermined value, or may output an initial value of the control parameter consisting of a value specified by the user. Alternatively, for example, the initial value of the control parameter may be output, which is a value calculated by a calculation method specified by the user.
  • the memory 21 stores the control parameters output from the output unit 12 (step S15).
  • control parameter generation device 10 assigns the initial value 1 to the integer type variable X (step S20).
  • the initial value assigned to the integer type variable X is 1, the initial value may be an integer between 1 and N-1, and is not necessarily limited to 1.
  • the initial value assigned to the integer type variable X may be specified by the user.
  • the production apparatus 20 performs the X motions out of the N motions under the control of the control unit 18 (step S25).
  • the X actions selected by the selection unit 19 may be, for example, actions designated by the user, predetermined actions, or specific actions designated by the user. It may also be an action that is actively specified by the method.
  • the user specifies X operations to be performed by the production apparatus 20, this is achieved, for example, by executing representative operation designation processing, which will be described later.
  • the sensor 30 When the production device 20 performs X operations, the sensor 30 outputs X measurement data corresponding to each of the X operations to the control parameter generation device 10 (step S30).
  • the acquisition unit 11 acquires each of the X pieces of measurement data corresponding to each of the X operations from the sensor 30 (step S35).
  • the determination unit 13 determines the settling time for each of the X measurement data (step S40).
  • the generating unit 14 examines whether the optimization processing termination condition is satisfied (step S45).
  • step S45 if the optimization process termination condition is not satisfied (step S45: No), the generation unit 14 performs the optimization process to shorten at least the longest settling time among the X settling times. Execute (step S50). Preferably, the control parameter optimization process is performed so that all of the X settling times are equal to or less than the target value. Then, the generation unit 14 generates update control parameters optimized to shorten at least the longest settling time among the X settling times through optimization processing (step S55).
  • the output unit 12 outputs the generated update control parameters to the production device 20 in order to store them in the memory 21 (step S60).
  • the memory 21 acquires the output control parameters and updates the stored control parameters with the acquired control parameters (step S65).
  • step S65 When the process of step S65 is completed, the first control parameter generation process proceeds to the process of step S25 again.
  • step S45 if the optimization process termination condition is satisfied (step S45: Yes), the control parameter generation device 10 checks whether the value of the integer type variable X is equal to N (step S70 ).
  • step S70 if the value of the integer type variable X is not equal to N (step S70: No), that is, if the value of the integer type variable An integer between X+1 and N is assigned to the type variable X (step S75).
  • step S75 the first control parameter generation process proceeds to the process of step S25 again.
  • step S70 if the value of the integer type variable X is equal to N (step S70: Yes), the first control parameter generation process ends.
  • step S40 when the determining unit 13 determines X settling times, the image generating unit 16 generates an image showing the current optimization process status, and the display unit 17 The image generated by the unit 16 may be output.
  • FIG. 9 is a schematic diagram showing an example of the above image displayed on the display section 17.
  • the display of "5" in the column on the right side of "Optimization stage” indicates that the number of times an integer is assigned to the integer type variable X in the first control parameter generation process currently being executed is 5; That is, the first control parameter generation process that is currently being executed is a loop process performed four times from the process of step S25, to the process of step S45: Yes, to the process of step S70: No, and then back to the process of step S25. Indicates that the process is repeated.
  • the display of "1" in the "Number of representative motions" column in the "first stage” means that the integer assigned to the integer type variable X for the first time, that is, the integer assigned in the process of step S20, is "1". shows.
  • the display of "2" in the "Number of representative operations" column of the "second stage” indicates the integer assigned to the integer type variable X for the second time, that is, in the process of step S75 executed first in the above loop process. Indicates that the integer to be substituted is "2".
  • the display of "8" in the "Number of Representative Operations" column of the "Third Stage” indicates the integer to be assigned to the integer variable X for the third time, that is, in the process of step S75 executed for the second time in the above loop process Indicates that the integer to be substituted is "8".
  • the display of "32" in the "Number of Representative Operations" column of the "Fourth Stage” is the integer assigned to the integer type variable X for the fourth time, that is, in the process of step S75 executed for the third time in the above loop process Indicates that the integer to be substituted is "32".
  • the display of "2" in the "Maximum optimization time (h)" column for "1st stage” to "5th stage” means that the optimization process (that is, step S50) is This indicates that the condition that the predetermined period for which the optimization process is repeated is two hours, that is, the upper limit for repeating the optimization process at each stage is two hours.
  • the display of "12" in the "Settling time to terminate optimization (ms)" column of "First stage” means that the settling time during which the optimization process is repeated is 12 ms, which is the condition for ending the optimization process in the first stage. This indicates that the condition that there is, that is, the upper limit for repeating the optimization process in the first stage is the condition that the settling time determined in the process of step S40 is 12 ms.
  • the display of "23" in the "Settling time to stop optimization (ms)" column for "2nd stage” to “5th stage” means that optimization is
  • the condition that the settling time for which the process is repeated is 23 ms, that is, the upper limit for repeating the optimization process in the second to fifth stages is 23 ms or less for the X settling times determined in the process of step S40. Indicates that the condition that it is up to is included.
  • the display of "12" in the "Minimum settling time” column of "First stage” indicates that the minimum value of the settling time determined in the first stage is 12 ms.
  • the display of "23" in the "Minimum settling time” column of "Second stage” indicates that the minimum value of the settling time determined in the second stage is 23 ms.
  • the display of "45” in the "Minimum settling time” column of the "Third stage” indicates that the minimum value of the settling time determined in the third stage is currently 45 ms.
  • a blank display in the "Minimum settling time" column for the "Fourth stage” and "Fifth stage” indicates that the settling time has not been determined in the fourth stage and the fifth stage.
  • the line graph 210 in the graph on the right shows the time course of the settling time determined in the first stage
  • the line graph 220 shows the time course of the settling time determined in the second stage
  • the line graph 230 shows the time course of the settling time determined in the second stage. The time course of the settling time determined in three stages is shown.
  • the condition acquisition process is a process for acquiring conditions for executing the first control parameter generation process.
  • condition acquisition process includes the number of times an integer is assigned to the integer type variable X in the first control parameter generation process, the numerical value at the time of assigning an integer to the integer type variable
  • the condition acquisition process is started, for example, when a user using the control parameter generation system 1 performs an operation on the operation reception unit 15 to start the condition acquisition process.
  • FIG. 10 is a flowchart of the condition acquisition process.
  • the operation reception unit 15 starts a predetermined program for executing the condition acquisition process (step S110).
  • the image generation unit 16 When the predetermined program is started, the image generation unit 16 generates an image that prompts the user using the control parameter generation system 1 to input conditions for executing the first control parameter generation process. Then, the display unit 17 displays the generated image (step S120).
  • step S130 No, repeats the loop of step S120).
  • FIG. 11 is a schematic diagram showing an example of the above drawing displayed on the display unit 17.
  • FIG. 11 is an example of the drawing in a state where the conditions for executing the first control parameter generation process have been input by the user.
  • the display of "1" in the "Number of representative motions" column of "First stage” means that the integer input by the user or set by default and assigned to the integer type variable X for the first time is "1". . Note that here, as described above, the initial value assigned to the integer type variable X is set to the default "1", so there is no need for the user to input it.
  • the display of "80" in the "Number of representative motions" column of the "fifth stage” indicates that the integer input by the user and assigned to the integer type variable X for the fifth time is "80".
  • the display of "2" in the "Maximum optimization time (h)" column for "1st stage” to "5th stage” means that the predetermined period under the optimization conditions of each stage input by the user is 2 hours. Show that. In other words, this indicates that the user has inputted a condition that the upper limit for repeating the optimization process at each stage is 2 hours as a condition for terminating the optimization process at each stage.
  • the display of "12" in the “Settling time to terminate optimization (ms)" column of "First stage” indicates that the predetermined time input by the user in the first stage optimization process termination condition is 12 ms. shows. That is, the user inputs a condition that the upper limit for repeating the optimization process in the first stage is until the settling time determined in the process of step S40 reaches 12 ms as a condition for terminating the optimization process in the first stage. Indicates that it has been done.
  • the display of "23" in the "Settling time to terminate optimization (ms)" column of "Second stage” to "Fifth stage” indicates the optimization process of the second stage to fifth stage input by the user. This indicates that the predetermined period in the end condition is 23 ms. That is, the user determines that the upper limit for repeating the optimization processing in the second to fifth stages is 23 ms as the settling time determined in the process of step S40 as the condition for terminating the optimization processing in the first to fifth stages. Indicates that the condition "up to" has been input.
  • step S130 when the user finishes inputting the conditions for executing the first control parameter generation process (step S130: Yes), the operation receiving unit 15 receives the first control parameter generation process input by the user. Conditions for executing the parameter generation process are acquired (step S140).
  • step S140 ends, the condition acquisition process ends.
  • the representative motion designation process is a process of designating each of the X motions to be executed at each stage when executing the first control parameter generation process.
  • the X motions executed at each stage will also be referred to as "representative motions" at each stage.
  • the representative motion designation process is started, for example, when a user using the control parameter generation system 1 performs an operation on the operation reception unit 15 to start the representative motion designation process.
  • FIG. 12 is a flowchart of representative motion designation processing.
  • the operation reception unit 15 starts a predetermined program for executing the representative motion designation process (step S210).
  • the image generation unit 16 When the predetermined program is started, the image generation unit 16 provides the user who uses the control parameter generation system 1 with X operations to be executed at each stage when executing the first control parameter generation process. Generate an image that prompts each specification. Then, the display unit 17 displays the generated image (step S220).
  • the operation receiving unit 15 accepts the user's designation to automatically perform each of the X operations to be executed at each stage when executing the first control parameter generation process, or The process waits until the manual designation of each of the X operations to be executed at each stage when executing the control parameter generation process is completed (step S230: No, the loop of step S220 is repeated).
  • FIG. 13 is a schematic diagram showing an example of the above image displayed on the display section 17.
  • FIG. 13 shows that the user (1) manually specifies each of the X operations to be executed at each step, and (2) manually specifies each of the X operations to be executed at each step. This is an example of the above-mentioned drawing in a state in which it has been made.
  • the black circle in the left column of "Manual Representative Selection" indicates that the user has specified that each of the X operations to be executed at each stage be manually specified. On the other hand, if the user specifies that each of the X operations to be executed at each stage will be automatically specified, a black circle will be displayed in the column to the left of "Automatic representative selection”. .
  • the display of white circles in the column of "Representative actions of the first stage" indicates the corresponding actions (actions specified by the action name at the left end of the table, below) as each of the X actions to be performed in the first stage. (similar) is specified.
  • step S230 the user designates to automatically perform each of the X operations to be executed at each stage when executing the first control parameter generation process, or executes the first control parameter generation process.
  • step S230: Yes the operation reception unit 15 allows the user to specify the X operations at each stage when executing the first control parameter generation process. It is checked whether or not each of the X operations to be executed is specified to be performed automatically (step S240).
  • step S240 if the user has not specified that each of the X operations to be executed at each stage when executing the first control parameter generation process be automatically performed (step S240: No) That is, if each of the X operations to be executed at each stage is manually specified when executing the first control parameter generation process, the operation receiving unit 15 executes each of the X operations at each stage specified by the user.
  • Each of the X motions to be performed is designated as each of the X representative motions at each stage (step S250).
  • step S240 if the user specifies that each of the X operations to be executed at each stage when executing the first control parameter generation process is automatically performed (step S240: Yes), The operation receiving unit 15 determines each of the X operations to be performed at each stage when executing the first control parameter generation process based on a predetermined algorithm (step S260).
  • the operation receiving unit 15 may determine that each of the predetermined actions is each of the X actions to be performed at each stage, or may determine that each of the actions that satisfy a predetermined condition is to be performed at each stage. It may be determined that each of the X operations to perform.
  • step S260 When the process of step S260 is completed, the operation receiving unit 15 designates each of the X actions to be executed at each stage determined in the process of step S260 as each of the X representative actions at each stage (step S270). .
  • the representative motion designation process ends when the process of step S250 ends and when the process of step S270 ends.
  • control parameter generation device 10 initially performs a search for appropriate control parameters for all N operations (for example, 80 operations) performed by the production device 20. Search for appropriate control parameters for a certain number of movements (for example, one), and gradually increase the number of target movements while searching for appropriate control parameters based on the previous search results. A search is performed, and finally, appropriate control parameters are searched for all N operations, and appropriate control parameters are generated.
  • N operations for example, 80 operations
  • search for appropriate control parameters for a certain number of movements for example, one
  • a search is performed, and finally, appropriate control parameters are searched for all N operations, and appropriate control parameters are generated.
  • control parameter generation device 10 configured as described above is more efficient than generating appropriate control parameters by suddenly searching for appropriate control parameters for all N operations performed by the production device 20. control parameters can be generated more reliably.
  • control parameter generation device 10 having the above configuration, appropriate control parameters can be efficiently generated.
  • the inventors used a production equipment simulation model to suddenly search for appropriate control parameters for all N operations performed by the production equipment 20, thereby generating appropriate control parameters.
  • An experiment was conducted to compare the settling time achieved when generating parameters with the settling time achieved when generating control parameters for use in the production apparatus 20 using the control parameter generating apparatus 10.
  • FIG. 14 is a schematic diagram showing the experimental results.
  • the settling time achieved when generating control parameters using the conventional method is 36 [ms], which is achieved when generating using the control parameter generating apparatus 10 using the control parameter generating apparatus 10.
  • the settling time required was 23 [ms].
  • the inventors demonstrated through this experiment that by generating control parameters using the control parameter generation device 10, the achieved settling time can be reduced by about 35% compared to the conventional method.
  • the control parameter generation system 1 according to the first embodiment is an example of a configuration in which the optimization process performed by the control parameter generation device 10 is a process to shorten the settling time.
  • the control parameter generation system according to the second embodiment is an example of a configuration in which the optimization process performed by the control parameter generation device according to the second embodiment is a process for reducing the degree of deviation, which will be described later. It has become.
  • control parameter generation system according to Embodiment 2, the same components as those in control parameter generation system 1 are given the same reference numerals as those in control parameter generation system 1, and the detailed explanation thereof will be omitted. The differences from System 1 will be mainly explained.
  • FIG. 15 is a block diagram showing the configuration of a control parameter generation system 1A according to the second embodiment.
  • the control parameter generation system 1A is configured by changing the control parameter generation device 10 from the control parameter generation system 1 according to Embodiment 1 to a control parameter generation device 10A. Furthermore, the control parameter generation device 10A is different from the control parameter generation device 10 in that the determination unit 13 is changed to a determination unit 13A, the generation unit 14 is changed to a generation unit 14A, and the optimization algorithm 140 is changed to an optimization algorithm 140A. It consists of
  • the determining section 13A determines the target position when setting the position of the driven object 24 to the target position for the motion, based on the measurement data corresponding to the motion. If there is a time period in which the driven object 24 is not within the allowable range, the extent to which the object is not within the allowable range in that time period, that is, the degree of deviation is determined.
  • the evaluation index in the first embodiment was the settling time until the positional deviation between the position of the driven object 24 and the target position converged within the allowable range
  • the evaluation index in the second embodiment was , is the deviation time or the integrated value of the positional deviation amount during which the positional deviation between the position of the driven object 24 and the target position deviates from the allowable range.
  • FIGS. 16A and 16B are schematic diagrams showing an example of the transition of the positional deviation of the driven object 24 with respect to the target position when the production apparatus 20 drives the driven object 24 to the target position.
  • the horizontal axis indicates time
  • the vertical axis indicates the positional deviation of the driven object 24 with respect to the target position.
  • the determining unit 13A determines, for example, as shown in FIG. 16A, the total amount of time ( (hereinafter also referred to as the "first sum") is determined to be the degree of deviation.
  • the determination unit 13A may calculate the first total by adding weights based on the elapsed time from the start of stopping or the start of movement of the driven object 24. That is, the determining unit 13A may calculate the first total by adding a larger weight (penalty) as the elapsed time from the start of stopping or starting the movement of the driven object 24 increases. This makes it possible to suppress relatively large fluctuations in the driven object 24 after a relatively long time has elapsed since the driven object 24 started stopping or moving.
  • the determination unit 13A determines, for example, as shown in FIG. 16B, after the driven object 24 first reaches within the tolerance range, the determination unit 13A determines whether the driven object 24 is not within the tolerance range.
  • the total sum of the integral values of positional deviations (hereinafter also referred to as "second sum") is determined to be the degree of deviation.
  • the determining unit 13A may exclude it from being added to the second summation. This makes it possible to provide resistance to sensor noise that occurs for a short time.
  • the generation unit 14A generates one or more degrees of deviation corresponding to each of the one or more movements acquired by the acquisition unit 11, and at least the most among the one or more degrees of deviation determined by the determination unit 13A.
  • Updated control parameters are generated by updating the control parameters through optimization processing so as to reduce the degree of large deviation.
  • the generation unit 14A has an optimization algorithm 140A that optimizes the control parameters so as to reduce the deviation time. Then, the generation unit 14A uses the optimization algorithm 140A to perform optimization processing to reduce at least the largest degree of deviation among the one or more degrees of deviation determined by the determination unit 13A.
  • the optimization algorithm 140A may be a known algorithm such as a Bayesian optimization algorithm, an evolutionary strategy algorithm (CMA-ES), or a genetic algorithm (GA), for example, similar to the optimization algorithm 140 according to the first embodiment. good. Further, the optimization process for reducing the degree of deviation using the optimization algorithm 140A may be, for example, a known process performed using the above-mentioned known algorithm.
  • the generation unit 14A may, for example, generate update control parameters by performing optimization processing once, or may repeatedly perform optimization until the optimization processing termination condition is met.
  • the update control parameters may be generated by performing the conversion process.
  • the optimization process termination condition is, for example, a period during which the optimization process is repeated.
  • the generation unit 14A repeatedly performs the optimization process for a predetermined period of time.
  • the optimization process termination condition is, for example, the number of times the optimization process is repeated.
  • the generation unit 14A repeatedly performs the optimization process a predetermined number of times.
  • the optimization processing termination condition is, for example, a degree that one or more degrees of deviation should be satisfied.
  • the generation unit 14A repeatedly performs the optimization process until one or more degrees of deviation become equal to or less than a predetermined degree.
  • control parameter generation system 1A performs a second control parameter generation process in which a part of the process is changed from the first control parameter generation process. Execute.
  • the second control parameter generation process is a process for generating control parameters used in the production apparatus 20, similar to the first control parameter generation process.
  • FIG. 17 is a flowchart of the second control parameter generation process.
  • step S305 to step S335, the process of step S345, and the process of step S360 to step S375 are respectively performed in step S5 in the first control parameter generation process.
  • the control parameter generation device 10 the determination unit 13, and the generation unit 14 are respectively controlled from the process of step S35 to step S45, and the process of step S60 to step S75.
  • 10A, determination section 13A, and generation section 14A, and the first control parameter generation process is replaced with second control parameter generation process.
  • step S340 the second control parameter generation process will be mainly described with reference to the process of step S340, the process of step S350, and the process of step S355.
  • step S335 When the acquisition unit 11 acquires X measurement data in the process of step S335, the determination unit 13A determines the degree of deviation for each of the X measurement data (step S340). Then, the process advances to step S345.
  • step S345 if the optimization process termination condition is not satisfied (step S345: No), the generation unit 14A performs the optimization process to reduce at least the largest deviation degree among the X deviation degrees. Execute (step S350). Preferably, the control parameter optimization process is performed so that all of the X deviation degrees are equal to or less than the target value. Then, the generation unit 14A generates update control parameters that are optimized to reduce at least the largest degree of deviation among the X deviation degrees (step S355). Then, the process advances to step S345.
  • the search for appropriate control parameters is not performed suddenly for all N (for example, 80) operations performed by the production device 20.
  • N for example, 80
  • a search for appropriate control parameters is performed for a certain number (for example, one) of the N motions, and while gradually increasing the number of target motions, the previous search is performed.
  • a search for appropriate control parameters is performed based on the results, and finally, the search for appropriate control parameters is performed for all N operations to generate appropriate control parameters.
  • control parameter generation device 10A having the above configuration, similarly to the control parameter generation device 10, the appropriate control parameters can be determined by suddenly searching for appropriate control parameters for all N operations performed by the production device 20. It is possible to generate control parameters more efficiently and reliably than by generating .
  • control parameter generation device 10A having the above configuration, like the control parameter generation device 10, appropriate control parameters can be efficiently generated.
  • the control parameter generation system according to the third embodiment has the same hardware configuration as the control parameter generation system according to the first embodiment, but the executed software is partially changed.
  • control parameter generation system In the control parameter generation system according to the third embodiment, some processes are changed from the first control parameter generation process, instead of the first control parameter generation process and the representative motion designation process according to the first embodiment.
  • the third control parameter generation process is executed.
  • the third control parameter generation process is a process for generating control parameters used in the production apparatus 20, similar to the first control parameter generation process.
  • FIG. 18 is a flowchart of the third control parameter generation process.
  • step S405 to step S465 is the process from step S5 to step S65 in the first control parameter generation process, respectively. , is the same process as the third control parameter generation process.
  • step S525 to step S545 the process from step S570 to step S580.
  • step S520 the production device 20 performs Y operations (step S525).
  • Y is an integer greater than or equal to X+1 and less than or equal to N.
  • Step S530 When the production device 20 performs Y operations, the sensor 30 outputs Y measurement data corresponding to each of the Y operations to the control parameter generation device 10. (Step S530).
  • the acquisition unit 11 acquires Y measurement data corresponding to each of the Y operations from the sensor 30 (step S535).
  • the determination unit 13 determines the settling time for each of the Y measurement data (step S540).
  • the determination unit 13 After determining the settling time for each of the Y measurement data, the determination unit 13 selects X representative motions from the Y motions based on a predetermined algorithm (step S545).
  • FIG. 19 is a schematic diagram showing an example of how the determination unit 13 selects X representative motions from Y motions.
  • the example shown in FIG. 19 is an example where Y is 40 and X is 2.
  • the determining unit 13 determines, for example, the Y determined settling times for the Y motion settling times determined in the process of step S540 (see (a) in FIG. 19).
  • the motions may be sorted in descending order of settling time (see (b) in FIG. 19), and X motions located in a predetermined order may be selected as representative motions (see (c) in FIG. 19).
  • step S545 ends, the third control parameter generation process proceeds to the process in step S445.
  • step S445 if the optimization process end condition is satisfied (step S445: Yes), the control parameter generation device 10 assigns an integer between X+1 and N to the integer type variable X (step S570). . Then, the control parameter generation device 10 checks whether the value of the integer type variable X is equal to N (step S575).
  • step S575 if the value of the integer type variable X is not equal to N (step S575: No), that is, if the value of the integer type variable X is smaller than N, the third control parameter generation process , the process returns to step S525.
  • step S575 if the value of the integer type variable
  • FIG. 20 is a flowchart of parameter update processing using all operations.
  • the production apparatus 20 performs N operations under the control of the control unit 18 (step S581).
  • Step S582 When the production device 20 performs N operations, the sensor 30 outputs N measurement data corresponding to each of the N operations to the control parameter generation device 10. (Step S582).
  • the acquisition unit 11 acquires each of the N measurement data corresponding to each of the N operations from the sensor 30 (step S583).
  • the determination unit 13 determines the settling time for each of the N measurement data (step S584).
  • the generating unit 14 examines whether the optimization processing termination condition is satisfied (step S585).
  • step S585 if the optimization process termination condition is not satisfied (step S585: No), the generation unit 14 performs the optimization process to shorten at least the longest settling time among the N settling times. Execute (step S586). Then, the generation unit 14 generates update control parameters optimized to shorten at least the longest settling time among the N settling times through optimization processing (step S587).
  • the output unit 12 outputs the generated update control parameters to the production device 20 in order to store them in the memory 21 (step S588).
  • the memory 21 acquires the output control parameters and updates the stored control parameters with the acquired control parameters (step S589).
  • step S589 the parameter update process by all operations proceeds to the process of step S581 again.
  • step S585 if the optimization process end condition is satisfied (step S585: Yes), the parameter update process by all operations ends.
  • step S580 that is, the parameter generation process for all operations is completed, the third control parameter generation process ends.
  • the determining unit 13 sorts the determined Y settling times in descending order of settling times, and selects the X motions located in a predetermined order as representative motions.
  • the determination unit 13 does not necessarily need to be limited to the example in which X motions are selected as representative motions in this manner.
  • the determining unit 13 groups Y motions into X motion groups consisting of mutually similar motions, and determines the most characteristic settling time (for example, the longest settling time) in each motion group.
  • the following actions may be selected as the X representative actions.
  • the production device 20 suddenly performs N operations (for example, 80 operations). Instead of searching for appropriate control parameters for all operations, first search for appropriate control parameters for a certain number (for example, 1) of the N operations, and gradually While increasing the number of target motions, search for appropriate control parameters based on the previous search results.Finally, search for appropriate control parameters for all N motions and find the appropriate control parameters. Generate control parameters.
  • N operations for example, 80 operations.
  • control parameter generation device 10 according to the third embodiment that performs the above operations, similarly to the control parameter generation device 10 according to the first embodiment, all N operations performed by the production device 20 are suddenly targeted. It is possible to generate control parameters more efficiently and reliably than by searching for appropriate control parameters.
  • control parameter generation device 10 according to the third embodiment that performs the above operations, like the control parameter generation device 10, appropriate control parameters can be efficiently generated.
  • Embodiment 4 the parameter update process using all N operations was carried out at the final stage of the multi-stage control parameter optimization process as an evaluation operation for comprehensively evaluating the operation of the production equipment 20. Instead of being carried out in stages or in addition to being carried out in the final stage, it may be carried out at least once in the middle of a plurality of stages.
  • the evaluation operation is performed during at least one of a period during which a representative operation of each stage is performed and a transition period from one stage to the next stage.
  • the evaluation motion is not limited to all motions, but may be a differential motion between all motions and the most recent representative motion of the evaluation motion.
  • the differential motion is the motion remaining after excluding the motion included in the most recent representative motion from all N motions.
  • the control unit 18 causes the production apparatus 2 to execute only the differential operation.
  • the evaluation motion is not limited to all motions, but may be a prescribed motion predefined from among all motions.
  • a plurality of predetermined operations are determined as the prescribed operations in descending order of their influence on the operational performance of the production apparatus 20.
  • the control unit 18 causes the production apparatus 2 to execute only the specified operation.
  • the control unit 18 determines whether the evaluation result of the comprehensive evaluation satisfies a predetermined optimization termination condition, and if the evaluation result satisfies the optimization termination condition, terminates the control parameter optimization process.
  • a target value of the evaluation value related to the evaluation operation may be set, or an upper limit number of times of the total number of repetitions of the optimization process for all stages up to the present time may be set.
  • an upper limit time may be set for the execution time of the optimization processing for all stages up to the present time. For example, when the target value of the evaluation value is set as the optimization termination condition, the control unit 18 determines that the optimization termination condition is not satisfied if the evaluation value of the most recent evaluation operation exceeds the target value.
  • the optimization process is terminated even before the representative motion reaches the final stage, thereby reducing the time required for the optimization process. becomes possible.
  • selection unit 19 selects the X representative motions at each stage. Note that the selection method described below is applicable not only to Embodiment 5 in which the number of representative motions is fixed at all stages, but also to Embodiments 1 to 4 in which the number of representative motions is changed at each stage.
  • the selection unit 19 randomly selects X representative motions from among all N motions.
  • the selection unit 19 selects X representative motions according to a preset selection rule.
  • a selection rule for example, a rule may be set such that simpler actions are selected first and more complex actions are selected later. In other words, a rule may be set such that the content of the representative motion becomes more complex as the stages of the control parameter optimization process progress.
  • the selection unit 19 randomly arranges all N actions and selects X actions as representative actions in order from the beginning of the arrangement. When the selection position reaches the end of the array, the selection unit 19 returns to the beginning of the same array and repeats the selection.
  • the selection unit 19 randomly arranges all N actions, and selects X actions as representative actions in order from the beginning of the arrangement. When the selection position reaches the end of the array, the selection unit 19 randomly arranges all the N actions again and selects them in order from the beginning.
  • the selection unit 19 classifies all N motions into X groups, and randomly selects one representative motion from each group.
  • the selection unit 19 classifies the N total motions into X groups consisting of mutually similar motions based on the degree of similarity of the waveform of the measurement data or the evaluation value, etc. A plurality of motions are randomly arranged, and one motion in each group is selected as a representative motion in order from the beginning of the array.
  • the selection unit 19 classifies all N actions into X groups based on the similarity, and selects an evaluation value (for example, the latest evaluation value) from among the multiple actions belonging to each group.
  • an evaluation value for example, the latest evaluation value
  • the motion with the largest past average of evaluation values is specified as the motion requiring improvement, and the X motions requiring improvement identified for the X groups are selected as representative motions in the next control parameter optimization process.
  • the past average value may be the average value of evaluation values for the entire period, or may be the average value of a predetermined number of recent evaluation values.
  • the selection unit 19 classifies all N actions into X groups based on the correlation similarity representing the change tendency of a plurality of evaluation values, and selects from among the plurality of actions belonging to each group.
  • the operation with the largest evaluation value (for example, the latest evaluation value) or the past average value of the evaluation value is specified as the operation requiring improvement, and the X operations requiring improvement identified for the X groups are used for the next control parameter optimization process. Selected as a representative motion in.
  • the past average value may be the average value of evaluation values for the entire period, or may be the average value of a predetermined number of recent evaluation values.
  • the selection unit 19 may perform the group classification in the fifth to eighth examples multiple times.
  • the selection unit 19 may perform group classification again each time an evaluation operation (step S71) described below is performed, may perform group classification again at regular time intervals, or may perform group classification again at regular time intervals.
  • Group classification may be performed again each time the evaluation result of the action or evaluation action improves by a certain threshold or more.
  • the selection unit 19 randomly selects X representative motions from among all N motions, and from next time onwards, selects X representative motions at random from among the unselected motions excluding the selected motions. Select X representative motions. When the number of unselected motions becomes less than X, X representative motions are randomly selected again from the N total motions.
  • the selection unit 19 randomly selects X representative motions from among all N motions, and from next time onwards, selects the X representative motions that have the worst evaluation value among the current X representative motions.
  • One motion and X-1 representative motions are randomly selected from among the unselected motions excluding the selected motions.
  • X representative motions are randomly selected again from the N total motions.
  • the X representative motions may be executed only once, or the X representative motions may be executed multiple times as one set until the optimization process termination condition is met. You can also execute a set.
  • FIG. 21 is a flowchart of the first control parameter generation process. As shown in FIG. 21, an evaluation operation is performed after each step of the multi-step control parameter optimization process (step S71), and if the evaluation result satisfies the optimization end condition (step S72: Yes), the optimization is performed. When the process is finished and the evaluation result does not satisfy the optimization end condition (step S72: No), the next X representative movements are selected (step S24) and the next stage of control parameter optimization process is started. May be executed.
  • the optimization algorithm 140 is based on the evolutionary strategy algorithm (CMA-ES) and controls update candidates in the next stage of control parameter optimization processing based on a plurality of evaluation values calculated in the current stage of control parameter optimization processing.
  • An algorithm is used to set the parameter search range and to change the evaluation criteria for control parameter optimization processing between the current stage and the next stage. That is, by using the optimization algorithm 140, the generation unit 14 executes the first optimization process of the information (control parameters in this example) using the first evaluation criterion, and the plurality of information calculated in the first optimization process.
  • An information search range is set based on the evaluation value of , and a second optimization process for information is performed on the set search range using a second evaluation criterion different from the first evaluation criterion.
  • changing the evaluation criteria includes changing the representative motion as in the first and fifth embodiments, for example.
  • changing the representative motion includes, for example, changing the number of motions included in the representative motion at each of a plurality of stages as in the first embodiment.
  • changing the number of operations includes increasing the number of operations as the stage progresses, for example as in the first embodiment.
  • changing the representative motion includes fixing the number of motions included in the representative motion at each of a plurality of stages and changing the contents of the motions, as in the fifth embodiment.
  • changing the content of the action includes complicating the content of the action as the stages progress, as in the fifth embodiment.
  • changing the evaluation criteria includes changing the evaluation index at each of multiple stages. For example, if settling time is used as an evaluation index at the current stage, the degree of deviation (deviation time or integrated value of positional deviation amount) will be used as an evaluation index at the next stage. Other evaluation indicators other than settling time and degree of deviation may be used. Alternatively, a weighted sum of the evaluation indexes for both the settling time and the degree of deviation may be used, and the weight value by which each evaluation index is multiplied may be changed in each of the plurality of stages.
  • the generation unit 14 dynamically changes the evaluation index or weight value to be used, so that it can cope with the case where the evaluation index or weight value is unknown. Note that not only the weighted sum but also any evaluation calculation (for example, logarithmic sum) using a plurality of evaluation values of a plurality of evaluation indicators can be used.
  • the configuration may be such that the user can select a desired evaluation calculation from among a plurality of evaluation calculations stored in advance in the storage unit 42, or the generation unit 14 dynamically generates the evaluation calculation at each stage of the optimization process. The configuration may be changed.
  • the generation unit 14 repeatedly executes information optimization processing while probabilistically changing the evaluation index or weight value to be used, and evaluates the evaluation index or weight value used and the final evaluation index to be improved.
  • a database accumulating the correspondence with values may be stored in the storage unit 42 or another storage unit. By increasing the probability that an evaluation index or weight value that has obtained a good evaluation value is more likely to be selected again, it is possible to accelerate the progress of optimization.
  • the generation unit 14 may change the evaluation index or weight value to be used at each stage of the multi-stage optimization process, or at a frequency of once every several stages. . Further, the generation unit 14 may randomly change the evaluation index or weight value to be used at each stage, use the same evaluation index or weight value at multiple consecutive stages, or use the same evaluation index or weight value at each stage. Weight values may be used in multiple non-consecutive stages
  • the effective setting of the evaluation index or weight value to be used changes depending on each stage of the multi-stage optimization process, so by dynamically changing the evaluation index or weight value as described above, optimization can be improved. It becomes possible to accelerate the progress.
  • the generation unit 14 may change the evaluation indicators or weight values of the plurality of evaluation indicators alternately, randomly, or according to a predetermined rule. good.
  • the generation unit 14 may increase the frequency of using the evaluation indicator.
  • the generation unit 14 may change the evaluation index by switching the sensor used to measure the measurement target during execution of the optimization process.
  • the generation unit 14 first performs rough optimization by using a first sensor that has low measurement accuracy but is high in noise resistance and can perform measurements in a short time, and then performs rough optimization with high measurement accuracy but Fine optimization may be achieved by using a second sensor that takes a long time to measure due to its low noise immunity and the need for multiple measurements.
  • the generation unit 14 may change the evaluation index by switching the content of the preprocessing to be applied during execution of the optimization process. For example, time domain measurement data obtained from a measured waveform and measurement data converted into a frequency domain by frequency analysis may be used while switching.
  • the generation unit 14 may change the parameters to be adjusted during the execution of the optimization process.
  • FIG. 22 is a flowchart showing the flow of processing executed by the information processing section 41.
  • step S100 the generation unit 14 sets initial values of control parameters, similar to steps S5 to S20 in FIG.
  • step S101 the selection unit 19 selects a representative motion to be executed in the first stage from among all N motions.
  • step S102 the control unit 18 causes the production apparatus 20 to execute the representative operation selected by the selection unit 19, similar to step S25 in FIG.
  • step S103 similarly to steps S30 to S35 in FIG. 7, the acquisition unit 11 acquires measurement data regarding the operation of the production apparatus 20, which is measured by the sensor 30 during execution of the representative operation.
  • step S104 the determination unit 13 calculates the evaluation value of the evaluation index based on the measurement data acquired by the acquisition unit 11, similar to step S40 in FIG.
  • step S105 the generation unit 14 determines whether the optimization processing termination condition is satisfied.
  • step S106 the generation unit 14 uses the evaluation value calculated by the determination unit 13, as in steps S50 to S65 of FIG. The control parameters are updated based on this, and the processing from step S102 onwards is repeated.
  • step S107 the control unit 18 causes the production apparatus 20 to perform the evaluation operation, similar to step S71 in FIG. 21.
  • step S108 the generation unit 14 determines whether the evaluation result satisfies the optimization termination condition, similar to step S72 in FIG.
  • step S108: Yes the control parameter optimization process is ended.
  • step S109 the generation unit 14 uses the optimization algorithm 140 to calculate the plurality of values calculated in the control parameter optimization process at the current stage. Based on the evaluation value, a search range for control parameters as update candidates in the next stage of control parameter optimization processing is set.
  • step S110 the generation unit 14 changes the evaluation criterion (the number of representative motions in the example of FIG. 7), for example, similar to step S75 of FIG.
  • the control parameter optimization processing is executed using the search range set in step S109 and the evaluation criteria changed in step S110.
  • the image generation unit 16 generates an image similar to that shown in FIG. 9 (that is, an image showing the optimization process status), and the display unit 17 May be displayed.
  • the total number of evaluation criteria to be applied may be displayed.
  • the details of the evaluation criteria applied at each stage may be displayed.
  • the maximum optimization time the maximum execution time of the optimization process using the evaluation criteria applied at each stage may be displayed.
  • a target performance for example, a target evaluation value
  • the best evaluation value of the optimization process using the evaluation criteria applied at each stage may be displayed.
  • FIG. 23 is a diagram schematically showing a method of setting the search range by the generation unit 14.
  • the horizontal axis of the coordinates indicates the value of the control parameter P1
  • the vertical axis indicates the value of the control parameter P2.
  • control parameter optimization processing is performed using the evaluation standard V1, and a plurality of (six in this example) evaluation values are plotted on the coordinates. Each plotted evaluation value is the worst value among the X evaluation values obtained by the X representative operations.
  • the generation unit 14 identifies top evaluation values from among the plurality of plotted evaluation values. In FIG. 23, the top evaluation values are plotted as white circles, and the other evaluation values are plotted as black circles.
  • the generation unit 14 uses the CMA-ES optimization algorithm 140 to calculate the center coordinates and covariance matrix of the top evaluation values, thereby setting the next stage search range W1. If the top evaluation values are scattered over a wide area, a wide search range W1 is set, and if the top evaluation values are concentrated in a narrow area, a narrow search range W1 is set. Become.
  • a control parameter optimization process is performed for the search range W1 using an evaluation criterion V2 different from the evaluation criterion V1, and a plurality of (six in this example) evaluation values are plotted on the coordinates.
  • the generation unit 14 identifies the top evaluation values from among the plotted evaluation values, and uses the CMA-ES optimization algorithm 140 to determine the center coordinates of the top evaluation values. By calculating the and covariance matrix, the search range W2 of the next stage is set.
  • a control parameter optimization process is executed for the search range W2 using an evaluation criterion V3 different from the evaluation criterion V2, and a plurality of (six in this example) evaluation values are plotted on the coordinates.
  • the generation unit 14 identifies the top evaluation values from among the plotted evaluation values, and uses the CMA-ES optimization algorithm 140 to determine the center coordinates of the top evaluation values.
  • the next stage search range W3 is set. Thereafter, the same process as described above is repeated for the fourth and subsequent stages, and the values of the control parameters P1 and P2 that finally give the best evaluation value are adopted.
  • control parameter optimization process is executed multiple times while changing the evaluation criteria for the control parameter optimization process. In this way, by repeatedly executing the control parameter optimization process while changing the evaluation criteria, it becomes possible to efficiently generate appropriate control parameters.
  • Embodiment 6 has been described using a simple implementation example of CMA-ES, which is an example of an evolution strategy, a more complicated implementation or other evolution strategy method may be used.
  • each operation performed by the production device 20 is an operation in which the production device 20 moves the driven object 24 to a target position.
  • FIG. 24 is a simplified diagram showing a part of the operating condition information 400 in which the execution conditions for each operation executed by the production apparatus 20 are described.
  • Operating condition information 400 is stored in storage section 42 .
  • the operating condition information 400 includes IDs as identification information regarding each operation performed by the production device 20. Further, the operating condition information 400 includes user setting items regarding the moving speed, acceleration/deceleration time (acceleration time and deceleration time), number of repetitions, waiting time, and stop position corresponding to each ID. Note that the operating conditions are not limited to the example shown in FIG. 24, and may include at least one item of ID, movement amount, movement speed, acceleration time, and deceleration time. Further, other items not shown in FIG. 24 may be further included.
  • the user can arbitrarily set operating conditions for each operation by operating the input unit 44 and inputting condition setting information. Further, by operating the input unit 44 and inputting condition setting information, the user can arbitrarily set the maximum time for which the control parameter optimization process is continued and the maximum number of times the control parameters are updated. Further, the operating condition information 400 includes default setting items regarding the moving speed and acceleration/deceleration time corresponding to each ID. If the user does not input condition setting information from the input unit 44, respective default setting values are used for the moving speed and acceleration/deceleration time. Note that if different operating conditions are set as default for each device to be adjusted, the user can input device selection information for selecting the device to be adjusted from the input unit 44, and the operating conditions can be set according to the selected device. A configuration may be adopted in which default setting values are used.
  • FIG. 25 is a flowchart showing the flow of processing executed by the information processing unit 41 in relation to notification of status information to the user.
  • step S200 the acquisition unit 11 acquires the operating condition information 400 from the storage unit 42.
  • step S201 the image generation unit 16 acquires status information based on the operating condition information 400 acquired by the acquisition unit 11 and the progress information of the control parameter optimization process.
  • the image generation unit 16 acquires progress information from the control unit 18.
  • the control unit 18 creates a database of operation history information including execution times and operating conditions regarding each operation executed by the production apparatus 20 in the control parameter optimization process, and records the database in the storage unit 42 .
  • the output unit 12 can display the operation history information read from the storage unit 42 on the display unit 17 or output it to the outside.
  • the operating condition information 400 includes information regarding the maximum time for continuing the control parameter optimization process set by the condition setting information and the maximum number of times the control parameters are updated.
  • the progress information includes information indicating the stage currently being executed among the multiple stages of control parameter optimization processing, and information indicating the motion currently being adjusted among the plurality of representative motions.
  • the progress information includes information regarding the elapsed time (elapsed time since the start of adjustment) and the number of control parameter updates (parameter update number) from the start of the first stage control parameter optimization process to the present. ing.
  • the image generation unit 16 calculates the remaining time until the maximum time (adjustment remaining time) by subtracting the elapsed time since the start of adjustment from the maximum time, and subtracts the number of parameter updates up to the present from the maximum number of times.
  • the remaining number of times (remaining number of updates) up to the maximum number of times is calculated by .
  • step S202 the image generation unit 16 generates a status notification image for notifying the user of status information.
  • FIG. 26 is a diagram showing an example of a status notification image.
  • the status notification image includes an item 300 indicating elapsed time (time elapsed after the start of adjustment) and remaining time (remaining adjustment time), and an item 301 indicating the number of updates (number of parameter updates) and remaining number of times (remaining number of updates). It includes an item 302 that indicates the current number of motions to be adjusted (that is, the current number of representative motions), and an item 303 that indicates the operating conditions regarding the motion that is currently being adjusted among the representative motions.
  • the status notification image is not limited to the example shown in FIG. 26, and a part of the information shown in FIG. 26 may be omitted, or other information not shown in FIG. 26 may be further included.
  • the elapsed time after the start of adjustment, the remaining adjustment time, the number of parameter updates, and the remaining number of updates may be displayed using a progress bar so that the user can easily understand the ratios intuitively.
  • step S203 the image generation unit 16 inputs the image data of the generated status notification image to the display unit 17.
  • the display unit 17 displays the status notification image shown in FIG. 26 based on the input image data.
  • the mode of notifying the user of the situation information is not limited to displaying an image, but may also be an audio output from a speaker.
  • the user by outputting the status information for notification to the user, the user can easily check the progress status or operating conditions of the control parameter optimization process through the notification. It becomes possible to improve convenience.
  • control parameter generation devices 10 and 10A were described as being realized by one computer device. However, the control parameter generation devices 10 and 10A do not necessarily need to be implemented by one computer device as long as they can implement similar functions.
  • the control parameter generation devices 10 and 10A may be realized by, for example, a plurality of computer devices that can communicate with each other.
  • the general or specific aspects of the present disclosure may be realized in a system, device, method, integrated circuit, program, or non-transitory recording medium such as a computer-readable CD-ROM. Further, the present invention may be realized by any combination of systems, devices, methods, integrated circuits, programs, and non-transitory recording media. For example, the present disclosure may be implemented as a program for causing a computer device to execute the processing performed by the control parameter generation device.
  • the present disclosure is widely applicable to systems that generate control parameters.

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

情報処理方法、情報最適化方法、情報処理装置、及びプログラム
 本開示は、情報処理方法、情報最適化方法、情報処理装置、及びプログラムに関する。
 従来、制御パラメータを生成する制御パラメータ生成方法が知られている(例えば、特許文献1参照)。
 従来、適正な制御パラメータを効率的に生成することが望まれている。
国際公開第2018/151215号
 本開示は、適正な制御パラメータを効率的に生成することができる情報処理方法、情報最適化方法、情報処理装置、及びプログラムを提供することを目的とする。
 本開示の一態様に係る情報処理方法は、複数の制御パラメータに基づいて複数の動作を実行する装置における前記制御パラメータを最適化するための情報処理方法であって、情報処理装置が、制御パラメータ最適化処理において、前記装置が実行可能な全動作のうち少なくとも一つの動作を含む代表動作を選択し、選択した当該代表動作を前記装置に実行させ、当該代表動作の実行において測定された前記装置の動作に関する測定データを取得し、取得した当該測定データに基づいて所定の評価指標の評価値を算出し、算出した当該評価値に基づいて前記制御パラメータを更新し、前記制御パラメータ最適化処理の評価基準を変更しつつ前記制御パラメータ最適化処理を複数回実行する。
 本開示の一態様に係る情報最適化方法は、情報処理装置が、第1評価基準を用いて情報の第1最適化処理を実行し、前記第1最適化処理において算出した複数の評価値に基づいて前記情報の探索範囲を設定し、設定した前記探索範囲に関して、第2評価基準を用いて前記情報の第2最適化処理を実行する。
 本開示の一態様に係る情報処理装置は、複数の制御パラメータに基づいて複数の動作を実行する装置における前記制御パラメータを最適化するための情報処理装置であって、選択部、制御部、取得部、算出部、及び更新部を備え、制御パラメータ最適化処理において、前記選択部は、前記装置が実行可能な全動作のうち少なくとも一つの動作を含む代表動作を選択し、前記制御部は、前記選択部が選択した当該代表動作を前記装置に実行させ、前記取得部は、当該代表動作の実行において測定された前記装置の動作に関する測定データを取得し、前記算出部は、前記取得部が取得した当該測定データに基づいて所定の評価指標の評価値を算出し、前記更新部は、前記算出部が算出した当該評価値に基づいて前記制御パラメータを更新し、前記制御パラメータ最適化処理の評価基準を変更しつつ前記制御パラメータ最適化処理を複数回実行する。
 本開示の一態様に係るプログラムは、複数の制御パラメータに基づいて複数の動作を実行する装置における前記制御パラメータを最適化するための情報処理装置を、選択手段、制御手段、取得手段、算出手段、及び更新手段として機能させるためのプログラムであって、制御パラメータ最適化処理において、前記選択手段は、前記装置が実行可能な全動作のうち少なくとも一つの動作を含む代表動作を選択し、前記制御手段は、前記選択手段が選択した当該代表動作を前記装置に実行させ、前記取得手段は、当該代表動作の実行において測定された前記装置の動作に関する測定データを取得し、前記算出手段は、前記取得手段が取得した当該測定データに基づいて所定の評価指標の評価値を算出し、前記更新手段は、前記算出手段が算出した当該評価値に基づいて前記制御パラメータを更新し、前記制御パラメータ最適化処理の評価基準を変更しつつ前記制御パラメータ最適化処理を複数回実行する。
 本開示によれば、適正な制御パラメータを効率的に生成することができる。
図1は、実施の形態1に係る制御パラメータ生成システムの概要を示す模式図である。 図2は、実施の形態1に係る制御パラメータ生成システムの構成を示すブロック図である。 図3は、実施の形態1に係る生産装置の一例を示す斜視図である。 図4は、実施の形態1に係るメモリが記憶する制御パラメータの一例を示すデータ構成図である。 図5は、目標位置に対する駆動対象物の位置偏差の推移の一例を示す模式図である。 図6は、実施の形態1に係るセンサが出力する測定データの一例を示すデータ構成図である。 図7は、第1の制御パラメータ生成処理のフローチャートである。 図8は、第1の制御パラメータ生成処理のシーケンス図である。 図9は、実施の形態1に係る表示部が表示する画像の一例を示す模式図である。 図10は、条件取得処理のフローチャートである。 図11は、実施の形態1に係る表示部が表示する画像の一例を示す模式図である。 図12は、代表動作指定処理のフローチャートである。 図13は、実施の形態1に係る表示部が表示する画像の一例を示す模式図である。 図14は、発明者らが行った実験の実験結果を示す模式図である。 図15は、実施の形態2に係る制御パラメータ生成システムの構成を示すブロック図である。 図16Aは、目標位置に対する駆動対象物の位置偏差の推移の一例を示す模式図である。 図16Bは、目標位置に対する駆動対象物の位置偏差の推移の一例を示す模式図である。 図17は、第2の制御パラメータ生成処理のフローチャートである。 図18は、第3の制御パラメータ生成処理のフローチャートである。 図19は、実施の形態3に係る判断部がY個の動作からX個の代表動作を選択する様子の一例を示す模式図である。 図20は、全動作によるパラメータ更新処理のフローチャートである。 図21は、第1の制御パラメータ生成処理のフローチャートである。 図22は、情報処理部が実行する処理の流れを示すフローチャートである。 図23は、生成部による探索範囲の設定手法を模式的に示す図である。 図24は、生産装置が実行する各動作の実行条件が記述された動作条件情報の一部を簡略化して示す図である。 図25は、ユーザへの状況情報の通知に関連して情報処理部が実行する処理の流れを示すフローチャートである。 図26は、状況通知画像の一例を示す図である。
 (本開示の一態様を得るに至った経緯)
 駆動対象物を駆動する駆動源(例えば、サーボモータ)を備える生産装置(例えば、実装装置)における、駆動源の適正な制御パラメータを生成する方法として、近年、機械学習モデル等を用いて適正な制御パラメータを探索することで、適正な制御パラメータを生成する手法が提案されている(例えば、特許文献1参照)。
 一般に、生産装置に用いる駆動源の制御パラメータは、その数が50個以上におよぶことがある。また、その調整階調が100階調以上におよぶことがある。
 例えば、生産装置が80個の動作を行い、駆動源の制御パラメータの数が50個であり、制御パラメータの調整階調が100階調である場合には、これらの組み合わせの数は10050×80通りになる。
 発明者らは、このような莫大な数の組み合わせに対して制御パラメータを生成する場合において、機械学習モデル等を用いて適正な制御パラメータを探索する手法を用いるときには、探索範囲が広すぎることに起因して、適正な制御パラメータを探索するまでに莫大な時間を要してしまう現象、または、いくら時間をかけても、適正な制御パラメータにたどり着けない現象が起こることがあるという課題を見出した。
 そこで、発明者らは、莫大な数の組み合わせに対して制御パラメータを生成する場合であっても、適正な制御パラメータを効率的に生成することができるパラメータ生成方法を実現すべく、鋭意、実験、検討を繰り返した。
 上記実験、検討を通じて、発明者らは、最初から莫大な組み合わせの全てを対象として適正な制御パラメータを探索せずに、例えば、生産装置が行う動作が80個である場合には、まず最初のステップとして、これら80個の動作のうちのいくつかの動作、例えば1個の動作についての組み合わせのみを対象として、すなわち、莫大な組み合わせのうちの、一部の組み合わせのみを対象として適正な制御パラメータを探索し、次のステップとして、生産装置が行う動作の数を増やして、例えば、2個の動作についての組み合わせを対象として、最初のステップでの探索結果を足掛かりにして適正な制御パラメータを探索し、さらにその次のステップとして、さらに生産装置が行う動作の数を増やして、例えば、4個の動作についての組み合わせを対象として、前回のステップでの探索結果を足掛かりにして適正な制御パラメータを探索し、というステップを繰り返し行い、最終的に、80個の動作全てについての組み合わせを対象として適正な制御パラメータを探索することで、80個の動作全てについての組み合わせを対象として適正な制御パラメータをより効率的でより確実に生成することができるという知見を得た。
 そして、発明者らは、この知見を基に、さらに、実験、検討を重ね、下記本開示に係る制御パラメータ生成方法等に想到した。
 本開示の第1態様に係る情報処理方法は、複数の制御パラメータに基づいて複数の動作を実行する装置における前記制御パラメータを最適化するための情報処理方法であって、情報処理装置が、制御パラメータ最適化処理において、前記装置が実行可能な全動作のうち少なくとも一つの動作を含む代表動作を選択し、選択した当該代表動作を前記装置に実行させ、当該代表動作の実行において測定された前記装置の動作に関する測定データを取得し、取得した当該測定データに基づいて所定の評価指標の評価値を算出し、算出した当該評価値に基づいて前記制御パラメータを更新し、前記制御パラメータ最適化処理の評価基準を変更しつつ前記制御パラメータ最適化処理を複数回実行する。
 第1態様によれば、制御パラメータ最適化処理の評価基準を変更しつつ制御パラメータ最適化処理を複数回実行する。このように、評価基準を変更しつつ制御パラメータ最適化処理を繰り返し実行することにより、適正な制御パラメータを効率的に生成することが可能となる。
 本開示の第2態様に係る情報処理方法は、第1態様において、前記評価基準を変更することは、前記代表動作を変更することを含むと良い。
 第2態様によれば、代表動作を変更することによって評価基準を変更することが可能となる。
 本開示の第3態様に係る情報処理方法は、第2態様において、前記代表動作を変更することは、前記代表動作に含まれる動作の数を変更することを含むと良い。
 第3態様によれば、代表動作に含まれる動作の数を変更することによって評価基準を変更することが可能となる。
 本開示の第4態様に係る情報処理方法は、第3態様において、前記動作の数を変更することは、前記動作の数を増やすことを含むと良い。
 第4態様によれば、代表動作に含まれる動作の数を徐々に増やしつつ制御パラメータ最適化処理を繰り返し実行することにより、適正な制御パラメータを効率的に生成することが可能となる。
 本開示の第5態様に係る情報処理方法は、第2態様において、前記代表動作を変更することは、前記代表動作に含まれる動作の内容を変更することを含むと良い。
 第5態様によれば、代表動作に含まれる動作の内容を変更することによって評価基準を変更することが可能となる。
 本開示の第6態様に係る情報処理方法は、第5態様において、前記動作の内容を変更することは、前記動作の内容を複雑化することを含むと良い。
 第6態様によれば、代表動作に含まれる動作の内容を徐々に複雑化しつつ制御パラメータ最適化処理を繰り返し実行することにより、適正な制御パラメータを効率的に生成することが可能となる。
 本開示の第7態様に係る情報処理方法は、第2~第6態様のいずれか一つにおいて、前記代表動作の変更において、前記全動作を類似度に基づいて複数のグループに分類し、当該複数のグループの各グループに含まれる複数の動作の中から前記評価値又はその過去平均値に基づいて要改善動作を特定し、前記複数のグループに関して特定した複数の要改善動作を、次回の前記制御パラメータ最適化処理における前記代表動作として選択すると良い。
 第7態様によれば、複数のグループに関して特定した複数の要改善動作を次回の制御パラメータ最適化処理における代表動作として選択することにより、適正な制御パラメータを効率的に生成することが可能となる。
 本開示の第8態様に係る情報処理方法は、第1~第7態様のいずれか一つにおいて、前記評価基準を変更することは、前記評価指標を変更することを含むと良い。
 第8態様によれば、評価指標を変更することによって評価基準を変更することが可能となる。
 本開示の第9態様に係る情報処理方法は、第8態様において、前記複数の動作の各動作は、前記装置が対象物を目標位置に移動させる動作であり、前記評価指標は、前記対象物の位置と前記目標位置との位置偏差が許容範囲内に収束するまでの整定時間を含むと良い。
 第9態様によれば、整定時間を評価指標として用いることにより、制御パラメータを適切に評価することが可能となる。
 本開示の第10態様に係る情報処理方法は、第8態様において、前記複数の動作の各動作は、前記装置が対象物を目標位置に移動させる動作であり、前記評価指標は、前記対象物の位置と前記目標位置との位置偏差が許容範囲から逸脱する逸脱時間又は位置偏差量の積算値を含むと良い。
 第10態様によれば、逸脱時間又は位置偏差量の積算値を評価指標として用いることにより、制御パラメータを適切に評価することが可能となる。
 本開示の第11態様に係る情報処理方法は、第1~第10態様のいずれか一つにおいて、さらに、今回の前記制御パラメータ最適化処理において算出した複数の前記評価値に基づいて、次回の前記制御パラメータ最適化処理における更新候補の前記制御パラメータの探索範囲を設定すると良い。
 第11態様によれば、今回の制御パラメータ最適化処理から次回の制御パラメータ最適化処理へ制御パラメータの探索範囲の設定情報を引き継ぐことにより、次回の制御パラメータ最適化処理において適正な制御パラメータを効率的に探索することが可能となる。
 本開示の第12態様に係る情報処理方法は、第1~第11態様のいずれか一つにおいて、さらに、総合評価処理において、前記装置の動作を総合評価するための所定の評価動作を前記装置に実行させ、当該評価動作の実行において測定された前記装置の動作に関する測定データを取得し、取得した当該測定データに基づいて前記評価指標の評価値を算出し、算出した当該評価値に基づいて前記総合評価を行うと良い。
 第12態様によれば、装置の動作全体での制御パラメータの最適化の進捗具合を総合評価処理によって評価することが可能となる。
 本開示の第13態様に係る情報処理方法は、第12態様において、前記評価動作は、前記全動作であると良い。
 第13態様によれば、評価動作として全動作を装置に実行させることにより、正確な総合評価を行うことが可能となる。
 本開示の第14態様に係る情報処理方法は、第12態様において、前記評価動作は、前記全動作と当該評価動作の直近の前記代表動作との差分動作であると良い。
 第14態様によれば、評価動作として、全動作と当該評価動作の直近の代表動作との差分動作を装置に実行させることにより、総合評価の精度を維持しつつ評価動作の効率化を図ることが可能となる。
 本開示の第15態様に係る情報処理方法は、第12態様において、前記評価動作は、前記全動作の中から予め規定された規定動作であると良い。
 第15態様によれば、評価動作として、全動作の中から予め規定された規定動作を装置に実行させることによって、評価動作の効率化を図ることが可能となる。
 本開示の第16態様に係る情報処理方法は、第12~第15態様のいずれか一つにおいて、さらに、前記総合評価の前記評価結果が所定の終了条件を満たすか否かを判定し、前記評価結果が前記終了条件を満たす場合、前記制御パラメータ最適化処理を終了すると良い。
 第16態様によれば、総合評価の評価結果が所定の終了条件を満たす場合には制御パラメータ最適化処理が最終段階に至る前であっても制御パラメータ最適化処理を終了するため、処理の所要時間を短縮することが可能となる。
 本開示の第17態様に係る情報処理方法は、第1~第16態様のいずれか一つにおいて、前記複数の動作の各動作は、前記装置が対象物を目標位置に移動させる動作であり、さらに、前記制御パラメータ最適化処理が開始されてからの経過時間、前記制御パラメータ最適化処理を継続する最大時間までの残り時間、前記代表動作に含まれる前記少なくとも一つの動作のうち現在実行中の動作に関する、識別情報、移動量、移動速度、加速時間、及び減速時間の少なくとも一つを含む動作条件、前記代表動作に含まれる動作の数、前記制御パラメータの更新回数、及び、前記制御パラメータを更新する最大回数までの残り回数、の少なくとも一つに関する状況情報をユーザへの通知のために出力すると良い。
 第17態様によれば、状況情報をユーザへの通知のために出力することにより、ユーザは、通知によって制御パラメータ最適化処理の進捗状況又は動作条件等を容易に確認できるため、ユーザの利便性を向上することが可能となる。
 本開示の第18態様に係る情報処理方法は、第17態様において、さらに、前記評価基準を変更する度に前記状況情報を更新すると良い。
 第18態様によれば、評価基準を変更する度に状況情報を更新することにより、最新の状況情報をユーザに通知することが可能となる。
 本開示の第19態様に係る情報処理方法は、第17態様において、さらに、ユーザによって入力された条件設定情報に基づいて、前記最大時間、前記動作条件、及び前記最大回数を設定すると良い。
 第19態様によれば、ユーザは、最大時間、動作条件、及び最大回数を任意に設定することが可能となる。
 本開示の第20態様に係る情報処理方法は、第17態様において、前記動作条件は前記装置ごとに予め設定されており、さらに、ユーザによって入力された装置選択情報に基づいて、選択された前記装置に応じた前記動作条件を設定すると良い。
 第20態様によれば、ユーザによって選択された装置に応じて、適切な動作条件を自動的に設定することが可能となる。
 本開示の第21態様に係る情報処理方法は、第1~第20態様のいずれか一つにおいて、さらに、前記制御パラメータ最適化処理において前記装置が実行した各動作に関して、実行時刻と動作条件とを含む動作履歴情報を記録すると良い。
 第21態様によれば、装置が実行した各動作に関して実行時刻と動作条件とを含む動作履歴情報を記録することにより、当該動作履歴情報をユーザに提供することが可能となる。
 本開示の第22態様に係る情報最適化方法は、情報処理装置が、第1評価基準を用いて情報の第1最適化処理を実行し、前記第1最適化処理において算出した複数の評価値に基づいて前記情報の探索範囲を設定し、設定した前記探索範囲に関して、第2評価基準を用いて前記情報の第2最適化処理を実行する。
 第22態様によれば、第1最適化処理から第2最適化処理へ探索範囲の設定情報を引き継ぐことにより、第2最適化処理を効率的に実行することが可能となる。
 本開示の第23態様に係る情報処理装置は、複数の制御パラメータに基づいて複数の動作を実行する装置における前記制御パラメータを最適化するための情報処理装置であって、選択部、制御部、取得部、算出部、及び更新部を備え、制御パラメータ最適化処理において、前記選択部は、前記装置が実行可能な全動作のうち少なくとも一つの動作を含む代表動作を選択し、前記制御部は、前記選択部が選択した当該代表動作を前記装置に実行させ、前記取得部は、当該代表動作の実行において測定された前記装置の動作に関する測定データを取得し、前記算出部は、前記取得部が取得した当該測定データに基づいて所定の評価指標の評価値を算出し、前記更新部は、前記算出部が算出した当該評価値に基づいて前記制御パラメータを更新し、前記制御パラメータ最適化処理の評価基準を変更しつつ前記制御パラメータ最適化処理を複数回実行する。
 第23態様によれば、制御パラメータ最適化処理の評価基準を変更しつつ制御パラメータ最適化処理を複数回実行する。このように、評価基準を変更しつつ制御パラメータ最適化処理を繰り返し実行することにより、適正な制御パラメータを効率的に生成することが可能となる。
 本開示の第24態様に係るプログラムは、複数の制御パラメータに基づいて複数の動作を実行する装置における前記制御パラメータを最適化するための情報処理装置を、選択手段、制御手段、取得手段、算出手段、及び更新手段として機能させるためのプログラムであって、制御パラメータ最適化処理において、前記選択手段は、前記装置が実行可能な全動作のうち少なくとも一つの動作を含む代表動作を選択し、前記制御手段は、前記選択手段が選択した当該代表動作を前記装置に実行させ、前記取得手段は、当該代表動作の実行において測定された前記装置の動作に関する測定データを取得し、前記算出手段は、前記取得手段が取得した当該測定データに基づいて所定の評価指標の評価値を算出し、前記更新手段は、前記算出手段が算出した当該評価値に基づいて前記制御パラメータを更新し、前記制御パラメータ最適化処理の評価基準を変更しつつ前記制御パラメータ最適化処理を複数回実行する。
 第24態様によれば、制御パラメータ最適化処理の評価基準を変更しつつ制御パラメータ最適化処理を複数回実行する。このように、評価基準を変更しつつ制御パラメータ最適化処理を繰り返し実行することにより、適正な制御パラメータを効率的に生成することが可能となる。
 以下、本開示の一態様に係る制御パラメータ生成システムの具体例について、図面を参照しながら説明する。ここで示す実施の形態は、いずれも本開示の一具体例を示すものである。従って、以下の実施の形態で示される数値、形状、構成要素、構成要素の配置および接続形態、ならびに、ステップ(工程)およびステップの順序等は、一例であって本開示を限定する趣旨ではない。また、各図は、模式図であり、必ずしも厳密に図示されたものではない。各図において、実質的に同一の構成に対しては同一の符号を付しており、重複する説明は省略または簡略化する。
 (実施の形態1)
 以下、実施の形態1に係る制御パラメータ生成システムについて説明する。この制御パラメータ生成システムは、駆動対象物を駆動する駆動源を備える生産装置に用いる制御パラメータを生成するシステムである。
 <構成>
 図1は、実施の形態1に係る制御パラメータ生成システム1の概要を示す模式図である。
 図2は、制御パラメータ生成システム1の構成を示すブロック図である。
 図1に示すように、制御パラメータ生成システム1は、制御パラメータ生成装置10と、生産装置20と、センサ30とを備える。
 生産装置20は、機器を生産するために利用される装置であって、機器の実装、加工、工作、搬送等を行う。生産装置20は、例えば、工場の生産ラインに設置される。生産装置20は、具体的には、例えば、実装装置、加工装置、工作装置、搬送装置等である。
 生産装置20は、N(Nは3以上の整数)個の動作を行う。Nは、例えば、80である。
 図2に示すように、生産装置20は、メモリ21と、制御回路22と、駆動源23と、駆動対象物24とを備える。
 駆動源23は、制御回路22によりその動作を制御され、駆動対象物24を駆動する。
 駆動源23は、具体的には、例えば、サーボモータ、空気圧人工筋アームの制御に用いられる流体の方向流量制御弁、油圧アームの制御に用いられる流体の方向流量制御弁である。サーボモータは、例えば、回転式モータであってもよいし、リニアモータであってもよい。
 駆動対象物24は、駆動源23により駆動される対象物である。駆動対象物24は、例えば、駆動源23がサーボモータである場合には、加工対象部品を搬送するヘッド、ヘッドに備え付けられた、加工対象部品を吸着するためのノズル等である。また、駆動対象物24は、例えば、駆動源23が方向流量制御弁である場合には、空気圧人工筋アーム、油圧アーム等である。
 図3は、一例として、駆動源23がサーボモータであり、駆動対象物24がヘッドに備えられたノズルである構成の生産装置20の斜視図である。
 図3に示すように、生産装置20は、一例として、機台110上に載置された基板120に部品を実装する実装装置であってよい。
 生産装置20は、一例として、部品を吸着するノズル81と、ノズル81が備え付けられたヘッド80と、ヘッド80を機台110の平面視におけるX軸方向に移動させるための駆動源23として機能するサーボモータ23Aと、Y軸方向に移動させるための駆動源23として機能するサーボモータ23Bとを備える。ここで、ヘッド80は、アーム72およびサーボモータ23Bを介してサーボモータ23Aに接続される。
 再び、図1および図2に戻って、制御パラメータ生成システム1の説明を続ける。
 制御回路22は、駆動源23に対して、駆動対象物24の位置を所定の目標位置にするための指令を出力することで、駆動源23を制御する。制御回路22が駆動源23に出力する指令は、例えば、駆動源23または駆動対象物24の位置を指令する位置指令であってもよいし、例えば、駆動源23のトルクを指令するトルク指令であってもよい。
 制御回路22は、メモリ21に記憶される制御パラメータに基づいて、駆動源23を制御する。言い換えると、制御回路22は、駆動源23を制御する際に、メモリ21に記憶される制御パラメータを用いる。制御パラメータは、例えば、50個である。
 メモリ21は、制御回路22が駆動源23を制御する際に用いる制御パラメータを記憶する。メモリ21が記憶する制御パラメータは、制御パラメータ生成装置10から出力された制御パラメータである。
 メモリ21は、制御パラメータ生成装置10から制御パラメータが出力されると、出力された制御パラメータを取得し、取得した制御パラメータで、記憶する制御パラメータを更新する、すなわち、上書きして記憶する。
 図4は、メモリ21が記憶する制御パラメータの一例を示すデータ構成図である。
 図4に示すように、メモリ21が記憶する制御パラメータには、例えば、駆動対象物24の振動周波数を調整するパラメータa1、a2、駆動対象物24の高速化を調整するパラメータb1、b2、駆動対象物24の振動特性における特異点の深さを調整するパラメータc1、c2、駆動対象物24の振動振幅を調整するパラメータd1、d2等が含まれる。
 一般に、制御パラメータの中には、例えば、高速化を調整するパラメータb1、b2と、振動特性における特異点の深さを調整するパラメータc1、c2、および、振動振幅を調整するパラメータd1、d2とのように、互いにトレードオフの関係性があるパラメータが含まれる。
 再び、図1および図2に戻って、制御パラメータ生成システム1の説明を続ける。
 センサ30は、N個の動作のうちの少なくとも1個の動作を行う生産装置20における駆動対象物24の位置を時系列に沿って測定する。そして、少なくとも1個の動作それぞれに対応する、測定した位置を示す測定データを制御パラメータ生成装置10に出力する。
 図5は、生産装置20が、駆動対象物24を目標位置に駆動する際における、目標位置に対する駆動対象物24の位置偏差の推移の一例を示す模式図である。
 図5において、横軸は時刻を示し、縦軸は、目標位置に対する駆動対象物24の位置偏差を示す。
 図5に示すように、本明細書において、許容範囲とは、目標位置からの位置偏差が要求精度以内の範囲のことをいう。
 また、図5に示すように、本明細書において、目標位置に到達したと評価できる許容位置に到達した時刻(以下、「整定時刻」とも称する。)とは、駆動対象物24が許容範囲内に到達した後において再び許容範囲から逸脱しなくなった場合における、最後に許容範囲に到達した時刻のことをいう。
 また、図5に示すように、本明細書において、整定時間とは、駆動対象物24の位置を目標位置にするための指令に基づく駆動対象物24の停止開始から、駆動対象物24の位置が、目標位置に到達したと評価できる許容位置に到達するまでの時間、すなわち、停止開始時刻から整定時刻までの時間、または、駆動対象物24の位置を目標位置にするための指令に基づく駆動対象物24の移動開始から、駆動対象物24の位置が、目標位置に到達したと評価できる許容位置に到達するまでの時間、すなわち、移動開始時刻から整定時刻までの時間のことをいう。
 図6は、センサ30が出力する測定データの一例を示すデータ構成図である。
 図6に示すように、測定データは、一例として、基準時刻後の経過時間[ms]と、目標位置からの偏差量[mm]とを一対一に対応付けたデータである。ここで、基準時刻とは、駆動対象物24の位置を目標位置にするための指令に基づく駆動対象物24の停止開始時刻、または、駆動対象物24の位置を目標位置にするための指令に基づく駆動対象物24の移動開始時刻である。
 再び、図1および図2に戻って、制御パラメータ生成システム1の説明を続ける。
 制御パラメータ生成装置10は、生産装置20に用いる制御パラメータを生成する。
 制御パラメータ生成装置10は、例えば、プロセッサと、メモリと、入出力インターフェースとを備えるコンピュータ装置において、プロセッサがメモリに記憶されるプログラムを実行することで実現される。このようなコンピュータ装置は、例えば、パーソナルコンピュータ(パソコン)である。
 図2に示すように、制御パラメータ生成装置10は、プロセッサ等の情報処理部41と、メモリ等の記憶部42と、マウスまたはキーボード等の入力部44と、液晶ディスプレイまたは有機ELディスプレイ等の表示部17と、通信モジュール等の通信部43とを備える。
 コンピュータ読み取り可能なROM等の記録媒体から読み出したプログラムをプロセッサが実行することによって実現される機能として、情報処理部41は、判断部13、選択部19、制御部18、取得部11、出力部12、操作受け付け部15、画像生成部16、及び生成部14を有する。つまり、上記プログラムは、制御パラメータ生成装置10に搭載される情報処理装置としての情報処理部41を、判断部13(判断手段)、選択部19(選択手段)、制御部18(制御手段)、取得部11(取得手段)、出力部12(出力手段)、操作受け付け部15(操作受け付け手段)、画像生成部16(画像生成手段)、及び生成部14(生成手段)として機能させるためのプログラムである。
 選択部19は、生産装置20が実行可能な全動作のうち少なくとも一つの動作を含む代表動作を選択する。
 制御部18は、選択部19が選択した代表動作又は全動作を生産装置20に実行させる。
 取得部11は、センサ30から出力された、生産装置20が行う1以上の動作それぞれに対応する測定データそれぞれを取得する。
 判断部13は、取得部11によって取得された1以上の動作それぞれについて、当該動作に対応する測定データに基づき、当該動作のために、駆動対象物24の位置を目標位置にするための指令に基づく駆動対象物24の停止開始または移動開始から、駆動対象物が目標位置に到達したと評価できる許容位置に到達するまでの時間、すなわち、整定時間を判断する。つまり、判断部13は、取得部11が取得した測定データに基づいて評価指標(本実施の形態の例では整定時間)の評価値を算出する算出部として機能する。
 生成部14は、取得部11によって取得された1以上の動作それぞれに対応する1以上の整定時間のそれぞれであって、判断部13によって判断された1以上の整定時間のそれぞれのうち、少なくとも最も長い整定時間を短くするよう最適化処理により制御パラメータを更新して更新制御パラメータを生成する。つまり、生成部14は、算出部としての判断部13が算出した評価値に基づいて制御パラメータを更新する更新部として機能する。
 すなわち、生成部14は、1以上の整定時間のそれぞれのうち、少なくとも最も長い整定時間を最適化対象となる評価値として最適化を行う。
 なお、整定時間の平均値や、L個の整定時間のそれぞれのうち最も長いP個(PはLより小さい値)の平均値を評価値としてもよい。
 図2に示すように、生成部14は、整定時間を短くするように制御パラメータを最適化する最適化アルゴリズム140を有する。そして、生成部14は、最適化アルゴリズム140を用いて、判断部13によって判断された1以上の整定時間のそれぞれのうち、少なくとも最も長い整定時間を短くする最適化処理を行う。
 最適化アルゴリズム140は、例えば、ベイズ最適化アルゴリズム、進化戦略アルゴリズム(CMA-ES)、遺伝的アルゴリズム(GA)といった既知のアルゴリズムであってもよい。また、最適化アルゴリズム140を用いて整定時間を短くする最適化処理は、例えば、上記既知のアルゴリズムを用いて行う既知の処理であってもよい。
 生成部14は、例えば、最適化処理を1回行うことにより更新制御パラメータを生成するとしてもよいし、最適化処理終了条件を満たすまで繰り返し最適化処理を行うことにより更新制御パラメータを生成するとしてもよい。
 ここで、最適化処理終了条件は、例えば、最適化処理が繰り返される期間である。この場合、生成部14は、所定期間最適化処理を繰り返し行う。
 また、最適化処理終了条件は、例えば、最適化処理が繰り返される回数である。この場合、生成部14は、所定回数最適化処理を繰り返し行う。
 また、最適化処理終了条件は、例えば、1以上の整定時間が満たすべき時間である。この場合、生成部14は、1以上の整定時間が所定時間以下になるまで最適化処理を繰り返し行う。
 出力部12は、生成部14により生成された制御パラメータを、メモリ21に記憶させるために、生産装置20に出力する。
 操作受け付け部15は、制御パラメータ生成システム1を利用するユーザによる、入力部44から制御パラメータ生成装置10への設定情報等の入力操作を受け付ける。
 表示部17は、制御パラメータ生成システム1を利用するユーザに提供する画像を表示する。なお、ユーザへの情報の通知の態様は、画像表示に限らず、音声出力等であっても良い。
 画像生成部16は、表示部17が表示する画像を生成する。
 <動作>
 以下、上記構成の制御パラメータ生成システム1が行う動作について説明する。
 制御パラメータ生成システム1は、第1の制御パラメータ生成処理と、条件取得処理と、代表動作指定処理とを行う。
 以下、これらの処理について、図面を参照しながら順に説明する。
 まず、第1の制御パラメータ生成処理について説明する。
 第1の制御パラメータ生成処理は、生産装置20に用いる制御パラメータを生成する処理である。
 第1の制御パラメータ生成処理は、例えば、制御パラメータ生成システム1を利用するユーザが、操作受け付け部15に対して、第1の制御パラメータ生成処理を開始する旨の操作を行うことで開始される。
 図7は、第1の制御パラメータ生成処理のフローチャートであり、図8は、第1の制御パラメータ生成処理のシーケンス図である。
 図7および図8に示すように、第1の制御パラメータ生成処理が開始されると、操作受け付け部15は、第1の制御パラメータ生成処理を実行するための所定のプログラムを起動する(ステップS5)。
 所定のプログラムが起動されると、出力部12は、制御パラメータの初期値をメモリ21に出力する(ステップS10)。このとき、出力部12は、例えば、予め定められた値からなる制御パラメータの初期値を出力するとしてもよいし、例えば、ユーザにより指定された値からなる制御パラメータの初期値を出力するとしてもよいし、例えば、ユーザにより指定された算出方法により算出された値からなる制御パラメータの初期値を出力するとしてもよい。
 出力部12から制御パラメータが出力されると、メモリ21は、出力部12から出力された制御パラメータを記憶する(ステップS15)。
 そして、制御パラメータ生成装置10は、整数型変数Xに初期値1を代入する(ステップS20)。
 なお、ここでは、整数型変数Xに代入する初期値は1であるとして説明するが、初期値は1以上N-1以下の整数であればよく、必ずしも1に限定される必要はない。例えば、整数型変数Xに代入する初期値は、ユーザによって指定されるとしてもよい。
 次に、選択部19がX個の動作を含む代表動作を選択した後、制御部18による制御によって、生産装置20はN個のうちのX個の動作を行う(ステップS25)。ここで、選択部19が選択するX個の動作は、例えば、ユーザにより指定された動作であってもよいし、予め定められた所定の動作であってもよいし、ユーザにより指定された特定方法によりアクティブに特定される動作であってもよい。生産装置20が行うX個の動作をユーザが指定する場合は、例えば、後述の代表動作指定処理を実行することで実現される。
 生産装置20がX個の動作を行うと、センサ30は、X個の動作それぞれに対応するX個の測定データを制御パラメータ生成装置10に出力する(ステップS30)。
 すると、取得部11は、センサ30から、X個の動作それぞれに対応するX個の測定データそれぞれを取得する(ステップS35)。
 取得部11がX個の測定データを取得すると、判断部13は、X個の測定データそれぞれについて、整定時間を判断する(ステップS40)。
 判断部13がX個の整定時間を判断すると、生成部14は、最適化処理終了条件が満たされているか否かを調べる(ステップS45)。
 ステップS45の処理において、最適化処理終了条件が満たされていない場合に(ステップS45:No)、生成部14は、X個の整定時間のうち少なくとも最も長い整定時間を短くするよう最適化処理を実行する(ステップS50)。望ましくは、X個の整定時間の全てが目標値以下となるように制御パラメータの最適化処理を実行する。そして、生成部14は、最適化処理により、X個の整定時間のうち少なくとも最も長い整定時間を短くするよう最適化された更新制御パラメータを生成する(ステップS55)。
 すると、出力部12は、生成された更新制御パラメータを、メモリ21に記憶させるために、生産装置20に出力する(ステップS60)。
 すると、メモリ21は、出力された制御パラメータを取得し、取得した制御パラメータで記憶する制御パラメータを更新する(ステップS65)。
 ステップS65の処理が終了すると、第1の制御パラメータ生成処理は、再び、ステップS25の処理に進む。
 ステップS45の処理において、最適化処理終了条件が満たされている場合に(ステップS45:Yes)、制御パラメータ生成装置10は、整数型変数Xの値がNと等しいか否かを調べる(ステップS70)。
 ステップS70の処理において、整数型変数Xの値がNと等しくない場合に(ステップS70:No)、すなわち、整数型変数Xの値がNよりも小さい場合に、制御パラメータ生成装置10は、整数型変数XにX+1以上N以下の整数を代入する(ステップS75)。
 ステップS75の処理が終了すると、第1の制御パラメータ生成処理は、再び、ステップS25の処理に進む。
 ステップS70の処理において、整数型変数Xの値がNと等しい場合に(ステップS70:Yes)、第1の制御パラメータ生成処理は、その処理を終了する。
 なお、ステップS40の処理において、判断部13がX個の整定時間を判断した際に、画像生成部16は、現時点における最適化処理の状況を示す画像を生成し、表示部17は、画像生成部16により生成された画像を出力するとしてもよい。
 図9は、表示部17が表示する上記画像の一例を示す模式図である。
 図9において、「最適化段階」の右側の欄の「5」の表示は、現在実行中の第1の制御パラメータ生成処理における整数型変数Xに整数を代入する回数が5回であること、すなわち、現在実行中の第1の制御パラメータ生成処理は、ステップS25の処理から、ステップS45:Yesの処理、および、ステップS70:Noの処理を経て再びステップS25の処理に戻るループ処理を4回繰り返す処理であることを示す。
 「第一段階」の「代表動作数」の欄の「1」の表示は、整数型変数Xに1回目に代入する整数、すなわち、ステップS20の処理において代入する整数が「1」であることを示す。
 「第二段階」の「代表動作数」の欄の「2」の表示は、整数型変数Xに2回目に代入する整数、すなわち、上記ループ処理において1回目に実行されるステップS75の処理において代入する整数が「2」であることを示す。
 「第三段階」の「代表動作数」の欄の「8」の表示は、整数型変数Xに3回目に代入する整数、すなわち、上記ループ処理において2回目に実行されるステップS75の処理において代入する整数が「8」であることを示す。
 「第四段階」の「代表動作数」の欄の「32」の表示は、整数型変数Xに4回目に代入する整数、すなわち、上記ループ処理において3回目に実行されるステップS75の処理において代入する整数が「32」であることを示す。
 「第五段階」の「代表動作数」の欄の「80」の表示は、整数型変数Xに5回目に代入する整数、すなわち、上記ループ処理において4回目に(つまり、最後に)実行されるステップS75の処理において代入する整数が「80」であることを示す。
 「第一段階」~「第五段階」の「最大最適化時間(h)」の欄の「2」の表示は、各段階の最適化処理終了条件に、最適化処理(すなわち、ステップS50の処理)が繰り返される所定期間が、2時間であるとの条件、すなわち、各段階における最適化処理が繰り返される上限が2時間であるという条件が含まれていることを示す。
 「第一段階」の「最適化を打ち切る整定時間(ms)」の欄の「12」の表示は、第一段階の最適化処理終了条件に、最適化処理が繰り返される整定時間が、12msであるとの条件、すなわち、第一段階における最適化処理が繰り返される上限が、ステップS40の処理において判断される整定時間が12msとなるまでであるという条件が含まれていることを示す。
 「第二段階」~「第五段階」の「最適化を打ち切る整定時間(ms)」の欄の「23」の表示は、第二段階~第五段階の最適化処理終了条件に、最適化処理が繰り返される整定時間が、23msであるとの条件、すなわち、第二段階~第五段階における最適化処理が繰り返される上限が、ステップS40の処理において判断されるX個の整定時間が23ms以下にまでであるという条件が含まれていることを示す。
 「第一段階」の「最小整定時間」の欄の「12」の表示は、第一段階において判断された整定時間の最小値が12msであることを示す。
 「第二段階」の「最小整定時間」の欄の「23」の表示は、第二段階において判断された整定時間の最小値が23msであることを示す。
 「第三段階」の「最小整定時間」の欄の「45」の表示は、第三段階において判断された整定時間の最小値が、現時点では45msであることを示す。
 「第四段階」および「第五段階」の「最小整定時間」の欄の空白の表示は、第四段階および第五段階において整定時間が判断されていないことを示す。
 右のグラフにおける折れ線グラフ210は、第一段階において判断された整定時間の時間推移を示し、折れ線グラフ220は、第二段階において判断された整定時間の時間推移を示し、折れ線グラフ230は、第三段階において判断された整定時間の時間推移を示す。
 次に、条件取得処理について説明する。
 条件取得処理は、第1の制御パラメータ生成処理を実行する際の条件を取得する処理である。
 ここでは、条件取得処理は、第1の制御パラメータ生成処理における、整数型変数Xに整数を代入する回数、ならびに、整数型変数Xに整数を代入する際の数値、および、ステップS65の処理に使用される最適化処理終了条件を取得する処理であって、最適化処理終了条件が、最適化処理が所定期間実行された場合、または、ステップS40の処理において判断されたX個の整定時間が所定時間以下になる場合であるとして説明する。
 条件取得処理は、例えば、制御パラメータ生成システム1を利用するユーザが、操作受け付け部15に対して、条件取得処理を開始する旨の操作を行うことで開始される。
 図10は条件取得処理のフローチャートである。
 図10に示すように、条件取得処理が開始されると、操作受け付け部15は、条件取得処理を実行するための所定のプログラムを起動する(ステップS110)。
 所定のプログラムが起動されると、画像生成部16は、制御パラメータ生成システム1を利用するユーザに対して、第1の制御パラメータ生成処理を実行する際の条件の入力を促す画像を生成する。すると、表示部17は、生成された画像を表示する(ステップS120)。
 画像が表示されると、操作受け付け部15は、ユーザによる、第1の制御パラメータ生成処理を実行する際の条件の入力が終了するまで待機する(ステップS130:No、ステップS120のループを繰り返す)。
 図11は、表示部17が表示する上記図面の一例を示す模式図である。図11は、ユーザによって第1の制御パラメータ生成処理を実行する際の条件が入力された状態における上記図面の一例となっている。
 図11において、「最適化段階」の右側の欄の「5」の表示は、ユーザによって入力された、第1の制御パラメータ生成処理における整数型変数Xに整数を代入する回数が5回であることを示す。
 「第一段階」の「代表動作数」の欄の「1」の表示は、ユーザによって入力された、または、デフォルトで設定された、整数型変数Xに1回目に代入する整数が「1」であることを示す。なお、ここでは、前述した通り、整数型変数Xに代入する初期値はデフォルトの「1」に定まっているため、ユーザが入力する必要はない。
 「第二段階」の「代表動作数」の欄の「2」の表示は、ユーザによって入力された、整数型変数Xに2回目に代入する整数が「2」であることを示す。
 「第三段階」の「代表動作数」の欄の「8」の表示は、ユーザによって入力された、整数型変数Xに3回目に代入する整数が「8」であることを示す。
 「第四段階」の「代表動作数」の欄の「32」の表示は、ユーザによって入力された、整数型変数Xに4回目に代入する整数が「32」であることを示す。
 「第五段階」の「代表動作数」の欄の「80」の表示は、ユーザによって入力された、整数型変数Xに5回目に代入する整数が「80」であることを示す。
 「第一段階」~「第五段階」の「最大最適化時間(h)」の欄の「2」の表示は、ユーザによって入力された、各段階の最適化条件における所定期間が2hであることを示す。すなわち、ユーザによって、各段階の最適化処理終了条件として、各段階における最適化処理が繰り返される上限が2時間となるまでであるという条件が入力された旨を示す。
 「第一段階」の「最適化を打ち切る整定時間(ms)」の欄の「12」の表示は、ユーザによって入力された、第一段階の最適化処理終了条件における所定時間が12msであることを示す。すなわち、ユーザによって、第一段階の最適化処理終了条件として、第一段階における最適化処理が繰り返される上限が、ステップS40の処理において判断される整定時間が12msとなるまでであるという条件が入力された旨を示す。
 「第二段階」~「第五段階」の「最適化を打ち切る整定時間(ms)」の欄の「23」の表示は、ユーザによって入力された、第二段階~第五段階の最適化処理終了条件における所定期間が23msであることを示す。すなわち、ユーザによって、第一段階~第五段階の最適化処理終了条件として、第二段階~第五段階における最適化処理が繰り返される上限が、ステップS40の処理において判断される整定時間が23msとなるまでであるという条件が入力された旨を示す。
 再び図10に戻って、条件取得処理の説明を続ける。
 ステップS130の処理において、ユーザによる、第1の制御パラメータ生成処理を実行する際の条件の入力が終了すると(ステップS130:Yes)、操作受け付け部15は、ユーザにより入力された、第1の制御パラメータ生成処理を実行する際の条件を取得する(ステップS140)。
 ステップS140の処理が終了すると、条件取得処理は、その処理を終了する。
 次に、代表動作指定処理について説明する。
 代表動作指定処理は、第1の制御パラメータ生成処理を実行する際に、各段階で実行するX個の動作それぞれを指定する処理である。以下、各段階において実行するX個の動作のことを、各段階における「代表動作」とも称する。
 代表動作指定処理は、例えば、制御パラメータ生成システム1を利用するユーザが、操作受け付け部15に対して、代表動作指定処理を開始する旨の操作を行うことで開始される。
 図12は代表動作指定処理のフローチャートである。
 図12に示すように、代表動作指定処理が開始されると、操作受け付け部15は、代表動作指定処理を実行するための所定のプログラムを起動する(ステップS210)。
 所定のプログラムが起動されると、画像生成部16は、制御パラメータ生成システム1を利用するユーザに対して、第1の制御パラメータ生成処理を実行する際に、各段階で実行するX個の動作それぞれの指定を促す画像を生成する。すると、表示部17は、生成された画像を表示する(ステップS220)。
 画像が表示されると、操作受け付け部15は、ユーザによる、第1の制御パラメータ生成処理を実行する際に各段階で実行するX個の動作それぞれを自動で行う旨の指定、または、第1の制御パラメータ生成処理を実行する際に各段階で実行するX個の動作それぞれの手動による指定が終了するまで待機する(ステップS230:No、ステップS220のループを繰り返す)。
 図13は、表示部17が表示する上記画像の一例を示す模式図である。図13は、ユーザによって、(1)各段階で実行するX個の動作それぞれの指定を手動で行う旨の指定、および、(2)各段階で実行するX個の動作それぞれの手動による指定がなされた状態における上記図面の一例となっている。
 図13において、「手動代表選択」の左の欄の黒丸は、ユーザによって、各段階で実行するX個の動作それぞれの指定を手動で行う旨の指定がなされたことを示す。一方で、ユーザによって、各段階で実行するX個の動作それぞれの指定を自動で行う旨の指定がなされた場合には、「自動代表選択」の左の欄に黒丸が表示されることとなる。
 「第一段階の代表動作」の欄の白丸の表示は、ユーザによって、第一段階で実行するX個の動作のそれぞれとして、対応する動作(表の左端の動作名で特定される動作、以下同様)が指定されたことを示す。
 同様に、「第二段階の代表動作」~「第五段階の代表動作」の欄の白丸の表示は、ユーザによって、第二段階~第五段階で実行するX個の動作のそれぞれとして、対応する動作が指定されたことを示す。
 再び図12に戻って、条件取得処理の説明を続ける。
 ステップS230の処理において、ユーザによる、第1の制御パラメータ生成処理を実行する際に各段階で実行するX個の動作それぞれを自動で行う旨の指定、または、第1の制御パラメータ生成処理を実行する際に各段階で実行するX個の動作それぞれの手動による指定が終了すると(ステップS230:Yes)、操作受け付け部15は、ユーザにより、第1の制御パラメータ生成処理を実行する際に各段階で実行するX個の動作それぞれを自動で行う旨の指定がなされたか否かを調べる(ステップS240)。
 ステップS240の処理において、ユーザにより、第1の制御パラメータ生成処理を実行する際に各段階で実行するX個の動作それぞれを自動で行う旨の指定がなされていなかった場合(ステップS240:No)、すなわち、第1の制御パラメータ生成処理を実行する際に各段階で実行するX個の動作それぞれの手動による指定がなされていた場合、操作受け付け部15は、ユーザにより指定された各段階で実行するX個の動作それぞれを、各段階におけるX個の代表動作のそれぞれに指定する(ステップS250)。
 ステップS240の処理において、ユーザにより、第1の制御パラメータ生成処理を実行する際に各段階で実行するX個の動作それぞれを自動で行う旨の指定がなされていた場合(ステップS240:Yes)、操作受け付け部15は、所定のアルゴリズムに基づいて、第1の制御パラメータ生成処理を実行する際に各段階で実行するX個の動作それぞれを決定する(ステップS260)。
 操作受け付け部15は、例えば、予め定められた動作のそれぞれを、各段階で実行するX個の動作それぞれであると決定してもよいし、所定の条件を満たす動作のそれぞれを、各段階で実行するX個の動作それぞれであると決定してもよい。
 ステップS260の処理が終了すると、操作受け付け部15は、ステップS260の処理において決定された各段階で実行するX個の動作それぞれを各段階におけるX個の代表動作のそれぞれに指定する(ステップS270)。
 ステップS250の処理が終了した場合と、ステップS270の処理が終了した場合とに、代表動作指定処理は、その処理を終了する。
 <考察>
 上記構成の制御パラメータ生成装置10によると、いきなり、生産装置20が行うN個(例えば、80個)の動作全てを対象として適正な制御パラメータの探索を行わずに、最初は、N個の動作のうちの一部の個数(例えば、1個)の動作を対象として適正な制御パラメータの探索を行い、次第に対象とする動作の個数を増やしながら、前回の探索結果に基づいて適正な制御パラメータの探索を行い、最終的にはN個の動作全てを対象として適正な制御パラメータの探索を行って、適正な制御パラメータを生成する。
 このため、上記構成の制御パラメータ生成装置10によると、いきなり、生産装置20が行うN個の動作全てを対象として適正な制御パラメータ探索することで適正な制御パラメータを生成するよりも、より効率的でより確実に制御パラメータを生成することができる。
 このように、上記構成の制御パラメータ生成装置10によると、適正な制御パラメータを効率的に生成することができる。
 また、発明者らは、生産装置シミュレーションモデルを用いて、いきなり、生産装置20が行うN個の動作全てを対象として適正な制御パラメータ探索することで適正な制御パラメータを生成する従来手法により、制御パラメータを生成する場合に達成される整定時間と、制御パラメータ生成装置10を用いて生産装置20に用いる制御パラメータを生成する場合に達成される整定時間とを比較する実験を行った。
 図14は、実験結果を示す模式図である。
 図14に示すように、従来手法により制御パラメータを生成する場合に達成される整定時間は36[ms]となり、制御パラメータ生成装置10を用いて制御パラメータ生成装置10を用いて生成する場合に達成される整定時間は23[ms]となった。
 このように、発明者らは、この実験により、制御パラメータ生成装置10を用いて制御パラメータを生成することで、従来手法よりも、達成される整定時間を約35%も削減できることを実証した。
 (実施の形態2)
 以下、実施の形態1に係る制御パラメータ生成システム1から、一部の構成が変更されて構成される実施の形態2に係る制御パラメータ生成システムについて説明する。
 実施の形態1に係る制御パラメータ生成システム1は、制御パラメータ生成装置10が行う最適化処理が、整定時間を短くする処理である場合の構成の一例であった。これに対して、実施の形態2に係る制御パラメータ生成システムは、実施の形態2に係る制御パラメータ生成装置が行う最適化処理が、後述する逸脱程度を小さくする処理である場合の構成の一例となっている。
 ここでは、実施の形態2に係る制御パラメータ生成システムについて、制御パラメータ生成システム1と同様の構成要素については、既に説明済みであるとして同じ符号を振ってその詳細な説明を省略し、制御パラメータ生成システム1との相違点を中心に説明する。
 <構成>
 図15は、実施の形態2に係る制御パラメータ生成システム1Aの構成を示すブロック図である。
 図15に示すように、制御パラメータ生成システム1Aは、実施の形態1に係る制御パラメータ生成システム1から、制御パラメータ生成装置10が制御パラメータ生成装置10Aに変更されて構成される。また、制御パラメータ生成装置10Aは、制御パラメータ生成装置10から、判断部13が判断部13Aに変更され、生成部14が生成部14Aに変更され、最適化アルゴリズム140が最適化アルゴリズム140Aに変更されて構成される。
 判断部13Aは、取得部11によって取得された1以上の動作それぞれについて、当該動作に対応する測定データに基づき、当該動作のために、駆動対象物24の位置を目標位置にする際に目標位置から許容される許容範囲に駆動対象物24が収まっていない時間帯が生じた場合に、当該時間帯における許容範囲に対象物が収まっていない程度、すなわち、逸脱程度を判断する。つまり、実施の形態1における評価指標は、駆動対象物24の位置と目標位置との位置偏差が許容範囲内に収束するまでの整定時間であったのに対し、実施の形態2における評価指標は、駆動対象物24の位置と目標位置との位置偏差が許容範囲から逸脱する逸脱時間又は位置偏差量の積算値である。
 以下、判断部13Aが判断する逸脱程度の具体例について、図面を用いて説明する。
 図16A、図16Bは、生産装置20が、駆動対象物24を目標位置に駆動する際における、目標位置に対する駆動対象物24の位置偏差の推移の一例を示す模式図である。
 図16A、図16Bにおいて、横軸は時刻を示し、縦軸は、目標位置に対する駆動対象物24の位置偏差を示す。
 図16A、図16Bに示すように、駆動対象物24の位置を目標位置にする際に、一旦、駆動対象物24が許容範囲内に到達した後において、駆動対象物24が許容範囲を逸脱する場合がある。
 このような場合に、判断部13Aは、例えば、図16Aに示すように、駆動対象物24が最初に許容範囲内に到達した後における、駆動対象物24が許容範囲に収まらない時間の総和(以下、「第1の総和」とも称する)を、逸脱程度と判断する。
 なお、判断部13Aは、駆動対象物24の停止開始または移動開始からの経過時間に基づいて、重み付けをして加算して上記第1の総和を算出するとしてもよい。すなわち、判断部13Aは、駆動対象物24の停止開始または移動開始からの経過時間が大きい程、大きな重み(ペナルティ)をつけて加算して上記第1の総和を算出するとしてもよい。これにより、駆動対象物24の停止開始または移動開始から比較的大きな時間が経過してからの、駆動対象物24の比較的大きな変動を抑制することができる。
 または、このような場合に、判断部13Aは、例えば、図16Bに示すように、駆動対象物24が最初に許容範囲内に到達した後における、駆動対象物24が許容範囲に収まらない時間における位置偏差の積分値の総和(以下、「第2の総和」とも称する)を、逸脱程度と判断する。
 なお、判断部13Aは、駆動対象物24が許容範囲に収まらない時間の長さが閾値以下の場合には、上記第2の総和の加算対象から除外するとしてもよい。これにより、短時間生じるセンサノイズに対して耐性を持たせることができる。
 再び図15に戻って、制御パラメータ生成システム1Aの説明を続ける。
 生成部14Aは、取得部11によって取得された1以上の動作それぞれに対応する1以上の逸脱程度のそれぞれであって、判断部13Aによって判断された1以上の逸脱程度のそれぞれのうち、少なくとも最も大きい逸脱程度を小さくするよう最適化処理により制御パラメータを更新して更新制御パラメータを生成する。
 図15に示すように、生成部14Aは、逸脱時間を小さくするように制御パラメータを最適化する最適化アルゴリズム140Aを有する。そして、生成部14Aは、最適化アルゴリズム140Aを用いて、判断部13Aによって判断された1以上の逸脱程度のそれぞれのうち、少なくとも最も大きい逸脱程度を小さくする最適化処理を行う。
 最適化アルゴリズム140Aは、例えば、実施の形態1に係る最適化アルゴリズム140と同様に、ベイズ最適化アルゴリズム、進化戦略アルゴリズム(CMA-ES)、遺伝的アルゴリズム(GA)といった既知のアルゴリズムであってもよい。また、最適化アルゴリズム140Aを用いて逸脱程度を小さくする最適化処理は、例えば、上記既知のアルゴリズムを用いて行う既知の処理であってもよい。
 生成部14Aは、実施の形態1に係る生成部14と同様に、例えば、最適化処理を1回行うことにより更新制御パラメータを生成するとしてもよいし、最適化処理終了条件を満たすまで繰り返し最適化処理を行うことにより更新制御パラメータを生成するとしてもよい。
 ここで、最適化処理終了条件は、例えば、最適化処理が繰り返される期間である。この場合、生成部14Aは、所定期間最適化処理を繰り返し行う。
 また、最適化処理終了条件は、例えば、最適化処理が繰り返される回数である。この場合、生成部14Aは、所定回数最適化処理を繰り返し行う。
 また、最適化処理終了条件は、例えば、1以上の逸脱程度が満たすべき程度である。この場合、生成部14Aは、1以上の逸脱程度が所定程度以下になるまで最適化処理を繰り返し行う。
 <動作>
 以下、上記構成の制御パラメータ生成システム1Aが行う動作について説明する。
 制御パラメータ生成システム1Aは、実施の形態1に係る第1の制御パラメータ生成処理に替えて、第1の制御パラメータ生成処理から、その一部の処理が変更された第2の制御パラメータ生成処理を実行する。
 第2の制御パラメータ生成処理は、第1の制御パラメータ生成処理と同様に、生産装置20に用いる制御パラメータを生成する処理である。
 図17は、第2の制御パラメータ生成処理のフローチャートである。
 第2の制御パラメータ生成処理において、ステップS305の処理~ステップS335の処理、ステップS345の処理、および、ステップS360の処理~ステップS375の処理は、それぞれ、第1の制御パラメータ生成処理における、ステップS5の処理~ステップS35の処理、ステップS45の処理、および、ステップS60の処理~ステップS75の処理から、制御パラメータ生成装置10と、判断部13と、生成部14とを、それぞれ、制御パラメータ生成装置10Aと、判断部13Aと、生成部14Aとに読み替え、第1の制御パラメータ生成処理を、第2の制御パラメータ生成処理に読み替えた処理と同様の処理である。
 このため、ここでは、第2の制御パラメータ生成処理について、ステップS340の処理、ステップS350の処理、および、ステップS355の処理を中心に説明する。
 ステップS335の処理において取得部11がX個の測定データを取得すると、判断部13Aは、X個の測定データそれぞれについて、逸脱程度を判断する(ステップS340)。そして、ステップS345の処理に進む。
 ステップS345の処理において、最適化処理終了条件が満たされていない場合に(ステップS345:No)、生成部14Aは、X個の逸脱程度のうち少なくとも最も大きい逸脱程度を小さくするよう最適化処理を実行する(ステップS350)。望ましくは、X個の逸脱程度の全てが目標値以下となるように制御パラメータの最適化処理を実行する。そして、生成部14Aは、最適化処理により、X個の逸脱程度のうち少なくとも最も大きい逸脱程度を小さくするよう最適化された更新制御パラメータを生成する(ステップS355)。そして、ステップS345の処理に進む。
 <考察>
 上記構成の制御パラメータ生成装置10Aによると、制御パラメータ生成装置10と同様に、いきなり、生産装置20が行うN個(例えば、80個)の動作全てを対象として適正な制御パラメータの探索を行わずに、最初は、N個の動作のうちの一部の個数(例えば、1個)の動作を対象として適正な制御パラメータの探索を行い、次第に対象とする動作の個数を増やしながら、前回の探索結果に基づいて適正な制御パラメータの探索を行い、最終的にはN個の動作全てを対象として適正な制御パラメータの探索を行って、適正な制御パラメータを生成する。
 このため、上記構成の制御パラメータ生成装置10Aによると、制御パラメータ生成装置10と同様に、いきなり、生産装置20が行うN個の動作全てを対象として適正な制御パラメータ探索することで適正な制御パラメータを生成するよりも、より効率的でより確実に制御パラメータを生成することができる。
 このように、上記構成の制御パラメータ生成装置10Aによると、制御パラメータ生成装置10と同様に、適正な制御パラメータを効率的に生成することができる。
 (実施の形態3)
 以下、実施の形態1に係る制御パラメータ生成システム1から、一部の動作が変更されて構成される実施の形態3に係る制御パラメータ生成システムについて説明する。
 <構成>
 実施の形態3に係る制御パラメータ生成システムは、実施の形態1に係る制御パラメータ生成システムと、ハードウェア構成は同一であるが、実行されるソフトウェアが一部変更されている。
 このため、ここでは、実施の形態3に係る制御パラメータ生成システムについて、各構成要素については、既に説明済みであるとして同じ符号を振ってその詳細な説明を省略し、制御パラメータ生成システム1との動作の相違点を中心に説明する。
 <動作>
 実施の形態3に係る制御パラメータ生成システムは、実施の形態1に係る第1の制御パラメータ生成処理および代表動作指定処理に替えて、第1の制御パラメータ生成処理から、その一部の処理が変更された第3の制御パラメータ生成処理を実行する。
 第3の制御パラメータ生成処理は、第1の制御パラメータ生成処理と同様に、生産装置20に用いる制御パラメータを生成する処理である。
 図18は、第3の制御パラメータ生成処理のフローチャートである。
 第3の制御パラメータ生成処理において、ステップS405の処理~ステップS465の処理は、それぞれ、第1の制御パラメータ生成処理における、ステップS5の処理~ステップS65の処理から、第1の制御パラメータ生成処理を、第3の制御パラメータ生成処理に読み替えた処理と同様の処理である。
 このため、ここでは、第3の制御パラメータ生成処理について、ステップS525~ステップS545の処理、および、ステップS570の処理~ステップS580の処理を中心に説明する。
 ステップS420の処理が終了すると、生産装置20は、Y個の動作を行う(ステップS525)。ここで、Yは、X+1以上N以下の整数である。
 生産装置20がY個の動作を行うと、センサ30は、Y個の動作それぞれに対応するY個の測定データを制御パラメータ生成装置10に出力する。(ステップS530)。
 すると、取得部11は、センサ30から、Y個の動作それぞれに対応するY個の測定データそれぞれを取得する(ステップS535)。
 取得部11がY個の測定データを取得すると、判断部13は、Y個の測定データそれぞれについて、整定時間を判断する(ステップS540)。
 Y個の測定データそれぞれについて整定時間を判断すると、判断部13は、所定のアルゴリズムに基づいて、Y個の動作から、X個の代表動作を選択する(ステップS545)。
 図19は、判断部13が、Y個の動作からX個の代表動作を選択する様子の一例を示す模式図である。図19に示す例は、Yが40でXが2である場合の例となっている。
 図19に示すように、判断部13は、例えば、ステップS540の処理において判断したY個の動作の整定時間に対して(図19の(a)参照)、判断したY個の整定時間を、整定時間の短い順にソートして(図19の(b)参照)、所定の順番に位置するX個の動作を代表動作として選択する(図19の(c)参照)としてもよい。
 再び図18に戻って、第3の制御パラメータ生成処理の説明を続ける。
 ステップS545処理が終了すると、第3の制御パラメータ生成処理は、ステップS445の処理に進む。
 ステップS445の処理において、最適化処理終了条件が満たされている場合に(ステップS445:Yes)、制御パラメータ生成装置10は、整数型変数XにX+1以上N以下の整数を代入する(ステップS570)。そして、制御パラメータ生成装置10は、整数型変数Xの値がNと等しいか否かを調べる(ステップS575)。
 ステップS575の処理において、整数型変数Xの値がNと等しくない場合に(ステップS575:No)、すなわち、整数型変数Xの値がNよりも小さい場合に、第3の制御パラメータ生成処理は、再び、ステップS525の処理に進む。
 ステップS575の処理において、整数型変数Xの値がNと等しい場合に(ステップS575:Yes)、実施の形態3に係る制御パラメータ生成システムは、全動作によるパラメータ更新処理を実行する(ステップS580)
 図20は、全動作によるパラメータ更新処理のフローチャートである。
 図20に示すように、全動作によるパラメータ更新処理が開始されると、生産装置20は、制御部18による制御によってN個の動作を行う(ステップS581)。
 生産装置20がN個の動作を行うと、センサ30は、N個の動作それぞれに対応するN個の測定データを制御パラメータ生成装置10に出力する。(ステップS582)。
 すると、取得部11は、センサ30から、N個の動作それぞれに対応するN個の測定データそれぞれを取得する(ステップS583)。
 取得部11がN個の測定データを取得すると、判断部13は、N個の測定データそれぞれについて、整定時間を判断する(ステップS584)。
 判断部13がN個の整定時間を判断すると、生成部14は、最適化処理終了条件が満たされているか否かを調べる(ステップS585)。
 ステップS585の処理において、最適化処理終了条件が満たされていない場合に(ステップS585:No)、生成部14は、N個の整定時間のうち少なくとも最も長い整定時間を短くするよう最適化処理を実行する(ステップS586)。そして、生成部14は、最適化処理により、N個の整定時間のうち少なくとも最も長い整定時間を短くするよう最適化された更新制御パラメータを生成する(ステップS587)。
 すると、出力部12は、生成された更新制御パラメータを、メモリ21に記憶させるために、生産装置20に出力する(ステップS588)。
 すると、メモリ21は、出力された制御パラメータを取得し、取得した制御パラメータで記憶する制御パラメータを更新する(ステップS589)。
 ステップS589の処理が終了すると、全動作によるパラメータ更新処理は、再び、ステップS581の処理に進む。
 ステップS585の処理において、最適化処理終了条件が満たされている場合に(ステップS585:Yes)、全動作によるパラメータ更新処理は、その処理を終了する。
 再び、図18に戻って、第3の制御パラメータ生成処理の説明を続ける。
 ステップS580の処理、すなわち、全動作によるパラメータ生成処理が終了すると、第3の制御パラメータ生成処理は、その処理を終了する。
 なお、ここでは、ステップS545の処理において、判断部13は、判断したY個の整定時間を整定時間の短い順にソートして、所定の順番に位置するX個の動作を代表動作として選択するとして説明したが、判断部13は、必ずしも、この通りの方法でX個の動作を代表動作として選択する例に限定される必要はない。例えば、判断部13は、Y個の動作を、互いに類似した動作からなるX個の動作グループでグループ分けをして、各動作グループで最も特徴的な整定時間(例えば、最も長い整定時間)となる動作をX個の代表動作として選択するとしてもよい。
 <考察>
 上記動作を行う実施の形態3に係る制御パラメータ生成装置10によると、実施の形態1に係る制御パラメータ生成装置10と同様に、いきなり、生産装置20が行うN個(例えば、80個)の動作全てを対象として適正な制御パラメータの探索を行わずに、最初は、N個の動作のうちの一部の個数(例えば、1個)の動作を対象として適正な制御パラメータの探索を行い、次第に対象とする動作の個数を増やしながら、前回の探索結果に基づいて適正な制御パラメータの探索を行い、最終的にはN個の動作全てを対象として適正な制御パラメータの探索を行って、適正な制御パラメータを生成する。
 このため、上記動作を行う実施の形態3に係る制御パラメータ生成装置10によると、実施の形態1に係る制御パラメータ生成装置10と同様に、いきなり、生産装置20が行うN個の動作全てを対象として適正な制御パラメータ探索することで適正な制御パラメータを生成するよりも、より効率的でより確実に制御パラメータを生成することができる。
 このように、上記動作を行う実施の形態3に係る制御パラメータ生成装置10によると、制御パラメータ生成装置10と同様に、適正な制御パラメータを効率的に生成することができる。
 (実施の形態4)
 実施の形態3では、N個の全動作によるパラメータ更新処理は、生産装置20の動作を総合評価するための評価動作として、複数段階の制御パラメータ最適化処理における最終段階で実施されたが、最終段階での実施に代えてあるいは最終段階での実施に加えて、複数段階の途中の段階で少なくとも1回実施されてもよい。評価動作は、各段階の代表動作が実行される期間内、及び、ある段階から次の段階への移行期間内、の少なくとも一方において実行される。実施の形態3のように評価動作として全動作を生産装置20に実行させることにより、正確な総合評価を行うことが可能となる。
 但し、評価動作は、全動作に限らず、全動作と当該評価動作の直近の代表動作との差分動作であっても良い。差分動作は、N個の全動作から、直近の代表動作に含まれる動作を除外した残りの動作である。評価動作において、制御部18は生産装置2に差分動作のみを実行させる。評価動作として、全動作と当該評価動作の直近の代表動作との差分動作を生産装置20に実行させることにより、総合評価の精度を維持しつつ評価動作の効率化を図ることが可能となる。あるいは、評価動作は、全動作に限らず、全動作の中から予め規定された規定動作であっても良い。例えば、全動作のうち生産装置20の動作性能に与える影響が大きい順に所定の複数の動作が、規定動作として定められる。評価動作において、制御部18は生産装置2に規定動作のみを実行させる。評価動作として、全動作の中から予め規定された規定動作を生産装置20に実行させることによって、評価動作の効率化を図ることが可能となる。
 制御部18は、総合評価の評価結果が所定の最適化終了条件を満たすか否かを判定し、評価結果が最適化終了条件を満たす場合には、制御パラメータ最適化処理を終了する。最適化終了条件としては、評価動作に関する評価値の目標値が設定されていても良いし、現時点までの全段階に関する最適化処理の繰り返し回数の合計値の上限回数が設定されていても良いし、現時点までの全段階に関する最適化処理の実行時間の上限時間が設定されていても良い。例えば評価値の目標値が最適化終了条件として設定される場合は、制御部18は、直近の評価動作の評価値が目標値を超えている場合は最適化終了条件を満たしていないと判定し、直近の評価動作の評価値が目標値以下である場合は最適化終了条件を満たしていると判定する。評価動作の実行による総合評価の評価結果が最適化終了条件を満たす場合には、代表動作が最終段階に至る前であっても最適化処理を終了するため、最適化処理の所要時間を短縮することが可能となる。
 (実施の形態5)
 上記各実施の形態では、複数段階の制御パラメータ最適化処理の段階が進行するに従って代表動作の数(X)を徐々に増やしたが、動作の数は増やさずに動作の内容を変更しても良い。
 例えば、複数の段階の全てにおいて代表動作の数を4個(X=4)に固定し、最適化処理終了条件が満たされて段階が進行するごとに、選択部19が4個の代表動作を選択し直しても良い。
 選択部19による各段階におけるX個の代表動作の選択手法の例は、以下の通りである。なお、以下に述べる選択手法は、代表動作の数を全段階で固定する実施の形態5に限らず、代表動作の数を各段階で変更する実施の形態1~4においても適用可能である。
 第1の例として、選択部19は、N個の全動作の中からランダムにX個の代表動作を選択する。
 第2の例として、選択部19は、予め設定された選択ルールに従ってX個の代表動作を選択する。選択ルールとしては、例えば、簡単な動作ほど先に選択され、複雑な動作ほど後に選択されるようなルールが設定されていてもよい。つまり、制御パラメータ最適化処理の段階が進行するに従って代表動作の内容を複雑化するようなルールが設定されていてもよい。
 第3の例として、選択部19は、N個の全動作をランダムに配列し、配列の先頭から順番にX個ずつの動作を代表動作として選択する。選択部19は、選択位置が配列の末尾に到達すると、同じ配列の先頭に戻って選択を繰り返す。
 第4の例として、選択部19は、N個の全動作をランダムに配列し、配列の先頭から順番にX個ずつの動作を代表動作として選択する。選択部19は、選択位置が配列の末尾に到達すると、N個の全動作を再びランダムに配列し、先頭から順番に選択する。
 第5の例として、選択部19は、N個の全動作をX個のグループに分類し、各グループから1個ずつ代表動作をランダムに選択する。
 第6の例として、選択部19は、測定データの波形または評価値等の類似度に基づいて、N個の全動作を互いに類似した動作からなるX個のグループに分類し、各グループに属する複数の動作をランダムに配列し、各グループにおいて配列の先頭から順番に1個ずつの動作を代表動作として選択する。
 第7の例として、選択部19は、上記類似度に基づいてN個の全動作をX個のグループに分類し、各グループに属する複数の動作の中から評価値(例えば最新の評価値)または評価値の過去平均値が最も大きい動作を要改善動作として特定し、X個のグループに関して特定したX個の要改善動作を、次回の制御パラメータ最適化処理における代表動作として選択する。過去平均値は、全期間の評価値の平均値であってもよいし、直近の所定数の評価値の平均値であってもよい。
 第8の例として、選択部19は、複数の評価値の変化傾向を表す相関類似度に基づいてN個の全動作をX個のグループに分類し、各グループに属する複数の動作の中から評価値(例えば最新の評価値)または評価値の過去平均値が最も大きい動作を要改善動作として特定し、X個のグループに関して特定したX個の要改善動作を、次回の制御パラメータ最適化処理における代表動作として選択する。過去平均値は、全期間の評価値の平均値であってもよいし、直近の所定数の評価値の平均値であってもよい。
 なお、選択部19は、第5~第8の例におけるグループの分類を複数回実行してもよい。選択部19は、後述する評価動作(ステップS71)が実行される度にグループの分類を再度実行してもよいし、一定の時間間隔毎にグループの分類を再度実行してもよいし、代表動作又は評価動作の評価結果が一定の閾値以上向上する度にグループの分類を再度実行してもよい。
 第9の例として、選択部19は、N個の全動作の中からランダムにX個の代表動作を選択し、次回以降は、選択済みの動作を除外した未選択の動作の中からランダムにX個の代表動作を選択する。未選択の動作の数がX個未満となったら、再度N個の全動作の中からランダムにX個の代表動作を選択する。
 第10の例として、選択部19は、N個の全動作の中からランダムにX個の代表動作を選択し、次回以降は、今回のX個の代表動作の中で評価値が最も悪かった1個の動作と、選択済みの動作を除外した未選択の動作の中からランダムにX-1個の代表動作とを選択する。未選択の動作の数がX個未満となったら、再度N個の全動作の中からランダムにX個の代表動作を選択する。
 なお、複数段階の制御パラメータ最適化処理の各段階において、X個の代表動作を1回ずつのみ実行してもよいし、X個の代表動作を1セットとして最適化処理終了条件を満たすまで複数セット実行してもよい。
 また、実施の形態4と同様に複数段階の途中の段階で少なくとも1回の評価動作が実行されてもよい。図21は、第1の制御パラメータ生成処理のフローチャートである。図21に示すように、複数段階の制御パラメータ最適化処理の各段階の後に評価動作を実行し(ステップS71)、評価結果が最適化終了条件を満たす場合(ステップS72:Yes)には最適化処理を終了し、評価結果が最適化終了条件を満たさない場合(ステップS72:No)には次のX個の代表動作を選択して(ステップS24)、次の段階の制御パラメータ最適化処理を実行してもよい。
 (実施の形態6)
 実施の形態6では、生成部14が用いる最適化アルゴリズム140の詳細について説明する。最適化アルゴリズム140としては、進化戦略アルゴリズム(CMA-ES)を基礎として、現段階の制御パラメータ最適化処理において算出した複数の評価値に基づいて次段階の制御パラメータ最適化処理における更新候補の制御パラメータの探索範囲を設定し、さらに、現段階と次段階とで制御パラメータ最適化処理の評価基準を変更するアルゴリズムを用いる。つまり、生成部14は、最適化アルゴリズム140を用いることによって、第1評価基準を用いて情報(この例では制御パラメータ)の第1最適化処理を実行し、第1最適化処理において算出した複数の評価値に基づいて情報の探索範囲を設定し、設定した探索範囲に関して、第1評価基準とは異なる第2評価基準を用いて情報の第2最適化処理を実行する。
 ここで、評価基準を変更することには、例えば実施の形態1,5のように代表動作を変更することが含まれる。また、代表動作を変更することには、例えば実施の形態1のように複数段階の各段階において代表動作に含まれる動作の数を変更することが含まれる。さらに、動作の数を変更することには、例えば実施の形態1のように段階が進行するに従って動作の数を増やすことが含まれる。また、代表動作を変更することには、実施の形態5のように複数段階の各段階において代表動作に含まれる動作の数を固定して動作の内容を変更することが含まれる。さらに、動作の内容を変更することには、実施の形態5のように段階が進行するに従って動作の内容を複雑化することが含まれる。
 また、評価基準を変更することには、複数段階の各段階において評価指標を変更することが含まれる。例えば現段階では評価指標として整定時間が使用されている場合に、次段階では評価指標として逸脱程度(逸脱時間又は位置偏差量の積算値)を使用する。整定時間及び逸脱程度とは異なる他の評価指標が使用されてもよい。あるいは、整定時間及び逸脱程度の双方の評価指標の重み付け和を使用し、各評価指標に乗算する重み値を複数段階の各段階において変更してもよい。
 情報の最適化処理においては、最終的な改良対象の評価指標を使用するよりも、他の評価指標を使用したほうが、あるいは他の複数の評価指標の重み付け和を使用したほうが、あるいは改良対象の評価指標と他の評価指標の重み付け和を使用したほうが、最適化が早く進行する場合がある。しかし、どのような評価指標を使用すれば効果的であるかは不明であり、あるいは各評価指標の効果的な重み値は不明である。本方式では、生成部14が、使用する評価指標又は重み値を動的に変更することによって、それらが不明な場合にも対応可能な構成としている。なお、重み付け和に限らず、複数の評価指標の複数の評価値を用いた任意の評価演算(例えば対数和)を用いることができる。また、記憶部42に予め記憶されている複数の評価演算の中からユーザが所望の評価演算を選択できる構成としてもよいし、最適化処理の各段階において生成部14が評価演算を動的に変更する構成としてもよい。
 また、生成部14は、使用する評価指標あるいは重み値を確率的に変更しながら情報の最適化処理を繰り返し実行し、使用した評価指標あるいは重み値と、最終的な改良対象の評価指標の評価値との対応関係を蓄積したデータベースを、記憶部42あるいは他の記憶部に記憶しておいてもよい。良好な評価値が得られた評価指標あるいは重み値が再度選ばれやすくなるように確率を上げることによって、最適化の進行を促進することが可能となる。なお、生成部14は、使用する評価指標あるいは重み値の変更を、複数段階の最適化処理の毎段階の頻度で実行してもよいし、数段階に1回の頻度で実行してもよい。また、生成部14は、使用する評価指標あるいは重み値を毎段階ランダムに変更してもよいし、同じ評価指標あるいは重み値を連続する複数の段階で使用してもよいし、同じ評価指標あるいは重み値を連続しない複数の段階で使用してもよい
 使用する評価指標あるいは重み値の効果的な設定は複数段階の最適化処理の各段階に応じて変化するため、上記のように評価指標あるいは重み値を動的に変更することによって、最適化の進行を促進することが可能となる。
 また、複数の評価指標について同時に改良したい場合には、生成部14は、当該複数の評価指標を、交互に、ランダムに、あるいは所定のルールに従って、使用する評価指標あるいは重み値を変更してもよい。ここで、生成部14は、複数の評価指標の中に目標に到達していない評価指標が存在する場合には、当該評価指標を使用する頻度を上げてもよい。
 さらに、生成部14は、最適化処理の実行途中で、測定対象の測定に使用するセンサを切り替えることによって評価指標を変更してもよい。一例として、生成部14は、まず、測定精度は低いがノイズ耐性が高く短時間での測定が可能な第1センサを使用することによって、粗い最適化を行い、次に、測定精度は高いがノイズ耐性が低く複数回の測定が必要なために測定に長時間を要する第2センサを使用することによって、精細な最適化を行ってもよい。
 さらに、生成部14は、最適化処理の実行途中で、適用する前処理の内容を切り替えることによって評価指標を変更してもよい。例えば、測定された波形から得られる時間領域の測定データと、それを周波数解析することによって周波数領域に変換した測定データとを、切り替えて使用してもよい。
 さらに、生成部14は、最適化処理の実行途中で、調整対象とするパラメータを変更してもよい。
 図22は、情報処理部41が実行する処理の流れを示すフローチャートである。
 まずステップS100において生成部14は、図7のステップS5~S20と同様に、制御パラメータの初期値を設定する。
 次にステップS101において選択部19は、N個の全動作の中から第1段階で実行する代表動作を選択する。
 次にステップS102において制御部18は、図7のステップS25と同様に、選択部19が選択した代表動作を生産装置20に実行させる。
 次にステップS103において取得部11は、図7のステップS30~S35と同様に、代表動作の実行においてセンサ30によって測定された、生産装置20の動作に関する測定データを取得する。
 次にステップS104において判断部13は、図7のステップS40と同様に、取得部11が取得した測定データに基づいて評価指標の評価値を算出する。
 次にステップS105において生成部14は、最適化処理終了条件が満たされているか否かを判定する。
 最適化処理終了条件が満たされていない場合(ステップS105:No)には、次にステップS106において生成部14は、図7のステップS50~S65と同様に、判断部13が算出した評価値に基づいて制御パラメータを更新し、ステップS102以降の処理を繰り返す。
 最適化処理終了条件が満たされている場合(ステップS105:Yes)には、次にステップS107において制御部18は、図21のステップS71と同様に、評価動作を生産装置20に実行させる。
 次にステップS108において生成部14は、図21のステップS72と同様に、評価結果が最適化終了条件を満たすか否かを判定する。
 最適化終了条件が満たされている場合(ステップS108:Yes)には、制御パラメータの最適化処理を終了する。
 最適化終了条件が満たされていない場合(ステップS108:No)には、次にステップS109において生成部14は、最適化アルゴリズム140を用いて、現段階の制御パラメータ最適化処理において算出した複数の評価値に基づいて次段階の制御パラメータ最適化処理における更新候補の制御パラメータの探索範囲を設定する。
 次にステップS110において生成部14は、例えば図7のステップS75と同様に、評価基準(図7の例では代表動作の数)を変更する。次段階の制御パラメータ最適化処理では、ステップS109で設定された探索範囲と、ステップS110で変更された後の評価基準とを用いて、制御パラメータ最適化処理が実行される。
 なお、本実施の形態6においても実施の形態1と同様に、画像生成部16が図9と同様の画像(つまり最適化処理の状況を示す画像)を生成し、表示部17が当該画像を表示してもよい。この場合、図9に示した画像の「最適化段階」に代えて、適用する評価基準の合計数を表示してもよい。また、「代表動作数」に代えて、各段階で適用する評価基準の内容を表示してもよい。また、「最大最適化時間」に代えて、各段階で適用する評価基準を用いた最適化処理の最大実行時間を表示してもよい。また、「最適化を打ち切る整定時間」に代えて、各段階で適用する評価基準を用いた最適化処理の目標性能(例えば目標評価値)を表示してもよい。また、「最小整定時間」に代えて、各段階で適用する評価基準を用いた最適化処理の最良評価値を表示してもよい。
 図23は、生成部14による探索範囲の設定手法を模式的に示す図である。ここでは簡略化のため2つの制御パラメータP1,P2のみに着目している。座標の横軸が制御パラメータP1の値を示しており、縦軸が制御パラメータP2の値を示している。
 第1段階では評価基準V1を用いて制御パラメータ最適化処理が実行され、複数個(この例では6個)の評価値が座標上にプロットされる。プロットされた各評価値は、X個の代表動作によって得られるX個の評価値の中の最悪値である。生成部14は、プロットされた複数個の評価値の中から上位複数の評価値を特定する。図23では、上位複数の評価値は白丸でプロットし、それ以外の評価値は黒丸でプロットしている。生成部14は、CMA-ESの最適化アルゴリズム140を用いて、上位複数の評価値の中心座標と共分散行列とを算出することにより、次段階の探索範囲W1を設定する。上位複数の評価値が広いエリアに分散している場合には広い探索範囲W1が設定され、上位複数の評価値が狭いエリアに集中している場合には狭い探索範囲W1が設定されることになる。
 第2段階では評価基準V1とは異なる評価基準V2を用いて、探索範囲W1に関して制御パラメータ最適化処理が実行され、複数個(この例では6個)の評価値が座標上にプロットされる。生成部14は、上記と同様に、プロットされた複数個の評価値の中から上位複数の評価値を特定し、CMA-ESの最適化アルゴリズム140を用いて、上位複数の評価値の中心座標と共分散行列とを算出することにより、次段階の探索範囲W2を設定する。
 第3段階では評価基準V2とは異なる評価基準V3を用いて、探索範囲W2に関して制御パラメータ最適化処理が実行され、複数個(この例では6個)の評価値が座標上にプロットされる。生成部14は、上記と同様に、プロットされた複数個の評価値の中から上位複数の評価値を特定し、CMA-ESの最適化アルゴリズム140を用いて、上位複数の評価値の中心座標と共分散行列とを算出することにより、次段階の探索範囲W3を設定する。以下、第4段階以降に関しても上記と同様の処理が繰り返し実行され、最終的に最良の評価値を与える制御パラメータP1,P2の値が採用される。
 本実施の形態6によれば、制御パラメータ最適化処理の評価基準を変更しつつ制御パラメータ最適化処理を複数回実行する。このように、評価基準を変更しつつ制御パラメータ最適化処理を繰り返し実行することにより、適正な制御パラメータを効率的に生成することが可能となる。
 また、今回(現段階)の制御パラメータ最適化処理から次回(次段階)の制御パラメータ最適化処理へ制御パラメータの探索範囲Wの設定情報を引き継ぐことにより、次回の制御パラメータ最適化処理において適正な制御パラメータを効率的に探索することが可能となる。
 なお、実施の形態6では進化戦略の一例であるCMA-ESの簡単な実装例を用いて説明を行ったが、より複雑な実装又は他の進化戦略の方式を用いてもよい。
 (実施の形態7)
 本実施の形態7では、制御パラメータ最適化処理の進捗及び動作条件を示す状況情報をユーザへ通知する手法について説明する。生産装置20が実行する各動作は、生産装置20が駆動対象物24を目標位置に移動させる動作である。
 図24は、生産装置20が実行する各動作の実行条件が記述された動作条件情報400の一部を簡略化して示す図である。動作条件情報400は記憶部42に記憶されている。動作条件情報400は、生産装置20が実行する各動作に関する識別情報としてのIDを含む。また、動作条件情報400は、各IDに対応する移動速度、加減速時間(加速時間及び減速時間)、反復回数、待ち時間、及び停止位置に関するユーザ設定項目を含む。なお、動作条件は図24に示した例に限らず、ID、移動量、移動速度、加速時間、及び減速時間の少なくとも一つの項目が含まれていればよい。また、図24には示さない他の項目がさらに含まれていてもよい。ユーザは、入力部44を操作して条件設定情報を入力することにより、各動作の動作条件を任意に設定することができる。また、ユーザは、入力部44を操作して条件設定情報を入力することにより、制御パラメータ最適化処理を継続する最大時間、及び、制御パラメータを更新する最大回数を任意に設定することができる。また、動作条件情報400は、各IDに対応する移動速度及び加減速時間に関するデフォルト設定項目を含む。ユーザが入力部44から条件設定情報を入力しない場合には、移動速度及び加減速時間に関しては各々のデフォルト設定値が使用される。なお、調整対象の装置ごとに異なる動作条件がデフォルト設定されている場合には、ユーザが調整対象の装置を選択する装置選択情報を入力部44から入力することにより、選択された装置に応じたデフォルト設定値が使用される構成としてもよい。
 図25は、ユーザへの状況情報の通知に関連して情報処理部41が実行する処理の流れを示すフローチャートである。
 まずステップS200において取得部11は、記憶部42から動作条件情報400を取得する。
 次にステップS201において画像生成部16は、取得部11が取得した動作条件情報400と、制御パラメータ最適化処理の進捗情報とに基づいて、状況情報を取得する。画像生成部16は、進捗情報を制御部18から取得する。なお、制御部18は、制御パラメータ最適化処理において生産装置20が実行した各動作に関して、実行時刻と動作条件とを含む動作履歴情報をデータベース化して記憶部42に記録する。出力部12は、記憶部42から読み出した動作履歴情報を表示部17に表示又は外部に出力することが可能である。
 動作条件情報400には、条件設定情報によって設定された制御パラメータ最適化処理を継続する最大時間と制御パラメータを更新する最大回数とに関する情報が含まれている。進捗情報には、複数段階の制御パラメータ最適化処理のうち現在実行中の段階を示す情報と、複数の代表動作のうち現在調整中の動作を示す情報とが含まれている。また、進捗情報には、第1段階の制御パラメータ最適化処理が開始されてから現在までの、経過時間(調整開始後経過時間)及び制御パラメータの更新回数(パラメータ更新回数)に関する情報が含まれている。画像生成部16は、最大時間から現在までの調整開始後経過時間を減算することによって最大時間までの残り時間(調整残り時間)を算出し、最大回数から現在までのパラメータ更新回数を減算することによって最大回数までの残り回数(更新残り回数)を算出する。
 次にステップS202において画像生成部16は、状況情報をユーザへ通知するための状況通知画像を生成する。
 図26は、状況通知画像の一例を示す図である。状況通知画像には、経過時間(調整開始後経過時間)及び残り時間(調整残り時間)を示す項目300と、更新回数(パラメータ更新回数)及び残り回数(更新残り回数)を示す項目301と、現在の調整対象動作数(つまり現在の代表動作数)を示す項目302と、代表動作のうち現在調整中の動作に関する動作条件を示す項目303とが含まれている。なお、状況通知画像は図26に示した例に限らず、図26に示した情報の一部が省略されてもよいし、図26には示さない他の情報がさらに含まれてもよい。また、調整開始後経過時間及び調整残り時間と、パラメータ更新回数及び更新残り回数とに関しては、ユーザがその比率を直感的に理解しやすいように、プログレスバーを用いた表示を行ってもよい。
 次にステップS203において画像生成部16は、生成した状況通知画像の画像データを表示部17に入力する。表示部17は、入力された画像データに基づいて、図26に示した状況通知画像を表示する。なお、ユーザへの状況情報の通知の態様は、画像の表示に限らず、スピーカからの音声出力等であっても良い。
 本実施の形態7によれば、状況情報をユーザへの通知のために出力することにより、ユーザは、通知によって制御パラメータ最適化処理の進捗状況又は動作条件等を容易に確認できるため、ユーザの利便性を向上することが可能となる。
 (補足)
 以上のように、本出願において開示する技術の例示として、実施の形態1~7に基づいて説明した。しかしながら、本開示は、これら実施の形態1~7に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態または本変形例に施したものや、異なる実施の形態または変形例における構成要素を組み合わせて構築される形態も、本開示の1つまたは複数の態様の範囲内に含まれてもよい。
 (1)実施の形態1~7において、一例として、制御パラメータ生成装置10、10Aは1台のコンピュータ装置により実現されるとして説明した。しかしながら、制御パラメータ生成装置10、10Aは、同様の機能を実現することができれば、必ずしも1台のコンピュータ装置により実現される例に限定される必要はない。制御パラメータ生成装置10、10Aは、例えば、互いに通信可能な複数台のコンピュータ装置により実現されてもよい。
 (2)本開示の包括的または具体的な態様は、システム、装置、方法、集積回路、プログラムまたはコンピュータ読み取り可能なCD-ROMなどの非一時的な記録媒体で実現されてもよい。また、システム、装置、方法、集積回路、プログラムおよび非一時的な記録媒体の任意な組み合わせで実現されてもよい。例えば、本開示は、制御パラメータ生成装置が行う処理をコンピュータ装置に実行させるためのプログラムとして実現されてもよい。
 本開示は、制御パラメータを生成するシステム等に広く適用可能である。

 

Claims (24)

  1.  複数の制御パラメータに基づいて複数の動作を実行する装置における前記制御パラメータを最適化するための情報処理方法であって、
     情報処理装置が、
     制御パラメータ最適化処理において、前記装置が実行可能な全動作のうち少なくとも一つの動作を含む代表動作を選択し、選択した当該代表動作を前記装置に実行させ、当該代表動作の実行において測定された前記装置の動作に関する測定データを取得し、取得した当該測定データに基づいて所定の評価指標の評価値を算出し、算出した当該評価値に基づいて前記制御パラメータを更新し、
     前記制御パラメータ最適化処理の評価基準を変更しつつ前記制御パラメータ最適化処理を複数回実行する、情報処理方法。
  2.  前記評価基準を変更することは、前記代表動作を変更することを含む、請求項1に記載の情報処理方法。
  3.  前記代表動作を変更することは、前記代表動作に含まれる動作の数を変更することを含む、請求項2に記載の情報処理方法。
  4.  前記動作の数を変更することは、前記動作の数を増やすことを含む、請求項3に記載の情報処理方法。
  5.  前記代表動作を変更することは、前記代表動作に含まれる動作の内容を変更することを含む、請求項2に記載の情報処理方法。
  6.  前記動作の内容を変更することは、前記動作の内容を複雑化することを含む、請求項5に記載の情報処理方法。
  7.  前記代表動作の変更において、前記全動作を類似度に基づいて複数のグループに分類し、当該複数のグループの各グループに含まれる複数の動作の中から前記評価値又はその過去平均値に基づいて要改善動作を特定し、前記複数のグループに関して特定した複数の要改善動作を、次回の前記制御パラメータ最適化処理における前記代表動作として選択する、請求項2に記載の情報処理方法。
  8.  前記評価基準を変更することは、前記評価指標を変更することを含む、請求項1に記載の情報処理方法。
  9.  前記複数の動作の各動作は、前記装置が対象物を目標位置に移動させる動作であり、
     前記評価指標は、前記対象物の位置と前記目標位置との位置偏差が許容範囲内に収束するまでの整定時間を含む、請求項8に記載の情報処理方法。
  10.  前記複数の動作の各動作は、前記装置が対象物を目標位置に移動させる動作であり、
     前記評価指標は、前記対象物の位置と前記目標位置との位置偏差が許容範囲から逸脱する逸脱時間又は位置偏差量の積算値を含む、請求項8に記載の情報処理方法。
  11.  さらに、今回の前記制御パラメータ最適化処理において算出した複数の前記評価値に基づいて、次回の前記制御パラメータ最適化処理における更新候補の前記制御パラメータの探索範囲を設定する、請求項1に記載の情報処理方法。
  12.  さらに、総合評価処理において、前記装置の動作を総合評価するための所定の評価動作を前記装置に実行させ、当該評価動作の実行において測定された前記装置の動作に関する測定データを取得し、取得した当該測定データに基づいて前記評価指標の評価値を算出し、算出した当該評価値に基づいて前記総合評価を行う、請求項1に記載の情報処理方法。
  13.  前記評価動作は、前記全動作である、請求項12に記載の情報処理方法。
  14.  前記評価動作は、前記全動作と当該評価動作の直近の前記代表動作との差分動作である、請求項12に記載の情報処理方法。
  15.  前記評価動作は、前記全動作の中から予め規定された規定動作である、請求項12に記載の情報処理方法。
  16.  さらに、前記総合評価の前記評価結果が所定の終了条件を満たすか否かを判定し、前記評価結果が前記終了条件を満たす場合、前記制御パラメータ最適化処理を終了する、請求項12に記載の情報処理方法。
  17.  前記複数の動作の各動作は、前記装置が対象物を目標位置に移動させる動作であり、
     さらに、
     前記制御パラメータ最適化処理が開始されてからの経過時間、
     前記制御パラメータ最適化処理を継続する最大時間までの残り時間、
     前記代表動作に含まれる前記少なくとも一つの動作のうち現在実行中の動作に関する、識別情報、移動量、移動速度、加速時間、及び減速時間の少なくとも一つを含む動作条件、
     前記代表動作に含まれる動作の数、
     前記制御パラメータの更新回数、及び、
     前記制御パラメータを更新する最大回数までの残り回数、
    の少なくとも一つに関する状況情報をユーザへの通知のために出力する、請求項1に記載の情報処理方法。
  18.  さらに、前記評価基準を変更する度に前記状況情報を更新する、請求項17に記載の情報処理方法。
  19.  さらに、ユーザによって入力された条件設定情報に基づいて、前記最大時間、前記動作条件、及び前記最大回数を設定する、請求項17に記載の情報処理方法。
  20.  前記動作条件は前記装置ごとに予め設定されており、
     さらに、ユーザによって入力された装置選択情報に基づいて、選択された前記装置に応じた前記動作条件を設定する、請求項17に記載の情報処理方法。
  21.  さらに、前記制御パラメータ最適化処理において前記装置が実行した各動作に関して、実行時刻と動作条件とを含む動作履歴情報を記録する、請求項1に記載の情報処理方法。
  22.  情報処理装置が、
     第1評価基準を用いて情報の第1最適化処理を実行し、
     前記第1最適化処理において算出した複数の評価値に基づいて前記情報の探索範囲を設定し、
     設定した前記探索範囲に関して、第2評価基準を用いて前記情報の第2最適化処理を実行する、情報最適化方法。
  23.  複数の制御パラメータに基づいて複数の動作を実行する装置における前記制御パラメータを最適化するための情報処理装置であって、
     選択部、制御部、取得部、算出部、及び更新部を備え、
     制御パラメータ最適化処理において、
     前記選択部は、前記装置が実行可能な全動作のうち少なくとも一つの動作を含む代表動作を選択し、
     前記制御部は、前記選択部が選択した当該代表動作を前記装置に実行させ、
     前記取得部は、当該代表動作の実行において測定された前記装置の動作に関する測定データを取得し、
     前記算出部は、前記取得部が取得した当該測定データに基づいて所定の評価指標の評価値を算出し、
     前記更新部は、前記算出部が算出した当該評価値に基づいて前記制御パラメータを更新し、
     前記制御パラメータ最適化処理の評価基準を変更しつつ前記制御パラメータ最適化処理を複数回実行する、情報処理装置。
  24.  複数の制御パラメータに基づいて複数の動作を実行する装置における前記制御パラメータを最適化するための情報処理装置を、選択手段、制御手段、取得手段、算出手段、及び更新手段として機能させるためのプログラムであって、
     制御パラメータ最適化処理において、
     前記選択手段は、前記装置が実行可能な全動作のうち少なくとも一つの動作を含む代表動作を選択し、
     前記制御手段は、前記選択手段が選択した当該代表動作を前記装置に実行させ、
     前記取得手段は、当該代表動作の実行において測定された前記装置の動作に関する測定データを取得し、
     前記算出手段は、前記取得手段が取得した当該測定データに基づいて所定の評価指標の評価値を算出し、
     前記更新手段は、前記算出手段が算出した当該評価値に基づいて前記制御パラメータを更新し、
     前記制御パラメータ最適化処理の評価基準を変更しつつ前記制御パラメータ最適化処理を複数回実行する、プログラム。
PCT/JP2023/010882 2022-04-21 2023-03-20 情報処理方法、情報最適化方法、情報処理装置、及びプログラム WO2023203933A1 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2022070397 2022-04-21
JP2022-070397 2022-04-21
JP2022070396 2022-04-21
JP2022-070396 2022-04-21

Publications (1)

Publication Number Publication Date
WO2023203933A1 true WO2023203933A1 (ja) 2023-10-26

Family

ID=88419707

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/010882 WO2023203933A1 (ja) 2022-04-21 2023-03-20 情報処理方法、情報最適化方法、情報処理装置、及びプログラム

Country Status (1)

Country Link
WO (1) WO2023203933A1 (ja)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07107766A (ja) * 1993-10-01 1995-04-21 Matsushita Electric Ind Co Ltd サーボゲインパラメータチューニング装置
JPH0922308A (ja) * 1995-07-07 1997-01-21 Matsushita Electric Works Ltd 設備の異常動作検出方法
JPH103301A (ja) * 1996-06-18 1998-01-06 Power Reactor & Nuclear Fuel Dev Corp 複数の制御原理を用いる制御システム
JP2000222377A (ja) * 1999-02-03 2000-08-11 Fujitsu Ltd ダイナミクスを利用してコスト関数の最適値を探索する処理装置
JP2001092511A (ja) * 1999-09-17 2001-04-06 Kawasaki Heavy Ind Ltd ロボットなどの制御ゲイン調整装置
JP2007034781A (ja) * 2005-07-28 2007-02-08 Fuji Electric Fa Components & Systems Co Ltd 位置決め制御装置の制御パラメータ調整方法
JP2018128839A (ja) * 2017-02-08 2018-08-16 オムロン株式会社 制御装置、制御方法、および、制御プログラム
WO2018151215A1 (ja) * 2017-02-20 2018-08-23 株式会社安川電機 制御装置及び制御方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07107766A (ja) * 1993-10-01 1995-04-21 Matsushita Electric Ind Co Ltd サーボゲインパラメータチューニング装置
JPH0922308A (ja) * 1995-07-07 1997-01-21 Matsushita Electric Works Ltd 設備の異常動作検出方法
JPH103301A (ja) * 1996-06-18 1998-01-06 Power Reactor & Nuclear Fuel Dev Corp 複数の制御原理を用いる制御システム
JP2000222377A (ja) * 1999-02-03 2000-08-11 Fujitsu Ltd ダイナミクスを利用してコスト関数の最適値を探索する処理装置
JP2001092511A (ja) * 1999-09-17 2001-04-06 Kawasaki Heavy Ind Ltd ロボットなどの制御ゲイン調整装置
JP2007034781A (ja) * 2005-07-28 2007-02-08 Fuji Electric Fa Components & Systems Co Ltd 位置決め制御装置の制御パラメータ調整方法
JP2018128839A (ja) * 2017-02-08 2018-08-16 オムロン株式会社 制御装置、制御方法、および、制御プログラム
WO2018151215A1 (ja) * 2017-02-20 2018-08-23 株式会社安川電機 制御装置及び制御方法

Similar Documents

Publication Publication Date Title
CN106557075B (zh) 生成最佳的加速/减速的机床
US9891618B2 (en) Program correcting device and program correcting method of industrial robot
CN109163911A (zh) 一种基于改进的蝙蝠算法优化elm的发动机燃油系统故障诊断方法
CN111954582B (zh) 机器学习装置
CN109254562A (zh) 控制装置以及学习装置
WO2023203933A1 (ja) 情報処理方法、情報最適化方法、情報処理装置、及びプログラム
WO2020255370A1 (ja) 加工条件探索装置およびワイヤ放電加工機
JP7141099B2 (ja) 設計パラメータ評価支援方法及びそのプログラム
CN114527642B (zh) 一种基于深度强化学习的agv自动调整pid参数的方法
CN115781082A (zh) 一种标准节自动焊接方法、系统、装置和存储介质
WO2022153936A1 (ja) 機械学習装置
CN114219274A (zh) 一种基于深度强化学习适应机器状态的车间调度方法
WO2021111530A1 (ja) 制御装置、放電加工機、および機械学習装置
JP2020021301A (ja) 訓練データ評価装置、訓練データ評価方法、およびプログラム
EP4120149A1 (en) Learning data generation device, learning device, control device, learning data generation method, learning method, control method, learning data generation program, learning program, and control program
CN111347425B (zh) 机械振动抑制方法、系统及计算机可读存储介质
US20210004717A1 (en) Learning method and recording medium
WO2021090518A1 (ja) 学習装置、情報統合システム、学習方法、及び、記録媒体
WO2022219670A1 (ja) 加工条件設定装置、加工条件設定方法、および放電加工装置
JP7415100B1 (ja) パラメータ調整装置およびパラメータ調整方法
CN116901086B (zh) 一种基于智能算法的工业机器人轨迹优化的控制方法
JP2000222377A (ja) ダイナミクスを利用してコスト関数の最適値を探索する処理装置
US20210341887A1 (en) Information processing device and information processing method
WO2022269664A1 (ja) 加工条件探索装置および加工条件探索方法
CN118143736A (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: 23791586

Country of ref document: EP

Kind code of ref document: A1