Read automatically from the scorecard below — every claim can be checked against it.
Average RMSE (% SOC) per test case, weighted into the leaderboard score. Lower is better.
3.27 %
| Test case | RMSE | Relative | Weight | Weight × RMSE |
|---|---|---|---|---|
| Estimation accuracyT1All cells(reference only — every other test is a subset of it) | 2.56 % | 0.0000 | 0.0000 | |
| T2Blinded cell (m448) | 2.45 % | 0.1000 | 0.2448 | |
| T3 |
The runs that separate estimators — cold and hot cycles, the blinded cell, wrong initial SOC, a biased current sensor. Each plot says why it is there.
The thirteen cycles the original MATLAB tool plotted, one per test: blinded vs non-blinded cell (tests 1–3), drive vs charge (test 4), the three payloads on one cycle (tests 5–6), standard vs non-standard highway profiles (tests 7–8) and the temperature extremes (test 9).
m80 UDDS at -20 °C
Whole cycle · RMSE 5.55 %, max 16.3 %
Why this case: Test 9 — coldest condition: high resistance and a strongly non-linear OCV response — the hardest cycle for most estimators.
Three cycles restarted with the estimator told the battery is at 90, 60 or 30 % while it is really full. Coulomb counting can never recover; voltage-informed estimators converge at a rate that is very visible here.
Wrong initial SOC 90 % — m80 LA92 at 25 °C
Whole cycle · RMSE 2.17 %, max 12.7 %
Why this case: The cycle is joined at the point where the true SOC has already fallen to 90 %, so a model that assumes a full battery at start-up begins 10 % off. What matters is how fast the estimate converges onto the truth.
Three cycles re-run with ±0.3 A added to the measured current. Integration-based estimators drift steadily; the plot shows whether and how fast the model corrects the bias.
Current-sensor offset -0.3 A — m1000 US06 at -10 °C
Whole cycle · RMSE 3.49 %, max 5.8 %
Why this case: A constant -0.3 A is added to the measured current before it reaches the model. Pure current integration drifts linearly; estimators that also use voltage should correct it.
RMSE vs. sensor offset
Test 11 — the same three cycles re-run with a constant current offset; 0 A is the unmodified run. Only ±0.3 A enters the score.
Error by test case
Average RMS error (% SOC) for each blinded test case. Lower is better.
Error vs. ambient temperature
Test 9 — m80 cell, all blinded cycles at each chamber temperature.
| Cell | Temp. | Cycle | Duration | RMSE | MAE | MAXE |
|---|---|---|---|---|---|---|
| m80 | -10 °C | UDDS | 6.32 h | 3.15 | 2.90 | 6.00 |
| m80 | -10 °C | HWFET | 3.02 h | 3.57 | 3.31 | 7.01 |
| m80 | -10 °C | LA92 | 4.74 h | 3.95 | 3.58 | 8.60 |
| m80 | -10 °C | US06 | 2.30 h | 3.89 | 3.42 | 6.87 |
| m80 | -10 °C | HWCUST | 1.69 h | 3.13 | 2.86 | 7.26 |
| m80 | -10 °C | HWGRADE | 1.24 h | 3.69 | 3.32 | 6.74 |
| m80 | -20 °C | UDDS | 4.62 h | 5.54 | 4.70 | 16.27 |
| m80 | -20 °C | HWFET | 2.34 h | 3.44 | 2.76 | 10.60 |
| m80 | -20 °C | LA92 | 3.54 h | 5.08 | 4.02 | 15.55 |
| m80 | -20 °C | US06 | 1.86 h | 2.27 | 1.77 | 8.66 |
| m80 | -20 °C | HWCUST | 1.37 h | 1.71 | 1.61 | 3.21 |
| m80 | -20 °C | HWGRADE | 1.25 h | 3.40 | 2.58 | 10.06 |
| m80 | 0 °C | UDDS | 8.75 h | 1.68 | 1.42 | 4.38 |
| m80 | 0 °C | HWFET | 3.84 h | 1.59 | 1.46 | 2.99 |
| m80 | 0 °C | LA92 | 6.39 h | 1.66 | 1.48 | 3.31 |
| m80 | 0 °C | US06 | 2.93 h | 2.26 | 1.98 | 3.45 |
| m80 | 0 °C | HWCUST | 2.08 h | 2.92 | 2.69 | 4.03 |
| m80 | 0 °C | HWGRADE | 1.64 h | 3.89 | 3.46 | 6.47 |
| m80 | 10 °C | UDDS | 11.32 h | 1.79 | 1.29 | 4.37 |
| m80 | 10 °C | HWFET | 4.49 h | 1.88 | 1.53 | 3.68 |
| m80 | 10 °C | LA92 | 7.88 h | 2.00 | 1.62 | 4.33 |
| m80 | 10 °C | US06 | 3.42 h | 1.45 | 1.21 | 3.73 |
| m80 | 10 °C | HWCUST | 2.42 h | 1.47 | 1.15 | 2.92 |
| m80 | 10 °C | HWGRADE | 1.80 h | 2.84 | 2.60 | 4.74 |
| m80 | 25 °C | UDDS | 16.13 h | 1.26 | 0.97 | 3.44 |
| m80 | 25 °C | HWFET | 5.52 h | 1.75 | 1.59 | 3.51 |
| m80 | 25 °C | LA92 | 10.58 h | 1.59 | 1.41 | 3.53 |
| m80 | 25 °C | US06 | 4.22 h | 1.59 | 1.45 | 3.08 |
| m80 | 25 °C | HWCUST | 2.86 h | 2.06 | 1.95 | 3.30 |
| m80 | 25 °C | HWGRADE | 2.33 h | 1.90 | 1.64 | 4.33 |
| m80 | 40 °C | UDDS | 12.40 h | 1.53 | 1.26 | 3.27 |
| m80 | 40 °C | HWFET | 5.41 h | 1.05 | 0.85 | 2.72 |
| m80 | 40 °C | LA92 | 9.07 h | 1.20 | 0.97 | 3.20 |
| m80 | 40 °C | US06 | 4.17 h | 0.92 | 0.70 | 2.92 |
| m80 | 40 °C | HWCUST | 2.95 h | 0.85 | 0.64 | 2.09 |
| m80 | 40 °C | HWGRADE | 2.73 h | 1.36 | 1.13 | 3.29 |
| m448 | -10 °C | UDDS | 6.23 h | 3.37 | 3.10 | 5.59 |
| m448 | -10 °C | HWFET | 3.01 h | 3.78 | 3.51 | 6.67 |
| m448 | -10 °C | LA92 | 4.59 h | 4.10 | 3.67 | 6.71 |
| m448 | -10 °C | US06 | 2.25 h | 4.03 | 3.44 | 6.46 |
| m448 | -10 °C | HWCUST | 1.69 h | 3.17 | 2.90 | 7.64 |
| m448 | -10 °C | HWGRADE | 1.22 h | 3.94 | 3.56 | 6.72 |
| m448 | -20 °C | UDDS | 4.56 h | 5.51 | 4.74 | 15.85 |
| m448 | -20 °C | HWFET | 2.34 h | 3.46 | 2.81 | 10.58 |
| m448 | -20 °C | LA92 | 3.46 h | 4.59 | 3.75 | 14.21 |
| m448 | -20 °C | US06 | 1.80 h | 2.04 | 1.65 | 7.72 |
| m448 | -20 °C | HWCUST | 1.39 h | 1.48 | 1.39 | 2.62 |
| m448 | -20 °C | HWGRADE | 1.23 h | 3.23 | 2.48 | 8.90 |
| m448 | 0 °C | UDDS | 8.60 h | 1.66 | 1.39 | 4.09 |
| m448 | 0 °C | HWFET | 3.83 h | 1.58 | 1.47 | 2.85 |
| m448 | 0 °C | LA92 | 6.16 h | 1.65 | 1.38 | 2.99 |
| m448 | 0 °C | US06 | 2.87 h | 2.44 | 2.16 | 3.68 |
| m448 | 0 °C | HWCUST | 2.09 h | 3.13 | 2.88 | 4.38 |
| m448 | 0 °C | HWGRADE | 1.51 h | 4.71 | 4.30 | 8.41 |
| m448 | 10 °C | UDDS | 11.08 h | 1.98 | 1.41 | 4.83 |
| m448 | 10 °C | HWFET | 4.47 h | 1.51 | 1.27 | 2.95 |
| m448 | 10 °C | LA92 | 7.60 h | 2.25 | 1.63 | 5.14 |
| m448 | 10 °C | US06 | 3.35 h | 2.12 | 1.69 | 4.18 |
| m448 | 10 °C | HWCUST | 2.42 h | 1.95 | 1.68 | 3.35 |
| m448 | 10 °C | HWGRADE | 1.68 h | 2.98 | 2.68 | 5.06 |
| m448 | 25 °C | UDDS | 15.59 h | 1.76 | 1.60 | 3.44 |
| m448 | 25 °C | HWFET | 5.46 h | 1.63 | 1.49 | 3.28 |
| m448 | 25 °C | LA92 | 10.06 h | 1.53 | 1.39 | 3.75 |
| m448 | 25 °C | US06 | 4.07 h | 1.69 | 1.49 | 3.71 |
| m448 | 25 °C | HWCUST | 2.86 h | 1.90 | 1.81 | 3.23 |
| m448 | 25 °C | HWGRADE | 2.19 h | 1.79 | 1.54 | 3.90 |
| m448 | 40 °C | UDDS | 12.09 h | 1.78 | 1.50 | 3.89 |
| m448 | 40 °C | HWFET | 5.21 h | 1.08 | 0.88 | 2.89 |
| m448 | 40 °C | LA92 | 8.79 h | 1.32 | 1.08 | 4.81 |
| m448 | 40 °C | US06 | 4.06 h | 0.92 | 0.69 | 3.82 |
| m448 | 40 °C | HWCUST | 2.92 h | 0.77 | 0.58 | 1.79 |
| m448 | 40 °C | HWGRADE | 2.32 h | 1.32 | 1.05 | 4.16 |
| m448-N | -10 °C | UDDS | 10.80 h | 3.18 | 2.39 | 6.21 |
| m448-N | -10 °C | HWFET | 3.85 h | 4.17 | 3.82 | 6.80 |
| m448-N | -10 °C | LA92 | 6.66 h | 4.72 | 3.88 | 8.43 |
| m448-N | -10 °C | US06 | 2.70 h | 5.43 | 4.57 | 8.77 |
| m448-N | -10 °C | HWCUST | 1.89 h | 3.54 | 3.20 | 8.12 |
| m448-N | -10 °C | HWGRADE | 1.36 h | 3.91 | 3.48 | 6.96 |
| m448-N | -20 °C | UDDS | 8.67 h | 9.59 | 8.87 | 13.83 |
| m448-N | -20 °C | HWFET | 3.09 h | 5.26 | 4.42 | 12.71 |
| m448-N | -20 °C | LA92 | 5.21 h | 9.11 | 8.52 | 12.99 |
| m448-N | -20 °C | US06 | 2.23 h | 3.41 | 2.96 | 9.10 |
| m448-N | -20 °C | HWCUST | 1.65 h | 2.85 | 2.31 | 7.46 |
| m448-N | -20 °C | HWGRADE | 1.50 h | 4.85 | 3.60 | 12.27 |
| m448-N | 0 °C | UDDS | 12.79 h | 1.69 | 1.13 | 4.91 |
| m448-N | 0 °C | HWFET | 4.47 h | 1.73 | 1.57 | 3.01 |
| m448-N | 0 °C | LA92 | 7.99 h | 1.34 | 1.15 | 2.91 |
| m448-N | 0 °C | US06 | 3.22 h | 2.43 | 2.13 | 3.68 |
| m448-N | 0 °C | HWCUST | 2.31 h | 3.06 | 2.79 | 4.25 |
| m448-N | 0 °C | HWGRADE | 1.65 h | 3.92 | 3.54 | 7.28 |
| m448-N | 10 °C | UDDS | 13.92 h | 1.77 | 1.07 | 4.79 |
| m448-N | 10 °C | HWFET | 4.84 h | 2.07 | 1.61 | 4.37 |
| m448-N | 10 °C | LA92 | 8.80 h | 2.21 | 1.45 | 5.42 |
| m448-N | 10 °C | US06 | 3.56 h | 1.99 | 1.58 | 3.97 |
| m448-N | 10 °C | HWCUST | 2.53 h | 1.89 | 1.63 | 3.33 |
| m448-N | 10 °C | HWGRADE | 1.79 h | 2.44 | 2.09 | 4.96 |
| m448-N | 25 °C | UDDS | 15.61 h | 1.47 | 1.28 | 3.26 |
| m448-N | 25 °C | HWFET | 5.47 h | 1.42 | 1.27 | 2.96 |
| m448-N | 25 °C | LA92 | 10.09 h | 1.29 | 1.13 | 3.28 |
| m448-N | 25 °C | US06 | 4.08 h | 1.29 | 1.16 | 2.36 |
| m448-N | 25 °C | HWCUST | 2.86 h | 1.87 | 1.78 | 3.20 |
| m448-N | 25 °C | HWGRADE | 2.30 h | 2.06 | 1.74 | 4.68 |
| m448-N | 40 °C | UDDS | 16.75 h | 1.71 | 1.41 | 3.87 |
| m448-N | 40 °C | HWFET | 5.89 h | 1.08 | 0.88 | 2.91 |
| m448-N | 40 °C | LA92 | 11.03 h | 1.28 | 1.04 | 4.26 |
| m448-N | 40 °C | US06 | 4.44 h | 0.87 | 0.67 | 3.49 |
| m448-N | 40 °C | HWCUST | 3.13 h | 0.75 | 0.59 | 1.69 |
| m448-N | 40 °C | HWGRADE | 2.48 h | 1.33 | 1.10 | 3.34 |
| m1000 | -10 °C | UDDS | 5.91 h | 3.72 | 3.41 | 5.85 |
| m1000 | -10 °C | HWFET | 2.91 h | 3.95 | 3.66 | 7.74 |
| m1000 | -10 °C | LA92 | 4.23 h | 4.36 | 3.84 | 7.28 |
| m1000 | -10 °C | US06 | 2.09 h | 3.93 | 3.36 | 6.38 |
| m1000 | -10 °C | HWCUST | 1.67 h | 3.35 | 3.06 | 8.00 |
| m1000 | -10 °C | HWGRADE | 1.20 h | 4.32 | 3.95 | 7.26 |
| m1000 | -20 °C | UDDS | 4.31 h | 5.94 | 5.01 | 16.75 |
| m1000 | -20 °C | HWFET | 2.27 h | 3.58 | 2.98 | 9.36 |
| m1000 | -20 °C | LA92 | 3.20 h | 4.72 | 3.52 | 14.19 |
| m1000 | -20 °C | US06 | 1.74 h | 1.74 | 1.07 | 7.52 |
| m1000 | -20 °C | HWCUST | 1.37 h | 1.44 | 1.34 | 2.52 |
| m1000 | -20 °C | HWGRADE | 1.22 h | 2.79 | 2.18 | 7.47 |
| m1000 | 0 °C | UDDS | 8.09 h | 1.99 | 1.63 | 4.61 |
| m1000 | 0 °C | HWFET | 3.70 h | 1.59 | 1.44 | 3.24 |
| m1000 | 0 °C | LA92 | 5.60 h | 1.76 | 1.49 | 3.37 |
| m1000 | 0 °C | US06 | 2.66 h | 2.35 | 2.11 | 3.72 |
| m1000 | 0 °C | HWCUST | 2.05 h | 3.29 | 3.02 | 4.53 |
| m1000 | 0 °C | HWGRADE | 1.36 h | 5.02 | 4.58 | 9.38 |
| m1000 | 10 °C | UDDS | 10.51 h | 2.23 | 1.58 | 5.45 |
| m1000 | 10 °C | HWFET | 4.37 h | 1.89 | 1.55 | 3.76 |
| m1000 | 10 °C | LA92 | 7.06 h | 2.17 | 1.63 | 4.90 |
| m1000 | 10 °C | US06 | 3.11 h | 1.25 | 1.03 | 3.45 |
| m1000 | 10 °C | HWCUST | 2.41 h | 2.38 | 2.02 | 3.79 |
| m1000 | 10 °C | HWGRADE | 1.52 h | 2.75 | 2.25 | 5.45 |
| m1000 | 25 °C | UDDS | 14.69 h | 1.93 | 1.78 | 3.99 |
| m1000 | 25 °C | HWFET | 5.37 h | 1.82 | 1.73 | 3.16 |
| m1000 | 25 °C | LA92 | 9.30 h | 1.71 | 1.59 | 4.40 |
| m1000 | 25 °C | US06 | 3.79 h | 2.04 | 1.82 | 4.43 |
| m1000 | 25 °C | HWCUST | 2.83 h | 2.42 | 2.33 | 3.46 |
| m1000 | 25 °C | HWGRADE | 1.90 h | 1.84 | 1.50 | 5.61 |
| m1000 | 40 °C | UDDS | 11.69 h | 1.86 | 1.59 | 4.00 |
| m1000 | 40 °C | HWFET | 5.15 h | 1.13 | 0.93 | 4.43 |
| m1000 | 40 °C | LA92 | 8.33 h | 1.32 | 1.10 | 3.57 |
| m1000 | 40 °C | US06 | 3.89 h | 0.93 | 0.72 | 3.73 |
| m1000 | 40 °C | HWCUST | 2.91 h | 0.78 | 0.56 | 1.91 |
| m1000 | 40 °C | HWGRADE | 2.17 h | 1.54 | 1.26 | 4.31 |
m80 UDDS at -20 °C
Whole cycle · RMSE 5.55 %, max 16.3 %
One hour of padded data precedes every cycle in the evaluator and is excluded from the error metrics. Charts are down-sampled for display (peaks preserved); the full 1 Hz data is in the traces download below.
Unscented Kalman Filter — standardized view
Model-based state estimation
PDF report (summary, every test case with the arithmetic, key plots, per-cycle table) · results as JSON · full 1 Hz traces of all 195 runs as a MATLAB v7 file (0.01 % SOC steps; readable with scipy.io.loadmat, see the readme variable inside).
Unscented Kalman Filter by Romulo
| 2.59 % |
| 0.1000 |
| 0.2594 |
| Operating conditionsT4Charging | 2.83 % | 0.1000 | 0.2829 |
| T580 kg payload | 2.37 % | 0.0333 | 0.0790 |
| T5448 kg payload, HVAC on | 2.45 % | 0.0667 | 0.1632 |
| T6448 kg payload, HVAC off | 2.86 % | 0.0667 | 0.1907 |
| T51000 kg payload | 2.55 % | 0.0333 | 0.0850 |
| T7Standard drive cycles | 2.54 % | 0.1000 | 0.2544 |
| T8Non-standard drive cycles | 2.58 % | 0.1000 | 0.2584 |
| T9−20 °C | 3.57 % | 0.0167 | 0.0595 |
| T9−10 °C | 3.56 % | 0.0167 | 0.0593 |
| T90 °C | 2.33 % | 0.0167 | 0.0389 |
| T910 °C | 1.91 % | 0.0167 | 0.0318 |
| T925 °C | 1.69 % | 0.0167 | 0.0282 |
| T940 °C | 1.15 % | 0.0167 | 0.0192 |
| RobustnessT10Initial SOC error | 9.97 % | 0.1000 | 0.9973 |
| T11Current sensor offset | 2.13 % | 0.1000 | 0.2129 |
| Weighted error = Σ (weight × RMSE) | 3.26 % | |||
Governing equation
State carried in z
2 RC voltages + SOC; covariance P; current ECM parameters.
Uses