Battery Predictive Maintenance & Replacement Optimization

Signal Processing & Prediction2026Predictive MaintenanceForecastingDecision Support

Predictive maintenance for battery-powered IoT sensors: a probabilistic remaining-life forecast connected to a cost-aware battery-replacement plan with routes and working hours.

The challenge

A fleet of battery-powered sensors across many buildings has to be maintained. Which batteries should be replaced, and when? Replace too early and remaining life and working time are wasted; too late and the sensor goes offline and requires a costly extra call-out. The plan also has to work with travel time, working days and capacity. The data consisted of voltage and temperature measurements from sensors in operation in Norwegian buildings.

The solution

Remaining useful life is modelled as a distribution, not a single number. A stochastic degradation model (a Wiener process with learned drift and volatility) gives the probability that a battery reaches its end-of-life threshold within the planning window. These probabilities feed a cost model for early replacement, late replacement and deferral, and an optimisation layer decides which batteries to replace, on which day and in which order.

How it was built

This was a two-person project. I implemented the stochastic remaining-life and degradation model and the planning, scheduling and optimisation layer. The model uses both daily values and within-day variation (including how voltage responds to the daily temperature cycle, an indicator of internal resistance), with temperature compensation and seasonal effects, and known censoring times are used explicitly. Planning assigns replacements to days within capacity limits using CP-SAT and optimises routes (exact for small days, heuristics for larger ones), with a fast simulation checked against the reference evaluation. Validation is grouped by building to avoid leakage, and everything runs on CPU within a fixed time limit.

Result

The solution connects forecasting and the maintenance plan end to end. In building-grouped validation, the probabilistic model gave a lower total maintenance cost than both earlier model versions and a policy of replacing nothing. The main lesson was that the model class mattered less than features capturing within-day variation.

Context

The validation scenarios overlap in time, so small differences are not meaningful. Local validation also did not always agree with evaluation on buildings the model had not seen, so some decisions were justified by the cost ratio between early and late replacement rather than by a local score.

Technologies and methods

PythonNumPypandasSciPyscikit-learnOR-Tools (CP-SAT)Wiener-process / first-passage modellingSurvival analysis with censoringRoute optimisation (Held-Karp, 2-opt)Grouped cross-validation