华为杯数学建模比赛经验分享
再过一周左右,第二十届华为杯数学建模比赛就要开赛了,所以今天分享一下个人数学建模比赛的经验。
今天给大家分享一期关于华为杯数学建模比赛的经验分享,我将从以下三个方面展开说明:
(1)如何准备数学建模比赛?
(2)如何选择合适的赛题进行建模?
(3)如何提高获奖的机会?
一、如何准备数学建模比赛?
短时间内完成一篇高质量的参赛作品,离不开团队每一个人的通力合作,所以团队的组建尤其重要。团队一般由建模手、编程手和论文手组成,在第一次参加建模比赛的小白可能会认为建模手只负责建模、编程手只负责编程、论文手只负责写论文,这其实是一个错误的认知。建模手需要将建立的数学模型的思想告知编程手方便其编程实现。其次,也需要将建模的思路告知论文手,与其沟通整个建模框架与思路方法,方便后续论文的写作。最后,编程手和论文手还需要沟通论文结果的呈现与分析。参赛人员需要掌握基本的工具,包括编程工具(matlab、python)、写作工具(word)和画图工具(origin)。所以对上述工具的掌握是必备的。此外,我们还必须明白何为数学建模,这是很重要的。对于建模手来说,需要了解什么是数学建模,以及掌握数学建模比赛的常见赛题的建模方法,这就需要建模手多阅读相关优秀论文,此外,还需要掌握相关的编程基础。对于编程手来说,必须要学习编程软件,智能算法、机器学习、深度学习相关的代码要做到灵活使用,此外也必须阅读相关的优秀论文,对相关赛题的建模思路有一定程度的了解。对于写作手来说,写作工具和画图工具是必须掌握的,需要大量阅读相关的优秀论文,学习优秀论文的写作框架,形成自己的一套写作思路,此外也要有一定的数学建模知识。建模手、编程手和写作手没有谁单独只负责一件事,只是大家的侧重点有所不同。建模手和编程手需要相互沟通做好赛题选择,以及在比赛中要相互交流,确定模型的建立,此外实验结果完成后,建模手需要与写作手沟通写作思路,完成论文写作。
二、如何选择合适的赛题
数学建模比赛一般分为四大类,优化、预测、评价和机理分析,一般来说预测最为简单,优化最难。如果遇到预测类题目,可以优先选择预测类题目。下面是对四类赛题的简单总结。
A、优化类
指在满足一定的约束条件下,建立相应的目标函数,使目标函数达到最优(最大或最小)。例如常见的旅行商问题。优化类问题需要根据题目分析得到三个重要因素:目标函数、决策变量和约束条件。此类题目一般较难,不建议小白上手。
解决该类赛题的一般步骤为:
1、确定优化目标
2、确定决策变量
3、构建目标函数
4、分析题目,构建约束条件
5、选择适合的方法求解目标函数
6、求解结果
推荐软件MATLAB、Python
求解方法:智能算法(粒子群优化算法等)、求解器求解(cplex、gurobi)
B、预测类
指根据现有数据或现象,寻找其内在的发展规律,然后对未来情况做出预测的过程。常见的负荷预测、人口预测、股票预测、时序分类预测等。此类题目易上手,但预测的指标精度高低直接决定是否得奖。
解决预测类赛题的一般步骤
1、分析确定预测目标
2、对历史数据进行数据清洗(补全缺失数据、提出异常数据、归一化处理等)
3、选择合适的预测方法进行预测
4、得出预测结果
5、使用评价指标分析预测结果
推荐预测方法BP神经网络、支持向量机、随机森林、LSTM等。
C、评价类
指按照一定的标准对事物的发展或现状进行划分的过程。数学建模中可体现在对生态环境、方案策略进行评价。解决此类赛题的关键是构建合适的评价指标体系和合适的评价方法。
解决评价类赛题的一般步骤
1、明确评价目的
2、明确评价对象
3、建立评价体系
4、确定与各项评价指标相对应的权重系数
5、选择或构造综合评价模型
6、计算系统的综合评价值,给出分析结果。
推荐方法数据包络分析、灰色关联分析、主成成分分析和模糊综合评判法。
D、机理分析
指根据对现实对象特性的认识,分析其因果关系,找出内部机理的规律。在求解问题时,分析对象的物理、化学等相关知识,然后对已知数据或者现象分析做出合理假设,在此基础上构建合适的方程或数学关系式对其内在规律进行数学表达。机理分析题目较难,需要涉及很多知识方能求解,例如空气动力学、流体力学等。
总的来说,遇到预测类题目优先选择预测类的,那么在平时的准备中可以多看一些相关的优秀论文,学习机器学习、深度学习方面的代码,以便在比赛能够灵活使用,例如支持向量机、随机森林、BP神经网络、LSTM、CNN等代码的学习,你准备的越多做起题目就越容易。
三、如何提高获奖的机会
比赛期间所有的东西都会呈现在论文上,所以论文的写作是至关重要。在尽可能完成赛题的同时,保证论文的可读性和呈现性是获奖的必要条件。这里要求写作手必须提前阅读相关类型的赛题的优秀论文,模仿优秀论文的写作框架。在赛题确定以后,可以提前和队友商量把论文的框架搭起来。其次对每一个问题的写作上,建议在开始画一个思路框图,通过框图展现我们对这个问题的思考,使用了哪些关键技术,获得了什么结果。其次,实验结果的呈现尽可能的多元化,采用表格、画图等多种方式对结果进行呈现,避免单一化。对于表格中比较重要的数据可以采取加粗的方式。其次,由于赛题的后面几个题目一般比较难,尽可能的把题目做完,那么当遇到较难的题目时,可以适当简化题目要求,做一些合理假设然后去问题进行求解。例如优化类问题,如果遇到大规模的优化问题,第一我们会面临建模困难,求解时间不够等问题,可以尝试将大问题拆成小问题,或者在尽可能合理的情况下简化约束条件等方式,做一个相对简单的模型呈现出来也是可以的。
这里给写作手分享一个例子,下面是一篇国一的优秀论文。我们可以看到在问题进行分析他们做了一个技术路线,让评审专家一开始就知道你对这个问题的思考,这是一个加分项。我建议比赛的时候可以在每个问题分析之后加上一个技术路线或者流程图。这里的技术路线或者流程图需要建模手和编程手提供。


其次,结果呈现的多元化,我们来看看优秀论文的结果呈现。




采用表格、画图等多种方式对结果进行呈现,会显得参赛作品足够高级,也会吸引住评审专家。
四、数学建模学习资料
1、研赛的优秀论文集链接

链接:https://pan.baidu.com/s/1aYPNQMA2IUra38kNVoYYdQ
提取码:dd4s
3、数学建模的相关书籍链接

链接:https://pan.baidu.com/s/1HOO4Vb4eCCppXY6R7HHQFQ
提取码:zsd4
3、智能算法的学习PPT链接

链接:https://pan.baidu.com/s/1eXkO2RaPQMEeyXfuEF52LA
提取码:fdj5
4、python机器学习书籍链接

链接:https://pan.baidu.com/s/1U6EoOTIZw7Gwh2lo7HQSyw
提取码:dsa6
5、数学建模代码合集



相关文章:
华为杯数学建模比赛经验分享
再过一周左右,第二十届华为杯数学建模比赛就要开赛了,所以今天分享一下个人数学建模比赛的经验。 今天给大家分享一期关于华为杯数学建模比赛的经验分享,我将从以下三个方面展开说明: (1)如何准备数学建模比赛&#x…...
c语言 - 实现每隔1秒向文件中写入当前系统时间
实现思路 主要是通过库函数和结构体获取当前系统时间(年月日和时分秒)保存到变量里,然后通过格式化输出函数将当前系统时间输出到文件中去。 但是需要注意的是题目要求每隔 1 s对系统时间进行输出,所以需要加入 sleep()函数进行调…...
使用cpolar端口映射的方法轻松实现在Linux环境下SVN服务器的搭建与公网访问
文章目录 前言1. Ubuntu安装SVN服务2. 修改配置文件2.1 修改svnserve.conf文件2.2 修改passwd文件2.3 修改authz文件 3. 启动svn服务4. 内网穿透4.1 安装cpolar内网穿透4.2 创建隧道映射本地端口 5. 测试公网访问6. 配置固定公网TCP端口地址6.1 保留一个固定的公网TCP端口地址6…...
前后台分离开发 YAPI平台 前端工程化之Vue-cli
目录 YAPI介绍前端工程化之Vue-cli前端工程化简介前端工程化入门——Vue-cli环境准备Vue项目简介创建Vue项目vue项目目录结构介绍vue项目运行方法 Vue项目开发流程 前后台混合开发这种开发模式有如下缺点: 沟通成本高:后台人员发现前端有问题࿰…...
【js/es6】合集
目录 随机生成字符串每十个字符换行 随机生成字符串 function generateRandomAlphaNum(len) {var rdmString "";for (; rdmString.length < len; rdmString Math.random().toString(36).substr(2));return rdmString.substr(0, len); }每十个字符换行 string.…...
Nginx modules build fail:field ‘pkt6’ has incomplete type
前言 最近升级Nginx 1.24.0,编译第三方module出错: /usr/src/nginx_modules/ngx_json_post_module/src/ngx_json_post_module.c In file included from src/event/ngx_event.h:526,from src/http/ngx_http_upstream.h:14,from src/http/ngx_http.h:34,…...
电脑突然提示mfc140u.dll丢失,缺失mfc140u.dll无法运行程序的解决方法
在当今信息化社会,电脑已经成为我们生活和工作中不可或缺的一部分。然而,随着技术的不断发展,电脑也会出现各种问题。其中,最常见的问题之一就是“mfc140u.dll丢失”。那么,当我们遇到这个问题时,应该如何解…...
国庆day1
消息队列 代码 发送 #include<myhead.h> //声明一个消息结构体 typedef struct {long msgtype; //消息类型char data[1024]; //消息正文 }Msg_s; #define SIZE sizeof(Msg_s)-sizeof(long) //消息正文的大小 int main(int argc, const char *argv[]) {key_t key; /…...
从零开始之了解电机及其控制(11)实现空间矢量调制
广泛地说,空间矢量调制只是将电压矢量以及磁场矢量在空间中调制到任意角度,通常同时最大限度地利用整个电压范围。 其他空间矢量调制模式确实存在,并且根据您最关心的内容,它们可能值得研究。 如何实际执行这种所谓的交替反向序列…...
如何将html转换成markdown
什么是Turndown “Turndown” 是一个用于将 HTML 转换为 Markdown 的 JavaScript 库。它通常用于将富文本内容从网页或其他 HTML 格式转换为纯文本 Markdown 格式,以便在不同平台上显示或存储。 如果在有node环境的情况下要使用 Turndown,首先需要将它…...
【VUE复习·3】@keyup.xxx 键盘事件触发函数(单按键 or 组合按键触发)
总览 1.keyup.xxx or keydown.xxx 单按键触发 2.组合按键触发 一、keyup.xxx or keydown.xxx 1.用法 在我们使用 keyup.enter 时,那么我们可以这样写: <div><input type"text" placeholder"按下回车键以确定..." keyu…...
IntelliJ IDEA学习总结(3)—— IntelliJ IDEA 常用快捷键(带动图演示)
一、构建/编译 Ctrl + F9:构建项目 该快捷键,等同于菜单【Build】—>【Build Project】 执行该命令后,IntelliJ IDEA 会编译项目中所有类,并将编译结果输出到out目录中。IntelliJ IDEA 支持增量构建,会在上次构建的基础上,仅编译修改的类。 Ctrl + Shift + F9:重新编…...
巨人互动|Facebook海外户Facebook的特点优势
Facebook作为全球最大的社交媒体平台之一,同时也是最受欢迎的社交网站之一,Facebook具有许多独特的特点和优势。本文小编将说一些关于Facebook的特点及优势。 1、全球化 Facebook拥有数十亿的全球用户,覆盖了几乎所有国家和地区。这使得人们…...
(vue3)create-vue 组合式API
优势: 更易维护:组合式api,更好的TS支持 之前是选项式api,现在是组合式,把同功能的api集合式管理 复用功能封装成一整个函数 更快的速度 更小的体积 更优的数据响应式:Proxy create-vue 新的脚手架工…...
【如何看待Unity收费】对标中小公司的待就业者的该如何做
👨💻个人主页:元宇宙-秩沅 👨💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨💻 本文由 秩沅 原创 👨💻 收录于专栏:Uni…...
c++迷宫小游戏
一、总结 一句话总结: 显示:根据map数组输出图像 走动:修改map数组的值,每走一步重新刷新一下图像就好 1、如果走函数用z(),出现输入s会向下走多步的情况,原因是什么? 向下走两层循环ij增加&a…...
需求堆积,如何排序产品优先极
面对堆积的产品需求,到底该如何排序优先极呢? 需求排期的目标 在谈具体的排期方法之前,有必要先探讨一下——合理的需求排期应该达到什么的目标呢?如果站在与项目相关的利益人员的角度来看,至少应该使以下四方面的收…...
计算机视觉 回头重新理解图像中的矩
一、人类的欲望 图像中的矩是一个十分古老的话题,这个东西的出现始于人类的欲望,想要找到一种自动且强大的图像分析方法。 比如我们要在图像中识别某一个物体,而这个物体在不同的成像条件下,表现出的高矮胖瘦方向位置颜色都不可能完全一致,这就为识别带来了巨大的困难,但…...
MapStruct应用实战及BeanUtils性能比较
目录 1、MapStruct介绍2、应用设置2.1 Maven依赖 3、功能实战3.1 常用注解3.2 基本映射3.2.1 定义映射器的Java接口3.2.2 测试验证 3.3 参数引用映射3.3.1 定义映射器的Java接口3.3.2 测试验证 3.4 多对象参数映射3.4.1 定义映射器的Java接口3.4.2 测试验证3.4.3 注意点 3.5 嵌…...
ISP技术概述
原本或许是为了对冲手机系统和APP设计无力感而诞生的拍照功能,现今却成为了众手机厂家除背部设计外为数不多可“卷”的地方,自拍、全景、夜景、小视频等旺盛的需求让这一技术的江湖地位迅速变化。对圈内人士而言,这一波变化带来的后摄、双摄、多摄、暗光、防抖、广角、长焦、…...
不止于安装:将Helowin Oracle 11g Docker镜像改造为可持续使用的开发数据库
从临时容器到生产级服务:Helowin Oracle 11g Docker镜像深度定制指南 当开发团队决定采用Docker化的Oracle数据库作为开发测试环境时,往往会遇到一个尴尬的现实:大多数现成镜像要么过于臃肿,要么配置不符合项目规范。Helowin的Ora…...
Qwen3-0.6B-FP8极速对话工具:STM32F103C8T6最小系统板集成
Qwen3-0.6B-FP8极速对话工具:STM32F103C8T6最小系统板集成 让AI对话能力跑在指甲盖大小的开发板上 1. 场景与痛点 你可能很难想象,一个能进行智能对话的AI模型,居然可以运行在一块只有拇指大小的STM32开发板上。传统的AI模型部署往往需要强大…...
2023年VSCode插件开发全指南:从零发布你的第一个扩展(TypeScript版)
2023年TypeScript生态下的VSCode插件开发实战 在当今开发者工具生态中,Visual Studio Code以其轻量化和高度可扩展性占据了绝对领先地位。根据2023年Stack Overflow开发者调查报告,VSCode以74.48%的使用率成为最受欢迎的代码编辑器。而插件系统正是其生态…...
【大模型调优】彻底洗掉论文“机器味”:DeepSeek/Kimi/豆包专属降AI指令与保姆级工作流
很多时候大学生写论文逻辑太严谨、话术太规范,反而会导致AI率过高,且一旦AI率过高,轻则退回重改,重则取消答辩资格,这后果谁都担不起。 为了帮大家有效降低aigc率,这周我专门针对目前市面上最主流的三款大…...
谷歌DeepMind与卡内基梅隆大学揭秘声音背后的脸
这项由谷歌DeepMind与卡内基梅隆大学联合开展的研究,发表于2024年的计算机视觉与模式识别顶级会议CVPR(IEEE/CVF Conference on Computer Vision and Pattern Recognition),论文编号为arXiv:2404.01975,有兴趣深入了解…...
嵌入式系统开发中的关键技术术语解析
嵌入式系统开发中的56个关键技术术语解析1. 数据转换基础概念1.1 采样与保持特性采集时间(Tacq)是从释放保持状态到采样电容电压稳定至新输入值的1 LSB范围之内所需的时间。在采样-保持电路中,这个参数直接影响系统的动态性能。孔径延迟(tAD)描述从时钟信号的采样沿…...
MybatisPlus分页插件PaginationInnerInterceptor原理解析与实战配置指南
MybatisPlus分页插件PaginationInnerInterceptor深度剖析与高效实践 当你在Spring Boot项目中处理海量数据时,分页查询就像给数据装上精准导航——而MybatisPlus的PaginationInnerInterceptor正是这个导航系统的核心引擎。不同于简单配置就能用的工具类,…...
全向轮底盘运动控制:嵌入式PID与逆运动学实现
1. 全向轮底盘控制库(omni_wheel)技术解析与工程实践1.1 项目背景与工程定位omni_wheel是为B团队自主移动机器人开发的底层运动控制模块,最初版本发布于2018年7月10日。从其原始README描述“PIDかけて一方向に進むだけのプログラムでござんす…...
大模型进阶:掌握Function Calling和MCP,解锁AI生产力(收藏版)
本文深入探讨了Function Calling技术如何帮助大模型获取实时信息、执行任务,以及MCP协议在大模型与外部交互中的关键作用。文章阐述了从提示工程到RAG,再到Function Calling和MCP的技术演进路径,强调了这些技术如何使大模型从信息工具转变为生…...
深度解析 ConcurrentHashMap 1.8:put 与 get 核心流程全解
在 Java 并发编程中,ConcurrentHashMap 是线程安全的高频使用集合,相比线程不安全的 HashMap、效率低下的 HashTable(全锁),JDK 1.8 版本的 ConcurrentHashMap 做了底层结构重构和锁机制优化,成为高并发场景…...
