Abstract

Robotic mobile fulfillment system (RMFS) is a new type of parts-to-picker order picking system, where robots carry inventory pods to stationary pickers. Because of the difference in working mode, traditional storage assignment methods are not suitable for this new kind of picking system. This paper studies the storage assignment optimization of RMFS, which is divided into products assignment stage and pods assignment stage. In the products assignment stage, a mathematical model maximizing the total correlation of products in the same pods is established to reduce the times of pod visits, and a scattered storage policy is adopted to reduce system congestion. A heuristic algorithm is designed to solve the model. In the pods assignment stage, a model is established minimizing the total picking distance of the mobile robots considering the turnover rate and the correlation of pods as well as the workload balance among picking corridors. A two-stage hybrid algorithm combining greedy algorithm and improved simulated annealing is designed to solve the model. Finally, a simulation experiment is carried out based on the historical order data of an e-commerce company. Results show that the storage assignment method proposed in the paper significantly improves the efficiency of order picking.

1. Introduction

E-commerce orders are generally large in quantity, small in batch, and unstable, so e-commerce order fulfillment can be quite challenging for warehouses. Robotic mobile fulfillment system (RMFS) is a new type of parts-to-picker order picking system, which was first brought to the market by Amazon in 2012. RMFS is particularly suited for e-commerce distribution centres that handle strong demand fluctuations and large assortments of small products, so it has become the development trend of e-commerce picking system in recent years [1]. In an RMFS, mobile robots are used to bring movable shelves, also known as inventory pods, to picking stations, where pickers take the required products off pods. After that, the robots bring the pods back to the storage area and continue to carry the next pods required. By eliminating the need for the pickers to walk and search the inventory, RMFS greatly improves the efficiency of order picking [2]. As a new picking mode, there are many optimization problems to be studied in RMFS, such as storage assignment, order batching [3], multirobot task allocation [4], and path planning [5]. As an important optimization direction of RMFS, storage assignment has a direct impact on the total travel time/distance of robots, hence the efficiency of order picking.

In a traditional picker-to-parts picking system, the scientific storage assignment method can shorten the walking distance, reduce the search time, and improve the efficiency of order picking [6]. Hausman et al. [7] were the first to study the storage assignment strategy of traditional picking systems, and the subsequent literature conducted more in-depth research from demand correlation [8], COI (cube-per-order index) [9], turnover rate [10], and demand and structure correlation [11].

Unlike the traditional picker-to-parts picking system, storage assignment in RMFS includes not only products assignment (to decide which product to assign on which pod) but also pods assignment (to decide where the pods are put in the storage areas) [1214]. Because of the different ways of working, the traditional storage allocation algorithm cannot be directly applied to RMFS.

In recent years, the storage allocation problem in RMFS has attracted scholars’ attention. Xi et al. [15] proposed a collaborative optimization model on the products assignment and order batching problem of RMFS considering the relevance of products. Yuan et al. [16] studied the pods assignment in RMFS, considering the random, class-based, and turnover-based assignment strategies. The research shows that class-based storage with two or three classes can achieve most of the potential benefits, and these benefits increase with greater variation in the pod velocities. Then Roy et al. [17] and Weidinger and Boysen [18] studied the pods assignment and products assignment in RMFS using random assignment policy and scattered assignment policy, respectively. Based on this, Weidinger et al. [19] further studied the reassignment of pods as a special interval scheduling problem and designed an adaptive algorithm. The results show that the proposed adaptive assignment rules are better than traditional assignment strategies. Lamballais et al. [20] developed an analytical model to optimize the inventory allocation across the pods. It is found that spreading inventory units across multiple pods is a better allocation strategy for e-commerce order fulfillment.

From the literature review, we can find that though the research on storage assignment under traditional manual picking mode is very rich, the research on that of the new picking system RMFS has just begun with the following shortcomings: (1) most of the research only focuses on the products allocation or pods allocation, but few on the joint optimization of the two stages; (2) the correlation between products is considered to reduce the pod visits in previous literature, but the correlation between pods is ignored. If we assign the pods with a strong correlation close to each other, it can effectively shorten the travel distance of robots during pods switching; and (3) the optimization objective of most existing literature is to minimize the travel distance of robots but seldom consider system congestion caused by the unbalanced workload among picking corridors, which affects system efficiency even more than travel distance of robots. Thus, reducing system congestion can effectively improve the picking efficiency of RMFS.

This paper studies the storage assignment optimization of RMFS and a joint optimization model of products assignment and pods assignment is built to improve the overall picking efficiency. The main innovations of this paper are as follows: (1) in the modelling, on the basis of the correlation and turnover rate of products, the correlation between pods is also considered to shorten the travel distance of robots during pods switching; (2) scattered storage policy and workload balance among picking corridors are adopted to reduce system congestion. Scattering products in different pods can increase the choice of pod visits and balancing the workload can reduce the congestion of some corridors; and (3) effective hybrid algorithms, including heuristic algorithm, greedy algorithm, and improved simulated annealing algorithm, are designed to solve the models.

The rest of the paper is organized as follows. In Section 2, we describe the storage assignment problem in RMFS. In Section 3, we build the mathematical models of products assignment and pods assignment. In Section 4, we design hybrid algorithms to solve the models. In Section 5, we verify the proposed methods using the real data of an e-commerce company. We finally conclude our study and discuss future research opportunities in Section 6.

2. Problem Description

The typical layout of an RMFS is shown in Figure 1, which is adopted by Amazon Kiva Systems [2] and most RMFS providers. The picking system consists of pods, picking stations, mobile robots, picking corridors, a conveyor belt, and so on. The storage area is composed of neatly distributed pods, each of which can store different products. In order to improve order picking efficiency, multiple orders arrived in a certain period of time are usually combined into one batch for picking, which is called wave picking. Orders in one wave are allocated to picking stations, and the items to be picked in the orders of each picking station are merged to generate a picking list, which consists of many picking tasks. These picking tasks are assigned to robots according to some rules, and these robots cooperate to complete the tasks.

The products picking process is as follows: A mobile robot is sent to the pod containing the required products and transports them to the picking station, where a picker picks the products from the pod, and then the robot sends the pod back to the storage areas (that is called one pod visit). After putting the previous pod back, the robot travels to carry the next pod (that is called pods switching) and so forth until all of its tasks are finished.

The optimization objective of RMFS is to minimize the total travel distance of robots or the total picking time of orders. The storage assignment in RMFS refers to assigning products to the appropriate pods (products assignment) and pods to the appropriate location in the storage areas (pods assignment), which obviously has a direct impact on the total travel time/distance of robots, hence the efficiency of order picking.

In most studies, storage assignment optimization is usually achieved by putting the related products on the same pods to reduce pod visits or by putting the pods with a high turnover rate closer to the picking stations to reduce the travel distance of robots. However, the picking corridors are generally very narrow in RMFS to save storage space. If the products with a high turnover rate are all placed in the zone close to the picking stations, it is easy to cause road congestion, and the robots have to queue and wait, which will affect the picking efficiency more than the saved travel distance. Therefore, system congestion factors should be given enough consideration in the storage allocation of RMFS.

In this paper, we study the joint optimization of products assignment and pods assignment of RMFS considering the correlation, turnover rate of products and pods, as well as system congestion factors. The main ideas of optimization in each stage are discussed below.

2.1. The Products Assignment Stage

In the products assignment stage to decide which product to assign to which pod, we take the following measures to improve efficiency:(1)Store the products with strong correlation in the same pods to reduce the times of pod visits. The stronger the correlation of products in one pod, the more likely the products are required by the same order so that more kinds of products can be picked out by one pod visit, which obviously can reduce the total number of pod visits to fulfill the orders.(2)Spread the same kind of products across multiple pods other than just one pod to reduce the possibility of system congestion. When the products are scattered in different pods, it increases the choices of pod visits. When one pod is not available or it is in a congested area, there are still other pods can be chosen to fulfill the order. Thus, it can reduce system congestion and improve picking efficiency.

2.2. The Pods Assignment Stage

In the pods assignment stage, to decide where the pods to put in the storage areas, the following two aspects are considered:(1)In order to shorten the travel distance of robots during pods switching, the correlation between pods is considered. After putting the previous pod back, a robot has to travel to carry the next pod. If the next pod is put close to the previous pod, it will shorten the travel distance of pods switching and reduce the total travel distance of all robots.(2)While the pods with a high turnover rate are placed near picking stations, the workload balance among picking corridors is considered simultaneously. The pods that contain the best-selling products have a high turnover rate and visit frequency, so putting them close to the picking stations can reduce the robots’ travel distance. However, it can also cause congestion in hot areas. In order to reduce the possibility of road congestion, we balance the workload among corridors by setting a maximum workload volume for each corridor.

3. Model Formulation

3.1. Assumptions and Parameter definition

The following assumptions, which are reasonable in reality, are listed for the mathematical model formulation:(i)The pods are empty at the beginning.(ii)The inventory of each kind of product is 4 times its average demand. Yuan et al. [21] have proved that when the inventory is 4 times the average demand, there is little possibility of shortage.(iii)One kind of product can be stored in different pods.(iv)The number of pods is sufficient to store all products.(v)All pods have the same fixed layers (usually 6–8), and each layer can only store one kind of product in order to operate conveniently for the picker.(vi)The quantity of products stored on one pod can satisfy the demand of the products in one order.(vii)Only one pod can be allocated for each position in the storage area.(viii)A pod can only visit one picking station at one time and then is returned to its original position.

3.2. Mathematical Model of Products Assignment

This section will formulate an optimization model for products assignment with the objective of maximizing the total correlation of products in the same pods to reduce the number of pod visits. Meanwhile, scattered storage strategy is adopted to avoid system congestion. Before describing the model, the following parameters are given: represent product type, , is the total number of product types represents order, , is the total number of orders represents pod, , is the total number of pods represents the total number of layers on one pod represents the maximum number of items stored in each layer of a pod represents the average demand of product represents the total number of storage layers needed of products

represents products set included in order . If product is included in order , ; otherwise, .

R represents products correlation matrix:where is the correlation between products and j. The more frequent the two kinds of products appear in the same order, the stronger their correlation is. The calculation method of the correlation between products is shown in equation (3). When , the numerator is the number of orders both containing products and j. The denominator is the number of orders either containing product or j. When , is the correlation of the same kind of product, in order to spread them across multiple pods, set rij = 0 in this case. can be obtained from historical orders data using the following equation:

represents the decision variable and can be expressed as follows:

is an integer variable, which represents the number of storage layers product occupying on pod .

The objective is to maximize the total correlations between products on the same pods as follows:

The constraints are presented as follows:

Equation (6) stipulates that the number of storage layers assigned to the products is no more than the maximum layers of one pod. Equation (7) ensures that the total demand number of storage layers for each type of product is satisfied. Equations (8)–(10) are the basic constraints for the decision variables.

3.3. Mathematical Model of Pods Assignment

This section will formulate an optimization model for pods assignment with the objective of minimizing the total travel distance of all robots, considering the turnover rate of the pods, the correlation between the pods and the workload balance among picking corridors. Based on Section 3.2, some additional parameters are given.

represents picking corridor, , is the total number of picking corridors.

Each corridor contains K storage positions. represents the k-th storage position of corridor , where only one pod can be placed, .

represents the shortest average distance between and the picking stations.

represents the distance between the current position and the next position , where the next designated pod is located.

represents the relationship vector between pod m and the products.

is the pod-product relation matrix, .

represents the relationship vector between pod m and the orders.

is the pod-order relation matrix, .

Decision variable:

The objective function is to minimize the total picking distance :

is the distance a robot travels to carry the pod located at to the picking station and return the pod back. is the distance a robot travels to fetch the next pod.

The constraints are presented as follows:

Equation (15) stipulates that each pod must be placed at a position in the storage area. Equation (16) denotes that each storage position can only be placed by one pod at most. Equation (17) ensures that each kind of product that is contained in the order can be picked up from the pods that are carried to the picking station. Equation (18) represents the workload is balanced among picking corridors by setting a threshold for the total visits times of pods placed in the same corridor. can be any integer between 1 and . When , the constraint condition is always satisfied, that is, the threshold control does not work. When , the threshold constraint control is the strongest; equations (19) and (20) are the basic constraints of decision variables.

4. Algorithm Design

The integer programming models built in the previous section are nonlinear and have been proved to be NP-hard problems. A large amount of data is also needed to solve the models, so it is difficult to get the optimal solution. Therefore, according to the characteristics of the problem, this paper designs effective hybrid algorithms to solve the optimization problem quickly.

4.1. Algorithm Design for Products Assignment Model

A heuristic algorithm is designed to solve the products assignment model. The steps are as follows:(1)Step 1: Calculate the required storage layers of each product. According to the historical order data and equation (1), the average demand and the required storage layers of each product are obtained.(2)Step 2: Calculate the products information matrix . According to the historical order data and equation (3), the correlation between two products is calculated, and the products correlation matrix is obtained. The products information matrix is formed by adding the required number of storage layers of each product to the right side of .(3)Step 3: Find the maximum correlation value in the products information matrix and assign the two corresponding products to one pod. At the same time, reassign the correlation value to 0, update the required storage layers of the two products, and get the updated . In the updated , find the products most relevant to the above two products, assign the products to the same pod, and update . Repeat the process until all the layers of the pod are occupied and then update . Notice that when the required storage layer of a product is reduced to 0, all the correlation values between the products and other products are reassigned to 0.(4)Step 4: Recover the correlation information of the products in whose required storage layers are not 0. Repeat step 3 for other pods until the required layers of all products are 0.

The pseudo code of the heuristic Algorithm 1 is as follows:

Input: Historical order data
Output: The pod-product relation matrix
(1)#Calculate products correlation matrix
(2)for (i = 1; ; i++) do
(3) for (j = 1; ; j++) do
(4)  r (i, j) Calculate the correlation between products i and j
(5) end
(6)end
(7)#Calculate products information matrix
(8) for (i = 1; ; i++) do
(9)   (i, P+1) Calculate the required storage layers for product i
(10)end
(11)#Calculate which product to put on which pod
(12)for (m = 1; ; m++) do
(13)
(14) product i, j find (A = = max(max())), then update
(15)
(16) while do
(17)  Find the most relevant product u in and update
(18)  update
(19)  if (u, P+1) = = 0 then
(20)    (u, :) 0
(21)    (:,u)
(22)  end
(23)  if sum ( (:, P+1)) = = 0 then
(24)   end calculation
(25)  end
(26)  
(27) end
(28)end
4.2. Algorithmic Design for Pods Assignment Model

The pods assignment problem is similar to the knapsack problem, which can be solved by a simulated annealing algorithm. In order to adapt to the nature of the problem and improve the search efficiency, the simulated annealing algorithm is improved from three aspects: (1) a greedy algorithm based on pods correlation is used to generate the initial solution; (2) the principle of pods with high turnover rate placed near picking stations is used to generate the new solution; and (3) at the same time, the workload among corridors is balanced to reduce system congestion.

4.2.1. Data Preparation

Firstly, we prepare the data needed. According to the pod-product relation matrix obtained in products assignment stage, the pod-order relation matrix is constructed based on the principle of maximum set coverage. Then the pods correlation matrix is constructed, and the pod turnover rate is calculated.

(1) Pod-Order Relation Matrix . The maximum set coverage strategy is adopted to decide which pod to carry, that is, when one order needs to be picked, the robot carries the pods containing the most types of products in the order to fulfill it. is set to 0 at the beginning. For each order, repeat the following steps to update the pod-order relation matrix .Step 1: For the current order , retrieve the types of unpicked products in the order.Step 2: Search for the pod that contains the most types of the above products and choose the pod to serve the order.Step 3: Check whether all the products in order have been picked, if so, update in the pod-order relation matrix and change the corresponding data from 0 to 1. For example, if pod is selected to serve order , is updated to 1; otherwise, return to step 1.

(2) Pods Correlation Matrix . The correlation between two pods relates with the proportion of the common orders they can fulfill, which is measured by cosine correlation as shown in equation (21). is the relationship vector between pod and the orders, and is the relationship vector between pod and the orders. represents the number of the common orders pod and can fulfill, respectively, and and is the number of the orders pod m and can fulfill, respectively.

(3) Pod Turnover Rate . The pod turnover rate is calculated using the historical order information and pod-order relation matrix .

4.2.2. Two-Stage Hybrid Algorithm

A two-stage hybrid algorithm combining greedy algorithm and simulated annealing is designed to solve the pods assignment model.

Stage I: according to the pods correlation matrix, a greedy algorithm is designed to generate the initial solution of pods assignment.

Stage II: the simulated annealing algorithm is improved to optimize the solution and get the final pods assignment results.

The steps of each stage are as follows:

(1) Stage I. Generate initial solution: The purpose of this stage is to generate the initial solution of the subsequent simulated annealing algorithm considering the correlation of pods. The specific steps of the algorithm are as follows:Step 1: According to the pods correlation matrix , select a pair of pods with the maximum correlation.Step 2: Select a pair of positions with the minimum distance in the position distance matrix . If there are more than one pair of positions with minimum distance, choose the pair closer to the picking stations.Step 3: Check whether the total pod turnover rate in the corridor will exceed the threshold value after the two pods in step 1 are placed in the two positions in step 2. If not, put the pods there. Then update the pods correlation matrix and distance matrix by reassigning the values corresponding to the selected pods and positions to −1. Otherwise, select the next position pair with a smaller distance.Step 4: Repeat steps 1 to 3 until each pod is assigned to a storage position and the initial solution is obtained.

(2) Stage II. Optimize the initial solution: In this stage, the simulated annealing algorithm is improved to optimize the initial solution considering pod turnover rate and the balance among corridors.Step 1. Initialization: Generate initial solutions from the previous stage and set the initial temperature , which is big enough. Set and determine the number of iterations, which is metropolis chain length .Step 2: For current temperature , switch the positions of pods to get new solution according to pod turnover rate and workload balance among corridors. Select some pairs of pods with a higher turnover rate and switch their positions with the pods with a lower turnover rate but closer to the picking stations. The purpose is to move the pods with a high turnover rate closer to the picking stations to reduce travel distance. Then check whether the workload balance constraint (equation (18)) is still satisfied after the pods movement to avoid congestion. If it is satisfied, a new solution is generated; otherwise, select other pods to switch positions to get a new solution .Step 3: Compute the increment of . is the cost function of . If , accept as a new current solution, set , . If , calculate acceptance probability of . That is, generate a random number with uniform distribution in (0,1) intervals; if , is accepted as a new current solution and set and . Check if reach the maximum number of iteration, if so, go to step 4; otherwise, return to step 2.Step 4: According to the attenuation function, set ( is generally 0.95∼0.99) to reduce temperature. Check if the minimum temperature is reached, if so, output the current solution as the best solution, and end the program; otherwise, return to step 2.

5. Simulation Analysis

The storage assignment models and algorithms proposed in this paper are verified by the data of an e-commerce company. The company sells 250 kinds of products online and uses RMFS for order picking. The products are stored on mobile pods, each of which is divided into 8 layers and the maximum capacity of each layer is 70 units. There are 10 mobile robots and 6 picking workstations in the warehouse. Suppose the travel speed of robots is 1 m/s and the picking time of one item is 5 s. We compare our proposed method with other methods in products assignment, pods assignment, and the overall picking efficiency.

5.1. Simulation Results of Products Assignment

The simulation program of the storage assignment method proposed in this paper is constructed using MATLAB. The optimal result for product assignment is obtained using the data of 2,000 history orders of the e-commerce company. The result for the products assignment is shown in Table 1.

We can see from Table 1 that one kind of product is assigned to different pods; for example, product 131 is allocated to pods 8 and 9, that is, when product 131 needs to be picked, there are two choices of pod visits, which can reduce system congestion and improve the efficiency of order picking.

The heuristic algorithm proposed in the paper is compared with the random assignment method and the Apriori algorithm. Random assignment is to store the products on the pods randomly without considering the correlation of products. Apriori algorithm was first proposed by Agrawal and Shafer [22] and has been widely used in storage assignments [23]. The basic idea is to count the frequency of multiple products in the same order and put the products with high frequency on the same pod. The methods were compared under different order size (n = 500, 1,000, 1,500, and 2,000) in the number of pod visits. The results are shown in Figure 2.

It can be found from Figure 2 that the times of pod visits of the heuristic algorithm are the smallest among the three methods under different order sizes, 32.7%∼36.6% less than random algorithm and 16.9%∼18.6% less than the Apriori algorithm. Besides, with the increase of order size, the growth rate of pod visits in the proposed heuristic algorithm slows down, which means that the bigger the order size is, the greater the possibility of the correlation between products, so the advantage of the heuristic algorithm is more obvious. The result shows that maximizing the correlations of the products in one pod can effectively reduce the times of pod visits and improve the picking efficiency.

5.2. Simulation Results of Pods Assignment

In order to alleviate system congestion, the method of balancing the workload among corridors is adopted, and the pod assignment result is shown in Figure 3(a). The typical pod layout using the traditional ABC classification method [11] is shown in Figure 3(b). In the figures, the red ones represent pods with a high turnover rate, accounting for about 25% of the total number of pods; the yellow ones represent pods with a medium turnover rate, accounting for about 30% of the total number of pods; and the green ones represent pods with a low turnover rate, accounting for about 45% of the total number of pods.

We can see from Figure 3(b) that all the pods with the high turnover rate (the red ones) are assigned to the storage positions in the first row, which is closest to the picking stations, and most pods with the medium turnover rate (the yellow ones) are assigned to the storage positions in the second row. This will lead to a high total access rate of pods in this area, resulting in congestion of picking robots in the corridors nearby. In Figure 3(a), the red and yellow pods are properly scattered in different areas. We can see that the red pods account for only about 48% of the total positions in the first row. In this way, the workload of corridors can be effectively balanced, and system congestion can be alleviated.

5.3. Comparative Analysis of the Overall Picking Efficiency

In order to validate the efficiency of the storage assignment models and algorithm proposed in this paper, it is compared with other storage assignment methods commonly used (COI algorithm in reference [24] and the algorithm just based on turnover and product correlation in reference [21]) from total picking distance and picking time.

The COI algorithm is also called the cube-per-order index algorithm, which considers the volume and the turnover rate of products [24]. The method used in reference [21] is mainly considered the correlation and turnover rate of products but does not consider the correlation between pods. The method proposed in this paper considers the correlation of products, the turnover rate, and the correlation of pods, as well as the workload balance of corridors. The experimental results of the total picking distance and picking time using the three methods are shown in Figures 4 and 5, respectively.

Figure 4 shows that the total picking distance using the method proposed in this paper is much shorter than that of the COI algorithm and the method, only considering the correlation and the turnover rate of products. And with the increase of order size, the growth rate of picking distance in our proposed method slows down, while the growth rate of other methods shows a linear growth.

Figure 5 shows that the total picking time using the storage assignment method proposed in this paper is much lower than that of the COI algorithm and methods based on correlation and turnover rate of products. And with the increase of order size, the gap of the picking time among methods increases.

Simulation results above show that the storage assignment method proposed in this paper can significantly improve the order picking efficiency by alleviating system congestion and reducing picking distance. Besides, with the increase of order size, the improvement of this method is more obvious.

6. Conclusions and Prospects

This paper studies the joint optimization of products assignment and pods assignment in RMFS. A two-stage mathematical model is established considering the correlation, turnover rate of products and pods, as well as system congestion factors. Hybrid algorithms, including heuristic algorithm, greedy algorithm, and improved simulated annealing algorithm, are designed to solve the models. Simulation experiments are carried out based on the historical data of an e-commerce company. The method proposed in this paper is verified by comparing with other commonly used storage assignment methods from times of pod visits, system congestion situation, total picking distance, and time. Experimental results show that the storage assignment method proposed in the paper significantly improves the efficiency of order picking.

The paper mainly solves the static storage assignment problem considering the characteristics of the operation process of RMFS. However, due to the complexity and dynamics of system scheduling, there are still some problems that need to be further studied. For example, in practical application, the characteristics of orders will change over time, so it is necessary to adjust the storage allocation dynamically according to the changes. Thus, the dynamic storage assignment optimization can further improve the picking efficiency and is a very promising research direction.

Data Availability

The data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this article.

Acknowledgments

The paper was funded by National Natural Science Foundation of China (72101033 and 71831001), Beijing Key Laboratory of Intelligent Logistics Systems (BZ0211), Canal Plan-Youth Top-notch Talent Project of Beijing Tongzhou District (YHQN2017014), Ningxia Science and Technology Key Research and Development Project (2018BEG03003), and Scientific Research Program of Beijing Municipal Commission of Education (KM202110037003).