南京航空航天大学matlab智能算法大作业资料_第1页
南京航空航天大学matlab智能算法大作业资料_第2页
南京航空航天大学matlab智能算法大作业资料_第3页
南京航空航天大学matlab智能算法大作业资料_第4页
南京航空航天大学matlab智能算法大作业资料_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、南 京 航 空 航 天 大 学研究生课程考试答题纸 共 8 页 第 1 页2013 -2014 学年第 1 学期计算智能技术的MATLAB实现课程考试日期: 2013年 12月 28日 课程编号:f013036 学院: 学号 姓名 成绩 1. 最好结合自己的课题,提取其科学问题并建立其数学模型或选择一数学问题,任意选择一种智能算法进行求解。要求论述清楚你所选择的科学问题(或数学问题)及所选择的智能算法的控制参数(若选择遗传算法求解,控制参数包括适应度函数形式、最大遗传代数参考值、交叉率、变异率、代沟、插入概率、子种群个数、迁移率等;若选择二进制编码,要说明自变量取值范围及取值要求精确到小数点后

2、几位,如何确定二进制编码位数;要求必须使用适应度排序和子代插入命令;要求绘出所建数学模型的最佳解及种群均值随迭代次数的变化曲线;输出函数的极值及对应的自变量取值;)若所建的数学模型有显函数形式,需绘出该函数图像;要求尽可能发挥自己的想像力和创造力,提出新问题、新解法,若问题过于复杂,无法写出目标函数求解过程中的一些中间量,可略去其过程,论述清楚你所选择的其它辅助软件或工具的功能及其与智能算法程序的连接思想或方法即可;具体要求在大作业中有问题描述和理论分析、图像或曲线、结果输出、程序源代码等,并提交电子版,任何人的程序不得重复,否则按不及格论处!基于遗传算法优化多元多目标函数的MATLAB实现0

3、.引言现实生活中的很多决策问题都要考虑同时优化若干个目标,而这些目标之间有时是彼此约束,甚至相互冲突,这样就需要从所有可能的方案中找到最合理、最可靠的解决方案。而遗传算法是模拟达尔文的遗传选择和自然淘汰的生物进化过程的一种新的迭代的全局优化搜索算法,它能够使群体进化并行搜寻多个目标,并逐渐找到问题的最优解。1.问题描述变量维数为5,含有2个优化目标的多目标优化问题表达式如下min f1=x1*x2*x3+3×x4*x5 min f2=sin(x1)+cos(4x2)+2x5 1x14;1x22; 2x33; 2x46; 3x59对于该问题,利用权重系数变换法很容易求出最优解,本题中确

4、定f1和f2的权重系数都为0.5。2.遗传算法2.1遗传算法简述遗传算法的基本原理是通过作用于染色体上的基因寻找好的染色体来求解问题,它需要对算法所产生的每个染色体进行评价,并基于适应度值来选择染色体,使适应性好的染色体有更多的繁殖机会,在遗传算法中,通过随机方式产生若干个所求解问题的数字编码,即染色体,形成初始种群;通过适应度函数给每个个体一个数值评价,淘汰低适应度的个体,选择高适应度的个体参加遗传操作,经过遗产操作后的个体集合形成下一代新的种群,对这个新的种群进行下一轮的进化。2.2遗传算法的过程遗传算法的基本过程是:1. 初始化群体。2. 计算群体上每个个体的适应度值3. 由个体适应度值

5、所决定的某个规则选择将进入下一代个体。4. 按概率Pc进行交叉操作。5. 按概率Pm进行变异操作。6. 没有满足某种停止条件,则转第2步,否则进入第7步。7. 输出种群中适应度值最优的染色体作为问题的满意解或最优界。8. 遗传算法过程图如图1:图1 遗传算法过程图3.遗传算法MATLAB代码实现本题中控制参数如下:(1)适应度函数形式FitnV=ranking(ObjV)为基于排序的适应度分配。(2)交叉概率取为一般情况下的0.7,变异概率取其默认值.(3)个体数目分别为2000和100以用于比较对结果的影响。(4)最大遗传代数参考值分别为80和20.(5)因含有5个未知数,故变量维数为5.(

6、6)因取值范围较小,变量的二进制数目为20.(7)代沟设置为0.9.3.1初始化及其他准备工作区域描述器FieldD描述染色体的表示和解释,每个格雷码采用20位二进制。5个变量的区间和边界定义如上述所示。3.2计算适应度值计算适应度值是由根据程序FitnV=ranking(ObjV)来实现的,对这个等级评定算法的缺省设置时选择压差为2和使用线性评估,给最适应个体的适应度值为2,最差个体的适应度值为0,适应度值结果由向量FitnV返回。3.3选择、交叉操作选择层使用高级函数选择调用低级函数随机遍历抽样例程sus,SelCh中的个体使用高级函数recombine进行重组,使个体通过SelCh被选择

7、再生产,并使用单点交叉例程xovsp,使用交叉概率Px=0.7进行执行并交叉。交叉后的子代被同一个矩阵SelCh返回。3.4变异操作为了产生子代,使用变异函数mut。子代再次由矩阵SelCh返回,变异概率缺省值PM=Px/Lind,并使用bs2rv,将个体的二进制编码转换为十进制编码。 3.5遗传算法性能跟踪每次迭代后的最优解和均值存放在trace中,在后续的作图中可选择调用出来。3.6图形绘制及函数值和自变量输出使用plot函数绘出所建数学模型的最佳解及种群均值随迭代次数的变化曲线,并使用best属性使lengend标注位置处于最优位置。使用矩阵翻转命令flipud及矩阵元素查找命令输出2个

8、优化解及5个自变量。4实验分析改变种群数量等参数的实验结果对比。 表格横列2000-80表示参数设置为种群大小为2000,最大迭代次数80.竖列f1value、f2value和X1等分别表示函数值和自变量取值。表1 参数改变最优化函数值及自变量取值2000-802000-20100-80100-20f1value20.091420.334320.96823.8958f2value4.63314.62054.80234.7151X13.99613.96553.99583.474X21.01321.00551.06311.0388X32.01672.45962.00122.3256X42.0073

9、5.15992.00794.5378X53.00013.01643.00023.0079当参数设置为种群大小为2000,最大迭代次数80时,最佳解及种群均值随迭代次数的变化曲线如图3所示。第一目标函数第二目标函数图2 种群大小为2000,最大迭代次数80变化曲线当参数设置为种群大小为2000,最大迭代次数20时,最佳解及种群均值随迭代次数的变化曲线如图3所示。第一目标函数第二目标函数图3 种群大小为2000,最大迭代次数20变化曲线当参数设置为种群大小为100,最大迭代次数80时,最佳解及种群均值随迭代次数的变化曲线如图3所示。第一目标函数第二目标函数图4 种群大小为100,最大迭代次数80变化曲线当参数设置为种群大小为100,最大迭代次数20时,最佳解及种群均值随迭代次数的变化曲线如图3所示。第一目标函数第二目标函数图5 种群大小为100,最大迭代次数20变化曲线种群大小2000,最大迭代次数80时,各自变量取值如图6所示。可看出各变量的变化较为稳定,即可知收敛性较好,应为最优解。图6 5维自变量变化曲线4.2结果分析(1)因本体优化目标并不太复杂,故交叉概率取为较一般的0.7,变异概率也采用默认值,避免太多的无谓改变。曲线在一开始的几次迭代后迅速下降,但到了一定值后,曲线则变得平缓,说明收敛速度较快,交叉和遗传概率满足优化要求。(2)种群规模的大小和迭代次数的多少对结果的影

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论