CN113848897A - Method, system and related product for path planning for unmanned surface vessels - Google Patents

Method, system and related product for path planning for unmanned surface vessels Download PDF

Info

Publication number
CN113848897A
CN113848897A CN202111095147.XA CN202111095147A CN113848897A CN 113848897 A CN113848897 A CN 113848897A CN 202111095147 A CN202111095147 A CN 202111095147A CN 113848897 A CN113848897 A CN 113848897A
Authority
CN
China
Prior art keywords
path
point
cache
final
edge server
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.)
Granted
Application number
CN202111095147.XA
Other languages
Chinese (zh)
Other versions
CN113848897B (en
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.)
Ningbo University
Original Assignee
Ningbo University
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 Ningbo University filed Critical Ningbo University
Priority to CN202111095147.XA priority Critical patent/CN113848897B/en
Publication of CN113848897A publication Critical patent/CN113848897A/en
Application granted granted Critical
Publication of CN113848897B publication Critical patent/CN113848897B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/0206Control of position or course in two dimensions specially adapted to water vehicles

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

The present disclosure relates to a method for path planning for an unmanned surface vessel, the method being performed by an edge server and comprising: receiving a path planning request sent by a target unmanned surface vessel; determining a final path of the target unmanned surface vessel in the coverage area or outside the coverage area of the edge server according to the path planning request, wherein when the path planning request is outside the coverage area of the edge server, the path planning request is sent to a cloud server so as to obtain a preliminary path plan returned by the cloud server based on the path planning request; and determining a final path based on the preliminary path planning and the path cache in the edge server; wherein when the path planning request is within a coverage area of the edge server, a final path is determined based on the path planning request and a path cache in the edge server, such that the target unmanned surface vessel moves according to the final path. By using the scheme disclosed by the invention, the response speed of the path request can be improved, and the path planning efficiency can be improved.

Description

Method, system and related product for path planning for unmanned surface vessels
Technical Field
The present disclosure relates generally to the field of unmanned surface vessels. More particularly, the present disclosure relates to a method, system, and computer-readable storage medium for path planning for unmanned surface vessels.
Background
With the development of advanced robot technology and automation technology, Unmanned Surface Vessels (USV) are widely applied to the fields of marine sampling, rescue, environmental monitoring, military reconnaissance and the like as an important mobile robot. In the aforementioned application field, a general problem to be solved is to plan a feasible path according to requirements in an uncertain environment.
At present, a unified scheduling method is generally adopted to perform path planning on USVs, that is, data and calculation requests of all USVs are processed through a cloud. However, due to the instability of the internet, packet loss and transmission delay caused by network fluctuation are easy to occur during multi-hop transmission of data, so that uncertain network delay exists between the cloud and the USV. In the path planning process, uncertain delay can directly influence the instantaneity and obstacle avoidance performance of the path planning of the USV. In addition, the computation cost of querying the optimal path on the cloud server increases rapidly with the increase of the length and resolution of the target path, for example, the a-algorithm and Dijkstra algorithm adopted by most path planning algorithms, and the computation time of the algorithms increases exponentially with the increase of the resolution of the map and the distance between the source node and the target node.
Edge computing is a new computing architecture that enables the integration of computing, storage, and network resources at the edge of the network, closer to the end user. In order to reduce the transmission delay of the path planning query and reduce the cloud computing amount, path planning algorithms based on edge computing have been proposed in recent years. I.e. send the path to an edge server placed on shore close to the USV. In addition, in order to further improve the efficiency of path planning, related scholars also propose some cache-based path planning algorithms. For example, benefit-driven shortest Path Caching based algorithms answer shortest Path queries from source and destination nodes and cache-based Path Planning ("PPC") systems that answer a new query with a partially matching cache Path. However, most cache-based path planning algorithms adopt a point-to-point matching mode, which not only brings huge storage overhead to the server, but also greatly reduces the cache path query hit rate.
Disclosure of Invention
To at least partially solve the technical problems mentioned in the background, the solution of the present disclosure provides a solution for path planning for unmanned surface vessels. By using the scheme disclosed by the invention, the path planning is executed on the unmanned surface vehicle through the cooperation of the edge server and the cloud server, and the final path is determined through the path cache assistance, so that the path planning efficiency is improved, and the response speed of the path request is improved. To this end, the present disclosure provides solutions in a number of aspects as follows.
In one aspect, the present disclosure provides a method for path planning for an unmanned surface vessel, the method performed by an edge server and comprising: receiving a path planning request sent by a target unmanned surface vessel; determining a final path of the target unmanned surface vessel within or outside a coverage area of the edge server according to the path planning request, wherein when the path planning request is outside the coverage area of the edge server, the method comprises: sending the path planning request to a cloud server to obtain a preliminary path planning returned by the cloud server based on the path planning request; and determining a final path based on the preliminary path plan and a path cache in the edge server; wherein when the path planning request is within a coverage area of the edge server, the method comprises: determining a final path based on the path planning request and a path cache in the edge server so that the target unmanned surface vessel moves according to the final path.
In one embodiment, wherein the preliminary path plan includes entry and exit points through a coverage area of a corresponding edge server, wherein determining a final path based on the preliminary path plan and a path cache in the edge server comprises: inquiring whether a path containing the path passing through the entry point and the exit point exists in the path cache; and determining a final path based on the query result.
In another embodiment, wherein determining the final path based on the query results comprises: when a path which passes through the entry point and the exit point exists in the path cache, taking the path which passes through the entry point and the exit point in the path cache as a final path; or when the path cache is inquired to have no path passing through the entry point and the exit point, determining a final path according to the mesh information of the entry point and the exit point in the path cache.
In yet another embodiment, the determining the final path according to the grid positions of the entry point and the exit point in the path cache includes: in response to the entry point and the exit point in the path cache being within the same mesh, performing a path planning operation on the entry point and the exit point to generate a final path; or determining a final path based on finding a shared path in response to the entry point and the exit point in the path cache being within different grids.
In yet another embodiment, wherein determining the final path based on finding the shared path comprises: finding a sharing path based on the grid positions of the entry point and the exit point; determining a starting point and an end point of the sharing path; executing path planning operation on the starting point and the end point of the shared path and the entry point and the exit point respectively to generate a splicing path; and splicing the shared path with the splicing path to generate the final path.
In yet another embodiment, wherein the path planning operation is performed by: determining the slope of adjacent path points in the path; connecting the path points with different slopes and the farthest distance to realize path planning; and/or adding new path points in a path segment comprising a plurality of grid areas; and connecting the new path points to realize path planning.
In yet another embodiment, wherein determining a final path based on the path planning request and the path cache in the edge server comprises: determining a start point and an end point of a target unmanned surface vessel within a coverage area of the edge server based on the path planning request; querying whether a path containing a starting point and an ending point of the target unmanned surface vessel exists in a path cache in the edge server; and determining a final path according to the query result.
In yet another embodiment, the method further comprises updating the final path into the path cache by: determining a unit space profit index of the final path based on the query frequency of the path cache, the calculation cost for planning the final path and the occupied space of the final path in the path cache; and updating the final path to the path cache according to the storage capacity of the path cache and the unit space profit index of the final path.
In another aspect, the present disclosure also provides a system for path planning for an unmanned surface vessel, comprising: a plurality of edge servers for performing the method of any one of claims 1-8; and a cloud server for: receiving path planning requests sent by the edge servers; generating a preliminary path plan based on the path plan request; and returning the preliminary path plan to the corresponding edge server.
In yet another aspect, the present disclosure also provides a computer readable storage medium having stored thereon computer readable instructions for path planning an unmanned surface vessel, which when executed by one or more processors, implement a plurality of embodiments as previously described.
According to the scheme, the path planning is executed on the unmanned surface vehicle through the cooperation of the edge server and the cloud server, so that the problem that the time consumption of path planning calculation is increased exponentially due to the increase of the resolution of the map and the distance between the starting point and the target point of the unmanned surface vehicle is avoided, and the path planning efficiency is improved. Further, the scheme of the disclosure assists the path planning algorithm to determine the path by determining the final path with the aid of the path cache, so that the response speed of the path request is improved. In addition, the method and the device update the path cache by calculating the unit space income index of the final path so as to improve the utilization rate and the query rate of the path cache.
Drawings
The above and other objects, features and advantages of exemplary embodiments of the present disclosure will become readily apparent from the following detailed description read in conjunction with the accompanying drawings. In the drawings, several embodiments of the disclosure are illustrated by way of example and not by way of limitation, and like or corresponding reference numerals indicate like or corresponding parts and in which:
fig. 1 is an exemplary flow diagram illustrating a method for path planning for an unmanned surface vessel in accordance with an embodiment of the present disclosure;
fig. 2 is an exemplary diagram illustrating a preliminary planned path according to an embodiment of the present disclosure;
FIG. 3 is an exemplary diagram illustrating cache ways according to an embodiment of the disclosure;
FIG. 4 is an exemplary diagram illustrating path cache storage according to an embodiment of the disclosure;
FIG. 5 is an exemplary diagram illustrating a path planning operation according to an embodiment of the present disclosure;
fig. 6 is an exemplary flow diagram illustrating path planning for an unmanned surface vessel in accordance with an embodiment of the present disclosure;
FIG. 7 is an exemplary flow diagram illustrating querying a path cache to determine a final path according to an embodiment of the disclosure;
FIG. 8 is an exemplary flow diagram illustrating cache updating according to an embodiment of the present disclosure; and
fig. 9 is an exemplary schematic diagram illustrating a system for path planning for an unmanned surface vessel in accordance with an embodiment of the present disclosure.
Detailed Description
The technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings. It should be understood that the embodiments described in this specification are only some of the embodiments of the present disclosure provided to facilitate a clear understanding of the aspects and to comply with legal requirements, and not all embodiments of the present disclosure may be implemented. All other embodiments, which can be derived by a person skilled in the art from the embodiments disclosed in the specification without making any creative effort, shall fall within the protection scope of the present disclosure.
Fig. 1 is an exemplary flow diagram illustrating a method 100 for path planning for an unmanned surface vessel in accordance with an embodiment of the present disclosure. In one implementation scenario, the method 100 herein may be performed by an edge server.
As shown in fig. 1, at step S102, a path planning request sent from a target unmanned surface vehicle is received. Next, at step S104, a final path of the target unmanned surface vessel is determined within or outside the coverage area of the edge server according to the path planning request, so that the target unmanned surface vessel moves according to the final path. In one implementation scenario, the aforementioned edge servers may include one or more, and the coverage area of the edge server may be a map area that is artificially divided according to the signal coverage of each edge server (e.g., in fig. 9, the total map area M is divided into a map area M1 and a map area M2 according to the coverage of the edge server). It is understood that the foregoing path planning request being within the coverage area of the edge server means that the start point and the end point of the path planning request are within the map area covered by the edge server. The path planning request is outside the coverage area of the edge server, which means that the starting point of the path planning request is in the map area covered by the edge server, and the end point is outside the map area covered by the edge server.
Specifically, the step S104 may include determining the final path of the target unmanned surface vehicle according to two scenarios, i.e., the path planning request is outside the coverage area of the edge server and the path planning request is within the coverage area of the edge server, in the step S104-1 (shown by a dotted box) and in the step S104-2 (shown by a dotted box), respectively.
In one embodiment, when the path planning request is outside the coverage area of the edge server, the step S104-1 further includes: in step S104-11, a path planning request is sent to the cloud server to obtain a preliminary path plan returned by the cloud server based on the path planning request. In some embodiments, the preliminary path plan, which will be described in detail later in conjunction with fig. 2, may include entry and exit points through the coverage area of the corresponding edge server obtained by the cloud server based on the path plan request. Based on the received preliminary path plan, in step S104-12, a final path is determined based on the preliminary path plan and the path cache in the edge server. As described earlier, the preliminary path plan includes entry and exit points through the coverage area of the corresponding edge server, whereby a final path may be determined by querying whether a path containing the passed entry and exit points exists in the path cache, and based on the query result.
In one implementation scenario, when it is queried that a path including entry and exit points passing through a coverage area of a corresponding edge server exists in the path cache, the path passing through the entry and exit points in the path cache is taken as a final path. In another implementation scenario, when no path including entry points and exit points passing through the coverage area of the corresponding edge server exists in the query path cache, a final path is determined according to mesh information where the entry points and the exit points are located in the path cache. In some embodiments, the aforementioned entry and exit points may be within the same grid or within different grids, as will be described in detail below for each scenario.
In one scenario, a final path is determined based on finding a shared path in response to entry and exit points in the path cache being within different grids. Specifically, the shared path may be first searched based on the grid positions of the entry point and the exit point, and the start point and the end point of the shared path may be determined. Then, a path planning operation is performed on the start point and the end point of the shared path and the entry point and the exit point, respectively, to generate a spliced path. And finally, splicing the shared path and the splicing path to generate a final path. In one embodiment, the aforementioned determination of the final path based on finding the shared path may be represented by the following mathematical expression:
Ps,t={Ps,a,Pa,b+Pb,t} (1)
wherein, Ps,tRepresenting the final path, Pa,bRepresenting a shared path with a, b as starting and ending points, Ps,a,Pb,tRepresenting a stitched path obtained via an edge server performing a path planning operation. Further, the final path length may be expressed as follows:
Ds,t=Ds,a+Da,b+Db,t (2)
wherein D iss,tDenotes the final path length, Da,bIndicates the shared path length, Ds,a、Db,tIndicating the splice path length. As can be seen from equation (2), the length error of the final path is inversely proportional to the length of the shared path, i.e. when the length of the shared path is much greater than the sum of the lengths of the splicing paths, the error is negligible. The aforementioned finding of the shared path to determine the final path and the aforementioned path planning operation will be described in detail later in conjunction with fig. 4-5.
In another scenario, in response to the entry point and the exit point in the path cache being within the same mesh, performing a path planning operation on the entry point and the exit point generates a final path, i.e., performing the path planning operation directly via the edge server, so as to plan a path with the entry point and the exit point as a start point and an end point as a final path.
In one embodiment, when the path planning request is within the coverage area of the edge server, the step S104-2 further includes the step S104-21: a final path is determined based on the path planning request and a path cache in the edge server so that the target unmanned surface vessel moves according to the final path. Specifically, the start and end points of a target unmanned surface vessel that is within the coverage area of the edge server may first be determined based on the path planning request. Similar to the obtained preliminary path planning returned by the cloud server, whether a path including the starting point and the ending point of the target unmanned surface vessel exists or not can be inquired in a path cache, and then a final path is determined according to an inquiry result. Reference may be made specifically to what is described above for step S104-12.
As can be seen from the above description, in the scheme of the present disclosure, the path planning is performed on the target unmanned surface vessel through cooperation between the edge server and the cloud server. It can be understood that the cloud server performs preliminary path planning on the target unmanned surface vessel through the low-resolution map. Further, the cloud server returns the preliminary path planning to the corresponding edge server (which is equivalent to that each edge server receives a path request sent by the cloud server), and then the edge server executes the path planning by using the high-resolution map, so that the problem that the time consumption of path planning calculation is exponentially increased due to the increase of the map resolution and the distance between the unmanned surface vessel starting point and the target point is avoided, and the path planning efficiency is improved. In addition, the method and the device also determine the path by inquiring the path cache, so that the response speed of the path request is greatly improved.
Fig. 2 is an exemplary diagram illustrating a preliminary planned path according to an embodiment of the present disclosure. Regions A, B, C and D, which are in turn shown in FIG. 2 as being divided by four rectangular boxes, can be coverage areas for four edge servers A, B, C and D. Suppose the starting point of the path planning request sent by the target unmanned surface vessel is in the area A and is marked as vsPoint; end point in region D and denoted vtAnd (4) point. That is, the path planning request for the target unmanned surface vehicle is outside the coverage area of the edge server. In this scenario, as can be seen from the foregoing description, the aforementioned path planning request may be sent to the cloud server via the edge server. Then, the cloud server performs preliminary path planning on the target unmanned surface vessel by using the low-resolution map to obtain a path Ps,tThe path passes through regions A, C and D in sequence, i.e., point v in sequence in the figures、v1、v2And vtThe path of (2). After the initial planning of the cloud server, the point v1Exit and entry points for region A and region C, point v2The exit and entry points for region C and region D. In one exemplary scenario, the cloud server connects point vsAnd exit point v1And returning to the edge server corresponding to the area A. Similarly, entry point v1And exit point v2Return to edge server corresponding to region C and entry point v2And point vtAnd returning to the edge server corresponding to the area C. Further, each edge server is based on the received entry point, exit point, and path cacheA final path is determined.
According to the entry point and the exit point of the cloud server returning to the corresponding edge server, the edge server firstly inquires whether a path passing through the entry point and the exit point exists in the path cache or not, and then determines a final path based on the inquiry result. As described above, when a path including a path passing through an entry point and an exit point exists in the path cache, the path passing through the entry point and the exit point in the path cache is taken as a final path. And when the query path cache does not have a path passing through the entry point and the exit point, determining a final path according to the mesh information of the entry point and the exit point in the path cache. The query path cache is described in detail below in conjunction with FIG. 3.
Fig. 3 is an exemplary diagram illustrating a cache way according to an embodiment of the present disclosure. As shown in FIG. 3, assume that point v is passed in sequence1、v2、v3、v4And v5For a cache path, pass v in sequence7、v6、v4And v9Is another cache way. In one exemplary scenario, assume that point v7And point v9Respectively representing an entry point and an exit point of the area covered by the edge server returned by the cloud server, and determining the existence of the passing point v by inquiring the path cache7And point v9Can pass through point v7And point v9As the final path. I.e. about to pass v7、v6、v4And v9As the final path.
As further shown point v8Suppose point v8And point v9Respectively representing an entry point and an exit point of the area covered by the edge server returned by the cloud server, and determining that the passing point v is not included by inquiring the path cache8And point v9Is then required according to point v8And point v9The mesh information of which determines the final path. From the foregoing, when the entry point and the exit point are within the same mesh, performing a path planning operation on the entry point and the exit point generates a final path. In one exemplary scenario, falseSet point v8And point v7Respectively entry and exit points of the area covered by the edge server, and point v8And point v7Within the same grid, it can be based on point v8And point 7 performs path planning to generate a final path. I.e. generating a point v8The path to point 7 (shown as a dashed line in the figure). When entry and exit points (e.g., point v) in the path cache8And point v9) Within the different grids, a final path is determined based on finding the shared path.
In determining the final path based on finding the shared path, the shared path may first be found based on the grid locations where the entry and exit points are located. Then, a path planning operation is performed on the start point and the end point of the shared path and the entry point and the exit point, respectively, to generate a spliced path. And finally, splicing the shared path and the splicing path to generate a final path. In one embodiment, in order to facilitate fast search of a shared path and improve search efficiency, the present disclosure further improves a storage manner of the path cache, that is, by storing the mesh positions of the path nodes, and updating the mesh reverse list based on the stored mesh positions of the path nodes. In one implementation scenario, the aforementioned mesh reverse list may store all path information for mesh boundary points. The way in which the path cache is stored will be described in detail below in conjunction with fig. 4.
Fig. 4 is an exemplary diagram illustrating path cache storage according to an embodiment of the disclosure. Again taking the above FIG. 3 as an example, assume that there are two paths P1,5And P7,9And path P1,5Passing point v1、v2、v3、v4And v5Center point v of1In the grid G1Middle and v2And v3In the grid G2Middle and v4In the grid G5And v5In the grid G8In (1). The aforementioned path P7,9Passing point v7、v6、v4And v9Center point v of7And v6In the grid G4Middle and v9In the grid G3In (1). In one implementation scenario, each path and its associated entries may be mappedThe path nodes are stored as shown in the left graph of fig. 4, i.e. path P1,5The corresponding path node information is G1(v1)、G2(v2,v3)、G5(v4) And G8(v5). Similarly, path P7,9The corresponding path node information is G4(v7,v6)、G5(v4) And G3(v9). Based on the aforementioned stored path information, a mesh reverse list, as shown on the right side in fig. 4, may be further updated, which may include mesh numbers and corresponding paths. E.g. grid G1Grid G2And grid G5All correspond to the path P1,5Grid G3Grid G4And grid G5
By the path cache storage mode, the shared path can be quickly positioned. Again using FIG. 3 as an example, assume that the final path is at point v8And point v9Entry and exit points, respectively, and path nodes are stored in the manner described above. Due to point v8In the grid G4Inner and outer grids G4Corresponding path P7,9Thus, path P can be divided7,9As a shared path. Further, the starting point and the end point of the shared path are determined according to the searched shared path. In one embodiment, an optimal path may be determined by calculating the distance from the entry point to the exit point to determine the start and end points of the shared path. For example, point v may be calculated8To point v7And point v6Is given by the distance of (v)8Point of departure v7Closer, point v can be pointed out7As a starting point of the shared path. Similarly, the end point of the shared path may be determined to be v9. Then, a path planning operation is performed on the start point and the end point of the shared path and the entry point and the exit point, respectively, to generate a spliced path. E.g. for entry point v8And a starting point v of the shared path7For example, a point v is pointed to8And point v7A path planning operation is performed to generate a stitched path (e.g., as shown by the dashed lines in fig. 3). Finally, path P will be shared7,9And splicing roadAnd splicing the paths to form a final path.
In one embodiment, the present disclosure further improves the a-algorithm to implement the above path planning operation. It is understood that the operation angle of the conventional a-x algorithm is limited to
Figure BDA0003268951720000101
And typically proceeds to the next step toward the next 8 adjacent grids. In addition, the traditional a-x algorithm has more turning points, not smooth paths, and more nodes of stored paths, which is not favorable for storing paths and searching shared paths. In a map with obstacles, the path marked by the traditional A-x algorithm usually appears by line segments in three directions of slant, horizontal and vertical alternately, and the sum of any two sides of a triangle is larger than the third side. In view of this, the scheme of the present disclosure is to represent the original two-edge path by using one edge as much as possible, and only the head and tail path nodes are retained. In an implementation scenario, the slopes of adjacent path points in the path may be determined, so as to connect the path points with different slopes and the farthest distance, so as to implement a path in which one edge represents the original two edges. For example, suppose there is a path Pa,b={c1,c2,…,cmThe slope of two adjacent path nodes is defined as alpha (c)i-1,ci). When alpha (c)i-1,ci)≠α(ci,ci+1) Then, the corresponding edge E (c) can be determinedi-1,ci) Slope of (d) and edge E (c)i,ci+1) If the slopes of (1) are different, the path node ciIs the turning point of the two edges, and the turning points distributed far away on the two edges are connected and do not pass through the barrier. The implementation of the above path planning operation via the modified a algorithm will be described in detail below in conjunction with fig. 5.
Fig. 5 is an exemplary diagram illustrating a path planning operation according to an embodiment of the present disclosure. As shown on the left in fig. 5, a path P is obtained based on path planning performed by the conventional a-algorithma,bThe path Pa,bPass through a plurality of path nodes and bypass obstacles (e.g., as shown by the black squares in the figure). From point c1 to point c6For example, where the slope at point c1 is the same as the slope at point c2, the slope at point c3 to point c6 is the same and different from the slope of points c1 and c2, and point c1 is farther from point c 6. Thus, point c1 may be connected to point c 6. Similarly, point c7 may be connected to point c8, point c9, and point c 10. Based on the foregoing operations, a path as shown on the right side in the figure can be acquired. In one implementation scenario, when a path segment traverses multiple meshes, a path segment such as the point c11 to the point c12 shown in the figure spans three meshes. In this scenario, a path planning operation may be implemented by adding a new path node (e.g., point D on the path shown on the right side of the figure) and connecting the new path nodes. The path nodes, the turning points and the total lengths of the paths after the path planning operation is performed by using the conventional a-algorithm and the improved a-algorithm are shown in table 1 below.
Table 1 comparison of conventional a algorithm and modified a algorithm for performing path planning operations
Algorithm Number of nodes Number of turns Total length of path
Tradition A 25 9 28.97
Improvement A 11 8 23.77
As can be seen from table 1, the path planning operation performed by using the improved a-algorithm can reduce unnecessary path nodes and turning points, and shorten the total length of the path, thereby reducing the storage space of the path cache and improving the path sharing capability, compared with the conventional a-algorithm.
Fig. 6 is an exemplary flow diagram illustrating path planning for an unmanned surface vessel according to an embodiment of the present disclosure. It is to be understood that fig. 6 is a specific embodiment of the method 100 of fig. 1 described above, and thus the description made above with respect to fig. 1 applies equally to fig. 6.
As shown in fig. 6, at step S601, a path request is sent by the unmanned surface vehicle to the edge server. Based on the aforementioned path request, at step S602, the edge server determines whether the path request is within its coverage area according to the received path request. When the path request is within the coverage area of the current edge server, the flow proceeds to step S603. At this step, the final path is determined by looking up the path cache. When the path request is outside the coverage area of the current edge server, the aforementioned path request is sent to the cloud server via the edge server, and at step S604, preliminary path planning is performed by the cloud server to obtain entry and exit points of the corresponding edge server. Based on the obtained entry point and exit point, the flow jumps to step S603. I.e. the final path is determined by looking up the path cache. Further, at step S605, it is determined whether a path is hit in the path cache, for example, whether a path passing through the entry point and the exit point is included in the path cache. When a path is hit, the edge server returns the hit path as a final path to the target unmanned surface vehicle (i.e., responds to the aforementioned path planning request) at step S606. At step S607, the target unmanned surface vehicle executes a path (i.e., moves according to the final path) according to the final path returned by the edge server. As further shown, when a path is missed, at step S608, a path planning operation is performed by finding a shared path and using the modified a algorithm to determine a final path. For the aforementioned operations of finding the shared path and planning the path, reference may be made to the contents described in fig. 3 to fig. 5, which are not described herein again. Finally, at step S609, the final path is updated into the path cache.
FIG. 7 is an exemplary flow diagram illustrating querying a path cache to determine a final path according to an embodiment of the disclosure. As shown in fig. 7, at step S701, a path cache is queried according to an entry point (or start point) and an exit point (or end point) of a corresponding edge server. Next, at step S702, it is determined whether the path cache is empty. I.e. by querying whether the path cache contains paths that pass through the entry and exit points of the corresponding edge server. When the path cache does not include a path passing through the entry point and the exit point of the corresponding edge server (i.e., the path cache is empty), in step S703, a path planning operation is performed on the entry point and the exit point by using the modified a-algorithm via the edge server to obtain a final path. Further, at step S704, a final path result is returned.
When the path cache includes a path passing through the entry point and the exit point of the corresponding edge server (i.e., the path cache is not empty), in step S705, it is determined whether the entry point and the exit point of the corresponding edge server are in the same mesh. When the entry point and the exit point of the corresponding edge server are in the same mesh, the flow jumps to S703, that is, the path planning operation is performed on the entry point and the exit point by using the modified a-algorithm via the edge server, and at step S704, the final path result is returned. When the entry point and the exit point of the corresponding edge server are in different grids, at step S706, the candidate path list PL is screened from the path cache to find a shared path.
Based on the candidate route list PL screened out as described above, at step S707, it is determined whether or not the candidate route list PL is empty. Similarly, when the candidate path list PL is an empty list, the flow jumps to S703 and returns the final path result via step S704. When the candidate path list PL is not an empty list, at step S708, an optimal shared path is found. Next, at S709, a splice path is determined based on the entry and exit points of the corresponding edge server and the start and end points of the shared path. And splicing the shared path and the splicing path to generate a final path, and returning a final path result in step S704.
In one embodiment, the present disclosure may further include updating the final path into the path cache (e.g., step S609 in fig. 6 described above). Specifically, the unit space profit index of the final path may be determined based on the query frequency of the path cache, the calculation cost for planning the final path, and the occupied space of the final path in the path cache. And then updating the final path into the path cache according to the storage capacity of the path cache and the unit space profit index of the final path.
In one implementation scenario, assume that the query frequency of the path cache is denoted as Fs,tAnd the calculation cost of planning the final path is recorded as Cs,t. It will be appreciated that the computational cost grows exponentially as the distance between the source and target points increases. Assuming that the occupation space of the final path in the path cache is denoted as Ss,tAnd S iss,tCan be expressed as follows:
Ss,t=|Ps,t+2·|Gs,t|| (3)
wherein S iss,tRepresenting a cache Path Ps,tTotal occupied space of, Ps,tPath information, G, representing all cache paths in the path caches,tIndicating the mesh information traversed by all the cache paths.
According to the above obtained inquiry frequency Fs,tCalculating the cost Cs,tAnd the occupied space Ss,tThe revenue per space indicator for the final path may be determined. Assume that the unit space gain is indexed as
Figure BDA0003268951720000131
Then
Figure BDA0003268951720000132
Can be represented by the following formula:
Figure BDA0003268951720000133
in one implementation scenario, since the goal of cache construction and update is to achieve a cache structure that maximizes the total revenue, the storage space of the edge server is limited. Therefore, the problem can be expressed as the following equation:
Figure BDA0003268951720000134
wherein,
Figure BDA0003268951720000135
denotes the revenue index, x, of the unit spaceiIndicating a specific path, m indicating the number of current caches,
Figure BDA0003268951720000136
representing the total buffer capacity. The above equation (5) can be understood as a complete 0-1 knapsack problem of NP, i.e. how to cache paths in a limited storage space in the embodiment of the present disclosure, so as to maximize the total profit. For example, when the cache space is sufficient, a completely new path (i.e., a path that is not determined by finding the shared path) obtained by the path planning operation performed by the edge server is directly inserted into the cache space, and revenue ranking is performed on all paths in the cache space. And when the cache space is full, sequencing the brand new path and the cache path according to the income, selecting the path needing caching by using a greedy algorithm, and returning a new cache result. The foregoing cache update process will be described in detail below in conjunction with fig. 8.
Fig. 8 is an exemplary flow chart illustrating cache updating according to an embodiment of the present disclosure. As shown in fig. 8, at step S801, a path P obtained by performing a path planning operation via an edge server is receiveds,t. Next, at step S802, it is determined whether the buffer space (i.e., path buffer) ψ is full. When the cache space ψ is sufficient, at step S803, the path P may be directly takens,tInsert to slowStoring the space psi, and calculating the path Ps,tRevenue per unit space index
Figure BDA0003268951720000137
Based on the obtained revenue per unit space index, at step S804, the revenue per unit space index is used
Figure BDA0003268951720000141
All paths in the cache space ψ are sorted. Finally, at step S805, the cache result of the cache space ψ is returned.
When the cache space ψ is full, at step S806, the paths P are calculated respectivelys,tAnd the unit space profit index of the existing cache path
Figure BDA0003268951720000142
And
Figure BDA0003268951720000143
further, at step S807, it is judged that the path P is brand-news,tRevenue per unit space index
Figure BDA0003268951720000144
Whether the value is larger than the unit space income index of the existing cache path
Figure BDA0003268951720000145
When in use
Figure BDA0003268951720000146
Is greater than
Figure BDA0003268951720000147
At step S808, a completely new path P is utilizeds,tThe existing cache path is replaced, and then the flow goes to step S804 to step S805. On the contrary, when
Figure BDA0003268951720000148
Is less than
Figure BDA0003268951720000149
Then, the flow jumps to step S805 to return the cache result of the cache space ψ.
According to the scheme, the path is planned in a coordinated mode between the edge server and the cloud server, so that the access times of the cloud server are reduced, the network delay is reduced, and the path planning efficiency is improved. Further, the whole map is divided into a plurality of sub-maps and stored on the edge server, so that the path planning time delay can be reduced. Furthermore, the method and the device also determine the final path by using the path auxiliary cache, reduce the path planning time delay and improve the response speed of the path request. In addition, the embodiment of the disclosure further performs a path planning operation by using the improved a-algorithm, so as to reduce the path storage space and obtain a smoother path. In some embodiments, the present disclosure also updates the cache based on the unit space revenue indicator of the final path to ensure that a cache structure that maximizes the total revenue is achieved in the limited storage space.
Fig. 9 is an exemplary schematic diagram illustrating a system 900 for path planning for an unmanned surface vessel in accordance with an embodiment of the present disclosure. As shown in fig. 9, the system 900 may include a plurality of edge servers 901 and cloud servers 902. In one implementation scenario, each edge server may communicate with the cloud server via a wired connection and via a mobile data network (e.g., a "4G" or "5G" wireless cellular network). In one embodiment, the cloud server 902 may be configured to receive path planning requests sent by a plurality of edge servers, and then generate a preliminary path plan based on the path planning requests. And finally, returning the preliminary path planning to the corresponding edge server. In another embodiment, each edge server 901 performs the method described above in fig. 1 based on the preliminary path plan returned by the cloud server, generates a final path, and returns the final path to the unmanned surface vehicle 903, so that the unmanned surface vehicle 903 moves according to the final path. In some embodiments, the system 900 of the present disclosure may also include a Road Side Unit ("RSU") 904. The RSU 904 may be used for communication between the edge server and the unmanned surface vehicle.
From the above description in conjunction with the accompanying drawings, those skilled in the art will also appreciate that embodiments of the present disclosure may also be implemented by software programs. The present disclosure thus also provides a computer program product. The computer program product may be used to implement the method for path planning for an unmanned surface vessel as described in this disclosure in connection with figures l-8.
It should be noted that while the operations of the disclosed methods are depicted in the drawings in a particular order, this does not require or imply that these operations must be performed in this particular order, or that all of the illustrated operations must be performed, to achieve desirable results. Rather, the steps depicted in the flowcharts may change the order of execution. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions.
It should be understood that when the claims of the present disclosure, and when the terms first, second, third, fourth, etc. are used in the specification and drawings, they are used only to distinguish one object from another, and not to describe a particular order. The terms "comprises" and "comprising," when used in the specification and claims of this disclosure, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
It is also to be understood that the terminology used in the description of the disclosure herein is for the purpose of describing particular embodiments only, and is not intended to be limiting of the disclosure. As used in the specification and claims of this disclosure, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should be further understood that the term "and/or" as used in the specification and claims of this disclosure refers to any and all possible combinations of one or more of the associated listed items and includes such combinations.
Although the embodiments of the present disclosure are described above, the descriptions are only examples for facilitating understanding of the present disclosure, and are not intended to limit the scope and application scenarios of the present disclosure. It will be understood by those skilled in the art of the present disclosure that various changes in form and details may be made therein without departing from the spirit and scope of the disclosure, and that the scope of the disclosure is to be limited only by the appended claims.

Claims (10)

1. A method for path planning for an unmanned surface vessel, the method performed by an edge server and comprising:
receiving a path planning request sent by a target unmanned surface vessel;
determining a final path of the target unmanned surface vessel within or outside a coverage area of the edge server in accordance with the path planning request,
wherein when the path planning request is outside the coverage area of the edge server, the method comprises:
sending the path planning request to a cloud server to obtain a preliminary path planning returned by the cloud server based on the path planning request; and
determining a best path based on the preliminary path plan and a path cache in the edge server
A final path;
wherein when the path planning request is within a coverage area of the edge server, the method comprises:
determining a final path based on the path planning request and a path cache in the edge server so that the target unmanned surface vessel moves according to the final path.
2. The method of claim 1, wherein the preliminary path plan includes entry and exit points through a coverage area of a corresponding edge server, wherein determining a final path based on the preliminary path plan and a path cache in the edge server comprises:
inquiring whether a path containing the path passing through the entry point and the exit point exists in the path cache; and
a final path is determined based on the query results.
3. The method of claim 2, wherein determining a final path based on the query results comprises:
when a path which passes through the entry point and the exit point exists in the path cache, taking the path which passes through the entry point and the exit point in the path cache as a final path; or
And when the path cache is inquired to have no path passing through the entry point and the exit point, determining a final path according to the mesh information of the entry point and the exit point in the path cache.
4. The method of claim 3, wherein determining a final path according to the grid locations of the entry and exit points in the path cache comprises:
in response to the entry point and the exit point in the path cache being within the same mesh, performing a path planning operation on the entry point and the exit point to generate a final path; or
Determining a final path based on finding a shared path in response to the entry point and the exit point in the path cache being within different grids.
5. The method of claim 4, wherein determining a final path based on finding a shared path comprises:
finding a sharing path based on the grid positions of the entry point and the exit point;
determining a starting point and an end point of the sharing path;
executing path planning operation on the starting point and the end point of the shared path and the entry point and the exit point respectively to generate a splicing path; and
and splicing the shared path and the splicing path to generate the final path.
6. The method of claim 5, wherein the path planning operation is performed by:
determining the slope of adjacent path points in the path;
connecting the path points with different slopes and the farthest distance to realize path planning; and/or
Adding new path points in a path segment containing a plurality of grid areas;
and connecting the new path points to realize path planning.
7. The method of claim 1, wherein determining a final path based on the path planning request and a path cache in the edge server comprises:
determining a start point and an end point of a target unmanned surface vessel within a coverage area of the edge server based on the path planning request;
querying whether a path containing a starting point and an ending point of the target unmanned surface vessel exists in a path cache in the edge server; and
and determining a final path according to the query result.
8. The method of any of claims 1-7, further comprising updating the final path into the path cache by:
determining a unit space profit index of the final path based on the query frequency of the path cache, the calculation cost for planning the final path and the occupied space of the final path in the path cache;
and updating the final path to the path cache according to the storage capacity of the path cache and the unit space profit index of the final path.
9. A system for path planning for an unmanned surface vessel, comprising:
a plurality of edge servers for performing the method of any one of claims 1-8; and
a cloud server to:
receiving path planning requests sent by the edge servers;
generating a preliminary path plan based on the path plan request; and
and returning the preliminary path planning to the corresponding edge server.
10. A computer readable storage medium comprising computer program instructions for path planning of an unmanned surface vessel, which when executed by one or more processors, cause the method of claims 1-8 to be implemented.
CN202111095147.XA 2021-09-17 2021-09-17 Method, system and related products for path planning for unmanned surface vessels Active CN113848897B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111095147.XA CN113848897B (en) 2021-09-17 2021-09-17 Method, system and related products for path planning for unmanned surface vessels

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111095147.XA CN113848897B (en) 2021-09-17 2021-09-17 Method, system and related products for path planning for unmanned surface vessels

Publications (2)

Publication Number Publication Date
CN113848897A true CN113848897A (en) 2021-12-28
CN113848897B CN113848897B (en) 2023-12-12

Family

ID=78974377

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111095147.XA Active CN113848897B (en) 2021-09-17 2021-09-17 Method, system and related products for path planning for unmanned surface vessels

Country Status (1)

Country Link
CN (1) CN113848897B (en)

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007228191A (en) * 2006-02-22 2007-09-06 Nippon Telegr & Teleph Corp <Ntt> Standby path setting system and standby path setting method
CN101227377A (en) * 2007-01-17 2008-07-23 华为技术有限公司 Method for implementing shared risk link circuit group separation crossing field path
CN103294909A (en) * 2013-05-22 2013-09-11 王燚 Separation path calculation method based on sharing degree
US20170059341A1 (en) * 2015-08-31 2017-03-02 Sap Se Diversified route planning for public transportation network
US10079885B1 (en) * 2014-09-17 2018-09-18 Amazon Technologies, Inc. Multi-channel distributed predictive edge cache
US20180356238A1 (en) * 2017-06-07 2018-12-13 International Business Machines Corporation Methods and systems for determining shared routes
CN109299822A (en) * 2018-09-21 2019-02-01 中国联合网络通信集团有限公司 Vehicle dispatching method, device, system and storage medium
CN110276975A (en) * 2019-07-10 2019-09-24 中国联合网络通信集团有限公司 A kind of automatic driving vehicle shunts dispatching method and system
US10545026B1 (en) * 2017-06-05 2020-01-28 Philip Raymond Schaefer System and method for tracking the position of a person and providing navigation assistance
CN110975291A (en) * 2019-11-20 2020-04-10 中国人民解放军国防科技大学 Path extraction method and system
US20200241541A1 (en) * 2019-01-28 2020-07-30 GM Global Technology Operations LLC System and method of an algorithmic solution to generate a smooth vehicle velocity trajectory for an autonomous vehicle with spatial speed constraints
CN111882904A (en) * 2020-07-27 2020-11-03 扬州大学 Port area environment unmanned heavy truck safety early warning method based on edge calculation
CN111982109A (en) * 2019-05-24 2020-11-24 北京百度网讯科技有限公司 Method, apparatus, device and computer-readable storage medium for path planning
CN112380460A (en) * 2020-11-18 2021-02-19 湖南大学 Shortest path query method and system based on approximate algorithm
CN112629533A (en) * 2020-11-11 2021-04-09 南京大学 Refined path planning method based on road network rasterization road traffic flow prediction
CN113377814A (en) * 2021-06-09 2021-09-10 北京斯年智驾科技有限公司 Path information acquisition method and device, electronic equipment and readable medium

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007228191A (en) * 2006-02-22 2007-09-06 Nippon Telegr & Teleph Corp <Ntt> Standby path setting system and standby path setting method
CN101227377A (en) * 2007-01-17 2008-07-23 华为技术有限公司 Method for implementing shared risk link circuit group separation crossing field path
CN103294909A (en) * 2013-05-22 2013-09-11 王燚 Separation path calculation method based on sharing degree
US10079885B1 (en) * 2014-09-17 2018-09-18 Amazon Technologies, Inc. Multi-channel distributed predictive edge cache
US20170059341A1 (en) * 2015-08-31 2017-03-02 Sap Se Diversified route planning for public transportation network
US10545026B1 (en) * 2017-06-05 2020-01-28 Philip Raymond Schaefer System and method for tracking the position of a person and providing navigation assistance
US20180356238A1 (en) * 2017-06-07 2018-12-13 International Business Machines Corporation Methods and systems for determining shared routes
CN109299822A (en) * 2018-09-21 2019-02-01 中国联合网络通信集团有限公司 Vehicle dispatching method, device, system and storage medium
US20200241541A1 (en) * 2019-01-28 2020-07-30 GM Global Technology Operations LLC System and method of an algorithmic solution to generate a smooth vehicle velocity trajectory for an autonomous vehicle with spatial speed constraints
CN111982109A (en) * 2019-05-24 2020-11-24 北京百度网讯科技有限公司 Method, apparatus, device and computer-readable storage medium for path planning
CN110276975A (en) * 2019-07-10 2019-09-24 中国联合网络通信集团有限公司 A kind of automatic driving vehicle shunts dispatching method and system
CN110975291A (en) * 2019-11-20 2020-04-10 中国人民解放军国防科技大学 Path extraction method and system
CN111882904A (en) * 2020-07-27 2020-11-03 扬州大学 Port area environment unmanned heavy truck safety early warning method based on edge calculation
CN112629533A (en) * 2020-11-11 2021-04-09 南京大学 Refined path planning method based on road network rasterization road traffic flow prediction
CN112380460A (en) * 2020-11-18 2021-02-19 湖南大学 Shortest path query method and system based on approximate algorithm
CN113377814A (en) * 2021-06-09 2021-09-10 北京斯年智驾科技有限公司 Path information acquisition method and device, electronic equipment and readable medium

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
AL-ZAIDI RABAB 等: "Next Generation Marine Data Networks in an IoT Environment", 2017 SECOND INTERNATIONAL CONFERENCE ON FOG AND MOBILE EDGE COMPUTING (FMEC), pages 50 - 55 *
SHUO WAN 等: "Toward Big Data Processing in IoT: Path Planning and Resource Management of UAV Base Stations in Mobile-Edge Computing System", IEEE INTERNET OF THINGS JOURNAL, vol. 7, no. 7, pages 5995 - 6009, XP011798200, DOI: 10.1109/JIOT.2019.2954825 *
YU ZHE等: "Joint Task Offloading and Resource Allocation in UAV-Enabled Mobile Edge Computing", IEEE INTERNET OF THINGS JOURNAL, vol. 7, no. 4, pages 3147 - 3159, XP011783792, DOI: 10.1109/JIOT.2020.2965898 *
陈友东 等: "基于边缘计算的工业应用:自动导引小车控制系统", 计算机集成制造系统, vol. 25, no. 12, pages 3191 - 3198 *

Also Published As

Publication number Publication date
CN113848897B (en) 2023-12-12

Similar Documents

Publication Publication Date Title
CN108733803B (en) Multi-user space keyword query method under road network
EP3295616B1 (en) Region guided and change tolerant fast shortest path algorithm and graph preprocessing framework
CN108827335B (en) Shortest path planning method based on one-way search model
US20110158232A1 (en) Computer-implemented systems and methods for planning a route
CN109710708B (en) Electronic map mapping method and device
Chen et al. Research on Ship Meteorological Route Based on A‐Star Algorithm
WO2023019873A1 (en) Cleaning route planning
KR20080093580A (en) Path finding system and method
CN112484733B (en) Reinforced learning indoor navigation method based on topological graph
Huang et al. Frequent pattern-based map-matching on low sampling rate trajectories
Alves Peixoto et al. A framework for parallel map-matching at scale using Spark
CN114859932A (en) Exploration method and device based on reinforcement learning and intelligent equipment
Safar et al. Optimized skyline queries on road networks using nearest neighbors
CN114399125B (en) Motorcade optimal trajectory control method and device, electronic equipment and storage medium
Cho et al. An efficient algorithm for computing safe exit points of moving range queries in directed road networks
Yin et al. Efficient trajectory compression and range query processing
CN115700641A (en) Shortest path determination method and device, electronic equipment and storage medium
CN113848897A (en) Method, system and related product for path planning for unmanned surface vessels
CN103345509B (en) Obtain the level partition tree method and system of the most farthest multiple neighbours on road network
CN109307513B (en) Real-time road matching method and system based on driving record
CN111553637B (en) Method and device for generating pickup path, electronic equipment and storage medium
An et al. A green self-adaptive approach for online map matching
CN112799420A (en) Real-time track planning method based on multi-sensor unmanned aerial vehicle
CN115547087B (en) Urban road network shortest path acquisition method based on two-stage method and direction induction and application
CN110399997B (en) Path planning method and system for multiple pass points, electronic device and storage 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
GR01 Patent grant
GR01 Patent grant