对计算机科学的反思和对信息领域自主创新的建议.docVIP

对计算机科学的反思和对信息领域自主创新的建议.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
对计算机科学的反思和对信息领域自主创新的建议

对计算机科学的反思 李国杰 从第1台电子计算机问世到现在已经60年了,尽管计算机科学和技术继续保持高速发展的态势,但是计算机科学与技术不能再采用以往一样的方式发展,需要革命性的突破。如果一直顺着过去形成的惯性发展,计算机科学的路子可能会越走越窄。我们需要静下心来,认真进行反思,总结经验和教训,以便将来更快更好地发展。 计算机科学的迷途 1.计算机科学不应以把解决方案搞复杂为荣 普遍认为,计算机科学是“算法的科学”。美国计算机学会(ACM)对计算机科学有如下的定义:Computer Science as the systematic study of algorithmic processes that describe and transform information: their theory, analysis, design, efficiency, implementation and application。算法研究应该是计算机科学的重要内容,但是从某些意义上讲,计算机科学“成也算法,败也算法”。 计算机科学有两个基础:可计算性和计算复杂性。可惜,目前学习可计算性的主要兴趣在证明某些问题不可计算;学习计算复杂性的主要兴趣在证明NP困难问题。在其他学科中很少见到科学家对不可解或实际上几乎不可解的问题有这么大的兴趣。电子工程科学真正帮助了电路设计,如芯片设计的EDA工具在集成电路产业发展中功不可没。但计算机科学并没有大大减轻编软件的困难,软件设计理论的确需要革命性的突破。 上世纪70年代有一本书《计算机和不可解性(Computers and Intractability)》,作者是M. R. Garey和D. S. Johnson,很多学校都采用作为本科高年级或研究生教材,影响很大。这本书的扉页上有一张漫画,漫画中一个人说:这个问题我不能解决,但是你也不能解决,因为它是NP完全问题。说话那个人表现出十分得意的样子。这幅漫画影响了计算机界几十年,从事计算机科学研究的人对解决不了实际需要攻克的困难问题一般不会有任何内疚,因为这是大家都解决不了的NP问题。这种导向对计算机科学已产生了不好的影响。我们真正需要的不是发现一些理论上复杂的问题,而是要在用户满意的前提下尽可能有效地解决实际存在的复杂问题。计算机科学不应以把解决方案搞复杂为荣,尽可能用简单方法处理复杂问题是信息技术的生存之道。 2.应当重视确定可有效求解的问题边界 我们做的研究工作多数是改进前人的算法或理论模型,至于沿着已开辟的方向究竟还有多大改进的余地却很少考虑,很可能这一方向已到了可有效求解的问题边界,而另一方向有很广阔的改进空间我们反而没有触及。 15年前,美国纽约大学的施瓦茨(Schwartz)教授在智能中心做过一个报告。他说,数学上已知的(knowable)问题边界极不规则(如图1所示)。就像油田开采一样,在某个位置钻井有油,偏离一点就没有油。问题的可解性也很类似,某个问题在某些条件下是易解的,但是如果条件稍微改变一点点就很难解甚至不可解了。确定可有效求解的问题边界,应该是计算机科学的重要内容。 图1 数学上已知的问题边界极不规则 3.并行处理不是万能药 并行计算的成功与逐步普及容易使人产生错觉,只要是单机难以解决的问题就想求助于并行计算机,但并行计算并不是万能药。 计算机算法大致上可分成三类:(1)线性或几乎是线性复杂性的算法,如分类(sorting)、商务处理等;(2)多项式或较低的指数复杂性算法,如矩阵运算等;(3)指数复杂性算法,如各种模式转换、规划(planning)等。第一类算法一般可用微机或服务器实现;第二类算法和问题规模大或有实时要求的第一类算法需要并行计算机。已知的第二类算法几乎都是科学计算。超级计算对第三类算法帮助不大,加速100万倍也只能稍稍扩大求解问题规模,需要寻找新的思路。 线性提高并行处理能力不可能对付指数增长的组合爆炸问题(NP问题)。解决人工智能等问题的非确定算法(如搜索算法)在并行处理中,会出现加速比远远超过处理机数的异常现象(好的异常),但我的博士论文《组合搜索的并行处理(Parallel Processing for Combinatorial Search)》已经证明,好的异常和坏的异常(并行不如串行)要么都存在,要么都不存在。除非能开发出指数增长的并行处理能力,否则用生物计算机的所谓海量并行也不可能有效地解决组合爆炸问题。解决人工智能等组合爆炸问题的根本出路在于对所求解问题本身的深入理解。 计算机科学不仅要研究复杂性,还要研究“简单性” 1.复杂性与简单性 大多数理论计算机科学家热衷于发现人为的难题,而不是寻求有效的方法解决实际问题。我们不仅需要刻画问题困难程度的“复杂性理论”,计算机科学可能更需要建立“简单性理论

您可能关注的文档

文档评论(0)

baoyue + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档