# A Simulation-Based Optimization Method for Warehouse Worker Assignment
## 5 O2 DES Framework and Warehouse Simulation
### Simulation Modeling  
Any process system consists of a sequence of steps, i.e., activities. Entities move through the activities. Similarly, in the simulation modeling, the real life situation can be represented using an entity flow diagram (EFD), a logical flow diagram of entities between the activities. The resources required for the different activities are mapped in the EFD.  
As described in Section 3, the warehouse operations consist of two main types, i.e., inbound and outbound, while the pallet is the entity that flows through inbound and outbound activities. To build the simulation model, an EFD based on the warehouse operational processes needs to be developed, as shown in Figure 3.  
With certain assumptions, the simulation model was built using these EFDs in C# code and simple heuristics integrated with simulation were used to assign the manpower.  
Input information on inbound and outbound workload has been provided by the warehouse for simulation. On top of incoming inbound shipment load and customer order volume, leftover workload information was also considered.  
Due to possible uncertainties in warehouse operations, we assumed the processing time of each activity follows a gamma distribution. The characteristics and advantages of gamma distribution can be found in several previous studies ([PERSON], 2016; [PERSON] et al., 2017; [PERSON] et al., 2018; [PERSON] et al., 2018). For example, in a study by [PERSON] (2016), the Poisson distribution was considered to be inappropriate to describe the lead time, as the uncertainty may arise due to several reasons, which makes a more centralized distribution like the gamma distribution a preferred method.  
Figure 3: Entity flow diagram (EFD).  
The values of mean \(\mu\) and standard deviation \(\sigma\) for each activity are calculated based on the time-motion study conducted in the warehouse. Gamma distribution can be characterized by \(\alpha\) and \(\lambda\), where the density probability function:  
\[f(x;\alpha,\lambda)=\frac{\lambda^{\alpha}x^{\alpha-1}e^{-\lambda x}}{\Gamma( \alpha)}, \tag{5}\]  
with \(\Gamma(\alpha)=(\alpha-1)!\) As the mean \(\mu=\frac{\alpha}{\lambda}\) and squared deviation \(\sigma^{2}=\frac{\alpha}{\lambda^{2}}\), we can derive \(\alpha\) and \(\lambda\) as following:  
\[\lambda=\frac{\mu}{\sigma^{2}},\alpha=\mu\lambda. \tag{6}\]  
Table 2 shows the processing time data used in the simulation model.  
All simulation experiments were performed on an Intel(r) CoreTM i7-8550U CPU 1.80 GHz 1.99 GHz with 16 GB RAM and a 64-bit operating system. First of all, it was necessary to determine the simulation settings: initial conditions, warm-up length, and number of replications [10]. Preliminary tests were performed to evaluate the simulation duration and the number of replications necessary to achieve the steady-state results. Upon the initiation, the simulation tool reads input data and adjusts for the real simulation start time by running a single replication. As a warm-up, this process does not generate any statistics. Using real forecast data of the workload with arrival times, the simulation results indicate that one replication is sufficient to achieve steady output.  
Once the model was validated, simulation iterations were run for each possible scenario, in combination with the optimization algorithm. This will be explained in the next section.