Warehouse storage policies

A place for everything, and everything in its place Benjamin Franklin

🧠 Learning objectives

  • Describe the main storage policies.
  • Formulate mathematical optimization models for each storage policy.
  • Discuss formulation trade-offs and caveats.

Storage policies

Main issue: Decide how to allocate the various storage locations of a uniform storage medium to a number of SKUs.

Policies:

  • Random/Haphazard/Chaotic
  • Dedicated
  • Class-based
  • Cube-per-order index

Example of a warehouse with 16 uniform storage locations:

1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16

Random storage policy

  • Store an incoming item in any available location.
    • In practice not “purely” random.
    • Operators tend to store or retrieve items from the closest location.

Random storage policy advantages

  • Random policy requires less storage space:
    • The maximum aggregate inventory level is \(\leq\) the sum of the individual items’ maximum inventory levels.
    • Products are typically replenished at different times.
    • Appropriate for automated warehouses (item location/info stored electronically).

Random storage policy disadvantages

  • Retrieval may take longer due to searching time (more so for items that are frequently delivered).
  • Low throughput rate (i.e., the number of S/R transactions per unit time).
    • S/R equipment not effectively utilized.
  • Warehouse tends to be disorderly.

Design model for random storage policy

  • Given that \(n\) storage spaces are required:
    1. Determine the storage space layout that minimizes the total expected travel distance between each storage space \(j\) and \(p\) I/O points: \[ \sum_{k=1}^{p}{d_{kj}} \]
    2. Arrange the spaces in non-decreasing order of the sum of these distances, and pick the \(n\) closest storage spaces.

Note that \(n\) depends on the inventory levels of all the items.

Example

It is desired to determine the storage space layout for 20 storage spaces in a rectangular \(100\ \text{m} \times 50\ \text{m}\) warehouse (50 storage spaces). A random policy will be used, and the designer wants to minimize the total distance traveled. Each storage space is \(10\ \text{m}^2,\) and the I/O point is located in the middle of the south wall.

Distances from I/O in the middle of the south wall
9 8 7 6 5 5 6 7 8 9
8 7 6 5 4 4 5 6 7 8
7 6 5 4 3 3 4 5 6 7
6 5 4 3 2 2 3 4 5 6
5 4 3 2 1 1 2 3 4 5
Solution: Max. distance = 40m, Avg. distance = \(\frac{60\text{m}}{20}\) = 3m
4 4
4 3 3 4
4 3 2 2 3 4
4 3 2 1 1 2 3 4

Dedicated policy

  • Items to prespecified locations that depend on the item type being stored.
  • The space dedicated to each item must equal the maximum level of inventory of that item.
    • Maximum level is observed as soon as the item is replenished.
  • Locations of SKUs do not change:
    • Popular items (e.g., based on turnover) can be stored in more convenient locations.
    • Workers can learn the topology of the warehouse.

For the same volume and frequency of S/R operations, the random policy requires less storage space than the dedicated policy.

Location assignment under dedicated storage policy

Goal: Enhance the throughput of storage and retrieval operations by reducing travel time/distance.

How?: By allocating the most active units to the most convenient locations.

Convenient locations

  • Locations \(j\) with the smallest distance \(d_j\) to the I/O point.
  • If the material transfer is performed through a forklift truck (or a similar type of MHE1), a proper distance metric is the rectilinear or Manhattan metric (or \(L_1\) norm): \[ d_j = |x(j)-x(I/O)| + |y(j)-y(I/O)| \]
  • For an AS/RS type of storage mode, where the S/R unit can move simultaneously in both axes, with uniform speed, the most appropriate distance metric is the Tchebychev metric (or \(L_\infty\) norm): \[ d_j = max (|x(j)-x(I/O)|,|y(j)-y(I/O)|) \]

Active SKUs

  • SKUs that cause a lot of traffic (S/R transactions).

  • Every SKU \(i\) gets a number of storage locations, \(S_i\), exclusively allocated to it.

  • \(S_i\) reflects its max. storage needs and it must be determined through inventory activity profiling.

  • Ideally, given \(n^{\mathrm{SKUs}}\) SKUs, the total n. of products is equal to the n. of storage spaces \(n^{\mathrm{storage}}\): \[ \sum_{i=1}^{n^{\mathrm{SKUs}}}{S_i} = n^{\mathrm{storage}} \]

  • If LHS < RHS, add a dummy SKU \((n^{\mathrm{SKUs}} +1)\) to take up the remaining space \((n^{\mathrm{storage}} - \sum_{i=1}^{n^{\mathrm{SKUs}}}{N_i})\).

  • If RHS < LHS, no feasible solution.

Dedicated assignment model notation

Table 1: Parameters and variables (Heragu 2022).
Symbol Description
\(i\) SKU index
\(j\) Storage location index
\(k\) I/O point index
\(n^{\mathrm{IO}}\) Number of I/O points
\(n^{\mathrm{SKUs}}\) Number of SKUs (supply points)
\(n^{\mathrm{storage}}\) Number of storage locations
\(S_i\) Number of product locations required by SKU \(i\)
\(d_{kj}\) Distance of storage space \(j\) from I/O point \(k\)
\(c_{ik}\) Cost of moving a unit load of item \(i\) to and from I/O point \(k\)
\(f_{ik}\) Number of trips of item \(i\) through I/O point \(k\)
\(w_{ij}\) =\(\frac{\sum_{k=1}^{n^{\mathrm{IO}}} c_{ik} f_{ik} d_{kj}}{S_i}\)
\(x_{ij}\) 1 if location \(j\) is allocated to SKU \(i\); 0 otherwise

Dedicated assignment model formulation

Objective Function

\[ \begin{align*} \min \quad Z & = \sum_{i=1}^{n^{\mathrm{SKUs}}} \sum_{j=1}^{n^{\mathrm{storage}}} w_{ij} x_{ij} \end{align*} \]

Dedicated assignment model constraints

All products \(S_i\) of a SKU \(i\) are allocated: \[ \begin{align} \sum_{j=1}^{n^{\mathrm{storage}}} x_{ij} = S_i, \quad i = 1,2,\ldots,n^{\mathrm{SKUs}} \\ \end{align} \]

Every location stores a single product: \[ \begin{align} \sum_{i=1}^{n^{\mathrm{SKUs}}} x_{ij} = 1, \quad j = 1,2,\ldots,n^{\mathrm{storage}} \\ \end{align} \]

Binary domain: \[ \begin{align} \quad & x_{ij} \in \{0,1\}, \quad i = 1,2,\ldots,n^{\mathrm{SKUs}}, \quad j = 1,2,\ldots,n^{\mathrm{storage}} \end{align} \]

Example: Problem statement

Consider two SKUs (\(a\), \(b\)) and three storage locations (1, 2, 3). SKU \(a\) demands 1 storage location (\(S_a = 1\)), and SKU \(b\) demands 2 storage locations (\(S_b = 2\)). The I/O point \(p\) is at the leftmost side of the warehouse, such that \(d_{p1} = 1\), \(d_{p2} = 2\), and \(d_{p3} = 3\). How should the items be allocated to minimize travel costs between the I/O point and the locations under a dedicated policy?

Example: Assignment inputs

Location

SKU

#Products

x_a1

x_a2

x_a3

x_b1

x_b2

x_b3

a

1

2

3

b

1

2

Locations
I/O 1 2 3
Distances (\(d_{pj}\))
1 2 3
I/O 1 2 3
N. of trips/frequency
a b
I/O 20 10
Costs (\(c_{pj}\))
a b
I/O 1 1

Example: Weights and solution

Weights (\(w_{ij} = \frac{\sum_{k=1}^{n^{\mathrm{IO}}} c_{ik} f_{ik} d_{kj}}{S_i}\))
1 2 3
a \(\frac{1 \times 20 \times 1 }{1}=20\) \(\frac{1 \times 20 \times 2 }{1}=40\) \(\frac{1 \times 20 \times 3 }{1}=60\)
b \(\frac{1 \times 10 \times 1 }{2}=5\) \(\frac{1 \times 10 \times 2 }{2}=10\) \(\frac{1 \times 10 \times 3 }{2}=15\)
Possible solutions
Solution 1 2 3 Travel cost
1 a b b 20 + 10 + 15 = 45
2 b a b 5 + 40 + 15 = 60
3 b b a 5 + 10 + 60 = 75

Cube-per-order index (COI) policy

  • Cube (size) per order (frequency—annual demand, S/R transactions).
  • The COI policy places items near the I/O point when they
    1. have a large number of S/R requests and
    2. require less storage.
  • COI for an item \(i\) in the period of interest \(T\) is defined as: \[ \text{COI} = \frac{\text{item storage space requirement (its cube)}}{\text{number of S/R transactions for the item}} \]
  • Formally (see Manzini 2012): \[ \text{COI}_{i,T} = \frac{v_{i,T}}{\sum_{\text{order} \; j \; \in \; T}{x_{ij}}} \]
    • \(v_{i,T}\) = average storage level of SKU \(i\) in period \(T\).
    • \(x_{ij}\) = 1 if item \(i\) occurs in order \(j\); 0 otherwise.

COI assignment model notation

Table 2: Parameters and variables (Zijm et al. 2019).
Symbol Description
\(i\) SKU index
\(j\) Storage location index
\(k\) I/O point index
\(n^{\mathrm{IO}}\) Number of I/O points
\(n^{\mathrm{SKUs}}\) Number of SKUs (supply points)
\(n^{\mathrm{storage}}\) Number of storage locations
\(S_i\) Number of product locations required by SKU \(i\)
\(f_{i}\) Frequency of usage of SKU \(i\)
\(w_{j}\) Distance of storage location \(j\) from the I/O point
\(x_{ij}\) 1 if location \(j\) is allocated to SKU \(i\); 0 otherwise

COI assignment model formulation

Objective Function

Minimizes the total distance of moving the SKUs into and out of their respective areas:

\[ \begin{align*} \min \quad Z & = \sum_{i=1}^{n^{\mathrm{SKUs}}} \sum_{j=1}^{n^{\mathrm{storage}}} \frac{f_{i}}{S_{i}}w_{j} x_{ij} \end{align*} \]

COI assignment model constraints

Each SKU is assigned the required number of storage locations: \[ \begin{align} \sum_{j=1}^{n^{\mathrm{storage}}} x_{ij} = S_i, \quad i = 1,2,\ldots,n^{\mathrm{SKUs}} \\ \end{align} \]

Each storage location is assigned only one SKU: \[ \begin{align} \sum_{i=1}^{n^{\mathrm{SKUs}}} x_{ij} = 1, \quad j = 1,2,\ldots,n^{\mathrm{storage}} \\ \end{align} \]

Binary domain: \[ \begin{align} \quad & x_{ij} \in \{0,1\}, \quad i = 1,2,\ldots,n^{\mathrm{SKUs}}, \quad j = 1,2,\ldots,n^{\mathrm{storage}} \end{align} \]

A fast solution algorithm

The COI policy can be summarized as follows:

  1. Rank all the available storage locations in non-decreasing distance \(w_j\) from the I/O point.
  2. List the items in a non-decreasing order of their COI.
  3. Move down the two lists, assigning the next \(S_i\) locations to the next most highly ranked SKU \(i\).
    • Allocate the first item in this list to the required number of storage spaces nearest to the I/O point.
    • Allocate the second item in the list to the required number of storage spaces that are next closest to the I/O point.
    • … and so on until all the items are allocated.

Example: Problem statement

Consider two SKUs (\(a\), \(b\)) and three storage locations (1, 2, 3). SKU \(a\) demands 1 storage location (\(S_a = 1\)), and SKU \(b\) demands 2 storage locations (\(S_b = 2\)). The I/O point \(p\) is at the leftmost side of the warehouse, such that \(d_{p1} = 1\), \(d_{p2} = 2\), and \(d_{p3} = 3\). How should the items be allocated to minimize travel costs between the I/O point and the locations under a COI policy?

Example: COI inputs

Location

SKU

#Products

x_a1

x_a2

x_a3

x_b1

x_b2

x_b3

a

1

2

3

b

1

2

Locations
I/O 1 2 3
Distances (\(d_{pj}\))
1 2 3
I/O 1 2 3
N. of trips/frequency
a b
I/O 20 10
Costs (\(c_{pj}\))
a b
I/O 1 1

Example: COI ranking and assignment

  • Location (distance):
    • 1(1)
    • 2(2)
    • 3(3)
  • \(\frac{1}{COI}\) (\(\frac{f_{i}}{S_{i}}\)):
    • \(\frac{f_{a}}{S_{a}} = \frac{20}{1} = 20\)
    • \(\frac{f_{b}}{S_{b}} = \frac{10}{2} = 5\)
  • Assignment:
    • 1=a
    • 2=b
    • 3=b

Class-based storage policy

  • SKUs are grouped into classes.

  • Typically, in a warehouse:

    • 20% of items generate 80% of S/R activity
    • 30% of items generate 15% of S/R activity
    • 50% of items generate 5% of S/R activity
  • Each class is assigned a dedicated storage area.

    • Randomized storage within dedicated area.
  • Item classification:

    • Classify incoming items as A, B, or C according to their activity level.
    • Store class A close to the I/O point, class B in the next closest locations, and class C farther away.
    • Class (Activity%)
      • C (0%–5%)
      • B (5%–20%)
      • A (20%–100%)

Relation between storage strategies

  • Random and dedicated policies are two extremes.
  • Class-based and COI policies fall somewhere between random and dedicated.
    • If items were grouped into one class in the class-based storage policy = randomized storage.
    • If we have as many classes as items in a class-based storage policy = dedicated storage policy.

References

Heragu, Sunderesh S. 2022. Facilities Design. Fifth edition. CRC Press.
Manzini, Riccardo, ed. 2012. Warehousing in the Global Supply Chain. Springer London. https://doi.org/10.1007/978-1-4471-2274-6.
Tompkins, James A., ed. 2010. Facilities Planning. 4th ed. J. Wiley.
Weidinger, Felix, and Nils Boysen. 2018. “Scattered Storage: How to Distribute Stock Keeping Units All Around a Mixed-Shelves Warehouse.” Transportation Science 52 (6): 1412–27. https://doi.org/10.1287/trsc.2017.0779.
Yu, Yugang, René B. M. De Koster, and Xiaolong Guo. 2015. “Class-Based Storage with a Finite Number of Items: Using More Classes Is Not Always Better.” Article. Production and Operations Management 24 (8): 1235–47. https://doi.org/10.1111/poms.12334.
Zijm, Henk, Matthias Klumpp, Alberto Regattieri, and Sunderesh Heragu, eds. 2019. Operations, Logistics and Supply Chain Management. Lecture Notes in Logistics. Springer International Publishing. https://doi.org/10.1007/978-3-319-92447-2.