毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

基于遗传算法的聚类分析算法 第7页

更新时间:2012-2-16:  来源:毕业论文
调用ReadFile()函数。从GivenPoints.txt中把点读出来存入GivenPoints[POINUM];
3.生成初始群体
调用CreateSpe()函数。产生1到POINUM-1之间的随机数,将GivenPoints[POINUM]中的点依次按随机数写入群体spe中,并将spe的初始每一分类的起始位置StartP[N]设为1,31,61,91,121。重复此步骤,直到生成指定个数的初始群体。调用calculate()函数,计算群体的适应值。
4.计算群体的适应值
求出群体中每一类的点的x、y值之和sumx和sumy,进而求出每一类的中心点。计算每一类中的点到其中心点的距离之和Distances[N],将每一类的Distances[N]相加,即得到该群体的适应值。
5.按照适应值将各群体排序
采用起泡法,按各群体的适应值进行升序排序。将适应值最好的一个群体写入QualitySpe.txt。
6.选择作为下一代群体的各个个体
将经过排序后排在最后的适应值最差的ELIMINATE个群体淘汰掉,并将最好的ELIMINATE个群体复制一份到最后。本文来自辣.文~论~文·网原文请找腾讯32,49114
7.交换操作
保留前RESERVENUMBER个群体不参与交换操作,从第RESERVENUMBER+1个群体开始。产生随机数r,若r< CHANGERATE即交换概率,则进行交换。将该群体复制给TempSpe,在TempSpe上做交换操作。随机选择两个类,在两个类中各选一个点作为交换点进行交换,计算交换两点之后该群体的适应值,若适应值有改进,则立即更新原来的群体,若适应值没有改进,则继续做交换两点的操作,直到连续M次都没有改进则停止交换。若适应值一次也没有改进过,则将原来的群体更新为最后一次没有改进的群体。
8.突变操作
保留前RESERVENUM个群体不参与突变操作,从第RESERVENUM+1个群体开始。产生随机数r,若r< MUTATIONRATE即突变概率,则进行突变。将该群体复制给TempSpe,在TempSpe上做突变操作。随机选择两个类,在两个类中各选一个点进行突变操作,更新群体每个类的起始位置。计算突变之后该群体的适应值,若适应值有改进,则立即更新原来的群体,若适应值没有改进,则继续做突变操作,直到连续M次都没有改进则停止突变。若适应值一次也没有改进过,则将原来的群体更新为最后一次没有改进的群体。
3.2实现技术
3.2.1主要参数
#define  POINUM 151    //点的个数+1
#define  SPENUM  51    //种群规模+1
#define  N  6            //聚类的个数+1
#define  ELIMINATE  5          //淘汰数
#define  RESERVENUMBER  2   //不参与交换操作的群体个数
#define  RESERVENUM  1       //不参与突变操作的群体个数
#define  CHANGERATE 0.5       //交换概率
#define  MUTATIONRATE 0.1    //突变概率
#define GENERATION  10000      //论文网http://www.751com.cn/  最大进化代数
#define M 3     //交换突变适应值连续没有改进的次数
3.2.2数据存储
1.点的结构体
typedef struct point{
float x;         //x坐标
float y;         //y坐标
}POINT;
2.种群的结构体
typedef struct species{
double TotalDists;         // 该群体的适应值
POINT points[POINUM];           //该群体中的点
 int StartP[N];                  //每一类的起始位置
}SPECIES;本文来自辣.文~论~文·网原文请找腾讯324.9114
3.变量
POINT GivenPoints[POINUM];         //已知的点
SPECIES spe[SPENUM];             //初始种群
POINT CentralPoints[N]={0};         //一个群体中每一个类的中心点
double Distances[N];             //每一类中所有的点到中心点的距离之和
int gen;       //进化代数

上一页  [1] [2] [3] [4] [5] [6] [7] 

基于遗传算法的聚类分析算法 第7页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。