Warehouse design and product allocation

Learning objectives

  • Differentiate the functions of the cross-docking, reserve, and forward areas.
  • Formulate space allocation and product-flow assignment using mathematical optimization.
  • Discuss the model’s assumptions, cost trade-offs, and constraints.

Contents

  1. Functional areas and material flows
  2. Model parameters and decision variables
  3. Objective function and constraints

Functional areas and material flows

01

Design model for warehouse space allocation

Figure 1: Typical warehouse product flow (based on Heragu 2022).

Exercise 2 Role of functional areas in a warehouse

In Table 1, match each row in the “Functions” column with the appropriate Functional Area: 1) Receiving, 2) Shipping, 3) Staging for Cross-Docking, 4) Reserve, and 5) Forward.

Table 1: Matching functions to functional areas in a warehouse.
Functional Area Function
Forward Optimized for order collation and rapid replenishment.
Receiving Pallet loads or individual cartons of products are received.
Shipping Picked order items are staged and value-added services are performed.
Staging In cross-docking, products are sorted for outbound operations.
Forward Performs value-added operations such as labeling or kitting.
Staging Received products are pre-sorted.
Receiving Products are staged briefly and then moved to the shipping area (cross-docking) or the storage area.
Reserve High-density storage equipment is used to maximize space utilization.
Forward Smaller storage area designed for fast order picking.
Staging Items wait temporarily before being moved to the shipping area.
Reserve Stores bulky products for extended periods.

Subset of functional areas

  • Receiving area
    • Pallet loads/individual cartons of products are received.
    • Products are staged (if necessary) for a short period and are moved either to:
      • the shipping area directly (cross-docking operation) or
      • the storage area
  • Shipping area
    • Picked order items are
      • readied (e.g., shrinkwrapped, packed) and
      • staged (if necessary) for shipping
  • Staging for cross-docking
    • Products are sorted and accumulated for further outbound operations.
    • Items are either
      1. put into a staging area (short period) and then moved to the shipping area or
      2. directly moved to the shipping area.
  • Received products are typically presorted at suppliers’ facilities.

Subset of functional areas: storage

  • Reserve area
    • Typically bulky product items
      • Relatively extended periods
      • Shipped as is (or with minimal “value-added” operations)
    • High-density storage equipment
    • Focus on high space utilization
  • Forward area
    • Smaller storage area
    • Fast order picking
    • Value-added operations
    • Order collation

Flows

  • (Flow 1) Receiving ➤ Cross docking ➤ Shipping: Products are passed on to customers or next facility in the supply chain.
  • (Flow 2) Receiving ➤ Reserve ➤ Shipping: Products are stored in the reserve area, and order-picking operation is performed as required.
  • (Flow 3) Receiving ➤ Reserve ➤ Forward ➤ Shipping: Products are
    1. stored in the reserve area (typically in pallet loads),
    2. broken into smaller loads (cartons or cases), and
    3. moved to the forward area for fast order picking.
  • (Flow 4) Receiving ➤ Forward ➤ Shipping: Products are put directly into the forward area for order consolidation (common in supplier warehouses).

Model parameters and decision variables

02

Mathematical model

Goal: Determine the product-flow assignment and the functional-area sizes within the warehouse.

Assumptions:

  1. The available total storage space is known.
  2. A product’s expected time on the shelves (dwell time) is known.
  3. The cost of handling each product in each flow is known.
  4. The dwell time and cost have a linear relationship.
  5. The annual product demand rates are known.
  6. The storage policies and material-handling equipment are known, and these affect the unit handling and storage costs.

Indexes (products, flows)

Table 2: MIP model indexes for products and flows
Symbol Description
\(i\) Number of products \(i \in \{1, 2, \dots, n\)}
\(j\) Type of material flow; \(j \in \{1, 2, 3, 4\}\)

Model product flows

Parameters (costs, prices, EOQ, dwell time)

Table 3: MIP model parameters to calculate the EOQ
Symbol Description
\(D_{i}\) Annual demand rate of product \(i\) in unit loads
\(C_{i}^{\mathrm{order}}\) Order cost for product \(i\)
\(P_i\) Price per unit load of product \(i\)
\(C^{\mathrm{carry}}\) Carrying cost/unit of inventory/year (%) rate
\(Q_i\) Order quantity for product \(i\) (in unit loads)
\(T_i\) Avg. dwell time (in years) per unit load of product \(i\)

Model product flows

EOQ formula

  • For a given product \(i\):
    • \(C_{i}^{\mathrm{order}}\): order cost
    • \(D_{i}\): annual demand rate
    • \(C_{i}^{\mathrm{carry}}\): inventory carrying cost rate/unit/year
    • \(P_i\): price per unit load
    • \(P_iC_{i}^{\mathrm{carry}}\): inventory carrying cost/unit/year
  • The optimal order quantity is \[ Q_i = \sqrt{\frac{2D_{i}C_{i}^{\mathrm{order}}}{P_iC^{\mathrm{carry}}}} \]
  • Example of EOQ calculation:
    • \(C_{i}^{\mathrm{order}}\) = $200 per order
    • \(D_{i}\) = 3,600 units/year
    • \(C_{i}^{\mathrm{carry}}\) = 25%
    • \(P_i\) = $100 per unit
    • \(P_iC_{i}^{\mathrm{carry}} = 100 \times 25\% = \$25\)/unit/year
  • The optimal order quantity is:

    \[ \begin{align} Q_i = & \sqrt{\frac{2 \times 3,600 \times 200}{25}} \\ = & 240 \; \text{units}\\ \end{align} \]

Average dwell time (turnover time)

Average duration a product stays on the shelf (time between two successive replenishments).

  • Known or estimated by the warehouse manager.
  • Can be estimated using the EOQ1 \(Q_{i}\) and annual demand \(D_{i}\) of product \(i\):
    1. The cycle time is \(\frac{Q_{i}}{D_{i}}\) years.
    2. The avg. dwell time is \(T_i = \frac{Q_i}{2D_{i}}\) years.
    3. The avg. n. of turns is \(\frac{1}{T_i}\).
    4. The avg. annual load is \(D_iT_i = \frac{Q_i}{2}\) units.

Example of dwell time calculation:

  • \(Q_{i}\) = 240 units
  • \(D_{i}\) = 3,600 units/year
  • cycle time = \(\frac{240}{3,600} = \frac{1}{15} \; \text{years}\)
  • Number of replenishments/reorders = 15

The avg. dwell time is:

\[ \begin{align} T_i = & \frac{240}{2 \times 3,600} = \frac{1}{\underbrace{30}_{\substack{avg. \\ turns}}} \; \text{years (3.2 weeks)}\\ \end{align} \]

The avg. annual load is

\[ \frac{Q_i}{2} = \frac{240}{2} = 120\; \text{units} \]

Parameters (product to flow handling & storage)

Table 4: MIP model parameters
Symbol Description
\(C_{ij}^{\mathrm{handle}}\) Cost of handling a unit load of product \(i\) in material flow \(j\)
\(C_{ij}^{\mathrm{store}}\) Cost of storing a unit load of product \(i\) in material flow \(j\) per year
\(\rho_{i}^{\mathrm{R}}\) Average percentage of time a unit load of product \(i\) spends in the reserve area if product is assigned to material flow 3
\(d_i\) Ratio of the size of the unit load in the reserve area to that in the forward area
\(q_{ij}\) Break-bulk factor:
= \(1\) if product \(i\) is assigned to material flow \(j \in \{1,2,4\}\)
= \(\lceil d_i \rceil + 1\) when product \(i\) is assigned to flow \(j =3\)

Product flows and the break-bulk factor

Model product flows.

Storage vs. inventory holding costs

  • Inventory holding costs (\(C^{\mathrm{carry}}\)) depend only on the value of the inventory.
    • Same whether the inventory is in reserve or forward or cross-docking area.
  • Storage costs (\(C_{ij}^{\mathrm{store}}\)) depend on the area in which the product is stored.
    • Costs tend to carry a premium for the cross-docking and forward areas (prime real estate in a warehouse).
    • Costs tend to be cheaper for the reserve area.

Storage and handling costs

  • Storage costs (\(C_{ij}^{\mathrm{store}}\)) of product \(i\) in material flow \(j\) are a function of:
    • The size of a product’s unit load.
    • Warehouse leasing/construction costs per square meter.
    • Shelving type used in each area encompassing flow \(j\).
  • Handling costs (\(C_{ij}^{\mathrm{handle}}\)) of product \(i\) in material flow \(j\) are a function of:
    • Product size.
    • Product handling characteristics.
    • Material handling system used in the area(s) included in flow \(j\).

Parameters (space allocation)

Table 5: MIP model parameters regarding functional area spaces
Symbol Description
\(S^{\mathrm{total}}\) Total available storage space
\(S_{i}\) Space required for storing a unit load of product \(i\)
\(z^{\mathrm{CD}}\), \(z^{\mathrm{R}}\), \(z^{\mathrm{F}}\) Levels of space available in the vertical dimension in each functional area
\(LL_{\mathrm{CD}}\), \(UL_{\mathrm{CD}}\) Lower and upper storage space limit for the cross-docking area
\(LL_{\mathrm{F}}\), \(UL_{\mathrm{F}}\) Lower and upper storage space limit for the forward area
\(LL_{\mathrm{R}}\), \(UL_{\mathrm{R}}\) Lower and upper storage space limit for the reserve area

Model product flows

Variables

Table 6: MIP model variables
Symbol Description
\(x_{ij}\) \(1\) if product \(i\) is assigned to flow type \(j\); \(0\) otherwise
\(w^{\mathrm{CD}}\) Proportion of available space assigned to the cross-docking functional area
\(w^{\mathrm{R}}\) Proportion of available space assigned to the reserve functional area
\(w^{\mathrm{F}}\) Proportion of available space assigned to the forward functional area

Model product flows

Objective function and constraints

03

Objective function

Minimize total material handling and storage costs:

\[ \min \sum_{i=1}^{n}{\sum_{j=1}^{4}{(2C_{ij}^{\mathrm{handle}})D_{i}q_{ij}x_{ij}}} + \sum_{i=1}^{n}{\sum_{j=1}^{4}{\frac{Q_{i}}{2}C_{ij}^{\mathrm{store}}q_{ij}x_{ij}}} \]

Handling costs

  • \(2C_{ij}^{\mathrm{handle}}\) = the model assumes two handling transactions per product \(i\) (receiving, shipping); adjust this factor for flows with more touches.
  • \((2C_{ij}^{\mathrm{handle}})D_{i}\) = annual handling costs

Storage costs

  • \(\frac{Q_{i}}{2}\) = avg. annual load of \(i\)
  • \(\frac{Q_{i}}{2}C_{ij}^{\mathrm{store}}\) = avg. yearly storage cost of product \(i\) in material flow \(j\)

Constraints: SKU-to-flow

Each SKU is assigned to only one type of material flow:

\[ \begin{align} \sum_{j}^{4}{x_{ij}} = 1 & \quad \text{for} \; i = 1,2,3, \dots, n \\ \end{align} \]

If a single product could be allocated to multiple flows:

  • Create additional product versions with demands proportional to the different flow ratios.
  • Notice that, despite the initial estimate, the model may provide a different assignment based on the total costs.

Example: A manager estimates that a product has demand of 10,000 units and is likely to be split in a 7:3 ratio between reserve and cross-docking. This ratio results in creating two artificial products with demands of 7,000 and 3,000 units.

Constraints: Functional area space

The SKUs assigned to each area are such that their collective space requirement is within the allotted cubic space.

\[ \begin{align} \sum_{i=1}^{n}{\frac{Q_{i}}{2}S_{i}x_{i1}} &\leq w^{\mathrm{CD}} (z^{\mathrm{CD}}S^{\mathrm{total}}) & \text{Cross docking (flow 1)} \\ \sum_{i=1}^{n}{\frac{Q_{i}}{2}S_{i}x_{i2}} + \sum_{i=1}^{n}{\frac{Q_{i}}{2}\rho_{i}^{\mathrm{R}}S_{i}x_{i3}} &\leq w^{\mathrm{R}}(z^{\mathrm{R}} S^{\mathrm{total}}) & \text{Reserve (flows 2 and 3)}\\ \sum_{i=1}^{n}{\frac{Q_{i}}{2}(1-\rho_{i}^{\mathrm{R}})S_{i}x_{i3}} + \sum_{i=1}^{n}{\frac{Q_{i}}{2}S_{i}x_{i4}} &\leq w^{\mathrm{F}} (z^{\mathrm{F}}S^{\mathrm{total}}) & \text{Forward (flows 3 and 4)}\\ \end{align} \]

Notice that \(\rho_{i}^{\mathrm{R}}\) is the average percentage of time a unit load of product \(i\) spends in the reserve area when assigned to flow \(3\).

Constraints: All available space is allocated

Ensures 100% of the space available is allocated to the three areas:

\[ \begin{align} w^{\mathrm{CD}} + w^{\mathrm{R}} + w^{\mathrm{F}} = 1 \quad \end{align} \]

Constraints: Space lower and upper limits

Enforce upper and lower limits on the space that can be allocated to the cross-docking, forward, and reserve areas:

\[ \begin{align} LL_{\mathrm{CD}}\leq w^{\mathrm{CD}} (z^{\mathrm{CD}}S^{\mathrm{total}}) \leq UL_{\mathrm{CD}}\quad \\ LL_{\mathrm{R}} \leq w^{\mathrm{R}} (z^{\mathrm{R}} S^{\mathrm{total}}) \leq UL_{\mathrm{R}}\quad \\ LL_{\mathrm{F}} \leq w^{\mathrm{F}} (z^{\mathrm{F}} S^{\mathrm{total}}) \leq UL_{\mathrm{F}}\quad \end{align} \]

Constraints: Non-negativity

Ensure that the decision variables are non-negative and available space proportions are within the range \([0,1]\):

\[ \begin{align} x_{ij} \in \{0,1\} & \quad \text{for all products} \; i \; \text{and flows} \; j\\ w^{\mathrm{CD}}, w^{\mathrm{R}}, w^{\mathrm{F}} \geq 0 & \quad \text{(proportion of available spaces)} \end{align} \]

Exercise 3 Adjusting the model: One product, multiple flows

Consider that product \(p\) has demand of 10,000 units and is likely to be split in a 7:3 ratio between reserve and cross-docking. However, the variable \(x_{ij}\), where \(i\) is the product and \(j\) is the flow, is binary and can only be assigned to a single flow:

\[ \sum_{j}^{4} x_{ij} = 1 \quad \forall \quad i = 1, 2, 3, \ldots, n \]

How can we adjust the model to deal with this specific situation?

Answer

Replace product \(p\) with two artificial product versions:

  • \(p_1\): demand of 7,000 units.
  • \(p_2\): demand of 3,000 units.

Each version can be assigned to one flow. The model then chooses the assignments that minimize total cost.

Summary

  • Model simultaneously considers the product allocation and functional area sizing problems in the design of a warehouse.
  • Solve the two problems jointly to minimize annual handling and storage costs.
  • Required input data are readily available in most warehouses.
  • The model can be solved to optimality for 3,000 SKUs using commercial MILP solvers.
  • For larger problems (e.g., 150,000 SKUs), see (meta-)heuristic solutions in (Heragu et al. 2005).
  • For a multi-step approach that includes decisions on functional areas, travel distances, and storage strategies (e.g., dedicated, class-based, randomized), see Huuskes (2023).

References

Bartholdi, J. J., and S. T. Hackman. 2019. Warehouse & Distribution Science. 0.98.1 ed. Georgia Institute of Technology. https://www.warehouse-science.com/book/editions/wh-sci-0.98.1.pdf.
Heragu, S. S., L. Du, R. J. Mantel, and P. C. Schuur. 2005. “Mathematical Model for Warehouse Design and Product Allocation.” International Journal of Production Research 43 (2): 327–38. https://doi.org/10.1080/00207540412331285841.
Heragu, Sunderesh S. 2022. Facilities Design. Fifth edition. CRC Press.
Huuskes, S. 2023. “An Iterative Approach to Warehouse Tactical Level Decision Making.” BSc thesis, University of Twente, Industrial Engineering and Management. https://purl.utwente.nl/essays/94897.