2024 数学建模国一经验分享
2024 数学建模国一经验分享
背景:武汉某211,专业:计算机科学
心血来潮,就从学习和组队两个方面指点下后来者,帮新人避坑吧
2024年我在数学建模比赛中获得了国一(教练说论文的分数是湖北省B组第一),这次比赛我做的是B题,平时也会做C题。
初识数模(高考暑假)
高考结束后的暑假,我第一次接触到数学建模比赛(至今我也不明白为什么当时没选择 ACM)。听说这个比赛“一次比赛,受益终身”,我就被吸引了,开始全身心投入到数学建模中。
刚开始时,我没有明确的学习计划和思路,准备工作有点盲目。我只是随便看看视频、书籍,感觉稍微看了20分钟的神经网络相关视频就自认为掌握了神经网络模型,觉得自己又学会了一个新模型,感觉自己特别厉害。然而,事后才发现那时的自己其实只是“半瓶水”。这段经历让我深刻理解了“理论与实践相结合”的重要性。
原始资本积累阶段——大一上
数学建模比赛是一个考察参赛者如何在三天内,用所学的模型或者现有的模型来快速解决现实问题的比赛。光靠现有模型的查找并不难,但会非常吃力。因此,在平时就要积累一些模型,至少有个备选方案,这样才有更大的胜算。
以下是一些大佬整理的模型框架,如果你没有任何了解,到了比赛现场再去找模型学习,势必会很吃亏。虽然视频和书籍是很好的学习资源,但最重要的还是要动手实践。看书是系统化的学习,视频则偏向速成,各有优劣,但实践才是王道。
找资料
我的性格偏急,所以选择了视频加倍速学习。从这个阶段开始,如何找到合适的学习资料就显得至关重要。首先,要专注于学习数模的核心内容——各种模型的学习。那如何找到这些资料呢?哪种资料比较适合呢?
试错过程
对于我来说,时间较为宽裕,所以在大一期间,我疯狂尝试了不同的学习资料。包括“数学建模清风”、“数学建模老哥”、“司守奎先生的黄皮书”、蓝皮书数学建模课本等。此外,还阅读了很多细化方向的书籍——比如《43种神经网络实现》、《arma回归分析》……
总结
根据我的亲身体验,我将不同的学习资源进行了总结归纳:
资料名称 | 适用人群 | 优点 | 备注 |
---|---|---|---|
数学建模清风(推荐) | 初学者 | 比较系统化,内容全面 | 需要付费(56元) |
数学建模老哥 | 平时碎片化学习的同学 | 内容较为粗糙,但有用 | 信息散乱,较难系统学习 |
司守奎的黄皮书 | 想深入学习的同学 | 深入讲解数学建模原理 | 新手看不懂,较难入门 |
蓝皮建模课本 | 课程要求的同学 | 基础内容齐全 | 学习深度足,一点不基础 |
刷经验阶段——大一下-大二上
大一上学期学完后,我便开始了刷比赛经验的阶段。
首先,给想参加数模的小白们一个提醒:这个比赛非常辛苦,可能会熬上三天,最后拿到的也许只是可怜的二、三等奖。所以在决定是否参加时,务必慎重考虑。
那时,我有幸和一位非常负责的学长组队(后来学长保研去了上海交大),虽然我们都是数模小白,但幸运的是大家都很投入,学长是大三的,我们俩则是大一的。我们首先参加了华科的校赛,第一次参赛就获得了二等奖,从此便踏上了数模的“贼船”。我负责编程,记得第三个问题不会做,只能用神经网络胡乱尝试,结果最后还是顺利过关。
大一期间,我还参加了学校的新生杯、统计建模、美赛等比赛,基本上都是二、三等奖,唯一例外的是美赛(国际三等奖—S,水平一般)。在这一过程中,我尝试了论文撰写、编程实现、建模思路等多个角色,还担任过队长,逐步了解了团队合作中的各种细节。那时,我觉得自己特别厉害——居然大一就拿了二等奖!
组队问题
根据我个人的经验,组队时有几个准则:
- 避免找小白:特别是当你自己掌握了较多知识时,尽量不要找全是小白的队友。最好是三个人差不多的水平一起参加,否则你会觉得自己在拖后腿。
- 争取自己做队长:如果你有一定的能力或积极性,最好自己当队长。否则在实际推进过程中,可能会遇到队友消极、不作为的情况,最后你会觉得很憋屈。
- 如果队友不行,赶紧换:不要考虑面子,比赛时时间紧迫,务必找合适的队友。你不想花了很多心血,最后被队友拖累。
- 分工合作?不用太信:很多人提到不同专业分工合作,但实际情况是,无论专业如何,能力才是最重要的。数学建模本质上是对思维的挑战,强者无论做什么都能很快上手,而不是为了分工而分工,结果什么都做不好。
情侣组队?
不推荐情侣组队,原因有以下几点:
- 组队时第三个人总是处于电灯泡的角色,或者你们两个装作不认识,但总会显得不自然。
- 数模比赛时会有很多分歧,通常队长拥有最终话语权,但在情侣关系中,可能会因为亲密关系发生冲突,导致意见分歧。
- 如果一个队员较为懒散,另一个较为积极,可能会导致不平衡。参考第一点,这种情况容易使关系变得紧张。
- 真正组队时,其他同学可能会觉得你们“甜蜜”不利于合作,可能会选择不加入。
本人经历(情侣组队的曲折)
在大一大二时,我一直和女朋友组队。为了避免影响队友的判断,我们俩选择了装作“路人”的方式(装了整整三个学期,悲)。但女朋友并没有强烈的保研意图,也对自己的能力没有太多信心,导致在大二的上学期和下学期比赛时缺乏积极性,几乎没有兴趣参加比赛。
最后,校赛过了她也没有参加暑期培训,队伍解散了,我只好重新组队。巧的是,暑期培训时,我又和一对小情侣组了队。初时我心态很轻松,觉得自己也曾经这样过来,但他们并没有装作“路人”——一点也不,最终闹掰了。我不想线下看小情侣亲热,倾向于选择了线上交流,避免面对尴尬。最终,我们的队伍解散,而我也重新与两位同专业的队员组队,巧的是其中一位也是被小情侣队踢出的,做过B题的都知道,做B题并不容易。特别是像TSP这样的问题,当时我用了自己所学的的Linux知识,在服务器上跑模型跑了一天,花了几十块,结果在出结果前最后一秒看到校赛群消息——
(当时踢我出队的小情侣在群里发的信息,估计想断我后路)
(后来过来和我和解)
报名途径问题
很多新手可能会找不到参赛机会。其实参赛的途径很简单,通常有学校内部的报名和社会途径两种。
- 学校途径:可以多关注校园网站和数模协会的公告,通常会发布相关信息。
- 社会途径:赛氪等平台也会发布赛事信息,大家可以通过这些平台了解和报名比赛。
(下图是一个老哥整理的赛事信息)
PS:有些学校的美赛需要通过学校报名,但如果不满足条件,依然可以自行报名参赛,费用大概是每队800元(唉。本人已经捐款两次了)。
细节
在谈完学习方法和组队策略后,接下来就要讨论一些比赛中不可忽视的细节。
作为队长
作为队长,最重要的责任就是 推动进度。组员往往会觉得比赛时间还很长,反正有队长在撑着,但实际上,队长不仅要制定计划,还要时刻跟进进度,确保任务按时完成。特别是在任务卡住的时候,不能停滞不前,及时解决瓶颈问题,推动整个团队前行。
另外 照顾组员情绪 是非常重要的,和睦的团队氛围对比赛的成功至关重要。比如在发生争执时,当你否定某个队员的建议时,最好能先肯定他们的努力,再提出自己的不同意见:“我觉得你这个思路很好,但在这个问题上,我觉得可以再改进一下,试试这样……”这样不仅能缓解情绪,还能让队员感受到被尊重。
还有在比赛气氛低迷或团队疲惫时,队长应主动采取一些行动来重振士气。
例如,在国赛的最后阶段,我们已经熬了两天,团队的精神有些疲惫。天一亮时,我特地去给每个人买了早餐,每人三个包子和一瓶热粥,这样的小举动能够让队员们感觉到关怀,增添团队的凝聚力。在关键时刻,其他队伍可能还在埋头做模型,而我们则稍微缓一缓,调节情绪,这对接下来的比赛进程有很大帮助。
作为组员
作为组员,最重要的就是 服从队长的安排。通常情况下,队长安排任务或分配工作是基于对全局的把握和经验,因此即使有些任务看起来不太吸引人,也要尽量去执行。如果队长安排你去学习某个模型或阅读某篇论文,那往往是因为他认为这个任务对整个团队有帮助,或者是针对比赛中的某个关键点。
比赛中不能失联,这一点尤其重要。有些队员在比赛期间可能因为个人原因不太积极,甚至不回复信息。这种行为不仅影响团队协作,还可能导致关键任务的延误。在比赛期间,每个人都需要保持高度的联系,及时分享自己的进展和问题,确保团队的步调一致。
关于GPT的使用
在比赛中,曾有一个前队友,非常依赖 GPT(他是负责建模的队员),每次遇到问题,他只会直接截图给我,而不加以说明或转述。这种做法非常不专业,因为团队合作的一个基本原则是 理解和交流,如果只是机械地复制粘贴,其他成员无法真正理解问题,也无法参与到问题的解决中。
更为离谱的是,他还用的是我的 GPT 账号,因为他没充钱。因此,我在比赛结束后,毫不犹豫地换了队友。
在使用像 GPT 这样的工具时,一定要 有自己的理解,不要直接复制输出的内容,尤其是在团队中分享时,要尽量用自己的话转述,甚至可以在理解之后对内容进行改进和补充。记住,使用工具是为了提高效率,而不是完全依赖它,最终的结果需要大家共同思考、共同创造。
相关文章:

2024 数学建模国一经验分享
2024 数学建模国一经验分享 背景:武汉某211,专业:计算机科学 心血来潮,就从学习和组队两个方面指点下后来者,帮新人避坑吧 2024年我在数学建模比赛中获得了国一(教练说论文的分数是湖北省B组第一࿰…...

安全见闻2
安全见闻,犹如一座庞大而深邃的知识宝库,其中涵盖了形形色色的网络安全知识与错综复杂的网络技术体系。在当今数字化时代,这些领域的重要性不言而喻,它们不仅关乎个人信息的保护与隐私安全,更是支撑着整个互联网世界以…...

Web游戏开发指南:在 Phaser.js 中读取和管理游戏手柄输入
前言 Phaser.js 是一个广受欢迎的 HTML5 游戏框架,为开发者提供了创建跨平台 2D 游戏的强大工具。在现代游戏开发中,支持游戏手柄已成为提升玩家体验的重要方面。本文将详细介绍如何在 Phaser.js 中监听和处理游戏手柄的输入,帮助开发者为他…...

代码随想录32 动态规划理论基础,509. 斐波那契数,70. 爬楼梯,746. 使用最小花费爬楼梯。
1.动态规划理论基础 动态规划刷题大纲 什么是动态规划 动态规划,英文:Dynamic Programming,简称DP,如果某一问题有很多重叠子问题,使用动态规划是最有效的。 所以动态规划中每一个状态一定是由上一个状态推导出来的…...

记录一个Flutter 3.24单元测试点击事件bug
哈喽,我是老刘 这两天发现一个Flutter 3.24版本的单元测试的一个小bug,提醒大家注意一下。 老刘自己写代码十多年了,写Flutter也6年多了,没想到前两天在一个小小的BottomNavigationBar 组件上翻了车。 给大家分享一下事件的经过。…...

使用Python将 word文档转pdf文档
第一步:我们需要导入支持包 >pip install pywin32 如果下载速度比较慢的话,可以考虑使用国内镜像源。 第二步:我们需要导入文件,这里采用 input,用户填入路径后,直接获取路径下的word文档,实现批量转换…...

基于C#+SQLite开发数据库应用的示例
SQLite数据库,小巧但功能强大;并且是基于文件型的数据库,驱动库就是一个dll文件,有些开发工具 甚至不需要带这个dll,比如用Delphi开发,用一些三方组件;数据库也是一个文件,虽然是个文…...

Vue基本语法
Options API 选项式/配置式api 需要在script中的export default一个对象对象中可以包含data、method、components等keydata是数据,数据必须是一个方法(如果是对象,会导致多组件的时候,数据互相影响,因为对象赋值后&…...

芯片发展史
芯片的发展史可分为几个重要的阶段,从早期的真空管到现代的集成电路,反映了技术进步和创新的历程: 1. 真空管时代 (1904 - 1950年代) 真空管是20世纪初的电子元件,用于放大信号和开关,广泛应用在早期的收音机、电视机…...

我的知识图谱和Neo4j数据库的使用
知识图谱概述 知识图谱的含义 RDF与RDFS RDF(Resource Description Framework,资源描述框架)和RDFS(RDF Schema,RDF模式)是构建知识图谱的基础技术之一。它们提供了一种标准的方式来表示信息,…...

ASP.NET CORE API 解决跨域问题
环境 vs2022 .net 8 创建ASP.net Core API项目 配置跨域 编写ApiController 启动项目 得到服务器运行的 地址 在Hbuiler中创建web项目,编写代码 【运行】-【运行到浏览器】-选择一个浏览器,查看结果 正常显示 问题 如果允许所有源访问,有安全风险方…...

sram测试注意讨论
常规测试首先是mbist测试,原理不用多说,自己看,主要是注意点和考虑点: 1、明确测试用的到func_clk的频率的大小,根据经验值一般大于800M的时钟需要特别考虑Timing的问题:由于pr摆放的位置原因,…...

Mybatis 支持延迟加载的详细内容
延迟加载的概念深入 延迟加载是一种在处理复杂对象关系时非常有用的策略。在企业级应用开发中,数据库中的表之间往往存在着各种关联关系,如一对多(一个用户有多个订单)、多对多(一个学生可以选多门课程,一门…...

word文档使用技巧笔记
中文和数字断开到第二行 word一串数字断开_百度知道 下划线对齐 word下划线怎么固定长度一致-百度经验...

使用docker-compose部署搜索引擎ElasticSearch6.8.10
背景 Elasticsearch 是一个开源的分布式搜索和分析引擎,基于 Apache Lucene 构建。它被广泛用于实时数据搜索、日志分析、全文检索等应用场景。 Elasticsearch 支持高效的全文搜索,并提供了强大的聚合功能,可以处理大规模的数据集并进行快速…...

bugku-web-login2
不知道为啥用bp始终登不上hackbar可以 随便输入个账号密码bp抓包,发现个小tip是base64加密的解密 $sql"SELECT username,password FROM admin WHERE username".$username.""; if (!empty($row) && $row[password]md5($password)){ } …...

【 AI技术赋能有限元分析与材料科学应用实践】Neo-Hookean 材料与深度学习结合的有限元分析
Neo-Hookean 材料模型是用于描述非线性弹性材料(如软组织和橡胶等)的经典模型,特别适用于大变形问题。其基本思想是通过应变能密度函数来描述材料的弹性行为。在该模型中,材料的应力-应变关系不仅依赖于应变能,还通过变…...

StarRocks关于ConcurrentModificationException 问题的解决
背景 本文基于 StarRocks 3.1.7 目前在基于Starrocks做一些数据分析的操作(主要是做一些简单的查询),同事遇到了一些并发的问题: ontent:2024-11-27 07:04:34,048 WARN (starrocks-mysql-nio-pool-214933|3593819) [StmtExecutor.execute():643] execute Exceptio…...

网络安全防护指南:筑牢网络安全防线(5/10)
一、网络安全的基本概念 (一)网络的定义 网络是指由计算机或者其他信息终端及相关设备组成的按照一定的规则和程序对信息收集、存储、传输、交换、处理的系统。在当今数字化时代,网络已经成为人们生活和工作中不可或缺的一部分。它连接了世…...

替代FTP最佳跨网文件传输解决方案——FileLink
在传统的企业文件传输中,FTP(文件传输协议)曾因其便捷性和高效性被广泛应用。然而,其固有的安全漏洞、对大文件传输支持的局限性、易受网络攻击等问题,已逐渐暴露出FTP在现代企业环境下的不足。针对这一问题࿰…...

Cesium在vue2中的引入和注意事项
在Vue2中,可以使用npm包管理工具来安装Cesium,并通过import语句将其引入到项目中。下面是在Vue2中引入Cesium的步骤和注意事项: 步骤: 首先,打开终端并进入Vue项目的根目录。 运行以下命令来安装Cesium: …...

CentOS 9 配置静态IP
文章目录 1_问题原因2_nmcli 配置静态IP3_使用配置文件固定IP4_重启后存在的问题5_nmcli 补充 1_问题原因 CentOS 7 于 2014年6月发布,基于 RHEL 7,并在 2024年6月30日 结束维护。 CentOS 9 作为目前的最新版本,今天闲来闲来无事下载下来后…...

深入解析 Webhook:从原理到实践的全面指南
1. 引言 1.1 什么是 Webhook? Webhook 是一种基于 HTTP 回调的轻量级通信机制,它允许一个系统实时向另一个系统发送数据。当特定事件发生时,Webhook 会主动向指定的 URL 发送 HTTP 请求,通常携带事件相关的数据。这种被动接收通…...

基于springboot+vue实现的创新创业学分管理系统 (源码+L文+ppt)4-111
4 系统总体设计 4.1系统功能结构设计图 根据需求说明设计系统各功能模块。采用模块化设计方法实现一个复杂结构进行简化,分成一个个小的容易解决的板块,然后再将小的板块继续分化成功能单一的更小模块。模块化设计方法使测试调试、维护更容易ÿ…...

如何高效地架构一个Java项目
引言 Java是企业级应用开发的主流语言之一,而我们作为使用Java语言的程序员,职称有初级、中级、高级、资深、经理、架构,但我们往往只是慢慢通过经验的积累迭代了自己的等级,如果没有保持学习的习惯,大多数程序员会停留…...

Scala的模式匹配(8)
package hfdobject Test35_1 { //需求:现在有一个数组Array(1,2,3,4)。我希望能定义三个变量,他们的值分别是数组中的第1,2,3个元素的值 def main(args: Array[String]): Unit {val arr Array(1,2,3,4,5)//第一个元素的值:arr(0…...

nodejs30: CSS 剪辑路径clip-path导致伪元素不可见问题及解决方法
相关问题 应用圆角裁剪时无法显示::after 取消clip-path设置: 完整问题代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, i…...

Git分布式版本控制工具 Git基本概念、Git工作流程、Git常用命令、Git远程仓库、IDEA操作Git
目录 1.Git基本概念 1.1 概述 1.1.1 开发中的实际场景 1.1.2 版本控制器的方式 1.1.2.1 集中式版本控制工具(SVN) 1.1.2.2 分布式版本控制工具(Git) 2.概述git工作流程 3.Git常用命令 3.1 Git环境配置 3.1.1 下载与安装 3.1.2 基本配置 3.1.3 为常用指令配置别名&…...

十,[极客大挑战 2019]Secret File1
点击进入靶场 查看源代码 有个显眼的紫色文件夹,点击 点击secret看看 既然这样,那就回去查看源代码吧 好像没什么用 抓个包 得到一个文件名 404 如果包含"../"、"tp"、"input"或"data",则输出"…...

Android 获取数字键盘和输入类型
在Android中,获取数字键盘可以通过为EditText设置输入类型为number或numberPassword来实现。以下是一个简单的例子: <!-- 在XML布局文件中 --> <EditText android:id"id/editTextNumber" android:layout_width"match_parent…...