# Optimizing Lock Operations and Ship Arrivals through Multiple Locks on Inland Waterways

Authors: Hongxu Guan; Yanmin Xu; Longhao Li; Xin Huang
Journal: Mathematical Problems in Engineering
 (2021)

---

## Abstract

Locks are important components of a waterway system. To improve the efficiency of inland waterway transport, it is important to ensure ships passing locks without having to spend unnecessary waiting times at lock entrances. Meanwhile, with the trends towards digitalized and smart waterways, it is also worth investigating how the information availability could contribute to optimizing lock operations and ship arrivals on inland waterways. Therefore, this paper proposes an optimization method to schedule ships’ arrivals and their placements in locks on inland waterways, based on a mixed-integer programming model, and solves the optimization problem with large neighborhood search based heuristics. The optimization objective is threefold: first, optimizing the arrival sequence of ships at the locks; second, maximize the utilization of each lockage operation; and third, reducing the overall time that each ship spends from entering the waterway area till leaving the last lock on the waterway. Simulations are carried out to evaluate the performance of the proposed method.


---

## Body

## 1. Introduction

Locks are important components of a waterway system, which are used to control water levels. A lock consists of at least one chamber, in which ships can be transferred from one water level to another. Nevertheless, locks sometimes cause bottlenecks for transport over water with the increased traffic volume. For example, in the Three Gorges locks on Yangtze River of China, the passing ships have to wait at least for hours, even for days under certain extreme weather situations [1]. Therefore, to improve the efficiency of inland waterway transport, it is important to ensure the utilization of locks and avoid unnecessary waiting of ships. Meanwhile, with the trends towards digitalized and smart waterways and the installation of IT equipment on inland ships, the availability and preciseness of information regarding ships and waterway infrastructure have also been improved in recent years. Thus, it is also worth investigating how the information availability could contribute to solving the lock scheduling problems in waterways.A lockage includes the ships that are transferred together and their positions in the lock chamber; a lockage operation contains the timing information of ships entering the lock, water level changing, and ships’ departures from the chamber [2]. Depending on the chamber size, one or more ships can be transferred together in one lockage operation. Processing a ship in a lock involves three main decisions, selecting the chamber to transfer the ship, determining a position for the ship in that chamber, and setting a starting time for the lockage operation, which make lock scheduling an optimization problem. Optimization methods of lockage operations have not been fully explored in the scientific literature, yet it has started to attract more attention in recent years.Verstichel et al. [3] proposed a mathematical model of ship placement problem in locks to assign positions for a set of ships in different chambers. A fast and exact decomposition algorithm and a multiorder best-fit heuristic are developed to solve the problem. Then, they generalized the lock scheduling problem as three related subproblems including ship placement, chamber assignment, and lockage operation scheduling based on mixed-integer programming in [2]; a commercial solver is used to solve the problem both in inland locks and locks in a tide independent port. To reduce the computational complexity of the lock scheduling problem, Verstichel et al. [4] proposed a combinatorial Benders’ decomposition approach, which decomposes the lock scheduling problem into a master problem and a subproblem. The master problem assigns the ships to lock chambers and schedules lockages. The subproblem allocates positions to the ships inside chambers.A mathematical model for lock scheduling of Three Gorges-Gezhouba Dams (TG-GD) is proposed in [1], which consists of lock assignment, timetable optimization, and ship dispatch problems. Then, chaotic embedded particle swarm optimization algorithm is proposed to solve the formulated problem. Yuan et al. [5] studied the coscheduling problem of a single lock and different water-land transshipment docks mixed transportation system for ships passing a dam. A genetic operator-based artificial bee colony (GB-ABC) algorithm is used to determine the ships assigned to locks and the water-land transshipment mode. A first-come-first-served strategy is used to schedule the berths in transshipment docks.Passchyn et al. [6] studied the lock scheduling problem with a series of consecutive locks and formulated the problem based on mathematical programming, with the objective to minimize total greenhouse gas emissions and the total flow time. Then, they discussed the lockmaster’s problem in [7] and proposed a dynamic programming algorithm to solve the problem in polynomial time. Ji et al. [8] studied the coscheduling problem of cascaded locks with multiple chambers and solved the problem with an iterative hybrid approach which combines quantum-inspired binary gravitational search and modified moth-flame optimization.Most research studies consider the arrival times of ships before locks as known information and consider the lock scheduling problem from the lock’s perspective, with the aim to maximize the lock capacity to handle more ships in each lockage operation. This paper takes a new perspective by also taking into account the optimization of ships’ arrivals at locks. This could reduce the ships’ waiting times and avoid ship traffic congestions at the locks. Moreover, with the adjustments of ship arrivals, the ships could choose a lower sailing speed in waterways, which could contribute to NOx emission reduction [9]. In practice, shipping companies have already started to adopt the “slow steaming” strategy to reduce fuel usage and overcapacity in recent years [9, 10].This paper proposes an optimization method to schedule ships’ arrivals and their placements in locks on inland waterways, based on a mixed integer-programming model, and solves the optimization problem with large neighborhood search based heuristics. The optimization objective is threefold: first, optimizing the arrival sequence of ships at the locks; second, maximize the utilization of each lockage operation; and third, reducing the overall time that each ship spends from entering the waterway till leaving the last lock.The remainder of this paper is organized as follows. Section2 gives the coordination structure to schedule ship arrivals and lockage operations at locks. Section 3 introduces the model formulation. The optimization steps are given in Section 4. The experimental results are presented in Section 5. Conclusions and future work are given in Section 6.


## 2. Proposed Coordination Scheme

Figure1 gives an illustrative example of ships passing a lock on the inland waterway. This paper assumes that there is a controlled waterway area before the lock entrance, in which the positions and speeds of ships could always be tracked. This waterway area is divided into multiple segments; in each segment, appropriate speed and travel time of each ship need to be determined. In this way, the arrivals of ships at locks could be adjusted. To be specific, the lock scheduling problem includes three aspects:(i)
Coordination of ship arrivals: suitable ship sailing speed needs to be determined for each ship so as to coordinate arrival times of different ships at locks to avoid congestion and long waiting times(ii)
Placement of ships in locks: the entering ships need to be placed in the lock in the way that lock capacity is fully utilized(iii)
Planning of lockage operations: the start and finish times of each lockage operation need to be determined, ensuring that the ships could pass the locks with a shorter timeFigure 1
An illustrative example of ships passing a lock on the inland waterway.Considering these aspects altogether in one problem makes it difficult to get exact solutions with a reasonable amount of time. Therefore, large neighborhood search- (LNS-) based heuristics are proposed in this paper to solve the formulated optimization problem. The LNS metaheuristic introduced by Shaw [11] considers a neighborhood defined implicitly by a destroy and a repair method. A destroy method destructs part of a current solution, while a repair method rebuilds the destroyed solution. The destroy method typically contains an element of stochasticity such that different parts of the solution are destroyed in every iteration of the method [12, 13].The proposed coordination scheme is given in Figure2. Each ship sends its current distances from the lock and its planned arrival time at lock to a central coordinator, and each lock sends its earliest available time to the coordinator, upon which the lock scheduling problem is formulated. A large neighborhood search-based heuristic is proposed to solve the formulated problem. After the optimization process terminates, the ships receive information regarding recommended lock arrival times and expected waiting times, as well as recommended ship speed. The start and finish time of the lockage operation as well as the set of ships that are assigned to each lockage and their positions in the lock chamber will also be determined for locks by the coordinator. The time when the last ship in set I leaves the lock will be updated as the earliest available time of the lock for the next set of upcoming ships.Figure 2
The proposed coordination scheme.Figure3 presents the time horizon considered in this paper, in which the ships are grouped according to their entering time at the entrance of the controlled waterway area. For example, the set of ships considered in coordination problem 1 includes the ships that pass the entrance of the controlled waterway area within a time of Ntime. When the last ship i1 passes the entrance of the controlled waterway area, the optimization process of coordination problem 1 initiates. The solution to coordination problem 1 will be updated as the known information for solving coordination problem 2 and the subsequent coordination problems.Figure 3
Time horizon.


## 3. Model Formulations

This section firstly introduces the parameters and decision variables used in this paper. Then, the optimization objectives and constraints are given. Constraints are grouped into five types: constraints on ship arrivals, ship placements, lockage operations, ship priorities, and underoccupied lockages.


### 3.1. Parameters and Decision Variables

Table1 gives the list of parameters. In practical situations, weather conditions, currents, and sometimes special reasons (such as document checks) by the authorities may affect the locking schedule and keep the ships waiting or change their order. These factors will be considered in the formulation of constraints. Figure 4 illustrates the minimal safety distances that should be kept between any two ships in the same chamber, as well as between each ship and the lock chamber. Table 2 gives the definitions of the decision variables. Variables xiq and yiq define the position of ship i in the lock chamber of lock q∈Q, and variables sijqleft and sijqbehind determine the relative positions of ships i and j. Variable pikq determines if ship i is handled at lockage k of lock q. Variables tkqlockage and tkqprocessing are used to determine the time-related information of each lockage operation. Variables tarrival,tideparture, and tisetup are the time-related variables of ship i. Variables vinz,tizsailing, and tizenter determine the ship i’s sailing and entering time at each segment in the controlled waterway.Table 1
List of parameters.
SymbolsDefinitionsISet of upcoming shipsIsSet of prioritized shipsQSet of locksZSet of segments of the waterwayKSet of lockagesNSet of ship speedWqWidth of lockqLqLength of lockqwidthiWidth of shipilengthiLength of shipiDhorizontalMinimal safety distance between ships next to each other horizontallyDverticalMinimal safety distance between ships behind each otherCchamberMinimal safety distance between ships and the front and back chamberTisailnSailing time of shipi when it chooses speed nTistartArrival time of shipi into the controlled areaTiprocessThe processing time of shipi entering and leaving the chamberTearliestThe earliest available time of the lockFigure 4
Safety distances that should be kept among ships in the same chamber.Table 2
List of variables.
SymbolsDefinitionsxiqShipi’s position on x-axis in lock qyiqShipi’s position on y-axis in lock qsijqleft=1 if shipi is on the completely left side of ship j in lock qsijqbehind=1 if shipi is behind ship j in lock qpikq=1 if shipi is processed at lockage k of lock qtkqlockageCompletion time of lockagek of lock qtkqprocessingProcessing time of lockagek of lock qtiqarrivalArrival time of shipi at the lock qtiqdepartureDeparture time of shipi from lock qtiqsetupPreparation time of shipi before entering lock qvinz=1 if shipi chooses speed n at segment ztizsailingSailing time of shipi in segmentztizenterEntering time of shipi to segment z


### 3.2. Optimization Objectives and Constraints

The optimization objective is to minimize the total time that ship spends in passing the locks, as well as to maximize the lock capacity by handling as many ships as possible in each lockage operation. Therefore, the optimization function is formulated as follows:(1)minP1∑i∈ItiQdeparture−Tistart−P2mink∈K,q∈Q∑i∈Ipikq,where ∑i∈ItiQdeparture−Tistart represents the sum of times that ships spend from entering the controlled waterway area till leaving the last lock on the waterway; mink∈K,q∈Q∑i∈Ipikq represents the minimum number of ships that are handled in each lockage k∈K of the locks in q∈Q; and parameters P1 and P2 are the assigned weights.


#### 3.2.1. Constraints of Ship Arrivals

(2)∑k∈Kpikq=1∀i∈I,∀q∈Q,(3)ti1enter≥Tistart∀i∈I,(4)tiz+1enter≥ti,zenter+ti,z+1sailing∀i∈I,∀z=1,2,…,Z,(5)ti1arrival≥ti,Z1enter+ti,Z1sailing∀i∈I,∀q∈Q,(6)tiqarrival≥ti,q−1departure+∑z=Zq−1Zqtizsailing∀i∈I,∀q≥2,q∈Q,(7)tizsailing≥Tinsailvinz∀i∈I,∀z∈Z,∀n∈N,(8)−M1−pikq+tkqlockage≤tiqdeparture≤tkqlockage+M1−pikq∀i∈I,∀k∈K,∀q∈Q.Constraint (2) ensures that all ships will be handled in one of the lockages of each lock. Constraints (3)–(8) describe the relations of ships’ arrivals, processing, and departures at different waterway segments and multiple locks. Constraint (3) defines the start time of each ship when it enters the controlled waterway area. Constraint (4) represents that the enter time of ship i at segment z+1 equals its enter time at previous segment z plus the sailing time at segment z. Constraint (5) ensures that the arrival time of ship i at the first lock equals its enter time at the last segment before the lock entrance plus the sailing time in this segment. It is noted that Z1 represents number of segments before the lock entrance of the first lock. For the subsequent locks, the arrival time at lock p equals the ship’s departure time from the last lock p−1 plus the sum of sailing times on the waterway segments from p−1 to p. This is expressed via constraint (6), in which Zq represents the number of segments before the entrance of lock q. Constraint (7) determines the sailing time of each ship according to its chosen speed. Constraint (8) represents that if ship i is processed in lockage k of lock q, its departure time equals the finish time tkqlockage of lockage k of lock q.


#### 3.2.2. Constraints of Ship Placements

(9)∑j∈Isijqleft≥1∀i∈I,∀q∈Q,(10)∑j∈Isijqbehind≥1∀i∈I,∀q∈Q,(11)sijqleft+sjiqleft≤1∀i,j∈I,∀q∈Q,(12)sijqbehind+sjiqbehind≤1∀i,j∈I,∀q∈Q,(13)sijqleft+sjiqleft+sijqbehind+sjiqbehind+1−pikq+1−pjkq≥1∀i,j∈I,∀k∈K,∀q∈Q,(14)Dhorizontal≤xiq≤Wq−Dhorizontal∀i∈I,∀q∈Q,(15)Cvertical≤yiq≤Lq∀i∈I,∀q∈Q,(16)xiq+widthi≤Wq−Dhorizontal+M1−pikq∀i∈I,∀k∈K,∀q∈Q,(17)yiq+lengthi≤Lq−Cchamber+M1−pikq∀i∈I,∀k∈K,∀q∈Q,(18)xiq+widthi≤xjq+Wq1−sijqleft∀i,j∈I,∀q∈Q,(19)yiq+lengthi≤yjq+Lq1−sijqbehind∀i,j∈I,∀q∈Q,(20)xjq≥xiq+widthi+Dhorizontal−Msijqbehind−M1−sijqleft∀i,j∈I,∀q∈Q,(21)yjq≥yiq+lengthi+Dvertical−M1−sijqbehind−Msijqleft∀i,j∈I,∀q∈Q.Constraints (9)–(21) ensure that the minimum safe distances are kept between the ships that are assigned to the same lockage operation and that all the ships keep enough distances between themselves and the lock chamber.To ensure that the lock chamber is fully occupied in each lockage, there should be ships placed on the left and right sides, as well as on the front and back sides. Constraints (9) and (10) ensure that, for each ship i∈I, there should be ships on its left and back sides, respectively. Constraint (11) represents that if ship i is on the left side of ship j, then ship j cannot be placed on the left side of ship i, and vice versa. This also applies to the front and back situations of any two ships i,j∈I, represented via constraint (12). Constraint (13) represents that if ships i and j are placed in the same lockage k of lock q, one of them will be on either the left or back side of the other ship.Constraints (14) and (15) ensure that the minimum safety distance between each ship and the lock chamber is kept. Constraints (16) and (17) ensure that each ship will be placed within the chamber. Constraint (18) represents that if ship i is on the left side of ship j, the x-coordinate of ship j should be at least larger than the x-coordinate of ship i plus its width widthi. Constraint (19) represents that if ship i is on the back side of ship j, the y-coordinate of ship j should be at least larger than the y-coordinate of ship i plus its length lengthj. Constraint (20) ensures that if ship i is on the completely left side of ship j, the horizontal intership safety distances are kept. Constraint (21) ensures that if ship i is completely behind ship j, the vertical intership safety distances are kept.


#### 3.2.3. Constraints of Lockage Operations

(22)t1qlockage≥Tearliest∀q∈Q,(23)tkqlockage≥pikqtiqarrival+tkqprocessing∀i∈I,∀k≥2,∀q∈Q,(24)tkqprocessing≥Tiprocess∑i∈Ipikq∀k∈K,∀q∈Q,(25)tk+1,qlockage≥tk,qlockage+tk+1,qprocessing∀k∈K,∀q∈Q.Constraint (22) represents that the first lockage operation should be carried out after the earliest available time of each lock. Constraint (23) ensures that the completion time of lockage k of lock q should be larger than the arrival times of the ships that are handled plus the processing time of them. Constraint (24) represents that if any ship will be handled in lockage k, the processing time equals Tiprocess. Constraint (25) ensures that the completion time of a lockage k should be at least larger than the completion time of the previous lockage k+1 plus the processing time of ships.


#### 3.2.4. Constraints of Ship Priorities

Considering the fact that certain types of ships have priorities in passing locks, these priorities should be considered in the model. As the ship priorities may differ in different countries, this paper mainly does not specify the ship types. For any shipi∈Is, constraints (26) and (27) ensure that it will be handled in the first lockage of each lock and that the deadline for leaving the lock is respected, respectively:(26)pi,1,q=1∀i∈Is,∀q∈Q,(27)tiqdeparture≤Tdeadline∀i∈Is,∀q∈Q.


#### 3.2.5. Constraints of Underoccupied Lockages

The proposed coordination scheme is carried out everyNtime, and it is possible that the last lockage may be underoccupied. This implies that the next set of upcoming ships could also be placed in the lockages that are not fully occupied in the previous coordination. After solving coordination problem p−1 for the previously entered ships, represented as set Ip−1, the lockage operations for these ships are determined. For the next set of Ip upcoming ships, when solving problem p, the ships in Ip−1 that are handled in the last lockage will be considered as “virtual ships” in coordination problem p. In other words, for these virtual ships v∈Ip−1, it is assumed that pv,1,q=1 holds in coordination problem p. The placements of these ships in the lock will be considered known and cannot be violated by the ships in Ip. If ship m∈Ip will be placed in the last lockage of coordination problem p−1, then pm,1,q=1.


## 3.1. Parameters and Decision Variables

Table1 gives the list of parameters. In practical situations, weather conditions, currents, and sometimes special reasons (such as document checks) by the authorities may affect the locking schedule and keep the ships waiting or change their order. These factors will be considered in the formulation of constraints. Figure 4 illustrates the minimal safety distances that should be kept between any two ships in the same chamber, as well as between each ship and the lock chamber. Table 2 gives the definitions of the decision variables. Variables xiq and yiq define the position of ship i in the lock chamber of lock q∈Q, and variables sijqleft and sijqbehind determine the relative positions of ships i and j. Variable pikq determines if ship i is handled at lockage k of lock q. Variables tkqlockage and tkqprocessing are used to determine the time-related information of each lockage operation. Variables tarrival,tideparture, and tisetup are the time-related variables of ship i. Variables vinz,tizsailing, and tizenter determine the ship i’s sailing and entering time at each segment in the controlled waterway.Table 1
List of parameters.
SymbolsDefinitionsISet of upcoming shipsIsSet of prioritized shipsQSet of locksZSet of segments of the waterwayKSet of lockagesNSet of ship speedWqWidth of lockqLqLength of lockqwidthiWidth of shipilengthiLength of shipiDhorizontalMinimal safety distance between ships next to each other horizontallyDverticalMinimal safety distance between ships behind each otherCchamberMinimal safety distance between ships and the front and back chamberTisailnSailing time of shipi when it chooses speed nTistartArrival time of shipi into the controlled areaTiprocessThe processing time of shipi entering and leaving the chamberTearliestThe earliest available time of the lockFigure 4
Safety distances that should be kept among ships in the same chamber.Table 2
List of variables.
SymbolsDefinitionsxiqShipi’s position on x-axis in lock qyiqShipi’s position on y-axis in lock qsijqleft=1 if shipi is on the completely left side of ship j in lock qsijqbehind=1 if shipi is behind ship j in lock qpikq=1 if shipi is processed at lockage k of lock qtkqlockageCompletion time of lockagek of lock qtkqprocessingProcessing time of lockagek of lock qtiqarrivalArrival time of shipi at the lock qtiqdepartureDeparture time of shipi from lock qtiqsetupPreparation time of shipi before entering lock qvinz=1 if shipi chooses speed n at segment ztizsailingSailing time of shipi in segmentztizenterEntering time of shipi to segment z


## 3.2. Optimization Objectives and Constraints

The optimization objective is to minimize the total time that ship spends in passing the locks, as well as to maximize the lock capacity by handling as many ships as possible in each lockage operation. Therefore, the optimization function is formulated as follows:(1)minP1∑i∈ItiQdeparture−Tistart−P2mink∈K,q∈Q∑i∈Ipikq,where ∑i∈ItiQdeparture−Tistart represents the sum of times that ships spend from entering the controlled waterway area till leaving the last lock on the waterway; mink∈K,q∈Q∑i∈Ipikq represents the minimum number of ships that are handled in each lockage k∈K of the locks in q∈Q; and parameters P1 and P2 are the assigned weights.


### 3.2.1. Constraints of Ship Arrivals

(2)∑k∈Kpikq=1∀i∈I,∀q∈Q,(3)ti1enter≥Tistart∀i∈I,(4)tiz+1enter≥ti,zenter+ti,z+1sailing∀i∈I,∀z=1,2,…,Z,(5)ti1arrival≥ti,Z1enter+ti,Z1sailing∀i∈I,∀q∈Q,(6)tiqarrival≥ti,q−1departure+∑z=Zq−1Zqtizsailing∀i∈I,∀q≥2,q∈Q,(7)tizsailing≥Tinsailvinz∀i∈I,∀z∈Z,∀n∈N,(8)−M1−pikq+tkqlockage≤tiqdeparture≤tkqlockage+M1−pikq∀i∈I,∀k∈K,∀q∈Q.Constraint (2) ensures that all ships will be handled in one of the lockages of each lock. Constraints (3)–(8) describe the relations of ships’ arrivals, processing, and departures at different waterway segments and multiple locks. Constraint (3) defines the start time of each ship when it enters the controlled waterway area. Constraint (4) represents that the enter time of ship i at segment z+1 equals its enter time at previous segment z plus the sailing time at segment z. Constraint (5) ensures that the arrival time of ship i at the first lock equals its enter time at the last segment before the lock entrance plus the sailing time in this segment. It is noted that Z1 represents number of segments before the lock entrance of the first lock. For the subsequent locks, the arrival time at lock p equals the ship’s departure time from the last lock p−1 plus the sum of sailing times on the waterway segments from p−1 to p. This is expressed via constraint (6), in which Zq represents the number of segments before the entrance of lock q. Constraint (7) determines the sailing time of each ship according to its chosen speed. Constraint (8) represents that if ship i is processed in lockage k of lock q, its departure time equals the finish time tkqlockage of lockage k of lock q.


### 3.2.2. Constraints of Ship Placements

(9)∑j∈Isijqleft≥1∀i∈I,∀q∈Q,(10)∑j∈Isijqbehind≥1∀i∈I,∀q∈Q,(11)sijqleft+sjiqleft≤1∀i,j∈I,∀q∈Q,(12)sijqbehind+sjiqbehind≤1∀i,j∈I,∀q∈Q,(13)sijqleft+sjiqleft+sijqbehind+sjiqbehind+1−pikq+1−pjkq≥1∀i,j∈I,∀k∈K,∀q∈Q,(14)Dhorizontal≤xiq≤Wq−Dhorizontal∀i∈I,∀q∈Q,(15)Cvertical≤yiq≤Lq∀i∈I,∀q∈Q,(16)xiq+widthi≤Wq−Dhorizontal+M1−pikq∀i∈I,∀k∈K,∀q∈Q,(17)yiq+lengthi≤Lq−Cchamber+M1−pikq∀i∈I,∀k∈K,∀q∈Q,(18)xiq+widthi≤xjq+Wq1−sijqleft∀i,j∈I,∀q∈Q,(19)yiq+lengthi≤yjq+Lq1−sijqbehind∀i,j∈I,∀q∈Q,(20)xjq≥xiq+widthi+Dhorizontal−Msijqbehind−M1−sijqleft∀i,j∈I,∀q∈Q,(21)yjq≥yiq+lengthi+Dvertical−M1−sijqbehind−Msijqleft∀i,j∈I,∀q∈Q.Constraints (9)–(21) ensure that the minimum safe distances are kept between the ships that are assigned to the same lockage operation and that all the ships keep enough distances between themselves and the lock chamber.To ensure that the lock chamber is fully occupied in each lockage, there should be ships placed on the left and right sides, as well as on the front and back sides. Constraints (9) and (10) ensure that, for each ship i∈I, there should be ships on its left and back sides, respectively. Constraint (11) represents that if ship i is on the left side of ship j, then ship j cannot be placed on the left side of ship i, and vice versa. This also applies to the front and back situations of any two ships i,j∈I, represented via constraint (12). Constraint (13) represents that if ships i and j are placed in the same lockage k of lock q, one of them will be on either the left or back side of the other ship.Constraints (14) and (15) ensure that the minimum safety distance between each ship and the lock chamber is kept. Constraints (16) and (17) ensure that each ship will be placed within the chamber. Constraint (18) represents that if ship i is on the left side of ship j, the x-coordinate of ship j should be at least larger than the x-coordinate of ship i plus its width widthi. Constraint (19) represents that if ship i is on the back side of ship j, the y-coordinate of ship j should be at least larger than the y-coordinate of ship i plus its length lengthj. Constraint (20) ensures that if ship i is on the completely left side of ship j, the horizontal intership safety distances are kept. Constraint (21) ensures that if ship i is completely behind ship j, the vertical intership safety distances are kept.


### 3.2.3. Constraints of Lockage Operations

(22)t1qlockage≥Tearliest∀q∈Q,(23)tkqlockage≥pikqtiqarrival+tkqprocessing∀i∈I,∀k≥2,∀q∈Q,(24)tkqprocessing≥Tiprocess∑i∈Ipikq∀k∈K,∀q∈Q,(25)tk+1,qlockage≥tk,qlockage+tk+1,qprocessing∀k∈K,∀q∈Q.Constraint (22) represents that the first lockage operation should be carried out after the earliest available time of each lock. Constraint (23) ensures that the completion time of lockage k of lock q should be larger than the arrival times of the ships that are handled plus the processing time of them. Constraint (24) represents that if any ship will be handled in lockage k, the processing time equals Tiprocess. Constraint (25) ensures that the completion time of a lockage k should be at least larger than the completion time of the previous lockage k+1 plus the processing time of ships.


### 3.2.4. Constraints of Ship Priorities

Considering the fact that certain types of ships have priorities in passing locks, these priorities should be considered in the model. As the ship priorities may differ in different countries, this paper mainly does not specify the ship types. For any shipi∈Is, constraints (26) and (27) ensure that it will be handled in the first lockage of each lock and that the deadline for leaving the lock is respected, respectively:(26)pi,1,q=1∀i∈Is,∀q∈Q,(27)tiqdeparture≤Tdeadline∀i∈Is,∀q∈Q.


### 3.2.5. Constraints of Underoccupied Lockages

The proposed coordination scheme is carried out everyNtime, and it is possible that the last lockage may be underoccupied. This implies that the next set of upcoming ships could also be placed in the lockages that are not fully occupied in the previous coordination. After solving coordination problem p−1 for the previously entered ships, represented as set Ip−1, the lockage operations for these ships are determined. For the next set of Ip upcoming ships, when solving problem p, the ships in Ip−1 that are handled in the last lockage will be considered as “virtual ships” in coordination problem p. In other words, for these virtual ships v∈Ip−1, it is assumed that pv,1,q=1 holds in coordination problem p. The placements of these ships in the lock will be considered known and cannot be violated by the ships in Ip. If ship m∈Ip will be placed in the last lockage of coordination problem p−1, then pm,1,q=1.


## 3.2.1. Constraints of Ship Arrivals

(2)∑k∈Kpikq=1∀i∈I,∀q∈Q,(3)ti1enter≥Tistart∀i∈I,(4)tiz+1enter≥ti,zenter+ti,z+1sailing∀i∈I,∀z=1,2,…,Z,(5)ti1arrival≥ti,Z1enter+ti,Z1sailing∀i∈I,∀q∈Q,(6)tiqarrival≥ti,q−1departure+∑z=Zq−1Zqtizsailing∀i∈I,∀q≥2,q∈Q,(7)tizsailing≥Tinsailvinz∀i∈I,∀z∈Z,∀n∈N,(8)−M1−pikq+tkqlockage≤tiqdeparture≤tkqlockage+M1−pikq∀i∈I,∀k∈K,∀q∈Q.Constraint (2) ensures that all ships will be handled in one of the lockages of each lock. Constraints (3)–(8) describe the relations of ships’ arrivals, processing, and departures at different waterway segments and multiple locks. Constraint (3) defines the start time of each ship when it enters the controlled waterway area. Constraint (4) represents that the enter time of ship i at segment z+1 equals its enter time at previous segment z plus the sailing time at segment z. Constraint (5) ensures that the arrival time of ship i at the first lock equals its enter time at the last segment before the lock entrance plus the sailing time in this segment. It is noted that Z1 represents number of segments before the lock entrance of the first lock. For the subsequent locks, the arrival time at lock p equals the ship’s departure time from the last lock p−1 plus the sum of sailing times on the waterway segments from p−1 to p. This is expressed via constraint (6), in which Zq represents the number of segments before the entrance of lock q. Constraint (7) determines the sailing time of each ship according to its chosen speed. Constraint (8) represents that if ship i is processed in lockage k of lock q, its departure time equals the finish time tkqlockage of lockage k of lock q.


## 3.2.2. Constraints of Ship Placements

(9)∑j∈Isijqleft≥1∀i∈I,∀q∈Q,(10)∑j∈Isijqbehind≥1∀i∈I,∀q∈Q,(11)sijqleft+sjiqleft≤1∀i,j∈I,∀q∈Q,(12)sijqbehind+sjiqbehind≤1∀i,j∈I,∀q∈Q,(13)sijqleft+sjiqleft+sijqbehind+sjiqbehind+1−pikq+1−pjkq≥1∀i,j∈I,∀k∈K,∀q∈Q,(14)Dhorizontal≤xiq≤Wq−Dhorizontal∀i∈I,∀q∈Q,(15)Cvertical≤yiq≤Lq∀i∈I,∀q∈Q,(16)xiq+widthi≤Wq−Dhorizontal+M1−pikq∀i∈I,∀k∈K,∀q∈Q,(17)yiq+lengthi≤Lq−Cchamber+M1−pikq∀i∈I,∀k∈K,∀q∈Q,(18)xiq+widthi≤xjq+Wq1−sijqleft∀i,j∈I,∀q∈Q,(19)yiq+lengthi≤yjq+Lq1−sijqbehind∀i,j∈I,∀q∈Q,(20)xjq≥xiq+widthi+Dhorizontal−Msijqbehind−M1−sijqleft∀i,j∈I,∀q∈Q,(21)yjq≥yiq+lengthi+Dvertical−M1−sijqbehind−Msijqleft∀i,j∈I,∀q∈Q.Constraints (9)–(21) ensure that the minimum safe distances are kept between the ships that are assigned to the same lockage operation and that all the ships keep enough distances between themselves and the lock chamber.To ensure that the lock chamber is fully occupied in each lockage, there should be ships placed on the left and right sides, as well as on the front and back sides. Constraints (9) and (10) ensure that, for each ship i∈I, there should be ships on its left and back sides, respectively. Constraint (11) represents that if ship i is on the left side of ship j, then ship j cannot be placed on the left side of ship i, and vice versa. This also applies to the front and back situations of any two ships i,j∈I, represented via constraint (12). Constraint (13) represents that if ships i and j are placed in the same lockage k of lock q, one of them will be on either the left or back side of the other ship.Constraints (14) and (15) ensure that the minimum safety distance between each ship and the lock chamber is kept. Constraints (16) and (17) ensure that each ship will be placed within the chamber. Constraint (18) represents that if ship i is on the left side of ship j, the x-coordinate of ship j should be at least larger than the x-coordinate of ship i plus its width widthi. Constraint (19) represents that if ship i is on the back side of ship j, the y-coordinate of ship j should be at least larger than the y-coordinate of ship i plus its length lengthj. Constraint (20) ensures that if ship i is on the completely left side of ship j, the horizontal intership safety distances are kept. Constraint (21) ensures that if ship i is completely behind ship j, the vertical intership safety distances are kept.


## 3.2.3. Constraints of Lockage Operations

(22)t1qlockage≥Tearliest∀q∈Q,(23)tkqlockage≥pikqtiqarrival+tkqprocessing∀i∈I,∀k≥2,∀q∈Q,(24)tkqprocessing≥Tiprocess∑i∈Ipikq∀k∈K,∀q∈Q,(25)tk+1,qlockage≥tk,qlockage+tk+1,qprocessing∀k∈K,∀q∈Q.Constraint (22) represents that the first lockage operation should be carried out after the earliest available time of each lock. Constraint (23) ensures that the completion time of lockage k of lock q should be larger than the arrival times of the ships that are handled plus the processing time of them. Constraint (24) represents that if any ship will be handled in lockage k, the processing time equals Tiprocess. Constraint (25) ensures that the completion time of a lockage k should be at least larger than the completion time of the previous lockage k+1 plus the processing time of ships.


## 3.2.4. Constraints of Ship Priorities

Considering the fact that certain types of ships have priorities in passing locks, these priorities should be considered in the model. As the ship priorities may differ in different countries, this paper mainly does not specify the ship types. For any shipi∈Is, constraints (26) and (27) ensure that it will be handled in the first lockage of each lock and that the deadline for leaving the lock is respected, respectively:(26)pi,1,q=1∀i∈Is,∀q∈Q,(27)tiqdeparture≤Tdeadline∀i∈Is,∀q∈Q.


## 3.2.5. Constraints of Underoccupied Lockages

The proposed coordination scheme is carried out everyNtime, and it is possible that the last lockage may be underoccupied. This implies that the next set of upcoming ships could also be placed in the lockages that are not fully occupied in the previous coordination. After solving coordination problem p−1 for the previously entered ships, represented as set Ip−1, the lockage operations for these ships are determined. For the next set of Ip upcoming ships, when solving problem p, the ships in Ip−1 that are handled in the last lockage will be considered as “virtual ships” in coordination problem p. In other words, for these virtual ships v∈Ip−1, it is assumed that pv,1,q=1 holds in coordination problem p. The placements of these ships in the lock will be considered known and cannot be violated by the ships in Ip. If ship m∈Ip will be placed in the last lockage of coordination problem p−1, then pm,1,q=1.


## 4. Solution Steps

We propose an LNS-based solution method to solve the formulated problem. An LNS heuristic consists of the following steps:(1)
Initialization with the current global best solution(2)
First application of the destroy method and then the repair method to obtain a new solution(3)
Evaluation of the new solution and determination of whether this solution should become the new current solution or whether it should be rejected(4)
Updating the new current global best solution if needed(5)
Checking if the termination condition to end the search process is satisfiedMore details of the LNS heuristics can be found in [9, 10]. It has been commonly used and is well known to be effective in solving vehicle routing problem and its variants [14, 15].In our approach, for the upcoming ships in coordination problemp, initial solutions are generated assuming that all ships choose the fastest speed and are handled at locks on a first-come-first-served basis. Based on the initial solutions, the algorithm starts to modify them by first removing and reinserting the ships iteratively. In each iteration, m ships are first removed, and the value of the remaining |I|−m ships is used. In this paper, we consider two removal heuristics to decide on which q ships will be removed from the current solution. The removal heuristics are described as follows:(i)
Random removal: the random removal simply selectsm ships at random and removes them from the solution.(ii)
Worst removal: this removal strategy removes the ships with the longest departure time from each lockq, represented as tiqdeparture−Tistart. It is reasonable to remove the ships that have to spend longer time in passing locks and reinsert them to obtain a better solution.After the removal, we use a commercial solver to solve problems (2)–(27), in which the values of the I−m ships are kept and solutions of the already removed m ships are found. At this point, a new solution s′ is generated, which is compared with the current best solution sbest. If the objective value of the new solution is smaller than the current best objective value, the new solution is better and is saved as the current best solution, and the new objective value is saved as the current best objective value. Then, the removal and reinsertion process is started over again. If the objective value of the new solution is larger than the current best objective value, the new solution will be left out and the removal and reinsertion iteration is carried out again by removing another m ships and reinserting them with the solver. The whole procedure stops after a predefined number of iterations.


## 5. Simulation Results

Simulations are carried out to assess and analyze the effectiveness of the proposed approach. We first describe the experimental setting and then present examples of lockage plans for each lock and the involved ships. Then, a comparison of solution quality in one of the cases is presented as an instance. The performance of the proposed LNS-based heuristics is also compared with respect to lock-relevant and ship-relevant key performance indicators.


### 5.1. Experimental Settings

Our simulations are performed on an Intel Core i7-7500 CPU with 8 GB RAM running Windows 10 and are implemented in MATLAB, in which CPLEX 12.8.1 is used as the optimization solver. For the LNS heuristics,20%∼30% of the ships are removed and inserted in each iteration. We set up 10 different cases in which 64 ships are entering three sequential locks in the next 2–8 hours. In other words, there are 8∼32 ships entering the entrance of waterway every hour. In addition, it is assumed that the locks are empty at the beginning of optimization.The lengths of ships range from50m to 80m, and their widths range from 10m to 20m. For each lock, L1=230m,W1=30m; L2=150m,W2=50m; and L3=200m,W3=50m. The processing time for each lockage operation Tprocess is equal to 30 minutes. There are 5 segments from the waterway entrance to Lock 1, from Lock 1 to Lock 2, and from Lock 2 to Lock 3; the length of each segment is 12km. In each segment, four types of ship speeds are considered: 24km/h,32km/h,40km/h, and 48km/h. Subsequently, four types of sailing time are also considered (in minutes): 30 minutes, 22 minutes, 18 minutes, and 15 minutes. For each case, 30 iterations are carried out in the optimization process and we run 10 repetitions of simulations and use the average values. To generate the initial solution, it is assumed that all ships choose the fastest sailing speed and they will be served at each lock on a first-come-first-served basis.


### 5.2. Example of Lockage Plans

Figures5 and 6 give examples of ships’ placements in one of the locks according to the optimization results of LNS-random and LNS-worst heuristics in Case 1, in which L1–L20 represent the numbers of lockage operations and L1 represents the first lockage operation. As can be seen, all the ships keep enough distances between themselves and the lock chambers. Comparing with Figure 5, less lockage operations are required to handle the same set of ships in Figure 6.Figure 5
Ships’ placements in each lockage with LNS-random.Figure 6
Ships’ placements in each lockage with LNS-worst.Figures7 and 8 give the lockage plans of different locks in Case 1. First, it could be seen that LNS-worst heuristics generate lock scheduling plans that require less number of lockage operations to handle the same set of ships, compared with LNS-random heuristics. This also implies that the locks are more utilized in Figure 8, as more ships are handled in each lockage operation. On the other hand, the idle times of the locks in Figure 8 are also longer than those in Figure 7. This is because the locks sometimes need to wait for more ships to enter in each lockage.Figure 7
Lockage plans with LNS-random.Figure 8
Lockage plans with LNS-worst.Figures9–12 show the time that each ship spends from entering the controlled waterway area till leaving the last lock. It can be seen from Figure 10 that the ships could spend less time waiting at each lock with the optimized plans and passing all the locks with a shorter time, comparing with Figure 9.Figure 9
Arrivals and departures of Ships 1–30 at locks with LNS-random.Figure 10
Arrivals and departures of Ships 31–60 at locks with LNS-random.Figure 11
Arrivals and departures of Ships 1–30 at locks with LNS-worst.Figure 12
Arrivals and departures of Ships 31–60 at locks with LNS-worst.


### 5.3. Analysis of Solution Quality

Figure13 compares the quality of solutions of LNS-random and LNS-worst heuristics with different imposed number of iterations. The values are calculated as the objective values of the LNS-based heuristics divided by the objective value of optimal solution generated with the CPLEX solver, in percentages. It is noted that these values are the average values of all cases. As can be seen, both heuristics could reach optimality within 40–50 iterations. LNS-worst heuristic performs better than LNS-random heuristic as it converges faster to optimal solutions.Figure 13
Comparison of solution quality of LNS-random and LNS-worst heuristics.


### 5.4. Comparison of Key Performance Indicators

This paper considers two types of key performance indicators (KPIs) to evaluate the lock scheduling plans: lock-relevant KPIs that reflect the utilization of lock capacity for handling ships and ship-relevant KPIs that reflect if the ships have passed all the locks efficiently.


#### 5.4.1. Lock-Relevant KPIs

The lock-relevant KPIs are given as follows:(i)
KPI 1: the number of lockages required to process the ships per lock(ii)
KPI 2: the time when the last lockage operation finishes per lock(iii)
KPI 3: the sum of idle times in which the lock does not process any shipKPI 1 reflects whether each lockage operation handles as many ships as possible and that lower values imply higher utilization. KPI 2 reflects the time required for the ships to pass all locks; a shorter time represents higher efficiency. KPI 3 represents the waiting times of the locks for the upcoming ships to arrive. While lower value of KPIs 1 and 2 means higher lock utilization, this is not necessary in the case for KPI 3. This is because if more ships are handled in the same lockage, then the lock may need to wait for all ships to enter so that it could start the lockage operation.Table3 shows the maximum, minimum, and average ratio of the proposed heuristics to the benchmark scenario with respect to KPIs 1, 2, and 3 from the 10 cases. The values reported in the table are obtained from dividing the values of KPIs 1–3 generated with each heuristic by the values generated in the benchmark scenario. First, both heuristics could improve efficiency and utilization of the locks as they all lead to lower values of KPIs 1, 2, and 3. Second, LNS-worst performs better than LNS-random with respect to KPIs 1, 2, and 3. With LNS-worst heuristic, each lock is expected to spend 11% less time in lockage operations and 13% less time to handle ships and the idle time during which the locks are not in use can also be reduced. It is noted that the values are obtained from the 10 cases in which the frequency of ship arrivals differs and that this approach may lead to larger improvements in extreme situations with denser ship arrivals.Table 3
Comparison of different heuristics on lock-relevant KPIs.
KPI 1: number of lockagesKPI 2: lockage finish timeKPI 3: lock idle timeMax (%)Min (%)Avg (%)Max (%)Min (%)Avg (%)Max (%)Min (%)Avg (%)LNS-random100.0071.4290.58100.0071.7391.31100.0025.0077.02LNS-worst100.0057.1589.14100.0059.4287.39100.0050.0065.95


#### 5.4.2. Ship-Relevant KPIs

The ship-relevant KPIs are given as follows:(i)
KPI 4: each ship’s departure time from the last lock on the waterway(ii)
KPI 5: the sum of waiting times of each ship at the locksKPIs 4 and 5 reflect the efficiency of ships in passing the locks on the waterway; a shorter time represents higher efficiency. Table4 shows the maximum, minimum, and average ratio of the proposed heuristics to the benchmark scenario from the 10 cases. The values reported in the table are obtained from dividing the values of KPIs 4 and 5 generated with each heuristic by the values generated in the benchmark scenario. As can be seen, with both heuristics, the ships could leave the lock with a shorter time and do not need to wait for long time at the lock. Meanwhile, LNS-worst performs better than LNS-random with respect to both KPIs 4 and 5, and with the suggested ship arrivals by LNS-worst, the ships could leave the last lock around 9% earlier, as well as spend 28% less waiting time at the locks according to the simulation settings of this paper.Table 4
Comparison of different heuristics on ship-relevant KPIs.
KPI 4: ship departure timeKPI 5: ship waiting timeMax (%)Min (%)Avg (%)Max (%)Min (%)Avg (%)LNS-random100.0079.1195.47100.004.0083.35LNS-worst100.0048.8991.37100.009.4372.85


## 5.1. Experimental Settings

Our simulations are performed on an Intel Core i7-7500 CPU with 8 GB RAM running Windows 10 and are implemented in MATLAB, in which CPLEX 12.8.1 is used as the optimization solver. For the LNS heuristics,20%∼30% of the ships are removed and inserted in each iteration. We set up 10 different cases in which 64 ships are entering three sequential locks in the next 2–8 hours. In other words, there are 8∼32 ships entering the entrance of waterway every hour. In addition, it is assumed that the locks are empty at the beginning of optimization.The lengths of ships range from50m to 80m, and their widths range from 10m to 20m. For each lock, L1=230m,W1=30m; L2=150m,W2=50m; and L3=200m,W3=50m. The processing time for each lockage operation Tprocess is equal to 30 minutes. There are 5 segments from the waterway entrance to Lock 1, from Lock 1 to Lock 2, and from Lock 2 to Lock 3; the length of each segment is 12km. In each segment, four types of ship speeds are considered: 24km/h,32km/h,40km/h, and 48km/h. Subsequently, four types of sailing time are also considered (in minutes): 30 minutes, 22 minutes, 18 minutes, and 15 minutes. For each case, 30 iterations are carried out in the optimization process and we run 10 repetitions of simulations and use the average values. To generate the initial solution, it is assumed that all ships choose the fastest sailing speed and they will be served at each lock on a first-come-first-served basis.


## 5.2. Example of Lockage Plans

Figures5 and 6 give examples of ships’ placements in one of the locks according to the optimization results of LNS-random and LNS-worst heuristics in Case 1, in which L1–L20 represent the numbers of lockage operations and L1 represents the first lockage operation. As can be seen, all the ships keep enough distances between themselves and the lock chambers. Comparing with Figure 5, less lockage operations are required to handle the same set of ships in Figure 6.Figure 5
Ships’ placements in each lockage with LNS-random.Figure 6
Ships’ placements in each lockage with LNS-worst.Figures7 and 8 give the lockage plans of different locks in Case 1. First, it could be seen that LNS-worst heuristics generate lock scheduling plans that require less number of lockage operations to handle the same set of ships, compared with LNS-random heuristics. This also implies that the locks are more utilized in Figure 8, as more ships are handled in each lockage operation. On the other hand, the idle times of the locks in Figure 8 are also longer than those in Figure 7. This is because the locks sometimes need to wait for more ships to enter in each lockage.Figure 7
Lockage plans with LNS-random.Figure 8
Lockage plans with LNS-worst.Figures9–12 show the time that each ship spends from entering the controlled waterway area till leaving the last lock. It can be seen from Figure 10 that the ships could spend less time waiting at each lock with the optimized plans and passing all the locks with a shorter time, comparing with Figure 9.Figure 9
Arrivals and departures of Ships 1–30 at locks with LNS-random.Figure 10
Arrivals and departures of Ships 31–60 at locks with LNS-random.Figure 11
Arrivals and departures of Ships 1–30 at locks with LNS-worst.Figure 12
Arrivals and departures of Ships 31–60 at locks with LNS-worst.


## 5.3. Analysis of Solution Quality

Figure13 compares the quality of solutions of LNS-random and LNS-worst heuristics with different imposed number of iterations. The values are calculated as the objective values of the LNS-based heuristics divided by the objective value of optimal solution generated with the CPLEX solver, in percentages. It is noted that these values are the average values of all cases. As can be seen, both heuristics could reach optimality within 40–50 iterations. LNS-worst heuristic performs better than LNS-random heuristic as it converges faster to optimal solutions.Figure 13
Comparison of solution quality of LNS-random and LNS-worst heuristics.


## 5.4. Comparison of Key Performance Indicators

This paper considers two types of key performance indicators (KPIs) to evaluate the lock scheduling plans: lock-relevant KPIs that reflect the utilization of lock capacity for handling ships and ship-relevant KPIs that reflect if the ships have passed all the locks efficiently.


### 5.4.1. Lock-Relevant KPIs

The lock-relevant KPIs are given as follows:(i)
KPI 1: the number of lockages required to process the ships per lock(ii)
KPI 2: the time when the last lockage operation finishes per lock(iii)
KPI 3: the sum of idle times in which the lock does not process any shipKPI 1 reflects whether each lockage operation handles as many ships as possible and that lower values imply higher utilization. KPI 2 reflects the time required for the ships to pass all locks; a shorter time represents higher efficiency. KPI 3 represents the waiting times of the locks for the upcoming ships to arrive. While lower value of KPIs 1 and 2 means higher lock utilization, this is not necessary in the case for KPI 3. This is because if more ships are handled in the same lockage, then the lock may need to wait for all ships to enter so that it could start the lockage operation.Table3 shows the maximum, minimum, and average ratio of the proposed heuristics to the benchmark scenario with respect to KPIs 1, 2, and 3 from the 10 cases. The values reported in the table are obtained from dividing the values of KPIs 1–3 generated with each heuristic by the values generated in the benchmark scenario. First, both heuristics could improve efficiency and utilization of the locks as they all lead to lower values of KPIs 1, 2, and 3. Second, LNS-worst performs better than LNS-random with respect to KPIs 1, 2, and 3. With LNS-worst heuristic, each lock is expected to spend 11% less time in lockage operations and 13% less time to handle ships and the idle time during which the locks are not in use can also be reduced. It is noted that the values are obtained from the 10 cases in which the frequency of ship arrivals differs and that this approach may lead to larger improvements in extreme situations with denser ship arrivals.Table 3
Comparison of different heuristics on lock-relevant KPIs.
KPI 1: number of lockagesKPI 2: lockage finish timeKPI 3: lock idle timeMax (%)Min (%)Avg (%)Max (%)Min (%)Avg (%)Max (%)Min (%)Avg (%)LNS-random100.0071.4290.58100.0071.7391.31100.0025.0077.02LNS-worst100.0057.1589.14100.0059.4287.39100.0050.0065.95


### 5.4.2. Ship-Relevant KPIs

The ship-relevant KPIs are given as follows:(i)
KPI 4: each ship’s departure time from the last lock on the waterway(ii)
KPI 5: the sum of waiting times of each ship at the locksKPIs 4 and 5 reflect the efficiency of ships in passing the locks on the waterway; a shorter time represents higher efficiency. Table4 shows the maximum, minimum, and average ratio of the proposed heuristics to the benchmark scenario from the 10 cases. The values reported in the table are obtained from dividing the values of KPIs 4 and 5 generated with each heuristic by the values generated in the benchmark scenario. As can be seen, with both heuristics, the ships could leave the lock with a shorter time and do not need to wait for long time at the lock. Meanwhile, LNS-worst performs better than LNS-random with respect to both KPIs 4 and 5, and with the suggested ship arrivals by LNS-worst, the ships could leave the last lock around 9% earlier, as well as spend 28% less waiting time at the locks according to the simulation settings of this paper.Table 4
Comparison of different heuristics on ship-relevant KPIs.
KPI 4: ship departure timeKPI 5: ship waiting timeMax (%)Min (%)Avg (%)Max (%)Min (%)Avg (%)LNS-random100.0079.1195.47100.004.0083.35LNS-worst100.0048.8991.37100.009.4372.85


## 5.4.1. Lock-Relevant KPIs

The lock-relevant KPIs are given as follows:(i)
KPI 1: the number of lockages required to process the ships per lock(ii)
KPI 2: the time when the last lockage operation finishes per lock(iii)
KPI 3: the sum of idle times in which the lock does not process any shipKPI 1 reflects whether each lockage operation handles as many ships as possible and that lower values imply higher utilization. KPI 2 reflects the time required for the ships to pass all locks; a shorter time represents higher efficiency. KPI 3 represents the waiting times of the locks for the upcoming ships to arrive. While lower value of KPIs 1 and 2 means higher lock utilization, this is not necessary in the case for KPI 3. This is because if more ships are handled in the same lockage, then the lock may need to wait for all ships to enter so that it could start the lockage operation.Table3 shows the maximum, minimum, and average ratio of the proposed heuristics to the benchmark scenario with respect to KPIs 1, 2, and 3 from the 10 cases. The values reported in the table are obtained from dividing the values of KPIs 1–3 generated with each heuristic by the values generated in the benchmark scenario. First, both heuristics could improve efficiency and utilization of the locks as they all lead to lower values of KPIs 1, 2, and 3. Second, LNS-worst performs better than LNS-random with respect to KPIs 1, 2, and 3. With LNS-worst heuristic, each lock is expected to spend 11% less time in lockage operations and 13% less time to handle ships and the idle time during which the locks are not in use can also be reduced. It is noted that the values are obtained from the 10 cases in which the frequency of ship arrivals differs and that this approach may lead to larger improvements in extreme situations with denser ship arrivals.Table 3
Comparison of different heuristics on lock-relevant KPIs.
KPI 1: number of lockagesKPI 2: lockage finish timeKPI 3: lock idle timeMax (%)Min (%)Avg (%)Max (%)Min (%)Avg (%)Max (%)Min (%)Avg (%)LNS-random100.0071.4290.58100.0071.7391.31100.0025.0077.02LNS-worst100.0057.1589.14100.0059.4287.39100.0050.0065.95


## 5.4.2. Ship-Relevant KPIs

The ship-relevant KPIs are given as follows:(i)
KPI 4: each ship’s departure time from the last lock on the waterway(ii)
KPI 5: the sum of waiting times of each ship at the locksKPIs 4 and 5 reflect the efficiency of ships in passing the locks on the waterway; a shorter time represents higher efficiency. Table4 shows the maximum, minimum, and average ratio of the proposed heuristics to the benchmark scenario from the 10 cases. The values reported in the table are obtained from dividing the values of KPIs 4 and 5 generated with each heuristic by the values generated in the benchmark scenario. As can be seen, with both heuristics, the ships could leave the lock with a shorter time and do not need to wait for long time at the lock. Meanwhile, LNS-worst performs better than LNS-random with respect to both KPIs 4 and 5, and with the suggested ship arrivals by LNS-worst, the ships could leave the last lock around 9% earlier, as well as spend 28% less waiting time at the locks according to the simulation settings of this paper.Table 4
Comparison of different heuristics on ship-relevant KPIs.
KPI 4: ship departure timeKPI 5: ship waiting timeMax (%)Min (%)Avg (%)Max (%)Min (%)Avg (%)LNS-random100.0079.1195.47100.004.0083.35LNS-worst100.0048.8991.37100.009.4372.85


## 6. Conclusions and Future Work

This paper addresses an optimization approach for scheduling lock operations and ship arrivals at locks on inland waterways. Two large neighborhood search based heuristics are proposed to coordinate the arrival and departure of ships and plan lockage operations for each lock. Unnecessary ship waiting times at lock entrances could be reduced by adjusting their sailing times and speeds on the waterway, which when implemented leads to shorter passing times through all locks.The simulation results show that the proposed approach could be beneficial for both ships and locks. For the ships, they can spend 28% less time waiting at the locks and leave the last lock 9% earlier with the optimized ship arrivals. For the locks, 10% less lockage operations and 13% less time are required to handle the same number of ships with the optimized lockage plans. This means that the proposed approach could reduce the congestion at locks and thereby improve the utilization of inland waterway transport. It is noted that, in practice, the exact reduce waiting times can be different as taller and wider inland ships exist and the machinery failure may affect the actual schedules. With more real data of locks and the arrival ships, the proposed method can be further validated.Further research can be extended in several directions. First, for practical implementations, an information platform for exchanging information between ships and locks is required, and decision support software also needs to be developed and installed to send and receive messages to/from the platform. Second, the model can be extended to inland waterway network which involves more locks, bridges, and other waterway elements.



---

*Source: 6220559-2021-09-22.xml*