Next Article in Journal
Thermal and Optical Analysis of Quantum-Dot-Converted White LEDs in Harsh Environments
Previous Article in Journal
Mutual Inductance and Load Identification of LCC-S IPT System Considering Equivalent Inductance of Rectifier Load
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Novel Multi-Robot Task Assignment Scheme Based on a Multi-Angle K-Means Clustering Algorithm and a Two-Stage Load-Balancing Strategy

1
School of Electrical and Control Engineering, North University of China, Taiyuan 030051, China
2
School of Computer Science and Technology, North University of China, Taiyuan 030051, China
*
Author to whom correspondence should be addressed.
Electronics 2023, 12(18), 3842; https://doi.org/10.3390/electronics12183842
Submission received: 7 August 2023 / Revised: 7 September 2023 / Accepted: 7 September 2023 / Published: 11 September 2023

Abstract

:
A practical task assignment is one of the core issues of a multi-robot system. In this paper, a multi-robot task assignment strategy based on load balancing is proposed to effectively balance and plan out the execution cost of each robot when it has a large number of working task points. Considering the variability of the execution task cost in practical situations with different task point categories, the multi-robot task assignment (MRTA) problem is transformed into a multiple traveling salesman problem (MTSP) using a multi-angle K-means clustering algorithm. To solve the problem of unbalanced cost consumed by each robot after clustering assignment, which leads to low efficiency of system completion, a two-stage load-balancing strategy is presented. The first stage of this strategy makes a large adjustment to the unbalanced task set, and the second stage achieves a small fine-tuning to the unbalanced task set. The experimental results show that the standard deviation of the cost ratio of each set decreases when four robots perform the task between 100 and 550 work points using the load-balancing strategy. The reduction in standard deviation is between 3.53% and 83.44%. The maximum cost of individual robots decreases between 0.18% and 14.27%. The proposed method can effectively solve the uneven execution cost of each robot in the task assignment process and improve the efficiency of the system in completing tasks.

1. Introduction

The multi-robot system (MRS) is one of the most extensive research areas in robotics, which deploys multiple collaborative robots in a coordinated manner to perform and complete tasks [1,2]. It has promising applications in rescue search, resource allocation, intelligent warehouse [3], and other fields. The key to multi-robot systems is rational task assignment to individuals in the system [4,5,6].
Multi-robot task assignment (MRTA) refers to the planning of a conflict-free and load-balanced task assignment strategy by multi-robot under different task scenarios as well as certain constraints and obtaining a globally optimal solution according to different task assignment models and algorithms [7,8,9]. This problem is non-deterministic polynomial (NP)-hard [10], especially in large-scale problems. Therefore, the efficiency of the system and the completion rate of the tasks are ensured by determining a reasonable assignment mechanism.
Current research mainly focuses on task assignments based on multi-robot systems, but there is relatively little research on multi-robot task division and load balancing. The solutions of load-balancing-based task assignment are roughly divided into two categories: the task assignment method based on the non-clustering algorithm and the task assignment method based on the clustering algorithm. Wang et al. [11] proposed a new load-balancing algorithm, but this algorithm simply considered the absolute equal distribution of task points. Yang et al. [12] defined the task load-balancing coefficient to ensure that tasks were evenly distributed to all UAVs in the group, which only considered the number of optimal task points for each UAV. Lin et al. [13] proposed a load-balancing planning algorithm whose goal was to balance the length of detection paths of various robots. As the number of task points increases, the non-clustering algorithm-based task assignment method assigns individual task points in turn, requiring a large amount of computation and time to solve the global optimal solution, thus reducing the efficiency of the system.
Instead of assigning tasks to individual task points, task assignment methods based on clustering algorithms divide similar or neighboring task points into clusters and then assign the clusters to robots. This could effectively reduce the average travel distance of a robot team [14], thus decreasing the computational complexity. According to Sarkar et al. [15], the overall travel distance and resource utilization were reduced when robots performed nearby tasks in an intelligent warehouse. After completing the grouping of tasks, the algorithm was used for path planning in each task set to find the optimal path [16].
The main types of task clustering include Euclidean distance clustering, K-means clustering [17], and fuzzy clustering. There are many methods to solve these clustering problems, including division-based, hierarchy-based, grid-based, and density-based methods. The K-means clustering algorithm, as a division-based clustering algorithm, has the characteristics of fast clustering, easy implementation, and can efficiently classify large-scale task points.
However, the traditional K-means algorithm also has shortcomings, which is a clustering division according to the principle of shortest distance. In practical situations, more and more data of significance will be encountered. For example, the cost of performing different types of tasks is not the same. Therefore, the classification of different types of task points should be taken into account when performing clustering division. Moreover, the key problem of cluster-based task assignments is to identify the optimal number of tasks for each cluster [18,19]. The determination of the optimal number of tasks for a cluster was empirically studied by Mitiche et al. [20].
Wu et al. [21] proposed a balanced K-means algorithm, combined with the cost of delivery time, to equalize the distribution of the courier’s work to improve efficiency. The method did not take into account the value of the cost to be consumed by the item itself. Zhao et al. [22] used a simulated annealing algorithm to plan the shortest path based on the K-means clustering to achieve load balancing. The merit of the performance of this algorithm when the number of tasks was gradually increasing still needed further study. After the K-means clustering algorithm, Li et al. [23] adopted an improved grey wolf optimizer (IGWO) algorithm to solve the optimal path. Power constraints were converted to distance constraints to balance the tasks of each robot. The merit of the algorithm needed to continue to be verified when the task points were of different types. Wu et al. [21] used the ant colony algorithm to plan the order of execution task points based on the K-means clustering algorithm. A time cost model was established to calculate the cost of delivery time, which effectively made the delivery workload approximately equivalent among the delivery providers. Kim et al. [24] performed node clustering using the K-means clustering algorithm, followed by multiplicatively weighted (MW) Voronoi-based region delineation using various weighting factors. The calculated paths were used as the input for a workload allocation strategy to assign the robot’s paths.
After assigning multiple task clusters to robots using a cluster-based task assignment method, the time for the system to complete all tasks is determined by the time for the robot to complete the largest task cluster.
Lee et al. [25] proposed a multi-robot coordinated task allocation algorithm that minimizes task completion time and resource consumption. Sullivan et al. [26] used a very small objective for path planning to reduce the energy consumption and task completion time of robots. Zhang et al. [27] proposed an artificial bee colony algorithm to reduce energy consumption and increase productivity in a U-shaped robot assembly line. Wei et al. [28] used particle swarm optimization techniques to minimize the maximum travel distance of each robot. Murugappan et al. [14] presented a balanced multi-robot task allocation model using the minimal-extreme objective function.
The time to complete the task is determined by the cost consumed by the robot. The total cost consumed includes the cost of performing the task point itself and the cost of the path during the execution of the task. To improve the efficiency of the system, it is not enough to simply equalize the number of task points or the execution paths of the individual robots. It is necessary to equalize the total cost consumed by each robot to complete the task clusters by minimizing the maximum task cluster completion time.
There are relatively few studies based on multi-robot task division and load balancing. Load-balancing strategies mainly consider the number of task points for balanced distribution or the paths for executing a single type of task point under certain constraints for distribution. The problem of load balancing combining both task points and path planning when multiple robots perform different types of task points has been less considered. Therefore, the main contributions are focused on the following two aspects: (1) A multi-angle K-means clustering algorithm is proposed, which improves the traditional K-means clustering division criteria by considering the cost of task points themselves. The improved algorithm also solves the practical situation in which different types of task points consume different costs. (2) A load-balancing strategy is proposed to solve the problem of low efficiency of system completion due to the uneven cost of each robot after cluster assignment.
The rest of this paper is structured as follows. The description and mathematical model of the problem are given in Section 2, and the solution method and algorithm description are presented in Section 3. Section 4 describes the algorithm simulation and analysis of the load-balancing policy, and Section 5 gives the conclusions of this paper.

2. Mathematical Model

In an intelligent warehouse, assume that the working environment graph is known, and the number of task points is much higher than the number of robots. Each robot has to execute multiple task points after starting from a fixed starting point, and each task point can only be executed once. Two types of tasks are known: storage tasks and pickup tasks, which are randomly distributed in the region and whose locations are known. It is assumed that the complexity of each type of task point is not consistent, and the task cost consumed for executing different classes of task points is not the same. The speed of the robot during task execution is assumed to remain constant. Additionally, there is a path cost consumed by the robot in the process of executing between task points. After executing all tasks, the robot returns to the starting point [29].
Suppose there are m robots corresponding to the set R = { R i , 1 i m } , R i denotes the i-th robot in R . T = { T j , 1 j n } is the set of task points, T j denoting the j-th task point of T . Therefore, the task assignment problem of m robots starting from a fixed starting point to complete n task points and then returning to the original starting point can be converted to a multi-travel merchant model for solving [30,31,32].
Suppose the i-th robot R i performs N i task points and the set consisting of the executed task points is W i . N i task points contain N i 1 storage task points and N i 2 pickup task points. The robot consumes different costs when executing a storage task point and a pickup task point. The robot consumes a cost of c 1 when executing a storage task point and a cost of c 2 when executing a pickup task point.
The cost consumed by the robot R i consists of two parts: the task cost of performing two classes of task points Q i , and the path cost of performing the path traveled between task points P i [33]. Thus, the robot R i ’s cost consumption B i can be expressed as
B i = P i + Q i
where B i denotes the actual cost consumed by the robot R i to start from a fixed starting point, complete all task points in the task area, and return to the initial starting point.
Suppose the set of points during the execution of the task by the robot R i is V i = v 0 i , v 1 i , v 2 i , , v N i i ; v j i denotes the labeling of the j-th task point passed by the robot R i , v 0 i denotes the starting point for R i , and the path length can be expressed as
L i = v 0 i v 1 i + j = 1 N i 1 v j i v j + 1 i + v N i i v 0 i
where · expresses the Euclidean norm. v 0 i v 1 i is the distance of the R i from the starting point to the first task point; v j i v j + 1 i is the distance from the j-th task point to j + 1 task points, and v N i i v 0 i denotes the distance from the N i -th task point back to the starting point.
Assuming that the path cost is a proportional function of the distance value and the proportional coefficient is c, P i is defined
P i = c L i = c ( v 0 i v 1 i + j = 1 N i 1 v j i v j + 1 i + v N i i v 0 i )
To decrease the total cost of the system, it is necessary to make the path cost consumed by the execution of the tasks as small as possible during the path planning process; that is, the total path L of the system is the shortest, i.e.,
min L = i = 1 m L i
Q i can be written as
Q i = c 1 N i 1 + c 2 N i 2
In the subsequent work, the main task is to divide the set T of task points into m sub-task sets W 1 , W 2 , W 3 , , W m , and T = W 1 W 2 W 3 W m . It is assumed that a sub-task set requires only one robot to execute the task points in the set, so m is the number of the task sets that will be divided in the subsequent algorithm. Since any subset is not empty and there is no common task point between two subsets, the following relationship is satisfied:
W p W q = Φ , 1 p , q m   and   p q W p Φ , 1 p m
The number of task points in each subtask is N 1 , N 2 , N 3 , , N m . The number of task points stored and picked up in each subtask set is N 11 , N 12 ; N 21 , N 22 ; N 31 , N 32 ; ; N m 1 , N m 2 . Since a single robot can complete at least one task point after departure, i.e., no subset is empty, i.e., the values of N i , 1 i m are not zero, so they satisfy the following relation.
N 11 + N 12 = N 1 ; N 21 + N 22 = N 2 ; N 31 + N 32 = N 3 ; ; N m 1 + N m 2 = N m ; n = N 1 + N 2 + + N m ; N i > 0 , 1 i m ; N max = max ( N 1 , N 2 , , N m ) < n ;
In a multi-robot system, the completion time of a task is determined by the robot using the longest time, which is reflected in the cost consumed by the robot. Therefore, to increase the efficiency of the entire robot system, it is necessary to ensure that the cost consumed by each robot is relatively balanced. In a multi-robot system, if the largest cost can be kept to a minimum, then the difference in cost of all robots in the system can be guaranteed to be minimal.
The cost consumed by the robot in completing the task is provided by the power of the battery carried by the robot, but there is a limit to the power of the battery. Therefore, each robot must complete the assigned task point and return to the initial starting point within the battery’s specified power consumption. Assume that the ratio of the cost value consumed by the robots to the battery’s power is 1, and the battery power limit can be converted into a cost constraint.
Therefore, the objective function f can be set to minimize the maximum cost B i in the task set as follows.
min f = max B 1 , B 2 , , B i , , B m ,
  s . t . B i = P i + Q i B limit ,
where B limit denotes the maximum cost consumed by a single robot with sufficient battery capacity. B limit is positively correlated with the number of task points.

3. Methodology

To effectively balance the execution costs of individual robots when there are a large number of different types of task points, the flowchart of the algorithm and strategy proposed in this paper is shown in Figure 1. Part 1: A multi-angle K-means clustering algorithm is proposed for the initial partitioning of the different types of task points, corresponding to Section 3.1. Part 2: A genetic algorithm (GA) is used to perform path planning on the divided task points. Finally, the task points of each set are adjusted according to each set’s cost after path planning using a two-stage load-balancing strategy, corresponding to Section 3.2. Using this algorithm and strategy can solve the problem of uneven execution cost of each robot in the task assignment process and effectively improve the system’s efficiency in completing tasks.

3.1. K-Means Clustering Algorithm with Multi-Angle Division

3.1.1. Principle of the Improved Algorithm

The K-means clustering algorithm is a clustering algorithm based on the partitioning of a sample set [34]. The algorithm is an iterative process that first divides the n samples into K classes, where each sample has the minimum distance to the center of the class it belongs to and each sample can belong to only one class [14,35]. The sample mean of each class is continuously updated and used as the new center of the class until the algorithm converges. For multi-robot systems with various types of task points, only taking into account the distance between task points and the initial clustering center can have an impact on the clustering partitioning outcome. Therefore, the K-means clustering algorithm with multi-angle division is proposed, corresponding to Part 1 of Figure 1.
In the process of clustering different types of task points, the multi-angle clustering algorithm considers both the distance cost of traveling from each task point to the class center and the cost of performing the task point itself.

3.1.2. Basic Flow of the Algorithm

The multi-angle clustering algorithm is described as follows:
Input: the number of clusters m and the set of data containing n data points.
Output: the set of m clusters.
Step 1: In the set of task points T = T j , 1 j n , m data points are randomly selected as the original clustering centers { μ 1 , μ 2 , , μ m } , where μ i is the i-th clustering center.
Step 2: Calculate the distance d ji from each task point to the m clustering centers.
d ji = ( T j μ i ) 2 ,
Step 3: Calculate the cost sum of each task point to m centers of mass in the task area. The total cost includes the cost of performing the task point and the distance cost c d j i of the task point to the m centers of mass. Assign each of the n task points to the cluster in which the center of mass with the smallest sum of costs is located according to Equation (11).
J = min i = 1 m j = 1 N i ( c d j i + q j ) ,
where q j is the value of the cost consumed to perform the j-th task point. Depending on the type of task point, q j takes on two values, c 1 or c 2 .
Step 4: Calculate the sample mean of each cluster using Equation (12) and use it as the new center of mass of the m clusters.
μ i = 1 N i j = 1 N i T j ,
Step 5: Calculate the value φ i of the proportion of each set Q i , using Equation (13).
φ i = Q i i = 1 m Q i ,
Step 6: Repeat from Step 2 to Step 5 to update the center of mass of each cluster. Repeat several iterations, until the center of mass of m clusters no longer changes and φ i is within the bounded interval.
Step 7: The algorithm ends and the m clusters are output.
In Step 6, to ensure that the center of mass of the m clustering sets no longer changes, the difference between μ i and μ i is calculated by Equation (14). When ω i < ω 0 , it is determined that the center of mass no longer changes. ω 0 is a constant.
ω i = ( μ i μ i ) 2 ,
To ensure that the cost proportion consumed by the m clustering sets to perform the task points is relatively balanced, the difference between φ i and λ a is calculated using Equation (15). The cost values of each set are determined to be relatively equalized when θ i < θ 0 . θ 0 is a constant.
θ i = ( φ i λ a ) 2 ,
where λ a denotes the average cost proportion value, i.e., λ a = 1 m .
Based on the multi-angle K-means clustering algorithm, the n task points in the system are divided into m different classes, and the MTSP problem is converted into K-independent TSP problems. Then, the path planning problem of TSP is solved by the GA [36,37] so that the total path value in Equation (4) is minimized [38], and thus the minimum path cost consumed by the robots in each task set is obtained.

3.2. Two-Stage Load-Balancing Adjustment Strategy

The total cost consumed by each robot in the process of completing the task assignment consists of two parts. The multi-angle K-means clustering algorithm for task grouping only considers the balance of the cost Q i consumed by each robot to perform task points and does not guarantee the balance of the total cost consumed by each robot. Therefore, a two-stage load-balancing adjustment strategy is proposed, corresponding to Part 2 of Figure 1.

3.2.1. Adjustment Strategy

The general idea of the load-balancing strategy is to use the task grouping results of the multi-angle K-means clustering algorithm and the path generated by the GA for path planning as the initial input of the load-balancing strategy and to calculate the total cost and cost ratio in each task set. Using the load-balancing strategy, the adjustable task points in the set with a higher cost ratio are adjusted to the set with a lower cost ratio to achieve the purpose of balancing the consumption load of each task set. By iterating and adjusting one after another, the cost ratio value of each collection is made to be between the load-balancing ratio interval, the local optimal value of the cost of each collection is found, and finally, the corresponding task collection division results are outputted. Determining the task sets and task points to be adjusted is the core of solving the two-stage load-balancing strategy.

3.2.2. Basic Flow of the Algorithm

The steps for implementing the two-stage load-balancing adjustment strategy are as follows.
Input: Results of multi-angle K-means clustering algorithm for task grouping, results of path planning, and limited interval h of set cost ratio.
Output: Adjusted task set division scheme, cost sum of individual robots, and cost ratio of individual robots.
Step 1: Equation (1) is utilized to calculate B i . The proportional value of cost in each set, λ i , is found using Equation (16).
λ i = B i i = 1 m B i ,
Step 2: Determine whether all the values of λ i are in the limited interval h; if yes, the algorithm ends; if not, the algorithm continues, at which point the value of λ i is assigned to λ i S 0 , and λ i S 0 denotes the initial cost ratio value.
  • The first-stage load-balancing adjustment strategy.
Step 1: Determine the set to be adjusted and its neighboring sets. Find set W A with the maximum value of the cost ratio and set W B with the minimum value of the cost ratio, and calculate the distance between the cluster centers of set W A and the cluster centers of the remaining m 1 sets. Find the set W C that corresponds to the shortest distance, and W C is the neighboring set to be adjusted. Similarly, determine W D as the set to be adjusted for W B . The number of task points corresponding to sets W A , W B , W C , W D are N A , N B , N C , N D respectively. The set of task points are W A = w 1 A , w 2 A , , w N A A , W B = w 1 B , w 2 B , , w N B B , W C = w 1 C , w 2 C , , w N C C , W D = w 1 D , w 2 D , , w N D D , and the set of clustering centers are μ A , μ B , μ C , μ D respectively.
Step 2: Determine the task points to be adjusted.
(1) Determine the task points to be adjusted for set W C . Calculate the difference l A j between the distances of the task points in set W A to the clustering centers of sets W A and W C .
l A j = ( w j A μ A ) 2 ( w j A μ C ) 2 , 1 j N A ,
when l A j < α , it corresponds to the task points in set W A and is used as the initial set U d of task points to be adjusted from W A to set W C . α is a constant value.
Since the task points in each task set near the departure point have a great influence on the path trend of the robot, a circle is drawn with the starting point as the center of the circle and s as the radius. The set of task points S within this circle is not adjusted. Therefore, it is necessary to remove the task points in the initial task point set U d to be adjusted from the intersecting area with the circular region and obtain the final adjustment point set U zd .
U z d = U d ( U d S ) ,
(2) Determine the task points to be adjusted for set W D . Calculate the difference l D j between the distances of the task points in set W D to the clustering centers of sets W B and W D .
l D j = ( w j D μ B ) 2 ( w j D μ D ) 2 , 1 j N D ,
when l D j < β , it corresponds to the task points in set W D and is used as the initial set U x of task points to be adjusted from W D to W B . β is a constant value.
Similarly, the task points in region S need to be removed to get the final set of adjustment points U z x .
U z x = U x ( U x S ) ,
Step 3: Adjust the task points in sequence to get the new division scheme. The distance difference values l A j and l D j are arranged in ascending order, respectively. The smaller the distance value, the more priority the points in the set U zd and U z x are adjusted. Put the task points in set U zd and set U z x into set W C and set W B in sequence, respectively. The new division scheme is obtained.
Step 4: Path planning is performed for the task points, the values of B i are calculated using Equation (1), and then the value of λ i is calculated using Equation (16).
Step 5: Determine whether the value λ i of the set to be adjusted is in the cost ratio limited interval h. If yes, the algorithm continues and assigns the value of λ i to λ i S 1 . λ i S 1 denotes the value of the cost ratio of the first stage; if not, it returns to Step 3.
  • The second-stage load-balancing adjustment strategy
Step 1: Find set W E with the maximum cost proportion under the current division and set W F with the minimum cost proportion. The number of task points corresponding to sets W E , W F are N E , N F . The set of task points are W E = w 1 E , w 2 E , , w N E E , W F = w 1 F , w 2 F , , w N F F , and the set of clustering centers are μ E , μ F , respectively. The corresponding cost ratio values for set W E and set W F are λ E and λ F .
Step 2: Determine whether the cost ratio values of set W E and set W F are in the cost ratio limited interval h. If yes, the algorithm ends; if not, the algorithm continues.
Step 3: Calculate the difference γ between λ E and λ a using Equation (21). Calculate the difference δ between λ F and λ a using Equation (22). Then, determine the magnitude between the two differences.
γ = λ E λ a ,
δ = λ F λ a ,
Step 4: Determine the set to be adjusted, its close sets, and the task points to be adjusted.
(1) When γ > δ , set W E is selected for the second-stage adjustment. Calculate the distance l E F between μ E and μ F using Equation (23). Calculate the distance l E i between μ E and the clustering centers μ i of the remaining m 2 sets using Equation (24) and find its minimum value min ( l E i ) .
l E F = ( μ E μ F ) 2 ,
l E i = ( μ E μ i ) 2 , { i 1 i m , i E , F }
i
If min ( l E i ) l E F , determine that set W F is the set to be adjusted of set W E . Using the method of stage one to find the task points to be adjusted, the U e f set of task points to be adjusted is preliminarily determined. After removing the task point set S in the circular region near the starting point, the final adjustment point set U zd 2 is obtained.
U z d 2 = U e f ( U e f S ) ,
ii
If min ( l E i ) < l E F , the set W G corresponding to min ( l E i ) is found and identified as the set to be adjusted. Similarly, the task point set U e g to be adjusted is preliminarily determined. After removing the task point set S , the final adjustment point set U zd 2 is obtained.
U z d 2 = U eg ( U e g S ) ,
(2) When γ < δ , set W F is selected for the second-stage adjustment. Calculate the distance l F i between μ F and the clustering centers μ i of the remaining m 2 sets using Equation (27) and find its minimum value min ( l F i ) .
l Fi = ( μ F μ i ) 2 , { i 1 i m , i E , F } ,
i
If min ( l F i ) > L E F , the set W E is determined as the set to be adjusted from the set W F . Firstly, determine the task point set U e f to be adjusted. After removing the task point set S , the final adjustment point set U zx 2 is obtained.
U z x 2 = U e f ( U e f S ) ,
ii
If min ( l F i ) L E F , the set W H corresponding to min ( l F i ) is found and the set W H is determined as the set to be adjusted for the set W F . First, determine the task point set U e h to be adjusted. After removing the task point set S , the final adjustment point set U zx 2 is obtained.
U z x 2 = U e h ( U e h S ) ,
Step 5: Putting the task points to be adjusted into the corresponding sets in turn to obtain the new division scheme.
Step 6: Path planning is performed for the task points, the values of B i are calculated using Equation (1), and then the value of λ i is calculated using Equation (16). Add 1 to the number of cycles.
Step 7: Determine whether the value λ i of the second stage of the set to be adjusted is in the set cost ratio limited interval h. If yes, the algorithm ends and assigns the value of λ i to λ i S 2 , λ i S 2 denotes the value of the cost ratio of the second stage; if not, it returns to Step 5.

4. Simulation Tests and Analysis

The simulations of the proposed method in this paper were performed under the simulation environment of Intel(R) Core (TM) i5-10210U CPU @ 1.60 GHz 2.11 GHz, Windows 10, 64-bit OS, and MATLAB R2021b.

4.1. Simulation of the Multi-Angle K-Means Clustering Algorithm

To verify the performance of the proposed multi-angle K-means clustering partitioning algorithm, the traditional K-means clustering algorithm and the balanced K-means clustering algorithm (BKCA) [21] are chosen for comparison.
Assuming that the environment map is a 5000 × 5000 region, the simulation randomly generates 300 task points, including 150 pickup task points and 150 storage task points, as shown in Figure 2. The location coordinates of each type of task point are known and the initial starting and ending points are assumed to be (2500, 2500). There are four robots to complete the task points in the environment area.
In the simulation experiments of the multi-angle clustering algorithm, it can be assumed that ω 0 = 0.1 and θ 0 = 0.08 . The results of the division of the task points and the path planning results obtained using the GA are shown in Figure 3. The total cost of the current system is calculated as 522,846.70.
The sum-of-costs results obtained from the K-means clustering algorithm are denoted as B k , where B k = i = 1 m B i k . B i k denotes the cost of the i-th set obtained using the K-means algorithm. The sum-of-costs results obtained from the multi-angle K-means clustering algorithm are denoted as B Mk , where B Mk = i = 1 m B i M k . B i M k is the cost of the i-th set obtained using the multi-angle K-means clustering algorithm. The total cost obtained by the BKCA algorithm is denoted as B Bk , where B Bk = i = 1 m B i B k . B i B k is the cost of the i-th set obtained using the BKCA algorithm. The difference rate between B k and B Mk is denoted as B e 1 , as shown in Equation (30). The difference rate between B k and B Bk is denoted as B e 2 , as shown in Equation (31).
B e 1 = B k B M k B k × 100 % ,
B e 2 = B k B B k B k × 100 % ,
Equations (30) and (31) can conveniently measure the difference between the results obtained by the two different algorithms and thus assess the advantages and disadvantages of the multi-angle clustering algorithm proposed in this paper.
Table 1 gives the total cost consumed by all robots traversing all task points in their respective sets when the number of robots is four and the number of task points ranges from 100 to 550 with an interval of 50, using the above three algorithms for partitioning. From Table 1, it can be obtained that as the number of task points increases, the difference rate B e 1 ranges from 0.05% to 0.51%, and the difference rate B e 2 ranges from −0.17% to 0.14%. The difference rate B e 1 is 0.01% to 0.39% higher than B e 2 . The results indicate that the multi-angle clustering algorithm can reduce the total cost of the system. Thus, the superiority of the multi-angle K-means clustering technique may be demonstrated.

4.2. Simulations of the Two-Stage Load-Balancing Strategy

Based on the multi-angle K-means clustering algorithm, the two-stage load-balancing policy algorithm is simulated. Based on the results in Figure 3, P i and Q i are calculated. Equation (1) is used to find B i and finally get the value of λ i S 0 , as shown in Figure 4.
The task points are adjusted using a two-stage load-balancing strategy based on the cost ratio of each grouping set as shown in Figure 4. In the strategy, the distance difference is set to α = β = 1000 , and the load-balancing interval is set to h = [ 0.225 , 0.275 ] .
The results of the first-stage load-balancing adjustment strategy are shown in Figure 5, Figure 6, Figure 7, Figure 8 and Figure 9.
First, the set of task points to be adjusted is shown in Figure 5. The difference between the distance from the task point in the set to be tuned out to the center of its cluster and the distance from the center of the cluster in the set to be tuned is depicted in Figure 6. Figure 7 expresses these adjusted task points determined according to the distance difference value. Figure 8 is the path planning of the adjusted task points using a GA. The calculation of the cost ratio for each set after path planning is given in Figure 9.
Figure 10, Figure 11 and Figure 12 display the outcomes of the second-stage load-balancing adjustment approach.
Based on the results of the cost ratio of each task set after the completion of the first-stage adjustment in Figure 9, task points to be adjusted in the second stage are determined as shown in Figure 10. The adjusted path planning is then obtained using the GA as shown in Figure 11, and the cost proportion values of each task set are given in Figure 12.
The result of the maximum cost consumed by a single robot before load balancing is denoted as B b , where B b = max { B i k } , 1 i m . The maximum cost consumed by a single robot after load balancing is denoted as B a , where B a = max { B i M k } , 1 i m . The difference rate B me is
B m e = B b B a B b × 100 % ,
The result of the standard deviation of the cost proportion of each set before load balancing is denoted as σ b , and the result after load balancing as σ a .
σ b = i = 1 m ( λ i S 0 λ a ) 2 m ,
σ a = i = 1 m ( λ i S 2 λ a ) 2 m ,
The difference rate σ e is
σ e = σ b σ a σ b × 100 % ,
According to the aforementioned experiments, while using four robots to complete 300 task points, the maximum cost of a single robot adjusted using the load-balancing technique is 137,291.67, which is 7.07% less than the maximum cost of a single robot before adjustment. The maximum power of the battery consumed by a single robot does not exceed the limit. The system takes less time to complete tasks and is more efficient. In addition, the standard deviation of each set’s cost ratio after load balancing is 0.0114, which is 62.49% lower than the standard deviation of each set’s cost ratio before balancing, indicating that each robot’s cost of power consumption is distributed more evenly after load balancing.
In the same way, four robots are used to perform different task points. The simulation results are listed in Table 2 and Table 3. Figure 13 displays the results of the comparison between the maximum cost of a single robot before and after employing the load-balancing strategy. The results show that the maximum cost of a single robot after the completion of load balancing is lower than the maximum cost of a single robot before balancing, with a difference in rate ranging from 0.18% to 14.27%. The maximum power of the battery consumed by a single robot does not exceed the limit. It indicates that implementing a load-balancing approach can significantly reduce the system’s processing time to complete the task and improve the system’s efficiency.
Figure 14 displays the results of the cost ratio standard deviation that each set accounted for before and after the load-balancing approach. According to Figure 14, the difference rate is between 3.53% and 83.44%, and the standard deviation of the cost ratio of each set reduces following the load-balancing technique. This suggests that by adopting the load-balancing approach, the cost value used by each set can be more evenly distributed. This outcome demonstrates the load-balancing strategy’s efficacy.

5. Conclusions

In this paper, a multi-angle K-means clustering algorithm is proposed to address the variability of task point categories for the large-scale multi-robot task assignment problem in practical situations. The method improves the division criteria of the traditional K-means clustering algorithm. When four robots complete multi-task points, the total cost consumed by the improved system is reduced compared to that before the improvement. To solve the problem of low efficiency of system completion due to unbalanced cost consumed by each robot after clustering assignment, a two-stage load-balancing strategy is proposed. The first phase performs a large-scale adjustment on the unbalanced task set. The second stage fine-tunes the unbalanced task set on a small scale. The case study proves that when four robots go to complete 100 to 500 task points, the cost consumed by each robot is relatively balanced after using the load-balancing strategy. The standard deviation of the cost ratios for each set decreases, and the reduction ranges from 3.53% to 83.44%. The maximum cost of individual robots is lower than that before using the load-balancing strategy, and the reduction ranges from 0.18% to 14.27%. These simulation results show that the proposed method can effectively improve the system’s efficiency in completing tasks. However, this work ignores the effect of task point loading on the robot’s walking speed during the task execution. Future research will improve the model from this aspect.

Author Contributions

Conceptualization, J.Y. and J.J.; methodology, J.Y. and J.J.; software, J.Y.; validation, J.Y.; formal analysis, J.Y.; investigation, J.Y. and J.J.; resources, J.J.; data curation, J.Y.; writing—original draft preparation, J.Y.; writing—review and editing, J.J.; visualization, J.Y.; supervision, J.J., X.P., J.Z., Y.S. and J.W.; project administration, J.J., X.P., J.Z., Y.S. and J.W.; funding acquisition, J.J., X.P., J.Z., Y.S. and J.W. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China, grant number 72071183; the Key Project of Science and Technology of Shanxi province, grant number 98008304; the Opening Foundation of Shanxi Key Laboratory of High Performance Battery Materials and Devices, grant number 2022HPBMD01002; the Research Project Supported by Shanxi Scholarship Council of China, grant number 2020-114; and the Graduate Education Innovation Project of Shanxi Province, grant number 2022Y658 and 2022Y660.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Farinelli, A.; Boscolo, N.; Zanotto, E.; Pagello, E. Advanced approaches for multi-robot coordination in logistic scenarios. Robot. Auton. Syst. 2017, 90, 34–44. [Google Scholar] [CrossRef]
  2. Choi, D.; Kim, D. Intelligent multi-robot system for collaborative object transportation tasks in rough terrains. Electronics 2021, 10, 1499. [Google Scholar] [CrossRef]
  3. D’Emidio, M.; Khan, I. Collision-free allocation of temporally constrained tasks in multi-robot systems. Robot. Auton. Syst. 2019, 119, 151–172. [Google Scholar] [CrossRef]
  4. Seenu, N.; Chetty, R.M.K.; Ramya, M.M.; Janardhanan, M.N. Review on state-of-the-art dynamic task allocation strategies for multiple-robot systems. Ind. Robot Int. J. Robot. Res. Appl. 2020, 47, 929–942. [Google Scholar]
  5. Khamis, A.; Hussein, A.; Elmogy, A. Multi-robot task allocation: A review of the state-of-the-art. Coop. Robot. Sens. Netw. 2015, 2015, 31–51. [Google Scholar]
  6. Cui, Y.; Dong, W.; Hu, D.; Liu, H. The application of improved harmony search algorithm to multi-UAV task assignment. Electronics 2022, 11, 1171. [Google Scholar] [CrossRef]
  7. Nzanywayingoma, F.; Yang, Y. Effective task scheduling and dynamic resource optimization based on heuristic algorithms in cloud computing environment. KSII Trans. Internet Inf. Syst. 2017, 11, 5780–5802. [Google Scholar]
  8. Martin, J.G.; Muros, F.J.; Maestre, J.M.; Camacho, E.F. Multi-robot task allocation clustering based on game theory. Robot. Auton. Syst. 2023, 161, 104314. [Google Scholar] [CrossRef]
  9. Gao, J.; Li, Y.; Xu, Y.; Lv, S. A two-objective ILP model of OP-MATSP for the multi-robot task assignment in an intelligent warehouse. Appl. Sci. 2022, 12, 4843. [Google Scholar] [CrossRef]
  10. Johnson, D.S. The NP-completeness column: The many limits on approximation. ACM Trans. Algorithms 2006, 2, 473–489. [Google Scholar] [CrossRef]
  11. Wang, J.; Jia, G.; Lin, J.; Hou, Z. Cooperative task allocation for heterogeneous multi-UAV using multi-objective optimization algorithm. J. Cent. South Univ. 2020, 27, 432–448. [Google Scholar] [CrossRef]
  12. Yang, W.; Xin, Y. Multi-UAV task assignment based on quantum genetic algorithm. J. Phys. Conf. Ser. 2021, 1824, 012010. [Google Scholar] [CrossRef]
  13. Lin, J.; Tian, W.; Li, P.; Lu, S. Load balance optimization based multi-robot cooperative task planning for large-scale aerospace structures. Intell. Robot. Appl. 2021, 2021, 797–809. [Google Scholar]
  14. Murugappan, E.; Subramanian, N.; Rahman, S.; Goh, M.; Chan, H.K. Performance analysis of clustering methods for balanced multi-robot task allocations. Int. J. Prod. Res. 2022, 60, 4576–4591. [Google Scholar] [CrossRef]
  15. Sarkar, C.; Paul, H.S.; Pal, A. A scalable multi-robot task allocation algorithm. In Proceedings of the 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, Australia, 21–25 May 2018; pp. 1–9. [Google Scholar]
  16. Liang, D.; Liu, Z.; Bhamra, R. Collaborative multi-robot formation control and global path optimization. Appl. Sci. 2022, 12, 7046. [Google Scholar] [CrossRef]
  17. Sinaga, K.P.; Yang, M.S. Unsupervised K-means clustering algorithm. IEEE Access 2020, 8, 80716–80727. [Google Scholar] [CrossRef]
  18. Haghdadi, N.; Asaei, B.; Gandomkar, Z. Clustering-based optimal sizing and siting of photovoltaic power plant in distribution network. In Proceedings of the 2012 11th International Conference on Environment and Electrical Engineering, Venice, Italy, 18–25 May 2012; pp. 266–271. [Google Scholar]
  19. Du, X.; Guo, Q.; Li, H.; Zhang, Y. Multi-UAVs cooperative task assignment and path planning scheme. J. Phys. Conf. Ser. 2021, 1856, 012016. [Google Scholar] [CrossRef]
  20. Mitiche, H.; Boughaci, D.; Gini, M. Iterated local search for time-extended multi-robot task allocation with spatio-temporal and capacity constraints. J. Intell. Syst. 2019, 28, 347–360. [Google Scholar] [CrossRef]
  21. Wu, C.; Wu, J.; Wu, Y.; Wu, Q.; Lin, X.; Xiong, N.N. Design and analysis of the task distribution scheme of express center at the end of modern logistics. Electronics 2019, 8, 1141. [Google Scholar] [CrossRef]
  22. Zhao, J.; Zhao, J. Study on multi-UAV task clustering and task planning in cooperative reconnaissance. In Proceedings of the 2014 Sixth International Conference on Intelligent Human-Machine Systems and Cybernetics, Hangzhou, China, 26–27 August 2014; Volume 2, pp. 392–395. [Google Scholar]
  23. Li, J.; Yang, F. Task assignment strategy for multi-robot based on improved grey wolf optimizer. J. Ambient Intell. Humaniz. Comput. 2020, 11, 6319–6335. [Google Scholar] [CrossRef]
  24. Kim, J.; Ju, C.; Son, H.I. A multiplicatively weighted Voronoi-based workspace partition for heterogeneous seeding robots. Electronics 2020, 9, 1813. [Google Scholar] [CrossRef]
  25. Lee, D.-H. Resource-based task allocation for multi-robot systems. Robot. Auton. Syst. 2018, 103, 151–161. [Google Scholar] [CrossRef]
  26. Sullivan, N.; Grainger, S.; Cazzolato, B. Sequential single-item auction improvements for heterogeneous multi-robot routing. Robot. Auton. Syst. 2019, 115, 130–142. [Google Scholar] [CrossRef]
  27. Zhang, Z.; Tang, Q.; Li, Z.; Zhang, L. Modelling and optimisation of energy-efficient U-shaped robotic assembly line balancing problems. Int. J. Prod. Res. 2018, 57, 5520–5537. [Google Scholar] [CrossRef]
  28. Wei, C.; Ji, Z.; Cai, B. Particle swarm optimization for cooperative multi-robot task allocation: A multi-objective approach. IEEE Robot. Autom. Lett. 2020, 5, 2530–2537. [Google Scholar] [CrossRef]
  29. Ghassemi, P.; Chowdhury, S. Multi-robot task allocation in disaster response: Addressing dynamic tasks with deadlines and robots with range and payload constraints. Robot. Auton. Syst. 2022, 147, 103905. [Google Scholar] [CrossRef]
  30. Xue, M.; Wang, T.; Mao, S. Double evolutional artificial bee colony algorithm for multiple traveling salesman problem. MATEC Web Conf. 2016, 44, 02025. [Google Scholar] [CrossRef]
  31. Chen, Y.; Yu, J.; Su, X.; Luo, G. Path planning for multi-UAV formation. J. Intell. Robot. Syst. 2015, 77, 229–246. [Google Scholar] [CrossRef]
  32. Gomes, D.E.; Iglésias, M.I.D.; Proença, A.P.; Lima, T.M.; Gaspar, P.D. Applying a genetic algorithm to a m-TSP: Case study of a decision support system for optimizing a beverage logistics vehicles routing problem. Electronics 2021, 10, 2298. [Google Scholar] [CrossRef]
  33. Parker, J.; Farinelli, A.; Gini, M. Lazy max-sum for allocation of tasks with growing costs. Robot. Auton. Syst. 2018, 110, 44–56. [Google Scholar] [CrossRef]
  34. Baenziger, T.; Kunz, A.; Wegener, K. Optimizing human-robot task allocation using a simulation tool based on standardized work descriptions. J. Intell. Manuf. 2020, 31, 1635–1648. [Google Scholar] [CrossRef]
  35. Eango, M.; Nachiappan, S.; Tiwari, M.K. Balancing task allocation in multi-robot systems using K-means clustering and auction based mechanisms. Expert Syst. Appl. 2011, 38, 6486–6491. [Google Scholar] [CrossRef]
  36. Booker, L.B.; Goldberg, D.E.; Holland, J.H. Classifier systems and genetic algorithms. Artif. Intell. 1989, 40, 235–282. [Google Scholar] [CrossRef]
  37. Ochelska-Mierzejewska, J.; Poniszewska-Marańda, A.; Marańda, W. Selected genetic algorithms for vehicle routing problem solving. Electronics 2021, 10, 3147. [Google Scholar] [CrossRef]
  38. Han, S.; Fan, C.; Li, X.; Luo, X.; Liu, Z. A modified genetic algorithm for task assignment of heterogeneous unmanned aerial vehicle system. Meas. Control 2021, 54, 994–1014. [Google Scholar] [CrossRef]
Figure 1. Flowchart of multi-angle K-means clustering algorithm and two-stage load-balancing strategy.
Figure 1. Flowchart of multi-angle K-means clustering algorithm and two-stage load-balancing strategy.
Electronics 12 03842 g001
Figure 2. Coordinate map of 300 task point locations.
Figure 2. Coordinate map of 300 task point locations.
Electronics 12 03842 g002
Figure 3. Multi-angle K-means clustering algorithm for task point grouping and path planning results. (a) Multi-angle K-means clustering algorithm classification results; (b) Path planning results using GA under multi-angle K-means clustering algorithm.
Figure 3. Multi-angle K-means clustering algorithm for task point grouping and path planning results. (a) Multi-angle K-means clustering algorithm classification results; (b) Path planning results using GA under multi-angle K-means clustering algorithm.
Electronics 12 03842 g003
Figure 4. Cost ratio values for each set.
Figure 4. Cost ratio values for each set.
Electronics 12 03842 g004
Figure 5. To be adjusted to the set of the first stage.
Figure 5. To be adjusted to the set of the first stage.
Electronics 12 03842 g005
Figure 6. The difference between the distance from the task point in the set to be transferred out to the center of its cluster and the distance from the center of the cluster in the set to be transferred in. (a) Distance difference l Aj in the first stage; (b) Distance difference l Dj in the first stage.
Figure 6. The difference between the distance from the task point in the set to be transferred out to the center of its cluster and the distance from the center of the cluster in the set to be transferred in. (a) Distance difference l Aj in the first stage; (b) Distance difference l Dj in the first stage.
Electronics 12 03842 g006
Figure 7. Determination of the first stage of the task point to be adjusted. (a) The sets U d and U x to be adjusted; (b) the final adjustment set U zd and U zx .
Figure 7. Determination of the first stage of the task point to be adjusted. (a) The sets U d and U x to be adjusted; (b) the final adjustment set U zd and U zx .
Electronics 12 03842 g007
Figure 8. Path planning results using GA under the first-stage load-balancing adjustment strategy.
Figure 8. Path planning results using GA under the first-stage load-balancing adjustment strategy.
Electronics 12 03842 g008
Figure 9. Results of each set cost ratio in the first-stage load-balancing adjustment strategy.
Figure 9. Results of each set cost ratio in the first-stage load-balancing adjustment strategy.
Electronics 12 03842 g009
Figure 10. To be adjusted to the second stage of the task point.
Figure 10. To be adjusted to the second stage of the task point.
Electronics 12 03842 g010
Figure 11. Path planning results using GA under the second stage load-balancing adjustment strategy.
Figure 11. Path planning results using GA under the second stage load-balancing adjustment strategy.
Electronics 12 03842 g011
Figure 12. Results of each set cost ratio value in the second-stage load-balancing adjustment strategy.
Figure 12. Results of each set cost ratio value in the second-stage load-balancing adjustment strategy.
Electronics 12 03842 g012
Figure 13. Results of the difference in the maximum cost of power consumption values of individual robots before and after the load-balancing strategy.
Figure 13. Results of the difference in the maximum cost of power consumption values of individual robots before and after the load-balancing strategy.
Electronics 12 03842 g013
Figure 14. Standard deviation results for the cost ratio of each set before and after the load-balancing strategy.
Figure 14. Standard deviation results for the cost ratio of each set before and after the load-balancing strategy.
Electronics 12 03842 g014
Table 1. Total cost of the system under different classification criteria.
Table 1. Total cost of the system under different classification criteria.
Number of Task Points100150200250300
B k 196,235.91 278,804.62 363,612.42 445,235.50 524,786.90
B Bk 195,983.61 278,969.67 363,503.18 445,773.92 523,674.22
B Mk 195,241.04 278,534.65 363,434.93 444,362.99 522,846.70
B e 1 0.51%0.10%0.05%0.20%0.37%
B e 2 0.13%−0.06%0.03%−0.12%0.21%
Number of Task Points350400450500550
B k 604,007.28 684,670.74 763,979.28 845,245.29 924,528.97
B Bk 605,048.35 684,524.75 763,773.75 844,078.89 924,327.62
B Mk 603,285.32 684,199.66 763,116.57 843,955.98 923,793.98
B e 1 0.12%0.07%0.11%0.15%0.08%
B e 2 −0.17%0.02%0.03%0.14%0.02%
Table 2. Maximum cost consumed by a single robot before and after load balancing.
Table 2. Maximum cost consumed by a single robot before and after load balancing.
Number of Task Points100150200250300
B b 54,269.4581,181.96108,845.44131,520.16147,743.25
B a 53,375.9881,032.5493,316.83112,898.49137,291.67
B limit 55,00082,500110,000137,500165,000
B m e 1.65%0.18%14.27%14.16%7.07%
Number of Task Points350400450500550
B b 173,182.07180,174.07227,561.66234,988.05262,144.08
B a 163,373.48177,685.42211,678.62218,080.27255,921.90
B limit 192,500220,000247,500275,000302,500
B m e 5.66%1.38%6.98%7.20%2.37%
Table 3. Standard deviation of cost ratio of each set before and after load balancing.
Table 3. Standard deviation of cost ratio of each set before and after load balancing.
Number of Task Points100150200250300
σ b 0.02060.03540.02990.02060.0304
σ a 0.01670.03370.00610.00340.0114
σ e 19.09%4.90%79.72%83.44%62.49%
Number of Task Points350400450500550
σ b 0.02740.01140.02910.02290.0206
σ a 0.01730.00880.02300.01330.0199
σ e 36.97%22.43%20.76%42.16%3.53%
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

You, J.; Jia, J.; Pang, X.; Wen, J.; Shi, Y.; Zeng, J. A Novel Multi-Robot Task Assignment Scheme Based on a Multi-Angle K-Means Clustering Algorithm and a Two-Stage Load-Balancing Strategy. Electronics 2023, 12, 3842. https://doi.org/10.3390/electronics12183842

AMA Style

You J, Jia J, Pang X, Wen J, Shi Y, Zeng J. A Novel Multi-Robot Task Assignment Scheme Based on a Multi-Angle K-Means Clustering Algorithm and a Two-Stage Load-Balancing Strategy. Electronics. 2023; 12(18):3842. https://doi.org/10.3390/electronics12183842

Chicago/Turabian Style

You, Jiangwei, Jianfang Jia, Xiaoqiong Pang, Jie Wen, Yuanhao Shi, and Jianchao Zeng. 2023. "A Novel Multi-Robot Task Assignment Scheme Based on a Multi-Angle K-Means Clustering Algorithm and a Two-Stage Load-Balancing Strategy" Electronics 12, no. 18: 3842. https://doi.org/10.3390/electronics12183842

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop