南京航空航天大学matlab智能算法大作业解决方案.doc

南京航空航天大学matlab智能算法大作业解决方案.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
南 京 航 空 航 天 大 学 研究生课程考试答题纸 共 8 页 第 1 页 2013 -–2014 学年第 1 学期《计算智能技术的MATLAB实现》课程 考试日期: 2013年 12月 28日 课程编号:f013036 学院: 学号 姓名 成绩 1. 最好结合自己的课题,提取其科学问题并建立其数学模型或选择一数学问题,任意选择一种智能算法进行求解。要求论述清楚你所选择的科学问题(或数学问题)及所选择的智能算法的控制参数(若选择遗传算法求解,控制参数包括适应度函数形式、最大遗传代数参考值、交叉率、变异率、代沟、插入概率、子种群个数、迁移率等;若选择二进制编码,要说明自变量取值范围及取值要求精确到小数点后几位,如何确定二进制编码位数;要求必须使用适应度排序和子代插入命令;要求绘出所建数学模型的最佳解及种群均值随迭代次数的变化曲线;输出函数的极值及对应的自变量取值;) 若所建的数学模型有显函数形式,需绘出该函数图像;要求尽可能发挥自己的想像力和创造力,提出新问题、新解法,若问题过于复杂,无法写出目标函数求解过程中的一些中间量,可略去其过程,论述清楚你所选择的其它辅助软件或工具的功能及其与智能算法程序的连接思想或方法即可;具体要求在大作业中有问题描述和理论分析、图像或曲线、结果输出、程序源代码等,并提交电子版,任何人的程序不得重复,否则按不及格论处!!! 基于遗传算法优化多元多目标函数的MATLAB实现 0.引言 现实生活中的很多决策问题都要考虑同时优化若干个目标,而这些目标之间有时是彼此约束,甚至相互冲突,这样就需要从所有可能的方案中找到最合理、最可靠的解决方案。而遗传算法是模拟达尔文的遗传选择和自然淘汰的生物进化过程的一种新的迭代的全局优化搜索算法,它能够使群体进化并行搜寻多个目标,并逐渐找到问题的最优解。 1.问题描述 变量维数为5,含有2个优化目标的多目标优化问题表达式如下 对于该问题,利用权重系数变换法很容易求出最优解,本题中确定f1和f2的权重系数都为0.5。 2.遗传算法 2.1遗传算法简述 遗传算法的基本原理是通过作用于染色体上的基因寻找好的染色体来求解问题,它需要对算法所产生的每个染色体进行评价,并基于适应度值来选择染色体,使适应性好的染色体有更多的繁殖机会,在遗传算法中,通过随机方式产生若干个所求解问题的数字编码,即染色体,形成初始种群;通过适应度函数给每个个体一个数值评价,淘汰低适应度的个体,选择高适应度的个体参加遗传操作,经过遗产操作后的个体集合形成下一代新的种群,对这个新的种群进行下一轮的进化。 2.2遗传算法的过程 遗传算法的基本过程是: 1. 初始化群体。 2. 计算群体上每个个体的适应度值 3. 由个体适应度值所决定的某个规则选择将进入下一代个体。 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)因取值范围较小,变量的二进制数目为20. (7)代沟设置为0.9. 3.1初始化及其他准备工作 区域描述器FieldD描述染色体的表示和解释,每个格雷码采用20位二进制。5个变量的区间和边界定义如上述所示。 3.2计算适应度值 计算适应度值是由根据程序FitnV=ranking(ObjV)来实现的,对这个等级评定算法的缺省设置时选择压差为2和使用线性评估,给最适应个体的适应度值为2,最差个体的适应度值为0,适应度值结果由向量FitnV返回。 3.3选择、交叉操作 选择层使用高级函数选择调用低级函数随机遍历抽样例程sus,SelCh中的个体使用高级函数recombine进行重组,使个体通过SelCh被选择再生产,并使用单点交叉例程xovsp,使用交叉概率Px=0.7进行执行并交叉。交叉后的子代被同一个矩阵SelCh返回。 3.4变异操作 为了产生子代,使用变异函数mut。子代再次由矩阵SelCh返回,变异概率缺省值PM=Px/Lind,并使用bs2rv,将个体的二进制编码转换为十进制编码。 3.5遗传算法性能跟踪 每次迭代后的最优解和均值存放

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档