Movement path determination system, autonomous mobile device, movement path determination method, and program
By combining learning-based and non-learning-based algorithms and dynamically switching to determine the movement path, the problem of insufficient path accuracy in existing technologies is solved, and more efficient path planning is achieved.
Patent Information
- Application Number
- CN202480016992.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-03-15
- Filing Date
- 2024-03-05
- Publication Date
- 2025-10-21
AI Technical Summary
In existing technologies, learning-based algorithms often fail to ensure the accuracy of movement paths, especially in complex environments where interference from unknown moving objects is difficult to avoid.
A hybrid algorithm system is adopted, which combines a learning-based first algorithm and a non-learning-based second algorithm, and dynamically switches according to changes in the surrounding environment, using the learned model or predetermined rules to determine the movement path.
It improves the accuracy of path determination, especially when there are unknown moving objects or environmental changes, and can more accurately plan collision-avoiding paths.
Smart Images

Figure CN120826587A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a movement path determination system, an autonomous mobile device, a movement path determination method, and a program. Background Art
[0002] Patent Document 1 provides a path determination device, etc., that can determine a robot's path even in crowded traffic environments, allowing an autonomous mobile robot to smoothly move to its destination while avoiding interference with other road users. The path determination device uses a CNN to determine a provisional movement speed command v_cnn to avoid interference with other road users. Assuming the robot moves at the provisional movement speed command v_cnn from its current position, the device uses a dynamic linear asymmetry (DWA) to determine the robot's movement speed command v so that an objective function G(v), which includes the distance dist to the nearest road user and the robot's provisional movement speed command v_cnn as independent variables, reaches its maximum value.
[0003] Prior art literature
[0004] Patent Literature
[0005] Patent Document 1: International Publication No. 2020 / 136977 Summary of the Invention
[0006] Technical problem to be solved by the invention
[0007] The path determination device disclosed in Patent Document 1 uses a CNN to determine a path (travel path). Generally, in learning-based algorithms using such learned models, the optimal path is not always determined. This is one of the reasons for the reduced accuracy of the travel path determination.
[0008] The present disclosure provides a movement path determination system, an autonomous mobile device, a movement path determination method, and a program capable of improving the accuracy of determining a movement path.
[0009] Technical solutions to technical problems
[0010] One aspect of the present disclosure relates to a movement path determination system including a calculation circuit having a first mode and a second mode. In the first mode, the calculation circuit determines the movement path of an autonomous mobile device using a first learning-based algorithm that employs a learned model, wherein the learned model is learned to output output data related to the movement path in response to input data related to a surrounding condition of the autonomous mobile device. In the second mode, the calculation circuit determines the movement path using a second non-learning-based algorithm that employs a predetermined movement path determination rule. The calculation circuit has the following function: when the surrounding condition is a surrounding condition learned by the learned model, the calculation circuit executes the first mode; when the surrounding condition is not the learned surrounding condition, the calculation circuit executes the second mode.
[0011] An autonomous mobile device according to one aspect of the present disclosure includes: the aforementioned movement path determination system; a sensor system for acquiring surrounding conditions of the autonomous mobile device; and a movement mechanism for moving along the movement path determined by the movement path determination system.
[0012] One aspect of the present disclosure relates to a method for determining a moving path, which is executed by a computing circuit having access to a first learning-based algorithm that employs a learned model and a second non-learning-based algorithm that employs a predetermined moving path determination rule. The learned model is learned to output, in response to input data related to the surrounding conditions of the autonomous mobile device, output data related to the moving path of the autonomous mobile device. In the method for determining a moving path, a determination is made based on whether the surrounding conditions are the learned surrounding conditions. If the surrounding conditions are the learned surrounding conditions, the first algorithm is used to determine the moving path, and if the surrounding conditions are not the learned surrounding conditions, the second algorithm is used to determine the moving path.
[0013] A program according to one aspect of the present disclosure is a program for causing a calculation circuit to execute the above-described movement path determination method.
[0014] Effects of the Invention
[0015] Aspects of the present disclosure can improve the accuracy of determining a movement path. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] Figure 1 This is a block diagram of the autonomous mobile device according to the first embodiment.
[0017] Figure 2This is a block diagram of an example of an inference program for a learned model according to the first embodiment.
[0018] Figure 3 This is an explanatory diagram of a first example of a movement path based on the second algorithm according to the first embodiment.
[0019] Figure 4 This is an explanatory diagram of a second example of a movement path based on the second algorithm according to the first embodiment.
[0020] Figure 5 This is an explanatory diagram of a first example of a movement path based on the first algorithm according to the first embodiment.
[0021] Figure 6 This is an explanatory diagram of a second example of a movement path based on the first algorithm according to the first embodiment.
[0022] Figure 7 This is a flowchart of determining a movement route of the autonomous mobile device according to the first embodiment.
[0023] Figure 8 This is an explanatory diagram of an example of a movement path of the autonomous mobile device according to the first embodiment.
[0024] Figure 9 This is a flowchart of determining a movement route of an autonomous mobile device according to the second embodiment.
[0025] Figure 10 This is an explanatory diagram of an example of a movement path based on the first algorithm according to the second embodiment.
[0026] Figure 11 This is an explanatory diagram of a first example of comparison of movement paths of first input data and second input data according to the second embodiment.
[0027] Figure 12 This is an explanatory diagram of a second example of comparison of movement paths of first input data and second input data according to the second embodiment.
[0028] Figure 13 This is a flowchart of determining a movement route of an autonomous mobile device according to the third embodiment.
[0029] Figure 14 This is a flowchart of determining a movement route of an autonomous mobile device according to the fourth embodiment. DETAILED DESCRIPTION
[0030] [1. Implementation Method]
[0031] Below, as appropriate, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, the following embodiments are examples for illustrating the present disclosure and are not intended to limit the present disclosure to the following contents (for example, the shape, size, configuration, etc. of each component). As for positional relationships such as up, down, left, and right, unless otherwise specified, they are based on the positional relationships shown in the accompanying drawings. The figures described in the following embodiments are schematic diagrams, and the ratios of the sizes and thicknesses of the components in the figures may not necessarily reflect the actual size ratios. In addition, the size ratios of the elements are not limited to the ratios shown in the accompanying drawings.
[0032] It should be noted that in the following description, when there are multiple components that need to be distinguished from each other, prefixes such as "first" and "second" are added to the names of the components. However, when the components can be distinguished from each other by the figure marks attached to the components, prefixes such as "first" and "second" are sometimes omitted for the sake of readability.
[0033] [1.1 Implementation Method 1]
[0034] [1.1.1 Structure]
[0035] Figure 1 This is a block diagram of an autonomous mobile device 1 according to Embodiment 1. Autonomous mobile device 1 determines its own movement path based on surrounding conditions. Examples of autonomous mobile device 1 include AMRs (Autonomous Mobile Robots), mobile manipulators, electric wheelchairs, and autonomous driving devices that assist people (e.g., the visually impaired).
[0036] The autonomous mobile device 1 includes a sensor system 2 , a mobile mechanism 3 , and a mobile path determination system 4 .
[0037] The sensor system 2 acquires information indicating the surrounding conditions of the autonomous mobile device 1. The surrounding conditions may include the presence of a mobile object in the direction of movement of the autonomous mobile device 1. The mobile object is an object that affects the determination of the movement path of the autonomous mobile device 1. From another perspective, the mobile object is an object that the autonomous mobile device 1 should avoid colliding with. Generally, the mobile object is visually identifiable. The state of the mobile object may include a moving state and a stopped state. The mobile object may be able to move non-autonomously, for example, by being operated by a person, or may be able to move autonomously. In this embodiment, the mobile object is a person (for example, a pedestrian). Below, "mobile object" is sometimes expressed as "person", but the purpose is not to limit the mobile object to a person, but simply to avoid redundancy and make the description clear and easy to understand. Therefore, the mobile object is not limited to a person, but may also be a living thing such as an animal other than a person. The mobile object is not limited to a living thing, but may also be a non-living thing. Examples of non-living things include vehicles such as two-wheeled vehicles, wheelchairs, cars, ships, airplanes, and moving objects including drones. The mobile object may also include AMR, AGV, forklift, mobile manipulator, autonomous driving equipment for assisting the visually impaired, etc. The mobile object is not limited to the entire object, but may also be a part of the object.
[0038] The information about the surrounding conditions acquired by the sensor system 2 may include images of the surrounding conditions or distance data. The image of the surrounding conditions may include, for example, an image of the moving direction of the autonomous mobile device 1. The image of the moving direction of the autonomous mobile device 1 may include, for example, an image in front of the autonomous mobile device 1. The image may include a still image or a dynamic image. The sensor system 2 may include an image sensor for acquiring data on the image of the surrounding conditions. The image sensor is not particularly limited, but is preferably capable of acquiring the depth of the surrounding conditions, and is preferably an RGBD camera or a stereo camera. In the case where the image sensor is a monocular RGB camera, the sensor system 2 may include a Lidar in order to acquire the depth of the surrounding conditions. The distance of the surrounding conditions may include, for example, the distance to an object located around the autonomous mobile device 1. The sensor system 2 may include a distance sensor for acquiring data on the distance of the surrounding conditions. The distance sensor is not particularly limited, but is preferably a Lidar.
[0039] The mobile mechanism 3 is a mechanism that enables autonomous mobility of the autonomous mobility device 1. In particular, the mobile mechanism 3 is a mechanism that enables autonomous mobility of the autonomous mobility device 1 within a horizontal plane. There are various types of mobile mechanisms 3. In this embodiment, the mobile mechanism 3 is a wheel-type structure. The mobile mechanism 3 includes a plurality of wheels, including one or more drive wheels, and a motor that rotates the one or more drive wheels. The mobile mechanism 3 may also be a bipedal or leg-type structure rather than a wheel-type structure.
[0040] The movement path determination system 4 determines the movement path of the autonomous mobile device 1 based on the surrounding conditions of the autonomous mobile device 1. The movement path determination system 4 includes an interface 5, a storage device 6, and a calculation circuit 7.
[0041] The interface 5 is used to input information to the mobile path determination system 4 and output information from the mobile path determination system 4. The interface 5 includes an input and output device 51 and a communication device 52. The input and output device 51 has the function of being an input device for inputting information from the user and an output device for outputting information to the user. The input and output device 51 has one or more human-machine interfaces. Examples of human-machine interfaces include input devices such as keyboards, pointing devices (mouse, trackball, etc.), touch pads, output devices such as displays, speakers, and touch panels. The communication device 52 is communicatively connected to an external device or system. In this embodiment, the communication device 52 is used to communicate with the sensor system 2 and the mobile mechanism 3 via a communication network. The communication device 52 has one or more communication interfaces. The communication device 52 can be connected to a communication network and has the function of communicating via the communication network. The communication device 52 complies with a communication protocol. The communication protocol can be selected from various well-known wired and wireless communication standards.
[0042] The storage device 6 is used to store information used by the arithmetic circuit 7 and information generated by the arithmetic circuit 7. The storage device 6 includes one or more storage units (non-transitory storage media). The storage unit may be, for example, a hard disk drive, an optical drive, or a solid-state drive (SSD). Furthermore, the storage unit may be built-in, external, or NAS (network-attached storage).
[0043] The information stored in the storage device 6 includes the first algorithm 8, the second algorithm 9, and the auxiliary information 10. The first algorithm 8, the second algorithm 9, and the auxiliary information 10 do not need to be stored in the storage device 6 all the time, but only need to be stored in the storage device 6 when the operation circuit 7 requires them.
[0044] The first algorithm 8 is a learning-based algorithm using a learned model 80. The learned model 80 is learned so as to output output data related to the movement path of the autonomous mobile device 1 in response to input data related to the surrounding conditions of the autonomous mobile device 1.
[0045] The input data specifically relates to the surrounding conditions of a mobile object around the autonomous mobile device 1. The input data includes at least one of autonomous mobile device 1's own data and partner data regarding the mobile object. The own data includes at least one of the position and posture of the autonomous mobile device 1. The partner data includes at least one of the position, posture, and skeleton of the mobile object.
[0046] Input data is determined using images of the surroundings of the autonomous mobile device 1 and distance data obtained from the sensor system 2. For example, the user's data is determined based on data extracted from the distance data of the surroundings of the autonomous mobile device 1 obtained by the sensor system 2 using a technology for estimating the user's position. The other party's data is determined based on data extracted from the image data of the surroundings of the autonomous mobile device 1 obtained by the sensor system 2 using image processing technology such as skeleton estimation technology or facial pose estimation technology.
[0047] A mobile object is one for which control of movement or controlled movement is not known in advance. “Control of movement is not known in advance” means that the mobile object detection system 4 does not have information on how to control the movement of the mobile object (for example, the rules of the movement of the mobile object). “Control of movement is not known in advance” means that the mobile object detection system 4 does not have information on what kind of movement the mobile object is performing (for example, the movement path of the mobile object itself). In other words, a mobile object for which control of movement or controlled movement is not known in advance can be said to be a mobile object whose movement path is unknown (undeterminable) to the autonomous mobile device 1. From another perspective, a mobile object for which control of movement or controlled movement is not known in advance is a mobile object detected by the autonomous mobile device 1 other than “a mobile object for which control of movement or controlled movement is known in advance”. For example, “a mobile object for which control of movement or controlled movement is known in advance” can be a door device that performs a prescribed opening and closing action and is arranged at a place where the autonomous mobile device 1 moves. In addition, even if it is the same moving object, if the moving object is detected from a long distance and the moving path of the moving object is predetermined, it can be regarded as "a moving object for which control of movement or controlled moving action has been mastered in advance." On the other hand, if the moving object suddenly appears at a close distance and the moving path of the moving object has not yet been determined, it can be regarded as "a moving object for which control of movement or controlled moving action has not been mastered in advance."
[0048] The output data is particularly related to the shortest movement path that avoids collision with a mobile object. The output data includes information for determining the movement path of the autonomous mobile device 1. The output data regarding the movement path includes a movement target value of the autonomous mobile device 1 as an example of information for determining the movement path of the autonomous mobile device 1. The movement target value of the autonomous mobile device 1 may include at least one of a target position and a target posture of the autonomous mobile device 1.
[0049] In this way, the learned model 80 has learned the shortest movement path that avoids collision with a moving object in a surrounding situation where a moving object exists around the autonomous mobile device 1. In the learned model 80, the learned surrounding situation is a surrounding situation where a moving object exists around the autonomous mobile device 1. In particular, in this embodiment, the surrounding situation where a moving object exists around the autonomous mobile device 1 corresponds to a situation where the autonomous mobile device 1 intersects with the moving object.
[0050] Figure 2 This is a block diagram of an example of an inference program for a learned model 80. The learned model 80 receives input data D1 and outputs output data D2. Input data D1 includes data I11 indicating the position of the autonomous mobile device 1, data I12 indicating the posture of the autonomous mobile device 1, data I21 indicating the position of a mobile object, data I22 indicating the body posture of the mobile object, and data I23 indicating the facial posture of the mobile object. Output data D2 includes data O21 indicating the target position of the autonomous mobile device 1 and data O12 indicating the target posture of the autonomous mobile device 1.
[0051] The learned model 80 includes first to fifth network mechanisms 811 to 815 , first to fifth attention mechanisms 821 to 825 , a combining unit 83 , and an output unit 84 .
[0052] The first to fifth network structures 811 to 815 extract features from the time-series data I11 to I15, respectively. The first to fifth network structures 811 to 815 include, for example, a recurrent neural network (RNN) architecture such as a long short-term memory (LSTM) or a gated recurrent unit (GRU).
[0053] The first to fifth attention mechanisms 821 to 825 are connected to the first to fifth network mechanisms 811 to 815, respectively, and include a time-series attention mechanism. Thus, for example, from the chronologically ordered data I11, feature quantities of the data I11 at the most important time points are extracted and input to the combining unit 83.
[0054] The combining unit 83 inputs the feature values of the data I11, I21, and I21 to I23 to the output unit 84. The combining unit 83 inputs the feature values of the data I11, I21, and I21 to I23 at the time points considered most important from the first to fifth attention mechanisms 821 to 825 to the output unit 84.
[0055] The output unit 84 outputs the output data D2 based on the feature amount from the combining unit 83. The output unit 84 includes, for example, a fully connected layer. The fully connected layer includes, for example, a normalized exponential (softmax) function.
[0056] The first algorithm 8 inputs input data D1 into the learned model 80 and outputs output data D2 from the learned model 80. The output data D2 includes data O21 indicating the target position of the autonomous mobile device 1 and data O12 indicating the target posture of the autonomous mobile device 1. Using the first algorithm 8, the target position and posture of the autonomous mobile device 1 can be determined based on the position and posture of the autonomous mobile device 1 and the position, body posture, and facial posture of the mobile object. Therefore, the movement path of the autonomous mobile device 1 can be determined.
[0057] The second algorithm 9 is a non-learning-based algorithm that uses a predetermined rule for determining a movement path. The second algorithm 9 uses the starting point (current position), the destination point (end point position), the map information (map information) around the autonomous mobile device 1, and the results of the movement prediction of the mobile body existing around the autonomous mobile device 1 as input, and calculates the shortest path from the starting point to the destination point as output. As a method for calculating the shortest path, a search-based method can be used. The shortest path from the starting point to the destination point is set so as not to collide with the mobile body, and therefore can be changed according to the results of the movement prediction of the mobile body. The algorithm for setting the shortest path and the algorithm for predicting the movement of the mobile body can apply a conventionally known algorithm.
[0058] The auxiliary information 10 may include information required for determining the movement path using the first algorithm 8 or the second algorithm 9. In this embodiment, the auxiliary information 10 may include a mobile object with a pre-registered starting point, destination, map information, and movement path. The mobile object with a pre-registered starting point, destination, and movement path may be provided in advance. The map information may be provided in advance or automatically generated using the sensor system 2.
[0059] The arithmetic circuit 7 is a circuit that controls the operation of the movement path determination system 4. The arithmetic circuit 7 is connected to the interface 5 and can access the storage device 6 (that is, can access the first algorithm 8, the second algorithm 9, and the auxiliary information 10). The arithmetic circuit 7 can be implemented, for example, by a computer system including one or more processors (microprocessors) and one or more memories. The functions of the arithmetic circuit 7 are realized by executing a program (stored in one or more memories or storage devices 6) by one or more processors. Here, the program is pre-recorded in the storage device 6, but it can also be provided via an electrical communication line such as the Internet, or recorded on a non-temporary recording medium such as a memory card.
[0060] The arithmetic circuit 7 performs a movement path determination process for determining the movement path of the autonomous mobile device 1. The arithmetic circuit 7 has a first mode and a second mode for the movement path determination process. In the first mode, the movement path is determined using a first algorithm 8. In the second mode, the movement path is determined using a second algorithm 9.
[0061] Reference Figure 3 and Figure 4 , the determination of the moving path based on the second algorithm 9 is explained. Figure 3 and Figure 4 The autonomous mobile device 1 is shown as moving from a starting point P1 to a destination point P2 in the facility 100 .
[0062] Figure 3 This is an explanatory diagram of a first example of a movement path based on the second algorithm 9. In this first example, there is no mobile object 200 around the autonomous mobile device 1. Therefore, the second algorithm 9 is not affected by the results of the movement prediction of the mobile object 200 and determines the shortest path from the starting point P1 to the destination point P2 as the movement path M11.
[0063] Figure 4 This diagram illustrates a second example of a movement path based on second algorithm 9. In this second example, a mobile object 200 exists around autonomous mobile device 1. Based on the results of the movement prediction for mobile object 200, second algorithm 9 determines movement path M12 as the shortest path from starting point P1 to destination point P2 that avoids area R1, where there is a potential collision with mobile object 200. Movement path M12 bypasses area R1 and is therefore longer than movement path M11.
[0064] The larger the area R1, the more likely movement path M12 is to be longer than movement path M11. The size of area R1 is likely to depend on the accuracy of the movement prediction for mobile object 200. The lower the accuracy of the movement prediction for mobile object 200, the larger area R1 becomes, and movement path M12 may be set to avoid area R1 and take a longer route. In other words, if the accuracy of the movement prediction for mobile object 200 is low, a movement path is generated that distances itself from mobile object 200, taking into account the risk of collision.
[0065] Thus, when there are no mobile objects 200 around the autonomous mobile device 1, the second algorithm 9 is likely to be able to accurately determine the movement path of the autonomous mobile device 1. On the other hand, when there are mobile objects 200 around the autonomous mobile device 1, the second algorithm 9 is likely to be able to accurately determine the movement path of the autonomous mobile device 1, as it is easily affected by the accuracy of the movement prediction of the mobile object 200. In other words, the second algorithm 9 tends to be highly efficient when there are no mobile objects 200 around the autonomous mobile device 1, but its efficiency tends to decline when the accuracy of the movement prediction of the mobile object 200 is low.
[0066] Reference Figure 5 and Figure 6 , the determination of the moving path based on the first algorithm 8 is explained. Figure 5 and Figure 6 and Figure 3 and Figure 4 Similarly, a case where the autonomous mobile device 1 moves from the starting point P1 to the destination point P2 in the facility 100 is shown.
[0067] Figure 5 This diagram illustrates a first example of a movement path based on first algorithm 8. In this first example, a mobile object 200 exists around autonomous mobile device 1. First algorithm 8 uses learned model 80 to determine movement path M21. As described above, learned model 80 has learned the shortest movement path that avoids collision with mobile object 200 under the surrounding conditions of autonomous mobile device 1. Therefore, movement path M21 based on first algorithm 8 is more likely to be shorter than movement path M12 based on second algorithm 9.
[0068] Figure 6This is an explanatory diagram of a second example of a movement path based on the first algorithm 8. In the second example, there is no mobile object 200 around the autonomous mobile device 1. In the absence of the mobile object 200, the first algorithm 8 cannot input information about the mobile object 200 (position, body posture, and facial posture) into the learned model 80. The surrounding conditions without the mobile object 200 are unlearned surrounding conditions for the learned model 80. In this case, the first algorithm 8 determines a movement path M22 that is longer than the movement path M21, or fails to complete the task of determining the movement path depending on the situation. In other words, the first algorithm 8 based on learning does not necessarily always output the optimal (short-takt time) movement path. In particular, since the first algorithm 8 uses the learned model 80, the process of generating output data is inherently a black box. In addition, the accuracy of the learned model 80 may depend on the type and number of learning data sets used for machine learning of the learned model 80. If there is insufficient data, an inappropriate movement path may be generated.
[0069] Thus, when the surrounding conditions of the autonomous mobile device 1 are learned by the learned model 80, the first algorithm 8 is likely to be able to accurately determine the movement path of the autonomous mobile device 1. On the other hand, when the surrounding conditions of the autonomous mobile device 1 are not learned by the learned model 80 (that is, when the surrounding conditions are unlearned), the first algorithm 8 is likely to be able to accurately determine the movement path of the autonomous mobile device 1. In this embodiment, the first algorithm 8 tends to be highly efficient when there is a mobile object 200 around the autonomous mobile device 1, but to be less efficient when there is no mobile object 200 around the autonomous mobile device 1.
[0070] The calculation circuit 7 separately uses the first algorithm 8 and the second algorithm 9 when determining the movement path of the autonomous mobile device 1 . Figure 7 This is a flowchart of determination of a movement route executed by the arithmetic circuit 7 of the autonomous mobile device 1 .
[0071] The calculation circuit 7 acquires the surrounding conditions from the sensor system 2 ( S11 ).
[0072] Based on the surrounding conditions, the calculation circuit 7 determines whether a moving object exists around the autonomous mobile device 1 (S12). For example, the determination of the presence of a moving object is performed using images and distance data of the surrounding conditions of the autonomous mobile device 1 obtained from the sensor system 2. In this embodiment, the surrounding conditions in which a moving object exists around the autonomous mobile device 1 are considered learned surrounding conditions. Therefore, step S12 is equivalent to determining whether the surrounding conditions are learned surrounding conditions.
[0073] If the presence of a moving object is confirmed around autonomous mobile device 1 (S12: Yes), arithmetic circuit 7 executes the first mode. In the first mode, arithmetic circuit 7 selects first algorithm 8 (S13) and uses first algorithm 8 to determine the movement path of autonomous mobile device 1 (S14). This means that, in this embodiment, the movement path is determined using first algorithm 8 after confirming that the surrounding conditions have been learned.
[0074] If it is determined that there are no moving objects around autonomous mobile device 1 (S12: No), arithmetic circuit 7 executes the second mode. In the second mode, arithmetic circuit 7 selects second algorithm 9 (S15) and uses second algorithm 9 to determine the movement path of autonomous mobile device 1 (S16). This means that in this embodiment, the movement path is determined using second algorithm 9 after confirming that the surrounding conditions are not learned.
[0075] The calculation circuit 7 drives the moving mechanism 3 based on the determined moving path ( S17 ).
[0076] Then, the process returns to step S11, and the arithmetic circuit 7 again determines which algorithm to select between the first algorithm 8 and the second algorithm 9. Here, the decision on switching between the first algorithm 8 and the second algorithm 9 can be performed at intervals of, for example, 1 second.
[0077] Figure 8 It is an explanatory diagram of an example of a movement path of the autonomous mobile device 1 . Figure 8 The autonomous mobile device 1 is shown as moving from a starting point P1 to a destination point P2 in the facility 110 .
[0078] like Figure 8As shown, a narrow passage 120 exists in facility 110. From the perspective of autonomous mobile device 1, a mobile object 200 is located ahead of passage 120. In narrow passage 120, autonomous mobile device 1 is highly likely to intersect with mobile object 200. At starting point P1, computation circuit 7 determines that mobile object 200 is located around autonomous mobile device 1. Therefore, computation circuit 7 selects first algorithm 8 and uses it to determine a movement path M1 for autonomous mobile device 1. While autonomous mobile device 1 determines that mobile object 200 is located around autonomous mobile device 1, autonomous mobile device 1 moves along movement path M1 determined by first algorithm 8 and reaches point P3. At point P3, the intersection with mobile object 200 ends. At point P3, computation circuit 7 determines that mobile object 200 is no longer located around autonomous mobile device 1. Therefore, computation circuit 7 selects second algorithm 9 and uses it to determine a movement path M2 for autonomous mobile device 1. While it is determined that there is no mobile object 200 around the autonomous mobile device 1 , the autonomous mobile device 1 moves along the movement path M2 determined by the second algorithm 9 and reaches the destination point P2 .
[0079] The movement path determination system 4 determines a movement path M1 using a first algorithm 8 during a period T1 when the autonomous mobile device 1 moves from the starting point P1 to the point P3 , and determines a movement path M2 using a second algorithm 9 during a period T2 when the autonomous mobile device 1 moves from the point P3 to the destination point P2 .
[0080] In this manner, path determination system 4 determines the path of autonomous mobile device 1 by selecting, from between first learning-based algorithm 8 and second non-learning-based algorithm 9, the algorithm that can more accurately determine the path of autonomous mobile device 1, based on the surrounding conditions of autonomous mobile device 1. Consequently, path determination system 4 can improve the accuracy of path determination.
[0081] [1.1.2 Effects, etc.]
[0082] The above-described path determination system 4 includes a calculation circuit 7 that has a first mode for determining the path of an autonomous mobile device 1 using a first learning-based algorithm 8 that employs a learned model 80. The learned model 80 is learned to output output data D2 related to the path in response to input data D1 related to the surrounding conditions of the autonomous mobile device 1; and a second mode for determining the path using a second non-learning-based algorithm 9 that employs a predetermined path determination rule. The calculation circuit 7 has the function of executing the first mode when the surrounding conditions have been learned by the learned model 80, and executing the second mode when the surrounding conditions have not been learned. This configuration can improve the accuracy of path determination.
[0083] In the movement path determination system 4, the learned surrounding conditions are those in which the mobile object 200 exists around the autonomous mobile device 1. This configuration can improve the accuracy of determining the movement path when the mobile object 200 exists around the autonomous mobile device 1.
[0084] In the movement path determination system 4, the moving object 200 is a moving object whose movement control or controlled movement action is not known in advance. This configuration can improve the accuracy of determining the movement path when an unknown moving object exists in the movement path.
[0085] In the movement path determination system 4, a determination rule is set such that the shortest path from the current position to the destination point is determined as the movement path based on the current position of the autonomous mobile device 1 and the destination point of the autonomous mobile device 1. This configuration can improve the accuracy of movement path determination when there are no mobile objects 200 around the autonomous mobile device 1.
[0086] The autonomous mobile device 1 described above includes a movement path determination system 4 , a sensor system 2 for acquiring the surrounding conditions of the autonomous mobile device 1 , and a movement mechanism 3 for moving along the movement path determined by the movement path determination system 4 .
[0087] The path determination system 4 described above can be said to execute the following path determination method. This path determination method is executed by a calculation circuit 7, which has access to a first algorithm 8 based on learning, which utilizes a learned model 80, and a second algorithm 9 based on non-learning, which utilizes a predetermined path determination rule. The learned model 80 is learned to output output data D2 related to the path of the autonomous mobile device 1 in response to input data D1 related to the surrounding conditions of the autonomous mobile device 1. The path determination method determines whether the surrounding conditions are learned conditions based on whether the surrounding conditions are learned conditions. If the surrounding conditions are learned conditions, the path is determined using the first algorithm 8. If the surrounding conditions are not learned conditions, the path is determined using the second algorithm 9. This configuration can improve the accuracy of path determination.
[0088] In the movement path determination method, when a mobile object exists around autonomous mobile device 1, a movement path is determined using first algorithm 8. Mobile object 200 is a mobile object for which no control or controlled movement is known in advance. This configuration can improve the accuracy of movement path determination.
[0089] The movement path determination system 4 is implemented using the arithmetic circuit 7. In other words, the movement path determination method executed by the movement path determination system 4 can be implemented by the arithmetic circuit 7 executing a program. This program is a computer program for causing the arithmetic circuit 7 to execute the movement path determination method. Such a program can improve the accuracy of movement path determination.
[0090] [1.2 Implementation Method 2]
[0091] [1.2.1 Structure]
[0092] and Figure 1 Similar to the autonomous mobile device 1 according to the first embodiment shown, the autonomous mobile device 1 according to the second embodiment includes a sensor system 2, a moving mechanism 3, and a movement path determination system 4. In the movement path determination system 4 according to the second embodiment, the movement path determination method executed by the calculation circuit 7 differs from that in the first embodiment.
[0093] Figure 9 This is a flowchart of determining a movement route executed by the arithmetic circuit 7 of the autonomous mobile device according to the second embodiment.
[0094] The calculation circuit 7 acquires the surrounding conditions from the sensor system 2 ( S21 ).
[0095] The calculation circuit 7 determines whether there is a moving object around the autonomous mobile device 1 based on the surrounding conditions ( S22 ).
[0096] If the presence of a mobile object is confirmed around autonomous mobile device 1 (S22: Yes), computation circuit 7 determines whether the similarity between learned model 80 and the surrounding conditions of autonomous mobile device 1 is greater than a threshold value (S23). The similarity here refers to the similarity between a first result obtained by inputting first input data into learned model 80 and a second result obtained by inputting second input data into learned model 80. The first and second input data will be described later.
[0097] If the presence of a moving object around autonomous mobile device 1 is confirmed and the similarity is greater than or equal to the threshold (S23; Yes), calculation circuit 7 executes the first mode. In the first mode, calculation circuit 7 selects first algorithm 8 (S24) and uses first algorithm 8 to determine the movement path of autonomous mobile device 1 (S25).
[0098] If it is determined that there are no moving objects around autonomous mobile device 1 (S22: No) or if the similarity is not equal to or greater than the threshold (S23: No), calculation circuit 7 executes the second mode. In the second mode, calculation circuit 7 selects second algorithm 9 (S26) and uses second algorithm 9 to determine the movement path of autonomous mobile device 1 (S27). This means that, in this embodiment, the movement path is determined using second algorithm 9 after confirming that the surrounding conditions are not learned.
[0099] The calculation circuit 7 drives the moving mechanism 3 based on the determined moving path ( S28 ).
[0100] Thus, in the second embodiment, a learned surrounding situation is a surrounding situation in which a mobile object exists around the autonomous mobile device 1 and the similarity between a first result obtained by inputting input data into the learned model 80 and a second result obtained by inputting verification data into the learned model 80 is greater than a threshold. In other words, in the second embodiment, even if a mobile object exists around the autonomous mobile device 1, a surrounding situation in which the similarity is less than the threshold is not determined to be a learned surrounding situation.
[0101] That is, even when there is a mobile object 200 around the autonomous mobile device 1, the mobile object 200 may travel along a wide range of paths. Therefore, in reality, it is difficult to construct a learned model 80 that considers all possible paths along which the mobile object 200 may move. Even when there is a mobile object 200 around the autonomous mobile device 1, under certain surrounding conditions, insufficient learning, that is, insufficient data sets for learning, may prevent the appropriate determination of the path of the autonomous mobile device 1.
[0102] Figure 10 This is an explanatory diagram of an example of a moving path based on the first algorithm 8. Figure 10 In the example, there is a mobile object 200 surrounding the autonomous mobile device 1. Assume that the surrounding conditions of the mobile object 200 while it is moving along the movement path M31 have been sufficiently learned, but the surrounding conditions of the mobile object 200 while it is moving along the movement path M32 have not been sufficiently learned. In this case, the first algorithm 8 can determine an appropriate movement path M21 for the surrounding conditions of the mobile object 200 while it is moving along the movement path M31 using the learned model 80. On the other hand, there is a possibility that the first algorithm 8 cannot determine an appropriate movement path for the surrounding conditions of the mobile object 200 while it is moving along the movement path M32 using the learned model 80. For example, there is a possibility that the first algorithm 8 may determine a movement path M23, which may result in a collision with the mobile object 200.
[0103] A trend is observed: in surrounding conditions that have been learned by the learned model 80, the change in output data is smaller than the change in input data, but in surrounding conditions that have not been learned by the learned model 80, the change in output data is larger than the change in input data. Therefore, in this embodiment, in addition to the presence of the mobile object 200 around the autonomous mobile device 1, a similarity level of at least a threshold value is used as a condition for a learned surrounding condition.
[0104] The similarity can be given by the distance between the vector representing the first result and the vector representing the second result. The similarity can also be given by the likelihood, the deviation between the output value (for example, the direction of travel, speed, etc.), and the judgment result (deceleration, stop). The first result and the second result can be the output data of the learned model 80 or the intermediate data of the learned model 80. For example, referring to Figure 2 The intermediate data of the learned model 80 may be data representing the feature quantity output from the combining unit 83 .
[0105] The first input data is input data related to the surrounding conditions obtained from sensor system 2. The second input data is data obtained by modifying a portion of the input data related to the surrounding conditions obtained from sensor system 2. Examples of modifications include: partially modifying the input data by a predetermined amount or less; modifying the values of a portion of the multiple data included in the input data by a certain value; modifying a specific type of information within the large amount of information included in the surrounding conditions image data that is the source of the input data by a predetermined amount; partially adding a predetermined amount of data of a different type to the surrounding conditions image data that is the source of the input data; modifying a portion of the data extracted from the surrounding conditions image that is the source of the input data within a certain time period; or modifying the range of the time-series surrounding conditions image data within a certain time period from the input data. Modifying the range of the time-series surrounding conditions image data within a certain time period from the input data means, for example, modifying the time-series surrounding conditions image data centered at a first time period as the second input data, if the input data is time-series data centered at a first time period. The second input data obtained through such a change can be said to contain information about a portion of the first input data that differs within a certain range or amount. The second input data is virtually generated verification data for the purpose of determining similarity. The extent of the change is preferably set so that the first and second input data fall within a range corresponding to the same surrounding conditions.
[0106] Reference Figure 11 and Figure 12 , the first input data and the second input data are described.
[0107] Figure 11 This is an explanatory diagram of a first example of comparing the movement paths of first input data and second input data. The first example corresponds to the learned surrounding conditions. The movement path I311 of the autonomous mobile device 1 and the movement path I312 of the mobile object 200 correspond to the first input data. The movement path O31 of the autonomous mobile device 1 is the output data obtained by inputting the first input data (movement paths I311 and I312) into the learned model 80 and corresponds to the first result. The movement path I321 of the autonomous mobile device 1 and the movement path I322 of the mobile object 200 correspond to the second input data. The movement path O32 of the autonomous mobile device 1 is the output data obtained by inputting the second input data (movement paths I321 and I322) into the learned model 80 and corresponds to the second result. The movement paths O31 and O32 of the autonomous mobile device 1 are substantially identical; in this case, the similarity is above the threshold.
[0108] Figure 12 This is an explanatory diagram of a second example of comparing the movement paths of the first input data and the second input data. The second example corresponds to an unlearned surrounding situation. The movement path I411 of the autonomous mobile device 1 and the movement path I412 of the mobile object 200 correspond to the first input data. The movement path O41 of the autonomous mobile device 1 is the output data obtained by inputting the first input data (movement paths I411 and I412) into the learned model 80 and corresponds to the first result. The movement path I421 of the autonomous mobile device 1 and the movement path I422 of the mobile object 200 correspond to the second input data. The movement path O42 of the autonomous mobile device 1 is the output data obtained by inputting the second input data (movement paths I421 and I422) into the learned model 80 and corresponds to the second result. The movement paths O41 and O42 of the autonomous mobile device 1 are significantly different. In this case, the similarity is less than the threshold.
[0109] Thus, in this embodiment, when a mobile object 200 exists around the autonomous mobile device 1 and the similarity is greater than or equal to a threshold, the calculation circuit 7 determines the movement path using the first algorithm 8. Therefore, even though the surrounding conditions of the autonomous mobile device 1 are not learned by the learned model 80, the likelihood of the movement path being determined using the learned model 80 can be reduced. This improves the accuracy of movement path determination.
[0110] [1.2.2 Effects, etc.]
[0111] In the above-described movement path determination system 4, the learned surrounding conditions are those in which a mobile object 200 exists around the autonomous mobile device 1, and the similarity between a first result obtained by inputting first input data into the learned model 80 and a second result obtained by inputting second input data into the learned model 80 is greater than a threshold value. The first input data is input data related to the surrounding conditions. The second input data is data obtained by modifying a portion of the input data related to the surrounding conditions. This configuration can improve the accuracy of movement path determination.
[0112] In the movement path determination method, the movement path is determined using the first algorithm when the similarity between a first result obtained by inputting first input data into the learned model 80 and a second result obtained by inputting second input data into the learned model 80 exceeds a threshold. The first input data is input data related to surrounding conditions, and the second input data is data obtained by modifying a portion of the input data related to surrounding conditions. This configuration can improve the accuracy of movement path determination.
[0113] [1.3 Implementation Method 3]
[0114] [1.3.1 Structure]
[0115] and Figure 1 Similar to the autonomous mobile device 1 according to the first embodiment shown, the autonomous mobile device 1 according to the third embodiment includes a sensor system 2, a moving mechanism 3, and a movement path determination system 4. In the movement path determination system 4 according to the third embodiment, the movement path determination method executed by the calculation circuit 7 differs from that in the first embodiment.
[0116] Figure 13 This is a flowchart of determining a movement route executed by the arithmetic circuit 7 of the autonomous mobile device according to the third embodiment.
[0117] The calculation circuit 7 acquires the surrounding conditions from the sensor system 2 ( S31 ).
[0118] The calculation circuit 7 determines whether the similarity of the learned model 80 related to the surrounding conditions of the autonomous mobile device 1 is equal to or greater than a threshold value ( S32 ).
[0119] If the similarity is confirmed to be above the threshold (S32: Yes), the calculation circuit 7 executes the first mode. In the first mode, the calculation circuit 7 selects the first algorithm 8 (S33) and uses the first algorithm 8 to determine the movement path of the autonomous mobile device 1 (S34). This means that in this embodiment, the surrounding conditions are confirmed to be learned surrounding conditions, and the movement path is determined using the first algorithm 8.
[0120] If the similarity is determined to be less than or equal to the threshold (S32: No), the calculation circuit 7 executes the second mode. In the second mode, the calculation circuit 7 selects the second algorithm 9 (S35) and uses the second algorithm 9 to determine the movement path of the autonomous mobile device 1 (S36). This means that in this embodiment, the second algorithm 9 is used to determine the movement path after confirming that the surrounding conditions are not learned surrounding conditions.
[0121] The calculation circuit 7 drives the moving mechanism 3 based on the determined moving path ( S37 ).
[0122] As described above, in the third embodiment, the learned surrounding conditions are surrounding conditions in which the similarity between a first result obtained by inputting input data into the learned model 80 and a second result obtained by inputting verification data into the learned model 80 is greater than a threshold value.
[0123] [1.3.2 Effects, etc.]
[0124] In the above-described path determination system 4, the learned surrounding conditions are those for which the similarity between a first result obtained by inputting first input data into the learned model 80 and a second result obtained by inputting second input data into the learned model 80 exceeds a threshold. The first input data is input data related to the surrounding conditions. The second input data is data obtained by modifying a portion of the input data related to the surrounding conditions. This configuration can improve the accuracy of path determination.
[0125] [1.4 Implementation Method 4]
[0126] [1.4.1 Structure]
[0127] and Figure 1 Similar to the autonomous mobile device 1 according to the first embodiment shown, the autonomous mobile device 1 according to the fourth embodiment includes a sensor system 2, a moving mechanism 3, and a movement path determination system 4. In the movement path determination system 4 according to the fourth embodiment, the movement path determination method executed by the calculation circuit 7 differs from that in the first embodiment.
[0128] Figure 14 This is a flowchart of determining a movement route executed by the arithmetic circuit 7 of the autonomous mobile device according to the fourth embodiment.
[0129] The calculation circuit 7 acquires the surrounding conditions from the sensor system 2 ( S41 ).
[0130] The calculation circuit 7 determines whether the surrounding conditions of the autonomous mobile device 1 are in a non-steady state ( S42 ).
[0131] If the surrounding conditions of autonomous mobile device 1 are confirmed to be non-steady (S42: Yes), calculation circuit 7 executes the first mode. In the first mode, calculation circuit 7 selects first algorithm 8 (S43) and uses first algorithm 8 to determine the movement path of autonomous mobile device 1 (S44). This means that, in this embodiment, the surrounding conditions are confirmed to be learned, and the movement path is determined using first algorithm 8.
[0132] If the surrounding conditions of autonomous mobile device 1 are not determined to be non-steady (S42: No), arithmetic circuit 7 executes the second mode. In the second mode, arithmetic circuit 7 selects second algorithm 9 (S45) and uses second algorithm 9 to determine the movement path of autonomous mobile device 1 (S46). This means that, in this embodiment, the movement path is determined using second algorithm 9 after confirming that the surrounding conditions are not learned.
[0133] The calculation circuit 7 drives the moving mechanism 3 based on the determined moving path ( S47 ).
[0134] Thus, in the fourth embodiment, the learned surrounding conditions are the surrounding conditions in a non-steady state. In this embodiment, the surrounding conditions in a non-steady state are different from the surrounding conditions in a steady state. "In a steady state" includes when no abnormality occurs and when movement is carried out as planned. "In a non-steady state" includes when an abnormality occurs, when something unplanned occurs, when a low-frequency phenomenon occurs, and when deviation from the plan occurs. In this embodiment, the surrounding conditions in a steady state are the conditions that cause the autonomous mobile device 1 to move to the destination point. The surrounding conditions in a non-steady state are the conditions that require emergency avoidance. The conditions that require emergency avoidance can be considered as the conditions in which the mobile body moves toward the autonomous mobile device 1 at an abnormal speed. In the case where the learned surrounding conditions are the surrounding conditions in a non-steady state, the learned model 80 is learned to output output data related to the moving path of the avoiding mobile body in response to input data related to the surrounding conditions that require emergency avoidance of the mobile body.
[0135] [1.4.2 Effects, etc.]
[0136] In the above-described movement path determination system 4, the learned surrounding conditions are those in a non-steady state, which is different from the steady state surrounding conditions used to move the autonomous mobile device 1 to the destination. This configuration can improve the accuracy of movement path determination.
[0137] [2. Modifications]
[0138] The embodiments of the present disclosure are not limited to the above-mentioned embodiments. As long as the technical problems of the present disclosure can be solved, the above-mentioned embodiments can be modified in various ways according to the design, etc. The following lists the modified examples of the above-mentioned embodiments. The modified examples described below can be appropriately combined for application.
[0139] It should be noted that, below, even though the above-mentioned embodiments 1 to 4 are applicable, the reference numerals used in embodiment 1 are mentioned. This is simply for simplification of the description and does not exclude the application of embodiments 2 to 4.
[0140] In a modified example, the operation circuit 7 may have the function of executing the third mode. The third mode is different from the first mode or the second mode, and the movement path is not determined according to the surrounding conditions of the autonomous mobile device 1. In the third mode, the operation circuit 7 moves the autonomous mobile device 1 according to the given instructions. The instructions can be given by a person in real time, or they can be given in advance and stored in the storage device 6. For example, the third mode can be a remote operation mode in which the autonomous mobile device 1 is moved according to instructions given by a person via a remote operator. The third mode can be a fixed driving mode in which the autonomous mobile device 1 is moved according to predetermined instructions. In the fixed driving mode, for example, the autonomous mobile device 1 can move straight at a certain speed, or it can move in a predetermined pattern (for example, a predetermined pattern such as an L-shaped, S-shaped, or C-shaped pattern).
[0141] In a variation, the inference process for learning the model 80 is not limited to Figure 2 Examples of inference programs that are well known in the past can be used. An example of an inference program is a regression model. Examples of regression models include decision trees, linear regression, random forests, support vector machines, Gaussian process regression, and neural networks. Examples of linear regression include multiple linear regression, ridge regression, and lasso regression.
[0142] In one variation, the configuration of sensor system 2 is not particularly limited. Sensor system 2 may utilize multiple image sensors that capture images of the front, rear, left, and right directions of autonomous mobile device 1. The type, number, and arrangement of the sensors are appropriately determined based on data representing the surrounding conditions of autonomous mobile device 1.
[0143] In a variation, the movement path determination system 4 can also be applied to devices that do not necessarily have a movement mechanism. For example, the movement path determination system 4 can be applied to a device that displays a movement path to a person through at least one of vision and hearing. The display device can be used to assist a person (e.g., a hearing-impaired or visually-impaired person) in their movement.
[0144] [3. Plan]
[0145] As is apparent from the above-described embodiment and modifications, the present disclosure includes the following aspects.
[0146] [Scheme 1]
[0147] A moving path determination system includes an operation circuit,
[0148] The arithmetic circuit has a first mode and a second mode. In the first mode, the arithmetic circuit determines a movement path of the autonomous mobile device using a first learning-based algorithm that uses a learned model, wherein the learned model is learned to output output data related to the movement path in response to input data related to the surrounding conditions of the autonomous mobile device. In the second mode, the arithmetic circuit determines the movement path using a second non-learning-based algorithm that uses a predetermined movement path determination rule.
[0149] The arithmetic circuit has the following functions: when the surrounding conditions are the surrounding conditions learned by the learned model, the arithmetic circuit executes the first mode; when the surrounding conditions are not the learned surrounding conditions, the arithmetic circuit executes the second mode.
[0150] [Scheme 2]
[0151] In the movement path determination system of the first embodiment, the learned surrounding conditions are surrounding conditions in which a moving object exists around the autonomous movement device.
[0152] [Scheme 3]
[0153] In the movement path determination system of the second aspect, the moving object is a moving object for which control regarding movement or controlled movement action is not previously understood.
[0154] [Scheme 4]
[0155] In the mobile path determination system of any one of schemes 1 to 3,
[0156] The learned surrounding conditions are surrounding conditions in which the similarity between a first result obtained by inputting the first input data into the learned model and a second result obtained by inputting the second input data into the learned model is greater than a threshold value.
[0157] The first input data is input data related to the surrounding conditions,
[0158] The second input data is data obtained by changing a portion of the input data related to the surrounding situation.
[0159] [Scheme 5]
[0160] In the movement route determination system of the first aspect, the learned surrounding conditions are surrounding conditions in a non-steady state different from surrounding conditions in a steady state for moving the autonomous mobile device to the destination point.
[0161] [Scheme 6]
[0162] In the mobile path determination system of any one of schemes 1 to 5,
[0163] The determination rule is set to determine, based on a current position of the autonomous mobile device and a destination point of the autonomous mobile device, a shortest path from the current position to the destination point as a movement path.
[0164] [Scheme 7]
[0165] In the mobile path determination system of any one of schemes 1 to 6,
[0166] The arithmetic circuit has a function of executing a third mode for moving the autonomous mobile device according to a given instruction.
[0167] [Scheme 8]
[0168] In the mobile path determination system of any one of schemes 1 to 7,
[0169] The learned surrounding conditions are surrounding conditions in which a mobile object exists around the autonomous mobile device and a similarity between a first result obtained by inputting first input data into the learned model and a second result obtained by inputting second input data into the learned model is greater than a threshold value.
[0170] The first input data is input data related to the surrounding conditions,
[0171] The second input data is data obtained by changing a portion of the input data related to the surrounding situation.
[0172] [Scheme 9]
[0173] An autonomous mobile device comprising:
[0174] A mobile path determination system according to any one of schemes 1 to 8;
[0175] A sensor system for acquiring surrounding conditions of the autonomous mobile device; and
[0176] The moving mechanism moves according to the moving path determined by the moving path determination system.
[0177] [Scheme 10]
[0178] A method for determining a movement path is performed by a computing circuit having access to a first learning-based algorithm that uses a learned model and a second non-learning-based algorithm that uses a predetermined movement path determination rule. The learned model is learned to output output data related to the movement path of the autonomous movement device in response to input data related to the surrounding conditions of the autonomous movement device. In the method for determining a movement path,
[0179] Based on the judgment of whether the surrounding conditions are the learned surrounding conditions, if the surrounding conditions are the surrounding conditions learned by the learned model, the first algorithm is used to determine the moving path; if the surrounding conditions are not the learned surrounding conditions, the second algorithm is used to determine the moving path.
[0180] [Scheme 11]
[0181] In the moving path determination method of scheme 10,
[0182] When there is a moving object around the autonomous mobile device, the moving path is determined using the first algorithm.
[0183] The mobile object is a mobile object for which control regarding movement or controlled movement action is not mastered in advance.
[0184] [Scheme 12]
[0185] In the moving path determination method of scheme 10,
[0186] determining the movement path using the first algorithm when a first result obtained by inputting the first input data into the learned model and a second result obtained by inputting the second input data into the learned model have a similarity greater than a threshold value;
[0187] The first input data is input data related to the surrounding conditions,
[0188] The second input data is data obtained by changing a portion of the input data related to the surrounding situation.
[0189] [Scheme 13]
[0190] A program for causing an arithmetic circuit to execute the moving path determination method of scheme 10.
[0191] Schemes 2 to 8 are optional elements and are not essential.
[0192] [4. Terminology]
[0193] In this disclosure, the terms related to machine learning are used as defined below.
[0194] A “learned model” is an “inference program” that embeds “learned parameters.”
[0195] "Learned parameters" refer to parameters (coefficients) obtained as a result of learning using a learning dataset. Learned parameters are generated by inputting a learning dataset into a learning program, thereby adjusting the machine for a certain purpose. Although learned parameters are adjusted according to the purpose of learning, if they are alone, they are just simple parameters (information such as numerical values). They only function as a learned model by embedding them in an inference program. For example, in the case of deep learning, the main parameters among the learned parameters are parameters used to weight the links between nodes.
[0196] An "inference program" is a program that can output a specific result based on input by applying embedded learned parameters. For example, it specifies a series of computational procedures for applying learned parameters obtained as a result of learning to a given image as input and outputting a result (authentication, judgment) for that image.
[0197] A "learning dataset," also known as a training dataset, refers to secondary processed data generated by preprocessing the original data, such as removing missing values and outliers, adding independent data such as label information (correct answer data), or combining these transformations / processing processes to facilitate analysis based on the learning method being used. A learning dataset may also include data that has been "enlarged" by applying certain transformations to the original data.
[0198] “Raw data” refers to data initially acquired by users or suppliers, other enterprises or research institutions, etc., which is data that has been converted and processed so that it can be read into the database.
[0199] A "learning program" is a program that executes an algorithm for finding a certain rule from a learning dataset and generating a model that represents the rule. Specifically, it is a program that specifies the procedures to be executed by a computer to achieve learning based on the adopted learning method.
[0200] Industrial Applicability
[0201] The present disclosure can be applied to a path determination system, an autonomous mobile device, a path determination method, and a program. Specifically, the present disclosure can be applied to: a path determination system that determines a path based on surrounding conditions; an autonomous mobile device equipped with a path determination system; a path determination method that determines a path based on surrounding conditions; and a computer program for executing the path determination method.
[0202] In particular, the present disclosure can be applied to the following situations: in a space where pedestrians (mobile bodies) and robots (autonomous mobile devices) are moving, in order to achieve a safe and efficient intersection between pedestrians and robots, the robot's behavior (movement path) is generated based on the pedestrian's activities. That is, the robot's actions can be switched, for example, when a pedestrian enters the robot's moving direction, the robot avoids it, when the pedestrian avoids the robot, and so on. In this way, collisions with pedestrians and time losses can be avoided, and safe and efficient robot travel can be achieved. Therefore, with respect to the present disclosure, when robots are used to carry out transportation in factories where humans and robots coexist, inefficient (overly focused on safety) travel is not performed, collisions with humans are not performed, and transportation with a short takt time can be performed, which can reduce the takt time loss of relevant operators.
[0203] Description of Reference Numerals
[0204] 1 Autonomous mobile device; 2 Sensor system; 3 Mobile mechanism; 4 Mobile path determination system; 7 Operation circuit; 8 First algorithm; 80 Learned model; D1 Input data; D2 Output data; 9 Second algorithm; 200 Mobile body.
Claims
1. A moving path determination system comprising a calculation circuit, The arithmetic circuit has a first mode and a second mode. In the first mode, the arithmetic circuit determines a movement path of the autonomous mobile device using a first learning-based algorithm that uses a learned model, wherein the learned model is learned to output output data related to the movement path in response to input data related to the surrounding conditions of the autonomous mobile device. In the second mode, the arithmetic circuit determines the movement path using a second non-learning-based algorithm that uses a predetermined movement path determination rule. The arithmetic circuit has the following functions: when the surrounding conditions are the surrounding conditions learned by the learned model, the arithmetic circuit executes the first mode; when the surrounding conditions are not the learned surrounding conditions, the arithmetic circuit executes the second mode.
2. The moving path determination system according to claim 1, wherein: The learned surrounding conditions are surrounding conditions in which a moving object exists around the autonomous mobile device.
3. The moving path determination system according to claim 2, wherein: The mobile object is a mobile object for which control regarding movement or controlled movement action is not mastered in advance. The moving path determination system according to claim 1 , wherein: The learned surrounding conditions are surrounding conditions in which the similarity between a first result obtained by inputting the first input data into the learned model and a second result obtained by inputting the second input data into the learned model is greater than a threshold value. The first input data is input data related to the surrounding conditions, The second input data is data obtained by changing a portion of the input data related to the surrounding situation. The moving path determination system according to claim 1 , wherein: The learned surrounding conditions are surrounding conditions in a non-steady state, which are different from surrounding conditions in a steady state when the autonomous mobile device is moved to a destination. The moving path determination system according to claim 1 , wherein: The determination rule is set to determine, based on a current position of the autonomous mobile device and a destination point of the autonomous mobile device, a shortest path from the current position to the destination point as a movement path. The moving path determination system according to claim 1 , wherein: The arithmetic circuit has a function of executing a third mode for moving the autonomous mobile device according to a given instruction. The moving path determination system according to claim 1 , wherein: The learned surrounding conditions are surrounding conditions in which a mobile object exists around the autonomous mobile device and a similarity between a first result obtained by inputting first input data into the learned model and a second result obtained by inputting second input data into the learned model is greater than a threshold value. The first input data is input data related to the surrounding conditions, The second input data is data obtained by changing a portion of the input data related to the surrounding situation.
9. An autonomous mobile device comprising: The mobile path determination system according to any one of claims 1 to 8; A sensor system for acquiring surrounding conditions of the autonomous mobile device; and The moving mechanism moves according to the moving path determined by the moving path determination system.
10. A method for determining a moving path, executed by a computing circuit, The arithmetic circuit is capable of accessing a first algorithm based on learning that uses a learned model and a second algorithm based on non-learning that uses a predetermined movement path determination rule. The learned model is learned to output output data related to the movement path of the autonomous movement device in response to input data related to the surrounding conditions of the autonomous movement device. In the movement path determination method, Based on the judgment of whether the surrounding conditions are the learned surrounding conditions, if the surrounding conditions are the surrounding conditions learned by the learned model, the first algorithm is used to determine the moving path; if the surrounding conditions are not the learned surrounding conditions, the second algorithm is used to determine the moving path. The moving path determination method according to claim 10 , wherein: When there is a moving object around the autonomous mobile device, the moving path is determined using the first algorithm. The mobile object is a mobile object for which control regarding movement or controlled movement action is not mastered in advance.
12. The moving path determination method according to claim 10, wherein: determining the movement path using the first algorithm when a first result obtained by inputting the first input data into the learned model and a second result obtained by inputting the second input data into the learned model have a similarity greater than a threshold value; The first input data is input data related to the surrounding conditions, The second input data is data obtained by changing a portion of the input data related to the surrounding situation. 13 . A program for causing an arithmetic circuit to execute the moving path determination method according to claim 10 .
Citation Information
Patent Citations
Path determination device, robot, and path determination method
WO2020136977A1