SLER这个工具不好用,的确在网上很很难搜索,只有少数几个网站介绍了这个工具,而几乎没有什么地方提供下载。
我用google,yahoo费力的搜了半天,一直没找到可供下载的页面,要不就是找到了但是下载的链接已经失效了,折腾了半天一无所获。
看看时间已经接近中午了,三石又把盒饭送过来了。三石天天跟我们接触,也多多少少了解一点我们的进展,知道目前遇到困难了模型还没有搞定。三石安静的走进来,把饭菜放在靠门的桌子上,然后悄悄的给杨婷打了个招呼就准备走了。
我们三个都处于高度紧张的状态,谁都没心思动桌上的盒饭,要是下午还没有进展,这次数模比赛就彻底完蛋了,不仅仅是我们颗粒无收,更重要的是老周老杨也可能因为这次比赛的失利而辞去数模队领导教练的职务。
孙董,杨婷已经先把模型已经完成的部分的论文搞定了,包括英文版的,现在在准备模拟的程序,最关键的任务还是在我肩膀上。
用搜索引擎搜不到,现在唯一的办法就是去数模相关的BBS,看有没有人上传过这个软件。
我登到stafenie的主页上,然后链接到数模BBS,一篇一篇帖子的看,不敢有任何疏漏。我偶然发现主页上还有个数模的聊天室,我赶紧登进去看有没有知道SLER这个软件。
“神童,你是不是想在聊天室找别人帮忙?”孙董不知道什么时候走到我身后,突然问我。
“不是的,我在找一个软件,找到了我们建模遇到的这个问题就可能有办法解决?”我火急火燎的回答道,然后马上在聊天室发消息问有没有可以提供这个软件。
“神童,我们就算不拿奖,也不能作弊呀!”孙董有点担忧的说。
“哎呀,你放心了,我有分寸的,只是下载软件不会找别人帮忙!”我已经没时间给孙董多解释了,继续在BBS上寻找线索。
过了好半天,聊天室终于有人响应了,问我为什么要找这个软件?
我顾不上多解释了,只是一个劲的问这个人有没有这个软件可以传给我一份。聊天室又半天没反应了,我打了一堆问号过去,希望那个人能赶紧提供一点线索。
与此同时,我继续锲而不舍的在BBS上翻寻这个软件的踪迹,但是始终还是无功而返。
过了老半天,那个人又回了一条消息,说她又这个软件,因为是要授权的所以她不能给我,不过她有tiral版的,可以给我,trial版在运算单元优化上有一些限制。
这个消息对我来说无疑是雪中送炭,无论如何先拿过来看看再说,即使是trial版说不定也能解决这个问题。
怎么传给我呢?我又发了一条消息过去。
我焦急的等了十分钟,对方给了一个ftp下载的地址,然后给了我一个用户名和密码,叫我自己去下载。
我马不停蹄的敲了一堆命令,登到那台ftp服务器上,果然找到了一个trial版的SLER,我赶紧下载下来。SLER这个软件虽然不大,但是由于从CERNET访问公网的速度非常慢,1M大小的文件竟然下载了一个多小时。
我把下载好的文件解压一看,原来是SLER是用java写的,还附了具体的使用说明。使用说明就有两三百行,详细而有复杂。现在时间已经不多了,而且没有源代码,要想现在去读懂SLER的思路然后再修改satfenie的代码几乎不可能了,只能先用SLER进行参数拟合再说。
现在已经下午三点多了,如果在晚上八点之前能把模型弄出来,熬一个通宵还是有可能完成论文的。
我看了看使用说明中附带的例子,按照例子使用SLER来进行参数拟合,程序果然跑起来了并且每拟合完一部分,就会把结果输出出来,然后我们再把这些结果用stafenie的软件进行优化。
最终的结果逐渐生成出来了,我们三个长长的松了一口气,看来曙光就在前方,胜利正在朝我们挥手。
正当我们很开心的期待着结果出来的时候,屏幕上SLER突然弹出一个窗口,大意是说由于是trial版,运算单元超过限制,必须注册后才能继续使用。
我们一看傻眼了,靠,这可真是釜底抽薪,眼看参数拟合的部分都要完成了,居然出现这种问题。
网上这个软件本来就没几个人知道,要找破解版或者是注册码根本就是不太可能,现在唯一的办法只有再去聊天室找那个哥们问问看。
杨婷和孙董都紧张的看着我登到网站上打开聊天室,直接问那个人有没有注册码。过了好半天,那个人才说她有注册码但是不能给我,这个只能去找那个俄国人要,接着她有告诉我一个更失望的消息,说那个俄国人最近不知道神游到哪里去了,她也很久没见着了。
我苦苦的哀求,那人非常坚决说如果把注册码给我是违法的。我想也是,在怎么也不能外老外面前丢中国人的脸,只能自己想办法克服了。
“神童,这下可怎么办?”孙董和杨婷焦急的问我,这种从希望到失望再到希望又到失望的感觉真的很难受,像过山车一样刺激,但是结果却“生死未卜”。
我没有吭声,大脑大脑飞速旋转寻找解决方案。孙董和杨婷对于程序软件都是门外汉,所有希望都寄托在我身上了,我第一感觉到责任的压力。
孙董对杨婷说:“我们让神童安静的想一会儿,我想他应该有办法的!走我们先去吃饭吧!”
我这才想起,盒饭还放在桌子上,早就已经凉了。
“神童,我们现在出去吃午饭,要不要给你带点什么吃的?”杨婷问我。
“来碗米线吧,要辣鸡的!辣的东西能激发我的思维!”我笑了笑说,尽量让气氛轻松一点,的确这几天大家都很辛苦了。
“好的!”杨婷和孙董出门了,“对了,在来瓶冰红茶,要统一的!”我又在实验室里面大声吆喝了一句,不知道她们听见了没有。
没有注册码,现在唯一的办法就是破解这个软件。SLER使用java写的,所有的程序都是封装在一个jar文件里面。我用winrar吧jar包解压开,里面全是class文件。
Java的程序和一般的C或者pascal不同,java程序编译以后是class的字节码文件,这种文件不是可运行的机器代码,而是一种可以被java虚拟机解释执行的代码,因此在java可以实现在不同操作系统间的移植,做到“writeonce,runanywhere”!
要破解这个软件,最关键是看那个class文件控制了注册信息,把这个“阀门”破解了SLER就可以毫无限制的使用了。这种方法虽然有点不道德,但是现在我已经顾不上这么多了,况且数模比赛也没规定不能用自己破解的软件。
我看了半天,上千个class文件看得我眼花缭乱。我明显感觉视力急剧下降,大脑已经转不动了,我疲倦的趴在桌子上睡着了。
我在梦中闻道辣子鸡的香味,睁开眼一看,杨婷已经把一碗香喷喷的辣子鸡米线摆在我面前了。闻道辣子鸡的香味,立刻激发了我的食欲,我迫不及待的吃起来,真是太饿了。
一碗米线我三下五除二就吞到肚子里面了,擦了擦嘴,一看电脑上的时钟已经下午五点多了。看来我睡了一个多小时。
“神童,你怎么把辣椒都弄到电脑上了!”杨婷指着电脑屏幕说。
我一看,果然有个辣椒籽粘在电脑屏幕上,可能是刚才吃的太兴奋了,从碗里面溅出来的。我不好意思拿了一张纸巾准备把辣椒籽擦掉。
忽然,我发现辣椒籽粘住的地方有个文件的名字叫reglimited.class,我的天呀,得来全部费工夫,这个文件应该就是我要找的“阀门”了,真是天助我也。
Java字节码的反编译工具很多,我最熟的就是decompile,这个工具据说是一个写java编译器的哥们写的,所以对大部分Java字节码都能成功的进行反编译。
我欣喜若狂的从网上下载了一个decompile,然后开始用decompile来反编译reglimited.class文件。
杨婷和孙董迷惑不解的看着我,不明白我到底要干嘛。我把反编译程序跑起来,然后对孙董和杨婷说:“我现在要破解这个软件,破解以后就没有运算单元的限制了,这样只要参数拟合出来,我们的模型就能大功告成!”
杨婷和孙董似懂非懂,但是至少知道我已经想到办法了,也倍感欢欣鼓舞。
反编译的结果出来了,我打开生成的java程序。这个程序不长,就是短短的几个条件判断,我三下五除二的把这些判断条件改成永远为真,以后就再也限制不了我了。
接着我又用JDK工具把java程序编译成为字节码塞回原来的jar包中,一气呵成,破解完毕。
我们三个人迫不及待又非常紧张的等待破解后SLER的拟合结果,呵呵,果然刚才的限制没有了,参数拟合顺利完成。
解决了这个问题,后面的环节就迎刃而解,我势如破竹的把后面的模型优化,计算机模拟的过程都搞定了,孙董负责我完成部分的审核和检查,杨婷负责论文的编撰和英文翻译。我们三个人配合的丝丝入扣,终于在凌晨三点钟完成了所有需要上交论文和程序代码。
我长长的叹了一口气,躺在折叠床上再也不想起来了。杨婷和孙董也累的够呛,不过面脸带着胜利的喜悦。
“论文总算是完成了,不过最后到底能拿什么奖我心里面没什么底!”我这话一说无疑是给孙董和杨婷泼了一盆冷水。
“为什么呀?”杨婷不解的问。
“嗯,神童说的有道理,关键要看评审老师能不能理解你的思路,他们也不是什么都懂,况且数模这东西也没有标准答案……,不过我们已经尽力而为,没什么遗憾!”孙董说。
“我对神童有信心……”杨婷固执的说,“当然对孙董也有信心……”
“哎,先休息一会儿吧,你又不是评审会的,说这些没用,看最后的结果吧,反正我已经尽力了,最多就这样了!”
“神童,你说其他组没有你这样的计算机天才,不知道怎么去破解,去拟合,能搞定模型吗?”杨婷问我。
“哎,你真是杞人忧天,我们把自己的本职工作搞好就是了,你管别人这么多干嘛?”我笑着对杨婷说,其实心里面还是很得意,估计很多组都没有把模型完整的做完,这次的题目的确比较怪异,以前从来没见过这么难的题目。
我本来想美美的睡一觉,然后养精蓄锐几天。刚躺下,我突发奇想想看看子墨是不是在线上,嗖的一下从床上窜起来,跑到电脑面前,把孙董和杨婷吓了一条,睡意全无,不知道我又中了什么邪。