圣者
精华
|
战斗力 鹅
|
回帖 0
注册时间 2007-12-15
|
Re:Re:Re:Re:回 90楼(fcmorrowind) 的帖子
引用第132楼fcmorrowind于2011-09-16 14:14发表的 Re:Re:Re:回 90楼(fcmorrowind) 的帖子 :
0,我没质疑rand()的有效性,我只是说,在游戏这个应用环境里,rand()不可靠,不好用,相信不用过多解释,已经说了。在特定领域,实现特定需求,确实未必需要什么高深的数学论证,比如上面那个50%的乱数算法,也说得很清楚了。
1,递归和调用是不同的,自己调自己才叫递归,这是基本常识吧……排序算法调用了比较算法这不显然么,怎么莫名其妙就成我说它是递归?我通篇没说递归的问题吧?我说这个的意思是,即使设计的随机算法使用了rand(),也并不妨碍他成为一个新算法。
....... 
递归的问题你自己看你算法的定义。
我觉得有很多东西如果是你自己的观点没问题,但不要表述的像是事实一样。
计算机科学就是计算机科学,你去百度百科也好,去wiki也好,只会找到 计算机科学 (computer science)的词条,而没有 计算机科学与技术 (computer science and technology)的词条。后者之所以给你这么深刻的印象,是因为它是国家教育部规定的中国高校开设专业的名称,但不是严谨的学科的名称。
计算机科学家就是一个专业的名称,起码在英语世界,computer scientist和computing scientist是同一个意思,而computer scientist更常用。
计算机科学不是自然科学,它是基于形式化模型和方法的,并不是研究自然现象的规律。当然," Though mathematics, statistics, and computer science are not considered natural sciences, for instance), they provide many tools and frameworks used within the natural sciences."
计算理论是计算机科学的核心内容,但不是所有计算机科学的理论性部分,可形式化的部分都是计算理论。形式化只是一个数学建模的过程,把问题用数学语言来描述,这样可以用数学工具来解决。你说的机器学习里面,有很多形式化之后用统计学解决的问题,跟计算理论关系不大。用数学工具解决也不代表问题就是数学问题。建不同的模型可以用不同的数学工具,这本身就是研究的一部分。
计算理论(Theory of computation)不是数学的分支。数学是基础学科和工具学科,但不是所有使用了数学工具的都是数学分支。这种常识性的东西,还是拿wiki来看吧:
In theoretical computer science, the theory of computation is the branch that deals with whether and how efficiently problems can be solved on a model of computation, using an algorithm. The field is divided into three major branches: automata theory, computability theory and computational complexity theory.
The theory of computation can be considered the creation of models of all kinds in the field of computer science. Therefore mathematics and logic are used. In the last century it became an independent academic discipline and was separated from mathematics.
已经明确的说了从数学中独立出来了。
你对理科和工科的区分也不正确。性能如何,吃不吃内存,速度快不快,我的机器能不能跑起来,什么事能做什么事不能做,指的就是时间复杂度如何,空间复杂度如何,问题的定义如何,这个是典型的理论问题。算法所说的“清晰步骤”,恰好说明它要求一个无歧义的形式语言的描述,这是典型的理论研究的特征。事实上在实际的研究中很多时候是不分那么清楚的,因为没有意义。说你的成果是一个理科成果还是工科成果,对于成果本身的价值来说没有意义。
创新性和重要性不是一回事。如果你review过一些paper的话,你会知道一般originality和significance/impact是分开打分的。在不同的领域,这两者的权重会有所不同,但是不应该混淆。
我想你可能是对计算机科学这个名称不满意,觉得不够“科学”。但这个仅仅是名词之争,属于历史遗留问题。迪杰斯特拉就曾经吐槽过,计算机科学就好象把天文学叫做望远镜科学,把外科叫做手术刀科学一样。但是,即便你从计算机科学改成计算科学,也只不过是把Science of Knife改成Science of Cutting,没有什么实质性的进展。学科覆盖的内容不是由它的名字决定的,不必望文生义。
你可能也急于要给计算机科学找个牛逼的老爹,比如数学。但数学的子子孙孙太多了,也大都独立了。独立了就有自己的学术方向,没必要再归到一类里面去。 |
|