Next Article in Journal
Investigating the Impact of Wildfires on Lake Water Quality Using Earth Observation Satellites
Previous Article in Journal
Camouflaged Object Detection That Does Not Require Additional Priors
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Real-Time Batch Optimization for the Stochastic Container Relocation Problem

1
School of Transportation and Logistics Engineering, Wuhan University of Technology, Wuhan 430070, China
2
School of Information Technology, Shangqiu Normal University, Shangqiu 476000, China
*
Author to whom correspondence should be addressed.
Appl. Sci. 2024, 14(6), 2624; https://doi.org/10.3390/app14062624
Submission received: 6 January 2024 / Revised: 17 March 2024 / Accepted: 18 March 2024 / Published: 21 March 2024

Abstract

:
The container relocation problem (CRP) is an important factor affecting the operation efficiency of container terminal yards, and it has attracted much attention for decades. The CRP during the pickup operations of import containers is still an intractable problem for two reasons: the first is that the solution efficiency of the algorithms developed in the existing literature cannot meet the real-time operation requirements; the second is that the pre-optimized operation plan cannot cope with the changes in the real-time operation scenarios caused by the uncertainty of the arrival time of external trucks. This paper proposes an optimization method for the real-time operation scenario which aims to solve the most reasonable operation plan quickly according to the arrivals of external trucks, in which a dynamic upper bound of the optimal solution is derived based on the dynamic programming model of the import containers’ CRP, and an approximate optimal solution can be obtained by minimizing this dynamic upper bound. A heuristic algorithm based on three relocation rules is developed to implement this method, considering the adjustment of the pickup sequence of the target containers. Numerical experiments show that (1) when the number of a batch of target containers is less than 10 (excluding target containers that can be directly picked up), the method proposed in this paper can solve the problem quickly to meet the demand of optimizing real-time pickup operations; (2) compared with other outstanding algorithms, the quality of the solutions obtained by this method is also improved; and (3) this method can be applied to the most container terminals for optimizing real-time pickup operations.

1. Introduction

Generally, in the yard of the container terminal containers are stacked on top of each other in the ground slots, forming stacks. At the same time, a row comprises several stacks placed abreast, constituting a bay, and each yard block is composed of dozens of bays. The containers in a stack adhere to the last-in-first-out (LIFO) principle. If a target container that needs to be retrieved is not the topmost in its stack and is covered by other containers, the blocking containers must be moved to another stack in the same bay first. As a result, the yard crane is required to perform one or more relocation movements. Moving a blocking container, referred to as relocation (rehandling or reshuffling), is an unproductive operation. A high proportion of unproductive operations resulting from container rehandling decreases yard operational efficiency, delays the turnaround time of external trucks, and increases the detention time of vessels. Regarding relocations, three topics have been identified: the re-marshaling problem, the pre-marshaling problem, and the relocation problem. The relocation problem is referred to as the container relocation problem (CRP) or the block relocation problem (BRP) in the literature and is defined as needing to retrieve all the containers (export or import) from a bay in the prescribed order while minimizing the number of rehandles. Despite the fact that CRP has attracted much attention for decades, the CRP during the pickup of import containers is still an intractable problem, which is the focus of this paper.
The difficulty in dealing with the CRP of import containers is not only due to the fact that it is an NP-hard problem [1] but also to the uncertainty of the pickup sequence and the decentralization of the retrieval operations. In response to the first point, the NP-hard nature, it is necessary to find more efficient methods for solving this problem. Various existing models or algorithms are based on the idea of reducing the problem scale to improve the solution efficiency, whether it is to use a solver to solve an integer programming model, to solve based on a tree search algorithm, or to use heuristic methods. However, the CRP aims to find the optimal operation plan for retrieving all the containers in a bay while minimizing the number of relocations during the pickup operations. The computational effort of the solution process increases rapidly as the instance size increases. Many methods do not perform well in solving the CRP, e.g., restricted CRP is still an NP-hard problem, and the B&B algorithm and other variants of the tree search algorithm are not easy to solve medium-sized and large-sized instances quickly. To improve the efficiency of solving the CRP, we need to consider some ways to reduce the problem size further. To be precise, it is difficult to accurately master the retrieval order of containers in advance since the arrival time of trucks is random [2]. But, the truck appointment system (TAS), which is implemented in most container terminals, can provide container terminals with more credible retrieval information and help terminals optimize yard operations [3,4]. On this basis, the stochastic container relocation problem (SCRP) [5], also called a CRP with time windows [6], has been the focus of research related to the import container relocation problem. In the SCRP, the containers are divided into different batches (groups) according to their appointment departure time window, i.e., a batch of containers indicates a group of containers stacked in the same bay and with the same appointment retrieval time window. Containers are ordered so that all containers in a batch must be retrieved before any containers from a later batch. The pickup order of the containers within the same batch is uncertain. This suggests that their pickup sequence needs to be determined based on the arrival of corresponding external trucks (ETs).
Due to the decentralization of the retrieval operation of import containers, the operation process for retrieving all the import containers in the bay requires multiple independent operation rounds (also referred to as “operation stages” in other studies). The pickup order and operation plan are determined within each operation round based on the ETs’ arrival information. Between two neighboring operation rounds, the bay layout at the end of the previous operation round will be the basis for the next round. Therefore, in this paper, we propose a method that gradually optimizes the pickup operations during each operation round instead of optimizing the overall operation process for retrieving all the containers in a bay. In this method, the problem size of the SCRP is significantly reduced.
This method is referred to as Real-time Batch Optimization, which focuses on the real-time operation round (or the current operation round). The “real-time” means that the current operation round is subject to the instant generation of an operation plan based on the arrival of ETs rather than execution based on a predetermined operation plan. The real-time operation scenario has three characteristics: first, a batch of ETs has arrived at the yard; second, a batch of target containers is known, and the number of target containers depends on the arrived ETs; third, the pickup sequence of ETs is adjustable. In the new approach, we first categorize the ETs into batches (groups) based on their reservation information from the TAS and the arrival information from terminal gates. Of course, the retrieval sequence of the ETs belonging to different batches is precise, and the retrieval sequence of the ETs within the same batch is still being determined. Then, based on this grouping, all the arrived ETs within the real-time operation round are defined as a specific batch (group) whose retrieval priories are set to zero, representing the highest pickup priority. Correspondingly, the target containers within the real-time operation round are a batch with a retrieval priority of 0, which may only be part of the containers booked in the current time window. Moreover, their pickup service order of all arrived ETs is adjustable (no longer following the first-come-first-served principle), and the optimal pickup order is determined based on the bay layout to minimize the number of relocations.
The contributions of this paper are as follows:
  • Based on the dynamic programming (DP) model of the SCRP, we derive a dynamic upper bound of its optimal solution. Thus, we transform the optimization objective into minimizing this dynamic upper bound, significantly reducing the size of the solution process.
  • We propose a new heuristic relocation strategy, namely Least-relocations-and-Lowest-precedence-gap (LL), which learns from the expected relocation index (ERI) heuristic presented by [6] and the expected min-max (EM) heuristic proposed by [5].
  • We introduce two novel relocation rules: moving ahead for a sequential-placed slot (MSS) and freeing up for a sequential-placed slot (FSS). The former rule assigns, as far as possible, a sequential placement for the potential blocking containers in the future in advance. The latter rule tries to find a stack that can free its topmost container to satisfy a sequential placement for the current blocking container.
  • A novel heuristic algorithm, called the sequential-placement first heuristic ( S P F H ), is devised. It takes advantage of the properties of the two relocation rules mentioned above.
The rest of the paper is structured as follows: In Section 2, we quickly survey the recent literature on the CRP. Section 3 gives a detailed description of the real-time CRP and the formulation of the improved DP model. Section 4 describes the proposed S P F H algorithm in detail. We report the results of our computational experiments with the methods discussed in this paper in Section 5. Finally, Section 6 concludes the study and suggests future research directions.

2. Literature Review

Two fields have been extensively investigated in the existing literature to reduce relocations during the retrieval process of import containers. In the first field, the objective is to allocate stacking locations for new unloaded containers to reduce relocation moves in the future. Such as, the formulations for evaluating the expected number of rehandles were proposed in [7,8] based on the segregation storage strategies. Other similar studies on generating container storage strategies can be found in [9,10,11]. The second field, the container relocation problem, focuses on the relocation movements during the retrieval process and aims to retrieve all containers from a bay based on the prescribed order while minimizing relocations.
The CRP has received much attention from scholars for decades, and extensive studies from multiple perspectives have been conducted [12,13]. In order to obtain the optimal solution of CRP, many papers have formulated integer programming (IP) to find the optimal solution [4,14,15,16,17,18]. Because the number of variables and constraints in IP exponentially increases as the size of the problem grows, the IP model cannot be solved for large instances. Another method to obtain the optimal solution of CRP is to utilize the exact algorithms. Many exact algorithms are developed based on tree search procedures, such as tree search algorithms [19,20], (iterative deepening) A* algorithms [21,22], B&B algorithms [18,23,24,25,26,27,28], and abstract approaches [6].
However, the CRP is an NP-hard problem [29]. For larger-scale instances, the exact algorithms or IP models are time-consuming and impractical for real-time operation demands. Therefore, researchers have tackled this challenge from two viewpoints. First, Caserta et al. [29] proposed an assumption that a container can only be relocated if it is blocking the target container. This assumption reduces the number of movable containers during pickup operations, thereby reducing the size of the CRP problem. The CRP under this assumption is referred to as restricted CRP. The restricted CRP has become an important branch of the CRP research field [17,18,20,27,29]. Compared to unrestricted CRP, restricted CRP does save a small amount of computational time, but at the cost of losing the quality of the solution. It is worth noting that the restricted CRP is still an NP-hard problem. Another approach is to utilize the heuristics to solve the CRP model. Researchers have been increasingly exploring heuristic algorithms to overcome the computational complexity of CRP. To date, many outstanding heuristic algorithms have been developed, such as beam search algorithms [25,26,30,31], greedy heuristics [14,32,33,34], and other heuristics based on relocation rules [5,6,35,36].
Due to the difficulty of obtaining the retrieval time information in advance, many models of CRP were constructed based on assuming that the retrieval processes of import containers conform to some probability distribution [37,38]. Moreover, Zehendner et al. [35] proposed the online CRP models where the retrieval orders of the containers are revealed progressively with the arrival of ETs. Similar studies can be found in [6,39]. Truck appointment systems (TAS) can help terminals address this issue. The TAS has been deployed in most container terminals, which allows terminal operators to obtain the containers’ retrieval time window. Based on the appointment information, Galle et al. [5], Ku and Arthanari [6] introduced a batch model in which the containers within the same appointment time window are considered a batch. Based on the batch model, Galle et al. [5] proposed the stochastic container relocation problem (SCRP) where the retrieval order between different batches is clear but uncertain within the same batch. It means the containers within the same batch have the same retrieval probability. Indeed, the retrieval sequence of the same batch containers is indistinguishable until associated ETs arrive.
For the CRP, relocating operations occur when the container pickup orders do not match their stacking sequence. As a manager, the terminal should not passively deal with the pickup sequence according to the ETs’ arrival order but should proactively coordinate the ETs’ pickup sequence to conform to the containers’ stacking sequence to minimize the number of rehandles [4]. Zhao and Goodchild [39] first proposed an embryo of the Batch Optimization method, in which a batch of ETs has arrived, and their pickup service orders are adjustable. Nevertheless, they only apply this method to the first batch to avoid prolonging the other ETs’ waiting time. Zeng et al. [3] proposed a rehandling model that considered adjustments to the container pickup order within each group to minimize the number of rehandles. They grouped the ETs according to the appointment time slots in the TAS. Feng et al. [2] proposed a flexible service policy for the SCRP, which assumes all the ETs corresponding to the containers of each batch arrived in advance and dictates the retrieval orders of the current batch’s import containers to minimize the number of relocations.
The novelty of this work. A review of the literature indicates that few studies have focused only on optimizing the real-time operation scenario during import container pickup operations rather than the whole retrieval process. Considering the importance of pickup operations’ efficiency to the yard’s efficiency, it is necessary to find a practical and effective way to solve this problem. This paper attempts to fill this gap by focusing only on the optimization of the real-time operation round for a batch of target containers. Zeng et al. [3] and Feng et al. [2] are closer to the optimization objective of this paper. They assume the simultaneous arrival of ETs within the same reservation time windows and allow the ETs’ retrieval sequence to be adjustable, aiming to optimize the pickup operation process for all target containers. However, their approach does not really reduce the problem size, and it is still difficult to solve the larger instances. In this paper, we only optimize one operation round, a part of the whole retrieval process of import containers, i.e., the real-time operation round, which effectively reduces the scale of the solution process, which allows for the adjustment of the pickup sequence and iterates all the available pickup sequences and effectively improves the solution quality.

3. Problem Description and Formulation

Considering the CRP from a practical viewpoint, instead of passively formulating an optimization plan based on the reservation information from TAS or the assumed probability distribution of ETs’ arrivals, we should strengthen the terminal’s management of the real-time operation process. In this paper, we optimize the overall pickup operations of the target containers according to the actual arrivals of the ETs (affected by various uncertainties, the ETs may not all arrive according to their booking time), and the pickup orders of ETs is adjustable (which is true in practical operations). Therefore, we iterate over all feasible pickup sequences to find the operation plan with the minimal number of relocations. This section explains the modeling framework of the proposed DSS and the mathematical formulation of the proposed bi-objective optimization model and introduces a comprehensive numerical example.

3.1. Problem Description

Due to the limited number of yard cranes, each must move back and forth between different bays rather than being dedicated to a specific unit. So, the state change of a bay and the division of operation rounds during the retrieval process of import containers are shown in Figure 1. As shown in Figure 1a, we define an operation round as the bay is in busy state, whose period that begins when the yard crane moves into the destination bay and ends when the yard crane moves out the destination bay. After an operation round is completed, the bay state turns into idle. Figure 1b tells us that the whole retrieval process of a bay can be divided into three parts—completed operation rounds, the real-time operation round and future operation rounds. The completed operation rounds represent that the retrieval and relocation operations have been finished, which is irreversible. The operations within the real-time operation round are unrelated to the completed operation round but will impact future operations.
Consider a bay with N containers piled on W stacks, and the height of each stack cannot exceed H tiers. In the initial state, all the N containers in the bay have been appointed their departure time windows according to the corresponding ETs’ reservation arrival period. In turn, they can be classified into G groups based on their respective booking departure times and numbered 1 , , G , which implied their retrieval priorities (the smaller group index, the higher retrieval priority).
Suppose this instance requires K ( K 1 ) operation rounds to finish retrieving all the N containers. Let S k denote the bay layout after the completion of kth operation round, especially indicating the initial layout when k = 0 . Suppose we have completed the first k 1 operational rounds, then we need to complete the kth operation round. We aim to find an optimized solution a k for the kth operation round that minimizes the number of relocations during the kth operation round. Once the kth operation round finishes, the bay layout will be transformed from S k 1 to S k , which becomes the basis for ( k + 1 ) th operation round. The change in the bay layout between two adjacent operation rounds is described by the following Equation (1).
S k 1 a k S k , 1 k K
The a k is a set of operation instructions. If a k includes some relocation operation instructions, some containers will be moved from their stacks into other new stacks. For the restricted CRP, the relocated containers are only the blocking containers above the targets. The relocated containers may contain containers other than the blocking containers above the targets for the unrestricted CRP. However, these movements may result in the addition of the number of blocking containers for the moved-in stacks and impact the ( k + 1 ) th and subsequent operation rounds. Our objective is to minimize the addition of the number of blocking containers in the real-time operation round.
Moreover, during real-time operations, the retrieval sequence of target containers and the movement orders of blocking containers determine the changes in the bay layout, and different bay layouts will produce different increments in the number of blocking containers and other impacts on the subsequent operation process. In the real-time operation round, when multiple target containers need to be picked up, it makes sense to choose a reasonable target container pickup order that can produce fewer relocation operations, even though it may prolong the waiting time of some ETs. Therefore, the method proposed in this paper allows for adjusting the pickup order according to the bay layout, integrating the optimization of the pickup sequence and the reallocations of blocking containers to minimize the increment of the expected number of blocking containers (ENBC). No doubt, the pickup order in practice is likely to be inconsistent with the ETs’ arrival sequences, which will result in loading operations being advanced for some ETs and delayed for others. In practice, the number of waiting ETs for retrievals is usually small, and as the number of relocations decreases, the whole operation time decreases, and the delays incurred by individual ETs are acceptable.

3.2. Formulation for the Real-Time Scenario of CRP

Learning from [6], we first present a simplified DP model of real-time CRP. Let R ( S k ) denote the minimum number of relocations required to remove all the remaining containers based on the layout S k , and let q ( a k | S k 1 ) denote the number of realized operations that occur during the kth operation round. The DP model can be formulated as a recursive function as in Equation (2).
R ( S k 1 ) = min a k q ( a k | S k 1 ) + R ( S k ) , 1 k K R ( S K ) = 0
Another equivalent form of Equation (2) is shown in Equation (3)
R ( S k 1 ) = min a k q ( a k | S k 1 ) + min a k + 1 q ( a k + 1 | S k ) + + min a K q ( a K | S K 1 ) +
From Equation (3), to obtain the optimal operation plan a k for the kth operation round, the solution process requires simultaneous evaluation of the optimal operation plans from the ( k + 1 ) th operation round to the last operation round. So, solving the total optimization objective R ( S 0 ) , which is the minimum number of relocations for picking up all containers during the whole retrieval process, is difficult because the complete solving process will generate a large number of redundant computation efforts. Consider it another way, and we can try to find an approximate optimal solution for it.
According to Equation (2), if a * is the theoretically optimal operation plan for the kth round, then we have R ( S k 1 ) = q ( a * | S k 1 ) + R ( S k ) . Since solving for the theoretical optimum is difficult, assuming that we obtain an available solution a k for the kth operation round, we can derive an inequality Equation (4).
R ( S k 1 ) q ( a k | S k 1 ) + R ( S k )
Without loss of generality, if a 1 , a 2 , , a K are available solutions for each round, respectively, then we must have inequality Equation (5).
R ( S 0 ) k = 1 K q ( a k | S k 1 )
In this way, we convert the solving process of Equation (3) to summing the number of practical relocations during each operation round. We can ensure an approximate optimal solution if we minimize the number of relocations within each round and the impact on the subsequent operation rounds.
According to the definition, q ( a k | S k 1 ) includes two aspects: forced relocations and relocations to free up storage placements. The forced relocations result from blocking the target containers during the real-time operation round. The relocations to free up storage placements result from the containers having nothing to do with the target containers and aim to free up good placements for the blocking containers. In addition, some blocking containers may be relocated twice or more due to all candidate storage positions containing the target containers, but this case is included in the forced relocations. Therefore, we can derive the following inequation as Equation (6).
R ( S 0 ) i = 1 K c P k B c k + U k
B c k denotes the blocking containers of the target container c in kth operation round, and U k means the set of relocated containers unrelated to the target containers during the kth operation round.
Let L B ( S k ) denote the number of blocking containers in the layout S k , which will require rehandling operations in the remaining rounds. P k indicates the set of target containers in kth operation round. During the kth operation round, each container b B c k must be moved into other stacks and may become new blocking containers in the move-in stack. Let f ( b , s ) denote the expected additional number of the blocking containers when the container b is moved into the stack s. Its formula will be given later. Thus, after completing the kth operation round, the number of blocking containers in the layout S k is as Equation (7).
L B ( S k ) = L B ( S k 1 ) c P k B c k + s = 1 W b B f ( b , s ) , B = c P k B c k U k
When we have removed all the containers, the last bay layout S K is empty and L B ( S K ) = 0 . The iterative summation of Equation (7) for k from 1 to K yields Equation (8).
k = 1 K c P k B c k = L B ( S 0 ) + k = 1 K s = 1 W b B f ( b , s ) , B = c P k B c k U k
The total optimizing objective of this study is min R ( S 0 ) . It satisfies inequality Equation (9).
R ( S 0 ) L B ( S 0 ) + k = 1 K s = 1 W b B f ( b , s ) + k = 1 K U k , B = c P k B c k U k
It is well known that L B ( S 0 ) is the minimal lower bound of R ( S 0 ) . According to Equation (9), we derive an upper bound of R ( S 0 ) . An approximate optimal solution to the SCRP can be obtained by minimizing the upper bound. Therefore, we concentrate on optimizing the real-time operation process of each round and decrease the computational efforts for assessing the influence of relocating obstructive containers within each operation round on subsequent operation rounds. This method will significantly enhance the solution efficiency of the SCRP and make it suitable for real-time scenarios.

4. Methodology

According to Equation (9), the real-time scenario of the SCRP focuses on two aspects: (1) minimizing the instant relocation number during the real-time operation round; (2) minimizing the incremental number of the blocking containers after each operation round.

4.1. Preliminaries

Before describing the implementation of the algorithms in detail, we first define the evaluation method of ENBC and then introduce three heuristic relocation rules.

4.1.1. The Evaluation Method of ENBC

Let p ( c ) represent the retrieval priority value of container c and p m i n ( s ) denote the minimum retrieval priority value of the container set s (if s is a stack number, it represent all the containers in stack s), the smaller value is the the higher priority. Specifically, p m i n ( s ) = N + 1 if s is an empty set or stack. Let u n d e r ( c ) denote the containers set within the same stack with container c and below it.
We define three placement state types of containers as follows. The placement state of the container c is to be known as: (1) sequential-placement if p ( c ) < p m i n ( u n d e r ( c ) ) is satisfied; (2) inverted-placement if p ( c ) > p m i n ( u n d e r ( c ) ) is satisfied; (3) level-placement if p ( c ) = p m i n ( u n d e r ( c ) ) is True. A sequential-placement container means that all other containers placed below have lower retrieval priorities than it. Similarly, an inverted-placement container means that all other containers placed below have higher retrieval priorities than it, i.e., it has a bigger retrieval priority value than the other containers below it. A level-placement container has the same retrieval priority as the highest retrieval priority of the other containers placed below.
Based on their predetermined precedence (e.g., appointment time window), the containers with higher precedence will be retrieved earlier than those with lower precedence during retrievals. Therefore, a sequential-placement container will be picked up earlier than other containers below it without relocation. Conversely, an inverted-placement container must be relocated at least once, as some containers below it will be picked up earlier. We assume the containers with the same retrieval priority have the same retrieval probability. So, a level-placement container causes a relocation when the same retrieval priority container below it is picked up earlier. The blocking containers in a bay layout include the inverted-placement and level-placement containers, and the ENBC is equal to the sum of the number of inverted-placement containers and the expected relocation number of the level-placement containers. The calculation method for the ENBC can be described as Equation (10), which has been investigated in [5]. In Equation (10), I ( x ) is an indicator function that equals one if x is True and zero otherwise, and h ( r ) indicates the container number within stack r.
l b ( r ) = h ( r ) i = 1 h ( r ) I p ( c i ) = min 1 j i { p ( c j ) } j = 1 i I ( p ( c i ) = p ( c j ) )
There is no increase in the number of blocking containers in a candidate stack when a blocking container becomes a sequential-placement container after being moved into the candidate stack during retrieval. We refer to the candidate stacks for the blocking container that satisfy the above condition as sequential-stack (SS for short). Contrarily, the ENBC of the candidate stack will increase when a blocking container becomes the inverted-placement or level-placement container after being moved into a candidate stack. The candidate stack that satisfies the condition is referred to as inverted-stack (IS for short) or level-stack (LS for short), respectively. The notation f ( c , r ) has been defined previously, which denotes the increment of ENBC of the stack r after relocating the container c into stack r, and the formula is shown Equation (11).
f ( c , r ) = 0 , r S S s , 1 , r I S s , m 1 m , r L S s ,
where m = j = 1 h ( r ) I ( p ( c ) = p ( c j ) ) denotes the number of containers with the same priority as container c in the stack r.

4.1.2. Heuristic Relocation Rules

We introduce three relocation rules in this subsection. The first relocation rule, namely the Least-relocations-and-Lowest-precedence-gap (LL) rule, draws inspiration from relocation rules such as ERI [6], Minmax [29], and EM [5]. The other two relocation rules are used to compensate for the deficiencies of the LL rule, including the prospective re-allocations for some non-instant-relocated blocking containers to produce a better layout.

LL Rule

Two conditions construct the LL rule. They are first, selecting the set of stacks that produces the smallest increment of the ENBC after reshuffles, and, second, choosing the move-in stack from the set of stacks obtained in the “first step” with the closest priority value for the blocking container. Equation (12) describes the mathematical formula of the LL rule.
s * = arg min s p min ( s ) p ( c ) , s { r min f ( c , r ) } , s s ( c )
s ( c ) denotes the function to obtain the stack index where the container c is stacked. If f ( c , s * ) = 0 , it indicates that the topmost slot of stack s * is a sequential stack for blocking container c. Therefore, moving container c to stack s * does not increase the ENBC. If f ( c , s * ) 0 , it indicates that there is no sequential stack for blocking container c to move in. The LL rule provides a method for selecting the move-in stack for container c, which suggests that the stack with the closest precedence to container c is the best choice. This rule has the advantage of keeping the stack with lower priority to provide sequential stacks for subsequent blocking containers as much as possible. Figure 2 illustrates the processing of heuristic rule L L . In Figure 2, we set the priority of the target container to 0 and presented the decision process to relocate the blocking containers by LL. The container priority value marked by the red circle is the current blocking container. Numbers under the layout represent the minimum priority of each assignable stack and the increment of ENBC if the current blocking container is moved into this stack. The blue number marks the optimal selection. The tag “ ( 1 , 3 ) ” represents the container placed in the first stack and 3rd tier. The tag “ ( 1 , 3 ) , 1 , 4 ” denotes an instruction, meaning the container “(1,3)” will be moved from the first stack into the fourth one. (The symbols illustrated in Figure 2 have the same meaning in the subsequent figures).
The L L rule has two potential areas for improvement. Firstly, it is a greedy approach that always assigns a sequential placement for the relocating container whenever possible, which will likely trap into the local optimum. In other words, reallocating a blocking container with higher retrieval priority to a sequential placement with lower priority may result in losing sequential-placed slots for subsequent relocations. Secondly, when only inverted-placement slots are available for the blocking container, the subsequent blocking containers likely have no more sequential placements to select from, which will directly make additional relocations or result in more potential relocations in the following retrieval processes. The next two relocation rules remedy the deficiencies of the L L rule in the previously mentioned aspects.

Moving Ahead for Sequential Stack (MSS)

Given the blocking container c that is next to be relocated, its optimal reallocation stack s * is determined according to the L L rule. If stack s * is sequential-stack for blocking container c, we try to find another inverted-placement container, which is the topmost item in its stack s ( s s * ) and denotes as t o p ( s ) . If stack s * is sequential-stack for container t o p ( s ) and moving it into stack s * before container c does not change the sequential-placement state of container c. We define this method as a relocating policy, known as the Moving-ahead for Sequential Stack (MSS) rule. The MSS rule aims to move a inverted-placement container into a sequential-stack stack in advance and reduce the likelihood of the container t o p ( s ) becoming a blocking container again in the subsequent operation process. This rule needs to comply with the following conditions: (1) there are at least two empty slots in stack s * ; (2) the topmost container t o p ( s ) in stack s must be in inverted-placement state, i.e., its retrieval priority satisfies the condition p ( t o p ( s ) ) > p m i n ( s ) ; and (3) the retrieval priority of container t o p ( s ) must satisfy the condition p ( c ) < p ( t o p ( s ) ) < p m i n ( s * ) , i.e., the stack s * is sequential-stack for containers c and t o p ( s ) and the retrieval priority of container t o p ( s ) is lower than container c. Figure 3 shows us the processing of the rule  M S S .

Freeing up for Sequential Stack (FSS)

For a blocking container c, if only inverted-stack stacks are available, directly moving container c into one of the stacks will add a new blocking container and, in turn, add a relocation during the subsequent retrieval processes. In this case, selecting a suitable stack s and moving its topmost container t o p ( s ) to another stack s will free up an sequential-placement for container c. If stack s is a sequential-stack for container t o p ( s ) , the total operation cost of the “free up” operations is the same as that of direct moving. As well as it may also increase the possibility of selecting sequential-placement for the subsequent relocations. We refer to the above method as a new relocation policy: freeing up for the sequential stack (FSS) rule. The FSS rule needs to comply with the following conditions: (1) the available reallocation positions for the blocking container c are inverted-placements; (2) if stack s is a candidate sequential-placement for the blocking container c by freeing up the topmost item c , while the retrieval priority value satisfies p ( c ) < p ( c ) < p ( u n d e r ( c ) ) ; and (3) the container c will be moved into stack s , which must be the sequential-stack for container c .
We now continue to analyze the instance depicted in Figure 3. In the final configuration, container ( 1 , 2 ) is the current forced relocating item, and two available stacks, the second and fourth stack, are both inverted stacks. Let us move container ( 4 , 1 ) from the fourth to the second stack and obtain a sequential stack by consuming one practical relocation movement. Furthermore, this reshuffle is cost-effective since it may provide an additional sequential-placement in subsequent processes. Figure 4 illustrates the detailed processing of the FSS rule.

4.2. Sequential-Placement First Heuristic ( S P F H )

This section presents the S P F H algorithm for the real-time operation round of SCRP. The algorithm structure of S P F H includes two levels. The outer level adopts a policy iteration mechanism, i.e., the set of policies comprising all possible pickup sequences, from which the best operation solution has the least cost; the inner level is the specific process of simulating the operation solution and evaluating the cost for each pickup sequence.
The outer level of S P F H takes two inputs: S 0 denotes the initial configuration of the current operation round of the bay, and P denotes the target container set of the current operation round. In the outer level of S P F H , the procedure, namely AutoRetrieval, is a conventional prioritization mechanism that checks and automatically picks up the target containers if retrievable before the start of each operation round or after each relocation. This mechanism makes the configuration irreducible while freeing up optional slots for other blocking containers. The procedure, namely GenerateSequence, generates all possible pickup orders for the target containers of the current operation round. Then, iterate these orders to obtain the best operation plan for the yard cranes with minimal operation costs. The procedure, namely Simulation-Evaluation, is the inner level of the S P F H algorithm. The pseudo-code of the outer level of S P F H is shown in Algorithm 1, and the pseudo-codes of the procedure AutoRetrieval and the procedure GenerateSequence are shown in Algorithm 2.
Algorithm 1 Outer level: the main procedure of S P F H algorithm
1:
procedure SPFH( S 0 ,P)
2:
    Initialize S c u r S 0 , s o l c u r , s o l b e s t , F b e s t =
3:
    AutoRetrieval( S c u r , s o l c u r ,P)
4:
    if P is empty then  F b e s t 0 , s o l b e s t s o l c u r
5:
    else
6:
         Q GenerateSequence( S c u r ,P)
7:
        while Q is not empty do
8:
              q select first item from the pickup sequence set Q
9:
              F c u r Simulation-Evaluation(q, S c u r , s o l c u r )
10:
           if  F c u r < F b e s t  then  F b e s t F c u r , s o l b e s t s o l c u r
11:
           else if  F c u r = F b e s t  then  s o l b e s t s o l b e s t s o l c u r
12:
            Q Q { q }
13:
   return  F b e s t , s o l b e s t
The objective of the inner level of SPFH is to simulate the relocation operation processes and estimate the associated operation costs concerning a given pickup sequence. This procedure involves removing the target containers of the current operation round and moving their blocking containers into the best placements with the least cost (the sum of the number of instant relocation moves and the addition of ENBC).
Algorithm 2 The procedures: AutoRetrieval and GenerateSequence
1:
procedure AutoRetrieval(S, s o l ,T)
2:
      for all  t T  do
3:
            if t is topmost item in stack w ( t )  then
4:
                  S S t , w ( t ) , 0 , s o l s o l + t , w ( t ) , 0 , T T { t }
5:
procedure GenerateSequence(P)
6:
       W Get the set of stacks containing the target containers in P.
7:
      t o p 1 [ W ] Get the top target container in each stack of W and remove them from corresponding stack.
8:
     Q 1 Generate the set of full permutations from each target container in t o p 1 .
9:
       Q 2
10:
     t o p 2 [ W ] Get the top target container in each stack of W and remove them from corresponding stack.
11:
    while An item in the t o p 2 [ W ] is not empty do
12:
           for all  q 1 Q 1  do
13:
                 for all  t 1 t o p 1  do
14:
                      l 1 Finding the position index of t 1 in q 1
15:
                     for all  t 2 t o p 2  do
16:
                          for all  i [ l 1 , l e n ( q 1 ) ]  do
17:
                               q 2 Insert t 2 sequentially into q 1 at ith item, and generate a new sequence.
18:
                               Q 2 Q 2 { q 2 }
19:
            Q 1 , Q 1 Q 2 , Q 2 , t o p 1 t o p 2
20:
            t o p 2 [ W ] Get the top target container in each stack of W and remove them from corresponding stack.
21:
    return  Q 1
The detailed simulation and evaluation procedure consists of the following steps. Firstly, we apply the LL rule to identify the optimal stack s * , which will minimize the addition of ENBC among all assignable slots to which we can move the blocking container directly. However, the earlier reallocations of the blocking containers occupy reasonable placements and may lead subsequent blocking containers to lose the well-stacking slots. Hence, we will consider the impact of current reallocation decisions on subsequent blocking containers and determine whether there are better solutions than the current selection. Suppose the selected stack s * is a sequential-stack for the current blocking container. In this case, we will check for some inverted-placement containers that satisfy the MSS rule to increase the chances of choosing a well-stacking position for other blocking containers. Similarly, suppose the selected stack s * is a inverted-stack, we will try to find a stack s satisfying the FSS rule that the stack s is a sequential-stack for the current blocking container after moving the topmost container in stack s to another stack. The optimal result is that the non-forced relocating container obtains a new well-stacking placement. Otherwise, relocating the non-forced container will increase the final operational cost in the future. Moreover, when stack s * provides a level-placement for the current relocating container, neither the MSS rule nor the FSS rule is applicable because they may exacerbate the problem. Algorithm 3 presents the pseudo-code for the inner level of S P F H .
Algorithm 3 Inner level: Policy iteration procedure
1:
procedure Simulation-Evaluation(q, S, s o l )
2:
     P q , S c u r S ;
3:
    while P is not empty do
4:
          p obtains the first item of P
5:
         B p obtain the blocking containers of the target container p
6:
        for all  b B p  do
7:
              o p r , s * L L ( b , S c u r )     ▹ Get the stack for container b according to LL rule
8:
              if  f ( b , w ( b ) , s * ) = 0  then
9:
                  s M S S ( s * , b , S c u r )        ▹ Find a stack in satisfying MSS rule
10:
                if  s is not NULL then
11:
                       o p r o p r + t o p ( s ) , s , s * , o p r o p r + b , w ( b ) , s *
12:
           else if  f ( b , w ( b ) , s * ) > 0  then
13:
                 s F S S ( s * , b , S c u r )        ▹ Find a stack in satisfying FSS rule
14:
                if  s is not NULL then
15:
                       s L L ( t o p ( s ) , S c u r ) , o p r o p r + t o p ( s ) , s , s , o p r o p r + b , w ( b ) , s
16:
               else
17:
                      o p r o p r + b , w ( b ) , s *
18:
           else
19:
                o p r o p r + b , w ( b ) , s *
20:
            S c u r S c u r o p r , s o l s o l + o p r ▹⊕ is an operator that indicates that o p r will be executed based on the bay layout S c u r and generate a new layout.
21:
           AutoRetrieval( S c u r , s o l ,P)
22:
    return  o p r

5. Computational Experiments

In this section, we present some computational experiments to validate the effectiveness of the L L heuristic and S P F H algorithm for the real-time operations of SCRP.

5.1. Implementation Details

Our experiments are implemented by Matlab 2016b and conducted on a PC with an Intel Core I7-9700 K CPU at 3.6 GHz and 16 GB RAM. The program code, results and instances used in this section are available at https://github.com/zhou-sf/rt-scrp (accessed on 16 July 2023). We generate our experiment dataset based on the existing dataset from [5] and complete our experiments from four cases. Each case of the experiments is implemented with 30 instances.
The first two experiments validate the effectiveness and performance of the LL heuristic and S P F H algorithm under small-batch and large-batch instances, respectively. In the case of small-batch instances, the configuration sizes of the instances vary from S = 5 , , 10 stacks and T = 3 , , 6 tiers and batch sizes of each operation round vary from B = 1 , , 4 containers. The configuration sizes of the large-batch instances vary from S = 10 , 12 stacks and T = 8 , 9 , 10 tiers, and batch sizes of each operation round vary from B = 5 , , 12 containers. The last experiment illustrates our algorithms’ improvement compared to the algorithms proposed in [5,6].

5.2. Experiment Results

In this section, we will illustrate the numerical results to verify the validity and feasibility of this paper’s methods under small-batch instances and large-batch instances, and also compare it with similar methods from other literature under small-batch instances.

5.2.1. Effectiveness Validation under Small-Batch Instances

A total of 48 configurations, each with 30 instances, are solved using the proposed heuristic L L and algorithm S P F H . Each configuration has S × T × F i l l R a t e containers, where S is the number of stacks of the bay, T is the maximum number of tiers in a stack, and the FillRate is the occupancy rate of the slots in the bay. In this experiment, the value of S varies between 5 and 10, and the T varies between 3 and 6. The FillRate is divided into two cases: 50% and 67%. The batch size of each operation round in each instance is random and varies from B = 1 , , 4 .
(1)
Comparison of complete time.
Table 1 and Table 2 summarize the experiment’s results as follows. The rows labeled as “C” indicate the container number of each configuration, and the rows labeled as “Solved” indicates that the number of instances solved optimally is provided in the form x / 30 . We can find that all 30 instances for each configuration are solved by S P F H and L L in very short time, respectively. The “MaxTime (s)” and “AvgTime (s)” in the two tables refer to the runtime of the most time-consuming instance of each configuration and the average runtime of 30 instances of each configuration, respectively. As the tiers and the fill rates grow, given instances need longer solution time. Most important, the worst case in Table 1 is that an instance with configuration (five stacks and three layers) and with 67% fill rate has four target containers, and it takes about 0.134 s to solve. For these problem sizes, the solution time of most instances is less than 0.02 s. Since many ports today have a maximum tier requirement of four and need fast solutions, S P F H and L L could be used in practices in small-batch cases.
(2)
Analysis of the results
Table 3 and Table 4 show us the statistical information of the experimental results of L L and S P F H under 50% and 67% fill rate, respectively. The I B refers to the initial number of blocking containers for each instance. Its value equals the sum of the number of forced relocations and potential relocations of a bay’s initial layout, determined by the number of the inverted-placement and level-placement containers. The I e b indicates the average of the increment in the expected number of new additional blocking containers and the number of movements other than the forced relocations during each operation round of a bay.
The I B shows the average value of the initial blocking container number, which is nearly half the sum of the maximum and minimum values of the initial blocking container number for each configuration’s instances. Furthermore, the standard deviation of I B , S t d e v , increases with the instance configuration’s size, which suggests that the number of potential relocations grows as the instance size grows. A similar pattern can be found in the standard deviations of I e b of L L and S P F H . However, the I e b of L L and S P F H exhibit greater randomness, and it is since each instance layout varies greatly and the pickup sequence of target containers is adjustable, the incremental number of potential relocations generated during the practical operations is indeterminate. In addition, the value of I e b in L L differs significantly from that in S P F H , mainly because S P F H introduces two relocation rules M S S and F S S on top of L L , and the two rules avoid many potential relocations caused by container movements. The A c t refers to the average value of each instance configuration’s actual number of relocations. Its value is statistically derived from the optimized operation plan.
According to Equation (9), the value of A c t theoretically does not exceed the value of ( I B + I e b ) . However, in Table 3 and Table 4, there are cases where the value of A c t is greater than the value of ( I B + I e b ) . This case can happen because some blocking containers caused by level-placement containers produce some realistic relocations. Meanwhile, this case happens more in L L and less in S P F H . The reason for this case is because the L L heuristic, when selecting a position for the blocking container, will prioritize selecting a level stack in the absence of sequential candidate stacks (selecting level stack produces the increment of the expected number of potential blocking container less than selecting inverted stack). Some potential blocking containers may produce realized relocations, so there are more realized relocations than the theoretical optimal operation solution. However, this situation rarely occurs in S P F H because the relocation rule F S S in S P F H always tries to free up a sequential stack for the current blocking container.
As shown in Figure 5, the values of A c t in S P F H are better than those of L L , especially at the fill rate of 67%. Intuitively, the S P F H algorithm outperforms the L L heuristic. Still, the relocation rules M S S and F S S , which allow moving other containers unrelated to the target container, may prolong the loading operation of a few ETs during some operation rounds.

5.2.2. Effectiveness Validation under Large-Batch Instances

In this experiment, the configuration sizes of the experimental instances vary from S = 10 , 12 stacks and T = 8 , , 10 tiers. The batch size varies from B = 5 , , 12 and the batch number varies from W = 8 , 10 . So, each instance configuration has a different file rate.
Table 5 summarizes the validation of the algorithm S P F H and the heuristic L L for the large-size instances in the real-time operation scenarios. The column titled “MT” refers to the runtime of the most time-consuming instance out of 30 instances. The column “AT” refers to the average runtime of 30 instances. The meanings of other variables, namely I, I B , I e b , and A c t , are the same as those in the previous tables.
The results in Table 5 imply that both algorithms S P F H and L L can solve most instances quickly. However, when the configuration of instances reaches 12 stacks and 10 tiers, if the number of target containers per round is more than 8 (the number of target containers here does not include those can be directly picked up), the solution time of some instances rises rapidly, even more than 2000 s, which means that the algorithms no longer meet the needs of real-time optimization operations. When the number of target containers per round is larger than 10, it is difficult to solve any one instance in a short time. Fortunately, in the actual operation scenario, there are rarely more than ten target containers in most container terminals during a real-time operation round.
The reason for the time-consuming solution process in the large-size batch instances is that the flexible pickup order mechanism requires iterating through all possible target pickup orders during the real-time operation round to explore the optimal operation plan. The number (r) of iterations of the solution process increases rapidly with the number (m) of stacks where the target containers are stacked and the target container number (n), and the value of r is between m ! and n ! . In fact, if both n and m exceed 8, the method proposed in this paper will have difficulty solving in less than 60 s. Two perspectives can be considered to solve this problem: first, reducing the solution quality, using heuristics for selecting target containers (e.g., always retrieving the target containers with the lowest number of blocking containers) instead of complete iteration to improve the solution efficiency, and, second, dividing the current larger batch into two smaller batches before processing, e.g., the current batch of 10 containers is divided into two small batches of 5 containers.
Under large-batch instances, it is more common for the value of A c t to be greater than the theoretical upper bound, ( I B + I e b ) . The reason for this case has been given in the experiment mentioned above under small-batch instances. Moreover, it can be seen that the discrepancy between the A c t and ( I B + I e b ) decreases with increasing batch size.

5.2.3. Comparison with Other Algorithms under Small-Batch Instances

In this experiment, we chose [5,6] for comparison, mainly because our experimental dataset was derived from them. Moreover, they are the two most outstanding researchers of SCRP in the existing literature. They aim to find optimal operation plans for yard cranes for retrieving all the containers in a bay while minimizing the number of relocations. This optimization objective is the same as this paper, but the realization method differs. We directly compare the experimental results with those of [5,6] to illustrate the improvement of our methods in performance. In Table 6 and Table 7, E M (heuristic) as well as P B F S and P B F S A (two variants of B&B) are proposed by [5] and the the heuristic E R I is proposed by [6].
Table 6 and Table 7 give us the summaries of the improvement of the solution quality between the S P F H and L L and the E M , E R I , P B F S , and P B F S A on the same data set with fill rate 50% and 67%, respectively. The experiment results show that the algorithms P B F S and P B F S A are not applicable to the real-time operation scenario of SCRP when the configuration size ( S , T ) exceeds ( 7 , 5 ) with the 50% fill rate or ( 5 , 5 ) with the 67% fill rate. All heuristics are able to complete all experimental instances, and the experimental results show that the solution quality of L L and S P F H improves to varying degrees for the heuristics E M and E R I . In terms of the trend of solution quality, the smaller the problem size, the more significant the improvement in solution quality. Meanwhile, the trend of improving the solution quality decreases as the number of stack tiers grows, indicating that the growth of the number of containers increases the proportion of uncertain information and the complexity of the solution process of the SCRP and decreases the quality of the solution.
The main reason why L L and S P F H outperform E M , E R I , P B F S , and P B F S A is that our method fully utilizes the pickup information of the arrived ETs and the adjustable strategy of the containers’ pickup orders, and they increase the chances of obtaining a better solution. In fact, the terminal allows for yard operators to adjust the operation sequence of different ETs according to operational needs. This also shows that our methods are reasonable and practical.

6. Conclusions

This paper addresses issues related to optimizing the real-time pickup operations of import containers based on the appointment and arrival information of ETs to reduce the number of relocations. Our results include a method (namely Real-time Batch Optimization), which only focuses on the real-time pickup operation round of import containers, a dynamic upper bound of the theoretical optimal solution of the SCRP, and a heuristic algorithm based on three relocation rules. The heuristic relocation rule, L L , can be used as a standalone algorithm for operation scenarios of restricted SCRP, and the algorithm S P F H is applied to operation scenarios of unrestricted SCRP. Numerical experiments show that the newly proposed method exhibits excellent performance on both small-batch and large-batch instance sets, and its solution efficiency and quality outperform other methods in the literature. The reason for the new method’s performance compared with others in the literature is that it focuses only on real-time operations, i.e., a part of the overall retrieval process, which significantly reduces the solution process size. In addition, the adjustment of the target containers’ pickup order helps us choose a better operation plan. The newly proposed method in this paper is suitable for large-throughput and busy-operation container terminals because more than one ET may arrive during most of the operation rounds, while it is difficult to achieve good optimization results for small-throughput and loose-operation container terminals because not more than one ET arrives at during most of the operation rounds. Since the SCRP is an NP-hard problem, reducing the problem size is the main idea to improve its solution efficiency. In this paper, focusing on only one stage of the overall pickup operation process of imported containers significantly reduces the problem size, which provides ideas for efficiently solving large-scale instances. Meanwhile, this idea can be used to solve other NP-hard problems related to container terminal yard operation optimization.
However, the method proposed in this paper has two potential limitations: retrieval priority of the containers and target containers’ pickup sequence during each real-time operation round. First, the retrieval priority of containers is crucial for estimating the ENBC and deciding the new slot for the blocking containers. But, this paper relies on the appointment information from the TAS to determine containers’ retrieval priority. Theoretically, the greater the proportion of containers within a bay booked in advance, the higher the accuracy of the solution. Suppose none of the containers within a bay have been booked in advance. In that case, the method proposed in this paper will degenerate into a general SCRP, except that the problem size is reduced, while the accuracy of the solution is unknown. The second limitation is caused by the procedure GenerateSequence in algorithm S P F H , and its solution approach has been mentioned in Section 5.2.2.
In view of the limitation and applicability, further research can be carried out in the following directions based on this paper. First, using machine learning algorithms to mine and analyze the operation logs of container terminals to predict the customers’ retrieval time and infer the containers’ pickup priority is a worthwhile area of research for improving the solution quality of SCRP due to insufficient appointment information. Alternatively, mining the operation logs of the container terminal to derive the probability distribution of customers’ retrieval for estimating the ENBC is a valuable topic, too. Second, by extending the new method proposed in this paper to the CRP of export containers, the container pre-marshaling problem (PMP) or the storage allocation problem (SAP) of import containers will be our next major concern. Moreover, the integrated optimization of the container relocation problem, yard crane scheduling, and balancing the waiting time of ETs is a challenging topic for future studies.

Author Contributions

Conceptualization, Q.Z.; Methodology, S.Z.; Writing—original draft, S.Z.; Writing—review & editing, Q.Z. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Informed consent was obtained from all subjects involved in the study.

Data Availability Statement

The data presented in the study are openly available in GitHub at https://github.com/zhou-sf/rt-scrp (accessed on 5 January 2024).

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Caserta, M.; Schwarze, S.; Voß, S. Container Rehandling at Maritime Container Terminals. In Handbook of Terminal Planning; Böse, J.W., Ed.; Springer: New York, NY, USA, 2011; pp. 247–269. [Google Scholar] [CrossRef]
  2. Feng, Y.; Song, D.P.; Li, D.; Zeng, Q. The stochastic container relocation problem with flexible service policies. Transp. Res. Part B Methodol. 2020, 141, 116–163. [Google Scholar] [CrossRef]
  3. Zeng, Q.; Feng, Y.; Yang, Z. Integrated optimization of pickup sequence and container rehandling based on partial truck arrival information. Comput. Ind. Eng. 2019, 127, 366–382. [Google Scholar] [CrossRef]
  4. Azab, A.; Morita, H. Coordinating truck appointments with container relocations and retrievals in container terminals under partial appointments information. Transp. Res. Part E Logist. Transp. Rev. 2022, 160, 102673. [Google Scholar] [CrossRef]
  5. Galle, V.; Manshadi, V.H.; Boroujeni, S.B.; Barnhart, C.; Jaillet, P. The Stochastic Container Relocation Problem. Transp. Sci. 2018, 52, 1035–1058. [Google Scholar] [CrossRef]
  6. Ku, D.; Arthanari, T.S. Container relocation problem with time windows for container departure. Eur. J. Oper. Res. 2016, 252, 1031–1039. [Google Scholar] [CrossRef]
  7. de Castillo, B.; Daganzo, C.F. Handling strategies for import containers at marine terminals. Transp. Res. Part B 1993, 27, 151–166. [Google Scholar] [CrossRef]
  8. Kim, K.H. Evaluation of the number of rehandles in container yards. Comput. Ind. Eng. 1997, 32, 701–711. [Google Scholar] [CrossRef]
  9. Saurí, S.; Martín, E. Space allocating strategies for improving import yard performance at marine terminals. Transp. Res. Part E Logist. Transp. Rev. 2011, 47, 1038–1057. [Google Scholar] [CrossRef]
  10. Zhou, C.; Wang, W.; Li, H. Container reshuffling considered space allocation problem in container terminals. Transp. Res. Part E Logist. Transp. Rev. 2020, 136, 101869. [Google Scholar] [CrossRef]
  11. Feng, Y.; Song, D.P.; Li, D. Smart stacking for import containers using customer information at automated container terminals. Eur. J. Oper. Res. 2022, 301, 502–522. [Google Scholar] [CrossRef]
  12. Carlo, H.J.; Vis, I.F.; Roodbergen, K.J. Storage yard operations in container terminals: Literature overview, trends, and research directions. Eur. J. Oper. Res. 2014, 235, 412–430. [Google Scholar] [CrossRef]
  13. Lersteau, C.; Shen, W. A survey of optimization methods for Block Relocation and PreMarshalling Problems. Comput. Ind. Eng. 2022, 172, 108529. [Google Scholar] [CrossRef]
  14. Petering, M.E.; Hussein, M.I. A new mixed integer program and extended look-ahead heuristic algorithm for the block relocation problem. Eur. J. Oper. Res. 2013, 231, 120–130. [Google Scholar] [CrossRef]
  15. Zehendner, E.; Caserta, M.; Feillet, D.; Schwarze, S.; Voß, S. An improved mathematical formulation for the blocks relocation problem. Eur. J. Oper. Res. 2015, 245, 415–422. [Google Scholar] [CrossRef]
  16. Forster, F.; Bortfeldt, A. A tree search procedure for the container relocation problem. Comput. Oper. Res. 2012, 39, 299–309. [Google Scholar] [CrossRef]
  17. Galle, V.; Barnhart, C.; Jaillet, P. A new binary formulation of the restricted Container Relocation Problem based on a binary encoding of configurations. Eur. J. Oper. Res. 2018, 267, 467–477. [Google Scholar] [CrossRef]
  18. Tanaka, S.; Voß, S. An exact approach to the restricted block relocation problem based on a new integer programming formulation. Eur. J. Oper. Res. 2022, 296, 485–503. [Google Scholar] [CrossRef]
  19. Tricoire, F.; Scagnetti, J.; Beham, A. New insights on the block relocation problem. Comput. Oper. Res. 2018, 89, 127–139. [Google Scholar] [CrossRef]
  20. Feillet, D.; Parragh, S.N.; Tricoire, F. A local-search based heuristic for the unrestricted block relocation problem. Comput. Oper. Res. 2019, 108, 44–56. [Google Scholar] [CrossRef]
  21. Zhu, W.; Qin, H.; Lim, A.; Zhang, H. Iterative deepening A* algorithms for the container relocation problem. IEEE Trans. Autom. Sci. Eng. 2012, 9, 710–722. [Google Scholar] [CrossRef]
  22. Quispe, K.E.; Lintzmayer, C.N.; Xavier, E.C. An exact algorithm for the Blocks Relocation Problem with new lower bounds. Comput. Oper. Res. 2018, 99, 206–217. [Google Scholar] [CrossRef]
  23. Kim, K.H.; Hong, G.P. A heuristic rule for relocating blocks. Comput. Oper. Res. 2006, 33, 940–954. [Google Scholar] [CrossRef]
  24. Tanaka, S.; Takii, K. A faster branch-and-bound algorithm for the block relocation problem. IEEE Trans. Autom. Sci. Eng. 2016, 13, 181–190. [Google Scholar] [CrossRef]
  25. de Melo da Silva, M.; Erdoğan, G.; Battarra, M.; Strusevich, V. The Block Retrieval Problem. Eur. J. Oper. Res. 2018, 265, 931–950. [Google Scholar] [CrossRef]
  26. Zhang, C.; Guan, H. A data-driven exact algorithm for the container relocation problem. In Proceedings of the IEEE 16th International Conference on Automation Science and Engineering (CASE), Hong Kong, China, 20–21 August 2020; pp. 1349–1354. [Google Scholar] [CrossRef]
  27. Bacci, T.; Mattia, S.; Ventura, P. A branch-and-cut algorithm for the restricted Block Relocation Problem. Eur. J. Oper. Res. 2020, 287, 452–459. [Google Scholar] [CrossRef]
  28. Jin, B.; Tanaka, S. An exact algorithm for the unrestricted container relocation problem with new lower bounds and dominance rules. Eur. J. Oper. Res. 2023, 304, 494–514. [Google Scholar] [CrossRef]
  29. Caserta, M.; Schwarze, S.; Voß, S. A mathematical formulation and complexity considerations for the blocks relocation problem. Eur. J. Oper. Res. 2012, 219, 96–104. [Google Scholar] [CrossRef]
  30. Ting, C.J.; Wu, K.C. Optimizing container relocation operations at container yards with beam search. Transp. Res. Part E Logist. Transp. Rev. 2017, 103, 17–31. [Google Scholar] [CrossRef]
  31. Bacci, T.; Mattia, S.; Ventura, P. The bounded beam search algorithm for the block relocation problem. Comput. Oper. Res. 2019, 103, 252–264. [Google Scholar] [CrossRef]
  32. Jovanovic, R.; Voß, S. A chain heuristic for the Blocks Relocation Problem. Comput. Ind. Eng. 2014, 75, 79–86. [Google Scholar] [CrossRef]
  33. Jin, B.; Zhu, W.; Lim, A. Solving the container relocation problem by an improved greedy look-ahead heuristic. Eur. J. Oper. Res. 2014, 240, 837–847. [Google Scholar] [CrossRef]
  34. Cifuentes, C.D.; Riff, M.C. G-CREM: A GRASP approach to solve the container relocation problem for multibays. Appl. Soft Comput. 2020, 97, 106721. [Google Scholar] [CrossRef]
  35. Zehendner, E.; Feillet, D.; Jaillet, P. An algorithm with performance guarantee for the Online Container Relocation Problem. Eur. J. Oper. Res. 2017, 259, 48–62. [Google Scholar] [CrossRef]
  36. Đurasević, M.; Đumić, M. Designing relocation rules with genetic programming for the container relocation problem with multiple bays and container groups. Appl. Soft Comput. 2024, 150, 111104. [Google Scholar] [CrossRef]
  37. Lehnfeld, J.; Knust, S. Loading, unloading and premarshalling of stacks in storage areas: Survey and classification. Eur. J. Oper. Res. 2014, 239, 297–312. [Google Scholar] [CrossRef]
  38. Zajac, M.; Rožić, T.; Naletina, D. Determining the Probability of Unproductive Manipulations in Inland Intermodal Terminal Operations. Promet-Traffic Transp. 2023, 35, 299–314. [Google Scholar] [CrossRef]
  39. Zhao, W.; Goodchild, A.V. The impact of truck arrival information on container terminal rehandling. Transp. Res. Part E Logist. Transp. Rev. 2010, 46, 327–343. [Google Scholar] [CrossRef]
Figure 1. The retrieval operation process analysis of a bay.
Figure 1. The retrieval operation process analysis of a bay.
Applsci 14 02624 g001
Figure 2. Processing of heuristic rule L L .
Figure 2. Processing of heuristic rule L L .
Applsci 14 02624 g002
Figure 3. Processing of heuristic rule M S S .
Figure 3. Processing of heuristic rule M S S .
Applsci 14 02624 g003
Figure 4. Processing of heuristic rule F S S .
Figure 4. Processing of heuristic rule F S S .
Applsci 14 02624 g004
Figure 5. Comparison between S P F H and L L at fill rate 50% and 67% respectively.
Figure 5. Comparison between S P F H and L L at fill rate 50% and 67% respectively.
Applsci 14 02624 g005
Table 1. Runtime and completed instances of the heuristic L L with small batch instances.
Table 1. Runtime and completed instances of the heuristic L L with small batch instances.
FillRate50 Percent67 Percent
ST34563456
5C810131510141720
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0430.0050.0080.0110.1340.0080.0110.011
AvgTime (s)0.0050.0020.0030.0040.0020.0030.0040.005
6C912151812162024
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0090.0060.0120.0130.0110.0100.0130.015
AvgTime (s)0.0020.0030.0030.0040.0020.0040.0050.006
7C1214182114192428
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0060.0110.0110.0130.0110.0140.0130.021
AvgTime (s)0.0030.0030.0040.0060.0030.0040.0050.007
8C1216202416212732
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0080.0100.0120.0190.0070.0110.0140.027
AvgTime (s)0.0030.0040.0050.0060.0030.0050.0070.008
9C1418232718243036
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0080.0090.0130.0140.0110.0130.0200.026
AvgTime (s)0.0030.0040.0060.0070.0040.0050.0080.009
10C1520253020273440
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0070.0120.0150.0140.0120.0130.0190.024
AvgTime (s)0.0030.0050.0060.0080.0050.0060.0080.010
Table 2. Runtime and completed instances of the algorithm S P F H with small-batch instances.
Table 2. Runtime and completed instances of the algorithm S P F H with small-batch instances.
FillRate50 Percent67 Percent
ST34563456
5C810131510141720
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0220.0210.0140.0210.0380.0160.0270.023
AvgTime (s)0.0030.0030.0040.0050.0020.0030.0050.007
6C912151812162024
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0130.0120.0220.0160.0140.0200.0210.030
AvgTime (s)0.0030.0030.0040.0050.0030.0040.0060.008
7C1214182114192428
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0160.0160.0110.0150.0200.0260.0210.027
AvgTime (s)0.0030.0040.0050.0070.0030.0050.0060.009
8C1216202416212732
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0130.0140.0130.0240.0140.0180.0210.029
AvgTime (s)0.0030.0040.0060.0080.0030.0060.0080.011
9C1418232718243036
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0120.0140.0180.0150.0120.0210.0330.038
AvgTime (s)0.0040.0050.0080.0080.0040.0060.0100.011
10C1520253020273440
Solved30/3030/3030/3030/3030/3030/3030/3030/30
MaxTime (s)0.0080.0210.0190.0230.0130.0210.0280.037
AvgTime (s)0.0040.0060.0070.0090.0050.0070.0100.014
Table 3. The results of the L L heuristic and the S P F H algorithm under 50% fill rate.
Table 3. The results of the L L heuristic and the S P F H algorithm under 50% fill rate.
Fill Rate = 50% LLSPFH
STIBMaxMinStdevIebMaxMinStdevActIebMaxMinStdevAct
531.613.000.500.700.000.000.000.001.270.031.000.000.181.27
42.835.000.501.220.081.000.000.262.770.051.000.000.202.70
54.485.502.500.930.331.500.000.474.900.572.500.000.644.73
66.1110.003.001.680.834.000.000.926.901.285.000.001.176.80
631.633.500.000.940.020.500.000.091.430.081.000.000.261.43
43.496.001.001.290.031.000.000.183.370.232.000.000.503.33
55.318.002.001.320.221.500.000.465.300.482.000.000.585.27
67.0510.504.001.550.704.000.000.867.631.053.000.001.007.37
732.754.000.500.960.000.000.000.002.430.031.000.000.182.43
43.935.002.000.760.101.000.000.303.870.201.000.000.403.73
56.429.503.001.390.221.000.000.336.400.603.000.000.816.37
68.7712.005.501.570.883.000.001.069.901.275.000.001.279.53
832.224.000.001.170.000.000.000.002.030.101.000.000.302.03
44.688.001.501.620.061.000.000.214.400.261.000.000.434.37
57.1810.503.501.710.322.000.000.637.470.933.500.000.967.30
69.4513.004.501.850.874.000.001.1910.231.325.000.001.2710.00
932.935.001.001.050.000.000.000.002.770.101.000.000.302.77
45.587.503.001.070.000.000.000.005.400.232.000.000.505.40
58.5513.005.002.130.202.000.000.468.500.672.000.000.658.43
610.4014.006.002.000.673.000.000.9711.271.694.000.001.1211.13
1033.186.001.001.350.000.000.000.003.030.202.000.000.483.03
46.159.003.001.250.030.500.000.125.770.352.000.000.595.80
59.0713.005.501.540.131.000.000.319.071.073.000.000.948.97
611.9016.505.502.400.573.500.000.8812.471.433.000.000.8512.27
Table 4. The results of the L L heuristic and the S P F H algorithm under 67% fill rate.
Table 4. The results of the L L heuristic and the S P F H algorithm under 67% fill rate.
Fill Rate = 67% LLSPFH
STIBMaxMinStdevIebMaxMinStdevActIebMaxMinStdevAct
532.704.501.000.860.020.500.000.092.630.181.000.000.382.63
44.597.002.001.200.474.000.000.854.930.673.500.000.894.87
57.5011.004.001.601.214.000.000.989.571.715.000.000.989.33
69.6213.506.171.683.176.500.001.7613.833.437.500.501.6212.93
633.556.000.501.180.081.000.000.263.470.281.000.000.443.50
46.139.003.001.480.522.000.000.656.900.903.000.000.826.63
58.2211.505.001.561.255.000.001.299.701.637.000.001.419.20
611.5715.007.501.782.426.000.001.6114.172.928.000.002.0013.33
733.837.001.001.240.071.000.000.213.600.171.000.000.353.60
46.209.002.001.700.572.000.000.706.770.804.000.001.006.60
59.6812.506.001.581.314.000.001.1111.171.814.000.001.1110.73
613.4217.008.501.922.355.500.001.3616.873.006.500.001.4016.10
834.417.001.001.530.071.000.000.254.200.332.000.000.544.17
47.6011.504.001.850.374.000.000.817.830.753.000.000.877.67
511.5415.006.501.671.134.000.001.1012.902.235.000.001.2612.47
615.5720.5011.502.492.387.500.001.8318.703.289.500.002.0517.83
934.798.001.501.430.081.000.000.264.600.351.000.000.474.60
48.9813.006.001.720.352.000.000.559.131.104.000.001.039.00
513.1117.008.671.791.354.000.001.3014.902.205.000.001.3514.47
616.6720.5012.171.982.837.500.002.2719.633.808.500.001.9118.60
1035.218.172.001.310.081.000.000.264.900.322.000.000.524.87
49.1813.005.502.060.674.670.001.029.901.053.000.000.939.53
514.4419.508.502.431.286.000.001.3715.871.956.000.001.4115.17
619.5223.5014.002.392.487.000.001.9022.603.739.000.002.0721.80
Table 5. Validation of the heuristic L L and algorithm S P F H with large instances in the real-time operation scenario of SCRP.
Table 5. Validation of the heuristic L L and algorithm S P F H with large instances in the real-time operation scenario of SCRP.
LLSPFH
STWBFill RateIIBMTAT I eb ActMTAT I eb Act
108850.50030/3018.230.350.033.1126.990.180.044.5027.27
60.60030/3023.430.560.066.7533.491.160.107.3434.94
70.70030/3029.674.980.3212.7146.418.260.5012.9746.21
80.80030/3036.7034.972.5720.7461.3249.473.8922.3662.50
1040.50030/3017.730.050.013.6825.270.100.024.7527.74
50.62530/3025.800.190.046.7337.650.340.068.0438.17
60.75030/3032.470.560.0914.5751.650.960.1314.9952.72
70.87530/3041.776.210.6023.9371.1011.461.3325.5171.10
9860.53330/3022.830.740.076.4834.241.260.117.7135.85
70.62230/3029.671.680.1710.6746.102.820.2911.6945.92
80.71130/3036.307.090.6119.3559.3112.090.9819.1959.18
90.80030/3041.1340.475.0131.8777.0458.688.7435.4080.77
1050.55630/3025.530.110.037.1336.940.170.048.6337.83
60.66730/3033.371.260.1212.9951.842.140.2014.5952.15
70.77830/3042.405.800.5424.0971.7510.070.8925.0372.97
1210880.53330/3033.971.440.279.4546.702.550.4310.1949.95
90.60030/3039.002358.4784.5719.6062.5894.839.9723.4166.14
100.66730/3045.0793.0016.9838.0588.81167.3426.5846.4395.01
110.73312/3050.947377.33478.1748.99103.614010.35373.4959.00113.84
120.8000/300.000.000.000.00-0.000.000.000.00
1080.66730/3049.6168.873.7924.4478.34111.876.3327.2181.81
90.75030/3057.9269.713.9533.4296.96113.616.3935.3599.00
100.83330/3067.154115.17628.8466.94138.103925.53567.5860.74133.42
110.91720/3072.144818.37841.8999.55176.273925.53888.1090.04166.60
Table 6. Performance of heuristic L L and algorithm S P F H for the fill rate 50%.
Table 6. Performance of heuristic L L and algorithm S P F H for the fill rate 50%.
LLSPFH
STActEMERIPBFSPBFSAActEMERIPBFSPBFSA
531.2725.49%25.49%25.49%28.03%1.2725.49%25.49%25.49%28.03%
42.7013.74%14.01%13.18%18.92%2.7013.74%14.01%13.18%18.92%
54.7312.02%15.02%11.03%13.94%4.7312.02%15.02%11.03%13.94%
66.8012.51%15.53%9.97%12.51%6.8312.93%15.95%10.41%12.93%
631.4317.62%17.62%17.62%17.15%1.4317.62%17.62%17.62%17.15%
43.339.42%9.42%9.42%15.18%3.339.42%9.42%9.42%15.18%
55.2710.21%11.26%9.76%12.71%5.3311.34%12.37%10.89%13.80%
67.379.93%13.48%9.28%-7.4711.14%14.64%10.49%-
732.4315.51%15.80%15.51%14.62%2.4315.51%15.80%15.51%14.62%
43.739.67%10.32%9.46%11.16%3.7710.47%11.11%10.26%11.95%
56.379.05%9.95%8.66%5.96%6.379.05%9.95%8.66%5.96%
69.536.60%10.16%--9.677.89%11.40%--
832.0311.98%11.98%11.98%11.98%2.0311.98%11.98%11.98%11.98%
44.378.90%8.90%8.71%6.58%4.409.59%9.59%9.41%7.29%
57.306.26%7.78%5.31%-7.437.94%9.43%7.01%-
610.007.49%10.35%--10.179.01%11.82%--
932.778.08%7.78%7.78%6.21%2.778.08%7.78%7.78%6.21%
45.405.76%5.76%5.76%5.10%5.405.76%5.76%5.76%5.10%
58.436.87%7.89%--8.406.50%7.53%--
611.132.42%3.91%--11.303.86%5.33%--
1033.035.21%5.21%4.91%3.70%3.035.21%5.21%4.91%3.70%
45.808.17%8.17%8.17%8.17%5.777.64%7.64%7.64%7.64%
58.976.25%7.50%--9.006.60%7.85%--
612.274.28%5.96%--12.375.06%6.72%--
Table 7. Performance of heuristic L L and algorithm S P F H for the fill rate 67%.
Table 7. Performance of heuristic L L and algorithm S P F H for the fill rate 67%.
LLSPFH
STActEMERIPBFSPBFSAActEMERIPBFSPBFSA
532.6314.50%15.33%14.50%14.22%2.6314.50%15.33%14.50%14.22%
44.8713.12%14.78%12.19%14.04%4.9013.71%15.36%12.78%14.62%
59.339.03%13.65%--9.5310.94%15.46%--
612.937.17%13.76%--13.6011.72%17.99%--
633.5011.11%11.11%10.88%11.11%3.4710.26%10.26%10.03%10.26%
46.639.17%11.08%7.05%5.63%6.7710.96%12.83%8.88%7.48%
59.208.16%11.73%--9.5311.37%14.81%--
613.336.61%12.23%--14.1712.11%17.39%--
733.609.55%10.45%9.32%13.04%3.609.55%10.45%9.32%13.04%
46.609.42%11.58%8.55%-6.6710.33%12.47%9.47%-
510.735.49%10.03%--11.078.34%12.74%--
616.104.71%10.69%--16.808.68%14.41%--
834.1710.59%10.97%10.59%14.09%4.1710.59%10.97%10.59%14.09%
47.677.78%8.66%7.12%-7.708.18%9.05%7.52%-
512.474.97%9.22%--12.807.45%11.58%--
617.836.03%12.07%--18.338.59%14.47%--
934.6010.16%10.51%9.80%10.51%4.6010.16%10.51%9.80%10.51%
49.005.65%7.10%5.36%-9.076.35%7.79%6.05%-
514.476.06%11.44%--14.838.38%13.63%--
618.604.25%10.64%--19.538.82%14.91%--
1034.877.20%7.20%7.02%7.72%4.907.83%7.83%7.65%8.35%
49.533.79%4.53%--9.907.35%8.07%--
515.174.06%6.93%--15.536.32%9.13%--
621.803.30%8.29%--22.436.03%10.87%--
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

Zhou, S.; Zhang, Q. Real-Time Batch Optimization for the Stochastic Container Relocation Problem. Appl. Sci. 2024, 14, 2624. https://doi.org/10.3390/app14062624

AMA Style

Zhou S, Zhang Q. Real-Time Batch Optimization for the Stochastic Container Relocation Problem. Applied Sciences. 2024; 14(6):2624. https://doi.org/10.3390/app14062624

Chicago/Turabian Style

Zhou, Sifang, and Qingnian Zhang. 2024. "Real-Time Batch Optimization for the Stochastic Container Relocation Problem" Applied Sciences 14, no. 6: 2624. https://doi.org/10.3390/app14062624

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