- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
遗传算法工具箱使用实例
遗传算法运算流程:
Step 1:对遗传算法的运行参数进行赋值。参数包括种群规模、变量个数、交叉概率、变异概率以及遗传运算的终止进化代数。
Step 2:建立区域描述器。求解变量的约束条件,设置变量的取值范围。
Step 3:在Step 2的变量取值范围内,随机产生初始群体,代入适应度函数计算其适应度值。
Step 4:执行比例选择算子进行选择操作。
Step 5:按交叉概率对交叉算子执行交叉操作。
Step 6:按变异概率执行离散变异操作。
Step 7:计算Step 6得到局部最优解中每个个体的适应值,并执行最优个体保存策略。
Step 8:判断是否满足遗传运算的终止进化代数,不满足则返回Step 4,满足则输出运算结果。
遗传算法工具箱的使用
在MATLAB命令行窗口输入gatool,打开遗传算法工具箱:
Solver(求解器):用于选择需要的算法。
Problem:需要解决的问题。
(1)Fitness function:需要优化的目标函数,填写的格式为:@funname,其中funname.m是编写目标函数的M文件,返回一个具体数值。
(2)Number of variables:目标函数输入变量的数目。
Constraints(约束):
(1)Linear inequalities线性不等式约束:表示为:A*x=b,填写矩阵A和向量b的信息。
(2)Linear equalities线性等式约束:表示为:Aeq*x=beq,填写矩阵Aeq和向量beq的信息。
(3)Bounds:填写独立变量的取值范围。在Lower中填写变量的取值下界,Upper中填写变量的取值上界,均以向量形式表示。
(4)Nonlinear constraint function非线性约束函数:编写非线性约束函数的M文件nonlcon.m,则在此处填写@nonlcon。
Run solver and view results运行求解器并观察结果:
点击Start即可开始运行遗传算法。Current iteration中将显示当前运行的代数。Final point栏中显示最优解对应的变量的取值。
Option部分是遗传算法参数的设定:
Population种群参数设定:
Population type编码方式:有浮点编码和二进制编码,默认为Double vector。
Population size种群大小:默认为20,定义每一代种群的个体数量。种群规模越大,遗传算法的运行速度越慢。
Creation function创建函数:创建初始种群。
Initial population初始种群,如果不指定初始种群,则系统将运用创建建函数创建初始种群。
Initial scores初始得分,如果此处没有定义初始得分,则系统应用适应度函数来计算初始得分。
Initial range初始范围,用于指定初始种群中的各变量的上下限。初始范围用一个矩阵表示,该矩阵行数为2,列数为变量的个数。其中第一行描述初始种群中变量的取值下限,第二行描述初始种群中变量的取值上限。
Fitness scaling:变换适应度函数值的函数句柄。
Elite count:直接保留上一代的个体的个数。
Crossover fraction:交叉的概率。
Migration中,指定迁移的方向,概率,和频率。
Stopping criteria中,指定结束条件。Generations和time limit指定代数和时间的最大极限。
Fitness limit指定fitness值相差小于某一阈值时就可以收敛了。
Stall generation和stall time limit指经历多少代或多久,最优值都没有出现变化时即收敛。
Plot functions与图形输出有关,plot interval指定多少代输出一次,默认为1.best fitness和best invividual表示将最优值和相应个体输出到图像上。
Display 通过command window输出到命令窗口。有off,final,interative,diagnose 4个选择。
初始种群的生成函数:
Function[pop]=initializega(num,bounds,eevalFN,eevalOps,options)
输出参数:
pop:生成的初始种群
输入参数:
num:种群中的个体数目
bounds:代表变量的上下界的矩阵
eevalFN:适应度函数
eevalOps:传递给适度函数的参数
options:选择编码形式(浮点编码或二进制编码)precision F_or_B
Precision:变量进行二进制编码时指定的精度,F_:选择浮点编码,_
您可能关注的文档
最近下载
- 2025中国中医科学院中医药健康产业研究所 (江西中医药健康产业研究院) 招聘事业编制人员18人笔试备考试题及答案解析.docx VIP
- 预算编制的时间安排.pptx
- T∕COSOCC 014-2024 信息技术应用创新 经营管理系统数据管理技术规范.pdf VIP
- 《装备测试性工作通用要求GJB 2547B-2024》知识培训.pptx VIP
- 全电路欧姆定律.ppt VIP
- 王立群读《史记》之汉代风云人物——项羽 鸿门宴.doc VIP
- 小学与初中数学课程衔接的研究教学研究课题报告.docx
- 幕墙工程完整的清单报价.xls VIP
- 专题4平行线中的翻折求角度问题及角度之间的关系(原卷版+解析).docx VIP
- 版义务教育《艺术音乐课程标准》测试题含答案(荐).docx VIP
文档评论(0)