# A Balanced Heuristic Mechanism for Multirobot Task Allocation of Intelligent Warehouses

Authors: Luowei Zhou; Yuanyuan Shi; Jiangliu Wang; Pei Yang
Journal: Mathematical Problems in Engineering
 (2014)

---

## Abstract

This paper presents a new mechanism for the multirobot task allocation problem in intelligent warehouses, where a team of mobile robots are expected to efficiently transport a number of given objects. We model the system with unknown task cost and the objective is twofold, that is, equally allocating the workload as well as minimizing the travel cost. A balanced heuristic mechanism (BHM) is proposed to achieve this goal. We raised two improved task allocation methods by applying this mechanism to the auction and clustering strategies, respectively. The results of simulated experiments demonstrate the success of the proposed approach regarding increasing the utilization of the robots as well as the efficiency of the whole warehouse system (by 5~15%). In addition, the influence of the coefficientα in
the BHM is well-studied. Typically, this coefficient is set between 0.7~0.9 to achieve good system performance.


---

## Body

## 1. Introduction

Autonomous guided vehicles (AGVs) have been used to perform tasks in warehouses for more than fifty years [1, 2]. In the past few years, they have been mostly used to transport large or heavy objects such as rolls of uncut paper or engine blocks. Recently, as autonomous robots [3–5] become cheaper, smaller, and more capable, they are widely used in the logistic industry, for example, being substituted for the manual labor in the typical pick-pack-and-ship process in warehouses [6]. Moreover, in [7, 8], it is pointed out that the multirobot coordination, if being really efficient and robust, will put significant impact on improving the logistical efficiency. The multirobot coordination involves the allocation and execution of individual tasks with an efficient mechanism. In this paper, we mainly focus on the task allocation process in which a team of autonomous robots must fulfill a set of orders in optimal routes meeting with certain criteria. This problem is also known as multirobot task allocation problem (MRTA) [9].There are already some methods to deal with MRTA. In 1998, Yamauchi presented a greedy strategy [10] to coordinate robots, with which each robot chooses the closest task as soon as they finish their previous tasks. Gerkey and Matarić introduced a dynamic task allocation method [11] for groups of autonomous robots, with which the robots bid on all unallocated targets, and the bids depend on the distance between their last targets and those unallocated targets. The algorithm proposed by Sandholm [12], known as the combinatorial auction method, is considered more efficient because it divides tasks into different clusters according to correlations between tasks; then robots bid on clusters of tasks [13]. In 2004, Lagoudakis et al. used Prim Allocation [14] to generate the MSF (minimum spanning forest) of tasks for robots and then transformed the forest in paths by the depth-first traversal. Later, some researchers [15, 16] improved the depth-first traversal process in the prim allocation method and better results are obtained.As a matter of fact, most of current attempts focus on minimizing the travel cost of the robots group without concerning the travel time, that is, balancing the individual travel cost of each robot. There are few research works putting emphasis on improving the utilization of multirobots, especially in many time sensitive applications, such as the logistics industry, rescue, and exploration environments. Puig et al. [17] improved Yamauchi’s greedy algorithm to solve the balancing-target allocation problem in the planetary exploration. By this method, after finishing its current task, every robot moves to the frontier cell until all the tasks have been explored. However, since every robot only acts for itself with no coordination with other robots, this method may lead to a rather suboptimal solution in travel distance, which is not acceptable in our logistic application. In 2011, Elango et al. [18] proposed the K-means clustering and auction based mechanism (referred as K
CAB mechanism) to balance the task allocation in multirobot systems. This approach considers the dual goal of both minimizing the travel distance and efficient sharing of the workload. Nevertheless, the complexity of this algorithm is relatively high and we will compare this method with our proposed approaches later.Considering the specific characteristics of our problem, (i) balancing the task allocation as well as minimizing the travel distance, (ii) the cost of tasks are unknown, and (iii) large scale and dynamic environment, a balanced heuristic mechanism (BHM) is proposed to coordinate the autonomous robots and is applied to several traditional approaches, such as the auction allocation method and the K-means clustering method. To evaluate the performance of different strategies, three criteria are provided as the travel time (TT), coefficient of variation (CV) between different robots, and total travel cost (TTC). Simulation results strongly prove that the BHM has a better balancing performance compared with traditional methods.The rest of this paper is organized as follows. In Section2, we give the formal description and model of the order fulfillment process in the warehouse. In Section 3, we describe the overall control structure of the system and present the balanced heuristic mechanism (BHM). Then simulated experimental results are provided and compared with several traditional methods in Section 4.


## 2. Problem Formulation

### 2.1. Problem Statement

In this paper, we focus on the dynamic task allocation problem for multirobots in an intelligent warehouse. To characterize the system, some assumptions are listed as follows:(i)
the system is composed of large-scale physical embedded robots;
(ii)
the robots and the tasks are homogenous;
(iii)
the environment of the system is known to each robot;
(iv)
each robot in the system is self-interested and fulfills its own tasks independently;
(v)
the robots may conflict with each other when fulfilling their tasks and they communicate with each other when being close to other vehicles (in purpose of obstacle avoidance);
(vi)
the time consuming at the station is the same for all robots.Usually, the multirobot task allocation is described as follows: given a sequence of tasks and a set of robots, the goal is to assign tasks to robots in an efficient manner based on what the system is trying to optimize. In our approach, we strive to optimize the system in a dual objective function to keep the total travel cost as low as possible and keep the individual travel time as equal as possible, respectively. These two objectives correspond to a balance between time expenses and robot expenses, both of which deserve consideration in a concrete physical system. As shown in Figure1, each storage shelf consists of several inventory pods and each pod consists of several resources. By order, a robot lifts and carries a pod at a time along a preplanned path, deliver it to the specific station which is appointed in the order and finally returns the pod back. The main consideration is how to allocate the tasks to the robots efficiently and equally while avoiding conflicts.Figure 1
Configuration of a warehouse system.Another point that must be taken into account is that traditional task allocation methods are based on the assumption that the cost of each task is already known. However, in this problem, the input to the warehouse system is a sequence of orders, from which we can only know the location of the task and the specific station to which the inventory pod is supposed to be delivered. The cost of each task as well as the travel cost from one location to another is totally unknown.


### 2.2. Modelling

The model formulated to solve the balanced multirobot task allocation problem mentioned above in the warehouse system is as follows (as shown in Figure2).Figure 2
Basic parameters and indexes.Let a set of robotsR
=
r
1
,
r
2
,
…
,
r
m to complete a set of tasks T
=
t
1
,
t
2
,
…
,
t
n. The cost of task t
i is w
i, which refers to the travel cost of carrying the inventory pod to the specific station and then delivering it back, ignoring the time cost of obstacle avoidance, and C
i
j
(
i
,
j
∈
R
∪
T
) is the travel cost between every two locations (usually from the robot to the inventory pod assigned in the order). Suppose r
i have k tasks T
=
t
i
1
,
t
i
2
,
…
,
t
i
k; then the total cost of all the assigned tasks in T
i is expressed as W
(
r
i
)
=
w
i
1
+
w
i
2
+
⋯
+
w
i
k. More details about the basic parameters and indexes using in the model are shown in Figure 2.RewriteT as Γ
=
T
1
,
T
2
,
…
,
T
m, which means a partition of the set of tasks where task set T
i are allocated to robot r
i. Then, define the individual travel cost as ITC
(
r
i
,
T
i
), which represents the sum cost for r
i to fulfill its task set T
i and can be calculated by
(1)
ITC
r
i
,
T
i
=
C
r
i
,
t
i
1
+
∑
j
=
1
k
-
1
‍
C
t
i
j
,
t
i
j
+
1
+
W
r
i
,
where C
r
i
,
t
i
1 represents the travel cost for r
i to come to its first task t
i
1, and ∑
j
=
1
k
-
1
C
t
i
j
,
t
i
(
j
+
1
) represents the total travel cost for the rest k
-
1 tasks. Also, W
(
r
i
) represents the total task cost of all the assigned tasks in T
i. Our dual goal can be expressed as
(2)
S
=
min
⁡
Γ
max
⁡
i
ITC
(
r
i
,
T
i
)
,
which aims to minimize the travel cost as well as balances the individual travel cost of each robot.Furthermore, we provide three criteria to evaluate the performance of different strategies: travel time (TT), which equals to the maximum of all the individual robots’ travel costs; total travel cost (TTC), which reveals the total travel cost of all the robots, evaluates the power consumption and mechanical loss of robots; coefficient of variation (CV), which is a statistical measurement commonly used for comparing the diversity in work groups [19]:
(3)
TT
=
max
⁡
i
ITC
r
i
,
T
i
,
TTC
=
∑
i
=
1
m
‍
ITC
r
i
,
T
i
,
CV
=
standard
deviation
(
σ
)
mean
(
μ
)
,
where σ represents the standard deviation of ITC
(
r
i
,
T
i
) and μ is the mean of ITC
(
r
i
,
T
i
), i
=
1,2
,
…
,
m.It is worth to point out that we useTTC to evaluate the power consumption of the system. On one hand, compared to the travel energy cost of the robots, other energy costs such as the communication cost and central controller cost are relatively small so that they can be neglected without affecting the overall power consumption. On the other hand, ∑
i
=
1
m
W
(
r
i
) (distance that robots running with pods) is constant for a system, which means the power consumption of this part is unchanged for a certain system. So we need to minimize ∑
i
=
1
m
(
C
r
i
,
t
i
1
+
∑
j
=
1
k
-
1
C
t
i
j
,
t
i
(
j
+
1
)
) (distance that robots running without pods) which can be fulfilled by minimizing TTC. Thus, TTC can be used to evaluate the power consumption of the system.


## 2.1. Problem Statement

In this paper, we focus on the dynamic task allocation problem for multirobots in an intelligent warehouse. To characterize the system, some assumptions are listed as follows:(i)
the system is composed of large-scale physical embedded robots;
(ii)
the robots and the tasks are homogenous;
(iii)
the environment of the system is known to each robot;
(iv)
each robot in the system is self-interested and fulfills its own tasks independently;
(v)
the robots may conflict with each other when fulfilling their tasks and they communicate with each other when being close to other vehicles (in purpose of obstacle avoidance);
(vi)
the time consuming at the station is the same for all robots.Usually, the multirobot task allocation is described as follows: given a sequence of tasks and a set of robots, the goal is to assign tasks to robots in an efficient manner based on what the system is trying to optimize. In our approach, we strive to optimize the system in a dual objective function to keep the total travel cost as low as possible and keep the individual travel time as equal as possible, respectively. These two objectives correspond to a balance between time expenses and robot expenses, both of which deserve consideration in a concrete physical system. As shown in Figure1, each storage shelf consists of several inventory pods and each pod consists of several resources. By order, a robot lifts and carries a pod at a time along a preplanned path, deliver it to the specific station which is appointed in the order and finally returns the pod back. The main consideration is how to allocate the tasks to the robots efficiently and equally while avoiding conflicts.Figure 1
Configuration of a warehouse system.Another point that must be taken into account is that traditional task allocation methods are based on the assumption that the cost of each task is already known. However, in this problem, the input to the warehouse system is a sequence of orders, from which we can only know the location of the task and the specific station to which the inventory pod is supposed to be delivered. The cost of each task as well as the travel cost from one location to another is totally unknown.


## 2.2. Modelling

The model formulated to solve the balanced multirobot task allocation problem mentioned above in the warehouse system is as follows (as shown in Figure2).Figure 2
Basic parameters and indexes.Let a set of robotsR
=
r
1
,
r
2
,
…
,
r
m to complete a set of tasks T
=
t
1
,
t
2
,
…
,
t
n. The cost of task t
i is w
i, which refers to the travel cost of carrying the inventory pod to the specific station and then delivering it back, ignoring the time cost of obstacle avoidance, and C
i
j
(
i
,
j
∈
R
∪
T
) is the travel cost between every two locations (usually from the robot to the inventory pod assigned in the order). Suppose r
i have k tasks T
=
t
i
1
,
t
i
2
,
…
,
t
i
k; then the total cost of all the assigned tasks in T
i is expressed as W
(
r
i
)
=
w
i
1
+
w
i
2
+
⋯
+
w
i
k. More details about the basic parameters and indexes using in the model are shown in Figure 2.RewriteT as Γ
=
T
1
,
T
2
,
…
,
T
m, which means a partition of the set of tasks where task set T
i are allocated to robot r
i. Then, define the individual travel cost as ITC
(
r
i
,
T
i
), which represents the sum cost for r
i to fulfill its task set T
i and can be calculated by
(1)
ITC
r
i
,
T
i
=
C
r
i
,
t
i
1
+
∑
j
=
1
k
-
1
‍
C
t
i
j
,
t
i
j
+
1
+
W
r
i
,
where C
r
i
,
t
i
1 represents the travel cost for r
i to come to its first task t
i
1, and ∑
j
=
1
k
-
1
C
t
i
j
,
t
i
(
j
+
1
) represents the total travel cost for the rest k
-
1 tasks. Also, W
(
r
i
) represents the total task cost of all the assigned tasks in T
i. Our dual goal can be expressed as
(2)
S
=
min
⁡
Γ
max
⁡
i
ITC
(
r
i
,
T
i
)
,
which aims to minimize the travel cost as well as balances the individual travel cost of each robot.Furthermore, we provide three criteria to evaluate the performance of different strategies: travel time (TT), which equals to the maximum of all the individual robots’ travel costs; total travel cost (TTC), which reveals the total travel cost of all the robots, evaluates the power consumption and mechanical loss of robots; coefficient of variation (CV), which is a statistical measurement commonly used for comparing the diversity in work groups [19]:
(3)
TT
=
max
⁡
i
ITC
r
i
,
T
i
,
TTC
=
∑
i
=
1
m
‍
ITC
r
i
,
T
i
,
CV
=
standard
deviation
(
σ
)
mean
(
μ
)
,
where σ represents the standard deviation of ITC
(
r
i
,
T
i
) and μ is the mean of ITC
(
r
i
,
T
i
), i
=
1,2
,
…
,
m.It is worth to point out that we useTTC to evaluate the power consumption of the system. On one hand, compared to the travel energy cost of the robots, other energy costs such as the communication cost and central controller cost are relatively small so that they can be neglected without affecting the overall power consumption. On the other hand, ∑
i
=
1
m
W
(
r
i
) (distance that robots running with pods) is constant for a system, which means the power consumption of this part is unchanged for a certain system. So we need to minimize ∑
i
=
1
m
(
C
r
i
,
t
i
1
+
∑
j
=
1
k
-
1
C
t
i
j
,
t
i
(
j
+
1
)
) (distance that robots running without pods) which can be fulfilled by minimizing TTC. Thus, TTC can be used to evaluate the power consumption of the system.


## 3. Method

In this section, we develop theBHM based approach for the task allocation of multirobots for the intelligent warehouse. We firstly provide an overview of the whole control system. Then the BHM principles are described in detail. By introducing this mechanism into the traditional auction allocation method and the K-means clustering method, two improved methods based on BHM are presented and analyzed for the task-allocation problem.


### 3.1. Overall System

The work space of the warehouse can be divided into several grids with inventory storage zones in the middle surrounding with the stations and workers. Autonomous robots transport movable inventory pods from storage locations to stations, where workers can pick items off and pack them up; then those packages are sent to the customers.In technical aspects, the task allocation process is regulated by the central controller while the path planning and motion planning, for example, the obstacle avoidance, are fulfilled by robots. In the task allocation process, many current allocation mechanisms tend to use the dynamic method [20, 21]; however it may result in suboptimal performance. Thus, an approach is proposed combining both dynamic and static methods by means of thetask pool. The continuously arriving orders accumulate in the task pool. The controller requires a certain number of tasks from the task pool after the previous batch of tasks has been completed, and uses a certain approach to allocate those tasks to robots. Then, the controller sends sets of tasks to corresponding robots by wireless communication such as ZigBee and the robots complete their tasks sequentially by a standard A∗ algorithm. Usually, we use the A∗ algorithm to find the shortest path between storage locations and stations in a static environment; while in an uncertain environment, the learning methods (e.g., reinforcement learning [22, 23]) may be necessary to find the shortest path, which will be our future work and is beyond the scope of this paper.In addition, as for the obstacle avoidance process, robots firstly use infrared detectors to detect other robots within certain distance (usually several grids in front of them). Then, they communicate with each other by wireless devices so that they can verify their relative priorities. Generally speaking, the robot with more tasks left to be completed has priority to occupy front grids. Therefore, the robot with fewer tasks left is likely to give way to the robot with more tasks to be completed. So the actual balancing performance could be further enhanced in the real world compared with the simulated balancing performance of the simulated experiment. This mechanism is referred as more-task-prior mechanism in this paper. The whole process is shown in Figure3.Figure 3
Control system structure.


### 3.2. Balanced Heuristic Mechanism (BHM)

Considering the goal of minimizing the travel cost as well as balancing the individual travel cost of each robot, a heuristic function is given in the following for guiding the task allocation process:(4)
C
r
i
,
t
j
=
α
×
dist
⁡
r
i
,
t
j
+
1
-
α
×
C
W
r
i
,
where C
(
r
i
,
t
j
) describes the cost (considering both the time and distance) for robot r
i to finish task t
j, dist
⁡
(
r
i
,
t
j
) is the travel cost from robot r
i to task t
j, and C
W
(
r
i
) is the current value of W
(
r
i
) (refer to Section 2).More specifically, as both task cost and travel cost from one location to another are unknown, we evaluatew
i (the cost of each task) and C
i
j (the travel cost from one location to another) before the task allocation by using the standard A∗ algorithm, a simple but significantly effective path planning algorithm. When a robot fulfills a task or moves from one location to another in real environment, more complex motions should be taken into account, such as the obstacle avoidance. Then, the more accurate value is shared with the central controller and the original estimated value stored in the controller is replaced with the newest value, which can help the controller to make a better task allocation. Thus the following allocation process is in the light of new information and can be more accurate and predictable.BHM makes tasks to be assigned to the robot who has the lowest C
(
r
i
,
t
j
). By introducing a parameter α, targets are more inclined to be assigned to the nearby robot with fewer allocated tasks. In practice, an effective value of α can be set between 0.7 and 0.9 according to the numbers of robots and tasks. The detailed relationship between α and the system performance will be given in Section 4.At the beginning stage, as the value ofW
(
r
i
) is quite small, this mechanism has limited effects. Thus the performance of the system is not significantly superior to the one by traditional methods that merely focus on minimizing the total travel distance. However, as the allocation proceeds, the role of (
1
-
α
)
×
C
W
(
r
i
) comes into effect by sharing the workload with those who have fewer assigned tasks. Above all, the method can obtain an approximately optimal result by considering the total travel cost and the workload balance of robots. A sample illustration of this heuristic mechanism is given in Figure 4.Figure 4
Example of the balanced heuristic mechanism.


### 3.3. Application of BHM

Recently the auction-based task allocation method and the cluster-based task allocation method have been widely used to solve theMRTA problems [18, 24]. So we introduce our BHM approach into the classic single-item auction method and the K-means clustering method, respectively, and proposed two BMH-based methods to solve the balancing MRTA problem.


#### 3.3.1. An Improved Auction Based Task Allocation Method Using BHM

A typical seal-bid single-round single-item auction process generally consists of four steps:(i)
task announcement,
(ii)
matrix evaluation,
(iii)
bid submission,
(iv)
close of auction (to determine the winning bids and notify the winning robot).At the second stage, the matrix is usually defined as a function of the optimistic travel cost [11] as shown in the following matrix:
(5)
d
r
1
,
t
1
d
r
1
,
t
2
⋯
⋯
d
r
1
,
t
n
d
r
2
,
t
1
d
r
2
,
t
2
⋯
⋯
d
r
2
,
t
n
⋮
⋮
⋱
⋮
⋮
⋮
⋱
⋮
d
r
m
,
t
1
d
r
m
,
t
2
⋯
⋯
d
r
m
,
t
n
,
where {
t
1
,
t
2
,
…
,
t
n
} are all the open tasks which have not been carried out by robots. In our method, the BHM is introduced into the matrix evaluation process. In order to strengthen the balancing performance of the auction, the matrix evaluation is defined by C
r
i
,
t
j rather than the optimistic travel distance between r
i and t
j.In each round, after all of the robots submit their bids, the single-round single-item auction is closed. The controller will decide the winning bidder with the smallest bid value and notify the winner. Then the bid matrix will be refreshed with following steps (as shown in Figure5).Figure 5
Evaluation matrix refreshment.Step 1.
Delete the taskt
k from the open-task set.Step 2.
Recalculate the row(
C
r
i
,
t
1
,
C
r
i
,
t
1
,
…
,
C
r
i
,
t
n
).As described in (4), the value of C
(
r
i
,
t
j
) is both related to the distance between r
i and t
j as well as the already assigned tasks of r
i. Firstly, the current position of r
i is replaced by the location of t
j, since r
i wins the bid and has to move from its former position to t
j in order to carry out the order. Secondly, the C
W
(
r
i
) increases by the cost of the newly allocated task, which can be mathematically expressed as C
W
(
r
i
)
=
C
W
(
r
i
)
+
w
i
j. After the matrix is refreshed, next single-item auction process is proceeding until all the tasks have been allocated.


#### 3.3.2. A BalancedK-Means Clustering Method Using BHM

A clustering method can be generally divided into two stages, that is, firstly finding the cluster centers and then assigning the sample data into the proper cluster. TheK-means clustering is a commonly used partitioning method [25], the main idea of which is to find K cluster centers (
c
1
,
c
2
,
…
,
c
k
), which minimize D in the following by iteration:
(6)
D
=
∑
i
-
1
n
‍
min
⁡
r
=
1,2
,
…
,
k
d
x
i
,
c
r
2
.
In (6), d
(
x
i
,
c
r
) represents the distance between the point x
i and c
r, known as the Euclidean distance. When D converges to a stable value, the appropriate (
c
1
,
c
2
,
…
,
c
k
) are the cluster centers for those K subgroups.At the second stage, the sample datax
i is assigned into the proper cluster with the smallest d
(
x
i
,
c
r
), r
=
1,2
,
…
,
k. However, this method only guarantees an optimal allocation scheme minimizing the travel cost, while the size differences between each cluster are ignored.In order to solve the balancingMRTA problem, we make some modifications on both of the two stages. As for the first stage, given that robots can only move along the grid lines, we substitute the Euclidean distance with the Manhattan distance in (6). In a rectangular coordinate system, the Manhattan distance between point P
1
:
(
x
1
,
y
1
) and point P
2
:
(
x
2
,
y
2
) can be expressed as
(7)
d
manhattan
P
1
,
P
2
=
x
1
-
x
2
+
y
1
-
y
2
.Thus, the main purpose is to findK cluster centers (
c
1
,
c
2
,
…
,
c
k
), which minimize D
manhattan in the following by iteration:
(8)
D
manhattan
=
∑
i
-
1
n
‍
min
⁡
r
=
1,2
,
…
,
k
d
manhattan
x
i
,
c
r
.Then, to reduce the valueD
manhattan iteratively, we find the Manhattan center rather than the center of the collected tasks. Finally, a partial optimal solution is formed in a finite number of iterations. Generally speaking, there are three steps of the first stage.(1)
Initial step: give an initial set of K cluster centers.
(2)
Assignment step: assign each point to the cluster center which has the shortest Manhattan distance.
(3)
Update step: calculate the Manhattan Center, which can reduce the overall value of D
manhattan. The Manhattan Center is defined as follows.It is supposed that there arem points in a rectangular coordinate system as p
1
,
p
2
,
…
,
p
m, coordinates of which are denoted as (
x
1
,
y
1
)
,
(
x
2
,
y
2
)
,
…
,
(
x
m
,
y
m
). Then, the descending order of the sequence x
1
,
x
2
,
…
,
x
m is denoted as x
1
′
,
x
2
′
,
…
,
x
m
′ and the descending order of the sequence y
1
,
y
2
,
…
,
y
m is denoted as y
1
′
,
y
2
′
,
…
,
y
m
′. Our purpose is to find the point P
m
=
(
x
m
c
,
y
m
c
), which minimizes (8):
(9)
min
⁡
x
m
c
,
y
m
c
∑
i
=
1
m
‍
x
m
c
-
x
i
+
y
m
c
-
y
i
.Since the values ofx
m
c and y
m
c do not affect each other, the value of ∑
i
=
1
m
|
x
m
c
-
x
i
| and ∑
i
=
1
m
|
y
m
c
-
y
i
| is minimized separately. It is easy to prove that when m is odd, x
m
c is x
(
m
+
1
)
/
2
′ so that ∑
i
=
1
m
|
x
m
c
-
x
i
| is minimum; when m is even, x
m
c is between x
(
m
+
1
)
/
2
′ and x
(
(
m
+
1
)
/
2
)
+
1
′ so that ∑
i
=
1
m
|
x
m
c
-
x
i
| is minimum. We can get y
m
c in the same way. Therefore, the Manhattan center p
m
c can be calculated by following equations:
(10)
x
m
c
=
x
(
m
+
1
)
/
2
′
m
is
odd
x
(
m
+
1
)
/
2
′
+
x
(
(
m
+
1
)
/
2
)
+
1
′
2
m
is
even
y
m
c
=
y
(
m
+
1
)
/
2
′
m
is
odd
y
(
m
+
1
)
/
2
′
+
y
(
(
m
+
1
)
/
2
)
+
1
′
2
m
is
even
.As mentioned before, the Manhattan center has the minimum overall Manhattan distance to thesem points, by which the value of D
manhattan is reduced. An example is shown in Figure 6. For the original center p
o
c, ∑
i
=
1
m
(
x
o
c
-
x
i
+
y
o
c
-
y
i
)
=
37, while, for the Manhattan Center p
m
c, ∑
i
=
1
m
(
x
m
c
-
x
i
+
y
m
c
-
y
i
)
=
34.Figure 6
Example of the manhattan center.Now, we concisely prove the convergence of the algorithm. Given that theD
manhattan generated by the algorithm is strictly decreasing and there only exist a finite number of such partitions, the algorithm will reach a partial optimal solution in a finite number of iterations.After obtaining the cluster centers, the balanced heuristic mechanism is introduced into the second stage of clustering. In traditional methods, when them cluster centers (
r
1
,
r
2
,
…
,
r
m
) are found in the first stage of the K-means algorithm, the remaining active tasks are allocated into the proper cluster with the smallest d
(
x
i
,
c
r
), r
=
1,2
,
…
,
k. However, in our approach, remaining active tasks are allocated into the proper cluster with the smallest C
(
r
i
,
t
j
) defined in (4).The main idea is that, instead of merely considering the travel cost, the balance of the cluster size is taken into account. The task tends to be allocated into the nearby cluster with fewer tasks. When a new task is added into the clusterj, the C
W
(
r
i
) will be refreshed. After all the active tasks have been allocated, the genetic-based TSP algorithm [26] is used to plan the route for tasks in each cluster. One example of the task allocation is demonstrated in Figure 7  (m
=
4, n
=
50, α
=
0.8), where different colors represent tasks allocated to different robots. Blocks with X are clustering centers.Figure 7
Example of the clustering result.


## 3.1. Overall System

The work space of the warehouse can be divided into several grids with inventory storage zones in the middle surrounding with the stations and workers. Autonomous robots transport movable inventory pods from storage locations to stations, where workers can pick items off and pack them up; then those packages are sent to the customers.In technical aspects, the task allocation process is regulated by the central controller while the path planning and motion planning, for example, the obstacle avoidance, are fulfilled by robots. In the task allocation process, many current allocation mechanisms tend to use the dynamic method [20, 21]; however it may result in suboptimal performance. Thus, an approach is proposed combining both dynamic and static methods by means of thetask pool. The continuously arriving orders accumulate in the task pool. The controller requires a certain number of tasks from the task pool after the previous batch of tasks has been completed, and uses a certain approach to allocate those tasks to robots. Then, the controller sends sets of tasks to corresponding robots by wireless communication such as ZigBee and the robots complete their tasks sequentially by a standard A∗ algorithm. Usually, we use the A∗ algorithm to find the shortest path between storage locations and stations in a static environment; while in an uncertain environment, the learning methods (e.g., reinforcement learning [22, 23]) may be necessary to find the shortest path, which will be our future work and is beyond the scope of this paper.In addition, as for the obstacle avoidance process, robots firstly use infrared detectors to detect other robots within certain distance (usually several grids in front of them). Then, they communicate with each other by wireless devices so that they can verify their relative priorities. Generally speaking, the robot with more tasks left to be completed has priority to occupy front grids. Therefore, the robot with fewer tasks left is likely to give way to the robot with more tasks to be completed. So the actual balancing performance could be further enhanced in the real world compared with the simulated balancing performance of the simulated experiment. This mechanism is referred as more-task-prior mechanism in this paper. The whole process is shown in Figure3.Figure 3
Control system structure.


## 3.2. Balanced Heuristic Mechanism (BHM)

Considering the goal of minimizing the travel cost as well as balancing the individual travel cost of each robot, a heuristic function is given in the following for guiding the task allocation process:(4)
C
r
i
,
t
j
=
α
×
dist
⁡
r
i
,
t
j
+
1
-
α
×
C
W
r
i
,
where C
(
r
i
,
t
j
) describes the cost (considering both the time and distance) for robot r
i to finish task t
j, dist
⁡
(
r
i
,
t
j
) is the travel cost from robot r
i to task t
j, and C
W
(
r
i
) is the current value of W
(
r
i
) (refer to Section 2).More specifically, as both task cost and travel cost from one location to another are unknown, we evaluatew
i (the cost of each task) and C
i
j (the travel cost from one location to another) before the task allocation by using the standard A∗ algorithm, a simple but significantly effective path planning algorithm. When a robot fulfills a task or moves from one location to another in real environment, more complex motions should be taken into account, such as the obstacle avoidance. Then, the more accurate value is shared with the central controller and the original estimated value stored in the controller is replaced with the newest value, which can help the controller to make a better task allocation. Thus the following allocation process is in the light of new information and can be more accurate and predictable.BHM makes tasks to be assigned to the robot who has the lowest C
(
r
i
,
t
j
). By introducing a parameter α, targets are more inclined to be assigned to the nearby robot with fewer allocated tasks. In practice, an effective value of α can be set between 0.7 and 0.9 according to the numbers of robots and tasks. The detailed relationship between α and the system performance will be given in Section 4.At the beginning stage, as the value ofW
(
r
i
) is quite small, this mechanism has limited effects. Thus the performance of the system is not significantly superior to the one by traditional methods that merely focus on minimizing the total travel distance. However, as the allocation proceeds, the role of (
1
-
α
)
×
C
W
(
r
i
) comes into effect by sharing the workload with those who have fewer assigned tasks. Above all, the method can obtain an approximately optimal result by considering the total travel cost and the workload balance of robots. A sample illustration of this heuristic mechanism is given in Figure 4.Figure 4
Example of the balanced heuristic mechanism.


## 3.3. Application of BHM

Recently the auction-based task allocation method and the cluster-based task allocation method have been widely used to solve theMRTA problems [18, 24]. So we introduce our BHM approach into the classic single-item auction method and the K-means clustering method, respectively, and proposed two BMH-based methods to solve the balancing MRTA problem.


### 3.3.1. An Improved Auction Based Task Allocation Method Using BHM

A typical seal-bid single-round single-item auction process generally consists of four steps:(i)
task announcement,
(ii)
matrix evaluation,
(iii)
bid submission,
(iv)
close of auction (to determine the winning bids and notify the winning robot).At the second stage, the matrix is usually defined as a function of the optimistic travel cost [11] as shown in the following matrix:
(5)
d
r
1
,
t
1
d
r
1
,
t
2
⋯
⋯
d
r
1
,
t
n
d
r
2
,
t
1
d
r
2
,
t
2
⋯
⋯
d
r
2
,
t
n
⋮
⋮
⋱
⋮
⋮
⋮
⋱
⋮
d
r
m
,
t
1
d
r
m
,
t
2
⋯
⋯
d
r
m
,
t
n
,
where {
t
1
,
t
2
,
…
,
t
n
} are all the open tasks which have not been carried out by robots. In our method, the BHM is introduced into the matrix evaluation process. In order to strengthen the balancing performance of the auction, the matrix evaluation is defined by C
r
i
,
t
j rather than the optimistic travel distance between r
i and t
j.In each round, after all of the robots submit their bids, the single-round single-item auction is closed. The controller will decide the winning bidder with the smallest bid value and notify the winner. Then the bid matrix will be refreshed with following steps (as shown in Figure5).Figure 5
Evaluation matrix refreshment.Step 1.
Delete the taskt
k from the open-task set.Step 2.
Recalculate the row(
C
r
i
,
t
1
,
C
r
i
,
t
1
,
…
,
C
r
i
,
t
n
).As described in (4), the value of C
(
r
i
,
t
j
) is both related to the distance between r
i and t
j as well as the already assigned tasks of r
i. Firstly, the current position of r
i is replaced by the location of t
j, since r
i wins the bid and has to move from its former position to t
j in order to carry out the order. Secondly, the C
W
(
r
i
) increases by the cost of the newly allocated task, which can be mathematically expressed as C
W
(
r
i
)
=
C
W
(
r
i
)
+
w
i
j. After the matrix is refreshed, next single-item auction process is proceeding until all the tasks have been allocated.


### 3.3.2. A BalancedK-Means Clustering Method Using BHM

A clustering method can be generally divided into two stages, that is, firstly finding the cluster centers and then assigning the sample data into the proper cluster. TheK-means clustering is a commonly used partitioning method [25], the main idea of which is to find K cluster centers (
c
1
,
c
2
,
…
,
c
k
), which minimize D in the following by iteration:
(6)
D
=
∑
i
-
1
n
‍
min
⁡
r
=
1,2
,
…
,
k
d
x
i
,
c
r
2
.
In (6), d
(
x
i
,
c
r
) represents the distance between the point x
i and c
r, known as the Euclidean distance. When D converges to a stable value, the appropriate (
c
1
,
c
2
,
…
,
c
k
) are the cluster centers for those K subgroups.At the second stage, the sample datax
i is assigned into the proper cluster with the smallest d
(
x
i
,
c
r
), r
=
1,2
,
…
,
k. However, this method only guarantees an optimal allocation scheme minimizing the travel cost, while the size differences between each cluster are ignored.In order to solve the balancingMRTA problem, we make some modifications on both of the two stages. As for the first stage, given that robots can only move along the grid lines, we substitute the Euclidean distance with the Manhattan distance in (6). In a rectangular coordinate system, the Manhattan distance between point P
1
:
(
x
1
,
y
1
) and point P
2
:
(
x
2
,
y
2
) can be expressed as
(7)
d
manhattan
P
1
,
P
2
=
x
1
-
x
2
+
y
1
-
y
2
.Thus, the main purpose is to findK cluster centers (
c
1
,
c
2
,
…
,
c
k
), which minimize D
manhattan in the following by iteration:
(8)
D
manhattan
=
∑
i
-
1
n
‍
min
⁡
r
=
1,2
,
…
,
k
d
manhattan
x
i
,
c
r
.Then, to reduce the valueD
manhattan iteratively, we find the Manhattan center rather than the center of the collected tasks. Finally, a partial optimal solution is formed in a finite number of iterations. Generally speaking, there are three steps of the first stage.(1)
Initial step: give an initial set of K cluster centers.
(2)
Assignment step: assign each point to the cluster center which has the shortest Manhattan distance.
(3)
Update step: calculate the Manhattan Center, which can reduce the overall value of D
manhattan. The Manhattan Center is defined as follows.It is supposed that there arem points in a rectangular coordinate system as p
1
,
p
2
,
…
,
p
m, coordinates of which are denoted as (
x
1
,
y
1
)
,
(
x
2
,
y
2
)
,
…
,
(
x
m
,
y
m
). Then, the descending order of the sequence x
1
,
x
2
,
…
,
x
m is denoted as x
1
′
,
x
2
′
,
…
,
x
m
′ and the descending order of the sequence y
1
,
y
2
,
…
,
y
m is denoted as y
1
′
,
y
2
′
,
…
,
y
m
′. Our purpose is to find the point P
m
=
(
x
m
c
,
y
m
c
), which minimizes (8):
(9)
min
⁡
x
m
c
,
y
m
c
∑
i
=
1
m
‍
x
m
c
-
x
i
+
y
m
c
-
y
i
.Since the values ofx
m
c and y
m
c do not affect each other, the value of ∑
i
=
1
m
|
x
m
c
-
x
i
| and ∑
i
=
1
m
|
y
m
c
-
y
i
| is minimized separately. It is easy to prove that when m is odd, x
m
c is x
(
m
+
1
)
/
2
′ so that ∑
i
=
1
m
|
x
m
c
-
x
i
| is minimum; when m is even, x
m
c is between x
(
m
+
1
)
/
2
′ and x
(
(
m
+
1
)
/
2
)
+
1
′ so that ∑
i
=
1
m
|
x
m
c
-
x
i
| is minimum. We can get y
m
c in the same way. Therefore, the Manhattan center p
m
c can be calculated by following equations:
(10)
x
m
c
=
x
(
m
+
1
)
/
2
′
m
is
odd
x
(
m
+
1
)
/
2
′
+
x
(
(
m
+
1
)
/
2
)
+
1
′
2
m
is
even
y
m
c
=
y
(
m
+
1
)
/
2
′
m
is
odd
y
(
m
+
1
)
/
2
′
+
y
(
(
m
+
1
)
/
2
)
+
1
′
2
m
is
even
.As mentioned before, the Manhattan center has the minimum overall Manhattan distance to thesem points, by which the value of D
manhattan is reduced. An example is shown in Figure 6. For the original center p
o
c, ∑
i
=
1
m
(
x
o
c
-
x
i
+
y
o
c
-
y
i
)
=
37, while, for the Manhattan Center p
m
c, ∑
i
=
1
m
(
x
m
c
-
x
i
+
y
m
c
-
y
i
)
=
34.Figure 6
Example of the manhattan center.Now, we concisely prove the convergence of the algorithm. Given that theD
manhattan generated by the algorithm is strictly decreasing and there only exist a finite number of such partitions, the algorithm will reach a partial optimal solution in a finite number of iterations.After obtaining the cluster centers, the balanced heuristic mechanism is introduced into the second stage of clustering. In traditional methods, when them cluster centers (
r
1
,
r
2
,
…
,
r
m
) are found in the first stage of the K-means algorithm, the remaining active tasks are allocated into the proper cluster with the smallest d
(
x
i
,
c
r
), r
=
1,2
,
…
,
k. However, in our approach, remaining active tasks are allocated into the proper cluster with the smallest C
(
r
i
,
t
j
) defined in (4).The main idea is that, instead of merely considering the travel cost, the balance of the cluster size is taken into account. The task tends to be allocated into the nearby cluster with fewer tasks. When a new task is added into the clusterj, the C
W
(
r
i
) will be refreshed. After all the active tasks have been allocated, the genetic-based TSP algorithm [26] is used to plan the route for tasks in each cluster. One example of the task allocation is demonstrated in Figure 7  (m
=
4, n
=
50, α
=
0.8), where different colors represent tasks allocated to different robots. Blocks with X are clustering centers.Figure 7
Example of the clustering result.


## 3.3.1. An Improved Auction Based Task Allocation Method Using BHM

A typical seal-bid single-round single-item auction process generally consists of four steps:(i)
task announcement,
(ii)
matrix evaluation,
(iii)
bid submission,
(iv)
close of auction (to determine the winning bids and notify the winning robot).At the second stage, the matrix is usually defined as a function of the optimistic travel cost [11] as shown in the following matrix:
(5)
d
r
1
,
t
1
d
r
1
,
t
2
⋯
⋯
d
r
1
,
t
n
d
r
2
,
t
1
d
r
2
,
t
2
⋯
⋯
d
r
2
,
t
n
⋮
⋮
⋱
⋮
⋮
⋮
⋱
⋮
d
r
m
,
t
1
d
r
m
,
t
2
⋯
⋯
d
r
m
,
t
n
,
where {
t
1
,
t
2
,
…
,
t
n
} are all the open tasks which have not been carried out by robots. In our method, the BHM is introduced into the matrix evaluation process. In order to strengthen the balancing performance of the auction, the matrix evaluation is defined by C
r
i
,
t
j rather than the optimistic travel distance between r
i and t
j.In each round, after all of the robots submit their bids, the single-round single-item auction is closed. The controller will decide the winning bidder with the smallest bid value and notify the winner. Then the bid matrix will be refreshed with following steps (as shown in Figure5).Figure 5
Evaluation matrix refreshment.Step 1.
Delete the taskt
k from the open-task set.Step 2.
Recalculate the row(
C
r
i
,
t
1
,
C
r
i
,
t
1
,
…
,
C
r
i
,
t
n
).As described in (4), the value of C
(
r
i
,
t
j
) is both related to the distance between r
i and t
j as well as the already assigned tasks of r
i. Firstly, the current position of r
i is replaced by the location of t
j, since r
i wins the bid and has to move from its former position to t
j in order to carry out the order. Secondly, the C
W
(
r
i
) increases by the cost of the newly allocated task, which can be mathematically expressed as C
W
(
r
i
)
=
C
W
(
r
i
)
+
w
i
j. After the matrix is refreshed, next single-item auction process is proceeding until all the tasks have been allocated.


## 3.3.2. A BalancedK-Means Clustering Method Using BHM

A clustering method can be generally divided into two stages, that is, firstly finding the cluster centers and then assigning the sample data into the proper cluster. TheK-means clustering is a commonly used partitioning method [25], the main idea of which is to find K cluster centers (
c
1
,
c
2
,
…
,
c
k
), which minimize D in the following by iteration:
(6)
D
=
∑
i
-
1
n
‍
min
⁡
r
=
1,2
,
…
,
k
d
x
i
,
c
r
2
.
In (6), d
(
x
i
,
c
r
) represents the distance between the point x
i and c
r, known as the Euclidean distance. When D converges to a stable value, the appropriate (
c
1
,
c
2
,
…
,
c
k
) are the cluster centers for those K subgroups.At the second stage, the sample datax
i is assigned into the proper cluster with the smallest d
(
x
i
,
c
r
), r
=
1,2
,
…
,
k. However, this method only guarantees an optimal allocation scheme minimizing the travel cost, while the size differences between each cluster are ignored.In order to solve the balancingMRTA problem, we make some modifications on both of the two stages. As for the first stage, given that robots can only move along the grid lines, we substitute the Euclidean distance with the Manhattan distance in (6). In a rectangular coordinate system, the Manhattan distance between point P
1
:
(
x
1
,
y
1
) and point P
2
:
(
x
2
,
y
2
) can be expressed as
(7)
d
manhattan
P
1
,
P
2
=
x
1
-
x
2
+
y
1
-
y
2
.Thus, the main purpose is to findK cluster centers (
c
1
,
c
2
,
…
,
c
k
), which minimize D
manhattan in the following by iteration:
(8)
D
manhattan
=
∑
i
-
1
n
‍
min
⁡
r
=
1,2
,
…
,
k
d
manhattan
x
i
,
c
r
.Then, to reduce the valueD
manhattan iteratively, we find the Manhattan center rather than the center of the collected tasks. Finally, a partial optimal solution is formed in a finite number of iterations. Generally speaking, there are three steps of the first stage.(1)
Initial step: give an initial set of K cluster centers.
(2)
Assignment step: assign each point to the cluster center which has the shortest Manhattan distance.
(3)
Update step: calculate the Manhattan Center, which can reduce the overall value of D
manhattan. The Manhattan Center is defined as follows.It is supposed that there arem points in a rectangular coordinate system as p
1
,
p
2
,
…
,
p
m, coordinates of which are denoted as (
x
1
,
y
1
)
,
(
x
2
,
y
2
)
,
…
,
(
x
m
,
y
m
). Then, the descending order of the sequence x
1
,
x
2
,
…
,
x
m is denoted as x
1
′
,
x
2
′
,
…
,
x
m
′ and the descending order of the sequence y
1
,
y
2
,
…
,
y
m is denoted as y
1
′
,
y
2
′
,
…
,
y
m
′. Our purpose is to find the point P
m
=
(
x
m
c
,
y
m
c
), which minimizes (8):
(9)
min
⁡
x
m
c
,
y
m
c
∑
i
=
1
m
‍
x
m
c
-
x
i
+
y
m
c
-
y
i
.Since the values ofx
m
c and y
m
c do not affect each other, the value of ∑
i
=
1
m
|
x
m
c
-
x
i
| and ∑
i
=
1
m
|
y
m
c
-
y
i
| is minimized separately. It is easy to prove that when m is odd, x
m
c is x
(
m
+
1
)
/
2
′ so that ∑
i
=
1
m
|
x
m
c
-
x
i
| is minimum; when m is even, x
m
c is between x
(
m
+
1
)
/
2
′ and x
(
(
m
+
1
)
/
2
)
+
1
′ so that ∑
i
=
1
m
|
x
m
c
-
x
i
| is minimum. We can get y
m
c in the same way. Therefore, the Manhattan center p
m
c can be calculated by following equations:
(10)
x
m
c
=
x
(
m
+
1
)
/
2
′
m
is
odd
x
(
m
+
1
)
/
2
′
+
x
(
(
m
+
1
)
/
2
)
+
1
′
2
m
is
even
y
m
c
=
y
(
m
+
1
)
/
2
′
m
is
odd
y
(
m
+
1
)
/
2
′
+
y
(
(
m
+
1
)
/
2
)
+
1
′
2
m
is
even
.As mentioned before, the Manhattan center has the minimum overall Manhattan distance to thesem points, by which the value of D
manhattan is reduced. An example is shown in Figure 6. For the original center p
o
c, ∑
i
=
1
m
(
x
o
c
-
x
i
+
y
o
c
-
y
i
)
=
37, while, for the Manhattan Center p
m
c, ∑
i
=
1
m
(
x
m
c
-
x
i
+
y
m
c
-
y
i
)
=
34.Figure 6
Example of the manhattan center.Now, we concisely prove the convergence of the algorithm. Given that theD
manhattan generated by the algorithm is strictly decreasing and there only exist a finite number of such partitions, the algorithm will reach a partial optimal solution in a finite number of iterations.After obtaining the cluster centers, the balanced heuristic mechanism is introduced into the second stage of clustering. In traditional methods, when them cluster centers (
r
1
,
r
2
,
…
,
r
m
) are found in the first stage of the K-means algorithm, the remaining active tasks are allocated into the proper cluster with the smallest d
(
x
i
,
c
r
), r
=
1,2
,
…
,
k. However, in our approach, remaining active tasks are allocated into the proper cluster with the smallest C
(
r
i
,
t
j
) defined in (4).The main idea is that, instead of merely considering the travel cost, the balance of the cluster size is taken into account. The task tends to be allocated into the nearby cluster with fewer tasks. When a new task is added into the clusterj, the C
W
(
r
i
) will be refreshed. After all the active tasks have been allocated, the genetic-based TSP algorithm [26] is used to plan the route for tasks in each cluster. One example of the task allocation is demonstrated in Figure 7  (m
=
4, n
=
50, α
=
0.8), where different colors represent tasks allocated to different robots. Blocks with X are clustering centers.Figure 7
Example of the clustering result.


## 4. Simulated Experiments

### 4.1. Simulation Description

Several groups of simulated experiments are implemented withOPENGL and the experimental process is as follows.Step
1. Initialization.Step
2. Creating orders in the task pool while the arriving rate of orders meets the Poisson distribution.Step
3. Sending a specific number (e.g., 200) of orders from the task pool to the controller.Step
4. Using different methods to allocate the orders (tasks). More specifically, there are four approaches, namely, K-means, BHM
K-means, auction, and BHM auction, and their performances are compared.Step
5. Sending the allocated tasks by the controller to the corresponding robots, which begin to fulfil their tasks (using the A∗ algorithm to calculate the path and using the more-task-prior mechanism to avoid collision). Then go to Step 3.


### 4.2. Simulation Results Analysis

In this part, three criteria mentioned in Section2 are used to evaluate the performance of the proposed balanced heuristic mechanism, that is, coefficient of variation (CV), travel time (TT), and total travel cost (TTC).First of all, we compare the balance behavior of the improved methods with the typical auction method and theK-means method, results of which are given in Tables 1 and 2, where the data are collected by average during fifty times of simulation experiments. Both Tables 1 and 2 show that using the proposed BHM, the diversity degree in work groups is significantly reduced, which indicates the more equal workload distribution among robots.Table 1
Balance behavior of single-item auction versusBHM auction.
R
=
8
Single-item auction
BHM auction (α
=
0.8)
m
μ
σ
CV
=
σ
/
μ
μ
σ
CV
=
σ
/
μ
50
685
312
45.6
%
711
61
8.6
%
100
1374
315
22.9
%
1469
53
3.6
%
150
1969
553
28.1
%
2128
41
1.9
%
200
2591
449
17.3
%
2827
50
1.8
%
250
3234
439
13.6
%
3555
32
0.9
%
300
3897
609
15.6
%
4221
21
0.5
%
350
4418
701
15.9
%
4794
26
0.5
%
400
5085
775
15.2
%
5499
19
0.4
%Table 2
Balance behavior of typicalK-means versus BHM  K-means.
R
=
8
K-means
BHM  K-means (α
=
0.8)
m
μ
σ
CV
=
σ
/
μ
μ
σ
CV
=
σ
/
μ
50
714
310
43.4
%
749
50
6.7
%
100
1390
513
36.9
%
1508
57
3.8
%
150
2058
764
37.1
%
2204
49
2.2
%
200
2751
1116
40.6
%
2949
63
2.1
%
250
3441
1076
31.3
%
3684
69
1.9
%
300
4095
1254
30.6
%
4440
65
1.5
%
350
4776
1484
31.1
%
5214
83
1.6
%
400
5465
1882
34.4
%
5895
66
1.1
%As shown in Figures8 and 9, the travel time (TT) of the multirobot system is provided by both the traditional method and the improved method. We can conclude that by applying the BHM based methods, the time spent to finish the given task is much less than the one by using the traditional method, due to an efficient sharing of workload.Figure 8
Time spent by single-item auction versusBHM auction.Figure 9
Time spent byK-means versus BHM
K-means.Comparison results for traditional methods andBHM based methods are demonstrated in Figure 10 by means of the total travel cost (TTC), from which we can conclude that in balanced heuristic cases, although robots pay more attention to balancing the workload rather than merely minimizing the travel cost as traditional methods do, the TTC only increases by about 8%. Concerning the obvious increasement of the robots utilization, this slightly increased power consumption is quite acceptable.Total travel cost by traditional methods versusBHM adapted methods.
(a)
(b)With the traditional auction method andK-means method, the task allocation process only concentrates on minimizing the travel cost. Once there is a robot nearest to an open task, other robots do not attempt to compete for the task even if they are idle. Thus the utilization of the system is not enough and the time cost to fulfill the given tasks is high. With BHM based methods proposed in this paper, all robots can be utilized in a balanced and effective manner while the travel cost is quite low.Then we study the influence of the variableα on the system performance. The value of α describes the weight of the system energy saving demand and time saving demand. Figure 11 demonstrates the relationship between α and the travel time (TT). It shows that in order to keep a good balance between minimizing the travel distance and efficient sharing of the workload, the coefficient is usually set between 0.7 and 0.9 to achieve the minimum of TT.Figure 11
Relationship betweenα and travel time (TT).Finally, besides comparingBHM-based approaches with the traditional auction method and K-means method, we use a more competing algorithm (K
CAB mechanism in [18]) to testify the scientific merit of the BHM scheme (as shown in Figures 12 and 13). We can conclude that by BHM based methods, the time spent to finish the given task is 5~15% less than the K
CAB mechanism; meanwhile, their total travel costs are almost the same. Thus, the benefit of the balanced heuristic mechanism to warehouse systems is significant.Figure 12
Comparison between method provided in [15] versus BHM-based approaches (TT).Figure 13
Comparison between method provided in [15] versus BHM-based approaches (TTC).


## 4.1. Simulation Description

Several groups of simulated experiments are implemented withOPENGL and the experimental process is as follows.Step
1. Initialization.Step
2. Creating orders in the task pool while the arriving rate of orders meets the Poisson distribution.Step
3. Sending a specific number (e.g., 200) of orders from the task pool to the controller.Step
4. Using different methods to allocate the orders (tasks). More specifically, there are four approaches, namely, K-means, BHM
K-means, auction, and BHM auction, and their performances are compared.Step
5. Sending the allocated tasks by the controller to the corresponding robots, which begin to fulfil their tasks (using the A∗ algorithm to calculate the path and using the more-task-prior mechanism to avoid collision). Then go to Step 3.


## 4.2. Simulation Results Analysis

In this part, three criteria mentioned in Section2 are used to evaluate the performance of the proposed balanced heuristic mechanism, that is, coefficient of variation (CV), travel time (TT), and total travel cost (TTC).First of all, we compare the balance behavior of the improved methods with the typical auction method and theK-means method, results of which are given in Tables 1 and 2, where the data are collected by average during fifty times of simulation experiments. Both Tables 1 and 2 show that using the proposed BHM, the diversity degree in work groups is significantly reduced, which indicates the more equal workload distribution among robots.Table 1
Balance behavior of single-item auction versusBHM auction.
R
=
8
Single-item auction
BHM auction (α
=
0.8)
m
μ
σ
CV
=
σ
/
μ
μ
σ
CV
=
σ
/
μ
50
685
312
45.6
%
711
61
8.6
%
100
1374
315
22.9
%
1469
53
3.6
%
150
1969
553
28.1
%
2128
41
1.9
%
200
2591
449
17.3
%
2827
50
1.8
%
250
3234
439
13.6
%
3555
32
0.9
%
300
3897
609
15.6
%
4221
21
0.5
%
350
4418
701
15.9
%
4794
26
0.5
%
400
5085
775
15.2
%
5499
19
0.4
%Table 2
Balance behavior of typicalK-means versus BHM  K-means.
R
=
8
K-means
BHM  K-means (α
=
0.8)
m
μ
σ
CV
=
σ
/
μ
μ
σ
CV
=
σ
/
μ
50
714
310
43.4
%
749
50
6.7
%
100
1390
513
36.9
%
1508
57
3.8
%
150
2058
764
37.1
%
2204
49
2.2
%
200
2751
1116
40.6
%
2949
63
2.1
%
250
3441
1076
31.3
%
3684
69
1.9
%
300
4095
1254
30.6
%
4440
65
1.5
%
350
4776
1484
31.1
%
5214
83
1.6
%
400
5465
1882
34.4
%
5895
66
1.1
%As shown in Figures8 and 9, the travel time (TT) of the multirobot system is provided by both the traditional method and the improved method. We can conclude that by applying the BHM based methods, the time spent to finish the given task is much less than the one by using the traditional method, due to an efficient sharing of workload.Figure 8
Time spent by single-item auction versusBHM auction.Figure 9
Time spent byK-means versus BHM
K-means.Comparison results for traditional methods andBHM based methods are demonstrated in Figure 10 by means of the total travel cost (TTC), from which we can conclude that in balanced heuristic cases, although robots pay more attention to balancing the workload rather than merely minimizing the travel cost as traditional methods do, the TTC only increases by about 8%. Concerning the obvious increasement of the robots utilization, this slightly increased power consumption is quite acceptable.Total travel cost by traditional methods versusBHM adapted methods.
(a)
(b)With the traditional auction method andK-means method, the task allocation process only concentrates on minimizing the travel cost. Once there is a robot nearest to an open task, other robots do not attempt to compete for the task even if they are idle. Thus the utilization of the system is not enough and the time cost to fulfill the given tasks is high. With BHM based methods proposed in this paper, all robots can be utilized in a balanced and effective manner while the travel cost is quite low.Then we study the influence of the variableα on the system performance. The value of α describes the weight of the system energy saving demand and time saving demand. Figure 11 demonstrates the relationship between α and the travel time (TT). It shows that in order to keep a good balance between minimizing the travel distance and efficient sharing of the workload, the coefficient is usually set between 0.7 and 0.9 to achieve the minimum of TT.Figure 11
Relationship betweenα and travel time (TT).Finally, besides comparingBHM-based approaches with the traditional auction method and K-means method, we use a more competing algorithm (K
CAB mechanism in [18]) to testify the scientific merit of the BHM scheme (as shown in Figures 12 and 13). We can conclude that by BHM based methods, the time spent to finish the given task is 5~15% less than the K
CAB mechanism; meanwhile, their total travel costs are almost the same. Thus, the benefit of the balanced heuristic mechanism to warehouse systems is significant.Figure 12
Comparison between method provided in [15] versus BHM-based approaches (TT).Figure 13
Comparison between method provided in [15] versus BHM-based approaches (TTC).


## 5. Conclusion

In this paper, a novel balanced heuristic mechanism for the multirobot task allocation problem is presented with respect to the task cost and travel cost. To evaluate the proposed approach, we give three criteria, namely, travel time (TT), total travel cost (TTC), and coefficient of variation (CV), and compare some traditional methods with BHM-based methods under those criterions. Simulation results show that the proposed approach greatly enhances the balance behavior of the multirobot system, reduces the total travel time while achieves almost the same total travel cost as the traditional methods do. In addition, the influence of the variable α on the system performance is also studied in detail. In our future work, BHM will be applied into more complicated environments, which consist of heterogeneous tasks and robots. Furthermore, we will dedicate to enhance the robustness of the proposed approach in dynamic environments. Finally, it is worth to point out that this new mechanism is of great applicability to other task allocation problems, such as the WSANs problem in [27].



---

*Source: 380480-2014-11-11.xml*