Abstract
The modular puzzlebased storage system consists of multiple storage modules. The system has multiple input/output (IO) points which can simultaneously deal with multiple orders in one batch. When a batch of orders comes in advance, it is necessary to rearrange the items near each IO point to reduce the picking time of customers. To complete the rearrangement quickly, this paper proposes a twostage path planning method considering the simultaneous movement of multiple items. This method includes two stages: planning single moves and merging single moves. In the first stage, the sequence of single moves of each module needs to be obtained so as to convert the system from an initial state to a target state. In the second stage, the single moves in the sequence are merged into block moves and parallel moves to reduce the steps of movement. The simulation results show that the single move planning method can be used to solve the rearrangement problem stably and effectively and that the single move merging method can greatly optimize the experimental results with the optimization rate more than 50% in different configurations.
1. Introduction
With the rapid development of ecommerce and manufacturing, the automated warehousing system has become a vital link of modern logistics systems and supply chain [1, 2]. Traditional warehousing systems such as automated storage and retrieval systems (AS/RS) generally contain aisles for the vehicle to move and transport items. These systems have been extensively researched by scholars [3–5]. In these systems, the aisles occupy the space that could be used to store items, thereby limiting the storage density. In some fields of application, there are higher demands for storage density and space utilization of storage systems, for example, the ship storage systems and the automated parking systems.
To achieve highdensity storage, a socalled puzzlebased storage (PBS) system [6] has been developed in recent years. Different variants of PBS systems have been used in warehouses and distribution centers, automated parking systems, container handling in port terminals, and so on [7–10].
The PBS systems consist of many adjacent square storage cells arranged in a rectangular grid. Each cell either stores an item or is empty, and the item may only be moved from its current cell to its adjacent empty cell (referred to as an escort) (see Figure 1). This process of moving a single item to its adjacent empty cell is called a single move. In some models of PBS systems, multiple items are allowed to be moved simultaneously in a step, called the merged move, which means merging multiple single moves.
As shown in Figure 2, the merged move includes block move and parallel move. The block move means that a series of items arranged adjacently on a straight line, or a block of items can be moved to an adjoining escort. The parallel move means that multiple single moves or block moves can be performed in one step, if their pathways are not in conflict with each other. Obviously, compared with the single move, the merged move can save steps and improve the efficiency of the PBS system. However, the scheme for the merged move that is directly considered in the planning stage will make the computation more complicated, and it is infeasible.
(a)
(b)
In recent years, multiple variants of the PBS system have been studied. Gue and Kim [6] were the first to propose the concept of the PBS system that was an inspiration from the famous 15puzzle game. They provided optimal solutions to retrieve one item in a PBS system with one escort in the lower left corner which is the location of the IO point. For the larger problems with multiple escorts arranged in a straight line near the IO point, they proposed a heuristic method. In addition, the block move was taken account in the model established by them. The limitation of their work is that one or more escorts must be located near the IO point in the initial state. Kota et al. [11] proposed a general solution for a PBS system with multiple escorts using integer programming (IP). This approach seems to be impractical due to its poor computational efficiency. Through a further study based on the research results in [6], Kota et al. [12] derived an optimal analytical expression for retrieving a single item when one or two escorts are placed randomly in the PBS system. And they proposed a heuristic method of dealing with more than two escorts placed randomly in the system. However, the block move and the parallel move are not considered in their work.
Yalcin et al. [13] studied the singleitem retrieval problem with multiple escorts placed randomly in the PBS system. They used an exact search algorithm and developed several searchguiding estimate functions to reduce the search space. To solve larger problem instances, they presented a heuristic method. However, in their research, only the single move is allowed.
Furmans et al. [14] proposed a puzzlebased storage system named GridFlow. They presented an optimal algorithm for retrieval of one item with one escort and one AGV. Alfieri et al. [15] proposed a puzzlebased storage system using a limited set of AGVs. They used a heuristic method similar to that in [6] to divide the system into several regions according to predetermined rules. The parallel move was taken account in their method. However, their method is limited in that the escorts of the system need to be initially arranged in a straight line near the IO point.
Mirzaei et al. [16] made a study of joint retrieval of multiple items in the PBS system. When more than one item needed to be retrieved, the items would be placed at a “joining location” and then moved to the IO point together. They proposed an optimal method for the joint retrieval of two items and a heuristic method for the joint retrieval of three or more items. However, in their work, it is assumed that only one escort is initially located at the IO point and the merged move is not considered.
Gue et al. [17] proposed a puzzlebased picking system named GridStore with decentralized control. The system consists of many conveyor modules. Each conveyor module can move items in four directions. It has its own independent controller and communicates with its adjacent conveyor to decide its next action. The authors gave the proof that the system is deadlock free and studied the performance of the system in several configurations. Shekari Ashgzari and Gue [18] proposed a puzzlebased goodstoperson system named “GridPick+”. The system is based on a grid of conveyor modules and decentralized control similar to the GridStore in [17]. It can bring the required items to four edges of a rectangular grid while GridStore can only bring the items to the southern boundary.
Zaerpour et al. [10] proposed a multilevel puzzlebased storage system, which is referred to as the LiveCube system. They assumed having sufficient escorts on each level to create a virtual aisle for the requested item. A closedform formula for expected retrieval time was derived by using traditional methods for the aislebased system. Zaerpour et al. [19] derived the closedform formulas for the LiveCube system with twostorage classes. Zaerpour et al. [20] estimate the optimal layout for the LiveCube system with twostorage classes. However, these works are based on the virtual aisle strategy, assuming that there are enough escorts on each level.
The above literature focuses on the PBS system in the form of a single PBS module or multilevel PBS system with a specific configuration. The modular system consisting of multiple PBS modules was not studied yet. Moreover, most of the above work did not allow the merged move (including both the block move and the parallel move at the same time). Although the merged move can be performed through the decentralized control and communication protocol in the GridStore proposed by Gue et al. [17], it is difficult to control each storage cell independently in other applications.
Differing from the above literature, this paper studies a modular puzzlebased storage system (MPBS system), which consists of multiple cyclicstructure PBS modules. The system has multiple IO points for transacting a batch of orders at the same time. When a batch of orders comes in advance, the MPBS system will prearrange the items near each IO point to made them consistent with each order. A path planning method considering the merged move is proposed. It involves two stages: the planning of single moves and the merging of single moves. As shown in Figure 3, in the first stage, the sequence of single moves of each PBS module is obtained without consideration of the merged move; in the second stage, the single moves in the sequence are merged into block moves and parallel moves, to reduce the steps of the system. This paper offers the following contributions:(1)A new type of PBS system consisting of multiple PBS modules is introduced, which may motivate a further study of this new kind of PBS systems(2)A single move planning method is proposed to solve the rearrangement problem in the MPBS system(3)The methods of merging single moves into the block move and merging single moves into the parallel move are proposed, respectively, to reduce the steps of movement(4)A planning framework that generates single move plan in the first stage and merges single moves in the second stage is proposed, for the PBS systems to allow multiple items to move simultaneously
The remainder of this paper is organized as follows. Section 2 describes the structure and workflow of the MPBS system as well as two subproblems discussed in this paper. These two subproblems correspond to the two stages mentioned above, respectively. Section 3 proposes the single move planning method aiming at the first subproblem. Section 4 refers to the methods of merging single moves into block moves and parallel moves to deal with the second subproblem. Section 5 makes an analysis of simulation and experimental results. Section 6 gives a conclusion and discusses the directions for future research.
2. Problem Description
The structured components and related concepts involved in this paper are described as follows: Module: it means a PBS module. Multiple PBS modules can be connected to form an MPBS system. Slot: it means the storage cell of the PBS module. A slot may be either empty or occupied by an item. Escort: it means the empty slot. Port: it is a slot in a module connected to adjacent module (see Figure 4). Input/output (IO) point: the IO point is a slot in a PBS module for items to be picked out. Picking module: it is a PBS module with an IO point to pick items out (see Figure 4). Stocking module: it is a PBS module without an IO point, which can store items and move them to the picking module (see Figure 4). Move: it means a process which can be performed in one step in the MPBS system. The move includes both a single move and a merged move whose definitions are explained in Section 1 and shown in Figure 2. The single move includes both an internal move and an exchange move. Internal move: it means moving an item inside a module. Exchange move: it means moving an item from a port (which stores an item) of a module to another port (which is an escort) of its adjacent module, that is, the two connected modules exchange an escort and an item. An exchange move is a common move of two connected modules. Exchange demand: if a module needs to move an item in or out, it will send an exchange demand to its adjacent module. One exchange demand corresponds to one exchange move. State: the state of a module is described by the storage status on each slot. The state of the MPBS system involves the state of every module. Order: the order includes a series of items that need to be picked out, according to their types and sequence. One order corresponds to one picking module.
2.1. MPBS System
As shown in Figure 4, the MPBS system is divided into a picking area and a stocking area. The stocking area has one PBS module called stocking module, and the picking area has multiple PBS modules called picking modules. Each storage module is a cyclic structure. Every picking module connected to the stocking module has an IO point in the lower left corner. Each module keeps at least one escort to guarantee the normal operation of the system. There are different types of items stored in the system.
Each picking module can be used to pick items out. The whole system can deal with a batch of orders for customers simultaneously. When a picking module receives a request to bring a certain type of items out, it will search for the required type of items within itself and then move the items to the IO point. If the picking module does not contain the required type, it will send a demand signal to the stocking module. Then, the stocking module will search for the required type and move the items to the picking module. After that, the picking module will move the required type of item to its IO point.
In practical application, a batch of orders tend to be assigned to individual picking modules in advance. In this case, the MPBS system works in a mode of preparing orders; in other words, each picking module that has received an order will arrange items near its IO point in accordance with the order. Thus, the items can be picked out in sequence for customers to get them in time.
2.2. Single Move Planning for Order Rearrangement
An order is represented by , where i is the serial number of the orders, is the type of the ith item to be picked out, and is the index of the picking module, where is the total number of picking modules.
Definition 1. Order rearrangement (for a single picking module).
represents the order given to the picking module k. If the picking module k reaches the following states: the type of item in slot 1 is , the type of item in slot is , the type of item in slot is , then it can be said that the picking module fulfill its order rearrangement.
According to Definition 1, the order indicates a target state of picking module k. For a batch of orders , if each picking module that receives an order reaches its target state, then the whole MPBS system will reach target state and complete the rearrangement of that batch of orders. The single move planning for the rearrangement problem of the MPBS system is to find a sequence of single moves of each PBS module, thus to convert the MPBS system to a target state.
2.3. The Merging Problem of Single Moves
Considering the generality, it is possible to use a 4 4 PBS module as an example to describe the process of merging single moves. The words (Location, Direction) are used to indicate a move.
Location means the position where the item moves during a single move. It is represented by l_{i,j}, and i and j denote the column and row of the items, respectively. Location refers to multiple positions where items move during a block move.
Direction means the moving direction during a move. There are four possible values for the variable Direction: U (up), D (down), R (right), and L (left).
For example, (l_{1,1}, R) means that the item at position (1, 1) moves to the right. (l_{2,1}, l_{1,1}, R) means the items at position (2, 1) and (1, 1) move one step to the right at the same time during a block move.
When the merged move is not considered, the PBS module performs a sequence of single moves. In this serial sequence, some single moves that may be merged into a block move or a parallel move, so they can take place simultaneously. In the single move sequence shown in Figure 5, (l_{2,1}, L) and (l_{3,1}, L) can be merged into a block move (l_{2,1}, l_{3,1}, L), thereby reducing the system execution time from 4 steps to 3 steps. In the single move sequence shown in Figure 6, (l_{1,2}, U) and (l_{3,2}, D) can be merged into a parallel move; (l_{1,1}, U) and (l_{3,1}, L) can be merged into a parallel move, thereby reducing the system execution time from 5 steps to 3 steps.
Given a sequence of single moves, the merging problem of single moves is to merge the sequence of single moves into block moves and parallel moves, so as to reduce the steps of movement as more as possible.
3. Single Move Planning
In the PBS module, each module has its own controller, and so it can carry out the internal moves independently. However, the exchange move is performed by two connected modules. The single move planning aims at finding a sequence of moves of each module which includes internal moves and exchange moves. According to the planning, the picking module that receives an order is converted to its target state. The process of single move planning is shown in Figure 7.
3.1. The Order Matching
The order matching means getting part of items in an initial state of the picking module to match with part of items in a target state. As shown in Figure 8, the number in the middle of each slot indicates the type of item, and 0 represents an escort. The number in the lower left corner of each slot represents its serial number. Slot 1 is the IO point, and slots 4 and 5 are the ports connected to the stocking module. In Figure 8, the items at slot 1, slot 2, slot 6, and slot 7 in the current state (the corresponding item types are [1, 2, 2, 3]) and the items at slot 1, slot 2, slot 3, and slot 4 in the target state (the corresponding item types are also [1, 2, 2, 3]) are the same in type and logic sequence. Matching items in pairs in a current state and in a target state is called the matching of the picking module (current state) with its order (target state).
According to the matched group, a sequence of single moves can be generated to transform the picking module to the target state. The unmatched items in the target state can be moved into the picking module and the unmatched items in the current state can be moved out. Each movingin or movingout needs an exchange move, from which an inference is drawn: the less the number of matched items, the more the demand for exchange moves. It should be noted that the exchange move requires the coordination of the stocking module and the picking module. As there is only one stocking module in the MPBS system, the stocking module should deal with the demands of multiple picking modules one by one to avoid deadlock. Therefore, more exchange moves may lead to an increase of the steps for completing the rearrangement, which is unexpected.
Based on the above description, an order matching (OM) algorithm is introduced to get an optimal matched group with the largest number of matched items. The OM is described in Algorithm 1using the notation given in Table 1. Given the order Q and the current state of a picking module, OM returns its optimal matched group. Then, i slots are from and to form a subsequence and , respectively (lines 2–5). If the results of checking and are the same, then a matched group can be obtained and added to the set M (lines 6–7). In M, the matched group with the most items is the optimal result and returned (line 13).

3.2. Single Move Planning Based on Matching
The single move planning based on matching (SMPBM) is described in Algorithm 2 with additional notation given in Table 2. The unmatched items in the target state do not exist in the current state, so it is necessary to move them from the stocking module into the picking module(lines 3–7). The unmatched items in the current state are redundant, and it is necessary to move them out from the picking module to the stocking module (lines 8–12). For the movingin case, the picking module moves an escort to its port to wait for the stocking module to move the required items to its corresponding port and then perform an exchange move. For the movingout case, the picking module moves the required items to its port to wait for the stocking module to move an escort to its corresponding port and then perform an exchange move. The way to move an escort or item to the target slot inside a module is realized by the move planning of cyclic structure (MPOCS) algorithm (Algorithm 3). In the cyclic structure, items can only move clockwise (lines 2–13) and anticlockwise (lines 14–26). For each shift, the moving sequence of both the directions can be obtained simultaneously. Thus, it is possible to select the shorter sequence of the two as a move plan.


The process of conversion from the current state to the target state shown in Figure 9 is corresponding to the matched group in Figure 8. A single move is expressed as A = (source(A), direction(A)). Refer to the first line of Table 2 about the details of A. In Figure 9, the internal move (3, 1) converts the system from the state in Figure 9(a) to the state in Figure 9(b); the exchange move (4, −2) converts the system from the state in Figure 9(b) to the state in Figure 9(c), the internal move sequence {(6, −1), (5, −1), (4, −1), (7, −1), (6, −1), (5, −1)} converts the system from the state in Figure 9(c) to the state in Figure 9(d); and the exchange move [5, 2] converts from the state in Figure 9(d) to the target state in Figure 9(e). In summary, a single move plan {(3, 1), (4, −2), (6, −1), (5, −1), (4, −1), (7, −1), (6, −1), (5, −1), (5, 2)} converts the picking module to the target state.
3.3. Single Move Planning Based on the Priority of Demands
The stocking module receives the exchange demands from each picking module and deals with them according to priority. The single move planning based on the priority of demands (SMPBPD) is described as Algorithm 4. The distance(d) denotes the remaining steps of the picking module for the exchange move corresponding to the demand d. The smaller the distance(d) is, the higher the priority of demand d is. In each loop, the stocking module selects the highest priority demand to handle (line 3). The process of dealing with a demand is to move the required item or escort its corresponding port, which invokes Algorithm 3, obtaining move plans in two directions and selecting the shorter one.

4. Single Move Merging
4.1. Matrix Model of Movement
The state of a PBS module is described by a row vector. Suppose a PBS module has n slots and its state is denoted by a row vector. Then, , where is the type of items in slot i, and . In particular, indicates that slot i is an escort.
The movement of PBS module can be described by a matrix. Suppose the movement of a PBS module with n slots is expressed as a matrix , where is the Boolean space. Then, can be expressed as
In equation (1), means that the item of slot i is moved to slot j after the movement of C.
Take a 2 × 2 PBS module for example. As shown in Figure 10, the number in the lower left corner of each slot represents the slot index of the PBS module. According to the above description, the initial state of the module can be expressed as . After the movement of C, the item at slot 2 is moved to slot 3 while the items at slot 1 and slot 4 remain unmoved. As a result, , , and . Then, C can be expressed as a 4 × 4 matrix in equation (2). Note that and ; thus, . Through the above model, the state transition of a movement can be described by the multiplication operation of a matrix and a vector:
4.2. Merging into Block Move
For a designed PBS module, all of its single moves and block moves can be enumerated. Therefore, all single moves can be listed as a finite set . Furthermore, all single move that can be merged into block moves can be enumerated.
Definition 2. The longest block move.
The longest block move is a sequential set of all single moves which can be merged into a block move on a straight path (row or column) of PBS module. It is expressed as . For all straight paths of the PBS module, their corresponding longest block moves can be enumerated as a finite set .
The block move merging (BMM) algorithm is described in Algorithm 5. Given a sequence of single moves to be performed and the set of all longest block moves G, BMM returns a block move that can be performed at the current step. is the first move to be performed at the current step, and its subsequent move sequence is . By traversing the set G, the longest block move that contains C_{1} (lines 2–4) will be found. Suppose and is the jth move after in , where and . Let denote the jth move after in . In Algorithm 5, j is initialized to 1 (line 1) and incremented in each loop. According to Definition 2, the continuous moves in can be merged into a block move. Judging whether in each loop, then the block move at the current step can be obtained (lines 5–6).


4.3. Merging into Parallel Move
According to Section 4.1, if a sequence of moves converts the PBS module from the initial state to the state , then this process is expressed as
In a sequence of moves , is the first move to be executed at the current step. However, in the remaining sequence of moves , there may be moves that can be executed in parallel with .
Lemma 1. For the two single moves and of a PBS system, if , then and can be parallelly executed.
Proof.. suppose the initial state of the PBS system is . Since that , the following equation can be derived:which shows that the executive sequence of and does not affect the final state of the PBS system; that is, and can be parallelly executed.
Theorem 1. For a given sequence of single moves , is the first move to be executed at the current step and is a certain move in the sequence to be executed later. A sufficient condition for and to be executed parallelly is
Proof.. let , then the formula can be derived. And the move sequence is considered as a whole move . According to Lemma 1, and can be executed parallelly. Because is the first move in , so and can be executed parallelly.
Theorem 2. Given a sequence of single moves , it follows that ,, and can be executed parallelly if equations (6) and (7) are satisfied:
Proof:. according to Theorem 1, and are parallel according to (6); and are in parallel according to (7). Assuming that , equation (7) can be written as (8). The substitution of (6) into the left and the right side of (8) leads to (9) and (10), respectively. Thus, the right side of (9) equals to the right side of (10), which is (11). According to (11) and Theorem 1, and can be executed in parallel. Therefore, ,, and can be executed in parallel:A sequence of single moves is given, according to Theorem 2, if multiple single moves satisfy the sufficient condition of equation (5) in Theorem 1, then these moves are all parallel with one another. Based on the above principle, a parallel move merging (PMM) algorithm (Algorithm 6) is proposed. is the first move to be executed at the current step and its subsequent move sequence is . The move is taken out from to judge whether and satisfy equation (5) in each loop (lines 1–4). If and satisfy equation (5), will be added to (line 4). Finally, all parallel moves at the current step can be obtained (line 7).
5. Simulation and Analysis
5.1. Simulation Settings
The MPBS system used for simulation consists of one stocking module and ten picking modules:(i)Fixed parameters: 50 slots of the stocking module, 10 slots of each picking module, with its slot 5 and slot 6 served as ports and connected with the stocking module, and four types of items stored in the whole system.(ii)Variable parameters: the number of orders , which represents the number of orders assigned to the system, or the number of picking modules needing to be rearranged; the storage density , which represents the ratio of the number of items to the total number of slots in a PBS module.
The simulations on the number of orders and the storage density are carried out, respectively. The given parameters are used to generate a series of random problem instances. For each instance, the order assigned to a picking module is generated by randomly disrupting the initial state of this picking module.
The simulation results of each instance are divided into 4 cases: the results using only single move planning (denoted by Single); the results using single move planning and block move merging (denoted by Block); the results using single move planning and parallel move merging (denoted by Para); the results using single move planning, both block move merging and parallel move merging (denoted by Both). The average steps of the above 4 cases are separately defined as (12)–(15), where T is the number of instances under each parameter configuration:
Furthermore, the average optimization ratios of the latter three cases (Block, Para, and Both) relative to the single case are, respectively, defined as (16)–(18), where T is the number of instances under each parameter configuration:
5.2. Experimental Results concerning the Number of Orders
The storage density is set as 80%, and the length of each order is set as 8. The value of the number of orders is changed, and 50 instances are generated for each value of . Table 3 gives the numerical results, and Figure 11 shows the histogram.
(a)
(b)
From Table 3 and Figure 11, it can be seen that all the four methods (Single, Block, Para, and Both) can solve the rearrangement problem stably in different number of orders. With an increase in the number of orders, the average number of steps increases, which is approximately linear with the number of orders. The number of orders is also the number of picking modules that need to be rearranged. For each picking module, its average number of steps and average number of exchange demands tend to be similar with many random experiments. For the stocking module, many random experiments show that its average number of steps is approximately linear to the number of exchange demands. Therefore, the average number of steps increases approximately linearly with the number of orders.
The relationship among the average steps of the four methods is , and the relationship between the average optimization ratios is . This is because the storage density of each module is set as 0.8. Thus, there are fewer escorts in the system but more items can be moved as a block. In this case, there are fewer moves that can be merged into parallel moves, while there are more moves that can be merged into block moves.
In addition, the average optimization ratio of case Both is over 60% as far as the orders different in number are concerned. It indicates that the merged moves (including both block move and parallel move) can greatly reduce the steps and improve the execution efficiency.
5.3. Experimental Results concerning the Storage Density
The number of orders is set as 8. The value of storage density is changed, and 50 instances are generated for each value of . Table 4 gives the numerical results, and Figure 12 shows the histogram. Two simulation videos are provided in Supplementary Materials.
(a)
(b)
According to Table 4 and Figure 12, all the four methods (Single, Block, Para, and Both) can be used to solve the rearrangement problem stably in different storage densities. With an increase in storage density, the average number of steps increases, and the increasing speed becomes faster and faster. The reason is that, on one hand, the increase of storage density leads to the decrease of escorts in the system, resulting in that there are more obstructive items on the moving path need to be cleared; on the other hand, the length of each order increases with the storage density, which will cause more difficulty for rearrangement.
When the storage density is low, the relationship between the average steps of the four methods is , and the relationship between the average optimization ratios is . With an increase in storage density, the average steps increase, but and increase faster than and ; decreases, but and increase. When the storage density exceeds 0.7, the relationship between the average steps becomes , and the relationship between the average optimization ratios becomes . The above findings show that, with an increase in storage density, the number of stored items increases while the number of escorts decreases. Thus, the optimization effect of the block move becomes stronger and the optimization effect of the parallel move becomes weaker.
In addition, the average optimization ratio of case Both is over 50% and can reach 70% when the storage density is increased to 0.9. This indicates that considering the merged moves (including both block move and parallel move) can greatly reduce the steps and improve the execution efficiency, and that the optimization effect is more significant under the condition of high storage density.
6. Conclusions
This paper introduces an MPBS system consisting of multiple cyclic PBS modules and proposes a twostage path planning method considering the merged moves to solve the rearrangement problem. The proposed method includes single move planning and single move merging. In the stage of single move planning, a path planning method based on the order matching and the priority of demands is proposed; in the stage of single move merging, the method of merging single moves into block moves and the method of merging single moves into parallel moves are proposed, respectively. Through the simulation and analysis in different numbers of orders and different storage densities, the effectiveness of the single move planning method and the optimization performance of single move merging method are verified.
The framework of solving problems in stages may provide references for other PBS systems. For example, in the studies of the other PBS systems, there may be different methods to get a single move plan. Then, the single move plan can be merged in the second stage. The proposed method in this paper can deal with one sequence of moves, and further research may focus on the method to merge multiple sequences of moves or the planning method in stages for the other PBS systems.
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 they have no conflicts of interest regarding the publication of this paper.
Acknowledgments
This research was funded by the National Natural Science Foundation of China, grant no. 52077218.
Supplementary Materials
Two simulation videos with an explanatory document can be obtained from https://drive.Google.com/drive/folders/1ToMJNyTDCHcEM6bCmBBrqnMEL9y_VauX?usp = sharing. (Supplementary Materials)