Featured image of post 美赛2025经验贴分享

美赛2025经验贴分享

参赛心得、备赛建议与解题经验的分享

1
IIIA 1 未经AI制作
AI仅提供参考,未参与制作
?

前言

前几天,周老师私聊问我要不要分享一下美赛经验,我简单思考了一下就同意了。其实即使老师不提,我也打算在考研结束后整理一下这方面的经验发篇博客,既然老师提前找了,那就提前写一篇。

第一次听说数学建模是在高中的时候。当时读了一本小说《学霸的黑科技系统》,主角带领团队参加数学建模竞赛,最终拿下 O 奖,看得我热血澎湃。自此,一粒种子悄悄种下了——我对大学的其中一个畅想,就是和朋友鏖战几天几夜,产出一篇优秀的论文。

数学建模对我的大学生涯来说意义重大,或者说我大学期间第一个成就就是数学建模。大学是什么时候开始真正变好的呢,其实就在得知自己美赛 F 的那个凌晨,它带领我走出了大学获取成就第一步,随之而来的是厚积薄发。有些事情一旦迈出第一步,后面的路就都很好走,在半年多的时间里,我的成长是巨大的,真正从别人口嗨中的✌成长为一个还算不错,可靠的学长。

事实上,我清晰的知道我距离那些大佬至少还差一整个大档次,距离超级大巨佬至少差两个档次。而且我对我自己大学期间的要求,还差一块关键性的拼图(其他拼图已经找到,不过仍在完善)。由于家庭等不可抗力因素,零基础的成长往往比非零基础的成长艰难很多——光是找到适合自己的道路就需要很长的时间,更别说还得亲手去检验这条路的正确性。

这也是我为什么把这次分享定在“零基础”这三个字上,很多事情,只有真正从“零基础”过来的人才清楚。

由于职业规划的问题,我决定进行一场伟大的冒险,如果冒险胜利了,我会更新博客,谈谈对零基础的理解以及冒险胜利的感悟。

希望下一次更新,是成为真正的“传奇”。

以上。

我讨厌那种声称要教人搭梯摘星,却在一开始就滔滔不绝讲述宇宙浩瀚的人。

他们需要的是如何搭建第一级阶梯的木材与钉子,而不是一张描绘了整个银河系的星图。

附录

柚24电工杯论文

柚24国赛论文

柚25美赛论文

柚25电工杯论文

柚25国赛论文

柚26美赛经验分享

会议记录

由于时间问题,我本人讲解的时候有些东西没有展开来细讲。建议对着 ppt 看,而且有些东西确实没有做到像自己前面说的那样零基础,还是有点忘了初心啊。

凉柚NH3 部分

引入

老师、同学们晚上好!然后有些人可能不知道我名字,不过看到我头像也大概知道我是谁了。总之很高兴周老师能给我们团队这个机会来分享比赛经验,我们今晚的主题是“零基础速成美赛”。

这是我们的目录。

简单看一下我们团队总共参加的比赛,简单看一下就好了,这是我们比赛所有的论文,它都是可以在右下角这个博客中找到。

然后这是我们比赛中的实录。

我们直接进行入第二部分:前期准备,也就赛前前期准备,主要就是目的是为了防止大家在比赛期间做一些无意义,或者可以在赛前已经做好的事情。

这一页的话主要注意一下美赛的时间就可以了,美赛时间是99天……它会比国赛多一天。其他这些都看看就好了。

我们直接来进入主题,我是零基础怎么办?队伍里现在三个人都是零基础,我们都想学东西,但是根本都不知道要学什么。但是大家仔细想,你是零基础吗?

我这里放了两道题目,第一道是 2025 年全国数学一卷的第 15 题,第二道是 2023 年福建省高考物理的第一题。想象一下你是一个刚刚初中升高中的学生,你第一眼看到这个题目一定很懵逼,但是你肯定不会去害怕这件事情。因为你知道这些解题方法只是你还没学过而已。

你在小学阶段、初中阶段解过应用题,在高中阶段解过概率大题。以刚刚那两道题为例,卡方检验它是一种相关性分析,而祝融号它是将物体视为质点,它是一种建模的简化方法。

事实上,数学建模的第一步就是将工程问题转化成数学问题,然后在数学模型的框架下进行求解。那么如何转换成?你在高中阶段刷过大量的物理和数学题,自然知道碰到什么物理题要用什么方法、什么模型。

大学数学建只不过是将以前熟悉的那套解题方法换成数学建模独有的一套。

简单总结一下,数学建模就是把实际的工程问题转换成数学模型,然后数学物理方法进行求解这个过程。

我们最开始的祝融号为零。假设现在有一题让我们要求进入祝融号的速率,那我们的建模就是把祝融号设为质点,以及抽象出它的轨迹,这就是从物理模型转换成数学模型。然后轨迹的长度你需要用高阶微分方程去拟合,这个时候你不可能去用手算微分方程,所以是需要程序去编写,这就是编程。写论文,就是把如何建模和如何求解这一整个过程思路体现出来。

编程环境

然后上面既然提到了编程,那我们接下去就来讲一下编程的话。数学建模一般是推荐使用 Matlab 或者 Python,然后优点是这些,大家看一下就好。如果一定要选一个的话,我本人更推荐使用 Python。

不过事实上,语言只是载体,你选什么语言是没有任何关系的,无所谓。我更想说的是,以我去年的参赛经验来看,很多队伍都会花至少半天的时间浪费在配环境上面。

无论你选择了什么语言,都是你先把环境配好。以 Python 为例,你至少需要做到这些。我这里推荐3.12。3 版本,是因为版本比较稳定,就是它不仅是有比较成熟的机器学习库,然后还有去适配那些老的版本的库。你像现在更新的那种 3.14 版本和 3.13 版本,它有些库、有些机器学习库它是没有适配过来的。

然后不要用 IDLE,界面太抽象了。然后配清华源的话就是为了下速度的,你不配的话会下不动。

看不懂这些东西也很简单,直接把我这串东西复制粘贴丢给 AI,跟着 AI 一步步配就好。

这里先简单说一件事情,就是数学建模,它不是一道 OJ 的编程题,它是一道数学应用题。编程是一种简化计算的方法,是快速验证和求解建模思路的工具。

举一个简单的例子,编程就是用很粗鄙的理解,就是你在高考数学的时候不用笔去计算,而是用计算器去计算。你的思路、你的方法都是你本来脑子里已经有的,计算器能做到只是简化你不必要的麻烦。

另外,美赛数据分析对应的 C 题,你可以完全一行代码都不用写,而是取什么 SPSS 的数据分析工具、科学分析工具。

AI 选择

前期准备第二步就是找几篇历年美赛的 O 奖论文,年份肯定越近越好。对于国赛来讲,你只要看看摘要,看看关键词,然后再看看大概写什么样子就好。

美赛的话,别人的论文的摘要都是英文,你简单看看关键词就已经可以了。然后你找几篇你自己看的感觉很厉害的论文。

至于为什么我们是否放下一个章节来讲,很大程度上这几篇论文直接决定了你后面能走多远。

精美的论文意味着严谨的排版以及直观可视化的图表,如何排版是留给我的队友 ac6 来讲。

然后是关于数据方面,A 题和 B 题一般来讲是不会直接提供数据的,得自己去找。那找不到数据怎么办?关于检索和整理数据,这个是留给我的队友 firerater 来讲。

接下来是我要讲的部分。

看一下,接下来是我要讲的部分,有关于 AI 的选择。

最推荐使用的就是 Gemini Pro,其次是 ChatGPT。

如果你没有魔法的话,国产也是有很多好用的,国产现在能用的我都已经贴在上面。

然后不要用这些。

为什么?

我这边简单列了一下。豆包的训练数据很多来源于抖音,娱乐性来讲的话,豆包它是国内大语言模型肯定是最好的。那理工科乃至代码编辑的能力是一言难尽。同时豆包写出来的文字,它是有一股味道,是难以用于进行那种论文化的表述处理。

文心一言和 Kimi 的话,属于是两年前国内比较强的,现在已经不行了。腾讯元宝就不要用它的 hunyuan 模型,它就是一个 DeepSeek 换皮。

团队分工

然后赛前准备还有一个就是分工问题。

大家第一次准备建模的时候肯定是看过各种经验贴,知道数学建模大致分工分成:建模手、编程手、论文手。

传统意义上这三个角色的含义就是字面的字面意思。

一个人负责建模,一个人负责编程,一个人负责论文。建模的意思就是把题目转换成数学模型,然后在数学模型这个框架下,你得给出解题方法;编程的意思就是说,根据建模所给的方案编写程序来求解问题;论文手的意思就是把这些东西整合成论文给评委看。

那么更先进的做法,就是每个人大概都得负责两块内容:主要负责一块主要负责一个模块,然后辅助负责一个模块。因为每个人其实都得大概知道对方在做什么,不然你是根本沟通都是沟通不了。

我们队伍采用的和这两种模式都有区别,或许是 AI 时代下一种尝试吧,但是 AI 时代下,它也绝非是三个 AI手。

那在介绍我们组的分工之前,首先我要谈谈关于 AI 的事情。

那就是保持拥抱 AI,但是保持自己的思考。

AI 和人一样,他会陷入局部思考。如果完全让 AI 带着你去走的话,他可能会带着你绕一个大圈子。所以你的思路你不能完全跟着 AI 走,但是你的代码其实是可以的。

最后还有一点要强调的就是不要固执的不去使用 AI。AI 普及之后数学建模的论文,它是整体上升了一整个档次的。就以国赛举例的话,原本省二的论文,现在可能拿省三,就是逐级往下推。

那么在当前 AI 时代来讲,队伍的核心到底是什么?如果说五年前的话,我可以说是编程手,但是现在的话,我认为是论文手,其次是建模还有打杂的工作,最后才是编程手,因为现在编程的很多东西它都是被 AI 代替了。

当然我也是承担传统意义上编程手的工作的,它是可以用……有更多的事情,比如说参与建模的讨论。

然后这方面的话是我们组的分工:我们三个人是共同去讨论建模的。但是有一点需要注意,“杂活”它不是那种帮忙倒水拿外卖的那种。

他主要是可以在另外两个人需要验证思路的时候,可以做到没有任何的后顾之忧。假设我现在提出了某个想法,想要去验证、搜集数据、整理数据,这种事情就必须你得在一个可观的时间内收集并整理完毕,而我本人只需要负责去处理代码内部的逻辑,我不需要去考虑我的数据的来源。

建模方法论与技能树

那接下来我要花点时间讲讲,即便你有了数据,你也不会做分析怎么办?这就是涉及到的建模方法。

首先贴出来,这是学长学姐 PPT 里的两页东西,这个是传统的清风数学建模和司守奎那本教材整理出来的路线,这条路线其实是已经比较成熟的路线。大家看一下就好。

然后学长学姐的那些,它是比较传统的系统性学习数学建模的东西,那些是属于方法论,它不是一种体系。你现有的各种新东西的那种框架,比如说机器学习这种冲击,这些只学这些肯定是不够的。

事实上你要掌握的东西,可以归结为基本的数学分析、数据分析框架。这个时候就需要每个队伍至少得了解一种语言,你得会爬虫,你得会数据分析工具库。然后你得会基本的传统回归模型,还有机器学习算法,乃至一些简单的深度学习。然后你需要这些数学知识,还有简单的物理化学素养。

美赛它尤其是你的 A 题,它不只是考验你的数数据分析框架,还考验你的现场学习能力。

我们简单来讲一下 Python 爬虫,实际应用中可能会碰到右上角这四种情况。前面三种就不细说了,你现学的话是来不及的。最主要注意一下就是最后这个 API 爬取。有提供 API 的网站,你只需要根据他给好的文档照着文档敲代码,然后就能把它的数据获取下来,就直接下载成一个 Excel,它不需要像前三种情况那样去分析网页的具体情况。你不需要去看网页的源代码。

然后讲一下,主要讲一下数据分析工具,主要是 Matlab、Numpy 和 Pandas。Matlab 就是 Python 的画笔,然后 Numpy 就是高效运算,Pandas 是 Python Excel。然后 Numpy 不用看,因为更多的库它是基于 Numpy 集成而成的。

例如接下来我要讲 sk-learn。sk-learn 它不只是封装好机器学习方法,它也封装了很多传统的方法。在调用的时候,你是完全不需要去理解这些方法的内部原理,你只要调库就好了。

然后这里我点了一下“使用机器学习需谨慎”,我马上讲。

深度学习这块,大家简单看一下 CNN、RNN、LSTM 就可以了,不要使用 Transformer。Transformer 需要大规模数据支撑。

另外,这里有的人很重要,数学建模,尤其是美赛的数学建模,他是不喜欢你用机器学习、深度学习这种“通法”。因为这种通法它有点类似于大力飞砖,就是你什么东西都可以去套行深度学或者机器学习。你跑出来效果也肯定是不差的,但是美赛他并不是比拼答案,他比拼的是一些逻辑,以及论文当中一种体现。

这里有个“私人定制”这四个字,它就是意思比方说你使用了某种机器学习方法,你可以对这道题进行一些特定的优化。

那么我从爬虫讲到这有什么用?其实对大部分人来讲就是一点用都没有的东西。你只需要对前面这些东西留点印象就可以了。

建立方法表

系统性准备建模,其实对于大部分人来讲是一个伪命题。首先是关于教材,司守奎那本教材已经很老,已经偏老了,你不可能使用层次分析法这种问题你去解决你现在那么一个庞大的问题。还有常用的方法全都是被用烂的方法,而且很多跟不上时代,也不符合美赛那种基调。

时间的话,就是大家都在准备期末考,花时间听讲座已经非常难得了。然后学习成本,我刚刚讲的那套得学一年。

爬虫我前面有讲过,美赛直接找数据集就可以了,不需要你手动去爬。手动爬太浪费时间。配环境的话你得自己去配,你现在就可以拖出来配了。

你现在要做的事情是什么?你现在需要做的事情就是提前先整理一张“方法表”。就是可以去包含就是之前学长学姐他们整理的那两个比较传统的数学建模,还有包括我刚列出那些的东西。

你需要整理一张方法表,然后把每个方法它对应的解决的是什么问题?它的优缺点是什么?它的改进方案是什么?

你这些东西你是至少得有的,你不一定会,你是得有。因为美赛它其实是开卷考,你很多东西你都可以现场去把这些东西去匹配到题目。美赛它非常考验你的现学能力。

当然,你如果想系统性的去学的话,你就至少需要做到所有我上面提到的东西,从编程手的角度出发,这样你才是一个合格的编程手:从学长学姐留档那些传统建模,爬虫数据分析,机器学习,乃至些深度学习。不过事实上你学这些东西的底层原理之后,你在用的时候也不用管你底层实现。sk-learn 这个库封装的非常完善,所以本质上学了和有一张方法表的没学没什么区别。

接下来就是数学,大家都学过高数吧?会微积分和微分方程够了。微分方程。

然后物理会受力分析就行。

其他学科都是数学和物理套题转化成数学或者物理模型,够了。可以。

到现在为止,大家都已经相当于掌握了很多东西了,握了我 PPT 里展示的这些,然后马上就能掌握更多的东西。

比赛流程实战

我接下来将以比赛历程的角度来讲讲整个美赛的流程。

美赛从早上六点开始,你首先你也不用六点整起床,你可能八九点起床,其实也没什么问题。你需要做的事情就是和队友集合,非常重要。因为美赛那几天你会碰到各种各样的问题,最大的问题都是跟队友的问题,不是数学建模问题?美赛碰到最严重的问题永远是队友问题。

接下来是翻译跟选题,我这里就是刚刚再次强调一下队友的重要性,队友他是不是各干各的、相互联系。大家多交流,然后相互之间包容一下,只要队友之间不出矛盾是什么问题都能解决的。你只要在99小时内产出一篇论文,你不吵架,你就已经我感觉能超过50%的队伍了。

翻译的话,谷歌翻译、微软翻译、有道翻译、大模型。然后查找国外资料的话就是“沉浸式翻译”这个插件。不要用国内这些翻译。然后或者等大概你开赛几个小时之后,老师会发翻译。

翻译完之后选题。D、E、F 这三题我们没做过就不讨论。然后美赛他采取的是按照人数、报名人数来划分奖项,所以 A B C 三题排序就是长这样。然后 A 报的人最少,一般占20%,但是报的人大佬也是比较多的。

A 题 O 奖我稍微纠正一下周老师吧,A 题 O 奖 其实就只有五个。他是没有十个,他就只有五个。然后 A 题连续,B 题 离散,C 和大数据相关。然后嘛……A、B 题对数学、物理有一定素养,然后 C 题就是考基本数据分析问题。不过 A B 题它其实也是有大量的数据分析。

然后你现在已经选好题目了,你得开始解题。你解题,这个时候你就得掏出你之前准备好的 O 奖论文,翻到目录,然后你对比一下每张 O 奖论文的目录。其实架构都是长这个样子的:

问题背景、问题重述、方法概要、问题假设,还有符号的定义,我这里没写出来这个部分,然后接下来是建模的主体,就是这两部分内容。然后最后是敏感性分析、误差分析、模型优缺点、参考文献。

为什么我之前找到那几篇 O 奖论文直接决定了你的上限?对很多大一新生来讲,美赛期间他写的论文是你这辈子写的第一篇建模论文,和正统的学术论文它是有一定差别的。你如果完全按照学术论文那套东西去写的话,反而会效果不好。

所以你需要照着 O 奖作文去写。你整个美赛期间你要做的事情是什么?就是“抄”你找的那几篇欧奖论文。就我的意思不是让你去抄欧奖论文的思路,你得去抄他们的排版,抄他们的架构,还要抄他们你进行到推进到哪里,这部分大概要干嘛。

然后这几部分内容就是仿照以前论文写就可以,这个 ac6 细讲。这里简单讲一下问题假设是什么。

例如一开始提到了祝融号,你能力不够的话,可以把它假设成质点去做。今年国赛的 A 题,它就是一个导弹射击问题。你可以把它考虑成质点,你也考虑成质点肯定是会扣分的,就注意一下就可以了。然后这里假设运行过程中不会出现任何的机械性故障,先可以写一下。

AI 辅助建模与代码编写

这里是我今天要讲的重点,就是讲一下 AI 辅助建模和 AI 写代码。

讲 AI 辅助建模前,我先首先讲一下大语言模型,它是怎么去识别文件和图片。例如 Gemini Pro 或者国内的智谱,它是原生的支持和图片的理解。还有 DeepSeek 这种图片它是基于 OCR。OCR 的意思就是,它会先识别成文字之后,然后再把字识别出来的文字,再喂给 AI。AI 它并不会原生的去理解图片是什么意思。如果你要直接拖文件进去问的话,不要用 DeepSeek,因为它就是原生它是不理解文件的。

但是其实更建议你,自己先把文件转成图片,以文字的形式输入给 AI。AI 它对文文字的理解一般来讲是会高于图片。

然后讲一下 AI 处理能力。Web 端的 AI,它是被限制了输出长度的。无论 AI 它能力有多强,你一下让他回答太多东西,它的输出就是处于那种宏观层面上的解释。

像对于数学建模,你需要体现你思辨性和层次性的东西。如果你一次性输入的话,它只会给你一个简单……它只会给你一个方法,然后他也不会去深入解释这个方法到底是什么,然后也没更不会有那种多种方法比较这种问题。

最简单解决方法就一点点传。Web 端的 AI,它都是有那种上下文管理。

输出更好的话可以有个提示词工程,这也不细讲。

讲完 AI 的东西,我们来讲一讲你为什么需要知道上面这些东西,我刚刚讲的 AI 的处理能力和 AI 的识别问题。

数学建模的第一步,它是分析比赛的知道赛题怎么从工程问题转换成数学问题,分析高考物理题那样子去分析。我相信对于一个经历过高考的学生来讲,打破对数学建模恐惧之后去认真分析它是不难的。

你不知道怎么转换的话,你丢进去问一下 AI。

然后转化为数学模型之后,然后你接下来去看一下你这道题里面有没有你“方法表”里面的什么东西可以去适配去解决的。那更大的可能性,尤其是做 A 题跟 B 题的来讲,是不会出现的,或者你自己根本都分析不出来这道题他要考的是什么东西。然后接下来你又可以去问人家(指 AI)。

你需要注意,然后你需要注意什么?你需要的注意鉴别这些东西的使用。因为有可能就是你自己提供那些表它有可能有问题,有可能就是单纯的 AI 提供的这些东西它本来就是错的。

然后这里需要尤其注意,之前有跟小登交流过这个东西,不要去大篇幅的介绍你的模型是什么。例如你去大篇幅的去介绍微分方程的来源,或者你用的方法来推的。除非这个方法是你原创的。你用出来的方法,你只要不是原创,那一定是别人的工具。你不需要花篇幅去介绍别人的工具,你只需要在最后的附录里面贴出来,你找不到这篇……找到这个工具的来源,就或者说贴出来那篇论文就可以了。在真正写论文的时候,你只需要介绍这个工具的作用就可以,你是不需要关心工具的原理。你写工具的原理,它大概率就是判你凑字数。

然后美赛它是讲究创新问题。最难的方法是最难的创新,也是最好的创新,就是自己“搓”一套理论出来去适配问题。例如我们去年,我们组名义上的论文手,他就是基于电场和磁场的理论搓出来了一套摩擦场理论去适配问题。不一定你论文手就是全组最弱的那一个,恰恰相反,我们组的论文手还是全组物理和数学素养最高的那一个。

但是这种方法它风险很大,如果你说出来的东西有问题,那么就很可能是完全不如传统做法。

最简单的创新方法,你只要对着各种方法排列组合一下,给它用出来就好了。

到现在为止,我们来总结一下数学建模的建模部分的全流程:

  1. 在问题一,你把工程问题转换成数学的模型。你基于数学模型框架,你使用了一种方法去求解,你或许可以用多种方法求解之后找出最好的那一个。这些东西都是可以体现在论文里面的,你不需要找到一个最好最优解法之后,然后再写进论文里面。
  2. 然后第二问就是沿用上一问的数学模型,然后发现这个老方法在新方法上不适配,改造了这个方法现在适配。
  3. 然后第三问是你填补了一下数学模型。
  4. 第四问就是你发现原来你整个问题全都是有漏洞的,那你只需要前面也不需要全部推翻重启,你只需要在这个方……就是你只需要在当前问题进行修改就好了。

然后最后体现在论文的时候,在里面的时候,你只需要完整的把我刚刚讲的那个流(流程)写进去就好。我刚刚讲的,你完全不需要直接贴出你的最优解,你直接贴出来……就直接贴出来最优解的那种论文,它是没有那种层次性、没有层次性和思辨性。

到现在为止,我们有关于建模的问题已经解释清楚了,我们这里也是澄清几个概念。工程问题转化成数学模型,和利用数学模型靠方法去求解,这是建模的两个阶段,你不能给它混起来去谈。然后下面才是用代码来编写求解问题。

思路就是用的上文所说,就第二阶段那些思路。下面就是讲一下怎么用 AI 来编写代码,也就是如何使用已经被讨论出来的思路去写代码。

首先介绍两个概念,第一个概念是函数。大家现在都……大家都是学过数学函数的,在接触编程的时候,你接触过编程上的函数。你现在用的生成式 AI,本质上它也就是一个 $f(x) = \omega x + b$ 的一个函数,只不过 $\omega$ 和 $b$ 它都是高维矩阵。

其次是接口的概念,计算机有个概念叫接口。这里看要看的简单看一下就好了,这部分就是主要就是这里。主要就是要理解给出来的接口是无状态的,你不需要去关心内部的细节,你只需要关心这个东西——就接口,它是怎么用就可以了。上面全都听不懂的就都无所谓,你只需要知道,就是你在 AI 让你给你函数的时候,你不需要关注这个接口的内部细节,你只需要关心这个接口怎么用,你只需要关心接口。第一是怎么用?二是它的效果到底是什么?

然后这里有个很不恰当的例子,简单看一下。总而言之,你让 AI 写代码,你得知道这个函数的输入输出是什么?你得知道这个函数怎么用,然后你还有我之前讲的,你得想办法让这个函数在你的那……在你本地的 IDE 里面跑起来。你只需要知道这些其实就够了。

我个人认为怎么让本……怎么在本地跑起来,对大多数来讲,大多数人来讲问题是最大的。

然后谈一谈“降智”。用 AI 的时候,你会碰到降智,有两种情况:第一种情况是官方本身给你限制了,那这没办法;另一种是你用这个窗口太多次了,上下文过多导致的有一种污染。例如你永远都解决……就你永远让 AI,就即便你把那个 Bug 点出来是什么了,你发给 AI,AI 也永远解决不好。这时候最简单的解决方法就是让 AI 自己总结一下本轮对话的重点,把你的文件和重点全都重新喂给一个新的对话,它就没有上下文污染。

还有个问题,AI 跑不出来代码怎么办?你还记得我最开始讲的一件事吗?数学建模它不是一道 OJ 形式的编程题,它是一道数学应用题。并且美赛它是不需要交任何的代码和附件,所以你只需要提交论文就好了。你编程手的作用进一步弱化,你 AI 跑不出代码,其实是无所谓的,你只要把论文“糊”好,就完全是可以的。

然后你现在为止,你只要去重复我刚刚所说的建模以及就 AI 建模和 AI 代码过程,你重复这两个部分,你的建模部分就可以很好的被撑起来。重点其实就是去讨论你的层次性和思辨性的。

赛中危机处理与论文修正

有两个问题,接下来下面是两个问题。

第一个问题是交流崩溃。美赛的第三个、第三天晚上,距离美赛结束还有3、4个……十个小时,我们直接谈崩了。大概就是我刚刚有说过 ac6 他是找到了一个直接“搓”出来一套理论去写一到三问,但是如果这个理论要去四套五、适配五到八问的话,我们会写不完所有的题目。当时我们压力很大,在那里直接吵了半个多小时。

然后后来就是他回去睡觉,我和黄幸星在那里,在那边搜网络上的那种解法,然后看一下五到八问怎么补救。然后最后讨论出来就是五到八问就不用……就最后讨论出来就五到八问就不用那个理论了,就是只用传统模型,然后最后用 CNN 跑一遍对比,然后直接给结论。

后面第二天的时候大家就整理好心情继续。就如果碰到那种交流崩溃的情况,大家就各自冷静一下。千万不要产生放弃的念头!

和交流崩溃一起出现的问题,思路错误。最严重的就是全篇思路错误。如果你第一天刚开始的时候就错了,那你可以大……那你可以放心大胆的推翻重来。那如果是最后一天错了,那也就只能“曲线救国”,弥补一下。在你发现错误开始地方直接往后说,前面的思路它都不是最优解,我这里提出了一个更好的方法。

今年国赛是由于我的失误思路走错了,最后半天的时候才发现问题,把最后一问改了,然后最后再摘要强调一下。那就是国赛 A 题是那年是……今年国赛 A 题是五问,我们一整篇论文,只有第五问的后半部分解法是对的,其他都是错的,或者说有问题,但是这样也是能拿省一。你你……他要你写论文就写这种东西,他要的不是你的最优解,他要的是体现你的思辨性、层次性和创新。

最后敏感性分析和误差性分析,就是美赛这是一个很公式化的东西,大家照着抄就好了。

在我的部分结束之前,我简单讲一下摘要。摘要它是一整篇文章最重要的部分,你至少花三个小时去修改你的摘要。三个人一起盯着电脑改,花三个小时改,不是一个人改。我们组的习惯是花六个小时,然后盯着摘要就一直逐字逐句在那边改。即便你通一整篇都是狗屁不通的东西,你的摘要至少得是合格的。

美赛,还有包括国赛的评审,他都是就看摘要。美赛的话,它就是 M 奖以下都是国内评的,只有评 O 的他才会发给美国佬。国内的评审论文也是只看你的摘要,就感觉摘要写的太烂了,他后面可能就不看了。摘要长度的话就是只要超过八分之五,并且不超过一页就可以了,我这里 ppt 可能写的有点问题。

我的部分就到这里,然后接下来时间是交给我的队友 firerater ,他主要负责的部分是检索,还有整合信息。

firerater 部分

好好。现在好,我现在共享屏幕。打开 PPT。Ok 那我现在接着上面 凉柚NH3 所讲的内容,我来讲一下关于网络检索和信息收集的部分。

我来先毕竟说明是我当时是首次参加美赛,是首次参加建模比赛。我在其中起到的作用是比较辅助性的,所以我做的是信息收集部分,这一点在美赛中可能。在 a 题我们当时所选的前景下,因为数据缺失,所以我起到了一定作用。然后我在这边分享一下我当时的经验,因为我当时确实是以初学者没有经验的。角色进入这个比赛,我们看首先信息收集,我们先看我们一般会遇到我们上网查东西,我们主要是。一方面我们可能会去借鉴网络上的一些,一方面是参考文献,我们会在网络上去寻找,另一方面就是数据集,我将针对这两个。

我在比赛期间,我也是针对数据集和参考文献去进行检索,同时在其中摒弃一些不需要的,不应该参考的部分提取其中的精华来讲,首先就是这个网络上有一些建模思路,特别是 B 站上或者可能知乎。我把它播放一下网络上的建模思路,只能取其精华,或者说不建议看,因为发出来的人很多是抱着盈利性目的,他想。给你,他想获利,他想由粗制滥造,或者说速成出来的东西给你,让自己获利。思路大家都看到了,你不建议用,只能取其中一点点可以验证,还可以验证你思路激发你思路的部分,不要不能照抄,或者如果你。顺着他思路来可能会误导你。

那么我接下来讲,我的部分就是这个建模师,这个是比较重要的,不能去,我在信息收集的时候,我所摒弃的就是这一部分不能去轻信网络上包括 B 站。知乎还有一些突然冒出来的 CSDN 上面的这种网络上的思路部分,然后我们看可以借鉴哪些部分,然后我再介绍一下我所做的事情。

我零基础的针对当时所选的这个题目去做数据收集,还有一些信息的收集,那么我可能在其中起到主要大作用,就是 at 的数据集的下载处理。去处理,那么 A 题是关于楼梯古代楼梯磨损的一个题目,他的数据非常少,当时花了两天我才勉强找到当时好像。数据匹配性比较高,我做数据集的筛选和拆解,然后从网络上下载了大概50G 的点云图数据。然后使用它相应的可视化软件,有个叫 cloudcompare 的软件筛选出了十句左右的,有包含楼梯的这种数据,它是点云图,它是我以前不熟悉没见过的一种数据,然后我再现学现用去按需分割出一些需要的部分去细化调仓,然后。给到编程论文手那边去提取数据分析数据,那么这就是我当时就初学者进去,没有一些编程。阅读论文经验的时候,我所做的事情它是相对费时费力的,但是这个数据找到了,可以说当时那个情景下。

黑体不提供数据,找到这样一个数据集,它的数据很详尽,它有对应的内容。针对古代建筑这个稀缺数据,我们找到数据。这样的情景下,我觉得数据找到的是一个重要的强心剂,它能够增强整个队伍的信心。

那么我以初学者角度现在下面讲。检索资料的建议和现学现用的建议,检索资料就是刚刚提到的参考文献的检索和数据局的检索在网络上主要是在浏览器上进行查找下载。然后还有可能去学习它里面的一些现有的处理方法,直接现学现用我们我刚刚说的点云图数据之前都没见过这个东西。怎么样去快速的学习这种数据的处理方法去把它快速的提取出我们所需要的部分。给到队友去静下来进行论文的编写和优化,然后这是现学现用的建议,我主要起的辅助作用。

我第一次讲可能不是很好,我们只是参考一下,不要太在意我里面的一些细节错误,接下来。第一点是资料检索建议刚刚老师和队友也提到了,在没有数据的情况下。我刚刚提到我们当时进行到第二天我才找到数据时间,总体上是很紧迫的,我找到数据的时候大家也是比较。惊讶的很难找,可能说周围的大家基本上没有数据,网络上也查不到有人说什么自己有数据,可能有人找到数据拿出来卖了,但是甚至没有看到这样的言论,数据非常稀缺。

我要所说的就是我怎么找到数据的就是首先有一个很重要的大局观,因为数据很难找,然后我们题目又比较多。部分题目它难度在后面依赖前提,或者说难度上升。你的分析,你的思辨性,层次性可能体现在和前面一题的。这个联系上面,那么此时你如果花费所有时间去找数据之后又找不到,这是很不好的,所以我起辅助作用,我找数据是在其他队友让我没有后顾之忧的情况下,我去进行这样的数据查找。

在你们如果是初学者,特别是对于大一新生还有经验缺失的同学,如果找不到数据,我建议是。及时开始配合队友就是验证一些不需要数据的部分去验证一些思路就写一些论文的其他部分推进进度推进最能够帮助你推进进度的部分。而不是花大量的时间去资料检索,我虽然讲这部分,但是这是我要提的,如果找不到那很难受。这就是避免沉没成本,或者说你应该同步。你如果要找数据,你可以同步的去验证一些你后面不需要数据的部分去推进这种进度。

然后当时甚至因为大部分同学找不到题目的数据,他们用了蒙特卡洛模拟之类的方法去模拟数据,好多网上可能给出的思路也是这样的思路。有一些不能参考思路,也许很多队伍用了,但是其实能够找到数据集是最好的,那么我下面再讲一下。

首先我们一定要找数据,我们确定了找数据必要性,如果大部分题目都依赖数据的话,我们去检索数据,我们有以下建议,我们刚刚说过,我们是主要依赖浏览器进行数据。查找检索下载,那么我们检索的时候,浏览器就建议使用比较建议使用这两个是首先他们是偏国外的浏览器他们。不是国内的我们使用国外浏览器的原因主要是以下两个。

首先国内的浏览器很多,它比较不支持插件的这种使用就是浏览器。它可以配置插件,包括刚刚提到的 凉柚NH3 提到的论文翻译插件,网页论文翻译插件,这是你在下载论文前你查看论文。关键词摘要的时候,你可能会经常用到的一个工具,刚刚提到说叫沉浸式翻译,这个插件,我安装在了 edge 浏览器上面,而国内的一些浏览器?不支持这个东西,或者说很难配置 a9浏览器比较方便,然后有了这个插件,你可以很方便的去进行网页翻译,然后查看它的内容,这是检索的时候。一个比较关键的地方,你有了这样的好的工具,用了比较好的工具,好的浏览器,你可以更好的检索。

然后是它还有一些插件,比如说网页资源下载有一些。网站它可能比较下载它权限制的比较严,有的工具插件,它可以爬取网站上的东西。这是其他的强大插件,所以使用这两个浏览器,有助于提高你的效率,能够让你更好的检索。

当你是一个初学者的时候。请记住少用国内浏览器多使用这两个或者其他的动手的工具,那么还有第二个原因是国内浏览器内核是比较低的,它可能使用它的时候。检索速度会变慢,同时他们默认的搜索引擎就是浏览器,一个是你使用的浏览器内核,另一个是浏览器,它的搜索引擎。搜索引擎,有的浏览器会限制它或者默认使用某一些搜索引擎,这样的搜索引擎,国内的搜索引擎,它很有可能会出现大量广告。覆盖掉我们所要找的参考论文,数据集。这两个最重要的东西可能会被大量广告以及神秘的没有用的思路文章给覆盖掉,从而你很难找到数据集。我们建议使用这种 C 浏览器之类的和配合搜索引擎。

第二点,搜索引擎配合搜索引擎来进行检索。搜索引擎主要是这两个更常用的是 bing 这个搜索引擎是微软开发的这个搜索引擎。我在上面,我在下一页有贴图在并和这种百度上面国内引擎上面所收集到的内容一眼就可以看出来它的这种内容的纯净性,你在并上面找一个数据集你。你看到好多链接,好多国外的链接,他直接给你贴出来了,而且大部分查到的数据局网站,它是公益性的公开性的,你可以很从上面大批的去查找你所要的东西,然后才能从其中。去筛选出你所需要的数据集。

那么这是2.1个是检索用浏览器,一个是搜索引擎,并且这里多提一点就是必要情况下有一些数据局网站可能得使用魔法工具才能够下载。当时在下载点云图数据的时候,似乎在注册方面就是有的网站,它可能限制你的下载,你可能注册的时候要需要用到。相应的工具你才能注册成功,从而获得下载权限。

那么这一些插件刚刚提到的像沉浸式翻译这个插件,还有一些下载插件,你。去看一些教程,你可以去寻找,因为我看到后面的安排,里面学长学姐也会讲一些相应的数据检索部分,我这里就。以初学者的角度给大家留一个印象,不细讲对应的插件,网络条件可以赛前准备好并熟悉他们。你可以先试一试。去下一篇论文去适应打开 nature 或者一些数据平台去尝试一遍,有个手感印象。你可以结合后面学长学姐所说的内容。更好的理解,更好的使用工具。

总结这一页就是用 edge 浏览器用 bing,这是我的配置,我一般是这样配置的 edge 浏览器使用 bing 搜索引擎,然后下一页这我贴的这个。网页搜索在百度和Bing引擎上面搜索这两个搜索雷达点云图数据集百度先给了一个广告,然后下面是。CSDN 的不是直接的链接,或者说点进去好多链接用不了以及各种广告,百度明显不建议用,然后 B 这边你看一下子就可以找到这些。百度上检索不到的数据集,他们免费可以下载你要点进去详细的看你去大批量的检索,看有没有适合你的,很多网站是很友好的,你去注册完之后。你可以免费的下载,它有一些数据集。

还有一个部分就是有一些数据一看量它的占空,它所占空间。很大,我当时下载点云图数据的时候,似乎在注册方面就是有的网站,它可能限制你的下载,你可能注册的时候要需要用到。我找到的点云图数据,每一个基本上都在20G 以上,然后解压你下载到的大小是一个压缩包,你还要解压它解压出来是双倍的空间,你需要充分的准备你的存储空间你才能够。下载完你才能够打开它,然后才能找到你想要的部分,更加细化精化。

然后我们刚刚提到我们去找数据集,我们在病上面看到这些好多都是英文名字的,还有外国这种整理出来的数据集,我们为什么要找这样的数据集,我们推荐找英文来源的公开数据集,为什么?因为像百度这里它直接推送了一些 CSDN 网站上的文章,好多也是抱着盈利目的,有的可能贴到把自己的微信公众号链接贴在那边,然后让大家去什么关注扫描。最后竹篮打水一场空没找到数据集浪费的时间,在美赛期间时间紧张的时候,这种网站。会浪费自己的时间。

然后。这些网站自身有数据自身免费,但是可能会浪费你的时间,他们可能会进入一些你下载不到东西的网站。而且很可能就是盗版来自于我们说的英文来源的公开数据集的,然后他还可能跑到一些直接收费直接跳广告的界面,这边可能不说你。遇到好多情况就是浪费你的时间,所以不建议去看这种类似 CSDN 网站上面的有数据局的文章,可以稍微看一眼看看。里面有提到什么,但是不要点它链接,或者说看到它有广告之后直接关闭界面,不要多看这种浪费时间,强烈建议检索英文数据集,并且搭配刚刚提到的沉浸式翻译之类的汉化插件检索。来提高效率。

并且好多数据局网站它提供的是浏览器直接下载途径,也就是刚刚提到的数据集好多,它的内存占用内存很大。然后你从国内的,要么他让你网盘下载,要么让你去关注微信公众号去途径让你下载都不如浏览器直接下载,直接迅速浏览器下载,直接使用你的宽带下载它。速度优于你去花时间开会员,或者说好多情况下的下载,我当时下载点云数据网站直接提供浏览器下载。虽然有20G,但是每一个数据集大概没有超过半个小时就下载完了,那么不要去尝试去花钱去开通很多什么网盘会员去下载所谓的数据集,因为他们。难以看见他们真正的作用有效性。

我刚我等一下会展示一个网站,它是我当时检索时的网站,它上面可以直接看到点云图,它直接给你提供预览界面,这样的网站是很好的。你可以直接看到这数据集是不是你想要的,他有没有你想要的东西,这种网站很好,你可以去尝试搜索更多这样的网站,而不是下载看不见内容的这种网盘里的文件,然后花钱花时间下下来。打开发现不是一所要的东西,这是浪费时间的,没有效率的。

那么电视病人(但是别人)刚刚说的上面有一些什么数据集文件,还有提到一些什么建模思路的那种想法。不建议看,但是你在后面我要提到的是现学现用软件的学习的部分,你可以参考其中的一些内容,比如我刚刚提到的处理点云数据时使用的是。Cloud compare 这个软件它其中有一步是调整我们点云图的朝向,它需要去进行欧拉角旋转这样的。好像比较特殊的操作,我是在其他的途径没有找到他的学习内容的,我是在 CSDN 上面某一篇文章,小众文章上面找到了这一个资料的。所以 CSDN 上面可以参考一些软件入门学习的部分。

然后是现学现用的部分,我们刚刚提到网络上的思路不参考,而网络上有参考文献。他们往往搭配的思路出现,那么思路那些很多是他们论文在参考文献之前出现的,他们把一些。那种参考文献里面的东西组织一下,然后贴进去就发出来了,但是也没有参考文献的精华,你在数据缺失参考文献缺失,比如我当时的。古代建筑楼梯磨损这一块很少有相关的论文,当你自己检索不到更多论文时。你可以去参考所谓的完整论文,他们给出的参考文献,尝试从参考文献里面别人的参考文献。找到想要的东西,很多文章参考文献,它有又有自己的参考文献,你可以一直找你从这个角度出发。你就可以去更好的去发现想要的参考文献,这是参考文献大于网络上思路的部分思路,大部分模仿千篇一律参考文献,它是。很多是来自权威网站,权威期刊,这些参考文献是值得参考的,那么我们做的事情是更好的阅读参考文献。

我们要找参考文献刚刚说的是数据缺失参考文献很少情况下我们。去参考别人的,一般情况下,我们是自己检索关键词的。我们看我们所需,比如说我们的轴心磨损,我们就检索磨损这个东西。磨损它可以转换成英文关键词,然后去检索,然后去找相应的论文按类下载,然后保存打印。我可能讲的速度比较慢,我讲快一点,然后我们可以获得相应的 pdf 文件,然后我们还可以去查看网络上提到的一些就是我刚才说的那些参考文献,别人有提到的,我们去看一下以及一些重要的关键词,我们去检索。

我在 open heritage 这个是数据局网站,我在上面去查找楼梯的直接查这个关键词,没有找到,但是我在其他人提到参考文献关键词的时候,我。看到说有一些建筑这种名字,然后我去搜索,我就搜索到想要的东西,所以现学现用部分可以去参考别人一些关键词。

这是这一页的部分,然后这是我当时的一些看的网课知识课,这是现学现用部分的软件学习部分去学习参考一些网课就是。这一页总结这精简总结就是现学现用我们要学软件,学一些处理方法的时候,最好方法最快的方法就是类似期末速通,我们去看网课,然后找教程确实有时候可以参考 CSDN 支付这些部分,然后。不懂的部分让 ai 教你这三个三毛斧下来,你可以去学习一些相应的东西,那么我这个软件平时难以接触,但是可以通过这样的方法去疏通去学习,然后可以提取我们想要的有效部分。

然后 CSDN 可以提供一些小众内容帮助你学习,然后这个总结就是选择合适的浏览器,检索引擎,找到想要的数据文献。然后搭配 ai 助力软件,你可能是很陌生的,需要从零到一处理学习,但是提前把这些准备好,你去安装好,它像刚刚 凉柚NH3 提到的,你先去搭配好你的编程环境之类的,让代码能在本地跑起来,以及这些插件安装好,提前去下一个论文,然后准备一些网络环境重要的工具账号。你就可以更加熟悉工具的使用,提高自己的效率,提前准备好能保证比赛期间不堵塞,然后不要去把自己一些关键信息输进去,可能会泄露。

这是我的部分,下面可以交给队友来讲,我先退出共享。谢谢。

ac6 部分

引入(绘图与排版)

我这边就接着他讲讲绘图与排版。首先声明一下,现在的数学建模就是以论文手为核心,这是之前我队友说过的,论文是建模比赛的“脸”,是一个“颜值”。评委老师可能只关注你的论文,他根本不关注你数据的来源,你的方法可能也会关注,但是重要的是论文与排版。首先声明一下,这篇是我的个人见解,可能里面部分观点有点极端了,先叠个甲。

一个建议是一定不要抱着“先建模,然后代码验证,再写论文”的方法。换到高中数学的话,就是一定要先看题目,然后思考怎么解题,然后在草稿纸上把题解完,然后最后再填到答题卡上——这种做法在数学建模比赛中是不可取的,主要是因为来不及。

这个时间是非常紧张的,有的时候可以建模和论文一同进行。毕竟比如说你的队友在建模的时候,你的论文里可以把一些模型假设,或者一些基本的一些架构先打好。

这里很多人——美赛是包括很多大一学生——是他们的第一篇论文。第一篇论文,建模论文和普通论文还是有一些区别的。特别是美赛建模论文,就是偏向教科书、杂志这种类型的,要图文并茂,或者是有图有公式。

像这边是人教版数学九年级的,就是花里胡哨一点。我们的绝大多数书可能是有西方教科书的模式的,但是特别是练习册,包括教学方法,很多都是一些老式的“苏联模式”:就是老师一昧的堆砌概念,定义1.1就是什么极限的定义,然后公式1.1什么微积分基本定理,然后引理……整本书都是堆砌公式。

但在你的论文里面,一定不要出现完全堆砌公式的情况。你要注重生活情景,而生活情景、生活主题、社会热点问题,它恰恰就是数学建模的一个过程。比如说我们高中数学用复利问题引入自然对数 $e$,或者用种群增长模型引入这个微分方程,用刚刚的比萨斜塔引入这个简单的解直角三角形。

你在论文里体现,不能直接体现解直角三角形——上来第一句话就是“我们可以考虑这个解直角三角形”,这是非常突兀的。你要先做一个介绍,一种引入。这是常规的方程中用震荡电路来表现这个微分方程,来引入微分方程,这有一个过渡,不会那么突兀。

数学本身是为解决问题而发明的工具,我们把它教成了一个抽象体系,然后再去找应用,这似乎本末倒置了。而这个建模比赛就恰恰反映了这个应用是一个抽象它的本身。是先有问题,再有数学,而不是先有数学,然后我们再找这个应用。人类的公然认知是从情景到总结,而不是先有公理,再有应用的。

关于图片的分类与绘制

然后我这边分为几类:

第一类:图表和公式

首先就是有关作图的。因为是零基础,我这边就以一个初学者的角度来讲一下这种图。包括这种教科书的图,你怎么做?这个图就很简单,网上随便找一个比萨斜塔的图片,然后拿进 PPT 里面画两个箭头,这种图相信绝大多数人都会做。

我这边图片分为四个模块:

  1. 凑字数的图(充版面的图):就是一页文字中你可能绝大部分都是文字,你要用两张图来充版面,让你的这个论文不那么单一。我这边讲的论文是以 Word 文档为主体的。
  2. 反映数据的图:这也是老师或者是一些网课特别强调的,数据反映的比较直观。如果用一张表或者用文字叙述的话,可能不会像图片这么直观。这里紫色的线的震荡比绿色这个线震荡明显要大,如果用数据或者图表阐述的话,没有那么直观。
  3. 流程图:类似于思维导图,就是展示文章架构,就是展示你的解题思路的一种图。
  4. 示意图:跟这个充版面的图其实是差不多的。示意图分类可能很多了,包括受力分析图、几何的画画(函数图像或者抛物线、投篮球的图像),包括前面这个祝融号飞船的航海图像,就是示意图。

美赛对于论文的写作、图片的绘制是重视度非常高的。这跟国赛是不一样的,国赛可能更注重你的结果,更注重你的那个方法。你的文章可能可以堆砌,可以像“苏联模式”这样堆砌公理、堆砌方法,或者像你高中考试写作业的时候那样。但是美赛一定不行的,一定要有优雅的配图和排版。美赛偏向于是一个杂志,很多图主要是为了美观。

详细讲解各类图片

  1. 展现数据的图形

这边我认为数据图最主要的是数据,而不是折线用什么红色白色、这个点是散点图还是什么。主要就是数据如何获得。

展示数据的图片有很多,一种就是用 Excel,对于初学者来说最简单就是 Excel。比如今天的天气,这周的天气最高气温15度、最低气温5度……然后画成一张折线图。这是用 Excel 可以做到的,也是非常简单的。

当然也可以使用 Matlab、Python,就是喂给他数据,然后他给你生成图像。也可以使用网站工具作图,也可以直接把那个数据归给 AI,然后让 AI 给你进行美化。但是要注意一点,你把数据丢给 AI,或者是让 AI 生成图片的时候,它可能会对图片进行“二次创作”。它可能不是跟你喂的数据完全一致,会有些出入或者有些美化,就要注意一点。

专业的软件,我这里就不讲解了,一般都是现学现用,比如 Origin 这种美化数据的软件。

你要知道的你需要几种图表,一般来说就是:柱形图、折线图、散点图、饼图和热力图

  • 柱形图、折线图和饼图是大家小学初中包括高中都特别常用的。
  • 散点图主要就是展示两个变量之间的相关性。比如青年就业率和结婚率的关系,这种叫相关性,就可以画散点图,可以加拟合线或者线性回归之类的。

展示量化关系就是这种图片。当然不仅限于这几种图片,可以用一些组合图或者是一些你自创的图片。

  1. 流程图(思维导图)

我这边最容易上手的就是 PPT 上面的画图。PPT 这边直接插入形状,给它调成黑色,然后用简单的箭头在这里连接,就可以简单的作图了。

这个流程图重要的是你的思路,你怎么搭的框架。就比如说青年失业率和结婚率的关系,你需要注意的是,输入到输出中间的思路是什么?这其实是你的建模过程。

就比如说祝融号,你要建模成一个质点,这个是如何建模的?你要体现这个思路。比如说这个祝融号在航海中特别小,这些相当于模型假设。主要是理清思路,而如何理清思路,就是有已知条件和输出。

中间的假设条件(Assumption)可能是在一定程度下是平稳的,或者是什么移民条件很平稳,然后可以简化成什么模型。就是输入一个东西,产生一种框架。比如无人机的位置,这个投档位置相当于中间变量,引爆位置都是中间变量。

基本的建模流程图可以笼统一点,也可以详细一点。这其实是一个等到大题的流程图,你每道小题流程图可以再详尽一点。就是讲这里基本建模的时候可以拆开来,如何建模、针对性优化,这只是一个在问题分析后面一个总的建模。把你用到的大体模型给它展示一下就可以了。具体的求解方法,包括灵敏度分析或者误差分析,展示一下就可以了。

  1. 示意图

示意图也很多样,像这种受力分析图,或者是日历图,或者是时间的年代图。

主要就是根据题目的要求。如果题目是一个电学图,你肯定要画电路图试一下;如果题目是一个几何题,或者是什么钟摆,你可能是要画几何图这样试一下;或者是受力分析图。

必要时候,你们第一天,特别是第一天没什么思路的时候,可以直接手写手绘示意图,在草稿纸上画一下这种图,再在 PPT 或者是一些软件上面做这种图片。或者是你实在没办法,把手绘的扫描成一个文档、扫描成一个图片,然后贴在你的论文里面。

  1. 水图(充版面的图像)

就比如说我们高等数学中的欧拉头像,或者说语文书上一些奇奇怪怪的建筑图,或者什么杜甫头像,大西洋日报里面的一些浮夸的图像。

有些图像你没什么意义,删掉也是可以的,它放在那里的意义就是吸引人的眼球,就是为了充版面,这就是这种“水图”的意义。像这个谜语图,你完全可以用两行字来介绍一下这个谜语是什么,但他用了这幅图,配色还特别的丰富。

这种图片就是充版面的。而这种图如何找?一种就是你可以直接上网搜索,但是上网搜索后面在你论文后面一定要标记信息来源(谷歌搜索或者是哪个链接)。

还有一种,水图不宜过多,不要整篇文章全是水图,这样显得论文很空洞。而且不要放一些无关的水图,有些人这个论文里面把你们三个合照放进去,这不行的。

表格与符号说明

第二个就是表格,一个很重要的就是 Notation(符号说明)

这里表格尽量用三线表。这边展示一下三线表如何用:

  • 你插入一个几行几列的表格。
  • 把它全框线设置成无框线。
  • 然后第一行的上面(上横线)设置一磅,然后下横线也设置一磅。
  • 这里表头可以设置0.5磅或者0.75磅,这无所谓。

一个是符号(Symbol),然后描述(Description)和单位(Unit)。

  • 符号:比如说 $v_i$ 表示速度,尽量用新罗马体(Times New Roman),斜体。
  • 单位:尽量是正体,不要斜体。
  • 描述:尽量就是三线表,也不要全框线,显得很杂乱,三线表还是比较美观的。

关于符号说明(Notation),可以把全文反复用到的符号声明一遍,不要每个符号都声明,显得这个文章会非常的臃肿(一个 Notation 占了半页或者占了一面)。有些参数、有些系数,整篇文章你只用了一次或者只用了两次,你只需要在那个公式下面描述一下这个参数是什么意思就可以了,不要单独的放在 Notation 这里。

这个 Notation 尽量不要超过半页,如果超过了,你尽量可以删减一下,把一些不重要的删减一下,就是美观问题。

关于表格还有第二个作用,就比如说有些数据你枚举的非常费劲,或者它的规律性特别强。比如说这个无人机,它三台无人机投放,然后三个坐标、三个遮蔽时长、三个速度。你用文字描述的话可能会一大段,但是你不一定描述的清楚也不明显,你就可以列一张表,或者是做一个图(当然我这里建议列表)。这个表格你可以自定义,比如这里写速度,这里写方向,也没有问题,把同类型的给它合并起来。关于表格比文字是更直观的,文字有的时候让人不想看,让人厌倦。

公式编辑

关于公式,对于初学者来说公式就这两种:

  1. Office 自带插入公式:利用 Office 这里的插入公式,基本上你的所有符号都能枚举出来,或者上下标也是可以的。对于初学者来说已经很够用了。当然有些排版可能不好看,比如这个分数线、指数可能不够规范。
  2. MathType 插件:比如 $\lim (1 + 1/n)^n = e$。用 MathType 生成的是新罗马体,和 Office 自带的字体不一样,教科书是更偏向于这个新罗马体的。包括矩阵,这边自带的也是可以直接声明矩阵的。

还有一种就是用 AI 生成公式。所以你再笨的话,你就用手写,把公式手写出来,或者说你看到那个网上找或者 AI 生成的一些公式,你看不懂,你把公式手写出来,然后再让 AI 给它生成成这种 LaTeX 代码。这行代码在 Word 文档里面(如果有插件)可以直接转化成这个公式。

这是公式的问题,尽量要会编辑一些简单的公式,复杂的公式其实也没必要。

然后就是关于公式,你要完善每一个公式的说明。就是一大串公式之后,你要完善好这个 $E$ 指代的是什么?$a$ 指代的是什么?$C$ 和 $R$ 分别指代的是什么?

还有就是不要堆砌公式。不要一版面全是公式,然后后面一版面又全是图表,前面一版面又全是文字,这样显得排版非常的不合理。

论文架构

下一页就是整篇文章的架构。这分为:

  1. Introduction(问题背景、问题重述、分析)
  2. Assumption(基本假设)
  3. Notation(符号说明)
  4. Body(主体内容,Part 4 & 5)
  5. Evaluation(模型的评价)
  6. Conclusion(结论)

目录也是要有的,分一级标题、二级标题、三级标题这样子。

Part 1: 模型的背景、问题的分析和大体的方法。你大体的思路要在第一部分里就体现出来,不要磨磨唧唧的最后一段才体现你的建模方法。这是不可取的,尽量在开头或者摘要的时候就体现出来。全文的框架(思维导图)尽量堆在前面,让评委一眼就能看到你在干什么。

Part 2 & 3 (Assumption & Notation): 模型的假设。比如说比萨斜塔可以假设它是直立的,不是一个拱桥;也可以假设每层楼高是一样的;或者那个祝融号可以假设它是一个质点。

  • 符号说明刚刚讲过了,就是把全文主要的符号给它列举起来。

Part 4 & 5 (Body): 正文内容。注意一下必要的误差分析和敏感性分析。基本上你的模型都不会是完好无损的,都会有误差。

  • 敏感性分析:就是调整参数,你的模型结果会不会变,变多少?
  • 误差分析:就是你这个模型预测的结果,接不接近。

Part 6 (Evaluation): 模型的评估。列举几条模型的优缺点,或者是可能的运用、推广、改进之类的。

Part 7 (Conclusion): 模型的结论。这边有一个要注意的就是,包括模型假设、评估和结论,结论要写在前面。尽量把结论写在前面,不要一段文字在这里堆砌不知所云。

  • 有些人写一大段,既写了他干净清爽,又写了他勤洗头,又写了他形象端正……你想表达什么?要尽量把点写在前面。
  • 还有优缺点不要前后矛盾了。
  • 可能的推广:如果你的模型特别简单,尽量写推广;如果你的模型特别新颖,就可以写应用。

摘要写作

然后就到了最重要的一点:我们现在论文错字连篇,96个小时过后,你的论文还是什么都不会,前后矛盾,图文不搭,公式乱码的情况下,只剩三个小时了。现在你要干什么?

你现在当务之急要做的就是改摘要。把摘要给它改的像一篇人写的出来的东西。当务之急是改摘要。

摘要怎么写?摘要其实就类似于八股文,我这里摘要分成三个部分:

  1. 第一段:主要就是一两句话引出你的背景,引出你的问题。不要太多,不要超过两行。然后再两句话写出你贯穿全文的方法、总问题、总方法、主要模型。这两段加起来不要超过四句。

  2. 第2、3、4段:针对你的每一个问题都简要的概述一下。

    • 首先简要概述一下你这个问题想干什么。
    • 然后你用了什么思路,用了什么模型,用了什么算法,解决了什么问题。
    • 如何优化这个问题。
    • 把非常明确的东西放在摘要里,不要把一些模棱两可的东西写在摘要上。
    • 摘要一定要“能量度”高,一定要每一句话都不能有语病的,不要啰嗦。
    • 主要过程、主要关键步骤就是在中间这几段。
  3. 最后一段:交代你全文的特色,对应的就是模型的优缺点,或者说模型的推广。也是两三句即可。

摘要里11个字:就是要凝练,一定要简明扼要

字体与排版

最后是关于字体字号问题。

首先美赛对论文其实是没有什么要求的,只要字体字号让阅卷老师看得清楚就可以了。

  • 我建议正文的字号大小是小四
  • 摘要这种一级标题比二级标题要大,二级标题比三级标题要大。
  • 摘要标题用小三
  • 加粗不加粗我觉得无所谓。

我推荐四五种字体:

  • 衬线字体:就相当于宋体,比如 Times New Roman。尽量正文就是 New Roman。
  • 无衬线字体:相当于黑体,比如 Arial。标题或者图表的话可以用这个字体。
  • 等宽字体:比如 Courier New,用于代码可能多一点。
  • 不要使用突兀花哨的字体,在正文里一定不要使用。

我这边就到这里!后面是交给我队长(凉柚NH3)的第六部分,给我队长总结一下。

总结

凉柚NH3:

最后,就总简简单很简单的总结一下,最后就体验就是一个关于绘图的话,就反正你就现在你可以用 ai 生成,你可以生成。这个我不细讲了这篇 ppt 里面非常多的图,都是用 ai 有一些可能看得很明显,但是有一些就是我特地加的 prompt,让它变得非常不明显,看出来人。

然后最后一点就是有关于 AI 的使用问题,我们那个时候是25年年初那个时候最强的 AI 是 chatgpt4,4o的话,它是有次数使用限制的次数限制非常严格。反正无论你使用什么 ai 工具,反正就是保持自己的思考。

另外要注意的就是 ai 它是有使用次数上限的,比如说学生认证后的 Gemini 3 Pro 还一天请求次数上限是100。然后我们分享就到这里,接下来是有没有 qa 我也不知道你们有没有问题要问,因为因为我前面以为时间不够,我讲的会比较紧,后面我两位队友会讲的会松一点,没有的话就这样吧。

后续:总结与问答

周老师:

来看一下其他同学有没有什么要问的?

因为说实话,不管他们整个团队,整个分享都非常细。大家一定要注意,他是从整个的初学者的角度,就是说从他们自己刚开始美赛建模过程当中的一些经验。

包括我听下来之后,我感觉好像有一种身临其境的感觉,可以感觉到他们在一整个比赛过程当中,他们的队伍到底是怎么样在磨合,或者怎么样去把这个任务给它完成。我是可以感受到这一点,不知道在座听的同学会不会感受到这些点。

他们的准备 PPT 里面也给了很多大家以后会经常问到的问题,比如说:

  • 关于论文格式:按道理,我们的论文它的格式有什么限制?刚才 ac6 同学说了,它只有个页码的限制,还有摘要的页码限制、目录的一些页码限制,但是里面到底你用什么样的字体,或者什么样的一个字号,是没有硬性限制的。
  • 关于图文配合:很关键一点就是你怎么样通过文字、图表进行好好的配合,添加一些色彩等等,怎么让你的整篇论文看起来赏心悦目。
  • 核心竞争力:最关键一定有你自己的内核,有自己的创新的东西。这是最关键的。

其他同学还有没有什么要问的?所以这些东西是一个很难得的机会哈,但有些我是感觉如果你有去体会,或者最近有在认真准备的同学,你就会感受到一些问题。

在这个问题里,我刚才也跟大家强调过了,我觉得刚才 凉柚NH3 提的一个非常关键:

  1. 研读欧奖论文:你在准备过程当中,你到底选取了多少篇优秀的欧奖论文?你选取的欧奖论文,你对它研读到了什么程度?这会影响到你最终能走得多远。言外之意,我到底给我自己整个的团队、整个建模过程里面,我花了多少时间准备?我们的研读到底是研读到什么程度?
  2. 关于选题:总共有六道题,当然大部分的队伍都会选择前面的三道题。刚才也给了一个比例,选 C 题的比例更高,因为不管怎样,你在什么专业当中,你 C 题多多少少都会能够把它完整的完成,它的整个的专业性可能稍微会偏弱一点,更多的是一种比较广泛的、大家能够接受的思考。
  3. 赛前准备:在现在这个阶段里面,你该怎么去准备?这是一个非常关键的事情。所有的这些工具,怎么样挑出来觉得适合你们团队的?或者你所选择的努力的一个方向,基本上在这之前都有一个很明确的方向。哪一些题、哪一些类型比较适合你们自己队伍的,你们都必须要把这个事情做到前头来。包括排版的一些工具,还有我们的一些公式的使用,这些东西对你们来说上手都是超级快的,只要你用心的去做这么一件事情,都可以很好的去完成它。

你看他的整个分享,也是我们之前在做去年美赛的时候,就是针对“数据”这个问题。他就告诉大家,他的一整个思考:他怎么去选工具,怎么样去一个流程。我觉得听下来,能够感受得到就是在身临其境的。在那种好像大家都在没办法找到数据的情况下,我怎么做到我去突围?我能够队伍能够找到一个比较不错的数据?别人找不到我能找得到。

而且里面也说了,千万不要去听信网络上所对应的分享。我可以告诉大家一个非常关键的点:

  • 避坑指南:只要是网络上分享的那些方法,基本在评审的时候都会规避。因为那些方法都不是不靠谱,或者都不是一些很成熟的方法。
  • 独立思考:你想,很多方法都是题目一出来一两个小时他就有思路了,如果是这么简单的话,那我也不需要说大家去建模了。所有的东西全部都是 AI 去做,或者全部都是按照这一个套路做,绝对不是这么回事的。他只是给你抛一些诱饵,让你去咬这个钩,一旦咬了这个钩,你就发现你后面就完全就深陷其中了。

不管怎样,我觉得他今天讲了一个非常关键点:每支队伍你在拿到题目的时候,一定得有自己的思维。

  • 工具的主动权:一定要你把所有的所能用到的工具,一定得能够“为你所用”,为你队伍所用。不能被所有的工具,比如被 AI 牵着鼻子走。如果你一整篇论文给出来都是 AI 的味道,那你这论文肯定被灭了,基本上你肯定是走不远的。
  • 现学现用:你要让 AI 变成你的一个工具。当然,有些可能说碰到一些题目,我得现学现用,你得知道我怎么样、以什么样的渠道去现学现用。这些东西平时你都必须去练习。

说点实话,我就不知道大家听完之后你们的感受到底是什么。我看有些同学可能就没有太多认真去听这方面的一些分享,好像感觉现在还有时间、我可以放回放等等。我是觉得很多东西就一定得是“现在学,现在感受”,直接把这问题给他解决掉了。

同学们还没什么问题?如果没什么问题的话,我们今天这支队伍的分享就到这里哈。

感谢你们三位同学哈,非常感谢花了很多时间去做准备,也给大家提供了非常精彩的一个报告,好,谢谢你们!

我刚刚说了,那当然那个内容我还是算了,放在明天说吧,那今天的时间也不早了,那我就不多说了哈。那我们今天的分享就到这里。好同学们,这我们就退出会议了哈。

梁老师,大家退出会议有什么问题都可以在群里面都问,都可以问。

梁老师:

好,那就这样子。

周老师:

梁老师再见哈,好,新年快乐!梁老师快新年了,再过差不多两个小时。

梁老师:

好,再见,新年快乐!

周老师:

好。

爬取腾讯会议会议纪要的脚本

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains
from webdriver_manager.chrome import ChromeDriverManager
from bs4 import BeautifulSoup

def scrape_tencent_meeting_keyboard(url):
    # 🐾 1. 启动!
    options = webdriver.ChromeOptions()
    options.add_argument("--log-level=3") 
    options.add_argument("--mute-audio") 
    
    driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)
    # 窗口尽量拉高,这样一屏能容纳更多内容,减少滚动次数
    driver.set_window_size(1000, 900) 

    unique_sentences = {} 

    try:
        print(f"🐱 正在打开页面:{url}")
        driver.get(url)
        
        print("⏳ 等待页面完全加载 (8秒)...")
        time.sleep(8) 
        
        print("🖱️ 正在尝试点击文字区域以获取焦点...")
        
        # --- A. 关键步骤:点击文字,获取焦点 ---
        try:
            # 找到第一行文字的容器
            first_text = driver.find_element(By.CSS_SELECTOR, "div[class*='minutes-module-paragraph']")
            # 点击它,确保当前网页的“活动元素”是这个文字区
            ActionChains(driver).move_to_element(first_text).click().perform()
            print("✨ 焦点锁定成功!准备开始按键阅读...")
        except Exception as e:
            print(f"😿 点击失败,尝试直接点击 Body: {e}")
            driver.find_element(By.TAG_NAME, 'body').click()

        last_count = 0
        no_new_data_attempts = 0
        
        # --- B. 循环:模拟按“下”键 + 抓取 ---
        # 既然是长会议,我们多循环几次
        for i in range(300): 
            # 1. 抓取当前屏幕数据
            page_source = driver.page_source
            soup = BeautifulSoup(page_source, "html.parser")
            
            rows = soup.select("div[class*='minutes-module-row']")
            for row in rows:
                speaker_elem = row.select_one("div[class*='speaker-name']")
                current_speaker = speaker_elem.get_text(strip=True) if speaker_elem else None
                
                sentences = row.select("span[class*='sentence-module_sentence']")
                for sent in sentences:
                    sid = sent.get("data-sid")
                    text = sent.get_text(strip=True)
                    if sid:
                        if sid not in unique_sentences:
                            unique_sentences[sid] = {
                                "sid": int(sid),
                                "speaker": current_speaker, 
                                "text": text
                            }
                        elif unique_sentences[sid]["speaker"] is None and current_speaker:
                            unique_sentences[sid]["speaker"] = current_speaker

            # 2. 进度判断
            current_count = len(unique_sentences)
            if i % 10 == 0: # 每10次报个平安
                print(f"🔄 第 {i} 轮按键 | 已收集句子: {current_count}")

            if current_count == last_count:
                no_new_data_attempts += 1
                # 连续20次没新数据才算到底,因为按键滚得慢
                if no_new_data_attempts >= 20: 
                    print("🏁 连续多次没有新内容,判断已到底部,喵!")
                    break
            else:
                no_new_data_attempts = 0
            
            last_count = current_count

            # 3. 物理操作:按下方向键 (Arrow Down)
            # 每次循环按 5 次下键,模拟快速阅读
            try:
                # 使用 ActionChains 连续按键
                actions = ActionChains(driver)
                for _ in range(5):
                    actions.send_keys(Keys.ARROW_DOWN)
                actions.perform()
                
                # 或者尝试 PageDown,如果 Down 太慢的话
                # actions.send_keys(Keys.PAGE_DOWN).perform()
                
            except Exception as e:
                # 有时候焦点丢了,重新点一下 Body
                driver.find_element(By.TAG_NAME, 'body').send_keys(Keys.ARROW_DOWN)

            # 稍微停顿,给网页加载时间 (非常重要,太快会跳过)
            time.sleep(0.5) 

        # --- C. 结果整理 ---
        print("✨ 正在拼接完整记录...")
        sorted_sids = sorted(unique_sentences.keys(), key=lambda x: int(x))
        
        final_results = []
        current_block = {"speaker": "未知说话人", "text": ""}
        
        for sid in sorted_sids:
            item = unique_sentences[sid]
            speaker = item["speaker"]
            text = item["text"]
            
            if not speaker:
                speaker = current_block["speaker"]
            
            if speaker != current_block["speaker"]:
                if current_block["text"]: 
                    final_results.append(current_block)
                current_block = {"speaker": speaker, "text": text}
            else:
                current_block["text"] += text

        if current_block["text"]:
            final_results.append(current_block)

        return final_results

    except Exception as e:
        print(f"😿 出大问题了: {e}")
        return []
        
    finally:
        driver.quit()

if __name__ == "__main__":
    target_url = ""
    
    results = scrape_tencent_meeting_keyboard(target_url)
    
    if results:
        print("\n" + "="*30)
        filename = "tencent_meeting_final_v2.txt"
        with open(filename, "w", encoding="utf-8") as f:
            for item in results:
                # 简单清洗一下格式
                clean_text = item['text'].replace('\n', ' ')
                line = f"【{item['speaker']}】: {clean_text}\n"
                print(line.strip()[:60] + "...") 
                f.write(line + "\n")
        print(f"\n🎉 终于搞定啦!内容已保存到 {filename},快去检查一下有没有少!")
    else:
        print("\n😿 还是空的... 这网页有毒吧!")
Made with ❤️ | 实践出真知 | [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/)
使用 Hugo 构建
主题 StackJimmy 设计