数学建模经历-程序人生
引言
- 即将大四毕业(现在大三末),闲来无事(为了冲粽子)就写一篇记录数学建模经历的博客吧。
- 其实经常看到一些大佬的博客里会有什么"程序人生"、"人生感想"之类的专栏,但是由于我只是一个小趴菜没什么阅历因此也就没有写过类似的博客。今天写一篇关于数学建模的博客,为大家奉献上我一点点微不足道的经验。
- 本文仅贡献给每一个学弟学妹,大佬勿扰。
- 本文分为四个部分:
- 第一部分展示了我的数学建模职业生涯。
- 第二部分讲解了我是如何学习数学建模的。
- 第三部分给出了我学习数学建模的所有资料。
一、比赛经历
1. 1 获得奖项
(1)国赛二等奖

(2)大湾区一等奖

(3)天府杯奖

1.2 参赛时间
- 参加了三场比赛,都是2022年参加的,2022年2月报名的学校的数学建模集训,直到2022年9月参加国赛、10月参加天府杯、11月参加大湾区。
- PS:大佬勿喷,我是小趴菜…
二、学习数学建模
2.1 编程与算法
- 掌握编程和算法是进行计算机相关比赛的绝杀武器!(一刀999)
(1)经历
- 我从大一入学开始接触编程,从那时起我就开始踏踏实实学编程。勤能补拙,全身心投入书籍中的我终于在学期末熟练掌握了C语言。那之后学校开设ACM集训,我直接报名参加,没见过世面的我总以为自己很厉害,最后发现我只是打" printf(“Hello World!”) "很厉害。ACM很需要天赋,总是什么事情都想问个根本,脑袋又笨想不出来的我刷题效率很慢。跟不上学校里面其他大神的我常常感到失落,但那时依旧刷着在大神面前比 “1+1=2” 还简单的算法题,直到现在我都是个算法小趴菜。
- 编程语言是我们程序员最坚实的武器,扎实掌握一门编程语言会使你拥有一把锋利的宝剑,斩断前行道路上的荆棘。因此请不要对" printf(“Hello World!”) "感到枯燥,其实它背后跳动着字节的世界很美妙。
- 要说编程语言和算法哪个重要,毫无疑问是算法!编程语言再会也就是码农,但是算法是计算机世界里最核心的东西。你学个C语言,人家也可以学。人家会运动检测算法,你听都没听过,这就是层次的差距。就像人与人之间的差距不是身高、外貌等决定的,而是由性格、素养、环境、思想等决定的。编程语言说到底只是我们驱动计算机的一个工具,它使得我们能与计算机交流,但学习它和学习一门外语没有区别,甚至现在它变得越来越简单。算法是编程世界中最核心的东西,游戏中流水潺潺、头发随着风吹飘荡、核武器的运行轨迹,这些都是算法,代表了一种计算的思想。
- 如果你的算法竞赛能力很强,那蓝桥杯、数学建模、数据分析、ACM等各种各样的大赛都必将有你的一席之地。当然算法竞赛是指那些专门用于竞赛的算法,就是不包括什么智能识别、核导弹运算轨迹的学术算法。
(2)建议
- C语言是非常经典的语言,许多如C++、Java等语言都是由其衍生而出的,如果你的大学开设的第一门编程语言课是C语言,请你一定要认认真真的学好它,它相当于你在编程世界的母语。
- 学习C语言能够让我们了解到最原始的编程语言框架,学习它最重要的是逐渐了解和接受编程世界中的概念,诸如:变量、函数、内存等等,它将告诉你编程的世界是由什么构成的。
- 作为程序员,我们必须扎实精通一门编程语言,这门语言通常不是C语言,这门语言如:C++、Java、Python,它们会成为我们的一把宝剑,为我们未来的职业生涯披襟斩棘。这门语言是由你的喜好或者志向决定的,如果你想做游戏引擎开发那么你需要学习C++,如果你想做人工智能研究AR那么你需要学习Python。
- 在扎实熟练掌握一门编程语言后,你必须学习一些算法,它们会使你的思维变得很聪明,让你能的编程IQ可以Up、Up。
(3)学习资源
- 学习C++最好的图书:C++ Primer 。
- 中国大学慕课:MOOC 。
- 快速编程语言入门网站:菜鸟教程 。
- 中国Bilibili大学:B站 。
- 牛客万能网站
- 洛谷刷题网站
- PS:计算机相关资源网络上多的数不胜数,但最好还是看书,那些经典书籍的每一页都能让你大彻大悟,而看某站编程语言学习800课,结果一上手Hello World都忘记了怎么打。
2.2 模型与素质
- 我一直没有觉得自己很强,我只是很喜欢努力,我也热爱建模。参加集训时每天都在建模,心在建模上在求解问题中,虽然我很笨但是我很喜欢编程,很喜欢答案出来的那一瞬间。因为热爱,所以尽管全力以赴,不问所得,只想往前冲!
(1)感想
- 数学建模无论如何都是要建立数学模型的,所谓数学模型就是用WPS打好多行数学公式,这就是数学模型。在学校集训期间,基本上老师都是把数学建模的所有题目拿给我们做,许多题目经过老师简化的。
- 数学建模比赛就是发给你一个题目,然后你逐字逐句揣摩出题人的小心思,有些浅显的话术你一看就懂,有些弯弯绕绕的话术你就需要不断揣摩。在你揣摩完所有弯弯绕绕之后,你或许还有许多不懂得地方,但是没关系,裁判都不一定懂。你要做的就是完完全全按照论文的要求去解决问题,你首先要想想怎么解决,想好之后就对问题进行建模,所谓建模就是把所有东西符号化,把所有东西之间的要求和关系公式化,最终把问题描述为多个公式。
- 诸如最优化问题,比如说问你吃一个花苹果3块钱,问你怎样吃花钱最少,就是设吃x个苹果,目标设为z=3x,把问题描述为求:min z=3x ; x>=0 。当然竞赛题不会那么简单,不过也就是多了什么你只有80块、你还想吃香蕉… 之类的。总之就是要把问题描述为数学公式就行。
- 当你把数学公式罗列完之后,你就完成建模了。因为是数学建模竞赛,建模是必须要的,这是对问题的数学描述。但是它是理论上的,即你列几个公式也没办法求出你问题的答案。竞赛时一般会先告诉你有个什么问题,然后你对这个问题进行建模,然后它给你一些数据让你根据你的建模求得一个解。比如那个吃苹果,你设苹果价格为w,则问题为:min z=w*x;x>0。然后现在它告诉你一个苹果4块钱,让你去求解这个问题的答案。
- 这时候就需要使用编程工具了,你经常会看到论文里说什么:对问题建立了xxx模型,并使用Matlab对问题进行求解。 并字就是说我使用什么语言进行求解,因此编程语言是求解现实问题的工具。
- 比赛就是比赛,比的就是一个分数,裁判有固定的打分表,会根据不同的打分项要点对你的论文进行打分。许多时候其实裁判都不知道出题人是什么意思,毕竟竞赛就是竞赛肯定是规范化的,出题人也会把难度限定在可接受范围内,你不需要去求解什么导弹运行轨迹。
(2)建议
- 建模不像考试,很多建模题是没有固定答案的,很多建模题是没有一个人和出题人答案完全一样的。不过比赛就是比赛,和高考一样,第一的含义是比其他所有人分数高。因此我想告诉你,无论遇到什么都不要退缩。
- 还有就是不要理想主义,我总是很理想主义,但是数学建模它要求你给出一个答案。你往往不能给出最好的答案,因为或许全人类都没能解决这个问题,但是我们人类社会发展需要一个较好的答案,你需要接受不完美接受自己生而为人的局限,给出一个较好的答案。
- 如果练习建模使得竞赛时能有更好的发挥?如果你有心情就看看我分析的学习资料,喜欢什么看什么,学建模哪里不懂了也可以看看。如果你想要在竞赛时获得更好的成绩,最好且唯一的途径是看历年的竞赛题,然后尝试思考、进行建模、求解问题,即使做的不好也没有关系,必须要做出来。然后和别人的模型和求解方法进行比较、学习。我知道每一道题目都很困难,但所有建模人将与你同在。
- 建模是真的很棒的一项任务,它以世界上最优美的方式-数学,去描述世界上的问题,让我们看透问题的本质。
- 希望你和我一样真心热爱编程和建模。这样你就不会迷茫和犹豫,不会因为数学建模问题的不确定性而害怕退缩,不会因为数学建模没有固定答案而怀疑害怕,不会因为做不出来就想要逃跑。
- 任前路漫漫,因热爱,我往之。任前路无果,因热爱,我往之。
- 学习数学建模是一个提升自我的过程,在看别人论文和研究问题时,你才能意识到这个世界上有多少踏踏实实的学者,你才能意识到自己的渺小,意识到人生不仅柴米酱醋茶,还有更严谨认真、理性科学的世界存在。
三、学习资料
3.1 唠叨
- 数学建模其实是有题型的,像我那年国赛第一题是物理题、第二题是算法题、第三题是数据分析题。基本上都这样第一题涉及某个实际专业领域,第二题都是用算法求一个较好的答案,第三题就是什么数据分析用什么人工智能机器学习或者什么数据分析方法。还是选一个方向比较好,这样每次都选那个轻松一些,我除了会一点算法什么都不会,因此每次就第二题。
- 感想这篇文章开启我的"程序人生"专栏,喜欢的话请给我点个关注吧!
- 如果你有什么疑问欢迎评论在评论区或者我哦,加油!
3.2 资料
- 泪目,这个资源还是我9.9买的,里面包含了各种建模软件、建模书籍、建模学习视频,基本你想学的它都会有。但是美中不足的是它里面的内容都是比较旧的,现在的数学建模竞赛总是与实际结合,大家还是要多看看历年比赛题目和官方审题,学习一些诸如人工智能、数据分析、算法之类的东西。
- 当初励志看完所有内容,结果连里面一本书也没有看完,里面资料太多可以作为数学建模基础大全,大家看看有兴趣的或者查漏补缺吧。
- 链接:https://pan.baidu.com/s/1ut-ZwxJsWdip2N5Q8FS0-g?pwd=1234
提取码:1234
相关文章:
数学建模经历-程序人生
引言 即将大四毕业(现在大三末),闲来无事(为了冲粽子)就写一篇记录数学建模经历的博客吧。其实经常看到一些大佬的博客里会有什么"程序人生"、"人生感想"之类的专栏,但是由于我只是一个小趴菜没什么阅历因此也就没有写过类似的博客…...
数字电子电路绪论
博主介绍:一个爱打游戏的计算机专业学生 博主主页:夏驰和徐策 所属专栏:程序猿之数字电路 1.科技革命促生互联网时代 科技革命对互联网时代的兴起产生了巨大的推动作用。以下是一些科技革命对互联网时代的促进因素: 1. 计算机技…...
电脑丢失dll文件一键修复需要什么软件?快速修复dll文件的方法
在使用电脑的过程中,我们经常会遇到程序无法正常运行的情况,提示“XXX.dll文件丢失”的错误。这时候,很多人会感到困惑,不知道该如何解决。本文将详细介绍dll文件丢失的各种原因、如何使用dll修复工具进行一键修复dll丢失问题以及…...
你知道微信的转账是可以退回的吗
微信作为当今最受欢迎的即时通讯软件之一,其转账功能得到了广泛的应用。在使用微信转账时,我们可能会遇到一些问题,例如误操作、支付失败或者需要退款等等。 首先需要注意的是,微信转账退回的操作只能在“一天内未确认”时进行。如…...
【链表Part01】| 203.移除链表元素、707.设计链表、206.反转链表
目录 ✿LeetCode203.移除链表元素❀ ✿LeetCode707.设计链表❀ ✿LeetCode206.反转链表❀ ✿LeetCode203.移除链表元素❀ 链接:203.移除链表元素 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val val 的节点ÿ…...
如何使用Postman生成curl?
生成在Lunix系统调接口的curl 直接看图操作 点击</>即可!...
CSS灯光效果,背景黑金效果
先看效果 再看代码: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>灯光效果</title><link href"https://fonts.googleapis.com/css2?familyCinzel:wght700&dis…...
这里推荐几个前端icon网站(动图网站)
1. Loading.ioLoading.io 是一个免费的加载动效(Loading animations)图标库。它提供了多种风格的加载动效图标,包括 SVG、CSS 和 Lottie 动画格式。这些加载图标可以增强用户体验,为网站和应用程序添加更佳的视觉效果。 网站地址:loading.io - Your SVG GIF PNG Ajax Loading…...
【图神经网络】用PyG实现图机器学习的可解释性
Graph Machine Learning Explainability with PyG 框架总览示例:解释器The Explanation ClassThe Explainer Class and Explanation SettingsExplanation评估基准数据集Explainability Visualisation实现自己的ExplainerAlgorithm对于异质图的扩展解释链路预测 总结…...
HarmonyOS ArkTS Ability内页面的跳转和数据传递
HarmonyOS ArkTS Ability的数据传递包括有Ability内页面的跳转和数据传递、Ability间的数据跳转和数据传递。本节主要讲解Ability内页面的跳转和数据传递。 打开DevEco Studio,选择一个Empty Ability工程模板,创建一个名为“ArkUIPagesRouter”的工程为…...
MySQL 8.0.29 instant DDL 数据腐化问题分析
前言Instant add or drop column的主线逻辑表定义的列顺序与row 存储列顺序阐述引入row版本的必要性数据腐化问题原因分析Bug重现与解析MySQL8.0.30修复方案 前言 DDL 相对于数据库的 DML 之类的其他操作,相对来说是比较耗时、相对重型的操作; 因此对业务的影比较严…...
Haproxy搭建负载均衡
Haproxy搭建负载均衡 一、常见的Web集群调度器二、Haproxy介绍1、Haproxy应用分析2、Haproxy的主要特性3、Haproxy负载均衡策略 三、LVS、Nginx、Haproxy之间的区别四、Haproxy搭建Web群集1、Haproxy服务器部署2、节点服务器部署3、测试Web群集 五、日志定义1、方法一2、方法二…...
SpringBoot:SpringBoot启动加载过程 ④
一、思想 我们看到技术上高效简单的使用,其实背后除了奇思妙想的开创性设计,另一点是别人帮你做了复杂繁琐的事情。 二、从官网Demo入手 官网就一行代码。这个就是它的启动代码。 1、SpringBootApplication注解 ①. 三个核心注解的整合。 SpringBootCon…...
抽象轻松JavaScript
真真假假,鬼鬼,谁知道什么是真什么是假 疑点二:什么是真,什么是假 核心:确定一个清晰的目的,可以达到目的就是真,达不到就是假 知道了核心开始举例 考大学,考上大学就是满足目的…...
深入理解CSS字符转义行为
深入理解CSS字符转义行为 深入理解CSS字符转义行为 前言为什么要转义?CSS 转义什么是合法css的表达式 左半部分右半部分 练习参考链接 前言 在日常的开发中,我们经常写css。比如常见的按钮: <button class"btn"></button>&am…...
【论文阅读】(2023.05.10-2023.06.03)论文阅读简单记录和汇总
(2023.05.10-2023.06.08)论文阅读简单记录和汇总 2023/05/10:今天状态,复阳大残,下午淋了点雨吹了点风,直接躺了四个小时还是头晕- -应该是阳了没跑了。 2023/06/03:前两周出差复阳,这两周调整作息把自己又…...
FPGA开发-ddr测试
文章目录 概要整体架构流程技术名词解释技术细节小结 概要 提示:这里可以添加技术概要 例如: 本文以米联科开发板为例,介绍ddr测试相关例程。 整体架构流程 提示:这里可以添加技术整体架构 技术名词解释 提示:这…...
BUUCTF 大帝的密码武器 1
题目描述:(下载题目,然后修改后缀名为.zip打开:) 公元前一百年,在罗马出生了一位对世界影响巨大的人物,他生前是罗马三巨头之一。他率先使用了一种简单的加密函,因此这种加密方法以…...
Linux 查看目录个数和大小
一、查看某目录下的文件个数 1. 查看目录下的文件个数 即当前目录/hdapp目录下有多少个文件,文件夹不计入数值 ls -l | grep "^-"| wc -l下面的命令文件夹也会计入数值 ls | wc -w2. 查看指定目录下的文件个数 如果省略指定目录就是默认当前目录 ls…...
Unity制作二次元卡通渲染角色材质——4 、内外描边和细节添加
Unity制作二次元材质角色 回到目录 大家好,我是阿赵。 这里继续讲二次元角色材质。这次打算讲一下描边和细节的添加。 一、外描边 外描边的做法也不止一种,比如后处理方法的偏导数ddx/ddy之类的,也能整个屏幕的求出边缘。但一般来说单模型渲…...
KubeSphere 容器平台高可用:环境搭建与可视化操作指南
Linux_k8s篇 欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神! 题目:KubeSphere 容器平台高可用:环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...
挑战杯推荐项目
“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 - 个性化梦境…...
XCTF-web-easyupload
试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...
云计算——弹性云计算器(ECS)
弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...
vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...
Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
