Operation control device, robot, operation control system, and operation control method
The action control device and method improve the success rate and safety of robotic operations in non-maintenance environments by using a simulator and machine learning to adjust control commands and satisfy operational constraints.
Patent Information
- Application Number
- PCT/JP2024/022711
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-29
- Filing Date
- 2024-06-24
- Publication Date
- 2025-04-03
AI Technical Summary
Existing learning control methods for robots in non-maintenance environments have a low success rate and lack guaranteed safety, particularly for conditions outside the learning range, which hinders practical application.
An action control device and method that utilizes a simulator to generate state transition information, combines this with machine learning to create learning operation information, and then adjusts control commands to ensure safety and improve success rates by satisfying operational constraints.
The proposed solution ensures the safety of control commands from learning controllers while enhancing the success rate of robotic operations in dynamic environments.
Smart Images

Figure JP2024022711_03042025_PF_FP_ABST
Abstract
Description
Motion control device, robot, motion control system, and motion control method
[0001] The present invention relates to a motion control device, a robot, a motion control system, and a motion control method that can improve the task success rate and safety of learning control.
[0002] In recent years, labor shortages due to a declining birthrate and aging population, as well as work in dangerous areas due to natural disasters, have become social issues. To solve these issues, it is hoped that robots capable of working in unstructured environments such as outdoors and human collaborative spaces will be realized. Development of learning control using machine learning is underway as a robust control method for dealing with variations in environmental conditions (e.g., shape, position, physical properties, etc.) in unstructured environments.
[0003] However, learning control has low task success rates and performance under conditions that are not learned during training (outside the learning range).Furthermore, safety under such conditions (e.g., collision avoidance, abnormal posture avoidance, etc.) is not guaranteed, which is an obstacle to practical application.
[0004] Patent Document 1 proposes a learning method in which a simulator simulates control commands from machine learning, and if the results of the simulation are judged to be good, the simulator outputs control commands to the control object, and if the results are judged to be bad, the simulator stops inputting control commands to the control object, and provides the results as training data for machine learning.
[0005] Furthermore, Non-Patent Document 1 proposes a method of evaluating the future safety of control commands from a learning controller using a simulator, and if the control commands are not safe, correcting the operation to satisfy safety constraints.
[0006] Patent No. 6457421
[0007] K. P. Webersich and M. N. Zeilinger, “Safe exploration of nonlinear dynamical systems: A predictive safety filter for reinforcement.” learning, “arXiv:1812.05506v2, 2019.
[0008] Although the technology disclosed in Patent Document 1 can ensure safety when a control command to a controlled object is determined to be defective, the control is interrupted and the work cannot be continued, resulting in failure.
[0009] Non-Patent Document 1 discloses that if it is determined that the operation of the controlled object based on the control command is unsafe, it is possible to continue the safe operation, but it is not necessarily possible to generate an operation that will make the task successful, and there is a high possibility that the task will fail.
[0010] In view of the above, the present invention aims to provide a motion control device, robot, motion control system, and motion control method that can improve the success rate of tasks while ensuring the safety of control commands from a learning controller.
[0011] In order to solve the above problems, the present invention provides "a motion control device for controlling a control object, comprising: a simulator that uses a control command to the control object to simulate the movement of the control object and create state transition information that shows changes in the state of the control object; an input device that inputs motion constraints imposed on the movement of the control object; a learning motion generator that uses the state transition information to learn by machine learning the relationship between the control command and the state transition information and create learned motion information obtained by machine learning; a simulated motion generator that inputs a changed control command that changes the control command to the simulator and creates simulated motion information using the state transition information corresponding to the control command created by the simulator; and a control command specifier that extracts motion information that satisfies the motion constraints from the learning motion information created by the learning motion generator and the simulated motion information generated by the simulated motion generator, and specifies a control command that corresponds to the extracted motion information."
[0012] The present invention is also described as "a motion control method for controlling a control object using a computer, the computer comprising a simulator that uses a control command to the control object to simulate the movement of the control object and create state transition information that shows changes in the state of the control object, and an input device that inputs motion constraints imposed on the movement of the control object, the computer uses the state transition information to machine learn the relationship between the control command and the state transition information to create learned motion information, a change control command that changes the control command is input to the simulator, simulated motion information is created using the state transition information corresponding to the change control command created by the simulator, motion information that satisfies the motion constraints is extracted from the learned motion information and the simulated motion information, and a control command that corresponds to the extracted motion information is identified."
[0013] The present invention is also described as "a movement control system including a robot and a movement control device that controls the robot, wherein the movement control device comprises: a simulator that uses control commands to the robot to simulate the movement of the robot and creates state transition information that shows changes in the robot's state; an input device that inputs movement constraints imposed on the movement of the robot; a learning movement generator that uses the state transition information to learn by machine learning the relationship between the control command and the state transition information and creates learned movement information obtained by machine learning; a simulated movement generator that inputs a modified control command that modifies the control command to the simulator and creates simulated movement information using the state transition information corresponding to the modified control command that is created by the simulator; and a control command specifier that extracts movement information that satisfies the movement constraints from the learning movement information created by the learning movement generator and the simulated movement information generated by the simulated movement generator and specifies a control command that corresponds to the extracted movement information, and controls the robot according to the control commands determined by the control command specifier."
[0014] According to the present invention, it is possible to achieve the effect of improving the success rate of a task while ensuring the safety of a control command from a learning controller.
[0015] Fig. 1 is a diagram showing an example of the configuration of a motion control device according to a first embodiment of the present invention. Fig. 2 is a diagram showing a processing flow by a motion control device according to a first embodiment of the present invention. Fig. 3 shows examples of learning motion information and simulated motion information in the first embodiment. Fig. 4 is a diagram showing a processing flow by a motion control device according to a second embodiment of the present invention. Fig. 5 is a diagram showing examples of learning motion information and simulated motion information in the second embodiment. Fig. 6 is a diagram showing a method by which a control command identifier identifies a control command. Fig. 7 is a diagram showing a processing flow by a motion control device according to a third embodiment of the present invention.
[0016] Hereinafter, examples of embodiments of the present invention will be described with reference to the accompanying drawings.
[0017] The present invention is not limited to the embodiments, and various numerical values in the embodiments are merely examples. In this specification and drawings, the same components or components having substantially the same functions are denoted by the same reference numerals, and redundant explanations will be omitted.
[0018] 1 is a diagram illustrating an example of the configuration of a control device according to a first embodiment of the present invention. The present invention is a motion control device 2 that controls a control target 1, and the motion control device 2 is composed of a simulator 3, a learning motion generator 4, a simulated motion generator 5, an input device 6, and a control command specifier 7.
[0019] The simulator 3 simulates the control target 1 and its surrounding environment in a virtual space, and estimates the transition of the environmental state (the state of the control target 1 and its surrounding environment) in response to a control command to the control target 1.
[0020] Here, the control object 1, the control command, and the surrounding environment are not limited to a specific object. For example, if the control object 1 is a robot, the control commands can be the angles, angular velocities, and torque amounts of each joint constituting the robot, the position and speed of the end effector, and the surrounding environment can be obstacles or objects to be manipulated that are grasped using the end effector. Alternatively, if the control object 1 is an automobile, the control commands can be the amount of steering angle and acceleration / deceleration, and the surrounding environment can be roads, signs, pedestrians, and the like. Alternatively, if the control object 1 is an aircraft, the control commands can be the control stick and rudder, and the surrounding environment can be the atmosphere or other aircraft, and the like.
[0021] The learning action generator 4 is constructed by training in advance to generate appropriate control commands for the environmental state in order to achieve the control objective of the control target 1. During operation, the learning action generator 4 determines control commands based on the environmental state on the simulator 3, and generates learning action information L from the control commands and information on the environmental state.
[0022] For example, if the control target 1 is a robot, any control objective can be set, such as time-efficient movement or energy-efficient pick-and-place of the target. Any learning method can be used to generate the learning behavior, and for example, Gaussian process regression, deep learning, or reinforcement learning can be adopted.
[0023] The simulated operation generator 5 randomly determines a control command for the control object 1 based on a certain probability distribution to obtain candidates for the control command to be output to the control object 1, and outputs the control command to the control object 1 on the simulator, thereby causing a transition in the environmental state on the simulator. Then, information on the control command and the environmental state is generated as simulated operation information I.
[0024] The probability distribution of the control command is generally given as a normal distribution with arbitrary values for the mean and variance, but any probability distribution is acceptable. When the probability distribution is a normal distribution, the mean can be, for example, the magnitude of the control command output to the controlled object in the previous control cycle. Setting a large value for the variance increases the probability of selecting a control command value that deviates from the mean, and more diverse behavior can be expected to be generated.
[0025] The input device 6 is an interface that accepts input from the user regarding operation constraints, which are constraints imposed on the control commands and environmental conditions in order for the controlled object 1 to achieve the control objective. The number and types of operation constraints can be determined arbitrarily. As operation constraints, for example, a constraint that the controlled object, such as a robot or a car, does not collide with an obstacle, or a constraint that the control command does not exceed a threshold value can be set.
[0026] The control command identification unit 7 uses the learning action information L generated by the learning action generator 4 and the simulated action information I generated by the simulated action generator 5 to identify a control command that satisfies the action constraints given by the input device 6 and enables the control goal to be achieved.
[0027] The following describes a flow of control of the control target 1 by the operation control device 2 shown in Fig. 1. Fig. 2 is a diagram illustrating a control method by the operation control device 2 according to the first embodiment of the present invention.
[0028] 2 , the motion constraints input from the input unit 6 are reflected in the control command specifier 7. In step S2, the state of the control target 1 and the surrounding environment are reflected in the simulator 3. In step S3, the learning motion generator 4 generates learning motion information L based on the environmental information in the simulator 3. At the same time, the simulated motion generator 5 generates simulated motion information I based on the environmental information in the simulator 3.
[0029] Here, the simulated motion generator 5 performs a plurality of simulations to identify a control command in step S5, which will be described later, and generates a plurality of pieces of simulated motion information I. Fig. 3 shows an example of the plurality of pieces of simulated motion information I and learning motion information L obtained from the plurality of simulations.
[0030] In Figure 3, the horizontal axis represents time and the vertical axis represents environmental state, with the upper graph showing that multiple pieces of simulated movement information I (I1, I2, I3) were generated in environmental state 1 and learning movement information L1, and the lower graph showing that multiple pieces of simulated movement information I (I1, I2, I3) were generated in environmental state 2 and learning movement information L1.
[0031] 3 shows only a portion of the information contained in the simulated operation information I, but may include all of the environmental conditions necessary for specifying a control command by the control command specifier 7. Here, the white circles for each piece of operation information indicate the value of the environmental condition in each control cycle, and the black circles indicate the value of the environmental condition when the control goal is achieved.
[0032] The method for identifying control commands from multiple pieces of simulated operation information I (I1, I2, I3) will be described later. However, as the number of pieces of simulated operation information I increases, the quality of the control commands identified in step S5 described later improves, but there is a trade-off in that the required computational resources also increase.
[0033] In step S3, the learning action generator 4 and the simulation action generator 5 can process in parallel, but it is also possible to process one of them first due to a lack of computational resources or other reasons.
[0034] Steps S4 to S7 are processes performed by the control command specifier 7 to which the learning motion information L and simulated motion information I have been input.
[0035] In step S4, it is evaluated whether the learning motion information L satisfies the judgment criterion D1. If the judgment criterion D1 is not satisfied, the process proceeds to step S5, where a control command based on the simulated motion information I is set as a control command to be output to the control object 1. If the judgment criterion D1 is satisfied, the process proceeds to step S6, where a control command based on the learning motion information L is set as a control command to be output to the control object 1.
[0036] The judgment criterion D1 is used to judge whether the control target 1 can achieve the control goal while satisfying the motion constraints with a control command based on the learning motion information L. For example, it can be judged that the evaluation criterion is satisfied when the learning motion information L satisfies the motion constraints and the control target 1 controlled based on the learning motion information L can achieve the control goal within a certain time.
[0037] Alternatively, it can be determined that the evaluation criterion is satisfied if the learning motion information L satisfies the motion constraints and a determiner that has been trained using pairs of the learning motion information L and the success or failure of the control target as training data determines that the control target can be achieved. Although some of the determination methods have been discussed here, any method that can determine whether the control target of the control object 1 can be achieved may be adopted as the determination criterion.
[0038] In step S5, there are several methods for determining a control command based on the simulated motion information I. For example, from the multiple pieces of simulated motion information I (I1, I2, I3) generated in step S3, a piece of simulated motion information I that satisfies the motion constraints and achieves the control goal in the shortest time is selected (I2 in the example of FIG. 3), and the control command of that simulated motion information I is set as the control command to be output to the controlled object 1.
[0039] If, of the four pieces of motion information (L1, I1, I2, I3) shown in Figure 3, only the learning motion information L1 does not satisfy the motion constraints, the control command for the simulated motion information I2, which achieves the control target in the shortest time, is set as the control command to be output to the control object 1.
[0040] Furthermore, if there are evaluation indices other than the time to achieve the control target, it is possible to adopt a method of selecting the simulated operation information I that has the smallest cost that can be calculated for each piece of operation information (L1, I1, I2, I3), and setting the control command of that simulated operation information I as the control command to be output to the control object 1.
[0041] Here, the cost C can be defined as in equation (1): N is the number of evaluation indexes, Cn is the cost for evaluation index n, and wn is the weight for the cost Cn.
[0042]
[0043] The cost Cn is not limited to the time required to achieve the control target, and it is possible to set a cost related to, for example, energy consumption. Furthermore, if a motion constraint is set as the cost Cn, it is possible to guide the user not to select simulated motion information I that does not satisfy the motion constraint. For example, Cn can be set so that the cost is high when the controlled object 1 collides with an obstacle in the surrounding environment. Furthermore, if the weight wn for the cost Cn is set large, the influence of the cost Cn on the cost C can be increased.
[0044] It is also possible to consider more complex operational constraints. For example, by setting a cost Cn related to the stress between the control target 1 and an obstacle, it is possible to consider operational constraints that allow contact between the control target 1 and the obstacle but restrict the application of a load above a threshold.
[0045] The cost and its weight wn can be set by the user by inputting them together with the motion constraints from the input device 6. Alternatively, a method of automatically generating them based on the control objective in the learning motion generator 4 is also conceivable.
[0046] After the processes of steps S5 and S6 are completed, the process proceeds to step S7, where the set control command is output to the controlled object 1.
[0047] As a result of the above, if the learning motion generator 4 can generate control commands that satisfy the motion constraints and achieve the control goal, the motion of the learning motion generator 4 is used, and if not, it becomes possible to generate control commands that satisfy the motion constraints based on the simulated motion generator 5.
[0048] In the first embodiment, a control method was described in which the operation control device shown in Fig. 1 is applied to a case where the state of the surrounding environment does not change. In contrast, in the second embodiment, a case where the operation control device shown in Fig. 1 is applied to a case where the state of the surrounding environment changes dynamically will be described.
[0049] Fig. 4 is a diagram illustrating a control method for Example 2 by a control device according to the present invention. The main difference from the control method of Example 1 shown in Fig. 2 is that dynamic changes in the environment are reflected in the simulator 3 at regular intervals. Therefore, steps S1 to S7 are basically the same as those shown in Fig. 2, and further improvements or additions to the specific processing (mainly improvements associated with repetitive processing) will be shown below each time.
[0050] 4, specifically, if it is determined in step S8 that the control target has not been achieved, the process returns to step S2, and the environmental state at that time is reflected in the simulator 3. This makes it possible to generate a control command based on the updated environmental state even when the environmental state changes dynamically.
[0051] At this time, sensors installed in the control target 1 and the surrounding environment are used to reflect the environmental state in the simulator 3. For example, if the control goal is for the control target 1 to move to a target position while avoiding obstacles, the environmental state of the simulator 3 can be updated by capturing dynamic obstacles (people, other moving objects, objects whose shape changes upon contact, etc.) in the surrounding environment with a camera and estimating the position and speed of the obstacles.
[0052] However, since the environmental state is updated at regular intervals in the control method shown in Fig. 4, it is difficult to perform the simulation for generating the simulated motion information and the learning motion information in step S3 until the control target is achieved. Therefore, in step S3 of the control method shown in Fig. 4, a method (so-called receding horizon control) in which the simulation is performed only up to a finite time into the future (prediction horizon) in each period can be adopted.
[0053] Fig. 5 shows the learning movement information L and simulated movement information L generated in step S3 in the control method of Fig. 4. The vertical and horizontal axes of Fig. 5 are the same as those of Fig. 3, and the information displayed is also the same as that of Fig. 3. In Fig. 5, the time displayed is clearly indicated on the horizontal axis. In the left-hand diagram, the prediction period is from t0 to t0+H, while in the right-hand diagram, the prediction period is from t0+T to t0+T+H.
[0054] Here, the processing of step S3 at the initial time t0 generates learning motion information L and simulated motion information I based on a simulation up to the prediction horizon H ahead, and the processing of step S3 after a period T generates motion information from t0+T up to the prediction horizon H ahead. In step S5 of the first embodiment as well, it is possible to generate a control command using the receding horizon control.
[0055] In steps S4 to S6, which are processed by the control command specifier 7, the control command is specified based on the operation information up to the prediction horizon H shown in Fig. 5. Steps S4 and S6 can be processed in the same manner as in the first embodiment.
[0056] In step S5, as a method for determining a control command based on the simulated motion information I, it is possible to employ a method similar to that of the first embodiment, in which the simulated motion information I that has the smallest calculable cost for each piece of motion information is selected, and the control command for that simulated motion information I is set as the control command to be output to the control object 1. Alternatively, a cost is calculated for each of the multiple pieces of simulated motion information I, and a weighted average of the control commands for each piece of simulated motion information is calculated using the cost, and this value is set as the control command to be output to the control object 1.
[0057] 6 is a diagram illustrating a case where a cost is calculated for each piece of simulated motion information I, and a weighted average based on the cost is used as a control command. A cost-based weight can be calculated by using the inverse of the cost, for example, but the calculation method is not limited to this. In FIG. 6, the cost for the simulated motion information I13 is the smallest, so the weighted average W1 calculated is a value close to the environmental state 1 for the simulated motion information I13.
[0058] Here, the cost C can be defined as in equation (2): Cn,t is the cost related to the evaluation index n at time t.
[0059]
[0060] The cost Cn,t can be set to, for example, costs related to the error from the target position of the controlled object 1 or energy consumption. Furthermore, by setting costs related to operational constraints in the same way as in the first embodiment, it is possible to generate control commands that satisfy the operational constraints.
[0061] As a result, it becomes possible to generate effective control commands using limited computational resources while reflecting dynamic changes in the environmental state in the control.
[0062] In the third embodiment, the control method of the second embodiment shown in FIG. 4 is expanded as shown in FIG. 7 in order to improve the achievement rate of the control target. In the third embodiment, steps S1 to S5, S7, and S8 shown in FIG. 7 are almost the same as those in the control method of the second embodiment shown in FIG. 4, but the processing in the control command specifier 7 of step S6 is different. In FIG. 7 of the third embodiment, the content of step S6 is further detailed as in S61, S62, and S63. Improvements and innovations in the detailed processing of steps S1 to S5, S7, and S8 will be individually explained below.
[0063] In step S4, if the learning motion information does not satisfy the judgment criterion D2, the process proceeds to step S5, where a control command based on the simulated motion information is set as a control command to be output to the control target 1. On the other hand, if the learning motion information satisfies the judgment criterion D2, the process proceeds to step S61.
[0064] The judgment criterion D2 here is a control command based on the learning operation information L, and is used to determine whether the control target can be achieved, regardless of whether the control target 1 satisfies the operation constraints. For example, the evaluation criterion can be satisfied if the control target 1, which is controlled based on the learning operation information L, can achieve the control target within a certain period of time. Alternatively, the evaluation criterion can be satisfied if a judger that has learned using pairs of the learning operation information L and the success or failure of the control target as training data determines that the control target can be achieved. Although some judgment methods have been discussed here, any method that can determine whether the control target of the control target 1 can be achieved may be used as the judgment criterion.
[0065] The process of step S5 is the same as the process of step S35 in FIG. 4, and the control command to be output to the controlled object 1 is specified using only the simulated operation information.
[0066] In step S61, it is determined whether the learning motion information L satisfies the motion constraints. If it is determined that the motion constraints are not satisfied, the process proceeds to step S62, where a control command is identified based on both the learning motion information L and the simulated motion information I, and set as the control command to be output to the control object 1. If it is determined that the motion constraints are satisfied, the process proceeds to step S63, where a control command based on the learning motion information L is set as the control command to be output to the control object 1.
[0067] In step S62, the procedure for identifying the control command is the same as in step S5. For example, the simulated operation information I with the lowest cost is selected from the multiple pieces of simulated operation information I generated in step S3, and the control command for that simulated operation information I is set as the control command to be output to the control object 1.
[0068] Alternatively, a cost is calculated for each of the multiple pieces of simulated motion information I, and a weighted average of the control commands for each piece of simulated motion information is calculated as a weight based on the cost, and this value is set as the control specification to be output to the control target 1. A difference from step S5 is that step S62 sets the cost Cn,t based on the learning motion information to the cost C in order to improve the achievement rate of the control target.
[0069] Specifically, the cost Cn,t in the cost of equation (2) is set to the error between the control commands of the controlled object 1 in the simulated motion information I and the learning motion information L. This makes it possible to specify a control command sequence that corrects only the control command at time t that violates the motion constraint in the learning motion information, while referring to the control command sequence in the learning motion information.
[0070] After the processes of steps S5, S62 and S63 are completed, the process proceeds to step S7, where the set control command is output to the controlled object 1.
[0071] In the fourth embodiment, the controlled object 1 in FIG. 1 is a robot, and the robot 1 incorporates a motion control device 2, which as a whole constitutes a motion control system, thereby acting autonomously.
[0072] In this case, the movement control system includes a robot 1 and a movement control device 2 that controls the robot 1. The movement control device 2 includes a simulator 3 that uses control commands to the robot 1 to simulate the movements of the robot 1 and create state transition information that indicates changes in the state of the robot 1; an input device 6 that inputs movement constraints imposed on the movements of the robot 1; a learning movement generator 4 that uses the state transition information to learn the relationship between the control commands and the state transition information by machine learning and creates learned movement information L obtained by machine learning; a simulated movement generator 5 that inputs a modified control command that has modified the control command to the simulator 3 and creates simulated movement information I using the state transition information corresponding to the modified control command created by the simulator 3; and a control command identifier 7 that extracts movement information that satisfies the movement constraints from the learning movement information created by the learning movement generator 4 and the simulated movement information I generated by the simulated movement generator 5 and identifies a control command that corresponds to the extracted movement information, and controls the robot 1 using the control commands determined by the control command identifier 7.
[0073] 1: Control target (robot) 2: Motion control device 3: Simulator 4: Learning motion generator 5: Simulation motion generator 6: Input device 7: Control command identifier
Claims
1. A motion control device for controlling a control object, comprising: a simulator that uses a control command to the control object to simulate the movement of the control object and creates state transition information that indicates a change in the state of the control object; an input device that inputs motion constraints imposed on the motion of the control object; a learning motion generator that uses the state transition information to machine learn the relationship between the control command and the state transition information and creates learning motion information obtained by machine learning; a simulated motion generator that inputs a changed control command that changes the control command to the simulator and creates simulated motion information using the state transition information created by the simulator that corresponds to the changed control command; and a control command identifier that extracts motion information that satisfies the motion constraints from the learning motion information created by the learning motion generator and the simulated motion information generated by the simulated motion generator, and identifies a control command that corresponds to the extracted motion information.
2. An action control device as described in claim 1, characterized in that the control command identifier identifies a control command from the learning action information if the learning action information satisfies the action constraints and the control goal imposed on the control object can be achieved, and identifies a control command from the simulated action information if this is not the case.
3. A motion control device as claimed in claim 1, characterized in that the simulated motion generator creates a plurality of pieces of simulated motion information, and the control command identifier identifies a control command that satisfies the motion constraints from the plurality of pieces of simulated motion information.
4. A motion control device according to claim 1, characterized in that the state of the controlled object of the simulator is updated at a constant cycle based on sensor information.
5. A motion control device as described in claim 1, wherein the learning motion generator uses the state transition information to create the learning motion information up to a certain time into the future, inputs the change control command to the simulator, and the simulated motion generator creates the simulated motion information up to a certain time into the future.
6. An action control device as described in claim 1, wherein the control command identifier identifies the control command from the simulated action information when a control goal imposed on the control object cannot be achieved regardless of whether the learning action information satisfies the action constraint, identifies the control command from the learning action information when the action constraint is satisfied and the control goal can be achieved, and identifies the control command from the simulated action information and the learning action information when the action constraint is not satisfied but the control goal can be achieved.
7. A motion control method for controlling a control object using a computer, the computer comprising a simulator that uses a control command for the control object to simulate the movement of the control object and creates state transition information that indicates a change in the state of the control object, and an input device for inputting motion constraints imposed on the motion of the control object, the motion control method comprising the steps of: using the state transition information, the computer performs machine learning to learn the relationship between the control command and the state transition information to create learned motion information; inputting a changed control command that changes the control command to the simulator; creating simulated motion information using the state transition information created by the simulator that corresponds to the changed control command; extracting motion information that satisfies the motion constraints from the learned motion information and the simulated motion information; and identifying a control command that corresponds to the extracted motion information.
8. A robot controlled by the motion control device according to claim 1.
9. A motion control system including a robot and a motion control device that controls the robot, wherein the motion control device comprises a simulator that uses control commands for the robot to simulate the movement of the robot and creates state transition information that indicates changes in the state of the robot; an input device that inputs motion constraints imposed on the motion of the robot; a learning motion generator that uses the state transition information to learn by machine learning the relationship between the control command and the state transition information and creates learning motion information obtained by machine learning; a simulated motion generator that inputs a modified control command that modifies the control command to the simulator and creates simulated motion information using state transition information created by the simulator that corresponds to the modified control command; and a control command specifier that extracts motion information that satisfies the motion constraints from the learning motion information created by the learning motion generator and the simulated motion information generated by the simulated motion generator and specifies a control command corresponding to the extracted motion information, and controls the robot according to the control commands determined by the control command specifier.
Citation Information
Patent Citations
Autonomous learning robot device and method for generating operations of autonomous learning robot device
JP2020028950A
Robot behavior planning system, robot system, robot work verification system, and robot behavior planning method
WO2021044583A1
Machine learning data generation device, machine learning device, work system, computer program, machine learning data generation method, and method for manufacturing work machine
WO2021085345A1