一种宋词自动生成的遗传算法及其机器实现


ISSN 1000-9825, CODEN RUXUEW E-mail: jos@iscas.ac.cn Journal of Software, Vol.21, No.3, March 2010, pp.427−437 http://www.jos.org.cn doi: 10.3724/SP.J.1001.2010.03596 Tel/Fax: +86-10-62562563 © by Institute of Software, the Chinese Academy of Sciences. All rights reserved. 一种宋词自动生成的遗传算法及其机器实现∗ 周昌乐 1,2+, 游 维 1, 丁晓君 3 1(厦门大学 智能科学与技术系,福建 厦门 361005) 2(浙江大学 语言与认知研究中心,浙江 杭州 310028) 3(厦门大学 英国语言文学系,福建 厦门 361005) Genetic Algorithm and Its Implementation of Automatic Generation of Chinese SONGCI ZHOU Chang-Le1,2+, YOU Wei1, DING Xiao-Jun3 1(Department of Cogntive Science, Xiamen University, Xiamen 361005, China) 2(Center for The Study of Language and Cognition, Zhejiang University, Hangzhou 310028, China) 3(Department of English Language and Literature, Xiamen University, Xiamen 361005, China) + Corresponding author: E-mail: dozero@xmu.edu.cn Zhou CL, You W, Ding XJ. Genetic algorithm and its implementation of automatic generation of Chinese SONGCI. Journal of Software, 2010,21(3):427−437. http://www.jos.org.cn/1000-9825/3596.htm Abstract: Automatic generation of poetry has always been considered a hard nut in natural language generation. This paper reports some pioneering research on a possible generic algorithm and its automatic generation of SONGCI. In light of the characteristics of Chinese ancient poetry, this paper designed the level and oblique tones-based coding method, the syntactic and semantic weighted function of fitness, the elitism and roulette-combined selection operator, and the partially mapped crossover operator and the heuristic mutation operator. As shown by tests, the system constructed on the basis of the computing model designed in this paper is basically capable of generating Chinese SONGCI with some aesthetic merit. This work represents progress in the field of Chinese poetry automatic generation. Key words: natural language generation; computational poetics; Chinese SONGCI generation; genetic algorithm 摘 要: 主要针对宋词这种特殊的汉语诗歌体裁,开展了有关自动生成算法及其实现方法的探索性研究.研究工 作主要根据宋词特点,设计了基于平仄的编码方式、基于句法和语义加权值的适应度函数、基于精英主义和轮盘赌 算法的选择策略,采用部分映射和启发式交叉算子和启发式变异算子 ,从而构建了一种基于遗传算法的宋词生成计 算模型并进行了系统实现 .实验结果表明 ,所建立的计算模型及其软件系统 ,初步实现了机器自动生成宋词的目标 , 对于给定的主题词和词牌,基本上能够自动生成有一定欣赏价值的宋词.论文的工作也填补了我国在汉语诗歌自动 生成研究方面的不足. 关键词: 自然语言生成;计算诗学;宋词生成;遗传算法 中图法分类号: TP391 文献标识码: A ∗ Supported by the National Natural Science Foundation of China under Grant No.60975076 (国家自然科学基金) Received 2008-12-09; Accepted 2009-02-24 428 Journal of Software 软件学报 Vol.21, No.3, March 2010 汉语古典诗词的计算化研究始于 20 世纪 90 年代中期,迄今为止,已在语料库建立[1−4]、词汇语义分析[5−7]、 创作风格辨析[8,9]、联语应对[9−11]等方面取得了一些初步的成果,但在诗歌的自动生成方面,除了一些民间的自 发研究外[12],尚无系统性的学术性研究.相比而言,国外有关机器诗歌自动生成的研究起步较早,目前已尝试了 许多方法并积累了一定的经验,从早期的 Word Salada 发展到现在较为成熟的基于进化算法和基于实例推理的 方法,机器诗歌生成技术历经了多个阶段的发展,并开发了部分较成型的系统[13−15]. 机器诗歌生成主要基于简单的计算程序,采用连接随机生成词汇的方法,生成结果仅是一些词汇的堆砌,形 象地被称为 Word Salada.这种方法对诗歌内容、形式和意义的考虑都很少,其作品从严格意义上说并不能称为 诗歌.接着便是基于模板的诗歌生成系统应运而生,通过事先定义好的模板来进行“填词”式创作.这类系统的代 表有 RACTER 和 PROSE[16],RETURNER,APPI,BORANPO,Masterman 俳句生成系统以及互联网上的 ELUAR,ALFRED 等实用系统[17].基于模板的诗歌生成系统通常有较好的输出,RACTER 和 PROSE 的生成结果 还曾被某诗刊杂志录用,但这类系统也存在一些固有的缺陷,比如缺乏灵活性、需要大量人为参与,生成作品的 质量取决于模板的设计. 为了增加机器生成诗歌的灵活性,一些研究人员提出了基于模式的诗歌生成方法.与基于模板的方法一样, 系统通过事先设定模式进行诗歌生成.不同的是,模式的灵活性远大于模板.一个典型的例子就是 Kurzweil 开发 的 Cybernetic Poet 系统[18],其原理是以人类创作的诗歌为模式,从词汇、词汇结构及排列顺序、韵律模式、诗 歌整体结构等方面,对大量的已有诗作进行了基于统计的分析和建模.另一个较为典型的系统是 Rubaud 等人. 领导的 ALAMO 小组开发的 Rimbaudelaires 诗歌生成器[19],通过用空格替换 Rimbaud 十四行诗中的名词、动 词和形容词来构造诗句模板,然后从 Baudelaire 的诗中选取相应的词进行填充;由于选词算法加入了句法和韵 律方面约束,因此能够保证较好作品的产生. 另一种比较常见的诗歌生成方法是基于实例推理(case-based reasoning,简称 CBR)的诗歌生成方法[20−21]. 采用 CBR 技术的系统通常包括搜索(retrieve)、重用(reuse)、修正(revise)、保留(retain)4 个处理步骤,最有代表 性的两个诗歌生成系统分别是 ASPERA 系统[22]和 COLIBRI 系统[23].由于 CBR 方法在知识获取、求解效率、 求解质量以及知识积累等方面有着突出的优势,因此对于高质量诗歌的生成非常有利,但如何自动优化修改算 法设计则是一个难以突破的瓶颈.于是,将遗传算法引入到了诗歌自动生成领域之中,就形成了诗歌生成较为先 进的方法[24−27]. 基于遗传算法的诗歌生成模型由生成模块和评价模块两部分组成.生成模块根据词法、句法、概念等信息 产生备选诗作,评价模块则依据一定的准则对备选输出给予等级评价.采用遗传算法的实例主要有 Levy 开发 的原型系统 POEVOLVE[24],能够生成 Limerick(一种起源于欧洲诗体,五行打油诗);以及 Hisar Maruli Manurung 的 MCGONAGALL 系统, 在该系统中将诗歌生成问题看成一个状态空间搜索问题, 并提出了语义 (meaningfulness), 语法(grammaticality) 和诗性(poeticness)3 个诗歌必须满足的条件[27]. 其中, 由于 MCGONAGALL 系统在语义表示上采用了词汇化树邻接文法,而在评估函数上采用了编辑距离算法和结构相 似度两种度量,使其成为迄今为止最为成熟的一个基于遗传算法的诗歌生成系统. 借鉴上述有关遗传算法诗歌生成系统的主要原理,在我们自己建立的全宋词熟语料库(包括切分、词性、 音韵、情感、典故、格律、词牌、句法等内容)的基础上[28−30],针对宋词自身的特点[31−36],按照遗传算法的构造 原理[37],具体给出了一种宋词自动生成的遗传算法,并进行了机器实现.希望我们的研究,能够弥补我国在诗歌 自动生成学术性研究方面的不足. 1 句法规范性和语义关联度的计算 采用遗传算法进行宋词的自动生成,首先遇到的问题就是要给出衡量宋词优劣与否的量化计算方法,作为 适应度函数的构造与计算依据.我们知道,诗歌的质量主要反映在句法和语义两个层次上.一方面,诗歌作为自 然语言的一种文学形式的表达,有着严格的句法要求.这里诗歌定义的句法,既包括通常汉语所需遵循的句法, 又包括诗歌特有的格律规则,如平仄、押韵等规则.另一方面,诗歌的语义则包括了主题与词句的连贯、风格的 周昌乐 等:一种宋词自动生成的遗传算法及其机器实现 429 统一、情感与意境的传达等等.语义层次最关键的问题是如何使产生的诗句看起来更有意义,使句与句之间更 有连贯性,而不是毫无关联的词汇或句子的堆砌.因此为了使机器能够产生好的宋词,首先要解决宋词句法规律 与语义度量的计算问题. 就句法分析而言,宋词作为一种特殊的文体,其句法也有特定的要求.一般每个词牌的词体句法都有固定的 总字数、总句数,每一句的字数也是固定的.根据我们全宋词数据库的统计,宋词字句的字数,从一字句到十一字 句不等都有出现,但三字句至九字句占的数量最多,其句法分别是: 1) 三字句:上二下一、上一下二; 2) 四字句:上二下二; 3) 五字句:上二下三、上三下二、上一下四; 4) 六字句:上二下四、上四下二、上三下三; 5) 七字句:上三下四、上四下三、上一下六; 6) 八字句:上三下五、上四下四、上一下七、上二下六; 7) 九字句:上三下六、上四下五、上五下四、上六下三. 其中上句若是奇数字句,则首字往往是单字领;句字数多于 2 时,则可进行细分,给出进一步的层次句法分析. 通过对大量宋词语句构成的分析,我们发现,组成句子的有效模式的数目是有限的,并且呈现出了层次化的 结构,因此比较适合采用 DFA(deterministic finite automata)或者 NFA(nondeterministic finite automata)来表示,具 体策略如下: (1) 随机组合的词语,在产生大量的备选个体后,逐个进行 DFA 分析测试,通过留下,没通过则剔除. (2) 发挥 NFA 的优势,在句子产生的初期就运用 NFA,以不同的概率产生不同模式的句子. 显然,这两种策略既相互矛盾又相互补充,理想情况应该结合两种策略.但考虑到采用第 2 种策略需要较大 的词库支持,比较耗时,因此本文采用第 1 种策略.图 1 给出的 DFA 判断树,描述的就是字数为 7,分词模式为 “2212”的词句.其他字数的词句也可以类似给出对应的 DFA 判断树. Fig.1 The DFA representation of the right syntax pattern of seven character sentence 图 1 七字词句合法句法模式的 DFA 表示 有了句法的形式规范,接着要解决的是宋词的语义计算问题,包括词义相关度计算、词义相似度计算,以及 风格情感一致性计算 3 个方面. START (N) (ADJ) (EN) N ADJ EN (N+VT) (N+N) (N+EN) (N+VI) (N+ADJ) N VT EN ADJ VI (N+VT+N) (N+VT+ADJ) N ADJ (N+VT+N+N) (N+VT+ADJ+N) N N ADV (N+N+ADV) VI (N+N+ADV+VI) N (N+EN+N) VI ADJ (N+EN+N+VI) (N+EN+N+ADI) N (N+VI+N) VI (N+VI+N+VI) N (N+ADJ+N) ADJ (N+ADJ+N+ADJ) N (ADJ+N) ADJ ADV VT (ADJ+N+ADJ) (ADJ+N+ADV) (ADJ+N+VT) N (ADJ+N+ADJ+N) VI (ADJ+N+ADV+VI) N (ADJ+N+VT+N) N (EN+N)(EN+N+VT)VT N (EN+N+VT+N) 430 Journal of Software 软件学报 Vol.21, No.3, March 2010 首先,计算词义相关的目的是建立词语间的关联,发掘词语共现和搭配的可能,从而保证生成诗词行文和主 题上的连贯.我们可以基于语料库统计来给出利用潜在语义分析和互信息两种方法词义相关度计算方法. 利用潜在语义分析(latent semantic analysis,简称 LSA)计算词义相关度的基本假设是:如果给予大规模的文 本语料库,词义相关的词语由于有一定的共现规律,一个词可以用一些有共现规律的词来代表它们的语义.在 《全宋词》语料库的基础上,我们可以构造频率矩阵,将所有的待测词(t 个)都用在待测文献(d 句)中的出现频率 表示出来,形成 X=t×d 的矩阵,且其均可以被分解成 3 个矩阵的积,称为 X 的奇异值分解: 00 0td tr rd XTSD × × × ′= . 其中,T′ 0T0=T0T′ 0=I,D′0D0=D0D′0=I,S0=diag[σ1,…,σr],是单值的对角矩阵,r 是 X 的秩,σ1≥σ2≥…≥σr>0.于是,由于 词 ti 可以表示为 ti=(n1,n2,…,nd)的向量,两个词的相关度就可以用 cosine 距离表示,而 cosine 距离又可以利用任 意 X(=TSD′)的两个相应行向量的点积来求得,由于 T,D 是正规矩阵,S 的对角元素大于 0,我们就有: XX′=TS(TS)′=TS2T′ 其中,XX′的第(i,j)个元素是词 titj 向量的点积. 第 2 种计算词义相关度的方法是基于互信息(mutual information,简称 MI)的方法[38].如果 s 为句子,w 为候 选词语,Fs(w)是候选词 w 出现在句子 s 中的频率,Fi(w)是词语 w 在矩阵 i 列出现的频率,Fs(j)是 s 句子在 j 行出 现的频率,而 ()i ij N Fj= ∑∑ 是矩阵所有项的统计,θ是为避免出现分母为 0 的情况而设的辅助数,暂设为 1;那么 miw,s 就表示 w 和 s 之间的互 信息,我们有: , () ()() s ws si ji Fw Nmi FjFw NNθ = × + ∑∑ . 为防止互信息在遇到词稀疏时的偏差,还可以引入纠偏因子[39]: min ( ), ( ) () () 1 min ( ), ( ) 1 is ijs s is ij Fw F j Fw Fw Fw F j ⎛⎞ ⎜⎟⎜⎟⎝⎠×+⎛ ⎞+⎜⎟⎜⎟⎝⎠ ∑∑ ∑∑ , 然后计算 cosine 词义相关度: ,, 22 ,, _(,) ij ij ws w s s ij ws w s sc mi mi cos sim w w mi mi ε × = × + ∑ ∑∑ 得到词语间语义关系的度量,其中,ε是为避免出现分母为 0 而设的辅助数. 对 MI 与 LSA 两种方法的计算结果进行对比,我们发现两种方法计算出的相关词有相当多的重叠但又有不 同.因此,对于最终的计算结果,我们首先选取两种算法的重叠部分,相关度则用两者各占 50%的加权和表示;其 次对于不重叠的部分,我们按相关度从高到低进行排列,并保留相关度大于 10−3 的词. 现在来看词义相似度的计算问题.词语相似度主要用于衡量文本中词语的可替换程度.计算词义相似度,目 的是在保证所选词紧扣主题的前提下,尽量使生成诗词的语言更丰富多变.目前自然语言的词义相似度有两类 常见的计算方法,一种是利用大规模的语料库进行统计,另一种是根据本体知识来计算[39−41]. 大规模语料统计方法利用词语的相关性来计算词语的相似度,基于的假设是:凡是语义相近的词,它们的上 下文也应该相似.具体计算的策略是,事先选择一组特征词,然后计算这一组特征词与每一个词的相关性(一般 用这组词在实际的大规模语料中在该词的上下文中出现的频率来度量),于是,对于每一个词都可以得到一个相 周昌乐 等:一种宋词自动生成的遗传算法及其机器实现 431 关性的特征词向量,然后利用这些向量之间的相似度(一般用向量的夹角余弦来计算)作为这两个词的相似度. 设在给定的语料库Ω和词表δ中,特定词语 x 在Ω上的语义 Sx 定义为如下五元组: { },,,,xxxxSLRCδ= Ω , 其中,Lx 为 x 的左同现词汇特征向量,Rx 为 x 的右同现词汇特征向量,Cx 为对仗词汇特征向量.特征向量的元素为 特征词与特征值组成的二元组(y,Vxy),有: log ( ) log ( )log ( )xy fxyV f xfy= . 其中,f(xy)为 y 在对应的 x 的相对位置上出现的频度(同一句的左边、右边或对仗位置上);x,y∈δ,f(x),f(y)分别是 x,y 在语料库Ω中出现的频度.那么,两个词语之间的语义相似度 Sim(x,y)可以通过计算其在 3 个不同的词汇特征 空间(Lx,Rx,Cx)中的距离来得到(距离越小,相似度越大): 12 3 1(, ) xyxyxy Sim x y kL kR kC= ⋅∆ + ⋅∆ + ⋅∆ , 其中 k1,k2,k3 是可以根据语料库实际情况进行调整的加权参数,∆为欧氏向量距离算子,其计算公式为 2 1 (, ) ( ) n kk k xy x y = ∆= −∑ . 在给定的语料库中,当 Sim(x,y)超过特定的阈值 R 时,就定义这两个词语 x,y 在该语料库中具有相似关系,x 的所有相似词组成的集合为 x 的相似词集 Lx.考虑到计算的复杂性和词义相似度在应用中较强的针对性,在实 际计算相似度时,我们仅对词库中高频名词 545 个和形容词 367 个近义词集进行计算. 最后我们来讨论宋词的风格与情感一致性计算问题.应该看到,这是一个十分复杂的问题,目前还不可能作 比较深入的研究.因此,为了尽可能简化这个问题,我们主要是在全宋词风格与情感标注的基础上,对词语做简 单风格与情感分类统计来作为计算依据.比如,对词语进行风格上的量化,主要通过将词语集分为柔和、中性、 强烈 3 个子集,然后递归地对各个子集进行相应的操作,最后将词语集分为 7 个不同意味的子集,用数字分别表 示为−3、−2、−1、0、+1、+2、+3 这 7 种水平,分数越高,代表该词语能够体现某种风格的贡献度越强.类似地, 对于词语情感意义的量化也参照风格量化的标准,从悲哀到快乐分为(−3,3)的 7 个等级. 总之,通过上述各个方面的形式分析和量化计算,我们可以为遗传算法自动生成宋词提供基本的句法和语 义形式与量化计算手段,为利用遗传算法来进行宋词的自动生成铺平技术上的道路. 2 宋词生成遗传算法的构造原理 通过分析宋词词语的构成规律,可以发现每一首宋词都是词语库中某些词语的一种排列组合形式.从这个 角度出发,我们可以认为,诗词生成问题在本质上是一个解空间中寻求最优化的问题,而解决这类问题正是遗传 算法的优势所在.于是运用遗传算法来自动生成宋词,就是把宋词的自动生成看作一个状态空间搜索问题,这样 就可以将遗传算法的优化机制引入到宋词的自动生成模型中.一般遗传算法包括求解问题编码、初始种群生 成、适应度函数设计、遗传操作确定等 4 个方面的内容.下面给出宋词自动生成对应遗传算法的构造原理. (1) 问题编码方案:对于宋词生成的编码问题是一个难点,为了避免烦琐,考虑到宋词的特点,我们提出了将 “平、仄”与“0、1”编码相对应的编码方案.比如词牌《清平乐》平仄分布如下: ⊙平⊙仄,⊙仄平平仄.⊙仄⊙平平仄仄,⊙仄⊙平⊙仄. ⊙平⊙仄平平,⊙平⊙仄平平.⊙仄⊙平⊙仄,⊙平⊙仄平平. 其中⊙表示可平可仄.根据我们的编码方案可得如下编码串: *0*1,*1001.*1*0011,*1*0*1. *0 *100,*0*100.*1*0*1,*0*100. 其中,通配符*表示⊙的编码.在实际运用中,为缩小问题的解空间,我们以概率最大分词模式作为首选分词依据, 即上述编码的宋词分词为如下词串: 432 Journal of Software 软件学报 Vol.21, No.3, March 2010 *0 / *1,*1 / 0 / 01.*1 / *0 / 0 / 11,*1 / *0 / *1. *0 / *1 / 00,*0 / *1 / 00.*1 / *0 / *1,*0 / *1 / 00. 相应地,词语库中的单字词和双字词也用 0、1 来编码,因此单字词分为平、仄两类,对应编码 0、1;双字词分为 平平、平仄、仄平、仄仄 4 类,对应编码 00、01、10、11. (2) 初始种群的生成:考虑到宋词严格的格律要求,在求解该优化问题过程中,我们始终将格律要求作为必 须满足的约束条件,这样,种群初始化操作包括: 1) 随机生成满足词牌要求的韵部.如《清平乐》的上阙要求压仄韵,下阙转平韵,则随机生成一个平声韵部 和一个仄声韵部. 2) 根据给定的主题词,从词语库中挑选与主题词相关度大于 k1 的词语,构成一级候选词语空间.再从一级 候选词语中挑选相关度高的一部分词语,再分别查找与这些词语相关度高的词语,构成二级候选词语空间…… 直到递归形成候选词语空间中的词语数量大于 n1. 3) 从候选词语空间随机选择满足押韵要求的词语,首先填充每个需要押韵的位置,然后在满足平仄要求的 基础上,随机选词填充剩余的位置.重复上述操作,生成含 N 个个体的初始种群. (3) 适应度函数:是问题约束条件反映,因此其设计不但与遗传算法中选择操作直接相关,而且还直接影响 遗传算法的迭代终止条件.针对宋词生成问题,我们对个体适应性的评判主要依据以下 4 个指标: 1) 句法合法性 G:通过 DFA 检验的得分为 1,否则为 0. 2) 主题相关性 R:为所有语词与主题词的相关度之和. 3) 词句搭配的适当性 P:为所有两个连续语词的相关度之和. 4) 风格和情感统一性 S:追求高的风格和情感统一性,就是要求同一首宋词中出现词汇的风格和情感得分 都趋于一致.因此,S 等于所有词语情感得分的方差与风格得分的方差之和的倒数. 适应度函数 F 定义为以上 4 个量归一化的加权和,即 F=λ1G+λ2 R+λ3P+λ4 S. 其中,G,R,P 与 S 均已归一化,λ1,λ2,λ3,λ4 为相应的加权系数. (4) 选择操作:选择操作就是从群体中按个体的适应度函数值选择出较适应环境的个体.考虑到宋词作品 的优化是一个主观性较强的问题,目前尚无固定、量化的标准可以借鉴,我们采用精英主义和轮盘赌算法相结 合的模型作为选择个体的依据.精英主义方法在每一次产生新的一代时,首先把当前最优解原封不动地复制到 新的一代中,其他选择步骤不变.这样任何时刻产生的一个最优解都可以存活到遗传算法结束.在保留了当前最 优解后,采用轮盘赌算法完成对剩余个体的选择,即按照个体适应度值所占全部个体适应值总和的比例作为被 选概率来选择个体. (5) 交叉算子:交叉操作是遗传算法中最重要的操作,是决定算法收敛性能的关键,因此必须慎重选择交叉 算子的策略.通过对宋词编码特点的分析与实验,我们采用包括可以跨句进行的部分映射和启发式两种交叉操 作.这里,部分映射交叉可看作二进制串的两点或多点交叉在换位表达中的扩展,用特别的修复程序来解决简单 的两点或多点交叉引起的非法性.可以跨句部分映射交叉方法虽然操作简单快速,且由于交叉点可以在整首宋 词范围内随机选取,因而产生的子代与父代有较大的相异性,能够有效避免种群单一化的过早出现;但是由于可 能破坏句子的句法有效性的问题,因此必须通过启发式交叉策略加以补救.所谓启发式交叉方法,就是将父代以 句为单位切分,比较每个句子的适应度,选择在适应度低的句子之间进行交换操作,而保留适应度高的句子.不 同于部分映射交叉,在启发式交叉中,我们只允许等位基因的交换.显然采用启发式交叉可以保留个体内部适应 度高的基因片段,而对适应度低的基因片段加以改变,这样无疑增强了子代的进化能力. (6) 变异算子:变异操作是按一定概率,对个体编码串上的某个或某些基因位的值进行改变.针对宋词生成, 我们采用启发式变异操作.步骤如下: 步骤 1:对于要进行变异的个体,比较每句的适应度,选出适应度值最小的句子. 步骤 2:若所选句不符合句法规范,找出与原句句法组合最接近的一种合法组合,利用词义相关,替换原句某 周昌乐 等:一种宋词自动生成的遗传算法及其机器实现 433 个或某些基因位. 步骤 3:否则,随机选取句中一个基因位 Wn,获取其邻位基因 Wn−1 的词性 P,查找与 Wn 相关度最大且词性为 P 的词,替换 Wn−1(若 n=1,改对 Wn+1 进行操作). 到此为止,我们完成了宋词自动生成的遗传算法的全部核心部分的设计.于是我们就可以进一步给出完整 的具体算法并进行系统实现. 3 宋词生成的系统实现与实验结果分析 当我们完成了宋词自动生成遗传算法中主要原理各部分的设计构造,还要完整给出对应的实现算法,只需 在此基础上具体给出宋词自动生成的遗传算法流程及主要参数确定即可.算法主要由初始种群生成、适应度计 算、选择、交叉、变异 5 个主要步骤组成.算法主要流程如下: 算法. 生成初始种群,大小为 k1. 置代数 gen=0,若 gen
还剩10页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 20 金币 [ 分享pdf获得金币 ] 0 人已下载

下载pdf

pdf贡献者

digitarts

贡献于2011-08-07

下载需要 20 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf