- 在线时间
- 61 小时
- 最后登录
- 2013-10-7
- 注册时间
- 2013-4-11
- 听众数
- 8
- 收听数
- 0
- 能力
- 0 分
- 体力
- 766 点
- 威望
- 0 点
- 阅读权限
- 30
- 积分
- 284
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 105
- 主题
- 5
- 精华
- 0
- 分享
- 0
- 好友
- 14
升级   92% TA的每日心情 | 慵懒 2013-10-7 08:58 |
|---|
签到天数: 71 天 [LV.6]常住居民II
- 自我介绍
- 大二数学专业
 群组: LINGO 群组: Matlab讨论组 群组: 2013年国赛赛前培训 |
程序如下:5 I7 D5 e( y& J
%m文件
1 O* u/ l' C3 v; n& L! t) `: X. afunction eval=f(sol)8 A& X9 P w& Y- F9 E0 x# N7 X
numv=size(sol,2);
& k) o$ C: V) J# q, z: lx=sol(1:numv);* G; G2 y9 Q0 d$ r6 ~
eval=-20*exp(-0.2*sqrt(sum(x.^2/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282;) {- D, ~8 L+ W9 r7 [/ }% o% w' s3 C
%m文件" u, y* J! p' X# f
function[sol,eval]=fitness(sol,options)
4 k$ |" {: R: v) z ~0 unumv=size(sol,2)-1;
E$ t: r. H7 l& `' j* px=sol(1:numv);9 `/ F7 t3 E4 j& h0 y
eval=f(x);7 D ] c& V* a6 i' C F
eval=-eval;- T3 _2 c% v% E1 A) `6 q% ~
%主程序, E: }8 m& @, L) |: ]/ q D. J7 V( U
clc,clear
1 e+ D- I' H5 ]3 n9 O9 t2 X0 rbounds=ones(2,1)*[-5 5];: L/ R* M2 O4 W) D4 q
initPop=initializega(10,bounds,'fitness');5 F- g2 U& ?1 u7 w/ K
[p,endPop,bestSols]=ga(bounds,'fitness',[],initPop,[1e-6 0 0],'maxGenTerm',1000,'normGeomSelect',[0.08],['simpleXover'],[0.3],'binaryMutation',[0.1]);* Z. n7 @# z6 g# x" V& f
然后是出现的问题:Index exceeds matrix dimensions.: p, X5 o5 y6 I* I; s8 ?$ @/ ` E
# q* F, R8 J8 z% S3 A$ Z ^Error in b2f (line 34)
7 v9 D" o+ ~ v5 U a=bval((cs(i)+1):cs(i+1));
! E* c3 }& V0 z, K9 G: T' |5 Y4 g4 ~5 W
+ `1 w% @% c) m2 c6 dError in ga (line 194)" n% F' K/ d" S6 C' [7 b0 {; A& R
bPop(bFoundIn, =[gen b2f(startPop(bindx,1:numVar),bounds,bits)...
3 T Z/ }0 _5 z, T! a
$ `+ {* y& `3 r/ D, U0 ~0 M6 i: k9 A4 @5 g2 @
Error in Untitled4 (line 4)9 V$ c9 B4 h2 B x
[p,endPop,bestSols]=ga(bounds,'fitness',[],initPop,[1e-6 0 0],'maxGenTerm',1000,'normGeomSelect',[0.08],['arithXover'],[2 0;2 3;2 0],'nonUnifMutation',[2 25 3]);6 T- s& K' ~/ H3 |) b6 I8 e/ S8 A
是我的工具箱有问题还是程序有问题,不懂求教大神
遗传工具箱.rar
(102.67 KB, 下载次数: 0)
工具箱; s+ c) h& a& T7 V( v& J" m, v+ A
: V+ v: f1 n2 @ K |
zan
|