Keywords

1 Introduction

This paper presents the results of an investigation into the development of an algorithm capable of predicting ship motion in various sea states to support deployment and recovery of UAVs and other vehicles operated off their decks. After the command is given, the algorithm provides important future ship motion information automatically to the UAV to determine the best moment for launch or recovery. This information will also facilitate the computation of the correct UAV flight path and help identify dangerous or problematic situations that could potentially cause damage to the ship or UAV.

Ship motion in an open water environment is the result of complex hydrodynamic forces acting between the ship, the water and other random processes. This leads to the use of statistical prediction methods rather than a deterministic analysis, which would result in a ship-specific model that involves highly complex calculations and many assumptions and approximations [1].

Past research in ship motion prediction [25] has shown that traditional statistical prediction techniques such as autoregressive moving average models and Kalman filters are unable to maintain a high degree of accuracy when the prediction interval exceeds 3−4 s in sea states of 5 and above. Traditional statistical techniques used for time series prediction have difficulty dealing with noisy data, do not have much parallelism and fail to adapt to changing circumstances.

This paper explores the use of Artificial Neural Networks (ANN) which is a form of artificial intelligence used to develop algorithms capable of predicting ship motion. Artificial neural networks, in contrast to traditional statistical techniques, promise to produce predictions with high accuracy, as well as high efficiency, due to their ability to learn and adapt to prevailing conditions.

The ability to predict ship motion reliably, in any sea state, will enable more intelligent automated air vehicles operations off ship platforms. Landing and take-off of helicopters and aircraft, manned or unmanned, from ship decks, in rough sea conditions, can be difficult and dangerous. If ship motion can be predicted ahead with reasonable accuracy and communicated to the vehicle, touchdown dispersion can be improved on landing, and a smoother aircraft trajectory can be achieved on take-off. The benefits of reducing the touchdown dispersions is that, the time to failure of the aircraft frames and the number of aborted landing attempts can be increased.

Prediction of ship motion is important for the safe deployment for any vehicle, such as missiles, UAVs and decoys from ship platforms, such as shown in Fig. 1, for correct timing and initializing trajectory calculations [5].

Fig. 1
figure 1

Ship-launch of decoys and UAVs

In some cases, there is a launch “lock-out” condition where the missile, or remote piloted vehicle, cannot be launched safely if, for example, the ship’s roll angle exceeds a predefined operational limit, as there is a delay between launch commit and actual launch. The algorithm developed in this investigation can determine if the air vehicle is in the launch “lock-out” condition by predicting ship motion by at least 7 s ahead. In this investigation the operational limit is when the ship’s roll angle exceeds a certain magnitude. It is important that the predicted angles are of a high accuracy as the batteries for the system are “one shot” batteries, which means that the process of deployment, once activated, cannot be reversed.

2 Artificial Neural Networks

Artificial Neural Networks (ANN) form a class of systems that are inspired by biological neural networks [6]. An ANN is simply a series of neurons that are interconnected to create a network. They are a class of non-linear systems and there are a wide variety of different approaches that can be used. The use of ANN is particularly appealing due to its ability to learn and adapt. This is important for our investigation as one of the underlying goals is to create an algorithm that is able to work in all conditions and environments. The ANN architecture that was used to create network for time series prediction was a multi-layer feed-forward ANN.

To validate the ANN, a data set of measured data was divided into two. One part of the data set was designated for training purposes and the second part was designated as the validation data set. Once trained, the validation data set was put in the ANN and the resulting predictions based on the validation set were used to measure the effectiveness of the ANN. The basic model for time series prediction is shown in Fig. 2.

Fig. 2
figure 2

Basic model for time series prediction using ANN

In Fig. 2 it can be seen that there are seven points. Lag 0 represents the current sample while the past six values are represented by lags 1−6. In this investigation lags of up to 30 were used as inputs into the ANN. The output of the ANN is the prediction. It can be noticed that there is only one output shown. For every lead prediction interval, it is advisable to use a single ANN. If multiple predictions are required, then for every prediction interval a separate ANN should be used as the weights for an optimal prediction will vary according to the prediction interval desired. By having the ANN create multiple predictions, the overall optimal prediction cannot be made. When separate ANNs create separate predictions, the optimal weight configuration can be obtained for each prediction and therefore, higher accuracy can be expected.

2.1 Training the Artificial Neural Network

Training of the ANN can be viewed as a minimization process where the weights in the ANN are systematically adjusted in a manner that reduces the error between the output of the ANN and the desired output. Therefore, the process of ANN training becomes an optimization problem. Performance of the ANN will be dependent upon the quality of the solution found after the training process has been completed. The advantage of using ANN for ship motion prediction is that it is neither ship specific nor condition specific. In addition, training the ANN can be done on a conditions and autonomous basis as new ship motion data is measured and input to the ANN for training. This way the ANN can adapt to changing conditions. In the following sections three techniques are discussed that were used to determine ANN weights.

2.2 Genetic Algorithm (GA)

The genetic algorithm (GA) is a part of a rapidly growing area of artificial intelligence called evolutionary computing. The term ‘evolutionary computing’ is based on Darwin’s theory of evolution, which states that problems are solved by an evolutionary process resulting in a best solution. It is basically survival of the fittest where the ‘fittest’ (best) ‘survivor’ (solution) evolves to create the next population. Solution to a problem solved by the GA uses an evolutionary process based on the principles of genetics and natural selection [7].

The algorithm begins with a population of solutions. Solutions from one population are taken and used to form a new generation of solutions or the next population of solutions. The expectation is that the new population will be better than the old one. Solutions or individuals are then selected to form new solutions or ‘offspring’ according to their fitness. The fitness is a positive value that is used to reflect the degree of ‘goodness’ of the solution and is directly related to the objective value, which is minimization of the mean square error of the difference between the output of the ANN and the target value in this investigation [8].

There are a number of advantages in using a genetic algorithm. Firstly, it does not require any derivative information, as required by the back-propagation method commonly used for training ANN. It simultaneously searches from a wide sampling of the cost surface which is helpful for finding the general location of the global minimum quickly. The GA can be implemented on parallel computers which will allow the solution to be found more rapidly than if it were implemented on a single processor which is an important consideration for real time prediction as required for this project. Also, as it provides a list of optimum variables and not just a single solution, if the global minimum is difficult to locate a good alternative solution can be returned.

2.3 Singular Value Decomposition (SVD)

The aim of this investigation is to develop a methodology to predict ship motion in real time. Singular Value Decomposition (SVD) is a linear regression technique that can quickly obtain an approximate set of optimum weights which is far superior to randomly generated weights [9]. The values returned from SVD can be used as the initial starting points for a selection of the population for the GA algorithm, discussed previously. They can, sometimes, be of such a high standard that this method can be used alone. A detailed description of the SVD technique is beyond the scope of this paper but essentially it can be expressed by matrix X which satisfies the function:

$$ A.X = B $$
(1)

When A and B are known and can be calculated efficiently using SVD. When applying it to the ANN process the weights between the input layer and the hidden layer are initially randomly generated. The training samples are then inserted into the ANN and the hidden layer activation functions are calculated creating a matrix equivalent to A. Also, the values for the inverse transfer function of the output are also calculated creating a matrix equivalent to B. Applying SVD and solving Eq. 1, the approximate optimal weights X are found.

2.4 Conjugate Gradient Method (CG)

The conjugate gradient (CG) algorithm created for ANN used in this investigation was based on the Polak-Ribiere algorithm. The mathematical justifications for the algorithm and a detailed description can be found in [10]. In a general sense, the algorithm generates a sequence of vectors and search directions. The exact minimum will be attained if the multi-dimensional function can be expressed as a quadratic. The ANN error function is quadratic close to the minimum so convergence to the local minimum will be very rapidly [11].

In this investigation the CG method was used as a means of improving the solutions returned by the singular value decomposition methods. The CG method can be used independently of the other techniques however there are distinct advantages in using the CG method jointly with the other training techniques. The CG method was used in conjunction with the SVD method because the SVD returns only linear optimal weights. The results of the SVD method are inserted into the CG algorithm as the initial starting point for its search which can potentially yield values for the weights that are far superior to the solutions developed by the CG method when a randomly generated initial starting point is used.

3 Experimental Design

In this section an investigation is presented into the application of ANN for the prediction of actual ship motion and to assess the levels of accuracy that can be attained when using the ANN to predict a ship’s roll motion up to 7 s. The ANN algorithms developed were applied to measure ship roll angle data taken from a cruiser size vessel operating in sea states 5−6 based upon the Pierson-Moskowitz Sea Spectrum. The term sea state is a description of the properties of sea surface waves at a given time and place [12]. Greater the sea state indicate rougher conditions. There were four databases of roll angle data, each 562 s in length, sampled at 2 Hz. The training data was set to two thirds of the data sets and the validation set was designated as the final third of the data sets. All results shown are the predictions made using the validation set only.

In order to increase the likelihood of obtaining predictions of higher accuracy the data was preprocessed using two separate preprocessing schemes. The first preprocessing scheme, which will be referred to as PP1, was chosen to remove the trends and seasonality by taking the difference between consecutive points and subtracting the mean. Due to the nature of the ANN being sensitive to subtle variations, it may overemphasize the trends and seasonality at the expense of focusing on more important characteristics in the data. The ANN may focus too much on the obvious trends at the expense of extracting the more subtle variations. Therefore, all trends that can be eliminated and easily brought back after the predictions are made should be purged before being entered into the ANN.

The difference performed by PP1 eradicates constant trends and any seasonal trends with a large period if present. The drawback when taking a difference of the data is that low frequency information that may be important to the network may be lost as the differencing is a potent high-pass filter. The ANN is actually capable of dealing with the trends and seasonality but it may be better for the ANN to focus on its main objective which is to predict the future values and not be hampered by being made to find trends and seasonality. The second preprocessing scheme is to simply subtract the mean from the data before it is entered into the ANN and will be referred as PP2. The results of the investigation are shown in Table 1. All results were generated on a Pentium 4, 2.8 GHz processor. To assess the performance of the ANN three performance criteria were defined:

Table 1 Results of ANN simulation
  • Criterion 1 is the percentage of predictions accurate within the 95 % confidence interval. The success criterion for this investigation was to develop an algorithm that can predict when a predefined angle is exceeded.

  • Criterion 2 is the percentage forecasts that correctly predicted that the roll angle would exceed 7°.

  • Criterion 3 is the percentage of forecasts that incorrectly predicted the lock-out conditions.

The number of neurons in the input layer (NNIL) was varied from 5 to 30 and the number of neurons in the hidden layer (NNHL) was varied from 2 to 5. The output layer consisted of only 1 neuron in all cases. Results shown in Table 1 are the best predictions of 7 s in advanced generated from these ANN architectures for each of the four databases labeled 1 to 4 in Table 1. First, the singular value decomposition method was used to generate 30 solutions for the weights. The remainder of the population was randomly generated. The genetic algorithm was then used to find a solution. Also, the best weights returned from the SVD training algorithm were also inserted into the CG algorithm as the initial starting point for the CG search.

4 Discussion of Results

Based on our findings, ANN is capable of predicting ship motion in real time. Against performance criteria 1, 2 and 3 the ANN was able to predict ship motion to an approximate accuracy level of 64 %, 74 % and 5.34 % respectively.

Figures 3 and 4 show that the predictions basically mirror the actual recorded motion of the validation set which is separate and distinct from the data set of data used to train the ANN. The highest accuracy was obtained using the SVD/CG trained ANN which took on average 60 s to train. Considering that the validation set is approximately 170 s in length, at least 110 s of the validation set was genuinely predicted in real time. Therefore, there is reasonable evidence that the ANN is capable of producing predictions in the real time. There are two noticeable ANN characteristics that can be observed in Table 1. The first important characteristic is that for all four databases the ANN performed better based upon performance criteria 1 and 3 when PP2 was used rather than PP1. This implies that a higher percentage of predictions were within the 95 % confidence interval and there was a lower percentage inaccurate lock-out predictions. The other evident characteristic is that the ANN which accepted the data preprocessed using PP1 outperformed the ANN using PP2 based on performance criterion 2.

Fig. 3
figure 3

NNIL = 10 and NHIL = 3 (ANN used PP2 and was trained using SVD/CG)

Fig. 4
figure 4

NNIL = 25 and HHIL = 5 (ANN used PP1 and was trained using SVD/CG)

Figures 3 and 4 show the 7 s predictions made by an ANN using PP2 and PP1 respectively and give an understanding for these two characteristics highlighted in the above discussion. Figure 3 shows that the ANN trained using PP2 is able to produce very high quality predictions. Motion is represented well despite rapid influxes in the amplitudes of the roll motion. The only problem with the predictions, however, is that they are conservative in nature and tend to understate the true amplitude of the motion. This explains why the resulting performance levels were high with regards to criteria 1 and 3 but not against criteria 2.

Figure 4 shows the prediction of the ANN using PP1 and shows that the ANN tends to overstate the roll motion amplitudes. This explains why the ANN using PP1 is able to outperform the ANN using PP2 based on performance criteria 2. The problem associated with the predictions generated by the ANN using PP1 is that, because the predictions are overstated, they will be predisposed to yield more false lock-outs. This is confirmed in Table 1 which shows that the predictions generated by the ANN using PP1 had a higher percentage of lock-out conditions accurately predicted and also a higher percentage of lock-out conditions incorrectly predicted.

Table 1 also shows that the combination of the SVD and CG (SVD/CG) training methods is superior to that of the SVD method alone and the combined SVD and GA algorithms (SVD/GA) based upon nearly all three performance criteria. This seems to be counterintuitive as the GA algorithm is designed for global minimization searches whereas the SVD/CG method usually only finds local minimums. The explanation of this phenomenon lies in the nature of the GA algorithm. The GA algorithm is good at finding the general location of the global minimum but is slow to find an exact solution. The number of generations used by the GA algorithm was cropped to reduce computational time. This means that the solution may only have been close to optimal. The CG method however is designed to rapidly progress to the nearest minimum and only terminates when no further improvements could be generated. As shows, the average CPU time used by the SVD/GA solution was approximately 190 s whereas the validation set was only 170 s in length which means that the predictions generated would not be useful. If more processor power was available, one of two approaches could be used to further improve the results shown in this paper. The first approach would be to increase the number of generations used by the GA algorithm until an optimal solution is achieved or a more efficient approach would be to use the GA algorithm to find the approximate location of the global minimum and then use the CG method to rapidly progress this minimum.

Due to the small size of the data samples used to test the ANN algorithms it is yet to be determined how long the ANN will remain valid without requiring a new set of weights to be generated. As stated in Sect. 2.2, the GA algorithm can be processed on parallel computers which would reduce CPU time. It may be feasible to train the ANN with the SVD/GA method but as the SVD/GA method can take up to three times longer to arrive at a set of weights that result in inferior predictions to those generated by the ANN trained using the SVD/CG method it would be prudent to train the ANN using the SVD/CG method.

The most efficient method for generating the necessary weights was the SVD method. The CPU time required was only a fraction of a second on average and it is this efficiency that meant that the SVD method could be used with the other two training methods. Indeed, if one chooses to predict future ship motion with the ANN that uses PP2, it is well worth considering using the SVD method alone due to the computational efficiency of the SVD algorithm.

Table 1 shows that the ANN trained using SVD method produced predictions that, on average, performed only 6 % worse than the ANN that was trained using the SVD/CG methods based on performance criteria 1 when PP2 was used and based on criteria 3, the ANN trained solely with the SVD algorithm performed better producing less false lock-out predictions. Furthermore, the SVD/CG method takes on average more than 60 s longer to arrive at a solution. If the ANN is trained using the SVD algorithm alone then the computer processor would not need to be as powerful and the weights could be updated more regularly. This is especially useful when the ship performs maneuvers or when there are sudden dramatic changes in the behavior of the roll motion which would require a new set of weights to be generated.

5 Conclusion

An Artificial Neural Network (ANN) was developed and trained using the singular value decomposition method, the conjugate gradient method and the genetic algorithm was presented and applied to the prediction of ship roll motion. It was shown that the artificial neural network was capable of predicting ship motion up to 7 s in advance. The artificial neural network trained using the combination of the singular value decomposition and conjugate gradient method produced the most accurate prediction when the data was pre-processed by subtracting the mean. The artificial neural network trained using the singular value decomposition method proved to be able to predict ship motion reliably, accurately and quickly which makes it a suitable candidate for predicting ship motion when conditions are expected to change rapidly requiring the retraining of the network. Overall the use of the artificial neural network is an effective technique for the prediction of ship roll motion.