Keywords

1 Introduction

The Port of Singapore is one of the busiest transshipment ports in the world due to its geographical location, efficiency, and excellent connectivity. With substantial increases in marine traffic, the Port of Singapore is facing traffic congestion and potential risk of traffic incidents/accidents. Two major collision accidents were reported in the port waters of Singapore in 2009 and 2010, which caused severe damage to humans, assets, and the environment. In particular, the collision accident in May 2010 resulted in a serious crude oil slick near the east coast of Singapore.

The causes of traffic incident/accident come down to a central issue: traffic conflict. Conflict refers to the situation of near misses between two moving vessels, which occurs frequently in seaports due to the special characteristics of port traffic as follows:

  1. (1)

    Narrow fairways. Fairways are navigable waterways or channels which are open only to vessels with certain draught. Because of the limitations in geographical condition (e.g., width, depth, etc.), vessels cannot travel freely in fairways. Conflicts are prone to occur in a narrow fairway, where evasive maneuvers are limited due to insufficient space.

  2. (2)

    High traffic density. Compared to the open sea, available space within a seaport is limited, but a larger number of vessels move in the traffic network. Port waters often have higher traffic density, especially during the peak period. This poses great potential risk of vessel conflicts.

  3. (3)

    Complex traffic regulations. Port authorities establish a series of complex regulations for controlling and managing traffic. For example, according to geographical conditions, fairways are specified as one-way lane or two-way lane; vessels are assigned different priorities in operations either to give way or stand-by. Complex regulations need to be taken into consideration for a vessel to take corrective maneuvers in order to avoid conflict.

Compared with collisions, conflicts do not involve physical contact but relate to the situation of near misses. However, a conflict can also be considered the same as a collision to some extent. The risks resulting from collisions or conflicts only differ in their degree of severity in regards to navigational safety. Conflicts are general incidents, while collisions are dangerous accidents. Collisions present a kind of extreme cases in traffic conflicts (Debnath and Chin 2010; Weng et al. 2012). When a conflict cannot be properly resolved, it would lead to a collision accident which could cause a loss of life and property, and may even threaten the ocean environment.

Besides safety concerns, the most common result of a conflict is time delay which results from evasive maneuvers of vessels to avoid a collision with targets. As mentioned, the sea space of a busy seaport is finely meshed and intensively used due to increased marine traffic. Within a heavily loaded traffic network, even a small interaction may have a large impact on the entire network. Frequent delays in vessel operations would increase vessel-waiting time and the length of waiting queue, slow down the speed of vessel traffic in the network, and may finally result in traffic congestion.

We can see that a conflict is an undesirable event between vessels related to safety concerns as well as congestion and delay which affects the efficiency of port operations. Vessel conflict is a critical issue in marine traffic safety, and of great practical significance in traffic congestion management. For vessel encounters in the sea, taking evasive turns and/or speed adjustment is the most direct way to avoid a conflict. However, the effectiveness of evasive maneuvers depends on whether the risk of a possible conflict could be predicted accurately and timely. To enable effective conflict resolution, we should be able to predict potential conflicts and take corrective measures in advance.

Little research is done in the literature on conflict determination. Thus, we would review relevant studies in collision determination as an alternative to conflict. Two popular criteria are used in past studies for determining a collision risk: the closest point of approach (CPA) and ship domain.

The CPA criterion is applied with two parameters: distance of closest point of approach (DCPA) and time of closest point of approach (TCPA). The two CPA parameters indicate the collision risk between two vessels. The smaller values the higher risk of collisions. The CPA parameters are usually applied in a collision avoidance system to guide the vessel for proper anticollision maneuvers. The speed and/or course maneuver can be calculated according to the minimal DCPA and TCPA (Lenart 1999, 2000).

In restricted waters, such as narrow fairways, the CPA criterion is not applicable. Instead, ship domain has been proposed as a more comprehensive and accurate criterion. Ship domain can be explained as “a water area around a vessel which is needed to ensure the safety of navigation and to avoid collision” (Zhao et al. 1993). The first ship domain model for a narrow channel was proposed by Fujii and Tanaka (1971) based on the field observations. Later, Goodwin (1975) developed a domain model for open sea.

Ship domains proposed by various studies differ from one to another (Davis et al. 1980; Coldwell 1983; Zhu et al. 2001; Pietrzykowski 2008). Typically, the shape and size of a vessel domain depend on a number of factors (vessel’s speed and length, sea area, traffic density etc.). In a port traffic system, vessels traveling along fairways are required to keep various safety clearances in accordance with the port’s regulation. The domain of a vessel can thereby be referred to as the clearance area. We have implemented a simulation system to predict conflicts using the criterion of vessel domain. Before two vessels actually encounter, if the relative movement of one vessel’s domain interferes with another vessel’s domain, a potential conflict is predicted.

Previous study provides an algorithm for conflict detection through estimation of relative position between vessel domains (Li and Fan 2012). With this algorithm, we can detect a conflict likely occurs one-link-ahead current vessel position. As will be pointed out in the Sect. 2 the previous method assumes that the vessel will make a sharp turn at each node. But actually, a vessel will make a smooth turning at each node. Moreover, detecting only one-link-ahead is insufficient, particularly if the link is short. Therefore, this chapter proposes a new algorithm for extension of one-link-ahead prediction into multi-link-ahead prediction. With multi-link-ahead prediction, a possible conflict can be predicted more links ahead. The required number of links ahead is designed as a parameter in the simulation system. Such prediction ensures that the navigator has sufficient time to take actions before the predicted conflict occurs.

Simulation is an approach to model a real-life system on a computer so as to study how the system works. Simulation has good efficiency in integrating complex systems, such as the port traffic system concerned in this research; and good performance in computer animation, e.g., to mimic dynamic vessel movements and complex traffic scenarios. In addition, simulation is a useful adjunct or an effective alternative to mathematical methods. A review of past studies revealed that traditional mathematical methods are quite complicated when used to estimate conflict risk (Zhu 2003). It is more feasible to develop a simulation model where data required can be substituted by parameters thus be simplified as basic input. This research proposes to develop a simulation system, called “Marine Traffic Conflict Simulation System”, through which the function of conflict prediction will be implemented.

2 Simulation System Overview

2.1 Representation of a Seaport Traffic System

A seaport traffic system is a network of nodes and links. Within the network, each link indicates a fairway section, and a node can be

  1. (1)

    a berthing/anchorage area,

  2. (2)

    a boarding point for port pilots,

  3. (3)

    an intersection area of fairways, or

  4. (4)

    a separation point dividing a fairway into two sections due to differences in widths and/or traffic regulations.

Figure 1 shows an example of the Port of Singapore we use in the simulation model. The circular dots with different gray values represent different types of nodes: green dots refer to boarding points; blue dots refer to anchorage areas; red dots refer to berthing areas; and black dots refer to separation points and intersections of fairways. A rectangle connecting two nodes indicates a link. The width of a rectangle indicates the width of the link. Vessels are specified to travel along the link. Each vessel is visualized as a rectangle with a red arrow indicating the traveling direction.

Fig. 1
figure 1

A seaport traffic system for the port of Singapore

2.2 Notations for a Vessel and its Domain

A vessel is denoted as \( V\left( {{\text{O}},d,\Upphi ,\Uppsi ,\bar{\Upphi },\bar{\Uppsi }^{1} ,\bar{\Uppsi }^{2} } \right) \). A vessel is simplified as a rectangle V centering at O (x, y) with dimensions \( \Upphi \) (width), \( \Uppsi \) (length), and d (traveling direction). The clearance area of a vessel is defined as a zone to keep enough distance to avoid conflicts with other vessels. The clearance area varies according to a vessel’s outline, dimension, sailing speed, technical parameters and fairway characteristics. In our simulation system, the vessel’s clearance area is a rectangle R. The lateral clearance is \( \bar{\Upphi } \). The longitudinal clearance is given by \( \bar{\Uppsi }^{1} \) in the direction of the bow and \( \bar{\Uppsi }^{2} \) in the direction of the stern. These parameters \( \left( {\bar{\Upphi },\bar{\Uppsi }^{1} ,\bar{\Uppsi }^{2} } \right) \) are set up as input data. Figure 2 shows a vessel with its domain.

Fig. 2
figure 2

A vessel and its domain

2.3 Vessel Path Calculation

The simulation system requires the vessel path to be assigned so as to control vessels in which their positions can be tracked. This path refers to vessel trajectories based on basic maneuvers (except of particular actions, e.g., evasive turn for conflict avoidance). One path is a combination of trajectories in straight links and trajectories passing nodes.

It is supposed that a vessel keeps a straight line course in a link. Its trajectory is along the center line of traffic lane. As shown in Fig. 3a, red lines indicate vessel trajectories in a two-way lane link.

Fig. 3
figure 3

Vessel trajectories (a) vessel trajectories in a link and (b) vessel trajectories when passing a cross

A vessel needs to make a turn to cross through an intersection or a junction of links. The vessel should keep a continuous and smooth moving during its crossing process. Constant radius turn technique is commonly used in marine navigation and piloting, for it enables a steady turn with less drift angle and less speed loss (Aarsaether and Moan 2007).

We proposed a method to determine vessel crossing trajectory based on constant radius turn maneuver. As is shown in Fig. 3b, a vessel is traveling along a link c 1 and moving toward to a link c 2. Regardless of the reflection time of rudder, vessel trajectory is a circle arc whose radius is determined by parameters of bend speed and rate of turn (ROT). The arc is tangent to both c 1 and c 2. The required circle arc is determined as long as the turning points p 1 and p 2 are obtained.

Suppose that the angle between the two links is α (degree). Bend speed and ROT are given as vessel parameters. We have the following equations,

$$ \begin{aligned} \beta &=180 - \alpha , \\ t & = {\beta /r}, \\ L & = 60\nu t,\\ R & = \left| {op_{1} } \right| = \left| {op_{2} } \right| ={360L} / 2\pi \beta, \\ D & = \left| {p_{1} p} \right| =\left| {p_{2} p} \right| = R.\tan \left( {\beta /2}\right). \end{aligned} $$
(1)

where

\( \beta \): angle of the vessel needs to turn (degree),

\( t \): time for the vessel makes the crossing,

\( L \): length of the required arc,

\( \nu \): bend speed,

\( R \): radius of the required arc,

\( o \): the center of the required arc,

\( p \): intersection point of c 1 and c 2,

\( p_{1} \): turning point where the vessel starts turning,

\( p_{2} \): turning point where the vessel ends turning, and

\( D \): distance between p 1 to p (or p to p 2).

Sometimes a vessel needs to turn twice in order to cross through two parallel links. A similar method is used for determining vessel crossing trajectory. As shown in Fig. 4a, a vessel will cross through two parallel links c 1 and c 2. The vessel will make two turns during its crossing. Its trajectory is an S-shaped curve which is composed by two circle arcs, denoted as A 1 and A 2. It is supposed that p 1, p 2, and p 0 are turning points, which means that the vessel will make the first turn at p 1 to p 0, and then will make the second turn at p 0 to p 2. The turning points satisfy the following conditions:

  1. (1)

    A 1 is tangent to c 1 at point p 1,

  2. (2)

    A 2 is tangent to c 2 at point p 2, and

  3. (3)

    A 1 is tangent to A 2 at point p 0 .

Fig. 4
figure 4

Vessel crossing trajectory in two parallel links (a) A vessel will cross through links c1 and c2, and (b) its trajectory is an S-shaped curve

To calculate the turning points, we assume that,

  1. (1)

    The distance between c 1 and c 2 is d.

  2. (2)

    The crossing trajectory is an S-shaped curve whose center is p 0 (Fig. 4 b). The angle of the vessel makes for each turn is β. Radius of each turn is R, which can be calculated with Eq. (1).

  3. (3)

    q 1, q 2 are two points on c 1, c 2, which satisfy that line \( \overline{{q_{1} p_{0} q_{2} }} \) is tangent to both A 1 and A 2 (Fig. 4 b).

Then we have the following equation,

$$ \left| {p_{0} q_{1} } \right| = {d \mathord{\left/ {\vphantom {d {\left( {2\,\tan \beta } \right) = R \cdot \,\tan \left( {{\beta \mathord{\left/ {\vphantom {\beta 2}} \right. \kern-0pt} 2}} \right)}}} \right. \kern-0pt} {\left( {2\,\tan \beta } \right) = R \cdot \,\tan \left( {{\beta \mathord{\left/ {\vphantom {\beta 2}} \right. \kern-0pt} 2}} \right)}} $$
(2)

Thus,

$$ \beta = 2\,\arcsin \sqrt {{d \mathord{\left/ {\vphantom {d {\left( {4R} \right)}}} \right. \kern-0pt} {\left( {4R} \right)}}} $$
(3)

Since \( L = \left| {p_{0} q_{1} } \right| \), we have the following equation,

$$ L = \left| {p_{1} q_{1} } \right| = \left| {p_{0} q_{1} } \right| = \left| {p_{0} q_{2} } \right| = \left| {p_{2} q_{2} } \right| = R \cdot \,\tan \left( {{\beta \mathord{\left/ {\vphantom {\beta 2}} \right. \kern-0pt} 2}} \right) $$
(4)

The turning points of p 1, p 0, and p 2 can be calculated with Eqs. (3, 4). The vessel’s crossing trajectory is hereby determined.

In most cases, c 1 and c 2 are not so far apart that a vessel would turn for a small angle at each turn, i.e., β is less than 90o. It means

$$ \beta = \arcsin \sqrt {{d \mathord{\left/ {\vphantom {d {\left( {4R} \right)}}} \right. \kern-0pt} {\left( {4R} \right)}}} < {\pi \mathord{\left/ {\vphantom {\pi 4}} \right. \kern-0pt} 4} \Rightarrow \sqrt {{d \mathord{\left/ {\vphantom {d {\left( {4R} \right)}}} \right. \kern-0pt} {\left( {4R} \right)}}} < \sqrt {{2 \mathord{\left/ {\vphantom {2 2}} \right. \kern-0pt} 2}} \Rightarrow d < 2R. $$

When c 1 and c 2 are so far apart, i.e., \( d\; \ge \;2R \), a vessel cannot cross through the two links even it turns for 90o. In this case, the vessel has to keep a straight path between the two turns. An example is shown in Fig. 5. The vessel’s crossing trajectory is consisted of three parts: two circle arcs (i.e. A 1 and A 2) and a straight line \( \left( {\overline{{r_{1} r_{2} }} } \right) \). We have the following equations,

Fig. 5
figure 5

Vessel crossing trajectory in a case of D > 2R

$$ \begin{gathered} \beta = {\pi \mathord{\left/ {\vphantom {\pi 4}} \right. \kern-0pt} 4}, \hfill \\ \left| {p_{1} o_{1} } \right| = \left| {o_{1} r_{1} } \right| = \left| {r_{2} o_{2} } \right| = \left| {o_{2} p_{2} } \right| = R. \hfill \\ \end{gathered} $$
(5)

where

p 1, r 1, p 2, and r 2: turning points

O 1, O 2: the centers of A 1 and arc A 2.

With Eq. (5), we can calculate p 1, r 1, p 2, and r 2. The vessel’s crossing trajectory is thus determined (Fig. 5).

The path for a vessel consists of line segments and circular arcs, which are connected end-to-end. In this chapter, for the purpose of conflict prediction, each arc is approximated using a polygon by sampling points on the arc every 30o. As a result, the path for a vessel on each link is a polygon. Each edge on the polygon is a section on the link, named sub-link. This is different from the previous work (Li and Fan 2012), where the path on each link is a single line segment. Consequence, the one-link-ahead prediction algorithm cannot work anymore.

2.4 System Design

This study aims to develop a simulation system, called “Marine Traffic Conflict Simulation System”, which can run on advanced microcomputers or graphic workstations. Algorithm for conflict prediction outlined in Sect. 3 will be implemented through the simulation system. Design of the simulation system shall take the following considerations into account:

  1. (1)

    It should be applicable in a variety of water areas;

  2. (2)

    Complicated conflict scenarios (e.g., multivessel conflict) can be investigated;

  3. (3)

    The process of simulation is displayed with dynamic graphics;

  4. (4)

    A user interface which allows people to interact with simulation;

  5. (5)

    Real-time data transmission and communication;

  6. (6)

    Good compatibility and expansibility with other platforms;

Based on the above considerations, two operation modes may be provided in this simulation system: offline simulation and online simulation. Offline simulation is used to test and debug algorithms, as well as for planning and analysis; while online simulation is a platform used for real-time decision-making in real traffic situations. Offline simulation can be developed by individuals under laboratory environment. This makes implementation relatively easy. Compared to offline simulation, the implementation of online simulation depends on external cooperation for requirements of more hardware and real-time data.

3 Conflict Prediction

With given information on vessel characteristics, paths, and schedules, vessel movements within the traffic network can be displayed in a simulation system. Given a pair of vessels moving within the traffic network, we need to predict whether a potential conflict will occur between them at certain links ahead current vessel positions. The number of links ahead can be specified in the simulation system.

The prediction is performed at current time and estimate the conflict possibility until the meeting time of the two vessels. The time period for conflict prediction is divided into several time intervals. Conflict prediction is to evaluate the relative movement of the domain of one vessel with respect to the domain of another vessel during each time interval. Figure 6 is the flowcharts for conflict prediction.

Fig. 6
figure 6

Two flowcharts for conflict prediction a predict a potential conflict for any pair of vessels, and b divide the given time period for conflict prediction into small time intervals

As shown in Fig. 7, there are three vessels V 1, V 2, and V 3 whose paths are represented by arrow lines. Potential conflicts may occur in each pair. Paths of V 1 and V 2 intersect at point A which is located near a node. A conflict is likely to occur when the two vessels cross through the node area. Likewise, the paths of V 2 and V 3 intersect at a point B in a link. In this case, the two vessels travel along a same link after point B, and may conflict in the link. Our method used to predict a conflict at a node or in a link is basically same. The only difference is that link width should be taken into account to predict a conflict in a link. If the width of a link is sufficient such that two vessels can travel in parallel, a conflict will not occur between them.

Fig. 7
figure 7

Potential conflicts in traffic network

An example is used to describe the algorithm design for multi-link-ahead conflict prediction. In Fig. 8, suppose that conflict prediction is required to execute for n links (equivalently m sub-links) from current vessel positions onward. The first step of conflict prediction is to estimate whether a pair of vessels will encounter on those m sub-links. The intersection of two vessels’ paths, e.g., point A and B in Fig. 7, are defined as the meeting point. According to the flowchart in Fig. 6a, if the meeting point exists between two vessels, the main steps for predicting a potential conflict are as follows:

Fig. 8
figure 8

Paths of two vessels

Step 1::

obtain necessary vessel information, including arrival times at sub-links and speeds in each sub-link

Step 2::

determine a set of time intervals such that in each interval, vessel speed keeps constant

Step 3::

predict a conflict in each time interval.

Table 1 lists the necessary navigation information for V 1 and V 2 from their current positions until n more links forward. As shown in Table 1 and Fig. 8, the time when V 1 enters the ith sub-link is \( \bar{t}_{1,i} \) and V 1 maintains a constant speed on the ith sub-link as \( \bar{v}_{1,i} . \) Similar navigation information can be calculated for V 2.

Table 1 Information of two vessels

The information in Table 1 is collected in the time intervals \( \left( {0,\bar{t}_{1,m} } \right) \) and \( \left( {0,\bar{t}_{2,m} } \right) \) for V 1 and V 2, respectively. In Step 2, to predict conflicts during \( \left( {0, \, \hbox{min} \left\{ {\bar{t}_{1,m} ,\,\bar{t}_{2,m} } \right\}} \right) \), we divide the entire time period into a set of time intervals as (t l , t l+1), such that the speeds of V 1 and V 2 are constant as v 1,l and v 2,l in each interval, respectively. With the information in Table 1, the flowchart in Fig. 6b gives an approach to obtain all the time intervals. From the first time interval to the last time interval, Step 3 will check whether or not the two vessels conflict. Once a conflict is predicted in a certain time interval, the algorithm will save the conflict without checking the remaining time intervals.

In a time interval (t l , t l+1), we propose to predict the conflict using the relative movement of V 1 to V 2, which is the movement of the domain of V 1 with respect to the domain of V 2. Suppose

  • \( w_{1} = \nu_{1,l} - \nu_{2,l} \): the velocity of V 1 with respect to V 2,

  • \( Q_{i,l} = \left( {q_{i,l}^{1} ,q_{i,l}^{2} ,q_{i,l}^{3} ,q_{i,l}^{4} } \right) \): the domain of the vessel V i at t = t l ,

  • \( q_{i,l}^{k} \): the kth corner of the domain \( Q_{i,l} \),

  • \( p_{i,l}^{k + 1} \,\,p_{l,l}^{k} \): the kth edge of the domain \( Q_{i,l} \).

As shown in Fig. 9, the relative movement of the corner q k 1, l to V 2 is a line segment p k 1, l q k 1, l where

Fig. 9
figure 9

Predicting the conflict in the time interval (t l , t l+1): a \( P_{l}^{k} \cap Q_{2,l} = \varnothing \), V 1 and V 2 will not conflict with each other, and b \( P_{l}^{2} \cap Q_{2,l} \neq \varnothing ,P_{l}^{3} \cap Q_{2,l} \neq \varnothing \), V 1 and V 2 will conflict with each other

$$ p_{1,l}^{k} = q_{1,l}^{k} + \left( {t_{l + 1} - t_{1} } \right)w_{l}. $$

The relative movement of q k i q k + 1 i to V 2 is a parallelogram p k l = q k 1 , l q k+1 1 , l p k+1 1 , l q k l . If V 1 and V 2 conflict with each other, the movement of at least one edge of V 1 will intersect with the domain of V 2, i.e., \( P_{l}^{k} \, \cdot \,\,Q_{2,1} \, \cdot \,\varnothing \). In summary, V 1 and V 2 will conflict in the time interval (t l , t l+1) if and only if the follow formula holds

$$\cup \left( {P_{l}^{k} \cap Q_{2,1} } \right)\neq \varnothing .$$

In this way, the conflict prediction is equivalent to check whether a parallelogram and a rectangle intersect or not. The example in Fig. 9a shows no conflict between V 1 and V 2 in the time interval (t l , t l+1) due to that \( \cup \left( {P_{l}^{k} \cap Q_{2,1} } \right) = \varnothing \). However, from Fig. 9b, we have

$$ P_{l}^{1} \cap Q_{2,l} = \varnothing,P_{l}^{2} \cap Q_{2,l} \cap \varnothing ,P_{l}^{3} \cap Q_{2,l} \cap\varnothing ,P_{l}^{4} \cap Q_{2,l} = \varnothing.$$

Therefore, there is a conflict between V 1 and V 2. In implementation, the algorithm starts from the first parallelogram P 1 l to the forth parallelogram P 4  l to check the intersection \( P_{l}^{k} \, \cdot \,\,Q_{2,l} \). If one parallelogram intersects Q 2,l , a conflict is predicted and it is not needed to examine the remaining parallelograms.

4 Examples and Discussions

The algorithm of conflict prediction is implemented in our simulation system developed using Visual C++. Figure 10 gives a simple example for predicting a potential conflict between two vessels traveling toward to a node. Figure 10a–c shows changes of vessel movements from when they are far apart until they encounter. It is clear that a conflict occurs when they are crossing through a node (Fig. 10c). Correspondingly, the relative movements of vessel domains are shown in Fig. 10d–f. The relative movements are represented by the parallelograms enclosed by solid lines. In this example, two-link-ahead prediction is used, and time period for conflict prediction is divided into three intervals. The conflict is accurately predicted at the third time interval in Fig. 10d. Likewise, it is predicted at the second time interval in Fig. 10e.

Fig. 10
figure 10

Predicting the conflict at different locations ac vessels at different locations, and df the relative movements at different locations

An example of conflict prediction for multiple vessels is shown in Fig. 11, which contains 12 vessels. Four conflicts are predicted and listed in Table 2, which also includes the result for n-links-ahead conflict prediction. With n = 2, in the worst case, the conflict prediction can predict the forth conflict 48 s in advance. It may not be enough for navigators to take safe actions to avoid the conflict. The problem can be solved by increasing the value for n. The conflict can be predicted 258 s in advance by increasing n to 3, and 294 s in advance by increasing n to 4.

Fig. 11
figure 11

An example of 12 vessels within the network (at current stage, there are only nine vessels; the number 18 indicates LINK18; the number 25 and 30 indicate NODE25 and NODE30)

Table 2 Statistics for conflict prediction

5 Conclusions

A new conflict prediction algorithm has been proposed and implemented. The algorithm is designed to predict the potential conflict by checking the relative movement between two moving vessels. The algorithm simplifies the conflict prediction problem as an estimation of whether a parallelogram intersects with a rectangle conflicts in fairways, junctions and intersections would be predicted long time before the encounter of vessels. It enables that operators have enough time to take actions to avoid the conflict. Simulation results show that the algorithm is efficient. The logic of conflict prediction is applicable to other traffic systems by changing the input data. The simulation model is a generic model which can be adapted to other busy seaports that are faced with traffic congestion and delays. One future work is to improve the compatibility of the simulation system, so that it can be adopted in more complicated scenarios.