微分方程对比:冷却案例复盘
微分方程对比最怕只比公式,不比场景。我用一杯热咖啡降温的完整建模过程,复盘常微分方程、差分模型和线性拟合的差别,看它们在数据少、误差大、要预测时各自会怎么表现。
步骤1:先把问题钉死
案例很小:一杯90℃咖啡放在25℃办公室里,想知道多久降到60℃。我当时手里只有5个测温点:0分钟90℃、5分钟78℃、10分钟68℃、15分钟61℃、20分钟55℃。这类问题最适合做微分方程对比,因为温度变化不是看当前温度本身,而是看它和环境温度的差。
如果只问平均每分钟降几度,线性拟合能给答案;如果问10分钟以后降温会不会变慢,微分方程才说得清。这里的核心不是炫技,而是判断哪种模型更贴近机制。
步骤2:拿线性模型当基准
先做最粗的版本:20分钟从90℃到55℃,平均每分钟降1.75℃。按这个算法,从90℃降到60℃需要约17.1分钟。看起来离实测15分钟到61℃不远,很多人到这里就停了。
问题在于线性模型默认每分钟都降同样多。现实里咖啡刚倒出来降得快,接近室温后降得慢。拿它预测前20分钟尚可,拿它预测40分钟就会荒唐,甚至可能算出低于室温很多的结果。
步骤3:换成牛顿冷却微分方程
常用写法是 dT/dt=-k(T-25)。这句话翻译成人话:温度下降速度,正比于咖啡温度和室温的差。差得越多,降得越快;差得越少,降得越慢。
用0分钟90℃、10分钟68℃估一个k:68-25=(90-25)e^{-10k},得到k约0.041。再算降到60℃:60-25=65e^{-0.041t},t约15.1分钟。这个结果和15分钟61℃非常贴近。
步骤4:再和差分模型对比
差分模型不写导数,写成每5分钟温差缩小一个比例。比如温差从65变到53,再到43、36、30,比例大约在0.81到0.84之间。它更适合用电子表格快速算,不需要连续时间概念。
微分方程的优势是能给任意时刻的预测,比如12.5分钟温度;差分模型适合固定采样间隔,比如每5分钟记录一次。两者不是谁高级谁低级,而是时间尺度不同。
步骤5:复盘结论怎么选
这次微分方程对比的结论很明确:要解释机制,用微分方程;只做短期粗估,用线性模型;数据按固定间隔来、想快速落表,用差分模型。
我自己的判断顺序是三问:变量会不会越接近目标变化越慢?有没有自然边界,比如室温、容量上限、稳定浓度?预测区间会不会超过已有数据很多?三问里有两个回答是会,就别硬上线性模型,微分方程通常更稳。
常见问题
- 微分方程对比普通方程,最大区别是什么?
- 普通方程多描述变量之间的静态关系,微分方程描述变量如何随时间、空间或其他自变量变化,重点是变化率。
- 微分方程对比差分方程哪个更实用?
- 连续变化用微分方程更自然,比如冷却、运动、浓度扩散;离散周期数据用差分方程更方便,比如月度库存、每日用户数。
- 没有很多数据能用微分方程吗?
- 可以,但要有机制假设。像牛顿冷却只需少量点估参数;如果机制不清,数据又少,模型会很脆。