第9章怎样研究算法遗传算法示例练习题答案解析

更新时间:2023-12-25 16:56:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第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类问题是多项式问题(Polynomial Problem),NP类问题是_____。

(A) 非多项式问题;

(B) 非确定性多项式问题; (C) 非P类问题;

(D) 确定性非多项式问题; (E) 上述说法都正确;

答案:B 解释:

本题考核对NP类问题的理解。

P类问题是多项式问题(Polynomial Problem),NP类问题是非确定性多项式问题(Non-deterministic Polynomial),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-deterministic Polynomial)。有些问题,其答案是无法直接计算得到的,只能通过间接的猜算或试算来得到结果,这就是非确定性问题(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 解释:

本题考查学生对遗传算法基本求解过程的理解。

图中第一行第一个箭头即是可能解的编码过程和初始种群的产生过程。最右的大方框内的即是交叉、变异形成候选种群的过程。右下方的方框以及箭头即是可能解的适应度计算过程和汰选可能解形成新一代种群的过程。左下的图与箭头即是算法终止及最终解的形成过程。综上,(E)正确。

大学计算机-计算思维练习题集

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题”以及第九章课件。

(2)依据图中示例及求解过程示意,思考并回答,下列说法不正确的是_____。

(A)初始种群中的可能解可以随机产生;

(B)对于哪两个可能解进行交叉,可以采取随机方式从种群中选择出来;

(C)对于两个可能解进行两段交叉,其交叉点是固定的,不可以采取随机方式确定; (D)对于哪个解进行变异,以及变异位置的确定,可以采取随机方式选择和确定; (E)上述有不正确的说法。

答案:C 解释:

本题考查学生对遗传算法随机性的理解。

在遗传算法中,所有的解的产生,以及交叉,变异等可以随机的产生,并不是固定的。所以(C)的说法不正确。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题”以及第九章课件。

(3)依据图中示例及求解过程示意,思考并回答,下列说法不正确的是_____。

(A)种群的规模,即种群中可能解的个数是预先设定且固定不变的,其大小影响遗传算法求解的质量和效率;

(B)种群的规模,虽然是预先设定的,但其大小不会影响遗传算法求解的质量和效率; (C)种群的规模可以依据问题的所有可能解的个数来确定:太大,虽求解效果好但计算量却很大;太小,虽计算量很小,但求解效果却难以保证;

(D)种群规模不是随机确定的; (E)上述有不正确的说法。

答案:B 解释:

本题考查学生对遗传算法种群规模及其确定方法的理解。

在遗传算法的设计过程中,应该根据问题的具体情况设置合适的种群规模。如果规模过大,虽然求解效果好,但是计算量很大。如果规模太小,计算量虽然不大了,但是求解效果就难以保证了。所以,种群规模的大小一定会影响遗传算法求解的质量和效率。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题”以及第九章课件。

(4)依据图中示例及求解过程示意,思考并回答,下列说法不正确的是_____。

(A)遗传算法可以一个轮次一个轮次迭代地进行(被称为“进化”),可以在迭代到一定次数后

大学计算机-计算思维练习题集

终止;

(B)遗传算法一定可以求得满意解或最优解,它一定是在得到满意解或最优解时才终止; (C)遗传算法必定涉及随机处理,因为不仅仅是问题可能解的空间很大,而任何一个子解空间也都可能很大,穷举是难以办到的;

(D)遗传算法是以交叉操作为产生新可能解的主要操作,而以变异操作作为产生新可能解的辅助操作;

(E)上述有不正确的说法。

答案:B 解释:

本题考查学生对遗传算法的迭代性和求解质量方面的理解。

遗传算法就是通过不断的迭代来淘汰不好的解,留下好的解,(A)正确。不是任何问题采用遗传算法都可以得到满意解或最优解,因为遗传算法中会有随机的过程,算法每次执行的结果都不尽相同,(B)的说法不正确。(C)(D)的说法都没有问题。故此题的答案为(B)。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题”以及第九章课件。

(5)依据图中示例及求解过程示意,思考并回答,下列说法不正确的是_____。

(A)适应度,主要用于考察一个可能解是否接近最优解,以及接近的程度和方向,所以通常选择极值函数(如最大值函数或最小值函数)作为度量函数;

(B)一般而言,通过将可能解代入一个极值函数(如最大值函数或最小值函数)中获得函数值,以该函数值作为适应度的值;

(C)一个问题,若要用遗传算法求解,则要能够将其映射为类似于求极值一样的函数,即函数的极大值(或极小值)对应了问题的最优解/较优解,这是问题数学建模的一种方向;

(D)适应度函数可以任取一个极值函数,它与求解问题本身可以没有什么关系; (E)上述有不正确的说法。

答案:D 解释:

本题考查学生对遗传算法的适应度函数的理解。

遗传算法的适应度函数用来考察解与最优解的关系(接近程度、方向等)。而极值函数可以简单、清晰地表现该关系。所以,极值函数经常被选为遗传算法的适应度函数,(A)(B)(C)正确。适应度函数不能随意选择,一定是问题映射形成的函数,否则该适应度函数没有意义,(D)错误。故此题的答案为:(D)

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题”以及第九章课件。

大学计算机-计算思维练习题集

4、关于遗传算法为什么可以求解NPC类问题。理解下图,回答下列问题。

(1)遗传算法是典型的计算求解的方法,它通过“产生任何一个可能解,并验证可能解的正确性”的方法求解一个复杂问题。关于计算求解,下列说法正确的是_____。 (A)可以从所有可能解的集合中产生每一个可能解,并验证可能解的正确性。利用这种策略的算法,计算机一定能够在有限时间内找到精确解; (B)可以从所有可能解的集合中随机产生一些可能解,并验证可能解的正确性。利用这种策略的算法,计算机一定能够在有限时间内找到精确解;

(C)可以从所有可能解的集合中随机产生一些可能解,并验证可能解的正确性。利用这种策略的算法,计算机一定能够在有限时间内找到满意解;

(D)可以从所有可能解的集合中随机产生一些可能解,并验证可能解的正确性。利用这种策略的算法,如果随机产生的可能解越多,则计算机找到满意解的概率也越大,但耗费时间也越长; (E)上述说法都正确;

答案:D 解释:

本题考查遍历搜索与随机搜索的共性与差别;

从可能解中产生的集合,也许这个集合里并没有精确解,那么计算机不可能在该集合中找到精确解。(A)(B)(C)说法不正确。但是,产生的随机解越多,找到满意解的概率越大,(D)正确。综上,此题的答案为(D)。

具体内容请参考课堂视频“遗传算法为什么可以求解NPC问题”以及第九章课件。

(2)遗传算法是典型的计算求解的方法,它通过“产生任何一个可能解,并验证可能解的正确性”的方法求解一个复杂问题。关于计算求解,下列说法正确的是_____。

(A)可以从所有可能解的集合中随机产生一些可能解,并验证可能解的正确性。利用这种策略的算法—可被称为随机搜索算法。则,利用随机搜索算法,计算机在有限时间内一定能够找到满意解;

(B)为改进随机搜索算法的求解质量,在随机产生可能解的过程中,使后一个可能解的产生与前一个可能解相关联,即在前一个可能解的基础上随机产生后一个可能解,例如一个可能解编码

大学计算机-计算思维练习题集

为“110011001100”,可以通过改变该解编码的某些位产生下一个可能解(即相关),而改变哪些位则可随机处理。利用这种策略的算法---可被称为导向性随机搜索。则,利用导向性随机搜索,计算机在有限时间内一定能够找到满意解;

(C)和随机搜索相比,利用导向性随机搜索,计算机在有限时间内找到满意解的概率更大一些; (D)和随机搜索相比,利用导向性随机搜索,初始的可能解对计算机在有限时间内找到满意解的概率的影响更大一些;

(E)上述说法都正确;

答案:D 解释:

本题考查遍历搜索与随机搜索的共性与差别;

既然是随机的产生解,那么一定能产生满意解释不可能的。只能说改进算法会让产生满意解的概率变大而已。(A)(B)不正确。导向性随机搜索只是能提高搜索效率,并不能提高找到满意解的概率,(C)错误。(D)的说法没有问题。因此,此题的答案为(D)。

具体内容请参考课堂视频“遗传算法为什么可以求解NPC问题”以及第九章课件。

(3)遗传算法是典型的计算求解的方法,它通过“产生任何一个可能解,并验证可能解的正确性”的方法求解一个复杂问题。关于计算求解,下列说法不正确的是_____。

(A)在获得满意解的概率方面,如果初始可能解被恰当选择的话,导向性随机搜索一定比随机搜索更好一些;

(B)在获得满意解的概率方面,群导向性随机搜索一定比导向性随机搜索更好一些:相比导向性随机搜索,群导向性随机搜索采取了多条导向搜索路径;

(C)遗传算法是一种群导向性随机搜索:其有一定规模的种群,即可被认为是设置了多个初始的可能解;其交叉、变异产生新可能解的方法,即可被认为是新可能解与原可能解相关联;

(D)利用遗传算法,计算机在有限时间内一定能够找到满意解; (E)上述说法有不正确的;

答案:D 解释:

本题考查遍历搜索与随机搜索的共性与差别;

导向性随机搜索是根据初始解进行导向搜索的,如果初始解选择恰当,则能更快的找到满意解,(A)正确。群导向搜索由于是搜索了多条路径,相比于导向性搜索更容易找到满意解,(B)正确。(C)的说法没有问题。遗传算法中包含随机过程,不能保证一定能找到满意解,(D)的说法不正确。因此,此题的答案为(D)。

具体内容请参考课堂视频“遗传算法为什么可以求解NPC问题”以及第九章课件。

大学计算机-计算思维练习题集

5、关于什么情况下应用遗传算法,下列说法正确的是_____。

(A)当对某问题求解,找不到更好的多项式时间复杂性算法的时候; (B)当问题的可能解能够被表达,并能够确定问题的解空间的时候; (C)当能够找到可能解的适应度计算方法,即能够判断一个可能解接近精确解的程度或方向的时候;

(D)前述(A)(B)(C)至少有一个满足的时候; (E)前述(A)(B)(C)同时满足的时候;

答案:E 解释:

本题考查什么情况下可以应用遗传算法; 遗传算法的使用条件:

(1)已知“解空间”,即可能解的表现型和基因型

(2)关于可能解的“适应度”函数的计算方法(适应度用于判断一个可能解接近精确解的程度或方向)。

故,本题的正确答案为(E)。

具体内容请参考课堂视频“遗传算法为什么可以求解NPC问题”以及第九章课件。

6、关于遗传算法相关应用问题的抽象,回答下列问题。

(1)为什么说会议室租用问题、测试用例选择问题和航班机组成员问题是同一个问题,下列说法不正确的是_____。

(A)对这三个问题进行抽象,会议室、测试用例和机组成员都可被看作是“资源”,而讲座、软件功能测试和航班都可被看作是“任务”,则这三个问题都可被看作是:选取最少量的资源以满足其能够完成给定的所有任务;

(B)对这三个问题进行抽象,每个资源都能够完成一些任务,即覆盖一个任务集合。不同资源,具有不同的使用成本。上述问题都是选择具有最小成本的一些资源,使这些资源所覆盖任务集合的并集能够包含所有需要完成的任务;

(C)观察问题相同与否,可将问题语义剥离,形成数学模型。如果数学模型是相同的,则其是相同的问题,否则便不是相同的问题。上述三个问题抽象后都可以形成下列数学模型:

min z(x)??cjxj……………………………………………………(1)

j?1ns.t.

?axijj?1nj?1,i?1,2,...,m…………………………………………………(2)

xj?{0,1},j?1,2,...,n…………………………………………………(3)

所以上述三个问题是同一个问题;

大学计算机-计算思维练习题集

(D)前述说法(A)(B)(C)有不正确的;

答案:D 解释:

本题考查问题抽象能力;

三个问题都是同一个问题:一维的集覆盖问题。他们数学模型均(C)选项所述,每一行都被选出的列覆盖,被哪一列或几列覆盖不重要,要满足约束矩阵。故本题的正确答案为:(D)。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题2”以及第九章课件。

(2)集覆盖问题可以抽象为下列模型,请对下列模型进行理解。关于该模型,下列说法不正确的是_____。

min z(x)??cjxj……………………………………………………(1)

j?1ns.t.

?axijj?1nj?1,i?1,2,...,m…………………………………………………(2)

xj?{0,1},j?1,2,...,n…………………………………………………(3)

(A)公式(1)是计算所选择资源的总成本,目标是求具有最小总成本的资源集合。其中资源被从1,…,n编号。如果xj=1,表示资源j被选择;如果xj=0,表示资源j未被选择;cj表示选择资源j时所需消耗的成本。

(B)公式(2)表示每一个任务i都被某一个已选择的资源j(xj>0)能完成的任务集所覆盖; (C)当aij=1,且xj=1时,则aijxj=1,即任务i可以被资源j完成,且资源j已被选择; (D)?aijxj?1 表示任务i至少能被一个已选择出的资源所完成,换句话说,一个任务可能由多个资源来完成,在这些资源中只要有一个被选择即可; (E)上述说法有不正确的。

答案:E 解释:

本题考查对数学模型的理解能力;

该模型为一维集覆盖问题,需要选出这样的一维向量,使得每一行都被选出的列覆盖,被哪一列或几列覆盖不重要,要满足约束矩阵。(A)(B)(C)(D)的说法均正确。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题2”以及第九章课件。

(3)参阅教材,理解课程表优化安排问题。关于该问题,下列说法正确的是_____。

(A)该问题,与会议室租用问题、测试用例选择问题和航班机组成员问题,是同一个问题;

大学计算机-计算思维练习题集

(B)该问题,是一个一维的集合覆盖问题,仍旧可用下列数学模型来表达;

min z(x)??cjxj……………………………………………………(1)

j?1ns.t.

?axijj?1nj?1,i?1,2,...,m…………………………………………………(2)

xj?{0,1},j?1,2,...,n…………………………………………………(3)

(C)该问题,不同于(B)的数学模型。它是一个二维的集合覆盖问题,(B)中数学模型的可能解是,而本问题的可能解是

(D)上述说法全不正确。

答案:C 解释:

本题考查对数学模型的理解能力;

课程表优化问题是一个二维集覆盖问题。其可能解为二维矩阵。其模型为:

minf(x)???cijxiji?1j?186 ……………………………(1)

s.t. s.t.

?axj?16ijij?1,foreveryi,i?1,...,8 ……………………………(2) ……………………………(3)

……………………………(4)

?ai?18ijijx??2,foreveryj,j?1,...,6xij?{0,1};i?1,...,8;j?1,...,6

(C)正确。故本题的答案为(C)。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题2”以及第九章课件。

(4)会议室租用问题、测试用例选择问题和航班机组成员问题,这三个问题的遗传算法求解过程,与下述过程相同还是不同呢,说法正确的是_____。

大学计算机-计算思维练习题集

(A)求解过程是相同的,只是适应度函数不同,其他如可能解的编码、初始解的获得、交叉与变异规则、汰选可能解形成新一代种群的规则、算法终止条件等都可以相同;

(B)求解过程是相同的,可能解的编码、初始解的获得、交叉与变异规则、汰选可能解形成新一代种群的规则、算法终止条件等都可以是相同的,但适应度函数是不同的,此外,这三个问题需要判断一个可能解是否是可行解---即产生的可能解需要满足约束条件(2),而图中示例没有这一过程;

(C)求解过程是不同的,除适应度函数不同外,其他如可能解的编码、初始解的获得、交叉与变异规则、汰选可能解形成新一代种群的规则、算法终止条件等都是不同的;

(D)前述说法都正确。

答案:B 解释:

本题考查对数学模型的理解能力;

采用遗传算法解决问题的基本框架都是一样的,因此求解过程是相同的,可能解的编码、初始解的获得、交叉与变异规则、汰选可能解形成新一代种群的规则、算法终止条件等都可以是相同的,而题目中提到的三个问题的适应度函数均为模型中的条件1,而图示的问题的适应度函数为F(x),两者是不一样的。另外,图示的问题中,所有的可能解都是可行解,但三个问题的可能解救不一定是可行解,必须得验证。这点也是不一样的。综上,本题的答案为(B)。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题2”以及第九章课件。

(5)参阅教材,理解课程表优化安排问题的数学模型如下:

大学计算机-计算思维练习题集

86minf(x)???cijxiji?1j?1 ……………………………(1)

s.t. s.t.

?axj?16ijij?1,foreveryi,i?1,...,8 ……………………………(2) ……………………………(3)

……………………………(4)

?ai?18ijijx??2,foreveryj,j?1,...,6xij?{0,1};i?1,...,8;j?1,...,6

关于该模型,下列说法不正确的是_____。

(A)公式(1)是计算某一种方案---该方案给出了哪一门课程安排在哪个教室的一种安排,计算该方案的总成本,目标是求具有最小总成本的那个方案。其中教室被从1,…,n编号,课程被从1,…,m编号。如果xij=1,表示课程i被安排在教室j;如果xij=0,表示课程i未被安排在教室j;cij表示选择课程i安排在教室j时所需消耗的成本。

(B)公式(2)表示每一门课程至少被安排在1个教室,也可以安排在多个教室; (C)公式(3)表示每一个教室至多安排2门课程,也可以不安排课程; (D)公式(4)说明xij只能等于0或1。等于1表示课程i被安排在教室j;等于0则表示课程i与课程j没有关系; (E)上述说法有不正确的。

答案:B 解释:

本题考查对数学模型的理解能力;

选项(A)的说法没有问题。公式(2)表示一门课程恰好被安排在一个教室。而不是(B)选项中的“每一门课程至少被安排在1个教室,也可以安排在多个教室”。(B)的说法正确。(C)(D)的说法也没有问题。综上,本题的答案为(B)。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题2”以及第九章课件。

7、对类似于遗传算法的理解,需要理解关于各种解的名词之间的细微差别。 (1)下列说法正确的是_____。 (A)可行解集合?近似解集合?可能解集合?满意解集合?最优解集合;

(B)可能解集合?可行解集合?满意解集合?近似解集合?最优解集合; (C)可能解集合?可行解集合?近似解集合?满意解集合?最优解集合; (D)最优解集合?满意解集合?近似解集合?可行解集合?可能解集合; 答案:C 解释:

大学计算机-计算思维练习题集

本题考查对关于“解”的一些名词的理解;

可能解中包含可行解。可行解中包含近似解。近似解中包含满意解。满意解中包含最优解。(C)选项的说法是正确的。综上,本题的答案为(C)。

具体内容请第九章参考课堂视频与第九章课件。

(2-1)设一个问题的解的形式为x,下列说法不正确的是_____。 (A)由x的取值空间给定的任何一个x值被称为可行解;

(B)由一个算法在任何一组可行解中求出的最优解被称为是近似解; (C)符合用户期望的近似解被称为是满意解; (D)所有可行解中的最优解是问题的最优解; (E)上述说法有不正确的;

答案:A 解释:

本题考查对关于“解”的一些名词的理解; 由x的取值空间给定的任何一个x值为可能解。该x的值能满足问题的要求,该x才被称为一个可行解。(A)的说法不正确。(B)(C)(D)的说法都是正确的。综上,此题的答案为(A)。

具体内容请第九章参考课堂视频与第九章课件。

(2-2)设一个问题的解的形式为x,下列说法不正确的是_____。 (A)由x的取值空间给定的任何一个x值被称为可能解; (B)满足问题约束的可能解被称为可行解;

(C)在任何一组可行解中求出的最优解被称为是满意解; (D)所有可行解中的最优解是问题的最优解; (E)上述说法有不正确的;

答案:C 解释:

本题考查对关于“解”的一些名词的理解; 由x的取值空间给定的任何一个x值为可能解。该x的值能满足问题的要求,该x才被称为一个可行解。(A)(B)的说法正确。由一个算法在任何一组可行解中求出的最优解被称为是近似解,符合用户期望的近似解被称为是满意解,(C)的说法不正确。(D)的说法正确。综上,此题的答案为(C)。

具体内容请第九章参考课堂视频与第九章课件。

大学计算机-计算思维练习题集

868、对于类似于课程表优化安排问题的二维集覆盖问题:minf(x)???ci?1j?1ijijx,利用遗传算

法计算求解,回答下列问题。

(1)关于其可能解的编码,说法正确的是_____。 (A)仅可以按行优先编码;

(B)仅可以按列优先编码;

(C)既可以按行优先编码,又可以按列优先编码,但其对算法中交叉、变异操作规则设计是没有影响的;

(D)既可以按行优先编码,又可以按列优先编码,还可以有其他编码方式,不同的编码设计,可以有不同的交叉、变异操作规则;

答案:D 解释:

本题考查对问题解的编码的多样性;

二维集覆盖问题的可能解的都是二维矩阵。对于二维矩阵的编码可以有多种形式。每一种编码方式,都可以有自己的交叉、变异操作规则。(D)的说法是正确的。(A)(B)(C)的说法都不正确。综上,本题的答案为(D)。

具体内容请第九章参考课堂视频“怎样用遗传算法解决具体的应用问题2”与第九章课件。

(2)关于交叉规则的设计,下列说法不正确的是_____。 (A)既可以采取两段交叉,也可以采取多段交叉;

(B)两段交叉中,交叉点的选择可以随机确定:即随机确定一个交叉点,从中将解编码分为两段,将两个可能解的两段编码交换形成两个新的可能解;

(C)多段交叉既可采取等距离分段交叉,亦可采取可变距离分段交叉,交叉点和段间距离都可以随机的确定;

(D)交叉规则仅有以上(A)(B)(C)几种情况;

(E)对不同的问题,还可能有不同的交叉规则设计;

答案:D 解释:

本题考查对交叉规则设计多样性的认识;

交叉规则具有多样性。不仅可以采用两段交叉、多段交叉,根据不同的问题,还可以采用点交叉、行交叉、列交叉、块交叉等。所以(D)的说法是不正确的。因此,此题的答案为(D)。

具体内容请第九章参考课堂视频“怎样用遗传算法解决具体的应用问题5”与第九章课件。

大学计算机-计算思维练习题集

(3)关于交叉规则的设计,下列说法不正确的是_____。 (A)可以采取基本的两段交叉或多段交叉;

(B)可以采取点交叉、行交叉或列交叉;

(C)可以不以“位”为单位进行交叉,而以若干位的一个组合为单位进行交叉; (D)交叉规则仅有以上(A)(B)(C)几种情况;

答案:D 解释:

本题考查对结合问题特征进行交叉规则设计的认识;

交叉规则十分的丰富。(A)(B)(C)均为交叉规则。但交叉规则不仅仅限于此。还可以采用交叉与随机的交叉规则,如:两个染色体的各段的x位如都相同,则不交换,否则以概率p进行交换。具体问题具体分析。 具体内容请第九章参考课堂视频“怎样用遗传算法解决具体的应用问题5”与第九章课件。

9、遗传算法的设计在很多方面都需要引入概率,在哪些方面引入概率呢?下列说法不正确的是_____。 (A)初始种群的确定可以引入概率。结合问题可能解的分布选择概率模型,将此概率模型引入初始解的随机选择过程中,则选择出的初始可能解有助于遗传算法快速地获得满意解;

(B)交叉规则设计可以引入概率。从待交叉两个可能解的确定,到交叉点的确定,甚至到段间距离的确定等都可以引入概率,恰当的概率模型选择有助于遗传算法快速地获得满意解;

(C)遗传算法处处体现着概率的应用和随机处理。当可能的方案比较多,且穷举计算量很大时,便可采用概率方式进行随机化处理。例如两个可能解“00001000 10001100”“00111000 1011 1100”,如果做两段交叉,则分段交叉点可以有16个,如果16个交叉点都选择,则可能该子解空间仍旧很大,此时可依概率选择1号位置交叉至16号位置交叉,选择几个则依概率模型确定,选择1个至16个中的某些个;

(D)虽然遗传算法处处可以引入概率,但其概率模型却是相同的; (E)上述说法有不正确的。

答案:D 解释:

本题考查对遗传算法引入概率的认识;

遗传算法处处都可以引入概率。(A)(B)(C)都是在在遗传算法中加入概率的例子。在(A)(B)(C)描述的例子中,都引入了概率。常见的概率模型有:古典概型 ,几何概型,连续变量,离散变量,正态模型,泊松模型,指数模型等。可以根据不同的情况选择不同的模型。

大学计算机-计算思维练习题集

所以(D)的说法是不正确的。综上,此题的答案为:(D)。

具体内容请第九章参考课堂视频“怎样用遗传算法解决具体的应用问题5”与第九章课件。

10、遗传算法设计需要引入变异操作。变异操作是对种群中的某些可能解(个体)的某些编码位进行突变处理,例如二进制编码的解01110011,其第3位(自左而右)当前为1则将其变为0,称为变异操作。关于变异操作,回答下列问题。

(*1)关于如何应用变异操作,下列说法不正确的是_____。 (A)对种群中所有可能解(个体)以事先设定的变异概率确定是否进行变异;

(B)对进行变异的可能解(个体)随机选择变异位置进行相应位置的“位”变异; (C)对进行变异的可能解(个体)随机选择变异位置进行相应位置的“位组合”变异; (D)变异概率应选取较大值,即:使变异频繁发生,这样有助于快速收敛到满意解; (E)上述说法有不正确的。

答案:D 解释:

本题考查对遗传算法中关于变异的认识。 选项(D)中,变异概率:控制算法中变异操作的使用频率,实际情况下变异发生的频率并非越频繁越好,当变异概率无限增大的时候,遗传算法就变为纯随机搜索了,因此变异概率并不是可以无限扩大的,即在一定条件下使变异概率尽量大有助于快速收敛到满意解。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(IV)”和第九章课件。

(2)通过变异操作,使遗传算法具有局部的随机搜索能力。为什么?下列说法不正确的是_____。

(A)当产生一个可行解时,可以在该解的邻近解的集合中进行搜索,被称为局部搜索;该解的邻近解的集合是变化的,例如与该解有一位不同的邻近解、与该解有两位不同的邻近解,或者与该解有一个“位组合”不同的邻近解等;

(B)当产生一个可行解时,由于与该解的邻近解的集合可能很大,并不能穷举每一个邻近解,所以需要随机选择邻近解;

(C)当产生一个可行解时,通过某一位或几位的变异,便可产生该解相邻近的解。即相当于,以该解为中心,在与该解的邻近解的集合中随机选择出某个解;

(D)当产生的可行解接近最优解的邻域时,通过某一位或几位的变异,便可产生该解相邻近的解,此有助于使算法加速向最优解收敛;

(E)上述说法有不正确的。

答案:E 解释:

本题考查对遗传算法中关于变异的认识。

大学计算机-计算思维练习题集

选项(A)(B)(C)(D)均为正确选项。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(IV)”和第九章课件。

(3)通过变异操作,使遗传算法可维持群体多样性。为什么?下列说法不正确的是_____。

(A)由于初始解设置或经多次迭代后,很可能使一代种群中的各个可能解具有相似的结构,此时无论怎样交叉产生的新可能解,都将在与该结构相近的可能解空间搜索--这种现象被称为过早收敛;

(B)为避免过早收敛,有必要保持种群个体的多样性,即使种群中的可能解具有不同的结构,怎样保持不同的结构,即通过变异,打破原有相似的结构,进入到另外的空间中搜索;

(C)当进化到某一代时,种群的解可能具有相类似的结构,可能始终在这个类似结构的解集合中进行循环,为避免这种情况, 通过对一些解应用变异操作,打破种群的解的相类似结构,有助于跳出循环,在更大空间中进行搜索;

(D)当产生的可行解接近最优解的邻域时,应谨慎使用变异,以免偏向最优解的结构被破坏;而当产生的可行解并未接近最优解的邻域时,可以选择较大的变异概率以保证种群解的多样性;

(E)上述说法有不正确的。

答案:E 解释:

本题考查对遗传算法中关于变异的认识。 选项(A)(B)(C)(D)均为正确选项。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(IV)”和第九章课件。

11、遗传算法是迭代计算求解的方法。如何终止遗传算法,下列说法正确的是_____。

(A)当适应度已经达到饱和,继续进化不会产生适应度更好的近似解时,可终止遗传算法; (B)当某一个可行解已经满足满意解的条件,即满意解已经找到,可终止遗传算法;

(C)当进化到指定的代数(进化次数限制)或者当达到一定的资源占用量(计算耗费的资源限制,如计算时间、计算占用的内存等)时可终止算法,如当产生超过一定数量的不重复可行解后即可终止;

(D)仅有上述(A)(B)(C)几种终止遗传算法的情况;

答案:D 解释:

本题考查遗传算法如何终止的问题。

选项(A)终止后可以得到相对接近最优解的结果,理论上不存在更接近最优解的其他结果;选项(B)终止后可以得到满意解,但理论存在更符合条件的结果;选项(C)无法得到全部可行解,但可满足题意得到结果;但单独选择(A)(B)(C)均不全面,因此选择(D)。

大学计算机-计算思维练习题集

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(IV)”和第九章课件。

12、遗传算法是一种算法设计策略。不同的问题甚至相同的问题都可以设计不同的遗传算法进行求解,不同的遗传算法如可能解编码的不同、交叉与变异规则的不同、概率模型的选择不同等。 (1)如何衡量遗传算法的性能好坏,下列说法正确的是_____。

(A)对一些已知最优解的问题类别,可以通过精确算法获得最优解,然后使用“近似率”来衡量解的质量。所谓近似率是指算法求得的解与问题最优解的近似程度。则有:近似率越高的遗传算法,性能越好;

(B)对理论最优解不知道的问题类别,可以通过不同遗传算法在相同问题实例集上测试结果的横向比较来进行评价,即有:在执行相同次数的迭代后,获得满意解越好的遗传算法,性能越好; (C)对于具有迭代特征的近似算法,在迭代多少次后能够使得结果稳定(通俗来讲,即结果不再随进一步迭代而发生变化或发生极小的可以被忽略的变化)—这被称为收敛速度,它从一定程度反映了算法求解的“快慢”。在达到期望的满意解的前提下,迭代次数越少越好。 (D)遗传算法不一定能够得到满意解。因此,当不同算法均应用多次后,求得满意解次数越多的算法越好! (E)除上述衡量性能的指标外,还有其他的指标来衡量性能。

答案:E 解释:

本题考查如何衡量遗传算法的性能。

选择(E),(A)(B)(C)(D)均不全面,其他指标,诸如获得满意解所花费的平均时间以及占用的系统资源都可以列为衡量算法性能的指标。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(IV)”和第九章课件。

(2)如何衡量遗传算法的性能好坏,下列说法不正确的是_____。

(A)近似率越高的算法,性能越好;

(B)在执行相同次数的迭代后,获得满意解越好的算法,性能越好; (C)在达到期望满意解的前提下,迭代次数越多的算法,性能越好; (D)当不同算法均应用多次后,求得满意解次数越多的算法,性能越好!

答案:C 解释:

本题考查如何衡量遗传算法的性能。 (A)(B)(D)正确,(C)迭代次数多性能差。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(IV)”和第九章课件。

大学计算机-计算思维练习题集

(3)如何衡量遗传算法的性能好坏,下列说法不正确的是_____。

(A)近似率越低的算法,性能越好;

(B)在执行相同次数的迭代后,获得满意解越好的算法,性能越好; (C)在达到期望满意解的前提下,迭代次数越少的算法,性能越好; (D)当不同算法均应用多次后,求得满意解次数越多的算法,性能越好!

答案:A 解释:

本题考查如何衡量遗传算法的性能。 (B)(C)(D)正确,(A)近似率低性能差。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(IV)”和第九章课件。

13、八皇后问题的遗传算法求解。八皇后问题是一个以国际象棋为背景的问题:如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上。下图给出了八皇后问题的一个解。回答下列问题。

(1-1)八皇后问题的建模。将棋盘抽象为n×n的矩阵(此时n=8,但抽象不限于n=8,可以是n皇后问题),Aij=1表示放置皇后,Aij=0表示未放置皇后,其目标函数为

??Ai?1j?1nnij?n。因此八皇后

问题求解的关键是设计约束条件,即满足什么条件的可能解才是可行解,而任何一个可行解都为满意解。有四个公式,表达了某种约束条件(注意,不能确定给出的公式一定是正确的),下列说法不正确的是_____。

大学计算机-计算思维练习题集

n(式1)

?Ai?1ij?1foranyj?1,...,n

(式2)

?Aj?1nnij?1foranyi?1,...,n

(式3)

?Ai?1i,i?k??1foranyk??(n?2),...,n?2且Ai,h?0foranyh?norh?1

(式4)

?Ai?1nn?1?i?k,i??1foranyk??(n?2),...,n?2且Ah,i?0foranyh?norh?1

(A)式1表达了任何一列中的皇后个数只能有一个;式2表达了任何一行中的皇后个数只能有一个;

(B)式3表达了一条斜线上的皇后个数不能多于1个; (C)式3和式4必须同时具备才能表达任何一条斜线上的皇后个数不能多于1个; (D)式3和式4中关于h的相关内容是没有必要的;

答案:D 解释:

本题考查遗传算法的实际应用。

选项(D)错误,关于h的相关内容是有必要的。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(I)-(IV)”和第九章课件。

(*1-2)八皇后问题的建模。将棋盘抽象为n×n的矩阵(此时n=8,但抽象不限于n=8,可以是n皇后问题),Ai,j=1表示放置皇后,Ai,j=0表示未放置皇后,其目标函数为

??Ai?1j?1nni,j?n。因此八

皇后问题求解的关键是设计约束条件,即满足什么条件的可能解才是可行解,而任何一个可行解都为满意解。有三个公式,表达了某种约束条件(注意,不能确定给出的公式一定是正确的),下列说法不正确的是_____。 (式1)

?Ai?1ni,j?1,对任何j?1,...,n

(式2)

?Aj?1ni,j?1,对任何i?1,...,n

大学计算机-计算思维练习题集

(式3)

z?y?1 ,对任何两个位置其值为1的点Ax,y,As,z s?x

(A)式1表达的是任何一列中的皇后个数只能有一个; (B)式2表达的是任何一行中的皇后个数只能有一个;

(C)式3表达的是任何两个皇后不能位于同一条45度或135度斜线上; (D)上述有不正确的;

答案:C 解释:

本题考查遗传算法的实际应用。

选项(C)错误,式3表达的是皇后不能位于(1,1)到(8,8)连接的45度对角线,但可以在其他45度对角线或135度对角线上。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(I)-(IV)”和第九章课件。

(*1-3)八皇后问题的建模。将棋盘抽象为n×n的矩阵(此时n=8,但抽象不限于n=8,可以是n皇后问题),Aij=1表示放置皇后,Aij=0表示未放置皇后,其目标函数为

??Ai?1j?1nnij?n。下面有若

干个公式,表达了某种约束条件(注意,不能确定给出的公式一定是正确的)。回答下列问题。 (式1)

?Ai?1nij?1foranyj?1,...,n

(式2)

??cj?1i?1nnnijAij??nforanyj?1,...,n;foranyi?1,...,n

(式3)

?Aj?1nij?1foranyi?1,...,n

(式4)

?Ai?1i,i?k??1foranyk??(n?2),...,n?2且Ai,h?0foranyh?norh?1

(式5)

?Ai?1nn?1?i?k,i??1foranyk??(n?2),...,n?2且Ah,i?0foranyh?norh?1

大学计算机-计算思维练习题集

(式6) (式7)

z?y?k ,对任何两个位置其值为1的点Ax,y,As,z且k为常数 s?xz?y?1 ,对任何两个位置其值为1的点Ax,y,As,z s?x

(1-3A )下列说法不正确的是_____。

(A)八皇后问题的约束包括(式1)、(式3)、(式4)和(式5); (B)八皇后问题的约束包括(式1)、(式3)和(式6); (C)八皇后问题的约束包括(式1)、(式3)和(式7); (D)上述有不正确的;

答案:B 解释:

本题考查遗传算法的实际应用。

选择(B),式6不是八皇后问题的约束。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(I)-(IV)”和第九章课件。

(1-3B)下列说法不正确的是_____。

(A)(式6)表达的不是八皇后问题的约束; (B)(式2)表达的不是八皇后问题的约束;

(C)(式3 )表达的是八皇后问题的约束,但其和式1相重复;

(D)(式4 ) (式5 )与(式7)表达的是关于八皇后问题的相同的约束;

答案:C 解释:

本题考查遗传算法的实际应用。

选择(C),1、3两式都是八皇后问题的约束,表达不相重复。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(I)-(IV)”和第九章课件。

(*2-1)八皇后问题的求解。下列说法不正确的是_____。

(A)依据(1)的模型,既可以采用以行优先0、1编码可能解,又可以以列优先0、1编码可能解,二者没有什么差别;

(B)从形式上看,这种编码与“课程表优化安排”问题的编码是一致的。可采取“课程表优化

大学计算机-计算思维练习题集

安排”算法的交叉、变异规则进行求解;

(C)尽管从形式上看,这种编码与“课程表优化安排”问题的编码是一致的。但“课程表优化安排”算法的交叉、变异规则却不适宜于本问题的求解; (D)针对八皇后问题求解算法,可以设计特殊的交叉、变异规则,例如无论怎样交叉与变异,都需保证皇后的个数是不变的(始终为n),只是皇后的位置发生变化; (E)上述关于求解八皇后问题或n皇后问题的说法有不正确的。

答案:B 解释:

本题考查遗传算法的实际应用。 选择(B),“课程表优化安排”算法的交叉变异规则不适用于本问题。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(I)-(IV)”和第九章课件。

(*2-2)八皇后问题的求解。下列说法不正确的是_____。

(A)依据(1)的模型,既可以以行优先0、1编码可能解,又可以以列优先0、1编码可能解,二者没有什么差别;

(B)将在一个可能解中两个不同位置皇后相互攻击次数的统计函数作为适应度函数,次数越少越好,即:任何两个不同位置的皇后[x1,y1],[x2,y2],如果

y2?y1x2?x1?1,则被认为是相互攻击,此

可能解的适应度值加1;当适应度值为0时,满足(1-1)中式3和式4的约束;

(C)初始可能解集合可随机选择m个可能解,只要满足任何两个可能解不在同一行或同一列即可--满足式1和式2的约束及摆放n个皇后的目标函数;

(D)交叉、变异规则保证产生新的可能解满足式1和式2及目标函数。例如:当两个可能解按列交叉原则交换了某些位后,则某些列可能出现多于1个的皇后,此时要将该列未交换的皇后交换到缺失皇后的列;其他交叉、变异规则类此。 (E)上述步骤求解八皇后问题或n皇后问题,有说法不正确的。

答案:E 解释:

本题考查遗传算法的实际应用。

选择(E),(A)(B)(C)(D)均为正确叙述。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(I)-(IV)”和第九章课件。

(*2-3)八皇后问题的求解。下列说法不正确的是_____。

(A)可如下编码可能解:行、列位置分别以自然数1,…,n编号,以M[]存储皇后在各行中的位置,数组下标表示行号,数组元素的值表示列号。例如“8,7,6,4,3,1,2,5”表示第1行的皇后放在

大学计算机-计算思维练习题集

第8列,第8行的皇后放在第5列,第5行的皇后放在第3列等,简明标记为[位置序号(行号),位置上之值(列号)];

(B)将在一个可能解中两个不同位置皇后相互攻击次数的统计函数作为适应度函数,次数越少越好,即:任何两个不同位置的皇后[x1,y1],[x2,y2],如果

y2?y1x2?x1?1,则被认为是相互攻击,此

可能解的适应度值加1;当适应度值为0时,满足(1-1)中式3和式4的约束;

(C)初始可能解集合可随机选择m个可能解,只要一个可能解中的任何两个序号位置的值都不同即可--满足式1和式2的约束及摆放n个皇后的目标函数;

(D)交叉、变异规则保证产生新的可能解满足式1和式2及目标函数。例如:当两个可能解按两段或多段交叉原则交换了某些位后,需要一额外处理即保证一个可能解中不能出现两个相同的列号;其他交叉、变异规则类此。 (E)上述步骤求解八皇后问题或n皇后问题,不能够实现。

答案:E 解释:

本题考查遗传算法的实际应用。

选择(E),(A)(B)(C)(D)均为正确叙述。

具体内容请参考课堂视频“怎样用遗传算法求解具体的应用问题(I)-(IV)”和第九章课件。

本文来源:https://www.bwwdw.com/article/cjcx.html

Top