数学建模社区-数学中国
标题:
请教:这个错误是什么缘故?怎样修改?
[打印本页]
作者:
yulun9988
时间:
2014-1-14 00:39
标题:
请教:这个错误是什么缘故?怎样修改?
%源函数的matlab代码
& a6 v% P1 U3 [3 E
function [eval]=f(sol)
* m+ K% C; t) G9 N( {0 x
numv=size(sol,2);
3 M* A. f% q$ u9 Q( O
x=sol(1:numv);
5 Z# a1 E1 j7 J) o* w0 k$ r: R# k% E
eval=-20*exp(-0.2*sqrt(sum(x.^2)/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282;
# ~& P' j' I8 I- r9 M, e
%适应度函数的matlab代码
: O! y" k+ ~5 ^ V4 B
function [sol,eval]=fitness(sol,options)
' y1 N& \: _* [4 e5 t" G) j$ b4 I
numv=size(sol,2)-1;
( n, F# X; e% b% d) j' k% w
x=sol(1:numv);
7 e& N a* x$ l9 \
eval=f(x);
9 |$ @( a5 _3 S3 x; `! Y2 Q
eval=-eval;
4 X/ n9 E0 i, |% O* N+ _
%遗传算法的matlab代码
4 H3 d1 a% j9 X9 \' U+ ^
bounds=ones(2,1)*[-5 5];
6 R* {9 g& y2 e0 M0 z
[p,endPop,bestSols,trace]=ga(bounds,'fitness')
# \1 r% T- h0 W
*************************************************
; k5 ^8 a5 t0 a O* r
bounds=ones(2,1)*[-5 5];
1 |$ Y% H. j" c
[p,endPop,bestSols,trace]=ga(bounds,'fitness')
7 w5 d5 B1 a2 t- R
Error using ga (line 276)
0 d7 s) A: [* P4 i
Fitness function must be a function handle.
" \" y! P+ C3 g c* u6 C! K2 i
& u- i: v' w2 r+ [# X1 I+ } b
+ P% g n3 c% [6 f
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5