Published On January 10, 2023
Journal Issue LJRS Volume 22 Issue 15

Wheat Production Prediction in India using ARIMA, Neural Network and Fuzzy Time Series

S Selvakumar
S Selvakumar
Article Fingerprint
Research ID B56SE

IntelliPaper

Abstract

A time series is a predetermination of data points that happen in repeated order of time. Forecasting productions play a necessary part in several fields such as, meteorological data, weather data, stock market data, rainfall data, agriculture data and so on. In recent years, fuzzy time series is used for forecasting. Song and Chissom (1993) proposed fuzzy time series for forecasting enrollments of data. In this paper, Autoregressive Integrated Moving Average Model (ARIMA), Neural networks for Radial Basis Function (RBF) and Multilayer Perceptran (MLP) and fuzzy time series for predicting wheat production of India were compared. Mean Absolute Error (MAE), Mean Absolute Percentage Error (MAPE) and Root Mean Square Error (RMSE) were compared. The results were displayed numerically and graphically.

Explore Digital Article Text

I. INTRODUCTION

The time series is a category of variables ordered in a specific order of time. Forecasting believes the future values of the time series. For the past decades, fuzzy time series has been widely used for predicting the historic data. Fuzzy time series is used to planning with forecasting difficulties in which the historical data are linguistic values. Song and Chissom (1993) proposed the fuzzy time series for the enrollments of university of Alabama. Wheat is the chief cereal crop in India. Wheat crop has well-known flexibility. Wheat is developed in a variety of soils of India. Yanpeng Zhang et.al(2020) proposed a novel fuzzy time series forecasting model by multiple linear regression and time series clustering for forecasting market prices. Singh, P. (2018) offered a new model to deal with four major issues of fuzzy time series (FTS) forecasting, viz., Wangren Qiu et.al(2015) proposed model was implemented in forecasting enrollment data at the University of Alabama. Ozge Cagcag Yolcu et.al(2016) proposed a novel high-order fuzzy time series approach that considers the membership values, where artificial neural networks are employed to identify the fuzzy relations. Adesh Kumar Pandey(2008) proposed fuzzy time series and neural network. The proposed method has been implemented in the historical data. Paarth Thadani(2021) presented non-linear forecasting models, including artificial neural networks, are popularly adopted in financial forecasting. Yousif Alyousifi et.al (2021) proposed Fuzzy Time Series Markov Chain – Transition Probability Matrix model is tested using two types of time series data, namely, air pollution index (API) data, and yearly enrollments for the University of Alabama.Wang et.al (2017) applied autoregressive integrated moving average model and artificial neural network for air pollution data. Alyousi et. al (2019) applied artificial neural network and Markov chain are applied for air pollution forecasting. In this work, ARIMA, Neural networks for Multilayer Perceptron and Radial Basics Function and fuzzy time series algorithms are used for wheat production prediction in India. Residual analysis for Mean

Absolute Error (MAE), Mean Absolute Percentage Error (MAPE) and Root Mean Square Error (RMSE) were compared.

II. METHODOLOGY

2.1 Autoregressive Integrated Moving Average Model

Autoregressive Integrated Moving Average Model (p, d, q), where p is Autoregressive and q is the Moving Average Model and d is the differencing. If d = 0, the data exhibits stationary and the order is denoted as (p, q), which is called ARMA process. If the data does not exhibit stationary, the first order differencing is carried out in converting it into a stationary, hence the model is denoted as (p, d, q).

2.2 Radial Basis Function (RBF)

RBF networks, a class of feed forward networks, called radial basis function that compute activations at the hidden neurons in a way that is different from what we have seen in the case of feed forward neural networks. Rather than employing an inner product between the input vector and the weight vector The RBF output layer results in a linear fashion. The output y is computed by

\[y _ {i} (x) = \sum_ {k = 1} ^ {J _ {2}} W _ {k i} \phi (\| X - C _ {k} \|)\]

For where is the output of the RBF. is the connection weight from the hidden to the output unit is the prototype or center of the hidden unit, and denotes the Euclidean norms. The RBF typically selected as the Gaussian function

\[\phi \left( x - c _ { i } \right) = e ^ { - \left\| x - c _ { i } \right\| ^ { 2 } / 2 \sigma ^ { 2 } }\]

Where is the center of the associated field, and is the width of the Gaussian function.

2.3 Multi Layer Perceptron

Artificial Neural Network(ANN) is an operational model which consists of a large number of interconnected nodes(neurons). Each node contains a specific output function which is called an activation function. The connection between every two nodes represents a weighted value that passes through the connection signal, which is called weight. Weight is equivalent to the memory of ANN. Multi Layer Perceptron(MLP) has many layers, the first layer is the input layer, the last layer is the output layer, the middle layers are called hidden layers, each layer includes several neurons. This calculation process is called feed forward process of MLP. If there is an MLP, which contains m hidden layers, its input and output dimensions are respectively equal to and . The number of nodes in each hidden layer is respectively. In the feed forward process of this MLP, each node value is calculated using the following formula

\[\mathrm{X}_{\mathrm{ij}} = \mathrm{f}(\mathrm{W}\mathrm{X}_{\mathrm{i-1}} + \mathrm{b}_{\mathrm{i-1}})\]

fis the activation function.

Where represents the value of the j neuron i layer. represents the weight vector of the j neuron in layer i-1 to layer i. represents the value vector of all neurons in layer i-1. represents the bias of the i-1 layer, and f is the activation function.

2.4 Fuzzy Time Series

It is the values of the observations of a special dynamic process are represented by linguistic values.

Computational Algorithm for Fuzzy Time Series

The step by step process is as follows:

Step1: Calculate the first order variation of the historical data.

Step2: Define the universe of discourse, U based on the range of available historical data.

\[\mathrm{U} = \left[ \mathrm{D} _{min} - \mathrm{D} _ {1}, \mathrm{D} _{max} + \mathrm{D} _ {2} \right]\]

Where is the minimum value of the first order variation of the historical data, is the maximum value of the historical data and , are two positive integers.

Step3: Partition the universe of discourse U into equal length intervals: .

Step4: The number of intervals will be in accordance with the number of linguistic variables (fuzzy sets) to be considered.

Step5: Fuzzify the variations of the historical data and establish the fuzzy logical relationship is represented by .

Step6: Rules for forecasting:

is corresponding interval for which membership in is supremum (i.e., 1)

is the highest value of the interval having supremum value in .

M[A_{j}] is the mid value of the interval u_{j} having supremum value in A_{j}.

For a fuzzy logical relationship .

is the fuzzified wheat production of the current year n;

is the fuzzified wheat production of the next year ;

is the actual wheat production of the current year n;

is the actual wheat production of the previous year n-1;

is the variation wheat production of the current year n;

is the variation wheat production of the previous year n-1;

is the forecasted wheat production of the next year ;

Step7: Forecasting wheat production for the year is obtained from modified computational algorithm as follows;

Obtain the fuzzy logical relationship .

\[If E_{i}<M[A_{j}], then F_{j}=D_{i-1}+(M[A_{j}]-1/6L[A_{j}])\]
\[\text{elseIf} E_{i}>M[A_{j}], \text{then} F_{j}=D_{i-1}+(M[A_{j}]+1/6L[A_{j}])\]
\[else F_{j}=D_{i-1}+M[A_{j}]\]

Step8: Obtain the mean absolute error using actual values and forecasted values

\[\mathrm{MAE} = \frac{1}{n} \sum_ {t = 1} ^ {n} \left| u _ {t} \right|\]

Where n is the number of years and \left|u_{t}\right|=Y_{t}-\hat{Y}{t}. Y{t} is actual values at time t. \hat{Y}_{t} is predicted values at time t.

Step9: Obtain the mean absolute percentage error using actual values and forecasted values

\[\text { MAPE } = \frac {1}{n} \sum_ {t = 1} ^ {n} \left| \frac {Y _ {t} - \hat {Y} _ {t}}{Y _ {t}} \right|\]

Step 10: Obtain the root mean square error using actual values and forecasted values

\[RMSE = \sqrt{\frac{\sum_{i=1}^{n} \left(Y_t - \hat{Y}_t\right)^2}{n}}\]

III. RESULTS AND DISCUSSIONS

Step1: Compute the first order variation of the historical data.

Step2: The universe of discourse U is defined as+

\[\mathrm{U} = \left[ \mathrm{D}_{min} - \mathrm{D}_{1}, \mathrm{D}_{max} + \mathrm{D}_{2} \right]\]
\[\mathrm{U} = \left[ -9323 -77, 11510 +90 \right] = \left[ -9400, 11600 \right]\]

Where is the minimum value of the first order variation of the historical data.

is the maximum value of the first order variation of the historical data,

and are two positive integers. , are choosing arbitrarily for the rounded off U value.

Step3: The universe of discourse U is partitioned into five equal length of intervals.

\[\mathrm{U} _ {1} = \left[ - 9 4 0 0, - 5 2 0 0 \right] \mathrm{U} _ {2} = \left[ - 5 2 0 0, - 1 0 0 0 \right] \mathrm{U} _ {3} = \left[ - 1 0 0 0, 3 2 0 0 \right] \mathrm{U} _ {4} = \left[ 3 2 0 0, 7 4 0 0 \right] \mathrm{U} _ {5} = \left[ 7 4 0 0, 1 1 6 0 0 \right]\]

Step4: Define five fuzzy sets having some linguistic values on the universe of discourse U. The linguistic values are as follows:

\[A_{1}=\mathrm{very poor} \quad A_{2}=\mathrm{poor} \quad A_{3}=\mathrm{Moderate} \quad A_{4}=\mathrm{Good} \quad A_{5}=\mathrm{Very Good}\]

Table 1: Fuzzified Wheat Production(tonnes) on Variations

YearWheat production(tonnes)VariationsFuzzified variations
200169681--
2002727663085A3
200365761-7005A1
2004721566395A4
200568637-3519A2
200669355718A3
2007758076452A4
2008785702763A3
2009806792109A3
201080804125A3
2011868746070A4
2012948828008A5
201393506-1376A2
2014958502344A3
201586527-9323A1
201687000473A3
20179851011510A5
2018998701360A3
20191036003730A4
20201078604260A4
20211095201660A3
\[\begin{array}{r l} & {\mathrm {A_ {1}} = 1 / \mathrm {u_ {1}} + 0. 5 / \mathrm {u_ {2}} + 0 / \mathrm {u_ {3}} + 0 / \mathrm {u_ {4}} + 0 / \mathrm {u_ {5}}} \\& {\mathrm {A_ {2}} = 0. 5 / \mathrm {u_ {1}} + 1 / \mathrm {u_ {2}} + 0. 5 / \mathrm {u_ {3}} + 0 / \mathrm {u_ {4}} + 0 / \mathrm {u_ {5}}} \\& {\mathrm {A_ {3}} = 0 / \mathrm {u_ {1}} + 0. 5 / \mathrm {u_ {2}} + 1 / \mathrm {u_ {3}} + 0. 5 / \mathrm {u_ {4}} + 0 / \mathrm {u_ {5}}} \\& {\mathrm {A_ {4}} = 0 / \mathrm {u_ {1}} + 0 / \mathrm {u_ {2}} + 0. 5 / \mathrm {u_ {3}} + 1 / \mathrm {u_ {4}} + 0. 5 / \mathrm {u_ {5}}} \\& {\mathrm {A_ {5}} = 0 / \mathrm {u_ {1}} + 0 / \mathrm {u_ {2}} + 0 / \mathrm {u_ {3}} + 0. 5 / \mathrm {u_ {4}} + 1 / \mathrm {u_ {5}}} \end{array}\]

Step6: The historical variations of the time series data are fuzzified in order to have the fuzzy logical relations obtained as follows: Variations in the fuzzy logic relationships

\[\begin{array}{c}\\mathrm{A_ {3}} \rightarrow \mathrm{A_ {1}}, \mathrm{A_ {1}} \rightarrow \mathrm{A_ {4}}, \mathrm{A_ {4}} \rightarrow \mathrm{A_ {2}}, \mathrm{A_ {2}} \rightarrow \mathrm{A_ {3}}, \mathrm{A_ {3}} \rightarrow \mathrm{A_ {4}}, \mathrm{A_ {4}} \rightarrow \mathrm{A_ {3}}\\\mathrm{A_ {3}} \rightarrow \mathrm{A_ {3}}, \mathrm{A_ {3}} \rightarrow \mathrm{A_ {3}}, \mathrm{A_ {3}} \rightarrow \mathrm{A_ {4}}, \mathrm{A_ {4}} \rightarrow \mathrm{A_ {5}}, \mathrm{A_ {5}} \rightarrow \mathrm{A_ {2}}, \mathrm{A_ {2}} \rightarrow \mathrm{A_ {3}}\\\mathrm{A_ {3}} \rightarrow \mathrm{A_ {1}}, \mathrm{A_ {1}} \rightarrow \mathrm{A_ {3}}, \mathrm{A_ {3}} \rightarrow \mathrm{A_ {5}}, \mathrm{A_ {5}} \rightarrow \mathrm{A_ {3}}, \mathrm{A_ {3}} \rightarrow \mathrm{A_ {4}}, \mathrm{A_ {4}} \rightarrow \mathrm{A_ {4}}\\\mathrm{A_ {4}} \rightarrow \mathrm{A_ {3}}\end{array}\]

Step-7: The forecasted values have been obtained by using the computational algorithm. Then the forecasted output while comparing with different models given as table 2. Table 2: Forecasted Wheat Production(tonnes) by Different Models Wheat Production Prediction in India using ARIMA, Neural Network and Fuzzy Time Series

YearActual Wheat ProductionARIMARBFMLPFuzzy Time Series
200169681704447113668012---
20027276672919704766851171314
20036576169333680136920966333
20047215672296672567017172294
20056863771247672857146569223
20066935571458692037315069204
20077580775788760987525874655
20087857079249785147776177440
20098067981977796558056180203
20108080483173821618348881246
20118687487615863828633987337
20129488294466903468893294441
20139350696192935359114791949
20149585098445917699294195139
20158652793432859759433187683
20168700092056876829537287094
20179851099045981179613298433
20189987010256810011496676100143
201910360010635510442397061103937
202010786011057610867397331107667
202110952011329210870997518109493

{"image_source":{"path":"images/51d7bcac9781f89a4d099814c099dc83ccd70e88542453ea471aa51dd46a5f96.jpg"},"content":"","chart_caption":[{"type":"text","content":"Table 2 shows that wheat production of actual values and forecasted values using different models, namely, ARIMA, RBF, MLP and fuzzy time series."},{"type":"text","content":"Figure 1 Shows that actual and forecasted values of wheat production of various models were compared by using line chart."},{"type":"text","content":"Figure 1: Actual and Forecasted Values of Wheat Production (tonnes)"}],"chart_footnote":[]}

Table 3: Residual Analysis by Different Models

ModelsMAEMAPERMSE
ARIMA3453.94.1884907.1
RBF1361.191.6681972.72
MLP4033.8574.51345171.001
Fuzzy Time Series571.40.6976733.569

{"image_source":{"path":"images/dff69b08ea5646db7df81cda1deaed59ebe104115b931ad5a00250de85373193.jpg"},"content":"","chart_caption":[{"type":"text","content":"Figure 2: Residual Analysis by Using ARIMA, RBF, MLP and Fuzzy Time Series"}],"chart_footnote":[]}

Figure 2 shows that the mean absolute error, mean absolute percentage error and root mean square error obtained by using ARIMA and neural networks for Radial Basics Function and Multilayer Perceptron and fuzzy time series for wheat production prediction. Mean absolute error, mean absolute percentage error and root mean square error of fuzzy time series is less values when compared to ARIMA and neural networks. Mean absolute error, mean absolute percentage error and root mean square error show that the performance of fuzzy time series is better than that of ARIMA and neural networks.

III. CONCLUSION

In this work, three models, namely ARIMA, neural networks and fuzzy time series were used for wheat production prediction in India. Residual analysis for mean absolute error, mean absolute percentage error and root mean square error were compared using bar charts. Mean absolute error, mean absolute percentage error and root mean square error were minimum for fuzzy time series when compared to ARIMA and neural networks. Fuzzy time series is performed better than that of ARIMA and neural networks.

Conflict of Interest

The authors declare no conflict of interest.

Ethical Approval

Not applicable

Data Availability

The datasets used in this study are openly available at [repository link] and the source code is available on GitHub at [GitHub link].

Funding

This work did not receive any external funding.

References

10 Cites in Article

Cite this article

Generating citation...

Related Research

  • Version of record

    v1.0

  • Issue date

    10 January 2023

  • Language

    English

Iconic historic building with domed tower in London, UK.
Open Access
Research Article
CC-BY-NC 4.0
Views 676
Downloads 33
Special Issue

Launch a focused special issue to highlight research, emerging trends, and expert insights in your academic field.

Support