1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,本资料仅供参考,不能作为科学依据。谢谢。本资料仅供参考,不能作为科学依据。本资料仅供参考,不能作为科学依据。谢谢。本资料仅供参考!,计算科学导论(三),计算机与信息学院,蒋川群 13002187038 cqjiang,10月,1/40,/10/6,1,计算科学各主领域及其基本问题,离散结构,程序设计基础,算法与复杂性,体系结构,操作系统,网络计算,程序设计语言,人机交互,图形学和可视化计算,智能系统,信息系统,软件工程,社会和职业问题,科学计算,2/40,/10/6,2,离散结构,计算学科根本问题是“能
2、行性”问题。而凡是与“能行性”相关讨论,都是处理离散对象,许多领域工作都要用到离散结构概念,包含:集合论、数理逻辑、代数系统、图论和组合数学等主要内容,计算科学各主领域及其基本问题,3/40,/10/6,3,离散结构,离散结构内容在数据结构、算法有广泛应用,在形式规约、验证以及密码学研究和学习中,需要有生成并了解形式证实能力,在计算机网络、操作系统、编译系统等领域要用到图论概念,在软件工程和数据库等领域需要使用集合论概念,计算科学各主领域及其基本问题,4/40,/10/6,4,程序设计基础,程序设计实践中所需要基本技能和概念组成,包含:基本程序设计概念、基本数据结构、算法程序等,基本问题:,对
3、给定问题,怎样进行有效描述并给出算法,怎样正确选择数据结构?,怎样进行设计、编码、测试和调试程序?,计算科学各主领域及其基本问题,5/40,/10/6,5,算法与复杂性,算法是计算机科学与软件工程基础,现实世界中任何软件系统性能仅依赖于两个方面:,所选择算法,在各不一样层次实现效率,计算科学各主领域及其基本问题,6/40,/10/6,6,算法与复杂性,算法研究能够深刻了解问题本质和可能求解技术,而不依赖于详细程序设计语言、程序设计模式、计算机硬件或其它任何与实现相关内容,计算一个主要内容就是依据特定目标选择适当算法并加以利用,同时认识到可能存在不适当算法,计算科学各主领域及其基本问题,7/40
4、,/10/6,7,算法与复杂性,依赖于对那些含有良好定义主要问题求解算法了解,以及认识到这些算法优缺点和它们在特定环境中适宜性,效率是贯通该领域关键概念,计算科学各主领域及其基本问题,8/40,/10/6,8,算法与复杂度,基本问题:,对于给定问题类,最好算法是什么?要求存放空间和计算时间有多少?空间和时间怎样折中?,访问数据最好方法是什么?,算法最好和最坏情况是什么?,算法平均性能怎样?,算法通用性怎样?,计算科学各主领域及其基本问题,9/40,/10/6,9,体系结构,对计算机系统功效部件、功效特定、性能和相互作用有一定了解,为了结构程序,需要了解计算机体系结构,从而使该程序在一台真正机器
5、上更有效地运行,在选择用于应用系统时,应该了解各种部件之间折中,如,CPU,、时钟频率与内存大小折中,7.4,计算科学各主领域及其基本问题,10/40,/10/6,10,体系结构,基本问题:,实现处理器、内存和机内通信方法是什么?,怎样设计和控制大型计算系统,而且使其令人相信,尽管存在错误和失败,但它依然是按照我们意图工作?,哪种类型体系结构能有效地包含许多在一个计算中能并行工作处理元素?,怎样度量性能?,7.4,计算科学各主领域及其基本问题,11/40,/10/6,11,操作系统,操作系统是对计算机硬件行为抽象,程序员用它来对硬件进行控制,操作系统还负责管理计算机用户间共享资源(如文件等),
6、操作系统及其抽象机制相对于应用软件愈加复杂,要求学生在系统学习操作系统内部算法实现和数据结构之前,对操作系统有深入了解,计算科学各主领域及其基本问题,12/40,/10/6,12,操作系统,操作系统课程不但要强调操作系统使用(外部特征),还要强调它设计和实现(内部特征),操作系统中许多思想在其它计算科学领域用广泛应用,比如:并行程序设计、算法设计与实现、虚拟环境创建、网络高速缓存、安全系统创建、网络管理等,计算科学各主领域及其基本问题,13/40,/10/6,13,操作系统,基本问题:,在计算机系统操作每一个级别上,可见对象和允许进行操作各是什么?,对每一类资源,能够对其进行有效利用最小操作集
7、是什么?,怎样组织接口才能使得用户只需与抽象资源而非硬件物理细节打交道?,计算科学各主领域及其基本问题,14/40,/10/6,14,操作系统,基本问题:,作业调度、内存管理、通信、软件资源访问、并发任务间通信以及可靠性与安全控制策略是什么?,经过少数结构规则重复使用进行系统功效扩展标准是什么?,计算科学各主领域及其基本问题,15/40,/10/6,15,网络计算,包含:计算机通信协议概念和协议、多媒体系统、,Web,标准和技术、网络安全、移动计算以及分布式系统等,要精通这个领域,必须有理论和实践两方面知识,实践教学包含:数据搜集和综合、建模、源代码级协议分析、网络数据包监控、软件结构以及对备
8、选设计模型评定等,计算科学各主领域及其基本问题,16/40,/10/6,16,算法与复杂度,基本问题:,网络中数据怎样进行交换?,网络协议怎样验证?,怎样确保网络安全?,分布式计算性能怎样评价?,分布式计算怎样组织才能够使经过通信网连接在一起自主计算机参加到一项计算中,而网络协议、主机地址、带宽和资源则含有透明性?,计算科学各主领域及其基本问题,17/40,/10/6,17,程序设计语言,是程序员与计算机交流主要工具,一个程序员不但要最少掌握一个程序设计语言,更要了解各种程序设计语言不一样格调,为了快速掌握一门新语言,程序员必须了解程序设计语言语义以及在不一样程序设计范式之间设计上折中,为了了
9、解程序设计语言实用一面,还要求含有程序设计语言翻译和诸如存放分配等方面基础知识,计算科学各主领域及其基本问题,18/40,/10/6,18,程序设计语言,基本问题:,语言(数据类型、操作、控制结构、引进类型和操作机制)表示虚拟机可能组织结构是什么?,语言怎样定义机器?机器怎样定义语言?,什么样表示法(语义)能够有效地用于描述计算机应该做什么?,7.4,计算科学各主领域及其基本问题,19/40,/10/6,19,人机交互,重点在于了解作为交互式对象人行为,知道怎样使用以人为中心方法来开发和评价交互式软件系统,基本问题:,表示物体和自动产生供阅览照片有效方法是什么?,接收输入和给出输出有效方法是什
10、么?,怎样才能降低产生误解和由此产生人为错误风险?,图表和其它工具怎样才能经过存放在数据集中信息去了解物理现象?,计算科学各主领域及其基本问题,20/40,/10/6,20,图形学和可视化计算,计算机图形学,研究怎样用计算机生成、处理和显示图形一个学科分支领域,目标是对人视觉中心及其它认知中心有深入深入了解,详细要求:,要求表示信息和结构应有利于图像产生和观察,要求方便用户,使之能够经过精心设计设备和技术与模型进行交互,要求提供绘制模型技术,要求设计有利于图像保留计算,计算科学各主领域及其基本问题,21/40,/10/6,21,图形学和可视化计算,可视化,指使用计算机图形学和图像处理技术,将数
11、据转换成图形或图像在屏幕上显示,并进行交互处理理论、方法和技术,可视化技术主要是探索人类视觉能力以及声音和触觉(触摸);其目标在于,经过它们深入发觉人类信息处理过程,计算科学各主领域及其基本问题,22/40,/10/6,22,图形学和可视化计算,虚拟现实,是综合利用计算机三维图形技术、仿真技术、传感技术、显示技术、网络技术等合成一个虚拟环境,这种环境是计算机生成一个以视觉感受为主,也包含视觉、触觉综合可感知人工环境,是计算机与用户之间一个更为理性化人,机界面形式。,计算科学各主领域及其基本问题,23/40,/10/6,23,图形学和可视化计算,计算机视觉,研究怎样利用计算机实现人视觉功效(包含
12、对客观世界三维场景感知、识别和了解)一个分支领域,对计算机视觉了解和实践取决于计算学科中关键概念,但也和物理、数学和心理学等亲密相关,计算科学各主领域及其基本问题,24/40,/10/6,24,图形学和可视化计算,基本问题:,怎样选择支撑图像产生以及信息浏览更加好模型,?,怎样提取科学(计算和医学)和更抽象相关数据?,图像形成过程解释和分析方法,计算科学各主领域及其基本问题,25/40,/10/6,25,智能系统,人工智能关注是自主系统设计和分析,有些是软件系统,而有些系统还配有传感器和传送器(如机器人或航天器),一个智能系统要有感知环境、执行既定任务以及与其它代理进行交流能力,这些能力包含计
13、算机视觉、规划和动作、机器人学、多代理系统、语音识别和自然语言了解等,计算科学各主领域及其基本问题,26/40,/10/6,26,智能系统,智能系统依赖于一整套关于问题求解、搜索算法以及机器学习技术专门知识表示机制和推理机制,人工智能为求解其它方法难以处理或者不太现实问题提供了一些技术,包含:启发式搜索和规划算法、知识表示形式化机制、机器学习技术以及语言了解、计算机视觉、机器人学等领域中所包含感知和动作问题方法,要求学生能够针对特定问题选择适当方法处理问题,计算科学各主领域及其基本问题,27/40,/10/6,27,智能系统,基本问题:,基本行为模型是什么?怎样建造模拟它们机器,?,规则评定、
14、推理、演绎和模式计算在多大程度上描述了智能?,经过这些方法模拟行为机器最终性能怎样?,计算科学各主领域及其基本问题,28/40,/10/6,28,智能系统,基本问题:,传感数据怎样编码才使得相同模式有相同代码?,电机编码怎样与传感编码相关联?,学习系统体系结构怎样?,这些系统是怎样表示它们对这个世界了解?,计算科学各主领域及其基本问题,29/40,/10/6,29,信息系统,包括:信息获取、信息数字化、信息表示、组织、转化和信息表现;有效地访问和更新存放信息算法、数据建模和数据抽象以及物理文件存放技术、共享数据信息安全、隐私性、完备性和保护,能够建立概念和物理上数据模型,对于给定问题,能够选择
15、和实现适合信息管了解决方案,计算科学各主领域及其基本问题,30/40,/10/6,30,信息系统,基本问题:,使用什么样建模概念来表示数据元素及其相互关系,?,怎样把基本操作(如存放、定位、匹配和恢复)组合成有效事务?,这些事务怎样才能与用户有效地进行交互?,高级查询怎样翻译成高质量程序?,哪种机器体系结构能够进行有效恢复和更新?,计算科学各主领域及其基本问题,31/40,/10/6,31,信息系统,基本问题:,怎样保护数据,以防止非授权访问、泄露和破坏?,怎样保护大型数据库,以防止因为同时更新引发不一致性?,当数据分布在许多机器上时怎样保护数据、确保性能?,文本怎样索引和分类才能够进行有效恢
16、复?,计算科学各主领域及其基本问题,32/40,/10/6,32,软件工程,是一门关于怎样有效构建满足用户需求软件系统所需理论、知识和实践学科,适应各种软件开发,包含:需求分析和规格、设计、构建、测试、运行和维护等软件系统生存周期全部阶段,使用工程化方法、过程、技术和度量标准,计算科学各主领域及其基本问题,33/40,/10/6,33,软件工程,工含有管理软件开发工具、软件产品分析和建模、质量评定和控制工具、确保有条不紊且有控制实施软件进化和复用工具,软件可由一个开发者或者一组开发者进行开发,他们需要选择最适合已知开发环境工具和方法,质量、进度、成本等要素对软件系统生产都是十分主要,计算科学各
17、主领域及其基本问题,34/40,/10/6,34,软件工程,基本问题:,程序和程序设计系统发展原理是什么,?,怎样证实一个程序或系统满足其规格说明?,怎样编写不忽略主要情况且能用于安全分析规格说明?,软件系统是怎样历经不一样各代进行演化?,怎样从可了解性和易修改性着手设计软件?,计算科学各主领域及其基本问题,35/40,/10/6,35,社会和职业问题,基本问题:,计算学科本身文化、社会、法律和道德问题,相关计算社会影响问题以及怎样评价可能一些答案问题,哲学问题,技术问题以及美学问题,计算科学各主领域及其基本问题,36/40,/10/6,36,科学计算,数值计算,许多有价值思想和技术,包含数值
18、表示精度、误差分析、数值技术、建模和仿真。,领域:分子力学、流体力学、天体力学、经济预测、优化问题、材料结构化分析、生物信息学、计算生物学、地质建模、,X,断层摄影术计算机化,计算科学各主领域及其基本问题,37/40,/10/6,37,科学计算,基本问题:,怎样准确地以有限离散过程近似表示连续和无限离散过程?,怎样处理这种近似所产生错误?,给定某一类方程在某准确度水平上能以多快速度求解?,计算科学各主领域及其基本问题,38/40,/10/6,38,科学计算,基本问题:,怎样实现方程符号操作,如积分、微分以及最小项归约?,怎样把这些问题答案包含到一个有效、可靠、高质量数学软件包中?,计算科学各主领域及其基本问题,39/40,/10/6,39,祝大家:身,健 康!,40/40,/10/6,40,