Multi-robot heuristic goods transportation

In this paper, we consider the issue of transporting a certain number of goods by a team of mobile robots. The target is to minimize the total transportation time and keep a low energy consumption of the intelligent agents on assuring security and quality during the transportation process. The pivotal issue needs to be solved is how to assign tasks to individual robots in a more reasonable and efficient way. We present a novel solution by using an empirical-based heuristic planning strategy for the goods transportation by multiple robots. In contrast to previous approaches, this strategy is designed to plan the transportation task for each individual robot by estimating the production rate of goods based on multi-robot coordination. Our approach has been implemented and evaluated in simulation. The experimental results demonstrate that the completion time of the whole transportation mission can be significantly reduced and the energy consumption of robots can be kept at a low level of our heuristic planning strategy compared with the previous approach.


I. INTRODUCTION
The goods transportation system is an important application for autonomous mobile robot research, which can be used in various environments, such as warehouses, factories, container ports, or hospitals.Generally, how to complete the transportation mission with high efficiency and low cost is the first priority.On the one hand, in contrast to single robot, using a collaborative team of robots has the potential to accomplish the transportation mission more efficiently [1], [2].But on the other hand, we also hope to reduce the overall energy consumption of the fleet of mobile robots.Therefore, during the whole transportation process, the following two issues should be considered: • For the purpose of multi-robot coordination, how to plan the motion for each individual robot of the team, which handles path planning, obstacle avoidance, collision avoidance, grip action and drop action.• For the purpose of high efficiency and low cost, how to assign the transportation task to each individual robot reasonably.The transportation task could be the delivery of goods from one location to another location.In this paper, we consider a multi-robot goods transportation system in which goods must be transported from their place of production to the location of the consumers.The scenario details like this: the source location and the sink location are known and fixed, the production rate of goods is unknown, given the source location cannot store more than one unit at a time, all robots must be placed in a depot at the beginning of Fig. 1.Four robots implement a transportation mission cooperatively.The dark blue piece signifies the goods to be transported.The gray zone represents the depot for the robots, the green zone represents the source location where the goods are produced, and the zone in orange color represents the location where the goods should be delivered by the mobile robot.
the mission, and they can return to the depot in their free time during the whole transportation mission.Here, suppose that the robot will not consume any energy when it stays in the depot waiting for the task.On the contrary, also suppose the energy consumption for motion, computation and sensing increases at a constant rate during the task implementation process.For example, 10 seconds of task will consume 10 units of energy.The objective of robots is to complete the whole transportation mission in coordination but the implementation time should be minimized and the energy consumption should be limited to a low level.Figure 1 shows a screenshot of our implementation on the simulator Stage [3], in which the red robot stays in the depot on standby, the green robot is moving to load a goods, the orange robot is transporting a goods to the sink location, and the blue robot is on its way back after completing a transportation task.
In contrast to previous research, we do not just simply focus on high efficiency (reduce the total mission runtime) or low cost (reduce robots' energy consumption), but combine both to find an optimized solution.The core idea of this solution is to estimate the production rate of goods by a heuristic function based on an empirical model, and then assign the goods transportation task to the individual robot reasonably by a centralized decision making system.In our research, the high efficiency evaluation metric is the total time required to complete a transportation mission, and the low cost evaluation metric is the sum of energy consumption of the robots.Through simulation experiments with a group of robots and compared with the centralized replanner method, the results show that the total transportation time is significantly reduced and the energy consumption is kept at a low level of our approach.
This paper is organized as follows.In Section II, we give an overview of some related work.Subsequently, we briefly discuss the requirements of a multi-robot goods transportation system in Section III.Then we present our heuristic planning strategy in Section IV.Finally, we describe the experimental results obtained with our approach in Section V, and conclude with Section VI.

II. RELATED WORK
The problems of goods transportation can be divided into two categories according to the existing literature: • Multiple robots transport a single object cooperatively.A typical problem in this category is the multi-robot boxpushing problem, in which robots should share manipulation tasks.• Multiple robots transport multiple objects cooperatively.This is one of the sub-problems of foraging.The foraging problems are usually studied by combining the energy autonomy.The core issues concerning both the two categories are the decomposition and allocation of transportation tasks, as well as the motion coordination for multiple robots.
This paper focuses on the second category.Alami et al. [4] presented a general concept for the control of a large fleet of autonomous mobile robots which has been developed, implemented and validated in the framework of MARTHA (Multiple Autonomous Robots for Transport and Handling Applications).They proposed an approach called plan-merging paradigm for multi-robot cooperation, which has been tested in both simulation and real world.Vaughan et al. [5] described a method (LOST) that enables a team of robots to navigate between places of interest in an initially unknown environment using a trail of landmarks.They applied this method to an example "resource transportation" task, in which multiple autonomous robots find and repeatedly traverse a path in an unknown environment between a known "home" and a supply of resource at an initially unknown position.
Tang and Parker [6] described an approach for automatically synthesizing task solutions for heterogeneous multi-robot teams which is called ASyMTRe.This approach is built upon schema and information invariants theories, it enables the robot team to dynamically connect schemas within and across robots to accomplish a task.They also validated this approach in two different scenarios: multi-robot transportation and multi-robot box pushing.Dahl et al. [7] presented an algorithm for task allocation in groups of homogeneous robots based on vacancy chains.Through the experiments in simulation, they showed that the vacancy chain algorithm performs better than random and static task allocation algorithms when individual robots are prone to distractions or breakdowns, or when task priorities change.They also defined the prioritized transportation problem (PTP) as an extension of the basic transportation problem where the sources and sinks, the targets of the transportation, are divided into sets of different priority also called circuits.
Shiroma and Campos [8] proposed a framework called CoMutaR, which is designed to both tackle task allocation and coordination problems in multi-robot system.This framework enables the single robot to perform multiple tasks concurrently by periodically checking and updating task-related information during implementation.It has been tested and evaluated in simulation in object transportation, area surveillance, and multi-robot box pushing problem.Wawerla and Vaughan [9] introduced two task allocation strategies for a multi-robot transportation system.One is based on a centralized planner that uses domain knowledge to solve the assignment problem in linear time.The other enables individual robots to make individual task allocation decisions using only locally obtainable information and single value communication.They used the energy expended by robots as performance evaluation standard.The computational complexity of these two strategies is small, but the performance is good.
In contrast with previous research, firstly, the basic object of our investigation is not just a task decomposition or allocation problem, but a goods transportation problem.Secondly, our simulation experiment is based on low level concepts.We try to represent the goods transportation in the real world with closer physical model, including grip action, drop action, and security of goods in transport.Finally, we introduce the energy consumption unit of the robot as one of the performance metrics, combined with the mission completion time, to evaluate the overall system.

III. MULTI-ROBOT GOODS TRANSPORTATION SYSTEM
In multi-robot systems, there is a basic issue known as coordination.The target of coordination is to fulfill the predefined mission better.In the goods transportation scenario, in order to establish such a system, two practical issues should be considered: robot navigation and task allocation.
Mobile robot navigation contains three fundamental problems: map learning, localization and path planning.In a given environment, a robot should be able to determine a collision free path from its current location to a desired goal location, this is known as path planning.To compute the path, a map of the environment should be known, which is built from a set of sensor data acquired by the mobile robot, this problem of map learning is commonly referred as simultaneous localization and mapping (SLAM).During the path following process, the mobile robot needs to know its exact position and orientation in the environment at all times, this is known as localization.
A multi-robot navigation system should also deal with the possible interference between robots.For instance, a robot should take into account the motion of other robots to avoid congestion or collision [10].
Task allocation is an essential requirement for multi-robot systems.It's designed to find: which robot should implement which work?The object of work could be the location for environment exploration or a crate for goods transportation.The core ideology of multi-robot task allocation (MRTA) systems is to iterate the assignment, in order to deal with changes in the tasks, the robots, and the environment [11].
Moreover, a goods transportation system using a coordinated team of autonomous mobile robots should also meet the following requirements: • The map of the environment is known, in which there exist unknown and possibly moving obstacles like goods and robots.Robots must traverse this given environment for transporting goods from the source to the sink.• A transportation mission is composed of a series of tasks.
The objective is to allocate the subset of these tasks to each robot reasonably in order to minimize the time needed to accomplish the mission.This problem is known as N P-hard [11].
• The quality and security of transportation should be assured.In this paper, a good transport quality refers to that the mission runtime for each trial should be close to the average, and the transport security means that the robot should avoid damage or loss of goods caused by collisions with obstacles or other robots.

IV. HEURISTIC PLANNING STRATEGY
A major reason for the low efficiency of transportation in a known space is the unknown production rate.A regular estimate of this rate is the key to solve the problem.Using heuristic approach is a natural thinking [12], [13], [14].
The production rate, denoted by T n , refers to the elapsed time between the disappearance of the n-th goods (be carried away) and the appearance of the (n + 1)-th goods.T n can be regarded as a sequence of independent and identically distributed random variables.The law of variables is unknown, which can be determined by the method of hypothesis testing.The heuristic value h(n) can be obtained by the distribution function: Equation ( 1) means the elapsed time since the removal of the n-th goods until the appearance of the (n + 1)-th goods by our prediction.Given T n as an uniform distribution, then: In effect, the whole issue is a limited decision making.For each robot R i(i=0,...,m) , the decision space for each step (also denoted R i ) is finite.For example, R i = Suppose there are N goods, then the centralized planner's decision space is R N , every decision r ∈ R N is defined by r(n) ∈ R(n = 1, . . ., N ).
We set the total time X(n) for when the n-th goods has been carried away by a robot, then: Here, f is a function to calculate the interval time between the n-th and the (n + 1)-th goods were carried away.t represents the current decision making.Moreover, t can be taken as r(n) when it makes f the minimum.r n signifies the current location information of each robot.For instance, t refers to that let a robot in depot move to the source location of goods, then f (t, h(n), r n ) = max(h(n), T DepotT oSource ).
We notice that a greedy algorithm is used in (4).It can guarantee to get the minimum of the total time to complete the mission, but it cannot guarantee the low level of the energy consumption.For instance, consider the situation shown in Figure 2. Robot0 and robot1 are two free robots.The red segment and blue segment represent two kinds of task plans (denoted red plan and blue plan) respectively.The red plan represents that robot0 moves to the depot and robot1 moves to the source.The blue plan represents robot0 moves to the source and robot1 moves to the depot.The red plan uses the greedy algorithm, i.e., let the robot the nearest from the source (in the case of the figure, robot1) to load the goods.However, the red plan requires more energy than the blue plan: 13.0 units for the red plan and 10.4 units for the blue plan.
As a result, (4) cannot guarantee that the global optimal solution would be found.Thus, in order to reduce the total mission runtime and to keep a low energy consumption, we use a heuristic method based on an empirical model to replace the function min t∈R f (t, h(n), r n ) to get the current strategy.The details of our implementation are given in Algorithm 1.

Algorithm 1 Heuristic task allocation based on an empirical model
1: if the n-th goods has been carried away by a robot then 2: Calculate h(n) by using (2).

3:
for all robot i which is outside of the depot and not in the task do if h(n) < T toSource (i) and h(n) > 1 2 T toSource (i) then 5: Robot i accepts the task and go to the source.if there is no robot which has accepted the task and there is a robot in the depot then 10: Calculate the waiting time for the robot in depot by using T wait = max(0, h(n) − T DepotT oSource ).

11:
After T wait time, wake up the robot in depot and assign the task to it. 12: end if 13: end if T toSource (i) indicates the time required for robot i to travel from its current location to the source location.We found that, in Algorithm 1, T toSource (i) and T DepotT oSource are two estimated values and they are unknown at the beginning of the mission.Nevertheless, after a robot has completed a task (i.e., it moves from the depot location to the source location, then transports a unit of goods from the source location to the sink location), we can get two reference values: T DepotT oSource and T SourceT oSink , then T toSource (i) and T DepotT oSource can be estimated via these two reference values.
In our system, we use reactive control technique for robotic software architecture.Five behaviors are defined for each robot.The relationships between them are illustrated in Figure 3. Here, STANDBY behavior represents that the robot is in the depot waiting for a new task.MOVE behavior means that the robot is in the mobile navigation process.SENSE behavior signifies the robot is in the process of sensing the depot location to position itself, the source location to grip the goods, or the sink location to drop the goods.GRIP and DROP behaviors denote that the robot is in the grip or the drop action process.
Moreover, each robot has information about all other robots.In this way, we can try to avoid the collision, the congestion and all the other problems of waiting situation when we handle the multi-robot motion planning.

V. EXPERIMENTS
Our approach has been implemented and evaluated in Stage [3], which is a fast and scalable 2D multi-robot simulator.The simulation experiments were conducted by using a group of Pioneer 2-DX robots equipped with a laser range finder providing 361 samples with 180 degrees field of view and a Fig. 3. Relationships between five behaviors in robot control Fig. 4. A typical Pioneer 2-DX robot with the gripper maximum range of 8 meters.Each robot can localize itself based on an abstract localization device which models the implementation of GPS or SLAM.In order to transport goods, the robots are equipped with a gripper to enable them to sense the goods, pick it up, and put it down.The carrying capacity of each robot is limited to one unit.Figure 4 shows a typical Pioneer 2-DX robot with the gripper.
Our simulation experiments are conducted in an enclosed space with 16 meters long and 16 meters wide, which also contains several fixed obstacles.The ratio between real world time and simulation time is about 1:5.We assumed that the mobile robots share a common occupancy grid map with information about the structure of the environment, which is used for path planning and obstacle avoidance in real time.In our implementation, we have used the wavefront propagation algorithm [15] for global path planning and the nearness diagram algorithm [16] for goal seeking and local obstacle avoidance.We also assumed that there exists a central planning component which is able to communicate with all robots and assign the transportation tasks to each one.
In order to evaluate our approach, we designed four different simulation experimental environments, which are shown in Figure 5.The different environments are divided according to the distance relationship between the depot (denoted by D), the source (denoted by S) and the sink (denoted by K), i.e., KD > KS > SD, KD > SD > KS, KS > KD > SD and KS > SD > KD.Actually, there are also another two relationships: SD > KD > KS and SD > KS > KD.However, these two are not interesting situations because the longest distance is that between the depot and the source.
We used a small team of robots to conduct several experi- ments, and compared our heuristic approach to the replanner approach [9].The production rate of goods is varied independently from 4 seconds to 12 seconds.The experimental results are shown in Figure 6.All experiments reported in this paper were carried out on a system with an Intel Core 2 Duo E8400 3.00GHz processor, an Intel Q43 Express chipset and two DDR2 800MHz 1024MB dual channel memory.
Figure 6 shows the results of simulation experiments obtained in a mission of four robots to transport fifty goods cooperatively.The four histograms correspond to the results of the four different simulation environments.Each histogram contains two sets of experimental data corresponding to the total transportation time and the sum of energy consumption of robots by the heuristic approach and the replanner approach respectively.Each set of data contains ten trial results.Figure 6 shows that the transportation time is significantly reduced by our heuristic approach compared to the replanner approach, and the energy consumption obtained by using our approach is still maintained at a low level.
Furthermore, another important advantage of our heuristic approach is making the energy consumption evenly distributed, without concentrating on a few robots.Through a series of experiments, we found that, there are mainly two factors which affect the performance of a goods transportation system: • The relationship between the location of the depot, the source and the sink.If the source and the sink are fixed, then setting the location of a depot reasonably has the potential to improve the performance.For example, in Figure 6, the histogram A (KD > KS > SD) shows a result which has less transportation time and less energy consumption than the histogram B (KD > SD > KS).• The team size of robots.In the experiment, we found that, the energy consumption of each robot is different at the end of mission even sometimes the difference between them is considerable.Actually, when the quantity of robots is too small in a mission, it will extend the total mission runtime.Contrarily, when the quantity of robots is too large in a mission, it will cause a waste of the resource.Therefore, reasonably controlling the number of robots is also an important consideration.
Finally, Figure 6 shows that, the total transportation time for each trial is close to the average in each histogram, in other words, our algorithm provides a moderately good transportation quality.Moreover, in our experiments, we found that if the speed of the robot is too fast, in some instances, a separation of goods and gripper will happen.Therefore, in order to ensure the transport security, i.e., to avoid the damage or the loss of goods caused by the collisions with the obstacles or the other robots, the speed of each robot was limited to 1.0 meters/sec in our simulation.

VI. CONCLUSION
In this paper, we consider the following problem: a set of autonomous mobile robots should work together to accomplish a transport mission efficiently, the mission refers to delivery of a certain amount of goods from sources to sinks, and the objective is to complete the mission as soon as possible and keep the energy consumption as low as possible, which is equivalent to minimize the total mission completion time and limit the sum of energy consumption of robots to a low level.Because the production rate of goods is unknown at the source location, we designed to assign the transportation task to each robot by estimating the time appearance of goods reasonably.Hence, we proposed a novel heuristic approach based on the empirical model for multi-robot goods transportation.The proposed approach has been implemented and evaluated in simulation.The experimental results demonstrated that our approach shows a good performance in the environment close enough to the real world.
The current experiments are conducted on the basis of small goods production rate variation.A large rate variation requires more complex heuristic strategy.Our next work will vary the rate of goods production in a wide time interval to improve our approach.We will also test our approach on large scale problems with more robots and more goods.

Fig. 2 .
Fig. 2. Comparison of two plans for task allocation

Fig. 5 .
Fig. 5. Four different simulation experimental environments.The gray area represents the depot (D), the green area represents the source (S), and the orange area represents the sink (K).The environment A corresponds to case KD > KS > SD, the environment B corresponds to case KD > SD > KS, the environment C corresponds to case KS > KD > SD, and the environment D corresponds to case KS > SD > KD.

Fig. 6 .
Fig. 6.Experimental results of performance comparison of the two methods (heuristic and replanner): four robots implement a transportation mission of fifty goods cooperatively.Number of trials is plotted on the x-axis, and transportation time (in seconds) and energy consumption on the y-axis.