Abstract
Given the increasingly significant impact of an efficient product-location strategy on warehouses' performance from a service level and operational costs perspective, this paper presents a possible operations research-oriented solution to provide a tangible reduction of the overall required warehousing space, thereby translating the storage location assignment problem (SLAP) into a vertex colouring problem (VCP). Developing the topic of their previous work on the development of an effective multi-product slot-code optimization heuristic, the authors focused on finding a cost-effective way to solve the SLAP through a mathematical-optimization approach. The formulation validation on a real industrial case showed its high optimization potential, and benchmarking simulations displayed performances significantly close to the best theoretical case. Indeed, the optimized value results were definitively close to the SLAP lower bound calculated assuming a randomized storage policy which, distinct from the developed solution, must inevitably be supported by warehouse management system software. On the contrary, the proposed methodology relies upon a dedicated storage policy, which is easily implementable by companies of all sizes without the need for investing in expensive IT tools.
1. Introduction
According to the literature, 23% of logistics costs in the US, and 39% in Europe, are embodied by warehouse activities [1, 2]. Thus, with the aim of reducing this significant impact upon production companies, attention was paid to managing warehouses in a cost-effective way [3, 4, 5, 6, 7].
From a management perspective, warehouses' organizational phases are the most critical in determining an ideal layout configuration and an efficient material handling structure [8, 9, 10, 11]; however, these cost elements seem to be strictly related to the usage of proper item-tracing tools [12, 13, 14] on top of an appropriate product allocation [15, 16, 17, 18, 19].
Until its initial introduction in 1976 [20], the storage location assignment problem (SLAP) - concerning the storage location assignment policies of products within a warehouse - has embodied the critical issue in operations management and research, and over the last four decades many significant scientific contributions regarding warehouse optimization criteria have been developed [21, 22, 23, 24, 25, 26, 27, 28, 29]. According to what has been agreed upon in the literature in terms of proper methodologies to improve the effectiveness of the occupation of spaces and the reduction of material handling times, the dedicated storage policy – according to which each product is assigned to its own storage location (slot) – and the randomized policy – concerning a dynamic, rather than fixed, allocation of SKUs (stock keeping units) – have been the two main strategies [30, 31, 32, 33].
Indeed, from the evidence of a lack of a cost effective procedure for analysing the design and requirements of a warehouse to meet companies' operational needs through the most economical technologies [34, 35, 36, 37, 38], there also arises the need for combining the two aforementioned policies without using complex or expensive information systems. In recent decades, the substantial difficulty in reducing operational costs while granting ease of use and performance improvements led to an increase of ERPs' inventory modules' adoption in many small and medium enterprises: despite their expense, however, they did not seem to guarantee any competitiveness or cost benefits in the short- and medium-term [39, 40, 41, 42, 43, 44].
The aim of this paper is thus to develop and present a multiproduct-allocation model based on a dedicated storage policy that is able to grant high performances in terms of the minimization of storage space and material handling times – as reachable through a randomized storage policy – while preserving the ease of product tracing guaranteed by the permanent product-slot allocation typical of a dedicated storage policy.
2. Multiproduct-slot allocation and the “vertex colouring problem”
The two main variables on which every warehouse's performance is based are the space required for items' allocation and the time needed for their handling [45, 46]: space and time are obviously related to the selected storage policy. Without any loss of generality, it is possible to say that permanently assigning certain slots to each SKU ensures a notable ease in tracing items' locations: this procedure, combined with the opportunity of properly placing fast/slow mover products in specific warehouse areas also enables a reduction of material handling times [20, 47, 48, 49, 50]. Despite these incontrovertible advantages, however, a dedicated storage policy also implies wasted space in the case of seasonal sales. Hypothesizing that each slot can host just one SKU at a time and defining Mpt as the number of slots used by the generic item type p at time t, the overall number of slots MDED required to allocate all the products in the warehouse is (1):
Thus, the main aim of this storage policy is not to look for slot number minimization: indeed, the subsequent number of slots returned is usually reckoned as an upper bound.
On the contrary, in seeking storage space minimization, a randomized storage policy surely provides the best result by assigning any free slot to a generic SKU to be located [20, 51, 52, 53]. Hence, this number can be considered as a lower bound for any necessary slots and can be computed as follows (2):
The application of a randomized storage policy, though, unavoidably entails a suitable information system to trace each item's location in the warehouse: this is because the same slot may be assigned to diverse SKUs at different periods.
The idea behind this work is to join the benefits of the aforementioned policies while trying to avoid their weaknesses: the goal relies upon finding a way to gain the minimization of the overall storage space – thus of purchasing or rental warehouse costs – while reducing internal handling times – thus decreasing internal transportation and employees related costs. The strategy pursued consisted of developing a permanent assignment of several SKUs to each slot – upon the hypothesis of a single SKU at a time in each slot – while taking into account the fast/slow mover nature of items.
The efficiency of the suggested methodology involves the need to determine an effective procedure to define which products to assign to each slot: with this purpose, the vertex colouring problem approach (VCP) was reckoned to be an original way to model the problem. The VCP, traditionally described as an operations research problem in the geographical maps colouring background [54] focuses on finding the lowest possible number of needed colours to cover every node of a given graph without colouring two adjacent vertexes in the same way [55, 56, 57].
If E indicates the edges set of the graph under consideration, N indicates its set of vertices and C the set of available colours. Defining uj (j ε C) as a binary 0/1 variable equal to 1 if the colour cj is used and oij ((i, j) ε (N, C)) as a binary 0/1 variable equal to 1 if the vertex i receives the colour cj, then the standard integer programming formulation of the VCP [58, 59, 60, 61] results as follows:
Applications of the VCP in the literature are widespread, ranging from communication network design contexts [62, 63] to crew scheduling [64], the computation of derivative matrices [65], logic circuit design [66], robotics planning and scheduling [67], the sequencing of stamping operations [68], radio frequency identification systems design [69], satellite range scheduling [70], spectrum assignments in wireless communication systems [71], wavelength assignments in optical networks [72], and timetabling [73, 74, 75]. To the best knowledge of the authors, the absence of any detected connection between the VCP and the SLAP in the literature would lead to the belief that no one has yet tried to develop a procedure to find an efficient and cost effective solution for the warehouse management problem making use of VCP-solving methodologies, even considering the huge number of contributions that have been developed in recent years regarding this topic [76, 77, 78, 79, 80, 81, 82, 83].
The connection behind these two problems can be summarized as follows: if the VCP entails the minimization of the colours used to cover all the vertexes of a given graph, the SLAP relies upon minimizing the slots used to stock all the items within a warehouse. From this evidence, a solid link arises both between the vertexes of a graph and the SKUs of a warehouse, and between the colours of the graph and the slots of the warehouse. Moreover, it has to be underlined that the unfeasibility of concurrently assigning more SKUs to one slot in the same period can be modelled by the main VCP constraint, which avoids the assignment of an identical colour to two adjacent vertexes. In the end, from the formulation's objective perspective, the goal of identifying which slot may host each SKU – while minimizing the overall number of used slots – results in the purpose of detecting which colour is assigned to each vertex – while minimizing the overall number of used colours.
3. The proposed formulation
3.1 First stage: structuring input data
A warehouse inventory record for a given period, which can typically be extracted from historical data, is usually organized in matrix form [SKU; time]: its values represent how many slots a certain SKU needs in each time bucket (normally, one day).
With the aim of testing the developed formulation on a real industrial case, a warehouse of an Italian primary giftware producer was taken into account: in this specific case, the size of the products was relatively small when compared to each slot volume, and storage quantities were compatible with stocking each SKU in just one slot. This is an important assumption, which can nonetheless be considered valid for the great part of industrial cases. Given this hypothesis, the inventory level matrix values were turned into binary values so that each slot, in each period, could be either empty or used.
The second and simultaneous step consisted in assigning a weight θj to each slot j in order to define its distance from the warehouse I/O position; in the case of different input/output positions, a slot's weight may describe the Euclidian distance from the ideal connection between these two points. The main aim of this stage was to sort slots according to their accessibility in order to determine those suitable to host fast or slow moving SKUs in future steps.
3.2 Second stage: SKUs' incompatibility and slots' bounds
With the aim of an efficient slot-code assignment, a product incompatibility matrix is the next step to be performed to determine which SKUs cannot be assigned to the same slot. To this end, given each pair of SKUs, their inventory levels have to be compared for each period in the analysed period; if there is at least one period when the inventory levels of both SKUs are higher than zero, they have to be considered as incompatible.
Using the inventory level matrix, it is then possible both to determine the upper and lower bound on the number of needed slots to allocate all given items – through (1) and (2) – and to build the incompatibility graph which, indeed, usually represents the input data structure of a VCP: the vertexes embody SKUs, while edges that connect them show that SKUs are not compatible.
3.3 Third stage: formulation
The formulation presented below returns the final slot-product allocation and it is thus easy to determine both the overall number of slots utilized to store all the SKUs and which SKUs are matched to each slot: the solution in the output represents a permanent allocation, meaning that SKUs can always be located even without any warehouse management system (WMS). This result can then be compared with the upper and lower bound of the required slots computed through (1) and (2) in order to evaluate the amount of storage space saved.
E = set of incompatibilities (graph's edges) N = set of codes (graph's nodes) M = set of slots (colours assigned to nodes)
βik + βjk ≤ 1 ∀k ε M, ∀(i, j) ε E
βik ≤ yk ∀k ε M,∀i ε N
β
ik
ε {0,1}n*m yk ε {0,1}
m
The sum of the objective function expresses the total number of slots that have to be used to allocate n given codes.
Constraints 1) and 2) express the impossibility of introducing incompatible codes in the same slot: if a code i, incompatible with a code j, is assigned to a slot k, this slot cannot be assigned to code j as well. These constraints also bind the variable expressing whether a slot is occupied to be increased whenever at least one code is assigned to a slot: if a slot k is assigned to at least one code i or j, this slot will be occupied, so the variable yk will be incremented by one unit.
The constraint 3) expresses the need for all the codes to be assigned to just one slot. For each code i, the sum of the k slots to which it has to be assigned needs to be exactly equal to 1: in this way, each code will be allocated but will be exclusively assigned to one slot. Constraints 4) and 5) define the binary variables yk and βik.
4. Validation in an industrial case
The formulation validation was performed on the warehouse database of a primary Italian giftware manufacturing company, using the historical data of 700 SKUs' (codes) inventory levels through 254 working days (1 year). The warehouse was managed without any WMS, using a dedicated storage policy. The company had no interest in investing in a WMS but expressed the need to reduce the required storage space while keeping a dedicated storage approach. The evidence showed that 90% of the codes were moved less than five times per year, thus displaying a majority of slow moving products: the associated graph thus revealed an 89% density due to the high number of edges, with 90% of the codes belonging to the 18% highest degree codes, justifying the considerable difficulty in finding an efficient slot-code allocation using empirical strategies.
The final slot-code allocation was performed with AMPL, a free algebraic modelling language for linear and nonlinear optimization problems, using multiple resolution instances in increasing the number of items: each instance was then compared to the UB - computed through (1) - in order to quantify the percentage of space reduction gained.
The detected UB of the most complex case was clearly equal to the overall number of codes (700 slots); the lower bound computed through (2), whose value matches the formulation result, resulted in 532 slots, granting a 24% saving in the number of slots. It has to be noted, though, that this percentage increases to a 51% in considering the case with 200 nodes.
Moreover, and as shown in the figure below, it has to be underlined how the number of items assigned to each slot tends to decrease with the increase of the number of products taken into account: this is due to the increasing number of incompatibilities that the formulation has to face while considering a higher number of items.

Distribution of incompatibilities

Required slots comparison

Number of codes assigned to each slot in the 200 nodes case

Number of codes assigned to each slot in the 700 nodes case
5. Comparison with previous resolutions
Trying to approach the SLAP from a different perspective, and though using a VCP solving methodology, an alternative solution for the presented problem was developed in 2013 [84]. Analysing VCP-solving algorithms from the point of view of computation time, the largest first sequential (LF) was pointed out as being the quickest, even in dealing with high density graphs [85, 86, 87, 88], and was utilized to solve the considered industrial case because of the huge quantity of products that a warehouse may host. The LF algorithm sorts the graph's vertexes according to their decreasing degree, thus putting in the first position the vertex with the highest number of incident edges. In this way, the minimization of the overall number of used colours is pursued as the primary end: SKUs can be now analysed scrolling the sorting list and are progressively assigned to warehouse slots - which are sorted according to their increasing weight (i.e., the distance from the I/O point) - under a proper procedure. The test was carried out on a higher number of items, but with resizing the problem to compare it with the results obtained through the formulation proposed a perfect matching arose, thus demonstrating its rightness and accuracy.
6. Limitations of the study and future research
In this study, a significant hypothesis was assumed: the size of the products is relatively small when compared to each slot's volume, and storage quantities are compatible with stocking each SKU in just one slot. Although this supposition is common in several industrial contexts, it is not universally valid. Future studies should focus on removing this assumption and/or testing the developed formulation in different industrial cases, with companies dealing with goods with higher/lower seasonality.
7. Conclusions
The design of a warehouse, ensuring its optimum layout configuration and effective material handling system, is strictly related to an accurate and structured allocation of products. The main aim of the proposed formulation was to minimize the necessary storage space while determining a proper slot-code allocation to reduce handling times and distances. To this end, an innovative approach based on translating the storage location assignment problem into a vertex colouring problem, together with an original solving formulation, was developed. The proof in a real industrial case, together with a comparison with an alternative solving algorithm, showed the effectiveness of the formulation, depicting performances notably close to the best feasible case. Though using a dedicated storage policy approach, the outcomes obtained through the developed formulation resulted in being equal to the lower bound computed using a randomized policy which, distinct from the presented technique, should be unavoidably sustained by warehouse management system software. Thus, the proposed approach allows companies of all sizes to optimize their warehouse, reducing the required storage space to a minimum while adopting a permanent (i.e., dedicated) slot-code allocation without the need of purchasing expensive IT tools.
