search for


Development of Automatic Ship Berthing System Using Artificial Neural Network and Distance Measurement System
Int. J. Fuzzy Log. Intell. Syst. 2018;18(1):41-49
Published online March 25, 2018
© 2018 Korean Institute of Intelligent Systems.

Van-Suong Nguyen1, Van-Cuong Do1;2, and Nam-Kyun Im3

1Faculty of Navigation, Vietnam Maritime University, Hai Phong, Vietnam, 2Key Laboratory of Marine Simulation & Control for Ministry of Communications, Dalian Maritime University, Dalian, China, 3Department of Navigation Science, Mokpo National Maritime University, Mokpo, Korea
Correspondence to: Nam-Kyun Im (
Received January 31, 2018; Revised March 12, 2018; Accepted March 19, 2018.
This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License ( which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.

In the studies on an berthing control of ship, an artificial neural network (ANN) model is commonly employed as the main controller to control the rudder and the propeller. The existing ANN controllers that use the parameters consisting of the ship position and the ship heading as inputs cannot be applied to control automatically the ship into berth in different ports. To deal with this problem, the parameters, such as relative bearing and distance from ship to berth calculated by radar can be used as inputs for the controller. However, the calculation of these factors is not accurate because some errors arise on using radar for berthing process. This leads to the lack of confidence in ship berthing system using the parameters determined by radar. In this research, the neural network based-automatic berthing system is developed for ship by using the parameters which are measured by distance measurement system. By this proposed system, the ship is brought automatically into berth in different ports without retraining the neural network. In addition, this system guarantees that the parameters used for inputs of the neural network is measured exactly and continually. To validate the proposed algorithm, numerical simulations are carried out to two imaginary ports and a real port, and result showed the good performance of the proposed system for automatic ship berthing.

Keywords : Artificial neural network (ANN), Automatic ship berthing, Distance measurement system, Real ports, Numerical simulations
1. Introduction

An automatic ship berthing is considered as one of most difficult problems in ship control field. Due to the complex characteristic of ship motion at low speed, the automatic ship berthing demands an excellent controller to control the rudder and the propeller appropriately. To achieve that purpose, many control theories such as feedback, linearization, fuzzy logic, expert system and neural network have been investigated for ship berthing system. The first research on artificial neural network (ANN) for automatic ship berthing was proposed by authors in [1] but this approach was then changed into expert system. After that, the use of neural network for automatic ship berthing has been continued by [2], where the authors suggested two parallel controllers instead of applying a centralized controller. The result obtained from this berthing system is excellent.

Later on, [3] proposed selective controllers for several zones in port, where separate ANN controllers bring the ship from one zone to another.

Meanwhile, [4] proposed two ANN controllers using an adaptive interaction technique and prefixed track of ship berthing to control ship heading and ship speed simultaneously. [5] recently proposed the auxiliary devices to assist the ship berthing such as the thruster in ship’s bow and the tugboat. In this research, the thruster and the tugboat were considered into the ANN controllers as novel outputs. This controller performs two tasks: the ship is controlled to first goal zone by the rudder and the propeller like previous controllers, after then ship is pushed to final goal zone by thruster and tugboat.

As a continuation of research on automatic ship berthing using neural network, a virtual window was introduced by [6] to create the consistent data for the neural network-training process, and the ANN controller was validated for ship berthing with no disturbance. In the case of strong wind, after the process of course changing was completed by the ANN controller, a PD controller was being employed to keep ship in imaginary line. On the other hand, [7] developed the adaptive back-stepping controller for crabbing motion of ship berthing under wind, this system only can be applied in narrow zone where the ship is near pier of the berth, the essential forces need to be controlled to bring a ship in lateral direction.

In [8], the authors showed that existing ANN controllers could only control the ship into berth in a certain port. On arriving at new ports, either these controllers must be retrained by new teaching data or the ship has to install different controllers for ports, respectively. This leads to time-consuming, expensive costs and complicated computation in the berthing system. By introducing the head-up coordinate system which includes relative bearing and distance from ship to berth, an ANN controller was proposed to control ship into the berth in different ports without retraining the ANN structure.

The use of head-up coordinate system with new inputs for the ANN controller has brought the novel approach to automatic ship berthing without retraining the controller. However, the measurement of the parameters in head-up coordinate system for inputs of berthing system commonly contains large errors because of using radar. When the ship is near to wharf and berth, the detecting wave of radar to target onshore is reflexed echoes, such as multiple echoes, side-lobe echoes, and indirect echoes. Therefore, the determining of relative bearing and distance from ship to berth by radar will contains the large errors, and this make the unreliable for ship berthing system.

In this research, the neural network based-automatic berthing system is developed for ship by using the parameters which are measured by distance measurement system. This proposed system can control the ship into berth in different ports without retraining the neural network structure. In addition, this system guarantees that the parameters used for inputs of the neural network is measured exactly and continually by distance measurement system. To verify the proposed system, numerical simulations are performed in imaginary and real ports to show the performance of berthing system.

This paper is organized as follows: the ship dynamic model is represented in Section 2. The proposed ANN controller using parameters of north-up coordinate system is described in Section 3. Simulation results of the proposed system are shown in Section 4.

2. Ship Dynamic Model for Ship Berthing

Ship motions are defined in the six degrees of freedom, consisting of two kinds of motion: linear motions (heave, sway, surge), and the rotation motions (pitch, roll, yaw). In ship maneuvering problems, only motions of the surge, sway and yaw are investigated to represent the dynamic relationship of the ship on the surge, sway, and yawing axes in the Cartesian coordinate system as Figure 1.

In this research, the Maneuvering Modeling Group (MMG) model is applied to express the ship motion during the ship berthing process, in which the hydrodynamic forces and moments acting on the ship were divided into modular components such as the hull, rudder, and propeller. According to MMG model, the maneuvering equation of the ship is expressed in the following form:


where u, v, and r are the ship’s velocity in surge, sway, and yaw direction. XH, YH, and NH represent the hydrodynamic forces and moments acting on the ship hull. They are expressed and described by Kijima et al. [9], detail as in Eq. (2):

XH=ρ2LdU2(Xβrsin β+Xuucos2βrLU),YH=ρ2LdU2(Yββ+YrrLU+Yββββ+YrrrLUrLU+Yββrβ2rLU+Yβrrβ(rLU)2),NH=ρ2L2dU2(Nββ+NrrLU+Nββββ+NrrrLU|rLU|+Nββrβ2rLU+Nβrrβ(rLU)2),

where Xβr,Xuu,,Nββr, and Nβrr are hydrodynamic coefficients that are predicted with the method described by Kijima et al. [9].

The propeller component is expressed in terms of the longitudinal force of the propeller as follows:


The hydrodynamic forces and moments generated by the rudder are shown as follows:

XR=-(1-tR)FNsin δ,YR=-(1+aH)FNcos δ,NR=-(xR+aHxH)FNcos δ,


FN=ρ2fα(Λ)ARUR2sin αR.

In this study, the training ship named SAE NURI of Mokpo National Maritime University was adopted as the model ship whose parameters were used to predict the hydrodynamic coefficients. The ship’s principle particular is shown in Table 1.

3. The Current Automatic Berthing System for Ship Using ANN

3.1 The Overview of Ship Berthing System Using ANN

In this part, the principle of ship berthing system using ANN is briefly shown and illustrated as in Figure 2.

Firstly, the ship maneuvering is done by manual to create teaching data for training the neural network. The teaching data is time series of ship’s sates which are recorded during the ship maneuvering process. The ship’s states can be used, such as the ship coordinates, ship heading, distance and relative bearing from ship to berth, distances to imaginary line and berth, the ship velocities, the rudder angle, and propeller revolution.

Secondly, the time series called as teaching data are used to train the neural network. The training process will complete until the network’s outputs follow up the desired outputs with minimum errors. After training the neural network, the trained neural network is used as main controller for ship berthing system.

Thirdly, in automation stage, when the ship has her states to be similar to those in teaching data, the trained neural network controller will bring the ship into the berth automatically.

3.2 The View of Previous Researches

In previous researches, the eight factors consisting of the ship velocities (u1, v1, r1), the ship heading (Ψ1), distance to imaginary line (d1), remaining distance to berth (d2) and the geographical coordinates of the ship in the port area (η1, ξ1) were used as the inputs in the teaching data while the rudder angle and the propeller revolution were the outputs. In theory, the replication ability of neural network to work is not good when the initial values of inputs of the network are absolutely different from those used in the teaching data. Because the ship position (η1, ξ1) in the original port are always different from those (η2, ξ2) in other ports, these ANN controllers have no ability to apply to other ports, where the initial values of the inputs are different from those in the teaching data. This is shown in Figure 3. To use them to other ports, the retraining process by new teaching data must be done for these controllers. This causes time-consumption and costly for system.

4. Development of Automatic Ship Berthing System Using ANN and Distance Measurement System

4.1 Distance Measurement System

In order to deal with the limitation of radar when finding the distance and relative bearing, there are two systems as follows.

The first system was described by [10] where a distance measurement system includes stereo camera and radial pattern. To find out the distance from ship to berth and distance from ship to one target on wharf line, two cameras will be controlled to capture the target on same point in their lens. The use of this system is useful when the ship is near wharf and berth.

The second one was proposed by [11], where the distance from ship to target is measured by laser wave. By using this system, it is easy to find the distance from the ship to small target. In both of these systems, the determination of angle is carried out by the digital compass.

4.2 The Proposal of This Research

In this study, the automatic berthing system of ship is established by two steps. First step, the ship is maneuvered in original port from the departure place into berth point by ship’s captain, this overall process is recorded to create the teaching data. The parameters of ship, such as the distance from ship to berth D1, distance from ship to one target on wharf line H1, the angle θ1, and ship velocities (u1, v1, r1) are used as inputs while the rudder angle δord and propeller speed rps are outputs. Second one, the neural controller is trained by teaching data with inputs and outputs. In other ports, if the ship is placed at departure point where initial parameters of ship as (D2, H2, θ2, u2, v2, r2) are similar to ones (D1, H1, θ1, u1, v1, r1) in the teaching data, then the ship will be brought into the berth automatically by proposed berthing system, as illustrated in Figure 4.

4.3 The ANN Controller in Automatic Ship Berthing System Using Distance Measurement System

Because of the complexity of ship berthing system, it is essential to choose a neural network having ability to model globally the relation between inputs and outputs. For that purpose, multilayer perception (MLP) is employed to learn the teaching data which has six inputs [D1, H1, θ1, u1, v1, r] and two outputs [δord, rps]. The structure of the MLP neural network for the controller is illustrated in Figure 5.

For training the controller, the most popular technique as back-propagation is utilized. The training process of network is seen as successful when the respond of the network is similar to the outputs in the teaching data. With loss general, m, n, and p are respectively the nodes in layers of the network, the teaching data includes i samples as follows: {q1, o1}, {q2, o2},. . . {qi, oi}, where qi, oi are the inputs and the output of the samples. The output of hidden layer Hn at n-th node is calculated as follows:


where Im = [D1, H1, θ1, u1, v1, r1]T is inputs vector of teaching data, f1 is the active function at a hidden layer. Wnm and bn are the weights connected input layer to hidden one and the bias of the hidden layer (Hn). At the hidden layer, Tansig function is chosen as active function, the formula of this function is expressed as following form:

f1(netn)=21+exp (-2netn)-1.

Similarly, at the output layer of network, the output is expressed as in Eq. (8).


where f2 and Op are the active function at the output layer and the output of network. Wpn and bp are the weights connected hidden layer to output one and the bias of the output layer (Op). Satlins function is chosen to use for active function in output layer, the formula of this function is shown as follows:

f2(netp)={-1,if (netp)-1,netp,if -1(netp)+1,+1,if (netp)+1.

The goal of the network training is expressed by this function:


In order to minimize the function E, the Levenberg-Marquardt algorithm is performed. The result of weights and bias are shown as follows:


where W, J and I are respectively the weights of the neural network, Jacobian matrix, and the identity matrix.

The outputs of network [δord(t+1), rps(t+1)]T obtained after training was derived as follows:

5. Numerical Simulation for Validation

5.1 Teaching Data Creation and Training the Neural Network in Original Port

The berthing maneuver of ship is seen as successful when the ship is brought into near berth and stops at the final point within 0.2 m/s of speed and 250°–270° deg of the true heading angle. The berthing maneuver is performed as three steps. First step, when the ship’s acceleration is large enough for ship under the rudder, the ship’s course is altered to the optimal berth-approach direction. Second step, the speed of ship is reduced. Final one, the main engine is stopped. In this research, MATLAB is used as tool to simulate for ship berthing. Six samples were created in teaching data, as expressed in Figure 6.

For simulation, the initial values of the ship in the original port as (η1/L, ξ1/L, Ψ1, u1, v1, r1, rps, δord), where L is the perpendicular length of the ship. To train the controller, the states, consisting of (D/L, H/L, θ, u1, v1, r1, rps, δord) are saved and use later. The data of the ship was created in the original port as follows: (8, 6, 250, 1.5, 0, 0, 0.75, 0), (8, 6, 210, 1.5, 0, 0, 0.75, 0), (8, 4, 220, 1.5, 0, 0, 0.75, 0), (8, 4, 250, 1.5, 0, 0, 0.75, 0), (8, 2, 240, 1.5, 0, 0, 0.75, 0), and (8, 2, 270, 1.5, 0, 0, 0.75, 0).

The node number of the layers in the neural controller was respectively chosen as 6, 21, 2, and the training process is carried out until the respond of neural is similar to the outputs of teaching data as in Figure 7.

When disturbance is considered for ship berthing, the teaching data needs to be reconstructed by a new berth maneuvering process, where the environmental conditions such as wind, current and wave are included. This work has been done by previous studies as in [2, 6]. Therefore, this research only carry out the ship berthing system based on distance measurement system without considering the disturbances.

5.2 The Validation for Ship Berthing System in Original Port

Firstly, all simulations were investigated for one imaginary port where the initial states of ship are same as those in teaching data. As shown in Figure 8, the ship is controlled automatically into berth and stops near the wharf. In particular, it can be found that the stopping ability of ship is good within 0.2 m/s in speed in all cases. Furthermore, the heading angles of ship were within 250°–270° degree range.

In Figure 8, the initial states of ship at departure time are same as one in teaching data. The results show that the automatic berthing system of ship has good performance.

5.3 Application to Real Port (Western Part of Busan Harbor)

After applying to automatic ship berthing for imaginary ports, the proposed controller is validated for a real port. In this research, Western Port of Busan Harbor is selected to simulate for automatic berthing. Two terminals applied have the name of No.4 Wharf and No.6 Wharf.

To realize this simulation, the geographical coordinates of Busan port are normalized into non-dimensional form as follows:

xo=LatitudeL,         yo=LongitudeL,

where xo,yo are respectively non-dimension values of latitude and longitude. The range of latitude is 35°2′N to 35°5′56″N, the longitude is 128°58′E to 129°2′36″E.

The simulations are first carried out for No.4 Wharf in which the initial conditions for inputs are same as those in teaching data. However, the ship position and ship heading at starting time in this wharf are different with teaching data. The results of 4 cases are shown as Figure 10.

In the first case, the initial condition of ship is (35.3214, 40.7391, 135.6955, 1.5, 0, 0, 0, 0.75), by using neural controller, the rudder angle first is turned into port side up to 10°, after then this angle is changed to starboard side up to 10° to decrease the yaw rate. Anymore, the revolution speed is reduced appropriately.

In the second one, the ship with initial conditions (35.3214, 40.7391, 95.6955, 1.5, 0, 0, 0, 0.75), the controller turn rudder into starboard and revolution speed is also decreased to bring ship into berth safely. Similarly, for other cases, the actions of rudder and revolution are carried out appropriately to obtain the successful results on automatic ship berthing control in this wharf.

Similarly, the simulations also are carried out to control ship into berth in No.6 Wharf. The simulation results presented as Figure 11 show that the proposed controller has good ability to bring ship into berth in this wharf. In this area, the initial conditions of ship are also different with one in No.4 Wharf as well as teaching data. However, the rudder and revolution speed are calculated suitably.

6. Conclusions

In this investigation, a novel automatic system for ship berthing is proposed. This research can be summarized as follows:

  1. Distance measurement system was proposed to construct the novel automatic system for ship berthing. By using this system, distances from the ship to berth were determined continuously and accuracy for ship berthing. In addition, this system can be integrated for unmanned ship in further researches.

  2. The novel neural controller was also proposed for automatic ship berthing system based on the parameters measured by distance measurement system. This controller was trained once in original port. After then, this controller can be used to control ship in different ports without retraining the neural network. This system overcomes the drawbacks of the ship berthing system in previous studies.

  3. Simulations were carried out in one imaginary port and two terminals of real port. The results showed the performances of the proposed system.

In this research, the validation is performed in numerical simulations. In the future, this research will be carried out in scale real ship.


This research was a part of the project titled “Development of Ship-handling and Passenger Evacuation Support System,” funded by the Ministry of Oceans and Fisheries, Korea.

Conflict of Interest

No potential conflict of interest relevant to this article was reported.

Fig. 1.

Coordinate system for ship dynamic motion.

Fig. 2.

The principle of ship berthing system using neural network.

Fig. 3.

The application of north-up coordinate system for ship berthing using ANN.

Fig. 4.

The proposal of factors in north-up coordinate system for ship berthing using ANN.

Fig. 5.

The structure of the MLP neural network in controller.

Fig. 6.

The teaching data in original port.

Fig. 7.

The result of neural network training in original port.

Fig. 8.

The result of ship berthing simulation in original port.

Fig. 9.

Area of Busan Port for automatic ship berthing simulation.

Fig. 10.

The result of ship berthing simulation in No.4. Wharf.

Fig. 11.

The result of ship berthing simulation in No.6 Wharf.


Table 1

Principle particular of the ship

TypeTraining ship
Length overall (m)103
Length between perpendicular (m)94
Breadth (m)15.6
Draft (m)5.4
Thruster (bow) (N)49,000
Transverse projected area (m2)183.3
Lateral projected area (m2)1,053.7

  1. Yamato, H 1990. Automatic berthing by the neural controller., Proceedings of the 9th Ship Control Systems Symposium, Bethesda, MD, pp.3183-3201.
  2. Im, NK, and Hasegawa, K (2001). A study on automatic ship berthing using parallel neural controller. Journal of Kansai Society of Naval Architects of Japan. 236, 65-70.
  3. Im, NK, Lee, SK, and Hyung, DB (2007). An application of ANN to automatic ship berthing using selective controller. International Journal on Marine Navigation and Safety of Sea Transportation. 1, 101-105.
  4. Nguyen, PH, and Jung, YC 2007. Automatic berthing control of ship using adaptive neural network., Proceedings of the International Symposium on Electrical & Electronics Engineering, Ho Chi Minh City, Vietnam.
  5. Tran, VL, and Im, NK (2012). A study on automatic berthing with assistance of auxiliary devices. International Journal of Naval Architect and Ocean Engineering. 4, 199-210.
  6. Ahmed, YA, and Hasegawa, K (2013). Automatic ship berthing using artificial neural network trained by consistent teaching data using non-linear programming method. Journal of Engineering Applications of Artificial Intelligence. 26, 2287-2304.
  7. Park, JY, and Kim, N (2014). Design of an adaptive backstepping controller for auto-berthing a cruise ship under wind loads. International Journal of Naval Architecture and Ocean Engineering. 6, 347-360.
  8. Im, NK, Nguyen, NV, and VS, (2017). Artificial neural network controller for automatic ship berthing using head-up coordinate system. International Journal of Naval Architecture and Ocean Engineering. 11.
  9. Kijima, K, Katsuno, T, Nakiri, Y, and Furukawa, Y (1990). On the maneuvering performance of a ship with the parameter of loading condition. Journal of the Society of Naval Architects of Japan. 168, 141-148.
  10. Mizuchi, Y, Ogura, T, Hagiwara, Y, Suzuki, A, Kim, Y, and Choi, Y (2013). Distance measurement system using a stereo camera and radial pattern target for automatic berthing control. Journal of the Korean Society for Power System Engineering. 17, 121-127.
  11. Im, N, Kim, EK, Han, SH, Jeong, JS, and Lee, SM (2013). The development of ship watch keeping supporting aids. International Journal on Marine Navigation and safety of Sea Transportation. 7, 501-506.

Van-Suong Nguyen received his M.Sc. in Navigation Science in 2012 from Vietnam Maritime University and his Ph.D. in Maritime Safety System in 2016 from Mokpo National Maritime University, Korea. Since 2010, he has worked as lecturer in Vietnam Maritime University. He interests in follows: marine navigation, ship control and automation, maritime traffic, ocean engineering.


Van-Cuong Do received the M.Sc. in Vietnam Maritime University in 2014 and he is a Ph.D candidate in Dalian Maritime University from 2016. Since 2011, he has worked as lecturer in Vietnam Maritime University. His research interests include navigation science and technology, virtual reality, visual simulation.


Nam-Kyun Im received his M.Sc. in Navigation Science in 1992 from Korea Maritime University and his Ph.D. in Naval Architecture and Ocean Engineering in 2002 from Osaka University, Japan. After that, he worked at Ship and Ocean Research Center of Samsung Heavy Industry around 3 years. He is currently professor in Mokpo National Maritime University. His research fields are as follows: ship automatic control study, ship maneuvering simulation and its applications, marine traffic simulation, ship free running model and marine/ship environmental issues.