随着计算机功能的扩展和性能的提高,计算机包含的功能部件也日益增多,其间的互连结构日趋复杂。现代已有3类互连方式,分别以中央处理器、存储器或通信子系统为中心,与其他部件互连。以通信子系统为中心的组织方式,使计算机技术与通信技术紧密结合,形成了计算机网络、分布计算机系统等重要的计算机研究与应用领域。
与计算实现有关的技术范围相当广泛,包括计算机的元件、器件技术,数字电路技术,组装技术以及有关的制造技术和工艺等。
软件软件的研究领域主要包括程序设计、基础软件、软件工程3个方面。程序设计指设计和编制程序的过程,是软件研究和发展的基础环节。程序设计研究的内容,包括有关的基本概念、规范、工具、方法以及方法学等。这个领域发展的特点是从顺序程序设计过渡到并发程序设计和分布程序设计;从非结构程序设计方法过渡到结构程序设计方法;从低级语言工具过渡到高级语言工具;从具体方法过渡到方法学。
基础软件指计算机系统中起基础作用的软件。计算机的软件子系统可以分为两层:靠近硬件子系统的一层称为系统软件,使用频繁,但与具体应用领域无关;另一层则与具体应用领域直接有关,称为应用软件。此外还有支援其他软件的研究与维护的软件,专门称为支援软件。
软件工程是采用工程方法研究和维护软件的过程以及有关的技术。软件研究和维护的全过程,包括概念形成、要求定义、设计、实现、调试、交付使用,以及有关校正性、适应性、完善性等三层意义的维护。软件工程的研究内容涉及上述全过程有关的对象、结构、方法、工具和管理等方面。
软件研究系统的任务是在软件工程中采用形式方法,使软件研究与维护过程中的各种工作尽可能多地由计算机自动完成;创造一种适应软件发展的软件、固件与硬件高度综合的高效能计算机。
人工智能如果仅从行为学的角度来看,人工智能要解决的问题是如何使计算机的表现智能化,使计算机能灵活高效地为人类服务。只要计算机能够表现出与人类相似的智能行为,就算是达到了目的,而不在乎在这过程中计算机是依靠某种算法还是真正理解了。在这个意义也仅仅在这个意义上,人工智能是计算机科学中涉及研究、设计和应用智能计算机的一个分支,这样理解的人工智能,它的目标就是研究怎样用计算机来模仿和执行人脑的某些智力功能,并开发相关的技术产品,建立有关的理论。除了上述的观点以外,人工智能领域中的信息学家强调理解智能的生成机制(信息—知识—智能转换),并把这种机制在机器(不一定是计算机)中实现出来;心理学家、语言学家则倾向于将重点放在用计算机去再现人脑思维的内部状态上。也就是要使计算机生产真正理解(或者在一定程度上理解)它所做的事情,就好像人脑一样去"思考问题"。
与此相应,目前对于人工智能存在诸多不同的理解。下面是几种(不是全部)常见的理解。
定义1人工智能机器是能够在各类环境中自主地或交互地执行各种具有一定智能水平的任务(AnthropomorphicTasks)的机器。
定义2在计算机学科范围内,人工智能(学科)是计算机科学中涉及研究、设计和应用智能机器的一个分支。它的近期主要目标在于研究用机器来模仿和执行人脑的某些智力功能,并开发相关理论和技术。
定义3人工智能(能力)是智能机器所执行的通常与人类智能有关的智能行为,如判断、推理、证明、识别、感知、理解、通信、设计、思考、规划、学习和问题求解等思维活动。
定义4人工智能是关于在机器(不一定是计算机)上实现或部分实现各种自然智能(包括人类智能和各种生物智能)的研究。
显然,以上各种"定义"对人工智能的理解不尽一致。一方面,存在各种不同理解是很自然的事情;另一方面,人们可以通过比较这些不同的理解得到更好的启发。其中,最值得关注的问题是"计算与智能的联系与区别"。
算法有的学者定义计算机科学为研究算法的一门学科。因此研究算法无疑是计算机科学中最重要的基础领域之一。
在美国计算机教师协会最新发布的K-12计算机科学课程标准中,非常强调算法的学习。因为算法的思想不但可以让学生了解数学的观念,还能提升他们解决实际生活问题的能力。在K-2年级,计算机课程标准就列出了对二进制学习的要求;在3~5年级,课标要求学生了解一些简单的算法,如文本压缩算法、搜索算法、网络路由算法。在6~8年级,课标要求学生学习一些简单的逻辑原理。下面举例说明在K-8年级的一些算法范例:
①迷宫寻路(海龟图形);②一只狗取回一个被丢的球;③烘焙饼干;④从学校回家;⑤制造一个沙子城堡;⑥在依字母顺序的次序中安排一连串的字。
这些都可以培养学生的算法思想,发现解决问题的一般策略。
信息科学与计息机科学的关系.信息科学与计算机科学的区别如前所说,信息科学是以信息为研究对象,以信息过程的规律为研究内容,以信息科学方法论为指导,以研究扩展人的信息功能(特别是信息功能的整体——智能)为研究目标的学科。
虽然信息科学与计算机科学都是以信息为处理对象,但这两个学科有显著的不同。首先,研究的范畴不同。计算机科学目前主要的研究领域包括可计算性理论、算法设计与复杂性分析、密码学与信息安全、分布式计算理论、并行计算理论、生物信息计算、计算几何学、程序语言理论等,而信息科学研究的课题主要集中在以下几个方面:
信息理论,研究信息的概念、性质、功能、分类、描述和度量;信源理论和信息的获取,研究自然信息源和社会信息源,以及从信息源提取信息的方法和技术;信号(信息的表示)的测量、分析、设计、处理和显示;信息的传输、存储、检索、变换和处理;模式信息处理,研究对文字、图像、声音等信息的处理、分类和识别研制机器视觉系统和语音识别装置;知识信息处理,研究知识的表示、获取和利用,建立具有推理和自动解决问题能力的知识信息处理系统;决策和控制,在对信息的采集、分析、处理、识别和理解的基础上针对一定的目标做出判断、决策或控制,从而建立各种控制系统,管理信息系统和决策支持系统;信息科学方法论,由于研究对象、内容和目标与物质科学及能量科学不同,研究信息科学要研究自己特有的科学方法论。
其次,信息科学侧重于信息本质和基于信息本质的各种信息系统的研究,计算机科学则侧重于计算本质以及基于计算的各种工具的研究,并应用这些工具来设计和开发。
.信息科学与计算机科学的联系尽管信息科学与计算机科学有许多不同点,二者不能互相替代,但是归根结底计算机科学作为一门技术科学,它主要处理的对象都是信息,而信息科学处理的对象也是信息,因此这两个学科之间也有很紧密的关系。图26展示了一个最简单的信息系统应该具备的基本结构,系统通过感测技术从外部世界获取信息,这些信息利用通信技术传递到信息施效机构,信息施效机构根据所得到的信息对外部世界进行改造,从而使得外部世界发生变化。当外部世界发生变化后又会由于感测技术获取到新的信息,这些新信息又会通过信息施效机构对外部世界进行新一轮的改造。
图26最简信息系统模型仅仅有最简单的信息系统并不能解决人们遇到的所有问题,这是因为在这样的信息系统中信息施效机构的信息来源是直接从感测技术而来的没有经过加工的"生信息",为了更好地解决问题,人们在信息系统的模型中加入了新的元素——信息处理,这部分的工作是依靠计算机技术来完成的,这种信息系统的模式如图27所示。
图27具有信息加工处理能力的信息系统模型在这种情况下系统信息施效机构不再是处理从感测技术而来的"生信息",而是经过计算机针对问题、目标和"生信息"处理后的信息。这样的系统改造外部世界的能力得到了很大的提高。随着科学技术的进一步发展,人们已经不仅仅满足于图27所示系统的功能,而是对系统提出了更高的要求——要求系统具备智能,能够根据改造外部世界希望达到的目的智能的对信息进行处理、再生,完成原先机器无法完成的策略自动生成工作。其系统模型如图28所示。
图28智能信息系统模型综上所述,信息科学的发展离不开其他相关科学的支持,通信技术和计算机与智能技术处在整个信息技术的核心位置,感测技术和控制技术则是核心与外部世界之间的接口。没有通信和计算机与智能技术,信息技术就失去了基本的意义;而没有感测技术和控制技术,信息技术就失去了基本的作用:一方面没有信息的来源,另一方面也失去了信息的归宿。把信息技术单纯理解为"一个C"(Computer,计算机)、"两个C"(ComputerandCommunication,计算机与通信)和"三个C"(Computer,Communication,Control;计算机、通信、控制)都是不够全面的。信息技术是指感测、通信、计算机和智能以及控制等技术的整体。可见,信息技术的"四基元"是一个完整的体系。
而且信息科学与计算机科学都普遍存在于生物、社会、工业、国防、科学实验、日常生活和人类思维等各领域,因此这两门科学都对工程技术、社会经济和人类生活等方面产生巨大的影响。
目前随着信息科学与计算机科学的高速发展,促进了许多交叉学科的产生,例如,计算机科学与地球科学的融合产生了地理信息科学,计算机科学向生物和医学科学渗透产生了生命信息科学等,这些交叉学科的产生在推动独立学科向前发展的同时还解决了许多独立学科所不能解决的问题。计算机技术(包括硬件和软件技术)和人工智能技术使人们能更好地加工和再生信息。
在当今信息爆炸的时代,没有计算机支撑的系统难以处理海量的信息,因此一般也不会有太大的价值,同样也失去了交互的能力,这是现代信息管理工具所不能接受的。通过计算机技术可以增加可视化技术的发展,更便于实现人机交互。可见,信息科学与计算机科学有许多共同的内涵,同时又有各自的特点;信息科学与计算机科学相辅相成、密不可分,信息科学的研究与发展离不开计算机科学,同时又推动计算机科学的发展。