This paper introduces an automatic track keeping algorithm consisted of two systems, which are a waypoints switching system and a rudder control system. Fuzzy inference based on human manipulation experiences is applied to the both system to realize the actual ship operation. In the waypoints switching system, a course change angle is reflected as input data to find out optimal point at where rudder is used. The obtained optimal point allows the ship to follow a route accurately without overshoots such as cross track error and heading error. Heading error, cross track error and difference between current yaw rate and desired yaw rate are considered to control rudder appropriately. The desired yaw rate is derived using the heading error and the cross track error, and suitable rudder angle is inferred by comparing current yaw rate with the desired yaw rate. Numerical simulations were carried out to verify the effectiveness of the proposed algorithm. Instead of evaluating the algorithm under virtual environment with geometrical route and assumed external disturbance, scenarios for simulations were created by utilizing route plans used in actual operations. Actual conditions of wind and current at sea were applied to prove capability in the real world situation. It was observed by the simulation results that a ship traveled on a pre-planned path defined in a route plan and overshoots hardly occurred. It can be said that the algorithm has sufficient performance for ship track keeping.
Research on automatic track keeping which is the one field of automatic navigation has been contributed to achieve a safe navigation. By assisting operators of ships to make correct decision and reducing their workload, it is expected that marine accidents due to human error can be prevented. In general, ship operators devise a route plan arranging several waypoints established by taking the depth of the sea and geographical features into account before departing for their destination. Since the pre-planned track which is considered as the safest and the most effective way to reach the destination, the ship should follow the given route precisely. The ship usually travels on the straight line specified by two waypoints under the influence of external disturbances such as wind and current at sea. A rudder is constantly used in order to respond to external forces caused by the disturbances. The external forces cause the ship to deviate from the course to be followed and a cross track error, that is the distance from the ship’s present position to the closest point upon the course line, occurs. Therefore, a lot of studies have been conducted in order to decrease the cross track error and line-of-sight (LOS) guidance algorithm has been widely applied [1–4]. The LOS guidance algorithm creates LOS set points, which are two intersection points between a circle with certain radius around a ship and a straight track defined by two waypoints. The ship moves toward the LOS set points and the points are continuously calculated for renewal every time step.
When a ship changes her course near a waypoint to enter a new straight line from a straight line that was being traced, a rudder should be manipulated at a proper point. Otherwise, overshoots such as cross track errors and heading errors occur because the ship deviates from a desired track. There are studies on the point or the timing to use a rudder in order to veer direction [5, 6]. It seems that these studies cannot be applied to all types of ships because specific types of ships were only considered in these studies. Operators of ships usually try to employ a small rudder angle less than 10° as the maximum because a large steering angle may lead to accidents by generating large rolling motion. From these points of view, the authors [7] designed rudder control system that enables ships to use practical rudder angle. However, fluctuation of a rudder angle was observed even though a small rudder angle was used as the maximum rudder angle.
In this paper, the authors developed automatic track keeping algorithm that made more stable rudder action possible. The algorithm is composed of two components such as a waypoints switching system and a rudder control system. Fuzzy inference based on the knowledge and experience of ship operators is applied to the both systems. In the waypoints switching system, a point which enables small overshoot is found out according to a course change angle. The rudder control system is motivated by a previous study by Kijima and Furukawa [8]. By considering the cross track error as well as the heading error with a yaw rate, additional computations to assign LOS set points are not required.
Numerical simulations were carried out to verify the capability of the proposed system in realistic environmental conditions. Most of past researches on the track keeping system simulated virtual voyage situations. Namely, ships traveled on a geometrical track defined by waypoints under arbitrary external disturbances assumed to have constant direction and velocity over the entire simulated area. Simulations performed under the assumed situations are expected to have limitations in the evaluation of the effectiveness of the developed system. Hence, the authors utilized a route plan used in an actual voyage as simulation scenarios. Irregular environmental conditions were substantiated by using wind and current data which changed in real-time along with ship’s position. The simulation results show that the ship uses rudder angles less than 10° and moves upon the desired path at sea. Cross track errors and heading errors, which indicate whether the track keeping system works well or not, hardly occurred.
Three degrees of freedom motion such as surge, sway and yaw is universally applicable to represent ship dynamic motion in a horizontal plane. The ship motion can be demonstrated using coordinate systems shown in Figure 1. o – x_{0}y_{0} is an earth-fixed coordinate system and G – xy is a body-fixed coordinate system with the center of gravity of a ship as the origin. ψ donates the present heading angle of the ship. In this research, environmental disturbances of current and wind are considered. Then the influence of the disturbances appears as directions and speeds of them. α and ν mean the incident angles of current and wind. V_{C} and V_{W} are defined as the speeds of current and wind respectively. The non-dimensional equations of ship motion are expressed as
where the superscript “′” signifies non-dimensional parameter and m, m_{x}, m_{y} are the mess and x- and y-axes components of the added mass of a ship. I_{ZZ} and i_{ZZ} indicate the moment and the added moment of inertia of a ship. U, β and r are ship speed, drift angle and yaw rate respectively. L and d represent ship length and draft. The right-hand terms of
Here, subscript “H”, “P”, “R” and “W” intend hull, propeller, rudder and wind. The effect of current was calculated containing within force acting on the hull. The lateral force and moment by a propeller were omitted because their effect was very small. Hydrodynamic forces
A ship generally follows a desired path consisting of several straight lines defined by a combination of two waypoints. When the ship tries to enter a new path, overshoots such as heading errors and cross track errors are often occurred if a rudder is not manipulated at proper point. In addition, the ship can easily deviate from the desired path being traced due to the influence of external forces. To overcome the aforementioned problems, track keeping algorithm, as shown in Figure 2, was designed by the authors as the combination of a waypoint switching system and a rudder control system. The waypoint switching system helps to find a suitable point to use a rudder, and the rudder control system allows the ship to follow the desired track. The both systems were developed applying fuzzy inference that is known to be effective for dealing with nonlinear problem such as a ship control by implementing human ability [11, 12].
The waypoints switching system automatically determines a target waypoint by comparing the positions of all pre-set waypoints in the route plan with the ship’s current position. Process of changing a target waypoint is illustrated in Figure 3. from-waypoint is the last passed waypoint and to-waypoint means the target waypoint where the ship should approach. next-waypoint is the waypoint following the to-waypoint [13]. If the ship enters into the circle of acceptance area, a target waypoint is switched from to-waypoint to next-waypoint. Length R, that is the radius of the circle of acceptance, is a factor which defines the position at where a rudder will be used in an effort to modify the course angle. The value R is deduced depending on course change angle θ by fuzzy inference suggested in Table 1 and Figure 3. Table 1 signifies the fuzzy rules which represent relationship between antecedent and consequent parts. The linguistic label is specified by the following definitions: NB=negative big, NS=negative small, ZO=near zero, PS=positive small, and PB=positive big. Figure 4 indicates membership functions. θ fed in the waypoints switching system, as shown in Figure 2, is the antecedent part. Non-dimensional radius R′ (= R/L) intends the consequent part. Namely, each different value of R′ which is regarded as a point to execute a rudder is derived depending on θ. Membership function for θ was determined based on the experience of operators. It is uncommon to set more than 45° in θ except for the geographical reasons that the ship should veer direction significantly to enter a port. Hence, θ is established to be less than 45° in normal voyage and does not exceed 90° as the maximum angle. The value of θ is assigned in the range from −90° to 90°. In case of R′, turning motion of a ship is taken into account since the ship turns in the vicinity of a waypoint to let her heading correspond with given θ as shown in Figure 3. As initial turning ability, International Maritime Organization (IMO) standards [14] stipulates that ships should not have traveled more than 2.5 ship lengths by the time heading angles have changed by 10° with the application of 10° rudder angle. The length can be considered as the maximum distance when the ship travels under the condition. Thus, the authors regarded the distance as enough length to modify a course angle using rudder angle less than 10° deemed as a practical angle. R′ belongs in the range between 0 and 2.5. On the other hand, the above-mentioned LOS guidance algorithm uses constant value for R which is 1–2 ship length [15]. The constant value makes a ship to execute a rudder at the same stage regardless of environmental conditions and inherent manoeuvring characteristics. From the mentioned points, large overshoots might be taken place because a change of course might be conducted at too early or too late stage. In comparison with LOS guidance algorithm, the large θ causes long R that enables to steer at late timing for turning in this system. It is expected that less overshoots are occurred since a rudder is operated at proper point.
The rudder control system places the priority on minimizing a heading error ψ_{e} (= ψ – ψ_{e}) and a cross track error d_{e} in order to follow a desired straight line between from-waypoint and to-waypoint as shown in Figure 5. In the figure, (x_{1}, y_{1}) and (x_{2}, y_{2}) indicate the positions of from-waypoint and to-waypoint, respectively. The black triangle in Figure 5 represents the shape of a ship and (x_{t}, y_{t}) indicates her present position. d_{e} is calculated from
ψ_{d} indicates a desired heading angle and ψ_{to} donates a bearing a difference between ψ_{leg} and ψ_{d}. To decrease the errors ψ_{e} and d_{e}, the rudder control system exploited not only the both errors but also the yaw rate as input data. However, consideration of the three parameters in the antecedent part puts some strain on the fuzzy control system and is likely to cause a delay in response. Hence, the rudder control system was divided into two phases. First phase is calculator of desired yaw rate and second phase is rudder angle controller as shown in Figure 2. The desired yaw rate
The KVLCC2 is adopted to carry out numerical simulations to verify the effectiveness of the track keeping algorithm. The principal particulars of the model ship are shown in Table 4. The dimensions of the superstructure were presumed by information of the conventional design of the tankers. Ships are generally affected by external disturbance such as wind and current during the voyage. In order to reproduce the realistic navigation situation, a route plan made by operators and actual disturbance data in the Ise Bay, Nagoya, Japan were applied to set simulation scenarios. The position data of the waypoints are named as P1, P2, P3 and P4 as presented in Table 5 and the desired track consisted of these four waypoints is shown in Figure 8. However, port domain is not included in the scenarios because following the track at the inside of ports should be the function of auto berthing systems. The simulation scenarios cover situations that a ship enters to or departs from the port at two kinds of speed: normal speed 10 knots and high speed 15 knots. In other words, totally four scenarios are able to be summed up as shown in Table 6. Departure situation means that the ship heads to P4 from P1 and the ship moves to the opposite direction at arrival situation, namely from P4 to P1.
Environment data related to wind and current on the specific date (August 7, 2017) was acquired from the National Oceanic Earth and Atmospheric Administration (NOAA) [16] and Japan Meteorological Agency. Raw data of wind were measured every three hours and current data were estimated every 15 minutes. To create more detailed conditions of external disturbances, the obtained data were interpolated based on time, latitude and longitude, respectively. As a result, more detailed and closely spaced data of V_{C}, V_{W}, α and ≠ were generated and the model ship can be affected by the disturbances in real-time depending on her position. Figures 8 and 9 demonstrate the views of the initial distribution of wind and current, respectively. The black line connected with four diamond-shaped waypoints is defined as the desired track, and the blue arrow bars indicate speed vectors of wind and current. The ship applied to the simulations is assumed to start her navigation at 21 o’clock on August 7, 2017. Table 7 shows the initial conditions of external disturbance that the ship receives at that moment. The external disturbances in the departure situation have smaller effect comparing with those in the arrival situation at the beginning of the simulations.
Simulations were carried out under the realistic environmental conditions as described above and they were updated in realtime. A ship starts navigation at the first waypoint and stops at the moment when she reaches the last waypoint. During the voyage, the target waypoint is switched twice near P2 and P3 waypoints and course change angles around the waypoints are θ = 26.46° and θ = 26.97°, respectively. The simulation results of the Scenario 1 in which the ship departs from the port at 10 knots are demonstrated in Figure 10. The shapes of the ship are drawn every 5 minutes on the trajectory shown in Figure 10(a). Figure 10(b) and 10(c) present the time histories of rudder angle and heading angle, respectively. It can be observed in Figure 10(b) that the rudder angle is adjusted to change the direction of the ship before she reaches the positions of P2 and P3. Thereafter, the ship used the rudder in the opposite direction in an attempt to suppress the moment of inertia that makes her to pass through the next course line. All rudder angles manipulated until reaching the final waypoint were less than 10°. The ship started her navigation with the initial heading angle ψ = 180° and the heading angle is shifted to 153.54° and 126.57° which are equal to course angle around P2 and P3 waypoints. Figure 10(d) and 10(e) show external environmental conditions of current and wind varied according to the time and the ship’s position. The blue line presents incident angles α and ν and the black line express the speed of current and wind V_{C} and V_{W}. V_{C} changed in the range between 0.05 m/s and 0.31 m/s. On the other hand, V_{W} and α gradually increased as time goes by. The overshoots ψ_{e} and
Figure 11 shows simulation results for the Scenario 2 for the arrival situation. The ship traveled on the same route with normal speed 10 knots as same as the previous scenario. However, navigation time of this scenario is shorter than that of the departure situation because of the gradual declining effect of external disturbances as shown in Figure 11(d) and 11(e). During the voyage, employed rudder angles to follow the given track were less than 10° as seen in Figure 11(b). According to Figure 11(g), the maximum overshoots were observed as |ψ_{e}| = 4.46° and
Simulations displayed in Figures 12 and 13 were carried out at speed 15 knots which is faster than that in the aforementioned two simulations. In case that the ship executed a rudder to change her direction, the value of yaw rate became higher as her speed became faster. As shown in Figure 12(b), a larger rudder angle was manipulated to the opposite direction to suppress increased yaw rate as same as the Scenario 1 for the departure situation. The magnitude of errors observed in the Scenario 3 are |ψ_{e}| = 6.78° and
In conclusion, the ship followed in the close proximity of the pre-planned track using realistic rudder angle in the all simulations. The actual error value
In this paper, the authors proposed the automatic track keeping algorithm consisted of two systems: waypoint switching system and rudder control system. The both systems were developed using fuzzy inference reflecting the knowledge and experience of ship operators. The contributions from this research can be summarized as three issues. First, the waypoint switching system was designed to find out the optimal point to manipulate the rudder according to course change angle. It enables the ship to enter into a line defined by two waypoints with hardly occurring overshoots. Second, the rudder control system taking not only a heading error and yaw rate but also a cross track error into account so as to make a ship to follow the desired track coping with external disturbances. Third, numerical simulations were carried out using four scenarios. Through the results of the simulations, the effectiveness of the proposed algorithm was verified by the fact that the ship can closely follow the desired track under realistic environmental conditions. In addition, used rudder angle during simulations did not exceed the practical rudder angle 10° determined by the experience of operators.
This work was supported by the Japan Society for the Promotion of Science (JSPS) KAKENHI grant (No. JP18H01642).
Coordinate systems.
Block diagram of track keeping algorithm.
Process of switching waypoints.
Membership functions for the waypoint switching algorithm of fuzzy inference: (a) antecedent part and (b) consequent part.
Related parameters for relationship between a ship and waypoints.
Membership functions for the calculator of desired yaw rate fuzzy inference: (a) antecedent part and (b) consequent part.
Membership functions for the rudder angle controller of fuzzy inference: (a) antecedent part and (b) consequent part.
Initial distribution of current speed and direction.
Initial distribution of wind speed and direction.
Simulation results for the Scenario 1: (a) ship trajectory, (b) time history of rudder angle, (c) time history of heading angle, (d) time history of speed and direction for current, (e) time history of speed and direction for wind, (f) time history of drift angle and non-dimensional yaw rate, and (g) time history of heading error and non-dimensional cross track error.
Simulation results for the Scenario 2: (a) ship trajectory, (b) time history of rudder angle, (c) time history of heading angle, (d) time history of speed and direction for current, (e) time history of speed and direction for wind, (f) time history of drift angle and non-dimensional yaw rate, and (g) time history of heading error and non-dimensional cross track error.
Simulation results for the Scenario 3: (a) ship trajectory, (b) time history of rudder angle, (c) time history of heading angle, (d) time history of speed and direction for current, (e) time history of speed and direction for wind, (f) time history of drift angle and non-dimensional yaw rate, and (g) time history of heading error and non-dimensional cross track error.
Simulation results for the Scenario 4: (a) ship trajectory, (b) time history of rudder angle, (c) time history of heading angle, (d) time history of speed and direction for current, (e) time history of speed and direction for wind, (f) time history of drift angle and non-dimensional yaw rate, and (g) time history of heading error and non-dimensional cross track error.
Rules for the waypoints switching algorithm of fuzzy inference
NB:PB | ZO | NS:PS |
PB | ZO | PS |
Rules for the calculator of desired yaw rate of fuzzy inference
NB | NS | ZO | PS | PB | |
---|---|---|---|---|---|
NB | PB | PB | PS | ZO | NB |
NS | PB | PS | ZO | ZO | NB |
ZO | PB | PS | ZO | NS | NB |
PS | PB | ZO | ZO | NS | NB |
PB | PB | ZO | NS | NB | NB |
Rules for the rudder angle controller of fuzzy inference
Δ | ||
---|---|---|
N | ZO | P |
N | ZO | P |
Principal particulars of model ship
Ship type | Tanker |
---|---|
320.0 | |
58.0 | |
20.8 | |
9.86 | |
273.3 | |
0.8098 |
Waypoint position data for simulations
Waypoints | Latitude | Longitude |
---|---|---|
P1 | 34.93 | 136.76 |
P2 | 37.80 | 136.76 |
P3 | 34.97 | 136.84 |
P4 | 34.59 | 136.97 |
Definition of scenarios
Scenario | Situation | Speed (knots) |
---|---|---|
1 | Departure | 10 |
2 | Arrival | 10 |
3 | Departure | 15 |
4 | Arrival | 15 |
Definition of initial condition for simulations
Scenario | Wind | Current | ||
---|---|---|---|---|
1 | 1.58 | 0.71 | 0.11 | −169.0 |
2 | 9.03 | 4.07 | 0.44 | 178.4 |
3 | 1.58 | 0.71 | 0.11 | −169.0 |
4 | 9.03 | 4.07 | 0.44 | 178.4 |
Email: choe@source.nams.kyushu-u.ac.jp
Email: furukawa@nams.kyushu-u.ac.jp