Next Article in Journal
Multi-Scenario Simulation and Assessment of Ecological Security Patterns: A Case Study of Poyang Lake Eco-Economic Zone
Previous Article in Journal
Integrating Strategies Aimed at Biodiversity and Water Resource Sustainability in the Amazonian Region
Previous Article in Special Issue
What Makes the Route More Traveled? Optimizing U.S. Suburban Microtransit for Sustainable Mobility
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Variable Neighborhood Search Algorithm for the Integrated Berth Allocation and Quay Crane Assignment Problem

by
Xiafei Xie
1,
Bin Ji
1,* and
Samson S. Yu
2
1
School of Traffic & Transportation Engineering, Central South University, Changsha 410075, China
2
School of Engineering, Deakin University, Melbourne, VIC 31125, Australia
*
Author to whom correspondence should be addressed.
Sustainability 2025, 17(9), 4022; https://doi.org/10.3390/su17094022
Submission received: 22 March 2025 / Revised: 27 April 2025 / Accepted: 28 April 2025 / Published: 29 April 2025
(This article belongs to the Special Issue Smart Transport Based on Sustainable Transport Development)

Abstract

:
To improve the utilization of port resources and reduce the consumption of resources due to vessel waiting and delays, this paper investigates the Berth Allocation and Quay Crane Assignment Problem (BACAP) in container ports, focusing on the Quay Crane (QC) profile. The objective is to assign berths, berthing times, and QC profiles to vessels arriving at the port within a given planning horizon, thereby extending the traditional BACAP framework. To minimize the sum of idle time costs caused by vessel waiting and delay time costs due to late vessel departures, a mixed-integer linear programming (MILP) model is proposed. Additionally, a variable neighborhood search (VNS) algorithm is designed to solve the model, tailored to the specific characteristics of the problem. The proposed MILP model and VNS algorithm are evaluated using two sets of BACAP instances. The numerical results demonstrate the effectiveness of both the model and the algorithm, showing that VNS efficiently and reliably solves instances of various sizes. Furthermore, each neighborhood structure contributes uniquely to the iterative process. This study also analyzes the impact of different idle and delay costs on BACAP, providing valuable managerial insights. The proposed framework contributes to enhancing operational efficiency and supports sustainable port management.

1. Introduction

In the context of the rapid development of intelligent transportation systems, coupled with the ongoing advancement of global economic integration and the expansion of international trade, ports—critical hubs for cargo transportation—are playing an increasingly prominent role within the broader intelligent transportation ecosystem. The increasing prevalence of large-scale vessels has significantly heightened the operational pressure on ports, presenting considerable challenges to both their operational efficiency and service quality during the process of digital transformation. One of the key strategies for effectively managing port operations is the optimization of berth and QC schedules, as these are among the most essential yet limited resources within the port system. From a sustainability perspective, inefficient utilization of core port resources results in prolonged vessel idle time, excessive energy consumption, and exacerbated greenhouse gas emissions—factors that collectively compromise both the environmental and economic sustainability of port operations. Consequently, the development of intelligent and adaptive scheduling frameworks is essential not only for enhancing operational efficiency but also for minimizing environmental impact and advancing green transformation of seaports.
Moreover, seaport operations should not be viewed in isolation. As highlighted in recent research [1], maritime transport forms an integral part of intermodal logistics systems, where seamless coordination with inland transport modes—such as rail and road—is essential. Optimizing berth and quay crane scheduling at ports not only improves port-side efficiency but also facilitates smoother cargo transfers across the entire supply chain, ultimately benefiting manufacturers, distributors, sellers, and customers.
In the Berth Allocation and Quay Crane Assignment Problem, QC assignment can be categorized into two types: time-invariant QC assignment and time-variant QC assignment. Time-invariant QC assignment refers to a scenario in which a fixed number of QCs serve a vessel throughout its entire operational process. The BACAP, considering time-invariant QC assignment, has received significant attention in the literature. Imai et al. [2] introduced a formulation for BACAP with time-invariant QC assignment and proposed two novel models: a 0–1 integer linear programming (ILP) model for the BACAP and a mixed-integer linear programming (MILP) model. Building on the model developed by Meisel and Bierwirth [3], Iris et al. [4] introduced a generalized set partitioning approach to address the BACAP, which incorporates two QC assignment strategies. Wang et al. [5] investigated the time-invariant Berth Allocation and Quay Crane Assignment Scheduling Problem (BACASP) within the context of carbon emission tax policies, incorporating both single and segmented tax rates. They developed an optimization model and proposed several equivalent or relaxed models to enhance computational efficiency. Wang, Miao et al. [6] introduced a two-stage robust optimization model for time-invariant BACAP under uncertain conditions, achieving a comprehensive solution with enhanced robustness. Sharifi et al. [7] developed an integrated BACAP model with time-invariant QC assignment, considering vessel emission and speed optimization. Cheimanoff et al. [8] proposed a new MILP model to solve the time-invariant BACAP, considering continuous terminal topology and dynamic ship arrivals. Correcher et al. [9] proposed a novel MILP model for the continuous BACAP and demonstrated its capability to solve instances involving up to 50 vessels. Ji et al. [10] investigated time-invariant BACAPs under stochastic vessel arrivals and formulated a MILP model, aimed at minimizing the total port time of vessels. They employed a Multi-Objective Constrained Handling (MOCH) strategy and proposed an Enhanced Non-dominated Sorting Genetic Algorithm II (ENSGA-II) to solve the problem. Bouzekri et al. [11] addressed the integrated problem of the Laycan Allocation Problem, the dynamic continuous Berth Allocation Problem (BAP), and the time-invariant QC Assignment Problem in tidal ports. Xiang et al. [12] redefined the discrete berth allocation and time-invariant QC assignment problem as a constraint-limited resource scheduling problem. Then, a branch-and-cut algorithm was proposed to solve the redefined problem efficiently. Ji et al. [13] studied a dynamic Berth Allocation and time-invariant QC Assignment specific problem when unscheduled vessels arrive at the port (UBACASP), considering factors such as dynamic vessel arrivals and non-crossing constraints between quay cranes. Building upon their previous research [14], Song et al. [15] integrated time-invariant QC Assignment into the Multi-port Berth Allocation Problem (MBACAP) for the first time, constructing a MILP model. In comparison to previous studies on the Multi-port Berth Allocation Problem (MBAP), this model considers the impact of specific QC assignments on vessel handling time and incorporates additional constraints to reflect a more realistic scheduling scenario.
While time-invariant QC assignment reduces the computational complexity of the model, it also limits the practical applicability of the solution. In contrast, time-variant QC assignment not only maximizes QC utilization but also more accurately reflects real-world operations. This approach offers greater flexibility by allowing the number of QCs allocated to a vessel to change throughout its operational period. As a result, numerous studies have been conducted on time-variant QC assignment.
Park and Kim [16] developed a MILP model to schedule both berths and QCs. Meisel and Bierwirth [3] critiqued Park and Kim’s linear relationship between vessel handling time and the number of QCs, proposing an alternative model that accounts for interference between QCs and the deviation from the optimal berthing position, which influences handling time. Raa et al. [17] introduced a MILP model that considers vessel priorities, berthing preferences, and handling times influenced by container volume and quay crane availability. This model was solved using a hybrid heuristic and validated with real-world data. Li et al. [18] extended the BACAP by incorporating quay crane coverage constraints, formulating a nonlinear mixed-integer programming model based on continuous berth and quay crane coverage constraints. Wang, Hu et al. [19] incorporated onshore power supply (OPS) allocation into time-variant BACAP to support carbon emission reduction policies. Guo et al. [20] integrated time-variant BACAP with Yard Allocation Problem (YAP) and formulated a mixed-integer nonlinear programming (MINLP) model. Xiang and Liu [21] developed an almost robust model for time-variant BACAP, considering uncertainties in the late arrival of ships and inflation of container quantity. They also proposed a decomposition method to solve this complex problem. Li et al. [22] proposed a bi-objective optimization model for BACAP, aiming to minimize both the total vessel turnaround time and the penalty costs associated with quay crane maintenance earliness and tardiness. Xu et al. [23] developed a comprehensive mathematical model for the C/T-V (Continuous and Time-variant) BACAP and proposed a memetic algorithm with a heuristic decoding strategy, capable of efficiently solving large-scale instances involving up to 60 vessels. Zou et al. [24] developed a swarm optimization algorithm with intra- and inter-hierarchical competition (I2HCSO) for solving large-scale BACAP. Ran et al. [25] incorporated quay crane movement energy consumption for the first time, where a MILP model was formulated to minimize the maximum completion time of all vessels and total energy consumption. Thanos et al. [26] addressed QC working range constraints and developed a model to minimize container trans-shipment distances within the terminal yard. They proposed a heuristic algorithm based on fast local search to solve the BACAP. Malekahmadi et al. [27] considered safe distances between quay cranes and non-crossing constraints. They formulated an integer programming model for the integrated continuous berth allocation, time-variant QC assignment, and QC scheduling problem.
However, within the planning horizon, frequent quay crane exchanges are not always optimal, as they incur time and cost penalties. As a result, several studies have imposed constraints on QC exchanges to mitigate these drawbacks. Zhang et al. [28] argued that frequent changes in QC allocation led to substantial relocation costs. To address this, they introduced limitations on the number of QC changes during vessel service, taking into account the length of each QC and the berthing range it can serve. Türkoğulları et al. [29] integrated QC relocation costs into their model, incorporating both fixed and distance-dependent variable costs. In a subsequent study [30], the same team strengthened the constraints on QC changes, stipulating that once a QC is assigned to a vessel, it can only be reassigned upon the completion of the vessel’s loading/unloading operations.
Giallombardo et al. [31] introduced the definition of QC profiles to effectively balance quay crane utilization and the frequency of QC exchanges. Each QC profile contains information on the number of work shifts and the number of QCs assigned to each work shift. The QC profile transforms the time-invariant QC assignment into a time-variant assignment by varying the number of QCs between work shifts, thus improving QC utilization and aligning the model more closely with real-world operations. By limiting the difference in the number of QCs between shifts to no more than two, the non-crossing constraint between QCs can be addressed. Additionally, by restricting QCs to move only between shifts, the number of QC exchanges during a vessel’s service can be controlled. Vacca et al. [32] explored the time-variant BACAP in seaport container terminals, building upon the BAP defined by Giallombardo et al. [31], and introduced a column generation (CG) algorithm to solve the problem. Xie et al. [33] further developed the BACAP based on QC profiles, aiming at minimizing berth and time deviations. This problem was solved using a branch-and-price algorithm within the Dantzig–Wolfe decomposition framework. Tang et al. [34] were the first to incorporate QC efficiency uncertainty into the BACAP with QC profiles, considering tidal time windows. They formulated a MILP model to minimize the total cost of vessel delay in berthing and departure, solving it using a column generation algorithm. Xiang et al. [35] investigated automated trans-shipment hubs and introduced a multi-objective optimization model that simultaneously addresses berth allocation, quay crane assignment, and yard allocation by incorporating QC profiles. They proposed an efficient adaptive dynamic scheduling strategy to balance the trade-offs among multiple objectives adaptively.
To summarize, existing studies have made significant progress in modeling the BACAP under both time-invariant and time-variant quay crane assignments. However, most models are constrained by computational scalability and heavily rely on exact solution methods. Heuristic methods for BACAP incorporating QC profiles, particularly for large-scale instances, remain underexplored. Moreover, the BACAP has been proven to be NP-hard [16], and as the scale of the problem rises, these exact algorithms face significant challenges related to excessive computation time and memory consumption. To address these challenges, this paper proposes an effective VNS algorithm to solve the proposed MILP model of the BACAP. The effectiveness and superiority of the VNS algorithm are demonstrated through a comparative analysis with other algorithms. The results of this research provide theoretical support and practical guidance for port operation management, offering significant theoretical and practical value.
The BACAP exhibits typical characteristics of multi-resource allocation, multi-task scheduling, and time window constraints. It shares significant similarities with the flexible job shop scheduling problem (FJSP) and the Vehicle Routing Problem with Time Windows (VRPTW). For the FJSP, Yang et al. [36] addressed distributed heterogeneous assembly flexible job shop scheduling problems and proposed a Q-learning-based improved multi-objective genetic algorithm. Zhang et al. [37] formulated a MILP model for the dual-resource flexible job shop scheduling problem in production line reconfiguration scenarios (DRFJSP-PLR) and proposed a rule-guided exemplar learning genetic algorithm with neighborhood search (RgELGA_NS). Shao et al. [38] developed a multi-objective optimal scheduling method for variable sublot flexible shops, incorporating switching time and operator constraints, and proposed an adaptive job scheduling NSGA-II (AJS-NSGAII) algorithm. For the VRPTW, Liu et al. [39] proposed an improved genetic algorithm based on clustering methods and the longest common substring (LCS) between elite and inferior individuals. Su et al. [40] introduced a lightweight genetic algorithm with variable neighborhood search (LGAVNS), combining GA as the upper-level algorithm and VNS as the local search method, to solve a multi-depot green VRPTW considering customer satisfaction (MDGVRPTW-CS). In conclusion, heuristic and metaheuristic algorithms have become prominent research topics in complex scheduling problems.
This paper investigates the BACAP within a VNS framework, leveraging its multi-resource collaborative scheduling feature. The design of solution and neighborhood structures in this study provides valuable insights for solving FJSP and VRPTW problems.
The main contributions of this study are as follows:
(1)
A MILP model is formulated for the discrete and time-variant BACAP based on QC profiles, aiming to minimize the costs of vessel waiting and delayed departures while considering berth time windows and spatiotemporal non-overlapping constraints among vessels.
(2)
A VNS algorithm is developed for the BACAP with QC profiles, in which a tailored solution structure is designed, and multiple neighborhood structures are incorporated to enhance the search efficiency and effectiveness. The algorithm can calculate instances of 40 ships.
(3)
The effectiveness of the proposed model and algorithm is validated through two sets of computational experiments, and sensitivity analysis on the weights of waiting and delay costs provides valuable managerial insights for port operations.
The remainder of this paper is organized as follows: Section 2 presents the problem statement, Section 3 formulates the MILP model for the BACAP, Section 4 elaborates on the VNS algorithm designed according to the characteristics of the BACAP, and Section 5 provides the numerical experiments that include two sets of instances. Section 6 presents the conclusion.

2. Problem Statement

Prior to the arrival of vessels, relevant information—such as the vessel type, estimated time of arrival (ETA), estimated time of departure (ETD), and the number of containers to be handled—is collected by the port of call. The port then assigns berths, berthing time steps, and a reliable QC profile to vessels arriving within a given planning horizon. The QC profile, introduced by Giallombardo et al. [31], represents a combination of time duration and the assigned number of QCs at each time step. This definition is based on the end-of-shift assumption, which means that QCs can be moved during a vessel’s service, but they cannot be reassigned until the end of a work shift.
The handling time for each vessel is determined precisely by the assigned QC profile, rather than by a predefined constant. For further details on the QC profile definition, readers are referred to Giallombardo et al. [31]. The port can assign a QC profile to determine the number of QCs allocated to a specific vessel at each time step during the vessel’s service. To better understand the BACAP and the QC profile, a berthing plan for five vessels at three berths over 12 work shifts is illustrated in Figure 1. In this figure, one work shift is equivalent to one step. In the figure, vessel 1 begins berthing in work shift 1, berths for three work shifts, and departs in work shift 3. Based on the assigned QC profile, the number of QCs servicing the vessel in each time step is known. For vessel 1, two QCs are allocated in work shift 1, and one QC is allocated in both work shifts 2 and 3.
In this paper, a MILP model for the BACAP is developed for discrete berths, considering the non-overlapping constraints of vessels, the available time windows for ships and berths, and the constraints associated with the QC profile.
The objective is to minimize the total cost of delayed berthing and the total cost of delayed departures. In the existing literature on the BACAP, various objectives have been explored to reflect different operational priorities. For instance, Wang et al. [41] developed a model for minimizing the total terminal scheduling cost, which includes berth deviation cost, delayed start delay cost, and delayed departure cost. Li et al. [42] extended the total terminal scheduling cost proposed by Wang et al. [41] by further incorporating the loading and unloading costs of vessels. These objective functions capture diverse optimization goals in port operations. In this study, we focus on two critical and practical objectives:
(1)
Minimizing the delayed berthing time, which captures the cost associated with vessels failing to berth at their expected times;
(2)
Minimizing the delayed departure time, which accounts for the penalties incurred when vessels leave the port later than scheduled.
These objectives are highly relevant to real-world port operations. By reducing vessel waiting and departure delays, this objective contributes to lowering fuel consumption, mitigating greenhouse gas emissions, and improving the overall sustainability of port operations.
The formulation is based on the following assumptions:
(1)
The estimated time of vessel arrival (ETA) and the estimated time of vessel departure (ETD) are discrete and known.
(2)
The container quantity to be handled for each vessel is known.
(3)
The set of available QC profiles for each vessel is known.
(4)
Vessels can only be berthed after their arrival.
(5)
QCs operate on rails and cannot pass each other.
(6)
The number of QCs allocated to a vessel can only be changed between shifts.

3. Model Formulation

This section presents a MILP model for the BACAP, developed based on the approach proposed by Xie et al. [33]. Unlike the model by Xie et al. [33], our model does not consider the effect of the preferred berth of vessels. The objective is to minimize the sum of idle costs caused by vessel waiting and the delay costs from late vessel departures. Additionally, we introduce a linearization constraint related to the objective of minimizing delay costs for late vessel departures.

3.1. Notations

The sets, parameters, and decision variables involved in the proposed MILP model for the BACAP are described in Table 1.

3.2. Proposed Optimization Model

The MILP model for the BACAP is presented as follows. The objective function (1) aims to minimize the total of vessel idle time cost and delay time cost.
Z = min i I c i 1 · T i a i + i I c i 2 · δ i · E i b i
Constraints (2)–(4) ensure that each vessel is assigned to exactly one berthing position, one QC profile, and one berthing time.
k K X i k = 1 , i I
h H Y i h = 1 , i I
q Q i Z i q = 1 , i I
Constraint (5) means that only compatible QC profiles can be assigned to a vessel. Figure 2 is an illustrative example of Constraint (5). In the figure, there are four shifts, each consisting of six time-steps, with each time-step one hour. There are four available QC profiles: QC profile 1 to QC profile 4. Assume that the incoming vessel has a container-handling demand of 300 TEUs, and the handling rate of a quay crane is 20 TEUs per hour. Then, the QC time (quay crane operation time) of vessel is 300 ÷ 20 = 15 . If the vessel is berthed starting from time-step 1, the total QC time provided by QC profile 1 is 2 × 6 = 12, which is less than the required 15, so QC profile 1 is not feasible. Similarly, QC profile 2 provides a total of 1 × 6 + 1 × 6 = 12 QC time-steps, which is also insufficient and therefore infeasible. Similarly, when a vessel with a handling demand of 300 TEUs (Twenty-foot Equivalent Units) is berthed starting from time-step 1, only QC profile 3 and QC profile 4 are feasible options. Constraint (5) links the berthing time step of vessel with the available QC profiles. Once the berthing time is determined, only the QC profiles that are feasible for that time step can be assigned to the vessel.
h H s Y i h q Q i s Z i q , s S , i I
Constraints (6) and (7) define the berthing time T i and the departure time E i for vessel i , respectively. Similarly to Vacca et al. [32], The berthing time T i of vessel i is determined by the binary variable Y i h , which indicates whether the vessel selects a specific berthing time step. The departure time E i of vessel i is determined by its berthing time T i and the required operation duration t i s q , which depends on the assigned QC profile. The reason for subtracting 1 from E i is because time-step indices start from 1. For example, if the berthing time T i is 1 and the vessel is assigned a QC profile with a working duration t i s q = 5 , then the vessel spans time steps 1, 2, 3, 4, and 5. Thus, the departure time is E i = 1 + 5 1 = 5 . Constraints (8) and (9), as well as Constraints (10) and (11), impose the time window constraints on the vessels and berths, respectively.
T i = h H h · Y i h , i I
E i = h H s h · Y i h + h H s q Q i s t i s q · V i q h 1 , i I , s S
a i T i , i I
T i b i , i I
k K X i k · a k T i , i I
T i k K X i k · b k , i I
Constraint (12) sets Y B i h to 1 when h T i ; that is, for time-steps after the vessel’s berthing time, the variable Y B i h is set to 1. Constraint (13) restricts Y F i h to 1 when h E i ; that is, for time-steps before the vessel’s departure, the variable Y F i h is set to 1. Constraint (14) ensures that Y I i h = 1 when both Y B i h and Y F i h are equal to 1, Constraints (15) and (16) set Y I i h to 0 for h < T i and h > E i . This means that when the variable Y I i h = 1 , the corresponding time steps fall between the vessel’s berthing and departure times, i.e., during the vessel’s stay at the port. For time-step s where Y I i h = 0 , either the vessel has not yet berthed, or it has already departed. This variable reflects the occupancy status of the berth.
h T i + 1 M · Y B i h , h H , i I
E i h + 1 M · Y F i h , h H , i I
Y I i h Y B i h + Y F i h 1 , h H , i I
T i h   M 1 Y I i h , h H , i I
h E i M 1 Y I i h , h H , i I
Constraints (17) and (18) define V i q h . When Z i q = 1 and Y i h = 1 , V i q h is equal to 1; otherwise, V i q h is equal to 0. Constraints (19) and (20) define U i k h . When X i k = 1 and Y I i h = 1 , U i k h is equal to 1. Otherwise, U i k h is equal to 0. Constraint (21) set δ i to 0 when E i b i , while Constraint (22) restricts δ i to 1 when E i > b i .
2 Z i q Y i h M 1 V i q h , q Q i , h H , i I
V i q h Z i q + Y i h 1 , q Q i , h H , i I
2 Y I i h X i k M 1 U i k h , k K , h H , i I
U i k h Y I i h + X i k 1 , k K , h H , i I
E i b i M · δ i , i I
E i b i M 1 δ i , i I
Constraint (23) ensures that the QC capacity is not exceeded at any time step, as illustrated in Figure 3. This example schedules and assigns I = 4 vessels to K = 4 berths within the time horizon of H = 12 time-steps. In this example, one shift consists of 6 time-steps. From the scheduling results, it is clear that during the entire time period h = 6 , vessel 1 occupies 2 QCs, vessel 2 occupies 2 QCs, and vessel 3 occupies 2 QCs, for a total of 2 + 2 + 2 = 6 QCs. This does not exceed the maximum number of QCs at time step h = 6 for the port in the current plan. Constraint (23) ensures that the QC assignment for all vessels is feasible and does not exceed the maximum quay crane capacity of the port. The detailed calculation process for this constraint can be found in the study by Xie et al. [33].
i I q Q i s s S t H s , t h t + t i s q 1 n i s q h t + 1 · V i q t Q h m a x , h H
Constraint (24) ensures that vessels assigned to the same berth do not overlap at any time step.
i I U i k h 1 , k K , h H
Constraints (25)–(34) define the range of the decision variables.
X i k 0,1 , k K , i I
Y i h 0,1 , h H , i I
Z i q 0,1 , q Q i , i I
Y B i h 0,1 , h H , i I
Y F i h 0,1 , h H , i I
Y I i h 0,1 , h H , i I
U i k h 0,1 , k K , h H , i I
V i q h 0,1 , q Q i , h H , i I
δ i 0,1 , i I
T i , E i 0 , I n t e g e r , i I

4. Solution Method

4.1. Solution Framework of the BACAP

The BACAP is NP-hard [16], and the presence of QC profiles further increases the solution space, so the traditional exact algorithms struggle to efficiently solve large-scale instances of the BACAP. Consequently, this study proposes a heuristic solution algorithm tailored to the problem’s characteristics. Given that the objective of the BACAP model is the sum of the idle time costs resulting from vessel waiting and the delay time costs associated with late vessel departure, and assuming that the order in which ships are served at the berth and the allocation of QC profiles are predetermined, the optimal start service time for each vessel can be easily determined. Therefore, the BACAP can be transformed into the problem of finding the optimal ship–berth sequence assignment and the QC profile assignment. This is a discrete combinatorial optimization problem, for which a corresponding discrete combinatorial optimization algorithm can be developed for solution search.
This approach addresses two key issues. The first is the design of a scheme for ship-berth sequence allocation and QC profile allocation, and the second is the development of an iterative algorithm to reconstruct this scheme and guide the search direction based on the merits of the scheme.
For the first issue, this paper designs a solution structure capable of generating all possible ship-berth order allocations and QC profile allocation schemes through reconstruction. For the second issue, the paper adopts the VNS framework [43]. VNS uniquely combines shaking and local search mechanisms, enabling the algorithm to explore different neighborhood structures and effectively avoid getting trapped in local optimal solutions. By dynamically altering the neighborhood structure during the search process, VNS better explores the solution space, improving the global search effectiveness. VNS has been successfully applied to a range of discrete combinatorial optimization problems, such as the Vehicle Routing Problem (VRP) [44] and machine scheduling problems [45]. Consequently, this study employs the VNS framework to design neighborhood structures for shaking and local search that are tailored to the problem’s features, addressing the challenges posed by its NP-hard nature and the large number of discrete combinatorial schemes. The detailed implementation of the proposed VNS is shown in Figure 4.
Figure 4 illustrates the flowchart of the proposed VNS algorithm applied to the BACAP. The algorithm begins with parameter initialization and initial solution generation, which includes the ship–berth sequence and the QC profile assignment.
The core process consists of two phases: shaking and local search. The shaking phase diversifies the search by exploring different neighborhoods N k ( S ) , while the local search intensifies the solution space within neighborhood N l ( S ) . By iteratively updating solutions based on improvement conditions and predefined limits k m a x   and l m a x , the algorithm balances exploration and exploitation. This method can escape local optima through systematic changes in neighborhoods, making it well-suited for complex and large-scale scheduling problems like the BACAP. Additionally, the modular separation of berth sequencing and QC profile assignment enables great flexibility and scalability. However, one notable limitation of this approach is its strong dependence on the quality of the initial solution. Since the search process begins with a single starting point, a poorly constructed initial solution may lead the algorithm to explore less promising regions within the solution space, thereby affecting the convergence rate and the solution quality. The following subsections present a detailed description of the solution structure, the initial solution generation strategy, and the neighborhood structures utilized in the VNS algorithm.

4.2. Solution Structure for the BACAP

The optimal solution to the BACAP involves determining both the ship–berth sequence allocation and the QC profile allocation. The solution structure of the BACAP is presented in Equation (35). Assume that there is a total of K berths in the port, where K denotes the set of berths. For a particular berth k , let n k represent the number of vessels assigned to berth k , and that V n k represents the vessel that is served last at berth k , and the vessels at berth k are V 1 , V 2 , , V n k .
X = B 1 V 1 Q C 1 B 1 V 2 Q C 2 B 2 V 1 Q C 1 B 2 V 2 Q C 2 B 1 V n 1 Q C n 1 B 2 V n 2 Q C n 2 B K V 1 Q C 1 B K V 2 Q C 2 B K V n K Q C n K
The vertical axis of the solution structure denotes the berths, while the horizontal axis illustrates the berthing sequence of vessels assigned to each berth. B k V u Q C u represents the u-th vessel V u served at berth k and its corresponding QC profile Q C u . When B k V u Q C u is determined in the solution structure, the berthing sequence of the vessels at each berth and the QC profile assigned to each vessel can be derived.
To further demonstrate that solution structure X captures all possible berth sequence allocations and QC profile combinations, we provide an estimate of the upper bound of the solution space size. Suppose there are n vessels, k berths, and each vessel has q feasible QC profiles. The maximum number of possible combinations is at most n ! · k n · q n , where n ! accounts for the permutations of vessel service sequences across the port, k n accounts for berth assignments where each vessel independently selects a berth, and q n represents the combinations of QC profiles selected by each vessel. For instance, if n = 10 , k = 4 , and q = 10 , the total number of combinations is at most 10 ! × 4 10 × 10 10 3.8 × 10 23 . This confirms that the structure is expressive enough to represent the complete solution space.
Once the solution structure is determined, the start time for vessel operations is established. The berthing time of the first vessel at each berth is set to the vessel’s arrival time. The berthing time of subsequent vessels must not be earlier than the departure time of the preceding vessel, ensuring orderly operations of vessels at the same berth. The start times of vessels at berth k are given by Equation (36).
B V u = a V u                                                         ,   u = 1 max ( a V u , a V u 1 + t Q C u 1 ) ,   1 u n k

4.3. Initial Solution Generation

Due to the complexity of the BACAP, randomly generating initial solution is inefficient and often fails to ensure solution quality, which in turn leads to a poor starting point for the optimization algorithm. Therefore, this study proposes an initial solution generation method based on the solution structure designed in Section 4.2, which is described as follows. The generation of the initial solution consists of two key steps: determining the berthing sequence of vessels at each berth and successively determining the berthing time for each vessel while allocating a specific QC profile.
The first step is to determine the berthing sequence of the vessels at each berth, which is relatively straightforward. Specifically, vessels are first sorted in the order of their arrival times, and then the sorted vessels are randomly assigned to each berth.
The second step is to assign a suitable QC profile based on the existing ship-berth sequence, and subsequently determine the start berthing time, service time under the current QC profile, and departure time of the vessels. The challenge in this step lies in the fact that the start time and QC profile assigned for the previous vessel affect its departure time, which, in turn, impacts the start time and available QC profiles for subsequent vessels at the same berth. To address this issue, this study proposes the following algorithm for allocating QC profiles to vessels. Algorithm 1 outlines the QC profile assignment process. Specifically, Algorithm 1 assigns QC profiles to vessels according to the ship-berth sequence S k . For vessel i at berth k , considering the time window of ship i , the time window of berth k and the current occupancy status of the berth k , the set of reliable berthing time steps of the vessel i at berth k , denoted as H k i , can be initially obtained. Next, based on the availability of QC profiles at each time step in H k i , the reliable time steps H k i for vessel i at berth k are further screened from H k i . From the set of available time steps H k i , the earliest time step is selected according to the principle of berthing as early as possible. After determining the berthing time step h , the QC profile sorting algorithm is applied to the set of QC profile Q i h related to the time step h , and the sorted QC profile set Q i h is obtained. The first QC profile in Q i h is then assigned to vessel i . At this point, the berthing time T i , QC profile q i and departure time T i for vessel i are determined. The berth availability status is then updated, and the specific berthing allocation for the next vessel i + 1 is determined. This process continues until the berthing schedules for all vessels are finalized, at which point the algorithm terminates and outputs the initial solution.
Algorithm 1 QC profile assignment algorithm
Input :   A   set   of   equal-length   time   steps   H   ,   a   set   of   berths   K   ,   a   set   of   feasible   QC   profiles   for   vessels   i I     for   time   steps   with   index   s S     within   a   work   shift   Q i s   ,   a   ship - berth   sequence   S k     for   berth   k K .
1 For   berth   k K  do
2   For   vessel   i S k  do
3     Generate   the   set   H k i     of   available   time   steps   for   vessel   i     according   to   the   time   window   of   vessel   i   ,   the   available   time   window   of   berth   k     and   the   occupancy   status   of   berth   k .
4     For   time   step   h H k i  do
5   If   Q i h  do
6   Update   the   Start   time   of   vessel   i   :   T i = h .
7   QC   profile   sorting   algorithm   Q i h Q i h .
8   For   QC   profile   q Q i h  do
9 q i = q .
10          End for
11 Update   the   departure   time   of   vessel   i   :   E i = T i + t i h q .
12          Update the occupancy status of the berth.
13          End if
14       End for
15     End for
16  End for
Output :   Initial   solution   X 0 .
In the QC profile allocation algorithm described above, after selecting the berthing time step h , it is necessary to sort the available QC profiles Q i h corresponding to the current time step h , which involves a specific QC profile sorting algorithm as in Algorithm 2. The main idea of Algorithm 2 is to calculate the service time of the vessel under each QC profile while ensuring that the required QC time for the vessel is satisfied. The QC profiles Q i h are then sorted in nondecreasing order of service time. In cases where the service times are equal, the QC profiles are further sorted in ascending order based on the maximum number of QCs in each QC profile across all time steps. Finally, the sorted set of QC profiles, denoted as Q i h , is obtained.
Algorithm 2 QC profile sorting algorithm
Input :   A   set   of   feasible   QC   profiles   for   vessels   i I     for   time   steps   h H   Q i h   ,   The   QC   time   of   vessel   i I   T i n e e d .
1 For   QC   profile   q Q i h  do
2   Initialize   the   number   of   QC   time   t q     provided   by   QC   profile   q     as   t q = 0 .
3   Initialize   the   current   time   step   u = 1 .
4   While   t q < T i n e e d  do
5     t q = t q + q u .
6     u = u + 1 .
7    End while
8     Record   the   time   step   u     corresponding   to   each   QC   profile   q .
9  End for
10     First   sorting :   According   to   the   u     recorded   for   each   QC   profile   q   ,   sort   the   set   of   QC   profile   Q i h from smallest to largest.
11   Second sorting: When there are QC profiles all with u values, sort these QC profiles again from smallest to largest according to the parameter: maximum number of QCs in these QC profile at all time steps.
Output :   The   sorted   set   of   QC   profile   Q i h .

4.4. Neighborhood Structures

In the VNS algorithm, neighborhood structures are utilized during the shaking and local search steps [43]. The shaking step enhances solution diversity, whereas the local search step aims to identify the local optimal solution. Based on the characteristics of the BACAP and the solution structure designed in Section 4.4, the following neighborhood structures are proposed in this section.

4.4.1. Shaking

For a given BACAP solution, the shaking step alters the QC profile decision information of some vessels. The specific neighborhood structure is as follows, where N S K represents the set of affected vessels, and N S K denotes the number of affected vessels.
Time-Increased QC Profile (TQS): Select N S K vessels with the shortest service times and replace their currently assigned QC profiles with QC profiles that have longer processing times. QC profiles with shorter processing times tend to occupy a larger number of QCs within a unit time step, which increases the penalty value. However, blindly replacing the existing QC profiles with longer processing time profiles can lead to extended service times for vessels, resulting in delayed departures and additional costs. To address this issue, we propose Algorithm 3. Specifically, we first apply the QC Profile Sorting Algorithm from Section 4.2 (Algorithm 2) to sort the QC profiles, find the index x of the QC profile assigned to the vessel i in the sorted set, and then replace it with the QC profile at index x + 1 .
Algorithm 3 Time-increased QC Profile
Input :   Current   solution   X c u r r e n t .
1 For   vessel   i N S K  do
2   Obtain   the   berthing   time   step   h     of   the   vessel   and   the   selected   QC   profile   q i x .
3   According   to   the   berthing   time   step   h     of   the   vessel   i   ,   obtain   the   corresponding   set   of   QC   profiles   Q i h from the set of QC profiles Q.
4   QC   profile   sorting   algorithm   Q i h Q i h .
5   Find   the   QC   profile   q i x     with   the   index   x     in   the   sorted   set   of   QC   profiles   Q i h .
6   Replace   the   QC   profile   q i x     of   vessel   i     with   the   QC   profile   q i x + 1     whose   index   x =   x + 1 .
7  End for
Output :   New   solution   X n e w .
Random QC Profile (RQS): Select N S K vessels and randomly replace their existing QC profiles with other QC profiles that are available at the current time step. The key difference between the Random QC Profile and the Time-Increased QC Profile neighborhood structures is that the QC profile sorting algorithm is not required. Instead, a QC profile with an index different from that of the existing QC profile is randomly selected from the current set of available QC profiles for replacement. This neighborhood structure greatly enhances the randomness of the solution and can increase the possibility of jumping out of the local optimum during the search of the VNS algorithm.
For the vessels with QC profiles that are disturbed, their berthing times are updated according to Equation (36), and their departure times are re-determined according to constraints (8). However, these operations may lead to conflicts between the rescheduled vessels and subsequent vessels assigned to the same berth. For example, consider disturbed vessel 2. Figure 5 illustrates the potential conflict scenarios and the corresponding adjustment methods. Specifically, when vessel 2 clashes with its predecessor vessel 1, the commencement of vessel 2 is delayed until the departure time of vessel 1. Subsequently, the available QC profile and departure time for the adjusted vessel are updated according to constraints (5) and (7), respectively.

4.4.2. Local Search

After each shaking step, the current solution moves to a new neighborhood. The purpose of the local search is to use the current solution obtained after shaking as the starting point to find a local optimum within the current neighborhood structure. In this section, we design the corresponding neighborhood structure based on the solution structure outlined in Section 4.4. Specifically, each neighborhood structure in the local search follows the destroy-repair process proposed by Wagner and Mönch et al. [46], with modifications tailored to the characteristics of the BACAP. Let N D R represent the set of affected vessels, and N D R denote the number of affected vessels.
Step 1: Select N D R vessels for the next destroy-repair operation based on the criteria defined by the neighborhood structure of local search.
Step 2: Destroy. Remove the selected N D R vessels from the existing solution and clear the relevant decision information for these vessels. In this BACAP, the decision information includes the berthing berth, the berthing time step, and the assigned QC profile.
Step 3: Repair. Re-determine the decision information for the selected N D R vessels. Taking the scheduling decision process of three berths and four vessels as an example, Figure 6 provides a more intuitive illustration of the repair process. Figure 6a illustrates the potential conflicts that may arise during the repair process, while Figure 6b shows the corresponding adjustments made to resolve the conflicts.
Specifically, as shown in Figure 6a, based on the principle of berthing as early as possible, vessel 4 will encounter conflicts at each berth. As shown in Figure 6b, since vessel 2 is the first to depart among the potentially conflicting vessels, the berthing time of vessel 4 is delayed until the departure time of vessel 2. Subsequently, vessel 4 is assigned to a feasible berth. After determining the berth and start time step for vessel 4, an available QC profile is selected from the set of QC profiles corresponding to the current start operation time step and allocated to vessel 4. During the QC profile selection process, conflicts with subsequent vessels at berth 2 should be minimized. However, if clashes cannot be avoided, they should be resolved using the conflict adjustment scheme outlined in Section 4.4.1.
From the above, it can be seen that the neighborhood structure of the local search is to select vessels for the destroy–repair operation. The primary distinguishing factor between different neighborhood structures lies in the selection criteria used to identify vessels for the destroy–repair process. These criteria will be discussed in detail in the following sections.
Idle Destroy–Repair (IDR): This neighborhood structure prioritizes vessels with excessively long waiting time. Such waiting time can lead to delayed departure time and increased delay time costs. The Idle Destroy–Repair process is outlined in Algorithm 4.
Algorithm 4 Idle Destroy-Repair
Input :   The   current   solution   X c u r r e n t .
1 Select   N D R     vessels   with   larger   waiting   time   among   the   vessels   in   the   current   solution   X c u r r e n t .
2 While   N D R  do
3   Destroy :   Remove   vessel   i     from   the   current   solution   X c u r r e n t     and   clear   the   information   of   vessel   i .
4   Repair :   Re-determine   the   decision   information   of   vessel   i . The specific repair process can be seen in Figure 6.
5 Remove   vessel   i     from   the   set   N D R .
6  End while
Output :   New   solution   X n e w .
Delay Destroy–Repair (DDR): This neighborhood structure selects vessels associated with relatively high delay time cost. In maritime transportation, vessel delays are highly undesirable, as they can disrupt the berthing schedules of subsequent vessels. The key difference between this neighborhood structure and Idle Destroy–Repair (IDR) lies in the rules for selecting the N D R vessels. While IDR sorts vessels in descending order of waiting time, DDR filters vessels based on their delayed departure times. The goal of both structures is to improve the objective value as much as possible.
Max-QCs Destroy–Repair (MDR): This neighborhood structure focuses on selecting vessels with a relatively large maximum number of quay cranes in their QC profiles. Given Constraint (23) on the total number of available QCs at the port, if the number of QCs allocated in a single time step exceeds the maximum capacity, a penalty is imposed according to Equation (38) in Section 4.4.3. By removing vessels with a relatively large maximum number of QCs in their QC profiles, the penalty associated with the final berthing scheme can be reduced, thereby increasing the feasibility of the solution. The key difference between MDR and IDR lies in the criteria used for filtering vessels and the objects targeted in the destroy–repair operation; however, the subsequent destroy–repair processes are identical.
Random Destroy–Repair (RDR): This neighborhood structure randomly selects vessels, which is applied at the end of the local search. RDR does not impose specific rules when filtering vessels, it simply selects N D R vessels, after which the subsequent destroy-repair operations follow the same procedure as those in IDR. Compared to the Random QC Profile neighborhood structure employed during the shaking step, this neighborhood structure has greater potential to generate more effective solutions.

4.4.3. QC Capacity Constraint Handling Strategy

When using intelligent optimization algorithms to solve constrained optimization problems, one of the most widely used constraint-handling methods is the penalty function method proposed by Courant [47]. The objective value of the solution is the total of its initial objective function value and the penalty corresponding to its constraint violation. In other words, by adding a penalty function to the objective function, the constrained optimization problem is transformed into an unconstrained optimization problem that is easier to solve. In this study, we apply the penalty function method to handle constraint (23), which limits the maximum number of QCs per unit time step in the BACAP.
Specifically, when the algorithm generates a solution that violates the constraint (23) regarding the number of QCs, the solution is not considered infeasible. Instead, the corresponding penalty mechanism is activated. For each feasible solution generated, the total number of QCs occupied by the ship at each time step in the existing berthing schedule Q h x is calculated according to Equation (37). If Q h x exceeds the maximum allowable number of QCs Q h m a x at time step h , the difference, Q h p e n a l t y , is computed and retained, as shown in Equation (38). This penalty is then accumulated over all time steps, and the total accumulated penalty is multiplied by a large constant M , as reflected in the objective function of the solution in Equation (39). This penalty value is used to evaluate the solution during the algorithm’s operation.
Q h x = i I q Q i s s S t H s , t h t + t i s q 1 q i s q h t + 1 · V i q t ,   h H
Q h p e n a l t y = 0                                           , i f   Q h x   Q h m a x Q h x Q h m a x     ,   i f   Q h x > Q h m a x ,   h H
Z = min i I c i 1 · T i a i + i I c i 2 · δ i · E i b i + M h H Q h p e n a l t y
By treating algorithmic situations that exceed the constraints as penalties, this strategy guides the algorithm to minimize the generation of constraint-violating solutions during the search for the optimal solution. It encourages the algorithm to search in a direction that both satisfies the constraints and optimizes the objective function. Simultaneously, this approach strikes a balance between constraint compliance and objective function optimization, enabling the algorithm to efficiently search for solutions that meet the constraints while achieving good performance in solving complex constrained optimization problems.

5. Numerical Results

The experimental data in this paper consists of two components: QC profile data and vessel arrival data. Two sets of BACAP instances, A1 and A2, are used in the experiments. Instance A1 is based on the QC profile information and time settings used by Ilaria Vacca et al. [32], combined with the vessel information provided by Zhang et al. [28]. Instance A2 is generated following the rules outlined by Tang et al. [34] for the QC profile and vessel arrival data.
In instance A1, the sets of feasible profiles, as shown in Table 2, were synthetically generated according to the operational rules presented by Giallombardo et al. [31]. As shown in Table 2, a profile must comply with a fixed set of parameters to be considered feasible. Maximum and minimum QC amount limit the number of QCs allocated to each QC profile at each work shift, and maximum and minimum handling time limit the number of shifts covered by each QC profile.
In instance A1, the specific vessel information shown in Table 3 is adopted from Zhang et al. [28]—such as the estimated arrival time, the estimated departure time and the minimum required QC time based on the number of containers. These data are based on real-world information from a terminal at the Tianjin seaport in China.
In instance A1, the planned period is set to a time horizon of 168 h, or one week. Each work shift contains 6 h, and the available berth time window spans the entire observation period, i.e., [0, 167]. According to the study by Xie et al. [33], the unit idle time cost c i 1 —due to vessel waiting for all vessels and the unit delay time cost c i 2 —due to late vessel departure for all vessels, are both set to 1000.
Instance A1 is classified into three scales based on the number of vessels and is further divided into three categories according to the number of QC profiles. For each combination, five sets of randomly generated experiments are conducted. The parameters for each A1 instance are presented in Table 4.
In instance A2, the QC profile data are generated according to the rules proposed by Tang et al. [34], which assume that arriving vessels can be classified into different types. The probabilities of occurrence of these vessel types are presented in Table 5. In Table 5, P i and h i p represent the container capacity and operating hours, respectively. According to the parameters in Table 5, the available QC profile set Q i for vessel i and the corresponding number of QCs n i s q u at each time step can be generated following the steps proposed in [34], and we recommend that readers refer to their study for further details.
In instance A2, the arrival vessel information required includes the ETA, the ETD, and the handling time required by each vessel. The ETA, denoted as a i , is generated from the uniform distribution a i ~ U 0 ,   167 , where a i Z + . The ETD is generated according to the rule b i = a i + t , where t [ 10 ,   20 ] . The handling time required by the vessels is generated based on the handling time corresponding to different vessel types, as presented in Table 5. According to the study by Tang et al. [34], since vessel delays often lead to a series of chain reactions such as subsequent vessels failing to berth in the estimated time, we set the unit delayed berthing time to be larger in instance A2. The unit idle time cost due to vessel waiting c i 1 is generated from a uniform distribution c i 1 ~ U ( 1000 ,   2000 ) , and the unit delay cost due to late vessel departure c i 2 , is generated from the distribution c i 2 ~ U ( 2000 ,   3000 ) .
In instance A2, the planned period is also set to a time horizon of 168 h. Unlike instance A1, each shift in A2 consists of a single step, i.e., hour per step. The available time window for the berth spans the entire observation period. The scale of instance A2 is determined by the number of vessels I , the number of berths K , and the maximum number of QCs Q h m a x . For each vessel, 2 to 10 QC profiles are generated and subsequently incorporated into the overall QC profile scheme of the port. Consequently, the number of QC profiles Q i ranges from 2 × I to 10 × I . Data from four different problem scales is provided, denoted as G1, G2, G3 and G4. Label G1-1 refers to the first instance of the G1 problem scale. The specific parameters for each instance are presented in Table 6.
Finally, performance comparison between the VNS algorithm and Gurobi is conducted using the generated set of BACAP instances. The VNS algorithm, as described previously, is implemented in Python using PyCharm Community Edition 2024.2.1, while the formulated MILP model is solved through the commercial optimization software Gurobi 12.0.0. After conducting the experiments and considering both the solution efficiency and solution quality of the algorithms, in the VNS algorithm process, the number of vessels disturbed during the shaking step, N S K , is set to | V | / 4 , and the number of vessels selected to destroy–repair during the local search step, N D R , is set to | V | / 2 . In addition, the total number of iterations for the entire algorithm is limited to 1000, while the total number of iterations for each neighborhood structure in the local search step is limited to 100. Each run records the objective value O b j V and the solution time of the output solution. To maximize the likelihood of finding the optimal solution within a limited time while still allowing for practical decision-making, the commercial solver Gurobi is restricted to a maximum solution time of 1 h. For each run, the objective value of the output solution O b j G , the gap between the optimal solution and the return time are recorded. All numerical experiments are conducted on a Windows PC with an Intel(R) Core (TM) i5-8500 CPU (Intel Corporation, Santa Clara, CA, USA) and 8.00 GB of RAM.

5.1. Experimental Comparisons

All generated BACAP instances are addressed using both the proposed VNS algorithm and the commercial solver Gurobi. The detailed comparison results are presented in Table 7 and Table 8. In these tables, O b j G represents the objective value obtained by Gurobi within 1 h, and G a p G denotes the gap between the Gurobi solution and the optimal solution. O b j V is the objective value obtained by VNS, while G a p V indicates the gap between the best solution found by VNS and the solution returned by Gurobi, as calculated according to Equation (40).
G a p V = O b j V O b j G O b j G × 100 %
As presented in Table 7 for the A1 instance set, for small-scale instances (S_01–S_03), the objective values obtained by VNS and Gurobi are identical; however, VNS demonstrates a significant advantage in solution time. For the first sub-instance of S_01, Gurobi takes 10.36 s, while VNS requires only 1.23 s. In another sub-instance of S_01, the solution time of VNS is at most one-tenth that of Gurobi. For medium-scale instances (M_01–M_03), when the objective values are the same, VNS further outperforms Gurobi in terms of solution time. For example, in the first sub-instance of M_02, Gurobi requires 123.46 s, while VNS completes the solution in just 2.45 s. In larger instances, the VNS algorithm demonstrates clear performance benefits, not only outperforming Gurobi in solution quality but also achieving results within 30 s. Thus, the proposed VNS algorithm is well-suited for small- and medium-scale BACAP instances and demonstrates superior performance over Gurobi in large-scale cases.
As shown in Table 8, the results for the A2 instance indicate that VNS achieves the same objective value as Gurobi for some sub-instances of the G1 and G2 instances. Although there are some sub-instances within both the G1 and G2 instances where the objective value obtained by VNS differs slightly from that of Gurobi, the gap is small (for example, the first sub-instance of G1 has a G a p V of 2.41). At the same time, in all G1 and G2 instances, the solution time of the VNS algorithm is consistently better than that of Gurobi. For the G3 instances, VNS demonstrates a more significant advantage, as the solution time of Gurobi reaches 3600 s, whereas VNS requires substantially less time. Furthermore, VNS yields better objective values in several sub-instances. For example, in the first sub-instance of G3, the G a p G is 12.03, while the G a p V is −4.56, indicating that the objective value computed by VNS is closer to the optimal solution. For all sub-instances of G4, Gurobi fails to reach optimality within the time limit, resulting in high G a p G values (e.g., 22.43, 28.38, and 31.09), while VNS not only solves each sub-instance in under 40 s but also achieves significantly better objective values. The negative G a p V values (e.g., −12.56, −19.08, and −20.77) further suggest that VNS delivers higher-quality solutions under stringent computational constraints. Therefore, the results from the A2 instance set provide additional evidence that the proposed VNS algorithm is both efficient and stable in solving large-scale BACAP instances.
In summary, after analyzing the A1 and A2 instance sets, the VNS algorithm for solving the BACAP proves to be effective for small- and medium-scale instances. For large-scale instances, VNS demonstrates a significant advantage over Gurobi in terms of solution time, while maintaining comparable or even superior solution quality. Therefore, the VNS algorithm exhibits the capability to efficiently and reliably solve large-scale BACAP instances.
Furthermore, in order to verify the validity of the neighborhood structures designed in the shaking step and the local search step, we carried out the following experiments. Sequentially, the neighborhood structures of the corresponding steps are removed in the VNS algorithm, and then 20 experiments are carried out, respectively, and the best solution, denoted as O b j B V , and the average solution, denoted as O b j A V , are recorded. Their relative deviations, denoted as R i , from the results in Table 7 are calculated using Equation (41). The experiment selects the first instance from each scale within the A1 set. The results are presented in Figure 7 and Figure 8, where ‘-’ represents the removal of the corresponding neighborhood structure.
R i = O b j i V O b j G O b j G × 100 % , i = A , B
The results in Figure 7 and Figure 8 visualize the role played by the neighborhood structure during shaking steps and local search steps in the VNS algorithm process. In the shaking step, the Random QC Profile (RQS) neighborhood structure exerts the greatest impact, with the Time-Increased QC Profile (TQS) structure following. This is because the RQS structure can escape local optima and has a notable effect on improving the solution, while most vessels tend to serve with shorter handling times to minimize the risk of delayed departures. Although the effect of the TQS neighborhood structure is less pronounced than that of the RQS, it still contributes positively to the improvement of the solution. Regarding the local search neighborhood structures, the Idle Destroy–Repair (IDR) and Delay Destroy–Repair (DDR) structures exhibit the most significant and comparable effects, followed by the Random Destroy–Repair (RDR), with the Max-QC Destroy–Repair (MDR) structure having the least impact.
Therefore, in the actual scheduling process, special attention should be given to ships with delays and longer waiting times. Additionally, it is undesirable to select a QC profile with longer handling times solely to meet the maximum number of QC limitation, as this may lead to delayed departures, resulting in higher costs due to delayed times.
In addition, when allocating QC profiles based on the ship–berth sequence discussed in Section 4.3, we introduced a QC profile sorting algorithm. The following presents a comparison of the algorithmic effects of applying versus not applying this QC profile sorting algorithm. When the sorting algorithm is not applied, the first QC profile from the provided set is selected for allocation to the corresponding ship, which significantly increases the randomness in the selection of QC profiles. For the experiment, the first instance from each scale in the A1 set is selected.
Specifically, the QC profile sorting algorithm is removed initially, and then the VNS algorithm, without the sorting component, is executed 20 times to record both the average solution and the average solution time. The results are presented in Table 9. In Table 9, “VNS+” refers to VNS with the QC profile sorting algorithm, while “VNS-” denotes VNS without the QC profile sorting algorithm.
As shown in Table 9, for each instance, the objective value remains the same regardless of whether the QC profile sorting algorithm is applied. However, the running time of VNS with the QC profile sorting algorithm is significantly shorter than that of VNS without it, indicating that the QC profile sorting algorithm effectively improves computational efficiency and significantly reduces the required computation time. In conclusion, the application of the QC profile sorting algorithm does not affect the final solution’s value but can significantly reduce the running time. Thus, the use of the QC profile sorting algorithm enhances computational efficiency and reduces time costs in practical applications.

5.2. Sensitivity Analysis of Idle Cost and Delay Cost

In the BACAP model, the unit idle time cost due to vessel waiting c i 1 and the unit delay time cost due to late vessel departures c i 2 are important factors. In this section, a sensitivity analysis is conducted to examine the influence of these costs on the BACAP. The experiment selects the S_02, M_02, and B_02 instances from A1, with the results for these instances presented in Figure 9a–c. In this experiment, c i 2 is first fixed at 1000, and c i 1 is varied by conducting 10 experiments in steps of 100 within the interval [500, 1500]. Then, c i 1 is fixed at 1000, and c i 2 is varied similarly, as well as in steps of 100 within the same interval. Figure 9 illustrates the average total of vessel idle time costs and delay time costs, according to the best solution from 20 runs of the VNS.
The sensitivity analysis results in Figure 9 indicate that with the same step size of cost change, as c i 1 increases, the total cost for each instance (S_02, M_02, and B_02) rises by a larger magnitude and exhibits a steeper slope. In contrast, the increase in total cost when c i 2 is varied is relatively small, with a flatter slope.
The underlying reason for this trend is that, under the data of the A1 instances, the disturbance to the overall operation caused by delayed vessel berthing is greater than that caused by delayed vessel departures. This may be due to the relatively high frequency of delayed vessel berthing, which results in the cost incurred by delayed berthing accounting for a larger portion of the total cost per-unit time. As a result, any change in its cost per unit of time has a significant impact on the total cost. In contrast, delayed vessel departures cause relatively mild disruptions to the overall operation, or occur less frequently, leading to a weaker impact on the total cost from changes in the unit time cost.
Based on the above analysis, in practical management, emphasis should be placed on monitoring the unit time cost associated with delayed berthing. The risk of delayed berthing can be mitigated by training crew members to improve operational skills, upgrading equipment to enhance reliability, and addressing error-causing factors in the berthing process. Optimizing the berthing process, improving the scheduling system, and strengthening communication and collaboration among all parties can further reduce the likelihood of delayed berthing. Additionally, it is crucial to establish a dynamic cost evaluation mechanism to adjust operational strategies and budgets based on real-time cost fluctuations, thereby ensuring maximum economic benefits.

6. Conclusions

This paper investigates the Berth Allocation and Quay Crane Assignment Problem from the perspective of QC profiles, as proposed by Giallombardo et al. [19]. QC profiles offer new insights into the BACAP at the tactical level, with the goal of dealing with existing challenges and improving maritime transportation efficiency. Drawing on previous studies [19,21], we propose a MILP model for the BACAP, with the objective of minimizing the sum of idle time cost due to vessel waiting and delay time cost resulting from late vessel departures. Furthermore, we introduce a VNS algorithm designed to address the BACAP with both stability and effectiveness, particularly suitable for large-scale and complex scheduling problems. Both the model and the algorithm focus on the variable number of QCs in actual terminal operations, providing better applicability for real-world scenarios.
Numerical experiments conducted on the A1 and A2 instance sets validate the stability and efficiency of the proposed VNS algorithm across different problem scales. Specifically, the VNS algorithm outperforms the commercial solver Gurobi in terms of both solution quality and computational time on large-scale instances, achieving high-quality solutions within significantly shorter times. Additionally, the evaluation of the VNS neighborhood structures reveals that different neighborhood structures play distinct roles in the optimization process, and the proposed QC profile sorting algorithm significantly improves the computational efficiency of the VNS without compromising the solution quality. Sensitivity analysis of the per-unit time costs for delayed berthing and delayed departure shows that changes in the unit time cost for delayed berthing have a more pronounced impact on the total cost, highlighting the critical importance of minimizing vessel waiting times in practical port management. Based on this analysis, it is recommended that port operation management prioritize the cost of delayed berthing unit time, mitigate the risk of delayed berthing through crew training and equipment upgrades, optimize the berthing process, and implement a dynamic cost assessment mechanism to adjust operational strategies and budgets in response to cost fluctuations.
In conclusion, this study demonstrates the effectiveness of the VNS algorithm in solving the BACAP. By minimizing vessel idle times and reducing inefficient quay crane reallocations, the proposed framework helps lower energy consumption and emissions, thereby contributing to greener and more sustainable port operations. However, port operations continuously face challenges and developmental bottlenecks. It should be noted that the proposed model is tailored for container terminals, as quay crane operation time is determined by the vessel’s handling volume and the unit-time handling efficiency of a single quay crane. This implies an approximate linear relationship between handling volume and operation time, which is more applicable to container terminals. As a result, the applicability of the current model is limited to container ports.
Future research will explore more generalized and flexible relationships between handling volume and handling time, aiming to extend the model to other types of ports. In the future, we will further consider equipment maintenance strategies in the scheduling model to enhance its practical applicability. Future research can also explore the integration of additional port resources, such as yards and transport trucks, into the BACAP for integrated scheduling from the perspective of the QC profile. Furthermore, extending the BACAP to the coordinated scheduling of multiple ports by considering the cooperation of port groups is a promising research direction. Incorporating sustainability metrics, such as carbon emissions and energy efficiency, into future BACAP formulations will be essential for aligning port operations with global environmental goals. Additionally, incorporating vessel emissions in port operations aligns with the growing emphasis on environmentally sustainably shipping. Lastly, the continuous development of more efficient solution algorithms to address increasingly complex port scheduling problems will remain a key research topic.

Author Contributions

Conceptualization, B.J.; Methodology, B.J. and X.X.; Software, X.X.; Validation, B.J.; Formal analysis, X.X.; Investigation, X.X.; Resources, B.J.; Data curation, X.X.; Writing—original draft, X.X., B.J. and S.S.Y.; Writing—review and editing, X.X., B.J. and S.S.Y. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by Natural Science Outstanding Youth Foundation of Hunan Province, China under Grant No. 2024JJ4073 and The Science and Technology Innovation Program of Hunan Province, China under Grant No. 2024RC3011.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The data presented in this study are available upon request from the corresponding author.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Macioszek, E.; Jurdana, I. Transport of goods on the example of a selected section of transport in Poland. Sci. J. Silesian Univ. Technology. Ser. Transp. 2023, 121, 127–140. [Google Scholar] [CrossRef]
  2. Imai, A.; Chen, H.C.; Nishimura, E.; Papadimitriou, S. The simultaneous berth and quay crane allocation problem. Transp. Res. Part E Logist. Transp. Rev. 2008, 44, 900–920. [Google Scholar] [CrossRef]
  3. Meisel, F.; Bierwirth, C. Heuristics for the integration of crane productivity in the berth allocation problem. Transp. Res. Part E Logist. Transp. Rev. 2009, 45, 196–209. [Google Scholar] [CrossRef]
  4. Iris, Ç.; Pacino, D.; Ropke, S.; Larsen, A. Integrated berth allocation and quay crane assignment problem: Set partitioning models and computational results. Transp. Res. Part E Logist. Transp. Rev. 2015, 81, 75–97. [Google Scholar] [CrossRef]
  5. Wang, T.; Wang, X.; Meng, Q. Joint berth allocation and quay crane assignment under different carbon taxation policies. Transp. Res. Part B Methodol. 2018, 117, 18–36. [Google Scholar] [CrossRef]
  6. Wang, C.; Miao, L.; Zhang, C.; Wu, T.; Liang, Z. Robust optimization for the integrated berth allocation and quay crane assignment problem. Nav. Res. Logist. (NRL) 2024, 71, 452–476. [Google Scholar] [CrossRef]
  7. Sharifi, S.; Gholami, H. A new multi-objective model for berth allocation and quay crane assignment problem with speed optimization and air emission considerations (A case study of Rajaee Port in Iran). Int. J. Marit. Technol. 2023, 17, 25–48. [Google Scholar] [CrossRef]
  8. Cheimanoff, N.; Fontane, F.; Kitri, M.N.; Tchernev, N. Exact and heuristic methods for the integrated berth allocation and specific time-invariant quay crane assignment problems. Comput. Oper. Res. 2022, 141, 105695. [Google Scholar] [CrossRef]
  9. Correcher, J.F.; Alvarez-Valdes, R.; Tamarit, J.M. New exact methods for the time-invariant berth allocation and quay crane assignment problem. Eur. J. Oper. Res. 2019, 275, 80–92. [Google Scholar] [CrossRef]
  10. Ji, B.; Huang, H.; Samson, S.Y. An enhanced NSGA-II for solving berth allocation and quay crane assignment problem with stochastic arrival times. IEEE Trans. Intell. Transp. Syst. 2022, 24, 459–473. [Google Scholar] [CrossRef]
  11. Bouzekri, H.; Alpan, G.; Giard, V. Integrated Laycan and Berth Allocation and time-invariant Quay Crane Assignment Problem in tidal ports with multiple quays. Eur. J. Oper. Res. 2021, 293, 892–909. [Google Scholar] [CrossRef]
  12. Xiang, X.; Chang, X.; Gong, L.; Liu, X. An innovative framework for optimizing discrete berth allocation and quay crane assignment problems. Comput. Ind. Eng. 2025, 200, 110827. [Google Scholar] [CrossRef]
  13. Ji, B.; Tang, M.; Wu, Z.; Yu, S.S.; Zhou, S.; Fang, X. Hybrid rolling-horizon optimization for berth allocation and quay crane assignment with unscheduled vessels. Adv. Eng. Inform. 2022, 54, 101733. [Google Scholar] [CrossRef]
  14. Ji, B.; Song, Y.; Samson, S.Y.; Wei, Q. A modified adaptive large neighborhood search algorithm for solving the multi-port continuous berth allocation problem with vessel speed optimization. Comput. Ind. Eng. 2024, 198, 110699. [Google Scholar] [CrossRef]
  15. Song, Y.; Ji, B.; Samson, S.Y. Multi-Port Berth Allocation and Time-Invariant Quay Crane Assignment Problem with Speed Optimization. IEEE Trans. Intell. Transp. Syst. 2024, 26, 128–142. [Google Scholar] [CrossRef]
  16. Park, Y.M.; Kim, K.H. A scheduling method for berth and quay cranes. OR Spectr. 2003, 25, 1–23. [Google Scholar] [CrossRef]
  17. Raa, B.; Dullaert, W.; Van Schaeren, R. An enriched model for the integrated berth allocation and quay crane assignment problem. Expert Syst. Appl. 2011, 38, 14136–14147. [Google Scholar] [CrossRef]
  18. Li, F.; Sheu, J.B.; Gao, Z.Y. Solving the continuous berth allocation and specific quay crane assignment problems with quay crane coverage range. Transp. Sci. 2015, 49, 968–989. [Google Scholar] [CrossRef]
  19. Wang, Z.; Hu, H.; Zhen, L. Berth and quay cranes allocation problem with on-shore power supply assignment in container terminals. Comput. Ind. Eng. 2024, 188, 109910. [Google Scholar] [CrossRef]
  20. Guo, L.; Zheng, J.; Du, J.; Gao, Z.; Fagerholt, K. Integrated planning of berth allocation, quay crane assignment and yard assignment in multiple cooperative terminals. Transp. Res. Part E Logist. Transp. Rev. 2024, 183, 103456. [Google Scholar] [CrossRef]
  21. Xiang, X.; Liu, C. An almost robust optimization model for integrated berth allocation and quay crane assignment problem. Omega 2021, 104, 102455. [Google Scholar] [CrossRef]
  22. Li, Y.; Chu, F.; Zheng, F.; Liu, M. A bi-objective optimization for integrated berth allocation and quay crane assignment with preventive maintenance activities. IEEE Trans. Intell. Transp. Syst. 2020, 23, 2938–2955. [Google Scholar] [CrossRef]
  23. Xu, L.S.; Huang, T.; Zhao, B.W.; Gong, Y.J.; Liu, J. Continuous Berth Allocation and Time-Variant Quay Crane Assignment: Memetic Algorithm With a Heuristic Decoding Method. IEEE Trans. Intell. Transp. Syst. 2025, 26, 3387–3401. [Google Scholar] [CrossRef]
  24. Zou, Y.; Xu, P.; Dai, H.; Song, H.; Luo, W. Swarm Optimization with Intra-and Inter-Hierarchical Competition for Large-Scale Berth Allocation and Crane Assignment. IEEE Trans. Emerg. Top. Comput. Intell. 2025, 9, 1307–1321. [Google Scholar] [CrossRef]
  25. Ran, L.; Liu, B.; Zhang, G.; Cheng, Y. An improved particle swarm optimization algorithm for berth allocation and time-variant quay crane scheduling problem during an emergency. Expert Syst. Appl. 2025, 269, 126406. [Google Scholar] [CrossRef]
  26. Thanos, E.; Toffolo, T.; Santos, H.G.; Vancroonenburg, W.; Vanden Berghe, G. The tactical berth allocation problem with time-variant specific quay crane assignments. Comput. Ind. Eng. 2021, 155, 107168. [Google Scholar] [CrossRef]
  27. Malekahmadi, A.; Alinaghian, M.; Hejazi, S.R.; Saidipour, M.A.A. Integrated continuous berth allocation and quay crane assignment and scheduling problem with time-dependent physical constraints in container terminals. Comput. Ind. Eng. 2020, 147, 106672. [Google Scholar] [CrossRef]
  28. Zhang, C.; Zheng, L.; Zhang, Z.; Shi, L.; Armstrong, A.J. The allocation of berths and quay cranes by using a sub-gradient optimization technique. Comput. Ind. Eng. 2010, 58, 40–50. [Google Scholar] [CrossRef]
  29. Turkogullari, Y.B.; Taskin, Z.C.; Aras, N.; Altinel, I.K. Optimal berth allocation, time-variant quay crane assignment and scheduling with crane setups in container terminals. Eur. J. Oper. Res. 2016, 254, 985–1001. [Google Scholar] [CrossRef]
  30. Türkoğulları, Y.B.; Taşkın, Z.C.; Aras, N.; Altınel, İ.K. Optimal berth allocation and time-invariant quay crane assignment in container terminals. Eur. J. Oper. Res. 2014, 235, 88–101. [Google Scholar] [CrossRef]
  31. Giallombardo, G.; Moccia, L.; Salani, M.; Vacca, I. Modeling and solving the tactical berth allocation problem. Transp. Res. Part B Methodol. 2010, 44, 232–245. [Google Scholar] [CrossRef]
  32. Vacca, I.; Salani, M.; Bierlaire, M. An exact algorithm for the integrated planning of berth allocation and quay crane assignment. Transp. Sci. 2013, 47, 148–161. [Google Scholar] [CrossRef]
  33. Xie, F.; Wu, T.; Zhang, C. A branch-and-price algorithm for the integrated berth allocation and quay crane assignment problem. Transp. Sci. 2019, 53, 1427–1454. [Google Scholar] [CrossRef]
  34. Tang, X.; Liu, C.; Li, X.; Ji, Y. Distributionally Robust Programming of Berth-Allocation-with-Crane-Allocation Problem with Uncertain Quay-Crane-Handling Efficiency. Sustainability 2023, 15, 13448. [Google Scholar] [CrossRef]
  35. Xiang, X.; Lee, L.H.; Chew, E.P. An adaptive dynamic scheduling policy for the integrated optimization problem in automated transshipment hubs. IEEE Trans. Autom. Sci. Eng. 2023, 21, 2701–2715. [Google Scholar] [CrossRef]
  36. Yang, Z.; Hu, X.; Li, Y.; Liang, M.; Wang, K.; Wang, L.; Tang, H.; Guo, S. A Q-learning-based improved multi-objective genetic algorithm for solving distributed heterogeneous assembly flexible job shop scheduling problems with transfers. J. Manuf. Syst. 2025, 79, 398–418. [Google Scholar] [CrossRef]
  37. Zhang, Z.; Li, X.; Gao, L.; Liu, Q.; Huang, J. Tackling dual-resource flexible job shop scheduling problem in the production line reconfiguration scenario: An efficient meta-heuristic with critical path-based neighborhood search. Adv. Eng. Inform. 2025, 65, 103282. [Google Scholar] [CrossRef]
  38. Shao, S.; Xu, G.; Li, J.; Liu, Z.; Jin, Z. A job assignment scheduling algorithm with variable sublots for lot-streaming flexible job shop problem based on NSGAII. Comput. Oper. Res. 2025, 173, 106866. [Google Scholar] [CrossRef]
  39. Liu, J.; Tong, L.; Xia, X. A genetic algorithm for vehicle routing problems with time windows based on cluster of geographic positions and time windows. Appl. Soft Comput. 2025, 169, 112593. [Google Scholar] [CrossRef]
  40. Su, Y.; Zhang, S.; Zhang, C. A lightweight genetic algorithm with variable neighborhood search for multi-depot vehicle routing problem with time windows. Appl. Soft Comput. 2024, 161, 111789. [Google Scholar] [CrossRef]
  41. Wang, C.; Liu, K.; Zhang, C.; Miao, L. Distributionally robust chance-constrained optimization for the integrated berth allocation and quay crane assignment problem. Transp. Res. Part B Methodol. 2024, 182, 102923. [Google Scholar] [CrossRef]
  42. Li, B.; Afkhami, P.; Khayamim, R.; Borowska-Stefańska, M.; Wiśniewski, S.; Fathollahi-Fard, A.M.; Ozkul, S.; Dulebenets, M.A. An intelligent hyperheuristic algorithm for the berth allocation and scheduling problem at marine container terminals. Transp. Res. Part E Logist. Transp. Rev. 2025, 198, 104104. [Google Scholar] [CrossRef]
  43. Hansen, P.; Mladenović, N. Variable neighborhood search: Principles and applications. Eur. J. Oper. Res. 2001, 130, 449–467. [Google Scholar] [CrossRef]
  44. Qian, B.; Feng, F.L.; Yu, N.K.; Hu, R.; Chen, Y.W. An alternating direction multiplier method with variable neighborhood search for electric vehicle routing problem with time windows and battery swapping stations. Appl. Soft Comput. 2024, 166, 112141. [Google Scholar] [CrossRef]
  45. Yildiz, S.T.; Ozcan, S.; Cevik, N. Variable neighborhood search-based algorithms for the parallel machine capacitated lot-sizing and scheduling problem. J. Eng. Res. 2023, 13, 100145. [Google Scholar] [CrossRef]
  46. Wagner, S.; Mönch, L. A variable neighborhood search approach to solve the order batching problem with heterogeneous pick devices. Eur. J. Oper. Res. 2023, 304, 461–475. [Google Scholar] [CrossRef]
  47. Courant, R. Variational Methods for the Solution of Problems of Equilibrium and Vibrations; Lecture Notes in Pure and Applied Mathematics; CRC Press: Boca Raton, FL, USA, 1994; Available online: https://www.taylorfrancis.com/chapters/edit/10.1201/b16924-5/variational-methods-solution-problems-equilibrium-vibrations (accessed on 20 April 2025).
Figure 1. Diagram of the BACAP.
Figure 1. Diagram of the BACAP.
Sustainability 17 04022 g001
Figure 2. An illustrative example of constraint (5).
Figure 2. An illustrative example of constraint (5).
Sustainability 17 04022 g002
Figure 3. A schematic instance for Constraint (23).
Figure 3. A schematic instance for Constraint (23).
Sustainability 17 04022 g003
Figure 4. Flowchart of VNS framework for solving the BACAP.
Figure 4. Flowchart of VNS framework for solving the BACAP.
Sustainability 17 04022 g004
Figure 5. Diagram of the vessel conflict adjustment. Note: Red highlights the vessel conflict, while black indicates feasible berthing schedules.
Figure 5. Diagram of the vessel conflict adjustment. Note: Red highlights the vessel conflict, while black indicates feasible berthing schedules.
Sustainability 17 04022 g005
Figure 6. Diagram of the repair process. Note: Red indicates the vessel to be inserted, black represents the original berthing schedule, and yellow highlights the time period where conflicts may occur.
Figure 6. Diagram of the repair process. Note: Red indicates the vessel to be inserted, black represents the original berthing schedule, and yellow highlights the time period where conflicts may occur.
Sustainability 17 04022 g006
Figure 7. Shaking neighborhood structure effect experiments results.
Figure 7. Shaking neighborhood structure effect experiments results.
Sustainability 17 04022 g007
Figure 8. Local search neighborhood structure effect experiments results.
Figure 8. Local search neighborhood structure effect experiments results.
Sustainability 17 04022 g008
Figure 9. Results of VNS under various c i 2 and c i 2 .
Figure 9. Results of VNS under various c i 2 and c i 2 .
Sustainability 17 04022 g009
Table 1. Notations and variables.
Table 1. Notations and variables.
Sets and Parameters:
I Set   of   vessels ,   index   by   i .
K Set   of   berths ,   index   by   k .
a i Estimated   time   step   of   arrival   of   vessel   i I .
b i Estimated   time   step   of   departure   of   vessel   i I .
a k Start   of   the   available   time   step   of   berth   k K .
b k End   of   the   available   time   step   of   berth   k K .
H Set   of   equal - length   time   steps ,   index   by   h   and   t .
S Set   of   time - step   indices   relative   to   a   work   shift ,   indexed   by   s .
H s Set   of   all   time   steps   with   the   same   index   s S   for   all   work   shifts ,   index   by   h   and   t .
Q i Set   of   feasible   QC   profiles   for   vessels   i I .
Q i s Set   of   feasible   QC   profiles   for   vessels   i I   for   time   steps   with   index   s S within a work shift.
t i s q Handling   time   of   vessel   i I   under   QC   profile   q Q i   for   time   steps   with   index   s S within a work shift.
n i s q u Number   of   QCs   used   by   QC   profiles   q Q i   ,   for   vessel   i I   ,   at   time   step   u 1 , , t i s q   if   vessel   i   starts   berthing   at   time   steps   with   index   s S within a work shift.
Q h m a x Max   number   of   QCs   for   time   step   h H .
M A sufficiently large positive value.
c i 1 Unit   idle   time   cos t   of   vessel   i I due to vessel waiting.
c i 2 Unit   delay   time   cos t   of   vessel   i I due to late vessel departure.
Decision Variables:
X i k Binary   variable ,   which   equals   1   if   vessel   i I   is   served   at   berth   k K , and 0 otherwise.
Y i h Binary   variable ,   which   equals   1   if   vessel   i I   is   served   at   time   step   h H , and 0 otherwise.
Z i q Binary   variable ,   which   equals   1   if   vessel   i I   is   served   by   QC   profile   q Q i , and 0 otherwise.
T i The   time   step   to   start   berthing   of   vessel   i I .
E i The   time   step   to   departure   of   vessel   i I .
δ i Binary   variable ,   which   equals   1   if   vessel   i I completes the service after the estimated time step of arrival, 0 otherwise.
Y B i h Binary   variable ,   which   equals   1   if   time   step   h H   is   not   earlier   than   the   starting   time   of   vessel   i I , 0 otherwise.
Y F i h Binary   variable ,   which   equals   1   if   time   step   h H   is   not   later   than   the   departure   time   of   vessel   i I , 0 otherwise.
Y I i h Binary   variable ,   which   equals   1   if   vessel   i I   is   being   served   at   time   step   h H , 0 otherwise.
U i k h Binary   variable ,   which   equals   1   if   berth   k K   is   occupied   by   vessel   i I   at   time   step   h H , 0 otherwise.
V i q h Binary   variable ,   which   equals   1   if   vessel   i I   is   served   by   QC   profile   q Q i   at   time   step   h H , 0 otherwise.
Table 2. Parameters for QCs in A1 instance.
Table 2. Parameters for QCs in A1 instance.
CategoryMinimum QC AmountMaximum QC AmountMinimum Handling TimeMaximum Handling Time
Big3536
Small1324
Table 3. Information on Vessels in A1 instance.
Table 3. Information on Vessels in A1 instance.
VesselID a i b i QC TimeVesselID a i b i QC Time
FY26112118LUOHE1178100105
CGSCA212696ARISI127810430
GT1321611XINTJ138611266
CMNAB4225113VENUS1490112109
ZHOHE51851113WH305159410584
ASIAN6224125SHAHE1610212222
NLLOA7354618HAICH1711012931
CISHL8385427GAOHE1812214936
XINYK95079114JINHX19122136108
DONGH10548818HJNGB2015216713
Table 4. The parameters of the A1 instance scale.
Table 4. The parameters of the A1 instance scale.
ScaleBerthVesselMax QCsSmall QCBig QCInstance NameInstance Number
Class 141091010S_015
1515S_025
2020S_035
Class 241591010M_015
1515M_025
2020M_035
Class 3420101010B_015
1515B_025
2020B_035
Table 5. Parameters associated with the handling requirements for each vessel type.
Table 5. Parameters associated with the handling requirements for each vessel type.
Vessel TypePercent P i QC VolumeQC Efficiency h i p
Handysize1/2[1000, 2000]2–450[2, 10]
Mini-Panamax1/4[2000, 3000]3–550[8, 16]
Panamax1/8[3000, 5000]3–550[12, 20]
Capesize1/8[5000, 10,000]4–650[16, 24]
Table 6. The specific parameters of each instance in A2.
Table 6. The specific parameters of each instance in A2.
ClassBerthVesselThe Number of QC ProfilesMax QCsInstance Number
G1210[20, 100]105
G2420[40, 200]155
G3630[60, 300]205
G4840[80, 400]255
Table 7. Comparison results of Gurobi and VNS for A1 instances.
Table 7. Comparison results of Gurobi and VNS for A1 instances.
InstanceGurobiVNS
O b j G G a p G Time(s) O b j V G a p V Time(s)
S _ 01 23,000010.3623,00001.23
25,000011.8225,00001.56
23,000012.1923,00001.78
24,000010.7424,00001.34
23,000012.5823,00001.89
S_0222,000013.2822,00001.36
23,000014.6523,00002.19
23,000015.3323,00001.74
20,000013.8720,00002.58
22,000014.9222,00001.93
S _ 03 22,000016.3722,00001.45
23,000017.8423,00002.78
21,000018.2921,00003.16
20,000019.5620,00001.92
21,000016.7321,00002.33
M _ 01 36,000056.3836,00002.36
31,000078.6231,00004.82
34,000083.1434,00003.19
36,000066.7636,00005.74
35,000092.3935,00002.58
M _ 02 32,0000123.4632,00002.45
27,0000156.7827,00005.76
31,0000138.2131,00003.89
32,0000179.5332,00007.12
31,0000111.6931,00004.36
M _ 03 32,0000234.7332,00002.38
27,0000289.1227,00006.72
30,0000315.7830,00004.19
31,0000356.0931,00008.54
29,0000267.3429,00003.66
B _ 01 55,00014.58360048,000−12.735.63
61,00022360050,000−18.037.82
57,00018.75360048,000−15.796.19
64,00025.49360051,000−20.319.37
52,0006.12360049,000−5.778.44
B _ 02 53,00023.26360043,000−18.875.46
53,00017.78360045,000−15.099.83
52,00018.18360046,000−11.5412.17
50,0008.7360046,000−8.007.89
55,00025360044,000−20.0013.34
B _ 03 56,00033.33360042,000−25.007.26
52,00020.93360043,000−17.3114.83
59,00040.48360042,000−28.8111.67
57,00029.55360044,000−22.818.92
55,00034.15360041,000−25.4516.38
Table 8. Comparison results of Gurobi and VNS for A2 instances.
Table 8. Comparison results of Gurobi and VNS for A2 instances.
InstanceGurobiVNS
O b j G G a p G Time(s) O b j V G a p V Time(s)
G 1 24,378018.3224,9652.413.46
57,750043.6257,75005.82
43,562032.4343,6780.274.19
57,750085.4558,0920.597.37
69,1420164.3469,14206.64
G 2 93,6480345.8693,7520.117.23
77,5210453.7677,521013.86
102,7390643.88102,8930.158.97
114,8650934.65114,865016.44
121,98301465.89121,983011.54
G 3 114,65812.033600109,432−4.5613.48
93,2173.18360090,343−3.0817.63
130,8428.63600120,483−7.9222.19
86,9035.98360082,537−5.0215.87
G 4 174,28622.433600152,394−12.5628.47
166,13219.763600144,273−13.1538.31
196,54728.383600159,033−19.0823.86
172,96631.093600137,028−20.7730.19
189,26025.613600159,215−15.8726.62
Table 9. Comparison results of the QC profile sorting algorithm for instance in A1.
Table 9. Comparison results of the QC profile sorting algorithm for instance in A1.
InstanceVNS-VNS+
O b j A V Time(s) O b j A V + Time(s)
S_0123,00011.7323,0001.67
S_0222,00012.1122,0001.83
S_0322,00011.5822,0001.95
M_0136,00022.6336,0005.84
M_0235,00023.0835,0004.92
M_0333,00021.8933,0007.85
B_0146,00038.4746,00012.67
B_0246,00036.1246,00014.43
B_0344,00040.0344,00015.89
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Xie, X.; Ji, B.; Yu, S.S. A Variable Neighborhood Search Algorithm for the Integrated Berth Allocation and Quay Crane Assignment Problem. Sustainability 2025, 17, 4022. https://doi.org/10.3390/su17094022

AMA Style

Xie X, Ji B, Yu SS. A Variable Neighborhood Search Algorithm for the Integrated Berth Allocation and Quay Crane Assignment Problem. Sustainability. 2025; 17(9):4022. https://doi.org/10.3390/su17094022

Chicago/Turabian Style

Xie, Xiafei, Bin Ji, and Samson S. Yu. 2025. "A Variable Neighborhood Search Algorithm for the Integrated Berth Allocation and Quay Crane Assignment Problem" Sustainability 17, no. 9: 4022. https://doi.org/10.3390/su17094022

APA Style

Xie, X., Ji, B., & Yu, S. S. (2025). A Variable Neighborhood Search Algorithm for the Integrated Berth Allocation and Quay Crane Assignment Problem. Sustainability, 17(9), 4022. https://doi.org/10.3390/su17094022

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop