遗传算法及其改进措施.doc

遗传算法及其改进措施.doc

ID:56998607

大小:2.33 MB

页数:15页

时间:2020-07-30

遗传算法及其改进措施.doc_第1页
遗传算法及其改进措施.doc_第2页
遗传算法及其改进措施.doc_第3页
遗传算法及其改进措施.doc_第4页
遗传算法及其改进措施.doc_第5页
资源描述:

《遗传算法及其改进措施.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、优化算法大作业一、题目本文利用遗传算法,依次完成下面三个目标函数的寻优:1GeneralizedRosenbrock’svalleyFunction2GeneralizedRastrigin'sFunction3Schaffer’sFunction二、本文思路遗传算法是模拟生物在自然环境下的遗传和进化过程而形成的一种自适应全局优化概率搜索方法,本文利用遗传算法分别对上述三种函数进行全局寻优,具体思路如下:1.编码与解码1)编码:假设某一参数的取值范围是[umin,umax],我们用长度为l的二进制编码符号串来表示该参数,则它总共能够产生2l

2、种不同的编码,编码的长度越长,对应的精度越高。l第一题变量的取值范围是[-2.048,2.048],本文采取十位数的编码,那么精度为:l第二题变量的取值范围是[-5.12,5.12],本文采取的是十二位数的编码,那么精度为:l第三题变量的取值范围是[-4,4],本文采取的是十三位数的编码,那么精度为:1)解码:假设某一个个体的编码是,那么对应的解码公式为:1.个体适应度评价1)当优化目标是求函数最大值,并且目标函数总取正值时,可以直接设定个体的适应度F(X)就等于相应的目标函数值f(X),即:其中是函数最小值估计。2)对于求目标函数最小值的

3、优化问题,理论上只需简单地对其增加一个负号就可将其转化为求目标函数最大值的优化问题,即其中是函数的最大值估计。2.复制、交叉、变异1)比例算子:个体被选中并遗传到下一代的概率与个体的适应度成正比,本文采取的的赌轮盘选择法选,该方法较容易实现,易于编程。2)交叉算子:交叉是遗传算法产生新个体的主要手段,通过交叉子代的基因值不同于父代,从而可以出现适应度更高的个体,本文采用的是单点交叉算子。3)变异算子:变异也是产生新个体的一种方法,对于遗传算法中二进制编码符号串所表示的个体,若需要进行变异操作的某一基因座上的原有基因值为0,则变异操作将基因值

4、变为1,反之,若原有的基因值为1,则变异操作将其变为0。三、程序流程对于一个需要进行优化的实际问题,一般可按下述步骤构造遗传算法:第一步:确定决策变量及各种约束条件,即确定出个体的表现型X和问题的解空间;第二步:建立优化模型,即确定出目标函数的类型及数学描述形式或量化方法;第三步:确定表示可行解的染色体编码方法,即确定出个体的基因型x及遗传算法的搜索空间;第四步:确定解码方法,即确定出由个体基因型x到个体表现型X的对应关系或转换方法;第五步:确定个体适应度的量化评价方法,即确定出由目标函数值到个体适应度的转换规则;第六步:设计遗传算子,即确

5、定选择运算、交叉运算、变异运算等遗传算子的具体操作方法。第七步:确定遗传算法的有关运行参数,即M,G,Pc,Pm等参数。具体程序流程图见下图所示:图1遗传算法流程图四、优化过程1.第一题图2Rosenbrock函数图像图3遗传算法迭代寻优过程程序运行结果如下:最优点函数取值1.第二题图4:Rastrigin函数图像图5:遗传算法迭代寻优过程程序运行结果如下:最优点函数取值1.第三题图6Schaffer函数图像图7遗传算法迭代寻优过程程序运行结果如下:最优点函数取值由仿真结果可知,随着进化过程的进行,群体中适应度较低的一些个体被逐渐淘汰掉,而

6、适应度较高的一些个体会越来越多,并且它们都集中在所求问题的最优点附近,从而搜索到问题的最优解。五、问题的发现与改进1.问题一:局部最优解从第三题的函数图像中可以看出,该函数有无限多个局部极大值点,只有一个全局最优点,此函数最导致峰周围有一圈脊,上面的取值均为0.。从上面的优化过程可以看出,当随机选定初始种群后,随着迭代次数的增加,种群最终都集中在了这一圈脊上,也就是寻优过程陷入了局部最优点,并没有找到函数的的最优点。对于遗传算法中的上述问题,我们采用的解决方案如下。解决方法1:等值线法初始种群的选取对函数能不能找到最优点有着重要的影响,本文

7、通过分析函数的等值线缩小初始种群的随机产生范围,从而让种群朝着全局最优点进化。在Matlab下画出函数的等值线如下图:图8目标函数的等值线图从图中可以看出,以中心最优点为圆心,围绕着中心点分布着多条等值线,从中心的红色区域向外到蓝色区域,目标函数值先减小再增加最后又减小,所以本文以中间红色区域到蓝色区域中选取合适的等值线截面,并在该面上随机产生初始种群,这样可以有效防止迭代陷入局部最优解。改进后的寻优结果:图9改进后的遗传算法寻优过程图6中的最终种群进化到了函数一圈“脊”上,但是这只是函数的局部最优点,而从图9可以清楚地看到,种群进化到最后

8、都集中在了中心凸起点的附近,这也是函数的最大值点,可见改进后的遗传算法有效的解决了局部最优点的问题,顺利找到了函数的全局最优解。解决方法2:模拟退火算法模拟退火算法是模仿了自然界

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。