Stowage planning and pile problems
Peer Giemsch1
Universit at Karlsruhe (TH), Fakult at f ur Wirtschaftswissenschaften, Institut f ur Anwendungen des Operations Research, Kaiserstr. 12, D-76128 Karlsruhe, Germany, [email protected] Abstract. Stowage planning occurs frequently in logistics but is generally considered as a problem with one loading point and one unloading point. The stowage pattern can be seen as a generalization of a stack if access to the packed items is possible only from one direction. We will call this a pile of items. A well-known application of a pile of items are the bay plans of containerships, which consist of many parallel stacks of containers. The generation of stowage plans of such containerships becomes complicated due to the multiple loading und unloading points (here: ports) and the objective to minimize moved items at each point. In our presentation we want to introduce in the eld of stowage planning in terms of an application of discrete mathematics in operations research and present heuristics for some cases in order to stimulate discussion for advanced solution methods.
Stowage Planning
Cargo stowage is the way of arranging and allocating items in a transport unit in view of the most economic conveyance ([5]). The stowage planning has to consider one big object B , which can be a transport unit or some storage space. The cargo to be stowed consists of many small objects O = {o1 , . . . on }. In a general model the objects have beside of volumetric and gravimetric characteristics some other properties: Given orientations (this side up) Limited stackability Dierent builds Securing means and values
Usually there is only one loading point for the small objects, where the stowage takes place and one unloading point for clearing the big object. Though we want to focus on a new setting: Each small object has a loading point, where it waits to get stowed and an unloading point, where it will be discharged. This can be expressed through : O N and : O N with (o) (o) o O. The (O) are the loading points or departures and the (O) are the unloading points or destinations. The big object B travels from the rst loading point to the last unloading point and at every point loading and unloading of small objects can occur. Dependant on the dimensions of the objects and the nature of the transport
Peer Giemsch
unit there are limited possibilities of access to the stowed items. This can cause some items block the retrieval of others. This yields to our rst Denition 1. Object o1 O overstows object o2 O if (o1 ) > (o2 ) and o1 blocks o2 . Clearly the blocking condition has to be specied. Withal broad notions we can now make the central Denition 2. Stowage planning is the problem of packing all given small items at each loading point into a given big object and thereby minimizes the number of items overstowed.
Classication as a packing problem
We can classify stowage planning as a packing problem due to [6]: The dimensionality can be one, two or three. Kind of assortment is of type I, which means to use all objects and pack all items. Quantity measurement is discrete. Objects are of rectangular shape. The objective can be set to: Packing all items in the object at each loading point and avoiding unnecessary temporarily (re-)loadings. Latter means to minimize number of overstowed items. Obviously there is a trade-o between overstowage and volume utilization. Overstowage cannot only occur due to a given tour of the big object but also to other causes: The availability of the small objects can be limited and therefore they build a sequence with partial order. There are operational characteristics of the packing problem like multistage environment. There are some dynamics of allocation, which means a dynamic stowing of items with reallocation like in a warehouse. Additionally it is perhaps possible to change the sequence of loading points to obtain fewer overstows. For this aspect see [10].
Special cases of the problem
There are some special cases, we will discuss now.
Stowage planning and pile problems
3.1
Special cases in time
If (o) = 1, (o) = n o O, then we have a classical container loading problem in the respective dimension and there are no overstowed items. If (o) = n o O and no restriction on emerges then the stowage planning can be seen as if the items have an availability sequence or the transport unit collects the items along the loading points. There are no overstowed items but possible rearrangement costs. If (o) = 1 o O then all items are loaded at the same point and dropped along the tour in their destinations. There are no overstowed items if the stowage pattern at the loading point consists of guillotine cuts because then we can sort appropriately. O2 ... Ok If the small objects are fragmented in disjuct sets like O = O1 with no common loading and unloading points (Oi ) < (Oj ) i < j and further (o) = kj , (o) = lj o Oj then we have a sequence of classical container loading problems and there are no overstowed items. 3.2 Special cases in space
Since overstowage can only occur if objects block each other, we can look for special cases in space. If the transport unit is of a shape, that no two items can block each other, then no overstowage occurs. This can be due the fact, that there is one access direction and the pile depth of the items is one or the pile depth is greater than one but there are more than one access directions (see for instance Fig.1).
Fig. 1. Example of pile depth two
Another interesting case occurs when all items have a xed orientation, their width is more than half of the width of the transportation unit and there is one access point (see Fig.2). This case is mentioned in [9] and solved in [2]. We will call this the one stack overstowage problem (OSOP). In the multi-stack case all items are of the same size, with xed orientation and can only be arranged in stacks like in the OSOP. There is one access direction for every stack (see Fig.3). The corresponding decision problem is N P -complete due to [3] and its economic relevance is due to the fact that it is a simple version of the containership stowage problem ([7]).
Peer Giemsch
Fig. 2. One stack case
Fig. 3. multi-stack case
Piles
To handle the stowage planning problem, we have to nd a characterisation of the stowage pattern that allows us to identify blocked items. We restrict to the cases of orthognal items of three dimensions and one specied access direction. Obviously two items are blocked if they touch each other and accordingly have a rectangle perpendicularly to the access direction in common (cf.[11]). But an item can block the retrieval of an other item also if they dont share any area. This leads to a characterisation of stowage pattern as graphs. Denition 3 ([8]). A graph G = (V, A) is called a pile if it is nite, directed, without loops and cycles. We identify a stowage pattern with a pile. Thereby an item is represented through an node of the graph and there is an edge between two nodes if the corresponding two items touch each other vertically to the access direction. A item o is then called blocked if if there is an ingoing edge at node o. (See Fig. 4 for an example). In the case of the OSOP, the pile is a simple path.
1 3 1 2 4 5 7 6 8 7 8 5 6 4 2 3
Fig. 4. Left: stowage pattern, right: pile
Stowage planning and pile problems
And in the multi-stack case the pile consists of many components, which are simple paths.
5
5.1
Solution Approach
General 3D case
A heuristic solution approach for packing (3D-)boxes in a single container with one loading point and some unloading points is mentioned in [4]: Start from the nal destination and the corresponding unloading point max{ (o)} and pack the shipment Omax with respect of maximizing the space remaining for the rest. This is done by trying to pack walls while preserve container dimension in access-direction. Then iterate from last to nearest destination. The crucial part is the wall-building method. If there is enough space in access direction, then this heuristics doesnt produce any overstowed items. However if some items of dierent destinations have to be intermixed in a wall this cannot be assured any more. Another heuristics is to build towers of the items of each destination and try to place the towers descending on destination distances in the container. In general, every algorithm for container loading can be applied but has to be shifted to stow items with further destination in the rear part of the container. 5.2 Multi-stack case
In the multi-stack case with all items of equal size but multiple loading and unloading points the solution method of the OSOP mentioned in [2] can be sucessfully applied. The optimal solution of OSOP gives us a policy for each loading point i: We have to decide if we need to rearrange the stack at point i to bring the stack in order (ascending destinations) for the next k destinations. This depends on the items to be stowed at this point and further points. So if we assume now for the multi-stack case that each item assigned to a stack is loyal to this stack during its journey, then we can calculate after assigning all items to stacks independently for each stack via the OSOP method an optimal policy. If the items are not loyal we can calculate the best stack having some capacity left for some temporarily unloaded items with the OSOP method again. The OSOP method is crucial, so we will display it here: Let the departures be numbered 0, 1, . . . , m and the destinations numbered 1, 2 . . . , m + 1. If V(i,j ) = |{o O|(o) = i, (o) = j }| then we can calculate the number S (0, m + 1) of overstowing items in an optimal stowage plan for the OSOP recursively (see [1]): S (i, j ) =
i+1kj 1
min
{S (i, k ) + r(i, k, j ) + S (k, j )} i = 0, 1, . . . , m + 1 (1)
Peer Giemsch
with S (i, i + 1) = S (i, i + 2) = 0 and if Vi,j = 0 (i, j ), then
k1 m+1 i j 1
i = 0, 1, . . . , m + 1
(2)
r(i, k, j ) :=
q =i+1 l=k+1
V(q,l) +
p=0 n=k+1
V(p,n)
(3)
If at some point only loading and no unloading occurs we have to adjust the calculation of r(i, k, j ) but this is omitted here. The optimal rearrangement policy is gained in the recursion. We give a upper bound for the number of overstowing items, which is given by the following binary linear program. This is done to give an estimation for the performance of other possible heuristics for the multi-stack case Let |O| = n and given stacks with numbers k = 1, 2, . . . , K and capacity hk . min
i,j O (i)<(j )<(i)<(j )
yij
(4)
subject to
K
xik = 1
k=1 n K
i O
(5)
xik = n
i=1 k=1
(6) k, l = 1, . . . , max{ (o)} i, j, k yij {0, 1} (7) (8) (9)
xik hk
i{oO |l[(i), (i)]}
xik + xjk yij + 1 xik {0, 1}
(4) counts the number of items in the same stack which cause overstowage. (5) and (6) provide that all items are loaded. (7) provides that at each loading point no more item than the allowed stacking capacity is assingend and (8) connect the variables x and y . The variables meaning is: xik = 1 item i assigned to stack k 0 otherwise
and yij = 1 indicates, that item i and item j are assigned to the same stack, yij = 0 otherwise.
Stowage planning and pile problems
Further Research
The research of stowage planning in the context given above is at the very beginning and the most important questions are (1) how to classify the stowage planning problems more accurate, (2) how to modify known packing algorithmus to solve stowage planning, (3) can we get more information out of the possible piles of a given instance of small items and (4) how well do the proposed heuristics perform?
References
1. Aslidis, A.H. (1989) Combinatorial Algorithms for Stacking Problems. PhD thesis, Massachusetts Institute of Technology 2. Aslidis, A.H. (1990) Minimizing of overstowage in container ship operation. Operational Research 90, p.457-471 3. Avriel, M., Penn, M. and Shpirer, N. (2000) Container ship stowage problem complexity and connection to the coloring of circle graph. Discrete Applied Mathematics 103, p.271-279 4. Bischo, E.E. and Ratcli, M.S.W. (1995) Issues in the Development of Approaches to Container Loading. Omega 23, p.377-390 5. Branch, A.E. (1996) Elements of Shipping. Cheltenham: Nelson Thornes, 7.ed. 6. Dyckho, H. and Finke, U. (1992) Cutting and Packing in Produktion and Distribution. Heidelberg: Physica Verlag 7. Giemsch, P. and Jellinghaus, A. (2004) Optimization Models for the Containership Stowage Problem. appeared in: Operations Research Proceedings 2003 Selected Papers of the International Conference on Operations Research (OR 2003), 2.-5.Sept. 2003, Heidelberg, Editors: D.Ahr; R. Fahrion, M. Oswald, G. Reinelt; Berlin: Springer 8. K ammerer, L. (1997) Mathematische Modellierung und Behandlung von Stapelproblemen. Phdthesis, Bauhaus-Universit at Weimar 9. Ladany, S.P. and Mehrez, A. (1984) Optimal routing of a single vehicle with loading and unloading constraints. Transportation Planning and Technology 8, p.301-306 10. T urkay, A. and Emel, E. (2003) Vehicle Routing Problem with Packing Constraints. Presentation on the 5th Euro/Informs Joint International Meeting, July 06-10, Istanbul 11. Wottawa, M. (1996) Struktur und algorithmische Behandlung von praxisorientierten dreidimensionlalen Packungsproblemen, PhD thesis, MathematischNaturwissenschaftliche Fakult at der Universit at K oln