1 / 8
文档名称:

遗传算法实验报告.docx

格式:docx   大小:70KB   页数:8页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

遗传算法实验报告.docx

上传人:sssmppp 2019/7/25 文件大小:70 KB

下载得到文件列表

遗传算法实验报告.docx

文档介绍

文档介绍::..实验报告【实验名称】遗传算法实验【实验目的】熟悉和掌握遗传算法的运行机制和求解的基本方法。【实验原理】通过编码、设置种群、设置适应度函数、遗传操作、解码产生需要的解。f(x)=x*sin(x)+l,xe[0,2n],求解f(x)的最大值和最小值。【实验内容】{doublegene[length];//染色体doublerealnumber;//对应的实数xdoublefitness;//适应度doublerfitness;//相对适应度doubleefitness;//累计适应度};structpoptypepopulation[popsize+1];//最后一位存放max/minstructpoptypenewpopulation[popsize+l];//[0,2^],变量长度为2兀,取小数点后6位,由于222<2^*106<223;bo>)2Z间的因此,染色体由23位字节的二进制矢量表示,则X与二进制串(〈b22b2i映射如下:(22\((b22b21……bo))2=D"";x=xv^(x)的最值,所以适应度函数即可为f(x)o但为了确保在轮赌法选择过程屮,每个个体都有被选中的可能性,因此需耍将所有适应度调整为大于0的值。因此,设计求最大值的适应度函数如下:evalmdX=/(x)+5=xsinx+6;将最小问题转化为求-f(x)的最大值,同理,设计最小值的适应度函数如下:eval^=一/(兀)+5=-xsinx+4;,本实验默认为50,再进行种群初始化。,是否进行遗传操作。遗传操作主要有选择、交叉、变异三项。其中交叉、变异不能控制进化的方向,因此需要在选择中控制进化的方向朝优的方向发展,本实验采用轮赌法算子来实现,即根据个体的适应度函数值所度量的优劣程度决定它在下一代是被淘汰还是被遗传。交叉从能进入下一代的个体屮选出两个,将两者的部分码值进行交换。变异是根据变异概率选出一个个体,随机对其某位编码进行改变。,主要有迭代数,交叉概率,变界概率这三个参数。-,-。可以通过手动输入进行调试。【小结或讨论】最大值:弋最大值尸:2・819即5・x=:2・0即10801010001110001101110010B96代::最大值y=:,x=::最大值;=:2・81961叫x=::01010010010100001110011K98彳弋:最大值尸:=::01010010010100001110011代:最大值;=:=::01010010010100001110011100代:=::01010010010100001110011最小值:第95代:最<|'值9=二一3・8144?0小==:13:14011001