华为杯数学建模经验分享之赛题篇

文摘   2024-09-02 19:57   贵州  

    第二十一届华为杯数学建模比赛就要开赛了,所以今天分享一下个人数学建模比赛的经验。需要了解更多算法代码的,可以点击文章左下角的阅读全文,进行获取哦~需要了解智能算法、机器学习、深度学习和信号处理相关理论的可以后台私信哦,下一期分享的内容就是你想了解的内容~


   今天给大家分享一期关于华为杯数学建模比赛的经验分享,我将从以下三个方面展开说明:

(1)如何准备数学建模比赛?

(2)如何选择合适的赛题进行建模?

(3)如何提高获奖的机会?

一、如何准备数学建模比赛?

   短时间内完成一篇高质量的参赛作品,离不开团队每一个人的通力合作,所以团队的组建尤其重要。团队一般由建模手、编程手和论文手组成,在第一次参加建模比赛的小白可能会认为建模手只负责建模、编程手只负责编程、论文手只负责写论文,这其实是一个错误的认知。建模手需要将建立的数学模型的思想告知编程手方便其编程实现。其次,也需要将建模的思路告知论文手,与其沟通整个建模框架与思路方法,方便后续论文的写作。最后,编程手和论文手还需要沟通论文结果的呈现与分析。参赛人员需要掌握基本的工具,包括编程工具(matlab、python)、写作工具(word)和画图工具(origin)。所以对上述工具的掌握是必此外,我们还必须白何为数学建模,这是很重要的。对于建模手来说,需要了解什么是数学建模,以及掌握数学建模比赛的常见赛题的建模方法,这就需要建模手多阅读相关优秀论文,此外,还需要掌握相关的编程基础对于编程手来说,必须要学习编程软件,智能算法、机器学习、深度学习相关的代码要做到灵活使用,此外也必须阅读相关的优秀论文,对相关赛题的建模思路有一定程度的了解。对于写作手来说,写作工具和画图工具是必须掌握的,需要大量阅读相关的优秀论文,学习优秀论文的写作框架,形成自己的一套写作思路,此外也要有一定的数学建模知识。模手、编程手和写作手没有谁单独只负责一件事,只是大家的侧重点有所不同。建模手和编程手需要相互沟通做好赛题选择,以及在比赛中要相互交流,确定模型的建立,此外实验结果完成后,建模手需要与写作手沟通写作思路,完成论文写作。

二、如何选择合适的赛题

     数学建模比赛一般分为四大类,优化、预测、评价和机理分析,一般来说预测最为简单,优化最难。如果遇到预测类题目,可以优先选择预测类题目。下面是对四类赛题的简单总结。

A、优化类

    指在满足一定的约束条件下,建立相应的目标函数,使目标函数达到最优(最大或最小)。例如常见的旅行商问题。优化类问题需要根据题目分析得到三个重要因素:目标函数、决策变量和约束条件。此类题目一般较难,不建议小白上手。

解决该类赛题的一般步骤为:

1、确定优化目标

2、确定决策变量

3、构建目标函数

4、分析题目,构建约束条件

5、选择适合的方法求解目标函数

6、求解结果

推荐软件MATLAB、Python

求解方法:智能算法(粒子群优化算法等)、求解器求解(cplex、gurobi)

B、预测类

    指根据现有数据或现象,寻找其内在的发展规律,然后对未来情况做出预测的过程。常见的负荷预测、人口预测、股票预测、时序分类预测等。此类题目易上手,但预测的指标精度高低直接决定是否得奖。

解决预测类赛题的一般步骤

1、分析确定预测目标

2、对历史数据进行数据清洗(补全缺失数据、提出异常数据、归一化处理等)

3、选择合适的预测方法进行预测

4、得出预测结果

5、使用评价指标分析预测结果

推荐预测方法BP神经网络、支持向量机、随机森林、LSTM等。

C、评价类

    指按照一定的标准对事物的发展或现状进行划分的过程。数学建模中可体现在对生态环境、方案策略进行评价。解决此类赛题的关键是构建合适的评价指标体系和合适的评价方法。

解决评价类赛题的一般步骤

1、明确评价目的

2、明确评价对象

3、建立评价体系

4、确定与各项评价指标相对应的权重系数

5、选择或构造综合评价模型

6、计算系统的综合评价值,给出分析结果。

推荐方法数据包络分析、灰色关联分析、主成成分分析和模糊综合评判法。

D、机理分析

    指根据对现实对象特性的认识,分析其因果关系,找出内部机理的规律。在求解问题时,分析对象的物理、化学等相关知识,然后对已知数据或者现象分析做出合理假设,在此基础上构建合适的方程或数学关系式对其内在规律进行数学表达。机理分析题目较难,需要涉及很多知识方能求解,例如空气动力学、流体力学等。

    总的来说,遇到预测类题目优先选择预测类的,那么在平时的准备中可以多看一些相关的优秀论文,学习机器学习、深度学习方面的代码,以便在比赛能够灵活使用,例如支持向量机、随机森林、BP神经网络、LSTM、CNN等代码的学习,你准备的越多做起题目就越容易。

三、如何提高获奖的机会

    比赛期间所有的东西都会呈现在论文上,所以论文的写作是至关重要。在尽可能完成赛题的同时,保证论文的可读性和呈现性是获奖的必要条件。这里要求写作手必须提前阅读相关类型的赛题的优秀论文,模仿优秀论文的写作框架。在赛题确定以后,可以提前和队友商量把论文的框架搭起来。其次对每一个问题的写作上,建议在开始画一个思路框图,通过框图展现我们对这个问题的思考,使用了哪些关键技术,获得了什么结果。其次,实验结果的呈现尽可能的多元化,采用表格、画图等多种方式对结果进行呈现,避免单一化。对于表格中比较重要的数据可以采取加粗的方式。其次,由于赛题的后面几个题目一般比较难,尽可能的把题目做完,那么当遇到较难的题目时,可以适当简化题目要求,做一些合理假设然后去问题进行求解。例如优化类问题,如果遇到大规模的优化问题,第一我们会面临建模困难,求解时间不够等问题,可以尝试将大问题拆成小问题,或者在尽可能合理的情况下简化约束条件等方式,做一个相对简单的模型呈现出来也是可以的。

    这里给写作手分享一个例子,下面是一篇国一的优秀论文。我们可以看到在问题进行分析他们做了一个技术路线,让评审专家一开始就知道你对这个问题的思考,这是一个加分项。我建议比赛的时候可以在每个问题分析之后加上一个技术路线或者流程图。这里的技术路线或者流程图需要建模手和编程手提供。

    其次,结果呈现的多元化,我们来看看优秀论文的结果呈现。

    采用表格、画图等多种方式对结果进行呈现,会显得参赛作品足够高级,也会吸引住评审专家。



    部分知识来源于网络,如有侵权请联系作者删除~


    今天的分享就到这里了,后续想了解智能算法、机器学习、深度学习和信号处理相关理论的可以后台私信哦~希望大家多多转发点赞加收藏,你们的支持就是我源源不断的创作动力!


作 者 | 华 夏

编 辑 | 华 夏

校 对 | 华 夏


matlab学习之家
分享学习matlab建模知识和matlab编程知识
 最新文章