原标题: Matlab数据拟合工具在数学建模中的简单应用
01问题说明
下表为中国国家统计局提供的《50个城市主要食品平均价格变动情况》整理的2016年1月至5月豆角价格数据表。 请建立数学模型解决两个问题。
)1)豆角价格有什么特点?
)2)预测6月份豆角价格变化情况。
02模型假设,符号说明
2.1模型假说
一个国家的宏观经济具有周期性,作为一个国家宏观经济组成部分的物价水平也具有周期性,随着经济周期的上下波动,物价水平也随之上下波动。 因此,描述物价水平的数学模型——的经验公式也应该具有周期性。 让我们假设描述物价水平的数学模型是周期函数,可以转换成傅立叶级数。
2.2符号说明
从表中可以看出,国家统计局一个月内三次调查统计了50个城市主要食品的平均价格变动情况,分别是1-10日、11-20日和21-30日三个时间区间。 因此,描述物价水平的周期函数的自变量是月。 为了便于处理,再次进行抽象处理,将时间抽象为整数n,其中0=N=36。 那么,如何用n来表示某个月亮呢? 怎样用n来表示某个月的第几次调查呢? 为此,请使用以下两个运算符: 高级编程语言同时具有这两个运算符。
//整除运算符,例如13/3=4
360模式运算符,例如13%3=1
这样的整数n和月份与当月第几次调查的关系可以表示如下。
调查步骤Q=N%3
Q=0时,调查月M=N/3,否则M=N/3 1
例如N=13,则调查顺序Q=1,调查月M=5,这表明5月的首次调查,即调查时间为5月1-10日。
03数学建模
接下来,我们来看看如何使用MATLAB的数据拟合工具来解决这个问题。
时间矩阵N=[1 2 3 4 5 6 7 8 9 10 11 12 13 14];
豆角价格的矩阵vig na=[ 10.3610.1912.6912.1417.416.4717.6917.2215.4813.8211.7610.939.157.92 ];
3.1进入数据拟合窗口
在MATLAB命令行窗口中输入cftool,回车即可。
3.2数据拟合
在区域1中选择该坐标轴的变量名,在区域2中选择拟合的函数模型后,在区域3中自动显示拟合的图像,在区域4中给出拟合的函数公式。
在区域2中可以选择以下函数模型:
自定义方程
扩展指数拟合
傅利叶拟合
Gaussian高斯拟合
内端口插值
线性拟合线性拟合
Polynoimal多项式
功率函数拟合
Rational有理拟合,两个多项式之比,分子和分母都是多项式
样条曲线平滑样条曲线
Sum of Sine正弦曲线拟合
威布尔听话的鸽子拟合
区域4显示了拟合结果的评价指标,含义如下。
SSE:Sum of Squares due to Error误差平方和,越接近0曲线则拟合效果(通过最小二乘法计算) ) ) ) ) ) ) ) ) ) ) ) ) )。
越接近R-square,曲线的拟合效果越好
越接近Adjusted R-square,曲线拟合效果越好
RMSE:root mean square error的均方根误差,越接近0曲线拟合效果
最后来看看正题的拟合效果吧。 如下图所示。
最后,让我们看一下区域4中显示的函数模型。
通用模型表单1:
f(x )=a0a1*cos(x*w ) B1 * sin (x * w ) ) ) ) ) ) ) ) f(x ) ) ) ) ) ) ) f ) ) w ) ) w ) ) w ) w ) w )
coefficients (with 95 %确认bounds ) :
A0=13 (11.75,14.25 ) ) ) ) ) ) ) ) ) )。
a1=-4.347(-5.235,-3.459 ) ) ) ) ) ) ) ) ) ) )。
B1=0.34(-3.128、3.808 ) ) ) ) ) ) ) ) )。
w=0.4398 (0.3295,0.5501 ) )。
Goodness of fit:
SSE: 9.611
R-square: 0.9314
Adjusted R-square: 0.9108
RMSE: 0.9803
通过对各种函数模型的拟合,发现该模型的拟合效果最好,R-square: 0.9314非常接近1。
因此,描述豆角价格变化规律的数学模型如下。
vigna=f(n )=13-4.347*cos ) n*0.4398 ) 0.34*sin ) n*0.4398 )
这是一个周期函数,它遵循经济周期规律。
至此,正题基本解决了。
04总结
本文通过数学建模主题说明了数据拟合工具在MATLAB中的使用。 这个工具比较简单,但非常强大。 MATLAB包含许多强大的工具,如果读者感兴趣,可以继续探索。 此外,使用该工具时,还可以从软件设计的角度进行享受。 我个人认为MATLAB软件的设计是经典的学习范例。
结束。
责任编辑: