计算思维的基础知识.ppt

上传人:牧羊曲112 文档编号:6342187 上传时间:2023-10-18 格式:PPT 页数:45 大小:1.40MB
返回 下载 相关 举报
计算思维的基础知识.ppt_第1页
第1页 / 共45页
计算思维的基础知识.ppt_第2页
第2页 / 共45页
计算思维的基础知识.ppt_第3页
第3页 / 共45页
计算思维的基础知识.ppt_第4页
第4页 / 共45页
计算思维的基础知识.ppt_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《计算思维的基础知识.ppt》由会员分享,可在线阅读,更多相关《计算思维的基础知识.ppt(45页珍藏版)》请在三一办公上搜索。

1、第一章计算思维基础知识,2,一、科学的概念 达尔文对科学定义:科学就是整理事实,从中发现规律并做出结论。,1.1 科学与计算科学,达尔文的定义指出了科学的内涵,即事实与规律。科学要发现人所未知的事实,并以此为依据,实事求是。至于规律是指客观事物之间内在的本质的必然联系。,3,爱因斯坦认为:设法将人们杂乱无章的感觉经验加以整理,使之符合逻辑一致的思想系统,就叫科学。,科学作为一种存在的事物和完整的事物,是人类认知的事物中最客观的。但科学在形成过程中,作为追求的目的,却如同人类的其他认知一样,是主观的也是受心理制约的。,1.1 科学与计算科学,4,美国韦伯斯特新世界词典对科学定义:科学是从确定研究

2、对象的性质和规律这一目的出发,通过观察、调查和实验得到的系统知识。中国辞海对科学定义:科学是运用范畴、定理和定律等思维形式反映现实世界各种现象的本质和运动规律的知识体系。,科学的定义:反映现实世界中各种现象及其客观规律的知识体系。科学作为人类知识的最高形式,已成为人类社会普遍的文化理念。,1.1 科学与计算科学,5,科学的种类:,广义的科学概念是自然科学、人文科学和社会科学等所有学科的总称,狭义的科学概念则专指自然科学,有时甚至直指基础理论科学。,1.1 科学与计算科学,6,1.1 科学与计算科学,如何界定自然科学?物理学,化学,,计算科学?数学?,7,美国能源部报告认为:高端计算目前已经与理

3、论研究、实验手段一起,成为获得科学发现的三大支柱。因此,理论科学、实验科学和计算科学是推动人类文明进步和科技发展的重要途径。,1.1 科学与计算科学,8,二、计算科学与计算学科 计算科学/Computational Science:一种与数学模型构建、定量分析方法以及利用计算机来分析和解决科学问题的研究领域。(计算视角),1.1 科学与计算科学,计算科学/Computing Science:应用高性能计算能力预测和了解实际世界物质运动或复杂现象演化规律的科学,它包括数值模拟、工程仿真高效计算机系统和应用软件等。(计算机视角),9,1993:高性能计算与通信-HPCC计划 1996:加速战略计算

4、创新-ASCI计划 2002:高性能计算系统-HPCS计划,1.1 科学与计算科学,2005:计算科学-确保美国的竞争力报告建议:应将计算科学长期置于国家科学与技术领域中心的领导地位。计算科学是运用高级计算能力来理解和处理复杂问题的学科,已经成为对科学领导力、经济竞争力以及国家安全都至关重要的一门科学。我们相信计算科学是21世纪最重要的技术领域之一,因为它对整个社会的进步都是十分重要的。计算科学为研究者提供了一个独特的窗口,他们可以通过它来研究那些不切实际或很难解决的问题,为高经济效益提供高级工业方法,如高效设计比价格昂贵又费时的风洞试验更有效的机翼计算试验。,10,学科:指高校中讲授或研究知

5、识的分科。计算学科/Computational Discipline:利用计算科学对其他学科中的问题进行计算机模拟或者其他形式的计算而形成的诸如计算物理、计算化学等学科统称为计算学科。(计算视角),1.1 科学与计算科学,计算学科/Computing Discipline:是对描述和变换信息的算法过程进行系统的研究,它包括算法过程的理论、分析、设计、效率分析、实现和应用等。(计算机视角),11,计算学科是在数学和电子科学基础上发展起来的一门新兴学科,它既是一门理论性很强的学科,又是一门实践性很强的学科。,1.1 科学与计算科学,12,三、计算机科学与计算机学科,1.1 科学与计算科学,计算机科

6、学/Computer Science:研究计算机及其周围各种现象和规律的科学。分类:理论计算机科学、应用计算机科学。,计算机学科/Computer Discipline:即计算机科学与技术,它是研究计算机的设计与制造和利用计算机进行信息获取、表示、储存、处理、控制等的理论、原则、方法和技术的学科。计算机科学侧重研究现象与揭示规律。计算机技术侧重研制计算机及使用计算机进行信息处理的方法和技术手段。,13,一、思维的概念 思维是精神地球上最美丽的花朵。,1.2 思维与科学思维,2.思维的组成 思维原料(自然界)、思维主体(人脑)思维工具(认识的反映形式),1.思维的定义 思维是人脑对客观事物的一种

7、概括的、间接的反映,它反映客观事物的本质和规律。,14,3.思维的特征,1.2 思维与科学思维,15,4.思维的类型,1.2 思维与科学思维,16,二、科学思维 科学思维:指理性认识及其过程,即经过感性阶段获得的大量材料,通过整理和改造,形成概念、判断和推理,以便反映事物本质和规律。,简而言之,科学思维是人脑对科学信息的加工活动。,科学思维的主要表现:科学的理性思维科学的逻辑思维科学的系统思维科学的创造性思维,1.2 思维与科学思维,17,三、科学思维的分类,1.2 思维与科学思维,18,三种科学对应着三种思维:理论科学理论思维 理论思维又称逻辑思维,它以推理和演绎为特征,以数学学科为代表。实

8、验科学实验思维 实验思维又称实证思维,它以观察和总结自然规律为特征,以物理学科为代表。计算科学计算思维 计算思维又称构造思维,它以设计和构造为特征,以计算机学科为代表。,1.2 思维与科学思维,19,一、计算思维的定义 计算思维(Computational Thinking,CT)周以真认为:计算思维是运用计算机科学的基础概念去求解问题、设计系统和理解人类行为的涵盖了计算机科学之广度的一系列思维活动。,1.3 计算思维的概念,20,针对上述定义解释如下:求解问题中的计算思维 利用计算手段求解问题的过程是:首先要把实际的应用问题转换为数学问题,可能是一组偏微分方程,其次将PDE离散为一组代数方程

9、组,然后建立模型、设计算法和编程实现,最后在实际的计算机中运行并求解。前两步是计算思维中的抽象,后两步是计算思维中的自动化。,1.3 计算思维的概念,21,设计系统中的计算思维 R.Karp认为:任何自然系统和社会系统都可视为一个动态演化系统,演化伴随着物质、能量和信息的交换,这种交换可以映射为符号变换,使之能用计算机进行离散的符号处理。当动态演化系统抽象为离散符号系统后,就可以采用形式化的规范描述,建立模型、设计算法和开发软件来揭示演化的规律,实时控制系统的演化并自动执行。,1.3 计算思维的概念,22,理解人类行为中的计算思维 王飞跃认为(中科院):计算思维是基于可计算的手段,以定量化的方

10、式进行的思维过程。计算思维就是应对信息时代新的社会动力学和人类动力学所要求的思维。在人类的物理世界、精神世界和人工世界等三个世界中,计算思维是建设人工世界需要的主要思维方式。利用计算手段来研究人类的行为,可视为社会计算,即通过各种信息技术手段,设计、实施和评估人与环境之间的交互。,1.3 计算思维的概念,23,波尔普的三个世界观点,1.3 计算思维的概念,24,二、计算思维的详细描述,计算思维是通过约简、嵌入、转化和仿真等方法,把一个看来困难的问题重新阐释成一个人们知道怎样解决的问题。计算思维是一种递归思维,是一种并行处理,是一种把代码译成数据又能把数据译成代码,是一种多维分析推广的类型检查方

11、法。计算思维是一种采用抽象和分解来控制庞杂的任务或进行巨大复杂系统设计的方法,是一种基于关注点分离的方法。,1.3 计算思维的概念,25,计算思维是一种选择合适的方式去陈述一个问题,或对一个问题的相关方面建模并使其易于处理的思维方法。计算思维是按照预防、保护及通过冗余、容错和纠错方式,从最坏情况进行系统恢复的一种思维方法。计算思维是利用启发式推理寻求解答,也即在不确定情况下的规划、学习和调度的思维方法。计算思维是利用海量数据来加快计算,在时间和空间之间,在处理能力和存储容量之间进行折中的思维方法。,1.3 计算思维的概念,26,三、计算思维的特征,1.3 计算思维的概念,1.概念化,不是程序化

12、 计算机科学不是计算机编程。像计算机科学家那样去思维意味着远远不仅限于计算机编程,还要求能够在抽象的多个层次上思维。计算机科学不只是关注计算机,就像音乐产业不只是关注麦克风一样。2.根本的,不是刻板的技能 计算思维是一种根本技能,是每一个人为了在现代社会中发挥职能所必须掌握的。刻板的技能意味着简单的机械重复。,27,3.是人的,不是计算机的思维 计算思维是人类求解问题的一条途径,但决非要使人类像计算机那样地思考。计算机枯燥且沉闷,人类聪颖且富有想象力。是人类赋予计算机激情。计算机赋予人类强大的计算能力,人类应该好好的利用这种力量去解决各种需要大量计算的问题。4.是思想,不是人造物 不只是将生产

13、的软硬件等人造物到处呈现给我们的生活,更重要的是计算概念,它被人们用来问题求解、日常生活的管理,以及与他人进行交流和互动。,1.3 计算思维的概念,28,5.数学和工程思维的互补与融合 计算机科学在本质上源自数学思维,它的形式化基础建筑于数学之上。计算机科学又从本质上源自工程思维,因为我们建造的是能够与实际世界互动的系统。所以设计思维是数学和工程思维的互补与融合。6.面向所有的人,所有地方 当计算思维真正融入人类活动的整体时,它作为一个问题解决的有效工具,人人都应当掌握,处处都会被使用。,1.3 计算思维的概念,29,四、计算思维的本质 抽象(Abstract)、自动化(Automation)

14、。它反映了计算的根本问题,即什么能被有效的自动进行。,1.3 计算思维的概念,计算是抽象的自动执行,自动化需要某种计算机去解释抽象。从操作层面上讲,计算就是如何寻找一台计算机去求解问题,隐含地说就是要确定合适的抽象,选择合适的计算机去解释执行该抽象,后者就是自动化。,30,五、计算思维与计算机的关系,1.3 计算思维的概念,计算思维虽然具有计算机的许多特征,但是计算思维本身并不是计算机的专属。实际上,即使没有计算机,计算思维也会逐步发展,甚至有些内容与计算机没有关系。但是,正是由于计算机的出现,给计算思维的发展带来了根本性的变化。,31,一、生物学 计算机科学许多领域渗透到生物信息学中的应用研

15、究,包括数据库、数据挖掘、人工智能、算法、图形学、软件工程、并行计算和网络技术等都被用于生物计算的研究。,1.4 计算思维的应用领域,从各种生物的DNA数据中挖掘DNA序列自身规律和DNA序列进化规律,可以帮助人们从分子层次上认识生命的本质及其进化规律 DNA序列实际上是一种用四种字母表达的“语言”。,32,二、脑科学 脑科学是研究人脑结构与功能的综合性学科它以揭示人脑高级意识功能为宗旨,与心理学、人工智能、认知科学和创造学等有着交叉渗透。,1.4 计算思维的应用领域,美国神经生理学家罗杰斯佩里进行了裂脑实验,提出大脑两半球功能分工理论。他认为:大脑左右半球完全可以以不同的方式进行思维活动,左

16、脑侧重于抽象思维,如逻辑抽象、演绎推理和语言表达等;右脑侧重于形象思维,如直觉情感、想象创新等。,33,三、化学 计算机科学在化学中的应用包括:化学中的数值计算、化学模拟、化学中的模式识别、化学数据库及检索、化学专家系统等。,1.4 计算思维的应用领域,基于非结构网格和分区并行算法,为求解多组分化学反应流动守恒方程组开发了单程序多数据流形式的并行程序,对己有的预混可燃气体中高速飞行的弹丸的爆轰现象进行了有效的数值模拟。,34,四、经济学 计算博弈论正在改变人们的思维方式。囚徒困境是博弈论专家设计的典型示例,但是囚徒困境博弈模型可以用来描述两家企业的价格大战等许多经济现象。,1.4 计算思维的应

17、用领域,35,五、艺术 计算机艺术是科学与艺术相结合的一门新兴的交叉学科,它包括绘画、音乐、舞蹈、影视、广告、书法模拟、服装设计、图案设计、产品和建筑造型设计以及电子出版物等众多领域。,1.4 计算思维的应用领域,36,六、其他领域,1.4 计算思维的应用领域,工程学(电子、土木、机械、航空航天等):计算高阶项可以提高精度,进而降低重量、减少浪费并节省制造成本;波音777飞机完全是采用计算机模拟测试的,没有经过风洞测试。社会科学:社交网络是MySpace和YouTube等发展壮大的原因之一;统计机器学习被用于推荐和声誉服务系统,例如Netflix和联名信用卡等。,地质学、天文学、数学、医学、法

18、律、娱乐、体育等,37,1.5 计算学科的典型问题,一、排序问题 排序是把给定数据集合中的元素按照一定的标准来安排先后次序的过程。,选择排序算法:对给定的一个数据表,算法从第一个元素开始扫描整个列表,找到最小或最大的元素,并将其与第一个位置的元素交换。然后算法从第二个位置的元素开始扫描剩下的列表,找到次小或次大的元素,并将其与第二个位置的元素交换。如此循环,直到所有的元素都被排好序为止。,选择排序算法是由一个双层循环控制,算法时间复杂度是O(n2),38,部分排序算法的时间效率比较(单位:毫秒),1.5 计算学科的典型问题,每一种排序算法对时间的效率和空间的要求不尽相同,没有哪一种是绝对最优的

19、,在实用时需要根据不同情况适当选用,也可多种方法结合使用。,39,二、汉诺塔问题,1.5 计算学科的典型问题,印度古老传说:在世界中心贝拿勒斯的圣庙里,一块黄铜板上插着三根宝石针A、B和C。印度教的主神梵天在创造世界时,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔问题。,不论白天黑夜,总有一个僧侣在按下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有金片移到另外一根针上时,世界将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽。,40,不管这个传说的可信度有多大,如果仅考虑把64片金片,由一根针上移到另一根针上,并且始终保

20、持上小下大的顺序。这需要多少次移动呢?这里需要使用递归算法。假设有n片,移动次数是f(n)显然f(1)=1,f(2)=3,f(3)=7,且f(k+1)=2*f(k)+1 不难证明f(n)=2n-1 当n=64时,次 如果每秒钟移动一次,共需多长时间呢?一年有31536000秒,则亿年,1.5 计算学科的典型问题,41,三、国王的婚姻,1.5 计算学科的典型问题,国王:艾述(喜爱数学)宰相:孔唤石(数学家)公主:秋碧贞楠(邻国)公主:求出48770428644836899的一个真因子国王:2,3,4,30000多数据(一天)公主:验证一下,223092871宰相:将全国百姓按自然数的顺序编号,百

21、姓用自己的编号去除公主的数,谁除尽来领赏。,童话说明:国王本人计算(串行算法,时间复杂性)全国百姓计算(并行算法,空间复杂性),42,四、旅行商问题 旅行商问题(TSP)的描述:一位商人去n个城市推销货物,所有城市走一遍后,再回到起点,问如何事先确定好一条最短的路线,使其旅行的费用最少。,1.5 计算学科的典型问题,路径ABCDA的总距离是:4+2+4+2=12路径ABDCA的总距离是:4+6+4+6=20路径ACBDA的总距离是:6+2+6+2=16路径ACDBA的总距离是:6+4+6+4=20路径ADCBA的总距离是:2+4+2+4=12路径ADBCA的总距离是:2+6+2+6=16,43

22、,城市数目为4时,组合路径数为6 城市数目为n时,组合路径数为(n-1)!当城市数目不多时要找到最短距离的路线并不难,但随着城市数目的不断增大,组合路线数将呈指数级数规律急剧增长,以至到达无法计算的地步,这就是所谓的组合爆炸问题。,1.5 计算学科的典型问题,假如城市的数目增为20个,组合路径数则为(20-1)!1.2161017 若计算机以每秒检索1000万条路线的速度计算,也需要花上386年的时间。,44,本章小结,科学的定义和种类理论科学、实验科学、计算科学计算科学和计算学科(不同视角)计算机科学知识体(14个知识领域)计算机科学与计算机学科(不同视角)计算机科学与技术一级学科、二级学科思维的定义、组成、特征和类型科学思维的定义和分类理论思维、实验思维、计算思维,45,计算思维的定义、详细描述、特征和本质 计算思维与计算机的关系 计算思维的应用领域(生物学、脑科学、化学、经济学、艺术、工程学、社会科学等)计算学科的典型问题(通过排序问题、汉诺塔问题、国王的婚姻、旅行商问题来说明人所固有的能力与局限性、计算机的计算能力与局限性,以及问题到底有多复杂),本章小结,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号