In addition to forecasting future values, the prediction engine at the
proxy also provides a confidence interval for each predicted value.
The confidence interval represents a bound on the error in the
predicted value and is crucial for query processing at the proxy.
Since each query arrives with an error tolerance, the proxy compares
the error tolerance of a query with the confidence interval of the
predictions, and the current push threshold, . If the
confidence interval is tighter than the error tolerance, then the
predicted values are sufficiently accurate to respond to the query.
Otherwise the actual value is fetched from the remote sensor to answer
the query. Thus, many queries can be processed locally even if the
requested data was never reported by the sensor. As a result, PRESTO
can ensure low latencies for such queries without compromising
their error tolerance. The processing of queries in this fashion is
similar to that proposed in the BBQ data acquisition system
[3], although there are significant differences in the
techniques.
For a Seasonal ARIMA
model, the confidence
interval of
step ahead forecast,
is:
where
is value of the unit Normal distribution at
,
is the variance of
step ahead prediction error.