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

📄 objectval.m

📁 主旨表遗传算法
💻 M
字号:
function y=objectval(chrom)
s=size(chrom);
for i=1:s(1)
r1=rand(1);r2=rand(1);r3=rand(1);r4=rand(1);r5=rand(1);r6=rand(1);r7=rand(1);r8=rand(1);r9=rand(1);r10=rand(1);r11=rand(1);r12=rand(1);r13=rand(1);r14=rand(1);r15=rand(1);r16=rand(1);r17=rand(1);r18=rand(1);
v1=chrom(i,1);v2=chrom(i,1);v3=chrom(i,1);v4=chrom(i,1);v5=chrom(i,1)+0.1.*r4;v6=chrom(i,1)+0.25.*r5;v7=chrom(i,1)+0.5.*r6;
w1=chrom(i,2)-0.5.*r7;w2=chrom(i,2)-0.3.*r8;w3=chrom(i,2)-0.1.*r9;w4=chrom(i,2);w5=chrom(i,2)+0.1.*r10;w6=chrom(i,2)+0.25.*r11;w7=chrom(i,2)+0.5.*r12;
k1=chrom(i,3)-0.5.*r13;k2=chrom(i,3)-0.3.*r14;k3=chrom(i,3)-0.1.*r15;k4=chrom(i,3);k5=chrom(i,3)+0.1.*r16;k6=chrom(i,3)+0.25.*r17;k7=chrom(i,3)+0.5.*r18;
u1=[v1 v2 v3 v4 v5 v6 v7]
u2=[w1 w2 w3 w4 w5 w6 w7]
u3=[k1 k2 k3 k4 k5 k6 k7]
n=10;alfa=0.5;aa=0;
aa1=triangleint(5.6,6,6.4,n);aa2=triangleint(7.5,8,8.5,n);aa3=triangleint(2.8,3,3.2,n);
bb1=triangleint(v1,v4,v7,n);bb2=triangleint(w1,w4,w7,n);bb3=triangleint(k1,k4,k7,n);
aa4=triangleint(11.4,12,12.6,n);aa5=triangleint(7.6,8,8.4,n);aa6=triangleint(5.7,6,6.3,n);
aa7=triangleint(1.8,2,2.2,n);aa8=triangleint(3.8,4,4.2,n);aa9=triangleint(0.9,1,1.1,n);
aa10=triangleint(5.8,6,6.2,n);aa11=triangleint(7.5,8,8.5,n);aa12=triangleint(5.6,6,6.4,n);
t1=aa1.*bb1+aa2.*bb2+aa3.*bb3;
for j=1:n+1
        lamta=(j-1)/n;
        I(j)=lamta^0.5;
        M(j)=(1-alfa)*t1(1,j)+alfa*t1(2,j);
        d(j)=t1(2,j)-t1(1,j);
    end
        Ju=sum(M.*I)/n;
    Jd=sum(I)/n;
    J=Ju/Jd;
    for j=n/2+1:n+1
        aa=aa+I(j)*d(j);
    end   
    H=aa/n;
    beta=0.00001;
    p1=J/(1+beta*H)^0.5;
t2=aa4.*bb1+aa5.*bb2+aa6.*bb3;
for j=1:n+1
        lamta=(j-1)/n;
        I(j)=lamta^0.5;
        M(j)=(1-alfa)*t2(1,j)+alfa*t2(2,j);
        d(j)=t2(2,j)-t2(1,j);
    end
        Ju=sum(M.*I)/n;
    Jd=sum(I)/n;
    J=Ju/Jd;
    for j=n/2+1:n+1
        aa=aa+I(j)*d(j);
    end   
    H=aa/n;
    beta=0.00001;
    p2=J/(1+beta*H)^0.5;
t3=aa7.*bb1+aa8.*bb2+aa9.*bb3;
for j=1:n+1
        lamta=(j-1)/n;
        I(j)=lamta^0.5;
        M(j)=(1-alfa)*t3(1,j)+alfa*t3(2,j);
        d(j)=t3(2,j)-t3(1,j);
    end
        Ju=sum(M.*I)/n;
    Jd=sum(I)/n;
    J=Ju/Jd;
    for j=n/2+1:n+1
        aa=aa+I(j)*d(j);
    end   
    H=aa/n;
    beta=0.00001;
    p3=J/(1+beta*H)^0.5;    
t11=[283 288 293];q1=paixu(t11);
t22=[306 312 318];q2=paixu(t22);
t33=[122 124 127];q3=paixu(t33);
t4=aa10.*bb1+aa11.*bb2+aa12.*bb3;
if ((p1<=q1)&(p2<=q2)&(p3<=q3))
    for j=1:n+1
        lamta=(j-1)/n;
        I(j)=lamta^0.5;
        M(j)=(1-alfa)*t4(1,j)+alfa*t4(2,j);
        d(j)=t4(2,j)-t4(1,j);
    end
        Ju=sum(M.*I)/n;
    Jd=sum(I)/n;
    J=Ju/Jd;
    for j=n/2+1:n+1
        aa=aa+I(j)*d(j);
    end   
    H=aa/n;
    beta=0.00001;
    xx=J/(1+beta*H)^0.5;
else    
       t=t4+t1+t2+sort(-triangleint(283,288,293,n)-triangleint(306,312,318,n))+t3+sort(-triangleint(122,124,127,n));
        %t=t4+(sort(-0.5.*triangleint(47,50,51,n)-0.75.*triangleint(40,44,47,n))+3.*sort(-triangleint(32,36,40,n)));
    for j=1:n+1
        lamta=(j-1)/n;
        I(j)=lamta^0.5;
        M(j)=(1-alfa)*t(1,j)+alfa*t(2,j);
        d(j)=t(2,j)-t(1,j);
    end
        Ju=sum(M.*I)/n
    Jd=sum(I)/n
    J=Ju/Jd
    for j=n/2+1:n+1
        aa=aa+I(j)*d(j);
    end   
    H=aa/n;
    beta=0.00001;
    xx=J/(1+beta*H)^0.5;
end
   %y(i)=sum((chrom(i,:)-2*ones(1,length(chrom(i,:)))).^2)
   %-t(i)
   Ju=sum(M.*I)/n   %%%此为复合集中度
   Jd=sum(I)/n     %%%此为集中量化值
   J=Ju/Jd    %%%此为集中量化值
   xx=J/(1+beta*H)^0.5
   H=aa/n
   y(i)=-xx;
   max(y)
end

⌨️ 快捷键说明

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