【数学建模】华为杯研究生数学建模备赛的一些建议
创始人
2024-05-14 14:54:01
0

文章目录

  • 前言
  • 一、建模题目介绍
    • 1.1、题目数量
    • 1.2、题目种类
    • 1.3、题目难度
    • 1.4、题目选择
  • 二、笔者的备赛过程
    • 2.1.简单的题目(本科比赛,学科大作业)
    • 2.2.真题
  • 三、编程的备赛建议
    • 3.1.matlab和python的基础语法
    • 3.2.数据预处理
    • 3.3.常用的机器学习算法
    • 3.4.常见的智能优化算法
    • 2.5.画图能力
    • 2.6.统计学分析软件SPSS(可选,强烈建议学,很简单)
    • 2.7.优化软件lingo(可选,前期学了,但笔者比赛没用)


前言

第一次开竞赛的经验贴,如果有写错的地方,还望各位同学理解。

这一篇文章写于比赛结果公布的第二天,也是对上一篇数学建模心得体会的补充
(上一篇心得体会写于比赛完成后的第二天:华为杯心得体会)

首先介绍一下笔者队伍的情况:
1)获奖情况:国二等奖
2)选题:E题 锡林郭勒草原放牧
3)三人基础:差不多都是零基础。笔者赛前会使用python(笔者课题是深度学习)
4)比赛中用到的软件:python3.6(pycharm),matlab2021a,spss。
5)熬夜情况:倒数第二晚三点睡 最后一晚五点睡 其余时候正常作息
在这里插入图片描述

在这里插入图片描述

一、建模题目介绍

1.1、题目数量

2022年共有ABCDEF六个题目,选择其中一个完成即可。
其中每道题目有数量不等的小问。
2个小问,3个小问,4个,5个,6个…都有可能
每个小问里拆开也可能还有小小问

1.2、题目种类

如果简单分类的话,我会把每年的建模题ABCDEF分为下面几类:
1)华为/中兴专项题
这种题目可能会涉及到通信工程,信号处理,芯片等工程问题,感觉这是华为和中兴公司自己做工程时遇到的一些真实问题,然后改编成了数学建模题。
2)“涉及到优化,纯数学性质较强的一些题目
比较典型的:2022年一个题目:切木板

3)大数据题目
这种题目会提供很多excel表格数据,可以大量使用统计学方法,机器学习乃至深度学习的方法来解决问题。
比较经典的:2021年题目D:抗胰腺癌候选药物的优化建模
在这里插入图片描述

但是,一个完整题目有很大可能有一定穿插
大数据的题目中,也可能存在某个小问是优化问题。
优化的题目中,也可能存在某个小问题属于统计学问题

1.3、题目难度

从个人感觉上来说(仅仅是个人感觉)
1)大数据题最简单,报的人也是最多的
2)优化题,纯数学题这些难度位于二者之间
3)华为/专项题最难

1.4、题目选择

笔者最开始知道自己水平不够,再加上本身研究生课题方向涉及到了深度学习,所以只准备了“大数据题”的一些解题方法。

二、笔者的备赛过程

2.1.简单的题目(本科比赛,学科大作业)

在比赛开始前一到两个月,学校带着大家一起练题。题目源自于本科的竞赛题,一些数学专业的作业题,目的就是为了让我们对数学建模有一定的基础储备。

2.2.真题

练习完简单的题目之后,就可以着手准备真题了。
如果时间来不及的话,建议就只把对应题目的方法准备一下就行了。比如笔者知道自己只会选择大数据的题目,所以我就只看大数据的准备方法,尤其是把机器学习的代码从头到尾运行了一遍,保存好。

三、编程的备赛建议

由于笔者本论参赛主要以“大数据题”来准备的,所以备赛这里也主要以大数据题为主。

3.1.matlab和python的基础语法

下面给出一部分建模过程中,用的较多的一些基础语法(个人觉得用的多的,因为篇幅原因只展示一部分)
1)比如说读取CSV,excel文件
具体也可以参考我这篇博客,就是当时准备数学建模的时候写的:python读取CSV文件
样例:

import pandas as pd
file_name='D:/数学建模2022/算法/SVM/iris.csv'
names=['separ-length','separ-width','petal_length','petal_width','class']
data=pd.read_csv(file_name,names=names)
print(data)
print(data.shape)

matlab中也有对应的方法,这里就不单独列出了。
2) 循环,遍历,zip,数组,列表,字典等一系列基础语法,需要熟练
比如for循环

for row in sheet[3:sheet.max_row]:

比如zip函数

list1=[1,2,3]
list2=[4,5,6]
list3=zip(list1,list2)
print(list3)

这些语法用熟练了,比赛时候写代码才不会卡顿,从而节省时间。
怎么去练习呢:
我练习方法是,做真题时会在网上看一些优秀的论文,看看它们的代码是什么样子的,然后将里面不会的语法进行重新编程,熟悉一下。多做几套,基础语法自然而然就牢固了。

3.2.数据预处理

数据预处理包括处理缺失值,离群值等等
这次比赛,数据预处理,我主要用的是matlab2021a中自带的数据预处理包

如何使用它,我这里就不赘述了,大家可以去网上找找教程,非常简单智能,画图也非常好看

3.3.常用的机器学习算法

在网上的视频,博客都有非常详细的教学,如果只考虑会调用,大家花两到三天就可以学会,一点都不难。
笔者的博客里也有一些现成的代码。

3.4.常见的智能优化算法

同理,在B站也有很多教程,会调用,改参数就行。

2.5.画图能力

个人觉得python画出的图像更鲜艳(相比于matlab),所以重点学了如何用python画图。
有一些比较基础的内容需要提前看一下,比如的python的大画布小画布区别这些,以及中文无法正常显示的这些问题

2.6.统计学分析软件SPSS(可选,强烈建议学,很简单)

回归分析,相关性检验,时间序列预测等等,这个软件是非常好用的,而且造图也非常快。

2.7.优化软件lingo(可选,前期学了,但笔者比赛没用)

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...