第一讲计算思维教学目标了解科学、计算、计算科学与计算学科、思维与计算思维的基本概念了解计算学科与其它学科之间的关系了解计算思维的作用,学会计算思维的基本方法,掌握其基本技能了解运用计算机求解问题的基本思路和一般过程知识要点计算、可计算性以及计算学科的概念思维、计算思维进行问题求解的一般过程计算思维在人类社会的经济、科技等各领域发展中的作用和对人的能力发展的影响计算科学研究与应用(普适计算、网格计算和云计算、人工智能、物联网等)4/45一、科学的概念达尔文对科学定义:科学就是整理事实,从中发现规律并做出结论。科学与计算科学达尔文的定义指出了科学的内涵,即事实与规律。科学要发现人所未知的事实,并以此为依据,实事求是。至于规律是指客观事物之间内在的本质的必然联系。5/45爱因斯坦认为:设法将人们杂乱无章的感觉经验加以整理,使之符合逻辑一致的思想系统,就叫科学。科学作为一种存在的事物和完整的事物,是人类认知的事物中最客观的。但科学在形成过程中,作为追求的目的,却如同人类的其他认知一样,是主观的也是受心理制约的。科学与计算科学6/45美国《韦伯斯特新世界词典》对科学定义:科学是从确定研究对象的性质和规律这一目的出发,通过观察、调查和实验得到的系统知识。中国《辞海》对科学定义:科学是运用范畴、定理和定律等思维形式反映现实世界各种现象的本质和运动规律的知识体系。科学的定义:反映现实世界中各种现象及其客观规律的知识体系。科学作为人类知识的最高形式,已成为人类社会普遍的文化理念。科学与计算科学7/45科学的种类:不同分类方式类别按照研究对象的不同自然科学、社会科学、思维科学按照与实践联系的不同理论科学、技术科学、应用科学按照人类对自然规律利用的直接程度自然科学、实验科学按照人类目标的不同广义的科学、狭义的科学广义的科学概念是自然科学、人文科学和社会科学等所有学科的总称,狭义的科学概念则专指自然科学,有时甚至直指基础理论科学。科学与计算科学8/45类别解释或说明自然科学NaturalScience以自然界为主要研究对象,运用实证、理性和臻美等方法,揭示自然的奥秘,获取自然的真知。人文科学humanities以人类作为主要研究对象,运用实地考察、诠释和启示等方法,认识人、人性和人生的意义,提升人的精神素质和思想境界。社会科学SocialScience以社会领域为主要研究对象,运用调查、统计和归纳等方法,把握社会规律,解决社会问题,促进社会进步。科学与计算科学如何界定自然科学?物理学,化学,……计算科学?数学?9/45美国能源部报告认为:高端计算目前已经与理论研究、实验手段一起,成为获得科学发现的三大支柱。因此,理论科学、实验科学和计算科学是推动人类文明进步和科技发展的重要途径。科学与计算科学10/45二、计算科学与计算学科计算科学/ComputationalScience:一种与数学模型构建、定量分析方法以及利用计算机来分析和解决科学问题的研究领域。(计算视角)科学与计算科学计算科学/ComputingScience:应用高性能计算能力预测和了解实际世界物质运动或复杂现象演化规律的科学,它包括数值模拟、工程仿真高效计算机系统和应用软件等。(计算机视角)11/451993:高性能计算与通信--HPCC计划1996:加速战略计算创新--ASCI计划2002:高性能计算系统--HPCS计划科学与计算科学2005:计算科学--确保美国的竞争力报告建议:应将计算科学长期置于国家科学与技术领域中心的领导地位。计算科学是运用高级计算能力来理解和处理复杂问题的学科,已经成为对科学领导力、经济竞争力以及国家安全都至关重要的一门科学。我们相信计算科学是21世纪最重要的技术领域之一,因为它对整个社会的进步都是十分重要的。计算科学为研究者提供了一个独特的窗口,他们可以通过它来研究那些不切实际或很难解决的问题,为高经济效益提供高级工业方法,如高效设计比价格昂贵又费时的风洞试验更有效的机翼计算试验。12/45学科:指高校中讲授或研究知识的分科。计算学科/ComputationalDiscipline:利用计算科学对其他学科中的问题进行计算机模拟或者其他形式的计算而形成的诸如计算物理、计算化学等学科统称为计算学科。(计算视角)科学与计算科学计算学科/ComputingDiscipline:是对描述和变换信息的算法过程进行系统的研究,它包括算法过程的理论、分析、设计、效率分析、实现和应用等。(计算机视角)13/45计算学科是在数学和电子科学基础上发展起来的一门新兴学科,它既是一门理论性很强的学科,又是一门实践性很强的学科。科学与计算科学14/45三、计算机科学与计算机学科科学与计算科学计算机科学/ComputerScience:研究计算机及其周围各种现象和规律的科学。分类:理论计算机科学、应用计算机科学。计算机学科/ComputerDiscipline:即计算机科学与技术,它是研究计算机的设计与制造和利用计算机进行信息获取、表示、储存、处理、控制等的理论、原则、方法和技术的学科。计算机科学侧重研究现象与揭示规律。计算机技术侧重研制计算机及使用计算机进行信息处理的方法和技术手段。举案引思1、皇帝会答应大臣的请赏?古代皇帝和他的大臣下象棋,大臣赢了。皇帝问大臣:“你想要得到什么奖赏?”大臣向皇帝说:“微臣不敢奢求,只要皇上按棋盘的格子数,依次给予1粒黄豆,2粒黄豆,4粒黄豆,8粒黄豆,16粒黄豆,…….按此规律(每次给出黄豆的数目是前一次给出黄豆数目的2倍)给64次就无比地感谢皇上了”。请问皇帝会答应这个大臣的请赏吗?你能很快(10秒内)给出答案吗?2、到底谁说真话?张三说:李四在说谎;李四说:王五在说谎;王五说:张三和李四都在说谎。已知三人中只有一人说真话。举案引思3、如图1-1所示,从哪一点出发开始旅行既能游览每一个景点(A-J表示景点,连线表示通路),又不走重复路线?1.1什么是思维,思维有哪些种类,思维对人的能力的影响1、思维的概念:思维是人脑对现实事物的概括、加工,最终揭示其本质特征和内在规律的活动;人脑对信息的加工处理包括分析、抽象、综合、概括等。思维是人的高级心理活动,认识事物的高级形式;是人和动物的根本区别之一,是人的重要本质所在。人类文明,人化的世界,重要源泉是人的思维。2、思维的作用:思维对于知识具有本原作用。思维是人类获得知识的途径,加工知识的机器。3、思维的分类:思维分类方法思维的形式从思维的进程方向可分为横向思维、纵向思维、发散思维、收敛思维从思维的抽象程度可分为直观行动思维(操作思维、实践思维)、形象思维、抽象思维(逻辑思维或理论思维)从思维的形成与应用领域可分为日常思维、科学思维科学思维是指形成并运用于科学认识活动的人脑,借助信息符号对感性认识材料,经过整理、归纳、加工处理,形成概念、分析、判断和推理,揭示事物的本质和内在规律的思维活动。简而言之,科学思维就是人们认识自然界、社会和人类意识的本质和客观规律性的高级思维活动。特点是比日常思维更具理性、客观性、严谨性、系统性与科学性。科学思维的分类理论思维实证思维计算思维对事物的感性认识资料,经过抽象、概括,形成描述事物本质的概念,主要以推理和演绎的方法,探寻概念之间相互联系的一种思维活动。理论源于数学,理论思维支撑着所有的学科领域。通过观察和实验的手段,揭示自然规律法则的一种思维方法。特征是观察、整理、归纳、对比和验证。人们往往要借助于某些特定的设备、工具,通过实验,获取资料,以便分析研究。例如星球运行规律与万有引力的发现,设备性能的物理测量、化学的分解与化合、生物的解剖等实验,就是认识事物本质和变化规律的有效手段和思维方法。又叫构造思维,是指从具体的算法设计规范入手,通过算法过程的构造与实施,来解决给定问题的一种思维方法。目前被广泛接受的计算思维概念是2006年美籍华裔计算机科学家周以真教授首次明确提出的定义:计算思维就是运用计算机科学的基础概念去求解问题、设计系统和理解人类行为的涵盖了计算机科学之广度的一系列思维活动。1.2计算思维的本质、特征,及其对人能力的影响1、本质:抽象(Abstract)和自动化(Automation)2、特征:是概念化,不是程序化计算机科学不是计算机编程。像计算机科学家那样去思维,意味着远远不是只能为计算机编程,还要求能够在抽象的多个层次上思维。计算机科学不只是关于计算机,就像音乐产业不只是关于钢琴一样。是根本的,不是刻板的技能是人的,不是计算机的思维是思想,不是人造品是数学思维和工程思维的互补与融合面向所有的人,所有地方关注依旧亟待理解和解决的智力上及有挑战性并且引人入胜的科学问题。3、计算思维品质对人的能力影响作用问题抽象层次的能力是衡量人的思维品质的重要方面。根据求解问题的需要,在分析问题的过程中,人们可以对问题进行多层次的抽象,将注意力集中在感兴趣的抽象层次或关系相对密切的上下层,抛弃那些不感兴趣的(不重要的)层次或细节,使问题分析相对简单,以控制问题解决的复杂性。抽象的概念是由具体概念依其“共性”而产生的,把具体概念的诸多个性排出,集中描述其共性,就会产生一个抽象性的概念。人的大脑思维方法和思维品质的差异决定着:同一问题解决办法和处理方式各不相同。其付出的代价与取得效果甚至可能天壤之别。4、计算思维的应用领域计算思维是每个人应当具备的基本技能,也是创新人才的基本要求和专业素质,每个人都应当学习和应用计算思维。正如印刷出版促进了阅读、写作和算术的传播一样,计算和计算机也促进着计算思维的传播。迄今为止,计算思维不仅渗透到每个人的生活,而且对生物信息学、生物计算、专家系统、经济学等学科领域产生了重大影响,在科技创新与教育教学中起着非常重要的作用。计算思维领域提出的新思想、新方法不断地促进自然科学、工程技术和社会经济等领域产生革命性的发展。典型的应用领域有:生物信息学仿生计算专家系统数值计算工程、模型模拟统计模式识别虚拟现实1.3科学与计算科学科学是反映现实世界中各种现象的本质和运动规律的知识体系。“科学”在现实生活中,被人们普遍简单朴实而又模糊地认为就是“真实的”、“客观的”意思。1、科学的分类分类方式划分的类型按照研究对象的不同自然科学、社会科学、思维科学按照人类目标的不同广义科学、狭义科学按照人类对自然规律利用的直接程度自然科学、实验科学按照与实践联系的不同理论科学、技术科学、应用科学按照研究手段和方法的不同理论科学、实验科学、计算科学2、计算科学与计算学科从计算的角度来看,计算科学(ComputationalScience)又称之为科学计算,是一种与数学建模、定量分析方法和采用计算机进行分析、解决科学问题的研究领域。从计算机的角度来说,计算科学(ComputingScience)是应用高性能计算能力预测和了解客观世界物质运动或复杂现象演化规律的科学,它包括数值模拟、工程仿真、高效计算机系统和应用软件等。3、学科一是指学术的分类;指一定科学领域或一门科学的分支。如自然科学中的物理学、化学;社会科学中的法学、社会学等。二是“教学科目”的简称,也称“科目”。教学中按逻辑程序组织的一定知识和技能范围的单位。如中小学的数学、物理、语文、音乐等;高等学校中讲授或研究知识的分科。从计算的角度来说,利用计算科学对其它学科的问题进行计算机模拟或者其它形式的计算而形成的学科(诸如计算化学、生物计算或计算生物、计算物理等学科统)称为计算学科(ComputationalDiscipline)。从计算机的角度来说,计算学科(ComputingDiscipline)是对描述和变换信息的算法过程进行系统的研究,它包括算法过程的理论、分析、设计、效率分析、实现和应用等。计算学科来源于对数理逻辑、算法理论、计算模型和自动计算机器的研究,形成于20世纪40年代。4、计算学科计算学科的基本问题是“什么能被(有效地)自动执行”,讨论可行性的有关内容,包括:什么是(实际)可计算的,什么是(实际)不可计算的,如保证计算的自动性、有效性