数学建模之模型代码全归纳——叁:分析类模型Ⅰ拟合法
如果一直钻研一类问题的话,思想就会固化,所以这次带来的是预测类模型中的插值与拟合,而这个也是笔者学习过程中经典的入门模型。
如果一直钻研一类问题的话,思想就会固化,所以这次带来的是预测类模型中的插值与拟合,而这个也是笔者学习过程中经典的入门模型。
目录
模型
历史背景
拟合法最早出现我们儿时对实际问题的数据化处理中,每个方程,每个函数都是对问题本身的一种反映。而这一点在现在的数学问题中同样适用——还有什么比一个函数关系式更能直观地表现出变量之间的相关性呢?而拟合法不仅可以用来刻画相关性,还可以通过对自变量的修改来合理外推,得到先前不存在的结果从而进行预测,不过本文只考虑其作为分析类模型的解题步骤,不涉及预测类问题。
图像概述
模型步骤
1、数据预处理,预处理的方式有很多,清洗、集成、归约、变换……这些方式会在笔者的其他博客中谈及,这里继续宁数据预处理是为了保证拟合精度,去除噪点。
2、选择变量,在例题中通常只有一个自变量和一个因变量,如某小区房屋使用面积和售价的关系,这个关系经过拟合操作后会转变为一个一元函数。但是在比赛中,大部分问题都是多元化的,多个因素共同决定某几个结果,所以选择合适的变量也很关键。
3、拟合函数,函数的种类不胜枚举,指数,对数,三角,幂级数等等,切忌想当然地认为哪种函数最合适,应该使用matlab拟合工具箱切换不同的函数并对参数进行相应的调整,工具箱中也提供了一些检验手段来比较拟合精度。
典型例题
2015年B题《“互联网+”时代的出租车资源配置》
2018年美赛A题《Multi-hop HF Radio Propogation》
优劣分析
这里要提及一下拟合和回归的区别,网上对此事众说纷纭,笔者认为拟合是你有一堆数据点,想要找一个函数把这些点都串在图像上,而回归是你划了一条曲线,希望已知的数据点都尽可能靠近曲线。当然这只是笔者的个人观点,其实还有一个更明确的方法,就是看使用的是rstool(回归工具箱)还是cftool(拟合工具箱)。优点的话是建模迅速,对于小样本、关系简单的数据很有效,并且得到的函数关系式易于理解,便于作决策分析;缺点是对于大型的繁复的特征难以找到恰当的函数表达式,而且代码多依靠工具箱,灵活性不高,自己编程会很麻烦。
优化改进
在数据处理上可以进行优化,以便于曲线更加贴合数据,可以参照这篇文章[1]郭斯羽,吴延冬.去除离群点的改进椭圆拟合算法[J].计算机科学,2022,049(004):188-194.运用截断最小二乘法对离群点进行修饰。
代码
这里的代码仅是笔者运用cftool工具箱导出的拟合代码,matlab自带的拟合函数是polyfit,但是功能较为受限,还是推荐使用cftool。

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)