%源函数的matlab代码 # B& c4 c% K+ S$ e* I0 R function [eval]=f(sol) 2 j4 N/ _6 `! n numv=size(sol,2);. K% H9 f5 ~' e ?* O8 e- Z+ `0 X* ]
x=sol(1:numv);% ^3 n5 D: S3 B8 D0 v) k
eval=-20*exp(-0.2*sqrt(sum(x.^2)/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282; ' x* ^3 z6 x) r %适应度函数的matlab代码- k. P5 t! a$ Q6 S
function [sol,eval]=fitness(sol,options) 1 t" B. U0 o; |( q( U8 R numv=size(sol,2)-1; / m( ~; ]- B! ]3 I, ?* J( w" @/ K x=sol(1:numv); ' w5 y. ^9 x$ B ?+ F8 \. Y eval=f(x);* ]3 c3 L# ^. ]2 h# m
eval=-eval; 7 `9 t. s5 U0 r0 v1 X) A %遗传算法的matlab代码6 g: p% V2 N- \1 l5 o0 E
bounds=ones(2,1)*[-5 5];$ m. L! n2 g, H' ^5 a
[p,endPop,bestSols,trace]=ga(bounds,'fitness')/ n: L- ^9 N. h9 o
************************************************* ! k# t( G5 t1 |% E! k' s: o. J' D bounds=ones(2,1)*[-5 5]; : h7 p5 H* ?9 r [p,endPop,bestSols,trace]=ga(bounds,'fitness'). ~5 |6 D* a% @; u3 g
Error using ga (line 276)% _& T% I( w# x$ t6 O% E, ]
Fitness function must be a function handle." R" C; E% _! m
) o9 j. _7 F6 g4 h& D. o7 g" ^, Y 4 @0 S3 q8 r" h8 Q' J1 U