Next Article in Journal
An Improved YOLOV5 Based on Triplet Attention and Prediction Head Optimization for Marine Organism Detection on Underwater Mobile Platforms
Previous Article in Journal
Adaptive Formation Control of Multiple Underactuated Autonomous Underwater Vehicles
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Efficient Algorithm for the Berth and Quay Crane Assignments Considering Operator Performance in Container Terminal Using Particle Swarm Model

by
Nyamatari Anselem Tengecha
and
Xinyu Zhang
*
Maritime Intelligent Transportation Research Team (MITRT), College of Navigation, Dalian Maritime University, Dalian 116026, China
*
Author to whom correspondence should be addressed.
J. Mar. Sci. Eng. 2022, 10(9), 1232; https://doi.org/10.3390/jmse10091232
Submission received: 30 July 2022 / Revised: 29 August 2022 / Accepted: 1 September 2022 / Published: 2 September 2022
(This article belongs to the Section Coastal Engineering)

Abstract

:
In the existing literature, the berthing operations, the quay crane assignments, and the scheduling problems were usually conducted without considering the worker performances (WPs) and the yard truck tasks (YTTs). However, professionals in situ corroborate the crucial effect of WPs and the yard YTTs on quay crane performance and efficiency. This study introduced a new feasible model for investigating the berth and the quay crane assignments based on the scheduling problem, including worker performances and yard truck deployment constraints. First, a mixed-integer programming (MIP) model is implemented to reduce the vessel’s departure time. Then, a particle swarm optimization (PSO) algorithm is introduced to solve the problems. The Dar es Salaam port is selected as a case study to test the proposed model with a real-time dataset that was collected from a multinational company managing container terminals. The results show the efficiency and the accuracy of the proposed model. The P S O algorithm is 86% and 62% more time-saving than M I L P and T 2 S solutions for a small number of containers, respectively. Additionally, the P S O solution is 73% and 53% time-saving for a medium number of containers than M I L P and T 2 S models, respectively. Finally, the present study proposes consideration of the worker assignment and the yard truck deployment during the planning phase.

1. Introduction

Over the years, container terminals have become one of the most representative logistics facilities in global freight transportation. The increasing number of containers and vessels introduced new issues to port management and resource scheduling because of scarce land, high labor cost, and limited technical equipment. In such a situation, operational efficiency can be achieved through the performance of managerial tools. Several studies investigated container terminal operations [1]. The berth allocation problem (BAP), the quay crane allocation problem (QCAP), and the scheduling problem (SP) are the topics that are most studied [2,3,4,5,6,7,8,9,10]. These three problems have been investigated as an integrated problem [11] that is known as the berth allocation, quay crane allocation, and scheduling problem (BAQCASP). Recently, researchers have progressively paid attention to BAQCASP [11,12], highlighting the importance of an integrated solution for container terminal operations.
The quay crane assignment (QCA) has been identified as the main operation for efficiently conducting BAQCASP. An optimal QCA can provide a great solution to BAQCASP, an essential component of container terminal performance. On the one hand, the performance rate of the quay crane is usually given in advance, which is a sub-problem of the container terminal operation. On the other hand, the container terminal performance is unknown. The quay crane performance depends on features such as YTTs and quay crane operators (QCOs). The YTTs highly affect the quay crane performance rates. A poor deployment of the yard truck extends time that is related to the quay crane operation and then minimizes the performance of the container terminal operations [13,14]. The operator productivity is a random feature depending on the industrial environment. Ref. [15] evaluated the operators’ performance in different industrial systems by considering the same characteristics, behavior, and productivity rate. Ref. [16] investigated the optimal flow-line conditions based on human performance with worker variability. The results show that the optimal throughput is related to worker learning and productivity.
The worker performance is completely random. The senior workers have some experience, junior workers need experience, and some are more quickly qualified than others to safely handle containers. In other words, the kill performance variates from one worker to another. Ref. [6] noticed from a dataset that the variance of the worker’s performance is 10.22 lifting containers per hour. Moreover, the dataset shows that the human factor should not be neglected in the managing system since 97% of container terminals worldwide are not automated [17].
The studies that are mentioned above are deterministic and cannot solve large-scale datasets with realistic results. The human factor should be considered for quayside operations, berthing allocation, and quay crane scheduling problems. The resulting formulations are highly complex and thus not solvable using commercial software. Heuristic models have been proposed to solve quay crane, berthing allocations, and the scheduling problem [9,18,19,20]. The particle swarm optimization (PSO) algorithm has been used to optimize the berth allocation solution since the berth allocation problem is an NP-hard problem [21]. Due to the complexity of the problem that is involved in this study, the PSO algorithm is used to build the solution. The PSO algorithm is a popular random search method that is influenced by the social behavior of bird flocks and has been used for several optimization problems [22,23].
This study proposes a new formulation problem as mixed-integer linear programming (MIL). The objective function minimizes the sum of departure time that is related to all the given vessels. Then, a lower bound is found using an efficient computational method. Hence, a constructive heuristic and the PSO algorithm are proposed to optimize the solution using a random search-based model to deal with the multi-variable and large-scale samples. Finally, a case study is conducted in Dar es Salaam port using a dataset that is provided by a multinational company managing the container terminal. Moreover, a decision-making tool is released to be helpful to the company that is managing the container terminal. The tool provides a scheduling method and illustrates the managerial implications and the influence of worker performance and yard truck deployment on the BAQCASP.
This study is organized as follows: First, the literature review is introduced in Section 2. Section 3 presents the problem that is addressed in this study. Section 4 presents the mathematical model. Section 5 shows the proposed solution. Section 6 presents the results. Section 7 summarizes the results that were obtained in this study.

2. Literature Review

Researchers focused on quay crane allocation, quay crane scheduling, berth allocation, and yard truck deployment in container terminals [13,24]. The BAQCASP includes the four sub-problems that are mentioned above, that are considered in this study. However, in the literature, those sub-problems are studied separately without any correlation. Ref. [25] proposed a modeling approach to study the quay crane schedule problem (QCSP) that was based on minimizing the vessel’s discharge operation sequence. Ref. [3] combined the quay crane allocation problem (QCSP) and the QCSP and solved the problem using Lagrange relaxation (LR). Ref. [26] combined the BAP and the QCAP based on a set portioning model and column reduction approaches. Ref. [24] proposed an optimal solution for merging the BAP and the QCAP through the quay crane setup time. Ref. [27] introduced a valid inequalities solution for the BAP and QCAP. Later, Ref. [28] developed a column generation (CG) algorithm to combine the BAP, QCAP, and the yard assignment problem.
Regarding the BAQCASP, very few researchers focused on this problem. Ref. [29] introduced a framework that was related to the BAQCASP using a three-phase heuristic framework, including the quay crane productivity rate. Ref. [11] implemented the BAP, QCSP, and QCAP using a rolling horizontal metaheuristic (RHH) algorithm that was based on the branch and cut algorithm. Ref. [30] established an integrated mathematical solution combining the BAO, the QCAP, and the QCSP. This study considers the worker performance variability and the yard truck deployment with the BAQCASP.
Furthermore, several studies have focused on worker assignments. Ref. [31] studied the worker allocation model by introducing windows to optimize the travel distance, the time spent, and the number of operators. Ref. [32] introduced a constraint-satisfaction approach to solve worker scheduling problems. Refs. [33,34] proposed an improved constraint satisfaction model to solve the workers scheduling assignment. Ref. [35], based on an a priori crane productivity rate model, considered the workforce gangs to solve the berth allocation problem. Ref. [36] demonstrated that the optimal human factor could increase productivity. Ref. [37] developed the QCSP using different quay crane productivity rates. However, the studies that were mentioned above neglected worker performance and allocation as the main parameters of the BAQCASP.
Recently, truck scheduling and the deployment topic have gained literature attention. Ref. [38] coupled constraint and heuristic models to solve the yard truck scheduling problem and the QCSP. Ref. [39] introduced a coupling method that was based on a genetic algorithm and a greedy approach to simultaneously solve the QCSP and truck scheduling problem. Ref. [40] proposed an iterated greedy method to implement the solution to the yard truck scheduling problem. Ref. [41] integrated the QCAP and the yard truck assignment to the container terminal solution using Lagrange relaxation and a sub-gradient heuristic approach. Despite this interest, the influence of the yard truck deployment on the BAQCASP is unclear.
This study proposed an optimal solution for the BAQCASP, including the yard truck deployment and worker performance. Table 1 presents the most impacted literature that are associated with this study. Several probability approaches have been introduced to the container terminal scheduling problems, such as genetic algorithm, Lagrange relaxation, and the rolling horizontal heuristic models. This study used a MILP and PSO algorithm for its simplification and efficiency.

3. Problem Statement and Assumptions

Let’s consider a planning horizon T with interval periods 1 , , T ; container terminals can accept a set of vessels 1 , , V , and an approximated arrival time is attributed to each vessel. Generally, firsthand, the quay area is distributed into a series of discrete quays and corresponding B berth components 1 , , B . A vessel can be partitioned into b vessel bays 1 , , b . Each vessel bay is allocated to one single berth area. The number of containers that are assigned to each vessel bay is defined as a storage scheme.
On the other hand, the BAP allocates the berth areas to the given vessel and defines the departure time. A set of quay cranes 1 , , Q is distributed along the quay through the berth area. The QCAP consists of allocating the quay crane to operate the workload in every berthing vessel. The QCSP program the timetable of each quay crane that is associated with every vessel.
A vessel assignment is driven through three main resources: quay cranes, quay crane operators, and yard trucks. A set of quay crane operators drive the quay crane 1 , , O . A set of yard trucks achieve the land transportation of each container. The quay cranes are not usually accessible for the entire planning horizon. Every day, a planning model for each quay crane is defined for preventive maintenance. As a result, information on QC’s expected stops during the planned horizon is available. Box units process containers; however, cranes are assigned by task/bay to handle them. A QC is allocated to process containers on a particular bay. The processing rate of QCs corresponds to the number of containers that are processed by one QC on a single bay over a given period. Preemption is not authorized within a period, but this is allowed between periods.
Similarly, a QC can process several containers on a bay for some time j, then transfer to another bay for period j + 1. However, the first bay is still processing containers. On the other hand, processing operations cannot be postponed for a certain amount of time. There are wo resources that determine the processing rate of QC: The QCO in charge of it and the number of yard trucks (YTs) that are assigned to serve it. The YTs are separated into subgroups and assigned to one of the QCs. The number of YTs in a subgroup and the number of actions that are done by each YT every period determines the subgroup’s performance. As no additional operator abilities are required for YT operation, we presume that YT operators have the same productivity level. Yard cranes are similarly assumed not to affect YT productivity.
Furthermore, it is presumed that YTs can only carry one container. The unique issue of transporting multiple containers is outside the scope of the suggested approach. In addition, we accounted for the long-term processing rate of trucks by taking the average processing times and assuming that this rate is independent of their travel length. A QCO that is assigned to run QC can also make a certain number of moves in a particular time. We assume that the delay time that is required by QCOs to change is insignificant in the model. There are two resources that support the QC system: QCO and the YTs subgroup. According to the theory of constraints, QC performance will be determined by one of the system’s weakest links (bottleneck). For example, if QCO exceeds the YTs subgroup, QCO will wait for YTs to arrive.
Moreover, while allocating QCOs to QCs, it is critical to consider their performance, as high-performing QCOs are better suited to QCs that are located on bays with high load conditions and complexity. Other elements, such as the type of containers to handle, may also impact the production rate of QCs. However, it is not taken into account in this paper. We even assume that all the containers are processed at the same level. However, as discussed in Section 1, QCO handling rates differ, and an operator can surpass other operators when managing QCs. Due to this, integrating worker assignment with the BAP, QCAP, and QCSP is critical, as how workers are assigned impacts the QC processing pace.
Furthermore, the assignment must consider worker availability, particularly when QCOs work according to a predetermined schedule. In actuality, they are split into three shifts of eight hours. Each operator must take a two-hour break every two hours of work during these eight hours. Furthermore, the number of deployed YTs has an impact on QC performance. We can reach optimal QC performance by allocating many YTs; nevertheless, this might result in a congestion situation.
Additionally, the quantity of YTs that are accessible in CT is restricted. The largest number of YTs in the subgroup that is assigned to QC is specified to prevent congestion in the quay area and follow CTs safety guidelines. As a result, YT deployment decisions must be addressed in tandem with other issues. Working with YT deployment and worker allocation is important since both influence the QC execution rate. In addition, YTs should be allocated following the competence of operators. For instance, if a QC has a low-performing worker, fewer YTs should be allocated; otherwise, more deployed YTs will lose productivity because the weakest worker dictates the QC processing rate in this situation and vice versa.
The BAQCASP can be seen as an NP-hard problem. Due to its computational cost, researchers have built a heuristics model to solve the BAP and QCA in the literature. These heuristic methods considered the genetic algorithm to solve BAP issues, genetic algorithm [42,43], ant colony optimization [44,45], variable neighborhood search [46], and greedy randomized adaptive search procedure [47]. This study uses the PSO model to solve the BAQCASP problem. This simple approach involves fewer control parameters than other metaheuristic models such as genetic and colony optimization algorithms. The proposed PSO algorithm is developed in Section 5.

4. Mathematical Model

The model that is proposed by [11] is considered to discretize berth location and the time horizon. Due to the efficiency of the berth location solution that is related to the case of lot-sizing problems [11,48], the discretization of the berth location and time horizon are performed with a high level of efficiency in the case of port operations. This discretization enabled the removal of big-M constraints that were previously identified as insufficient and resulted in poor linear relaxation of lower bounds. The comparison analysis shows that discretization proposes the highest level of performance. The results show that the difference between the discretization constraint and without discretization constraint model is 85.6%. In this study, this discretization form is adopted.

4.1. Notations

Below are the notations that are used to describe the problem in terms of set, parameters, and decision variables.
  • Sets
    S C represents the set of the quay cranes indexed by g 1 , 2 , , C .
    S V denotes the set of the vessels indexed by k , l 1 , 2 , , V .
    S I defines the set of the operators indexed by i 1 , 2 , , I .
    S T describes the set of the periods for planning horizontal indexed by j , r 1 , 2 , , T .
    S T 1 represents the subset of the S T including periods indexed by j , r 2 , 3 , , T .
    S T 2 denotes the subset of the S T containing the periods indexed by j , r 1 , 2 , 3 , , T 1 .
    S P describes the set of berth areas indexed by p 1 , 2 , , P .
    S P 1 represents the subset of the set S P , including the berth areas indexed.
  • Parameters defining the vessel data
    N represents the maximum number of berth areas that can be allocated to a vessel N = max k S V H k .
    R k is the arrival time of each vessel k .
    L k q denotes the number of containers moving to the bay q from the vessel k .
    H k represents the length of each vessel k according to tahe number of occupied berth areas.
  • Parameters defining the vessel data
    E i defines the processing rate of each operator i .
    G i j 1 : i f t h e o p e r a t o r i i s a v a i l a b l e a t t h e t i m e p e r i o d j . 0 : o t h e r w i s e .
  • Parameters defining the yard trucks
    Θ j represents the number of available yard trucks at the period j .
    U represents the maximum number of yard trucks that could be allocated to one quay crane.
    g denotes the processing rate of the one-yard truck.
  • Parameters defining the quay cranes
    B g j 1 : i f t h e q u a y c r a n e g i s a v a i l a b l e a t t h e t i m e p e r i o d j . 0 : o t h e r w i s e .
    η represents the maximum processing rate of one quay crane at each period.
    Decision variable of the berthing position
    α k p 1 : i f t h e f i r s t b e r t h p o s i t i o n o f t h e v e s s e l k i s i n t h e b e r t h a r e a p 0 : o t h e r w i s e . ϑ k p 1 : i f t h e b e r t h a r e a p i s a l l o c a t e d t o v e s s e l k 0 : o t h e r w i s e . y k l 1 : i f t h e b e r t h p o s i t i o n o f t h e v e s s e l k i s l o w e r t h a n t h e o n e o f t h e v e s s e l l b k < b l 0 : o t h e r w i s e .
    b k represents the berth position of each vessel k .
  • Decision variable of the berthing time
    t k represents the berthing time of each vessel k .
    d k denotes the departure time of each vessel k .
    π k j 1 : i f t h e v e s s e l k s t a r t s o p e r a t i n g a t t i m e p e r i o d j . 0 : o t h e r w i s e
    σ k j 1 : i f t h e v e s s e l k i s o p e r a t e d a t t i m e p e r i o d j . 0 : o t h e r w i s e
    α k l 1 : i f t h e l a s t t i m e p e r i o d o f t h e v e s s e l k o p e r a t i o n i s j . 0 : o t h e r w i s e
    x k l 1 : i f v e s s e l l b e r t h s a f t e r v e s s e l k i s d e p a r t e d . 0 : o t h e r w i s e
  • Decision variable of the resource assignment
    Q g p j 1 : i f q u a y c r a n e g i s a s s s i g n e d t o w o r k o n b e r t h a r e a p a t t h e t i m e p e r i o d j . 0 : o t h e r w i s e
    S g p j 1 : i f q u a y c r a n e g i s p l a c e d o n b e r t h a r e a p a t j ( i t m a y b e w o r k i n g a n d i t m a y n o t b e w o r k i n g ) . 0 : o t h e r w i s e
    X i c j 1 : i f o p e r a t o r i i s a s s i g n e d t o q u a y c r a n e g a t t i m e p e r i o d j . 0 : o t h e r w i s e
    W k p j 1 : i f b e r t h a r e a p i s a s s i g n e d t o t h e v e s s e l k a t t h e t i m e p e r i o d j . 0 : o t h e r w i s e
    μ j c represents the number of yard trucks that are deployed to serve the quay crane g at the time period j .
  • Decision variable of the container processing
    Decision variable of the container processing
    Γ k p represents the number of containers transferring in vessel k at berth area p .
    φ k p j denotes the number of containers that are remained to move in vessel k at the berth area p at the beginning of the time period j .
    λ k p j represents the processing rate that is executed in berth area p on the vessel k at the time period j .
    θ j p c refers to the processing rate that is executed on the berth area p through quay crane g at the time period j .
    ω j c represents the processing rate that is executed over the quay crane g at the time period j

4.2. Model Formulation

The objective function that is aimed to minimize the summation of the vessel’s departure times is written in Equation (1). Every vessel k has a corresponding arrival time, A k . t k represents the current time that is assigned when vessel k serving starts. d k refers to departure time. As a consequence, t k A k denotes the waiting time, d k t k refers to the service time, and d k A k refers to the complete time spent by each vessel k in the port area. In this study, the departure time d k is minimized such as:
M i n i m i z e k = 1 V d k
Constraints that are related to the berth allocation
x l k + x k l + y l k + y k l 1 k , l S V , k < 1
x l k + x k l 1 k , l S V , k < 1
y l k + y k l 1 k , l S V , k < 1
t k A k k S V
b k P H k k S V
Equations (2)–(4) guarantee that each pair of vessels must not overlap in time or space. Equation (5) ensures that a vessel is not supplied before its scheduled arrival time. Equation (6) restricts the number of vessels that can berth in a given location.
Constraints are associated with space discretization. The parameters α and ϑ are introduced to discretize the space variable b .
b k = p = 1 P p α k p k S V
Equation (7) is associated the discretizing parameter α to the space variable b .
H k = p = 1 P ϑ k p k S V
p = 1 P α k p = 1 k S V
α k p ϑ k p ϑ k , p 1 k S V , p S P 1
α k 1 ϑ k p k S V
α k p ϑ k p k S V , p S P
α k p 1 ϑ k , p 1 k S V , p S P 1
y k l + m = max p H k + 1 , 1 P α k m + α l p 2 k , l S V , k l , p S P
Equations (8)–(14) are introduced to evaluate and associate the variables α , ϑ , and y . Equation (8) ensures that for each vessel k , the first berth position should be allocated. Equation (10) guarantees vessel k can be allocated to the first berth section p , but should not be assigned to the berth section p 1 . Equation (11) ensures that the vessel k is allocated to the berth section p , but can be seen as its lower berth position. Equation (14) guarantees that the first berth position of the vessel k is lower compared to the vessel l . This is attached when y k l = 1 since m = max p H k + 1 , 1 p α k m 1 and α l p 1 .
Constraints that are associated with time discretization. The parameter π and σ are introduced for discretizing the time variable t .
t k = j = 1 T j π k j k S V
d k j + 1 σ k j k S V , j S T
j = 1 T π k j = 1 k S V
π k j σ k j σ k , j 1 k S V , j S T 1
π k 1 σ k 1 k S V
π k j σ k j k S V , j S T
π k j 1 σ k , j 1 k S V , j S T 1
x k l + σ k r + σ l j 2 k , l S V , k l , j , r S T , r j 1
Equation (15) associates the parameter π with the time variable t . Equation (16) associates the variable σ with the departure time d . Equations (17)–(22) are introduced to evaluate and associate the parameter π , σ , and x . Equation (17) ensures the first serving period is allocated for each vessel k . Equation (18) guarantees that each vessel k can be supplied at the time period j , not at the time period j 1 . Equation (19) guarantees that each vessel k is supplied at the first period j for the first berth period. Equations (20) and (21) ensure that π k j = 0 confirmed if σ k j = 0 or σ k , j 1 = 1 . Equation (22) guarantees that if x k l = 1 and vessel l is supplied at the period j , the vessel k should be supplied outside the interval j 1 , T .
Additional tightening and time inequalities. Equations (23)–(27) enhance the model by adding a new binary tightening parameter α to discretize the variable d k . Equation (29) represents the time valid inequalities associating the variable d k with the variable t and σ .
α k j σ k j σ k , j + 1 k S V , j S T 2
α k T σ k T k S V , j S T
α k j σ k j k S V , j S T
α k j 1 σ k , j + 1 k S V , j S T 2
j = 1 T α k j = 1 k S V
d k = j = 1 T j + 1 α k j k S V
d k t k + j = 1 T σ k j k S V
Constraints that are related to the worker assignment with QCAS. According to the technical finding, this section supposes that when the quay crane is under maintenance, it remains on the rail and is declared unviable. Equation (30) guarantees that the QC is allocated precisely to the berth section through the quay. Equation (31) guarantees that the berth section is allocated at only one QC. Equation (32) is introduced to prevent QCs from crossing each other. The crane’s position c is associated with the berth section p for a time period j ( S g p j = 1 ). Equation (33) ensures that when the QC is not available and not positioned in the berth section, it cannot be allocated to work at the current berth section at a given period. Equation (34) guarantees that a QC is allocated to one operator. Equation (35) ensures that an inactive QC is not allocated to any operator at the given period. Equation (36) guarantees that the QC cannot run if the operator is unviable. Equation (37) guarantees that the QC is inactive if the YTs are not assigned. Equation (38) guarantees that an operator is assigned to one QC if the operator is available. Equations (39)–(41) describe the allocation of the berth section to the vessels. Equation (42) guarantees that the vessel k is allocated to a QC before arrival. Equation (43) guarantees that if an active QC supplied a vessel at a given time period, that vessel remains until the end.
p = 1 P S c p j = 1 j S T , c S C
c = 1 C S c p j 1 j S T , c S C
c = 1 c 1 < c C p 1 = 1 p 1 > p P S c 1 p 1 j C P 1 S c p j j S T , c S C , p S P
Q g p j B c j S c p j j S T , c S C , p S P
i = 1 I X i g j B g j j S T , g S C
X i c j p = 1 P Q c p j j S T , c S C , i S I
Q c p j i = 1 I X i c j j S T , c S C , p S P
p = 1 P Q c p j β j c j S T , c S C
c = 1 C X i c j G i j j S T , i S I
W k p j ϑ k p k S V , p S P , j S T
W k p j σ k j k S V , p S P , j S T
W k p j ϑ k p + σ k j 1 k S V , p S P , j S T
t k j W k p j + 1 W k p j T k S V , p S P , j S T
d k 1 + j W k p j k S V , p S P , j S T
Constraints that are related to the yard truck deployment. Equation (44) guarantees that the number YTs that are deployed to a QC does not overpass the largest allowed ones. Equation (45) guarantees that the number of YTs that are deployed to every allocated QCs does not overpass the number of available ones.
μ j c U p = 1 P Q c p j j S T , c S C
c = 1 C μ j c Θ j j S T
Constraints that are related to the QC productivity. Equation (46) guarantees the processing rate that is associated with the QC at a given period is lower or similar to the processing rate of the operator that is allocated to run that QC. Equation (57) ensures that the processing rate that is related to the QC is lower or similar to the total processing rate that is associated with the trucks that are deployed to supply it. Equations (48)–(50) are introduced to compute the processing that is executed in a particular berth section using the processing rate of the assigned QCs. Equations (51)–(53) are introduced to evaluate the processing rate that is executed on the berth section that is related to each particular vessel. Equation (54) sets the value that is associated with the workload on the berth position according to the vessel’s berthing section and workload distribution. Equation (55) ensures that the vessel should be managed within the time horizon. Equations (56) and (57) set the number of the rest of the workloads to operate at the starting period for each vessel and the berth section. Equation (58) guarantees that no QC is allocated to a berth section at the given period if the remaining workload is zero at the berth section.
ω j c i = 1 I E i X i c j j S T , c S C
ω j c μ j c g j S T , c S C
θ j p c ω j c j S T , c S C , p S P
θ j p c η Q c p j j S T , c S C , p S P
θ j p c ω j c 1 Q c p j η j S T , c S C , p S P
λ k p j c = 1 C θ j p c k S V , j S T , S P
λ k p j η W k p j k S V , j S T , p S P
λ k p j c = 1 C θ j p c 1 W k p j η k S V , j S T , p S P
Γ k p = p 1 = 0 N L k p 1 α k , p 1 + 1 k S V , p S P
j = 1 T λ k p j Γ k p k S V , p S P
φ k p 1 = Γ k p k S V , p S P
φ k p j = Γ k p r = 1 j 1 λ k p r k S V , p S P , j S T 1
c = 1 C Q c p j k = 1 V φ k p j p S P , j S T
Constraints that are related to the ranges of the variables. Equations (59)–(61) guarantee that the given variables are binary. Equations (62) and (63) guarantee that the given variables are positive.
Q c p j , S c p j , X i c j 0 , 1 j S T , c S C , p S P , k , l S V , i S I
W k p j , x k l , y k l , α k l 0 , 1 j S T , c S C , p S P , k , l S V , i S I
ϑ k l , π k l , σ k l , α k l 0 , 1 j S T , c S C , p S P , k , l S V , i S I
φ k p j , μ j p , λ k p j , ω j p 0 j S T , c S C , p S P , k , S V
θ j p c , t k , d k , b k , Γ k p 0 j S T , c S C , p S P , k S V

4.3. Lower Bound for BACSP-WA-YTD

The mathematical model that is discussed above requires a lot of computational time for even small and medium scale instances. As a result, it was unable to offer solutions in a reasonable amount of processing time, particularly for big and medium cases. Furthermore, it is challenging to estimate how close the optimum might be. As a result, we look at the possibility of identifying a verifiable lower bound for this issue. In the follow-up, it is defined an expression determining a lower bound that can be used to place limits on the sought-after ideal serving times. The proposed lower bound is denoted by the formula that is expressed as follows:
L B = k = 1 V max 1 l N R k + R O U N D . U P L k l max 1 i I E i
The objective function is the total of all served vessels’ completion times. The model defines a vessel completion time as the period of time during which all of the vessel’s bays have been served, which corresponds to the completion time of the bay that took longer to process.
By assuming that the serving time of the bays is hastened in the best possible way, a lower bound on the completion time can be obtained. The highest performing resources are allotted to all vessel bays, and the boats are served as soon as they arrive, in this ideal scenario example. The best value of completion time will never be smaller than this value because it represents the best case that can be realized, thus, if it is assumed that the productivity rate of all QCs is constant and equal to the best QC rate, this will be considered as the lower bound to bay completion time.
To obtain the lower bounds as also studied by [49]. In this study, the formula that is suggested in Equation (64). illustrates these findings. The value max 1 i I E i represents the operators with the best productivity rate. Accordingly, the formula assumes that the rate of QCs will be equal to max 1 i I E i . As a result, the amount of time that is needed to serve each bay l of vessel k is the number of containers L k l to be handled on this bay divided by the QCs constant rate. By adding this result to the vessel’s arrival time, we get the lower bound of the completion time of vessel k .

5. Proposed Solution

5.1. Particle Swarm Optimization

The PSO algorithm that is introduced through the social habits of the bird flocking follows the stochastic search technique that is proposed by [50]. The PSO algorithm is a popular optimization method that has been used for reactive power and voltage control [51], order assignment issues [52], and machine scheduling assignment [53,54]. Compared with the genetic algorithm, the PSO algorithm is simple to implement, allowing parameter control and adjustment.
The PSO algorithm can be simplified: initialize a population randomly along the space. Each random particle contains an initial velocity. The localization of each particle can be modified (adjust the velocity) based on its own previous searching experience (the previous optimal, pOpt), and further particle searching experiences (global optimal, gOpt). The weight value is added to update the velocity value randomly, with different random number sets for generating the acceleration toward the optimal solutions, pOpt and gOpt that are related to each iteration. Assuming that the search space consists of D-dimension, position, and the velocity of the i t h particle at the current iteration is defined as P i o l d = P i 1 o l d , , P i d o l d , , P i D o l d and P V i o l d = P V i 1 o l d , , P V i d o l d , , P V i D o l d , respectively. The general procedure describing the PSO algorithm can be summarized as follows:
1.
Initialization. Generate a population P randomly for the predicted solutions, known as particles. Each particle is labeled with a randomized velocity.
2.
Evaluate and update the optimal positions. Calculate the target fitness function.
  • Perform a comparative analysis between the fitness of each particle with its pOpt. If the actual value is better, update the pOpt.
  • Perform a comparative analysis between the pOpt of each particle with the gOpt, if the pOpt is better, update the gOpt.
3.
Update the velocity. The particles fly along the hyperspace and update their velocities. The position and the velocity of the particle are updated as follows:
P V i d n e w = H Χ P V i d o l d + c 1 Χ r n d 1 Χ X i d P i d o l d + c 2 Χ r n d 2 Χ X g d P i d o l d
P i d n e w = P i d o l d + P V i d n e w
in which P V i d n e w refers to the new particle velocity, P V i d o l d represents the current particle velocity, X i d denotes the optimal previous position of the given particle i in the D-dimension, X g d represents the optimal position in the D-dimension detected for all the particles, H refers to the inertia weight; c 1 and c 2 represent the learning factor; and r n d 1 and r n d 2 denote the random numbers between 0 and 1 defining the stochastic parameter of the PSO algorithm.
4.
Termination. Stop the iteration if the desired criterion is met; repeat from (2) otherwise.
This study applies the PSO algorithm to solve the BACASP with worker assignment and yard truck deployment over an iterative searching procedure. The PSO algorithm is introduced to encode the solution and estimates the performance quality of each solution over the objective function that is shown in Equation (1).

5.2. Particle Representation and Initial Solution Generation

Solution encoding is an essential step in ensuring the PSO convergence. The BACASP with worker assignment and yard truck deployment includes many decision variables that are associated with BAP, QCAP, WA, and YRD. The are seven vectors that are introduced to define the primary decisions based on the BACASP with worker assignment and yard truck deployment for the encoding process that is used in this study. The vectors can be identified as S T k , O V k , B V k z , C r j p , C r a j p , I O i j , and N T j c . The meaning of each decision variable can be defined as follows:
S T k represents the service starting time of vessel k ; O V k refers to the vector orders the vessels using service priority from the less before the most prior; B V k z if z = 1 , the left berth position of the vessel k . if z = 2 , the right berth position of the vessel k ; C r a j p denotes the index that is associated with the quay crane that is working on the berth section p at the period j .0 : if there is no quay crane at the berth section p or the quay crane is positioned at the berth section p is not working at period j . I O i j refers to the index that is related to the quay crane that is assigned to the operator i at the period j .0 : if there is no quay crane assigned to the given operator; N T j c represents the number of yard trucks that are deployed to supply the quay crane at period j .0 : if there is no yard truck allocated to the quay crane c at the period j .
In creating the PSO algorithm, the solution representation is the main concern. The string or real numbers can represent it. The vector orders the vessel by service priority from less before the most prior, represented by vector O V k , is first constructed based on the first arrived is the first served rule. To implement the relationship between the number of vessels corresponding to the berth allocation issue and the PSO algorithm, in this stage, the solution representation is expressed as n real number informing the distribution in the interval of 0 , m describing the solution in the form of an array of the cell, in which n represents the number of vessels and m the number of berth sections. The interval of 0 , m is introduced as a boundary constraint of the particle position to ensure that the decision variables are in the workable region. The integer part of the real number represents the berth section that is allocated, while the fractional part denotes the processing order of the vessel on each berth section. The vessels are divided into a group according to the berth section in which they are assigned. From the real number encoding, a vessel with a lower number is scheduled before the vessel that is labeled with a higher number. The matrix distribution representing the berth section that is based on the first arrived is first served is expressed as: B V = 1 , 2 3 , 4 1 , 2 3 , 4 .
Figure 1 illustrates the particle representation for the berth assignment issue with six vessels and two berths. The dimension’s particle is encoded using a real number of the interval 0 , 2 ; the integer value denotes the berth section to which the vessel is assigned. The fractional part describes the sequence of the vessel. The vessels are assigned to their positions by taking into account the defined priority, i.e., the matrix O V k representing vessels k 1 , k 4 , k 5 will be supplied using berth Section 1 while vessels k 2 , k 3 , k 6 will be served by berth Section 2. By ordering the decimal values in ascending form according to the arrival time, the vessel k 4 should be the first one that is moored at berth Section 1, followed by vessel k 5 and vessel k 1 . In the same way, the sequence of vessels that are moored at the berth Section 2 is k 2 , k 6 , and k 3 .
The QCs that are required to operate each busy berth section can then be determined using the vessel’s berthing positions as listed in [BV]. Busy berth sections in a vector LP indicate which berth sections are occupied at that time can be stored for each time. QCs are allocated to randomly chosen busy berth sections if there are more busy berth sections than QCs; the other busy berth sections are not allocated to any QC. If there are busier berth sections than QCs available, the QCs are distributed randomly to the busy berth sections.
As a result, we create the matrix C r a that demonstrates if a QC manages a berth portion. The remaining QCs that weren’t assigned are given randomly chosen positions in the matrix C r that respect the non-crossing criterion. The matrix C r a is then finished. Then, based on two factors, people are assigned to running QCs. The first is based on how well the available workers perform, and the second considers the workload in the bay. For instance, the worker who performs well will be placed in the busiest berth portion of the QC. This assignment technique is consistent with our argument that placing a competent operator in the busiest berth will improve the terminal’s performance.
A YTs group is assigned to each designated QC in the following phase. YTs are distributed according to how well the operators perform. Fewer YTs should be allocated to a QC if given to a low-performing employee; otherwise, there would be congestion and a consequent loss of production. QC1 and QC2 might be assigned to drivers who can work at 39 and 26 miles per hour, respectively, and there are 13 YTs who can operate at 5 MPH. To match the capacity of YTs to one of the QCs that depends on the operator’s efficiency, it is preferable to assign eight YTs to QC1 and five YTs to QC2.

5.3. Local Search

Local search is used in each iteration to raise the caliber of the solutions. The local search will only be used on the best particle that is discovered in this iteration because it is a time-consuming PSO technique. There are three steps that comprise the local search technique that is used in this study: vessel interchange, crane insertion, and operator interchange.

5.3.1. Vessel Interchange N1

These two methods, which are based on the outcome that is shown in Figure 1, are shown in Figure 2. The swapping examines all of the feasible swapping pairs inside the same berth and chooses the optimum improvement to exchange their values, as illustrated in Figure 2, given a list of the vessels that are handled by berth j Figure 2a. Two ships in two separate berths (one for each berth) are randomly chosen for the changing of two ships in two berths. These two vessels shift their locations. The optimum improvement to exchange is chosen once the swap results have been examined, as illustrated in Figure 2b.

5.3.2. Crane Insertion N2

QCs are given a maximum duty on berth portions for various moves in this neighborhood. These actions assist in locating appropriate QC assignments to manage the situation where there are fewer available QCs than occupied berth sections. To do this, we choose a time period, t, at random for each neighborhood N2 iteration using a decision tree method as illustrated in Figure 3. Looking for a berth portion, designated k , that is occupied but does not have a QC. The berth portion is either chosen at random (with True) or as the busiest berth area on the quay (False). When the berth section k is chosen, a QC is chosen, c, and positioned on the berth section k . The QC must adhere to the non-crossing requirement if it moves to the berth section. If there are two options, we provide a probability of k = True to choose a QC that is allocated to the berth section, which is less busy.
Cranes should not cross each other for every generated solution in neighborhood N2, which indicates that no crane insertion will be made and doing so will cause the cranes to cross. Every time a crane is chosen to be put at a specific Neighborhood N2 iteration, we first ensure it won’t collide with any other cranes. If so, the move will be made and go to the following iteration. The number of iterations that fail to improve or are impractical serves as the variable neighborhood search (VNS’s) halting criterion. Move to the next neighborhood if suitable crane insertions cannot be found after a predetermined number of unsuccessful or impossible repetitions to ensure diversity. Then, due to the used diversification, there will be additional opportunities for viable crane moves when returning to neighborhood N2 of crane insertions.

5.3.3. Operator Interchange N3

There are two different movements that are executed in this process with an equal probability at each iteration. When there are more than two busy berth sections during this period, choose the period randomly and the berth sections with the longest and shortest processing times. They are designated k and k , respectively. Consider that the operator that is designated for k is less effective than the operator that is designated for k . There are two different movements that are executed in this process with an equal probability at each iteration. When there are more than two busy berth sections during this period, choose the period randomly and the berth sections with the longest and shortest processing times. They are designated k and k , respectively. Consider that the operator that is designated for b′ is less effective than the operator that is designated for k . At that moment, the operator that is already assigned to k is scheduled to be inactive. The same deployed trucks should be kept to that QC when an operator is assigned. This type of maneuver aids in resolving the issue of congested berth sections since the busiest (congested berth section) will be managed by a higher performance rate. Giving a chance of 25% for random picks is also beneficial for widening the search space and preventing the deterministic selection approach from being quickly caught in a local optimum.

6. Results and Discussion

In this section, the PSO algorithm is conducted by evaluating the performance. The models were solved through CPLEX (Version 12.9). All the tests were conducted in Python programming language using Intel, Core i7, [email protected] with 8-GB RAM. A comparative analysis between the PSO algorithm, the MILP model that was developed in Section 4, and the tabu search (T2S) [55] was conducted to show the effectiveness of the proposed solution.

6.1. Design of the Instance

The site project for application concerns the Dar es Salaam port that is located in Tanzania. Tanzania Ports Authority has a capacity of 4.1 million dry cargo and 6.0 million bulk liquid cargo (https://www.ports.go.tz)(accessed on 1 January 2021). Dar es Salaam port has a total quay length of 2.6 km with 11 berths at the main quay. The container terminal has a full quay length of 540 m and is operated by the Tanzania International Container Terminal Service (TICTS). The TICTS manages the container handling activity at berths 8 to 11.
The design of a different set of instances can be built based on actual scenarios that were taken from a terminal database that was specifically dedicated to container transshipment procedures. The proposed instance design attempts to confirm different scenarios that might take place in real-world situations. The planned instances have varying scales because practical situations are typical of different sizes.
As shown in Table 2, the instances can be defined into four sets containing various numbers of served vessels, V. The small number of vessels (2, 3, and 4) describe the first three sets of instances, while the other three sets of instances describe the medium number of vessels (8, 10, and 12).
Furthermore, different vessel workload conditions can be taken into account. Real-world data served as the foundation for this. In fact, according to the container terminal partner database, ports occasionally serve low-workload vessels that could spend a few hours at the quay. The number of containers that are handled at the real port may be tiny despite the size of these boats, or vice versa.
Different container loads are considered for each group of instances based on these real-world conditions. In reality, large vessels with a large capacity for carrying containers exist, and small ones with a smaller workload. Additionally, these vessels’ workload is occasionally handled outside the same terminal, though a sizable amount of the carried freight may be handled within the terminal. There were two types of workload that were considered to demonstrate all of these scenarios. The first group is an example of a situation where no more than 500 containers are handled by each vessel. The second scenario considers a load of 500–2000 containers. The average of the workloads of all the vessels is used to compute the workload, for instance. Additionally, two different planning perspectives for each category were considered: 24 and 48 h.
The length of the scheduling horizon and the number of QCs affect the number of operators in each instance. For instance, 20 operators must complete 10 QCs in 48 h because a third of the operators will be taking breaks every hour. There are between 8 and 11 berth places in this scenario. An interval of 40,200 number of yard trucks are available for each period.

6.2. Computational Results

Setting parameters is important to improve the proposed PSO heuristic’s performance and robustness. Finding a suitable parameter setting that provides generally good results across most instances, even if they weren’t the best settings for all instances, requires a set of exploratory trials. The number of particles A , the number of iterations G , the inertia weight W , and the learning factors c 1 and c 2 are the control parameters for our PSO method. According to the preliminary trials conducted, the following parameter settings result in the optimum solution quality: A = 50 , G = 350 , W = 0.7 , c 1 = c 2 = 2 . Each instance is performed 40 times, providing the best solution and the average computation time.
A comparison analysis is performed to evaluate the proposed solution’s performance and efficiency. The M I L P model is described in Section 4, and the T 2 S model is used to test the proposed model. The results that are related to each algorithm and computational time are reported in Table 3. It can be observed from Table 3 that the proposed solution can generate the feasible solution in the present scenario. The M I L P used, on average, 5.7s for each instance when considering vessels carrying small containers (0–500). The T 2 S model used on average 210 s for each instance, and the P S O algorithm used on average 80 s when considering vessels that were transporting a small number of the container. That means the P S O algorithm is 86% and 62% more time-saving than M I L P and T 2 S solutions, respectively. Additionally, the P S O solution is 73% and 53% more time-saving than M I L P and T 2 S models, respectively. The computational results provided a preliminary indication of the suggested algorithm’s effectiveness. The suggested method did not seek the accurate results, but rather the upper and lower bounds due to the complexity of the model. A comparison study is performed to assess the results that were provided by the PSO model. The MILP algorithm is first tested as introduced in Section 4 and the T2S algorithm is considered. Unfortunately, the MILP and T2S solutions are more time consuming than the PSO model. Take into account a sped-up MILP, represented by TS, where the PSO model’s feasible solution served as the MILP’s initial upper bound. Additionally, the PSO results are contrasted with the lower bound that was created for the issue in Section 4.3 where neither MILP nor T2S models offer good lower bounds to take into consideration as a reference.
Results of PSO tests conducted on each instance are shown in Table 4. The upper bound (UB) and lower bound (LB) that are provided by the solution after a running period of 2200 s for both T2S and MILP and 800 s for PSO are denoted in the T2S and MILP columns by the symbols UP and LB, respectively. The difference between the best UB across T2S and MILP upper bounds and the viable PSO solution is indicated by dv1. The best lower bound that is discovered by Equation (67) (Column LB of Table 4), MILP, or T2S is then compared to the PSO result. The PSO result is compared to the best lower bound that is discovered using these four approaches. By computing the deviation dv2, as in Equation, the comparison is made Equation (68).
d v 1 = O F P S O B e s t U B B e s t U B
d v 2 = O F P S O B e s t L B B e s t L B

6.3. Parametric Analysis

The parametric analysis is introduced to study the influence of the worker assignment and the yard truck deployment on the proposed scenario. Hence, three different cases are considered such as:
  • Case 1: The suggested paradigm, with YT deployment decisions relaxed, serves as the foundation for the PSO-YT model. As a realistic general rule that is used in container terminal design, YT deployment is provided as an input parameter to the model and determined as the average of available YTs that are deployed to each QC.
  • Case 2: The PSO-WA model relaxes worker assignment. The average productivity level determines every operator’s productivity in this model. As a result, no worker performance metric is taken into account.
  • Case 3: It is necessary to consider the performance of both trucks and workers as inputs to construct the MILP-WA-YT model, which relates to the fundamental model in which the two proposed parameters (WA and YT) are not taken into account.
Table 5, derived from the data, shows the real difference between all the PSO scenarios with various cases. For instances I11, I23, and I31, solving without taking YT decisions into account has a small influence on the results; however, when WA decisions are neglected, the objective functions deviate by 7–18%. This result shows the importance of taking into consideration WA decisions. Leaving out YT decisions has a greater impact on the gaps in the cases I21, I32, and I33. I12, I13, and I22, eliminating YT and WA separately, impacted the gaps for the occurrences. These results highlight the influence of the two main parameters (WA and YT) on the overall effectiveness of the planning and demonstrate that the solution value is negatively impacted by ignoring either YT or WA options.
Due to the strong relationship between the two parameters (WA and YT) and crane performance, their influence might fluctuate and are mixed depending on the type of data and the planning context. For instance, the value of integrating WA choices increases when there is a substantial variance in the operators’ output. The same is also true in the case of YT. The two parameters (WA and YT) have a real impact.
In conclusion, it has been found that integration offers superior solutions than distinct decision-making procedures. Making decisions regarding resource usage and deployment simultaneously gives the model more latitude to find effective arrangements for YT deployment and worker assignments that define a more precise productivity rate of QCs.

7. Conclusions

In this study, the effect of worker performances and yard truck tasks in berthing operations are evaluated. First, a mixed-integer programming model to reduce the vessel’s departure time is implemented. Then, a particle swarm optimization algorithm is introduced to solve the problems. The Dar-es-Salaam port was selected as a case study to test the proposed model with a real-time dataset that was collected from a multinational company managing container terminals. The result of the simulation can be summarized as follows:
1.
The local search algorithm generates a feasible vessel interchange, crane insertion, and operation interchange scenarios.
2.
A comparative analysis shows that the proposed solution is efficient and time-saving. The P S O algorithm is 86% and 62% more time-saving than M I L P and T 2 S solutions for a small number of containers, respectively. Additionally, the P S O solution is 73% and 53% time-saving for a medium number of containers than M I L P and T 2 S models, respectively.
3.
According to the parametric analysis, in the case where the worker assignment is neglected, the objective function deviates to 7~18%. The present study proposes considering the worker assignment and the yard truck deployment during the planning process.

Author Contributions

Writing original draft, conceptualization, methodology, validation, formal analysis, and data curation, N.A.T.; and Review and editing original draft, supervision, and funding, X.Z. Finally, all authors have approved final manuscript. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the National Natural Science Foundation of China under Grant number 51779028.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The corresponding author can provide the data upon request.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Bierwirth, C.; Meisel, F. A follow-up survey of berth allocation and quay crane scheduling problems in container terminals. Eur. J. Oper. Res. 2015, 244, 675–689. [Google Scholar] [CrossRef]
  2. Corry, P.; Bierwirth, C. The berth allocation problem with channel restrictions. Transp. Sci. 2019, 53, 708–727. [Google Scholar] [CrossRef]
  3. Fu, Y.-M.; Diabat, A. A Lagrangian relaxation approach for solving the integrated quay crane assignment and scheduling problem. Appl. Math. Model. 2015, 39, 1194–1201. [Google Scholar] [CrossRef]
  4. He, J.; Yu, H.; Tan, C.; Yan, W.; Jiang, C. Quay crane scheduling for multiple hatches vessel considering double-cycling strategy. Ind. Manag. Data Syst. 2019, 120, 253–264. [Google Scholar] [CrossRef]
  5. Zhang, X.; Zeng, Q.; Sheu, J.-B. Modeling the productivity and stability of a terminal operation system with quay crane double cycling. Transp. Res. Part E Logist. Transp. Rev. 2019, 122, 181–197. [Google Scholar] [CrossRef]
  6. Chargui, K.; Zouadi, T.; El Fallahi, A.; Reghioui, M.; Aouam, T. Berth and quay crane allocation and scheduling with worker performance variability and yard truck deployment in container terminals. Transp. Res. Part E Logist. Transp. Rev. 2021, 154, 102449. [Google Scholar] [CrossRef]
  7. Iris, Ç.; Lam, J.S.L. Recoverable robustness in weekly berth and quay crane planning. Transp. Res. Part B Methodol. 2019, 122, 365–389. [Google Scholar] [CrossRef]
  8. 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]
  9. He, J.; Wang, Y.; Tan, C.; Yu, H. Modeling berth allocation and quay crane assignment considering QC driver cost and operating efficiency. Adv. Eng. Inform. 2021, 47, 101252. [Google Scholar] [CrossRef]
  10. Iris, Ç.; Lalla-Ruiz, E.; Lam, J.S.L.; Voß, S. Mathematical programming formulations for the strategic berth template problem. Comput. Ind. Eng. 2018, 124, 167–179. [Google Scholar] [CrossRef]
  11. Agra, A.; Oliveira, M. MIP approaches for the integrated berth allocation and quay crane assignment and scheduling problem. Eur. J. Oper. Res. 2018, 264, 138–148. [Google Scholar] [CrossRef]
  12. Liu, C. Iterative heuristic for simultaneous allocations of berths, quay cranes, and yards under practical situations. Transp. Res. Part E Logist. Transp. Rev. 2020, 133, 101814. [Google Scholar] [CrossRef]
  13. Li, W.; Wu, Y.; Goh, M. Maritime terminal operational problems. In Planning and Scheduling for Maritime Container Yards; Springer: Berlin/Heidelberg, Germany, 2015; pp. 5–29. [Google Scholar]
  14. 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]
  15. Montoya-Torres, J.R.; Sánchez, S.; Moreno-Camacho, C. A literature-based assessment of human factors in shop scheduling problems. IFAC-PapersOnLine 2019, 52, 49–54. [Google Scholar] [CrossRef]
  16. Bentefouet, F.; Nembhard, D.A. Optimal flow-line conditions with worker variability. Int. J. Prod. Econ. 2013, 141, 675–684. [Google Scholar] [CrossRef]
  17. UNCTAD. Review of Maritime Transport; UNCTAD: Geneva, Switzerland, 2018. [Google Scholar]
  18. Fu, Y.-M.; Diabat, A.; Tsai, I.-T. A multi-vessel quay crane assignment and scheduling problem: Formulation and heuristic solution approach. Expert Syst. Appl. 2014, 41, 6959–6965. [Google Scholar] [CrossRef]
  19. Lalla-Ruiz, E.; Melián-Batista, B.; Moreno-Vega, J.M. Artificial intelligence hybrid heuristic based on tabu search for the dynamic berth allocation problem. Eng. Appl. Artif. Intell. 2012, 25, 1132–1141. [Google Scholar] [CrossRef]
  20. Chang, D.; Jiang, Z.; Yan, W.; He, J. Integrating berth allocation and quay crane assignments. Transp. Res. Part E Logist. Transp. Rev. 2010, 46, 975–990. [Google Scholar] [CrossRef]
  21. Ting, C.-J.; Wu, K.-C.; Chou, H. Particle swarm optimization algorithm for the berth allocation problem. Expert Syst. Appl. 2014, 41, 1543–1550. [Google Scholar] [CrossRef]
  22. Wang, X.; Zhang, B.; Wang, J.; Zhang, K.; Jin, Y. A Cluster-Based Competitive Particle Swarm Optimizer with a Sparse Truncation Operator for Multi-Objective Optimization. Swarm Evol. Comput. 2022, 71, 101083. [Google Scholar] [CrossRef]
  23. Punyakum, V.; Sethanan, K.; Nitisiri, K.; Pitakaso, R.; Gen, M. Hybrid differential evolution and particle swarm optimization for Multi-visit and Multi-period workforce scheduling and routing problems. Comput. Electron. Agric. 2022, 197, 106929. [Google Scholar] [CrossRef]
  24. Shang, X.T.; Cao, J.X.; Ren, J. A robust optimization approach to the integrated berth allocation and quay crane assignment problem. Transp. Res. Part E Logist. Transp. Rev. 2016, 94, 44–65. [Google Scholar] [CrossRef]
  25. Al-Dhaheri, N.; Diabat, A. The quay crane scheduling problem. J. Manuf. Syst. 2015, 36, 87–94. [Google Scholar] [CrossRef]
  26. 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]
  27. Iris, Ç.; Pacino, D.; Ropke, S. Improved formulations and an adaptive large neighborhood search heuristic for the integrated berth allocation and quay crane assignment problem. Transp. Res. Part E Logist. Transp. Rev. 2017, 105, 123–147. [Google Scholar] [CrossRef]
  28. Correcher, J.F.; Alvarez-Valdes, R. A biased random-key genetic algorithm for the time-invariant berth allocation and quay crane assignment problem. Expert Syst. Appl. 2017, 89, 112–128. [Google Scholar] [CrossRef]
  29. Meisel, F.; Bierwirth, C. A framework for integrated berth allocation and crane operations planning in seaport container terminals. Transp. Sci. 2013, 47, 131–147. [Google Scholar] [CrossRef]
  30. Kasm, O.A.; Diabat, A.; Cheng, T. The integrated berth allocation, quay crane assignment and scheduling problem: Mathematical formulations and a case study. Ann. Oper. Res. 2020, 291, 435–461. [Google Scholar] [CrossRef]
  31. Lim, A.; Rodrigues, B.; Song, L. Manpower allocation with time windows. J. Oper. Res. Soc. 2004, 55, 1178–1186. [Google Scholar] [CrossRef]
  32. Legato, P.; Monaco, M.F. Human resources management at a marine container terminal. Eur. J. Oper. Res. 2004, 156, 769–781. [Google Scholar] [CrossRef]
  33. Kim, K.H.; Kim, K.W.; Hwang, H.; Ko, C.S. Operator-scheduling using a constraint satisfaction technique in port container terminals. Comput. Ind. Eng. 2004, 46, 373–381. [Google Scholar] [CrossRef]
  34. Popović, V. Operator scheduling using min-conflicts and tabu search based heuristic in container terminals. In Proceedings of the 2nd Logistics International Conference, Belgrade, Serbia, 21–23 May 2015. [Google Scholar]
  35. Zampelli, S.; Vergados, Y.; Schaeren, R.V.; Dullaert, W.; Raa, B. The berth allocation and quay crane assignment problem using a CP approach. In Proceedings of the International Conference on Principles and Practice of Constraint Programming, Uppsala, Sweden, 16–20 September 2013; Springer: Berlin/Heidelberg, Germany, 2013; pp. 880–896. [Google Scholar]
  36. Serra, P.; Fadda, P.; Fancello, G. Evaluation of alternative scenarios of labour flexibility for dockworkers in maritime container terminals. Marit. Policy Manag. 2016, 43, 371–385. [Google Scholar] [CrossRef]
  37. Chargui, K.; Reghioui, M.; Zouadi, T. A reactive multi-agent approach for online (re) scheduling of resources in port container terminals. IFAC-PapersOnLine 2019, 52, 124–129. [Google Scholar] [CrossRef]
  38. Chen, L.; Langevin, A.; Lu, Z. Integrated scheduling of crane handling and truck transportation in a maritime container terminal. Eur. J. Oper. Res. 2013, 225, 142–152. [Google Scholar] [CrossRef]
  39. Kaveshgar, N.; Huynh, N. Integrated quay crane and yard truck scheduling for unloading inbound containers. Int. J. Prod. Econ. 2015, 159, 168–177. [Google Scholar] [CrossRef]
  40. Xiao, Y.; Zheng, Y.; Li, P. Modeling of integrated quay cranes, yard trucks and yard cranes scheduling problem for outbound containers. In Proceedings of the 2016 International Conference on Artificial Intelligence and Engineering Applications, Hong Kong, China, 12–13 November 2016; Atlantis Press: Paris, France, 2007; pp. 38–43. [Google Scholar]
  41. Karam, A.; Eltawil, A. A Lagrangian relaxation approach for the integrated quay crane and internal truck assignment in container terminals. Int. J. Logist. Syst. Manag. 2016, 24, 113–136. [Google Scholar] [CrossRef]
  42. Imai, A.; Nishimura, E.; Hattori, M.; Papadimitriou, S. Berth allocation at indented berths for mega-containerships. Eur. J. Oper. Res. 2007, 179, 579–593. [Google Scholar] [CrossRef]
  43. Imai, A.; Nishimura, E.; Papadimitriou, S. The dynamic berth allocation problem for a container port. Transp. Res. Part B Methodol. 2001, 35, 401–417. [Google Scholar] [CrossRef]
  44. Tong, C.J.; Lau, H.C.; Lim, A. Ant colony optimization for the ship berthing problem. In Proceedings of the Annual Asian Computing Science Conference, Seoul, Korea, 14–16 December 1999; Springer: Berlin/Heidelberg, Germany, 1999; pp. 359–370. [Google Scholar]
  45. Cheong, C.Y.; Tan, K.C. A Multi-Objective Multi-Colony Ant Algorithm for Solving the Berth Allocation Problem; Springer: Berlin/Heidelberg, Germany, 2008; pp. 333–350. [Google Scholar]
  46. Hansen, P.; Oğuz, C.; Mladenović, N. Variable neighborhood search for minimum cost berth allocation. Eur. J. Oper. Res. 2008, 191, 636–649. [Google Scholar] [CrossRef]
  47. Lee, D.-H.; Chen, J.H.; Cao, J.X. The continuous berth allocation problem: A greedy randomized adaptive search solution. Transp. Res. Part E Logist. Transp. Rev. 2010, 46, 1017–1029. [Google Scholar] [CrossRef]
  48. Constantino, M.; Gouveia, L. Reformulation by discretization: Application to economic lot sizing. Oper. Res. Lett. 2007, 35, 645–650. [Google Scholar] [CrossRef]
  49. Iris, Ç.; Christensen, J.; Pacino, D.; Ropke, S. Flexible ship loading problem with transfer vehicle assignment and scheduling. Transp. Res. Part B Methodol. 2018, 111, 113–134. [Google Scholar] [CrossRef]
  50. Kennedy, J.; Eberhart, R. Particle swarm optimization. In Proceedings of the ICNN′95-International Conference on Neural Networks, Perth, Australia, 27 November–1 December 1995; pp. 1942–1948. [Google Scholar]
  51. Fukuyama, Y.; Yoshida, H. A particle swarm optimization for reactive power and voltage control in electric power systems. In Proceedings of the 2001 Congress on Evolutionary Computation (IEEE Cat. No. 01TH8546), Seoul, Korea, 27–30 May 2001; pp. 87–93. [Google Scholar]
  52. Liao, C.-J.; Tseng, C.-T.; Luarn, P. A discrete version of particle swarm optimization for flowshop scheduling problems. Comput. Oper. Res. 2007, 34, 3099–3111. [Google Scholar] [CrossRef]
  53. Low, C.; Hsu, C.-J.; Su, C.-T. A modified particle swarm optimization algorithm for a single-machine scheduling problem with periodic maintenance. Expert Syst. Appl. 2010, 37, 6429–6434. [Google Scholar] [CrossRef]
  54. Tsai, C.-Y.; Kao, I.-W. Particle swarm optimization with selective particle regeneration for data clustering. Expert Syst. Appl. 2011, 38, 6565–6576. [Google Scholar] [CrossRef]
  55. Cordeau, J.-F.; Laporte, G.; Legato, P.; Moccia, L. Models and tabu search heuristics for the berth-allocation problem. Transp. Sci. 2005, 39, 526–538. [Google Scholar] [CrossRef] [Green Version]
Figure 1. Solution representation of six vessels and two berths example.
Figure 1. Solution representation of six vessels and two berths example.
Jmse 10 01232 g001
Figure 2. Local search for vessel interchange.
Figure 2. Local search for vessel interchange.
Jmse 10 01232 g002
Figure 3. Decision tree.
Figure 3. Decision tree.
Jmse 10 01232 g003
Table 1. Summary of the literature contributions.
Table 1. Summary of the literature contributions.
ResearchersBAPQCSPQCAPYTWA
Unsal and Oguz (2013)
Fu and Diabat (2015)
Liu (2020)
Wang et al. (2018)
Iris et al. (2017)
Correcher and Alvarez-Valdes (2017)
Serra et al. (2016)
Legato and Monaco (2004)
Kaveshgar and Huynh (2015)
Xiao et al. (2016)
Abou Kasm et al. (2020)
Agra and Oliveira (2018)
This study
Table 2. Description of instances sets.
Table 2. Description of instances sets.
InstanceVContainersTInstanceVContainersT
A120–50024B180–50024
C120–50048D180–50048
A22500–200024B28500–200024
C22500–200048D28500–200048
A330–50024B3100–50024
C330–50048D3100–50048
A43500–200024B410500–200024
C43500–200048D410500–200048
A540–50024B5120–50024
C540–50048D5120–50048
A64500–200024B612500–200024
C64500–200048D612500–200048
Table 3. Comparison of PSO to MILP and T2S.
Table 3. Comparison of PSO to MILP and T2S.
InstancePSO MILP T2S
FeasibleTime (s)FeasibleTime (s)FeasibleTime (s)
A1615806318.4615260
C1839609076.1889120
A28541409735.2894190
C2677807463.3697170
A39384010356.1978230
C3645908825.1665180
A47031109267.5763220
C4426605573.8486150
A56531307045.9663280
C5509508936.6589290
A6678408034.5688230
C670113010276.6843220
Average686808405.7730210
B1102615014418.31145460
D190518013697.11053340
B288223015969.4901580
D270117010948.6704390
B382520012836.8879480
D3113128015468.81203510
B496224012799.2985470
D48763109156.5889460
B57492509338.1773420
D591129012847.3964350
B689016010376.6917540
D67451309536.8763440
Average88321012277.8931450
Table 4. Comparison of PSO to CPLEX.
Table 4. Comparison of PSO to CPLEX.
InstanceMILP T2S PSO dv1dv2
UBLBUBLBUBLB
A11212121212120%0%
C12415181618180%0%
A2*14201919160%0%
C23321231523230%0%
A32715252525250%0%
C3435292225250%0%
A4*10*1826260%0%
C4417343034340%0%
A5*17*2330230%0%
C57030514051480%1.1%
A6*21*2131210%2.2%
C6*43*8093800%0.6%
B1*******1.1%
D1*******1.2%
B2*******0.9%
D2*******1.1%
B3*******0.9%
D3*******1%
B4*******0.9%
D4*******0.9%
B5*******0.6%
D5*******1.2%
B6*******1.4%
D6*******1.5%
Table 5. Table corresponding to the parametric analysis.
Table 5. Table corresponding to the parametric analysis.
InstancesPSO-WA-YT PSO-YT PSO-WA
OptTime (s)OptTime (s)OptTime (s)
I11183.7163.3324.7
I12173.3153.0284.3
I13184.8183.8235.4
I21286.1275.6457.7
I22253.4245.2486.8
I23244.1224.3255.9
I31474.9387.6228.4
I32468.3336.4409.0
I33446.5363.9467.3
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Tengecha, N.A.; Zhang, X. An Efficient Algorithm for the Berth and Quay Crane Assignments Considering Operator Performance in Container Terminal Using Particle Swarm Model. J. Mar. Sci. Eng. 2022, 10, 1232. https://doi.org/10.3390/jmse10091232

AMA Style

Tengecha NA, Zhang X. An Efficient Algorithm for the Berth and Quay Crane Assignments Considering Operator Performance in Container Terminal Using Particle Swarm Model. Journal of Marine Science and Engineering. 2022; 10(9):1232. https://doi.org/10.3390/jmse10091232

Chicago/Turabian Style

Tengecha, Nyamatari Anselem, and Xinyu Zhang. 2022. "An Efficient Algorithm for the Berth and Quay Crane Assignments Considering Operator Performance in Container Terminal Using Particle Swarm Model" Journal of Marine Science and Engineering 10, no. 9: 1232. https://doi.org/10.3390/jmse10091232

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