• 大小: 6KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-01-09
  • 语言: 其他
  • 标签:

资源简介

多目标优化算法--NSGA-III,在大于3个目标也很有效。 自己理解原理后修改出来的简洁版(自用)

资源截图

代码片段和文件信息





function chromo = crossover(pick_sel chromo)

    global NP f_num x_num x_min x_max pc yita1
    temp = chromo(pick_sel 1:x_num+f_num); % 取出选中的个体
    
    off_s = [];
    for i = 1:NP
        
        % 选出两个不同的个体交叉
        pick = randperm(NP 2);
        while pick_sel(pick(1)) == pick_sel(pick(2))
            pick = randperm(NP 2);
        end
        
        off_1 = temp(pick(1) 1:x_num); off_2 = temp(pick(2) 1:x_num);
        if rand < pc
            for j = 1:x_num
                u = rand;
                if u < 0.5
                    gama = (2 * u)^(1 / (yita1 + 1));
                else
                    gama = (1 / (2 * (1 - u)))^(1 / (yita1+1));
                end
                off_1(j) = 0.5 * ((1 + gama) * off_1(j) + (1 - gama) * off_2(

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-10-15 18:49  NSGA-III\
     文件        1399  2019-10-12 10:16  NSGA-III\crossover.m
     文件        1321  2019-10-12 09:40  NSGA-III\crowding_distance_sort.m
     文件         763  2019-10-12 10:56  NSGA-III\elitism.m
     文件         342  2019-10-12 18:25  NSGA-III\initialize.m
     文件        1320  2019-10-12 19:09  NSGA-III\main.m
     文件         763  2019-10-12 10:24  NSGA-III\mutation.m
     文件        2473  2019-10-12 10:52  NSGA-III\non_domination_sort.m
     文件        2633  2019-10-12 18:28  NSGA-III\object_fun.m
     文件         712  2019-10-12 09:55  NSGA-III\selection.m
     文件        2333  2019-10-12 18:40  NSGA-III\test.m

评论

共有 条评论

相关资源