I am trying to predict the failure of equipment that heats up the liquid in a pipeline using a heat exchanger. The heat exchanger gets built up inside the pipe and thus needs to be flushed every once in a while. There are sensors around the device that are collecting data like temperature, flow rate, pressure, etc. every hour. The flushing events happen once or twice a year. The recorded dates for the events are not very specific, only for the month. There is no particular measure that the operators monitor to get an idea of the health of the heat exchanger. The flushing was done neither due to the actual status nor scheduled. But the efficiency should be highest after every flushing. I thought about using anomaly detection, but that applies to equipment that runs normally most of the time and anomalies occurring infrequently. The failure is a constant and gradual process. If there is a pattern in the data it should be a gradually decreasing curve.

Another idea I had was to predict the remaining useful life method. Basically rank the time periods leading to the flushing event by how close in time, with the closest being the most severe. So it is basically a classification problem. But the thing is the flushing date is not exact which only has the month and year. There is a lot of missing values for some of the key measures which might be indicators for on and off time. Plus this is not the same problem as failure prediction because it is not failure. Even if the flushing event doesn't happen, the equipment still works. And before every time the equipment is flushed, the condition of the equipment may vary.

What is the best way to kind of quantify the deterioration rate of the equipment?

  • $\begingroup$ You say "There is no particular measure that the operators monitor to get an idea of the health of the heat exchanger". Strange, if you have a temperature, flowrate, and pressure at the input and the output of the heat exchanger you have everything needed. At least if we are talking about the changes in the thickness of the layer of sedimentation on that parts of pipes which are a bottleneck of the heat exchanger. $\endgroup$ Commented Dec 19, 2019 at 21:22
  • $\begingroup$ @GrzegorzSionkowski What I meant was the decision of flushing was not made on any of the sensor data. The values of temp, flow rate, etc fluctuates and they are affected by PID control loop and load balancer. So any increase or decrease of any measure does not mean much to the operator $\endgroup$
    – ddd
    Commented Dec 19, 2019 at 21:29
  • $\begingroup$ I am talking about the formula connecting all those parameters (search Google for flow rate and look at formulas with pressures and diameters). You can create a synthetic model of a bottleneck, calculate an artificial diameter of the pipe just after flushing and then calculate changes in this diameter in time, and decide when to make flush - when the diameter gets 90% or 75% of the diameter just after flushing. $\endgroup$ Commented Dec 19, 2019 at 21:41
  • $\begingroup$ @GrzegorzSionkowski The flow rate is usually under the full capacity of the pipe. Lots of times, the flow was reduced or increased either manually or by control. Plus the It is actually compressable mixed gas running through the pipe and composition of the gases changes $\endgroup$
    – ddd
    Commented Dec 19, 2019 at 21:45
  • $\begingroup$ A bottleneck is only one problem. The second one is reducing of heat transfer. In this case, knowing the temperature at the input and at the output, heat capacity, and flow rate of the liquid, you can calculate heat flow. If the temperature of the heating media (gases) is constant, heat flow should be almost constant in a wide range of used pressures. Any build-up will reduce heat transfer between the heating media and the working liquid, and the ratio of actual heat flow and heat flow after flush is a proper measure to decide when to make flush. But it is still no problem to solve by ML. $\endgroup$ Commented Dec 20, 2019 at 12:07

2 Answers 2


You should try to frame as a prediction problem. Clearly define the target and then map that target to a technique:

  • Mean time before failure (Survival analysis)
  • Failure rates per million hours (Estimate Poisson distribution)
  • Failure within a time window (Binary classification)

Generally, Bayesian methods are used because the sparse available data can be used as a prior.


another way is to add sensor devices to the equipment and poll them gather a data lake of information. Then take the pass or fail results and train an lstm network with the signals for good operation and failed operation. The network learns the signal of the good which will be large populations and the signals for the bad which will be small populations. The iot sensors will then tell you when an equipment is about to fail based on its sensory data.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.