数学建模社区-数学中国
标题:
使用遗传算法遇到问题,求助!
[打印本页]
作者:
xiaoOMming
时间:
2013-8-23 10:54
标题:
使用遗传算法遇到问题,求助!
程序如下:
4 }" b3 t# B/ ]
%m文件
: F% K- u+ Q+ D% e
function eval=f(sol)
$ q; L( Y' w8 n1 C) e. n$ a+ ^+ H
numv=size(sol,2);
9 @* r. T5 S: W7 O( Y8 a
x=sol(1:numv);
) H( Y9 a0 w1 D- G4 I9 k
eval=-20*exp(-0.2*sqrt(sum(x.^2/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282;
$ p" X- B" u1 r) l8 @
%m文件
$ `. `1 q( n" [$ F
function[sol,eval]=fitness(sol,options)
% b' i4 J1 v: }3 E
numv=size(sol,2)-1;
; |" s1 i" r# @4 G: ]& Y3 ^
x=sol(1:numv);
' L1 ~: H- L0 u) D, K- U6 h
eval=f(x);
9 l9 x- z' M' Q
eval=-eval;
2 o$ f2 N9 I# E. O, S% L0 K
%主程序
$ Q9 b5 ]: M/ A& F
clc,clear
* P2 N7 m7 ]2 d' j+ S9 T2 k
bounds=ones(2,1)*[-5 5];
5 ^8 x2 H* P/ G; C
initPop=initializega(10,bounds,'fitness');
& J' J& i1 X Q6 p( } [: [/ Z
[p,endPop,bestSols]=ga(bounds,'fitness',[],initPop,[1e-6 0 0],'maxGenTerm',1000,'normGeomSelect',[0.08],['simpleXover'],[0.3],'binaryMutation',[0.1]);
) y) n- z. ^5 O9 t7 }/ x0 m0 a4 T. T
然后是出现的问题:
Index exceeds matrix dimensions.
|7 G$ i; U: J3 I
0 Z' f; n8 z# ^% I1 Z
Error in b2f (line 34)
6 |' p$ n% o% q( j* T; {, B
a=bval((cs(i)+1):cs(i+1));
: k/ ]" C/ z& q+ ? f& C
+ n$ [* }5 u/ y6 L6 h O8 h
7 g, r$ S5 e" {1 x2 d* k
Error in ga (line 194)
( C& H) H! B& b1 C
bPop(bFoundIn,
=[gen b2f(startPop(bindx,1:numVar),bounds,bits)...
. P0 _4 q3 z9 {
1 v! F: ] D0 K, J$ o
. _0 N$ t( p5 M) V/ F1 |* |
Error in Untitled4 (line 4)
" ~; o! L5 K( a& n- E( ?
[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]);
1 F7 j8 h9 v1 Z: Q, }
是我的工具箱有问题还是程序有问题,不懂求教大神
遗传工具箱.rar
(102.67 KB, 下载次数: 0)
2013-8-23 10:52 上传
点击文件名下载附件
下载积分: 体力 -2 点
工具箱
% Y* X+ d- V# ?7 P' J$ w& M
+ j# o' d+ P% F+ y# }
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5