建模
美赛涉及的建模知识范围非常广且深,纵观美赛真题不难发现,很多的模型 都是读研或者读博的时候才会真正深入开始研究,因此,对于做建模的同学来说,
是无法在赛前吃透大量模型的。推荐本科生分两个步骤去有效准备比赛:
1.了解经典模型
赛前需要对所有经典模型有基本了解,如适用范围、基本原理和实现步骤,做到比赛时能够根据问题确定何种模型进行研究。
(1)层次分析法 (AHP)—— 评价/决策问题
层次分析法是将定性问题定量化处理的一种有效手段,因此它可以广泛用于 评价问题和决策问题。面临各种各样的方案,要进行比较、判断、评价、最后作 出决策,例如去某地旅游要考虑景色、费用、居住、饮食和旅途等费用,不同地 区在这些方面各有特点,如果只是凭借经验处理这些问题,主观性较强,不能使
人信服。
第一步:建立层次结构模型
一般分为三层,最上面为目标层,最下面为方案层,中间是准则层或指标层。
注意:在层次划分及因素选取时,上层对下层有支配作用;同一层因素不存
在支配关系(相互独立);每层因素一般不要超过9个。
第二步:构造成对比较阵
要比较n 个因素对目标的影响,我们要确定它们在目标层中所占的比重(权 重)图片,可以用两两比较的方法将各因素的重要性量化(两个东西进行比较,
最能比较出它们的优劣及优劣程度)。如何确定?
重要性相同 | 稍微重要 | 重要 | 非常重要 | 绝对重要 | |
aij | 1 | 3 | 5 | 7 | 9 |
最终形成比较矩阵:
第三步: 一致性检验
在给出成对比较矩阵的时候存在一定主观性,因此需要通过一致性检验判断
成对比较矩阵的合理性。
1、计算一致性指标 CI
用来衡量成对比较矩阵的不一致程度。
2、 查找相应的平均随机一致性指标RI。
n | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
RI | 0 | 0 | 0.58 | 0.90 | 1.12 | 1.24 | 1.32 | 1.41 | 1.45 |
3、计算一致性比例CR。
CR<0.1时,认为矩阵 A 的不一致性是可以接受的,反之,应该修改成对比
较矩阵。
第四步:计算权重向量
求矩阵A 的最大特征值所对应的向量,并归一化,即可作为权向量。权向量 的各个权重就是决策层对目标层的影响大小。把每一层对上一层的权重依次乘起来,即可得到最终的权向量,有大到小排列即可得到评价标准或者决策方案。
注意:
1、层次分析法只能从现有的方案中选择出较优的一个,并不能提供出一个新的或是更好的方案来;
2、 建立层次结构及成对比较矩阵,主观因素起很大作用,这是一个无法克 服的缺点,因此建议比赛时如果要用这种方法,可以在网上查找充足的资料,再 由小组共同打分或者单独打分取平均值,以此规避主观性,此外, 一致性检验必不可少。
(2)狄克斯特拉 (Dijkstra)
算法- — 最短路问题
最短路问题是图论应用的基本问题,很多实际问题,如线路的布设、运输安 排、运输网络最小费用流等问题,都可通过建立最短路问题模型来求解。Dijkstra 算法采用的是一种贪心的策略,为了在计算机上描述图与网络,我们采用邻接矩阵表示法,其中邻接矩阵是表示顶点之间相邻关系的矩阵,记为
W=(W₄),n
声明一个数组dis 来保存源点到各个顶点的最短距离和一个保存已经找到了最短路径的顶点的集合: T。初始时,原点 s 的路径权重被赋为0 (dis[s]=0)。若对于顶点 s 存在能直接到达的边(s,m), 则把dis[m]设 为w(s,m)同时把所有其他 (s 不能直接到达的)顶点的路径长度设为无穷大。即根据距离给W 赋权:
初始时,集合T 只有顶点s 。然后从dis 数组选择最小值,则该值就是源点 s 到该值对应的顶点的最短路径,并且把该点加入到T 中,此时完成一个顶点。 然后我们需要查看新加入的顶点是否可以到达其他顶点,并且查看通过该顶点到 达其他点的路径长度是否比原点直接到达短?如果是,那么就替换这些顶点在 dis 中的值,然后又从dis 中找出最小值,重复上述动作,直到T中包含了图的所有顶点。
(3)k- 近邻算法 (KNN)—— 聚类问题
聚类问题常见于数据处理,聚类算法通过感知样本间的相似度,进行归类归 纳,对新的输入进行输出预测,输出变量取有限个离散值。KNN 是一种基于实例 的监督学习算法,选择合适的参数 k 就可以进行应用。k 近邻法的特殊情况是 k=1的情形,称为最近邻算法。
优点: 精度高、对异常值不敏感、无数据输入假定; 缺 点 :计算复杂度高、空间复杂高。
算法三要素: k 值的选择、距离度量、分类决策规则。如果选择较小的值, 分类结果会对近邻的实例点非常敏感,如果邻近的实例点恰巧是噪声,分类就会 出错;如果选择较大的值,与输入实例较远的(不相似的点)也会对分类产生影响,使分类发生错误。关于如何选择合适的k, 没有固定的计算方法,而是依赖经验。
距离的度量一般采用欧氏距离,优点在于计算量小,容易解释且足够准确。 分类决策规则采用“投票法”,即选择这k 个样本中出现最多的类别标记作为预 测结果或者采用”平均法”,即将k 个样本的实值输出标记平均值作为预测结果;还可基于距离远近进行加权平均或加权投票,距离越近的样本权重越大
(4)灰色预测—— 预测模型
对于一些预测问题,如气象预报、地震预报、病虫害预报等可以用灰色预测模型解决。
灰色预测是一种对含有不确定因素的系统进行预测的方法。灰色预测通过鉴 别系统因素之间发展趋势的相异程度,即进行关联分析,并对原始数据进行生成 处理来寻找系统变动的规律,生成有较强规律性的数据序列,然后建立相应的微 分方程模型,从而预测事物未来发展趋势的状况。其用等时距观测到的反应预测 对象特征的一系列数量值构造灰色预测模型,预测未来某一时刻的特征量,或达到某一特征量的时间。
步骤一:生成数列
通过对原始数据的整理寻找数的规律,分为三类:
1.累加生成: 通过数列间各时刻数据的依个累加得到新的数据与数列,累加
前数列为原始数列,累加后为生成数列。
2.累减生成: 前后两个数据之差,累加生成的逆运算,累减生成可将累加生
成还原成非生成数列。
3.映射生成: 累加、累减以外的生成方式。
步骤二:建立模型
把原始数据加工成生成数,对残差(模型计算值与实际值之差)修订后,建 立差分微分方程模型,基于关联度收敛分析,GM 模型所得数据须经过逆生成还原后才能用,
2.广泛阅览文献
在正式比赛时,要广泛搜索文献,如果可以站在巨人的肩膀上更好,不能的话只能根据赛前准备自己建立模型。
总的来说,负责建模的同学,其知识储备一是要有一定的数理基础,二是能 掌握相关算法和模型原理,能够建模,三是有一定的论文写作能力,会用公式编辑器敲公式,详细见下脑图。
其中,关于相关算法和模型的学习,推荐选择清风老师的课程,其课程性价 比高,讲解系统透彻,基本涵括上述脑图。智能算法可参考学习龚飞老师在我要 自学网中发布的课程《 Matlab2016 数值计算与智能算法》,涵括大量智能算法 视频教程。同时可以结合一些经典教材,如司守奎老师所写 的《数学建模算法与程序》等。在学习的过程中, 一定要做到勤学勤练,只要练好了知识才是自己的!
另外提前准备好查找文献的期刊网入口,无论是中文的知网、维普,还是英 文的 SCI 、Springer 等都要提前找到, 一般学校的图书馆都会有,没有的话问其他学校同学借图书馆账号或是找代理,总之不要影响比赛时查找文献。关于文献搜索,三个人要分工,即根据题目中可能涉及到的知识分头寻找。
一般先找中文资料,在知网、维普、万方等数据库上进行搜索。建议把一个数据库上关于这方面资料近10年所有相关论文都下载下来,然后用浏览的方式看完,有了一定的了解后选择其中适合的方法加以改进创新,完成模型的建立。阅读完中文文献后可以开始搜索英文文献,根据题目中的关键词及近义词进 行搜索。另外可以按照参考文献历程搜索,每篇文献后面都列有相关的参考文献, 可以通过寻找这些文献来理解研究历程,很可能就有新的发现。查找到文献后,要注意整理与归类,方便寻找与最后的记录。