I am trying to forecast nationwide demand for a water system. The system I am modelling is highly seasonal (with daily, weekly, and annual seasonalities, at least).

The challenge:

I already have a series of forecast values for the average demand over 24 hours over the next 14 days. For each of these, I would like to convert them to a points with 3-hourly resolution within each 24 hour period. I have several years worth of historical data with 3-hourly resolution that could inform how to fit the points.

The criteria I need to meet are:

  • The 3-hourly forecast must still produce the same 24-hour average value it is derived from
  • The overall curve should be continuous, and avoid unusual 'jumps' between each 24 hour period

Exploration so far:

  • Given the forecasting problem involves multiple seasonalities, it sounds like TBATS would be a good start. However, I'm not sure how to modify TBATS to ensure that each day, the average would still come out the the value I currently have forecast. I'm also not sure whether such modifications would have to be done on a day-by-day basis, and risks having unusual 'jumps' in values between the last point of one day and the first point of the next
  • Alternately, I was thinking of filtering past days for the most relevant ones, taking some sort of weighted average of their points, and scaling it somehow to ensure that the average is maintained. Again, I suspect there would be unusual 'jumps' in values between the last point of one day and the first point of the next

The ask:

Can anyone provide any pointers on either:

  • How to fit TBATS values to fit the average for each day?
  • Some other way to achieve a similar result?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.