案例 067 电池什么时候该换新

案例 067 电池什么时候该换新

摘要:电池按 \(C(t)=24\exp(-0.016t)\) 衰减,第 14 个月跌破额定容量的 80%,续航从 55 km 掉到 44.0 km,而日均骑行要 43 km。把"换新净支出"摊到每个月、把"续航不足的额外换电"折成钱,就得到一个离散生命周期的经济寿命问题:早换让 660 元的净支出摊到更多月份、每月更贵;晚换要天天多跑一趟换电柜。本文用 0-1 变量 \(z_{t}\) 做 SOS1 选月、以 \(t_{r}=\sum t z_{t}\) 联结,建立 36 个候选月的均摊成本最小化模型。Gurobi 求得最优更换月为第 18 个月、单位月均成本 40.77 元,比"80% 就换"省 6.37 元/月,36 个月现金从 1320 元降到 808 元。

关键词:设备更新;经济寿命;SOS1 选月;容量衰减;均摊成本


1 问题提出

1.1 一块电池的三年账

新电池 24 Ah、满电跑 55 km,售价 780 元;旧电池残值 120 元,换一次净掏 660 元。厂商标称衰减曲线 \(C(t)=24\exp(-0.016t)\),续航按同一比例缩水,第 14 个月只剩 44.0 km。小哥一天跑 43 km、一个月出勤 26 天,从这天起一块电池跑不满一天,中间必须再换一次;单次换电综合成本 36 元(电费 6 元加绕路排队折 30 元)。

表 1 电池衰减与额外换电成本(抽样)

月龄 t 容量 C(t)/Ah 续航 R(t)/km 等效额外换电/次每月 额外换电成本/元
1 23.62 54.13 0.00 0.0
6 21.80 49.97 0.00 0.0
12 19.81 45.39 0.00 0.0
14 19.18 43.96 0.00 0.0
18 17.99 41.24 1.11 40.0
24 16.35 37.46 3.84 138.4
36 13.49 30.92 10.16 365.8

1.2 为什么要优化

换新是一次性 660 元的大额支出,摊到 12 个月是 55.00 元/月,摊到 18 个月只有 36.67 元/月,差 18.33 元。续航不足的代价却是持续性的:第 36 个月单月额外换电成本已到 365.8 元,一年 4389.3 元,比一块新电池还贵。两个方向相反的力必然交于一点,而"80% 就换"的经验规则只看容量,既不看换电成本,也不看电池价格,拍不出这个交点。

1.3 Gurobi 如何求解

候选月只有 36 个,枚举也能算,但写成 0-1 规划有三个好处:\(\sum z_{t}=1\) 严格表达"只选一个月",不必用大 M 松弛;\(t_{r}=\sum t z_{t}\) 把决策提成一个整数变量,便于追加"保修期内不得更换"一类线性约束;灵敏度扫描时只改目标系数不改模型结构,一套代码复用二十余次。

2 数学模型

2.1 符号说明

表 2 符号说明

符号 含义 取值/单位
\(C(t)\) 月龄 t 的电池容量 Ah
\(R(t)\) 月龄 t 的续航里程 km
\(D\) 日均骑行里程 43 km
\(d\) 每月出勤天数 26 天
\(c_s\) 单次换电综合成本 36 元
\(P_n,\ P_s\) 新电池售价、旧电池残值 780 / 120 元
\(e_t\) 月龄 t 当月的额外换电成本 元
\(z_t\) 是否在第 t 个月换新(0-1) -
\(t_r\) 选定的更换月 月
\(c_t\) 更换周期为 t 时的单位月均成本 元/月

2.2 目标函数

容量与续航同比例衰减:

\[C(t)=24\exp(-0.016t),\qquad R(t)=55\exp(-0.016t)\tag{1} \]

月龄 \(t\) 的电池当月需要的等效额外换电成本,按续航缺口比例折算:

\[e_{t}=26\times 36\times\max\left(0,\ \frac{43}{R(t)}-1\right)\tag{2} \]

若在第 \(t\) 个月换新,一个更换周期的支出为新电池净价加上这期间的额外换电成本,摊到每个月:

\[c_{t}=\frac{660+\sum_{\tau=1}^{t}e_{\tau}}{t}\tag{3} \]

\[\min\ Z=\sum_{t=1}^{36}c_{t}z_{t}\tag{4} \]

2.3 约束条件

\[\sum_{t=1}^{36}z_{t}=1\tag{5} \]

\[\sum_{t=1}^{36}t\,z_{t}=t_{r}\tag{6} \]

\[z_{t}\in\{0,1\},\qquad t_{r}\in\{1,2,\dots,36\}\tag{7} \]

式 (5) 是"只选一个月"的指派约束,等价于对 \(z\) 施加 SOS1;式 (6) 把 0-1 向量压成一个整数决策 \(t_{r}\),报告与追加约束都用它;式 (7) 给出取值域。

2.4 规模与性质

37 个 0-1 变量、1 个整数变量、2 条等式约束,Gurobi 在根节点即证最优。系数 \(c_{t}\) 是"固定支出除以周期 + 凸增持有成本"的经典经济寿命结构,最优解必落在 \(c_{t}\) 的极小点上。

3 Gurobi 求解实现

3.1 建模要点

z  = m.addVars(range(1, 37), vtype=GRB.BINARY)
tr = m.addVar(lb=1, ub=36, vtype=GRB.INTEGER)
m.addConstr(gp.quicksum(z[t] for t in range(1, 37)) == 1)
m.addConstr(gp.quicksum(t * z[t] for t in range(1, 37)) == tr)
m.setObjective(gp.quicksum(unit[t-1] * z[t] for t in range(1, 37)), GRB.MINIMIZE)

一个实现细节:\(c_{t}\) 里的 \(\sum e_{\tau}\) 在建模前用 numpy.cumsum 一次算好,作为目标系数传入,模型因此保持纯线性;若把累加写进约束,会凭空多出 36 个辅助变量而毫无收益。

3.2 求解结果

表 3 三种更换策略的对比

策略 更换周期/月 设备摊薄/元每月 换电成本/元每月 合计/元每月 36 个月现金/元
激进早换 12 55.00 0.00 55.00 1320.0
80% 容量阈值 14 47.14 0.00 47.14 1320.0
模型最优(SOS1) 18 36.67 4.10 40.77 807.7

最优更换月 \(t_{r}^{*}=18\),单位月均成本 40.77 元,其中设备摊薄 36.67 元、额外换电 4.10 元。作为对照,第 14 个月是 47.14 元、第 12 个月是 55.00 元——早换确实更贵。

4 结果分析

4.1 衰减曲线与换电成本(图 1、图 2)

续航从 55 km 单调降到第 36 个月的 30.9 km,容量同步从 24 Ah 降到 13.49 Ah。图上两条竖线分得很开:第 14 个月是厂商的"容量 80%"线,第 18 个月才是经济的成本最低线,两者差 4 个月,正是本文要解释的差额。额外换电这笔钱也不是线性上升的,它在续航跌破日均需求那一刻才从 0 跳起来:第 15 个月仍是 0 元,第 16 个月 9.28 元,第 18 个月 40.02 元,第 36 个月 365.8 元。气泡大小对应续航,越往右气泡越小、成本越高,这就是"续航不足期"的画像。

图 1 容量、续航与两个关键月:14 个月跌破 80%,18 个月才是成本最优点

图 2 逐月额外换电成本:第 16 个月起才真正开始花钱

4.2 三种策略与现金流(图 3、图 4)

把每月的钱拆成"设备摊薄"和"换电成本"两块,三条路的差别一目了然:12 个月换,设备摊薄 55.00 元/月;14 个月换,47.14 元/月;18 个月换,36.67 元/月。换电成本要到 18 个月才冒出 4.10 元,远小于省下的设备摊薄。

图 3 三种更换策略的单位月均成本分解

均摊成本是决策口径,小哥真正掏的是现金。按 12 个月或 14 个月换,36 个月内要换两次,累计 1320 元;按 18 个月换只换一次(第 36 个月期末不再换),累计 808 元,少掏 512 元。阶梯线的台阶位置就是换新时点,最优方案那条只有一个台阶。

图 4 三种策略的 36 个月累计现金支出

4.3 衰减速率与新电池价格(图 5—图 7)

衰减速率从 0.008 走到 0.032,最优更换月从 33 个月一路提前到 10 个月:衰减越快,早期续航掉得越狠,越该早换。同一张图上 960 元的曲线整体更靠后,设备越贵越要把周期拉长去摊薄,但幅度有限——衰减率 0.020 处只从 14 推到 15 个月。

图 5 最优更换月与最优月均成本对衰减速率、电池价格的双重响应

图 6 把成本曲面对衰减率展开:颜色越深越便宜,红色轨迹是逐列最优月,斜率明显为负——衰减率每提高 0.004,最优月提前 4—5 个月。

图 6 更换月与衰减速率二维成本曲面(星号为本案参数)

图 7 单独看价格:售价 600 元时最优 17 个月,960 元时 18 个月,只挪动 1 个月,但月均成本从 30.22 元升到 50.77 元。结论是价格决定"贵不贵",衰减率才决定"何时换"。

图 7 新电池售价对最优更换月与月均成本的影响

4.4 前沿、分布与边际贡献(图 8—图 10)

图 8 的阴影是"续航不足区":更换周期一旦超过 14 个月,电池就进入跑不满一天的状态。曲线在第 18 个月触底后迅速抬升,第 24 个月已到 54.73 元、第 30 个月 83.92 元——拖得越久,换电柜越像无底洞。

图 8 更换周期—月均成本前沿与续航不足区

图 9 把 27 个候选解的成本做成直方图:33% 的候选月成本低于 50 元,最优解 40.77 元落在最左侧,说明"18 个月附近"是一段平坦的好区域,不必精确到某一个月。

图 9 候选更换月的成本分布与累计占比

图 10 把从 14 个月延到 18 个月的净收益拆开:设备摊薄降 10.48 元,换电电费升 0.68 元,绕路排队升 3.42 元,净降 6.37 元/月,折年 76.5 元。设备一项量级最大,也是唯一带负号的。

图 10 从阈值规则推迟到最优月的边际贡献分解

5 结论

第一,最优更换月是第 18 个月,单位月均成本 40.77 元;它既不等于厂商的"80% 容量"线(14 个月),也不是越晚越好。

第二,经验规则偏保守的代价是 6.37 元/月、76.5 元/年;放到 36 个月看,阈值规则要多换一次电池,现金多掏 512 元。

第三,驱动力是两条曲线的交点:660 元净支出除以更长的周期一直在降,额外换电成本在第 16 个月后加速上升,交点落在 18 个月。

第四,灵敏度方向明确:衰减率每差 0.004、最优月移动 4—5 个月;电池价格涨 360 元、最优月只挪 1 个月。参数标定应优先测准衰减率。

第五,模型骨架(SOS1 选月加整数联结)可直接搬到轮胎、刹车片、手机电池等任何"固定更换成本加凸增持有成本"的场景,只换系数不换结构。


参考文献

[1] Gurobi Optimization LLC. Gurobi Optimizer Reference Manual[Z]. 2024.

[2] Kellerer H, Pferschy U, Pisinger D. Knapsack Problems[M]. Berlin: Springer, 2004.

[3] Martello S, Toth P. Knapsack Problems: Algorithms and Computer Implementations[M]. Chichester: John Wiley & Sons, 1990.

[4] 司守奎, 孙玺菁. 数学建模算法与应用[M]. 3 版. 北京: 国防工业出版社, 2021.


复现方式:python batch_067.py;数据与结果见同目录 .csv / .json,图见 figs/

posted @ 2026-11-11 18:04  小青蛙电气  阅读(1)  评论(0)    收藏  举报