当前位置:   article > 正文

数学建模美赛E、F题备考策略(自用,大部分复制粘贴)_美赛ef题常用模型及算法

美赛ef题常用模型及算法

这里要讲一下故事的背景,我们小组三个人都是大一大二的学生,我的队友们都是数学专业的学生,所以比赛中的编程部分就交给了我这样的工业工程系的选手。我们在看完了历年赛题后一直认为:前面的几题我们都很难建立出很棒的模型,因此我们将目光对准E、F两题,希望能够从这两题上下下功夫,曲线救国,浅浅混个S奖或者H奖就好啦!

 一、19-22年E题F题学习与解析

 

二、E题F题备考策略

        我参考了B站UP主“研究生小杨肖恩”的视频资料,并在此基础上进行了一些细化,就形成了下面的内容,在此向他表示感谢~

        在“研究生小杨肖恩”的视频中,他提到,E题和F题的共同点都是“模型简单,而且都基于引入概念建立指标体系和评价模型”,而对于其不同点,E题是环境可持续性题目,侧重于数据的量化分析,而F题更倾向于政策制定,以及评估某政策对于某个国家的动态影响。下面是他的视频中整理的模型需求,我的学习也将具体依照其展开。

(38条消息) 【Lingo 18.0及其安装教程】_春风惹人醉的博客-CSDN博客_lingo

1、运筹学相关内容(应用场景:需要优化时)

        这部分内容我已经学过了相关的数学运算部分,具体内容在我的大二自救手册中,可以对于这些若干规划的代码实现和一些求解器的使用方法我还不是很熟悉,下面我就来学习一下:

>>MATLAB求解线性规划问题模板

输入下面的MATLAB代码,求目标函数的最大值

  1. clc,clear
  2. prob=optimproblem('ObjectiveSense','max') %目标函数最大化的优化问题
  3. c=[4;3]; %目标函数是z=4x+3y达到最大值
  4. b=[10;8;7]; %Ax<=b矩阵的b
  5. a=[2,1;1,1;0,1]; %A矩阵
  6. x=optimvar('x',2,'LowerBound',0); %2表示决策变量的数目
  7. prob.Objective =c'*x; %目标函数
  8. prob.Constraints.con = a*x<=b; %约束条件
  9. [sol,fval,flag,out]=solve(prob) %fval显示最优值
  10. sol.x %显示决策变量的值
  11. y=fval %显示最大值

求目标函数的最小值:先化成最佳形式

  1. clc,clear
  2. c=[-4;-3]; %求z=-4x-3y的最小值
  3. b=[10;8;7];
  4. a=[2,1;1,1;0,1];
  5. lb=zeros(2,1); %2*1的一个全是0的矩阵,代表x和y的下界都是0
  6. [x,fval]=linprog(c,a,b,[],[],lb) %没有等号约束
  7. y=fval %目标函数最小化

 >>MATLAB求解整数规划问题

·单纯的整数规划问题(《数学建模算法与应用第三版P25-26》)

  1. clc,clear
  2. prob=optimproblem('ObjectiveSense','max') %目标函数最大化的优化问题
  3. c=[4;3]; %目标函数是z=4x+3y达到最大值
  4. b=[10;8;7]; %Ax<=b矩阵的b
  5. a=[2.2,1;1,1;0,1]; %A矩阵
  6. x=optimvar('x',2,'Type','integer','LowerBound',0); %2表示决策变量的数目
  7. prob.Objective =c'*x; %目标函数
  8. prob.Constraints.con = a*x<=b; %约束条件
  9. [sol,fval,flag,out]=solve(prob) %fval显示最优值
  10. sol.x %显示决策变量的值
  11. y=fval %显示最大值

·蒙特卡洛法求解整数规划问题

>蒙特卡洛法求解图形面积

        设计随机试验,在一定范围的矩形/其他图形区域(假设是一个【0,12】*【0,9】的矩形)内产生服从随机分布的10……7个随机点,统计随机点落在代求图形内的频数,则代求图形的面积就是上述矩形的面积乘以频数。

  1. clc,clear,n=10^7
  2. x=unifrnd(0,12,[1,n]);
  3. y=unifrnd(0,9,[1,n]);
  4. pinshu=sum(y<x.^2 &x<=3)+sum(y<12-x & x>=3);
  5. area_appr=12*9*pinshu/n

>蒙特卡洛法求解非线性整数规划(可用Lingo软件求得精确的全局最优解)

《数学建模算法与应用第三版P28-29》

>>掌握单目标与多目标规划模型

《数学建模算法与应用第三版P482》

(38条消息) 【数学建模】多目标规划_SuperSources的博客-CSDN博客_多目标规划

 2、评价方法与模型(应用场景:)《数模P411》

评价方法大体上可分为两类:(确定权重的方法不同)
1.主观赋权法:综合指数法、模糊综合评判法、层次分析法、功效系数法等

2.客观赋权法:主成分分析法、因子分析法、TOPSIS法、秩和比法、灰色关联法、熵权法、层次分析法、模糊评价法、物元分析法、价值工程法、聚类分析法、神经网络法等

TOPSIS(逼近理想解)算法原理详解与代码实现 - 知乎 (zhihu.com)

数据包络分析DEA(Data envelopment analysis) - 知乎 (zhihu.com)

(38条消息) 秩和比综合评价法(RSR)详解及Python实现和应用_fanstuck的博客-CSDN博客_秩和比综合评价法

 

>>熵权法(通过样本数据确定评价指标权重的方法)

数学建模笔记——评价类模型之熵权法 - 知乎 (zhihu.com)

        完全由数据出发,且具有一定逼格的确定权重的方法。不足之处:只从数据出发,不考虑问题的实际背景,确定权重时就可能出现与常识相悖的情况。以至于评分的时候,也会出现问题。当然啦,我们完全可以灵活一点。熵权法还是有它的优势的,而且逼格比较高……

        熵权法的原理是:指标的变异程度越小,所反映的现有信息量也越少,其对应的权值也越低。也就是说,熵权法是使用指标内部所包含的信息量,来确定该指标在所有指标之中的地位。由于熵衡量着系统的混乱程度,也可以拿来衡量信息的多少,方法被命名为熵权法倒也可以理解。

        清风老师提出了一个有意思的问题。在评选三好学生时,如果X是严重违纪上档案的次数,Y是被口头批评的次数,哪一个指标对三好学生评选的影响更大?很明显,实际生活中,一旦严重违纪记入档案,基本就不可能再成为三好学生。但绝大多数人这一指标的值都是0,只有很少数人是1或者2。它的波动很小,按熵权法赋权时的权重就很小。但如果真这么做了,可能某个人即使严重违纪了,依然有可能被评为三好学生。这是与实际不符合的。

这个例子告诉我们,熵权法的局限性在于,它仅凭数据的波动程度,或者说所谓的信息量来获得权重,不考虑数据的实际意义,很可能得出违背常识的结果。

>>主成分分析法(应用场景:变量较多)《数模P281》

        主成分分析法试图在力保数据信息丢失最少的原则下,对多变量的截面数据表进行最佳综合简化,对高维空间进行降维处理。

如何理解主成分分析法 (PCA) - 知乎 (zhihu.com)

通过 恰当 的数学变换 ,使新变量—— 主成分成为原变量的线性组合 ,并选 取少数 几个在变差总信息量中 比例较 大的主成分来分析 事物 的一种方法 。 主成分在变差信息量中的比例越大 , 它在综合评价 中的作用就越大

思想:整体思想就是化繁为简,抓住问题关键,也就是降维思想。当然,既然是抓住关键,那么自然就是以牺牲精度为代价。

解决问题:因为每个变量都在不同程度上反映了所研究问题的某些信息,并且指标之间彼此有一定的相关性,因而所得的统计数据反映的信息在一定程度上有重叠。在用统计方法研究多变量问题时,变量太多会增加计算量和分析问题的复杂性。

优点:化繁为简,降低了计算量。

缺点:一定程度上损失了精度。并且只能处理“线性问题”,这是一种线性降维技术

主成分分析法(PCA)原理和步骤(超级详细) (biancheng.net)(用主成分分析法对图片进行降维)

·主成分的解释其含义一般多少带有点模糊性,不像原始变量的含义那么清楚、确切,这是变量降维过程中不得不付出的代价。
·主成分分析的困难之处主要在于要 能够给出主成分的较好解释,所提取的主成分中如有一个主成分解释不了,整个主成分分析也就失败了。
·主成分分析不可用于评价类模型。
·主成分分析可用于聚类分析,将自变量进行降维方便画图。
·主成分分析也可用于回归分析解决多重共线性的问题。
·主成分分析实际上是因子分析的特例,但是由于因子分析便于解释,所以建议大家多用因子分析。
————————————————

3、回归与分类

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/139808
推荐阅读
相关标签
  

闽ICP备14008679号