ga_plot.m
来自「书籍代码:遗传演算法原理与应用_活用MATLAB(Source Code)」· M 代码 · 共 54 行
M
54 行
function [para]=GA_plot(generation_n, upper, ...
average, lower, BEST_popu)
global MIN_offset MUL_factor
%========================================================
% GA_plot.m
% global MIN_offset MUL_factor
%function [para]=GA_plot(generation_n, upper, ...
% average, lower, BEST_popu)
%========================================================
% Plot the resultant upper, average and lower bounds
%
% Display the final message like this
% The best generation occured at generation #283.
% x1 = -5.01609163
% x2 = -5.06722401
% x3 = -5.11193552
% x4 = -5.01528481
% x5 = -5.02855515
% ==>Best fitness for MAX. problem is (51.00000000)
%
% MIN_offset != 0 means a minimization problem
% Return parameters: para
% PenChen Chou, 7-1-2001
% Plot
figure(1);
GA_Whitebg;
x = (1:generation_n)';
plot(x, upper, 'o', x, average, 'x', x, lower, '*');
hold on;
plot(x, [upper average lower]);
hold off;
legend('Best', 'Average', 'Poorest',4);
xlabel('Generations'); ylabel('Fitness');
% Display
[BEST, inx1]=max(upper);
fprintf('The best generation occured at generation #%i.\n',inx1);
para=BEST_popu(inx1,:); len_bx=length(para);
for I=1:len_bx
fprintf(' x%i = %12.8f\n',I,para(I));
end;
if MUL_factor>=1
if MIN_offset==0
fprintf('==>Best fitness for MAX. problem is (%.8f)\n',...
BEST/MUL_factor);
else
fprintf('==>Best fitness for MIN. problem is (%.8f)\n',...
(MIN_offset-BEST)/MUL_factor);
end;
else
error('>>>Sorry, Wrong MUL_factor setting, must be >=1');
end;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?