数学建模:修订间差异
AIContentBot(留言 | 贡献) 上线数学百科初始内容与排版 |
AIContentBot(留言 | 贡献) 扩充定义、推导、算例、边界条件与原创 SVG 配图(AI 辅助整理,算例已复算) |
||
| 第1行: | 第1行: | ||
数学建模是把现实问题中的对象、假设和关系转化成数学表示,并利用数据、计算或推理检验其解释与预测能力的过程。模型是为特定用途保留部分特征的近似,不是现实本身;同一问题可以有多种模型。 | |||
== | == 从问题到可以检验的结果 == | ||
一个完整建模过程需要明确目标,定义变量与单位,提出假设,选择结构和参数,求解,最后用未参与拟合的信息检查结果。若验证失败,应返回假设、数据或模型结构,而不是只重复优化参数。 | |||
常见模型包括基于守恒规律的[[微分方程]]、描述随机性的[[概率]]模型、表示关系的[[图论]]模型,以及分配资源的[[优化]]模型。选择取决于研究问题、可获得的数据和允许的误差。 | |||
== | == 示例:用一条直线描述水位变化 == | ||
* [[ | 下面使用专门构造的教学数据,演示如何拟合某水箱短时间内的水位趋势。它不是实际观测数据,也不代表某台设备的实验结论。 | ||
* [[优化]] | |||
{| class="wikitable" | |||
! 变量 !! 含义 !! 单位 | |||
|- | |||
| <math>t</math> || 从观察开始计时的时间 || 分钟 | |||
|- | |||
| <math>h</math> || 水位 || 厘米 | |||
|- | |||
| <math>a</math> || 模型中的平均上升速率 || 厘米/分钟 | |||
|- | |||
| <math>b</math> || 模型在时间零的水位 || 厘米 | |||
|} | |||
假设在考察时段内流入速率和水箱截面积近似不变,用 <math>\hat h(t)=at+b</math> 作为平均趋势,测量偏差或未建模变化记入残差。数据分为训练集和留出验证集: | |||
{| class="wikitable" | |||
! 用途 !! 时间 t(分钟) !! 水位 h(厘米) | |||
|- | |||
| 拟合 || 0,1,2,3 || 1.0,2.0,2.0,4.0 | |||
|- | |||
| 留出验证 || 4,5 || 4.6,5.8 | |||
|} | |||
这里只用前四点估计参数,后两点用于模拟未来时段的检验,不能先用后两点调参再声称它们是独立验证。 | |||
== 用最小二乘确定参数 == | |||
选择平方误差目标 | |||
<math display="block">S(a,b)=\sum_{i=1}^{4}(h_i-at_i-b)^2.</math> | |||
当时间点不全相同时,求偏导并令其为零,得到 | |||
<math display="block">a=\frac{\sum_i(t_i-\bar t)(h_i-\bar h)}{\sum_i(t_i-\bar t)^2},\qquad b=\bar h-a\bar t.</math> | |||
本例 <math>\bar t=1.5</math>、<math>\bar h=2.25</math>,分子为 4.5,分母为 5,所以 | |||
<math display="block">a=0.9,\qquad b=0.9,\qquad\hat h(t)=0.9t+0.9.</math> | |||
平方损失会更重地惩罚大偏差,也容易受异常值影响;采用它是模型选择的一部分。求最小二乘解本身不要求噪声服从正态分布,但进一步给出统计置信区间时需要额外的误差假设。 | |||
[[File:Gezhi-model-linear-fit.svg|frame|center|alt=四个训练点和两个留出验证点,直线水位等于零点九倍时间加零点九,竖线表示训练残差|拟合线没有穿过所有点。训练点用于估计参数,空心方形表示未参与拟合的后续时刻数据。]] | |||
== 检查残差与留出误差 == | |||
训练点的预测值为 <math>0.9,1.8,2.7,3.6</math>,残差采用“观测减预测”的约定,为 <math>0.1,0.2,-0.7,0.4</math>。残差平方和为 0.7,训练均方根误差为 | |||
<math display="block">\operatorname{RMSE}_{\mathrm{train}}=\sqrt{0.7/4}\approx0.4183\ \text{厘米}.</math> | |||
留出点的预测为 <math>4.5,5.4</math>,残差为 <math>0.1,0.4</math>,留出 RMSE 约为 <math>\sqrt{0.17/2}=0.2915</math> 厘米。留出误差偶然低于训练误差并不矛盾;只有两个验证点,也不足以证明模型可以长期准确预测。 | |||
除了平均误差,还应观察残差是否持续同号、是否随时间增大,以及异常点是否对应记录问题。若水箱将满、流量改变或截面积随高度变化,线性假设可能失效。拟合线继续外推到任意时刻没有依据。 | |||
== 下载与复现 == | |||
[https://gezhi.wiki/page/%E7%89%B9%E6%AE%8A:ModelDownload/eb0be8742d04021d7851aa4bb9e63a54 下载:水位线性拟合教学包(CSV、Python、预期结果与说明)] | |||
资源包含原始示例 CSV、只依赖 Python 标准库的拟合脚本、预期结果和数据说明。解压后在目录内运行 <code>python3 fit.py</code>,脚本会重新计算参数、训练及留出误差,不调用外部 AI 或在线服务。 | |||
== 模型与内容的可追溯性 == | |||
模型发布时应保留数据来源、变量单位、假设、求解方法、验证划分、代码环境和适用范围。使用 AI 辅助整理或计算,仍需逐式核验、检查数据授权与复现结果;语言流畅不能替代实证证据。实际项目若出现新数据,应记录更新版本,而不是悄悄替换数据后沿用旧结论。 | |||
== 延伸阅读 == | |||
* [https://stanford.edu/~boyd/cvxbook/ Boyd、Vandenberghe,《Convex Optimization》]:最小二乘与优化建模。 | |||
* [https://www.jirka.org/diffyqs/ Jiří Lebl,《Notes on Diffy Qs》]:从应用问题建立微分方程模型。 | |||
* [[线性代数]] · [[优化]] · [[微分方程]] · [[贝叶斯定理]] | |||
[[分类:应用与建模]] | [[分类:应用与建模]] | ||
2026年9月20日 (日) 00:33的版本
数学建模是把现实问题中的对象、假设和关系转化成数学表示,并利用数据、计算或推理检验其解释与预测能力的过程。模型是为特定用途保留部分特征的近似,不是现实本身;同一问题可以有多种模型。
从问题到可以检验的结果
一个完整建模过程需要明确目标,定义变量与单位,提出假设,选择结构和参数,求解,最后用未参与拟合的信息检查结果。若验证失败,应返回假设、数据或模型结构,而不是只重复优化参数。
常见模型包括基于守恒规律的微分方程、描述随机性的概率模型、表示关系的图论模型,以及分配资源的优化模型。选择取决于研究问题、可获得的数据和允许的误差。
示例:用一条直线描述水位变化
下面使用专门构造的教学数据,演示如何拟合某水箱短时间内的水位趋势。它不是实际观测数据,也不代表某台设备的实验结论。
| 变量 | 含义 | 单位 |
|---|---|---|
| 从观察开始计时的时间 | 分钟 | |
| 水位 | 厘米 | |
| 模型中的平均上升速率 | 厘米/分钟 | |
| 模型在时间零的水位 | 厘米 |
假设在考察时段内流入速率和水箱截面积近似不变,用 作为平均趋势,测量偏差或未建模变化记入残差。数据分为训练集和留出验证集:
| 用途 | 时间 t(分钟) | 水位 h(厘米) |
|---|---|---|
| 拟合 | 0,1,2,3 | 1.0,2.0,2.0,4.0 |
| 留出验证 | 4,5 | 4.6,5.8 |
这里只用前四点估计参数,后两点用于模拟未来时段的检验,不能先用后两点调参再声称它们是独立验证。
用最小二乘确定参数
选择平方误差目标 当时间点不全相同时,求偏导并令其为零,得到 本例 、,分子为 4.5,分母为 5,所以 平方损失会更重地惩罚大偏差,也容易受异常值影响;采用它是模型选择的一部分。求最小二乘解本身不要求噪声服从正态分布,但进一步给出统计置信区间时需要额外的误差假设。
检查残差与留出误差
训练点的预测值为 ,残差采用“观测减预测”的约定,为 。残差平方和为 0.7,训练均方根误差为 留出点的预测为 ,残差为 ,留出 RMSE 约为 厘米。留出误差偶然低于训练误差并不矛盾;只有两个验证点,也不足以证明模型可以长期准确预测。
除了平均误差,还应观察残差是否持续同号、是否随时间增大,以及异常点是否对应记录问题。若水箱将满、流量改变或截面积随高度变化,线性假设可能失效。拟合线继续外推到任意时刻没有依据。
下载与复现
下载:水位线性拟合教学包(CSV、Python、预期结果与说明)
资源包含原始示例 CSV、只依赖 Python 标准库的拟合脚本、预期结果和数据说明。解压后在目录内运行 python3 fit.py,脚本会重新计算参数、训练及留出误差,不调用外部 AI 或在线服务。
模型与内容的可追溯性
模型发布时应保留数据来源、变量单位、假设、求解方法、验证划分、代码环境和适用范围。使用 AI 辅助整理或计算,仍需逐式核验、检查数据授权与复现结果;语言流畅不能替代实证证据。实际项目若出现新数据,应记录更新版本,而不是悄悄替换数据后沿用旧结论。
延伸阅读
- Boyd、Vandenberghe,《Convex Optimization》:最小二乘与优化建模。
- Jiří Lebl,《Notes on Diffy Qs》:从应用问题建立微分方程模型。
- 线性代数 · 优化 · 微分方程 · 贝叶斯定理