objvalue.m

来自「一种基于matlab的遗传规划编码程序 其中包含交叉和变异的代码」· M 代码 · 共 26 行

M
26
字号
function objvalue = objvalue(popu,S,X,Y);
% 计算每一个体的适应值(函数逼近真实值的程度)
% x为数据序列的号码
% y为瓦斯预测的真实值
% Q为函数计算得到的模型预测值

x = X;
y = Y;

% disp(S);
Q = eval(S);

% 采用最小二乘计算误差平房和最小确定较优模型结构
Error = sum((Q-y).^2);
objvalue = Error;

% 如果目标值不是数字或者是无穷大或者它不是实数而是带有虚部的复数时
if (isnan(objvalue))|(isinf(objvalue))|(~isreal(objvalue)),
%     disp('所生成的函数不是有效函数表达式!');
    objvalue = inf;
end
% disp(objvalue);
% disp('.............................................................');

return

⌨️ 快捷键说明

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