数学建模社区-数学中国

标题: 使用遗传算法遇到问题,求助! [打印本页]

作者: xiaoOMming    时间: 2013-8-23 10:54
标题: 使用遗传算法遇到问题,求助!
程序如下:
7 J( S6 T5 X2 R! |%m文件9 a1 q0 w0 V* Y- P) q
function eval=f(sol)7 d- r7 a, ^# }( B
numv=size(sol,2);0 ^9 z* Q' h$ j2 e+ g
x=sol(1:numv);
2 |/ m4 W8 ]! T. A0 M( Ieval=-20*exp(-0.2*sqrt(sum(x.^2/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282;* ~/ F  |0 z7 F" v8 A6 s
%m文件
: C+ [, Z! w# P: P: Xfunction[sol,eval]=fitness(sol,options)9 w- ~  n2 s4 c
numv=size(sol,2)-1;8 Y! r5 r* B" m6 e1 i/ o7 V! o, u# D
x=sol(1:numv);
7 ~3 j& W: K$ b) H7 Ueval=f(x);9 v+ g% n, m! I7 L8 H" Y1 ?
eval=-eval;2 D5 F, L* Z4 J- S" u
%主程序/ o5 x1 {9 Z( J
clc,clear
3 @: ]" N* o9 M/ jbounds=ones(2,1)*[-5 5];8 s2 h( c& Y- s, `6 y& Y
initPop=initializega(10,bounds,'fitness');7 ?2 s! n# s) g- f
[p,endPop,bestSols]=ga(bounds,'fitness',[],initPop,[1e-6 0 0],'maxGenTerm',1000,'normGeomSelect',[0.08],['simpleXover'],[0.3],'binaryMutation',[0.1]);( [/ K1 T' [( r8 c- S8 A1 o
然后是出现的问题:Index exceeds matrix dimensions.* _2 E# ^/ m  u! o7 [, V/ R
2 j# {9 n+ b- _2 y# V
Error in b2f (line 34)
: S  J) E7 p. @. f6 X6 t9 Y  a=bval((cs(i)+1):cs(i+1));6 o4 e% c4 E1 @/ G, `, V
  h% f) j  L/ b* N
8 w2 [7 q" n) G5 S/ x5 E+ D
Error in ga (line 194)
2 y* S7 |' D. F# Q' v+ v" l      bPop(bFoundIn,=[gen b2f(startPop(bindx,1:numVar),bounds,bits)...5 n) O* n% L, s5 Y& e& _
5 ~! z8 g; R% |* K$ r' v- q

  W/ M$ ?( o6 t+ n9 QError in Untitled4 (line 4)" D, c3 n0 H" ?! z- {
[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]);
5 Q% s/ p7 }# B5 g. K' P8 j是我的工具箱有问题还是程序有问题,不懂求教大神 遗传工具箱.rar (102.67 KB, 下载次数: 0) 工具箱$ b0 @  Z( m  s( l8 E

# F1 Z+ o1 f* B7 m# \- }+ Z/ Q




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5