数学建模社区-数学中国

标题: 急求高手指点!!! [打印本页]

作者: 侠客雪飞    时间: 2011-2-13 23:27
标题: 急求高手指点!!!
想要用遗传工具箱解优化问题,从网上找到的方法,目标函数是:4 h; X: w( e. V/ I$ h
: T5 b3 N. ]3 e* @) \4 [9 Z& {
function z=dd(x);
. d5 E* w2 Z* y9 }0 Nf=842*x(1)*x(6)+588*x(2)*x(7)+498*x(3)*x(8)+62.2*x(4)*x(9)* U* |( U  P4 J, w
+190.2*x(5)*x(10);
% n. n! m. u" _2 ag(1)=-x(1)+x(6);
8 s2 Z' n( ]  {1 o) Q9 Lg(2)=-x(2)+x(7);0 Y/ x- S! h. i; C+ N' d8 D, v
g(3)=-x(3)+x(8);
8 \" X* s) V" N+ r! n2 Xg(4)=-x(4)+x(9);
4 E6 r/ u" q. H( ?5 T( b3 p, ^g(5)=-x(5)+x(10);( @# k1 I$ h" V: I8 h+ y4 V
g(6)=x(1)-0.73;# Q! g/ s# S, M3 F1 S1 ^: n  k
g(7)=x(2)-0.33;$ n( @2 s# I9 i, a9 ]2 |
g(8)=x(3)-0.93;+ P+ q2 o+ b/ y: C- U
g(9)=x(4)-0.85;
! x2 |- H& h$ k: C6 Jg(10)=x(5)-1;: Y% c( s+ N- t" B$ Z8 w) w
g(11)=842*x(1)+588*x(2)+498*x(3)+62.2*x(4)+190.2*x(5)-835.706;, V# ~$ V+ x5 q
if(g(1)<0) &(g(2)<0) &(g(3)<0) &(g(4)<0) &(g(5)<0) &(g(6)<0) &(g(7)<0) &(g(8)<0) &(g(9)<0) &(g(10)<0) &(g(11)>0) &(g(12)>0) & (x>=0) z=f;
3 K, Q8 c" H, X/ gelse z=-100;3 S: m; \3 O# O+ p
end
' w. j! v4 m1 ]# `z=-z;% Q& k: f$ }/ A' V, h* H4 n  _
  }  g7 H: M: c. c# p$ `5 m9 P
主程序里是:
" J* i' B- [* U6 toptions=gaoptimset$ Q3 ^. T* V( E3 T6 q
('populationsize',20,'generations',100,'plotfcns',@gaplotbestf);
: d, X' E8 C2 T1 U[x,z,reason]=ga(@dd,10,options)& w: C2 ?0 U5 _4 r+ ?
但结果每算一次都不一样,而且z值就是输进去的那个值,此时是100.不知道为什么?用网上所给的例子就可以算出结果。" {5 |! Q2 B2 o& P4 g

0 e  K! G6 o2 ~' ^9 z$ y. d& u, c跪求指点!- U4 C8 h# m. E; v





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