计算理论与计算模型精选PPT.ppt
《计算理论与计算模型精选PPT.ppt》由会员分享,可在线阅读,更多相关《计算理论与计算模型精选PPT.ppt(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算理论与计算模型1第1页,此课件共48页哦一、计数与计算一、计数与计算 手指、石头、结绳计数,算筹计算手指、石头、结绳计数,算筹计算2.1 计算的几种视角圆周率:10万亿位2第2页,此课件共48页哦 许多计算领域的许多计算领域的求解问题求解问题,如计算物理学、计算力学、,如计算物理学、计算力学、计算化学和计算经济学等都可以归结为数值计算问题,而计算化学和计算经济学等都可以归结为数值计算问题,而数值数值计算方法计算方法计算方法计算方法是一门与计算机应用紧密结合的、实用性很强是一门与计算机应用紧密结合的、实用性很强的数学课程。的数学课程。2.1 计算的几种视角 如对气象资料的汇总、加工并生成天气
2、图像,如对气象资料的汇总、加工并生成天气图像,其计算量大且时限性强,要求计算机能够进行高速其计算量大且时限性强,要求计算机能够进行高速运算,以便对天气做出短期或中期的预报。运算,以便对天气做出短期或中期的预报。科学计算的过程科学计算的过程:实际问题实际问题数学模型数学模型计算方法计算方法程序设计程序设计计算结果计算结果3第3页,此课件共48页哦二、逻辑与计算二、逻辑与计算2.1 计算的几种视角 逻辑学有三大源泉逻辑学有三大源泉:以亚里士多德的词项逻辑和斯多亚以亚里士多德的词项逻辑和斯多亚学派的命题逻辑为代表的古希腊逻辑。学派的命题逻辑为代表的古希腊逻辑。以先秦名辩学为代表的古中国逻辑。以先秦名
3、辩学为代表的古中国逻辑。以正理论和因明学为代表的古印度逻辑。以正理论和因明学为代表的古印度逻辑。逻辑是研究推理的学科,人们可以把推理看成是对符号的操作,即逻辑是研究推理的学科,人们可以把推理看成是对符号的操作,即符号演算。符号演算。利用数学方法来研究推理的规律称为利用数学方法来研究推理的规律称为数理逻辑数理逻辑。为什么要研究。为什么要研究数理逻辑呢?我们知道要使用计算机,就要有程序。数理逻辑呢?我们知道要使用计算机,就要有程序。程序算法数据结构,而算法逻辑控制程序算法数据结构,而算法逻辑控制4第4页,此课件共48页哦三、算法与计算三、算法与计算2.1 计算的几种视角从不同角度看,算法的定义有多
4、种从不同角度看,算法的定义有多种:从哲学角度看:算法是解决一个问题的抽象行为序列。从哲学角度看:算法是解决一个问题的抽象行为序列。从抽象层次看:算法是一个将输入转化为输出的计算步骤序列从抽象层次看:算法是一个将输入转化为输出的计算步骤序列从技术层面看:算法是接收输入并产生输出的计算过程。从技术层面看:算法是接收输入并产生输出的计算过程。简而言之,简而言之,算法就是计算的办法或法则算法就是计算的办法或法则。算法无处不在,每个人每天都在算法无处不在,每个人每天都在使用不同的算法来活出自己的人生。使用不同的算法来活出自己的人生。比如你去食堂买饭会选择一个较短的比如你去食堂买饭会选择一个较短的队列,而
5、有人则可能选择一个推进速队列,而有人则可能选择一个推进速度更快的队列。度更快的队列。5第5页,此课件共48页哦 算法算法:为解决一个特定的问题所采取确定的有限步骤。:为解决一个特定的问题所采取确定的有限步骤。计算机用于解决数值计算,如科学计算中的数值积分、解线性方程等计计算机用于解决数值计算,如科学计算中的数值积分、解线性方程等计算方法,就是数值计算的算法。算方法,就是数值计算的算法。计算机用于解决非数值计算,如用于管理、文字处理、图像图形计算机用于解决非数值计算,如用于管理、文字处理、图像图形等的排序、分类和查找,就是非数值计算的算法。等的排序、分类和查找,就是非数值计算的算法。算法的组成算
6、法的组成:操作、数据。:操作、数据。这些操作包括加、减、乘、除和判断等,并按顺序、分支、循这些操作包括加、减、乘、除和判断等,并按顺序、分支、循环等控制结构所规定的次序执行。环等控制结构所规定的次序执行。数据是指操作对象和操作结果,包括布尔值、字符、整数和实数据是指操作对象和操作结果,包括布尔值、字符、整数和实数等;以及向量、记录、集合、树和图以及声音等。数等;以及向量、记录、集合、树和图以及声音等。2.1 计算的几种视角 为什么学习算法为什么学习算法:算法是计算机的灵魂;算法是计算机的灵魂;算法是数学机算法是数学机械化的一部分,能够帮助我们解决复杂的计算问题;械化的一部分,能够帮助我们解决复
7、杂的计算问题;算法作为算法作为一种思想,能锻炼我们的思维,使思维变得更清晰、更有逻辑。一种思想,能锻炼我们的思维,使思维变得更清晰、更有逻辑。6第6页,此课件共48页哦 计算理论计算理论:关于计算和计算机械的数学理论,:关于计算和计算机械的数学理论,它研究计算的过程与功效。它研究计算的过程与功效。计算理论主要包括算法、算法学、计算复杂计算理论主要包括算法、算法学、计算复杂性理论、可计算性理论、自动机理论和形式语言性理论、可计算性理论、自动机理论和形式语言理论等等。理论等等。2.2 计算理论7第7页,此课件共48页哦一、计算与计算过程一、计算与计算过程2.2 计算理论 计算计算是依据一定的法则对
8、有关符号串的变换过程。抽象是依据一定的法则对有关符号串的变换过程。抽象地说,计算的本质就是递归。地说,计算的本质就是递归。直观描述直观描述:计算是从已知符号开始,一步一步地改变符号:计算是从已知符号开始,一步一步地改变符号串,经过有限步骤,最终得到一个满足预定条件的符号串的过串,经过有限步骤,最终得到一个满足预定条件的符号串的过程。这样一种有限的符号串变换过程与递归过程是等价的。程。这样一种有限的符号串变换过程与递归过程是等价的。计算过程计算过程:执行算法的过程,而算法的过程正好可:执行算法的过程,而算法的过程正好可以在计算机上执行的过程。即计算机算法是把问题转化以在计算机上执行的过程。即计算
9、机算法是把问题转化为一步一步按规则执行的机械求解过程,再用计算机语为一步一步按规则执行的机械求解过程,再用计算机语言加以表达,最后输入计算机中进行计算。言加以表达,最后输入计算机中进行计算。8第8页,此课件共48页哦二、可计算性理论二、可计算性理论 可计算性理论可计算性理论:研究计算的一般性质的数学:研究计算的一般性质的数学理论。计算的过程就是执行算法的过程。理论。计算的过程就是执行算法的过程。2.2 计算理论 可计算理论的中心课题可计算理论的中心课题:将算法这一直观概念:将算法这一直观概念精确化精确化,建立计算的建立计算的数学模型数学模型,研究哪些是,研究哪些是可计算可计算的,哪些是的,哪些
10、是不可不可计算计算的,以此揭示计算的实质。的,以此揭示计算的实质。由于计算与算法联系在一起,因此,可计算性理论由于计算与算法联系在一起,因此,可计算性理论又称又称算法理论算法理论或或能行性理论能行性理论。9第9页,此课件共48页哦 1.1.可计算理论的发展可计算理论的发展2.2 计算理论 可计算理论起源于对数学基础问题的研究。从可计算理论起源于对数学基础问题的研究。从2020世纪世纪3030年代开始,为年代开始,为了讨论所有问题是否都有求解的算法,数学家和逻辑学家从不同角度提了讨论所有问题是否都有求解的算法,数学家和逻辑学家从不同角度提出了几种不同的算法概念精确化定义。出了几种不同的算法概念精
11、确化定义。1935193519361936193619361943194319511951邱奇提出邱奇提出转换演算转换演算哥德尔等定哥德尔等定义递归函数义递归函数图灵和波斯特图灵和波斯特各自提出抽象各自提出抽象计算机模型计算机模型MapkobMapkob定义定义正规算法正规算法陆续陆续证明证明,上述这些不同计算模型,上述这些不同计算模型(算法精确化定义模算法精确化定义模式式)的计算能力都是一样的,即的计算能力都是一样的,即它们是等价的它们是等价的。10第10页,此课件共48页哦 2.2.可计算性的定义和特性可计算性的定义和特性2.2 计算理论 定义定义:凡可用某种程序设计语言描述的问题都是可计
12、算性问题。:凡可用某种程序设计语言描述的问题都是可计算性问题。图灵的定义图灵的定义:能够在图灵机上执行的过程,有时又称:能够在图灵机上执行的过程,有时又称算法的过算法的过程程。图灵之所以能取得成功,很重要的一条是他采用了算法思图灵之所以能取得成功,很重要的一条是他采用了算法思维来研究计算的过程,由此揭示可计算性概念。由于算法思维维来研究计算的过程,由此揭示可计算性概念。由于算法思维与当今在计算机上运行的程序之间有着密切的关系,从而使他与当今在计算机上运行的程序之间有着密切的关系,从而使他的理论受到重视并被广泛使用。的理论受到重视并被广泛使用。特性特性:确定性、有限性、机械性、可执行性和终止性。
13、:确定性、有限性、机械性、可执行性和终止性。11第11页,此课件共48页哦 3.3.可计算理论的主要内容可计算理论的主要内容 2.2 计算理论 图灵机图灵机:一种在理论计算机科学中广泛采用的:一种在理论计算机科学中广泛采用的抽象计算机用于精抽象计算机用于精确描述算法的特征确描述算法的特征。通用图灵机正是后来的存储程序的通用数字计算机。通用图灵机正是后来的存储程序的通用数字计算机的理论原型。的理论原型。转换演算转换演算:一种定义函数的形式演算系统一种定义函数的形式演算系统。丘奇丘奇为精确定义可为精确定义可计算性而提出的,他引进计算性而提出的,他引进记号以明确区分函数和函数值,并把函数记号以明确区
14、分函数和函数值,并把函数值的计算归结为按照一定规则进行一系列转换,最后得到函数值。值的计算归结为按照一定规则进行一系列转换,最后得到函数值。丘奇丘奇-图灵论题图灵论题:可计算性理论的基本论题。它规定了直观可计算:可计算性理论的基本论题。它规定了直观可计算函数的精确含义。丘奇论题说:函数的精确含义。丘奇论题说:可定义函数类与直观可计算函数可定义函数类与直观可计算函数类相同。图灵论题说:图灵机可计算函数类与直观可计算函数类类相同。图灵论题说:图灵机可计算函数类与直观可计算函数类相同。相同。12第12页,此课件共48页哦 原始递归函数原始递归函数:自变量值和函数值都是自然数的函数,称为数论函数。:自
15、变量值和函数值都是自然数的函数,称为数论函数。原始递归函数是数论函数的一部分。原始递归函数是数论函数的一部分。规定规定:少量直观可计算的函数为原始递归函数,它们是:函数值恒等:少量直观可计算的函数为原始递归函数,它们是:函数值恒等于于0 0的零函数的零函数C0 0,函数值等于自变量值加,函数值等于自变量值加1 1的后继函数的后继函数S函数值等于第函数值等于第i个个自变量值的自变量值的n元投影函数元投影函数Pi(n)。原始递归函数的合成仍是原始递归函数,可以由已知原始递归函数简原始递归函数的合成仍是原始递归函数,可以由已知原始递归函数简单递归地计算出函数值的函数仍是原始递归函数。单递归地计算出函
16、数值的函数仍是原始递归函数。2.2 计算理论 例如例如:和函数:和函数 f(x,y)=x+y 可由原始递归函数可由原始递归函数Pi(1)和和S递归地递归地计算出函数值。计算出函数值。f(x,0)=P1(1)(x)f(x,S(y)=S(f(x,y)求求 f(4,2)=?,?,f(4,0)=P1(1)(4)=4 f(4,1)=S(f(4,0)=S(4)=5 f(4,2)=S(f(4,1)=S(5)=613第13页,此课件共48页哦 4.4.可计算理论的意义可计算理论的意义2.2 计算理论 可计算性理论的基本思想、概念和方法被广泛应用于计算可计算性理论的基本思想、概念和方法被广泛应用于计算科学的各个
17、领域。建立数学模型的方法在计算科学中被广泛采科学的各个领域。建立数学模型的方法在计算科学中被广泛采用,递归的思想被用于程序设计、数据结构和计算机体系结构,用,递归的思想被用于程序设计、数据结构和计算机体系结构,演算被用于研究程序设计语言的语义等。演算被用于研究程序设计语言的语义等。计算学科的一个基本结论是不可计算的函数要比可计计算学科的一个基本结论是不可计算的函数要比可计算的函数多得多。虽然许多问题是可判定的,但更多的问算的函数多得多。虽然许多问题是可判定的,但更多的问题是不可判定的,如题是不可判定的,如停机问题停机问题和波斯特对应问题都是不可和波斯特对应问题都是不可判定的。判定的。14第14
18、页,此课件共48页哦三、停机问题三、停机问题 停机问题停机问题是目前逻辑数学的焦点和第三次数是目前逻辑数学的焦点和第三次数学危机的解决方案,它是重要的不可判定问题。学危机的解决方案,它是重要的不可判定问题。1936 1936年,年,TuringTuring发表发表“论可计算数及论可计算数及其在判定问题中的应用其在判定问题中的应用”论文中提出一般论文中提出一般性停机问题的不可判定性,并用形式化方性停机问题的不可判定性,并用形式化方法证明其为一个不可计算问题。法证明其为一个不可计算问题。一般性的停机问题一般性的停机问题:对于任意的图灵机和输入,是否存在:对于任意的图灵机和输入,是否存在一个算法,用
19、于判定图灵机在接收初始输入后可达停机状一个算法,用于判定图灵机在接收初始输入后可达停机状态。若能找到这种算法,停机问题可解;否则不可解。态。若能找到这种算法,停机问题可解;否则不可解。2.2 计算理论15第15页,此课件共48页哦 通俗地说,通俗地说,停机问题停机问题就是判断任意一个程序就是判断任意一个程序是否在有限的时间内结束运行的问题。是否在有限的时间内结束运行的问题。例如:例如:main()int i=1;while(i0)i=i+1;return;程序可终止程序可终止程序死循环程序死循环程序简单时容易做出判断,当例子复杂时会遇程序简单时容易做出判断,当例子复杂时会遇到较大的困难,而在某
20、些情况下则无法预测。到较大的困难,而在某些情况下则无法预测。2.2 计算理论16第16页,此课件共48页哦 停机问题的关键停机问题的关键:能否找到一个测试程序,:能否找到一个测试程序,这个测试程序能判定任何一个程序在给定的输入这个测试程序能判定任何一个程序在给定的输入下能否终止。下能否终止。数学反证法证明数学反证法证明:先假设存在这样的测试程序,:先假设存在这样的测试程序,然后再构造一个程序,该测试程序不能测试然后再构造一个程序,该测试程序不能测试假设存在一个测试程序假设存在一个测试程序T T,它能接受任何输入。,它能接受任何输入。当输入程序当输入程序P P能终止,输出能终止,输出1 1;P
21、P不能终止,输出不能终止,输出0 0。2.2 计算理论17第17页,此课件共48页哦P P能终止能终止,X,X1 1P P不终止不终止,X,X0 0测试程序测试程序T T程序程序P PX X测试程序测试程序T TX(1X(1或或0)0)while(x)while(x)S S程序程序P P测试程序测试程序T TX(1X(1或或0)0)while(x)while(x)S S程序程序S SP P终止终止,X,X1,S1,S不终止不终止P P不终止不终止,X,X0,S0,S终止终止S S终止终止,X,X1,S1,S不终止不终止S S不终止不终止,X,X0,S0,S终止终止结论结论:若:若S S终止,则
22、终止,则S S不终止;若不终止;若S S不终止,则不终止,则S S终止,结论矛盾终止,结论矛盾故可以确定这样的测试程序不存在,从而证明停机问题不可解故可以确定这样的测试程序不存在,从而证明停机问题不可解2.2 计算理论18第18页,此课件共48页哦 例例2-12-1理理发发师师悖悖论论。一一个个理理发发师师的的招招牌牌:城城里里所所有有不不自自己己刮刮脸脸的男人都由我给他们刮脸,我也只给这些人刮脸。的男人都由我给他们刮脸,我也只给这些人刮脸。问题是问题是:谁给这位理发师刮脸呢?如果他自己刮脸,那他就属:谁给这位理发师刮脸呢?如果他自己刮脸,那他就属于自己刮脸的那类人。但是,他的招牌说明他不给这
23、类人刮脸,于自己刮脸的那类人。但是,他的招牌说明他不给这类人刮脸,因此他不能自己来刮。因此他不能自己来刮。如果另外一个人来给他刮脸,那他就是不自己刮脸的人。如果另外一个人来给他刮脸,那他就是不自己刮脸的人。但是,他的招牌说他要给所有这类人刮脸。因此,其他任但是,他的招牌说他要给所有这类人刮脸。因此,其他任何人也不能给他刮脸。何人也不能给他刮脸。从本质上看,理发师问题和停机问题是一样的。从本质上看,理发师问题和停机问题是一样的。2.2 计算理论19第19页,此课件共48页哦四、计算复杂性理论四、计算复杂性理论 计算复杂性理论计算复杂性理论:用数学方法研究各类问题:用数学方法研究各类问题的计算复杂
24、性的学科。的计算复杂性的学科。计算复杂性理论研究各种可计算问题在计算计算复杂性理论研究各种可计算问题在计算过程中资源过程中资源(如时间、空间等如时间、空间等)的耗费情况,以及的耗费情况,以及在不同计算模型下,使用不同类型资源和不同数在不同计算模型下,使用不同类型资源和不同数量的资源时,各类问题复杂性的本质特性和相互量的资源时,各类问题复杂性的本质特性和相互关系。关系。2.2 计算理论20第20页,此课件共48页哦 1.1.计算复杂性理论的发展计算复杂性理论的发展 1993 1993年的图灵奖授予合作奠定了计算复杂性理论基础的两位学年的图灵奖授予合作奠定了计算复杂性理论基础的两位学者者J.Har
25、tmanisJ.Hartmanis和和R.E.StearnsR.E.Stearns。在此以前,已有在此以前,已有M.O.RabinM.O.Rabin、S.A.CookS.A.Cook、R.M.KarpR.M.Karp等学者因在计算等学者因在计算复杂性理论研究中做出先驱性工作而分别在复杂性理论研究中做出先驱性工作而分别在19761976、19821982和和19851985年获年获得图灵奖。得图灵奖。HartmanisHartmanis和和StearnsStearns则在前人工作的基础上,比较完整地则在前人工作的基础上,比较完整地提出了计算复杂性的理论体系,并首次正式命名了提出了计算复杂性的理论
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算 理论 模型 精选 PPT
限制150内