Tactical Berth Allocation Problem Model
Tactical Berth Allocation Problem Model
a r t i c l e i n f o a b s t r a c t
Article history: In this paper we integrate at the tactical level two decision problems arising in container
Received 12 March 2009 terminals: the berth allocation problem, which consists of assigning and scheduling incom-
Received in revised form 15 July 2009 ing ships to berthing positions, and the quay crane assignment problem, which assigns to
Accepted 15 July 2009
incoming ships a certain quay crane profile (i.e. number of quay cranes per working shift).
We present two formulations: a mixed integer quadratic program and a linearization
which reduces to a mixed integer linear program. The objective function aims, on the
Keywords:
one hand, to maximize the total value of chosen quay crane profiles and, on the other hand,
Berth allocation
Quay crane assignment
to minimize the housekeeping costs generated by transshipment flows between ships. To
Container terminal management solve the problem we developed a heuristic algorithm which combines tabu search meth-
ods and mathematical programming techniques. Computational results on instances based
on real data are presented and compared to those obtained through a commercial solver.
Ó 2009 Elsevier Ltd. All rights reserved.
1. Introduction
Maritime transportation has always played a crucial role in the exchange of goods between continents, and reducing the
cost of such shipping continues to be an important commercial goal. Containerization has allowed for major improvements
in the maritime transport cost structure (UNCTAD, 2008). In order to further reduce transportation costs, shippers seek to
increase economies of scale, building ever larger container ships for long-haul routes, and demanding terminals with facil-
ities and technologies able to handle them (mega-terminals). This system is known as hub and spoke: deep sea containerships
(mother vessels) operate among a limited number of transhipment terminals (hubs), and smaller vessels (feeders) link the
hubs with the other ports (spokes). The need for an efficient management of logistic activities at modern container terminals,
and especially at the major hubs, is well recognized. For an overview and classification of the various equipments and deci-
sion problems in such systems, see Vis and de Koster (2003), Steenken et al. (2004), Crainic and Kim (2007), Stahlbock and
Voss (2008) and Monaco et al. (2009).
Among the several related problems addressed in the literature, one of the most relevant is the well known Operational
Berth Allocation Problem (OBAP), which consists of assigning and scheduling ships to berthing positions along the quay, with
the aim of minimizing ships’ turnaround time. The OBAP typically covers a planning horizon of at most 1 week, due to the
uncertainties of maritime traveling times. This paper deals with a new model for the integration, at the tactical level, of the
berth allocation problem with quadratic yard costs and the quay crane assignment problem. Our specific motivation in build-
ing a Tactical Berth Allocation Problem (TBAP), is not simply the obvious one of considering a longer planning horizon, but
mainly that of supporting decisions made by terminal managers in the negotiation process with shipping lines. During this
process, terminal managers need to evaluate the impact on the performance of the terminal of assigning certain operating
0191-2615/$ - see front matter Ó 2009 Elsevier Ltd. All rights reserved.
doi:10.1016/[Link].2009.07.003
G. Giallombardo et al. / Transportation Research Part B 44 (2010) 232–245 233
resources, i.e., berths and quay cranes, to the shipping lines. Drawing inspiration from the actual negotiation process, the key
feature of our model is the inclusion of a quay crane (QC) profile. This profile, which represents the number of quay cranes
available to a berthed vessel at each time step, is explicitly modeled as a decision variable. While this will be clarified later in
the paper, for the remainder of this section we highlight the main features of TBAP assuming the reader to be familiar with
existing OBAP formulations.
Basically, both the tactical and the operational problems deal with assigning and scheduling ships to berthing positions,
i.e. deciding where and when the ships should moor. Both the TBAP and the OBAP aim to balance terminal costs and service
quality. However, as already noted, the different decision levels and time frames induce different problems. In the TBAP ser-
vice quality depends upon the negotiation between the terminal and the shipping lines regarding the terminal resources. A
higher service quality occurs when the terminal can accommodate shipping lines requests in terms of expected berthing
times, assigned quay cranes, and expected handling times. In the TBAP, for a given amount of requested QC hours, it could
be possible to create different QC profiles. For example, assume that we have a request for a vessel that requires six QCs work
shifts, and the customer is potentially willing to accept either an intensive profile (for example three QCs on two work shifts)
or a longer one (two QCs on three work shifts). The terminal managers want to know the trade-off between the two profiles.
The faster one will be likely more satisfying for the customer because of the smaller handling time; while the slower one will
put less pressure on the quay cranes availability, which could be a bottleneck in some periods. However, the problem is more
complicated because if the QC availability is not a limiting factor, then a faster handling time is advantageous for the termi-
nal, because it augments berth availability. This shows why the Quay Crane Assignment Problem (QCAP), i.e. deciding how
many QCs to assign and for how long, has an impact on the berth allocation.
The TBAP, thanks to the longer planning horizon, can optimize the terminal’s total costs in a more comprehensive way. In
a transshipment terminal, containers arrive and depart on vessels while being temporarily stored in the yard. When unload-
ing a vessel, the discharged containers must be allocated to yard positions close enough to the vessel berthing point in order
to speed up the vessel handling. However, when the departure position of a container is far from its yard position, the con-
tainer must be reallocated before the arrival of the outbound vessel. In the OBAP, since the planning horizon is shorter than
the average container dwell time inside the yard, one can assume that the majority of the outbound containers are already in
the yard, and disregard the effects of transshipment flows inside the yard. In the TBAP, the yard costs cannot be simplified by
this assumption, and a quadratic term must be considered to account for the simultaneous assignment of vessels to berths.
In the following we present the paper outline, and we highlight its contributions. A literature review is provided in Sec-
tion 2 while the problem description as well as two formulations for the TBAP are presented in Section 3. With respect to
mathematical modeling, the paper contributions are the introduction of the quay crane assignment profile concept, detailed
in Section 3.1, and the integration with yard issues in transshipment terminals, discussed in Section 3.2. Both quay crane
assignment profiles, and yard aspects, have motivated the new optimization model presented in Section 3.3. The advantages
of the new model consists in the simultaneous control of the terminal on critical resources such as berths and quay cranes.
From a computational point of view, the paper contribution relies upon the solution algorithm introduced in Section 4 which
is based on mathematical programming techniques employed in a two-level heuristic. While the mathematical model is not
addressable by a state-of-the-art solver, the proposed heuristic proves its efficacy as documented by the computational
experiments reported in Section 5. Finally, we draw our conclusions in Section 6.
2. Literature review
The OBAP consists of allocating ships to berths along a time axis. Usual side constraints are berth’s allowable draft (depth
of the water), time windows and priorities assigned to the ships, favorite berthing areas, etc. The OBAP can be modeled as a
discrete problem if the quay is viewed as a finite set of berths. In this case the berths can be described as fixed length seg-
ments, or, if the spatial dimension is ignored, as points. Continuous models consider that ships can berth anywhere along the
quay. While continuous models are more realistic, discrete ones can be very useful to study relaxed problems in order to
devise efficient algorithms for them. The operational berth allocation problem has received so far a larger attention than
the tactical one in the scientific literature, see e.g. Imai et al. (1997, 2001, 2003, 2005, 2007), Lim (1998), Nishimura et al.
(2001), Kim and Moon (2003), Cordeau et al. (2005), Monaco and Sammarra (2007) and Wang and Lim (2007). In the follow-
ing we discuss in more detail the articles relevant to the TBAP.
Moorthy and Teo (2006) address the design of a berth template, a tactical planning problem that arises in transshipment
hubs and concerns the allocation of favorite berthing locations (home berths) to vessels which periodically call at the termi-
nal. The problem is modeled as a bicriteria optimization problem, which reflects the trade-off between service levels and
costs. The authors propose two procedures able to build good and robust templates, which are evaluated by simulating their
performances; robust templates are also compared with optimal templates on real-life generated instances. The paper ap-
proach builds on a heuristic algorithm for the OBAP presented in Dai et al. (2007).
Cordeau et al. (2007) provide an initial introduction for the basis of the TBAP. The paper deals with the Service Allocation
Problem (SAP), a tactical problem arising in the yard management of a container transhipment terminal. A service, also called
port route, is the sequence of ports visited by a vessel. Shipping companies plan their port routes in order to match the de-
mand for freight transportation. A shipping company will usually ask the terminal management to dedicate specific areas of
the yard and the quay (home berths) to their services. The SAP objective is the minimization of container rehandling
234 G. Giallombardo et al. / Transportation Research Part B 44 (2010) 232–245
operations inside the yard through choosing the home berth for each service. The SAP is formulated as a Generalized Qua-
dratic Assignment Problem (GQAP, see e.g. Cordeau et al. (2006) and Hahn et al. (2008)) with side constraints, and solved by
an evolutionary heuristic. The SAP can be seen as a relaxed TBAP when collapsing the temporal dimension, and disregarding
the choice of QC profiles. The SAP output consists of reference home berths that planners consider when drawing the berth
template.
Park and Kim (2003) were the first to integrate the OBAP in the continuous case with the QCAP, also considering the
scheduling of quay cranes. The integrated problem is formulated as an integer program and a two-phase solution procedure
is presented to solve the model. In the first phase, the berthing time and position of vessels and the number of quay cranes
assigned to each vessel at each time step are determined using Lagrangian relaxation and a subgradient optimization tech-
nique; the objective is to minimize the sum of penalty costs over all ships. In the second phase, cranes are scheduled along
the quay via dynamic programming, with the objective of minimizing the number of setups. With respect to the problem
formulation, the authors take into account some practical aspects such as favorite berthing positions of vessels, maximum
and minimum number of cranes to be assigned to each vessel, penalty costs due to earlier or later berthing time, and later
departure time (with respect to previously committed time).
Meisel and Bierwirth (2006) investigate the simultaneous allocation of berths and quay cranes, focusing on the reduction
of QCs idle times, which significantly impact on terminal’s labor costs. A heuristic scheduling algorithm based on
priority-rules methods for resource-constrained project scheduling is proposed and tested on instances based on real data.
Preliminary results, compared to the manually generated schedules which have been used in practice, are encouraging. In
this approach, each vessel represents an activity which can be performed in eight different modes, each mode representing
a given QC-to-Vessel assignment over time. The concept of ‘‘mode” seems analogous to the concept of profile we have intro-
duced so far; however, no detailed description of these modes is available in the paper.
Imai et al. (2008) address the simultaneous berth–crane allocation and scheduling problem, taking into account physical
constraints of quay cranes, which cannot move freely among berths as they are all mounted on the same track and cannot
bypass each other. A MIP formulation which minimizes the total service time is proposed and a genetic algorithm-based heu-
ristic is developed to find an approximate solution. As authors recognize, the relationship between the number of cranes and
the handling time is not investigated in the paper; indeed, a reference number of cranes needed by each ship is assumed to
be given as input of the problem.
Meisel and Bierwirth (2009) study the integration of OBAP and QCAP with a focus on quay crane productivity. An integer
linear model is presented and a construction heuristic, local refinement procedures and two meta-heuristics are developed
to solve the problem. Authors compare their approach to the one proposed by Park and Kim (2003) over the same set of in-
stances and they always provide better solutions. An analysis of quay crane’s productivity losses, mainly due to interference
among QCs and to the distance of the vessel berthing position from the yard areas assigned to this vessel, is also presented
and their impact on the terminal’s service cost is evaluated.
3. Mathematical models
In this section we provide a compact description of the problem and motivate our modeling choices. In particular, in Sec-
tion 3.1, we illustrate the concept of QC assignment profiles, and in Section 3.2 we provide additional details regarding yard
costs related to transshipment flows among ships. The described cost figures and operational parameters were provided by
the Medcenter Container Terminal (MCT), port of Gioia Tauro, Italy. We then present a mixed integer quadratic programming
formulation (MIQP) for the TBAP with integrated QCs assignment in Section 3.3, as well as a linearization of the MIQP model
which reduces to a mixed integer linear program (MILP) in Section 3.4.
With respect to the OBAP, we consider the discrete case. As described in Section 1, the fundamental modeling tool of our
formulation is the quay crane profile, representing the number of quay cranes assigned to the ship at each time step. Given n
ships, m berths, and a particular time horizon, we aim to assign a home berth and a QC profile to each ship, as well as sche-
dule incoming ships according to time windows on their arrival time and on berths’ availabilities. These decisions are made
to maximize the total value of chosen QC assignment profiles and minimize the housekeeping costs generated by transship-
ment flows between ships.
The integrated problem presents increased complexity because the ship handling time is not constant but depends on the
number of quay cranes assigned to the ship. With respect to the classical OBAP, this implies additional decision variables and
constraints.
The use of QC profiles to handle the assignment of quay cranes to ships is firstly motivated by the needs of terminal man-
agers during negotiations with shipping companies. In particular, managers need to be aware of the trade-off among the dif-
ferent QC profiles they may propose to the shippers.
Concerning the mathematical model, the concept of QC profiles can capture real-world issues, and works well to repre-
sent the control that the terminal has on several aspects of QC assignment during the optimization process. These are the
main reasons why we have explicitly introduced this feature in the formulation.
G. Giallombardo et al. / Transportation Research Part B 44 (2010) 232–245 235
We assume to have a set of feasible QC profiles P i for every ship i 2 N ¼ 1; . . . ; n, which are defined by the terminal accord-
ing to the specific amount of QC hours requested by the ship, internal rules and good practices related to the efficiency of
terminal operations, and legal contracts.
Our approach differs from the traditional modeling choice present in the literature, e.g. Park and Kim (2003), Imai et al.
(2008) and Meisel and Bierwirth (2009), which usually assigns quay cranes hour by hour, without any control on the final
outcome in terms of QC profiles. As mentioned, the concept of ‘‘mode” in Meisel and Bierwirth (2006) is somehow similar to
our concept of QC profile, but the authors do not provide enough details to allow comparisons.
For a given vessel, feasible QC profiles usually vary in length (number of shifts) as well as in the distribution of QC cranes
over the active shifts, in order to ensure the requested amount of QC hours.
Some operational constraints, which are usually not taken into account by other models, can be directly integrated in the
definition of the set of feasible profiles. A common rule, for instance, is that quay cranes are assigned to vessels and placed on
the corresponding quay segment shift by shift. This means that a quay crane cannot be moved from one vessel to another at
any arbitrary moment, but only between two shifts. This constraint can be easily handled by forcing profiles to maintain a
constant number of quay cranes during a shift. Another good practice is to keep the distribution of quay cranes as regular as
possible among active shifts; a variance of one or at most two QCs can be considered acceptable, although high variability
should be avoided as much as possible. Also this feature can be included in our profile set definition easily.
In addition to these general rules, the terminal can manage more directly some priority-related issues. Since the set of
feasible QC profiles is defined for every ship, managers can assign different minimum and maximum handling times not only
depending on the ship’s size and the traffic volume but also depending on the ship’s relative importance for the terminal.
This also applies for the minimum and maximum number of quay cranes allowed to be assigned to a given ship. We would
like to remark that this is an important advantage provided by our approach, compared to other models in the literature
where handling time is either considered an input of the problem or barely controlled by time windows on the vessel’s ar-
rival and departure, in addition to some priority-related weights in the objective function, which usually aim to serve faster
vessels with high priority. Furthermore, each QC profile has an associated ‘‘value” which reflects technical aspects (such as
the resources utilized) but which is also computed by taking into account the specific vessel which will use the profile. In
other words, the same QC profile can have different values when applied to different ships, according to their priority or
importance.
We can also include productivity losses due to quay crane interference, recently studied by Meisel and Bierwirth (2009),
in the definition of the feasible set of profiles. Indeed, we can use the approach suggested by the authors to compute, for each
profile, the actual quay crane productivity instead of the theoretical one.
In order to improve understanding of the QC profile concept, and its relation with the integration between Berth and QC
Allocation planning, we provide in Fig. 1 an example of such a plan. The example is for the scheduling and assignment of five
vessels to three berths over a time horizon of eight working shifts. Consider, for instance, the Ship 1: it berths at shift 1, and
three QCs are allocated to it for carrying out operations during the same shift; next, at working shifts 2 and 3, Ship 1 remains
berthed, but one QC is de-allocated, with only two QCs remaining allocated to the ship. At the end of shift 3 operations ter-
minate and the ship is released.
When loading (or unloading) a vessel, the containers must be at (or allocated to) yard positions close enough to the vessel
berthing point to maintain the required speed of quay crane operation. Usually, at the Medcenter Container Terminal (MCT)
of the port of Gioia Tauro, a yard position is evaluated as satisfyingly close to a berth if the distance along the quay axis is less
than 600 m. This maximal close distance value can be lowered for higher priority workloads. Furthermore, when we estimate
yard-related transshipment costs induced by berth allocation, we do not consider the real yard position of the loading and
unloading containers. In fact, we assume that the expected travelled distance along the quay axis is given by the distance
between the incoming and outgoing berths. If this distance is lower than the threshold value of 600 m, then a container will
likely move from the quay to its assigned yard position when unloading and from this yard position to the quay when load-
ing. However, in a large transshipment terminal, such as the one at the Gioia Tauro port, the distance between the unloading
berth and the loading one is often larger than 600 m. Therefore, containers are moved before the arrival of the outgoing ves-
sel from their current yard positions to new ones closer to the outgoing berth. This process is called housekeeping and re-
quires a dedicated management in order to accommodate operational constraints like the capacity of the yard positions,
the maximum container handling workload for a given work shift, etc. In synthesis, the yard management deals with a dy-
namic allocation of containers through their duration-of-stay inside the terminal, see Moccia et al. (2009). A rule motivated
by cost minimization enforces that whenever the distance along the quay axis is larger than 1100 m, the yard-to-yard trans-
fer is operated by deploying multi trailer vehicles instead of straddle carriers. Therefore, we have a yard cost function that
depends upon the distance between the incoming and outgoing berths according to three transport modalities:
the distance is below 600 m: no housekeeping is performed, the unitary transport cost, euro/(meter container), depends
upon straddle carriers cost figures only;
the distance is between 600 and 1100 m: a housekeeping process is activated by deploying straddle carriers only, how-
ever, we face a transport cost larger than in the previous distance range;
the distance is larger than 1100 m: the housekeeping is performed by using the less expensive multi trailer vehicles
(higher capacity than the straddle carriers).
The qualitative pattern of this piecewise linear cost function is given in Fig. 2, where we indicate by SC the direct transfer
with straddle carriers, by HK SC the housekeeping with straddle carriers, and by HK MT the housekeeping with multi trailer
vehicles.
In this section we present a mixed integer quadratic programming formulation for the TBAP with QCs assignment. Input
data for this problem are:
k
We define a graph Gk ¼ ðV k ; A Þ 8k 2 M, where V k ¼ N [ foðkÞ; dðkÞg, with oðkÞ and dðkÞ additional vertices representing
berth k, and Ak # V k V k . The following decision variables are defined:
xkij 2 f0; 1g 8k 2 M; 8ði; jÞ 2 Ak , set to 1 if ship j is scheduled after ship i at berth k, and 0 otherwise;
yki 2 f0; 1g 8k 2 M; 8i 2 N, set to 1 if ship i is assigned to berth k, and 0 otherwise;
chi 2 f0; 1g 8h 2 H; 8i 2 N, set to 1 if ship i arrives at time step h, and 0 otherwise;
kpi 2 f0; 1g 8p 2 Pi ; 8i 2 N, set to 1 if ship i is served by the profile p, and 0 otherwise;
qph
i 2 f0; 1g 8p 2 P i ; 8h 2 H; 8i 2 N, set to 1 if ship i is served by profile p and arrives at time step h, and 0 otherwise;
T ki P 0 8k 2 M; 8i 2 N, representing the berthing time of ship i at the berth k, i.e. the time when the ship moors;
T koðkÞ P 0 8k 2 M, representing the starting operation time of berth k, i.e. the time when the first ship moors at the berth;
T kdðkÞ P 0 8k 2 M, representing the ending operation time of berth k, i.e. the time when the last ship departs from the berth.
G. Giallombardo et al. / Transportation Research Part B 44 (2010) 232–245 237
Fig. 2. Yard costs according to the distance between the incoming and outgoing berths.
X
s:t: yki ¼ 1 8i 2 N; ð2Þ
k2M
X
xkoðkÞ;j ¼ 1 8k 2 M; ð3Þ
j2N[fdðkÞg
X
xki;dðkÞ ¼ 1 8k 2 M; ð4Þ
i2N[foðkÞg
X X
xkij xkji ¼ 0 8k 2 M; 8i 2 N; ð5Þ
j2N[fdðkÞg j2N[foðkÞg
X
xkij ¼ yki 8k 2 M; 8i 2 N; ð6Þ
j2N[fdðkÞg
X p p
T ki þ t i ki T kj 6 1 xkij M1 8k 2 M; 8i 2 N; 8j 2 N [ fdðkÞg; ð7Þ
p2P i
T koðkÞ T kj 6 1 xkoðkÞ;j M2 8k 2 M; 8j 2 N; ð8Þ
ai yki 6 T ki 8k 2 M; 8i 2 N; ð9Þ
T ki 6 bi yki 8k 2 M; 8i 2 N; ð10Þ
ak 6 T koðkÞ 8k 2 M; ð11Þ
k
T kdðkÞ 6 b 8k 2 M; ð12Þ
X p
ki ¼ 1 8i 2 N; ð13Þ
p2P i
X X
chi ¼ kpi 8i 2 N; 8s 2 S; ð14Þ
h2Hs p2P si
X h
T ki b 6 1 chi M3 8h 2 H; 8i 2 N; ð15Þ
k2M
X
ah T ki 6 1 chi M4 8h 2 H; 8i 2 N; ð16Þ
k2M
qph p h
i P ki þ ci 1 8h 2 H; 8i 2 N; 8p 2 Pi ; ð17Þ
XX X
h
pðhuþ1Þ
6 Q h 8h 2 H s ;
qpu
i qi ð18Þ
i2N p2P i u¼maxfht p þ1;1g
i
238 G. Giallombardo et al. / Transportation Research Part B 44 (2010) 232–245
For each time step h ¼ 1; . . . 8, the corresponding constraint in (18) counts the number of active quay cranes. Let us consider
the case h ¼ 3: the index u changes its range for each vessel, because, starting from h ¼ 3, it goes backwards until the begin-
ning of the profile. Therefore, we have:
i¼1 u ¼ 1; 2; 3
i¼2 u ¼ 1; 2; 3
i¼3 u ¼ 2; 3
i¼4 u ¼ 1; 2; 3
i¼5 u ¼ 1; 2; 3
We remark that vessels i ¼ 2; 4 do not contribute to the sum, since qpu pu
2 ¼ q4 ¼ 0 8u ¼ 1; 2; 3 and this is coherent with the
plan. For the remaining vessels, qpu
i is not zero only for one value u
:
pð31þ1Þ
i ¼ 1 u ¼ 1 ) q1 ¼ qp3
1 ¼ 2
pð32þ1Þ
i¼3 u ¼2)
q3 ¼ qp2
3 ¼ 5
pð33þ1Þ
i ¼ 5 u ¼ 3 ) q5 ¼ qp1
5 ¼ 3
qp3 p2 p1
1 þ q3 þ q5 ¼ 2 þ 5 þ 3 ¼ 10
which is indeed the total number of quay cranes which are active at time step h ¼ 3.
Finally, we observe that the TBAP formulation (1)–(24) can be interpreted as a Multi-Depot Vehicle Routing Problem with
Time Windows (MDVRPTW), see e.g. Cordeau et al. (2005), with an additional quadratic component in the objective function
and side constraints.
The quadratic objective function (1) can be linearized by defining an additional decision variable
zkw k w kw k
ij 2 f0; 1g 8i; j 2 N; 8k; w 2 M, which is equal to 1 if yi ¼ yj ¼ 1 and 0 otherwise. Variables zij are linked to variables yi
by the following additional constraints:
G. Giallombardo et al. / Transportation Research Part B 44 (2010) 232–245 239
XX
zkw
ij ¼ g ij 8i; j 2 N; ð25Þ
k2K w2K
zkw k
ij 6 yi 8i; j 2 N; 8k; w 2 M; ð26Þ
zkw
ij 6 yw
j 8i; j 2 N; 8k; w 2 M; ð27Þ
Solving the TBAP model with a general-purpose solver is difficult, using either the MIQP or MILP formulation, as shown by
computational results in Section 5. A specialized heuristic is, therefore, needed. We propose a two-level heuristic algorithm
for solving the TBAP, which is illustrated in this section.
Our heuristic is organized in two stages: first, we identify a QC profiles’ assignment for the ships; second, we solve the
resulting berth allocation problem for the given QC assignment. This procedure is repeated for several QC profiles, which
are chosen, iteration by iteration, using the traditional reduced costs arguments of mathematical programming. A scheme
of the heuristic algorithm for TBAP is outlined in Fig. 3.
The initialization consists of assigning a QC profile to each ship. The maximum value profile is chosen for each ship (ties
are broken arbitrarily). This is equivalent to assign binary values to variables k such that Eq. (13) are satisfied. Once the first
QC profiles’ assignment has been done, the two-level procedure starts.
Given a QC assignment, the TBAP reduces to the berth allocation problem, with additional constraints due to the QC total
capacity. We developed a tabu search algorithm which solves the berth allocation problem (BAP) (step 1 in Fig. 3), aiming to
minimize the yard-related transshipment housekeeping costs:
1 X X kX X
y fij dkw yw
j : ð29Þ
2 i2N k2M i j2N w2M
We remark that we take into account only the quadratic term of the TBAP objective function in (1) since, for a given QC
profiles’ assignment, the total value of profiles is constant. The tabu search algorithm for the BAP is illustrated in Section 4.1.
In step 2, the QC profiles’ assignment vector is updated. The new set of profiles is determined using the reduced costs of
variables k, whose estimation is illustrated in Section 4.2.
Our tabu search heuristic is an adaptation of the one of Cordeau et al. (2005) for the OBAP. However, while in Cordeau
et al. (2005) the function to be minimized is the weighted sum for every ship of the service time in the port, our heuristic
minimizes the yard-related housekeeping costs generated by the flows of containers exchanged between vessels. Another
difference is the handling of the side constraints concerning the QC availability for a given assignment of QC profiles (vector
k), our tabu search must take into account the QC capacity constraints (18).
Denote by S the set of solutions that satisfy constraints (2)–(9) and (11). The heuristic explores the solution space by mov-
ing at each iteration from the current solution s to the best solution in its neighborhood NðsÞ. Each solution s 2 S is repre-
sented by a set of m berth sequences such that every ship belongs to exactly one sequence. This solution may, however,
violate the time window constraints associated with the ships and the berths, and the QC availability. The time window con-
straint on ship i on a berth k is violated if the arrival time T ki of the ship is larger than the time window’s upper bound bi .
Berthing before ai is not allowed; in other words, T ki P ai . Similarly, the time window of berth k is violated when the com-
k
pletion time of a ship i assigned to berth k is larger than the berth time window’s upper bound b .
Let cðsÞ denote the cost of solution defined in (29), and let w1 ðsÞ denote the total violation of ships’ time window con-
straints, equal to the sum of the violations on the n ships. We indicate as w2 ðsÞ the total violation of berths’ time window
constraints, equal to the sum of the violations on the m berths. Finally, let w3 ðsÞ be the total violation of QC availability
for each time step of the planning horizon. Solutions are then evaluated by means of a penalized cost function
f ðsÞ ¼ cðsÞ þ a1 w1 ðsÞ þ a2 w2 ðsÞ þ a3 w3 ðsÞ, where the a values are positive parameters. By dynamically adjusting the value
of these parameters, the relaxation mechanism facilitates the exploration of the search space and is particularly useful for
tightly constrained instances.
The tabu search method is based on the definition of attributes used to characterize the solutions of S. They are also used
to control tabu tenures and to implement a diversification strategy. An attribute set BðsÞ ¼ fði; kÞ: ship i is assigned to berth
kg is associated to each solution s 2 S. The neighborhood NðsÞ of a solution s is defined by applying a simple operator that
0 0
removes an attribute ði; kÞ from BðsÞ and replaces it with another attribute ði; k Þ, where k – k . When ship i is removed from
0
berth k, the sequence is simply reconnected by linking the predecessor and successor of the ship. Insertion in sequence k is
then performed between two consecutive ships so as to minimize the value of f ðsÞ. When a ship i is removed from berth k, its
reinsertion in that berth is forbidden for the next h iterations by assigning a tabu status to the attribute ði; kÞ.
An aspiration criterion allows the revocation of the tabu status of an attribute if that would allow the search process to
reach a solution of smaller cost than that of the best solution identified having that attribute. To diversify the search, any
solution s 2 NðsÞ such that f ðsÞ P f ðsÞ is penalized by a factor proportional to the addition frequency of its attributes, and
by a scaling factor. More precisely, let nik be the number of times attribute ði; kÞ has been added to the solution during
the process and let f be the number of the current iteration. A penalty pðsÞ ¼ bcðsÞnik =f is added to f ðsÞ. The scaling factor
cðsÞ introduces a correction to adjust the penalties with respect to the total solution cost. Finally, the parameter b is used
to control the intensity of the diversification. These penalties have the effect of driving the search process toward less ex-
plored regions of the search space. For notational convenience, assume that pðsÞ ¼ 0 if f ðsÞ < f ðsÞ.
In order to generate a starting solution, the algorithm assigns the ships to the berths at random. This initial solution is
constructed by relaxing the time window and QC availability constraints, and, therefore, it is usually infeasible. However,
this is not an issue for the tabu search heuristic.
The search starts from this initial solution and selects, at each iteration, the best non-tabu solution s 2 NðsÞ. After each
iteration, the value of parameters a1 ; a2 , and a3 are modified by a factor 1 þ d, where d > 0. For example, if the current solu-
tion is feasible with respect to ships’ time window constraints, the value of a1 is divided by 1 þ d; otherwise, it is multiplied
by 1 þ d. Analogously for the berths’ time window and QC availability constraints, i.e. parameters a2 and a3 , respectively.
This process is repeated for g iterations and the best feasible solution s is updated throughout the search.
The profiles’ updating procedure represents step 2 in the algorithm’s scheme illustrated in Fig. 3. It relies on the MILP
formulation for TBAP illustrated in Section 3.4. The basic idea of this step is to use the information of reduced costs in order
to be able to update vector k of QC profiles’ assignment in a smart way.
Let s ¼ ½ ; T be the BAP solution provided by tabu search for a given QC profile assignment
x; y k. In particular, we are inter-
ested in reduced costs of variables k, which we denote ~cðkÞ. We remark that a BAP solution plus a QC assignment represent a
feasible solution for TBAP. At each iteration, we solve the linear relaxation of the MILP formulation, with the additional
constraints:
x 6 x 6 x þ ; ð30Þ
6y6y
y þ ; ð31Þ
T 6 T 6 T þ ; ð32Þ
k 6 k 6 k þ : ð33Þ
As remarked, e.g., by Desrosiers and Lübbecke (2005), the shadow prices of constraints (30)–(33) are the reduced costs of
original variables x; y; T and k. At each iteration, we identify the kpi variable with the maximum reduced cost:
ði ; p Þ ¼ arg max f~cðkpi Þg: ð34Þ
i2N;p2Pi
If ~c kpi > 0, profile p is assigned to vessel i , i.e. kpi ¼ 1 and kpi ¼ 0 8p – p . We remark that this update, concerning a single
vessel, results in a new vector k of QC profiles’ assignment, which differs from the previous one only for two components.
Step 2 of the algorithm is now completed. The updated QC profiles’ assignment vector is passed back to the BAP tabu search
(step 1) and a new BAP solution is computed.
The whole procedure terminates when all reduced costs are non-positive, or other additional stopping criteria are
reached, such as the maximum number of iterations or the time limit.
In order to prevent cycles, a tabu mechanism has been implemented, keeping track of the last w updates in the form ði; pÞ.
The tabu list (TL) is updated at each iteration and its length has been fixed to w ¼ 0:5n p , where p ¼ maxi2N jPi j. According to
this mechanism, the pair ði ; p Þ is, therefore, chosen as
G. Giallombardo et al. / Transportation Research Part B 44 (2010) 232–245 241
ði ; p Þ ¼ arg max f~cðkpi Þg:
i2N;p2P i :ði;pÞRTL
It may happen that the tabu search returns a BAP solution which is infeasible for TBAP with respect to time windows and/
or the QC availability. In this case the profiles’ update via mathematical programming cannot be performed. We, therefore,
update the set of profiles by randomly assigning a new QC profile to each ship.
5. Computational results
In this section we first illustrate how realistic test instances have been generated, then we present results obtained
through a general-purpose solver and we compare them with our heuristic algorithm.
Our tests are based on real data provided by MCT. We had access to historical berth allocation plans and quay cranes
assignment plans concerning about 60 vessels per week over a time horizon of 1 month; specific information on vessels such
as the arrival time and the total number of containers to be handled were also provided. Furthermore, data referring to the
flows of containers exchanged between ships as well as a study on the yard-related transshipment costs were available.
Instances generated to validate our models rely on these real data. The quay, which is 3395 m long, is partitioned in 13
berthing points, which are equipped with 25 quay cranes (22 gantry cranes and 3 mobile cranes). The matrix of distances
½dkw is a 13 13 matrix which takes into account the costs estimated by the terminal to move containers between two ber-
thing positions. Several matrices of flows ½fij are generated according to the distributions of containers reported in the his-
torical data. As usual, we distinguish between feeders and mother vessels: the traffic volume is mostly influenced by the
proportion between these two classes, since mother vessels present a number of loading/unloading containers on average
higher than feeders. Time windows for the ships’ arrival are generated according to the historical data. Berths are assumed
to be available for the whole time horizon, which we set to 1 or 2 weeks. A working day is divided in 4 shifts of 6 h each, for a
total of 56 time steps of 3 h.
The sets of feasible profiles have been synthetically generated in accordance with operational rules and good practices in
use at the MCT terminal. As illustrated in Table 1, we fix a set of parameters for each ship class to which a profile must com-
ply with in order to be feasible: namely, the minimum and the maximum number of QCs to be assigned to each vessel per
shift as well as the minimum and the maximum handling time (HT) allowed for each class. We use a crane productivity of 24
containers per hour and we, therefore, obtain, per each class, a minimum and a maximum number of containers (column
‘‘volume” in the table): vessels’ traffic volumes must comply with these ranges, according to the class they belong to. Fur-
thermore, for all classes, a variation of at most 1 QC is allowed between a shift and the subsequent; profiles can start either at
the beginning of the shift or in the middle of the shift.
Once the whole feasible set has been generated for each class, profiles are assigned to vessels according to the QC hours
they need to be operated. At this point, a monetary value is associated to the couple (vessel, profile) with respect to the num-
ber of containers to be handled. This value is then adjusted by taking into account the profile’s length and the utilized re-
sources with respect to the average case.
To validate our model, we considered six classes of instances:
For each class, we generated 12 instances, with high (H) and low (L) traffic volumes. Each scenario is tested with a set of
¼ 10; 20; 30 feasible profiles for each ship. We remark that, by construction, instances of size p
p ¼ 10 are included in in-
¼ 20, which are included in instances of size p
stances of size p ¼ 30. Thus, any feasible solution for p
¼ 10 is also feasible
¼ 20; 30 and so on.
for p
Table 1
Parameters for the profile set’s generation.
The MIQP and MILP formulations have been tested with CPLEX 10.2, with emphasis on the feasibility of the solution.
Time limit for instances 10 3 is 1 h; instances 20 5 and 30 5 have a time limit of 2 h; instances 40 5, 50 8,
60 13 have a time limit of 3 h.
Results are illustrated in Table 2. We report only instances for which CPLEX has found a feasible solution, at least. Sur-
prisingly, no feasible solution was found for classes 30 5, 50 8 and 60 13; however, an upper bound is always provided.
The objective function value is scaled to 100 with respect to the upper bound via the formula:
obj 100
scaled obj ¼ ð35Þ
UB
A value of 100 means that the solution is certified to be optimal.
Within class 10 3, 3 out of 12 instances are solved at optimum; both MILP and MIQP formulations provide near-optimal
solutions, with an average of 98.44 and 99.11, respectively.
Within class 20 5, a feasible solution is found for 4 instances out of 12 with the MILP formulation, while, using the MIQP
formulation, we get a feasible solution only for two instances. The quality of the solution is lower, with an average of 93.87
for MILP and of 96.70 for MIQP.
Class 40 5 is only solved using the MILP formulation; a feasible solution is found for 4 instances out of 12, with an aver-
age quality of the solution of 94.73.
With respect to the upper bounds, we remark that the MILP formulation provides far better upper bounds than MIQP, as
illustrated in Table 3.
The heuristic has been implemented in C++ using GLPK 4.31 and tested on the same set of instances.
Experiments have been run for n p iterations and a time limit of 1 h for classes 10 3, 20 5, 30 5 and 3 h for classes
40 5, 50 8, 60 13. The internal tabu search has a maximum of g ¼ 30 n iterations, and the other parameters are set as
follows:
Table 2
Scaled objective function of the best feasible solutions found by CPLEX in the allowed time limit.
Table 3
Upper bounds provided by CPLEX using MILP and MIQP formulations.
Results are compared to the best solution found by CPLEX for either the MILP or MIQP formulation and illustrated in Ta-
bles 4–6. The heuristic is able to find feasible solutions in 70 out of 72 instances, whereas CPLEX succeeds at finding feasible
solutions on only 20 of the smaller instances. The two instances where the heuristic fails at finding a feasible solution are
Table 4
Heuristic’s computational results on classes 10 3 and 20 5.
Instance CPLEX HEUR Time (sec) Instance CPLEX HEUR Time (sec)
10 3 20 5
H1_10 99.17 98.52 7 H1_10 – 97.26 81
H1_20 97.96 98.36 15 H1_20 94.33 97.19 172
H1_30 98.76 98.33 27 H1_30 93.74 97.37 259
H2_10 99.26 98.92 7 H2_10 – 97.27 82
H2_20 96.97 98.48 16 H2_20 96.66 97.38 173
H2_30 96.79 98.17 28 H2_30 – 97.26 274
L1_10 100.00 99.12 6 L1_10 – 97.30 74
L1_20 100.00 99.01 15 L1_20 – 97.25 158
L1_30 99.99 98.29 26 L1_30 – 97.06 254
L2_10 99.63 98.92 6 L2_10 – 97.55 80
L2_20 99.42 98.68 15 L2_20 96.74 97.39 170
L2_30 100.00 98.22 27 L2_30 – 97.25 295
Table 5
Heuristic’s computational results on classes 30 5 and 40 5.
Instance CPLEX HEUR Time (sec) Instance CPLEX HEUR Time (sec)
30 5 40 5
H1_10 – 95.67 340 H1_10 – 97.38 1104
H1_20 – 95.31 677 H1_20 – 97.38 2234
H1_30 – 95.54 1009 H1_30 – 97.25 3387
H2_10 – 95.88 316 H2_10 – 97.40 1095
H2_20 – 95.81 684 H2_20 – 97.33 2198
H2_30 – 95.30 969 H2_30 – 97.27 3296
L1_10 – 96.55 324 L1_10 94.92 97.41 1421
L1_20 – 96.43 652 L1_20 94.47 97.14 2996
L1_30 – 96.18 966 L1_30 – 96.20 4862
L2_10 – 95.68 308 L2_10 – 97.41 1382
L2_20 – 95.12 614 L2_20 94.93 97.34 3144
L2_30 – – 920 L2_30 94.61 96.60 4352
Table 6
Heuristic’s computational results on classes 50 8 and 60 13.
Instance CPLEX HEUR Time (sec) Instance CPLEX HEUR Time (sec)
50 8 60 13
H1_10 – 96.52 3291 H1_10 – 95.40 6332
H1_20 – 96.37 6020 H1_20 – 95.07 10 809
H1_30 – 96.21 9432 H1_30 – 94.76 10 807
H2_10 – 96.03 3066 H2_10 – 95.54 6397
H2_20 – 95.64 6180 H2_20 – 94.11 10 803
H2_30 – 95.16 9501 H2_30 – – 10 806
L1_10 – 95.97 2752 L1_10 – 95.67 5807
L1_20 – 96.04 6467 L1_20 – 95.40 10 803
L1_30 – 95.80 9119 L1_30 – 94.45 10 806
L2_10 – 96.18 3157 L2_10 – 95.63 5986
L2_20 – 95.96 5857 L2_20 – 95.64 10 809
L2_30 – 96.27 8783 L2_30 – 95.34 10 804
244 G. Giallombardo et al. / Transportation Research Part B 44 (2010) 232–245
characterized by a high number of profiles per vessel ðp ¼ 30Þ. We observe that with a lower number of profiles per vessel
¼ 10, and p
(p ¼ 20) the heuristic always succeeds in reaching feasibility. Furthermore, our algorithm is up to two orders of
magnitude faster, especially on small instances.
Class 10 3 is the only one where CPLEX performs slightly better than the heuristic, with an average of 99.00 and 98.59,
respectively, and three optimums found by CPLEX. However, the heuristic is much faster, solving the problem in less than
30 s against the time limit of 1 h set for CPLEX.
Class 20 5 is always solved by the heuristic in less then 5 min, with an average quality of the solution of 97.29, while
CPLEX only solves four instances out of 12, in 2 h, with lower quality (95.37 on average).
Remarkably, our heuristic performs very well also on the instances of larger size, where CPLEX generally fails. For the
solved instances the quality of the solutions is always greater than 94.11 (instance 60 13:H2_20), with an average value
of 96.06.
We have studied the integration, at the tactical level, of the berth allocation problem with the assignment of quay cranes
from the point of view of a container terminal, in the context of a negotiation process with shipping lines. We have charac-
terized this new decision problem and illustrated the concept of QC assignment profiles. Two mixed integer programming
formulations have been presented, with a quadratic and a linearized objective function, respectively. Both models have been
validated on instances based on real data using a commercial solver. These tests show that the problem is hardly solvable
already on small instances; hence we have tackled the computational complexity of TBAP by devising a two-level heuristic
algorithm able to provide good feasible solutions in a reasonable amount of time.
As a next step, we are interested in obtaining good upper bounds on the optimal solution. Decomposition methods seem
to be a promising way to face the problem. In fact, we are considering a reformulation based on Dantzig–Wolfe decompo-
sition and column generation, and an incremental approach based on Lagrangian dual, in order to exploit the structure of
TBAP and its relation with the BAP formulation, aiming at saving computational time by solving subproblems via inexact
or truncated methods.
With respect to the application, we remark that the main contribution is represented by the simultaneous control of the
terminal on critical resources such as berths and quay cranes, in addition to the added value given by the integration, in a
more direct way, of different terminal costs.
Acknowledgements
We would like to thank Carmine Crudo and Vincenzo Perri at Medcenter Container Terminal S.p.a. in Gioia Tauro (Italy)
for many helpful discussions on the subject. The work of G. Giallombardo and L. Moccia has been partially supported by the
Italian Ministry of University through the research grant ‘‘LOGNET - PROMIS: Logistic Process Management and Intelligence
System.”
References
Cordeau, J.F., Gaudioso, M., Laporte, G., Moccia, L., 2006. A memetic heuristic for the generalized quadratic assignment problem. INFORMS Journal on
Computing 18 (4), 433–443.
Cordeau, J.F., Gaudioso, M., Laporte, G., Moccia, L., 2007. The service allocation problem at the Gioia Tauro maritime terminal. European Journal of
Operational Research 176 (2), 1167–1184.
Cordeau, J.F., Laporte, G., Legato, P., Moccia, L., 2005. Models and tabu search heuristics for the berth-allocation problem. Transportation Science 39 (4), 526–
538.
Crainic, T.G., Kim, K.H., 2007. Intermodal transportation. In: Barnhart, C., Laporte, G. (Eds.), Transportation, Handbooks in Operations Research and
Management Science, vol. 14. Elsevier, pp. 467–537.
Dai, J., Lin, W., Moorthy, R., Teo, C.P., 2007. Berth allocation planning optimization in container terminals. In: Tang, C.S., Teo, C.P., Wei, K.K. (Eds.), Supply
Chain Analysis, International Series in Operations Research & Management Science, vol. 119. Springer, pp. 69–104.
Desrosiers, J., Lübbecke, M.E., 2005. A primer in column generation, In: Desaulniers, G., Desrosiers, J. Solomon, M. (Eds.), Column Generation, GERAD, pp. 1–
32 (Chapter 1).
Hahn, P., Kim, B.J., Guignard, M., Smith, J., Zhu, Y.R., 2008. An algorithm for the generalized quadratic assignment problem. Computational Optimization and
Applications 40 (3), 351–372.
Imai, A., Chen, H.C., Nishimura, E., Papadimitriou, S., 2008. The simultaneous berth and quay crane allocation problem. Transportation Research Part E 44 (5),
900–920.
Imai, A., Nagaiwa, K., Chan, W.T., 1997. Efficient planning of berth allocation for container terminals in Asia. Journal of Advanced Transportation 31 (1), 75–
94.
Imai, A., Nishimura, E., Hattori, M., Papadimitriou, S., 2007. Berth allocation at indented berths for mega-containerships. European Journal of Operational
Research 179 (2), 579–593.
Imai, A., Nishimura, E., Papadimitriou, S., 2001. The dynamic berth allocation problem for a container port. Transportation Research Part B 35 (4), 401–417.
Imai, A., Nishimura, E., Papadimitriou, S., 2003. Berth allocation with service priority. Transportation Research Part B 37 (5), 437–457.
Imai, A., Sun, X., Nishimura, E., Papadimitriou, S., 2005. Berth allocation in a container port: using a continuous location space approach. Transportation
Research Part B 39 (3), 199–221.
Kim, K.H., Moon, K.C., 2003. Berth scheduling by simulated annealing. Transportation Research Part B 37 (6), 541–560.
Lim, A., 1998. The berth planning problem. Operations Research Letters 22 (2-3), 105–110.
Meisel, F., Bierwirth, C., 2006. Integration of berth allocation and crane assignment to improve the resource utilization at a seaport container terminal. In:
Operations Research Proceedings 2005, Springer, pp. 105–110.
G. Giallombardo et al. / Transportation Research Part B 44 (2010) 232–245 245
Meisel, F., Bierwirth, C., 2009. Heuristics for the integration of crane productivity in the berth allocation problem. Transportation Research Part E 45 (1),
196–209.
Moccia, L., Cordeau, J.-F., Monaco, M.F., Sammarra, M., 2009. A column generation heuristic for a dynamic generalized assignment problem. Computers &
Operations Research 36 (9), 2670–2681.
Monaco, M.F., Moccia, L., Sammarra, M., 2009. Operations research for the management of a transhipment container terminal. The Gioia Tauro case.
Maritime Economics & Logistics 11 (1), 7–35.
Monaco, M.F., Sammarra, M., 2007. The berth allocation problem: a strong formulation solved by a lagrangean approach. Transportation Science 41 (2), 265–
280.
Moorthy, R., Teo, C.P., 2006. Berth management in container terminal: the template design problem. OR Spectrum 28 (4), 495–518.
Nishimura, E., Imai, A., Papadimitriou, S., 2001. Berth allocation planning in the public berth system by genetic algorithms. European Journal of Operational
Research 131 (2), 282–292.
Park, Y.M., Kim, K.H., 2003. A scheduling method for berth and quay cranes. OR Spectrum 25 (1), 1–23.
Stahlbock, R., Voss, S., 2008. Operations research at container terminals: a literature update. OR Spectrum 30 (1), 1–52.
Steenken, D., Voss, S., Stahlbock, R., 2004. Container terminal operation and operations research – a classification and literature review. OR Spectrum 26 (1),
3–49.
UNCTAD, 2008. Review of Maritime Transport, Technical Report, United Nations, New York and Geneva.
Vis, I.F.A., de Koster, R., 2003. Transshipment of containers at a container terminal: an overview. European Journal of Operational Research 147 (1), 1–16.
Wang, F., Lim, A., 2007. A stochastic beam search for the berth allocation problem. Decision Support Systems 42 (4), 2186–2196.