Task allocation and path planning method and system for multiple unmanned ships
By using unmanned boats to distribute and route planning in the fishing boat ice-added task, the problems of low efficiency and high consumption in the existing technology are solved, and efficient resource replenishment is achieved.
Patent Information
- Application Number
- CN202510080922.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-17
- Publication Date
- 2025-02-21
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
In the prior art, the ice-added task of fishing boats is inefficient, consumes a lot of manpower and material resources, and lacks reasonable planning and operation.
By obtaining the entire area map of the target area, determining the task points and clustering, multiple task areas are formed, each unmanned boat corresponds to a task area, and path planning is carried out to complete resource replenishment.
The unmanned resource replenishment of task point resources has been achieved, reducing the consumption of manpower and material resources, saving time, and improving resource replenishment efficiency.
Smart Images

Figure CN119494454A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of path planning, and in particular to a method and system for task allocation and path planning of multiple unmanned boats. Background Art
[0002] As a water vehicle, Unmanned Surface Vehicle (USV) can play an important role in a variety of scenarios due to its flexible mobility and low design, manufacturing and maintenance costs. One application of USV in fisheries is to add ice to fishing boats: at the fishing dock, before the fishing boats go out to sea, ice needs to be added to keep the fish caught after going out to sea fresh. This task is currently mostly completed using manually operated ice ships or ice trucks, which are inefficient, consume more manpower and material resources, and lack reasonable planning and operations. Summary of the invention
[0003] The present disclosure provides a method and system for task allocation and path planning of multiple unmanned boats, so as to at least solve the above technical problems existing in the prior art.
[0004] According to a first aspect of the present disclosure, a method for task allocation and path planning for multiple unmanned boats is provided, the method comprising: obtaining a global map of a target area; determining task points included in the target area, and clustering the task points based on the global map to obtain a plurality of task areas, wherein the number of the task areas is the same as the number of unmanned boats; matching the unmanned boats with the task areas according to the positions of the cluster centers of the task areas and the positions of the unmanned boats, with each unmanned boat corresponding to one task area; performing path planning for the unmanned boats for each task area so that the unmanned boats can complete resource replenishment for all task points; and The unmanned boat performs path planning so that the unmanned boat completes the resource replenishment of all mission points, including: for each mission area, determining the coordinates and the amount of resources carried by the unmanned boat and the coordinates and the required amount of resources of each mission point in the mission area; determining the target mission point according to the coordinates and the amount of resources carried by the unmanned boat and the coordinates and the required amount of resources of each mission point; controlling the unmanned boat to move to the target mission point to replenish the target mission point with resources until the target mission point obtains the required amount of resources, and determining the next target mission point of the unmanned boat according to the new coordinates and the remaining amount of resources of the unmanned boat, until the unmanned boat completes the resource replenishment of all mission points in the mission area.
[0005] In one possible implementation manner, obtaining a global map of the target area includes: establishing an environmental map of the target area; determining location information of the unmanned boat, and dividing the target area into a plurality of mapping areas through a Voronoi diagram based on the location information, wherein each unmanned boat corresponds to a mapping area and mapping the mapping areas to obtain a regional map; and fusing the regional maps to obtain a global map of the target area.
[0006] In one possible implementation, the unmanned boat is matched with the mission area based on the position of the cluster center of the mission area and the position of the unmanned boat, and each unmanned boat corresponds to a mission area, including: determining the position of the cluster center of each mission area and the position of each unmanned boat; determining an obstacle avoidance path from each unmanned boat to each cluster center based on the position of the cluster center and the position of the unmanned boat; determining the minimum value of the sum of obstacle avoidance paths from all unmanned boats to all cluster centers; and determining the matching relationship between the unmanned boat and the mission area based on the minimum value of the sum of obstacle avoidance paths.
[0007] In one embodiment, the method also includes: optimizing the path planning of the unmanned boat according to a first indicator, a second indicator and a third indicator, wherein the first indicator is the length of the path that the unmanned boat needs to move to each mission point, the second indicator is the energy consumed by the unmanned boat to move to each mission point, and the third indicator is the waiting time for each mission point from the beginning of obtaining resources to obtaining the required amount of resources.
[0008] In one possible implementation, the path planning of the unmanned boat is optimized according to the first indicator, the second indicator and the third indicator, including: determining a first weight corresponding to the first indicator, a second weight corresponding to the second indicator, and a third weight corresponding to the third indicator; determining a total indicator result of the unmanned boat for resource replenishment to each mission point according to the first indicator, the first weight, the second indicator, the second weight, the third indicator and the third weight; determining the mission point with the smallest total indicator result as the target mission point; controlling the unmanned boat to move to the target mission point to replenish resources to the target mission point until the target mission point obtains the required amount of resources.
[0009] According to a second aspect of the present disclosure, a task allocation and path planning system for multiple unmanned boats is provided, the system comprising: an environmental perception module, used to perceive environmental information of a target area and parameter information of the unmanned boat; a control module, used to control the navigation of the unmanned boat; a task allocation and path planning module, used to divide a target area into multiple task areas and determine the correspondence between the task areas and the unmanned boats, and also used to plan the path for the unmanned boat to replenish resources to the task points in the corresponding task areas; the task allocation and path planning module comprises: a map fusion module, used to map the target area to obtain a global map of the target area; a task allocation module, used to cluster the task points in the target area to obtain multiple task areas, and match the task areas with the unmanned boats, and allocate a corresponding task area to each unmanned boat, so that the unmanned boat completes the resource replenishment of the task points in the corresponding task area; a path planning module, used to plan the path for the unmanned boat to replenish resources to the task points in the task area where it is located.
[0010] In one possible implementation manner, the environmental perception module includes: a lidar sensor module for acquiring point cloud data of a target area; a visual camera perception module for acquiring visual image information of a target area; an inertial measurement unit sensor module for measuring motion parameters of the unmanned boat and sensing various state parameters of the unmanned boat; and a positioning module for positioning the unmanned boat.
[0011] In one possible implementation, the control module includes: a motion control module, used to control the movement of the unmanned boat so that the unmanned boat can complete the resource supply of the task point in the corresponding mission area; a propulsion and steering module, used to control the movement and steering of the unmanned boat so that the unmanned boat can complete the resource supply of the task point in the corresponding mission area.
[0012] According to a third aspect of the present disclosure, there is provided an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method described in the present disclosure.
[0013] According to a fourth aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to cause the computer to execute the method described in the present disclosure.
[0014] The disclosed method and system for task allocation and path planning of multiple unmanned boats is based on the global map of the target area, clusters the task points contained in the target area to obtain multiple task areas, matches the unmanned boats with the task areas according to the location of the cluster center of the task area and the location of the unmanned boats, so that each unmanned boat corresponds to a task area, and plans the path for the corresponding unmanned boat for each task area, so that the unmanned boat completes the resource replenishment of the task points in the corresponding task area. The application of this method can realize the unmanned resource replenishment of the task points, reduce the consumption of manpower and material resources, and save time; by dividing the target area into multiple task areas, each unmanned boat can be responsible for the resource replenishment of the task points in a task area, and the unmanned boats do not interfere with each other, which greatly improves the efficiency of resource replenishment; for each task area, the path for the unmanned boat to replenish resources to the task points is planned, which also improves the efficiency of resource replenishment at the task points, and solves the existing difficulties in replenishing resources at the task points due to lack of manpower and difficulty in quickly completing resource replenishment.
[0015] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] The above and other objects, features and advantages of the exemplary embodiments of the present disclosure will become readily understood by reading the detailed description below with reference to the accompanying drawings. In the accompanying drawings, several embodiments of the present disclosure are shown in an exemplary and non-limiting manner, in which: In the drawings, the same or corresponding reference numerals represent the same or corresponding parts.
[0017] Figure 1 The following is a schematic diagram showing the implementation process of a method for task allocation and path planning of multiple unmanned boats in an embodiment of the present disclosure. Figure 1 ; Figure 2 The following is a schematic diagram showing the implementation process of a method for task allocation and path planning of multiple unmanned boats in an embodiment of the present disclosure. Figure 2 ; Figure 3 The following is a schematic diagram showing the implementation process of a method for task allocation and path planning of multiple unmanned boats in an embodiment of the present disclosure. Figure 3 ; Figure 4 A module schematic diagram of a task allocation and path planning system for multiple unmanned boats according to an embodiment of the present disclosure is shown; Figure 5 A schematic diagram of the structure of an electronic device according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0018] In order to make the purpose, features, and advantages of the present disclosure more obvious and easy to understand, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, not all of the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present disclosure.
[0019] Figure 1 The following is a schematic diagram showing the implementation process of a method for task allocation and path planning of multiple unmanned boats in an embodiment of the present disclosure. Figure 1 ,include: Step 101, obtaining a global map of the target area.
[0020] Step 102, determine the mission points included in the target area, cluster the mission points based on the global map, and obtain multiple mission areas, where the number of mission areas is the same as the number of unmanned boats.
[0021] The target area is the area where the task points to be replenished are located. The task points included in the target area are determined based on the target area. In this application, the task points can be fishing boats to be replenished in the target area. Based on the global map, the task points are clustered to obtain multiple task areas with the same number of unmanned boats. Each unmanned boat corresponds to a task area. The K-means algorithm is used to cluster the task points.
[0022] Step 103, according to the location of the cluster center of the mission area and the location of the unmanned boat, the unmanned boat is matched with the mission area, and each unmanned boat corresponds to one mission area.
[0023] According to the location of the cluster center of the mission point in the mission area and the location of the unmanned boat, the unmanned boat is matched with the mission area so that each unmanned boat can be uniquely matched with a mission area to complete the resource supply of the mission point in the mission area. Each unmanned boat completes the resource supply of the mission point in the corresponding mission area.
[0024] Step 104, for each mission area, the path of the unmanned boat is planned so that the unmanned boat can complete the resource supply to all mission points.
[0025] For each mission area, determine the location of the mission point in the mission area and the amount of resources required for the mission point. The unmanned boat needs to complete the resource replenishment of each mission point. Therefore, the path of the unmanned boat is planned according to the location of the mission point so that the unmanned boat can complete the resource replenishment of all mission points in the mission area. If the unmanned boat corresponding to each mission area completes the resource replenishment of the mission point in the corresponding mission area, then all unmanned boats can complete the resource replenishment of all mission points in the target area.
[0026] This application is based on the global map of the target area, clusters the mission points contained in the target area to obtain multiple mission areas, matches the unmanned boats with the mission areas according to the location of the cluster center of the mission area and the location of the unmanned boats, so that each unmanned boat corresponds to a mission area, and for each mission area, plans the path for the corresponding unmanned boat so that the unmanned boat completes the resource replenishment of the mission points in the corresponding mission area. Applying this method, unmanned resource replenishment of mission points can be realized, reducing the consumption of manpower and material resources and saving time; by dividing the target area into multiple mission areas, each unmanned boat can be responsible for the resource replenishment of a mission point in a mission area, and the unmanned boats do not interfere with each other, which greatly improves the efficiency of resource replenishment; for each mission area, the path for the unmanned boat to replenish resources to the mission point is planned, further improving the efficiency of resource replenishment of the mission point.
[0027] In one possible implementation, obtaining a global map of a target area includes: Create an environmental map of the target area; Determine the location information of the unmanned boat, divide the target area into multiple mapping areas through the Voronoi diagram based on the location information, each unmanned boat corresponds to a mapping area and the mapping area is mapped to obtain a regional map; The regional maps are fused to obtain the global map of the target area.
[0028] First, the existing semantic map and satellite map data of the target area are used as the environmental map. On the existing environmental map, the position of each unmanned boat is determined, and the Delaunay triangle with each unmanned boat as the vertex is obtained. The Delaunay triangulation is constructed based on the Delaunay triangle, and the centers of the circumscribed circles of all Delaunay triangles in the Delaunay triangulation are connected to obtain the Voronoi map of the target area. The Voronoi map divides the entire target area into multiple mapping areas with the same number of unmanned boats. Each unmanned boat corresponds to a mapping area. The mapping area is mapped to obtain a regional map. Different unmanned boats independently map different mapping areas to obtain multiple regional maps. Then, the multiple regional maps are fused to obtain the global map of the target area.
[0029] Each area is mapped by the corresponding unmanned boat. The Voronoi map can ensure that the distance from any point in the area to the unmanned boat corresponding to the area is less than the distance to other unmanned boats. This distance is the obstacle avoidance distance from any point to the unmanned boat, that is, , ,in, represents the total number of regions, P represents any point P in the i-th region, represents the position of the unmanned boat corresponding to the ith area, represents the position of the unmanned boat corresponding to the jth area, Indicates point P to The obstacle avoidance distance, Indicates point P to The obstacle avoidance distance is the distance from point P in the ith area to the unmanned boat in the ith area. The obstacle avoidance distance is less than or equal to the unmanned boat in other areas By dividing the wharf area into Voronoi diagrams, the efficiency of map building is ensured and improved.
[0030] In one possible implementation, Figure 2 As shown, according to the location of the cluster center of the mission area and the location of the unmanned boat, the unmanned boat is matched with the mission area. Each unmanned boat corresponds to a mission area, including: Step 201, determining the location of the cluster center of each mission area and the location of each unmanned boat; Step 202, determining an obstacle avoidance path from each unmanned boat to each cluster center according to the location of the cluster center and the location of the unmanned boat; Step 203, determining the minimum value of the sum of obstacle avoidance paths from all unmanned boats to all cluster centers; Step 204, determining the matching relationship between the unmanned boat and the mission area according to the minimum value of the obstacle avoidance path and .
[0031] After completing the division of the mission area, the mission area is matched with the unmanned boat. First, for each mission area after the division, the cluster center of the mission area is determined according to the mission points contained in the mission area, and the location of the cluster center of each mission area and the location of each unmanned boat are determined based on the global map. According to the Probabilistic Roadmap (PRM) algorithm, the path sequence from the location of the unmanned boat to the location of the cluster center is obtained to generate the Dubins path. A certain number of sampling points are randomly selected in the mission area, and the points in the obstacles are eliminated. All sampling points are connected in the form of straight line segments, and then the lines passing through the obstacles are eliminated to obtain an undirected graph. In the undirected graph, the shortest path is calculated, that is, the path sequence from the location of the unmanned boat to the location of the cluster center. According to the order of the sequence, the Dubins algorithm is used to obtain a series of Dubins paths connecting different sampling points to obtain the obstacle avoidance path from the unmanned boat to the cluster center. In one embodiment, the present application is based on the undirected graph generated by the PRM algorithm, and the Dijkstra algorithm or the A star algorithm can be used to find the shortest path.
[0032] After obtaining the obstacle avoidance path from each unmanned boat to each cluster center, build the task allocation function ,in Indicates the position of the unmanned boat. , represents the location of the cluster center of the task area, , n is the number of mission areas and unmanned boats, for all unmanned boats and cluster centers, the task allocation function is constructed as f, where f is a function from { }arrive{ }, F is a function space, function Indicates the location of the cluster center from the mission area To the location of the unmanned boat The sum of the Dubins paths is the obstacle avoidance path from each unmanned boat to the cluster center of each mission area. By determining the minimum value of the task allocation function f, the sum of the obstacle avoidance paths from all unmanned boats to the cluster center is made shortest. The corresponding matching relationship between the unmanned boats and the cluster center is further determined when the task allocation function f takes the minimum value. An unmanned boat matches the cluster center of a mission area, and the unmanned boat is only responsible for resource replenishment at the task point of the corresponding mission area.
[0033] In one possible implementation, Figure 3 As shown, for each mission area, the path planning is performed for the unmanned boat so that the unmanned boat can complete the resource supply to the mission point, including: Step 301, for each mission area, determine the coordinates and carried resources of the unmanned boat and the coordinates and required resources of each mission point in the mission area; Step 302, determining the target mission point according to the coordinates and the amount of resources carried by the unmanned boat and the coordinates and the amount of resources required of each mission point; Step 303, control the unmanned boat to move to the target mission point to supply resources to the target mission point. After obtaining the required amount of resources from the target mission point, determine the next target mission point of the unmanned boat according to the new coordinates of the unmanned boat and the remaining amount of resources, until the unmanned boat completes the resource supply to all mission points in the mission area.
[0034] The unmanned boat moves from its location to a mission point to replenish resources at the mission point, moves from one mission point to another, and returns from the mission point to the supply station to complete its own resource replenishment, which is called an operation of the unmanned boat. The process of the unmanned boat replenishing resources to the mission point in the mission area can be divided into multiple operations, and the decision of which operation the unmanned boat performs is to determine the target point of the next heading of the unmanned boat. The target point may be a mission point to replenish resources for the mission point, or it may be a supply station to return to the supply station to replenish resources due to insufficient resources carried by itself.
[0035] For each mission area, when determining the unmanned boat in the mission area to perform the next operation, path planning is performed for all possible operations. First, the coordinates of the unmanned boat and the coordinates of each mission point are determined, and the path sequence from the coordinates of the unmanned boat to the coordinates of the mission point is obtained according to the PRM algorithm to generate a Dubins path. The mission point with the shortest Dubins path can be used as the target mission point; or the amount of resources carried by the unmanned boat is compared with the amount of resources required for each mission point, and the mission point with a required amount of resources less than the amount of resources carried by the unmanned boat is used as the target mission point; or the mission point with a total amount of resources required by the mission point less than the amount of resources carried by the unmanned boat is first used as the initial mission point, and then the path sequence from the coordinates of the unmanned boat to the coordinates of the initial mission point is obtained according to the PRM algorithm to generate a Dubins path, and the initial mission point with the shortest Dubins path is used as the target mission point.
[0036] After determining the target mission point, control the unmanned boat to move to the target mission point and supply resources to the target mission point. After obtaining the required amount of resources at the target mission point, determine the next target mission point based on the new coordinates of the unmanned boat and the remaining amount of resources it carries, until the unmanned boat completes the resource supply to all mission points in the mission area.
[0037] It is understandable that when the amount of resources carried by the unmanned boat is less than the amount of resources required by the mission point in the mission area, the next step of the unmanned boat should be to return to the supply station to replenish its own resources. The target mission point can also be determined based on the location of the unmanned boat, that is, the location of the resource station.
[0038] Each time an operation is performed, the coordinates of the unmanned boat and the amount of resources it carries will change. Similarly, the amount of resources required for the mission point will also change. The coordinates of the unmanned boat in the mission area, the amount of resources it carries, the coordinates of the mission point, and the amount of resources required for the mission point are called states. Then an operation of the unmanned boat can be regarded as a function of the mission area transferring from one state to another. If the state of the mission area is defined as ,in, represents the coordinates of the unmanned boat after the i-th operation, is the amount of resources carried by the unmanned boat after the i-th operation, is the coordinate of task point j in the task area after the i-th operation, where j=1, 2, ..., n, and n is the number of task points in the task area that have not yet fully obtained the required amount of resources after the i-th operation. Indicates the required amount of resources for task point j after the i-th operation. For example, if a task point requires 5t of resources, when there is no resource replenishment, its required amount of resources is 5t. If it is replenished with resources, but the replenishment amount is 2t, then its required amount of resources becomes 3t. If the resource replenishment amount is 5t, then its required amount of resources becomes 0. At this time, the task point can be changed from state Assuming that the total number of mission points in the mission area is m, and the possibility of the initial path planning of the unmanned boat is m, in the process of the unmanned boat replenishing resources for the mission points, when the unmanned boat replenishes resources for a certain mission point so that the mission point obtains the required amount of resources, the mission point is removed from the path planning of the unmanned boat. When determining the next target mission point of the unmanned boat, it only needs to be determined from the remaining mission points to be replenished, until there are no mission points that have not been replenished in the mission area. In this way, as the unmanned boat replenishes resources for the mission points, the calculation speed can be improved.
[0039] After the unmanned boat performs the i+1th operation, determine the status ,according to Defining vectors , the vector is and Compared with the coordinate part of the vector corresponding to the changed task point, that is, if and Compared with the above, the coordinates and required resources of all task points have not changed. ,like and Compared with the i+1th operation, the coordinates or required resources of a task point after the i-th operation have changed compared with the i-th operation. The coordinates of the task point where the coordinates or the amount of resources required have changed. Define a scalar R, which is and Compared with the required resource amount of the task point corresponding to the required resource amount change, that is, if and Compared with the previous operation, the required resources of a task point after the i+1th operation have changed compared with the ith operation, then R is the required resources after the change, that is, if and In comparison, if the resource demand after the i+1th operation of the task point does not change compared to the i-th operation, then R is 0.
[0040] In one embodiment, the method further comprises: The path planning of the unmanned boat is optimized according to the first, second and third indicators. The first indicator is the length of the path the unmanned boat needs to move to each mission point, the second indicator is the energy consumed by the unmanned boat to move to each mission point, and the third indicator is the waiting time for each mission point from the beginning of obtaining resources to obtaining the required amount of resources.
[0041] In order to make the unmanned boat consume less energy and be more efficient when supplying resources to multiple mission points, the path of the unmanned boat's resource supply can be planned. Specifically, the target mission point for each movement of the unmanned boat can be determined based on the length of the path the unmanned boat needs to move to the mission point, the energy consumed to move to the mission point, and the time required to supply resources to the mission point after moving to the mission point.
[0042] The first indicator is the path length of the unmanned boat moving to each mission point. Here, the path length is the Dubins path that the unmanned boat needs to move to the mission point. The first indicator actually considers the time required for the unmanned boat to reach the mission point coordinates from the unmanned boat coordinates. Since the speed of the unmanned boat is constant, the length of the Dubins path is related to the time required for the unmanned boat to reach the mission point coordinates, and the two are in a proportional relationship. Therefore, the path length of the unmanned boat moving to the mission point is used as the first indicator.
[0043] The length of the Dubins path is also positively correlated with the energy consumed by the unmanned boat. The longer the Dubins path, the higher the energy consumed by the unmanned boat. Therefore, the energy consumed by the unmanned boat to move to the mission point is used as the second indicator. Compared with straight-line navigation, the unmanned boat will have higher energy consumption when turning. This application mainly considers the energy consumption of the unmanned boat when turning. Minimizing energy consumption can save energy and improve the efficiency of the unmanned boat's energy utilization.
[0044] The third indicator is the total time it takes the unmanned boat to reach the mission point and replenish resources for the mission point. The present invention considers that all unmanned boats have the same parameters, but since the parameters of the mission points are different, that is, the required resource amounts of the mission points are different, some mission points have a greater demand for resources, resulting in the unmanned boat failing to replenish the mission point with the required resources after one resource replenishment. Or, although the mission point does not have a large demand for resources, after the unmanned boat replenishes resources for the previous mission point, the remaining resources are insufficient to meet the resource needs of the current mission point. The unmanned boat first partially replenishes resources for the current mission point, and then returns to the supply station to replenish its own resources. At this time, the mission point needs to wait until all the required resources are obtained. This application ignores the time it takes for the unmanned boat to arrive at the mission point to load and unload resources for resource replenishment at the mission point, as well as the time it takes for the unmanned boat to load and unload resources at the supply station. It only considers the time it takes for the unmanned boat to travel back and forth between the mission point and the supply station. Therefore, the total time it takes for the unmanned boat to replenish resources at the mission point is used as the third indicator. Since the speed of the unmanned boat is constant, the total Dubins path that the unmanned boat needs to move between the mission point and the supply station during the process of the unmanned boat completing the resource replenishment of the mission point is considered.
[0045] The target mission point for the unmanned boat to replenish resources can be determined based on the above three indicators, so that the energy consumed and the time taken by the unmanned boat in the process of replenishing resources at the mission point can be minimized.
[0046] Further, the path planning of the unmanned boat is optimized according to the first indicator, the second indicator and the third indicator, including: Determine a first weight corresponding to the first indicator, a second weight corresponding to the second indicator, and a third weight corresponding to the third indicator; Determine the total index result of the unmanned boat's resource replenishment for each mission point according to the first index, the first weight, the second index, the second weight, the third index and the third weight; Determine the task point with the smallest total indicator result as the target task point; Control the unmanned boat to move to the target mission point and supply resources to the target mission point to obtain the required amount of resources.
[0047] For each unmanned boat, the path planning is performed on the unmanned boat to obtain the order in which the unmanned boat supplies resources to the task points in the corresponding task area, so that each operation of the unmanned boat can make the path of the unmanned boat moving to the task point, the energy consumed, and the time for the task point to wait for resource replenishment as a whole optimal. In the process of resource replenishment by the unmanned boat, the strategy is continuously updated according to the status of the unmanned boat and the task point until the resource replenishment of all task points in the task area is completed. When performing path planning, a greedy algorithm is used, that is, when making a decision for each operation, only this operation is made as optimal as possible, without considering the situation before and after this operation, with low complexity, fast calculation speed, and short time.
[0048] Determine a first weight corresponding to the first indicator, a second weight corresponding to the second indicator, and a third weight corresponding to the third indicator. According to the formula , where g is the total index result, As an indicator, is the weight corresponding to the indicator, =1. The first indicator is the length of the path that the unmanned boat needs to move to the mission point. The second indicator is the energy consumed by the unmanned boat to move to the mission point. , r represents the turning radius of the unmanned boat when turning. Since the motion constraint of the unmanned boat is underactuated, it only has forward and steering degrees of freedom, and the minimum turning radius is r. In this application, the unmanned boat is considered to always turn with the minimum turning radius. η is the energy coefficient of the unmanned boat when turning. is the angle of the unmanned boat when turning. The third indicator is the waiting time for the task point to obtain the required amount of resources. If the amount of resources carried by the unmanned boat meets the amount of resources required by the task point, then during the resource replenishment process for the task point, the task point does not need to wait. ; When the amount of resources carried by the unmanned boat does not meet the amount of resources required by the mission point, the unmanned boat needs to travel back and forth between the mission point and the supply station. The number of times the unmanned boat needs to travel back and forth between the mission point and the supply station is determined based on the amount of resources required by the mission point and the maximum amount of resources carried by the unmanned boat. The total Dubins path of the unmanned boat's movement when the mission point obtains the required amount of resources is determined based on the number of round trips and the Dubins path of the unmanned boat between the mission point and the supply station. As described above, the speed of the unmanned boat is constant, so the waiting time of the mission point is proportional to the total Dubins path of the unmanned boat's movement, and the total Dubins path can be used to measure the waiting time of the mission point.
[0049] Determine the minimum total index result according to the above formula, and use this to determine the task point corresponding to the minimum total index result, and use it as the target task point for the next operation of the unmanned boat. Control the unmanned boat to move to the target task point to replenish resources to the target task point until the target task point obtains the required amount of resources.
[0050] Since the unmanned boats in different mission areas do not interfere with each other, the path planning between different unmanned boats is not relevant. As long as each unmanned boat obtains the optimal path planning, the sum of the total index results of all unmanned boats in the target area is also optimal. The path planning process of this embodiment realizes the autonomous obstacle avoidance path planning of the unmanned boat, and the planned path can minimize the path of the unmanned boat moving to the mission point, the energy consumed by the unmanned boat, and the time interval for the mission point to wait for resource replenishment.
[0051] Figure 4 A module schematic diagram of a task allocation and path planning system for multiple unmanned boats according to an embodiment of the present disclosure is shown.
[0052] See also Figure 4According to the second aspect of the present disclosure, a task allocation and path planning system for multiple unmanned boats is provided, and the system includes: an environment perception module 401, which is used to perceive the environment information of the target area and the parameter information of the unmanned boat; a control module 402, which is used to control the navigation of the unmanned boat; a task allocation and path planning module 403, which is used to divide a plurality of task areas according to the target area and determine the corresponding relationship between the task area and the unmanned boat, and is also used to plan the path for the unmanned boat to replenish resources to the task point in the corresponding task area; the task allocation and path planning module 403 includes: a map fusion module 4031, which is used to map the target area to obtain a global map of the target area; a task allocation module 4032, which is used to cluster the task points in the target area to obtain a plurality of task areas, and match the task areas with the unmanned boats, and allocate the corresponding task area to each unmanned boat, so that the unmanned boat completes the resource replenishment of the task point in the corresponding task area; a path planning module 4033, which is used to plan the path when the unmanned boat replenishes resources to the task point in the task area.
[0053] In one embodiment, the environmental perception module 401 includes: a lidar sensor module 4011, used to obtain point cloud data of the target area; a visual camera perception module 4012, used to obtain visual image information of the target area; an inertial measurement unit sensor module 4013, used to measure the motion parameters of the unmanned boat and perceive various state parameters of the unmanned boat; and a positioning module 4014, used to position the unmanned boat.
[0054] In one embodiment, the control module 402 includes: a motion control module 4021, which is used to control the movement of the unmanned boat so that the unmanned boat can complete the resource supply of the task point in the corresponding mission area; a propulsion and steering module 4022, which is used to control the movement and steering of the unmanned boat so that the unmanned boat can complete the resource supply of the task point in the corresponding mission area.
[0055] Specifically, the mapping fusion module 4031 is used to establish an environmental map of the target area; determine the location information of the unmanned boat, and divide the target area into multiple mapping areas through a Voronoi map based on the location information, each unmanned boat corresponds to a mapping area and maps the mapping area to obtain a regional map; and fuse the regional maps to obtain a global map of the target area.
[0056] The task allocation module 4032 is used to determine the task points included in the target area, cluster the task points based on the global map, and obtain multiple task areas, where the number of task areas is the same as the number of unmanned boats; match the unmanned boats with the task areas according to the positions of the cluster centers of the task areas and the positions of the unmanned boats, and each unmanned boat corresponds to one task area; the specific process is: determine the positions of the cluster centers of each task area and the positions of each unmanned boat; determine the obstacle avoidance path from each unmanned boat to each cluster center according to the positions of the cluster centers and the positions of the unmanned boats; determine the minimum value of the sum of the obstacle avoidance paths from all unmanned boats to all cluster centers; and determine the matching relationship between the unmanned boats and the task areas according to the minimum value of the sum of the obstacle avoidance paths.
[0057] The path planning module 4033 is used to determine the coordinates and carried resources of the unmanned boat and the coordinates and required resources of each mission point in the mission area for each mission area; and determine the target mission point based on the coordinates and carried resources of the unmanned boat and the coordinates and required resources of each mission point.
[0058] The control module 402 is used to control the unmanned boat to move to the target mission point to supply resources to the target mission point.
[0059] The path planning module 4033 is also used to determine the next target mission point of the unmanned boat according to the new coordinates and remaining resources of the unmanned boat after obtaining the required amount of resources at the target mission point, until the unmanned boat completes the resource replenishment of all mission points in the mission area.
[0060] The path planning module 4033 is also used to optimize the path planning of the unmanned boat according to the first indicator, the second indicator and the third indicator, the first indicator is the length of the path that the unmanned boat needs to move to each task point, the second indicator is the energy consumed by the unmanned boat to move to each task point, and the third indicator is the waiting time for each task point from the beginning of obtaining resources to obtaining the required amount of resources; determine the first weight corresponding to the first indicator, the second weight corresponding to the second indicator, and the third weight corresponding to the third indicator; determine the total indicator result of the unmanned boat's resource replenishment for each task point according to the first indicator, the first weight, the second indicator, the second weight, the third indicator and the third weight; determine the task point with the smallest total indicator result as the target task point; control the unmanned boat to move to the target task point to replenish resources to the target task point until the target task point obtains the required amount of resources.
[0061] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device and a readable storage medium.
[0062] Figure 5A schematic block diagram of an example electronic device 500 that can be used to implement an embodiment of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can 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 merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.
[0063] like Figure 5 As shown, the device 500 includes a computing unit 501, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 502 or a computer program loaded from a storage unit 508 into a random access memory (RAM) 503. In the RAM 503, various programs and data required for the operation of the device 500 can also be stored. The computing unit 501, the ROM 502, and the RAM 503 are connected to each other via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.
[0064] A number of components in the device 500 are connected to the I / O interface 505, including: an input unit 506, such as a keyboard, a mouse, etc.; an output unit 507, such as various types of displays, speakers, etc.; a storage unit 508, such as a disk, an optical disk, etc.; and a communication unit 509, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 509 allows the device 500 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0065] The computing unit 501 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 501 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, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 501 performs the various methods and processes described above, such as a method for task allocation and path planning for multiple unmanned boats. For example, in some embodiments, a method for task allocation and path planning for multiple unmanned boats may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 508. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 500 via the ROM 502 and / or the communication unit 509. When the computer program is loaded into the RAM 503 and executed by the computing unit 501, one or more steps of the method for task allocation and path planning for multiple unmanned boats described above may be executed. Alternatively, in other embodiments, the computing unit 501 may be configured in any other appropriate manner (eg, by means of firmware) to execute a method for task allocation and path planning of multiple unmanned boats.
[0066] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0067] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0068] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A 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, device, or device, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, 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 disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0069] To provide interaction with a user, the systems and techniques described herein 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 the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the 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 can be received in any form (including acoustic input, voice input, or tactile input).
[0070] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.
[0071] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, a server of a distributed system, or a server combined with a blockchain.
[0072] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps recorded in this disclosure can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.
[0073] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of the present disclosure, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.
[0074] The above is only a specific embodiment of the present disclosure, but the protection scope of the present disclosure is not limited thereto. Any person skilled in the art who is familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present disclosure, which should be included in the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be based on the protection scope of the claims.
Claims
1. A method for task allocation and path planning of multiple unmanned boats, characterized in that: The method comprises: Get a global map of the target area; Determine the mission points included in the target area, and cluster the mission points based on the global map to obtain a plurality of mission areas, wherein the number of the mission areas is the same as the number of the unmanned boats; According to the location of the cluster center of the mission area and the location of the unmanned boat, the unmanned boat is matched with the mission area, and each unmanned boat corresponds to one mission area; For each mission area, a path is planned for the unmanned boat so that the unmanned boat can complete the resource replenishment of all mission points; For each mission area, the unmanned boat is path planned so that the unmanned boat can complete the resource supply to all mission points, including: for each mission area, determining the coordinates and the amount of resources carried by the unmanned boat and the coordinates and required resources of each mission point in the mission area; determining the target mission point according to the coordinates and the amount of resources carried by the unmanned boat and the coordinates and required resources of each mission point; controlling the unmanned boat to move to the target mission point to supply resources to the target mission point until the target mission point obtains the required amount of resources, and determining the next target mission point of the unmanned boat according to the new coordinates and remaining resources of the unmanned boat, until the unmanned boat completes the resource supply to all mission points in the mission area.
2. The method according to claim 1, characterized in that The step of obtaining a global map of the target area includes: Create an environmental map of the target area; Determine the location information of the unmanned boat, divide the target area into a plurality of mapping areas through a Voronoi diagram based on the location information, each unmanned boat corresponds to a mapping area, and map the mapping area to obtain a regional map; The regional maps are fused to obtain a global map of the target area.
3. The method according to claim 1, characterized in that The step of matching the unmanned boat with the mission area according to the location of the cluster center of the mission area and the location of the unmanned boat, wherein each unmanned boat corresponds to one mission area, includes: Determine the location of the cluster center of each mission area and the location of each unmanned boat; Determining an obstacle avoidance path from each unmanned boat to each cluster center according to the location of the cluster center and the location of the unmanned boat; Determine the minimum value of the sum of obstacle avoidance paths from all unmanned boats to all cluster centers; According to the minimum value of the obstacle avoidance path and , a matching relationship between the unmanned boat and the mission area is determined.
4. The method according to claim 1, characterized in that: The method further comprises: The path planning of the unmanned boat is optimized according to the first indicator, the second indicator and the third indicator, wherein the first indicator is the length of the path that the unmanned boat needs to move to each mission point, the second indicator is the energy consumed by the unmanned boat to move to each mission point, and the third indicator is the waiting time for each mission point from the beginning of obtaining resources to obtaining the required amount of resources.
5. The method according to claim 4, characterized in that The optimizing the path planning of the unmanned boat according to the first indicator, the second indicator and the third indicator includes: Determine a first weight corresponding to the first indicator, a second weight corresponding to the second indicator, and a third weight corresponding to the third indicator; Determine a total indicator result of resource replenishment by the unmanned boat for each mission point according to the first indicator, the first weight, the second indicator, the second weight, the third indicator and the third weight; Determine the task point with the smallest total index result as the target task point; The unmanned boat is controlled to move to the target mission point to supply resources to the target mission point until the target mission point obtains the required amount of resources.
6. A task allocation and path planning system for multiple unmanned boats, characterized in that: The system comprises: Environmental perception module, used to perceive the environmental information of the target area and the parameter information of the unmanned boat; A control module, used to control the navigation of the unmanned boat; The task allocation and path planning module is used to divide the target area into multiple task areas and determine the corresponding relationship between the task areas and the unmanned boats, and is also used to plan the path for the unmanned boats to replenish resources to the task points in the corresponding task areas; The task allocation and path planning module includes: a map fusion module, which is used to map the target area to obtain a global map of the target area; a task allocation module, which is used to cluster the task points in the target area to obtain multiple task areas, and match the task areas with unmanned boats, and allocate a corresponding task area to each unmanned boat so that the unmanned boat can complete the resource replenishment of the task points in the corresponding task area; and a path planning module, which is used to plan the path for the unmanned boat to replenish resources to the task points in the task area where it is located.
7. The system according to claim 6, characterized in that The environment perception module comprises: A lidar sensor module, used to obtain point cloud data of the target area; A visual camera perception module is used to obtain visual image information of the target area; Inertial measurement unit sensor module, used to measure the motion parameters of the unmanned boat and sense various state parameters of the unmanned boat; Positioning module, used to locate the unmanned boat.
8. The system according to claim 6, characterized in that The control module comprises: The motion control module is used to control the motion of the unmanned boat so that the unmanned boat can complete the resource replenishment of the task point in the corresponding mission area; The propulsion and steering module is used to control the movement and steering of the unmanned boat so that the unmanned boat can complete the resource supply of the mission point in the corresponding mission area.
Citation Information
Patent Citations
Task scheduling method based on greedy adaptive ant colony algorithm
CN111967643A
Complex unknown environment multi-machine cooperative multi-target task allocation method
CN114186859A
Multi-destination unmanned aerial vehicle real-time route planning method with intelligent decision
CN114779820A
Digital twinning-based multi-objective optimal allocation method for marine supply resources
CN118446438A
Unmanned ship navigation route planning method and system
CN118795896A
Cited By
Region search method for heterogeneous unmanned ship cluster
CN120848522A