Bibliography Bartholdi & Hackman: Chapter 6 Francis, McGinnis, White: Chapter 5 Askin and Standridge: Sections 10.3 and 10.4
Storage Policies
Main Issue: Decide how to allocate the various storage locations of a uniform storage medium to a number of SKUs.
I/O
Convenient Locations
Locations with the smallest distance d_j to the I/O point! In case that the material transfer is performed through a forklift truck (or a similar type of material handling equipment), a proper distance metric is the, so-called, rectilinear or Manhattan metric (or L1 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, so-called Tchebychev metric (or L norm): d_j = max (|x(j)-x(I/O)|,|y(j)-y(I/O)|)
Active SKUs
SKUs that cause a lot of traffic! In steady state, the appropriate activity measure for a given SKU i:
Average visits per storage location per unit time = (number of units handled per unit of time) / (number of allocated storage locations) = TH_i / N_i
Example
A: 20/10=2 B: 15/5 = 3 C: 10/2 = 5 D: 20/5 = 4
9
8 7 6 5
8
7 6 5 4
7
6 5 4 3
6 5 4
5 4 3 2 1
5
4 3 2 0
5 4
6
5 4
7
6 5 4 3
8
7 6
9
8 7 6 5
3 2
3 2 3 1
5 4
I/O
A B D
A
A A B B B
B D C
A
D
A A D A
C D
I/O
Problem Formulation
Decision variables: x_ij = 1 if location j is allocated to SKU i; 0 otherwise. Formulation: min S_i S_j [(TH_i/N_i) * d_j] * x_ij s.t. i, j,
Problem Representation
SKU N_1
1
Location
1
N_i
c_ij = (TH_i/N_i)*d_j
j
N_S
Remarks
The previous problem representation corresponds to a balanced transportation problem: Implicitly it has been assumed that: L = S_i N_i For the problem to be feasible, in general, it must hold that: L S_i N_i If L - S_i N_i > 0, the previous balanced formulation is obtained by introducing a fictitious SKU 0, with N_0 = L - S_i N_i and TH_0 = 0
8 7 6 5 4
7 6 5 6 5 4 5 4 3 4 3 2 3 2 1
5 4 3 2 0
5 6 4 5 3 4 2 3 1 2
7 6 5 4 3
8 7 6 5 4
9 8 7 6 5
I/O
9 8 7 6 5 10 9 8 7 6 11 12 13 10 11 12 9 10 11 8 10 9 7 8 9 14 13 12 11 10
I/O
18 16 14 12 10
16 14 12 10 8
14 12 10 8 6
12 10 8 6 4
10 10 10 12 14 16 18 8 8 8 10 12 14 16 6 6 6 8 10 12 14 8 10 12 4 4 4 6 2 0 2 4 6 8 10
Option C
15 15 15 13 11 9 13 11 9 13 11 9 15 13 11 9 15 13 11 9 7 7
I/O O
6 7 7 7 6 7 7 7 7 7 9 9 9 9 9 11 13 11 13 11 13 11 13 11 15 15
7
7 7
15 15 13 15
Example 2 (cont.)
Option A: U-shaped or cross-docking configuration
amplifies the convenience/inconvenience of close/distant locations appropriate for product movement with strong ABC skew provides flexibility for interchanging between shipping and receiving docking capacity allows for dual command operation of forklifts, reducing, thus, the deadhead traveling minimizes truck apron and roadway
Storage Sizing
Randomized Storage:
How many storage locations, N, should be employed for the storage of the entire SKU set?
Dedicated storage:
How many storage locations, N_i, should be dedicated to each SKU i? Given a fixed number of available locations, L, how should these locations be distributed among the various SKUs?
Class-based storage:
How should SKUs be organized into classes? How many storage locations, N_k, should be dedicated to each SKU class k?
Cost-based Analysis
Select N_is in a way that minimizes the total operational cost over a given horizon, taking into consideration the cost of owning and operating the storage space and equipment, and also any additional costs resulting from space shortage and/or the need to contract additional storage space.
s.t. F(N) s N 0
Solution:
N = min{k: S_{j=0,,k} p_j s}
S_i N_i L
N_i 0 i
Assign to each class the requested storage locations, prioritizing them according to their number of turns,
Model Parameters:
T = length of planning horizon in time periods d_ti = storage space required for SKU i during period t C_0 = discounted present worth cost per unit storage capacity owned during the planning horizon T C_1 = discounted present worth cost per unit stored in owned space per period C_2 = discounted present worth cost per unit of space shortage (e.g., per unit stored in leased space) per period
Model Objective:
min TC (N_1,N_2,,N_n) =
S_i [C_0 N_i + S_t {C_1 [min(d_ti, N_i)] + C_2 [max(d_ti - N_i, 0)]}]
Example
Problem Data: N=1; T=6; d = < 2, 3, 2, 3, 3, 4,>; Solution: C_0 = 10, C_1 = 3, C_2 = 5
Stor. Demand
C = C_0/(C_2-C-1) = 10/(5-3) = 5
=> N = 2
Storage Configuration and Policies for Unit Load warehouses: Topics covered
Storage Policies: Assigning storage locations of a uniform storage medium to the various SKUs stored in that medium
Dedicated Randomized Class-based Criterion: Maximize productivity by reducing the traveling effort / cost
Storage Configuration and Policies for Unit Load warehouses: Topics covered (cont.)
Storage sizing for various SKUs: Determine the number of storage locations to be assigned to each SKU / group of SKUs.
Criterion: provide a certain (or a maximal) service level minimize the total (space+equipment+labor+shortage) cost over a planning horizon
Remark: In general, space utilization will be only one of the factors affecting the final decision on whether to move an SKU into rack or not. Other important factors can be
the protection that the rack might provide for the pallets of the considered SKU; the ability to support certain operational schemes, e.g., FIFO retrieval; etc.
Case II: Utilizing a 3-high pallet rack for an SKU with N=30 (pallets), which are currently floor-stacked 3-high, to come within 4 ft from the ceiling.
Current footprint: 10 pallet positions Introducing a 3-high rack does not create any new positions, and it will actually require more space in order to accommodate the rack structure (cross-beams and the space above the pallets, required for pallet handling)
Lane Height
Lane Depth (3-deep) Lanes
Aisle
Notation
w = pallet width d = pallet depth g = gap between adjacent lanes a = aisle width x = lane depth n = number of SKUs N_i = max storage demand by SKU i z_i = column height for SKU I
Key results
Assuming that the same lane depth is employed across all n SKUs, under floor storage, the average space consumed per pallet is minimized by a lane depth computed approximately through the following formula:
x_opt =
The optimal lane depth for any single SKU i, which is stackable z_i pallets high, is x_opt = [(a/2d)*(N_i /z_i)] Assuming that the same lane depth is employed across all n SKUs, under rack storage, the average space consumed per pallet is minimized by a lane depth computed approximately through the following formula:
x_opt =
[(a/2dn)*_i N_i ]