关于图灵机的三个问题分析

关于图灵机的三个问题分析
关于图灵机的三个问题分析

写这篇文章,是想尝试回答学习图灵机模型中遇到的三个问题:

1) 为什么图灵机有不可判的问题?

2) 为什么强大的图灵机会不停机?

3) 为什么图灵当初要设计图灵机?

图灵机(Turing machine)是英国数学家阿兰·图灵(Alan Turing)于1936年设计的一种抽象机器,用于定义和模拟计算(computing)。图灵机虽然构造简单,但却及其强大,它能模拟现代计算机的所有计算行为,堪称计算的终极机器。然而即便是这个终极机器,也有令它无能为力的问题,这便是第一个要回答的问题:为什么图灵机有不可判的问题?

首先明确什么是图灵可识别(Turing recognizable)和图灵可判定(Turing decidable)。图灵机的识别对象是语言,图灵可识别当然不是说图灵本人能识别的语言(照这样说汉语可能是图灵不可识别的~),事实上这只是简称,全称应该是图灵机可识别语言(Turing machine recognizable language)和图灵机可判定语言(Turing machine decidable language)。

一台图灵机在读取一个串后可能进入三种状态:接受、拒绝、循环,如果图灵机进入循环状态,那它将永不停机。现在假设有语言A,如果能设计出一台图灵机M,对于任意字符串ω,如果ω∈A,那么M读取ω后会进入接受状态,那么A是一个图灵可识别语言。注意这个定义对于ω不属于A的情况没有做出限制,所以M读取到不属于A的ω,那么它有可能拒绝,也有可能循环。

图灵可判定语言的要求更严格,它要求对于语言A能设计出一台图灵机M:如果ω∈A,M 进入接受状态;否则进入拒绝状态。如果一个语言是图灵可判定的,总能设计出一台图灵机,能在有限步数内判定一个字符串是不是属于这个语言。如果一台图灵机对所有输入总是停机,那么称它为判定器(decider)。然而第一个问题指明一定有所有判定器都不能判定的问题,要证明这一点,得从康托(Georg Cantor)说起。

康托最大的贡献可能是创建了现代集合论,他认为某些不同的无穷集合有不同的大小。1891年,康托发表了一篇只有5页的论文,证明实数集的基数大于自然数集,并在这篇论文中提出了传说中的对角线方法(方法虽然巧妙但很简单,wiki上有我就不赘述)。图灵机的不可判定问题便需要借助对角线方法。而实数集“大于”自然数集这个事实,可以这么想:“无限×无限”比“无限×有限”大。每个自然数是有限的,集合是一阶无限,自然数集就是一阶无限;相较之下,一个实数是一阶无限,集合又是一阶无限,那么实数的集合就是二阶无限。这个一阶二阶只是我个人的说法,关于不同集合之间的大小关系,康托提出连续统假设,即希尔伯特第一问题,认为不存在一个基数绝对大于可数集而绝对小于实数集的集合,不过这跟今天的话题没有关系,不再展开。

回到正题:图灵机。图灵机能够识别语言,而图灵机本身当然也可以由语言描述。什么是语言?给定一个字母表∑,一个{[由∑中的字母组成的序列]的集合}就是∑上的一个语言(为了消除歧义,算式可以加括号,语言当然也可以)。必须清楚这些概念中哪些是有限的,哪些是无限的:一个语言包含的字符串数可以是有限的也可以是无限的,但一个字母表上的所有语言的数目是无限的,而语言中任意一个字符串的长度是有限的。

首先要证明的是:一个字母表上所有语言构成的集合不仅是无限的,而且是不可数的。

这里需要借助无限二进制序列的集合来帮助证明。一个无限二进制序列(即{0,1}组成的无限序列)是一阶无限,那么这些序列组成的集合就是“无限×无限”,可以通过对角线方法证明无限二进制序列是不可数的,也可以将实数集的元素唯一地映射到无限二进制序列集合。

用后者的方法,可以这样建立二者之间的映射:二进制序列每4个为一组,用8421BCD码编码,4位对应实数中的一位,再用1111表示小数点,这样每个实数总能映射到一个唯一的二进制序列,既然实数集不可数,那么无限二进制序列也不可数。

接下来证明,{无限二进制序列的集合B}与(任意字母表){∑上的所有语言组成的集合L}是同样规模的,仍然通过建立映射的方法。设∑上所有字符串的集合按字典序排序成∑*={s1, s2, s3, ...},L中的每个语言A都对应一个二进制序列b:如果si∈A,bi=1;否则bi=0,这样的序列称作A的特征序列。举个例子,如果∑={a,b},A是所有包含b的串构成的语言,则A的特征序列b如下:

∑*={a, b, aa, ab, ba, bb, aaa, aab,...}

A ={ b, ab, ba, bb, aab,...}

b = 0 1 0 1 1 1 0 1 ,...

反之,每个二进制序列b也能对应一个唯一的语言,所以L与B等势,又因为B是不可数集,所以{∑上的所有语言组成的集合L}也是不可数的。

好,明确了所有语言构成的集合是不可数的之后,我要回答下面这个问题:为什么图灵机集合是可数的?(reserve:哥德尔配数法)

从图灵机的定义入手,图灵机是1个7元组(Q,∑,Γ,δ,q0,qaccept,qreject)。每一台图灵机总是由有限个字符编码而成:

1) 有限的状态集Q。

2) 有限的输入字母表∑。

3) 有限的带字母表Γ。

4) 有限的转换函数δ。

5) 1个起始状态q0。

6) 有限个接受状态qaccept。

7) 有限个拒绝状态qreject。

若上述每个元素都用二进制编码表示,任意一台图灵机都只需要有限个二进制位。再将这些二进制串按照字典序排列,就可以得到一个{图灵机集合}->自然数集的一一对应。

好,给定一个字母表∑:

[∑上的所有语言]的集合<=>[二进制无限序列]的集合<=>实数集<=>不可数集

[所有图灵机]的集合<=>自然数集<=>可数集

有不可数个语言,却只有可数个图灵机,语言的集合“大于”图灵机的集合,所以从本质上证明了必然存在图灵机不能识别的语言。

推论:必然存在图灵机不能判定的语言。理由是图灵可判定语言的集合不会大于图灵可识别语言。

图灵可判定语言要求更严格,所以应该存在这样的语言:它是图灵可识别的,但同时不是图灵可判定的。事实确实如此,图灵自己就给出了一个:

A={ | M描述一台图灵机,且M描述的机器接受ω}

首先证明A是图灵可识别的(形式化证明太过繁琐,这里只给出很高层次的证明)。设通用图灵机U这样运行:U接受参数,它可根据图灵机M的描述模拟M的行为,并在虚拟的M上计算ω。如果M接受ω,那么U进入接受状态;否则拒绝。

依据定义以及通用图灵机的存在性,U能识别A,所以A是图灵可识别的。

证毕。

顺着这个证明走下去,如果M本身遇到输入ω时会陷入循环,那么模拟M的U也会陷入循环,所以U不是判定器。如果U知道M在ω上不停机,那么它可以进入拒绝状态,问题是它不知道。那么能判定A的图灵机存在吗?我们就假设存在H,使得:

1)若M接受ω,则H() =接受

2)若M不接受ω,则H() =拒绝

根据H的定义,无论M接不接受ω,H总能停机。进一步再假设有图灵机D,以H为子程序,接受一个描述图灵机的串,在H上运行H(>),并返回相反的结果:

1)若H(>)=接受,则D()=拒绝

2)若H(>) =拒绝,则D()=接受

也就是说,如果一台图灵机M接受描述它自身的串,那么D()进入拒绝状态。构造这样一台奇怪的D是为了让它做下面这件事情,现在对D输入描述它自己的串,看看会发生什么:

1)若D接受,即H(>)=接受,则D()=拒绝

2)若D拒绝,即H(>) =拒绝,则D()=接受

到底是接受还是拒绝呢?兜了一个圈子,D绕回原地,产生了矛盾。所以D是不存在的,所以H也是不存在的,语言A不可判定。

证毕。

上述证明比较绕,我用一阶逻辑再改写一遍。

命题:

1)P:存在语言A的判定器H

2)Q:存在以H为子程序的图灵机D(描述见上)

已知条件:

1)P→Q:如果有H,总能设计出D

2)┐Q:D是不存在的(证明见上)

证明:

1 P 假设

2 P→Q 已知条件

3 Q 1,2

4 ┐Q 已知条件

5 ┴推出矛盾

6 ┐P 假设不成立

上面的证明中,图灵机D的构造简直是神来之笔,图灵怎么想到的?虽然之前的证明没有直接给出不可判定的语言,但已经从数量上证明有图灵机不能判定的语言,由于判定器的要求更严格,所以可以推断所有判定器构成的集合小于所有语言构成的集合。这是个与“实数集的势大于自然数集”类似的命题,所以应该能用类似的方法——对角线方法证明。好,尝试一下。

康托构造映射表格时,表格的每一行由一个自然数表示这是第几行,每一列也由一个自然数标识列数,对角线法构造出来的实数实际上是一行,然而这一行却和每一行都不一样。刚才的证明我们看到,图灵机集合是可数集,可将其对应自然数,标识表格的每一行,那么每一列用什么标识呢?怎样让列数与行数相等呢?行和列的交叉处是什么呢?自然数/实数的例子中,每一行由一个自然数对应一个实数,在这个问题中,行由图灵机标识了,那么不难想

到,每一行应该是一个语言。语言又该如何表示?下面依次回答这些问题。

列应该用什么来标识?在对角线方法中,表格的行列数一致,行和列都用自然数集标识。那么首先可以想到既然行用图灵机标识,那么列也可以用图灵机标识。但是这样的话行列交汇处就没什么意义了,试问随意挑选的两台图灵机之间能擦出什么火花?

脑子再转一下,图灵机与图灵机之间没有什么一般化的关系,图灵机识别的是语言,是字符串,那么将标识列的图灵机换成描述图灵机的串,既保持了行列数一致性,又让行列交汇处有了非平凡的意义!即,用M1, M2, M3...标识第1行、第2行、第3行……再用描述图灵机的字符串, , ...标识第1列、第2列、第3列……行列交汇处就填入accept 或reject,表示一台图灵机是否接受描述某一台图灵机的串!这样,每一行刚好也就是一个语言,每一个部分的意义都正好是我们想要的。

……

M1

accept

reject

reject

reject

M2

reject

reject

accept

reject

M3

accept

accept

reject

accept

M4

reject

accept

reject

accept

……

……

为构造对角线准备的表格

走到这一步,离结果就很近了。

若将所有图灵机和描述它们的串排成表,行列交叉处就是H(Mi,)的运行结果。构造图灵机D,实际上就是用对角线方法选出一行,这一行的第1列与M1相反,第2列与M2相反,第3列与M3相反……所以构造出来的这一行肯定不在这个表中。如果在,这么D所在的行与对角线相交处会出现矛盾!

……

D

……

M1

accept

reject

reject

reject

accept

M2

reject

reject

accept

reject

reject

M3 accept accept reject accept

accept

M4 reject accept reject accept

reject ……

……

D reject accept accept reject

?

……

……

D的每一列都与对角线相反,到它自己与对角线的交汇处产生矛盾

想必图灵深知语言集比图灵机集要“大”,一台图灵机只能对应一个语言,所以用对角线方法必定能构造出一个所有图灵机都不能识别的语言。这个语言就是D“识别”的语言,则D 的语言肯定不会出现在那个图灵机和对应语言的表格中。如果强行将这台“不存在的图灵机”安插进表格中,必然产生矛盾,矛盾就发生在D所在行与对角线的相交处。就像康托用对角线方法构造出来的那个实数无法插入到[自然数->实数]的映射表格中,否则构造出来的那个实数就与它自己矛盾了,神奇的“图灵机D”就是这么来的。

图灵是用图灵机的术语改写了对角线方法,在图灵机上重现康托的思想。

至此,回答了第一个问题:为什么图灵机也有不可判定的语言,并且还构造了一个这样的语言,即A={ | M描述一台图灵机,且M描述的机器接受ω},A又被称为接受问题。

语言A是超越图灵机极限的必然产物,因为图灵机和语言的内在关系决定了A这样不能被任何图灵机判定的语言是存在的。这是本质上的原因,但关于A本身还有一个表象上的原因(之前提到过):之所以不能用图灵机断定其它图灵机是否接受一个串,是因为图灵机不能断定其它图灵机在某个输入串上计算时是否会停机,这个问题同样是不可判定的,这就是著名的停机问题(Halting problem)。庄子曰,“吾生也有涯,而知也无涯,以有涯随无涯,殆已”。以有限的步骤去判定可能无限的计算,殆已。

但由此我产生了一个很大的疑问:为什么图灵机会不停机?这也是我试图回答的第二个问题。

图灵机虽然强大,但是不停机的缺陷是人们万万不想要的。然而这缺陷是天生的,原因是……图灵赋予图灵机两个无限:

1)图灵机能在输入字符串上左右移动,步骤无限,时间无限。

2)图灵机有一条无限长的带子,供读写头在上面活动,空间无限。

有穷状态机和下推自动机这两种更简单能力更弱的机器只能看到极其有限的历史,它们的读写头只能在输入字符串上单向移动,所以肯定会停机。而图灵机的读写头却可以在输入串上左右移动……一旦拥有这个能力,图灵机可以看到更多的历史,同时就必须承担这种能力带来的风险——无限循环。另一方面,图灵机拥有无限长的带子,给读写头的移动提供了无限的空间,更增加了循环的可能。

实际计算机没有无限长的带子,只有有限的内存,所以读写头左右移动这种能力带来的影响更致命:即使只有有限的空间,也可能陷入无限的循环。

然而很遗憾我的尝试只能到此为止了,现在的我还不能从本质上回答“为什么不停机”。根据我的理解,图灵机会不停机与哥德尔不完备定理有关。应该是图灵机这两种能力(左右移动,无限带子)让它足以蕴含皮亚诺算术公理,同时引入了既不能证明也不能证否的命题:碰到这种情况,图灵机就陷入循环了。希望自己将来能够摸清背后的本质,完整地回答为什么强大的图灵机会不停机?

既然图灵机有这么大的缺陷,为什么图灵当初还要设计图灵机?这要从上个世纪初数学界的boss希尔伯特(David Hilbert)说起。1928年,希尔伯特在国际数学家大会上很乐观地预期,数学将在不久的将来建立在牢固的基础上,并提出关于一阶逻辑公式可满足性的判定问题(Entscheidungs Problem)。引用我以前写过的一段话:

希尔伯特计划把数学建立在一个完备的、一致的公理化系统之上。如果他成功了,这意味着:一,所有的数学命题都能用符号无二义地表达出来;

二,所有的数学命题都能被证明或证伪(完备性);

三,对任意数学命题P,如果P被证明,那么?P必定能被证伪(一致性)。

四,如果最后再找到一个算法,能机械地判定一个数学命题的真伪(可判定性),那么整个数学大厦就是钢筋铁骨屹立不倒了。

结果事与愿违。

1931年,哥德尔(Kurt G?del)发表了震惊数学界的哥德尔不完备定理,数学系统一致性和完备性的统一被打破。

1935-1936年间,图灵在剑桥大学国王学院研究希尔伯特判定问题。1936年5月,图灵完成论文《论可计算数及其在判定问题上的应用》("On Computable Numbers, with an Application to the Entscheidungsproblem"),提出图灵机作为通用计算模型,并基于图灵机重新定义了可计算函数,同时给出了一个图灵机无法判定的问题,即停机问题。

1937-1938年间,图灵来到普林斯顿大学,在逻辑大神阿隆佐·邱奇的指导下继续研究可计算性问题,这一阶段他证明他的图灵机与邱奇的λ演算具有等价的计算能力,并将这个结果作为附录加到他的论文当中。而此前,哥德尔也提出了递归函数作为计算模型,不过同样不久后被证明与λ演算等价。

在这一期间,邱奇-图灵论题(Church-Turing Thesis)在邱奇、图灵与哥德尔三人的工作下成型,该论题认为所有可有效计算的函数或算法都可以由一台图灵机来执行。这是一个论题,而不是命题,因为“可有效计算”本身是一个不存在精确定义的概念。目前普遍认为邱奇-图灵论题是正确的,即所有人能想到的算法都能用图灵机执行。

图灵设计了一个能模拟所有计算的机器,然后证明这台机器也有缺陷,有它不可判定的问题,给希尔伯特的幻想以最后的致命一击,这便是图灵机的起源。毫无疑问,虽然没有直接参与图灵机的设计,但希尔伯特功不可没,因他提出的问题指引了其他数学家的工作。

图灵机给计算机的具体实现提供了参考价值,但它速度太慢,也很难编程。相比之下它更是数学家们的神兵利器:算法问题从此有了坚实的基础。但图灵机也给出了现在这个时代人的上限,而这个“人”还不是一般人,而是人类中思考的精英——数学家。

根据邱奇-图灵论题,图灵机能模拟所有机械的、有限步的计算,但仍然有图灵机不能识别的语言,它的诞生就是为了去证明它自己的缺陷……这就是为什么说:

计算机是数学家一次思考失败的产物。

最后,谨以此文献给因社会不公而英年早逝的天才——Alan Mathison Turing

计算机问题

1.1.1计算机的起源 1.十九世纪中叶,数学家布尔成功地将形式逻辑归结为一种代数运算;1937年数学家图灵提出了著名的“图灵机”模型,证明了通用数字计算机是可以制造出来的。这两位科学家的国籍是 d A.美国和英国B.英国和美国C.美国和美国D.英国和英国 1.1.2计算机的发展 1.我国自行设计研制的“银河III”型计算机是 d A.微型计算机 B.小型计算机 C.中型计算机巨型计算机 2.世界上第一台电子计算机诞生于___a_____ A.20世纪40年代B.19世纪C.20世纪80年代D.1950年 3.人们把1958年至1964年作为第二代计算机时代,其硬件逻辑元件为 d A. 集成电路B.电子管C.晶体管D.超大规模集成电路 4.所谓第三代计算机是以哪种逻辑元件为主要零件?d A.电子管B.集成电路C.晶体管D.以上都不对 5.计算机发展的方向是巨型化、微型化、网络化、智能化。其中巨型化是指 c A.体积大 B.重量重 C.功能更强、运算速度更快、存储容量更大 D.外部设备更多 1.1.3计算机的特点和分类: 1.计算机与其它工具和人类自身相比,具有哪些主要特点? a A.速度快、精度高、通用性 B.速度快、自动化、专门化 C.精度高、小型化、网络化 D.以上全是 2.下面有关计算机的描述,正确的是__c__ A.所谓数字计算机,是指只能用于处理数字信息的计算机 B.所谓模拟计算机,是指用于模拟各种运动现象的计算机 C.所谓巨型计算机,是指性能指标水平很高的计算机 D.所谓微型计算机,是指用于原子探测的计算机 1.1.4计算机技术的应用: 1.在计算机的应用领域中, CAE表示__b__ A.计算机辅助设计B.计算机辅助教育C.计算机辅助制造D.计算机辅助程序设计 2.在计算机的应用领域中, CAD表示__a__ A.计算机辅助设计B.计算机辅助教学C.计算机辅助制造D.计算机辅助程序设计 3.目前计算机最具有代表性的应用领域有科学计算、数据处理、辅助设计、实时控制及__d__。 A.文字处理B.办公自动化C.过程控制D.计算机网络 4.在计算机的应用领域, 下面叙述不正确的是__c__

图灵机

关于图灵机、P问题和NP问题 A)图灵机是一个结构简单且计算能力很强的计算模型。图灵机又称为多带图灵机(或K带图灵机),是由一个有限状态控制器和K条读写带(K≥1)组成的。图灵机分为确定性图灵机和非确定性图灵机。在数学解释中,二者是有差别的。 确定型图灵机用数学描述来讲可以描述成一个7元组(Q、T、I、δ、b、q0、qf),其中,Q是有限个形态的集合; T是有个带符号的集合; I是输入符号的集合; b是唯一的空白符; q0是初始状态; qf是终止(或接受)状态; δ是移动函数,它是从Q×T k的某一子集映射到Q×(T×{L,R,S})k 的函数。 对于某个包含一个状态及k个大夫奥的k+1元组,移动函数将给出一个新的状态和k个序偶,每个序偶由一个新的带符号及读写头的移动方向组成。形式上可表述为 δ(q,a1+a2,…,a k)=(q’,(a1’,d1’),(a2’,d2),…,(a k’,d k)) 当图灵机处于状态q且对一切1≤i≤k,第i条带的读写头扫描着的当前方格中的符号正好是a i时,图灵机就按这个移动函数所规定的内容进行工作:(1)把图灵机的当前状态q改为状态q’。 (2)把第i条读写头下当前方格中的符号a i请出并写上新的带符号a i’,1≤i≤k。 (3)按d i指出的方向移动各带的读写头。 非确定性图灵机与确定性图灵机相似,也可以分为一个七元组,只不过非确定性图灵机允许δ具有不确定性,这个不确定的函数δ仍称为移动函数。 B) P和NP是两类重要的语言,他们分别表示: P指一个能在多项式时间内被一台确定性图灵机(DTM)所接受的语言; NP指一个能在多项式时间内被一台非确定性图灵机(NDTM)所接受的语言; 从直观上来看,P类问题是确定性计算模型下的易解问题类,而NP类问题指的是非确定性计算机模型下的易验证问题类。 C)NP完全问题的定义是:语言L是NP完全的当且仅当 (1)L∈NP, (2)对于所有L’∈NP有L’p L。 而如果有一个语言L满足上属性质(2),但不一定满足性质(1),则称该语言是NP难的,即NP难解问题。NP难解问题和NP完全问题都满足性质(2),证明他们之间是有联系的。 D)至今为止,NP完全问题都还没有多项式时间算法。在遇到实际意义的NP

计算机应用基础选择题库(正确答案)

模拟测试一 模拟测试一 一、选择题 1.B 2.C 3.C 4.B 5.A 6.C 7.C 8.A 9.B 10.B 一、选择题 1.____________是现代通用计算机的雏形。 A.宾州大学于1946年2月研制成功的ENIAC B.查尔斯·巴贝奇于1834年设计的分析机 C.冯·诺依曼和他的同事们研制的EDV AC D.图灵建立的图灵机模型 A.现代计算机的功能不可能超越图灵机 B.图灵机不能计算的问题现代计算机也不能计算 C.图灵机是真空管机器 D.只有图灵机能解决的计算问题,实际计算机才能解决 5.目前,被人们称为3C的技术是指____________。 A.通信技术、计算机技术和控制技术 B.微电子技术、通信技术和计算机技术 C.微电子技术、光电子技术和计算机技术 D.信息基础技术、信息系统技术和信息应用技术 6.在下列关于信息技术的说法中,错误的是____________。 A.微电子技术是信息技术的基础

B.计算机技术是现代信息技术的核心 C.光电子技术是继微电子技术之后近30年来迅猛发展的综合性高新技术 D.信息传输技术主要是指计算机技术和网络技术 7.在计算机运行时,把程序和数据一同存放在内存中,这是1946年由____________ 二、填空题 1.最近的研究表明,电子计算机的雏形应该是由阿塔索夫和他的研究生在1941年制作成功的____________计算机。 2.计算机辅助设计的英文简称是____________。 3.第二代电子计算机采用的物理器件是____________。 4.未来计算机将朝着微型化、巨型化、____________、智能化方向发展。 5.目前,人们把通信技术、计算机技术和控制技术合称为____________。

图灵测试介绍 图灵机的工作原理详解

图灵测试介绍图灵机的工作原理详解 图灵测试简介图灵测试(TheTuringtest)由艾伦麦席森图灵发明,指测试者与被测试者(一个人和一台机器)隔开的情况下,通过一些装置(如键盘)向被测试者随意提问。 进行多次测试后,如果有超过30%的测试者不能确定出被测试者是人还是机器,那么这台机器就通过了测试,并被认为具有人类智能。图灵测试一词来源于计算机科学和密码学的先驱阿兰麦席森图灵写于1950年的一篇论文《计算机器与智能》,其中30%是图灵对2000年时的机器思考能力的一个预测,目前我们已远远落后于这个预测。 图灵测试测试内容图灵提出了一种测试机器是不是具备人类智能的方法。即假设有一台电脑,其运算速度非常快、记忆容量和逻辑单元的数目也超过了人脑,而且还为这台电脑编写了许多智能化的程序,并提供了合适种类的大量数据,那么,是否就能说这台机器具有思维能力? 图灵肯定机器可以思维的,图灵测试他还对智能问题从行为主义的角度给出了定义,由此提出一假想:即一个人在不接触对方的情况下,通过一种特殊的方式,和对方进行一系列的问答,如果在相当长时间内,他无法根据这些问题判断对方是人还是计算机,那么,就可以认为这个计算机具有同人相当的智力,即这台计算机是能思维的。这就是著名的图灵测试(TuringTesTIng)。当时全世界只有几台电脑,其他几乎所有计算机根本无法通过这一测试。 要分辨一个想法是自创的思想还是精心设计的模仿是非常难的,任何自创思想的证据都可以被否决。图灵试图解决长久以来关于如何定义思考的哲学争论,他提出一个虽然主观但可操作的标准:如果一台电脑表现(act)、反应(react)和互相作用(interact)都和有意识的个体一样,那么它就应该被认为是有意识的。 为消除人类心中的偏见,图灵设计了一种模仿游戏即图灵测试:远处的人类测试者在一段规定的时间内,根据两个实体对他提出的各种问题的反应来判断是人类还是电脑。通过一

图灵机简述

计算引论课程论文 图灵机 院(系)计算机学院 专业名称计算机科学与技术学号39061606 姓名苏振昊 2011年5月9日

目录 前言 (2) 摘要 (3) Abstract (4) 1.图灵机 (5) ⑴图灵与图灵机 (5) ⑵图灵的基本思想 (6) ⑶图灵机和计算 (7) ⑷停机问题 (8) ⑸通用图灵机 (8) 2超越图灵机算 (9) 总结 (10) 参考文献 (11)

前言 图灵机模型是目前为止最为广泛应用的经典计算模型。目前人类尚无找到其它的计算模型,其可计算的问题类超过图灵机的计算能力。 图灵机模型证明了通用计算理论,肯定了计算机实现的可能性,它也给出了计算机应有的主要架构;它引入了读写与算法与程序语言的概念,极大的突破了过去的计算机器的设计理念;同时,图灵机模型理论是计算学科最核心的理论,因为计算机的极限计算能力就是通用图灵机的计算能力,很多问题可以转化到图灵机这个简单的模型来考虑。可以说,正是在图灵搭建的理论基础之上,计算机才有了后来的蓬勃发展。因此,我认为有必要在这里探讨一下图灵机模型,这个迄今为止最为经典的计算模型。

摘要 图灵的基本思想是用机器来模拟人们用纸笔进行数学运算的过程。为了模拟人的这种运算过程,图灵构造出一台假想的机器,这个机器的每一部分都是有限的,但它有一个潜在的无限长的纸带,因此这种机器只是一个理想的设备。图灵认为这样的一台机器就能模拟人类所能进行的任何计算过程。 同时,由于停机问题的不可解,这就存在一些图灵机所不能解决的问题,也让我们去思考、去探索出能够超越图灵计算的计算模型。 关键词:图灵、图灵机、停机问题

大学计算机计算思维导论期末考试

大学计算机——计算思维导论期末考试 返回 期末考试题型均为客观题,试题来自于单元测验的试题库,本次考试共25题,卷面考试总分25分,计入总成绩的分数按总分设置规则计算,考试时间120分钟。 注意:期末考试与平时每讲测验不同,只有一次提交机会。 倒计时: 01:59:46 1 单选(1分) 已知一个存储器芯片M的4位二进制地址编码为,其8条数据线为 。如果需要构造64个存储单元且每个存储单元的字长为16位的存储器,该存储器的6位二进制地址编码线为,16条数据线为 ,问下列说法正确的是_____。 ? A. 总计需要M芯片8个,分成2组,每组4个;将分别连接到8个M芯片的 上;将用一个2-4译码器进行译码形成4条控制线,每2条控制线控制一组M芯片;将分别连接到第一组每个芯片的上,而将分别连接到第2组每个芯片的上 ? B. 总计需要M芯片8个,分成4组,每组两个;将分别连接到8个M芯片的 上;将用一个2-4译码器进行译码形成4条控制线,每一条控制一组中 的两个M芯片;将分别连接到这4个组中的第一个芯片的 上,而将分别连接到这4个组中的另一个芯片的上 ?

C. 总计需要M芯片16个,分成8组,每组两个;将分别连接到16个M芯片的 上;将用一个3-8译码器进行译码形成8条控制线,每一条控制一组中的两个M芯片;将分别连接到这8个组中的第一个芯片的上,而将分别连接到这8个组中的另一个芯片的上 D. 总计需要M芯片8个;将分别连接到8个M芯片的上;将 用一个2-4译码器进行译码形成4条控制线,每一条控制两个M芯片;将8个芯片任意分成两组,将和分别连接到这2个组中的每个芯片的上2 单选(1分) “树”是一种典型的数据结构,在很多算法中都应用树来组织相关的数据。树是组织层次型数据的一种存储结构,它将每一个数据称为一个数据元素。见下图I.示意,采用三个数组来存储树型数据,一个数组TreeElement[]存放数据元素本身,一个数组LeftPointer[]存放该数据元素的左侧子元素的存放地址(简称为左指针),另一个数组RightPointer[]存放该数据元素的右侧子元素的存放地址(简称为右指针)。参照图I.,回答问题。

算法设计与分析复习题目及答案 (3)

分治法 1、二分搜索算法是利用(分治策略)实现的算法。 9. 实现循环赛日程表利用的算法是(分治策略) 27、Strassen矩阵乘法是利用(分治策略)实现的算法。 34.实现合并排序利用的算法是(分治策略)。 实现大整数的乘法是利用的算法(分治策略)。 17.实现棋盘覆盖算法利用的算法是(分治法)。 29、使用分治法求解不需要满足的条件是(子问题必须是一样的)。 不可以使用分治法求解的是(0/1背包问题)。 动态规划 下列不是动态规划算法基本步骤的是(构造最优解) 下列是动态规划算法基本要素的是(子问题重叠性质)。 下列算法中通常以自底向上的方式求解最优解的是(动态规划法) 备忘录方法是那种算法的变形。(动态规划法) 最长公共子序列算法利用的算法是(动态规划法)。 矩阵连乘问题的算法可由(动态规划算法B)设计实现。 实现最大子段和利用的算法是(动态规划法)。 贪心算法 能解决的问题:单源最短路径问题,最小花费生成树问题,背包问题,活动安排问题, 不能解决的问题:N皇后问题,0/1背包问题 是贪心算法的基本要素的是(贪心选择性质和最优子结构性质)。 回溯法 回溯法解旅行售货员问题时的解空间树是(排列树)。 剪枝函数是回溯法中为避免无效搜索采取的策略 回溯法的效率不依赖于下列哪些因素(确定解空间的时间)

分支限界法 最大效益优先是(分支界限法)的一搜索方式。 分支限界法解最大团问题时,活结点表的组织形式是(最大堆)。 分支限界法解旅行售货员问题时,活结点表的组织形式是(最小堆) 优先队列式分支限界法选取扩展结点的原则是(结点的优先级) 在对问题的解空间树进行搜索的方法中,一个活结点最多有一次机会成为活结点的是( 分支限界法). 从活结点表中选择下一个扩展结点的不同方式将导致不同的分支限界法,以下除( 栈式分支限界法)之外都是最常见的方式. (1)队列式(FIFO)分支限界法:按照队列先进先出(FIFO)原则选取下一个节点为扩展节点。 (2)优先队列式分支限界法:按照优先队列中规定的优先级选取优先级最高的节点成为当前扩展节点。 (最优子结构性质)是贪心算法与动态规划算法的共同点。 贪心算法与动态规划算法的主要区别是(贪心选择性质)。 回溯算法和分支限界法的问题的解空间树不会是( 无序树). 14.哈弗曼编码的贪心算法所需的计算时间为( B )。 A、O(n2n) B、O(nlogn) C、O(2n) D、O(n) 21、下面关于NP问题说法正确的是(B ) A NP问题都是不可能解决的问题 B P类问题包含在NP类问题中 C NP完全问题是P类问题的子集 D NP类问题包含在P类问题中 40、背包问题的贪心算法所需的计算时间为( B )

关于图灵机的三个问题

写这篇文章,是想尝试回答学习图灵机模型中遇到的三个问题: 1) 为什么图灵机有不可判的问题? 2) 为什么强大的图灵机会不停机? 3) 为什么图灵当初要设计图灵机? 图灵机(Turing machine)是英国数学家阿兰·图灵(Alan Turing)于1936年设计的一种抽象机器,用于定义和模拟计算(computing)。图灵机虽然构造简单,但却及其强大,它能模拟现代计算机的所有计算行为,堪称计算的终极机器。然而即便是这个终极机器,也有令它无能为力的问题,这便是第一个要回答的问题:为什么图灵机有不可判的问题? 首先明确什么是图灵可识别(Turing recognizable)和图灵可判定(Turing decidable)。图灵机的识别对象是语言,图灵可识别当然不是说图灵本人能识别的语言(照这样说汉语可能是图灵不可识别的~),事实上这只是简称,全称应该是图灵机可识别语言(Turing machine recognizable language)和图灵机可判定语言(Turing machine decidable language)。 一台图灵机在读取一个串后可能进入三种状态:接受、拒绝、循环,如果图灵机进入循环状态,那它将永不停机。现在假设有语言A,如果能设计出一台图灵机M,对于任意字符串ω,如果ω∈A,那么M读取ω后会进入接受状态,那么A是一个图灵可识别语言。注意这个定义对于ω不属于A的情况没有做出限制,所以M读取到不属于A的ω,那么它有可能拒绝,也有可能循环。 图灵可判定语言的要求更严格,它要求对于语言A能设计出一台图灵机M:如果ω∈A,M 进入接受状态;否则进入拒绝状态。如果一个语言是图灵可判定的,总能设计出一台图灵机,能在有限步数内判定一个字符串是不是属于这个语言。如果一台图灵机对所有输入总是停机,那么称它为判定器(decider)。然而第一个问题指明一定有所有判定器都不能判定的问题,要证明这一点,得从康托(Georg Cantor)说起。 康托最大的贡献可能是创建了现代集合论,他认为某些不同的无穷集合有不同的大小。1891年,康托发表了一篇只有5页的论文,证明实数集的基数大于自然数集,并在这篇论文中提出了传说中的对角线方法(方法虽然巧妙但很简单,wiki上有我就不赘述)。图灵机的不可判定问题便需要借助对角线方法。而实数集“大于”自然数集这个事实,可以这么想:“无限×无限”比“无限×有限”大。每个自然数是有限的,集合是一阶无限,自然数集就是一阶无限;相较之下,一个实数是一阶无限,集合又是一阶无限,那么实数的集合就是二阶无限。这个一阶二阶只是我个人的说法,关于不同集合之间的大小关系,康托提出连续统假设,即希尔伯特第一问题,认为不存在一个基数绝对大于可数集而绝对小于实数集的集合,不过这跟今天的话题没有关系,不再展开。 回到正题:图灵机。图灵机能够识别语言,而图灵机本身当然也可以由语言描述。什么是语言?给定一个字母表∑,一个{[由∑中的字母组成的序列]的集合}就是∑上的一个语言(为了消除歧义,算式可以加括号,语言当然也可以)。必须清楚这些概念中哪些是有限的,哪些是无限的:一个语言包含的字符串数可以是有限的也可以是无限的,但一个字母表上的所有语言的数目是无限的,而语言中任意一个字符串的长度是有限的。 首先要证明的是:一个字母表上所有语言构成的集合不仅是无限的,而且是不可数的。 这里需要借助无限二进制序列的集合来帮助证明。一个无限二进制序列(即{0,1}组成的无限序列)是一阶无限,那么这些序列组成的集合就是“无限×无限”,可以通过对角线方法证明无限二进制序列是不可数的,也可以将实数集的元素唯一地映射到无限二进制序列集合。

图灵机简介和原理分析(精编文档).doc

【最新整理,下载后即可编辑】 图灵机简介和原理分析 摘要:1936年,阿兰·图灵提出了一种抽象的计算模型——图灵机(Turing Machine)。图灵机是指一个抽象的机器,可被视作任意解决有限数学逻辑过程的机器,它提供了一种简单有效的解决逻辑过程的方法,加快了后来诺依曼设计的计算机的出现。本文将对图灵机的原理和历史等进行简介和分析。 关键字:图灵机,计算模型。 一.图灵机的历史发展 图灵机被公认为现代计算机的原型,这台机器可以读入一系列的零和一,这些数字代表了解决某一问题所需要的步骤,按这个步骤走下去,就可以解决某一特定的问题。这种观念在当时是具有革命性意义的,因为即使在50年代的时候,大部分的计算机还只能解决某一特定问题,不是通用的,而图灵机从理论上却是通用机。 1936年,图灵向伦敦权威的数学杂志投了一篇论文,题为"论数字计算在决断难题中的应用"。在这篇开创性的论文中,图灵给"可计算性"下了一个严格的数学定义,并提出著名的图灵机"(Turing Machine)的设想。"图灵机"不是一种具体的机器,而是一种思想模型,可制造一种十分简单但运算能力极强的计算装置,用来计算所有能想像得到的可计算函数。"图灵机"与"冯?诺伊曼机"齐名,被永远载入计算机的发展史中。 1950年10月,图灵又发表了另一篇题为"机器能思考吗"的论文,成为划时代之作。也正是这篇文章,为图灵赢得了"人工智能之父"的桂冠。 在图灵看来,这台机器只用保留一些最简单的指令,一个复杂的工作只用把它分解为这几个最简单的操作就可以实现了,在当时他能够具有这样的思想确实是很了不起的。 图灵机的产生一方面奠定了现代数字计算机的基础(要知道后来冯?诺依曼就是根据图灵的设想才设计出第一台计算机的)。另一方面,根据图灵机这一基本简洁的概念,我

计算的极限(一)所有机器的机器,与无法计算的问题

计算的极限(一)所有机器的机器,与无法计算的 问题 作者:佚名 在图灵诞辰100周年之际,献给这位伟大的开拓者。 计算无处不在。 走进一个机房,在服务器排成的一道道墙之间,听着风扇的鼓噪,似乎能嗅出0和1在CPU和内存之间不间断的流动。从算筹算盘,到今天的计算机,我们用作计算的工具终于开始量到质的飞跃。计算机能做的事情越来越多,甚至超越了它们的制造者。上个世纪末,深蓝凭借前所未有的搜索和判断棋局的能力,成为第一台战胜人类国际象棋世界冠军的计算机,但它的胜利仍然仰仗于人类大师赋予的丰富国际象棋知识;而仅仅十余年后,Watson却已经能凭借自己的算法,先“理解”问题,然后有的放矢地在海量的数据库中寻找关联的答案。长此以往,工具将必在更多的方面超越它的制造者。而这一切,都来源于越来越精巧的计算。 计算似乎无所不能,宛如新的上帝。但即使是这位“上帝”,也逃不脱逻辑设定的界限。 第一位发现这一点的,便是图灵。 所有机器的机器 图灵机非常简单,只要明白了它的运作过程,任何一个受过足够训练的计算机系本科生都可以写出一个模拟图灵机运

行的程序。只消输入状态转移表和纸带的输入内容,程序就可以一步一步模拟相应的图灵机在纸带上爬来爬去的过程。对于一些熟悉图形编程的程序员来说,做个模拟动画也问题不大。即使不用计算机,靠人手一步步操作,也是一件小孩子也能完成的事。图灵机就是这么简单的一种机器。 虽然看上去简单,但实际上图灵机能做的事情远远超出一般的想象。只要有足够长的纸带和足够好的耐心,今天的电脑能做的计算,一台精心设计的图灵机也能完成。诀窍在于,电脑中的电路是有限的,电路的状态也是有限的,我们可以用图灵机去模拟电脑中的电路状态。只要有足够长的纸带,那就可以模拟出足够大的寄存器、内存和硬盘;而CPU中的电路,虽然所有可能的状态极其多,但终究是有限的,可以用图灵机模拟,虽然这台图灵机的状态转移表将会有着令人头痛的大小,以及令人偏头痛的复杂程度。但是,从原则上来说,用图灵机模拟一台电脑是完全可能的,虽然每次“读写内存”时,读写头都需要花长得令人咋舌的时间在纸带上来回奔波。 也就是说,从原则上来说,只要配备适当的输入和输出设备,以及极其好的耐心,我们完全可以用图灵机上网、玩游戏甚至执行自己写的程序。特别地,存在一台特定的编写程序专用的图灵机T,我们可以在纸带上写程序,将它输入到T,然后T就能执行这个程序。那么,如果我们将方才本科生写

图灵机简介和原理分析

图灵机简介和原理分析 摘要:1936年,阿兰·图灵提出了一种抽象的计算模型——图灵机 (Turing Machine)。图灵机是指一个抽象的机器,可被视作任意解决有限数学逻辑过程的机器,它提供了一种简单有效的解决逻辑过程的方法,加快了后来诺依曼设计的计算机的出现。本文将对图灵机的原理和历史等进行简介和分析。 关键字:图灵机,计算模型。 一.图灵机的历史发展 图灵机被公认为现代计算机的原型,这台机器可以读入一系列的零和一,这些数字代表了解决某一问题所需要的步骤,按这个步骤走下去,就可以解决某一特定的问题。这种观念在当时是具有革命性意义的,因为即使在50年代的时候,大部分的计算机还只能解决某一特定问题,不是通用的,而图灵机从理论上却是通用机。 1936年,图灵向伦敦权威的数学杂志投了一篇论文,题为"论数字计算在决断难题中的应用"。在这篇开创性的论文中,图灵给"可计算性"下了一个严格的数学定义,并提出著名的图灵机"(Turing Machine)的设想。"图灵机"不是一种具体的机器,而是一种思想模型,可制造一种十分简单但运算能力极强的计算装置,用来计算所有能想像得到的可计算函数。"图灵机"与"冯?诺伊曼机"齐名,被永远载入计算机的发展史中。1950年10月,图灵又

发表了另一篇题为"机器能思考吗"的论文,成为划时代之作。也正是这篇文章,为图灵赢得了"人工智能之父"的桂冠。 在图灵看来,这台机器只用保留一些最简单的指令,一个复杂的工作只用把它分解为这几个最简单的操作就可以实现了,在当时他能够具有这样的思想确实是很了不起的。 图灵机的产生一方面奠定了现代数字计算机的基础(要知道后来冯?诺依曼就是根据图灵的设想才设计出第一台计算机的)。另一方面,根据图灵机这一基本简洁的概念,我们还可以看到可计算的极限是什么。也就是说实际上计算机的本领从原则上讲是有限制的。请注意,这里说到计算机的极限并不是说它不能吃饭、扫地等硬件方面的极限,而是仅仅就从信息处理这个角度,计算机也仍然存在着极限。这就是图灵机的停机问题。 二.图灵机原理及分析 图灵的基本思想是用机器来模拟人们用纸笔进行数学运算的过程,他把这样的过程看作下列两种简单的动作: 1)在纸上写上或擦除某个符号; 2)把注意力从纸的一个位置移动到另一个位置; 而在每个阶段,人要决定下一步的动作,依赖于 (a) 此人当前所关注的纸上某个位置的符号和(b) 此人当前思维的状态。为了模拟人的这种运算过程,图灵构造出一台假想的机器,该机器由以下几个部分组成: 一条无限长的纸带。纸带被划分为一个接一个的小格子,每

超星尔雅《人工智能》章节测验答案

1.1育才新工科-人工智能简介 1【判断题】 《人工智能》课程为理工类通选课,本课程给予学生的主要是思想而不是知识。对1.2图灵是谁? 1 【单选题】图灵曾协助军方破解()的著名密码系统Enigma。C A、英国 B、美国 C、德国 D、日本 2【判断题】电影《模仿游戏》是纪念图灵诞生90周年而拍摄的电影。X 3【判断题】图灵使用博弈论的方法破解了Enigma。对 1.3为什么图灵很灵? 1 【单选题】1937年,图灵在发表的论文()中,首次提出图灵机的概念。B A、《左右周期性的等价》 B、《论可计算数及其在判定问题中的应用》 C、《可计算性与λ可定义性》 D、《论高斯误差函数》 2 【单选题】1950年,图灵在他的论文()中,提出了关于机器思维的问题。D A、《论数字计算在决断难题中的应用》

B、《论可计算数及其在判定问题中的应用》 C、《可计算性与λ可定义性》 D、《计算和智能》 3【判断题】存在一种人类认为的可计算系统与图灵计算不等价。X 4【判断题】图灵测试是指测试者与被测试者(一个人和一台机器)隔开的情况下,通过一些装置(如键盘)向被测试者随意提问。如果测试者不能确定出被测试者是人还是机器,那么这台机器就通过了测试,并被认为具有人类智能。对 1.4为什么图灵不灵? 1 【单选题】以下叙述不正确的是()。B A、图灵测试混淆了智能和人类的关系 B、机器智能的机制必须与人类智能相同 C、机器智能可以完全在特定的领域中超越人类智能 D、机器智能可以有人类智能的创造力 2 【单选题】在政府报告中,()的报告使用“机器智能”这个词汇。D A、中国 B、英国 C、德国 D、美国 3【多选题】机器智能可以有自己的“人格”体现主要表现在()。ABC A、模型间的对抗—智能进化的方式 B、机器智能的协作—机器智能的社会组织

计算理论2013 12题

一.填空题 1.语言类P 、PSPACE 、NP 、NPSPACE 、EXPTIME 之间的关系为 (EXPTIME NPSPACE PSPACE NP P ?=??)。 2.产生语言{12n 03n |n ≥0}的上下文无关文法是(00011|A A ε→)。 3.命题“利用递归定理,一个TM M 可以得到自己的描述”是(正确的)。(正确的、错误的) 4.命题“A ≤M B 和B A M ≤含义相同”是(正确的)。(正确的、错误的) 5.上下文无关文法为乔姆斯基范式,是指其中的每一个规则具有如下形式(a A BC A →→,)。 6.萨维奇定理指出:对于任何函数 f:N →R +,其中f(n)≥n,( ))(())((2n f SPACE n f NSPACE ? ) 7.空间层次定理证明了空间复杂性类不全相同,它们形成一个层次结构,其中(时空界限较大的类比时空界限较小的类)包含更多的语言。 8.语言B 是NL 完全的,如果(1)NL B ∈并且(2)NL 中的每个A (对数空间)可规约到B ,例如(PATH )是NL 完全的。 9.如果一个最小化问题的近似算法总能找到不超过最优解k 倍的可行解,则称这个算法是(k-优)的。 10.根据概率错误,定义RP 是多项式时间概率图灵机识别的语言类,其中,不在语言中的输入以概率(1)被拒绝。 二.问答题 1.说明有穷自动机、正则表达式、下推自动机、图灵机的异同点。 2.对于图示的DFA M ,回答下列问题,并说明理由 (1)?0100,DFA A M >∈<是,DFA M 接受0100 (2)?011,DFA A M >∈<否,M 不接受011 (3)?DFA A M >∈<否,输入不完全,因此形式不正确 (4)?0100,REX A M >∈<否,前半部分不是 正则表达式,因此形式不正确 (5)?DFA E M >∈<否,M 的语言非空 (6)?,DFA EQ M M >∈<是,M 接受和它自身相同的语言 3.非确定性图灵机、概率图灵机和交错式图灵机是如何体现非确定性的? 三.构造题 1.构造PDA 。使其接受语言{0n 1n+1|n ≥0}。要求给出相应的形式描述和状态转移图。 2.构造一个可判定语言A={0n 1n 0n |n ≥0}的图灵机M ,并分析该图灵机算法的时间复杂性。 q 0 q 1 q 2 0 1 1 0,1

大学计算机基础习题及答案

一、选择题 1. 物理器件采用集成电路的计算机被称为 C 。 A. 第一代计算机 B. 第二代计算机 C. 第三代计算机 D. 第四代计算机 2. B 是现代通用计算机的雏形。 A. 宾州大学于1946年2月研制成功的ENIAC B. 查尔斯·巴贝奇于1834年设计的分析机 C. 冯·诺依曼和他的同事们研制的EDVAC D. 图灵建立的图灵机模型 3. 计算机科学的奠基人是 B 。 A. 查尔斯·巴贝奇 B. 图灵 C. 阿塔诺索夫 D. 冯·诺依曼 4. 在下列关于图灵机的说法中,错误 ..的是 C 。 A. 现代计算机的功能不可能超越图灵机 B. 图灵机不能计算的问题现代计算机也不能计算 C. 图灵机是真空管机器 D. 只有图灵机能解决的计算问题,实际计算机才能解决 5. 目前,被人们称为3C的技术是指 A 。 A. 通信技术、计算机技术和控制技术 B. 微电子技术、通信技术和计算机技术 C. 微电子技术、光电子技术和计算机技术 D. 信息基础技术、信息系统技术和信息应用技术 6. 在下列关于信息技术的说法中,错误 ..的是 C 。 A. 微电子技术是信息技术的基础 B. 计算机技术是现代信息技术的核心 C. 光电子技术是继微电子技术之后近30年来迅猛发展的综合性高新技术 D. 信息传输技术主要是指计算机技术和网络技术 7. 在计算机运行时,把程序和数据一同存放在内存中,这是1946年由 C 领导的小组正式提出并论证的。 A. 图灵 B. 布尔 C. 冯·诺依曼 D. 爱因斯坦 8. 计算机最早的应用领域是 A 。 A. 科学计算 B. 数据处理 C. 过程控制 D. CAD/CAM/CIMS 9. 计算机辅助制造的简称是 B 。 A. CAD B. CAM

计算机教材课后习题参考答案剖析

《大学计算机基础与计算思维》 课后习题参考答案 目录 第1章计算、计算机与计算思维 (1) 第2章数据的计算基础 (3) 第3章计算机硬件系统 (6) 第4章操作系统基础 (11) 第5章算法与数据结构 (13) 第6章程序设计及软件工程基础 (17) 第7章数据库技术 (19) 第8章计算机网络 (22) 第9章信息安全与职业道德 (24) 第10章计算软件 (28) 第11章办公软件Office 2010 (29) 算机科学与技术学院计算机基础教学部 2015年9月

第1章计算、计算机与计算思维 1.1 举例说明可计算性和计算复杂性的概念。 答:对于给定的一个输入,如果计算机器能在有限的步骤内给出答案,这个问题就是可计算的。数值计算、能够转化为数值计算的非数值问题(如语音、图形、图像等)都是可计算的。 计算复杂性从数学上提出计算问题难度大小的模型,判断哪些问题的计算是简单的,哪些是困难的,研究计算过程中时间和空间等资源的耗费情况,从而寻求更为优越的求解复杂问题的有效规则,例如著名的汉诺塔问题。 1.2 列举3种电子计算机出现之前的计算工具,并简述其主要特点。 答:(1)算盘通过算法口诀化,加快了计算速度。(2)帕斯卡加法器通过齿轮旋转解决了自动进位的问题。(3)机电式计算机Z-1,全部采用继电器,第一次实现了浮点记数法、二进制运算、带存储地址的指令等设计思想。 1.3 简述电子计算机的发展历程及各时代的主要特征。 答:第一代——电子管计算机(1946—1954年)。这个时期的计算机主要采用电子管作为运算和逻辑元件。主存储器采用汞延迟线、磁鼓、磁芯,外存储器采用磁带。在软件方面,用机器语言和汇编语言编写程序。程序的编写与修改都非常繁琐。计算机主要用于科学和工程计算。 第二代——晶体管计算机(1954—1964年)。计算机逻辑元件逐步由电子管改为晶体管,体积与功耗都有所降低。主存储器采用铁淦氧磁芯器,外存储器采用先进的磁盘,计算机的速度和可靠性有所提高。软件方面,出现了各种各样的高级语言,如FORTRAN、ALGOL、COBIL 及编译程序语言,简化了程序设计,建立了程序库和批处理的管理程序,开始用“操作系统”软件对整个计算机资源进行管理。除了进行科学计算之外,这时的计算机还应用于工业控制、工程设计及数据处理等领域。 第三代——集成电路计算机(1964—1970年)。这个时期的计算机逻辑元件使用集成电路代替了原来独立的物理元件,使用半导体存储器代替了磁芯存储器。中、小规模的集成电路可在单个芯片上集成几十个晶体管。在软件方面,出现了分时操作系统及交互式高级语言,实现了多道程序的运行,如当其中一个程序等待输入/输出时,另一个程序可以进行计算,这大大提高了计算机的运行速度。 第四代——大规模集成电路计算机(1970年至今)。这个时期的计算机逻辑元件和主存储器都采用了大规模集成电路LSI(Large Scale Integration of Circuits)。通过LSI技术在一个芯片上能集成几十万甚至几百万个晶体管,集成度比中、小规模集成电路提高了1~2个以上的数量级。 1.4 简述计算机的特点。 答:(1)运算速度快;(2)计算精度高;(3)具有记忆能力;(4)具有逻辑判断能力;(5)具有自动执行能力 1.5 你所知道的计算机有哪些? 答:根据计算机的综合性能指标,结合计算机应用领域的分布可将计算机分为高性能计算机、微型计算机、工作站、服务器、嵌入式计算机五大类。 1.6 举例说明计算机的广泛应用。 答:计算机的应用可以归纳为以下几个主要方面:(1)科学计算(2)数据处理(3)过程控制(4)计算机辅助系统(5)人工智能(6)网络通信 1.7 什么是图灵机?它对电子计算机的发明有何启示? 答:通过建立指令、程序以及通用机器执行程序的理论模型,证明了可以制造一种通用的机器计算所有能想象得到的可计算函数,这种理论上的计算机后来被命名为“图灵机”(Turing Machine)。

计算机复习题

1()是现代通用计算机的雏形 1分?A宾州大学于1946年2月研制的ENIAC ?B查尔斯.巴贝奇1934年设计的分析机 ?C冯.诺依曼和他的同事们研制的EDVAC ?D艾兰.图灵建立的图灵机模型 答案:B 2世界上第一台电子计算机ENIAC和诞生于() 1分?A1939 ?B1946 ?C1952 ?D1958 答案:B 3在下列关于图灵机的说法中,错误的是()。 1分?A现代计算机的功能不可能超越图灵机 ?B图灵机不可计算的问题现代计算机也不能计算 ?C图灵机是真空管机器 ?D只能图灵机能解决的计算机问题,实际计算机才能解决 答案:C 4计算机科学奠基人是()。 1分?A查尔斯.巴贝奇 ?B艾兰.图灵 ?C莫奇莱和埃克特 ?D冯.诺依曼 答案:B

在计算机运行时,把程序和数据一样存放在内存中,这是1946年由()领导不小组正式提出的并论证的。 1分?A冯.诺依曼 ?B布尔 ?C艾兰.图灵 ?D爱因斯坦 答案:A 6计算机从其诞生至今已经历了4个时代,这种对计算机划代的原则是根据()。 1分?A计算机所采用的电子器件 ?B计算机的运算速度 ?C程序设计语言 ?D计算机的存储量 答案:A 7物理器件采用晶体管的计算机被称为()。 1分?A第一代计算机 ?B第二代计算机 ?C第三代计算机 ?D第四代计算机 正确答案:B 8专门为某种用途而设计的计算机,称为()计算机。 1分?A专用 ?B通用 ?C特殊 ?D模拟 答案:A 9

1分?A科学计算 ?B数据处理 ?C过程控制 ?D CAD/CAM/CIMS 答案:A 10计算机辅助制造的简称是()。 1分?A CAD ?B CAM ?C CAE ?D CBE 答案:B 11在电子商务中,企事业与消费都是之间的交易称为()。 1分?A B2B ?B B2C ?C C2C ?D C2B 答案:B 12下列不属于人类三大科学思维的是()。 1分?A理论思维 ?B逻辑思维 ?C实验思维 ?D计算思维 正确答案:B 13下列关于计算机思维的说法中,正确的是()。

图灵机介绍

图灵机介绍 图灵机 所谓的图灵机就是指一个抽象的机器,它有一条无限长的纸带,纸带分成了一个一个的小方格,每个方格有不同的颜色。有一个机器头在纸带上移来移去。机器头有一组内部状态,还有一些固定的程序。在每个时刻,机器头都要从当前纸带上读入一个方格信息,然后结合自己的内部状态查找程序表,根据程序输出信息到纸带方格上,并转换自己的内部状态,然后进行移动。 发明者 1936年,阿兰·图灵(1912-1954)提出了一种抽象的计算模型——图灵机(TuringMachine)。形式化 一台图灵机是一个七元组,{Q,Σ,Γ,δ,q0,qaccept,qreject},其中Q,Σ,Γ都是有限集合,且满足 1.Q是状态集合; 2.Σ是输入字母表,其中不包含特殊的空白符□; 3.Γ是带字母表,其中□∈Γ且Σ∈Γ; 4.δ:Q×「→Q×Γ×{L,R}是转移函数,其中L,R表示读写头是向左移还是向右移; 5.q0∈Q是起始状态; 6.qaccept是接受状态。 7.qreject是拒绝状态,且。qreject≠qaccept 基本思想 图灵的基本思想是用机器来模拟人们用纸笔进行数学运算的过程,他把这样的过程看作下列两种简单的动作: 在纸上写上或擦除某个符号; 把注意力从纸的一个位置移动到另一个位置; 而在每个阶段,人要决定下一步的动作,依赖于(a)此人当前所关注的纸上某个位置的符号和(b)此人当前思维的状态。 为了模拟人的这种运算过程,图灵构造出一台假想的机器,该机器由以下几个部分组成: 1.一条无限长的纸带TAPE。纸带被划分为一个接一个的小格子,每个格子上包含一个来自有限字母表的符号,字母表中有一个特殊的符号表示空白。纸带上的格子从左到右依此被编号

量子计算机工作原理

量子计算机工作原理 当今的计算机厂商提供的强大计算处理能力仍不能满足Array我们对运算速度和运算能力的渴求。1947 年,美国计算 机工程师霍华德·艾肯 (Howard Aiken) 曾说,只要六台 电子数字计算机就可以满足全美国的计算需要。其他人也 做过类似的错误估计,说什么仅需多少计算能力就能满足 我们不断增长的技术需求。当然,艾肯没有算上日后科学 研究产生的大量数据,以及个人计算机的普及,还有互联 网的崛起:所有这些都使我们对计算能力的需求与日俱 增。 我们是否终有一天能够拥有需要的或是希望的计算能力呢?如果像摩尔定律指出的那样, 微处理器上的晶体管数目保持每18个月翻一番,那么到2020或2030年微处理器上的线路 就会到达原子水平了。顺理成章的下一步将是建造量子计算机,充分驾驭原子和分子的能力,将其用于存储和计算工作。量子计算机在进行某些计算的时候可以比任何硅基计算机 快出很多。 科学家已经建造起一些能够完成某种运算的简单量子计算机,但要制造实用的量子计算机 还要等上很多年。在本文中,您将了解到什么是量子计算机,以及它在未来计算时代所发 挥的作用。 量子计算的起源距离现在并不很远。尽管计算机早在上世纪四十年代就已出现,但量子计算的理论在20年前才由美国阿贡国家实验室的一位物理学家首次提出。世人公认保罗·贝尼奥夫 (Paul Benioff) 在1981年第一次将量子理论用于计算机,提出了制造量子图灵机的理论。大部分数字计算机,比如您正用来阅读文章的这台,都是基于图灵理论的。 阿兰?图灵 (Alan Turing) 于19世纪30年代提出的图灵机包含一条无限长的、被分成无数小格的带子。每个格子要么保存一个符号(1或0)要么是空白。一个读写装置可以读取这些符号和空白,它们构成了图灵机的程序指令。听起来是否有些耳熟呢?那么对于量子图灵机,区别在于带子和读写头都以量子态存在的。这意味着带子上的符号除了可以是0或1,还可以是0和1的叠加。常规的图灵机每次只能完成一个计算,而量子图灵机可以同时进行多个计算。 今天我们使用的计算机像图灵机一样,通过操作具有两种状态的位元(0或1)进行工作。量子计算机不只依靠两种状态。它们将信息编码为量子比特,或称昆比特(qubit)。量子比特可以是1或0,也可以是某种叠加态:即同时是1、0或二者之间的某个值。量子比特 由一组原子实现,它们协同工作起到计算机内存和处理器的作用。因为量子计算机可以同时包含这几种状态,所以它可能比当今功能最强大的超级计算机还要强大数百万倍的计算机。这种量子比特的叠加使量子计算机具有内在并行性。物理学家戴维·多伊奇 (David Deutsch) 指出,这种并行性使量子计算机能够同时进行一百万条计算,而台式PC只能进行一条计算。一台30个量子比特的量子计算机的计算能力和一台每秒十万亿次浮点运算 (teraflops)

图灵论题 与 丘奇 -图灵定理 - 丘奇 -

丘奇-图灵论题 与 丘奇-图灵定理 Miner 2011.03.13 https://www.360docs.net/doc/459775696.html,/group/swarmagents_ai/ https://www.360docs.net/doc/459775696.html,/group/swarmagents_ai/

希尔伯特第十问题 1900 年,巴黎第二届国际数学家大会,希尔伯特“数学问题”演讲:23个他认为最具重要意义的数学问题 第十问题:判定丢番图方程的可解性 对包含任意个未知数的丢番图方程,给出一个 有效的算法,通过有限次的计算,能够判定该 方程在有理数整数上是否可解。 丢番图方程:整系数代数多项式方程 x2+y2=z2 有整数解(勾三股四弦五) 2x-2y=1 没有整数解

可计算性和计算复杂性理论 研究计算和可计算性概念 研究各种计算模型及其等价性 研究不可计算性 研究P和NP问题

Alonzo Church (1903-1995)Alan Turing (1912-1954) Kurt Godel [1906-1978]

可以有效计算的函数 数学上,算法是(通过有限多的步骤)对数学函数进行有效计算的方法。 因此算法研究的一个重要的切入点,是寻找可以有效计算的函数。 开始只知道一些最简单的函数,以及用这些函数通过若干简单规则组合出的函数是 可以有效计算的。数学家们把这类函数叫做递归函数(Recursive Function)。

1931 年,Herbrand(1908-1931,登山时遇难) 对递归函数进行了研究,并给哥德尔写信叙述了自己的研究结果。 Church(1903-1995) 命题:所有可以有效计算的函数都可以用λ-calculus来定义。 1934 年,丘奇向哥德尔介绍了这一猜测,但哥德尔不认同。于是丘奇请哥德尔给出一个他认为合适的描述。 哥德尔在Herbrand结果的基础上提出了一般递归函数的概念,并指出:凡算法可计算函数都是一般递归函数,反之亦然.(但哥德尔当时并没想到他的递归概念包含了所有可能的递归) 丘奇与克林证明了这两种看上去完全不同的描述方式实际上是彼此等价的。 丘奇相信已经找到了可以有效计算的函数的普遍定义。但哥德尔并不赞成,在他看来,在还没有找到一组公理刻划算法可计算性概念所包含的公认特性之前,不可能有完全令人满意的严格的数学定义。 在此期间,图灵独立思考了可计算性问题,最终以通用图灵机概念刻划了算法可计算性,并发现丘奇与哥德尔所定义的那些函数与他的抽象计算机可以计算的函数等价,获得哥德尔的承认(图灵当时研究图灵机的目的是要研究希尔伯特于1928 年提出的有关一阶逻辑的判定问题) 哥德尔不认同丘奇论题的原因可能是他认为可计算性不应依赖于形式系统的选择。而图灵机可计算这个概念的第一次成功地给出有意义的认识论观念上的一种绝对的定义。

相关文档
最新文档