Long-term SPI drought forecasting by Artificial Neural Network (ANN)

(1 customer review)



Due to a slow evolution in time, drought is often a phenomenon whose consequences take a significant amount of time with respect to its inception to be perceived by the socio-economic sector. This feature allows for the mitigation of some of the impacts of drought, provided there is an effective monitoring system to provide information to decision makers. Effective monitoring of droughts can significantly help early warning systems. 

In sub-Saharan Africa, effective rainfall monitoring contributes to the allocation of aid during periods of drought. An important aspect of drought monitoring and the development of an early warning system is the ability to effectively forecast future drought events. Forecasting future drought events in a region is very important for finding sustainable solutions to water management and risk assessment of drought occurrences.

Data driven stochastic models have traditionally been used for drought forecasting. Autoregressive integrated moving average models (ARIMA) have been the most widely used stochastic models for hydrologic drought forecasting. Stochastic models are linear models and are limited in their ability to forecast non-linear data. 

To effectively forecast non-linear data, researchers in the last two decades have increasingly begun to utilize artificial neural networks (ANNs) to forecast hydrological data. ANNs have been used in a number of studies as a drought forecasting tool.

In this project, We use Feedforward Artificial Neural Network as model for SPI drought forecasting.

Input data in a excel file, which was collected from a station. This file has the following index :

Year       Month       Precipitation       EDI                 NAO         SOI
Year       Month       Precipitation       SPI Index       NAO         SOI

seventy percent of data are used for training data and thirty percent for test data.



In this code, Simple ANN without hidden layer is used.




In this MATLAB code, best number of neurons in hidden layer is found in a loop.





In this code, haar wavelet transform is used with ANN.





One of the important parameters in wavelet is level. In this code, we find the best level for wavelet transform in a loop.


Long-term SPI drought forecasting by Support Vector Regression

Arduino Code for Spin Table Controller




1 review for Long-term SPI drought forecasting by Artificial Neural Network (ANN)

  1. blank


    You are excellent , that’s why I other codes as well, and I will buy other ones in the future for sure.

Add a review

Your email address will not be published. Required fields are marked *