Non-stimulation phase between training and forecast requires 'pseudo-planning'
The email thread is as follows: Which means that the training data would have to be trimmed to only the times where there is stimulation (and events) and the period between end of stimulation and start of desired forecast period would then turn into 'forecast' time rather than training time. Dieter's code would run a forecast for the intervening period too, producing results for the non-stimulation time, then at the end we would have to trim the forecast down to only the period we want.
This is what I gathered from the emails below - this might not be entirely accurate but it is what I think is required. (Talk to Antonio/Dimitrios about this further)
Hi Laura,
It is extremely important to see what the model is doing for the training period. HM1 is based on the full history. I am not sure you can start the forecast directly at 10am on Feb 7th, when the injection ends on Feb 6th at ~20. Why shouldn't I be able to ask for a forecast at this time? the 'injection' does end earlier but the observed data lasts up until about this time (but there is no flow). Are you saying that the model does not cope with any training data that includes times when injection is not happening? If so, that is a serious constraint and maybe the model adaptor has to do some preprocessing to trim down the training data to only the times when injection is happening.
Yes that’s exactly what I tried to explain in an earlier email, that for some reason HM1 training stops at ~20 on Feb 6th, hence you need to consider the training from Feb 6th at 20 until the starting of forecast (Feb 7th at 10) as a pseudo planning. As a rule of thumb you can take the time of the last event in the catalog to trim the training and consider the remains as planned. The model actually stops a bit earlier, but I was not able to understand which is the criterion to determine when it stops (for sure not when the flow rate is zero, as I tried that already).
Looking forward to have a look at the files.
Antonio
Also, while I am thinking about it... You say that if the forecast period does not happen directly after the training period, there are problems. So what should we do if the model is trained on a set of data from maybe 1 year ago - does the entire intermediate period have to be 'pseudo forecast' where the forecast start time actually happens at the end of training and not at the start of forecasting? If so, then it is quite a large constraint on the model. Are there plans to change this behaviour?
I am not going to try to alter the model adaptor further right now to cope with forecasting dead time because Bedretto is only going to need a forecast directly after a training time, I believe.
Cheers, Laura