Hacker News new | ask | show | jobs
by andersonvieira 2078 days ago
I understand it may not be recommended in complex situations, such as you described, but I think @steve_g's idea may be interesting for some scenarios.

I work in automatic train traffic planning, mainly for heavy-haul railways [1]. Recently, we've been working on a regression model to predict train sectional running times based on historical data.

As our tool is used during real time operation, we can't risk the model outputting an infeasible value. So we're thinking about defining possible speed intervals, e.g. (0km/h, 80km/h] for ore trains, and falling back to a default value if the predicted running time causes the speed to fall out of this range.

[1] https://railmp.com/en/our-solution/

2 comments

Might want to look at 'guarded' learning. This https://arxiv.org/abs/2006.03863?context=cs.SE might inspire you. In one team we managed to train with both simulation and data and 'force' the trained model to infer within the 'security' simulation.

I think there might be some better research on this... Not bothered to look it up much.

To me this sounds like a bad misunderstanding of regression and your use case. If you need a system capable of predicting within an interval, you should use something different, for example you could use Bayesian regression with a prior that only has support on your permitted domain.

You very much should be choosing models that actually map to the physical reality of your problem domain, and not using something that is fundamentally unphysical for your use case, but attempting to correct it with hand made business logic.