# 基于matlab软件遗传算法的目标函数优化问题

1 ? ? Ve ? ?? ?sv f svbje cot ? ? ?1?sw f swbje cot ? ? ? ? vfc ? ? ?sv f sv ? ?1?sw f sw ? ?1 ? cot 2 ? ?? ? bh tan ? ??2?3 ? ? 2 ? ?

function y = fitness(x) global test_v para_v idx=[1;2;3;4;5;6;7;8;9;10;11;12;13;14;15]; n = length(idx); fv=zeros(n,1); for i=1:n p=para_v(idx(i),:); fv(i) = ((p(1)*p(2)+p(6)*p(7))*prod(p(3:5))+ 0.5*(p(8)*p(9) (p(1)*p(2)+p(6)*p(7))*(1+p(5)^2)) *p(3)*p(10)*p(11))*0.91*x(1); fv(i) =fv(i)/1000; end y=norm(test_v(idx)-fv); % y = sum((test_v(idx) -fv).^2);

clear clc

para_v

para_v=para_value; ObjectiveFunction = @fitness; options = gaoptimset('Display','iter','PlotFcns',{@gaplotbestf,@gaplotstopping} ,'PlotInterval', 1, 'Generations', 100,'PopulationSize', 100,... 'PopInitRange',[0.5 0.5;1 1], 'CrossoverFraction',0.8, 'StallGenLimit', 100, 'TolFun', 1e-100); nvars = 1; LB = [0.1 0.1]; UB = [2 2]; [x,fval] = ga(ObjectiveFunction,nvars,[],[],[],[],LB,UB,[], options)

### 基于MATLAB的遗传算法

Matlab 6.X 辅助优化计算与设计》[6]第五章 对 gaot 遗传算法工具箱的...(var); %求目标函数值 %开始进化 while gen<maxgen fitnv=ranking(obj); %...