再回首,一年数模路

  • 2011年美国大学生数学建模竞赛特等奖
  • Outstanding Winner
翟晨曦·东南大学
2014-11-19
阅读数2716

大一的时候偶然听了一次当年拿到数模美赛一等奖的学长介绍数模参赛经验,崇拜之余又感到很新鲜,尤其是他谈到了《数字追凶》这部美剧,剧情围绕用数学思想解决案情,我也第一次感到数学蕴含的强大的魔力。一年过去了,从校赛到国赛,再到结束了已经两个月的美赛,一步步走来,我们几乎无法相信我们能取得这些成绩:校赛时由于准备不足加之队内分工不合理惨遭淘汰,国赛时全力以赴获得江苏省二等奖聊作安慰,美赛时拼尽气力斩获特等奖。回过头来看,我认为数模是一个可小可大的词,说小了,数模可以是我们所谓的数模竞赛,说大一点,数模可以是一些院系开设的传授数学思想的数学建模课程,说再大一点,数模更是一种思考世界的方式。如果仅仅针对数模竞赛,无论什么级别的,我觉得必须要有一种态度:坚持。从校赛被淘汰后的坚持,到国赛成绩不理想后的坚持,再到美赛最终有所成就,没有坚持,一切都是空谈。如今再看这一年多的数模之路,有很多值得总结的,也许能被称作经验,但又仅仅是一种参考,在此记录下来。

首先回顾一下我们参加美赛的96小时。其实我们早就决定了选C题,因为我们对自己的纯数学能力没有十足的信心,而C题交叉学科建模恰能发挥出我们三个人思维活跃的特长。211日上午9拿到题目,我们三个人各花了半个小时读题,因为我们的英语能力都还算合格,我们并没有刻意去翻译,因为我们认为用英语思维理解英语题目才不会使题目的意义变形。三个人统一完对题目的理解之后便是疯狂查找资料,找资料很重要的一点就是题目提供的参考文献中的资料,这一定是重点。郑心如找了很多和题目只要有一点点沾边的资料,全部整理下来,交给霍雨翀去研究找灵感,而我则先把题目要我们做的一点点罗列出来,以防解题时遗漏。吃过午饭后,郑心如还在找资料,而此时资料已经堆积如山,我也参与到了研究资料的工作中。忙了一个下午,我们有了一点点的头绪,找到了一个切题点,我们就从这个点切入,一点一点挖掘。我们并没有急于建模型,而是先花了很多时间把资料整理归类,理出哪几份资料可以解决哪个小问题,再寻找这几个小问题的内在逻辑联系,确定解决顺序,而在做这个步骤时无形中也确定了我们的论文提纲。之后回宿舍休息。到212日时我们正式开始按照前一天的思路按部就班解决问题,我和霍雨翀思考模型框架,交由郑心如补充,模型建立起来后霍雨翀和郑心如便着力解决模型,而我则撰写每一步的论文,力图把思想表达清楚。这里我很推荐直接用英语写作,还是那个原因,只有用英语来思考文章,写出来的才不会变形。到214日中午所有主要问题基本解决,论文也基本定型,这时我们对照第一天罗列的题目待解决的问题逐一检查,补充一些对次要问题的理解。做ICM的题目一定会遇到一些看似可有可无的问题,但我们很注意对这些细节点的分析,哪怕写到文章里只有一小段话,我们也要尽己所能把我们的思考表达出来。214日晚上郑心如开始检查所有模型与结果,而我和霍雨翀在检查论文结构与措辞。意外的是我们发现了一个主要问题的模型在解决时代入了错误的初始值,所幸我们在做每一步时都保留了所有原始数据以及中间过程,我们很快弥补了这个错误。在215日凌晨5点时我们顺利完成了比赛。

要说这期间的经验,我认为组队或者说队内分工尤其重要,通常来讲“黄金配置”是论文撰写者、程序员、自由人。做校赛和国赛时我们在组队上吃了一点亏。当时我们三个人没有明确地分配这三个角色,只是有个大致的分工,三个人工作起来又常常会一起去做同一件事,导致效率有点低。美赛前我们严格按照这个“黄金配置”分配了任务,并在寒假培训前后进行磨合。这个配置里前两个角色就不解释了,第三人是干什么的呢?我想这很难界定,因为每个队的情况都不一样,我们的第三人的工作是查找资料、修正并检验模型、最后检查。这份配置是我们解决数模这项庞大的任务的基础。

关于赛前准备有几点要说的:

知识储备。数模美赛需要用到很多知识。很多人认为这些知识可以根据比赛实际情况即学即用。没错,涉及到很专业的比如地理海洋学的知识是应该如此对待,因为这些东西赛前无法准备,准备了也有很大一部分最后会被浪费。但基础知识比如常见模型和常见算法的了解则宜早不宜迟。我的组员霍雨翀简直就是个模型算法辞典,通用模型和算法他都略知一二。这很重要,我们并不需要在赛前精通所有模型或算法,但必须要了解各个模型是用来解决什么问题的,也要把各个算法的程序,无论是C语言、MATLAB语言还是其他语言都要有完整带注释的可执行源代码。只要做到比赛时看到问题能立刻想到可以用哪几个模型可以解决,算法代码拿来就知道怎么针对题目量体裁衣就可以了。

软件操作。先说论文撰写软件。我想主流的无非就是WORDCTeX了。作为论文撰写者,必须要事先决定用哪款,并做好与之对应的论文模板。就我而言,我对WORD非常熟练,毫不夸张的说在论文撰写排版这一方面我已经精通WORD了,只有想不到,没有排不出的版式。出于好奇,也为了把两个软件进行比较,我也学习了CTeX,并排了一篇文章试了试,但最后发现这款软件不适合我,我使用CTeX远远达不到用WORD的速度与灵感(排版也是一种艺术,需要灵感才能排得美观),而效果又有不及而无过之。这里要提一句,要想用WORD排出合格美观的科技论文,必须要花一些精力“改装”WORD,需要安装一些微软的或是第三方插件,比如公式编辑器(MathType)和PDF生成插件(Microsoft Office2PDF),这是用WORD写数模论文必须的。至于到底使用哪款软件来写论文,还是因人而异,但我的建议是如果没有扎实的WORD操作功底以及对它的驾驭能力,WORD不适合写科技论文。这里再给打算用CTeX排文章的同学说个小窍门,EXCELMathType有把表格对象或公式转换成LaTeX代码的插件,不需要再在CTeX里一个字一个字输入再一遍遍编译调整布局,直接在EXCELMathType里编辑转换好复制过去就行了。再说说数学软件,MATLABSPSSLINGOEXCEL缺一不可,在比赛中这四个软件各司其职,组合起来无坚不摧。对这四个软件的主流功能以及使用一定要在赛前有所掌握,至少知道要完成某项任务应该用那个软件调用哪个命令,真正用到时能立刻查到使用方法。这里特别强调一下EXCEL,虽然表面上只是一个图表编辑软件,但它对表格以及数据的处理能力远远超过想象,它可以对数据做一系列的数学处理,比如t-分布检验、作回归分析等等。

关于书籍。说实话,真正比赛时需要去翻书的时候很少,但也一定有。通常我们小组会翻一些MATLABLINGO等软件的函数手册,或是一些关于常用数学模型的详细分析。这就需要提前借好相关书籍。而一些涉及专业学科的书借了也是白借,因为数学建模一定不会涉及非常高深的专业知识,只会要求参赛选手了解背景知识以及基本原理,而不会做深度分析。因此涉及到的领域都仅仅是很粗浅的知识的应用而不会就某一点深入挖掘,这时上网搜索一定会比翻书更快更准地把握其要义。因此准备一些有关软件的使用指南以及数学模型的分析的书籍,并提前有所研究就足够了。

英语锻炼。长期读英语已经渐渐成为很多人的习惯,单就数模美赛而言这也极其重要。我们很重视用英语思维理解题目甚至写论文,因为在同一种语言环境下内在的思维和外在的表达才不会产生偏差。因此我们赛前也研究了很多英语科技文献,学习人家的表达,也锻炼英语思维能力。不过这种能力的提高是需要长期积累的。

思维锻炼。赛前最重要的是什么?实战演练。我们除了认真完成寒假培训的两道题目外,赛前在家的一个多星期里每天看一道题目以及相应的优秀论文,边看边思考,有时还把人家的模型重新计算一遍,保持头脑对数学建模的敏感与热度,这样才不至于比赛时无从下手。

而到了正式比赛中,要注意的不多,但很关键:

关于电脑的使用。尽管机房提供电脑,但无论如何用自己的才最安全最方便。比赛前将所有软件装好,该打补丁的打补丁,该装插件的装插件,一切准备就绪后就无后患之忧了。看过很多经验介绍说不要装QQ,但我强烈建议每个人都装QQ,因为三个人之间免不了要互传文件,这时QQ的强大威力就显现出来了,鼠标一拖就完成了文件共享,如果用U盘,麻烦不说,还很浪费时间,而且QQ内置的截图功能也可以充分利用起来,比其他一些专门的截图软件省时省力。比赛时一定要多注意通信交流,但不是聊无关的话题。我们在比赛时QQ始终开着,但都保持隐身以防被外人打扰,一个人找到某个关键信息就传给另两个人一起看,而对某一问有了思路或结果并已经成文的就把分析过程传给自由人,一是为了给自由人检验,二是为了存档以免丢失。

关于比赛过程。数模比赛的过程本身就是难以把握,任何一个固定死的被称之为“比赛步骤”或“时间计划”都可能适得其反。因此详细的安排因人而异,但下面说的这几点则是必不可少的:

审题。这一步非常关键,目的就是搞清楚有哪些亟待解决的问题,以及问题的先后主次,找到突破口。我们小组的策略就是三个人分别审题,分别对题目进行理解,再共同讨论,罗列出所有问题,并确定解决顺序。和很多小组不一样的是,我们小组拿到题目后并没有盲目翻译,因为我们都认为用英语思维去理解题目才不会产生偏差。在比赛当中审题看似容易,其实并不简单,需要了解问题的背景以及所需要的数据类型。美赛并不提供完整数据,需要我们自己去找,但随题目会附带部分参考资料,这些资料极其重要,一定要花时间认真研究,往往一些关键数据在里面,同时这些资料本身也是寻找资料的突破口,通过他们的参考文献就可以找到更多的相关资料,形成信息网络。学校图书馆为我们查找资料提供了极大的便利,图书馆网站上有大量的免费数据库入口,充分利用他们就不会因为找不到资料而发愁了。在审题截断还有一点很重要,就是不要把题目想复杂。我始终相信爱因斯坦的一句名言:"Beauty lies in simplicity."比赛只有四天时间,对于本科生来说几乎不可能解决一个世界难题,因此我们的目标只是给出现有问题的一个合适的解决方案,而这个方案必须实用有效。我们在思考的时候始终从简单的角度入手,从不一上来就往难处想,比如能用一次方程的就不用二次的,能用线性模型的就不用高阶模型。至于为了提高模型精度需要对模型作升阶之类的则不应该在审题阶段进行考虑。

资料搜集。在确定了问题的解决顺序后我们遵循题目提出的顺序,按照问题的主次逐一进行解决。这时第三人和程序员就可以着手查找资料,通过上面所说的方法从题目本身出发顺藤摸瓜。找资料并不是直接寻找问题的答案,而是在分析好解决这个问题需要什么样的模型以及数据去找,比如这次题目中我们第一个解决的电动汽车对经济的影响,我们没有去Google“电动汽车的经济影响”,而是首先想到去分析它的市场占有率的变化,因此我们Google了“商品销售模型”,找到了几个常用模型,对比之下确定了用Bass模型,再在wikipedia上找这个模型的说明,通过wikipedia的参考文献找到这个模型的使用实例,再去查找这个模型的参数计算修正等细节资料。找到这些我们确定了使用这个模型,从而我们分析了需要历年汽车销售数据以及汽车保有量数据来计算模型,于是就找这些数据。这样一来,搜集资料就如顺藤摸瓜,很有针对性,不会浪费时间在大海捞针上。同时解题的思维也不会被前人的研究结果束缚住,更容易发挥我们自身的创造力。另外,自由人应该对每一份搜集到的资料都应该及时保存整理分类,不要让任何文件淹没在文件的海洋里,这样如果后面需要用到之前的资料就能立刻找到,而不用一个个文件再打开去一一寻找。

问题解决。我认为在解决问题时应尽量保持步伐一致,总是两个人在分析计算一个人在撰写文档,攻克一个再解决下面一个,这样可以保证每个人都对每一个问题有足够的了解,任何一个人发现的问题都是在三个人的认识范围内,可以很好地讨论,不会出现两个人在焦灼地争论一个问题而另一个人不知道他们在说什么,而这也是我们遇到的问题。我们并没有做到很同步,我好几次需要向另一个人解释我在想什么问题,很浪费时间。我们大体上是这样做的:论文撰写人和程序员急于理论或常识思考解决问题的切入点,自由人查找相关资料并提供给另两个人,当模型确定后论文撰写者开始根据讨论的结果撰写论文,他需要很详细的阐述小组的思考。程序员开始编制程序或指定解决方案,并告诉自由人需要哪些内容的数据,自由人找到数据并提供给程序员,程序员完成模型的建立与计算,交给自由人进行检查修正,这是程序员帮助论文撰写者完善这部分论文。最后自由人将修正的内容补充给论文撰写人,一个问题就解决了。这是我们屡试不爽的解题过程,也是团队配合的真正含义所在。我很强调论文应该有一个人执笔,因为三个人各写一部分风格很难统一,势必会使文章整体性变差,影响表达。但也不是所有文字都有一个人来写,这样个人因素影响太大,另外两个人应该尽可能提供思路,保证文章的充分客观。另外说一点,在解决问题时,我们通常不去涉及高深的数学模型或算法,尽量用通俗易懂的,而且适量配以图表辅助解释。所有参考的资料也用标准格式一一注明,一方面是对学术的尊重,另一方面也方便最后检查时能迅速定位。在全部主要问题解决后,我们相信如果想拿到好成绩,任何一个细节问题都不应该被放过。我们在解决完所有主要问题后,对照问题列表发现还有有关电池的问题没有分析,但这个问题着实难倒了我们,因为这个问题无从下手,我们除了电动汽车要用电池外找不到电池和题目主题的内在关联。但我们还是抓住找到的这仅有的联系进行了一点点分析及我们自己的理解,纵观全文才不会使人觉得我们这份解决方案有所遗漏,看上去才会是一份面面俱到的分析。

论文检查修改。如果没有做这一步我们最后一定不会得奖,因为一个粗心导致我们三个人忽略了一个错误:在第一问时我们考虑的是全球的情况,而第二问时我们分析了美国的情况,但数据居然代入了全球的数据。我们的自由人在最后成文以后对每个模型进行仔细的检查,包括建立的基础、计算的过程、参数的调整、文献的参考等,最终及时地发现了这个错误。同时得益于我们在解题过程中注意对资料和解题过程的保留,我们很快修正了这个致命的错误。由此可见检查有多么重要。特别之处,对每一个模型都应该进行检验或修正,可以是灵敏度分析,可以是优缺点分析,无论是什么,都应该有一个对模型的评价,这样才能做到严谨,因为任何模型必然有其优点和局限性,作为科学研究,必须要展现出所用模型的合理性,这样也增加了解决方案的可行性与论文的可信度。除了检查建模过程,检查全文的布局、排版、字词也是很重要的,需要检查图表的编号顺序、问题解决顺序与内容的内在逻辑联系以及参考文献的标注等等。

题目与摘要。最后就是写论文题目和摘要了。我觉得论文的题目很有讲究,一个稍许生动的题目如“What Will X Bring to Us”一定比平淡规矩的题目如“The Mathematical Model and Analysis of X”更吸引人。摘要的写法一般来讲很规矩,按照官方参赛指南里的要求一一做到应该就可以了。需要注意的是用语,我第一次写出来的摘要用了大量长难句,有点模仿GRE阅读里把几个简单句改造成各种从句、修饰语、定语镶嵌成一句,显得英语水平很高。最后指导老师一语中的:“评委会花那么长时间分析你的句子结构语法吗?”适当的复合句可以增加文采,但摘要还是要力求简洁明了,让评委一眼看出作者要表达什么。

以上这些就是此次参加数模美赛的体会与经验,作为对自己过去的付出的审视以及纪念,也希望能让喜欢数模知识、喜欢数模竞赛的人有一点点收获。

本文由 翟晨曦 授权 赛氪网 发表,并经赛氪网编辑。转载此文章须经作者同意,并请附上出处(赛氪网)及本页链接。原文链接https://www.saikr.com/a/67
收藏
分享
别默默的看了,快来和大家聊聊吧,登录后发表评论~ 登录 立即注册
打赏
翟晨曦
打赏金额(金额:¥0)
给Ta留言
赏金已入袋,多谢!(*^__^*)
赛氪APP全新升级 反馈 下载
关注 微信公众号 关注赛氪订阅号 微信服务号 关注赛氪服务号
购物车
顶部
温馨提示

非常抱歉!本站不支持旧版本IE浏览器~~建议使用IE10/IE11/Chrome/Firefox/Safari等高级浏览器浏览。

温馨提示
温馨提示
帮助与反馈

热门问题