f553.m

来自「遗传算法MATLB图像分割程序及例子」· M 代码 · 共 29 行

M
29
字号
function [sol,eval]=f553(sol,options) 
m(1)=sol(1); 
m(2)=sol(2); 
m(3)=sol(3); 
%失效概率矩阵 
q=[0.01 0.05 0.10 0.18; 
0.08 0.02 0.15 0.12; 
0.04 0.05 0.20 0.10]; 
%约束条件 
g1=51-(m(1)+3).^2+m(2).^2+m(3).^2; 
g2=20*sum(m+exp(-m))-120; 
g3=20*sum(m.*exp(-m/4))-65; 
%计算加惩罚项的适值 
if ((g1>=0)&(g2>=0)&(g3>=0)) 
  multi=1; 
  for i=1:3 
     summ=0; 
     for j=2:4 
        summ=summ+q(i,j).^(m(i)+1); 
     end       
     multi=multi*(1-(1-(1-q(i,1)).^(m(i)+1))-summ); 
  end 
  eval=multi; 
else 
%取M=500 
  eval=-500; 
end 

⌨️ 快捷键说明

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