数学建模经历-程序人生

news2024/12/21 23:04:41

引言

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

一、比赛经历

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/638648.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一文详解IPv4与IPv6协议

前段时间的工作大多与通信协议相关,随着协议相关工作的不断深入,相关数据包的分析占据了不少工作时间。在数据报文分析中,发现大学期间IP协议内容已经重新还给了老师,相关知识完全没有了印象,这篇文章算是一篇复习文&a…

Day05 04-MySQL分库分表介绍

文章目录 第十七章 MySQL分库分表17.1 什么是分库分表17.2 为什么要分库分表17.3 垂直切分17.3.1 垂直分库17.3.2 垂直分表 17.4 水平切分17.4.1 水平分库17.4.2 水平分表17.4.3 常见的水平切分规则 第十七章 MySQL分库分表 17.1 什么是分库分表 MySQL数据库常见的优化方案中…

新的管理中心应用

大家好,才是真的好。 Notes/Domino 14 Drop1如约而至,让我们有了很多内容要写。首先是管理新特性,就像上篇和大家介绍的,感受最直接的就是新的管理中心应用AdminCentral。 以目前的Drop1环境来看,管理中心应用主要功…

plus.runtime.version总是13.8.4

引言 最近在uniapp中使用到了plus.runtime.version,但是在开发环境下一直无法获取到真正的版本号,他的值一直都是13.8.4,在全局进行搜索也没有发现哪里设置了13.8.4,后来查阅了相关资料才知道这并不是自己写错了。 场景复现&…

你知不知道ai如何绘画的

有没有想要自己能绘画一幅有艺术感的画呢?想自己也能将自己所想的事、物或景绘画出来呢?其实你不用担心你的绘画功底不行,因为现在有一门ai绘画的技术,它可以将你提供的信息用智能技术自动绘画,你也可以把它当做一门新…

数字IC前端学习笔记:仲裁轮询(一)

相关文章 数字IC前端学习笔记:LSFR(线性反馈移位寄存器) 数字IC前端学习笔记:跨时钟域信号同步 数字IC前端学习笔记:信号同步和边沿检测 数字IC前端学习笔记:锁存器Latch的综合 数字IC前端学习笔记&am…

【面试必问】Spring核心之面向切面编程(AOP)

tip:作为程序员一定学习编程之道,一定要对代码的编写有追求,不能实现就完事了。我们应该让自己写的代码更加优雅,即使这会费时费力。 💕💕 推荐:体系化学习Java(Java面试专题&#…

【数据结构】八大排序算法

目录 一、直接插入排序 二、希尔排序 三、选择排序 四、堆排序 五、冒泡排序 六、快速排序 1、递归版本 1.1 hoare 法 1.2 挖坑法 1.3 前后指针法 2、非递归版本 3、快速排序的优化 3.1 三数取中 3.2 小区间优化 七、归并排序 1、递归版本 2、非递归版本 八、计数排序 …

【Spring Security】的RememberMe功能流程与源码详解

文章目录 前言原理 基础版搭建初始化sql依赖引入配置类验证 源码分析 进阶版集成源码分析疑问1疑问2 鉴权 升级版集成初始化sql配置类验证 源码分析鉴权流程 扩展版 前言 之前我已经写过好几篇权限认证相关的文章了,有想复习的同学可以查看【身份权限认证合集】。今…

Ada Tutorial(3)SPARK2——Post condition + Loop Invariant 后置条件 + 循环不变量

文章目录 divmod循环不变量 v.s. 后置条件扩展思考 divmod -- divmod.adb package body DivMod with SPARK_Mode isprocedure DivMod(X : Positive; N : Positive; K : out Natural; Remainder : out Natural)isY : Natural : X;beginK : 0;while Y > N loopY : Y - N;K : …

MySQL 日期与时间函数

一、获取日期、时间 函数用法CURDATE(),CURRENT_DATE()返回当前日期,只包含年、月、日CURTIME() , CURRENT_TIME()返回当前时间,只包含时、分、秒NOW() , SYSDATE(),CURRENT_TIMESTAMP() , LOC…

为什么企业和品牌一定要创建百度百科词条呢?

在企业和品牌宣传推广方面,百度百科作为一个权威的知识平台,早已成为了宣传阶段非常重要的一环。本文伯乐网络传媒将从以下几个方面探讨为什么企业和品牌一定要创建百度百科词条。 一、提升企业和品牌知名度 在信息时代,信息的获取渠道变得更…

PySpark简单使用(零)

介绍 Spark是Apache基金会旗下的顶级开源项目,用于对海量数据进行大规模分布式计算。PySpark是Spark的Python实现,是Spark为Python开发者提供的编程入口,用于以Python代码完成Spark任务的开发PySpark不仅可以作为Python第三方库使用&#xf…

【深入浅出 Spring Security(九)】解决跨域问题和 Axios 所需配置

跨域 一、SpringMVC 跨域的解决方案CrossOrigin(注解的方式解决)addCorsMappings(实现WebMvcConfigurer接口,重写方法) 二、Spring Security 跨域的解决方案前后端跨域测试(前端相关配置) 啥是跨…

计算机提示“找不到vcruntime140.dll,无法继续执行代码可”以这样子修复

首先,对于那些不熟悉的人来说,vcruntime140.dll是一个关键文件,用于在Windows操作系统上运行使用C语言编写的大型应用程序。如果你正在运行或安装这样的应用程序,但找不到vcruntime140.dll文件,那么你的应用程序可能无…

word插入图片为何无法显示?

word是我们常用的软件,在使用过程中,我们难免会遇到这样或那样的问题,解决问题的思路我认为首先要找出原因,然后再想办法解决才是最好的方案。 如果在 Word 文档中插入的图片无法显示,可能是以下原因之一:…

安装ORB-SLAM2纯记录(caffe)

ubuntu20.04 显卡配置3050TI 显卡驱动: NVIDIA-SMI 525.116.04 Driver Version: 525.116.04 cuda:Cuda compilation tools, release 11.0, V11.0.221 eigen:3.4.0 opencv 3.4.9 opencv下载链接 pangolin :高翔SLAM十四讲中的 没有安装最新版本 安装pangolin时候出…

有趣的图(二)(56)

小朋友们好,大朋友们好! 我是猫妹,一名爱上Python编程的小学生。 和猫妹学Python,一起趣味学编程。 今日主题 咱们书接上回,上次学了图的基本概念,你都学会了吗? 咱们今天要学习内容如下&a…

通过Appium Desktop实现录制功能并导出自动化脚本

1、我们进入下面这个界面 图中红色标记1为 “top by coordinates” 按钮, 这是一种通过坐标定位元素的方式。 图中红色标记2为 “Start Recording” 按钮, 选中表示处理录制状态。 2、点击“top by coordinates” 按钮,再点击 “Start Recor…

vue3基础知识的简单应用

vue3基础知识的简单应用 vue3基础知识的简单应用运行结果 vue3基础知识的简单应用 父组件代码 <template><div class"home"><img alt"Vue logo" src"../assets/logo.png"><HelloWorld msg"Welcome to Your Vue.js A…