Case study · Mobility

Predict battery failure before it happens.

We turned battery telemetry into a predictive system that identifies failure risk early, at over 98% classifier accuracy on a heavily imbalanced dataset.

Engagement detail

Sector
Mobility
How we worked
Project delivery
Stack
IoT telemetry, Python, SMOTE
Headline
98%+ classifier accuracy

The problem

A battery-as-a-service operator, supplying and maintaining battery packs across an EV fleet, wanted to predict battery failure in advance rather than react to it. IoT devices in each battery continuously capture vitals against threshold limits, but turning that raw stream into an early-warning system meant finding which patterns actually precede a failure — hard, because genuine failure events are rare compared with normal operation.

What we built

In preprocessing we identified the derived metrics that describe degradation (recharge cycles, threshold breaches, intervals between breaches and breach duration) and labelled every row as Healthy, Warning or Breached to train a classifier for real-time data. Because Warning and Breached samples were far rarer than Healthy ones, we corrected the imbalance with Synthetic Minority Oversampling (SMOTE). Visualising breach patterns also showed malfunctions cluster in a specific voltage range, confirming that Warning has a measurable, predictive relationship with Breached.

Impact

  • Over 98% accuracy, read alongside the other measures because accuracy alone flatters an imbalanced set.
  • Precision, recall and F1 between 0.78 and 0.82 — strong given the class imbalance.
  • A validated, data-driven basis for predicting breaches before they occur.

On sourcing. Every fact and figure here comes from Sail Analytics' project record for this engagement. Client names are withheld where they were not released for publication.

The measured result

What the client measured.

98%+

Classifier accuracy

On a heavily imbalanced set.

0.78–0.82

Precision, recall, F1

Across all three measures.

Have a problem like this?

Tell us the systems you're working with and what you can't currently see.