《基于Matlab实现最小二乘曲线拟合.doc》由会员分享,可在线阅读,更多相关《基于Matlab实现最小二乘曲线拟合.doc(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、52 2005 年 6 月 第 12 卷 第 2 期 北京广播学院学报 (自然科学版 ) JOURNA L O F BE IJING BROADCA ST ING INST ITUT E ( SC IENCE AND TECHNOLOGY ) June 2005 V o l 12, N o 2 基于 M atlab 实现最小二乘曲线拟合 王 可 , 毛志伋 (中国传媒大学 通信工程系 , 北京 100024 ) 摘 要 : 物理量之间的函数关系在实 际研究 工作有很 重要的 作用 。 本 文首先介 绍了最 小二 乘原理 。 其次介 绍了用 M atlab 实现曲线拟合以得到函数关系的方法和步骤
2、 。 最后举例比较 了采用不同 方法进行 拟合得 到的 结果 。 关键词 : M atlab; 最小二乘法 ; 曲线拟合 中国分类号 : 0241 2 文献标识码 : A 文章编号 : 1007- 8819( 2005) 02- 0052- 05 1 引言 在现代科学研究中 , 物理量之间的相互关系 使得数据点的平方误差和最小。这种选择就是最 小二乘曲线拟合。可用一系列基函数进行最小二 乘曲线拟合 , 直接而通用的做法是用多项式 , 即线 性拟合 ; 另外还可以选择其他基函数 , 这种做法称 通常是用函数来描述的。有些函数关系是由经典 理论分析推导得出的 , 这些函数关系不仅为我们 进一步的分
3、析研究工作提供了物理的理论基础 , 也使我们可以十分方便的运用丰富的数学知识来 解决物理问题。 在现实的物理研究过程中 , 有一些问题很难 由经典物理理论推导出物理量的函数表达式 , 或 者推导出的表达式十分复杂 , 不利于进一步的分 析。但由于研究需要 , 又很希望能得到这些量之 间的函数关系 , 这时就可以利用曲线拟合的方法 , 用实 验数据结合数学方法得到物理量之间的近似 函数表达式。 2 曲线拟合的基本原理 曲线拟合就是拟合测量数据曲线。有时所选 择的曲线通过数据点 , 但在其他点上 , 曲线接近它 们而不必通过它们。在大多数情况下 , 选择曲线 收稿日期 : 2004 11 01 之
4、为非线性拟合。下面简要介绍一下最小二乘法 的基本原理 : 在数据处理中应用的最小二乘 法原理是算术 平均值原理的推广。即多次等精度独立测得 l1, l2 ln 的最佳值 n 其残差 vi = li - L 满足平方和 vi = m in(最小 ) 这一点是显然的 , 因对任何值 L 言 li - L = li - L + (L - L ) = vi + (L - L ) ( li - L ) = vi + 2(L - L ) vi + n(L - L ) = vi + n (L - L ) ! vi 故 L 有选为 L = L 时 方为最小。 以上就是最小二乘法的基本原理 , 用它可以 解决两
5、个量之间关系的问题。 例如 : 现有一组 ( xi, yi ), i = 1, 2 n, 要建立 x 和 y 之间的函数关系。 第 2 期 王 可等 : 基于 M atlab 实现最小二乘曲线拟合 53 Q = 设 x 和 y 之间的函数关系为 y = f ( x ), 则满足 yi - f (x i ) = m in 的 f ( x )即为所求。 3 最小二乘法实现曲线拟合 首先介绍用最小二乘法实现曲线拟合时常用 的经验公式及选取合适公式的方法 : 在工作中 , 通常情况是找出两个量之间的关 系。此时需要对两个量的多组对应数据用经验公 式表示出来 , 因为经验公式形式紧凑 , 便于从理论 上
6、进一步分析。 对表征 ( xi, yi ), i = 1, 2 n 的关系 y = f ( x ; a, b, c ), 式中 a, b, c 为参数 , 因自变量 x 已知 时 y 已测得 , 故类型 f 决定后 , 由误差方程 f ( xi; 图 1 典型图形 a, b, c ) = yi + vi, i = 1, 2, n 就可用最小二乘 下面举例说明如何用最小二乘法实现两个量之间 法决定经验公式中参数 a, b, c 。下面我们就来 关系的曲线拟合。 例 基线基准尺是由殷钢合金制成的 , 研究 介绍经验公式类型的选取。 经验公式类型 的选取主要靠 专业知识 来决 定 , 从数学方面去决
7、定两个量的经 验公式主要有 三种方法 : 观察法、近似法、严格计算法。这三种 方法中 , 观察法简单、直观 , 相对来说近似法和严 格计算法比较精确 , 但比较繁琐。对于大多数情 况 , 都可以采用观察法来确定经验公式 , 所以下面 主要介绍观察法。 观察法就是将数据 ( xi, yi )作图 , 与典型图 1 比较 , 看所作图形与典型图中何种类似 , 就取该类 型为 ( xi, yi )经验公式类型。 表明 , 殷钢尺的长度随时间变化而增长 , 越往后增 长得越慢 , 这种殷钢随时间而变长的现象称作合 金时效。殷钢尺长度变化的规律经研究可 用 l = a lg( 1 + b t) 来描述
8、, 其中 l 为长度变 化值 , t 为变 化时 间 , a、 b 为常数。 基准尺尺长的实际变化如表 1。 表 1 今用 法在 l = a lg( 1+ bt )逼近 l, 即由最小二乘 2 a = 0 Q ( a, b ) = l - a lg( 1 + bt ) = m in a = - 2 l - a lg( 1 + bt ) ! 条件下求a、 b。 由 Q ( a, b ) = m in, 按 lg( 1 + bt) = c(常数 ) t( 日 ) 0 6574 9496 10227 17546 18384 19404 19860 20225 l( ) 0 60. 7 71. 4 7
9、5. 3 79. 4 79. 9 80. 9 82. 0 82. 8 2 Q ( a, b) Q( a, b) 54 计算得 a= li lg( 1 + 2 bti ) - 北 京 广 播 学 院 学 报 (自 然 科 学 版 ) , b 1, 经计算得 第 12 卷 b 取不同值 因为 c= 0, 所以 lg ( 1 + lg ( 1 + b ti ) bti ) bti ) 时的 a 及 Q 表 2 ( a, b)如表 2。 由上表可知 Q ( a, b )在 b = 0. 00699, a = 38. 代入数值由 x、 y、 b 计算 a、 Q; 27693 时取极小值 , 此时 Q (
10、 a, b ) = 31. 7917, 故 ( 5)改变 b 的取值 , 多次调用该 M 函数 , 比较 结果中的Q 值 , 最小的 Q 值所对应的 a、 b 值即为 基线基准尺用 果为 l = 38. alg ( 1 + bt ) 的最小二乘法 逼近结 28 lg ( 1 + 0. 00699t) 所求。 改变 b 的取值 #这部分工作也可 编一个循 环函数 , 输入 b 可能取的区间 , 计算不同 b 对应的 Q, 再进行比较 , 保留使 Q 最小 的 b 及对应的 a。 4用 M atlab 实现曲线拟合 M atlab 是一种功能强大的系统分析和仿真工 但通常 b 的改变对 Q 的影响
11、不是线性的 , 为方便 观察结果并选择适当的 b, 改变 b 的取值 #这部 分工作最好还是编程者自己完成。 具 , 我们选用它作为实现曲线拟合的软 件工具。 用 M atlab 语言编程实现最小二乘法的思路 : ( 1) 输入各参量 x、 y 的测量值 ( 以数组形式 输入 , 这样便于在计算过程中引用 ); ( 2) 用 M atlab 语言中的 plot 函数 x、 y 的曲线 关系图 , 以此图对比典型曲线图 , 选择合适的经验 公式 ; ( 3)按照上例中的方法 , 选一个系数 a, 求 Q ( a, b)对它的偏导数 , 求出其计算表达式 ; ( 4)编写 M atlab 的 M
12、函数 , 用来完成经验公 式中待定系数 a 的计算 , 该函数输入量为 x、 y、 b, 输出量为 a、 Q, 按照由最小二乘法推导出的公式 最后 , 只要将得到的函数图像和 x、 y 的曲线 关系 图进行 对比 , 就可 以直观 的看 到拟合 的效 果了。 另外 , M atlab 语言提供了一个函数 , 可以完成 线性曲 线拟合 , 这就是 函数 polyf it 函数 po lyfit 的输入量为 x、 y、 n, 其中 x、 y 即为需要建立相互 关系的两个量的测量值 , 以数组的形式输入 , n 为 多项式的次数 ; 输出的是多项式系数的行向量 , 而 得到的多项式是降幂的。 b a
13、 Q ( a, b ) b a Q ( a, b ) 0. 00100 64 149. 2 0. 00699 38. 27693 31. 79 0. 00270 48 51. 5 0. 00700 38. 26526 31. 79 0. 00285 47 48. 0 0. 00701 38. 25362 31. 79 0. 00350 45 40. 4 0. 00710 38. 150 31. 81 0. 00500 41 33. 4 0. 01000 36 32. 0 0. 00560 40. 164 32. 03 0. 05000 27 61. 4 0. 00698 38. 28861 3
14、1. 79 0. 10000 24 77. 0 由物理判断 0 l lg( 1 + a= 2 第 2 期 王 可等 : 基于 M atlab 实现最小二乘曲线拟合 55 5 举例说明 现在举一个例子 , 用 M atlab 实现曲线拟合。 例 : 某一消失模滤波器中螺钉归一化插入深 度与其对应的电纳值的数据如表 3。 表 3 现在按照上面介绍的方法用 M atlab 语言求 B c= f ( h )。 图形如图 2。选型 y = ax ( 3)由最小二乘法得 b 的经验公式。 ( 1)输入数据 : h= 0. 2411 0. 2328 0. 2245 0. 2162 0. 2078 Q ( a
15、, b ) = b (B c - ah ) 2 = m in 0. 1995 0. 1912 0. 1829 0. 1746 0. 1663 0. 1580 0. a = B ci ! h h 1497 0. 1413 0. 1330 ; B c= 4. 029 4. 226 4. 439 4. 690 4. 984 5. 296 ( 4)编写 A. m 计算 a、 Q: 5. 724 6. 219 6. 829 7. 628 8. 646 10. 333 13. 668 ( 5)改变 b 的取值 , 调用 A. m 函数 : 23. 038; 经过比较 , 当 b = - 3. 528 时
16、, Q = 38. 5778 ( 2)画图 , 选择经验公式 : 为最小 , 此时 a = 0. 0157, 所以 Bc= 0. 0157h 。 最后画出测量数据关系图和函数图像如图 3。 图 2 数据曲线 图 3 数据曲线与函数图像 h B c h B c 0. 2411 4. 029 0. 1829 6. 219 0. 2328 4. 226 0. 1746 6. 829 0. 2245 4. 439 0. 1663 7. 628 0. 2162 4. 690 0. 1580 8. 646 0. 2078 4. 984 0. 1497 10. 333 0. 1995 5. 296 0. 1
17、413 13. 668 0. 1912 5. 724 0. 1330 23. 038 b 2b - 3. 528 56 北 京 广 播 学 院 学 报 (自 然 科 学 版 ) 第 12 卷 其中虚线为求得的函数图像。 下面再分别选 y = a + b logx 和 y = ax 作为经验公式进行拟合 : 2 + bx+ c 之间的最小二乘法的曲线拟合 , 通过以上说明可 以看出 , 采用本文所述方法进行两个量之间关系 的曲线拟合是较为方便和实用的 , 并且对于实现 1 对于型 , 步骤如上 , 结果为 a = - 30. 9, b = 多个未知量的最小二乘法也有一定参考价值。 - 22. 8
18、831, Q = 99. 3345; 2 对于 y = ax + bx + 来做 : po ly fit( h, Bc, 2) c 型 , 可用函 数 po lyfit 参考文献 : 1 刘智敏 . 误差与数据处理 M . 北京 : 原子 ans = 能出版社 , 1981. 1. 0e+ 003 * 2 H anse l an D, L ittefie ld B , 李人厚 . 张平安 2. 3498 - 0. 9981 0. 1097 等校译 . 精通 MATLAB 5 综合辅导与指南 计算 Q = 44. 1177; 比较三种经验公式得到的 Q 值可知 , y = ax 型得到的 Q 值
19、最小 , 因此是最合适的。 6 结束语 b M . 西安 : 交通大学出版社 , 2001. 本文详细说明了用 M atlab 语言实现 两个量 A c tua lizing L east- squares Cu rve- fitting B ased on M atlab WANG K e , MAO Zh i- ji ( T elecomm un ica tion D epa rt ent Comm un ication U niversity of Ch ina, Be ijing 100024, PRC) Abstract Function re la tion betw een ph
20、ysics variab les is i portant in actua l research. Th is paper introduces least squares princ iple first ly, then introduces the m ethods and approaches o f actua lizing L east- squares curve - f itting based on M atlab to ga ined function re lation, fina lly this paper com pares resu ltsw hich are received by d ifferent fitt ing w ays through an exam ple. K ey w ord s: M atlab; L east squares; Curve fitt ing ( 责任编辑 : 韩月珍 ) 2