Stowage Plan Based Slot Optimal Allocation in Rail-Water Container Terminal

To obtain an efficient and reasonable solution for slot allocation in rail-water container terminals, this paper develops storage optimal allocation model 1 to improve the yard space utilization, which is solved by a heuristic algorithm based on Tabu search. Model 2 is then built to reduce the relocation movements. A concept of fall-down problem in shunting operation plan is thus proposed to solve model 2. Models 1 and 2 are tested with numerical experiments. The results show that the yard space utilization increases by 50% approximately compared to the strategy of one train piling onto a fixed area called a subblock. Meanwhile the number of container relocation movements is less than five when using the fall-down problem strategy. Accordingly, the models and algorithms developed in this paper are effective to improve the yard space utilization and reduce the number of container relocation movements.


Introduction
The process of container handling in rail-water container terminal can be divided into two parts.In the first part, containers are piled to a certain area in yard space when arriving at the terminal.Generally, there are three types of containers in the storage yard of container terminals, namely, import, export and transshipment containers.Each type of container has its own particular characteristics (as shown in Figure 1), and, what is more, the transshipment containers unloaded from one block container train will be subsequently loaded onto different block container trains, whose operation process is in conformity with export and import containers.Thus, transshipment containers are not considered in this paper.
In the second part, containers piled at the yard space should be retrieved and loaded onto a vessel in accordance with the stowage plan.Containers with highest retrieval priority should be piled at the top of a stack, where containers are piled vertically.As is shown in Figures 2 and 3, container yard in a rail-water container terminal consists of several blocks.The length of each block is comprised of several parallel bays; each bay is composed of a number of stacks.Containers in a certain bay should be unloaded from one train and loaded onto one vessel.But the piling mixed storage solution is meant to pile containers that are to be loaded onto different vessels in a group of bays in different time.Piling separated storage solution means containers from different trains are piled onto different areas.Taking the land scarcity into consideration, piling mixed storage solution is generally preferred with its advantage in improving yard space utilization.
The present research mainly focuses on (1) balancing workloads of containers among blocks when containers are unloaded from a train onto the yard space (as discussed by [1][2][3]), (2) taking full utilization of single equipment or several equipment (as discussed by [4,5]) and improving land utilization (as discussed by [6,7]), and (3) reducing the number of overlapping amounts or relocation movements among the bays (as discussed by [8][9][10][11][12][13]) and solving the storage space allocation problems (as discussed by [4,[14][15][16][17][18]).Pursuit of improving the utilization of yard space leads to an increase in relocation movement.So in order to reduce the number of relocation movements among bays when taking into account the utilization of yard space, it is essential to consider the slot optimal allocation.Here, we set two stages to process the optimization.The first stage is meant to enlarge the number of containers from different trains in each bay during the planning horizon.The second stage is to minimize the number of  relocation movements among bays considering the loading process when the vessel is coming.The two common indexes for evaluating the container relocation problem can be described as overlapping amount and the relocation movement.The overlapping amount is the number of containers placed above a container retrieved earlier among all the stacks.Relocation movement is the number of containers picked up from the top of a stack and put onto another stack in order to retrieve the highest retrieval priority at present.The retrieval priorities of containers are determined by ship stowage plan.
There are two aspects of this paper when it comes to originality and novelty, namely, the land utilization improvement strategy and the algorithm of reducing relocation movements by referring to the fall-down problem in shunting operation plan.
Firstly, when containers which will be loaded onto one vessel arrive at the terminal, conventional approach is to allocate them onto one fixed area called subblock, and one subblock can only allocate containers belonging to one vessel.Another approach presented in 2012 allocated containers belonging to one vessel onto a subblock consisting of fixed area and shared area.Containers from neighbor subblock can be allocated onto the shared area as long as the shared area is not occupied at the same time.The piling strategy in this paper is to allocate containers belonging to one vessel onto an uncertain area whose size is variable according to the number of containers, and the container occupancy times of the same bays are different; this strategy can be called optimal allocation within the range of space and time.
Secondly, the solving algorithm is proposed by referring to the concept of fall-down problem in shunting operation plan to solve model 2. According to the principle of classification of shunting operations of trains, train detaching and attaching fall-down problem is abstracted as a sequencing problem.When the train detaching and attaching is marshalling after arriving at the terminal, the random-ordered wagon groups formed from the train stock should be turned into ordered wagon groups using the method of humping the random-ordered wagon groups into different tracks; this process can avoid remarshalling when arriving at next station.
A container can be considered as a minimum unit of a train in this algorithm; containers arriving at the terminal earlier and having a higher retrieval priority can be regarded as the random-ordered containers; the random-ordered containers should also be turned into ordered containers using the method of allocating to different stacks; if the number of containers reached the volume of the stack, the containers should be allocated onto another stack which is different from the fall-down problem in shunting operation plan.This approach is only used in shunting operation plan and is never used in slot optimal allocation problem.Here, we firstly use this approach to solve the slot optimal allocation.

Problem Statement
In this paper, we consider that containers unloaded from several trains onto yard space are to be loaded onto one vessel directly omitting the front storage yard, and the containers are usually stored adjacent to one another to facilitate the loading process.Conversely, since the yard cranes can assign loading operation simultaneously, containers unloaded from a vessel are usually stored separately.At the beginning, a group of bays are empty, and they are gradually filled by incoming containers from a certain train.After loading all the containers onto the vessel, the bays return empty.As shown in Figure 4, the consecutive bays are reserved for a certain vessel, while other containers can be assigned to these bays if only they are occupied in different times.
The current space-sharing concept has two strategies, namely, nonsharing strategy and flexible space-sharing strategy.In the former strategy, each subblock is dedicated to one destination vessel, and the container space can be shared by  two different vessels as long as their containers do not occupy the space at the same time in the latter one [7].This paper proposed a completely flexible space-sharing strategy.In this strategy, the number of bays belonging to a certain block varies by the number of containers to be loaded onto a vessel.Each bay can pile any vessels as long as the containers do not occupy the space at the same time.
After choosing which bay to allocate containers, the following process is to pile containers to certain stacks.As Figure 5 shows, one rectangle represents one container, and the number on it represents its retrieval priority.And a larger number indicates a higher retrieval priority.In order to reduce relocation movements, number 8 in third stack should be loaded firstly but number 6 is over it, so number 6 can be moved from the third stack to first or second or sixth stack.When stacking on sixth stack, the second relocation is evitable.
Containers from one vessel are to be unloaded onto several destinations.In each stack, containers retrieval priority varies with the distance of their destination: the farther the destination is, the higher the retrieval priority it has; when it comes to containers with the same destination, heavier containers get the higher retrieval priority according to the stowage plan.Since the destination plays a more important role than the weight in each stack, the level of retrieval is estimated by  = 10 *  + , in which  is represented for the retrieval priority,  is in the name of the grade of destination, and  is the level of container weight.

Model Formulations
The following assumptions are introduced for the development of mathematical models: (1) The arriving time of each train and the amount of containers are determined and known.
(2) The departure time of every vessel and the amount of containers are determined and known.
(3) Each slot can accommodate one 20 ft container.
Notations which will be used throughout this paper are shown in "Notations."

Land Utilization Improvement Strategy
(1) Objective The block can be shared by some vessels or trains as long as their containers do not occupy the space at the same time.In this model, it means if the containers going to the same vessel are to be stored in one block with insufficient bays to be piled, the containers can be piled at adjacent bays.The objective is to maximize the sharing yard space at the neighbor blocks.
(2) Constraints Each block has two neighbor blocks except the two blocks at the end of the yard space which only have one neighbor, so the number of bays which can accommodate containers in block  and block  + 1 in shift  is described in constraints (2).
The number of containers in each bay (or block) consists of the existing containers piled in each bay (or block) and the arriving containers that will be piled in the bay (or block).Constrains (3) calculate the containers in a block at the end of shift under consideration.Constrains (4) calculate the containers in a bay at the end of shift under consideration.
A bay can accommodate containers only if the bay is empty.Constraints (5) calculate the maximum number of bays.
Containers unloaded from a block container train are usually stored in different bays or even different blocks according to the different destination, while a bay can only stack containers from one block container train, as described in constraints (6).
Conversely, the containers to be loaded on a vessel are usually stored together, and a bay can only stack containers to be loaded on one vessel; see constraints (7).

Relocation Movement Reduction Strategy
(1) Objective In this section, we assume that the problem of retrieving containers is in a single bay.Retrieving containers is managed according to retrieval priority under the consideration of the stowage plan.That is to say, containers from a certain vessel have different destinations: the farther they travel or the heavier they weigh, the higher they should be piled in a stack.The objective is to minimize the further movements.
(2) Constraints The containers retrieval follows the rule of "first in last out" in the same stack.And a container at the top of a stack can be retrieved and relocated to other stacks among the bay, only if the container under it has a higher retrieval priority.Constraints (11) commit to calculating the relocation movements considering loading and unloading process.The overlapping amounts may change when container is relocated to other stacks, so it should be recalculated.
A container can be moved to another stack in the same bay if it is not fully occupied.Since overlapping amounts will probably increase, which stack to pile is a matter of cardinal significance, as constraints (12) describe.
Containers are piled vertically in each stack.If there is no container at the bottom of a stack, all containers cannot be placed above it.It means the container has to be piled from bottom to top in a certain stack.Constraints (13) show the rule of piling containers among stack.

Solution Algorithms
The reason for proposed algorithm is that our study's problem belongs to the quay crane scheduling problem which was proven to be NP-complete by [19,20]; the problem cannot be exactly solved in reasonable time.So we propose a heuristic algorithm to obtain the approximate optimal solution.And Tabu search is dramatically changing our ability to solve a host of problems in applied science and engineering.Tabu search has important links to evolutionary and "genetic" methods, often overlooked.The adaptive memory designs of Tabu search have also provided useful alternatives and supplements to the types of memory embodied in neural networks, allowing enhancements of neural network processes in practical settings.
So this section presents a Tabu search algorithm for improving the land utilization problem and a solving algorithm designed by referring to the concept of fall-down problem of shunting operation plan for reducing the relocation movements.
4.1.Tabu Search Algorithm.The procedures of the Tabu search algorithm are as follows.
Step 1.Initial solution  * is described as the optimal solution; namely,  =  * ; then the objective function value can be calculated as  * = ( * ); the Tabu list is empty; namely,  = ⌀; turn to Step 2.
Step 2. If the termination criterion is met, turn to Step 10; else turn to Step 3.
Step 3. Generate neighborhood spaces of  as () and select a number of solutions as the candidate solution, namely, (); turn to Step 4.
Step 6.If  ∈ , turn to Step 7; else turn to Step 8.
The initial solution for Tabu algorithm affects the efficiency of the optimal solution.A group of solutions expressed piling state of containers to be loaded onto each vessel in each shift during planning horizon.The solution is described as  = (  1 ,   2 , . . .,    , . . .,    );    is shown as )  , which is meant to describe the piling state of containers which are to be loaded onto vessel   .The match value function is shown as min(∑  =1 ∑  =1    ).The structure of neighborhood solutions determines the form and number of neighborhood solutions.Rules of generating neighborhood solutions are (1) changing the location of two or several trains and (2) removing the locations from one or several trains to another one or several trains.The rules are shown in Figure 6.
Termination criterion of Tabu algorithms contains various methods such as the criterion of frequency control and a certain step of iteration.This paper used the latter one.

The Algorithm of Reducing Relocation Movements.
The second algorithm is to reduce the relocation movements referring to fall-down problem in shunting operation plan; the experimental result of this algorithm is the piling state of each bay; it can be the storage plan when accommodating the containers; it turns out that the relocation movements are decreased.The algorithm of reducing relocation movement has three parts, namely, fall column stage, adjustment stage, and delivering stage.The former two stages are used to accommodate the container to slot; the last stage is to calculate the relocation movements.The procedure of the algorithm is as follows. (

1) Fall Column Stage
Step 1. Traverse the retrieval priority of containers   and record the minimum and maximum ones as  min and  max , search the container where   =  min , and then initialize the matrix row as   = 1; turn to Step 2.
Step 2. Locate the retrieval priority of container   as (  ,   ) = (  ,   ) in the matrix; record the arriving time and matrix row of last one  as  =   and  =   ; turn to Step 3.
Step 4. If the retrieval priority of container   also exists among the earlier arriving containers compared to , turn to Step 5; else turn to Step 3.
Step 6.If there is container in  + 1, turn to Step 7; else turn to Step 8.
Step 7. Update the maximum row  =  + 1 and record the last one's arriving time ; turn to Step 3.
Step 8. Update the maximum row  =  and record the last one's arriving time ; turn to Step 3.
Step 9.The fall column stage ends. (
Step 3. If the number of containers in row   is larger than volume of each row, namely,  > , delivering the container to another row, turn to Step 4; else turn to Step 2.

Changing the location between two trains Changing the location between several trains
Removing the locations from one to another Removing the locations from several trains to others Step 5. Update    =    + 1; if    >  max , turn to Step 7; else turn to Step 6.
Step 6.If the number of containers in row   is smaller than volume of each row, namely,  < , locating the container to row    , namely, (  ,   ) = (   ,   ), turn to Step 7; else turn to Step 5.
Step 7. Compare all the locations that piled the retrieved container; choose a location which has the lowest relocation movements to pile; turn to Step 1.
Step 8.If   > , turn to Step 9; else turn to Step 14.
Step 9. Select the container of row  min and then retrieve the container; turn to Step 10.
Step 12.If the number of containers for row    is smaller than volume of each row, namely,  < , locating the container to row    , namely, (  ,   ) = (   ,   ), turn to Step 3; else turn to Step 11.
Step 13.Compare all the locations that piled the delivering container; choose a location which has the lowest relocation movements to pile; turn to Step 8.
Step 3. If there is a container with retrieval priority of   , turn to Step 4; else turn to Step 2.
Step 4. Search for the container with retrieval priority of   ; calculate the number () of containers over it in the same stack; the overlapping amount  =  + ; turn to Step 2.

Numerical Experiments
In this section, numerical experiments are carried out to show the performance of land utilization improvement method and the relocation movement reduction method.
There are 24 shifts and the block container train arrives at each shift during the operation horizon.The initial data include the number of containers belonging to each train, the weight of containers, and the destination of containers.The number of containers from each train is a random variable between 50 and 80. Containers of several trains belong to one vessel, as Table 1 shows.The depth of each block is 6 rows, and the length of it is 30 slots.Piling height is 4 containers high in each stack.
Weight of containers of each train is a variable which approximately obeys normal distribution according to real data. ∼ (21.26,3.75).As the weight of containers is shown in Table 2, the grade of container weight can be calculated into nine levels; destination of containers from each train is set as a random integer from 1 to 5 which means there are five terminals in one route.The containers' details from the first train are shown in Table 2.
80 bays are needed to accommodate all the containers to be loaded on 7 vessels using the method of piling the containers onto a subblock consisting of a fixed area, as shown in Figure 8; 58 bays are needed using the strategy of piling containers onto a subblock consisting of fixed area and shared area, as shown in Figure 9, while the land utilization improvement strategy in this paper only needs 39 bays, as shown in Figure 7.The results show that the yard space utilization increases by 51.25% compared to the strategy of one train piling onto a fixed area, and the yard space utilization also increases by 32.76% approximately compared to the strategy of one train piling onto a subblock consisting of fixed area and shared area.
The containers from the first train will be loaded onto the sixth vessel.The piling state in each bay is shown in Figure 10.For example, the container 28 13 at stack 4 of bay 1 is represented where the container will be unloaded at the second destination and the weight of it is 8; 13 represents the arriving  It was found that slot optimal allocation contributes to reducing relocation movements and making the most use of container yard space.When the number of containers belonging to each vessel increased at every shift, the yard space utilization is improved slightly, and the relocation movements are increased as well.The yard space utilization remains stable but the relocation movements are increased rapidly, when the distances to destination (presented as numbers 1 to 5) and the grades of container weight (presented as numbers from 1 to 9) rise gradually.When it comes to the delaying time, we examine the variations of the utilization of yard space and the relocation caused by the increase of the delaying time.
The results indicate that the delaying time contributes to the former one as it rises, while it makes no sense to the latter one.

Conclusions
The process for a reasonable container allocation solution consists of two aspects.First, a storage optimal allocation model (model 1) is proposed to share yard space and thus to improve land utilization.Containers from different vessels can be placed at the same area only if their occupancy times of the same bays are different.Second, model 2 minimizes the relocation movements and is solved by a new algorithm referring to the concept of fall column of shunting operation plan.This strategy considers the retrieval priority determined by stowage plan in each stack.
According to the experimental results, the proposed approaches not only improve the yard space utilization but also reduce the relocation movements.That is, they increase the volume of container handling for a fixed amount of storage allocated and decrease the relocation movements that occur during the loading operations of the vessel.In order to simplify the models, we only considered the containers  from trains which will be loaded onto a vessel in this study.
To make it more comprehensive and pragmatic, the opposite direction (from vessel to trains) should be estimated in further discussion.If > 0, ⟨⟩ = 1; else  ≤ 0; ⟨⟩ = 0    : The retrieving priority in the tier   of stack    : when it equals 1, there is a container in the tier  of stack ; when it equals 0, there is no container in the tier  of stack .

Figure 2 :Figure 3 :
Figure 2: The top view of yard space.

Figure 4 :
Figure 4: The piling strategy of storage yard.

Figure 5 :
Figure 5: Optimization position of relocation movement.

Figure 6 :
Figure 6: The rules of neighborhood solutions.

Figure 10 :
Figure 10: The piling state from bay 1 to bay 3 from first train.

Table 1 :
Volume and arriving time of containers in planning horizon.

Table 2 :
The containers' details from first train.The overlapping amounts and relocation movements for three bays from the first train are shown in Table3.And the overlapping amounts and relocation movements for each train are shown in Table4.

Table 3 :
Overlapping amounts and relocation movements of three stacks from first train.

Table 4 :
Overlapping amounts and relocation movements for each train.
Block, which is determined by the maximum number of containers belonging to a single vessel in this model   (+1) : Number of bays which can accommodate containers in block  and block  + 1 in shift     : Number of bays which are occupied by containers already stacked in block  in shift     : Number of containers stacked at the bay  belonging to block  at the end of the shift     : Number of containers stacked at the bay  belonging to block  arriving in shift     : It equals 1, if the container arriving at terminal stack at the bay  belongs to block  at shift      : Itequals1, if the container arriving at terminal stack at the bay  belongs to block  at shift  and still at the same bay at shift      : Number of containers stacked at bay  belonging to block  in shift    : The set of bays that belong to block ; it is a variable    : Block container train  is arriving at the yard space in shift  (   ): Number of containers from block container train  arriving at the yard in shift  ℎ   : Vessel arrives at terminal waiting for loading containers in shift  (ℎ   ): Number of containers to be loaded on vessel  in shift    : The maximum number of slots belonging to block    : The maximum number of slots belonging to bay     : The overlapping amount in stack  during  times relocation movement; if  = 0,  0  represents the amount of overlapping in stack    else : The overlapping amount in each stack except  during  times relocation movement ⟨⟩: :