%源函数的matlab代码 0 m N" d$ L2 ^ ^% S1 H7 K function [eval]=f(sol) 4 S& W% ?$ m/ x+ Z: Q" c numv=size(sol,2);9 S/ z) A- p1 ^3 a
x=sol(1:numv); ; X: j1 |0 Z. }9 R* I* G' v eval=-20*exp(-0.2*sqrt(sum(x.^2)/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282; 9 Y/ ?' h% ^; R- A$ Y2 K %适应度函数的matlab代码! s+ O" b. A6 u7 ?
function [sol,eval]=fitness(sol,options) $ [" p" B G. |. k* r& G$ O numv=size(sol,2)-1;2 u U* Q9 {' p3 M4 M4 O# X/ @# G% w
x=sol(1:numv); 8 i- M2 s: U; n; [ eval=f(x); - a5 I' a. Y% f; n) Q( ^3 R1 T eval=-eval;+ o% t+ D+ t8 a# V% ~
%遗传算法的matlab代码8 u+ V u' {& F. a: G; Y3 e+ w; U5 b
bounds=ones(2,1)*[-5 5]; ) k/ ~# \& D" Y [p,endPop,bestSols,trace]=ga(bounds,'fitness')( n+ q+ c0 j6 H
*************************************************4 i7 x0 e/ V$ T6 T) X) @( g W. ^
bounds=ones(2,1)*[-5 5];. Y z, K. P6 E- C) H
[p,endPop,bestSols,trace]=ga(bounds,'fitness')) U0 p3 v+ `$ z+ S
Error using ga (line 276)+ `0 U$ K" y, q/ l5 G9 Q
Fitness function must be a function handle.5 G% o _" `" y8 B3 r