遗传算法是用于无约束优化问题的单目标优化技术。 GA 有多种实现方式,其中一种采用 SBX 交叉和多项式变异。 该代码源自 Arvind Sheshadari [1] 对 NSGA-II 的多目标实现。 笔记: (i)与其他计算智能技术不同,无法根据总体数量和迭代次数来确定性地确定功能评估的次数。
(ii) 用户定义的参数是 (a) 人口规模,(b) 迭代次数,(c) SBX 算子的分布指数,(d) 多项式变异的分布指数,(e) 旅游规模在锦标赛选择和(f)交叉概率。 在此实现中,池大小设置为总体大小的一半(如果总体大小为奇数,则四舍五入)。 但是,这可以由用户更改。
(iii) 这种实现确保了单调收敛。
参考: (1) https://in.mathworks.com/matlabcentral/fileexchange/10429-nsga-ii--a-multi-object
2021-10-24 21:21:36
5KB
matlab
1