matlab优化工具箱多目标遗传算法gamultiobj函数的实例
Matlab优化工具箱(Optimization tool)gamultiobj函数求遗传算法多目标优化,实例教学
首先编写适应度函数M文件,因为 gamultiobj 求得的是最小值,故求最大值时需在目标函数前加负号,代码如下,保存为GA_multi.m:
function y=GA_multi (x)
y(1)=-(141.337+0.018*x(1)^2+8.065*x(3)^2-0.604*x(1)*x(3)-0.690*x(2)*x(4));
y(2)=-(3.15568+0.00279*x(1)*x(3)+0.00052*x(1)*x(2));
在 MATLAB R2014b 主界面依次单击 “应用程序”—“Optimization”,使用 GUI 界面调用函数 (gamultiobj),在“Fitness function”中输入适应度函数 “@ GA _ multi”,“Number of variable”变量个数窗格中输入 “4”,“Lower”与 “Upper”中输入目标函数自变量 x 1 ~ x 4 的约束条件[60,4,1,1] 与 [80,8,3,2], “Option”项下设置“Population Size”种群大小 50, “Pareto front populationFraction”最优前端个体系数 0. 3,“Generations”最大进化代数 100 代, “Function tolerance”适应度函数值偏差 1 e-5 ,绘制 Pareto 前端,其余参数为默认值,运行程序,Pareto 前端分布随算法进化1 代而更新1 次,不断逼近均匀分布和 Pareto 最优解,当迭代停止时,得到第一前端个体分布图 (图 2),同时得到 Pareto 最优解集

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)