QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2063|回复: 0
打印 上一主题 下一主题

[其他经验] 如何备战数学建模竞赛之 MATLAB 编程

[复制链接]
字体大小: 正常 放大
浅夏110 实名认证       

542

主题

15

听众

1万

积分

  • TA的每日心情
    开心
    2020-11-14 17:15
  • 签到天数: 74 天

    [LV.6]常住居民II

    邮箱绑定达人

    群组2019美赛冲刺课程

    群组站长地区赛培训

    群组2019考研数学 桃子老师

    群组2018教师培训(呼伦贝

    群组2019考研数学 站长系列

    跳转到指定楼层
    1#
    发表于 2020-5-12 11:20 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta |邮箱已经成功绑定
    2020年第十三届“认证杯”数学中国数学建模网络挑战赛,正在火热进行中,大家不要错过哦
    2 P! D" }% }4 Q: [! M详情请点击链接进行查看:http://www.tzmcm.cn/. T) V& o0 r' W% ?

    4 q; o5 b, `& {: {3 x) d
    MATLAB 是公认的最优秀的数学模型求解工具,在数学建模竞赛中超过 95% 的参赛队使用 MATLAB 作为求解工具,在国家奖队伍中,MATLAB 的使用率几乎 100%。虽然比较知名的数模软件不只 MATLAB,
    为什么 MATLAB 在数学建模中的使用率如此之高?
    作为资深的数模爱好者(从大一到研三每年都参加数模比赛,大学生数学建模大赛 2 次国一,研究生赛 1 次国一),我认为:
    1. MATLAB 的数学函数全,包含人类社会的绝大多数数学知识。
    2. MATLAB 足够灵活,可以按照问题的需要,自主开发程序,解决问题。
    尤其最近几年,国赛中的题目都很开放,灵活度很大,这种情况,MATLAB 的编程灵活的优势越发明显。
    ; d) {- h- f9 ~2 }  b9 [& `
    在数学建模中最重要的就是模型的建立和模型的求解,当然两者相辅相成。
    有过比赛经验的数模客们都有这样的一种体会,如果 MATLAB 编程弱的话,在比赛中,根本不敢放开建模,生怕建立的模型求解不出来。要知道,模型如果求解不出来,在比赛中是致命的,所以首先要避免这种问题。所以如果某个参赛队 MATLAB 弱的话,最直接的问题就是还敢建模吗?不敢放开建模,畏手畏脚,思路不敢展开,可想而知,想取得好成绩就很难了。
    其实 MATLAB 编程的弱,并不是真的弱,因为 MATLAB 本身很简单,不存在壁垒,最大的问题是在心里上弱,没有树立正确的 MATLAB 应用理念,没有经历编程成功的经历,当然在比赛中就心里害怕了。这些数模客之所以没有树立对 MATLAB 使用的信心,就是因为在学习 MATLAB 的时候,就一直机械地、被动地学习知识,而没有掌握技巧去搜索知识、运用知识。要知道,MATLAB 各种知识对个人来说,永远是学不完的。如果按照这个方式,也就永远不会用 MATLAB 了。但如果掌握正确的 MATLAB 使用方法和实用的小技巧,在半小时内就可以很快地变成 MATLAB 高手了。高手的区别就只在一点,就是一直有自己的编程思路,需要什么知识就是学习什么知识,然后继续按照自己的思路编程,虽然在过程中,要不断学习,但最高效,也最容易建立强大的对 MATLAB 的使用信心。
    当然数学建模还有自己的特点, 为了帮助大家更有效地备战国赛, 接下来我们将系统地梳理如何备战数学建模竞赛中的 MATLAB 编程。
    1. 认识 MATLAB 在数学建模的地位
    下图是整个数模过程所需要的知识矩阵。第二列是模型的求解,包括编程、算法、函数、技巧。如果说整个技能矩阵的是条蛇,那么求解正是在7寸的位置,正是连接建模与其他板块的枢纽。如果此环节弱的话,导致不敢放开思路建模,那么模型基础就不好,后面的论文什么的就都是浮云了。因此模型的求解必须重视,而 MATLAB 是模型的最有力的求解的工具,所以 MATLAB 的编程水平对数模客来说就尤其重要了。
    640.webp.jpg
    如果不考虑时间,只要掌握了 MATLAB 编程技巧和理念,建模中遇到的问题总可以用 MATLAB 解决的。
    但毕竟比赛是有时间限制的,所以还要相应地提高速度、效率。所以为了备战数模比赛,在模型的求解环节,除了要掌握基本的 MATLAB 编程技巧,还要积累一些常用的算法、函数,这样比赛的时候不用花太多的时间去消化算法,也不用花太多时间去摸索函数用法,有效地提高解题速度。数模比赛中常用算法、函数的准备我会在之后详细介绍,基础核心却是 MATLAB 的编程理念。
    2. 正确且高效的 MATLAB 编程理念
    正确且高效的 MATLAB 编程理念就是以问题为中心的主动编程。我们传统学习编程的方法是学习变量类型、语法结构、算法以及编程的其他知识,因为学习时候是没有目标的,也不知道学的知识什么时候能用到,收效甚微。
    而以问题为中心的主动编程,则是先找到问题的解决步骤,然后在 MATLAB 中一步一步地去实现。在每步实现的过程中,遇到问题查找知识(互联网时代查询知识还是很容易的),定位方法,再根据方法,查询 MATLAB 中的对应函数,学习函数用法,回到程序,解决问题。
    在这个过程中,知识的获取都是为了解决问题的,也就是说每次学习的目标都是非常明确的,学完之后的应用就会强化对知识的理解和掌握,这样即学即用的学习方式是效率最高,也是最有效的方式。最重要的是,这种主动的编程方式会让学习者体验到学习的成就感的乐趣,有成就感,自然就强化对编程的自信了。这种内心的自信和强大在建模中会发挥意想不到的力量,所为信念的力量。
    3. 数学建模竞赛中的 MATLAB 水平要求7 h& \% m/ ^; r% A0 ]7 n9 v( h( P
    要想在全国大学生数学建模竞赛中拿到国奖, MATLAB 技能是必备的。 具体的技能水平应达到:
    1)了解 MATLAB 的基本用法,包括几个常用的命令,如何获取帮助,脚本结构,程序的分节与注释,矩阵的基本操作,快捷绘图方式;
    2)熟悉 MATLAB 的程序结构,编程模式,能自由地创建和引用函数(包括匿名函数);
    3)熟悉常见模型的求解算法和套路,包括连续模型,规划模型,数据建模类的模型;
    4)能够用 MALTAB 程序将机理建模的过程模拟出来,就是能够建立和求解没有套路的数学模型。
    要想达到如上要求, 不能按照传统的学习方式一步一步地学习, 而要结合上述提到的学习理念制定科学的训练计划。
    4. 有计划地快速提高 MATLAB 实战水平
    如何制定科学的训练计划,快速有效地提高 MATLAB 实战水平呢?首先了解数模建模中常见的模型和求解算法,如下图所示:
    640.jpg
    纵观数学建模中的种种问题,可以将这些问题划分为以上 5 类,并匹配常用的方法。只要有针对性地训练这些常用的方法,那么在实际比赛中,遇到类似的问题可就得心应手多了,甚至一些程序框架可以直接套用。因此关键还要注意总结积累常用方法的 MATLAB 程序段
    数学建模是非常开放的问题,对于 5 类问题,只要找 1 个题目,然后将这类问题的常用方法都用一遍,一是拓展建模思路,二是将所有方法都有 MALTAB 实现一遍,自然所得的程序将是印象非常深刻的,自然也就变成自己日后的程序库了。
    详细分析这 5 类题型:
    - 第二类和第四类,方法相对单一,所花的时间不用太多;
    - 第一、三类,是建模竞赛中的主力题型,方法很多,应该多注意积累;
    - 第五类是最近兴起的新题型,没有固定套路,也不要期望直接套用经典模型了。需要认真分析问题,客观地解决问题。这类题型,往往机理建模方法比较有效,及时从事物内部发展的规律入手,模拟事物的发展过程并建立模型,并用程序去实现。我认为机理建模和求解才是数学建模和编程的最高求解,已经达到心中无模型而胜有模型的境界了。所用的 MATLAB 编程也是最基本的程序编写技巧,关键是思想。
    结合这 5 类题型和数学建模竞赛中 MATLAB 应该达到的水准,建议参考如下步骤开始准备,在之后的连载文章中也将详解相应的内容, 总结部分方法供大家借鉴:
    第二讲: 了解MATLAB的基本用法, 包括几个常用的命令, 如何获取帮助, 脚本结构, 程序的分节与注释, 矩阵的基本操作, 快捷绘图方式;熟悉MATLAB的程序结构,编程模式, 能自由地创建和引用函数(包括匿名函数)。
    第三讲至第八讲:熟悉常见模型的求解算法和套路, 包括连续模型, 规划模型, 数据建模类的模型。
    第九讲:能够用MALTAB程序将机理建模的过程模拟出来, 就是能够建立和求解没有套路的数学模型。
    第十讲至第十二讲: 真题训练, 强化实战经验。
    . y9 X9 L% y; e: }1 U! [/ E
    转载于:MATLAB官方微信公众号. C. Y: Y+ g6 d6 T

    6 F1 W. D) D& }关于网挑的含金量:
      N9 d; X' g6 b% N& }! c网挑比赛属于全国大学生建模比赛预备赛,题目类型和国赛一样,参赛者获奖后(获奖率高达70%)会对以后就业有所帮助(金融、风控等),考研、保研也会有帮助,包括出国留学!
    6 }( \/ j2 r% N# q3 ?8 L( Q报名截止到5月14号零点
    1 I9 P- g# H0 J6 j报名网址:http://www.madio.net/forum.php?m ... 005&fromuid=1534206, }0 M3 e' m) H7 E: B

    * N& s) h0 K, H2 T QQ图片20200511163103.jpg / |8 ~0 Y7 o0 k2 c

    ' R' }) f( g( `- d6 ~9 Q8 a/ f6 P详情请扫码加入我们的互动交流QQ群+ c$ s* }% R/ V$ r+ c  f$ l9 ~
    群号:1084312088.png . J" q. B7 ?+ p8 d. ^$ m

    : C$ y4 t( [3 r7 n' H6 M
    ; X% P8 }7 i, y% ]
    zan
    转播转播0 分享淘帖0 分享分享1 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-5-15 09:08 , Processed in 0.425047 second(s), 53 queries .

    回顶部