ARTICLE IN PRESS
JID: EOR
[m5G;September 8, 2016;19:40]
European Journal of Operational Research 0 0 0 (2016) 1–15
Contents lists available at ScienceDirect
European Journal of Operational Research journal homepage: www.elsevier.com/locate/ejor
Innovative Applications of O.R.
A generalized classification scheme for crane scheduling with interference Nils Boysen a,∗, Dirk Briskorn b, Frank Meisel c a
Friedrich-Schiller-Universität Jena, Lehrstuhl für Operations Management, Carl-Zeiß-Straße 3, Jena D-07743, Germany Bergische Universität Wuppertal, Lehrstuhl für Produktion und Logistik, Rainer-Gruenter-Str. 21, Wuppertal D-42119, Germany c Christian-Albrechts-Universität Kiel, Lehrstuhl für Supply Chain Managment, Olshausenstr. 40, Kiel D-24098, Germany b
a r t i c l e
i n f o
Article history: Received 25 December 2014 Accepted 18 August 2016 Available online xxx Keywords: Crane scheduling Non-crossing constraints Classification Survey
a b s t r a c t Nowadays, many industries rely on cranes for efficiently executing storage and retrieval operations of goods. Areas of application are, for instance, container logistics in seaports and warehousing operations in automated storage and retrieval systems. Therefore, it is not astounding that plenty scientific papers on crane scheduling in many different yet closely related logistics settings have accumulated. In many of these problems, crane interference occurs. A prominent example is non-crossing constraints where cranes share a common pathway and cannot overtake each other. In order to structure this vast field of research, this paper provides a classification scheme for crane scheduling problems with crane interference. We apply this scheme to classify the existing literature, to determine the status-quo of complexity results, and to identify future research needs. © 2016 Elsevier B.V. All rights reserved.
1. Introduction The standardization of load carriers, e.g., EUR/EPAL-pallets or ISO freight containers, has considerably added to a strong decline in transportation costs and to a dramatic growth in transport volume. For instance, the number of ISO containers processed worldwide exceeded 540 million TEU (twenty feet equivalent unit) in 2010, see UNCTAD (2012). To efficiently handle such a huge amount of goods an automation of loading and unloading processes seems inevitable. Therefore, many distribution systems rely on cranes to enable efficient and reliable (un-)loading processes for transport vehicles as well as storage and retrieval operations. Perhaps the most impressing examples in this context are the huge quay cranes (QCs) for processing container vessels in modern ports. However, cranes are also inevitable in other important areas of application, e.g., in automated storage and retrieval systems (ASRS) of modern distribution centers or in production environments where heavy and bulky workpieces, e.g., steel coils, are transported. Given these manifold applications of cranes it is not astounding that crane scheduling received plenty attention among practitioners and researchers. Crane scheduling assigns storage and retrieval moves of goods to cranes and decides on their processing time
∗
Corresponding author. E-mail addresses:
[email protected] (N. Boysen), wuppertal.de (D. Briskorn),
[email protected] (F. Meisel).
briskorn@uni-
windows in order to achieve efficient transshipment processes. In this context, a widespread real-world phenomenon is that cranes share a common pathway, e.g., a same rail track, for their horizontal movement, so that they cannot overtake each other. This is reflected in crane scheduling models by so-called non-crossing constraints. Another kind of crane interference occurs, if cranes can principally cross each other, but only under special circumstances (e.g., lifted beam). The occurrence of crane interference distinguish crane scheduling from traditional machine scheduling, so that the former became a (comparatively) new and active field of research in the last decade. Especially the scheduling of QCs and yard cranes in container ports received manifold attention. Numerous papers have been published on this topic during the recent years. The up-to-date survey papers Bierwirth and Meisel (2010), Bierwirth and Meisel (2015), Carlo, Vis, and Roodbergen (2015), Carlo, Vis, and Roodbergen (2014) and Luo, Wu, Halldorsson, and Song (2011) summarize this research effort. These surveys also propose classification schemes for the addressed scheduling problems, but with a strong focus on attributes that are specific for crane scheduling in container terminals. These existing surveys and classification schemes question the justification of yet another survey paper. However, our paper has a broader focus on crane scheduling and does not exclusively treat the area of container ports. Instead, we try to highlight the similarities to other fields where closely related crane scheduling problems exist by introducing a general classification scheme. This way, the huge knowledge accumulated on crane scheduling in
http://dx.doi.org/10.1016/j.ejor.2016.08.041 0377-2217/© 2016 Elsevier B.V. All rights reserved.
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
JID: EOR 2
ARTICLE IN PRESS
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
Fig. 1. Problem of multiple crane scheduling applications.
container ports during the recent years might become transferable to these related areas more easily. Contrariwise, neglecting the similarities in manifold transportation, warehousing, and production settings bears the risk of identical (or at least closely related) crane scheduling problems being ‘reinvented’ and solved multiple times without an awareness for the previous research. Thus, there seems a need for some general view on crane scheduling with crane interference unifying the potential areas of application. This paper and the general classification scheme presented within are a first step into this direction. To highlight the risk of an uncoordinated advancement of research, we next present an example where the same crane scheduling problem P can be applied for coordinating (un-)loading processes in very different areas of applications: Problem P. Consider a one-dimensional storage yard subdivided into m slots. Depending on the number of containers (to be) stored, each slot i = 1, . . . , m is assigned a workload (or processing time) pi . Given c = 1, . . . , n cranes numbered according to their succession in the yard, all slots assigned to a crane are to be successively processed in a non-preemptive manner. The time it takes a crane to move between two slots is negligible. We seek a schedule of minimum makespan, which ensures that all slots are processed without any crossing of cranes. More formally, a schedule consists of a set of triples (i, c, Ci ) ⊂ each defining that processing slot i ∈ {1, . . . , m} by crane c ∈ {1, . . . , n} has completion time Ci ≥ 0. We say a schedule is feasible, if for each i = 1, . . . , m there is exactly one (i, c, Ci ) ∈ , that is each slot is executed exactly once, and for each pair of slots i and i , with i < i , (i, c, Ci ) ∈ , and (i , c , Ci ) ∈ the schedule meets one of the following requirements: •
•
Either c < c which means that non-crossing is guaranteed by the relative positioning of the cranes, or, If c ≥ c , we either have Ci − pi ≥ Ci or Ci − pi ≥ Ci which ensures non-crossing by separating the processing time windows of the two slots if c > c and ensures non-overlapping processing time windows for slots handled by the same crane if c = c .
Among all feasible schedules, we seek one schedule minimizing max(i,c,Ci )∈ {Ci }. Problem P can directly be applied for two important cranes scheduling problems, see Fig. 1. On the one hand, problem P is known as the quay crane scheduling problem (e.g., Zhu & Lim, 2006; Lee, Wang, & Miao, 2008a; Bierwirth & Meisel, 2010) for scheduling the (un-)loading processes of QCs serving a container ship at a port. Here, the slots represent bays of a ship. The workload is defined by the containers to be (un-)loaded per bay. As QCs share a special rail track for their horizontal movement along the quay, non-crossing of cranes needs to be ensured. Minimizing max(i,c,Ci )∈ {Ci } keeps the port stay time of the ship as short as possible. On the other hand, the very same problem P can be applied to schedule the unloading processes in rail terminals, where containers are to be exchanged between freight trains and trucks. Typ-
ically, a rail terminal is subdivided into a grid of rows (e.g., rail tracks, driving lanes for trucks, storage lanes of containers) and columns (e.g., number of standard railcars fitting in the yard) in order to identify the positions of containers and to assign parking positions to trucks next to their respective container (see Boysen & Fliedner, 2010). Thus, if this grid is applied to subdivide the rail yard such that each column (slot) is to be processed by one of the gantry cranes spanning the rail tracks, then problem P can directly be applied to minimize the processing time of a group of trains that are served simultaneously at the terminal. Given the manifold applications of crane scheduling problems, a general classification scheme for crane scheduling with interference constraints may help to coordinate the research effort of the community in a concerted manner. After defining the scope of this paper in Section 2, such a classification scheme analogously to the famous tuple-notation of Graham, Lawler, Lenstra, and Kan (1979) for machine scheduling is presented in Section 3. The scheme is used in Section 4 to classify the relevant literature in various fields of crane scheduling research. For each research paper, we define the tuple-notation, so that practitioners and researchers can quickly identify the previous research relevant to a respective problem. In Section 5, we identify future research needs. Section 6 concludes the paper. 2. Scope of survey A crane is a special industrial machinery for lifting materials at some start position, moving them vertically and/or horizontally, and lowering them at some target destination. Each lifting, movement, and lowering operation executed in direct succession on the same material (without remounting it) is denoted as a (crane or container) move throughout this paper. Traditionally, cranes have been designed for a sporadic lifting of heavy and bulky materials, e.g., in the construction industry, whereas modern distribution systems are designed for a mass processing of standardized items. The standardization effects that items can quickly be accessed by the hoisting device (without fixing some chains or wire ropes), so that moves in the mass transportation context are executed in quick repetition and, typically, last at most a few minutes. The standardized items to be moved by cranes can be ISO containers in seaports or rail-terminals, bins of stock-keeping-units (SKUs) in an ASRS, or workpieces, e.g., heavy steel coils lifted by overhead cranes, in a production environment. In this paper, these items are all referred to as containers. One confinement of this paper is to consider only such cranes that move along a fixed pathway. Such a unique horizontal pathway exists for the ASRS and the QCs discussed earlier in this paper but also for gantry cranes in container yards and rail-terminals as well as for industrial cranes in production environments, see Fig. 2a–e respectively. We exclude technical systems where cranes are placed at fixed locations, e.g., tower cranes, slewing pillar cranes, and deck cranes located on a ship. Also excluded are lifting
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
JID: EOR
ARTICLE IN PRESS
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
3
Fig. 2. Relevant crane types1 .
vehicles that move around freely like reach stackers and straddle carriers as crane interference does not play a role in these systems. The crane systems considered in this paper are further described as follows: •
•
•
ASRS: The cranes (also denoted as storage and retrieval machines) move on rails mounted to the floor and the ceiling of a distribution center in between two parallel racks for storing bins or small containers of stock-keeping units. For the vertical direction, each crane has one or multiple shuttles each having some fork or conveyor mechanism for storing containers in and retrieving them from a specific shelf of the rack. Horizontal travel speeds are typically about 3 meter/second compared to vertical travel speeds of about 0.75 meter/second (Tompkins, White, Bozer, & Tanchoco, 2003). Note that the vast majority of ASRSs apply only a single crane per aisle, so that, obviously, no crane interference occurs. These single crane systems are beyond the scope of our survey, so that we refer to the in-depth review papers provided by Roodbergen and Vis (2009), Boysen and Stephan (2016) instead. However, there also exist systems applying multiple cranes per aisle (Kung, Kobayashi, Higashi, & Ota, 2012; Kung, Kobayashi, Higashi, Sugi, & Ota, 2014). Only these systems are covered by this survey. Quay cranes: These cranes are used for (un-)loading container vessels in ports. QCs share some rail track for moving along the quay. The beam, the hoist and the spreader of a crane enable a vertical movement and the lifting and lowering of containers. The cranes exchange containers between vessels and the quay. The average processing time per container is about 2 minutes, so that modern QCs perform 22–30 moves per hour (Steenken, Voß, & Stahlbock, 2004). Gantry cranes (GCs) in container yards: Container yards serve an intermediate storage of containers. The containers are stored and retrieved between yard locations and transport vehicles by GCs. These cranes typically span 8–12 rows of containers and can stack containers 4–10 high. GCs process about 20 moves per hour (Steenken et al., 2004). For their horizontal movement along the yard these cranes either share a special rail track or they are rubber tired. In both cases, if multiple cranes operate in one block of a yard, non-crossing needs to be ensured.
•
•
Gantry cranes in rail-terminals: The cranes are used for exchanging containers among trains or for transshipping them between trains and trucks. Again, the cranes typically move on a separate rail track. The most widely used GCs are manually operated, have a maximum load capacity of 41 tonnes, process 20–25 containers per hour (Rotter, 2004), and are able to stack up to three containers (Ballis & Golias, 2002). Industrial cranes in production settings: The beam of industrial cranes typically rests on wheels that run on rails right under the ceiling (usually on the parallel side walls) of a factory, so that the cranes can move in horizontal direction. In vertical direction, the hoist can be moved across the width of the building in order to move heavy and/or bulky workpieces between (ground) storage, machines, and delivery vehicles (see Heinrichs and Moll, 1997 and Fig. 2). Such hoist scheduling problems also occur in electroplating lines, where multiple hoists move workpieces between a large number of chemical tanks (see Zhou & Li, 20 03; 20 09; Leung, Zhang, Yang, Mak, & Lam, 2004). Operating such systems involves complex interdependent moves through multiple production stages where precedence constraints, capacities of tanks, and given time lags between the stages play an important role. These aspects are very specific to hoist scheduling in electroplating and, thus, they are excluded from our survey as we put focus on logistics systems with items being stored and retrieved to and from storage areas. The interested reader can find a survey of research on hoist scheduling for electroplating (including the mentioned production specific aspects but omitting the logistics aspects covered in our study) in Manier and Bloch (2003).
In the mentioned applications, cranes share a common pathway for their horizontal movement, so that once multiple cranes are operating in parallel, crane interferences may occur. Three kinds of obstructions are relevant in the crane scheduling context: •
Cranes sharing a rail track or equally sized cranes spreading some container yard cannot pass each other, so that collisions
1 Each of the five pictures is published under the Creative Commons Attribution ShareAlike License. The authors of the pictures are a) LTW Intralogistics GmbH, b) Garitzko, c) Yuval Y., d) Frank Vincentz, e) Rvancopp
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
ARTICLE IN PRESS
JID: EOR 4
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
These papers address crane scheduling within their specific area of application. With this paper, we propose a fundamental classification scheme, which consolidates the relevant features of crane scheduling problems under non-crossing requirements but without being restricted to a certain field of application. 3. Classification scheme
Fig. 3. Cross-over cranes.
•
•
of cranes are to be avoided. In a crane scheduling model, this must be ensured by never allowing cranes changing their sequence of arrangement along the shared pathway over the complete planning horizon. In the literature, these obstructions are known as non-crossing constraints. Typically, cranes have a collision detection mechanism, which automatically stops them before they collide. However, to avoid automated emergency breaks and unproductive recovery times for the cranes, safety margins defining the minimum distance between any pair of cranes may be included in a scheduling model. Finally, a passing of cranes may be possible under specific circumstances. This is the case if differently sized cranes operate on parallel rail tracks in a yard. These systems are referred to as cross-over cranes, where the smaller crane can pass if the spreader of the larger GC is in a specific position (see Fig. 3). Such cross-over cranes are used for example in the CTA terminal of Hamburg-Altenwerder (Germany) (see Saanen & van Valkengoed, 2005; Kemme, 2012). A passing of cranes is also possible at so-called indented berths, where ships moor in a huge parking space for being served by QCs from two sides (see Boysen, Emde, & Fliedner, 2012). Here, a QC can lift its (unloaded) beam to let opposing cranes pass by Chen, Lee, and Cao (see 2011).
To avoid crane interferences, a decent planning of crane operations is required, so that researchers developed models and methods for automating this planning task. When modeling crane operations, different levels of aggregation can be applied. A detailed schedule captures each single container move. On a more aggregated level multiple moves are unified to a single job where a detailed sequencing of containers belonging to a same job is then not part of the scheduling problem. Thus, this paper defines a job as the smallest unit of crane operations captured in a scheduling model irrespective of whether it represents a single or multiple moves. Given this job definition, it is the aim of crane scheduling to assign jobs to cranes, to decide on their processing time windows, and to define the required crane movements, so that some objective is achieved. In summary, the scope of this paper is to cover those crane scheduling applications where multiple cranes process standardized containers in parallel and share a common pathway, so that interference constraints become relevant. There already exist review papers for specific crane scheduling applications covered in our study. For example, Bierwirth and Meisel (2010), 2015) and Carlo et al. (2014) provide detailed surveys and classification schemes for QC and GC scheduling problems, respectively. Steenken et al. (2004) as well as Stahlbock and Voß (2008) review the complete transportation chain in seaports including GC scheduling in container yards. Roodbergen and Vis (2009) survey the research on ASRS. Boysen, Fliedner, Jaehn, and Pesch (2012) treat the planning problems occurring in rail terminals.
Classifications of complex and versatile optimization problems have proved very successful to concisely identify and describe a specific optimization problem, so that the coordination of scientific efforts is eased considerably. The most widely accepted classification schemes basing on a so-called tuple-notation are dedicated to machine scheduling (Graham et al., 1979) and queuing systems (Kendall, 1953). Further tuple-notations have been provided for project scheduling (Brucker, Drexl, Möhring, Neumann, & Pesch, 1999), cutting and packing (Dyckhoff, 1990), and assembly line balancing (Boysen, Fliedner, & Scholl, 2007). In a tuplenotation respective objectives and operational characteristics are referenced by a symbolic notation, so that in spite of the multitude of possible properties of a planning task, a particular model can be briefly described by a tuple. In our classification scheme, any crane scheduling problem is described by three basic elements: the terminal layout (including the available cranes), the characteristics of container moves, and an objective to be followed. Accordingly, the presented classification will be based on those three elements which are noted as tuple [α |β |γ ], where:
α β γ
terminal layout, characteristics of container moves, objectives.
One major advantage of the tuple-notation is that any default value, represented by the symbol ◦, can be skipped when a tuple is specified. As all attribute values are chosen such that they are unique, it is not necessary to specify the attribute designators within the tuples. The attributes and attribute values are explained subsequently. 3.1. Layout The layout attributes α specify the appearance of the container stacks and cranes. It is represented by the four attributes α 1 to α 4 : Storage dimension α 1 ∈ {1Dλ , 2Dλ , 3Dλ }. This attribute defines the dimensionality of container storage in the yard and whether a random access of containers is possible (designator λ = ◦) or a removal may be obstructed by other boxes (λ = top).
α 1 = 1Dλ Storage positions of containers are arranged along a (one-dimensional) straight line. Applications with lined up containers are found, for instance, when a single freight train is (un-)loaded by multiple cranes. However, also yards with a more complex storage pattern are often modeled as if they were one-dimensional. One example is the QC scheduling problem P presented in Section 1, where all moves of a bay are unified to a single job, so that only the one-dimensional movement of cranes along the quay remains relevant. α 1 = 2Dλ In a two-dimensional yard, containers are either stored in rows and columns next to each other without any stacking, i.e., ground storage, or they are stacked in a wall of containers, i.e., in multiple stacks of containers next to each other. The former case exists in rail-terminals where containers are exchanged between
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
JID: EOR
ARTICLE IN PRESS
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
5
Fig. 4. Alternative locations of IO-points.
trucks and (single-storied) trains. The latter is found, for instance, in a rack within an ASRS. Denominator λ ∈ {◦, top} differentiates whether each storage position can be accessed at any time and independent of the other positions (λ = ◦) as is the case for the ASRSrack, or whether containers are stacked on top of each other (λ = top) where boxes located above must be removed to access a container. α 1 = 3Dλ Containers are arranged in a three-dimensional block consisting of columns, rows, and stacks of containers. Again, either a random access of any box is possible (λ = ◦) or stacks may require a removal of boxes stacked on top before a specific container is accessible (λ = top). Number of cranes α2 ∈ {2, 3, . . . , ◦}. The number of cranes operating a storage yard can either exactly be specified by some integer value, whenever a specific scheduling model or solution procedure is specially designed for the specified number of cranes, or may be an arbitrary number (α2 = ◦). In the latter case, the crane number is part of the input data of each problem instance and the respective scheduling model or solution procedure is able to handle a facultative number of cranes. Location of IO-points α 3 ∈ {front, ends, ◦λ}. This attribute specifies the positions of the IO-points (also known as depots or transfer point) in the storage area.
α3 = front There exists only a single depot, so that a single IOpoint resides at the front of the storage area, see Fig. 4a. Such a setting is very common for ASRS where storage and retrieval is executed via an accumulator conveyor at the frontend of the rack. α3 = ends Input and output points are separated and reside on opposite sides of the storage area, see Fig. 4b. Such a layout is often used in container yards of seaports, where containers are located in a right angle to the quay, so that the end facing the quay builds the interface to the vessels whereas the other end exchanges in- and outbound containers with trucks and/or trains. α3 = ◦λ Finally, handover of containers may also be executed all along the spread of the yard sideways to the shared pathway of cranes, see Figure 4c. This layout exists in container yards of seaports and rail terminals where trucks park directly next to the location of the respective container. However, such a layout is also realized in some ASRS, where cranes hand SKUs downwards (to the IO-points) where human pickers collect items on the ground level. In such a setting, a straightforward manner to avoid crane obstructions is to partition a yard into disjunct areas, so that each crane receives a fixed area it may not leave. This is a common advancement in rail terminals (see Boysen & Fliedner, 2010; Boysen, Fliedner, & Kellner, 2010) and can be specified by λ = area. In the default case, no fixed area exists
and cranes may freely move around the yard as long as non-crossing constraints are ensured (λ = ◦). Crane interferences α 4 ∈ {◦, sm, pass}. This attribute specifies the three kinds of potential obstructions whenever multiple cranes share a common pathway (see Section 2). Note that these obstructions may jointly occur, so that the properties can facultatively be combined in order to specify a particular crane system.
α4 = ◦ Only non-crossing constraints among cranes need to be considered.
α4 = sm Next to non-crossing constraints also safety margins are relevant, which define the minimum distance among cranes. α4 = pass Cranes can pass each other under specific conditions. For instance, opposing cranes of an indented berth can pass each other once their beam is lifted, whereas strict non-crossing constraints hold for cranes of the same side. Another example are the cross-over cranes illustrated in Fig. 3, where non-crossing needs to be respected if the system involves at least two cranes of identical size. 3.2. Move characteristics Other important aspects considerably influencing the structure of a crane scheduling problem are the characteristics of container moves and crane movement. They are classified by attribute set β , which contains nine different attributes (β 1 to β 9 ). Kind of container moves β 1 ∈ {◦λ, R, Mλ }. Here, we differentiate two fundamental kinds of moves, which are either IO-point related or reshuffle moves. IO-point related moves transfer containers from IO-points to the storage area (storage moves) and from the storage area to the IO-points (retrieval moves). Reshuffle moves locate containers from one storage location to another, such that the new storage locations facilitate the later retrieval. They occur between facultative positions in the storage area.
β1 = ◦λ Only IO-point related moves are executed, i.e., storage and/or retrieval moves. In the default case (λ = ◦), either a storage or a retrieval move is executed between two successive visits of a crane at the IO-point (referred to as cycle). Dual cycling, i.e. combining storage and retrieval moves within one cycle, is indicated by denominator λ = dual. It involves the additional decision to determine suited pairings of storage and retrieval moves that are combined in a dual cycle. β1 = R Only reshuffle moves are executed, so that containers are relocated between facultative stacking positions. Note that a reshuffle move, i.e., the purposeful relocation of some container to another storage position in order to ease its later retrieval, is to be distinguished from rehandling moves. The latter occur whenever containers are stored on top of another container to be currently retrieved. Then, the blocking containers have to be moved. Obviously, a reshuffle move
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
JID: EOR 6
ARTICLE IN PRESS
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
may require rehandling, whenever the container to be reshuffled is not directly accessible. β1 = Mλ A facultative mix of IO-point related and reshuffle moves is to be executed (with λ ∈ {◦, dual}). Preemption β 2 ∈ {◦, pmtn}. Preemption in the context of container cranes means that a move is interrupted by intermediately storing a container in an empty stacking position, executing another move, and later on returning (with the same or another crane) to the intermediate position for finally delivering the container to its target position.
β2 = ◦ No preemption is allowed, so that each container is completely processed in a single move without interruption. β2 = pmtn Preemption and, thus, intermediate storage at a free stacking position is allowed, so that a container’s handling process is split into two moves. Crane movement β 3 ∈ {◦, mvλ , cmvλ }. In the real-world applications focused in this survey, cranes move containers in up to three dimensions: We define the X-axis as the movement along the shared pathway, which requires a repositioning of the complete crane body. A movement along the Y-axis is conducted by the trolley, steeple cab, or shuttle along the beam and, finally, the Z-axis reflects vertical movements for accessing the containers, e.g., by lifting and lowering the spreader or hoist. In a model, however, these movements can be captured in different levels of detail.
β3 = ◦ Travel speed of all three crane components, i.e., body, trolley, and hoist, are considered infinite which effects that travel times are assumed negligible and ignored in the scheduling. This is typically applied in QC scheduling where the travel time for moving a crane body to another bay is considered negligible compared to the long processing time of each bay. β3 = mvλ A constant travel speed (time units per distance unit) is prescribed for the cranes. Superscript λ ∈ {X, Y, Z } specifies the crane components (movement directions) for which travel times are considered. For instance, β3 = mvX means that a model respects the travel speed of moving the crane body along the shared pathway, whereas the movement of trolley and hoist are neglected. Typically, each crane component is propelled by a separate engine, so that body, trolley, and hoist can be moved independently. Therefore, a selection of more than one superscript, e.g., β3 = mvXY , means that movements of body and trolley are modeled, where the travel time between two jobs is, then, determined by the maximum travel time in either dimension. β3 = cmvλ This attribute represents a more complex pattern of crane movements in all possible combinations of dimensions (λ ∈ {X, Y, Z }). In this category falls, for instance, modeling an acceleration phase, differentiating the travel speed when moving with or without a lifted container, and special dependencies between the three movement directions (e.g., a hoist may only be lifted or lowered with stationary body and trolley). Although the classification scheme could be extended to reflect these issues in higher detail, we decided to not do so, because the literature review will show that existing research does not apply such a detailed view on crane movements, yet. Moreover, most scheduling models only require a processing time for any job and the movement time between two successive jobs. How
exactly they have been calculated is not decisive from a scheduling perspective. Information availability β 4 ∈ {◦, dy}. With regard to the information availability static and dynamic environments need to be differentiated. Clearly, crane scheduling problems are often dynamic by nature as requests for additional moves arrive over time. However, planning is often facilitated by subdividing an ongoing process into discrete time intervals, so that jobs are collected over a time span and an optimized schedule is determined for a static job set. Thus, we differentiate:
β4 = ◦ A static set of jobs is considered. β4 = dy The set of jobs is dynamically updated once a new request arrives. Release dates β 5 ∈ {◦, rλ }. Release dates restrict the time span during which a job can be executed or a crane is available. With the additional superscript λ ∈ {i, c} it can be specified whether a specific container i (λ = i) or a crane c (λ = c) is not available before a specific release date.
β5 = ◦ All containers and cranes are available at the beginning of the planning, so that release dates are not relevant.
β5 = rλ Jobs i and/or cranes c are assigned specific release dates defining their execution or availability time, respectively. Deadline β 6 ∈ {◦, δ λ }. A deadline specifies the point in time a move is to be finished or a crane is not available anymore. Again, superscript λ ∈ {i, c} specifies whether containers (λ = i) or cranes (λ = c) are bound to deadlines. For example, deadlines for containers may result from fixed departure times of their designated vessels.
β6 = ◦ No strict deadlines need to be considered. β6 = δ λ Jobs i and/or cranes c are associated specific deadlines. For λ = i, a job must finish not later than the deadline. Note that this case is to be differentiated from a due date, which may be violated at a specific cost. Therefore, job-specific due dates are subject of the objective function (see the γ -field of the classification). Precedence relations β7 ∈ {◦, prec, chain, . . .}. Precedence relations among jobs restrict their processing sequence.
β7 = ◦ No precedence constraints between moves need to be considered and arbitrary job sequences are allowed.
β7 = prec Precedence constraints must be respected in the scheduling. For instance, in rail-terminals a railcar must first be unloaded before another container can be stacked on it. β7 = chain The most restrictive form of precedence constraints arises if a fixed processing sequence is given for all items. This is relevant, for instance, if SKUs arrive on some conveyor belt at an ASRS, where resorting the items on the conveyor is usually impossible. Note that other special forms of precedence relations known from machine and project scheduling, e.g., intree, outtree, tree (see Brucker et al., 1999), can also be specified right here, but seem of minor real-world relevance in our context.
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
ARTICLE IN PRESS
JID: EOR
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
Target position of containers β 8 ∈ {◦, open, restr}. Containers to be stored on some means of transportation or in the storage area may either have assigned a predefined storage location, they may be stored on any open location, or their storage location must be determined with respect to certain restrictions.
β8 = ◦ The target position of each container is predefined, so that no flexibility exists where to stack the item.
β8 = open A container can be stacked on any open location, so that the problem where to stack a container becomes part of the crane scheduling problem. β8 = restr A container can be stacked on an open location that meets additional requirements. These restrictions may result, for example, from the stability of a stack or from the need to supply reefers with electricity.
γ = − No objective function is applied whenever testing for feasibility, i.e., to meet deadlines, is considered. Some examples of the classification of different minimummakespan problems are provided below. •
•
•
Initial and final crane positions β 9 ∈ {◦, pos}. This attribute defines whether a crane starts and ends processing at prescribed positions or whether these positions can be chosen in the scheduling.
β9 = ◦ No initial and final crane positions are prescribed. Each crane starts (ends) its operations right at the start (target) position of the first (last) job. β9 = pos Initial and/or final positions are specified for all cranes as part of the input data. 3.3. Objectives The optimization will be guided by some objective, which evaluates solutions. In crane scheduling, the traditional objec˙ tives from machine scheduling (see, e.g., Błazewicz, Ecker, Pesch, Schmidt, & We¸ glarz, 2007) such as makespan minimization are also very common. We consider here the following objectives γ ∈ {C max , (wλ )Cλ , Lmax (wλ )Tλ , (wλ )Uλ , , −}. Multi-objective λ , problems involve a selection of these attributes. The additional index λ ∈ {i, c, j} specifies whether the objective refers to jobs (λ = i), cranes (λ = c), or transportation devices (λ = j).
γ = C max The schedule length or makespan is reached at
γ=
(wλ )Cλ
γ = Lmax λ
γ=
γ=
(wλ )Tλ
(wλ )Uλ
γ =
the point in time the last job of a static set is finally processed. This objective is especially suited to rapidly execute a given set of container moves, so that following requests can be processed and transportation devices, e.g., vessels or trains, may leave the terminal as soon as possible. The (weighted) completion time Cλ is the time a container i, crane c, or transportation device j is finally processed or finished all its assigned operations, respectively. The maximum lateness (Lmax λ = max{Cλ − dλ }, where dλ is the due date of the specific container i, crane c, or transportation device j, is a suitable objective, whenever small delays are acceptable and larger delays notably impact succeeding process steps. If already smaller delays influence succeeding process steps, it might be better to minimize the (weighted) tardiness of a job i, crane c, or transportation device j, which amounts to: Tλ = max{Cλ − dλ ; 0}. Furthermore, each delay can be harmful irrespective of its magnitude. In this case, the (weighted) number of tardy jobs i, cranes c, or transportation devices j can be minimized, where Uλ = 1, if Cλ > dλ . Other objective not classified.
7
The crane scheduling problem P from Section 1 is represented by [1D||Cmax ]. Consider two equally sized GCs operating in a container yard of a seaport. The cranes execute storage and retrieval moves to and from the seaside and the landside of the yard. All containers are available at the IO-points at the begin of the planning horizon. Stacking of containers and crane movement times are neglected. The resulting crane scheduling problem is represented by [2D, ends||Cmax ]. The scheduling of GCs in a rail-road terminal where containers are exchanged between trains and trucks with different arrival times and crane bodies and trolleys moving at constant speed is classified as [2D|mvXY , ri |Cmax ].
4. Literature classification In this section, we apply the classification scheme to the existing research on crane scheduling under non-crossing constraints. For this purpose, we classify the crane scheduling problems treated by those papers published in scientific journals we could identify after a thorough database search. For all these papers we additionally denote the field of application, where we differentiate the five areas defined in Section 2 plus the case ‘Misc’ representing some general crane scheduling approach, and specify the solution method contributed by a paper. These results are listed in Table 1. A detailed analysis of the existing literature is provided in the next section, when we discuss future research needs. However, two interesting findings can be gained from the bar charts of Fig. 5. First, Fig.e 5a reveals that crane scheduling with interference is a very active and up-to-date field of research with more than two-thirds of papers being published in 2010 or afterwards. Furthermore, Fig. 5b shows that container ports are the main driver for crane scheduling research with non-crossing constraints. More than 75% of all papers are dedicated either to QC scheduling (Quay) or to GC scheduling in container yards (Yard). The other fields are less frequently covered. Three papers treat the GC scheduling in rail yards (Rail), six papers address cranes in production environments (Prod) and another six in ASRS. Only three procedures take a generalized perspective (Misc) on crane scheduling. As, nonetheless, the similarities between the crane scheduling problems is great (we will further discuss these similarities in Section 5.4) this is another indicator for the demand for unified crane scheduling research. 5. Future research needs Surveying the existing research with the help of our classification scheme reveals the yet neglected crane scheduling settings. These research gaps are elaborated in Section 5.1. Two aspects require a deeper debate. One issue is that the vast majority of papers considerably reduces the problem complexity by treating real-world problems as one-dimensional storage yards (α1 = 1D) and by neglecting crane movements (β3 = ◦). In Section 5.2, we therefore address the question whether such relaxations are suitable choices for many applications or just a shortcoming of existent research. Another issue is a general lack of complexity results. Only very few papers provide complexity results, so that Section 5.3 defines the research needs in this direction. Finally, we discuss the overlap between different crane scheduling applications and the potential of transferring results from one area to another in Section 5.4.
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
JID: EOR 8
ARTICLE IN PRESS
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
Table 1 Overview on the crane scheduling literature. Publication Aron, Genc-Kaya, Harjunkoski, Hoda, and Hooker (2011) Bierwirth and Meisel (2009) Boysen and Fliedner (2010) Boysen et al. (2010) Boysen et al. (2012) Boysen, Briskorn, and Emde (2015) Briskorn and Angeloudis (2016) Briskorn and Angeloudis (2016) Carlo and Vis (2012) Carlo and Martínez-Acevedo (2015) Chen et al. (2011) Chen, Lee, and Goh (2014) Choo, Klabjan, and Simchi-Levi (2010) Choe, Park, Ok, and Ryu (2007) Choe, Yang, and Ryu (2012) Chung and Choy (2012) Chung and Chan (2013) Diabat and Theodorou (2014) Dell, Royset, and Zyngirdis (2009) Dohn and Clausen (2010) Dorndorf and Schneider (2010) Emde and Boysen (2014) Emde and Boysen (2014) Erdog˘ an, Battarra, and Laporte (2014) Expósito-Izquierdo, González-Velarde, Melián-Batista, and Moreno-Vega (2013) Fu, Diabat, and Tsai (2014) Gharehgozli, Laporte, Yu, and de Koster (2015) Ge, Wang, Jin, Ren, and Gao (2012) Gellert and König (2011) Guan, Yang, and Zhou (2013) Guo, Cheng, and Wang (2014) Hakam, Solvang, and Hammervoll (2012) Hino et al. (2009) Javanshir and Ganji (2010) Kaveshgar, Huynh, and Rahimian (2012) Kellner and Boysen (2015) Kim and Park (2004) Klaws et al. (2007) Kung et al. (2012) Kung et al. (2014) Lee and Chen (2010) Lee and Wang (2010a) Lee and Wang (2010b) Lee et al. (2008a) Lee, Wang, and Miao (2008b) Lee, Chen, and Cao (2011) Legato and Trunfio (2014) Legato, Trunfio, and Meisel (2012) Li, Wu, Petering, Goh, and de Souza (2009) Li et al. (2012) Lieberman and Turksen (1981) Lieberman and Turksen (1982) Lim, Rodrigues, Xiao, and Zhu (2004) Lim et al. (2007) Liu, Wan, and Wang (2006) Lu, Han, and Xi (2011) Lu, Han, Xi, and Erera (2012) Mak and Sun (2009) Meisel (2011) Meisel and Bierwirth (2013) Moccia, Cordeau, Gaudioso, and Laporte (2006) Monaco and Sammarra (2011) Ng (2005) Ng and Mak (2006) Nguyen, Zhang, Johnston, and Chen Tan (2013) Park et al. (2010) Peterson, Harjunkoski, Hoda, and Hooker (2014) Rodriguez-Molins, Salido, and Barber (2014) Sammarra, Cordeau, Laporte, and Monaco (2007) Song, Cherrett, and Guan (2012) Speer et al. (2011) Stahlbock and Voß (2010) Tang, Zhao, and Liu (2014)
Notation
Field
[2D, 2, ends, sm|M, mvXY , pos, r i | w j T j ] [1D, sm|mvX , rc , prec, pos|Cmax ] [1D, area||Cmax ] [1D, area||Cmax ] [1D, area, pass||Cmax ] [1D, 2, ends|mvX |Cmax ] [1D, 2, ends|M, mvX , chains|Cmax ] [1D, 2, ends, pass|M, mvX , chains|Cmax ] [1D, 2, front|M, mvX , chains|Cmax ] [1D, 2, ends, sm|dual, mvX , pmtn|Cmax ] [1D, sm, pass|mvX , prec, pos|Cmax ] [1D, sm|mvX , rc , δ c , prec, pos|Cmax ] [1D, sm|mvX , rc , prec, pos|Cmax ] [3Dtop , 2, ends|M, mvX , dy| Tj ] [3Dtop , 2, ends|M, mvX , dy| Tj , Cmax ] [1D, sm|mvX , rc , prec, pos|Cmax , Cc ] [1D, sm|mvX , prec, pos|Cmax ] [1D||Cmax ] [3Dtop , 2, ends, sm|M, mvX , dy, prec|] [1D, 2, ends, sm|M, mvX , pos, ri |] [1D, 3, ends, sm,pass|mvX , dy, r i |, wi Ti ] [1D, 2, front|mvX |Cmax ] [1D, 2, front|mvX , chain|Cmax ] [1D, 2, ends|mvX |Cmax ] [1D, sm|mvX , rc , prec, pos|Cmax ] [1D|| wiCi ] [3Dtop , 2, ends, sm|dual, mvXYZ , prec, open|Cmax ] [1D, 2, ends|M, mvX , pos|Cmax ] [1D|R, mvX , pos|Cmax ] [1D|mvX , pos|Cmax ] [1D, sm|mvX , rc , prec, pos|Cmax ] [1D, 2, sm||Cmax ] [2D, 2, ends, pass|M, cmvXY , chain, pos|−] [1D||Cmax ] [1D, sm|mvX , rc , prec, pos|Cmax , Cc ] [2D, pass|mvXY |Cmax ] [1D, sm|mvX , rc , prec, pos|Cmax , Cc ] [3Dtop , 3, sm|mxXY , chain|Cmax ] [2D, 2, ends, pass|M, cmvXY , chain, pos|−] [1D|M, mvX , chain|Cmax ] [1D||Cmax ] [1D|| wiCi ] [1D||Cmax ] [1D||Cmax ] [1D|| wiCi ] [1D, sm, pass||Cmax ] [1D, sm|mvX , rc , prec, pos|Cmax ] [1D, sm|mvX , rc , δ c , prec, pos|Cmax ] [1D, sm|dual, mvX , ri | Ti , ] [1D, sm|mvX | Ti , ] [1D|ri |Cmax ] [1D, 2, front|R|Cmax ] [1D, sm|dy|] [1D||Cmax ] [1D, sm|mvX |Cmax ] [1D|mvX |Cmax ] [1D, sm|mvX , prec|Cmax ] [1D|mvX , ri , δ i |Cmax ] [1D, sm|mvX , rc , δ c , prec, pos|Cmax ] [1D, sm|mvX , rc , δ c , prec, pos|Cmax ] [1D, sm|mvX , rc , prec, pos|Cmax , Cc ] [1D, area, sm|mvX , rc , δ c , prec, pos|Cmax , Tc ] [1D|mvX , ri | Ci ] [1D|mvX , prec|Cmax ] [1D, sm|mvX , rc , prec, pos|Cmax ] [1D, 2, ends|M, mvX , ri , prec| Tj ] [2D, ends, sm|M, mvXY , pos, r i | w j T j ] [1D, sm|mvX |Cmax ] [1D, sm|mvX , rc , prec, pos|Cmax , Cc ] [1D, sm|mvX , rc , prec, pos|Cmax , Cc ] [1D, 2, ends|M, cmvXYZ , ri , prec| Ti , Ci , Cmax ] [3D, 2, ends, pass|cmvXYZ , ri , prec|] [1D||Cmax ]
Prod Quay Rail Rail Quay ASRS Yard Yard ASRS Yard Quay Quay Quay Yard Yard Quay Quay Quay Yard Prod Yard Misc Misc ASRS Quay Quay Yard Prod Misc Quay Quay Quay ASRS Yard Quay Rail Quay Yard ASRS ASRS Quay Quay Quay Quay Quay Quay Quay Quay Yard Yard Prod Prod Quay Quay Quay Quay Quay Yard Quay Quay Quay Quay Yard Quay Quay Yard Prod Quay Quay Quay Yard Yard Quay
Method∗ DP BBH DP DP DP DEC, DP DP DP H B&B, H H, TS MILP BP LS GA GA GA GA DEC H DEC GA DP BB, AA GA GA LNS H H DPH GEO GA H GA GA SA BB,GRASP SIM H H AA AA AA GA GA TS BBH BBH MILP H H GR DP,TS,SWO BB, SA MILP H H GA, TS BBH BBH, H BC TS DEC DP GA H BB,BBH H TS MILP BB SA PSO
(continued on next page)
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
JID: EOR
ARTICLE IN PRESS
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
9
Table 1 (continued) Publication
Notation
Tavakkoli-Moghaddam, Makui, Salahi, Bazzazi, and Taheri (2009) Unsal and Oguz (2013) Vis and Carlo (2010) Wang and Kim (2011) Wu, Li, Petering, Goh, and Souza (2015) Zeng, Yang, and Hu (2011) Zhang, Khammuang, and Wirth (2008) Zhou and Wu (2009) Zhu and Lim (2006)
[1D, sm|mv , r , prec, pos| wc Cc , ] [1D, sm|mvX , rc , δ c , prec|Cmax ] [1D, 2, ends, pass|mvX , pos|Cmax ] [1D, sm|mvX , rc , prec, pos|Cmax , Cc , ] [1D, sm|mvX | Ti , ] [1D|mvX | Ti , ] [1D|dy|Cmax ] [1D, 2, ends, sm|mvX , pmtn| Ui ] [1D||Cmax ] X
c
Field
Method∗
Quay Quay Yard Quay Yard Quay Quay Yard Quay
GA CP SA GRASP H TS AA H BB, SA
∗ AA - Approximation algorithm, BB - Branch-and-Bound, BBH - Branch-and-Bound based heuristic, BC - Branch-and-Cut, BP - Branch-and-Price, CP - Constraint programming, DEC - Decomposition, DP - Dynamic programming, DPH - Dynamic programming heuristic, GA - Genetic algorithm/Evolutionary algorithm, GEO - Generalized extremal optimization, GR - Graph approach GRASP - Greedy randomized adaptive search, H - Heuristics (start heuristics, priority rules, local search etc.), LNS - Large neighborhood search, MILP - Standard solver, PSO - Particle swarm optimization, SA - Simulated annealing, SIM - Simulation, SWO - Squeaky wheel optimization, TS Tabu search.
Fig. 5. Statistical data on the research per year and field.
5.1. The neglected problem settings This section identifies future research needs by iterating through those attributes of our classification that received only little attention in the existing literature. Regarding attribute α 3 , the location of IO-points, the vast majority of papers treats a handover organized sideways to the pathway of cranes (α3 = ◦), as is of relevance in applications like QC scheduling. However, in many container yards and for the majority of ASRS, IO-points are located at the front (α3 = front) or at both ends (α3 = ends) of the storage area. Interestingly, noncrossing turns out even more challenging here, because fulfilling jobs in these settings requires that cranes move along the shared pathway. Thus, future research should intensify the work on the non-sideways cases. Further research may also be inspired by alternative IO-point locations arising from novel applications and innovative layouts: •
•
•
The flexibility of storage systems may be enhanced by a combined access at the frontend and sideways of a storage area. There already exist reference implementations of handling systems with such a combined accessibility (e.g., ZPMC, 2013). Also, some automated replenishment systems receive their input from the front, whereas the output is handed out sideways to a lower level where workers process pick orders, see Kim, Heragu, Graves, and Onge (2003). Other applications may require multiple IO-points along more complex crane paths. For instance, Wen, Eks¸ iog˘ lu, Greenwood, and Zhang (2010) report on a complex path network in a shipbuilding environment, where cranes transport bulky subcomponents between welding machines and different IO-points under a non-crossing constraint. The IO-point may be located in the middle of the storage area. Such an application is found in steel production where large
plates are retrieved by cranes and handed over to a central conveyor located in the middle of the storage area. However, the problem has only be considered for a single crane so far, see Tang and Ren (2010). Only very few researchers incorporate a restricted passing of cranes (α4 = pass) as is of relevance for cross-over cranes and QCs at an indented berth. The few existing approaches treat only very specific settings. For example, the approaches of Briskorn and Angeloudis (2016) and Dorndorf and Schneider (2010) are tailored for one small GC spanned by one large GC and for exactly two small GCs spanned by one large GC, respectively. However, there is a special need for generalized approaches, which can handle any combination of small and large cranes. Such an approach could then be used to systematically explore the performance of different crane partitions among both sets of cranes. For instance, it is an interesting question, whether or not a given number of cranes should be equally partitioned among both crane sizes in order to maximize the performance of the system. Dual cycles (β1 = dual), i.e., the combination of a storage move and a retrieval move within one crane cycle, proved very successful in ASRS and QC scheduling, see Han, McGinnis, Shieh, and White (1987) and Meisel and Wichmann (2010), respectively. However these studies consider only a single crane. Thus, a systematic investigation of dual cycles for multiple cranes under non-crossing constraints is yet missing. A related research question is whether a yard truck delivering a container to a yard should wait for being reloaded instantaneously with an outbound container or whether it should revisit later on, so that inbound and outbound operations do not overlap. Cooperation of cranes in terms of sharing the work of a container move by means of preemption appears very promising in case of a non-sideways handover (α3 = front or α3 = ends). Here, repositioning a container by one crane into the direction of the IO-
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
ARTICLE IN PRESS
JID: EOR 10
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
point and then letting another crane finish the move could lead to a much better balance of the workload. So far, only Zhou and Wu (2009) considered a problem ([1D, 2, ends, sm|mvX , pmtn| Ui ]) with this feature. In their research, it is presupposed that all containers are moved across the complete storage yard from the input point at one side via an interim stay for handover to the output point at the other side of the yard. However, with typical dwell times of containers in yards being several days (Steenken et al., 2004, p. 22), such a close coupling of storage and retrieval requires an inappropriately long planning horizon. Thus, future research should rather tackle this problem for sets of storage and/or retrieval moves with fixed initial/final positions in the yard. The vast majority of approaches considers a static set of jobs (β4 = ◦). Clearly, the real-world is dynamic by nature, so that future research should intensify the work on a dynamic arrival of new requests (β4 = dy). Static approaches may be a starting point of this research direction by executing them repeatedly on a rolling planning horizon. However, a systematic evaluation of such approaches compared to simple myopic choices or to a sophisticated online scheduling is yet missing. Another source of uncertainty are temporary crane unavailabilities either caused by crane failures or due to maintenance activities. Except for some very rare approaches (e.g. Speer, John, & Fischer, 2011) these aspects have not been considered yet. Existing research predominantly assumes that the choice where to stack a container has already been made prior to crane scheduling (β8 = ◦). While decomposing decisions is often a good choice when tackling a complex problem, integrating the choice of target locations within crane scheduling promises much more efficient crane operations. Therefore, research on cases β8 = open and β8 = area is required to evaluate the potential gains and to weigh them against the increasing planning complexity. The objective considered in the vast majority of research papers is the makespan (γ = C max ). However, a systematic empirical survey on the dominant objectives pursued in practice is yet missing. Based on such empirical findings, the future research on decision support could better be tailored according to the practitioners’ specific needs.
5.2. Choosing the right level of aggregation A specific crane scheduling application can be modeled in different levels of detail. The highest level of detail is chosen whenever each single container move constitutes a unique job and crane positions are continuously updated during any time period of the planning horizon. In contrast, a high level of aggregation is obtained if multiple container moves are merged into a single nonpreemptive job, as is often done in QC scheduling. Our classification scheme is mainly intended to classify the mathematical models of crane scheduling. In a model, it is actually insubstantial and typically not even identifiable whether a job represents a single container move or multiple unified moves, which is why the level of aggregation is not reflected in our classification scheme. However, from the practitioner’s point of view choosing the right level of aggregation and, thus, the proper solution approach for his/her specific crane scheduling problem is clearly an important issue. On the one hand, a high level of aggregation eases the planning, because fewer aspects of the real-world problem need to be captured, which in turn reduces the effort for gathering data and finding a solution. On the other hand, a higher level of aggregation bears the risk of abstracting from important real-world aspects, so that the model may yield a schedule that turns out as highly suboptimal or even infeasible when being executed. Thus, the proper level of aggregation needs to be identified for any practical application. This section is dedicated to this choice in the crane scheduling
Fig. 6. Levels of detail in crane scheduling.
context with respect to three main aspects: time, jobs, and crane movement (see Fig. 6). In what detail time is to be integrated into a crane scheduling model mainly depends on the frequency required for checking the positions of cranes and their non-crossing. (i) The highest level of time aggregation is chosen, when subdividing a container yard with sideway IO-points into separate and disjunct crane areas (α3 = ◦λ with λ = area). In this case, each area is operated uniquely by one crane, which directly ensures noncrossing and, thus, time does not need to be considered at all. Since all container moves within an area are assigned to one crane, there is also an aggregation of jobs involved in this approach. The planning problem is then to decide on the size of each area, i.e. on the partitioning of the storage area, such that the maximum workload among all cranes is minimized. This approach is applied among others by Boysen and Fliedner (2010) and Boysen et al. (2010) to rail terminals and by Steenken, Winter, and Zimmermann (2001) to QC scheduling. The resulting partition problem is easy to solve (in polynomial time) by dynamic programming. For each area, there remains a simple one-crane scheduling problem, which is often solved manually by the crane operator. This fixed-area policy is applied best in a static environment (β4 = ◦), where cranes can steadily operate from one border of their assigned area to the other. The policy likely becomes inefficient if cranes have to erratically bustle around due to varying job release dates (β5 = r i ), deadlines (β6 = δ i ), or newly arriving requests (β4 = dy). It is also known that this policy performs weak if the distribution of the workload in the yard does not allow for a well balanced partitioning, see Meisel and Bierwirth (2011). (ii) If crane movement is not restricted to certain areas, the location of IO-points determines how often crane positions must be checked. If the handover of containers is arranged sideways (α3 = ◦), a crane remains in the same slot during the complete processing time window of a job. Cranes move only if consecutive jobs are located at different slots. This reduces the points in time at which non-crossing is to be checked to the start and end points of jobs, which allows modeling time by continuous variables defining the start (or end) times of all jobs. (iii) IO-points located at the front (α3 = front) or at both ends (α3 = ends) of the storage area induce that a crane successively moves from the start position of a container to its end position during job execution. Moreover, this movement needs not even to happen on a straight way from start to end, but a crane may also give way for another crane by an evasion move. Thus, the crane positions change continuously and the threat of non-crossing exists at any time. To capture this, crane positions are typically modeled by time-discrete variables defining whether or not a specific crane is located at a specific slot at a certain time. Given these bi-
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
JID: EOR
ARTICLE IN PRESS
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
nary variables, the non-crossing of cranes can be ensured in any time unit over the complete planning horizon. Another aspect of aggregation (which was partly addressed in the previous discussion too) is the set of jobs that are to be planned in a crane scheduling problem. (i) In an aggregated view, multiple container moves are unified to a single non-preemptive job. For these unified jobs a crane schedule under non-crossing constraints is to be determined. The processing time of such a job is obtained by solving a sequencing problem for all involved containers (considering precedence constraints, relocation of blocking containers, etc.). Clearly, unifying moves and ruling out job preemption reduces scheduling flexibility, so that the obtained schedules might be less efficient compared to schedules for disaggregated jobs. This can be partly relieved by unifying only such moves that are located in direct vicinity and that have equal or even no release dates and deadlines. Furthermore, an aggregated view seems especially applicable if reshuffles are not that important, i.e. if either stacking is rarely applied (like in rail-terminals) or if all containers are jointly removed (unloading a ship). For the area of QC scheduling, issues of job aggregation and the generation of corresponding test instances are investigated by Meisel and Bierwirth (2011). (ii) Clearly, dynamically arriving requests (β4 = dy), varying release dates (β5 = r i ), and deadlines (β6 = δ i ) can only be covered in a disaggregated view, where each container move constitutes an individual job. Since the disaggregated view involves a much larger number of jobs (e.g., the bay of a huge container vessel may contain hundreds of containers), it needs to be ensured that the potential increase of plan quality, i.e., the reduced model gap to the real-world problem, is not countervailed by an increased heuristic gap, which seems inevitable if the larger input data necessitates the application of a weaker but faster heuristic. Another aspect in the context of aggregating jobs is how to deal with reshuffle moves for accessing blocked containers. One alternative (a) is to simply add the time required for reshuffles to the processing time of the container to be actually accessed. A less aggregated alternative (b) is to define reshuffles as separate jobs constituting their own processing time (e.g., see Park, Choe, Ok, & Ryu, 2010). These reshuffle moves are, then, related to the actual container move by precedence constraints (β7 = prec). This approach is more flexible, since a move and its associated reshuffles need not be executed in direct succession and by the same crane. But, again, this feature effects an even larger number of jobs. Still, both approaches rely on the assumption that there is plenty open storage space, so that containers can be relocated to other stacks where they do not obstruct the retrieval of other boxes. If this assumption does not hold, relocating containers to other stacks enlarges the blockage of container already stored their, and, thus, the processing times for alternative (a) cannot be calculated upfront as they depend on the processing sequence of jobs. Even sequencedepended setup times cannot avoid this issue, because additional blockage can arise from jobs that are not processed in direct succession and even from jobs executed by different cranes. Alternative (b) also fails in this context, because different job sequences require an introduction of different reshuffle moves, which again cannot be calculated prior to the planning. Thus, there is a need for future research in this direction. This requires that yard layouts are modeled in all three dimensions (α1 = 3Dtop ) which is almost inexistent in the surveyed literature. Mostly researchers addressing such issues either consider just a single crane, e.g., Kim and Hong (2006), Tang and Ren (2010), Caserta, Voß, and Sniedovich (2011), Caserta, Schwarze, and Voß (2012), Tang, Zhao, and Liu (2012), Bortfeldt and Forster (2012), Forster and Bortfeldt (2012), or they propose merely very basic priority rules, e.g., Klaws, Stahlbock, and Voß (2007).
11
Finally, also the movement of cranes can be modeled in different levels of detail. (i) Most existing approaches completely abstract from the crane movement (β3 = ◦). For instance, in the quay crane scheduling problem P of Section 1 all container moves of a bay are unified to a single job, so that no movement time of the trolley or the hoist is modeled. It is rather assumed that these movement times are contained in the processing time of the aggregated job. Also the time for horizontal movements of the crane body is neglected. This is justified only if the movement time for changing the bay is much lower than the jobs’ processing times. (ii) Greater level of detail is applied if the cranes’ movement along their shared pathway is explicitly modeled (β3 = mvX ). Then, cranes move at constant speed, so that the position of all cranes can exactly be determined for any (discrete) time period. This is especially valuable whenever IO-points are located at the front (α3 = front) or at both ends (α3 = ends), where the movement of cranes during job processing requires an ongoing position control. Considering only horizontal movement of the crane body implies that this movement always takes longer than the positioning of the spreader along the Y-axis. In most applications containers are stored in longitudinal direction along the shared pathway, so that indeed the horizontal movement takes longer than traversing a few container rows with the spreader. However, in some ASRS or in container yards where a typical GC spans 8–12 rows (Steenken et al., 2004), this assumption may not hold. Here, the maximum metric needs to be applied, where the crane’s movement time between two positions in a two- or three-dimensional yard is determined by the maximum time for moving the crane body and the spreader in parallel (β3 = mvXY ). (iii) Modeling the movement of crane body and trolley (β3 = mvXY ) may still involve critical assumptions. For instance, it is not differentiated between loaded and unloaded moves, although there exist applications where cranes move much slower if they carry a heavy item, see Alicke (2002). Furthermore, a constant crane velocity ignores the acceleration phase of crane body and spreader before reaching their cruising speed. Especially, if plenty short moves are to be executed, acceleration may have a significant impact on the actual movement times. These peculiarities suggest a more detailed modeling of crane movements (β3 = cmvXY Z ), which, however, are yet missing in largest parts of the literature. To explore the right level of aggregation for different crane scheduling applications, future research should aim to quantify the aforementioned trade-offs. Then, the potential gains of a more detailed model can be weighed against the potential loss of a weaker scheduling heuristic, so that practitioners receive more detailed information on the right level of aggregation for a specific problem. 5.3. Complexity of crane scheduling problems Table 2 summarizes the existing complexity proofs for crane scheduling. Compared to the wide range of crane scheduling problems spanned by our classification scheme this table reveals that plenty of work remains to be done. However, to economically fill this gap we do not advocate proving any open problem case individually. Instead, future research should concentrate on general relations between different attribute values of our classification. Analogously to the reduction graphs successfully provided for traditional machine scheduling (e.g., see Brucker & Knust, 2013) general proofs are preferable, which exploit that one value of an attribute in any case poses a generalization of another value. For some values such a relationship is truly straightforward. In general, a problem setting where a certain attribute is unspecified is a generalization of the problem setting with a given value for this attribute, e.g., with regard to the number of cranes α2 = ◦ is a generalization of α2 = 2. Also, the complexity hierarchies regarding ob-
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
ARTICLE IN PRESS
JID: EOR 12
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15 Table 2 Summary of complexity results. Publication
Problem
Complexity∗
Boysen and Fliedner (2010) Boysen et al. (2012) Briskorn and Angeloudis (2016) Briskorn and Angeloudis (2016) Emde and Boysen (2014) Emde and Boysen (2014) Erdog˘ an et al. (2014) Gellert and König (2011) Kellner and Boysen (2015) Kellner and Boysen (2015) Lee et al. (2008a) Lee and Wang (2010a) Lim et al. (2004) Lim et al. (2007) Zhu and Lim (2006) This paper, see Appendix
[1D, area||Cmax ] [1D, area, pass||Cmax ] [1D, 2, ends|M, mvX , chain|Cmax ] [1D, 2, ends, pass|M, mvX , chain|Cmax ] [1D, 2, front|mvX |Cmax ] [1D, 2, front|mvX , chain|Cmax ] [1D, 2, ends|mvX |Cmax ] [1D, 2, ends|R, mvX |Cmax ] [2D|mxXY |Cmax ] [2D, pass|mxXY |Cmax ] [1D||Cmax ] [1D|| wiCi ] [1D, sm|dy|] [1D||Cmax ] [1D||Cmax ] [1D||Cmax ]
O(n3 ) o. NP-hard O(n4 ) O(n4 ) str. NP-hard O(n3 ) str. NP-hard at least o. NP-hard at least o. NP-hard at least o. NP-hard at least o. NP-hard at least o. NP-hard O(m 2 n) at least o. NP-hard at least o. NP-hard o. NP-hard
∗
n = number of jobs, m = number of cranes.
jective functions known from machine scheduling models (see e.g. Pinedo, 2012) carry over. However, for other attributes such a relationship seems anything but obvious. In the following we present some first insights arguing formally only instead of providing formal proofs.
mining efficient lower bounds or for solving subproblems in complex procedures for more general problem settings.
Value α1 = 3D generalizes α1 = 2D and α1 = 2D generalizes α1 = 1D. An instance with k − 1, k ∈ {2, 3}, dimensions can be represented by an instance with k dimensions by fixing 1 as coordinate of dimension k for every position. Value α 3 = ends generalizes α 3 = front. An instance with α 3 = front can be represented by α 3 = ends by having one of the input and output points be neither origin nor destination of any container. Value β1 = R generalizes β1 = ◦ and β 1 = dual. An instance with β1 = ◦ can be represented by β1 = R by having a block which is larger by two rows in each dimension. Instead of the IO-points we then set the first and last row of the block as origin or destination of containers.
In Section 1, we argued that missing awareness of closely related crane scheduling applications may lead to (nearly identical) problems being ‘reinvented’ multiple times. Our literature survey reveals that this warning is not completely ungrounded, although largest parts of the literature show no overlap. The only exceptions are the approach of Javanshir and Ganji (2010), who suggest problem P (see Section 1) for the scheduling of yard cranes without referring to the well-known QC scheduling problem of identical structure, and the reinvented complexity proofs of Zhu and Lim (2006), Lim et al. (2007), and Lee et al. (2008a) for problem P, which do not refer to each other. Still, many crane scheduling applications are indeed quite similar, which leads to two potential scientific gains of a broader view on crane scheduling: (i) A scheduling approach readily developed for one application may be applicable in another field without any (or only minor) modifications. (ii) Certain problem attributes (like a specific yard layout) successfully applied in one area of application could inspire novel developments in other applications. These potential outcomes justify a closer look on some related crane scheduling applications and potential transfers among them:
•
•
•
Although general proofs are certainly preferable, we are of the opinion that problem P from Section 1 (classified by [1D||Cmax ]) deserves special attention as it is a fundamental problem with various important applications. The problem is only proven to be at least ordinarily NP-hard by a reduction from the Partition problem (see Zhu & Lim, 2006; Lim, Rodrigues, & Xu, 2007; Lee et al., 2008a). In this paper we show that the problem can be solved in pseudopolynomial time if the number of cranes is fixed, see Appendix. However, it remains open whether it is indeed ordinarily NP-hard if the number of cranes is free. Seeing that dozens of algorithms (see Table 1) that have been introduced for (variants of) this problem, not being able to properly prove the complexity status of such a popular problem seems especially dissatisfactory for the research community. However, NP-hardness proofs are not only important to justify the application of heuristic procedures. Also the identification of problems solvable in polynomial time should be intensified. Since non-crossing constraints complicate crane scheduling considerably, presumably most problems will turn out as NP-hard. However, for some reduced problem settings, efficiently solvable subproblems have already been identified, e.g., when fixing the sequence of job processing (β7 = chain), see Briskorn and Angeloudis (2016) and Emde and Boysen (2014). Other attribute values, e.g., β2 = pmtn (job preemption) or β8 = open (containers can be stacked on any open location), may lead to comparable results. Such procedures are especially valuable because they may be applicable for deter-
5.4. On the relation between different crane scheduling applications
•
•
In spite of the wide-spread application of ASRS, crane interference is seldom addressed in scientific literature. Recall that our literature survey classifies just six papers with our tuple notation. This result is due to the vast majority of real-world ASRS having only a single crane per aisle. However, especially online retailers, which often promise their customer next-day or even same-day deliveries, have demand for very fast and efficient warehousing processes. In this context, multi-crane ASRS may gain importance in the future. Currently, rather single cranes having multiple shuttles ASRS are applied (e.g., see Meller & Mungwattana, 1997; Malmborg, 20 0 0), but the authors are aware of some recent implementations of multicrane systems and also the first scheduling papers on this topic have appeared (Kung et al., 2012; Kung et al., 2014). These scheduling problems have a striking similarity with those of twin cranes in container yards, so that a unified view seems advisable. From a modeling perspective, there is also a close relationship between intermodal rail terminals, where containers are ex-
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
JID: EOR
ARTICLE IN PRESS
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
•
•
•
•
changed between freight trains and trucks, and ASRS automatically replenishing SKUs from higher racks toward the ground level in order to supply human order pickers (see Kim et al., 2003). In both cases, we have a two-dimensional storage layout (α1 = 2D) with IO-points being organized sideways to the shared pathway (α3 = ◦), so that models and solution procedures derived for these cases of our classification can be applied in either of the two fields. Cross-over cranes allowing a passing of differently sized cranes (α4 = pass) are applied already in some modern container ports, see Section 2. The solution procedures developed by Saanen and van Valkengoed (2005), Dorndorf and Schneider (2010) and Speer et al. (2011) for this problem may be adapted to solve related problems where cranes can pass, like the QCs scheduling at an indented berth (see Boysen et al., 2012) or scheduling in the context of ASRS (see Hino, Kobayashi, Higashi, & Ota, 2009; Kung et al., 2012). Furthermore, cross-over cranes may also be applied in rail-terminals. A first investigation whether cross-over cranes are a suited crane setting for rail-terminals is provided by Kellner and Boysen (2015). Twin cranes that share a rail track and cannot pass each other are commonly applied in container yards. Emde and Boysen (2014) consider a system where both cranes can receive containers on the same side of the container block, because both of them are able to reach the handover area. The scheduling of these twin cranes is remarkably similar to the scheduling of the lift-based ASRS system considered in Carlo and Vis (2012). Here, two parallel lifts both having access to the handover point at the front of the rack manage the vertical movement of goods. Once having reached their vertical position, a lift hands over its goods to a shuttle, which takes over the horizontal travel toward the final storage position (see Wang, Mou, & Wu, 2015). The coordination of lifts in the ASRS setting equals that of the twin cranes, which is confirmed by the (almost) identical tuple notations in Table 1. Also, it seems obvious that the techniques developed in Briskorn and Angeloudis (2016) can be adopted to lift-based ASRS systems (recall that α3 = front is a special case of α3 = ends). Among the most significant cost drivers for ASRS is the purchase of cranes. To reduce these costs some ASRS apply mobile cranes that are able to change the aisles (see Egbelu, 1991). If we have more than a single mobile crane in an ASRS, they cannot move independently from each other, because they may interfere during a parallel change of aisle. In such a setting, the path for changing aisles is a shared, one-dimensional pathway and a crane can only pass if the other crane is working inside an aisle. This resembles the setting where crossover cranes can pass each other on a one-dimensional pathway under specific circumstances (see Briskorn & Angeloudis, 2016). Some general aspect relevant in many fields of application are restrictions on the storage positions of containers (β8 = restr). Weight restrictions, e.g., some container is too heavy for being stacked upon another, stability aspects, and assignment constraints, e.g., reefers requiring power supply, are a general phenomenon and should, thus, not be reinvented for any field of application. However, there are also specific storage restrictions in some fields. For instance, stability aspects in the storage of steel coils require that a top coil is stored in the recess between two adjacent bottom coils, see Zäpfel and Wasner (2006) and Tang et al. (2012). Thus, one top coil blocks two bottom coils, so that reshuffle moves completely alter the resulting crane scheduling problem.
It can be concluded that there is much overlap among the different areas where cranes interfering with each other.
13
6. Conclusion This paper surveys the scheduling of cranes with interference as is found in various practical applications. We present a classification scheme that captures fundamental characteristics of these problems. This scheme can be used for briefly defining specific crane scheduling problems with the help of a tuple-notation. We apply the scheme to survey existing research in this field and to identify future research needs. The survey reveals that the majority of papers addresses the scheduling of quay cranes and gantry cranes in container terminals. With the generalized classification scheme provided in our paper, it becomes possible to exchange relevant research results among the different areas of non-crossing crane scheduling research. Seeing the multitude of future research tasks identified in this paper and the close interdependencies to related problems, such that holistic approaches (e.g. Cao, Lee, Chen, & Shi, 2010) turn out as another line of activity, it can be conjectured that crane scheduling will remain a fruitful field of research in the foreseeable future. We hope that this paper contributes to the development of this field. Appendix. Complexity proof for [1D||Cmax ] We consider problem P from Section 1 (classified by [1D||Cmax ]). Zhu and Lim (2006) report that the problem is NPhard for two cranes. Lim et al. (2007) even state that the problem is strongly NP-hard even for two cranes. However, the proof (by reduction from PARTITION) only covers binary NP-hardness. In fact, we will proof in the following that the problem can be solved in pseudo-polynomial time if the number of cranes is fixed. Theorem 1. Problem P with a fixed number of cranes is binary NPhard. Proof. NP-hardness of P has been shown in Zhu and Lim (2006). Now, we develop a dynamic programming approach in order to solve P. As a fundamental property we use that for a given allocation of jobs to cranes the following scheduling of cranes is optimal (see Lim et al., 2007, Theorem 2). Each crane processes its jobs from left to right. Crane n does work without any break. Crane c, c = 1, . . . , n − 1, pauses only if it is blocked by crane c + 1 and continues as soon as crane c + 1 gives way. Consider state (i, C 1 , . . . , C n ) representing the first i slots being served and crane c, c = 1, . . . , n, having completed its jobs at Cc . Note that crane c, c = 1, . . . , n, can start to process job i + 1 only after cranes c, . . . , n have completed the jobs in 1, . . . , i assigned to them in order not to violate the non-crossing constraints. We have initial state (0, 0, . . . , 0 ) and consider a transition from state (i, C 1 , . . . , C n ) to (i + 1, C¯1 , . . . , C¯n ) representing i + 1 being assigned to crane c if • •
C¯ c = C c for c = k and each C¯ c = max C c | c = c, . . . , n − 1 + pi .
The transition accounts for crane c having to wait for cranes c + 1, . . . , n to complete whatever jobs in {1, . . . , i} are assigned to them before starting to process i + 1. The problem then is to find state (m, C 1 , . . . , C n ) with minimum max {C c | c = 1, . . . , n} which can be reached from the initial state. Let W = m i=1 p j be the total n n workload. We have O(mW ) states and O(mnW ) transitions. Therefore, the problem can be solved in O(mnWn ) time. References Alicke, K. (2002). Modeling and optimization of the intermodal terminal mega hub. OR Spectrum, 24(1), 1–17. Aron, I., Genc-Kaya, L., Harjunkoski, I., Hoda, S., & Hooker, J. N. (2011). Factory crane scheduling by dynamic programming. In R. K. Wood, & R. F. Dell (Eds.), Operations research, computing and homeland defense (pp. 93–107). INFORMS.
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
JID: EOR 14
ARTICLE IN PRESS
[m5G;September 8, 2016;19:40]
N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
Ballis, A., & Golias, J. (2002). Comparative evaluation of existing and innovative rail-road freight transport terminals. Transportation Research Part A: Policy and Practice, 36, 593–611. Bierwirth, C., & Meisel, F. (2009). A fast heuristic for quay crane scheduling with interference constraints. Journal of Scheduling, 12(4), 345–360. Bierwirth, C., & Meisel, F. (2010). A survey of berth allocation and quay crane scheduling problems in container terminals. European Journal of Operational Research, 202(3), 615–627. Bierwirth, C., & Meisel, F. (2015). A follow-up survey of berth allocation and quay crane scheduling problems in container terminals. European Journal of Operational Research, 244(3), 675–689. ˙ Błazewicz, J., Ecker, K., Pesch, E., Schmidt, G., & We¸ glarz, J. (2007). Handbook on scheduling. Berlin: Springer. Bortfeldt, A., & Forster, F. (2012). A tree search procedure for the container pre-marshalling problem. European Journal of Operational Research, 217(3), 531–540. Boysen, N., Briskorn, D., & Emde, S. (2015). A decomposition heuristic for the twin robots scheduling problem. Naval Research Logistics, 62, 16–22. Boysen, N., Emde, S., & Fliedner, M. (2012). Determining crane areas for balancing workload among interfering and non-interfering cranes. Naval Research Logistics, 59, 656–662. Boysen, N., & Fliedner, M. (2010). Determining crane areas in intermodal transshipment yards: The yard partition problem. European Journal of Operational Research, 204, 336–342. Boysen, N., Fliedner, M., Jaehn, F., & Pesch, E. (2012). A survey on container processing in railway yards. Transportation Science, 47, 312–329. Boysen, N., Fliedner, M., & Kellner, M. (2010). Determining fixed crane areas in rail-rail transshipment yards. Transportation Research Part E, 46, 1005–1016. Boysen, N., Fliedner, M., & Scholl, A. (2007). A classification of assembly line balancing problems. European Journal of Operational Research, 183, 674–693. Boysen, N., & Stephan, K. (2016). A survey on single crane scheduling in automated storage/retrieval systems. European Journal of Operational Research, 254(3), 691–704. Briskorn, D., & Angeloudis, P. (2016). Scheduling co-operating stacking cranes with predetermined container sequences. Discrete Applied Mathematics, 201, 70–85. Brucker, P., Drexl, A., Möhring, R., Neumann, K., & Pesch, E. (1999). Resource-constrained project scheduling: Notation, classification, models, and methods. European Journal of Operational Research, 112, 3–41. Brucker, P., & Knust, S. (2013). Complexity results for scheduling problems. http: //www.informatik.uni-osnabrueck.de/knust/class/, Accessed August 2016. Cao, J. X., Lee, D.-H., Chen, J. H., & Shi, Q. (2010). The integrated yard truck and yard crane scheduling problem: Benders’ decomposition-based methods. Transportation Research Part E: Logistics and Transportation Review, 46(3), 344–353. Carlo, H. J., & Martínez-Acevedo, F. L. (2015). Priority rules for twin automated stacking cranes that collaborate. Computers & Industrial Engineering, 89, 23–33. Carlo, H. J., & Vis, I. F. A. (2012). Sequencing dynamic storage systems with multiple lifts and shuttles. International Journal of Production Economics, 140, 844–853. Carlo, H. J., Vis, I. F. A., & Roodbergen, K. J. (2014). Storage yard operations in container terminals: Literature overview, trends, and research directions. European Journal of Operational Research, 235(2), 412–430. Carlo, H. J., Vis, I. F. A., & Roodbergen, K. J. (2015). Seaside operations in container terminals: literature overview, trends, and research directions. Flexible Services and Manufacturing Journal, 27, 224–262. Caserta, M., Schwarze, S., & Voß, S. (2012). A mathematical formulation and complexity considerations for the blocks relocation problem. European Journal of Operational Research, 219(1), 96–104. Caserta, M., Voß, S., & Sniedovich, M. (2011). Applying the corridor method to a blocks relocation problem. OR Spectrum, 33(4), 915–929. Chen, J. H., Lee, D.-H., & Cao, J. X. (2011). Heuristics for quay crane scheduling at indented berth. Transportation Research Part E: Logistics and Transportation Review, 47(6), 1005–1020. Chen, J. H., Lee, D.-H., & Goh, M. (2014). An effective mathematical formulation for the unidirectional cluster-based quay crane scheduling problem. European Journal of Operational Research, 232(1), 198–208. Choe, R., Park, T., Ok, S. M., & Ryu, K. R. (2007). Real-time scheduling for non-crossing stacking cranes in an automated container terminal. In M. Orgun, & J. Thornton (Eds.), Ai 2007. In LNAI: Vol. 4830 (pp. 625–631). Springer. Choe, R., Yang, Y., & Ryu, K. R. (2012). Real-time scheduling of twin stacking cranes in an auto-mated container terminal using a genetic algorithm. In SAC’12 (pp. 238–243). Italy: Riva del Garda. Choo, S., Klabjan, D., & Simchi-Levi, D. (2010). Multiship crane sequencing with yard congestion constraints. Transportation Science, 44(1), 98–115. Chung, S., & Chan, F. T. (2013). A workload balancing genetic algorithm for the quay crane scheduling problem. International Journal of Production Research, 51(16), 4820–4834. Chung, S., & Choy, K. (2012). A modified genetic algorithm for quay crane scheduling operations. Expert Systems with Applications, 39(4), 4213–4221. Dell, R., Royset, R., & Zyngirdis, I. (2009). Optimizing container movement using one and two automated stacking cranes. Journal of Industrial and Management Optimization, 5, 285–302. Diabat, A., & Theodorou, E. (2014). An integrated quay crane assignment and scheduling problem. Computers & Industrial Engineering, 73, 115–123. Dohn, A., & Clausen, J. (2010). Optimising the slab yard planning and crane scheduling problem using a two-stage heuristic. International Journal of Production Research, 48(15), 4585–4608. Dorndorf, U., & Schneider, F. (2010). Scheduling automated triple cross-over stacking cranes in a container yard. OR Spectrum, 32, 617–632.
Dyckhoff, H. (1990). A typology of cutting and packing problems. European Journal of Operational Research, 44, 145–159. Egbelu, P. J. (1991). Framework for dynamic positioning of storage/retrieval machines in an automated storage/retrieval system. International Journal of Production Research, 29(1), 17–37. Emde, S., & Boysen, N. (2014). 1-Dimensional vehicle scheduling with a front-end depot and non-crossing constraints. OR Spectrum, 36(2), 381–400. Erdog˘ an, G., Battarra, M., & Laporte, G. (2014). Scheduling twin robots on a line. Naval Research Logistics, 61(2), 119–130. Expósito-Izquierdo, C., González-Velarde, J. L., Melián-Batista, B., & Moreno-Vega, J. M. (2013). Hybrid estimation of distribution algorithm for the quay crane scheduling problem. Applied Soft Computing, 13(10), 4063–4076. Forster, F., & Bortfeldt, A. (2012). A tree search procedure for the container relocation problem. Computers & Operations Research, 39(2), 299–309. Fu, Y.-M., Diabat, A., & Tsai, I.-T. (2014). A multi-vessel quay crane assignment and scheduling problem: Formulation and heuristic solution approach. Expert Systems with Applications, 41(15), 6959–6965. Ge, P., Wang, J., Jin, M., Ren, P., & Gao, H. (2012). An efficient heuristic algorithm for overhead cranes scheduling operations in workshop. Applied Mathematics & Information Sciences, 6, 1087–1094. Gellert, T., & König, F. (2011). 1D vehicle scheduling with conflicts. In Proceedings of the workshop on algorithm engineering and experiments. In ALENEX 2011: Vol. 5 (pp. 107–115). Society for Industrial and Applied Mathematics. Gharehgozli, A. H., Laporte, G., Yu, Y., & de Koster, R. (2015). Scheduling twin yard cranes in a container block. Transportation Science, 49(3), 686–705. Graham, R., Lawler, E., Lenstra, J., & Kan, A. (1979). Optimization and approximation in deterministic sequencing and scheduling: a survey. In E. J. P. L. Hammer, & B. Korte (Eds.), Discrete optimization ii proceedings of the advanced research institute on discrete optimization and systems applications. In Annals of Discrete Mathematics: Vol. 5 (pp. 287–326). Elsevier. Guan, Y., Yang, K.-H., & Zhou, Z. (2013). The crane scheduling problem: models and solution approaches. Annals of Operations Research, 203(1), 119–139. Guo, P., Cheng, W., & Wang, Y. (2014). A modified generalized extremal optimization algorithm for the quay crane scheduling problem with interference constraints. Engineering Optimization, 46(10), 1411–1429. Hakam, M. H., Solvang, W. D., & Hammervoll, T. (2012). A genetic algorithm approach for quay crane scheduling with non-interference constraints at Narvik container terminal. International Journal of Logistics Research and Applications, 15(4), 269–281. Han, M.-H., McGinnis, L. F., Shieh, J. S., & White, J. A. (1987). On sequencing retrievals in an automated storage/retrieval system. IIE Transactions, 19(1), 56–66. Heinrichs, U., & Moll, C. (1997). On the scheduling of one-dimensional transport systems. Technical Report. http://e- archive.informatik.uni- koeln.de/277/, Accessed August 2016. Hino, H., Kobayashi, Y., Higashi, T., & Ota, J. (2009). Control methodology of stacker cranes for collision avoidance considering dynamics in a warehouse. In Proceedings of the 2009 international conference on robotics and biomimetics. In ROBIO’09 (pp. 983–988). Piscataway, NJ, USA: IEEE Press. Javanshir, H., & Ganji, S. R. S. (2010). Yard crane scheduling in port container terminals using genetic algorithm. Journal of Industrial Engineering International, 6(11), 39–50. Kaveshgar, N., Huynh, N., & Rahimian, S. K. (2012). An efficient genetic algorithm for solving the quay crane scheduling problem. Expert Systems with Applications, 39(18), 13108–13117. Kellner, M., & Boysen, N. (2015). Rmg vs. drmg: An evaluation of different crane configurations in intermodal transshipment yards. EURO Journal on Transportation and Logistics, 4, 355–377. Kemme, N. (2012). Effects of storage block layout and automated yard crane systems on the performance of seaport container terminals. OR Spectrum, 34, 563–591. Kendall, D. (1953). Stochastic processes occurring the theory of queues and their analysis by the method of imbedded Markov chains. Annals of Mathematical Statistics, 24, 338–354. Kim, B.-I., Heragu, S. S., Graves, R. J., & Onge, A. S. (2003). Clustering-based order-picking sequence algorithm for an automated warehouse. International Journal of Production Research, 41(15), 3445–3460. Kim, K. H., & Hong, G.-P. (2006). A heuristic rule for relocating blocks. Computers & Operations Research, 33(4), 940–954. Kim, K. H., & Park, Y. M. (2004). A crane scheduling method for port container terminals. European Journal of Operational Research, 156(3), 752–768. Klaws, J., Stahlbock, R., & Voß, S. (2007). Container terminal yard operationssimulation of a side-loaded container block served by triple rail mounted gantry cranes. In J. B. et al. (Ed.), ICCL 2011. In LNCS: Vol. 6971 (pp. 243– 255). Springer. Kung, Y., Kobayashi, Y., Higashi, T., & Ota, J. (2012). Motion planning of two stacker cranes in a large-scale automated storage/retrieval system. Journal of Mechanical Systems for Transportation and Logistics, 5, 71–85. Kung, Y., Kobayashi, Y., Higashi, T., Sugi, M., & Ota, J. (2014). Order scheduling of multiple stacker cranes on common rails in an automated storage/retrieval system. International Journal of Production Research, 52, 1171–1187. Lee, D.-H., & Chen, J. H. (2010). An improved approach for quay crane scheduling with non-crossing constraints. Engineering Optimization, 42(1), 1–15. Lee, D.-H., Chen, J. H., & Cao, J. X. (2011). Quay crane scheduling for an indented berth. Engineering Optimization, 43(9), 985–998. Lee, D.-H., & Wang, H. Q. (2010a). An approximation algorithm for quay crane scheduling with handling priority in port container terminals. Engineering Optimization, 42(12), 1151–1161.
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041
JID: EOR
ARTICLE IN PRESS N. Boysen et al. / European Journal of Operational Research 000 (2016) 1–15
Lee, D.-H., & Wang, H. Q. (2010b). Integrated discrete berth allocation and quay crane scheduling in port container terminals. Engineering Optimization, 42(8), 747–761. Lee, D.-H., Wang, H. Q., & Miao, L. (2008a). Quay crane scheduling with non-interference constraints in port container terminals. Transportation Research Part E, 44(1), 124–135. Lee, D.-H., Wang, H. Q., & Miao, L. (2008b). Quay crane scheduling with handling priority in port container terminals. Engineering Optimization, 40(2), 179–189. Legato, P., & Trunfio, R. (2014). A local branching-based algorithm for the quay crane scheduling problem under unidirectional schedules. 4OR, 12(2), 123–156. Legato, P., Trunfio, R., & Meisel, F. (2012). Modeling and solving rich quay crane scheduling problems. Computers & Operations Research, 39(9), 2063–2078. Leung, J. M. Y., Zhang, G., Yang, X., Mak, R., & Lam, K. (2004). Optimal cyclic multi-hoist scheduling: A mixed integer programming approach. Operations Research, 52(6), 965–976. Li, W., Goh, M., Wu, Y., Petering, M., de Souza, R., & Wu, Y. (2012). A continuous time model for multiple yard crane scheduling with last minute job arrivals. International Journal of Production Economics, 136(2), 332–343. Li, W., Wu, Y., Petering, M., Goh, M., & de Souza, R. (2009). Discrete time model and algorithms for container yard crane scheduling. European Journal of Operational Research, 198, 165–172. Lieberman, R. W., & Turksen, I. (1981). Crane scheduling problems. AIIE Transactions, 13, 304–311. Lieberman, R. W., & Turksen, I. (1982). Two-operation crane scheduling problems. AIIE Transactions, 14, 147–155. Lim, A., Rodrigues, B., Xiao, F., & Zhu, Y. (2004). Crane scheduling with spatial constraints. Naval Research Logistics, 51(3), 386–406. Lim, A., Rodrigues, B., & Xu, Z. (2007). A m-parallel crane scheduling problem with a non-crossing constraint. Naval Research Logistics, 54(2), 115–127. Liu, J., Wan, Y.-W., & Wang, L. (2006). Quay crane scheduling at container terminals to minimize the maximum relative tardiness of vessel departures. Naval Research Logistics, 53(1), 60–74. Lu, Z., Han, X., & Xi, L. (2011). Simultaneous berth and quay crane allocation problem in container terminal. Advanced Science Letters, 4(6–7), 2113–2118. Lu, Z., Han, X., Xi, L., & Erera, A. L. (2012). A heuristic for the quay crane scheduling problem based on contiguous bay crane operations. Computers & Operations Research, 39(12), 2915–2928. Luo, J., Wu, Y., Halldorsson, A., & Song, X. (2011). Storage and stacking logistics problems in container terminals. OR Insight, 24(4), 256–275. Mak, K., & Sun, D. (2009). Scheduling yard cranes in a container terminal using a new genetic approach. Engineering Letters, 17(4), 274. Malmborg, C. J. (20 0 0). Interleaving models for the analysis of twin shuttle automated storage and retrieval systems. International Journal of Production Research, 38(18), 4599–4610. Manier, M.-A., & Bloch, C. (2003). A classification for hoist scheduling problems. International Journal of Flexible Manufacturing Systems, 15(1), 37–55. Meisel, F. (2011). The quay crane scheduling problem with time windows. Naval Research Logistics, 58(7), 619–636. Meisel, F., & Bierwirth, C. (2011). A unified approach for the evaluation of quay crane scheduling models and algorithms. Computers & Operations Research, 38(3), 683–693. Meisel, F., & Bierwirth, C. (2013). A framework for integrated berth allocation and crane operations planning in seaport container terminals. Transportation Science, 47(2), 131–147. Meisel, F., & Wichmann, M. (2010). Container sequencing for quay cranes with internal reshuffles. OR Spectrum, 32(3), 569–591. Meller, R. D., & Mungwattana, A. (1997). Multi-shuttle automated storage/retrieval systems. IIE Transactions, 29(10), 925–938. Moccia, L., Cordeau, J.-F., Gaudioso, M., & Laporte, G. (2006). A branch-and-cut algorithm for the quay crane scheduling problem in a container terminal. Naval Research Logistics, 53(1), 45–59. Monaco, M. F., & Sammarra, M. (2011). Quay crane scheduling with time windows, one-way and spatial constraints. International Journal of Shipping and Transport Logistics, 3(4), 454–474. Ng, W. C. (2005). Crane scheduling in container yards with inter-crane interference. European Journal of Operational Research, 164, 64–78. Ng, W. C., & Mak, K. L. (2006). Quay crane scheduling in container terminals. Engineering Optimization, 38(6), 723–737. Nguyen, S., Zhang, M., Johnston, M., & Chen Tan, K. (2013). Hybrid evolutionary computation methods for quay crane scheduling problems. Computers & Operations Research, 40(8), 2083–2093. Park, T., Choe, R., Ok, S., & Ryu, K. (2010). Real-time scheduling for twin RMGs in an automated container yard. OR Spectrum, 32(3), 593–615. Peterson, B., Harjunkoski, I., Hoda, S., & Hooker, J. N. (2014). Scheduling multiple factory cranes on a common track. Computers & Operations Research, 48(2), 102–112. Pinedo, M. (2012). Scheduling: Theory, Algorithms, and Systems. Springer.
[m5G;September 8, 2016;19:40] 15
Rodriguez-Molins, M., Salido, M. A., & Barber, F. (2014). A GRASP-based metaheuristic for the berth allocation problem and the quay crane assignment problem by managing vessel cargo holds. Applied Intelligence, 40(2), 273–290. Roodbergen, K. J., & Vis, I. F. A. (2009). A survey of literature on automated storage and retrieval systems. European Journal of Operational Research, 194(2), 343–362. Rotter, H. (2004). New operating concepts for intermodal transport: The Mega Hub in Hanover/Lehrte in Germany. Transportation Planning and Technology, 27, 347–365. Saanen, Y., & van Valkengoed, M. (2005). Comparison of three automated stacking alternatives by means of simulation. In M. E. Kuhl, N. M. Steiger, F. B. Armstrong, & J. A. Joines (Eds.), Proceedings of the winter simulation conference 2005 (pp. 1567–1576). Sammarra, M., Cordeau, J.-F., Laporte, G., & Monaco, M. F. (2007). A tabu search heuristic for the quay crane scheduling problem. Journal of Scheduling, 10(4–5), 327–336. Song, L., Cherrett, T., & Guan, W. (2012). Study on berth planning problem in a container seaport: Using an integrated programming approach. Computers & Industrial Engineering, 62(1), 119–128. Speer, U., John, G., & Fischer, K. (2011). Scheduling yard cranes considering crane interference. Lecture Notes in Computer Science, 6971, 321–340. Stahlbock, R., & Voß, S. (2008). Operations research at container terminals: a literature update. OR Spectrum, 30(1), 1–52. Stahlbock, R., & Voß, S. (2010). Efficiency considerations for sequencing and scheduling of double-rail-mounted gantry cranes at maritime container terminals. International Journal of Shipping and Transport Logistics, 2(1), 95–123. Steenken, D., Voß, S., & Stahlbock, R. (2004). Container terminal operation and operations research - a classification and literature review. OR Spectrum, 26(1), 3–49. Steenken, D., Winter, T., & Zimmermann, U. T. (2001). Stowage and transport optimization in ship planning. In M. Grötschel, S. Krumke, & J. Rambau (Eds.), Online optimization of large scale systems (pp. 731–745). Berlin: Springer. Tang, L., & Ren, H. (2010). Modelling and a segmented dynamic programming-based heuristic approach for the slab stack shuffling problem. Computers & Operations Research, 37(2), 368–375. Tang, L., Zhao, J., & Liu, J. (2014). Modeling and solution of the joint quay crane and truck scheduling problem. European Journal of Operational Research, 236, 731–745. Tang, L., Zhao, R., & Liu, J. (2012). Models and algorithms for shuffling problems in steel plants. Naval Research Logistics, 59(7), 502–524. Tavakkoli-Moghaddam, R., Makui, A., Salahi, S., Bazzazi, M., & Taheri, F. (2009). An efficient algorithm for solving a new mathematical model for a quay crane scheduling problem in container ports. Computers & Industrial Engineering, 56(1), 241–248. Tompkins, J., White, J., Bozer, Y., & Tanchoco, J. (2003). Facilities planning (3rd). John Wiley & Sons. UNCTAD (2012). Review of maritime transport 2012. New York and Geneva: United Nations. Unsal, O., & Oguz, C. (2013). Constraint programming approach to quay crane scheduling problem. Transportation Research Part E, 59(0), 108–122. Vis, I. F. A., & Carlo, H. J. (2010). Sequencing two cooperating automated stacking cranes in a container terminal. Transportation Science, 44, 169–182. Wang, Y., & Kim, K. H. (2011). A quay crane scheduling algorithm considering the workload of yard cranes in a container yard. Journal of Intelligent Manufacturing, 22(3), 459–470. Wang, Y., Mou, S., & Wu, Y. (2015). Task scheduling for multi-tier shuttle warehousing systems. International Journal of Production Research, 53, 5884–5895. Wen, C., Eks¸ iog˘ lu, S. D., Greenwood, A., & Zhang, S. (2010). Crane scheduling in a shipbuilding environment. International Journal of Production Economics, 124(1), 40–50. Wu, Y., Li, W., Petering, M. E., Goh, M., & Souza, R. d. (2015). Scheduling multiple yard cranes with crane interference and safety distance requirement. Transportation Science, 49(4), 990–1005. Zäpfel, G., & Wasner, M. (2006). Warehouse sequencing in the steel supply chain as a generalized job shop model. International Journal of Production Economics, 104(2), 482–501. Zeng, Q., Yang, Z., & Hu, X. (2011). Disruption recovery model for berth and quay crane scheduling in container terminals. Engineering Optimization, 43(9), 967–983. Zhang, L., Khammuang, K., & Wirth, A. (2008). On-line scheduling with non-crossing constraints. Operations Research Letters, 36(5), 579–583. Zhou, W., & Wu, X. (2009). An efficient optimal solution of a two-crane scheduling problem. Asia-Pacific Journal of Operational Research, 26, 31–58. Zhou, Z., & Li, L. (2003). Single hoist cyclic scheduling with multiple tanks: a material handling solution. Computers & Operations Research, 30(6), 811–819. Zhou, Z., & Li, L. (2009). A solution for cyclic scheduling of multi-hoists without overlapping. Annals of Operations Research, 168(1), 5–21. Zhu, Y., & Lim, A. (2006). Crane scheduling with non-crossing constraint. Journal of the Operational Research Society, 57(12), 1464–1471. ZPMC (2013). Products|cranes|automated container systems. www.zpmc.com/ showroom/index.html, Accessed August 2016.
Please cite this article as: N. Boysen et al., A generalized classification scheme for crane scheduling with interference, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.08.041