CN115841197A - Path planning method, device, equipment and storage medium - Google Patents

Path planning method, device, equipment and storage medium Download PDF

Info

Publication number
CN115841197A
CN115841197A CN202211356765.XA CN202211356765A CN115841197A CN 115841197 A CN115841197 A CN 115841197A CN 202211356765 A CN202211356765 A CN 202211356765A CN 115841197 A CN115841197 A CN 115841197A
Authority
CN
China
Prior art keywords
path
node
robot
address
candidate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211356765.XA
Other languages
Chinese (zh)
Inventor
王伟
支涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Yunji Technology Co Ltd
Original Assignee
Beijing Yunji Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Yunji Technology Co Ltd filed Critical Beijing Yunji Technology Co Ltd
Priority to CN202211356765.XA priority Critical patent/CN115841197A/en
Publication of CN115841197A publication Critical patent/CN115841197A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Manipulator (AREA)

Abstract

The invention discloses a path planning method, a path planning device, a path planning equipment and a storage medium. The path planning method comprises the following steps: determining task information of a robot, wherein the task information comprises a destination address of the robot; acquiring information of a plurality of candidate paths from a source address to the destination address in a robot map, wherein the source address is the current address of the robot; and determining the shortest path according to the information of the degree of entrance among the nodes in the candidate path. By adopting the technical scheme of the invention, the shortest path from a source address to a destination address of the robot is planned according to the task information of the robot; the calculation amount can be greatly reduced in reasonable time, so that the robot can determine the shortest path from a source address to a goods taking address and from the goods taking address to a destination address to complete the task information; the working efficiency of the robot is improved while better operation efficiency is realized.

Description

Path planning method, device, equipment and storage medium
Technical Field
The present invention relates to the field of robotics, and in particular, to a path planning method, apparatus, device, and storage medium.
Background
In recent years, most of path planning algorithms for robots are designed to convert environment information into a graph through geometric transformation, and the path planning problem of the robots is solved by using a graph method. The path planning method based on the free space geometric construction is to construct description of a skeleton graph of the free space through a geometric construction method and then search a feasible shortest path by using a graph search algorithm. In the graph, the robot is regarded as a mass point for path planning, and the moving address of the robot is regarded as a node; when the robot approaches each node in the graph, the order of reaching different nodes determines the dependency relationship between different nodes, which is equivalent to the dependency relationship between different nodes in the directed graph.
When the robot plans the path according to the task information, the robot firstly reaches the node corresponding to the goods taking address and then reaches the node corresponding to the destination address, the goods taking address node and the destination address node have a dependency relationship, and a shortest path is found in the paths meeting the dependency relationship. That is, the destination address node depends on the pickup address node, and is represented in the directed graph as a directed edge of the pickup address node pointing to the destination address node. The goods-taking address node and the destination address node in the graph corresponding to different task information may have changes, so that the same node in the path meeting the dependency relationship appears for many times, and further a cyclic dependency relationship appears; at present, the shortest path is sought by adopting a topological sorting mode for nodes without cyclic dependency, and the shortest path cannot be found for nodes with cyclic dependency.
Disclosure of Invention
The invention provides a path planning method, a device, equipment and a storage medium, which solve the problem that the shortest path is obtained when a robot starts from a source address and reaches a destination address by a way of picking address in the process of executing a plurality of tasks and the picking address is changed into the destination address.
According to an aspect of the present invention, there is provided a path planning method, the method including:
determining task information of a robot, wherein the task information comprises a destination address of the robot;
acquiring information of a plurality of candidate paths from a source address to the destination address in a robot map, wherein the source address is the current address of the robot;
and determining the shortest path according to the information of the degree of entrance among the nodes in the candidate path.
Optionally, the determining task information of the robot further includes:
determining a goods picking address of the robot according to a goods list of a destination address, wherein the robot obtains goods of a single or a plurality of destination addresses at the goods picking address;
determining task information for the robot to move from the source address to the pickup address and from the pickup address to the destination address.
Optionally, a first path from a source address to the pickup address of the robot is prior to a second path from the pickup address to the destination address, where the source address is a current address of the robot.
Optionally, the determining a shortest path according to the information of in-degree between nodes in the candidate path includes:
taking a first node with the in-degree of 0 in the candidate path as a node in the shortest path, and deleting the first node from the candidate path to obtain a new candidate path;
taking a second node with the degree of 0 in the new candidate path as a node in the shortest path, and deleting the second node from the new candidate path until no node with the degree of 0 exists in the last candidate path;
after each node in the final candidate path is deleted respectively, taking a third node with the degree of 0 in the path obtained by deleting the node as a node in the comparison path until no node with the degree of 0 exists; and taking the node in the shortest comparison path as the node in the shortest path.
Optionally, after deleting each node in the last candidate path, the third node with an entry degree of 0 in the path obtained by deleting the node is used as a node in the comparison path until there is no node with an entry degree of 0; taking the node in the shortest comparison path as the node in the shortest path, including:
determining a plurality of comparison paths corresponding to each node in the final candidate path according to the third node;
determining the path length of each comparison path, wherein the path length is greater than or equal to the number of nodes in the last candidate path;
and adding the third node in the comparison path corresponding to the shortest path length to the node sequence of the shortest path.
Further, the method also comprises the following steps:
and when the number of the residual nodes obtained after deleting the single node in the last candidate path is larger than the length of the current shortest comparison path, calculating the comparison path of the next node in the last candidate path.
Optionally, a sub-shortest path obtained from the candidate path, the new candidate path, and the last candidate path is stored, and the shortest path is output.
According to a second aspect of the present invention, there is provided a path planning apparatus, comprising:
the system comprises a first determination module, a second determination module and a third determination module, wherein the first determination module is used for determining task information of the robot, and the task information comprises a destination address of the robot;
the acquisition module is used for acquiring information of a plurality of candidate paths from a source address to the destination address in a robot map, wherein the source address is the current address of the robot;
and the second determining module is used for determining the shortest path according to the information of the degree of entry between the nodes in the candidate path.
According to a third aspect of the present invention, there is provided an electronic apparatus comprising: at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to cause the at least one processor to implement a path planning method according to any embodiment of the invention.
According to a fourth aspect of the present invention, there is provided a computer-readable storage medium having computer instructions for causing a computer to perform a path planning method according to any one of the embodiments of the present invention.
The invention discloses a path planning method, a path planning device, a path planning equipment and a storage medium. The path planning method comprises the following steps: determining task information of a robot, wherein the task information comprises a destination address of the robot; acquiring information of a plurality of candidate paths from a source address to the destination address in a robot map, wherein the source address is the current address of the robot; and determining the shortest path according to the information of the degree of entrance among the nodes in the candidate path. By adopting the technical scheme of the invention, the shortest path from a source address to a destination address of the robot is planned according to the task information of the robot; the calculation amount can be greatly reduced in reasonable time, so that the robot can determine the shortest path from a source address to a goods taking address and from the goods taking address to a destination address to complete the task information; the working efficiency of the robot is improved while better operation efficiency is realized.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present invention, nor do they necessarily limit the scope of the invention. Other features of the present invention will become apparent from the following description.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a schematic diagram of an application scenario of a path planning method according to an embodiment of the present invention;
fig. 2 is a schematic flow chart of a path planning method according to an embodiment of the present invention;
fig. 3 is a schematic node relationship diagram of a path planning method according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a path planning apparatus according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of an electronic device for implementing a path planning method according to an embodiment of the present invention.
Detailed Description
In order to make the technical solutions of the present application better understood by those skilled in the art, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only some embodiments of the present application, and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
It should be noted that the terms "first," "second," and the like in the description and claims of this application and in the accompanying drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It should be understood that the data so used may be interchanged under appropriate circumstances such that embodiments of the application described herein may be implemented in sequences other than those illustrated or described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
The present disclosure will be described in detail below with reference to the accompanying drawings in conjunction with embodiments.
Fig. 1 is a schematic diagram of an application scenario of a path planning method according to one or more embodiments of the present specification.
As shown in fig. 1, an application scenario 100 of the path planning method disclosed in the present invention includes a server 110, a robot 120, a user terminal 130, and an ethernet 140. Among other things, the server 110 can be used to manage resources and process data and/or information from at least one component of the present system or an external data source (e.g., a cloud data center). Server 110 may execute program instructions based on the data, information, and/or processing results to perform one or more of the functions described herein. In some embodiments, the server 110 may be a single server or a group of servers. The set of servers can be centralized or distributed (e.g., the servers 110 can be a distributed system), can be dedicated, or can be serviced by other devices or systems at the same time. In some embodiments, the server 110 may be regional or remote. In some embodiments, the server 110 may be implemented on a cloud platform, or provided in a virtual manner. By way of example only, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an internal cloud, a multi-tiered cloud, and the like, or any combination thereof.
The robot 120 includes a robot control computer 121, a wireless communication system 122, an artificial intelligence module 123, a human-machine interface 124, and a robot control module 125. The robot control computer 121 is installed in the robot 120, and is a final execution unit of information processing and program operation, which is a core of operation and control in the robot, and may be implemented as a plurality of software or software modules for providing distributed services, or as a single software or software module, for example. And is not particularly limited herein. The wireless communication system 122 is used for realizing network communication between the robot 120 and the server 110 and the user terminal 130. The artificial intelligence module 123 is used to implement machine vision and machine hearing functions. The human-computer interface 124 is used to implement media for transferring and exchanging information between a human and a computer and functions of a conversation. The robot control module 125 includes drives and motors for controlling the robot movement.
User terminal 130 refers to one or more terminal devices or software used by a user. In some embodiments, the user terminal 130 may be used by any user, such as an individual, a business, or the like. In some embodiments, the user terminal 130 may be one or any combination of a mobile device, a tablet computer, a laptop computer, a desktop computer, or other device having input and/or output capabilities. The above examples are intended only to illustrate the broad scope of the user terminal 130 device and not to limit its scope.
As shown in fig. 1, after placing an order by the user terminal 130, the order is sent to the server 110 through the ethernet 140, and the server 110 determines the task information according to the received order information of the user terminal 130 and sends the task information to the robot 120; the server 110 plans a moving path according to the task information.
It should be understood that the number of computing devices in FIG. 1 is merely illustrative. There may be any number of computing devices, as implementation needs dictate.
The working environment of the robot moving on the ground is a two-dimensional or three-dimensional space, which is called the working space of the robot; in a single environment, the robot can be regarded as a particle in a working space, and a map corresponding to the working space is imported into the robot, so that the robot moves according to the map. The nodes present in the robot map correspond to a plurality of addresses, wherein each robot, when performing a task once, does not walk through all the nodes in the map, but for the task to be completed, the robot may arrive at a plurality of addresses, and therefore, among all the addresses included in the map, a plurality of addresses through which the task must be completed are determined, and the shortest path between the plurality of addresses is selected to complete the distribution.
It should be noted that: the map of the robot corresponds to the map in the embodiment of the present invention, and the source address, the pickup address, and the destination address in the map correspond to the nodes in the map.
Example one
In accordance with an embodiment of the present application, there is provided a path planning method, it should be noted that the steps illustrated in the flowchart of the drawings may be performed in a computer system such as a set of computer-executable instructions and that, although a logical order is illustrated in the flowchart, in some cases, the steps illustrated or described may be performed in an order different than here. As shown in fig. 2, the path planning method includes the following steps: s210, S220, and S230.
S210, determining task information of the robot, wherein the task information comprises a destination address of the robot.
In one aspect, the task information includes, but is not limited to, the address at which the robot performs the delivery task in the environment, and since the robot may not just deliver the item to a single user, the robot plans the route according to different destination addresses in different task information. On the other hand, the server 110 determines an order to be executed by the robot according to the order information of the user terminal 130; or determining task information of the robot according to commodity information in the order to be executed; wherein one order corresponds to one task information.
Optionally, the determining task information of the robot further includes:
determining a goods picking address of the robot according to a goods list of a destination address, wherein the robot obtains goods of a single or a plurality of destination addresses at the goods picking address;
determining task information for the robot to move from the source address to the pickup address and from the pickup address to the destination address.
Illustratively, the robot delivers goods in a hotel scene, and determines a goods picking address of the robot according to a goods list required by a destination address in received task information, wherein the robot picks the goods after moving from a current source address to the goods picking address, and then moves from the goods picking address to the destination address. The robot may often retrieve goods included in the plurality of task information at the pick-up address.
S220, acquiring information of a plurality of candidate paths from a source address to the destination address in the robot map, wherein the source address is the current address of the robot.
A plurality of paths exist between the source address and the goods taking address, a plurality of paths also exist between the goods taking address and the destination address, and the candidate path is a set of all the paths between the source address and the goods taking address. In short, different addresses (nodes) are fixed in the map of the robot, but there are multiple paths from one address to another, and all existing paths between the two addresses are acquired, i.e., the candidate path information.
Optionally, a first path from a source address to the pickup address of the robot is prior to a second path from the pickup address to the destination address, where the source address is a current address of the robot.
Illustratively, the robot moves in a first path, and the dependencies in the process include: the goods picking address is dependent on a source address, the goods picking address is a dependent node, the source address is a dependent node, and the dependent node is arranged in front of the dependent node; if a plurality of goods picking addresses exist in a plurality of pieces of task information received by the robot, the first path has the condition that a plurality of nodes depend on a single node. The robot moves in a second path, and the dependency relationship in the process comprises: the destination address depends on the goods taking address, the destination address is a dependent node, the goods taking address is a dependent node, and the goods taking address is inevitably before the destination address; if the goods in the goods list of the destination address need to be obtained by the robot from different goods-taking addresses, a situation that a single node depends on a plurality of nodes exists in the second path. If the picking address in the graph corresponding to the first task information is distributed in the second task information and becomes the destination address in the moving process of the robot, the dependency relationship in the process is a circular dependency relationship; for example, in the first task information: point A is a goods taking address, and point B is a destination address; in the second task information: the point B is a goods taking address, and the point A is a destination address; it can be seen that, in the first task information, point B depends on point a; in the second task information, the point A depends on the point B; thus, for one robot, the path to execute the first and second task information is B ← a ← B, where the arrow points to a dependent node; at this time, the node B appears twice, in order to satisfy the loop-dependent condition.
And S230, determining the shortest path according to the information of the degree of entry between the nodes in the candidate path.
In-degree is the sum of the number of times a single node in the directed graph acts as an end point of an edge in the graph. Determining the degree of entry information according to the dependency relationship existing between each node in the candidate path, and if the depended node points to the dependent node, increasing the degree of entry of the dependent node by 1; if a single node is not a dependent node, it indicates that there is no dependency relationship between the node and other nodes, and the degree of in of the node is zero.
Optionally, the determining the shortest path according to the information of the degree of entry between the nodes in the candidate path includes: taking a first node with the degree of income of 0 in the candidate paths as a node in the shortest path, and deleting the first node from the candidate paths to obtain new candidate paths; taking a second node with the degree of 0 in the new candidate path as a node in the shortest path, and deleting the second node from the new candidate path until no node with the degree of 0 exists in the last candidate path; after each node in the final candidate path is deleted respectively, taking a third node with the degree of 0 in the path obtained by deleting the node as a node in the comparison path until no node with the degree of 0 exists; and taking the node in the shortest comparison path as the node in the shortest path.
Illustratively, in a map with dependency relationship, different addresses correspond to different nodes, and the path of the robot between a source address, a pickup address and a destination address is determined according to the dependency relationship among the different nodes. Wherein the dependency is represented by a directed edge pointing from the depended-on node to the dependent node, for example, a directed edge pointing from the pickup address node (depended-on node) to the destination address node (dependent node), and the directed edge is out-degree for the pickup address node and in-degree for the destination address node. And seeking a path planning mode in a map formed by addresses with dependency relations, and further determining the shortest path according to the degree-of-entry relation between nodes in the directed graph. The candidate paths are paths among nodes with dependency relationships in the robot map. Firstly, deleting a first node with an in-degree of 0 in the candidate path, and adding the deleted node into a node in the shortest path; and simultaneously deleting all the dependency relations taking the first node as the depended node in the candidate path to obtain a new candidate path. Secondly, after deleting a second node with the degree of 0 in the new candidate path, adding the deleted node into the node in the shortest path until no node with the degree of 0 exists in the last candidate path; and simultaneously deleting all the dependency relations taking the second node as the depended node in the new candidate path to obtain the final candidate path. Further, a first sub-shortest path obtained in a link preceding the last candidate path is stored.
If no node exists in the final candidate path, the fact that the robot does not have a cyclic dependency relationship between nodes from a source address to a destination address is shown, and the first sub-shortest path is the shortest path. And if the nodes still exist in the last candidate path, deleting each node in the last candidate path respectively, and then taking a third node with the degree of 0 in the path obtained by deleting the nodes as a node in the comparison path until no node with the degree of 0 exists. Specifically, since there is no node with an in-degree of 0 in each node in the last candidate path, the following operations are performed for each node in the last candidate path: on one hand, after one arbitrary node is deleted, the dependency relationship taking the arbitrary node as the depended node is deleted at the same time; on the other hand, in the path obtained by deleting any node, after deleting the third node with the degree of 0, adding the third node into the comparison path corresponding to the any node until no node with the degree of 0 exists in the path obtained by deleting the any node currently. And finally, obtaining a corresponding number of comparison paths according to the number of nodes in the final candidate path, and selecting the shortest comparison path from all the comparison paths as a second sub-shortest path. Thus, for the robot, the shortest path determined from the candidate paths is the sum of the first sub-shortest path and the second sub-shortest path.
Optionally, after deleting each node in the last candidate path, the third node with the degree of 0 in the path obtained by deleting the node is used as a node in the comparison path until no node with the degree of 0 exists; taking the node in the shortest comparison path as the node in the shortest path, including:
determining a plurality of comparison paths corresponding to each node in the final candidate path according to the third node; determining the path length of each comparison path, wherein the path length is greater than or equal to the number of nodes in the last candidate path; and adding the third node in the comparison path corresponding to the shortest path length to the node sequence of the shortest path.
It will be appreciated that a path is represented as a sequence of nodes, with the length of the path being represented as the number of nodes traversed in the path, in terms of the order in which the nodes in the graph are traversed. For example, the path between nodes having the circular dependency relationship is B ← a ← B, the path length is 3, the number of nodes is 2, and the path length is greater than the number of nodes in the final candidate path.
Further, the method also comprises the following steps:
and when the number of the remaining nodes obtained after deleting the single node in the last candidate path is larger than the length of the current shortest comparison path, calculating the comparison path of the next node in the last candidate path.
Because the path length is inevitably greater than or equal to the number of nodes in the last candidate path, when the number of remaining nodes obtained after deleting any single node in the last candidate path is greater than the length of the current shortest comparison path, the comparison path corresponding to the any single node does not need to be calculated, and the number of nodes is taken as the lower bound of the shortest path, so that the calculation efficiency is improved.
Exemplarily, fig. 3 shows a schematic diagram representing a cyclic dependency relationship between nodes, in which three nodes, a, B, and C exist, where a is a cyclic dependency between a node and a node B, i.e., a depends on B, and B depends on a; the C node is dependent on the B node. As shown in fig. 3, the arrows in the figure point to indicate the dependency relationship between the nodes, not the movement path of the robot; A. paths which can move exist between the three nodes B and C, and arrows represent the sequence (namely the dependency relationship) which must be followed when the robot executes the task information. As can be seen from fig. 3, the nodes in the graph are the remaining nodes obtained after deleting any single node in the last candidate path; it can be seen that the number of nodes in fig. 3 is 3, then the length of the comparison path corresponding to the arbitrary single node is necessarily greater than or equal to 3, and in order to complete the dependency relationship shown in fig. 3, possible paths include, but are not limited to: c ← B ← a ← C ← B ← a, a ← C ← B; wherein path length r (C ← B ← a ← B) = CBAB | =4; r (a ← C ← B ← a) = | ACBA | =4; r (a ← C ← B) = ACACB | =5; it can be seen that the shortest path length in the path completing the dependency relationship is at least 4, and if the number of the remaining nodes is greater than 4, the condition of any node is excluded, and subsequent comparison paths do not need to be calculated. It is understood that the dependency relationship present in fig. 3 is a ← B ← a or B ← a ← B. Note that: nodes without dependencies may appear anywhere in the path before the dependent node appears in the path, with the arrows pointing to: the depended node points to the dependent node.
Optionally, a sub-shortest path obtained from the candidate path, the new candidate path, and the last candidate path is stored, and the shortest path is output.
As described in the above embodiment, the sub-shortest path includes the first sub-shortest path and the second sub-shortest path. And storing the first sub-shortest path or the second sub-shortest path obtained in the process of calculating the shortest paths of the candidate paths. The method comprises the steps that a map moved by a robot in a single scene is fixed, different addresses do not change, therefore, under the condition that a known candidate path is not changed, the shortest path length is also not changed after being determined, namely in the path planning method, the shortest path in the candidate paths among a source address, a pickup address and a destination address determined by the robot is only calculated once, and the shortest path obtained in each link in the calculation process is stored.
The invention adopts the idea of heuristic algorithm to plan the shortest path of the robot, and the optimal solution (shortest path) is found in all the candidate paths, thereby improving the operation efficiency and solving the problem that the shortest path can not be found when the prior art has cyclic dependence. The heuristic algorithm is that in a random group optimizing process, individuals can use self or global experience to formulate respective search strategies.
The embodiment of the invention discloses a path planning method. The path planning method comprises the following steps: determining task information of a robot, wherein the task information comprises a destination address of the robot; acquiring information of a plurality of candidate paths from a source address to the destination address in a robot map, wherein the source address is the current address of the robot; and determining the shortest path according to the information of the degree of entrance among the nodes in the candidate path. By adopting the technical scheme of the invention, the shortest path from a source address to a destination address of the robot is planned according to the task information of the robot; the calculation amount can be greatly reduced in reasonable time, so that the robot can determine the shortest path from a source address to a goods taking address and from the goods taking address to a destination address to complete the task information; the working efficiency of the robot is improved while better operation efficiency is realized.
Example two
According to an embodiment of the present invention, a schematic structural diagram of a path planning apparatus is provided, and the apparatus may perform the path planning method provided in the first embodiment. As shown in fig. 4, the apparatus includes: a first determination module 410, an acquisition module 420, and a second determination module 430. Wherein:
a first determining module 410, configured to determine task information of a robot, where the task information includes a destination address of the robot.
The obtaining module 420 is configured to obtain information of multiple candidate paths from a source address to the destination address in the robot map, where the source address is a current address of the robot.
And a second determining module 430, configured to determine a shortest path according to the information of the degree of entry between nodes in the candidate path.
Optionally, the first determining module 410 includes:
the first determining subunit is used for determining a goods picking address of the robot according to a goods list of a destination address, and the robot obtains goods of a single or a plurality of destination addresses at the goods picking address;
a second determining subunit, configured to determine task information for the robot to move from the source address to the pickup address and from the pickup address to the destination address.
Optionally, a first path from a source address to the pickup address of the robot is prior to a second path from the pickup address to the destination address, where the source address is a current address of the robot.
Optionally, the second determining module 430 includes:
a first unit, configured to use a first node with an in-degree of 0 in the candidate paths as a node in the shortest path, and delete the first node from the candidate paths to obtain new candidate paths;
a second unit, configured to use a second node with an introductivity of 0 in the new candidate path as a node in the shortest path, and delete the second node from the new candidate path until no node with an introductivity of 0 exists in the last candidate path;
a third unit, configured to delete each node in the last candidate path, and then use a third node with an entry degree of 0 in the path obtained by deleting the node as a node in the comparison path until there is no node with an entry degree of 0; and taking the node in the shortest comparison path as the node in the shortest path.
Optionally, the third unit includes:
determining a plurality of comparison paths corresponding to each node in the final candidate path according to the third node;
determining the path length of each comparison path, wherein the path length is greater than or equal to the number of nodes in the last candidate path;
and adding the third node in the comparison path corresponding to the shortest path length to the node sequence of the shortest path.
Further, the third unit further includes:
and when the number of the residual nodes obtained after deleting the single node in the last candidate path is larger than the length of the current shortest comparison path, calculating the comparison path of the next node in the last candidate path.
Optionally, a sub-shortest path obtained from the candidate path, the new candidate path, and the last candidate path is stored, and the shortest path is output.
The embodiment of the invention discloses a path planning device. The path planning device comprises: the system comprises a first determination module, a second determination module and a third determination module, wherein the first determination module is used for determining task information of the robot, and the task information comprises a destination address of the robot; the acquisition module is used for acquiring information of a plurality of candidate paths from a source address to the destination address in a robot map, wherein the source address is the current address of the robot; and the second determining module is used for determining the shortest path according to the information of the degree of entry between the nodes in the candidate path. By adopting the technical scheme of the invention, the shortest path from a source address to a destination address of the robot is planned according to the task information of the robot; the calculation amount can be greatly reduced in reasonable time, so that the robot can determine the shortest path from a source address to a goods taking address and from the goods taking address to a destination address to complete the task information; the working efficiency of the robot is improved while better operation efficiency is realized.
EXAMPLE III
Referring now to FIG. 5, a block diagram of an electronic device 500 suitable for use in implementing embodiments of the present invention is shown. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed herein.
As shown in fig. 5, the electronic device 500 may include a processing means 510 that may perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM) 520 or a program loaded from a storage means 580 into a Random Access Memory (RAM) 530. The processing device 510 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of processing device 510 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various dedicated Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, and so forth. The processing device 510 performs the various methods and processes described above.
In the RAM 530, various programs and data necessary for the operation of the electronic apparatus 500 are also stored. The processing device 510, the ROM 520, and the RAM 530 are connected to each other by a bus 540. An input/output (I/O) interface 550 is also connected to bus 540.
Generally, the following devices may be connected to the I/O interface 550: input devices 560 including, for example, a touch screen, touch pad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; output devices 570 including, for example, a Liquid Crystal Display (LCD), speakers, vibrators, or the like; storage 580 including, for example, magnetic tape, hard disk, etc.; and a communication device 590. The communication device 590 may allow the electronic apparatus 500 to perform wireless or wired communication with other apparatuses to exchange data. While fig. 5 illustrates an electronic device 500 having various means, it is to be understood that not all illustrated means are required to be implemented or provided. More or fewer devices may be alternatively implemented or provided.
In particular, according to an embodiment of the present invention, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, an embodiment of the invention includes a computer program product comprising a computer program carried on a non-transitory computer readable medium, the computer program containing program code for performing the method illustrated by the flow chart. In such embodiments, the computer program may be downloaded and installed from a network through the communication device 590, or installed from the storage device 580, or installed from the ROM 520. Which when executed by the processing means 510 performs the above-mentioned functions defined in the method of an embodiment of the invention. Alternatively, in other embodiments, the processing device 510 may be configured by any other suitable means (e.g., by means of firmware) to perform the method of: determining task information of a robot, wherein the task information comprises a destination address of the robot; acquiring information of a plurality of candidate paths from a source address to the destination address in a robot map, wherein the source address is the current address of the robot; and determining the shortest path according to the information of the degree of entrance among the nodes in the candidate path.
Example four
The computer readable medium of the present invention described above may be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present invention, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present invention, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, either in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
In some embodiments, the clients, servers may communicate using any currently known or future developed network Protocol, such as HTTP (HyperText Transfer Protocol), and may interconnect with any form or medium of digital data communication (e.g., a communications network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the Internet (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed network.
The computer readable medium may be embodied in the electronic device; or may exist separately without being assembled into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: determining task information of a robot, wherein the task information comprises a destination address of the robot; acquiring information of a plurality of candidate paths from a source address to the destination address in a robot map, wherein the source address is the current address of the robot; and determining the shortest path according to the information of the degree of entrance among the nodes in the candidate path.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including but not limited to an object oriented programming language such as Java, smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules described in the embodiments of the present invention may be implemented by software or hardware. Wherein the name of a module does not in some cases constitute a limitation on the module itself.
The functions described herein above may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: digital electronic circuitry, integrated circuitry, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), system on a chip (SOCs), complex Programmable Logic Devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof, among others.
Program code for implementing the methods of the present invention may be written in any combination of one or more programming languages. These program code may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program code, when executed by the processor or controller, causes the functions/acts specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of the present invention, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user may provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Network (WAN) blockchain networks, and the internet.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical host and VPS service are overcome. The server may also be a server of a distributed system, or a server incorporating a blockchain.
Artificial intelligence is the subject of research that makes computers simulate some human mental processes and intelligent behaviors (such as learning, reasoning, thinking, planning, etc.), both at the hardware level and at the software level. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing, and the like; the artificial intelligence software technology mainly comprises a computer vision technology, a voice recognition technology, a natural language processing technology, a machine learning/deep learning technology, a big data processing technology, a knowledge map technology and the like.
Cloud computing (cloud computing) refers to accessing an elastically extensible shared physical or virtual resource pool through a network, where resources may include servers, operating systems, networks, software, applications, storage devices, and the like, and may be a technical system that deploys and manages resources in a self-service manner as needed. Through the cloud computing technology, high-efficiency and strong data processing capacity can be provided for technical application and model training of artificial intelligence, block chains and the like.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present invention may be executed in parallel, sequentially, or in different orders, and the present invention is not limited herein as long as the desired result of the technical solution provided by the present invention can be achieved.
The above-described embodiments should not be construed as limiting the scope of the invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made in accordance with design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (10)

1. A method of path planning, the method comprising:
determining task information of a robot, wherein the task information comprises a destination address of the robot;
acquiring information of a plurality of candidate paths from a source address to the destination address in a robot map, wherein the source address is the current address of the robot;
and determining the shortest path according to the information of the degree of entrance among the nodes in the candidate path.
2. The path planning method according to claim 1, wherein the determining task information of the robot further comprises:
determining a goods picking address of the robot according to a goods list of a destination address, wherein the robot obtains goods of a single or a plurality of destination addresses at the goods picking address;
determining task information for the robot to move from the source address to the pickup address and from the pickup address to the destination address.
3. The path planning method of claim 2 wherein a first path from a source address to the pick address precedes a second path from the pick address to the destination address.
4. The method of claim 1, wherein the determining the shortest path according to the information of the degree of entry between the nodes in the candidate path comprises:
taking a first node with the degree of income of 0 in the candidate paths as a node in the shortest path, and deleting the first node from the candidate paths to obtain new candidate paths;
taking a second node with the degree of 0 in the new candidate path as a node in the shortest path, and deleting the second node from the new candidate path until no node with the degree of 0 exists in the last candidate path;
after each node in the final candidate path is deleted respectively, taking a third node with the degree of 0 in the path obtained by deleting the node as a node in the comparison path until no node with the degree of 0 exists; and taking the node in the shortest comparison path as the node in the shortest path.
5. The path planning method according to claim 4, wherein after each node in the final candidate path is deleted, a third node with an entry degree of 0 in the path obtained by deleting the node is used as a node in the comparison path until no node with an entry degree of 0 exists; taking the node in the shortest comparison path as the node in the shortest path, including:
determining a plurality of comparison paths corresponding to each node in the final candidate path according to the third node;
determining the path length of each comparison path, wherein the path length is greater than or equal to the number of nodes in the last candidate path;
and adding the third node in the comparison path corresponding to the shortest path length to the node sequence of the shortest path.
6. The path planning method according to claim 5, further comprising:
and when the number of the residual nodes obtained after deleting the single node in the last candidate path is larger than the length of the current shortest comparison path, calculating the comparison path of the next node in the last candidate path.
7. The path planning method according to claims 1-6, wherein a sub-shortest path derived from the candidate path, the new candidate path and the final candidate path is stored and the shortest path is output.
8. A path planner, the device comprising:
the system comprises a first determination module, a second determination module and a third determination module, wherein the first determination module is used for determining task information of the robot, and the task information comprises a destination address of the robot;
the acquisition module is used for acquiring information of a plurality of candidate paths from a source address to the destination address in a robot map, wherein the source address is the current address of the robot;
and the second determining module is used for determining the shortest path according to the information of the degree of entry between the nodes in the candidate path.
9. An electronic device, comprising:
at least one processor;
and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to cause the at least one processor to implement the path planning method of any one of claims 1-7.
10. A computer readable storage medium, wherein the computer instructions are for causing the computer to perform the path planning method according to any one of claims 1-7.
CN202211356765.XA 2022-11-01 2022-11-01 Path planning method, device, equipment and storage medium Pending CN115841197A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211356765.XA CN115841197A (en) 2022-11-01 2022-11-01 Path planning method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211356765.XA CN115841197A (en) 2022-11-01 2022-11-01 Path planning method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN115841197A true CN115841197A (en) 2023-03-24

Family

ID=85576793

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211356765.XA Pending CN115841197A (en) 2022-11-01 2022-11-01 Path planning method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115841197A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116400706A (en) * 2023-04-26 2023-07-07 巴斯夫一体化基地(广东)有限公司 Method and device for transporting test samples and optimizing planned paths
CN116400706B (en) * 2023-04-26 2024-06-04 巴斯夫一体化基地(广东)有限公司 Method and device for transporting test samples and optimizing planned paths

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116400706A (en) * 2023-04-26 2023-07-07 巴斯夫一体化基地(广东)有限公司 Method and device for transporting test samples and optimizing planned paths
CN116400706B (en) * 2023-04-26 2024-06-04 巴斯夫一体化基地(广东)有限公司 Method and device for transporting test samples and optimizing planned paths

Similar Documents

Publication Publication Date Title
US11249488B2 (en) System and method for offloading robotic functions to network edge augmented clouds
CN113568860B (en) Deep learning-based multi-machine cluster topology mapping method and device and program product
EP3761190A1 (en) Clustering method and device
CN111652354B (en) Method, apparatus, device and storage medium for training super network
CN114357105A (en) Pre-training method and model fine-tuning method of geographic pre-training model
CN113534790B (en) Path planning method and device, electronic equipment and computer readable storage medium
CN114924862A (en) Task processing method, device and medium implemented by integer programming solver
CN113988485A (en) Site arrival amount prediction method and device, electronic equipment and computer readable medium
CN112241177B (en) Heuristic spacecraft task planning method based on time line state road sign
CN115691206B (en) Parking stall recommendation method, device, equipment and storage medium
CN115841197A (en) Path planning method, device, equipment and storage medium
CN114428917A (en) Map-based information sharing method, map-based information sharing device, electronic equipment and medium
CN111327472A (en) Method and device for acquiring target network
CN112749822A (en) Method and device for generating route
CN110633707A (en) Method and device for predicting speed
CN115827526B (en) Data processing method, device, equipment and storage medium
CN114693135A (en) Cross-site distribution method, device, equipment and medium
CN114714350A (en) Service robot control method, device, equipment and medium
CN116822259B (en) Evaluation information generation method and device based on scene simulation and electronic equipment
CN111639752B (en) Method, apparatus, device and storage medium for training super network
US20150310399A1 (en) Generation of meeting agenda from team work plan
CN114662942A (en) Robot scheduling method, device, equipment and medium
CN115936383A (en) Route planning and model training method, apparatus, device, medium, and program product
CN116580499A (en) Intelligent selling method and device for hotel souvenir, electronic equipment and medium
CN115781767A (en) Robot charging method, device, electronic equipment and computer readable medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination