第155章
我看了一下题目,是说一个露天的矿山的生产,主要是电铲装车,然后卡车来运输,然后给了一堆的限制条件,什么一个铲位只能又一辆卡车,卡车都要满载等等,现在的问题是要如何安排卡车。我觉得挺开心的,至少说明了我们国家象矿山这种劳动密集型产业,现在也已经在开始考虑提高经济效益,合理安排计划了。
其实数学建模有时候和项目管理一样,是一个逐步细化精益求精的过程,先给出一个简单显而易见的初始解,然后再不断优化,得到一个令人信服又有点让人惊讶的结果,或者是一个匪夷所思,稀奇古怪的结果。就跟写小说一样,稀奇古怪不要仅,只要道理上说的通就行。
我先给了一堆假设条件,然后在设定了一堆符号说明。我记得高中的时候,数学老师就调侃说,数据建模就是玩假设。这题目一看就是一个线性规划,再加上有一堆限制条件,互相制约,属于NP完全问题。有了基本思路,我就开始动手了。
我通过谓词演算,把一堆条件,假设形式化,然后就开始编程序实现这些条件。
实验室这些电脑真是有点老掉牙了,装的操作系统还是windows95的,键盘估计也被那些天天上机玩游戏的哥们给折腾坏了,好几个键都敲不出来。
“三石,过来,帮个忙!”我对三石说。
三石连忙跑过来,问我啥事。三石看见我在稿纸上写满他看不懂的公式,心情立马高兴起来,至少他认为我是在很认真的对待这事,而三石向来认为只要我出马,没有什么搞不定的。
“这个键盘太烂了,换个好用一点的来!”我给三石演示了几个敲不出来的键。
“呵呵,这个键盘时候前几天玩FIFA搞坏的,我给你换一个!”
三石上蹿下跳,从旁边机器上拆来一个键盘下来给我装上。然后屁颠屁颠的跑回去给他娘子汇报我这边的战况。杨婷有点不相信,惊讶的往我这边看了两眼。
我把程序写完,调试通过,已经快十一点了,我也有点困。我原来打算是用穷举法让计算机把所有情况都列举出来,然后从中选择最优的就大功告成。不知道是我太高估这台计算机的能力,还是这太计算机的确到该退休的年龄了,我以为十分钟就能出结果的程序,跑了半个小时还在豕突狼奔。
我把程序停下来,又重新检查了一遍我的算法,发现这个线性规划的问题条件太多太复杂了,对这种组合计算用穷举法可能有问题。
我想了想,又把部分权重不高的约束条件和假设给去掉了,将问题简化为多变量整数线性规划问题,先求解,然后再把这些条件重新加上去来求解,我三下五除二把程序改好,又开始继续跑。
我估摸着这次也要差不多半个小时,把QQ打开上网找人聊天先。
杨婷假装走过来倒水喝,偷眼看看我这边的进展情况,却失望的看见我在聊QQ。杨婷生气的走回去对三石嘀咕了几句,三石又屁颠屁颠的跑过来找我。
“神童,都火烧眉毛了,你还有心情聊QQ,赶紧想想办法吧?”三石过来焦急的对我说。
“急啥,刚在QQ上认识一个美女,你让我把这两句聊完!”我没有搭理三石继续QQ。
三石不好意思赶我走,灰溜溜的回去了。
这次,这台老破驴还算比较给面子,跑了半个小时终于出结果了。我看了看结果差强人意,将就用。
实验室那边,周丰和曹阳还争的面红耳赤,杨婷已经是困的不行了,靠着三石快要睡着了。这样的小组就算选拔上了,也很难拿到好的名次,我摇了摇头。
我不断加假设条件,不断求解,问题也越来越清晰了,只是这台电脑实在是有点负担过重,在运行的过程中还死机了好几次。我索性启动电脑的时候,直接进DOS操作系统,让所有的CPU,内存资源都来做计算。这招果然有用,这台老破驴的速度一下子快了很多,发疯似的嗖嗖把结果吐出来。
到了凌晨两点多的时候,行车路线,车流分配都已经搞定了,万里长征只剩最后一步了。
三石也睡了一觉醒来了,周丰,曹阳估计吵了一晚上已经筋疲力尽了,现在已经梦游周公了。
三石看见我还坐在电脑旁边,拼命的敲着键盘,以为我还再QQ聊天。
“神童,你的美女MM搞定了没?”三石睡眼惺松的问我。
“早回去休息了!”我头也不回,直盯着电脑说。
“哪你还再干吗?”三石问。
我难的理三石,一边盯着屏幕,一边把算出来的数据都记录下来。
三石突然发现我电脑上,一堆数字拼命的在屏幕上闪动,才明白我还再搞这个数学模型,立刻精神大振,感激的差点涕零。
“怎么样,结果出来了没?”三石兴奋的问我。
“快了,不要碍手碍脚的!”我不耐烦的说。
“有没有什么需要我效劳的?”三石赶紧献殷勤的说。
“去苏果便利,给我买点吃的!”我说。
“要什么?要不要可乐,还有小熊饼干?”三石问。
听见小熊饼干,我想触电了一样,愣了一下,“你怎么也知道小熊饼干!”,刚和张妍谈恋爱的时候,张妍也要小熊饼干,我去苏果没抢到最后一包,结果被一个小胖子给讹了。想起这些往事,我还是有点伤感。
“唉,杨婷特别喜欢吃,我也跟着吃了一次,觉得味道还不错!”
“算了,来两根火腿肠吧,外加一个茶叶蛋和可乐!”
已经到最后一步计算机模拟模型了。一般的交通系统的模拟仿真都是用蒙特卡罗原理的随机仿真方法。但是这个模型中的数学模型存在着随机性和模糊性。蒙特卡罗原理在随机性方面虽然很出色,但是需要确定随机事件的参数概率分布形式非常困难,因此蒙特卡罗仿真方法对这个模型的模糊性问题是没法解决的。
我坐在电脑屏幕前冥思苦想了很久,把以前知道的仿真方法都想了一遍,还是没找到一个合适的。
这时候杨婷也醒了,看见我还坐在电脑面前冥思苦想,觉得有点奇怪。
“你还没回去?”杨婷问我。
我全神贯注的在思考这个问题,压根就没听到杨婷在说什么。我决定上google去搜索一下,看看网上的交通系统是用什么仿真的。
杨婷走到我旁边,看见我在稿纸上密密麻麻写了一堆公式,也没看明白我写些什么。
“这些题,用初等数论解不出来的!”杨婷不屑一顾的说。
我没有理会她,继续思考我的问题。
“你早点回去休息吧,算了,这事我们不要你帮忙了,我们自己能搞定!”杨婷说。
我也没理会她,继续在网上搜索,可是一无所获。我有点灰心了,要是计算机模拟搞不定,就是前功尽弃了,前面做得模拟,假设全是白费了。
杨婷有点自讨没趣,回到她自己的电脑面前,继续看她以前讨论的结果。