2021长三角数学建模竞赛思路

A题  Go! Fun游长三角

A题如果从旅游业相关企业去看,就不足为奇了,这道题是让我们分析不同类型的游客的旅行规划问题

2021长三角数学建模竞赛思路_第1张图片

2021长三角数学建模竞赛思路_第2张图片

 

 

首先需要爬取不同景点信息,包括经纬度,是否收费,收费的门票多少,周围酒店多少价格,都可以通过地图网页爬取数据,公众号推文有python+selenium案例不会就手动整理。为了能够做第一问,这里可以自行设置一下每个景点中需要花费的时间。

家境良好且平时学习刻苦的小李同学,现住于杭州,要到长三角旅行,杭州离上海比较近,行程定为2小时,一天旅游时间设定为8小时,当天需要返回酒店,如果当天没有足够时间去下一个景点则直接返回酒店,8小时包含回酒店所需得时间,那么第一问就可以这么做,长三角景区基本位于上海,那我们就分析上海的景区,一般旅游会综合考虑要玩的景点地理位置及酒店价格选择住宿。假设住宿不变,到了上海采用徒步的形式到达景点,一般人走路速度为1.1-1.5m/s,两点距离根据Haversine公式计算,一天吃喝按100元算。

第一问仅考虑旅行时间,构建多目标函数,函数1为旅游景点总数最大,函数2为到景点的路上行程最小,自变量1为酒店编号,自变量2为所有景点序列,可通过randperm实现,在内循环内依次遍历randperm产生的序列,直到满足条件终止,约束条件见上一段落,最后给出一个较好的方案即可。程序中需用矩阵时刻记录参数的变化,满足终止条件就输出结果。

第二问,不考虑时间,只考虑旅行资金,第一问模型中删除旅行时间约束,增加约束条件为旅行资金5000元

第三问,同时考虑旅行资金和时间再算一遍

第四问,小李的爷爷也来旅游了,时常怀念曾经的峥嵘岁月,于是跟着小李又来了长三角旅行,总资金变多了,但每天的吃喝消费和住宿费增加了,如果是有门票的景点,费用也增加了,带入第三问模型即可。

第五问,后来小李兼职了新媒体,B站粉丝数达52.5万人了,这次到长三角旅行,每天需要抽出1个小时旅行时间来更新视频,上述模型中约束条件8小时改为7小时,假设小李的初始资金为5000,视频收入在第二天到账,视频的播放量+点赞数+投币+收藏,每一万播放量考虑上点赞数+投币+收藏大概在30元左右收入,在本问可以到B站搜一下相关的景点视频,如果会爬虫的同学可以直接用程序搜集,主要抓取一些相关景点视频的播放量及up主的粉丝数,最后取平均值,按粉丝比例算一下小李如果旅游该景点的收益多少,同样的按上文模型求解,本问的区别在于小李的资金是动态变化的。

 

B题  锅炉水冷壁温度曲线

附件1中十条曲线如下

 

2021长三角数学建模竞赛思路_第3张图片

上图代码

X=xlsread('附件1.xlsx');
figure
for i=1:10
    subplot(5,4,2*i-1)
    plot(X(:,1),X(:,i+1))
    title(['管道',num2str(i),'温度曲线'])
    subplot(5,4,2*i)
    histogram(X(:,i+1))
    xlabel('温度值')
    ylabel('数据频数')
    title(['管道',num2str(i),'温度曲线统计'])
end

第一问统计数据特征,统计变量一般有方差、均值和最大最小值,也可以做下histogram统计图说明下温度主要分布情况。

第二问对十个水冷壁管道的工作状态进行评价,在实际生产过程中,温度变化尽可能平稳,水冷壁温度不宜过高,根据这两个条件,可以使用第一问两个指标,方差和最大值。根据这两个条件,确定方差和最大值均是越小越好,那么从数据大小的角度将这两个指标定义为负向指标,数据归一化时则需要注意减最小还是减最大,将数据归一化至[0,1]备用,评价算法可以用因子分析、秩和比、熵权法求得权重后乘以归一化数据求和。

第三问附件二中包含了111个操作变量和42个状态变量,涉及高纬度数据首先应当对数据降维,可以去看下公众号发布的主成分分析推文,最后取贡献率到刚好到95%以上的k列降维数据,注意降维数据不是指选出主要指标出来,降维数据表示的是153高维数据的投影数据,直接用这k列数据去分别拟合10个管道的温度数据,常用的回归肯定不行,这里是比较复杂的非线性拟合,可以将k列数据和某个管道温度数据先用1stopt遍历下较符合的公式,通过lsqcurvefit函数进行非线性最小二乘拟合。

第四问找出主要操作变量,注意是111个操作变量,求10个温度数据与111个操作数据的相关性,与是个温度数据的相关性取个平均值进行比较,选出最高的介个,算法可采用余弦相似度、皮尔逊等。

第五问第四问中的相关性矩阵,取与第十个管道从3172节点以后的温度数据与111个操作数据求相关性,可以选5-10个操作变量备用,拟合出一个关系式,构建一个启发式算法,目标函数1为3172节点以后的数据总下降值,目标函数2为依然高于445的数据个数,目标函数3同样也是自变量为调节的操作变量个数,目标函数4为所有调节变量总下调比例;自变量1为调节的操作变量个数,自变量2设置每个操作变量调整比例为[0-0.2],同样的对3172节点后的操作变量数据进行整体的调节,向上还是向下调节可通过rand随机。启发式算法可采用模拟退火框架和蒙特卡洛框架,外循环为个体间比较,内循环为蒙特卡洛试验,内循环根据当前的调节操作变量个数随机模拟n次变量调整比例下的函数值,也就是变量2放在了蒙特卡洛试验中,通过非支配排序选择结果最好的试验作为当前个体的变量及函数值,外循环的个体间比较也同样通过非支配排序,迭代结束,输出最优解集的parote图及排名靠前的几个方案。(算法可参照公众号算法推文)

你可能感兴趣的:(数学建模)