⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gd_ds.m

📁 为了有效地应用遗传算法解决 鲁棒控制系统设计问题
💻 M
字号:
% GD,Ds Calculate计算GD,Ds 
% 24-Nov-2003.
%
function [dst,GD,Ds]=GD_Ds(ND_list,P1,P2)%P1,P2为1*500的列;;0__1

Qx=size(ND_list,2);
Sp=size(P1,2);
D=zeros(1,Qx);
for i=1:Qx
    Dq=dist(ND_list(:,i)',[P1;P2]);%dist表示距离加权函数;;dist (W,P)其W,P运算对应关系同一般矩阵,,但运算规则不同,不是相乘 而是相减平方,再取和
    %Dq为1*500矩阵;;实质是100个目标分别产生500个距离;;P1;P2与0--1变换的距离关系
    D(i)=min(Dq);%使Dq的最小值(即与P1;P2某一点的距离最短)被存储
end
GD=sqrt(sum(D.^2))/Qx%种群与P1;P2的最短距离;;绝对平均误差

% Calculate diversity metrics of the Pareto front in the final population.
[ND_list(1,:),IF1]=sort(ND_list(1,:));
ND_list(2,:)=ND_list(2,IF1);%按目标函数1对目标函数2进行排序
dm1=dist(ND_list(:,1)',[P1(1);P2(1)]);
dm2=dist(ND_list(:,Qx)',[P1(Sp);P2(Sp)]);
dm=dm1+dm2;%以两端为参考
for i=1:Qx-1
   di(i)=dist(ND_list(:,i)',ND_list(:,i+1));
end
davg=mean(di);%每列的平均值;;相邻两目标向量的平均距离
Ds=(dm+sum(abs(di-davg)))/(dm+davg*(Qx-1))%目标函数的相对波动情况/??????????????????
dst=(0+sum(abs(di-davg)))/(0+davg*(Qx-1))%田宏亮自己加目标函数的相对波动情况

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -