进化解集(上)(11)
“这只是哲学意义上的思辨,对我们接下来的工作毫无裨益。”聂磊直接指出了刘志涛言论中的关键破绽,继而引发新一轮辩论。
我坐在位置上,思绪像一根孤零零的苇草随着二人争辩时掀起的风摇摆不定。忽然,我好像厌倦了他们你来我往的论战,莫名喊出了一句连自己都不能理解的话:“再加一个库!”
这句话如同从草丛中跳出的狮子,瞬间打断了两人羚羊角力般的辩论。一下子,所有人的目光都集中到了我身上,等待我为刚才莫名其妙的发言提供解释。看着手下一脸迷茫的表情,我实在不好意思承认真相,于是更加不过脑子地开始解释:“小刘的话也有些道理,如果不能手动修改执行函数,再怎么争结果也还是一样。不如先试试,搞一个库,把1 1、1 2这样需要解决的算式存在库里。原点解决1 1=2时我备份过文件,就以那个备份为基础,修改检验函数,在保证能算出2的前提下让原点算1 2,等它能算出3了再类似地去算第三个式子,以此类推。如果真的不行,就退回原点的备份再想其他办法。”
“我不认为这样能实现所谓的进化。”聂磊直截了当地表达了他的观点,其他人的脸上也满是质疑,只有刘志涛赞同我的想法。
“如果不同意这么做就提出其他更可行的方法。”我立即给唱反调的聂磊一个无法反驳的理由,这也是我领导小组时的惯用手段,如果没有更好的方案,心里再不乐意也必须按我的意思办。果然,这个方法奏效了,聂磊不再和我谈论可行性问题,而是一边嘟囔一边老老实实坐回椅子上。
“看来已经没有其他意见了。关于原点,如果没有其他问题明天开始就进入下一阶段的测试。”
大家对我的总结没有表示异议,接下来的大方针便这么确定了。往原点中新增一个库文件不过是几分钟的事,最初的库里也只有三个最简单的算式,分别是1 1=2、1 2=3和1 3=4。与最初版本不同的是,2.0版本中原点的随机函数有了较大改变。首先是增删指令的功能,最终我们凭编程经验和直觉讨论确定现阶段合适的执行函数总长度为三千行,当代码少于这个指标时,随机函数增加指令的概率高于删去代码的可能,执行函数超过三千行时则相反,这能保证原点的文件大小保持相对稳定。其次,在备份原点文件的基础上,每次随机增删代码后,检验函数会针对1 1和1 2两个输入进行检验。若原点“忘记”了1 1=2,则将执行函数回退至上一个版本;如果仅仅算对1 1=2,重复随机过程;只有同时满足两个条件同时成立时程序才会弹出提示框并备份代码。