Arima Garch R

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

IJCSI International Journal of Computer Science Issues, Vol.

9, Issue 6, No 1, November 2012


ISSN (Online): 1694-0814
www.IJCSI.org 341

Application of Analytics using R Programming for


Forecasting
Forecasting Day-
Day-ahead Electricity Demand
ChandraBhushan Kesavabhotla1, Professor V. V. HaraGopal2, Professor A. Vinay Babu3
1
Department of Computer Science and Engineering, Jawaharlal Nehru Technological University, Hyderabad, India
2
Department of Statistics, Osmania University, Hyderabad, India
3
Department of Computer Science and Engineering, Jawaharlal Nehru Technological University, Hyderabad, India

Abstract (Seasonal Autoregressive Integrated Moving-Average)


Analytics technologies are becoming increasingly important and GARCH (Generalized Autoregressive
for the organizations to mine and get insights into large amount Heteroskedasticity) models to predict the daily demand
of structured and unstructured data, and also to enable effective with a Mean Absolute Percent Error (MAPE) of 1.42%.
decision making for the management. One of the challenges for Ching-Lai and Simon J Watson [2] worked on ARIMA
power industry is to estimate the Day-ahead power demand
specifically to predict the peak and low demand periods. In this
(Autoregressive Integrated Moving Average) and
paper, the modeling techniques of analytics for forecasting are GARCH models to forecast the daily load of electricity
discussed. This paper investigates application of ARMA and in UK with Mean Absolute Percent Error of 1-3% for
GARCH modeling techniques to fit the historical data and each month and analyzed the influence of the climate
estimate the coefficients to predict the Day-ahead electricity change in the power demand. Nowicka-Zagrajck and
demand. R-Programming is used to fit the models. Weron [3] studied electricity load patterns of California
Keywords: ARMA, ARCH, Electricity Demand, Estimation, state and proposed ARMA (Autoregressive Moving
Forecasting, GARCH, Modeling, R-Code. Average) time series with hyperbolic noise. Reinaldo
and Javier[4] have studied electricity prices in Spain and
1. Introduction California and proposed GARCH model to predict the
volatility of Day-ahead electricity prices. Chengjun Li,
The demand forecasting in electricity has become one of Ming Zhang[5] compared the GARCH and ARMA
the most critical economy factors for many countries models to predict the hourly electricity prices in
especially for those with scarce energy resources or high California market. Ramakrishna and et al [6] proposed a
costs of generation of electricity. The power industry Neural Network model to forecast monthly electricity
requires forecasts for both short term such as hours or load. They compared the ANN(Artificial Neural
days ahead and long term like 5,10, 15 years ahead. Networks) model with SARIMA. Some of the
The short-term forecasts are becoming increasingly researchers indicated [7, 8, 9] that ANN may not always
important to manage the peak and low demand days outperform as compared to other forecast models due to
efficiently and also for planning periodic monthly, the challenges in validations, and accurate systematic
quarterly, and yearly electricity demand. A unique testing.
feature of electricity is that unlike the manufactured
goods which can be stored and utilized, electricity is not The objective of this paper is to study the historical daily
storable which makes the supply and demand electricity load of Andhra Pradesh state, India and
management very complex. forecast the Day-ahead electricity demand using ARMA
and GARCH models. R-Programming is used with step
by step process to fit the models. The data considered in
There are various factors that influence daily electricity this paper is from Andhra Pradesh Transmission
demand on a power system such as seasons, weather Company, India. The R-Project is an Open Source
conditions, and other local variables like public holidays, Software. The R Notes [11] from R-Project is referred
economy situation (economic boom or recession period) for R Programming syntax.
in any country. Many of these factors are different for
each country depending on the geographical location,
culture, and the country and/or state dependency on the
2. Data Preparation
resources of power generation. The electricity demand
For the purpose of study, the data population of 375
planning also needs to accommodate the additional
observations from Daily Electricity Load of Andhra
demand due to the growth in new industries, residential
Pradesh State, India between 2005 and 2006 is
and agriculture needs.
considered. To identify and fit the model, 365 daily
electricity observations of 2005 year are used for
The demand prediction methods and techniques are
sampling and forecasting 10 days-ahead electricity
chosen based on the scenario, One model fit for all
demand. 10 observations of 2006 are considered for
may not work for multiple scenarios across the
comparing the predicted electricity demand. The fitted
countries as the conditions may not be same. Sigauke
model can be applied to all the other years to validate the
and Chikobvu [1] predicted the daily peak electricity
model. The preliminary data analysis is indicated in the
demand in South Africa using volatility forecasting
Table 1, consists of the average daily load in each year,
models. They designed a hybrid regressive SARIMA

Copyright (c) 2012 International Journal of Computer Science Issues. All Rights Reserved.
IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 6, No 1, November 2012
ISSN (Online): 1694-0814
www.IJCSI.org 342

year on year change in average daily load, minimum where a0 is set to zero if no intercept is included, p is the
daily load in each year, and maximum daily load in each autoregressive process order and q is the moving
year. average process order.
Table 1: Data Analysis for 5 years (Power Load in Giga Watts)
The Best-Fit p and q order values of ARMA model
can be determined by using the smallest AIC (Akaike
Information Criterion) through the following R-Code:

The trend in the Table 1 shows that the average day load,
minimum, and maximum day load increased across the
years.

Figure 1: Time Series plot of the Daily Electricity Load pattern.

The above code compares the AIC of each iteration with


The time series of daily electricity load of 2005 is the previous iteration of ARMA function with changed p
plotted in Figure 1. The data exhibits peaks and lows and q values. The output of the above code is 1, 1 with
with increasing and decreasing trend of variances. There smallest AIC. ARMA (1, 1) is the identified model to
is no consistent trend (upward or downward) over the estimate the coefficients and fit the data to the model.
entire time span considered. The series appears to move The Autocorrelation Function plot of the model in
up and down. In the case of annual data, the seasonal Figure 2 depicts that the Autocorrelation is decayed
factors may not have significant influence on the rapidly to zero after initial lags.
variances. There are no outliers. It may be difficult to
conclude from the above whether the variance is
constant or not and needs to be tested with a suitable
model. The data in Giga Watt is captured in a CSV file.
The data is loaded into R-Project from a flat file and
converted to time series as follows:

The step-wise methodology used in this paper is to identify a


model, estimate the coefficients, fit the sample data and
forecast the predicted load.

3. Time Series Model -ARMA


3.1 Identification of the model
Figure 2: ACF plot of the observations.
The general ARMA statistical model is used to describe
a time series that evolves over time.
3.2 Estimation
The ARMA(p, q) process for {xt} time series is
represented as
The Estimation of coefficients for the identified model
x t = a0 + a1xt-1 + + apxt-p + b1et-1 + ARMA (1, 1) is done as follows:
+ bqet-q + et .(1)

Copyright (c) 2012 International Journal of Computer Science Issues. All Rights Reserved.
IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 6, No 1, November 2012
ISSN (Online): 1694-0814
www.IJCSI.org 343

The output of ARMA fit is shown in the Table 2, it


consists of coefficients, p-values. ACF and PACF of
residuals are plotted in the Figure 3 and Figure 4
respectively.

Table 2: ARMA (1, 1) Model Estimation

Figure 5: ACF plot of Squared Residuals

Except at the initial lags, all sample autocorrelations are


within the 95 % confidence bounds. The residuals appear
to be random after initial spikes. Ljung-Box Test is used
to test the randomness on residuals and test is carried out
for the lags till p-value 5% significance level. This can
be achieved through the following R-Code:

Both AR and MA p-values are significant at 5% level.


This implies the first order coefficients of AR and MA
are sufficient to fit the model to the data.

The output of Ljung-Box test is shown in the Table 3.


Figure 3: ACF plot of residuals of Model ARMA (1, 1)
Table 3: Ljung-Box Test on the Residuals series

Figure 4: PACF plot of residuals of Model ARMA (1, 1)


Ljung-Box test has given p-values significant at 5%
There are no significant peaks in ACF and PACF plots,
from lag 7 onwards with a statistic value of 21.79 and
implies that there are no autocorrelations. The ACF plot
degrees freedom of 22. This implies that there are some
of squared residuals is shown Figure 5.
autocorrelations in the initial lags and these vanish after

Copyright (c) 2012 International Journal of Computer Science Issues. All Rights Reserved.
IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 6, No 1, November 2012
ISSN (Online): 1694-0814
www.IJCSI.org 344

lag 6. The ARMA(1,1) is adequate to fit this data. The linearity in the errors. The fitted model assumes
number of predictions ahead for short duration is more constant variances i.e. homoskedasticity and the
accurate than that of long duration ahead in this model predictions become inaccurate with increase in the time
which is good enough for forecasting the Day-ahead lags , in reality the variances may not be constant. For
electricity load for weekly planning. example, electricity usage at nighttime may have more
steady pattern compare to that of daytime usage i.e. the
3.3 Forecasting of Day-ahead Electricity variances in nighttime may be lower than that during at
Demand daytime. Thus, the daytime usage plays a significant
factor in the daily load variances. This behavior is called
The ARMA(1,1) model equation with the estimated ARCH effect i.e. Autoregressive model with conditional
coefficients is heteroskedasticity (conditional on time). McLeod test
can be used to analyze if there is any conditional
xt = 9.91 + 0.9285xt-1 +0.3161 et-1 + et (2) heteroskedasticity in the residuals i.e. ARCH
The R-Code to forecast 10 Day-ahead demand is as (Autoregressive Conditional Heteroskedasticity) effect.
follows:
3.4 Test for Heteroskedasticity in the residuals

McLeod-Li test checks for the presence of conditional


The predicted values with 80-95% confidence bounds heteroskedasticity by computing Ljung-Box test with
are captured in Table 4 along with the observed values the squared data or with the squared residuals from an
of 2006 for comparison. ARMA model. The R-Code for the test is

Table 4: ARMA(1,1) predicted values

The test with 25 lags has given a statistic value of 61.13,


degrees of freedom 22 with a p-value of 0.00002 at 5%
level of significance. These results are depicted in the
Figure 7. Thus the null hypothesis stated linear or
constant variances is rejected. There is an ARCH effect
in the daily electricity load variances across the days.
The predicted values of ARMA model are plotted in the
time series in the Figure 6.

Figure 7: McLeod Test results on the residuals

Jarque-Bera Test is another popular test for testing


simultaneously the normality and homoskedasticity of
Figure 6: Predicted Day-ahead Electricity Demand
residuals in a time series data.
The above results show that ARMA(1,1) can be used for
forecasting Day-ahead electricity load. However to
predict for longer periods and to improve the accuracy
within the confidence bounds, it is necessary to test non-

Copyright (c) 2012 International Journal of Computer Science Issues. All Rights Reserved.
IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 6, No 1, November 2012
ISSN (Online): 1694-0814
www.IJCSI.org 345

This test has given a statistics value = 137.4599, degrees conditional mean model. The residuals can still be
of freedom = 2, and a p-value < 2.2e-16 at 5% level of serially dependent.
significance. Thus, the null hypothesis stated the For Engle's ARCH test of autocorrelation in the squared
residuals are normal and homoskedastic is rejected. residuals , the alternative hypothesis is given by the
Both the tests implied that there is a volatility in the regression
daily load and the variances may have stochastic pattern.
Thus, the heteroskedasticity of errors needs further H : e2t = 0 + 1e2t-1 + . + m e2t-m + ut .(6)
analysis using a non-linear model such as GARCH
where ut is a noise error process. The null hypothesis is
where the variances themselves are modeled as AR(p)
H0 : 0 = 1 = . = m = 0 . (7)
(Autoregressive process of order p) model. Since both
positive and negative changes are observed in the daily Ljung-Box Q-Test can be conducted on the first m lags
electricity load this is another factor for considering a of the squared residual series to check for serial
nonlinear model to analyze the errors. dependence, this is an alternative to Engles ARCH
effect.
4. GARCH Model for the variances
4.1 GARCH Model 4.2 Estimation of Coefficients
GARCH, a non-linear model treats heteroskedasticity as
a variance to be modeled[11], for each error term a The GARCH( p, q) model is applied on the daily
prediction is estimated for the variance apart from difference data to determine the p and q terms where p
correcting the deficiencies of least squares. The GARCH is the order of GARCH term 2 , standard deviation and
model measures the volatility like a standard deviation q is the order of ARCH term 2, mean error. The R-Code
which is used in the decision making where the to identify GARCH model & fit the model to the
differential values are critical such as Electricity residuals data and predict the variances is given below:
demand Day-ahead forecast, risk analysis, Electricity
prices in the deregulated market, portfolio returns in the
stock market, etc.
If a time series is defined as
The p and q values are changed iteratively in the above
yt = t + t .. (3)
code. AIC, and LM ( Lagrange Multiplier) ARCH Test
where t is the conditional mean, and t is a residual p-values are captured for each iteration in the Table 5.
process with mean zero.
Table 5: GARCH model with p, q values
The residuals are generated as t = t z t

where zt is an identically distributed process and


independent with mean 0 and variance 1. Thus, E( t
t+h) =0 for all lags, h is not equal to zero and the
residuals are uncorrelated.
There are two cases of p , and q : (1,1) and (2,2) with
If H t denotes history of the process available at time t low AIC within 2 decimals in the Table 5. Either of
then the conditional variance of yt is these can be considered as the best but since BIC is
2 lower for (1,1), the best values of p and q are taken as 1
Var(yt | H t-1) =Var( t | H t-1) = E(2t | H t-1) = t .. (4) and 1. The LM test for GARCH(1,1) has p-value <5%
Thus in the squared residual process , conditional level of significance. Thus, the null hypothesis stated
heteroskedasticity is equivalent to autocorrelation. no ARCH effect or no conditional heteroskedasticity in
The residual series is defined as the residuals is rejected.
^
et = yt - t .(5) The p-values of residuals and squared residuals of
Ljung-Box Q statistics of GARCH(1,1) are given in the
The residuals are uncorrelated with mean zero when the
Table 6. The p-values of residuals are < 5% level of
autocorrelations in the series yt are included in the
significance which indicates no presence of

Copyright (c) 2012 International Journal of Computer Science Issues. All Rights Reserved.
IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 6, No 1, November 2012
ISSN (Online): 1694-0814
www.IJCSI.org 346

autocorrelations, however the squared residuals indicate


some time dependency in the series and except at lag 15
where there are no autocorrelations.

Table 6: LB test of residuals using GARCH(1,1)

Figure 10: QQ plot of GARCH model

The QQ plot of GARCH indicates heavy tail.

The time series plot of residuals in Figure 8 has a few


peaks beyond the boundaries and it is exhibiting
volatility clustering. The peaks of residuals match with
the peaks of standard deviation plotted in Figure 9

Figure 11: ACF plot of standardized residuals.

Figure 8 : Residuals plot of GARCH process.

Figure 12: ACF plot of Squared Standardized Residuals

The ACF of residuals in the Figure 11 shows there are


peaks i.e. autocorrelations but within ACF boundary. In
the case of Squared residuals plot shown in Figure 12,
some of these peaks are reduced.
The coefficients of GARCH(1,1) model are estimated
using the garchFit function. The coefficients estimated
Figure 9: Standard deviation plot
for GARCH(1,1) are shown in the Table 7.
The standard deviation of GARCH process indicates
Table 7 Coefficients of GARCH(1,1) model
that there is a high volatility in the middle and at the end
of the year. The QQ plot is shown Figure 10. The ACF
of standardized residuals is shown in Figure 11. The
ACF plot of squared residuals is shown in Figure 12.

Copyright (c) 2012 International Journal of Computer Science Issues. All Rights Reserved.
IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 6, No 1, November 2012
ISSN (Online): 1694-0814
www.IJCSI.org 347

4.3 Forecasting of Variances It is observed that the standard deviation and mean error
values are equal in the predictions. Let us combine
The GARCH(1,1) with the estimated coefficients is ARMA and GARCH for conditional mean and
represented as : conditional variances and predicted the values as
2t = 0.00265 + 0.3786 x2t-1 +0.3966 2t-1 .(8) follows:
The following R-Code uses the above coefficients for
GARCH predictions.

The output of R-Code is the Predicted variances,


shown in the Table 8. The predicted values are shown in Table 9. The Mean
Table 8: Predicted values using GARCH(1,1)
forecast plot is shown in Figure 15. The standard
deviation of forecast errors is shown in Figure 16. The
Mean Error Forecast is shown in Figure 17.

Table 9: Predicted values using ARMA+GARCH(1,1)

The forecasted standard deviation(SD) is plotted in


Figure 13. The variance in SD is high in the initial lags,
it is flat i.e. constant after 20 lags.

Figure 13: SD Forecast Plot from GARCH predictions.

The Mean Error (ME) plot of forecast in Figure 14


shows that it is in the range of 1-3.5%.
Figure 15: Mean forecast of ARMA+GARCH

The standard deviation and mean error have different


values at lower decimal i.e. 4th decimal digit onwards.

The mean forecast values are varied up to lag 10 and


became steady after that. In this also, at lower decimals
the values are changing steadily. As substantiated in the
section 3.2 where the predictions for short term is more
accurate than that for long term, the conditional
Figure 14: Mean Error of forecast variances are also more accurate in the initial lags.

Copyright (c) 2012 International Journal of Computer Science Issues. All Rights Reserved.
IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 6, No 1, November 2012
ISSN (Online): 1694-0814
www.IJCSI.org 348

6. References

[1] C. Sigauke, D. Chikobvu, Prediction of daily peak


electricity demand in South Africa using volatility
forecasting models, Energy Economic, Elsevier,
33(5), September 2011 :882:888
Figure 16: Standard Deviation of Forecast
[2] Ching-Lai Hor, Member, IEEE, Simon J. Watson
Member, IEEE and Shanti Majithia , Daily Load
Forecasting and Maximum Demand Estimation
using ARIMA and GARCH ; 9th International
Conference on Probabilistic Methods Applied to
Power Systems KTH, Stockholm, Sweden June 11-
15, 2006;pp-1-6
[3] J.Nowicka-Zagrajek, R Weron; Modeling electricity
loads in California: ARMA models with hyperbolic
Figure 17: Mean Error Forecast noise, Elsevier , Singal Processing 82 (2002), pp-
1903-1915
Thus, the predicted Electricity Demand based on the [4] Reinaldo C. Garcia, Javier Contreras, Marco van
Akkeren, and Joao Batista C. Garcia; A GARCh
ARMA(1,1) along with the non-linear behavior of
Forecasting Model to Predict Day-ahead Electricity
variances improved the accuracy of forecast. Prices, IEEE Transactions on Power Systems, Vol.
20, No. 2, May 2005, pp: 867-874
5. Conclusion [5] Chengjun Li, Ming Zhang ; Application of GARCH
Model in the Forecasting of Day-ahead Electricity
In this paper , the ARMA and GARCH models are used Prices; IEEE Computer Society ,Third
to forecast the Day-ahead electricity demand. The International Conference on Natural Computation
(ICNC 2007)
ARMA(1,1) model has given predictions of Day-ahead
[6] R Ramakrishna, Naveen Kumar Boiroju and M
electricity demand with 80-95% confidence bounds for Krishna Reddy, Neural Networks Forecasting
short durations. However the assumption of constant Model for Monthly Electricity Load in Andhra
variance of residuals is not true in reality for various Pradesh, International Journal of Engineering
reasons as: there are always variances in any annual Research and Applications , Vol. 2, Issue 1, Jan-Feb
data it could be daily electricity load data , daily 2012, pp.1108-1115
[7] S. Makridakis, S.C. Wheelwright, R.J. Hyndman,
electricity prices, returns and risk profile in stock market
ForecastingMethods and Applications, 3rd
etc. The residuals are tested for ARCH effects i.e. Edition, Wiley, New York, 1998.
conditional heteroskedasticity using McLeod and Ljung- [8] Curia, C. Chatfield , Forecasting in the 1990s, in:
Box tests. The GARCH(1,1) model is identified and Proceedings of the V Annual Conference of
estimated the coefficients to fit the model to the residuals Portuguese Society of Statistics, ,1997 pp. 5763
and predicted the conditional variances. From the results [9] H.S. Hippert, C.E. Pedreira, R.C. Souza, Neural
it is concluded that it is always a good practice to test the networks for short-term load forecasting: a review
and evaluation IEEE Trans. Power Systems, 16 (1)
volatility of variances or errors and standard deviations
(2001) 4455
after fitting the linear models to improve the accuracy of [10] W.N. Venables, D. M. Smith, and the R Core
predictions. The nonlinear issues of variances/errors can Team, Introduction to R Notes on R: A
be handled appropriately through GARCH model Programming Environment for Data Analysis and
which provide flexibility to coexist with the other Graphics Version 2.1 (2012-06-22)
models. The combination of ARMA and GARCH [11]Robert Engle , GARCH101: The use of
models is giving accurate forecasting in high volatility ARCH/GARCH Models in Applied
Econometrics,2001
scenarios. R-programming is well suited for modeling
and forecasting of electricity demand in this case. There K Chandrabhushan received his M. Tech degree from
is further scope to extend the model by considering Osmania University and B.Tech from Indian Institute
larger sample with 2 to 3 years observations and of Science. He has over 2 decades of experience in IT
compare the accuracy of the predicted electricity Industry in the areas - IT Consultancy, Business
demand. Analytics, Enterprise Application Packages
Implementation and Custom Development. He is doing

Copyright (c) 2012 International Journal of Computer Science Issues. All Rights Reserved.
IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 6, No 1, November 2012
ISSN (Online): 1694-0814
www.IJCSI.org 349

his Ph. D from JNTU, Hyderabad, India, in Computer


Science in Analytics area.
Dr. V V HaraGopal received his Ph.D in Statistics from
Osmania University. He has been a full professor in the
Department of Statistics and Head. He has published
over 40 papers to his credit so far in the areas-
Multivariate Data Analysis, Operations Research,
Pattern Recognition, Image Processing and Group
testing. He has conducted national and international
level conferences.
Dr. A. Vinay Babu, Professor in Computer Science,
Principal, JNTU, Hyderabad, India, received his Ph.D in
Computer Science. He guided 9 PhDs and many more
PhD Scholars are working under his Guidance. He has
published more than 82 Research publications to his
credit so far in his specialization such as algorithms, data
mining, parallel algorithms, networks and related areas.
He received various awards for his contribution such as
Jewel of India 08, Best Computer Science Teacher
Award, Distinguished Academician, and others

Copyright (c) 2012 International Journal of Computer Science Issues. All Rights Reserved.

You might also like