waves [2], i.e. WECs convert potential and kinetic energy of waves into electricity. These WECs are being used ...... ences Division. http://www.esrl.noaa.gov/psd/data/reanalysis/reanalysis.shtml. 11. Bishop, C.: ... surface.html. 25. Pedregosa, F.
Energy Flux Range Classification by Using a Dynamic Window Autoregressive Model Pedro Antonio Guti´errez1(B) , Juan Carlos Fern´ andez1 , M´ aria P´erez-Ortiz1 , 2 2 Laura Cornejo-Bueno , Enrique Alexandre-Cortizo , Sancho Salcedo-Sanz2 , and C´esar Herv´as-Mart´ınez1 1
Department of Computer Science and Numerical Analysis, University of Cordoba, Campus de Rabanales, C2 building, 14071 Cordoba, Spain {pagutierrez,jfcaballero,i82perom,chervas}@uco.es 2 Department of Signal Processing and Communications, Universidad de Alcal´ a, Madrid, Spain {laura.cornejo,enrique.alexandre,sancho.salcedo}@uah.es
Abstract. This paper tackles marine energy prediction from the classification point of view, by previously discretising the real objective variable into a set of consecutive categories or ranges. Given that the range of energy flux is enough to obtain an approximation of the amount of energy produced, the purpose of this discretisation is to simplify the prediction task. A special kind of autoregressive models are considered, where the category to be predicted depends on both the previous values of energy flux and a set of meteorological variables estimated by numerical models. Apart from this, this paper introduces two different ways of adjusting the order of the autoregressive models, one based on nested cross-validation and the other one based on a dynamic window. The results show that these kind of models are able to predict the time series in an acceptable way, and that the dynamic window procedure leads to the best accuracy without needing the additional computational cost of adjusting the order of the model. Keywords: Wave energy prediction of energy · Autoregressive models
1
·
Multi-class classification
·
Flux
Introduction
Oceans are being increasingly considered in many countries as a promising source of clean and sustainable energy. Off-shore wind energy, ocean thermal and tidal and wave energy conversion [1] are some of the marine energy technologies which are currently under exploitation. Although off-shore wind energy is currently the most exploited one, wave energy conversion is being paid attention because of its good balance between cost and efficiency. This work has been partially subsidised by the TIN2014-54583-C2-1-R project of the Spanish Ministry of Economy and Competitiveness (MINECO), FEDER funds, the P2011-TIC-7508 project of the “Junta de Andaluc´ıa” (Spain) and by the “Comunidad de Madrid” (Spain), under project number S2013/ICE-2933. c Springer International Publishing Switzerland 2015 I. Rojas et al. (Eds.): IWANN 2015, Part II, LNCS 9095, pp. 92–102, 2015. DOI: 10.1007/978-3-319-19222-2 8
Energy Flux Range Classification
93
Wave Energy Converters (WECs) are able to transform the energy of waves into electricity using either the vertical oscillation or the linear motion of the waves [2], i.e. WECs convert potential and kinetic energy of waves into electricity. These WECs are being used in areas with great wave power density located near populated regions demanding energy, e. g. Norway, UK, Ireland or Portugal, to name a few. Wave resource prediction becomes a crucial topic for the design, deployment, and control of WECs [3,4], that require a proper characterization of waves in a given area. Wave energy resource prediction is difficult because of their stochastic nature and the large amount of factors which influence, e. g. changes in the wind, sea depth, closeness to the coast, etc. This prediction is, however, very important to ensure a correct management of WECs facilities, in renewable and sustainable systems for energy supply (the demand of energy in certain regions fluctuates throughout the day and even depending on the season of year). Alternative applications of wave height prediction are decision making in operational works at sea, risk evaluation of marine energy facilities, etc. The data for characterising waves (and subsequent prediction) can be basically obtained from radars and buoys arrays, which generate time series. Using these time series, the corresponding wave spectrum, S(f ), can be computed. In turn, based on its spectral moments, the most useful wave parameter to estimate the wave power density at a given location is the wave’s flux of energy (Fe ), which will be used by the WEC in order to generate electricity [2,5]. Basically, the conversion to electrical power [6] is subject to hugely varying energy flux, which can be obtained from meteorological data as the significant wave height (Hs ) and the wave energy period (Te ). This paper deals with a problem of marine wave energy flux prediction (Fe ). Contrary to the previous approaches, the problem is tackled as a multi-class classification problem by discretising the time series, Fe , in different categories. Given that a predefined number of categories or ranges in terms of Fe is enough for obtaining practical information, the main advantage of using this discretisation is the corresponding simplification of the prediction problem. For this purpose, real data of a sea buoy located at the southeast coast of the USA are used for evaluationg the proposed methodologies. Fe is obtained from two standard meteorological data: Hs and Te , collected hourly by the sensors in the buoy. This information can be obtained from the National Data Buoy Center (NDBC) [7], belonging to the National Data Buoy Service of the United States. For tackling this classification problem, we consider a longitudinal study by using AutoRegressive (AR) models [8]. The motivation for using AR models comes from the fact that many observed time series exhibit serial autocorrelation, i.e. linear association between lagged observations. This kind of models are built considering the past lagged values of the time series as inputs (or independent variables) and the next value of the time series as output (or dependent variable). However, the order of AR models (i.e. the number of lagged values to be included as inputs, usually denoted as p) decisively influences its final performance.
94
P.A. Guti´errez et al.
It has to be defined prior to fitting the AR model and it usually depends on the dynamics of the time series. For the case of discrete time series, autoregressive logistic regression predicts a discrete response for time t based on the p previous discrete responses [9]. Although the same approach could be tackled for Fe range prediction, we propose to use the actual values of Fe instead of the discretised ones, which would ideally increase the quality of the predictions thanks to a finer-grain input information. Finally, in order to deal with the optimum determination of the order p for the AR model, we propose to consider a dynamic window instead of a fixed order one. This dynamic window procedure is based on the selection of those past values of the time series where no change of class is observed with respect to the current class value. Then, different statistics are calculated over the values of this window (in our case, the average value, the standard deviation and the amplitude of the window). In addition to consider the past lagged values of the time series as inputs, four meteorological predictive variables in four different points around the buoy studied in this work have been added as independent variables. The four meteorological variables have been obtained from the NCEP/NCAR Reanalysis Project of the Earth System Research Laboratory (ESRL) Physical Sciences Division [10]: air temperature, sea level pressure, the zonal component of the wind and the meridional component of the wind. To carry out the use of variables of numerical models, a matching procedure every six hours (the minimum temporal resolution of the Reanalysis data used) between the meteorological variables and the Fe values has been necessary. Therefore, the independent variables of the models obtained are formed by the past values of Fe and the values of the four meteorological variables in those instants. The results obtained show that the models proposed achieve promising accuracy, with over 67% of correctly predicted ranges when using 4 possible class values. Moreover, the dynamic window procedure alleviates the computational cost needed for selecting a proper window size for this kind of AR models. The rest of this paper is structured as follows: Firstly, the next section presents a brief background about machine learning techniques applied to solve the prediction of data for characterising waves. In Section 3, the building of the dataset used in this paper is detailed. The specific problem modelling considered is stated in Section 4. Section 5 presents the experimental part of the paper and the results obtained. Finally, Section 6 gives some concluding remarks for closing the paper.
2
Brief Background
Taking into account wave energy prediction from the machine learning point of view [11], the most common techniques consider Artificial Neural Networks (ANNs). Deo et al. [12] proposed the use of ANNs for predicting Hs , and his proposal was improved later in [13]. In [14], Hs and Te are predicted from the observed wave records using time series neural networks. In [15], a hybrid genetic algorithm-adaptive network-based fuzzy inference system model was developed
Energy Flux Range Classification
95
to forecast Hs and the peak spectral period in Lake Michigan. In this methodology, both clustering and rule base parameters are simultaneously optimised using genetic algorithms and ANNs. Recently, in [16], ANNs have been applied to estimate the wave energy resource in the northern coast of Spain. Other works as [17] apply efficient regression methods based on machine learning and soft computing. In [18], support vector regression is used, and in [19] and [20] genetic programming and fuzzy logic are used respectively. Alternative approaches using numerical models of atmosphere and Ocean, usually hybridised with time series prediction, can also be found in the literature in [21,22].
3
Data Source
In this paper, the values of Fe over a time range have been obtained from a buoy located at the East Coast of the USA. The buoy collects standard meteorological data hourly using the sensors installed on it. These data are stored and they can be obtained by downloadable annual text files in the National Oceanic and Atmospheric Administration (NOAA), specifically in the National Data Buoy Center (NDBC) [7], that maintains a network of data collecting for buoys and coastal stations. To check the robustness of the models used in this work (see Section 4) the standard meteorological data of the buoy studied from January 1st (00:00) to December 31st (23:00), for the years 2012 and 2013 have been considered. The selected buoy is the Station 41013 (LLNR 815) [23] - Frying Pan Shoals, NC Buoy. This buoy is geographically located at coordinates 33.436N 77.743W (33◦ 26 11 N 77◦ 44 35 W). This location is a region of interest to exploit wave energy conversion, because it is relatively close to massive population zones. The considered buoy is a near-shore location with sufficient range of values for Fe to carry out this first study (a good location will have an annual average typically in the range 20 − 70 kilowatts per meter (kW/m) [1]). It is possible to obtain the value of Fe considering Hs , measured in meters, and Te , measured in seconds, as shown below: Fe = 0.49 · Hs2 · Te ,
(1)
where Fe is the energy flux generated by the waves measured in kW/m. Note that Fe is defined in Equation (1) as an average energy flux (Hs is a kind of average wave height), though for simplicity it will be referred just as energy flux. Fe values obtained from the model used must be discretised in order to tackle the problem as a classification one. To check out how the change in the discretisation of Fe can affect the prediction task, datasets with different number of classes according to different thresholds used for each one have been built. Considering the expert knowledge about the problem, the threshold values were adjusted trying to cover the most important kind of waves from the point of view of their energy production in that geographical location. It is important to note that this discretisation may be adjustable depending on each specific buoy location and even the WEC type. Moreover, note that the inclusion of many
96
P.A. Guti´errez et al.
different classes could compromise the performance of the classification task. Table 1 shows the thresholds for 4, 5 and 6 classes, respectively, for Fe and for the buoy studied in this work. Table 1. Discretisation in Q = 4, Q = 5 and Q = 6 classes for Fe in the Station 41013, Southeast of United States. For each class, the range of the class and the corresponding number of patterns are specified. Discretization Q=4 Q=5 Q=6
C1 [0, 2) 858 [0, 1) 233 [0, 1) 233
C2 [2, 4) 863 [1, 2) 625 [1, 2) 625
C3 [4, 10) 762 [2, 4) 863 [2, 3) 521
C4 [10, ∞) 437 [4, 10) 762 [3, 4) 342
C5
C6
[10, ∞) 437 [4, 10) 762
[10, ∞) 437
Regarding the meteorological variables used as inputs, they were taken from the NCEP/NCAR Reanalysis Project web page [10], that maintains sea surface level data around the world in a global grid of resolution 2.5◦ × 2.5◦ . The four points closest to the buoy (north, south, east and west) have been taken into account in a 6-hours time horizon resolution, since it is the minimum resolution provided by the ESRL. In each point four representative meteorological variables were used for the prediction: air temperature, sea level pressure, the zonal component of the wind and the meridional component of the wind [24]. Then, a matching procedure was carried out every six hours between these meteorological variables obtained from NCEP/NCAR Reanalysis Project and between the Fe hourly collected by the buoy, obtained from the NDBC. After this matching step, there were only four missing values, corresponding to four dates when no data were recorded in the buoy. These values were approximated by considering the average of the previous and next point of the missing value. The total number of data values is 2924, including the four ones which were approximated.
4
Models Used for Prediction
The problem of Fe can be described as a time series forecasting problem. Let +p {yt }N t=1 be a time series of N + p points. The objective is to obtain a function f : Rp → R which is derived from a dataset of N patterns, D = (X, Y) = {(xt , yt )}N t=1 where xt = {yt−p , yt−p+1 , . . . , yt−1 } is the vector with the values of the independent variables (i.e., the p past values of the time series), and the dependent variable, yt , is the value of the time series for time t. A standard AR model of order p is defined in the following way: yt = β0 +
p
βi yt−i + t ,
i=1
where β0 , β1 , . . . , βp are the coefficients of the model and t is white noise.
Energy Flux Range Classification
97
The values of the time series can be discretised in a set of classes, given that the range of Fe provides enough information for taking decisions, the exact value not being needed for obtaining a general idea about the energy produced. In this way, we considered the ranges presented in Table 1 to map the time +p N +p series of real values, {yt }N t=1 , to a time series of symbols or classes, {ct }t=1 , where ci ∈ {C1 , . . . , CQ }. In order to predict discrete responses, the AR logistic regression [9] resembles the following structure: ln
p P (ct = Cq |ct−1 , . . . , ct−p ) = βq0 + βqi O(ct−i ), P (ct = CQ |ct−1 , . . . , ct−p ) i=1
where q ∈ {1, . . . , Q − 1}, O(Cq ) = q, and βq0 , βq1 , . . . , βqp are the parameters of class q. One of the downsides of this model is that it assumes that distances between different ranges are the same for all pairs of labels, which, as can be checked in Table 1, is not the case for our problem. Moreover, given that we still have the original values of Fe , i.e. yt , we hypothesise that these more accurate inputs can provide better results for the prediction of the discrete responses. Finally, the analysis is extended by including the meteorological variables (exogenous variables) previously described, which will be referred to as x = {x1 , . . . , xD }. Summarising, the following model is considered: ln
p D P (ct = Cq |yt−1 , . . . , yt−p , x) = βq0 + βqi yt−i + βq(p+i) xi , P (ct = CQ |yt−1 , . . . , yt−p , x) i=1 i=1
where q ∈ {1, . . . , Q − 1}, βq0 , βq1 , . . . , βqp , βq(p+1) , . . . , βq(p+D) are the parameters of class q. With these exogenous variables, the AR model becomes an ARX model (AR with eXogenous variables). The final probability can predicted as: P (ct = Cq |yt−1 , . . . , yt−p , x) = p D exp βq0 + i=1 βqi yt−i + i=1 βq(p+i) xi , Q p D exp β + β y + β x j0 j=0 i=1 ji t−i i=1 j(p+i) i
(2)
for q ∈ {1, . . . , Q − 1}. However, it is still necessary to determine the order p for this ARX model. It depends on the regime of the time series, thus it has to be adjusted for each time series. A possible solution is to consider a nested cross-validation procedure to decide the value of p resulting in the maximum estimated accuracy. This paper explores the possibility of extending an AR model with order p = 1 with different statistics for a dynamic window. This dynamic window is formed by those past values of the time series which belong to a range equal to the last one: Wt = {yt−1 , yt−2 , . . . , yt−s |ct−1 = ct ∧ . . . ∧ ct−s = ct ∧ ct−s−1 = ct }, where the width of the window s depends on the point being examined. The window Wt is formed by all those adjacent past values which have the same
98
P.A. Guti´errez et al.
label than the last value. The behaviour of this window is shown in Fig. 1, where the evaluated points are shadowed. As can be observed, the static window used in AR models always consider the same number of precedent values (in this case, two values), while the dynamic window considers all those previous time indexes whose class is the same than the last one. This can provide the model with dynamic information of the time series, more values being used when the time series is stable (so the range is constant) and less points being considered for those cases in which the labels have changed.
Fig. 1. Static window with p = 2 and dynamic window
Using this window, the final model extends an ARX model with p = 1 and has the following structure: P (ct = Cq |Wt , x) = (3) D exp βq0 + βq1 yt−1 + βq2 Wt + βq3 SWt + βq4 RWt + i=1 βq(4+i) xi , Q D exp β + β y + β W + β S + β R + β x j0 j1 t−1 j2 t j3 W j4 W i t t j=0 i=1 q(4+i) where q ∈ {1, . . . , Q − 1}, and Wt , SWt and RWt are the average, the standard deviation and the range of the window Wt , respectively:
y − Wt 1 , RWt = max y − min y. Wt = y, SWt = y∈Wt y∈Wt s s−1 y∈Ws
5
y∈Ws
Experiments
As previously mentioned, the final number of Fe values is 2924 including data from 2012 and 2013. Regarding the experimental design, we have applied a 10-fold cross-validation, where the time series was divided into 10 disjoint folds
Energy Flux Range Classification
99
without randomizing the data. Then, the training process was repeated 10 times, each one considering a different fold for test and the remaining ones for training. The values of Fe were discretised using the intervals presented in Table 1, and we considered three different versions of a logistic regression model (with different input variables) for predicting the corresponding categories or labels: – ARX1 , which is the ARX model presented in Eq. (2) with only one previous real value of Fe used as predictor, i.e. p = 1. – ARXp , i.e. an ARX model using a range of values for p ranging from 1 to 10. In order to decide the best value, a nested cross-validation process with 10 folds was applied using only the training data (again, without data randomization). This nested cross-validation was repeated for p ∈ {1, . . . , 10} and the value of p resulting in the maximum cross-validation accuracy was selected. Then, the training was repeated for this value of p but this time using the whole training set. – ARXWt , which is the dynamic window ARX model defined in Eq. (3), where there is no need to specify the order of the model. To perform the experiments, we have used scikit-learn [25,26], an open source machine learning library for Python. Given that some of the models involve a quite large number of features, we have included a regularisation term to control over-fitting. Specifically, the logistic regression implementation considered is that included in liblinear [27,28], and we have applied L2 regularisation. This implies adjusting a regularisation parameter C, which represents the inverse of the regularisation strength. For this, a nested 10-fold cross-validation has been applied (similar to the one previously discussed), using the following values C ∈ {10−5 , 10−4 , . . . , 102 }. In order to apply the AR models, the first p data points had to be discarded and used only as data input. We discarded the first 10 points for all the models (independently of the order considered) in order to do a fair comparison. We have evaluated two different aspects of the results, the percentage of labels correctly classified (accuracy) and the time needed for obtaining the corresponding models, including the cross-validation process for adjusting all the parameters (C and, in the case of ARXp , the order p). Table 2 includes the mean and standard deviation of the 10 accuracy results, while Table 3 is focused on the computational time. In general, it can be observed how the accuracy of the models decreases as the number of classes (Q) increases, which is due to the increased complexity of the classification problem. However, the level of accuracy obtained is acceptable, if we take into account that they are quite higher than the accuracy obtained by random guessing (CCR = 33.3% for 3 classes, CCR = 25.0% for 4 classes and CCR = 16.6% for 6 classes). Although the ARX1 is able to achieve very good results, they are consistently worse results than those obtained by ARXp and ARXWt . When comparing the performances of ARXp and ARXWt , they tend to be quite similar, but the computational cost of the ARXp method is much higher, because 10 different values of p are tested for each fold (recall that the value of p is independently optimised for each fold).
100
P.A. Guti´errez et al.
Table 2. Mean and standard deviation of the accuracy (%) obtained by the different methods considered
ARX1 ARXp ARXWt
Q=4 (Mean ± SD) 66.679 ± 2.434 66 .679 ± 2 .129 67.500 ± 2.548
Q=5 (Mean ± SD) 58.754 ± 3.555 58 .960 ± 3 .896 59.542 ± 3.224
Q=6 (Mean ± SD) 54.636 ± 4.793 55 .084 ± 4 .880 55.871 ± 4.547
Table 3. Mean and standard deviation of the total cross-validation time (seconds) needed for obtaining the models
ARX1 ARXp ARXWt
Q=4 (Mean ± SD) 0.6502 ± 0.0064 44.6132 ± 24.5891 0 .8238 ± 0 .0419
Q=5 (Mean ± SD) 0.8131 ± 0.0094 56.8958 ± 31.1296 1 .0429 ± 0 .0367
Q=6 (Mean ± SD) 0.9736 ± 0.0129 67.9879 ± 37.4131 1 .2648 ± 0 .0390
The labels of Fe obtained by the ARXWt model when considering Q = 4 classes are shown in Fig. 2. As can be seen, the predictions follow the general tendency of the real values, resulting in an enough accurate idea of the quantity of energy produced.
Fig. 2. Observed labels for a range of the Fe time series and label predicted by the ARXWt (Q = 4)
Energy Flux Range Classification
6
101
Conclusions
This paper evaluates different AutoRegressive models with eXogenous variables (ARX) based on logistic regression in a problem of wave energy flux prediction (Fe ). Specifically, Fe prediction in a 6 hours time-horizon is considered, and classification techniques for tackling prediction are introduced. Classification is accomplished by considering consecutive intervals of values (ranges), which is enough information for energy prediction purposes. The input variables include both the past values of Fe (instead of the labels) and meteorological variables from numerical meteorological models from four grid points surrounding the considered buoy. Three models are used: an ARX model using one past value of the time series, an ARX model where the number of past values (order of the model, p) is decided by cross-validation, and a dynamic window ARX model, all of them based on logistic regression. The results shows that the dynamic window avoids the computational burden needed for adjusting the order of the model, while increasing the accuracy with respect to the ARX model of order p = 1. The way of performing Fe prediction is novel for marine energy prediction, and allows to apply well-tuned machine learning classifiers. As future work, ordinal logistic regression [29] could be considered, instead of standard nominal logistic regression, given that the different ranges of Fe are categories showing a predefined order, which can improve the quality of the classifiers.
References 1. Bahaj, A.S.: Generating electricity from the oceans. Renewable and Sustainable Energy Reviews 15, 3399–3416 (2011) 2. de O. Falcao, A.F.: Wave energy utilization: a review of the technologies. Renewable and Sustainable Energy Reviews 14, 899–918 (2010) 3. Fusco, F., Ringwood, J.V.: Short-term wave prediction for real-time control of Wave Energy Converters. IEEE Transactions on Sustainable Energy 1(2), 99–106 (2010) 4. Richter, M., Maga˜ na, M.E., Sawodny, O., Brekken, T.K.: Nonlinear Model Predictive Control of a Point Absorber Wave Energy Converter. IEEE Transactions on Sustainable Energy 4(1), 118–126 (2013) 5. Waters, R., Engstr¨ om, J., Isberg, J., Leijon, M.: Wave climate off the Swedish west coast. Renewable Energy 34(6), 1600–1606 (2009) 6. Falnes, J.: A review of wave-energy extraction. Marine Structures 20, 185–201 (2007) 7. NOAA/NDBC: National Oceanic and Atmospheric Administration (NOAA), National Data Buoy Center (NDBC). http://www.ndbc.noaa.gov 8. Brockwell, P.J., Davis, R.A.: Time series: theory and methods. Springer Science & Business Media (2009) 9. Guanche, Y., M´ınguez, R., M´endez, F.J.: Autoregressive logistic regression applied to atmospheric circulation patterns. Climate Dynamics 42(1–2), 537–552 (2014) 10. NCEP/NCAR: The NCEP/NCAR Reanalysis Project, NOAA/ESRL Physical Sciences Division. http://www.esrl.noaa.gov/psd/data/reanalysis/reanalysis.shtml 11. Bishop, C.: Pattern Recognition and Machine Learning. Springer (2006)
102
P.A. Guti´errez et al.
12. Deo, M.C., Naidu, C.S.: Real time wave prediction using neural networks. cean. Engineering 26(3), 191–203 (1998) 13. Agrawal, J.D., Deo, M.C.: Wave parameter estimation using neural networks. Marine Structures 17, 536–550 (2004) 14. Tsai, C.P., Lin, C., Shen, J.N.: Neural network for wave forecasting among multistations. Ocean Engineering 29(13), 1683–1695 (2002) 15. Zanaganeh, M., Jamshid-Mousavi, S., Etemad-Shahidi, A.F.: A hybrid genetic algorithm-adaptive network-based fuzzy inference system in prediction of wave parameters. Engineering Applications of Artificial Intelligence 22(8), 1194–1202 (2009) 16. Castro, A., Carballo, R., Iglesias, G., Rabu˜ nal, J.R.: Performance of artificial neural networks in nearshore wave power prediction. Applied Soft Computing 23, 194–201 (2014) 17. Mahjoobi, J., Etemad-Shahidi, A.F., Kazeminezhad, M.H.: Hindcasting of wave parameters using different soft computing methods. Applied Ocean Research 30(1), 28–36 (2008) 18. Mahjoobi, J., Mosabbeb, E.A.: Prediction of significant wave height using regressive support vector machines. Ocean Engineering 36, 339–347 (2009) 19. Nitsure, S.P., Londhe, S.N., Khare, K.C.: Wave forecasts using wind information and genetic programming. Ocean Engineering 54, 61–69 (2012) 20. Ozger, M.: Prediction of ocean wave energy from meteorological variables by fuzzy logic modeling. Expert Systems with Applications 38(5), 6269–6274 (2011) 21. Reikard, G., Pinson, P., Bidlot, J.R.: Forecasting ocean wave energy: The ECMWF wave model and time series methods. Ocean Engineering 38, 1089–1099 (2011) 22. Akpinar, A., Komurcu, M.I.: Assessment of wave energy resource of the Black Sea based on 15-year numerical hindcast data. Applied Energy 101, 502–512 (2013) 23. NDBC: National Data Buoy Center (NDBC) - Station 41013 (LLNR 815) Frying Pan Shoals, NC Buoy. http://www.ndbc.noaa.gov/station history.php? station=41013 24. NCEP/NCAR: The NCEP/NCAR Reanalysis Project, Sea Surface Level Variables 6-hourly. http://www.esrl.noaa.gov/psd/data/gridded/data.ncep.reanalysis. surface.html 25. Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V., Vanderplas, J., Passos, A., Cournapeau, D., Brucher, M., Perrot, M., Duchesnay, E.: Scikit-learn: Machine Learning in Python. Journal of Machine Learning Research 12, 2825–2830 (2011) 26. Scikit-Learn: Scikit-Learn, Machine Learning in Python. http://scikit-learn.org/ stable/ 27. Fan, R.E., Chang, K.W., Hsieh, C.J., Wang, X.R., Lin, C.J.: LIBLINEAR: A library for large linear classification. The Journal of Machine Learning Research 9, 1871–1874 (2008) 28. Liblinear: Liblinear - A Library for Large Linear Classification. http://www.csie. ntu.edu.tw/cjlin/liblinear 29. McCullagh, P.: Regression Models for Ordinal Data. Journal of the Royal Statistical Society. Series B (Methodological) 42(2), 109–142 (1980)