第9章怎样研究算法遗传算法示例练习题答案解析.docx
《第9章怎样研究算法遗传算法示例练习题答案解析.docx》由会员分享,可在线阅读,更多相关《第9章怎样研究算法遗传算法示例练习题答案解析.docx(28页珍藏版)》请在冰豆网上搜索。
大学计算机-计算思维练习题集
第9章怎样研究算法:
遗传算法示例
1、P类问题、NP类问题、NPC类问题是计算机科学领域关于可求解性可计算性很重要的概念。
关于P、NP和NPC类问题,回答下列问题。
(1)下列说法不正确的是_____。
(A)P类问题是计算机可以在有限时间内能够求解的问题;
(B)NP类问题是计算机可以在有限时间内能够验证“解”的正确性的问题;
(C)NPC类问题是对问题的每一个可能解,计算机都可以在有限时间内验证“解”的正确性的问题,被称为NP完全问题;
(D)上述说法有不正确的;
答案:
D
解释:
本题考核P类问题、NP类问题、NPC类问题的概念。
P类问题指计算机可以在有限时间内求解的问题,(A)正确;NP类问题指虽然在多项式时间内难于求解但不难判断给定一个解的正确性问题,(B)正确;NPC问题指NP问题的所有可能答案都可以在多项式时间内进行正确与否的验算,称为NP-Complete问题,(C)正确;(A)(B)(C)都正确,所以(D)错误。
具体内容请参考第九章视频之“可求解与难求解问题”以及第九章课件。
(2)可解性问题是指能够找到多项式时间复杂性算法进行求解的问题,难解性问题是指找不到多项式时间复杂性算法进行求解的问题。
下列说法不正确的是_____。
(A)P类问题是可解性问题,NP类问题是难解性问题。
(B)NP类问题不一定是难解性问题,因为P类问题也一定是NP类问题;
(C)NP类问题不确定是否是P类问题,但NPC类问题一定是难解性问题;
(D)上述说法有不正确的;
答案:
A
解释:
本题考核对可解性问题和难解性问题概念的理解。
P类问题指计算机可以在有限时间内求解的问题,所以是可解性问题;NP类问题指虽然在多项式时间内难于求解但不难判断给定一个解的正确性问题,但P类问题是NP类问题的一个子集,所以NP类问题不一定是难解性问题;NPC问题指NP问题的所有可能答案都可以在多项式时间内进行正确与否的验算,称为NP-Complete问题,是难解性问题,综上,(A)错误。
具体内容请参考第九章视频之“可求解与难求解问题”以及第九章课件。
(3)下列说法正确的是_____。
(A)P类问题是计算机可以在有限时间内能够求解的问题;
(B)NP类问题是计算机可以在有限时间内能够求解的问题;
(C)NPC类问题是计算机可以在有限时间内能够求解的问题;
(D)上述说法都正确;
答案:
A
解释:
本题考核P类问题、NP类问题、NPC类问题的概念。
只有P类问题是计算机可以在有限时间内能够求解的问题,所以(A)正确。
具体内容请参考第九讲视频之“可求解与难求解问题”以及第九章课件。
(4)P类问题是多项式问题(PolynomialProblem),NP类问题是_____。
(A)非多项式问题;
(B)非确定性多项式问题;
(C)非P类问题;
(D)确定性非多项式问题;
(E)上述说法都正确;
答案:
B
解释:
本题考核对NP类问题的理解。
P类问题是多项式问题(PolynomialProblem),NP类问题是非确定性多项式问题(Non-deterministicPolynomial),NPC问题是完全非确定性多项式问题(NP-Complete),所以(B)正确。
具体内容请参考第九章视频之“可求解与难求解问题”以及第九章课件。
(5)下列说法不正确的是_____。
(A)P类问题是总能找到一个多项式时间复杂性算法进行求解的问题;
(B)NP类问题是一定找不到多项式时间复杂性算法进行求解的问题;
(C)NP类问题是不确定能够找到多项式时间复杂性算法进行求解的问题;
(D)NP类问题虽然是不确定能找到多项式时间复杂性算法进行求解,但一定能找到多项式时间复杂性算法进行“解”的正确性验证的问题;
(E)上述说法有不正确的;
答案:
B
解释:
本题考核对P类问题、NP类问题概念的理解。
P类问题是总能找到一个多项式时间复杂性算法进行求解的问题,NP类问题虽然是不确定能找到多项式时间复杂性算法进行求解,但一定能找到多项式时间复杂性算法进行“解”的正确性验证的问题,所以(B)错误。
具体内容请参考第九章视频之“可求解与难求解问题”以及第九章课件。
(*6)非确定性多项式问题是指这样的问题,下列说法不正确的是_____。
(A)它能够找到一个算法、甚至是多项式时间复杂性算法进行求解,但算法中包含“不确定性”,如“任意组合一个解,…”、“随机组合一个解,…”等;
(B)它能够找到一个算法、甚至是多项式时间复杂性算法进行求解,但算法是通过“猜测”方式求出问题的解;
(C)它能够通过“产生任何一个解,并验证解的正确性”的方法进行求解;
(D)它一定是能够找到多项式时间复杂性算法以验证给定“解”的正确性的问题;
(E)上述说法有不正确的;
答案:
E
解释:
本题考核对NP类问题概念的理解。
NP类问题:
非确定性多项式问题(Non-deterministicPolynomial)。
有些问题,其答案是无法直接计算得到的,只能通过间接的猜算或试算来得到结果,这就是非确定性问题(Non-deterministic)。
虽然在多项式时间内难于求解但不难判断给定一个解的正确性的问题,即:
在多项式时间内可以由一个算法验证一个解是否正确的非确定性问题,所以(A)(B)(C)(D)都是正确的,(E)错误。
具体内容请参考第九章视频之“可求解与难求解问题”以及第九章课件。
(7)、关于NP类问题求解,下列说法正确的是_____。
(A)NP类问题求精确解,可能找不到多项式时间复杂性算法;但NP类问题求近似解,则一定能够找到多项式时间复杂性算法;
(B)NP类问题求精确解,可能找不到多项式时间复杂性算法;但NP类问题求近似解,则也可能找不到多项式时间复杂性算法;
(C)虽然能够找到求NP类问题近似解的多项式时间复杂性算法,但所求得的解一定不是满意解;
(D)既然能够找到求NP类问题近似解的多项式时间复杂性算法,则所求得的解就一定是满意解;
(E)上述说法都正确;
答案:
A
解释:
本题考核对NP类问题求解的理解。
NP类问题指虽然在多项式时间内难于求解但不难判断给定一个解的正确性的问题,即:
在多项式时间内可以由一个算法验证一个解是否正确的非确定性问题,所以NP类问题求精确解,可能找不到多项式时间复杂性算法,但NP类问题求近似解,则一定能够找到多项式时间复杂性算法,(A)正确(B)错误;虽然能够找到求NP类问题近似解的多项式时间复杂性算法,但所求得的解不一定是满意解,(C)(D)错误。
具体内容请参考第九章视频之“可求解与难求解问题”以及第九章课件。
2、下图能够基本反映生物学遗传与优胜劣汰的过程。
理解该图,联想计算类问题求解,回答下列问题。
(1)下列说法不正确的是_____。
(A)任何一个生物个体的性状是由其染色体确定的,染色体是由基因及其有规律的排列所构成的,因此生物个体可由染色体来代表;
(B)生物的繁殖过程是通过将父代染色体的基因复制到子代染色体中完成的,在复制过程中会发生基因重组或基因突变。
基因重组是指同源的两个染色体之间基因的交叉组合,简称为“杂交/交配”。
基因突变是指复制过程中基因信息的变异,简称“突变”;
(C)不同染色体会产生不同生物个体的性状,其适应环境的能力也不同;
(D)自然界体现的是“优胜劣汰,适者生存”的丛林法则。
不适应环境的生物个体将被淘汰,自然界生物的生存能力会越来越强;
(E)上述说法有不正确的。
答案:
E
解释:
本题考核对生物遗传观点以及所给图片的理解。
关于生物遗传进化的基本观点如下:
生物的所有遗传信息都包含在其染色体中,染色体决定了生物的性状;
(ii)染色体是由基因及其有规律的排列所构成的,遗传和进化过程发生在染色体上;
(iii)生物的繁殖过程是由其基因的复制过程来完成的;
(iv)通过同源染色体之间的交叉或染色体的变异会产生新的物种,使生物呈现新的性状。
(v)对环境适应性好的基因或染色体经常比适应性差的基因或染色体有更多的机会遗传到下一代。
故(A)、(B)、(C)、(D)均正确。
于是,(E)错误。
具体内容请参考课堂视频“遗传算法的缘起--生物学中的遗传与进化”和第九章课件。
(2-1)类比计算类问题求解,下列说法不正确的是_____。
(A)一个染色体即是指问题的一个“可能解”。
任何“可能解”都可以表达为编码形式,构成编码的基本单位即是基因;
(B)所谓的复制、杂交、突变,是指一个可能解或两个可能解之间发生的、编码片段之间的复制、交叉或变异,它们都是产生新可能解的一种方式;
(C)所谓的环境适应性,可以认为是对一个可能解的一种度量,即能够度量一个可能解的好与坏的某一函数值,被称为“适应度”;
(D)基于(A)(B)(C),遗传算法就是“通过复制、交叉或变异,不断产生新的可能解;计算可能解的适应度;淘汰掉适应度差的可能解,保留适应度好的可能解。
”
(E)上述说法有不正确的;
答案:
E
解释:
本题考核对生物学中的概念与计算机中的概念的映射的理解。
染色体映射到计算机中就是编码解。
(A)正确。
复制是指将一个解从一个解集复制到另外一个解集。
杂交是指对两个可能解的编码通过交换某些编码位而形成两个新的可能解的遗传操作,是新可能解的一种形成方式。
突变是指随机地改变一个可能解的编码的某些片段(或基因)而使一个可能解变为一新的可能解的遗传操作,也是新解的一种形成方式。
(B)正确。
适应度性是指一个可能解接近最优解的一个度量。
(C)正确。
由(A)(B)(C),可以得到遗传算法的基本思想。
(D)正确。
故(E)错误。
综上,(E)错误。
具体内容请参考课堂视频“计算学科的遗传算法”和第九章课件。
(2-2)类比计算类问题求解,下列说法不正确的是_____。
(A)一个染色体即是指问题的一个“可能解”,一个基因即是“可能解”的一个编码位或若干编码位的一个组合;
(B)一个种群即是一个包含问题满意解的“可能解”的集合;
(C)适应度,即是对“可能解”的一个度量,它可以衡量“可能解”接近最优解或精确解的程度;
(D)复制、交叉、变异等都是产生新“可能解”的方式;
(E)上述说法有不正确的;
答案:
B
解释:
本题考核对生物学中的概念与计算机中的概念的映射的理解。
染色体映射到计算机中就是编码解,即一个可能解的基因型。
一个基因即是指可能解的某一位或几位,(A)正确。
种群是指若干可能解的集合,而不一定包含问题的满意解,(B)错误。
适应度性是指一个可能解接近最优解的一个度量,(C)正确。
复制、交叉、变异等都是产生新“可能解”的方式,(D)正确。
因为(B)错误,故(E)正确。
综上,本题答案为(B)。
具体内容请参考课堂视频“计算学科的遗传算法”和第九章课件。
3、类比生物遗传与优胜劣汰而形成的遗传算法的求解过程如下图示意。
理解该图,回答下列问题。
(1)图中给出了遗传算法的基本求解过程示意。
关于图中包含了哪些过程,下列说法正确的是_____。
(A)可能解的编码过程和初始种群的产生过程;
(B)交叉、变异形成候选种群的过程;
(C)可能解的适应度计算过程和汰选可能解形成新一代种群的过程;
(D)算法终止及最终解的形成过程;
(E)上述全部过程。
答案:
E
解释:
本题考查学生对遗传算法基本求解过程的理解。
图中第一行第一个箭头即是可能解的编码过程和初始种群的产生过程。
最右的大方框内的即是交叉、变异形成候选种群的过程。
右下方的方框以及箭头即是可能解的适应度计算过程和汰选可能