Storage Assignment Optimization in Robotic Mobile Fulfillment Systems

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.)is 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.


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 indepth research from demand correlation [8], COI (cube-perorder 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) [12][13][14]. 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. e 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. en 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.
e 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. us, reducing system congestion can effectively improve the picking efficiency of RMFS.
is 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. e 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. e 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.

Problem Description
e typical layout of an RMFS is shown in Figure 1, which is adopted by Amazon Kiva Systems [2] and most RMFS providers.
e picking system consists of pods, picking stations, mobile robots, picking corridors, a conveyor belt, and so on. e 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. ese picking tasks are assigned to robots according to some rules, and these robots cooperate to complete the tasks.
e 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. e optimization objective of RMFS is to minimize the total travel distance of robots or the total picking time of orders. e 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.
erefore, 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. e main ideas of optimization in each stage are discussed below.

2.1.
e 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. e 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. us, it can reduce system congestion and improve picking efficiency.

e 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. e pods that contain the bestselling 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.

Assumptions and Parameter definition.
e following assumptions, which are reasonable in reality, are listed for the mathematical model formulation: (i) e pods are empty at the beginning. (ii) e 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) e 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.

Mathematical Model of Products Assignment.
is 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: i, j represent product type, i, j � 1, 2, . . . , P, P is the total number of product types n represents order, n � 1, 2, . . . , N, N is the total number of orders m represents pod, m � 1, 2, . . . , M, M is the total number of pods q represents the total number of layers on one pod l represents the maximum number of items stored in each layer of a pod a i represents the average demand of product i d i represents the total number of storage layers needed of products i R represents products correlation matrix: where r ij is the correlation between products i and j. e more frequent the two kinds of products appear in the same order, the stronger their correlation is. e calculation method of the correlation between products is shown in equation (3). When i ≠ j, the numerator is the number of orders both containing products i and j. e denominator is the number of orders either containing product i or j. When i � j, r ij is the correlation of the same kind of product, in order to spread them across multiple pods, set r ij = 0 in this case. r ij can be obtained from historical orders data using the following equation: x im represents the decision variable and can be expressed as follows: y im is an integer variable, which represents the number of storage layers product i occupying on pod m. e objective is to maximize the total correlations between products on the same pods as follows: e 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.

Mathematical Model of Pods Assignment.
is 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.
Each corridor contains K storage positions. p tk represents the k-th storage position of corridor t, where only one pod can be placed, k � 1, 2, . . . , K, t � 1, 2, . . . , T. w tk represents the shortest average distance between p tk and the picking stations. d kk′ represents the distance between the current position k and the next position k ′ , where the next designated pod is located.
H m � h m1 , h m2 , . . . , h mP represents the relationship vector between pod m and the products.
C is the pod-order relation matrix, Decision variable: e objective function is to minimize the total picking distance : 2w tk is the distance a robot travels to carry the pod located at p tk to the picking station and return the pod back. d kk′ is the distance a robot travels to fetch the next pod. e 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. Z can be any integer between 1 and T. When Z � 1, the constraint condition is always satisfied, that is, the threshold control does not work. When Z � T, the threshold constraint control is the strongest; equations (19) and (20) are the basic constraints of decision variables.

Algorithm Design
e 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. erefore, according to the characteristics of the problem, this paper designs effective hybrid algorithms to solve the optimization problem quickly.

Algorithm Design for Products Assignment Model.
A heuristic algorithm is designed to solve the products assignment model. e 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 RA. According to the historical order data and equation (3), the correlation between two products is calculated, and the products correlation matrix R is obtained. e products information matrix RA is formed by adding the required number of storage layers of each product to the right side of R. (3) Step 3: Find the maximum correlation value in the products information matrix RA 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 RA. In the updated RA, find the products most relevant to the above two products, assign the products to the same pod, and update RA. Repeat the process until all the layers of the pod are occupied and then update H. 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 RA whose required storage layers are not 0. Repeat step 3 for other pods until the required layers of all products are 0. e pseudo code of the heuristic Algorithm 1 is as follows:

Algorithmic Design for Pods Assignment Model.
e 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.

Data Preparation.
Firstly, we prepare the data needed. According to the pod-product relation matrix H obtained in products assignment stage, the pod-order relation matrix C is constructed based on the principle of maximum set coverage. en the pods correlation matrix E is constructed, and the pod turnover rate is calculated.
(1) Pod-Order Relation Matrix C. e 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. c mn is set to 0 at the beginning. For each order, repeat the following steps to update the pod-order relation matrix C.
Step 1: For the current order n, 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 n have been picked, if so, update c 1n , c 2n , . . . , c Mn in the pod-order relation matrix C and change the corresponding data from 0 to 1. For example, if pod m is selected to serve order n, c mn is updated to 1; otherwise, return to step 1.
(2) Pods Correlation Matrix E. e 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). C m is the relationship vector between pod m and the orders, and C g is the relationship vector between pod g and the orders. C m · C g represents the number of the common orders pod m and g can fulfill, respectively, and |C m | and |C g | is the number of the orders pod m and g can fulfill, respectively.
(3) Pod Turnover Rate Fre m . e pod turnover rate Fre m is calculated using the historical order information and podorder relation matrix C.

Two-Stage Hybrid Algorithm.
A two-stage hybrid algorithm combining greedy algorithm and simulated annealing is designed to solve the pods assignment model.
Stage II: the simulated annealing algorithm is improved to optimize the solution and get the final pods assignment results. e steps of each stage are as follows: (1) Stage I. Generate initial solution: e purpose of this stage is to generate the initial solution of the subsequent simulated annealing algorithm considering the correlation of pods. e specific steps of the algorithm are as follows: Step 1: According to the pods correlation matrix E, 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 D. 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. en 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 P � P 0 from the previous stage and set the initial temperature T 0 , which is big enough. Set T � T 0 and determine the number of iterations, which is metropolis chain length L.
Step 2: For current temperature T, switch the positions of pods to get new solution P ′ 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. e purpose is to move the pods with a high turnover rate closer to the picking stations to reduce travel distance.
en 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 P ′ is generated; otherwise, select other pods to switch positions to get a new solution P ′ .
Step 3: Compute the increment of P ′ : Δf � f(P ′ ) − f(P). f(P) is the cost function of P. If Δf < 0, accept P ′ as a new current solution, set P � P ′ , l � l + 1. If Δf ≥ 0, calculate acceptance at is, generate a random number rand with uniform distribution in (0,1) intervals; if exp(−Δf/T ) > rand, P ′ is accepted as a new current solution and set P � P ′ and l � l + 1. Check if l 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 T � T * ΔT (ΔT is generally 0.95∼0.99) to reduce temperature. Check if the minimum temperature T min is reached, if so, output the current solution P as the best solution, and end the program; otherwise, return to step 2.

Simulation Analysis
e storage assignment models and algorithms proposed in this paper are verified by the data of an e-commerce company. e company sells 250 kinds of products online and uses RMFS for order picking. e products are stored on mobile pods, each of which is divided into 8 layers and the maximum capacity of each layer is 70 units. ere 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.

Simulation Results of Products Assignment.
e simulation program of the storage assignment method proposed in this paper is constructed using MATLAB. e optimal result for product assignment is obtained using the data of 2,000 history orders of the e-commerce company. e 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. e 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]. e 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. e methods were compared under different order size (n � 500, 1,000, 1,500, and 2,000) in the number of pod visits. e 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 Complexity products, so the advantage of the heuristic algorithm is more obvious. e 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.

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). e 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. is 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.

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    Complexity (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.
e COI algorithm is also called the cube-per-order index algorithm, which considers the volume and the turnover rate of products [24]. e method used in reference [21] is mainly considered the correlation and turnover rate of products but does not consider the correlation between pods. e 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. e 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.

Conclusions and Prospects
is 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. e 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. e 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. us, the dynamic storage assignment optimization can further improve the picking efficiency and is a very promising research direction.

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

Conflicts of Interest
e authors declare that there are no conflicts of interest regarding the publication of this article.