数学建模社区-数学中国

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

作者: xiaoOMming    时间: 2013-8-23 10:54
标题: 使用遗传算法遇到问题,求助!
程序如下:8 g1 Y/ ]: h; E3 S3 k9 s: ~
%m文件
, ]# b' I9 ~7 J) Y& cfunction eval=f(sol)
& J  u% ?! _: u! O5 w" Dnumv=size(sol,2);) g. q  U8 a) x
x=sol(1:numv);
: X3 c9 N% R  v+ L" g3 heval=-20*exp(-0.2*sqrt(sum(x.^2/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282;
+ Y/ t$ m. Z# S%m文件
! g, \& H% \! B5 `function[sol,eval]=fitness(sol,options)8 I3 P% m6 O9 I- j  J1 u9 V$ |
numv=size(sol,2)-1;
1 ]5 s& r% e4 hx=sol(1:numv);
7 j, Y- g9 L% z) V: R/ F, qeval=f(x);
5 M( f- i% B4 q/ Jeval=-eval;0 U! t# }' f; Z& ^! ~; @
%主程序* j" i9 U6 z9 X! g7 v
clc,clear2 C/ Y( ~$ Z1 Y+ y9 C5 J. B, J
bounds=ones(2,1)*[-5 5];
1 ^' q5 |0 Y) ^$ D$ O  C$ KinitPop=initializega(10,bounds,'fitness');
6 B6 K' O2 u- g8 m3 ^% W[p,endPop,bestSols]=ga(bounds,'fitness',[],initPop,[1e-6 0 0],'maxGenTerm',1000,'normGeomSelect',[0.08],['simpleXover'],[0.3],'binaryMutation',[0.1]);7 |/ ^2 U3 Q6 }& i' h
然后是出现的问题:Index exceeds matrix dimensions.
: y( M0 J) v" l& ?

+ P5 P: v  Z, x! Y3 c. OError in b2f (line 34)
+ R5 `- q: I7 W  a=bval((cs(i)+1):cs(i+1));
) |/ U) s8 g5 q6 z: y/ @( i+ h% M& L' Q8 v* }

" T/ T/ O. C0 I0 G/ ?4 Y/ a7 dError in ga (line 194)& m8 ?! c( }( S4 N( Y; o& {
      bPop(bFoundIn,=[gen b2f(startPop(bindx,1:numVar),bounds,bits)...7 P+ M! j% X* _
& q# l9 F, y$ L0 n8 {$ f) l% v8 m
. ^$ O& \! w% k
Error in Untitled4 (line 4)4 Z4 M0 e3 q6 G6 A9 R# X& [0 }
[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]);
8 K9 k* y. f. d" b' _$ d! a是我的工具箱有问题还是程序有问题,不懂求教大神 遗传工具箱.rar (102.67 KB, 下载次数: 0) 工具箱
: A' D. B: L1 k8 {
) D. U. L, m) ]7 {. [




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