- 在线时间
- 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年国赛赛前培训 |
程序如下:
: B! c M$ x1 [( j4 X" @! W" `/ U/ ]%m文件# Y3 B/ V& m6 d1 _
function eval=f(sol)
- Z7 y O' }) znumv=size(sol,2);
: h; S8 `+ n4 o: H3 ^7 [' Yx=sol(1:numv);" `1 L9 o" r! ]/ d
eval=-20*exp(-0.2*sqrt(sum(x.^2/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282;% p8 A# |. o! [) j
%m文件/ F r1 U3 O- b" T$ d
function[sol,eval]=fitness(sol,options)
! d. ?# i) F% x0 I% Snumv=size(sol,2)-1;
3 ]- l) ?# y9 {' W; Px=sol(1:numv);
+ n9 b, b x% x8 Leval=f(x);
" i% e% q$ J* Y6 o% R/ G+ @eval=-eval;4 [ T; S {' K& w% S3 n7 l
%主程序
$ v0 g7 H: V) L3 hclc,clear
- i& C9 S; @% G; N+ A, Kbounds=ones(2,1)*[-5 5];: O0 {; ^) |% Y1 Z& x# j
initPop=initializega(10,bounds,'fitness');
0 q- t P1 Z% w; R2 I# m7 q7 c[p,endPop,bestSols]=ga(bounds,'fitness',[],initPop,[1e-6 0 0],'maxGenTerm',1000,'normGeomSelect',[0.08],['simpleXover'],[0.3],'binaryMutation',[0.1]);3 c( Z0 A b+ I3 r5 @, J" K- p
然后是出现的问题:Index exceeds matrix dimensions.( e' H3 s9 p2 h0 C. h8 k
6 t/ p' R9 k( K! P& s
Error in b2f (line 34)* M$ `+ O9 T4 _6 p: V
a=bval((cs(i)+1):cs(i+1));
, v% g0 O3 {: c% x6 x9 I0 r4 Y) ~8 f9 Z
9 a s+ c7 C7 Q) [Error in ga (line 194); _/ q' u% u G' a I& [! x0 T
bPop(bFoundIn, =[gen b2f(startPop(bindx,1:numVar),bounds,bits)...
; J# u1 N5 t" J8 x* b# D
+ ~9 J; h& e7 C# k+ k
. E% K9 ?% M, _, ^3 z1 w4 LError in Untitled4 (line 4)6 L6 P, i5 B% r
[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]);
$ z, v9 Y' N! ~& j, Y3 ?" s8 f是我的工具箱有问题还是程序有问题,不懂求教大神
遗传工具箱.rar
(102.67 KB, 下载次数: 0)
工具箱. f; p; p- N/ Y8 t% Y% [+ c7 i6 @
" x: H. T! b- G9 g, a2 e$ Y
|
zan
|