数学建模社区-数学中国

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

作者: xiaoOMming    时间: 2013-8-23 10:54
标题: 使用遗传算法遇到问题,求助!
程序如下:8 j/ W2 z2 S! T$ k" K9 J  B
%m文件2 h3 N3 i: k$ u! t( d4 d
function eval=f(sol)
# ~: L& t' o% E# g. C" ^) Enumv=size(sol,2);
2 s  n% X6 j  e! G( K1 Rx=sol(1:numv);
4 \# v9 H, S0 M0 d- Z  d4 K' Keval=-20*exp(-0.2*sqrt(sum(x.^2/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282;" ], w! e0 u* Z. T
%m文件- q7 l8 Y- R2 k* a/ C
function[sol,eval]=fitness(sol,options)
5 M' W" j: b1 f. v% ]# }/ [( ~numv=size(sol,2)-1;0 N& P& d) C1 `
x=sol(1:numv);1 C+ c4 N5 O* p4 K  ?
eval=f(x);
- D- L9 |: l* e- t; Ceval=-eval;
2 j) [! h5 e. N- H%主程序( y7 @# ^: @6 V
clc,clear
* Q, K6 S+ |) J6 E# r: b$ {. Cbounds=ones(2,1)*[-5 5];
5 g+ V  Q8 W. d% AinitPop=initializega(10,bounds,'fitness');& d6 [0 A1 c% O; Y4 f) ?
[p,endPop,bestSols]=ga(bounds,'fitness',[],initPop,[1e-6 0 0],'maxGenTerm',1000,'normGeomSelect',[0.08],['simpleXover'],[0.3],'binaryMutation',[0.1]);
( p8 p0 M2 {) D- X然后是出现的问题:Index exceeds matrix dimensions.6 I7 l+ T3 E( a

5 x" d8 R( |7 K5 `7 d" {Error in b2f (line 34)6 ?! h4 m) f' I* u: M
  a=bval((cs(i)+1):cs(i+1));
/ P& Y+ ^& k. ~
% K$ v$ H) S/ D8 ?

1 N$ b. [2 l' V. Q( NError in ga (line 194)
& X/ w8 T- t7 M1 ?( q' ^      bPop(bFoundIn,=[gen b2f(startPop(bindx,1:numVar),bounds,bits)...; m+ B* t8 F# p/ ]1 n& q: ^: h5 [3 C
! ?& J5 D( l' y2 U- }" ^- S+ p4 o

- T! x4 f3 o# H/ ~. @0 wError in Untitled4 (line 4)
4 R5 D* L- m! I. y1 |[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 K7 K3 l% y/ {# ~3 x; C" y" R* a
是我的工具箱有问题还是程序有问题,不懂求教大神 遗传工具箱.rar (102.67 KB, 下载次数: 0) 工具箱  b5 m: V4 Y$ T) A- \

' I, q8 a) b  s8 T; Y$ p




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