# AMR-Assisted Order Picking: Models for Picker-to-Parts Systems in a Two-Blocks Warehouse
## 4 Implementations of an AMR-Assisted Picker-to-Parts System
### Separated Handover Locations for Sub-Aisles
#### 4.1.1 A Mixed Integer Linear Programming Formulation  
The warehouse object of study (Figure 2) consists of \(n\) corridors and \(2n\) sub-aisles, and each sub-aisle is associated with a private handover location. The set \(V=\{0,\,1,\,2\,\ldots\,\), \(n,\,\ldots\,\), \(2n,\,2n+1\}\) denotes warehouse sub-aisles of the \(n\) main aisle: depot instances are represented virtually by aisles \(0\) and \(2n+1\). The relevant sub-aisles for each batch are defined by the set \(C_{b}\). It always includes the depot, which is the starting and arrival point of the AMR on each of its tours. The set of customer orders and batches are indicated respectively with \(O\) and \(B\). The composition of the batches is known through the binary indicator \(v_{bv}\), which takes value \(1\) if the order \(o\) is in batch \(b\), \(0\) otherwise. The AMR fleet is modelled by set \(A=\{1,\,2,\,\ldots,\,m\}\). The set of tours (for each AMR) to which batches can be assigned is represented by set \(K\). The total number of batches to be processed is the upper bound on this set. The activity carried out by the operator in a sub-aisle \(i\) for batch \(b\) is described by the following parameters: \(p_{bi}\) is the time needed to walk and collect the items, \(l_{bi}\) is the time taken to load the picked items on AMR. The parameter \(t_{ij}\) represents the time needed by the AMR to travel from one location \(i\in V\) to location \(j\in V\), while \(u_{b}\) is the time needed to download the articles of a batch \(b\) from the AMR at the end of the tour. Each customer order \(o\) is associated with a due date \(d_{o}\). The coordination between the pickers and the AMR is regulated through the following variables: \(a_{bi}\) denotes the moment the AMR handling batch \(b\) arrives at sub-aisle \(i\); \(s_{bi}\) represents the moment the picker of sub-aisle \(i\) starts collecting items of batch \(b\); \(h_{bi}\) is the moment the picker of sub-aisle \(i\) starts loading the items of batch \(b\) on the AMR. The completion time of each batch process by the AMR \(a\) with position \(k\) is denoted by \(ct_{ak}\). The assignment of each batch to a specific AMR tour is part of the optimization problem and is regulated by the binary indicator \(x_{abk}\); it takes value 1 if batch \(b\) is completed by AMR \(a\) with position \(k\); 0 otherwise. Starting from position \(k=0\) for each AMR, \(k\) increases by one unit each time a batch is assigned to the AMR; the process ends when all batches have been assigned. For each sub-aisle \(i\), the binary indicator \(z_{bdi}\) takes values 1 if batch \(b\) is processed before batch \(d\) by the order picker; 0 otherwise. The tardiness of a customer order \(o\) is denoted by \(t_{o}\); the object of optimization is the minimization, for all orders, of the total tardiness. Note that the binary indicator \(z_{bdi}\) only refers to a specific sub-aisle \(i\) because, given two different warehouse sub-aisles \(i\in V\) and \(j\in V\) and two different batches \(b\in B\) and \(d\in B\), it can happen that batch \(b\in B\) is processed before batch \(d\in B\) by the picker of sub-aisle \(i\in V\) and, on the contrary, batch \(d\in B\) is processed before batch \(\in B\)\(b\) by the picker of sub-aisle \(j\in V\). For ease of reading, a summary of the main notation used for the models discussed along the paper can be found in Box 1.