对于同一问题,可以有不同的编码表示方法。由于遗传操作直接作用于所表示的串上,因为不同的表示方法对GA的效率和结果都会有影响。从原理上讲,任何取值为整数(或其他有限可枚举的值)的变量,均可用有限长度的0、1串来表示,而任何取值为连续实数的变量也均可用有限长度的0、1串来近似表示。因此,对任何一个变量,均可在一定程度上用0、1串来表示(编码),而当问题的解涉及多个变量时,则可用各变量对应串的拼接(形成一个长串)来表示相应解。
(2)初始群体的生成
由于遗传算法是对群体的反复操作与迭代的搜索过程,因此需要建立一个初始迭代的群体。群体的大小视具体解决的问题而定,一般较小的问题优化个体可以选择10到20,复杂一些的问题则需要50到100。一般可用随机方法来产生初始群体,初始群体称为进化的第一代(First Generation),当然最好能考虑各个体的代表性和分布概率。
(3)群体的评价
对群体中各个体的适应性评价常需直接利用待优化问题的目标函数,通常将目标函数进行适当的变化后,作为遗传算法的评价函数,或称为适应度(Fitness)。群体在进化过程中,通过适应度来评价个体的优劣,作为以遗传操作的依据,并由此一步步地达到问题的最优逼近值。
(4)个体的选择本文来自辣.文~论~文·网原文请找腾讯3249'114
选择操作是对自然界“适者生存”的模拟。评价值(目标函数值)较大的个体有较高的概率生存下来,即在下一代群体中再次出现。
一种常用的选择方法是按比例选择,即若个体i的适应值(目标函数值)是fi,则个体i在下一代群体中复制(再生)的子代个数在群体中的比例将为:fi/∑fi,其中,∑fi是指所有个体适应值之和。若当前群体与下一代群体的个数均文持在n,
论文网http://www.751com.cn/ 则每一个体i在下一代群体中出现的个数将是:
n*fi/∑fi=fi/f,其中f=∑fi/n是群体评价的平均值。fi/f的值不一定是一个整数。为了确定个体在下一代中的确切个数,可将fi/f的小数部分视为产生个体的概率。
(5)交换
交换是GA中最主要的遗传操作,其工作于选择过程结束后产生的下一代群体。交换操作应用于从这一群体中随机选择的一系列个体对(串对)。并非所有选中的串对都会发生交换。这些串对发生交换的概率是Pc。Pc为事先指定的0到1之间的值,称为交换率。
(6)突变
另一种遗传操作是突变,它一般在交换后进行。突变操作的对象是个体(即串),旨在改变串中的某些位的值。并非所有位都能发生变化,每一位发生变化的概率是Pm。Pm为事先指定的0到1之间的某个值,称为突变率。串中每一位的突变是独立的,即某一位是否发生突变并不影响其他位的变化。突变的作用是引进新的遗传物质或恢复已失去的遗传物质。
3.解决聚类问题的遗传算法
3.1算法介绍
3.1.1问题描述
已经若干个二文平面上的点,利用遗传算法将它们进行聚类。
3.1.2算法
现将本文提出的算法描述如下:
1.确定参数
种群规模SPENUM、点的个数POINUM、聚类的个数N、淘汰个数ELIMINATE、交换概率CHANGERATE、突变概率MUTATIONRATE、不参与交换操作的群体个数RESERVENUMBER、不参与突变操作的群体个数RESERVENUM、最大进化代数GENERATION及交换突变适应值连续没有改进的次数M。
上一页 [1] [2] [3] [4] [5] [6] [7] 下一页
基于遗传算法的聚类分析算法 第6页下载如图片无法显示或论文不完整,请联系qq752018766