我的数学建模之路

来源:互联网 发布:北京行知打工子弟学校 编辑:程序博客网 时间:2024/06/08 15:52

         今天在清理电脑里的东西,突然发现去年比赛后的数学建模总结,文采那个差呀!!

       大学参加了两次高教全国数学建模比赛,两次都是广东二等奖,唉!!!          

       不过两次参加比赛的经历都不一样,收获也不一样,结识了很多爱好数学的同学,爱好数学建模的同学,比赛的72小时挣扎奋斗慢慢地成为了历史,但那些时光一定是大学里非常值得回忆的。

        感谢数学建模,感谢各位培训老师,特别感谢小贾,老贾,感谢喜哥,感举哥,感谢赵老师。。。。。。

        最后,感谢我们一起努力过,奋斗过的龙哥、杰哥、超哥、小成。。。。。。                                                                                               

                                                                                                                                    认识数学建模  

          数学建模一词第一次出现在我脑海里是在暨南大学珠海校区见到的,那时我和彬哥去暨大玩,路过一个公告牌,上面写着AAA   BBB  CCC国家一等奖,DDD EEE FFF国家二等奖,。。。。。哇,那么强!!重点学校就是不一样!!

  在学校,偶然和志朋哥说通选课的事,他说他上数学建模通选课,超无聊,叫我和他一起上课,可以吹吹水!!那时我上单片机通选课,听不懂,难呀!于是逃了两三次课去听,还记得第一次听课时是我们小贾老师,讲的内容是差分方程,噢噢噢噢,那计算过程复杂的很,下面三四十人只有几个人听吧,看课外书的,做作业的,玩手机的。。。。。。第二次是上课也是小贾老师,讲那课还是听不懂,课后有同学上去和老师交流,我也趁热闹去听听,原来小贾老师在那说一些学习的技巧,最后说了下比赛的事情,还说到去年我们学校拿了个国家二等奖,膜拜呀。于是我就开始关注数学建模了,也开始喜欢数学建模了!!

  因为大二第一学期那课程多得很,一周三十多节,后来也不怎去关注了!!一转眼,大二第二学期到了,那熟悉的数学建模通选课有出现在眼前,于是我选了门不点名的通选课,这样可以去听数学建模的课了。第一次课是老贾--总教练,讲的内容是数学建模的应用和比赛的意义,但来上课的人少丫--18个人(好像是)。第二节课是周老师讲课,讲的是逻辑问题,这次人数多点了,老师去动员来报名的,都是和老师很熟悉的!!这是因为人数不够不给开班的,拉人来凑人数,(*^__^*)嘻嘻……第三次课我去上通选课了,那老师点我名字了,要露下脸才行!第四周我有去上数学建模课时,教室HF207那人数又打回原形了——只有10+人。后来有个同学接到老师的电话,说这门课取消了,要是大家还想关注数学建模,就留意学校的通知,迟点会有个校内选拔赛。我惊讶了,啥都没学怎参加校内赛呀,没有那么强的人吧???

       318号,在学校的主页看到校内赛数学建模的比赛通知,我犹豫了,啥到没学,但有很喜欢数学建模,很想去体验下奋斗72小时的比赛是怎样的!!在同学的鼓励下,我参加了报名!491016号参加了简单的培训,还是对数学建模懵懵懂懂,老贾说了句话建模道路是辛苦,一定要坚持,咦,去年拿国家二等奖的师兄是我见过的,简单的交流后,学习不少!422号,校内赛的题目出来了,妈呀,没头绪,到网上找资料,有一道A题居然是别人做过的,不能山寨呀,果断做那道网上没资料的!时间一分一秒过了,两天时间过了,还没弄好,失败呀,放弃了,果断去图书馆学习(几天没学习了,因为前段时间耽误了一点功课),突然有个想法为啥不换一道题做呢!!我又匆匆回宿舍做B题了,没办法,能力有限,只能山寨下别人的,但程序我用C语言写的,那时matlab,lingo都不知道是什么!还是很难呀,然后尽自己最大努力去做交了份论文,最后拿了个优秀奖,从此走上数学建模道路!

                                                                                                                                     数学建模培训

           5月多正式培训开始了,都是利用周末的时间上课的,那时我怀着激动的心情上课,但那陌生的知识很快把我的激情消退,面对自己喜欢的东西,怎可以轻易放弃呢!!!老贾在第一次培训课的时候和我们说建模道路是辛苦的,建模道路要坚持才完美”“这些数模知识的确很难一时明白不懂没关系,课后在慢慢研究!!上课能听懂30%已经很不错了。。。。。。听完这些鼓励性的话后,自己觉得得找点方法学习数模!后来回来上网找些相关的资料,发现玩数学建模的人真的很多,后来加了相约2011数学建模比赛”“数学建模论坛。。。。这些群,那里讨论数学的氛围很好,大家都是数学建模爱好者!!我也不甘落后,加入了数学建模讨论队列。学习数学建模的道路可以说是从QQ群开始的,那里可以讨论不懂的问题,那里可以讨论软件的使用,那里可以分享书学建模的资料。。。。。因为玩数学建模,认识了一大帮爱数学的好友,互相学习,互相讨论,互相进步!小贾老师的差分方程微分方程模型,周老师的线性规划随机模型讲义,卢老师的量纲分析,朱慧老师的层次分析法,袁平老师的统计回归模型,张平老师的“matlab基础(当时电脑坏了,只是听了些理论知识,后来都是自学的)。。。。。。学校的培训一共上了15次课,但学到的东西还是很少,只是知道了数学建模比赛的整个流程,算是初步入门了。

       暑假没有培训,给了道题目我们做,并给了一些相关的资料让我们深入学习下!!728号我回来了学校,和队友们一起学习数学建模,磨合磨合队友之间的合作,但因为大家的时间没统一,很多时候都没在一起学习讨论。分好各自负责的模块后,都是找自己资料学习,偶尔晚上一起讨论下。我选择了建模这一块,这就得要求我了解各种数学建模的算法,对问题的分析要准确。没人指导我们,我们只能网上和数学建模爱好这讨论,和网上的数学建模爱好者一起讨论思路,看别人的优秀论文,模仿别人建立的模型,自己再改进别人的模型,慢慢自己对数学建模十大算法有了一定了解,对问题分析时掌握了分析方向。但当我们开始做我们的作业题目时(09B题眼科疾病床位安排),还是无从下手,那题目的分析点太多了,抓不住重点,我们不得不参考了下别人的模型。把那暑假作业题昨晚大概花了一个星期,这必须要提高我们的效率呢!!我们做了简单的总结,对个人负责的模块提出了相关的建议。

       828800931号早上800为我们校内模拟赛因为,第一次考验我们的时候到了!!当时做的题目是A:水资源风险预测评价(深圳夏令营的赛题)B:个人税收起点方案。我们当时选择了A题。因为两题的都插不多的难度,而我们拿到A题时就想起我们暑假作业时与到的方法,比如:模糊综合评价,灰色预测,等级评价。。。。。感觉比较容易上手。模拟赛是指导老师要上课,指点我们的时间很少,都是我们自己摸索。可是,往往第一感觉不是最好的,我们初次想到的方法在实践的应用上遇到了难题,那个模糊综合评价是比较难用的,条件比较模糊!!参考模糊综合评价法建立的模型,我与队友一起算那超无聊的数字,越算越感觉不对劲,有得从新确定模型了,不断的实践,不断地想方法改进模型,在三天的努力下,在第四天的下午交了论文。那次模拟赛没有体验通宵干活做题,只是早上八点到实验室,晚上十点半离开实验,还不够刺激,很期待奋斗72小时的正式比赛。

                                                                                                                                          数学建模比赛

          20110909800-09月12日800为正式比赛的时间,还清楚记得比赛开始那天我7点起床,早早去实验室,把所有东西都准备好!8:50分,题目出来了,A题:重金属污染评价,B题:交巡警服务平台的设置与调度。我们简单地分析了下A题感觉与模拟赛的很相似,没什么创新点,做好比较难,于是我们选择了B题。B题入手很难,比较难抓住其出题目的,因为这样我们早上十点选好了题目就开始找资料一直到下午四点才有点头绪(进度有点慢了),99*93矩阵呀,分析这些数据超痛苦,得找些突破口才行。和指导老师,总教练讨论一番后,终于明确了做题思路了,就这样一步一步走下去了。这过程遇到了很多问题,比如:那困惑人的路标数字,无用的人口数量和面积,整体分析还是局部分析。。。。。这过程还发生了一点意外,有个队友表现消极的态度,找资料就会走上和网友聊天的道路,分析数据就会很随便(有时还得我们从新分析、计算),检查前面的漏洞是会轻易说没问题了。。。。。队友之间的磨合还不够好。经过60个小时,我们基本把前面的四小问做好了,这时候大伙累了,不得不趴下休息一会了!我还在整理论文报告,因为队友消极对待,我不得不亲自下手。在12日凌晨3点多我们才做完全部题目,这是还是我在整理报告,那个辛苦呀,队友不合作就是这样的痛苦!!凌晨5点多指导老师来了实验室,为我们的论文最后修改,知道老师也很辛苦呀,最后一个晚上她只休息4个钟!

          比赛那三天非常有挑战性,我们一起在实验室吃饭,忘记午休,积极的讨论,推导无限制的模型,计算没标准答案的答案,提出新方法,推倒旧的方法,一边有一边地验证计算的准确性。。。。。。那三天我们真正体会到比赛中团队的合作是多么的重要,主动提出意见的意义,积极讨论的重要性,只要一个队友其负责的内容做得不到位都会影响整个团的的工作进度。。。。。那三天我们真正体会到网络的作用,他又是那么的无能,数学建模比赛必须在网络资源的基础上,在付出个人的脑力,创新思维,推导模型的能力,对数据分析的敏感度!

                                                                                                        数学建模比赛总结     

          通过这次比赛,我对数模有了一个更为深刻的认识:学理论是很重要,怎么去合理利用它也同样重要。数学建模不是什么高不可攀的学问,事实上就是:应用数学去解决各类实际问题,而建立数学模型是十分关键的一步,也是十分困难的一步。模型的建立,即把错综复杂的实际问题简化、抽象化为具有合理的数学结构的过程。通过调查、收集数据资料,观察和研究实际对象的固有特征和内在规律,抓住问题的主要矛盾,建立起反映实际问题的数量关系,然后利用数学的理论和方法去分折和解决问题。当然,这需要深厚扎实的数学基础,敏锐的洞察力和想象力等 。还有我真正感觉到了什么是坚持与毅力,什么是团结与合作。

1.团队精神:
    
团队精神是数学建模是否取得好成绩的最重要的因素,一队三个人要相互支持,相互鼓励。切勿自己只管自己的一部分(数学好的只管建模,计算机好的只管编程,写作好的只管论文写作),很多时候,一个人的思考是不全面的,只有大家一起讨论才有可能把问题搞清楚,因此无论做任何板块,三个人要一起齐心才行,只靠一个人的力量,要在三天之内写出一篇高水平的文章几乎是不可能的。
     2.
有影响力的leader
    
在比赛中,leader是很重要的,他的作用就相当与计算机中的CPU,是全队的核心,如果一个队的leader不得力,往往影响一个队的正常发挥,就拿选题来说,有人想做A题,有人想做B题,如果争论一天都未确定方案的话,可能就没有足够时间完成一篇论文了,又比如,当队中有人信心动摇时(特别是第三天,人可能已经心力交瘁了),leader应发挥其作用,让整个队伍重整信心,否则可能导致队伍的前功尽弃。
     3.
合理的时间安排:
    
做任何事情,合理的时间安排非常重要,建模也是一样,事先要做好一个规划,建模一共分十个板块(摘要,问题提出,模型假设,问题分析,模型假设,模型建立,模型求解,结果分析,模型的评价与推广,参考文献,附录)。你每天要做完哪几个板块事先要确定好,这样做才会使自己游刃有余,保证在规定时间内完成论文,以避免由于时间上的不妥,以致于最后无法完成论文。
    4.
正确的论文格式:
   
论文属于科学性的文章,它有严格的书写格式规范,因此一篇好的论文一定要有正确的格式,就拿摘要来说吧,它要包括6要素(问题,方法,模型,算法,结论,特色),它是一篇论文的概括,摘要的好坏将决定你的论文是否吸引评委的目光,有些论文的摘要里出现了大量的图表和程序,这都是不符合论文格式的,这种论文也不会取得好成绩,因此我们写论文时要端正态度,注意书写格式。
     5.
论文的写作:
    
我个人认为论文的写作是至关重要的,其实大家最后的模型和结果都差不多,为什么有些队可以送全国,有些队则可以拿省奖,而有些队却什么都拿不到,这关键在于论文的写作上面。一篇好的论文首先读上去便使人感到逻辑清晰,有条例性,能打动评委;其次,论文在语言上的表述也很重要,要注意用词的准确性;另外,一篇好的论文应有闪光点,有自己的特色,有自己的想法和思考在里面,总之,论文写作的好坏将直接影响到成绩的优劣。

.

                                                                                                                                     数学建模常用算法算法

        算法好坏将直接影响运算速度的快慢,建议大家多用数学软件(Mathematice,Matlab,Maple, Mathcad,Lindo,Lingo,SAS等),这里列举常用的十种数学建模常用算法,
   
1)、蒙特卡罗算法(该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟可以来检验自己模型的正确性,是比赛时必
用的方法)
   
2)、数据拟合、参数估计、插值等数据处理算法(比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用Matlab作为工具)
   
3)、线性规划、整数规划、多元规划、二次规划等规划类问题(建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用LindoLingo软件实现)
   
4)、图论算法(这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备)
   
5)、动态规划、回溯搜索、分治算法、分支定界等计算机算法(这些算法是算法设计中比较常用的方法,很多场合可以用到竞赛中)
   
6)、最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法(这些问题是用来解决一些较困难的最优化问题的算法,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用)
   
7)、网格算法和穷举法(网格算法和穷举法都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种
暴力方案,最好使用一些高级语言作为编程工具)
  
8)、一些连续离散化方法(很多问题都是实际来的,数据可以是连续的,而计算机只认的是离散的数据,因此将其离散化后进行差分代替微分、求和代替
积分等思想是非常重要的)
  
9)、数值分析算法(如果在比赛中采用高级语言进行编程的话,那一些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编
写库函数进行调用)
  
10)、图象处理算法(赛题中有一类问题与图形有关,即使与图形无关,论文中也应该要不乏图片的,这些图形如何展示以及如何处理就是需要解决的问题,通常使用Matlab进行处理)以上便是我我这次参加这次数学建模竞赛的一点心得体会,只当贻笑大方,不过就数学建模本身而言,它是魅力无穷的,它能够锻炼和考查一个人的综合素质,也希望广大同学能够积极参与到这项活动当中来。

         希望大家在比赛中得到深厚的友谊,综合能力得到更高的提升,同时也希望喜欢数学建模更加喜欢数学建模,祝愿参加比赛同学人人能获奖。

原创粉丝点击