ga_f651.m

来自「书籍代码:遗传演算法原理与应用_活用MATLAB(Source Code)」· M 代码 · 共 33 行

M
33
字号
function PI=GA_f651(x)
global MIN_offset MUL_factor Emin MDL
global FT Se Sde Su x0 y0 phi0
% Fitness function evaluation of Example 6.4-1.

% PenChen Chou, 8-5-2001

Se=GA_round4dp(x(1));
Sde=GA_round4dp(x(2));
Su=GA_round4dp(x(3));
%Se=1;Sde=1;Su=1;
x0=20*rand;
y0=20*rand;
phi0=pi/180*(rand*360-90);

% Get Y
[t, X, Y]=sim(MDL,[0:0.01:FT]);
x=Y(:,1);y=Y(:,2);phi=Y(:,3);N=length(t);
I=find(t>1);
xa=x(I); phia=phi(I);
ERR=100*sum(abs(xa-10))*(10/(abs(x0-10)+0.02))+sum(abs(phia-0.5*pi));
PI=ERR;
if MIN_offset>0
   PI=MIN_offset-PI;
   if PI<0, PI=10; end;
end;
if Emin>ERR
   Emin=ERR; fprintf('\nERR=%f',ERR);
   figure(3);plot(x,y);axis([0 20 0 200]);pause(2)
   %pause(2)
else
   fprintf('>'); 
end;   

⌨️ 快捷键说明

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