数学建模社区-数学中国
标题:
请教:这个错误是什么缘故?怎样修改?
[打印本页]
作者:
yulun9988
时间:
2014-1-14 00:39
标题:
请教:这个错误是什么缘故?怎样修改?
%源函数的matlab代码
7 X6 s& @' ?4 A4 \5 B0 m6 ^
function [eval]=f(sol)
1 s" A8 V5 s& E- `
numv=size(sol,2);
# ~( u% P1 f& ] i
x=sol(1:numv);
! j. y; x3 x3 l
eval=-20*exp(-0.2*sqrt(sum(x.^2)/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282;
# u( A. K- M3 c8 f
%适应度函数的matlab代码
- ]% ~& F, _* S8 H( h
function [sol,eval]=fitness(sol,options)
: U4 ~( Z% D# n; X2 _, ~7 Q
numv=size(sol,2)-1;
0 z9 W1 B% d: _( l) c q" |2 o
x=sol(1:numv);
# T7 Y% l9 G0 T6 S2 O
eval=f(x);
* C' h! W: E5 o4 m9 q& e
eval=-eval;
3 o- ]; Y7 _5 E
%遗传算法的matlab代码
7 f- ?1 w. K6 a: J# p
bounds=ones(2,1)*[-5 5];
8 \( u# f# t3 N
[p,endPop,bestSols,trace]=ga(bounds,'fitness')
5 h3 Q T+ }4 E7 g
*************************************************
9 J: f& _" o3 t
bounds=ones(2,1)*[-5 5];
5 ^. J+ {, ~. {0 L: p
[p,endPop,bestSols,trace]=ga(bounds,'fitness')
6 w8 H7 q$ W! M* F
Error using ga (line 276)
6 c! q# ?) j0 ]
Fitness function must be a function handle.
% e/ s! I2 U- [ F, y5 f, w
4 J( Q8 n7 z, U8 i' D: P! b
* D3 f: {3 l7 ?# \7 T* `5 `$ Z, S4 T" X0 p
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5