2021华为杯数学建模获奖经验分享

前言

本科时就很遗憾没能参加什么竞赛,到了研究生阶段想弥补一下本科阶段的缺失,刚好学校组织了华为杯数学建模的比赛,没什么经验的我就报名参加了,没想到最终获得了国二,虽然和那些拿国一的大佬还是比不了,不过对于我个人来说已经很满意了。下面分享一下整个的准备过程。

赛前准备

招募队友阶段是数模竞赛过程中非常重要的一个环节,遇到负责任厉害的队友整个建模过程就会很轻松,获奖几率也会大很多,如果队友是那种混子,很可能最后建模编代码写论文都是你来弄,他什么都不帮忙,你累死累活也很难拿到奖,比赛过程中身边有的队伍就是这样,甚至最后都没有完成比赛。

因此一开始选择队友时我比较谨慎,当时我们组队都是找身边同学或者在数模群里面招募,因为当时身边同学基本都组好队了,所以最后我选择了在数模群里面寻求队伍。在群里我看到有一位招募队友的同学写的介绍十分认真,需求也很明确,感觉应该很靠谱,就私聊进行了自我介绍,还发了一份简历,最后成功和他与另外一位同学组好了队。但是后续因为各种原因这两位同学都退出了队伍,我莫名其妙的成为了最终的队长。重新选择队友后,我与一位本科211保研过来,有两次建模经验的女同学和一位研一就发表过sci,有论文编写,绘图经验的机械学院的学长组成了队伍。事实证明选择好的队友就成功了一大半,后续比赛过程基本就是我被他们带飞。

组好队伍以后,当时大概离比赛还有一个多月。因为我和那位女同学都是计算机学院的,所以我们主要负责编程和建模方面的工作,学长就主要负责写作绘图这一块,我们首先统计了一下各自的能力和软件,算法掌握水平,用以下的这张表进行统计:
2021华为杯数学建模获奖经验分享_第1张图片
然后赛前我和那位女同学负责准备了一下常见的算法代码,数据库操作流程之类的,看了一下司守奎的数模书,顺便还学了一下matlab,但是最后还是发现python写的顺手,就没用matlab,学长就主要学学论文绘图的工具vision.

当时还没有正式开学,我们约定每个人一个星期左右看一到两篇历年优秀的论文,最后通过办公软件线上开会,交流一下学习进度。最终三个人把最近三年每个题目的优秀论文都大概看了一到两篇,这个过程还是很有收获的,总结了一下拿国一同学们的论文结构和思路,讨论我们可以从其中学习到什么。

正式比赛

因为比赛比预想的推迟了一个月,刚好赶上我们上课,有的课还不能逃,所以开始基本就是一边上课一边赶进度的节奏。

拿到题目,先分工看了一下每个题目大概的内容,A题是华为出的,专业性太强,我们没有相应的专业背景,果断排除。E信号干扰下的超宽带涉及的问题,估计到时候会有比较多的公式,数据比较多,可能处理起来比较久,也排除了。 C题帕金森病的脑深部电刺激治疗建模研究,跟电路有关,F题航空公司机组优化排班问题,有一点复杂,没有太好的思路,最后也排除掉了。初步选择了B题的空气质量预报二次建模和D题的胰腺癌分子特征筛选,因为发现D题和我们之前看过2019年的题目辛烷值那一道很相似,有现成的论文可以参考,最终果断选择了D题,这样我们第一天上午就确定了选题,然后大概拟写了第一问的思路。上午上完课以后,到学校提供的场地开始具体的工作。

学长第一天负责把论文前面的研究背景,论文重述部分解决,我和另外一位同学完成了第一问的数据预处理,相关系数计算的一部分,因为担心选择D题的人太多,很难出彩,我们第一问最终选择了四大类,六种方法进行处理,工作量还是很饱和的,期间也遇到了代码问题解决不了的情况,不过因为我们有两个同学负责代码编写,所以相互帮助,分工合作,还是勉强完成了工作。
2021华为杯数学建模获奖经验分享_第2张图片
第二天白天基本满课,我们让学长根据我们写出来的第一问内容进行相应的论文编写,另外一位同学完成第一问尚未实现的方法和代码调试,我着手解决第二问。最终我们第二问采用了最基础的神经网络BP和再此基础上加以改进的遗传—神经网络方法,做了一个简单的对比
2021华为杯数学建模获奖经验分享_第3张图片
第二天结束,第一问基本写完了,第二问流程大概清晰。

第三天开始有了完整的比赛时间,主要还是我们两个负责解决第二问,第三问的代码问题,学长负责写作
2021华为杯数学建模获奖经验分享_第4张图片
第三问采用了决策树,随机森林,XGBOOST三种方法进行对比
2021华为杯数学建模获奖经验分享_第5张图片
第三天结束,前两问大概做完了,第三问有了比较清晰的思路。

第四天上午,负责代码的另一位同学开始完善第三问的代码,我处理前面程序的扫尾工作,接着整理了一下第四问的思路,帮着学长修改论文,第四问我们一直没有太好的解题的思路,最终只是采用了遗传算法进行解决,这部分的内容做的不太好,只是大概求得了一个结果,最终没能拿到国一和第四问做的不太好有最直接的关系
2021华为杯数学建模获奖经验分享_第6张图片
最后一天晚上,我们到了我实验室的会议室进行了通宵,大概到晚上十点左右,代码基本写完了,我们三个开始一起完善论文,各自负责一部分的内容补充和完善。大概到晚上一点多,初稿基本完成了。我们三个聚在一起开始一个字一个字的看写完的论文,商讨一下如何修改完善,大概凌晨四点左右看完,记录了修改意见,学长开始重新调整整篇论文的结构和格式,我和另外一个同学将代码整理了附录,凌晨五点左右完成了初稿修改,然后使用免费的查重软件将论文查了一遍重复率,根据修改意见把论文重复段落过多的地方进行了修改。早上六点论文修改完毕,重新一起大概过了一遍内容,早上八点左右完成所有工作,仔细对照提交论文的要求,进行了相应修改,最终提交了论文。然后各自回到了寝室睡觉,结束了大概二十多个小时的通宵。

结语

其实数模比赛并没有我一开始想象中的那么难,掌握最基础的方法,多进行对比,把论文尽可能的写的长一些,排好版,图片绘制好看一些,拿奖还是没那么难的。在这里要万分感谢一起参加比赛的队友们,一起度过了难忘的五天,期间基本每天都只睡六个小时左右,不停的进行思维的碰撞,调整思路,最终才能拿到国二这个成绩。期待下次数模比赛我们可以一起冲击国一!

你可能感兴趣的:(杂文,华为,经验分享,人工智能)