Integrated Berth Allocation and Time-Variant Quay Crane Scheduling with Tidal Impact in Approach Channel

This paper addresses the integrated problem of dynamic continuous berth allocation and time-variant quay crane scheduling in container terminals and introduces the factor of tidal impacts into the problem. We mainly consider the impact of tides on the transport capacity of an approach channel that connects quay and anchorage. An integer linear programming model is developed, and then three heuristic algorithms,GeneticAlgorithm,HybridParticle SwarmOptimization, andHybrid SimulatedAnnealing, are proposed to solve the model. Numerical experiments are conducted to verify the efficient performances of the proposed heuristics. Moreover, experimental results also demonstrate the nonignorable impact of tides on the vessel turnaround time and the utilization of berth and quay cranes.


Introduction
In the last decades, container shipping plays an important and irreplaceable role in the international trade due to its low shipping cost and high reliability.Huge maritime transport demand brings container ports more business opportunities as well as more challenges [1].To stand out in the fierce competition, container port managers have to improve the efficiency of services in order to lower service costs and attract more vessels calling.One critical aspect is to maximize the use of key resources, such as berths and quay cranes (QCs).With the quick increase of containership size, the processing schedule of vessels in many container seaports is much impacted by tides.Because their required deep drafts are usually more than the channel's water depth, megacontainerships have to pass through the approach channel by the aid of tides.
Figure 1 illustrates the tidal effect.As shown in the figure, the tide fluctuates and it alters the water depth of the channel over time (taking a tidal cycle as an example).When a vessel arrives at the port, the vessel draft ℎ 1 becomes known.To ensure the safety during passing through the channel, the under keel clearance ℎ 2 , which is the distance from the vessel bottom to the fairway bottom, is required to be at least 12% of the vessel draft [2].Let ℎ 3 be the tide datum depth.Then a minimum tide height ℎ * required for the vessel to pass through the channel is formulated as ℎ * = ℎ 1 + ℎ 2 − ℎ 3 .Based on this, the available tide time window [ 1 ,  2 ] can be calculated according to ℎ * and the tidal rhythm together with tidal amplitude at the seaport.The vessel can only pass through channel during time interval [ 1 ,  2 ] in the tidal cycle.Specifically, if the vessel calls at the port before  1 , it waits to the time point.If otherwise it arrives after time  2 , the vessel has to wait until the next available tide time window.Similarly, if the vessel has completed service and plans to leave the port via the channel, the same tidal requirement has to be met.So the container terminal manager has to well consider the interaction of berth, QCs, vessels' drafts, and the fluctuation of tide so as to provide appropriate berthing time for each vessel to prevent its unnecessary waiting at the anchorage ground.An optimal processing schedule of vessels not only maximizes the use of the critical resources, but also greatly reduces vessel bunker fuel costs and greenhouse gas emissions.Many recent works [3][4][5][6][7] have addressed the impact of tides on the seaside operations in a container port.These papers consider the tidal impact in berth allocation problem (BAP), in which the processing times of vessels are generally assumed to be constants.That is, QC assignment is not involved.In practice, however, the turnaround time of a vessel is a variable and depends on not only the number of containers to be processed but also the number of QCs assigned to the vessel.Motivated by this, we investigate the integrated berth and QC scheduling problem with tidal impact in this work such that the turnaround time of any vessel relies on its schedule.
The main contributions of this work are threefold.(i) We introduce the impact of tides into the integrated problem of dynamic continuous berth allocation and time-variant QC scheduling.(ii) An integer linear programming model is established and three heuristic algorithms are exploited to solve the model.(iii) Numerical experiments are conducted to reveal the nonneglected tidal impacts on the turnaround times of vessels and the utilization of berth and QCs.
The rest of this paper is organized as follows.Section 2 reviews relevant literature.The description of the problem is presented in Section 3. Section 4 formulates the integer linear programming model of the considered problem, and three heuristic algorithms are employed in Section 5.In Section 6 we conduct extensive numerical experiments to further verify the impact of tides in scheduling and make comparison between the proposed heuristics.Finally, conclusions and some suggestions of further research are provided in Section 7.

Literature Review
Seaside operations scheduling in container terminals have been of large interest in the fields of management science, operations research, and computer sciences in the last decades.For a comprehensive understanding of container terminal operations, readers are referred to literature [8][9][10][11][12].According to Bierwirth and Meisel [10], there are three basic scheduling problems in seaside operations, i.e., the berth allocation problem (BAP), the QC assignment problem (QCAP), and the QC scheduling problem (QCSP).Moreover, the integration of these problems, such as BAP-QCAP and BAP-QCSP, has also caught a lot of interest in literature.
. .Integrated Seaside Operations Scheduling.Park and Kim [13] put forward a pioneering integration method for scheduling berth and QCs.They establish a mixed integer linear programming (MILP) model and propose a two-phase solution procedure to solve the model.At the first stage, the assignment of berths and QCs to vessels is determined by Lagrangian relaxation and a subgradient optimization method.Then a dynamic programming technique is adopted to schedule the assigned QCs for the vessels.Liang et al. [14] study an integration of discrete berth allocation problem and QC dynamic assignment problem.They formulate a multiobjective mathematical model to minimize both turnaround time of vessels and the number of QC movements simultaneously.To solve the model, a multiobjective hybrid genetic algorithm approach with a priority-based encoding method is applied.Zhang et al. [15] address a BAP-QCAP problem considering the coverage ranges and limited adjustments of QCs during processing.They construct a mixed integer programming model and apply a subgradient optimization algorithm to solve the model.Giallombardo et al. [16] propose a novel concept of QC assignment profiles to integrate berth allocation and QC assignment.A mixed integer quadratic programming formulation and a mixed integer linear program are constructed, which aim to maximize the total value of chosen QC-profiles and yard costs.Hu et al. [17] construct a nonlinear multiobjective mixed integer programming model for integrating BAP and QCAP, which considers vessel fuel consumption and emissions.A secondorder mixed integer cone programming model is adopted in solving the model.
Meisel and Bierwirth [18] establish a framework for the integration of berth allocation, QC assignment and scheduling problem.The framework proceeds in three phases.Phase 1 calculates the crane productivity rates according to vessel stowage plans.Berthing times and positions as well as crane capacity assignments are determined in Phase 2. Finally, Phase 3 provides QC schedules.Turkogullari et al. [19] study the integration of berth allocation, QC assignment, and time-invariant QC scheduling problem (BACASP) such that the QCs assigned to each vessel stay at where they are until the vessel has been completed.First, they integrate the berth allocation and QC assignment problem (BACAP) in a binary integer linear programming model.In order to incorporate QC scheduling problem, they extend the BACAP and introduce a mixed integer linear programming model for the BACASP.Two algorithms are proposed to generate the optimal solution for the BACASP based on the optimal solution of BACAP.Considering the scenario where the number of QCs assigned to any vessel is allowed to vary during the processing of the vessel, Turkogullari et al. [20] build a mixed integer linear program to combine berth allocation, time-variant QC assignment and scheduling with consideration of QC setup cost owing to the movement between two working locations along the berth.They split it into a relaxed master problem and a subproblem and propose an exact solution algorithm by means of directed, layered, single source, and single sink network.The simulation results demonstrate that the algorithm may obtain optimal solutions for large-scale realistic problem instances.
. .Seaside Operations considering Tidal Impacts.Although seaside operations in container terminals have caught much interest in literature, there are only a few studies considering the influence of tide in the BAP problem.Most of these works consider the tide impact on the water depth along the berths.Barros et al. [3] investigate a BAP model with tidal time windows and stock level conditions in a tidal bulk port of Brazil.They present an integer linear programming model with homogeneous berths, which aims to minimize the overall demurrage in the planning horizon.A simulatedannealing-based algorithm (SA) is proposed to obtain good solutions.Xu et al. [4] study a discrete BAP model in both static and dynamic cases for container terminals in which the assignment of berths is limited by water depth due to tides.They assume that the time horizon is divided into only one high water period and one low water period.Qin et al. [7] address the BAP at a tidal river port in a more precise manner than [3,4] by introducing time-varying draft constraints on vessel berthing based on each vessel's draft and tide conditions of different berths.They build six integer programming models which are various combinations of three objectives (i.e., total weighted turnaround time, total weighted departure delay, and makespan) and two vessel arrival cases (i.e., static and dynamic).The models are then transformed into the innovative constraint programming counterparts.Lalla-Ruiz et al. [6] modify the model proposed in [4] to improve the feasibility of solutions based on the generalized Set Partitioning problem.Numerical experiments indicate that the computational efficiency is also improved significantly.
Some other authors investigate the BAP problem with the impact of tide in the approach channel.Sheikholeslami et al. [5] take into consideration not only the tidal constraints in the approach channel but also the variations of water depth in different berths in the continuous dynamic berth allocation.A genetic algorithm combined with pattern search algorithm is proposed to solve the problem.Du et al. [2] develop two mathematical models to figure out the BAP in a tidal port, in which it takes into account the restriction of tides when vessels enter or leave the port through the approach channel.The first model aims to minimize the total departure delay of vessels, and the second model takes vessel arrival times as decision variables and takes the minimum weighted summation of departure delay and fuel consumption as the objective.The second-order cone programming technique is adopted to simplify the nonlinear complexity of the second model.Numerical simulations show that the second model can effectively mitigate the tidal impacts on container terminal operations and vessel emissions.To the best of our knowledge, there are no results on the BACASP problem where the influence of tides is involved.In this work we focus on the BACASP problem with time-variant QC scheduling and tidal impacts.

Problem Statement
We consider the integrated berth allocation, QC assignment, and time-variant QC scheduling problem with tide constraint and denote it as BACASP-TC as in [19,20], where the notation TC denotes the factor of tide constraint.By reasonable discretization of the continuous berth and time horizon, we can treat the considered problem as a discrete optimization model.We discretize the planning time horizon into time steps 1, 2, 3, . . .with one hour per time step [15,[18][19][20].Moreover, the continuous quay berth is partitioned into discretized segments with 50 meters per berth segment [15,[19][20][21].Thus, the length   of vessel  can be measured by the number of required berth segments.For example,   = 2 means it is of length equal to 100 meters.Considering the average productivity of one QC, we assume based on field investigation that any QC processes 30 containers in each hour.Together with the above time discretization method, we define a notation QC-time-step to measure the workload of a vessel such that one QC-time-step means a workload of 30 containers.For example, if vessel  is of workload   = 10, then it means there are 30 ×   = 300 containers to be handled for the vessel.Notice that if there are only 275 but not 300 containers to be processed for the vessel, we still set   = 10 since nine QC-time-steps can only satisfy 270 containers.
We partition vessels into three types by their sizes, i.e., feeders, mediums, and jumbos, where feeders are of the smallest size while jumbos are of the largest size.Considering tidal impact, we assume that only jumbos are tide dependent; that is, these vessels can only pass through the approach channel in the duration of high water level.This constraint is enforced when jumbos are either approaching the quay berth for processing or leaving the quay after processing.The other two kinds of vessels, however, are tide independent and they can pass through the channel at any time step.It is assumed as in [2] that any vessel takes one time step to pass through the approach channel.The vessels arrive at the anchorage at various time points and can only pass through the channel on or after arrival.Considering tidal rule, we assume that there are high and low water level time windows alternatively, each of which consists of six consecutive time steps.It is assumed without loss of generality that the first six time steps are of high water level.
For QC scheduling in processing any vessel, we consider the time-variant version in this work such that the number of QCs assigned to the same vessel can be different in two consecutive time steps.Compared with the time-invariant scenario where the set of QCs assigned to each vessel is predetermined and keeps unchanged during processing [16,[21][22][23], the time-variant QC scheduling fashion may improve the utilization of both QCs and berth segments.As all the QCs move on the same rail along the quay, their relative positions keep unchanged all the time.Moreover, any vessel stays still during its processing.Together with the fact that each QC is of width equal to about one berth segment length, it is reasonable to assume that at most one QC serving vessel  is allowed to leave for processing a neighbor vessel before completing vessel  at any time step.
To illustrate the integrated berth and QC scheduling in the BACASP-TC problem, we give an example with 8 berth segments, 7 QCs, and 7 vessels, where vessels  1 ,  2 ,  3 , and  7 are of small sizes and tide independent, while  4 ,  5 , and  6 are tide dependent.As shown in Figure 2, the vertical axis denotes the berth segments along the wharf, and the horizontal axis represents the time steps, which are divided into high water level time windows and low water level time windows.Each rectangle with solid borderlines stands for the processing duration and position of a vessel, denoted by   .The width of the rectangle denotes the processing time of the vessel, and the height represents its length.Each symbol   within a rectangle denotes the QC  assigned to the vessel at one time step.For example, the processing of tide-independent vessel  3 occupies berth segments 1 and 2. The vessel passes through the channel in the second time step, starts processing at the beginning of time step 3, and ends processing at the end of time step 6.It then leaves the wharf in time step 7.For QC scheduling, only QC1 processes  3 in time steps 3 and 4, while both QC1 and QC2 process the vessel in time steps 5 and 6.QC4 serves vessel  4 in time steps 5 and 6, but it moves to serve vessel  5 at time step 7, at which  4 is still on processing.
Notice that it is not allowed for any two vessels that share the same processing berth segments to be of overlapped processing time steps, while this is not necessary for their setup times, i.e., time steps for entering or leaving the wharf.In Figure 2, for example, both  3 and  5 share berth segments 1 and 2.  5 passes through the channel at time step 6 and starts processing at time step 7, while its preceding vessel  3 leaves the wharf at time step 7, which is later than the entering time of  5 .When  5 arrives at the port at time step 6, it immediately enters into the channel taking advantage of the high water level and moors at berth segments 1 to 4 one time step later.After finishing processing at the end of time step 10, it vacates the berth segments at once and waits for two time steps to leave the quay at the beginning of the next high water time window.A similar waiting situation occurs for  6 between time step 7 and time step 13 before it enters the channel.
There are some fundamental assumptions in the considered BACASP-TC problem as follows.
(1) The time horizon is divided into uniform time steps with one hour per time step, and the wharf is partitioned into equal-sized berth segments with 50 meters per segment.
(2) There are three types of vessels based on their respective lengths, where feeders and mediums are tide independent, while jumbos are tide dependent.
(3) By the tidal rule, in every 12 consecutive time steps or equally 12 hours, the first six time steps are in high water level, and the following six consecutive time steps are in low water level.
(4) It consumes exactly one time step for any vessel to pass through the approach channel.
(5) For any vessel being processed, the difference in the number of its assigned QCs in any two consecutive time steps is at most one.(6) The setup time of QC, including its move along the berth line, is ignored.

Mathematical Formulation
In this section we establish an integer linear programming model for the BACASP-TC problem.We first present basic notations and then propose the mathematical model.(ii)   : length of vessel , and it is measured in the number of berth segments.
(iii)   : workload of vessel , and it is measured in QC-timestep.
(iv)  min  : the minimum number of QCs required to be assigned to vessel .
(v)  max  : the maximum number of QCs allowed to be assigned to vessel .
(vi) : duration of a high/low water time window.
(vii) : the time for any vessel to pass through the approach channel, and  = 1 time step.
(viii) : a sufficiently large constant that is commonly used in describing linear inequality constraints.

Decision Variables
(i)   : the time at which vessel  passes through the channel for processing.
(ii)   : the start time of processing vessel .The vessel starts processing at the beginning of time step   .
(iii)   : the processing time of vessel .
(iv)   : the end time of processing vessel .The vessel completes processing at the end of time step   .(v)   : the time at which vessel  passes through the channel and leaves the port.(vi)   : the departure time of vessel , and   =   + .(vii)   : the berth segment occupied by the stem of vessel .(viii)   : (Binary) equal to 1 if QC  is assigned to vessel  in time step , 0 otherwise.

. . Formulation of the BACASP-TC
Objective Function.The objective function is to minimize the total turnaround time of vessels, which is one of the most studied objectives in literature [9][10][11][12].

Tidal Restriction Constraints
≥   , ∀ ∈  (4) Constraint (2) ensures that any vessel cannot enter the approach channel before its arrival time.Constraint (3) indicates that any vessel must pass through the approach channel before starting processing.Constraint (4) guarantees that a vessel must pass through the approach channel for leaving the port after processing.Constraint (5) defines the leave time of any vessel.Constraints (6) to (9) ensure that a tide-dependent vessel passes through the approach channel within a high water time window for either berthing or leaving the port.

Berth Allocation Constraints
−1 Constraints ( 10) and (11) state that each vessel starts or ends processing at a certain time step.Constraints (12) and (13) determine the processing start time of vessel  and its processing time, respectively.Constraints ( 14) and (15) determine the processing end time   of vessel .Constraints ( 16) and (17) guarantee that vessel  cannot be processed either before its berthing time or after its completion time.Constraint (18) ensures that vessel  starts processing once it has been berthed.Constraint (19) guarantees that the processing of any vessel cannot be interrupted.Constraint (20) states that when a vessel is on processing, its stem must be located at some berth segment.Constraints (21) and (22) determine the berth location of vessel 's stem.Constraints (23) and (24) denote that vessel  stays still during processing.Constraint (25) shows that all the vessels must berth within the boundaries of the quay.Constraint (26) means that the total length of vessels being on processing is no more than the quay length at any time.Constraint (27) avoids the conflicting situation where two vessels occupy the same berth segments at any time step.Constraint (28) defines the variable    , which is equal to 1 if vessel  is moored at berth segments with indices smaller than those of vessel   , 0 otherwise.Constraints ( 29) and (30) guarantee that only one of    and     equals 1.

QC Scheduling Constraints
Constraint (31) guarantees that the total number of QCs assigned to vessels at any time cannot exceed the number of available QCs. Constraint (32) ensures that each vessel must complete its processing within the time horizon.Constraint (33) makes sure that each QC processes at most one vessel in any time step.Constraints (34) and (35) guarantee when vessel  is under processing, the number of QCs assigned to it must be within the range [ min  ,  max

𝑖
]. Constraint (36) states that any QC cannot be assigned to a vessel not being processed.Constraint (37) describes the constraint of QC scheduling such that if both QCs  + 1 and  − 1 are assigned to vessel , then QC  must also be assigned to the vessel.Constraint (38) states the relative location consistence between QCs and the vessels being processed at any time.Constraints (39) and (40) ensure that for any two consecutive time steps, the difference on the number of QCs assigned to the same vessel is no more than one.

Solution Algorithms
As the BAP is NP-hard [24], the NP-hardness of the BACASP-TC problem is straightforward.For small instances, it can be solved by CPLEX or LINGO solver, in which the branch and cut algorithm is mainly employed.In practice, however, the problem cannot be solved by the exact algorithm within a reasonable time due to its large input scale.Hence, we employ heuristic algorithms to solve the BACASP-TC problem with large instances.Heuristic algorithms are to seek near-optimal solutions for optimization problems, especially in the cases with large inputs.We propose three heuristic algorithms, Genetic Algorithm (GA), Hybrid Particle Swarm Optimization (HPSO), and Hybrid Simulated Annealing (HSA) below.
. .Solution Representation.In implementing the three heuristics, the first step is to code any solution.We use an integer code scheme such that the code consists of || subsections, corresponding to the || vessels, respectively.Each subsection comprises two codes.The first code denotes the index of a vessel, and the position of the index in the code sequence represents the order of vessel berthing or processing.The second code indicates the processing time of the vessel.First, we randomly generate a vessel processing sequence.We also calculate the minimum possible processing time  min ] is then generated as the preset processing time.A code representation for an instance with six vessels is depicted in Figure 3. Notice that QC scheduling is not included in the code, which will be elaborated in Section 5.2.
. .Objective Value Calculation.The objective function value is used to evaluate the quality of a solution produced by any heuristic algorithm.Below we present a specific method in three steps to calculate the objective value of any given solution.
Step .Determine the berthing location and the time with tidal constraints in the approach channel for each vessel by Algorithm 1 to be described later.
Step .Assign QCs to vessels in every time step by Algorithm 2, as shown later on.
Step .If the assignment of QCs for vessels in Step 2 is feasible (i.e.,  = ), then calculate the objective value  of the solution where  = ∑ ∈ (  −   ); otherwise, set  as a sufficiently large constant  such as 10000, implying that the solution is unreasonable and is to be eliminated during calculation iterations of the heuristics.As the considered BACASP-TC problem is of a minimization objective and the heuristics take the reciprocal of the objective value  of a solution as its fitness value, so a solution with a larger objective value is more likely to be eliminated in the evolution process of any heuristic algorithm.Processing Time for Vessels  After the coding process in Section 5.1, a simple and preliminary scheduling scheme for the BACASP-TC problem is presented, where it includes the vessel berthing sequence and the processing times of vessels.The two algorithms, Algorithms 1 and 2, determine the berthing locations, the processing start times of vessels, and QC scheduling.
In Algorithm 1, a greedy heuristic method is constructed to assign berthing locations and start times of processing vessels with the tidal constraint, based on the bottom-left binpacking heuristic in [25].First, according to a vessel's preset processing time in the solution together with its length, both the width and height of the rectangle can be determined, as shown in Figure 4. Secondly, the rectangle is to be placed in the time-wharf plan, where point (   + , 0) is set as the original possible location.In Figure 4(a), the original possible location for processing vessel 6 is point 1.The rest Input: The berthing position   and the processing start time   ; Output: The time-variant QC scheduling for vessels and the assignment feasibility ; (1) Initialize  = ; (2) for  = 1 : || do (3) Initialize {, 1} = 0, {, 2} = 0, {, 3} = 0; (4) for  = 1 : || do (5) if vessel  is being processed in time step  then (6) {, 1} = {} ∪ {, 1}; four possible locations are determined from bottom to top and from left to right.Next, the feasibility of placing vessel 6 is verified from point 1 to 5, according to the conditions in Line 14 of Algorithm 1.If vessel 6 is tide independent, it is placed in point 4, i.e., rectangle (1) in Figure 4(b).If otherwise vessel 6 is tide dependent, then all the five points are verified infeasible and the location of the vessel is to be determined by Lines 22 to 25 of Algorithm 1.In this case, the rectangle (2) in Figure 4(b) is the final location of vessel 6.Note that vessel 6 starts processing at time step 14 but not 13, because it takes one time step to pass through the approach channel in the high water time window.
After determining the vessel berthing locations and processing start times, we employ Algorithm 2 to obtain the timevariant QC scheduling for vessels and check the assignment feasibility as well.According to the schedule of vessels from Algorithm 1, the specific berthed vessels and the number of vessels being processed in each time step  are determined and stored in sets {, 1} and {, 2}, respectively.The algorithm greedily assigns QCs to the vessels in each time step based on the proportions of their average workloads.The numbers of QCs assigned to the vessels in set {, 1} at each time step are placed in set {, 3}.If there is any vessel uncompleted in its preset processing time steps, it implies that the assignment of vessel location and the QC scheduling are infeasible.In this case the corresponding solution will be discarded in the iterations of the three heuristics.To better understand Algorithm 2, the process of solving the example in Figure 2 is given in Table 1, where the workloads of vessels 1 to 7 are equal to 9, 9, 5, 14, 14, 15, and 11 QC-time-steps, respectively.In time step 1 or the first row of Table 1, there is no vessel on processing and all the columns are of initial values 0 or 0. In time step 2 or the second row, the numbers in the sixth column {, 1} mean that vessels 1 and 2 start their processing.Columns    and    show their original workloads {9, 9} and preset processing time steps in the solution representation {3, 3}.So, column V gives their average workloads {3, 3} in the three time steps, and the resulting proportions {0.5, 0.5} between the two vessels are given in column .In column {, 3}, the original allocated QC numbers (4,4), as given in the brackets, for the two vessels are out of their allowed ranges.Thus they are replaced with their nearest available numbers 3, 3 of allocated QCs.That is, if the original allocated QC number for any vessel in {, 1} is smaller (or larger) than its lower (or upper) bound of allocated QC number, then the number is replaced by the lower (or upper) bound.The remaining rows of the table can be similarly explained as in the second row.
The above two greedy algorithms decode a solution of BACASP-TC and calculate the objective function value.Next we propose three heuristic algorithms, Genetic Algorithm (GA), Hybrid Particle Swarm Optimization (HPSO), and Hybrid Simulated Annealing (HSA) to produce optimal or near-optimal solutions for large instances.We only present the frameworks of the three heuristics due to page limitation.For details of the heuristics, readers may refer to [26][27][28].
. .Genetic Algorithm.Genetic Algorithm (GA) is a method for tackling both constrained and unconstrained optimization problems by mimicking biological evolution in a natural selection process.Since its first introduction by Holland in 1975 [29], GA has demonstrated its broad applicability in many areas.In this paper, we apply GA to solve BAP and QCSP simultaneously.It generates an initial population of solutions or chromosomes and then repeatedly generates offspring generations by a series of bioinspired operations including selection, crossover, and mutation, which are adopted from [30].In each evolution, Algorithms 1 and 2 are adopted to calculate the objective values as well as fitness values of individual solutions.Solutions with high fitness values are selected to form the population in the next generation.The flow chart of GA is depicted in Figure 5.
. .Hybrid Particle Swarm Optimization Algorithm.Particle Swarm Optimization (PSO) is inspired by social behavior of bird flocking or fish schooling.The algorithm is carried out by means of a swarm of candidate solutions or particles.According to some rules, these particles move around in the search space.The movements of the particles are guided by their own best known positions in the search space as well as the entire swarm's best known position.As illustrated in Figure 6, the proposed Hybrid PSO (HPSO) initializes a set of particles with their original locations   and objective function values (  ) in the solving space.The original locations   of particles are taken as their initial individual best locations   .Among the original locations of particles, the one that has the smallest objective function value is selected as the population best location .In order to seek a better location or solution, each particle location needs crossover and mutation with its own previous best location   and the population previous best location , respectively.The crossover and mutation evolution operators are from the GA in the above subsection.After moving to the new location, each particle updates its   , provided that the objective function value of its new location is less than the objective function value of its   .Likewise, update the  if the objective function value of its new location is less than the objective function value of .By repeating the above process, a satisfying solution is eventually obtained.
. .Hybrid Simulated Annealing Algorithm.The inspiration of simulated annealing (SA) algorithm comes from metallurgical annealing process, and it is first applied to the field of combinatorial optimization by Kirkpatrick et al. [31].SA initializes with a solution  1 at a high temperature  =  0 , and the temperature  gradually drops to a set value   at a certain rate .At each temperature , the algorithm generates a new solution  2 and measures its quality  2 .If the new solution  2 is better than the current  1 ,  1 is replaced by  2 .Otherwise, whether the current solution  1 is replaced or not depends on a probability that is progressively decreased with the reducing of temperature .The above operations are repeated for specified times that is called chain length  at every temperature .This algorithm can effectively avoid being trapped in local minima and is able to Pbest i = X i , Gbest = argmin f(X i ) .
Each particle moves to new position X i by the evolution operations with Pbest i and Gbest.
Update the objective function values f(X i ).explore globally for optimal solutions.In this work the Hybrid SA (HSA) combines the search mechanism of simulated annealing algorithm with genetic operators such as crossover and mutation when a new solution is generated.The flow chart of HSA is given in Figure 7.

Computational Experiments
In this section, a series of computational experiments are conducted to evaluate the performances of the proposed heuristics and demonstrate the impact of tides in the integrated scheduling of berth and QCs.First, we compare Generate a random solution X'; Get two child solutions using the crossover and mutation operations on X 1 and X'; Let X 2 be Calculate the objective function value the performances of the three heuristics with the exact solutions obtained via CPLEX for small instances.We then make comparison between the heuristic algorithms for large instances.Moreover, we analyze the tidal influence on the processing schedule of vessels and the utilization of berth and QCs.
We first make selections on the parameter settings for the heuristics to enhance their experimental performances.To carry out the preliminary test, five instances are randomly generated from a small size scenario (||, ||, ||, ||) = (6, 12, 8, 42), and five instances from a large size scenario (||, ||, ||, ||) = (30,30,15,120).For all the heuristic algorithms, the various combinations of their parameter candidate values are tested on the 10 instances.The parameter values in the best parameter combinations are listed in Table 2 and adopted in all subsequent computational experiments.The three proposed heuristic algorithms will be terminated if one of the following termination criteria is met: (1) the number of generations or the terminal temperature is reached; (2) the quality of the solution is not improved in 50 consecutive generations; and (3) the running time exceeds 2000 seconds.
The computational experiments are conducted using a PC with Intel Core i7-4700 3.4 GHz processor and 16 GB RAM.The algorithms are coded in Matlab R2014b, and the BACASP-TC model is solved with CPLEX 12.6 called by Matlab.In accordance with [32], the heuristics run each instance 10 times, and the best results among the 10 runs are reported.
. .Instance Generation.Following the fundamental assumptions of BACASP-TC, the duration of any high/low water time window is equal to 6 time steps.For the three types of vessels, feeder and medium are tide independent, while jumbo is tide dependent.In accordance with [18], the detailed information of vessels in any instance is listed in Table 3, where the workload of a vessel is in units of QC-time-step.For example, the workload of a feeder varies between 10 and 20 QC-time-steps.The interarrival times of vessels are exponentially distributed with a mean of 2 time steps, as in [33].
. .Algorithm Performance Evaluation . . .Small Instances.For small instances, the wharf length, the number of available QCs, and the planning horizon (||, ||, ||) are set as (12,8,42).For two cases with || = 5 and || = 6 vessels, we randomly generate ten instances for each.Table 4 shows the computational results of CPLEX and the three heuristic algorithms.In the table, column 1 lists the indices of the instances, while columns 2 and 3 are, respectively, the objective function value of exact solution and the computational time by CPLEX.Columns 4, 7, and 10 are, respectively, the objective function values of the optimal solutions by GA, HPSO, and HSA, and the corresponding running times are given in columns 5, 8, and 11, respectively.The relative errors of objective value between CPLEX and the three heuristics are defined as follows:   = (  − )/ × 100%,   = (  − )/ × 100%, and   = (  − )/ × 100%.First, we observe that all the heuristics obtain optimal solutions as CPLEX does for most of the small instances.For instances 6-2 and 6-7, CPLEX outputs feasible but not exact solutions within the preset 36000 seconds, while the heuristics produce better solutions in much less computational time.Secondly, the running time of CPLEX increases rapidly even for a small growth in the number of vessels, while the heuristics solve all the instances within 600 seconds.Thirdly, although the three heuristics produce the same optimal solution as CPLEX does, the convergence speed of GA outperforms HPSO and HSA.
. . .Large Instances.For large instances with more than 6 vessels, CPLEX can hardly produce exact solutions in 10 hours.Thus, we compare the performances between the three heuristic algorithms for large instances.We test three scenarios with (||, ||, ||, ||) = (20, 20, 10, 90), (30,30,15,120) and (40, 40, 20, 150), and 10 instances are randomly generated for each scenario.Table 5 summarizes the computational results for the 30 instances, where columns 2, 5, and 8 display, respectively, the best objective function value obtained by GA, HPSO, and HSA in 10 runs.The corresponding running times are reported in columns 3, 6, and 9, respectively.  = (  − j  )/  × 100% and   = (  −   )/  × 100% are the relative errors of the objective values.It is observed that HSA outperforms GA and HPSO with respect to the solution quality.Moreover, for most instances the relative errors between the best objective values of solutions produced by the three heuristics are within 5%.Hence, we conclude that all the three algorithms can solve large size problems effectively.
. . .Analysis of Tidal Impacts.We carry out numerical experiments to further reveal how the factor of tides impacts the turnaround times of vessels and the utilization of berth and QCs.Four cases 0.1:0.3:0.6(P1),0.3:0.3:0.4(P2),0.5:0.2:0.3(P3), and 0.7:0.2:0.1(P4) are investigated according to the different portions of jumbos, mediums, and feeders.For example, in case P1, 10%, 30%, and 60% percentages of the vessels are jumbos, mediums, and feeders, respectively.For each scenario, again 10 instances with (||, ||, ||, ||) = (30,30,15,120) are randomly generated and solved by HSA algorithm, which performs best among the three heuristics in the above experiments.Moreover, we consider three scenarios with different durations  = 0, 6 and 12 of high/low water time window.For example, in the first scenario with  = 0, there is no tidal impacts involved and all the vessels can pass through the channel at any time, while in the third scenario with  = 12, each high or low water time window is of length equal to 12 time steps.
The objective values of solutions and the gaps between them are listed in Table 7, in which  6 = ( 6 −  0 )/ 0 ×100% and  12 = ( 12 − 0 )/ 0 × 100%.As shown in Figure 8, the average total turnaround times of vessels increase as the proportion of the tidedependent vessels (i.e., jumbos) rises in any duration of high/low water time window.This result verifies that the large amount of loading and unloading of jumbos inevitably extends their turnaround times.Moreover, for each case with a fixed proportion of different vessels, it can be seen that the tides result in an obvious increase in vessel turnaround times, compared with the ideal situation without tides, and the tidal effects become more significant with the increase of the duration  of high/low water time window.
In order to explain the above results, we summarize the average waiting times and handling times of tidedependent vessels (i.e., jumbos) in Table 6 based on the instance solutions in Table 7.It shall be noted that column   represents the total number of tide-dependent vessels in ten instances for each combination of vessel ratio and .Columns Vℎ, V  , and V  mean the average handling time, the average waiting time before berthing and after processing of   tide-dependent vessels, respectively.Columns V and   denote the corresponding value and increase caused by tides.To take an example of Row 0.3:0.3:0.4,the number of tide-dependent vessels in each instance is 30 * 30% = 9, and   = 10 * 9 = 90.First, these results show that the intensive arriving of more and more jumbos and the increase of duration of high/low water time window prolong the waiting times to enter the approach channel for berthing.Secondly, it is found that the tide effect on the processing times is very small, and the average processing times are all close to the mean processing time of jumbos, which is the mean workload divided by the mean number of used QCs, i.e., 55/5=11.Because the average processing time is nearly twice of  = 6 or close to  = 12 and jumbos must start processing in high water time window, jumbos have larger chances to meet low water time windows in tidal condition of  = 12 than  = 6 when they finish their stevedoring to pass through the approach channel.It results in the increasing waiting times after processing as the value of  becomes larger.Thirdly, tides have a greater effect on the waiting time of a jumbo before berthing than that after processing.This provides valuable suggestions for container terminal managers that reasonable times for vessels calling at the port shall be given to reduce unnecessary waiting and improve service quality.Next, according to the solutions of the instances in Table 7, the corresponding utilization ratios of berth and QCs are further reported in Tables 8 and 9 where BU and QCU represent the utilization ratio of berth and QCs, respectively.For intuitive understanding, the average utilization ratios of berth and QCs are plotted in Figures 9(a) and 9(b), respectively.It is evident that the berth utilization ratio and QC utilization ratio in any scenario become worse as the duration  of high/low water time window increases.The reason behind this is that the increasing waiting times of jumbos resulted from the increasing duration of high/low water time window lead to more idleness of berth and QCs.Furthermore, it is observed that both utilization ratios of berth and QCs are enhanced with the increasing portion of the tide-dependent vessels for any given , and the increasing extent reduces gradually.This is because the average processing time of jumbos is longer than mediums or feeders.So the utilization ratios of berth and QCs increase in the proportion of jumbos for any given duration of high/low water time window.
From the above experimental results, we may conclude that tides have a nonneglectable impact on the vessel turnaround times and the utilization of critical resources in container terminals.Therefore, the integrated scheduling of berth and QCs considering tidal impacts seems important and meaningful.

Conclusion
This work introduces tidal impacts into the integrated berth and QC scheduling problem.We focus on the time-variant version of QC scheduling such that the set of QCs assigned to the same vessel can be different in two consecutive time steps.An integer linear programming model for the considered problem is proposed.Three heuristics, GA, HPSO, and HSA, based on two greedy algorithms are proposed to solve the problem.Computational experiments are conducted to demonstrate the good performances of the proposed algorithms, which produce optimal solutions for small size instances and generate high quality solutions for large size instances.Numerical results also reveal that tides have a significant impact on the total turnaround time of vessels as well as the resource utilization.
The following two extensions may be of interest for the studied problem in this work.The first one is to investigate multiobjective models which minimize simultaneously more than one objective function such as the total turnaround time, the departure delay cost of vessels, and the penalties of nondesired berthing location assignments.Another extension is to study the scenario with uncertain arrival times or processing

ℎ 2 : under keel clearance t 1 t 2 Figure 1 :
Figure 1: Illustration of a vessel passing through the approach channel.

Figure 2 :
Figure 2: An optimal solution of a BACASP-TC instance.

𝑖
and the maximum possible processing time  max  for vessel , where  min  =   / max  and  max  =   / min  .A random value within interval [ min  ,  max

Figure 3 : 4 )
Figure 3: A solution representation for an instance with six vessels.

Figure 4 :
Figure 4: Illustration of possible locations for processing vessel  6 .
positions X i and their objective function values f(X i ).
the iteration number k=1.the child solution who has the less objective function value; initial solution X 1 ;Set the initial temperature T=T 0 ;Calculate the objective function value Y 1 of X 1 .
(iii)   : (binary) equal to 1 if vessel  is moored and processed in time step , 0 otherwise.(iv):(binary)equalto 1 if the stem of vessel  is located at berth segment  in time step , 0 otherwise.(v):(binary)equal to 1 if vessel  is moored below vessel   ; i.e., vessel  is moored at berth segments with indices smaller than those of vessel   , 0 otherwise.See Figure2for illustration.(vi): (binary) equal to 1 if vessel  enters the approach channel to berth in the th high water time window, 0 otherwise.(vii)]  : (binary) equal to 1 if vessel  passes through the approach channel and leaves the port in the th high water time window, 0 otherwise.

Table 1 :
An example for Algorithm 2.

Table 2 :
Parameter selection for heuristic algorithms.

Table 3 :
Specifications of different types of vessels.

Table 5 :
Numerical comparison between the heuristics for large instances.

Table 6 :
Tidal impact on jumbos waiting times.

Table 7 :
Tidal impact on vessels turnaround time.

Table 8 :
Tidal impact on berth utilization ratio.