我在读博士之前主要是做工程,做工程常常是做出来东西能工作就行了,怎么实现不用关心。当我论文数次被拒之后,我才慢慢体会到在科研中,方法的复杂程度也是一个很重要的因素。因为论文阐述的是我的解决方案,别人是使用我的解决方案去解决他们的问题,我写过的程序很可能别人会再写。那么,如果方法过于复杂的话,别人无法理解也就没法应用我的研究结果,研究的质量就大打折扣了。
如果我们定义一个方法解决的问题的重要程度是M,一个方法的实现复杂度是I,最终用户使用方法的复杂度是E,证明方法正确的复杂度是C,并且这几个变量都在【1-10】之间取值,那么这个研究的价值V可以简单用下面的公式表示:
V=M/E - I
也就是说,研究的价值与解决的问题的重要程度成正比,同用户使用复杂度成反比(如果太复杂了用户不能用,解决的问题再牛也没用),用方法实现的复杂度成反向关系(太复杂了很难实现,但实现的影响不如最终用户的影响大),同时与证明的复杂度无关(如果证明了P=NP,不管多复杂都没关系)。
https://blog.sciencenet.cn/blog-211989-212992.html
上一篇:
从Alexander Egyed的论文看程序语言和软件工程的论文写作风格差异下一篇:
为什么Haskell不能写大型程序