likes
comments
collection
share

编程手|MCM经验分享

作者站长头像
站长
· 阅读数 3

❗坚持就是胜利,完赛就是成功❗

一、前言

含金量/认可度

  • 从认可度来看

美国大学生数学建模竞赛(MCM/ICM),是唯一的国际性数学建模竞赛,由美国数学及其应用联合会主办,2024年大赛吸引了来自美国、中国、澳大利亚、加拿大、英国、印度等多个国家与地区的高校等全球众多高校在内队伍参赛。

  • 从创办时间来看

美赛分为MCM和ICM,MCM 始于 1985 年,ICM 始于 1999 年,单从举办时间来看,影响力更强。

  • 从参赛人数来看

2022年美国大学生数学建模竞赛MCM参赛队伍总数15105支,ICM参赛队伍总数为12100支,累计有27205支队伍参赛,预计接近8万人参加美赛[1]。

编程手|MCM经验分享 网上流传的梗图

Anyway,虽然美赛现在不在中国大学生竞赛榜单赛事中,但是很多学校和企业还是认可这个竞赛的。并且如果你准备出国深造,这个比赛可能是申请中认可度相当高的一个比赛了

二、比赛过程

参赛网址 and 比赛报名

比赛官网:www.comap.com/contests/mc…

比赛赛题:

www.contest.comap.com/undergradua…

由于我是编程手,对于比赛的报名与最终的提交不是很熟悉,因此引用学校的文件简述

编程手|MCM经验分享 报名流程[2]

成员组成与分工

美赛要求参赛成员 <= 3 人。但是一个人做实在是难度太高,建议还是三个人组队一起参加,这样获奖率最高。

比赛较为常见的分工是“建模手”+“编程手”+“论文手”

编程手|MCM经验分享 比赛分工参考[3]

赛前准备

赛前可以把可能需要用到的软件安装起来

编程手|MCM经验分享 比赛中可能需要用到的软件[4]

我们团队在比赛中使用的工具(主要介绍编程手内容):

  • 编程手

    • Matlab R2021a、Pycharm (Python 3.10) -- 代码编写

    • SPSS(IBM SPSS Statistics 24) -- 本地进行数据处理,没什么用,界面古老,想使用数学模型好麻烦,没有深入研究

    • SPSSPRO -- 在线网站来使用数学模型处理数据,但是必须要导入数据才能处理与分析,因此导致了很多人卡在了第一步:求数据,而忽略了某些题目没有找到数据的情况下可以用模拟的数据(设置初始的初始参数【超参数】就能在本地用代码运行处理数据)

    • ChatGPT4 -- 阅读题目,Debug

    • Echarts -- 阿里开源的数据绘图网站

  • 共同使用

    • 飞书 -- 用来在线写中文内容

    • 亿图图示、Canva可画 -- 用来画精美的图

备赛中的一些疑问

赛前需要模拟做题吗?

  • 非常需要,建议至少模拟一次!团队一起进行赛题的阅读,思考与查找资料。可以阅读O、F、M奖论文(主要以O奖为主),尝试完整模仿出符合要求的论文。目的主要是为了跑通流程,查漏补缺,通过模拟来发现自己的不足,从而进行针对性学习。 Remark:
    1. 一定不要盯着一篇论文,然后想着按照它的思路来复现。一定不要轻易尝试复现O奖以下的论文的思路!!!因为美赛很多人都是口水建模,做出来的图的效果和陈述很难完全对应。按照他们的思路自己复现难度也非常高,除非你能找到这篇论文开源的的代码。
    2. 并且很多时候一些指标的选取取决于你所找到的数据,而不是根据别人的论文的指标去找对应的数据,如果这样你很有可能找不到

编程手主要需要掌握哪方面的编程知识?

  • 建议最好能掌握Python的语法,因为我认为现在的人工智能辅助编写代码的效率 Python >> Matlab。Python需要掌握的知识包括但不限于:

    • 如何导入库(import ...)

    • 能看懂函数,以及知道如何调用

    • 知道如何注释语句,如何输出

    • 赛前准备好一些基础的模型与其对应代码,弄清楚模型的输入是什么,输出是什么,能解决什么问题,优劣势是什么

人工智能时代,如何使用AI来辅助编程的?

  • 以我使用的官网ChatGPT4为例,可以使用如下提示词

提示词在数模加油站[5]的基础上进行修改

用到的GPT4均为在GPTS Store中查找的的微调模型

Consensus

编程手|MCM经验分享 GPTS - Consensus

  • 我想了解TOPSIS理想解法,请向我介绍,我只想知道这个模型能解决什么问题,输入什么,输出什么

  • 根据这个模糊评价法的python算法模板,为我生成一个满足这个代码的数据集用来让我运行程序学习。请尽量不要修改源代码,如有修改,请告知

输出示例:

TOPSIS (Technique for Order Preference by Similarity to Ideal Solution) 是一种多属性决策技术,用于评估替代方案并找到理想解决方案。它的基本原则是所选择的方案应该与正理想解(最佳方案)的距离最短,同时与负理想解(最差方案)的距离最远。该方法在不同行业中得到了广泛应用,例如在制造业、医学、软件效率优化等领域。

TOPSIS 模型能解决的问题包括:

  • 在多个替代方案中选择最佳方案。

  • 综合评估不同方案的性能或优势。

  • 结合定性分析和定量分析进行决策。

TOPSIS 模型的输入主要包括:

  • 多个评价指标或标准。

  • 针对每个替代方案的各指标评分或数据。

TOPSIS 模型的输出是:

  • 每个方案相对于理想解的接近程度。

  • 基于这些计算的方案排序(根据理想解的接近程度),从而确定最佳方案。

以下是一些具体应用案例的研究论文:

  1. 在电火花线切割加工中,应用TOPSIS方法解决多标准优化问题 (Gadakh, 2012)

  2. 介绍了改进的TOPSIS方法及其在医学领域的应用,解决了传统TOPSIS方法的局限性 (Wang, Ren, Chen, & Sun, 2013)

  3. 介绍了TOPSIS方法在煤炭混合优化中的应用,有效结合了定性分析和定量分析 (Dong-lin, 2008)

  4. 应用TOPSIS方法优化汽车售后服务供应商的性能评估 (Xie, Zhu, & Chang, 2013)

总结来说,TOPSIS方法是一种有效的多属性决策工具,能够在多种场景下应用,帮助决策者从多个备选方案中选择最佳方案。

Grimoire

编程手|MCM经验分享 GPTS - Grimoire

  • 接下来你将作为我的美国大学生数学建模竞赛的比赛指导老师,为我提供比赛思路,我会先把赛题发送给你,请先帮我梳理题目,并给我题目的翻译与要求

  • 接下来你将作为我的美国大学生数学建模竞赛的比赛指导老师,为我提供比赛思路,我会先把赛题发送给你,请先帮我梳理题目,给我题目的主要内容与要求(使用英文),并在最后给出中文翻译

  • 请根据赛题,帮我分析问题1,提供数学建模思路

  • 请根据你的思路建立具体的用数学语言描述的模型,要求尽可能的详细

  • 请再给出模型对应的Python代码

在比赛中没有思路怎么办?

早上起来看到赛题的中文翻译后你就明白了

所有的模型都是用的现有的代码,将“毛坯房”装修为“精装房”

编程手|MCM经验分享 2024A_我们最后解题的代码目录

完赛

官网提交+邮件之后,四个✓ + Received 就大功告成啦!

比赛会在四月底左右公布成绩

编程手|MCM经验分享 提交页面

编程手|MCM经验分享 提交论文的缩略图

三、比赛收获

  1. 面对如比特币、光污染、生物入侵的现实问题,明白了如何从数学的角度进行简化与建模,真正尝试解决

  2. 进一步了解了科研画图的进阶技巧 a. 流程图 and 插图:亿图图示

    编程手|MCM经验分享 Our Work_亿图图示

    编程手|MCM经验分享 优劣势_亿图图示

    b. 表格:Canva可画

编程手|MCM经验分享 数据支撑_Canva可画

c. 曲线图折线图等:Echarts 、Python seaborn库

  1. seaborn库超级好用,增加两行代码,出图就能使用seaborn库的预设风格,看着会"高级"一些
import seaborn as sns

sns.set()

编程手|MCM经验分享 默认

编程手|MCM经验分享 seaborn

  1. 一段难忘的合作经历

四、参考资料

[1] 网易. 美赛春季赛含金量怎么样?. 2023年3月6日, www.163.com/dy/article/….

[2] 苏州大学_王奎指导老师团队_2024报名步骤.pdf

[3] 数模加油站. 2-1 数学建模如何分工合作让效率翻倍_哔哩哔哩_bilibili. www.bilibili.com/video/BV1mC…

[4] 数模加油站. 2-1 数学建模如何分工合作让效率翻倍_哔哩哔哩_bilibili. www.bilibili.com/video/BV1mC…

[5] 数模加油站. 3-1 如何利用ChatGPT辅助数学建模_哔哩哔哩_bilibili. www.bilibili.com/video/BV1mC…