You are on page 1of 26

Accepted Manuscript

An Integrated Quay Crane Assignment and Scheduling Problem

Effrosyni Theodorou, Ali Diabat

PII: S0360-8352(13)00407-5
DOI: http://dx.doi.org/10.1016/j.cie.2013.12.012
Reference: CAIE 3616

To appear in: Computers & Industrial Engineering

Received Date: 12 June 2013


Revised Date: 17 October 2013
Accepted Date: 20 December 2013

Please cite this article as: Theodorou, E., Diabat, A., An Integrated Quay Crane Assignment and Scheduling Problem,
Computers & Industrial Engineering (2014), doi: http://dx.doi.org/10.1016/j.cie.2013.12.012

This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers
we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and
review of the resulting proof before it is published in its final form. Please note that during the production process
errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
An Integrated Quay Crane Assignment and Scheduling Problem

Effrosyni Theodorou, Ali Diabat


Engineering Systems & Management, Masdar Institute of Science & Technology, Abu Dhabi, UAE
Emails: etheodorou@masdar.ac.ae, adiabat@masdar.ac.ae
An Integrated Quay Crane Assignment and Scheduling Problem

Ali Diabat*, Effrosyni Theodorou


Department of Engineering Systems and Management, Masdar Institute of Science and
Technology, Abu Dhabi, United Arab Emirates
Corresponding author: adiabat@masdar.ac.ae

Abstract: As maritime container transport is developing rapidly, the need arises for efficient
operations at container terminals. One of the most important determinants of container handling
efficiency is the productivity of quay cranes, which are responsible for unloading and loading
operations for container vessels. For this reason, the Quay Crane Assignment Problem (QCAP)
and the Quay Crane Scheduling Problem (QCSP) have received increasing attention in the
literature and the present paper deals with the integration of these interrelated problems. A
formulation is developed for the Quay Crane Assignment and Scheduling Problem (QCASP),
which accounts for crane positioning conditions and a Genetic Algorithm (GA) is developed to
solve the QCASP. Both the model formulation and the solution methodology are presented in
detail and computational analysis is conducted in order to evaluate the performance of the
proposed GA. The results obtained from the GA will be compared with the results from an exact
technique, thus providing complete information about the performance of the heuristic in terms
of solution quality.

Keywords: Quay Crane Assignment, Quay Crane Scheduling, Genetic Algorithms, Container
Terminals, Maritime Operations

1. Introduction

An increase in the number of transshipped container goods has been marked over the recent
decades, due to globalization. Container terminals are called to meet the challenge of
accommodating very large vessels, which are capable of carrying 10,000-12,000 twenty-foot
equivalent container units (TEUs). A systematic approach to container terminal optimization
therefore becomes necessary in order to overcome this challenge [1].

As far as container terminal operations are concerned, they can be divided into quayside and yard
side operations, as illustrated in Figure 1. On the one hand, quayside operations involve
allocating berths to arriving ships, known as the Berth Allocation Problem (BAP), the
assignment of cranes to ships, known as the Quay Crane Assignment Problem (QCAP) as well as
the sequencing of quay crane operations, known as the Quay Crane Scheduling Problem (QCSP).
On the other hand, yard side operations include the allocation of containers to certain storage
locations, the scheduling of container transporting vehicles and the scheduling yard cranes for
optimal container storage sequence [1].

Figure 1 – Schematic representation of container terminal layout


Source: ‘The Quay Crane Scheduling Problem with Time Windows’, Frank Meisel

Seeing as Quay Cranes (QCs) are the most expensive equipment utilized at container terminals,
their performance largely affects the container throughput and handling efficiency [2]. QCs
move on a single rail track alongside the quay of the port, as depicted in Figure 1. As soon as a
ship is positioned at the berth, QCs are responsible for the unloading and loading of containers
from and to the vessel. The planning of QC operations is part of the quayside operations of a
container terminal and consists of the QCAP and QCSP. These problems are frequently
integrated, as they are interrelated.

The QCAP is basically an assignment problem which considers additional parameters, such as
service agreements contracted with vessel operators, dictating a minimum or maximum number
of cranes that can be assigned to a vessel, the available QCs at the port, the number of vessels
berthed within a given planning horizon, the container workload on each vessel, whether or not
cranes are allowed to perform handling operations on more than one ship within a planning
horizon, etc.

The QCSP is a scheduling problem, more complicated than the QCAP, as it decides upon the
sequencing of the QCs’ handling tasks and the points in time at which these are performed. An
important aspect of the QCSP is the fact that positioning conditions must be enforced at all
times. More specifically, since cranes travel on a single rail, they are not allowed to cross one
another. These are known as the non-crossing constraints. Furthermore, assuming that cranes are
indexed based on their position, middle-indexed cranes cannot serve end bays, because again this
would violate the non-crossing conditions. In several models clearance conditions are also
accounted for, in order to prevent adjacent cranes from being positioned too close to one another.
Yard congestion constraints are also considered in certain cases, where it is important to ensure
that there will not be traffic at the yard storage areas at any point in time.

In the current paper, we propose an integrated model for the QCAP and the QCSP, namely the
Quay Crane Assignment and Scheduling Problem (QCASP). The purpose of the model is to
assign cranes to ships that are berthed within a given planning horizon. Furthermore, the model
specifically decides which crane is allocated to which bays and it aims to minimize the time
required for the completion of the handling of the latest ship, i.e. the ship carrying the largest
number of containers, which is expected to take the most time at the berth. This article presents
the implementation of a Genetic Algorithm for solving the QCASP and reports the results of the
computational studies performed for certain problem instances.

The main contribution of this paper is in the integration of the QCAP and QCSP, two interrelated
problems that have mostly been dealt with independently in the literature. Furthermore, the
developed model holds the advantage of simplicity, while at the same time it considers realistic
circumstances, as it accounts for all positioning constraints in order to generate practical
solutions. The disadvantage of the large number of variables is overcome through the use of a
GA specifically developed for this problem. Although heuristics have been largely implemented
in the literature, the present paper thoroughly evaluates the performance of the GA, since it
compares the solution with a solution generated through an exact approach. Whereas most works
cannot guarantee any information about the quality of the solution produced by the meta-
heuristics, in this work it is possible to have this information.

The present paper is structured as follows: Section 2 provides a literature review on the QCSP,
focusing on the models built and the solution approaches developed for these problems; Section
3 contains the detailed problem description and its mathematical formulation, while Section 4
introduces the GA that was developed to solve this specific problem; Section 5 reports the results
of the computational analysis and evaluates the performance of the proposed heuristic, while
Section 6 concludes the article with the important findings of this work, as well as directions and
recommendations for future research on this topic.

2. Literature review

Several models are proposed in the literature for the QCSP and a very useful classification of
these models can be found in the work of Bierwirth and Meisel [3]. As far as the problem
formulation is concerned, the prevalent objective is the minimization of the makespan required to
complete tasks. In the work of Kim and Park [4] the authors minimize the weighted sum of the
makespan and the total completion time but the drawback of their formulation in terms of
constraints is that they do not consider crane clearance conditions, i.e. constraints that ensure that
cranes will be positioned at least certain bays apart, and they only consider the single-ship case.
Clearance conditions were added to the model of Kim and Park [4] by Moccia et. al [5],
rendering the formulation more robust. Both formulations have since been used in numerous
works.

Legato et. al [6] minimize the maximum makespan required to complete the number of existing
tasks. Their MIP formulation allocates quay cranes to tasks and time slots, without considering
ships or bays. Jung et. al [7] employ time windows in which cranes can be assigned to perform a
task; the single ship case is only considered and the authors assume ship-clusters which
containers cannot be loaded into or unloaded from simultaneously. Lee et. al [8] develop a MIP
formulation for the QCSP with handling priority for each ship bay. The objective function is
therefore a minimization function of the sum of the weighted completion times of every ship bay.

Liu et. al [9] formulate an MIP whose objective is to minimize the maximum relative tardiness
of vessel departures. In terms of model assumptions, the authors consider the aggregated
workload of each bay, which is the product of the number of containers to be handled in the bay
and the average processing time per container. As is commonly the case, each vessel is
partitioned into bays, and so is the berth. Clearance constraints between adjacent cranes are
considered, while productivity is assumed identical for all quay cranes and interference amongst
them is ignored.

The early work of Daganzo [10], who first introduced the crane scheduling problem, develops an
exact MIP for the loading of ships, assigning cranes to bays for certain time slots, such that the
overall workload is well balanced for cranes. The objective is the minimization of the aggregate
cost of delay incurred on the vessels, unlike what became prevalent thereafter. Another note on
the author’s formulation is that several important factors are not considered, such as crane
interference and crossing. The work of Zhang and Kim [11] also introduces a different objective
than that seen prevalent in the literature: the aim of their MIP formulation is to minimize the total
number of cycles of QC activities on one ship, rather than to minimize the makespan.
Moghaddam et. al [12] integrate the quay crane scheduling and allocation problem (QCSAP) in
their work. They develop a MIP formulation whose objective is to minimize the total cost of the
proposed model.

Bierwirth and Meisel [13] use the MIP developed by Moccia et. al [5], which is the corrected
version of the model developed by Kim and Park [4]. Later work of Meisel [2], utilizes a
different approach for quay crane scheduling, where the availability of cranes at a vessel is
restricted to certain time windows, as prescribed by a given crane assignment. The problem is
formulated as a MIP with the objective of minimizing the vessel handling time, determined by
the latest completion time of all tasks. Choo et al. [14] propose a MIP for the crane sequencing
problem with entirely new set-covering formulations which allow the authors to solve large-scale
instances. They include clearance and yard congestion constraints, the latter having seldom been
included in the QCSP in previous literature.

In terms of solution methodologies, heuristics are widely employed due to the large number of
variables and high complexity of the discussed problems. Exact techniques have also been
implemented in addition to heuristics. Such is the case in the work of Kim and Park [4]. The
authors propose a branch and bound (B&B) method to obtain the optimal solution of the MIP for
the QCSP, as well as a heuristic search algorithm, the greedy randomized adaptive search
procedure (GRASP), in order to overcome the difficulty of the B&B method. Daganzo [10] also
proposes both an exact and an approximate solution method for crane scheduling.

In the work of Choo et al. [14], the authors solve the MIP single-ship proposed model with the
help of a heuristic approach that produces good results. The model is then reformulated as a
generalized set covering problem and solved exactly by branch-and-price (B&P). For multiship
sequencing, the yard congestion constraints are relaxed in the spirit of Lagrangian relaxation, so
that the problem decomposes by vessel into smaller problems that can be solved by B&P at each
iteration of the subgradient algorithm. The authors observe that computational results vary
considerably but in all cases, the proposed Lagrangian relaxation technique is the recommended
approach in terms of computational efficiency and solution quality for the multiship problems.

For the single-ship case, Guan et. al [15] also develop both heuristic and exact solution
approaches to the problem. More specifically, for small-sized problems the authors employ a
time-space network flow formulation with non-crossing constraints and apply an exact solution
approach to obtain the optimal solution. For medium-sized problem instances they develop a
Lagrangian relaxation approach in order to obtain tight bounds and near-optimal solutions, while
for large-sized instances they develop heuristic techniques. In terms of the Lagrangian relaxation
they adopt the subgradient method to obtain the Lagrangian bound and develop a Lagrangian
relaxation heuristic to guarantee feasibility. The authors concluded that this approach can
provide tighter lower bounds and obtain a feasible solution within a reasonable amount of time.

The optimization framework used by Legato et. al [6] is the A-BEES search method, which
searches for the optimal solution through the feasible region by balancing two phases:
exploration and exploitation. The authors also apply simulated annealing, which is adapted to the
context of the QCSP, in terms of possible moves which respect precedence and availability
constraints. In terms of results, the A-BEES metaheuristic seems promising in quickly providing
cost effective solutions to the practical problem of determining the sub(optimal) assignment
schedule of quay cranes to vessel tasks. Jung et. al [7] employ in the first phase of their heuristic,
a Greedy Randomized Adaptive Search Procedure (GRASP), an iterative randomized sampling
technique which generates a solution at each iteration. The second phase involves an
improvement of the solution constructed in the first phase. In the solution improvement phase,
the constructed solution is locally improved by an exchange operation until no further
improvement is possible. Results demonstrate that the computational time is far too high to be
used in practice, with the improvement phase being most time-consuming, with a marginal
improvement in the quality of the solution.

Liu et. al [9] propose a heuristic decomposition approach to break down the problem into two
smaller, linked models, namely the vessel-level model and the berth-level model. Both models
are formulated as MINLPs, but the authors claim that they require less computational effort
when compared to the MIP with many variables. Computational experiments show that the
proposed approach is effective and efficient. Zhang and Kim [11] develop a heuristic algorithm,
by decomposing the QC scheduling into an intra-stage optimization, which finds the optimal
sequencing of all stacks in one bay, and an inter-stage optimization, which sequences all the
bays. Numerical experiments reveal that the proposed approach found the optimal solution in
most of the cases and greatly outperformed the scheduling methods used by port operators.

Lee et. al in [8] develop a genetic algorithm (GA) to reach near-optimal solutions due to the
large size of the problem. Based on the forty three computational experiments, the authors
conclude that the performance of the GA is satisfactory in solving large size instances.
Moghaddam et. al [12] also employ a GA, due to the complexity of their model and in order to
solve real-size instances of the problem. The obtained results showed a reasonable gap between
the optimal solutions found by a commercial solver and the GA (between 1.9% and 3.5%), while
the GA reaches the near-optimal solution in reasonable time.

Chung and Choy [16] base their formulation on the one developed by Kim and Park [4] and they
propose a modified genetic algorithm for solving the model. They compare their results with a
set of benchmarking data comprising of 43 instances. Their analysis proves that the proposed GA
can achieve results very close to the best known solutions known by other approaches that were
implemented for these instances, such as Tabu Search and Branch-and-Cut. Especially for
smaller problem sizes, the gap between the proposed GA and the best known solution is 0%. For
larger problems the performance of the GA is compromised in terms of optimal results, but
remains attractive due to the lower computational time required.

Bierwirth and Meisel [13] propose a heuristic solution procedure for the model based on that of
Moccia et. al [5], the Branch-and-Bound algorithm being at its core. It is applied for searching a
subset of above average quality schedules and it takes advantage of efficient criteria for
branching and bounding the search with respect to the impact of crane interference. The authors
noted results that were very satisfactory, even compared to recent competing approaches. For
instances of a set of benchmarks with a small number of cranes (two and three) the best known
solutions were found in every case. Also, the computational effort was cut down to fractions as
compared to other methods. Even in larger instances, although not as satisfactory, the algorithm
performed well. The authors attributed the heuristic’s fast performance to the exclusive
consideration of unidirectional schedules, i.e. the movement of all cranes in a single direction
alongside the quay. In later work, Meisel [2] proposes a solution method for the Quay Crane
Scheduling Problem with Time Windows (QCSPTW), that searches the solution space of
unidirectional schedules, based on his findings from previous work [13]. In this paper however,
he concludes that the best unidirectional schedule is not necessarily an optimal solution for a
QCSPTW instance, but the solutions are still of high average quality. Computational results for a
large set of test instances reveal that the proposed heuristic delivers near optimal solutions within
short times.

The present paper formulates the integrated QCAP and QCSP, with the objective of minimizing
the makespan of all vessels. The integration of the two interrelated models is expected to yield
better results than considering these problems independently, since more information is utilized
given the interdependence of these problems. All positioning conditions for quay cranes are
considered; these are the end-bay positioning constraints and the non-crossing constraints, while
clearance conditions are also accounted for through modeling assumptions. This work considers
a multi-ship rather than a single ship case, which can also lead to more useful results because it is
realistic and allows for an improved allocation of available resources. Finally, the employed GA
is benchmarked against an exact solution which allows for clear evaluation of its performance.

3. Modeling the Quay Crane Assignment and Scheduling Problem

This section provides a description for the QCASP, the characteristics of the problem and how
these are modeled in a mathematical formulation. An example is provided to illustrate the
problem and its solution. The final sub-section examines how the input data of the problem is
generated for all problem instances that will be tested and presented in the subsequent section.

3.1. Problem Description

For a given number of ships I berthed within a certain planning horizon and given a number of
available quay cranes K, the aim of the QCASP is to allocate cranes to the bays j of every ship i,
carrying a certain number of containers, cj, with an objective of minimizing the handling time of
the latest ship. By reducing the makespan for the cranes to perform all operations, it is possible
to ensure an early completion time for all ships and an efficient distribution of container
workload amongst port resources.

Certain assumptions have been considered for the specific problem. Firstly, all quay cranes are
assumed identical, and they are indexed sequentially according to increasing positions alongside
the quay. The bays are also indexed sequentially and cranes begin handling the lowest-indexed
bay out of the total bays they are assigned to. This implies that cranes travel in a single direction,
identical for all, in order to enforce positioning constraints and avoid crane interference.
Furthermore, by adopting a unidirectional movement for cranes, clearance conditions are
enforced (cranes will always be positioned certain bays away from other cranes). Since cranes
move on a single rail they are not allowed to cross each other, which leads to the need for non-
crossing constraints. Furthermore, it is possible for one quay crane to be assigned to more than
one ship, which means that cranes can gantry between ships. Only unloading operations are
considered and all containers are assumed identical. Container handling rates for cranes are
identical, measured in containers per crane-hour, while travel times for cranes between bays are
not considered. Finally, the ships that will be handled within the planning horizon are already
berthed and only after their tasks have been completed can a new profile of ships be assigned to
the quay.

3.2. Example

In this section an example is used to demonstrate how solving the integrated QCASP can yield
better results than the traditional sequential approach, where the crane assignment is firstly
solved and used as an input to solve the crane scheduling problem. The graphic illustration of the
problem is presented in Figure 2. In this problem instance there are two ships and three quay
cranes available to handle these ships.

Figure 2 – Graphic Illustration of the QCASP with 2 ships and 3 QCS


In the following tables, the second row contains the indices for the bays of each ship separately,
while the third row creates a single index for all bays. This is possible because, as mentioned in
the model assumptions, the ships and bays are indexed sequentially based on their positions at
the quay. Unifying the bay indices into one index essentially transforms the problem into a
single-ship case, thus simplifying the solution procedure without loss of generality. In row 6 the
total number of containers handled per crane is shown, while the handling time required is shown
in row 7, assuming a rate of 25 containers per hour. Finally, the objective value is presented in
row 8, and it is equal to the greatest handling time required.

Assuming that the first ship carries 85 containers and the second carries 50 containers as
summarized in Table 1, and given that there are three available quay cranes for both ships, the
simple quay crane assignment problem would allocate 2 cranes to the first ship and 1 crane to the
second ship. Assuming a handling rate of 25 containers per crane-hour, this would mean that the
makespan is equal to 2 hours, based on the result of the scheduling problem when taking the
decision of the assignment problem as an input, as shown in Table 1.

Table 1 – Problem data and solution using sequential assignment and scheduling approach,
case 1
1. Ship 1 2
2. Ship Bays 1 2 3 4 5 6 1 2 3 4
3. All Bays 1 2 3 4 5 6 7 8 9 10
4. Containers 45 5 10 10 10 5 5 5 20 20
5. Cranes Assigned to Bays 1 2 2 2 2 2 3 3 3 3
6. Containers per Crane 45 40 50
7. Handling Time per
1.8 1.6 2
Crane (hours)
8. Makespan (hours) 2

However, the integrated assignment and scheduling problem would consider the container load
of each bay, rather than each ship. The optimal solution in this case would be to assign 2 cranes
to the first ship and 2 cranes to the second ship, which implies that one of the cranes would be
assigned to both ships. This achieves a makespan of 1.8 hours which is less than that obtained by
sequentially solving the two problems and it is depicted in Table 2. Even though this may seem
to be a small reduction, it becomes significant for larger problems.

Table 2 – Problem data and solution using integrated assignment and scheduling approach,
case 1
1. Ship 1 2
2. Ship Bays 1 2 3 4 5 6 1 2 3 4
3. All Bays 1 2 3 4 5 6 7 8 9 10
4. Containers 45 5 10 10 10 5 5 5 20 20
5. Cranes Assigned to Bays 1 2 2 2 2 2 2 3 3 3
6. Containers per Crane 45 45 45
7. Handling Time per Crane
1.8 1.8 1.8
(hours)
8. Makespan (hours) 1.8
Assuming that the QCAP is able to allocate one crane to more than one ship, another possible
solution to the assignment problem would be to assign 2 cranes to the first ship and 2 cranes to
the second ship. In this case, the scheduling problem would then produce the crane schedule
shown in Table 3. However, maintaining the same total workload in terms of containers but with
a different distribution on the bays (case 2), would mean that this leads again to a not optimal
solution, as opposed to the integrated QCASP, shown in Table 4. Solving the problems
sequentially would lead to a solution of 2.6 hours, while the integrated problem leads to a better
solution of 2 hours.

Table 3 - Problem data and solution using sequential assignment and scheduling approach,
case 2
1. Ship 1 2
2. Ship Bays 1 2 3 4 5 6 1 2 3 4
3. All Bays 1 2 3 4 5 6 7 8 9 10
4. Containers 5 5 10 10 10 45 20 5 20 5
5. Cranes Assigned to
1 1 1 1 1 2 2 3 3 3
Bays
6. Containers per Crane 40 65 30
7. Handling Time per
1.6 2.6 1.2
Crane (hours)
8. Makespan (hours) 2.6

Table 4 - Problem data and solution using integrated assignment and scheduling approach,
case 2
1. Ship 1 2
2. Ship Bays 1 2 3 4 5 6 1 2 3 4
3. All Bays 1 2 3 4 5 6 7 8 9 10
4. Containers 5 5 10 10 10 45 20 5 20 5
5. Cranes Assigned to
1 1 1 1 1 2 3 3 3 3
Bays
6. Containers per Crane 40 45 50
7. Handling Time per
1.6 1.8 2
Crane (hours)
8. Makespan (hours) 2

It becomes evident that the integrated approach outperforms the sequential solution approach in
most cases, as more information is exploited and it is possible to reach a better solution. In
certain cases, the solution from the two problems may be the same, but this is mainly the case for
very small problems, like the example in this section. For larger problems, the improvement in
the solution is apparent and leads to a significant reduction in handling time.
3.3. Optimization Model

We introduce the indices referring to the model:


Number of ships,
Number of bays on ship
Unified index for bays of all ships,

The decision variables of the model are the following:

binary, equal to 1 if crane k is assigned to bay j


makespan, greatest time of handling bays, for all cranes

The parameters of the model are presented below:

number of containers on bay j


crane handling rate, in container per crane-hour
total number of bays, of all ships
total number of available cranes
total number of ships

The MIP model formulation of the QCASP is as follows:

(1)

(2)

(3)

(4)

(5)
(6)

(7)

(8)

The objective function (1) aims to minimize the handling makespan of the ship that requires the
greatest time. Constraints (2) ensure that every bay will be assigned exactly one quay crane,
while constraints (3) and (4) guarantee the end-bay positioning conditions for quay cranes,
ensuring that middle-indexed cranes will not be places at end bays. Constraints (5) and (6) are
the non-crossing constraints, enforcing the condition that a lower-indexed crane will not be
positioned to the right of a higher-indexed crane (constraints (5)), and that a higher-indexed
crane will not be positioned to the left of a lower-indexed crane (constraints (6)). Constraints (7)
guarantee that the makespan will be equal to the latest completion time amongst all cranes.
Finally, constraints (8) define the binary decision variables of the model.

3.4. Data Generation

The data used for the problem instances, namely the number of bays and containers on each bay,
for a given number of ships and cranes is randomly generated. The number of bays for each ship
is a randomly chosen integer for the interval [10,100], while the number of containers is chosen
from the interval [1,100], both with a standard uniform distribution.

The problem instances are classified as small, medium and large, based on the number of
variables and constraints for each problem instance. More specifically, the small problem
instances refer to up to 400 variables and approximately 400 constraints. The medium problem
instances have approximately 1000 variables and 1100 constraints, while the large problems
comprise of almost 1600 variables and 1800 constraints.

4. The proposed Genetic Algorithm

Genetic algorithms (GAs) have been extensively employed in combinatorial optimization


problems, including sequencing and scheduling problems [12]. The GA is a meta-heuristic
approach that is based on the concept of natural biological evolution of living organisms. It
operates on a population of potential solutions and applies structured, yet randomized
information exchange in order to robustly explore and exploit the solution space. Furthermore, it
applies the principle of survival of the fittest in order to continuously produce better
approximations to a solution. At each generation, a new set of approximations is created by the
process of selecting individuals according to their level of fitness in the problem domain and
breeding them together using operators borrowed from natural genetics, such as crossover and
mutation. This process leads to the evolution of populations of individuals that are fitter with
reference to their environment than the individuals that they were created from, as occurs in
natural adaptation [17].

4.1. Chromosome representation and population initialization

The individuals of the population are encoded as strings, namely chromosomes, which are
created based on a certain alphabet, in a way that the genotypes or genes (chromosome values)
correspond to a unique position on the decision variable domain. The representation of
chromosomes is the initial and most important step of the GA [12],[17].

The structure of the initial population is also of crucial importance to the efficiency of the GA.
Especially in the case of constrained problems, it must be decided whether or not the initially
generated chromosomes will satisfy all equalities and inequalities. Several proposed algorithms
allow for infeasible solutions within the population with the purpose of exploring new feasible
regions from different directions. In these cases, it is necessary to implement techniques of
controlling infeasible chromosomes, given that the solution that the algorithm converges to must
be feasible. Other algorithms generate an initial population of feasible chromosomes and
maintain feasibility through evolution by carefully choosing the crossover and mutation variation
operators. In the case where these operators generate infeasible chromosomes, a repair procedure
is required in order to restore feasibility, with the disadvantage of added algorithmic complexity
[18].

By examining the current model, an initial representation of the chromosome can be derived by
assigning each of the binary decision variables, i.e. the crane to bay assignment variables, to a
gene. The integer variable, i.e. the makespan, can be directly calculated in the objective function
in order to provide a fitness value to the corresponding chromosome. This would mean that the
length of each chromosome is equal to the number of bays, multiplied by the number of cranes,
i.e. , and it would be a binary representation. For the example presented in Section 3, the
length of each chromosome would be 120 genes and the chromosome of the optimal solution
would have the following structure:

1 1 0 … 1 1 1

In this example, each gene that has a value of one implies that there is an assignment of a certain
crane to a certain bay. Specifically, the fact that implies that quay crane 1 (second
index) is assigned to bays 1 and 2 (first indices). This binary representation is straight-forward,
yet not efficient, as the length of the chromosome would significantly increase for larger problem
sizes, with a greater number of cranes, bays and ships. A more efficient representation would be
to replace it with a chromosome of integer value genes, from the interval [1 K], determining
which crane should be assigned to each bay. This implies that the length of the chromosome is
equal to the total number of bays, B. For the aforementioned example, this representation would
lead to the following chromosome:

Bay 1 2 3 j 18 19 20
Crane 1 1 2 … 6 6 6

In this representation, it is easier to identify the cranes assigned to bays. Crane 1 is assigned to
bays 1 and 2, crane 2 is assigned to bay 3 and possibly more, while crane 6 is assigned to bays
18, 19 and 20. This representation can significantly reduce the time and complexity of the
genetic algorithm, as compared to the initial representation. However, it holds the disadvantage
of easily generating infeasible solutions as a result of genetic operations.

The chromosome representation can be further simplified by defining the value of each gene as
the number of bays that each crane is assigned to. This implies that the length of the chromosome
(the number of genes) is equal to the number of available cranes K.
Referring again to the previous example since, QC 1 is assigned to 2 bays, QC 2 is assigned to 5
bays, QCs 3, 4 and 5 are each assigned to 3 bays and QC 6 is assigned to 4 bays, the
chromosome corresponding to this solution is the following:

Crane 1 2 3 4 5 6
Number of bays 2 5 3 3 3 4

Another advantage of this final chromosome representation, aside from the fact that it is shorter
in length, is that it always generates feasible solutions, and therefore the need for a feasibility
restoration technique in the initial pool of individuals is not required. The only requirement for
feasibility with this new representation is that the sum of the values of genes is exactly equal to
the total number of bays. This chromosome representation will thus be employed in the present
paper.

In order to randomly generate individuals, the value for the first (K-1) genes (corresponding to
all cranes except the last one) is generated between the interval , where B is
the number of bays and K is the number of cranes. This is chosen in order to ensure consistency
in terms of the number of bays that can be assigned to each crane and during the genetic
operations it is possible that the number of bays assigned to a crane increases beyond the
maximum number of the interval.
As far as population initialization is concerned, the choice is to generate a population of feasible
chromosomes. This population is randomly generated but ensures that the sum of genes will be
equal to the total number of bays. This guarantees that every bay will be assigned exactly one
crane, thus ensuring feasibility.

4.2. Design of genetic operators

The operators of crossover and mutation in the present paper have been designed to ensure that
feasibility will be maintained throughout the evolution process, in order to prevent the need for a
computationally complex repair procedure.

In order to demonstrate how the operation of crossover is performed, the following steps are
presented, accompanied by an example:
Step 1: The parents are chosen to be paired in order to produce the offspring. Assume the
following two chromosomes are the first that will be paired.

Parent 1 5 3 2 3 4 3
Parent 2 1 6 4 4 3 2

Step 2: For every pair, a random number of genes is selected for both chromosomes, to be
exchanged between them, assume 3 genes.
Step 3: After the number of genes is chosen, the indices corresponding to genes are also
randomly selected, assume:
. The genes that will be crossed over are highlighted:

Parent 1 5 3 2 3 4 3
Parent 2 1 6 4 4 3 2

Step 4: At this point, the genes that correspond to the indices of Step 3 are crossed over between
the parent chromosomes, resulting in two new chromosomes, namely the children chromosomes.

Parent 1 5 3 2 3 4 3
Parent 2 1 6 4 4 3 2
Child 1 5 6 4 3 3 2
Child 2 1 3 2 4 4 3

Step 5: The sum of genes in the offspring will most likely not be equal to the number of bays,
therefore constituting the offspring infeasible solutions. If the new chromosome presents a
surplus of bays, this will be subtracted from the gene with the highest number of bays (in order
to ensure that there will be no negative genes) and similarly, in the chromosome with fewer bays,
the required extra bays will be randomly added to one of the genes.
Parent 1 5 3 2 3 4 3
Parent 2 1 6 4 4 3 2
Child 1 5 3 4 3 3 2
Child 2 4 3 2 4 4 3

In terms of the operation of mutation, care is required in order to not result in non-feasible
chromosomes. For this reason, swap mutation will be employed for this problem. This basically
means the shuffling of genes within the chromosome. Because the primary concern for feasibility
is maintaining the sum of genes equal to the number of bays, shuffling the genes, i.e. changing
their positions in the chromosome, will not lead to infeasibility. Furthermore, it can achieve what
mutation is intended to achieve, that is the constant diversification of the population. Swap
mutation is performed between two genes in the specific problem; however, it could even be
applied to more genes, as this would still maintain feasibility. Assume mutation is performed on
Child 1. This will result in the following chromosome:

Child 1 4 3 5 3 3 2

4.3. Parent Selection Strategy and Insertion of Offspring

The parent selection strategy plays a significant role in regulating the bias in the reproduction
process, because it determines the number of times a particular individual from the population is
chosen for reproduction and, thus, the number of offspring that an individual will produce.

Several selection techniques implement a ‘roulette wheel’ mechanism to probabilistically select


individuals based on a certain measure of their performance. Assuming that the fitness value is
the chosen measure of performance, individuals are mapped into contiguous intervals in the
range between 0 and the sum of their fitness values. The select an individual, a random number
is generated within this range and the individual whose segment includes the random number is
selected. The process is repeated, until the desired number of individuals has been selected. This
technique is generally employed when it is preferred that better solutions have a greater chance
of being chosen for creating offspring [12],[17].

This technique is implemented in the present paper as a parent selection strategy. Referring once
again to the aforementioned example and considering the following population of chromosomes,
the roulette wheel from which they would be sampled is depicted in Figure 3.

Table 5 – Example of Chromosomes

Objective
Value
Chromosome 1 4 4 4 2 3 3 9
Chromosome 2 3 2 3 4 3 5 8.36
Chromosome 3 5 3 4 3 3 2 9.2
Chromosome 4 2 3 4 4 3 4 9.72
Chromosome 5 1 3 3 4 6 3 14.76

As seen in Table 5, Chromosome 2 has the lowest objective value, which corresponds to the
highest fitness value, and therefore holds the greater share of the wheel depicted in Figure 3.
Chromosome 5 has the highest objective value, or lowest fitness value, and so it has the lowest
probability of being selected as a parent since it is assigned the smallest share of the wheel.

Figure 3 – Roulette Wheel for Chromosomes of Table 5

After selecting the parents and recombining them to produce the new population, the fitness
values of the individuals from the new populations must be determined. If fewer individuals are
produced than the initial size of the population, then this fractional difference between the old
and new population sizes is called the generation gap. In order to maintain the size of the original
population, the new individuals are reinserted into the old population. The most apparent strategy
of replacing members of the old population by new members is to replace the least fit members
deterministically. Another strategy replaces the oldest members of the population and is
considered a successful replacement scheme. In fact, it resembles the natural evolution of
individuals and it ensures that for an individual to survive successive generations, it must be
sufficiently fit to achieve propagation into future generations [17]. The present paper employs a
simple strategy of maintaining in the population the chromosomes with the highest fitness value.

5. Computational Analysis
In this section the results of the computational analysis will be presented. Several problem
instances were solved using the proposed GA and these solutions were compared to those
produced by an exact technique. The proposed GA was constructed and run in MATLAB. An
initial sensitivity analysis was conducted before deciding on the population size and number of
iterations to be used. Firstly, for a fixed number of 100 generations (iterations) of the algorithm,
the time and gap of the generated solution were reported, for a large problem instance. These
values were the acquired averages over 10 runs, in order to try and eliminate any bias due to
random initial population generation. Figure 4 demonstrates the results, which indicate the
increase in time and reduction in gap with the increase of population size. A reasonable trade-off
between time and optimality gap is noted for a population size of 180.

Figure 4 – Sensitivity analysis of time and gap, with respect to population size, for a fixed
number of generations
Using this population size, tests were run now for a ranging number of generations, and results
are reported in Figure 5. The chosen number of generations for tests was chosen to be 180. Given
that the sensitivity analysis was conducted on a very large problem instance, the results are
expected to be better for regular problem sizes.
Figure 5 – Sensitivity analysis of time and gap, with respect to number of generations, for a
fixed population size

After setting the population size to 180 individuals and the number of generations to 180, testing
was performed on several problem instances, ranging from small to large ones. Again, each
problem instance was run 10 times and average values were taken, in order to reduce the level of
randomness in the results. The parameters of each problem (input data) are summarized in Table
6, while the results are presented in Table 7.

Table 6 – Input data for tested problem instances

Number of Number of Total Number Total Number of


Tested Problems
Ships Cranes of Bays Containers
Problem Instance 1 2 2 131 1475
Problem Instance 2 3 2 200 3300
Problem Instance 3 3 2 103 2000
Problem Instance 4 4 3 230 4225
Problem Instance 5 5 3 400 6275
Problem Instance 6 5 4 385 5525
Problem Instance 7 6 3 210 2975
Problem Instance 8 6 3 516 7175
Problem Instance 9 6 4 392 5125
Problem Instance 10 7 4 320 4100
Problem Instance 11 8 3 400 6450
Problem Instance 12 8 5 289 3325
Problem Instance 13 9 6 220 2700

The optimal objective values produced by the GA were compared to the exact optimal value,
wherever possible. This optimal value was obtained by solving the problem using the
commercial software GAMS, with default solvers. Where it was not possible to reach the optimal
value, the results from the GA were compared to the lower bound obtained from an exact-based
heuristic. The exact-based heuristic was developed by implementing Lagrangian relaxation and
then a feasibility restoration technique for solutions that were not feasible. This was the case in
problem instances 3, 6, 10, 11, 12 and 13. The gap between the upper bound given by the GA
and the lower bound given by the exact-based heuristic is shown in Table 7. Furthermore, the
time required by the GA is presented alongside the time required to solve the problem exactly.

Table 7 – Summary of computational results for tested problem instances

Objective Exact Solution Exact


GA Time
Tested Problems from GA Objective Gap (%) Solution Time
(seconds)
(hours) (hours) (seconds)
Problem Instance 1 29.52 29.52 0 0.24 1.77
Problem Instance 2 63.81 63.81 0 0.24 2.61
Problem Instance 3 40.95 40.95 0 0.25 3.79
Problem Instance 4 82.86 82.86 0 0.27 3.79
Problem Instance 5 32.38 32.38 0 0.27 4.2
Problem Instance 6 101.9 101.9 0 0.31 9.27
Problem Instance 7 45.71 45.71 0 0.33 3.28
Problem Instance 8 95.24 95.24 0 0.5 4.4
Problem Instance 9 48.57 48.57 0 0.65 5.66
Problem Instance 10 34.76 34.29 1.37 0.79 6.83
Problem Instance 11 82.38 80.95 1.77 0.82 9.91
Problem Instance 12 30.48 28.57 6.69 0.95 37.3
Problem Instance 13 18.1 16.19 11.8 1.23 38.28

It can be seen from Table 7 that the proposed GA achieves optimal solutions, with a gap of 0%
for small and medium sized problems (problem instances 1 – 9), while there is a noticeable gap
for larger problem instances. For problem instances 3 and 6 it was not possible to obtain the
exact solution from the aforementioned exact-based heuristic. However, the fact that the upper
bound provided by the GA and the lower bound from this technique are equivalent, implies that
this is in fact the optimal solution. Computational time is very low, <1 second for almost all
problem sizes, which is the major advantage of the proposed GA, especially when compared to
the time required for the exact solution, and compensates for the slight increase in the optimality
gap for larger problem sizes.

6. Conclusions

In this paper we developed a mathematical formulation for the integrated QCASP which
considers quay crane positioning conditions, such as end-bay positioning and non-crossing
constraints. Furthermore, a Genetic Algorithm (GA) was developed to solve the problem and the
chromosome representation, the genetic operators as well as the selection and insertion strategies
are presented.

The most important characteristic of the developed model is the integration of the assignment
and scheduling problem for quay cranes, which yields better results than solving these problems
independently. Furthermore, rather than significantly increasing the model complexity as
expected during integration, this formulation remains simpler than the scheduling problem alone.
For the GA it was possible to develop problem-specific chromosome representation and genetic
operators in order to lead to an efficient algorithm. The performance of the GA in terms of
solution quality was compared to the exact solution.

Computational results indicate that the GA produces solutions with a small gap from the optimal
solution. This is true especially in the case of small and medium-sized problems, where the gap
does not exceed 0%. In the case of one of the larger problem instances, the gap reaches 11%, but
the fact that computational time remains very low renders the proposed GA attractive even in
these cases.

The main conclusion of this paper is that the GA constitutes a successful approach for the
QCASP, generating near-optimal solutions for small and medium-sized problems and
performing extremely efficiently in terms of time for all problem sizes. It is highly recommended
that future work pursues the implementation of GAs for the integrated QCASP. To further
advance the matter, additional circumstances should be considered, such as a non-constant crane
productivity rate, to account for situations in which handling tasks must be performed faster in
order to meet an agreed ship departure time. Also, the model could be extended to account for
both loading and unloading operations, as well as to incorporate crane travel times between bays.
Another case would be to evaluate whether or not unidirectional crane schedules generate better
solutions than cases where cranes can travel in both directions.

References

[1] E. Theodorou, A. Diabat, and D. Svetinovic, “Quay Crane Sequencing Considering


Productivity , Interference and Yard Congestion Constraints,” in IEEE Industrial
Engineering and Engineering Management, 2012, pp. 1–5.

[2] F. Meisel, “The Quay Crane Scheduling Problem with Time Windows,” no. May, 2011.

[3] C. Bierwirth and F. Meisel, “A survey of berth allocation and quay crane scheduling
problems in container terminals,” European Journal of Operational Research, vol. 202,
no. 3, pp. 615–627, May 2010.
[4] K. H. Kim and Y.-M. Park, “A crane scheduling method for port container terminals,”
European Journal of Operational Research, vol. 156, no. 3, pp. 752–768, Aug. 2004.

[5] L. Moccia, J. Cordeau, M. Gaudioso, and G. Laporte, “A Branch-and-Cut Algorithm for


the Quay Crane Scheduling Problem in a Container Terminal,” pp. 1–37, 2005.

[6] P. Legato, R. M. Mazza, and R. Trunfio, “Simulation-Based Optimization for the Quay
Crane Scheduling Problem,” in Proceedings of the 2008 Winter Simulation Conference,
2008.

[7] D. H. Jung, Y. Park, B. K. Lee, and K. H. Kim, “A Quay Crane Scheduling Method
Considering Interference of Yard Cranes in Container Terminals,” pp. 461–471.

[8] D.-H. Lee, H. Qiu Wang, and L. Miao, “Quay crane scheduling with handling priority in
port container terminals,” Engineering Optimization, vol. 40, no. 2, pp. 179–189, Feb.
2008.

[9] J. Liu, Y. Wan, and L. Wang, “Quay crane scheduling at container terminals to minimize
the maximum relative tardiness of vessel departures,” Naval Research Logistics, vol. 53,
no. 1, pp. 60–74, Feb. 2006.

[10] C. F. Daganzo, “The Crane Scheduling Problem,” Transportation Research Part B:


Methodological, vol. vol. 23, no. 3, pp. 159–175, 1989.

[11] H. Zhang and K. H. Kim, “Maximizing the number of dual-cycle operations of quay
cranes in container terminals,” Computers & Industrial Engineering, vol. 56, no. 3, pp.
979–992, Apr. 2009.

[12] R. Tavakkoli-Moghaddam, a. Makui, S. Salahi, M. Bazzazi, and F. Taheri, “An efficient


algorithm for solving a new mathematical model for a quay crane scheduling problem in
container ports,” Computers & Industrial Engineering, vol. 56, no. 1, pp. 241–248, Feb.
2009.

[13] C. Bierwirth and F. Meisel, “A fast heuristic for quay crane scheduling with interference
constraints.” Springer, 2009.

[14] S. Choo, D. Klabjan, and D. Simchi-Levi, “Multiship Crane Sequencing with Yard
Congestion Constraints,” Transportation Science, vol. 44, no. 1, pp. 98–115, Dec. 2009.

[15] Y. Guan, K.-H. Yang, and Z. Zhou, “The crane scheduling problem: models and solution
approaches,” Annals of Operations Research, vol. 203, no. 1, pp. 119–139, Jun. 2010.

[16] S. H. Chung and K. L. Choy, “A modified genetic algorithm for quay crane scheduling
operations,” Expert Systems with Applications, pp. 4213–4221, 2012.
[17] A. Chipperfield, P. Fleming, H. Pohlheim, and C. Fonseca, “Genetic Algorithm Toolbox
for use with Matlab.”

[18] A. Hiassat, “An Integrated Location-Inventory-Routing Problem : Metaheuristics and


Environmental Extensions An Integrated Location-Inventory-Routing Problem :
Metaheuristics and Environmental Extensions,” Masdar Institute of Science and
Technology, 2012.
1. Present a new formulation that simultaneously considers two interdependent problems.
2. The new formulation does not increase the complexity of the two problems individually.
3. Demonstrate the benefit of the integrated modeling approach.
4. Develop a GA that is capable of solving large scale of the problem in acceptable computational
time.

You might also like